@thunderid/javascript 1.0.4 → 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.cjs +183 -2
- package/dist/edge/index.js +182 -3
- package/dist/i18n/models/i18n.d.ts +8 -0
- package/dist/i18n/models/i18n.d.ts.map +1 -1
- package/dist/i18n/translations/en-US.d.ts.map +1 -1
- package/dist/i18n/translations/fr-FR.d.ts.map +1 -1
- package/dist/i18n/translations/hi-IN.d.ts.map +1 -1
- package/dist/i18n/translations/ja-JP.d.ts.map +1 -1
- package/dist/i18n/translations/pt-BR.d.ts.map +1 -1
- package/dist/i18n/translations/pt-PT.d.ts.map +1 -1
- package/dist/i18n/translations/si-LK.d.ts.map +1 -1
- package/dist/i18n/translations/ta-IN.d.ts.map +1 -1
- package/dist/i18n/translations/te-IN.d.ts.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +182 -3
- package/dist/utils/getBaseLanguage.d.ts +18 -0
- package/dist/utils/getBaseLanguage.d.ts.map +1 -0
- package/dist/utils/normalizeLocaleTag.d.ts +20 -0
- package/dist/utils/normalizeLocaleTag.d.ts.map +1 -0
- package/dist/utils/resolveFlowTemplateLiterals.d.ts +3 -0
- package/dist/utils/resolveFlowTemplateLiterals.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/cjs/index.cjs
CHANGED
|
@@ -4359,6 +4359,38 @@ function resolveMeta(path, meta) {
|
|
|
4359
4359
|
return value != null ? String(value) : "";
|
|
4360
4360
|
}
|
|
4361
4361
|
|
|
4362
|
+
//#endregion
|
|
4363
|
+
//#region src/utils/isTranslationFlowTemplateLiteral.ts
|
|
4364
|
+
/**
|
|
4365
|
+
* Regular expression to match a translation flow template literal `{{t(key)}}` (exact, full-string match).
|
|
4366
|
+
* Optional whitespace around `{{` / `}}` is allowed.
|
|
4367
|
+
*/
|
|
4368
|
+
const TRANSLATION_FLOW_TEMPLATE_LITERAL_PATTERN = /^\{\{\s*t\([^)]+\)\s*\}\}$/;
|
|
4369
|
+
/**
|
|
4370
|
+
* Regular expression to extract the key from a translation flow template literal `{{t(key)}}`.
|
|
4371
|
+
*/
|
|
4372
|
+
const TRANSLATION_FLOW_TEMPLATE_LITERAL_KEY_PATTERN = /^\{\{\s*t\(([^)]+)\)\s*\}\}$/;
|
|
4373
|
+
/**
|
|
4374
|
+
* Check if a string is exactly a translation flow template literal (`{{ t(key) }}`).
|
|
4375
|
+
*
|
|
4376
|
+
* This checks that the **entire** string is the template pattern. Use
|
|
4377
|
+
* {@link FLOW_TEMPLATE_LITERAL_REGEX} from `parseFlowTemplateLiteral` to detect
|
|
4378
|
+
* templates embedded inside a larger string.
|
|
4379
|
+
*
|
|
4380
|
+
* @param value - The string to test.
|
|
4381
|
+
* @returns `true` if the trimmed value matches the pattern, `false` otherwise.
|
|
4382
|
+
*
|
|
4383
|
+
* @example
|
|
4384
|
+
* ```typescript
|
|
4385
|
+
* isTranslationFlowTemplateLiteral('{{ t(signin:heading) }}') // true
|
|
4386
|
+
* isTranslationFlowTemplateLiteral('hello world') // false
|
|
4387
|
+
* isTranslationFlowTemplateLiteral('Login via {{ t(key) }}') // false — embedded, not exact
|
|
4388
|
+
* ```
|
|
4389
|
+
*/
|
|
4390
|
+
function isTranslationFlowTemplateLiteral(value) {
|
|
4391
|
+
return TRANSLATION_FLOW_TEMPLATE_LITERAL_PATTERN.test(value.trim());
|
|
4392
|
+
}
|
|
4393
|
+
|
|
4362
4394
|
//#endregion
|
|
4363
4395
|
//#region src/utils/parseFlowTemplateLiteral.ts
|
|
4364
4396
|
/**
|
|
@@ -4445,6 +4477,13 @@ function parseFlowTemplateLiteral(content) {
|
|
|
4445
4477
|
*/
|
|
4446
4478
|
const FLOW_TEMPLATE_LITERAL_REGEX_GLOBAL = new RegExp(FLOW_TEMPLATE_LITERAL_REGEX.source, "g");
|
|
4447
4479
|
/**
|
|
4480
|
+
* Resolves a `{{ t(key) }}` translation key, converting its colon-separated namespace to dots
|
|
4481
|
+
* e.g. "signin:fields.password.label" → "signin.fields.password.label".
|
|
4482
|
+
*/
|
|
4483
|
+
function resolveTranslation(key, t) {
|
|
4484
|
+
return t(key.replace(/:/g, "."));
|
|
4485
|
+
}
|
|
4486
|
+
/**
|
|
4448
4487
|
* Resolves all flow template literal expressions in a string.
|
|
4449
4488
|
*
|
|
4450
4489
|
* Supported patterns:
|
|
@@ -4457,6 +4496,9 @@ const FLOW_TEMPLATE_LITERAL_REGEX_GLOBAL = new RegExp(FLOW_TEMPLATE_LITERAL_REGE
|
|
|
4457
4496
|
* Flow template literals can be embedded inside larger strings:
|
|
4458
4497
|
* `"Login using {{ meta(application.name) }}"` → `"Login using My App"`
|
|
4459
4498
|
*
|
|
4499
|
+
* A meta field can itself hold a translation reference instead of final display text — that case is
|
|
4500
|
+
* detected and resolved via `t()` too, so the raw template never reaches the screen.
|
|
4501
|
+
*
|
|
4460
4502
|
* Unrecognized expressions are left unchanged.
|
|
4461
4503
|
*
|
|
4462
4504
|
* @template TFn - The concrete translation function type.
|
|
@@ -4469,8 +4511,15 @@ function resolveFlowTemplateLiterals(text, { t, meta }) {
|
|
|
4469
4511
|
if (!text) return "";
|
|
4470
4512
|
return text.replace(FLOW_TEMPLATE_LITERAL_REGEX_GLOBAL, (match, content) => {
|
|
4471
4513
|
const parsed = parseFlowTemplateLiteral(content.trim());
|
|
4472
|
-
if (parsed.type === FlowTemplateLiteralType.TRANSLATION && parsed.key) return
|
|
4473
|
-
if (parsed.type === FlowTemplateLiteralType.META && parsed.key && meta)
|
|
4514
|
+
if (parsed.type === FlowTemplateLiteralType.TRANSLATION && parsed.key) return resolveTranslation(parsed.key, t);
|
|
4515
|
+
if (parsed.type === FlowTemplateLiteralType.META && parsed.key && meta) {
|
|
4516
|
+
const value = resolveMeta(parsed.key, meta);
|
|
4517
|
+
if (isTranslationFlowTemplateLiteral(value)) {
|
|
4518
|
+
const innerKey = value.trim().match(TRANSLATION_FLOW_TEMPLATE_LITERAL_KEY_PATTERN)[1];
|
|
4519
|
+
return resolveTranslation(innerKey, t);
|
|
4520
|
+
}
|
|
4521
|
+
return value;
|
|
4522
|
+
}
|
|
4474
4523
|
return match;
|
|
4475
4524
|
});
|
|
4476
4525
|
}
|
|
@@ -4575,6 +4624,72 @@ function resolveLocaleEmoji(locale) {
|
|
|
4575
4624
|
}
|
|
4576
4625
|
var resolveLocaleEmoji_default = resolveLocaleEmoji;
|
|
4577
4626
|
|
|
4627
|
+
//#endregion
|
|
4628
|
+
//#region src/utils/getBaseLanguage.ts
|
|
4629
|
+
/**
|
|
4630
|
+
* Resolves a BCP 47 locale tag to its base (primary) language subtag, so that
|
|
4631
|
+
* region-qualified tags compare equal to their bare form (e.g. "en-US" and "en"
|
|
4632
|
+
* both resolve to "en"). Uses `Intl.Locale` when available, falling back to a
|
|
4633
|
+
* simple split on the first "-".
|
|
4634
|
+
*
|
|
4635
|
+
* @param tag - BCP 47 locale tag to resolve (e.g. "en-US", "hi-IN", "en")
|
|
4636
|
+
* @returns The lowercased base language subtag (e.g. "en", "hi")
|
|
4637
|
+
*
|
|
4638
|
+
* @example
|
|
4639
|
+
* ```typescript
|
|
4640
|
+
* getBaseLanguage('en-US') // 'en'
|
|
4641
|
+
* getBaseLanguage('hi-IN') // 'hi'
|
|
4642
|
+
* getBaseLanguage('en') // 'en'
|
|
4643
|
+
* ```
|
|
4644
|
+
*/
|
|
4645
|
+
function getBaseLanguage(tag) {
|
|
4646
|
+
try {
|
|
4647
|
+
return new Intl.Locale(tag).language.toLowerCase();
|
|
4648
|
+
} catch {
|
|
4649
|
+
return tag.split("-")[0].toLowerCase();
|
|
4650
|
+
}
|
|
4651
|
+
}
|
|
4652
|
+
|
|
4653
|
+
//#endregion
|
|
4654
|
+
//#region src/utils/normalizeLocaleTag.ts
|
|
4655
|
+
/**
|
|
4656
|
+
* Lowercases the language subtag and uppercases a 2-letter region subtag (the common
|
|
4657
|
+
* `language-REGION` shape), leaving everything else as-is. Not a full BCP 47 canonicalizer,
|
|
4658
|
+
* but deterministic and dependency-free, so case-only differences still compare equal without
|
|
4659
|
+
* `Intl.Locale`.
|
|
4660
|
+
*/
|
|
4661
|
+
function canonicalizeTagManually(tag) {
|
|
4662
|
+
return tag.split("-").map((part, index) => {
|
|
4663
|
+
if (index === 0) return part.toLowerCase();
|
|
4664
|
+
return part.length === 2 ? part.toUpperCase() : part;
|
|
4665
|
+
}).join("-");
|
|
4666
|
+
}
|
|
4667
|
+
/**
|
|
4668
|
+
* Resolves a BCP 47 locale tag to its canonical form, so tags that differ only in casing or
|
|
4669
|
+
* separator style compare equal (e.g. "en-us" and "en-US"). Uses `Intl.Locale` when available;
|
|
4670
|
+
* falls back to {@link canonicalizeTagManually} when it isn't (or rejects the input), so exact
|
|
4671
|
+
* dialect matching stays consistent either way.
|
|
4672
|
+
*
|
|
4673
|
+
* Unlike {@link getBaseLanguage}, this preserves the region/dialect — use it to test for an
|
|
4674
|
+
* *exact* match (e.g. "en-IN" against "en-IN"), not a same-base-language match.
|
|
4675
|
+
*
|
|
4676
|
+
* @param tag - BCP 47 locale tag to resolve (e.g. "en-US", "fr-CA")
|
|
4677
|
+
* @returns The canonical form of the tag
|
|
4678
|
+
*
|
|
4679
|
+
* @example
|
|
4680
|
+
* ```typescript
|
|
4681
|
+
* normalizeLocaleTag('en-us') // 'en-US'
|
|
4682
|
+
* normalizeLocaleTag('fr-CA') // 'fr-CA'
|
|
4683
|
+
* ```
|
|
4684
|
+
*/
|
|
4685
|
+
function normalizeLocaleTag(tag) {
|
|
4686
|
+
try {
|
|
4687
|
+
return new Intl.Locale(tag).toString();
|
|
4688
|
+
} catch {
|
|
4689
|
+
return canonicalizeTagManually(tag);
|
|
4690
|
+
}
|
|
4691
|
+
}
|
|
4692
|
+
|
|
4578
4693
|
//#endregion
|
|
4579
4694
|
//#region src/utils/evaluateValidationRule.ts
|
|
4580
4695
|
/**
|
|
@@ -4826,6 +4941,7 @@ const en_US = {
|
|
|
4826
4941
|
"validation.maxLength.invalid": "This value is too long.",
|
|
4827
4942
|
"signin.heading": "Sign In",
|
|
4828
4943
|
"signin.subheading": "Welcome back! Please sign in to continue.",
|
|
4944
|
+
"signin.images.app_logo.alt": "Application logo",
|
|
4829
4945
|
"signup.heading": "Sign Up",
|
|
4830
4946
|
"signup.subheading": "Create a new account to get started.",
|
|
4831
4947
|
"email.otp.heading": "OTP Verification",
|
|
@@ -4874,6 +4990,13 @@ const en_US = {
|
|
|
4874
4990
|
"organization.create.buttons.create_organization.loading.text": "Creating...",
|
|
4875
4991
|
"organization.create.buttons.cancel.text": "Cancel",
|
|
4876
4992
|
"messages.loading.placeholder": "Loading...",
|
|
4993
|
+
"consent.required": "Required",
|
|
4994
|
+
"consent.essential_claims": "Essential Attributes",
|
|
4995
|
+
"consent.optional_claims": "Optional Attributes",
|
|
4996
|
+
"consent.authorize_scope": "Permissions",
|
|
4997
|
+
"consent.essential_claims.info": "These attributes are required for the service to function properly.",
|
|
4998
|
+
"consent.optional_claims.info": "These attributes are optional and can be provided at your discretion.",
|
|
4999
|
+
"consent.authorize_scope.info": "These permissions allow the service to access additional features.",
|
|
4877
5000
|
"errors.heading": "Error",
|
|
4878
5001
|
"errors.signin.components.not.available": "Sign-in form is not available at the moment. Please try again later.",
|
|
4879
5002
|
"errors.signin.initialization": "An error occurred while initializing. Please try again later.",
|
|
@@ -4939,6 +5062,7 @@ const fr_FR = {
|
|
|
4939
5062
|
"validation.maxLength.invalid": "Cette valeur est trop longue.",
|
|
4940
5063
|
"signin.heading": "Se connecter",
|
|
4941
5064
|
"signin.subheading": "Entrez vos identifiants pour continuer.",
|
|
5065
|
+
"signin.images.app_logo.alt": "Logo de l'application",
|
|
4942
5066
|
"signup.heading": "S'inscrire",
|
|
4943
5067
|
"signup.subheading": "Créez un nouveau compte pour commencer.",
|
|
4944
5068
|
"email.otp.heading": "Vérification OTP",
|
|
@@ -4987,6 +5111,13 @@ const fr_FR = {
|
|
|
4987
5111
|
"organization.create.buttons.create_organization.loading.text": "Création en cours...",
|
|
4988
5112
|
"organization.create.buttons.cancel.text": "Annuler",
|
|
4989
5113
|
"messages.loading.placeholder": "Chargement...",
|
|
5114
|
+
"consent.required": "Obligatoire",
|
|
5115
|
+
"consent.essential_claims": "Attributs essentiels",
|
|
5116
|
+
"consent.optional_claims": "Attributs facultatifs",
|
|
5117
|
+
"consent.authorize_scope": "Autorisations",
|
|
5118
|
+
"consent.essential_claims.info": "Ces attributs sont nécessaires au bon fonctionnement du service.",
|
|
5119
|
+
"consent.optional_claims.info": "Ces attributs sont facultatifs et peuvent être fournis à votre discrétion.",
|
|
5120
|
+
"consent.authorize_scope.info": "Ces autorisations permettent au service d'accéder à des fonctionnalités supplémentaires.",
|
|
4990
5121
|
"errors.heading": "Erreur",
|
|
4991
5122
|
"errors.signin.initialization": "Une erreur est survenue lors de l'initialisation. Veuillez réessayer plus tard.",
|
|
4992
5123
|
"errors.signin.flow.failure": "Une erreur est survenue lors du flux de connexion. Veuillez réessayer plus tard.",
|
|
@@ -5052,6 +5183,7 @@ const te_IN = {
|
|
|
5052
5183
|
"validation.maxLength.invalid": "ఈ విలువ చాలా పెద్దది.",
|
|
5053
5184
|
"signin.heading": "సైన్ ఇన్ చేయండి",
|
|
5054
5185
|
"signin.subheading": "కొనసాగించడానికి మీ వివరాలు ఇవ్వండి.",
|
|
5186
|
+
"signin.images.app_logo.alt": "అప్లికేషన్ లోగో",
|
|
5055
5187
|
"signup.heading": "సైన్ అప్ చేయండి",
|
|
5056
5188
|
"signup.subheading": "కొత్త అకౌంట్ సృష్టించండి.",
|
|
5057
5189
|
"email.otp.heading": "OTP వెరిఫికేషన్",
|
|
@@ -5100,6 +5232,13 @@ const te_IN = {
|
|
|
5100
5232
|
"organization.create.buttons.create_organization.loading.text": "సృష్టిస్తోంది...",
|
|
5101
5233
|
"organization.create.buttons.cancel.text": "రద్దు చేయండి",
|
|
5102
5234
|
"messages.loading.placeholder": "లోడ్ అవుతోంది...",
|
|
5235
|
+
"consent.required": "తప్పనిసరి",
|
|
5236
|
+
"consent.essential_claims": "ఆవశ్యక లక్షణాలు",
|
|
5237
|
+
"consent.optional_claims": "ఐచ్ఛిక లక్షణాలు",
|
|
5238
|
+
"consent.authorize_scope": "అనుమతులు",
|
|
5239
|
+
"consent.essential_claims.info": "సేవ సరిగ్గా పనిచేయడానికి ఈ లక్షణాలు అవసరం.",
|
|
5240
|
+
"consent.optional_claims.info": "ఈ లక్షణాలు ఐచ్ఛికం మరియు మీ విచక్షణ మేరకు అందించవచ్చు.",
|
|
5241
|
+
"consent.authorize_scope.info": "ఈ అనుమతులు సేవను అదనపు ఫీచర్లను యాక్సెస్ చేయడానికి అనుమతిస్తాయి.",
|
|
5103
5242
|
"errors.heading": "లోపం",
|
|
5104
5243
|
"errors.signin.initialization": "ప్రారంభించేటప్పుడు లోపం వచ్చింది. దయచేసి తరువాత మళ్లీ ప్రయత్నించండి.",
|
|
5105
5244
|
"errors.signin.flow.failure": "సైన్ ఇన్ ప్రక్రియలో లోపం వచ్చింది. దయచేసి తరువాత మళ్లీ ప్రయత్నించండి.",
|
|
@@ -5165,6 +5304,7 @@ const hi_IN = {
|
|
|
5165
5304
|
"validation.maxLength.invalid": "यह मान बहुत लंबा है।",
|
|
5166
5305
|
"signin.heading": "साइन इन",
|
|
5167
5306
|
"signin.subheading": "जारी रखने के लिए अपनी प्रमाणिक जानकारी दर्ज करें।",
|
|
5307
|
+
"signin.images.app_logo.alt": "एप्लिकेशन लोगो",
|
|
5168
5308
|
"signup.heading": "साइन अप",
|
|
5169
5309
|
"signup.subheading": "शुरू करने के लिए नया खाता बनाएं।",
|
|
5170
5310
|
"email.otp.heading": "OTP सत्यापन",
|
|
@@ -5213,6 +5353,13 @@ const hi_IN = {
|
|
|
5213
5353
|
"organization.create.buttons.create_organization.loading.text": "बनाया जा रहा है...",
|
|
5214
5354
|
"organization.create.buttons.cancel.text": "रद्द करें",
|
|
5215
5355
|
"messages.loading.placeholder": "लोड हो रहा है...",
|
|
5356
|
+
"consent.required": "आवश्यक",
|
|
5357
|
+
"consent.essential_claims": "आवश्यक विशेषताएँ",
|
|
5358
|
+
"consent.optional_claims": "वैकल्पिक विशेषताएँ",
|
|
5359
|
+
"consent.authorize_scope": "अनुमतियाँ",
|
|
5360
|
+
"consent.essential_claims.info": "सेवा के सही ढंग से कार्य करने के लिए ये विशेषताएँ आवश्यक हैं।",
|
|
5361
|
+
"consent.optional_claims.info": "ये विशेषताएँ वैकल्पिक हैं और आपके विवेकानुसार प्रदान की जा सकती हैं।",
|
|
5362
|
+
"consent.authorize_scope.info": "ये अनुमतियाँ सेवा को अतिरिक्त सुविधाओं तक पहुँचने की अनुमति देती हैं।",
|
|
5216
5363
|
"errors.heading": "त्रुटि",
|
|
5217
5364
|
"errors.signin.initialization": "इनिशियलाइज़ेशन में त्रुटि हुई। कृपया बाद में पुनः प्रयास करें।",
|
|
5218
5365
|
"errors.signin.flow.failure": "साइन-इन प्रक्रिया में त्रुटि। कृपया बाद में पुनः प्रयास करें।",
|
|
@@ -5278,6 +5425,7 @@ const pt_BR = {
|
|
|
5278
5425
|
"validation.maxLength.invalid": "Este valor é muito longo.",
|
|
5279
5426
|
"signin.heading": "Entrar",
|
|
5280
5427
|
"signin.subheading": "Digite suas credencias para continuar.",
|
|
5428
|
+
"signin.images.app_logo.alt": "Logotipo do aplicativo",
|
|
5281
5429
|
"signup.heading": "Cadastra-se",
|
|
5282
5430
|
"signup.subheading": "Crie uma nova conta para iniciar.",
|
|
5283
5431
|
"email.otp.heading": "Verificação OTP",
|
|
@@ -5326,6 +5474,13 @@ const pt_BR = {
|
|
|
5326
5474
|
"organization.create.buttons.create_organization.loading.text": "Criando...",
|
|
5327
5475
|
"organization.create.buttons.cancel.text": "Cancelar",
|
|
5328
5476
|
"messages.loading.placeholder": "Carregando...",
|
|
5477
|
+
"consent.required": "Obrigatório",
|
|
5478
|
+
"consent.essential_claims": "Atributos essenciais",
|
|
5479
|
+
"consent.optional_claims": "Atributos opcionais",
|
|
5480
|
+
"consent.authorize_scope": "Permissões",
|
|
5481
|
+
"consent.essential_claims.info": "Esses atributos são necessários para o funcionamento adequado do serviço.",
|
|
5482
|
+
"consent.optional_claims.info": "Esses atributos são opcionais e podem ser fornecidos a seu critério.",
|
|
5483
|
+
"consent.authorize_scope.info": "Essas permissões permitem que o serviço acesse recursos adicionais.",
|
|
5329
5484
|
"errors.heading": "Erro",
|
|
5330
5485
|
"errors.signin.initialization": "Ocorreu um erro ao inicializar. Tente novamente mais tarde.",
|
|
5331
5486
|
"errors.signin.flow.failure": "Ocorreu um erro durante o login. Tente novamente mais tarde.",
|
|
@@ -5391,6 +5546,7 @@ const pt_PT = {
|
|
|
5391
5546
|
"validation.maxLength.invalid": "Este valor é demasiado longo.",
|
|
5392
5547
|
"signin.heading": "Iniciar Sessão",
|
|
5393
5548
|
"signin.subheading": "Introduza as suas credenciais para continuar.",
|
|
5549
|
+
"signin.images.app_logo.alt": "Logótipo da aplicação",
|
|
5394
5550
|
"signup.heading": "Registar-se",
|
|
5395
5551
|
"signup.subheading": "Crie uma nova conta para começar.",
|
|
5396
5552
|
"email.otp.heading": "Verificação OTP",
|
|
@@ -5439,6 +5595,13 @@ const pt_PT = {
|
|
|
5439
5595
|
"organization.create.buttons.create_organization.loading.text": "A criar...",
|
|
5440
5596
|
"organization.create.buttons.cancel.text": "Cancelar",
|
|
5441
5597
|
"messages.loading.placeholder": "A carregar...",
|
|
5598
|
+
"consent.required": "Obrigatório",
|
|
5599
|
+
"consent.essential_claims": "Atributos essenciais",
|
|
5600
|
+
"consent.optional_claims": "Atributos opcionais",
|
|
5601
|
+
"consent.authorize_scope": "Permissões",
|
|
5602
|
+
"consent.essential_claims.info": "Estes atributos são necessários para o correto funcionamento do serviço.",
|
|
5603
|
+
"consent.optional_claims.info": "Estes atributos são opcionais e podem ser fornecidos ao seu critério.",
|
|
5604
|
+
"consent.authorize_scope.info": "Estas permissões permitem que o serviço aceda a funcionalidades adicionais.",
|
|
5442
5605
|
"errors.heading": "Erro",
|
|
5443
5606
|
"errors.signin.initialization": "Ocorreu um erro ao inicializar. Tente novamente mais tarde.",
|
|
5444
5607
|
"errors.signin.flow.failure": "Ocorreu um erro durante o início de sessão. Tente novamente mais tarde.",
|
|
@@ -5504,6 +5667,7 @@ const ta_IN = {
|
|
|
5504
5667
|
"validation.maxLength.invalid": "இந்த மதிப்பு மிகவும் நீளமானது.",
|
|
5505
5668
|
"signin.heading": "உள்நுழை",
|
|
5506
5669
|
"signin.subheading": "தொடர உங்கள் சான்றுகளை உள்ளிடவும்.",
|
|
5670
|
+
"signin.images.app_logo.alt": "பயன்பாட்டு லோகோ",
|
|
5507
5671
|
"signup.heading": "பதிவு செய்",
|
|
5508
5672
|
"signup.subheading": "தொடங்க புதிய கணக்கை உருவாக்கவும்.",
|
|
5509
5673
|
"email.otp.heading": "OTP சரிபார்ப்பு",
|
|
@@ -5552,6 +5716,13 @@ const ta_IN = {
|
|
|
5552
5716
|
"organization.create.buttons.create_organization.loading.text": "உருவாக்கப்படுகிறது...",
|
|
5553
5717
|
"organization.create.buttons.cancel.text": "ரத்து செய்",
|
|
5554
5718
|
"messages.loading.placeholder": "ஏற்றப்படுகிறது...",
|
|
5719
|
+
"consent.required": "தேவையானது",
|
|
5720
|
+
"consent.essential_claims": "அத்தியாவசிய பண்புகள்",
|
|
5721
|
+
"consent.optional_claims": "விருப்பத் பண்புகள்",
|
|
5722
|
+
"consent.authorize_scope": "அனுமதிகள்",
|
|
5723
|
+
"consent.essential_claims.info": "சேவை சரியாக செயல்பட இந்த பண்புகள் தேவை.",
|
|
5724
|
+
"consent.optional_claims.info": "இந்த பண்புகள் விருப்பத்தேர்வு மற்றும் உங்கள் விருப்பப்படி வழங்கப்படலாம்.",
|
|
5725
|
+
"consent.authorize_scope.info": "இந்த அனுமதிகள் கூடுதல் அம்சங்களை அணுக சேவைக்கு உதவுகின்றன.",
|
|
5555
5726
|
"errors.heading": "பிழை",
|
|
5556
5727
|
"errors.signin.initialization": "தொடக்கத்தில் பிழை ஏற்பட்டது. பின்னர் மீண்டும் முயற்சிக்கவும்.",
|
|
5557
5728
|
"errors.signin.flow.failure": "உள்நுழைவு செயல்பாட்டின் போது பிழை ஏற்பட்டது. பின்னர் மீண்டும் முயற்சிக்கவும்.",
|
|
@@ -5617,6 +5788,7 @@ const si_LK = {
|
|
|
5617
5788
|
"validation.maxLength.invalid": "මෙම අගය ඉතා දිගයි.",
|
|
5618
5789
|
"signin.heading": "ලොග් වෙන්න",
|
|
5619
5790
|
"signin.subheading": "ඉදිරියට යාමට ඔබේ සත්යාපන තොරතුරු ඇතුළත් කරන්න.",
|
|
5791
|
+
"signin.images.app_logo.alt": "යෙදුමේ ලාංඡනය",
|
|
5620
5792
|
"signup.heading": "ලියාපදිංචි වන්න",
|
|
5621
5793
|
"signup.subheading": "ආරම්භ කිරීමට නව ගිණුමක් සාදන්න.",
|
|
5622
5794
|
"email.otp.heading": "OTP සත්යාපනය",
|
|
@@ -5665,6 +5837,13 @@ const si_LK = {
|
|
|
5665
5837
|
"organization.create.buttons.create_organization.loading.text": "සාදමින්...",
|
|
5666
5838
|
"organization.create.buttons.cancel.text": "අවලංගු කරන්න",
|
|
5667
5839
|
"messages.loading.placeholder": "ලෝඩ් වෙමින්...",
|
|
5840
|
+
"consent.required": "අවශ්යයි",
|
|
5841
|
+
"consent.essential_claims": "අත්යවශ්ය ගුණාංග",
|
|
5842
|
+
"consent.optional_claims": "විකල්ප ගුණාංග",
|
|
5843
|
+
"consent.authorize_scope": "අවසර",
|
|
5844
|
+
"consent.essential_claims.info": "සේවාව නිසි ලෙස ක්රියාත්මක වීම සඳහා මෙම ගුණාංග අවශ්ය වේ.",
|
|
5845
|
+
"consent.optional_claims.info": "මෙම ගුණාංග විකල්ප වන අතර ඔබේ අභිමතය පරිදි සැපයිය හැක.",
|
|
5846
|
+
"consent.authorize_scope.info": "මෙම අවසරයන් මගින් සේවාවට අමතර විශේෂාංග වෙත ප්රවේශ වීමට ඉඩ සලසයි.",
|
|
5668
5847
|
"errors.heading": "දෝෂය",
|
|
5669
5848
|
"errors.signin.initialization": "ආරම්භ කිරීමේදී දෝෂයක් සිදු විය. කරුණාකර පසුව නැවත උත්සාහ කරන්න.",
|
|
5670
5849
|
"errors.signin.flow.failure": "ලොග් වීමේදී දෝෂයක් සිදු විය. කරුණාකර පසුව නැවත උත්සාහ කරන්න.",
|
|
@@ -5828,6 +6007,7 @@ exports.extractUserClaimsFromIdToken = extractUserClaimsFromIdToken_default;
|
|
|
5828
6007
|
exports.formatDate = formatDate_default;
|
|
5829
6008
|
exports.generateFlattenedUserProfile = generateFlattenedUserProfile_default;
|
|
5830
6009
|
exports.get = get_default;
|
|
6010
|
+
exports.getBaseLanguage = getBaseLanguage;
|
|
5831
6011
|
exports.getDefaultI18nBundles = getDefaultI18nBundles_default;
|
|
5832
6012
|
exports.getFlowMeta = getFlowMeta_default;
|
|
5833
6013
|
exports.getLatestStateParam = getLatestStateParam_default;
|
|
@@ -5843,6 +6023,7 @@ exports.isEmojiUri = isEmojiUri_default;
|
|
|
5843
6023
|
exports.isEmpty = isEmpty_default;
|
|
5844
6024
|
exports.isRecognizedBaseUrlPattern = isRecognizedBaseUrlPattern_default;
|
|
5845
6025
|
exports.logger = logger_default;
|
|
6026
|
+
exports.normalizeLocaleTag = normalizeLocaleTag;
|
|
5846
6027
|
exports.normalizeTranslations = normalizeTranslations_default;
|
|
5847
6028
|
exports.processOpenIDScopes = processOpenIDScopes_default;
|
|
5848
6029
|
exports.removeTrailingSlash = removeTrailingSlash_default;
|