diff --git a/registration/src/lib/components/user/MobileSuccessInfo.svelte b/registration/src/lib/components/user/MobileSuccessInfo.svelte
index 52317bc..81d0c0a 100644
--- a/registration/src/lib/components/user/MobileSuccessInfo.svelte
+++ b/registration/src/lib/components/user/MobileSuccessInfo.svelte
@@ -5,6 +5,7 @@
import CopyIcon from '../icons/CopyIcon.svelte';
import { copyToClipboard } from '$utils/clipboard';
import Toast from '../display/Toast.svelte';
+ import DeleteAccountButton from '../buttons/DeleteAccountButton.svelte';
export let firstName: string;
export let lastName: string;
@@ -76,6 +77,11 @@
>
{/if}
+
+
+
-{ $t('matrix-id-copied') }
+{$t('matrix-id-copied')}
diff --git a/registration/src/lib/i18n/ar.json b/registration/src/lib/i18n/ar.json
index 57b7660..f8d9d40 100644
--- a/registration/src/lib/i18n/ar.json
+++ b/registration/src/lib/i18n/ar.json
@@ -1,83 +1,84 @@
{
- "welcome": "معرف توايك هو مدخلك الوحيد إلى جميع خدمات الدردشة والبريد و الملفات",
- "Sign up": "التسجيل",
- "Sign in": "تسجيل الدخول",
- "First Name": "الاسم",
- "Last Name": "اسم العائلة",
- "Username": "اسم المستخدم",
- "Password": "كلمة المرور",
- "Confirm password": "تأكيد كلمة المرور",
- "Phone number": "رقم الهاتف",
- "uela": "أوافق على اتفاقية المستخدم و استخدام البيانات الشخصية الشروط بموجب الشروط المنصوص عليها في اتفاقية سياسة الخصوصية .",
- "Cellphone / Username / Email": "رقم الهاتف / اسم المستخدم / البريد الإلكتروني",
- "logged_hero": "معرف تويك هو إدخالك الوحيد الوصول إلى جميع خدماتنا الدردشة والبريد الملفات",
- "Congratulations": "تهانينا",
- "You are all set up": "لقد تم إعداد كل شيء.",
- "logged_twakeid_choose": "قم بتسجيل الدخول إلى الدردشة و الملفات و البريد باستخدام معرف تويك الخاص بك",
- "logged_twakeid_choose_mobile": "قم بتسجيل الدخول إلى الملفات و البريد باستخدام بيانات اعتماد تويك",
- "twake_chat_description": "الاتصالات المؤسسية اللامركزية تبدأ من هنا",
- "tdrive_description": "شارك الملفات وتعاون عليها بشكل آمن، في أي مكان",
- "tmail_description": "جرب التواصل عبر البريد الإلكتروني كما لم يحدث من قبل",
- "Logout": "تسجيل خروج",
- "Matrix ID/Email": "معرف ماتريكس/البريد الإلكتروني",
- "username_info_tooltip": "سيتم استخدام اسم المستخدم الذي تدخله لتشكيل معرف ماتريكس الخاص بك بالإضافة إلى عنوان بريد تويك الخاص بك.",
- "Ok-got-it": "حسنا ، فهمت",
- "username_taken": "عذرا، اسم المستخدم مستعمل",
- "weak_password": "كلمة مرور ضعيفة. يجب أن يكون طولها 8 أحرف على الأقل وتحتوي على حرف كبير وحرف صغير ورقم",
- "password_mismatch": "كلمات المرور غير متطابقة",
- "Number is already registered": "الرقم مسجل سابقا",
- "instead": "بدلا",
- "6-digit": "أدخل الرمز المكون من 6 أرقام الذي أرسلناه إلى",
- "Confirm": "أكد",
- "Start your journey": "ابدأ رحلتك",
- "Your phone number successfully confirmed": "تم تأكيد رقم هاتفك بنجاح.",
- "Error": "خطأ",
- "Invalid credentials": "بيانات الاعتماد غير صالحة",
- "invalid Username": "اسم المستخدم غير صالح",
- "accept terms and conditions": "قبول الشروط والأحكام",
- "invalid phone number": "الرقم الذي أدخلته غير صالح. حاول ثانية.",
- "login": "تسجيل الدخول",
- "hide or show": "إخفاء أو إظهار",
- "sign-in-instead": "تسجيل الدخول بدلا من ذلك",
- "this-number-is-already-registered-sign-in-instead": "هذا الرقم مسجل سابقا. سجل الدخول بدلا من ذلك.",
- "too-many-wrong-attempts-has-been-made-try-again-later": "لقد تم إجراء الكثير من المحاولات الخاطئة. حاول مرة أخرى لاحقا.",
- "matrix-id-copied": "تم نسخ معرف متريكس إلى الحافظة",
- "mobile-app": "تطبيق الجوال",
- "open-twake": "افتح تويك",
- "available-usernames": "أسماء المستخدمين المتاحة",
- "twake-phone-number": "رقم هاتف تويك",
- "twake-matrix-id": "معرف مصفوفة تويك",
- "sorry-something-went-wrong-please-try-again": "عذرًا، حدث خطأ ما، يرجى المحاولة مرة أخرى.",
- "entered-code-is-incorrect-try-again": "الرمز الذي تم إدخاله غير صحيح. حاول ثانية.",
- "twake-mail": "بريد تويك",
- "Choose-a-country": "اختر بلدا",
- "Search": "بحث",
- "Your-phone-number": "رقم الهاتف",
- "please-confirm": "يرجى تأكيد رمز البلد الخاص بك وإدخال رقم هاتفك.",
- "Next": "التالي",
- "Confirm-your-code": "قم بتأكيد الرمز الخاص بك",
- "Resend": "إعادة إرسال",
- "Resend-in": "إعادة الإرسال في",
- "continue-sign-up": "متابعة التسجيل",
- "Set-your-password": "عين كلمة المرور الخاصة بك",
- "Create-Twake-ID": "إنشاء معرف تويك",
- "end-to-end-encryption-collaborative-features-for-secure-and-efficient-teamwork": "تشفير شامل وميزات تعاونية للعمل الجماعي الآمن والفعال",
- "set-a-strong-password-with-letters-numbers-and-symbols": "قم بتعيين كلمة مرور قوية مكونة من أحرف وأرقام ورموز",
- "Faster-and-more-convenient": "أسرع وأكثر ملاءمة",
- "download-app": "قم بتنزيل تطبيق {name} الجديد",
- "Download": "تحميل",
- "failed-to-send-otp": "فشل إرسال كلمة المرور، يرجى المحاولة مرة أخرى لاحقًا",
- "otp-check-failed": "فشل التحقق من كلمة المرور، يرجى محاولة إرسال رمز جديد",
- "recover-password": "إستعادة كلمة المرور",
- "recovery-phone-prompt": "الرجاء إدخال رقم الهاتف المرتبط\n\nمع حسابك. \nسنرسل لك رمز التحقق لإعادة تعيين كلمة المرور الخاصة بك",
- "phone-not-found": "رقم الهاتف هذا غير مرتبط بأي حساب",
- "no-code-received": "لم تحصل على الرمز؟",
- "set-new-password": "قم بتعيين كلمة المرور الجديدة الخاصة بك",
- "new-password-policy": "كلمات المرور القوية تبقيك آمنًا! \nمزج الحروف الكبيرة والصغيرة والأرقام والرموز",
- "set-password": "ضبط كلمة السر",
- "go-sign-in": "اذهب لتسجيل الدخول",
- "password-updated": "تم الآن تحديث كلمة المرور الخاصة بك. \nيمكنك الآن تسجيل الدخول باستخدام كلمة المرور الجديدة الخاصة بك",
- "forgot-password": "هل نسيت كلمة المرور الخاصة بك؟",
- "not-found": "غير موجود",
- "404-error-message": "عذرا! لم نتمكن من العثور على ما تبحث عنه."
+ "welcome": "معرف توايك هو مدخلك الوحيد إلى جميع خدمات الدردشة والبريد و الملفات",
+ "Sign up": "التسجيل",
+ "Sign in": "تسجيل الدخول",
+ "First Name": "الاسم",
+ "Last Name": "اسم العائلة",
+ "Username": "اسم المستخدم",
+ "Password": "كلمة المرور",
+ "Confirm password": "تأكيد كلمة المرور",
+ "Phone number": "رقم الهاتف",
+ "uela": "أوافق على اتفاقية المستخدم و استخدام البيانات الشخصية الشروط بموجب الشروط المنصوص عليها في اتفاقية سياسة الخصوصية .",
+ "Cellphone / Username / Email": "رقم الهاتف / اسم المستخدم / البريد الإلكتروني",
+ "logged_hero": "معرف تويك هو إدخالك الوحيد الوصول إلى جميع خدماتنا الدردشة والبريد الملفات",
+ "Congratulations": "تهانينا",
+ "You are all set up": "لقد تم إعداد كل شيء.",
+ "logged_twakeid_choose": "قم بتسجيل الدخول إلى الدردشة و الملفات و البريد باستخدام معرف تويك الخاص بك",
+ "logged_twakeid_choose_mobile": "قم بتسجيل الدخول إلى الملفات و البريد باستخدام بيانات اعتماد تويك",
+ "twake_chat_description": "الاتصالات المؤسسية اللامركزية تبدأ من هنا",
+ "tdrive_description": "شارك الملفات وتعاون عليها بشكل آمن، في أي مكان",
+ "tmail_description": "جرب التواصل عبر البريد الإلكتروني كما لم يحدث من قبل",
+ "Logout": "تسجيل خروج",
+ "Matrix ID/Email": "معرف ماتريكس/البريد الإلكتروني",
+ "username_info_tooltip": "سيتم استخدام اسم المستخدم الذي تدخله لتشكيل معرف ماتريكس الخاص بك بالإضافة إلى عنوان بريد تويك الخاص بك.",
+ "Ok-got-it": "حسنا ، فهمت",
+ "username_taken": "عذرا، اسم المستخدم مستعمل",
+ "weak_password": "كلمة مرور ضعيفة. يجب أن يكون طولها 8 أحرف على الأقل وتحتوي على حرف كبير وحرف صغير ورقم",
+ "password_mismatch": "كلمات المرور غير متطابقة",
+ "Number is already registered": "الرقم مسجل سابقا",
+ "instead": "بدلا",
+ "6-digit": "أدخل الرمز المكون من 6 أرقام الذي أرسلناه إلى",
+ "Confirm": "أكد",
+ "Start your journey": "ابدأ رحلتك",
+ "Your phone number successfully confirmed": "تم تأكيد رقم هاتفك بنجاح.",
+ "Error": "خطأ",
+ "Invalid credentials": "بيانات الاعتماد غير صالحة",
+ "invalid Username": "اسم المستخدم غير صالح",
+ "accept terms and conditions": "قبول الشروط والأحكام",
+ "invalid phone number": "الرقم الذي أدخلته غير صالح. حاول ثانية.",
+ "login": "تسجيل الدخول",
+ "hide or show": "إخفاء أو إظهار",
+ "sign-in-instead": "تسجيل الدخول بدلا من ذلك",
+ "this-number-is-already-registered-sign-in-instead": "هذا الرقم مسجل سابقا. سجل الدخول بدلا من ذلك.",
+ "too-many-wrong-attempts-has-been-made-try-again-later": "لقد تم إجراء الكثير من المحاولات الخاطئة. حاول مرة أخرى لاحقا.",
+ "matrix-id-copied": "تم نسخ معرف متريكس إلى الحافظة",
+ "mobile-app": "تطبيق الجوال",
+ "open-twake": "افتح تويك",
+ "available-usernames": "أسماء المستخدمين المتاحة",
+ "twake-phone-number": "رقم هاتف تويك",
+ "twake-matrix-id": "معرف مصفوفة تويك",
+ "sorry-something-went-wrong-please-try-again": "عذرًا، حدث خطأ ما، يرجى المحاولة مرة أخرى.",
+ "entered-code-is-incorrect-try-again": "الرمز الذي تم إدخاله غير صحيح. حاول ثانية.",
+ "twake-mail": "بريد تويك",
+ "Choose-a-country": "اختر بلدا",
+ "Search": "بحث",
+ "Your-phone-number": "رقم الهاتف",
+ "please-confirm": "يرجى تأكيد رمز البلد الخاص بك وإدخال رقم هاتفك.",
+ "Next": "التالي",
+ "Confirm-your-code": "قم بتأكيد الرمز الخاص بك",
+ "Resend": "إعادة إرسال",
+ "Resend-in": "إعادة الإرسال في",
+ "continue-sign-up": "متابعة التسجيل",
+ "Set-your-password": "عين كلمة المرور الخاصة بك",
+ "Create-Twake-ID": "إنشاء معرف تويك",
+ "end-to-end-encryption-collaborative-features-for-secure-and-efficient-teamwork": "تشفير شامل وميزات تعاونية للعمل الجماعي الآمن والفعال",
+ "set-a-strong-password-with-letters-numbers-and-symbols": "قم بتعيين كلمة مرور قوية مكونة من أحرف وأرقام ورموز",
+ "Faster-and-more-convenient": "أسرع وأكثر ملاءمة",
+ "download-app": "قم بتنزيل تطبيق {name} الجديد",
+ "Download": "تحميل",
+ "failed-to-send-otp": "فشل إرسال كلمة المرور، يرجى المحاولة مرة أخرى لاحقًا",
+ "otp-check-failed": "فشل التحقق من كلمة المرور، يرجى محاولة إرسال رمز جديد",
+ "recover-password": "إستعادة كلمة المرور",
+ "recovery-phone-prompt": "الرجاء إدخال رقم الهاتف المرتبط\n\nمع حسابك. \nسنرسل لك رمز التحقق لإعادة تعيين كلمة المرور الخاصة بك",
+ "phone-not-found": "رقم الهاتف هذا غير مرتبط بأي حساب",
+ "no-code-received": "لم تحصل على الرمز؟",
+ "set-new-password": "قم بتعيين كلمة المرور الجديدة الخاصة بك",
+ "new-password-policy": "كلمات المرور القوية تبقيك آمنًا! \nمزج الحروف الكبيرة والصغيرة والأرقام والرموز",
+ "set-password": "ضبط كلمة السر",
+ "go-sign-in": "اذهب لتسجيل الدخول",
+ "password-updated": "تم الآن تحديث كلمة المرور الخاصة بك. \nيمكنك الآن تسجيل الدخول باستخدام كلمة المرور الجديدة الخاصة بك",
+ "forgot-password": "هل نسيت كلمة المرور الخاصة بك؟",
+ "not-found": "غير موجود",
+ "404-error-message": "عذرا! لم نتمكن من العثور على ما تبحث عنه.",
+ "delete-account": "حذف حسابك"
}
diff --git a/registration/src/lib/i18n/en.json b/registration/src/lib/i18n/en.json
index 2c079c4..bdafd18 100644
--- a/registration/src/lib/i18n/en.json
+++ b/registration/src/lib/i18n/en.json
@@ -79,5 +79,6 @@
"forgot-password": "Forgot your pasword?",
"not-found": "Not found",
"404-error-message": "Oops! We couldn't find what you're looking for.",
- "matrix-id-copied": "Matrix Id copied to clipboard"
+ "matrix-id-copied": "Matrix Id copied to clipboard",
+ "delete-account": "Delete account"
}
diff --git a/registration/src/lib/i18n/fr.json b/registration/src/lib/i18n/fr.json
index 0cd34a1..8cbfd8e 100644
--- a/registration/src/lib/i18n/fr.json
+++ b/registration/src/lib/i18n/fr.json
@@ -79,5 +79,6 @@
"forgot-password": "Vous avez oublié votre mot de passe ?",
"not-found": "Pas trouvé",
"404-error-message": "Oops! Nous n'avons pas trouvé ce que vous cherchez.",
- "matrix-id-copied": "Identifiant Matrix copié dans le presse-papiers"
+ "matrix-id-copied": "Identifiant Matrix copié dans le presse-papiers",
+ "delete-account": "Supprimer votre compte"
}
diff --git a/registration/src/lib/i18n/ru.json b/registration/src/lib/i18n/ru.json
index 78d42ec..cea8354 100644
--- a/registration/src/lib/i18n/ru.json
+++ b/registration/src/lib/i18n/ru.json
@@ -79,5 +79,6 @@
"forgot-password": "Забыли свое пасеновое слово?",
"not-found": "Не найдено",
"404-error-message": "Упс! Мы не смогли найти то, что вы ищете.",
- "matrix-id-copied": "Идентификатор Matrix скопирован в буфер обмена."
+ "matrix-id-copied": "Идентификатор Matrix скопирован в буфер обмена.",
+ "delete-account": "Удалить свой аккаунт"
}
diff --git a/registration/src/lib/i18n/vi.json b/registration/src/lib/i18n/vi.json
index f5eaa67..82291f4 100644
--- a/registration/src/lib/i18n/vi.json
+++ b/registration/src/lib/i18n/vi.json
@@ -79,5 +79,6 @@
"forgot-password": "Bạn quên mật khẩu?",
"not-found": "Không tìm thấy",
"404-error-message": "Ối! Chúng tôi không thể tìm thấy những gì bạn đang tìm kiếm.",
- "matrix-id-copied": "Đã sao chép Id Matrix vào bảng nhớ tạm"
+ "matrix-id-copied": "Đã sao chép Id Matrix vào bảng nhớ tạm",
+ "delete-account": "Xóa tài khoản của bạn"
}
diff --git a/registration/src/lib/utils/account.ts b/registration/src/lib/utils/account.ts
new file mode 100644
index 0000000..34260f7
--- /dev/null
+++ b/registration/src/lib/utils/account.ts
@@ -0,0 +1,24 @@
+import { browser } from '$app/environment';
+import { goto } from '$app/navigation';
+import { env } from '$env/dynamic/public';
+import logger from '$services/logger';
+
+/**
+ * Send a support mail to request account deletion.
+ *
+ * @param {string} user - User to request account deletion.
+ */
+export const sendAccountDeletionMail = (user: string) => {
+ if (!browser) return;
+
+ const email = env.PUBLIC_SUPPORT_EMAIL ?? 'software@linagora.com';
+
+ try {
+ const subject = `${user} account deletion request`;
+ const url = `mailto:${email}?subject=${subject}`;
+
+ goto(url);
+ } catch (error) {
+ logger.error('Failed to send account deletion email to support', { error });
+ }
+};