aboutsummaryrefslogtreecommitdiffstats
path: root/web/composables/fetch-favourites.ts
diff options
context:
space:
mode:
authorLeonardo Bishop <me@leonardobishop.com>2025-08-14 18:07:12 +0100
committerLeonardo Bishop <me@leonardobishop.com>2025-08-14 18:07:12 +0100
commit4697556cac819c47d068819b9fc9c3b4ea84e279 (patch)
treeb832d8fc6b643a8b9d0eeca35c1268e1649da731 /web/composables/fetch-favourites.ts
parentdd49c9205bb04844b686b9c3396c40eb49d25826 (diff)
Merge confplanner-web and replace fiber with native net/http
Diffstat (limited to 'web/composables/fetch-favourites.ts')
-rw-r--r--web/composables/fetch-favourites.ts23
1 files changed, 23 insertions, 0 deletions
diff --git a/web/composables/fetch-favourites.ts b/web/composables/fetch-favourites.ts
new file mode 100644
index 0000000..97b443a
--- /dev/null
+++ b/web/composables/fetch-favourites.ts
@@ -0,0 +1,23 @@
+export default function useFetchFavourites() {
+ const favouritesStore = useFavouritesStore();
+ const errorStore = useErrorStore();
+ const config = useRuntimeConfig();
+
+ favouritesStore.setStatus('pending')
+
+ useFetch(config.public.baseURL + '/favourites', {
+ method: 'GET',
+ server: false,
+ lazy: true,
+ onResponseError: ({ response }) => {
+ favouritesStore.setStatus('idle')
+ errorStore.setError(response._data.message || 'An unknown error occurred');
+ },
+ onResponse: ({ response }) => {
+ if (response._data) {
+ favouritesStore.setFavourites((response._data as any).data);
+ }
+ favouritesStore.setStatus('idle')
+ },
+ });
+} \ No newline at end of file