From 63a2d7eb8e94f17299f650b58f617ed9c9b5e9b9 Mon Sep 17 00:00:00 2001
From: Awais Ansari <79941147+awais-ansari@users.noreply.github.com>
Date: Thu, 28 Nov 2024 18:32:47 +0500
Subject: [PATCH 1/2] fix: console and propType errors (#621)
* fix: console and propType errors
* fix: updated default props
---
.env.development | 1 +
.env.test | 1 +
.eslintignore | 1 +
Makefile | 16 +++++---
package-lock.json | 11 ++++++
package.json | 1 +
src/DesktopHeader.jsx | 6 +--
src/Header.jsx | 2 +
src/Notification/data/hook.js | 10 ++++-
src/Notification/index.jsx | 4 +-
src/i18n/index.js | 29 +--------------
src/i18n/messages/ar.json | 53 ---------------------------
src/i18n/messages/de.json | 53 ---------------------------
src/i18n/messages/es_419.json | 53 ---------------------------
src/i18n/messages/fr.json | 53 ---------------------------
src/i18n/messages/fr_CA.json | 53 ---------------------------
src/i18n/messages/hi.json | 53 ---------------------------
src/i18n/messages/it.json | 53 ---------------------------
src/i18n/messages/pt.json | 53 ---------------------------
src/i18n/messages/ru.json | 53 ---------------------------
src/i18n/messages/uk.json | 53 ---------------------------
src/i18n/messages/zh_CN.json | 53 ---------------------------
src/studio-header/MobileMenu.jsx | 2 +-
src/studio-header/NavDropdownMenu.jsx | 2 +-
24 files changed, 44 insertions(+), 625 deletions(-)
delete mode 100644 src/i18n/messages/ar.json
delete mode 100644 src/i18n/messages/de.json
delete mode 100644 src/i18n/messages/es_419.json
delete mode 100644 src/i18n/messages/fr.json
delete mode 100644 src/i18n/messages/fr_CA.json
delete mode 100644 src/i18n/messages/hi.json
delete mode 100644 src/i18n/messages/it.json
delete mode 100644 src/i18n/messages/pt.json
delete mode 100644 src/i18n/messages/ru.json
delete mode 100644 src/i18n/messages/uk.json
delete mode 100644 src/i18n/messages/zh_CN.json
diff --git a/.env.development b/.env.development
index 53605820..cd76ce6a 100644
--- a/.env.development
+++ b/.env.development
@@ -22,3 +22,4 @@ LOGO_WHITE_URL=https://edx-cdn.org/v3/prod/logo-white.svg
FAVICON_URL=https://edx-cdn.org/v3/prod/favicon.ico
NOTIFICATION_FEEDBACK_URL=''
CAREERS_URL=''
+STUDIO_BASE_URL=''
diff --git a/.env.test b/.env.test
index 335fa225..ff42aeae 100644
--- a/.env.test
+++ b/.env.test
@@ -22,3 +22,4 @@ LOGO_WHITE_URL=https://edx-cdn.org/v3/prod/logo-white.svg
FAVICON_URL=https://edx-cdn.org/v3/prod/favicon.ico
NOTIFICATION_FEEDBACK_URL=''
CAREERS_URL=''
+STUDIO_BASE_URL=''
diff --git a/.eslintignore b/.eslintignore
index c9fc3ce1..32c5f3fa 100644
--- a/.eslintignore
+++ b/.eslintignore
@@ -3,3 +3,4 @@ dist
example
node_modules
src/lightning.js
+src/i18n/messages/
diff --git a/Makefile b/Makefile
index aecbca50..b1f3c95f 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,4 @@
-export TRANSIFEX_RESOURCE = frontend-component-header-edx
-transifex_resource = frontend-component-header-edx
-transifex_langs = "ar,fr,es_419,zh_CN,pt,it,de,uk,ru,hi,fr_CA"
-
+intl_imports = ./node_modules/.bin/intl-imports.js
transifex_utils = ./node_modules/.bin/transifex-utils.js
i18n = ./src/i18n
transifex_input = $(i18n)/transifex_input.json
@@ -50,9 +47,16 @@ push_translations:
# Pushing comments to Transifex...
./node_modules/@edx/reactifex/bash_scripts/put_comments_v3.sh
-# Pulls translations from Transifex.
pull_translations:
- tx pull -t -f --mode reviewed --languages=$(transifex_langs)
+ rm -rf src/i18n/messages
+ mkdir src/i18n/messages
+ cd src/i18n/messages \
+ && atlas pull $(ATLAS_OPTIONS) \
+ translations/frontend-component-header/src/i18n/messages:frontend-component-header\
+ translations/frontend-platform/src/i18n/messages:frontend-platform \
+ translations/paragon/src/i18n/messages:paragon \
+
+ $(intl_imports) frontend-component-header-edx frontend-platform paragon
# This target is used by Travis.
validate-no-uncommitted-package-lock-changes:
diff --git a/package-lock.json b/package-lock.json
index 2dec3c06..5dc503ac 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -34,6 +34,7 @@
"@edx/brand": "npm:@edx/brand-edx.org@2.1.3",
"@edx/browserslist-config": "1.2.0",
"@edx/frontend-platform": "^8.1.0",
+ "@edx/openedx-atlas": "^0.6.0",
"@edx/reactifex": "2.2.0",
"@openedx/frontend-build": "^14.0.10",
"@testing-library/dom": "9.3.4",
@@ -2336,6 +2337,16 @@
"@newrelic/publish-sourcemap": "^5.0.1"
}
},
+ "node_modules/@edx/openedx-atlas": {
+ "version": "0.6.2",
+ "resolved": "https://registry.npmjs.org/@edx/openedx-atlas/-/openedx-atlas-0.6.2.tgz",
+ "integrity": "sha512-28Q8vzJDMS4wUxdkbIUBQpzWJ3HTdMaGlaEhFjrVGfuZkh++1AG6Tn/7FMD88cegalYAkphu530VQCHEkMZQhw==",
+ "dev": true,
+ "license": "AGPL-3.0",
+ "bin": {
+ "atlas": "atlas"
+ }
+ },
"node_modules/@edx/reactifex": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/@edx/reactifex/-/reactifex-2.2.0.tgz",
diff --git a/package.json b/package.json
index cb3d404c..c77c6eaf 100644
--- a/package.json
+++ b/package.json
@@ -37,6 +37,7 @@
"@edx/browserslist-config": "1.2.0",
"@edx/frontend-platform": "^8.1.0",
"@edx/reactifex": "2.2.0",
+ "@edx/openedx-atlas": "^0.6.0",
"@openedx/frontend-build": "^14.0.10",
"@testing-library/dom": "9.3.4",
"@testing-library/jest-dom": "5.17.0",
diff --git a/src/DesktopHeader.jsx b/src/DesktopHeader.jsx
index 0390b7e7..6c4aa801 100644
--- a/src/DesktopHeader.jsx
+++ b/src/DesktopHeader.jsx
@@ -207,7 +207,7 @@ DesktopHeader.propTypes = {
items: PropTypes.arrayOf(PropTypes.shape({
type: PropTypes.oneOf(['item', 'menu']),
href: PropTypes.string,
- content: PropTypes.string,
+ content: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),
disabled: PropTypes.bool,
isActive: PropTypes.bool,
onClick: PropTypes.func,
@@ -255,8 +255,8 @@ DesktopHeader.defaultProps = {
email: '',
loggedIn: false,
notificationAppData: {
- apps: { },
- tabsCount: { },
+ apps: {},
+ tabsCount: {},
appsId: [],
isNewNotificationViewEnabled: false,
notificationExpiryDays: 0,
diff --git a/src/Header.jsx b/src/Header.jsx
index 29b9f6ec..2b1a8fbe 100644
--- a/src/Header.jsx
+++ b/src/Header.jsx
@@ -28,6 +28,7 @@ ensureConfig([
'LOGO_URL',
'ACCOUNT_SETTINGS_URL',
'NOTIFICATION_FEEDBACK_URL',
+ 'STUDIO_BASE_URL',
], 'Header component');
subscribe(APP_CONFIG_INITIALIZED, () => {
@@ -188,6 +189,7 @@ const Header = ({
secondaryMenu: getConfig().MINIMAL_HEADER || getConfig().AUTHN_MINIMAL_HEADER ? [] : secondaryMenu,
userMenu: getConfig().AUTHN_MINIMAL_HEADER ? [] : userMenu,
loggedOutItems: getConfig().AUTHN_MINIMAL_HEADER ? [] : loggedOutItems,
+ studioBaseUrl: config.STUDIO_BASE_URL,
};
if (enterpriseCustomerBrandingConfig) {
diff --git a/src/Notification/data/hook.js b/src/Notification/data/hook.js
index f9f73130..164a6e8c 100644
--- a/src/Notification/data/hook.js
+++ b/src/Notification/data/hook.js
@@ -84,7 +84,15 @@ export function useNotification() {
isNewNotificationViewEnabled,
};
} catch (error) {
- return { notificationStatus: RequestStatus.FAILED };
+ return {
+ notificationStatus: RequestStatus.FAILED,
+ apps: {},
+ appsId: [],
+ isNewNotificationViewEnabled: false,
+ notificationExpiryDays: 0,
+ showNotificationsTray: false,
+ tabsCount: { count: 0 },
+ };
}
}, [normalizeNotificationCounts]);
diff --git a/src/Notification/index.jsx b/src/Notification/index.jsx
index f1865f42..ad87aa9a 100644
--- a/src/Notification/index.jsx
+++ b/src/Notification/index.jsx
@@ -230,13 +230,13 @@ Notifications.propTypes = {
Notifications.defaultProps = {
showLeftMargin: true,
notificationAppData: {
- apps: { },
- tabsCount: { },
+ apps: {},
appsId: [],
isNewNotificationViewEnabled: false,
notificationExpiryDays: 0,
notificationStatus: '',
showNotificationsTray: false,
+ tabsCount: { count: 0 },
},
};
diff --git a/src/i18n/index.js b/src/i18n/index.js
index 0336b3a2..d6d1738d 100644
--- a/src/i18n/index.js
+++ b/src/i18n/index.js
@@ -1,28 +1 @@
-import arMessages from './messages/ar.json';
-import frMessages from './messages/fr.json';
-import es419Messages from './messages/es_419.json';
-import zhcnMessages from './messages/zh_CN.json';
-import ptMessages from './messages/pt.json';
-import itMessages from './messages/it.json';
-import ukMessages from './messages/uk.json';
-import deMessages from './messages/de.json';
-import ruMessages from './messages/ru.json';
-import hiMessages from './messages/hi.json';
-import frCAMessages from './messages/fr_CA.json';
-// no need to import en messages-- they are in the defaultMessage field
-
-const messages = {
- ar: arMessages,
- 'es-419': es419Messages,
- fr: frMessages,
- 'zh-cn': zhcnMessages,
- pt: ptMessages,
- it: itMessages,
- de: deMessages,
- hi: hiMessages,
- 'fr-ca': frCAMessages,
- ru: ruMessages,
- uk: ukMessages,
-};
-
-export default messages;
+export default [];
diff --git a/src/i18n/messages/ar.json b/src/i18n/messages/ar.json
deleted file mode 100644
index 45fcb55e..00000000
--- a/src/i18n/messages/ar.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "header.links.courses": "المساقات",
- "header.links.programs": "البرامج",
- "header.links.content.search": "اكتشف الجديد",
- "header.links.schools": "المدارس و الشركاء",
- "header.user.menu.career": "حياة مهنية",
- "header.user.menu.newAlert": "جديد",
- "header.user.menu.dashboard": "لوحة المعلومات",
- "header.user.menu.profile": "الملف الشخصي",
- "header.user.menu.account.settings": "الحساب",
- "header.user.menu.order.history": "المشتريات السابقة",
- "header.user.menu.logout": "تسجيل الخروج",
- "header.user.menu.login": "تسجيل الدخول",
- "header.user.menu.register": "التسجيل ",
- "header.label.account.nav": "الحساب",
- "header.label.account.menu": "قائمة الحساب",
- "header.label.account.menu.for": "قائمة حساب المستخدم {username}",
- "header.label.main.nav": "القائمة الرئيسية",
- "header.label.main.menu": "القائمة الرئيسية",
- "header.label.main.header": "الرئيسية",
- "header.label.secondary.nav": "القائمة الثانوية",
- "header.label.skip.nav": "التخطي إلى المحتوى الرئيسي",
- "notification.title": "الإشعارات",
- "notification.today.heading": "أخر 24 ساعه",
- "notification.earlier.heading": "سابقًا",
- "notification.mark.as.read": "اشر عليها بانها قرات",
- "notification.fullStop": "•",
- "notification.load.more.notifications": "تحميل المزيد من الإخطارات",
- "notification.feedback": "تقييم",
- "notification.recent.all.message": "هذا هو كل الإخطارات الأخيرة الخاصة بك!",
- "notification.expired.delete.message": "يتم مسح الإشعارات تلقائيًا بعد أيام {days}",
- "notification.no.message": "لا توجد إخطارات حتى الآن",
- "notification.no.help.message": "عندما تتلقى إشعارات، ستظهر هنا",
- "notification.bell.icon.alt.message": "أيقونة جرس الإشعارات",
- "general.register.sentenceCase": "التسجيل",
- "general.signIn.sentenceCase": "تسجيل الدخول",
- "header.menu.dashboard.label": "لوحة المعلومات",
- "header.help.label": "المساعدة",
- "header.menu.profile.label": "الملف الشخصي",
- "header.menu.account.label": "الحساب",
- "header.menu.career.label": "حياة مهنية",
- "header.menu.new.label": "جديد",
- "header.menu.orderHistory.label": "المشتريات السابقة",
- "header.navigation.skipNavLink": "التخطي إلى المحتوى الرئيسي",
- "header.menu.signOut.label": "تسجيل الخروج",
- "header.user.menu.studio": "صفحة الاستوديو الرئيسية",
- "header.user.menu.maintenance": "الصيانة",
- "header.label.courseOutline": "الرجوع إلى مخطط المساق الكلّي في الاستوديو",
- "tour.action.dismiss": "تجاهل",
- "tour.action.end": "حسنًا",
- "tour.example.title": "جولة المثال",
- "tour.example.body": "هذه جولة نموذجية"
-}
\ No newline at end of file
diff --git a/src/i18n/messages/de.json b/src/i18n/messages/de.json
deleted file mode 100644
index 8449db01..00000000
--- a/src/i18n/messages/de.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "header.links.courses": "Kurse",
- "header.links.programs": "Programme",
- "header.links.content.search": "Entdecken Sie Neues",
- "header.links.schools": "Schulen & Partner",
- "header.user.menu.career": "Karriere",
- "header.user.menu.newAlert": "Neu",
- "header.user.menu.dashboard": "Meine Kurse",
- "header.user.menu.profile": "Profil",
- "header.user.menu.account.settings": "Konto",
- "header.user.menu.order.history": "Bestellverlauf",
- "header.user.menu.logout": "Abmelden",
- "header.user.menu.login": "Login",
- "header.user.menu.register": "Melden Sie sich an",
- "header.label.account.nav": "Konto",
- "header.label.account.menu": "Konto",
- "header.label.account.menu.for": "Konto für {username}",
- "header.label.main.nav": "Hauptsächlich",
- "header.label.main.menu": "Hauptmenü",
- "header.label.main.header": "Hauptsächlich",
- "header.label.secondary.nav": "Sekundarschule",
- "header.label.skip.nav": "Springe zum Hauptthema",
- "notification.title": "Benachrichtigungen",
- "notification.today.heading": "Letzte 24 Stunden",
- "notification.earlier.heading": "Früher",
- "notification.mark.as.read": "Alles als gelesen markieren",
- "notification.fullStop": "•",
- "notification.load.more.notifications": "Weitere Benachrichtigungen laden",
- "notification.feedback": "Feedback",
- "notification.recent.all.message": "Das sind alle Ihre letzten Benachrichtigungen!",
- "notification.expired.delete.message": "Benachrichtigungen werden nach {days} Tagen automatisch gelöscht",
- "notification.no.message": "Noch keine Benachrichtigungen",
- "notification.no.help.message": "Wenn Sie Benachrichtigungen erhalten, werden diese hier angezeigt",
- "notification.bell.icon.alt.message": "Benachrichtigungsglockensymbol",
- "general.register.sentenceCase": "Registrieren",
- "general.signIn.sentenceCase": "anmelden",
- "header.menu.dashboard.label": "Meine Kurse",
- "header.help.label": "Hilfe",
- "header.menu.profile.label": "Profil",
- "header.menu.account.label": "Konto",
- "header.menu.career.label": "Karriere",
- "header.menu.new.label": "Neu",
- "header.menu.orderHistory.label": "Bestellverlauf",
- "header.navigation.skipNavLink": "Zum Inhalt springen.",
- "header.menu.signOut.label": "Abmelden",
- "header.user.menu.studio": "Studiohaus",
- "header.user.menu.maintenance": "Wartung",
- "header.label.courseOutline": "Zurück zur Kursübersicht in Studio",
- "tour.action.dismiss": "Zurückweisen",
- "tour.action.end": "Okay",
- "tour.example.title": "Beispiel",
- "tour.example.body": "Dies ist eine Beispiel"
-}
\ No newline at end of file
diff --git a/src/i18n/messages/es_419.json b/src/i18n/messages/es_419.json
deleted file mode 100644
index df549074..00000000
--- a/src/i18n/messages/es_419.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "header.links.courses": "Cursos",
- "header.links.programs": "Programas",
- "header.links.content.search": "Encontrar nuevo",
- "header.links.schools": "Escuelas y Socios",
- "header.user.menu.career": "Carrera",
- "header.user.menu.newAlert": "Nuevo",
- "header.user.menu.dashboard": "Panel de Control",
- "header.user.menu.profile": "Perfil",
- "header.user.menu.account.settings": "Cuenta",
- "header.user.menu.order.history": "Historial de órdenes",
- "header.user.menu.logout": "Cerrar sesión",
- "header.user.menu.login": "Iniciar sesión",
- "header.user.menu.register": "Registrarse",
- "header.label.account.nav": "Cuenta",
- "header.label.account.menu": "Menú de la cuenta",
- "header.label.account.menu.for": "Menú de la cuenta para {username}",
- "header.label.main.nav": "Principal",
- "header.label.main.menu": "Menú Principal",
- "header.label.main.header": "Principal",
- "header.label.secondary.nav": "Secundaria",
- "header.label.skip.nav": "Ir al contenido principal",
- "notification.title": "Notificaciones",
- "notification.today.heading": "Últimas 24 horas",
- "notification.earlier.heading": "Más temprano",
- "notification.mark.as.read": "Marcar todo como leído",
- "notification.fullStop": "•",
- "notification.load.more.notifications": "Cargar más notificaciones",
- "notification.feedback": "Feedback",
- "notification.recent.all.message": "¡Esas son todas tus notificaciones recientes!",
- "notification.expired.delete.message": "Las notificaciones se borran automáticamente después de {days} días",
- "notification.no.message": "Aún no hay notificaciones",
- "notification.no.help.message": "Cuando reciba notificaciones, aparecerán aquí.",
- "notification.bell.icon.alt.message": "Icono de campana de notificación",
- "general.register.sentenceCase": "Registrarse",
- "general.signIn.sentenceCase": "Iniciar sesión",
- "header.menu.dashboard.label": "Panel de Control",
- "header.help.label": "Ayuda",
- "header.menu.profile.label": "Perfil",
- "header.menu.account.label": "Cuenta",
- "header.menu.career.label": "Carrera",
- "header.menu.new.label": "Nuevo",
- "header.menu.orderHistory.label": "Historial de órdenes",
- "header.navigation.skipNavLink": "Dirígete al contenido principal.",
- "header.menu.signOut.label": "Cerrar sesión",
- "header.user.menu.studio": "Inicio Studio",
- "header.user.menu.maintenance": "Mantenimiento",
- "header.label.courseOutline": "Volver al esquema del curso en Studio",
- "tour.action.dismiss": "Descartar",
- "tour.action.end": "De acuerdo",
- "tour.example.title": "ejemplo Tour",
- "tour.example.body": "Este es un recorrido ejemplo ."
-}
\ No newline at end of file
diff --git a/src/i18n/messages/fr.json b/src/i18n/messages/fr.json
deleted file mode 100644
index 7d2d5d5d..00000000
--- a/src/i18n/messages/fr.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "header.links.courses": "Cours",
- "header.links.programs": "Programmes",
- "header.links.content.search": "Explorer les cours",
- "header.links.schools": "Écoles et partenaires",
- "header.user.menu.career": "Carrière",
- "header.user.menu.newAlert": "Nouveau",
- "header.user.menu.dashboard": "Tableau de bord",
- "header.user.menu.profile": "Profil",
- "header.user.menu.account.settings": "Compte",
- "header.user.menu.order.history": "Historique des commandes",
- "header.user.menu.logout": "Déconnexion",
- "header.user.menu.login": "Connexion",
- "header.user.menu.register": "S'inscrire",
- "header.label.account.nav": "Compte",
- "header.label.account.menu": "Compte Menu",
- "header.label.account.menu.for": "Compte menu pour {username}",
- "header.label.main.nav": "Principal",
- "header.label.main.menu": "Menu Principal",
- "header.label.main.header": "Principal",
- "header.label.secondary.nav": "Secondaire",
- "header.label.skip.nav": "Passer au contenu principal",
- "notification.title": "Notifications",
- "notification.today.heading": "Dernières 24 heures",
- "notification.earlier.heading": "Plus tôt",
- "notification.mark.as.read": "tout marquer comme lu",
- "notification.fullStop": "•",
- "notification.load.more.notifications": "Charger plus de notifications",
- "notification.feedback": "Commentaires",
- "notification.recent.all.message": "C'est toutes vos notifications récentes !",
- "notification.expired.delete.message": "Les notifications sont automatiquement effacées après {days} jours",
- "notification.no.message": "Aucune notification pour l'instant",
- "notification.no.help.message": "Lorsque vous recevrez des notifications, elles apparaîtront ici",
- "notification.bell.icon.alt.message": "Icône de cloche de notification",
- "general.register.sentenceCase": "S'inscrire",
- "general.signIn.sentenceCase": "Se connecter.",
- "header.menu.dashboard.label": "Tableau de bord",
- "header.help.label": "Aide",
- "header.menu.profile.label": "Profil",
- "header.menu.account.label": "Compte",
- "header.menu.career.label": "Carrière",
- "header.menu.new.label": "Nouveau",
- "header.menu.orderHistory.label": "Historique des commandes",
- "header.navigation.skipNavLink": "Passer au contenu principal",
- "header.menu.signOut.label": "Se déconnecter",
- "header.user.menu.studio": "Accueil Studio",
- "header.user.menu.maintenance": "Maintenance",
- "header.label.courseOutline": "Retour au plan de cours dans Studio",
- "tour.action.dismiss": "Ignorer",
- "tour.action.end": "Okay",
- "tour.example.title": "exemple de visite",
- "tour.example.body": "Ceci est un exemple de visite"
-}
\ No newline at end of file
diff --git a/src/i18n/messages/fr_CA.json b/src/i18n/messages/fr_CA.json
deleted file mode 100644
index 70f24d79..00000000
--- a/src/i18n/messages/fr_CA.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "header.links.courses": "Cours",
- "header.links.programs": "Programmes",
- "header.links.content.search": "Découvrir les nouveautés",
- "header.links.schools": "Écoles et Partenaires",
- "header.user.menu.career": "Carrière",
- "header.user.menu.newAlert": "Nouveau",
- "header.user.menu.dashboard": "Tableau de bord",
- "header.user.menu.profile": "Profil",
- "header.user.menu.account.settings": "Compte",
- "header.user.menu.order.history": "Historique des commandes",
- "header.user.menu.logout": "Déconnexion",
- "header.user.menu.login": "Connexion",
- "header.user.menu.register": "S'inscrire",
- "header.label.account.nav": "Compte",
- "header.label.account.menu": "Menu de compte",
- "header.label.account.menu.for": "Menu de compte pour {username}",
- "header.label.main.nav": "Principal",
- "header.label.main.menu": "Menu principal",
- "header.label.main.header": "Principal",
- "header.label.secondary.nav": "Secondaire",
- "header.label.skip.nav": "Passer au contenu de cette vue",
- "notification.title": "Notifications",
- "notification.today.heading": "Dernières 24 heures",
- "notification.earlier.heading": "Plus tôt",
- "notification.mark.as.read": "Tout marquer comme lu",
- "notification.fullStop": "•",
- "notification.load.more.notifications": "Charger plus de notifications",
- "notification.feedback": "Commentaire",
- "notification.recent.all.message": "Ce sont toutes vos notifications récentes!",
- "notification.expired.delete.message": "Les notifications sont automatiquement effacées après {days} jours",
- "notification.no.message": "Aucune notification pour l'instant",
- "notification.no.help.message": "Lorsque vous recevrez des notifications, elles apparaîtront ici",
- "notification.bell.icon.alt.message": "Icône de cloche de notification",
- "general.register.sentenceCase": "Inscription",
- "general.signIn.sentenceCase": "Connexion",
- "header.menu.dashboard.label": "Tableau de bord",
- "header.help.label": "Aide",
- "header.menu.profile.label": "Profil",
- "header.menu.account.label": "Compte",
- "header.menu.career.label": "Carrière",
- "header.menu.new.label": "Nouveau",
- "header.menu.orderHistory.label": "Historique des commandes",
- "header.navigation.skipNavLink": "Passer au contenu principal.",
- "header.menu.signOut.label": "Se déconnecter",
- "header.user.menu.studio": "Accueil Studio",
- "header.user.menu.maintenance": "Entretien",
- "header.label.courseOutline": "Retour au plan de cours dans Studio",
- "tour.action.dismiss": "Rejeter",
- "tour.action.end": "D'accord",
- "tour.example.title": "exemple de visite",
- "tour.example.body": "Ceci est un exemple de visite"
-}
\ No newline at end of file
diff --git a/src/i18n/messages/hi.json b/src/i18n/messages/hi.json
deleted file mode 100644
index 273bec90..00000000
--- a/src/i18n/messages/hi.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "header.links.courses": "पाठ्यक्रम",
- "header.links.programs": "कार्यक्रम",
- "header.links.content.search": "नई खोज करें",
- "header.links.schools": "स्कूलों और भागीदारों",
- "header.user.menu.career": "करियर",
- "header.user.menu.newAlert": "नया",
- "header.user.menu.dashboard": "डैशबोर्ड",
- "header.user.menu.profile": "प्रोफाइल:",
- "header.user.menu.account.settings": "लेखा",
- "header.user.menu.order.history": "आदेश इतिहास",
- "header.user.menu.logout": "लॉग आउट",
- "header.user.menu.login": "लॉग इन करें",
- "header.user.menu.register": "साइन अप",
- "header.label.account.nav": "लेखा",
- "header.label.account.menu": "अकाउंट मेनू ",
- "header.label.account.menu.for": "अकाउंट मेनू फॉर {यूसर्नेम}",
- "header.label.main.nav": "मुख्य ",
- "header.label.main.menu": "मुख्य मेनू ",
- "header.label.main.header": "मुख्य ",
- "header.label.secondary.nav": "माध्यमिक",
- "header.label.skip.nav": "मुख्य कन्टेंट पर जाएं",
- "notification.title": "अधिसूचनाएं",
- "notification.today.heading": "पिछले 24 घंटे",
- "notification.earlier.heading": "पहले",
- "notification.mark.as.read": "सभी को पढ़ा हुआ मार्क करें",
- "notification.fullStop": "•",
- "notification.load.more.notifications": "अधिक सूचनाएं लोड करें",
- "notification.feedback": "प्रतिक्रिया",
- "notification.recent.all.message": "यह आपकी सभी हालिया सूचनाएं हैं!",
- "notification.expired.delete.message": "{days} दिनों के बाद सूचनाएं स्वचालित रूप से साफ़ हो जाती हैं",
- "notification.no.message": "अभी तक कोई सूचना नहीं",
- "notification.no.help.message": "जब आपको सूचनाएं मिलेंगी तो वे यहां दिखाई देंगी",
- "notification.bell.icon.alt.message": "अधिसूचना घंटी चिह्न",
- "general.register.sentenceCase": "रजिस्टर करें",
- "general.signIn.sentenceCase": "साइन इन करें",
- "header.menu.dashboard.label": "डैशबोर्ड",
- "header.help.label": "मदद",
- "header.menu.profile.label": "प्रोफाइल:",
- "header.menu.account.label": "लेखा",
- "header.menu.career.label": "करियर",
- "header.menu.new.label": "नया",
- "header.menu.orderHistory.label": "आदेश इतिहास",
- "header.navigation.skipNavLink": "মেইন কনটেন্ট এ জান ",
- "header.menu.signOut.label": "प्रस्थान करें",
- "header.user.menu.studio": "स्टुडियो होम ",
- "header.user.menu.maintenance": "रखरखाव",
- "header.label.courseOutline": "बॅक तो कोर्स आउटलाइन स्टुडियो में ",
- "tour.action.dismiss": "ख़ारिज करें",
- "tour.action.end": "ठीक है",
- "tour.example.title": "उदाहरण यात्रा",
- "tour.example.body": "यह एक उदाहरण दौरा है"
-}
\ No newline at end of file
diff --git a/src/i18n/messages/it.json b/src/i18n/messages/it.json
deleted file mode 100644
index 115410b1..00000000
--- a/src/i18n/messages/it.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "header.links.courses": "Corsi",
- "header.links.programs": "Programmi",
- "header.links.content.search": "Scopri Nuovo",
- "header.links.schools": "Scuole e Partner",
- "header.user.menu.career": "Carriera",
- "header.user.menu.newAlert": "Nuovo",
- "header.user.menu.dashboard": "Pannello di controllo",
- "header.user.menu.profile": "Profilo",
- "header.user.menu.account.settings": "Account",
- "header.user.menu.order.history": "Cronologia Ordini",
- "header.user.menu.logout": "Disconnettersi",
- "header.user.menu.login": "Login",
- "header.user.menu.register": "Registrazione",
- "header.label.account.nav": "Account",
- "header.label.account.menu": "Menù Conto",
- "header.label.account.menu.for": "Menu account per {username}",
- "header.label.main.nav": "Principale",
- "header.label.main.menu": "Menu principale",
- "header.label.main.header": "Principale",
- "header.label.secondary.nav": "Secondario",
- "header.label.skip.nav": "Passa al contenuto principale",
- "notification.title": "Notifiche",
- "notification.today.heading": "Ultime 24 ore",
- "notification.earlier.heading": "Prima",
- "notification.mark.as.read": "Segna tutti come letti",
- "notification.fullStop": "•",
- "notification.load.more.notifications": "Carica più notifiche",
- "notification.feedback": "Feedback",
- "notification.recent.all.message": "Queste sono tutte le tue notifiche recenti!",
- "notification.expired.delete.message": "Le notifiche vengono cancellate automaticamente dopo {days} giorni",
- "notification.no.message": "Nessuna notifica ancora",
- "notification.no.help.message": "Quando ricevi le notifiche, queste verranno visualizzate qui",
- "notification.bell.icon.alt.message": "Icona campana di notifica",
- "general.register.sentenceCase": "Registrazione",
- "general.signIn.sentenceCase": "Accedi",
- "header.menu.dashboard.label": "Pannello di controllo",
- "header.help.label": "Aiuto",
- "header.menu.profile.label": "Profilo",
- "header.menu.account.label": "Account",
- "header.menu.career.label": "Carriera",
- "header.menu.new.label": "Nuovo",
- "header.menu.orderHistory.label": "Cronologia Ordini",
- "header.navigation.skipNavLink": "Passa al contenuto principale.",
- "header.menu.signOut.label": "Esci",
- "header.user.menu.studio": "Casa Studio",
- "header.user.menu.maintenance": "Manutenzione",
- "header.label.courseOutline": "Ritorno alla struttura del corso in Studio",
- "tour.action.dismiss": "Chiudi",
- "tour.action.end": "Va bene",
- "tour.example.title": "Giro d'esempio",
- "tour.example.body": "Questo è un tour di esempio"
-}
\ No newline at end of file
diff --git a/src/i18n/messages/pt.json b/src/i18n/messages/pt.json
deleted file mode 100644
index 41cd81b1..00000000
--- a/src/i18n/messages/pt.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "header.links.courses": "",
- "header.links.programs": "",
- "header.links.content.search": "",
- "header.links.schools": "",
- "header.user.menu.career": "",
- "header.user.menu.newAlert": "",
- "header.user.menu.dashboard": "",
- "header.user.menu.profile": "",
- "header.user.menu.account.settings": "",
- "header.user.menu.order.history": "",
- "header.user.menu.logout": "",
- "header.user.menu.login": "Login",
- "header.user.menu.register": "",
- "header.label.account.nav": "",
- "header.label.account.menu": "",
- "header.label.account.menu.for": "",
- "header.label.main.nav": "",
- "header.label.main.menu": "",
- "header.label.main.header": "",
- "header.label.secondary.nav": "",
- "header.label.skip.nav": "",
- "notification.title": "",
- "notification.today.heading": "",
- "notification.earlier.heading": "",
- "notification.mark.as.read": "",
- "notification.fullStop": "",
- "notification.load.more.notifications": "",
- "notification.feedback": "",
- "notification.recent.all.message": "",
- "notification.expired.delete.message": "",
- "notification.no.message": "",
- "notification.no.help.message": "",
- "notification.bell.icon.alt.message": "",
- "general.register.sentenceCase": "",
- "general.signIn.sentenceCase": "",
- "header.menu.dashboard.label": "",
- "header.help.label": "",
- "header.menu.profile.label": "",
- "header.menu.account.label": "",
- "header.menu.career.label": "",
- "header.menu.new.label": "",
- "header.menu.orderHistory.label": "",
- "header.navigation.skipNavLink": "",
- "header.menu.signOut.label": "",
- "header.user.menu.studio": "",
- "header.user.menu.maintenance": "",
- "header.label.courseOutline": "",
- "tour.action.dismiss": "",
- "tour.action.end": "",
- "tour.example.title": "",
- "tour.example.body": ""
-}
\ No newline at end of file
diff --git a/src/i18n/messages/ru.json b/src/i18n/messages/ru.json
deleted file mode 100644
index 965f78b1..00000000
--- a/src/i18n/messages/ru.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "header.links.courses": "Курсы",
- "header.links.programs": "Программы",
- "header.links.content.search": "Каталог курсов",
- "header.links.schools": "Учебные заведения и партнёры",
- "header.user.menu.career": "Карьера",
- "header.user.menu.newAlert": "Новый",
- "header.user.menu.dashboard": "Панель управления",
- "header.user.menu.profile": "Профиль",
- "header.user.menu.account.settings": "Учётная запись",
- "header.user.menu.order.history": "История заказов",
- "header.user.menu.logout": "Выйти",
- "header.user.menu.login": "Войти",
- "header.user.menu.register": "Зарегистрироваться",
- "header.label.account.nav": "Учётная запись",
- "header.label.account.menu": "Меню учетной записи",
- "header.label.account.menu.for": "Меню учетной записи для {username}",
- "header.label.main.nav": "Главный",
- "header.label.main.menu": "Главное меню",
- "header.label.main.header": "Главный",
- "header.label.secondary.nav": "Среднее образование",
- "header.label.skip.nav": "Перейти к основному содержимому",
- "notification.title": "Уведомления",
- "notification.today.heading": "Последние 24 часа",
- "notification.earlier.heading": "Ранее",
- "notification.mark.as.read": "Отметить все как прочитанное",
- "notification.fullStop": "•",
- "notification.load.more.notifications": "Загрузить больше уведомлений",
- "notification.feedback": "Обратная связь",
- "notification.recent.all.message": "",
- "notification.expired.delete.message": "",
- "notification.no.message": "",
- "notification.no.help.message": "",
- "notification.bell.icon.alt.message": "",
- "general.register.sentenceCase": "Регистрация",
- "general.signIn.sentenceCase": "Вход",
- "header.menu.dashboard.label": "Панель управления",
- "header.help.label": "Помощь",
- "header.menu.profile.label": "Профиль",
- "header.menu.account.label": "Учётная запись",
- "header.menu.career.label": "Карьера",
- "header.menu.new.label": "Новый",
- "header.menu.orderHistory.label": "История заказов",
- "header.navigation.skipNavLink": "Перейти к контенту",
- "header.menu.signOut.label": "Выйти",
- "header.user.menu.studio": "Studio Дом",
- "header.user.menu.maintenance": "Техническое обслуживание",
- "header.label.courseOutline": "",
- "tour.action.dismiss": "Скрыть",
- "tour.action.end": "Okay",
- "tour.example.title": "",
- "tour.example.body": ""
-}
\ No newline at end of file
diff --git a/src/i18n/messages/uk.json b/src/i18n/messages/uk.json
deleted file mode 100644
index 1f0fc20d..00000000
--- a/src/i18n/messages/uk.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "header.links.courses": "Курси",
- "header.links.programs": "Програми",
- "header.links.content.search": "Відкривайте Нове",
- "header.links.schools": "Школи та партнери",
- "header.user.menu.career": "Кар’єра",
- "header.user.menu.newAlert": "Новий",
- "header.user.menu.dashboard": "Панель управління",
- "header.user.menu.profile": "Профіль",
- "header.user.menu.account.settings": "Обліковий запис",
- "header.user.menu.order.history": "Історія замовлень",
- "header.user.menu.logout": "Вийти",
- "header.user.menu.login": "Увійти",
- "header.user.menu.register": "Зареєструватися",
- "header.label.account.nav": "Обліковий запис",
- "header.label.account.menu": "Меню облікового запису",
- "header.label.account.menu.for": "Меню облікового запису для {username}",
- "header.label.main.nav": "Головна",
- "header.label.main.menu": "Головне меню",
- "header.label.main.header": "Головна",
- "header.label.secondary.nav": "Середня",
- "header.label.skip.nav": "Перейти до головного змісту",
- "notification.title": "Сповіщення",
- "notification.today.heading": "Останні 24 години",
- "notification.earlier.heading": "Раніше",
- "notification.mark.as.read": "Відмітити все як прочитане",
- "notification.fullStop": "•",
- "notification.load.more.notifications": "Завантажити більше сповіщень",
- "notification.feedback": "Відгук",
- "notification.recent.all.message": "Це всі Ваші сповіщення.",
- "notification.expired.delete.message": "Сповіщення автоматично видаляються через {days} днів",
- "notification.no.message": "Наразі сповіщень немає",
- "notification.no.help.message": "Коли Ви отримаєте сповіщення, вони з’являться тут",
- "notification.bell.icon.alt.message": "Піктограма дзвоника сповіщення",
- "general.register.sentenceCase": "Зареєструватися",
- "general.signIn.sentenceCase": "Увійти",
- "header.menu.dashboard.label": "Мої курси",
- "header.help.label": "Допомога",
- "header.menu.profile.label": "Профіль",
- "header.menu.account.label": "Налаштування",
- "header.menu.career.label": "Кар’єра",
- "header.menu.new.label": "Новий",
- "header.menu.orderHistory.label": "Історія замовлень",
- "header.navigation.skipNavLink": "Перейти до головного змісту.",
- "header.menu.signOut.label": "Вийти",
- "header.user.menu.studio": "Головна сторінка в Студії",
- "header.user.menu.maintenance": "Технічні робити",
- "header.label.courseOutline": "Повернутися до плану курсу в Studio",
- "tour.action.dismiss": "Відхилити",
- "tour.action.end": "Гаразд",
- "tour.example.title": "",
- "tour.example.body": ""
-}
\ No newline at end of file
diff --git a/src/i18n/messages/zh_CN.json b/src/i18n/messages/zh_CN.json
deleted file mode 100644
index 2805cfcc..00000000
--- a/src/i18n/messages/zh_CN.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "header.links.courses": "课程",
- "header.links.programs": "项目",
- "header.links.content.search": "马上探索课程",
- "header.links.schools": "学校",
- "header.user.menu.career": "职业",
- "header.user.menu.newAlert": "新增",
- "header.user.menu.dashboard": "课程面板",
- "header.user.menu.profile": "个人主页",
- "header.user.menu.account.settings": "我的账户",
- "header.user.menu.order.history": "查看历史记录",
- "header.user.menu.logout": "退出",
- "header.user.menu.login": "登录",
- "header.user.menu.register": "注册",
- "header.label.account.nav": "我的账户",
- "header.label.account.menu": "账户菜单",
- "header.label.account.menu.for": "{username} 的帐户菜单",
- "header.label.main.nav": "主要",
- "header.label.main.menu": "主菜单",
- "header.label.main.header": "主要",
- "header.label.secondary.nav": "高中",
- "header.label.skip.nav": "跳转到主要内容",
- "notification.title": "通知",
- "notification.today.heading": "",
- "notification.earlier.heading": "",
- "notification.mark.as.read": "",
- "notification.fullStop": "•",
- "notification.load.more.notifications": "",
- "notification.feedback": "反馈",
- "notification.recent.all.message": "",
- "notification.expired.delete.message": "",
- "notification.no.message": "",
- "notification.no.help.message": "",
- "notification.bell.icon.alt.message": "",
- "general.register.sentenceCase": "注册",
- "general.signIn.sentenceCase": "登录",
- "header.menu.dashboard.label": "课程面板",
- "header.help.label": "帮助",
- "header.menu.profile.label": "个人主页",
- "header.menu.account.label": "我的账户",
- "header.menu.career.label": "职业",
- "header.menu.new.label": "新增",
- "header.menu.orderHistory.label": "查看历史记录",
- "header.navigation.skipNavLink": "跳至主要内容",
- "header.menu.signOut.label": "退出",
- "header.user.menu.studio": "工作室主页",
- "header.user.menu.maintenance": "维护",
- "header.label.courseOutline": "返回 Studio 中的课程大纲",
- "tour.action.dismiss": "忽略",
- "tour.action.end": "好的",
- "tour.example.title": "",
- "tour.example.body": ""
-}
\ No newline at end of file
diff --git a/src/studio-header/MobileMenu.jsx b/src/studio-header/MobileMenu.jsx
index 610321e6..2bfe6cc5 100644
--- a/src/studio-header/MobileMenu.jsx
+++ b/src/studio-header/MobileMenu.jsx
@@ -20,7 +20,7 @@ const MobileMenu = ({
>
{items.map(item => (
- -
+
-
{item.title}
diff --git a/src/studio-header/NavDropdownMenu.jsx b/src/studio-header/NavDropdownMenu.jsx
index 17fcb882..ae75ad1b 100644
--- a/src/studio-header/NavDropdownMenu.jsx
+++ b/src/studio-header/NavDropdownMenu.jsx
@@ -47,7 +47,7 @@ NavDropdownMenu.propTypes = {
id: PropTypes.string.isRequired,
email: PropTypes.string,
name: PropTypes.string,
- buttonTitle: PropTypes.string.isRequired,
+ buttonTitle: PropTypes.oneOfType([PropTypes.string, PropTypes.node]).isRequired,
items: PropTypes.arrayOf(PropTypes.shape({
href: PropTypes.string,
title: PropTypes.string,
From 789e4df51c409d01107aa532b30b6c93bb0c520f Mon Sep 17 00:00:00 2001
From: sundasnoreen12
Date: Fri, 29 Nov 2024 14:42:44 +0500
Subject: [PATCH 2/2] fix: added translations by executing make
pukk_translations
---
.eslintignore | 1 -
src/i18n/index.js | 15 +-
.../frontend-component-header/ar.json | 36 +++++
.../frontend-component-header/bo.json | 35 +++++
.../frontend-component-header/da.json | 36 +++++
.../frontend-component-header/de.json | 56 ++++++++
.../frontend-component-header/de_DE.json | 36 +++++
.../frontend-component-header/el.json | 36 +++++
.../frontend-component-header/es_419.json | 35 +++++
.../frontend-component-header/es_ES.json | 36 +++++
.../frontend-component-header/fa.json | 35 +++++
.../frontend-component-header/fr_CA.json | 35 +++++
.../frontend-component-header/he.json | 36 +++++
.../frontend-component-header/hi.json | 35 +++++
.../frontend-component-header/id.json | 36 +++++
.../frontend-component-header/it_IT.json | 36 +++++
.../frontend-component-header/lv.json | 35 +++++
.../frontend-component-header/pt_BR.json | 36 +++++
.../frontend-component-header/pt_PT.json | 35 +++++
.../frontend-component-header/ru.json | 36 +++++
.../frontend-component-header/sw.json | 36 +++++
.../frontend-component-header/te.json | 36 +++++
.../frontend-component-header/th.json | 36 +++++
.../frontend-component-header/tr_TR.json | 36 +++++
.../frontend-component-header/uk.json | 36 +++++
.../frontend-component-header/uz.json | 35 +++++
.../frontend-component-header/vi.json | 35 +++++
.../frontend-component-header/zh_CN.json | 36 +++++
.../frontend-component-header/zh_HK.json | 35 +++++
src/i18n/messages/frontend-platform/ar.json | 4 +
src/i18n/messages/frontend-platform/bo.json | 4 +
src/i18n/messages/frontend-platform/da.json | 4 +
.../messages/frontend-platform/de_DE.json | 4 +
src/i18n/messages/frontend-platform/el.json | 4 +
.../messages/frontend-platform/es_419.json | 4 +
.../messages/frontend-platform/es_ES.json | 4 +
src/i18n/messages/frontend-platform/fa.json | 4 +
.../messages/frontend-platform/fr_CA.json | 4 +
src/i18n/messages/frontend-platform/he.json | 4 +
src/i18n/messages/frontend-platform/hi.json | 4 +
src/i18n/messages/frontend-platform/id.json | 4 +
src/i18n/messages/frontend-platform/index.js | 59 ++++++++
.../messages/frontend-platform/it_IT.json | 4 +
src/i18n/messages/frontend-platform/lv.json | 4 +
.../messages/frontend-platform/pt_BR.json | 4 +
.../messages/frontend-platform/pt_PT.json | 4 +
src/i18n/messages/frontend-platform/ru.json | 4 +
src/i18n/messages/frontend-platform/te.json | 4 +
src/i18n/messages/frontend-platform/th.json | 4 +
.../messages/frontend-platform/tr_TR.json | 4 +
src/i18n/messages/frontend-platform/uk.json | 4 +
src/i18n/messages/frontend-platform/uz.json | 4 +
src/i18n/messages/frontend-platform/vi.json | 4 +
.../messages/frontend-platform/zh_CN.json | 4 +
.../messages/frontend-platform/zh_HK.json | 4 +
src/i18n/messages/paragon/ar.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/da.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/de.json | 118 +++++++++++++++
src/i18n/messages/paragon/de_DE.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/el.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/es_419.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/es_ES.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/fa.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/fr_CA.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/he.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/hi.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/id.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/index.js | 61 ++++++++
src/i18n/messages/paragon/it_IT.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/lv.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/pt_BR.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/pt_PT.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/ru.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/sw.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/te.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/th.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/tr_TR.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/uk.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/uz.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/vi.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/zh_CN.json | 134 ++++++++++++++++++
src/i18n/messages/paragon/zh_HK.json | 134 ++++++++++++++++++
82 files changed, 4684 insertions(+), 2 deletions(-)
create mode 100644 src/i18n/messages/frontend-component-header/ar.json
create mode 100644 src/i18n/messages/frontend-component-header/bo.json
create mode 100644 src/i18n/messages/frontend-component-header/da.json
create mode 100644 src/i18n/messages/frontend-component-header/de.json
create mode 100644 src/i18n/messages/frontend-component-header/de_DE.json
create mode 100644 src/i18n/messages/frontend-component-header/el.json
create mode 100644 src/i18n/messages/frontend-component-header/es_419.json
create mode 100644 src/i18n/messages/frontend-component-header/es_ES.json
create mode 100644 src/i18n/messages/frontend-component-header/fa.json
create mode 100644 src/i18n/messages/frontend-component-header/fr_CA.json
create mode 100644 src/i18n/messages/frontend-component-header/he.json
create mode 100644 src/i18n/messages/frontend-component-header/hi.json
create mode 100644 src/i18n/messages/frontend-component-header/id.json
create mode 100644 src/i18n/messages/frontend-component-header/it_IT.json
create mode 100644 src/i18n/messages/frontend-component-header/lv.json
create mode 100644 src/i18n/messages/frontend-component-header/pt_BR.json
create mode 100644 src/i18n/messages/frontend-component-header/pt_PT.json
create mode 100644 src/i18n/messages/frontend-component-header/ru.json
create mode 100644 src/i18n/messages/frontend-component-header/sw.json
create mode 100644 src/i18n/messages/frontend-component-header/te.json
create mode 100644 src/i18n/messages/frontend-component-header/th.json
create mode 100644 src/i18n/messages/frontend-component-header/tr_TR.json
create mode 100644 src/i18n/messages/frontend-component-header/uk.json
create mode 100644 src/i18n/messages/frontend-component-header/uz.json
create mode 100644 src/i18n/messages/frontend-component-header/vi.json
create mode 100644 src/i18n/messages/frontend-component-header/zh_CN.json
create mode 100644 src/i18n/messages/frontend-component-header/zh_HK.json
create mode 100644 src/i18n/messages/frontend-platform/ar.json
create mode 100644 src/i18n/messages/frontend-platform/bo.json
create mode 100644 src/i18n/messages/frontend-platform/da.json
create mode 100644 src/i18n/messages/frontend-platform/de_DE.json
create mode 100644 src/i18n/messages/frontend-platform/el.json
create mode 100644 src/i18n/messages/frontend-platform/es_419.json
create mode 100644 src/i18n/messages/frontend-platform/es_ES.json
create mode 100644 src/i18n/messages/frontend-platform/fa.json
create mode 100644 src/i18n/messages/frontend-platform/fr_CA.json
create mode 100644 src/i18n/messages/frontend-platform/he.json
create mode 100644 src/i18n/messages/frontend-platform/hi.json
create mode 100644 src/i18n/messages/frontend-platform/id.json
create mode 100644 src/i18n/messages/frontend-platform/index.js
create mode 100644 src/i18n/messages/frontend-platform/it_IT.json
create mode 100644 src/i18n/messages/frontend-platform/lv.json
create mode 100644 src/i18n/messages/frontend-platform/pt_BR.json
create mode 100644 src/i18n/messages/frontend-platform/pt_PT.json
create mode 100644 src/i18n/messages/frontend-platform/ru.json
create mode 100644 src/i18n/messages/frontend-platform/te.json
create mode 100644 src/i18n/messages/frontend-platform/th.json
create mode 100644 src/i18n/messages/frontend-platform/tr_TR.json
create mode 100644 src/i18n/messages/frontend-platform/uk.json
create mode 100644 src/i18n/messages/frontend-platform/uz.json
create mode 100644 src/i18n/messages/frontend-platform/vi.json
create mode 100644 src/i18n/messages/frontend-platform/zh_CN.json
create mode 100644 src/i18n/messages/frontend-platform/zh_HK.json
create mode 100644 src/i18n/messages/paragon/ar.json
create mode 100644 src/i18n/messages/paragon/da.json
create mode 100644 src/i18n/messages/paragon/de.json
create mode 100644 src/i18n/messages/paragon/de_DE.json
create mode 100644 src/i18n/messages/paragon/el.json
create mode 100644 src/i18n/messages/paragon/es_419.json
create mode 100644 src/i18n/messages/paragon/es_ES.json
create mode 100644 src/i18n/messages/paragon/fa.json
create mode 100644 src/i18n/messages/paragon/fr_CA.json
create mode 100644 src/i18n/messages/paragon/he.json
create mode 100644 src/i18n/messages/paragon/hi.json
create mode 100644 src/i18n/messages/paragon/id.json
create mode 100644 src/i18n/messages/paragon/index.js
create mode 100644 src/i18n/messages/paragon/it_IT.json
create mode 100644 src/i18n/messages/paragon/lv.json
create mode 100644 src/i18n/messages/paragon/pt_BR.json
create mode 100644 src/i18n/messages/paragon/pt_PT.json
create mode 100644 src/i18n/messages/paragon/ru.json
create mode 100644 src/i18n/messages/paragon/sw.json
create mode 100644 src/i18n/messages/paragon/te.json
create mode 100644 src/i18n/messages/paragon/th.json
create mode 100644 src/i18n/messages/paragon/tr_TR.json
create mode 100644 src/i18n/messages/paragon/uk.json
create mode 100644 src/i18n/messages/paragon/uz.json
create mode 100644 src/i18n/messages/paragon/vi.json
create mode 100644 src/i18n/messages/paragon/zh_CN.json
create mode 100644 src/i18n/messages/paragon/zh_HK.json
diff --git a/.eslintignore b/.eslintignore
index 32c5f3fa..c9fc3ce1 100644
--- a/.eslintignore
+++ b/.eslintignore
@@ -3,4 +3,3 @@ dist
example
node_modules
src/lightning.js
-src/i18n/messages/
diff --git a/src/i18n/index.js b/src/i18n/index.js
index d6d1738d..b9e0a8e3 100644
--- a/src/i18n/index.js
+++ b/src/i18n/index.js
@@ -1 +1,14 @@
-export default [];
+// This file is generated by the openedx/frontend-platform's "intl-import.js" script.
+//
+// Refer to the i18n documents in https://docs.openedx.org/en/latest/developers/references/i18n.html to update
+// the file and use the Micro-frontend i18n pattern in new repositories.
+//
+
+// Skipped import due to missing 'frontend-component-header-edx/index.js' likely due to empty translations..
+import messagesFromFrontendPlatform from './messages/frontend-platform';
+import messagesFromParagon from './messages/paragon';
+
+export default [
+ messagesFromFrontendPlatform,
+ messagesFromParagon,
+];
diff --git a/src/i18n/messages/frontend-component-header/ar.json b/src/i18n/messages/frontend-component-header/ar.json
new file mode 100644
index 00000000..079d167c
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/ar.json
@@ -0,0 +1,36 @@
+{
+ "header.links.courses": "المساقات",
+ "header.links.programs": "البرامج",
+ "header.links.content.search": "اكتشف الجديد",
+ "header.links.schools": "المدارس و الشركاء",
+ "header.user.menu.dashboard": "لوحة المعلومات",
+ "header.user.menu.profile": "الملف الشخصي",
+ "header.user.menu.account.settings": "الحساب",
+ "header.user.menu.order.history": "سجل الطلبيات",
+ "header.user.menu.logout": "تسجيل الخروج",
+ "header.user.menu.login": "تسجيل الدخول",
+ "header.user.menu.register": "التسجيل",
+ "header.user.menu.studio.home": "صفحة الاستوديو الرئيسية",
+ "header.user.menu.studio.maintenance": "الصيانة",
+ "header.label.account.nav": "الحساب",
+ "header.label.account.menu": "قائمة الحساب",
+ "header.label.account.menu.for": "قائمة حساب المستخدم {username}",
+ "header.label.main.nav": "القا|مة الرئيسية",
+ "header.label.main.menu": "القائمة الرئيسية",
+ "header.label.main.header": "الرئيسية",
+ "header.label.secondary.nav": "القائمة الثانوية",
+ "header.label.skip.nav": "التخطي إلى المحتوى الرئيسي",
+ "header.label.app.nav": "تطبيق",
+ "general.register.sentenceCase": "التسجيل",
+ "general.signIn.sentenceCase": "تسجيل الدخول",
+ "header.menu.dashboard.label": "لوحة المعلومات",
+ "header.help.label": "المساعدة",
+ "header.menu.profile.label": "الملف الشخصي",
+ "header.menu.account.label": "الحساب",
+ "header.menu.orderHistory.label": "سجل الطلبيات",
+ "header.navigation.skipNavLink": "التخطي إلى المحتوى الرئيسي",
+ "header.menu.signOut.label": "تسجيل الخروج",
+ "header.user.menu.studio": "صفحة الاستوديو الرئيسية",
+ "header.user.menu.maintenance": "الصيانة",
+ "header.label.courseOutline": "الرجوع إلى مخطط المساق الكلّي في الاستوديو"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/bo.json b/src/i18n/messages/frontend-component-header/bo.json
new file mode 100644
index 00000000..84dde431
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/bo.json
@@ -0,0 +1,35 @@
+{
+ "header.links.courses": "སློབ་ཚན་ཁག",
+ "header.links.programs": "ལས་རིམ་ཁག",
+ "header.links.content.search": "ཞིབ་གཟིགས།",
+ "header.links.schools": "སློབ་གྲྭ་ཁག་ & མཉམ་འབྲེལ་ཁག",
+ "header.user.menu.dashboard": "གཙོ་ངོས།",
+ "header.user.menu.profile": "ངོ་སྤྲོད་སྙིང་བསྡུས།",
+ "header.user.menu.account.settings": "ཁ་བྱང་།",
+ "header.user.menu.order.history": "ལོ་རྒྱུས་ཀྱི་གོ་རིམ་སྒྲིག",
+ "header.user.menu.logout": "ཕྱིར་ཐོན།",
+ "header.user.menu.login": "ནང་འཛུལ།",
+ "header.user.menu.register": "ཐོ་འགོད་བྱོས།",
+ "header.user.menu.studio.home": "སྒྲིག་སྟེགས་གཙོ་ངོས།",
+ "header.label.account.nav": "ཁ་བྱང་།",
+ "header.label.account.menu": "ཁ་བྱང་ཐོ་གཞུང་།",
+ "header.label.account.menu.for": "འདིའི་ {username} ཁ་བྱང་ཐོ་གཞུང་།",
+ "header.label.main.nav": "གཙོ་བོ།",
+ "header.label.main.menu": "ཐོ་གཞུང་གཙོ་བོ།",
+ "header.label.main.header": "གཙོ་བོ།",
+ "header.label.secondary.nav": "འབྲིང་རིམ།",
+ "header.label.skip.nav": "ནང་དོན་གཙོ་བོའི་ཐད་ལ་མཆོང་།",
+ "header.label.app.nav": "མཉེན་ཆས།",
+ "general.register.sentenceCase": "ཐོ་འགོད།",
+ "general.signIn.sentenceCase": "ནང་འཛུལ།",
+ "header.menu.dashboard.label": "གཙོ་ངོས།",
+ "header.help.label": "རམ་འདེགས།",
+ "header.menu.profile.label": "ངོ་སྤྲོད་སྙིང་བསྡུས།",
+ "header.menu.account.label": "ཁ་བྱང་།",
+ "header.menu.orderHistory.label": "ལོ་རྒྱུས་ཀྱི་གོ་རིམ་སྒྲིག",
+ "header.navigation.skipNavLink": "ནང་དོན་གཙོ་བོའི་ཐད་ལ་མཆོང་།",
+ "header.menu.signOut.label": "ཕྱིར་ཐོན།",
+ "header.user.menu.studio": "སྒྲིག་སྟེགས་གཙོ་ངོས།",
+ "header.label.courseOutline": "སྒྲིག་སྟེགས་ནང་གི་སློབ་ཚན་གྱི་སྡེ་ཚན་ས་བཅད་ཀྱི་མཚམས་སུ་ཕྱིར་ལོག",
+ "header.label.search.nav": "ནང་དོན་འཚོལ་བཤེར།"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/da.json b/src/i18n/messages/frontend-component-header/da.json
new file mode 100644
index 00000000..f9e80d8c
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/da.json
@@ -0,0 +1,36 @@
+{
+ "header.links.courses": "Kurser",
+ "header.links.programs": "Programmer",
+ "header.links.content.search": "Opdag nyt",
+ "header.links.schools": "Skoler & Partnere",
+ "header.user.menu.dashboard": "Betjeningspanel",
+ "header.user.menu.profile": "Profil",
+ "header.user.menu.account.settings": "Konto",
+ "header.user.menu.order.history": "Bestillings historik",
+ "header.user.menu.logout": "Log ud",
+ "header.user.menu.login": "Login",
+ "header.user.menu.register": "Tilmelde",
+ "header.user.menu.studio.home": "Studio hjem",
+ "header.user.menu.studio.maintenance": "Vedligeholdelse",
+ "header.label.account.nav": "Konto",
+ "header.label.account.menu": "Kontomenu",
+ "header.label.account.menu.for": "Kontomenu for {username}",
+ "header.label.main.nav": "Hoved",
+ "header.label.main.menu": "Hovedmenu",
+ "header.label.main.header": "Hoved",
+ "header.label.secondary.nav": "Sekundær",
+ "header.label.skip.nav": "Fortsæt til indhold",
+ "header.label.app.nav": "App",
+ "general.register.sentenceCase": "Registrer",
+ "general.signIn.sentenceCase": "Log ind",
+ "header.menu.dashboard.label": "Betjeningspanel",
+ "header.help.label": "Hjælp",
+ "header.menu.profile.label": "Profil",
+ "header.menu.account.label": "Konto",
+ "header.menu.orderHistory.label": "Bestillings historik",
+ "header.navigation.skipNavLink": "Spring til hovedindhold.",
+ "header.menu.signOut.label": "Log ud",
+ "header.user.menu.studio": "Studio hjem",
+ "header.user.menu.maintenance": "Vedligeholdelse",
+ "header.label.courseOutline": "Tilbage til kursusoversigt i Studio"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/de.json b/src/i18n/messages/frontend-component-header/de.json
new file mode 100644
index 00000000..2ec9083a
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/de.json
@@ -0,0 +1,56 @@
+{
+ "general.register.sentenceCase": "Register",
+ "general.signIn.sentenceCase": "Sign in",
+ "header.links.courses": "Kurse",
+ "header.links.programs": "Programme",
+ "header.links.content.search": "Discover New",
+ "header.links.schools": "Schools & Partners",
+ "header.user.menu.dashboard": "Meine Kurse",
+ "header.user.menu.profile": "Profile",
+ "header.user.menu.account.settings": "Konto",
+ "header.user.menu.order.history": "Order History",
+ "header.user.menu.logout": "Abmelden",
+ "header.user.menu.login": "Login",
+ "header.user.menu.register": "Sign Up",
+ "header.user.menu.studio.home": "Studio Home",
+ "header.user.menu.studio.maintenance": "Maintenance",
+ "header.label.account.nav": "Konto",
+ "header.label.account.menu": "Account Menu",
+ "header.label.account.menu.for": "Account menu for {username}",
+ "header.label.main.nav": "Main",
+ "header.label.main.menu": "Main Menu",
+ "header.label.main.header": "Main",
+ "header.label.secondary.nav": "Sekundarschule",
+ "header.label.skip.nav": "Springe zum Hauptthema",
+ "header.label.app.nav": "App",
+ "header.menu.dashboard.label": "Meine Kurse",
+ "header.help.label": "Hilfe",
+ "header.menu.profile.label": "Profile",
+ "header.menu.account.label": "Konto",
+ "header.menu.orderHistory.label": "Order History",
+ "header.navigation.skipNavLink": "Skip to main content.",
+ "header.menu.signOut.label": "Abmelden",
+ "header.links.content": "Inhalt",
+ "header.links.settings": "Einstellungen",
+ "header.links.content.tools": "Tools",
+ "header.links.outline": "Outline",
+ "header.links.updates": "Updates",
+ "header.links.pages": "Pages & Resources",
+ "header.links.filesAndUploads": "Files & Uploads",
+ "header.links.textbooks": "Textbooks",
+ "header.links.videoUploads": "Video Uploads",
+ "header.links.scheduleAndDetails": "Schedule & Details",
+ "header.links.grading": "Grading",
+ "header.links.courseTeam": "Course Team",
+ "header.links.groupConfigurations": "Group Configurations",
+ "header.links.proctoredExamSettings": "Proctored Exam Settings",
+ "header.links.advancedSettings": "Advanced Settings",
+ "header.links.certificates": "Certificates",
+ "header.links.publisher": "Publisher",
+ "header.links.import": "Import",
+ "header.links.export": "Export",
+ "header.links.checklists": "Checklists",
+ "header.user.menu.studio": "Studio Home",
+ "header.user.menu.maintenance": "Maintenance",
+ "header.label.courseOutline": "Back to course outline in Studio"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/de_DE.json b/src/i18n/messages/frontend-component-header/de_DE.json
new file mode 100644
index 00000000..edd2a5fa
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/de_DE.json
@@ -0,0 +1,36 @@
+{
+ "header.links.courses": "Kurse",
+ "header.links.programs": "Programme",
+ "header.links.content.search": "Kursübersicht",
+ "header.links.schools": "Schulen & Partner",
+ "header.user.menu.dashboard": "Meine Kurse",
+ "header.user.menu.profile": "Profil",
+ "header.user.menu.account.settings": "Benutzerkonto",
+ "header.user.menu.order.history": "Bestellverlauf",
+ "header.user.menu.logout": "Abmelden",
+ "header.user.menu.login": "Anmelden",
+ "header.user.menu.register": "Registrieren",
+ "header.user.menu.studio.home": "Studioheim",
+ "header.user.menu.studio.maintenance": "Wartung",
+ "header.label.account.nav": "Benutzerkonto",
+ "header.label.account.menu": "Benutzerkontomenü",
+ "header.label.account.menu.for": "Benutzerkontomenü für {username}",
+ "header.label.main.nav": "Hauptseite",
+ "header.label.main.menu": "Hauptmenü",
+ "header.label.main.header": "Hauptseite",
+ "header.label.secondary.nav": "Sekundarschule",
+ "header.label.skip.nav": "Springe zu den Inhalten",
+ "header.label.app.nav": "App",
+ "general.register.sentenceCase": "Registrieren",
+ "general.signIn.sentenceCase": "Anmelden",
+ "header.menu.dashboard.label": "Meine Kurse",
+ "header.help.label": "Hilfe",
+ "header.menu.profile.label": "Profil",
+ "header.menu.account.label": "Benutzerkonto",
+ "header.menu.orderHistory.label": "Bestellverlauf",
+ "header.navigation.skipNavLink": "Zum Hauptinhalt springen.",
+ "header.menu.signOut.label": "Ausloggen",
+ "header.user.menu.studio": "Studioheim",
+ "header.user.menu.maintenance": "Wartung",
+ "header.label.courseOutline": "Zurück zur Kursübersicht im Studio"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/el.json b/src/i18n/messages/frontend-component-header/el.json
new file mode 100644
index 00000000..1b60bf67
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/el.json
@@ -0,0 +1,36 @@
+{
+ "header.links.courses": "Μαθήματα ",
+ "header.links.programs": "Προγράμματα",
+ "header.links.content.search": "Αναζήτηση Μαθημάτων",
+ "header.links.schools": "Σχολεία και Συναίτεροι",
+ "header.user.menu.dashboard": "Μαθήματα",
+ "header.user.menu.profile": "Προσωπική σελίδα",
+ "header.user.menu.account.settings": "Λογαριασμός ",
+ "header.user.menu.order.history": "Ιστορικό Παραγγελιών",
+ "header.user.menu.logout": "Αποσύνδεση",
+ "header.user.menu.login": "Είσοδος",
+ "header.user.menu.register": "Εγγραφή",
+ "header.user.menu.studio.home": "Στούντιο Σπίτι",
+ "header.user.menu.studio.maintenance": "Συντήρηση",
+ "header.label.account.nav": "Λογαριασμός ",
+ "header.label.account.menu": "Μενού Λογαριασμού",
+ "header.label.account.menu.for": "Εικόνα της προσωπικής σελίδας του {username}",
+ "header.label.main.nav": "Κεντρικό",
+ "header.label.main.menu": "Κεντρικό Μενού",
+ "header.label.main.header": "Κεντρικό",
+ "header.label.secondary.nav": "Δευτεροβάθμια",
+ "header.label.skip.nav": "Παράλειψη σε κυρίως περιεχόμενο",
+ "header.label.app.nav": "App",
+ "general.register.sentenceCase": "Εγγραφείτε ",
+ "general.signIn.sentenceCase": "Σύνδεση",
+ "header.menu.dashboard.label": "Μαθήματα",
+ "header.help.label": "Βοήθεια ",
+ "header.menu.profile.label": "Προσωπική σελίδα",
+ "header.menu.account.label": "Λογαριασμός ",
+ "header.menu.orderHistory.label": "Ιστορικό Παραγγελιών",
+ "header.navigation.skipNavLink": "Παράλειψη σε κυρίως περιεχόμενο.",
+ "header.menu.signOut.label": "Αποσύνδεση",
+ "header.user.menu.studio": "Στούντιο Σπίτι",
+ "header.user.menu.maintenance": "Συντήρηση",
+ "header.label.courseOutline": "Επιστροφή στο σχεδιάγραμμα μαθημάτων στο Στούντιο"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/es_419.json b/src/i18n/messages/frontend-component-header/es_419.json
new file mode 100644
index 00000000..31c5165a
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/es_419.json
@@ -0,0 +1,35 @@
+{
+ "header.links.courses": "Cursos",
+ "header.links.programs": "Programas",
+ "header.links.content.search": "Encontrar nuevo",
+ "header.links.schools": "Escuelas y Socios",
+ "header.user.menu.dashboard": "Panel de Control",
+ "header.user.menu.profile": "Perfil",
+ "header.user.menu.account.settings": "Cuenta",
+ "header.user.menu.order.history": "Historial de órdenes",
+ "header.user.menu.logout": "Cerrar sesión",
+ "header.user.menu.login": "Login",
+ "header.user.menu.register": "Registrarse",
+ "header.user.menu.studio.home": "Inicio Studio",
+ "header.label.account.nav": "Cuenta",
+ "header.label.account.menu": "Menú de la cuenta",
+ "header.label.account.menu.for": "Menú de la cuenta para {username}",
+ "header.label.main.nav": "Principal",
+ "header.label.main.menu": "Menú Principal",
+ "header.label.main.header": "Principal",
+ "header.label.secondary.nav": "Secondary",
+ "header.label.skip.nav": "Ir al contenido principal",
+ "header.label.app.nav": "Aplicación",
+ "general.register.sentenceCase": "Registrarse",
+ "general.signIn.sentenceCase": "Iniciar sesión",
+ "header.menu.dashboard.label": "Panel de Control",
+ "header.help.label": "Ayuda",
+ "header.menu.profile.label": "Perfil",
+ "header.menu.account.label": "Cuenta",
+ "header.menu.orderHistory.label": "Historial de órdenes",
+ "header.navigation.skipNavLink": "Dirígete al contenido principal.",
+ "header.menu.signOut.label": "Cerrar sesión",
+ "header.user.menu.studio": "Inicio Studio",
+ "header.label.courseOutline": "Volver al esquema del curso en Studio",
+ "header.label.search.nav": "Buscar contenido"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/es_ES.json b/src/i18n/messages/frontend-component-header/es_ES.json
new file mode 100644
index 00000000..20077b9b
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/es_ES.json
@@ -0,0 +1,36 @@
+{
+ "header.links.courses": "Cursos",
+ "header.links.programs": "Programas",
+ "header.links.content.search": "Nuevos cursos",
+ "header.links.schools": "Escuelas y Socios",
+ "header.user.menu.dashboard": "Panel de control",
+ "header.user.menu.profile": "Perfil",
+ "header.user.menu.account.settings": "Cuenta",
+ "header.user.menu.order.history": "Historial de pedidos",
+ "header.user.menu.logout": "Cerrar sesión",
+ "header.user.menu.login": "Iniciar sesión",
+ "header.user.menu.register": "Registrarse",
+ "header.user.menu.studio.home": "Inicio Studio",
+ "header.user.menu.studio.maintenance": "Mantenimiento ",
+ "header.label.account.nav": "Cuenta",
+ "header.label.account.menu": "Menú de la cuenta",
+ "header.label.account.menu.for": "Menú de la cuenta de {username}",
+ "header.label.main.nav": "Principal",
+ "header.label.main.menu": "Menú principal",
+ "header.label.main.header": "Principal",
+ "header.label.secondary.nav": "Secundaria",
+ "header.label.skip.nav": "Ir al contenido principal",
+ "header.label.app.nav": "Aplicación",
+ "general.register.sentenceCase": "Registrarse",
+ "general.signIn.sentenceCase": "Iniciar sesión",
+ "header.menu.dashboard.label": "Panel de control",
+ "header.help.label": "Ayuda",
+ "header.menu.profile.label": "Perfil",
+ "header.menu.account.label": "Cuenta",
+ "header.menu.orderHistory.label": "Historial de pedidos",
+ "header.navigation.skipNavLink": "Ir al contenido principal",
+ "header.menu.signOut.label": "Cerrar sesión",
+ "header.user.menu.studio": "Inicio Studio",
+ "header.user.menu.maintenance": "Mantenimiento ",
+ "header.label.courseOutline": "Volver al esquema del curso en Studio"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/fa.json b/src/i18n/messages/frontend-component-header/fa.json
new file mode 100644
index 00000000..ba4656fc
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/fa.json
@@ -0,0 +1,35 @@
+{
+ "header.links.courses": "دورههای آموزشی",
+ "header.links.programs": "برنامهها",
+ "header.links.content.search": "کشف جدید",
+ "header.links.schools": "مدارس و شرکا",
+ "header.user.menu.dashboard": "پیشخوان",
+ "header.user.menu.profile": "پروندۀ شخصی",
+ "header.user.menu.account.settings": "حسابکاربری",
+ "header.user.menu.order.history": "سوابق سفارشها",
+ "header.user.menu.logout": "خروج",
+ "header.user.menu.login": "ورود",
+ "header.user.menu.register": "ثبتنام",
+ "header.user.menu.studio.home": "خانۀ استودیو",
+ "header.label.account.nav": "حسابکاربری",
+ "header.label.account.menu": "منوی حسابکاربری",
+ "header.label.account.menu.for": "منوی حسابکاربری برای {username}",
+ "header.label.main.nav": "اصلی",
+ "header.label.main.menu": "منوی اصلی",
+ "header.label.main.header": "اصلی",
+ "header.label.secondary.nav": "ثانوی",
+ "header.label.skip.nav": "برو به محتوای اصلی",
+ "header.label.app.nav": "برنامه",
+ "general.register.sentenceCase": "ثبتنام",
+ "general.signIn.sentenceCase": "ورود",
+ "header.menu.dashboard.label": "پیشخوان",
+ "header.help.label": "کمک",
+ "header.menu.profile.label": "پروندۀ شخصی",
+ "header.menu.account.label": "حسابکاربری",
+ "header.menu.orderHistory.label": "سوابق سفارشها",
+ "header.navigation.skipNavLink": "برو به محتوای اصلی.",
+ "header.menu.signOut.label": "خروج",
+ "header.user.menu.studio": "خانۀ استودیو",
+ "header.label.courseOutline": "بازگشت به طرح کلی درس در استودیو",
+ "header.label.search.nav": "جستجوی محتوا"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/fr_CA.json b/src/i18n/messages/frontend-component-header/fr_CA.json
new file mode 100644
index 00000000..f22cdf24
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/fr_CA.json
@@ -0,0 +1,35 @@
+{
+ "header.links.courses": "Cours",
+ "header.links.programs": "Programmes",
+ "header.links.content.search": "Découvrir les nouveautés",
+ "header.links.schools": "Écoles et Partenaires",
+ "header.user.menu.dashboard": "Tableau de bord",
+ "header.user.menu.profile": "Profil",
+ "header.user.menu.account.settings": "Compte",
+ "header.user.menu.order.history": "Historique des commandes",
+ "header.user.menu.logout": "Déconnexion",
+ "header.user.menu.login": "Connexion",
+ "header.user.menu.register": "S'inscrire",
+ "header.user.menu.studio.home": "Accueil Studio",
+ "header.label.account.nav": "Compte",
+ "header.label.account.menu": "Menu de compte",
+ "header.label.account.menu.for": "Menu de compte pour {username}",
+ "header.label.main.nav": "Principal",
+ "header.label.main.menu": "Menu principal",
+ "header.label.main.header": "Principal",
+ "header.label.secondary.nav": "Secondaire",
+ "header.label.skip.nav": "Passer au contenu de cette vue",
+ "header.label.app.nav": "Application",
+ "general.register.sentenceCase": "Inscription",
+ "general.signIn.sentenceCase": "Connexion",
+ "header.menu.dashboard.label": "Tableau de bord",
+ "header.help.label": "Aide",
+ "header.menu.profile.label": "Profil",
+ "header.menu.account.label": "Compte",
+ "header.menu.orderHistory.label": "Historique des commandes",
+ "header.navigation.skipNavLink": "Passer au contenu principal.",
+ "header.menu.signOut.label": "Se déconnecter",
+ "header.user.menu.studio": "Accueil Studio",
+ "header.label.courseOutline": "Retour au plan de cours dans Studio",
+ "header.label.search.nav": "Rechercher du contenu"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/he.json b/src/i18n/messages/frontend-component-header/he.json
new file mode 100644
index 00000000..b367da87
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/he.json
@@ -0,0 +1,36 @@
+{
+ "header.links.courses": "קורסים",
+ "header.links.programs": "תוכניות",
+ "header.links.content.search": "קורסים",
+ "header.links.schools": "מוסדות ושותפים",
+ "header.user.menu.dashboard": "אזור אישי",
+ "header.user.menu.profile": "פרופיל",
+ "header.user.menu.account.settings": "חשבון",
+ "header.user.menu.order.history": "היסטוריית הזמנות",
+ "header.user.menu.logout": "יציאה",
+ "header.user.menu.login": "כניסה",
+ "header.user.menu.register": "הרשמה",
+ "header.user.menu.studio.home": "הבית של הסטודיו",
+ "header.user.menu.studio.maintenance": "תחזוקה",
+ "header.label.account.nav": "חשבון",
+ "header.label.account.menu": "תפריט חשבון",
+ "header.label.account.menu.for": "תפריט החשבון {username}",
+ "header.label.main.nav": "ראשי",
+ "header.label.main.menu": "תפריט ראשי",
+ "header.label.main.header": "ראשי",
+ "header.label.secondary.nav": "תיכון",
+ "header.label.skip.nav": "דילוג לתוכן הראשי",
+ "header.label.app.nav": "יישום",
+ "general.register.sentenceCase": "הרשמה",
+ "general.signIn.sentenceCase": "כניסה",
+ "header.menu.dashboard.label": "אזור אישי",
+ "header.help.label": "עזרה",
+ "header.menu.profile.label": "פרופיל",
+ "header.menu.account.label": "חשבון",
+ "header.menu.orderHistory.label": "היסטוריית הזמנות",
+ "header.navigation.skipNavLink": "דילוג לתוכן הראשי.",
+ "header.menu.signOut.label": "יציאה",
+ "header.user.menu.studio": "הבית של הסטודיו",
+ "header.user.menu.maintenance": "תחזוקה",
+ "header.label.courseOutline": "חזרה למתווה הקורס בסטודיו"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/hi.json b/src/i18n/messages/frontend-component-header/hi.json
new file mode 100644
index 00000000..fdcd741a
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/hi.json
@@ -0,0 +1,35 @@
+{
+ "header.links.courses": "पाठ्यक्रम",
+ "header.links.programs": "कार्यक्रमों",
+ "header.links.content.search": "नया खोजें",
+ "header.links.schools": "स्कूलों और भागीदारों",
+ "header.user.menu.dashboard": "डैशबोर्ड",
+ "header.user.menu.profile": "प्रोफ़ाइल",
+ "header.user.menu.account.settings": "खाता",
+ "header.user.menu.order.history": "ऑर्डर इतिहास",
+ "header.user.menu.logout": "लॉग आउट",
+ "header.user.menu.login": "लॉगिन",
+ "header.user.menu.register": "साइन अप",
+ "header.user.menu.studio.home": "स्टूडियो होम",
+ "header.label.account.nav": "खाता",
+ "header.label.account.menu": "खाता मेनू",
+ "header.label.account.menu.for": "{username} के लिए खाता मेनू",
+ "header.label.main.nav": "मुख्य",
+ "header.label.main.menu": "मुख्य मेनू",
+ "header.label.main.header": "मुख्य",
+ "header.label.secondary.nav": "माध्यमिक",
+ "header.label.skip.nav": "मुख्य विषयवस्तु में जाएं",
+ "header.label.app.nav": "ऐप",
+ "general.register.sentenceCase": "रजिस्टर करें",
+ "general.signIn.sentenceCase": "साइन इन करें",
+ "header.menu.dashboard.label": "डैशबोर्ड",
+ "header.help.label": "मदद",
+ "header.menu.profile.label": "प्रोफ़ाइल",
+ "header.menu.account.label": "खाता",
+ "header.menu.orderHistory.label": "ऑर्डर इतिहास",
+ "header.navigation.skipNavLink": "मुख्य सामग्री पर जाएँ।",
+ "header.menu.signOut.label": "साइन आउट करें",
+ "header.user.menu.studio": "स्टूडियो होम",
+ "header.label.courseOutline": "स्टूडियो में पाठ्यक्रम की रूपरेखा पर वापस जाएँ",
+ "header.label.search.nav": "खोज सामग्री"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/id.json b/src/i18n/messages/frontend-component-header/id.json
new file mode 100644
index 00000000..7ffb7879
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/id.json
@@ -0,0 +1,36 @@
+{
+ "header.links.courses": "Courses",
+ "header.links.programs": "Programs",
+ "header.links.content.search": "Discover New",
+ "header.links.schools": "Schools & Partners",
+ "header.user.menu.dashboard": "Dashboard",
+ "header.user.menu.profile": "Profile",
+ "header.user.menu.account.settings": "Account",
+ "header.user.menu.order.history": "Order History",
+ "header.user.menu.logout": "Logout",
+ "header.user.menu.login": "Login",
+ "header.user.menu.register": "Sign Up",
+ "header.user.menu.studio.home": "Studio Home",
+ "header.user.menu.studio.maintenance": "Maintenance",
+ "header.label.account.nav": "Account",
+ "header.label.account.menu": "Account Menu",
+ "header.label.account.menu.for": "Account menu for {username}",
+ "header.label.main.nav": "Main",
+ "header.label.main.menu": "Main Menu",
+ "header.label.main.header": "Main",
+ "header.label.secondary.nav": "Secondary",
+ "header.label.skip.nav": "Skip to main content",
+ "header.label.app.nav": "App",
+ "general.register.sentenceCase": "Register",
+ "general.signIn.sentenceCase": "Sign in",
+ "header.menu.dashboard.label": "Dashboard",
+ "header.help.label": "Help",
+ "header.menu.profile.label": "Profile",
+ "header.menu.account.label": "Account",
+ "header.menu.orderHistory.label": "Order History",
+ "header.navigation.skipNavLink": "Skip to main content.",
+ "header.menu.signOut.label": "Sign Out",
+ "header.user.menu.studio": "Studio Home",
+ "header.user.menu.maintenance": "Maintenance",
+ "header.label.courseOutline": "Back to course outline in Studio"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/it_IT.json b/src/i18n/messages/frontend-component-header/it_IT.json
new file mode 100644
index 00000000..b7bdd024
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/it_IT.json
@@ -0,0 +1,36 @@
+{
+ "header.links.courses": "Corsi",
+ "header.links.programs": "Programmi",
+ "header.links.content.search": "Scopri tutti i corsi",
+ "header.links.schools": "Scuole e Partner",
+ "header.user.menu.dashboard": "I miei corsi",
+ "header.user.menu.profile": "Profilo",
+ "header.user.menu.account.settings": "Account",
+ "header.user.menu.order.history": "Cronologia Ordini",
+ "header.user.menu.logout": "Logout",
+ "header.user.menu.login": "Login",
+ "header.user.menu.register": "Registrazione",
+ "header.user.menu.studio.home": "Home di Studio",
+ "header.user.menu.studio.maintenance": "Manutenzione",
+ "header.label.account.nav": "Account",
+ "header.label.account.menu": "Menu Account ",
+ "header.label.account.menu.for": "Menu Account per {username}",
+ "header.label.main.nav": "Principale ",
+ "header.label.main.menu": "Menu Principale ",
+ "header.label.main.header": "Principale ",
+ "header.label.secondary.nav": "Superiori",
+ "header.label.skip.nav": "Passa al contenuto principale",
+ "header.label.app.nav": "App",
+ "general.register.sentenceCase": "Registrazione",
+ "general.signIn.sentenceCase": "Accedi",
+ "header.menu.dashboard.label": "I miei corsi",
+ "header.help.label": "Aiuto",
+ "header.menu.profile.label": "Profilo",
+ "header.menu.account.label": "Account",
+ "header.menu.orderHistory.label": "Cronologia Ordini",
+ "header.navigation.skipNavLink": "Passa al contenuto principale. ",
+ "header.menu.signOut.label": "Esci",
+ "header.user.menu.studio": "Home di Studio",
+ "header.user.menu.maintenance": "Manutenzione",
+ "header.label.courseOutline": "Torna alla struttura del corso in Studio"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/lv.json b/src/i18n/messages/frontend-component-header/lv.json
new file mode 100644
index 00000000..cf00a8b7
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/lv.json
@@ -0,0 +1,35 @@
+{
+ "header.links.courses": "Kursi",
+ "header.links.programs": "Programmas",
+ "header.links.content.search": "Atklājiet jaunumus",
+ "header.links.schools": "Skolas un partneri",
+ "header.user.menu.dashboard": "Informācijas panelis",
+ "header.user.menu.profile": "Profils",
+ "header.user.menu.account.settings": "Konts",
+ "header.user.menu.order.history": "Pasūtījumu vēsture",
+ "header.user.menu.logout": "Izlogoties",
+ "header.user.menu.login": "Pieslēgties",
+ "header.user.menu.register": "Pierakstīties",
+ "header.user.menu.studio.home": "Studio mājas lapa",
+ "header.label.account.nav": "Konts",
+ "header.label.account.menu": "Kontu izvēlne",
+ "header.label.account.menu.for": "Konta izvēlne {username}",
+ "header.label.main.nav": "Galvenā",
+ "header.label.main.menu": "Galvenā izvēlne",
+ "header.label.main.header": "Galvenā",
+ "header.label.secondary.nav": "Sekundārais",
+ "header.label.skip.nav": "Pāriet uz galveno saturu",
+ "header.label.app.nav": "App",
+ "general.register.sentenceCase": "Reģistrēties",
+ "general.signIn.sentenceCase": "Ielogoties",
+ "header.menu.dashboard.label": "Informācijas panelis",
+ "header.help.label": "Palīdzība",
+ "header.menu.profile.label": "Profils",
+ "header.menu.account.label": "Konts",
+ "header.menu.orderHistory.label": "Pasūtījumu vēsture",
+ "header.navigation.skipNavLink": "Pāriet uz galveno saturu.",
+ "header.menu.signOut.label": "Izrakstīties",
+ "header.user.menu.studio": "Studio mājas lapa",
+ "header.label.courseOutline": "Atgriezties uz kursa izklāstu programmā Studio",
+ "header.label.search.nav": "Meklēt saturu"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/pt_BR.json b/src/i18n/messages/frontend-component-header/pt_BR.json
new file mode 100644
index 00000000..2bd84d66
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/pt_BR.json
@@ -0,0 +1,36 @@
+{
+ "header.links.courses": "Cursos",
+ "header.links.programs": "Programas",
+ "header.links.content.search": "Descubra Novos",
+ "header.links.schools": "Faculdades e Parceiros",
+ "header.user.menu.dashboard": "Painel de controle",
+ "header.user.menu.profile": "Perfil",
+ "header.user.menu.account.settings": "Conta",
+ "header.user.menu.order.history": "Histórico de pedidos",
+ "header.user.menu.logout": "Sair",
+ "header.user.menu.login": "Login",
+ "header.user.menu.register": "Registrar-se",
+ "header.user.menu.studio.home": "Estúdio em casa",
+ "header.user.menu.studio.maintenance": "Manutenção",
+ "header.label.account.nav": "Conta",
+ "header.label.account.menu": "Menu da conta",
+ "header.label.account.menu.for": "Menu de conta para {username}",
+ "header.label.main.nav": "Principal",
+ "header.label.main.menu": "Menu principal",
+ "header.label.main.header": "Principal",
+ "header.label.secondary.nav": "Secundário",
+ "header.label.skip.nav": "Pular para o conteúdo principal",
+ "header.label.app.nav": "Aplicativo",
+ "general.register.sentenceCase": "Registrar",
+ "general.signIn.sentenceCase": "Entrar",
+ "header.menu.dashboard.label": "Painel de controle",
+ "header.help.label": "Ajuda",
+ "header.menu.profile.label": "Perfil",
+ "header.menu.account.label": "Conta",
+ "header.menu.orderHistory.label": "Histórico de pedidos",
+ "header.navigation.skipNavLink": "Ir para o conteúdo principal.",
+ "header.menu.signOut.label": "Sair",
+ "header.user.menu.studio": "Estúdio em casa",
+ "header.user.menu.maintenance": "Manutenção",
+ "header.label.courseOutline": "Visualizar resumo do curso no Studio"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/pt_PT.json b/src/i18n/messages/frontend-component-header/pt_PT.json
new file mode 100644
index 00000000..dd7df585
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/pt_PT.json
@@ -0,0 +1,35 @@
+{
+ "header.links.courses": "Cursos",
+ "header.links.programs": "Programas",
+ "header.links.content.search": "Explorar Novo",
+ "header.links.schools": "Escolas & Parceiros",
+ "header.user.menu.dashboard": "Painel de Controlo",
+ "header.user.menu.profile": "Perfil",
+ "header.user.menu.account.settings": "Conta",
+ "header.user.menu.order.history": "Histórico de Encomendas",
+ "header.user.menu.logout": "Sair",
+ "header.user.menu.login": "Iniciar sessão",
+ "header.user.menu.register": "Registar-se",
+ "header.user.menu.studio.home": "Início do Studio ",
+ "header.label.account.nav": "Conta",
+ "header.label.account.menu": "Menu de Conta",
+ "header.label.account.menu.for": "Menu da conta para {username}",
+ "header.label.main.nav": "Principal",
+ "header.label.main.menu": "Menu Principal",
+ "header.label.main.header": "Principal",
+ "header.label.secondary.nav": "Secundário",
+ "header.label.skip.nav": "Saltar para o conteúdo principal",
+ "header.label.app.nav": "App",
+ "general.register.sentenceCase": "Registe-se",
+ "general.signIn.sentenceCase": "Iniciar sessão",
+ "header.menu.dashboard.label": "Painel de Controlo",
+ "header.help.label": "Ajuda",
+ "header.menu.profile.label": "Perfil",
+ "header.menu.account.label": "Conta",
+ "header.menu.orderHistory.label": "Histórico de Encomendas",
+ "header.navigation.skipNavLink": "Saltar para o conteúdo principal.",
+ "header.menu.signOut.label": "Terminar Sessão",
+ "header.user.menu.studio": "Início do Studio ",
+ "header.label.courseOutline": "Voltar ao resumo do curso no Studio",
+ "header.label.search.nav": "Pesquisar conteúdo"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/ru.json b/src/i18n/messages/frontend-component-header/ru.json
new file mode 100644
index 00000000..cabd1671
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/ru.json
@@ -0,0 +1,36 @@
+{
+ "header.links.courses": "Курсы",
+ "header.links.programs": "Программы",
+ "header.links.content.search": "Каталог курсов",
+ "header.links.schools": "Учебные заведения и партнёры",
+ "header.user.menu.dashboard": "Панель управления",
+ "header.user.menu.profile": "Профиль",
+ "header.user.menu.account.settings": "Учётная запись",
+ "header.user.menu.order.history": "История заказов",
+ "header.user.menu.logout": "Выйти",
+ "header.user.menu.login": "Войти",
+ "header.user.menu.register": "Зарегистрироваться",
+ "header.user.menu.studio.home": "Studio Дом",
+ "header.user.menu.studio.maintenance": "Техническое обслуживание",
+ "header.label.account.nav": "Учётная запись",
+ "header.label.account.menu": "Меню учетной записи",
+ "header.label.account.menu.for": "Меню учетной записи для {username}",
+ "header.label.main.nav": "Главный",
+ "header.label.main.menu": "Главное меню",
+ "header.label.main.header": "Главный",
+ "header.label.secondary.nav": "Среднее образование",
+ "header.label.skip.nav": "Перейти к основному содержимому",
+ "header.label.app.nav": "Приложение",
+ "general.register.sentenceCase": "Регистрация",
+ "general.signIn.sentenceCase": "Вход",
+ "header.menu.dashboard.label": "Панель управления",
+ "header.help.label": "Помощь",
+ "header.menu.profile.label": "Профиль",
+ "header.menu.account.label": "Учётная запись",
+ "header.menu.orderHistory.label": "История заказов",
+ "header.navigation.skipNavLink": "Перейти к контенту",
+ "header.menu.signOut.label": "Выйти",
+ "header.user.menu.studio": "Studio Дом",
+ "header.user.menu.maintenance": "Техническое обслуживание",
+ "header.label.courseOutline": "Вернуться к плану курса в Студии"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/sw.json b/src/i18n/messages/frontend-component-header/sw.json
new file mode 100644
index 00000000..276780de
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/sw.json
@@ -0,0 +1,36 @@
+{
+ "header.links.courses": "Kozi",
+ "header.links.programs": "Mipango",
+ "header.links.content.search": "Gundua Mpya",
+ "header.links.schools": "Shule na Washirika",
+ "header.user.menu.dashboard": "Dashibodi",
+ "header.user.menu.profile": "Wasifu",
+ "header.user.menu.account.settings": "Akaunti",
+ "header.user.menu.order.history": "Historia ya Agizo",
+ "header.user.menu.logout": "Ondoka",
+ "header.user.menu.login": "Ingia",
+ "header.user.menu.register": "Jisajili",
+ "header.user.menu.studio.home": "Nyumbani kwa Studio",
+ "header.user.menu.studio.maintenance": "Matengenezo",
+ "header.label.account.nav": "Akaunti",
+ "header.label.account.menu": "Menyu ya Akaunti",
+ "header.label.account.menu.for": "Menyu ya akaunti ya {username}",
+ "header.label.main.nav": "Kuu",
+ "header.label.main.menu": "Menyu kuu",
+ "header.label.main.header": "Kuu",
+ "header.label.secondary.nav": "Sekondari",
+ "header.label.skip.nav": "Ruka hadi kwa yaliyomo kuu",
+ "header.label.app.nav": "Programu",
+ "general.register.sentenceCase": "Sajili",
+ "general.signIn.sentenceCase": "Weka sahihi",
+ "header.menu.dashboard.label": "Dashibodi",
+ "header.help.label": "Msaada",
+ "header.menu.profile.label": "Wasifu",
+ "header.menu.account.label": "Akaunti",
+ "header.menu.orderHistory.label": "Historia ya Agizo",
+ "header.navigation.skipNavLink": "Ruka hadi kwa yaliyomo kuu.",
+ "header.menu.signOut.label": "Toka",
+ "header.user.menu.studio": "Nyumbani kwa Studio",
+ "header.user.menu.maintenance": "Matengenezo",
+ "header.label.courseOutline": "Rudi kwenye muhtasari wa kozi katika Studio"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/te.json b/src/i18n/messages/frontend-component-header/te.json
new file mode 100644
index 00000000..58634641
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/te.json
@@ -0,0 +1,36 @@
+{
+ "header.links.courses": "కోర్సులు",
+ "header.links.programs": "కార్యక్రమాలు",
+ "header.links.content.search": "క్రొత్తదాన్ని కనుగొనండి",
+ "header.links.schools": "పాఠశాలలు & భాగస్వాములు",
+ "header.user.menu.dashboard": "డాష్బోర్డ్",
+ "header.user.menu.profile": "ప్రొఫైల్",
+ "header.user.menu.account.settings": "ఖాతా",
+ "header.user.menu.order.history": "ఆర్డర్ చరిత్ర",
+ "header.user.menu.logout": "లాగ్అవుట్",
+ "header.user.menu.login": "ప్రవేశించండి",
+ "header.user.menu.register": "చేరడం",
+ "header.user.menu.studio.home": "స్టూడియో హోమ్",
+ "header.user.menu.studio.maintenance": "నిర్వహణ",
+ "header.label.account.nav": "ఖాతా",
+ "header.label.account.menu": "ఖాతా మెను",
+ "header.label.account.menu.for": "{username} కోసం ఖాతా మెను",
+ "header.label.main.nav": "ప్రధాన",
+ "header.label.main.menu": "ప్రధాన మెనూ",
+ "header.label.main.header": "ప్రధాన",
+ "header.label.secondary.nav": "సెకండరీ",
+ "header.label.skip.nav": "ప్రధాన కంటెంట్కి దాటవేయండి",
+ "header.label.app.nav": "యాప్",
+ "general.register.sentenceCase": "నమోదు చేసుకోండి",
+ "general.signIn.sentenceCase": "సైన్ ఇన్ చేయండి",
+ "header.menu.dashboard.label": "డాష్బోర్డ్",
+ "header.help.label": "సహాయం",
+ "header.menu.profile.label": "ప్రొఫైల్",
+ "header.menu.account.label": "ఖాతా",
+ "header.menu.orderHistory.label": "ఆర్డర్ చరిత్ర",
+ "header.navigation.skipNavLink": "ప్రధాన కంటెంట్కి దాటవేయండి.",
+ "header.menu.signOut.label": "సైన్ అవుట్ చేయండి",
+ "header.user.menu.studio": "స్టూడియో హోమ్",
+ "header.user.menu.maintenance": "నిర్వహణ",
+ "header.label.courseOutline": "స్టూడియోలోని కోర్సు అవుట్లైన్కి తిరిగి వెళ్ళు"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/th.json b/src/i18n/messages/frontend-component-header/th.json
new file mode 100644
index 00000000..9f1767f1
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/th.json
@@ -0,0 +1,36 @@
+{
+ "header.links.courses": "Courses",
+ "header.links.programs": "Programs",
+ "header.links.content.search": "ค้นหารายวิชา",
+ "header.links.schools": "Schools & Partners",
+ "header.user.menu.dashboard": "Dashboard",
+ "header.user.menu.profile": "Profile",
+ "header.user.menu.account.settings": "Account",
+ "header.user.menu.order.history": "Order History",
+ "header.user.menu.logout": "ออกจากระบบ",
+ "header.user.menu.login": "เข้าสู่ระบบ",
+ "header.user.menu.register": "Sign Up",
+ "header.user.menu.studio.home": "สตูดิโอโฮม",
+ "header.user.menu.studio.maintenance": "บำรุงรักษา",
+ "header.label.account.nav": "Account",
+ "header.label.account.menu": "เมนูบัญชี",
+ "header.label.account.menu.for": "เมนูบัญชีสำหรับ {username}",
+ "header.label.main.nav": "หลัก",
+ "header.label.main.menu": "เมนูหลัก",
+ "header.label.main.header": "หลัก",
+ "header.label.secondary.nav": "มัธยมศึกษาตอนปลาย",
+ "header.label.skip.nav": "Skip to main content",
+ "header.label.app.nav": "แอป",
+ "general.register.sentenceCase": "Register",
+ "general.signIn.sentenceCase": "Sign in",
+ "header.menu.dashboard.label": "Dashboard",
+ "header.help.label": "Help",
+ "header.menu.profile.label": "Profile",
+ "header.menu.account.label": "Account",
+ "header.menu.orderHistory.label": "Order History",
+ "header.navigation.skipNavLink": "ข้ามไปที่เนื้อหาหลัก",
+ "header.menu.signOut.label": "Sign Out",
+ "header.user.menu.studio": "สตูดิโอโฮม",
+ "header.user.menu.maintenance": "บำรุงรักษา",
+ "header.label.courseOutline": "กลับไปที่โครงร่างหลักสูตรใน Studio"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/tr_TR.json b/src/i18n/messages/frontend-component-header/tr_TR.json
new file mode 100644
index 00000000..99dff95c
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/tr_TR.json
@@ -0,0 +1,36 @@
+{
+ "header.links.courses": "Dersler",
+ "header.links.programs": "Programlar",
+ "header.links.content.search": "Dersleri Keşfet",
+ "header.links.schools": "Okullar & İş Ortakları",
+ "header.user.menu.dashboard": "Ana panel",
+ "header.user.menu.profile": "Profil",
+ "header.user.menu.account.settings": "Hesap",
+ "header.user.menu.order.history": "Sipariş Geçmişi",
+ "header.user.menu.logout": "Oturumu Kapat",
+ "header.user.menu.login": "Giriş",
+ "header.user.menu.register": "Kayıt Ol",
+ "header.user.menu.studio.home": "Studio Anasayfa",
+ "header.user.menu.studio.maintenance": "Bakım",
+ "header.label.account.nav": "Hesap",
+ "header.label.account.menu": "Hesap Menüsü",
+ "header.label.account.menu.for": "{username} için hesap menüsü",
+ "header.label.main.nav": "Ana",
+ "header.label.main.menu": "Ana Menü",
+ "header.label.main.header": "Ana",
+ "header.label.secondary.nav": "İkincil",
+ "header.label.skip.nav": "Ana içeriğe dön",
+ "header.label.app.nav": "Uygulama",
+ "general.register.sentenceCase": "Kayıt Ol",
+ "general.signIn.sentenceCase": "Giriş Yap",
+ "header.menu.dashboard.label": "Ana panel",
+ "header.help.label": "Yardım",
+ "header.menu.profile.label": "Profil",
+ "header.menu.account.label": "Hesap",
+ "header.menu.orderHistory.label": "Sipariş Geçmişi",
+ "header.navigation.skipNavLink": "Ana içeriğe dön.",
+ "header.menu.signOut.label": "Çıkış Yap",
+ "header.user.menu.studio": "Studio Anasayfa",
+ "header.user.menu.maintenance": "Bakım",
+ "header.label.courseOutline": "Studio'da ders anahattına geri dön"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/uk.json b/src/i18n/messages/frontend-component-header/uk.json
new file mode 100644
index 00000000..4b3b714c
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/uk.json
@@ -0,0 +1,36 @@
+{
+ "header.links.courses": "Курси",
+ "header.links.programs": "Програми",
+ "header.links.content.search": "Відкривайте Нове",
+ "header.links.schools": "Школи та партнери",
+ "header.user.menu.dashboard": "Мої курси",
+ "header.user.menu.profile": "Профіль",
+ "header.user.menu.account.settings": "Обліковий запис",
+ "header.user.menu.order.history": "Історія замовлень",
+ "header.user.menu.logout": "Вийти",
+ "header.user.menu.login": "Увійти",
+ "header.user.menu.register": "Зареєструватися",
+ "header.user.menu.studio.home": "Головна сторінка в Студії",
+ "header.user.menu.studio.maintenance": "Технічні робити",
+ "header.label.account.nav": "Обліковий запис",
+ "header.label.account.menu": "Меню облікового запису",
+ "header.label.account.menu.for": "Меню облікового запису для {username}",
+ "header.label.main.nav": "Головна",
+ "header.label.main.menu": "Головне меню",
+ "header.label.main.header": "Головна",
+ "header.label.secondary.nav": "Середня",
+ "header.label.skip.nav": "Перейти до головного змісту",
+ "header.label.app.nav": "Додаток",
+ "general.register.sentenceCase": "Зареєструватися",
+ "general.signIn.sentenceCase": "Увійти",
+ "header.menu.dashboard.label": "Мої курси",
+ "header.help.label": "Допомога",
+ "header.menu.profile.label": "Профіль",
+ "header.menu.account.label": "Обліковий запис",
+ "header.menu.orderHistory.label": "Історія замовлень",
+ "header.navigation.skipNavLink": "Перейти до головного змісту.",
+ "header.menu.signOut.label": "Вийти",
+ "header.user.menu.studio": "Головна сторінка в Студії",
+ "header.user.menu.maintenance": "Технічні робити",
+ "header.label.courseOutline": "Повернутися до плану курсу в Studio"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/uz.json b/src/i18n/messages/frontend-component-header/uz.json
new file mode 100644
index 00000000..fd308321
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/uz.json
@@ -0,0 +1,35 @@
+{
+ "header.links.courses": "Kurslar",
+ "header.links.programs": "Dasturlar",
+ "header.links.content.search": "Yangi kashf",
+ "header.links.schools": "Maktablar va hamkorlar",
+ "header.user.menu.dashboard": "Boshqaruv paneli",
+ "header.user.menu.profile": "Profil",
+ "header.user.menu.account.settings": "Account",
+ "header.user.menu.order.history": "Buyurtma tarixi",
+ "header.user.menu.logout": "Chiqish",
+ "header.user.menu.login": "Tizimga kirish",
+ "header.user.menu.register": "Ro'yxatdan o'tish",
+ "header.user.menu.studio.home": "Studio uyi",
+ "header.label.account.nav": "Account",
+ "header.label.account.menu": "Account menyusi",
+ "header.label.account.menu.for": "{username} uchun account menyusi",
+ "header.label.main.nav": "Asosiy",
+ "header.label.main.menu": "Asosiy menyu",
+ "header.label.main.header": "Asosiy",
+ "header.label.secondary.nav": "Ikkilamchi",
+ "header.label.skip.nav": "Asosiy tarkibga o'tish",
+ "header.label.app.nav": "Ilova",
+ "general.register.sentenceCase": "Roʻyxatdan oʻtish",
+ "general.signIn.sentenceCase": "Tizimga kirish",
+ "header.menu.dashboard.label": "Boshqaruv paneli",
+ "header.help.label": "Yordam",
+ "header.menu.profile.label": "Profil",
+ "header.menu.account.label": "Account",
+ "header.menu.orderHistory.label": "Buyurtma tarixi",
+ "header.navigation.skipNavLink": "Asosiy tarkibga o'tish.",
+ "header.menu.signOut.label": "Tizimdan chiqish",
+ "header.user.menu.studio": "Studio uyi",
+ "header.label.courseOutline": "Studiyadagi kurs rejasiga qaytish",
+ "header.label.search.nav": "Kontentni qidirish"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/vi.json b/src/i18n/messages/frontend-component-header/vi.json
new file mode 100644
index 00000000..ea505254
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/vi.json
@@ -0,0 +1,35 @@
+{
+ "header.links.courses": "Khóa học",
+ "header.links.programs": "Chương trình",
+ "header.links.content.search": "Khám phá mới",
+ "header.links.schools": "Trường học & Đối tác",
+ "header.user.menu.dashboard": "Bảng điều khiển",
+ "header.user.menu.profile": "Hồ sơ",
+ "header.user.menu.account.settings": "Tài khoản",
+ "header.user.menu.order.history": "Lịch sử đơn hàng",
+ "header.user.menu.logout": "Đăng xuất",
+ "header.user.menu.login": "Đăng nhập",
+ "header.user.menu.register": "Đăng ký",
+ "header.user.menu.studio.home": "Trang chủ Studio",
+ "header.label.account.nav": "Tài khoản",
+ "header.label.account.menu": "Trình đơn tài khoản",
+ "header.label.account.menu.for": "Trình đơn tài khoản cho {username}",
+ "header.label.main.nav": "Chính",
+ "header.label.main.menu": "Trình đơn chính",
+ "header.label.main.header": "Chính",
+ "header.label.secondary.nav": "Thứ cấp",
+ "header.label.skip.nav": "Chuyển đến nội dung chính",
+ "header.label.app.nav": "Ứng dụng",
+ "general.register.sentenceCase": "Đăng ký",
+ "general.signIn.sentenceCase": "Đăng nhập",
+ "header.menu.dashboard.label": "Bảng điều khiển",
+ "header.help.label": "Trợ giúp",
+ "header.menu.profile.label": "Hồ sơ",
+ "header.menu.account.label": "Tài khoản",
+ "header.menu.orderHistory.label": "Lịch sử đơn hàng",
+ "header.navigation.skipNavLink": "Chuyển đến nội dung chính.",
+ "header.menu.signOut.label": "Đăng xuất",
+ "header.user.menu.studio": "Trang chủ Studio",
+ "header.label.courseOutline": "Quay lại đề cương khóa học trong Studio",
+ "header.label.search.nav": "Tìm kiếm nội dung"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/zh_CN.json b/src/i18n/messages/frontend-component-header/zh_CN.json
new file mode 100644
index 00000000..6772fbe5
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/zh_CN.json
@@ -0,0 +1,36 @@
+{
+ "header.links.courses": "课程",
+ "header.links.programs": "项目",
+ "header.links.content.search": "探索新的课程",
+ "header.links.schools": "学校 & 伙伴",
+ "header.user.menu.dashboard": "课程面板",
+ "header.user.menu.profile": "个人主页",
+ "header.user.menu.account.settings": "账户",
+ "header.user.menu.order.history": "订单记录",
+ "header.user.menu.logout": "退出",
+ "header.user.menu.login": "登录",
+ "header.user.menu.register": "注册",
+ "header.user.menu.studio.home": "工作室主页",
+ "header.user.menu.studio.maintenance": "维护",
+ "header.label.account.nav": "账号",
+ "header.label.account.menu": "账户菜单",
+ "header.label.account.menu.for": "{username} 的帐户菜单",
+ "header.label.main.nav": "主要",
+ "header.label.main.menu": "主菜单",
+ "header.label.main.header": "主要",
+ "header.label.secondary.nav": "高中",
+ "header.label.skip.nav": "跳转到主要内容",
+ "header.label.app.nav": "应用",
+ "general.register.sentenceCase": "注册",
+ "general.signIn.sentenceCase": "登录",
+ "header.menu.dashboard.label": "课程面板",
+ "header.help.label": "帮助",
+ "header.menu.profile.label": "个人主页",
+ "header.menu.account.label": "账号",
+ "header.menu.orderHistory.label": "订单记录",
+ "header.navigation.skipNavLink": "跳回主頁",
+ "header.menu.signOut.label": "注销",
+ "header.user.menu.studio": "工作室主页",
+ "header.user.menu.maintenance": "维护",
+ "header.label.courseOutline": "返回 Studio 中的课程大纲"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-component-header/zh_HK.json b/src/i18n/messages/frontend-component-header/zh_HK.json
new file mode 100644
index 00000000..eda7f161
--- /dev/null
+++ b/src/i18n/messages/frontend-component-header/zh_HK.json
@@ -0,0 +1,35 @@
+{
+ "header.links.courses": "課程",
+ "header.links.programs": "精選課程",
+ "header.links.content.search": "發現新內容",
+ "header.links.schools": "學校及合作夥伴",
+ "header.user.menu.dashboard": "控制面板",
+ "header.user.menu.profile": "用戶資料",
+ "header.user.menu.account.settings": "帳戶",
+ "header.user.menu.order.history": "訂單歷史",
+ "header.user.menu.logout": "登出",
+ "header.user.menu.login": "登入",
+ "header.user.menu.register": "報名",
+ "header.user.menu.studio.home": "工作室主頁",
+ "header.label.account.nav": "帳戶",
+ "header.label.account.menu": "帳戶選單",
+ "header.label.account.menu.for": "{username}的帳號選單",
+ "header.label.main.nav": "主要",
+ "header.label.main.menu": "主選單",
+ "header.label.main.header": "主要",
+ "header.label.secondary.nav": "次要",
+ "header.label.skip.nav": "跳至主要內容",
+ "header.label.app.nav": "應用程式",
+ "general.register.sentenceCase": "登記",
+ "general.signIn.sentenceCase": "登入",
+ "header.menu.dashboard.label": "控制面板",
+ "header.help.label": "幫助",
+ "header.menu.profile.label": "用戶資料",
+ "header.menu.account.label": "帳戶",
+ "header.menu.orderHistory.label": "訂單歷史",
+ "header.navigation.skipNavLink": "跳至主要內容。",
+ "header.menu.signOut.label": "登出",
+ "header.user.menu.studio": "工作室主頁",
+ "header.label.courseOutline": "返回工作室中的課程大綱",
+ "header.label.search.nav": "搜尋內容"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/ar.json b/src/i18n/messages/frontend-platform/ar.json
new file mode 100644
index 00000000..9f786831
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/ar.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "حدث خطأ غير متوقع. الرجاء الضغط على الزر أدناه لتحديث الصفحة.",
+ "unexpected.error.button.text": "حاول ثانية"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/bo.json b/src/i18n/messages/frontend-platform/bo.json
new file mode 100644
index 00000000..c2b41ecc
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/bo.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "ངེས་མེད་ཀྱི་གནད་དོན་ཞིག་བྱུང་སོང་བས། གཤམ་གསལ་གྱི་ཐེབས་དེར་བསྣུན་ནས་ཤོག་ངོས་དེ་བསྐྱར་སྐོར་ཞིག་བྱོས།",
+ "unexpected.error.button.text": "བསྐྱར་དུ་ཚོད་ལྟ་བྱོས།"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/da.json b/src/i18n/messages/frontend-platform/da.json
new file mode 100644
index 00000000..766d22dd
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/da.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "Der opstod en uventet fejl. Klik venligst på knappen nedenfor for at opdatere siden.",
+ "unexpected.error.button.text": "Prøv igen"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/de_DE.json b/src/i18n/messages/frontend-platform/de_DE.json
new file mode 100644
index 00000000..49c26e45
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/de_DE.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "Ein unerwarteter Fehler ist aufgetreten. Bitte klicken Sie auf die Schaltfläche unten, um die Seite zu aktualisieren.",
+ "unexpected.error.button.text": "Erneut versuchen"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/el.json b/src/i18n/messages/frontend-platform/el.json
new file mode 100644
index 00000000..effea4d1
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/el.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "Προέκυψε ένα μη αναμενόμενο σφάλμα. Κάντε κλικ στο κουμπί παρακάτω για να ανανεώσετε τη σελίδα.",
+ "unexpected.error.button.text": "Προσπάθησε ξανά"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/es_419.json b/src/i18n/messages/frontend-platform/es_419.json
new file mode 100644
index 00000000..33af31fd
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/es_419.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "Ocurrió un error inesperado. Haga clic en el botón a continuación para actualizar la página.",
+ "unexpected.error.button.text": "Intentar otra vez"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/es_ES.json b/src/i18n/messages/frontend-platform/es_ES.json
new file mode 100644
index 00000000..33af31fd
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/es_ES.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "Ocurrió un error inesperado. Haga clic en el botón a continuación para actualizar la página.",
+ "unexpected.error.button.text": "Intentar otra vez"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/fa.json b/src/i18n/messages/frontend-platform/fa.json
new file mode 100644
index 00000000..e4ce6c07
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/fa.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "خطایی غیرمنتظره رخ داد. لطفاً روی دکمۀ زیر کلیک کنید تا صفحه دوباره بارگذاری شود.",
+ "unexpected.error.button.text": "دوباره امتحان کنید"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/fr_CA.json b/src/i18n/messages/frontend-platform/fr_CA.json
new file mode 100644
index 00000000..8b8617bb
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/fr_CA.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "Une erreur inattendue est survenue. Veuillez cliquer sur le bouton ci-dessous pour rafraîchir la page.",
+ "unexpected.error.button.text": "Essayer à nouveau"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/he.json b/src/i18n/messages/frontend-platform/he.json
new file mode 100644
index 00000000..316f0fcf
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/he.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "שגיאה לא צפויה התרחשה. אנא לחץ על הכפתור למטה כדי לרענן את הדף.",
+ "unexpected.error.button.text": "נסה שוב"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/hi.json b/src/i18n/messages/frontend-platform/hi.json
new file mode 100644
index 00000000..b37eb74a
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/hi.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "एक अप्रत्याशित त्रुटि हुई। पृष्ठ को ताज़ा करने के लिए कृपया नीचे दिए गए बटन पर क्लिक करें।",
+ "unexpected.error.button.text": "पुनः प्रयास करें"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/id.json b/src/i18n/messages/frontend-platform/id.json
new file mode 100644
index 00000000..bf6251da
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/id.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "An unexpected error occurred. Please click the button below to refresh the page.",
+ "unexpected.error.button.text": "Try again"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/index.js b/src/i18n/messages/frontend-platform/index.js
new file mode 100644
index 00000000..8cb6bb36
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/index.js
@@ -0,0 +1,59 @@
+// This file is generated by the openedx/frontend-platform's "intl-import.js" script.
+//
+// Refer to the i18n documents in https://docs.openedx.org/en/latest/developers/references/i18n.html to update
+// the file and use the Micro-frontend i18n pattern in new repositories.
+//
+
+import messagesOfArLanguage from './ar.json';
+import messagesOfBoLanguage from './bo.json';
+import messagesOfDaLanguage from './da.json';
+import messagesOfDeDeLanguage from './de_DE.json';
+import messagesOfElLanguage from './el.json';
+import messagesOfEs419Language from './es_419.json';
+import messagesOfEsEsLanguage from './es_ES.json';
+import messagesOfFaLanguage from './fa.json';
+import messagesOfFrCaLanguage from './fr_CA.json';
+import messagesOfHeLanguage from './he.json';
+import messagesOfHiLanguage from './hi.json';
+import messagesOfIdLanguage from './id.json';
+import messagesOfItItLanguage from './it_IT.json';
+import messagesOfLvLanguage from './lv.json';
+import messagesOfPtBrLanguage from './pt_BR.json';
+import messagesOfPtPtLanguage from './pt_PT.json';
+import messagesOfRuLanguage from './ru.json';
+import messagesOfTeLanguage from './te.json';
+import messagesOfThLanguage from './th.json';
+import messagesOfTrTrLanguage from './tr_TR.json';
+import messagesOfUkLanguage from './uk.json';
+import messagesOfUzLanguage from './uz.json';
+import messagesOfViLanguage from './vi.json';
+import messagesOfZhCnLanguage from './zh_CN.json';
+import messagesOfZhHkLanguage from './zh_HK.json';
+
+export default {
+ 'ar': messagesOfArLanguage,
+ 'zh-hk': messagesOfZhHkLanguage,
+ 'zh-cn': messagesOfZhCnLanguage,
+ 'vi': messagesOfViLanguage,
+ 'uz': messagesOfUzLanguage,
+ 'uk': messagesOfUkLanguage,
+ 'tr-tr': messagesOfTrTrLanguage,
+ 'th': messagesOfThLanguage,
+ 'te': messagesOfTeLanguage,
+ 'ru': messagesOfRuLanguage,
+ 'pt-pt': messagesOfPtPtLanguage,
+ 'pt-br': messagesOfPtBrLanguage,
+ 'lv': messagesOfLvLanguage,
+ 'it-it': messagesOfItItLanguage,
+ 'id': messagesOfIdLanguage,
+ 'hi': messagesOfHiLanguage,
+ 'he': messagesOfHeLanguage,
+ 'fr-ca': messagesOfFrCaLanguage,
+ 'fa': messagesOfFaLanguage,
+ 'es-es': messagesOfEsEsLanguage,
+ 'es-419': messagesOfEs419Language,
+ 'el': messagesOfElLanguage,
+ 'de-de': messagesOfDeDeLanguage,
+ 'da': messagesOfDaLanguage,
+ 'bo': messagesOfBoLanguage,
+};
diff --git a/src/i18n/messages/frontend-platform/it_IT.json b/src/i18n/messages/frontend-platform/it_IT.json
new file mode 100644
index 00000000..af200872
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/it_IT.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "Si è verificato un errore imprevisto. Fare clic sul pulsante in basso per aggiornare la pagina.",
+ "unexpected.error.button.text": "Riprova"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/lv.json b/src/i18n/messages/frontend-platform/lv.json
new file mode 100644
index 00000000..2f1f9583
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/lv.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "Notikusi negaidīta kļūda. Lūdzu, noklikšķiniet uz tālāk esošās pogas, lai atsvaidzinātu lapu.",
+ "unexpected.error.button.text": "Mēģini vēlreiz"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/pt_BR.json b/src/i18n/messages/frontend-platform/pt_BR.json
new file mode 100644
index 00000000..1013fa3c
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/pt_BR.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "Ocorreu um erro inesperado. Por favor, clique no botão abaixo para atualizar a página.",
+ "unexpected.error.button.text": "Tente novamente"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/pt_PT.json b/src/i18n/messages/frontend-platform/pt_PT.json
new file mode 100644
index 00000000..1013fa3c
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/pt_PT.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "Ocorreu um erro inesperado. Por favor, clique no botão abaixo para atualizar a página.",
+ "unexpected.error.button.text": "Tente novamente"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/ru.json b/src/i18n/messages/frontend-platform/ru.json
new file mode 100644
index 00000000..5a681968
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/ru.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "Произошла непредвиденная ошибка. Пожалуйста, нажмите кнопку ниже, чтобы обновить страницу.",
+ "unexpected.error.button.text": "Попробуйте еще раз"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/te.json b/src/i18n/messages/frontend-platform/te.json
new file mode 100644
index 00000000..8b4c927a
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/te.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "అనుకోని తప్పు జరిగినది. దయచేసి పేజీని రిఫ్రెష్ చేయడానికి దిగువ బటన్ను క్లిక్ చేయండి.",
+ "unexpected.error.button.text": "మళ్లీ ప్రయత్నించండి"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/th.json b/src/i18n/messages/frontend-platform/th.json
new file mode 100644
index 00000000..3db46d97
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/th.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "เกิดความผิดพลาดอย่างไม่ได้คาดคิด. กรุณาคลิกปุ่มด้านล่างเพื่อรีเฟรชหน้า",
+ "unexpected.error.button.text": "ลองอีกครั้ง"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/tr_TR.json b/src/i18n/messages/frontend-platform/tr_TR.json
new file mode 100644
index 00000000..de0140a2
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/tr_TR.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "Beklenmedik bir hata oluştu. Sayfayı yenilemek için lütfen aşağıdaki düğmeye tıklayın.",
+ "unexpected.error.button.text": "Tekrar deneyin"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/uk.json b/src/i18n/messages/frontend-platform/uk.json
new file mode 100644
index 00000000..6e0da190
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/uk.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "Сталася неочікувана помилка. Натисніть кнопку нижче, щоб оновити сторінку.",
+ "unexpected.error.button.text": "Спробуйте знову"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/uz.json b/src/i18n/messages/frontend-platform/uz.json
new file mode 100644
index 00000000..a00f38a6
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/uz.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "Kutilmagan xatolik yuz berdi. Sahifani yangilash uchun quyidagi tugmani bosing.",
+ "unexpected.error.button.text": "Qayta urinib ko‘ring"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/vi.json b/src/i18n/messages/frontend-platform/vi.json
new file mode 100644
index 00000000..6699feb4
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/vi.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "Đã xảy ra lỗi không mong muốn. Vui lòng nhấp vào nút bên dưới để làm mới trang.",
+ "unexpected.error.button.text": "Thử lại"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/zh_CN.json b/src/i18n/messages/frontend-platform/zh_CN.json
new file mode 100644
index 00000000..9862f801
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/zh_CN.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "一个意料之外的问题发生了。请点击下面的按钮刷新页面。",
+ "unexpected.error.button.text": "再试一次"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/frontend-platform/zh_HK.json b/src/i18n/messages/frontend-platform/zh_HK.json
new file mode 100644
index 00000000..7dc9bfec
--- /dev/null
+++ b/src/i18n/messages/frontend-platform/zh_HK.json
@@ -0,0 +1,4 @@
+{
+ "unexpected.error.message.text": "一個意料之外的問題發生了。請點選下面的按鈕刷新頁面。",
+ "unexpected.error.button.text": "再試一次"
+}
\ No newline at end of file
diff --git a/src/i18n/messages/paragon/ar.json b/src/i18n/messages/paragon/ar.json
new file mode 100644
index 00000000..b4cc0973
--- /dev/null
+++ b/src/i18n/messages/paragon/ar.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "A message shown when a file with less than minimum allowed size is being uploaded in Dropzone.",
+ "string": "يجب أن يكون حجم الملف أكبر من {size}."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "A message shown when a file with more than maximum allowed size is being uploaded in Dropzone.",
+ "string": "يجب أن يكون حجم الملف أقل من {size}."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "A message shown when a file with wrong MIME type is being uploaded.",
+ "string": "نوع الملف يجب ان يكون {count, plural, one {{typeString} الملف} other {احدى من {typeString} ملفات}}."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "A message shown when multiple files are dragged over Dropzone.",
+ "string": "يسمح بتحميل ملف واحد فقط."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "A message shown in case file validation in Dropzone component for unknown reason.",
+ "string": "حدثت مشكلة غير متوقعة أثناء التحقق من صحة الملف. رجاءً حاول مرة اخرى."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "A message shown in case file upload in Dropzone component results in an error.",
+ "string": "حدثت مشكلة أثناء رفع ملفك. رجاءً حاول مجددًا."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Label of a close button on Alert component",
+ "string": "تجاهل"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "Accessibility text describing the action for navigating a scrollable carousel to the next element",
+ "string": "انتقل إلى التالي"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "Accessibility text describing the action for navigating a scrollable carousel to the previous element",
+ "string": "انتقل إلى السابق"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "Accessibility text describing the action for navigating a scrollable carousel to the next element",
+ "string": "انتقل إلى التالي"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "Accessibility text describing the action for navigating a scrollable carousel to the previous element",
+ "string": "انتقل إلى السابق"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "Text for all selected label",
+ "string": "تم تحديد الـ {numSelectedRows} كلها"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "A label of clear all selection button.",
+ "string": "إلغاء التحديد"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "A label for select all button.",
+ "string": "تحديد الـ {itemCount} كلها"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "Text for selected label",
+ "string": "تم تحديد {numSelectedRows}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "Text for selected label when table is paginated",
+ "string": "تم تحديد {numSelectedRows} ({numSelectedRowsOnPage} موضح أدناه)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "Label of an action button that collapses all expandable rows of DataTable.",
+ "string": "طي الكل"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "Label of an action button that expands all expandable rows of DataTable.",
+ "string": "فتح الكل"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "A text that appears on the `Clear filters` button",
+ "string": "إزالة المرشحات"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "A text describing how many rows is shown in the table",
+ "string": "عرض {firstRow} - {lastRow} من {itemCount} ."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "Title for the sidebar filters component",
+ "string": "المرشحات"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "A message shown when uploaded file's size must be in given range.",
+ "string": "بين {sizeMin} و {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "A message shown when uploaded file's size must be more than some value.",
+ "string": "أقصى قيمة {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "A message shown when uploaded file's size must be more than some value.",
+ "string": "أدنى قيمة {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "A message shown when uploaded file must be of certain type(s).",
+ "string": "ارفع ملفات {count ، plural, one {{firstPart}} other {{firstPart} أو {secondPart}}}."
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "A text that appears as a label for input of Dropzone component.",
+ "string": "اسحب و ألق ملفك هنا أو انقر للرفع."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Label of a cancel button that is shown during file upload in Dropzone component.",
+ "string": "إلغاء"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "A text that is shown near a progress bar during file upload in Dropzone component.",
+ "string": "رفع {filename} جارٍ."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "A message shown in case when the autosuggest menu is opened.",
+ "string": "إغلاق قائمة الخيارات"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "A message shown in case when the autosuggest menu is closed.",
+ "string": "فتح قائمة الخيارات"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "رسالة قارئ الشاشة لإعلام المستخدم بوجوده في أسفل خطوة جولة المنتج.",
+ "string": "أسفل الخطوة {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "رسالة قارئ الشاشة لإعلام المستخدم بوجوده في أسفل خطوة جولة المنتج.",
+ "string": "أعلى الخطوة {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Close label for Toast component",
+ "string": "إغلاق "
+ }
+}
diff --git a/src/i18n/messages/paragon/da.json b/src/i18n/messages/paragon/da.json
new file mode 100644
index 00000000..b443ad49
--- /dev/null
+++ b/src/i18n/messages/paragon/da.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "En meddelelse, der vises, når en fil med mindre end den tilladte minimumsstørrelse uploades i Dropzone.",
+ "string": "Filen skal være større end {size} ."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "En besked, der vises, når en fil med mere end maksimal tilladt størrelse uploades i Dropzone.",
+ "string": "Filen skal være mindre end {size} ."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "En meddelelse, der vises, når en fil med forkert MIME-type uploades.",
+ "string": "Filtypen skal være {count, plural, one { {typeString} file} other {one of {typeString} files}}."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "En besked, der vises, når flere filer trækkes over Dropzone.",
+ "string": "Kun én upload tilladt."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "En besked vist i sagsfilvalidering i Dropzone-komponent af ukendt årsag.",
+ "string": "Der opstod et uventet problem under filvalidering. Prøv igen."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "En meddelelse vist i tilfælde af filupload i Dropzone-komponenten resulterer i en fejl.",
+ "string": "Der opstod et problem under upload af din fil. Prøv igen."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Etiket på en lukkeknap på Alert-komponent",
+ "string": "Afskedige"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "Tilgængelighedstekst, der beskriver handlingen for at navigere en rullebar karrusel til det næste element",
+ "string": "Rul til næste"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "Tilgængelighedstekst, der beskriver handlingen for at navigere en rullebar karrusel til det forrige element",
+ "string": "Rul til forrige"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "Tilgængelighedstekst, der beskriver handlingen for at navigere en rullebar karrusel til det næste element",
+ "string": "Rul til næste"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "Tilgængelighedstekst, der beskriver handlingen for at navigere en rullebar karrusel til det forrige element",
+ "string": "Rul til forrige"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "Tekst for alle valgte etiketter",
+ "string": "Alle {numSelectedRows} er valgt"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "En etiket med knappen Ryd alt.",
+ "string": "Ryd markering"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "En etiket til knappen Vælg alle.",
+ "string": "Vælg alle {itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "Tekst til valgt etiket",
+ "string": "{numSelectedRows} valgt"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "Tekst til valgt etiket, når tabellen er pagineret",
+ "string": "{numSelectedRows} valgt ( {numSelectedRowsOnPage} vist nedenfor)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "Etiket på en handlingsknap, der skjuler alle udvidelige rækker af DataTable.",
+ "string": "Skjul alle"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "Etiket på en handlingsknap, der udvider alle rækker af DataTable, der kan udvides.",
+ "string": "Udvid alle"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "En tekst, der vises på knappen 'Ryd filtre'",
+ "string": "Ryd filtre"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "En tekst, der beskriver, hvor mange rækker der er vist i tabellen",
+ "string": "Viser {firstRow} - {lastRow} af {itemCount} ."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "Titel for sidebjælkefiltre-komponenten",
+ "string": "Filtre"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "En meddelelse, der vises, når den uploadede fils størrelse skal være inden for et givet område.",
+ "string": "Mellem {sizeMin} og {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "En meddelelse, der vises, når den uploadede fils størrelse skal være større end en vis værdi.",
+ "string": "Max {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "En meddelelse, der vises, når den uploadede fils størrelse skal være større end en vis værdi.",
+ "string": "Min {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "En meddelelse, der vises, når filen uploades, skal være af en eller flere typer.",
+ "string": "Upload {count, plural, one { {firstPart} files} other { {firstPart} or {secondPart} files}}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "En tekst, der vises som en etiket til input af Dropzone-komponent.",
+ "string": "Træk og slip din fil her, eller klik for at uploade."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Etiket på en annulleringsknap, der vises under filupload i Dropzone-komponenten.",
+ "string": "Afbestille"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "En tekst, der vises nær en statuslinje under filupload i Dropzone-komponenten.",
+ "string": "Uploader {filename} ."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "En meddelelse vises i tilfælde af, at autoforslagsmenuen åbnes.",
+ "string": "Luk indstillingsmenuen"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "En meddelelse vises i tilfælde af, at autosuggest-menuen er lukket.",
+ "string": "Åbn indstillingsmenuen"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "Skærmlæsermeddelelse for at give brugeren besked om, at de er placeret nederst i produktrundvisningstrinnet.",
+ "string": "Nederst i trin {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "Skærmlæsermeddelelse for at give brugeren besked om, at de er placeret nederst i produktrundvisningstrinnet.",
+ "string": "Øverst på trin {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Luk etiket til Toast-komponent",
+ "string": "Tæt"
+ }
+}
diff --git a/src/i18n/messages/paragon/de.json b/src/i18n/messages/paragon/de.json
new file mode 100644
index 00000000..fb2ced0d
--- /dev/null
+++ b/src/i18n/messages/paragon/de.json
@@ -0,0 +1,118 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "A message shown when a file with less than minimum allowed size is being uploaded in Dropzone.",
+ "string": "File must be larger than {size}."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "A message shown when a file with more than maximum allowed size is being uploaded in Dropzone.",
+ "string": "File must be less than {size}."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "A message shown when a file with wrong MIME type is being uploaded.",
+ "string": "The file type must be {count, plural, one {{typeString} file} other {one of {typeString} files}}."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "A message shown when multiple files are dragged over Dropzone.",
+ "string": "Only one upload permitted."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "A message shown in case file validation in Dropzone component for unknown reason.",
+ "string": "An unexpected problem occured during file validation. Please try again."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "A message shown in case file upload in Dropzone component results in an error.",
+ "string": "A problem occured while uploading your file. Please try again."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Label of a close button on Alert component",
+ "string": "Dismiss"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "Accessibility text describing the action for navigating a scrollable carousel to the next element",
+ "string": "Scroll to next"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "Accessibility text describing the action for navigating a scrollable carousel to the previous element",
+ "string": "Scroll to previous"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "Text for all selected label",
+ "string": "All {numSelectedRows} selected"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "A label of clear all selection button.",
+ "string": "Clear selection"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "A label for select all button.",
+ "string": "Select all {itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "Text for selected label",
+ "string": "{numSelectedRows} selected"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "Text for selected label when table is paginated",
+ "string": "{numSelectedRows} selected ({numSelectedRowsOnPage} shown below)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "Label of an action button that collapses all expandable rows of DataTable.",
+ "string": "Alles einklappen"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "Label of an action button that expands all expandable rows of DataTable.",
+ "string": "Alles ausklappen"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "A text that appears on the `Clear filters` button",
+ "string": "Clear filters"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "A text describing how many rows is shown in the table",
+ "string": "Showing {pageSize} of {itemCount}."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "Title for the sidebar filters component",
+ "string": "Filters"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "A message shown when uploaded file's size must be in given range.",
+ "string": "Between {sizeMin} and {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "A message shown when uploaded file's size must be more than some value.",
+ "string": "Max {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "A message shown when uploaded file's size must be more than some value.",
+ "string": "Min {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "A message shown when uploaded file must be of certain type(s).",
+ "string": "Upload {count, plural, one {{firstPart} files} other {{firstPart} or {secondPart} files}}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "A text that appears as a label for input of Dropzone component.",
+ "string": "Drag and drop your file here or click to upload."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Label of a cancel button that is shown during file upload in Dropzone component.",
+ "string": "Abbrechen"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "A text that is shown near a progress bar during file upload in Dropzone component.",
+ "string": "Uploading {filename}."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "A message shown in case when the autosuggest menu is opened.",
+ "string": "Close the options menu"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "A message shown in case when the autosuggest menu is closed.",
+ "string": "Open the options menu"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Close label for Toast component",
+ "string": "Schließen"
+ }
+}
diff --git a/src/i18n/messages/paragon/de_DE.json b/src/i18n/messages/paragon/de_DE.json
new file mode 100644
index 00000000..02f76911
--- /dev/null
+++ b/src/i18n/messages/paragon/de_DE.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "Eine Meldung wird angezeigt, wenn eine Datei mit einer geringeren als der zulässigen Mindestgröße in Dropzone hochgeladen wird.",
+ "string": "Die Datei muss größer als {size} sein."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "Eine Meldung wird angezeigt, wenn eine Datei mit mehr als der maximal zulässigen Größe in Dropzone hochgeladen wird.",
+ "string": "Die Datei muss kleiner als {size} sein."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "Eine Meldung wird angezeigt, wenn eine Datei mit falschem MIME-Typ hochgeladen wird.",
+ "string": "Der Dateityp muss {count, plural, one { {typeString} file} other {one of {typeString} files}} sein."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "Eine Meldung wird angezeigt, wenn mehrere Dateien über Dropzone gezogen werden.",
+ "string": "Es ist nur ein Upload zulässig."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "Aus unbekanntem Grund wird bei der Validierung der Falldatei in der Dropzone-Komponente eine Meldung angezeigt.",
+ "string": "Bei der Dateivalidierung ist ein unerwartetes Problem aufgetreten. Bitte versuche es erneut."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "Eine Meldung wird angezeigt, wenn das Hochladen einer Datei in die Dropzone-Komponente zu einem Fehler führt.",
+ "string": "Beim Hochladen Ihrer Datei ist ein Problem aufgetreten. Bitte versuche es erneut."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Beschriftung einer Schließen-Schaltfläche in der Alert-Komponente",
+ "string": "Tour Beenden"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "Barrierefreiheitstext, der die Aktion zum Navigieren in einem scrollbaren Karussell zum nächsten Element beschreibt",
+ "string": "Scrollen Sie zum nächsten"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "Barrierefreiheitstext, der die Aktion zum Navigieren in einem scrollbaren Karussell zum vorherigen Element beschreibt",
+ "string": "Scrollen Sie zum vorherigen"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "Barrierefreiheitstext, der die Aktion zum Navigieren in einem scrollbaren Karussell zum nächsten Element beschreibt",
+ "string": "Scrollen Sie zum nächsten"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "Barrierefreiheitstext, der die Aktion zum Navigieren in einem scrollbaren Karussell zum vorherigen Element beschreibt",
+ "string": "Scrollen Sie zum vorherigen"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "Text für alle ausgewählten Etiketten",
+ "string": "Alle {numSelectedRows} ausgewählt"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "Eine Beschriftung der Schaltfläche „Alle Auswahl löschen“.",
+ "string": "Klare Auswahl"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "Eine Beschriftung für die Schaltfläche „Alle auswählen“.",
+ "string": "Alle auswählen {itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "Text für ausgewähltes Etikett",
+ "string": "{numSelectedRows} ausgewählt"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "Text für die ausgewählte Beschriftung, wenn die Tabelle paginiert ist",
+ "string": "{numSelectedRows} ausgewählt ( {numSelectedRowsOnPage} unten gezeigt)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "Bezeichnung einer Aktionsschaltfläche, die alle erweiterbaren Zeilen von DataTable reduziert.",
+ "string": "Alles zusammenklappen"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "Bezeichnung einer Aktionsschaltfläche, die alle erweiterbaren Zeilen von DataTable erweitert.",
+ "string": "Alle erweitern"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "Ein Text, der auf der Schaltfläche „Filter löschen“ angezeigt wird",
+ "string": "Filter löschen"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "Ein Text, der beschreibt, wie viele Zeilen in der Tabelle angezeigt werden",
+ "string": "Zeigt {firstRow} - {lastRow} von {itemCount} ."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "Titel für die Seitenleistenfilterkomponente",
+ "string": "Filter"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "Es wird eine Meldung angezeigt, wenn die Größe der hochgeladenen Datei im angegebenen Bereich liegen muss.",
+ "string": "Zwischen {sizeMin} und {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "Es wird eine Meldung angezeigt, wenn die Größe der hochgeladenen Datei einen bestimmten Wert überschreiten muss.",
+ "string": "Max {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "Es wird eine Meldung angezeigt, wenn die Größe der hochgeladenen Datei einen bestimmten Wert überschreiten muss.",
+ "string": "Min. {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "Eine beim Hochladen der Datei angezeigte Meldung muss von einem oder mehreren bestimmten Typ(en) sein.",
+ "string": "Laden Sie {count, plural, one { {firstPart} files} other { {firstPart} or {secondPart} files}} hoch"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "Ein Text, der als Beschriftung für die Eingabe der Dropzone-Komponente erscheint.",
+ "string": "Ziehen Sie Ihre Datei per Drag-and-Drop hierher oder klicken Sie zum Hochladen."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Bezeichnung einer Abbrechen-Schaltfläche, die während des Datei-Uploads in der Dropzone-Komponente angezeigt wird.",
+ "string": "Löschen"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "Ein Text, der während des Datei-Uploads in der Dropzone-Komponente neben einem Fortschrittsbalken angezeigt wird.",
+ "string": "Hochladen von {filename} ."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "Eine Meldung wird angezeigt, wenn das Autosuggest-Menü geöffnet wird.",
+ "string": "Schließen Sie das Optionsmenü"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "Eine Meldung wird angezeigt, wenn das Autosuggest-Menü geschlossen wird.",
+ "string": "Öffnen Sie das Optionsmenü"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "Bildschirmlesemeldung, um den Benutzer darüber zu informieren, dass er sich am Ende des Produkttourschritts befindet.",
+ "string": "Unterseite der Stufe {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "Bildschirmlesemeldung, um den Benutzer darüber zu informieren, dass er sich am Ende des Produkttourschritts befindet.",
+ "string": "Oberseite der Stufe {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Schließen Sie die Bezeichnung für die Toast-Komponente",
+ "string": "Schließen"
+ }
+}
diff --git a/src/i18n/messages/paragon/el.json b/src/i18n/messages/paragon/el.json
new file mode 100644
index 00000000..076d9176
--- /dev/null
+++ b/src/i18n/messages/paragon/el.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "Ένα μήνυμα που εμφανίζεται όταν ένα αρχείο με μικρότερο από το ελάχιστο επιτρεπόμενο μέγεθος μεταφορτώνεται στο Dropzone.",
+ "string": "Το αρχείο πρέπει να είναι μεγαλύτερο από {size} ."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "Ένα μήνυμα που εμφανίζεται όταν ένα αρχείο με μεγαλύτερο από το μέγιστο επιτρεπόμενο μέγεθος μεταφορτώνεται στο Dropzone.",
+ "string": "Το αρχείο πρέπει να είναι μικρότερο από {size} ."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "Ένα μήνυμα που εμφανίζεται όταν γίνεται αποστολή ενός αρχείου με λάθος τύπο MIME.",
+ "string": "Ο τύπος αρχείου πρέπει να είναι {count, plural, one { {typeString} file} other {one of {typeString} files}}."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "Ένα μήνυμα που εμφανίζεται όταν σύρονται πολλά αρχεία στο Dropzone.",
+ "string": "Επιτρέπεται μόνο μία μεταφόρτωση."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "Ένα μήνυμα που εμφανίζεται στην επικύρωση αρχείου υπόθεσης στο στοιχείο Dropzone για άγνωστο λόγο.",
+ "string": "Παρουσιάστηκε ένα μη αναμενόμενο πρόβλημα κατά την επικύρωση του αρχείου. ΠΑΡΑΚΑΛΩ προσπαθησε ξανα."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "Ένα μήνυμα που εμφανίζεται στη μεταφόρτωση αρχείου υπόθεσης στο στοιχείο Dropzone οδηγεί σε σφάλμα.",
+ "string": "Παρουσιάστηκε πρόβλημα κατά τη μεταφόρτωση του αρχείου σας. ΠΑΡΑΚΑΛΩ προσπαθησε ξανα."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Ετικέτα ενός κουμπιού κλεισίματος στο στοιχείο ειδοποίησης",
+ "string": "Απόρριψη"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "Κείμενο προσβασιμότητας που περιγράφει την ενέργεια για την πλοήγηση ενός καρουζέλ με δυνατότητα κύλισης στο επόμενο στοιχείο",
+ "string": "Κάντε κύλιση στο επόμενο"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "Κείμενο προσβασιμότητας που περιγράφει την ενέργεια για την πλοήγηση ενός καρουζέλ με δυνατότητα κύλισης στο προηγούμενο στοιχείο",
+ "string": "Κάντε κύλιση στο προηγούμενο"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "Κείμενο προσβασιμότητας που περιγράφει την ενέργεια για την πλοήγηση ενός καρουζέλ με δυνατότητα κύλισης στο επόμενο στοιχείο",
+ "string": "Κάντε κύλιση στο επόμενο"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "Κείμενο προσβασιμότητας που περιγράφει την ενέργεια για την πλοήγηση ενός καρουζέλ με δυνατότητα κύλισης στο προηγούμενο στοιχείο",
+ "string": "Κάντε κύλιση στο προηγούμενο"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "Κείμενο για όλες τις επιλεγμένες ετικέτες",
+ "string": "Επιλέχθηκαν όλα {numSelectedRows}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "Μια ετικέτα με το κουμπί διαγραφής όλων των επιλογών.",
+ "string": "Καθαρή επιλογή"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "Μια ετικέτα για το κουμπί επιλογής όλων.",
+ "string": "Επιλέξτε όλα {itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "Κείμενο για την επιλεγμένη ετικέτα",
+ "string": "Επιλέχθηκε {numSelectedRows}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "Κείμενο για την επιλεγμένη ετικέτα κατά τη σελιδοποίηση του πίνακα",
+ "string": "Επιλέχθηκε {numSelectedRows} ( {numSelectedRowsOnPage} φαίνεται παρακάτω)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "Ετικέτα ενός κουμπιού ενέργειας που συμπτύσσει όλες τις επεκτάσιμες σειρές του DataTable.",
+ "string": "Αναδίπλωση όλων"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "Ετικέτα ενός κουμπιού ενέργειας που επεκτείνει όλες τις επεκτάσιμες σειρές του DataTable.",
+ "string": "Εμφάνιση όλων"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "Ένα κείμενο που εμφανίζεται στο κουμπί "Διαγραφή φίλτρων".",
+ "string": "Καθαρισμός φίλτρων"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "Ένα κείμενο που περιγράφει πόσες σειρές εμφανίζεται στον πίνακα",
+ "string": "Εμφάνιση {firstRow} - {lastRow} του {itemCount} ."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "Τίτλος για το στοιχείο φίλτρα πλευρικής γραμμής",
+ "string": "Φίλτρα"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "Ένα μήνυμα που εμφανίζεται όταν το μέγεθος του αρχείου μεταφόρτωσης πρέπει να βρίσκεται σε δεδομένο εύρος.",
+ "string": "Μεταξύ {sizeMin} και {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "Ένα μήνυμα που εμφανίζεται όταν το μέγεθος του αρχείου μεταφόρτωσης πρέπει να είναι μεγαλύτερη από κάποια τιμή.",
+ "string": "Μέγιστο {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "Ένα μήνυμα που εμφανίζεται όταν το μέγεθος του αρχείου μεταφόρτωσης πρέπει να είναι μεγαλύτερη από κάποια τιμή.",
+ "string": "Ελάχ. {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "Ένα μήνυμα που εμφανίζεται κατά τη μεταφόρτωση του αρχείου πρέπει να είναι συγκεκριμένου τύπου.",
+ "string": "Μεταφόρτωση {count, plural, one { {firstPart} files} other { {firstPart} or {secondPart} files}}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "Ένα κείμενο που εμφανίζεται ως ετικέτα για την εισαγωγή του στοιχείου Dropzone.",
+ "string": "Σύρετε και αποθέστε το αρχείο σας εδώ ή κάντε κλικ για μεταφόρτωση."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Ετικέτα ενός κουμπιού ακύρωσης που εμφανίζεται κατά τη μεταφόρτωση αρχείου στο στοιχείο Dropzone.",
+ "string": "Ακύρωση"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "Ένα κείμενο που εμφανίζεται κοντά σε μια γραμμή προόδου κατά τη μεταφόρτωση αρχείου στο στοιχείο Dropzone.",
+ "string": "Μεταφόρτωση {filename} ."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "Ένα μήνυμα που εμφανίζεται σε περίπτωση που ανοίξει το μενού αυτόματης πρότασης.",
+ "string": "Κλείστε το μενού επιλογών"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "Ένα μήνυμα που εμφανίζεται σε περίπτωση που το μενού αυτόματης πρότασης είναι κλειστό.",
+ "string": "Ανοίξτε το μενού επιλογών"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "Μήνυμα προγράμματος ανάγνωσης οθόνης για ειδοποίηση του χρήστη ότι βρίσκονται στο κάτω μέρος του βήματος περιήγησης προϊόντος.",
+ "string": "Κάτω βήματος {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "Μήνυμα προγράμματος ανάγνωσης οθόνης για ειδοποίηση του χρήστη ότι βρίσκονται στο κάτω μέρος του βήματος περιήγησης προϊόντος.",
+ "string": "Κορυφή του βήματος {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Κλείστε την ετικέτα για το στοιχείο τοστ",
+ "string": "Κλείσιμο"
+ }
+}
diff --git a/src/i18n/messages/paragon/es_419.json b/src/i18n/messages/paragon/es_419.json
new file mode 100644
index 00000000..0e2c4276
--- /dev/null
+++ b/src/i18n/messages/paragon/es_419.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "Un mensaje que se muestra cuando se carga en Dropzone un archivo con un tamaño inferior al mínimo permitido.",
+ "string": "El archivo debe ser mayor que {size} ."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "Un mensaje que se muestra cuando se carga en Dropzone un archivo con un tamaño superior al máximo permitido.",
+ "string": "El archivo debe ser menor que {size} ."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "Un mensaje que se muestra cuando se carga un archivo con un tipo MIME incorrecto.",
+ "string": "El tipo de archivo debe ser {count, plural, one { {typeString} file} other {one of {typeString} files}}."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "Un mensaje que se muestra cuando se arrastran varios archivos sobre Dropzone.",
+ "string": "Sólo se permite una carga."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "Se muestra un mensaje en el caso de validación del archivo en el componente Dropzone por motivo desconocido.",
+ "string": "Se produjo un problema inesperado durante la validación del archivo. Inténtalo de nuevo."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "Se muestra un mensaje en caso de que la carga de archivos en el componente Dropzone genere un error.",
+ "string": "Se produjo un problema al cargar su archivo. Inténtalo de nuevo."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Etiqueta de un botón de cierre en el componente Alerta",
+ "string": "Descartar"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "Texto de accesibilidad que describe la acción para navegar en un carrusel desplazable al siguiente elemento",
+ "string": "Desplazarse al siguiente"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "Texto de accesibilidad que describe la acción para navegar en un carrusel desplazable al elemento anterior",
+ "string": "Desplazarse al anterior"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "Texto de accesibilidad que describe la acción para navegar en un carrusel desplazable al siguiente elemento",
+ "string": "Desplazarse al siguiente"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "Texto de accesibilidad que describe la acción para navegar en un carrusel desplazable al elemento anterior",
+ "string": "Desplazarse al anterior"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "Texto para todas las etiquetas seleccionadas",
+ "string": "Todos {numSelectedRows} seleccionados"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "Una etiqueta del botón de borrar toda la selección.",
+ "string": "Selección clara"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "Una etiqueta para el botón Seleccionar todo.",
+ "string": "Seleccionar todo {itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "Texto para la etiqueta seleccionada",
+ "string": "{numSelectedRows} seleccionado"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "Texto de la etiqueta seleccionada cuando la tabla está paginada",
+ "string": "{numSelectedRows} seleccionado ( {numSelectedRowsOnPage} se muestra a continuación)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "Etiqueta de un botón de acción que colapsa todas las filas expandibles de DataTable.",
+ "string": "Colapsar todo"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "Etiqueta de un botón de acción que expande todas las filas expandibles de DataTable.",
+ "string": "Expandir todo"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "Un texto que aparece en el botón `Borrar filtros`",
+ "string": "Borrar filtros"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "Un texto que describe cuántas filas se muestran en la tabla.",
+ "string": "Mostrando {firstRow} - {lastRow} de {itemCount} ."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "Título del componente de filtros de la barra lateral",
+ "string": "Filtros"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "Se muestra un mensaje cuando el tamaño del archivo cargado debe estar dentro del rango determinado.",
+ "string": "Entre {sizeMin} y {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "Se muestra un mensaje cuando el tamaño del archivo cargado debe ser mayor que algún valor.",
+ "string": "Max {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "Se muestra un mensaje cuando el tamaño del archivo cargado debe ser mayor que algún valor.",
+ "string": "Min {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "Un mensaje que se muestra cuando se carga un archivo debe ser de cierto tipo.",
+ "string": "Cargue {count, plural, one {archivos {firstPart} } other {archivos {firstPart} o {secondPart} }}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "Un texto que aparece como una etiqueta para la entrada del componente Dropzone.",
+ "string": "Arrastre y suelte su archivo aquí o haga clic para cargarlo."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Etiqueta de un botón de cancelar que se muestra durante la carga de archivos en el componente Dropzone.",
+ "string": "Cancelar"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "Un texto que se muestra cerca de una barra de progreso durante la carga de archivos en el componente Dropzone.",
+ "string": "Subiendo {filename} ."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "Un mensaje que se muestra en caso de que se abra el menú de sugerencias automáticas.",
+ "string": "Cerrar el menú de opciones"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "Un mensaje que se muestra en caso de que el menú de sugerencias automáticas esté cerrado.",
+ "string": "Abre el menú de opciones"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "Mensaje del lector de pantalla para notificar al usuario que se encuentra en la parte inferior del paso del recorrido por el producto.",
+ "string": "Parte inferior del paso {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "Mensaje del lector de pantalla para notificar al usuario que se encuentra en la parte inferior del paso del recorrido por el producto.",
+ "string": "Parte superior del escalón {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Cerrar etiqueta para el componente Toast",
+ "string": "Cerrar"
+ }
+}
diff --git a/src/i18n/messages/paragon/es_ES.json b/src/i18n/messages/paragon/es_ES.json
new file mode 100644
index 00000000..0726793f
--- /dev/null
+++ b/src/i18n/messages/paragon/es_ES.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "Un mensaje que se muestra cuando se carga en Dropzone un archivo con un tamaño inferior al mínimo permitido.",
+ "string": "El archivo debe ser mayor que {size} ."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "Un mensaje que se muestra cuando se carga en Dropzone un archivo con un tamaño superior al máximo permitido.",
+ "string": "El archivo debe ser menor que {size} ."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "Un mensaje que se muestra cuando se carga un archivo con un tipo MIME incorrecto.",
+ "string": "El tipo de archivo debe ser {count, plural, one { {typeString} file} other {one of {typeString} files}}."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "Un mensaje que se muestra cuando se arrastran varios archivos sobre Dropzone.",
+ "string": "Sólo se permite una carga."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "Se muestra un mensaje en el caso de validación del archivo en el componente Dropzone por motivo desconocido.",
+ "string": "Se produjo un problema inesperado durante la validación del archivo. Inténtalo de nuevo."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "Se muestra un mensaje en caso de que la carga de archivos en el componente Dropzone genere un error.",
+ "string": "Se produjo un problema al cargar su archivo. Inténtalo de nuevo."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Etiqueta de un botón de cierre en el componente Alerta",
+ "string": "Descartar"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "Texto de accesibilidad que describe la acción para navegar en un carrusel desplazable al siguiente elemento",
+ "string": "Desplazarse al siguiente"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "Texto de accesibilidad que describe la acción para navegar en un carrusel desplazable al elemento anterior",
+ "string": "Desplazarse al anterior"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "Texto de accesibilidad que describe la acción para navegar en un carrusel desplazable al siguiente elemento",
+ "string": "Desplazarse al siguiente"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "Texto de accesibilidad que describe la acción para navegar en un carrusel desplazable al elemento anterior",
+ "string": "Desplazarse al anterior"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "Texto para todas las etiquetas seleccionadas",
+ "string": "Todos {numSelectedRows} seleccionados"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "Una etiqueta del botón de borrar toda la selección.",
+ "string": "Selección clara"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "Una etiqueta para el botón Seleccionar todo.",
+ "string": "Seleccionar todo {itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "Texto para la etiqueta seleccionada",
+ "string": "{numSelectedRows} seleccionado"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "Texto de la etiqueta seleccionada cuando la tabla está paginada",
+ "string": "{numSelectedRows} seleccionado ( {numSelectedRowsOnPage} se muestra a continuación)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "Etiqueta de un botón de acción que colapsa todas las filas expandibles de DataTable.",
+ "string": "Contraer todo"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "Etiqueta de un botón de acción que expande todas las filas expandibles de DataTable.",
+ "string": "Desplegar todo"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "Un texto que aparece en el botón `Borrar filtros`",
+ "string": "Borrar filtros"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "Un texto que describe cuántas filas se muestran en la tabla.",
+ "string": "Mostrando {firstRow} - {lastRow} de {itemCount} ."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "Título del componente de filtros de la barra lateral",
+ "string": "Filtros"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "Se muestra un mensaje cuando el tamaño del archivo cargado debe estar dentro del rango determinado.",
+ "string": "Entre {sizeMin} y {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "Se muestra un mensaje cuando el tamaño del archivo cargado debe ser mayor que algún valor.",
+ "string": "Max {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "Se muestra un mensaje cuando el tamaño del archivo cargado debe ser mayor que algún valor.",
+ "string": "Min {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "Un mensaje que se muestra cuando se carga un archivo debe ser de cierto tipo.",
+ "string": "Cargue {count, plural, one {archivos {firstPart} } other {archivos {firstPart} o {secondPart} }}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "Un texto que aparece como una etiqueta para la entrada del componente Dropzone.",
+ "string": "Arrastre y suelte su archivo aquí o haga clic para cargarlo."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Etiqueta de un botón de cancelar que se muestra durante la carga de archivos en el componente Dropzone.",
+ "string": "Cancelar"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "Un texto que se muestra cerca de una barra de progreso durante la carga de archivos en el componente Dropzone.",
+ "string": "Subiendo {filename} ."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "Un mensaje que se muestra en caso de que se abra el menú de sugerencias automáticas.",
+ "string": "Cerrar el menú de opciones"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "Un mensaje que se muestra en caso de que el menú de sugerencias automáticas esté cerrado.",
+ "string": "Abre el menú de opciones"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "Mensaje del lector de pantalla para notificar al usuario que se encuentra en la parte inferior del paso del recorrido por el producto.",
+ "string": "Parte inferior del paso {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "Mensaje del lector de pantalla para notificar al usuario que se encuentra en la parte inferior del paso del recorrido por el producto.",
+ "string": "Parte superior del escalón {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Cerrar etiqueta para el componente Toast",
+ "string": "Cerrar"
+ }
+}
diff --git a/src/i18n/messages/paragon/fa.json b/src/i18n/messages/paragon/fa.json
new file mode 100644
index 00000000..d0fb3533
--- /dev/null
+++ b/src/i18n/messages/paragon/fa.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "زمانی که فایلی با اندازه کمتر از حداقل مجاز در Dropzone بارگذاری می شود، پیامی نشان داده میشود.",
+ "string": "فایل باید بزرگتر از {size} باشد."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "زمانی که فایلی با اندازۀ بیش از حداکثر مجاز در Dropzone بارگذاری میشود، پیامی نشان داده میشود.",
+ "string": "فایل باید کمتر از {size} باشد."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "زمانی که فایلی با نوع MIME اشتباه در حال بارگذاری است، پیامی نشان داده میشود.",
+ "string": "نوع فایل باید {count, plural, one { {typeString} file} other { one of {typeString} files}} باشد."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "پیامی که هنگام کشیدن چندین فایل روی Dropzone نشان داده میشود.",
+ "string": "فقط یک دفعه بارگذاری، مجاز است."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "پیامی بهدلیل نامشخصی در تأیید پرونده در مؤلفۀ Dropzone نشان داده شدهاست.",
+ "string": "مشکل غیرمنتظره ای در حین اعتبارسنجی فایل رخ داد. لطفاً دوباره تلاش کنید."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "پیامی که در بارگذاری فایل موردنظر در مؤلفه Dropzone نشان داده شدهاست منجر به خطا میشود.",
+ "string": "هنگام بارگذاری فایل موردنظر شما مشکلی رخ داد. لطفاً دوباره تلاش کنید."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "برچسب دکمۀ بستن در مؤلفه Alert",
+ "string": "رد"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "متن مربوط به دسترسپذیری توصیفکنندۀ عملکرد پیمایش قابل حرکت برای رفتن به عنصر بعدی را توصیف میکند",
+ "string": "برو به بعدی"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "متن مربوط به دسترسپذیری توصیف کنندۀ عملکرد پیمایش قابل حرکت، برای رفتن عنصر قبلی را توصیف میکند",
+ "string": "برو به قبلی"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "متن مربوط به دسترسپذیری توصیف کنندۀ عملکرد پیمایش قابل حرکت، برای رفتن عنصربعدی را توصیف میکند",
+ "string": "برو به بعدی"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "متن مربوط به دسترسپذیری توصیف کنندۀ عملکرد پیمایش قابل حرکت، برای رفتن عنصر قبلی را توصیف میکند",
+ "string": "برو به قبلی"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "متنی برای همۀبرچسبهای انتخابشده",
+ "string": "همۀ {numSelectedRows} انتخاب شدند"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "برچسبی برای دکمۀ حذف انتخاب همه.",
+ "string": "حذف انتخاب"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "برچسبی برای دکمۀ انتخاب همه.",
+ "string": "انتخاب همه {itemCount} "
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "متنی برای برچسب انتخابشده",
+ "string": "{numSelectedRows} انتخاب شد"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "هنگام صفحهبندی جدول، متنی برای برچسب انتخابشده",
+ "string": "{numSelectedRows} انتخاب شد ( {numSelectedRowsOnPage} نشان داده شده در زیر)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "برچسب یک دکمه عملگر که تمام ردیفهای قابل گسترش DataTable را جمع میکند.",
+ "string": "همه را جمع کن"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "برچسب یک دکمه عملگر که تمام ردیفهای قابل گسترش DataTable را گسترش میدهد.",
+ "string": "همه را گسترش بده"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "متنی که روی دکمۀ «حذف فیلترها» ظاهر میشود",
+ "string": "حذف فیلترها"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "متنی که توضیح میدهد چند ردیف در جدول نشان داده شدهاست",
+ "string": "نمایش {firstRow} - {lastRow} از {itemCount} ."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "عنوان مولفۀ فیلترهای نوار جانبی",
+ "string": "فیلترها"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "پیامی که هشدار میدهد اندازۀ فایل بارگذاری شده باید مقداری در دامنۀ خاص باشد.",
+ "string": "بین {sizeMin} و {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "پیامی حاوی این مطلب که فایل بارگذاریشده باید مقداری بیشتر داشته باشد.",
+ "string": "حداکثر {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "پیامی که هشدار میدهد اندازۀ فایل بارگذاری شده باید بیشتر از مقداری معین باشد.",
+ "string": "حداقل {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "پیامی که هشدار میدهد فایل بارگذاریشده باید از نوع(انواع) خاصی باشد.",
+ "string": "بارگذاری {تعداد، جمع، یک { {firstPart} فایل} دیگر { {firstPart} یا {secondPart} فایل}}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "متنی که بهعنوان یک برچسب برای ورودی مولفۀ Dropzone ظاهر میشود.",
+ "string": "فایل خود را اینجا بکشید و رها کنید یا برای بارگذاری آن کلیک کنید."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "برچسب دکمۀ لغو که درحین بارگذاری فایل در مؤلفۀ Dropzone نمایش داده میشود.",
+ "string": "لغو"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "متنی که درحین بارگذاری فایل در مولفۀ Dropzone در نزدیکی نوار پیشرفت نمایش داده میشود.",
+ "string": "درحال بارگذاری {filename} ."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "پیامی که درصورت بازشدن منوی پیشنهاد خودکار نمایش داده میشود.",
+ "string": "بستن منوی گزینهها"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "پیامی که درصورت بستن منوی پیشنهاد خودکار نمایش داده میشود.",
+ "string": "بازکردن منوی گزینهها"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "پیام صفحهخوان برای اطلاعرسانی به کاربر که آنها در قسمت پایین مرحلۀ تور محصول قرار دارند.",
+ "string": "پایین مرحله {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "پیام صفحهخوان برای اطلاعرسانی به کاربر که آنها در قسمت پایین مرحلۀ تور محصول قرار دارند.",
+ "string": "بالای مرحلۀ {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "برچسب بستن برای مولفۀ تُست",
+ "string": "بستن"
+ }
+}
diff --git a/src/i18n/messages/paragon/fr_CA.json b/src/i18n/messages/paragon/fr_CA.json
new file mode 100644
index 00000000..e1c42246
--- /dev/null
+++ b/src/i18n/messages/paragon/fr_CA.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "A message shown when a file with less than minimum allowed size is being uploaded in Dropzone.",
+ "string": "Le fichier doit être plus grand que {size}."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "A message shown when a file with more than maximum allowed size is being uploaded in Dropzone.",
+ "string": "Le fichier doit être inférieur à {size}."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "A message shown when a file with wrong MIME type is being uploaded.",
+ "string": "Le type de fichier doit être {count, plural, one {{typeString} file} other {one of {typeString} files}}."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "A message shown when multiple files are dragged over Dropzone.",
+ "string": "Un seul téléchargement autorisé."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "A message shown in case file validation in Dropzone component for unknown reason.",
+ "string": "Un problème inattendu s'est produit lors de la validation du fichier. Veuillez réessayer."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "A message shown in case file upload in Dropzone component results in an error.",
+ "string": "Un problème est survenu lors du téléchargement de votre fichier. Veuillez réessayer."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Label of a close button on Alert component",
+ "string": "Rejeter"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "Accessibility text describing the action for navigating a scrollable carousel to the next element",
+ "string": "Faire défiler jusqu'au suivant"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "Accessibility text describing the action for navigating a scrollable carousel to the previous element",
+ "string": "Faire défiler jusqu'au précédent"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "Texte d'accessibilité décrivant l'action permettant de naviguer dans un carrousel déroulant jusqu'à l'élément suivant",
+ "string": "Faire défiler jusqu'au suivant"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "Texte d'accessibilité décrivant l'action permettant de naviguer dans un carrousel déroulant jusqu'à l'élément précédent",
+ "string": "Faire défiler jusqu'au précédent"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "Text for all selected label",
+ "string": "Tous les {numSelectedRows} sélectionnés"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "A label of clear all selection button.",
+ "string": "Effacer la sélection"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "A label for select all button.",
+ "string": "Tout sélectionner {itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "Text for selected label",
+ "string": "{numSelectedRows} sélectionné"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "Text for selected label when table is paginated",
+ "string": "{numSelectedRows} sélectionné ({numSelectedRowsOnPage} illustré ci-dessous)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "Label of an action button that collapses all expandable rows of DataTable.",
+ "string": "Tout replier"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "Label of an action button that expands all expandable rows of DataTable.",
+ "string": "Tout développer"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "A text that appears on the `Clear filters` button",
+ "string": "Effacer les filtres"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "A text describing how many rows is shown in the table",
+ "string": "Affiche {firstRow} - {lastRow} de {itemCount}."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "Title for the sidebar filters component",
+ "string": "Filtres"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "A message shown when uploaded file's size must be in given range.",
+ "string": "Entre {sizeMin} et {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "A message shown when uploaded file's size must be more than some value.",
+ "string": "Max {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "A message shown when uploaded file's size must be more than some value.",
+ "string": "Min {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "A message shown when uploaded file must be of certain type(s).",
+ "string": "Télécharger {count, plural, one {{firstPart} files} other {{firstPart} or {secondPart} files}}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "A text that appears as a label for input of Dropzone component.",
+ "string": "Faites glisser et déposez votre fichier ici ou cliquez pour télécharger."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Label of a cancel button that is shown during file upload in Dropzone component.",
+ "string": "Annuler"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "A text that is shown near a progress bar during file upload in Dropzone component.",
+ "string": "Téléchargement de {filename}."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "A message shown in case when the autosuggest menu is opened.",
+ "string": "Fermer le menu des options"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "A message shown in case when the autosuggest menu is closed.",
+ "string": "Ouvrir le menu des options"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "Message du lecteur d'écran pour informer l'utilisateur qu'il se trouve au bas de l'étape de présentation du produit.",
+ "string": "Bas de l'étape {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "Message du lecteur d'écran pour informer l'utilisateur qu'il se trouve au bas de l'étape de présentation du produit.",
+ "string": "Haut de l'étape {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Close label for Toast component",
+ "string": "Fermer"
+ }
+}
diff --git a/src/i18n/messages/paragon/he.json b/src/i18n/messages/paragon/he.json
new file mode 100644
index 00000000..9c5448e6
--- /dev/null
+++ b/src/i18n/messages/paragon/he.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "הודעה המוצגת כאשר קובץ עם גודל קטן מהמינימום המותר מועלה ב-Dropzone.",
+ "string": "הקובץ חייב להיות גדול מ- {size} ."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "הודעה המוצגת כאשר קובץ עם גודל גדול מהמותר מועלה ב-Dropzone.",
+ "string": "הקובץ חייב להיות קטן מ- {size} ."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "הודעה המוצגת כאשר קובץ עם סוג MIME שגוי מועלה.",
+ "string": "סוג הקובץ חייב להיות {count, plural, one { {typeString} file} other {one of {typeString} files}}."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "הודעה המוצגת כאשר קבצים מרובים נגררים מעל Dropzone.",
+ "string": "רק העלאה אחת מותרת."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "הודעה המוצגת באימות קובץ מקרה ברכיב Dropzone מסיבה לא ידועה.",
+ "string": "אירעה בעיה בלתי צפויה במהלך אימות הקובץ. בבקשה נסה שוב."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "הודעה המוצגת במקרה של העלאת קובץ ברכיב Dropzone מביאה לשגיאה.",
+ "string": "אירעה בעיה בעת העלאת הקובץ שלך. בבקשה נסה שוב."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "תווית של לחצן סגירה ברכיב התראה",
+ "string": "ביטול"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "טקסט נגישות המתאר את הפעולה לניווט בקרוסלה ניתנת לגלילה לאלמנט הבא",
+ "string": "גלול להבא"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "טקסט נגישות המתאר את הפעולה לניווט בקרוסלה ניתנת לגלילה לאלמנט הקודם",
+ "string": "גלול לקודם"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "טקסט נגישות המתאר את הפעולה לניווט בקרוסלה ניתנת לגלילה לאלמנט הבא",
+ "string": "גלול להבא"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "טקסט נגישות המתאר את הפעולה לניווט בקרוסלה ניתנת לגלילה לאלמנט הקודם",
+ "string": "גלול לקודם"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "טקסט עבור כל התוויות שנבחרו",
+ "string": "כל {numSelectedRows} נבחרו"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "תווית של לחצן ניקוי הכל.",
+ "string": "נקה בחירה"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "תווית לחצן בחר הכל.",
+ "string": "בחר הכל {itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "טקסט עבור התווית שנבחרה",
+ "string": "{numSelectedRows} נבחר"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "טקסט עבור התווית שנבחרה כאשר הטבלה מעופפת",
+ "string": "{numSelectedRows} נבחר ( {numSelectedRowsOnPage} מוצג למטה)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "תווית של לחצן פעולה שמכווץ את כל השורות הניתנות להרחבה של DataTable.",
+ "string": "לכווץ הכול"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "תווית של לחצן פעולה שמרחיב את כל השורות הניתנות להרחבה של DataTable.",
+ "string": "להרחיב הכול"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "טקסט שמופיע על כפתור `נקה מסננים`",
+ "string": "נקה מסננים"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "טקסט המתאר כמה שורות מוצג בטבלה",
+ "string": "מציג {firstRow} - {lastRow} של {itemCount} ."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "כותרת עבור רכיב המסננים בסרגל הצד",
+ "string": "מסננים"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "הודעה המוצגת בעת העלאת גודל הקובץ חייבת להיות בטווח נתון.",
+ "string": "בין {sizeMin} ל- {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "הודעה המוצגת בעת העלאת גודל הקובץ חייב להיות יותר מערך כלשהו.",
+ "string": "מקסימום {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "הודעה המוצגת בעת העלאת גודל הקובץ חייב להיות יותר מערך כלשהו.",
+ "string": "מינימום {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "הודעה המוצגת בעת העלאת הקובץ חייבת להיות מסוגים מסוימים.",
+ "string": "העלה {count, plural, one { {firstPart} files} other { {firstPart} or {secondPart} files}}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "טקסט המופיע כתווית לקלט של רכיב Dropzone.",
+ "string": "גרור ושחרר את הקובץ שלך כאן או לחץ כדי להעלות."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "תווית של לחצן ביטול שמוצג במהלך העלאת קובץ ברכיב Dropzone.",
+ "string": "ביטול"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "טקסט שמוצג ליד סרגל התקדמות במהלך העלאת קובץ ברכיב Dropzone.",
+ "string": "מעלה {filename} ."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "הודעה מוצגת למקרה שבו נפתח תפריט ההצעה האוטומטית.",
+ "string": "סגור את תפריט האפשרויות"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "הודעה מוצגת למקרה שבו תפריט ההצעה האוטומטית נסגר.",
+ "string": "פתח את תפריט האפשרויות"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "הודעת קורא מסך להודיע למשתמש שהם נמצאים בתחתית שלב סיור המוצר.",
+ "string": "תחתית שלב {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "הודעת קורא מסך להודיע למשתמש שהם נמצאים בתחתית שלב סיור המוצר.",
+ "string": "ראש שלב {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "סגור תווית עבור רכיב הטוסט",
+ "string": "סגור"
+ }
+}
diff --git a/src/i18n/messages/paragon/hi.json b/src/i18n/messages/paragon/hi.json
new file mode 100644
index 00000000..f9611f85
--- /dev/null
+++ b/src/i18n/messages/paragon/hi.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "ड्रॉपज़ोन में न्यूनतम अनुमत आकार से कम आकार वाली फ़ाइल अपलोड होने पर एक संदेश दिखाया जाता है।",
+ "string": "फ़ाइल {size} से बड़ी होनी चाहिए।"
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "ड्रॉपज़ोन में अधिकतम अनुमत आकार से अधिक आकार वाली फ़ाइल अपलोड होने पर एक संदेश दिखाया जाता है।",
+ "string": "फ़ाइल {size} से कम होनी चाहिए."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "गलत MIME प्रकार वाली फ़ाइल अपलोड होने पर एक संदेश दिखाया जाता है।",
+ "string": "फ़ाइल का प्रकार {गिनती, बहुवचन, एक { {typeString} फ़ाइल} अन्य { {typeString} फ़ाइलों में से एक}} होना चाहिए।"
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "एक संदेश तब दिखाया जाता है जब एकाधिक फ़ाइलें ड्रॉपज़ोन पर खींची जाती हैं।",
+ "string": "केवल एक अपलोड की अनुमति है."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "अज्ञात कारण से ड्रॉपज़ोन घटक में केस फ़ाइल सत्यापन में दिखाया गया एक संदेश।",
+ "string": "फ़ाइल सत्यापन के दौरान एक अप्रत्याशित समस्या उत्पन्न हुई. कृपया पुन: प्रयास करें।"
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "ड्रॉपज़ोन घटक में केस फ़ाइल अपलोड में दिखाए गए संदेश के परिणामस्वरूप त्रुटि होती है।",
+ "string": "आपकी फ़ाइल अपलोड करते समय एक समस्या उत्पन्न हुई. कृपया पुन: प्रयास करें।"
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "अलर्ट घटक पर बंद करें बटन का लेबल",
+ "string": "ख़ारिज करें"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "एक्सेसिबिलिटी टेक्स्ट स्क्रॉल करने योग्य कैरोसेल को अगले तत्व तक ले जाने की क्रिया का वर्णन करता है",
+ "string": "अगले तक स्क्रॉल करें"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "पिछले तत्व पर स्क्रॉल करने योग्य हिंडोला को नेविगेट करने की क्रिया का वर्णन करने वाला अभिगम्यता पाठ",
+ "string": "पिछले तक स्क्रॉल करें"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "एक्सेसिबिलिटी टेक्स्ट स्क्रॉल करने योग्य कैरोसेल को अगले तत्व तक ले जाने की क्रिया का वर्णन करता है",
+ "string": "अगले तक स्क्रॉल करें"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "पिछले तत्व पर स्क्रॉल करने योग्य हिंडोला को नेविगेट करने की क्रिया का वर्णन करने वाला अभिगम्यता पाठ",
+ "string": "पिछले तक स्क्रॉल करें"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "सभी चयनित लेबल के लिए पाठ",
+ "string": "सभी {numSelectedRows} चयनित"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "सभी चयन साफ़ करें बटन का एक लेबल।",
+ "string": "चयन साफ़ करें"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "सभी का चयन करें बटन के लिए एक लेबल।",
+ "string": "सभी {itemCount} चुनें"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "चयनित लेबल के लिए पाठ",
+ "string": "{numSelectedRows} चयनित"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "तालिका पृष्ठांकित होने पर चयनित लेबल के लिए पाठ",
+ "string": "{numSelectedRows} चयनित ( {numSelectedRowsOnPage} नीचे दिखाया गया है)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "एक एक्शन बटन का लेबल जो डेटाटेबल की सभी विस्तार योग्य पंक्तियों को संक्षिप्त करता है।",
+ "string": "সবকিছু সংক্ষিপ্ত করুন "
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "एक एक्शन बटन का लेबल जो डेटाटेबल की सभी विस्तार योग्य पंक्तियों का विस्तार करता है।",
+ "string": "সবকিছু সম্প্রসারণ করুন "
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "एक टेक्स्ट जो `फ़िल्टर साफ़ करें` बटन पर दिखाई देता है",
+ "string": "फ़िल्टर साफ़ करें"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "तालिका में कितनी पंक्तियों का वर्णन करने वाला एक पाठ दिखाया गया है",
+ "string": "{itemCount} का {firstRow} - {lastRow} दिखा रहा है।"
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "साइडबार फ़िल्टर घटक का शीर्षक",
+ "string": "फिल्टर"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "अपलोड की गई फ़ाइल का आकार दिए गए सीमा में होना चाहिए।",
+ "string": "{sizeMin} और {sizeMax} के बीच"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "अपलोड की गई फ़ाइल का आकार कुछ मान से अधिक होना चाहिए।",
+ "string": "अधिकतम {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "अपलोड की गई फ़ाइल का आकार कुछ मान से अधिक होना चाहिए।",
+ "string": "न्यूनतम {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "फ़ाइल अपलोड करते समय दिखाया जाने वाला संदेश निश्चित प्रकार का होना चाहिए।",
+ "string": "अपलोड करें {गिनती, बहुवचन, एक { {firstPart} फ़ाइलें} अन्य { {firstPart} या {secondPart} फ़ाइलें}}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "एक टेक्स्ट जो ड्रॉपज़ोन घटक के इनपुट के लिए एक लेबल के रूप में दिखाई देता है।",
+ "string": "अपनी फ़ाइल को यहां खींचें और छोड़ें या अपलोड करने के लिए क्लिक करें।"
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "रद्द करें बटन का लेबल जो ड्रॉपज़ोन घटक में फ़ाइल अपलोड के दौरान दिखाया जाता है।",
+ "string": "रद्द करें"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "एक टेक्स्ट जो ड्रॉपज़ोन घटक में फ़ाइल अपलोड के दौरान प्रगति पट्टी के पास दिखाया जाता है।",
+ "string": "{filename} अपलोड हो रहा है।"
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "स्वतः सुझाव मेनू खुलने पर एक संदेश दिखाया जाता है।",
+ "string": "विकल्प मेनू बंद करें"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "स्वतः सुझाव मेनू बंद होने की स्थिति में एक संदेश दिखाया जाता है।",
+ "string": "विकल्प मेनू खोलें"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "उपयोगकर्ता को सूचित करने के लिए स्क्रीन-रीडर संदेश कि वे उत्पाद भ्रमण चरण के नीचे स्थित हैं।",
+ "string": "चरण के नीचे {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "उपयोगकर्ता को सूचित करने के लिए स्क्रीन-रीडर संदेश कि वे उत्पाद भ्रमण चरण के नीचे स्थित हैं।",
+ "string": "चरण का शीर्ष {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "टोस्ट घटक के लिए लेबल बंद करें",
+ "string": "बंद करना"
+ }
+}
diff --git a/src/i18n/messages/paragon/id.json b/src/i18n/messages/paragon/id.json
new file mode 100644
index 00000000..c95473a6
--- /dev/null
+++ b/src/i18n/messages/paragon/id.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "A message shown when a file with less than minimum allowed size is being uploaded in Dropzone.",
+ "string": "File must be larger than {size}."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "A message shown when a file with more than maximum allowed size is being uploaded in Dropzone.",
+ "string": "File must be less than {size}."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "A message shown when a file with wrong MIME type is being uploaded.",
+ "string": "The file type must be {count, plural, one {{typeString} file} other {one of {typeString} files}}."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "A message shown when multiple files are dragged over Dropzone.",
+ "string": "Only one upload permitted."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "A message shown in case file validation in Dropzone component for unknown reason.",
+ "string": "An unexpected problem occured during file validation. Please try again."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "A message shown in case file upload in Dropzone component results in an error.",
+ "string": "A problem occured while uploading your file. Please try again."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Label of a close button on Alert component",
+ "string": "Dismiss"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "Accessibility text describing the action for navigating a scrollable carousel to the next element",
+ "string": "Scroll to next"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "Accessibility text describing the action for navigating a scrollable carousel to the previous element",
+ "string": "Scroll to previous"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "Accessibility text describing the action for navigating a scrollable carousel to the next element",
+ "string": "Scroll to next"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "Accessibility text describing the action for navigating a scrollable carousel to the previous element",
+ "string": "Scroll to previous"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "Text for all selected label",
+ "string": "All {numSelectedRows} selected"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "A label of clear all selection button.",
+ "string": "Clear selection"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "A label for select all button.",
+ "string": "Select all {itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "Text for selected label",
+ "string": "{numSelectedRows} selected"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "Text for selected label when table is paginated",
+ "string": "{numSelectedRows} selected ({numSelectedRowsOnPage} shown below)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "Label of an action button that collapses all expandable rows of DataTable.",
+ "string": "Collapse all"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "Label of an action button that expands all expandable rows of DataTable.",
+ "string": "Expand all"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "A text that appears on the `Clear filters` button",
+ "string": "Clear filters"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "A text describing how many rows is shown in the table",
+ "string": "Showing {firstRow} - {lastRow} of {itemCount}."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "Title for the sidebar filters component",
+ "string": "Filters"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "A message shown when uploaded file's size must be in given range.",
+ "string": "Between {sizeMin} and {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "A message shown when uploaded file's size must be more than some value.",
+ "string": "Max {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "A message shown when uploaded file's size must be more than some value.",
+ "string": "Min {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "A message shown when uploaded file must be of certain type(s).",
+ "string": "Upload {count, plural, one {{firstPart} files} other {{firstPart} or {secondPart} files}}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "A text that appears as a label for input of Dropzone component.",
+ "string": "Drag and drop your file here or click to upload."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Label of a cancel button that is shown during file upload in Dropzone component.",
+ "string": "Cancel"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "A text that is shown near a progress bar during file upload in Dropzone component.",
+ "string": "Uploading {filename}."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "A message shown in case when the autosuggest menu is opened.",
+ "string": "Close the options menu"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "A message shown in case when the autosuggest menu is closed.",
+ "string": "Open the options menu"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "Screen-reader message to notify user that they are located at the bottom of the product tour step.",
+ "string": "Bottom of step {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "Screen-reader message to notify user that they are located at the bottom of the product tour step.",
+ "string": "Top of step {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Close label for Toast component",
+ "string": "Close"
+ }
+}
diff --git a/src/i18n/messages/paragon/index.js b/src/i18n/messages/paragon/index.js
new file mode 100644
index 00000000..3ad4875a
--- /dev/null
+++ b/src/i18n/messages/paragon/index.js
@@ -0,0 +1,61 @@
+// This file is generated by the openedx/frontend-platform's "intl-import.js" script.
+//
+// Refer to the i18n documents in https://docs.openedx.org/en/latest/developers/references/i18n.html to update
+// the file and use the Micro-frontend i18n pattern in new repositories.
+//
+
+import messagesOfArLanguage from './ar.json';
+import messagesOfDaLanguage from './da.json';
+import messagesOfDeLanguage from './de.json';
+import messagesOfDeDeLanguage from './de_DE.json';
+import messagesOfElLanguage from './el.json';
+import messagesOfEs419Language from './es_419.json';
+import messagesOfEsEsLanguage from './es_ES.json';
+import messagesOfFaLanguage from './fa.json';
+import messagesOfFrCaLanguage from './fr_CA.json';
+import messagesOfHeLanguage from './he.json';
+import messagesOfHiLanguage from './hi.json';
+import messagesOfIdLanguage from './id.json';
+import messagesOfItItLanguage from './it_IT.json';
+import messagesOfLvLanguage from './lv.json';
+import messagesOfPtBrLanguage from './pt_BR.json';
+import messagesOfPtPtLanguage from './pt_PT.json';
+import messagesOfRuLanguage from './ru.json';
+import messagesOfSwLanguage from './sw.json';
+import messagesOfTeLanguage from './te.json';
+import messagesOfThLanguage from './th.json';
+import messagesOfTrTrLanguage from './tr_TR.json';
+import messagesOfUkLanguage from './uk.json';
+import messagesOfUzLanguage from './uz.json';
+import messagesOfViLanguage from './vi.json';
+import messagesOfZhCnLanguage from './zh_CN.json';
+import messagesOfZhHkLanguage from './zh_HK.json';
+
+export default {
+ 'ar': messagesOfArLanguage,
+ 'zh-hk': messagesOfZhHkLanguage,
+ 'zh-cn': messagesOfZhCnLanguage,
+ 'vi': messagesOfViLanguage,
+ 'uz': messagesOfUzLanguage,
+ 'uk': messagesOfUkLanguage,
+ 'tr-tr': messagesOfTrTrLanguage,
+ 'th': messagesOfThLanguage,
+ 'te': messagesOfTeLanguage,
+ 'sw': messagesOfSwLanguage,
+ 'ru': messagesOfRuLanguage,
+ 'pt-pt': messagesOfPtPtLanguage,
+ 'pt-br': messagesOfPtBrLanguage,
+ 'lv': messagesOfLvLanguage,
+ 'it-it': messagesOfItItLanguage,
+ 'id': messagesOfIdLanguage,
+ 'hi': messagesOfHiLanguage,
+ 'he': messagesOfHeLanguage,
+ 'fr-ca': messagesOfFrCaLanguage,
+ 'fa': messagesOfFaLanguage,
+ 'es-es': messagesOfEsEsLanguage,
+ 'es-419': messagesOfEs419Language,
+ 'el': messagesOfElLanguage,
+ 'de-de': messagesOfDeDeLanguage,
+ 'de': messagesOfDeLanguage,
+ 'da': messagesOfDaLanguage,
+};
diff --git a/src/i18n/messages/paragon/it_IT.json b/src/i18n/messages/paragon/it_IT.json
new file mode 100644
index 00000000..40ad68f0
--- /dev/null
+++ b/src/i18n/messages/paragon/it_IT.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "Un messaggio mostrato quando in Dropzone viene caricato un file con una dimensione inferiore alla dimensione minima consentita.",
+ "string": "Il file deve essere più grande di {size} ."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "Un messaggio mostrato quando un file con dimensioni superiori a quelle massime consentite viene caricato in Dropzone.",
+ "string": "Il file deve essere inferiore a {size} ."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "Un messaggio mostrato quando viene caricato un file con tipo MIME errato.",
+ "string": "Il tipo di file deve essere {count, plural, one { {typeString} file} other {one of {typeString} files}}."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "Un messaggio mostrato quando più file vengono trascinati su Dropzone.",
+ "string": "È consentito un solo caricamento."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "Un messaggio mostrato nella convalida del file del caso nel componente Dropzone per un motivo sconosciuto.",
+ "string": "Si è verificato un problema imprevisto durante la convalida del file. Per favore riprova."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "Un messaggio mostrato nel caso in cui il caricamento del file nel componente Dropzone restituisca un errore.",
+ "string": "Si è verificato un problema durante il caricamento del file. Per favore riprova."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Etichetta di un pulsante di chiusura sul componente Alert",
+ "string": "Chiudi"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "Testo di accessibilità che descrive l'azione per navigare in un carosello scorrevole fino all'elemento successivo",
+ "string": "Scorri al successivo"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "Testo di accessibilità che descrive l'azione per navigare in un carosello scorrevole fino all'elemento precedente",
+ "string": "Scorri al precedente"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "Testo di accessibilità che descrive l'azione per navigare in un carosello scorrevole fino all'elemento successivo",
+ "string": "Scorri al successivo"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "Testo di accessibilità che descrive l'azione per navigare in un carosello scorrevole fino all'elemento precedente",
+ "string": "Scorri al precedente"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "Testo per tutte le etichette selezionate",
+ "string": "Tutto {numSelectedRows} selezionato"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "Un'etichetta del pulsante di selezione Cancella tutto.",
+ "string": "Cancella selezione"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "Un'etichetta per il pulsante Seleziona tutto.",
+ "string": "Seleziona tutto {itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "Testo per l'etichetta selezionata",
+ "string": "{numSelectedRows} selezionato"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "Testo per l'etichetta selezionata quando la tabella viene impaginata",
+ "string": "{numSelectedRows} selezionato ( {numSelectedRowsOnPage} mostrato di seguito)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "Etichetta di un pulsante di azione che comprime tutte le righe espandibili di DataTable.",
+ "string": "Comprimi tutto "
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "Etichetta di un pulsante di azione che espande tutte le righe espandibili di DataTable.",
+ "string": "Espandi tutto "
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "Un testo che appare sul pulsante "Cancella filtri".",
+ "string": "Cancella filtri"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "Un testo che descrive quante righe sono visualizzate nella tabella",
+ "string": "Visualizzazione {firstRow} - {lastRow} di {itemCount} ."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "Titolo per il componente filtri della barra laterale",
+ "string": "Filtri"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "Un messaggio mostrato quando la dimensione del file caricato deve rientrare nell'intervallo specificato.",
+ "string": "Tra {sizeMin} e {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "Un messaggio mostrato quando la dimensione del file caricato deve essere superiore a un valore.",
+ "string": "Max {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "Un messaggio mostrato quando la dimensione del file caricato deve essere superiore a un valore.",
+ "string": "Min {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "Un messaggio mostrato quando il file caricato deve essere di determinati tipi.",
+ "string": "Carica {count, plural, one { {firstPart} file} other { {firstPart} o {secondPart} file}}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "Un testo che appare come etichetta per l'input del componente Dropzone.",
+ "string": "Trascina e rilascia il tuo file qui o fai clic per caricarlo."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Etichetta di un pulsante Annulla mostrato durante il caricamento del file nel componente Dropzone.",
+ "string": "Annulla"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "Un testo che viene mostrato vicino a una barra di avanzamento durante il caricamento del file nel componente Dropzone.",
+ "string": "Caricamento {filename} ."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "Un messaggio mostrato nel caso in cui venga aperto il menu di suggerimento automatico.",
+ "string": "Chiudi il menu delle opzioni"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "Un messaggio mostrato nel caso in cui il menu di suggerimento automatico sia chiuso.",
+ "string": "Apri il menu delle opzioni"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "Messaggio dell'utilità per la lettura dello schermo per avvisare l'utente che si trova nella parte inferiore del passaggio della presentazione del prodotto.",
+ "string": "Parte inferiore del gradino {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "Messaggio dell'utilità per la lettura dello schermo per avvisare l'utente che si trova nella parte inferiore del passaggio della presentazione del prodotto.",
+ "string": "Inizio del passaggio {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Chiudi l'etichetta per il componente Toast",
+ "string": "Chiudi"
+ }
+}
diff --git a/src/i18n/messages/paragon/lv.json b/src/i18n/messages/paragon/lv.json
new file mode 100644
index 00000000..cdee80a8
--- /dev/null
+++ b/src/i18n/messages/paragon/lv.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "Tiek parādīts ziņojums, kad Dropzone tiek augšupielādēts fails, kura izmērs ir mazāks par minimālo atļauto.",
+ "string": "Failam ir jābūt lielākam par {size} ."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "Tiek parādīts ziņojums, kad Dropzone tiek augšupielādēts fails, kura izmērs pārsniedz maksimālo atļauto.",
+ "string": "Faila izmēram ir jābūt mazākam par {size} ."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "Ziņojums tiek parādīts, kad tiek augšupielādēts fails ar nepareizu MIME tipu.",
+ "string": "Faila tipam ir jābūt {count, plural, one {{typeString} file} other {one of {typeString} files}}."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "Ziņojums, kas tiek parādīts, kad vairāki faili tiek vilkti virs Dropzone.",
+ "string": "Atļauta tikai viena augšupielāde."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "Ziņojums, kas nezināma iemesla dēļ tiek parādīts lietas faila validācijā Dropzone komponentā.",
+ "string": "Faila validācijas laikā radās neparedzēta problēma. Lūdzu mēģiniet vēlreiz."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "Ziņojums, kas tiek parādīts gadījuma faila augšupielādē Dropzone komponentā, rada kļūdu.",
+ "string": "Augšupielādējot failu, radās problēma. Lūdzu mēģiniet vēlreiz."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Brīdinājuma komponenta aizvēršanas pogas iezīme",
+ "string": "Noraidīt"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "Pieejamības teksts, kurā aprakstīta darbība ritināmā karuseļa pārejai uz nākamo elementu",
+ "string": "Ritiniet uz nākamo"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "Pieejamības teksts, kas apraksta darbību, lai ritināmā karuselī pārvietotos uz iepriekšējo elementu",
+ "string": "Ritiniet uz iepriekšējo"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "Pieejamības teksts, kurā aprakstīta darbība ritināmā karuseļa virzīšanai uz nākamo elementu",
+ "string": "Ritiniet uz nākamo"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "Pieejamības teksts, kas apraksta darbību, lai ritināmā karuselī pārvietotos uz iepriekšējo elementu",
+ "string": "Ritiniet uz iepriekšējo"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "Teksts visām atlasītajām iezīmēm",
+ "string": "Atlasīti visi {numSelectedRows}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "Iezīme pogai “Dzēst visu”.",
+ "string": "Notīrīt atlasi"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "Iezīme pogai “Atlasīt visu”.",
+ "string": "Atlasiet visu {itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "Teksts atlasītajai iezīmei",
+ "string": "Atlasīts {numSelectedRows}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "Izvēlētās iezīmes teksts, ja tabula ir sadalīta lappusēs",
+ "string": "Atlasīts {numSelectedRows} ( {numSelectedRowsOnPage} parādīts tālāk)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "Darbības pogas iezīme, kas sakļauj visas DataTable izvēršamās rindas.",
+ "string": "Sakļaut visu"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "Darbības pogas iezīme, kas paplašina visas DataTable izvēršamās rindas.",
+ "string": "Paplašināt visu"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "Teksts, kas parādās uz pogas Notīrīt filtrus",
+ "string": "Notīrīt filtrus"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "Teksts, kas apraksta, cik rindu ir parādīts tabulā",
+ "string": "Tiek rādīts {firstRow} - {lastRow} no {itemCount} ."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "Sānjoslas filtru komponenta nosaukums",
+ "string": "Filtri"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "Ziņojumam, kas tiek rādīts, kad augšupielādēts fails, ir jāatrodas norādītajā diapazonā.",
+ "string": "Starp {sizeMin} un {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "Ziņojumam, kas tiek rādīts, kad augšupielādēts fails, ir jābūt lielākam par noteiktu vērtību.",
+ "string": "Maksimālais {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "Ziņojumam, kas tiek rādīts, kad augšupielādēts fails, ir jābūt lielākam par noteiktu vērtību.",
+ "string": "Min. {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "Ziņojumam, kas tiek rādīts, augšupielādējot failu, ir jābūt noteikta veida(-iem).",
+ "string": "Augšupielādējiet {skaits, daudzskaitlis, viens { {firstPart} faili} cits { {firstPart} vai {secondPart} faili}}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "Teksts, kas parādās kā iezīme Dropzone komponenta ievadei.",
+ "string": "Velciet un nometiet failu šeit vai noklikšķiniet, lai augšupielādētu."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Atcelšanas pogas iezīme, kas tiek rādīta faila augšupielādes laikā komponentā Dropzone.",
+ "string": "Atcelt"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "Teksts, kas tiek rādīts blakus norises joslai faila augšupielādes laikā komponentā Dropzone.",
+ "string": "Notiek {filename} augšupielāde."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "Paziņojums, kas tiek parādīts gadījumā, ja tiek atvērta automātiskās ierosināšanas izvēlne.",
+ "string": "Aizveriet opciju izvēlni"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "Ziņojums, kas tiek rādīts gadījumā, ja tiek aizvērta automātiskās ierosināšanas izvēlne.",
+ "string": "Atveriet opciju izvēlni"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "Ekrāna lasītāja ziņojums, kas lietotājam paziņo, ka viņš atrodas produkta apskates soļa apakšā.",
+ "string": "Darbības apakšā {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "Ekrāna lasītāja ziņojums, kas lietotājam paziņo, ka viņš atrodas produkta apskates soļa apakšā.",
+ "string": "Darbības sākums {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Aizveriet grauzdiņa komponenta iezīmi",
+ "string": "Aizvērt"
+ }
+}
diff --git a/src/i18n/messages/paragon/pt_BR.json b/src/i18n/messages/paragon/pt_BR.json
new file mode 100644
index 00000000..19a54e78
--- /dev/null
+++ b/src/i18n/messages/paragon/pt_BR.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "Uma mensagem exibida quando um arquivo com tamanho menor que o mínimo permitido está sendo carregado no Dropzone.",
+ "string": "O arquivo deve ser maior que {size} ."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "Uma mensagem exibida quando um arquivo com tamanho maior que o máximo permitido está sendo carregado no Dropzone.",
+ "string": "O arquivo deve ser menor que {size} ."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "Uma mensagem exibida quando um arquivo com tipo MIME errado está sendo carregado.",
+ "string": "O tipo de arquivo deve ser {count, plural, one { {typeString} file} other {one of {typeString} files}}."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "Uma mensagem exibida quando vários arquivos são arrastados para o Dropzone.",
+ "string": "Apenas um upload é permitido."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "Uma mensagem mostrada na validação do arquivo de caso no componente Dropzone por motivo desconhecido.",
+ "string": "Ocorreu um problema inesperado durante a validação do arquivo. Por favor, tente novamente."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "Uma mensagem mostrada caso o upload do arquivo no componente Dropzone resulte em erro.",
+ "string": "Ocorreu um problema ao enviar seu arquivo. Por favor, tente novamente."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Rótulo de um botão Fechar no componente Alerta",
+ "string": "Ignorar"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "Texto de acessibilidade que descreve a ação para navegar em um carrossel rolável até o próximo elemento",
+ "string": "Role para o próximo"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "Texto de acessibilidade que descreve a ação para navegar em um carrossel rolável até o elemento anterior",
+ "string": "Role para o anterior"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "Texto de acessibilidade que descreve a ação para navegar em um carrossel rolável até o próximo elemento",
+ "string": "Role para o próximo"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "Texto de acessibilidade que descreve a ação para navegar em um carrossel rolável até o elemento anterior",
+ "string": "Role para o anterior"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "Texto para todos os rótulos selecionados",
+ "string": "Todos {numSelectedRows} selecionados"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "Um rótulo do botão limpar todas as seleções.",
+ "string": "Seleção clara"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "Um rótulo para o botão Selecionar tudo.",
+ "string": "Selecionar tudo {itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "Texto para rótulo selecionado",
+ "string": "{numSelectedRows} selecionado"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "Texto para rótulo selecionado quando a tabela é paginada",
+ "string": "{numSelectedRows} selecionado ( {numSelectedRowsOnPage} mostrado abaixo)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "Rótulo de um botão de ação que recolhe todas as linhas expansíveis do DataTable.",
+ "string": "contrair tudo"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "Rótulo de um botão de ação que expande todas as linhas expansíveis do DataTable.",
+ "string": "expandir tudo"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "Um texto que aparece no botão `Limpar filtros`",
+ "string": "Limpar filtros"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "Um texto descrevendo quantas linhas são mostradas na tabela",
+ "string": "Mostrando {firstRow} - {lastRow} de {itemCount} ."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "Título do componente de filtros da barra lateral",
+ "string": "Filtros"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "Uma mensagem exibida quando o tamanho do arquivo enviado deve estar dentro de um determinado intervalo.",
+ "string": "Entre {sizeMin} e {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "Uma mensagem exibida quando o tamanho do arquivo enviado deve ser maior que algum valor.",
+ "string": "Máximo {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "Uma mensagem exibida quando o tamanho do arquivo enviado deve ser maior que algum valor.",
+ "string": "Mínimo {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "Uma mensagem mostrada quando o arquivo é carregado deve ser de determinado(s) tipo(s).",
+ "string": "Carregar {contagem, plural, um {arquivos {firstPart} } outro {arquivos {firstPart} ou {secondPart} }}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "Um texto que aparece como um rótulo para entrada do componente Dropzone.",
+ "string": "Arraste e solte seu arquivo aqui ou clique para fazer upload."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Rótulo de um botão de cancelamento mostrado durante o upload do arquivo no componente Dropzone.",
+ "string": "Cancelar"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "Um texto mostrado próximo a uma barra de progresso durante o upload do arquivo no componente Dropzone.",
+ "string": "Carregando {filename} ."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "Uma mensagem mostrada quando o menu de sugestão automática é aberto.",
+ "string": "Fechar o menu de opções"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "Uma mensagem exibida caso o menu de sugestão automática esteja fechado.",
+ "string": "Abra o menu de opções"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "Mensagem do leitor de tela para notificar o usuário de que ele está localizado na parte inferior da etapa do tour do produto.",
+ "string": "Parte inferior da etapa {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "Mensagem do leitor de tela para notificar o usuário de que ele está localizado na parte inferior da etapa do tour do produto.",
+ "string": "Início da etapa {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Fechar rótulo para componente Toast",
+ "string": "Fechar"
+ }
+}
diff --git a/src/i18n/messages/paragon/pt_PT.json b/src/i18n/messages/paragon/pt_PT.json
new file mode 100644
index 00000000..3f6f88e4
--- /dev/null
+++ b/src/i18n/messages/paragon/pt_PT.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "Uma mensagem mostrada quando um ficheiro com um tamanho inferior ao mínimo permitido está a ser carregado no Dropzone.",
+ "string": "O ficheiro tem de ser maior do que {size}."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "Uma mensagem mostrada quando um ficheiro com um tamanho superior ao máximo permitido está a ser carregado no Dropzone.",
+ "string": "O ficheiro tem de ser inferior a {size}."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "Uma mensagem mostrada quando um ficheiro com o tipo MIME errado está a ser carregado.",
+ "string": "O tipo de ficheiro tem de ser {count, plural, one ficheiro {{typeString}}} outro {um dos ficheiros {typeString}}."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "Uma mensagem mostrada quando vários ficheiros são arrastados para a Dropzone.",
+ "string": "Só é permitido um carregamento."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "Uma mensagem mostrada na validação do ficheiro de casos no componente Dropzone por uma razão desconhecida.",
+ "string": "Ocorreu um problema inesperado durante a validação do ficheiro. Por favor, tente novamente."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "Uma mensagem mostrada no caso de o carregamento de ficheiros no componente Dropzone resultar num erro.",
+ "string": "Ocorreu um problema ao carregar o seu ficheiro. Por favor, tente novamente."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Etiqueta de um botão de fecho no componente Alert",
+ "string": "Ignorar"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "Texto de acessibilidade que descreve a ação para navegar num carrossel de deslocação para o elemento seguinte",
+ "string": "Deslocação para o seguinte"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "Texto de acessibilidade que descreve a ação para navegar num carrossel de deslocação para o elemento anterior",
+ "string": "Deslocação para o anterior"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "Texto de acessibilidade que descreve a ação para navegar num carrossel de deslocação para o elemento seguinte",
+ "string": "Deslocação para o seguinte"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "Texto de acessibilidade que descreve a ação para navegar num carrossel de deslocação para o elemento anterior",
+ "string": "Deslocação para o anterior"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "Texto para todas as etiquetas selecionadas",
+ "string": "Todas as {numSelectedRows} selecionadas"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "Uma etiqueta do botão de seleção Limpar tudo.",
+ "string": "Limpar seleção"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "Uma etiqueta para o botão selecionar tudo.",
+ "string": "Selecionar todos os {itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "Texto da etiqueta selecionada",
+ "string": "{numSelectedRows} selecionado(s)"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "Texto da etiqueta selecionada quando a tabela é paginada",
+ "string": "{numSelectedRows} selecionado(s) ({numSelectedRowsOnPage} mostrado abaixo)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "Rótulo de um botão de ação que recolhe todas as linhas expansíveis da DataTable.",
+ "string": "Encolher tudo"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "Rótulo de um botão de ação que expande todas as linhas expansíveis da DataTable.",
+ "string": "Expandir tudo"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "Um texto que aparece no botão `Clear filters`",
+ "string": "Limpar filtros"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "Um texto que descreve o número de linhas apresentadas na tabela",
+ "string": "A mostrar {firstRow} - {lastRow} de {itemCount}."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "Título para a componente de filtros da barra lateral",
+ "string": "Filtros"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "Uma mensagem mostrada quando o tamanho do ficheiro carregado tem de estar dentro de um determinado intervalo.",
+ "string": "Entre {sizeMin} e {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "Uma mensagem apresentada quando o tamanho do ficheiro carregado tem de ser superior a um determinado valor.",
+ "string": "Max {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "Uma mensagem apresentada quando o tamanho do ficheiro carregado tem de ser superior a um determinado valor.",
+ "string": "Min {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "Uma mensagem mostrada quando o ficheiro carregado tem de ser de determinado(s) tipo(s).",
+ "string": "Carregar {count, plural, one {{firstPart} ficheiros} other {{firstPart} or {secondPart} ficheiros}}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "Um texto que aparece como uma etiqueta para a entrada do componente Dropzone.",
+ "string": "Arraste e largue o seu ficheiro aqui ou clique para carregar."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Rótulo de um botão de cancelamento que é mostrado durante o carregamento de ficheiros na componente Dropzone.",
+ "string": "Cancelar"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "Um texto que é mostrado perto de uma barra de progresso durante o carregamento de ficheiros na componente Dropzone.",
+ "string": "A carregar {filename}."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "Uma mensagem mostrada no caso de o menu de sugestões automáticas ser aberto.",
+ "string": "Fechar o menu de opções"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "Uma mensagem mostrada no caso de o menu de sugestões automáticas ser fechado.",
+ "string": "Abrir o menu de opções"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "Mensagem de leitura de ecrã para informar o utilizador de que se encontra na parte inferior da etapa de visita ao produto.",
+ "string": "Fundo da etapa {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "Mensagem de leitura de ecrã para informar o utilizador de que se encontra na parte inferior da etapa de visita ao produto.",
+ "string": "Topo da etapa {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Fechar a etiqueta do componente Toast",
+ "string": "Fechar"
+ }
+}
diff --git a/src/i18n/messages/paragon/ru.json b/src/i18n/messages/paragon/ru.json
new file mode 100644
index 00000000..63e0cb14
--- /dev/null
+++ b/src/i18n/messages/paragon/ru.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "Сообщение, отображаемое, когда в Dropzone загружается файл размером меньше минимально допустимого.",
+ "string": "Файл должен быть больше, чем {size} ."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "Сообщение, отображаемое, когда в Dropzone загружается файл, размер которого превышает максимально допустимый.",
+ "string": "Файл должен быть меньше {size} ."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "Сообщение, отображаемое при загрузке файла с неправильным типом MIME.",
+ "string": "Тип файла должен быть {count, множественное число, один { файл {typeString} } другой {один из файлов {typeString} }}."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "Сообщение, отображаемое при перетаскивании нескольких файлов в Dropzone.",
+ "string": "Разрешена только одна загрузка."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "Сообщение, отображаемое при проверке файла дела в компоненте Dropzone по неизвестной причине.",
+ "string": "Во время проверки файла возникла непредвиденная проблема. Пожалуйста, попробуйте еще раз."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "Сообщение, отображаемое в случае, если загрузка файла в компоненте Dropzone приводит к ошибке.",
+ "string": "Возникла проблема при загрузке файла. Пожалуйста, попробуйте еще раз."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Метка кнопки закрытия на компоненте Alert",
+ "string": "Скрыть"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "Текст доступности, описывающий действие по переходу прокручиваемой карусели к следующему элементу.",
+ "string": "Перейти к следующему"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "Текст специальных возможностей, описывающий действие по переходу прокручиваемой карусели к предыдущему элементу.",
+ "string": "Перейти к предыдущему"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "Текст доступности, описывающий действие по переходу прокручиваемой карусели к следующему элементу.",
+ "string": "Перейти к следующему"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "Текст специальных возможностей, описывающий действие по переходу прокручиваемой карусели к предыдущему элементу.",
+ "string": "Перейти к предыдущему"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "Текст для всех выбранных ярлыков",
+ "string": "Все {numSelectedRows} выбрано"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "Ярлык кнопки очистки всего выбора.",
+ "string": "Очистить выбор"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "Метка для кнопки «Выбрать все».",
+ "string": "Выбрать все {itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "Текст для выбранной метки",
+ "string": "{numSelectedRows} выбрано"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "Текст для выбранной метки, когда таблица разбита на страницы",
+ "string": "выбран {numSelectedRows} ( {numSelectedRowsOnPage} показан ниже)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "Метка кнопки действия, которая сворачивает все расширяемые строки DataTable.",
+ "string": "Свернуть все"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "Метка кнопки действия, которая раскрывает все расширяемые строки DataTable.",
+ "string": "Развернуть все"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "Текст, который появляется на кнопке «Очистить фильтры».",
+ "string": "Отменить фильтры"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "Текст, описывающий, сколько строк отображается в таблице.",
+ "string": "Показаны {firstRow} - {lastRow} из {itemCount} ."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "Название компонента фильтров боковой панели",
+ "string": "Фильтры"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "Сообщение, отображаемое, когда размер загружаемого файла должен находиться в заданном диапазоне.",
+ "string": "Между {sizeMin} и {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "Сообщение, отображаемое, когда размер загружаемого файла должен быть больше некоторого значения.",
+ "string": "Макс {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "Сообщение, отображаемое, когда размер загружаемого файла должен быть больше некоторого значения.",
+ "string": "Мин {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "Сообщение, отображаемое при загрузке файла, должно относиться к определенному типу(ам).",
+ "string": "Загрузите {count, множественное число, один { файлы {firstPart} } другие { файлы {firstPart} или {secondPart} }}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "Текст, который отображается в качестве метки для ввода компонента Dropzone.",
+ "string": "Перетащите файл сюда или нажмите, чтобы загрузить."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Метка кнопки отмены, которая отображается во время загрузки файла в компоненте Dropzone.",
+ "string": "Отмена"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "Текст, который отображается рядом с индикатором выполнения во время загрузки файла в компонент Dropzone.",
+ "string": "Загрузка {filename} ."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "Сообщение, отображаемое в случае открытия меню автозаполнения.",
+ "string": "Закрыть меню опций"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "Сообщение, отображаемое в случае, если меню автозаполнения закрыто.",
+ "string": "Открыть меню опций"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "Сообщение средства чтения с экрана, уведомляющее пользователя о том, что он находится в нижней части этапа обзора продукта.",
+ "string": "Нижняя часть ступени {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "Сообщение средства чтения с экрана, уведомляющее пользователя о том, что он находится в нижней части этапа обзора продукта.",
+ "string": "Начало ступени {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Закрыть ярлык для компонента Toast",
+ "string": "Закрыть"
+ }
+}
diff --git a/src/i18n/messages/paragon/sw.json b/src/i18n/messages/paragon/sw.json
new file mode 100644
index 00000000..32c4f7c6
--- /dev/null
+++ b/src/i18n/messages/paragon/sw.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "Ujumbe unaoonyeshwa wakati faili yenye ukubwa wa chini ya chini unaoruhusiwa inapakiwa katika Dropzone.",
+ "string": "Faili lazima iwe kubwa kuliko {size} ."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "Ujumbe unaoonyeshwa wakati faili iliyo na zaidi ya ukubwa unaoruhusiwa inapakiwa kwenye Dropzone.",
+ "string": "Faili lazima iwe chini ya {size} ."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "Ujumbe unaoonyeshwa wakati faili yenye aina isiyo sahihi ya MIME inapakiwa.",
+ "string": "Aina ya faili lazima iwe {count, wingi, moja { {typeString} file} nyingine {moja ya faili {typeString} }}."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "Ujumbe unaoonyeshwa wakati faili nyingi zinaburutwa kupitia Dropzone.",
+ "string": "Upakiaji mmoja pekee unaruhusiwa."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "Ujumbe unaoonyeshwa katika kesi ya uthibitishaji wa faili katika sehemu ya Dropzone kwa sababu isiyojulikana.",
+ "string": "Tatizo lisilotarajiwa lilitokea wakati wa uthibitishaji wa faili. Tafadhali jaribu tena."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "Ujumbe unaoonyeshwa katika kesi ya upakiaji wa faili katika sehemu ya Dropzone husababisha hitilafu.",
+ "string": "Tatizo limetokea wakati wa kupakia faili yako. Tafadhali jaribu tena."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Lebo ya kitufe cha kufunga kwenye kipengele cha Arifa",
+ "string": "Ondoa"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "Maandishi ya ufikivu yanayoelezea kitendo cha kuelekeza jukwa linalosogezwa hadi kwenye kipengele kinachofuata",
+ "string": "Tembeza hadi inayofuata"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "Maandishi ya ufikivu yanayoelezea kitendo cha kuelekeza jukwa linalosogezwa hadi kwenye kipengele kilichotangulia",
+ "string": "Sogeza hadi uliopita"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "Maandishi ya ufikivu yanayoelezea kitendo cha kuelekeza jukwa linalosogezwa hadi kwenye kipengele kinachofuata",
+ "string": "Tembeza hadi inayofuata"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "Maandishi ya ufikivu yanayoelezea kitendo cha kuelekeza jukwa linalosogezwa hadi kwenye kipengele kilichotangulia",
+ "string": "Sogeza hadi uliopita"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "Maandishi kwa lebo zote zilizochaguliwa",
+ "string": "Zote {numSelectedRows} zimechaguliwa"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "Lebo ya futa kitufe cha uteuzi wote.",
+ "string": "Futa uteuzi"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "Lebo ya kitufe cha kuchagua zote.",
+ "string": "Chagua zote {itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "Maandishi ya lebo iliyochaguliwa",
+ "string": "{numSelectedRows} imechaguliwa"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "Maandishi ya lebo iliyochaguliwa wakati jedwali limewekwa alama",
+ "string": "{numSelectedRows} imechaguliwa ( {numSelectedRowsOnPage} imeonyeshwa hapa chini)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "Lebo ya kitufe cha kitendo ambacho hukunja safu mlalo zote zinazoweza kupanuliwa za DataTable.",
+ "string": "Kunja zote"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "Lebo ya kitufe cha kitendo kinachopanua safu mlalo zote zinazoweza kupanuliwa za DataTable.",
+ "string": "Panua zote"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "Maandishi yanayoonekana kwenye kitufe cha `Futa vichujio`",
+ "string": "Futa vichungi"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "Maandishi yanayoelezea ni safu mlalo ngapi zinaonyeshwa kwenye jedwali",
+ "string": "Inaonyesha {firstRow} - {lastRow} ya {itemCount} ."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "Kichwa cha sehemu ya vichujio vya utepe",
+ "string": "Vichujio"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "Ujumbe unaoonyeshwa wakati saizi ya faili iliyopakiwa lazima iwe katika safu fulani.",
+ "string": "Kati ya {sizeMin} na {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "Ujumbe unaoonyeshwa wakati saizi ya faili iliyopakiwa lazima iwe zaidi ya thamani fulani.",
+ "string": "Upeo wa {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "Ujumbe unaoonyeshwa wakati saizi ya faili iliyopakiwa lazima iwe zaidi ya thamani fulani.",
+ "string": "Chini ya {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "Ujumbe unaoonyeshwa wakati faili iliyopakiwa lazima iwe ya aina fulani.",
+ "string": "Pakia {count, wingi, moja { {firstPart} files} nyingine { {firstPart} au {secondPart} faili}}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "Maandishi yanayoonekana kama lebo ya ingizo la sehemu ya Dropzone.",
+ "string": "Buruta na udondoshe faili yako hapa au ubofye ili upakie."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Lebo ya kitufe cha kughairi kinachoonyeshwa wakati wa kupakia faili katika kipengele cha Dropzone.",
+ "string": "Ghairi"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "Maandishi ambayo yanaonyeshwa karibu na upau wa maendeleo wakati wa upakiaji wa faili katika sehemu ya Dropzone.",
+ "string": "Inapakia {filename} ."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "Ujumbe unaoonyeshwa katika kesi wakati menyu ya pendekezo otomatiki inafunguliwa.",
+ "string": "Funga menyu ya chaguzi"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "Ujumbe unaoonyeshwa katika kesi wakati menyu ya pendekezo otomatiki imefungwa.",
+ "string": "Fungua menyu ya chaguzi"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "Ujumbe wa kisoma skrini ili kumjulisha mtumiaji kuwa ziko sehemu ya chini ya hatua ya ziara ya bidhaa.",
+ "string": "Chini ya hatua {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "Ujumbe wa kisoma skrini ili kumjulisha mtumiaji kuwa ziko sehemu ya chini ya hatua ya ziara ya bidhaa.",
+ "string": "Juu ya hatua {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Funga lebo ya kipengele cha Toast",
+ "string": "Funga"
+ }
+}
diff --git a/src/i18n/messages/paragon/te.json b/src/i18n/messages/paragon/te.json
new file mode 100644
index 00000000..ba39b8bd
--- /dev/null
+++ b/src/i18n/messages/paragon/te.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "డ్రాప్జోన్లో అనుమతించబడిన కనీస పరిమాణం కంటే తక్కువ పరిమాణం ఉన్న ఫైల్ అప్లోడ్ చేయబడుతున్నప్పుడు సందేశం చూపబడుతుంది.",
+ "string": "ఫైల్ తప్పనిసరిగా {size} కంటే పెద్దదిగా ఉండాలి."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "డ్రాప్జోన్లో అనుమతించబడిన గరిష్ట పరిమాణం కంటే ఎక్కువ ఫైల్ అప్లోడ్ చేయబడినప్పుడు సందేశం చూపబడుతుంది.",
+ "string": "ఫైల్ తప్పనిసరిగా {size} కంటే తక్కువగా ఉండాలి."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "తప్పు MIME రకంతో ఫైల్ అప్లోడ్ అవుతున్నప్పుడు సందేశం చూపబడుతుంది.",
+ "string": "ఫైల్ రకం తప్పనిసరిగా {count, plural, ఒకటి { {typeString} ఫైల్} మరొకటి { {typeString} ఫైల్లలో ఒకటి}} అయి ఉండాలి."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "బహుళ ఫైల్లు డ్రాప్జోన్పైకి లాగబడినప్పుడు చూపబడే సందేశం.",
+ "string": "ఒక అప్లోడ్ మాత్రమే అనుమతించబడింది."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "తెలియని కారణంతో డ్రాప్జోన్ కాంపోనెంట్లో కేస్ ఫైల్ ధ్రువీకరణలో సందేశం చూపబడింది.",
+ "string": "ఫైల్ ప్రామాణీకరణ సమయంలో ఊహించని సమస్య ఏర్పడింది. దయచేసి మళ్లీ ప్రయత్నించండి."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "డ్రాప్జోన్ కాంపోనెంట్లో ఫైల్ అప్లోడ్ సందర్భంలో చూపబడిన సందేశం లోపం ఏర్పడుతుంది.",
+ "string": "మీ ఫైల్ని అప్లోడ్ చేస్తున్నప్పుడు సమస్య ఏర్పడింది. దయచేసి మళ్లీ ప్రయత్నించండి."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "హెచ్చరిక భాగంపై క్లోజ్ బటన్ యొక్క లేబుల్",
+ "string": "రద్దుచేసే"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "స్క్రోల్ చేయదగిన రంగులరాట్నం తదుపరి మూలకానికి నావిగేట్ చేయడం కోసం చర్యను వివరించే యాక్సెసిబిలిటీ టెక్స్ట్",
+ "string": "తదుపరి దానికి స్క్రోల్ చేయండి"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "మునుపటి మూలకానికి స్క్రోల్ చేయదగిన రంగులరాట్నం నావిగేట్ చేయడం కోసం చర్యను వివరించే యాక్సెసిబిలిటీ టెక్స్ట్",
+ "string": "మునుపటికి స్క్రోల్ చేయండి"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "స్క్రోల్ చేయదగిన రంగులరాట్నం తదుపరి మూలకానికి నావిగేట్ చేయడం కోసం చర్యను వివరించే యాక్సెసిబిలిటీ టెక్స్ట్",
+ "string": "తదుపరి దానికి స్క్రోల్ చేయండి"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "మునుపటి మూలకానికి స్క్రోల్ చేయదగిన రంగులరాట్నం నావిగేట్ చేయడం కోసం చర్యను వివరించే యాక్సెసిబిలిటీ టెక్స్ట్",
+ "string": "మునుపటికి స్క్రోల్ చేయండి"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "ఎంచుకున్న అన్ని లేబుల్ కోసం వచనం",
+ "string": "మొత్తం {numSelectedRows} ఎంచుకోబడింది"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "మొత్తం ఎంపిక బటన్ను క్లియర్ చేసే లేబుల్.",
+ "string": "ఎంపికను క్లియర్ చేయండి"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "అన్నీ ఎంపిక బటన్ కోసం ఒక లేబుల్.",
+ "string": "మొత్తం {itemCount} ని ఎంచుకోండి"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "ఎంచుకున్న లేబుల్ కోసం వచనం",
+ "string": "{numSelectedRows} ఎంచుకోబడింది"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "పట్టిక పేజీలో ఉన్నప్పుడు ఎంచుకున్న లేబుల్ కోసం వచనం",
+ "string": "{numSelectedRows} ఎంచుకోబడింది ( {numSelectedRowsOnPage} క్రింద చూపబడింది)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "డేటా టేబుల్ యొక్క అన్ని విస్తరించదగిన అడ్డు వరుసలను కుదించే చర్య బటన్ యొక్క లేబుల్.",
+ "string": "అన్నింటినీ కుదించు"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "డేటా టేబుల్ యొక్క అన్ని విస్తరించదగిన వరుసలను విస్తరించే చర్య బటన్ యొక్క లేబుల్.",
+ "string": "అన్నింటినీ విస్తరించుట"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "`క్లియర్ ఫిల్టర్లు` బటన్పై కనిపించే వచనం",
+ "string": "ఫిల్టర్లను క్లియర్ చేయండి"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "పట్టికలో ఎన్ని అడ్డు వరుసలు చూపబడిందో వివరించే వచనం",
+ "string": "{itemCount} యొక్క {firstRow} - {lastRow} చూపుతోంది."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "సైడ్బార్ ఫిల్టర్ల భాగం కోసం శీర్షిక",
+ "string": "ఫిల్టర్లు"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "అప్లోడ్ చేయబడినప్పుడు చూపబడే సందేశం ఫైల్ పరిమాణం తప్పనిసరిగా ఇచ్చిన పరిధిలో ఉండాలి.",
+ "string": "{sizeMin} మరియు {sizeMax} మధ్య"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "అప్లోడ్ చేయబడినప్పుడు చూపబడే సందేశం ఫైల్ పరిమాణం తప్పనిసరిగా కొంత విలువ కంటే ఎక్కువగా ఉండాలి.",
+ "string": "గరిష్టంగా {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "అప్లోడ్ చేయబడినప్పుడు చూపబడే సందేశం ఫైల్ పరిమాణం తప్పనిసరిగా కొంత విలువ కంటే ఎక్కువగా ఉండాలి.",
+ "string": "కనిష్ట {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "ఫైల్ని అప్లోడ్ చేసినప్పుడు చూపబడే సందేశం తప్పనిసరిగా నిర్దిష్ట రకం(లు)కి చెందినదై ఉండాలి.",
+ "string": "అప్లోడ్ {గణన, బహువచనం, ఒకటి { {firstPart} ఫైల్లు} ఇతర { {firstPart} లేదా {secondPart} ఫైల్లు}}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "డ్రాప్జోన్ భాగం యొక్క ఇన్పుట్ కోసం లేబుల్గా కనిపించే వచనం.",
+ "string": "మీ ఫైల్ని ఇక్కడకు లాగి వదలండి లేదా అప్లోడ్ చేయడానికి క్లిక్ చేయండి."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "డ్రాప్జోన్ కాంపోనెంట్లో ఫైల్ అప్లోడ్ సమయంలో చూపబడే రద్దు బటన్ లేబుల్.",
+ "string": "రద్దు చేయండి"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "డ్రాప్జోన్ కాంపోనెంట్లో ఫైల్ అప్లోడ్ సమయంలో ప్రోగ్రెస్ బార్ దగ్గర చూపబడే వచనం.",
+ "string": "{filename} అప్లోడ్ చేస్తోంది."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "స్వీయసూచన మెను తెరిచినప్పుడు ఒక సందేశం చూపబడుతుంది.",
+ "string": "ఎంపికల మెనుని మూసివేయండి"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "స్వీయసూచన మెను మూసివేయబడినప్పుడు సందేశం చూపబడుతుంది.",
+ "string": "ఎంపికల మెనుని తెరవండి"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "ప్రోడక్ట్ టూర్ స్టెప్ దిగువన ఉన్నారని వినియోగదారుకు తెలియజేయడానికి స్క్రీన్-రీడర్ సందేశం.",
+ "string": "{step} అడుగు దిగువన"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "ప్రోడక్ట్ టూర్ స్టెప్ దిగువన ఉన్నారని వినియోగదారుకు తెలియజేయడానికి స్క్రీన్-రీడర్ సందేశం.",
+ "string": "{step} యొక్క పైభాగం"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "టోస్ట్ కాంపోనెంట్ కోసం లేబుల్ని మూసివేయండి",
+ "string": "దగ్గరగా"
+ }
+}
diff --git a/src/i18n/messages/paragon/th.json b/src/i18n/messages/paragon/th.json
new file mode 100644
index 00000000..2144c2eb
--- /dev/null
+++ b/src/i18n/messages/paragon/th.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "ข้อความที่แสดงเมื่อมีการอัปโหลดไฟล์ที่มีขนาดน้อยกว่าขนาดขั้นต่ำที่อนุญาตใน Dropzone",
+ "string": "ไฟล์ต้องมีขนาดใหญ่กว่า {size}"
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "ข้อความที่แสดงเมื่อมีการอัปโหลดไฟล์ที่มีขนาดเกินขนาดสูงสุดที่อนุญาตใน Dropzone",
+ "string": "ไฟล์ต้องน้อยกว่า {size}"
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "ข้อความที่แสดงเมื่อมีการอัปโหลดไฟล์ที่มีประเภท MIME ไม่ถูกต้อง",
+ "string": "ประเภทไฟล์จะต้องเป็น {count, plural, one { {typeString} file} other {one of {typeString} files}}"
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "ข้อความที่แสดงเมื่อมีการลากไฟล์หลายไฟล์ไปที่ Dropzone",
+ "string": "อนุญาตให้อัปโหลดได้เพียงรายการเดียวเท่านั้น"
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "ข้อความที่แสดงในกรณีการตรวจสอบไฟล์ในส่วนประกอบ Dropzone โดยไม่ทราบสาเหตุ",
+ "string": "เกิดปัญหาที่ไม่คาดคิดระหว่างการตรวจสอบไฟล์ กรุณาลองอีกครั้ง."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "ข้อความที่แสดงในกรณีที่การอัปโหลดไฟล์ในส่วนประกอบ Dropzone ส่งผลให้เกิดข้อผิดพลาด",
+ "string": "เกิดปัญหาขณะอัปโหลดไฟล์ของคุณ กรุณาลองอีกครั้ง."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "ป้ายกำกับของปุ่มปิดบนส่วนประกอบการแจ้งเตือน",
+ "string": "ถอดถอน"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "ข้อความการช่วยเหลือพิเศษที่อธิบายการดำเนินการสำหรับการนำทางภาพหมุนที่เลื่อนได้ไปยังองค์ประกอบถัดไป",
+ "string": "เลื่อนไปถัดไป"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "ข้อความการช่วยเหลือพิเศษที่อธิบายการดำเนินการสำหรับการนำทางภาพหมุนที่เลื่อนได้ไปยังองค์ประกอบก่อนหน้า",
+ "string": "เลื่อนไปที่ก่อนหน้า"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "ข้อความการช่วยเหลือพิเศษที่อธิบายการดำเนินการสำหรับการนำทางภาพหมุนที่เลื่อนได้ไปยังองค์ประกอบถัดไป",
+ "string": "เลื่อนไปถัดไป"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "ข้อความการช่วยเหลือพิเศษที่อธิบายการดำเนินการสำหรับการนำทางภาพหมุนที่เลื่อนได้ไปยังองค์ประกอบก่อนหน้า",
+ "string": "เลื่อนไปที่ก่อนหน้า"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "ข้อความสำหรับป้ายกำกับที่เลือกทั้งหมด",
+ "string": "เลือก {numSelectedRows} ทั้งหมดแล้ว"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "ป้ายปุ่มล้างการเลือกทั้งหมด",
+ "string": "ล้างการเลือก"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "ป้ายกำกับสำหรับปุ่มเลือกทั้งหมด",
+ "string": "เลือก {itemCount} ทั้งหมด"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "ข้อความสำหรับป้ายกำกับที่เลือก",
+ "string": "เลือก {numSelectedRows} แล้ว"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "ข้อความสำหรับป้ายกำกับที่เลือกเมื่อมีการแบ่งหน้าตาราง",
+ "string": "เลือก {numSelectedRows} แล้ว ( {numSelectedRowsOnPage} แสดงด้านล่าง)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "ป้ายกำกับของปุ่มการดำเนินการที่จะยุบแถวที่ขยายได้ทั้งหมดของ DataTable",
+ "string": "ซ่อนทั้งหมด"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "ป้ายกำกับของปุ่มการดำเนินการที่ขยายแถวที่ขยายได้ทั้งหมดของ DataTable",
+ "string": "ขยายทั้งหมด"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "ข้อความที่ปรากฏบนปุ่ม "ล้างตัวกรอง"",
+ "string": "ล้างตัวกรอง"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "ข้อความอธิบายจำนวนแถวที่แสดงในตาราง",
+ "string": "กำลังแสดง {firstRow} - {lastRow} ของ {itemCount}"
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "ชื่อสำหรับส่วนประกอบตัวกรองแถบด้านข้าง",
+ "string": "ตัวกรอง"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "ข้อความที่แสดงเมื่อขนาดของไฟล์ที่อัปโหลดต้องอยู่ในช่วงที่กำหนด",
+ "string": "ระหว่าง {sizeMin} และ {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "ข้อความที่แสดงเมื่อขนาดของไฟล์ที่อัปโหลดต้องมากกว่าค่าบางค่า",
+ "string": "แม็กซ์ {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "ข้อความที่แสดงเมื่อขนาดของไฟล์ที่อัปโหลดต้องมากกว่าค่าบางค่า",
+ "string": "ขั้นต่ำ {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "ข้อความที่แสดงเมื่อไฟล์อัพโหลดต้องเป็นประเภทบางประเภท",
+ "string": "อัปโหลด {count, พหูพจน์, หนึ่งไฟล์ { {firstPart} files} other { {firstPart} or {secondPart} files}}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "ข้อความที่ปรากฏเป็นป้ายกำกับสำหรับการป้อนข้อมูลของส่วนประกอบ Dropzone",
+ "string": "ลากและวางไฟล์ของคุณที่นี่หรือคลิกเพื่ออัปโหลด"
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "ป้ายกำกับของปุ่มยกเลิกที่แสดงระหว่างการอัปโหลดไฟล์ในคอมโพเนนต์ Dropzone",
+ "string": "ยกเลิก"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "ข้อความที่แสดงใกล้กับแถบความคืบหน้าระหว่างการอัปโหลดไฟล์ในคอมโพเนนต์ Dropzone",
+ "string": "กำลังอัพโหลด {filename}"
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "ข้อความที่แสดงในกรณีที่เปิดเมนูแนะนำอัตโนมัติ",
+ "string": "ปิดเมนูตัวเลือก"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "ข้อความที่แสดงในกรณีที่เมนูแนะนำอัตโนมัติปิดอยู่",
+ "string": "เปิดเมนูตัวเลือก"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "ข้อความโปรแกรมอ่านหน้าจอเพื่อแจ้งให้ผู้ใช้ทราบว่าพวกเขาอยู่ที่ด้านล่างของขั้นตอนการแนะนำผลิตภัณฑ์",
+ "string": "ด้านล่างของบันได {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "ข้อความโปรแกรมอ่านหน้าจอเพื่อแจ้งให้ผู้ใช้ทราบว่าพวกเขาอยู่ที่ด้านล่างของขั้นตอนการแนะนำผลิตภัณฑ์",
+ "string": "ด้านบนของขั้นตอน {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "ปิดป้ายกำกับสำหรับส่วนประกอบ Toast",
+ "string": "ปิด"
+ }
+}
diff --git a/src/i18n/messages/paragon/tr_TR.json b/src/i18n/messages/paragon/tr_TR.json
new file mode 100644
index 00000000..0053aa35
--- /dev/null
+++ b/src/i18n/messages/paragon/tr_TR.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "İzin verilen minimum boyuttan daha küçük bir dosya Dropzone'a yüklenirken gösterilen bir mesaj.",
+ "string": "Dosya {size} değerinden büyük olmalıdır."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "İzin verilen maksimum boyuttan daha büyük bir dosya Dropzone'a yüklenirken gösterilen bir mesaj.",
+ "string": "Dosya {size} değerinden küçük olmalıdır."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "Yanlış MIME türüne sahip bir dosya yüklenirken gösterilen mesaj.",
+ "string": "Dosya türü {count, plural, one { {typeString} file} other {one of {typeString} files}} olmalıdır."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "Birden fazla dosya Dropzone'a sürüklendiğinde gösterilen bir mesaj.",
+ "string": "Yalnızca bir yüklemeye izin verilir."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "Bilinmeyen bir nedenden dolayı Dropzone bileşeninde vaka dosyası doğrulamasında gösterilen bir mesaj.",
+ "string": "Dosya doğrulama sırasında beklenmeyen bir sorun oluştu. Lütfen tekrar deneyin."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "Dropzone bileşeninde dosya yükleme işleminin hatayla sonuçlanması durumunda gösterilen mesaj.",
+ "string": "Dosyanız yüklenirken bir sorun oluştu. Lütfen tekrar deneyin."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Uyarı bileşenindeki kapat düğmesinin etiketi",
+ "string": "İptal"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "Kaydırılabilir bir döngüde sonraki öğeye gitme eylemini açıklayan erişilebilirlik metni",
+ "string": "Sonrakine kaydır"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "Kaydırılabilir bir döngüde önceki öğeye gitme eylemini açıklayan erişilebilirlik metni",
+ "string": "Öncekine kaydır"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "Kaydırılabilir bir döngüde sonraki öğeye gitme eylemini açıklayan erişilebilirlik metni",
+ "string": "Sonrakine kaydır"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "Kaydırılabilir bir döngüde önceki öğeye gitme eylemini açıklayan erişilebilirlik metni",
+ "string": "Öncekine kaydır"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "Seçilen tüm etiketlerin metni",
+ "string": "Tüm {numSelectedRows} seçildi"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "Tüm seçimleri temizle düğmesinin etiketi.",
+ "string": "Seçimi temizle"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "Tümünü seç düğmesi için bir etiket.",
+ "string": "Tümünü seç {itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "Seçilen etiketin metni",
+ "string": "{numSelectedRows} seçildi"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "Tablo sayfalara ayrıldığında seçilen etiketin metni",
+ "string": "{numSelectedRows} seçildi ( {numSelectedRowsOnPage} aşağıda gösterilmiştir)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "DataTable'ın tüm genişletilebilir satırlarını daraltan bir eylem düğmesinin etiketi.",
+ "string": "Tümünü kapa"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "DataTable'ın tüm genişletilebilir satırlarını genişleten bir eylem düğmesinin etiketi.",
+ "string": "Tümünü genişlet"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "'Filtreleri temizle' düğmesinde görünen metin",
+ "string": "Filtreleri temizle"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "Tabloda kaç satırın gösterildiğini açıklayan bir metin",
+ "string": "{itemCount} {firstRow} - {lastRow} gösteriliyor."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "Kenar çubuğu filtreleri bileşeninin başlığı",
+ "string": "Filtreler"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "Yüklenen dosyanın boyutu belirtilen aralıkta olduğunda gösterilen mesaj gösterilmelidir.",
+ "string": "{sizeMin} ile {sizeMax} arasında"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "Yüklenen dosyanın boyutu bir değerden büyük olduğunda gösterilen mesaj.",
+ "string": "Maksimum {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "Yüklenen dosyanın boyutu bir değerden büyük olduğunda gösterilen mesaj.",
+ "string": "Min {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "Dosya yüklenirken gösterilen mesaj belirli tür(ler)de olmalıdır.",
+ "string": "{count, plural, one { {firstPart} files} diğer { {firstPart} veya {secondPart} files}} yükleyin"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "Dropzone bileşeninin girişi için etiket olarak görünen metin.",
+ "string": "Dosyanızı buraya sürükleyip bırakın veya yüklemek için tıklayın."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Dropzone bileşeninde dosya yükleme sırasında gösterilen iptal düğmesinin etiketi.",
+ "string": "İptal"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "Dropzone bileşeninde dosya yükleme sırasında ilerleme çubuğunun yanında gösterilen metin.",
+ "string": "{filename} yükleniyor."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "Otomatik öneri menüsünün açılması durumunda gösterilen mesaj.",
+ "string": "Seçenekler menüsünü kapat"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "Otomatik öneri menüsünün kapatılması durumunda gösterilen bir mesaj.",
+ "string": "Seçenekler menüsünü açın"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "Kullanıcıya ürün turu adımının alt kısmında bulunduğunu bildiren ekran okuyucu mesajı.",
+ "string": "{step} adımının alt kısmı"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "Kullanıcıya ürün turu adımının alt kısmında bulunduğunu bildiren ekran okuyucu mesajı.",
+ "string": "Adımın başı {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Tost bileşeni için etiketi kapat",
+ "string": "Kapat"
+ }
+}
diff --git a/src/i18n/messages/paragon/uk.json b/src/i18n/messages/paragon/uk.json
new file mode 100644
index 00000000..7f29cf23
--- /dev/null
+++ b/src/i18n/messages/paragon/uk.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "Повідомлення, яке відображається, коли в Dropzone завантажується файл, розмір якого менший за мінімально допустимий.",
+ "string": "Файл має бути більшим за {size} ."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "Повідомлення, яке відображається, коли в Dropzone завантажується файл, розмір якого перевищує максимально допустимий.",
+ "string": "Файл має бути меншим за {size} ."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "Повідомлення, яке відображається, коли завантажується файл із неправильним типом MIME.",
+ "string": "Тип файлу має бути {count, plural, one { файл {typeString} } other {один із файлів {typeString} }}."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "Повідомлення, яке відображається, коли кілька файлів перетягується через Dropzone.",
+ "string": "Дозволено лише одне завантаження."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "Повідомлення, яке відображається під час перевірки файлу справи в компоненті Dropzone з невідомої причини.",
+ "string": "Під час перевірки файлу виникла неочікувана проблема. Будь ласка спробуйте ще раз."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "Повідомлення, яке відображається під час завантаження файлу випадку в компонент Dropzone, призводить до помилки.",
+ "string": "Під час завантаження файлу виникла проблема. Будь ласка спробуйте ще раз."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Мітка кнопки закриття на компоненті Alert",
+ "string": "Відхилити"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "Текст доступності, що описує дію для переходу прокручуваної каруселі до наступного елемента",
+ "string": "Перейдіть до наступного"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "Текст доступності, що описує дію для переходу прокручуваної каруселі до попереднього елемента",
+ "string": "Перейти до попереднього"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "Текст доступності, що описує дію для переходу прокручуваної каруселі до наступного елемента",
+ "string": "Перейдіть до наступного"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "Текст доступності, що описує дію для переходу прокручуваної каруселі до попереднього елемента",
+ "string": "Перейти до попереднього"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "Текст для всіх вибраних міток",
+ "string": "Вибрано всі {numSelectedRows}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "Позначка кнопки «Очистити весь вибір».",
+ "string": "Очистити вибір"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "Мітка для кнопки «Вибрати все».",
+ "string": "Виберіть усі {itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "Текст для вибраної мітки",
+ "string": "{numSelectedRows} вибрано"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "Текст для вибраного мітка, коли таблицю розбивають на сторінки",
+ "string": "{numSelectedRows} вибрано ( {numSelectedRowsOnPage} показано нижче)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "Мітка кнопки дії, яка згортає всі розгорнуті рядки DataTable.",
+ "string": "Згорнути всі"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "Мітка кнопки дії, яка розгортає всі розгорнуті рядки DataTable.",
+ "string": "Розгорнути всі"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "Текст, який з’являється на кнопці «Очистити фільтри».",
+ "string": "Очистити фільтри"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "Текст, що описує, скільки рядків показано в таблиці",
+ "string": "Показано {firstRow} - {lastRow} з {itemCount} ."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "Заголовок для компонента фільтрів бічної панелі",
+ "string": "Фільтри"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "Повідомлення, що відображається під час завантаження, розмір файлу має бути в заданому діапазоні.",
+ "string": "Між {sizeMin} та {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "Повідомлення, що відображається під час завантаження розміру файлу, має бути більше певного значення.",
+ "string": "Макс {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "Повідомлення, що відображається під час завантаження розміру файлу, має бути більше певного значення.",
+ "string": "Мін. {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "Повідомлення, яке відображається під час завантаження файлу, має бути певного типу.",
+ "string": "Завантажте {count, plural, one { {firstPart} files} other { {firstPart} or {secondPart} files}}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "Текст, який відображається як мітка для введення компонента Dropzone.",
+ "string": "Перетягніть файл сюди або натисніть, щоб завантажити."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Мітка кнопки скасування, яка відображається під час завантаження файлу в компонент Dropzone.",
+ "string": "Скасувати"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "Текст, який відображається біля індикатора виконання під час завантаження файлу в компонент Dropzone.",
+ "string": "Завантаження {filename} ."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "Повідомлення, яке відображається у випадку, коли відкрито меню автопропозицій.",
+ "string": "Закрийте меню параметрів"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "Повідомлення, яке відображається у випадку, коли меню автопропозицій закрито.",
+ "string": "Відкрийте меню параметрів"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "Повідомлення програми зчитування з екрана, щоб сповістити користувача про те, що він розташований у нижній частині кроку ознайомлення з продуктом.",
+ "string": "Нижня частина кроку {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "Повідомлення програми зчитування з екрана, щоб сповістити користувача про те, що він розташований у нижній частині кроку ознайомлення з продуктом.",
+ "string": "Верхня частина кроку {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Закрити мітку для компонента Toast",
+ "string": "Закрити"
+ }
+}
diff --git a/src/i18n/messages/paragon/uz.json b/src/i18n/messages/paragon/uz.json
new file mode 100644
index 00000000..facb51b0
--- /dev/null
+++ b/src/i18n/messages/paragon/uz.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "Minimal ruxsat etilgan hajmdan kichikroq fayl Dropzone-ga yuklanayotganda ko‘rsatiladigan xabar.",
+ "string": "Fayl {size} dan kattaroq boʻlishi kerak."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "Dropzone-ga ruxsat etilgan maksimal hajmdan kattaroq fayl yuklanayotganda ko‘rsatiladigan xabar.",
+ "string": "Fayl {size} dan kichik bo‘lishi kerak."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "Noto‘g‘ri MIME turiga ega fayl yuklanganda ko‘rsatiladigan xabar.",
+ "string": "Fayl turi {hisob, ko‘plik, bitta { {typeString} fayl} boshqa { {typeString} fayllaridan biri}} bo‘lishi kerak."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "Bir nechta fayllar Dropzone orqali sudralganda ko‘rsatiladigan xabar.",
+ "string": "Faqat bitta yuklashga ruxsat berilgan."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "Noma'lum sabablarga ko‘ra Dropzone komponentida ish faylini tekshirishda ko‘rsatilgan xabar.",
+ "string": "Faylni tekshirish paytida kutilmagan muammo yuz berdi. Iltimos, qayta urinib ko‘ring."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "Dropzone komponentida fayl yuklanganda ko‘rsatilgan xabar xatolikka olib keladi.",
+ "string": "Faylingizni yuklashda muammo yuz berdi. Iltimos, qayta urinib koʻring."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Alert komponentidagi yopish tugmasi yorlig‘i",
+ "string": "Rad etish"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "Qaytib olinadigan karuseldan keyingi elementga o‘tish harakatini tavsiflovchi maxsus imkoniyatlar matni",
+ "string": "Keyingisiga o‘ting"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "Qaytib olinadigan karuseldan oldingi elementga o‘tish harakatini tavsiflovchi maxsus imkoniyatlar matni",
+ "string": "Oldingisiga o‘ting"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "Qaytib olinadigan karuseldan keyingi elementga o‘tish harakatini tavsiflovchi maxsus imkoniyatlar matni",
+ "string": "Keyingisiga o‘ting"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "Qaytib olinadigan karuseldan oldingi elementga o‘tish harakatini tavsiflovchi maxsus imkoniyatlar matni",
+ "string": "Oldingisiga o‘ting"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "Barcha tanlangan yorliq uchun matn",
+ "string": "Barcha {numSelectedRows} tanlandi"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "Barcha tanlovni tozalash tugmasi yorlig‘i.",
+ "string": "Tanlovni tozalash"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "Hammasini tanlash tugmasi uchun yorliq.",
+ "string": "Hammasini tanlang {itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "Tanlangan yorliq uchun matn",
+ "string": "{numSelectedRows} tanlangan"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "Jadval sahifalanganda tanlangan yorliq uchun matn",
+ "string": "{numSelectedRows} tanlangan ( {numSelectedRowsOnPage} quyida ko‘rsatilgan)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "Ma'lumotlar jadvalining barcha kengaytiriladigan qatorlarini yopib qo‘yadigan amal tugmasi yorlig‘i.",
+ "string": "Hammasini yig‘ish"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "Ma'lumotlar jadvalining barcha kengaytiriladigan qatorlarini kengaytiruvchi harakat tugmasi yorlig‘i.",
+ "string": "Hammasini kengaytiring"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "'Filtrlarni tozalash' tugmachasida paydo bo‘ladigan matn",
+ "string": "Filtrlarni tozalash"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "Jadvalda nechta qatorni tavsiflovchi matn ko‘rsatilgan",
+ "string": "{itemCount} dan {firstRow} - {lastRow} ko‘rsatilmoqda."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "Yon panel filtrlari komponenti sarlavhasi",
+ "string": "Filtrlar"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "Yuklangan fayl hajmi berilgan oraliqda bo‘lishi kerak.",
+ "string": "{sizeMin} va {sizeMax} orasida"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "Yuklangan faylning o‘lchami maʼlum qiymatdan kattaroq boʻlishi kerak.",
+ "string": "Maks {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "Yuklangan faylning o‘lchami maʼlum qiymatdan kattaroq boʻlishi kerak.",
+ "string": "Min {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "Fayl yuklanganda ko‘rsatiladigan xabar ma'lum turdagi(lar)da bo‘lishi kerak.",
+ "string": "Yuklang {hisoblash, koʻplik, bitta { {firstPart} fayllar} boshqa { {firstPart} yoki {secondPart} fayllar}}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "Dropzone komponentini kiritish uchun yorliq sifatida paydo bo‘ladigan matn.",
+ "string": "Faylingizni shu yerga sudrab tashlang yoki yuklash uchun bosing."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Dropzone komponentida fayl yuklash paytida ko‘rsatiladigan bekor qilish tugmasi yorlig‘i.",
+ "string": "Bekor qilish"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "Dropzone komponentida faylni yuklash vaqtida progress paneli yonida ko‘rsatiladigan matn.",
+ "string": "Yuklanmoqda {filename} ."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "Avtomatik taklif menyusi ochilganda ko‘rsatiladigan xabar.",
+ "string": "Variantlar menyusini yoping"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "Avtomatik taklif menyusi yopilganda ko‘rsatiladigan xabar.",
+ "string": "Variantlar menyusini oching"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "Ekranni o‘quvchi xabari foydalanuvchiga mahsulot sayohati bosqichining pastki qismida joylashganligi haqida xabar beradi.",
+ "string": "{step} qadamining pastki qismi"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "Ekranni o‘quvchi xabari foydalanuvchiga mahsulot sayohati bosqichining pastki qismida joylashganligi haqida xabar beradi.",
+ "string": "Yuqori bosqich {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Tost komponenti uchun yorliqni yoping",
+ "string": "Yopish"
+ }
+}
diff --git a/src/i18n/messages/paragon/vi.json b/src/i18n/messages/paragon/vi.json
new file mode 100644
index 00000000..a784a533
--- /dev/null
+++ b/src/i18n/messages/paragon/vi.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "Thông báo hiển thị khi một tệp có kích thước nhỏ hơn kích thước tối thiểu cho phép đang được tải lên trong Dropzone.",
+ "string": "Tệp phải lớn hơn {size} ."
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "Thông báo hiển thị khi một tệp có kích thước lớn hơn kích thước tối đa cho phép đang được tải lên trong Dropzone.",
+ "string": "Tệp phải nhỏ hơn {size} ."
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "Thông báo hiển thị khi tải lên một tệp có loại MIME sai.",
+ "string": "Loại tệp phải là {count, số nhiều, một { tệp {typeString} } khác {một trong các tệp {typeString} }}."
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "Thông báo hiển thị khi nhiều tệp được kéo qua Dropzone.",
+ "string": "Chỉ cho phép tải lên một lần."
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "Một thông báo hiển thị khi xác thực tệp trường hợp trong thành phần Dropzone mà không rõ lý do.",
+ "string": "Đã xảy ra sự cố không mong muốn trong quá trình xác thực tệp. Vui lòng thử lại."
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "Một thông báo hiển thị trong trường hợp tải lên tệp trong thành phần Dropzone dẫn đến lỗi.",
+ "string": "Đã xảy ra sự cố khi tải tệp của bạn lên. Vui lòng thử lại."
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Nhãn của nút đóng trên thành phần Cảnh báo",
+ "string": "Loại bỏ"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "Văn bản trợ năng mô tả hành động điều hướng băng chuyền có thể cuộn tới phần tử tiếp theo",
+ "string": "Di chuyển đến tiếp theo"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "Văn bản trợ năng mô tả hành động điều hướng băng chuyền có thể cuộn đến phần tử trước đó",
+ "string": "Cuộn về trước"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "Văn bản trợ năng mô tả hành động điều hướng băng chuyền có thể cuộn tới phần tử tiếp theo",
+ "string": "Di chuyển đến tiếp theo"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "Văn bản trợ năng mô tả hành động điều hướng băng chuyền có thể cuộn đến phần tử trước đó",
+ "string": "Cuộn về trước"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "Văn bản cho tất cả nhãn đã chọn",
+ "string": "Đã chọn tất cả {numSelectedRows}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "Nhãn của nút chọn rõ ràng tất cả.",
+ "string": "Xóa lựa chọn"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "Một nhãn cho nút chọn tất cả.",
+ "string": "Chọn tất cả {itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "Văn bản cho nhãn đã chọn",
+ "string": "{numSelectedRows} đã chọn"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "Văn bản cho nhãn đã chọn khi bảng được đánh số trang",
+ "string": "{numSelectedRows} đã chọn ( {numSelectedRowsOnPage} hiển thị bên dưới)"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "Nhãn của nút hành động thu gọn tất cả các hàng DataTable có thể mở rộng.",
+ "string": "Thu gọn tất cả"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "Nhãn của nút tác vụ mở rộng tất cả các hàng DataTable có thể mở rộng.",
+ "string": "Mở rộng tất cả"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "Một văn bản xuất hiện trên nút `Xóa bộ lọc`",
+ "string": "Xóa bộ lọc"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "Một văn bản mô tả số lượng hàng được hiển thị trong bảng",
+ "string": "Đang hiển thị {firstRow} - {lastRow} của {itemCount} ."
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "Tiêu đề cho thành phần bộ lọc thanh bên",
+ "string": "Bộ lọc"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "Thông báo hiển thị khi kích thước tệp được tải lên phải nằm trong phạm vi nhất định.",
+ "string": "Giữa {sizeMin} và {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "Thông báo hiển thị khi kích thước tệp được tải lên phải lớn hơn một giá trị nào đó.",
+ "string": "Tối đa {sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "Thông báo hiển thị khi kích thước tệp được tải lên phải lớn hơn một giá trị nào đó.",
+ "string": "Tối thiểu {sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "Thông báo hiển thị khi tệp được tải lên phải thuộc (các) loại nhất định.",
+ "string": "Tải lên {count, số nhiều, một { tệp {firstPart} } tệp khác { {firstPart} hoặc {secondPart} }}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "Một văn bản xuất hiện dưới dạng nhãn cho đầu vào của thành phần Dropzone.",
+ "string": "Kéo và thả tệp của bạn vào đây hoặc nhấp để tải lên."
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Nhãn của nút hủy được hiển thị trong quá trình tải tệp lên trong thành phần Dropzone.",
+ "string": "Hủy bỏ"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "Một văn bản được hiển thị gần thanh tiến trình trong quá trình tải tệp lên trong thành phần Dropzone.",
+ "string": "Đang tải lên {filename} ."
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "Một thông báo hiển thị trong trường hợp trình đơn tự động đề xuất được mở.",
+ "string": "Đóng trình đơn tùy chọn"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "Một thông báo hiển thị trong trường hợp trình đơn tự động đề xuất bị đóng.",
+ "string": "Mở trình đơn tùy chọn"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "Thông báo của trình đọc màn hình để thông báo cho người dùng rằng họ đang ở cuối bước tham quan sản phẩm.",
+ "string": "Cuối bước {step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "Thông báo của trình đọc màn hình để thông báo cho người dùng rằng họ đang ở cuối bước tham quan sản phẩm.",
+ "string": "Đầu bước {step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Đóng nhãn cho thành phần Toast",
+ "string": "Đóng"
+ }
+}
diff --git a/src/i18n/messages/paragon/zh_CN.json b/src/i18n/messages/paragon/zh_CN.json
new file mode 100644
index 00000000..0863f38b
--- /dev/null
+++ b/src/i18n/messages/paragon/zh_CN.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "当在 Dropzone 中上传小于允许的最小大小的文件时显示的消息。",
+ "string": "文件必须大于{size} 。"
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "当在 Dropzone 中上传的文件超过允许的最大大小时显示的消息。",
+ "string": "文件必须小于{size} 。"
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "上传 MIME 类型错误的文件时显示的消息。",
+ "string": "文件类型必须为 {count,plural, one { {typeString} file} other {one of {typeString} files}}。"
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "将多个文件拖动到 Dropzone 上时显示的消息。",
+ "string": "只允许上传一次。"
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "由于未知原因,Dropzone 组件中的文件验证中显示一条消息。",
+ "string": "文件验证期间出现意外问题。请再试一次。"
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "如果 Dropzone 组件中的文件上传导致错误,则会显示一条消息。",
+ "string": "上传文件时出现问题。请再试一次。"
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Alert 组件上关闭按钮的标签",
+ "string": "忽略"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "描述将可滚动轮播导航到下一个元素的操作的辅助功能文本",
+ "string": "滚动到下一个"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "描述将可滚动轮播导航至上一个元素的操作的辅助功能文本",
+ "string": "滚动到上一个"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "描述将可滚动轮播导航到下一个元素的操作的辅助功能文本",
+ "string": "滚动到下一个"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "描述将可滚动轮播导航至上一个元素的操作的辅助功能文本",
+ "string": "滚动到上一个"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "所有选定标签的文本",
+ "string": "全部选择{numSelectedRows}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "清除所有选择按钮的标签。",
+ "string": "清空选项"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "用于全选按钮的标签。",
+ "string": "选择全部{itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "选定标签的文本",
+ "string": "{numSelectedRows}已选择"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "表格分页时所选标签的文本",
+ "string": "选择了{numSelectedRows} (如下所示的{numSelectedRowsOnPage} )"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "折叠 DataTable 的所有可展开行的操作按钮的标签。",
+ "string": "折叠全部"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "用于展开 DataTable 的所有可展开行的操作按钮的标签。",
+ "string": "展开全部"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "“清除过滤器”按钮上显示的文本",
+ "string": "清除过滤器"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "描述表中显示的行数的文本",
+ "string": "显示{itemCount}的{firstRow} - {lastRow} 。"
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "侧边栏过滤器组件的标题",
+ "string": "过滤器"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "当上传文件的大小必须在给定范围内时显示的消息。",
+ "string": "{sizeMin}和{sizeMax}之间"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "当上传的文件大小必须大于某个值时显示的消息。",
+ "string": "最大{sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "当上传的文件大小必须大于某个值时显示的消息。",
+ "string": "最小{sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "上传的文件必须属于特定类型时显示的消息。",
+ "string": "上传 {count,plural, one { {firstPart}个文件} other { {firstPart}或{secondPart}个文件}}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "显示为 Dropzone 组件输入标签的文本。",
+ "string": "将您的文件拖放到此处或单击上传。"
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Dropzone 组件中文件上传期间显示的取消按钮的标签。",
+ "string": "取消"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "在 Dropzone 组件中上传文件期间,在进度条附近显示的文本。",
+ "string": "正在上传{filename} 。"
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "打开自动建议菜单时显示的消息。",
+ "string": "关闭选项菜单"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "自动建议菜单关闭时显示的消息。",
+ "string": "打开选项菜单"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "屏幕阅读器消息,通知用户他们位于产品浏览步骤的底部。",
+ "string": "步骤底部{step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "屏幕阅读器消息,通知用户他们位于产品浏览步骤的底部。",
+ "string": "步骤顶部{step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Toast 组件的关闭标签",
+ "string": "关闭"
+ }
+}
diff --git a/src/i18n/messages/paragon/zh_HK.json b/src/i18n/messages/paragon/zh_HK.json
new file mode 100644
index 00000000..27e31d5b
--- /dev/null
+++ b/src/i18n/messages/paragon/zh_HK.json
@@ -0,0 +1,134 @@
+{
+ "dropzone.Dropzone.invalidSizeLessError": {
+ "developer_comment": "當在 Dropzone 中上傳小於允許的最小大小的檔案時顯示的訊息。",
+ "string": "檔案必須大於{size} 。"
+ },
+ "dropzone.Dropzone.invalidSizeMoreError": {
+ "developer_comment": "當在 Dropzone 中上傳的檔案超過允許的最大大小時顯示的訊息。",
+ "string": "檔案必須小於{size} 。"
+ },
+ "dropzone.Dropzone.invalidType": {
+ "developer_comment": "上傳 MIME 類型錯誤的檔案時顯示的訊息。",
+ "string": "檔案類型必須為 {count,plural, one { {typeString} file} 其他 {one of {typeString} files}}。"
+ },
+ "dropzone.Dropzone.multipleDraggedError": {
+ "developer_comment": "將多個檔案拖曳到 Dropzone 上時顯示的訊息。",
+ "string": "只允許上傳一次。"
+ },
+ "dropzone.Dropzone.unexpectedValidationError": {
+ "developer_comment": "由於未知原因,Dropzone 元件中的檔案驗證中顯示一則訊息。",
+ "string": "文件驗證期間發生意外問題。請再試一次。"
+ },
+ "dropzone.Dropzone.uploadError": {
+ "developer_comment": "如果 Dropzone 元件中的檔案上傳導致錯誤,則會顯示一則訊息。",
+ "string": "上傳文件時出現問題。請再試一次。"
+ },
+ "pgn.Alert.closeLabel": {
+ "developer_comment": "Alert 元件上關閉按鈕的標籤",
+ "string": "忽略"
+ },
+ "pgn.CardCarousel.scrollToNext": {
+ "developer_comment": "無障礙功能文字描述導航到可滾動旋轉木馬的下一個元素的操作",
+ "string": "滾動到下一個"
+ },
+ "pgn.CardCarousel.scrollToPrevious": {
+ "developer_comment": "無障礙性文本描述導航可滾動旋轉木馬至上一個元素的動作",
+ "string": "滾動到上一個"
+ },
+ "pgn.ChipCarousel.scrollToNext": {
+ "developer_comment": "無障礙性文本描述導航可滾動旋轉木馬至下一個元素的動作",
+ "string": "滾動到下一個"
+ },
+ "pgn.ChipCarousel.scrollToPrevious": {
+ "developer_comment": "無障礙性文本描述導航可滾動旋轉木馬至上一個元素的動作",
+ "string": "滾動到上一個"
+ },
+ "pgn.DataTable.BaseSelectionStatus.allSelectedText": {
+ "developer_comment": "所有選定標籤的文字",
+ "string": "全部選{numSelectedRows}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.clearSelectionText": {
+ "developer_comment": "清除所有選擇按鈕的標籤。",
+ "string": "清空選項"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectAllText": {
+ "developer_comment": "用於全選按鈕的標籤。",
+ "string": "選擇全部{itemCount}"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedText": {
+ "developer_comment": "選定標籤的文字",
+ "string": "{numSelectedRows}已選擇"
+ },
+ "pgn.DataTable.BaseSelectionStatus.selectedTextPaginated": {
+ "developer_comment": "表格分頁時所選標籤的文本",
+ "string": "選擇了{numSelectedRows} (如下所示的{numSelectedRowsOnPage} )"
+ },
+ "pgn.DataTable.ExpandAll.collapseAllLabel": {
+ "developer_comment": "收起 DataTable 的所有可展開行的操作按鈕的標籤。",
+ "string": "全部收起"
+ },
+ "pgn.DataTable.ExpandAll.expandAllLabel": {
+ "developer_comment": "用於展開 DataTable 的所有可展開行的操作按鈕的標籤。",
+ "string": "展開全部"
+ },
+ "pgn.DataTable.FilterStatus.clearFiltersText": {
+ "developer_comment": "“清除篩選器”按鈕上顯示的文本",
+ "string": "清除篩選器"
+ },
+ "pgn.DataTable.RowStatus.statusText": {
+ "developer_comment": "描述表中顯示的行數的文本",
+ "string": "顯示{itemCount}的{firstRow} - {lastRow} 。"
+ },
+ "pgn.DataTable.SidebarFilters.title": {
+ "developer_comment": "側邊欄篩選器組件的標題",
+ "string": "篩選器"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeBetween": {
+ "developer_comment": "當上傳檔案的大小必須在給定範圍內時顯示的訊息。",
+ "string": "{sizeMin}和{sizeMax}之間"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMax": {
+ "developer_comment": "當上傳的檔案大小必須大於某個值時顯示的訊息。",
+ "string": "最大{sizeMax}"
+ },
+ "pgn.Dropzone.DefaultContent.fileSizeMin": {
+ "developer_comment": "當上傳的檔案大小必須大於某個值時顯示的訊息。",
+ "string": "最小{sizeMin}"
+ },
+ "pgn.Dropzone.DefaultContent.fileTypeRestriction": {
+ "developer_comment": "上傳的文件必須屬於特定類型時顯示的訊息。",
+ "string": "上傳 {count,plural, one { {firstPart} files} 其他 { {firstPart}或{secondPart} files}}"
+ },
+ "pgn.Dropzone.DefaultContent.label": {
+ "developer_comment": "顯示為 Dropzone 元件輸入標籤的文字。",
+ "string": "將您的文件拖放到此處或點擊上傳。"
+ },
+ "pgn.Dropzone.UploadProgress.cancelLabel": {
+ "developer_comment": "Dropzone 元件中檔案上傳期間顯示的取消按鈕的標籤。",
+ "string": "取消"
+ },
+ "pgn.Dropzone.UploadProgress.uploadLabel": {
+ "developer_comment": "在 Dropzone 元件中上傳檔案期間,在進度條附近顯示的文字。",
+ "string": "正在上傳{filename} 。"
+ },
+ "pgn.FormAutosuggest.iconButtonClosed": {
+ "developer_comment": "開啟自動建議選單時顯示的訊息。",
+ "string": "關閉選項選單"
+ },
+ "pgn.FormAutosuggest.iconButtonOpened": {
+ "developer_comment": "自動建議選單關閉時顯示的訊息。",
+ "string": "開啟選項選單"
+ },
+ "pgn.ProductTour.Checkpoint.bottom-position-text": {
+ "developer_comment": "螢幕閱讀器訊息,通知用户他們位於產品瀏覽步驟的底部。",
+ "string": "步驟底部{step}"
+ },
+ "pgn.ProductTour.Checkpoint.top-position-text": {
+ "developer_comment": "螢幕閱讀器訊息,通知用户他們位於產品瀏覽步驟的底部。",
+ "string": "步驟頂部{step}"
+ },
+ "pgn.Toast.closeLabel": {
+ "developer_comment": "Toast 元件的關閉標籤",
+ "string": "關閉"
+ }
+}