X-Git-Url: https://git.r.bdr.sh/rbdr/forum/blobdiff_plain/cac85db02ff00732cf75d473dc3411332f33d845..3d65cb04707cf3af11885995fd1110a5971d8b00:/src/lib/stores/forums.ts?ds=sidebyside diff --git a/src/lib/stores/forums.ts b/src/lib/stores/forums.ts index ab02066..0bf41f6 100644 --- a/src/lib/stores/forums.ts +++ b/src/lib/stores/forums.ts @@ -1,6 +1,25 @@ -import { store } from './apollo'; -import { GET_FORUM, GET_FORUMS } from '$lib/data/queries'; +import { createClient } from '@supabase/supabase-js'; +import { single, collection } from './supabase'; +import { supabase } from '$lib/config/config'; -export const getForum = (id: string) => - store({ key: 'forum', query: GET_FORUM, variables: { id } }); -export const getForums = () => store({ key: 'forums', query: GET_FORUMS, initialValue: [] }); +import type { Forum } from '$lib/data/types'; + +const client = createClient(supabase.url, supabase.key); + +export const forum = (id: string, withTopics = false) => + single( + client + .from('forums') + .select( + withTopics + ? `*, + topics ( + * + ) + ` + : '*' + ) + .eq('id', id), + null + ); +export const forums = collection(client.from('forums').select('*'), []);