diff --git a/frontend/src/lib/store/useSettings.ts b/frontend/src/lib/store/useSettings.ts new file mode 100644 index 0000000..8507e3b --- /dev/null +++ b/frontend/src/lib/store/useSettings.ts @@ -0,0 +1,29 @@ +import axios from "axios"; +import {create} from "zustand"; + +interface SettingState { + settings: any[]; + + fetchSettings: () => Promise; + setSettings: (settings: any[]) => void; +} +interface FetchModulesResponse { + data: any[]; +} + +export const useSettingStore = create()((set) => ({ + settings: [], + setSettings: (settings) => set({settings}), + fetchSettings: async () => { + try { + //const response = await axios.get<{data: Setting[]}>(`${process.env.NEXT_PUBLIC_URL}/api/settings/client`); + const response = await axios.get(`/api/server/settings`, {}); + const data: FetchModulesResponse = response.data; //await response.json(); + //console.log(data); + set({settings: data.data}); + } catch (error) { + console.error("Failed to fetch settings:", error); + set({settings: []}); + } + }, +}));