feat(accountStatusesController): query for media faster

This commit is contained in:
P. Reis 2025-01-22 17:10:24 -03:00
parent b037be44a4
commit c3966be65b

View file

@ -197,12 +197,13 @@ const accountStatusesQuerySchema = z.object({
limit: z.coerce.number().nonnegative().transform((v) => Math.min(v, 40)).catch(20),
exclude_replies: booleanParamSchema.optional(),
tagged: z.string().optional(),
only_media: z.coerce.boolean().catch(false),
});
const accountStatusesController: AppController = async (c) => {
const pubkey = c.req.param('pubkey');
const { since, until } = c.get('pagination');
const { pinned, limit, exclude_replies, tagged } = accountStatusesQuerySchema.parse(c.req.query());
const { pinned, limit, exclude_replies, tagged, only_media } = accountStatusesQuerySchema.parse(c.req.query());
const { signal } = c.req.raw;
const store = await Storages.db();
@ -240,6 +241,10 @@ const accountStatusesController: AppController = async (c) => {
limit,
};
if (only_media) {
filter.search = 'only_media:true';
}
if (tagged) {
filter['#t'] = [tagged];
}