mirror of
https://github.com/pacnpal/thrilltrack-explorer.git
synced 2025-12-21 07:51:13 -05:00
Refactor submission item handling
This commit is contained in:
@@ -359,16 +359,35 @@ export async function fetchSystemActivities(
|
||||
const submissionIds = submissions.map(s => s.id);
|
||||
const { data: submissionItems } = await supabase
|
||||
.from('submission_items')
|
||||
.select('submission_id, item_type, item_data')
|
||||
.select(`
|
||||
submission_id,
|
||||
item_type,
|
||||
photo_submission:photo_submissions!item_data_id(
|
||||
*,
|
||||
photo_items:photo_submission_items(*)
|
||||
)
|
||||
`)
|
||||
.in('submission_id', submissionIds)
|
||||
.in('item_type', ['photo', 'photo_delete', 'photo_edit']);
|
||||
|
||||
const itemsMap = new Map(submissionItems?.map(item => [item.submission_id, item]) || []);
|
||||
const itemsMap = new Map(
|
||||
submissionItems?.map(item => {
|
||||
// Transform photo data
|
||||
const itemData = item.item_type === 'photo'
|
||||
? {
|
||||
...(item as any).photo_submission,
|
||||
photos: (item as any).photo_submission?.photo_items || []
|
||||
}
|
||||
: (item as any).photo_submission;
|
||||
|
||||
return [item.submission_id, { ...item, item_data: itemData }];
|
||||
}) || []
|
||||
);
|
||||
|
||||
for (const submission of submissions) {
|
||||
const contentData = submission.content as SubmissionContent;
|
||||
const submissionItem = itemsMap.get(submission.id);
|
||||
const itemData = submissionItem?.item_data as SubmissionItemData;
|
||||
const itemData = submissionItem?.item_data as any;
|
||||
|
||||
// Build base details
|
||||
const details: SubmissionReviewDetails = {
|
||||
|
||||
Reference in New Issue
Block a user