chore: change styles and add Api for user profile

This commit is contained in:
Koosha Lahouti
2025-08-12 20:20:28 +03:30
parent ed57858c2e
commit 782ef2a2de
35 changed files with 2785 additions and 1843 deletions

View File

@@ -1,9 +0,0 @@
{
"active": {
"activeDevices": "Active devices",
"activeDevicesCaption": "Watch and manage all your active devices",
"deletDevicesButton": "Remove rest of the devices",
"deleteDevice": "Remove device",
"currentDevice": "Current device"
}
}

View File

@@ -1,46 +0,0 @@
{
"settingForm": {
"titlePersonalInfo": "My Personal Information",
"descriptionPersonalInfo": "This information is only for your identification and remains with Harmony.",
"titlePhoneNumber": "My phone number",
"descriptionPhoneNumber": "This information is only for your identification and remains with Harmony.",
"titleSocial": "My email and social medias",
"descriptionSocial": "This information is only for your identification and remains with Harmony.",
"rejectButton": "Cancel",
"saveButton": "Save",
"editButton": "Edit",
"editPhoneNumber": "Change phone number",
"addEmailOrSocialButton": "Add email / social",
"addEmailButton": "Add email",
"name": "Name",
"familyName": "Family Name",
"country": "Country",
"gender": "Gender",
"nationalCode": "National code",
"man": "Male",
"woman": "Female",
"genderPlaceholder": "Male",
"newPhoneNumber": "New phone number",
"verificationCodeButton": "Send verification code",
"verificationCode": "Verification code",
"checkCode": "Check code",
"successButton": "Confirmed",
"email": "Email",
"apple": "Apple",
"google": "Google",
"newEmail": "New email",
"dialogHeader": "By activating your email, you can use this email to log in the next time you log in.",
"or": "Or",
"emailError": "Please enter a valid email.",
"profilePicture": "User account image",
"allowedFormat": "Allowed formats: PNG, JPEG, GIF (maximum 10 MB)",
"uploadPicture": "Upload image",
"phoneNumberText": "Your new contact number will replace your previous contact number.",
"verb": ".",
"notDetermined": "Not determined",
"successfulChangePhone": "Phone number changed successfully",
"phoneNumberIsInvalid": "Phone number is invalid",
"thisFieldIsRequired": "This field is required",
"changePicture": "Change picture"
}
}

View File

@@ -1,22 +0,0 @@
{
"securityForm": {
"password": "Password",
"determinePassword": "Log in to your Harmony account more easily by setting a strong password.",
"addPassword": "Add password",
"notDeterminedPassword": "You have not set a password for this account yet.",
"newPassword": "New password",
"confirmPassword": "Confirm password",
"confirm": "Confirm",
"hasNumber": "Contains number",
"hasMinLength": "at least 8 character",
"hasUpperAndLower": "Contains a lowercase and uppercase letter",
"hasSpecialChar": "Contains sign (!@#$%^&*)",
"notCompatibility": "Confirm password is not the same as password.",
"alertSuccess": "Password has successfully changed",
"lastChange": "Last change a few seconds ago",
"activePassword": "Password is active",
"recentLogins": "Recent logins",
"description": "In this section, you can see the recent logins to your Harmony account.",
"currentDevice": "Current device"
}
}

View File

@@ -1,4 +1,82 @@
{
"settingForm": {
"titlePersonalInfo": "My Personal Information",
"descriptionPersonalInfo": "This information is only for your identification and remains with Harmony.",
"titlePhoneNumber": "My phone number",
"descriptionPhoneNumber": "This information is only for your identification and remains with Harmony.",
"titleSocial": "My email and social medias",
"descriptionSocial": "This information is only for your identification and remains with Harmony.",
"rejectButton": "Cancel",
"saveButton": "Save",
"editButton": "Edit",
"editPhoneNumber": "Change phone number",
"addEmailOrSocialButton": "Add email / social",
"addEmailButton": "Add email",
"name": "Name",
"familyName": "Family Name",
"country": "Country",
"gender": "Gender",
"nationalCode": "National code",
"man": "Male",
"woman": "Female",
"genderPlaceholder": "Male",
"newPhoneNumber": "New phone number",
"verificationCodeButton": "Send verification code",
"verificationCode": "Verification code",
"checkCode": "Check code",
"successButton": "Confirmed",
"email": "Email",
"apple": "Apple",
"google": "Google",
"newEmail": "New email",
"dialogHeader": "By activating your email, you can use this email to log in the next time you log in.",
"or": "Or",
"emailError": "Please enter a valid email.",
"profilePicture": "User account image",
"allowedFormat": "Allowed formats: PNG, JPEG, GIF (maximum 10 MB)",
"uploadPicture": "Upload image",
"phoneNumberText": "Your new contact number will replace your previous contact number.",
"verb": ".",
"notDetermined": "Not determined",
"successfulChangePhone": "Phone number changed successfully",
"phoneNumberIsInvalid": "Phone number is invalid",
"thisFieldIsRequired": "This field is required",
"changePicture": "Change picture",
"confirmAndSave": "Confirm",
"fileSizeError": "Your file exceed the limit",
"removePicture": "Remove picture",
"failRetrieve": "Failed to retrieve profile data.",
"errorFetch": "An error occurred while fetching your profile.",
"notLoggedIn": "You are not logged in. Please log in to view your profile.",
"unknownError": "An unknown error occurred while saving.",
"checkConnection": "Failed to save profile. Please check your connection and try again.",
"failFetchPhoneNumber": "Failed to fetch phone number data.",
"errorFetchPhoneNumber": "An error occurred while fetching your phone number.",
"sendCodeFailed": "Send code failed",
"verificationCodeRequired": "Verification code required",
"verifyCodeFailed": "Verification of code failed",
"changePhoneFailed": "Change of phone number failed",
"justNow": "Just now",
"failFetchEmail": "Failed to fetch email data",
"errorFetchEmail": "An error occurred while fetching your linked accounts.",
"emailIsInvalid": "Email is invalid",
"changeEmailFailed": "Change of email failed",
"anErrorOccurred": "An error occurred."
},
"active": {
"activeDevices": "Active devices",
"activeDevicesCaption": "Watch and manage all your active devices",
"deleteDevicesButton": "Remove rest of the devices",
"deleteDevice": "Remove device",
"currentDevice": "Current device",
"minutesAgo": "{{count}} minutes ago",
"justNow": "Just now",
"notLoggedIn": "You are not logged in",
"failFetchActiveSessions": "Failed to fetch active sessions.",
"errorFetch": "An error occurred while fetching your active sessions."
},
"settings": {
"title": "Base settings",
"description": "Change your base settings",
@@ -13,6 +91,36 @@
"solar": "Solar",
"lunar": "Lunar",
"christian": "Christian",
"iran": "Iran"
"iran": "Iran",
"saving": "Saving...",
"notLoggedIn": "You are not logged in",
"failedRetrieve": "Failed to retrieve settings.",
"errorFetch": "An error occurred while fetching your settings.",
"saveFailed": "Save failed",
"invalidSelection": "Invalid selection"
},
"securityForm": {
"password": "Password",
"determinePassword": "Log in to your Harmony account more easily by setting a strong password.",
"addPassword": "Add password",
"notDeterminedPassword": "You have not set a password for this account yet.",
"newPassword": "New password",
"confirmPassword": "Confirm password",
"confirm": "Confirm",
"hasNumber": "Contains number",
"hasMinLength": "at least 8 character",
"hasUpperAndLower": "Contains a lowercase and uppercase letter",
"hasSpecialChar": "Contains sign (!@#$%^&*)",
"notCompatibility": "Confirm password is not the same as password.",
"alertSuccess": "Password has successfully changed",
"lastChange": "Last change a few seconds ago",
"activePassword": "Password is active",
"recentLogins": "Recent logins",
"description": "In this section, you can see the recent logins to your Harmony account.",
"currentDevice": "Current device",
"changePassword": "Change password",
"currentPassword": "Current password",
"forgetPassword": "Forgot your password?"
}
}

View File

@@ -1,9 +0,0 @@
{
"active": {
"activeDevices": "نشست های فعال",
"activeDevicesCaption": "مشاهده و مدیریت تمام نشست های فعال شما",
"deletDevicesButton": "حذف بقیه نشست ها",
"deleteDevice": "حذف نشست",
"currentDevice": "دستگاه فعلی"
}
}

View File

@@ -1,46 +0,0 @@
{
"settingForm": {
"titlePersonalInfo": "اطلاعات شخصی من",
"descriptionPersonalInfo": "این اطلاعات شما صرفا برای احراز هویت شما است و نزد هارمونی باقی می‌ماند",
"titlePhoneNumber": "شماره تماس من",
"descriptionPhoneNumber": "این اطلاعات شما صرفا برای احراز هویت شما است و نزد هارمونی باقی می‌ماند",
"titleSocial": "ایمیل و شبکه های اجتماعی من",
"descriptionSocial": "این اطلاعات شما صرفاً برای احراز هویت شما است و نزد هارمونی باقی می‌ماند",
"rejectButton": "لغو",
"saveButton": "ذخیره",
"editButton": "ویرایش",
"editPhoneNumber": "تغییر شماره تماس",
"addEmailOrSocialButton": "افزودن ایمیل / سوشال",
"addEmailButton": "افزودن ایمیل",
"name": "نام",
"familyName": "نام خانوادگی",
"country": "کشور",
"gender": "جنسیت",
"nationalCode": "کد ملی",
"man": "مرد",
"woman": "زن",
"genderPlaceholder": "مرد",
"newPhoneNumber": "شماره تماس جدید",
"verificationCodeButton": "ارسال کد تایید",
"verificationCode": "کد تایید",
"checkCode": "بررسی کد",
"successButton": "تایید شد",
"email": "ایمیل",
"apple": "اپل",
"google": "گوگل",
"newEmail": "ایمیل جدید",
"dialogHeader": "با فعال‌سازی ایمیل می‌توانید در دفعات بعدی ورود برای ورود از این ایمیل استفاده کنید",
"or": "یا",
"emailError": "لطفا یک ایمیل معتبر وارد کنید",
"profilePicture": "تصویر حساب کاربری",
"allowedFormat": "فرمت‌های مجاز: PNG، JPEG، GIF (حداکثر ۱۰ مگابایت)",
"uploadPicture": "بارگذاری تصویر",
"phoneNumberText": "شماره تماس جدید شما جایگزین شماره تماس قبلی",
"verb": "خواهد شد",
"notDetermined": "تعیین نشده",
"successfulChangePhone": "شماره تماس با موفقیت تغییر کرد",
"phoneNumberIsInvalid": "شماره وارد شده نامعتبر میباشد",
"thisFieldIsRequired": "این فیلد الزامی است",
"changePicture": "تغییر تصویر"
}
}

View File

@@ -1,25 +0,0 @@
{
"securityForm": {
"password": "رمز عبور",
"determinePassword": "با تعیین یک رمز عبور قوی راحت تر به اکانت هارمونی خود وارد شوید",
"addPassword": "افزودن رمز عبور",
"notDeterminedPassword": "هنوز رمز عبوری برای این حساب کاربری تعیین نکرده اید",
"newPassword": "رمز عبور جدید",
"confirmPassword": "تکرار رمز عبور",
"confirm": "تایید",
"hasNumber": "شامل عدد",
"hasMinLength": "حداقل 8 کاراکتر",
"hasUpperAndLower": "شامل یک حرف کوچک و بزرگ",
"hasSpecialChar": "شامل علامت (!@#$%^&*)",
"notCompatibility": "تکرار رمز عبور با رمز عبور یکسان نمی باشد",
"alertSuccess": "رمز عبور با موفقیت تعویض شد",
"lastChange": "آخرین تغییر چند ثانیه پیش",
"activePassword": "رمز عبور فعال است",
"recentLogins": "ورود های اخیر",
"description": "در این بخش از ورود های اخیر به اکانت هارمونی خود را مشاهده می کنید",
"currentDevice": "دستگاه فعلی",
"changePassword": "تغییر رمز عبور",
"currentPassword": "رمز عبور فعلی",
"forgetPassword": "رمز عبور را فراموش کرده اید؟"
}
}

View File

@@ -1,4 +1,82 @@
{
"settingForm": {
"titlePersonalInfo": "اطلاعات شخصی من",
"descriptionPersonalInfo": "این اطلاعات شما صرفا برای احراز هویت شما است و نزد هارمونی باقی می‌ماند",
"titlePhoneNumber": "شماره تماس من",
"descriptionPhoneNumber": "این اطلاعات شما صرفا برای احراز هویت شما است و نزد هارمونی باقی می‌ماند",
"titleSocial": "ایمیل و شبکه های اجتماعی من",
"descriptionSocial": "این اطلاعات شما صرفاً برای احراز هویت شما است و نزد هارمونی باقی می‌ماند",
"rejectButton": "لغو",
"saveButton": "ذخیره",
"editButton": "ویرایش",
"editPhoneNumber": "تغییر شماره تماس",
"addEmailOrSocialButton": "افزودن ایمیل / سوشال",
"addEmailButton": "افزودن ایمیل",
"name": "نام",
"familyName": "نام خانوادگی",
"country": "کشور",
"gender": "جنسیت",
"nationalCode": "کد ملی",
"man": "مرد",
"woman": "زن",
"genderPlaceholder": "مرد",
"newPhoneNumber": "شماره تماس جدید",
"verificationCodeButton": "ارسال کد تایید",
"verificationCode": "کد تایید",
"checkCode": "بررسی کد",
"successButton": "تایید شد",
"email": "ایمیل",
"apple": "اپل",
"google": "گوگل",
"newEmail": "ایمیل جدید",
"dialogHeader": "با فعال‌سازی ایمیل می‌توانید در دفعات بعدی ورود برای ورود از این ایمیل استفاده کنید",
"or": "یا",
"emailError": "لطفا یک ایمیل معتبر وارد کنید",
"profilePicture": "تصویر حساب کاربری",
"allowedFormat": "فرمت‌های مجاز: PNG، JPEG، GIF (حداکثر ۱۰ مگابایت)",
"uploadPicture": "بارگذاری تصویر",
"phoneNumberText": "شماره تماس جدید شما جایگزین شماره تماس قبلی",
"verb": "خواهد شد",
"notDetermined": "تعیین نشده",
"successfulChangePhone": "شماره تماس با موفقیت تغییر کرد",
"phoneNumberIsInvalid": "شماره وارد شده نامعتبر میباشد",
"thisFieldIsRequired": "این فیلد الزامی است",
"changePicture": "تغییر تصویر",
"confirmAndSave": "تایید",
"fileSizeError": "حجم فایل شما از حد مجاز بیشتر شده است",
"removePicture": "حذف عکس",
"failRetrieve": "بازیابی اطلاعات پروفایل ناموفق بود.",
"errorFetch": "هنگام دریافت پروفایل شما خطایی رخ داد.",
"notLoggedIn": "شما وارد سیستم نشده‌اید. لطفا برای مشاهده پروفایل خود وارد شوید.",
"unknownError": "هنگام ذخیره خطای ناشناخته‌ای رخ داد.",
"checkConnection": "ذخیره پروفایل ناموفق بود. لطفاً اتصال خود را بررسی کرده و دوباره امتحان کنید.",
"failFetchPhoneNumber": "دریافت اطلاعات شماره تلفن ناموفق بود.",
"errorFetchPhoneNumber": "هنگام دریافت شماره تلفن شما خطایی روی داد.",
"sendCodeFailed": "خطا در ارسال کد",
"verificationCodeRequired": "کد تأیید مورد نیاز است",
"verifyCodeFailed": "تأیید کد ناموفق بود",
"changePhoneFailed": "تغییر شماره تلفن ناموفق بود",
"justNow": "همین الان",
"failFetchEmail": "دریافت داده‌های ایمیل ناموفق بود",
"errorFetchEmail": "هنگام دریافت حساب‌های پیوند داده شده شما خطایی روی داد.",
"emailIsInvalid": "ایمیل نامعتبر است",
"changeEmailFailed": "تغییر ایمیل با خطا مواجه شد",
"anErrorOccurred": "خطایی رخ داد"
},
"active": {
"activeDevices": "نشست های فعال",
"activeDevicesCaption": "مشاهده و مدیریت تمام نشست های فعال شما",
"deleteDevicesButton": "حذف بقیه نشست ها",
"deleteDevice": "حذف نشست",
"currentDevice": "دستگاه فعلی",
"minutesAgo": "{{count}} دقیقه پیش",
"justNow": "همین الان",
"notLoggedIn": "شما وارد سیستم نشده‌اید",
"failFetchActiveSessions": "دریافت نشست های فعال ناموفق بود.",
"errorFetch": "هنگام دریافت جلسات فعال شما خطایی روی داد."
},
"settings": {
"title": "تنظیمات پایه",
"description": "تنظیمات پایه‌ای حساب خود را تغییر دهید",
@@ -13,6 +91,36 @@
"solar": "شمسی",
"lunar": "قمری",
"christian": "میلادی",
"iran": "ایران"
"iran": "ایران",
"saving": "در حال ذخیره‌سازی...",
"notLoggedIn": "شما وارد سیستم نشده‌اید",
"failedRetrieve": "بازیابی تنظیمات ناموفق بود.",
"errorFetch": "هنگام دریافت تنظیمات شما خطایی روی داد.",
"saveFailed": "خطا در ذخیره",
"invalidSelection": "انتخاب نامعتبر است"
},
"securityForm": {
"password": "رمز عبور",
"determinePassword": "با تعیین یک رمز عبور قوی راحت تر به اکانت هارمونی خود وارد شوید",
"addPassword": "افزودن رمز عبور",
"notDeterminedPassword": "هنوز رمز عبوری برای این حساب کاربری تعیین نکرده اید",
"newPassword": "رمز عبور جدید",
"confirmPassword": "تکرار رمز عبور",
"confirm": "تایید",
"hasNumber": "شامل عدد",
"hasMinLength": "حداقل 8 کاراکتر",
"hasUpperAndLower": "شامل یک حرف کوچک و بزرگ",
"hasSpecialChar": "شامل علامت (!@#$%^&*)",
"notCompatibility": "تکرار رمز عبور با رمز عبور یکسان نمی باشد",
"alertSuccess": "رمز عبور با موفقیت تعویض شد",
"lastChange": "آخرین تغییر چند ثانیه پیش",
"activePassword": "رمز عبور فعال است",
"recentLogins": "ورود های اخیر",
"description": "در این بخش از ورود های اخیر به اکانت هارمونی خود را مشاهده می کنید",
"currentDevice": "دستگاه فعلی",
"changePassword": "تغییر رمز عبور",
"currentPassword": "رمز عبور فعلی",
"forgetPassword": "رمز عبور را فراموش کرده اید؟"
}
}