PluginProbe
Hostinger Tools / 3.0.38
Hostinger Tools v3.0.38
3.0.77 3.0.76 3.0.75 3.0.74 3.0.73 3.0.72 3.0.71 3.0.70 3.0.69 3.0.68 3.0.67 3.0.66 1.8.1 1.8.2 1.8.3 1.9.1 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.0.0 2.0.1 2.0.4 All 108 releases
hostinger / vue-frontend / src / stores / modalStore.ts

modalStore.ts in Hostinger Tools 3.0.38, at vue-frontend/src/stores/modalStore.ts

23 lines 630 B
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 import { defineStore } from 'pinia';
2 import { ref } from 'vue';
3 import { ModalContent, ModalSettings } from '@/types';
4 import { ModalName } from '@/types/enums';
5
6 export const useModalStore = defineStore('modalStore', () => {
7 interface Modal {
8 name: ModalName;
9 data?: ModalContent;
10 settings?: ModalSettings;
11 }
12
13 const activeModal = ref<Modal | null>(null);
14
15 const openModal = (name: ModalName, data?: ModalContent, settings?: ModalSettings) => {
16 activeModal.value = { name, data, settings };
17 };
18
19 const closeModal = () => (activeModal.value = null);
20
21 return { activeModal, openModal, closeModal };
22 });
23