From 54a4fe47be15ad4675a881825abdbb6b16008859 Mon Sep 17 00:00:00 2001 From: Gauthier Roebroeck Date: Thu, 11 Dec 2025 12:28:57 +0800 Subject: [PATCH] refactor dialog props --- next-ui/src/components/dialog/Confirm.vue | 13 +--------- next-ui/src/components/dialog/ConfirmEdit.vue | 19 ++------------ .../src/components/dialog/DialogSimple.vue | 20 +++------------ next-ui/src/stores/dialogs.ts | 8 +++--- next-ui/src/types/DialogProps.ts | 25 +++++++++++++++++++ 5 files changed, 36 insertions(+), 49 deletions(-) create mode 100644 next-ui/src/types/DialogProps.ts diff --git a/next-ui/src/components/dialog/Confirm.vue b/next-ui/src/components/dialog/Confirm.vue index dad95064..4f886161 100644 --- a/next-ui/src/components/dialog/Confirm.vue +++ b/next-ui/src/components/dialog/Confirm.vue @@ -86,6 +86,7 @@ diff --git a/next-ui/src/stores/dialogs.ts b/next-ui/src/stores/dialogs.ts index 4719e55c..127452cd 100644 --- a/next-ui/src/stores/dialogs.ts +++ b/next-ui/src/stores/dialogs.ts @@ -1,8 +1,10 @@ // Utilities import { defineStore } from 'pinia' -import type { DialogConfirmEditProps } from '@/components/dialog/ConfirmEdit.vue' -import type { DialogConfirmProps } from '@/components/dialog/Confirm.vue' -import type { DialogSimpleProps } from '@/components/dialog/DialogSimple.vue' +import type { + DialogConfirmEditProps, + DialogConfirmProps, + DialogSimpleProps, +} from '@/types/DialogProps' /** * Reusable dialogs. diff --git a/next-ui/src/types/DialogProps.ts b/next-ui/src/types/DialogProps.ts new file mode 100644 index 00000000..57d0ba3f --- /dev/null +++ b/next-ui/src/types/DialogProps.ts @@ -0,0 +1,25 @@ +type DialogBaseProps = { + title?: string + subtitle?: string + maxWidth?: string | number + activator?: Element | string + loading?: boolean + fullscreen?: boolean + scrollable?: boolean + shown?: boolean +} + +type DialogConfirmBaseProps = DialogBaseProps & { + okText?: string + closeOnSave?: boolean +} + +export type DialogSimpleProps = DialogBaseProps + +export type DialogConfirmProps = DialogConfirmBaseProps & { + validateText?: string +} + +export type DialogConfirmEditProps = DialogConfirmBaseProps & { + cardTextClass?: string +}