From c4a492002bb1fa462d2c681ea492c94ab5890b75 Mon Sep 17 00:00:00 2001 From: Jonathan Summers-Muir Date: Fri, 1 Mar 2024 18:16:25 +0800 Subject: [PATCH] Chore/move confirmation dialogs (#21651) * move confirmation dialogs * Update index.tsx * Update ExtensionCard.tsx --- .../grid/components/footer/pagination/Pagination.tsx | 2 +- apps/studio/components/interfaces/Account/AccessTokenList.tsx | 2 +- .../interfaces/Account/TOTPFactors/AddNewFactorModal.tsx | 2 +- .../interfaces/Account/TOTPFactors/DeleteFactorModal.tsx | 2 +- .../interfaces/Auth/Policies/AIPolicyEditorPanel/index.tsx | 2 +- apps/studio/components/interfaces/Auth/Policies/Policies.tsx | 2 +- .../interfaces/Auth/Policies/PolicyEditorModal/index.tsx | 2 +- apps/studio/components/interfaces/Auth/Users/UserDropdown.tsx | 2 +- .../interfaces/BranchManagement/BranchManagement.tsx | 2 +- .../components/interfaces/Database/Backups/BackupsList.tsx | 2 +- .../Database/EnumeratedTypes/DeleteEnumeratedTypeModal.tsx | 2 +- .../interfaces/Database/Extensions/ExtensionCard.tsx | 2 +- .../interfaces/Database/Functions/CreateFunction.tsx | 2 +- .../components/interfaces/Database/Hooks/EditHookPanel.tsx | 2 +- .../studio/components/interfaces/Database/Indexes/Indexes.tsx | 2 +- .../interfaces/Database/Publications/PublicationsList.tsx | 2 +- .../components/interfaces/Database/Triggers/CreateTrigger.tsx | 2 +- .../Functions/EdgeFunctionSecrets/EdgeFunctionSecrets.tsx | 2 +- .../interfaces/Integrations/IntegrationConnection.tsx | 2 +- .../components/interfaces/Organization/Documents/SOC2.tsx | 2 +- .../interfaces/Organization/TeamSettings/MemberActions.tsx | 2 +- .../interfaces/Organization/TeamSettings/TeamSettings.tsx | 2 +- .../interfaces/Realtime/Inspector/ApplyConfigModal.tsx | 2 +- apps/studio/components/interfaces/SQLEditor/SQLEditor.tsx | 2 +- .../studio/components/interfaces/Settings/API/JWTSettings.tsx | 2 +- .../components/interfaces/Settings/Database/BannedIPs.tsx | 2 +- .../General/CustomDomainConfig/CustomDomainActivate.tsx | 2 +- .../General/CustomDomainConfig/CustomDomainDelete.tsx | 2 +- .../Settings/General/Infrastructure/PauseProjectButton.tsx | 2 +- .../Settings/General/Infrastructure/RestartServerButton.tsx | 2 +- .../DropAllReplicasConfirmationModal.tsx | 2 +- .../DropReplicaConfirmationModal.tsx | 2 +- .../interfaces/Settings/Logs/Logs.SavedQueriesItem.tsx | 2 +- .../interfaces/TableGridEditor/DeleteConfirmationDialogs.tsx | 2 +- .../interfaces/TableGridEditor/GridHeaderActions.tsx | 4 ++-- .../TableGridEditor/SidePanelEditor/SidePanelEditor.tsx | 2 +- .../SidePanelEditor/TableEditor/TableEditor.tsx | 2 +- .../components/layouts/ProjectLayout/ProjectPausedState.tsx | 2 +- apps/studio/components/layouts/ReportsLayout/ReportsMenu.tsx | 2 +- apps/studio/components/layouts/SQLEditorLayout/QueryItem.tsx | 2 +- .../components/layouts/SQLEditorLayout/SQLEditorMenu.tsx | 2 +- .../components/to-be-cleaned/Storage/EmptyBucketModal.tsx | 2 +- .../to-be-cleaned/Storage/StoragePolicies/StoragePolicies.tsx | 2 +- apps/studio/pages/project/[ref]/reports/query-performance.tsx | 2 +- .../ui => packages/ui-patterns}/Dialogs/ConfirmDialog.tsx | 0 .../ui => packages/ui-patterns/Dialogs}/ConfirmationModal.tsx | 0 packages/ui-patterns/index.tsx | 2 ++ 47 files changed, 47 insertions(+), 45 deletions(-) rename {apps/studio/components/ui => packages/ui-patterns}/Dialogs/ConfirmDialog.tsx (100%) rename {apps/studio/components/ui => packages/ui-patterns/Dialogs}/ConfirmationModal.tsx (100%) diff --git a/apps/studio/components/grid/components/footer/pagination/Pagination.tsx b/apps/studio/components/grid/components/footer/pagination/Pagination.tsx index 8d25491b71a..bc866bad1b0 100644 --- a/apps/studio/components/grid/components/footer/pagination/Pagination.tsx +++ b/apps/studio/components/grid/components/footer/pagination/Pagination.tsx @@ -2,7 +2,7 @@ import { useEffect, useState } from 'react' import { formatFilterURLParams } from 'components/grid/SupabaseGrid.utils' import { useProjectContext } from 'components/layouts/ProjectLayout/ProjectContext' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useTableRowsCountQuery } from 'data/table-rows/table-rows-count-query' import { useUrlState } from 'hooks' import { useRoleImpersonationStateSnapshot } from 'state/role-impersonation-state' diff --git a/apps/studio/components/interfaces/Account/AccessTokenList.tsx b/apps/studio/components/interfaces/Account/AccessTokenList.tsx index bcc8df4effc..ce945277d25 100644 --- a/apps/studio/components/interfaces/Account/AccessTokenList.tsx +++ b/apps/studio/components/interfaces/Account/AccessTokenList.tsx @@ -5,7 +5,7 @@ import { useState } from 'react' import { Button, IconTrash, Modal } from 'ui' import Table from 'components/to-be-cleaned/Table' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useStore } from 'hooks' const AccessTokenList = observer(() => { diff --git a/apps/studio/components/interfaces/Account/TOTPFactors/AddNewFactorModal.tsx b/apps/studio/components/interfaces/Account/TOTPFactors/AddNewFactorModal.tsx index 5eeff45f7e8..6f5ba7fd7ed 100644 --- a/apps/studio/components/interfaces/Account/TOTPFactors/AddNewFactorModal.tsx +++ b/apps/studio/components/interfaces/Account/TOTPFactors/AddNewFactorModal.tsx @@ -1,7 +1,7 @@ import { Dispatch, SetStateAction, useEffect, useState } from 'react' import { Input, Modal } from 'ui' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import InformationBox from 'components/ui/InformationBox' import { GenericSkeletonLoader } from 'components/ui/ShimmeringLoader' import { useMfaChallengeAndVerifyMutation } from 'data/profile/mfa-challenge-and-verify-mutation' diff --git a/apps/studio/components/interfaces/Account/TOTPFactors/DeleteFactorModal.tsx b/apps/studio/components/interfaces/Account/TOTPFactors/DeleteFactorModal.tsx index a098efa77db..8fe0dcc54a6 100644 --- a/apps/studio/components/interfaces/Account/TOTPFactors/DeleteFactorModal.tsx +++ b/apps/studio/components/interfaces/Account/TOTPFactors/DeleteFactorModal.tsx @@ -6,7 +6,7 @@ import { Modal, } from 'ui' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useMfaUnenrollMutation } from 'data/profile/mfa-unenroll-mutation' import { useStore } from 'hooks' diff --git a/apps/studio/components/interfaces/Auth/Policies/AIPolicyEditorPanel/index.tsx b/apps/studio/components/interfaces/Auth/Policies/AIPolicyEditorPanel/index.tsx index 992d0dce05f..89d88937ca8 100644 --- a/apps/studio/components/interfaces/Auth/Policies/AIPolicyEditorPanel/index.tsx +++ b/apps/studio/components/interfaces/Auth/Policies/AIPolicyEditorPanel/index.tsx @@ -28,7 +28,7 @@ import { IStandaloneCodeEditor, IStandaloneDiffEditor, } from 'components/interfaces/SQLEditor/SQLEditor.types' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useSqlDebugMutation } from 'data/ai/sql-debug-mutation' import { databasePoliciesKeys } from 'data/database-policies/keys' import { useEntityDefinitionsQuery } from 'data/database/entity-definitions-query' diff --git a/apps/studio/components/interfaces/Auth/Policies/Policies.tsx b/apps/studio/components/interfaces/Auth/Policies/Policies.tsx index 64f9b90b13a..83db05e4ddd 100644 --- a/apps/studio/components/interfaces/Auth/Policies/Policies.tsx +++ b/apps/studio/components/interfaces/Auth/Policies/Policies.tsx @@ -12,7 +12,7 @@ import { useIsRLSAIAssistantEnabled } from 'components/interfaces/App/FeaturePre import { useProjectContext } from 'components/layouts/ProjectLayout/ProjectContext' import NoSearchResults from 'components/to-be-cleaned/NoSearchResults' import ProductEmptyState from 'components/to-be-cleaned/ProductEmptyState' -import ConfirmModal from 'components/ui/Dialogs/ConfirmDialog' +import ConfirmModal from 'ui-patterns/Dialogs/ConfirmDialog' import InformationBox from 'components/ui/InformationBox' import { useDatabasePolicyCreateMutation } from 'data/database-policies/database-policy-create-mutation' import { useDatabasePolicyDeleteMutation } from 'data/database-policies/database-policy-delete-mutation' diff --git a/apps/studio/components/interfaces/Auth/Policies/PolicyEditorModal/index.tsx b/apps/studio/components/interfaces/Auth/Policies/PolicyEditorModal/index.tsx index 76bc7892f26..e0f4b6548c9 100644 --- a/apps/studio/components/interfaces/Auth/Policies/PolicyEditorModal/index.tsx +++ b/apps/studio/components/interfaces/Auth/Policies/PolicyEditorModal/index.tsx @@ -2,7 +2,7 @@ import { isEmpty, noop } from 'lodash' import { useEffect, useState } from 'react' import { Modal } from 'ui' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useStore } from 'hooks' import { LOCAL_STORAGE_KEYS } from 'lib/constants' import { useAppStateSnapshot } from 'state/app-state' diff --git a/apps/studio/components/interfaces/Auth/Users/UserDropdown.tsx b/apps/studio/components/interfaces/Auth/Users/UserDropdown.tsx index 38c2edb0213..1ec734d5fcd 100644 --- a/apps/studio/components/interfaces/Auth/Users/UserDropdown.tsx +++ b/apps/studio/components/interfaces/Auth/Users/UserDropdown.tsx @@ -2,7 +2,7 @@ import * as Tooltip from '@radix-ui/react-tooltip' import { useParams } from 'common' import { useState } from 'react' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useUserDeleteMFAFactorsMutation } from 'data/auth/user-delete-mfa-factors-mutation' import { useUserDeleteMutation } from 'data/auth/user-delete-mutation' import { useUserResetPasswordMutation } from 'data/auth/user-reset-password-mutation' diff --git a/apps/studio/components/interfaces/BranchManagement/BranchManagement.tsx b/apps/studio/components/interfaces/BranchManagement/BranchManagement.tsx index 52428746463..9d274820d10 100644 --- a/apps/studio/components/interfaces/BranchManagement/BranchManagement.tsx +++ b/apps/studio/components/interfaces/BranchManagement/BranchManagement.tsx @@ -18,7 +18,7 @@ import { import { ScaffoldContainer, ScaffoldSection } from 'components/layouts/Scaffold' import AlertError from 'components/ui/AlertError' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import TextConfirmModal from 'components/ui/Modals/TextConfirmModal' import { useBranchDeleteMutation } from 'data/branches/branch-delete-mutation' import { useBranchesDisableMutation } from 'data/branches/branches-disable-mutation' diff --git a/apps/studio/components/interfaces/Database/Backups/BackupsList.tsx b/apps/studio/components/interfaces/Database/Backups/BackupsList.tsx index 77e20aca631..6039e4b2026 100644 --- a/apps/studio/components/interfaces/Database/Backups/BackupsList.tsx +++ b/apps/studio/components/interfaces/Database/Backups/BackupsList.tsx @@ -7,7 +7,7 @@ import { useState } from 'react' import { IconAlertCircle, IconClock, Modal } from 'ui' import { useProjectContext } from 'components/layouts/ProjectLayout/ProjectContext' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import InformationBox from 'components/ui/InformationBox' import Panel from 'components/ui/Panel' import UpgradeToPro from 'components/ui/UpgradeToPro' diff --git a/apps/studio/components/interfaces/Database/EnumeratedTypes/DeleteEnumeratedTypeModal.tsx b/apps/studio/components/interfaces/Database/EnumeratedTypes/DeleteEnumeratedTypeModal.tsx index 66a810824b8..543d9c03522 100644 --- a/apps/studio/components/interfaces/Database/EnumeratedTypes/DeleteEnumeratedTypeModal.tsx +++ b/apps/studio/components/interfaces/Database/EnumeratedTypes/DeleteEnumeratedTypeModal.tsx @@ -7,7 +7,7 @@ import { } from 'ui' import { useProjectContext } from 'components/layouts/ProjectLayout/ProjectContext' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useEnumeratedTypeDeleteMutation } from 'data/enumerated-types/enumerated-type-delete-mutation' import toast from 'react-hot-toast' diff --git a/apps/studio/components/interfaces/Database/Extensions/ExtensionCard.tsx b/apps/studio/components/interfaces/Database/Extensions/ExtensionCard.tsx index f003c664aaa..0e89c53aa22 100644 --- a/apps/studio/components/interfaces/Database/Extensions/ExtensionCard.tsx +++ b/apps/studio/components/interfaces/Database/Extensions/ExtensionCard.tsx @@ -7,7 +7,7 @@ import { extensions } from 'shared-data' import { Badge, IconExternalLink, IconLoader, Modal, Toggle } from 'ui' import { useProjectContext } from 'components/layouts/ProjectLayout/ProjectContext' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useDatabaseExtensionDisableMutation } from 'data/database-extensions/database-extension-disable-mutation' import { useCheckPermissions } from 'hooks' import EnableExtensionModal from './EnableExtensionModal' diff --git a/apps/studio/components/interfaces/Database/Functions/CreateFunction.tsx b/apps/studio/components/interfaces/Database/Functions/CreateFunction.tsx index fe6964b8801..f368883f318 100644 --- a/apps/studio/components/interfaces/Database/Functions/CreateFunction.tsx +++ b/apps/studio/components/interfaces/Database/Functions/CreateFunction.tsx @@ -7,7 +7,7 @@ import { Button, IconPlus, IconTrash, Input, Listbox, Modal, Radio, SidePanel, T import { POSTGRES_DATA_TYPES } from 'components/interfaces/TableGridEditor/SidePanelEditor/SidePanelEditor.constants' import { useProjectContext } from 'components/layouts/ProjectLayout/ProjectContext' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import Panel from 'components/ui/Panel' import SqlEditor from 'components/ui/SqlEditor' import { useDatabaseExtensionsQuery } from 'data/database-extensions/database-extensions-query' diff --git a/apps/studio/components/interfaces/Database/Hooks/EditHookPanel.tsx b/apps/studio/components/interfaces/Database/Hooks/EditHookPanel.tsx index 26b7ed0886b..47dc88148cf 100644 --- a/apps/studio/components/interfaces/Database/Hooks/EditHookPanel.tsx +++ b/apps/studio/components/interfaces/Database/Hooks/EditHookPanel.tsx @@ -4,7 +4,7 @@ import { MutableRefObject, useEffect, useMemo, useRef, useState } from 'react' import { useParams } from 'common/hooks' import { useProjectContext } from 'components/layouts/ProjectLayout/ProjectContext' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { FormSection, FormSectionContent, FormSectionLabel } from 'components/ui/Forms' import { useDatabaseTriggerCreateMutation } from 'data/database-triggers/database-trigger-create-mutation' import { useDatabaseTriggerUpdateMutation } from 'data/database-triggers/database-trigger-update-transaction-mutation' diff --git a/apps/studio/components/interfaces/Database/Indexes/Indexes.tsx b/apps/studio/components/interfaces/Database/Indexes/Indexes.tsx index a00d58ae5db..3aec38f65f5 100644 --- a/apps/studio/components/interfaces/Database/Indexes/Indexes.tsx +++ b/apps/studio/components/interfaces/Database/Indexes/Indexes.tsx @@ -20,7 +20,7 @@ import { useProjectContext } from 'components/layouts/ProjectLayout/ProjectConte import Table from 'components/to-be-cleaned/Table' import AlertError from 'components/ui/AlertError' import CodeEditor from 'components/ui/CodeEditor' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import SchemaSelector from 'components/ui/SchemaSelector' import ShimmeringLoader, { GenericSkeletonLoader } from 'components/ui/ShimmeringLoader' import { DatabaseIndex, useIndexesQuery } from 'data/database/indexes-query' diff --git a/apps/studio/components/interfaces/Database/Publications/PublicationsList.tsx b/apps/studio/components/interfaces/Database/Publications/PublicationsList.tsx index 30551f51112..4d028925c77 100644 --- a/apps/studio/components/interfaces/Database/Publications/PublicationsList.tsx +++ b/apps/studio/components/interfaces/Database/Publications/PublicationsList.tsx @@ -6,7 +6,7 @@ import { Button, IconAlertCircle, IconSearch, Input, Modal, Toggle } from 'ui' import { useProjectContext } from 'components/layouts/ProjectLayout/ProjectContext' import Table from 'components/to-be-cleaned/Table' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import InformationBox from 'components/ui/InformationBox' import NoSearchResults from 'components/ui/NoSearchResults' import { useDatabasePublicationsQuery } from 'data/database-publications/database-publications-query' diff --git a/apps/studio/components/interfaces/Database/Triggers/CreateTrigger.tsx b/apps/studio/components/interfaces/Database/Triggers/CreateTrigger.tsx index a29b5deecc2..824f19a46be 100644 --- a/apps/studio/components/interfaces/Database/Triggers/CreateTrigger.tsx +++ b/apps/studio/components/interfaces/Database/Triggers/CreateTrigger.tsx @@ -7,7 +7,7 @@ import SVG from 'react-inlinesvg' import { Dictionary } from 'types' import { useProjectContext } from 'components/layouts/ProjectLayout/ProjectContext' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import FormEmptyBox from 'components/ui/FormBoxEmpty' import NoTableState from 'components/ui/States/NoTableState' import { diff --git a/apps/studio/components/interfaces/Functions/EdgeFunctionSecrets/EdgeFunctionSecrets.tsx b/apps/studio/components/interfaces/Functions/EdgeFunctionSecrets/EdgeFunctionSecrets.tsx index 1fb9820a6f1..15732a74355 100644 --- a/apps/studio/components/interfaces/Functions/EdgeFunctionSecrets/EdgeFunctionSecrets.tsx +++ b/apps/studio/components/interfaces/Functions/EdgeFunctionSecrets/EdgeFunctionSecrets.tsx @@ -5,7 +5,7 @@ import { Button, IconExternalLink, IconSearch, Input, Modal } from 'ui' import Table from 'components/to-be-cleaned/Table' import AlertError from 'components/ui/AlertError' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { GenericSkeletonLoader } from 'components/ui/ShimmeringLoader' import { useSecretsDeleteMutation } from 'data/secrets/secrets-delete-mutation' import { ProjectSecret, useSecretsQuery } from 'data/secrets/secrets-query' diff --git a/apps/studio/components/interfaces/Integrations/IntegrationConnection.tsx b/apps/studio/components/interfaces/Integrations/IntegrationConnection.tsx index 026c4af8452..26414f1892d 100644 --- a/apps/studio/components/interfaces/Integrations/IntegrationConnection.tsx +++ b/apps/studio/components/interfaces/Integrations/IntegrationConnection.tsx @@ -19,7 +19,7 @@ import { IntegrationConnection, IntegrationConnectionProps, } from 'components/interfaces/Integrations/IntegrationPanels' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useIntegrationsVercelConnectionSyncEnvsMutation } from 'data/integrations/integrations-vercel-connection-sync-envs-mutation' import { IntegrationProjectConnection } from 'data/integrations/integrations.types' import { useStore } from 'hooks' diff --git a/apps/studio/components/interfaces/Organization/Documents/SOC2.tsx b/apps/studio/components/interfaces/Organization/Documents/SOC2.tsx index 28fd4fa161f..2506a5fdab2 100644 --- a/apps/studio/components/interfaces/Organization/Documents/SOC2.tsx +++ b/apps/studio/components/interfaces/Organization/Documents/SOC2.tsx @@ -11,7 +11,7 @@ import { useOrgSubscriptionQuery } from 'data/subscriptions/org-subscription-que import { Button, IconDownload, Modal } from 'ui' import { useState } from 'react' import { useStore } from 'hooks' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { getDocument } from 'data/documents/document-query' const SOC2 = () => { diff --git a/apps/studio/components/interfaces/Organization/TeamSettings/MemberActions.tsx b/apps/studio/components/interfaces/Organization/TeamSettings/MemberActions.tsx index 9ec892ef445..4e73f696c3d 100644 --- a/apps/studio/components/interfaces/Organization/TeamSettings/MemberActions.tsx +++ b/apps/studio/components/interfaces/Organization/TeamSettings/MemberActions.tsx @@ -15,7 +15,7 @@ import { Modal, } from 'ui' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useOrganizationMemberDeleteMutation } from 'data/organizations/organization-member-delete-mutation' import { useOrganizationMemberInviteCreateMutation } from 'data/organizations/organization-member-invite-create-mutation' import { useOrganizationMemberInviteDeleteMutation } from 'data/organizations/organization-member-invite-delete-mutation' diff --git a/apps/studio/components/interfaces/Organization/TeamSettings/TeamSettings.tsx b/apps/studio/components/interfaces/Organization/TeamSettings/TeamSettings.tsx index 1af196c62fa..d0f7d7b1f50 100644 --- a/apps/studio/components/interfaces/Organization/TeamSettings/TeamSettings.tsx +++ b/apps/studio/components/interfaces/Organization/TeamSettings/TeamSettings.tsx @@ -10,7 +10,7 @@ import { ScaffoldFilterAndContent, ScaffoldSectionContent, } from 'components/layouts/Scaffold' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useOrganizationMemberDeleteMutation } from 'data/organizations/organization-member-delete-mutation' import { useOrganizationMembersQuery } from 'data/organizations/organization-members-query' import { useOrganizationRolesQuery } from 'data/organizations/organization-roles-query' diff --git a/apps/studio/components/interfaces/Realtime/Inspector/ApplyConfigModal.tsx b/apps/studio/components/interfaces/Realtime/Inspector/ApplyConfigModal.tsx index 2cc3aaff8e9..45cdf42973c 100644 --- a/apps/studio/components/interfaces/Realtime/Inspector/ApplyConfigModal.tsx +++ b/apps/studio/components/interfaces/Realtime/Inspector/ApplyConfigModal.tsx @@ -1,6 +1,6 @@ import { Modal } from 'ui' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' interface ApplyConfigModalProps { visible: boolean diff --git a/apps/studio/components/interfaces/SQLEditor/SQLEditor.tsx b/apps/studio/components/interfaces/SQLEditor/SQLEditor.tsx index 8a1bcb68464..0c1a6e9cdf3 100644 --- a/apps/studio/components/interfaces/SQLEditor/SQLEditor.tsx +++ b/apps/studio/components/interfaces/SQLEditor/SQLEditor.tsx @@ -26,7 +26,7 @@ import { cn, } from 'ui' -import ConfirmModal from 'components/ui/Dialogs/ConfirmDialog' +import ConfirmModal from 'ui-patterns/Dialogs/ConfirmDialog' import { useSqlEditMutation } from 'data/ai/sql-edit-mutation' import { useSqlGenerateMutation } from 'data/ai/sql-generate-mutation' import { useSqlTitleGenerateMutation } from 'data/ai/sql-title-mutation' diff --git a/apps/studio/components/interfaces/Settings/API/JWTSettings.tsx b/apps/studio/components/interfaces/Settings/API/JWTSettings.tsx index 7eafbaf02c0..3fe46ea6580 100644 --- a/apps/studio/components/interfaces/Settings/API/JWTSettings.tsx +++ b/apps/studio/components/interfaces/Settings/API/JWTSettings.tsx @@ -31,7 +31,7 @@ import { } from 'ui' import { useParams } from 'common/hooks' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import Panel from 'components/ui/Panel' import { useJwtSecretUpdateMutation } from 'data/config/jwt-secret-update-mutation' import { useJwtSecretUpdatingStatusQuery } from 'data/config/jwt-secret-updating-status-query' diff --git a/apps/studio/components/interfaces/Settings/Database/BannedIPs.tsx b/apps/studio/components/interfaces/Settings/Database/BannedIPs.tsx index 7c0b5b98708..93c2dd68104 100644 --- a/apps/studio/components/interfaces/Settings/Database/BannedIPs.tsx +++ b/apps/studio/components/interfaces/Settings/Database/BannedIPs.tsx @@ -14,7 +14,7 @@ import { Modal, Badge, } from 'ui' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useBannedIPsQuery } from 'data/banned-ips/banned-ips-query' import { useBannedIPsDeleteMutation } from 'data/banned-ips/banned-ips-delete-mutations' diff --git a/apps/studio/components/interfaces/Settings/General/CustomDomainConfig/CustomDomainActivate.tsx b/apps/studio/components/interfaces/Settings/General/CustomDomainConfig/CustomDomainActivate.tsx index 9ba37cc13cd..1724ed66231 100644 --- a/apps/studio/components/interfaces/Settings/General/CustomDomainConfig/CustomDomainActivate.tsx +++ b/apps/studio/components/interfaces/Settings/General/CustomDomainConfig/CustomDomainActivate.tsx @@ -11,7 +11,7 @@ import { Modal, } from 'ui' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import Panel from 'components/ui/Panel' import { useProjectApiQuery } from 'data/config/project-api-query' import { useCheckCNAMERecordMutation } from 'data/custom-domains/check-cname-mutation' diff --git a/apps/studio/components/interfaces/Settings/General/CustomDomainConfig/CustomDomainDelete.tsx b/apps/studio/components/interfaces/Settings/General/CustomDomainConfig/CustomDomainDelete.tsx index 08a759c2ccd..9c6a909a18a 100644 --- a/apps/studio/components/interfaces/Settings/General/CustomDomainConfig/CustomDomainDelete.tsx +++ b/apps/studio/components/interfaces/Settings/General/CustomDomainConfig/CustomDomainDelete.tsx @@ -3,7 +3,7 @@ import Link from 'next/link' import { useState } from 'react' import { Button, IconExternalLink, IconTrash } from 'ui' -import ConfirmModal from 'components/ui/Dialogs/ConfirmDialog' +import ConfirmModal from 'ui-patterns/Dialogs/ConfirmDialog' import Panel from 'components/ui/Panel' import { useCustomDomainDeleteMutation } from 'data/custom-domains/custom-domains-delete-mutation' import { CustomDomainResponse } from 'data/custom-domains/custom-domains-query' diff --git a/apps/studio/components/interfaces/Settings/General/Infrastructure/PauseProjectButton.tsx b/apps/studio/components/interfaces/Settings/General/Infrastructure/PauseProjectButton.tsx index 38e0212c385..c878c8e147a 100644 --- a/apps/studio/components/interfaces/Settings/General/Infrastructure/PauseProjectButton.tsx +++ b/apps/studio/components/interfaces/Settings/General/Infrastructure/PauseProjectButton.tsx @@ -9,7 +9,7 @@ import { useIsProjectActive, useProjectContext, } from 'components/layouts/ProjectLayout/ProjectContext' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useProjectPauseMutation } from 'data/projects/project-pause-mutation' import { setProjectStatus } from 'data/projects/projects-query' import { useOrgSubscriptionQuery } from 'data/subscriptions/org-subscription-query' diff --git a/apps/studio/components/interfaces/Settings/General/Infrastructure/RestartServerButton.tsx b/apps/studio/components/interfaces/Settings/General/Infrastructure/RestartServerButton.tsx index b496a0604ee..8a5a5ef365e 100644 --- a/apps/studio/components/interfaces/Settings/General/Infrastructure/RestartServerButton.tsx +++ b/apps/studio/components/interfaces/Settings/General/Infrastructure/RestartServerButton.tsx @@ -17,7 +17,7 @@ import { useIsProjectActive, useProjectContext, } from 'components/layouts/ProjectLayout/ProjectContext' -import ConfirmModal from 'components/ui/Dialogs/ConfirmDialog' +import ConfirmModal from 'ui-patterns/Dialogs/ConfirmDialog' import { useProjectRestartMutation } from 'data/projects/project-restart-mutation' import { useProjectRestartServicesMutation } from 'data/projects/project-restart-services-mutation' import { setProjectPostgrestStatus } from 'data/projects/projects-query' diff --git a/apps/studio/components/interfaces/Settings/Infrastructure/InfrastructureConfiguration/DropAllReplicasConfirmationModal.tsx b/apps/studio/components/interfaces/Settings/Infrastructure/InfrastructureConfiguration/DropAllReplicasConfirmationModal.tsx index df821f30967..76e71c4117d 100644 --- a/apps/studio/components/interfaces/Settings/Infrastructure/InfrastructureConfiguration/DropAllReplicasConfirmationModal.tsx +++ b/apps/studio/components/interfaces/Settings/Infrastructure/InfrastructureConfiguration/DropAllReplicasConfirmationModal.tsx @@ -8,7 +8,7 @@ import { Modal, } from 'ui' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useReadReplicaRemoveMutation } from 'data/read-replicas/replica-remove-mutation' import { Database, useReadReplicasQuery } from 'data/read-replicas/replicas-query' import { useQueryClient } from '@tanstack/react-query' diff --git a/apps/studio/components/interfaces/Settings/Infrastructure/InfrastructureConfiguration/DropReplicaConfirmationModal.tsx b/apps/studio/components/interfaces/Settings/Infrastructure/InfrastructureConfiguration/DropReplicaConfirmationModal.tsx index 319b7f661c8..0ee6a859a46 100644 --- a/apps/studio/components/interfaces/Settings/Infrastructure/InfrastructureConfiguration/DropReplicaConfirmationModal.tsx +++ b/apps/studio/components/interfaces/Settings/Infrastructure/InfrastructureConfiguration/DropReplicaConfirmationModal.tsx @@ -8,7 +8,7 @@ import { Modal, } from 'ui' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useReadReplicaRemoveMutation } from 'data/read-replicas/replica-remove-mutation' import { Database } from 'data/read-replicas/replicas-query' import { formatDatabaseID } from 'data/read-replicas/replicas.utils' diff --git a/apps/studio/components/interfaces/Settings/Logs/Logs.SavedQueriesItem.tsx b/apps/studio/components/interfaces/Settings/Logs/Logs.SavedQueriesItem.tsx index c369d26505f..0b4fa8195c0 100644 --- a/apps/studio/components/interfaces/Settings/Logs/Logs.SavedQueriesItem.tsx +++ b/apps/studio/components/interfaces/Settings/Logs/Logs.SavedQueriesItem.tsx @@ -3,7 +3,7 @@ import { useState } from 'react' import toast from 'react-hot-toast' import Table from 'components/to-be-cleaned/Table' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useContentDeleteMutation } from 'data/content/content-delete-mutation' import { useContentUpsertMutation } from 'data/content/content-upsert-mutation' import { diff --git a/apps/studio/components/interfaces/TableGridEditor/DeleteConfirmationDialogs.tsx b/apps/studio/components/interfaces/TableGridEditor/DeleteConfirmationDialogs.tsx index 62b57b56565..862349967e4 100644 --- a/apps/studio/components/interfaces/TableGridEditor/DeleteConfirmationDialogs.tsx +++ b/apps/studio/components/interfaces/TableGridEditor/DeleteConfirmationDialogs.tsx @@ -5,7 +5,7 @@ import { Alert, Button, Checkbox, IconExternalLink, Modal } from 'ui' import { SupaRow } from 'components/grid' import { formatFilterURLParams } from 'components/grid/SupabaseGrid.utils' import { useProjectContext } from 'components/layouts/ProjectLayout/ProjectContext' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useDatabaseColumnDeleteMutation } from 'data/database-columns/database-column-delete-mutation' import { useTableRowDeleteAllMutation } from 'data/table-rows/table-row-delete-all-mutation' import { useTableRowDeleteMutation } from 'data/table-rows/table-row-delete-mutation' diff --git a/apps/studio/components/interfaces/TableGridEditor/GridHeaderActions.tsx b/apps/studio/components/interfaces/TableGridEditor/GridHeaderActions.tsx index 21bdb447fc8..30e35398fbc 100644 --- a/apps/studio/components/interfaces/TableGridEditor/GridHeaderActions.tsx +++ b/apps/studio/components/interfaces/TableGridEditor/GridHeaderActions.tsx @@ -18,8 +18,8 @@ import { import { useProjectContext } from 'components/layouts/ProjectLayout/ProjectContext' import APIDocsButton from 'components/ui/APIDocsButton' -import ConfirmationModal from 'components/ui/ConfirmationModal' -import ConfirmModal from 'components/ui/Dialogs/ConfirmDialog' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' +import ConfirmModal from 'ui-patterns/Dialogs/ConfirmDialog' import { useDatabasePoliciesQuery } from 'data/database-policies/database-policies-query' import { useDatabasePublicationsQuery } from 'data/database-publications/database-publications-query' import { useDatabasePublicationUpdateMutation } from 'data/database-publications/database-publications-update-mutation' diff --git a/apps/studio/components/interfaces/TableGridEditor/SidePanelEditor/SidePanelEditor.tsx b/apps/studio/components/interfaces/TableGridEditor/SidePanelEditor/SidePanelEditor.tsx index b0f85d5ac50..9e8593877c6 100644 --- a/apps/studio/components/interfaces/TableGridEditor/SidePanelEditor/SidePanelEditor.tsx +++ b/apps/studio/components/interfaces/TableGridEditor/SidePanelEditor/SidePanelEditor.tsx @@ -6,7 +6,7 @@ import { toast } from 'react-hot-toast' import { Modal } from 'ui' import { useProjectContext } from 'components/layouts/ProjectLayout/ProjectContext' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useDatabasePublicationCreateMutation } from 'data/database-publications/database-publications-create-mutation' import { useDatabasePublicationsQuery } from 'data/database-publications/database-publications-query' import { useDatabasePublicationUpdateMutation } from 'data/database-publications/database-publications-update-mutation' diff --git a/apps/studio/components/interfaces/TableGridEditor/SidePanelEditor/TableEditor/TableEditor.tsx b/apps/studio/components/interfaces/TableGridEditor/SidePanelEditor/TableEditor/TableEditor.tsx index 6298a728cd6..c380a34b371 100644 --- a/apps/studio/components/interfaces/TableGridEditor/SidePanelEditor/TableEditor/TableEditor.tsx +++ b/apps/studio/components/interfaces/TableGridEditor/SidePanelEditor/TableEditor/TableEditor.tsx @@ -5,7 +5,7 @@ import { useEffect, useState } from 'react' import { Alert, Badge, Button, Checkbox, IconBookOpen, Input, Modal, SidePanel } from 'ui' import { useProjectContext } from 'components/layouts/ProjectLayout/ProjectContext' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useDatabasePublicationsQuery } from 'data/database-publications/database-publications-query' import { CONSTRAINT_TYPE, diff --git a/apps/studio/components/layouts/ProjectLayout/ProjectPausedState.tsx b/apps/studio/components/layouts/ProjectLayout/ProjectPausedState.tsx index 98d114a2c1d..fd30a1e30d7 100644 --- a/apps/studio/components/layouts/ProjectLayout/ProjectPausedState.tsx +++ b/apps/studio/components/layouts/ProjectLayout/ProjectPausedState.tsx @@ -6,7 +6,7 @@ import Link from 'next/link' import { useState } from 'react' import { Button, IconPauseCircle, Modal } from 'ui' -import ConfirmModal from 'components/ui/Dialogs/ConfirmDialog' +import ConfirmModal from 'ui-patterns/Dialogs/ConfirmDialog' import { useFreeProjectLimitCheckQuery } from 'data/organizations/free-project-limit-check-query' import { useProjectRestoreMutation } from 'data/projects/project-restore-mutation' import { setProjectStatus } from 'data/projects/projects-query' diff --git a/apps/studio/components/layouts/ReportsLayout/ReportsMenu.tsx b/apps/studio/components/layouts/ReportsLayout/ReportsMenu.tsx index 07201122f3e..d6feb8701a5 100644 --- a/apps/studio/components/layouts/ReportsLayout/ReportsMenu.tsx +++ b/apps/studio/components/layouts/ReportsLayout/ReportsMenu.tsx @@ -1,6 +1,6 @@ import { CreateReportModal } from 'components/interfaces/Reports/Reports.CreateReportModal' import { UpdateCustomReportModal } from 'components/interfaces/Reports/Reports.UpdateModal' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import ShimmeringLoader from 'components/ui/ShimmeringLoader' import { useContentDeleteMutation } from 'data/content/content-delete-mutation' import { useContentInsertMutation } from 'data/content/content-insert-mutation' diff --git a/apps/studio/components/layouts/SQLEditorLayout/QueryItem.tsx b/apps/studio/components/layouts/SQLEditorLayout/QueryItem.tsx index 736877f4b19..b4d61ac0494 100644 --- a/apps/studio/components/layouts/SQLEditorLayout/QueryItem.tsx +++ b/apps/studio/components/layouts/SQLEditorLayout/QueryItem.tsx @@ -24,7 +24,7 @@ import { import DownloadSnippetModal from 'components/interfaces/SQLEditor/DownloadSnippetModal' import RenameQueryModal from 'components/interfaces/SQLEditor/RenameQueryModal' import SimpleCodeBlock from 'components/to-be-cleaned/SimpleCodeBlock' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import CopyButton from 'components/ui/CopyButton' import { useContentDeleteMutation } from 'data/content/content-delete-mutation' import { SqlSnippet } from 'data/content/sql-snippets-query' diff --git a/apps/studio/components/layouts/SQLEditorLayout/SQLEditorMenu.tsx b/apps/studio/components/layouts/SQLEditorLayout/SQLEditorMenu.tsx index d8575006979..e3822aaa822 100644 --- a/apps/studio/components/layouts/SQLEditorLayout/SQLEditorMenu.tsx +++ b/apps/studio/components/layouts/SQLEditorLayout/SQLEditorMenu.tsx @@ -24,7 +24,7 @@ import { import { untitledSnippetTitle } from 'components/interfaces/SQLEditor/SQLEditor.constants' import { createSqlSnippetSkeleton } from 'components/interfaces/SQLEditor/SQLEditor.utils' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { WarningIcon } from 'components/ui/Icons' import ProductMenuItem from 'components/ui/ProductMenu/ProductMenuItem' import ShimmeringLoader from 'components/ui/ShimmeringLoader' diff --git a/apps/studio/components/to-be-cleaned/Storage/EmptyBucketModal.tsx b/apps/studio/components/to-be-cleaned/Storage/EmptyBucketModal.tsx index 4a4544baf73..3bf0fd86d25 100644 --- a/apps/studio/components/to-be-cleaned/Storage/EmptyBucketModal.tsx +++ b/apps/studio/components/to-be-cleaned/Storage/EmptyBucketModal.tsx @@ -1,7 +1,7 @@ import { useParams } from 'common' import toast from 'react-hot-toast' -import ConfirmationModal from 'components/ui/ConfirmationModal' +import ConfirmationModal from 'ui-patterns/Dialogs/ConfirmationModal' import { useBucketEmptyMutation } from 'data/storage/bucket-empty-mutation' import { Bucket } from 'data/storage/buckets-query' import { useStorageStore } from 'localStores/storageExplorer/StorageExplorerStore' diff --git a/apps/studio/components/to-be-cleaned/Storage/StoragePolicies/StoragePolicies.tsx b/apps/studio/components/to-be-cleaned/Storage/StoragePolicies/StoragePolicies.tsx index 050fecf5169..faafc875586 100644 --- a/apps/studio/components/to-be-cleaned/Storage/StoragePolicies/StoragePolicies.tsx +++ b/apps/studio/components/to-be-cleaned/Storage/StoragePolicies/StoragePolicies.tsx @@ -6,7 +6,7 @@ import { IconLoader } from 'ui' import { PolicyEditorModal } from 'components/interfaces/Auth/Policies' import { useProjectContext } from 'components/layouts/ProjectLayout/ProjectContext' -import ConfirmModal from 'components/ui/Dialogs/ConfirmDialog' +import ConfirmModal from 'ui-patterns/Dialogs/ConfirmDialog' import { useDatabasePoliciesQuery } from 'data/database-policies/database-policies-query' import { useDatabasePolicyCreateMutation } from 'data/database-policies/database-policy-create-mutation' import { useDatabasePolicyDeleteMutation } from 'data/database-policies/database-policy-delete-mutation' diff --git a/apps/studio/pages/project/[ref]/reports/query-performance.tsx b/apps/studio/pages/project/[ref]/reports/query-performance.tsx index a4be321eece..3c6a5f9921b 100644 --- a/apps/studio/pages/project/[ref]/reports/query-performance.tsx +++ b/apps/studio/pages/project/[ref]/reports/query-performance.tsx @@ -8,7 +8,7 @@ import { queriesFactory } from 'components/interfaces/Reports/Reports.utils' import { ReportsLayout } from 'components/layouts' import { useProjectContext } from 'components/layouts/ProjectLayout/ProjectContext' import Table from 'components/to-be-cleaned/Table' -import ConfirmModal from 'components/ui/Dialogs/ConfirmDialog' +import ConfirmModal from 'ui-patterns/Dialogs/ConfirmDialog' import ShimmeringLoader from 'components/ui/ShimmeringLoader' import { executeSql } from 'data/sql/execute-sql-query' import { useFlag } from 'hooks' diff --git a/apps/studio/components/ui/Dialogs/ConfirmDialog.tsx b/packages/ui-patterns/Dialogs/ConfirmDialog.tsx similarity index 100% rename from apps/studio/components/ui/Dialogs/ConfirmDialog.tsx rename to packages/ui-patterns/Dialogs/ConfirmDialog.tsx diff --git a/apps/studio/components/ui/ConfirmationModal.tsx b/packages/ui-patterns/Dialogs/ConfirmationModal.tsx similarity index 100% rename from apps/studio/components/ui/ConfirmationModal.tsx rename to packages/ui-patterns/Dialogs/ConfirmationModal.tsx diff --git a/packages/ui-patterns/index.tsx b/packages/ui-patterns/index.tsx index 7a09c5a629d..ebe615b423f 100644 --- a/packages/ui-patterns/index.tsx +++ b/packages/ui-patterns/index.tsx @@ -12,3 +12,5 @@ export * from './SchemaTableNode' export * from './ThemeImage' export * from './ThemeToggle' export * from './TweetCard' +export * from './Dialogs/ConfirmDialog' +export * from './Dialogs/ConfirmationModal'