import { ref } from 'vue' import { defineStore } from 'pinia' import MyUserModel from "@/models/myUserModel.js"; export const useUserStore = defineStore('user', () => { const user = ref({}); function getCurrentUser() { return this.user.value; } async function setCurrentUser(client) { try { const myUser = await client.get("/api/GetMyUser"); this.user.value = MyUserModel.createFromApiResult(myUser.data); } catch (e){ this.user.value = MyUserModel.getDefaultUser(); console.log("User not logged.") } } async function updateCurrentUser(client, myUserModel) { this.user.value = myUserModel; await client.patch("/api/UpdateMyUser/profile", myUserModel) } return { user, getCurrentUser, setCurrentUser, updateCurrentUser } })