feat: install plugin

This commit is contained in:
Zack Spear
2023-06-08 16:24:02 -07:00
parent 8c7bf0e190
commit 069924b2d2
11 changed files with 85 additions and 27 deletions

View File

@@ -1,5 +1,6 @@
import { useToggle } from '@vueuse/core';
import { defineStore, createPinia, setActivePinia } from 'pinia';
import { useServerStore } from './server';
/**
* @see https://stackoverflow.com/questions/73476371/using-pinia-with-vue-js-web-components
* @see https://github.com/vuejs/pinia/discussions/1085
@@ -7,6 +8,8 @@ import { defineStore, createPinia, setActivePinia } from 'pinia';
setActivePinia(createPinia());
export const useDropdownStore = defineStore('dropdown', () => {
const serverStore = useServerStore();
const dropdownVisible = ref<boolean>(false);
const dropdownHide = () => dropdownVisible.value = false;
@@ -17,6 +20,14 @@ export const useDropdownStore = defineStore('dropdown', () => {
console.debug('[dropdownVisible]', newVal, _oldVal);
});
onMounted(() => {
// automatically open the launchpad dropdown after plugin install on first page load
if (serverStore.pluginInstalled && !serverStore.registered && sessionStorage.getItem('clickedInstallPlugin')) {
sessionStorage.removeItem('clickedInstallPlugin');
dropdownShow();
}
});
return {
dropdownVisible,
dropdownHide,

View File

@@ -445,6 +445,7 @@ export const useServerStore = defineStore('server', () => {
regGuid,
site,
state,
theme,
uptime,
username,
// getters