From f022033b226ec13d7f8125e2103f95aa37c5d67e Mon Sep 17 00:00:00 2001 From: Baobhan Sith <80159437+Heavrnl@users.noreply.github.com> Date: Wed, 28 May 2025 19:32:14 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E8=87=AA=E5=AE=9A?= =?UTF-8?q?=E4=B9=89=E5=AF=B9=E8=AF=9D=E6=A8=A1=E6=80=81=E6=A1=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/frontend/src/App.vue | 16 +++ .../components/AddEditQuickCommandForm.vue | 15 ++- .../src/components/CommandHistoryMenu.vue | 18 ++- .../src/components/ConnectionList.vue | 15 ++- .../src/components/FavoritePathsModal.vue | 7 +- .../components/FocusSwitcherConfigurator.vue | 15 ++- .../src/components/LayoutConfigurator.vue | 33 +++-- .../components/ManageTagConnectionsModal.vue | 7 +- .../src/components/NotificationSettings.vue | 13 +- .../frontend/src/components/ProxyList.vue | 7 +- .../src/components/SshKeyManagementModal.vue | 26 ++-- .../components/WorkspaceConnectionList.vue | 23 +++- .../src/components/common/ConfirmDialog.vue | 126 ++++++++++++++++++ .../StyleCustomizerBackgroundTab.vue | 9 +- .../composables/settings/useIpBlacklist.ts | 8 +- .../src/composables/useAddConnectionForm.ts | 12 +- .../src/composables/useConfirmDialog.ts | 45 +++++++ packages/frontend/src/stores/dialog.store.ts | 83 ++++++++++++ .../frontend/src/views/CommandHistoryView.vue | 9 +- .../frontend/src/views/ConnectionsView.vue | 11 +- .../frontend/src/views/QuickCommandsView.vue | 9 +- 21 files changed, 438 insertions(+), 69 deletions(-) create mode 100644 packages/frontend/src/components/common/ConfirmDialog.vue create mode 100644 packages/frontend/src/composables/useConfirmDialog.ts create mode 100644 packages/frontend/src/stores/dialog.store.ts diff --git a/packages/frontend/src/App.vue b/packages/frontend/src/App.vue index cea449b..234a836 100644 --- a/packages/frontend/src/App.vue +++ b/packages/frontend/src/App.vue @@ -17,6 +17,8 @@ import StyleCustomizer from './components/StyleCustomizer.vue'; import FocusSwitcherConfigurator from './components/FocusSwitcherConfigurator.vue'; import RemoteDesktopModal from './components/RemoteDesktopModal.vue'; import VncModal from './components/VncModal.vue'; +import ConfirmDialog from './components/common/ConfirmDialog.vue'; +import { useDialogStore } from './stores/dialog.store'; const { t } = useI18n(); const authStore = useAuthStore(); @@ -25,6 +27,8 @@ const appearanceStore = useAppearanceStore(); const layoutStore = useLayoutStore(); const focusSwitcherStore = useFocusSwitcherStore(); // +++ 实例化焦点切换 Store +++ const sessionStore = useSessionStore(); // +++ 实例化 Session Store +++ +const dialogStore = useDialogStore(); // +++ 实例化 DialogStore +++ +const { state: dialogState } = storeToRefs(dialogStore); const favoritePathsStore = useFavoritePathsStore(); // +++ 实例化 favoritePathsStore +++ const { isAuthenticated } = storeToRefs(authStore); const { showPopupFileEditorBoolean } = storeToRefs(settingsStore); @@ -346,6 +350,18 @@ const isElementVisibleAndFocusable = (element: HTMLElement): boolean => { @close="sessionStore.closeVncModal()" /> + + diff --git a/packages/frontend/src/components/AddEditQuickCommandForm.vue b/packages/frontend/src/components/AddEditQuickCommandForm.vue index bb1f3fa..431a412 100644 --- a/packages/frontend/src/components/AddEditQuickCommandForm.vue +++ b/packages/frontend/src/components/AddEditQuickCommandForm.vue @@ -1,5 +1,5 @@