X-Git-Url: https://git.r.bdr.sh/rbdr/forum/blobdiff_plain/852ee620f0a2f6a83cf83eba860ca951b66bb7e2..3d65cb04707cf3af11885995fd1110a5971d8b00:/src/lib/stores/topics.ts?ds=sidebyside diff --git a/src/lib/stores/topics.ts b/src/lib/stores/topics.ts index 04c1e9e..1842a4d 100644 --- a/src/lib/stores/topics.ts +++ b/src/lib/stores/topics.ts @@ -1,4 +1,4 @@ -import { createClient } from '@supabase/supabase-js' +import { createClient } from '@supabase/supabase-js'; import { single, collection } from './supabase'; import { supabase } from '$lib/config/config'; @@ -6,27 +6,34 @@ import type { Topic } from '$lib/data/types'; const client = createClient(supabase.url, supabase.key); -export const topic = (id: string, withPosts = false) => single(client - .from('topics') - .select(withPosts ? `*, +export const topic = (id: string, withPosts = false) => + single( + client + .from('topics') + .select( + withPosts + ? `*, forum: forums (*), tags: topic_tags (*), posts ( *, author:author_id (*) ) - `: '*' ) - .eq('id', id), - null); -export const topicsForForum = (id: string) => collection(client - .from('topics') - .select('*') - .eq('forum_id', id), - []); -export const topicsForTag = (id: string) => collection(client - .from('topics') - .select(` + ` + : '*' + ) + .eq('id', id), + null + ); +export const topicsForTag = (id: string) => + collection( + client + .from('topics') + .select( + ` *,tags!inner(*) - `) - .eq('tags.tag', id), - []); + ` + ) + .eq('tags.tag', id), + [] + );