36 lines
954 B
TypeScript
36 lines
954 B
TypeScript
import { boot } from 'quasar/wrappers';
|
|
import { createPinia } from 'pinia';
|
|
import { useUserStore } from 'src/vueLib/login/userStore';
|
|
import { useLogin } from 'src/vueLib/login/useLogin';
|
|
import { Me, openDatabase } from 'src/vueLib/components/DatabaseCall';
|
|
|
|
const pinia = createPinia();
|
|
|
|
export default boot(async ({ app }) => {
|
|
app.use(pinia);
|
|
const userStore = useUserStore();
|
|
const login = useLogin();
|
|
|
|
const resp = await Me().catch(() =>
|
|
login.logout().catch((err) => {
|
|
console.error(err);
|
|
return;
|
|
}),
|
|
);
|
|
|
|
if (!resp) return;
|
|
|
|
await userStore
|
|
.setUser({
|
|
id: resp.data.id,
|
|
user: resp.data.username,
|
|
role: { role: resp.data.role, permissions: [] },
|
|
workspaceId: resp.data.workspaceId,
|
|
settings: resp.data.settings,
|
|
})
|
|
.catch((err) => console.error(err));
|
|
login.refresh().catch((err) => console.error(err));
|
|
|
|
await openDatabase().catch((err) => console.error(err));
|
|
});
|