diff --git a/packages/console/src/App.tsx b/packages/console/src/App.tsx index c2d8fdd49f4..96ff5ed713f 100644 --- a/packages/console/src/App.tsx +++ b/packages/console/src/App.tsx @@ -31,6 +31,7 @@ import AppConfirmModalProvider from './contexts/AppConfirmModalProvider'; import AppDataProvider, { AppDataContext } from './contexts/AppDataProvider'; import { AppThemeProvider } from './contexts/AppThemeProvider'; import TenantsProvider, { TenantsContext } from './contexts/TenantsProvider'; +import Toast from './ds-components/Toast'; import useCurrentUser from './hooks/use-current-user'; import initI18n from './i18n/init'; @@ -86,6 +87,7 @@ function Providers() { UserScope.Identities, UserScope.CustomData, UserScope.Organizations, + UserScope.OrganizationRoles, PredefinedScope.All, ...conditionalArray( isCloud && [ @@ -111,6 +113,7 @@ function Providers() { > + {/** diff --git a/packages/console/src/containers/ConsoleRoutes/index.tsx b/packages/console/src/containers/ConsoleRoutes/index.tsx index 07ed84c5ca6..4e4e2369f20 100644 --- a/packages/console/src/containers/ConsoleRoutes/index.tsx +++ b/packages/console/src/containers/ConsoleRoutes/index.tsx @@ -9,7 +9,6 @@ import ConsoleContent from '@/containers/ConsoleContent'; import ProtectedRoutes from '@/containers/ProtectedRoutes'; import TenantAccess from '@/containers/TenantAccess'; import { GlobalRoute } from '@/contexts/TenantsProvider'; -import Toast from '@/ds-components/Toast'; import useSwrOptions from '@/hooks/use-swr-options'; import Callback from '@/pages/Callback'; import CheckoutSuccessCallback from '@/pages/CheckoutSuccessCallback'; @@ -23,7 +22,6 @@ function Layout() { return ( - diff --git a/packages/console/src/onboarding/index.tsx b/packages/console/src/onboarding/index.tsx index 8ecf318ef92..6794d0321d6 100644 --- a/packages/console/src/onboarding/index.tsx +++ b/packages/console/src/onboarding/index.tsx @@ -5,7 +5,6 @@ import { Navigate, type RouteObject, useMatch, useRoutes } from 'react-router-do import AppLoading from '@/components/AppLoading'; import AppBoundary from '@/containers/AppBoundary'; import { AppThemeContext } from '@/contexts/AppThemeProvider'; -import Toast from '@/ds-components/Toast'; import { usePlausiblePageview } from '@/hooks/use-plausible-pageview'; import Topbar from './components/Topbar'; @@ -74,7 +73,6 @@ export function OnboardingApp() { return (
-
{routes}
diff --git a/packages/console/src/pages/Profile/containers/DeleteAccountModal/components/DeletionConfirmationModal/index.tsx b/packages/console/src/pages/Profile/containers/DeleteAccountModal/components/DeletionConfirmationModal/index.tsx new file mode 100644 index 00000000000..db4c3492ec4 --- /dev/null +++ b/packages/console/src/pages/Profile/containers/DeleteAccountModal/components/DeletionConfirmationModal/index.tsx @@ -0,0 +1,127 @@ +import { type IdTokenClaims, useLogto } from '@logto/react'; +import { TenantRole, getTenantIdFromOrganizationId } from '@logto/schemas'; +import { useContext, useEffect, useState } from 'react'; +import { toast } from 'react-hot-toast'; +import { useTranslation } from 'react-i18next'; + +import AppLoading from '@/components/AppLoading'; +import { TenantsContext } from '@/contexts/TenantsProvider'; +import Button from '@/ds-components/Button'; +import ModalLayout from '@/ds-components/ModalLayout'; + +import * as styles from '../../index.module.scss'; +import FinalConfirmationModal from '../FinalConfirmationModal'; +import TenantsList from '../TenantsList'; + +type RoleMap = { [key in string]?: string[] }; + +/** + * Given a list of organization roles from the user's claims, returns a tenant ID - role names map. + * A user may have multiple roles in the same tenant. + */ +const getRoleMap = (organizationRoles: string[]) => + organizationRoles.reduce((accumulator, value) => { + const [organizationId, roleName] = value.split(':'); + + if (!organizationId || !roleName) { + return accumulator; + } + + const tenantId = getTenantIdFromOrganizationId(organizationId); + + if (!tenantId) { + return accumulator; + } + + return { + ...accumulator, + [tenantId]: [...(accumulator[tenantId] ?? []), roleName], + }; + }, {}); + +type Props = { + readonly onClose: () => void; +}; + +/** A display component for the account deletion confirmation. */ +export default function DeletionConfirmationModal({ onClose }: Props) { + const { t } = useTranslation(undefined, { keyPrefix: 'admin_console.profile.delete_account' }); + const [isFinalConfirmationOpen, setIsFinalConfirmationOpen] = useState(false); + const [claims, setClaims] = useState(); + const { getIdTokenClaims } = useLogto(); + const { tenants } = useContext(TenantsContext); + + useEffect(() => { + const fetchRoleMap = async () => { + setClaims(undefined); + const claims = await getIdTokenClaims(); + + if (!claims) { + toast.error(t('error_occurred')); + onClose(); + return; + } + + setClaims(claims); + }; + + void fetchRoleMap(); + }, [getIdTokenClaims, onClose, t]); + + const roleMap = claims && getRoleMap(claims.organization_roles ?? []); + const tenantsToDelete = tenants.filter(({ id }) => roleMap?.[id]?.includes(TenantRole.Admin)); + const tenantsToQuit = tenants.filter(({ id }) => + tenantsToDelete.every(({ id: tenantId }) => tenantId !== id) + ); + + if (!claims) { + return ; + } + + return ( + +
- { - setShowDeleteAccountModal(false); - }} - /> + )} diff --git a/packages/phrases/src/locales/de/translation/admin-console/profile.ts b/packages/phrases/src/locales/de/translation/admin-console/profile.ts index a4d0fa52ae9..eb56e2fda20 100644 --- a/packages/phrases/src/locales/de/translation/admin-console/profile.ts +++ b/packages/phrases/src/locales/de/translation/admin-console/profile.ts @@ -52,12 +52,6 @@ const profile = { description: 'Wenn Sie Ihr Konto löschen, werden alle Ihre persönlichen Informationen, Benutzerdaten und Konfigurationen entfernt. Diese Aktion kann nicht rückgängig gemacht werden.', button: 'Konto löschen', - dialog_paragraph_1: - 'Wir bedauern, dass Sie Ihr Konto löschen möchten. Das Löschen Ihres Kontos entfernt dauerhaft alle Daten, einschließlich Benutzerinformationen, Protokolle und Einstellungen, und diese Aktion kann nicht rückgängig gemacht werden. Stellen Sie also sicher, dass Sie wichtige Daten sichern, bevor Sie fortfahren.', - dialog_paragraph_2: - 'Um mit dem Konto-Löschvorgang fortzufahren, senden Sie bitte eine E-Mail an unser Support-Team unter mail mit dem Betreff "Anforderung zur Kontolöschung". Wir werden Ihnen helfen und sicherstellen, dass all Ihre Daten ordnungsgemäß aus unserem System gelöscht werden.', - dialog_paragraph_3: - 'Vielen Dank, dass Sie sich für Logto Cloud entschieden haben. Wenn Sie weitere Fragen oder Bedenken haben, zögern Sie bitte nicht, uns zu kontaktieren.', }, set: 'Festlegen', change: 'Ändern', diff --git a/packages/phrases/src/locales/en/translation/admin-console/profile.ts b/packages/phrases/src/locales/en/translation/admin-console/profile.ts index c36dfd7dd44..eadc31fd6c3 100644 --- a/packages/phrases/src/locales/en/translation/admin-console/profile.ts +++ b/packages/phrases/src/locales/en/translation/admin-console/profile.ts @@ -51,12 +51,41 @@ const profile = { description: 'Deleting your account will remove all of your personal information, user data, and configuration. This action cannot be undone.', button: 'Delete account', - dialog_paragraph_1: - "We're sorry to hear that you want to delete your account. Deleting your account will permanently remove all data, including user information, logs, and settings, and this action cannot be undone. So please make sure to backup any important data before proceeding.", - dialog_paragraph_2: - 'To proceed with the account deletion process, please email our support team at {{mail}} with the subject “Account Deletion Request”. We will assist you and ensure that all of your data is properly deleted from our system.', - dialog_paragraph_3: - 'Thank you for choosing Logto Cloud. If you have any further questions or concerns, please do not hesitate to reach out to us.', + p: { + has_issue: + "We're sorry to hear that you want to delete your account. Before you can delete your account, you need to resolve the following issues.", + after_resolved: + 'Once you have resolved the issues, you can delete your account. Please do not hesitate to contact us if you need any assistance.', + check_information: + "We're sorry to hear that you want to delete your account. Please check the following information carefully before you proceed.", + remove_all_data: + 'Deleting your account will permanently remove all data about you in Logto Cloud. So please make sure to backup any important data before proceeding.', + confirm_information: + 'Please confirm that the information above is what you expected. Once you delete your account, we will not be able to recover it.', + has_admin_role: + 'Since you have the admin role in the following tenant, it will be deleted along with your account:', + has_admin_role_other: + 'Since you have the admin role in the following tenants, they will be deleted along with your account:', + quit_tenant: 'You are about to quit the following tenant:', + quit_tenant_other: 'You are about to quit the following tenants:', + }, + issues: { + paid_plan: 'The following tenant has a paid plan, please cancel the subscription first:', + paid_plan_other: + 'The following tenants have paid plans, please cancel the subscription first:', + subscription_status: 'The following tenant has a subscription status issue:', + subscription_status_other: 'The following tenants have subscription status issues:', + open_invoice: 'The following tenant has an open invoice:', + open_invoice_other: 'The following tenants have open invoices:', + }, + error_occurred: 'An error occurred', + error_occurred_description: 'Sorry, something went wrong while deleting your account:', + request_id: 'Request ID: {{requestId}}', + try_again_later: + 'Please try again later. If the problem persists, please contact Logto team with the request ID.', + final_confirmation: 'Final confirmation', + about_to_start_deletion: + 'You are about to start the deletion process and this action cannot be undone.', }, set: 'Set', change: 'Change', diff --git a/packages/phrases/src/locales/es/translation/admin-console/profile.ts b/packages/phrases/src/locales/es/translation/admin-console/profile.ts index 88950bd52ca..d028cc572dc 100644 --- a/packages/phrases/src/locales/es/translation/admin-console/profile.ts +++ b/packages/phrases/src/locales/es/translation/admin-console/profile.ts @@ -53,12 +53,6 @@ const profile = { description: 'La eliminación de su cuenta eliminará toda su información personal, datos de usuario y configuración. Esta acción no se puede deshacer.', button: 'Eliminar cuenta', - dialog_paragraph_1: - 'Lamentamos mucho que quiera eliminar su cuenta. La eliminación de su cuenta eliminará permanentemente todos los datos, incluida la información del usuario, los registros y la configuración, y esta acción no se puede deshacer. Por lo tanto, asegúrese de realizar una copia de seguridad de cualquier dato importante antes de continuar.', - dialog_paragraph_2: - 'Para iniciar el proceso de eliminación de la cuenta, envíe un correo electrónico a nuestro equipo de soporte en {{mail}} con el asunto "Solicitud de eliminación de cuenta". Le ayudaremos y nos aseguraremos de que todos sus datos se eliminen correctamente de nuestro sistema.', - dialog_paragraph_3: - 'Gracias por elegir Logto Cloud. Si tiene más preguntas o inquietudes, no dude en comunicarse con nosotros.', }, set: 'Establecer', change: 'Cambiar', diff --git a/packages/phrases/src/locales/fr/translation/admin-console/profile.ts b/packages/phrases/src/locales/fr/translation/admin-console/profile.ts index ce07d0b847f..25306f9d7a0 100644 --- a/packages/phrases/src/locales/fr/translation/admin-console/profile.ts +++ b/packages/phrases/src/locales/fr/translation/admin-console/profile.ts @@ -52,12 +52,6 @@ const profile = { description: "La suppression de votre compte supprimera toutes vos informations personnelles, vos données d'utilisateur et votre configuration. Cette action ne peut pas être annulée.", button: 'Supprimer le compte', - dialog_paragraph_1: - "Nous sommes désolés d'entendre que vous souhaitez supprimer votre compte. La suppression de votre compte supprimera définitivement toutes les données, y compris les informations d'utilisateur, les journaux et les paramètres, et cette action ne peut pas être annulée. Veuillez donc vous assurer de sauvegarder toutes les données importantes avant de continuer.", - dialog_paragraph_2: - "Pour poursuivre le processus de suppression de compte, veuillez envoyer un e-mail à notre équipe de support à l'adresse mail avec l'objet « Demande de suppression de compte ». Nous vous aiderons et nous assurerons que toutes vos données sont correctement supprimées de notre système.", - dialog_paragraph_3: - "Merci d'avoir choisi Logto Cloud. Si vous avez des questions ou des préoccupations supplémentaires, n'hésitez pas à nous contacter.", }, set: 'Définir', change: 'Modifier', diff --git a/packages/phrases/src/locales/it/translation/admin-console/profile.ts b/packages/phrases/src/locales/it/translation/admin-console/profile.ts index c7cf8e79076..18e802c4607 100644 --- a/packages/phrases/src/locales/it/translation/admin-console/profile.ts +++ b/packages/phrases/src/locales/it/translation/admin-console/profile.ts @@ -51,12 +51,6 @@ const profile = { description: 'Eliminando il tuo account, verranno rimossi tutti i tuoi dati personali, le informazioni utente, la configurazione. Questa operazione non può essere annullata.', button: 'Elimina account', - dialog_paragraph_1: - "Ci dispiace sapere che desideri eliminare il tuo account. L'eliminazione dell'account rimuoverà permanentemente tutti i dati, inclusi le informazioni utente, i log e le impostazioni, e questa azione non può essere annullata. Quindi assicurati di eseguire il backup di eventuali dati importanti prima di procedere.", - dialog_paragraph_2: - "Per procedere con il processo di eliminazione dell'account, invia un'email al nostro team di supporto all'indirizzo {{mail}} con l'oggetto \"Richiesta di eliminazione account\". Ti assisteremo e ci assicureremo che tutti i tuoi dati siano correttamente eliminati dal nostro sistema.", - dialog_paragraph_3: - 'Grazie per aver scelto Logto Cloud. Se hai ulteriori domande o dubbi, non esitare a contattarci.', }, set: 'Imposta', change: 'Cambia', diff --git a/packages/phrases/src/locales/ja/translation/admin-console/profile.ts b/packages/phrases/src/locales/ja/translation/admin-console/profile.ts index 6d67e12c7ef..432612d076d 100644 --- a/packages/phrases/src/locales/ja/translation/admin-console/profile.ts +++ b/packages/phrases/src/locales/ja/translation/admin-console/profile.ts @@ -50,12 +50,6 @@ const profile = { description: 'アカウントの削除は、すべての個人情報、ユーザーデータ、および設定が削除されます。このアクションは元に戻せません。', button: 'アカウントを削除', - dialog_paragraph_1: - 'アカウントを削除したいというお知らせを受け取りましたこと、残念に思います。 アカウントを削除すると、ユーザー情報、ログ、設定を含むすべてのデータが永久に削除されます。そのため、手続きを進める前に、重要なデータをバックアップすることを必ずお願いします。', - dialog_paragraph_2: - 'アカウント削除プロセスを進めるには、「アカウント削除リクエスト」という件名で{{mail}}にメールを送信して、当社のサポートチームにお問い合わせください。私たちはあなたをサポートし、すべてのデータが正しくシステムから削除されるようにします。', - dialog_paragraph_3: - 'Logto Cloudをご利用いただきありがとうございます。ご質問やご不明な点がある場合は、お気軽にお問い合わせください。', }, set: '設定する', change: '変更する', diff --git a/packages/phrases/src/locales/ko/translation/admin-console/profile.ts b/packages/phrases/src/locales/ko/translation/admin-console/profile.ts index b92291174e2..8665b40d4ad 100644 --- a/packages/phrases/src/locales/ko/translation/admin-console/profile.ts +++ b/packages/phrases/src/locales/ko/translation/admin-console/profile.ts @@ -49,12 +49,6 @@ const profile = { description: '계정을 삭제하면 모든 개인 정보, 사용자 데이터 및 설정이 삭제돼요. 이 작업은 되돌릴 수 없어요.', button: '계정 삭제', - dialog_paragraph_1: - '계정을 삭제하시게 되어 유감입니다. 계정을 삭제하면 사용자 정보, 로그, 설정을 포함한 모든 데이터가 영구적으로 삭제되며, 이 작업은 되돌릴 수 없어요. 따라서 계속 진행하기 전에 중요한 데이터를 백업해 두세요.', - dialog_paragraph_2: - '계정 삭제 절차를 진행하려면 "Account Deletion Request"라는 제목으로 지원팀에 메일을 보내주세요. 당신의 모든 데이터가 시스템에서 올바르게 삭제될 수 있도록 도와드릴게요.', - dialog_paragraph_3: - 'Logto Cloud를 선택해 주셔서 감사합니다. 추가 질문이나 우려 사항이 있으시면 언제든지 문의해 주세요.', }, set: '설정', change: '변경', diff --git a/packages/phrases/src/locales/pl-pl/translation/admin-console/profile.ts b/packages/phrases/src/locales/pl-pl/translation/admin-console/profile.ts index c1049e0f99a..486ae297644 100644 --- a/packages/phrases/src/locales/pl-pl/translation/admin-console/profile.ts +++ b/packages/phrases/src/locales/pl-pl/translation/admin-console/profile.ts @@ -51,12 +51,6 @@ const profile = { description: 'Usunięcie twojego konta spowoduje usunięcie wszystkich twoich danych osobistych, danych użytkownika i konfiguracji. Ta operacja nie może być cofnięta.', button: 'Usuń konto', - dialog_paragraph_1: - 'Żałujemy, że chcesz usunąć swoje konto. Usunięcie twojego konta spowoduje trwałe usunięcie wszystkich danych, w tym informacji o użytkowniku, logów i ustawień, i ta operacja nie może być cofnięta. Przed dokonaniem tej operacji zalecamy wykonanie kopii zapasowych ważnych danych.', - dialog_paragraph_2: - 'Aby przejść do procesu usuwania konta, wyślij email do naszego zespołu wsparcia na adres {{mail}} z tematem "Żądanie usunięcia konta". Pomożemy Ci i zapewnimy, że wszystkie twoje dane zostaną poprawnie usunięte z naszego systemu.', - dialog_paragraph_3: - 'Dziękujemy za wybranie chmury Logto. Jeśli masz jakieś dodatkowe pytania lub wątpliwości, skontaktuj się z nami.', }, set: 'Ustaw', change: 'Zmień', diff --git a/packages/phrases/src/locales/pt-br/translation/admin-console/profile.ts b/packages/phrases/src/locales/pt-br/translation/admin-console/profile.ts index 3ae9d5f598b..8e8478f4064 100644 --- a/packages/phrases/src/locales/pt-br/translation/admin-console/profile.ts +++ b/packages/phrases/src/locales/pt-br/translation/admin-console/profile.ts @@ -51,12 +51,6 @@ const profile = { description: 'Excluir sua conta removerá todas as suas informações pessoais, dados do usuário e configurações. Essa ação não pode ser desfeita.', button: 'Excluir conta', - dialog_paragraph_1: - 'Lamentamos saber que você deseja excluir sua conta. A exclusão de sua conta removerá permanentemente todos os dados, incluindo informações do usuário, logs e configurações, e essa ação não pode ser desfeita. Portanto, certifique-se de fazer backup de qualquer dado importante antes de prosseguir.', - dialog_paragraph_2: - 'Para prosseguir com o processo de exclusão de conta, envie um e-mail para nossa equipe de suporte em mail com o assunto "Pedido de exclusão de conta". Nós o ajudaremos e garantiremos que todos os seus dados sejam excluídos corretamente de nosso sistema.', - dialog_paragraph_3: - 'Agradecemos por escolher o Logto Cloud. Se você tiver outras dúvidas ou preocupações, não hesite em nos contatar.', }, set: 'Configurar', change: 'Alterar', diff --git a/packages/phrases/src/locales/pt-pt/translation/admin-console/profile.ts b/packages/phrases/src/locales/pt-pt/translation/admin-console/profile.ts index 2ce9213f7d4..f44411bcd23 100644 --- a/packages/phrases/src/locales/pt-pt/translation/admin-console/profile.ts +++ b/packages/phrases/src/locales/pt-pt/translation/admin-console/profile.ts @@ -52,12 +52,6 @@ const profile = { description: 'Apagar a sua conta irá remover todas as suas informações pessoais, dados de usuário e configurações. Esta ação não pode ser desfeita.', button: 'Apagar conta', - dialog_paragraph_1: - 'Lamentamos saber que deseja apagar sua conta. A exclusão da sua conta irá remover permanentemente todos os dados, incluindo informações de usuário, logs e configurações, e esta ação não pode ser desfeita. Portanto, por favor, faça backup de qualquer dado importante antes de prosseguir.', - dialog_paragraph_2: - 'Para prosseguir com o processo de exclusão de conta, envie um e-mail para nossa equipe de suporte em mail com o assunto “Solicitação de exclusão de conta”. Vamos ajudá-lo e garantir que todos os seus dados sejam devidamente excluídos do nosso sistema.', - dialog_paragraph_3: - 'Obrigado por escolher o Logto Cloud. Se tiver alguma dúvida ou preocupação, não hesite em entrar em contato connosco.', }, set: 'Definir', change: 'Mudar', diff --git a/packages/phrases/src/locales/ru/translation/admin-console/profile.ts b/packages/phrases/src/locales/ru/translation/admin-console/profile.ts index 4e835f8411f..345eb9df14f 100644 --- a/packages/phrases/src/locales/ru/translation/admin-console/profile.ts +++ b/packages/phrases/src/locales/ru/translation/admin-console/profile.ts @@ -52,12 +52,6 @@ const profile = { description: 'Удаление вашего аккаунта приведет к удалению всей вашей личной информации, пользовательских данных и конфигураций. Это действие нельзя будет отменить.', button: 'Удалить аккаунт', - dialog_paragraph_1: - 'Мы сожалеем, что вы хотите удалить свой аккаунт. Удаление вашего аккаунта навсегда удалит всю информацию, включая данные пользователя, журналы и настройки, и это действие нельзя будет отменить. Пожалуйста, сделайте резервную копию важных данных перед продолжением.', - dialog_paragraph_2: - 'Чтобы продолжить процесс удаления аккаунта, отправьте электронное письмо в нашу службу поддержки на адрес {{mail}} с темой «Запрос на удаление аккаунта». Мы поможем и убедимся в правильном удалении всех ваших данных из нашей системы.', - dialog_paragraph_3: - 'Благодарим вас за выбор облачного сервиса Logto. Если у вас есть какие-либо дополнительные вопросы или проблемы, не стесняйтесь обращаться к нам.', }, set: 'Установить', change: 'Изменить', diff --git a/packages/phrases/src/locales/tr-tr/translation/admin-console/profile.ts b/packages/phrases/src/locales/tr-tr/translation/admin-console/profile.ts index 597898d2dea..2faf19b63ca 100644 --- a/packages/phrases/src/locales/tr-tr/translation/admin-console/profile.ts +++ b/packages/phrases/src/locales/tr-tr/translation/admin-console/profile.ts @@ -52,12 +52,6 @@ const profile = { description: 'Hesabınızın tüm kişisel bilgileri, kullanıcı verileri ve yapılandırması silinecektir. Bu işlem geri alınamaz.', button: 'Hesabı sil', - dialog_paragraph_1: - 'Hesabınızı silmek istediğinize üzgünüz. Hesabınız kalıcı olarak tüm verileri, kullanıcı bilgileri, kayıtlar ve ayarlar dahil olmak üzere silinecektir ve bu işlem geri alınamaz. Bu nedenle, devam etmeden önce önemli verilerinizi yedeklediğinizden emin olun.', - dialog_paragraph_2: - 'Hesap silme işlemine devam etmek için, lütfen destek ekibimize, mail adresine “Hesap Silme İsteği” konulu e-posta gönderin. Size yardımcı olacağız ve tüm verilerinizin sistemimizden uygun şekilde silineceğinden emin olacağız.', - dialog_paragraph_3: - 'Logto Cloud’u tercih ettiğiniz için teşekkür ederiz. Herhangi bir sorunuz veya endişeniz varsa, bizimle iletişime geçmekten çekinmeyin.', }, set: 'Ayarla', change: 'Değiştir', diff --git a/packages/phrases/src/locales/zh-cn/translation/admin-console/profile.ts b/packages/phrases/src/locales/zh-cn/translation/admin-console/profile.ts index 87beb88941a..1c7e20b1bb4 100644 --- a/packages/phrases/src/locales/zh-cn/translation/admin-console/profile.ts +++ b/packages/phrases/src/locales/zh-cn/translation/admin-console/profile.ts @@ -47,12 +47,6 @@ const profile = { label: '删除账户', description: '删除账户将会删除所有个人信息、用户数据和配置。此操作无法撤销。', button: '删除账户', - dialog_paragraph_1: - '很抱歉听到你想要删除你的帐户。删除你的帐户将永久删除所有数据,包括用户信息、日志和设置,此操作无法撤销。因此,请确保在继续之前备份任何重要数据。', - dialog_paragraph_2: - '要继续删除帐户的删除过程,请通过 mail 向我们的支持团队发送主题为“帐户删除请求”的邮件。我们将协助你并确保所有数据都已从我们的系统中正确删除。', - dialog_paragraph_3: - '感谢你选择 Logto Cloud。如果你有任何进一步的问题或疑虑,请随时与我们联系。', }, set: '设置', change: '修改', diff --git a/packages/phrases/src/locales/zh-hk/translation/admin-console/profile.ts b/packages/phrases/src/locales/zh-hk/translation/admin-console/profile.ts index d85c48fdc98..764e6dac6b4 100644 --- a/packages/phrases/src/locales/zh-hk/translation/admin-console/profile.ts +++ b/packages/phrases/src/locales/zh-hk/translation/admin-console/profile.ts @@ -47,12 +47,6 @@ const profile = { label: '刪除賬戶', description: '刪除賬戶將會刪除所有個人信息、用戶數據和配置。此操作無法撤銷。', button: '刪除賬戶', - dialog_paragraph_1: - '很抱歉聽到你想要刪除你的帳戶。刪除你的帳戶將永久刪除所有數據,包括用戶信息、日誌和設置,此操作無法撤銷。因此,請確保在繼續之前備份任何重要數據。', - dialog_paragraph_2: - '要繼續刪除帳戶的刪除過程,請通過 mail 向我們的支持團隊發送主題為“帳戶刪除請求”的郵件。我們將協助你並確保所有數據都已從我們的系統中正確刪除。', - dialog_paragraph_3: - '感謝你選擇 Logto Cloud。如果你有任何進一步的問題或疑慮,請隨時與我們聯繫。', }, set: '設置', change: '修改', diff --git a/packages/phrases/src/locales/zh-tw/translation/admin-console/profile.ts b/packages/phrases/src/locales/zh-tw/translation/admin-console/profile.ts index be95d841c29..a2f99b4820f 100644 --- a/packages/phrases/src/locales/zh-tw/translation/admin-console/profile.ts +++ b/packages/phrases/src/locales/zh-tw/translation/admin-console/profile.ts @@ -47,12 +47,6 @@ const profile = { label: '刪除賬戶', description: '刪除賬戶將會刪除所有個人信息、用戶數據和配置。此操作無法撤銷。', button: '刪除賬戶', - dialog_paragraph_1: - '很抱歉聽到你想要刪除你的帳户。刪除你的帳户將永久刪除所有數據,包括用戶信息、日誌和設置,此操作無法撤銷。因此,請確保在繼續之前備份任何重要數據。', - dialog_paragraph_2: - '要繼續刪除帳戶的刪除過程,請通過 電子郵件 向我們的支持團隊發送主題為“帳戶刪除請求”的郵件。我們將協助你並確保所有數據都已從我們的系統中正確刪除。', - dialog_paragraph_3: - '感謝你選擇 Logto Cloud。如果你有任何進一步的問題或疑慮,請隨時與我們聯繫。', }, set: '設置', change: '修改',