From a7d35690b85a7af5b6f334ef12aa62da57d83d94 Mon Sep 17 00:00:00 2001 From: Nikita Radkov Date: Thu, 3 Oct 2024 22:25:39 +0300 Subject: [PATCH 1/2] feat(localizations): Add be-BY localization --- .changeset/unlucky-crabs-hunt.md | 6 + packages/localizations/package.json | 1 + packages/localizations/src/be-BY.ts | 896 ++++++++++++++++++ packages/localizations/src/index.ts | 1 + packages/localizations/src/utils/generate.ts | 2 + .../contexts/__tests__/ClerkProvider.test.tsx | 6 + 6 files changed, 912 insertions(+) create mode 100644 .changeset/unlucky-crabs-hunt.md create mode 100644 packages/localizations/src/be-BY.ts diff --git a/.changeset/unlucky-crabs-hunt.md b/.changeset/unlucky-crabs-hunt.md new file mode 100644 index 00000000000..bbae25108c9 --- /dev/null +++ b/.changeset/unlucky-crabs-hunt.md @@ -0,0 +1,6 @@ +--- +"@clerk/localizations": minor +"@clerk/clerk-react": minor +--- + +Add be-BY translation diff --git a/packages/localizations/package.json b/packages/localizations/package.json index 287f76a6bfb..2a52a7593b1 100644 --- a/packages/localizations/package.json +++ b/packages/localizations/package.json @@ -53,6 +53,7 @@ "files": [ "dist", "ar-SA", + "be-BY", "ca-ES", "cs-CZ", "da-DK", diff --git a/packages/localizations/src/be-BY.ts b/packages/localizations/src/be-BY.ts new file mode 100644 index 00000000000..69050df096e --- /dev/null +++ b/packages/localizations/src/be-BY.ts @@ -0,0 +1,896 @@ +/* + * ===================================================================================== + * DISCLAIMER: + * ===================================================================================== + * This localization file is a community contribution and is not officially maintained + * by Clerk. It has been provided by the community and may not be fully aligned + * with the current or future states of the main application. Clerk does not guarantee + * the accuracy, completeness, or timeliness of the translations in this file. + * Use of this file is at your own risk and discretion. + * ===================================================================================== + */ + +import type { LocalizationResource } from '@clerk/types'; + +export const beBY: LocalizationResource = { + locale: 'be-BY', + __experimental_userVerification: { + alternativeMethods: { + actionLink: undefined, + actionText: undefined, + blockButton__backupCode: undefined, + blockButton__emailCode: undefined, + blockButton__password: undefined, + blockButton__phoneCode: undefined, + blockButton__totp: undefined, + getHelp: { + blockButton__emailSupport: undefined, + content: undefined, + title: undefined, + }, + subtitle: undefined, + title: undefined, + }, + backupCodeMfa: { + subtitle: undefined, + title: undefined, + }, + emailCode: { + formTitle: undefined, + resendButton: undefined, + subtitle: undefined, + title: undefined, + }, + noAvailableMethods: { + message: undefined, + subtitle: undefined, + title: undefined, + }, + password: { + actionLink: undefined, + subtitle: undefined, + title: undefined, + }, + phoneCode: { + formTitle: undefined, + resendButton: undefined, + subtitle: undefined, + title: undefined, + }, + phoneCodeMfa: { + formTitle: undefined, + resendButton: undefined, + subtitle: undefined, + title: undefined, + }, + totpMfa: { + formTitle: undefined, + subtitle: undefined, + title: undefined, + }, + }, + backButton: 'Назад', + badge__default: 'Па-змаўчанні', + badge__otherImpersonatorDevice: 'Іншая прылада', + badge__primary: 'Асноўная', + badge__requiresAction: 'Патрабуецца дзеянне', + badge__thisDevice: 'Гэта прылада', + badge__unverified: 'Не верыфікавана', + badge__userDevice: 'Карыстальніцкая прылада', + badge__you: 'Вы', + createOrganization: { + formButtonSubmit: 'Стварыць арганізацыю', + invitePage: { + formButtonReset: 'Прапусціць', + }, + title: 'Стварыць арганізацыю', + }, + dates: { + lastDay: "Учора ў {{ date | timeString('be-BY') }}", + next6Days: "{{ date | weekday('be-BY','long') }} ў {{ date | timeString('be-BY') }}", + nextDay: "Заўтра ў {{ date | timeString('be-BY') }}", + numeric: "{{ date | numeric('be-BY') }}", + previous6Days: "Апошні {{ date | weekday('be-BY','long') }} ў {{ date | timeString('be-BY') }}", + sameDay: "Сёння ў {{ date | timeString('be-BY') }}", + }, + dividerText: 'ці', + footerActionLink__useAnotherMethod: 'Выкарыстаць іншы метад', + footerPageLink__help: 'Дапамога', + footerPageLink__privacy: 'Приватнасць', + footerPageLink__terms: 'Умовы', + formButtonPrimary: 'Працягнуць', + formButtonPrimary__verify: 'Праверыць', + formFieldAction__forgotPassword: 'Забылі пароль?', + formFieldError__matchingPasswords: 'Паролі супадаюць.', + formFieldError__notMatchingPasswords: 'Паролі не супадаюць.', + formFieldError__verificationLinkExpired: 'Спасылка на верыфікацыю спампавала. Калі ласка, запытайце новую спасылку.', + formFieldHintText__optional: 'Неабавязкова', + formFieldHintText__slug: + 'Slug — гэта чытальны ідэнтыфікатар, які павінен быць унікальным. Часто выкарыстоўваецца ў URL-ах.', + formFieldInputPlaceholder__backupCode: undefined, + formFieldInputPlaceholder__confirmDeletionUserAccount: 'Выдаліць уліковы запіс', + formFieldInputPlaceholder__emailAddress: undefined, + formFieldInputPlaceholder__emailAddress_username: undefined, + formFieldInputPlaceholder__emailAddresses: + 'Увядзіце або ўстаўце адзін ці некалькі адрасоў электроннай пошты, раздзяляючы іх прабеламі або коскамі', + formFieldInputPlaceholder__firstName: undefined, + formFieldInputPlaceholder__lastName: undefined, + formFieldInputPlaceholder__organizationDomain: undefined, + formFieldInputPlaceholder__organizationDomainEmailAddress: undefined, + formFieldInputPlaceholder__organizationName: undefined, + formFieldInputPlaceholder__organizationSlug: undefined, + formFieldInputPlaceholder__password: undefined, + formFieldInputPlaceholder__phoneNumber: undefined, + formFieldInputPlaceholder__username: undefined, + formFieldLabel__automaticInvitations: 'Уключыць аўтаматычныя запрашэнні для гэтага дамена', + formFieldLabel__backupCode: 'Код аднаўлення', + formFieldLabel__confirmDeletion: 'Пацверджанне', + formFieldLabel__confirmPassword: 'Пацверджанне пароля', + formFieldLabel__currentPassword: 'Цяперашні пароль', + formFieldLabel__emailAddress: 'Электронная пошта', + formFieldLabel__emailAddress_username: 'Электронная пошта або імя карыстальніка', + formFieldLabel__emailAddresses: 'Электронныя адрасы', + formFieldLabel__firstName: 'Імя', + formFieldLabel__lastName: 'Прозвішча', + formFieldLabel__newPassword: 'Новы пароль', + formFieldLabel__organizationDomain: 'Дамен', + formFieldLabel__organizationDomainDeletePending: 'Выдаліць чаканыя запрашэнні і прапановы', + formFieldLabel__organizationDomainEmailAddress: 'Электронны адрас для верыфікацыі', + formFieldLabel__organizationDomainEmailAddressDescription: + 'Увядзіце адрас электроннай пошты пад гэтым даменам, каб атрымаць код і верыфікаваць гэты дамен.', + formFieldLabel__organizationName: 'Назва арганізацыі', + formFieldLabel__organizationSlug: 'Slug', + formFieldLabel__passkeyName: undefined, + formFieldLabel__password: 'Пароль', + formFieldLabel__phoneNumber: 'Нумар тэлефона', + formFieldLabel__role: 'Роля', + formFieldLabel__signOutOfOtherSessions: 'Выйсці з усіх іншых сесій', + formFieldLabel__username: 'Імя карыстальніка', + impersonationFab: { + action__signOut: 'Выйсці', + title: 'Вы ўвайшлі як {{identifier}}', + }, + maintenanceMode: undefined, + membershipRole__admin: 'Адміністратар', + membershipRole__basicMember: 'Удзельнік', + membershipRole__guestMember: 'Госць', + organizationList: { + action__createOrganization: 'Create organization', + action__invitationAccept: 'Join', + action__suggestionsAccept: 'Request to join', + createOrganization: 'Create Organization', + invitationAcceptedLabel: 'Joined', + subtitle: 'to continue to {{applicationName}}', + suggestionsAcceptedLabel: 'Pending approval', + title: 'Выберыце ўліковы запіс', + titleWithoutPersonal: 'Выберыце арганізацыю', + }, + organizationProfile: { + badge__automaticInvitation: 'Automatic invitations', + badge__automaticSuggestion: 'Automatic suggestions', + badge__manualInvitation: 'No automatic enrollment', + badge__unverified: 'Unverified', + createDomainPage: { + subtitle: + 'Добавьте верифицированный домен. Пользователи, чья электронная почта зарегистрирована на верифицированном домене, могут присоединяться к организации автоматически или по запросу.', + title: 'Добавить домен', + }, + invitePage: { + detailsTitle__inviteFailed: 'Приглашения не удалось отправить. Исправьте следующее и повторите попытку:', + formButtonPrimary__continue: 'Отправить приглашения', + selectDropdown__role: 'Select role', + subtitle: 'Пригласите новых участников в эту организацию', + successMessage: 'Приглашения успешно отправлены', + title: 'Пригласить участников', + }, + membersPage: { + action__invite: 'Пригласить', + activeMembersTab: { + menuAction__remove: 'Удалить удзельніка', + tableHeader__actions: 'Дзеянні', + tableHeader__joined: 'Присоединился', + tableHeader__role: 'Роля', + tableHeader__user: 'Карыстальнік', + }, + detailsTitle__emptyRow: 'Нет участников для отображения', + invitationsTab: { + autoInvitations: { + headerSubtitle: + 'Invite users by connecting an email domain with your organization. Anyone who signs up with a matching email domain will be able to join the organization anytime.', + headerTitle: 'Automatic invitations', + primaryButton: 'Manage verified domains', + }, + table__emptyRow: 'No invitations to display', + }, + invitedMembersTab: { + menuAction__revoke: 'Отозвать приглашение', + tableHeader__invited: 'Приглашенные', + }, + requestsTab: { + autoSuggestions: { + headerSubtitle: + 'Users who sign up with a matching email domain, will be able to see a suggestion to request to join your organization.', + headerTitle: 'Automatic suggestions', + primaryButton: 'Manage verified domains', + }, + menuAction__approve: 'Approve', + menuAction__reject: 'Reject', + tableHeader__requested: 'Requested access', + table__emptyRow: 'No requests to display', + }, + start: { + headerTitle__invitations: 'Приглашения', + headerTitle__members: 'Удзельнікі', + headerTitle__requests: 'Заявкі', + }, + }, + navbar: { + description: 'Manage your organization.', + general: 'General', + members: 'Members', + title: 'Organization', + }, + profilePage: { + dangerSection: { + deleteOrganization: { + actionDescription: 'Напішыце {{organizationName}} ў полі ніжэй, каб працягнуць.', + messageLine1: 'Вы ўпэўнены, што хочаце выдаліць гэтую арганізацыю?', + messageLine2: 'Гэта дзеянне нельга адмяніць.', + successMessage: 'Вы выдалілі арганізацыю.', + title: 'Выдаліць арганізацыю', + }, + leaveOrganization: { + actionDescription: 'Напішыце "{{organizationName}}" ніжэй, каб працягнуць.', + messageLine1: + 'Вы ўпэўнены, што хочаце пакінуць гэтую арганізацыю? Вы страціце доступ да гэтай арганізацыі і яе прыкладанням.', + messageLine2: 'Гэта дзеянне нельга адмяніць.', + successMessage: 'Вы пакінулі арганізацыю.', + title: 'Пакінуць арганізацыю', + }, + title: 'Небяспека', + }, + domainSection: { + menuAction__manage: 'Кіраваць', + menuAction__remove: 'Выдаліць', + menuAction__verify: 'Праверыць', + primaryButton: 'Дадаць домен', + subtitle: + 'Дазвольце карыстальнікам аўтаматычна далучацца да арганізацыі або па запыце, калі дамен іх электроннай пошты правераны.', + title: 'Правераныя дамены', + }, + successMessage: 'Арганізацыя была абноўлена.', + title: 'Профіль арганізацыі', + }, + removeDomainPage: { + messageLine1: 'Электронны дамен {{domain}} будзе выдалены.', + messageLine2: 'Карыстальнікі не змогуць аўтаматычна далучацца да арганізацыі пасля гэтага.', + successMessage: '{{domain}} быў выдалены.', + title: 'Выдаліць дамен', + }, + start: { + headerTitle__general: 'Агульны', + headerTitle__members: 'Удзельнікі', + profileSection: { + primaryButton: undefined, + title: 'Профіль арганізацыі', + uploadAction__title: 'Лагатып', + }, + }, + verifiedDomainPage: { + dangerTab: { + calloutInfoLabel: 'Выдаленне дамена паўплывае на запрошаных карыстальнікаў.', + removeDomainActionLabel__remove: 'Выдаліць дамен', + removeDomainSubtitle: 'Выдаліць гэты дамен з ліку правераных', + removeDomainTitle: 'Выдаліць дамен', + }, + enrollmentTab: { + automaticInvitationOption__description: + 'Карыстальнікі аўтаматычна атрымліваюць запрашэнне далучыцца да арганізацыі пасля рэгістрацыі і могуць прыняць яго ў любы час без адабрэння адміністратара', + automaticInvitationOption__label: 'Аўтаматычныя запрашэнні', + automaticSuggestionOption__description: + 'Карыстальнікі аўтаматычна атрымліваюць запрашэнне падать заяўку на далучэнне да арганізацыі. Каб карыстальнік мог далучыцца да арганізацыі, адміністратар павінен адабраць заяўку.', + automaticSuggestionOption__label: 'Аўтаматычныя рэкамендацыі', + calloutInfoLabel: 'Змена спосабу далучэння паўплывае толькі на новых карыстальнікаў.', + calloutInvitationCountLabel: 'Запрашэнняў адправлена: {{count}}', + calloutSuggestionCountLabel: 'Рэкамендацый адправлена: {{count}}', + manualInvitationOption__description: + 'Карыстальнікі не змогуць далучацца самастойна, можна дадаваць іх толькі ўручную.', + manualInvitationOption__label: 'Толькі ручное дадаванне', + subtitle: + 'Выберыце, якім чынам карыстальнікі з гэтым даменам электроннай пошты будуць далучацца да арганізацыі.', + }, + start: { + headerTitle__danger: 'Небяспека', + headerTitle__enrollment: 'Спосабы далучэння', + }, + subtitle: + 'Дамен {{domain}} правераны. Цяпер выберыце, як карыстальнікі з гэтым даменам будуць далучацца да арганізацыі.', + title: 'Абнавіць {{domain}}', + }, + verifyDomainPage: { + formSubtitle: 'Увядзіце код пацверджання, адпраўлены на ўказаную пошту', + formTitle: 'Код пацверджання', + resendButton: 'Не атрымалі код? Адпраўце яшчэ раз', + subtitle: 'Домен {{domainName}} павінен быць верыфікаваны праз электронную пошту.', + subtitleVerificationCodeScreen: + 'Код пацверджання верыфікацыі адпраўлены на пошту {{emailAddress}}. Увядзіце яго сюды, каб працягнуць.', + title: 'Верыфікацыя дамена', + }, + }, + organizationSwitcher: { + action__createOrganization: 'Стварыць арганізацыю', + action__invitationAccept: 'Join', + action__manageOrganization: 'Кіраванне арганізацыяй', + action__suggestionsAccept: 'Request to join', + notSelected: 'Арганізацыя не выбрана', + personalWorkspace: 'Асабістае працоўнае прастора', + suggestionsAcceptedLabel: 'У чаканні адабрэння', + }, + paginationButton__next: 'Наперад', + paginationButton__previous: 'Назад', + paginationRowText__displaying: 'Адлюстраванне', + paginationRowText__of: 'з', + signIn: { + accountSwitcher: { + action__addAccount: 'Дадаць уліковы запіс', + action__signOutAll: 'Выйсці з усіх уліковых запісаў', + subtitle: 'Выберыце ўліковы запіс, з якім вы жадаеце працягваць.', + title: 'Выберыце ўліковы запіс', + }, + alternativeMethods: { + actionLink: 'Дапамога', + actionText: 'Не маеце нічога з гэтага?', + blockButton__backupCode: 'Выкарыстайце код аднаўлення', + blockButton__emailCode: 'Адправіць код на {{identifier}}', + blockButton__emailLink: 'Адправіць спасылку на {{identifier}}', + blockButton__passkey: undefined, + blockButton__password: 'Увайсці з паролем', + blockButton__phoneCode: 'Адправіць код на {{identifier}}', + blockButton__totp: 'Выкарыстайце аўтэнтыфікатар', + getHelp: { + blockButton__emailSupport: 'Напісаць у падтрымку', + content: + 'Калі вы сутыкнуліся з цяжкасцямі з уваходам у ваш уліковы запіс, напішыце нам, і мы паспрабуем аднавіць ваш доступ у найкарацейшыя тэрміны.', + title: 'Дапамога', + }, + subtitle: 'Сустрэлі праблемы? Вы можаце выкарыстоўваць любы з гэтых метадаў для ўваходу.', + title: 'Выкарыстаць іншы метад', + }, + backupCodeMfa: { + subtitle: 'каб працягнуць працу ў "{{applicationName}}"', + title: 'Увядзіце код аднаўлення', + }, + emailCode: { + formTitle: 'Код верыфікацыі', + resendButton: 'Пераадправіць код', + subtitle: 'каб працягнуць працу ў "{{applicationName}}"', + title: 'Праверце вашу пошту', + }, + emailLink: { + clientMismatch: { + subtitle: undefined, + title: undefined, + }, + expired: { + subtitle: 'Верніцеся на пачатковую ўкладку, каб працягнуць.', + title: 'Гэтая верыфікацыйная спасылка скончылася', + }, + failed: { + subtitle: 'Верніцеся на пачатковую ўкладку, каб працягнуць.', + title: 'Гэтая верыфікацыйная спасылка неадэкватная.', + }, + formSubtitle: 'Выкарыстоўвайце верыфікацыйную спасылку, адпраўленую на вашу пошту', + formTitle: 'Верыфікацыйная спасылка', + loading: { + subtitle: 'Вы хутка будзеце перанакіраваны', + title: 'Уваходзім...', + }, + resendButton: 'Пераадправіць спасылку', + subtitle: 'каб працягнуць працу ў "{{applicationName}}"', + title: 'Праверце вашу пошту', + unusedTab: { + title: 'Укладку можна зачыніць', + }, + verified: { + subtitle: 'Вы хутка будзеце перанакіраваны', + title: 'Успешны ўваход', + }, + verifiedSwitchTab: { + subtitle: 'Верніцеся на пачатковую ўкладку, каб працягнуць', + subtitleNewTab: 'Верніцеся на толькі што адчыненую ўкладку, каб працягнуць', + titleNewTab: 'Залогіньцеся на іншай укладцы', + }, + }, + forgotPassword: { + formTitle: 'Код аднаўлення пароля', + resendButton: 'Адправіць код яшчэ раз', + subtitle: 'каб скідаць ваш пароль', + subtitle_email: 'Спачатку увядзіце код, адпраўлены на ваш адрас электроннай пошты', + subtitle_phone: 'Спачатку увядзіце код, адпраўлены на ваш тэлефон', + title: 'Скід пароля', + }, + forgotPasswordAlternativeMethods: { + blockButton__resetPassword: 'Аднавіць пароль', + label__alternativeMethods: 'Або ўвайдзіце іншым спосабам', + title: 'Забыўся пароль?', + }, + noAvailableMethods: { + message: 'Немагчыма ўвайсці. Няма даступных фактараў аўтэнтыфікацыі.', + subtitle: 'Адбылася памылка', + title: 'Немагчыма ўвайсці', + }, + passkey: { + subtitle: undefined, + title: undefined, + }, + password: { + actionLink: 'Выкарыстаць іншы метад', + subtitle: 'каб працягнуць працу ў "{{applicationName}}"', + title: 'Увядзіце пароль', + }, + passwordPwned: { + title: undefined, + }, + phoneCode: { + formTitle: 'Код верыфікацыі', + resendButton: 'Пераадправіць код', + subtitle: 'каб працягнуць працу ў "{{applicationName}}"', + title: 'Праверце ваш тэлефон', + }, + phoneCodeMfa: { + formTitle: 'Код верыфікацыі', + resendButton: 'Пераадправіць код', + subtitle: undefined, + title: 'Праверце ваш тэлефон', + }, + resetPassword: { + formButtonPrimary: 'Скідаць пароль', + requiredMessage: 'Па меркаванню бяспекі неабходна скідаць ваш пароль.', + successMessage: 'Ваш пароль паспяхова зменены. Выконваецца ўваход, пачакайце.', + title: 'Скідаць пароль', + }, + resetPasswordMfa: { + detailsLabel: 'Неабходна верыфікаваць вашу асобу перад аднаўленнем пароля', + }, + start: { + actionLink: 'Зарэгістравацца', + actionLink__use_email: 'Выкарыстаць пошту', + actionLink__use_email_username: 'Выкарыстаць пошту або імя карыстальніка', + actionLink__use_passkey: undefined, + actionLink__use_phone: 'Выкарыстаць нумар тэлефона', + actionLink__use_username: 'Выкарыстаць імя карыстальніка', + actionText: 'Няма ўліковага запісу?', + subtitle: 'каб працягнуць працу ў "{{applicationName}}"', + title: 'Увайсці', + }, + totpMfa: { + formTitle: 'Код верыфікацыі', + subtitle: undefined, + title: 'Двухфактарная верыфікацыя', + }, + }, + signInEnterPasswordTitle: 'Увядзіце ваш пароль', + signUp: { + continue: { + actionLink: 'Увайсці', + actionText: 'Ужо ёсць уліковы запіс?', + subtitle: 'каб працягнуць працу ў "{{applicationName}}"', + title: 'Запоўніце ўсе палі', + }, + emailCode: { + formSubtitle: 'Увядзіце код верыфікацыі, адпраўлены вам на пошту', + formTitle: 'Код верыфікацыі', + resendButton: 'Пераадправіць код', + subtitle: 'каб працягнуць працу ў "{{applicationName}}"', + title: 'Верыфікуйце вашу пошту', + }, + emailLink: { + clientMismatch: { + subtitle: undefined, + title: undefined, + }, + formSubtitle: 'Выкарыстоўвайце верыфікацыйную спасылку, адпраўленую вам на пошту', + formTitle: 'Верыфікацыйная спасылка', + loading: { + title: 'Уваходзім...', + }, + resendButton: 'Пераадправіць спасылку', + subtitle: 'каб працягнуць працу ў "{{applicationName}}"', + title: 'Праверце вашу пошту', + verified: { + title: 'Успешны ўваход', + }, + verifiedSwitchTab: { + subtitle: 'Вярніцеся на новую адкрытую ўкладку, каб працягнуць', + subtitleNewTab: 'Вярніцеся на папярэднюю ўкладку, каб працягнуць', + title: 'Пошта верыфікавана', + }, + }, + phoneCode: { + formSubtitle: 'Увядзіце верыфікацыйны код, адправлены на Ваш тэлефон', + formTitle: 'Верыфікацыйны код', + resendButton: 'Пераадправіць код', + subtitle: 'каб працягнуць працу ў "{{applicationName}}"', + title: 'Верыфікуйце Ваш нумар тэлефона', + }, + start: { + actionLink: 'Увайсці', + actionLink__use_email: undefined, + actionLink__use_phone: undefined, + actionText: 'Ужо ёсць акаўнт?', + subtitle: 'каб працягнуць працу ў "{{applicationName}}"', + title: 'Стварыце Ваш акаўнт', + }, + }, + socialButtonsBlockButton: 'Працягнуць з дапамогай {{provider|titleize}}', + socialButtonsBlockButtonManyInView: undefined, + unstable__errors: { + already_a_member_in_organization: undefined, + captcha_invalid: + 'Рэгістрацыя не ўдалася з-за памылак бяспекі. Калі ласка, абнавіце старонку, каб паспрабаваць яшчэ раз, або звяжыцеся са службай падтрымкі для атрымання дапамогі.', + captcha_unavailable: + 'Рэгістрацыя не ўдалася з-за памылак праверкі ботаў. Калі ласка, абнавіце старонку, каб паспрабаваць яшчэ раз або звяжыцеся са службай падтрымкі для атрымання дапамогі.', + form_code_incorrect: undefined, + form_identifier_exists: undefined, + form_identifier_exists__email_address: undefined, + form_identifier_exists__phone_number: undefined, + form_identifier_exists__username: undefined, + form_identifier_not_found: undefined, + form_param_format_invalid: undefined, + form_param_format_invalid__email_address: + 'Адрас электроннай пошты павінен быць сапраўдным адрасам электроннай пошты.', + form_param_format_invalid__phone_number: 'Нумар тэлефона павінен быць у сапраўдным міжнародным фармаце', + form_param_max_length_exceeded__first_name: 'Імя не павінна перавышаць 256 сімвалаў.', + form_param_max_length_exceeded__last_name: 'Прозвішча не павінна перавышаць 256 сімвалаў.', + form_param_max_length_exceeded__name: 'Імя не павінна перавышаць 256 сімвалаў.', + form_param_nil: undefined, + form_param_value_invalid: undefined, + form_password_incorrect: undefined, + form_password_length_too_short: undefined, + form_password_not_strong_enough: 'Ваш пароль недастаткова надзейны.', + form_password_pwned: 'Гэты пароль быў узламаны і не можа быць выкарыстаны, паспрабуйце іншы пароль.', + form_password_pwned__sign_in: undefined, + form_password_size_in_bytes_exceeded: + 'Ваш пароль перавышае максімальна дапушчальнае колькасць байтаў, скараціце яго або выдаліце некаторыя спецыяльныя сімвалы.', + form_password_validation_failed: 'Неверагодны пароль', + form_username_invalid_character: undefined, + form_username_invalid_length: undefined, + identification_deletion_failed: 'Вы не можаце выдаліць вашу апошнюю ідэнтыфікацыю.', + not_allowed_access: undefined, + organization_domain_blocked: undefined, + organization_domain_common: undefined, + organization_membership_quota_exceeded: undefined, + organization_minimum_permissions_needed: undefined, + passkey_already_exists: undefined, + passkey_not_supported: undefined, + passkey_pa_not_supported: undefined, + passkey_registration_cancelled: undefined, + passkey_retrieval_cancelled: undefined, + passwordComplexity: { + maximumLength: 'менш за {{length}} сімвалаў', + minimumLength: '{{length}} або больш сімвалаў', + requireLowercase: 'літару ў ніжнім рэгістры', + requireNumbers: 'лічбу', + requireSpecialCharacter: 'спецыяльны сімвал', + requireUppercase: 'літару ў верхнім рэгістры', + sentencePrefix: 'Ваш пароль павінен утрымліваць', + }, + phone_number_exists: 'Гэты нумар тэлефона ўжо заняты. Калі ласка, паспрабуйце іншы.', + zxcvbn: { + couldBeStronger: 'Ваш пароль падыходзіць, але мог бы быць надзейнейшым. Паспрабуйце дадаць больш сімвалаў.', + goodPassword: 'Добрая праца. Гэта выдатны пароль.', + notEnough: 'Ваш пароль недастаткова надзейны.', + suggestions: { + allUppercase: 'Зрабіце заглавнымі некаторыя, але не ўсе літары.', + anotherWord: 'Дадайце больш слоў, якія менш распаўсюджаны.', + associatedYears: 'Пазбягайце гадоў, якія звязаны з вамі.', + capitalization: 'Зрабіце заглавнымі не толькі першую літару', + dates: 'Пазбягайце дат і гадоў, якія звязаны з вамі.', + l33t: 'Пазбягайце прадказальных замен літар, такіх як «@» замест «a».', + longerKeyboardPattern: + 'Выкарыстоўвайце больш доўгія спалучэнні клавіш і некалькі разоў змяняйце напрамак уводу.', + noNeed: 'Вы можаце ствараць надзейныя паролі без выкарыстання сімвалаў, лікаў або заглавных літар.', + pwned: 'Калі вы выкарыстоўваеце гэты пароль у іншым месцы, вам варта змяніць яго.', + recentYears: 'Пазбягайце апошніх гадоў.', + repeated: 'Пазбягайце паўтаральных слоў і сімвалаў.', + reverseWords: 'Пазбягайце адваротнага напісання часта выкарыстоўваных слоў.', + sequences: 'Пазбягайце частых паслядоўнасцяў сімвалаў.', + useWords: 'Выкарыстоўвайце некалькі слоў, але пазбягайце распаўсюджаных фраз.', + }, + warnings: { + common: 'Гэта распаўсюджаны пароль.', + commonNames: 'Распаўсюджаныя імёны і прозвішчы лёгка адгадаць.', + dates: 'Даты лёгка адгадаць.', + extendedRepeat: "Паўтаральныя шаблоны сімвалаў, такія як 'abcabcabc', лёгка адгадаць.", + keyPattern: 'Кароткія спалучэнні клавіш лёгка адгадаць.', + namesByThemselves: 'Адзінкі імёны або прозвішчы лёгка адгадаць.', + pwned: 'Ваш пароль быў раскрыты ў выніку ўцечкі даных у Інтэрнэце.', + recentYears: 'Апошнія гады лёгка адгадаць.', + sequences: "Частыя паслядоўнасці сімвалаў, такіх як 'abc', лёгка адгадаць.", + similarToCommon: 'Гэты пароль падобны на часта выкарыстоўваны пароль.', + simpleRepeat: "Паўтаральныя сімвалы, такія як 'aaa', лёгка адгадаць.", + straightRow: 'Простыя шэрагі клавіш на клавіятуры лёгка адгадаць.', + topHundred: 'Гэта часта выкарыстоўваны пароль.', + topTen: 'Гэта вельмі часта выкарыстоўваны пароль.', + userInputs: 'Не павінна быць ніякіх асабістых дадзеных або дадзеных, звязаных са старонкай.', + wordByItself: 'Аднакавыя словы лёгка адгадаць.', + }, + }, + }, + userButton: { + action__addAccount: 'Дадаць уліковы запіс', + action__manageAccount: 'Кіраванне ўліковым запісам', + action__signOut: 'Выйсці', + action__signOutAll: 'Выйсці з усіх уліковых запісаў', + }, + userProfile: { + backupCodePage: { + actionLabel__copied: 'Скапіравана!', + actionLabel__copy: 'Скапіраваць усё', + actionLabel__download: 'Спампаваць .txt', + actionLabel__print: 'Друкаваць', + infoText1: 'Рэзервовыя коды будуць уключаны для гэтага ўліковага запісу.', + infoText2: + 'Захоўвайце рэзервовыя коды ў тайне і захоўвайце іх у бяспецы. Вы можаце стварыць новыя рэзервовыя коды, калі падазраеце, што яны былі скампраметаваныя.', + subtitle__codelist: 'Захоўвайце іх у бяспецы і не паведамляйце нікому.', + successMessage: + 'Рэзервовыя коды ўключаны. Вы можаце выкарыстоўваць адзін з гэтых кодоў для ўваходу ў свой уліковы запіс, калі вы страціце доступ да свайго аўтэнтыфікацыйнага прылады. Кожны код можа быць выкарыстаны толькі аднойчы.', + successSubtitle: + 'Вы можаце выкарыстоўваць адзін з гэтых кодоў для ўваходу ў свой уліковы запіс, калі вы страціце доступ да свайго аўтэнтыфікацыйнага прылады.', + title: 'Дадаць рэзервовы код пацверджання', + title__codelist: 'Рэзервовы коды', + }, + connectedAccountPage: { + formHint: 'Выберыце правайдара для падключэння вашага ўліковага запісу.', + formHint__noAccounts: 'Няма даступных правайдараў знешніх уліковых запісаў.', + removeResource: { + messageLine1: '{{identifier}} будзе выдалены з вашага ўліковага запісу.', + messageLine2: + 'Вы больш не зможаце выкарыстоўваць гэты падключаны ўліковы запіс, і любыя залежныя функцыі больш не будуць працаваць.', + successMessage: '{{connectedAccount}} быў выдалены з вашага ўліковага запісу.', + title: 'Выдаліць падключаны ўліковы запіс', + }, + socialButtonsBlockButton: 'Падключыць уліковы запіс {{provider|titleize}}', + successMessage: 'Правайдар быў дададзены ў ваш уліковы запіс', + title: 'Дадаць падключаны ўліковы запіс', + }, + deletePage: { + actionDescription: "Увядзіце 'Выдаліць уліковы запіс' ніжэй, каб працягнуць.", + confirm: 'Выдаліць уліковы запіс', + messageLine1: 'Вы ўпэўнены, што хочаце выдаліць свой уліковы запіс?', + messageLine2: "Гэта дзеянне з'яўляецца бессрочным і неабратным.", + title: 'Выдаліць уліковы запіс', + }, + emailAddressPage: { + emailCode: { + formHint: 'На гэты адрас электроннай пошты будзе адпраўлена ліста з верификацыйным кодам.', + formSubtitle: 'Увядзіце верификацыйны код, адпраўлены на {{identifier}}', + formTitle: 'Верификацыйны код', + resendButton: 'Адправіць код паўторна', + successMessage: 'Адрас электроннай пошты {{identifier}} быў дададзены ў ваш уліковы запіс.', + }, + emailLink: { + formHint: 'На гэты адрас электроннай пошты будзе адпраўлена верифікацыйная спасылка.', + formSubtitle: 'Націсніце на верифікацыйную спасылку ў лісьце, адпраўленым на {{identifier}}', + formTitle: 'Верифікацыйная спасылка', + resendButton: 'Адправіць спасылку паўторна', + successMessage: 'Адрас электроннай пошты {{identifier}} быў дададзены ў ваш уліковы запіс.', + }, + removeResource: { + messageLine1: '{{identifier}} будзе выдалены з гэтага ўліковага запісу.', + messageLine2: 'Вы больш не зможаце ўваходзіць, выкарыстоўваючы гэты адрас электроннай пошты.', + successMessage: '{{emailAddress}} быў выдалены з вашага ўліковага запісу.', + title: 'Выдаліць адрас электроннай пошты', + }, + title: 'Дадаць адрас электроннай пошты', + verifyTitle: 'Праверыць адрас электроннай пошты', + }, + formButtonPrimary__add: 'Add', + formButtonPrimary__continue: 'Працягнуць', + formButtonPrimary__finish: 'Гатова', + formButtonPrimary__remove: 'Remove', + formButtonPrimary__save: 'Захаваць', + formButtonReset: 'Скасаванне', + mfaPage: { + formHint: 'Выберыце метад для дадавання.', + title: 'Дадаць двухфактарную аўтэнтыфікацыю', + }, + mfaPhoneCodePage: { + backButton: 'Выкарыстаць існуючы нумар', + primaryButton__addPhoneNumber: 'Дадаць нумар тэлефона', + removeResource: { + messageLine1: '{{identifier}} больш не будзе атрымліваць коды пацверджання пры ўваходзе ў сістэму.', + messageLine2: 'Ваша ўліковая запіс будзе менш абароненай. Вы ўпэўнены, што хочаце працягнуць?', + successMessage: 'Двухфактарная праверка з кодам з SMS была выдалена для {{mfaPhoneCode}}', + title: 'Выдаліць двухфактарную праверку', + }, + subtitle__availablePhoneNumbers: + 'Выберыце нумар тэлефона для рэгістрацыі ў двухфактарнай праверцы з кодам з SMS.', + subtitle__unavailablePhoneNumbers: + 'Няма даступных нумароў тэлефона для рэгістрацыі ў двухфактарнай праверцы з кодам з SMS.', + successMessage1: + 'Пры ўваходзе вам неабходна будзе ўвесці код пацверджання, адпраўлены на гэты нумар тэлефона, як дадатковы крок.', + successMessage2: + 'Захавайце гэтыя рэзервовыя коды і захоўвайце іх у бяспецы. Калі вы страціце доступ да свайго аўтэнтыфікацыйнага прылады, вы зможаце выкарыстоўваць рэзервовыя коды для ўваходу.', + successTitle: 'Праверка кода SMS уключана', + title: 'Дадаць праверку кодам з SMS', + }, + mfaTOTPPage: { + authenticatorApp: { + buttonAbleToScan__nonPrimary: 'Замест гэтага адсканіруйце QR-код', + buttonUnableToScan__nonPrimary: 'Не ўдаецца адсканаваць QR-код?', + infoText__ableToScan: + 'Настройце новы метад уваходу ў вашым прыкладным аўтэнтыфікатары і адсканіруйце наступны QR-код, каб звязаць яго з вашай уліковай запісю.', + infoText__unableToScan: + 'Настройце новы метад уваходу ў вашым прыкладным аўтэнтыфікатары і увядзіце ніжэй прадстаўлены ключ.', + inputLabel__unableToScan1: + 'Упэўніцеся, што ўключаныя адзіночныя паролі на аснове часу, затым завяршыце звязванне сваёй уліковай запісю.', + inputLabel__unableToScan2: + 'Акрамя таго, калі ваша прыкладанне аўтэнтыфікацыі падтрымлівае URI TOTP, вы таксама можаце скапіраваць поўны URI.', + }, + removeResource: { + messageLine1: + 'Код пацверджання з гэтага прыкладання аўтэнтыфікацыі больш не спатрэбіцца пры ўваходзе ў сістэму.', + messageLine2: 'Ваш уліковы запіс будзе менш абароненым. Вы ўпэўнены, што хочаце працягнуць?', + successMessage: 'Двухфактарная аўтэнтыфікацыя праз прыкладанне аўтэнтыфікацыі была выдалена.', + title: 'Выдаліць двухфактарную аўтэнтыфікацыю', + }, + successMessage: + 'Двухфактарная праверка ў цяперашні час уключана. Пры ўваходзе ў сістэму вам трэба будзе ўвесці код пацверджання з гэтага прыкладання як дадатковы крок.', + title: 'Дадаць прыкладанне аўтэнтыфікацыі', + verifySubtitle: 'Увядзіце код пацверджання, створаны вашым прыкладаннем аўтэнтыфікацыі', + verifyTitle: 'Код пацверджання', + }, + mobileButton__menu: 'Меню', + navbar: { + account: 'Профіль', + description: 'Кіруйце інфармацыяй аб вашым уліковым запісе.', + security: 'Бяспека', + title: 'Уліковы запіс', + }, + passkeyScreen: { + removeResource: { + messageLine1: undefined, + title: undefined, + }, + subtitle__rename: undefined, + title__rename: undefined, + }, + passwordPage: { + checkboxInfoText__signOutOfOtherSessions: + 'Рэкамендуецца выйсці з усіх іншых прылад, якія маглі выкарыстоўваць ваш стары пароль.', + readonly: + 'Ваш пароль пакуль не можа быць адрэдагаваны, бо вы можаце ўвайсці толькі праз прадпрыемстваў злучэння.', + successMessage__set: 'Ваш пароль усталяваны.', + successMessage__signOutOfOtherSessions: 'Усе іншыя прылады былі выведзены з сістэмы.', + successMessage__update: 'Ваш пароль быў абноўлены.', + title__set: 'Усталяваць пароль', + title__update: 'Змяніць пароль', + }, + phoneNumberPage: { + infoText: 'На гэты нумар тэлефона будзе адпраўлена тэкставае паведамленне з верифікацыйнай спасылкай.', + removeResource: { + messageLine1: '{{identifier}} будзе выдалены з гэтага ўліковага запісу.', + messageLine2: 'Вы больш не зможаце ўвайсці, выкарыстоўваючы гэты нумар тэлефона.', + successMessage: '{{phoneNumber}} быў выдалены з вашага ўліковага запісу.', + title: 'Выдаліць нумар тэлефона', + }, + successMessage: '{{identifier}} быў дададзены да вашага ўліковага запісу.', + title: 'Дадаць нумар тэлефона', + verifySubtitle: 'Увядзіце код пацверджання, адпраўлены на {{identifier}}', + verifyTitle: 'Праверыць нумар тэлефона', + }, + profilePage: { + fileDropAreaHint: 'Загрузіце малюнак у фарматах JPG, PNG, GIF або WEBP памерам менш за 10 МБ', + imageFormDestructiveActionSubtitle: 'Выдаліць малюнак', + imageFormSubtitle: 'Загрузіць малюнак', + imageFormTitle: 'Малюнак профілю', + readonly: 'Ваша інфармацыя профілю была прадстаўлена прадпрыемствам злучэння і не можа быць адрэдагавана.', + successMessage: 'Ваш профіль быў абноўлены.', + title: 'Абнавіць профіль', + }, + + start: { + activeDevicesSection: { + destructiveAction: 'Выйсці з прылады', + title: 'Актыўныя прылады', + }, + connectedAccountsSection: { + actionLabel__connectionFailed: 'Паспрабаваць зноў', + actionLabel__reauthorize: 'Аўтарызаваць зараз', + destructiveActionTitle: 'Выдаліць', + primaryButton: 'Падключыць уліковы запіс', + subtitle__disconnected: undefined, + subtitle__reauthorize: + 'Абноўлены неабходныя скопы, і вы можаце адчуваць абмежаваную функцыянальнасць. Калі ласка, перааўтарызуйце гэта прыкладанне, каб пазбегнуць любых праблем.', + title: 'Падключаныя ўліковыя запісы', + }, + dangerSection: { + deleteAccountButton: 'Выдаліць уліковы запіс', + title: 'Выдаленне ўліковага запісу', + }, + emailAddressesSection: { + destructiveAction: 'Выдаліць адрас электроннай пошты', + detailsAction__nonPrimary: 'Усталяваць у якасці асноўнага', + detailsAction__primary: 'Завяршыць праверку', + detailsAction__unverified: 'Завяршыць праверку', + primaryButton: 'Дадаць адрас электроннай пошты', + title: 'Адрасы электроннай пошты', + }, + enterpriseAccountsSection: { + title: 'Enterprise accounts', + }, + headerTitle__account: 'Уліковы запіс', + headerTitle__security: 'Бяспека', + mfaSection: { + backupCodes: { + actionLabel__regenerate: 'Сгенераваць коды', + headerTitle: 'Рэзервовыя коды', + subtitle__regenerate: + 'Атрымаеце новы набор бяспечных рэзервовых кодаў. Папярэднія рэзервовыя коды будуць выдалены і не могуць быць выкарыстаны.', + title__regenerate: 'Сгенераваць новыя рэзервовыя коды', + }, + phoneCode: { + actionLabel__setDefault: 'Усталяваць па змаўчанні', + destructiveActionLabel: 'Выдаліць нумар тэлефона', + }, + primaryButton: 'Дадаць двухфактарную аўтэнтыфікацыю', + title: 'Двухфактарная аўтэнтыфікацыя', + totp: { + destructiveActionTitle: 'Выдаліць', + headerTitle: 'Прыкладное аўтэнтыфікацыі', + }, + }, + passkeysSection: { + menuAction__destructive: undefined, + menuAction__rename: undefined, + title: undefined, + }, + passwordSection: { + primaryButton__setPassword: 'Усталяваць пароль', + primaryButton__updatePassword: 'Змяніць пароль', + title: 'Пароль', + }, + phoneNumbersSection: { + destructiveAction: 'Выдаліць нумар тэлефона', + detailsAction__nonPrimary: 'Усталяваць як асноўны', + detailsAction__primary: 'Завяршыць праверку', + detailsAction__unverified: 'Завяршыць праверку', + primaryButton: 'Дадаць нумар тэлефона', + title: 'Нумары тэлефонаў', + }, + profileSection: { + primaryButton: undefined, + title: 'Профіль', + }, + usernameSection: { + primaryButton__setUsername: 'Усталяваць імя карыстальніка', + primaryButton__updateUsername: 'Змяніць імя карыстальніка', + title: 'Імя карыстальніка', + }, + web3WalletsSection: { + destructiveAction: 'Выдаліць кашалёк', + primaryButton: 'Web3 кашалькі', + title: 'Web3 кашалькі', + }, + }, + usernamePage: { + successMessage: 'Імя карыстальніка было абноўлена.', + title__set: 'Абнавіць імя карыстальніка', + title__update: 'Абнавіць імя карыстальніка', + }, + web3WalletPage: { + removeResource: { + messageLine1: '{{identifier}} будзе выдалены з гэтага ўліковага запісу.', + messageLine2: 'Вы больш не зможаце ўвайсці, выкарыстоўваючы гэты web3 кашалёк.', + successMessage: '{{web3Wallet}} быў выдалены з вашага ўліковага запісу.', + title: 'Выдаліць web3 кашалёк', + }, + subtitle__availableWallets: 'Выберыце web3 кашалёк для падключэння да вашага ўліковага запісу.', + subtitle__unavailableWallets: 'Няма даступных web3 кашалькоў.', + successMessage: 'Кашалёк быў дададзены да вашага ўліковага запісу.', + title: 'Дадаць web3 кашалёк', + web3WalletButtonsBlockButton: undefined, + }, + }, +} as const; diff --git a/packages/localizations/src/index.ts b/packages/localizations/src/index.ts index 6ec17386e87..15ab1d5539d 100644 --- a/packages/localizations/src/index.ts +++ b/packages/localizations/src/index.ts @@ -1,4 +1,5 @@ export { arSA } from './ar-SA'; +export { beBY } from './be-BY'; export { enUS } from './en-US'; export { frFR } from './fr-FR'; export { daDK } from './da-DK'; diff --git a/packages/localizations/src/utils/generate.ts b/packages/localizations/src/utils/generate.ts index f22f673203f..72a980a35b2 100644 --- a/packages/localizations/src/utils/generate.ts +++ b/packages/localizations/src/utils/generate.ts @@ -10,6 +10,7 @@ import * as path from 'node:path'; import * as fs from 'fs'; import { arSA } from '../ar-SA'; +import { beBY } from '../be-BY'; import { bgBG } from '../bg-BG'; import { csCZ } from '../cs-CZ'; import { daDK } from '../da-DK'; @@ -159,6 +160,7 @@ function run(langObj: any, name: string) { run(enUS, 'en-US'); run(elGR, 'el-GR'); run(arSA, 'ar-SA'); +run(beBY, 'be-BY'); run(csCZ, 'cs-CZ'); run(daDK, 'da-DK'); run(deDE, 'de-DE'); diff --git a/packages/react/src/contexts/__tests__/ClerkProvider.test.tsx b/packages/react/src/contexts/__tests__/ClerkProvider.test.tsx index 5b1662c8b0c..b6cbeb900c9 100644 --- a/packages/react/src/contexts/__tests__/ClerkProvider.test.tsx +++ b/packages/react/src/contexts/__tests__/ClerkProvider.test.tsx @@ -1,4 +1,5 @@ import { + beBY, csCZ, deDE, enUS, @@ -135,6 +136,11 @@ describe('ClerkProvider', () => { }); it('works with all our prebuilt localizations', () => { + expectTypeOf({ + ...defaultProps, + localization: beBY, + }).toMatchTypeOf(); + expectTypeOf({ ...defaultProps, localization: deDE, From b720abe28f836996c47dd2e9fc9563d9e5778e43 Mon Sep 17 00:00:00 2001 From: Tom Milewski Date: Fri, 4 Oct 2024 13:47:29 -0400 Subject: [PATCH 2/2] Remove explicit clerk-react changeset --- .changeset/unlucky-crabs-hunt.md | 1 - 1 file changed, 1 deletion(-) diff --git a/.changeset/unlucky-crabs-hunt.md b/.changeset/unlucky-crabs-hunt.md index bbae25108c9..28a249609e1 100644 --- a/.changeset/unlucky-crabs-hunt.md +++ b/.changeset/unlucky-crabs-hunt.md @@ -1,6 +1,5 @@ --- "@clerk/localizations": minor -"@clerk/clerk-react": minor --- Add be-BY translation