mirror of
https://github.com/unraid/api.git
synced 2026-01-07 00:59:48 -06:00
feat: install plugin
This commit is contained in:
@@ -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,
|
||||
|
||||
@@ -445,6 +445,7 @@ export const useServerStore = defineStore('server', () => {
|
||||
regGuid,
|
||||
site,
|
||||
state,
|
||||
theme,
|
||||
uptime,
|
||||
username,
|
||||
// getters
|
||||
|
||||
Reference in New Issue
Block a user