diff --git a/package-lock.json b/package-lock.json index 9871913..9ae0caa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,6 +8,7 @@ "name": "designer", "version": "0.0.0", "dependencies": { + "@pinia/colada": "^0.13.0", "@primevue/forms": "^4.2.2", "@primevue/themes": "^4.2.2", "pinia": "^2.2.6", @@ -1217,6 +1218,14 @@ "integrity": "sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==", "dev": true }, + "node_modules/@pinia/colada": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@pinia/colada/-/colada-0.13.0.tgz", + "integrity": "sha512-Ah6uv1spRCu3I0QmimOMwrkKMcQK1+Ov2Qroz4PFD2/i9gwRUddj7Pz9kNcg5xXp2WWEPmnvkhTr2GgdqTUaUQ==", + "funding": { + "url": "https://github.com/sponsors/posva" + } + }, "node_modules/@pkgjs/parseargs": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", diff --git a/package.json b/package.json index e5e977b..8a8f1d5 100644 --- a/package.json +++ b/package.json @@ -15,6 +15,7 @@ "format": "prettier --write src/" }, "dependencies": { + "@pinia/colada": "^0.13.0", "@primevue/forms": "^4.2.2", "@primevue/themes": "^4.2.2", "pinia": "^2.2.6", diff --git a/src/main.ts b/src/main.ts index 8f869bf..b809fd9 100644 --- a/src/main.ts +++ b/src/main.ts @@ -2,6 +2,7 @@ import './assets/main.css' import { createApp } from 'vue' import { createPinia } from 'pinia' +import { PiniaColada } from '@pinia/colada'; import App from './App.vue' import router from './router' @@ -12,6 +13,7 @@ import StyleClass from 'primevue/styleclass'; const app = createApp(App) app.use(createPinia()) +app.use(PiniaColada) app.use(router) app.use(PrimeVue, { theme: { diff --git a/src/queries/organization.ts b/src/queries/organization.ts new file mode 100644 index 0000000..a451f8f --- /dev/null +++ b/src/queries/organization.ts @@ -0,0 +1,22 @@ +import { defineQuery, useQuery } from '@pinia/colada' +import { ref } from 'vue' + +export interface Organization { + abbrev: string, + id: string, + logo: string, + name: string, +} + +export const useOrganization = defineQuery(() => { + const search = ref('') + const { state, ...rest } = useQuery({ + key: ['organization'], + query: () => fetch('/api/organization').then((res) => res.json()), + }) + return { + ...rest, + state, + search, + } +}); diff --git a/src/views/StickerBuilderView.vue b/src/views/StickerBuilderView.vue index 43e8977..470fc49 100644 --- a/src/views/StickerBuilderView.vue +++ b/src/views/StickerBuilderView.vue @@ -1,10 +1,12 @@