From fb5e10fe048398356d18f2040eed7e1f150977de Mon Sep 17 00:00:00 2001 From: Methapon Metanipat Date: Mon, 7 Oct 2024 14:32:52 +0700 Subject: [PATCH] feat: add config endpoint --- src/stores/config/index.ts | 23 +++++++++++++++++++++++ src/stores/config/types.ts | 3 +++ 2 files changed, 26 insertions(+) create mode 100644 src/stores/config/index.ts create mode 100644 src/stores/config/types.ts diff --git a/src/stores/config/index.ts b/src/stores/config/index.ts new file mode 100644 index 00000000..9ab43cda --- /dev/null +++ b/src/stores/config/index.ts @@ -0,0 +1,23 @@ +import { defineStore } from 'pinia'; +import { api } from 'src/boot/axios'; +import { ref } from 'vue'; + +export const useConfigStore = defineStore('config-store', () => { + const data = ref(); + + return { + data, + + async getConfig() { + if (data.value) return data.value; + + const res = await api.get('/config'); + + if (res.status < 400) { + data.value = res.data; + } + + return data.value; + }, + }; +}); diff --git a/src/stores/config/types.ts b/src/stores/config/types.ts new file mode 100644 index 00000000..5090f8d4 --- /dev/null +++ b/src/stores/config/types.ts @@ -0,0 +1,3 @@ +type AppConfig = { + vat: number; +};