File size: 582 Bytes
de10f77
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import type { PageServerLoad } from './$types';
import { collections } from '$lib/server/db';

export const load: PageServerLoad = async () => {
	const products = await collections.products.find({}).toArray();
	const pictures = await collections.pictures
		.find({ productId: { $in: products.map((p) => p._id) } })
		.sort({ createdAt: 1 })
		.toArray();

	const byId = Object.fromEntries(products.map((p) => [p._id, p]));

	for (const picture of pictures) {
		byId[picture.productId!].photos = [...(byId[picture.productId!].photos || []), picture];
	}

	return {
		products
	};
};