From c80ceb460dcb29ee54565ad3f198628cf856ebc7 Mon Sep 17 00:00:00 2001 From: Ryan Wang Date: Mon, 30 Sep 2024 17:29:52 +0800 Subject: [PATCH] feat: add support for setting uniqueId in Dialog to prevent duplicate creation (#6737) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit #### What type of PR is this? /area ui /kind feature /milestone 2.20.x #### What this PR does / why we need it: Dialog API 支持传入 uniqueId,以限制同一时间仅打开一个。 #### Which issue(s) this PR fixes: Fixes https://github.com/halo-dev/halo/issues/6724 #### Does this PR introduce a user-facing change? ```release-note Dialog API 支持传入 uniqueId,以限制同一时间仅打开一个。 ``` --- .../src/components/dialog/Dialog.stories.ts | 10 ++-- .../src/components/dialog/Dialog.vue | 50 +++++++------------ .../src/components/dialog/dialog-manager.ts | 43 +++++++++++----- .../src/components/dialog/interface.ts | 8 +-- .../components/src/components/modal/Modal.vue | 1 + 5 files changed, 56 insertions(+), 56 deletions(-) diff --git a/ui/packages/components/src/components/dialog/Dialog.stories.ts b/ui/packages/components/src/components/dialog/Dialog.stories.ts index e423c49dd..e726a9afb 100644 --- a/ui/packages/components/src/components/dialog/Dialog.stories.ts +++ b/ui/packages/components/src/components/dialog/Dialog.stories.ts @@ -1,6 +1,6 @@ import type { Meta, StoryObj } from "@storybook/vue3"; -import { VDialog } from "."; +import { Dialog, VDialog } from "."; import { VButton } from "../button"; const meta: Meta = { @@ -12,8 +12,11 @@ const meta: Meta = { height: 400, setup() { const showDialog = () => { - // @ts-ignore - args.visible = true; + Dialog.success({ + title: "Hi", + // @ts-ignore + type: args.type, + }); }; return { @@ -24,7 +27,6 @@ const meta: Meta = { template: `
点击显示Dialog -
`, }), diff --git a/ui/packages/components/src/components/dialog/Dialog.vue b/ui/packages/components/src/components/dialog/Dialog.vue index 94b2608fb..8a5cb7cbb 100644 --- a/ui/packages/components/src/components/dialog/Dialog.vue +++ b/ui/packages/components/src/components/dialog/Dialog.vue @@ -1,6 +1,5 @@