芝麻web文件管理V1.00
编辑当前文件:/home/pulsehostuk9/public_html/invoicer.pulsehost.co.uk/resources/scripts/stores/dialog.js
import { defineStore } from 'pinia' export const useDialogStore = (useWindow = false) => { const defineStoreFunc = useWindow ? window.pinia.defineStore : defineStore const { global } = window.i18n return defineStoreFunc({ id: 'dialog', state: () => ({ active: false, title: '', message: '', size: 'md', data: null, variant: 'danger', // primary || danger yesLabel: global.t('settings.custom_fields.yes'), noLabel: global.t('settings.custom_fields.no'), resolve: null, hideNoButton: false, }), actions: { openDialog(data) { this.active = true this.title = data.title this.message = data.message this.size = data.size this.data = data.data this.variant = data.variant this.yesLabel = data.yesLabel this.noLabel = data.noLabel this.hideNoButton = data.hideNoButton return new Promise((resolve, reject) => { this.resolve = resolve }) }, closeDialog() { this.active = false setTimeout(() => { this.title = '' this.message = '' this.data = null }, 300) }, }, })() }