diff --git a/modules/gui/src/components/EssentialWorkshops/EssentialWorkshops.svelte b/modules/gui/src/components/EssentialWorkshops/EssentialWorkshops.svelte index d559d35..1d64133 100644 --- a/modules/gui/src/components/EssentialWorkshops/EssentialWorkshops.svelte +++ b/modules/gui/src/components/EssentialWorkshops/EssentialWorkshops.svelte @@ -1,17 +1,14 @@ diff --git a/modules/gui/src/components/FeaturedCourses/FeaturedCourses.svelte b/modules/gui/src/components/FeaturedCourses/FeaturedCourses.svelte index 7e76fe8..68ffc6e 100644 --- a/modules/gui/src/components/FeaturedCourses/FeaturedCourses.svelte +++ b/modules/gui/src/components/FeaturedCourses/FeaturedCourses.svelte @@ -1,17 +1,21 @@ diff --git a/modules/gui/src/components/News/News.svelte b/modules/gui/src/components/News/News.svelte index 800aa9f..7b24eed 100644 --- a/modules/gui/src/components/News/News.svelte +++ b/modules/gui/src/components/News/News.svelte @@ -1,17 +1,14 @@ diff --git a/modules/gui/src/libs/stores.ts b/modules/gui/src/libs/stores.ts index 4a23a6b..acedd96 100644 --- a/modules/gui/src/libs/stores.ts +++ b/modules/gui/src/libs/stores.ts @@ -113,6 +113,12 @@ function initPosts() { const res = postsIndex.search(term, { limit }); const matchingPosts: AirtablePost[] = res.map((v) => v.item); return matchingPosts; + }, + subscribeByTag: (tag: string, cb: (posts: AirtablePost[]) => void) => { + subscribe((newPosts: AirtablePost[]) => { + const filteredPosts = newPosts.filter((post) => post.tags.includes(tag)); + cb(filteredPosts); + }); } }; }