From 8de5e2557edcfc3a410dd4b7baca32b7e5a48ab5 Mon Sep 17 00:00:00 2001 From: timonrieger Date: Thu, 20 Nov 2025 15:25:08 +0100 Subject: [PATCH] refactor: update asset aggregation to include JSON formatting and ordering by creation date --- server/src/repositories/asset.repository.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/server/src/repositories/asset.repository.ts b/server/src/repositories/asset.repository.ts index ff64fefe44..1cfd7d283f 100644 --- a/server/src/repositories/asset.repository.ts +++ b/server/src/repositories/asset.repository.ts @@ -431,12 +431,13 @@ export class AssetRepository { eb .selectFrom('asset as stacked') .selectAll('stack') - .select((eb) => eb.fn('array_agg', [eb.table('stacked')]).as('assets')) + .select( + sql`array_agg(to_json(stacked) ORDER BY stacked."fileCreatedAt" ASC)`.as('assets'), + ) .whereRef('stacked.stackId', '=', 'stack.id') .whereRef('stacked.id', '!=', 'stack.primaryAssetId') .where('stacked.deletedAt', 'is', null) .where('stacked.visibility', '=', AssetVisibility.Timeline) - .orderBy('stacked.fileCreatedAt', 'asc') .groupBy('stack.id') .as('stacked_assets'), (join) => join.on('stack.id', 'is not', null),