From c63603ae0407db8459a8a0f82fff562f63895a2d Mon Sep 17 00:00:00 2001 From: Bubka <858858+Bubka@users.noreply.github.com> Date: Fri, 22 Sep 2023 15:07:47 +0200 Subject: [PATCH] Set up a basic user store --- resources/js_vue3/app.js | 4 ++-- resources/js_vue3/stores/user.js | 22 ++++++++++++++++++++++ 2 files changed, 24 insertions(+), 2 deletions(-) create mode 100644 resources/js_vue3/stores/user.js diff --git a/resources/js_vue3/app.js b/resources/js_vue3/app.js index 183580a1..76bba156 100644 --- a/resources/js_vue3/app.js +++ b/resources/js_vue3/app.js @@ -2,7 +2,7 @@ import '/resources/js_vue3/assets/app.scss'; import { createApp } from 'vue' import { i18nVue } from 'laravel-vue-i18n' -// import { createPinia } from 'pinia' +import { createPinia } from 'pinia' import App from './App.vue' import router from './router' import Notifications from '@kyvg/vue3-notification' @@ -19,7 +19,7 @@ app.config.globalProperties.$2fauth = { langs: window.appLocales } -// app.use(createPinia()) +app.use(createPinia()) app.use(router) app.use(i18nVue, { resolve: async lang => { diff --git a/resources/js_vue3/stores/user.js b/resources/js_vue3/stores/user.js new file mode 100644 index 00000000..fc81ee7f --- /dev/null +++ b/resources/js_vue3/stores/user.js @@ -0,0 +1,22 @@ +import { defineStore } from 'pinia' +// import { useApi } from '@/api/useAPI.js' + +// const api = useApi() + +export const useUserStore = defineStore({ + id: 'user', + + state: () => { + return { + name: 'guest', + preferences: window.userPreferences, + isAdmin: false, + } + }, + + actions: { + updatePreference(preference) { + this.preferences = { ...this.state.preferences, ...preference } + }, + }, +})