diff --git a/README.md b/README.md
index 5ba494da..96526a1d 100644
--- a/README.md
+++ b/README.md
@@ -101,53 +101,38 @@ Preferences -> Tools -> Actions on Save
## Translations
-We use (Locize)[https://locize.com] (see 1Password for credentials)
-together with (i18next)[https://www.i18next.com/]
-for translations on the Frontend.
+We use the [i18next](https://www.i18next.com/) library for translations.
+Please add `a.` prefix for new translation keys in the code:
-Please make sure that the required environment variables are set
-(see ./env_secrets/local_daniel.env for the values):
-
-* LOCIZE_PROJECT_ID
-* LOCIZE_API_KEY
-
-The master for translated files is on Locize!
-That means, that the app will take the translations/texts from Locize
-to show in the app.
-The files in ./client/locales are only used as reference and are not the master!
-
-There are multiple ways on how to add new translations to Locize:
-
-### Process one: Let Locize add missing keys automatically
-
-When running the app, it will automatically add the missing translation
-keys to Locize.
-There you can translate them, and also add the German translation.
-
-### Process two: Add keys manually
-
-You can add the new keys manually to the German locale file in
-./client/locales/de/translation.json
-
-Then you can run the following command to add the keys to Locize:
-
-### Helpers
-
-The following command could help find missing and/or unused keys.
-But manual review is still needed.
-
-```bash
-npx vue-i18n-extract report --vueFiles './src/**/*.?(ts|vue)' --languageFiles './src/locales/**/*.?(json|yml|yaml)'
+```
+
{{ $t("a.Demo mit Daniel") }}
```
+With [i18next-parser](https://github.com/i18next/i18next-parser) we can extraxt the
+new translation keys directly from the code to the language files in `./client/src/locales`.
+
```bash
-npm run locize:sync
+# extract new translation keys
+# in `./client` directory
+npm run i18next:parse
```
-The command will add the keys and the German translation to Locize.
+The new keys will end up in the `./client/src/locales/de/translation.json` file.
+
+You can translate the keys directly in the files.
+
+#### Bonus: Translate with BabelEdit desktop app
+
+The [BabelEdit](https://www.codeandweb.com/babeledit) desktop can help directly with
+the translation.
+
+
+
+Here are the settings that I use in BabelEdit:
+
+
+Run the `npm run i18next:sort` to get a "clean" sorted file after edit with BabelEdit.
-Bonus: Use the "i18n ally" plugin in VSCode or IntelliJ to get extract untranslated
-texts directly from the code to the translation.json file.
### "_many" plural form in French and Italian
diff --git a/client/.gitignore b/client/.gitignore
index 38adffa6..0620c3a3 100644
--- a/client/.gitignore
+++ b/client/.gitignore
@@ -26,3 +26,4 @@ coverage
*.njsproj
*.sln
*.sw?
+babel-edit.babel
\ No newline at end of file
diff --git a/client/.prettierrc b/client/.prettierrc
index 49aec493..0e2e0704 100644
--- a/client/.prettierrc
+++ b/client/.prettierrc
@@ -1,6 +1,7 @@
{
"htmlWhitespaceSensitivity": "ignore",
"jsonRecursiveSort": true,
+ "jsonSortOrder": "{\"/.*/\": \"caseInsensitiveNumeric\"}",
"organizeImportsSkipDestructiveCodeActions": true,
"plugins": [
"prettier-plugin-sort-json",
diff --git a/client/i18next-parser.config.mjs b/client/i18next-parser.config.mjs
new file mode 100644
index 00000000..de1a763b
--- /dev/null
+++ b/client/i18next-parser.config.mjs
@@ -0,0 +1,133 @@
+// i18next-parser.config.js
+
+export default {
+ contextSeparator: "_",
+ // Key separator used in your translation keys
+
+ createOldCatalogs: false,
+ // Save the \_old files
+
+ defaultNamespace: "translation",
+ // Default namespace used in your i18next config
+
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ defaultValue: function (locale, namespace, key, value) {
+ if (locale === "de") {
+ return key;
+ }
+ return "";
+ },
+ // Default value to give to keys with no value
+ // You may also specify a function accepting the locale, namespace, key, and value as arguments
+
+ indentation: 2,
+ // Indentation of the catalog files
+
+ keepRemoved: true,
+ // Keep keys from the catalog that are no longer in code
+ // You may either specify a boolean to keep or discard all removed keys.
+ // You may also specify an array of patterns: the keys from the catalog that are no long in the code but match one of the patterns will be kept.
+ // The patterns are applied to the full key including the namespace, the parent keys and the separators.
+
+ keySeparator: false,
+ // Key separator used in your translation keys
+ // If you want to use plain english keys, separators such as `.` and `:` will conflict. You might want to set `keySeparator: false` and `namespaceSeparator: false`. That way, `t('Status: Loading...')` will not think that there are a namespace and three separator dots for instance.
+
+ // see below for more details
+ lexers: {
+ vue: [
+ {
+ lexer: "JavascriptLexer",
+ functions: ["t", "$t"], // Array of functions to match
+ namespaceFunctions: ["useTranslation", "withTranslation"], // Array of functions to match for namespace
+ },
+ ],
+ default: ["JavascriptLexer"],
+ },
+
+ lineEnding: "auto",
+ // Control the line ending. See options at https://github.com/ryanve/eol
+
+ locales: ["de", "fr", "it"],
+ // An array of the locales in your applications
+
+ namespaceSeparator: false,
+ // Namespace separator used in your translation keys
+ // If you want to use plain english keys, separators such as `.` and `:` will conflict. You might want to set `keySeparator: false` and `namespaceSeparator: false`. That way, `t('Status: Loading...')` will not think that there are a namespace and three separator dots for instance.
+
+ output: "src/locales/$LOCALE/$NAMESPACE.json",
+ // Supports $LOCALE and $NAMESPACE injection
+ // Supports JSON (.json) and YAML (.yml) file formats
+ // Where to write the locale files relative to process.cwd()
+
+ pluralSeparator: "_",
+ // Plural separator used in your translation keys
+ // If you want to use plain english keys, separators such as `_` might conflict. You might want to set `pluralSeparator` to a different string that does not occur in your keys.
+ // If you don't want to generate keys for plurals (for example, in case you are using ICU format), set `pluralSeparator: false`.
+
+ input: ["src/**/*.{js,ts,vue}"],
+ // An array of globs that describe where to look for source files
+ // relative to the location of the configuration file
+
+ sort: false,
+ // Whether or not to sort the catalog. Can also be a [compareFunction](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#parameters)
+
+ verbose: false,
+ // Display info about the parsing including some stats
+
+ failOnWarnings: false,
+ // Exit with an exit code of 1 on warnings
+
+ failOnUpdate: false,
+ // Exit with an exit code of 1 when translations are updated (for CI purpose)
+
+ customValueTemplate: null,
+ // If you wish to customize the value output the value as an object, you can set your own format.
+ //
+ // - ${defaultValue} is the default value you set in your translation function.
+ // - ${filePaths} will be expanded to an array that contains the absolute
+ // file paths where the translations originated in, in case e.g., you need
+ // to provide translators with context
+ //
+ // Any other custom property will be automatically extracted from the 2nd
+ // argument of your `t()` function or tOptions in
+ //
+ // Example:
+ // For `t('my-key', {maxLength: 150, defaultValue: 'Hello'})` in
+ // /path/to/your/file.js,
+ //
+ // Using the following customValueTemplate:
+ //
+ // customValueTemplate: {
+ // message: "${defaultValue}",
+ // description: "${maxLength}",
+ // paths: "${filePaths}",
+ // }
+ //
+ // Will result in the following item being extracted:
+ //
+ // "my-key": {
+ // "message": "Hello",
+ // "description": 150,
+ // "paths": ["/path/to/your/file.js"]
+ // }
+
+ resetDefaultValueLocale: null,
+ // The locale to compare with default values to determine whether a default value has been changed.
+ // If this is set and a default value differs from a translation in the specified locale, all entries
+ // for that key across locales are reset to the default value, and existing translations are moved to
+ // the `_old` file.
+
+ i18nextOptions: null,
+ // If you wish to customize options in internally used i18next instance, you can define an object with any
+ // configuration property supported by i18next (https://www.i18next.com/overview/configuration-options).
+ // { compatibilityJSON: 'v3' } can be used to generate v3 compatible plurals.
+
+ yamlOptions: null,
+ // If you wish to customize options for yaml output, you can define an object here.
+ // Configuration options are here (https://github.com/nodeca/js-yaml#dump-object---options-).
+ // Example:
+ // {
+ // lineWidth: -1,
+ // }
+};
diff --git a/client/package-lock.json b/client/package-lock.json
index f4917956..01ed182b 100644
--- a/client/package-lock.json
+++ b/client/package-lock.json
@@ -61,6 +61,7 @@
"eslint-config-prettier": "^8.10.0",
"eslint-plugin-cypress": "^2.15.2",
"eslint-plugin-vue": "^9.27.0",
+ "i18next-parser": "^9.0.2",
"jsdom": "^24.1.0",
"locize-cli": "^8.0.1",
"postcss": "^8.4.39",
@@ -1560,6 +1561,22 @@
"node": ">=12"
}
},
+ "node_modules/@esbuild/openbsd-arm64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.1.tgz",
+ "integrity": "sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "openbsd"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
"node_modules/@esbuild/openbsd-x64": {
"version": "0.18.20",
"resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz",
@@ -2725,6 +2742,18 @@
"graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0"
}
},
+ "node_modules/@gulpjs/to-absolute-glob": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@gulpjs/to-absolute-glob/-/to-absolute-glob-4.0.0.tgz",
+ "integrity": "sha512-kjotm7XJrJ6v+7knhPaRgaT6q8F8K2jiafwYdNHLzmV0uGLuZY43FK6smNSHUPrhq5kX2slCUy+RGG/xGqmIKA==",
+ "dev": true,
+ "dependencies": {
+ "is-negated-glob": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
"node_modules/@hapi/hoek": {
"version": "9.3.0",
"resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz",
@@ -4332,6 +4361,12 @@
"integrity": "sha512-OpXEVoCKSS3lQqjx9GGGOapBeuW5eUboYHRlHP9urXPX25IKZ6AnP5ZRxtVf63iieUbsHxLn8NQ5Nlftc6yzAA==",
"dev": true
},
+ "node_modules/@types/minimatch": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz",
+ "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==",
+ "dev": true
+ },
"node_modules/@types/node": {
"version": "20.14.10",
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.10.tgz",
@@ -4351,6 +4386,12 @@
"resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz",
"integrity": "sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ=="
},
+ "node_modules/@types/symlink-or-copy": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/@types/symlink-or-copy/-/symlink-or-copy-1.2.2.tgz",
+ "integrity": "sha512-MQ1AnmTLOncwEf9IVU+B2e4Hchrku5N67NkgcAHW0p3sdzPe0FNMANxEm6OJUzPniEQGkeT3OROLlCwZJLWFZA==",
+ "dev": true
+ },
"node_modules/@types/tough-cookie": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.2.tgz",
@@ -5605,6 +5646,12 @@
"proxy-from-env": "^1.1.0"
}
},
+ "node_modules/b4a": {
+ "version": "1.6.6",
+ "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.6.tgz",
+ "integrity": "sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==",
+ "dev": true
+ },
"node_modules/babel-plugin-syntax-trailing-function-commas": {
"version": "7.0.0-beta.0",
"resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz",
@@ -5654,6 +5701,13 @@
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
},
+ "node_modules/bare-events": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.4.2.tgz",
+ "integrity": "sha512-qMKFd2qG/36aA4GwvKq8MxnPgCQAmBWmSyLWsJcbn8v03wvIPQ/hG1Ms8bPzndZxMDoHpxez5VOS+gC9Yi24/Q==",
+ "dev": true,
+ "optional": true
+ },
"node_modules/base64-js": {
"version": "1.5.1",
"resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
@@ -5738,6 +5792,85 @@
"node": ">=8"
}
},
+ "node_modules/broccoli-node-api": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/broccoli-node-api/-/broccoli-node-api-1.7.0.tgz",
+ "integrity": "sha512-QIqLSVJWJUVOhclmkmypJJH9u9s/aWH4+FH6Q6Ju5l+Io4dtwqdPUNmDfw40o6sxhbZHhqGujDJuHTML1wG8Yw==",
+ "dev": true
+ },
+ "node_modules/broccoli-node-info": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/broccoli-node-info/-/broccoli-node-info-2.2.0.tgz",
+ "integrity": "sha512-VabSGRpKIzpmC+r+tJueCE5h8k6vON7EIMMWu6d/FyPdtijwLQ7QvzShEw+m3mHoDzUaj/kiZsDYrS8X2adsBg==",
+ "dev": true,
+ "engines": {
+ "node": "8.* || >= 10.*"
+ }
+ },
+ "node_modules/broccoli-output-wrapper": {
+ "version": "3.2.5",
+ "resolved": "https://registry.npmjs.org/broccoli-output-wrapper/-/broccoli-output-wrapper-3.2.5.tgz",
+ "integrity": "sha512-bQAtwjSrF4Nu0CK0JOy5OZqw9t5U0zzv2555EA/cF8/a8SLDTIetk9UgrtMVw7qKLKdSpOZ2liZNeZZDaKgayw==",
+ "dev": true,
+ "dependencies": {
+ "fs-extra": "^8.1.0",
+ "heimdalljs-logger": "^0.1.10",
+ "symlink-or-copy": "^1.2.0"
+ },
+ "engines": {
+ "node": "10.* || >= 12.*"
+ }
+ },
+ "node_modules/broccoli-output-wrapper/node_modules/fs-extra": {
+ "version": "8.1.0",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
+ "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==",
+ "dev": true,
+ "dependencies": {
+ "graceful-fs": "^4.2.0",
+ "jsonfile": "^4.0.0",
+ "universalify": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=6 <7 || >=8"
+ }
+ },
+ "node_modules/broccoli-output-wrapper/node_modules/jsonfile": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
+ "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==",
+ "dev": true,
+ "optionalDependencies": {
+ "graceful-fs": "^4.1.6"
+ }
+ },
+ "node_modules/broccoli-output-wrapper/node_modules/universalify": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
+ "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 4.0.0"
+ }
+ },
+ "node_modules/broccoli-plugin": {
+ "version": "4.0.7",
+ "resolved": "https://registry.npmjs.org/broccoli-plugin/-/broccoli-plugin-4.0.7.tgz",
+ "integrity": "sha512-a4zUsWtA1uns1K7p9rExYVYG99rdKeGRymW0qOCNkvDPHQxVi3yVyJHhQbM3EZwdt2E0mnhr5e0c/bPpJ7p3Wg==",
+ "dev": true,
+ "dependencies": {
+ "broccoli-node-api": "^1.7.0",
+ "broccoli-output-wrapper": "^3.2.5",
+ "fs-merger": "^3.2.1",
+ "promise-map-series": "^0.3.0",
+ "quick-temp": "^0.1.8",
+ "rimraf": "^3.0.2",
+ "symlink-or-copy": "^1.3.1"
+ },
+ "engines": {
+ "node": "10.* || >= 12.*"
+ }
+ },
"node_modules/browserslist": {
"version": "4.23.2",
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.2.tgz",
@@ -6037,21 +6170,25 @@
}
},
"node_modules/cheerio": {
- "version": "1.0.0-rc.12",
- "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz",
- "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==",
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0.tgz",
+ "integrity": "sha512-quS9HgjQpdaXOvsZz82Oz7uxtXiy6UIsIQcpBj7HRw2M63Skasm9qlDocAM7jNuaxdhpPU7c4kJN+gA5MCu4ww==",
"dev": true,
"dependencies": {
"cheerio-select": "^2.1.0",
"dom-serializer": "^2.0.0",
"domhandler": "^5.0.3",
- "domutils": "^3.0.1",
- "htmlparser2": "^8.0.1",
- "parse5": "^7.0.0",
- "parse5-htmlparser2-tree-adapter": "^7.0.0"
+ "domutils": "^3.1.0",
+ "encoding-sniffer": "^0.2.0",
+ "htmlparser2": "^9.1.0",
+ "parse5": "^7.1.2",
+ "parse5-htmlparser2-tree-adapter": "^7.0.0",
+ "parse5-parser-stream": "^7.1.2",
+ "undici": "^6.19.5",
+ "whatwg-mimetype": "^4.0.0"
},
"engines": {
- "node": ">= 6"
+ "node": ">=18.17"
},
"funding": {
"url": "https://github.com/cheeriojs/cheerio?sponsor=1"
@@ -6207,6 +6344,12 @@
"node": ">=0.8"
}
},
+ "node_modules/clone-stats": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz",
+ "integrity": "sha512-au6ydSpg6nsrigcZ4m8Bc9hxjeW+GJ8xh5G3BJCMt4WXe1H10UNaVOamqQTmrx1kjVuxAHIQSNU6hY4Nsn9/ag==",
+ "dev": true
+ },
"node_modules/color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
@@ -6353,6 +6496,12 @@
"integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
"dev": true
},
+ "node_modules/core-util-is": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
+ "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==",
+ "dev": true
+ },
"node_modules/cosmiconfig": {
"version": "8.2.0",
"resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz",
@@ -7519,6 +7668,19 @@
"iconv-lite": "^0.6.2"
}
},
+ "node_modules/encoding-sniffer": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/encoding-sniffer/-/encoding-sniffer-0.2.0.tgz",
+ "integrity": "sha512-ju7Wq1kg04I3HtiYIOrUrdfdDvkyO9s5XM8QAj/bN61Yo/Vb4vgJxy5vi4Yxk01gWHbrofpPtpxM8bKger9jhg==",
+ "dev": true,
+ "dependencies": {
+ "iconv-lite": "^0.6.3",
+ "whatwg-encoding": "^3.1.1"
+ },
+ "funding": {
+ "url": "https://github.com/fb55/encoding-sniffer?sponsor=1"
+ }
+ },
"node_modules/end-of-stream": {
"version": "1.4.4",
"resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
@@ -7538,6 +7700,12 @@
"node": ">=8.6"
}
},
+ "node_modules/ensure-posix-path": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/ensure-posix-path/-/ensure-posix-path-1.1.1.tgz",
+ "integrity": "sha512-VWU0/zXzVbeJNXvME/5EmLuEj2TauvoaTz6aFYK1Z92JCBlDlZ3Gu0tuGR42kpW1754ywTs+QB0g5TP0oj9Zaw==",
+ "dev": true
+ },
"node_modules/entities": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
@@ -7549,6 +7717,12 @@
"url": "https://github.com/fb55/entities?sponsor=1"
}
},
+ "node_modules/eol": {
+ "version": "0.9.1",
+ "resolved": "https://registry.npmjs.org/eol/-/eol-0.9.1.tgz",
+ "integrity": "sha512-Ds/TEoZjwggRoz/Q2O7SE3i4Jm66mqTDfmdHdq/7DKVk3bro9Q8h6WdXKdPqFLMoqxrDK5SVRzHVPOS6uuGtrg==",
+ "dev": true
+ },
"node_modules/error-ex": {
"version": "1.3.2",
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
@@ -8140,6 +8314,12 @@
"integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==",
"dev": true
},
+ "node_modules/fast-fifo": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz",
+ "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==",
+ "dev": true
+ },
"node_modules/fast-glob": {
"version": "3.3.2",
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz",
@@ -8436,6 +8616,94 @@
"integrity": "sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==",
"dev": true
},
+ "node_modules/fs-extra": {
+ "version": "11.2.0",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz",
+ "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==",
+ "dev": true,
+ "dependencies": {
+ "graceful-fs": "^4.2.0",
+ "jsonfile": "^6.0.1",
+ "universalify": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=14.14"
+ }
+ },
+ "node_modules/fs-merger": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/fs-merger/-/fs-merger-3.2.1.tgz",
+ "integrity": "sha512-AN6sX12liy0JE7C2evclwoo0aCG3PFulLjrTLsJpWh/2mM+DinhpSGqYLbHBBbIW1PLRNcFhJG8Axtz8mQW3ug==",
+ "dev": true,
+ "dependencies": {
+ "broccoli-node-api": "^1.7.0",
+ "broccoli-node-info": "^2.1.0",
+ "fs-extra": "^8.0.1",
+ "fs-tree-diff": "^2.0.1",
+ "walk-sync": "^2.2.0"
+ }
+ },
+ "node_modules/fs-merger/node_modules/fs-extra": {
+ "version": "8.1.0",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
+ "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==",
+ "dev": true,
+ "dependencies": {
+ "graceful-fs": "^4.2.0",
+ "jsonfile": "^4.0.0",
+ "universalify": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=6 <7 || >=8"
+ }
+ },
+ "node_modules/fs-merger/node_modules/jsonfile": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
+ "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==",
+ "dev": true,
+ "optionalDependencies": {
+ "graceful-fs": "^4.1.6"
+ }
+ },
+ "node_modules/fs-merger/node_modules/universalify": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
+ "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 4.0.0"
+ }
+ },
+ "node_modules/fs-mkdirp-stream": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-2.0.1.tgz",
+ "integrity": "sha512-UTOY+59K6IA94tec8Wjqm0FSh5OVudGNB0NL/P6fB3HiE3bYOY3VYBGijsnOHNkQSwC1FKkU77pmq7xp9CskLw==",
+ "dev": true,
+ "dependencies": {
+ "graceful-fs": "^4.2.8",
+ "streamx": "^2.12.0"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
+ "node_modules/fs-tree-diff": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/fs-tree-diff/-/fs-tree-diff-2.0.1.tgz",
+ "integrity": "sha512-x+CfAZ/lJHQqwlD64pYM5QxWjzWhSjroaVsr8PW831zOApL55qPibed0c+xebaLWVr2BnHFoHdrwOv8pzt8R5A==",
+ "dev": true,
+ "dependencies": {
+ "@types/symlink-or-copy": "^1.2.0",
+ "heimdalljs-logger": "^0.1.7",
+ "object-assign": "^4.1.0",
+ "path-posix": "^1.0.0",
+ "symlink-or-copy": "^1.1.8"
+ },
+ "engines": {
+ "node": "6.* || 8.* || >= 10.*"
+ }
+ },
"node_modules/fs.realpath": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
@@ -8579,6 +8847,37 @@
"node": ">= 6"
}
},
+ "node_modules/glob-stream": {
+ "version": "8.0.2",
+ "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-8.0.2.tgz",
+ "integrity": "sha512-R8z6eTB55t3QeZMmU1C+Gv+t5UnNRkA55c5yo67fAVfxODxieTwsjNG7utxS/73NdP1NbDgCrhVEg2h00y4fFw==",
+ "dev": true,
+ "dependencies": {
+ "@gulpjs/to-absolute-glob": "^4.0.0",
+ "anymatch": "^3.1.3",
+ "fastq": "^1.13.0",
+ "glob-parent": "^6.0.2",
+ "is-glob": "^4.0.3",
+ "is-negated-glob": "^1.0.0",
+ "normalize-path": "^3.0.0",
+ "streamx": "^2.12.5"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
+ "node_modules/glob-stream/node_modules/glob-parent": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
+ "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
+ "dev": true,
+ "dependencies": {
+ "is-glob": "^4.0.3"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
"node_modules/glob/node_modules/brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
@@ -8783,6 +9082,15 @@
"graphql": ">=0.11 <=16"
}
},
+ "node_modules/gulp-sort": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/gulp-sort/-/gulp-sort-2.0.0.tgz",
+ "integrity": "sha512-MyTel3FXOdh1qhw1yKhpimQrAmur9q1X0ZigLmCOxouQD+BD3za9/89O+HfbgBQvvh4igEbp0/PUWO+VqGYG1g==",
+ "dev": true,
+ "dependencies": {
+ "through2": "^2.0.1"
+ }
+ },
"node_modules/has": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
@@ -8868,6 +9176,46 @@
"tslib": "^2.0.3"
}
},
+ "node_modules/heimdalljs": {
+ "version": "0.2.6",
+ "resolved": "https://registry.npmjs.org/heimdalljs/-/heimdalljs-0.2.6.tgz",
+ "integrity": "sha512-o9bd30+5vLBvBtzCPwwGqpry2+n0Hi6H1+qwt6y+0kwRHGGF8TFIhJPmnuM0xO97zaKrDZMwO/V56fAnn8m/tA==",
+ "dev": true,
+ "dependencies": {
+ "rsvp": "~3.2.1"
+ }
+ },
+ "node_modules/heimdalljs-logger": {
+ "version": "0.1.10",
+ "resolved": "https://registry.npmjs.org/heimdalljs-logger/-/heimdalljs-logger-0.1.10.tgz",
+ "integrity": "sha512-pO++cJbhIufVI/fmB/u2Yty3KJD0TqNPecehFae0/eps0hkZ3b4Zc/PezUMOpYuHFQbA7FxHZxa305EhmjLj4g==",
+ "dev": true,
+ "dependencies": {
+ "debug": "^2.2.0",
+ "heimdalljs": "^0.2.6"
+ }
+ },
+ "node_modules/heimdalljs-logger/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
+ "dependencies": {
+ "ms": "2.0.0"
+ }
+ },
+ "node_modules/heimdalljs-logger/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "dev": true
+ },
+ "node_modules/heimdalljs/node_modules/rsvp": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-3.2.1.tgz",
+ "integrity": "sha512-Rf4YVNYpKjZ6ASAmibcwTNciQ5Co5Ztq6iZPEykHpkoflnD/K5ryE/rHehFsTm4NJj8nKDhbi3eKBWGogmNnkg==",
+ "dev": true
+ },
"node_modules/html-encoding-sniffer": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz",
@@ -8881,9 +9229,9 @@
}
},
"node_modules/htmlparser2": {
- "version": "8.0.2",
- "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz",
- "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==",
+ "version": "9.1.0",
+ "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-9.1.0.tgz",
+ "integrity": "sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==",
"dev": true,
"funding": [
"https://github.com/fb55/htmlparser2?sponsor=1",
@@ -8895,8 +9243,8 @@
"dependencies": {
"domelementtype": "^2.3.0",
"domhandler": "^5.0.3",
- "domutils": "^3.0.1",
- "entities": "^4.4.0"
+ "domutils": "^3.1.0",
+ "entities": "^4.5.0"
}
},
"node_modules/http-proxy-agent": {
@@ -8997,6 +9345,467 @@
"node-fetch": "^2.6.12"
}
},
+ "node_modules/i18next-parser": {
+ "version": "9.0.2",
+ "resolved": "https://registry.npmjs.org/i18next-parser/-/i18next-parser-9.0.2.tgz",
+ "integrity": "sha512-Q1yTZljBp1DcVAQD7LxduEqFRpjIeZc+5VnQ+gU8qG9WvY3U5rqK0IVONRWNtngh3orb197bfy1Sz4wlwcplxg==",
+ "dev": true,
+ "dependencies": {
+ "@babel/runtime": "^7.23.2",
+ "broccoli-plugin": "^4.0.7",
+ "cheerio": "^1.0.0",
+ "colors": "1.4.0",
+ "commander": "~12.1.0",
+ "eol": "^0.9.1",
+ "esbuild": "^0.23.0",
+ "fs-extra": "^11.1.0",
+ "gulp-sort": "^2.0.0",
+ "i18next": "^23.5.1",
+ "js-yaml": "4.1.0",
+ "lilconfig": "^3.0.0",
+ "rsvp": "^4.8.2",
+ "sort-keys": "^5.0.0",
+ "typescript": "^5.0.4",
+ "vinyl": "~3.0.0",
+ "vinyl-fs": "^4.0.0"
+ },
+ "bin": {
+ "i18next": "bin/cli.js"
+ },
+ "engines": {
+ "node": ">=18.0.0 || >=20.0.0 || >=22.0.0",
+ "npm": ">=6",
+ "yarn": ">=1"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/aix-ppc64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.1.tgz",
+ "integrity": "sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==",
+ "cpu": [
+ "ppc64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "aix"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/android-arm": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.1.tgz",
+ "integrity": "sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/android-arm64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.1.tgz",
+ "integrity": "sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/android-x64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.1.tgz",
+ "integrity": "sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/darwin-arm64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.1.tgz",
+ "integrity": "sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/darwin-x64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.1.tgz",
+ "integrity": "sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/freebsd-arm64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.1.tgz",
+ "integrity": "sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/freebsd-x64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.1.tgz",
+ "integrity": "sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/linux-arm": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.1.tgz",
+ "integrity": "sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/linux-arm64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.1.tgz",
+ "integrity": "sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/linux-ia32": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.1.tgz",
+ "integrity": "sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/linux-loong64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.1.tgz",
+ "integrity": "sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==",
+ "cpu": [
+ "loong64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/linux-mips64el": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.1.tgz",
+ "integrity": "sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==",
+ "cpu": [
+ "mips64el"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/linux-ppc64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.1.tgz",
+ "integrity": "sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==",
+ "cpu": [
+ "ppc64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/linux-riscv64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.1.tgz",
+ "integrity": "sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==",
+ "cpu": [
+ "riscv64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/linux-s390x": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.1.tgz",
+ "integrity": "sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==",
+ "cpu": [
+ "s390x"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/linux-x64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.1.tgz",
+ "integrity": "sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/netbsd-x64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.1.tgz",
+ "integrity": "sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "netbsd"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/openbsd-x64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.1.tgz",
+ "integrity": "sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "openbsd"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/sunos-x64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.1.tgz",
+ "integrity": "sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "sunos"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/win32-arm64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.1.tgz",
+ "integrity": "sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/win32-ia32": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.1.tgz",
+ "integrity": "sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/@esbuild/win32-x64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.1.tgz",
+ "integrity": "sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/commander": {
+ "version": "12.1.0",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz",
+ "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==",
+ "dev": true,
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/esbuild": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.1.tgz",
+ "integrity": "sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==",
+ "dev": true,
+ "hasInstallScript": true,
+ "bin": {
+ "esbuild": "bin/esbuild"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "optionalDependencies": {
+ "@esbuild/aix-ppc64": "0.23.1",
+ "@esbuild/android-arm": "0.23.1",
+ "@esbuild/android-arm64": "0.23.1",
+ "@esbuild/android-x64": "0.23.1",
+ "@esbuild/darwin-arm64": "0.23.1",
+ "@esbuild/darwin-x64": "0.23.1",
+ "@esbuild/freebsd-arm64": "0.23.1",
+ "@esbuild/freebsd-x64": "0.23.1",
+ "@esbuild/linux-arm": "0.23.1",
+ "@esbuild/linux-arm64": "0.23.1",
+ "@esbuild/linux-ia32": "0.23.1",
+ "@esbuild/linux-loong64": "0.23.1",
+ "@esbuild/linux-mips64el": "0.23.1",
+ "@esbuild/linux-ppc64": "0.23.1",
+ "@esbuild/linux-riscv64": "0.23.1",
+ "@esbuild/linux-s390x": "0.23.1",
+ "@esbuild/linux-x64": "0.23.1",
+ "@esbuild/netbsd-x64": "0.23.1",
+ "@esbuild/openbsd-arm64": "0.23.1",
+ "@esbuild/openbsd-x64": "0.23.1",
+ "@esbuild/sunos-x64": "0.23.1",
+ "@esbuild/win32-arm64": "0.23.1",
+ "@esbuild/win32-ia32": "0.23.1",
+ "@esbuild/win32-x64": "0.23.1"
+ }
+ },
+ "node_modules/i18next-parser/node_modules/lilconfig": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.2.tgz",
+ "integrity": "sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==",
+ "dev": true,
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/antonk52"
+ }
+ },
"node_modules/i18next-subliminal": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/i18next-subliminal/-/i18next-subliminal-1.0.0.tgz",
@@ -9403,6 +10212,15 @@
"url": "https://github.com/sponsors/ljharb"
}
},
+ "node_modules/is-negated-glob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz",
+ "integrity": "sha512-czXVVn/QEmgvej1f50BZ648vUI+em0xqMq2Sn+QncCLN4zj1UAxlT+kw/6ggQTOaZPd1HqKQGEqbpQVtJucWug==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/is-number": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
@@ -9435,6 +10253,18 @@
"node": ">=8"
}
},
+ "node_modules/is-plain-obj": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz",
+ "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==",
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/is-potential-custom-element-name": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz",
@@ -9587,6 +10417,15 @@
"tslib": "^2.0.3"
}
},
+ "node_modules/is-valid-glob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz",
+ "integrity": "sha512-AhiROmoEFDSsjx8hW+5sGwgKVIORcXnrlAx/R0ZSeaPw70Vw0CqkGBBhHGL58Uox2eXnU1AnvXJl1XlyedO5bA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/is-weakmap": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz",
@@ -9991,6 +10830,15 @@
"node": "> 0.8"
}
},
+ "node_modules/lead": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/lead/-/lead-4.0.0.tgz",
+ "integrity": "sha512-DpMa59o5uGUWWjruMp71e6knmwKU3jRBBn1kjuLWN9EeIOxNeSAwvHf03WIl8g/ZMR2oSQC9ej3yeLBwdDc/pg==",
+ "dev": true,
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
"node_modules/levn": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
@@ -10318,6 +11166,41 @@
"integrity": "sha512-CkYQrPYZfWnu/DAmVCpTSX/xHpKZ80eKh2lAkyA6AJTef6bW+6JpbQZN5rofum7da+SyN1bi5ctTm+lTfcCW3g==",
"dev": true
},
+ "node_modules/matcher-collection": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/matcher-collection/-/matcher-collection-2.0.1.tgz",
+ "integrity": "sha512-daE62nS2ZQsDg9raM0IlZzLmI2u+7ZapXBwdoeBUKAYERPDDIc0qNqA8E0Rp2D+gspKR7BgIFP52GeujaGXWeQ==",
+ "dev": true,
+ "dependencies": {
+ "@types/minimatch": "^3.0.3",
+ "minimatch": "^3.0.2"
+ },
+ "engines": {
+ "node": "6.* || 8.* || >= 10.*"
+ }
+ },
+ "node_modules/matcher-collection/node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dev": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/matcher-collection/node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "dev": true,
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
"node_modules/merge-stream": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
@@ -10450,6 +11333,15 @@
"url": "https://github.com/sponsors/isaacs"
}
},
+ "node_modules/mktemp": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/mktemp/-/mktemp-0.4.0.tgz",
+ "integrity": "sha512-IXnMcJ6ZyTuhRmJSjzvHSRhlVPiN9Jwc6e59V0bEJ0ba6OBeX2L0E+mRN1QseeOF4mM+F1Rit6Nh7o+rl2Yn/A==",
+ "dev": true,
+ "engines": {
+ "node": ">0.9"
+ }
+ },
"node_modules/ms": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
@@ -10606,6 +11498,18 @@
"node": ">=0.10.0"
}
},
+ "node_modules/now-and-later": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/now-and-later/-/now-and-later-3.0.0.tgz",
+ "integrity": "sha512-pGO4pzSdaxhWTGkfSfHx3hVzJVslFPwBp2Myq9MYN/ChfJZF87ochMAXnvz6/58RJSf5ik2q9tXprBBrk2cpcg==",
+ "dev": true,
+ "dependencies": {
+ "once": "^1.4.0"
+ },
+ "engines": {
+ "node": ">= 10.13.0"
+ }
+ },
"node_modules/npm-run-path": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
@@ -10930,6 +11834,18 @@
"url": "https://github.com/inikulin/parse5?sponsor=1"
}
},
+ "node_modules/parse5-parser-stream": {
+ "version": "7.1.2",
+ "resolved": "https://registry.npmjs.org/parse5-parser-stream/-/parse5-parser-stream-7.1.2.tgz",
+ "integrity": "sha512-JyeQc9iwFLn5TbvvqACIF/VXG6abODeB3Fwmv/TGdLk2LfbWkaySGY72at4+Ty7EkPZj854u4CrICqNk2qIbow==",
+ "dev": true,
+ "dependencies": {
+ "parse5": "^7.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/inikulin/parse5?sponsor=1"
+ }
+ },
"node_modules/pascal-case": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz",
@@ -10987,6 +11903,12 @@
"integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
"dev": true
},
+ "node_modules/path-posix": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/path-posix/-/path-posix-1.0.0.tgz",
+ "integrity": "sha512-1gJ0WpNIiYcQydgg3Ed8KzvIqTsDpNwq+cjBCssvBtuTWjEqY1AW+i+OepiEMqDCzyro9B2sLAe4RBPajMYFiA==",
+ "dev": true
+ },
"node_modules/path-root": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz",
@@ -11463,6 +12385,12 @@
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
+ "node_modules/process-nextick-args": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
+ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
+ "dev": true
+ },
"node_modules/process.argv": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/process.argv/-/process.argv-0.6.1.tgz",
@@ -11481,6 +12409,15 @@
"asap": "~2.0.3"
}
},
+ "node_modules/promise-map-series": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/promise-map-series/-/promise-map-series-0.3.0.tgz",
+ "integrity": "sha512-3npG2NGhTc8BWBolLLf8l/92OxMGaRLbqvIh9wjCHhDXNvk4zsxaTaCpiCunW09qWPrN2zeNSNwRLVBrQQtutA==",
+ "dev": true,
+ "engines": {
+ "node": "10.* || >= 12.*"
+ }
+ },
"node_modules/proto-list": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz",
@@ -11574,6 +12511,36 @@
}
]
},
+ "node_modules/queue-tick": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz",
+ "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==",
+ "dev": true
+ },
+ "node_modules/quick-temp": {
+ "version": "0.1.8",
+ "resolved": "https://registry.npmjs.org/quick-temp/-/quick-temp-0.1.8.tgz",
+ "integrity": "sha512-YsmIFfD9j2zaFwJkzI6eMG7y0lQP7YeWzgtFgNl38pGWZBSXJooZbOWwkcRot7Vt0Fg9L23pX0tqWU3VvLDsiA==",
+ "dev": true,
+ "dependencies": {
+ "mktemp": "~0.4.0",
+ "rimraf": "^2.5.4",
+ "underscore.string": "~3.3.4"
+ }
+ },
+ "node_modules/quick-temp/node_modules/rimraf": {
+ "version": "2.7.1",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz",
+ "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==",
+ "deprecated": "Rimraf versions prior to v4 are no longer supported",
+ "dev": true,
+ "dependencies": {
+ "glob": "^7.1.3"
+ },
+ "bin": {
+ "rimraf": "bin.js"
+ }
+ },
"node_modules/rdotjson": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/rdotjson/-/rdotjson-1.0.4.tgz",
@@ -11683,6 +12650,15 @@
"integrity": "sha512-O3vsMYfWighyFbTd8hk8VaSj9UAGENxAtX+//ugIst2RMk5e03h6RoIS+0ylsFxY1gvmPuAY/PO4It+gPEeySA==",
"dev": true
},
+ "node_modules/replace-ext": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz",
+ "integrity": "sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug==",
+ "dev": true,
+ "engines": {
+ "node": ">= 10"
+ }
+ },
"node_modules/replace-in-file": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/replace-in-file/-/replace-in-file-7.2.0.tgz",
@@ -11787,6 +12763,18 @@
"node": ">=8"
}
},
+ "node_modules/resolve-options": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-options/-/resolve-options-2.0.0.tgz",
+ "integrity": "sha512-/FopbmmFOQCfsCx77BRFdKOniglTiHumLgwvd6IDPihy1GKkadZbgQJBcTb2lMzSR1pndzd96b1nZrreZ7+9/A==",
+ "dev": true,
+ "dependencies": {
+ "value-or-function": "^4.0.0"
+ },
+ "engines": {
+ "node": ">= 10.13.0"
+ }
+ },
"node_modules/restore-cursor": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
@@ -11864,6 +12852,15 @@
"integrity": "sha512-TrEMa7JGdVm0UThDJSx7ddw5nVm3UJS9o9CCIZ72B1vSyEZoziDqBYP3XIoi/12lKrJR8rE3jeFHMok2F/Mnsg==",
"dev": true
},
+ "node_modules/rsvp": {
+ "version": "4.8.5",
+ "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz",
+ "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==",
+ "dev": true,
+ "engines": {
+ "node": "6.* || >= 7.*"
+ }
+ },
"node_modules/run-async": {
"version": "2.4.1",
"resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz",
@@ -12119,6 +13116,21 @@
"tslib": "^2.0.3"
}
},
+ "node_modules/sort-keys": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-5.1.0.tgz",
+ "integrity": "sha512-aSbHV0DaBcr7u0PVHXzM6NbZNAtrr9sF6+Qfs9UUVG7Ll3jQ6hHi8F/xqIIcn2rvIVbr0v/2zyjSdwSV47AgLQ==",
+ "dev": true,
+ "dependencies": {
+ "is-plain-obj": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/source-map-js": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz",
@@ -12154,6 +13166,12 @@
"tslib": "^2.0.3"
}
},
+ "node_modules/sprintf-js": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz",
+ "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==",
+ "dev": true
+ },
"node_modules/sshpk": {
"version": "1.17.0",
"resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz",
@@ -12235,6 +13253,15 @@
"duplexer": "~0.1.1"
}
},
+ "node_modules/stream-composer": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/stream-composer/-/stream-composer-1.0.2.tgz",
+ "integrity": "sha512-bnBselmwfX5K10AH6L4c8+S5lgZMWI7ZYrz2rvYjCPB2DIMC4Ig8OpxGpNJSxRZ58oti7y1IcNvjBAz9vW5m4w==",
+ "dev": true,
+ "dependencies": {
+ "streamx": "^2.13.2"
+ }
+ },
"node_modules/streamsearch": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz",
@@ -12244,6 +13271,20 @@
"node": ">=10.0.0"
}
},
+ "node_modules/streamx": {
+ "version": "2.20.1",
+ "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.20.1.tgz",
+ "integrity": "sha512-uTa0mU6WUC65iUvzKH4X9hEdvSW7rbPxPtwfWiLMSj3qTdQbAiUboZTxauKfpFuGIGa1C2BYijZ7wgdUXICJhA==",
+ "dev": true,
+ "dependencies": {
+ "fast-fifo": "^1.3.2",
+ "queue-tick": "^1.0.1",
+ "text-decoder": "^1.1.0"
+ },
+ "optionalDependencies": {
+ "bare-events": "^2.2.0"
+ }
+ },
"node_modules/string_decoder": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
@@ -12483,6 +13524,12 @@
"integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==",
"dev": true
},
+ "node_modules/symlink-or-copy": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/symlink-or-copy/-/symlink-or-copy-1.3.1.tgz",
+ "integrity": "sha512-0K91MEXFpBUaywiwSSkmKjnGcasG/rVBXFLJz5DrgGabpYD6N+3yZrfD6uUIfpuTu65DZLHi7N8CizHc07BPZA==",
+ "dev": true
+ },
"node_modules/synckit": {
"version": "0.8.8",
"resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.8.tgz",
@@ -12578,6 +13625,24 @@
"node": ">=4"
}
},
+ "node_modules/teex": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/teex/-/teex-1.0.1.tgz",
+ "integrity": "sha512-eYE6iEI62Ni1H8oIa7KlDU6uQBtqr4Eajni3wX7rpfXD8ysFx8z0+dri+KWEPWpBsxXfxu58x/0jvTVT1ekOSg==",
+ "dev": true,
+ "dependencies": {
+ "streamx": "^2.12.5"
+ }
+ },
+ "node_modules/text-decoder": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.0.tgz",
+ "integrity": "sha512-n1yg1mOj9DNpk3NeZOx7T6jchTbyJS3i3cucbNN6FcdPriMZx7NsgrGpWWdWZZGxD7ES1XB+3uoqHMgOKaN+fg==",
+ "dev": true,
+ "dependencies": {
+ "b4a": "^1.6.4"
+ }
+ },
"node_modules/text-table": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
@@ -12615,6 +13680,46 @@
"resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
"integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg=="
},
+ "node_modules/through2": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
+ "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
+ "dev": true,
+ "dependencies": {
+ "readable-stream": "~2.3.6",
+ "xtend": "~4.0.1"
+ }
+ },
+ "node_modules/through2/node_modules/isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==",
+ "dev": true
+ },
+ "node_modules/through2/node_modules/readable-stream": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
+ "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
+ "dev": true,
+ "dependencies": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.3",
+ "isarray": "~1.0.0",
+ "process-nextick-args": "~2.0.0",
+ "safe-buffer": "~5.1.1",
+ "string_decoder": "~1.1.1",
+ "util-deprecate": "~1.0.1"
+ }
+ },
+ "node_modules/through2/node_modules/string_decoder": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
+ "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+ "dev": true,
+ "dependencies": {
+ "safe-buffer": "~5.1.0"
+ }
+ },
"node_modules/tinybench": {
"version": "2.8.0",
"resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.8.0.tgz",
@@ -12699,6 +13804,18 @@
"node": ">=8.0"
}
},
+ "node_modules/to-through": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/to-through/-/to-through-3.0.0.tgz",
+ "integrity": "sha512-y8MN937s/HVhEoBU1SxfHC+wxCHkV1a9gW8eAdTadYh/bGyesZIVcbjI+mSpFbSVwQici/XjBjuUyri1dnXwBw==",
+ "dev": true,
+ "dependencies": {
+ "streamx": "^2.12.5"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
"node_modules/tough-cookie": {
"version": "4.1.4",
"resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.4.tgz",
@@ -12846,6 +13963,28 @@
"node": ">=0.10.0"
}
},
+ "node_modules/underscore.string": {
+ "version": "3.3.6",
+ "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.6.tgz",
+ "integrity": "sha512-VoC83HWXmCrF6rgkyxS9GHv8W9Q5nhMKho+OadDJGzL2oDYbYEppBaCMH6pFlwLeqj2QS+hhkw2kpXkSdD1JxQ==",
+ "dev": true,
+ "dependencies": {
+ "sprintf-js": "^1.1.1",
+ "util-deprecate": "^1.0.2"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/undici": {
+ "version": "6.19.8",
+ "resolved": "https://registry.npmjs.org/undici/-/undici-6.19.8.tgz",
+ "integrity": "sha512-U8uCCl2x9TK3WANvmBavymRzxbfFYG+tAu+fgx3zxQy3qdagQqBLwJVrdyO1TBfUXvfKveMKJZhpvUYoOjM+4g==",
+ "dev": true,
+ "engines": {
+ "node": ">=18.17"
+ }
+ },
"node_modules/undici-types": {
"version": "5.26.5",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz",
@@ -12979,6 +14118,15 @@
"uuid": "dist/bin/uuid"
}
},
+ "node_modules/value-or-function": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/value-or-function/-/value-or-function-4.0.0.tgz",
+ "integrity": "sha512-aeVK81SIuT6aMJfNo9Vte8Dw0/FZINGBV8BfCraGtqVxIeLAEhJyoWs8SmvRVmXfGss2PmmOwZCuBPbZR+IYWg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 10.13.0"
+ }
+ },
"node_modules/value-or-promise": {
"version": "1.0.12",
"resolved": "https://registry.npmjs.org/value-or-promise/-/value-or-promise-1.0.12.tgz",
@@ -13006,6 +14154,121 @@
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
"integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ=="
},
+ "node_modules/vinyl": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-3.0.0.tgz",
+ "integrity": "sha512-rC2VRfAVVCGEgjnxHUnpIVh3AGuk62rP3tqVrn+yab0YH7UULisC085+NYH+mnqf3Wx4SpSi1RQMwudL89N03g==",
+ "dev": true,
+ "dependencies": {
+ "clone": "^2.1.2",
+ "clone-stats": "^1.0.0",
+ "remove-trailing-separator": "^1.1.0",
+ "replace-ext": "^2.0.0",
+ "teex": "^1.0.1"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
+ "node_modules/vinyl-contents": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/vinyl-contents/-/vinyl-contents-2.0.0.tgz",
+ "integrity": "sha512-cHq6NnGyi2pZ7xwdHSW1v4Jfnho4TEGtxZHw01cmnc8+i7jgR6bRnED/LbrKan/Q7CvVLbnvA5OepnhbpjBZ5Q==",
+ "dev": true,
+ "dependencies": {
+ "bl": "^5.0.0",
+ "vinyl": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
+ "node_modules/vinyl-contents/node_modules/bl": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/bl/-/bl-5.1.0.tgz",
+ "integrity": "sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ==",
+ "dev": true,
+ "dependencies": {
+ "buffer": "^6.0.3",
+ "inherits": "^2.0.4",
+ "readable-stream": "^3.4.0"
+ }
+ },
+ "node_modules/vinyl-contents/node_modules/buffer": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz",
+ "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "dependencies": {
+ "base64-js": "^1.3.1",
+ "ieee754": "^1.2.1"
+ }
+ },
+ "node_modules/vinyl-fs": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-4.0.0.tgz",
+ "integrity": "sha512-7GbgBnYfaquMk3Qu9g22x000vbYkOex32930rBnc3qByw6HfMEAoELjCjoJv4HuEQxHAurT+nvMHm6MnJllFLw==",
+ "dev": true,
+ "dependencies": {
+ "fs-mkdirp-stream": "^2.0.1",
+ "glob-stream": "^8.0.0",
+ "graceful-fs": "^4.2.11",
+ "iconv-lite": "^0.6.3",
+ "is-valid-glob": "^1.0.0",
+ "lead": "^4.0.0",
+ "normalize-path": "3.0.0",
+ "resolve-options": "^2.0.0",
+ "stream-composer": "^1.0.2",
+ "streamx": "^2.14.0",
+ "to-through": "^3.0.0",
+ "value-or-function": "^4.0.0",
+ "vinyl": "^3.0.0",
+ "vinyl-sourcemap": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
+ "node_modules/vinyl-sourcemap": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/vinyl-sourcemap/-/vinyl-sourcemap-2.0.0.tgz",
+ "integrity": "sha512-BAEvWxbBUXvlNoFQVFVHpybBbjW1r03WhohJzJDSfgrrK5xVYIDTan6xN14DlyImShgDRv2gl9qhM6irVMsV0Q==",
+ "dev": true,
+ "dependencies": {
+ "convert-source-map": "^2.0.0",
+ "graceful-fs": "^4.2.10",
+ "now-and-later": "^3.0.0",
+ "streamx": "^2.12.5",
+ "vinyl": "^3.0.0",
+ "vinyl-contents": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
+ "node_modules/vinyl/node_modules/clone": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz",
+ "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.8"
+ }
+ },
"node_modules/vite": {
"version": "4.5.3",
"resolved": "https://registry.npmjs.org/vite/-/vite-4.5.3.tgz",
@@ -14479,6 +15742,43 @@
"node": ">=12.0.0"
}
},
+ "node_modules/walk-sync": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/walk-sync/-/walk-sync-2.2.0.tgz",
+ "integrity": "sha512-IC8sL7aB4/ZgFcGI2T1LczZeFWZ06b3zoHH7jBPyHxOtIIz1jppWHjjEXkOFvFojBVAK9pV7g47xOZ4LW3QLfg==",
+ "dev": true,
+ "dependencies": {
+ "@types/minimatch": "^3.0.3",
+ "ensure-posix-path": "^1.1.0",
+ "matcher-collection": "^2.0.0",
+ "minimatch": "^3.0.4"
+ },
+ "engines": {
+ "node": "8.* || >= 10.*"
+ }
+ },
+ "node_modules/walk-sync/node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dev": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/walk-sync/node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "dev": true,
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
"node_modules/wcwidth": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz",
@@ -14784,6 +16084,15 @@
"integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==",
"dev": true
},
+ "node_modules/xtend": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
+ "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.4"
+ }
+ },
"node_modules/y18n": {
"version": "5.0.8",
"resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
@@ -15848,6 +17157,13 @@
"dev": true,
"optional": true
},
+ "@esbuild/openbsd-arm64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.1.tgz",
+ "integrity": "sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==",
+ "dev": true,
+ "optional": true
+ },
"@esbuild/openbsd-x64": {
"version": "0.18.20",
"resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz",
@@ -16700,6 +18016,15 @@
"integrity": "sha512-mB9oAsNCm9aM3/SOv4YtBMqZbYj10R7dkq8byBqxGY/ncFwhf2oQzMV+LCRlWoDSEBJ3COiR1yeDvMtsoOsuFQ==",
"dev": true
},
+ "@gulpjs/to-absolute-glob": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@gulpjs/to-absolute-glob/-/to-absolute-glob-4.0.0.tgz",
+ "integrity": "sha512-kjotm7XJrJ6v+7knhPaRgaT6q8F8K2jiafwYdNHLzmV0uGLuZY43FK6smNSHUPrhq5kX2slCUy+RGG/xGqmIKA==",
+ "dev": true,
+ "requires": {
+ "is-negated-glob": "^1.0.0"
+ }
+ },
"@hapi/hoek": {
"version": "9.3.0",
"resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz",
@@ -17843,6 +19168,12 @@
"integrity": "sha512-OpXEVoCKSS3lQqjx9GGGOapBeuW5eUboYHRlHP9urXPX25IKZ6AnP5ZRxtVf63iieUbsHxLn8NQ5Nlftc6yzAA==",
"dev": true
},
+ "@types/minimatch": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz",
+ "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==",
+ "dev": true
+ },
"@types/node": {
"version": "20.14.10",
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.10.tgz",
@@ -17862,6 +19193,12 @@
"resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz",
"integrity": "sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ=="
},
+ "@types/symlink-or-copy": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/@types/symlink-or-copy/-/symlink-or-copy-1.2.2.tgz",
+ "integrity": "sha512-MQ1AnmTLOncwEf9IVU+B2e4Hchrku5N67NkgcAHW0p3sdzPe0FNMANxEm6OJUzPniEQGkeT3OROLlCwZJLWFZA==",
+ "dev": true
+ },
"@types/tough-cookie": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.2.tgz",
@@ -18734,6 +20071,12 @@
"proxy-from-env": "^1.1.0"
}
},
+ "b4a": {
+ "version": "1.6.6",
+ "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.6.tgz",
+ "integrity": "sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==",
+ "dev": true
+ },
"babel-plugin-syntax-trailing-function-commas": {
"version": "7.0.0-beta.0",
"resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz",
@@ -18780,6 +20123,13 @@
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
},
+ "bare-events": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.4.2.tgz",
+ "integrity": "sha512-qMKFd2qG/36aA4GwvKq8MxnPgCQAmBWmSyLWsJcbn8v03wvIPQ/hG1Ms8bPzndZxMDoHpxez5VOS+gC9Yi24/Q==",
+ "dev": true,
+ "optional": true
+ },
"base64-js": {
"version": "1.5.1",
"resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
@@ -18844,6 +20194,72 @@
"fill-range": "^7.0.1"
}
},
+ "broccoli-node-api": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/broccoli-node-api/-/broccoli-node-api-1.7.0.tgz",
+ "integrity": "sha512-QIqLSVJWJUVOhclmkmypJJH9u9s/aWH4+FH6Q6Ju5l+Io4dtwqdPUNmDfw40o6sxhbZHhqGujDJuHTML1wG8Yw==",
+ "dev": true
+ },
+ "broccoli-node-info": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/broccoli-node-info/-/broccoli-node-info-2.2.0.tgz",
+ "integrity": "sha512-VabSGRpKIzpmC+r+tJueCE5h8k6vON7EIMMWu6d/FyPdtijwLQ7QvzShEw+m3mHoDzUaj/kiZsDYrS8X2adsBg==",
+ "dev": true
+ },
+ "broccoli-output-wrapper": {
+ "version": "3.2.5",
+ "resolved": "https://registry.npmjs.org/broccoli-output-wrapper/-/broccoli-output-wrapper-3.2.5.tgz",
+ "integrity": "sha512-bQAtwjSrF4Nu0CK0JOy5OZqw9t5U0zzv2555EA/cF8/a8SLDTIetk9UgrtMVw7qKLKdSpOZ2liZNeZZDaKgayw==",
+ "dev": true,
+ "requires": {
+ "fs-extra": "^8.1.0",
+ "heimdalljs-logger": "^0.1.10",
+ "symlink-or-copy": "^1.2.0"
+ },
+ "dependencies": {
+ "fs-extra": {
+ "version": "8.1.0",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
+ "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.2.0",
+ "jsonfile": "^4.0.0",
+ "universalify": "^0.1.0"
+ }
+ },
+ "jsonfile": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
+ "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.6"
+ }
+ },
+ "universalify": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
+ "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
+ "dev": true
+ }
+ }
+ },
+ "broccoli-plugin": {
+ "version": "4.0.7",
+ "resolved": "https://registry.npmjs.org/broccoli-plugin/-/broccoli-plugin-4.0.7.tgz",
+ "integrity": "sha512-a4zUsWtA1uns1K7p9rExYVYG99rdKeGRymW0qOCNkvDPHQxVi3yVyJHhQbM3EZwdt2E0mnhr5e0c/bPpJ7p3Wg==",
+ "dev": true,
+ "requires": {
+ "broccoli-node-api": "^1.7.0",
+ "broccoli-output-wrapper": "^3.2.5",
+ "fs-merger": "^3.2.1",
+ "promise-map-series": "^0.3.0",
+ "quick-temp": "^0.1.8",
+ "rimraf": "^3.0.2",
+ "symlink-or-copy": "^1.3.1"
+ }
+ },
"browserslist": {
"version": "4.23.2",
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.2.tgz",
@@ -19050,18 +20466,22 @@
"integrity": "sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA=="
},
"cheerio": {
- "version": "1.0.0-rc.12",
- "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz",
- "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==",
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0.tgz",
+ "integrity": "sha512-quS9HgjQpdaXOvsZz82Oz7uxtXiy6UIsIQcpBj7HRw2M63Skasm9qlDocAM7jNuaxdhpPU7c4kJN+gA5MCu4ww==",
"dev": true,
"requires": {
"cheerio-select": "^2.1.0",
"dom-serializer": "^2.0.0",
"domhandler": "^5.0.3",
- "domutils": "^3.0.1",
- "htmlparser2": "^8.0.1",
- "parse5": "^7.0.0",
- "parse5-htmlparser2-tree-adapter": "^7.0.0"
+ "domutils": "^3.1.0",
+ "encoding-sniffer": "^0.2.0",
+ "htmlparser2": "^9.1.0",
+ "parse5": "^7.1.2",
+ "parse5-htmlparser2-tree-adapter": "^7.0.0",
+ "parse5-parser-stream": "^7.1.2",
+ "undici": "^6.19.5",
+ "whatwg-mimetype": "^4.0.0"
}
},
"cheerio-select": {
@@ -19159,6 +20579,12 @@
"integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==",
"dev": true
},
+ "clone-stats": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz",
+ "integrity": "sha512-au6ydSpg6nsrigcZ4m8Bc9hxjeW+GJ8xh5G3BJCMt4WXe1H10UNaVOamqQTmrx1kjVuxAHIQSNU6hY4Nsn9/ag==",
+ "dev": true
+ },
"color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
@@ -19273,6 +20699,12 @@
"integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
"dev": true
},
+ "core-util-is": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
+ "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==",
+ "dev": true
+ },
"cosmiconfig": {
"version": "8.2.0",
"resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz",
@@ -20132,6 +21564,16 @@
"iconv-lite": "^0.6.2"
}
},
+ "encoding-sniffer": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/encoding-sniffer/-/encoding-sniffer-0.2.0.tgz",
+ "integrity": "sha512-ju7Wq1kg04I3HtiYIOrUrdfdDvkyO9s5XM8QAj/bN61Yo/Vb4vgJxy5vi4Yxk01gWHbrofpPtpxM8bKger9jhg==",
+ "dev": true,
+ "requires": {
+ "iconv-lite": "^0.6.3",
+ "whatwg-encoding": "^3.1.1"
+ }
+ },
"end-of-stream": {
"version": "1.4.4",
"resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
@@ -20148,11 +21590,23 @@
"ansi-colors": "^4.1.1"
}
},
+ "ensure-posix-path": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/ensure-posix-path/-/ensure-posix-path-1.1.1.tgz",
+ "integrity": "sha512-VWU0/zXzVbeJNXvME/5EmLuEj2TauvoaTz6aFYK1Z92JCBlDlZ3Gu0tuGR42kpW1754ywTs+QB0g5TP0oj9Zaw==",
+ "dev": true
+ },
"entities": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
"integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw=="
},
+ "eol": {
+ "version": "0.9.1",
+ "resolved": "https://registry.npmjs.org/eol/-/eol-0.9.1.tgz",
+ "integrity": "sha512-Ds/TEoZjwggRoz/Q2O7SE3i4Jm66mqTDfmdHdq/7DKVk3bro9Q8h6WdXKdPqFLMoqxrDK5SVRzHVPOS6uuGtrg==",
+ "dev": true
+ },
"error-ex": {
"version": "1.3.2",
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
@@ -20582,6 +22036,12 @@
"integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==",
"dev": true
},
+ "fast-fifo": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz",
+ "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==",
+ "dev": true
+ },
"fast-glob": {
"version": "3.3.2",
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz",
@@ -20815,6 +22275,81 @@
"integrity": "sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==",
"dev": true
},
+ "fs-extra": {
+ "version": "11.2.0",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz",
+ "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.2.0",
+ "jsonfile": "^6.0.1",
+ "universalify": "^2.0.0"
+ }
+ },
+ "fs-merger": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/fs-merger/-/fs-merger-3.2.1.tgz",
+ "integrity": "sha512-AN6sX12liy0JE7C2evclwoo0aCG3PFulLjrTLsJpWh/2mM+DinhpSGqYLbHBBbIW1PLRNcFhJG8Axtz8mQW3ug==",
+ "dev": true,
+ "requires": {
+ "broccoli-node-api": "^1.7.0",
+ "broccoli-node-info": "^2.1.0",
+ "fs-extra": "^8.0.1",
+ "fs-tree-diff": "^2.0.1",
+ "walk-sync": "^2.2.0"
+ },
+ "dependencies": {
+ "fs-extra": {
+ "version": "8.1.0",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
+ "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.2.0",
+ "jsonfile": "^4.0.0",
+ "universalify": "^0.1.0"
+ }
+ },
+ "jsonfile": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
+ "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.6"
+ }
+ },
+ "universalify": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
+ "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
+ "dev": true
+ }
+ }
+ },
+ "fs-mkdirp-stream": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-2.0.1.tgz",
+ "integrity": "sha512-UTOY+59K6IA94tec8Wjqm0FSh5OVudGNB0NL/P6fB3HiE3bYOY3VYBGijsnOHNkQSwC1FKkU77pmq7xp9CskLw==",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.2.8",
+ "streamx": "^2.12.0"
+ }
+ },
+ "fs-tree-diff": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/fs-tree-diff/-/fs-tree-diff-2.0.1.tgz",
+ "integrity": "sha512-x+CfAZ/lJHQqwlD64pYM5QxWjzWhSjroaVsr8PW831zOApL55qPibed0c+xebaLWVr2BnHFoHdrwOv8pzt8R5A==",
+ "dev": true,
+ "requires": {
+ "@types/symlink-or-copy": "^1.2.0",
+ "heimdalljs-logger": "^0.1.7",
+ "object-assign": "^4.1.0",
+ "path-posix": "^1.0.0",
+ "symlink-or-copy": "^1.1.8"
+ }
+ },
"fs.realpath": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
@@ -20940,6 +22475,33 @@
"is-glob": "^4.0.1"
}
},
+ "glob-stream": {
+ "version": "8.0.2",
+ "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-8.0.2.tgz",
+ "integrity": "sha512-R8z6eTB55t3QeZMmU1C+Gv+t5UnNRkA55c5yo67fAVfxODxieTwsjNG7utxS/73NdP1NbDgCrhVEg2h00y4fFw==",
+ "dev": true,
+ "requires": {
+ "@gulpjs/to-absolute-glob": "^4.0.0",
+ "anymatch": "^3.1.3",
+ "fastq": "^1.13.0",
+ "glob-parent": "^6.0.2",
+ "is-glob": "^4.0.3",
+ "is-negated-glob": "^1.0.0",
+ "normalize-path": "^3.0.0",
+ "streamx": "^2.12.5"
+ },
+ "dependencies": {
+ "glob-parent": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
+ "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
+ "dev": true,
+ "requires": {
+ "is-glob": "^4.0.3"
+ }
+ }
+ }
+ },
"global-dirs": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz",
@@ -21073,6 +22635,15 @@
"integrity": "sha512-eiX7ES/ZQr0q7hSM5UBOEIFfaAUmAY9/CSDyAnsETuybByU7l/v46drRg9DQoTvVABEHp3QnrvwgTRMhqy7zxQ==",
"dev": true
},
+ "gulp-sort": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/gulp-sort/-/gulp-sort-2.0.0.tgz",
+ "integrity": "sha512-MyTel3FXOdh1qhw1yKhpimQrAmur9q1X0ZigLmCOxouQD+BD3za9/89O+HfbgBQvvh4igEbp0/PUWO+VqGYG1g==",
+ "dev": true,
+ "requires": {
+ "through2": "^2.0.1"
+ }
+ },
"has": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
@@ -21131,6 +22702,50 @@
"tslib": "^2.0.3"
}
},
+ "heimdalljs": {
+ "version": "0.2.6",
+ "resolved": "https://registry.npmjs.org/heimdalljs/-/heimdalljs-0.2.6.tgz",
+ "integrity": "sha512-o9bd30+5vLBvBtzCPwwGqpry2+n0Hi6H1+qwt6y+0kwRHGGF8TFIhJPmnuM0xO97zaKrDZMwO/V56fAnn8m/tA==",
+ "dev": true,
+ "requires": {
+ "rsvp": "~3.2.1"
+ },
+ "dependencies": {
+ "rsvp": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-3.2.1.tgz",
+ "integrity": "sha512-Rf4YVNYpKjZ6ASAmibcwTNciQ5Co5Ztq6iZPEykHpkoflnD/K5ryE/rHehFsTm4NJj8nKDhbi3eKBWGogmNnkg==",
+ "dev": true
+ }
+ }
+ },
+ "heimdalljs-logger": {
+ "version": "0.1.10",
+ "resolved": "https://registry.npmjs.org/heimdalljs-logger/-/heimdalljs-logger-0.1.10.tgz",
+ "integrity": "sha512-pO++cJbhIufVI/fmB/u2Yty3KJD0TqNPecehFae0/eps0hkZ3b4Zc/PezUMOpYuHFQbA7FxHZxa305EhmjLj4g==",
+ "dev": true,
+ "requires": {
+ "debug": "^2.2.0",
+ "heimdalljs": "^0.2.6"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
+ "requires": {
+ "ms": "2.0.0"
+ }
+ },
+ "ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "dev": true
+ }
+ }
+ },
"html-encoding-sniffer": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz",
@@ -21141,15 +22756,15 @@
}
},
"htmlparser2": {
- "version": "8.0.2",
- "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz",
- "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==",
+ "version": "9.1.0",
+ "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-9.1.0.tgz",
+ "integrity": "sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==",
"dev": true,
"requires": {
"domelementtype": "^2.3.0",
"domhandler": "^5.0.3",
- "domutils": "^3.0.1",
- "entities": "^4.4.0"
+ "domutils": "^3.1.0",
+ "entities": "^4.5.0"
}
},
"http-proxy-agent": {
@@ -21225,6 +22840,238 @@
}
}
},
+ "i18next-parser": {
+ "version": "9.0.2",
+ "resolved": "https://registry.npmjs.org/i18next-parser/-/i18next-parser-9.0.2.tgz",
+ "integrity": "sha512-Q1yTZljBp1DcVAQD7LxduEqFRpjIeZc+5VnQ+gU8qG9WvY3U5rqK0IVONRWNtngh3orb197bfy1Sz4wlwcplxg==",
+ "dev": true,
+ "requires": {
+ "@babel/runtime": "^7.23.2",
+ "broccoli-plugin": "^4.0.7",
+ "cheerio": "^1.0.0",
+ "colors": "1.4.0",
+ "commander": "~12.1.0",
+ "eol": "^0.9.1",
+ "esbuild": "^0.23.0",
+ "fs-extra": "^11.1.0",
+ "gulp-sort": "^2.0.0",
+ "i18next": "^23.5.1",
+ "js-yaml": "4.1.0",
+ "lilconfig": "^3.0.0",
+ "rsvp": "^4.8.2",
+ "sort-keys": "^5.0.0",
+ "typescript": "^5.0.4",
+ "vinyl": "~3.0.0",
+ "vinyl-fs": "^4.0.0"
+ },
+ "dependencies": {
+ "@esbuild/aix-ppc64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.23.1.tgz",
+ "integrity": "sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/android-arm": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.23.1.tgz",
+ "integrity": "sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/android-arm64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.23.1.tgz",
+ "integrity": "sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/android-x64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.23.1.tgz",
+ "integrity": "sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/darwin-arm64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.23.1.tgz",
+ "integrity": "sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/darwin-x64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.23.1.tgz",
+ "integrity": "sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/freebsd-arm64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.1.tgz",
+ "integrity": "sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/freebsd-x64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.23.1.tgz",
+ "integrity": "sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-arm": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.23.1.tgz",
+ "integrity": "sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-arm64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.23.1.tgz",
+ "integrity": "sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-ia32": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.23.1.tgz",
+ "integrity": "sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-loong64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.23.1.tgz",
+ "integrity": "sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-mips64el": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.23.1.tgz",
+ "integrity": "sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-ppc64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.23.1.tgz",
+ "integrity": "sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-riscv64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.23.1.tgz",
+ "integrity": "sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-s390x": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.23.1.tgz",
+ "integrity": "sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-x64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.1.tgz",
+ "integrity": "sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/netbsd-x64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.23.1.tgz",
+ "integrity": "sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/openbsd-x64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.23.1.tgz",
+ "integrity": "sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/sunos-x64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.23.1.tgz",
+ "integrity": "sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/win32-arm64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.23.1.tgz",
+ "integrity": "sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/win32-ia32": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.23.1.tgz",
+ "integrity": "sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/win32-x64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.23.1.tgz",
+ "integrity": "sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==",
+ "dev": true,
+ "optional": true
+ },
+ "commander": {
+ "version": "12.1.0",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz",
+ "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==",
+ "dev": true
+ },
+ "esbuild": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.1.tgz",
+ "integrity": "sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==",
+ "dev": true,
+ "requires": {
+ "@esbuild/aix-ppc64": "0.23.1",
+ "@esbuild/android-arm": "0.23.1",
+ "@esbuild/android-arm64": "0.23.1",
+ "@esbuild/android-x64": "0.23.1",
+ "@esbuild/darwin-arm64": "0.23.1",
+ "@esbuild/darwin-x64": "0.23.1",
+ "@esbuild/freebsd-arm64": "0.23.1",
+ "@esbuild/freebsd-x64": "0.23.1",
+ "@esbuild/linux-arm": "0.23.1",
+ "@esbuild/linux-arm64": "0.23.1",
+ "@esbuild/linux-ia32": "0.23.1",
+ "@esbuild/linux-loong64": "0.23.1",
+ "@esbuild/linux-mips64el": "0.23.1",
+ "@esbuild/linux-ppc64": "0.23.1",
+ "@esbuild/linux-riscv64": "0.23.1",
+ "@esbuild/linux-s390x": "0.23.1",
+ "@esbuild/linux-x64": "0.23.1",
+ "@esbuild/netbsd-x64": "0.23.1",
+ "@esbuild/openbsd-arm64": "0.23.1",
+ "@esbuild/openbsd-x64": "0.23.1",
+ "@esbuild/sunos-x64": "0.23.1",
+ "@esbuild/win32-arm64": "0.23.1",
+ "@esbuild/win32-ia32": "0.23.1",
+ "@esbuild/win32-x64": "0.23.1"
+ }
+ },
+ "lilconfig": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.2.tgz",
+ "integrity": "sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==",
+ "dev": true
+ }
+ }
+ },
"i18next-subliminal": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/i18next-subliminal/-/i18next-subliminal-1.0.0.tgz",
@@ -21513,6 +23360,12 @@
"integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==",
"dev": true
},
+ "is-negated-glob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz",
+ "integrity": "sha512-czXVVn/QEmgvej1f50BZ648vUI+em0xqMq2Sn+QncCLN4zj1UAxlT+kw/6ggQTOaZPd1HqKQGEqbpQVtJucWug==",
+ "dev": true
+ },
"is-number": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
@@ -21533,6 +23386,12 @@
"resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz",
"integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ=="
},
+ "is-plain-obj": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz",
+ "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==",
+ "dev": true
+ },
"is-potential-custom-element-name": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz",
@@ -21637,6 +23496,12 @@
"tslib": "^2.0.3"
}
},
+ "is-valid-glob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz",
+ "integrity": "sha512-AhiROmoEFDSsjx8hW+5sGwgKVIORcXnrlAx/R0ZSeaPw70Vw0CqkGBBhHGL58Uox2eXnU1AnvXJl1XlyedO5bA==",
+ "dev": true
+ },
"is-weakmap": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz",
@@ -21932,6 +23797,12 @@
"resolved": "https://registry.npmjs.org/lazy-ass/-/lazy-ass-1.6.0.tgz",
"integrity": "sha512-cc8oEVoctTvsFZ/Oje/kGnHbpWHYBe8IAJe4C0QNc3t8uM/0Y8+erSz/7Y1ALuXTEZTMvxXwO6YbX1ey3ujiZw=="
},
+ "lead": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/lead/-/lead-4.0.0.tgz",
+ "integrity": "sha512-DpMa59o5uGUWWjruMp71e6knmwKU3jRBBn1kjuLWN9EeIOxNeSAwvHf03WIl8g/ZMR2oSQC9ej3yeLBwdDc/pg==",
+ "dev": true
+ },
"levn": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
@@ -22194,6 +24065,37 @@
"integrity": "sha512-CkYQrPYZfWnu/DAmVCpTSX/xHpKZ80eKh2lAkyA6AJTef6bW+6JpbQZN5rofum7da+SyN1bi5ctTm+lTfcCW3g==",
"dev": true
},
+ "matcher-collection": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/matcher-collection/-/matcher-collection-2.0.1.tgz",
+ "integrity": "sha512-daE62nS2ZQsDg9raM0IlZzLmI2u+7ZapXBwdoeBUKAYERPDDIc0qNqA8E0Rp2D+gspKR7BgIFP52GeujaGXWeQ==",
+ "dev": true,
+ "requires": {
+ "@types/minimatch": "^3.0.3",
+ "minimatch": "^3.0.2"
+ },
+ "dependencies": {
+ "brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dev": true,
+ "requires": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "dev": true,
+ "requires": {
+ "brace-expansion": "^1.1.7"
+ }
+ }
+ }
+ },
"merge-stream": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
@@ -22276,6 +24178,12 @@
"integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==",
"dev": true
},
+ "mktemp": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/mktemp/-/mktemp-0.4.0.tgz",
+ "integrity": "sha512-IXnMcJ6ZyTuhRmJSjzvHSRhlVPiN9Jwc6e59V0bEJ0ba6OBeX2L0E+mRN1QseeOF4mM+F1Rit6Nh7o+rl2Yn/A==",
+ "dev": true
+ },
"ms": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
@@ -22399,6 +24307,15 @@
"integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==",
"dev": true
},
+ "now-and-later": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/now-and-later/-/now-and-later-3.0.0.tgz",
+ "integrity": "sha512-pGO4pzSdaxhWTGkfSfHx3hVzJVslFPwBp2Myq9MYN/ChfJZF87ochMAXnvz6/58RJSf5ik2q9tXprBBrk2cpcg==",
+ "dev": true,
+ "requires": {
+ "once": "^1.4.0"
+ }
+ },
"npm-run-path": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
@@ -22636,6 +24553,15 @@
"parse5": "^7.0.0"
}
},
+ "parse5-parser-stream": {
+ "version": "7.1.2",
+ "resolved": "https://registry.npmjs.org/parse5-parser-stream/-/parse5-parser-stream-7.1.2.tgz",
+ "integrity": "sha512-JyeQc9iwFLn5TbvvqACIF/VXG6abODeB3Fwmv/TGdLk2LfbWkaySGY72at4+Ty7EkPZj854u4CrICqNk2qIbow==",
+ "dev": true,
+ "requires": {
+ "parse5": "^7.0.0"
+ }
+ },
"pascal-case": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz",
@@ -22684,6 +24610,12 @@
"integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
"dev": true
},
+ "path-posix": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/path-posix/-/path-posix-1.0.0.tgz",
+ "integrity": "sha512-1gJ0WpNIiYcQydgg3Ed8KzvIqTsDpNwq+cjBCssvBtuTWjEqY1AW+i+OepiEMqDCzyro9B2sLAe4RBPajMYFiA==",
+ "dev": true
+ },
"path-root": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz",
@@ -22931,6 +24863,12 @@
}
}
},
+ "process-nextick-args": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
+ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
+ "dev": true
+ },
"process.argv": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/process.argv/-/process.argv-0.6.1.tgz",
@@ -22949,6 +24887,12 @@
"asap": "~2.0.3"
}
},
+ "promise-map-series": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/promise-map-series/-/promise-map-series-0.3.0.tgz",
+ "integrity": "sha512-3npG2NGhTc8BWBolLLf8l/92OxMGaRLbqvIh9wjCHhDXNvk4zsxaTaCpiCunW09qWPrN2zeNSNwRLVBrQQtutA==",
+ "dev": true
+ },
"proto-list": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz",
@@ -23016,6 +24960,34 @@
"integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
"dev": true
},
+ "queue-tick": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz",
+ "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==",
+ "dev": true
+ },
+ "quick-temp": {
+ "version": "0.1.8",
+ "resolved": "https://registry.npmjs.org/quick-temp/-/quick-temp-0.1.8.tgz",
+ "integrity": "sha512-YsmIFfD9j2zaFwJkzI6eMG7y0lQP7YeWzgtFgNl38pGWZBSXJooZbOWwkcRot7Vt0Fg9L23pX0tqWU3VvLDsiA==",
+ "dev": true,
+ "requires": {
+ "mktemp": "~0.4.0",
+ "rimraf": "^2.5.4",
+ "underscore.string": "~3.3.4"
+ },
+ "dependencies": {
+ "rimraf": {
+ "version": "2.7.1",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz",
+ "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==",
+ "dev": true,
+ "requires": {
+ "glob": "^7.1.3"
+ }
+ }
+ }
+ },
"rdotjson": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/rdotjson/-/rdotjson-1.0.4.tgz",
@@ -23107,6 +25079,12 @@
"integrity": "sha512-O3vsMYfWighyFbTd8hk8VaSj9UAGENxAtX+//ugIst2RMk5e03h6RoIS+0ylsFxY1gvmPuAY/PO4It+gPEeySA==",
"dev": true
},
+ "replace-ext": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz",
+ "integrity": "sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug==",
+ "dev": true
+ },
"replace-in-file": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/replace-in-file/-/replace-in-file-7.2.0.tgz",
@@ -23185,6 +25163,15 @@
"integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
"dev": true
},
+ "resolve-options": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-options/-/resolve-options-2.0.0.tgz",
+ "integrity": "sha512-/FopbmmFOQCfsCx77BRFdKOniglTiHumLgwvd6IDPihy1GKkadZbgQJBcTb2lMzSR1pndzd96b1nZrreZ7+9/A==",
+ "dev": true,
+ "requires": {
+ "value-or-function": "^4.0.0"
+ }
+ },
"restore-cursor": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
@@ -23242,6 +25229,12 @@
"integrity": "sha512-TrEMa7JGdVm0UThDJSx7ddw5nVm3UJS9o9CCIZ72B1vSyEZoziDqBYP3XIoi/12lKrJR8rE3jeFHMok2F/Mnsg==",
"dev": true
},
+ "rsvp": {
+ "version": "4.8.5",
+ "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz",
+ "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==",
+ "dev": true
+ },
"run-async": {
"version": "2.4.1",
"resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz",
@@ -23424,6 +25417,15 @@
"tslib": "^2.0.3"
}
},
+ "sort-keys": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-5.1.0.tgz",
+ "integrity": "sha512-aSbHV0DaBcr7u0PVHXzM6NbZNAtrr9sF6+Qfs9UUVG7Ll3jQ6hHi8F/xqIIcn2rvIVbr0v/2zyjSdwSV47AgLQ==",
+ "dev": true,
+ "requires": {
+ "is-plain-obj": "^4.0.0"
+ }
+ },
"source-map-js": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz",
@@ -23453,6 +25455,12 @@
"tslib": "^2.0.3"
}
},
+ "sprintf-js": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz",
+ "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==",
+ "dev": true
+ },
"sshpk": {
"version": "1.17.0",
"resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz",
@@ -23515,12 +25523,33 @@
"duplexer": "~0.1.1"
}
},
+ "stream-composer": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/stream-composer/-/stream-composer-1.0.2.tgz",
+ "integrity": "sha512-bnBselmwfX5K10AH6L4c8+S5lgZMWI7ZYrz2rvYjCPB2DIMC4Ig8OpxGpNJSxRZ58oti7y1IcNvjBAz9vW5m4w==",
+ "dev": true,
+ "requires": {
+ "streamx": "^2.13.2"
+ }
+ },
"streamsearch": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz",
"integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==",
"dev": true
},
+ "streamx": {
+ "version": "2.20.1",
+ "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.20.1.tgz",
+ "integrity": "sha512-uTa0mU6WUC65iUvzKH4X9hEdvSW7rbPxPtwfWiLMSj3qTdQbAiUboZTxauKfpFuGIGa1C2BYijZ7wgdUXICJhA==",
+ "dev": true,
+ "requires": {
+ "bare-events": "^2.2.0",
+ "fast-fifo": "^1.3.2",
+ "queue-tick": "^1.0.1",
+ "text-decoder": "^1.1.0"
+ }
+ },
"string_decoder": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
@@ -23698,6 +25727,12 @@
"integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==",
"dev": true
},
+ "symlink-or-copy": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/symlink-or-copy/-/symlink-or-copy-1.3.1.tgz",
+ "integrity": "sha512-0K91MEXFpBUaywiwSSkmKjnGcasG/rVBXFLJz5DrgGabpYD6N+3yZrfD6uUIfpuTu65DZLHi7N8CizHc07BPZA==",
+ "dev": true
+ },
"synckit": {
"version": "0.8.8",
"resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.8.tgz",
@@ -23770,6 +25805,24 @@
}
}
},
+ "teex": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/teex/-/teex-1.0.1.tgz",
+ "integrity": "sha512-eYE6iEI62Ni1H8oIa7KlDU6uQBtqr4Eajni3wX7rpfXD8ysFx8z0+dri+KWEPWpBsxXfxu58x/0jvTVT1ekOSg==",
+ "dev": true,
+ "requires": {
+ "streamx": "^2.12.5"
+ }
+ },
+ "text-decoder": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.0.tgz",
+ "integrity": "sha512-n1yg1mOj9DNpk3NeZOx7T6jchTbyJS3i3cucbNN6FcdPriMZx7NsgrGpWWdWZZGxD7ES1XB+3uoqHMgOKaN+fg==",
+ "dev": true,
+ "requires": {
+ "b4a": "^1.6.4"
+ }
+ },
"text-table": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
@@ -23804,6 +25857,48 @@
"resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
"integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg=="
},
+ "through2": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
+ "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
+ "dev": true,
+ "requires": {
+ "readable-stream": "~2.3.6",
+ "xtend": "~4.0.1"
+ },
+ "dependencies": {
+ "isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==",
+ "dev": true
+ },
+ "readable-stream": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
+ "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
+ "dev": true,
+ "requires": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.3",
+ "isarray": "~1.0.0",
+ "process-nextick-args": "~2.0.0",
+ "safe-buffer": "~5.1.1",
+ "string_decoder": "~1.1.1",
+ "util-deprecate": "~1.0.1"
+ }
+ },
+ "string_decoder": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
+ "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+ "dev": true,
+ "requires": {
+ "safe-buffer": "~5.1.0"
+ }
+ }
+ }
+ },
"tinybench": {
"version": "2.8.0",
"resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.8.0.tgz",
@@ -23870,6 +25965,15 @@
"is-number": "^7.0.0"
}
},
+ "to-through": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/to-through/-/to-through-3.0.0.tgz",
+ "integrity": "sha512-y8MN937s/HVhEoBU1SxfHC+wxCHkV1a9gW8eAdTadYh/bGyesZIVcbjI+mSpFbSVwQici/XjBjuUyri1dnXwBw==",
+ "dev": true,
+ "requires": {
+ "streamx": "^2.12.5"
+ }
+ },
"tough-cookie": {
"version": "4.1.4",
"resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.4.tgz",
@@ -23968,6 +26072,22 @@
"integrity": "sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==",
"dev": true
},
+ "underscore.string": {
+ "version": "3.3.6",
+ "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.6.tgz",
+ "integrity": "sha512-VoC83HWXmCrF6rgkyxS9GHv8W9Q5nhMKho+OadDJGzL2oDYbYEppBaCMH6pFlwLeqj2QS+hhkw2kpXkSdD1JxQ==",
+ "dev": true,
+ "requires": {
+ "sprintf-js": "^1.1.1",
+ "util-deprecate": "^1.0.2"
+ }
+ },
+ "undici": {
+ "version": "6.19.8",
+ "resolved": "https://registry.npmjs.org/undici/-/undici-6.19.8.tgz",
+ "integrity": "sha512-U8uCCl2x9TK3WANvmBavymRzxbfFYG+tAu+fgx3zxQy3qdagQqBLwJVrdyO1TBfUXvfKveMKJZhpvUYoOjM+4g==",
+ "dev": true
+ },
"undici-types": {
"version": "5.26.5",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz",
@@ -24068,6 +26188,12 @@
"resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
"integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg=="
},
+ "value-or-function": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/value-or-function/-/value-or-function-4.0.0.tgz",
+ "integrity": "sha512-aeVK81SIuT6aMJfNo9Vte8Dw0/FZINGBV8BfCraGtqVxIeLAEhJyoWs8SmvRVmXfGss2PmmOwZCuBPbZR+IYWg==",
+ "dev": true
+ },
"value-or-promise": {
"version": "1.0.12",
"resolved": "https://registry.npmjs.org/value-or-promise/-/value-or-promise-1.0.12.tgz",
@@ -24091,6 +26217,96 @@
}
}
},
+ "vinyl": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-3.0.0.tgz",
+ "integrity": "sha512-rC2VRfAVVCGEgjnxHUnpIVh3AGuk62rP3tqVrn+yab0YH7UULisC085+NYH+mnqf3Wx4SpSi1RQMwudL89N03g==",
+ "dev": true,
+ "requires": {
+ "clone": "^2.1.2",
+ "clone-stats": "^1.0.0",
+ "remove-trailing-separator": "^1.1.0",
+ "replace-ext": "^2.0.0",
+ "teex": "^1.0.1"
+ },
+ "dependencies": {
+ "clone": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz",
+ "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==",
+ "dev": true
+ }
+ }
+ },
+ "vinyl-contents": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/vinyl-contents/-/vinyl-contents-2.0.0.tgz",
+ "integrity": "sha512-cHq6NnGyi2pZ7xwdHSW1v4Jfnho4TEGtxZHw01cmnc8+i7jgR6bRnED/LbrKan/Q7CvVLbnvA5OepnhbpjBZ5Q==",
+ "dev": true,
+ "requires": {
+ "bl": "^5.0.0",
+ "vinyl": "^3.0.0"
+ },
+ "dependencies": {
+ "bl": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/bl/-/bl-5.1.0.tgz",
+ "integrity": "sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ==",
+ "dev": true,
+ "requires": {
+ "buffer": "^6.0.3",
+ "inherits": "^2.0.4",
+ "readable-stream": "^3.4.0"
+ }
+ },
+ "buffer": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz",
+ "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==",
+ "dev": true,
+ "requires": {
+ "base64-js": "^1.3.1",
+ "ieee754": "^1.2.1"
+ }
+ }
+ }
+ },
+ "vinyl-fs": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-4.0.0.tgz",
+ "integrity": "sha512-7GbgBnYfaquMk3Qu9g22x000vbYkOex32930rBnc3qByw6HfMEAoELjCjoJv4HuEQxHAurT+nvMHm6MnJllFLw==",
+ "dev": true,
+ "requires": {
+ "fs-mkdirp-stream": "^2.0.1",
+ "glob-stream": "^8.0.0",
+ "graceful-fs": "^4.2.11",
+ "iconv-lite": "^0.6.3",
+ "is-valid-glob": "^1.0.0",
+ "lead": "^4.0.0",
+ "normalize-path": "3.0.0",
+ "resolve-options": "^2.0.0",
+ "stream-composer": "^1.0.2",
+ "streamx": "^2.14.0",
+ "to-through": "^3.0.0",
+ "value-or-function": "^4.0.0",
+ "vinyl": "^3.0.0",
+ "vinyl-sourcemap": "^2.0.0"
+ }
+ },
+ "vinyl-sourcemap": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/vinyl-sourcemap/-/vinyl-sourcemap-2.0.0.tgz",
+ "integrity": "sha512-BAEvWxbBUXvlNoFQVFVHpybBbjW1r03WhohJzJDSfgrrK5xVYIDTan6xN14DlyImShgDRv2gl9qhM6irVMsV0Q==",
+ "dev": true,
+ "requires": {
+ "convert-source-map": "^2.0.0",
+ "graceful-fs": "^4.2.10",
+ "now-and-later": "^3.0.0",
+ "streamx": "^2.12.5",
+ "vinyl": "^3.0.0",
+ "vinyl-contents": "^2.0.0"
+ }
+ },
"vite": {
"version": "4.5.3",
"resolved": "https://registry.npmjs.org/vite/-/vite-4.5.3.tgz",
@@ -24828,6 +27044,39 @@
"rxjs": "^7.8.1"
}
},
+ "walk-sync": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/walk-sync/-/walk-sync-2.2.0.tgz",
+ "integrity": "sha512-IC8sL7aB4/ZgFcGI2T1LczZeFWZ06b3zoHH7jBPyHxOtIIz1jppWHjjEXkOFvFojBVAK9pV7g47xOZ4LW3QLfg==",
+ "dev": true,
+ "requires": {
+ "@types/minimatch": "^3.0.3",
+ "ensure-posix-path": "^1.1.0",
+ "matcher-collection": "^2.0.0",
+ "minimatch": "^3.0.4"
+ },
+ "dependencies": {
+ "brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dev": true,
+ "requires": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "dev": true,
+ "requires": {
+ "brace-expansion": "^1.1.7"
+ }
+ }
+ }
+ },
"wcwidth": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz",
@@ -25044,6 +27293,12 @@
"integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==",
"dev": true
},
+ "xtend": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
+ "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
+ "dev": true
+ },
"y18n": {
"version": "5.0.8",
"resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
diff --git a/client/package.json b/client/package.json
index 9c2813cf..9de59a60 100644
--- a/client/package.json
+++ b/client/package.json
@@ -16,7 +16,9 @@
"tailwind": "tailwindcss -i tailwind.css -o ../server/vbv_lernwelt/static/css/tailwind.css --watch",
"test": "vitest run",
"typecheck": "npm run codegen && vue-tsc --noEmit -p tsconfig.app.json --composite false",
- "typecheck-only": "vue-tsc --noEmit -p tsconfig.app.json --composite false"
+ "typecheck-only": "vue-tsc --noEmit -p tsconfig.app.json --composite false",
+ "i18next:sort": "prettier --write src/locales/**/*.json",
+ "i18next:parse": "i18next && npm run i18next:sort"
},
"dependencies": {
"@headlessui/tailwindcss": "^0.2.1",
@@ -72,6 +74,7 @@
"eslint-config-prettier": "^8.10.0",
"eslint-plugin-cypress": "^2.15.2",
"eslint-plugin-vue": "^9.27.0",
+ "i18next-parser": "^9.0.2",
"jsdom": "^24.1.0",
"locize-cli": "^8.0.1",
"postcss": "^8.4.39",
diff --git a/client/src/i18nextWrapper.ts b/client/src/i18nextWrapper.ts
index 5220e0ea..de6be78e 100644
--- a/client/src/i18nextWrapper.ts
+++ b/client/src/i18nextWrapper.ts
@@ -1,7 +1,5 @@
import type { AvailableLanguages } from "@/stores/user";
import i18next from "i18next";
-import Backend from "i18next-locize-backend";
-import { locizePlugin } from "locize";
import { nextTick } from "vue";
@@ -21,23 +19,42 @@ export function i18nextInit() {
// .use(LanguageDetector)
// init i18next
// for all options read: https://www.i18next.com/overview/configuration-options
- .use(Backend)
- .use(locizePlugin)
+ // .use(Backend)
+ // .use(locizePlugin)
.init({
debug: true,
supportedLngs: SUPPORT_LOCALES,
fallbackLng: "de",
defaultNS: "translation",
returnNull: false,
- saveMissing: import.meta.env.DEV,
- backend: {
- projectId:
- import.meta.env.VITE_LOCIZE_PROJECTID ||
- "7518c269-cbf7-4d25-bc5c-6ceba2a8b74b",
- apiKey: import.meta.env.DEV ? import.meta.env.VITE_LOCIZE_API_KEY : undefined,
- fallbackLng: "de",
- allowedAddOrUpdateHosts: ["localhost", "127.0.0.1"],
+ saveMissing: false,
+ keySeparator: false,
+ resources: {
+ de: {
+ translation: {
+ "general.title": "myVBV",
+ },
+ },
+ fr: {
+ translation: {
+ "general.title": "myAFA",
+ },
+ },
+ it: {
+ translation: {
+ "general.title": "myAFA",
+ },
+ },
},
+
+ // backend: {
+ // projectId:
+ // import.meta.env.VITE_LOCIZE_PROJECTID ||
+ // "7518c269-cbf7-4d25-bc5c-6ceba2a8b74b",
+ // apiKey: import.meta.env.DEV ? import.meta.env.VITE_LOCIZE_API_KEY : undefined,
+ // fallbackLng: "de",
+ // allowedAddOrUpdateHosts: ["localhost", "127.0.0.1"],
+ // },
})
);
}
@@ -56,10 +73,18 @@ export function setI18nLanguage(locale: string) {
export async function loadI18nextLocaleMessages(locale: any) {
// load locale messages with dynamic import
- // unused with locize
- const messages = await import(`./locales/${locale}.json`);
+ let messages = null;
+ if (locale === "de") {
+ messages = await import("./locales/de/translation.json");
+ } else if (locale === "fr") {
+ messages = await import("./locales/fr/translation.json");
+ } else if (locale === "it") {
+ messages = await import("./locales/it/translation.json");
+ }
- i18next.addResourceBundle(locale, "messages", messages, true, true);
+ if (messages) {
+ i18next.addResourceBundle(locale, "translation", messages.default, true, true);
+ }
return nextTick();
}
diff --git a/client/src/locales/de/translation.json b/client/src/locales/de/translation.json
index d7c6518d..b68ca58e 100644
--- a/client/src/locales/de/translation.json
+++ b/client/src/locales/de/translation.json
@@ -1,373 +1,670 @@
{
- "100%": "100%",
"20%": "20%",
"40%": "40%",
"60%": "60%",
"80%": "80%",
+ "100%": "100%",
+ "a.": "a.",
+ "a.a.AlleCircle": "a.a.AlleCircle",
+ "a.Abbrechen": "Abbrechen",
+ "a.Abgabetermin": "Abgabetermin",
+ "a.Abgezogene Punkte": "Abgezogene Punkte",
+ "a.Adresse": "Adresse",
+ "a.Aktuell begleitest du niemanden als Lernbegleitung.": "Aktuell begleitest du niemanden als Lernbegleitung.",
+ "a.Aktuell begleitest du niemanden als Praxisbildner.": "Aktuell begleitest du niemanden als Praxisbildner.",
+ "a.Aktuell bist du leider keiner Durchführung zugewiesen.": "Aktuell bist du leider keiner Durchführung zugewiesen.",
+ "a.Aktuell hast du noch keine Person als Lernbegleitung eingeladen.": "Aktuell hast du noch keine Person als Lernbegleitung eingeladen.",
+ "a.Aktuell hast du noch keine Person als Lernbegleitung eingeladen. Lade jetzt jemanden ein.": "Aktuell hast du noch keine Person als Lernbegleitung eingeladen. Lade jetzt jemanden ein.",
+ "a.Aktuell hast du noch keine Person als Praxisbildner eingeladen.": "Aktuell hast du noch keine Person als Praxisbildner eingeladen.",
+ "a.Aktuell hast du noch keine Person als Praxisbildner eingeladen. Lade jetzt jemanden ein.": "a.Aktuell hast du noch keine Person als Praxisbildner eingeladen. Lade jetzt jemanden ein.",
+ "a.Aktueller Lehrgang": "Aktueller Lehrgang",
+ "a.Allbranche": "Allbranche",
+ "a.Alle": "Alle",
+ "a.Alle aufklappen": "Alle aufklappen",
+ "a.Alle Lehrgang": "a.Alle Lehrgang",
+ "a.Alle Lehrgänge": "a.Alle Lehrgänge",
+ "a.Alle Lehrgänge anzeigen": "Alle Lehrgänge anzeigen",
+ "a.Alle Personen anzeigen": "Alle Personen anzeigen",
+ "a.Alle Termine anzeigen": "Alle Termine anzeigen",
+ "a.Alle zuklappen": "Alle zuklappen",
+ "a.AlleCircle": "Circle: Alle",
+ "a.AlleDurchführungen": "Durchführungen: Alle",
+ "a.AlleGenerationen": "Generationen: Alle",
+ "a.AlleKreise": "a.AlleKreise",
+ "a.AlleRegionen": "a.AlleRegionen",
+ "a.AlleTermine": "Termine",
+ "a.AlleTypen": "Alle Typen",
+ "a.Allgemeine Zufriedenheit": "Allgemeine Zufriedenheit",
+ "a.Als Excel exportieren": "Als Excel exportieren",
+ "a.An Durchführung teilnehmen": "An Durchführung teilnehmen",
+ "a.Anmelden": "Anmelden",
+ "a.Anwesenheit": "Anwesenheit",
+ "a.Arbeiten": "Arbeiten",
+ "a.assignment.evaluationFeedbackDescriptionText": "Gib dein Feedback frei, damit es mit dem Teilnehmer geteilt wird.",
+ "a.assignment.evaluationInstrumentDescriptionTextFeedback": "Bitte unterstütze {{name}} und gib Feedback zum Auftrag.",
+ "a.Aufgabe": "Aufgabe",
+ "a.Aufgaben": "Aufgaben",
+ "a.Auswählen": "Auswählen",
+ "a.Bearbeiten": "Bearbeiten",
+ "a.Begründung": "Begründung",
+ "a.Bestanden": "Bestanden",
+ "a.Beurteilungsinstrument anzeigen": "Beurteilungsinstrument anzeigen",
+ "a.Beurteilungskriterium": "Beurteilungskriterium",
+ "a.Bewertung": "Bewertung",
+ "a.Bewertung abschliessen": "Bewertung abschliessen",
+ "a.Bewertung ansehen": "Bewertung ansehen",
+ "a.Bewertung bearbeiten": "a.Bewertung bearbeiten",
+ "a.Bewertung bearbeitet": "a.Bewertung bearbeitet",
+ "a.Bewertung erneut bearbeitet": "a.Bewertung erneut bearbeitet",
+ "a.Bewertung fortsetzen": "Bewertung fortsetzen",
+ "a.Bewertung Freigabe": "Bewertung Freigabe",
+ "a.Bewertung freigeben": "Bewertung freigeben",
+ "a.Bewertung freigegeben": "Bewertung freigegeben",
+ "a.Bewertung starten": "Bewertung starten",
+ "a.Bewertung von x y": "Bewertung von {{x}} {{y}}",
+ "a.Bild hochladen": "Bild hochladen",
+ "a.Bitte folgende Felder ausfüllen": "Bitte folgende Felder ausfüllen",
+ "a.Bitte überprüfe deine Eingaben. Es sind Fehler in deinem Formular aufgetreten.": "Bitte überprüfe deine Eingaben. Es sind Fehler in deinem Formular aufgetreten.",
+ "a.Circle": "Circle",
+ "a.Cockpit anschauen": "Cockpit anschauen",
+ "a.competenceCertificateNoUserPoints": "Der Punktestand wird zu einem späteren Zeitpunkt berechnet.",
+ "a.confirmSubmitPersonPraxisAssignment": "Folgende Person soll mir Feedback zu meinen Ergebnissen geben.",
+ "a.Damit du mit diesem Lehrgang starten kannst, musst du einer Durchführung zugewiesen werden. Nimm dafür deinem üK-Verantwortlichen oder unserem {support} Kontakt auf.": "Damit du mit diesem Lehrgang starten kannst, musst du einer Durchführung zugewiesen werden. Nimm dafür deinem üK-Verantwortlichen oder unserem {support} Kontakt auf.",
+ "a.Damit du myVBV nutzen kannst, brauchst du ein Konto.": "Damit du myVBV nutzen kannst, brauchst du ein Konto.",
+ "a.Das muss ich nochmals anschauen": "Das muss ich nochmals anschauen",
+ "a.Das wurde mit dir geteilt": "Das wurde mit dir geteilt",
+ "a.Datei auswählen": "Datei auswählen",
+ "a.Datei hochladen": "Datei hochladen",
+ "a.Datei kann nicht gespeichert werden.": "Datei kann nicht gespeichert werden.",
+ "a.Datum": "Datum",
+ "a.Debit-/Kreditkarte/Twint": "Debit-/Kreditkarte/Twint",
+ "a.Dein Feedback für x y wurde freigegeben.": "Dein Feedback für {{x}} {{y}} wurde freigegeben.",
+ "a.Deine Bewertung für x y wurde freigegeben.": "Deine Bewertung für {{x}} {{y}} wurde freigegeben.",
+ "a.Deine Fremdeinschätzung": "Deine Fremdeinschätzung\n",
+ "a.Deine Selbsteinschätzung": "Deine Selbsteinschätzung",
+ "a.Deine Änderungen wurden gespeichert": "Deine Änderungen wurden gespeichert",
+ "a.Der Lehrgang und die Prüfung zum Erwerb des Verbandszertifikats als Versicherungsvermittler/-in.": "Der Lehrgang und die Prüfung zum Erwerb des Verbandszertifikats als Versicherungsvermittler/-in.",
+ "a.Der Preis für den Lehrgang {course} beträgt {price}.": "Der Preis für den Lehrgang {course} beträgt {price} exkl. MWSt.",
+ "a.Details anschauen": "Details anschauen",
+ "a.Details anzeigen": "Details anzeigen",
+ "a.Deutsch": "Deutsch",
+ "a.Die Anwesenheit wurde definitiv bestätigt": "Die Anwesenheit wurde definitiv bestätigt",
+ "a.Die Einladung konnte nicht akzeptiert werden. Bitte melde dich beim Support.": "Die Einladung konnte nicht akzeptiert werden. Bitte melde dich beim Support.",
+ "a.Die Einladung wurde noch nicht angenommen.": "Die Einladung wurde noch nicht angenommen.",
+ "a.Die Zahlung für den Lehrgang «{course}» wurde erfolgreich ausgeführt.": "Die Zahlung für den Lehrgang «{course}» wurde erfolgreich ausgeführt.",
+ "a.Die überbetrieblichen Kurse der kaufmännischen Ausbildungs- und Prüfungsbranche 'Privatversicherung'.": "Die überbetrieblichen Kurse der kaufmännischen Ausbildungs- und Prüfungsbranche 'Privatversicherung'.",
+ "a.Du hast alles erledigt.": "Du hast alles erledigt.",
+ "a.Du hast deine Fremdeinschätzung freigegeben": "Du hast deine Fremdeinschätzung freigegeben.",
+ "a.Du hast deine Selbsteinschätzung erfolgreich mit FULL_NAME geteilt.": "Du hast deine Selbsteinschätzung erfolgreich mit {{FULL_NAME}} geteilt.",
+ "a.Du hast die Einladung von {name} erfolgreich akzeptiert.": "Du hast die Einladung von {name} erfolgreich akzeptiert.",
+ "a.Du hast erfolgreich ein Konto für EMAIL erstellt.": "Du hast erfolgreich ein Konto für {{email}} erstellt.",
+ "a.Du kannst deine Selbsteinschätzung mit deiner Lernbegleitung teilen, damit sie eine Fremdeinschätzung vornimmt.": "Du kannst deine Selbsteinschätzung mit deiner Lernbegleitung teilen, damit sie eine Fremdeinschätzung vornimmt.",
+ "a.Durchfuehrung": "Durchführung",
+ "a.Durchführung": "Durchführung",
+ "a.Durchführungen": "Durchführungen",
+ "a.Durchschnittsnote": "Durchschnittsnote",
+ "a.E-Mail Adresse": "E-Mail Adresse",
+ "a.Einladung": "Einladung",
+ "a.Einladung abschicken": "Einladung abschicken",
+ "a.Email": "Email",
+ "a.Entfernen": "Entfernen",
+ "a.Erfahrungsnote üK": "Erfahrungsnote üK",
+ "a.Ergebnis bewerten": "Ergebnis bewerten",
+ "a.Ergebnisse": "Ergebnisse",
+ "a.Ergebnisse abgegeben": "Ergebnisse abgegeben",
+ "a.Ergebnisse anschauen": "Ergebnisse anschauen",
+ "a.Ergebnisse bewerten": "Ergebnisse bewerten",
+ "a.Ergebnisse teilen": "Ergebnisse teilen",
+ "a.Erneut bearbeiten": "Erneut bearbeiten",
+ "a.Experte": "",
+ "a.Feedback abschliessen": "Feedback abschliessen",
+ "a.Feedback ansehen": "Feedback ansehen",
+ "a.Feedback erneut bearbeitet": "Feedback erneut bearbeitet",
+ "a.Feedback fortsetzen": "Feedback fortsetzen",
+ "a.Feedback Freigabe": "Feedback Freigabe",
+ "a.Feedback freigeben": "Feedback freigeben",
+ "a.Feedback freigegeben": "Feedback freigegeben",
+ "a.Feedback geben": "Feedback geben",
+ "a.Feedback Teilnehmer": "Feedback Teilnehmer",
+ "a.Feedback von x y": "Feedback von {{x}} {{y}}",
+ "a.feedback.introductionVV": "Wir bitten dich um dein Feedback. Es hilft uns, damit wir deine Lernerlebnisse verbessern\nkönnen.",
+ "a.Fehler bei der Zahlung. Bitte versuche es erneut oder kontaktiere uns": "Fehler bei der Zahlung. Bitte versuche es erneut oder wähle eine andere Zahlungsmethode.",
+ "a.Fehler bei der Zahlung. Bitte versuche es erneut oder wähle eine andere Zahlungsmethode.": "Fehler bei der Zahlung. Bitte versuche es erneut oder wähle eine andere Zahlungsmethode.",
+ "a.Fehlermeldung": "Fehlermeldung",
+ "a.Firmenanschrift": "Firmenanschrift",
+ "a.Firmenname": "Firmenname",
+ "a.Franzosisch": "Französisch",
+ "a.Fremdeinschätzung anzeigen": "Fremdeinschätzung anzeigen",
+ "a.Fremdeinschätzung freigeben": "Fremdeinschätzung freigeben",
+ "a.Fremdeinschätzung von FEEDBACK_PROVIDER_NAME": "Fremdeinschätzung von {{FEEDBACK_PROVIDER_NAME}}",
+ "a.Fremdeinschätzung vornehmen": "Fremdeinschätzung vornehmen",
+ "a.Fremdeinschätzungen": "Fremdeinschätzungen",
+ "a.FULL_NAME wird eine Fremdeinschätzung für dich vornehmen. Du wirst per Benachrichtigung informiert, sobald die Fremdeinschätzung für dich freigegeben wurde.": "{{FULL_NAME}} wird eine Fremdeinschätzung für dich vornehmen. Du wirst per Benachrichtigung informiert, sobald die Fremdeinschätzung für dich freigegeben wurde.",
+ "a.Geburtsdatum": "Geburtsdatum",
+ "a.Geleitete Fallarbeit": "Geleitete Fallarbeit",
+ "a.Generation": "Generation",
+ "a.Gesamtpunktzahl": "Gesamtpunktzahl",
+ "a.Geschäftsdaten": "Geschäftsdaten",
+ "a.Gesellschaft": "Gesellschaft",
+ "a.Gleich wie die Firmenanschrift": "Gleich wie die Firmenanschrift",
+ "a.Gleich wie die Privatadresse": "Gleich wie die Privatadresse",
+ "a.Gratuliere!": "Gratuliere!",
+ "a.Grund": "Grund",
+ "a.Hallo {userFirstName}, wähle jetzt deinen Lehrgang aus": "Hallo {userFirstName}, wähle jetzt deinen Lehrgang aus:",
+ "a.Handlungskompetenzen": "Handlungskompetenzen",
+ "a.Hast du Fragen? Kontaktiere uns": "Hast du Fragen? Kontaktiere uns",
+ "a.Hast du Fragen? Schau dir unsere FAQ an oder kontaktiere uns": "Hast du Fragen? Schau dir unsere {faq} an oder kontaktiere uns",
+ "a.Hast du schon ein Konto?": "Hast du schon ein Konto?",
+ "a.Hausnummmer": "Hausnummmer",
+ "a.Hier kannst du ausschliesslich mit einer Kreditkarte bezahlen.": "a.Hier kannst du ausschliesslich mit einer Kreditkarte bezahlen.",
+ "a.Hier kannst du Personen einladen, damit sie deine Lernbegleitung werden. Zudem siehst du jederzeit eine Übersicht aller Personen, die du bereits als Lernbegleitung hinzugefügt hast.": "Hier kannst du Personen einladen, damit sie deine Lernbegleitung werden. Zudem siehst du jederzeit eine Übersicht aller Personen, die du bereits als Lernbegleitung hinzugefügt hast.",
+ "a.Höchstpunktzahl": "Höchstpunktzahl",
+ "a.Ich kann das": "Ich kann das",
+ "a.Italienisch": "Italienisch",
+ "a.Ja, NAME kann das.": "Ja, {{NAME}} kann das",
+ "a.Jetzt mit Lehrgang starten": "Jetzt mit Lehrgang starten",
+ "a.Kann FULLNAME das?": "Kann {{FULLNAME}} das?",
+ "a.Kein Circle verfügbar oder ausgewählt.": "Kein Circle verfügbar oder ausgewählt.",
+ "a.Keine Angabe": "Keine Angabe",
+ "a.Kommentar": "a.Kommentar",
+ "a.Kommentar erfassen": "a.Kommentar erfassen",
+ "a.Kompetenznachweis": "Kompetenznachweis",
+ "a.Kompetenznachweis-Elemente": "Kompetenznachweis-Elemente",
+ "a.Kompetenznachweise": "Kompetenznachweise",
+ "a.KompetenzNavi": "KompetenzNavi",
+ "a.Konto erstellen": "Konto erstellen",
+ "a.Kosten": "Kosten",
+ "a.Kosten aller Jahre ansehen": "a.Kosten aller Jahre ansehen",
+ "a.Kosten in 2024": "a.Kosten in 2024",
+ "a.Krankenzusatzversicherung": "Krankenzusatzversicherung",
+ "a.Krankenzusatzversicherungen": "Krankenzusatzversicherungen",
+ "a.Lade ein Profilbild hoch, damit dich andere Personen auf den ersten Blick erkennen.": "Lade ein Profilbild hoch, damit dich andere Personen auf den ersten Blick erkennen.",
+ "a.Laden...": "Laden...",
+ "a.Land": "Land",
+ "a.Leben": "Leben",
+ "a.Lehrgang": "Lehrgang",
+ "a.Lehrgang kaufen": "Lehrgang kaufen",
+ "a.Leistungsziel": "Leistungsziel",
+ "a.Leistungsziele": "Leistungsziele",
+ "a.Lernbegleiter": "a.Lernbegleiter",
+ "a.Lernbegleitung": "Lernbegleitung",
+ "a.Lernbegleitung auswählen": "Lernbegleitung auswählen",
+ "a.Lernbegleitung einladen": "Lernbegleitung einladen",
+ "a.Liste anzeigen": "Liste anzeigen",
+ "a.Mach nun weiter mit dem nächsten Schritt.": "Mach nun weiter mit dem nächsten Schritt.",
+ "a.Maximale Dateigrösse": "Maximale Dateigrösse",
+ "a.Mediathek": "Mediathek",
+ "a.Mehr erfahren": "Mehr erfahren",
+ "a.Meine Lernbegleitung": "Meine Lernbegleitung",
+ "a.mit Abzug": "mit Abzug",
+ "a.Mit dem Kauf erhältst du Zugang auf den gesamten Kurs (inkl. Prüfung).": " Mit dem Kauf erhältst du Zugang zum Lernpfad und den Lernmedien.",
+ "a.Mit Kreditkarte bezahlen": "Mit Debit-/Kreditkarte/Twint bezahlen",
+ "a.Mit Rechnung bezahlen": "Mit Rechnung bezahlen",
+ "a.Mögliche Formate": "Mögliche Formate",
+ "a.Nachname": "Nachname",
+ "a.Name": "Name",
+ "a.Nein, NAME muss das nochmals anschauen.": "Nein, {{NAME}} muss das nochmals anschauen",
+ "a.Neue Lernbegleitung einladen": "Neue Lernbegleitung einladen",
+ "a.Nicht Bestanden": "Nicht bestanden",
+ "a.Nicht bewertet": "Nicht bewertet",
+ "a.Nichtleben": "Nichtleben",
+ "a.Note": "Note",
+ "a.NUMBER Elemente abgeschlossen": "{NUMBER} Elemente abgeschlossen",
+ "a.NUMBER Präsenztage abgeschlossen": "{NUMBER} Präsenztage abgeschlossen",
+ "a.NUMBER Teilnehmer anwesend": "{NUMBER} Teilnehmer anwesend",
+ "a.Nächste Termine": "a.Nächste Termine",
+ "a.OldCircle": "a.OldCircle",
+ "a.Optionale Anwesenheit": "Optionale Anwesenheit",
+ "a.Ort": "Ort",
+ "a.Personen": "Personen",
+ "a.Personen, die du begleitest": "Personen, die du begleitest ",
+ "a.Persönliche Informationen": "Persönliche Informationen",
+ "a.PLZ": "PLZ",
+ "a.Praxisauftrag": "Praxisauftrag",
+ "a.Praxisaufträge anschauen": "Praxisaufträge anschauen",
+ "a.Praxisbildner": "Praxisbildner",
+ "a.present von total Teilnehmenden anwesend": "{{present}} von {{total}} Teilnehmenden anwesend",
+ "a.Privatadresse": "Privatadresse",
+ "a.Profil anzeigen": "Profil anzeigen",
+ "a.Profil bearbeiten": "Profil bearbeiten",
+ "a.Profil ergänzen": "Profil ergänzen",
+ "a.Profilbild": "Profilbild",
+ "a.Präsenztag": "Präsenztag",
+ "a.Punkte": "Punkte",
+ "a.Punkte aus Bewertung": "Punkte aus Bewertung",
+ "a.PunkteVonDaniel": "",
+ "a.PunkteVonDaniel123": "Super Sache",
+ "a.Rechnung": "Rechnung",
+ "a.RechnungPaymentMethodDescription": "a.RechnungPaymentMethodDescription",
+ "a.Rechnungsadresse": "Rechnungsadresse",
+ "a.Rechnungsadresse hinzufügen": "Rechnungsadresse hinzufügen",
+ "a.Rechnungsadresse von {organisation}": "Rechnungsadresse von {{organisation}}",
+ "a.Rechnungsadresse von {organisation} hinzufügen": "Rechnungsadresse von {{organisation}} hinzufügen",
+ "a.Regionenleiter": "a.Regionenleiter",
+ "a.Resultat": "Resultat",
+ "a.Schliessen": "a.Schliessen",
+ "a.Selbst- und Fremdeinschätzungen": "Selbst- und Fremdeinschätzungen",
+ "a.Selbsteinschätzung": "Selbsteinschätzung",
+ "a.Selbsteinschätzung anschauen": "Selbsteinschätzung anschauen",
+ "a.Selbsteinschätzung anzeigen": "Selbsteinschätzung anzeigen",
+ "a.Selbsteinschätzung geteilt": "Selbsteinschätzung geteilt",
+ "a.Selbsteinschätzung mit MENTOR_NAME teilen": "Selbsteinschätzung mit {{MENTOR_NAME}} teilen",
+ "a.Selbsteinschätzung teilen": "Selbsteinschätzung teilen",
+ "a.Selbsteinschätzung von FEEDBACK_REQUESTER_NAME": "Selbsteinschätzung von {{FEEDBACK_REQUESTER_NAME}}",
+ "a.Selbsteinschätzungen": "Selbsteinschätzungen",
+ "a.Selbsteinschätzungen geteilt": "Selbsteinschätzungen geteilt",
+ "a.So startest du mit diesem Lehrgang": "So startest du mit diesem Lehrgang",
+ "a.Standort": "Standort",
+ "a.Statistik": "a.Statistik",
+ "a.Statistik für alle Lernenden": "a.Statistik für alle Lernenden",
+ "a.Stelle deinen Lernenden zusätzliche Inhalte zur Verfügung.": "Stelle deinen Teilnehmern zusätzliche Inhalte zur Verfügung.",
+ "a.Strasse": "Strasse",
+ "a.Super, nun ist alles bereit. Du bist der Durchführung «{course}» zugewiesen und kannst mit dem Lehrgang starten.": "Super, nun ist alles bereit. Du bist der Durchführung «{{course}}» zugewiesen und kannst mit dem Lehrgang starten.",
+ "a.Teilnehmer": "Teilnehmer",
+ "a.Teilnehmer im 2024": "a.Teilnehmer im 2024",
+ "a.Telefonnummer": "Telefonnummer",
+ "a.Telefonnummer hat das falsche Format": "a.Telefonnummer hat das falsche Format",
+ "a.Termin": "Termin",
+ "a.Termine": "Termine",
+ "a.Total {NUMBER} Antworten": "Total {NUMBER} Antworten",
+ "a.Trainer": "Trainer",
+ "a.Um die Zahlung vornehmen zu können, benötigen wir deine Privatadresse. Optional kannst du die Rechnungsadresse deiner Gesellschaft hinzufügen.": "Um die Zahlung vornehmen zu können, benötigen wir deine Privatadresse. Nach der Bezahlung erhältst du dann eine Buchungsbestätigung via Mail.",
+ "a.Ungerundete Note": "Ungerundete Note",
+ "a.Unterlagen": "Unterlagen",
+ "a.Unterlagen für Teilnehmenden": "Unterlagen für Teilnehmende",
+ "a.Unternehmen": "Unternehmen",
+ "a.VALUE von MAXIMUM": "{{VALUE}} von {{MAXIMUM}}",
+ "a.Versicherungsvermittler/-in": "Versicherungsvermittler/-in VBV",
+ "a.Vorname": "Vorname",
+ "a.Vorschau Teilnehmer": "Vorschau Teilnehmer",
+ "a.VorschauTeilnehmer": "Vorschau Teilnehmer",
+ "a.Wegleitung üK": "Wegleitung üK",
+ "a.wegleitungUkUrl": "https://www.vbv.ch/fileadmin/vbv/Dokumente/Bildungsabschluesse/KV/Wegleitung_ueK_240215_de_V2.pdf",
+ "a.Weiter zur Zahlung": "a.Weiter zur Zahlung",
+ "a.Wir haben per E-Mail eine Bestätigung an {email} geschickt.": "Wir haben per E-Mail eine Bestätigung an {email} geschickt.",
+ "a.Wähle ein Zulassungsprofil, damit du deinen Lehrgang an der richtigen Stelle beginnen kannst.": "Wähle ein Zulassungsprofil, damit du deinen Lehrgang an der richtigen Stelle beginnen kannst.",
+ "a.Wähle ein Zulassungsprofil, damit du deinen Lehrgang an der richtigen Stelle beginnen kannst. Du kannst ihn später jederzeit ändern.": "Wähle ein Zulassungsprofil, damit du deinen Lehrgang an der richtigen Stelle beginnen kannst. Du kannst ihn später jederzeit ändern.",
+ "a.Wähle hier den Namen der Gesellschaft aus, in der du arbeitest. So können dich andere Personen einfacher finden.": "Wähle hier den Namen der Gesellschaft aus, in der du arbeitest. So können dich andere Personen einfacher finden.",
+ "a.xOfY Punkten erreicht": "{xOfY} Punkten erreicht",
+ "a.Zahlungsart": "Zahlungsart",
+ "a.Zu erledigen": "Zu erledigen",
+ "a.Zulassungsprofil": "Zulassungsprofil",
+ "a.Zulassungsprofil auswählen": "Zulassungsprofil auswählen",
+ "a.Zum Unterlagen-Upload": "Unterlagen hochladen",
+ "a.Zurück": "a.Zurück",
+ "a.Zwischenstand": "Zwischenstand",
+ "a.{AVG} von {MAX}": "{AVG} von {MAX}",
+ "a.{NUMBER} Bestanden": "{NUMBER} Bestanden",
+ "a.{NUMBER} Das kann ich": "{NUMBER} Das kann ich",
+ "a.{NUMBER} Das will ich nochmals anschauen": "{NUMBER} Das will ich nochmals anschauen",
+ "a.Überbetriebliche Kurse": "Überbetriebliche Kurse",
+ "a.Überprüfe deine Eingaben unten und gib anschliessend deine Fremdeinschätzung für FEEDBACK_REQUESTER frei": "Überprüfe deine Eingaben unten und gib anschliessend deine Fremdeinschätzung für {{FEEDBACK_REQUESTER}} frei.",
+ "a.Übersicht": "Übersicht",
+ "a.Übersicht anschauen": "Übersicht anschauen",
+ "Abgabe": "Abgabe",
"Abgabetermin Ergebnisse:": "Abgabetermin Ergebnisse:",
"Alle": "Alle",
- "Anwesenheit Präsenzkurse": "Anwesenheit Präsenzkurse",
+ "Anwesenheit": "Anwesenheit",
"Anwesenheit bestätigen": "Anwesenheit bestätigen",
+ "Anwesenheit Präsenzkurse": "Anwesenheit Präsenzkurse",
"Anwesenheit prüfen": "Anwesenheit prüfen",
"Anwesenheitskontrolle Präsenzkurse": "Anwesenheitskontrolle Präsenzkurse",
+ "assignment.acceptConditionsDisclaimer": "Bedingungen akzeptieren und Ergebnisse abgeben",
+ "assignment.assessmentDocumentDisclaimer": "Diese geleitete Fallarbeit wird auf Grund des folgenden Beurteilungsinstrument bewertet:",
+ "assignment.assessmentTitle": "Bewertung",
+ "assignment.assignmentSubmitted": "Du hast deine Ergebnisse erfolgreich abgegeben.",
+ "assignment.confirmSubmitPerson": "Ja, die folgende Person soll meine Ergebnisse bewerten.",
+ "assignment.confirmSubmitResults": "Ja, ich gebe meine Resultate ab.",
+ "assignment.Du musst die Bewertung bis am x um y Uhr abschliessen und freigeben": "Du musst die Bewertung bis am {{x}} um {{y}} Uhr abschliessen und freigeben.",
+ "assignment.dueDateEvaluation": "Freigabetermin Bewertung",
+ "assignment.dueDateIntroduction": "Reiche deine Ergebnisse pünktlich ein bis am: ",
+ "assignment.dueDateNotSet": "Keine Abgabedaten wurden erfasst für diese Durchführung",
+ "assignment.dueDateSubmission": "Abgabetermin",
+ "assignment.dueDateTitle": "assignment.dueDateTitle",
+ "assignment.edit": "Bearbeiten",
+ "assignment.effortTitle": "Zeitaufwand",
+ "assignment.evaluationFeedback": "Feedback",
+ "assignment.evaluationInstrumentDescriptionText": "Die Gesamtpunktzahl und die daraus resultierende Note wird auf Grund des hinterlegeten Beurteilungsinstrument berechnet.",
+ "assignment.evaluationReason": "Begründung",
+ "assignment.feedbackRequiredText": "Erfasse hier deine Kommentare.",
+ "assignment.initialSituationTitle": "Ausgangslage",
+ "assignment.justificationRequiredText": "Hier muss zwingend eine Begründung erfasst werden.",
+ "assignment.lastChangesNotSaved": "Die letzte Änderung konnte nicht gespeichert werden.",
+ "assignment.performanceObjectivesTitle": "Leistungsziele",
+ "assignment.showAssessmentDocument": "Bewertungsinstrument anzeigen",
+ "assignment.submissionNotificationDisclaimer": "{{name}} wird deine Ergebnisse bewerten. Du wirst per Benachrichtigung informiert, sobald die Bewertung für dich freigegeben wurde.",
+ "assignment.submissionShowSampleSolution": "Musterlösung Anzeigen",
+ "assignment.submissionShowSampleSolutionText": "Hier findest du eine mögliche Lösung zu deinen Aufgaben. Vorgehen und Prozesse in deiner Organisation können von dieser Lösung abweichen.",
+ "assignment.submitAssignment": "Ergebnisse abgeben",
+ "assignment.taskDefinition": "Bearbeite die Teilaufgaben und dokumentiere deine Ergebnisse.",
+ "assignment.taskDefinitionTitle": "Aufgabenstellung",
+ "assignment.von x Punkten": "von {{x}} Punkten",
+ "assignment.x hat die Ergebnisse am y um z Uhr abgegeben": "{{x}} hat die Ergebnisse am {{y}} um {{z}} Uhr abgegeben",
+ "assignment.x von y Arbeiten abgeschlossen": "{{x}} von {{y}} Arbeiten abgeschlossen",
+ "assignment.x von y Kompetenznachweis-Elementen abgeschlossen": "{{x}} von {{y}} Kompetenznachweis-Elementen abgeschlossen",
+ "Aufgrund von Problemen beim Zahlungsanbieter ist ein Erwerb der myVBV-Lizenz derzeit nur mit TWINT möglich. Wir arbeiten mit Hochdruck an der Lösung des Problems. ": "Aufgrund von Problemen beim Zahlungsanbieter ist ein Erwerb der myVBV-Lizenz derzeit nur mit TWINT möglich. Wir arbeiten mit Hochdruck an der Lösung des Problems. ",
+ "Ausbildungsverantwortlicher": "Ausbildungsverantwortlicher",
"Benutzername": "Benutzername",
+ "Berufsbildner": "Berufsbildner",
+ "Bestanden": "Bestanden",
+ "Bewertung von x y": "Bewertung von {{x}} {{y}}",
+ "Circle": "Circle",
+ "circlePage.circleContentBoxTitle": "Das lernst du in diesem Circle",
+ "circlePage.contactExpertButton": "Trainer/-in kontaktieren",
+ "circlePage.contactExpertDescription": "Tausche dich mit der Trainer/-in für den Circle {{circleName}} aus.",
+ "circlePage.contactLearningMentorButton": "Lernbegleiter/-in kontaktieren",
+ "circlePage.contactLearningMentorDescription": "Tausche dich mit deiner Lernbegleitung aus.",
+ "circlePage.Dieser Inhalt gehört zu x": "Dieser Inhalt gehört zu «{{x}}»",
+ "circlePage.documents.action": "Unterlagen hochladen",
+ "circlePage.documents.chooseLearningSequence": "Bitte wähle eine Lernsequenz aus",
+ "circlePage.documents.chooseName": "Bitte wähle einen Namen",
+ "circlePage.documents.chooseSequence": "Wähle eine Lernsequenz aus",
+ "circlePage.documents.deleteModalTitle": "Unterlage löschen",
+ "circlePage.documents.deleteModalWarning": "Willst du die Unterlage \"{{title}}\" löschen?
Diese Aktion ist nicht umkehrbar.",
+ "circlePage.documents.expertDescription": "Stelle deinen Lernenden zusätzliche Inhalte zur Verfügung.",
+ "circlePage.documents.fileLabel": "Datei",
+ "circlePage.documents.maxFileSize": "Maximale Dateigrösse: 50 MB",
+ "circlePage.documents.modalAction": "Datei auswählen",
+ "circlePage.documents.modalFileName": "Name",
+ "circlePage.documents.modalNameInformation": "Max. 70 Zeichen",
+ "circlePage.documents.selectFile": "Bitte wähle eine Datei aus",
+ "circlePage.documents.title": "Unterlagen",
+ "circlePage.documents.trainerDescription": "Finde auf Teams zusätzliche Inhalte für deinen Unterricht.",
+ "circlePage.documents.trainerLinkSrc": "https://vbvbern.sharepoint.com/sites/myVBV-AFA_K-CI",
+ "circlePage.documents.trainerLinkText": "Inhalte auf Teams anschauen",
+ "circlePage.documents.trainerTitle": "Begleitung für Trainer",
+ "circlePage.documents.uploadErrorMessage": "Beim Hochladen ist ein Fehler aufgetreten. Bitte versuche es erneut.",
+ "circlePage.documents.userDescription": "Hier findest du zusätzliche Unterlagen, die dich beim Lernen in diesem Circle unterstützen.",
+ "circlePage.duration": "Dauer",
+ "circlePage.gotQuestions": "Hast du Fragen?",
+ "circlePage.Im KompetenzNavi anschauen": "Im KompetenzNavi anzeigen",
+ "circlePage.learnMore": "Erfahre mehr dazu",
+ "Cockpit anschauen": "Cockpit anschauen",
+ "cockpit.all": "Alle",
+ "cockpit.examsDone": "Abgelegte Prüfungen von Teilnehmer.",
+ "cockpit.feedbacksDone": "Abgeschickte Feedbacks von Teilnehmer.",
+ "cockpit.notifyTask": "Benachrichtigen",
+ "cockpit.notifyTaskDescription": "Teilnehmer benachrichtigen",
+ "cockpit.profileLink": "Profil anzeigen",
+ "cockpit.progress": "Teilnehmende / Status",
+ "cockpit.tasksDone": "Erledigte Transferaufträge von Teilnehmer.",
+ "cockpit.title": "Cockpit",
+ "cockpit.trainerFilesText": "Hier findest du die Trainerunterlagen (Lösungsblätter, Präsentationen etc.) für deinen Circle.",
+ "competence.listPageDescription": "Einleitung: Hier findest du einen Überblick aller Handlungskompetenzen und den dazugehörigen Leistungszielen, welche für deinen Lehrgang relevant sind. ",
+ "competenceCertificate.mainTitle": "Kompetenznachweis",
+ "competenceCertificates.mainTitle": "Kompetenznachweise",
+ "competences.assessAgain": "Selbsteinschätzung im Circle «{{x}}» anschauen",
+ "competences.assessment": "Einschätzungen",
+ "competences.competences": "Kompetenzen",
+ "competences.lastImprovements": "Letzte verbesserte Kompetenzen",
+ "competences.notAssessed": "Nicht eingeschätzt",
+ "competences.title": "KompetenzNavi",
+ "constants.no": "Nein",
+ "constants.satisfied": "zufrieden",
+ "constants.unsatisfied": "unzufrieden",
+ "constants.verySatisfied": "sehr zufrieden",
+ "constants.veryUnsatisfied": "sehr unzufrieden",
+ "constants.yes": "Ja",
+ "dashboard.courses": "Lehrgang",
+ "dashboard.nocourses": "Du wurdest noch keinem Lehrgang zugewiesen.",
+ "dashboard.welcome": "Willkommen, {{name}}",
+ "Der Preis für den Lehrgang «Versicherungsvermittler-/in VBV» beträgt CHF 300 exkl. MWSt.. Mit dem Kauf erhältst du Zugang zum Lernpfad und den Lernmedien.": "Nach der Bezahlung von 300 CHF exkl. MWSt. erhältst du Zugang für den gesamten Lehrgang (inkl. Prüfung).",
+ "dueDates.noDueDatesAvailable": "Keine Termine vorhanden",
+ "dueDates.showAllDueDates": "Alle Termine anzeigen",
+ "Durchführung": "Durchführung",
+ "edoniqTest.checkboxTitle": "Bedingungen akzeptieren und Test durchführen",
+ "edoniqTest.deadlineInPast": "Der Test kann nicht mehr durchgeführt werden, da das Abgabedatum abgelaufen ist.",
+ "edoniqTest.qualifiesForExtendedTime": "Ich bestätige, dass ich Anrecht auf einen Test mit Nachteilsausgleich habe.",
+ "edoniqTest.qualifiesForExtendedTimeTitle": "Lernende mit Nachteilsausgleich (bewilligungspflichtig)",
+ "edoniqTest.startTest": "Test starten",
+ "edoniqTest.submitDateDescription": "Reiche deine Ergebnisse pünktlich ein bis am {{x}}.",
+ "edoniqTest.testDescription": "Führe den folgenden Test durch. Der Test kann nur einmal durchgeführt werden und ist notenrelevant.",
+ "edoniqTest.testSubmitted": "Du hast diesen Test abgeschlossen",
+ "edoniqTest.viewResults": "Ergebnisse anschauen",
+ "Elemente zu erledigen": "Elemente zu erledigen",
"Ergebnisse anschauen": "Ergebnisse anschauen",
"Ergebnisse anzeigen": "Ergebnisse anzeigen",
"Feedback": "Feedback",
"Feedback anschauen": "Feedback anschauen",
+ "feedback.answers": "Antworten",
+ "feedback.areYouSatisfied": "Kursfeedback",
+ "feedback.average": "Durchschnitt",
+ "feedback.circleFeedback": "Feedback zum Circle",
+ "feedback.completionDescription": "Dein Feedback ist anonym. Dein Vor- und Nachname werden bei deiner Trainer/-in nicht angezeigt.",
+ "feedback.completionDescriptionVV": "Dein Feedback ist anonym und dein Vor- und Nachname sind nicht sichtbar.",
+ "feedback.completionTitle": "Schicke dein Feedback an {{name}}",
+ "feedback.completionTitleVV": "Schicke dein Feedback an VBV",
+ "feedback.courseNegativeFeedbackLabel": "Wo siehst du Verbesserungspotential?",
+ "feedback.coursePositiveFeedbackLabel": "Was hat dir besonders gut gefallen?",
+ "feedback.feedbackPageInfo": "Teilnehmer haben das Feedback ausgefüllt",
+ "feedback.feedbackPageTitle": "Feedback zum Lehrgang",
+ "feedback.feedbackSent": "Dein Feedback wurde abgeschickt",
+ "feedback.goalAttainmentLabel": "Zielerreichung insgesamt",
+ "feedback.happy": "Zufrieden",
+ "feedback.instructorCompetenceLabel": "Wie beurteilst du die Themensicherheit und Fachkompetenz des Kursleiters/der Kursleiterin?",
+ "feedback.instructorOpenFeedbackLabel": "Was möchtest du dem Kursleiter/der Kursleiterin sonst noch sagen?",
+ "feedback.instructorRespectLabel": "Wurden Fragen und Anregungen der Kursteilnehmenden ernst genommen und aufgegriffen?",
+ "feedback.intro": "{{name}}, dein/e Trainer/-in, bittet dich, ihm/ihr Feedback zu geben. Das ist freiwillig, würde aber ihm/ihr helfen, deine Lernerlebniss zu verbessern.",
+ "feedback.materialsRatingLabel": "Falls ja: Wie beurteilen Sie die Vorbereitungsunterlagen (z.B. eLearning)?",
+ "feedback.noFeedbacks": "Es wurden noch keine Feedbacks abgegeben",
+ "feedback.praxisAssignmentClarity": "Waren die Praxisaufträge klar und verständlich?",
+ "feedback.preparationTaskClarityLabel": "Waren die Vorbereitungsaufträge klar und verständlich?",
+ "feedback.proficiencyLabel": "Wie beurteilst du deine Sicherheit bezüglichen den Themen nach dem Kurs?",
+ "feedback.proficiencyLabelVV": "Wie beurteilst du deine Sicherheit bezüglichen den Themen nach dem Circle?",
+ "feedback.questionTitle": "Frage",
+ "feedback.recommendLabel": "Würdest du den Kurs weiterempfehlen?",
+ "feedback.recommendLabelVV": "Würdest du den Circle weiterempfehlen?",
+ "feedback.satisfactionLabel": "Zufriedenheit insgesamt",
+ "feedback.sendFeedback": "Feedback abschicken",
+ "feedback.sentByUsers": "Von {{count}} Teilnehmern ausgefüllt",
+ "feedback.showDetails": "Details anzeigen",
+ "feedback.unhappy": "Unzufrieden",
+ "feedback.veryHappy": "Sehr zufrieden",
+ "feedback.veryUnhappy": "Sehr unzufrieden",
"Feedback: Feedback zum Lehrgang": "Feedback: Feedback zum Lehrgang",
+ "foobar.hello": "Hallo von der Innoweek",
+ "footer.contact": "Kontakt",
+ "footer.contactLink": "https://www.vbv.ch/de/der-vbv/organisation/kontakt",
+ "footer.contactText": "Kontakt",
+ "footer.copyright": "© 2023 VBV",
+ "footer.dataProtectionLink": "https://www.vbv.ch/de/datenschutzbestimmungen",
+ "footer.dataProtectionText": "Datenschutzbestimmungen",
+ "footer.imprintLink": "https://www.vbv.ch/de/impressum",
+ "footer.imprintText": "Impressum",
"Freigabetermin Bewertungen:": "Freigabetermin Bewertungen:",
- "Hier überprüfst und bestätigst du die Anwesenheit deiner Teilnehmenden": [],
+ "Füge dein Profilbild hinzu und ergänze die fehlenden Angaben.": "Füge dein Profilbild hinzu und ergänze die fehlenden Angaben.",
+ "Geleitete Fallarbeit": "Geleitete Fallarbeit",
+ "general.back": "Zurück",
+ "general.backCapitalized": "Zurück",
+ "general.backToCircle": "zurück zum Circle",
+ "general.backToLearningPath": "zurück zum Lernpfad",
+ "general.cancel": "Abbrechen",
+ "general.certificate_many": "",
+ "general.certificate_one": "Zertifikat",
+ "general.certificate_other": "Zertifikate",
+ "general.circles": "Circles",
+ "general.close": "Schliessen",
+ "general.exam_many": "",
+ "general.exam_one": "Prüfung",
+ "general.exam_other": "Prüfungen",
+ "general.examResult_many": "",
+ "general.examResult_one": "Prüfungsresultat",
+ "general.examResult_other": "Prüfungsresultate",
+ "general.feedback_many": "",
+ "general.feedback_one": "Feedback",
+ "general.feedback_other": "Feedbacks",
+ "general.im circle x anschauen": "Im Circle «{{x}}» anzeigen",
+ "general.introduction": "Einleitung",
+ "general.learningPath": "Lernpfad",
+ "general.learningSequence": "Lernsequenz",
+ "general.learningUnit": "Lerneinheit",
+ "general.next": "Weiter",
+ "general.nextStep": "Weiter geht's",
+ "general.no": "Nein",
+ "general.notification_many": "",
+ "general.notification_one": "Benachrichtigung",
+ "general.notification_other": "Benachrichtigungen",
+ "general.profileLink": "Details anzeigen",
+ "general.save": "Speichern",
+ "general.send": "Senden",
+ "general.settings": "Kontoeinstellungen",
+ "general.shop": "Shop",
+ "general.show": "Anschauen",
+ "general.showAll": "Alle anschauen",
+ "general.start": "Los geht's",
+ "general.submission": "Abgabe",
+ "general.title": "myVBV",
+ "general.transferTask_many": "",
+ "general.transferTask_one": "Transferauftrag",
+ "general.transferTask_other": "Transferaufträge",
+ "general.yes": "Ja",
+ "Generation": "Generation",
+ "Hast du Fragen?": "Hast du Fragen?",
+ "Hier überprüfst und bestätigst du die Anwesenheit deiner Teilnehmenden.": "Hier überprüfst und bestätigst du die Anwesenheit deiner Teilnehmenden.",
+ "Ich will die Anwesenheit der untenstehenden Personen definitiv bestätigen.": "Ich will die Anwesenheit der untenstehenden Personen definitiv bestätigen.",
+ "Jahr": "Jahr",
+ "Keine Auftragsdetails verfügbar.": "Keine Auftragsdetails verfügbar.",
+ "Kompetenznachweise": "Kompetenznachweise",
+ "Kompetenzprofil": "Kompetenzprofil",
+ "Kosten im": "Kosten im",
+ "Kosten in": "Kosten in",
+ "Kosten in 2024": "Kosten in 2024",
+ "language.de": "Deutsch",
+ "language.fr": "Français",
+ "language.it": "Italiano",
+ "learningContent.markAsDone": "Als erledigt markieren",
+ "learningContentTypes.attendanceCourse": "Präsenzkurs",
+ "learningContentTypes.casework": "Geleitete Fallarbeit",
+ "learningContentTypes.documents": "Dokumente",
+ "learningContentTypes.edoniqTest": "Wissens- und Verständnisfragen",
+ "learningContentTypes.feedback": "Feedback",
+ "learningContentTypes.knowledgeAssessment": "Test",
+ "learningContentTypes.learningModule": "Lernmodul",
+ "learningContentTypes.mandatory_casework": "learningContentTypes.mandatory_casework",
+ "learningContentTypes.placeholder": "In Umsetzung",
+ "learningContentTypes.praxisAssignment": "Auftrag",
+ "learningContentTypes.prepAssignment": "Vorbereitungsauftrag",
+ "learningContentTypes.reflection": "Reflexion",
+ "learningContentTypes.task": "Aufgabe",
+ "learningContentTypes.test": "Test",
+ "learningContentTypes.text": "Text",
+ "learningContentTypes.video": "Video",
+ "learningPathPage.currentCircle": "Aktueller Circle",
+ "learningPathPage.listView": "Listenansicht",
+ "learningPathPage.nextDueDates": "Nächste Termine",
+ "learningPathPage.nextStep": "Nächster Schritt",
+ "learningPathPage.pathView": "Pfadansicht",
+ "learningPathPage.progressText": "Du hast {{ inProgressCount }} von {{ allCount }} Circles bearbeitet",
+ "learningPathPage.showListView": "Listenansicht anzeigen",
+ "learningPathPage.topics": "Themen:",
+ "learningPathPage.welcomeBack": "Willkommen zurück in deinem Lehrgang:",
+ "Lehrgang": "Lehrgang",
+ "Lernbegleitung einladen": "Lernbegleitung einladen",
+ "Lernpfad kaufen": "",
+ "login.demoLogin": "Demo Login",
+ "login.guidelineFile": "Registrierung_myVBV.pdf",
+ "login.guidelineText": "Erfahre wie du dich als Lernende/r registrieren kannst",
+ "login.login": "Login",
+ "login.ssoLogin": "SSO Login/Registration",
+ "login.ssoText": "Klicke auf den Button, um dich über SSO anzumelden oder zu registrieren.",
+ "login.welcomeText": "Herzlich willkommen auf der Login-Seite für die überbetrieblichen Kurse der kaufmännischen\nAusbildungs- und Prüfungsbranche «Privatversicherung».",
+ "login.welcomeUk": "Willkommen",
+ "mainNavigation.logout": "Abmelden",
+ "mainNavigation.profile": "Profil",
+ "mediaLibrary.handlungsfelder.description": "Finde alle Ressourcen der Handlungsfelder wie Lernmedien, Links und andere nützliche Informationen.",
+ "mediaLibrary.handlungsfelder.title_many": "",
+ "mediaLibrary.handlungsfelder.title_one": "Handlungsfeld",
+ "mediaLibrary.handlungsfelder.title_other": "Handlungsfelder",
+ "mediaLibrary.learningMedia.description": "Finde eine vollständige Liste der Bücher und anderen Medien, auf die im Kurs verwiesen wird.",
+ "mediaLibrary.learningMedia.titel": "Lernmedien",
+ "mediaLibrary.show": "Mediathek anzeigen",
+ "mediaLibrary.title": "Mediathek",
+ "Meine Lernbegleiter": "Meine Lernbegleiter",
+ "Meine Praxisbildner": "Meine Praxisbildner",
+ "Member": "Teilnehmer",
+ "MentorUK": "Praxisbildner/Praxisbildnerin",
+ "MentorVV": "Lernbegleitung",
+ "messages.sendMessage": "Nachricht schreiben",
"MS Teams öffnen": "MS Teams öffnen",
+ "Nach der Bezahlung von 300 CHF exkl. MWSt. erhältst du Zugang für den gesamten Lehrgang (inkl. Prüfung).": "Nach der Bezahlung von 300 CHF exkl. MWSt. erhältst du Zugang für den gesamten Lehrgang (inkl. Prüfung).",
+ "Neuen Praxisbildner einladen": "Neuen Praxisbildner einladen",
+ "Nicht bestanden": "Nicht bestanden",
+ "notifications.load_more": "Mehr laden",
+ "notifications.no_notifications": "Du hast derzeit keine Benachrichtigungen",
"Nächste Termine": "Nächste Termine",
"Passwort": "Passwort",
+ "Personen": "Personen",
+ "profile.": "profile.",
+ "profile.all": "Allbranche",
+ "profile.krankenzusatzversicherung": "Krankenzusatz",
+ "profile.leben": "Leben",
+ "profile.nichtleben": "Nichtleben",
+ "profile.null": "profile.null",
"Präsenzkurs": "Präsenzkurs",
+ "receivedEvaluation.no": "Das musst du nochmals anschauen",
+ "receivedEvaluation.yes": "Ja, du kannst das",
+ "Reflexion": "Reflexion",
+ "Region": "Region",
+ "Rolle": "Rolle",
"Sehr unzufrieden": "Sehr unzufrieden",
"Sehr zufrieden": "Sehr zufrieden",
+ "selfEvaluation.instruction.0": "Überprüfe, ob du in der Lernheinheit",
+ "selfEvaluation.instruction.1": "alles verstanden hast.",
+ "selfEvaluation.instruction.2": "Lies die folgende Aussage und bewerte sie:",
+ "selfEvaluation.no": "Das muss ich nochmals anschauen",
+ "selfEvaluation.progressLink": "KompetenzNavi öffnen",
+ "selfEvaluation.progressText": "Schau dein Fortschritt in deinem KompetenzNavi:",
+ "selfEvaluation.selfEvaluation": "Selbsteinschätzung",
+ "selfEvaluation.selfEvaluationNo": "$t(a.Selbsteinschätzung): Muss ich nochmals anschauen.",
+ "selfEvaluation.selfEvaluationYes": "$t(a.Selbsteinschätzung): Ich kann das.",
+ "selfEvaluation.steps": "Schritt {{current}} von {{max}}",
+ "selfEvaluation.title": "Selbsteinschätzung {{title}}",
+ "selfEvaluation.yes": "Ja, ich kann das",
+ "settings.emailNotifications": "Email Benachrichtigungen",
+ "shop.paymentCembraByjunoMessage": "Eine Zahlung auf Rechnung ist ausschliesslich an deine Privatadresse möglich. Du musst zwingend deine Telefonnummer und dein Geburtsdatum angeben. Wichtig: die Zahlungsfrist beträgt 30 Tage. Die Abwicklung deiner Zahlung (inkl. Mahnung, Inkasso, Betreibung) erfolgt direkt durch CembraPay AG. Die Rechnung erhälst du per Email.",
+ "Sobald du einer Durchführung zugewiesen bist, ist alles bereit.": "Sobald du einer Durchführung zugewiesen bist, ist alles bereit.",
+ "Sprache wählen und Lehrgang starten": "Sprache wählen und Lehrgang starten",
+ "start.chooseCourse": "Wähle jetzt deinen Lehrgang aus:",
+ "start.myvbvDescription": "Die Lernumgebung für die Versicherungswirtschaft",
+ "start.ukDescription": "Die überbetrieblichen Kurse im Zusammenhang mit der Ausbildung «Kaufmann/-frau EFZ Privatversicherung»",
+ "start.ukTitle": "Kaufmann/-frau EFZ Privatversicherung / Überbetriebliche Kurse",
+ "start.vvDescription": "Der Lernpfad und die Lernmedien, welche dich auf die Prüfung «Versicherungsvermittler/-in VBV» vorbereiten.",
"Status anschauen": "Status anschauen",
+ "Supervisor": "Regionenleiter",
+ "Teilnehmer": "Teilnehmer",
+ "Teilnehmer im": "Teilnehmer im",
+ "Teilnehmer im 2024": "Teilnehmer im 2024",
+ "Teilnehmer nach Zulassungsprofilen": "Teilnehmer nach Zulassungsprofilen",
+ "Teilnehmer nach Zulassungsprofilen im": "Teilnehmer nach Zulassungsprofilen im",
+ "Termin nicht festgelegt": "",
"TODO: Nächste Termine": "TODO: Nächste Termine",
+ "Trainer": "Trainer",
"Trainerunterlagen": "Trainerunterlagen",
- "Wissens - und Verständnisfragen": "Wissens - und Verständnisfragen",
- "Zur Zeit sind keine Termine vorhanden": "Zur Zeit sind keine Termine vorhanden",
- "a": {
- "Alle aufklappen": "Alle aufklappen",
- "AlleTermine": "a.AlleTermine",
- "Begründung": "Begründung",
- "Beurteilungsinstrument anzeigen": "Beurteilungsinstrument anzeigen",
- "Beurteilungskriterium": "Beurteilungskriterium",
- "Bewertung": "Bewertung",
- "Bewertung fortsetzen": "a.Bewertung fortsetzen",
- "Bewertung freigegeben": "Bewertung freigegeben",
- "Bewertung starten": "Bewertung starten",
- "Circle": "Circle",
- "Datum": "Datum",
- "Details anzeigen": "Details anzeigen",
- "Ergebnisse": "Ergebnisse",
- "Ergebnisse abgegeben": "Ergebnisse abgegeben",
- "Ergebnisse anschauen": "Ergebnisse anschauen",
- "Geleitete Fallarbeit": "Geleitete Fallarbeit",
- "Gesamtpunktzahl": "Gesamtpunktzahl",
- "Handlungskompetenzen": "Handlungskompetenzen",
- "Höchstpunktzahl": "Höchstpunktzahl",
- "Kein Circle verfügbar oder ausgewählt": [],
- "KompetenzNavi": "KompetenzNavi",
- "Kompetenznachweis": "Kompetenznachweis",
- "Kompetenznachweise": "Kompetenznachweise",
- "Leistungsziele": "Leistungsziele",
- "Mediathek": "Mediathek",
- "Punkte": "Punkte",
- "Selbsteinschätzung": "Selbsteinschätzung",
- "Selbsteinschätzung anschauen": "a.Selbsteinschätzung anschauen",
- "Selbsteinschätzungen": "Selbsteinschätzungen",
- "Standort": "Standort",
- "Trainer": "Trainer",
- "VorschauTeilnehmer": "Vorschau Teilnehmer",
- "Zwischenstand": "Zwischenstand",
- "competenceCertificateNoUserPoints": "Der Punktestand wird zu einem späteren Zeitpunkt berechnet.",
- "Übersicht": "Übersicht"
- },
- "assignment": {
- "Du musst die Bewertung bis am x um y Uhr abschliessen und freigeben": "Du musst die Bewertung bis am {{x}} um {{y}} Uhr abschliessen und freigeben.",
- "acceptConditionsDisclaimer": "Bedingungen akzeptieren und Ergebnisse abgeben",
- "assessmentDocumentDisclaimer": "Diese geleitete Fallarbeit wird auf Grund des folgenden Beurteilungsinstrument bewertet:",
- "assessmentTitle": "Bewertung",
- "assignmentSubmitted": "Du hast deine Ergebnisse erfolgreich abgegeben.",
- "confirmSubmitPerson": "Hiermit bestätige ich, dass die folgende Person meine Ergebnisse bewerten soll.",
- "confirmSubmitResults": "Hiermit bestätige ich, dass ich die Zusammenfassung meiner Ergebnisse überprüft habe und so abgeben will.",
- "dueDateEvaluation": "Freigabetermin Bewertung",
- "dueDateIntroduction": "Reiche deine Ergebnisse pünktlich ein bis am: ",
- "dueDateNotSet": "Keine Abgabedaten wurden erfasst für diese Durchführung",
- "dueDateSubmission": "Abgabetermin",
- "edit": "Bearbeiten",
- "effortTitle": "Zeitaufwand",
- "evaluationInstrumentDescriptionText": "Die Gesamtpunktzahl und die daraus resultierende Note wird auf Grund des hinterlegeten Beurteilungsinstrument berechnet.",
- "initialSituationTitle": "Ausgangslage",
- "justificationRequiredText": "Hier muss zwingend eine Begründung erfasst werden.",
- "lastChangesNotSaved": "Die letzte Änderung konnte nicht gespeichert werden.",
- "performanceObjectivesTitle": "Leistungsziele",
- "showAssessmentDocument": "Bewertungsinstrument anzeigen",
- "submissionNotificationDisclaimer": "{{name}} wird deine Ergebnisse bewerten. Du wirst per Benachrichtigung informiert, sobald die Bewertung für dich freigegeben wurde.",
- "submissionShowSampleSolution": "Musterlösung anzeigen",
- "submissionShowSampleSolutionText": "Hier findest du eine mögliche Lösung zu deinen Aufgaben. Vorgehen und Prozesse in deiner Organisation können von dieser Lösung abweichen.",
- "submitAssignment": "Ergebnisse abgeben",
- "taskDefinition": "Bearbeite die Teilaufgaben und dokumentiere deine Ergebnisse.",
- "taskDefinitionTitle": "Aufgabenstellung",
- "von x Punkten": "von {{x}} Punkten",
- "x hat die Ergebnisse am y um z Uhr abgegeben": "{{x}} hat die Ergebnisse am {{y}} um {{z}} Uhr abgegeben",
- "x von y Arbeiten abgeschlossen": "{{x}} von {{y}} Arbeiten abgeschlossen",
- "x von y Kompetenznachweis-Elementen abgeschlossen": "{{x}} von {{y}} Kompetenznachweis-Elementen abgeschlossen"
- },
- "circlePage": {
- "Dieser Inhalt gehört zu x": "Dieser Inhalt gehört zu «{{x}}»",
- "Im KompetenzNavi anschauen": "Im KompetenzNavi anzeigen",
- "circleContentBoxTitle": "Das lernst du in diesem Circle",
- "contactExpertButton": "Trainer/-in kontaktieren",
- "contactExpertDescription": "Tausche dich mit der Trainer/-in für den Circle {{circleName}} aus.",
- "documents": {
- "action": "Unterlagen hochladen",
- "chooseLearningSequence": "Bitte wähle eine Lernsequenz aus",
- "chooseName": "Bitte wähle einen Namen",
- "chooseSequence": "Wähle eine Lernsequenz aus",
- "deleteModalTitle": "Unterlage löschen",
- "deleteModalWarning": "Willst du die Unterlage \"{{title}}\" löschen?
Diese Aktion ist nicht umkehrbar.",
- "expertDescription": "Stelle deinen Lernenden zusätzliche Inhalte zur Verfügung.",
- "fileLabel": "Datei",
- "maxFileSize": "Maximale Dateigrösse: 20 MB",
- "modalAction": "Datei auswählen",
- "modalFileName": "Name",
- "modalNameInformation": "Max. 70 Zeichen",
- "selectFile": "Bitte wähle eine Datei aus",
- "title": "Unterlagen",
- "trainerDescription": "Finde auf Teams zusätzliche Inhalte für deinen Unterricht.",
- "trainerLinkSrc": "https://vbvbern.sharepoint.com/sites/myVBV-AFA_K-CI",
- "trainerLinkText": "Inhalte auf Teams anschauen",
- "trainerTitle": "Begleitung für Trainer",
- "uploadErrorMessage": "Beim Hochladen ist ein Fehler aufgetreten. Bitte versuche es erneut.",
- "userDescription": "Hier findest du zusätzliche Unterlagen, die dich beim Lernen in diesem Circle unterstützen."
- },
- "duration": "Dauer",
- "gotQuestions": "Hast du Fragen?",
- "learnMore": "Erfahre mehr dazu"
- },
- "cockpit": {
- "all": "Alle",
- "examsDone": "Abgelegte Prüfungen von Teilnehmer.",
- "feedbacksDone": "Abgeschickte Feedbacks von Teilnehmer.",
- "notifyTask": "Benachrichtigen",
- "notifyTaskDescription": "Teilnehmer benachrichtigen",
- "profileLink": "Profil anzeigen",
- "progress": "Teilnehmende / Status",
- "tasksDone": "Erledigte Transferaufträge von Teilnehmer.",
- "title": "Cockpit",
- "trainerFilesText": "Hier findest du die Trainerunterlagen (Lösungsblätter, Präsentationen etc.) für deinen Circle."
- },
- "competence": {
- "listPageDescription": "competence.listPageDescription"
- },
- "competenceCertificate": {
- "mainTitle": "Kompetenznachweis"
- },
- "competenceCertificates": {
- "mainTitle": "Kompetenznachweise"
- },
- "competences": {
- "assessAgain": "Selbsteinschätzung im Circle «{{x}}» anschauen",
- "assessment": "Einschätzungen",
- "competences": "Kompetenzen",
- "lastImprovements": "Letzte verbesserte Kompetenzen",
- "notAssessed": "Nicht eingeschätzt",
- "title": "KompetenzNavi"
- },
- "constants": {
- "no": "Nein",
- "satisfied": "zufrieden",
- "unsatisfied": "unzufrieden",
- "verySatisfied": "sehr zufrieden",
- "veryUnsatisfied": "sehr unzufrieden",
- "yes": "Ja"
- },
- "dashboard": {
- "courses": "Lehrgang",
- "dueDatesTitle": "Termine",
- "nocourses": "Du wurdest noch keinem Lehrgang zugewiesen.",
- "welcome": "Willkommen, {{name}}"
- },
- "dueDates": {
- "nextDueDates": "Nächste Termine",
- "noDueDatesAvailable": "Keine Termine vorhanden",
- "showAllDueDates": "Alle Termine anzeigen"
- },
- "edoniqTest": {
- "qualifiesForExtendedTime": "Ich bestätige, dass ich Anrecht auf einen Test mit Nachteilsausgleich habe.",
- "qualifiesForExtendedTimeTitle": "Lernende mit Nachteilsausgleich (bewilligungspflichtig)",
- "startTest": "Test starten"
- },
- "feedback": {
- "answers": "Antworten",
- "areYouSatisfied": "Wie zufrieden bist du?",
- "average": "Durchschnitt",
- "circleFeedback": "Feedback zum Circle",
- "completionDescription": "Dein Feedback ist anonym. Dein Vor- und Nachname werden bei deiner Trainer/-in nicht angezeigt.",
- "completionTitle": "Schicke dein Feedback an {{name}}",
- "courseNegativeFeedbackLabel": "Wo siehst du Verbesserungspotential?",
- "coursePositiveFeedbackLabel": "Was hat dir besonders gut gefallen?",
- "feedbackPageInfo": "Teilnehmer haben das Feedback ausgefüllt",
- "feedbackPageTitle": "Feedback zum Lehrgang",
- "feedbackSent": "Dein Feedback wurde abgeschickt",
- "goalAttainmentLabel": "Zielerreichung insgesamt",
- "happy": "Zufrieden",
- "instructorCompetenceLabel": "Wie beurteilst du die Themensicherheit und Fachkompetenz des Kursleiters/der Kursleiterin?",
- "instructorOpenFeedbackLabel": "Was möchtest du dem Kursleiter/der Kursleiterin sonst noch sagen?",
- "instructorRespectLabel": "Wurden Fragen und Anregungen der Kursteilnehmenden ernst genommen und aufgegriffen?",
- "intro": "{{name}}, dein/e Trainer/-in, bittet dich, ihm/ihr Feedback zu geben. Das ist freiwillig, würde aber ihm/ihr helfen, deine Lernerlebniss zu verbessern.",
- "materialsRatingLabel": "Falls ja: Wie beurteilen Sie die Vorbereitungsunterlagen (z.B. eLearning)?",
- "noFeedbacks": "Es wurden noch keine Feedbacks abgegeben",
- "preparationTaskClarityLabel": "Waren die Vorbereitungsaufträge klar und verständlich?",
- "proficiencyLabel": "Wie beurteilst du deine Sicherheit bezüglichen den Themen nach dem Kurs?",
- "questionTitle": "Frage",
- "recommendLabel": "Würdest du den Kurs weiterempfehlen?",
- "satisfactionLabel": "Zufriedenheit insgesamt",
- "sendFeedback": "Feedback abschicken",
- "sentByUsers": "Von {{count}} Teilnehmern ausgefüllt",
- "showDetails": "Details anzeigen",
- "unhappy": "Unzufrieden",
- "veryHappy": "Sehr zufrieden",
- "veryUnhappy": "Sehr unzufrieden"
- },
- "foobar": {
- "hello": "Hallo von der Innoweek"
- },
- "footer": {
- "contact": "Kontakt",
- "contactLink": "https://www.vbv.ch/de/der-vbv/organisation/kontakt",
- "contactText": "Kontakt",
- "copyright": "© 2023 VBV",
- "dataProtectionLink": "https://www.vbv.ch/de/datenschutzbestimmungen",
- "dataProtectionText": "Datenschutzbestimmungen",
- "imprintLink": "https://www.vbv.ch/de/impressum",
- "imprintText": "Impressum"
- },
- "general": {
- "back": "Zurück",
- "backCapitalized": "Zurück",
- "backToCircle": "zurück zum Circle",
- "backToLearningPath": "zurück zum Lernpfad",
- "certificate_one": "Zertifikat",
- "certificate_other": "Zertifikate",
- "circles": "Circles",
- "close": "Schliessen",
- "examResult_one": "Prüfungsresultat",
- "examResult_other": "Prüfungsresultate",
- "exam_one": "Prüfung",
- "exam_other": "Prüfungen",
- "feedback_one": "Feedback",
- "feedback_other": "Feedbacks",
- "im circle x anschauen": "Im Circle «{{x}}» anzeigen",
- "introduction": "Einleitung",
- "learningPath": "Lernpfad",
- "learningSequence": "Lernsequenz",
- "learningUnit": "Lerneinheit",
- "next": "Weiter",
- "nextStep": "Weiter geht's",
- "no": "Nein",
- "notification_one": "Benachrichtigung",
- "notification_other": "Benachrichtigungen",
- "profileLink": "Details anzeigen",
- "save": "Speichern",
- "send": "Senden",
- "settings": "Kontoeinstellungen",
- "shop": "Shop",
- "show": "Anschauen",
- "showAll": "Alle anschauen",
- "start": "Los geht's",
- "submission": "Abgabe",
- "title": "myVBV",
- "transferTask_one": "Transferauftrag",
- "transferTask_other": "Transferaufträge",
- "yes": "Ja"
- },
- "language": {
- "de": "Deutsch",
- "fr": "Français",
- "it": "Italiano"
- },
- "learningContent": {
- "markAsDone": "Als erledigt markieren"
- },
- "learningContentTypes": {
- "attendanceCourse": "Präsenzkurs",
- "casework": "Geleitete Fallarbeit",
- "documents": "Dokumente",
- "edoniqTest": "Wissens- und Verständnisfragen",
- "feedback": "Feedback",
- "learningModule": "Lernmodul",
- "placeholder": "In Umsetzung",
- "prepAssignment": "Vorbereitungsauftrag",
- "reflection": "Reflexion",
- "task": "Aufgabe",
- "test": "Test",
- "text": "Text",
- "video": "Video"
- },
- "learningPathPage": {
- "currentCircle": "Aktueller Circle",
- "listView": "Listenansicht",
- "nextDueDates": "Nächste Termine",
- "nextStep": "Nächster Schritt",
- "pathView": "Pfadansicht",
- "progressText": "Du hast {{ inProgressCount }} von {{ allCount }} Circles bearbeitet",
- "showListView": "Listenansicht anzeigen",
- "topics": "Themen:",
- "welcomeBack": "Willkommen zurück in deinem Lehrgang:"
- },
- "login": {
- "demoLogin": "Demo Login",
- "guidelineFile": "Registrierung_myVBV.pdf",
- "guidelineText": "Erfahre wie du dich als Lernende/r registrieren kannst",
- "login": "Login",
- "ssoLogin": "SSO Login/Registration",
- "ssoText": "Klicke auf den Button, um dich über SSO anzumelden oder zu registrieren.",
- "welcomeText": "Herzlich willkommen auf der Login-Seite für die überbetrieblichen Kurse der kaufmännischen\nAusbildungs- und Prüfungsbranche «Privatversicherung».",
- "welcomeUk": "Willkommen"
- },
- "mainNavigation": {
- "logout": "Abmelden",
- "profile": "Profil"
- },
- "mediaLibrary": {
- "handlungsfelder": {
- "description": "Finde alle Ressourcen der Handlungsfelder wie Lernmedien, Links und andere nützliche Informationen.",
- "title_one": "Handlungsfeld",
- "title_other": "Handlungsfelder"
- },
- "learningMedia": {
- "description": "Finde eine vollständige Liste der Bücher und anderen Medien, auf die im Kurs verwiesen wird.",
- "titel": "Lernmedien"
- },
- "title": "Mediathek"
- },
- "messages": {
- "sendMessage": "Nachricht schreiben"
- },
- "notifications": {
- "load_more": "Mehr laden",
- "no_notifications": "Du hast derzeit keine Benachrichtigungen"
- },
- "selfEvaluation": {
- "instruction": [
- "Überprüfe, ob du in der Lernheinheit",
- "alles verstanden hast.",
- "Lies die folgende Aussage und bewerte sie:"
- ],
- "no": "Das muss ich nochmals anschauen",
- "progressLink": "KompetenzNavi öffnen",
- "progressText": "Schau dein Fortschritt in deinem KompetenzNavi:",
- "selfEvaluation": "Selbsteinschätzung",
- "selfEvaluationNo": "$t(a.Selbsteinschätzung): Muss ich nochmals anschauen.",
- "selfEvaluationYes": "$t(a.Selbsteinschätzung): Ich kann das.",
- "steps": "Schritt {{current}} von {{max}}",
- "title": "Selbsteinschätzung {{title}}",
- "yes": "Ja, ich kann das"
- },
- "settings": {
- "emailNotifications": "Email Benachrichtigungen"
- },
- "uk": {
- "contact": {
- "address": "Laupenstrasse 10, 3008 Bern",
- "team": "Team Nachwuchsentwicklung",
- "title": "Berufsbildungsverband der Versicherungswirtschaft VBV"
- },
- "dashboard": {
- "allClear": "Alles klar?",
- "nextSteps": "Als lernende Person wirst in den kommenden Tagen einem üK-Lehrgang zugewiesen. Dann\nerscheint hier Deine personalisierte Lehrgangs-Box mit den weiteren Informationen.",
- "welcome": "Es hat alles geklappt, du bist nun auf der digitalen Lernumgebung des Berufsbildungsverbands derVersicherungswirtschaft (VBV) registriert!"
- }
- },
+ "TrainingResponsible": "Ausbildungsverantwortlicher",
+ "uk.contact.address": "Laupenstrasse 10, 3008 Bern",
+ "uk.contact.team": "Team Nachwuchsentwicklung",
+ "uk.contact.title": "Berufsbildungsverband der Versicherungswirtschaft VBV",
+ "uk.dashboard.allClear": "Alles klar?",
+ "uk.dashboard.nextSteps": "Als lernende Person wirst in den kommenden Tagen einem üK-Lehrgang zugewiesen. Dann\nerscheint hier Deine personalisierte Lehrgangs-Box mit den weiteren Informationen.",
+ "uk.dashboard.welcome": "Es hat alles geklappt, du bist nun auf der digitalen Lernumgebung des Berufsbildungsverbands derVersicherungswirtschaft (VBV) registriert!",
+ "UnknownRoleKey": "UnknownRoleKey",
"unzufrieden": "unzufrieden",
+ "Vorbedingung": "Vorbedingung",
+ "Vorbereitungsaufgabe": "Vorbereitungsauftrag",
+ "vv.contact.team": "Team Vermittler",
+ "Weiter lernen": "Weiter lernen",
+ "Wichtig: wird die Rechnung von deinem Arbeitgeber bezahlt, dann kannst du zusätzlich die Rechnungsadresse deines Arbeitsgebers erfassen.": "Wichtig: wird die Rechnung von deinem Arbeitgeber bezahlt, dann kannst du zusätzlich die Rechnungsadresse deines Arbeitsgebers erfassen.",
+ "Wir bedauern die Unannehmlichkeiten und danken für dein Verständnis. Bei Fragen steht dir das Team Vermittler gerne zur Verfügung.": "Wir bedauern die Unannehmlichkeiten und danken für dein Verständnis. Bei Fragen steht dir das Team Vermittler gerne zur Verfügung.",
+ "Wissens - und Verständnisfragen": "Wissens - und Verständnisfragen",
+ "Wähle ein Zulassungsprofil, damit du deinen Lehrgang an der richtigen Stelle beginnen kannst": "Wähle ein Zulassungsprofil, damit du deinen Lehrgang an der richtigen Stelle beginnen kannst",
+ "Wähle ein Zulassungsprofil, damit du deinen Lehrgang an der richtigen Stelle beginnen kannst.": "Wähle ein Zulassungsprofil, damit du deinen Lehrgang an der richtigen Stelle beginnen kannst.",
+ "x von y abgeschlossen": "{{x}} von {{y}} abgeschlossen",
"x von y Bewertungen freigegeben": "{{x}} von {{y}} Bewertungen freigegeben",
"x von y Ergebnisse abgegeben": "{{x}} von {{y}} Ergebnisse abgegeben",
"x von y Feedbacks abgegeben": "{{x}} von {{y}} Feedbacks abgegeben",
- "x von y abgeschlossen": "{{x}} von {{y}} abgeschlossen",
- "zufrieden": "zufrieden"
+ "Zu erledigen": "Zu erledigen",
+ "zufrieden": "zufrieden",
+ "Zulassungsprofil": "Zulassungsprofil",
+ "Zur Zeit sind keine Termine vorhanden": "Zur Zeit sind keine Termine vorhanden",
+ "Überbetriebliche Kurse": "Überbetriebliche Kurse"
}
diff --git a/client/src/locales/fr/translation.json b/client/src/locales/fr/translation.json
index 1c60634f..40bf3146 100644
--- a/client/src/locales/fr/translation.json
+++ b/client/src/locales/fr/translation.json
@@ -1,364 +1,670 @@
{
+ "20%": "",
+ "40%": "",
+ "60%": "",
+ "80%": "",
+ "100%": "",
+ "a.": "",
+ "a.a.AlleCircle": "",
+ "a.Abbrechen": "Annuler",
+ "a.Abgabetermin": "Date de remise",
+ "a.Abgezogene Punkte": "Points déduits",
+ "a.Adresse": "Adresse",
+ "a.Aktuell begleitest du niemanden als Lernbegleitung.": "Actuellement, vous n'accompagnez personne en tant que mentor d'apprentissage.",
+ "a.Aktuell begleitest du niemanden als Praxisbildner.": "Actuellement, vous n'accompagnez personne en tant que formateur/-trice pratique.",
+ "a.Aktuell bist du leider keiner Durchführung zugewiesen.": "Actuellement, vous n'êtes malheureusement affecté à aucune session.",
+ "a.Aktuell hast du noch keine Person als Lernbegleitung eingeladen.": "Actuellement, tu n'as invité aucune personne comme tuteur.",
+ "a.Aktuell hast du noch keine Person als Lernbegleitung eingeladen. Lade jetzt jemanden ein.": "Actuellement, tu n'as invité aucune personne comme tuteur. Invite quelqu'un maintenant.",
+ "a.Aktuell hast du noch keine Person als Praxisbildner eingeladen.": "Actuellement, tu n'as pas encore invité de personne comme formateur/-trice pratique.",
+ "a.Aktuell hast du noch keine Person als Praxisbildner eingeladen. Lade jetzt jemanden ein.": "",
+ "a.Aktueller Lehrgang": "Cours en cours",
+ "a.Allbranche": "Allbranche",
+ "a.Alle": "Tout",
+ "a.Alle aufklappen": "Tout déplier",
+ "a.Alle Lehrgang": "",
+ "a.Alle Lehrgänge": "",
+ "a.Alle Lehrgänge anzeigen": "Afficher tous les cours",
+ "a.Alle Personen anzeigen": "Afficher toutes les personnes",
+ "a.Alle Termine anzeigen": "Afficher tous les dates",
+ "a.Alle zuklappen": "Ferme tout",
+ "a.AlleCircle": "Circle: Tous",
+ "a.AlleDurchführungen": "Opérations: Tous",
+ "a.AlleGenerationen": "Générations : Toutes",
+ "a.AlleKreise": "",
+ "a.AlleRegionen": "",
+ "a.AlleTermine": "Rendez-vous",
+ "a.AlleTypen": "Tous les types",
+ "a.Allgemeine Zufriedenheit": "Satisfaction générale",
+ "a.Als Excel exportieren": "Exporter en Excel",
+ "a.An Durchführung teilnehmen": "Participer à la session",
+ "a.Anmelden": "Connexion",
+ "a.Anwesenheit": "Présence",
+ "a.Arbeiten": "Travaux",
+ "a.assignment.evaluationFeedbackDescriptionText": "Valide ton feedback pour qu'il puisse être partagé aux participants.",
+ "a.assignment.evaluationInstrumentDescriptionTextFeedback": "Veuillez soutenir {{name}} et donner votre avis sur la mission.",
+ "a.Aufgabe": "Tâche",
+ "a.Aufgaben": "Tâches",
+ "a.Auswählen": "Choisir",
+ "a.Bearbeiten": "Modifier",
+ "a.Begründung": "Justification",
+ "a.Bestanden": "Réussi",
+ "a.Beurteilungsinstrument anzeigen": "Afficher l'outil d'évaluation",
+ "a.Beurteilungskriterium": "Critère d'évaluation",
+ "a.Bewertung": "Évaluation",
+ "a.Bewertung abschliessen": "Évaluation complète",
+ "a.Bewertung ansehen": "Voir l'avis",
+ "a.Bewertung bearbeiten": "",
+ "a.Bewertung bearbeitet": "",
+ "a.Bewertung erneut bearbeitet": "",
+ "a.Bewertung fortsetzen": "Continuer l'évaluation",
+ "a.Bewertung Freigabe": "Libération de l'évaluation",
+ "a.Bewertung freigeben": "Libérer l'évaluation",
+ "a.Bewertung freigegeben": "Évaluations validée/s",
+ "a.Bewertung starten": "Continuer l'évaluation",
+ "a.Bewertung von x y": "Évaluation de {{x}} {{y}}",
+ "a.Bild hochladen": "Télécharger une image",
+ "a.Bitte folgende Felder ausfüllen": "Veuillez remplir les champs suivants",
+ "a.Bitte überprüfe deine Eingaben. Es sind Fehler in deinem Formular aufgetreten.": "Veuillez vérifier vos saisies. Des erreurs sont survenues dans votre formulaire.",
+ "a.Circle": "Circle",
+ "a.Cockpit anschauen": "Voir le cockpit",
+ "a.competenceCertificateNoUserPoints": "Le score sera calculé à un moment ultérieur.",
+ "a.confirmSubmitPersonPraxisAssignment": "La personne suivante doit formuler un feedback sur mes résultats.",
+ "a.Damit du mit diesem Lehrgang starten kannst, musst du einer Durchführung zugewiesen werden. Nimm dafür deinem üK-Verantwortlichen oder unserem {support} Kontakt auf.": "Pour commencer ce cours, vous devez être assigné à une session. Pour cela, veuillez contacter votre responsable CI ou notre {support}.",
+ "a.Damit du myVBV nutzen kannst, brauchst du ein Konto.": "Pour utiliser myVBV, vous devez créer un compte.",
+ "a.Das muss ich nochmals anschauen": "Il faut que je regarde cela encore une fois de plus près",
+ "a.Das wurde mit dir geteilt": "Cela a été partagé avec toi",
+ "a.Datei auswählen": "Sélectionner le fichier",
+ "a.Datei hochladen": "Télécharger le fichier",
+ "a.Datei kann nicht gespeichert werden.": "Impossible d'enregistrer le fichier.",
+ "a.Datum": "Date",
+ "a.Debit-/Kreditkarte/Twint": "Carte de débit/crédit / Twint",
+ "a.Dein Feedback für x y wurde freigegeben.": "Ton feedback pour {{x}} {{y}} a été validé.",
+ "a.Deine Bewertung für x y wurde freigegeben.": "Ton évaluation de {{x}} {{y}} a été validée.",
+ "a.Deine Fremdeinschätzung": "Ton évaluation externe",
+ "a.Deine Selbsteinschätzung": "Ton auto-évaluation",
+ "a.Deine Änderungen wurden gespeichert": "Tes modifications ont été enregistrées",
+ "a.Der Lehrgang und die Prüfung zum Erwerb des Verbandszertifikats als Versicherungsvermittler/-in.": "Le cours et l'examen pour obtenir le certificat d'association comme courtier/agent d'assurance.",
+ "a.Der Preis für den Lehrgang {course} beträgt {price}.": "Le prix de la formation {course} est de {price} hors TVA.",
+ "a.Details anschauen": "Voir les détails",
+ "a.Details anzeigen": "Afficher les détails",
+ "a.Deutsch": "Allemand",
+ "a.Die Anwesenheit wurde definitiv bestätigt": "La présence a été confirmée définitivement",
+ "a.Die Einladung konnte nicht akzeptiert werden. Bitte melde dich beim Support.": "L'invitation n'a pas pu être acceptée. Veuillez contacter le support.",
+ "a.Die Einladung wurde noch nicht angenommen.": "L'invitation n'a pas encore été acceptée.",
+ "a.Die Zahlung für den Lehrgang «{course}» wurde erfolgreich ausgeführt.": "Le paiement pour le cours «{course}» a été effectué avec succès.",
+ "a.Die überbetrieblichen Kurse der kaufmännischen Ausbildungs- und Prüfungsbranche 'Privatversicherung'.": "Les cours interentreprises du secteur de la formation et des examens commerciaux 'Assurance privée'.",
+ "a.Du hast alles erledigt.": "Tu as tout fini.",
+ "a.Du hast deine Fremdeinschätzung freigegeben": "Tu as autorisé ton évaluation externe.",
+ "a.Du hast deine Selbsteinschätzung erfolgreich mit FULL_NAME geteilt.": "Tu as partagé avec succès ton auto-évaluation avec {{FULL_NAME}}.",
+ "a.Du hast die Einladung von {name} erfolgreich akzeptiert.": "Tu as accepté avec succès l'invitation de {name}.",
+ "a.Du hast erfolgreich ein Konto für EMAIL erstellt.": "Vous avez créé un compte avec succès pour {{email}}.",
+ "a.Du kannst deine Selbsteinschätzung mit deiner Lernbegleitung teilen, damit sie eine Fremdeinschätzung vornimmt.": "Tu peux partager ton auto-évaluation avec ton accompagnateur d'apprentissage afin qu'il puisse effectuer une évaluation externe.",
+ "a.Durchfuehrung": "Opérations",
+ "a.Durchführung": "Formations / cours suivis",
+ "a.Durchführungen": "Opérations",
+ "a.Durchschnittsnote": "Note moyenne",
+ "a.E-Mail Adresse": "Adresse e-mail",
+ "a.Einladung": "Invitation",
+ "a.Einladung abschicken": "Envoyer l'invitation",
+ "a.Email": "",
+ "a.Entfernen": "Supprimer",
+ "a.Erfahrungsnote üK": "Note d’expérience CI",
+ "a.Ergebnis bewerten": "Évaluer le résultat",
+ "a.Ergebnisse": "Résultats",
+ "a.Ergebnisse abgegeben": "Résultats remis",
+ "a.Ergebnisse anschauen": "Voir les résultats",
+ "a.Ergebnisse bewerten": "Évaluer les résultats",
+ "a.Ergebnisse teilen": "Partager les résultats",
+ "a.Erneut bearbeiten": "Modifier à nouveau",
+ "a.Experte": "",
+ "a.Feedback abschliessen": "Terminer le feedback",
+ "a.Feedback ansehen": "Voir le feedback",
+ "a.Feedback erneut bearbeitet": "",
+ "a.Feedback fortsetzen": "Poursuivre le feedback",
+ "a.Feedback Freigabe": "Validation du feedback",
+ "a.Feedback freigeben": "Valider le feedback",
+ "a.Feedback freigegeben": "Feedback validé",
+ "a.Feedback geben": "Donner un feedback",
+ "a.Feedback Teilnehmer": "Feedback des participants",
+ "a.Feedback von x y": "Feedback de {{x}} {{y}}",
+ "a.feedback.introductionVV": "Nous te demandons ton feedback. Cela nous aide à améliorer ton expérience d'apprentissage.",
+ "a.Fehler bei der Zahlung. Bitte versuche es erneut oder kontaktiere uns": "Erreur lors du paiement. Veuillez réessayer ou choisir un autre mode de paiement.",
+ "a.Fehler bei der Zahlung. Bitte versuche es erneut oder wähle eine andere Zahlungsmethode.": "Erreur lors du paiement. Veuillez réessayer ou choisir un autre mode de paiement.",
+ "a.Fehlermeldung": "Message d'erreur",
+ "a.Firmenanschrift": "Adresse de l'entreprise",
+ "a.Firmenname": "Nom de l'entreprise",
+ "a.Franzosisch": "Français",
+ "a.Fremdeinschätzung anzeigen": "Valutazione esterna",
+ "a.Fremdeinschätzung freigeben": "Autoriser l'évaluation externe",
+ "a.Fremdeinschätzung von FEEDBACK_PROVIDER_NAME": "Évaluation externe de {{FEEDBACK_PROVIDER_NAME}}",
+ "a.Fremdeinschätzung vornehmen": "Effectuer une évaluation externe",
+ "a.Fremdeinschätzungen": "Évaluations externes",
+ "a.FULL_NAME wird eine Fremdeinschätzung für dich vornehmen. Du wirst per Benachrichtigung informiert, sobald die Fremdeinschätzung für dich freigegeben wurde.": "{{FULL_NAME}} effectuera une évaluation externe pour toi. Tu seras informé(e) par notification dès que l'évaluation externe aura été rendue disponible pour toi.",
+ "a.Geburtsdatum": "Date de naissance",
+ "a.Geleitete Fallarbeit": "Étude de cas dirigée",
+ "a.Generation": "Génération",
+ "a.Gesamtpunktzahl": "Score total",
+ "a.Geschäftsdaten": "Données commerciales",
+ "a.Gesellschaft": "Compagnie d'assurance",
+ "a.Gleich wie die Firmenanschrift": "Identique à l'adresse de l'entreprise",
+ "a.Gleich wie die Privatadresse": "Identique à l'adresse privée",
+ "a.Gratuliere!": "Félicitations !",
+ "a.Grund": "Raison",
+ "a.Hallo {userFirstName}, wähle jetzt deinen Lehrgang aus": "Bonjour {userFirstName}, choisis maintenant ton cours:",
+ "a.Handlungskompetenzen": "Compétences opérationnelles",
+ "a.Hast du Fragen? Kontaktiere uns": "As-tu des questions ? Contacte-nous",
+ "a.Hast du Fragen? Schau dir unsere FAQ an oder kontaktiere uns": "Vous avez des questions ? Consultez notre {faq} ou contactez-nous",
+ "a.Hast du schon ein Konto?": "Avez-vous déjà un compte?",
+ "a.Hausnummmer": "Numéro de maison",
+ "a.Hier kannst du ausschliesslich mit einer Kreditkarte bezahlen.": "",
+ "a.Hier kannst du Personen einladen, damit sie deine Lernbegleitung werden. Zudem siehst du jederzeit eine Übersicht aller Personen, die du bereits als Lernbegleitung hinzugefügt hast.": "Ici, tu peux inviter des personnes pour devenir ton tuteur. De plus, tu peux toujours voir un aperçu de toutes les personnes que tu as déjà ajoutées comme tuteurs.",
+ "a.Höchstpunktzahl": "Score maximum",
+ "a.Ich kann das": "Je maîtrise cette question",
+ "a.Italienisch": "Italien",
+ "a.Ja, NAME kann das.": "Oui, {{NAME}} peut le faire",
+ "a.Jetzt mit Lehrgang starten": "Commencez maintenant le cours",
+ "a.Kann FULLNAME das?": "Peut {{FULLNAME}} faire cela?",
+ "a.Kein Circle verfügbar oder ausgewählt.": "Aucun Circle disponible ou sélectionné.",
+ "a.Keine Angabe": "Aucune indication",
+ "a.Kommentar": "",
+ "a.Kommentar erfassen": "",
+ "a.Kompetenznachweis": "Contrôle de compétences",
+ "a.Kompetenznachweis-Elemente": "Éléments de contrôle",
+ "a.Kompetenznachweise": "Contrôles de compétences",
+ "a.KompetenzNavi": "NaviCompétence",
+ "a.Konto erstellen": "Créer un compte",
+ "a.Kosten": "Coûts",
+ "a.Kosten aller Jahre ansehen": "Voir les coûts de toutes les années",
+ "a.Kosten in 2024": "",
+ "a.Krankenzusatzversicherung": "Assurance maladie complémentaire",
+ "a.Krankenzusatzversicherungen": "Assurances maladie complémentaires",
+ "a.Lade ein Profilbild hoch, damit dich andere Personen auf den ersten Blick erkennen.": "Téléchargez une photo de profil pour que les autres puissent vous reconnaître au premier coup d'œil.",
+ "a.Laden...": "Chargement...",
+ "a.Land": "Pays",
+ "a.Leben": "Vie",
+ "a.Lehrgang": "Formation",
+ "a.Lehrgang kaufen": "Acheter le cours",
+ "a.Leistungsziel": "Objectif de valutazione",
+ "a.Leistungsziele": "Objectif évaluateur",
+ "a.Lernbegleiter": "",
+ "a.Lernbegleitung": "Tuteur",
+ "a.Lernbegleitung auswählen": "Tutorat sélectionner",
+ "a.Lernbegleitung einladen": "Inviter un tuteur",
+ "a.Liste anzeigen": "Afficher la liste",
+ "a.Mach nun weiter mit dem nächsten Schritt.": "Passez à l'étape suivante.",
+ "a.Maximale Dateigrösse": "Taille maximale du fichier",
+ "a.Mediathek": "Médiathèque",
+ "a.Mehr erfahren": "En savoir plus",
+ "a.Meine Lernbegleitung": "Mon accompagnement d'apprentissage",
+ "a.mit Abzug": "y compris la déduction",
+ "a.Mit dem Kauf erhältst du Zugang auf den gesamten Kurs (inkl. Prüfung).": "L'achat te donne accès au parcours d'apprentissage et aux médias d'apprentissage.",
+ "a.Mit Kreditkarte bezahlen": "Payer avec une carte de débit/crédit/Twint",
+ "a.Mit Rechnung bezahlen": "Payer par facture",
+ "a.Mögliche Formate": "Formats possibles",
+ "a.Nachname": "Nom de famille",
+ "a.Name": "Nom",
+ "a.Nein, NAME muss das nochmals anschauen.": "Non, {{NAME}} doit revoir cela",
+ "a.Neue Lernbegleitung einladen": "Inviter un nouveau tuteur",
+ "a.Nicht Bestanden": "Échoué",
+ "a.Nicht bewertet": "Non évalué",
+ "a.Nichtleben": "Non-vie",
+ "a.Note": "Note",
+ "a.NUMBER Elemente abgeschlossen": "{NUMBER} éléments terminés",
+ "a.NUMBER Präsenztage abgeschlossen": "{NUMBER} jours de présence complétés",
+ "a.NUMBER Teilnehmer anwesend": "{NUMBER} participants présents",
+ "a.Nächste Termine": "",
+ "a.OldCircle": "",
+ "a.Optionale Anwesenheit": "Présence facultative",
+ "a.Ort": "Ville",
+ "a.Personen": "Personnes",
+ "a.Personen, die du begleitest": "Personnes que tu accompagnes",
+ "a.Persönliche Informationen": "Informations personnelles",
+ "a.PLZ": "Code postal",
+ "a.Praxisauftrag": "Exercice pratique",
+ "a.Praxisaufträge anschauen": "Voir les missions pratiques",
+ "a.Praxisbildner": "Formateur pratique",
+ "a.present von total Teilnehmenden anwesend": "{{present}} sur {{total}} participants présents",
+ "a.Privatadresse": "Adresse privée",
+ "a.Profil anzeigen": "Afficher le profil",
+ "a.Profil bearbeiten": "Modifier le profil",
+ "a.Profil ergänzen": "Compléter le profil",
+ "a.Profilbild": "Photo de profil",
+ "a.Präsenztag": "Jour de présence",
+ "a.Punkte": "points",
+ "a.Punkte aus Bewertung": "Points de l'évaluation",
+ "a.PunkteVonDaniel": "",
+ "a.PunkteVonDaniel123": "",
+ "a.Rechnung": "Facture",
+ "a.RechnungPaymentMethodDescription": "",
+ "a.Rechnungsadresse": "Adresse de facturation",
+ "a.Rechnungsadresse hinzufügen": "Ajouter une adresse de facturation",
+ "a.Rechnungsadresse von {organisation}": "Adresse de facturation de {{organisation}}",
+ "a.Rechnungsadresse von {organisation} hinzufügen": "Ajouter l'adresse de facturation de {{organisation}}",
+ "a.Regionenleiter": "",
+ "a.Resultat": "Résultat",
+ "a.Schliessen": "",
+ "a.Selbst- und Fremdeinschätzungen": "Auto-évaluations et évaluations externes",
+ "a.Selbsteinschätzung": "Auto-évaluation",
+ "a.Selbsteinschätzung anschauen": "Voir l'auto-évaluation",
+ "a.Selbsteinschätzung anzeigen": "Afficher l'auto-évaluation",
+ "a.Selbsteinschätzung geteilt": "Auto-évaluation partagée",
+ "a.Selbsteinschätzung mit MENTOR_NAME teilen": "Partager l'auto-évaluation avec {{MENTOR_NAME}}",
+ "a.Selbsteinschätzung teilen": "Partager l'auto-évaluation",
+ "a.Selbsteinschätzung von FEEDBACK_REQUESTER_NAME": "Auto-évaluation de {{FEEDBACK_REQUESTER_NAME}}",
+ "a.Selbsteinschätzungen": "Auto-évaluations",
+ "a.Selbsteinschätzungen geteilt": "Auto-évaluations partagées",
+ "a.So startest du mit diesem Lehrgang": "C'est ainsi que tu commences ce parcours d'apprentissage",
+ "a.Standort": "Emplacement",
+ "a.Statistik": "",
+ "a.Statistik für alle Lernenden": "",
+ "a.Stelle deinen Lernenden zusätzliche Inhalte zur Verfügung.": "Proposez à vos participants du contenu supplémentaire",
+ "a.Strasse": "Rue",
+ "a.Super, nun ist alles bereit. Du bist der Durchführung «{course}» zugewiesen und kannst mit dem Lehrgang starten.": "Super, tout est prêt maintenant. Vous êtes assigné à la session «{{course}}» et pouvez commencer le cours.",
+ "a.Teilnehmer": "Participants",
+ "a.Teilnehmer im 2024": "",
+ "a.Telefonnummer": "Numéro de téléphone",
+ "a.Telefonnummer hat das falsche Format": "",
+ "a.Termin": "Date",
+ "a.Termine": "Dates",
+ "a.Total {NUMBER} Antworten": "Total {NUMBER} réponses",
+ "a.Trainer": "Formateur / Formatrice",
+ "a.Um die Zahlung vornehmen zu können, benötigen wir deine Privatadresse. Optional kannst du die Rechnungsadresse deiner Gesellschaft hinzufügen.": "Pour pouvoir effectuer le paiement, nous avons besoin de ton adresse privée. Après le paiement, tu recevras alors une confirmation de comptabilisation par e-mail.",
+ "a.Ungerundete Note": "Note (non arrondie)",
+ "a.Unterlagen": "Documents",
+ "a.Unterlagen für Teilnehmenden": "Documents pour les participants",
+ "a.Unternehmen": "Entreprise",
+ "a.VALUE von MAXIMUM": "{{VALUE}} sur {{MAXIMUM}}",
+ "a.Versicherungsvermittler/-in": "Intermédiaire d’assurance AFA",
+ "a.Vorname": "Prénom",
+ "a.Vorschau Teilnehmer": "Vue des participants",
+ "a.VorschauTeilnehmer": "Vue des participants",
+ "a.Wegleitung üK": "Directives CI",
+ "a.wegleitungUkUrl": "https://www.vbv.ch/fileadmin/vbv/Dokumente/Bildungsabschluesse/KV/Wegleitung_ueK_240215_fr_V2.pdf",
+ "a.Weiter zur Zahlung": "",
+ "a.Wir haben per E-Mail eine Bestätigung an {email} geschickt.": "Nous avons envoyé une confirmation par e-mail à {email}.",
+ "a.Wähle ein Zulassungsprofil, damit du deinen Lehrgang an der richtigen Stelle beginnen kannst.": "Choisis un profil d'admission pour que tu puisses commencer ta formation au bon endroit.",
+ "a.Wähle ein Zulassungsprofil, damit du deinen Lehrgang an der richtigen Stelle beginnen kannst. Du kannst ihn später jederzeit ändern.": "Sélectionne un profil d'admission pour que tu puisses commencer ta formation au bon endroit. Tu peux le modifier à tout moment par la suite.",
+ "a.Wähle hier den Namen der Gesellschaft aus, in der du arbeitest. So können dich andere Personen einfacher finden.": "Sélectionnez ici le nom de la société dans laquelle vous travaillez. Cela permettra aux autres de vous trouver plus facilement.",
+ "a.xOfY Punkten erreicht": "{xOfY} points atteints",
+ "a.Zahlungsart": "Mode de paiement",
+ "a.Zu erledigen": "À faire",
+ "a.Zulassungsprofil": "Profil d'admission",
+ "a.Zulassungsprofil auswählen": "Choisir le profil d'admission",
+ "a.Zum Unterlagen-Upload": "Télécharger des documents",
+ "a.Zurück": "",
+ "a.Zwischenstand": "Point intermédiaire",
+ "a.{AVG} von {MAX}": "{AVG} de {MAX}",
+ "a.{NUMBER} Bestanden": "{NUMBER} réussi",
+ "a.{NUMBER} Das kann ich": " {NUMBER} je peux faire ça",
+ "a.{NUMBER} Das will ich nochmals anschauen": "{NUMBER} je veux revoir ça",
+ "a.Überbetriebliche Kurse": "Cours interentreprises",
+ "a.Überprüfe deine Eingaben unten und gib anschliessend deine Fremdeinschätzung für FEEDBACK_REQUESTER frei": "Vérifie tes saisies ci-dessous et libère ensuite ton évaluation externe pour {{FEEDBACK_REQUESTER}}.",
+ "a.Übersicht": "Aperçu",
+ "a.Übersicht anschauen": "Consulter l'aperçu",
+ "Abgabe": "Remise",
+ "Abgabetermin Ergebnisse:": "Date de la remise des résultats :",
"Alle": "Tout",
- "Anwesenheit Präsenzkurse": "Présence aux cours",
+ "Anwesenheit": "Présence",
"Anwesenheit bestätigen": "Confirmer la présence",
+ "Anwesenheit Präsenzkurse": "Présence aux cours",
"Anwesenheit prüfen": "Vérifier la présence",
"Anwesenheitskontrolle Präsenzkurse": "Contrôle de présence aux cours",
+ "assignment.acceptConditionsDisclaimer": "Accepter les conditions et remettre les résultats",
+ "assignment.assessmentDocumentDisclaimer": "Cette étude de cas dirigée est évaluée par l’outil suivant :",
+ "assignment.assessmentTitle": "Évaluation",
+ "assignment.assignmentSubmitted": "Tes résultats ont bien été transmis.",
+ "assignment.confirmSubmitPerson": "Oui, la personne suivante devrait évaluer mes résultats.",
+ "assignment.confirmSubmitResults": "Oui, je soumettrai mes résultats.",
+ "assignment.Du musst die Bewertung bis am x um y Uhr abschliessen und freigeben": "Vous devez terminer et valider l'évaluation avant le {{x}} à {{y}} heures.",
+ "assignment.dueDateEvaluation": "Date de libération de l'évaluation",
+ "assignment.dueDateIntroduction": "Envoie tes résultats dans les délais avant le:",
+ "assignment.dueDateNotSet": "Aucune date de remise n’a été spécifiée pour cette opération.",
+ "assignment.dueDateSubmission": "Date de remise",
+ "assignment.dueDateTitle": "assignment.dueDateTitle",
+ "assignment.edit": "Traiter",
+ "assignment.effortTitle": "Temps nécessaire",
+ "assignment.evaluationFeedback": "Feedback",
+ "assignment.evaluationInstrumentDescriptionText": "Le score total et la note en résultant sont calculés sur la base de l'outil d'évaluation enregistré.",
+ "assignment.evaluationReason": "Raison",
+ "assignment.feedbackRequiredText": "Saisis ici tes commentaires.",
+ "assignment.initialSituationTitle": "Situation initiale",
+ "assignment.justificationRequiredText": "Ici, une justification doit impérativement être saisie.",
+ "assignment.lastChangesNotSaved": "La dernière modification n’a pas pu être enregistrée.",
+ "assignment.performanceObjectivesTitle": "Objectifs",
+ "assignment.showAssessmentDocument": "Afficher l’outil d’évaluation",
+ "assignment.submissionNotificationDisclaimer": "{{name}} va procéder à l’évaluation de tes résultats. Tu recevras une notification dès que l’évaluation aura été validée et que tu pourras la consulter.",
+ "assignment.submissionShowSampleSolution": "Afficher la solution-type",
+ "assignment.submissionShowSampleSolutionText": "Tu trouveras ici une solution possible pour tes tâches. La procédure et les processus de ton organisation peuvent différer de cette solution.",
+ "assignment.submitAssignment": "Remettre les résultats",
+ "assignment.taskDefinition": "Résous les exercices et documente tes résultats.",
+ "assignment.taskDefinitionTitle": "Énoncé du problème",
+ "assignment.von x Punkten": "sur {{x}} points",
+ "assignment.x hat die Ergebnisse am y um z Uhr abgegeben": "{{x}} a soumis les résultats le {{y}} à {{z}} heures",
+ "assignment.x von y Arbeiten abgeschlossen": "{{x}} sur {{y}} épreuves terminées",
+ "assignment.x von y Kompetenznachweis-Elementen abgeschlossen": "{{x}} sur {{y}} éléments de contrôle de compétences terminés",
+ "Aufgrund von Problemen beim Zahlungsanbieter ist ein Erwerb der myVBV-Lizenz derzeit nur mit TWINT möglich. Wir arbeiten mit Hochdruck an der Lösung des Problems. ": "En raison de problèmes avec le fournisseur de paiement, l'acquisition de la licence myAVA n'est actuellement possible qu'avec TWINT. Nous travaillons d'arrache-pied pour résoudre le problème. ",
+ "Ausbildungsverantwortlicher": "",
"Benutzername": "Nom d’utilisateur",
+ "Berufsbildner": "",
+ "Bestanden": "",
+ "Bewertung von x y": "Évaluation de {{x}} {{y}}",
+ "Circle": "",
+ "circlePage.circleContentBoxTitle": "Ce que tu vas apprendre dans ce Circle",
+ "circlePage.contactExpertButton": "Contacter le formateur / la formatrice",
+ "circlePage.contactExpertDescription": "Échanger avec le formateur / la formatrice si tu as des questions sur le Circle {{circleName}}.",
+ "circlePage.contactLearningMentorButton": "Contacter le tuteur / la tutrice",
+ "circlePage.contactLearningMentorDescription": "Échange avec ton tuteur / ta tutrice.",
+ "circlePage.Dieser Inhalt gehört zu x": "Ce contenu appartient à «{{x}}»",
+ "circlePage.documents.action": "Télécharger les documents",
+ "circlePage.documents.chooseLearningSequence": "Sélectionne une séquence",
+ "circlePage.documents.chooseName": "Sélectionne un nom",
+ "circlePage.documents.chooseSequence": "Sélectionne une séquence",
+ "circlePage.documents.deleteModalTitle": "Supprimer les documents",
+ "circlePage.documents.deleteModalWarning": "Veux-tu \"{{title}}\" supprimer les documents ?
Cette action est irréversible.",
+ "circlePage.documents.expertDescription": "Mets des contenus supplémentaires à la disposition de tes apprenants.",
+ "circlePage.documents.fileLabel": "Fichier",
+ "circlePage.documents.maxFileSize": "Taille maximale du fichier : 50 Mo",
+ "circlePage.documents.modalAction": "Sélectionner le fichier",
+ "circlePage.documents.modalFileName": "Nom",
+ "circlePage.documents.modalNameInformation": "Max. 70 signes",
+ "circlePage.documents.selectFile": "Sélectionne un fichier",
+ "circlePage.documents.title": "Documents",
+ "circlePage.documents.trainerDescription": "Sur Teams, tu trouveras des contenus supplémentaires pour ton cours.",
+ "circlePage.documents.trainerLinkSrc": "https://vbvbern.sharepoint.com/sites/myVBV-AFA_K-CI",
+ "circlePage.documents.trainerLinkText": "Regarder les contenus sur Teams",
+ "circlePage.documents.trainerTitle": "Accompagnement pour le formateur / la formatrice",
+ "circlePage.documents.uploadErrorMessage": "Une erreur est survenue lors du téléchargement. Essaie à nouveau.",
+ "circlePage.documents.userDescription": "Tu trouves ici des documents complémentaires qui peuvent d’être utiles pour ce Circle.",
+ "circlePage.duration": "Durée",
+ "circlePage.gotQuestions": "As-tu des questions?",
+ "circlePage.Im KompetenzNavi anschauen": "Afficher dans la « NaviCompétence »",
+ "circlePage.learnMore": "Pour en savoir plus",
+ "Cockpit anschauen": "Montrer le Cockpit",
+ "cockpit.all": "Tous",
+ "cockpit.examsDone": "Examens remis par les participants.",
+ "cockpit.feedbacksDone": "Retours envoyés par les participants.",
+ "cockpit.notifyTask": "Notifier",
+ "cockpit.notifyTaskDescription": "Notifier les participants",
+ "cockpit.profileLink": "Afficher le profil",
+ "cockpit.progress": "Personne participante / Statut",
+ "cockpit.tasksDone": "Exercices d’application terminés par les participants.",
+ "cockpit.title": "Cockpit",
+ "cockpit.trainerFilesText": "Tu trouves ici les documents de formation (feuilles de solution, présentations, etc.) pour ton Circle.",
+ "competence.listPageDescription": "Tu trouveras ici un aperçu de toutes les compétences opérationnelles et des objectifs évaluateurs qui correspondent à ta formation.",
+ "competenceCertificate.mainTitle": "Contrôle de compétences",
+ "competenceCertificates.mainTitle": "Contrôles de compétences",
+ "competences.assessAgain": "Voir l'auto-évaluation dans le Circle «{{x}}»",
+ "competences.assessment": "Évaluations",
+ "competences.competences": "Compétences",
+ "competences.lastImprovements": "Dernières compétences améliorées",
+ "competences.notAssessed": "Compétence non évaluée",
+ "competences.title": "NaviCompétence",
+ "constants.no": "Non",
+ "constants.satisfied": "Satisfait(e)",
+ "constants.unsatisfied": "Insatisfait(e)",
+ "constants.verySatisfied": "Très satisfait(e)",
+ "constants.veryUnsatisfied": "Très insatisfait(e)",
+ "constants.yes": "Oui",
+ "dashboard.courses": "Formation",
+ "dashboard.nocourses": "Tu n’as été affecté(e) à aucune formation encore.",
+ "dashboard.welcome": "Bienvenue, {{name}}",
+ "Der Preis für den Lehrgang «Versicherungsvermittler-/in VBV» beträgt CHF 300 exkl. MWSt.. Mit dem Kauf erhältst du Zugang zum Lernpfad und den Lernmedien.": "Le prix de la formation \"Intermédiaire d'assurance/intermédiaire AFA\" est de 300 CHF hors TVA. L'achat te donne accès au parcours d'apprentissage et aux médias d'apprentissage.",
+ "dueDates.noDueDatesAvailable": "Pas de dates disponibles",
+ "dueDates.showAllDueDates": "Afficher tous les dates",
+ "Durchführung": "Volée",
+ "edoniqTest.checkboxTitle": "Accepter les conditions et effectuer le test",
+ "edoniqTest.deadlineInPast": "Le test ne peut plus être effectué car la date limite de soumission est dépassée.",
+ "edoniqTest.qualifiesForExtendedTime": "Je confirme que j'ai droit à un test avec compensation des inégalités.",
+ "edoniqTest.qualifiesForExtendedTimeTitle": "Apprenti-e-s avec compensation des inégalités (soumis à autorisation)",
+ "edoniqTest.startTest": "Démarrer l'essai",
+ "edoniqTest.submitDateDescription": "Soumettez vos résultats à temps jusqu'au {{x}}.",
+ "edoniqTest.testDescription": "Effectuez le test suivant. Le test ne peut être effectué qu'une seule fois et est pertinent pour la note.",
+ "edoniqTest.testSubmitted": "Vous avez terminé ce test",
+ "edoniqTest.viewResults": "Voir les résultats",
+ "Elemente zu erledigen": "Eléments à faire",
"Ergebnisse anschauen": "Consulter les résultats",
+ "Ergebnisse anzeigen": "Afficher les résultats",
"Feedback": "Feedback",
"Feedback anschauen": "Consulter le feedback",
- "Hier überprüfst und bestätigst du die Anwesenheit deiner Teilnehmenden": [],
+ "feedback.answers": "Réponses",
+ "feedback.areYouSatisfied": "Commentaires sur le cours",
+ "feedback.average": "Moyen",
+ "feedback.circleFeedback": "Feed-back sur le Circle",
+ "feedback.completionDescription": "Tes commentaires seront anonymes. Ton nom et ton prénom ne seront pas indiqués au formateur / à la formatrice.",
+ "feedback.completionDescriptionVV": "Ton feedback est anonyme et ton nom et ton prénom n'apparaissent pas.",
+ "feedback.completionTitle": "Envoie ton feed-back à {{name}}",
+ "feedback.completionTitleVV": "Envoie ton feedback à l’AFA",
+ "feedback.courseNegativeFeedbackLabel": "À ton avis, quels sont les points qui pourraient être améliorés ?",
+ "feedback.coursePositiveFeedbackLabel": "Qu’est-ce qui t’a particulièrement plu ?",
+ "feedback.feedbackPageInfo": "Les participants ont rempli le feed-back",
+ "feedback.feedbackPageTitle": "Feed-back sur la formation",
+ "feedback.feedbackSent": "Ton feed-back a été envoyé",
+ "feedback.goalAttainmentLabel": "Degré de réalisation des objectifs",
+ "feedback.happy": "Satisfait",
+ "feedback.instructorCompetenceLabel": "Que penses-tu des compétences techniques de la personne chargée du cours et de sa maîtrise du sujet ?",
+ "feedback.instructorOpenFeedbackLabel": "Souhaites-tu ajouter quelque chose à l’intention de la personne chargée du cours ?",
+ "feedback.instructorRespectLabel": "Les questions et les suggestions des participants ont-elles été prises au sérieux et traitées correctement ?",
+ "feedback.intro": "{{name}}, ton formateur / ta formatrice, t’invite à lui adresser un feed-back. Cela n’est pas obligatoire, mais lui permettrait d’améliorer son cours.",
+ "feedback.materialsRatingLabel": "Si oui : Que pensez-vous des documents fournis pour le travail préparatoire (par ex. eLearning) ?",
+ "feedback.noFeedbacks": "Aucun feed-back n’a encore été remis",
+ "feedback.praxisAssignmentClarity": "Les exercices pratiques étaient-ils clairs et compréhensibles?",
+ "feedback.preparationTaskClarityLabel": "Les travaux préparatoires étaient-ils clairs et compréhensibles ?",
+ "feedback.proficiencyLabel": "As-tu l’impression de bien maîtriser les sujets qui ont été abordés pendant le cours ?",
+ "feedback.proficiencyLabelVV": "As-tu l’impression de bien maîtriser les sujets qui ont été abordés pendant le Circle ?",
+ "feedback.questionTitle": "Question",
+ "feedback.recommendLabel": "Est-ce que tu recommandes ce cours ?",
+ "feedback.recommendLabelVV": "Est-ce que tu recommandes ce Circle?",
+ "feedback.satisfactionLabel": "Degré de satisfaction au global",
+ "feedback.sendFeedback": "Envoyer le feed-back",
+ "feedback.sentByUsers": "Rempli par {{count}} participants",
+ "feedback.showDetails": "Afficher les détails",
+ "feedback.unhappy": "Insatisfait(e)",
+ "feedback.veryHappy": "Très satisfait(e)",
+ "feedback.veryUnhappy": "Très insatisfait(e)",
+ "Feedback: Feedback zum Lehrgang": "Feedback: feedback sur la formation",
+ "foobar.hello": "Salut Innoweek",
+ "footer.contact": "Contact",
+ "footer.contactLink": "https://www.vbv.ch/fr/lafa/organisation/contact",
+ "footer.contactText": "Contact",
+ "footer.copyright": "© 2023 AFA",
+ "footer.dataProtectionLink": "https://www.vbv.ch/fr/politique-de-confidentialite",
+ "footer.dataProtectionText": "Dispositions sur la protection des données",
+ "footer.imprintLink": "https://www.vbv.ch/fr/impressum",
+ "footer.imprintText": "Impressum",
+ "Freigabetermin Bewertungen:": "Date de remise des évaluations :",
+ "Füge dein Profilbild hinzu und ergänze die fehlenden Angaben.": "Ajoute ta photo de profil et complète les informations manquantes.",
+ "Geleitete Fallarbeit": "Étude de cas dirigée",
+ "general.back": "Retour",
+ "general.backCapitalized": "Retour",
+ "general.backToCircle": "Revenir au Circle",
+ "general.backToLearningPath": "Revenir au programme de formation",
+ "general.cancel": "Annuler",
+ "general.certificate_many": "Certificats",
+ "general.certificate_one": "Certificat",
+ "general.certificate_other": "Certificats",
+ "general.circles": "Circles",
+ "general.close": "Fermer",
+ "general.exam_many": "Examens",
+ "general.exam_one": "Examen",
+ "general.exam_other": "Examens",
+ "general.examResult_many": "Résultats de l’examen",
+ "general.examResult_one": "Résultat de l’examen",
+ "general.examResult_other": "Résultats de l’examen",
+ "general.feedback_many": "Feed-backs",
+ "general.feedback_one": "Feed-back",
+ "general.feedback_other": "Feed-backs",
+ "general.im circle x anschauen": "Regarder dans le Circle «{{x}}»",
+ "general.introduction": "Introduction",
+ "general.learningPath": "Parcours de formation",
+ "general.learningSequence": "Séquence",
+ "general.learningUnit": "Leçon",
+ "general.next": "Continuer",
+ "general.nextStep": "Cela continue",
+ "general.no": "Non",
+ "general.notification_many": "Notifications",
+ "general.notification_one": "Notification",
+ "general.notification_other": "Notifications",
+ "general.profileLink": "Détails",
+ "general.save": "Enregistrer",
+ "general.send": "Envoyer",
+ "general.settings": "Paramètres du compte",
+ "general.shop": "Shop",
+ "general.show": "Consulter",
+ "general.showAll": "Tout consulter",
+ "general.start": "C’est parti !",
+ "general.submission": "Remise",
+ "general.title": "myAFA",
+ "general.transferTask_many": "Exercices d’application",
+ "general.transferTask_one": "Exercice d’application",
+ "general.transferTask_other": "Exercices d’application",
+ "general.yes": "Oui",
+ "Generation": "",
+ "Hast du Fragen?": "As-tu des questions?",
+ "Hier überprüfst und bestätigst du die Anwesenheit deiner Teilnehmenden.": "Ici, vous vérifiez et confirmez la présence de vos participants.",
+ "Ich will die Anwesenheit der untenstehenden Personen definitiv bestätigen.": "Je souhaite confirmer définitivement la présence des personnes ci-dessous.",
+ "Jahr": "",
+ "Keine Auftragsdetails verfügbar.": "",
+ "Kompetenznachweise": "",
+ "Kompetenzprofil": "",
+ "Kosten im": "Coûts en",
+ "Kosten in": "",
+ "Kosten in 2024": "",
+ "language.de": "Deutsch",
+ "language.fr": "Français",
+ "language.it": "Italiano",
+ "learningContent.markAsDone": "Marquer comme effectué(e)",
+ "learningContentTypes.attendanceCourse": "Cours de présence",
+ "learningContentTypes.casework": "Etude de cas dirigée",
+ "learningContentTypes.documents": "Documents",
+ "learningContentTypes.edoniqTest": "Questions de connaissances et de compréhension",
+ "learningContentTypes.feedback": "Feedback",
+ "learningContentTypes.knowledgeAssessment": "Test",
+ "learningContentTypes.learningModule": "Module de formation",
+ "learningContentTypes.mandatory_casework": "",
+ "learningContentTypes.placeholder": "en cours de réalisation",
+ "learningContentTypes.praxisAssignment": "Mandat",
+ "learningContentTypes.prepAssignment": "Mandat de préparation",
+ "learningContentTypes.reflection": "Réflexion",
+ "learningContentTypes.task": "Tâche",
+ "learningContentTypes.test": "Test",
+ "learningContentTypes.text": "Texte",
+ "learningContentTypes.video": "Vidéo",
+ "learningPathPage.currentCircle": "Circle en cours",
+ "learningPathPage.listView": "Affichage sous forme de liste",
+ "learningPathPage.nextDueDates": "Prochaines dates",
+ "learningPathPage.nextStep": "Étape suivante",
+ "learningPathPage.pathView": "Affichage sous forme de parcours",
+ "learningPathPage.progressText": "Tu as traité {{ inProgressCount }} de {{ allCount }} Circles",
+ "learningPathPage.showListView": "Afficher la liste",
+ "learningPathPage.topics": "Thèmes :",
+ "learningPathPage.welcomeBack": "Cela fait plaisir de te revoir dans ta formation :",
+ "Lehrgang": "Formation",
+ "Lernbegleitung einladen": "",
+ "Lernpfad kaufen": "",
+ "login.demoLogin": "Connexion Demo",
+ "login.guidelineFile": "Inscription_myAFA.pdf",
+ "login.guidelineText": "Découvre comment t'inscrire en tant qu'apprenant-e",
+ "login.login": "Login",
+ "login.ssoLogin": "Connexion SSO / Inscription",
+ "login.ssoText": "Clique sur le bouton pour te connecter via le SSO ou t’inscrire.",
+ "login.welcomeText": "Bienvenue sur la page de login pour les cours interentreprises de la branche de formation et d'examens ommerciales \"Assurance privée\".",
+ "login.welcomeUk": "Bienvenue",
+ "mainNavigation.logout": "Se déconnecter",
+ "mainNavigation.profile": "Profil",
+ "mediaLibrary.handlungsfelder.description": "Trouve toutes les ressources des champs d’action, comme les outils didactiques, les liens et autres informations utiles.",
+ "mediaLibrary.handlungsfelder.title_many": "Champs d’action",
+ "mediaLibrary.handlungsfelder.title_one": "Champ d’action",
+ "mediaLibrary.handlungsfelder.title_other": "Champs d’action",
+ "mediaLibrary.learningMedia.description": "Trouve une liste complète des livres, manuels et autres outils qui ont été mentionnés pendant le cours.",
+ "mediaLibrary.learningMedia.titel": "Outils didactiques ",
+ "mediaLibrary.show": "Voir la médiathèque",
+ "mediaLibrary.title": "Médiathèque",
+ "Meine Lernbegleiter": "",
+ "Meine Praxisbildner": "Mes formateurs pratiques",
+ "Member": "Participants",
+ "MentorUK": "Formateur/-trice pratique",
+ "MentorVV": "Tuteur",
+ "messages.sendMessage": "Écrire un message",
"MS Teams öffnen": "Ouvrir MS Teams ",
+ "Nach der Bezahlung von 300 CHF exkl. MWSt. erhältst du Zugang für den gesamten Lehrgang (inkl. Prüfung).": "",
+ "Neuen Praxisbildner einladen": "Inviter un nouveau formateur pratique",
+ "Nicht bestanden": "",
+ "notifications.load_more": "Télécharger davantage",
+ "notifications.no_notifications": "Tu n’as reçu aucune notification pour le moment",
"Nächste Termine": "Prochaines dates",
"Passwort": "Mot de passe",
+ "Personen": "",
+ "profile.": "",
+ "profile.all": "Toutes branches",
+ "profile.krankenzusatzversicherung": "Maladie complémentaire",
+ "profile.leben": "Vie",
+ "profile.nichtleben": "Non-vie",
+ "profile.null": "",
+ "Präsenzkurs": "",
+ "receivedEvaluation.no": "Il faut que tu regardes cela encore une fois de plus près",
+ "receivedEvaluation.yes": "Oui, tu peux le faire",
+ "Reflexion": "",
+ "Region": "",
+ "Rolle": "",
"Sehr unzufrieden": "très insatisfait",
"Sehr zufrieden": "très satisfait",
+ "selfEvaluation.instruction.0": "Überprüfe, ob du in der Lernheinheit",
+ "selfEvaluation.instruction.1": "alles verstanden hast.",
+ "selfEvaluation.instruction.2": "Lies die folgende Aussage und bewerte sie:",
+ "selfEvaluation.no": "Il faut que je regarde cela encore une fois de plus près",
+ "selfEvaluation.progressLink": "Ouvrir le menu des compétences",
+ "selfEvaluation.progressText": "Consulte tes progrès dans ton menu des compétences :",
+ "selfEvaluation.selfEvaluation": "Auto-évaluation",
+ "selfEvaluation.selfEvaluationNo": "$t(a.Selbsteinschätzung): Il faut que je regarde cela encore une fois de plus près.",
+ "selfEvaluation.selfEvaluationYes": "$t(a.Selbsteinschätzung): Je maîtrise cette question.",
+ "selfEvaluation.steps": "Étape {{current}} sur {{max}}",
+ "selfEvaluation.title": "Selbsteinschätzung {{title}}",
+ "selfEvaluation.yes": "Oui, je maîtrise cette question",
+ "settings.emailNotifications": "Notifications par e-mail",
+ "shop.paymentCembraByjunoMessage": "Un paiement sur facture est possible uniquement à ton adresse privée. Tu dois impérativement fournir ton numéro de téléphone et ta date de naissance. Important : le délai de paiement est de 30 jours. Le traitement de ton paiement (y compris les rappels, l'encaissement, les poursuites) est effectué directement par CembraPay AG. Tu recevras la facture par e-mail.",
+ "Sobald du einer Durchführung zugewiesen bist, ist alles bereit.": "Une fois que tu es assigné à une exécution, tout est prêt.",
+ "Sprache wählen und Lehrgang starten": "Choisir la langue et commencer l'apprentissage",
+ "start.chooseCourse": "Choisis maintenant ton apprentissage :",
+ "start.myvbvDescription": "L'interface d'apprentissage pour l'assurance",
+ "start.ukDescription": "Les cours interentreprises liés à la formation «Employé(e) de commerce CFC Assurance privée».",
+ "start.ukTitle": "Employé(e) de commerce CFC Assurance privée / Cours interentreprises",
+ "start.vvDescription": "Le parcours d'apprentissage et les médias d'apprentissage qui te préparent à l'examen d' «intermédiare d'assurance AFA».",
"Status anschauen": "Consulter le statut",
+ "Supervisor": "Responsable CI",
+ "Teilnehmer": "Participants",
+ "Teilnehmer im": "Participants en",
+ "Teilnehmer im 2024": "",
+ "Teilnehmer nach Zulassungsprofilen": "Participants par profil d'admission",
+ "Teilnehmer nach Zulassungsprofilen im": "",
+ "Termin nicht festgelegt": "",
"TODO: Nächste Termine": "TODO: prochaines dates",
+ "Trainer": "Formateur / Formatrice",
"Trainerunterlagen": "Documents du formateur / de la formatrice",
- "Wissens - und Verständnisfragen": "Questions de connaissance et de compréhension ",
- "Zur Zeit sind keine Termine vorhanden": "Aucune réunion n’est prévue pour le moment",
- "a": {
- "Alle aufklappen": "Tout déplier",
- "Begründung": "Justification",
- "Beurteilungsinstrument anzeigen": "Afficher l'outil d'évaluation",
- "Beurteilungskriterium": "Critère d'évaluation",
- "Bewertung": "Évaluation",
- "Bewertung fortsetzen": "Continuer l'évaluation",
- "Bewertung freigegeben": "Évaluations validée/s",
- "Bewertung starten": "Continuer l'évaluation",
- "Circle": "Cercle",
- "Datum": "Date",
- "Details anzeigen": "Afficher les détails",
- "Ergebnisse": "Résultats",
- "Ergebnisse abgegeben": "Résultats remis",
- "Ergebnisse anschauen": "Voir les résultats",
- "Geleitete Fallarbeit": "Étude de cas dirigée",
- "Gesamtpunktzahl": "Score total",
- "Handlungskompetenzen": "Compétences opérationnelles",
- "Höchstpunktzahl": "Score maximum",
- "Kein Circle verfügbar oder ausgewählt": [],
- "KompetenzNavi": "NaviCompétence",
- "Kompetenznachweis": "Contrôle de compétences",
- "Kompetenznachweise": "Contrôles de compétences",
- "Leistungsziele": "Objectif évaluateur",
- "Mediathek": "Médiathèque",
- "Punkte": "points",
- "Selbsteinschätzung": "Auto-évaluation",
- "Selbsteinschätzung anschauen": "Voir l'auto-évaluation",
- "Selbsteinschätzungen": "Auto-évaluations",
- "Standort": "Emplacement",
- "Trainer": "Formateur / Formatrice",
- "VorschauTeilnehmer": "Aperçu participant",
- "Zwischenstand": "Point intermédiaire",
- "competenceCertificateNoUserPoints": "Le score sera calculé à un moment ultérieur.",
- "Übersicht": "Aperçu"
- },
- "assignment": {
- "Du musst die Bewertung bis am x um y Uhr abschliessen und freigeben": "Vous devez terminer et valider l'évaluation avant le {{x}} à {{y}} heures.",
- "acceptConditionsDisclaimer": "Accepter les conditions et remettre les résultats",
- "assessmentDocumentDisclaimer": "Cette étude de cas dirigée est évaluée par l’outil suivant :",
- "assessmentTitle": "Évaluation",
- "assignmentSubmitted": "Tes résultats ont bien été transmis.",
- "confirmSubmitPerson": "Par la présente, je confirme que la personne suivante doit évaluer mes résultats.",
- "confirmSubmitResults": "Par la présente, je confirme que j’ai vérifié la synthèse de mes résultats et que je souhaite la remettre telle quelle.",
- "dueDateEvaluation": "Date de libération de l'évaluation",
- "dueDateIntroduction": "Envoie tes résultats dans les délais avant le:",
- "dueDateNotSet": "Aucune date de remise n’a été spécifiée pour cette opération.",
- "dueDateSubmission": "Date de remise",
- "edit": "Traiter",
- "effortTitle": "Temps nécessaire",
- "evaluationInstrumentDescriptionText": "Le score total et la note en résultant sont calculés sur la base de l'outil d'évaluation enregistré.",
- "initialSituationTitle": "Situation initiale",
- "justificationRequiredText": "Ici, une justification doit impérativement être saisie.",
- "lastChangesNotSaved": "La dernière modification n’a pas pu être enregistrée.",
- "performanceObjectivesTitle": "Objectifs",
- "showAssessmentDocument": "Afficher l’outil d’évaluation",
- "submissionNotificationDisclaimer": "{{name}} va procéder à l’évaluation de tes résultats. Tu recevras une notification dès que l’évaluation aura été validée et que tu pourras la consulter.",
- "submitAssignment": "Remettre les résultats",
- "taskDefinition": "Résous les exercices et documente tes résultats.",
- "taskDefinitionTitle": "Énoncé du problème",
- "von x Punkten": "sur {{x}} points",
- "x hat die Ergebnisse am y um z Uhr abgegeben": "{{x}} a soumis les résultats le {{y}} à {{z}} heures",
- "x von y Arbeiten abgeschlossen": "{{x}} sur {{y}} épreuves terminées",
- "x von y Kompetenznachweis-Elementen abgeschlossen": "{{x}} sur {{y}} éléments de contrôle de compétences terminés"
- },
- "circlePage": {
- "Dieser Inhalt gehört zu x": "Ce contenu appartient à «{{x}}»",
- "Im KompetenzNavi anschauen": "Afficher dans le \"KompetenzNavi\"",
- "circleContentBoxTitle": "Ce que tu vas apprendre dans ce cercle",
- "contactExpertButton": "Contacter le formateur / la formatrice",
- "contactExpertDescription": "Échanger avec le formateur / la formatrice si tu as des questions sur le cercle {{circleName}}.",
- "documents": {
- "action": "Télécharger les documents",
- "chooseLearningSequence": "Sélectionne une séquence",
- "chooseName": "Sélectionne un nom",
- "chooseSequence": "Sélectionne une séquence",
- "deleteModalTitle": "Supprimer les documents",
- "deleteModalWarning": "Veux-tu \"{{title}}\" supprimer les documents ?
Cette action est irréversible.",
- "expertDescription": "Mets des contenus supplémentaires à la disposition de tes apprenants.",
- "fileLabel": "Fichier",
- "maxFileSize": "Taille maximale du fichier : 20 Mo",
- "modalAction": "Sélectionner le fichier",
- "modalFileName": "Nom",
- "modalNameInformation": "Max. 70 signes",
- "selectFile": "Sélectionne un fichier",
- "title": "Documents",
- "trainerDescription": "Sur Teams, tu trouveras des contenus supplémentaires pour ton cours.",
- "trainerLinkSrc": "https://vbvbern.sharepoint.com/sites/myVBV-AFA_K-CI",
- "trainerLinkText": "Regarder les contenus sur Teams",
- "trainerTitle": "Accompagnement pour le formateur / la formatrice",
- "uploadErrorMessage": "Une erreur est survenue lors du téléchargement. Essaie à nouveau.",
- "userDescription": "Tu trouves ici des documents complémentaires qui peuvent d’être utiles pour ce cercle."
- },
- "duration": "Durée",
- "gotQuestions": "As-tu des questions ?",
- "learnMore": "Pour en savoir plus"
- },
- "cockpit": {
- "all": "Tous",
- "examsDone": "Examens remis par les participants.",
- "feedbacksDone": "Retours envoyés par les participants.",
- "notifyTask": "Notifier",
- "notifyTaskDescription": "Notifier les participants",
- "profileLink": "Afficher le profil",
- "progress": "Personne participante / Statut",
- "tasksDone": "Exercices d’application terminés par les participants.",
- "title": "Cockpit",
- "trainerFilesText": "Tu trouves ici les documents de formation (feuilles de solution, présentations, etc.) pour ton cercle."
- },
- "competenceCertificate": {
- "mainTitle": "Contrôle de compétences"
- },
- "competenceCertificates": {
- "mainTitle": "Contrôles de compétences"
- },
- "competences": {
- "assessAgain": "Voir l'auto-évaluation dans le cercle «{{x}}»",
- "assessment": "Évaluations",
- "competences": "Compétences",
- "lastImprovements": "Dernières compétences améliorées",
- "notAssessed": "Compétence non évaluée",
- "title": "NaviCompétence"
- },
- "constants": {
- "no": "Non",
- "satisfied": "Satisfait(e)",
- "unsatisfied": "Insatisfait(e)",
- "verySatisfied": "Très satisfait(e)",
- "veryUnsatisfied": "Très insatisfait(e)",
- "yes": "Oui"
- },
- "dashboard": {
- "courses": "Formation",
- "dueDatesTitle": "Dates",
- "nocourses": "Tu n’as été affecté(e) à aucune formation encore.",
- "welcome": "Bienvenue, {{name}}"
- },
- "dueDates": {
- "nextDueDates": "Prochaines réunions",
- "noDueDatesAvailable": "Pas de dates disponibles",
- "showAllDueDates": "Afficher tous les dates"
- },
- "edoniqTest": {
- "qualifiesForExtendedTime": "Je confirme que j'ai droit à un test avec compensation des inégalités.",
- "qualifiesForExtendedTimeTitle": "Apprenti-e-s avec compensation des inégalités (soumis à autorisation)",
- "startTest": "Démarrer l'essai"
- },
- "feedback": {
- "answers": "Réponses",
- "areYouSatisfied": "Quel est ton degré de satisfaction ?",
- "average": "Moyen",
- "circleFeedback": "Feed-back sur le cercle",
- "completionDescription": "Tes commentaires seront anonymes. Ton nom et ton prénom ne seront pas indiqués au formateur / à la formatrice.",
- "completionTitle": "Envoie ton feed-back à {{name}}",
- "courseNegativeFeedbackLabel": "À ton avis, quels sont les points qui pourraient être améliorés ?",
- "coursePositiveFeedbackLabel": "Qu’est-ce qui t’a particulièrement plu ?",
- "feedbackPageInfo": "Les participants ont rempli le feed-back",
- "feedbackPageTitle": "Feed-back sur la formation",
- "feedbackSent": "Ton feed-back a été envoyé",
- "goalAttainmentLabel": "Degré de réalisation des objectifs",
- "happy": "Satisfait",
- "instructorCompetenceLabel": "Que penses-tu des compétences techniques de la personne chargée du cours et de sa maîtrise du sujet ?",
- "instructorOpenFeedbackLabel": "Souhaites-tu ajouter quelque chose à l’intention de la personne chargée du cours ?",
- "instructorRespectLabel": "Les questions et les suggestions des participants ont-elles été prises au sérieux et traitées correctement ?",
- "intro": "{{name}}, ton formateur / ta formatrice, t’invite à lui adresser un feed-back. Cela n’est pas obligatoire, mais lui permettrait d’améliorer son cours.",
- "materialsRatingLabel": "Si oui : Que pensez-vous des documents fournis pour le travail préparatoire (par ex. eLearning) ?",
- "noFeedbacks": "Aucun feed-back n’a encore été remis",
- "preparationTaskClarityLabel": "Les travaux préparatoires étaient-ils clairs et compréhensibles ?",
- "proficiencyLabel": "As-tu l’impression de bien maîtriser les sujets qui ont été abordés pendant le cours ?",
- "questionTitle": "Question",
- "recommendLabel": "Est-ce que tu recommandes ce cours ?",
- "satisfactionLabel": "Degré de satisfaction au global",
- "sendFeedback": "Envoyer le feed-back",
- "sentByUsers": "Rempli par {{count}} participants",
- "showDetails": "Afficher les détails",
- "unhappy": "Insatisfait(e)",
- "veryHappy": "Très satisfait(e)",
- "veryUnhappy": "Très insatisfait(e)"
- },
- "foobar": {
- "hello": "Salut Innoweek"
- },
- "footer": {
- "contact": "Contact",
- "contactLink": "https://www.vbv.ch/fr/lafa/organisation/contact",
- "contactText": "Contact",
- "copyright": "© 2023 AFA",
- "dataProtectionLink": "https://www.vbv.ch/fr/politique-de-confidentialite",
- "dataProtectionText": "Dispositions sur la protection des données",
- "imprintLink": "https://www.vbv.ch/fr/impressum",
- "imprintText": "Impressum"
- },
- "general": {
- "back": "Retour",
- "backCapitalized": "Retour",
- "backToCircle": "Revenir au cercle",
- "backToLearningPath": "Revenir au programme de formation",
- "certificate_many": "Certificats",
- "certificate_one": "Certificat",
- "certificate_other": "Certificats",
- "circles": "Cercles",
- "close": "Fermer",
- "examResult_many": "Résultats de l’examen",
- "examResult_one": "Résultat de l’examen",
- "examResult_other": "Résultats de l’examen",
- "exam_many": "Examens",
- "exam_one": "Examen",
- "exam_other": "Examens",
- "feedback_many": "Feed-backs",
- "feedback_one": "Feed-back",
- "feedback_other": "Feed-backs",
- "im circle x anschauen": "Regarder dans le cercle «{{x}}»",
- "introduction": "Introduction",
- "learningPath": "Parcours de formation",
- "learningSequence": "Séquence",
- "learningUnit": "Leçon",
- "next": "Continuer",
- "nextStep": "Cela continue",
- "no": "Non",
- "notification_many": "Notifications",
- "notification_one": "Notification",
- "notification_other": "Notifications",
- "profileLink": "Détails",
- "save": "Enregistrer",
- "send": "Envoyer",
- "settings": "Paramètres du compte",
- "shop": "Shop",
- "show": "Consulter",
- "showAll": "Tout consulter",
- "start": "C’est parti !",
- "submission": "Remise",
- "title": "myAFA",
- "transferTask_many": "Exercices d’application",
- "transferTask_one": "Exercice d’application",
- "transferTask_other": "Exercices d’application",
- "yes": "Oui"
- },
- "language": {
- "de": "Deutsch",
- "fr": "Français",
- "it": "Italiano"
- },
- "learningContent": {
- "markAsDone": "Marquer comme effectué(e)"
- },
- "learningContentTypes": {
- "attendanceCourse": "Cours de présence",
- "casework": "Etude de cas dirigée ",
- "documents": "Documents",
- "edoniqTest": "Questions de connaissances et de compréhension",
- "feedback": "Feedback",
- "learningModule": "Module de formation",
- "placeholder": "en cours de réalisation",
- "prepAssignment": "Mandat de préparation",
- "reflection": "Réflexion",
- "task": "Tâche",
- "test": "Test",
- "text": "Texte",
- "video": "Vidéo"
- },
- "learningPathPage": {
- "currentCircle": "Cercle en cours",
- "listView": "Affichage sous forme de liste",
- "nextDueDates": "Prochaines dates",
- "nextStep": "Étape suivante",
- "pathView": "Affichage sous forme de parcours",
- "progressText": "Tu as traité {{ inProgressCount }} de {{ allCount }} cercles",
- "showListView": "Afficher la liste",
- "topics": "Thèmes :",
- "welcomeBack": "Cela fait plaisir de te revoir dans ta formation :"
- },
- "login": {
- "demoLogin": "Connexion Demo",
- "guidelineFile": "Inscription_myAFA.pdf",
- "guidelineText": "Découvre comment t'inscrire en tant qu'apprenant-e",
- "login": "Login",
- "ssoLogin": "Connexion SSO / Inscription",
- "ssoText": "Clique sur le bouton pour te connecter via le SSO ou t’inscrire.",
- "welcomeText": "Bienvenue sur la page de login pour les cours interentreprises de la branche de formation et d'examens ommerciales \"Assurance privée\".",
- "welcomeUk": "Bienvenue"
- },
- "mainNavigation": {
- "logout": "Se déconnecter",
- "profile": "Profil"
- },
- "mediaLibrary": {
- "handlungsfelder": {
- "description": "Trouve toutes les ressources des champs d’action, comme les outils didactiques, les liens et autres informations utiles.",
- "title_many": "Champs d’action",
- "title_one": "Champ d’action",
- "title_other": "Champs d’action"
- },
- "learningMedia": {
- "description": "Trouve une liste complète des livres, manuels et autres outils qui ont été mentionnés pendant le cours.",
- "titel": "Outils didactiques "
- },
- "title": "Médiathèque"
- },
- "messages": {
- "sendMessage": "Écrire un message"
- },
- "notifications": {
- "load_more": "Télécharger davantage",
- "no_notifications": "Tu n’as reçu aucune notification pour le moment"
- },
- "selfEvaluation": {
- "instruction": [
- "Überprüfe, ob du in der Lernheinheit",
- "alles verstanden hast.",
- "Lies die folgende Aussage und bewerte sie:"
- ],
- "no": "Il faut que je regarde cela encore une fois de plus près",
- "progressLink": "Ouvrir le menu des compétences",
- "progressText": "Consulte tes progrès dans ton menu des compétences :",
- "selfEvaluation": "Auto-évaluation",
- "selfEvaluationNo": "$t(a.Selbsteinschätzung): Il faut que je regarde cela encore une fois de plus près.",
- "selfEvaluationYes": "$t(a.Selbsteinschätzung): Je maîtrise cette question.",
- "steps": "Étape {{current}} sur {{max}}",
- "title": "Selbsteinschätzung {{title}}",
- "yes": "Oui, je maîtrise cette question"
- },
- "settings": {
- "emailNotifications": "Notifications par e-mail"
- },
- "uk": {
- "contact": {
- "address": "Laupenstrasse 10, 3008 Berne",
- "team": "Équipe Dévelopement de la relève",
- "title": "Association pour la formation professionnelle en assurance"
- },
- "dashboard": {
- "allClear": "Tout est clair ?",
- "nextSteps": "En tant que personne en formation, tu seras attribué(e) à un cours interentreprise dans les prochains jours. Puis tu verras apparaître ici ta boîte de formation personnalisée avec les informations complémentaires.",
- "welcome": "Tout s'est bien passé, tu es maintenant inscrit/e à l'environnement d'apprentissage numérique de l'Association pour la formation professionnelle en assurance (AFA) !"
- }
- },
+ "TrainingResponsible": "Responsable de la formation",
+ "uk.contact.address": "Laupenstrasse 10, 3008 Berne",
+ "uk.contact.team": "Équipe Dévelopement de la relève",
+ "uk.contact.title": "Association pour la formation professionnelle en assurance",
+ "uk.dashboard.allClear": "Tout est clair ?",
+ "uk.dashboard.nextSteps": "En tant que personne en formation, tu seras attribué(e) à un cours interentreprise dans les prochains jours. Puis tu verras apparaître ici ta boîte de formation personnalisée avec les informations complémentaires.",
+ "uk.dashboard.welcome": "Tout s'est bien passé, tu es maintenant inscrit/e à l'environnement d'apprentissage numérique de l'Association pour la formation professionnelle en assurance (AFA) !",
+ "UnknownRoleKey": "",
"unzufrieden": "insatisfait",
+ "Vorbedingung": "Condition préalable",
+ "Vorbereitungsaufgabe": "Mandat de préparation",
+ "vv.contact.team": "Équipe d'intermédiaires",
+ "Weiter lernen": "Continuer d'apprendre",
+ "Wichtig: wird die Rechnung von deinem Arbeitgeber bezahlt, dann kannst du zusätzlich die Rechnungsadresse deines Arbeitsgebers erfassen.": "Important : si la facture est payée par ton employeur, tu peux alors saisir en plus l'adresse de facturation de ton employeur.",
+ "Wir bedauern die Unannehmlichkeiten und danken für dein Verständnis. Bei Fragen steht dir das Team Vermittler gerne zur Verfügung.": "Nous regrettons les désagréments et te remercions de ta compréhension. Si tu as des questions, l'équipe Intermédiaires se tient volontiers à ta disposition.",
+ "Wissens - und Verständnisfragen": "Questions de connaissance et de compréhension ",
+ "Wähle ein Zulassungsprofil, damit du deinen Lehrgang an der richtigen Stelle beginnen kannst": "Choisis un profil d'admission pour que tu puisses commencer ta formation au bon endroit.",
+ "Wähle ein Zulassungsprofil, damit du deinen Lehrgang an der richtigen Stelle beginnen kannst.": "Choisis un profil d'admission pour que tu puisses commencer ta formation au bon endroit.",
+ "x von y abgeschlossen": "{{x}} de {{y}} achevée/s",
"x von y Bewertungen freigegeben": "{{x}} de {{y}} évaluations validée/s",
"x von y Ergebnisse abgegeben": "{{x}} de {{y}} résultats remis",
"x von y Feedbacks abgegeben": "{{x}} de {{y}} feedbacks remis",
- "x von y abgeschlossen": "{{x}} de {{y}} achevée/s",
- "zufrieden": "satisfait"
+ "Zu erledigen": "",
+ "zufrieden": "satisfait",
+ "Zulassungsprofil": "",
+ "Zur Zeit sind keine Termine vorhanden": "Aucune réunion n’est prévue pour le moment",
+ "Überbetriebliche Kurse": ""
}
diff --git a/client/src/locales/it/translation.json b/client/src/locales/it/translation.json
index 9d545607..41e74d5c 100644
--- a/client/src/locales/it/translation.json
+++ b/client/src/locales/it/translation.json
@@ -1,364 +1,670 @@
{
+ "20%": "",
+ "40%": "",
+ "60%": "",
+ "80%": "",
+ "100%": "",
+ "a.": "",
+ "a.a.AlleCircle": "",
+ "a.Abbrechen": "Annullare",
+ "a.Abgabetermin": "Termine di consegna",
+ "a.Abgezogene Punkte": "Punti detratti",
+ "a.Adresse": "Indirizzo",
+ "a.Aktuell begleitest du niemanden als Lernbegleitung.": "Attualmente non stai accompagnando nessuno come mentore di apprendimento.",
+ "a.Aktuell begleitest du niemanden als Praxisbildner.": "Attualmente non stai accompagnando nessuno come formatore/-trice pratico/a.",
+ "a.Aktuell bist du leider keiner Durchführung zugewiesen.": "Attualmente non sei assegnato a nessuna sessione, purtroppo.",
+ "a.Aktuell hast du noch keine Person als Lernbegleitung eingeladen.": "Al momento non hai invitato nessuna persona come tutor.",
+ "a.Aktuell hast du noch keine Person als Lernbegleitung eingeladen. Lade jetzt jemanden ein.": "Al momento non hai invitato nessuna persona come tutor. Invita qualcuno ora.",
+ "a.Aktuell hast du noch keine Person als Praxisbildner eingeladen.": "Attualmente non hai ancora invitato nessuna persona come formatore/-trice pratico/a.",
+ "a.Aktuell hast du noch keine Person als Praxisbildner eingeladen. Lade jetzt jemanden ein.": "",
+ "a.Aktueller Lehrgang": "Corso in corso",
+ "a.Allbranche": "Tutti i settori",
+ "a.Alle": "Tutto",
+ "a.Alle aufklappen": "Apri tutto",
+ "a.Alle Lehrgang": "",
+ "a.Alle Lehrgänge": "",
+ "a.Alle Lehrgänge anzeigen": "Mostra tutti i corsi",
+ "a.Alle Personen anzeigen": "Mostra tutte le persone",
+ "a.Alle Termine anzeigen": "Mostrare tutte le date",
+ "a.Alle zuklappen": "Chiudi tutto",
+ "a.AlleCircle": "Circle: Tutti",
+ "a.AlleDurchführungen": "Svolgimenti: Tutti",
+ "a.AlleGenerationen": "Generazioni: Tutte",
+ "a.AlleKreise": "",
+ "a.AlleRegionen": "",
+ "a.AlleTermine": "Appuntamenti",
+ "a.AlleTypen": "Tutti i tipi",
+ "a.Allgemeine Zufriedenheit": "Soddisfazione generale ",
+ "a.Als Excel exportieren": "Esportazione come Excel",
+ "a.An Durchführung teilnehmen": "Partecipare alla sessione",
+ "a.Anmelden": "Login",
+ "a.Anwesenheit": "Presenza",
+ "a.Arbeiten": "Lavori",
+ "a.assignment.evaluationFeedbackDescriptionText": "Pubblica il tuo feedback in modo che possa essere condiviso con il/la partecipante.",
+ "a.assignment.evaluationInstrumentDescriptionTextFeedback": "Si prega di sostenere {{name}} e di fornire un feedback sul compito.",
+ "a.Aufgabe": "Attività",
+ "a.Aufgaben": "Compiti",
+ "a.Auswählen": "Selezionare",
+ "a.Bearbeiten": "Modifica",
+ "a.Begründung": "Motivazione",
+ "a.Bestanden": "Superato",
+ "a.Beurteilungsinstrument anzeigen": "Mostra lo strumento di valutazione",
+ "a.Beurteilungskriterium": "Criterio di valutazione",
+ "a.Bewertung": "Valutazione",
+ "a.Bewertung abschliessen": "Valutazione completa",
+ "a.Bewertung ansehen": "Visualizza recensione",
+ "a.Bewertung bearbeiten": "",
+ "a.Bewertung bearbeitet": "",
+ "a.Bewertung erneut bearbeitet": "",
+ "a.Bewertung fortsetzen": "Continua la valutazione",
+ "a.Bewertung Freigabe": "Rilascio della valutazione",
+ "a.Bewertung freigeben": "Rilasciare la valutazione",
+ "a.Bewertung freigegeben": "Valutazioni approvate/a",
+ "a.Bewertung starten": "Continua la valutazione",
+ "a.Bewertung von x y": "Valutazione di {{x}} {{y}}",
+ "a.Bild hochladen": "Carica un'immagine",
+ "a.Bitte folgende Felder ausfüllen": "Si prega di compilare i seguenti campi",
+ "a.Bitte überprüfe deine Eingaben. Es sind Fehler in deinem Formular aufgetreten.": "Si prega di controllare le tue inserzioni. Sono stati rilevati errori nel tuo modulo.",
+ "a.Circle": "Circle",
+ "a.Cockpit anschauen": "Visualizza il cockpit",
+ "a.competenceCertificateNoUserPoints": "Il punteggio verrà calcolato in un momento successivo.",
+ "a.confirmSubmitPersonPraxisAssignment": "La persona di seguito deve fornirmi un feedback sui miei risultati.",
+ "a.Damit du mit diesem Lehrgang starten kannst, musst du einer Durchführung zugewiesen werden. Nimm dafür deinem üK-Verantwortlichen oder unserem {support} Kontakt auf.": "Per iniziare questo corso, devi essere assegnato a una sessione. Per farlo, contatta il tuo responsabile CI o il nostro {support}.",
+ "a.Damit du myVBV nutzen kannst, brauchst du ein Konto.": "Per utilizzare myVBV, hai bisogno di un account.",
+ "a.Das muss ich nochmals anschauen": "Devo riguardarlo ancora una volta",
+ "a.Das wurde mit dir geteilt": "Questo è stato condiviso con te",
+ "a.Datei auswählen": "Selezionare il file",
+ "a.Datei hochladen": "Carica il file",
+ "a.Datei kann nicht gespeichert werden.": "Impossibile salvare il file.",
+ "a.Datum": "Data",
+ "a.Debit-/Kreditkarte/Twint": "Carta di debito/credito / Twint",
+ "a.Dein Feedback für x y wurde freigegeben.": "Il tuo feedback per {{x}} {{y}} è stato pubblicato.",
+ "a.Deine Bewertung für x y wurde freigegeben.": "La tua valutazione per {{x}} {{y}} è stata pubblicata.",
+ "a.Deine Fremdeinschätzung": "La tua valutazione esterna",
+ "a.Deine Selbsteinschätzung": "La tua autovalutazione",
+ "a.Deine Änderungen wurden gespeichert": "Le tue modifiche sono state salvate",
+ "a.Der Lehrgang und die Prüfung zum Erwerb des Verbandszertifikats als Versicherungsvermittler/-in.": "Il corso e l'esame per ottenere il certificato di associazione come intermediario/agente di assicurazione.",
+ "a.Der Preis für den Lehrgang {course} beträgt {price}.": "Il prezzo del {corso} è {prezzo} IVA esclusa.",
+ "a.Details anschauen": "Visualizza dettagli",
+ "a.Details anzeigen": "Mostrare i dettagli",
+ "a.Deutsch": "Tedesco",
+ "a.Die Anwesenheit wurde definitiv bestätigt": "La presenza è stata confermata definitivamente",
+ "a.Die Einladung konnte nicht akzeptiert werden. Bitte melde dich beim Support.": "L'invito non ha potuto essere accettato. Si prega di contattare il supporto.",
+ "a.Die Einladung wurde noch nicht angenommen.": "L'invito non è stato ancora accettato.",
+ "a.Die Zahlung für den Lehrgang «{course}» wurde erfolgreich ausgeführt.": "Il pagamento per il corso «{course}» è stato completato con successo.",
+ "a.Die überbetrieblichen Kurse der kaufmännischen Ausbildungs- und Prüfungsbranche 'Privatversicherung'.": "I corsi interaziendali del settore della formazione e degli esami commerciali 'Assicurazione privata'.",
+ "a.Du hast alles erledigt.": "Hai fatto tutto.",
+ "a.Du hast deine Fremdeinschätzung freigegeben": "Hai rilasciato la tua valutazione esterna.",
+ "a.Du hast deine Selbsteinschätzung erfolgreich mit FULL_NAME geteilt.": "Hai condiviso con successo la tua autovalutazione con {{FULL_NAME}}.",
+ "a.Du hast die Einladung von {name} erfolgreich akzeptiert.": "Hai accettato con successo l'invito di {name}.",
+ "a.Du hast erfolgreich ein Konto für EMAIL erstellt.": "Hai creato con successo un account per {{email}}.",
+ "a.Du kannst deine Selbsteinschätzung mit deiner Lernbegleitung teilen, damit sie eine Fremdeinschätzung vornimmt.": "Puoi condividere la tua autovalutazione con il tuo tutor didattico affinché possa effettuare una valutazione esterna.",
+ "a.Durchfuehrung": "Svolgimenti",
+ "a.Durchführung": "Svolgimento",
+ "a.Durchführungen": "Svolgimenti",
+ "a.Durchschnittsnote": "Voto medio",
+ "a.E-Mail Adresse": "Indirizzo e-mail",
+ "a.Einladung": "Invito",
+ "a.Einladung abschicken": "Inviare l'invito",
+ "a.Email": "",
+ "a.Entfernen": "Rimuovere",
+ "a.Erfahrungsnote üK": "Nota relativa all’insegnamento professionale CI",
+ "a.Ergebnis bewerten": "Valutare il risultato",
+ "a.Ergebnisse": "Risultati",
+ "a.Ergebnisse abgegeben": "Risultati consegnati",
+ "a.Ergebnisse anschauen": "Guarda i risultati",
+ "a.Ergebnisse bewerten": "Valutare i risultati",
+ "a.Ergebnisse teilen": "Condividere i risultati",
+ "a.Erneut bearbeiten": "Modifica di nuovo",
+ "a.Experte": "",
+ "a.Feedback abschliessen": "Completa il feedback",
+ "a.Feedback ansehen": "Visualizza il feedback",
+ "a.Feedback erneut bearbeitet": "",
+ "a.Feedback fortsetzen": "Prosegui il feedback",
+ "a.Feedback Freigabe": "Pubblicazione del feedback",
+ "a.Feedback freigeben": "Pubblica il feedback",
+ "a.Feedback freigegeben": "Feedback pubblicato",
+ "a.Feedback geben": "Fornisci feedback",
+ "a.Feedback Teilnehmer": "Feedback dei partecipanti",
+ "a.Feedback von x y": "Feedback di {{x}} {{y}}",
+ "a.feedback.introductionVV": "Chiediamo il tuo feedback. Ci aiuta a migliorare la tua esperienza di apprendimento.",
+ "a.Fehler bei der Zahlung. Bitte versuche es erneut oder kontaktiere uns": "Errore durante il pagamento. Riprovare o scegliere un altro metodo di pagamento.",
+ "a.Fehler bei der Zahlung. Bitte versuche es erneut oder wähle eine andere Zahlungsmethode.": "Errore durante il pagamento. Riprovare o scegliere un altro metodo di pagamento.",
+ "a.Fehlermeldung": "Messaggio di errore",
+ "a.Firmenanschrift": "Indirizzo aziendale",
+ "a.Firmenname": "Nome dell'azienda",
+ "a.Franzosisch": "Francese",
+ "a.Fremdeinschätzung anzeigen": "Évaluation externe",
+ "a.Fremdeinschätzung freigeben": "Rilasciare la valutazione esterna",
+ "a.Fremdeinschätzung von FEEDBACK_PROVIDER_NAME": "Valutazione esterna di {{FEEDBACK_PROVIDER_NAME}}",
+ "a.Fremdeinschätzung vornehmen": "Eseguire una valutazione esterna",
+ "a.Fremdeinschätzungen": "Valutazioni esterne",
+ "a.FULL_NAME wird eine Fremdeinschätzung für dich vornehmen. Du wirst per Benachrichtigung informiert, sobald die Fremdeinschätzung für dich freigegeben wurde.": "{{FULL_NAME}} effettuerà una valutazione esterna per te. Sarai informato tramite notifica non appena la valutazione esterna sarà stata resa disponibile per te.",
+ "a.Geburtsdatum": "Data di nascita",
+ "a.Geleitete Fallarbeit": "Caso di studio guidato",
+ "a.Generation": "Generazione",
+ "a.Gesamtpunktzahl": "Punteggio totale",
+ "a.Geschäftsdaten": "Dati aziendali",
+ "a.Gesellschaft": "Compagnia di assicurazione",
+ "a.Gleich wie die Firmenanschrift": "Uguale all'indirizzo aziendale",
+ "a.Gleich wie die Privatadresse": "Uguale all'indirizzo privato",
+ "a.Gratuliere!": "Congratulazioni!",
+ "a.Grund": "Motivo",
+ "a.Hallo {userFirstName}, wähle jetzt deinen Lehrgang aus": "Ciao {userFirstName}, scegli ora il tuo corso:",
+ "a.Handlungskompetenzen": "Competenze operative",
+ "a.Hast du Fragen? Kontaktiere uns": "Hai domande? Contattaci",
+ "a.Hast du Fragen? Schau dir unsere FAQ an oder kontaktiere uns": "Hai domande? Consulta le nostre {faq} o contattaci",
+ "a.Hast du schon ein Konto?": "Hai già un account?",
+ "a.Hausnummmer": "Numero civico",
+ "a.Hier kannst du ausschliesslich mit einer Kreditkarte bezahlen.": "",
+ "a.Hier kannst du Personen einladen, damit sie deine Lernbegleitung werden. Zudem siehst du jederzeit eine Übersicht aller Personen, die du bereits als Lernbegleitung hinzugefügt hast.": "Qui puoi invitare persone a diventare il tuo tutor. Inoltre, puoi sempre vedere una panoramica di tutte le persone che hai già aggiunto come tutor.",
+ "a.Höchstpunktzahl": "Punteggio massimo",
+ "a.Ich kann das": "Ho compreso tutto",
+ "a.Italienisch": "Italiano",
+ "a.Ja, NAME kann das.": "Sì, {{NAME}} può farlo",
+ "a.Jetzt mit Lehrgang starten": "Inizia ora il corso",
+ "a.Kann FULLNAME das?": "{{FULLNAME}} può farlo?",
+ "a.Kein Circle verfügbar oder ausgewählt.": "Nessun Circle disponibile o selezionato.",
+ "a.Keine Angabe": "Nessuna indicazione",
+ "a.Kommentar": "",
+ "a.Kommentar erfassen": "",
+ "a.Kompetenznachweis": "Controllo delle competenze",
+ "a.Kompetenznachweis-Elemente": "Elementi del controllo",
+ "a.Kompetenznachweise": "Controlli delle competenze",
+ "a.KompetenzNavi": "NaviCompetenze",
+ "a.Konto erstellen": "Crea un account",
+ "a.Kosten": "Costi",
+ "a.Kosten aller Jahre ansehen": "Visualizza i costi per tutti gli anni",
+ "a.Kosten in 2024": "",
+ "a.Krankenzusatzversicherung": "Assicurazione sanitaria integrativa",
+ "a.Krankenzusatzversicherungen": "Assicurazione sanitaria integrativa",
+ "a.Lade ein Profilbild hoch, damit dich andere Personen auf den ersten Blick erkennen.": "Carica un'immagine del profilo così che altre persone possano riconoscerti a prima vista.",
+ "a.Laden...": "Caricamento...",
+ "a.Land": "Paese",
+ "a.Leben": "La vita",
+ "a.Lehrgang": "Corso",
+ "a.Lehrgang kaufen": "Acquistare il corso",
+ "a.Leistungsziel": "Obiettivo di valutazione",
+ "a.Leistungsziele": "Obiettivo di valutazione",
+ "a.Lernbegleiter": "",
+ "a.Lernbegleitung": "Tutor",
+ "a.Lernbegleitung auswählen": "Tutoraggio selezionare",
+ "a.Lernbegleitung einladen": "Invitare un tutor",
+ "a.Liste anzeigen": "Mostra l’elenco",
+ "a.Mach nun weiter mit dem nächsten Schritt.": "Procedi con il passo successivo.",
+ "a.Maximale Dateigrösse": "Dimensioni massime del file",
+ "a.Mediathek": "Mediateca",
+ "a.Mehr erfahren": "Per saperne di più",
+ "a.Meine Lernbegleitung": "Il mio tutoraggio",
+ "a.mit Abzug": "incl. detrazione",
+ "a.Mit dem Kauf erhältst du Zugang auf den gesamten Kurs (inkl. Prüfung).": "L'acquisto ti dà accesso al percorso di apprendimento e ai supporti didattici.",
+ "a.Mit Kreditkarte bezahlen": "Pagare con carta di debito/credito/Twint",
+ "a.Mit Rechnung bezahlen": "Pagare con fattura",
+ "a.Mögliche Formate": "Formati possibili",
+ "a.Nachname": "Cognome",
+ "a.Name": "Nome",
+ "a.Nein, NAME muss das nochmals anschauen.": "No, {{NAME}} deve riguardarlo ancora",
+ "a.Neue Lernbegleitung einladen": "Invitare un nuovo tutor",
+ "a.Nicht Bestanden": "Non superato",
+ "a.Nicht bewertet": "Non valutato",
+ "a.Nichtleben": "Non vita",
+ "a.Note": "Note",
+ "a.NUMBER Elemente abgeschlossen": "{NUMBER} elementi completati",
+ "a.NUMBER Präsenztage abgeschlossen": "{NUMBER} giorni di presenza completati",
+ "a.NUMBER Teilnehmer anwesend": "{NUMBER} partecipanti presenti",
+ "a.Nächste Termine": "",
+ "a.OldCircle": "",
+ "a.Optionale Anwesenheit": "Presenza opzionale",
+ "a.Ort": "Città",
+ "a.Personen": "Persone",
+ "a.Personen, die du begleitest": "Persone che accompagni",
+ "a.Persönliche Informationen": "Informazioni personali",
+ "a.PLZ": "CAP",
+ "a.Praxisauftrag": "Lavoro pratico",
+ "a.Praxisaufträge anschauen": "Visualizzare gli incarichi pratici",
+ "a.Praxisbildner": "Formatore pratico",
+ "a.present von total Teilnehmenden anwesend": "{{present}} su {{total}} partecipanti presenti",
+ "a.Privatadresse": "Indirizzo privato",
+ "a.Profil anzeigen": "Mostrare il profilo",
+ "a.Profil bearbeiten": "Modificare il profilo",
+ "a.Profil ergänzen": "Completare il profilo",
+ "a.Profilbild": "Immagine del profilo",
+ "a.Präsenztag": "Giorno di presenza",
+ "a.Punkte": "punti",
+ "a.Punkte aus Bewertung": "Punti della valutazione",
+ "a.PunkteVonDaniel": "",
+ "a.PunkteVonDaniel123": "",
+ "a.Rechnung": "Fattura",
+ "a.RechnungPaymentMethodDescription": "",
+ "a.Rechnungsadresse": "Indirizzo di fatturazione",
+ "a.Rechnungsadresse hinzufügen": "Aggiungere un indirizzo di fatturazione",
+ "a.Rechnungsadresse von {organisation}": "Indirizzo di fatturazione di {{organisation}}",
+ "a.Rechnungsadresse von {organisation} hinzufügen": "Aggiungere l'indirizzo di fatturazione di {{organisation}}",
+ "a.Regionenleiter": "",
+ "a.Resultat": "Risultato",
+ "a.Schliessen": "",
+ "a.Selbst- und Fremdeinschätzungen": "Autovalutazioni e valutazioni esterne",
+ "a.Selbsteinschätzung": "Auto-valutazione",
+ "a.Selbsteinschätzung anschauen": "Guarda l'auto-valutazione",
+ "a.Selbsteinschätzung anzeigen": "Mostrare l'auto-valutazione",
+ "a.Selbsteinschätzung geteilt": "Autovalutazione condivisa",
+ "a.Selbsteinschätzung mit MENTOR_NAME teilen": "Condividi l'autovalutazione con {{MENTOR_NAME}}",
+ "a.Selbsteinschätzung teilen": "Condividi l'autovalutazione",
+ "a.Selbsteinschätzung von FEEDBACK_REQUESTER_NAME": "Autovalutazione di {{FEEDBACK_REQUESTER_NAME}}",
+ "a.Selbsteinschätzungen": "Auto-valutaziones",
+ "a.Selbsteinschätzungen geteilt": "Auto-valutazioni condivise",
+ "a.So startest du mit diesem Lehrgang": "Ecco come iniziare questo percorso di apprendimento",
+ "a.Standort": "Posizione",
+ "a.Statistik": "",
+ "a.Statistik für alle Lernenden": "",
+ "a.Stelle deinen Lernenden zusätzliche Inhalte zur Verfügung.": "Fornisci ai tuoi partecipanti contenuti aggiuntivi.",
+ "a.Strasse": "Strada",
+ "a.Super, nun ist alles bereit. Du bist der Durchführung «{course}» zugewiesen und kannst mit dem Lehrgang starten.": "Ottimo, ora è tutto pronto. Sei assegnato alla sessione «{{course}}» e puoi iniziare il corso.",
+ "a.Teilnehmer": "Partecipanti",
+ "a.Teilnehmer im 2024": "",
+ "a.Telefonnummer": "Numero di telefono",
+ "a.Telefonnummer hat das falsche Format": "",
+ "a.Termin": "Data",
+ "a.Termine": "Date",
+ "a.Total {NUMBER} Antworten": "Totale {NUMBER} risposte",
+ "a.Trainer": "Trainer",
+ "a.Um die Zahlung vornehmen zu können, benötigen wir deine Privatadresse. Optional kannst du die Rechnungsadresse deiner Gesellschaft hinzufügen.": "Per effettuare il pagamento, abbiamo bisogno del tuo indirizzo di casa. Dopo il pagamento riceverai una una conferma di contabilizzazione via e-mail.",
+ "a.Ungerundete Note": "Nota (non arrotondato)",
+ "a.Unterlagen": "Documenti",
+ "a.Unterlagen für Teilnehmenden": "Documenti per i partecipanti",
+ "a.Unternehmen": "Azienda",
+ "a.VALUE von MAXIMUM": "{{VALUE}} di {{MAXIMUM}}",
+ "a.Versicherungsvermittler/-in": "Intermediario/a assicurativo/a AFA",
+ "a.Vorname": "Nome",
+ "a.Vorschau Teilnehmer": "Vue des participants",
+ "a.VorschauTeilnehmer": "Vue des participants",
+ "a.Wegleitung üK": "Guida CI",
+ "a.wegleitungUkUrl": "https://www.vbv.ch/fileadmin/vbv/Dokumente/Bildungsabschluesse/KV/Wegleitung_ueK_240215_it_V2.pdf",
+ "a.Weiter zur Zahlung": "",
+ "a.Wir haben per E-Mail eine Bestätigung an {email} geschickt.": "Abbiamo inviato una conferma via e-mail a {email}.",
+ "a.Wähle ein Zulassungsprofil, damit du deinen Lehrgang an der richtigen Stelle beginnen kannst.": "Scegli un profilo di ammissione in modo da iniziare il tuo corso nel posto giusto.",
+ "a.Wähle ein Zulassungsprofil, damit du deinen Lehrgang an der richtigen Stelle beginnen kannst. Du kannst ihn später jederzeit ändern.": "Scegli un profilo di ammissione in modo da iniziare il tuo corso nel posto giusto. Potrai cambiarlo in seguito in qualsiasi momento.",
+ "a.Wähle hier den Namen der Gesellschaft aus, in der du arbeitest. So können dich andere Personen einfacher finden.": "Seleziona qui il nome della società per cui lavori. Questo renderà più facile per gli altri trovarti.",
+ "a.xOfY Punkten erreicht": "{xOfY} punti raggiunti",
+ "a.Zahlungsart": "Modalità di pagamento",
+ "a.Zu erledigen": "Da fare",
+ "a.Zulassungsprofil": "Profilo di ammissione",
+ "a.Zulassungsprofil auswählen": "Selezionare il profilo di ammissione",
+ "a.Zum Unterlagen-Upload": "Carica documenti",
+ "a.Zurück": "",
+ "a.Zwischenstand": "Punto intermedio",
+ "a.{AVG} von {MAX}": "{AVG} di {MAX}",
+ "a.{NUMBER} Bestanden": "{NUMBER} superato",
+ "a.{NUMBER} Das kann ich": "{NUMBER} posso farlo ",
+ "a.{NUMBER} Das will ich nochmals anschauen": "{NUMBER} voglio rivederlo",
+ "a.Überbetriebliche Kurse": "Corsi interaziendali",
+ "a.Überprüfe deine Eingaben unten und gib anschliessend deine Fremdeinschätzung für FEEDBACK_REQUESTER frei": "Controlla le tue voci qui sotto e poi rilascia la tua valutazione esterna per {{FEEDBACK_REQUESTER}}.",
+ "a.Übersicht": "Panoramica",
+ "a.Übersicht anschauen": "Vedere la panoramica",
+ "Abgabe": "Consegna",
+ "Abgabetermin Ergebnisse:": "Termine di consegna dei risultati:",
"Alle": "Tutto",
- "Anwesenheit Präsenzkurse": "Presenza ai corsi",
+ "Anwesenheit": "Presenza",
"Anwesenheit bestätigen": "Confermare la presenza",
+ "Anwesenheit Präsenzkurse": "Presenza ai corsi",
"Anwesenheit prüfen": "Verificare la presenza",
"Anwesenheitskontrolle Präsenzkurse": "Controllo di presenza ai corsi",
+ "assignment.acceptConditionsDisclaimer": "Accettare le condizioni e consegnare i risultati",
+ "assignment.assessmentDocumentDisclaimer": "Questa analisi guidata del caso viene valutata sulla base del seguente strumento di valutazione:",
+ "assignment.assessmentTitle": "Valutazione",
+ "assignment.assignmentSubmitted": "I tuoi risultati sono stati consegnati con successo.",
+ "assignment.confirmSubmitPerson": "Sì, la persona seguente dovrebbe valutare i miei risultati.",
+ "assignment.confirmSubmitResults": "Sì, invierò i miei risultati.",
+ "assignment.Du musst die Bewertung bis am x um y Uhr abschliessen und freigeben": " Devi completare e rilasciare la valutazione entro il {{x}} alle ore {{y}}.",
+ "assignment.dueDateEvaluation": "Data di rilascio della valutazione",
+ "assignment.dueDateIntroduction": "Presenta i tuoi risultati entro il:",
+ "assignment.dueDateNotSet": "Non sono stati registrati dati di consegna per questo svolgimento",
+ "assignment.dueDateSubmission": "Termine di consegna",
+ "assignment.dueDateTitle": "assignment.dueDateTitle",
+ "assignment.edit": "Modificare",
+ "assignment.effortTitle": "Tempo richiesto",
+ "assignment.evaluationFeedback": "Feedback",
+ "assignment.evaluationInstrumentDescriptionText": "Il punteggio totale e il voto risultante vengono calcolati sulla base dello strumento di valutazione archiviato.",
+ "assignment.evaluationReason": "Motivo",
+ "assignment.feedbackRequiredText": "Inserisci qui i tuoi commenti.",
+ "assignment.initialSituationTitle": "Situazione di partenza",
+ "assignment.justificationRequiredText": "Qui è assolutamente necessario inserire una motivazione.",
+ "assignment.lastChangesNotSaved": "Non è stato possibile salvare l’ultima modifica.",
+ "assignment.performanceObjectivesTitle": "Obiettivi di valutazione",
+ "assignment.showAssessmentDocument": "Mostrare lo strumento di valutazione",
+ "assignment.submissionNotificationDisclaimer": "I tuoi risultati saranno valutati da {{name}}. Riceverai una notifica non appena la tua valutazione sarà disponibile.",
+ "assignment.submissionShowSampleSolution": "Mostra esempio di soluzione",
+ "assignment.submissionShowSampleSolutionText": "Qui troverete una possibile soluzione ai vostri compiti. Le procedure e i processi della vostra organizzazione possono differire da questa soluzione.",
+ "assignment.submitAssignment": "Consegnare i risultati",
+ "assignment.taskDefinition": "Svolgi le attività parziali e documenta i tuoi risultati.",
+ "assignment.taskDefinitionTitle": "Compito",
+ "assignment.von x Punkten": "di {{x}} punti",
+ "assignment.x hat die Ergebnisse am y um z Uhr abgegeben": "{{x}} ha consegnato i risultati il {{y}} alle ore {{z}}",
+ "assignment.x von y Arbeiten abgeschlossen": "{{x}} di {{y}} compiti completati",
+ "assignment.x von y Kompetenznachweis-Elementen abgeschlossen": "{{x}} su {{y}} elementi del controllo delle competenze completati",
+ "Aufgrund von Problemen beim Zahlungsanbieter ist ein Erwerb der myVBV-Lizenz derzeit nur mit TWINT möglich. Wir arbeiten mit Hochdruck an der Lösung des Problems. ": "A causa di problemi con il provider di pagamento, al momento è possibile acquistare la licenza myAFA solo con TWINT. Stiamo lavorando duramente per risolvere il problema.",
+ "Ausbildungsverantwortlicher": "Addetto alla formazione",
"Benutzername": "Nome utente",
+ "Berufsbildner": "",
+ "Bestanden": "",
+ "Bewertung von x y": "Valutazione di {{x}} {{y}}",
+ "Circle": "",
+ "circlePage.circleContentBoxTitle": "Cosa apprenderai in questo Circle",
+ "circlePage.contactExpertButton": "Contattare il/la trainer",
+ "circlePage.contactExpertDescription": "Confrontati con il/la trainer per il Circle {{circleName}}.",
+ "circlePage.contactLearningMentorButton": "Contattare il tutor",
+ "circlePage.contactLearningMentorDescription": "Confrontati con il tutor.",
+ "circlePage.Dieser Inhalt gehört zu x": "Questo contenuto appartiene a «{{x}}»",
+ "circlePage.documents.action": "Caricare i documenti",
+ "circlePage.documents.chooseLearningSequence": "Seleziona una sequenza di apprendimento",
+ "circlePage.documents.chooseName": "Seleziona un nome",
+ "circlePage.documents.chooseSequence": "Seleziona una sequenza di apprendimento",
+ "circlePage.documents.deleteModalTitle": "Eliminare il documento",
+ "circlePage.documents.deleteModalWarning": "Desideri davvero eliminare il documento \"{{title}}\"?
Una volta eseguita, l’operazione non potrà più essere annullata.",
+ "circlePage.documents.expertDescription": "Fornisci ai tuoi allievi e alle tue allieve contenuti aggiuntivi.",
+ "circlePage.documents.fileLabel": "File",
+ "circlePage.documents.maxFileSize": "Dimensioni massime del file: 50 MB",
+ "circlePage.documents.modalAction": "Selezionare il file",
+ "circlePage.documents.modalFileName": "Nome",
+ "circlePage.documents.modalNameInformation": "Max. 70 caratteri",
+ "circlePage.documents.selectFile": "Seleziona un file",
+ "circlePage.documents.title": "Documenti",
+ "circlePage.documents.trainerDescription": "Trova contenuti aggiuntivi per la tua lezione su Teams.",
+ "circlePage.documents.trainerLinkSrc": "https://vbvbern.sharepoint.com/sites/myVBV-AFA_K-CI",
+ "circlePage.documents.trainerLinkText": "Visualizzare i contenuti su Teams",
+ "circlePage.documents.trainerTitle": "Supporto per trainer",
+ "circlePage.documents.uploadErrorMessage": "Si è verificato un errore durante il caricamento. Riprova.",
+ "circlePage.documents.userDescription": "Qui trovi ulteriori documenti che ti supporteranno nell’apprendimento in questo Circle.",
+ "circlePage.duration": "Durata",
+ "circlePage.gotQuestions": "Hai domande?",
+ "circlePage.Im KompetenzNavi anschauen": "Mostra nel \"KompetenzNavi\"",
+ "circlePage.learnMore": "Ottieni maggiori informazioni",
+ "Cockpit anschauen": "",
+ "cockpit.all": "Tutti",
+ "cockpit.examsDone": "Esami sostenuti dal/dalla partecipante.",
+ "cockpit.feedbacksDone": "Feedback inviati dal/dalla partecipante.",
+ "cockpit.notifyTask": "Inviare notifica",
+ "cockpit.notifyTaskDescription": "Inviare notifica al/alla partecipante",
+ "cockpit.profileLink": "Mostrare il profilo",
+ "cockpit.progress": "Partecipanti / Stato",
+ "cockpit.tasksDone": "Incarichi di trasferimento completati dal/dalla partecipante.",
+ "cockpit.title": "Cockpit",
+ "cockpit.trainerFilesText": "Qui trovi i documenti del/della trainer (soluzioni, presentazioni ecc.) per il tuo Circle.",
+ "competence.listPageDescription": "Einleitung: Hier findest du einen Überblick aller Handlungskompetenzen und den dazugehörigen Leistungszielen, welche für deinen Lehrgang relevant sind. ",
+ "competenceCertificate.mainTitle": "Controllo delle competenze",
+ "competenceCertificates.mainTitle": "Controlli delle competenze",
+ "competences.assessAgain": "Guarda l'autovalutazione nel Circle «{{x}}»",
+ "competences.assessment": "Valutazioni",
+ "competences.competences": "Competenze",
+ "competences.lastImprovements": "Ultime competenze migliorate",
+ "competences.notAssessed": "Non valutato",
+ "competences.title": "NaviCompetenze",
+ "constants.no": "No",
+ "constants.satisfied": "soddisfatto/a",
+ "constants.unsatisfied": "insoddisfatto/a",
+ "constants.verySatisfied": "molto soddisfatto/a",
+ "constants.veryUnsatisfied": "molto insoddisfatto/a",
+ "constants.yes": "Sì",
+ "dashboard.courses": "Corso",
+ "dashboard.nocourses": "Non sei ancora stato/a assegnato/a a nessun corso.",
+ "dashboard.welcome": "Ti diamo il benvenuto, {{name}}",
+ "Der Preis für den Lehrgang «Versicherungsvermittler-/in VBV» beträgt CHF 300 exkl. MWSt.. Mit dem Kauf erhältst du Zugang zum Lernpfad und den Lernmedien.": "Il prezzo del corso \"Intermediario/a assicurativo/a AFA\" è di 300 CHF IVA esclusa. L'acquisto ti dà accesso al percorso di apprendimento e ai supporti didattici.",
+ "dueDates.noDueDatesAvailable": "Nessuna data disponibile",
+ "dueDates.showAllDueDates": "Mostrare tutte le date",
+ "Durchführung": "",
+ "edoniqTest.checkboxTitle": "Accetta le condizioni ed esegui il test",
+ "edoniqTest.deadlineInPast": "Il test non può più essere eseguito poiché la data di consegna è scaduta.",
+ "edoniqTest.qualifiesForExtendedTime": "Confermo di avere diritto a un test con compensazione delli ineguaglianze",
+ "edoniqTest.qualifiesForExtendedTimeTitle": "Impiegati con compensazione delli ineguaglianze (soggetto ad approvazione)",
+ "edoniqTest.startTest": "Inizia la prova",
+ "edoniqTest.submitDateDescription": "Invia i tuoi risultati puntualmente entro il {{x}}.",
+ "edoniqTest.testDescription": "Esegui il test seguente. Il test può essere eseguito solo una volta ed è rilevante per il voto.",
+ "edoniqTest.testSubmitted": "Hai completato questo test",
+ "edoniqTest.viewResults": "Guarda i risultati",
+ "Elemente zu erledigen": "Elementi da completare",
"Ergebnisse anschauen": "Vedere i risultati",
+ "Ergebnisse anzeigen": "Mostra i risultati",
"Feedback": "Feedback",
"Feedback anschauen": "Vedere il feedback",
- "Hier überprüfst und bestätigst du die Anwesenheit deiner Teilnehmenden": [],
+ "feedback.answers": "Risposte",
+ "feedback.areYouSatisfied": "Feedback sul corso",
+ "feedback.average": "Media",
+ "feedback.circleFeedback": "Feedback sul Circle",
+ "feedback.completionDescription": "Il tuo feedback è anonimo. Il/La trainer non visualizzerà il tuo nome e cognome.",
+ "feedback.completionDescriptionVV": "Il tuo feedback è anonimo e il tuo nome e cognome non sono visibili.",
+ "feedback.completionTitle": "Invia il tuo feedback a {{name}}",
+ "feedback.completionTitleVV": "Invia il tuo feedback all'AFA",
+ "feedback.courseNegativeFeedbackLabel": "Dove vedi un potenziale di miglioramento?",
+ "feedback.coursePositiveFeedbackLabel": "Cos’hai apprezzato particolarmente?",
+ "feedback.feedbackPageInfo": "I/Le partecipanti hanno fornito il feedback",
+ "feedback.feedbackPageTitle": "Feedback sul corso",
+ "feedback.feedbackSent": "Il tuo feedback è stato inviato",
+ "feedback.goalAttainmentLabel": "Raggiungimento complessivo degli obiettivi",
+ "feedback.happy": "Soddisfatto/a",
+ "feedback.instructorCompetenceLabel": "Come valuti il livello di preparazione sui temi e le competenze specialistiche dell’istruttore/istruttrice del corso?",
+ "feedback.instructorOpenFeedbackLabel": "Cos’altro vorresti ancora dire all’istruttore/istruttrice del corso?",
+ "feedback.instructorRespectLabel": "Le domande e i suggerimenti dei/delle partecipanti al corso sono stati accolti e presi sul serio?",
+ "feedback.intro": "{{name}}, il tuo/la tua trainer ti invita a fornire un feedback su di lui/lei. È facoltativo, ma sarebbe utile per migliorare la tua esperienza di apprendimento.",
+ "feedback.materialsRatingLabel": "Se sì: qual è la valutazione dei documenti di preparazione (ad es. eLearning)?",
+ "feedback.noFeedbacks": "Non è stato fornito ancora nessun feedback",
+ "feedback.praxisAssignmentClarity": "Gli incarichi di lavori pratici erano chiari e comprensibili?",
+ "feedback.preparationTaskClarityLabel": "Gli incarichi di preparazione erano chiari e comprensibili?",
+ "feedback.proficiencyLabel": "Come valuti il tuo livello di preparazione sui temi dopo il corso?",
+ "feedback.proficiencyLabelVV": "Come valuti il tuo livello di preparazione sui temi dopo il Circle?",
+ "feedback.questionTitle": "Domanda",
+ "feedback.recommendLabel": "Raccomanderesti il corso?",
+ "feedback.recommendLabelVV": "Raccomanderesti il Circle?",
+ "feedback.satisfactionLabel": "Soddisfazione complessiva",
+ "feedback.sendFeedback": "Inviare il feedback",
+ "feedback.sentByUsers": "Fornito da {{count}} partecipanti",
+ "feedback.showDetails": "Mostrare i dettagli",
+ "feedback.unhappy": "Insoddisfatto/a",
+ "feedback.veryHappy": "Molto soddisfatto/a",
+ "feedback.veryUnhappy": "Molto insoddisfatto/a",
+ "Feedback: Feedback zum Lehrgang": "Feedback: Feedback sul corso",
+ "foobar.hello": "Ciao Innoweek",
+ "footer.contact": "Contatti",
+ "footer.contactLink": "https://www.vbv.ch/it/afa/organizzazione/contatto",
+ "footer.contactText": "Contatti",
+ "footer.copyright": "© 2023 AFA",
+ "footer.dataProtectionLink": "https://www.vbv.ch/it/dichiarazione-di-protezione-dei-dati",
+ "footer.dataProtectionText": "Dichiarazione sulla protezione dei dati",
+ "footer.imprintLink": "https://www.vbv.ch/it/impressum",
+ "footer.imprintText": "Impressum",
+ "Freigabetermin Bewertungen:": "Termine di pubblicazione delle valutazioni:",
+ "Füge dein Profilbild hinzu und ergänze die fehlenden Angaben.": "Aggiungi la foto del tuo profilo e inserisci i dettagli mancanti.",
+ "Geleitete Fallarbeit": "Caso di studio guidato",
+ "general.back": "Indietro",
+ "general.backCapitalized": "Indietro",
+ "general.backToCircle": "Torna al Circle",
+ "general.backToLearningPath": "Torna al percorso formativo",
+ "general.cancel": "Annullare",
+ "general.certificate_many": "Certificati",
+ "general.certificate_one": "Certificato",
+ "general.certificate_other": "Certificati",
+ "general.circles": "Circles",
+ "general.close": "Chiudere",
+ "general.exam_many": "Esami",
+ "general.exam_one": "Esame",
+ "general.exam_other": "Esami",
+ "general.examResult_many": "Risultati degli esami",
+ "general.examResult_one": "Risultato dell’esame",
+ "general.examResult_other": "Risultati degli esami",
+ "general.feedback_many": "Feedback",
+ "general.feedback_one": "Feedback",
+ "general.feedback_other": "Feedback",
+ "general.im circle x anschauen": "Guarda nel Circle «{{x}}»",
+ "general.introduction": "Introduzione",
+ "general.learningPath": "Percorso di formazione",
+ "general.learningSequence": "Sequenza di apprendimento",
+ "general.learningUnit": "Unità di apprendimento",
+ "general.next": "Avanti",
+ "general.nextStep": "Continua",
+ "general.no": "No",
+ "general.notification_many": "Notifiche",
+ "general.notification_one": "Notifica",
+ "general.notification_other": "Notifiche",
+ "general.profileLink": "Mostrare i dettagli",
+ "general.save": "Salvare",
+ "general.send": "Inviare",
+ "general.settings": "Impostazioni account",
+ "general.shop": "Shop",
+ "general.show": "Visualizzare",
+ "general.showAll": "Visualizzare tutto",
+ "general.start": "Si comincia",
+ "general.submission": "Consegna",
+ "general.title": "myAFA",
+ "general.transferTask_many": "Incarichi di trasferimento",
+ "general.transferTask_one": "Incarico di trasferimento",
+ "general.transferTask_other": "Incarichi di trasferimento",
+ "general.yes": "Sì",
+ "Generation": "",
+ "Hast du Fragen?": "Hai domande?",
+ "Hier überprüfst und bestätigst du die Anwesenheit deiner Teilnehmenden.": "Qui controlli e confermi la presenza dei tuoi partecipanti.",
+ "Ich will die Anwesenheit der untenstehenden Personen definitiv bestätigen.": "Voglio confermare definitivamente la presenza delle persone sottostanti.",
+ "Jahr": "",
+ "Keine Auftragsdetails verfügbar.": "",
+ "Kompetenznachweise": "",
+ "Kompetenzprofil": "",
+ "Kosten im": "Costi nel",
+ "Kosten in": "",
+ "Kosten in 2024": "",
+ "language.de": "Deutsch",
+ "language.fr": "Français",
+ "language.it": "Italiano",
+ "learningContent.markAsDone": "Contrassegnare come completato",
+ "learningContentTypes.attendanceCourse": "Corso di presenza",
+ "learningContentTypes.casework": "Caso di studio guidato",
+ "learningContentTypes.documents": "Documenti",
+ "learningContentTypes.edoniqTest": "Domande di conoscenza e di comprensione",
+ "learningContentTypes.feedback": "Feedback",
+ "learningContentTypes.knowledgeAssessment": "Test",
+ "learningContentTypes.learningModule": "Modulo di formazione",
+ "learningContentTypes.mandatory_casework": "",
+ "learningContentTypes.placeholder": "In attuazione",
+ "learningContentTypes.praxisAssignment": "Ordine",
+ "learningContentTypes.prepAssignment": "Incarico di preparazione",
+ "learningContentTypes.reflection": "Riflessione",
+ "learningContentTypes.task": "",
+ "learningContentTypes.test": "Test",
+ "learningContentTypes.text": "Testo",
+ "learningContentTypes.video": "Video",
+ "learningPathPage.currentCircle": "Circle attuale",
+ "learningPathPage.listView": "Vista elenco",
+ "learningPathPage.nextDueDates": "Prossime date",
+ "learningPathPage.nextStep": "Prossimo passo",
+ "learningPathPage.pathView": "Vista percorso",
+ "learningPathPage.progressText": "Hai svolto {{ inProgressCount }} Circles su {{ allCount }}",
+ "learningPathPage.showListView": "Mostrare la vista elenco",
+ "learningPathPage.topics": "Temi:",
+ "learningPathPage.welcomeBack": "Bentornato/a al tuo corso:",
+ "Lehrgang": "",
+ "Lernbegleitung einladen": "",
+ "Lernpfad kaufen": "",
+ "login.demoLogin": "Login Demo",
+ "login.guidelineFile": "Registrazione_myAFA.pdf",
+ "login.guidelineText": "Scopri come iscriverti come apprendista professionale",
+ "login.login": "Login",
+ "login.ssoLogin": "Login/Registrazione SSO",
+ "login.ssoText": "Clicca sul pulsante per effettuare il login o registrarti tramite SSO.",
+ "login.welcomeText": "Benvenuti nella pagina di login per i corsi interaziendali del ramo di formazione e degli esami commerciali \"Assicurazione privata\".",
+ "login.welcomeUk": "Benvenuti",
+ "mainNavigation.logout": "Logout",
+ "mainNavigation.profile": "Profilo",
+ "mediaLibrary.handlungsfelder.description": "Trova tutte le risorse dei campi d’azione, come materiali didattici, link e altre informazioni utili.",
+ "mediaLibrary.handlungsfelder.title_many": "Campi d’azione",
+ "mediaLibrary.handlungsfelder.title_one": "Campo d’azione",
+ "mediaLibrary.handlungsfelder.title_other": "Campi d’azione",
+ "mediaLibrary.learningMedia.description": "Trova un elenco completo di libri e altri materiali a cui si rimanda nel corso.",
+ "mediaLibrary.learningMedia.titel": "Materiali didattici",
+ "mediaLibrary.show": "Visualizza la libreria mediateca",
+ "mediaLibrary.title": "Mediateca",
+ "Meine Lernbegleiter": "",
+ "Meine Praxisbildner": "I miei formatori pratici",
+ "Member": "Partecipanti",
+ "MentorUK": "Formatore/-trice pratico/a",
+ "MentorVV": "Tutor",
+ "messages.sendMessage": "Scrivere un messaggio",
"MS Teams öffnen": "Aprire MS Teams",
+ "Nach der Bezahlung von 300 CHF exkl. MWSt. erhältst du Zugang für den gesamten Lehrgang (inkl. Prüfung).": "",
+ "Neuen Praxisbildner einladen": "Invitare un nuovo formatore pratico",
+ "Nicht bestanden": "",
+ "notifications.load_more": "Caricare altro",
+ "notifications.no_notifications": "Al momento non hai nessuna notifica",
"Nächste Termine": "Prossime date",
"Passwort": "Password",
+ "Personen": "",
+ "profile.": "",
+ "profile.all": "Multiramo",
+ "profile.krankenzusatzversicherung": "Malattie complementare",
+ "profile.leben": "Vita",
+ "profile.nichtleben": "Non vita",
+ "profile.null": "",
+ "Präsenzkurs": "",
+ "receivedEvaluation.no": "Devi riguardarlo ancora una volta",
+ "receivedEvaluation.yes": " Sì, puoi farlo",
+ "Reflexion": "",
+ "Region": "",
+ "Rolle": "",
"Sehr unzufrieden": "molto insoddisfatto",
"Sehr zufrieden": "molto soddisfatto",
+ "selfEvaluation.instruction.0": "Überprüfe, ob du in der Lernheinheit",
+ "selfEvaluation.instruction.1": "alles verstanden hast.",
+ "selfEvaluation.instruction.2": "Lies die folgende Aussage und bewerte sie:",
+ "selfEvaluation.no": "Devo riguardarlo ancora una volta",
+ "selfEvaluation.progressLink": "Aprire Navigatore Competenze",
+ "selfEvaluation.progressText": "Controlla i tuoi progressi nel Navigatore Competenze:",
+ "selfEvaluation.selfEvaluation": "Auto-valutazione",
+ "selfEvaluation.selfEvaluationNo": "$t(a.Selbsteinschätzung): Devo riguardarlo ancora una volta.",
+ "selfEvaluation.selfEvaluationYes": "$t(a.Selbsteinschätzung): Ho compreso tutto.",
+ "selfEvaluation.steps": "Passo {{current}} di {{max}}",
+ "selfEvaluation.title": "Selbsteinschätzung {{title}}",
+ "selfEvaluation.yes": "Sì, ho compreso tutto",
+ "settings.emailNotifications": "Notifiche e-mail",
+ "shop.paymentCembraByjunoMessage": "Un pagamento con fattura sarà sempre addebitato al tuo indirizzo privato. È assolutamente necessario fornire il tuo numero di telefono e la tua data di nascita. Importante: il termine di pagamento è di 30 giorni. L'elaborazione del pagamento (inclusi sollecito, incasso, recupero crediti) viene effettuata direttamente da CembraPay AG. Riceverete la fattura via e-mail.",
+ "Sobald du einer Durchführung zugewiesen bist, ist alles bereit.": "Non appena sarai assegnato a un'implementazione, tutto sarà pronto.",
+ "Sprache wählen und Lehrgang starten": "Seleziona la lingua e inizia il corso",
+ "start.chooseCourse": "Scegli il tuo corso ora:",
+ "start.myvbvDescription": "L'ambiente di apprendimento per l'assicurazione",
+ "start.ukDescription": "I corsi interaziendali nell'ambito del programma di formazione «Impiegato/a di commercio AFC Assicurazione privata».",
+ "start.ukTitle": "Impiegato/a di commercio AFC Assicurazione privata / Corsi interaziendali",
+ "start.vvDescription": "Il percorso di apprendimento e i supporti didattici che ti preparano all'esame «Intermediario/a assicurativo/a AFA».",
"Status anschauen": "Vedere lo stato",
+ "Supervisor": "Responsabile CI",
+ "Teilnehmer": "",
+ "Teilnehmer im": "I partecipanti al",
+ "Teilnehmer im 2024": "",
+ "Teilnehmer nach Zulassungsprofilen": "Partecipanti secondo i profili di ammissione",
+ "Teilnehmer nach Zulassungsprofilen im": "",
+ "Termin nicht festgelegt": "",
"TODO: Nächste Termine": "TODO: prossime date",
+ "Trainer": "Trainer",
"Trainerunterlagen": "Documenti del/della trainer",
- "Wissens - und Verständnisfragen": "Domande di conoscenza e di comprensione",
- "Zur Zeit sind keine Termine vorhanden": "Al momento non ci sono scadenze",
- "a": {
- "Alle aufklappen": "Apri tutto",
- "Begründung": "Motivazione",
- "Beurteilungsinstrument anzeigen": "Mostra lo strumento di valutazione",
- "Beurteilungskriterium": "Criterio di valutazione",
- "Bewertung": "Valutazione",
- "Bewertung fortsetzen": "Continua la valutazione",
- "Bewertung freigegeben": "Valutazioni approvate/a",
- "Bewertung starten": "Continua la valutazione",
- "Circle": "Cerchio",
- "Datum": "Data",
- "Details anzeigen": "Mostrare i dettagli",
- "Ergebnisse": "Risultati",
- "Ergebnisse abgegeben": "Risultati consegnati",
- "Ergebnisse anschauen": "Guarda i risultati",
- "Geleitete Fallarbeit": "Caso di studio guidato",
- "Gesamtpunktzahl": "Punteggio totale",
- "Handlungskompetenzen": "Competenze operative",
- "Höchstpunktzahl": "Punteggio massimo",
- "Kein Circle verfügbar oder ausgewählt": [],
- "KompetenzNavi": "NaviCompetenze",
- "Kompetenznachweis": "Controllo delle competenze",
- "Kompetenznachweise": "Controlli delle competenze",
- "Leistungsziele": "Obiettivo di valutazione",
- "Mediathek": "Mediateca",
- "Punkte": "punti",
- "Selbsteinschätzung": "Auto-valutazione",
- "Selbsteinschätzung anschauen": "Guarda l'auto-valutazione",
- "Selbsteinschätzungen": "Auto-valutaziones",
- "Standort": "Posizione",
- "Trainer": "Trainer",
- "VorschauTeilnehmer": "Anteprima partecipante",
- "Zwischenstand": "Punto intermedio",
- "competenceCertificateNoUserPoints": "Il punteggio verrà calcolato in un momento successivo.",
- "Übersicht": "Panoramica"
- },
- "assignment": {
- "Du musst die Bewertung bis am x um y Uhr abschliessen und freigeben": " Devi completare e rilasciare la valutazione entro il {{x}} alle ore {{y}}.",
- "acceptConditionsDisclaimer": "Accettare le condizioni e consegnare i risultati",
- "assessmentDocumentDisclaimer": "Questa analisi guidata del caso viene valutata sulla base del seguente strumento di valutazione:",
- "assessmentTitle": "Valutazione",
- "assignmentSubmitted": "I tuoi risultati sono stati consegnati con successo.",
- "confirmSubmitPerson": "Confermo che i miei risultati dovranno essere valutati dalla seguente persona.",
- "confirmSubmitResults": "Confermo di aver controllato il riepilogo dei miei risultati e di volerli consegnare.",
- "dueDateEvaluation": "Data di rilascio della valutazione",
- "dueDateIntroduction": "Presenta i tuoi risultati entro il:",
- "dueDateNotSet": "Non sono stati registrati dati di consegna per questo svolgimento",
- "dueDateSubmission": "Termine di consegna",
- "edit": "Modificare",
- "effortTitle": "Tempo richiesto",
- "evaluationInstrumentDescriptionText": "Il punteggio totale e il voto risultante vengono calcolati sulla base dello strumento di valutazione archiviato.",
- "initialSituationTitle": "Situazione di partenza",
- "justificationRequiredText": "Qui è assolutamente necessario inserire una motivazione.",
- "lastChangesNotSaved": "Non è stato possibile salvare l’ultima modifica.",
- "performanceObjectivesTitle": "Obiettivi di valutazione",
- "showAssessmentDocument": "Mostrare lo strumento di valutazione",
- "submissionNotificationDisclaimer": "I tuoi risultati saranno valutati da {{name}}. Riceverai una notifica non appena la tua valutazione sarà disponibile.",
- "submitAssignment": "Consegnare i risultati",
- "taskDefinition": "Svolgi le attività parziali e documenta i tuoi risultati.",
- "taskDefinitionTitle": "Compito",
- "von x Punkten": "di {{x}} punti",
- "x hat die Ergebnisse am y um z Uhr abgegeben": "{{x}} ha consegnato i risultati il {{y}} alle ore {{z}}",
- "x von y Arbeiten abgeschlossen": "{{x}} di {{y}} compiti completati",
- "x von y Kompetenznachweis-Elementen abgeschlossen": "{{x}} su {{y}} elementi del controllo delle competenze completati"
- },
- "circlePage": {
- "Dieser Inhalt gehört zu x": "Questo contenuto appartiene a «{{x}}»",
- "Im KompetenzNavi anschauen": "Mostra nel \"KompetenzNavi\"",
- "circleContentBoxTitle": "Cosa apprenderai in questo Circle",
- "contactExpertButton": "Contattare il/la trainer",
- "contactExpertDescription": "Confrontati con il/la trainer per il Circle {{circleName}}.",
- "documents": {
- "action": "Caricare i documenti",
- "chooseLearningSequence": "Seleziona una sequenza di apprendimento",
- "chooseName": "Seleziona un nome",
- "chooseSequence": "Seleziona una sequenza di apprendimento",
- "deleteModalTitle": "Eliminare il documento",
- "deleteModalWarning": "Desideri davvero eliminare il documento \"{{title}}\"?
Una volta eseguita, l’operazione non potrà più essere annullata.",
- "expertDescription": "Fornisci ai tuoi allievi e alle tue allieve contenuti aggiuntivi.",
- "fileLabel": "File",
- "maxFileSize": "Dimensioni massime del file: 20 MB",
- "modalAction": "Selezionare il file",
- "modalFileName": "Nome",
- "modalNameInformation": "Max. 70 caratteri",
- "selectFile": "Seleziona un file",
- "title": "Documenti",
- "trainerDescription": "Trova contenuti aggiuntivi per la tua lezione su Teams.",
- "trainerLinkSrc": "https://vbvbern.sharepoint.com/sites/myVBV-AFA_K-CI",
- "trainerLinkText": "Visualizzare i contenuti su Teams",
- "trainerTitle": "Supporto per trainer",
- "uploadErrorMessage": "Si è verificato un errore durante il caricamento. Riprova.",
- "userDescription": "Qui trovi ulteriori documenti che ti supporteranno nell’apprendimento in questo Circle."
- },
- "duration": "Durata",
- "gotQuestions": "Hai domande?",
- "learnMore": "Ottieni maggiori informazioni"
- },
- "cockpit": {
- "all": "Tutti",
- "examsDone": "Esami sostenuti dal/dalla partecipante.",
- "feedbacksDone": "Feedback inviati dal/dalla partecipante.",
- "notifyTask": "Inviare notifica",
- "notifyTaskDescription": "Inviare notifica al/alla partecipante",
- "profileLink": "Mostrare il profilo",
- "progress": "Partecipanti / Stato",
- "tasksDone": "Incarichi di trasferimento completati dal/dalla partecipante.",
- "title": "Cockpit",
- "trainerFilesText": "Qui trovi i documenti del/della trainer (soluzioni, presentazioni ecc.) per il tuo Circle."
- },
- "competenceCertificate": {
- "mainTitle": "Controllo delle competenze"
- },
- "competenceCertificates": {
- "mainTitle": "Controlli delle competenze"
- },
- "competences": {
- "assessAgain": "Guarda l'autovalutazione nel cerchio «{{x}}»",
- "assessment": "Valutazioni",
- "competences": "Competenze",
- "lastImprovements": "Ultime competenze migliorate",
- "notAssessed": "Non valutato",
- "title": "NaviCompetenze"
- },
- "constants": {
- "no": "No",
- "satisfied": "soddisfatto/a",
- "unsatisfied": "insoddisfatto/a",
- "verySatisfied": "molto soddisfatto/a",
- "veryUnsatisfied": "molto insoddisfatto/a",
- "yes": "Sì"
- },
- "dashboard": {
- "courses": "Corso",
- "dueDatesTitle": "Date",
- "nocourses": "Non sei ancora stato/a assegnato/a a nessun corso.",
- "welcome": "Ti diamo il benvenuto, {{name}}"
- },
- "dueDates": {
- "nextDueDates": "Prossime scadenze",
- "noDueDatesAvailable": "Nessuna data disponibile",
- "showAllDueDates": "Mostrare tutte le date"
- },
- "edoniqTest": {
- "qualifiesForExtendedTime": "Confermo di avere diritto a un test con compensazione delli ineguaglianze",
- "qualifiesForExtendedTimeTitle": "Impiegati con compensazione delli ineguaglianze (soggetto ad approvazione)",
- "startTest": "Inizia la prova"
- },
- "feedback": {
- "answers": "Risposte",
- "areYouSatisfied": "Quanto sei soddisfatto/a?",
- "average": "Media",
- "circleFeedback": "Feedback sul Circle",
- "completionDescription": "Il tuo feedback è anonimo. Il/La trainer non visualizzerà il tuo nome e cognome.",
- "completionTitle": "Invia il tuo feedback a {{name}}",
- "courseNegativeFeedbackLabel": "Dove vedi un potenziale di miglioramento?",
- "coursePositiveFeedbackLabel": "Cos’hai apprezzato particolarmente?",
- "feedbackPageInfo": "I/Le partecipanti hanno fornito il feedback",
- "feedbackPageTitle": "Feedback sul corso",
- "feedbackSent": "Il tuo feedback è stato inviato",
- "goalAttainmentLabel": "Raggiungimento complessivo degli obiettivi",
- "happy": "Soddisfatto/a",
- "instructorCompetenceLabel": "Come valuti il livello di preparazione sui temi e le competenze specialistiche dell’istruttore/istruttrice del corso?",
- "instructorOpenFeedbackLabel": "Cos’altro vorresti ancora dire all’istruttore/istruttrice del corso?",
- "instructorRespectLabel": "Le domande e i suggerimenti dei/delle partecipanti al corso sono stati accolti e presi sul serio?",
- "intro": "{{name}}, il tuo/la tua trainer ti invita a fornire un feedback su di lui/lei. È facoltativo, ma sarebbe utile per migliorare la tua esperienza di apprendimento.",
- "materialsRatingLabel": "Se sì: qual è la valutazione dei documenti di preparazione (ad es. eLearning)?",
- "noFeedbacks": "Non è stato fornito ancora nessun feedback",
- "preparationTaskClarityLabel": "Gli incarichi di preparazione erano chiari e comprensibili?",
- "proficiencyLabel": "Come valuti il tuo livello di preparazione sui temi dopo il corso?",
- "questionTitle": "Domanda",
- "recommendLabel": "Raccomanderesti il corso?",
- "satisfactionLabel": "Soddisfazione complessiva",
- "sendFeedback": "Inviare il feedback",
- "sentByUsers": "Fornito da {{count}} partecipanti",
- "showDetails": "Mostrare i dettagli",
- "unhappy": "Insoddisfatto/a",
- "veryHappy": "Molto soddisfatto/a",
- "veryUnhappy": "Molto insoddisfatto/a"
- },
- "foobar": {
- "hello": "Ciao Innoweek"
- },
- "footer": {
- "contact": "Contatti",
- "contactLink": "https://www.vbv.ch/it/afa/organizzazione/contatto",
- "contactText": "Contatti",
- "copyright": "© 2023 AFA",
- "dataProtectionLink": "https://www.vbv.ch/it/dichiarazione-di-protezione-dei-dati",
- "dataProtectionText": "Dichiarazione sulla protezione dei dati",
- "imprintLink": "https://www.vbv.ch/it/impressum",
- "imprintText": "Impressum"
- },
- "general": {
- "back": "Indietro",
- "backCapitalized": "Indietro",
- "backToCircle": "Torna al Circle",
- "backToLearningPath": "Torna al percorso formativo",
- "certificate_many": "Certificati",
- "certificate_one": "Certificato",
- "certificate_other": "Certificati",
- "circles": "Circle",
- "close": "Chiudere",
- "examResult_many": "Risultati degli esami",
- "examResult_one": "Risultato dell’esame",
- "examResult_other": "Risultati degli esami",
- "exam_many": "Esami",
- "exam_one": "Esame",
- "exam_other": "Esami",
- "feedback_many": "Feedback",
- "feedback_one": "Feedback",
- "feedback_other": "Feedback",
- "im circle x anschauen": "Guarda nel cerchio «{{x}}»",
- "introduction": "Introduzione",
- "learningPath": "Percorso di formazione",
- "learningSequence": "Sequenza di apprendimento",
- "learningUnit": "Unità di apprendimento",
- "next": "Avanti",
- "nextStep": "Continua",
- "no": "No",
- "notification_many": "Notifiche",
- "notification_one": "Notifica",
- "notification_other": "Notifiche",
- "profileLink": "Mostrare i dettagli",
- "save": "Salvare",
- "send": "Inviare",
- "settings": "Impostazioni account",
- "shop": "Shop",
- "show": "Visualizzare",
- "showAll": "Visualizzare tutto",
- "start": "Si comincia",
- "submission": "Consegna",
- "title": "myAFA",
- "transferTask_many": "Incarichi di trasferimento",
- "transferTask_one": "Incarico di trasferimento",
- "transferTask_other": "Incarichi di trasferimento",
- "yes": "Sì"
- },
- "language": {
- "de": "Deutsch",
- "fr": "Français",
- "it": "Italiano"
- },
- "learningContent": {
- "markAsDone": "Contrassegnare come completato"
- },
- "learningContentTypes": {
- "attendanceCourse": "Corso di presenza",
- "casework": "Caso di studio guidato",
- "documents": "Documenti",
- "edoniqTest": "Domande di conoscenza e di comprensione",
- "feedback": "Feedback",
- "learningModule": "Modulo di formazione",
- "placeholder": "In attuazione",
- "prepAssignment": "Incarico di preparazione",
- "reflection": "Riflessione",
- "task": "Attività",
- "test": "Test",
- "text": "Testo",
- "video": "Video"
- },
- "learningPathPage": {
- "currentCircle": "Circle attuale",
- "listView": "Vista elenco",
- "nextDueDates": "Prossime date",
- "nextStep": "Prossimo passo",
- "pathView": "Vista percorso",
- "progressText": "Hai svolto {{ inProgressCount }} Circle su {{ allCount }}",
- "showListView": "Mostrare la vista elenco",
- "topics": "Temi:",
- "welcomeBack": "Bentornato/a al tuo corso:"
- },
- "login": {
- "demoLogin": "Login Demo",
- "guidelineFile": "Registrazione_myAFA.pdf",
- "guidelineText": "Scopri come iscriverti come apprendista professionale",
- "login": "Login",
- "ssoLogin": "Login/Registrazione SSO",
- "ssoText": "Clicca sul pulsante per effettuare il login o registrarti tramite SSO.",
- "welcomeText": "Benvenuti nella pagina di login per i corsi interaziendali del ramo di formazione e degli esami commerciali \"Assicurazione privata\".",
- "welcomeUk": "Benvenuti"
- },
- "mainNavigation": {
- "logout": "Logout",
- "profile": "Profilo"
- },
- "mediaLibrary": {
- "handlungsfelder": {
- "description": "Trova tutte le risorse dei campi d’azione, come materiali didattici, link e altre informazioni utili.",
- "title_many": "Campi d’azione",
- "title_one": "Campo d’azione",
- "title_other": "Campi d’azione"
- },
- "learningMedia": {
- "description": "Trova un elenco completo di libri e altri materiali a cui si rimanda nel corso.",
- "titel": "Materiali didattici"
- },
- "title": "Mediateca"
- },
- "messages": {
- "sendMessage": "Scrivere un messaggio"
- },
- "notifications": {
- "load_more": "Caricare altro",
- "no_notifications": "Al momento non hai nessuna notifica"
- },
- "selfEvaluation": {
- "instruction": [
- "Überprüfe, ob du in der Lernheinheit",
- "alles verstanden hast.",
- "Lies die folgende Aussage und bewerte sie:"
- ],
- "no": "Devo riguardarlo ancora una volta",
- "progressLink": "Aprire Navigatore Competenze",
- "progressText": "Controlla i tuoi progressi nel Navigatore Competenze:",
- "selfEvaluation": "Auto-valutazione",
- "selfEvaluationNo": "$t(a.Selbsteinschätzung): Devo riguardarlo ancora una volta.",
- "selfEvaluationYes": "$t(a.Selbsteinschätzung): Ho compreso tutto.",
- "steps": "Passo {{current}} di {{max}}",
- "title": "Selbsteinschätzung {{title}}",
- "yes": "Sì, ho compreso tutto"
- },
- "settings": {
- "emailNotifications": "Notifiche e-mail"
- },
- "uk": {
- "contact": {
- "address": "Laupenstrasse 10, 3008 Berna",
- "team": "Team Sviluppo delle giovani leve",
- "title": "Associazione per la formazione professionale nell'assicurzione"
- },
- "dashboard": {
- "allClear": "È tutto chiaro?",
- "nextSteps": "In qualità di apprendista, nei prossimi giorni sarai assegnata/o a un corso interaziendale. Poi il riquadro di formazione personalizzato del corso apparirà qui con ulteriori informazioni.",
- "welcome": "Tutto ha funzionato, ora sei registrata/o nell'ambiente di apprendimento digitale dell'Associazione per la formazione professionale nell'assicurazione (AFA)!"
- }
- },
+ "TrainingResponsible": "Addetto alla formazione",
+ "uk.contact.address": "Laupenstrasse 10, 3008 Berna",
+ "uk.contact.team": "Team Sviluppo delle giovani leve",
+ "uk.contact.title": "Associazione per la formazione professionale nell'assicurzione",
+ "uk.dashboard.allClear": "È tutto chiaro?",
+ "uk.dashboard.nextSteps": "In qualità di apprendista, nei prossimi giorni sarai assegnata/o a un corso interaziendale. Poi il riquadro di formazione personalizzato del corso apparirà qui con ulteriori informazioni.",
+ "uk.dashboard.welcome": "Tutto ha funzionato, ora sei registrata/o nell'ambiente di apprendimento digitale dell'Associazione per la formazione professionale nell'assicurazione (AFA)!",
+ "UnknownRoleKey": "",
"unzufrieden": "insoddisfatto",
+ "Vorbedingung": "Condizione preliminare",
+ "Vorbereitungsaufgabe": "Incarico di preparazione",
+ "vv.contact.team": "Team di intermediari",
+ "Weiter lernen": "Continuare a studiare",
+ "Wichtig: wird die Rechnung von deinem Arbeitgeber bezahlt, dann kannst du zusätzlich die Rechnungsadresse deines Arbeitsgebers erfassen.": "Importante: se la fattura è pagata dal tuo datore di lavoro, puoi inserire anche l'indirizzo di fatturazione del tuo datore di lavoro.",
+ "Wir bedauern die Unannehmlichkeiten und danken für dein Verständnis. Bei Fragen steht dir das Team Vermittler gerne zur Verfügung.": "Ci dispiace per l'inconveniente e ti ringraziamo per la tua comprensione. Per qualsiasi domanda, non esitare a contattare il team intermediari.",
+ "Wissens - und Verständnisfragen": "Domande di conoscenza e di comprensione",
+ "Wähle ein Zulassungsprofil, damit du deinen Lehrgang an der richtigen Stelle beginnen kannst": "Scegli un profilo di ammissione in modo da iniziare il tuo corso nel posto giusto.",
+ "Wähle ein Zulassungsprofil, damit du deinen Lehrgang an der richtigen Stelle beginnen kannst.": "Scegli un profilo di ammissione in modo da iniziare il tuo corso nel posto giusto.",
+ "x von y abgeschlossen": "{{x}} di {{y}} completate/a",
"x von y Bewertungen freigegeben": "{{x}} di {{y}} valutazioni approvate/a",
"x von y Ergebnisse abgegeben": "{{x}} di {{y}} risultati consegnati/o",
"x von y Feedbacks abgegeben": "{{x}} di {{y}} feedback consegnati/o",
- "x von y abgeschlossen": "{{x}} di {{y}} completate/a",
- "zufrieden": "soddisfatto"
+ "Zu erledigen": "",
+ "zufrieden": "soddisfatto",
+ "Zulassungsprofil": "",
+ "Zur Zeit sind keine Termine vorhanden": "Al momento non ci sono scadenze",
+ "Überbetriebliche Kurse": ""
}
diff --git a/client/src/main.ts b/client/src/main.ts
index f9124525..4c1dafc6 100644
--- a/client/src/main.ts
+++ b/client/src/main.ts
@@ -1,4 +1,4 @@
-import { i18nextInit } from "@/i18nextWrapper";
+import { i18nextInit, loadI18nextLocaleMessages } from "@/i18nextWrapper";
import { generateLocalSessionKey } from "@/statistics";
import * as Sentry from "@sentry/vue";
import i18next from "i18next";
@@ -48,6 +48,8 @@ Sentry.init({
});
i18nextInit().then(() => {
- app.use(I18NextVue, { i18next });
- app.mount("#app");
+ loadI18nextLocaleMessages("de").then(() => {
+ app.use(I18NextVue, { i18next });
+ app.mount("#app");
+ });
});
diff --git a/client/src/pages/cockpit/assignmentsPage/AssignmentDetails.vue b/client/src/pages/cockpit/assignmentsPage/AssignmentDetails.vue
index ddc599b5..dc6b1889 100644
--- a/client/src/pages/cockpit/assignmentsPage/AssignmentDetails.vue
+++ b/client/src/pages/cockpit/assignmentsPage/AssignmentDetails.vue
@@ -80,7 +80,7 @@ function findUserPointsHtml(userId: string) {
if (!gradedUser.passed) {
result += ` ${t(
- "a.Nicht bestanden"
+ "a.Nicht Bestanden"
)}`;
}
}
diff --git a/client/src/stores/user.ts b/client/src/stores/user.ts
index 6e9e9e53..5280d4c5 100644
--- a/client/src/stores/user.ts
+++ b/client/src/stores/user.ts
@@ -1,5 +1,5 @@
import { bustItGetCache, itGetCached, itPost } from "@/fetchHelpers";
-import { setI18nLanguage } from "@/i18nextWrapper";
+import { loadI18nextLocaleMessages, setI18nLanguage } from "@/i18nextWrapper";
import type { Country, CourseProfile } from "@/services/entities";
import { directUpload } from "@/services/files";
import dayjs from "dayjs";
@@ -106,6 +106,7 @@ async function setLocale(language: AvailableLanguages) {
}
dayjs.locale(language);
setI18nLanguage(language);
+ loadI18nextLocaleMessages(language);
}
export const useUserStore = defineStore({
diff --git a/docs/assets/babeledit01.png b/docs/assets/babeledit01.png
new file mode 100644
index 00000000..0503e562
Binary files /dev/null and b/docs/assets/babeledit01.png differ
diff --git a/docs/assets/babeledit02.png b/docs/assets/babeledit02.png
new file mode 100644
index 00000000..f724f99a
Binary files /dev/null and b/docs/assets/babeledit02.png differ