Fixes to post media ()

* Fix typo

* Add failing test for attaching image to a post

* Tidy failing test

* Fix

* Expand the available image resize fit modes

* Add proper validation of glob-prefixed mimes (eg image/*)

* Detect and handle blobs in post embeds

* evert "Expand the available image resize fit modes"

This reverts commit 3390fbe4d091a04f9b67a2885eae19d025747fc4.

* Use fit: inside for post media

* Update tests

* Make the thumbnail optional in external embeds

Co-authored-by: Devin Ivy <devinivy@gmail.com>
This commit is contained in:
Paul Frazee 2022-12-14 14:28:59 -06:00 committed by GitHub
parent 9598a22ef5
commit f5302ce139
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
19 changed files with 206 additions and 123 deletions
lexicons/app/bsky/embed
packages

@ -15,7 +15,7 @@
},
"external": {
"type": "object",
"required": ["uri", "title", "description", "thumb"],
"required": ["uri", "title", "description"],
"properties": {
"uri": {"type": "string"},
"title": {"type": "string"},
@ -41,7 +41,7 @@
},
"presentedExternal": {
"type": "object",
"required": ["uri", "title", "description", "thumb"],
"required": ["uri", "title", "description"],
"properties": {
"uri": {"type": "string"},
"title": {"type": "string"},

@ -1450,7 +1450,7 @@ export const schemaDict = {
},
external: {
type: 'object',
required: ['uri', 'title', 'description', 'thumb'],
required: ['uri', 'title', 'description'],
properties: {
uri: {
type: 'string',
@ -1482,7 +1482,7 @@ export const schemaDict = {
},
presentedExternal: {
type: 'object',
required: ['uri', 'title', 'description', 'thumb'],
required: ['uri', 'title', 'description'],
properties: {
uri: {
type: 'string',

@ -10,7 +10,7 @@ export interface External {
uri: string
title: string
description: string
thumb: { cid: string; mimeType: string; [k: string]: unknown }
thumb?: { cid: string; mimeType: string; [k: string]: unknown }
[k: string]: unknown
}
@ -23,6 +23,6 @@ export interface PresentedExternal {
uri: string
title: string
description: string
thumb: string
thumb?: string
[k: string]: unknown
}

@ -29,7 +29,7 @@ export const embedsForPosts = async (
const imgEmbeds = images.reduce((acc, cur) => {
if (!acc[cur.postUri]) {
acc[cur.postUri] = {
$type: 'app.bksy.embed.images#presented',
$type: 'app.bsky.embed.images#presented',
images: [],
}
}
@ -43,15 +43,14 @@ export const embedsForPosts = async (
return externals.reduce((acc, cur) => {
if (!acc[cur.postUri]) {
acc[cur.postUri] = {
$type: 'app.bksy.embed.external#presented',
$type: 'app.bsky.embed.external#presented',
external: {
uri: cur.uri,
title: cur.title,
description: cur.description,
thumb: imgUriBuilder.getCommonSignedUri(
'feed_thumbnail',
cur.thumbCid,
),
thumb: cur.thumbCid
? imgUriBuilder.getCommonSignedUri('feed_thumbnail', cur.thumbCid)
: undefined,
},
}
}

@ -21,7 +21,7 @@ export async function up(db: Kysely<unknown>): Promise<void> {
.addColumn('uri', 'varchar', (col) => col.notNull())
.addColumn('title', 'varchar', (col) => col.notNull())
.addColumn('description', 'varchar', (col) => col.notNull())
.addColumn('thumbCid', 'varchar', (col) => col.notNull())
.addColumn('thumbCid', 'varchar')
.execute()
}

@ -65,7 +65,7 @@ const insertFn = async (
}
let embed: PostEmbedImage[] | PostEmbedExternal | undefined
if (obj.embed) {
if (obj.embed.$type === 'app.bksy.embed.images') {
if (obj.embed.$type === 'app.bsky.embed.images') {
embed = (obj.embed as ImagesEmbedFragment).images.map((img, i) => ({
postUri: uri.toString(),
position: i,
@ -80,7 +80,7 @@ const insertFn = async (
uri: external.uri,
title: external.title,
description: external.description,
thumbCid: external.thumb.cid,
thumbCid: external.thumb?.cid,
}
await db.insertInto('post_embed_external').values(embed).execute()
}

@ -5,7 +5,7 @@ export interface PostEmbedExternal {
uri: string
title: string
description: string
thumbCid: string
thumbCid?: string
}
export type PartialDB = {

@ -60,7 +60,7 @@ export class ImageUriBuilder {
return this.getSignedUri({
cid: typeof cid === 'string' ? CID.parse(cid) : cid,
format: 'jpeg',
fit: 'cover',
fit: 'inside',
height: 500,
width: 500,
min: true,
@ -69,7 +69,7 @@ export class ImageUriBuilder {
return this.getSignedUri({
cid: typeof cid === 'string' ? CID.parse(cid) : cid,
format: 'jpeg',
fit: 'cover',
fit: 'inside',
height: 250,
width: 250,
min: true,

@ -1450,7 +1450,7 @@ export const schemaDict = {
},
external: {
type: 'object',
required: ['uri', 'title', 'description', 'thumb'],
required: ['uri', 'title', 'description'],
properties: {
uri: {
type: 'string',
@ -1482,7 +1482,7 @@ export const schemaDict = {
},
presentedExternal: {
type: 'object',
required: ['uri', 'title', 'description', 'thumb'],
required: ['uri', 'title', 'description'],
properties: {
uri: {
type: 'string',

@ -10,7 +10,7 @@ export interface External {
uri: string
title: string
description: string
thumb: { cid: string; mimeType: string; [k: string]: unknown }
thumb?: { cid: string; mimeType: string; [k: string]: unknown }
[k: string]: unknown
}
@ -23,6 +23,6 @@ export interface PresentedExternal {
uri: string
title: string
description: string
thumb: string
thumb?: string
[k: string]: unknown
}

@ -147,6 +147,13 @@ export const verifyBlob = (blob: BlobRef, found: BlobTable) => {
const acceptedMime = (mime: string, accepted: string[]): boolean => {
if (accepted.includes('*/*')) return true
const globs = accepted.filter((a) => a.endsWith('/*'))
for (const glob of globs) {
const [start] = glob.split('/')
if (mime.startsWith(`${start}/`)) {
return true
}
}
return accepted.includes(mime)
}

@ -40,6 +40,31 @@ export const blobsForWrite = (
})
}
return refs
} else if (write.collection === lex.ids.AppBskyFeedPost) {
const refs: BlobRef[] = []
const embed = write.value?.embed
if (embed?.$type === 'app.bsky.embed.images') {
const doc = lex.schemaDict.AppBskyEmbedImages
for (let i = 0; i < embed.images?.length || 0; i++) {
const img = embed.images[i]
refs.push({
cid: CID.parse(img.image.cid),
mimeType: img.image.mimeType,
constraints: doc.defs.image.properties.image as ImageConstraint,
})
}
} else if (
write.value?.embed?.$type === 'app.bsky.embed.external' &&
embed.external.thumb?.cid
) {
const doc = lex.schemaDict.AppBskyEmbedExternal
refs.push({
cid: CID.parse(embed.external.thumb.cid),
mimeType: embed.external.thumb.mimeType,
constraints: doc.defs.external.properties.thumb as ImageConstraint,
})
}
return refs
}
return []
}

@ -1,7 +1,11 @@
import fs from 'fs/promises'
import { CID } from 'multiformats/cid'
import { AtUri } from '@atproto/uri'
import AtpApi, { ServiceClient as AtpServiceClient } from '@atproto/api'
import * as Post from '../src/lexicon/types/app/bsky/feed/post'
import { AtUri } from '@atproto/uri'
import { CloseFn, paginateAll, runTestServer } from './_util'
import { getLocals, Locals } from '../src/locals'
import { BlobNotFoundError } from '@atproto/repo'
const alice = {
email: 'alice@test.com',
@ -17,6 +21,7 @@ const bob = {
}
describe('crud operations', () => {
let locals: Locals
let client: AtpServiceClient
let aliceClient: AtpServiceClient
let close: CloseFn
@ -25,6 +30,7 @@ describe('crud operations', () => {
const server = await runTestServer({
dbPostgresSchema: 'crud',
})
locals = getLocals(server.app)
close = server.close
client = AtpApi.service(server.url)
aliceClient = AtpApi.service(server.url)
@ -156,6 +162,52 @@ describe('crud operations', () => {
expect(res3.records.length).toBe(0)
})
it('attaches images to a post', async () => {
const { blobstore } = locals
const file = await fs.readFile(
'tests/image/fixtures/key-landscape-small.jpg',
)
const { data: image } = await aliceClient.com.atproto.blob.upload(file, {
encoding: 'image/jpeg',
})
const imageCid = CID.parse(image.cid)
// Expect blobstore not to have image yet
await expect(blobstore.getBytes(imageCid)).rejects.toThrow(
BlobNotFoundError,
)
// Associate image with post, image should be placed in blobstore
const res = await aliceClient.app.bsky.feed.post.create(
{ did: alice.did },
{
$type: 'app.bsky.feed.post',
text: "Here's a key!",
createdAt: new Date().toISOString(),
embed: {
$type: 'app.bsky.embed.images',
images: [
{ image: { cid: image.cid, mimeType: 'image/jpeg' }, alt: '' },
],
},
},
)
// Ensure image is on post record
const postUri = new AtUri(res.uri)
const post = await aliceClient.app.bsky.feed.post.get({
rkey: postUri.rkey,
user: alice.did,
})
const images = post.value.embed?.images as { image: { cid: string } }[]
expect(images.length).toEqual(1)
expect(images[0].image.cid).toEqual(image.cid)
// Ensure that the uploaded image is now in the blobstore, i.e. doesn't throw BlobNotFoundError
await blobstore.getBytes(imageCid)
// Cleanup
await aliceClient.app.bsky.feed.post.delete({
rkey: postUri.rkey,
did: alice.did,
})
})
it('creates records with the correct key described by the schema', async () => {
const res1 = await aliceClient.app.bsky.actor.profile.create(
{ did: alice.did },

@ -196,7 +196,7 @@ export class SeedClient {
async post(by: string, text: string, entities?: any, images?: ImageRef[]) {
const embed = images
? {
$type: 'app.bksy.embed.images',
$type: 'app.bsky.embed.images',
images,
}
: undefined
@ -263,7 +263,7 @@ export class SeedClient {
) {
const embed = images
? {
$type: 'app.bksy.embed.images',
$type: 'app.bsky.embed.images',
images,
}
: undefined

@ -131,12 +131,12 @@ Array [
"cid": "cids(0)",
"downvoteCount": 0,
"embed": Object {
"$type": "app.bksy.embed.images#presented",
"$type": "app.bsky.embed.images#presented",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
"fullsize": "https://pds.public.url/image/wRIUrVZeZYnont3JRoe98oCWf0Lu0F3nvjpmluY3UX8/rs:fill:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/0jNI6lTTaZXx7i4Cf1D6uaZcxr9HmPis1N3EoT-m1Xw/rs:fill:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"fullsize": "https://pds.public.url/image/IPAYhVzUxU3OXfF-R2hr1eYlq5BAbioC9U2pHmZpwi0/rs:fit:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/oyYvmnCYEULJ70JgyQHrekEVfqR3bfHMucQ7p7yXhvQ/rs:fit:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
},
],
},
@ -146,7 +146,7 @@ Array [
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
@ -317,17 +317,17 @@ Array [
"cid": "cids(4)",
"downvoteCount": 0,
"embed": Object {
"$type": "app.bksy.embed.images#presented",
"$type": "app.bsky.embed.images#presented",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
"fullsize": "https://pds.public.url/image/wRIUrVZeZYnont3JRoe98oCWf0Lu0F3nvjpmluY3UX8/rs:fill:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/0jNI6lTTaZXx7i4Cf1D6uaZcxr9HmPis1N3EoT-m1Xw/rs:fill:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"fullsize": "https://pds.public.url/image/IPAYhVzUxU3OXfF-R2hr1eYlq5BAbioC9U2pHmZpwi0/rs:fit:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/oyYvmnCYEULJ70JgyQHrekEVfqR3bfHMucQ7p7yXhvQ/rs:fit:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
},
Object {
"alt": "tests/image/fixtures/key-portrait-small.jpg",
"fullsize": "https://pds.public.url/image/nFNFXt5_l4kN8k1Ar8Gb8tfEj8Z0woTMDD3UoX5nNqo/rs:fill:500:500:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"thumb": "https://pds.public.url/image/w4t9ji0l53vlWd7Res2ZSFAL6QS2iaI9RGCt6Gs5reE/rs:fill:250:250:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"fullsize": "https://pds.public.url/image/IBdh1uYxiSsHAl6Ai0aAwpmO_JdnuNJhb12PSD5ZNYg/rs:fit:500:500:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"thumb": "https://pds.public.url/image/ELecCwtuiF4W0nLWO5UVRtmQlq7vpFDN8GuZtHB1cBc/rs:fit:250:250:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
},
],
},
@ -337,7 +337,7 @@ Array [
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
@ -476,17 +476,17 @@ Array [
"cid": "cids(0)",
"downvoteCount": 0,
"embed": Object {
"$type": "app.bksy.embed.images#presented",
"$type": "app.bsky.embed.images#presented",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
"fullsize": "https://pds.public.url/image/wRIUrVZeZYnont3JRoe98oCWf0Lu0F3nvjpmluY3UX8/rs:fill:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/0jNI6lTTaZXx7i4Cf1D6uaZcxr9HmPis1N3EoT-m1Xw/rs:fill:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"fullsize": "https://pds.public.url/image/IPAYhVzUxU3OXfF-R2hr1eYlq5BAbioC9U2pHmZpwi0/rs:fit:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/oyYvmnCYEULJ70JgyQHrekEVfqR3bfHMucQ7p7yXhvQ/rs:fit:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
},
Object {
"alt": "tests/image/fixtures/key-portrait-small.jpg",
"fullsize": "https://pds.public.url/image/nFNFXt5_l4kN8k1Ar8Gb8tfEj8Z0woTMDD3UoX5nNqo/rs:fill:500:500:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"thumb": "https://pds.public.url/image/w4t9ji0l53vlWd7Res2ZSFAL6QS2iaI9RGCt6Gs5reE/rs:fill:250:250:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"fullsize": "https://pds.public.url/image/IBdh1uYxiSsHAl6Ai0aAwpmO_JdnuNJhb12PSD5ZNYg/rs:fit:500:500:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"thumb": "https://pds.public.url/image/ELecCwtuiF4W0nLWO5UVRtmQlq7vpFDN8GuZtHB1cBc/rs:fit:250:250:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
},
],
},
@ -496,7 +496,7 @@ Array [
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",

@ -77,7 +77,7 @@ Array [
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
@ -490,7 +490,7 @@ Array [
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",

@ -34,12 +34,12 @@ Object {
"cid": "cids(3)",
"downvoteCount": 0,
"embed": Object {
"$type": "app.bksy.embed.images#presented",
"$type": "app.bsky.embed.images#presented",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
"fullsize": "https://pds.public.url/image/wRIUrVZeZYnont3JRoe98oCWf0Lu0F3nvjpmluY3UX8/rs:fill:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/0jNI6lTTaZXx7i4Cf1D6uaZcxr9HmPis1N3EoT-m1Xw/rs:fill:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"fullsize": "https://pds.public.url/image/IPAYhVzUxU3OXfF-R2hr1eYlq5BAbioC9U2pHmZpwi0/rs:fit:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/oyYvmnCYEULJ70JgyQHrekEVfqR3bfHMucQ7p7yXhvQ/rs:fit:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
},
],
},
@ -77,7 +77,7 @@ Object {
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
@ -231,12 +231,12 @@ Object {
"cid": "cids(3)",
"downvoteCount": 0,
"embed": Object {
"$type": "app.bksy.embed.images#presented",
"$type": "app.bsky.embed.images#presented",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
"fullsize": "https://pds.public.url/image/wRIUrVZeZYnont3JRoe98oCWf0Lu0F3nvjpmluY3UX8/rs:fill:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/0jNI6lTTaZXx7i4Cf1D6uaZcxr9HmPis1N3EoT-m1Xw/rs:fill:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"fullsize": "https://pds.public.url/image/IPAYhVzUxU3OXfF-R2hr1eYlq5BAbioC9U2pHmZpwi0/rs:fit:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/oyYvmnCYEULJ70JgyQHrekEVfqR3bfHMucQ7p7yXhvQ/rs:fit:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
},
],
},
@ -274,7 +274,7 @@ Object {
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
@ -331,12 +331,12 @@ Object {
"cid": "cids(3)",
"downvoteCount": 0,
"embed": Object {
"$type": "app.bksy.embed.images#presented",
"$type": "app.bsky.embed.images#presented",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
"fullsize": "https://pds.public.url/image/wRIUrVZeZYnont3JRoe98oCWf0Lu0F3nvjpmluY3UX8/rs:fill:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/0jNI6lTTaZXx7i4Cf1D6uaZcxr9HmPis1N3EoT-m1Xw/rs:fill:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"fullsize": "https://pds.public.url/image/IPAYhVzUxU3OXfF-R2hr1eYlq5BAbioC9U2pHmZpwi0/rs:fit:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/oyYvmnCYEULJ70JgyQHrekEVfqR3bfHMucQ7p7yXhvQ/rs:fit:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
},
],
},
@ -374,7 +374,7 @@ Object {
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
@ -539,12 +539,12 @@ Object {
"cid": "cids(3)",
"downvoteCount": 0,
"embed": Object {
"$type": "app.bksy.embed.images#presented",
"$type": "app.bsky.embed.images#presented",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
"fullsize": "https://pds.public.url/image/wRIUrVZeZYnont3JRoe98oCWf0Lu0F3nvjpmluY3UX8/rs:fill:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/0jNI6lTTaZXx7i4Cf1D6uaZcxr9HmPis1N3EoT-m1Xw/rs:fill:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"fullsize": "https://pds.public.url/image/IPAYhVzUxU3OXfF-R2hr1eYlq5BAbioC9U2pHmZpwi0/rs:fit:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/oyYvmnCYEULJ70JgyQHrekEVfqR3bfHMucQ7p7yXhvQ/rs:fit:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
},
],
},
@ -582,7 +582,7 @@ Object {
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",

@ -158,12 +158,12 @@ Array [
"cid": "cids(4)",
"downvoteCount": 0,
"embed": Object {
"$type": "app.bksy.embed.images#presented",
"$type": "app.bsky.embed.images#presented",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
"fullsize": "https://pds.public.url/image/wRIUrVZeZYnont3JRoe98oCWf0Lu0F3nvjpmluY3UX8/rs:fill:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/0jNI6lTTaZXx7i4Cf1D6uaZcxr9HmPis1N3EoT-m1Xw/rs:fill:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"fullsize": "https://pds.public.url/image/IPAYhVzUxU3OXfF-R2hr1eYlq5BAbioC9U2pHmZpwi0/rs:fit:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/oyYvmnCYEULJ70JgyQHrekEVfqR3bfHMucQ7p7yXhvQ/rs:fit:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
},
],
},
@ -173,7 +173,7 @@ Array [
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
@ -213,17 +213,17 @@ Array [
"cid": "cids(7)",
"downvoteCount": 0,
"embed": Object {
"$type": "app.bksy.embed.images#presented",
"$type": "app.bsky.embed.images#presented",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
"fullsize": "https://pds.public.url/image/wRIUrVZeZYnont3JRoe98oCWf0Lu0F3nvjpmluY3UX8/rs:fill:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/0jNI6lTTaZXx7i4Cf1D6uaZcxr9HmPis1N3EoT-m1Xw/rs:fill:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"fullsize": "https://pds.public.url/image/IPAYhVzUxU3OXfF-R2hr1eYlq5BAbioC9U2pHmZpwi0/rs:fit:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/oyYvmnCYEULJ70JgyQHrekEVfqR3bfHMucQ7p7yXhvQ/rs:fit:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
},
Object {
"alt": "tests/image/fixtures/key-portrait-small.jpg",
"fullsize": "https://pds.public.url/image/nFNFXt5_l4kN8k1Ar8Gb8tfEj8Z0woTMDD3UoX5nNqo/rs:fill:500:500:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"thumb": "https://pds.public.url/image/w4t9ji0l53vlWd7Res2ZSFAL6QS2iaI9RGCt6Gs5reE/rs:fill:250:250:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"fullsize": "https://pds.public.url/image/IBdh1uYxiSsHAl6Ai0aAwpmO_JdnuNJhb12PSD5ZNYg/rs:fit:500:500:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"thumb": "https://pds.public.url/image/ELecCwtuiF4W0nLWO5UVRtmQlq7vpFDN8GuZtHB1cBc/rs:fit:250:250:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
},
],
},
@ -235,7 +235,7 @@ Array [
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
@ -448,17 +448,17 @@ Array [
"cid": "cids(7)",
"downvoteCount": 0,
"embed": Object {
"$type": "app.bksy.embed.images#presented",
"$type": "app.bsky.embed.images#presented",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
"fullsize": "https://pds.public.url/image/wRIUrVZeZYnont3JRoe98oCWf0Lu0F3nvjpmluY3UX8/rs:fill:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/0jNI6lTTaZXx7i4Cf1D6uaZcxr9HmPis1N3EoT-m1Xw/rs:fill:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"fullsize": "https://pds.public.url/image/IPAYhVzUxU3OXfF-R2hr1eYlq5BAbioC9U2pHmZpwi0/rs:fit:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/oyYvmnCYEULJ70JgyQHrekEVfqR3bfHMucQ7p7yXhvQ/rs:fit:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
},
Object {
"alt": "tests/image/fixtures/key-portrait-small.jpg",
"fullsize": "https://pds.public.url/image/nFNFXt5_l4kN8k1Ar8Gb8tfEj8Z0woTMDD3UoX5nNqo/rs:fill:500:500:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"thumb": "https://pds.public.url/image/w4t9ji0l53vlWd7Res2ZSFAL6QS2iaI9RGCt6Gs5reE/rs:fill:250:250:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"fullsize": "https://pds.public.url/image/IBdh1uYxiSsHAl6Ai0aAwpmO_JdnuNJhb12PSD5ZNYg/rs:fit:500:500:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"thumb": "https://pds.public.url/image/ELecCwtuiF4W0nLWO5UVRtmQlq7vpFDN8GuZtHB1cBc/rs:fit:250:250:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
},
],
},
@ -470,7 +470,7 @@ Array [
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
@ -710,12 +710,12 @@ Array [
"cid": "cids(4)",
"downvoteCount": 0,
"embed": Object {
"$type": "app.bksy.embed.images#presented",
"$type": "app.bsky.embed.images#presented",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
"fullsize": "https://pds.public.url/image/wRIUrVZeZYnont3JRoe98oCWf0Lu0F3nvjpmluY3UX8/rs:fill:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/0jNI6lTTaZXx7i4Cf1D6uaZcxr9HmPis1N3EoT-m1Xw/rs:fill:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"fullsize": "https://pds.public.url/image/IPAYhVzUxU3OXfF-R2hr1eYlq5BAbioC9U2pHmZpwi0/rs:fit:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/oyYvmnCYEULJ70JgyQHrekEVfqR3bfHMucQ7p7yXhvQ/rs:fit:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
},
],
},
@ -725,7 +725,7 @@ Array [
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
@ -765,17 +765,17 @@ Array [
"cid": "cids(7)",
"downvoteCount": 0,
"embed": Object {
"$type": "app.bksy.embed.images#presented",
"$type": "app.bsky.embed.images#presented",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
"fullsize": "https://pds.public.url/image/wRIUrVZeZYnont3JRoe98oCWf0Lu0F3nvjpmluY3UX8/rs:fill:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/0jNI6lTTaZXx7i4Cf1D6uaZcxr9HmPis1N3EoT-m1Xw/rs:fill:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"fullsize": "https://pds.public.url/image/IPAYhVzUxU3OXfF-R2hr1eYlq5BAbioC9U2pHmZpwi0/rs:fit:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/oyYvmnCYEULJ70JgyQHrekEVfqR3bfHMucQ7p7yXhvQ/rs:fit:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
},
Object {
"alt": "tests/image/fixtures/key-portrait-small.jpg",
"fullsize": "https://pds.public.url/image/nFNFXt5_l4kN8k1Ar8Gb8tfEj8Z0woTMDD3UoX5nNqo/rs:fill:500:500:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"thumb": "https://pds.public.url/image/w4t9ji0l53vlWd7Res2ZSFAL6QS2iaI9RGCt6Gs5reE/rs:fill:250:250:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"fullsize": "https://pds.public.url/image/IBdh1uYxiSsHAl6Ai0aAwpmO_JdnuNJhb12PSD5ZNYg/rs:fit:500:500:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"thumb": "https://pds.public.url/image/ELecCwtuiF4W0nLWO5UVRtmQlq7vpFDN8GuZtHB1cBc/rs:fit:250:250:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
},
],
},
@ -785,7 +785,7 @@ Array [
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
@ -1006,17 +1006,17 @@ Array [
"cid": "cids(7)",
"downvoteCount": 0,
"embed": Object {
"$type": "app.bksy.embed.images#presented",
"$type": "app.bsky.embed.images#presented",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
"fullsize": "https://pds.public.url/image/wRIUrVZeZYnont3JRoe98oCWf0Lu0F3nvjpmluY3UX8/rs:fill:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/0jNI6lTTaZXx7i4Cf1D6uaZcxr9HmPis1N3EoT-m1Xw/rs:fill:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"fullsize": "https://pds.public.url/image/IPAYhVzUxU3OXfF-R2hr1eYlq5BAbioC9U2pHmZpwi0/rs:fit:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/oyYvmnCYEULJ70JgyQHrekEVfqR3bfHMucQ7p7yXhvQ/rs:fit:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
},
Object {
"alt": "tests/image/fixtures/key-portrait-small.jpg",
"fullsize": "https://pds.public.url/image/nFNFXt5_l4kN8k1Ar8Gb8tfEj8Z0woTMDD3UoX5nNqo/rs:fill:500:500:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"thumb": "https://pds.public.url/image/w4t9ji0l53vlWd7Res2ZSFAL6QS2iaI9RGCt6Gs5reE/rs:fill:250:250:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"fullsize": "https://pds.public.url/image/IBdh1uYxiSsHAl6Ai0aAwpmO_JdnuNJhb12PSD5ZNYg/rs:fit:500:500:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"thumb": "https://pds.public.url/image/ELecCwtuiF4W0nLWO5UVRtmQlq7vpFDN8GuZtHB1cBc/rs:fit:250:250:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
},
],
},
@ -1026,7 +1026,7 @@ Array [
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
@ -1262,12 +1262,12 @@ Array [
"cid": "cids(4)",
"downvoteCount": 0,
"embed": Object {
"$type": "app.bksy.embed.images#presented",
"$type": "app.bsky.embed.images#presented",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
"fullsize": "https://pds.public.url/image/wRIUrVZeZYnont3JRoe98oCWf0Lu0F3nvjpmluY3UX8/rs:fill:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/0jNI6lTTaZXx7i4Cf1D6uaZcxr9HmPis1N3EoT-m1Xw/rs:fill:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"fullsize": "https://pds.public.url/image/IPAYhVzUxU3OXfF-R2hr1eYlq5BAbioC9U2pHmZpwi0/rs:fit:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/oyYvmnCYEULJ70JgyQHrekEVfqR3bfHMucQ7p7yXhvQ/rs:fit:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
},
],
},
@ -1277,7 +1277,7 @@ Array [
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
@ -1448,17 +1448,17 @@ Array [
"cid": "cids(10)",
"downvoteCount": 0,
"embed": Object {
"$type": "app.bksy.embed.images#presented",
"$type": "app.bsky.embed.images#presented",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
"fullsize": "https://pds.public.url/image/wRIUrVZeZYnont3JRoe98oCWf0Lu0F3nvjpmluY3UX8/rs:fill:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/0jNI6lTTaZXx7i4Cf1D6uaZcxr9HmPis1N3EoT-m1Xw/rs:fill:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"fullsize": "https://pds.public.url/image/IPAYhVzUxU3OXfF-R2hr1eYlq5BAbioC9U2pHmZpwi0/rs:fit:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/oyYvmnCYEULJ70JgyQHrekEVfqR3bfHMucQ7p7yXhvQ/rs:fit:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
},
Object {
"alt": "tests/image/fixtures/key-portrait-small.jpg",
"fullsize": "https://pds.public.url/image/nFNFXt5_l4kN8k1Ar8Gb8tfEj8Z0woTMDD3UoX5nNqo/rs:fill:500:500:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"thumb": "https://pds.public.url/image/w4t9ji0l53vlWd7Res2ZSFAL6QS2iaI9RGCt6Gs5reE/rs:fill:250:250:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"fullsize": "https://pds.public.url/image/IBdh1uYxiSsHAl6Ai0aAwpmO_JdnuNJhb12PSD5ZNYg/rs:fit:500:500:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"thumb": "https://pds.public.url/image/ELecCwtuiF4W0nLWO5UVRtmQlq7vpFDN8GuZtHB1cBc/rs:fit:250:250:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
},
],
},
@ -1470,7 +1470,7 @@ Array [
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
@ -1673,12 +1673,12 @@ Array [
"cid": "cids(4)",
"downvoteCount": 0,
"embed": Object {
"$type": "app.bksy.embed.images#presented",
"$type": "app.bsky.embed.images#presented",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
"fullsize": "https://pds.public.url/image/wRIUrVZeZYnont3JRoe98oCWf0Lu0F3nvjpmluY3UX8/rs:fill:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/0jNI6lTTaZXx7i4Cf1D6uaZcxr9HmPis1N3EoT-m1Xw/rs:fill:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"fullsize": "https://pds.public.url/image/IPAYhVzUxU3OXfF-R2hr1eYlq5BAbioC9U2pHmZpwi0/rs:fit:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/oyYvmnCYEULJ70JgyQHrekEVfqR3bfHMucQ7p7yXhvQ/rs:fit:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
},
],
},
@ -1688,7 +1688,7 @@ Array [
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
@ -1807,17 +1807,17 @@ Array [
"cid": "cids(9)",
"downvoteCount": 0,
"embed": Object {
"$type": "app.bksy.embed.images#presented",
"$type": "app.bsky.embed.images#presented",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
"fullsize": "https://pds.public.url/image/wRIUrVZeZYnont3JRoe98oCWf0Lu0F3nvjpmluY3UX8/rs:fill:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/0jNI6lTTaZXx7i4Cf1D6uaZcxr9HmPis1N3EoT-m1Xw/rs:fill:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"fullsize": "https://pds.public.url/image/IPAYhVzUxU3OXfF-R2hr1eYlq5BAbioC9U2pHmZpwi0/rs:fit:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/oyYvmnCYEULJ70JgyQHrekEVfqR3bfHMucQ7p7yXhvQ/rs:fit:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
},
Object {
"alt": "tests/image/fixtures/key-portrait-small.jpg",
"fullsize": "https://pds.public.url/image/nFNFXt5_l4kN8k1Ar8Gb8tfEj8Z0woTMDD3UoX5nNqo/rs:fill:500:500:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"thumb": "https://pds.public.url/image/w4t9ji0l53vlWd7Res2ZSFAL6QS2iaI9RGCt6Gs5reE/rs:fill:250:250:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"fullsize": "https://pds.public.url/image/IBdh1uYxiSsHAl6Ai0aAwpmO_JdnuNJhb12PSD5ZNYg/rs:fit:500:500:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"thumb": "https://pds.public.url/image/ELecCwtuiF4W0nLWO5UVRtmQlq7vpFDN8GuZtHB1cBc/rs:fit:250:250:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
},
],
},
@ -1829,7 +1829,7 @@ Array [
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
@ -2086,17 +2086,17 @@ Array [
"cid": "cids(7)",
"downvoteCount": 0,
"embed": Object {
"$type": "app.bksy.embed.images#presented",
"$type": "app.bsky.embed.images#presented",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
"fullsize": "https://pds.public.url/image/wRIUrVZeZYnont3JRoe98oCWf0Lu0F3nvjpmluY3UX8/rs:fill:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/0jNI6lTTaZXx7i4Cf1D6uaZcxr9HmPis1N3EoT-m1Xw/rs:fill:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"fullsize": "https://pds.public.url/image/IPAYhVzUxU3OXfF-R2hr1eYlq5BAbioC9U2pHmZpwi0/rs:fit:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/oyYvmnCYEULJ70JgyQHrekEVfqR3bfHMucQ7p7yXhvQ/rs:fit:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
},
Object {
"alt": "tests/image/fixtures/key-portrait-small.jpg",
"fullsize": "https://pds.public.url/image/nFNFXt5_l4kN8k1Ar8Gb8tfEj8Z0woTMDD3UoX5nNqo/rs:fill:500:500:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"thumb": "https://pds.public.url/image/w4t9ji0l53vlWd7Res2ZSFAL6QS2iaI9RGCt6Gs5reE/rs:fill:250:250:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"fullsize": "https://pds.public.url/image/IBdh1uYxiSsHAl6Ai0aAwpmO_JdnuNJhb12PSD5ZNYg/rs:fit:500:500:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
"thumb": "https://pds.public.url/image/ELecCwtuiF4W0nLWO5UVRtmQlq7vpFDN8GuZtHB1cBc/rs:fit:250:250:1:0/plain/bafkreiaivizp4xldojmmpuzmiu75cmea7nq56dnntnuhzhsjcb63aou5ei@jpeg",
},
],
},
@ -2106,7 +2106,7 @@ Array [
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
@ -2211,12 +2211,12 @@ Array [
"cid": "cids(2)",
"downvoteCount": 0,
"embed": Object {
"$type": "app.bksy.embed.images#presented",
"$type": "app.bsky.embed.images#presented",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",
"fullsize": "https://pds.public.url/image/wRIUrVZeZYnont3JRoe98oCWf0Lu0F3nvjpmluY3UX8/rs:fill:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/0jNI6lTTaZXx7i4Cf1D6uaZcxr9HmPis1N3EoT-m1Xw/rs:fill:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"fullsize": "https://pds.public.url/image/IPAYhVzUxU3OXfF-R2hr1eYlq5BAbioC9U2pHmZpwi0/rs:fit:500:500:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
"thumb": "https://pds.public.url/image/oyYvmnCYEULJ70JgyQHrekEVfqR3bfHMucQ7p7yXhvQ/rs:fit:250:250:1:0/plain/bafkreigy5p3xxceipk2o6nqtnugpft26ol6yleqhboqziino7axvdngtci@jpeg",
},
],
},
@ -2226,7 +2226,7 @@ Array [
"$type": "app.bsky.feed.post",
"createdAt": "1970-01-01T00:00:00.000Z",
"embed": Object {
"$type": "app.bksy.embed.images",
"$type": "app.bsky.embed.images",
"images": Array [
Object {
"alt": "tests/image/fixtures/key-landscape-small.jpg",

@ -27,8 +27,8 @@ describe('Repo Benchmarks', () => {
$type: 'app.bsky.post',
text: util.randomStr(150),
reply: {
root: 'at://did:plc:1234abdefeoi23/app.bksy.post/12345678912345',
parent: 'at://did:plc:1234abdefeoi23/app.bksy.post/12345678912345',
root: 'at://did:plc:1234abdefeoi23/app.bsky.post/12345678912345',
parent: 'at://did:plc:1234abdefeoi23/app.bsky.post/12345678912345',
},
createdAt: new Date().toISOString(),
})