From d6c181c99770c6a7757c17347c37c85b361bf586 Mon Sep 17 00:00:00 2001 From: Oscar Hinton Date: Tue, 22 Mar 2022 10:00:07 +0100 Subject: [PATCH 01/18] Define Angular CLI globals to support tree shaking (#1541) --- webpack.config.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/webpack.config.js b/webpack.config.js index a1ae0394..8c6a51a8 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -250,6 +250,13 @@ const webpackConfig = { new TerserPlugin({ terserOptions: { safari10: true, + // Replicate Angular CLI behaviour + compress: { + global_defs: { + ngDevMode: false, + ngI18nClosureMode: false, + }, + }, }, }), ], From 575847f25271c9ab2ac81393565565e0e8bd081a Mon Sep 17 00:00:00 2001 From: Matt Gibson Date: Wed, 23 Mar 2022 14:53:41 -0400 Subject: [PATCH 02/18] Update configurations for self-hosted (#1558) * Update configurations for self-hosted * Revert "Update configurations for self-hosted" This reverts commit a1ec06c834a5e9a5bb8fd4c983b5d7909a2ee9a4. * Use selfhosted.json to configure dev env --- config/base.json | 1 + config/selfhosted.json | 10 +++++++++- webpack.config.js | 1 + 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/config/base.json b/config/base.json index 7b592d71..b6a41c20 100644 --- a/config/base.json +++ b/config/base.json @@ -7,6 +7,7 @@ "buttonAction": "https://www.sandbox.paypal.com/cgi-bin/webscr" }, "dev": { + "port": 8080, "allowedHosts": "auto" } } diff --git a/config/selfhosted.json b/config/selfhosted.json index 0967ef42..208a355a 100644 --- a/config/selfhosted.json +++ b/config/selfhosted.json @@ -1 +1,9 @@ -{} +{ + "dev": { + "proxyApi": "http://localhost:4001", + "proxyIdentity": "http://localhost:33657", + "proxyEvents": "http://localhost:46274", + "proxyNotifications": "http://localhost:61841", + "port": 8081 + } +} diff --git a/webpack.config.js b/webpack.config.js index 8c6a51a8..6332c8f9 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -211,6 +211,7 @@ const devServer = } }, hot: false, + port: envConfig.dev?.port ?? 8080, allowedHosts: envConfig.dev?.allowedHosts ?? "auto", client: { overlay: { From 2c43249e9864eab879528a1023d3ec00c35a6f75 Mon Sep 17 00:00:00 2001 From: Thomas Rittson <31796059+eliykat@users.noreply.github.com> Date: Thu, 24 Mar 2022 07:25:10 +1000 Subject: [PATCH 03/18] Restore order of ngModule imports (#1560) --- bitwarden_license/src/app/app.module.ts | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/bitwarden_license/src/app/app.module.ts b/bitwarden_license/src/app/app.module.ts index 9e0de2af..781e3f45 100644 --- a/bitwarden_license/src/app/app.module.ts +++ b/bitwarden_license/src/app/app.module.ts @@ -19,17 +19,17 @@ import { MaximumVaultTimeoutPolicyComponent } from "./policies/maximum-vault-tim @NgModule({ imports: [ - AppRoutingModule, - BrowserAnimationsModule, - DragDropModule, - FormsModule, - InfiniteScrollModule, JslibModule, - OrganizationsModule, - OssRoutingModule, + BrowserAnimationsModule, + FormsModule, ReactiveFormsModule, - RouterModule, ServicesModule, + InfiniteScrollModule, + DragDropModule, + AppRoutingModule, + OssRoutingModule, + OrganizationsModule, // Must be after OssRoutingModule for competing routes to resolve properly + RouterModule, WildcardRoutingModule, // Needs to be last to catch all non-existing routes ], declarations: [ From 00975e6896716628b13f58b05746142700256bb6 Mon Sep 17 00:00:00 2001 From: Oscar Hinton Date: Thu, 24 Mar 2022 11:15:48 +0100 Subject: [PATCH 04/18] Use the new KDF constants (#1559) --- jslib | 2 +- src/app/polyfills.ts | 5 ---- src/app/send/access.component.ts | 3 ++- src/app/settings/change-kdf.component.html | 2 +- src/app/settings/change-kdf.component.ts | 3 ++- src/services/webPlatformUtils.service.ts | 31 +++++++++------------- 6 files changed, 18 insertions(+), 28 deletions(-) diff --git a/jslib b/jslib index 9950fb42..5b7b2a03 160000 --- a/jslib +++ b/jslib @@ -1 +1 @@ -Subproject commit 9950fb42a15bad434a4b404419ff4a87af67a27b +Subproject commit 5b7b2a03ddbecbc93adc54a5c69e8141c00c192f diff --git a/src/app/polyfills.ts b/src/app/polyfills.ts index 28df461c..0691f056 100644 --- a/src/app/polyfills.ts +++ b/src/app/polyfills.ts @@ -1,11 +1,6 @@ import "core-js/stable"; require("zone.js/dist/zone"); -// IE11 fix, ref: https://github.com/angular/angular/issues/24769 -if (!Element.prototype.matches && (Element.prototype as any).msMatchesSelector) { - Element.prototype.matches = (Element.prototype as any).msMatchesSelector; -} - if (process.env.NODE_ENV === "production") { // Production } else { diff --git a/src/app/send/access.component.ts b/src/app/send/access.component.ts index 1bf4b9e5..2665f28b 100644 --- a/src/app/send/access.component.ts +++ b/src/app/send/access.component.ts @@ -6,6 +6,7 @@ import { CryptoService } from "jslib-common/abstractions/crypto.service"; import { CryptoFunctionService } from "jslib-common/abstractions/cryptoFunction.service"; import { I18nService } from "jslib-common/abstractions/i18n.service"; import { PlatformUtilsService } from "jslib-common/abstractions/platformUtils.service"; +import { SEND_KDF_ITERATIONS } from "jslib-common/enums/kdfType"; import { SendType } from "jslib-common/enums/sendType"; import { Utils } from "jslib-common/misc/utils"; import { SendAccess } from "jslib-common/models/domain/sendAccess"; @@ -140,7 +141,7 @@ export class AccessComponent implements OnInit { this.password, keyArray, "sha256", - 100000 + SEND_KDF_ITERATIONS ); this.accessRequest.password = Utils.fromBufferToB64(passwordHash); } diff --git a/src/app/settings/change-kdf.component.html b/src/app/settings/change-kdf.component.html index ebd616f1..82cd56b1 100644 --- a/src/app/settings/change-kdf.component.html +++ b/src/app/settings/change-kdf.component.html @@ -61,7 +61,7 @@
-

{{ "kdfIterationsDesc" | i18n: (100000 | number) }}

+

{{ "kdfIterationsDesc" | i18n: (recommendedKdfIterations | number) }}

{{ "warning" | i18n }}: {{ "kdfIterationsWarning" | i18n: (50000 | number) }}
diff --git a/src/app/settings/change-kdf.component.ts b/src/app/settings/change-kdf.component.ts index beef67bb..dcc268ac 100644 --- a/src/app/settings/change-kdf.component.ts +++ b/src/app/settings/change-kdf.component.ts @@ -7,7 +7,7 @@ import { LogService } from "jslib-common/abstractions/log.service"; import { MessagingService } from "jslib-common/abstractions/messaging.service"; import { PlatformUtilsService } from "jslib-common/abstractions/platformUtils.service"; import { StateService } from "jslib-common/abstractions/state.service"; -import { KdfType } from "jslib-common/enums/kdfType"; +import { DEFAULT_KDF_ITERATIONS, KdfType } from "jslib-common/enums/kdfType"; import { KdfRequest } from "jslib-common/models/request/kdfRequest"; @Component({ @@ -20,6 +20,7 @@ export class ChangeKdfComponent implements OnInit { kdf = KdfType.PBKDF2_SHA256; kdfOptions: any[] = []; formPromise: Promise; + recommendedKdfIterations = DEFAULT_KDF_ITERATIONS; constructor( private apiService: ApiService, diff --git a/src/services/webPlatformUtils.service.ts b/src/services/webPlatformUtils.service.ts index 9132479b..0c9b56fa 100644 --- a/src/services/webPlatformUtils.service.ts +++ b/src/services/webPlatformUtils.service.ts @@ -85,10 +85,6 @@ export class WebPlatformUtilsService implements PlatformUtilsService { return this.getDevice() === DeviceType.SafariBrowser; } - isIE(): boolean { - return this.getDevice() === DeviceType.IEBrowser; - } - isMacAppStore(): boolean { return false; } @@ -139,26 +135,23 @@ export class WebPlatformUtilsService implements PlatformUtilsService { blobOptions.type = type; } } - if (blobOptions != null && !this.isIE()) { + if (blobOptions != null) { blob = new Blob([blobData], blobOptions); } else { blob = new Blob([blobData]); } - if (navigator.msSaveOrOpenBlob) { - navigator.msSaveBlob(blob, fileName); - } else { - const a = win.document.createElement("a"); - if (doDownload) { - a.download = fileName; - } else if (!this.isSafari()) { - a.target = "_blank"; - } - a.href = URL.createObjectURL(blob); - a.style.position = "fixed"; - win.document.body.appendChild(a); - a.click(); - win.document.body.removeChild(a); + + const a = win.document.createElement("a"); + if (doDownload) { + a.download = fileName; + } else if (!this.isSafari()) { + a.target = "_blank"; } + a.href = URL.createObjectURL(blob); + a.style.position = "fixed"; + win.document.body.appendChild(a); + a.click(); + win.document.body.removeChild(a); } getApplicationVersion(): Promise { From 0884e2d761647615ffbc0dfd725e730bf3ac69f6 Mon Sep 17 00:00:00 2001 From: Oscar Hinton Date: Thu, 24 Mar 2022 11:54:32 +0100 Subject: [PATCH 05/18] Bump node-forge (#1562) --- package-lock.json | 811 +++++++++++++++++++++++----------------------- package.json | 1 - 2 files changed, 408 insertions(+), 404 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8c57f774..e5daa7ea 100644 --- a/package-lock.json +++ b/package-lock.json @@ -30,7 +30,6 @@ "jszip": "^3.7.1", "ngx-infinite-scroll": "^10.0.1", "ngx-toastr": "14.1.4", - "node-forge": "^0.10.0", "popper.js": "1.16.1", "qrious": "4.0.2", "rxjs": "^7.4.0", @@ -122,7 +121,7 @@ "big-integer": "1.6.48", "browser-hrtime": "^1.1.8", "lunr": "^2.3.9", - "node-forge": "^0.10.0", + "node-forge": "^1.2.1", "papaparse": "^5.3.0", "rxjs": "^7.4.0", "tldjs": "^2.3.1", @@ -131,7 +130,7 @@ "devDependencies": { "@types/lunr": "^2.3.3", "@types/node": "^16.11.12", - "@types/node-forge": "^0.9.7", + "@types/node-forge": "^1.0.1", "@types/papaparse": "^5.2.5", "@types/tldjs": "^2.3.0", "@types/zxcvbn": "^4.4.1", @@ -342,27 +341,27 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.0.tgz", - "integrity": "sha512-392byTlpGWXMv4FbyWw3sAZ/FrW/DrwqLGXpy0mbyNe9Taqv1mg9yON5/o0cnr8XYCkFTZbC1eV+c+LAROgrng==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.7.tgz", + "integrity": "sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.17.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.5.tgz", - "integrity": "sha512-/BBMw4EvjmyquN5O+t5eh0+YqB3XXJkYD2cjKpYtWOfFy4lQ4UozNSmxAcWT8r2XtZs0ewG+zrfsqeR15i1ajA==", + "version": "7.17.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.8.tgz", + "integrity": "sha512-OdQDV/7cRBtJHLSOBqqbYNkOcydOgnX59TZx4puf41fzcVtN3e/4yqY8lMQsK+5X2lJtAdmA+6OHqsj1hBJ4IQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.3", - "@babel/helper-compilation-targets": "^7.16.7", - "@babel/helper-module-transforms": "^7.16.7", - "@babel/helpers": "^7.17.2", - "@babel/parser": "^7.17.3", + "@babel/generator": "^7.17.7", + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-module-transforms": "^7.17.7", + "@babel/helpers": "^7.17.8", + "@babel/parser": "^7.17.8", "@babel/template": "^7.16.7", "@babel/traverse": "^7.17.3", "@babel/types": "^7.17.0", @@ -390,9 +389,9 @@ } }, "node_modules/@babel/generator": { - "version": "7.17.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.3.tgz", - "integrity": "sha512-+R6Dctil/MgUsZsZAkYgK+ADNSZzJRRy0TvY65T71z/CR854xHQ1EweBYXdfT+HNeN7w0cSJJEzgxZMv40pxsg==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.7.tgz", + "integrity": "sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==", "dev": true, "dependencies": { "@babel/types": "^7.17.0", @@ -413,12 +412,12 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.7.tgz", - "integrity": "sha512-mGojBwIWcwGD6rfqgRXVlVYmPAv7eOpIemUG3dGnDdCY4Pae70ROij3XmfrH6Fa1h1aiDylpglbZyktfzyo/hA==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.7.tgz", + "integrity": "sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.16.4", + "@babel/compat-data": "^7.17.7", "@babel/helper-validator-option": "^7.16.7", "browserslist": "^4.17.5", "semver": "^6.3.0" @@ -502,14 +501,14 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.17.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.6.tgz", - "integrity": "sha512-2ULmRdqoOMpdvkbT8jONrZML/XALfzxlb052bldftkicAUy8AxSCkD5trDPQcwHNmolcl7wP6ehNqMlyUw6AaA==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz", + "integrity": "sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==", "dev": true, "dependencies": { "@babel/helper-environment-visitor": "^7.16.7", "@babel/helper-module-imports": "^7.16.7", - "@babel/helper-simple-access": "^7.16.7", + "@babel/helper-simple-access": "^7.17.7", "@babel/helper-split-export-declaration": "^7.16.7", "@babel/helper-validator-identifier": "^7.16.7", "@babel/template": "^7.16.7", @@ -521,12 +520,12 @@ } }, "node_modules/@babel/helper-simple-access": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.16.7.tgz", - "integrity": "sha512-ZIzHVyoeLMvXMN/vok/a4LWRy8G2v205mNP0XOuf9XRLyX5/u9CnVulUtDgUTama3lT+bf/UqucuZjqiGuTS1g==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz", + "integrity": "sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==", "dev": true, "dependencies": { - "@babel/types": "^7.16.7" + "@babel/types": "^7.17.0" }, "engines": { "node": ">=6.9.0" @@ -563,13 +562,13 @@ } }, "node_modules/@babel/helpers": { - "version": "7.17.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.2.tgz", - "integrity": "sha512-0Qu7RLR1dILozr/6M0xgj+DFPmi6Bnulgm9M8BVa9ZCWxDqlSnqt3cf8IDPB5m45sVXUZ0kuQAgUrdSFFH79fQ==", + "version": "7.17.8", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.8.tgz", + "integrity": "sha512-QcL86FGxpfSJwGtAvv4iG93UL6bmqBdmoVY0CMCU2g+oD2ezQse3PT5Pa+jiD6LJndBQi0EDlpzOWNlLuhz5gw==", "dev": true, "dependencies": { "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.0", + "@babel/traverse": "^7.17.3", "@babel/types": "^7.17.0" }, "engines": { @@ -591,9 +590,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.17.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz", - "integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==", + "version": "7.17.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.8.tgz", + "integrity": "sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -708,25 +707,25 @@ "integrity": "sha512-UIrJB+AfKU0CCfbMoWrsGpd2D/hBpY/SGgFI6WRHPOwhaZ3g9rz1weiJ6eb6L9KgVyunT7s2tckcPkbHw+NzeA==" }, "node_modules/@discoveryjs/json-ext": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.6.tgz", - "integrity": "sha512-ws57AidsDvREKrZKYffXddNkyaF14iHNHm8VQnZH6t99E8gczjNN0GpvcGny0imC80yQ0tHz1xVUKk/KFQSUyA==", + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", "dev": true, "engines": { "node": ">=10.0.0" } }, "node_modules/@eslint/eslintrc": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.0.tgz", - "integrity": "sha512-igm9SjJHNEJRiUnecP/1R5T3wKLEJ7pL6e2P+GUSfCd0dGjPYYZve08uzw8L2J8foVHFz+NGu12JxRcU2gGo6w==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.1.tgz", + "integrity": "sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==", "dev": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", "espree": "^9.3.1", "globals": "^13.9.0", - "ignore": "^4.0.6", + "ignore": "^5.2.0", "import-fresh": "^3.2.1", "js-yaml": "^4.1.0", "minimatch": "^3.0.4", @@ -737,9 +736,9 @@ } }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.12.1", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.1.tgz", - "integrity": "sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw==", + "version": "13.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", + "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -751,15 +750,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@eslint/eslintrc/node_modules/ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, "node_modules/@eslint/eslintrc/node_modules/type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -1031,9 +1021,9 @@ } }, "node_modules/@types/json-schema": { - "version": "7.0.9", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz", - "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==", + "version": "7.0.10", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.10.tgz", + "integrity": "sha512-BLO9bBq59vW3fxCpD4o0N4U+DXsvwvIcl+jofw0frQo/GrBFC+/jRZj1E7kgp6dvTyNmA4y6JCV5Id/r3mNP5A==", "dev": true }, "node_modules/@types/json5": { @@ -1067,9 +1057,9 @@ "dev": true }, "node_modules/@types/node-forge": { - "version": "0.9.10", - "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-0.9.10.tgz", - "integrity": "sha512-+BbPlhZeYs/WETWftQi2LeRx9VviWSwawNo+Pid5qNrSZHb60loYjpph3OrbwXMMseadu9rE9NeK34r4BHT+QQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.0.1.tgz", + "integrity": "sha512-96ELNKv9tQJ19afdBUiM5iDw7OYEc53iUc51gAPR2aGaqRsO1DBROjqgZRjZa1tkPj7TnEOR0EnyAX6iryGkzA==", "dev": true, "dependencies": { "@types/node": "*" @@ -1166,9 +1156,9 @@ } }, "node_modules/@types/ws": { - "version": "8.5.2", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.2.tgz", - "integrity": "sha512-VXI82ykONr5tacHEojnErTQk+KQSoYbW1NB6iz6wUwrNd+BqfkfggQNoNdCqhJSzbNumShPERbM+Pc5zpfhlbw==", + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz", + "integrity": "sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==", "dev": true, "dependencies": { "@types/node": "*" @@ -1181,14 +1171,14 @@ "dev": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.13.0.tgz", - "integrity": "sha512-vLktb2Uec81fxm/cfz2Hd6QaWOs8qdmVAZXLdOBX6JFJDhf6oDZpMzZ4/LZ6SFM/5DgDcxIMIvy3F+O9yZBuiQ==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.16.0.tgz", + "integrity": "sha512-SJoba1edXvQRMmNI505Uo4XmGbxCK9ARQpkvOd00anxzri9RNQk0DDCxD+LIl+jYhkzOJiOMMKYEHnHEODjdCw==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "5.13.0", - "@typescript-eslint/type-utils": "5.13.0", - "@typescript-eslint/utils": "5.13.0", + "@typescript-eslint/scope-manager": "5.16.0", + "@typescript-eslint/type-utils": "5.16.0", + "@typescript-eslint/utils": "5.16.0", "debug": "^4.3.2", "functional-red-black-tree": "^1.0.1", "ignore": "^5.1.8", @@ -1214,14 +1204,14 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.13.0.tgz", - "integrity": "sha512-GdrU4GvBE29tm2RqWOM0P5QfCtgCyN4hXICj/X9ibKED16136l9ZpoJvCL5pSKtmJzA+NRDzQ312wWMejCVVfg==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.16.0.tgz", + "integrity": "sha512-fkDq86F0zl8FicnJtdXakFs4lnuebH6ZADDw6CYQv0UZeIjHvmEw87m9/29nk2Dv5Lmdp0zQ3zDQhiMWQf/GbA==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "5.13.0", - "@typescript-eslint/types": "5.13.0", - "@typescript-eslint/typescript-estree": "5.13.0", + "@typescript-eslint/scope-manager": "5.16.0", + "@typescript-eslint/types": "5.16.0", + "@typescript-eslint/typescript-estree": "5.16.0", "debug": "^4.3.2" }, "engines": { @@ -1241,13 +1231,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.13.0.tgz", - "integrity": "sha512-T4N8UvKYDSfVYdmJq7g2IPJYCRzwtp74KyDZytkR4OL3NRupvswvmJQJ4CX5tDSurW2cvCc1Ia1qM7d0jpa7IA==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.16.0.tgz", + "integrity": "sha512-P+Yab2Hovg8NekLIR/mOElCDPyGgFZKhGoZA901Yax6WR6HVeGLbsqJkZ+Cvk5nts/dAlFKm8PfL43UZnWdpIQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.13.0", - "@typescript-eslint/visitor-keys": "5.13.0" + "@typescript-eslint/types": "5.16.0", + "@typescript-eslint/visitor-keys": "5.16.0" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -1258,12 +1248,12 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.13.0.tgz", - "integrity": "sha512-/nz7qFizaBM1SuqAKb7GLkcNn2buRdDgZraXlkhz+vUGiN1NZ9LzkA595tHHeduAiS2MsHqMNhE2zNzGdw43Yg==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.16.0.tgz", + "integrity": "sha512-SKygICv54CCRl1Vq5ewwQUJV/8padIWvPgCxlWPGO/OgQLCijY9G7lDu6H+mqfQtbzDNlVjzVWQmeqbLMBLEwQ==", "dev": true, "dependencies": { - "@typescript-eslint/utils": "5.13.0", + "@typescript-eslint/utils": "5.16.0", "debug": "^4.3.2", "tsutils": "^3.21.0" }, @@ -1284,9 +1274,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.13.0.tgz", - "integrity": "sha512-LmE/KO6DUy0nFY/OoQU0XelnmDt+V8lPQhh8MOVa7Y5k2gGRd6U9Kp3wAjhB4OHg57tUO0nOnwYQhRRyEAyOyg==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.16.0.tgz", + "integrity": "sha512-oUorOwLj/3/3p/HFwrp6m/J2VfbLC8gjW5X3awpQJ/bSG+YRGFS4dpsvtQ8T2VNveV+LflQHjlLvB6v0R87z4g==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -1297,13 +1287,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.13.0.tgz", - "integrity": "sha512-Q9cQow0DeLjnp5DuEDjLZ6JIkwGx3oYZe+BfcNuw/POhtpcxMTy18Icl6BJqTSd+3ftsrfuVb7mNHRZf7xiaNA==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.16.0.tgz", + "integrity": "sha512-SE4VfbLWUZl9MR+ngLSARptUv2E8brY0luCdgmUevU6arZRY/KxYoLI/3V/yxaURR8tLRN7bmZtJdgmzLHI6pQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.13.0", - "@typescript-eslint/visitor-keys": "5.13.0", + "@typescript-eslint/types": "5.16.0", + "@typescript-eslint/visitor-keys": "5.16.0", "debug": "^4.3.2", "globby": "^11.0.4", "is-glob": "^4.0.3", @@ -1324,15 +1314,15 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.13.0.tgz", - "integrity": "sha512-+9oHlPWYNl6AwwoEt5TQryEHwiKRVjz7Vk6kaBeD3/kwHE5YqTGHtm/JZY8Bo9ITOeKutFaXnBlMgSATMJALUQ==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.16.0.tgz", + "integrity": "sha512-iYej2ER6AwmejLWMWzJIHy3nPJeGDuCqf8Jnb+jAQVoPpmWzwQOfa9hWVB8GIQE5gsCv/rfN4T+AYb/V06WseQ==", "dev": true, "dependencies": { "@types/json-schema": "^7.0.9", - "@typescript-eslint/scope-manager": "5.13.0", - "@typescript-eslint/types": "5.13.0", - "@typescript-eslint/typescript-estree": "5.13.0", + "@typescript-eslint/scope-manager": "5.16.0", + "@typescript-eslint/types": "5.16.0", + "@typescript-eslint/typescript-estree": "5.16.0", "eslint-scope": "^5.1.1", "eslint-utils": "^3.0.0" }, @@ -1348,12 +1338,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.13.0.tgz", - "integrity": "sha512-HLKEAS/qA1V7d9EzcpLFykTePmOQqOFim8oCvhY3pZgQ8Hi38hYpHd9e5GN6nQBFQNecNhws5wkS9Y5XIO0s/g==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.16.0.tgz", + "integrity": "sha512-jqxO8msp5vZDhikTwq9ubyMHqZ67UIvawohr4qF3KhlpL7gzSjOd+8471H3nh5LyABkaI85laEKKU8SnGUK5/g==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.13.0", + "@typescript-eslint/types": "5.16.0", "eslint-visitor-keys": "^3.0.0" }, "engines": { @@ -1878,14 +1868,24 @@ "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==" }, "node_modules/autoprefixer": { - "version": "10.4.2", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.2.tgz", - "integrity": "sha512-9fOPpHKuDW1w/0EKfRmVnxTDt8166MAnLI3mgZ1JCnhNtYWxcJ6Ud5CO/AVOZi/AvFa8DY9RTy3h3+tFBlrrdQ==", + "version": "10.4.4", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.4.tgz", + "integrity": "sha512-Tm8JxsB286VweiZ5F0anmbyGiNI3v3wGv3mz9W+cxEDYB/6jbnj6GM9H9mK3wIL8ftgl+C07Lcwb8PG5PCCPzA==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + } + ], "dependencies": { - "browserslist": "^4.19.1", - "caniuse-lite": "^1.0.30001297", - "fraction.js": "^4.1.2", + "browserslist": "^4.20.2", + "caniuse-lite": "^1.0.30001317", + "fraction.js": "^4.2.0", "normalize-range": "^0.1.2", "picocolors": "^1.0.0", "postcss-value-parser": "^4.2.0" @@ -1896,10 +1896,6 @@ "engines": { "node": "^10 || ^12 || >=14" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, "peerDependencies": { "postcss": "^8.1.0" } @@ -2133,13 +2129,23 @@ "integrity": "sha512-kzXheikaJsBtzUBlyVtPIY5r0soQePzjwVwT4IlDpU2RvfB5Py52gpU98M77rgqMCheoSSZvrcrdj3t6cZ3suA==" }, "node_modules/browserslist": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.0.tgz", - "integrity": "sha512-bnpOoa+DownbciXj0jVGENf8VYQnE2LNWomhYuCsMmmx9Jd9lwq0WXODuwpSsp8AVdKM2/HorrzxAfbKvWTByQ==", + "version": "4.20.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.2.tgz", + "integrity": "sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], "dependencies": { - "caniuse-lite": "^1.0.30001313", - "electron-to-chromium": "^1.4.76", + "caniuse-lite": "^1.0.30001317", + "electron-to-chromium": "^1.4.84", "escalade": "^3.1.1", "node-releases": "^2.0.2", "picocolors": "^1.0.0" @@ -2149,10 +2155,6 @@ }, "engines": { "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" } }, "node_modules/buffer": { @@ -2242,14 +2244,20 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001313", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001313.tgz", - "integrity": "sha512-rI1UN0koZUiKINjysQDuRi2VeSCce3bYJNmDcj3PIKREiAmjakugBul1QSkg/fPrlULYl6oWfGg3PbgOSY9X4Q==", + "version": "1.0.30001319", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001319.tgz", + "integrity": "sha512-xjlIAFHucBRSMUo1kb5D4LYgcN1M45qdKP++lhqowDpwJwGkpIRTt5qQqnhxjj1vHcI7nrJxWhCC1ATrCEBTcw==", "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - } + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + } + ] }, "node_modules/canonical-path": { "version": "1.0.0", @@ -2740,9 +2748,9 @@ } }, "node_modules/css-loader": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.0.tgz", - "integrity": "sha512-S7HCfCiDHLA+VXKqdZwyRZgoO0R9BnKDnVIoHMq5grl3N86zAu7MB+FBWHr5xOJC8SmvpTLha/2NpfFkFEN/ig==", + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.1.tgz", + "integrity": "sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==", "dev": true, "dependencies": { "icss-utils": "^5.1.0", @@ -2814,9 +2822,9 @@ } }, "node_modules/debug": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", - "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dev": true, "dependencies": { "ms": "2.1.2" @@ -3103,9 +3111,9 @@ ] }, "node_modules/domhandler": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.0.tgz", - "integrity": "sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", "dev": true, "dependencies": { "domelementtype": "^2.2.0" @@ -3159,9 +3167,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.76", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.76.tgz", - "integrity": "sha512-3Vftv7cenJtQb+k00McEBZ2vVmZ/x+HEF7pcZONZIkOsESqAqVuACmBxMv0JhzX7u0YltU0vSqRqgBSTAhFUjA==", + "version": "1.4.89", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.89.tgz", + "integrity": "sha512-z1Axg0Fu54fse8wN4fd+GAINdU5mJmLtcl6bqIcYyzNVGONcfHAeeJi88KYMQVKalhXlYuVPzKkFIU5VD0raUw==", "dev": true }, "node_modules/email-addresses": { @@ -3315,12 +3323,12 @@ } }, "node_modules/eslint": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.10.0.tgz", - "integrity": "sha512-tcI1D9lfVec+R4LE1mNDnzoJ/f71Kl/9Cv4nG47jOueCMBrCCKYXr4AUVS7go6mWYGFD4+EoN6+eXSrEbRzXVw==", + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.11.0.tgz", + "integrity": "sha512-/KRpd9mIRg2raGxHRGwW9ZywYNAClZrHjdueHcrVDuO3a6bj83eoTirCCk0M0yPwOjWYKHwRVRid+xK4F/GHgA==", "dev": true, "dependencies": { - "@eslint/eslintrc": "^1.2.0", + "@eslint/eslintrc": "^1.2.1", "@humanwhocodes/config-array": "^0.9.2", "ajv": "^6.10.0", "chalk": "^4.0.0", @@ -3638,9 +3646,9 @@ } }, "node_modules/eslint/node_modules/globals": { - "version": "13.12.1", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.1.tgz", - "integrity": "sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw==", + "version": "13.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", + "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -4654,9 +4662,9 @@ } }, "node_modules/http-proxy-middleware": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.3.tgz", - "integrity": "sha512-1bloEwnrHMnCoO/Gcwbz7eSVvW50KPES01PecpagI+YLNLci4AcuKJrujW4Mc3sBLpFxMSlsLNHS5Nl/lvrTPA==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.4.tgz", + "integrity": "sha512-m/4FxX17SUvz4lJ5WPXOHDUuCwIqXLfLHs1s0uZ3oYjhoXlx9csYxaOa0ElDEJ+h8Q4iJ1s+lTMbiCa4EXIJqg==", "dev": true, "dependencies": { "@types/http-proxy": "^1.17.8", @@ -5361,13 +5369,10 @@ "dev": true }, "node_modules/json5": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", - "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", + "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", "dev": true, - "dependencies": { - "minimist": "^1.2.5" - }, "bin": { "json5": "lib/cli.js" }, @@ -5450,9 +5455,9 @@ "dev": true }, "node_modules/lint-staged": { - "version": "12.3.5", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-12.3.5.tgz", - "integrity": "sha512-oOH36RUs1It7b9U/C7Nl/a0sLfoIBcMB8ramiB3nuJ6brBqzsWiUAFSR5DQ3yyP/OR7XKMpijtgKl2DV1lQ3lA==", + "version": "12.3.7", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-12.3.7.tgz", + "integrity": "sha512-/S4D726e2GIsDVWIk1XGvheCaDm1SJRQp8efamZFWJxQMVEbOwSysp7xb49Oo73KYCdy97mIWinhlxcoNqIfIQ==", "dev": true, "dependencies": { "cli-truncate": "^3.1.0", @@ -5465,6 +5470,7 @@ "micromatch": "^4.0.4", "normalize-path": "^3.0.0", "object-inspect": "^1.12.0", + "pidtree": "^0.5.0", "string-argv": "^0.3.1", "supports-color": "^9.2.1", "yaml": "^1.10.2" @@ -5501,9 +5507,9 @@ } }, "node_modules/listr2": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-4.0.4.tgz", - "integrity": "sha512-vJOm5KD6uZXjSsrwajr+mNacIjf87gWvlBEltPWLbTkslUscWAzquyK4xfe9Zd4RDgO5nnwFyV06FC+uVR+5mg==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-4.0.5.tgz", + "integrity": "sha512-juGHV1doQdpNT3GSTs9IUN43QJb7KHdF9uqg7Vufs/tG9VTzpFphqF4pm/ICdAABGQxsyNn9CiYA3StkI6jpwA==", "dev": true, "dependencies": { "cli-truncate": "^2.1.0", @@ -5511,7 +5517,7 @@ "log-update": "^4.0.0", "p-map": "^4.0.0", "rfdc": "^1.3.0", - "rxjs": "^7.5.4", + "rxjs": "^7.5.5", "through": "^2.3.8", "wrap-ansi": "^7.0.0" }, @@ -5915,21 +5921,21 @@ } }, "node_modules/mime-db": { - "version": "1.51.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz", - "integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==", + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", "dev": true, "engines": { "node": ">= 0.6" } }, "node_modules/mime-types": { - "version": "2.1.34", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz", - "integrity": "sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==", + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "dev": true, "dependencies": { - "mime-db": "1.51.0" + "mime-db": "1.52.0" }, "engines": { "node": ">= 0.6" @@ -5982,9 +5988,9 @@ } }, "node_modules/minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", "dev": true }, "node_modules/mkdirp": { @@ -6121,11 +6127,11 @@ } }, "node_modules/node-forge": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", - "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.0.tgz", + "integrity": "sha512-08ARB91bUi6zNKzVmaj3QO7cr397uiDT2nJ63cHjyNtCTWIgvS47j3eT0WfzUwS9+6Z5YshRaoasFkXCKrIYbA==", "engines": { - "node": ">= 6.0.0" + "node": ">= 6.13.0" } }, "node_modules/node-releases": { @@ -6425,9 +6431,9 @@ "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" }, "node_modules/papaparse": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.3.1.tgz", - "integrity": "sha512-Dbt2yjLJrCwH2sRqKFFJaN5XgIASO9YOFeFP8rIBRG2Ain8mqk5r1M6DkfvqEVozVcz3r3HaUGw253hA1nLIcA==" + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.3.2.tgz", + "integrity": "sha512-6dNZu0Ki+gyV0eBsFKJhYr+MdQYAzFUGlBMNj3GNrmHxmz1lfRa24CjFObPXtjcetlOv5Ad299MhIK0znp3afw==" }, "node_modules/param-case": { "version": "3.0.4", @@ -6566,6 +6572,18 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/pidtree": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.5.0.tgz", + "integrity": "sha512-9nxspIM7OpZuhBxPg73Zvyq7j1QMPMPsGKTqRc2XOaFQauDvoNz9fM1Wdkjmeo7l9GXOZiRs97sPkuayl39wjA==", + "dev": true, + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" + } + }, "node_modules/pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", @@ -6712,10 +6730,20 @@ } }, "node_modules/postcss": { - "version": "8.4.8", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.8.tgz", - "integrity": "sha512-2tXEqGxrjvAO6U+CJzDL2Fk2kPHTv1jQsYkSoMeOis2SsYaXRO2COxTdQp99cYvif9JTXaAk9lYGc3VhJt7JPQ==", + "version": "8.4.12", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.12.tgz", + "integrity": "sha512-lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], "dependencies": { "nanoid": "^3.3.1", "picocolors": "^1.0.0", @@ -6723,10 +6751,6 @@ }, "engines": { "node": "^10 || ^12 || >=14" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" } }, "node_modules/postcss-js": { @@ -7327,9 +7351,9 @@ } }, "node_modules/rxjs": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.4.tgz", - "integrity": "sha512-h5M3Hk78r6wAheJF0a5YahB1yRQKCsZ4MsGdZ5O9ETbVtjPcScGfrMmoOq7EBsCRzd4BDkvDJ7ogP8Sz5tTFiQ==", + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", + "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", "dependencies": { "tslib": "^2.1.0" } @@ -7471,15 +7495,6 @@ "node": ">=10" } }, - "node_modules/selfsigned/node_modules/node-forge": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.2.1.tgz", - "integrity": "sha512-Fcvtbb+zBcZXbTTVwqGA5W+MKBj56UjVRevvchv5XrcyXbmNdesfZL37nlcWOfpgHhgmxApw3tQbTr4CqNmX4w==", - "dev": true, - "engines": { - "node": ">= 6.13.0" - } - }, "node_modules/semver": { "version": "7.3.5", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", @@ -8147,9 +8162,9 @@ } }, "node_modules/terser": { - "version": "5.12.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.12.0.tgz", - "integrity": "sha512-R3AUhNBGWiFc77HXag+1fXpAxTAFRQTJemlJKjAgD9r8xXTpjNKqIXwHM/o7Rh+O0kUJtS3WQVdBeMKFk5sw9A==", + "version": "5.12.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.12.1.tgz", + "integrity": "sha512-NXbs+7nisos5E+yXwAD+y7zrcTkMqb0dEJxIGtSKPdCBzopf7ni4odPul2aechpV7EXNvOudYOX2bb5tln1jbQ==", "dev": true, "dependencies": { "acorn": "^8.5.0", @@ -8320,9 +8335,9 @@ } }, "node_modules/ts-loader": { - "version": "9.2.7", - "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.2.7.tgz", - "integrity": "sha512-Fxh44mKli9QezgbdCXkEJWxnedQ0ead7DXTH+lfXEPedu+Y9EtMJ2aQ9G3Dj1j7Q612E8931rww8NDZha4Tibg==", + "version": "9.2.8", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.2.8.tgz", + "integrity": "sha512-gxSak7IHUuRtwKf3FIPSW1VpZcqF9+MBrHOvBp9cjHh+525SjtCIJKVGjRKIAfxBwDGDGCFF00rTfzB1quxdSw==", "dev": true, "dependencies": { "chalk": "^4.1.0", @@ -8409,9 +8424,9 @@ } }, "node_modules/tsconfig-paths": { - "version": "3.13.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.13.0.tgz", - "integrity": "sha512-nWuffZppoaYK0vQ1SQmkSsQzJoHA4s6uzdb2waRpD806x9yfq153AdVsWz4je2qZcW+pENrMQXbGQ3sMCkXuhw==", + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.0.tgz", + "integrity": "sha512-cg/1jAZoL57R39+wiw4u/SCC6Ic9Q5NqjBOb+9xISedOYurfog9ZNmKJSxAnb2m/5Bq4lE9lhUcau33Ml8DM0g==", "dev": true, "dependencies": { "@types/json5": "^0.0.29", @@ -9179,9 +9194,9 @@ } }, "node_modules/yargs": { - "version": "17.3.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.3.1.tgz", - "integrity": "sha512-WUANQeVgjLbNsEmGk20f+nlHgOqzRFpiGWVaBrYGYIGANIIu3lWjoyi0fNlFmJkvfhCZ6BXINe7/W2O2bV4iaA==", + "version": "17.4.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.4.0.tgz", + "integrity": "sha512-WJudfrk81yWFSOkZYpAZx4Nt7V4xp7S/uJkX0CnxovMCt1wCE8LNftPpNuF9X/u9gN5nsD7ycYtRcDf2pL3UiA==", "dev": true, "dependencies": { "cliui": "^7.0.2", @@ -9363,24 +9378,24 @@ } }, "@babel/compat-data": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.0.tgz", - "integrity": "sha512-392byTlpGWXMv4FbyWw3sAZ/FrW/DrwqLGXpy0mbyNe9Taqv1mg9yON5/o0cnr8XYCkFTZbC1eV+c+LAROgrng==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.7.tgz", + "integrity": "sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==", "dev": true }, "@babel/core": { - "version": "7.17.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.5.tgz", - "integrity": "sha512-/BBMw4EvjmyquN5O+t5eh0+YqB3XXJkYD2cjKpYtWOfFy4lQ4UozNSmxAcWT8r2XtZs0ewG+zrfsqeR15i1ajA==", + "version": "7.17.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.8.tgz", + "integrity": "sha512-OdQDV/7cRBtJHLSOBqqbYNkOcydOgnX59TZx4puf41fzcVtN3e/4yqY8lMQsK+5X2lJtAdmA+6OHqsj1hBJ4IQ==", "dev": true, "requires": { "@ampproject/remapping": "^2.1.0", "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.3", - "@babel/helper-compilation-targets": "^7.16.7", - "@babel/helper-module-transforms": "^7.16.7", - "@babel/helpers": "^7.17.2", - "@babel/parser": "^7.17.3", + "@babel/generator": "^7.17.7", + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-module-transforms": "^7.17.7", + "@babel/helpers": "^7.17.8", + "@babel/parser": "^7.17.8", "@babel/template": "^7.16.7", "@babel/traverse": "^7.17.3", "@babel/types": "^7.17.0", @@ -9400,9 +9415,9 @@ } }, "@babel/generator": { - "version": "7.17.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.3.tgz", - "integrity": "sha512-+R6Dctil/MgUsZsZAkYgK+ADNSZzJRRy0TvY65T71z/CR854xHQ1EweBYXdfT+HNeN7w0cSJJEzgxZMv40pxsg==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.7.tgz", + "integrity": "sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==", "dev": true, "requires": { "@babel/types": "^7.17.0", @@ -9419,12 +9434,12 @@ } }, "@babel/helper-compilation-targets": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.7.tgz", - "integrity": "sha512-mGojBwIWcwGD6rfqgRXVlVYmPAv7eOpIemUG3dGnDdCY4Pae70ROij3XmfrH6Fa1h1aiDylpglbZyktfzyo/hA==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.7.tgz", + "integrity": "sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==", "dev": true, "requires": { - "@babel/compat-data": "^7.16.4", + "@babel/compat-data": "^7.17.7", "@babel/helper-validator-option": "^7.16.7", "browserslist": "^4.17.5", "semver": "^6.3.0" @@ -9486,14 +9501,14 @@ } }, "@babel/helper-module-transforms": { - "version": "7.17.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.6.tgz", - "integrity": "sha512-2ULmRdqoOMpdvkbT8jONrZML/XALfzxlb052bldftkicAUy8AxSCkD5trDPQcwHNmolcl7wP6ehNqMlyUw6AaA==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz", + "integrity": "sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==", "dev": true, "requires": { "@babel/helper-environment-visitor": "^7.16.7", "@babel/helper-module-imports": "^7.16.7", - "@babel/helper-simple-access": "^7.16.7", + "@babel/helper-simple-access": "^7.17.7", "@babel/helper-split-export-declaration": "^7.16.7", "@babel/helper-validator-identifier": "^7.16.7", "@babel/template": "^7.16.7", @@ -9502,12 +9517,12 @@ } }, "@babel/helper-simple-access": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.16.7.tgz", - "integrity": "sha512-ZIzHVyoeLMvXMN/vok/a4LWRy8G2v205mNP0XOuf9XRLyX5/u9CnVulUtDgUTama3lT+bf/UqucuZjqiGuTS1g==", + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz", + "integrity": "sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==", "dev": true, "requires": { - "@babel/types": "^7.16.7" + "@babel/types": "^7.17.0" } }, "@babel/helper-split-export-declaration": { @@ -9532,13 +9547,13 @@ "dev": true }, "@babel/helpers": { - "version": "7.17.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.2.tgz", - "integrity": "sha512-0Qu7RLR1dILozr/6M0xgj+DFPmi6Bnulgm9M8BVa9ZCWxDqlSnqt3cf8IDPB5m45sVXUZ0kuQAgUrdSFFH79fQ==", + "version": "7.17.8", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.8.tgz", + "integrity": "sha512-QcL86FGxpfSJwGtAvv4iG93UL6bmqBdmoVY0CMCU2g+oD2ezQse3PT5Pa+jiD6LJndBQi0EDlpzOWNlLuhz5gw==", "dev": true, "requires": { "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.0", + "@babel/traverse": "^7.17.3", "@babel/types": "^7.17.0" } }, @@ -9554,9 +9569,9 @@ } }, "@babel/parser": { - "version": "7.17.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz", - "integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==", + "version": "7.17.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.8.tgz", + "integrity": "sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==", "dev": true }, "@babel/template": { @@ -9627,14 +9642,14 @@ "@microsoft/signalr-protocol-msgpack": "5.0.10", "@types/lunr": "^2.3.3", "@types/node": "^16.11.12", - "@types/node-forge": "^0.9.7", + "@types/node-forge": "^1.0.1", "@types/papaparse": "^5.2.5", "@types/tldjs": "^2.3.0", "@types/zxcvbn": "^4.4.1", "big-integer": "1.6.48", "browser-hrtime": "^1.1.8", "lunr": "^2.3.9", - "node-forge": "^0.10.0", + "node-forge": "^1.2.1", "papaparse": "^5.3.0", "rimraf": "^3.0.2", "rxjs": "^7.4.0", @@ -9692,22 +9707,22 @@ "integrity": "sha512-UIrJB+AfKU0CCfbMoWrsGpd2D/hBpY/SGgFI6WRHPOwhaZ3g9rz1weiJ6eb6L9KgVyunT7s2tckcPkbHw+NzeA==" }, "@discoveryjs/json-ext": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.6.tgz", - "integrity": "sha512-ws57AidsDvREKrZKYffXddNkyaF14iHNHm8VQnZH6t99E8gczjNN0GpvcGny0imC80yQ0tHz1xVUKk/KFQSUyA==", + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", "dev": true }, "@eslint/eslintrc": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.0.tgz", - "integrity": "sha512-igm9SjJHNEJRiUnecP/1R5T3wKLEJ7pL6e2P+GUSfCd0dGjPYYZve08uzw8L2J8foVHFz+NGu12JxRcU2gGo6w==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.1.tgz", + "integrity": "sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==", "dev": true, "requires": { "ajv": "^6.12.4", "debug": "^4.3.2", "espree": "^9.3.1", "globals": "^13.9.0", - "ignore": "^4.0.6", + "ignore": "^5.2.0", "import-fresh": "^3.2.1", "js-yaml": "^4.1.0", "minimatch": "^3.0.4", @@ -9715,20 +9730,14 @@ }, "dependencies": { "globals": { - "version": "13.12.1", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.1.tgz", - "integrity": "sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw==", + "version": "13.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", + "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", "dev": true, "requires": { "type-fest": "^0.20.2" } }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true - }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -9973,9 +9982,9 @@ } }, "@types/json-schema": { - "version": "7.0.9", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz", - "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==", + "version": "7.0.10", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.10.tgz", + "integrity": "sha512-BLO9bBq59vW3fxCpD4o0N4U+DXsvwvIcl+jofw0frQo/GrBFC+/jRZj1E7kgp6dvTyNmA4y6JCV5Id/r3mNP5A==", "dev": true }, "@types/json5": { @@ -10009,9 +10018,9 @@ "dev": true }, "@types/node-forge": { - "version": "0.9.10", - "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-0.9.10.tgz", - "integrity": "sha512-+BbPlhZeYs/WETWftQi2LeRx9VviWSwawNo+Pid5qNrSZHb60loYjpph3OrbwXMMseadu9rE9NeK34r4BHT+QQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.0.1.tgz", + "integrity": "sha512-96ELNKv9tQJ19afdBUiM5iDw7OYEc53iUc51gAPR2aGaqRsO1DBROjqgZRjZa1tkPj7TnEOR0EnyAX6iryGkzA==", "dev": true, "requires": { "@types/node": "*" @@ -10108,9 +10117,9 @@ } }, "@types/ws": { - "version": "8.5.2", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.2.tgz", - "integrity": "sha512-VXI82ykONr5tacHEojnErTQk+KQSoYbW1NB6iz6wUwrNd+BqfkfggQNoNdCqhJSzbNumShPERbM+Pc5zpfhlbw==", + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz", + "integrity": "sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==", "dev": true, "requires": { "@types/node": "*" @@ -10123,14 +10132,14 @@ "dev": true }, "@typescript-eslint/eslint-plugin": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.13.0.tgz", - "integrity": "sha512-vLktb2Uec81fxm/cfz2Hd6QaWOs8qdmVAZXLdOBX6JFJDhf6oDZpMzZ4/LZ6SFM/5DgDcxIMIvy3F+O9yZBuiQ==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.16.0.tgz", + "integrity": "sha512-SJoba1edXvQRMmNI505Uo4XmGbxCK9ARQpkvOd00anxzri9RNQk0DDCxD+LIl+jYhkzOJiOMMKYEHnHEODjdCw==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "5.13.0", - "@typescript-eslint/type-utils": "5.13.0", - "@typescript-eslint/utils": "5.13.0", + "@typescript-eslint/scope-manager": "5.16.0", + "@typescript-eslint/type-utils": "5.16.0", + "@typescript-eslint/utils": "5.16.0", "debug": "^4.3.2", "functional-red-black-tree": "^1.0.1", "ignore": "^5.1.8", @@ -10140,52 +10149,52 @@ } }, "@typescript-eslint/parser": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.13.0.tgz", - "integrity": "sha512-GdrU4GvBE29tm2RqWOM0P5QfCtgCyN4hXICj/X9ibKED16136l9ZpoJvCL5pSKtmJzA+NRDzQ312wWMejCVVfg==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.16.0.tgz", + "integrity": "sha512-fkDq86F0zl8FicnJtdXakFs4lnuebH6ZADDw6CYQv0UZeIjHvmEw87m9/29nk2Dv5Lmdp0zQ3zDQhiMWQf/GbA==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "5.13.0", - "@typescript-eslint/types": "5.13.0", - "@typescript-eslint/typescript-estree": "5.13.0", + "@typescript-eslint/scope-manager": "5.16.0", + "@typescript-eslint/types": "5.16.0", + "@typescript-eslint/typescript-estree": "5.16.0", "debug": "^4.3.2" } }, "@typescript-eslint/scope-manager": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.13.0.tgz", - "integrity": "sha512-T4N8UvKYDSfVYdmJq7g2IPJYCRzwtp74KyDZytkR4OL3NRupvswvmJQJ4CX5tDSurW2cvCc1Ia1qM7d0jpa7IA==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.16.0.tgz", + "integrity": "sha512-P+Yab2Hovg8NekLIR/mOElCDPyGgFZKhGoZA901Yax6WR6HVeGLbsqJkZ+Cvk5nts/dAlFKm8PfL43UZnWdpIQ==", "dev": true, "requires": { - "@typescript-eslint/types": "5.13.0", - "@typescript-eslint/visitor-keys": "5.13.0" + "@typescript-eslint/types": "5.16.0", + "@typescript-eslint/visitor-keys": "5.16.0" } }, "@typescript-eslint/type-utils": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.13.0.tgz", - "integrity": "sha512-/nz7qFizaBM1SuqAKb7GLkcNn2buRdDgZraXlkhz+vUGiN1NZ9LzkA595tHHeduAiS2MsHqMNhE2zNzGdw43Yg==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.16.0.tgz", + "integrity": "sha512-SKygICv54CCRl1Vq5ewwQUJV/8padIWvPgCxlWPGO/OgQLCijY9G7lDu6H+mqfQtbzDNlVjzVWQmeqbLMBLEwQ==", "dev": true, "requires": { - "@typescript-eslint/utils": "5.13.0", + "@typescript-eslint/utils": "5.16.0", "debug": "^4.3.2", "tsutils": "^3.21.0" } }, "@typescript-eslint/types": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.13.0.tgz", - "integrity": "sha512-LmE/KO6DUy0nFY/OoQU0XelnmDt+V8lPQhh8MOVa7Y5k2gGRd6U9Kp3wAjhB4OHg57tUO0nOnwYQhRRyEAyOyg==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.16.0.tgz", + "integrity": "sha512-oUorOwLj/3/3p/HFwrp6m/J2VfbLC8gjW5X3awpQJ/bSG+YRGFS4dpsvtQ8T2VNveV+LflQHjlLvB6v0R87z4g==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.13.0.tgz", - "integrity": "sha512-Q9cQow0DeLjnp5DuEDjLZ6JIkwGx3oYZe+BfcNuw/POhtpcxMTy18Icl6BJqTSd+3ftsrfuVb7mNHRZf7xiaNA==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.16.0.tgz", + "integrity": "sha512-SE4VfbLWUZl9MR+ngLSARptUv2E8brY0luCdgmUevU6arZRY/KxYoLI/3V/yxaURR8tLRN7bmZtJdgmzLHI6pQ==", "dev": true, "requires": { - "@typescript-eslint/types": "5.13.0", - "@typescript-eslint/visitor-keys": "5.13.0", + "@typescript-eslint/types": "5.16.0", + "@typescript-eslint/visitor-keys": "5.16.0", "debug": "^4.3.2", "globby": "^11.0.4", "is-glob": "^4.0.3", @@ -10194,26 +10203,26 @@ } }, "@typescript-eslint/utils": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.13.0.tgz", - "integrity": "sha512-+9oHlPWYNl6AwwoEt5TQryEHwiKRVjz7Vk6kaBeD3/kwHE5YqTGHtm/JZY8Bo9ITOeKutFaXnBlMgSATMJALUQ==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.16.0.tgz", + "integrity": "sha512-iYej2ER6AwmejLWMWzJIHy3nPJeGDuCqf8Jnb+jAQVoPpmWzwQOfa9hWVB8GIQE5gsCv/rfN4T+AYb/V06WseQ==", "dev": true, "requires": { "@types/json-schema": "^7.0.9", - "@typescript-eslint/scope-manager": "5.13.0", - "@typescript-eslint/types": "5.13.0", - "@typescript-eslint/typescript-estree": "5.13.0", + "@typescript-eslint/scope-manager": "5.16.0", + "@typescript-eslint/types": "5.16.0", + "@typescript-eslint/typescript-estree": "5.16.0", "eslint-scope": "^5.1.1", "eslint-utils": "^3.0.0" } }, "@typescript-eslint/visitor-keys": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.13.0.tgz", - "integrity": "sha512-HLKEAS/qA1V7d9EzcpLFykTePmOQqOFim8oCvhY3pZgQ8Hi38hYpHd9e5GN6nQBFQNecNhws5wkS9Y5XIO0s/g==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.16.0.tgz", + "integrity": "sha512-jqxO8msp5vZDhikTwq9ubyMHqZ67UIvawohr4qF3KhlpL7gzSjOd+8471H3nh5LyABkaI85laEKKU8SnGUK5/g==", "dev": true, "requires": { - "@typescript-eslint/types": "5.13.0", + "@typescript-eslint/types": "5.16.0", "eslint-visitor-keys": "^3.0.0" } }, @@ -10634,14 +10643,14 @@ "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==" }, "autoprefixer": { - "version": "10.4.2", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.2.tgz", - "integrity": "sha512-9fOPpHKuDW1w/0EKfRmVnxTDt8166MAnLI3mgZ1JCnhNtYWxcJ6Ud5CO/AVOZi/AvFa8DY9RTy3h3+tFBlrrdQ==", + "version": "10.4.4", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.4.tgz", + "integrity": "sha512-Tm8JxsB286VweiZ5F0anmbyGiNI3v3wGv3mz9W+cxEDYB/6jbnj6GM9H9mK3wIL8ftgl+C07Lcwb8PG5PCCPzA==", "dev": true, "requires": { - "browserslist": "^4.19.1", - "caniuse-lite": "^1.0.30001297", - "fraction.js": "^4.1.2", + "browserslist": "^4.20.2", + "caniuse-lite": "^1.0.30001317", + "fraction.js": "^4.2.0", "normalize-range": "^0.1.2", "picocolors": "^1.0.0", "postcss-value-parser": "^4.2.0" @@ -10836,13 +10845,13 @@ "integrity": "sha512-kzXheikaJsBtzUBlyVtPIY5r0soQePzjwVwT4IlDpU2RvfB5Py52gpU98M77rgqMCheoSSZvrcrdj3t6cZ3suA==" }, "browserslist": { - "version": "4.20.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.0.tgz", - "integrity": "sha512-bnpOoa+DownbciXj0jVGENf8VYQnE2LNWomhYuCsMmmx9Jd9lwq0WXODuwpSsp8AVdKM2/HorrzxAfbKvWTByQ==", + "version": "4.20.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.2.tgz", + "integrity": "sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001313", - "electron-to-chromium": "^1.4.76", + "caniuse-lite": "^1.0.30001317", + "electron-to-chromium": "^1.4.84", "escalade": "^3.1.1", "node-releases": "^2.0.2", "picocolors": "^1.0.0" @@ -10909,9 +10918,9 @@ "dev": true }, "caniuse-lite": { - "version": "1.0.30001313", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001313.tgz", - "integrity": "sha512-rI1UN0koZUiKINjysQDuRi2VeSCce3bYJNmDcj3PIKREiAmjakugBul1QSkg/fPrlULYl6oWfGg3PbgOSY9X4Q==", + "version": "1.0.30001319", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001319.tgz", + "integrity": "sha512-xjlIAFHucBRSMUo1kb5D4LYgcN1M45qdKP++lhqowDpwJwGkpIRTt5qQqnhxjj1vHcI7nrJxWhCC1ATrCEBTcw==", "dev": true }, "canonical-path": { @@ -11281,9 +11290,9 @@ } }, "css-loader": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.0.tgz", - "integrity": "sha512-S7HCfCiDHLA+VXKqdZwyRZgoO0R9BnKDnVIoHMq5grl3N86zAu7MB+FBWHr5xOJC8SmvpTLha/2NpfFkFEN/ig==", + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.1.tgz", + "integrity": "sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==", "dev": true, "requires": { "icss-utils": "^5.1.0", @@ -11330,9 +11339,9 @@ } }, "debug": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", - "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dev": true, "requires": { "ms": "2.1.2" @@ -11561,9 +11570,9 @@ "dev": true }, "domhandler": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.0.tgz", - "integrity": "sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", "dev": true, "requires": { "domelementtype": "^2.2.0" @@ -11607,9 +11616,9 @@ "dev": true }, "electron-to-chromium": { - "version": "1.4.76", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.76.tgz", - "integrity": "sha512-3Vftv7cenJtQb+k00McEBZ2vVmZ/x+HEF7pcZONZIkOsESqAqVuACmBxMv0JhzX7u0YltU0vSqRqgBSTAhFUjA==", + "version": "1.4.89", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.89.tgz", + "integrity": "sha512-z1Axg0Fu54fse8wN4fd+GAINdU5mJmLtcl6bqIcYyzNVGONcfHAeeJi88KYMQVKalhXlYuVPzKkFIU5VD0raUw==", "dev": true }, "email-addresses": { @@ -11730,12 +11739,12 @@ "dev": true }, "eslint": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.10.0.tgz", - "integrity": "sha512-tcI1D9lfVec+R4LE1mNDnzoJ/f71Kl/9Cv4nG47jOueCMBrCCKYXr4AUVS7go6mWYGFD4+EoN6+eXSrEbRzXVw==", + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.11.0.tgz", + "integrity": "sha512-/KRpd9mIRg2raGxHRGwW9ZywYNAClZrHjdueHcrVDuO3a6bj83eoTirCCk0M0yPwOjWYKHwRVRid+xK4F/GHgA==", "dev": true, "requires": { - "@eslint/eslintrc": "^1.2.0", + "@eslint/eslintrc": "^1.2.1", "@humanwhocodes/config-array": "^0.9.2", "ajv": "^6.10.0", "chalk": "^4.0.0", @@ -11838,9 +11847,9 @@ } }, "globals": { - "version": "13.12.1", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.1.tgz", - "integrity": "sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw==", + "version": "13.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", + "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -12744,9 +12753,9 @@ } }, "http-proxy-middleware": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.3.tgz", - "integrity": "sha512-1bloEwnrHMnCoO/Gcwbz7eSVvW50KPES01PecpagI+YLNLci4AcuKJrujW4Mc3sBLpFxMSlsLNHS5Nl/lvrTPA==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.4.tgz", + "integrity": "sha512-m/4FxX17SUvz4lJ5WPXOHDUuCwIqXLfLHs1s0uZ3oYjhoXlx9csYxaOa0ElDEJ+h8Q4iJ1s+lTMbiCa4EXIJqg==", "dev": true, "requires": { "@types/http-proxy": "^1.17.8", @@ -13219,13 +13228,10 @@ "dev": true }, "json5": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", - "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", + "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", + "dev": true }, "jsonfile": { "version": "4.0.0", @@ -13290,9 +13296,9 @@ "dev": true }, "lint-staged": { - "version": "12.3.5", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-12.3.5.tgz", - "integrity": "sha512-oOH36RUs1It7b9U/C7Nl/a0sLfoIBcMB8ramiB3nuJ6brBqzsWiUAFSR5DQ3yyP/OR7XKMpijtgKl2DV1lQ3lA==", + "version": "12.3.7", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-12.3.7.tgz", + "integrity": "sha512-/S4D726e2GIsDVWIk1XGvheCaDm1SJRQp8efamZFWJxQMVEbOwSysp7xb49Oo73KYCdy97mIWinhlxcoNqIfIQ==", "dev": true, "requires": { "cli-truncate": "^3.1.0", @@ -13305,6 +13311,7 @@ "micromatch": "^4.0.4", "normalize-path": "^3.0.0", "object-inspect": "^1.12.0", + "pidtree": "^0.5.0", "string-argv": "^0.3.1", "supports-color": "^9.2.1", "yaml": "^1.10.2" @@ -13325,9 +13332,9 @@ } }, "listr2": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-4.0.4.tgz", - "integrity": "sha512-vJOm5KD6uZXjSsrwajr+mNacIjf87gWvlBEltPWLbTkslUscWAzquyK4xfe9Zd4RDgO5nnwFyV06FC+uVR+5mg==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-4.0.5.tgz", + "integrity": "sha512-juGHV1doQdpNT3GSTs9IUN43QJb7KHdF9uqg7Vufs/tG9VTzpFphqF4pm/ICdAABGQxsyNn9CiYA3StkI6jpwA==", "dev": true, "requires": { "cli-truncate": "^2.1.0", @@ -13335,7 +13342,7 @@ "log-update": "^4.0.0", "p-map": "^4.0.0", "rfdc": "^1.3.0", - "rxjs": "^7.5.4", + "rxjs": "^7.5.5", "through": "^2.3.8", "wrap-ansi": "^7.0.0" }, @@ -13635,18 +13642,18 @@ "dev": true }, "mime-db": { - "version": "1.51.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz", - "integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==", + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", "dev": true }, "mime-types": { - "version": "2.1.34", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz", - "integrity": "sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==", + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "dev": true, "requires": { - "mime-db": "1.51.0" + "mime-db": "1.52.0" } }, "mimic-fn": { @@ -13680,9 +13687,9 @@ } }, "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", "dev": true }, "mkdirp": { @@ -13787,9 +13794,9 @@ } }, "node-forge": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", - "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==" + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.0.tgz", + "integrity": "sha512-08ARB91bUi6zNKzVmaj3QO7cr397uiDT2nJ63cHjyNtCTWIgvS47j3eT0WfzUwS9+6Z5YshRaoasFkXCKrIYbA==" }, "node-releases": { "version": "2.0.2", @@ -14007,9 +14014,9 @@ "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" }, "papaparse": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.3.1.tgz", - "integrity": "sha512-Dbt2yjLJrCwH2sRqKFFJaN5XgIASO9YOFeFP8rIBRG2Ain8mqk5r1M6DkfvqEVozVcz3r3HaUGw253hA1nLIcA==" + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.3.2.tgz", + "integrity": "sha512-6dNZu0Ki+gyV0eBsFKJhYr+MdQYAzFUGlBMNj3GNrmHxmz1lfRa24CjFObPXtjcetlOv5Ad299MhIK0znp3afw==" }, "param-case": { "version": "3.0.4", @@ -14118,6 +14125,12 @@ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true }, + "pidtree": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.5.0.tgz", + "integrity": "sha512-9nxspIM7OpZuhBxPg73Zvyq7j1QMPMPsGKTqRc2XOaFQauDvoNz9fM1Wdkjmeo7l9GXOZiRs97sPkuayl39wjA==", + "dev": true + }, "pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", @@ -14227,9 +14240,9 @@ } }, "postcss": { - "version": "8.4.8", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.8.tgz", - "integrity": "sha512-2tXEqGxrjvAO6U+CJzDL2Fk2kPHTv1jQsYkSoMeOis2SsYaXRO2COxTdQp99cYvif9JTXaAk9lYGc3VhJt7JPQ==", + "version": "8.4.12", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.12.tgz", + "integrity": "sha512-lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg==", "dev": true, "requires": { "nanoid": "^3.3.1", @@ -14641,9 +14654,9 @@ } }, "rxjs": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.4.tgz", - "integrity": "sha512-h5M3Hk78r6wAheJF0a5YahB1yRQKCsZ4MsGdZ5O9ETbVtjPcScGfrMmoOq7EBsCRzd4BDkvDJ7ogP8Sz5tTFiQ==", + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", + "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", "requires": { "tslib": "^2.1.0" } @@ -14734,14 +14747,6 @@ "dev": true, "requires": { "node-forge": "^1.2.0" - }, - "dependencies": { - "node-forge": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.2.1.tgz", - "integrity": "sha512-Fcvtbb+zBcZXbTTVwqGA5W+MKBj56UjVRevvchv5XrcyXbmNdesfZL37nlcWOfpgHhgmxApw3tQbTr4CqNmX4w==", - "dev": true - } } }, "semver": { @@ -15258,9 +15263,9 @@ "dev": true }, "terser": { - "version": "5.12.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.12.0.tgz", - "integrity": "sha512-R3AUhNBGWiFc77HXag+1fXpAxTAFRQTJemlJKjAgD9r8xXTpjNKqIXwHM/o7Rh+O0kUJtS3WQVdBeMKFk5sw9A==", + "version": "5.12.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.12.1.tgz", + "integrity": "sha512-NXbs+7nisos5E+yXwAD+y7zrcTkMqb0dEJxIGtSKPdCBzopf7ni4odPul2aechpV7EXNvOudYOX2bb5tln1jbQ==", "dev": true, "requires": { "acorn": "^8.5.0", @@ -15381,9 +15386,9 @@ } }, "ts-loader": { - "version": "9.2.7", - "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.2.7.tgz", - "integrity": "sha512-Fxh44mKli9QezgbdCXkEJWxnedQ0ead7DXTH+lfXEPedu+Y9EtMJ2aQ9G3Dj1j7Q612E8931rww8NDZha4Tibg==", + "version": "9.2.8", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.2.8.tgz", + "integrity": "sha512-gxSak7IHUuRtwKf3FIPSW1VpZcqF9+MBrHOvBp9cjHh+525SjtCIJKVGjRKIAfxBwDGDGCFF00rTfzB1quxdSw==", "dev": true, "requires": { "chalk": "^4.1.0", @@ -15444,9 +15449,9 @@ } }, "tsconfig-paths": { - "version": "3.13.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.13.0.tgz", - "integrity": "sha512-nWuffZppoaYK0vQ1SQmkSsQzJoHA4s6uzdb2waRpD806x9yfq153AdVsWz4je2qZcW+pENrMQXbGQ3sMCkXuhw==", + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.0.tgz", + "integrity": "sha512-cg/1jAZoL57R39+wiw4u/SCC6Ic9Q5NqjBOb+9xISedOYurfog9ZNmKJSxAnb2m/5Bq4lE9lhUcau33Ml8DM0g==", "dev": true, "requires": { "@types/json5": "^0.0.29", @@ -16004,9 +16009,9 @@ "dev": true }, "yargs": { - "version": "17.3.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.3.1.tgz", - "integrity": "sha512-WUANQeVgjLbNsEmGk20f+nlHgOqzRFpiGWVaBrYGYIGANIIu3lWjoyi0fNlFmJkvfhCZ6BXINe7/W2O2bV4iaA==", + "version": "17.4.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.4.0.tgz", + "integrity": "sha512-WJudfrk81yWFSOkZYpAZx4Nt7V4xp7S/uJkX0CnxovMCt1wCE8LNftPpNuF9X/u9gN5nsD7ycYtRcDf2pL3UiA==", "dev": true, "requires": { "cliui": "^7.0.2", diff --git a/package.json b/package.json index 8642dcf7..5b7aad08 100644 --- a/package.json +++ b/package.json @@ -98,7 +98,6 @@ "jszip": "^3.7.1", "ngx-infinite-scroll": "^10.0.1", "ngx-toastr": "14.1.4", - "node-forge": "^0.10.0", "popper.js": "1.16.1", "qrious": "4.0.2", "rxjs": "^7.4.0", From 571aaf31c44966f5f1b17c939127948e7b7ec175 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 25 Mar 2022 01:23:30 +0100 Subject: [PATCH 06/18] Autosync the updated translations (#1564) Co-authored-by: github-actions <> --- src/locales/cs/messages.json | 38 +- src/locales/sk/messages.json | 2 +- src/locales/uk/messages.json | 44 +- src/locales/zh_TW/messages.json | 896 ++++++++++++++++---------------- 4 files changed, 490 insertions(+), 490 deletions(-) diff --git a/src/locales/cs/messages.json b/src/locales/cs/messages.json index 87679030..c86a1e06 100644 --- a/src/locales/cs/messages.json +++ b/src/locales/cs/messages.json @@ -301,16 +301,16 @@ "message": "Poznámka" }, "typeLoginPlural": { - "message": "Logins" + "message": "Přihlašovací údaje" }, "typeCardPlural": { - "message": "Cards" + "message": "Karty" }, "typeIdentityPlural": { - "message": "Identities" + "message": "Identity" }, "typeSecureNotePlural": { - "message": "Secure Notes" + "message": "Zabezpečené poznámky" }, "folders": { "message": "Složky" @@ -2165,7 +2165,7 @@ "message": "Zásady" }, "singleSignOn": { - "message": "Single Sign-On" + "message": "Jednotné přihlášení" }, "editPolicy": { "message": "Upravit zásadu" @@ -3884,10 +3884,10 @@ "message": "Create New Collections" }, "editAnyCollection": { - "message": "Edit Any Collection" + "message": "Upravit jakoukoliv kolekci" }, "deleteAnyCollection": { - "message": "Delete Any Collection" + "message": "Odstranit jakoukoliv kolekci" }, "manageAssignedCollections": { "message": "Spravovat přiřazené kolekce" @@ -3896,7 +3896,7 @@ "message": "Edit Assigned Collections" }, "deleteAssignedCollections": { - "message": "Delete Assigned Collections" + "message": "Spravovat přiřazené kolekce" }, "manageGroups": { "message": "Spravovat skupiny" @@ -4184,7 +4184,7 @@ "message": "Motiv" }, "themeDesc": { - "message": "Choose a theme for your web vault." + "message": "Vyberte si šablonu pro váš webový trezor." }, "themeSystem": { "message": "Použít systémový motiv" @@ -4229,31 +4229,31 @@ "message": "Nastavení poskytovatele" }, "setupProviderLoginDesc": { - "message": "You've been invited to setup a new provider. To continue, you need to log in or create a new Bitwarden account." + "message": "Byli jste pozváni k nastavení nového poskytovatele. Chcete-li pokračovat, musíte se přihlásit nebo vytvořit nový Bitwarden účet." }, "setupProviderDesc": { - "message": "Please enter the details below to complete the provider setup. Contact Customer Support if you have any questions." + "message": "Pro dokončení nastavení poskytovatele, zadejte prosím níže uvedené údaje. Pokud máte nějaké dotazy, kontaktujte zákaznickou podporu." }, "providerName": { "message": "Jméno poskytovatele" }, "providerSetup": { - "message": "The provider has been set up." + "message": "Poskytovatel byl vytvořen." }, "clients": { - "message": "Clients" + "message": "Klienti" }, "providerAdmin": { - "message": "Provider Admin" + "message": "Administrátor poskytovatele" }, "providerAdminDesc": { - "message": "The highest access user that can manage all aspects of your provider as well as access and manage client organizations." + "message": "Uživatel s nejvyšším oprávněním, který může spravovat všechny aspekty vašeho poskytovatele a také přístup a správu klientských organizací." }, "serviceUser": { - "message": "Service User" + "message": "Servisní uživatel" }, "serviceUserDesc": { - "message": "Service users can access and manage all client organizations." + "message": "Servisní uživatelé mohou přistupovat ke všem klientským organizacím a spravovat je." }, "providerInviteUserDesc": { "message": "Invite a new user to your provider by entering their Bitwarden account email address below. If they do not have a Bitwarden account already, they will be prompted to create a new account." @@ -4471,7 +4471,7 @@ "message": "Assertion Consumer Service (ACS) URL" }, "spNameIdFormat": { - "message": "Name ID Format" + "message": "Formát jména ID" }, "spOutboundSigningAlgorithm": { "message": "Outbound Signing Algorithm" @@ -4489,7 +4489,7 @@ "message": "Validate certificates" }, "idpEntityId": { - "message": "Entity ID" + "message": "ID subjektu" }, "idpBindingType": { "message": "Binding Type" diff --git a/src/locales/sk/messages.json b/src/locales/sk/messages.json index 063548ed..d632c6c6 100644 --- a/src/locales/sk/messages.json +++ b/src/locales/sk/messages.json @@ -41,7 +41,7 @@ "message": "Nové heslo" }, "passphrase": { - "message": "Heslo" + "message": "Prístupová fráza" }, "notes": { "message": "Poznámky" diff --git a/src/locales/uk/messages.json b/src/locales/uk/messages.json index 69990eab..b038c3eb 100644 --- a/src/locales/uk/messages.json +++ b/src/locales/uk/messages.json @@ -301,16 +301,16 @@ "message": "Захищена нотатка" }, "typeLoginPlural": { - "message": "Logins" + "message": "Записи" }, "typeCardPlural": { - "message": "Cards" + "message": "Картки" }, "typeIdentityPlural": { - "message": "Identities" + "message": "Особисті дані" }, "typeSecureNotePlural": { - "message": "Secure Notes" + "message": "Захищені нотатки" }, "folders": { "message": "Теки" @@ -2795,7 +2795,7 @@ "message": "Видалити організацію" }, "deletingOrganizationContentWarning": { - "message": "Enter the master password to confirm deletion of $ORGANIZATION$ and all associated data. Vault data in $ORGANIZATION$ includes:", + "message": "Введіть головний пароль для підтвердження видалення $ORGANIZATION$ та всіх пов'язаних даних. Дані сховища в $ORGANIZATION$ включають:", "placeholders": { "organization": { "content": "$1", @@ -2804,10 +2804,10 @@ } }, "deletingOrganizationActiveUserAccountsWarning": { - "message": "User accounts will remain active after deletion but will no longer be associated to this organization." + "message": "Облікові записи користувачів залишатимуться активними після видалення, але більше не будуть пов'язані з цією організацією." }, "deletingOrganizationIsPermanentWarning": { - "message": "Deleting $ORGANIZATION$ is permanent and irreversible.", + "message": "Видалення $ORGANIZATION$ є остаточним і незворотнім.", "placeholders": { "organization": { "content": "$1", @@ -4510,10 +4510,10 @@ "message": "Дозволити небажану відповідь авторизації" }, "idpAllowOutboundLogoutRequests": { - "message": "Allow outbound logout requests" + "message": "Дозволити вихідні запити для виходу" }, "idpSignAuthenticationRequests": { - "message": "Sign authentication requests" + "message": "Підписувати запити авторизації" }, "ssoSettingsSaved": { "message": "Конфігурацію єдиного входу збережено." @@ -4765,7 +4765,7 @@ "message": "БЕЗПЛАТНО зі спонсоруванням" }, "formErrorSummaryPlural": { - "message": "$COUNT$ fields above need your attention.", + "message": "$COUNT$ зазначених вище полів потребують вашої уваги.", "placeholders": { "count": { "content": "$1", @@ -4774,10 +4774,10 @@ } }, "formErrorSummarySingle": { - "message": "1 field above needs your attention." + "message": "1 зазначене вище поле потребує вашої уваги." }, "fieldRequiredError": { - "message": "$FIELDNAME$ is required.", + "message": "$FIELDNAME$ є обов'язковим.", "placeholders": { "fieldname": { "content": "$1", @@ -4786,31 +4786,31 @@ } }, "required": { - "message": "required" + "message": "обов’язково" }, "idpSingleSignOnServiceUrlRequired": { - "message": "Required if Entity ID is not a URL." + "message": "Обов'язково, якщо ID елемента не є URL." }, "openIdOptionalCustomizations": { - "message": "Optional Customizations" + "message": "Додаткові налаштування" }, "openIdAuthorityRequired": { - "message": "Required if Authority is not valid." + "message": "Обов'язково, якщо установа недійсна." }, "separateMultipleWithComma": { - "message": "Separate multiple with a comma." + "message": "Декілька значень розділених комою." }, "sessionTimeout": { - "message": "Your session has timed out. Please go back and try logging in again." + "message": "Час вашого сеансу завершився. Поверніться назад і спробуйте увійти знову." }, "exportingPersonalVaultTitle": { - "message": "Exporting Personal Vault" + "message": "Експортування особистого сховища" }, "exportingOrganizationVaultTitle": { - "message": "Exporting Organization Vault" + "message": "Експортування сховища організації" }, "exportingPersonalVaultDescription": { - "message": "Only the personal vault items associated with $EMAIL$ will be exported. Organization vault items will not be included.", + "message": "Будуть експортовані лише записи особистого сховища, пов'язані з $EMAIL$. Записи сховища організації не буде включено.", "placeholders": { "email": { "content": "$1", @@ -4819,7 +4819,7 @@ } }, "exportingOrganizationVaultDescription": { - "message": "Only the organization vault associated with $ORGANIZATION$ will be exported. Personal vault items and items from other organizations will not be included.", + "message": "Будуть експортовані лише записи сховища організації, пов'язані з $ORGANIZATION$. Записи особистого сховища та записи з інших організацій не буде включено.", "placeholders": { "organization": { "content": "$1", diff --git a/src/locales/zh_TW/messages.json b/src/locales/zh_TW/messages.json index 4781cdea..d4987af5 100644 --- a/src/locales/zh_TW/messages.json +++ b/src/locales/zh_TW/messages.json @@ -38,7 +38,7 @@ "message": "密碼" }, "newPassword": { - "message": "新的密碼" + "message": "新密碼" }, "passphrase": { "message": "密碼短語" @@ -59,7 +59,7 @@ "message": "發卡組織" }, "expiration": { - "message": "過期" + "message": "逾期" }, "securityCode": { "message": "安全代碼 (CVV)" @@ -77,7 +77,7 @@ "message": "護照號碼" }, "licenseNumber": { - "message": "授權証編號" + "message": "許可證號碼" }, "email": { "message": "電子郵件" @@ -215,7 +215,7 @@ "message": "永不" }, "toggleVisibility": { - "message": "切換可見性" + "message": "切換可見度" }, "toggleCollapse": { "message": "切換折疊", @@ -301,7 +301,7 @@ "message": "安全筆記" }, "typeLoginPlural": { - "message": "登入" + "message": "登入資料" }, "typeCardPlural": { "message": "支付卡" @@ -352,7 +352,7 @@ "message": "國家" }, "shared": { - "message": "已共享" + "message": "已共用" }, "attachments": { "message": "附件" @@ -377,7 +377,7 @@ "message": "其他" }, "share": { - "message": "共享" + "message": "共用" }, "moveToOrganization": { "message": "移動至組織" @@ -423,13 +423,13 @@ "message": "密碼庫" }, "moveSelectedToOrg": { - "message": "移動已選項目到組織" + "message": "移動已選取項目至組織" }, "deleteSelected": { - "message": "刪除選取的項目" + "message": "刪除已選取項目" }, "moveSelected": { - "message": "移動選取的項目" + "message": "移動已選取項目" }, "selectAll": { "message": "全選" @@ -465,10 +465,10 @@ "message": "更新加密金鑰前不能使用此功能。" }, "addedItem": { - "message": "項目已新增" + "message": "已新增項目" }, "editedItem": { - "message": "項目已編輯" + "message": "已編輯項目" }, "movedItemToOrg": { "message": "已將 $ITEMNAME$ 移動至 $ORGNAME$", @@ -484,7 +484,7 @@ } }, "movedItemsToOrg": { - "message": "已將選擇項目移動至 $ORGNAME$", + "message": "將已選取項目移動至 $ORGNAME$", "placeholders": { "orgname": { "content": "$1", @@ -502,31 +502,31 @@ "message": "刪除附件" }, "deleteItemConfirmation": { - "message": "您確定要發送到垃圾桶嗎?" + "message": "確定要刪除此項目嗎?" }, "deletedItem": { - "message": "此項目已傳送到垃圾桶" + "message": "項目已移至垃圾桶" }, "deletedItems": { - "message": "項目已傳送到垃圾桶" + "message": "項目已移至垃圾桶" }, "movedItems": { - "message": "項目已移動" + "message": "已移動項目" }, "overwritePasswordConfirmation": { "message": "您確定要覆寫目前的密碼嗎?" }, "editedFolder": { - "message": "資料夾已編輯" + "message": "已編輯資料夾" }, "addedFolder": { - "message": "資料夾已新增" + "message": "已新增資料夾" }, "deleteFolderConfirmation": { "message": "您確定要刪除此資料夾嗎?" }, "deletedFolder": { - "message": "資料夾已刪除" + "message": "已刪除的資料夾" }, "loggedOut": { "message": "已登出" @@ -550,7 +550,7 @@ "message": "否" }, "loginOrCreateNewAccount": { - "message": "登入或建立帳戶來存取您的安全密碼庫。" + "message": "登入或建立帳戶以存取您的安全密碼庫。" }, "createAccount": { "message": "建立帳戶" @@ -565,16 +565,16 @@ "message": "您需要使用您的電子郵件地址登入。" }, "yourName": { - "message": "你的名稱" + "message": "您的名稱" }, "yourNameDesc": { - "message": "我們應該怎樣稱呼您?" + "message": "我們應該怎樣稱呼您?" }, "masterPass": { "message": "主密碼" }, "masterPassDesc": { - "message": "主密碼是您用於存取您的密碼庫的密碼。不要忘記主密碼,這一點非常重要。如果忘記了密碼,無法將其復原。" + "message": "主密碼是用於存取密碼庫的密碼。它非常重要,請您不要忘記它。若您忘記了主密碼,沒有任何方法能將其復原。" }, "masterPassHintDesc": { "message": "主密碼提示可以在您忘記主密碼時幫助您回憶主密碼。" @@ -595,16 +595,16 @@ "message": "密碼提示" }, "enterEmailToGetHint": { - "message": "請輸入您的帳户電子郵件位址以接收主密碼提示。" + "message": "請輸入您的帳户電子郵件地址以接收主密碼提示。" }, "getMasterPasswordHint": { "message": "取得主密碼提示" }, "emailRequired": { - "message": "必須填入電子郵件位址。" + "message": "必須填入電子郵件地址 。" }, "invalidEmail": { - "message": "無效的電子郵件位址。" + "message": "無效的電子郵件地址。" }, "masterPassRequired": { "message": "必須填入主密碼。" @@ -613,7 +613,7 @@ "message": "主密碼需要至少 8 個字元。" }, "masterPassDoesntMatch": { - "message": "兩次填入的主密碼不一致。" + "message": "兩次填入的主密碼不相符。" }, "newAccountCreated": { "message": "帳戶已建立!現在可以登入了。" @@ -625,7 +625,7 @@ "message": "發生了未預期的錯誤。" }, "emailAddress": { - "message": "電子郵件位址" + "message": "電子郵件地址" }, "yourVaultIsLocked": { "message": "密碼庫已鎖定。驗證主密碼以繼續。" @@ -653,25 +653,25 @@ "message": "立即鎖定" }, "noItemsInList": { - "message": "沒有可顯示的項目。" + "message": "沒有可列出的項目。" }, "noCollectionsInList": { - "message": "沒有可顯示的集合。" + "message": "沒有可列出的集合。" }, "noGroupsInList": { - "message": "沒有可顯示的群組。" + "message": "沒有可列出的群組。" }, "noUsersInList": { - "message": "沒有可顯示的使用者。" + "message": "沒有可列出的使用者。" }, "noEventsInList": { - "message": "沒有可顯示的事件。" + "message": "沒有可列出的事件。" }, "newOrganization": { "message": "新增組織" }, "noOrganizationsList": { - "message": "您沒有加入任何組織。組織允許您與其他使用者安全地共享項目。" + "message": "您沒有加入任何組織。組織允許您與其他使用者安全地共用項目。" }, "versionNumber": { "message": "版本 $VERSION_NUMBER$", @@ -710,19 +710,19 @@ "message": "再次傳送​​包含驗證碼的電子郵件" }, "useAnotherTwoStepMethod": { - "message": "使用另一種兩步驟登入方式" + "message": "使用另一種兩步驟登入方法" }, "insertYubiKey": { "message": "將您的 YubiKey 插入電腦的 USB 連接埠,然後按一下它的按鈕。" }, "insertU2f": { - "message": "將您的安全鑰匙插入電腦的 USB 連接埠,然後按一下它的按鈕(如有的話)。" + "message": "將您的安全金鑰插入電腦的 USB 連接埠,然後按一下它的按鈕(如有的話)。" }, "loginUnavailable": { "message": "無法登入" }, "noTwoStepProviders": { - "message": "此帳戶已啟用兩步驟登入,但是本瀏覽器不支援已設定的兩步驟登入方式。" + "message": "此帳戶已啟用兩步驟登入,但是本瀏覽器不支援已設定的兩步驟登入方法。" }, "noTwoStepProviders2": { "message": "請使用已支援的瀏覽器(例如 Chrome ),及/或新增可以更好地跨瀏覽器的兩步驟登入方法(例如驗證器應用程式)。" @@ -731,10 +731,10 @@ "message": "兩步驟登入選項" }, "recoveryCodeDesc": { - "message": "無法使用任何雙要素提供程式嗎?請使用您的復原代碼以停用您賬戶的所有雙要素提供程式。" + "message": "無法使用任何雙因素提供程式嗎?請使用您的復原碼以停用您帳戶的所有雙因素提供程式。" }, "recoveryCodeTitle": { - "message": "復原代碼" + "message": "復原碼" }, "authenticatorAppTitle": { "message": "驗證器應用程式" @@ -744,30 +744,30 @@ "description": "'Authy' and 'Google Authenticator' are product names and should not be translated." }, "yubiKeyTitle": { - "message": "YubiKey OTP 安全鑰匙" + "message": "YubiKey OTP 安全金鑰" }, "yubiKeyDesc": { "message": "使用 YubiKey 存取您的帳戶。支援 YubiKey 4 系列、5 系列以及 NEO 裝置。" }, "duoDesc": { - "message": "使用 Duo Security 的 Duo Mobile 程式、SMS 、致電或 U2F 安全鑰匙進行驗證。", + "message": "使用 Duo Security 的 Duo Mobile 程式、SMS 、撥打電話或 U2F 安全金鑰進行驗證。", "description": "'Duo Security' and 'Duo Mobile' are product names and should not be translated." }, "duoOrganizationDesc": { - "message": "爲您的組織使用 Duo Security 的 Duo Mobile 程式、SMS、致電或 U2F 安全鑰匙進行驗證。", + "message": "為您的組織使用 Duo Security 的 Duo Mobile 程式、SMS、撥打電話或 U2F 安全金鑰進行驗證。", "description": "'Duo Security' and 'Duo Mobile' are product names and should not be translated." }, "u2fDesc": { - "message": "使用任何啟用了 FIDO U2F 的安全鑰匙來存取您的帳戶。" + "message": "使用任何啟用了 FIDO U2F 的安全金鑰來存取您的帳戶。" }, "u2fTitle": { - "message": "FIDO U2F 安全鑰匙" + "message": "FIDO U2F 安全金鑰" }, "webAuthnTitle": { "message": "FIDO2 WebAuthn" }, "webAuthnDesc": { - "message": "使用任何具有 WebAuthn 功能的安全金鑰來存取您的帳戶。" + "message": "使用任何具有 WebAuthn 功能的安全金鑰以存取您的帳戶。" }, "webAuthnMigrated": { "message": "(遷移自 FIDO)" @@ -788,10 +788,10 @@ "message": "組織" }, "moveToOrgDesc": { - "message": "選擇您希望將這個項目移動到哪個組織。項目的擁有權將會轉移到該組織。一經移動,您將不再是此項目的直接擁有者。" + "message": "選擇您希望將這個項目移動至哪個組織。項目的擁有權將會轉移至該組織。轉移之後,您將不再是此項目的直接擁有者。" }, "moveManyToOrgDesc": { - "message": "選擇您希望將這些項目移動到哪個組織。項目的擁有權將會轉移到該組織。一經移動,您將不再是這些項目的直接擁有者。" + "message": "選擇您希望將這些項目移動至哪個組織。項目的擁有權將會轉移至該組織。轉移之後,您將不再是這些項目的直接擁有者。" }, "collectionsDesc": { "message": "編輯與此項目共享的集合。只有具有這些集合存取權限的組織使用者才能夠看到此項目。" @@ -806,7 +806,7 @@ } }, "moveSelectedItemsDesc": { - "message": "選擇要將這 $COUNT$ 個項目移動到的資料夾。", + "message": "選擇要將這 $COUNT$ 個項目移動至哪個資料夾。", "placeholders": { "count": { "content": "$1", @@ -844,13 +844,13 @@ "message": "確認匯出密碼庫" }, "exportWarningDesc": { - "message": "此匯出包含未加密格式的密碼庫檔案。您不應將它存放或經由不安全的方式(例如電子郵件)傳送。用完後請立即將它刪除。" + "message": "此次匯出的密碼庫檔案為未加密格式。您不應將它存放或經由不安全的方式(例如電子郵件)傳送。用完後請立即將它刪除。" }, "encExportKeyWarningDesc": { - "message": "將使用您帳戶的加密金鑰來加密匯出資料,若您更新了帳戶的加密金鑰,請重新匯出,才有辦法解密匯出的檔案。" + "message": "將使用您帳戶的加密金鑰來加密匯出的資料,若您更新了帳戶的加密金鑰,請重新匯出,否則將無法解密匯出的檔案。" }, "encExportAccountWarningDesc": { - "message": "每個 Bitwarden 使用者帳戶的帳戶加密金鑰都不同,因此無法將加密過的匯出檔案匯入到不同帳戶中。" + "message": "每個 Bitwarden 使用者帳戶的帳戶加密金鑰都不相同,因此無法將已加密匯出的檔案匯入至不同帳戶中。" }, "export": { "message": "匯出" @@ -903,7 +903,7 @@ "message": "密碼歷史記錄" }, "noPasswordsInList": { - "message": "沒有可顯示的密碼。" + "message": "沒有可列出的密碼。" }, "clear": { "message": "清除", @@ -916,7 +916,7 @@ "message": "變更電子郵件" }, "changeEmailTwoFactorWarning": { - "message": "继续操作将變更您的帳戶電子郵件位址。這不會變更用于雙要素認證的電子郵件位址。您可以在雙要素登入設定中變更它。" + "message": "繼續操作將變更您的帳戶電子郵件地址。這不會變更用於雙因素驗證的電子郵件地址。您可以在雙因素登入設定中變更它。" }, "newEmail": { "message": "新的電子郵件" @@ -925,7 +925,7 @@ "message": "代碼" }, "changeEmailDesc": { - "message": "我們已經將驗證碼寄送至 $EMAIL$。請查看您的電子郵件以取得驗證碼,並在下方輸入以完成電子郵件位址的變更。", + "message": "我們已寄送電子郵件至 $EMAIL$。請檢查您的電子郵件以取得驗證碼,並在下方輸入驗證碼以完成電子郵件地址的變更。", "placeholders": { "email": { "content": "$1", @@ -937,13 +937,13 @@ "message": "接下來會登出目前工作階段,並要求您重新登入帳戶。其他裝置上的工作階段最多會保持一個小時。" }, "emailChanged": { - "message": "電子郵件已變更" + "message": "已變更電子郵件" }, "logBackIn": { "message": "請重新登入。" }, "logBackInOthersToo": { - "message": "請重新登入。如果您還在使用其他 Bitwarden 應用程式,也請登出並重新登入。" + "message": "請重新登入。若您還在使用其他 Bitwarden 應用程式,也請登出後再重新登入。" }, "changeMasterPassword": { "message": "變更主密碼" @@ -1006,7 +1006,7 @@ "message": "您是否擔心自己的帳戶在其他裝置上保持登入?請遵照以下步驟取消對之前使用過的所有電腦和裝置的授權。若您以前使用過公用電腦或不小心曾將密碼儲存在不屬於您的裝置上,則建議執行此安全步驟,此操作還將清除所有以前記住的兩步驟登入工作階段。" }, "deauthorizeSessionsWarning": { - "message": "接下來會登出目前的工作階段,並要求您重新登入。若您有設定兩步驟登入,也需重新認證。其他裝置上的活動工作階段最多會保持一個小時。" + "message": "接下來會登出目前的工作階段,並要求您重新登入。若您有設定兩步驟登入,也需重新驗證。其他裝置上的活動工作階段最多會保持一個小時。" }, "sessionsDeauthorized": { "message": "已取消所有工作階段授權" @@ -1015,19 +1015,19 @@ "message": "清空密碼庫" }, "purgedOrganizationVault": { - "message": "組織密碼庫已清空。" + "message": "已清空組織的密碼庫。" }, "vaultAccessedByProvider": { - "message": "提供商存取了密碼庫。" + "message": "提供者存取了密碼庫。" }, "purgeVaultDesc": { - "message": "接下來的操作會刪除密碼庫當中的所有項目與資料夾。屬於組織的共享項目將不會刪除。" + "message": "接下來的操作會刪除密碼庫當中的所有項目與資料夾。屬於組織的共用項目將不會刪除。" }, "purgeOrgVaultDesc": { "message": "接下來的操作將刪除密碼庫當中的所有項目。" }, "purgeVaultWarning": { - "message": "清空密碼庫是永久性的。將無法被還原。" + "message": "清空密碼庫是永久性的。並且無法復原。" }, "vaultPurged": { "message": "已清空您的密碼庫。" @@ -1036,16 +1036,16 @@ "message": "刪除帳戶" }, "deleteAccountDesc": { - "message": "接下來將刪除您的帳戶,以及所有相關資料。" + "message": "接下來的操作將刪除您的帳戶及所有相關資料。" }, "deleteAccountWarning": { - "message": "刪除您的帳戶是永久性的。無法復原。" + "message": "刪除您的帳戶是永久性的。並且無法復原。" }, "accountDeleted": { - "message": "帳戶已刪除" + "message": "已刪除帳戶" }, "accountDeletedDesc": { - "message": "您的帳戶已經關閉,所有關聯資料已經被刪除。" + "message": "您的帳戶已經關閉,所有關聯的資料已經被刪除。" }, "myAccount": { "message": "我的帳戶" @@ -1066,7 +1066,7 @@ "message": "資料已經成功匯入至您的密碼庫中。" }, "importWarning": { - "message": "即將匯入資料到 $ORGANIZATION$。您的資料可能會與該組織中的成員共享,確定要繼續嗎?", + "message": "即將匯入資料至 $ORGANIZATION$。您的資料可能會與該組織中的成員共用,確定要繼續嗎?", "placeholders": { "organization": { "content": "$1", @@ -1081,7 +1081,7 @@ "message": "沒有匯入任何內容。" }, "importEncKeyError": { - "message": "解密匯出檔案時發生錯誤,您的加密金鑰與匯出資料時使用的金鑰不同。" + "message": "解密匯出的檔案時發生錯誤,您的加密金鑰與匯出資料時使用的金鑰不同。" }, "selectFormat": { "message": "選擇匯入檔案的格式" @@ -1109,7 +1109,7 @@ "message": "自訂您的網頁版密碼庫" }, "optionsUpdated": { - "message": "選項已更新" + "message": "已更新選項" }, "language": { "message": "語言" @@ -1118,10 +1118,10 @@ "message": "變更網頁版密碼庫使用的語言。" }, "disableIcons": { - "message": "停用網站圖標" + "message": "停用網站圖示顯示功能" }, "disableIconsDesc": { - "message": "在您密碼庫的每個登入資料旁顯示一個可辨識的圖標。" + "message": "在您密碼庫的每個登入資料旁顯示一個可辨識的圖示。" }, "enableGravatars": { "message": "啟用 Gravatars 頭像", @@ -1131,7 +1131,7 @@ "message": "載入 gravatar.com 上的頭像圖片。" }, "enableFullWidth": { - "message": "啟用全寬度佈局", + "message": "啟用全寬度版面配置", "description": "Allows scaling the web vault UI's width" }, "enableFullWidthDesc": { @@ -1144,7 +1144,7 @@ "message": "網域規則" }, "domainRulesDesc": { - "message": "如果您在多個不同網站使用相同的登入資料,您可以把這些網站標記為「通用」。Bitwarden 會為您設定 「全域」域名。" + "message": "如果您在多個不同網站使用相同的登入資料,您可以將這些網站標記為「通用」。Bitwarden 會為您設定 「全域」域名。" }, "globalEqDomains": { "message": "全域通用域名" @@ -1165,7 +1165,7 @@ "message": "新增自訂網域" }, "newCustomDomainDesc": { - "message": "輸入以逗號分隔的網域清單。只允許輸入「基本」網域,請勿輸入子網域名稱。例如,輸入「google.com」即可,而非「www.google.com」。您也可以輸入「androidapp://package.name」來將 Android 應用程式與其他網域名稱關聯起來。" + "message": "輸入以逗號分隔的網域清單。只允許輸入「基本」網域,請勿輸入子網域名稱。例如,輸入「google.com」即可,而非「www.google.com」。您也可以輸入「androidapp://package.name」來將 Android 應用程式與其他網域名稱建立關聯。" }, "customDomainX": { "message": "自訂網域 $INDEX$", @@ -1186,13 +1186,13 @@ "message": "在登入時執行額外的步驟來保護您的帳戶。" }, "twoStepLoginOrganizationDesc": { - "message": "可透過組織級別來設定提供方式,以要求所有使用者都必須開啟兩步驟登入。" + "message": "可透過組織等級來設定提供方式,以要求所有使用者都必須開啟兩步驟登入。" }, "twoStepLoginRecoveryWarning": { - "message": "啟用兩步驟登入可能會將您永久鎖定在您的 Bitwarden 帳戶外。如果您無法正常使用兩步驟登入驗證應用程式(例如,您遺失了裝置),則可以使用復原代碼存取您的帳戶。 如果您失去存取帳戶的權限,Bitwarden 也無法幫助您。所以我們建議您記下或列印復原代碼,並將其妥善保管。" + "message": "啟用兩步驟登入可能會將您永久鎖定在您的 Bitwarden 帳戶外。如果您無法正常使用兩步驟登入驗證應用程式(例如,您遺失了裝置),則可以使用復原碼存取您的帳戶。 如果您失去帳戶的存取權限,Bitwarden 也無法幫助您。所以我們建議您記下或列印復原碼,並將其妥善保存。" }, "viewRecoveryCode": { - "message": "檢視復原代碼" + "message": "檢視復原碼" }, "providers": { "message": "提供者", @@ -1221,7 +1221,7 @@ "message": "您有進階版存取權限" }, "alreadyPremiumFromOrg": { - "message": "由於您是擁有進階會員的組織的成員,您已獲得進階功能。" + "message": "由於您是擁有進階會員功能的組織的成員,您已獲得進階功能。" }, "manage": { "message": "管理" @@ -1236,13 +1236,13 @@ "message": "輸入您的主密碼以修改兩步驟登入設定。" }, "twoStepAuthenticatorDesc": { - "message": "請依照下列步驟設定使用驗證器應用程式的兩步驟登入:" + "message": "請依照下列步驟設定使用驗證器應用程式的兩步驟登入:" }, "twoStepAuthenticatorDownloadApp": { - "message": "下載兩步驟認證應用程式" + "message": "下載兩步驟驗證器應用程式" }, "twoStepAuthenticatorNeedApp": { - "message": "需要驗證器應用程式嗎?下載以下程式之一" + "message": "需要驗證器應用程式嗎?您可以下載以下應用程式:" }, "iosDevices": { "message": "iOS 裝置" @@ -1254,7 +1254,7 @@ "message": "Windows 裝置" }, "twoStepAuthenticatorAppsRecommended": { - "message": "推薦使用這些應用程式,但也可使用其他的驗證器應用程式。" + "message": "推薦使用下列的應用程式,您也可使用其他驗證器應用程式。" }, "twoStepAuthenticatorScanCode": { "message": "使用您的驗證器應用程式掃描此 QR Code" @@ -1266,10 +1266,10 @@ "message": "請輸入應用程式產生的 6 位數驗證碼" }, "twoStepAuthenticatorReaddDesc": { - "message": "若您需要將其加入其他裝置,以下是您的驗證器應用程式所需要的 QR Code 或金鑰。" + "message": "若您需要將其加入其他裝置,以下是您的驗證器應用程式所需要的 QR Code(或金鑰)。" }, "twoStepDisableDesc": { - "message": "您確定要停用兩步驟登入嗎?" + "message": "您確定要停用兩步驟登入嗎?" }, "twoStepDisabled": { "message": "已停用兩步驟登入方式。" @@ -1290,13 +1290,13 @@ "message": "儲存表單" }, "twoFactorYubikeyWarning": { - "message": "由於平台限制,無法於所有 Bitwarden 應用程式中使用 YubiKey。請開啟另一套兩步驟登入方式,以確保可在 YubiKey 無法使用時還能存取您的帳戶。支援的平台有:" + "message": "由於平台限制,無法於所有 Bitwarden 應用程式中使用 YubiKey。請開啟另一套兩步驟登入方式,以確保可在 YubiKey 無法使用時還能存取您的帳戶。支援的平台有:" }, "twoFactorYubikeySupportUsb": { - "message": "具有 USB 埠的電腦上的網頁版密碼庫、桌面應用程式、命令行介面以及所有瀏覽器擴充套件均可接受您的 YubiKey 。" + "message": "具有 USB 連接埠的電腦上的網頁版密碼庫、桌面應用程式、命令列介面以及所有瀏覽器擴充套件均可使用您的 YubiKey 。" }, "twoFactorYubikeySupportMobile": { - "message": "兼容 NFC 功能或擁有數據埠的裝置上的行動應用程式可接受您的 YubiKey。" + "message": "在具有 NFC 功能或擁有資料連接埠的裝置上的行動應用程式可使用您的 YubiKey。" }, "yubikeyX": { "message": "YubiKey $INDEX$", @@ -1308,7 +1308,7 @@ } }, "u2fkeyX": { - "message": "U2F 鑰匙 $INDEX$", + "message": "U2F 金鑰 $INDEX$", "placeholders": { "index": { "content": "$1", @@ -1329,16 +1329,16 @@ "message": "NFC 支援" }, "twoFactorYubikeySupportsNfc": { - "message": "我有一把鑰匙支援 NFC。" + "message": "我有一把金鑰支援 NFC。" }, "twoFactorYubikeySupportsNfcDesc": { - "message": "若您有一個支援 NFC 的 YubiKey(例如 YubiKey NEO),行動裝置在感應到 NFC 時将提示您。" + "message": "若您有一個支援 NFC 的 YubiKey(例如 YubiKey NEO),行動裝置在感應到 NFC 時將提示您。" }, "yubikeysUpdated": { "message": "YubiKey 已更新" }, "disableAllKeys": { - "message": "停用全部鑰匙" + "message": "停用全部金鑰" }, "twoFactorDuoDesc": { "message": "請輸入來自您的 Duo 管理面板的 Bitwarden 應用程式資訊。" @@ -1353,10 +1353,10 @@ "message": "API 主機名稱" }, "twoFactorEmailDesc": { - "message": "請依照下列步驟設定使用電子郵件的兩步驟登入:" + "message": "請依照下列步驟設定使用電子郵件的兩步驟登入:" }, "twoFactorEmailEnterEmail": { - "message": "輸入您希望接收驗證碼的電子郵件位址" + "message": "輸入您想用來接收驗證碼的電子郵件地址" }, "twoFactorEmailEnterCode": { "message": "請輸入電子郵件中的 6 位數驗證碼" @@ -1365,28 +1365,28 @@ "message": "傳送電子郵件" }, "twoFactorU2fAdd": { - "message": "在您的帳戶中新增 FIDO U2F 安全鑰匙" + "message": "在您的帳戶中新增 FIDO U2F 安全金鑰" }, "removeU2fConfirmation": { - "message": "您確定要移除這把安全鑰匙嗎?" + "message": "您確定要移除這把安全金鑰嗎?" }, "twoFactorWebAuthnAdd": { "message": "在您的帳戶中新增 WebAuthn 安全金鑰" }, "readKey": { - "message": "讀取鑰匙" + "message": "讀取金鑰" }, "keyCompromised": { - "message": "鑰匙已損壞。" + "message": "金鑰已損壞。" }, "twoFactorU2fGiveName": { - "message": "給安全鑰匙起一個友好的名稱,以方便識別。" + "message": "幫安全金鑰取一個易記名稱,以方便辨識。" }, "twoFactorU2fPlugInReadKey": { - "message": "請將安全鑰匙插入您電腦的 USB 埠,並按下「讀取鑰匙」按鈕。" + "message": "請將安全金鑰插入您電腦的 USB 連接埠,並按下「讀取鑰匙」按鈕。" }, "twoFactorU2fTouchButton": { - "message": "如果安全鑰匙有按鈕,請按下去。" + "message": "若安全金鑰有按鈕,請按下它。" }, "twoFactorU2fSaveForm": { "message": "儲存表單" @@ -1395,28 +1395,28 @@ "message": "由於平台限制,無法於所有 Bitwarden 應用程式中使用 FIDO U2F。請開啟另一套兩步驟登入方式,以確保 FIDO U2F 無法使用時還能存取您的帳戶。支援的平台有:" }, "twoFactorU2fSupportWeb": { - "message": "桌面/筆記本電腦上啓用了 U2F 的瀏覽器(Chrome、Opera、Vivaldi 或啓用了 FIDO U2F 的 Firefox)中的網頁版密碼庫和瀏覽器擴充套件。" + "message": "桌上型電腦/筆記型電腦上啟用了 U2F 的瀏覽器(Chrome、Opera、Vivaldi 或啟用了 FIDO U2F 的 Firefox)中的網頁版密碼庫和瀏覽器擴充套件。" }, "twoFactorU2fWaiting": { - "message": "等待您按下安全鑰匙上的按鈕" + "message": "等待您按下安全金鑰上的按鈕" }, "twoFactorU2fClickSave": { - "message": "點擊下方的「儲存」按鈕,以啟用此安全鑰匙用於兩步驟登入。" + "message": "點選下方的「儲存」按鈕,以啟用此安全金鑰用於兩步驟登入。" }, "twoFactorU2fProblemReadingTryAgain": { - "message": "讀取安全鑰匙時發生問題。請重試。" + "message": "讀取安全金鑰時發生問題。請重試。" }, "twoFactorWebAuthnWarning": { - "message": "由於平台限制,無法於所有 Bitwarden 應用程式中使用 WebAuthn。請設定另一套兩步驟登入方式,以確保在 WebAuthn 無法使用時還能存取您的帳戶。支援的平台有:" + "message": "由於平台限制,無法於所有 Bitwarden 應用程式中使用 WebAuthn。請設定另一套兩步驟登入方式,以確保在 WebAuthn 無法使用時還能存取您的帳戶。支援的平台有:" }, "twoFactorWebAuthnSupportWeb": { - "message": "桌面/筆記型電腦上具有 WebAuthn 功能的瀏覽器(Chrome、Opera、Vivaldi 或開啟 FIDO U2F 功能的 Firefox)上的網頁版密碼庫和瀏覽器擴充套件。" + "message": "桌上型電腦/筆記型電腦上具有 WebAuthn 功能的瀏覽器(Chrome、Opera、Vivaldi 或開啟 FIDO U2F 功能的 Firefox)上的網頁版密碼庫和瀏覽器擴充套件。" }, "twoFactorRecoveryYourCode": { - "message": "您的 Bitwarden 兩步驟登入復原代碼" + "message": "您的 Bitwarden 兩步驟登入復原碼" }, "twoFactorRecoveryNoCode": { - "message": "您尚未啟用任何兩步驟登入方式。等你啟用兩步驟登入方式後,您可回來這裡取得復原代碼。" + "message": "您尚未啟用任何兩步驟登入方式。等你啟用兩步驟登入方式後,您可回來這裡取得復原碼。" }, "printCode": { "message": "列印代碼", @@ -1429,13 +1429,13 @@ "message": "回報不安全的網站" }, "unsecuredWebsitesReportDesc": { - "message": "使用帶 http:// 方案的不安全網站有風險。如果網站允許,您應永遠使用 https:// 方案存取此網站,這樣您的連線才是加密過的。" + "message": "使用 http:// 配置的網站有安全風險。若網站允許,您應一律使用 https:// 配置以加密連線方式來存取此網站。" }, "unsecuredWebsitesFound": { "message": "發現不安全的網站" }, "unsecuredWebsitesFoundDesc": { - "message": "我們在您的密碼庫中找到 $COUNT$ 個使用不安全 URI 的項目。如果網站允許,您應變更其網址方案為 https://。", + "message": "我們在您的密碼庫中找到 $COUNT$ 個使用不安全 URI 的項目。若網站允許,您應變更其網址配置為 https://。", "placeholders": { "count": { "content": "$1", @@ -1450,13 +1450,13 @@ "message": "無效 2FA 報告" }, "inactive2faReportDesc": { - "message": "雙要素認證(2FA)是協助保護您帳號安全的一個重要安全性設定。如果網站提供雙要素認證,您應永遠開啓它。" + "message": "雙因素驗證(2FA)是保護您帳號安全的重要安全性設定。若網站提供雙因素驗證,您應一律啟用它。" }, "inactive2faFound": { "message": "發現未啟用 2FA 的登入資料" }, "inactive2faFoundDesc": { - "message": "我們在您的密碼庫中找到 $COUNT$ 個可能未設定雙要素認證的網站(根據 twofactorauth.org)。若要進一步保護這些帳戶,您應開啓雙要素認證。", + "message": "我們在您的密碼庫中找到 $COUNT$ 個可能未設定雙因素驗證的網站(依據 twofactorauth.org)。若要進一步保護這些帳戶,您應啟用雙因素驗證。", "placeholders": { "count": { "content": "$1", @@ -1465,7 +1465,7 @@ } }, "noInactive2fa": { - "message": "沒有在您的密碼庫中找到未設定雙要素認證的網站。" + "message": "沒有在您的密碼庫中找到未設定雙因素驗證的網站。" }, "instructions": { "message": "說明" @@ -1474,13 +1474,13 @@ "message": "公開密碼報告" }, "exposedPasswordsReportDesc": { - "message": "公開密碼是在公開發布或黑客在暗網上出售的已知資料洩露中發現的密碼。" + "message": "公開密碼是在已知資料外洩事件中發現的密碼,這些資料已由駭客公開發佈或在暗網上販售。" }, "exposedPasswordsFound": { "message": "發現公開密碼" }, "exposedPasswordsFoundDesc": { - "message": "我們在您的密碼庫中找到 $COUNT$ 個項目的密碼在已知資料洩漏中被公開。您應將他們變更成新密碼。", + "message": "我們在您的密碼庫中找到 $COUNT$ 個項目的密碼在已知資料外洩事件中被公開。您應將它們變更為新密碼。", "placeholders": { "count": { "content": "$1", @@ -1489,13 +1489,13 @@ } }, "noExposedPasswords": { - "message": "未在您的密碼庫中找到密碼公開在已知資料洩漏中的項目。" + "message": "未在您的密碼庫中找到在已知資料外洩事件中被公開的項目。" }, "checkExposedPasswords": { "message": "檢查公開密碼" }, "exposedXTimes": { - "message": "已公開 $COUNT$ 次", + "message": "被公開 $COUNT$ 次", "placeholders": { "count": { "content": "$1", @@ -1528,13 +1528,13 @@ "message": "重複使用密碼報告" }, "reusedPasswordsReportDesc": { - "message": "如果你使用的服務被洩露,在其他地方重複使用相同的密碼可以讓駭客很容易地訪問你的更多線上帳戶。您應該為每個帳戶或服務使用唯一的密碼。" + "message": "如果您使用的服務有密碼外洩的情況,在其他地方重複使用相同的密碼可以讓駭客很輕易地存取您更多的線上帳戶。您應該為每個帳戶或服務使用不同的密碼。" }, "reusedPasswordsFound": { "message": "發現重複使用的密碼" }, "reusedPasswordsFoundDesc": { - "message": "我們發現您的密碼庫中有 $COUNT$ 組密碼重複使用。您應該將它們變更為唯一的密碼。", + "message": "我們發現您的密碼庫中有 $COUNT$ 組密碼重複使用。您應該將它們變更為不同的密碼。", "placeholders": { "count": { "content": "$1", @@ -1555,13 +1555,13 @@ } }, "dataBreachReport": { - "message": "資料洩露報告" + "message": "資料外洩報告" }, "breachDesc": { - "message": "「洩漏」是指駭客非法存取網站資料然後公開發佈的事件。檢視已遭洩漏的資料類型(電子郵件地址、密碼、信用卡等)並採取適當的措施,例如變更密碼。" + "message": "「外洩」是指駭客非法存取網站資料然後公開發佈的事件。檢視已遭外洩的資料類型(電子郵件地址、密碼、信用卡等)並採取適當的措施,例如變更密碼。" }, "breachCheckUsernameEmail": { - "message": "請檢查您使用的使用者名稱或電子郵件位址。" + "message": "請檢查您使用的使用者名稱或電子郵件地址。" }, "checkBreaches": { "message": "檢查密碼外洩情況" @@ -1593,10 +1593,10 @@ } }, "breachFound": { - "message": "發現被洩漏的帳戶" + "message": "發現已外洩的帳戶" }, "compromisedData": { - "message": "遭洩漏的資料" + "message": "遭外洩的資料" }, "website": { "message": "網站" @@ -1605,10 +1605,10 @@ "message": "受影響的使用者" }, "breachOccurred": { - "message": "外洩發生于" + "message": "外洩發生於" }, "breachReported": { - "message": "外洩回報于" + "message": "外洩回報於" }, "reportError": { "message": "嘗試載入報告時發生錯誤。請重試。" @@ -1617,7 +1617,7 @@ "message": "計費" }, "accountCredit": { - "message": "帳戶信用額度", + "message": "帳戶餘額", "description": "Financial term. In the case of Bitwarden, a positive balance means that you owe money, while a negative balance means that you have a credit (Bitwarden owes you money)." }, "accountBalance": { @@ -1625,7 +1625,7 @@ "description": "Financial term. In the case of Bitwarden, a positive balance means that you owe money, while a negative balance means that you have a credit (Bitwarden owes you money)." }, "addCredit": { - "message": "增加信用額度", + "message": "儲值餘額", "description": "Add more credit to your account's balance." }, "amount": { @@ -1633,13 +1633,13 @@ "description": "Dollar amount, or quantity." }, "creditDelayed": { - "message": "已增加的信用額度在交易處理完成後將會出現在你的帳戶中。部分付款方式較為緩慢,會比其他方式花費更多時間處理。" + "message": "已儲值的餘額在交易處理完成後將會出現在你的帳戶中。部分付款方式較為緩慢,會比其他方式花費更多時間處理。" }, "makeSureEnoughCredit": { - "message": "請確保你的帳戶有足夠的信用額度繳付此次購買,如果你的帳戶額度不足,則會以你預設的付款方式補足差額。你可以透過計費頁面向您的帳戶添加信用額度。" + "message": "請確保您的帳戶有足夠的餘額用於此次購買,若您的帳戶餘額不足,則會以您預設的付款方式補足差額。您可以透過計費頁面對您的帳戶儲值餘額。" }, "creditAppliedDesc": { - "message": "您帳戶的信用額度可用於消費。任何可用的信用額度將用于自動繳付此帳戶的帳單。" + "message": "您帳戶的餘額可用於消費。任何可用的餘額將用於自動繳納此帳戶的帳單。" }, "goPremium": { "message": "升級至進階版", @@ -1649,7 +1649,7 @@ "message": "您已升級至進階版" }, "premiumUpgradeUnlockFeatures": { - "message": "將您的帳戶升級至進階版,並解鎖一些出色的附加功能。" + "message": "將您的帳戶升級至進階版,並解鎖一些很棒的附加功能。" }, "premiumSignUpStorage": { "message": "用於檔案附件的 1 GB 的加密檔案儲存空間。" @@ -1664,7 +1664,7 @@ "message": "密碼健康、帳戶體檢以及資料外洩報告,保障您的密碼庫安全。" }, "premiumSignUpTotp": { - "message": "用於登入您的密碼庫的 TOTP 認證碼(2FA)產生器。" + "message": "用於登入您的密碼庫的 TOTP 驗證碼(2FA)產生器。" }, "premiumSignUpSupport": { "message": "優先客戶支援。" @@ -1701,10 +1701,10 @@ } }, "additionalStorageGb": { - "message": "附加儲存空間 (GB)" + "message": "額外的儲存空間 (GB)" }, "additionalStorageGbDesc": { - "message": "# GB 附加儲存空間" + "message": "# GB 額外儲存空間" }, "additionalStorageIntervalDesc": { "message": "您的方案擁有 $SIZE$ 的加密儲存空間。您也可以用每 GB $PRICE$ / $INTERVAL$ 購買額外的儲存空間。", @@ -1740,10 +1740,10 @@ "description": "Short abbreviation for 'month'" }, "paymentChargedAnnually": { - "message": "將立即從您的付款方式中扣款,並且將每年定期扣款。您可隨時取消。" + "message": "將立即使用您選擇的付款方式來扣款,並且每年都會定期扣款。您可以隨時取消。" }, "paymentCharged": { - "message": "將立即從您的付款方式中扣款,並且將每 $INTERVAL$ 定期扣款。您可隨時取消。", + "message": "將立即使用您選擇的付款方式來扣款,並且將每 $INTERVAL$ 定期扣款。您可以隨時取消。", "placeholders": { "interval": { "content": "$1", @@ -1752,7 +1752,7 @@ } }, "paymentChargedWithTrial": { - "message": "您的方案包含了 7 天的免費試用。在試用期結束之前,不會從您的付款方式中扣款。你可隨時取消。" + "message": "您的方案包含了 7 天的免費試用。在試用期結束之前,不會從您的付款方式中扣款。您可以隨時取消。" }, "paymentInformation": { "message": "付款資訊" @@ -1764,19 +1764,19 @@ "message": "信用卡" }, "paypalClickSubmit": { - "message": "點擊 PayPal 按鈕登入您的 PayPal 帳戶,然後點擊下面的提交按鈕以繼續。" + "message": "點選 PayPal 按鈕登入您的 PayPal 帳戶,然後點選下方的送出按鈕以繼續。" }, "cancelSubscription": { "message": "取消訂閱" }, "subscriptionCanceled": { - "message": "訂閱已被取消" + "message": "已取消訂閱" }, "pendingCancellation": { "message": "待取消" }, "subscriptionPendingCanceled": { - "message": "此訂閱在當期計費周期结束前已標記為取消。" + "message": "此訂閱在目前計費周期结束前已標記為取消。" }, "reinstateSubscription": { "message": "重新開始訂閱" @@ -1788,10 +1788,10 @@ "message": "已重新開始訂閱。" }, "cancelConfirmation": { - "message": "您確定要取消訂閱嗎?當本期計費周期結束後,您將無法使用此訂閲的所有功能。" + "message": "您確定要取消訂閱嗎?在目前計費周期結束之後,您將無法使用所有訂閲功能。" }, "canceledSubscription": { - "message": "此訂閱已重新開始。" + "message": "已取消訂閱。" }, "neverExpires": { "message": "永不逾期" @@ -1800,7 +1800,7 @@ "message": "狀態" }, "nextCharge": { - "message": "下一次收費" + "message": "下一次扣款" }, "details": { "message": "詳細資料" @@ -1809,10 +1809,10 @@ "message": "下載授權證" }, "updateLicense": { - "message": "更新授權證" + "message": "更新授權" }, "updatedLicense": { - "message": "授權證已更新" + "message": "已更新授權" }, "manageSubscription": { "message": "管理訂閱" @@ -1858,11 +1858,11 @@ "message": "無帳單。" }, "paid": { - "message": "已繳付", + "message": "已付款", "description": "Past tense status of an invoice. ex. Paid or unpaid." }, "unpaid": { - "message": "待繳付", + "message": "待付款", "description": "Past tense status of an invoice. ex. Paid or unpaid." }, "transactions": { @@ -1881,7 +1881,7 @@ "description": "Noun. A refunded payment that was charged." }, "chargesStatement": { - "message": "任何費用會在您的帳單上以 $STATEMENT_NAME$ 呈現。", + "message": "任何費用都會在您的帳單上以 $STATEMENT_NAME$ 顯示。", "placeholders": { "statement_name": { "content": "$1", @@ -1896,10 +1896,10 @@ "message": "GB 儲存空間將移除" }, "storageAddNote": { - "message": "添加存儲空間將會調整計費總額,並立即透過您的付款方式進行扣款。第一期費用將按照當前計費週期的剩餘數依比例分配。" + "message": "增加存儲空間將會調整計費總額,並立即透過您選擇的付款方式進行扣款。第一期費用將依照目前計費週期的剩餘時間依比例分配。" }, "storageRemoveNote": { - "message": "移除存儲空間將會調整計費總額,這筆費用將按照比例返回下一筆賬單費用中。" + "message": "移除儲存空間將會調整計費總額,這筆費用將依照比例返還並用於下一筆帳單費用中。" }, "adjustedStorage": { "message": "已調整 $AMOUNT$ GB 的儲存空間。", @@ -1935,10 +1935,10 @@ "message": "要升級您的帳戶為進階版會員,您需要上傳有效的授權檔案。" }, "uploadLicenseFileOrg": { - "message": "要建立基於內部託管的組織,您需要上傳有效的授權檔案。" + "message": "要建立基於內部部署的組織,您需要上傳有效的授權檔案。" }, "accountEmailMustBeVerified": { - "message": "必須驗證您帳戶的電子郵件位址。" + "message": "必須驗證您帳戶的電子郵件地址。" }, "newOrganizationDesc": { "message": "組織允許您與他人共用密碼庫的部分內容,以及管理特定實體(如家庭、小型團隊或大型公司)的相關使用者。" @@ -1950,13 +1950,13 @@ "message": "組織名稱" }, "accountOwnedBusiness": { - "message": "此帳戶為公司所有。" + "message": "此帳戶為企業所有。" }, "billingEmail": { "message": "帳單電子郵件" }, "businessName": { - "message": "公司名稱" + "message": "企業名稱" }, "chooseYourPlan": { "message": "選擇您的方案" @@ -1968,13 +1968,13 @@ "message": "使用者席位" }, "additionalUserSeats": { - "message": "附加使用者席位" + "message": "額外使用者席位" }, "userSeatsDesc": { "message": "# 使用者席位" }, "userSeatsAdditionalDesc": { - "message": "您的方案包含 $BASE_SEATS$ 個使用者席位。您可以以 $SEAT_PRICE$ 每用戶每月添加附加使用者。", + "message": "您的方案包含 $BASE_SEATS$ 個使用者席位。您可以以每使用者每月 $SEAT_PRICE$ 的價格增加額外使用者。", "placeholders": { "base_seats": { "content": "$1", @@ -1987,14 +1987,14 @@ } }, "userSeatsHowManyDesc": { - "message": "您需要多少個使用者席位?您也可以在需要的時候添加附加席位。" + "message": "您需要多少個使用者席位?您也可以在需要的時候增加額外席位。" }, "planNameFree": { "message": "免費", "description": "Free as in 'free beer'." }, "planDescFree": { - "message": "適用於測試或個人使用者與 $COUNT$ 位其他使用者共享。", + "message": "適用於測試或個人使用者與 $COUNT$ 位其他使用者共用。", "placeholders": { "count": { "content": "$1", @@ -2006,7 +2006,7 @@ "message": "家庭" }, "planDescFamilies": { - "message": "適用於個人使用,與家人及朋友共享。" + "message": "適用於個人使用,與家人及朋友共用。" }, "planNameTeams": { "message": "團隊" @@ -2021,7 +2021,7 @@ "message": "適用於企業和其他大型組織。" }, "freeForever": { - "message": "永遠免費" + "message": "永久免費" }, "includesXUsers": { "message": "包含 $COUNT$ 位使用者", @@ -2033,7 +2033,7 @@ } }, "additionalUsers": { - "message": "附加使用者" + "message": "額外使用者" }, "costPerUser": { "message": "每位使用者 $COST$", @@ -2063,7 +2063,7 @@ } }, "addShareLimitedUsers": { - "message": "新增並與最多 $COUNT$ 位使用者共享", + "message": "新增並與最多 $COUNT$ 位使用者共用", "placeholders": { "count": { "content": "$1", @@ -2072,10 +2072,10 @@ } }, "addShareUnlimitedUsers": { - "message": "新增並與無限位使用者共享" + "message": "新增並與無限位使用者共用" }, "createUnlimitedCollections": { - "message": "創建無限個集合" + "message": "建立無限個集合" }, "gbEncryptedFileStorage": { "message": "$SIZE$ 加密檔案儲存空間。", @@ -2087,7 +2087,7 @@ } }, "onPremHostingOptional": { - "message": "内部托管(可選)" + "message": "內部部署(選用)" }, "usersGetPremium": { "message": "使用者取得了進階功能的存取權限" @@ -2126,13 +2126,13 @@ "message": "基本價格" }, "organizationCreated": { - "message": "組織已建立" + "message": "已建立組織" }, "organizationReadyToGo": { "message": "您的新組織已準備好!" }, "organizationUpgraded": { - "message": "您的組織已被升級。" + "message": "您的組織已升級。" }, "leave": { "message": "離開" @@ -2165,7 +2165,7 @@ "message": "原則" }, "singleSignOn": { - "message": "單一登入" + "message": "單一登入(SSO)" }, "editPolicy": { "message": "編輯原則" @@ -2174,10 +2174,10 @@ "message": "群組" }, "newGroup": { - "message": "新增群組" + "message": "新群組" }, "addGroup": { - "message": "添加群組" + "message": "新增群組" }, "editGroup": { "message": "編輯群組" @@ -2189,31 +2189,31 @@ "message": "您確定要移除該使用者?" }, "removeUserConfirmationKeyConnector": { - "message": "警告!這位使用者需要 Key Connector 管理他們的加密方式。從您的組織中移除這位使用者,會永久停用他們的帳戶。此操作無法撤銷,是否繼續?" + "message": "警告!這位使用者需要 Key Connector 管理他們的加密方式。從您的組織中移除這位使用者,會永久停用他們的帳戶。此操作無法復原,是否繼續?" }, "externalId": { "message": "外部 ID" }, "externalIdDesc": { - "message": "外部 ID 可用於參考,或將此資源與使用者目錄等外部系統連接起來。" + "message": "外部 ID 可用於參考,或將此資源與使用者目錄等外部系統連結起來。" }, "accessControl": { "message": "存取控制" }, "groupAccessAllItems": { - "message": "此群組可存取及修改所有項目。" + "message": "此群組可存取及變更所有項目。" }, "groupAccessSelectedCollections": { "message": "此群組只能存取選擇的集合。" }, "readOnly": { - "message": "只讀" + "message": "唯讀" }, "newCollection": { - "message": "新增集合" + "message": "新集合" }, "addCollection": { - "message": "添加集合" + "message": "新增集合" }, "editCollection": { "message": "編輯集合" @@ -2231,7 +2231,7 @@ "message": "在下方輸入 Bitwarden 帳戶的電子郵件位址,以邀請新使用者加入您的組織。若他們沒有 Bitwarden 帳戶,系統將提示他們建立新帳戶。" }, "inviteMultipleEmailDesc": { - "message": "透過使用逗號分隔的電子郵件位址,您可以一次性邀請 $COUNT$ 位使用者。", + "message": "透過使用逗號分隔的電子郵件地址,您可以一次邀請 $COUNT$ 位使用者。", "placeholders": { "count": { "content": "$1", @@ -2243,7 +2243,7 @@ "message": "此使用者正在使用兩步驟登入保護帳戶。" }, "userAccessAllItems": { - "message": "此使用者可存取及修改所有項目。" + "message": "此使用者可存取及變更所有項目。" }, "userAccessSelectedCollections": { "message": "此使用者只能存取選擇的集合。" @@ -2261,16 +2261,16 @@ "message": "已確認" }, "clientOwnerEmail": { - "message": "客戶所有者電子郵件" + "message": "用戶端擁有者電子郵件" }, "owner": { "message": "擁有者" }, "ownerDesc": { - "message": "可以管理組織的所有方面的具有最高權限的使用者。" + "message": "可以管理組織所有方面且具有最高權限的使用者。" }, "clientOwnerDesc": { - "message": "此使用者應獨立於提供商。如果提供商與該組織解除關聯,此用戶將繼續保留組織的所有權。" + "message": "此使用者應獨立於提供者。若提供者與該組織解除關聯,此使用者將繼續保留組織的擁有權。" }, "admin": { "message": "管理員" @@ -2282,19 +2282,19 @@ "message": "使用者" }, "userDesc": { - "message": "具有組織内已指派的集合的存取權限的普通使用者。" + "message": "具有組織内已指派集合的存取權限的一般使用者。" }, "manager": { - "message": "經理" + "message": "管理員" }, "managerDesc": { - "message": "經理可以存取和管理組織内已指派的集合。" + "message": "管理員可以存取和管理組織内已指派的集合。" }, "all": { "message": "全部" }, "refresh": { - "message": "刷新" + "message": "重新整理" }, "timestamp": { "message": "時間戳記" @@ -2309,7 +2309,7 @@ "message": "載入更多" }, "mobile": { - "message": "手機版應用程式", + "message": "行動裝置", "description": "Mobile app" }, "extension": { @@ -2342,13 +2342,13 @@ "message": "登入失敗,密碼錯誤。" }, "failedLogin2fa": { - "message": "兩步驟登入不正確,登入失敗。" + "message": "嘗試登入失敗,兩步驟登入錯誤。" }, "exportedVault": { - "message": "已匯出密碼庫" + "message": "已匯出密碼庫。" }, "exportedOrganizationVault": { - "message": "已匯出組織密碼庫" + "message": "已匯出組織密碼庫。" }, "editedOrgSettings": { "message": "已編輯組織設定。" @@ -2372,7 +2372,7 @@ } }, "deletedItemId": { - "message": "傳送項目 $ID$ 到垃圾桶。", + "message": "項目 $ID$ 已移至垃圾桶。", "placeholders": { "id": { "content": "$1", @@ -2444,7 +2444,7 @@ } }, "copiedSecurityCodeItemId": { - "message": "複製了項目$ID$的安全碼", + "message": "複製了項目 $ID$ 的安全代碼", "placeholders": { "id": { "content": "$1", @@ -2462,7 +2462,7 @@ } }, "createdCollectionId": { - "message": "已建立收藏 $ID$。", + "message": "已建立集合 $ID$。", "placeholders": { "id": { "content": "$1", @@ -2597,7 +2597,7 @@ } }, "unlinkedSsoUser": { - "message": "已爲使用者 $ID$ 取消連接 SSO。", + "message": "已為使用者 $ID$ 取消連結 SSO。", "placeholders": { "id": { "content": "$1", @@ -2615,7 +2615,7 @@ } }, "addedOrganizationId": { - "message": "已添加組織 $ID$。", + "message": "已新增組織 $ID$。", "placeholders": { "id": { "content": "$1", @@ -2624,7 +2624,7 @@ } }, "removedOrganizationId": { - "message": "已移除組 $ID$。", + "message": "已移除組織 $ID$。", "placeholders": { "id": { "content": "$1", @@ -2672,10 +2672,10 @@ "message": "重新傳送邀請" }, "resendEmail": { - "message": "重寄電子郵件" + "message": "重新傳送電子郵件" }, "hasBeenReinvited": { - "message": "$USER$ 已被重新邀請。", + "message": "已重新邀請 $USER$。", "placeholders": { "user": { "content": "$1", @@ -2690,7 +2690,7 @@ "message": "確認使用者" }, "hasBeenConfirmed": { - "message": "$USER$ 已被確認。", + "message": "$USER$ 已經確認。", "placeholders": { "user": { "content": "$1", @@ -2702,7 +2702,7 @@ "message": "確認使用者" }, "usersNeedConfirmed": { - "message": "您的使用者已接受邀請,但仍需要被確認。使用者只有在被確認後才能擁有對組織的存取權限。" + "message": "有使用者已接受邀請,但仍然需要確認。在確認之前,使用者將無法存取組織。" }, "startDate": { "message": "開始日期" @@ -2714,13 +2714,13 @@ "message": "驗證電子郵件" }, "verifyEmailDesc": { - "message": "驗證您帳戶的電子郵件位址以使用所有功能。" + "message": "驗證您帳戶的電子郵件地址以使用所有功能。" }, "verifyEmailFirst": { - "message": "首先必須驗證您帳戶的電子郵件位址。" + "message": "必須驗證您帳戶的電子郵件位址。" }, "checkInboxForVerification": { - "message": "請檢查電子郵件收件匣以取得驗證連結。" + "message": "請檢查您的電子郵件收件匣以取得驗證連結。" }, "emailVerified": { "message": "您的電子郵件已驗證。" @@ -2738,7 +2738,7 @@ "message": "更新瀏覽器" }, "updateBrowserDesc": { - "message": "您正在使用未被支援的瀏覽器。網頁密碼庫可能會無法順利運作。" + "message": "未支援您使用的瀏覽器。網頁版密碼庫可能無法正常運作。" }, "joinOrganization": { "message": "加入組織" @@ -2747,13 +2747,13 @@ "message": "您已被邀請加入以上組織。若想接受邀請,您需要登入或建立新的 Bitwarden 帳戶。" }, "inviteAccepted": { - "message": "邀請已接受" + "message": "已接受邀請" }, "inviteAcceptedDesc": { - "message": "管理員確認您的成員身份後,您便可以存取該組織。發生這種情況時,我們會給您傳送一封電子郵件。" + "message": "管理員確認您的成員身分後,您便可以存取此組織。到時我們會向您傳送電子郵件通知。" }, "inviteAcceptFailed": { - "message": "無法接受邀請。請向管理員請求傳送一個新的邀請。" + "message": "無法接受邀請。請要求組織管理員傳送新的邀請。" }, "inviteAcceptFailedShort": { "message": "無法接受邀請。$DESCRIPTION$", @@ -2765,10 +2765,10 @@ } }, "rememberEmail": { - "message": "記住電子郵件位址" + "message": "記住電子郵件地址" }, "recoverAccountTwoStepDesc": { - "message": "如果您無法透過常規的兩步驟登入方式存取您的帳戶,您可以使用兩步驟登入復原代碼來停用帳戶上的所有兩步驟登入方式。" + "message": "若您無法透過一般的兩步驟登入方式存取您的帳戶,您可以使用兩步驟登入復原碼以停用帳戶上的所有兩步驟登入方式。" }, "recoverAccountTwoStep": { "message": "復原帳戶的兩步驟登入" @@ -2777,16 +2777,16 @@ "message": "兩步驟登入已在您的帳戶中停用。" }, "learnMore": { - "message": "了解更多" + "message": "深入了解" }, "deleteRecoverDesc": { - "message": "請在下方輸入您的電子郵件位址以復原及刪除您的帳戶。" + "message": "請在下方輸入您的電子郵件地址以復原及刪除您的帳戶。" }, "deleteRecoverEmailSent": { - "message": "如果您的帳號存在,我們已傳送一封包含進一步指示的電子郵件。" + "message": "如果您的帳戶存在,我們將傳送一封包含詳細指示的電子郵件。" }, "deleteRecoverConfirmDesc": { - "message": "您已請求刪除您的 Bitwarden 帳戶。點擊下方的按鈕確認。" + "message": "您已要求刪除您的 Bitwarden 帳戶。點選下方的按鈕以確認。" }, "myOrganization": { "message": "我的組織" @@ -2804,10 +2804,10 @@ } }, "deletingOrganizationActiveUserAccountsWarning": { - "message": "刪除後,使用者帳號仍會維持可用狀態,但將斷開與本組織的關聯。" + "message": "刪除後,使用者帳戶仍然可用,但將不再與此組織關聯。" }, "deletingOrganizationIsPermanentWarning": { - "message": "刪除 $ORGANIZATION$ 是永久且不可逆的。", + "message": "刪除 $ORGANIZATION$ 是永久性動作,無法回復。", "placeholders": { "organization": { "content": "$1", @@ -2816,19 +2816,19 @@ } }, "organizationDeleted": { - "message": "組織已刪除" + "message": "已刪除組織" }, "organizationDeletedDesc": { "message": "該組織和所有關聯資料已刪除。" }, "organizationUpdated": { - "message": "組織已更新" + "message": "已更新組織" }, "taxInformation": { "message": "稅務資訊" }, "taxInformationDesc": { - "message": "對於美國境內的客戶,需要使用郵遞區號來滿足銷售稅要求,對於其他國家,您可以選擇提供稅務識別號(VAT/GST)和/或地址以顯示在您的帳單上。" + "message": "對於美國境內的客戶,需要提供郵遞區號來滿足銷售稅要求,對於其他國家,您可以選擇提供稅務識別碼(VAT/GST)和/或地址以顯示在您的帳單上。" }, "billingPlan": { "message": "方案", @@ -2839,7 +2839,7 @@ "description": "A billing plan/package. For example: families, teams, enterprise, etc." }, "changeBillingPlanUpgrade": { - "message": "爲了將您的帳戶升級到另一個方案,請提供以下資訊。同時請確保您的帳戶已經有一個有效的付款方式。", + "message": "為了將您的帳戶升級至另一個方案,請提供以下資訊。同時請確保您的帳戶已經有一個有效的付款方式。", "description": "A billing plan/package. For example: families, teams, enterprise, etc." }, "invoiceNumber": { @@ -2862,13 +2862,13 @@ "message": "驗證銀行帳戶" }, "verifyBankAccountDesc": { - "message": "我們已經向您的銀行帳戶存入了兩個小額存款(可能需要 1-2 個工作日才能顯示)。輸入這些金額以驗證銀行帳戶。" + "message": "我們已匯入了兩筆小額款項至您的銀行帳戶(需要 1-2 個工作天後才能到帳)。請在此輸入這兩筆款項的金額以驗證銀行帳戶。" }, "verifyBankAccountInitialDesc": { - "message": "只有在美國的客戶才能使用銀行帳戶付款。你必須核實你的銀行帳戶。我們將在未來 1-2 個 工作日內存入兩筆小額存款。在組織的計費頁上輸入這些金額以驗證銀行帳戶。" + "message": "只有在美國的客戶才能使用銀行帳戶付款。您必須驗證您的銀行帳戶。我們將在未來 1-2 個工作天內匯入兩筆小額款項。在組織的計費頁面上輸入款項金額以驗證銀行帳戶。" }, "verifyBankAccountFailureWarning": { - "message": "驗證銀行帳戶失敗將會導致錯過付款,并且您的訂閱將會被取消。" + "message": "驗證銀行帳戶失敗將會導致付款失效,並且您的訂閱將會被取消。" }, "verifiedBankAccount": { "message": "已驗證您的銀行帳戶。" @@ -2887,7 +2887,7 @@ } }, "routingNumber": { - "message": "匯款路徑號碼", + "message": "匯款路徑編號", "description": "Bank account routing number" }, "accountNumber": { @@ -2909,14 +2909,14 @@ "message": "輸入您的安裝 ID" }, "limitSubscriptionDesc": { - "message": "爲您的訂閲設定一個席位限制。達到此限制后,您將無法邀請新的使用者。" + "message": "為您的訂閲設定席位限制。達到此限制後,您將無法邀請新的使用者。" }, "maxSeatLimit": { "message": "最大席位限制(選用)", "description": "Upper limit of seats to allow through autoscaling" }, "maxSeatCost": { - "message": "最大潛在的席位費用" + "message": "最大潛在席位費用" }, "addSeats": { "message": "新增席位", @@ -2927,7 +2927,7 @@ "description": "Seat = User Seat" }, "subscriptionDesc": { - "message": "對您的訂閱進行調整將導致按比例變更您的帳單總額。如果新邀請的使用者超過您的訂閱席位,您將立即收到按比例收取的額外使用者費用。" + "message": "調整訂閱將會依比例變更您的帳單總額。若新邀請的使用者超過您的訂閱席位,您將立即收到依比例收取的額外使用者費用。" }, "subscriptionUserSeats": { "message": "您的訂閱當中包含 $COUNT$ 位使用者的授權。", @@ -2945,19 +2945,19 @@ "message": "訂閲席位" }, "subscriptionUpdated": { - "message": "訂閲已更新" + "message": "已更新訂閲" }, "additionalOptions": { - "message": "進階選項" + "message": "其他選項" }, "additionalOptionsDesc": { - "message": "有關管理您的訂閲的更多幫助,請聯係客戶支援。" + "message": "如需更多管理訂閱協助,請聯絡客戶支援。" }, "subscriptionUserSeatsUnlimitedAutoscale": { - "message": "對您的訂閱進行調整將導致按比例更改您的帳單總額。如果新邀請的使用者超過您的訂閱席位,您將立即收到按比例收取的額外使用者費用。" + "message": "調整訂閱將會依比例變更您的帳單總額。若新邀請的使用者超過您的訂閱席位,您將立即收到依比例收取的額外使用者費用。" }, "subscriptionUserSeatsLimitedAutoscale": { - "message": "對您的訂閱進行調整將導致按比例變更您的帳單總額。如果新邀請的使用者超過您的訂閱席位,您將立即收到按比例收取的額外使用者費用,直到達到 $MAX$ 席位限制。", + "message": "調整訂閱將會依比例變更您的帳單總額。若新邀請的使用者超過您的訂閱席位,您將立即收到依比例收取的額外使用者費用,直到您達到 $MAX$ 席位限制。", "placeholders": { "max": { "content": "$1", @@ -2975,7 +2975,7 @@ } }, "subscriptionFamiliesPlan": { - "message": "除非升級方案,否則您最多只能邀請 $COUNT$ 位使用者。請聯絡客服支援進行升級。", + "message": "除非升級方案,否則您最多只能邀請 $COUNT$ 位使用者。請聯絡客戶支援進行升級。", "placeholders": { "count": { "content": "$1", @@ -2993,7 +2993,7 @@ } }, "subscriptionMaxReached": { - "message": "對您的訂閱進行調整將導致按比例變更您的帳單總額。在不增加訂閱席位的情況下,您不能邀請超過 $COUNT$ 個使用者。", + "message": "調整訂閱將會依比例變更您的帳單總額。在不增加訂閱席位的情況下,您不能邀請超過 $COUNT$ 位使用者。", "placeholders": { "count": { "content": "$1", @@ -3008,10 +3008,10 @@ "message": "要移除的席位數" }, "seatsAddNote": { - "message": "添加使用者席位將會調整帳單總額,並立即透過您的付款方式進行扣款。第一期費用將按照當前計費週期的剩餘數依比例分配。" + "message": "增加使用者席位將會調整帳單總額,並立即透過您選擇的付款方式進行扣款。第一期費用將依照目前計費週期的剩餘時間依比例分配。" }, "seatsRemoveNote": { - "message": "移除使用者席位將會調整計費總額,這筆費用將按照比例返回下一筆賬單費用中。" + "message": "移除使用者席位將會調整計費總額,這筆費用將依照比例返還並用於下一筆帳單費用中。" }, "adjustedSeats": { "message": "調整了 $AMOUNT$ 個使用者席位。", @@ -3023,7 +3023,7 @@ } }, "keyUpdated": { - "message": "金鑰已更新" + "message": "已更新金鑰" }, "updateKeyTitle": { "message": "更新金鑰" @@ -3032,16 +3032,16 @@ "message": "更新加密金鑰" }, "updateEncryptionKeyShortDesc": { - "message": "您目前使用的是過時的加密方案。" + "message": "您目前使用的是過時的加密方式。" }, "updateEncryptionKeyDesc": { - "message": "我們已經採用更強大的加密金鑰,此金鑰提供了更強的安全性及更新的功能。更新您的加密金鑰非常簡單快速,僅需要輸入您的主密碼即可。此次更新最終將強制執行。" + "message": "我們已經採用更強大的加密金鑰,此金鑰提供了更強的安全性及更新功能。更新您的加密金鑰非常簡單快速,僅需輸入您的主密碼即可。此次更新最終將強制執行。" }, "updateEncryptionKeyWarning": { - "message": "更新加密金鑰後,您需要登出並重新登入到當前使用的所有 Bitwarden 應用程式(如移動應用程式或瀏覽器擴充套件)。登出和重新登入(這會下載新的加密金鑰)失敗可能會導致數據損壞。我們將嘗試自動登出,但可能會有延遲。" + "message": "更新加密金鑰後,您需要登出並重新登入目前使用的所有 Bitwarden 應用程式(如行動應用程式或瀏覽器擴充套件)。登出和重新登入(這會下載新的加密金鑰)失敗可能會導致資料損毀。我們將嘗試自動登出,但可能會有所延遲。" }, "updateEncryptionKeyExportWarning": { - "message": "您儲存的任何加密匯出也將變為無效。" + "message": "您儲存的任何已加密匯出的檔案也將變成無效。" }, "subscription": { "message": "訂閱" @@ -3056,7 +3056,7 @@ "message": "升級組織" }, "upgradeOrganizationDesc": { - "message": "免費組織不提供此功能。切換到付費方案以解鎖更多功能。" + "message": "免費組織不提供此功能。切換至付費方案以解鎖更多功能。" }, "createOrganizationStep1": { "message": "建立組織:步驟 1" @@ -3068,10 +3068,10 @@ "message": "已退款" }, "nothingSelected": { - "message": "您沒有選取任何内容。" + "message": "您未選取任何内容。" }, "acceptPolicies": { - "message": "勾選此選取框,代表您同意下列項目:" + "message": "一旦核取此方塊,即表示您同意下列條款:" }, "acceptPoliciesError": { "message": "尚未接受服務條款與隱私權政策。" @@ -3110,7 +3110,7 @@ "message": "4 小時" }, "onRefresh": { - "message": "瀏覽器刷新時" + "message": "瀏覽器重新重新整理時" }, "dateUpdated": { "message": "已更新", @@ -3121,13 +3121,13 @@ "description": "ex. Date this password was updated" }, "organizationIsDisabled": { - "message": "組織已停用。" + "message": "已停用組織。" }, "licenseIsExpired": { "message": "授權已逾期。" }, "updatedUsers": { - "message": "使用者已更新" + "message": "已更新使用者" }, "selected": { "message": "已選擇" @@ -3167,27 +3167,27 @@ "message": "輪換加密金鑰" }, "rotateEncKeyConfirmation": { - "message": "確定輪換帳戶的加密金鑰嗎?" + "message": "確定要輪換帳戶的加密金鑰嗎?" }, "attachmentsNeedFix": { "message": "此項目包含需要修正的舊檔案附件。" }, "attachmentFixDesc": { - "message": "這是一個需要修正的舊檔案附件。點擊此處了解更多資訊。" + "message": "這是一個需要修正的舊檔案附件。點選此處以深入了解。" }, "fix": { "message": "修正", "description": "This is a verb. ex. 'Fix The Car'" }, "oldAttachmentsNeedFixDesc": { - "message": "密碼庫中有舊的檔案附件,需要先修正才可以輪換帳戶的加密金鑰。" + "message": "需要先修正密碼庫中舊的檔案附件,然後才能輪換帳戶的加密金鑰。" }, "yourAccountsFingerprint": { "message": "您帳戶的指紋短語", "description": "A 'fingerprint phrase' is a unique word phrase (similar to a passphrase) that a user can use to authenticate their public key with another user, for the purposes of sharing." }, "fingerprintEnsureIntegrityVerify": { - "message": "為了確保您的加密金鑰的完整度,繼續之前請先驗證使用者指紋短語。", + "message": "為確保加密金鑰的完整性,繼續之前請先驗證使用者指紋短語。", "description": "A 'fingerprint phrase' is a unique word phrase (similar to a passphrase) that a user can use to authenticate their public key with another user, for the purposes of sharing." }, "dontAskFingerprintAgain": { @@ -3202,19 +3202,19 @@ "message": "API 金鑰" }, "apiKeyDesc": { - "message": "您的 API 金鑰可于認證 Bitwarden 公用 API。" + "message": "您的 API 金鑰可用於驗證 Bitwarden 公用 API。" }, "apiKeyRotateDesc": { - "message": "輪換 API 金鑰將使前一份金鑰失效。若您認為當前的金鑰不再安全,您可以輪換您的 API 金鑰。" + "message": "輪換 API 金鑰將使前一份金鑰失效。若您認為目前的金鑰不再安全,您可以輪換您的 API 金鑰。" }, "apiKeyWarning": { - "message": "你的 API 金鑰擁有對組織的完整的存取權限,應要保密。" + "message": "您的 API 金鑰擁有對組織的完整存取權限,請儲存在安全的地方。" }, "userApiKeyDesc": { - "message": "您的 API 金鑰可用於在 Bitwarden CLI 當中進行認證。" + "message": "您的 API 金鑰可用於在 Bitwarden CLI 中進行身分驗證。" }, "userApiKeyWarning": { - "message": "您的 API 金鑰是另一種身分認證機制,請嚴格保密。" + "message": "您的 API 金鑰是另一套替代的身分驗證機制,請儲存在安全的地方。" }, "oauth2ClientCredentials": { "message": "OAuth 2.0 用戶端憑證", @@ -3230,16 +3230,16 @@ "message": "您必須至少選擇一個集合。" }, "couldNotChargeCardPayInvoice": { - "message": "我們無法從您的支付卡扣款。請檢視並繳付以下尚未付清之款項。" + "message": "我們無法從您的支付卡扣款。請檢視並支付以下尚未付清的款項。" }, "inAppPurchase": { "message": "應用程式內購買" }, "cannotPerformInAppPurchase": { - "message": "當你使用程式內購買付款方式時,不能執行這個動作。" + "message": "使用程式內購買這種付款方式時,無法執行這個動作。" }, "manageSubscriptionFromStore": { - "message": "你必須從應用程式內購買的商店中才能管理你的訂閱。" + "message": "您必須在進行應用程式內購買的商店中管理訂閱。" }, "minLength": { "message": "最小長度" @@ -3248,22 +3248,22 @@ "message": "複製" }, "masterPassPolicyDesc": { - "message": "設定對主控密碼強度的最低要求。" + "message": "設定對主密碼強度的最低要求。" }, "twoStepLoginPolicyDesc": { "message": "要求使用者對個人帳戶設定兩步驟登入。" }, "twoStepLoginPolicyWarning": { - "message": "非擁有者或管理員,並且其個人帳戶未啟用兩步驟登入的組織成員將從組織中移除,並將收到一封通知他們有關變更資訊的電子郵件。" + "message": "非擁有者或管理員,並且其個人帳戶未啟用兩步驟登入的組織成員將從組織中移除,他們將收到一封關於此變更的電子郵件通知。" }, "twoStepLoginPolicyUserWarning": { - "message": "您是組織成員,而組織要求您的使用者帳戶啟用兩步驟登入。如果停用所有兩步驟登入方式,您就會被自動移除這些組織。" + "message": "您是組織成員,而組織要求您的使用者帳戶啟用兩步驟登入。如果停用所有兩步驟登入方式,您將被自動從這些組織移除。" }, "passwordGeneratorPolicyDesc": { - "message": "設定對密碼產生器配置的最低要求。" + "message": "設定密碼產生器組態的最低要求。" }, "passwordGeneratorPolicyInEffect": { - "message": "一個或多個組原則正影響密碼產生器設定。" + "message": "一個或多個組織原則正影響密碼產生器設定。" }, "masterPasswordPolicyInEffect": { "message": "一個或多個組織原則要求您的主密碼須符合下列條件:" @@ -3305,10 +3305,10 @@ } }, "masterPasswordPolicyRequirementsNotMet": { - "message": "您的新主密碼不符合原則要求。" + "message": "新的主密碼不符合原則要求。" }, "minimumNumberOfWords": { - "message": "最短字數" + "message": "字數下限" }, "defaultType": { "message": "預設類型" @@ -3320,10 +3320,10 @@ "message": "密碼庫逾時動作" }, "vaultTimeoutActionLockDesc": { - "message": "鎖定密碼庫後需要重新輸入主密碼才能再次存取它。" + "message": "鎖定密碼庫後需要重新輸入主密碼才能再次存取。" }, "vaultTimeoutActionLogOutDesc": { - "message": "登出密碼庫後需要重新認證才能再次存取它。" + "message": "登出密碼庫後需要重新驗證才能再次存取。" }, "lock": { "message": "鎖定", @@ -3340,7 +3340,7 @@ "message": "永久刪除" }, "permanentlyDeleteSelected": { - "message": "永久刪除選擇的項目" + "message": "永久刪除已選取項目" }, "permanentlyDeleteItem": { "message": "永久刪除項目" @@ -3349,10 +3349,10 @@ "message": "您確定要永久刪除此項目嗎?" }, "permanentlyDeletedItem": { - "message": "項目已永久刪除" + "message": "已永久刪除項目" }, "permanentlyDeletedItems": { - "message": "項目已永久刪除" + "message": "已永久刪除項目" }, "permanentlyDeleteSelectedItemsDesc": { "message": "您已經選取了 $COUNT$ 個項目要永久刪除。確定要永久刪除這些項目嗎?", @@ -3373,28 +3373,28 @@ } }, "restore": { - "message": "恢復" + "message": "還原" }, "restoreSelected": { - "message": "恢復選擇的項目" + "message": "還原已選取的項目" }, "restoreItem": { - "message": "恢復項目" + "message": "還原項目" }, "restoredItem": { - "message": "項目已恢復" + "message": "已還原項目" }, "restoredItems": { - "message": "項目已恢復" + "message": "已還原項目" }, "restoreItemConfirmation": { - "message": "您確定要恢復此項目嗎?" + "message": "您確定要還原此項目嗎?" }, "restoreItems": { - "message": "恢復項目" + "message": "還原項目" }, "restoreSelectedItemsDesc": { - "message": "您已經選取了 $COUNT$ 個項目要恢復。確定要恢復這些項目嗎?", + "message": "您已經選取了 $COUNT$ 個項目要還原。確定要還原這些項目嗎?", "placeholders": { "count": { "content": "$1", @@ -3403,7 +3403,7 @@ } }, "restoredItemId": { - "message": "已恢復項目 $ID$。", + "message": "已還原項目 $ID$。", "placeholders": { "id": { "content": "$1", @@ -3412,7 +3412,7 @@ } }, "vaultTimeoutLogOutConfirmation": { - "message": "選擇登出將會在密碼庫逾時後移除對密碼庫的所有存取權限,以及重新認證時需要連線網路。確定要使用此設定嗎?" + "message": "選擇登出將會在密碼庫逾時後移除對密碼庫的所有存取權限,並且重新驗證時需要連線網路。確定要使用此設定嗎?" }, "vaultTimeoutLogOutConfirmationTitle": { "message": "逾時動作確認" @@ -3421,31 +3421,31 @@ "message": "隱藏密碼" }, "countryPostalCodeRequiredDesc": { - "message": "我們僅收集此資訊用來計算營業稅並包含於財務報表中。" + "message": "我們僅收集此資訊用來計算營業稅與財務報表。" }, "includeVAT": { - "message": "包含 VAT/GST 稅務資訊(選填)" + "message": "包含 VAT/GST 稅務資訊(選用)" }, "taxIdNumber": { "message": "VAT/GST 稅務 ID" }, "taxInfoUpdated": { - "message": "稅務資訊已更新。" + "message": "已更新稅務資訊。" }, "setMasterPassword": { "message": "設定主密碼" }, "ssoCompleteRegistration": { - "message": "要完成 SSO 登入配置,請設定一個主密碼以存取和保護您的密碼庫。" + "message": "要完成 SSO 登入設定,請設定一組主密碼以存取和保護您的密碼庫。" }, "identifier": { - "message": "識別符" + "message": "識別碼" }, "organizationIdentifier": { - "message": "組織識別符" + "message": "組織識別碼" }, "ssoLogInWithOrgIdentifier": { - "message": "要使用組織的單一登入入口登入。請輸入您組織的識別符以開始。" + "message": "若要使用組織的單一登入入口登入。請先輸入您的組織識別碼。" }, "enterpriseSingleSignOn": { "message": "企業單一登入" @@ -3457,7 +3457,7 @@ "message": "包含所有團隊版功能" }, "includeSsoAuthentication": { - "message": "透過 SAML2.0 和 OpenID Connect 進行 SSO 認證" + "message": "透過 SAML2.0 和 OpenID Connect 進行 SSO 驗證" }, "includeEnterprisePolicies": { "message": "企業原則" @@ -3466,7 +3466,7 @@ "message": "SSO 驗證失敗" }, "ssoIdentifierRequired": { - "message": "需要組織識別符。" + "message": "需要組織識別碼。" }, "unlinkSso": { "message": "取消連結 SSO" @@ -3484,13 +3484,13 @@ "message": "限制使用者加入任何其他組織。" }, "singleOrgBlockCreateMessage": { - "message": "當前組織的原則不允許您加入多個組織。請聯絡您的組織管理員或從其他 Bitwarden 帳戶注册。" + "message": "您目前的組織原則不允許您加入多個組織。請聯絡您的組織管理員或從其他 Bitwarden 帳戶註冊。" }, "singleOrgPolicyWarning": { "message": "不是擁有者或管理員並且已經是其他組織的成員的組織成員將從您的組織中移除。" }, "requireSso": { - "message": "單一登入認證" + "message": "單一登入驗證" }, "requireSsoPolicyDesc": { "message": "要求使用者以企業單一登入方法登入。" @@ -3502,10 +3502,10 @@ "message": "必須先開啟單一組織企業原則,才能開啟此原則。" }, "requireSsoPolicyReqError": { - "message": "未開啟單一組織原則。" + "message": "未啟用單一組織原則。" }, "requireSsoExemption": { - "message": "組織的擁有者和管理員豁免此原則的執行。" + "message": "組織擁有者與管理員不受此原則的執行影響。" }, "sendTypeFile": { "message": "檔案" @@ -3514,7 +3514,7 @@ "message": "文字" }, "createSend": { - "message": "建立新的 Send", + "message": "建立新 Send", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "editSend": { @@ -3522,15 +3522,15 @@ "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "createdSend": { - "message": "Send 已建立", + "message": "已建立 Send", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "editedSend": { - "message": "Send 已編輯", + "message": "已編輯 Send", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "deletedSend": { - "message": "Send 已刪除", + "message": "已刪除 Send", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "deleteSend": { @@ -3549,7 +3549,7 @@ "message": "刪除日期" }, "deletionDateDesc": { - "message": "此 Send 將在指定的日期和時間被永久删除。", + "message": "此 Send 將在指定的日期和時間後被永久刪除。", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "expirationDate": { @@ -3570,11 +3570,11 @@ "message": "目前存取次數" }, "sendPasswordDesc": { - "message": "可選。使用者需提供密碼才能存取此 Send。", + "message": "選用。使用者需提供密碼才能存取此 Send。", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendNotesDesc": { - "message": "關於此 Send 的私人注釋。", + "message": "關於此 Send 的私人備註。", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "disabled": { @@ -3598,10 +3598,10 @@ "message": "您確定要移除密碼嗎?" }, "hideEmail": { - "message": "對收件人隱藏我的電子郵件位址。" + "message": "對收件人隱藏我的電子郵件地址。" }, "disableThisSend": { - "message": "停用此 Send 以阻止任何人存取它。", + "message": "停用此 Send 以阻止任何人存取。", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "allSends": { @@ -3611,7 +3611,7 @@ "message": "已達最大存取次數" }, "pendingDeletion": { - "message": "等待刪除中" + "message": "等待刪除" }, "expired": { "message": "已逾期" @@ -3625,26 +3625,26 @@ "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendProtectedPasswordDontKnow": { - "message": "不知道密碼?請向此 Send 的發起人索取密碼。", + "message": "不知道密碼?請向此 Send 的寄件者索取密碼。", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendHiddenByDefault": { - "message": "此 Send 預設為隱藏。您可使用下方的按鈕切換其可見性。", + "message": "此 Send 預設為隱藏。您可使用下方的按鈕切換其可見度。", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "downloadFile": { "message": "下載檔案" }, "sendAccessUnavailable": { - "message": "您嘗試存取的 Send 不存在或不再可用。", + "message": "您嘗試存取的 Send 不存在或無法再使用。", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "missingSendFile": { - "message": "未找到與此 Send 相關聯的檔案。", + "message": "找不到與此 Send 關聯的檔案。", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "noSendsInList": { - "message": "沒有可顯示的 Send。", + "message": "沒有可列出的 Send。", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "emergencyAccess": { @@ -3669,7 +3669,7 @@ "message": "已指定為緊急聯絡人" }, "noGrantedAccess": { - "message": "你還沒有被指定為任何人的緊急聯絡人。" + "message": "您尚未被指定為任何人的緊急聯絡人。" }, "inviteEmergencyContact": { "message": "邀請緊急聯絡人" @@ -3678,13 +3678,13 @@ "message": "編輯緊急聯絡人" }, "inviteEmergencyContactDesc": { - "message": "透過在下面輸入 Bitwarden 帳戶的電子郵件地址,以邀請新的緊急聯絡人。如果他們還沒有 Bitwarden 帳戶,系統將提示他們建立新帳戶。" + "message": "透過在下面輸入 Bitwarden 帳戶的電子郵件地址,以邀請新的緊急聯絡人。若他們還沒有 Bitwarden 帳戶,系統將提示他們建立新帳戶。" }, "emergencyAccessRecoveryInitiated": { - "message": "已發起緊急存取" + "message": "已啟動緊急存取" }, "emergencyAccessRecoveryApproved": { - "message": "已批准緊急存取" + "message": "已核准緊急存取" }, "viewDesc": { "message": "可以檢視您擁有的密碼庫中的所有項目。" @@ -3720,7 +3720,7 @@ "message": "您已被邀請成為上述使用者的緊急聯絡人。要接受邀請,您需要登入或建立新的 Bitwarden 帳戶。" }, "emergencyInviteAcceptFailed": { - "message": "無法接受邀請。請向使用者請求傳送一個新的邀請。" + "message": "無法接受邀請。請向使用者要求傳送新的邀請。" }, "emergencyInviteAcceptFailedShort": { "message": "無法接受邀請。$DESCRIPTION$", @@ -3732,10 +3732,10 @@ } }, "emergencyInviteAcceptedDesc": { - "message": "確認您的身份後,您可以存取此使用者的緊急選項。發生這種情況時,我們將會給您傳送一封電子郵件。" + "message": "確認您的身份後,您便可以存取此使用者的緊急選項。到時我們會向您傳送電子郵件通知。" }, "requestAccess": { - "message": "請求存取權限" + "message": "要求存取權限" }, "requestAccessConfirmation": { "message": "您確定要請求緊急存取嗎?在 $WAITTIME$ 天之後或用戶手動批准請求時,將為您提供存取權限。", @@ -3756,13 +3756,13 @@ } }, "approve": { - "message": "批准" + "message": "核准" }, "reject": { "message": "拒絕" }, "approveAccessConfirmation": { - "message": "您確定要批准緊急存取嗎?這將允許 $USER$ $ACTION$ 您的帳戶。", + "message": "您確定要核准緊急存取嗎?這將允許 $USER$ $ACTION$ 您的帳戶。", "placeholders": { "user": { "content": "$1", @@ -3775,10 +3775,10 @@ } }, "emergencyApproved": { - "message": "緊急存取已批准。" + "message": "已核准緊急存取。" }, "emergencyRejected": { - "message": "緊急存取已拒絕" + "message": "已拒絕緊急存取" }, "passwordResetFor": { "message": "$USER$ 的密碼已重設。您現在可以使用新密碼登入了。", @@ -3796,10 +3796,10 @@ "message": "要求用戶透過移除個人擁有權選項將密碼庫項目儲存到組織。" }, "personalOwnershipExemption": { - "message": "組織的擁有者和管理員豁免此原則的執行。。" + "message": "組織擁有者與管理員不受此原則的執行影響。" }, "personalOwnershipSubmitError": { - "message": "由於某個企業原則,您被限制為儲存項目到您的個人密碼庫。將擁有權變更爲組織,並從可用的集合中選擇。" + "message": "由於某個企業原則,您被限制為儲存項目至您的個人密碼庫。將擁有權變更為組織,並從可用的集合中選擇。" }, "disableSend": { "message": "停用 Send" @@ -3812,7 +3812,7 @@ "message": "可以管理組織原則的組織使用者豁免此原則的執行。" }, "sendDisabled": { - "message": "Send 已停用", + "message": "已停用 Send", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendDisabledWarning": { @@ -3835,10 +3835,10 @@ "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendOptionsPolicyInEffect": { - "message": "以下組織原則當前正起作用:" + "message": "以下組織原則目前作用中:" }, "sendDisableHideEmailInEffect": { - "message": "使用者在建立或編輯 Send 時不允許隱藏他們的電子郵件位址。", + "message": "使用者在建立或編輯 Send 時不允許隱藏他們的電子郵件地址。", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "modifiedPolicyId": { @@ -3854,7 +3854,7 @@ "message": "方案價格" }, "estimatedTax": { - "message": "預估稅額" + "message": "估計稅額" }, "custom": { "message": "自訂" @@ -3890,7 +3890,7 @@ "message": "刪除任何集合" }, "manageAssignedCollections": { - "message": "管理已指派的集合。" + "message": "管理已指派的集合" }, "editAssignedCollections": { "message": "編輯已指派的集合" @@ -3923,7 +3923,7 @@ } }, "personalOwnershipPolicyInEffect": { - "message": "一個組織原則正在影響您的擁有權選項。" + "message": "組織原則正在影響您的擁有權選項。" }, "personalOwnershipPolicyInEffectImports": { "message": "某個組織原則已停用將項目匯入到您的個人密碼庫。" @@ -3932,11 +3932,11 @@ "message": "為組織使用者禁用個人擁有權。" }, "textHiddenByDefault": { - "message": "存取此 Send 時,預設將隱藏文字", + "message": "存取此 Send 時,將預設隱藏文字", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendNameDesc": { - "message": "用於描述此 Send 的友好名稱。", + "message": "用於描述此 Send 的易記名稱。", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendTextDesc": { @@ -3946,7 +3946,7 @@ "message": "您想要傳送的檔案。" }, "copySendLinkOnSave": { - "message": "储存時複製連結到剪貼簿以便分享此 Send。" + "message": "儲存時複製連結至剪貼簿以便共用此 Send。" }, "sendLinkLabel": { "message": "Send 連結", @@ -3961,14 +3961,14 @@ "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendAccessTaglineLearnMore": { - "message": "了解更多", + "message": "深入了解", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read '**Learn more about** Bitwarden Send or sign up to try it today.'" }, "sendVaultCardProductDesc": { - "message": "與任何人直接共享文字或檔案。" + "message": "與任何人直接共用文字或檔案。" }, "sendVaultCardLearnMore": { - "message": "了解更多", + "message": "深入了解", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read '**Learn more**, see how it works, or try it now. '" }, "sendVaultCardSee": { @@ -3984,7 +3984,7 @@ "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Learn more, see how it works, **or** try it now.'" }, "sendVaultCardTryItNow": { - "message": "立刻體驗", + "message": "立即嘗試", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Learn more, see how it works, or **try it now**.'" }, "sendAccessTaglineOr": { @@ -3996,11 +3996,11 @@ "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Learn more about Bitwarden Send or **sign up** to try it today.'" }, "sendAccessTaglineTryToday": { - "message": "今天就體驗。", + "message": "現在就試試。", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Learn more about Bitwarden Send or sign up to **try it today.**'" }, "sendCreatorIdentifier": { - "message": "Bitwarden 使用者 $USER_IDENTIFIER$ 為您共享了如下資料", + "message": "Bitwarden 使用者 $USER_IDENTIFIER$ 與您共用了以下內容", "placeholders": { "user_identifier": { "content": "$1", @@ -4009,7 +4009,7 @@ } }, "viewSendHiddenEmailWarning": { - "message": "建立此 Send 的 Bitwarden 使用者已選擇隱藏他們的電子郵件位址。在使用或下載此連結的內容之前,應確保您信任此連結的來源。", + "message": "建立此 Send 的 Bitwarden 使用者已選擇隱藏他們的電子郵件地址。在使用或下載此連結的內容之前,應確保您信任此連結的來源。", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "expirationDateIsInvalid": { @@ -4019,7 +4019,7 @@ "message": "指定的刪除日期無效。" }, "expirationDateAndTimeRequired": { - "message": "要求指定逾期日期和時間。" + "message": "必須指定逾期日期和時間。" }, "deletionDateAndTimeRequired": { "message": "要求指定刪除日期和時間。" @@ -4028,7 +4028,7 @@ "message": "儲存刪除日期和逾期日期時發生錯誤。" }, "webAuthnFallbackMsg": { - "message": "要驗證您的 2FA,請點擊下面的按鈕。" + "message": "要驗證您的 2FA,請點選下方的按鈕。" }, "webAuthnAuthenticate": { "message": "驗證 WebAuthn" @@ -4040,25 +4040,25 @@ "message": "WebAuthn 驗證成功!您可以關閉此分頁。" }, "hintEqualsPassword": { - "message": "密碼提示不能與密碼相同。" + "message": "密碼提示不能與您的密碼相同。" }, "enrollPasswordReset": { - "message": "注冊密碼重設" + "message": "註冊密碼重設" }, "enrolledPasswordReset": { - "message": "已注冊密碼重設" + "message": "已註冊密碼重設" }, "withdrawPasswordReset": { "message": "撤銷密碼重設" }, "enrollPasswordResetSuccess": { - "message": "注冊成功!" + "message": "註冊成功!" }, "withdrawPasswordResetSuccess": { "message": "撤銷成功!" }, "eventEnrollPasswordReset": { - "message": "用戶 $ID$ 注冊了密碼重設協助。", + "message": "使用者 $ID$ 註冊了密碼重設協助。", "placeholders": { "id": { "content": "$1", @@ -4067,7 +4067,7 @@ } }, "eventWithdrawPasswordReset": { - "message": "用戶 $ID$ 撤銷了密碼重設協助。", + "message": "使用者 $ID$ 撤銷了密碼重設協助。", "placeholders": { "id": { "content": "$1", @@ -4076,7 +4076,7 @@ } }, "eventAdminPasswordReset": { - "message": "重新設定使用者 $ID$ 的主密碼", + "message": "重設使用者 $ID$ 的主密碼", "placeholders": { "id": { "content": "$1", @@ -4085,7 +4085,7 @@ } }, "eventResetSsoLink": { - "message": "為使用者 $ID$ 重置 SSO 鏈接", + "message": "重設使用者 $ID$ 的 SSO 連結", "placeholders": { "id": { "content": "$1", @@ -4115,7 +4115,7 @@ } }, "thisUser": { - "message": "這個使用者" + "message": "此使用者" }, "resetPasswordMasterPasswordPolicyInEffect": { "message": "一個或多個組織原則要求主密碼須符合下列條件:" @@ -4130,7 +4130,7 @@ "message": "主密碼重設" }, "resetPasswordPolicyDescription": { - "message": "允許組織管理者去重新設定組織使用者的主密碼。" + "message": "允許組織管理者重設組織使用者的主密碼。" }, "resetPasswordPolicyWarning": { "message": "組織使用者需要先自行註冊或將被自動註冊後管理者才能重新設定他們的主密碼。" @@ -4151,10 +4151,10 @@ "message": "此組織有一個可以為您自動註冊密碼重設的企業原則。註冊後將允許組織管理員變更您的主密碼。" }, "resetPasswordOrgKeysError": { - "message": "組織金鑰回覆為空" + "message": "組織金鑰回應為 null" }, "resetPasswordDetailsError": { - "message": "重設密碼細節回應為空" + "message": "重設密碼詳細資訊回應為 null" }, "trashCleanupWarning": { "message": "垃圾桶中超過 30 天的密碼將會被自動刪除。" @@ -4169,22 +4169,22 @@ "message": "確認主密碼" }, "passwordConfirmationDesc": { - "message": "這個動作受到保護。若要繼續,請重新輸入您的主密碼以驗證您的身份。" + "message": "此動作受到保護。若要繼續,請重新輸入您的主密碼以驗證您的身份。" }, "reinviteSelected": { "message": "重新傳送邀請" }, "noSelectedUsersApplicable": { - "message": "這個動作不適用於任何已選取的使用者。" + "message": "此動作不適用於任何已選取的使用者。" }, "removeUsersWarning": { - "message": "您確定要移除以下使用者嗎?處理程序需要幾秒鐘去完成而且無法被中斷或取消。" + "message": "您確定要移除以下使用者嗎?這可能需要幾秒鐘的時間,並且不能中斷或取消。" }, "theme": { "message": "主題" }, "themeDesc": { - "message": "爲您的網頁密碼庫選擇一個主題。" + "message": "選擇網頁密碼庫主題。" }, "themeSystem": { "message": "使用系統主題" @@ -4196,7 +4196,7 @@ "message": "淺色" }, "confirmSelected": { - "message": "確認所選" + "message": "確認選取" }, "bulkConfirmStatus": { "message": "批次作業狀態" @@ -4211,7 +4211,7 @@ "message": "已成功移除。" }, "bulkFilteredMessage": { - "message": "排除,不適用於這個動作。" + "message": "已排除,不適用於此動作。" }, "fingerprint": { "message": "指紋" @@ -4223,31 +4223,31 @@ "message": "錯誤" }, "resetPasswordManageUsers": { - "message": "必須開啟管理密碼重設權限後,才能開啟管理使用者權限" + "message": "必須啟用管理密碼重設權限後才能啟用管理使用者權限" }, "setupProvider": { - "message": "提供商設定" + "message": "提供者設定" }, "setupProviderLoginDesc": { - "message": "您被邀請設定一個新的提供者。若想繼續,您需要登入或建立一個新的 Bitwarden 帳戶。" + "message": "已邀請您設定一個新的提供者。若要繼續,您需要登入或建立一個新的 Bitwarden 帳戶。" }, "setupProviderDesc": { - "message": "請在下面輸入詳細資訊以完成提供商設定。如果您有任何問題,請聯絡客戶支援。" + "message": "請在下方輸入詳細資訊以完成提供者設定。若您有任何問題,請聯絡客戶支援。" }, "providerName": { - "message": "提供商名稱" + "message": "提供者名稱" }, "providerSetup": { - "message": "提供商已被設定。" + "message": "已完成提供者設定。" }, "clients": { "message": "客户" }, "providerAdmin": { - "message": "提供商管理" + "message": "提供者管理員" }, "providerAdminDesc": { - "message": "可以管理提供商的所有方面的具有最高存取權限的使用者,也可以存取和管理客戶組織。" + "message": "具有最高權限的使用者,可以管理提供者的所有層面也可以存取和管理客戶組織。" }, "serviceUser": { "message": "服務使用者" @@ -4256,40 +4256,40 @@ "message": "服務使用者可以存取和管理所有客戶組織。" }, "providerInviteUserDesc": { - "message": "透過在下方輸入他們的 Bitwarden 帳戶電子郵件位址,來邀請新的使用者加入您的提供者。如果他們還沒有 Bitwarden 帳戶,將提示他們建立新帳戶。" + "message": "透過在下方輸入他們的 Bitwarden 帳戶電子郵件位址,來邀請新的使用者加入您的提供者。若他們還沒有 Bitwarden 帳戶,將提示他們建立新帳戶。" }, "joinProvider": { - "message": "加入提供商" + "message": "加入提供者" }, "joinProviderDesc": { - "message": "您已被邀請加入上面列出的提供者。若想接受邀請,您需要登入或建立新的 Bitwarden 帳戶。" + "message": "您已受邀請加入上方所列的提供者。若想接受邀請,您需要登入或建立新的 Bitwarden 帳戶。" }, "providerInviteAcceptFailed": { - "message": "無法接受邀請。請要求提供商管理員發送一個新的邀請。" + "message": "無法接受邀請。請要求提供者管理員傳送新的邀請。" }, "providerInviteAcceptedDesc": { - "message": "管理員確認您的成員資格後,您就可以存取此提供商。發生這種情況時,我們會給你發送電子郵件。" + "message": "管理員確認您的成員身分後,您便可以存取此提供者。到時我們會向您傳送電子郵件通知。" }, "providerUsersNeedConfirmed": { - "message": "有使用者已接受邀請,但仍需要確認。在確認之前,使用者將無法存取提供商。" + "message": "有使用者已接受邀請,但仍然需要確認。在確認之前,使用者將無法存取提供者。" }, "provider": { - "message": "提供商" + "message": "提供者" }, "newClientOrganization": { - "message": "新建客戶組織" + "message": "新的客戶組織" }, "newClientOrganizationDesc": { - "message": "建立一個新的客戶組織,該組織將作為提供者與您關聯。您將能夠存取和管理此組織。" + "message": "建立一個新的客戶組織,該組織將作為提供者與您建立關聯。您將能夠存取和管理此組織。" }, "addExistingOrganization": { - "message": "添加現有的組織" + "message": "新增現有組織" }, "myProvider": { - "message": "我的提供商" + "message": "我的提供者" }, "addOrganizationConfirmation": { - "message": "你確定要將 $ORGANIZATION$ 添加爲 $PROVIDER$ 的客戶嗎?", + "message": "您確定要將 $ORGANIZATION$ 新增為 $PROVIDER$ 的客戶嗎?", "placeholders": { "organization": { "content": "$1", @@ -4302,10 +4302,10 @@ } }, "organizationJoinedProvider": { - "message": "已成功將組織添加到提供商" + "message": "已成功將組織新增至提供者" }, "accessingUsingProvider": { - "message": "正使用提供商 $PROVIDER$ 存取組織", + "message": "正在使用提供者 $PROVIDER$ 存取組織", "placeholders": { "provider": { "content": "$1", @@ -4314,13 +4314,13 @@ } }, "providerIsDisabled": { - "message": "提供商已被停用。" + "message": "已停用提供者。" }, "providerUpdated": { - "message": "提供商已更新" + "message": "已更新提供者" }, "yourProviderIs": { - "message": "你的提供商是 $PROVIDER$。他們對您的組織具有管理和計費權限。", + "message": "您的提供者為 $PROVIDER$。他們對您的組織具有管理和計費權限。", "placeholders": { "provider": { "content": "$1", @@ -4329,7 +4329,7 @@ } }, "detachedOrganization": { - "message": "組織 $ORGANIZATION$ 已從您的供應商分離。", + "message": "組織 $ORGANIZATION$ 已與您的提供者中斷連結。", "placeholders": { "organization": { "content": "$1", @@ -4338,7 +4338,7 @@ } }, "detachOrganizationConfirmation": { - "message": "您確定要分離此組織嗎?該組織將繼續存在,但不再由此提供商管理。" + "message": "您確定要分離此組織嗎?該組織將繼續存在,但不再由此提供者管理。" }, "add": { "message": "新增" @@ -4353,13 +4353,13 @@ "message": "您的主密碼最近被您的組織管理者變更過。您必須現在更新主密碼才能存取密碼庫。繼續操作會登出您目前的工作階段,並要求您重新登入帳戶。其他裝置上的活動工作階段最多會保持一個小時。" }, "masterPasswordInvalidWarning": { - "message": "您的主密碼不符合此組織原則的要求。您必須現在更新主密碼才可以才加入此組織。繼續操作會登出您目前的工作階段,並要求您重新登入帳戶。其他裝置上的活動工作階段最多會保持一個小時。" + "message": "您的主密碼不符合此組織原則的要求。您必須現在更新主密碼才可以加入此組織。繼續操作會登出您目前的工作階段,並要求您重新登入帳戶。其他裝置上的活動工作階段最多會保持一個小時。" }, "maximumVaultTimeout": { "message": "密碼庫逾時時長" }, "maximumVaultTimeoutDesc": { - "message": "為所有使用者配置一個最大密碼庫逾時時長。" + "message": "為所有使用者設定最大密碼庫逾時時長。" }, "maximumVaultTimeoutLabel": { "message": "最大密碼庫逾時時長" @@ -4387,7 +4387,7 @@ } }, "customVaultTimeout": { - "message": "自定義密碼庫逾時時長" + "message": "自訂密碼庫逾時時長" }, "vaultTimeoutToLarge": { "message": "您的密碼庫逾時時長超過組織限制。" @@ -4396,13 +4396,13 @@ "message": "停用個人密碼庫匯出" }, "disablePersonalVaultExportDesc": { - "message": "禁止使用者匯出私人密碼庫資料。" + "message": "禁止使用者匯出個人密碼庫資料。" }, "vaultExportDisabled": { - "message": "密碼庫匯出已停用" + "message": "已停用密碼庫匯出" }, "personalVaultExportPolicyInEffect": { - "message": "一個或多個組織原則不允許您匯出個人密碼庫。" + "message": "一或多個組織策略禁止您匯出個人密碼庫。" }, "selectType": { "message": "選擇 SSO 類型" @@ -4411,19 +4411,19 @@ "message": "類型" }, "openIdConnectConfig": { - "message": "OpenID 連接配置" + "message": "OpenID 連線設定" }, "samlSpConfig": { - "message": "SAML 服務提供程式配置" + "message": "SAML 服務提供程式設定" }, "samlIdpConfig": { - "message": "SAML 身份提供程式配置" + "message": "SAML 身分提供程式設定" }, "callbackPath": { "message": "回呼路徑" }, "signedOutCallbackPath": { - "message": "已經登出回呼路徑" + "message": "已登出回呼路徑" }, "authority": { "message": "授權單位" @@ -4435,13 +4435,13 @@ "message": "客戶金鑰" }, "metadataAddress": { - "message": "中介資料位址" + "message": "中繼資料位址" }, "oidcRedirectBehavior": { "message": "OIDC 重新導向行為" }, "getClaimsFromUserInfoEndpoint": { - "message": "從使用者資訊端點獲取聲明" + "message": "從使用者資訊端點取得聲明" }, "additionalScopes": { "message": "自訂範圍" @@ -4456,7 +4456,7 @@ "message": "自訂名稱聲明類型" }, "acrValues": { - "message": "請求的認證上下文類引用值" + "message": "要求的驗證資料內容類別參考值" }, "expectedReturnAcrValue": { "message": "回應中預期的「acr」聲明值" @@ -4465,25 +4465,25 @@ "message": "SP 實體 ID" }, "spMetadataUrl": { - "message": "SAML 2.0 中介資料 URL" + "message": "SAML 2.0 中繼資料 URL" }, "spAcsUrl": { - "message": "宣告消費者服務(ACS)URL" + "message": "判斷提示取用者服務 (ACS) URL" }, "spNameIdFormat": { "message": "名稱 ID 格式" }, "spOutboundSigningAlgorithm": { - "message": "傳出的簽名演算法" + "message": "傳出簽署演算法" }, "spSigningBehavior": { - "message": "簽名行為" + "message": "簽署行為" }, "spMinIncomingSigningAlgorithm": { - "message": "最小傳入簽名演算法" + "message": "最小傳入簽署演算法" }, "spWantAssertionsSigned": { - "message": "希望宣告被簽名" + "message": "需要已簽署宣告" }, "spValidateCertificates": { "message": "驗證憑證" @@ -4492,7 +4492,7 @@ "message": "實體 ID" }, "idpBindingType": { - "message": "綁定類型" + "message": "繫結類型" }, "idpSingleSignOnServiceUrl": { "message": "單一登入服務 URL" @@ -4504,28 +4504,28 @@ "message": "X509 公開憑證" }, "idpOutboundSigningAlgorithm": { - "message": "傳出的簽名演算法" + "message": "傳出簽署演算法" }, "idpAllowUnsolicitedAuthnResponse": { - "message": "允許未經請求的認證回應" + "message": "允許未經要求的驗證回應" }, "idpAllowOutboundLogoutRequests": { - "message": "允許出站註銷請求" + "message": "允許傳出登出要求" }, "idpSignAuthenticationRequests": { - "message": "簽名身份驗證請求" + "message": "簽署身分驗證要求" }, "ssoSettingsSaved": { - "message": "單一登入配置已儲存。" + "message": "已儲存單一登入設定。" }, "sponsoredFamilies": { - "message": "免費的 Bitwarden 家庭" + "message": "免費的 Bitwarden 家庭方案" }, "sponsoredFamiliesEligible": { - "message": "您與家庭成員可使用免費的 Bitwarden 家庭方案。以即使您不在公司上班,也可以使用您的私人電子郵件來兌換此方案,以保護您的資料安全。" + "message": "您與家庭成員可使用免費的 Bitwarden 家庭方案。就算不在上班時間,也可以使用您的私人電子郵件來兌換此方案,以保障您的資料安全。" }, "sponsoredFamiliesEligibleCard": { - "message": "立即兌換您的免費 Bitwarden 家庭方案,以保護您的資料安全,即使您不在公司上班也可以。" + "message": "立即兌換您的免費 Bitwarden 家庭方案,即使不在上班時間也能夠保障您的資料安全。" }, "sponsoredFamiliesInclude": { "message": "Bitwarden 家庭方案內容包含" @@ -4534,10 +4534,10 @@ "message": "最多 6 位使用者的付費方案存取權限" }, "sponsoredFamiliesSharedCollections": { - "message": "用於家庭間共享帳號密碼的集合" + "message": "用於家庭共用帳號密碼的集合" }, "badToken": { - "message": "連結已經失效。請讓贊助人重寄邀請。" + "message": "連結已失效。請讓贊助者重新傳送邀請。" }, "reclaimedFreePlan": { "message": "已回收免費方案" @@ -4552,7 +4552,7 @@ "message": "您想兌換哪一個免費家庭邀請呢?" }, "sponsoredFamiliesEmail": { - "message": "輸入您的私人電子郵件以兌換 Bitwarden 家庭" + "message": "輸入您的個人電子郵件以兌換 Bitwarden 家庭方案" }, "sponsoredFamiliesLeaveCopy": { "message": "如果您離開或被從該組織中移除,您的家庭方案將在計費周期結束時逾期。" @@ -4576,10 +4576,10 @@ } }, "sponsoredFamiliesOffer": { - "message": "接受免費 Bitwarden 家庭" + "message": "兌換免費的 Bitwarden 家庭方案" }, "sponsoredFamiliesOfferRedeemed": { - "message": "免費 Bitwarden 家庭邀請已成功兌換" + "message": "已成功兌換免費的 Bitwarden 家庭方案" }, "redeemed": { "message": "已兌換" @@ -4597,7 +4597,7 @@ } }, "resendEmailLabel": { - "message": "重寄贊助郵件到 $NAME$", + "message": "重新傳送贊助郵件至 $NAME$", "placeholders": { "name": { "content": "$1", @@ -4609,46 +4609,46 @@ "message": "免費家庭方案" }, "redeemNow": { - "message": "現在就兌換" + "message": "立即兌換" }, "recipient": { - "message": "收件人" + "message": "收件者" }, "removeSponsorship": { "message": "移除贊助" }, "removeSponsorshipConfirmation": { - "message": "移除贊助後,您將自己負責此訂閱和相關的賬單。您確定要繼續嗎?" + "message": "移除贊助後,您將自己負責此訂閱及其相關帳單。您確定要繼續嗎?" }, "sponsorshipCreated": { - "message": "贊助已建立" + "message": "已建立贊助" }, "revoke": { "message": "撤銷" }, "emailSent": { - "message": "郵件已寄出" + "message": "已寄出郵件" }, "revokeSponsorshipConfirmation": { - "message": "移除此帳戶後,家庭組織的所有者將負責此訂閱和相關的賬單。您確定要繼續嗎?" + "message": "移除此帳戶後,家庭組織的擁有者將負責此訂閱及其相關帳單。您確定要繼續嗎?" }, "removeSponsorshipSuccess": { - "message": "贊助已移除" + "message": "已移除贊助" }, "ssoKeyConnectorUnavailable": { - "message": "無法連線到 Key Connector。請稍後再試。" + "message": "無法連線至 Key Connector。請稍後再試。" }, "keyConnectorUrl": { "message": "Key Connector URL" }, "sendVerificationCode": { - "message": "傳送驗證碼到您的信箱" + "message": "傳送驗證碼至您的電子郵件" }, "sendCode": { "message": "傳送驗證碼" }, "codeSent": { - "message": "驗證碼已送出" + "message": "已送出驗證碼" }, "verificationCode": { "message": "驗證碼" @@ -4657,13 +4657,13 @@ "message": "請先確認身分後再繼續。" }, "verificationCodeRequired": { - "message": "必須填寫驗證碼。" + "message": "必須填入驗證碼。" }, "invalidVerificationCode": { "message": "無效的驗證碼" }, "convertOrganizationEncryptionDesc": { - "message": "$ORGANIZATION$ 使用自我托管金輪伺服器 SSO。這個组织的成員登入時将不再需要主密碼。", + "message": "$ORGANIZATION$ 使用自我托管金鑰伺服器 SSO。此組織的成員登入時將不再需要主密碼。", "placeholders": { "organization": { "content": "$1", @@ -4678,20 +4678,20 @@ "message": "移除主密碼" }, "removedMasterPassword": { - "message": "主密碼已移除。" + "message": "已移除主密碼。" }, "allowSso": { "message": "允許 SSO 身分驗證" }, "allowSsoDesc": { - "message": "設定後,您的配置將被儲存,成員將可以使用他們的身分提供程序憑據進行身分驗證。" + "message": "設定後,您的設定將被儲存,成員將可以使用他們的識別提供者憑證進行身分驗證。" }, "ssoPolicyHelpStart": { "message": "啟用", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Enable the SSO Authentication policy to require all members to log in with SSO.'" }, "ssoPolicyHelpLink": { - "message": "SSO 認證原則", + "message": "SSO 驗證原則", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Enable the SSO Authentication policy to require all members to log in with SSO.'" }, "ssoPolicyHelpEnd": { @@ -4699,22 +4699,22 @@ "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Enable the SSO Authentication policy to require all members to log in with SSO.'" }, "ssoPolicyHelpKeyConnector": { - "message": "SSO 認證及單一組織原則需要先設定 Key Connector 解密方式後才能使用。" + "message": "SSO 驗證及單一組織原則需要先設定 Key Connector 解密方式後才能使用。" }, "memberDecryptionOption": { "message": "成員解密選項" }, "memberDecryptionPassDesc": { - "message": "通過驗證後,成員將使用他們的主密碼解密密碼庫資料。" + "message": "通過驗證以後,成員將使用他們的主密碼解密密碼庫資料。" }, "keyConnector": { "message": "Key Connector" }, "memberDecryptionKeyConnectorDesc": { - "message": "鏈接 SSO 登入到您的自我托管解密金輪伺服器。使用此選項後,成員無需使用它們的主密碼解密密碼庫資料。聯絡 Bitwarden 支援以獲取設定協助。" + "message": "連結 SSO 登入至您的自我托管解密金鑰伺服器。使用此選項後,成員便無需使用它們的主密碼來解密密碼庫資料。聯絡 Bitwarden 客戶支援以取得設定協助。" }, "keyConnectorPolicyRestriction": { - "message": "「SSO 登入和 Key Connector 解密」已啓用。此原則僅適用於所有者和管理員。" + "message": "已啟用「SSO 登入和 Key Connector 解密」。此原則僅適用於擁有者和管理員。" }, "enabledSso": { "message": "已啟用 SSO" @@ -4732,7 +4732,7 @@ "message": "一旦成員開始使用 Key Connector,您的組織將無法復原為使用主密碼解密。僅當您可以輕鬆地部署和管理金輪伺服器時再繼續。" }, "migratedKeyConnector": { - "message": "已移轉到 Key Connector" + "message": "已移轉至 Key Connector" }, "paymentSponsored": { "message": "請提供一個與此組織關聯的付款方式。別擔心,我們不會向您收取任何費用,除非您選擇進階功能或您的贊助到期。 " @@ -4753,10 +4753,10 @@ "message": "測試" }, "keyConnectorTestSuccess": { - "message": "成功!Key Connector 已連接。" + "message": "成功!已連線 Key Connector。" }, "keyConnectorTestFail": { - "message": "無法連接 Key Connector。請檢查 URL。" + "message": "無法連線 Key Connector。請檢查 URL。" }, "sponsorshipTokenHasExpired": { "message": "此贊助邀請已逾期。" @@ -4765,7 +4765,7 @@ "message": "免費贊助" }, "formErrorSummaryPlural": { - "message": "上面的 $COUNT$ 個欄位需要您注意。", + "message": "您需注意上方的 $COUNT$ 個欄位。", "placeholders": { "count": { "content": "$1", @@ -4774,10 +4774,10 @@ } }, "formErrorSummarySingle": { - "message": "上面的 1 個欄位需要您注意。" + "message": "您需注意上方的 1 個欄位。" }, "fieldRequiredError": { - "message": "$FIELDNAME$ 必填。", + "message": "$FIELDNAME$ 是必要項目。", "placeholders": { "fieldname": { "content": "$1", @@ -4789,13 +4789,13 @@ "message": "必填" }, "idpSingleSignOnServiceUrlRequired": { - "message": "如果 Entity ID 非 URL,則必填。" + "message": "若 Entity ID 非 URL,則必須填入。" }, "openIdOptionalCustomizations": { - "message": "選用定制" + "message": "選用自訂項目" }, "openIdAuthorityRequired": { - "message": "如果授權不可用,則必填。" + "message": "若授權無效,則必須填入。" }, "separateMultipleWithComma": { "message": "使用逗號分隔。" @@ -4810,7 +4810,7 @@ "message": "匯出組織密碼庫" }, "exportingPersonalVaultDescription": { - "message": "只會匯出關聯到 $EMAIL$ 的個人密碼庫。組織密碼庫的項目不包含在內。", + "message": "只會匯出與 $EMAIL$ 關聯的個人密碼庫。組織密碼庫的項目不包含在內。", "placeholders": { "email": { "content": "$1", @@ -4819,7 +4819,7 @@ } }, "exportingOrganizationVaultDescription": { - "message": "只會匯出關聯到 $ORGANIZATION$ 的組織密碼庫。個人密碼庫和其他組織的項目不包含在內。", + "message": "只會匯出與 $ORGANIZATION$ 關聯的組織密碼庫。個人密碼庫和其他組織的項目不包含在內。", "placeholders": { "organization": { "content": "$1", From 11034de7d1658f2d3654413dadc1298b74a842f9 Mon Sep 17 00:00:00 2001 From: Kyle Spearrin Date: Fri, 25 Mar 2022 11:00:40 -0400 Subject: [PATCH 07/18] resolve build errors with latest jslib ref (#1565) --- jslib | 2 +- .../tools/password-generator.component.html | 70 +++++++++---------- src/app/tools/password-generator.component.ts | 16 ++++- 3 files changed, 51 insertions(+), 37 deletions(-) diff --git a/jslib b/jslib index 5b7b2a03..fa73c13b 160000 --- a/jslib +++ b/jslib @@ -1 +1 @@ -Subproject commit 5b7b2a03ddbecbc93adc54a5c69e8141c00c192f +Subproject commit fa73c13b8c9ed35cbb9909e342b143fa8a57f1a0 diff --git a/src/app/tools/password-generator.component.html b/src/app/tools/password-generator.component.html index 4bd129fc..343085cb 100644 --- a/src/app/tools/password-generator.component.html +++ b/src/app/tools/password-generator.component.html @@ -1,7 +1,7 @@ - + {{ "passwordGeneratorPolicyInEffect" | i18n }}
@@ -14,19 +14,19 @@
- +
@@ -36,8 +36,8 @@ type="number" min="3" max="20" - [(ngModel)]="options.numWords" - (blur)="saveOptions()" + [(ngModel)]="passwordOptions.numWords" + (blur)="savePasswordOptions()" />
@@ -47,8 +47,8 @@ class="form-control" type="text" maxlength="1" - [(ngModel)]="options.wordSeparator" - (blur)="saveOptions()" + [(ngModel)]="passwordOptions.wordSeparator" + (blur)="savePasswordOptions()" />
@@ -58,9 +58,9 @@ id="capitalize" class="form-check-input" type="checkbox" - (change)="saveOptions()" - [(ngModel)]="options.capitalize" - [disabled]="enforcedPolicyOptions?.capitalize" + (change)="savePasswordOptions()" + [(ngModel)]="passwordOptions.capitalize" + [disabled]="enforcedPasswordPolicyOptions?.capitalize" />
@@ -69,15 +69,15 @@ id="include-number" class="form-check-input" type="checkbox" - (change)="saveOptions()" - [(ngModel)]="options.includeNumber" - [disabled]="enforcedPolicyOptions?.includeNumber" + (change)="savePasswordOptions()" + [(ngModel)]="passwordOptions.includeNumber" + [disabled]="enforcedPasswordPolicyOptions?.includeNumber" /> - +
@@ -87,8 +87,8 @@ type="number" min="5" max="128" - [(ngModel)]="options.length" - (blur)="saveOptions()" + [(ngModel)]="passwordOptions.length" + (blur)="savePasswordOptions()" (change)="lengthChanged()" />
@@ -100,8 +100,8 @@ type="number" min="0" max="9" - (blur)="saveOptions()" - [(ngModel)]="options.minNumber" + (blur)="savePasswordOptions()" + [(ngModel)]="passwordOptions.minNumber" (change)="minNumberChanged()" />
@@ -113,8 +113,8 @@ type="number" min="0" max="9" - (blur)="saveOptions()" - [(ngModel)]="options.minSpecial" + (blur)="savePasswordOptions()" + [(ngModel)]="passwordOptions.minSpecial" (change)="minSpecialChanged()" /> @@ -125,9 +125,9 @@ id="uppercase" class="form-check-input" type="checkbox" - (change)="saveOptions()" - [(ngModel)]="options.uppercase" - [disabled]="enforcedPolicyOptions?.useUppercase" + (change)="savePasswordOptions()" + [(ngModel)]="passwordOptions.uppercase" + [disabled]="enforcedPasswordPolicyOptions?.useUppercase" /> @@ -136,9 +136,9 @@ id="lowercase" class="form-check-input" type="checkbox" - (change)="saveOptions()" - [(ngModel)]="options.lowercase" - [disabled]="enforcedPolicyOptions?.useLowercase" + (change)="savePasswordOptions()" + [(ngModel)]="passwordOptions.lowercase" + [disabled]="enforcedPasswordPolicyOptions?.useLowercase" /> @@ -147,9 +147,9 @@ id="numbers" class="form-check-input" type="checkbox" - (change)="saveOptions()" - [(ngModel)]="options.number" - [disabled]="enforcedPolicyOptions?.useNumbers" + (change)="savePasswordOptions()" + [(ngModel)]="passwordOptions.number" + [disabled]="enforcedPasswordPolicyOptions?.useNumbers" /> @@ -158,9 +158,9 @@ id="special" class="form-check-input" type="checkbox" - (change)="saveOptions()" - [(ngModel)]="options.special" - [disabled]="enforcedPolicyOptions?.useSpecial" + (change)="savePasswordOptions()" + [(ngModel)]="passwordOptions.special" + [disabled]="enforcedPasswordPolicyOptions?.useSpecial" /> @@ -169,7 +169,7 @@ id="ambiguous" class="form-check-input" type="checkbox" - (change)="saveOptions()" + (change)="savePasswordOptions()" [(ngModel)]="avoidAmbiguous" /> diff --git a/src/app/tools/password-generator.component.ts b/src/app/tools/password-generator.component.ts index 93b1d9eb..a07ad051 100644 --- a/src/app/tools/password-generator.component.ts +++ b/src/app/tools/password-generator.component.ts @@ -1,10 +1,13 @@ import { Component, ViewChild, ViewContainerRef } from "@angular/core"; +import { ActivatedRoute } from "@angular/router"; import { PasswordGeneratorComponent as BasePasswordGeneratorComponent } from "jslib-angular/components/password-generator.component"; import { ModalService } from "jslib-angular/services/modal.service"; import { I18nService } from "jslib-common/abstractions/i18n.service"; import { PasswordGenerationService } from "jslib-common/abstractions/passwordGeneration.service"; import { PlatformUtilsService } from "jslib-common/abstractions/platformUtils.service"; +import { StateService } from "jslib-common/abstractions/state.service"; +import { UsernameGenerationService } from "jslib-common/abstractions/usernameGeneration.service"; import { PasswordGeneratorHistoryComponent } from "./password-generator-history.component"; @@ -18,11 +21,22 @@ export class PasswordGeneratorComponent extends BasePasswordGeneratorComponent { constructor( passwordGenerationService: PasswordGenerationService, + usernameGenerationService: UsernameGenerationService, + stateService: StateService, platformUtilsService: PlatformUtilsService, i18nService: I18nService, + route: ActivatedRoute, private modalService: ModalService ) { - super(passwordGenerationService, platformUtilsService, i18nService, window); + super( + passwordGenerationService, + usernameGenerationService, + platformUtilsService, + stateService, + i18nService, + route, + window + ); } async history() { From 42ececbcf59d6f49c3203601809809b2fcbdce24 Mon Sep 17 00:00:00 2001 From: Robyn MacCallum Date: Tue, 29 Mar 2022 12:55:27 -0400 Subject: [PATCH 08/18] add DatePipe to providers in routing module (#1570) --- src/app/oss-routing.module.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/app/oss-routing.module.ts b/src/app/oss-routing.module.ts index 38e1eecb..6ad7ec2b 100644 --- a/src/app/oss-routing.module.ts +++ b/src/app/oss-routing.module.ts @@ -1,3 +1,4 @@ +import { DatePipe } from "@angular/common"; import { NgModule } from "@angular/core"; import { RouterModule, Routes } from "@angular/router"; @@ -473,5 +474,6 @@ const routes: Routes = [ }), ], exports: [RouterModule], + providers: [DatePipe], }) export class OssRoutingModule {} From 23b02a770ac3083502636795c6e0b910ba3e6288 Mon Sep 17 00:00:00 2001 From: Kyle Spearrin Date: Tue, 29 Mar 2022 15:02:48 -0400 Subject: [PATCH 09/18] add username generation to generator (#1566) * add username generation to generator * move bottom buttons into existing containers --- src/app/oss-routing.module.ts | 2 +- .../password-generator-history.component.html | 2 +- .../tools/password-generator.component.html | 443 ++++++++++++------ src/app/tools/tools.component.html | 2 +- src/app/vault/add-edit.component.html | 2 +- src/locales/en/messages.json | 46 +- src/scss/pages.scss | 4 +- 7 files changed, 338 insertions(+), 163 deletions(-) diff --git a/src/app/oss-routing.module.ts b/src/app/oss-routing.module.ts index 6ad7ec2b..df7c5e1c 100644 --- a/src/app/oss-routing.module.ts +++ b/src/app/oss-routing.module.ts @@ -240,7 +240,7 @@ const routes: Routes = [ { path: "generator", component: PasswordGeneratorComponent, - data: { titleId: "passwordGenerator" }, + data: { titleId: "generator" }, }, { path: "breach-report", diff --git a/src/app/tools/password-generator-history.component.html b/src/app/tools/password-generator-history.component.html index a5b35df5..5b9e3237 100644 --- a/src/app/tools/password-generator-history.component.html +++ b/src/app/tools/password-generator-history.component.html @@ -17,7 +17,7 @@
  • diff --git a/src/app/tools/password-generator.component.html b/src/app/tools/password-generator.component.html index 343085cb..19291398 100644 --- a/src/app/tools/password-generator.component.html +++ b/src/app/tools/password-generator.component.html @@ -1,199 +1,330 @@ - + {{ "passwordGeneratorPolicyInEffect" | i18n }} -
    +
    -
    +
    +
    -
    + +
    - -
    -
    - + +
    + +
    +
    -
    - +
    + +
    +
    + + +
    +
    + + +
    +
    + +
    +
    + + +
    +
    + + +
    +
    +
    + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    +
    +
    +
    + + +
    +
    + +
    +
    + + +
    + +
    + +
    +
    +
    +
    + + +
    +
    +
    +
    + +
    -
    -
    - - -
    -
    - - -
    -
    -
    - -
    +
    - + -
    -
    - - -
    -
    - -
    -
    -
    - - + + +
    +
    +
    + + +
    +
    + + +
    +
    -
    - - -
    -
    - - -
    -
    - - -
    -
    - - -
    -
    - -
    +
    -
    - -
    -
    + diff --git a/src/app/tools/tools.component.html b/src/app/tools/tools.component.html index ec0b152c..8015ac97 100644 --- a/src/app/tools/tools.component.html +++ b/src/app/tools/tools.component.html @@ -5,7 +5,7 @@
    {{ "tools" | i18n }}
    diff --git a/src/locales/en/messages.json b/src/locales/en/messages.json index 612bf822..03aff173 100644 --- a/src/locales/en/messages.json +++ b/src/locales/en/messages.json @@ -187,7 +187,12 @@ "message": "Edit Folder" }, "baseDomain": { - "message": "Base domain" + "message": "Base domain", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Host", @@ -4826,5 +4831,44 @@ "example": "My Org Name" } } + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/scss/pages.scss b/src/scss/pages.scss index bbc76172..979eb978 100644 --- a/src/scss/pages.scss +++ b/src/scss/pages.scss @@ -1,4 +1,4 @@ -.password-wrapper { +.generated-wrapper { min-width: 0; white-space: pre-wrap; word-break: break-all; @@ -114,7 +114,7 @@ app-password-generator { width: 100%; } - .card-password { + .card-generated { .card-body { @include themify($themes) { background: themed("foregroundColor"); From 612442c1bbb0c6868b611f265bcdd9de9a05b95b Mon Sep 17 00:00:00 2001 From: Oscar Hinton Date: Tue, 29 Mar 2022 21:55:47 +0200 Subject: [PATCH 10/18] Cherry pick premium badge and reports page (#1525, #1536) (#1571) --- src/app/components/premium-badge.component.ts | 19 ++ src/app/layouts/navbar.component.html | 3 + .../exposed-passwords-report.component.ts | 4 +- .../inactive-two-factor-report.component.ts | 4 +- .../reused-passwords-report.component.ts | 4 +- .../unsecured-websites-report.component.ts | 4 +- .../tools/weak-passwords-report.component.ts | 4 +- src/app/oss-routing.module.ts | 40 +---- src/app/oss.module.ts | 23 ++- .../breach-report.component.html | 8 +- .../breach-report.component.ts | 0 .../cipher-report.component.ts | 0 .../exposed-passwords-report.component.html | 9 +- .../exposed-passwords-report.component.ts | 0 .../inactive-two-factor-report.component.html | 0 .../inactive-two-factor-report.component.ts | 0 src/app/reports/report-card.component.html | 25 +++ src/app/reports/report-card.component.ts | 166 ++++++++++++++++++ src/app/reports/report-list.component.html | 11 ++ src/app/reports/report-list.component.ts | 18 ++ src/app/reports/reports.component.html | 12 ++ src/app/reports/reports.component.ts | 25 +++ src/app/reports/reports.module.ts | 60 +++++++ .../reused-passwords-report.component.html | 0 .../reused-passwords-report.component.ts | 0 .../unsecured-websites-report.component.html | 0 .../unsecured-websites-report.component.ts | 0 .../weak-passwords-report.component.html | 0 .../weak-passwords-report.component.ts | 0 .../emergency-access-add-edit.component.html | 2 +- .../settings/emergency-access.component.html | 10 +- .../settings/two-factor-setup.component.html | 10 +- src/app/tools/tools.component.html | 53 ------ src/app/vault/add-edit.component.html | 13 +- src/locales/en/messages.json | 30 ++-- 35 files changed, 410 insertions(+), 147 deletions(-) create mode 100644 src/app/components/premium-badge.component.ts rename src/app/{tools => reports}/breach-report.component.html (95%) rename src/app/{tools => reports}/breach-report.component.ts (100%) rename src/app/{tools => reports}/cipher-report.component.ts (100%) rename src/app/{tools => reports}/exposed-passwords-report.component.html (95%) rename src/app/{tools => reports}/exposed-passwords-report.component.ts (100%) rename src/app/{tools => reports}/inactive-two-factor-report.component.html (100%) rename src/app/{tools => reports}/inactive-two-factor-report.component.ts (100%) create mode 100644 src/app/reports/report-card.component.html create mode 100644 src/app/reports/report-card.component.ts create mode 100644 src/app/reports/report-list.component.html create mode 100644 src/app/reports/report-list.component.ts create mode 100644 src/app/reports/reports.component.html create mode 100644 src/app/reports/reports.component.ts create mode 100644 src/app/reports/reports.module.ts rename src/app/{tools => reports}/reused-passwords-report.component.html (100%) rename src/app/{tools => reports}/reused-passwords-report.component.ts (100%) rename src/app/{tools => reports}/unsecured-websites-report.component.html (100%) rename src/app/{tools => reports}/unsecured-websites-report.component.ts (100%) rename src/app/{tools => reports}/weak-passwords-report.component.html (100%) rename src/app/{tools => reports}/weak-passwords-report.component.ts (100%) diff --git a/src/app/components/premium-badge.component.ts b/src/app/components/premium-badge.component.ts new file mode 100644 index 00000000..86a88d51 --- /dev/null +++ b/src/app/components/premium-badge.component.ts @@ -0,0 +1,19 @@ +import { Component } from "@angular/core"; + +import { MessagingService } from "jslib-common/abstractions/messaging.service"; + +@Component({ + selector: "app-premium-badge", + template: ` + + `, +}) +export class PremiumBadgeComponent { + constructor(private messagingService: MessagingService) {} + + premiumRequired() { + this.messagingService.send("premiumRequired"); + } +} diff --git a/src/app/layouts/navbar.component.html b/src/app/layouts/navbar.component.html index 13fc0846..c03c2bdf 100644 --- a/src/app/layouts/navbar.component.html +++ b/src/app/layouts/navbar.component.html @@ -24,6 +24,9 @@
  • + diff --git a/src/app/organizations/tools/exposed-passwords-report.component.ts b/src/app/organizations/tools/exposed-passwords-report.component.ts index 611d9cd1..1a860864 100644 --- a/src/app/organizations/tools/exposed-passwords-report.component.ts +++ b/src/app/organizations/tools/exposed-passwords-report.component.ts @@ -11,11 +11,11 @@ import { StateService } from "jslib-common/abstractions/state.service"; import { Cipher } from "jslib-common/models/domain/cipher"; import { CipherView } from "jslib-common/models/view/cipherView"; -import { ExposedPasswordsReportComponent as BaseExposedPasswordsReportComponent } from "../../tools/exposed-passwords-report.component"; +import { ExposedPasswordsReportComponent as BaseExposedPasswordsReportComponent } from "../../reports/exposed-passwords-report.component"; @Component({ selector: "app-exposed-passwords-report", - templateUrl: "../../tools/exposed-passwords-report.component.html", + templateUrl: "../../reports/exposed-passwords-report.component.html", }) export class ExposedPasswordsReportComponent extends BaseExposedPasswordsReportComponent { manageableCiphers: Cipher[]; diff --git a/src/app/organizations/tools/inactive-two-factor-report.component.ts b/src/app/organizations/tools/inactive-two-factor-report.component.ts index 3964468f..5aec67d5 100644 --- a/src/app/organizations/tools/inactive-two-factor-report.component.ts +++ b/src/app/organizations/tools/inactive-two-factor-report.component.ts @@ -10,11 +10,11 @@ import { PasswordRepromptService } from "jslib-common/abstractions/passwordRepro import { StateService } from "jslib-common/abstractions/state.service"; import { CipherView } from "jslib-common/models/view/cipherView"; -import { InactiveTwoFactorReportComponent as BaseInactiveTwoFactorReportComponent } from "../../tools/inactive-two-factor-report.component"; +import { InactiveTwoFactorReportComponent as BaseInactiveTwoFactorReportComponent } from "../../reports/inactive-two-factor-report.component"; @Component({ selector: "app-inactive-two-factor-report", - templateUrl: "../../tools/inactive-two-factor-report.component.html", + templateUrl: "../../reports/inactive-two-factor-report.component.html", }) export class InactiveTwoFactorReportComponent extends BaseInactiveTwoFactorReportComponent { constructor( diff --git a/src/app/organizations/tools/reused-passwords-report.component.ts b/src/app/organizations/tools/reused-passwords-report.component.ts index 6b9bc975..4aa8ab70 100644 --- a/src/app/organizations/tools/reused-passwords-report.component.ts +++ b/src/app/organizations/tools/reused-passwords-report.component.ts @@ -10,11 +10,11 @@ import { StateService } from "jslib-common/abstractions/state.service"; import { Cipher } from "jslib-common/models/domain/cipher"; import { CipherView } from "jslib-common/models/view/cipherView"; -import { ReusedPasswordsReportComponent as BaseReusedPasswordsReportComponent } from "../../tools/reused-passwords-report.component"; +import { ReusedPasswordsReportComponent as BaseReusedPasswordsReportComponent } from "../../reports/reused-passwords-report.component"; @Component({ selector: "app-reused-passwords-report", - templateUrl: "../../tools/reused-passwords-report.component.html", + templateUrl: "../../reports/reused-passwords-report.component.html", }) export class ReusedPasswordsReportComponent extends BaseReusedPasswordsReportComponent { manageableCiphers: Cipher[]; diff --git a/src/app/organizations/tools/unsecured-websites-report.component.ts b/src/app/organizations/tools/unsecured-websites-report.component.ts index 2b0b87f8..90911462 100644 --- a/src/app/organizations/tools/unsecured-websites-report.component.ts +++ b/src/app/organizations/tools/unsecured-websites-report.component.ts @@ -9,11 +9,11 @@ import { PasswordRepromptService } from "jslib-common/abstractions/passwordRepro import { StateService } from "jslib-common/abstractions/state.service"; import { CipherView } from "jslib-common/models/view/cipherView"; -import { UnsecuredWebsitesReportComponent as BaseUnsecuredWebsitesReportComponent } from "../../tools/unsecured-websites-report.component"; +import { UnsecuredWebsitesReportComponent as BaseUnsecuredWebsitesReportComponent } from "../../reports/unsecured-websites-report.component"; @Component({ selector: "app-unsecured-websites-report", - templateUrl: "../../tools/unsecured-websites-report.component.html", + templateUrl: "../../reports/unsecured-websites-report.component.html", }) export class UnsecuredWebsitesReportComponent extends BaseUnsecuredWebsitesReportComponent { constructor( diff --git a/src/app/organizations/tools/weak-passwords-report.component.ts b/src/app/organizations/tools/weak-passwords-report.component.ts index ca7a46b2..b79b73b0 100644 --- a/src/app/organizations/tools/weak-passwords-report.component.ts +++ b/src/app/organizations/tools/weak-passwords-report.component.ts @@ -11,11 +11,11 @@ import { StateService } from "jslib-common/abstractions/state.service"; import { Cipher } from "jslib-common/models/domain/cipher"; import { CipherView } from "jslib-common/models/view/cipherView"; -import { WeakPasswordsReportComponent as BaseWeakPasswordsReportComponent } from "../../tools/weak-passwords-report.component"; +import { WeakPasswordsReportComponent as BaseWeakPasswordsReportComponent } from "../../reports/weak-passwords-report.component"; @Component({ selector: "app-weak-passwords-report", - templateUrl: "../../tools/weak-passwords-report.component.html", + templateUrl: "../../reports/weak-passwords-report.component.html", }) export class WeakPasswordsReportComponent extends BaseWeakPasswordsReportComponent { manageableCiphers: Cipher[]; diff --git a/src/app/oss-routing.module.ts b/src/app/oss-routing.module.ts index df7c5e1c..6ae80470 100644 --- a/src/app/oss-routing.module.ts +++ b/src/app/oss-routing.module.ts @@ -64,16 +64,10 @@ import { SponsoredFamiliesComponent } from "./settings/sponsored-families.compon import { TwoFactorSetupComponent } from "./settings/two-factor-setup.component"; import { UserBillingComponent } from "./settings/user-billing.component"; import { UserSubscriptionComponent } from "./settings/user-subscription.component"; -import { BreachReportComponent } from "./tools/breach-report.component"; import { ExportComponent } from "./tools/export.component"; -import { ExposedPasswordsReportComponent } from "./tools/exposed-passwords-report.component"; import { ImportComponent } from "./tools/import.component"; -import { InactiveTwoFactorReportComponent } from "./tools/inactive-two-factor-report.component"; import { PasswordGeneratorComponent } from "./tools/password-generator.component"; -import { ReusedPasswordsReportComponent } from "./tools/reused-passwords-report.component"; import { ToolsComponent } from "./tools/tools.component"; -import { UnsecuredWebsitesReportComponent } from "./tools/unsecured-websites-report.component"; -import { WeakPasswordsReportComponent } from "./tools/weak-passwords-report.component"; import { VaultComponent } from "./vault/vault.component"; const routes: Routes = [ @@ -242,38 +236,12 @@ const routes: Routes = [ component: PasswordGeneratorComponent, data: { titleId: "generator" }, }, - { - path: "breach-report", - component: BreachReportComponent, - data: { titleId: "dataBreachReport" }, - }, - { - path: "reused-passwords-report", - component: ReusedPasswordsReportComponent, - data: { titleId: "reusedPasswordsReport" }, - }, - { - path: "unsecured-websites-report", - component: UnsecuredWebsitesReportComponent, - data: { titleId: "unsecuredWebsitesReport" }, - }, - { - path: "weak-passwords-report", - component: WeakPasswordsReportComponent, - data: { titleId: "weakPasswordsReport" }, - }, - { - path: "exposed-passwords-report", - component: ExposedPasswordsReportComponent, - data: { titleId: "exposedPasswordsReport" }, - }, - { - path: "inactive-two-factor-report", - component: InactiveTwoFactorReportComponent, - data: { titleId: "inactive2faReport" }, - }, ], }, + { + path: "reports", + loadChildren: async () => (await import("./reports/reports.module")).ReportsModule, + }, { path: "setup/families-for-enterprise", component: FamiliesForEnterpriseSetupComponent }, ], }, diff --git a/src/app/oss.module.ts b/src/app/oss.module.ts index 2bc8e55b..f5ea6a9b 100644 --- a/src/app/oss.module.ts +++ b/src/app/oss.module.ts @@ -53,6 +53,7 @@ import localeZhTw from "@angular/common/locales/zh-Hant"; import { NgModule } from "@angular/core"; import { FormsModule, ReactiveFormsModule } from "@angular/forms"; import { RouterModule } from "@angular/router"; +import { BadgeModule, ButtonModule } from "@bitwarden/components"; import { InfiniteScrollModule } from "ngx-infinite-scroll"; import { ToastrModule } from "ngx-toastr"; @@ -78,6 +79,7 @@ import { VerifyRecoverDeleteComponent } from "./accounts/verify-recover-delete.c import { NestedCheckboxComponent } from "./components/nested-checkbox.component"; import { PasswordRepromptComponent } from "./components/password-reprompt.component"; import { PasswordStrengthComponent } from "./components/password-strength.component"; +import { PremiumBadgeComponent } from "./components/premium-badge.component"; import { FooterComponent } from "./layouts/footer.component"; import { FrontendLayoutComponent } from "./layouts/frontend-layout.component"; import { NavbarComponent } from "./layouts/navbar.component"; @@ -135,6 +137,15 @@ import { CollectionsComponent as OrgCollectionsComponent } from "./organizations import { GroupingsComponent as OrgGroupingsComponent } from "./organizations/vault/groupings.component"; import { VaultComponent as OrgVaultComponent } from "./organizations/vault/vault.component"; import { ProvidersComponent } from "./providers/providers.component"; +import { BreachReportComponent } from "./reports/breach-report.component"; +import { ExposedPasswordsReportComponent } from "./reports/exposed-passwords-report.component"; +import { InactiveTwoFactorReportComponent } from "./reports/inactive-two-factor-report.component"; +import { ReportCardComponent } from "./reports/report-card.component"; +import { ReportListComponent } from "./reports/report-list.component"; +import { ReportsComponent } from "./reports/reports.component"; +import { ReusedPasswordsReportComponent } from "./reports/reused-passwords-report.component"; +import { UnsecuredWebsitesReportComponent } from "./reports/unsecured-websites-report.component"; +import { WeakPasswordsReportComponent } from "./reports/weak-passwords-report.component"; import { AccessComponent } from "./send/access.component"; import { AddEditComponent as SendAddEditComponent } from "./send/add-edit.component"; import { EffluxDatesComponent as SendEffluxDatesComponent } from "./send/efflux-dates.component"; @@ -184,17 +195,11 @@ import { UserBillingComponent } from "./settings/user-billing.component"; import { UserSubscriptionComponent } from "./settings/user-subscription.component"; import { VaultTimeoutInputComponent } from "./settings/vault-timeout-input.component"; import { VerifyEmailComponent } from "./settings/verify-email.component"; -import { BreachReportComponent } from "./tools/breach-report.component"; import { ExportComponent } from "./tools/export.component"; -import { ExposedPasswordsReportComponent } from "./tools/exposed-passwords-report.component"; import { ImportComponent } from "./tools/import.component"; -import { InactiveTwoFactorReportComponent } from "./tools/inactive-two-factor-report.component"; import { PasswordGeneratorHistoryComponent } from "./tools/password-generator-history.component"; import { PasswordGeneratorComponent } from "./tools/password-generator.component"; -import { ReusedPasswordsReportComponent } from "./tools/reused-passwords-report.component"; import { ToolsComponent } from "./tools/tools.component"; -import { UnsecuredWebsitesReportComponent } from "./tools/unsecured-websites-report.component"; -import { WeakPasswordsReportComponent } from "./tools/weak-passwords-report.component"; import { AddEditCustomFieldsComponent } from "./vault/add-edit-custom-fields.component"; import { AddEditComponent } from "./vault/add-edit.component"; import { AttachmentsComponent } from "./vault/attachments.component"; @@ -271,8 +276,11 @@ registerLocaleData(localeZhTw, "zh-TW"); ReactiveFormsModule, RouterModule, ToastrModule, + BadgeModule, + ButtonModule, ], declarations: [ + PremiumBadgeComponent, AcceptEmergencyComponent, AcceptOrganizationComponent, AccessComponent, @@ -384,6 +392,9 @@ registerLocaleData(localeZhTw, "zh-TW"); RecoverTwoFactorComponent, RegisterComponent, RemovePasswordComponent, + ReportCardComponent, + ReportListComponent, + ReportsComponent, RequireSsoPolicyComponent, ResetPasswordPolicyComponent, ReusedPasswordsReportComponent, diff --git a/src/app/tools/breach-report.component.html b/src/app/reports/breach-report.component.html similarity index 95% rename from src/app/tools/breach-report.component.html rename to src/app/reports/breach-report.component.html index edecda17..b6195bfd 100644 --- a/src/app/tools/breach-report.component.html +++ b/src/app/reports/breach-report.component.html @@ -17,7 +17,13 @@ {{ "breachCheckUsernameEmail" | i18n }} - diff --git a/src/app/tools/breach-report.component.ts b/src/app/reports/breach-report.component.ts similarity index 100% rename from src/app/tools/breach-report.component.ts rename to src/app/reports/breach-report.component.ts diff --git a/src/app/tools/cipher-report.component.ts b/src/app/reports/cipher-report.component.ts similarity index 100% rename from src/app/tools/cipher-report.component.ts rename to src/app/reports/cipher-report.component.ts diff --git a/src/app/tools/exposed-passwords-report.component.html b/src/app/reports/exposed-passwords-report.component.html similarity index 95% rename from src/app/tools/exposed-passwords-report.component.html rename to src/app/reports/exposed-passwords-report.component.html index 15368122..496cd108 100644 --- a/src/app/tools/exposed-passwords-report.component.html +++ b/src/app/reports/exposed-passwords-report.component.html @@ -2,7 +2,14 @@

    {{ "exposedPasswordsReport" | i18n }}

    {{ "exposedPasswordsReportDesc" | i18n }}

    - diff --git a/src/app/tools/exposed-passwords-report.component.ts b/src/app/reports/exposed-passwords-report.component.ts similarity index 100% rename from src/app/tools/exposed-passwords-report.component.ts rename to src/app/reports/exposed-passwords-report.component.ts diff --git a/src/app/tools/inactive-two-factor-report.component.html b/src/app/reports/inactive-two-factor-report.component.html similarity index 100% rename from src/app/tools/inactive-two-factor-report.component.html rename to src/app/reports/inactive-two-factor-report.component.html diff --git a/src/app/tools/inactive-two-factor-report.component.ts b/src/app/reports/inactive-two-factor-report.component.ts similarity index 100% rename from src/app/tools/inactive-two-factor-report.component.ts rename to src/app/reports/inactive-two-factor-report.component.ts diff --git a/src/app/reports/report-card.component.html b/src/app/reports/report-card.component.html new file mode 100644 index 00000000..1816f11c --- /dev/null +++ b/src/app/reports/report-card.component.html @@ -0,0 +1,25 @@ + +
    +
    +
    +
    +
    +

    {{ report.title | i18n }}

    +

    {{ report.description | i18n }}

    +
    + {{ "premium" | i18n }} +
    +
    diff --git a/src/app/reports/report-card.component.ts b/src/app/reports/report-card.component.ts new file mode 100644 index 00000000..d6a9470c --- /dev/null +++ b/src/app/reports/report-card.component.ts @@ -0,0 +1,166 @@ +import { Component, Input, OnInit } from "@angular/core"; +import { DomSanitizer } from "@angular/platform-browser"; + +import { MessagingService } from "jslib-common/abstractions/messaging.service"; +import { StateService } from "jslib-common/abstractions/state.service"; + +export enum ReportTypes { + "exposedPasswords" = "exposedPasswords", + "reusedPasswords" = "reusedPasswords", + "weakPasswords" = "weakPasswords", + "unsecuredWebsites" = "unsecuredWebsites", + "inactive2fa" = "inactive2fa", + "dataBreach" = "dataBreach", +} + +type ReportEntry = { + title: string; + description: string; + route: string; + icon: string; + requiresPremium: boolean; +}; + +const reports: Record = { + exposedPasswords: { + title: "exposedPasswordsReport", + description: "exposedPasswordsReportDesc", + route: "exposed-passwords-report", + icon: ` + + + + + + + + + + + + + `, + requiresPremium: true, + }, + reusedPasswords: { + title: "reusedPasswordsReport", + description: "reusedPasswordsReportDesc", + route: "reused-passwords-report", + icon: ` + + + + + + `, + requiresPremium: true, + }, + weakPasswords: { + title: "weakPasswordsReport", + description: "weakPasswordsReportDesc", + route: "weak-passwords-report", + icon: ` + + + + + + + `, + requiresPremium: true, + }, + unsecuredWebsites: { + title: "unsecuredWebsitesReport", + description: "unsecuredWebsitesReportDesc", + route: "unsecured-websites-report", + icon: ` + + + + + + + + + `, + requiresPremium: true, + }, + inactive2fa: { + title: "inactive2faReport", + description: "inactive2faReportDesc", + route: "inactive-two-factor-report", + icon: ` + + + + + + + `, + requiresPremium: true, + }, + dataBreach: { + title: "dataBreachReport", + description: "breachDesc", + route: "breach-report", + icon: ` + + + + + + + + + + + `, + requiresPremium: false, + }, +}; + +@Component({ + selector: "app-report-card", + templateUrl: "report-card.component.html", +}) +export class ReportCardComponent implements OnInit { + @Input() type: ReportTypes; + + report: ReportEntry; + + hasPremium: boolean; + + constructor( + private stateService: StateService, + private messagingService: MessagingService, + private sanitizer: DomSanitizer + ) {} + + async ngOnInit() { + this.report = reports[this.type]; + + this.hasPremium = await this.stateService.getCanAccessPremium(); + } + + get premium() { + return this.report.requiresPremium && !this.hasPremium; + } + + get route() { + if (this.premium) { + return null; + } + + return this.report.route; + } + + get icon() { + return this.sanitizer.bypassSecurityTrustHtml(this.report.icon); + } + + click() { + if (this.premium) { + this.messagingService.send("premiumRequired"); + } + } +} diff --git a/src/app/reports/report-list.component.html b/src/app/reports/report-list.component.html new file mode 100644 index 00000000..e3028731 --- /dev/null +++ b/src/app/reports/report-list.component.html @@ -0,0 +1,11 @@ + + +

    {{ "reportsDesc" | i18n }}

    + +
    +
    + +
    +
    diff --git a/src/app/reports/report-list.component.ts b/src/app/reports/report-list.component.ts new file mode 100644 index 00000000..48894984 --- /dev/null +++ b/src/app/reports/report-list.component.ts @@ -0,0 +1,18 @@ +import { Component } from "@angular/core"; + +import { ReportTypes } from "./report-card.component"; + +@Component({ + selector: "app-report-list", + templateUrl: "report-list.component.html", +}) +export class ReportListComponent { + reports = [ + ReportTypes.exposedPasswords, + ReportTypes.reusedPasswords, + ReportTypes.weakPasswords, + ReportTypes.unsecuredWebsites, + ReportTypes.inactive2fa, + ReportTypes.dataBreach, + ]; +} diff --git a/src/app/reports/reports.component.html b/src/app/reports/reports.component.html new file mode 100644 index 00000000..2978a9e6 --- /dev/null +++ b/src/app/reports/reports.component.html @@ -0,0 +1,12 @@ + diff --git a/src/app/reports/reports.component.ts b/src/app/reports/reports.component.ts new file mode 100644 index 00000000..c0e67ac5 --- /dev/null +++ b/src/app/reports/reports.component.ts @@ -0,0 +1,25 @@ +import { Component, OnDestroy } from "@angular/core"; +import { NavigationEnd, Router } from "@angular/router"; +import { Subscription } from "rxjs"; +import { filter } from "rxjs/operators"; + +@Component({ + selector: "app-reports", + templateUrl: "reports.component.html", +}) +export class ReportsComponent implements OnDestroy { + homepage = true; + subscription: Subscription; + + constructor(router: Router) { + this.subscription = router.events + .pipe(filter((event) => event instanceof NavigationEnd)) + .subscribe((event) => { + this.homepage = (event as NavigationEnd).url == "/reports"; + }); + } + + ngOnDestroy(): void { + this.subscription?.unsubscribe(); + } +} diff --git a/src/app/reports/reports.module.ts b/src/app/reports/reports.module.ts new file mode 100644 index 00000000..e9abf765 --- /dev/null +++ b/src/app/reports/reports.module.ts @@ -0,0 +1,60 @@ +import { NgModule } from "@angular/core"; +import { RouterModule, Routes } from "@angular/router"; + +import { AuthGuardService } from "jslib-angular/services/auth-guard.service"; + +import { BreachReportComponent } from "./breach-report.component"; +import { ExposedPasswordsReportComponent } from "./exposed-passwords-report.component"; +import { InactiveTwoFactorReportComponent } from "./inactive-two-factor-report.component"; +import { ReportListComponent } from "./report-list.component"; +import { ReportsComponent } from "./reports.component"; +import { ReusedPasswordsReportComponent } from "./reused-passwords-report.component"; +import { UnsecuredWebsitesReportComponent } from "./unsecured-websites-report.component"; +import { WeakPasswordsReportComponent } from "./weak-passwords-report.component"; + +const routes: Routes = [ + { + path: "", + component: ReportsComponent, + canActivate: [AuthGuardService], + children: [ + { path: "", pathMatch: "full", component: ReportListComponent, data: { homepage: true } }, + { + path: "breach-report", + component: BreachReportComponent, + data: { titleId: "dataBreachReport" }, + }, + { + path: "reused-passwords-report", + component: ReusedPasswordsReportComponent, + data: { titleId: "reusedPasswordsReport" }, + }, + { + path: "unsecured-websites-report", + component: UnsecuredWebsitesReportComponent, + data: { titleId: "unsecuredWebsitesReport" }, + }, + { + path: "weak-passwords-report", + component: WeakPasswordsReportComponent, + data: { titleId: "weakPasswordsReport" }, + }, + { + path: "exposed-passwords-report", + component: ExposedPasswordsReportComponent, + data: { titleId: "exposedPasswordsReport" }, + }, + { + path: "inactive-two-factor-report", + component: InactiveTwoFactorReportComponent, + data: { titleId: "inactive2faReport" }, + }, + ], + }, +]; + +@NgModule({ + imports: [RouterModule.forChild(routes)], + exports: [RouterModule], +}) +export class ReportsModule {} diff --git a/src/app/tools/reused-passwords-report.component.html b/src/app/reports/reused-passwords-report.component.html similarity index 100% rename from src/app/tools/reused-passwords-report.component.html rename to src/app/reports/reused-passwords-report.component.html diff --git a/src/app/tools/reused-passwords-report.component.ts b/src/app/reports/reused-passwords-report.component.ts similarity index 100% rename from src/app/tools/reused-passwords-report.component.ts rename to src/app/reports/reused-passwords-report.component.ts diff --git a/src/app/tools/unsecured-websites-report.component.html b/src/app/reports/unsecured-websites-report.component.html similarity index 100% rename from src/app/tools/unsecured-websites-report.component.html rename to src/app/reports/unsecured-websites-report.component.html diff --git a/src/app/tools/unsecured-websites-report.component.ts b/src/app/reports/unsecured-websites-report.component.ts similarity index 100% rename from src/app/tools/unsecured-websites-report.component.ts rename to src/app/reports/unsecured-websites-report.component.ts diff --git a/src/app/tools/weak-passwords-report.component.html b/src/app/reports/weak-passwords-report.component.html similarity index 100% rename from src/app/tools/weak-passwords-report.component.html rename to src/app/reports/weak-passwords-report.component.html diff --git a/src/app/tools/weak-passwords-report.component.ts b/src/app/reports/weak-passwords-report.component.ts similarity index 100% rename from src/app/tools/weak-passwords-report.component.ts rename to src/app/reports/weak-passwords-report.component.ts diff --git a/src/app/settings/emergency-access-add-edit.component.html b/src/app/settings/emergency-access-add-edit.component.html index c48b489e..b66a7451 100644 --- a/src/app/settings/emergency-access-add-edit.component.html +++ b/src/app/settings/emergency-access-add-edit.component.html @@ -9,7 +9,7 @@ > -
    diff --git a/src/app/vault/add-edit.component.html b/src/app/vault/add-edit.component.html index 14a8079b..37410ea5 100644 --- a/src/app/vault/add-edit.component.html +++ b/src/app/vault/add-edit.component.html @@ -187,15 +187,10 @@ title="{{ 'verificationCodeTotp' | i18n }}" class="ml-2" /> - - {{ "premium" | i18n }} - + Date: Tue, 29 Mar 2022 16:56:02 -0400 Subject: [PATCH 11/18] update jslib and remove date pipe from routing module (#1572) --- jslib | 2 +- src/app/oss-routing.module.ts | 2 -- src/app/oss.module.ts | 2 ++ 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/jslib b/jslib index fa73c13b..47473b7e 160000 --- a/jslib +++ b/jslib @@ -1 +1 @@ -Subproject commit fa73c13b8c9ed35cbb9909e342b143fa8a57f1a0 +Subproject commit 47473b7edebaf1cc48d459a8fcfc8edfddf359f1 diff --git a/src/app/oss-routing.module.ts b/src/app/oss-routing.module.ts index 6ae80470..d3120653 100644 --- a/src/app/oss-routing.module.ts +++ b/src/app/oss-routing.module.ts @@ -1,4 +1,3 @@ -import { DatePipe } from "@angular/common"; import { NgModule } from "@angular/core"; import { RouterModule, Routes } from "@angular/router"; @@ -442,6 +441,5 @@ const routes: Routes = [ }), ], exports: [RouterModule], - providers: [DatePipe], }) export class OssRoutingModule {} diff --git a/src/app/oss.module.ts b/src/app/oss.module.ts index f5ea6a9b..27a28457 100644 --- a/src/app/oss.module.ts +++ b/src/app/oss.module.ts @@ -57,6 +57,7 @@ import { BadgeModule, ButtonModule } from "@bitwarden/components"; import { InfiniteScrollModule } from "ngx-infinite-scroll"; import { ToastrModule } from "ngx-toastr"; +import { VerifyMasterPasswordComponent } from "jslib-angular/components/verify-master-password.component"; import { JslibModule } from "jslib-angular/jslib.module"; import { AcceptEmergencyComponent } from "./accounts/accept-emergency.component"; @@ -434,6 +435,7 @@ registerLocaleData(localeZhTw, "zh-TW"); VaultTimeoutInputComponent, VerifyEmailComponent, VerifyEmailTokenComponent, + VerifyMasterPasswordComponent, VerifyRecoverDeleteComponent, WeakPasswordsReportComponent, ], From 2652a2deae5f85ece7b2144d0844888da33ac763 Mon Sep 17 00:00:00 2001 From: Vince Grassia <593223+vgrassia@users.noreply.github.com> Date: Wed, 30 Mar 2022 17:21:00 -0400 Subject: [PATCH 12/18] Add release logic for 'web-sh' image (#1573) --- .github/workflows/release.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index ba101fc4..15baa896 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -137,6 +137,9 @@ jobs: else docker tag bitwarden/web:$_BRANCH_NAME $REGISTRY/web:$_RELEASE_VERSION docker tag bitwarden/web:$_BRANCH_NAME $REGISTRY/web:latest + + docker tag bitwarden/web:$_BRANCH_NAME $REGISTRY/web-sh:$_RELEASE_VERSION + docker tag bitwarden/web:$_BRANCH_NAME $REGISTRY/web-sh:latest fi - name: Push version and latest image @@ -147,6 +150,9 @@ jobs: docker push $REGISTRY/web:$_RELEASE_VERSION docker push $REGISTRY/web:latest + docker push $REGISTRY/web-sh:$_RELEASE_VERSION + docker push $REGISTRY/web-sh:latest + - name: Log out of Docker run: docker logout From cb8a40d9cd7d65fee3174e61929fa1c8d0845201 Mon Sep 17 00:00:00 2001 From: Kyle Spearrin Date: Thu, 31 Mar 2022 23:32:57 -0400 Subject: [PATCH 13/18] generator updates (#1575) * update generator * update css * add link to help article * update jslib * fix oss module and user type tip icon * update jslib * Revert "update jslib" This reverts commit b2b13ace5e55401294ea83aaac656cba62fe3614. * revert jslib update --- jslib | 2 +- src/app/oss-routing.module.ts | 4 ++-- src/app/oss.module.ts | 4 ++-- ...ator.component.html => generator.component.html} | 13 ++++++++++++- ...enerator.component.ts => generator.component.ts} | 8 ++++---- src/scss/pages.scss | 2 +- 6 files changed, 22 insertions(+), 11 deletions(-) rename src/app/tools/{password-generator.component.html => generator.component.html} (96%) rename src/app/tools/{password-generator.component.ts => generator.component.ts} (84%) diff --git a/jslib b/jslib index 47473b7e..e595c054 160000 --- a/jslib +++ b/jslib @@ -1 +1 @@ -Subproject commit 47473b7edebaf1cc48d459a8fcfc8edfddf359f1 +Subproject commit e595c0548ed1a481dbd024ec66975e3a453bd471 diff --git a/src/app/oss-routing.module.ts b/src/app/oss-routing.module.ts index d3120653..6c408c13 100644 --- a/src/app/oss-routing.module.ts +++ b/src/app/oss-routing.module.ts @@ -64,8 +64,8 @@ import { TwoFactorSetupComponent } from "./settings/two-factor-setup.component"; import { UserBillingComponent } from "./settings/user-billing.component"; import { UserSubscriptionComponent } from "./settings/user-subscription.component"; import { ExportComponent } from "./tools/export.component"; +import { GeneratorComponent } from "./tools/generator.component"; import { ImportComponent } from "./tools/import.component"; -import { PasswordGeneratorComponent } from "./tools/password-generator.component"; import { ToolsComponent } from "./tools/tools.component"; import { VaultComponent } from "./vault/vault.component"; @@ -232,7 +232,7 @@ const routes: Routes = [ { path: "export", component: ExportComponent, data: { titleId: "exportVault" } }, { path: "generator", - component: PasswordGeneratorComponent, + component: GeneratorComponent, data: { titleId: "generator" }, }, ], diff --git a/src/app/oss.module.ts b/src/app/oss.module.ts index 27a28457..b583d3b3 100644 --- a/src/app/oss.module.ts +++ b/src/app/oss.module.ts @@ -197,9 +197,9 @@ import { UserSubscriptionComponent } from "./settings/user-subscription.componen import { VaultTimeoutInputComponent } from "./settings/vault-timeout-input.component"; import { VerifyEmailComponent } from "./settings/verify-email.component"; import { ExportComponent } from "./tools/export.component"; +import { GeneratorComponent } from "./tools/generator.component"; import { ImportComponent } from "./tools/import.component"; import { PasswordGeneratorHistoryComponent } from "./tools/password-generator-history.component"; -import { PasswordGeneratorComponent } from "./tools/password-generator.component"; import { ToolsComponent } from "./tools/tools.component"; import { AddEditCustomFieldsComponent } from "./vault/add-edit-custom-fields.component"; import { AddEditComponent } from "./vault/add-edit.component"; @@ -378,7 +378,7 @@ registerLocaleData(localeZhTw, "zh-TW"); OrgUserGroupsComponent, OrgVaultComponent, OrgWeakPasswordsReportComponent, - PasswordGeneratorComponent, + GeneratorComponent, PasswordGeneratorHistoryComponent, PasswordGeneratorPolicyComponent, PasswordRepromptComponent, diff --git a/src/app/tools/password-generator.component.html b/src/app/tools/generator.component.html similarity index 96% rename from src/app/tools/password-generator.component.html rename to src/app/tools/generator.component.html index 19291398..ebd4c56d 100644 --- a/src/app/tools/password-generator.component.html +++ b/src/app/tools/generator.component.html @@ -232,7 +232,18 @@
    - +
    Date: Fri, 1 Apr 2022 12:29:52 +0200 Subject: [PATCH 14/18] Autosync the updated translations (#1577) Co-authored-by: github-actions <> --- src/locales/af/messages.json | 74 ++++++-- src/locales/az/messages.json | 52 +++++- src/locales/be/messages.json | 76 ++++++-- src/locales/bg/messages.json | 52 +++++- src/locales/bn/messages.json | 74 ++++++-- src/locales/bs/messages.json | 304 +++++++++++++++++++------------- src/locales/ca/messages.json | 52 +++++- src/locales/cs/messages.json | 52 +++++- src/locales/da/messages.json | 56 +++++- src/locales/de/messages.json | 52 +++++- src/locales/el/messages.json | 52 +++++- src/locales/en_GB/messages.json | 52 +++++- src/locales/en_IN/messages.json | 52 +++++- src/locales/eo/messages.json | 52 +++++- src/locales/es/messages.json | 52 +++++- src/locales/et/messages.json | 52 +++++- src/locales/fi/messages.json | 72 ++++++-- src/locales/fil/messages.json | 76 ++++++-- src/locales/fr/messages.json | 56 +++++- src/locales/he/messages.json | 52 +++++- src/locales/hi/messages.json | 76 ++++++-- src/locales/hr/messages.json | 52 +++++- src/locales/hu/messages.json | 52 +++++- src/locales/id/messages.json | 52 +++++- src/locales/it/messages.json | 52 +++++- src/locales/ja/messages.json | 54 +++++- src/locales/ka/messages.json | 76 ++++++-- src/locales/km/messages.json | 76 ++++++-- src/locales/kn/messages.json | 52 +++++- src/locales/ko/messages.json | 52 +++++- src/locales/lv/messages.json | 52 +++++- src/locales/ml/messages.json | 52 +++++- src/locales/nb/messages.json | 262 ++++++++++++++++----------- src/locales/nl/messages.json | 54 +++++- src/locales/nn/messages.json | 72 ++++++-- src/locales/pl/messages.json | 56 +++++- src/locales/pt_BR/messages.json | 68 ++++++- src/locales/pt_PT/messages.json | 54 +++++- src/locales/ro/messages.json | 76 ++++++-- src/locales/ru/messages.json | 56 +++++- src/locales/si/messages.json | 76 ++++++-- src/locales/sk/messages.json | 52 +++++- src/locales/sl/messages.json | 76 ++++++-- src/locales/sr/messages.json | 76 ++++++-- src/locales/sv/messages.json | 52 +++++- src/locales/tr/messages.json | 52 +++++- src/locales/uk/messages.json | 68 ++++++- src/locales/vi/messages.json | 60 ++++++- src/locales/zh_CN/messages.json | 74 ++++++-- src/locales/zh_TW/messages.json | 164 +++++++++++------ 50 files changed, 3029 insertions(+), 529 deletions(-) diff --git a/src/locales/af/messages.json b/src/locales/af/messages.json index 954cca38..80fa367d 100644 --- a/src/locales/af/messages.json +++ b/src/locales/af/messages.json @@ -187,7 +187,12 @@ "message": "Wysig vouer" }, "baseDomain": { - "message": "Basisdomein" + "message": "Basisdomein", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Gasheer", @@ -1425,11 +1430,14 @@ "reports": { "message": "Verslae" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { - "message": "Unsecured Websites Report" + "message": "Unsecure Websites" }, "unsecuredWebsitesReportDesc": { - "message": "Using unsecured websites with the http:// scheme can be dangerous. If the website allows, you should always access it using the https:// scheme so that your connection is encrypted." + "message": "URLs that start with http:// don’t use the best available encryption. Change the Login URIs for these accounts to https:// for safer browsing." }, "unsecuredWebsitesFound": { "message": "Unsecured Websites Found" @@ -1447,10 +1455,10 @@ "message": "No items in your vault have unsecured URIs." }, "inactive2faReport": { - "message": "Inactive 2FA Report" + "message": "Inactive Two-step Login" }, "inactive2faReportDesc": { - "message": "Two-factor authentication (2FA) is an important security setting that helps secure your accounts. If the website offers it, you should always enable two-factor authentication." + "message": "Two-step Login adds a layer of protection to your accounts. Turn on Two-Step Login using Bitwarden Authenticator for these accounts or use an alternative method." }, "inactive2faFound": { "message": "Logins Without 2FA Found" @@ -1471,10 +1479,10 @@ "message": "Instruksies" }, "exposedPasswordsReport": { - "message": "Exposed Passwords Report" + "message": "Exposed Passwords" }, "exposedPasswordsReportDesc": { - "message": "Exposed passwords are passwords that have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." + "message": "Passwords exposed in a data breach are easy targets for attackers. Change these passwords to prevent potential break-ins." }, "exposedPasswordsFound": { "message": "Blootgestelde wagwoorde gevind" @@ -1504,10 +1512,10 @@ } }, "weakPasswordsReport": { - "message": "Weak Passwords Report" + "message": "Weak Passwords" }, "weakPasswordsReportDesc": { - "message": "Weak passwords can easily be guessed by hackers and automated tools that are used to crack passwords. The Bitwarden password generator can help you create strong passwords." + "message": "Weak passwords can be easily guessed by attackers. Change these passwords to strong ones using the Password Generator." }, "weakPasswordsFound": { "message": "Swak wagwoorde gevind" @@ -1525,10 +1533,10 @@ "message": "Geen items in u kluis het swak wagwoorde nie." }, "reusedPasswordsReport": { - "message": "Reused Passwords Report" + "message": "Reused Passwords" }, "reusedPasswordsReportDesc": { - "message": "If a service that you use is compromised, reusing the same password elsewhere can allow hackers to easily gain access to more of your online accounts. You should use a unique password for every account or service." + "message": "Reusing passwords makes it easier for attackers to break into multiple accounts. Change these passwords so that each is unique." }, "reusedPasswordsFound": { "message": "Hergebruikte wagwoorde gevind" @@ -1558,7 +1566,7 @@ "message": "Databreukverslag" }, "breachDesc": { - "message": "A \"breach\" is an incident where a site's data has been illegally accessed by hackers and then released publicly. Review the types of data that were compromised (email addresses, passwords, credit cards etc.) and take appropriate action, such as changing passwords." + "message": "Breached accounts can expose your personal information. Secure breached accounts by enabling 2FA or creating a stronger password." }, "breachCheckUsernameEmail": { "message": "Check any usernames or email addresses that you use." @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/az/messages.json b/src/locales/az/messages.json index 39d0d929..0c520243 100644 --- a/src/locales/az/messages.json +++ b/src/locales/az/messages.json @@ -187,7 +187,12 @@ "message": "Qovluğa düzəliş et" }, "baseDomain": { - "message": "Baza domeni" + "message": "Baza domeni", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Host", @@ -1425,6 +1430,9 @@ "reports": { "message": "Hesabatlar" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Təhlükəli veb sayt hesabatları" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/be/messages.json b/src/locales/be/messages.json index 91021ec3..bb6a64e4 100644 --- a/src/locales/be/messages.json +++ b/src/locales/be/messages.json @@ -187,7 +187,12 @@ "message": "Рэдагаваць папку" }, "baseDomain": { - "message": "Асноўны дамен" + "message": "Асноўны дамен", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Хост", @@ -1425,11 +1430,14 @@ "reports": { "message": "Справаздачы" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { - "message": "Unsecured Websites Report" + "message": "Unsecure Websites" }, "unsecuredWebsitesReportDesc": { - "message": "Using unsecured websites with the http:// scheme can be dangerous. If the website allows, you should always access it using the https:// scheme so that your connection is encrypted." + "message": "URLs that start with http:// don’t use the best available encryption. Change the Login URIs for these accounts to https:// for safer browsing." }, "unsecuredWebsitesFound": { "message": "Unsecured Websites Found" @@ -1447,10 +1455,10 @@ "message": "No items in your vault have unsecured URIs." }, "inactive2faReport": { - "message": "Inactive 2FA Report" + "message": "Inactive Two-step Login" }, "inactive2faReportDesc": { - "message": "Two-factor authentication (2FA) is an important security setting that helps secure your accounts. If the website offers it, you should always enable two-factor authentication." + "message": "Two-step Login adds a layer of protection to your accounts. Turn on Two-Step Login using Bitwarden Authenticator for these accounts or use an alternative method." }, "inactive2faFound": { "message": "Logins Without 2FA Found" @@ -1471,10 +1479,10 @@ "message": "Instructions" }, "exposedPasswordsReport": { - "message": "Exposed Passwords Report" + "message": "Exposed Passwords" }, "exposedPasswordsReportDesc": { - "message": "Exposed passwords are passwords that have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." + "message": "Passwords exposed in a data breach are easy targets for attackers. Change these passwords to prevent potential break-ins." }, "exposedPasswordsFound": { "message": "Exposed Passwords Found" @@ -1504,10 +1512,10 @@ } }, "weakPasswordsReport": { - "message": "Weak Passwords Report" + "message": "Weak Passwords" }, "weakPasswordsReportDesc": { - "message": "Weak passwords can easily be guessed by hackers and automated tools that are used to crack passwords. The Bitwarden password generator can help you create strong passwords." + "message": "Weak passwords can be easily guessed by attackers. Change these passwords to strong ones using the Password Generator." }, "weakPasswordsFound": { "message": "Weak Passwords Found" @@ -1525,10 +1533,10 @@ "message": "No items in your vault have weak passwords." }, "reusedPasswordsReport": { - "message": "Reused Passwords Report" + "message": "Reused Passwords" }, "reusedPasswordsReportDesc": { - "message": "If a service that you use is compromised, reusing the same password elsewhere can allow hackers to easily gain access to more of your online accounts. You should use a unique password for every account or service." + "message": "Reusing passwords makes it easier for attackers to break into multiple accounts. Change these passwords so that each is unique." }, "reusedPasswordsFound": { "message": "Reused Passwords Found" @@ -1555,10 +1563,10 @@ } }, "dataBreachReport": { - "message": "Data Breach Report" + "message": "Data Breach" }, "breachDesc": { - "message": "A \"breach\" is an incident where a site's data has been illegally accessed by hackers and then released publicly. Review the types of data that were compromised (email addresses, passwords, credit cards etc.) and take appropriate action, such as changing passwords." + "message": "Breached accounts can expose your personal information. Secure breached accounts by enabling 2FA or creating a stronger password." }, "breachCheckUsernameEmail": { "message": "Check any usernames or email addresses that you use." @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/bg/messages.json b/src/locales/bg/messages.json index 22e80325..a209e699 100644 --- a/src/locales/bg/messages.json +++ b/src/locales/bg/messages.json @@ -187,7 +187,12 @@ "message": "Редактиране на папка" }, "baseDomain": { - "message": "Основен домейн" + "message": "Основен домейн", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Име на домейн", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Сървър", @@ -1425,6 +1430,9 @@ "reports": { "message": "Доклади" }, + "reportsDesc": { + "message": "Открийте и отстранете проблемите със защитата на профилите си като щракнете върху докладите по-долу." + }, "unsecuredWebsitesReport": { "message": "Доклад за сайтове без защита" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Обратно към докладите" + }, + "generator": { + "message": "Генератор" + }, + "whatWouldYouLikeToGenerate": { + "message": "Какво бихте искали да генерирате?" + }, + "passwordType": { + "message": "Тип парола" + }, + "regenerateUsername": { + "message": "Повторно генериране на потр. име" + }, + "generateUsername": { + "message": "Генериране на потр. име" + }, + "usernameType": { + "message": "Тип потребителско име" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Използвайте възможностите за под-адресиране на е-поща на своя доставчик." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Произволно" + }, + "randomWord": { + "message": "Произволна дума" + }, + "service": { + "message": "Услуга" } } diff --git a/src/locales/bn/messages.json b/src/locales/bn/messages.json index 861d575f..615d3a79 100644 --- a/src/locales/bn/messages.json +++ b/src/locales/bn/messages.json @@ -187,7 +187,12 @@ "message": "ফোল্ডার সম্পাদনা" }, "baseDomain": { - "message": "ভিত্তি ডোমেইন" + "message": "ভিত্তি ডোমেইন", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "নিয়ন্ত্রণকর্তা", @@ -1425,11 +1430,14 @@ "reports": { "message": "Reports" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { - "message": "Unsecured Websites Report" + "message": "Unsecure Websites" }, "unsecuredWebsitesReportDesc": { - "message": "Using unsecured websites with the http:// scheme can be dangerous. If the website allows, you should always access it using the https:// scheme so that your connection is encrypted." + "message": "URLs that start with http:// don’t use the best available encryption. Change the Login URIs for these accounts to https:// for safer browsing." }, "unsecuredWebsitesFound": { "message": "Unsecured Websites Found" @@ -1447,10 +1455,10 @@ "message": "No items in your vault have unsecured URIs." }, "inactive2faReport": { - "message": "Inactive 2FA Report" + "message": "Inactive Two-step Login" }, "inactive2faReportDesc": { - "message": "Two-factor authentication (2FA) is an important security setting that helps secure your accounts. If the website offers it, you should always enable two-factor authentication." + "message": "Two-step Login adds a layer of protection to your accounts. Turn on Two-Step Login using Bitwarden Authenticator for these accounts or use an alternative method." }, "inactive2faFound": { "message": "Logins Without 2FA Found" @@ -1471,10 +1479,10 @@ "message": "Instructions" }, "exposedPasswordsReport": { - "message": "Exposed Passwords Report" + "message": "Exposed Passwords" }, "exposedPasswordsReportDesc": { - "message": "Exposed passwords are passwords that have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." + "message": "Passwords exposed in a data breach are easy targets for attackers. Change these passwords to prevent potential break-ins." }, "exposedPasswordsFound": { "message": "Exposed Passwords Found" @@ -1504,7 +1512,7 @@ } }, "weakPasswordsReport": { - "message": "Weak Passwords Report" + "message": "Weak Passwords" }, "weakPasswordsReportDesc": { "message": "দুর্বল পাসওয়ার্ডগুলি সহজেই হ্যাকার এবং স্বয়ংক্রিয় সরঞ্জামগুলির দ্বারা অনুমান করা যায় যা পাসওয়ার্ড ক্র্যাক করার জন্য ব্যবহৃত হয়। Bitwarden পাসওয়ার্ড উৎপাদক আপনাকে শক্তিশালী পাসওয়ার্ড তৈরি করতে সহায়তা করতে পারে।" @@ -1525,10 +1533,10 @@ "message": "No items in your vault have weak passwords." }, "reusedPasswordsReport": { - "message": "Reused Passwords Report" + "message": "Reused Passwords" }, "reusedPasswordsReportDesc": { - "message": "If a service that you use is compromised, reusing the same password elsewhere can allow hackers to easily gain access to more of your online accounts. You should use a unique password for every account or service." + "message": "Reusing passwords makes it easier for attackers to break into multiple accounts. Change these passwords so that each is unique." }, "reusedPasswordsFound": { "message": "Reused Passwords Found" @@ -1555,10 +1563,10 @@ } }, "dataBreachReport": { - "message": "Data Breach Report" + "message": "Data Breach" }, "breachDesc": { - "message": "A \"breach\" is an incident where a site's data has been illegally accessed by hackers and then released publicly. Review the types of data that were compromised (email addresses, passwords, credit cards etc.) and take appropriate action, such as changing passwords." + "message": "Breached accounts can expose your personal information. Secure breached accounts by enabling 2FA or creating a stronger password." }, "breachCheckUsernameEmail": { "message": "Check any usernames or email addresses that you use." @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/bs/messages.json b/src/locales/bs/messages.json index f1611257..04d8cc46 100644 --- a/src/locales/bs/messages.json +++ b/src/locales/bs/messages.json @@ -1,6 +1,6 @@ { "pageTitle": { - "message": "$APP_NAME$ Web Vault", + "message": "$APP_NAME$ Veb Trezor", "description": "The title of the website in the browser window.", "placeholders": { "app_name": { @@ -10,10 +10,10 @@ } }, "whatTypeOfItem": { - "message": "What type of item is this?" + "message": "Koja je ovo vrsta stavke?" }, "name": { - "message": "Name" + "message": "Naziv" }, "uri": { "message": "URI" @@ -29,139 +29,139 @@ } }, "newUri": { - "message": "New URI" + "message": "Novi URI" }, "username": { - "message": "Username" + "message": "Korisničko ime" }, "password": { - "message": "Password" + "message": "Lozinka" }, "newPassword": { - "message": "New Password" + "message": "Nova lozinka" }, "passphrase": { - "message": "Passphrase" + "message": "Tajna fraza" }, "notes": { - "message": "Notes" + "message": "Bilješke" }, "customFields": { - "message": "Custom Fields" + "message": "Prilagođena polja" }, "cardholderName": { - "message": "Cardholder Name" + "message": "Ime vlasnika kartice" }, "number": { - "message": "Number" + "message": "Broj" }, "brand": { - "message": "Brand" + "message": "Brend" }, "expiration": { - "message": "Expiration" + "message": "Datum isteka" }, "securityCode": { - "message": "Security Code (CVV)" + "message": "Sigurnosni Kod (CVV)" }, "identityName": { - "message": "Identity Name" + "message": "Ime identiteta" }, "company": { - "message": "Company" + "message": "Preduzeće" }, "ssn": { - "message": "Social Security Number" + "message": "Broj Socijalnog Osiguranja" }, "passportNumber": { - "message": "Passport Number" + "message": "Broj Pasoša" }, "licenseNumber": { - "message": "License Number" + "message": "Broj Vozačke Dozvole" }, "email": { - "message": "Email" + "message": "Imejl" }, "phone": { - "message": "Phone" + "message": "Telefon" }, "january": { - "message": "January" + "message": "Januar" }, "february": { - "message": "February" + "message": "Februar" }, "march": { - "message": "March" + "message": "Mart" }, "april": { "message": "April" }, "may": { - "message": "May" + "message": "Maj" }, "june": { - "message": "June" + "message": "Jun" }, "july": { - "message": "July" + "message": "Jul" }, "august": { - "message": "August" + "message": "Avgust" }, "september": { - "message": "September" + "message": "Septembar" }, "october": { - "message": "October" + "message": "Oktobar" }, "november": { - "message": "November" + "message": "Novembar" }, "december": { - "message": "December" + "message": "Decembar" }, "title": { - "message": "Title" + "message": "Titula" }, "mr": { - "message": "Mr" + "message": "g." }, "mrs": { - "message": "Mrs" + "message": "gđa." }, "ms": { - "message": "Ms" + "message": "gđica." }, "dr": { - "message": "Dr" + "message": "dr" }, "expirationMonth": { - "message": "Expiration Month" + "message": "Mjesec Isteka" }, "expirationYear": { - "message": "Expiration Year" + "message": "Godina Isteka" }, "authenticatorKeyTotp": { - "message": "Authenticator Key (TOTP)" + "message": "Ključ Autentifikatora (TOTP)" }, "folder": { - "message": "Folder" + "message": "Fascikla" }, "newCustomField": { - "message": "New Custom Field" + "message": "Novo Prilagođeno Polje" }, "value": { - "message": "Value" + "message": "Vrijednost" }, "dragToSort": { - "message": "Drag to sort" + "message": "Povuci za sortiranje" }, "cfTypeText": { - "message": "Text" + "message": "Tekst" }, "cfTypeHidden": { - "message": "Hidden" + "message": "Skriveno" }, "cfTypeBoolean": { "message": "Boolean" @@ -187,7 +187,12 @@ "message": "Edit Folder" }, "baseDomain": { - "message": "Base domain" + "message": "Base domain", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Host", @@ -325,65 +330,65 @@ "message": "Middle Name" }, "lastName": { - "message": "Last Name" + "message": "Prezime" }, "fullName": { - "message": "Full Name" + "message": "Ime i prezime" }, "address1": { - "message": "Address 1" + "message": "Adresa 1" }, "address2": { - "message": "Address 2" + "message": "Adresa 2" }, "address3": { - "message": "Address 3" + "message": "Adresa 3" }, "cityTown": { - "message": "City / Town" + "message": "Grad / Naselje" }, "stateProvince": { - "message": "State / Province" + "message": "Država / Okrug" }, "zipPostalCode": { - "message": "Zip / Postal Code" + "message": "Zip / Poštanski Broj" }, "country": { - "message": "Country" + "message": "Zemlja" }, "shared": { - "message": "Shared" + "message": "Dijeljeno" }, "attachments": { - "message": "Attachments" + "message": "Prilozi" }, "select": { - "message": "Select" + "message": "Odaberite" }, "addItem": { - "message": "Add Item" + "message": "Dodajte Stavku" }, "editItem": { - "message": "Edit Item" + "message": "Uredite Stavku" }, "viewItem": { - "message": "View Item" + "message": "Prikaz Stavke" }, "ex": { - "message": "ex.", + "message": "npr.", "description": "Short abbreviation for 'example'." }, "other": { - "message": "Other" + "message": "Ostalo" }, "share": { - "message": "Share" + "message": "Podijelite" }, "moveToOrganization": { - "message": "Move to Organization" + "message": "Premjestite u Organizaciju" }, "valueCopied": { - "message": "$VALUE$ copied", + "message": "$VALUE$ kopirano", "description": "Value has been copied to the clipboard.", "placeholders": { "value": { @@ -393,85 +398,85 @@ } }, "copyValue": { - "message": "Copy Value", + "message": "Kopirajte Vrijednost", "description": "Copy value to clipboard" }, "copyPassword": { - "message": "Copy Password", + "message": "Kopirajte Lozinku", "description": "Copy password to clipboard" }, "copyUsername": { - "message": "Copy Username", + "message": "Kopirajte Korisničko ime", "description": "Copy username to clipboard" }, "copyNumber": { - "message": "Copy Number", + "message": "Kopirajte broj", "description": "Copy credit card number" }, "copySecurityCode": { - "message": "Copy Security Code", + "message": "Kopirajte Sigurnosni Kod", "description": "Copy credit card security code (CVV)" }, "copyUri": { - "message": "Copy URI", + "message": "Kopirajte URI", "description": "Copy URI to clipboard" }, "myVault": { - "message": "My Vault" + "message": "Moj trezor" }, "vault": { - "message": "Vault" + "message": "Trezor" }, "moveSelectedToOrg": { - "message": "Move Selected to Organization" + "message": "Premjestite Odabrano u Organizaciju" }, "deleteSelected": { - "message": "Delete Selected" + "message": "Obrišite Odabrano" }, "moveSelected": { - "message": "Move Selected" + "message": "Premjestite Odabrano" }, "selectAll": { - "message": "Select All" + "message": "Odaberite Sve" }, "unselectAll": { - "message": "Unselect All" + "message": "Poništite odabir" }, "launch": { - "message": "Launch" + "message": "Pokrenite" }, "newAttachment": { - "message": "Add New Attachment" + "message": "Dodajte Novi Prilog" }, "deletedAttachment": { - "message": "Deleted attachment" + "message": "Izbrisani prilog" }, "deleteAttachmentConfirmation": { - "message": "Are you sure you want to delete this attachment?" + "message": "Sigurno želite izbrisati ovaj prilog?" }, "attachmentSaved": { - "message": "The attachment has been saved." + "message": "Prilog je sačuvan." }, "file": { - "message": "File" + "message": "Datoteka" }, "selectFile": { - "message": "Select a file." + "message": "Odaberite datoteku." }, "maxFileSize": { - "message": "Maximum file size is 500 MB." + "message": "Maksimalna veličina datoteke je 500 MB." }, "updateKey": { - "message": "You cannot use this feature until you update your encryption key." + "message": "Ne možete koristiti ovu uslugu dok ne ažurirate Vaš enkripcioni ključ." }, "addedItem": { - "message": "Added item" + "message": "Stavka Dodata" }, "editedItem": { - "message": "Edited item" + "message": "Stavka uređena" }, "movedItemToOrg": { - "message": "$ITEMNAME$ moved to $ORGNAME$", + "message": "$ITEMNAME$ premješteno u $ORGNAME$", "placeholders": { "itemname": { "content": "$1", @@ -484,7 +489,7 @@ } }, "movedItemsToOrg": { - "message": "Selected items moved to $ORGNAME$", + "message": "Odabrane stavke premještene u $ORGNAME$", "placeholders": { "orgname": { "content": "$1", @@ -493,16 +498,16 @@ } }, "deleteItem": { - "message": "Delete Item" + "message": "Izbrišite Stavku" }, "deleteFolder": { - "message": "Delete Folder" + "message": "Izbrišite Fasciklu" }, "deleteAttachment": { - "message": "Delete Attachment" + "message": "Izbrišite Prilog" }, "deleteItemConfirmation": { - "message": "Do you really want to send to the trash?" + "message": "Da li zaista želite da obrišete ovu stavku?" }, "deletedItem": { "message": "Item sent to trash" @@ -665,16 +670,16 @@ "message": "There are no users to list." }, "noEventsInList": { - "message": "There are no events to list." + "message": "Nema događaja za prikaz." }, "newOrganization": { - "message": "New Organization" + "message": "Nova organizacija" }, "noOrganizationsList": { - "message": "You do not belong to any organizations. Organizations allow you to securely share items with other users." + "message": "Ne pripadaš niti jednoj organizaciji. Organizacije omogućuju sigurno dijeljenje stavki s drugim korisnicima." }, "versionNumber": { - "message": "Version $VERSION_NUMBER$", + "message": "Verzija $VERSION_NUMBER$", "placeholders": { "version_number": { "content": "$1", @@ -683,10 +688,10 @@ } }, "enterVerificationCodeApp": { - "message": "Enter the 6 digit verification code from your authenticator app." + "message": "Unesite 6-cifreni verifikacioni kod iz aplikacije za autentifikaciju." }, "enterVerificationCodeEmail": { - "message": "Enter the 6 digit verification code that was emailed to $EMAIL$.", + "message": "Unesite 6-cifreni verifikacioni kod poslat na imejl $EMAIL$.", "placeholders": { "email": { "content": "$1", @@ -695,7 +700,7 @@ } }, "verificationCodeEmailSent": { - "message": "Verification email sent to $EMAIL$.", + "message": "Imejl za potvrdu poslat na $EMAIL$.", "placeholders": { "email": { "content": "$1", @@ -704,34 +709,34 @@ } }, "rememberMe": { - "message": "Remember me" + "message": "Zapamti me" }, "sendVerificationCodeEmailAgain": { - "message": "Send verification code email again" + "message": "Ponovno slanje kontrolnog koda imejlom" }, "useAnotherTwoStepMethod": { - "message": "Use another two-step login method" + "message": "Koristiti drugi način prijave u dva koraka" }, "insertYubiKey": { - "message": "Insert your YubiKey into your computer's USB port, then touch its button." + "message": "Povežite Vaš YubiKey preko USB porta na vašem računaru, pa pritisnite dugme na njemu." }, "insertU2f": { - "message": "Insert your security key into your computer's USB port. If it has a button, touch it." + "message": "Povežite Vaš sigurnosni ključ preko USB porta na Vaš računar. Ukoliko ima dugme, pritisnite ga." }, "loginUnavailable": { - "message": "Login Unavailable" + "message": "Prijava nije dostupna" }, "noTwoStepProviders": { - "message": "This account has two-step login enabled, however, none of the configured two-step providers are supported by this web browser." + "message": "Ovaj račun ima omogućenu prijavu u dva koraka, međutim ovaj web preglednik ne podržava niti jednog konfiguriranog pružatelja prijave u dva koraka." }, "noTwoStepProviders2": { - "message": "Please use a supported web browser (such as Chrome) and/or add additional providers that are better supported across web browsers (such as an authenticator app)." + "message": "Molimo Vas da koristite neki od pretraživača koji su podržani (poput Chrome-a) i/ili dodajte pružaoce usluga čija podrška obuhvata više pretraživača (poput nekih aplikacija za autentifikaciju)." }, "twoStepOptions": { - "message": "Two-step Login Options" + "message": "Mogućnosti prijave u dva koraka" }, "recoveryCodeDesc": { - "message": "Lost access to all of your two-factor providers? Use your recovery code to disable all two-factor providers from your account." + "message": "Izgubljen je pristup uređaju za dvostruku autentifikaciju? Koristite svoj kôd za oporavak za onemogućavanje svih pružatelja usluga dvostruke autentifikacije na tvojem računu." }, "recoveryCodeTitle": { "message": "Recovery Code" @@ -1425,11 +1430,14 @@ "reports": { "message": "Reports" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { - "message": "Unsecured Websites Report" + "message": "Unsecure Websites" }, "unsecuredWebsitesReportDesc": { - "message": "Using unsecured websites with the http:// scheme can be dangerous. If the website allows, you should always access it using the https:// scheme so that your connection is encrypted." + "message": "URLs that start with http:// don’t use the best available encryption. Change the Login URIs for these accounts to https:// for safer browsing." }, "unsecuredWebsitesFound": { "message": "Unsecured Websites Found" @@ -1447,10 +1455,10 @@ "message": "No items in your vault have unsecured URIs." }, "inactive2faReport": { - "message": "Inactive 2FA Report" + "message": "Inactive Two-step Login" }, "inactive2faReportDesc": { - "message": "Two-factor authentication (2FA) is an important security setting that helps secure your accounts. If the website offers it, you should always enable two-factor authentication." + "message": "Two-step Login adds a layer of protection to your accounts. Turn on Two-Step Login using Bitwarden Authenticator for these accounts or use an alternative method." }, "inactive2faFound": { "message": "Logins Without 2FA Found" @@ -1471,10 +1479,10 @@ "message": "Instructions" }, "exposedPasswordsReport": { - "message": "Exposed Passwords Report" + "message": "Exposed Passwords" }, "exposedPasswordsReportDesc": { - "message": "Exposed passwords are passwords that have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." + "message": "Passwords exposed in a data breach are easy targets for attackers. Change these passwords to prevent potential break-ins." }, "exposedPasswordsFound": { "message": "Exposed Passwords Found" @@ -1504,10 +1512,10 @@ } }, "weakPasswordsReport": { - "message": "Weak Passwords Report" + "message": "Weak Passwords" }, "weakPasswordsReportDesc": { - "message": "Weak passwords can easily be guessed by hackers and automated tools that are used to crack passwords. The Bitwarden password generator can help you create strong passwords." + "message": "Weak passwords can be easily guessed by attackers. Change these passwords to strong ones using the Password Generator." }, "weakPasswordsFound": { "message": "Weak Passwords Found" @@ -1525,10 +1533,10 @@ "message": "No items in your vault have weak passwords." }, "reusedPasswordsReport": { - "message": "Reused Passwords Report" + "message": "Reused Passwords" }, "reusedPasswordsReportDesc": { - "message": "If a service that you use is compromised, reusing the same password elsewhere can allow hackers to easily gain access to more of your online accounts. You should use a unique password for every account or service." + "message": "Reusing passwords makes it easier for attackers to break into multiple accounts. Change these passwords so that each is unique." }, "reusedPasswordsFound": { "message": "Reused Passwords Found" @@ -1555,10 +1563,10 @@ } }, "dataBreachReport": { - "message": "Data Breach Report" + "message": "Data Breach" }, "breachDesc": { - "message": "A \"breach\" is an incident where a site's data has been illegally accessed by hackers and then released publicly. Review the types of data that were compromised (email addresses, passwords, credit cards etc.) and take appropriate action, such as changing passwords." + "message": "Breached accounts can expose your personal information. Secure breached accounts by enabling 2FA or creating a stronger password." }, "breachCheckUsernameEmail": { "message": "Check any usernames or email addresses that you use." @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/ca/messages.json b/src/locales/ca/messages.json index 129b5936..30b4172e 100644 --- a/src/locales/ca/messages.json +++ b/src/locales/ca/messages.json @@ -187,7 +187,12 @@ "message": "Edita la carpeta" }, "baseDomain": { - "message": "Domini base" + "message": "Domini base", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Amfitrió", @@ -1425,6 +1430,9 @@ "reports": { "message": "Informes" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Informe de llocs web no segurs" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/cs/messages.json b/src/locales/cs/messages.json index c86a1e06..b1a973da 100644 --- a/src/locales/cs/messages.json +++ b/src/locales/cs/messages.json @@ -187,7 +187,12 @@ "message": "Upravit složku" }, "baseDomain": { - "message": "Základní doména" + "message": "Základní doména", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Host", @@ -1425,6 +1430,9 @@ "reports": { "message": "Hlášení" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Hlášení o nezabezpečených webech" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/da/messages.json b/src/locales/da/messages.json index e2def42b..2b9d881f 100644 --- a/src/locales/da/messages.json +++ b/src/locales/da/messages.json @@ -187,7 +187,12 @@ "message": "Redigér mappe" }, "baseDomain": { - "message": "Grund-domæne" + "message": "Grund-domæne", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domænenavn", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Vært", @@ -1425,6 +1430,9 @@ "reports": { "message": "Rapporter" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Rapport over ikke-sikrede hjemmesider" }, @@ -1474,7 +1482,7 @@ "message": "Rapport over afslørede adgangskoder" }, "exposedPasswordsReportDesc": { - "message": "Afslørede adgangskoder er adgangskoder, der er blevet afsløret i kendte datalæk og er blevet offentliggjort eller solgt på det mørke web af hackere." + "message": "Exposed passwords are passwords have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." }, "exposedPasswordsFound": { "message": "Afslørede adgangskoder fundet" @@ -1558,7 +1566,7 @@ "message": "Datalæk rapport" }, "breachDesc": { - "message": "Et \"læk\" er en hændelse, hvor et websteds data er blevet ulovligt tilgået til af hackere og derefter offentliggjort. Gennemgå de typer af data, der blev kompromitteret (e-mailadresser, adgangskoder, kreditkort osv.) og træf passende foranstaltninger, som f.eks. ændring af adgangskoder." + "message": "Et \"læk\" er en hændelse, hvor et websteds data er blevet ulovligt tilgået til af hackere og derefter offentliggjort. Gennemgå de typer af data, der blev kompromitteret (emailadresser, adgangskoder, kreditkort osv.) og træf passende foranstaltninger, som f.eks. ændring af adgangskoder." }, "breachCheckUsernameEmail": { "message": "Kontroller eventuelle brugernavne eller e-mailadresser, som du bruger." @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "Hvad vil du generere?" + }, + "passwordType": { + "message": "Adgangskodetype" + }, + "regenerateUsername": { + "message": "Regenerér brugernavn" + }, + "generateUsername": { + "message": "Generér brugernavn" + }, + "usernameType": { + "message": "Brugernavnstype" + }, + "plusAddressedEmail": { + "message": "Plus adresseret e-mail" + }, + "plusAddressedEmailDesc": { + "message": "Brug e-mailudbyderens underadresseringsmuligheder." + }, + "catchallEmail": { + "message": "Fang-alle e-mail" + }, + "catchallEmailDesc": { + "message": "Brug den for domænet opsatte Fang-alle indbakke." + }, + "random": { + "message": "Tilfældig" + }, + "randomWord": { + "message": "Tilfældigt ord" + }, + "service": { + "message": "Tjeneste" } } diff --git a/src/locales/de/messages.json b/src/locales/de/messages.json index 08e0b649..d6acb23d 100644 --- a/src/locales/de/messages.json +++ b/src/locales/de/messages.json @@ -187,7 +187,12 @@ "message": "Ordner bearbeiten" }, "baseDomain": { - "message": "Basisdomäne" + "message": "Basisdomäne", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain-Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Host", @@ -1425,6 +1430,9 @@ "reports": { "message": "Berichte" }, + "reportsDesc": { + "message": "Ermittel und schließe Sicherheitslücken in deinen Online-Konten, indem du auf die Berichte unten klickst." + }, "unsecuredWebsitesReport": { "message": "Bericht über ungesicherte Websites" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Zurück zu den Berichten" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "Was möchten Sie generieren?" + }, + "passwordType": { + "message": "Passworttyp" + }, + "regenerateUsername": { + "message": "Benutzername neu generieren" + }, + "generateUsername": { + "message": "Benutzernamen generieren" + }, + "usernameType": { + "message": "Benutzernamentyp" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all-E-Mail-Adresse" + }, + "catchallEmailDesc": { + "message": "Verwenden Sie den konfigurierten Catch-All-Posteingang Ihrer Domain." + }, + "random": { + "message": "Zufällig" + }, + "randomWord": { + "message": "Zufälliges Wort" + }, + "service": { + "message": "Dienst" } } diff --git a/src/locales/el/messages.json b/src/locales/el/messages.json index 09ddd9d3..a96cc59f 100644 --- a/src/locales/el/messages.json +++ b/src/locales/el/messages.json @@ -187,7 +187,12 @@ "message": "Επεξεργασία Φακέλου" }, "baseDomain": { - "message": "Βασικός τομέας" + "message": "Βασικός τομέας", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Διακομιστής", @@ -1425,6 +1430,9 @@ "reports": { "message": "Αναφορές" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Αναφορά Μη-Ασφαλών Ιστοσελίδων" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/en_GB/messages.json b/src/locales/en_GB/messages.json index d5cb4cc9..9f33e294 100644 --- a/src/locales/en_GB/messages.json +++ b/src/locales/en_GB/messages.json @@ -187,7 +187,12 @@ "message": "Edit folder" }, "baseDomain": { - "message": "Base domain" + "message": "Base domain", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Host", @@ -1425,6 +1430,9 @@ "reports": { "message": "Reports" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Unsecured websites report" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/en_IN/messages.json b/src/locales/en_IN/messages.json index cc67883d..89af0011 100644 --- a/src/locales/en_IN/messages.json +++ b/src/locales/en_IN/messages.json @@ -187,7 +187,12 @@ "message": "Edit folder" }, "baseDomain": { - "message": "Base domain" + "message": "Base domain", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Host", @@ -1425,6 +1430,9 @@ "reports": { "message": "Reports" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Unsecured websites report" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/eo/messages.json b/src/locales/eo/messages.json index 8bbba86b..4637cabc 100644 --- a/src/locales/eo/messages.json +++ b/src/locales/eo/messages.json @@ -187,7 +187,12 @@ "message": "Redakti dosierujon" }, "baseDomain": { - "message": "Baza domajno" + "message": "Baza domajno", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Gastiganto", @@ -1425,6 +1430,9 @@ "reports": { "message": "Raportoj" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Raporto pri Nesekurigitaj Retejoj" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/es/messages.json b/src/locales/es/messages.json index 51c04652..c4ed1ad4 100644 --- a/src/locales/es/messages.json +++ b/src/locales/es/messages.json @@ -187,7 +187,12 @@ "message": "Editar carpeta" }, "baseDomain": { - "message": "Dominio base" + "message": "Dominio base", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Servidor", @@ -1425,6 +1430,9 @@ "reports": { "message": "Informes" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Informes de sitios web no seguros" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/et/messages.json b/src/locales/et/messages.json index 7d9fafcf..6072ce53 100644 --- a/src/locales/et/messages.json +++ b/src/locales/et/messages.json @@ -187,7 +187,12 @@ "message": "Muuda kausta" }, "baseDomain": { - "message": "Baasdomeen" + "message": "Baasdomeen", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Host", @@ -1425,6 +1430,9 @@ "reports": { "message": "Raportid" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Ebaturvalise veebilehtede raport" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/fi/messages.json b/src/locales/fi/messages.json index dc19dcce..2b1de489 100644 --- a/src/locales/fi/messages.json +++ b/src/locales/fi/messages.json @@ -187,7 +187,12 @@ "message": "Muokkaa kansiota" }, "baseDomain": { - "message": "Pääverkkotunnus" + "message": "Pääverkkotunnus", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Verkkotunnus", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Isäntä", @@ -1425,11 +1430,14 @@ "reports": { "message": "Raportit" }, + "reportsDesc": { + "message": "Tunnista ja paikkaa verkkopalvelutunnustesi tietoturva-aukkoja painamalla alla olevia raportteja." + }, "unsecuredWebsitesReport": { "message": "Suojaamattomat sivustot" }, "unsecuredWebsitesReportDesc": { - "message": "Sivustojen käyttö suojaamattoman \"http://\" -protokollan välityksellä voi olla vaarallista. Jos sivusto sitä tukee, tulisi sitä aina käyttää \"https://\" -protokollan välityksellä, jolloin yhteytesi on salattu." + "message": "Osoitteet, jotka alkavat http://, eivät hyödynnä parasta mahdollista salausta. Vaihda tällaiset kirjatumisosoitteet https://-muotoisiksi turvallisempaa selausta varten." }, "unsecuredWebsitesFound": { "message": "Suojaamattomia verkkosivustoja löytyi" @@ -1450,7 +1458,7 @@ "message": "Tunnusten 2FA-tila" }, "inactive2faReportDesc": { - "message": "Kaksivaiheinen kirjautuminen (2FA) on tärkeä suojausasetus, joka auttaa käyttäjätiliesi suojauksessa. Jos sivusto tarjoaa mahdollisuuden kaksivaiheisen kirjautmisen käyttöön, sinun tulisi aina ottaa se käyttöön." + "message": "Kaksivaiheinen kirjautuminen (2FA) lisää tileillesi yhden suojaustason. Voit käyttää kaksivaiheiseen kirjautumiseen Bitwarden-todentajaa tai vaihtoehtoisia menetelmiä." }, "inactive2faFound": { "message": "Tunnuksia ilman kaksivaiheista kirjautumista löytyi" @@ -1474,7 +1482,7 @@ "message": "Paljastuneet salasanat" }, "exposedPasswordsReportDesc": { - "message": "Paljastuneet salasanat ovat salasanoja, jotka on paljastettu julkaistujen tietovuotojen yhteydessä tai joita murtautujat ovat myyneet pimeässä verkossa (dark web)." + "message": "Tietovuodoissa paljastuneet salasanat ovat helppoja kohteita hyökkääjille. Vaihda nämä salasanat estääksesi mahdolliset murrot." }, "exposedPasswordsFound": { "message": "Paljastuneita salasanoja löytyi" @@ -1507,7 +1515,7 @@ "message": "Heikot salasanat" }, "weakPasswordsReportDesc": { - "message": "Heikot salasanat ovat murtautujien ja automaattisten salasanojen murtotyökalujen helposti arvattavissa. Bitwardenin salasanageneraattori auttaa sinua luomaan vahvoja salasanoja." + "message": "Heikot salasanat ovat hyökkääjien helposti arvattavissa. Bitwardenin salasanageneraattorin avulla voit luoda vahvoja salasanoja." }, "weakPasswordsFound": { "message": "Heikkoja salasanoja löytyi" @@ -1528,7 +1536,7 @@ "message": "Toistuvat salasanat" }, "reusedPasswordsReportDesc": { - "message": "Jos käyttämäsi palvelu on vaarantunut, saman salasanan toistuva käyttö muualla voi mahdollistaa murtautujien pääsyn myös muille käyttäjätileillesi. Jokaiselle tilille ja palvelulle tulisi käyttää yksilöllisiä salasanoja." + "message": "Samojen salasanojen toistuva käyttö helpottaa hakkereiden pääsyä useille käyttäjätileille. Vaihda kaikki nämä salasanat yksilöllisiksi." }, "reusedPasswordsFound": { "message": "Toistuvia salasanoja löytyi" @@ -1558,7 +1566,7 @@ "message": "Tietovuodot" }, "breachDesc": { - "message": "\"Tietovuoto\" tai \"tietomurto\" on tilanne, jossa murtautujat (hakkerit) ovat laittomasti päässeet käsiksi sivuston suojattuihin tietoihin ja julkaisseet ne tämän jälkeen julkisesti. Tarkista vaarantuneet tiedot (sähköpostiosoitteet, salasanat, maksukortit jne.) ja tee asianmukaiset toimet, kuten salasanan vaihdot." + "message": "Murretut tilit saattavat paljastaa henkilötietosi. Suojaa tilit kaksivaiheisella todennuksella tai vahvemmilla salasanoilla." }, "breachCheckUsernameEmail": { "message": "Tarkista kaikki käyttämäsi käyttäjätunnukset tai sähköpostiosoitteet." @@ -2330,13 +2338,13 @@ "message": "Tilin salasana vaihdettu." }, "enabledUpdated2fa": { - "message": "Kaksivaiheinen kirjautuminen otettu käyttöön/päivitetty." + "message": "Kaksivaiheinen kirjautuminen otettiin käyttöön/päivitettiin." }, "disabled2fa": { - "message": "Kaksivaiheinen kirjautuminen poistettu käytöstä." + "message": "Kaksivaiheinen kirjautuminen poistettiin käytöstä." }, "recovered2fa": { - "message": "Tili vapautettu kaksivaiheisesta kirjautumisesta." + "message": "Tili vapautettiin kaksivaiheisesta kirjautumisesta." }, "failedLogin": { "message": "Sisäänkirjautumisyritys epäonnistui väärän salasanan vuoksi." @@ -2795,7 +2803,7 @@ "message": "Poista organisaatio" }, "deletingOrganizationContentWarning": { - "message": "Vahvista organisaation $ORGANIZATION$ ja kaikkien sen kohteiden poisto syöttämällä pääsalasanasi. Holvin sisältämiä organisaation $ORGANIZATION$ tietoja ovat:", + "message": "Vahvista organisaation $ORGANIZATION$ ja kaikkien sen kohteiden poisto syöttämällä pääsalasanasi. Organisaation $ORGANIZATION$ tiedot holvissa:", "placeholders": { "organization": { "content": "$1", @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Palaa raportteihin" + }, + "generator": { + "message": "Generaattori" + }, + "whatWouldYouLikeToGenerate": { + "message": "Mitä haluat luoda?" + }, + "passwordType": { + "message": "Salasanan tyyppi" + }, + "regenerateUsername": { + "message": "Luo uusi käyttäjätunnus" + }, + "generateUsername": { + "message": "Luo käyttäjätunnus" + }, + "usernameType": { + "message": "Käyttäjätunnuksen tyyppi" + }, + "plusAddressedEmail": { + "message": "Plus-osoitteinen sähköposti" + }, + "plusAddressedEmailDesc": { + "message": "Käytä sähköpostipalvelusi aliosoiteominaisuuksia." + }, + "catchallEmail": { + "message": "Catch-all-sähköpostiosoite" + }, + "catchallEmailDesc": { + "message": "Käytä verkkotunnuksellesi määritettyä catch-all-postilaatikkoa." + }, + "random": { + "message": "Satunnainen" + }, + "randomWord": { + "message": "Satunnainen sana" + }, + "service": { + "message": "Palvelu" } } diff --git a/src/locales/fil/messages.json b/src/locales/fil/messages.json index cfa8e1a4..2721f590 100644 --- a/src/locales/fil/messages.json +++ b/src/locales/fil/messages.json @@ -187,7 +187,12 @@ "message": "Edit Folder" }, "baseDomain": { - "message": "Base domain" + "message": "Base domain", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Host", @@ -1425,11 +1430,14 @@ "reports": { "message": "Reports" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { - "message": "Unsecured Websites Report" + "message": "Unsecure Websites" }, "unsecuredWebsitesReportDesc": { - "message": "Using unsecured websites with the http:// scheme can be dangerous. If the website allows, you should always access it using the https:// scheme so that your connection is encrypted." + "message": "URLs that start with http:// don’t use the best available encryption. Change the Login URIs for these accounts to https:// for safer browsing." }, "unsecuredWebsitesFound": { "message": "Unsecured Websites Found" @@ -1447,10 +1455,10 @@ "message": "No items in your vault have unsecured URIs." }, "inactive2faReport": { - "message": "Inactive 2FA Report" + "message": "Inactive Two-step Login" }, "inactive2faReportDesc": { - "message": "Two-factor authentication (2FA) is an important security setting that helps secure your accounts. If the website offers it, you should always enable two-factor authentication." + "message": "Two-step Login adds a layer of protection to your accounts. Turn on Two-Step Login using Bitwarden Authenticator for these accounts or use an alternative method." }, "inactive2faFound": { "message": "Logins Without 2FA Found" @@ -1471,10 +1479,10 @@ "message": "Instructions" }, "exposedPasswordsReport": { - "message": "Exposed Passwords Report" + "message": "Exposed Passwords" }, "exposedPasswordsReportDesc": { - "message": "Exposed passwords are passwords that have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." + "message": "Passwords exposed in a data breach are easy targets for attackers. Change these passwords to prevent potential break-ins." }, "exposedPasswordsFound": { "message": "Exposed Passwords Found" @@ -1504,10 +1512,10 @@ } }, "weakPasswordsReport": { - "message": "Weak Passwords Report" + "message": "Weak Passwords" }, "weakPasswordsReportDesc": { - "message": "Weak passwords can easily be guessed by hackers and automated tools that are used to crack passwords. The Bitwarden password generator can help you create strong passwords." + "message": "Weak passwords can be easily guessed by attackers. Change these passwords to strong ones using the Password Generator." }, "weakPasswordsFound": { "message": "Weak Passwords Found" @@ -1525,10 +1533,10 @@ "message": "No items in your vault have weak passwords." }, "reusedPasswordsReport": { - "message": "Reused Passwords Report" + "message": "Reused Passwords" }, "reusedPasswordsReportDesc": { - "message": "If a service that you use is compromised, reusing the same password elsewhere can allow hackers to easily gain access to more of your online accounts. You should use a unique password for every account or service." + "message": "Reusing passwords makes it easier for attackers to break into multiple accounts. Change these passwords so that each is unique." }, "reusedPasswordsFound": { "message": "Reused Passwords Found" @@ -1555,10 +1563,10 @@ } }, "dataBreachReport": { - "message": "Data Breach Report" + "message": "Data Breach" }, "breachDesc": { - "message": "A \"breach\" is an incident where a site's data has been illegally accessed by hackers and then released publicly. Review the types of data that were compromised (email addresses, passwords, credit cards etc.) and take appropriate action, such as changing passwords." + "message": "Breached accounts can expose your personal information. Secure breached accounts by enabling 2FA or creating a stronger password." }, "breachCheckUsernameEmail": { "message": "Check any usernames or email addresses that you use." @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/fr/messages.json b/src/locales/fr/messages.json index 66537d99..f925acab 100644 --- a/src/locales/fr/messages.json +++ b/src/locales/fr/messages.json @@ -187,7 +187,12 @@ "message": "Modifier le dossier" }, "baseDomain": { - "message": "Domaine de base" + "message": "Domaine de base", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Nom de domaine", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Hôte", @@ -1425,6 +1430,9 @@ "reports": { "message": "Rapports" }, + "reportsDesc": { + "message": "Identifiez et fermez les trous de sécurité dans vos comptes en ligne en cliquant sur les rapports ci-dessous." + }, "unsecuredWebsitesReport": { "message": "Rapport sur les sites web non sécurisés" }, @@ -1474,7 +1482,7 @@ "message": "Rapport sur les mots de passe exposés" }, "exposedPasswordsReportDesc": { - "message": "Les mots de passe exposés sont des mots de passe qui ont été découverts lors de fuites de données connues qui ont été rendues publiques ou vendues sur le Web par des pirates informatiques." + "message": "Exposed passwords are passwords have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." }, "exposedPasswordsFound": { "message": "Mots de passe exposés trouvés" @@ -1507,7 +1515,7 @@ "message": "Rapport sur les mots de passe faibles" }, "weakPasswordsReportDesc": { - "message": "Les mots de passe faibles peuvent être facilement devinés par des pirates informatiques et des outils automatisés qui sont utilisés pour pirater les mots de passe. Le générateur de mots de passe de Bitwarden peut vous aider à créer des mots de passe forts." + "message": "Les mots de passe faibles peuvent être facilement devinés par des pirates informatiques et des outils automatisés qui sont utilisés pour pirater les mots de passe. Le générateur de mots de passe Bitwarden peut vous aider à créer des mots de passe forts." }, "weakPasswordsFound": { "message": "Mots de passe faibles trouvés" @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Retour aux Rapports" + }, + "generator": { + "message": "Générateur" + }, + "whatWouldYouLikeToGenerate": { + "message": "Que souhaitez-vous générer ?" + }, + "passwordType": { + "message": "Type de Mot de Passe" + }, + "regenerateUsername": { + "message": "Régénérer le Nom d'Utilisateur" + }, + "generateUsername": { + "message": "Générer le Nom d'Utilisateur" + }, + "usernameType": { + "message": "Type de Nom d'Utilisateur" + }, + "plusAddressedEmail": { + "message": "Courriel Adressé Plus" + }, + "plusAddressedEmailDesc": { + "message": "Utilisez les capacités de sous-adressage de votre fournisseur de messagerie." + }, + "catchallEmail": { + "message": "Collecteur d'Email (catch-all)" + }, + "catchallEmailDesc": { + "message": "Utilisez la boîte de réception du collecteur (catch-all) configurée de votre domaine." + }, + "random": { + "message": "Aléatoire" + }, + "randomWord": { + "message": "Mot Aléatoire" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/he/messages.json b/src/locales/he/messages.json index 0cc7803c..79916673 100644 --- a/src/locales/he/messages.json +++ b/src/locales/he/messages.json @@ -187,7 +187,12 @@ "message": "ערוך תיקייה" }, "baseDomain": { - "message": "שם בסיס הדומיין" + "message": "שם בסיס הדומיין", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "מארח", @@ -1425,6 +1430,9 @@ "reports": { "message": "דוחות" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "דוח אתרים לא מאובטחים" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/hi/messages.json b/src/locales/hi/messages.json index 118a4a00..226fc697 100644 --- a/src/locales/hi/messages.json +++ b/src/locales/hi/messages.json @@ -187,7 +187,12 @@ "message": "Edit Folder" }, "baseDomain": { - "message": "Base domain" + "message": "Base domain", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Host", @@ -1425,11 +1430,14 @@ "reports": { "message": "Reports" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { - "message": "Unsecured Websites Report" + "message": "Unsecure Websites" }, "unsecuredWebsitesReportDesc": { - "message": "Using unsecured websites with the http:// scheme can be dangerous. If the website allows, you should always access it using the https:// scheme so that your connection is encrypted." + "message": "URLs that start with http:// don’t use the best available encryption. Change the Login URIs for these accounts to https:// for safer browsing." }, "unsecuredWebsitesFound": { "message": "Unsecured Websites Found" @@ -1447,10 +1455,10 @@ "message": "No items in your vault have unsecured URIs." }, "inactive2faReport": { - "message": "Inactive 2FA Report" + "message": "Inactive Two-step Login" }, "inactive2faReportDesc": { - "message": "Two-factor authentication (2FA) is an important security setting that helps secure your accounts. If the website offers it, you should always enable two-factor authentication." + "message": "Two-step Login adds a layer of protection to your accounts. Turn on Two-Step Login using Bitwarden Authenticator for these accounts or use an alternative method." }, "inactive2faFound": { "message": "Logins Without 2FA Found" @@ -1471,10 +1479,10 @@ "message": "Instructions" }, "exposedPasswordsReport": { - "message": "Exposed Passwords Report" + "message": "Exposed Passwords" }, "exposedPasswordsReportDesc": { - "message": "Exposed passwords are passwords that have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." + "message": "Passwords exposed in a data breach are easy targets for attackers. Change these passwords to prevent potential break-ins." }, "exposedPasswordsFound": { "message": "Exposed Passwords Found" @@ -1504,10 +1512,10 @@ } }, "weakPasswordsReport": { - "message": "Weak Passwords Report" + "message": "Weak Passwords" }, "weakPasswordsReportDesc": { - "message": "Weak passwords can easily be guessed by hackers and automated tools that are used to crack passwords. The Bitwarden password generator can help you create strong passwords." + "message": "Weak passwords can be easily guessed by attackers. Change these passwords to strong ones using the Password Generator." }, "weakPasswordsFound": { "message": "Weak Passwords Found" @@ -1525,10 +1533,10 @@ "message": "No items in your vault have weak passwords." }, "reusedPasswordsReport": { - "message": "Reused Passwords Report" + "message": "Reused Passwords" }, "reusedPasswordsReportDesc": { - "message": "If a service that you use is compromised, reusing the same password elsewhere can allow hackers to easily gain access to more of your online accounts. You should use a unique password for every account or service." + "message": "Reusing passwords makes it easier for attackers to break into multiple accounts. Change these passwords so that each is unique." }, "reusedPasswordsFound": { "message": "Reused Passwords Found" @@ -1555,10 +1563,10 @@ } }, "dataBreachReport": { - "message": "Data Breach Report" + "message": "Data Breach" }, "breachDesc": { - "message": "A \"breach\" is an incident where a site's data has been illegally accessed by hackers and then released publicly. Review the types of data that were compromised (email addresses, passwords, credit cards etc.) and take appropriate action, such as changing passwords." + "message": "Breached accounts can expose your personal information. Secure breached accounts by enabling 2FA or creating a stronger password." }, "breachCheckUsernameEmail": { "message": "Check any usernames or email addresses that you use." @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/hr/messages.json b/src/locales/hr/messages.json index f08f2c43..6ed93b15 100644 --- a/src/locales/hr/messages.json +++ b/src/locales/hr/messages.json @@ -187,7 +187,12 @@ "message": "Uredi mapu" }, "baseDomain": { - "message": "Primarna domena" + "message": "Primarna domena", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Host", @@ -1425,6 +1430,9 @@ "reports": { "message": "Izvještaji" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Izvještaj neosiguranih web mjesta" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/hu/messages.json b/src/locales/hu/messages.json index e5afbc6c..953c43b6 100644 --- a/src/locales/hu/messages.json +++ b/src/locales/hu/messages.json @@ -187,7 +187,12 @@ "message": "Mappa szerkesztése" }, "baseDomain": { - "message": "Alap domain" + "message": "Alap domain", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Kiszolgáló", @@ -1425,6 +1430,9 @@ "reports": { "message": "Jelentések" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Nem-biztonságos webhelyek jelentés" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/id/messages.json b/src/locales/id/messages.json index e5e5bbca..88e3d917 100644 --- a/src/locales/id/messages.json +++ b/src/locales/id/messages.json @@ -187,7 +187,12 @@ "message": "Edit Folder" }, "baseDomain": { - "message": "Domain basis" + "message": "Domain basis", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Host", @@ -1425,6 +1430,9 @@ "reports": { "message": "Laporan" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Laporan Situs Web Tidak Aman" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/it/messages.json b/src/locales/it/messages.json index 3e1d5c21..7f82bdd6 100644 --- a/src/locales/it/messages.json +++ b/src/locales/it/messages.json @@ -187,7 +187,12 @@ "message": "Modifica cartella" }, "baseDomain": { - "message": "Dominio di base" + "message": "Dominio di base", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Nome dominio", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Host", @@ -1425,6 +1430,9 @@ "reports": { "message": "Resoconti" }, + "reportsDesc": { + "message": "Identifica e chiudi i problemi di sicurezza dei tuoi account online cliccando sui report in basso." + }, "unsecuredWebsitesReport": { "message": "Resoconto sui siti web non protetti" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Torna ai report" + }, + "generator": { + "message": "Generatore" + }, + "whatWouldYouLikeToGenerate": { + "message": "Cosa vorresti generare?" + }, + "passwordType": { + "message": "Tipo di password" + }, + "regenerateUsername": { + "message": "Rigenera nome utente" + }, + "generateUsername": { + "message": "Genera nome utente" + }, + "usernameType": { + "message": "Tipo di nome utente" + }, + "plusAddressedEmail": { + "message": "Indirizzo email alternativo" + }, + "plusAddressedEmailDesc": { + "message": "Usa le funzionalità di sub-indirizzamento del tuo fornitore di posta elettronica." + }, + "catchallEmail": { + "message": "Email catch-all" + }, + "catchallEmailDesc": { + "message": "Usa la casella di posta catch-all di dominio." + }, + "random": { + "message": "Casuale" + }, + "randomWord": { + "message": "Parola casuale" + }, + "service": { + "message": "Servizio" } } diff --git a/src/locales/ja/messages.json b/src/locales/ja/messages.json index 804ee72d..ef3c2432 100644 --- a/src/locales/ja/messages.json +++ b/src/locales/ja/messages.json @@ -187,7 +187,12 @@ "message": "フォルダーを編集" }, "baseDomain": { - "message": "ベースドメイン" + "message": "ベースドメイン", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "ドメイン名", + "description": "Domain name. Ex. website.com" }, "host": { "message": "ホスト", @@ -1425,6 +1430,9 @@ "reports": { "message": "レポート" }, + "reportsDesc": { + "message": "以下のレポートをクリックして、オンラインアカウントのセキュリティギャップを特定して修正してください。" + }, "unsecuredWebsitesReport": { "message": "非セキュアウェブサイト調査" }, @@ -1474,7 +1482,7 @@ "message": "流出パスワード調査" }, "exposedPasswordsReportDesc": { - "message": "流出したパスワードとは、クラッカーによりダークウェブ上で公開または販売された既知の流出データに掲載されているパスワードのことです。" + "message": "Exposed passwords are passwords have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." }, "exposedPasswordsFound": { "message": "流出したパスワードが見つかりました" @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "レポートに戻る" + }, + "generator": { + "message": "ジェネレーター" + }, + "whatWouldYouLikeToGenerate": { + "message": "何を生成しますか?" + }, + "passwordType": { + "message": "パスワードの種類" + }, + "regenerateUsername": { + "message": "ユーザー名を再生成" + }, + "generateUsername": { + "message": "ユーザー名を生成" + }, + "usernameType": { + "message": "ユーザー名の種類" + }, + "plusAddressedEmail": { + "message": "プラス付きのメールアドレス" + }, + "plusAddressedEmailDesc": { + "message": "メールプロバイダのエイリアス機能を使用します。" + }, + "catchallEmail": { + "message": "キャッチオールメール" + }, + "catchallEmailDesc": { + "message": "ドメインに設定されたキャッチオール受信トレイを使用します。" + }, + "random": { + "message": "ランダム" + }, + "randomWord": { + "message": "ランダムな単語" + }, + "service": { + "message": "サービス" } } diff --git a/src/locales/ka/messages.json b/src/locales/ka/messages.json index f1611257..02e504d3 100644 --- a/src/locales/ka/messages.json +++ b/src/locales/ka/messages.json @@ -187,7 +187,12 @@ "message": "Edit Folder" }, "baseDomain": { - "message": "Base domain" + "message": "Base domain", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Host", @@ -1425,11 +1430,14 @@ "reports": { "message": "Reports" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { - "message": "Unsecured Websites Report" + "message": "Unsecure Websites" }, "unsecuredWebsitesReportDesc": { - "message": "Using unsecured websites with the http:// scheme can be dangerous. If the website allows, you should always access it using the https:// scheme so that your connection is encrypted." + "message": "URLs that start with http:// don’t use the best available encryption. Change the Login URIs for these accounts to https:// for safer browsing." }, "unsecuredWebsitesFound": { "message": "Unsecured Websites Found" @@ -1447,10 +1455,10 @@ "message": "No items in your vault have unsecured URIs." }, "inactive2faReport": { - "message": "Inactive 2FA Report" + "message": "Inactive Two-step Login" }, "inactive2faReportDesc": { - "message": "Two-factor authentication (2FA) is an important security setting that helps secure your accounts. If the website offers it, you should always enable two-factor authentication." + "message": "Two-step Login adds a layer of protection to your accounts. Turn on Two-Step Login using Bitwarden Authenticator for these accounts or use an alternative method." }, "inactive2faFound": { "message": "Logins Without 2FA Found" @@ -1471,10 +1479,10 @@ "message": "Instructions" }, "exposedPasswordsReport": { - "message": "Exposed Passwords Report" + "message": "Exposed Passwords" }, "exposedPasswordsReportDesc": { - "message": "Exposed passwords are passwords that have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." + "message": "Passwords exposed in a data breach are easy targets for attackers. Change these passwords to prevent potential break-ins." }, "exposedPasswordsFound": { "message": "Exposed Passwords Found" @@ -1504,10 +1512,10 @@ } }, "weakPasswordsReport": { - "message": "Weak Passwords Report" + "message": "Weak Passwords" }, "weakPasswordsReportDesc": { - "message": "Weak passwords can easily be guessed by hackers and automated tools that are used to crack passwords. The Bitwarden password generator can help you create strong passwords." + "message": "Weak passwords can be easily guessed by attackers. Change these passwords to strong ones using the Password Generator." }, "weakPasswordsFound": { "message": "Weak Passwords Found" @@ -1525,10 +1533,10 @@ "message": "No items in your vault have weak passwords." }, "reusedPasswordsReport": { - "message": "Reused Passwords Report" + "message": "Reused Passwords" }, "reusedPasswordsReportDesc": { - "message": "If a service that you use is compromised, reusing the same password elsewhere can allow hackers to easily gain access to more of your online accounts. You should use a unique password for every account or service." + "message": "Reusing passwords makes it easier for attackers to break into multiple accounts. Change these passwords so that each is unique." }, "reusedPasswordsFound": { "message": "Reused Passwords Found" @@ -1555,10 +1563,10 @@ } }, "dataBreachReport": { - "message": "Data Breach Report" + "message": "Data Breach" }, "breachDesc": { - "message": "A \"breach\" is an incident where a site's data has been illegally accessed by hackers and then released publicly. Review the types of data that were compromised (email addresses, passwords, credit cards etc.) and take appropriate action, such as changing passwords." + "message": "Breached accounts can expose your personal information. Secure breached accounts by enabling 2FA or creating a stronger password." }, "breachCheckUsernameEmail": { "message": "Check any usernames or email addresses that you use." @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/km/messages.json b/src/locales/km/messages.json index f1611257..02e504d3 100644 --- a/src/locales/km/messages.json +++ b/src/locales/km/messages.json @@ -187,7 +187,12 @@ "message": "Edit Folder" }, "baseDomain": { - "message": "Base domain" + "message": "Base domain", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Host", @@ -1425,11 +1430,14 @@ "reports": { "message": "Reports" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { - "message": "Unsecured Websites Report" + "message": "Unsecure Websites" }, "unsecuredWebsitesReportDesc": { - "message": "Using unsecured websites with the http:// scheme can be dangerous. If the website allows, you should always access it using the https:// scheme so that your connection is encrypted." + "message": "URLs that start with http:// don’t use the best available encryption. Change the Login URIs for these accounts to https:// for safer browsing." }, "unsecuredWebsitesFound": { "message": "Unsecured Websites Found" @@ -1447,10 +1455,10 @@ "message": "No items in your vault have unsecured URIs." }, "inactive2faReport": { - "message": "Inactive 2FA Report" + "message": "Inactive Two-step Login" }, "inactive2faReportDesc": { - "message": "Two-factor authentication (2FA) is an important security setting that helps secure your accounts. If the website offers it, you should always enable two-factor authentication." + "message": "Two-step Login adds a layer of protection to your accounts. Turn on Two-Step Login using Bitwarden Authenticator for these accounts or use an alternative method." }, "inactive2faFound": { "message": "Logins Without 2FA Found" @@ -1471,10 +1479,10 @@ "message": "Instructions" }, "exposedPasswordsReport": { - "message": "Exposed Passwords Report" + "message": "Exposed Passwords" }, "exposedPasswordsReportDesc": { - "message": "Exposed passwords are passwords that have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." + "message": "Passwords exposed in a data breach are easy targets for attackers. Change these passwords to prevent potential break-ins." }, "exposedPasswordsFound": { "message": "Exposed Passwords Found" @@ -1504,10 +1512,10 @@ } }, "weakPasswordsReport": { - "message": "Weak Passwords Report" + "message": "Weak Passwords" }, "weakPasswordsReportDesc": { - "message": "Weak passwords can easily be guessed by hackers and automated tools that are used to crack passwords. The Bitwarden password generator can help you create strong passwords." + "message": "Weak passwords can be easily guessed by attackers. Change these passwords to strong ones using the Password Generator." }, "weakPasswordsFound": { "message": "Weak Passwords Found" @@ -1525,10 +1533,10 @@ "message": "No items in your vault have weak passwords." }, "reusedPasswordsReport": { - "message": "Reused Passwords Report" + "message": "Reused Passwords" }, "reusedPasswordsReportDesc": { - "message": "If a service that you use is compromised, reusing the same password elsewhere can allow hackers to easily gain access to more of your online accounts. You should use a unique password for every account or service." + "message": "Reusing passwords makes it easier for attackers to break into multiple accounts. Change these passwords so that each is unique." }, "reusedPasswordsFound": { "message": "Reused Passwords Found" @@ -1555,10 +1563,10 @@ } }, "dataBreachReport": { - "message": "Data Breach Report" + "message": "Data Breach" }, "breachDesc": { - "message": "A \"breach\" is an incident where a site's data has been illegally accessed by hackers and then released publicly. Review the types of data that were compromised (email addresses, passwords, credit cards etc.) and take appropriate action, such as changing passwords." + "message": "Breached accounts can expose your personal information. Secure breached accounts by enabling 2FA or creating a stronger password." }, "breachCheckUsernameEmail": { "message": "Check any usernames or email addresses that you use." @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/kn/messages.json b/src/locales/kn/messages.json index 45de3be6..2f051902 100644 --- a/src/locales/kn/messages.json +++ b/src/locales/kn/messages.json @@ -187,7 +187,12 @@ "message": "ಫೋಲ್ಡರ್ ಸಂಪಾದಿಸಿ" }, "baseDomain": { - "message": "ಮೂಲ ಡೊಮೇನ್" + "message": "ಮೂಲ ಡೊಮೇನ್", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "ಅತಿಥೆಯ", @@ -1425,6 +1430,9 @@ "reports": { "message": "ವರದಿಗಳು" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "ಅಸುರಕ್ಷಿತ ವೆಬ್‌ಸೈಟ್‌ಗಳ ವರದಿ" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/ko/messages.json b/src/locales/ko/messages.json index 3dbf9a91..9a5f88f7 100644 --- a/src/locales/ko/messages.json +++ b/src/locales/ko/messages.json @@ -187,7 +187,12 @@ "message": "폴더 편집" }, "baseDomain": { - "message": "기본 도메인" + "message": "기본 도메인", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "호스트", @@ -1425,6 +1430,9 @@ "reports": { "message": "보고서" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "안전하지 않은 웹사이트들 보고서" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/lv/messages.json b/src/locales/lv/messages.json index d042c422..eb14c8f5 100644 --- a/src/locales/lv/messages.json +++ b/src/locales/lv/messages.json @@ -187,7 +187,12 @@ "message": "Labot mapi" }, "baseDomain": { - "message": "Pamata domēns" + "message": "Pamata domēns", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Saimniekdators", @@ -1425,6 +1430,9 @@ "reports": { "message": "Pārskati" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Nedrošu tīmekļa vietņu pārskats" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/ml/messages.json b/src/locales/ml/messages.json index faef5ecd..13661832 100644 --- a/src/locales/ml/messages.json +++ b/src/locales/ml/messages.json @@ -187,7 +187,12 @@ "message": "ഫോൾഡർ തിരുത്തുക" }, "baseDomain": { - "message": "അടിസ്ഥാന ഡൊമെയ്ൻ" + "message": "അടിസ്ഥാന ഡൊമെയ്ൻ", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "ഹോസ്റ്റ്", @@ -1425,6 +1430,9 @@ "reports": { "message": "റിപ്പോർട്ടുകൾ" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Unsecured Websites Report" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/nb/messages.json b/src/locales/nb/messages.json index 3c8a966b..85c84bf9 100644 --- a/src/locales/nb/messages.json +++ b/src/locales/nb/messages.json @@ -187,7 +187,12 @@ "message": "Rediger mappen" }, "baseDomain": { - "message": "Grunndomene" + "message": "Grunndomene", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domene", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Vert", @@ -301,16 +306,16 @@ "message": "Sikker notis" }, "typeLoginPlural": { - "message": "Logins" + "message": "Innlogginger" }, "typeCardPlural": { - "message": "Cards" + "message": "Kort" }, "typeIdentityPlural": { - "message": "Identities" + "message": "Identiteter" }, "typeSecureNotePlural": { - "message": "Secure Notes" + "message": "Sikre notater" }, "folders": { "message": "Mapper" @@ -671,7 +676,7 @@ "message": "Ny organisasjon" }, "noOrganizationsList": { - "message": "Du tilhører ikke noen organisasjoner. Organisasjoner gjør det mulig for deg å sikkert dele objekter med andre brukere." + "message": "Du tilhører ikke noen organisasjoner. Organisasjoner gjør det mulig for deg å trygt dele objekter med andre brukere." }, "versionNumber": { "message": "Versjon $VERSION_NUMBER$", @@ -844,10 +849,10 @@ "message": "Bekreft eksport av hvelvet" }, "exportWarningDesc": { - "message": "Eksporten inneholder dine hvelvdataer i et ukryptert format. Du burde ikke lagre eller sende den eksporterte filen over usikre tjenester (f.eks. E-post). Slett det umiddelbart etter at du er ferdig med å bruke dem." + "message": "Eksporten inneholder dine hvelvdata i ukryptert format. Du bør ikke lagre eller sende den eksporterte filen over usikre tjenester (som e-post). Slett filen umiddelbart etter at du er ferdig med å bruke den." }, "encExportKeyWarningDesc": { - "message": "Denne eksporten krypterer dataene dine ved hjelp av kontoen din sin krypteringsnøkkel. Hvis du noen gang endrer krypteringsnøkkelen til kontoen din, bør du eksportere dataene igjen, ettersom du da ikke vil kunne dekryptere denne eksportfilen." + "message": "Denne eksporteringen krypterer dataene dine ved hjelp av din kontos krypteringsnøkkel. Hvis du noen gang endrer krypteringsnøkkelen til kontoen din, bør du eksportere dataene igjen, ettersom du da ikke vil kunne dekryptere denne eksportfilen." }, "encExportAccountWarningDesc": { "message": "Kontokrypteringsnøkler er unike for hver Bitwarden sin brukerkonto, og du kan ikke importere en kryptert eksport til en annen konto." @@ -868,20 +873,20 @@ "message": "Passordgenerator" }, "minComplexityScore": { - "message": "Minimumspoengsum for kompleksistet" + "message": "Minimum kompleksitetscore" }, "minNumbers": { - "message": "Minst antall numre" + "message": "Minste antall sifre" }, "minSpecial": { - "message": "Minst antall spesialtegn", + "message": "Minste antall spesialtegn", "description": "Minimum Special Characters" }, "ambiguous": { - "message": "Unngå tegn som kan forveksles" + "message": "Unngå tvetydige tegn" }, "regeneratePassword": { - "message": "Omgenerer et passord" + "message": "Regenerer passord" }, "length": { "message": "Lengde" @@ -890,14 +895,14 @@ "message": "Antall ord" }, "wordSeparator": { - "message": "Ordadskiller" + "message": "Orddeler" }, "capitalize": { "message": "Stor forbokstav", "description": "Make the first letter of a work uppercase." }, "includeNumber": { - "message": "Inkluder nummer" + "message": "Inkluder siffer" }, "passwordHistory": { "message": "Passordhistorikk" @@ -910,16 +915,16 @@ "description": "To clear something out. example: To clear browser history." }, "accountUpdated": { - "message": "Kontoen er oppdatert" + "message": "Konto oppdatert" }, "changeEmail": { "message": "Endre e-postadresse" }, "changeEmailTwoFactorWarning": { - "message": "Å fortsette vil endre din kontos e-post adresse. Det vil ikke endre e-postadressen som brukes ved 2-trinnsinnlogging. Du kan endre denne e-postadressen i 2-trinns innloggingsinnstillinger." + "message": "Om du fortsetter vil du endre e-postadressen til kontoen din. Det vil ikke endre e-postadressen som brukes ved to-faktorinnlogging. Du kan endre denne e-postadressen i to-trinns innloggingsinnstillinger." }, "newEmail": { - "message": "Ny E-postadresse" + "message": "Ny e-postadresse" }, "code": { "message": "Kode" @@ -937,13 +942,13 @@ "message": "Å fortsette vil logge deg ut av din nåværende økt, og krever at du logger deg på igjen. Aktive økter på andre enheter kan forbli aktive i opptil en time." }, "emailChanged": { - "message": "E-postadressen er endret" + "message": "E-postadressen endret" }, "logBackIn": { "message": "Vennligst logg på igjen." }, "logBackInOthersToo": { - "message": "Vennligst logg inn på nytt. Dersom du bruker andre Bitwarden-apper og -programmer, logg av og på på dem også." + "message": "Vennligst logg inn på nytt. Dersom du bruker andre Bitwarden-applikasjoner logg av og på på dem også." }, "changeMasterPassword": { "message": "Endre hovedpassordet" @@ -967,7 +972,7 @@ "message": "KDF-algoritme" }, "kdfIterations": { - "message": "KDF-gjentakelser" + "message": "KDF-iterasjoner" }, "kdfIterationsDesc": { "message": "Flere KDF-gjentakelser kan hjelpe til med å beskytte superpassordet fra å bli tvunget inn i av en angriper. Vi anbefaler en verdi på $VALUE$ eller mer.", @@ -991,7 +996,7 @@ "message": "Endre KDF" }, "encKeySettingsChanged": { - "message": "Krypteringsnøkkelinnstillingene har blitt endret" + "message": "Krypteringsnøkkelinnstillingene endret" }, "dangerZone": { "message": "Faresone" @@ -1003,19 +1008,19 @@ "message": "Fjern autorisering av økter" }, "deauthorizeSessionsDesc": { - "message": "Er du bekymret for at kontoen din er pålogget på en annen enhet? Fortsett nedenfor for å fjerne autoriseringen til alle datamaskiner eller enheter som du tidligere har brukt. Dette sikkerhetstrinnet er anbefalt dersom du tidligere har brukt en offentlig PC eller lagret passordet ditt ved et uhell på en enhet som ikke er din. Dette trinnet vil også fjerne alle tidligere huskede 2-trinnsinnloggingsøkter." + "message": "Er du bekymret for at kontoen din er pålogget på en annen enhet? Fortsett nedenfor for å fjerne autoriseringen til alle datamaskiner eller enheter som du tidligere har brukt. Dette sikkerhetstrinnet er anbefalt dersom du tidligere har brukt en offentlig datamaskin eller lagret passordet ditt ved et uhell på en enhet som ikke er din. Dette vil også fjerne alle tidligere huskede 2-trinnsinnloggingsøkter." }, "deauthorizeSessionsWarning": { "message": "Å fortsette vil også logge deg av din nåværende økt, og gjør at du vil måtte logge på igjen. Du vil også bli bedt om 2-trinnsinnlogging igjen, dersom det er aktivert. Aktive økter på andre enheter kan kanskje forbli aktive i opptil en time." }, "sessionsDeauthorized": { - "message": "Alle økter har mistet autoriseringen" + "message": "Fjernet autoriseringen fra alle økter" }, "purgeVault": { "message": "Tøm hvelvet" }, "purgedOrganizationVault": { - "message": "Tømte organisasjonens hvelv." + "message": "Organisasjonens hvelv tømt." }, "vaultAccessedByProvider": { "message": "Hvelv tilgjengelig av leverandør." @@ -1425,6 +1430,9 @@ "reports": { "message": "Rapporter" }, + "reportsDesc": { + "message": "Identifiser og løs sikkerhetsavvik i kontoene dine på nettet ved å klikke på rapportene nedenfor." + }, "unsecuredWebsitesReport": { "message": "Rapport om usikrede nettsteder" }, @@ -1558,7 +1566,7 @@ "message": "Databruddrapporter" }, "breachDesc": { - "message": "Et \"databrudd\" er en hendelse hvor hackere har fått tilgang til et nettsteds dataer på ulovlig vis og så sluppet dem ut i offentlighet. Gå gjennom datatypene som ble kompromittert (E-postadresser, passord, bankkort, osv.) og ta handling deretter, slik som å endre passord." + "message": "Kontoer som har blitt avslørt kan lekke personlig informasjon. Gjør kontoene tryggere ved å aktivere 2FA eller ved å lage et sterkere passord." }, "breachCheckUsernameEmail": { "message": "Sjekk noen av brukernavnene eller E-postadressene som du bruker." @@ -1685,7 +1693,7 @@ "message": "Utvidelser" }, "premiumAccess": { - "message": "Premium tilgang" + "message": "Premium-tilgang" }, "premiumAccessDesc": { "message": "Du kan gi Premium-tilgang til alle brukere i din organisasjon for $PRICE$ /$INTERVAL$.", @@ -2717,7 +2725,7 @@ "message": "Bekreft din kontos E-postadresse for å få tilgang til alle egenskapene." }, "verifyEmailFirst": { - "message": "Din kontos E-postadresse må først bli verifisert." + "message": "E-postadressen til kontoen din må verifiseres først." }, "checkInboxForVerification": { "message": "Se etter i din E-postkontos innboks for en verifiseringslenke." @@ -2729,10 +2737,10 @@ "message": "Klarte ikke å bekrefte E-postadressen din. Prøv å sende en ny bekreftelses-E-post." }, "emailVerificationRequired": { - "message": "E-postbekreftelse kreves" + "message": "Bekreftelse av e-post nødvendig" }, "emailVerificationRequiredDesc": { - "message": "Du må bekrefte e-posten din for å bruke denne funksjonen." + "message": "Du må bekrefte e-postadressen din for å bruke denne funksjonen." }, "updateBrowser": { "message": "Oppdater nettleseren" @@ -2795,7 +2803,7 @@ "message": "Slett organisasjonen" }, "deletingOrganizationContentWarning": { - "message": "Enter the master password to confirm deletion of $ORGANIZATION$ and all associated data. Vault data in $ORGANIZATION$ includes:", + "message": "Skriv inn hovedpassordet for å bekrefte sletting av $ORGANIZATION$ og alle tilknyttede data. Data i hvelvet i $ORGANIZATION$ inkluderer:", "placeholders": { "organization": { "content": "$1", @@ -2804,10 +2812,10 @@ } }, "deletingOrganizationActiveUserAccountsWarning": { - "message": "User accounts will remain active after deletion but will no longer be associated to this organization." + "message": "Brukerkontoer vil forbli aktive etter sletting, men vil ikke lenger knyttes til denne organisasjonen." }, "deletingOrganizationIsPermanentWarning": { - "message": "Deleting $ORGANIZATION$ is permanent and irreversible.", + "message": "Sletting av $ORGANIZATION$ er permanent og kan ikke angres.", "placeholders": { "organization": { "content": "$1", @@ -3644,14 +3652,14 @@ "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "noSendsInList": { - "message": "There are no Sends to list.", + "message": "Det er ingen Sends å vise.", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "emergencyAccess": { "message": "Nødtilgang" }, "emergencyAccessDesc": { - "message": "Grant and manage emergency access for trusted contacts. Trusted contacts may request access to either View or Takeover your account in case of an emergency. Visit our help page for more information and details into how zero knowledge sharing works." + "message": "Gi og behandle nødstilgang for betrodde kontakter. Pålitelige kontakter kan be om tilgang til enten vis eller overta kontoen din i tilfelle en nødssituasjon. Besøk vår hjelpeside for mer informasjon og detaljer om hvordan null-kunnskapsdeling fungerer." }, "emergencyAccessOwnerWarning": { "message": "Du er en eier av en eller flere organisasjoner. Hvis du gir deg tilgang til en nødkontakt, vil de kunne bruke alle dine rettigheter som eier etter at du har gått over." @@ -3799,17 +3807,17 @@ "message": "Organisasjonens eiere og administratorer er unntatt fra denne policyens håndheving." }, "personalOwnershipSubmitError": { - "message": "Due to an enterprise policy, you are restricted from saving items to your personal vault. Change the Ownership option to an organization and choose from available Collections." + "message": "På grunn av en virksomhetsregel er du begrenset fra å lagre gjenstander til ditt personlige hvelv. Endre eierskapet til en organisasjon og velg blant tilgjengelige samlinger." }, "disableSend": { "message": "Deaktiver Send" }, "disableSendPolicyDesc": { - "message": "Do not allow users to create or edit a Bitwarden Send. Deleting an existing Send is still allowed.", + "message": "Ikke tillat brukere å opprette eller redigere en Bitwarden Send. Å slette en eksisterende Send er fortsatt tillatt.", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "disableSendExemption": { - "message": "Organization users that can manage the organization's policies are exempt from this policy's enforcement." + "message": "Organisasjonsbrukere som kan håndtere organisasjonens regler, er unntatt fra håndheving av denne reglen." }, "sendDisabled": { "message": "Send deaktivert", @@ -3824,21 +3832,21 @@ "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendOptionsPolicyDesc": { - "message": "Set options for creating and editing Sends.", + "message": "Angi alternativer for oppretting og redigering av Sends.", "description": "'Sends' is a plural noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendOptionsExemption": { - "message": "Organization users that can manage the organization's policies are exempt from this policy's enforcement." + "message": "Organisasjonsbrukere som kan håndtere organisasjonens regler, er unntatt fra håndheving av denne reglen." }, "disableHideEmail": { - "message": "Do not allow users to hide their email address from recipients when creating or editing a Send.", + "message": "Ikke tillat brukere å skjule sin e-postadresse fra mottakere når de oppretter eller redigerer en Send.", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendOptionsPolicyInEffect": { - "message": "The following organization policies are currently in effect:" + "message": "Følgende organisasjonspolicyer er for tiden i virkning:" }, "sendDisableHideEmailInEffect": { - "message": "Users are not allowed to hide their email address from recipients when creating or editing a Send.", + "message": "Brukere kan ikke skjule sin e-postadresse fra mottakere når de oppretter eller redigerer en Send.", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "modifiedPolicyId": { @@ -4441,28 +4449,28 @@ "message": "OIDC omdirigerer oppførsel" }, "getClaimsFromUserInfoEndpoint": { - "message": "Get claims from user info endpoint" + "message": "Hent claims fra endpoint for brukeropplysninger" }, "additionalScopes": { - "message": "Custom Scopes" + "message": "Egendefinerte Scopes" }, "additionalUserIdClaimTypes": { - "message": "Custom User ID Claim Types" + "message": "Egendefinerte bruker-ID Claim-typer" }, "additionalEmailClaimTypes": { - "message": "Email Claim Types" + "message": "E-post Claim-typer" }, "additionalNameClaimTypes": { - "message": "Custom Name Claim Types" + "message": "Egendefinerte navne claim-typer" }, "acrValues": { - "message": "Requested Authentication Context Class Reference values" + "message": "Bedt om verdier for Authentication Context Class Reference" }, "expectedReturnAcrValue": { - "message": "Expected \"acr\" Claim Value In Response" + "message": "Forventet \"acr\"-claimverdi i svar" }, "spEntityId": { - "message": "SP Entity ID" + "message": "SP Enhets-ID" }, "spMetadataUrl": { "message": "'SAML 2.0'-metadata-URL" @@ -4474,16 +4482,16 @@ "message": "Navne-ID-format" }, "spOutboundSigningAlgorithm": { - "message": "Outbound Signing Algorithm" + "message": "Utgående signeringsalgoritme" }, "spSigningBehavior": { - "message": "Signing Behavior" + "message": "Signeringsatferd" }, "spMinIncomingSigningAlgorithm": { - "message": "Minimum Incoming Signing Algorithm" + "message": "Minimum innkommende signeringsalgoritme" }, "spWantAssertionsSigned": { - "message": "Expect signed assertions" + "message": "Forvent signerte assertions" }, "spValidateCertificates": { "message": "Valider sertifikater" @@ -4492,49 +4500,49 @@ "message": "Enhets-ID" }, "idpBindingType": { - "message": "Binding Type" + "message": "Bindingstype" }, "idpSingleSignOnServiceUrl": { - "message": "Single Sign On Service URL" + "message": "Single Sign-On tjeneste URL" }, "idpSingleLogoutServiceUrl": { - "message": "Single Log Out Service URL" + "message": "Single Log Out-tjeneste URL" }, "idpX509PublicCert": { "message": "X509 offentlig sertifikat" }, "idpOutboundSigningAlgorithm": { - "message": "Outbound Signing Algorithm" + "message": "Utgående signeringsalgoritme" }, "idpAllowUnsolicitedAuthnResponse": { - "message": "Allow unsolicited authentication response" + "message": "Tillat uoppfordret godkjennelsessvar" }, "idpAllowOutboundLogoutRequests": { - "message": "Allow outbound logout requests" + "message": "Tillat utgående utloggingsforespørsler" }, "idpSignAuthenticationRequests": { - "message": "Sign authentication requests" + "message": "Signér autentiseringsforespørseler" }, "ssoSettingsSaved": { - "message": "Single Sign-On configuration was saved." + "message": "Single Sign-On konfigurasjon ble lagret." }, "sponsoredFamilies": { - "message": "Free Bitwarden Families" + "message": "Gratis Bitwarden Familier" }, "sponsoredFamiliesEligible": { - "message": "You and your family are eligible for Free Bitwarden Families. Redeem with your personal email to keep your data secure even when you are not at work." + "message": "Du og din familie er kvalifisert for Free Bitwarden Familier. Løs inn med din personlige e-post for å holde dataene dine sikre, selv om du ikke er på jobb." }, "sponsoredFamiliesEligibleCard": { - "message": "Redeem your Free Bitwarden for Families plan today to keep your data secure even when you are not at work." + "message": "Løs inn din Free Bitwarden for Familier-abonnement i dag for å holde dataene sikre, selv om du ikke er på jobb." }, "sponsoredFamiliesInclude": { - "message": "The Bitwarden for Families plan include" + "message": "Bitwarden for familier-abonnementet inkluderer" }, "sponsoredFamiliesPremiumAccess": { - "message": "Premium access for up to 6 users" + "message": "Premiumtilgang for opptil 6 brukere" }, "sponsoredFamiliesSharedCollections": { - "message": "Shared collections for Family secrets" + "message": "Delte samlinger til familie-hemmeligheter" }, "badToken": { "message": "Lenken er ikke lenger gyldig. Vennligst ha sponsor på nytt tilbudet." @@ -4564,10 +4572,10 @@ "message": "Du har blitt tilbudt en gratis Bitwarden Familier Planlegg-organisasjon. For å fortsette må du logge inn på kontoen som mottok tilbudet." }, "sponsoredFamiliesAcceptFailed": { - "message": "Unable to accept offer. Please resend the offer email from your enterprise account and try again." + "message": "Tilbudet kan ikke godtas. Vennligst send tilbuds-e-posten fra din virksomhetskonto, og forsøk igen." }, "sponsoredFamiliesAcceptFailedShort": { - "message": "Unable to accept offer. $DESCRIPTION$", + "message": "Kan ikke godta tilbudet. $DESCRIPTION$", "placeholders": { "description": { "content": "$1", @@ -4576,19 +4584,19 @@ } }, "sponsoredFamiliesOffer": { - "message": "Accept Free Bitwarden Families" + "message": "Aksepter gratis Bitwarden Familier" }, "sponsoredFamiliesOfferRedeemed": { - "message": "Free Bitwarden Families offer successfully redeemed" + "message": "Gratis Bitwarden Familier-tilbud er innløst" }, "redeemed": { "message": "Innløst" }, "redeemedAccount": { - "message": "Redeemed Account" + "message": "Konto innløst" }, "revokeAccount": { - "message": "Revoke account $NAME$", + "message": "Opphev konto $NAME$", "placeholders": { "name": { "content": "$1", @@ -4597,7 +4605,7 @@ } }, "resendEmailLabel": { - "message": "Resend Sponsorship email to $NAME$ sponsorship", + "message": "Send sponsorat-e-post til $NAME$ sponsorat på nytt", "placeholders": { "name": { "content": "$1", @@ -4606,7 +4614,7 @@ } }, "freeFamiliesPlan": { - "message": "Free Families Plan" + "message": "Gratis Familier-abonnement" }, "redeemNow": { "message": "Løs inn nå" @@ -4615,13 +4623,13 @@ "message": "Mottaker" }, "removeSponsorship": { - "message": "Remove Sponsorship" + "message": "Fjern sponsorat" }, "removeSponsorshipConfirmation": { - "message": "After removing a sponsorship, you will be responsible for this subscription and related invoices. Are you sure you want to continue?" + "message": "Etter å ha fjernet en sponsor, vil du være ansvarlig for dette abonnementet og relaterte fakturaer. Er du sikker på at du vil fortsette?" }, "sponsorshipCreated": { - "message": "Sponsorship Created" + "message": "Sponsor fjernet" }, "revoke": { "message": "Tilbakekall" @@ -4630,7 +4638,7 @@ "message": "E-post sendt" }, "revokeSponsorshipConfirmation": { - "message": "After removing this account, the Families organization owner will be responsible for this subscription and related invoices. Are you sure you want to continue?" + "message": "Etter at kontoen er fjernet, vil Familier-organisasjonens eier bli ansvarlig for dette abonnementet og relaterede fakturaer. Er du sikker på at du vil fortsette?" }, "removeSponsorshipSuccess": { "message": "Sponsor fjernet" @@ -4714,7 +4722,7 @@ "message": "Koble innlogging med SSO til din selvbetjente dekrypteringsnøkkelserver. Bruk av dette valget vil ikke medlemmer trenge å bruke Master Passwords for å dekryptere hvelvdataene. Kontakt Bitwarden Support for å lage hjelp." }, "keyConnectorPolicyRestriction": { - "message": "\"Login with SSO and Key Connector Decryption\" is enabled. This policy will only apply to Owners and Admins." + "message": "\"Logg inn med SSO og Key Connector Decryption\" er aktivert. Denne policyen gjelder bare for eiere og administratorer." }, "enabledSso": { "message": "Skrudde på SSO" @@ -4723,49 +4731,49 @@ "message": "Skrudde av SSO" }, "enabledKeyConnector": { - "message": "Enabled Key Connector" + "message": "Key Connector aktivert" }, "disabledKeyConnector": { - "message": "Disabled Key Connector" + "message": "Key Connector deaktivert" }, "keyConnectorWarning": { - "message": "Once members begin using Key Connector, your Organization cannot revert to Master Password decryption. Proceed only if you are comfortable deploying and managing a key server." + "message": "Når medlemmer begynner å bruke Key Connector, kan ikke organisasjonen din gå tilbake til hovedpassord-dekryptering. Fortsett kun dersom du er fortrolig med å implementere og administrere en nøkkelserver." }, "migratedKeyConnector": { - "message": "Migrated to Key Connector" + "message": "Migrert til Key Connector" }, "paymentSponsored": { - "message": "Please provide a payment method to associate with the organization. Don't worry, we won't charge you anything unless you select additional features or your sponsorship expires. " + "message": "Angi en betalingsmetode som skal knyttes til organisationen. Ta det med ro, vi vil ikke belaste deg med mindre du velger ytterligere funksjoner, eller at ditt sponsorat går ut. " }, "orgCreatedSponsorshipInvalid": { - "message": "The sponsorship offer has expired. You may delete the organization you created to avoid a charge at the end of your 7 day trial. Otherwise you may close this prompt to keep the organization and assume billing responsibility." + "message": "Sponsortilbuddet er utgått. Du kan slette organisasjonen du har opprettet for at unngå belastning ved utgangen av din 7-dagers prøveperiode. Ellers kan du lukke denne meldingen for å beholde organisasjonen og påta deg faktureringsansvaret." }, "newFamiliesOrganization": { - "message": "New Families Organization" + "message": "Ny Familier-organisation" }, "acceptOffer": { "message": "Aksepter tilbudet" }, "sponsoringOrg": { - "message": "Sponsoring Organization" + "message": "Sponsende organisasjon" }, "keyConnectorTest": { "message": "Test" }, "keyConnectorTestSuccess": { - "message": "Success! Key Connector reached." + "message": "Suksess! Key Connector nådd." }, "keyConnectorTestFail": { - "message": "Cannot reach Key Connector. Check URL." + "message": "Kan ikke nå Key Connector. Sjekk URL." }, "sponsorshipTokenHasExpired": { - "message": "The sponsorship offer has expired." + "message": "Sponsoratet er utgått." }, "freeWithSponsorship": { - "message": "FREE with sponsorship" + "message": "GRATIS med sponsorat" }, "formErrorSummaryPlural": { - "message": "$COUNT$ fields above need your attention.", + "message": "$COUNT$ felt trenger din oppmerksomhet.", "placeholders": { "count": { "content": "$1", @@ -4774,10 +4782,10 @@ } }, "formErrorSummarySingle": { - "message": "1 field above needs your attention." + "message": "1 felt ovenfor trenger din oppmerksomhet." }, "fieldRequiredError": { - "message": "$FIELDNAME$ is required.", + "message": "$FIELDNAME$ er obligatorisk.", "placeholders": { "fieldname": { "content": "$1", @@ -4786,31 +4794,31 @@ } }, "required": { - "message": "required" + "message": "obligatorisk" }, "idpSingleSignOnServiceUrlRequired": { - "message": "Required if Entity ID is not a URL." + "message": "Kreves hvis enhets-ID ikke er en URL." }, "openIdOptionalCustomizations": { - "message": "Optional Customizations" + "message": "Valgfrie tilpasninger" }, "openIdAuthorityRequired": { "message": "Required if Authority is not valid." }, "separateMultipleWithComma": { - "message": "Separate multiple with a comma." + "message": "Avskill flere med komma." }, "sessionTimeout": { - "message": "Your session has timed out. Please go back and try logging in again." + "message": "Økten ble tidsavbrutt. Vennligst gå tilbake og prøv å logge inn på nytt." }, "exportingPersonalVaultTitle": { - "message": "Exporting Personal Vault" + "message": "Eksporterer personlig hvelv" }, "exportingOrganizationVaultTitle": { - "message": "Exporting Organization Vault" + "message": "Eksporterer organisasjonshvelv" }, "exportingPersonalVaultDescription": { - "message": "Only the personal vault items associated with $EMAIL$ will be exported. Organization vault items will not be included.", + "message": "Bare de personlige hvelvets gjenstandene som er knyttet til $EMAIL$ vil bli eksportert. Organisasjonshvelvets gjenstander vil ikke bli inkludert.", "placeholders": { "email": { "content": "$1", @@ -4819,12 +4827,54 @@ } }, "exportingOrganizationVaultDescription": { - "message": "Only the organization vault associated with $ORGANIZATION$ will be exported. Personal vault items and items from other organizations will not be included.", + "message": "Bare organisasjonens hvelv knyttet til $ORGANIZATION$ vil bli eksportert. Personlige hvelvelementer og gjenstander fra andre organisasjoner vil ikke bli inkludert.", "placeholders": { "organization": { "content": "$1", "example": "My Org Name" } } + }, + "backToReports": { + "message": "Tilbake til rapporter" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "Hva vil du generere?" + }, + "passwordType": { + "message": "Passordtype" + }, + "regenerateUsername": { + "message": "Regenerer Brukernavn" + }, + "generateUsername": { + "message": "Generer brukernavn" + }, + "usernameType": { + "message": "Brukernavntype" + }, + "plusAddressedEmail": { + "message": "Pluss-adressert e-post" + }, + "plusAddressedEmailDesc": { + "message": "Bruk e-posttilbyderens sub-adresseringsmuligheter." + }, + "catchallEmail": { + "message": "Catch-all e-post" + }, + "catchallEmailDesc": { + "message": "Bruk domenets konfigurerte catch-all innboks." + }, + "random": { + "message": "Vilkårlig" + }, + "randomWord": { + "message": "Vilkårlig ord" + }, + "service": { + "message": "Tjeneste" } } diff --git a/src/locales/nl/messages.json b/src/locales/nl/messages.json index 0ba9485a..da4c02fb 100644 --- a/src/locales/nl/messages.json +++ b/src/locales/nl/messages.json @@ -187,7 +187,12 @@ "message": "Map bewerken" }, "baseDomain": { - "message": "Basisdomein" + "message": "Basisdomein", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domeinnaam", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Hostnaam", @@ -1425,6 +1430,9 @@ "reports": { "message": "Rapportages" }, + "reportsDesc": { + "message": "Identificeer en sluit beveiligingsgaten in je online accounts door op onderstaande rapporten te klikken." + }, "unsecuredWebsitesReport": { "message": "Niet-beveiligde websites" }, @@ -1447,7 +1455,7 @@ "message": "Geen items in je kluis met onbeveiligde URIs." }, "inactive2faReport": { - "message": "Niet-geactiveerde 2FA" + "message": "Tweestapsaanmelding" }, "inactive2faReportDesc": { "message": "Tweestapsaanmelding (2FA) is een belangrijke instelling die bijdraagt aan de beveiliging van je accounts. Als de website het ondersteunt, zou je altijd tweestapsaanmelding moeten gebruiken." @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Terug naar rapporten" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "Wat wil je genereren?" + }, + "passwordType": { + "message": "Type wachtwoord" + }, + "regenerateUsername": { + "message": "Gebruikersnaam opnieuw genereren" + }, + "generateUsername": { + "message": "Gebruikersnaam genereren" + }, + "usernameType": { + "message": "Type gebruikersnaam" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all e-mail" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Willekeurig" + }, + "randomWord": { + "message": "Willekeurig woord" + }, + "service": { + "message": "Dienst" } } diff --git a/src/locales/nn/messages.json b/src/locales/nn/messages.json index bd222a2a..28cfe2c9 100644 --- a/src/locales/nn/messages.json +++ b/src/locales/nn/messages.json @@ -187,7 +187,12 @@ "message": "Rediger mappe" }, "baseDomain": { - "message": "Grunndomene" + "message": "Grunndomene", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Host", @@ -1425,11 +1430,14 @@ "reports": { "message": "Reports" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { - "message": "Unsecured Websites Report" + "message": "Unsecure Websites" }, "unsecuredWebsitesReportDesc": { - "message": "Using unsecured websites with the http:// scheme can be dangerous. If the website allows, you should always access it using the https:// scheme so that your connection is encrypted." + "message": "URLs that start with http:// don’t use the best available encryption. Change the Login URIs for these accounts to https:// for safer browsing." }, "unsecuredWebsitesFound": { "message": "Unsecured Websites Found" @@ -1447,10 +1455,10 @@ "message": "No items in your vault have unsecured URIs." }, "inactive2faReport": { - "message": "Inactive 2FA Report" + "message": "Inactive Two-step Login" }, "inactive2faReportDesc": { - "message": "Two-factor authentication (2FA) is an important security setting that helps secure your accounts. If the website offers it, you should always enable two-factor authentication." + "message": "Two-step Login adds a layer of protection to your accounts. Turn on Two-Step Login using Bitwarden Authenticator for these accounts or use an alternative method." }, "inactive2faFound": { "message": "Logins Without 2FA Found" @@ -1471,10 +1479,10 @@ "message": "Instructions" }, "exposedPasswordsReport": { - "message": "Exposed Passwords Report" + "message": "Exposed Passwords" }, "exposedPasswordsReportDesc": { - "message": "Exposed passwords are passwords that have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." + "message": "Passwords exposed in a data breach are easy targets for attackers. Change these passwords to prevent potential break-ins." }, "exposedPasswordsFound": { "message": "Exposed Passwords Found" @@ -1504,10 +1512,10 @@ } }, "weakPasswordsReport": { - "message": "Weak Passwords Report" + "message": "Weak Passwords" }, "weakPasswordsReportDesc": { - "message": "Weak passwords can easily be guessed by hackers and automated tools that are used to crack passwords. The Bitwarden password generator can help you create strong passwords." + "message": "Weak passwords can be easily guessed by attackers. Change these passwords to strong ones using the Password Generator." }, "weakPasswordsFound": { "message": "Weak Passwords Found" @@ -1555,10 +1563,10 @@ } }, "dataBreachReport": { - "message": "Data Breach Report" + "message": "Data Breach" }, "breachDesc": { - "message": "A \"breach\" is an incident where a site's data has been illegally accessed by hackers and then released publicly. Review the types of data that were compromised (email addresses, passwords, credit cards etc.) and take appropriate action, such as changing passwords." + "message": "Breached accounts can expose your personal information. Secure breached accounts by enabling 2FA or creating a stronger password." }, "breachCheckUsernameEmail": { "message": "Check any usernames or email addresses that you use." @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/pl/messages.json b/src/locales/pl/messages.json index a16a699c..a7eb6988 100644 --- a/src/locales/pl/messages.json +++ b/src/locales/pl/messages.json @@ -187,7 +187,12 @@ "message": "Edytuj folder" }, "baseDomain": { - "message": "Domena podstawowa" + "message": "Domena podstawowa", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Nazwa domeny", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Host", @@ -1425,11 +1430,14 @@ "reports": { "message": "Raporty" }, + "reportsDesc": { + "message": "Zidentyfikuj i napraw luki bezpieczeństwa na swoich kontach online, klikając raporty poniżej." + }, "unsecuredWebsitesReport": { "message": "Raport niezabezpieczonych stron" }, "unsecuredWebsitesReportDesc": { - "message": "Korzystanie z niezabezpieczonych stron (protokół HTTP) może być niebezpieczne. Jeśli strona na to pozwala, zawsze powinieneś używać protokołu HTTPS, aby Twoje połączenie było szyfrowane." + "message": "Używanie niezabezpieczonych stron (protokół HTTP) może być niebezpieczne. Jeśli strona na to pozwala, zawsze powinieneś używać protokołu HTTPS, aby Twoje połączenie było szyfrowane." }, "unsecuredWebsitesFound": { "message": "Znaleźliśmy niezabezpieczone strony" @@ -1528,7 +1536,7 @@ "message": "Raport identycznych haseł" }, "reusedPasswordsReportDesc": { - "message": "Jeśli korzystasz z tego samego hasła w różnych miejscach, to w przypadku jego ujawnienia w jednej usłudze, hakerzy mogą uzyskać dostęp do wielu Twoich kont. Używaj unikalnych haseł dla każdego z kont lub usług." + "message": "Jeśli używasz tego samego hasła w różnych miejscach, to w przypadku jego ujawnienia w jednej usłudze, hakerzy mogą uzyskać dostęp do wielu Twoich kont. Powinieneś używać unikalnych haseł dla każdego z kont lub usług." }, "reusedPasswordsFound": { "message": "Znaleźliśmy identyczne hasła" @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Wróć do raportów" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "Co chcesz wygenerować?" + }, + "passwordType": { + "message": "Typ hasła" + }, + "regenerateUsername": { + "message": "Wygeneruj ponownie nazwę użytkownika" + }, + "generateUsername": { + "message": "Wygeneruj nazwę użytkownika" + }, + "usernameType": { + "message": "Typ nazwy użytkownika" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Adres catch-all" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Losowo" + }, + "randomWord": { + "message": "Losowe słowo" + }, + "service": { + "message": "Usługa" } } diff --git a/src/locales/pt_BR/messages.json b/src/locales/pt_BR/messages.json index 7b45588f..ba2bcca1 100644 --- a/src/locales/pt_BR/messages.json +++ b/src/locales/pt_BR/messages.json @@ -187,7 +187,12 @@ "message": "Editar Pasta" }, "baseDomain": { - "message": "Domínio de base" + "message": "Domínio de base", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Servidor", @@ -304,13 +309,13 @@ "message": "Logins" }, "typeCardPlural": { - "message": "Cards" + "message": "Cartões" }, "typeIdentityPlural": { - "message": "Identities" + "message": "Identidades" }, "typeSecureNotePlural": { - "message": "Secure Notes" + "message": "Notas Seguras" }, "folders": { "message": "Pastas" @@ -1425,6 +1430,9 @@ "reports": { "message": "Relatórios" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Relatório de Sites Inseguros" }, @@ -1558,7 +1566,7 @@ "message": "Relatório de Violação de Dados" }, "breachDesc": { - "message": "Uma \"violação\" é um incidente em que os dados de um site foram acessados ilegalmente por hackers e liberados publicamente. Revise os tipos de dados que foram comprometidos (endereços de e-mail, senhas, cartões de crédito etc.) e tome as medidas adequadas, como a alteração de senhas." + "message": "Uma \"brecha\" é um incidente em que os dados de um site foram acessados ilegalmente por hackers e liberados publicamente. Revise os tipos de dados que foram comprometidos (endereços de e-mail, senhas, cartões de crédito etc.) e tome as medidas adequadas, como a alteração de senhas." }, "breachCheckUsernameEmail": { "message": "Verifique qualquer nome de usuário ou endereço de e-mail que você usa." @@ -2795,7 +2803,7 @@ "message": "Excluir Organização" }, "deletingOrganizationContentWarning": { - "message": "Enter the master password to confirm deletion of $ORGANIZATION$ and all associated data. Vault data in $ORGANIZATION$ includes:", + "message": "Digite a senha mestra para confirmar a exclusão de $ORGANIZATION$ e todos os dados associados. Os dados do cofre no $ORGANIZATION$ incluem:", "placeholders": { "organization": { "content": "$1", @@ -2804,10 +2812,10 @@ } }, "deletingOrganizationActiveUserAccountsWarning": { - "message": "User accounts will remain active after deletion but will no longer be associated to this organization." + "message": "As contas de usuários permanecerão ativas após a exclusão, mas não estarão mais associadas a essa organização." }, "deletingOrganizationIsPermanentWarning": { - "message": "Deleting $ORGANIZATION$ is permanent and irreversible.", + "message": "A exclusão de $ORGANIZATION$ é permanente e irreversível.", "placeholders": { "organization": { "content": "$1", @@ -4353,7 +4361,7 @@ "message": "Sua Senha Mestra foi alterada recentemente por um administrador em sua organização. Para acessar o cofre, você deve atualizar sua Senha Mestra agora. Prosseguir irá desconectá-lo da sessão atual, exigindo que você faça login novamente. As sessões ativas em outros dispositivos podem continuar ativas por até uma hora." }, "masterPasswordInvalidWarning": { - "message": "Your Master Password does not meet the policy requirements of this organization. In order to join the organization, you must update your Master Password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour." + "message": "Sua Senha Mestra foi alterada recentemente por um administrador de sua organização. Para acessar o cofre, você precisa atualizar sua Senha Mestra agora. O processo desconectará você da sessão atual, exigindo que você inicie a sessão novamente. Sessões ativas em outros dispositivos podem continuar ativas por até uma hora." }, "maximumVaultTimeout": { "message": "Tempo Limite do Cofre" @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/pt_PT/messages.json b/src/locales/pt_PT/messages.json index 9913834d..5be873ac 100644 --- a/src/locales/pt_PT/messages.json +++ b/src/locales/pt_PT/messages.json @@ -187,7 +187,12 @@ "message": "Editar pasta" }, "baseDomain": { - "message": "Domínio base" + "message": "Domínio base", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Servidor", @@ -1425,6 +1430,9 @@ "reports": { "message": "Relatórios" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Relatório de websites inseguros" }, @@ -1474,7 +1482,7 @@ "message": "Relatório de palavras-passe expostas" }, "exposedPasswordsReportDesc": { - "message": "As palavras-passe expostas são palavras-passe que foram descobertas em brechas de dados conhecidas que foram lançadas publicamente ou vendidas na dark web por hackers." + "message": "Exposed passwords are passwords have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." }, "exposedPasswordsFound": { "message": "Palavras-passe expostas encontradas" @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/ro/messages.json b/src/locales/ro/messages.json index e2e88500..c61b27f1 100644 --- a/src/locales/ro/messages.json +++ b/src/locales/ro/messages.json @@ -187,7 +187,12 @@ "message": "Editare dosar" }, "baseDomain": { - "message": "Domeniu de bază" + "message": "Domeniu de bază", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Nume de domeniu", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Gazdă", @@ -1425,11 +1430,14 @@ "reports": { "message": "Rapoarte" }, + "reportsDesc": { + "message": "Identificați și eliminați lacunele de securitate din conturile dvs. online făcând clic pe rapoartele de mai jos." + }, "unsecuredWebsitesReport": { - "message": "Raport de saituri nesecurizate" + "message": "Site-uri web nesigure" }, "unsecuredWebsitesReportDesc": { - "message": "Utilizarea saiturilor nesecurizate cu schema http:// poate fi periculoasă. Dacă saitul permite, ar trebui să îl accesați întotdeauna utilizând schema https://, astfel încât conexiunea dvs. să fie criptată." + "message": "URL-urile care încep cu http:// nu utilizează cea mai bună criptare disponibilă. Schimbați URI-urile de conectare pentru aceste conturi cu https:// pentru o navigare mai sigură." }, "unsecuredWebsitesFound": { "message": "S-au găsit saituri web nesecurizate" @@ -1447,10 +1455,10 @@ "message": "Niciun articol din seiful dvs. nu are URI-uri nesecurizate." }, "inactive2faReport": { - "message": "Raport 2FA inactiv" + "message": "Autentificare în doi pași inactivă" }, "inactive2faReportDesc": { - "message": "Autentificarea cu doi factori (2FA) este o setare importantă de securitate care vă ajută să vă securizați conturile. Dacă saitul îl oferă, ar trebui să activați întotdeauna autentificarea cu doi factori." + "message": "Autentificarea în doi pași adaugă un nivel de protecție pentru conturile d-voastră. Activați Autentificarea în doi pași utilizând Autentificatorul Bitwarden pentru aceste conturi sau utilizați o metodă alternativă." }, "inactive2faFound": { "message": "S-au găsit conectări fără 2FA" @@ -1471,10 +1479,10 @@ "message": "Instrucțiuni" }, "exposedPasswordsReport": { - "message": "Raport de parole dezvăluite" + "message": "Parolele expuse" }, "exposedPasswordsReportDesc": { - "message": "Parolele dezvăluite sunt parole care au fost descoperite în scurgeri cunoscute de date care au fost lansate public sau vândute pe dark web de către hackeri." + "message": "Parolele expuse în cazul unei încălcări a securității datelor sunt ținte ușoare pentru atacatori. Schimbați aceste parole pentru a preveni eventualele intruziuni." }, "exposedPasswordsFound": { "message": "S-au găsit parole dezvăluite" @@ -1504,10 +1512,10 @@ } }, "weakPasswordsReport": { - "message": "Raport de parole slabe" + "message": "Parole slabe" }, "weakPasswordsReportDesc": { - "message": "Parolele slabe pot fi ușor ghicite de hackeri și de instrumente automate folosite la spargerea parolelor. Generatorul de parole Bitwarden vă poate ajuta la crearea unor parole puternice." + "message": "Parolele slabe pot fi ușor ghicite de atacatori. Schimbați aceste parole cu unele puternice folosind Generatorul de parole." }, "weakPasswordsFound": { "message": "S-au găsit parole slabe" @@ -1525,10 +1533,10 @@ "message": "Niciun articol din seiful dvs. nu are parole slabe." }, "reusedPasswordsReport": { - "message": "Raport de parole refolosite" + "message": "Parole refolosite" }, "reusedPasswordsReportDesc": { - "message": "Dacă unul din serviciile folosite este compromis, folosind aceeași parolă în altă parte poate permite hackerilor să aibă acces ușor la mai multe conturi online. Trebuie să folosiți parole unice pentru fiecare cont sau servici." + "message": "Reutilizarea parolelor facilitează accesul atacatorilor la mai multe conturi. Schimbați aceste parole astfel încât fiecare să fie unică." }, "reusedPasswordsFound": { "message": "S-au găsit parole refolosite" @@ -1555,10 +1563,10 @@ } }, "dataBreachReport": { - "message": "Raport de scurgere de date" + "message": "Breșă de date" }, "breachDesc": { - "message": "O \"scurgere\" este un incident unde datele unui sait au fost accesate ilegal de hackeri apoi dezvăluite public. Verificați tipul de date compromise (e-mail, parole, carduri de credit etc.) și luați măsura adecvată, cum ar fi schimbarea parolelor." + "message": "Conturile care au fost piratate vă pot expune informațiile personale. Protejați conturile compromise prin activarea 2FA sau prin crearea unei parole mai puternice." }, "breachCheckUsernameEmail": { "message": "Verificați orice nume de utilizator sau adresă e-mail pe care o folosiți." @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Înapoi la rapoarte" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "Ce doriți să generați?" + }, + "passwordType": { + "message": "Tip de parolă" + }, + "regenerateUsername": { + "message": "Regenerare nume de utilizator" + }, + "generateUsername": { + "message": "Generare nume de utilizator" + }, + "usernameType": { + "message": "Tip de nume de utilizator" + }, + "plusAddressedEmail": { + "message": "Plus e-mail adresat" + }, + "plusAddressedEmailDesc": { + "message": "Utilizați capacitățile de subadresare ale furnizorului dvs. de e-mail." + }, + "catchallEmail": { + "message": "E-mail Catch-all" + }, + "catchallEmailDesc": { + "message": "Utilizați inbox-ul catch-all configurat pentru domeniul dvs." + }, + "random": { + "message": "Aleatoriu" + }, + "randomWord": { + "message": "Cuvânt aleatoriu" + }, + "service": { + "message": "Serviciu" } } diff --git a/src/locales/ru/messages.json b/src/locales/ru/messages.json index 3f2966cd..50a4336a 100644 --- a/src/locales/ru/messages.json +++ b/src/locales/ru/messages.json @@ -187,7 +187,12 @@ "message": "Изменить папку" }, "baseDomain": { - "message": "Основной домен" + "message": "Основной домен", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Доменное имя", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Хост", @@ -1425,6 +1430,9 @@ "reports": { "message": "Отчеты" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Отчет о незащищенных сайтах" }, @@ -1555,10 +1563,10 @@ } }, "dataBreachReport": { - "message": "Отчет об утечке данных" + "message": "Отчет о данных утечек" }, "breachDesc": { - "message": "Утечка - это инцидент, при котором данные сайта стали незаконно доступны хакерам и впоследствии опубликованы. Проверьте типы данных, которые были скомпрометированы (адреса email, пароли, кредитные карты и т. д.) и примите соответствующие меры, такие как изменение паролей." + "message": "Утечка - это когда данные сайта стали незаконно доступны хакерам и впоследствии опубликованы. Проверьте типы данных, которые были скомпрометированы (адреса email, пароли, кредитные карты и т.д.), и примите соответствующие меры, например измените пароли." }, "breachCheckUsernameEmail": { "message": "Проверьте имена пользователей или адреса email, которые вы используете." @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Вернуться к отчетам" + }, + "generator": { + "message": "Генератор" + }, + "whatWouldYouLikeToGenerate": { + "message": "Что вы хотите сгенерировать?" + }, + "passwordType": { + "message": "Тип пароля" + }, + "regenerateUsername": { + "message": "Восстановить имя пользователя" + }, + "generateUsername": { + "message": "Создать имя пользователя" + }, + "usernameType": { + "message": "Тип имени пользователя" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Универсальная электронная почта" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Случайно" + }, + "randomWord": { + "message": "Случайное слово" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/si/messages.json b/src/locales/si/messages.json index cc1788a8..4bc6e350 100644 --- a/src/locales/si/messages.json +++ b/src/locales/si/messages.json @@ -187,7 +187,12 @@ "message": "බහාලුම සංස්කරණය" }, "baseDomain": { - "message": "Base domain" + "message": "Base domain", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Host", @@ -1425,11 +1430,14 @@ "reports": { "message": "Reports" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { - "message": "Unsecured Websites Report" + "message": "Unsecure Websites" }, "unsecuredWebsitesReportDesc": { - "message": "Using unsecured websites with the http:// scheme can be dangerous. If the website allows, you should always access it using the https:// scheme so that your connection is encrypted." + "message": "URLs that start with http:// don’t use the best available encryption. Change the Login URIs for these accounts to https:// for safer browsing." }, "unsecuredWebsitesFound": { "message": "Unsecured Websites Found" @@ -1447,10 +1455,10 @@ "message": "No items in your vault have unsecured URIs." }, "inactive2faReport": { - "message": "Inactive 2FA Report" + "message": "Inactive Two-step Login" }, "inactive2faReportDesc": { - "message": "Two-factor authentication (2FA) is an important security setting that helps secure your accounts. If the website offers it, you should always enable two-factor authentication." + "message": "Two-step Login adds a layer of protection to your accounts. Turn on Two-Step Login using Bitwarden Authenticator for these accounts or use an alternative method." }, "inactive2faFound": { "message": "Logins Without 2FA Found" @@ -1471,10 +1479,10 @@ "message": "Instructions" }, "exposedPasswordsReport": { - "message": "Exposed Passwords Report" + "message": "Exposed Passwords" }, "exposedPasswordsReportDesc": { - "message": "Exposed passwords are passwords that have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." + "message": "Passwords exposed in a data breach are easy targets for attackers. Change these passwords to prevent potential break-ins." }, "exposedPasswordsFound": { "message": "Exposed Passwords Found" @@ -1504,10 +1512,10 @@ } }, "weakPasswordsReport": { - "message": "Weak Passwords Report" + "message": "Weak Passwords" }, "weakPasswordsReportDesc": { - "message": "Weak passwords can easily be guessed by hackers and automated tools that are used to crack passwords. The Bitwarden password generator can help you create strong passwords." + "message": "Weak passwords can be easily guessed by attackers. Change these passwords to strong ones using the Password Generator." }, "weakPasswordsFound": { "message": "Weak Passwords Found" @@ -1525,10 +1533,10 @@ "message": "No items in your vault have weak passwords." }, "reusedPasswordsReport": { - "message": "Reused Passwords Report" + "message": "Reused Passwords" }, "reusedPasswordsReportDesc": { - "message": "If a service that you use is compromised, reusing the same password elsewhere can allow hackers to easily gain access to more of your online accounts. You should use a unique password for every account or service." + "message": "Reusing passwords makes it easier for attackers to break into multiple accounts. Change these passwords so that each is unique." }, "reusedPasswordsFound": { "message": "Reused Passwords Found" @@ -1555,10 +1563,10 @@ } }, "dataBreachReport": { - "message": "Data Breach Report" + "message": "Data Breach" }, "breachDesc": { - "message": "A \"breach\" is an incident where a site's data has been illegally accessed by hackers and then released publicly. Review the types of data that were compromised (email addresses, passwords, credit cards etc.) and take appropriate action, such as changing passwords." + "message": "Breached accounts can expose your personal information. Secure breached accounts by enabling 2FA or creating a stronger password." }, "breachCheckUsernameEmail": { "message": "Check any usernames or email addresses that you use." @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/sk/messages.json b/src/locales/sk/messages.json index d632c6c6..538c4583 100644 --- a/src/locales/sk/messages.json +++ b/src/locales/sk/messages.json @@ -187,7 +187,12 @@ "message": "Upraviť priečinok" }, "baseDomain": { - "message": "Základná doména" + "message": "Základná doména", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Názov domény", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Hostiteľ", @@ -1425,6 +1430,9 @@ "reports": { "message": "Reporty" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Správa o nezabezpečených stránkach" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generátor" + }, + "whatWouldYouLikeToGenerate": { + "message": "Čo by ste chceli vygenerovať?" + }, + "passwordType": { + "message": "Typ hesla" + }, + "regenerateUsername": { + "message": "Vygenerovať nové používateľské meno" + }, + "generateUsername": { + "message": "Vygenerovať používateľské meno" + }, + "usernameType": { + "message": "Typ používateľského mena" + }, + "plusAddressedEmail": { + "message": "E-mail s plusovým aliasom" + }, + "plusAddressedEmailDesc": { + "message": "Použiť možnosti subadresovania svojho poskytovateľa e-mailu." + }, + "catchallEmail": { + "message": "Catch-all e-mail" + }, + "catchallEmailDesc": { + "message": "Použiť doručenú poštu typu catch-all nastavenú na doméne." + }, + "random": { + "message": "Náhodné" + }, + "randomWord": { + "message": "Náhodné slovo" + }, + "service": { + "message": "Služba" } } diff --git a/src/locales/sl/messages.json b/src/locales/sl/messages.json index 0c0391b7..37b549ba 100644 --- a/src/locales/sl/messages.json +++ b/src/locales/sl/messages.json @@ -187,7 +187,12 @@ "message": "Uredi mapo" }, "baseDomain": { - "message": "Domena" + "message": "Domena", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Gostitelj", @@ -1425,11 +1430,14 @@ "reports": { "message": "Reports" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { - "message": "Unsecured Websites Report" + "message": "Unsecure Websites" }, "unsecuredWebsitesReportDesc": { - "message": "Using unsecured websites with the http:// scheme can be dangerous. If the website allows, you should always access it using the https:// scheme so that your connection is encrypted." + "message": "URLs that start with http:// don’t use the best available encryption. Change the Login URIs for these accounts to https:// for safer browsing." }, "unsecuredWebsitesFound": { "message": "Unsecured Websites Found" @@ -1447,10 +1455,10 @@ "message": "No items in your vault have unsecured URIs." }, "inactive2faReport": { - "message": "Inactive 2FA Report" + "message": "Inactive Two-step Login" }, "inactive2faReportDesc": { - "message": "Two-factor authentication (2FA) is an important security setting that helps secure your accounts. If the website offers it, you should always enable two-factor authentication." + "message": "Two-step Login adds a layer of protection to your accounts. Turn on Two-Step Login using Bitwarden Authenticator for these accounts or use an alternative method." }, "inactive2faFound": { "message": "Logins Without 2FA Found" @@ -1471,10 +1479,10 @@ "message": "Instructions" }, "exposedPasswordsReport": { - "message": "Exposed Passwords Report" + "message": "Exposed Passwords" }, "exposedPasswordsReportDesc": { - "message": "Exposed passwords are passwords that have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." + "message": "Passwords exposed in a data breach are easy targets for attackers. Change these passwords to prevent potential break-ins." }, "exposedPasswordsFound": { "message": "Exposed Passwords Found" @@ -1504,10 +1512,10 @@ } }, "weakPasswordsReport": { - "message": "Weak Passwords Report" + "message": "Weak Passwords" }, "weakPasswordsReportDesc": { - "message": "Weak passwords can easily be guessed by hackers and automated tools that are used to crack passwords. The Bitwarden password generator can help you create strong passwords." + "message": "Weak passwords can be easily guessed by attackers. Change these passwords to strong ones using the Password Generator." }, "weakPasswordsFound": { "message": "Weak Passwords Found" @@ -1525,10 +1533,10 @@ "message": "No items in your vault have weak passwords." }, "reusedPasswordsReport": { - "message": "Reused Passwords Report" + "message": "Reused Passwords" }, "reusedPasswordsReportDesc": { - "message": "If a service that you use is compromised, reusing the same password elsewhere can allow hackers to easily gain access to more of your online accounts. You should use a unique password for every account or service." + "message": "Reusing passwords makes it easier for attackers to break into multiple accounts. Change these passwords so that each is unique." }, "reusedPasswordsFound": { "message": "Reused Passwords Found" @@ -1555,10 +1563,10 @@ } }, "dataBreachReport": { - "message": "Data Breach Report" + "message": "Data Breach" }, "breachDesc": { - "message": "A \"breach\" is an incident where a site's data has been illegally accessed by hackers and then released publicly. Review the types of data that were compromised (email addresses, passwords, credit cards etc.) and take appropriate action, such as changing passwords." + "message": "Breached accounts can expose your personal information. Secure breached accounts by enabling 2FA or creating a stronger password." }, "breachCheckUsernameEmail": { "message": "Check any usernames or email addresses that you use." @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/sr/messages.json b/src/locales/sr/messages.json index 44a1fb63..3535736d 100644 --- a/src/locales/sr/messages.json +++ b/src/locales/sr/messages.json @@ -187,7 +187,12 @@ "message": "Urеdi fasciklu" }, "baseDomain": { - "message": "Osnovni domen" + "message": "Osnovni domen", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Host", @@ -1425,11 +1430,14 @@ "reports": { "message": "Izveštaji" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { - "message": "Unsecured Websites Report" + "message": "Unsecure Websites" }, "unsecuredWebsitesReportDesc": { - "message": "Using unsecured websites with the http:// scheme can be dangerous. If the website allows, you should always access it using the https:// scheme so that your connection is encrypted." + "message": "URLs that start with http:// don’t use the best available encryption. Change the Login URIs for these accounts to https:// for safer browsing." }, "unsecuredWebsitesFound": { "message": "Unsecured Websites Found" @@ -1447,10 +1455,10 @@ "message": "No items in your vault have unsecured URIs." }, "inactive2faReport": { - "message": "Inactive 2FA Report" + "message": "Inactive Two-step Login" }, "inactive2faReportDesc": { - "message": "Two-factor authentication (2FA) is an important security setting that helps secure your accounts. If the website offers it, you should always enable two-factor authentication." + "message": "Two-step Login adds a layer of protection to your accounts. Turn on Two-Step Login using Bitwarden Authenticator for these accounts or use an alternative method." }, "inactive2faFound": { "message": "Logins Without 2FA Found" @@ -1471,10 +1479,10 @@ "message": "Uputstvo" }, "exposedPasswordsReport": { - "message": "Exposed Passwords Report" + "message": "Exposed Passwords" }, "exposedPasswordsReportDesc": { - "message": "Exposed passwords are passwords that have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." + "message": "Passwords exposed in a data breach are easy targets for attackers. Change these passwords to prevent potential break-ins." }, "exposedPasswordsFound": { "message": "Exposed Passwords Found" @@ -1504,10 +1512,10 @@ } }, "weakPasswordsReport": { - "message": "Weak Passwords Report" + "message": "Weak Passwords" }, "weakPasswordsReportDesc": { - "message": "Weak passwords can easily be guessed by hackers and automated tools that are used to crack passwords. The Bitwarden password generator can help you create strong passwords." + "message": "Weak passwords can be easily guessed by attackers. Change these passwords to strong ones using the Password Generator." }, "weakPasswordsFound": { "message": "Weak Passwords Found" @@ -1525,10 +1533,10 @@ "message": "No items in your vault have weak passwords." }, "reusedPasswordsReport": { - "message": "Reused Passwords Report" + "message": "Reused Passwords" }, "reusedPasswordsReportDesc": { - "message": "If a service that you use is compromised, reusing the same password elsewhere can allow hackers to easily gain access to more of your online accounts. You should use a unique password for every account or service." + "message": "Reusing passwords makes it easier for attackers to break into multiple accounts. Change these passwords so that each is unique." }, "reusedPasswordsFound": { "message": "Reused Passwords Found" @@ -1555,10 +1563,10 @@ } }, "dataBreachReport": { - "message": "Data Breach Report" + "message": "Data Breach" }, "breachDesc": { - "message": "A \"breach\" is an incident where a site's data has been illegally accessed by hackers and then released publicly. Review the types of data that were compromised (email addresses, passwords, credit cards etc.) and take appropriate action, such as changing passwords." + "message": "Breached accounts can expose your personal information. Secure breached accounts by enabling 2FA or creating a stronger password." }, "breachCheckUsernameEmail": { "message": "Check any usernames or email addresses that you use." @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/sv/messages.json b/src/locales/sv/messages.json index 52776e88..744cc05c 100644 --- a/src/locales/sv/messages.json +++ b/src/locales/sv/messages.json @@ -187,7 +187,12 @@ "message": "Redigera mapp" }, "baseDomain": { - "message": "Basdomän" + "message": "Basdomän", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Värd", @@ -1425,6 +1430,9 @@ "reports": { "message": "Rapporter" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Rapport om osäkra webbplatser" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/tr/messages.json b/src/locales/tr/messages.json index bcb0250f..37a45dea 100644 --- a/src/locales/tr/messages.json +++ b/src/locales/tr/messages.json @@ -187,7 +187,12 @@ "message": "Klasörü düzenle" }, "baseDomain": { - "message": "Ana alan adı" + "message": "Ana alan adı", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Alan adı", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Sunucu", @@ -1425,6 +1430,9 @@ "reports": { "message": "Raporlar" }, + "reportsDesc": { + "message": "Aşağıdaki raporlara tıklayarak çevrimiçi hesaplarınızdaki güvenlik açıklarını görün ve kapatın." + }, "unsecuredWebsitesReport": { "message": "Güvensiz Web Siteler Raporu" }, @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Raporlara geri dön" + }, + "generator": { + "message": "Oluşturucu" + }, + "whatWouldYouLikeToGenerate": { + "message": "Ne oluşturmak istersiniz?" + }, + "passwordType": { + "message": "Parola türü" + }, + "regenerateUsername": { + "message": "Kullanıcı adını yeniden oluştur" + }, + "generateUsername": { + "message": "Kullanıcı adı oluştur" + }, + "usernameType": { + "message": "Kullanıcı adı türü" + }, + "plusAddressedEmail": { + "message": "Artı adresli e-posta" + }, + "plusAddressedEmailDesc": { + "message": "E-posta sağlayıcınızın alt adres özelliklerini kullanın." + }, + "catchallEmail": { + "message": "Catch-all e-posta" + }, + "catchallEmailDesc": { + "message": "Alan adınızın tüm iletileri yakalamaya ayarlanmış adresini kullanın." + }, + "random": { + "message": "Rastgele" + }, + "randomWord": { + "message": "Rastgele kelime" + }, + "service": { + "message": "Servis" } } diff --git a/src/locales/uk/messages.json b/src/locales/uk/messages.json index b038c3eb..4ece7d0d 100644 --- a/src/locales/uk/messages.json +++ b/src/locales/uk/messages.json @@ -187,7 +187,12 @@ "message": "Редагувати теку" }, "baseDomain": { - "message": "Основний домен" + "message": "Основний домен", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Вузол", @@ -1425,6 +1430,9 @@ "reports": { "message": "Звіти" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Звіт про незахищені вебсайти" }, @@ -1474,7 +1482,7 @@ "message": "Звіт викритих паролів" }, "exposedPasswordsReportDesc": { - "message": "Викритими називаються паролі, які було знайдено у відомих витоках даних, що публікуються в загальнодоступних місцях або продаються на чорному ринку в інтернеті хакерами." + "message": "Exposed passwords are passwords have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." }, "exposedPasswordsFound": { "message": "Знайдено викриті паролі" @@ -4444,22 +4452,22 @@ "message": "Отримувати запити від інформації користувача кінцевої точки" }, "additionalScopes": { - "message": "Додаткові/Власні межі (розділені комами)" + "message": "Власні області" }, "additionalUserIdClaimTypes": { - "message": "Додаткові/Власні типи запитів ID користувача (розділені комами)" + "message": "Власні типи запитів ID користувача" }, "additionalEmailClaimTypes": { - "message": "Додаткові/Власні типи запитів е-пошти (розділені комами)" + "message": "Типи запитів е-пошти" }, "additionalNameClaimTypes": { - "message": "Додаткові/Власні типи запитів імені (розділені комами)" + "message": "Типи запитів власного імені" }, "acrValues": { - "message": "Запитані значення посилання класу контексту автентифікації (acr_values)" + "message": "Запитані значення посилання класу контексту автентифікації" }, "expectedReturnAcrValue": { - "message": "Очікувалось значення запиту \"acr\" у відповіді (засвідчення acr)" + "message": "Очікувалось значення запиту \"acr\" у відповіді" }, "spEntityId": { "message": "ID об'єкта SP" @@ -4483,7 +4491,7 @@ "message": "Мінімальний алгоритм вхідного підписання" }, "spWantAssertionsSigned": { - "message": "Вимагається підпис підтвердження" + "message": "Очікується підпис підтвердження" }, "spValidateCertificates": { "message": "Перевірка сертифікатів" @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/vi/messages.json b/src/locales/vi/messages.json index 8f1c2c4c..209bb0a6 100644 --- a/src/locales/vi/messages.json +++ b/src/locales/vi/messages.json @@ -187,7 +187,12 @@ "message": "Chỉnh sửa thư mục" }, "baseDomain": { - "message": "Tên miền cơ sở" + "message": "Tên miền cơ sở", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "Domain Name", + "description": "Domain name. Ex. website.com" }, "host": { "message": "Máy chủ", @@ -1425,11 +1430,14 @@ "reports": { "message": "Báo cáo" }, + "reportsDesc": { + "message": "Identify and close security gaps in your online accounts by clicking the reports below." + }, "unsecuredWebsitesReport": { "message": "Báo cáo trang web không an toàn" }, "unsecuredWebsitesReportDesc": { - "message": "Using unsecured websites with the http:// scheme can be dangerous. If the website allows, you should always access it using the https:// scheme so that your connection is encrypted." + "message": "URLs that start with http:// don’t use the best available encryption. Change the Login URIs for these accounts to https:// for safer browsing." }, "unsecuredWebsitesFound": { "message": "Tìm thấy trang web không an toàn" @@ -1447,7 +1455,7 @@ "message": "No items in your vault have unsecured URIs." }, "inactive2faReport": { - "message": "Inactive 2FA Report" + "message": "Inactive Two-step Login" }, "inactive2faReportDesc": { "message": "Xác thực 2 bước là một bước quan trọng để bảo vệ tài khoản của bạn khỏi hacker. Nếu trang web cho phép, bạn nên kích hoạt xác thực 2 bước." @@ -1528,7 +1536,7 @@ "message": "Báo cáo mật khẩu tái sử dụng" }, "reusedPasswordsReportDesc": { - "message": "If a service that you use is compromised, reusing the same password elsewhere can allow hackers to easily gain access to more of your online accounts. You should use a unique password for every account or service." + "message": "Reusing passwords makes it easier for attackers to break into multiple accounts. Change these passwords so that each is unique." }, "reusedPasswordsFound": { "message": "Phát hiện mật khẩu tái sử dụng" @@ -1558,7 +1566,7 @@ "message": "Báo cáo dữ liệu bị rò rĩ" }, "breachDesc": { - "message": "A \"breach\" is an incident where a site's data has been illegally accessed by hackers and then released publicly. Review the types of data that were compromised (email addresses, passwords, credit cards etc.) and take appropriate action, such as changing passwords." + "message": "Breached accounts can expose your personal information. Secure breached accounts by enabling 2FA or creating a stronger password." }, "breachCheckUsernameEmail": { "message": "Check any usernames or email addresses that you use." @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "Back to Reports" + }, + "generator": { + "message": "Generator" + }, + "whatWouldYouLikeToGenerate": { + "message": "What would you like to generate?" + }, + "passwordType": { + "message": "Password Type" + }, + "regenerateUsername": { + "message": "Regenerate Username" + }, + "generateUsername": { + "message": "Generate Username" + }, + "usernameType": { + "message": "Username Type" + }, + "plusAddressedEmail": { + "message": "Plus Addressed Email" + }, + "plusAddressedEmailDesc": { + "message": "Use your email provider's sub-addressing capabilities." + }, + "catchallEmail": { + "message": "Catch-all Email" + }, + "catchallEmailDesc": { + "message": "Use your domain's configured catch-all inbox." + }, + "random": { + "message": "Random" + }, + "randomWord": { + "message": "Random Word" + }, + "service": { + "message": "Service" } } diff --git a/src/locales/zh_CN/messages.json b/src/locales/zh_CN/messages.json index 85254f93..2511d842 100644 --- a/src/locales/zh_CN/messages.json +++ b/src/locales/zh_CN/messages.json @@ -187,7 +187,12 @@ "message": "编辑文件夹" }, "baseDomain": { - "message": "基础域" + "message": "基础域", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "域名", + "description": "Domain name. Ex. website.com" }, "host": { "message": "主机", @@ -1425,11 +1430,14 @@ "reports": { "message": "报告" }, + "reportsDesc": { + "message": "点击下面的报告,识别并消除您的在线账户中的安全漏洞。" + }, "unsecuredWebsitesReport": { - "message": "不安全网站报告" + "message": "不安全的网站报告" }, "unsecuredWebsitesReportDesc": { - "message": "使用带 http:// 的不安全网站是很危险的。如果网站允许,您应始终使用带 https:// 的加密连接来访问它们。" + "message": "以 http:// 开头的 URL 没有使用最好的加密方式。将这些账户的登录 URI 更改为 https://,以便更安全地浏览。" }, "unsecuredWebsitesFound": { "message": "发现不安全的网站" @@ -1447,10 +1455,10 @@ "message": "没有在你的密码库中发现带不安全 URI 的项目。" }, "inactive2faReport": { - "message": "未激活 2FA 报告" + "message": "未激活的两步登录" }, "inactive2faReportDesc": { - "message": "双重身份验证(2FA)是保护您账户安全的一个重要安全设置。如果网站提供双重身份验证,您应该始终启用它。" + "message": "两步登录为您的账户增加了一层保护。使用 Bitwarden 验证器或其他方式为这些账户开启两步登录。" }, "inactive2faFound": { "message": "发现未使用双重身份验证的登录" @@ -1471,10 +1479,10 @@ "message": "说明" }, "exposedPasswordsReport": { - "message": "公开密码报告" + "message": "已泄露密码报告" }, "exposedPasswordsReportDesc": { - "message": "已泄露密码是在已知的数据泄露中被发现的密码,这些数据已由黑客公开发布或在暗网上销售。" + "message": "在数据泄露事件中暴露的密码很容易成为攻击者的目标。更改这些密码以防止潜在的入侵。" }, "exposedPasswordsFound": { "message": "发现公开密码" @@ -1507,7 +1515,7 @@ "message": "弱密码报告" }, "weakPasswordsReportDesc": { - "message": "弱密码很容易被黑客和用于破解密码的自动化工具猜中。Bitwarden 密码生成器可以帮助您创建强密码。" + "message": "弱的密码很容易被攻击者猜到。使用密码生成器将这些密码改为强密码。" }, "weakPasswordsFound": { "message": "找到弱密码" @@ -1525,10 +1533,10 @@ "message": "没有在密码库中发现弱密码。" }, "reusedPasswordsReport": { - "message": "重复使用密码报告" + "message": "重复使用的密码" }, "reusedPasswordsReportDesc": { - "message": "如果您使用的服务被盗,在其他地方重复使用相同的密码可以让黑客轻松访问您的更多在线账户。您应该对每个账户或服务使用不同的密码。" + "message": "重复使用的密码使攻击者更容易侵入多个账户。更改这些密码以使每个密码都是唯一的。" }, "reusedPasswordsFound": { "message": "发现重复使用的密码" @@ -1555,10 +1563,10 @@ } }, "dataBreachReport": { - "message": "数据泄露报告" + "message": "数据泄露" }, "breachDesc": { - "message": "“泄漏”是指黑客非法访问网站数据然后公开发布的事件。查看已泄露的数据类型(电子邮件地址、密码、信用卡等)并采取适当的措施,例如更改密码。" + "message": "泄露的账户可能会暴露您的个人信息。通过启用 2FA 或创建更强大的密码来保护被泄露的账户。" }, "breachCheckUsernameEmail": { "message": "检查您使用的任何用户名或电子邮件地址。" @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "返回到报告" + }, + "generator": { + "message": "生成器" + }, + "whatWouldYouLikeToGenerate": { + "message": "您想要生成什么?" + }, + "passwordType": { + "message": "密码类型" + }, + "regenerateUsername": { + "message": "重新生成用户名" + }, + "generateUsername": { + "message": "生成用户名" + }, + "usernameType": { + "message": "用户名类型" + }, + "plusAddressedEmail": { + "message": "附加地址电子邮件" + }, + "plusAddressedEmailDesc": { + "message": "使用您的电子邮件提供商的子地址功能。" + }, + "catchallEmail": { + "message": "Catch-all 电子邮件" + }, + "catchallEmailDesc": { + "message": "使用您的域名配置的 Catch-all 收件箱。" + }, + "random": { + "message": "随机" + }, + "randomWord": { + "message": "随机单词" + }, + "service": { + "message": "服务" } } diff --git a/src/locales/zh_TW/messages.json b/src/locales/zh_TW/messages.json index d4987af5..6553e0c0 100644 --- a/src/locales/zh_TW/messages.json +++ b/src/locales/zh_TW/messages.json @@ -187,7 +187,12 @@ "message": "編輯資料夾" }, "baseDomain": { - "message": "基底網域" + "message": "基底網域", + "description": "Domain name. Ex. website.com" + }, + "domainName": { + "message": "網域名稱", + "description": "Domain name. Ex. website.com" }, "host": { "message": "主機", @@ -628,7 +633,7 @@ "message": "電子郵件地址" }, "yourVaultIsLocked": { - "message": "密碼庫已鎖定。驗證主密碼以繼續。" + "message": "密碼庫已鎖定。請驗證主密碼以繼續。" }, "unlock": { "message": "解鎖" @@ -695,7 +700,7 @@ } }, "verificationCodeEmailSent": { - "message": "驗證碼已傳送至 $EMAIL$。", + "message": "已傳送驗證電子郵件至 $EMAIL$。", "placeholders": { "email": { "content": "$1", @@ -776,7 +781,7 @@ "message": "電子郵件" }, "emailDesc": { - "message": "驗證碼將使用電子郵件傳送給您。" + "message": "使用電子郵件傳送驗證碼給您。" }, "continue": { "message": "繼續" @@ -925,7 +930,7 @@ "message": "代碼" }, "changeEmailDesc": { - "message": "我們已寄送電子郵件至 $EMAIL$。請檢查您的電子郵件以取得驗證碼,並在下方輸入驗證碼以完成電子郵件地址的變更。", + "message": "我們已傳送電子郵件至 $EMAIL$。請檢查您的電子郵件信箱以取得驗證碼,並在下方輸入驗證碼以完成電子郵件地址的變更。", "placeholders": { "email": { "content": "$1", @@ -1075,7 +1080,7 @@ } }, "importFormatError": { - "message": "資料格式不正確。請檢查您匯入的檔案後再重試一次。" + "message": "資料格式不正確。請檢查您匯入的檔案後再試一次。" }, "importNothingError": { "message": "沒有匯入任何內容。" @@ -1090,7 +1095,7 @@ "message": "選擇要匯入的檔案" }, "orCopyPasteFileContents": { - "message": "或複製/黏貼上要匯入的檔案內容" + "message": "或複製/貼上要匯入的檔案內容" }, "instructionsFor": { "message": "$NAME$ 教學", @@ -1404,7 +1409,7 @@ "message": "點選下方的「儲存」按鈕,以啟用此安全金鑰用於兩步驟登入。" }, "twoFactorU2fProblemReadingTryAgain": { - "message": "讀取安全金鑰時發生問題。請重試。" + "message": "讀取安全金鑰時發生問題。請再試一次。" }, "twoFactorWebAuthnWarning": { "message": "由於平台限制,無法於所有 Bitwarden 應用程式中使用 WebAuthn。請設定另一套兩步驟登入方式,以確保在 WebAuthn 無法使用時還能存取您的帳戶。支援的平台有:" @@ -1425,11 +1430,14 @@ "reports": { "message": "報告" }, + "reportsDesc": { + "message": "點選下方的報告,識別並消除您的線上帳戶中的安全漏洞。" + }, "unsecuredWebsitesReport": { - "message": "回報不安全的網站" + "message": "不安全的網站" }, "unsecuredWebsitesReportDesc": { - "message": "使用 http:// 配置的網站有安全風險。若網站允許,您應一律使用 https:// 配置以加密連線方式來存取此網站。" + "message": "以 http:// 開頭的 URL 沒有使用最佳的加密方式。將這些帳戶的登入 URI 更改為 https:// 以更安全地瀏覽。" }, "unsecuredWebsitesFound": { "message": "發現不安全的網站" @@ -1447,10 +1455,10 @@ "message": "您的密碼庫中沒有使用不安全 URI 的項目。" }, "inactive2faReport": { - "message": "無效 2FA 報告" + "message": "非使用中兩步驟登入" }, "inactive2faReportDesc": { - "message": "雙因素驗證(2FA)是保護您帳號安全的重要安全性設定。若網站提供雙因素驗證,您應一律啟用它。" + "message": "兩步驟登入為您的帳戶添加了一層保護。使用 Bitwarden 驗證器或使用其他方法為這些帳戶啟用兩步驟登入。" }, "inactive2faFound": { "message": "發現未啟用 2FA 的登入資料" @@ -1471,10 +1479,10 @@ "message": "說明" }, "exposedPasswordsReport": { - "message": "公開密碼報告" + "message": "已公開的密碼" }, "exposedPasswordsReportDesc": { - "message": "公開密碼是在已知資料外洩事件中發現的密碼,這些資料已由駭客公開發佈或在暗網上販售。" + "message": "資料外洩中暴露的密碼很容易成為攻擊者的目標。更改這些密碼以防止潛在的入侵。" }, "exposedPasswordsFound": { "message": "發現公開密碼" @@ -1504,10 +1512,10 @@ } }, "weakPasswordsReport": { - "message": "弱式密碼報告" + "message": "弱式密碼" }, "weakPasswordsReportDesc": { - "message": "弱式密碼很容易被駭客用破解密碼的自動化工具猜中。Bitwarden 密碼產生器可以幫助您建立強式密碼。" + "message": "弱密碼很容易被攻擊者猜到。使用密碼產生器將這些密碼更改為強密碼。" }, "weakPasswordsFound": { "message": "發現弱式密碼" @@ -1525,10 +1533,10 @@ "message": "您的密碼庫中沒有項目具有弱式密碼。" }, "reusedPasswordsReport": { - "message": "重複使用密碼報告" + "message": "重複使用密碼" }, "reusedPasswordsReportDesc": { - "message": "如果您使用的服務有密碼外洩的情況,在其他地方重複使用相同的密碼可以讓駭客很輕易地存取您更多的線上帳戶。您應該為每個帳戶或服務使用不同的密碼。" + "message": "重複使用密碼使攻擊者更容易侵入多個帳戶。更改這些密碼,使每個密碼都是唯一的。" }, "reusedPasswordsFound": { "message": "發現重複使用的密碼" @@ -1555,10 +1563,10 @@ } }, "dataBreachReport": { - "message": "資料外洩報告" + "message": "資料外洩" }, "breachDesc": { - "message": "「外洩」是指駭客非法存取網站資料然後公開發佈的事件。檢視已遭外洩的資料類型(電子郵件地址、密碼、信用卡等)並採取適當的措施,例如變更密碼。" + "message": "外洩的帳戶可能會暴露您的個人信息。透過啟用 2FA 或創建更強的密碼來保護被外洩的帳戶。" }, "breachCheckUsernameEmail": { "message": "請檢查您使用的使用者名稱或電子郵件地址。" @@ -1611,7 +1619,7 @@ "message": "外洩回報於" }, "reportError": { - "message": "嘗試載入報告時發生錯誤。請重試。" + "message": "嘗試載入報告時發生錯誤。請再試一次。" }, "billing": { "message": "計費" @@ -1782,7 +1790,7 @@ "message": "重新開始訂閱" }, "reinstateConfirmation": { - "message": "您是否要移除待處理的取消請求,重新開始您的訂閱?" + "message": "您是否要移除待處理的取消要求,重新開始您的訂閱?" }, "reinstated": { "message": "已重新開始訂閱。" @@ -2186,7 +2194,7 @@ "message": "您確定要刪除這個群組?" }, "removeUserConfirmation": { - "message": "您確定要移除該使用者?" + "message": "您確定要移除此使用者?" }, "removeUserConfirmationKeyConnector": { "message": "警告!這位使用者需要 Key Connector 管理他們的加密方式。從您的組織中移除這位使用者,會永久停用他們的帳戶。此操作無法復原,是否繼續?" @@ -3086,10 +3094,10 @@ "message": "篩選器" }, "vaultTimeout": { - "message": "密碼庫逾時時長" + "message": "密碼庫逾時時間" }, "vaultTimeoutDesc": { - "message": "選擇密碼庫多久之後逾時並執行選取的動作。" + "message": "選擇密碼庫多久之後才會逾時並執行選取動作。" }, "oneMinute": { "message": "1 分鐘" @@ -3260,7 +3268,7 @@ "message": "您是組織成員,而組織要求您的使用者帳戶啟用兩步驟登入。如果停用所有兩步驟登入方式,您將被自動從這些組織移除。" }, "passwordGeneratorPolicyDesc": { - "message": "設定密碼產生器組態的最低要求。" + "message": "設定密碼產生器設定的最低要求。" }, "passwordGeneratorPolicyInEffect": { "message": "一個或多個組織原則正影響密碼產生器設定。" @@ -3412,7 +3420,7 @@ } }, "vaultTimeoutLogOutConfirmation": { - "message": "選擇登出將會在密碼庫逾時後移除對密碼庫的所有存取權限,並且重新驗證時需要連線網路。確定要使用此設定嗎?" + "message": "選擇登出將會在密碼庫逾時後移除對密碼庫的所有存取權限,若要重新驗證則需連線網路。確定要使用此設定嗎?" }, "vaultTimeoutLogOutConfirmationTitle": { "message": "逾時動作確認" @@ -3595,7 +3603,7 @@ "message": "已移除密碼" }, "removePasswordConfirmation": { - "message": "您確定要移除密碼嗎?" + "message": "您確定要移除此密碼嗎?" }, "hideEmail": { "message": "對收件人隱藏我的電子郵件地址。" @@ -3651,16 +3659,16 @@ "message": "緊急存取" }, "emergencyAccessDesc": { - "message": "為受信任的聯絡人授予和管理緊急存取權限。在緊急情况下,受信任的聯絡人可以請求獲取查看或接管您的帳戶的權限。請訪問我們的幫助頁面,以獲取有關零知識共享工作原理的更多資訊和詳情。" + "message": "授予和管理可信任連絡人的緊急存取權限。當遇到緊急情况時,可信任連絡人可以要求存取檢視或接管您帳戶的權限。瀏覽說明頁面以取得有關零知識共用的工作原理和更多詳細資訊。" }, "emergencyAccessOwnerWarning": { - "message": "您是一個或多個組織的擁有者。如果您授予緊急聯繫人接管存取權限,那麼他們在接管後將能夠以擁有者的身份使用您的所有權限。" + "message": "您是一個或多個組織的擁有者。如果您授予緊急聯絡人接管存取權限,那麼他們在接管後將能夠以組織擁有者的身分使用您的所有權限。" }, "trustedEmergencyContacts": { "message": "信任的緊急聯絡人" }, "noTrustedContacts": { - "message": "您尚未添加任何緊急聯絡人,請邀請一個受信任的聯絡人以開始。" + "message": "您尚未新增任何緊急聯絡人,請邀請一位可信任的聯絡人以開始。" }, "addEmergencyContact": { "message": "新增緊急聯絡人" @@ -3678,7 +3686,7 @@ "message": "編輯緊急聯絡人" }, "inviteEmergencyContactDesc": { - "message": "透過在下面輸入 Bitwarden 帳戶的電子郵件地址,以邀請新的緊急聯絡人。若他們還沒有 Bitwarden 帳戶,系統將提示他們建立新帳戶。" + "message": "透過在下方輸入他們的 Bitwarden 帳戶的電子郵件地址,來邀請新的緊急聯絡人。若他們還沒有 Bitwarden 帳戶,系統將提示他們建立新帳戶。" }, "emergencyAccessRecoveryInitiated": { "message": "已啟動緊急存取" @@ -3738,7 +3746,7 @@ "message": "要求存取權限" }, "requestAccessConfirmation": { - "message": "您確定要請求緊急存取嗎?在 $WAITTIME$ 天之後或用戶手動批准請求時,將為您提供存取權限。", + "message": "您確定要申請緊急存取嗎?在 $WAITTIME$ 天之後或使用者手動批准要求時您將取得存取權限。", "placeholders": { "waittime": { "content": "$1", @@ -3747,7 +3755,7 @@ } }, "requestSent": { - "message": "來自 $USER$ 的緊急存取請求。如果可以繼續,我們將透過電子郵件通知您。", + "message": "來自 $USER$ 的緊急存取要求。我們將透過電子郵件通知您何時可以繼續。", "placeholders": { "user": { "content": "$1", @@ -3793,7 +3801,7 @@ "message": "個人擁有權" }, "personalOwnershipPolicyDesc": { - "message": "要求用戶透過移除個人擁有權選項將密碼庫項目儲存到組織。" + "message": "透過移除個人擁有權選項要求使用者將密碼庫項目儲存至組織。" }, "personalOwnershipExemption": { "message": "組織擁有者與管理員不受此原則的執行影響。" @@ -3816,7 +3824,7 @@ "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendDisabledWarning": { - "message": "由於某個企業原則,您只能刪除已有的 Send。", + "message": "由於企業原則限制,您只能刪除現有的 Send。", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendOptions": { @@ -3860,7 +3868,7 @@ "message": "自訂" }, "customDesc": { - "message": "允許更精細地控制使用者的權限以進行進階配置。" + "message": "進階設定允許更精細地控制使用者權限。" }, "permissions": { "message": "權限" @@ -3926,10 +3934,10 @@ "message": "組織原則正在影響您的擁有權選項。" }, "personalOwnershipPolicyInEffectImports": { - "message": "某個組織原則已停用將項目匯入到您的個人密碼庫。" + "message": "組織原則已禁止您將項目匯入至您的個人密碼庫。" }, "personalOwnershipCheckboxDesc": { - "message": "為組織使用者禁用個人擁有權。" + "message": "停用組織使用者的個人擁有權。" }, "textHiddenByDefault": { "message": "存取此 Send 時,將預設隱藏文字", @@ -3957,7 +3965,7 @@ "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendAccessTaglineProductDesc": { - "message": "Bitwarden Send可以輕鬆安全地向其他人傳輸敏感的臨時資訊。", + "message": "Bitwarden Send 可以輕鬆、安全地向其他人傳輸敏感的暫存資訊。", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendAccessTaglineLearnMore": { @@ -4133,7 +4141,7 @@ "message": "允許組織管理者重設組織使用者的主密碼。" }, "resetPasswordPolicyWarning": { - "message": "組織使用者需要先自行註冊或將被自動註冊後管理者才能重新設定他們的主密碼。" + "message": "組織使用者需要先自行註冊或被自動註冊後,管理者才能重設他們的主密碼。" }, "resetPasswordPolicyAutoEnroll": { "message": "自動註冊" @@ -4145,7 +4153,7 @@ "message": "已經在組織中的使用者將不會被註冊密碼重設。他們需要先自行註冊後管理者才能重設他們的主密碼。" }, "resetPasswordPolicyAutoEnrollCheckbox": { - "message": "要求自動註冊新使用者" + "message": "要求為新使用者啟用自動註冊" }, "resetPasswordAutoEnrollInviteWarning": { "message": "此組織有一個可以為您自動註冊密碼重設的企業原則。註冊後將允許組織管理員變更您的主密碼。" @@ -4356,16 +4364,16 @@ "message": "您的主密碼不符合此組織原則的要求。您必須現在更新主密碼才可以加入此組織。繼續操作會登出您目前的工作階段,並要求您重新登入帳戶。其他裝置上的活動工作階段最多會保持一個小時。" }, "maximumVaultTimeout": { - "message": "密碼庫逾時時長" + "message": "密碼庫逾時時間" }, "maximumVaultTimeoutDesc": { - "message": "為所有使用者設定最大密碼庫逾時時長。" + "message": "為所有使用者設定最大密碼庫逾時時間。" }, "maximumVaultTimeoutLabel": { - "message": "最大密碼庫逾時時長" + "message": "最大密碼庫逾時時間" }, "invalidMaximumVaultTimeout": { - "message": "無效的最大密碼庫逾時時長。" + "message": "無效的最大密碼庫逾時時間。" }, "hours": { "message": "小時" @@ -4374,7 +4382,7 @@ "message": "分鐘" }, "vaultTimeoutPolicyInEffect": { - "message": "您的組織策略正在影響您的密碼庫逾時時長。密碼庫逾時時長最多可以設定到 {0} 小時 {1} 分鐘。", + "message": "您的組織原則正在影響您的密碼庫逾時時間。密碼庫逾時時間最多可以設定到 $HOURS$ 小時 $MINUTES$ 分鐘。", "placeholders": { "hours": { "content": "$1", @@ -4387,10 +4395,10 @@ } }, "customVaultTimeout": { - "message": "自訂密碼庫逾時時長" + "message": "自訂密碼庫逾時時間" }, "vaultTimeoutToLarge": { - "message": "您的密碼庫逾時時長超過組織限制。" + "message": "您的密碼庫逾時時間超過組織設定的限制。" }, "disablePersonalVaultExport": { "message": "停用個人密碼庫匯出" @@ -4402,7 +4410,7 @@ "message": "已停用密碼庫匯出" }, "personalVaultExportPolicyInEffect": { - "message": "一或多個組織策略禁止您匯出個人密碼庫。" + "message": "一個或多個組織原則禁止您匯出個人密碼庫。" }, "selectType": { "message": "選擇 SSO 類型" @@ -4561,10 +4569,10 @@ "message": "接受現有組織的邀請或建立一個新的家庭組織。" }, "setupSponsoredFamiliesLoginDesc": { - "message": "您被邀請加入一個免費的 Bitwarden 家庭方案組織。若要繼續,您需要登入到接受邀請的帳戶。" + "message": "您已被邀請加入一個免費的 Bitwarden 家庭方案組織。若要繼續,您必須登入至接受邀請的帳戶。" }, "sponsoredFamiliesAcceptFailed": { - "message": "無法接受邀請。請透過您的企業帳戶重寄邀請電子郵件,然後重試。" + "message": "無法接受邀請。請透過您的企業帳戶重新傳送邀請郵件,然後再試一次。" }, "sponsoredFamiliesAcceptFailedShort": { "message": "無法接受邀請。$DESCRIPTION$", @@ -4642,13 +4650,13 @@ "message": "Key Connector URL" }, "sendVerificationCode": { - "message": "傳送驗證碼至您的電子郵件" + "message": "傳送驗證碼至您的電子郵件信箱" }, "sendCode": { "message": "傳送驗證碼" }, "codeSent": { - "message": "已送出驗證碼" + "message": "驗證碼已傳送" }, "verificationCode": { "message": "驗證碼" @@ -4699,7 +4707,7 @@ "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Enable the SSO Authentication policy to require all members to log in with SSO.'" }, "ssoPolicyHelpKeyConnector": { - "message": "SSO 驗證及單一組織原則需要先設定 Key Connector 解密方式後才能使用。" + "message": "SSO 驗證及單一組織原則需要先設定 Key Connector 解密方式後才能啟用。" }, "memberDecryptionOption": { "message": "成員解密選項" @@ -4729,7 +4737,7 @@ "message": "已停用 Key Connector" }, "keyConnectorWarning": { - "message": "一旦成員開始使用 Key Connector,您的組織將無法復原為使用主密碼解密。僅當您可以輕鬆地部署和管理金輪伺服器時再繼續。" + "message": "一旦成員開始使用 Key Connector,您的組織將無法還原為使用主密碼解密。請於您可以輕鬆地部署和管理金鑰伺服器時再繼續。" }, "migratedKeyConnector": { "message": "已移轉至 Key Connector" @@ -4738,7 +4746,7 @@ "message": "請提供一個與此組織關聯的付款方式。別擔心,我們不會向您收取任何費用,除非您選擇進階功能或您的贊助到期。 " }, "orgCreatedSponsorshipInvalid": { - "message": "贊助邀請已逾期,您可以上傳您建立的組織,以避免在 7 天試用期結束時被收取費用。 您也可以關閉此提示以保留該組織並承擔計費責任。" + "message": "贊助邀請已逾期,您可以刪除您建立的組織,以避免在 7 天試用期結束後被收取費用。 您也可以關閉此提示以保留該組織並承擔計費責任。" }, "newFamiliesOrganization": { "message": "新的家庭組織" @@ -4826,5 +4834,47 @@ "example": "My Org Name" } } + }, + "backToReports": { + "message": "返回報告" + }, + "generator": { + "message": "產生器" + }, + "whatWouldYouLikeToGenerate": { + "message": "您想要產生什麼?" + }, + "passwordType": { + "message": "密碼類型" + }, + "regenerateUsername": { + "message": "重新產生使用者名稱" + }, + "generateUsername": { + "message": "產生使用者名稱" + }, + "usernameType": { + "message": "使用者名稱類型" + }, + "plusAddressedEmail": { + "message": "加號地址電子郵件" + }, + "plusAddressedEmailDesc": { + "message": "使用您的電子郵件提供者的子地址功能。" + }, + "catchallEmail": { + "message": "Catch-all 電子郵件" + }, + "catchallEmailDesc": { + "message": "使用您的網域設定的 Catch-all 收件匣。" + }, + "random": { + "message": "隨機" + }, + "randomWord": { + "message": "隨機單字" + }, + "service": { + "message": "服務" } } From 8831f96fc26624d4d342440c0f185bd9f4de3f76 Mon Sep 17 00:00:00 2001 From: Daniel James Smith Date: Wed, 6 Apr 2022 19:10:44 +0200 Subject: [PATCH 15/18] [EC-142] Fix error during import of 1pux containing new email field format (#1585) * Pull in changes made on https://github.com/bitwarden/jslib/pull/758 * Update package-lock.json --- jslib | 2 +- package-lock.json | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/jslib b/jslib index e595c054..3b9ef68f 160000 --- a/jslib +++ b/jslib @@ -1 +1 @@ -Subproject commit e595c0548ed1a481dbd024ec66975e3a453bd471 +Subproject commit 3b9ef68f4b01036c84321d6bb4c3c14288bf137b diff --git a/package-lock.json b/package-lock.json index e5daa7ea..c978d8c0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -87,7 +87,7 @@ } }, "jslib/angular": { - "name": "@bitwarden/jslib-common", + "name": "@bitwarden/jslib-angular", "version": "0.0.0", "license": "GPL-3.0", "dependencies": { @@ -113,6 +113,7 @@ } }, "jslib/common": { + "name": "@bitwarden/jslib-common", "version": "0.0.0", "license": "GPL-3.0", "dependencies": { From d56bf1211edc441310427203e300245eac7ed858 Mon Sep 17 00:00:00 2001 From: Matt Gibson Date: Thu, 7 Apr 2022 09:20:38 -0400 Subject: [PATCH 16/18] Add descriptions to vague messages (#1586) * Add descriptions to vague messages * Fix typo --- src/locales/en/messages.json | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/locales/en/messages.json b/src/locales/en/messages.json index 0c1cb26f..ab8594d2 100644 --- a/src/locales/en/messages.json +++ b/src/locales/en/messages.json @@ -3616,7 +3616,8 @@ "message": "All Sends" }, "maxAccessCountReached": { - "message": "Max access count reached" + "message": "Max access count reached", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Pending deletion" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." From 62b20a5c6da60c9701c8801338cda09a2ad785bb Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 8 Apr 2022 11:45:22 +0200 Subject: [PATCH 17/18] Autosync the updated translations (#1590) Co-authored-by: github-actions <> --- src/locales/af/messages.json | 6 ++- src/locales/az/messages.json | 70 ++++++++++++++------------- src/locales/be/messages.json | 6 ++- src/locales/bg/messages.json | 6 ++- src/locales/bn/messages.json | 6 ++- src/locales/bs/messages.json | 6 ++- src/locales/ca/messages.json | 34 +++++++------ src/locales/cs/messages.json | 6 ++- src/locales/da/messages.json | 6 ++- src/locales/de/messages.json | 10 ++-- src/locales/el/messages.json | 86 +++++++++++++++++---------------- src/locales/en_GB/messages.json | 6 ++- src/locales/en_IN/messages.json | 6 ++- src/locales/eo/messages.json | 6 ++- src/locales/es/messages.json | 6 ++- src/locales/et/messages.json | 8 +-- src/locales/fi/messages.json | 6 ++- src/locales/fil/messages.json | 6 ++- src/locales/fr/messages.json | 6 ++- src/locales/he/messages.json | 40 +++++++-------- src/locales/hi/messages.json | 6 ++- src/locales/hr/messages.json | 6 ++- src/locales/hu/messages.json | 10 ++-- src/locales/id/messages.json | 6 ++- src/locales/it/messages.json | 8 +-- src/locales/ja/messages.json | 6 ++- src/locales/ka/messages.json | 6 ++- src/locales/km/messages.json | 6 ++- src/locales/kn/messages.json | 6 ++- src/locales/ko/messages.json | 6 ++- src/locales/lv/messages.json | 36 +++++++------- src/locales/ml/messages.json | 6 ++- src/locales/nb/messages.json | 6 ++- src/locales/nl/messages.json | 6 ++- src/locales/nn/messages.json | 6 ++- src/locales/pl/messages.json | 22 +++++---- src/locales/pt_BR/messages.json | 10 ++-- src/locales/pt_PT/messages.json | 6 ++- src/locales/ro/messages.json | 6 ++- src/locales/ru/messages.json | 58 +++++++++++----------- src/locales/si/messages.json | 6 ++- src/locales/sk/messages.json | 10 ++-- src/locales/sl/messages.json | 6 ++- src/locales/sr/messages.json | 6 ++- src/locales/sv/messages.json | 10 ++-- src/locales/tr/messages.json | 6 ++- src/locales/uk/messages.json | 60 ++++++++++++----------- src/locales/vi/messages.json | 6 ++- src/locales/zh_CN/messages.json | 6 ++- src/locales/zh_TW/messages.json | 6 ++- 50 files changed, 391 insertions(+), 291 deletions(-) diff --git a/src/locales/af/messages.json b/src/locales/af/messages.json index 80fa367d..8b083155 100644 --- a/src/locales/af/messages.json +++ b/src/locales/af/messages.json @@ -3616,7 +3616,8 @@ "message": "Alle Sends" }, "maxAccessCountReached": { - "message": "Maks toegangsaantal bereik" + "message": "Maks toegangsaantal bereik", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Word geskrap" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/az/messages.json b/src/locales/az/messages.json index 0c520243..60f21f11 100644 --- a/src/locales/az/messages.json +++ b/src/locales/az/messages.json @@ -191,7 +191,7 @@ "description": "Domain name. Ex. website.com" }, "domainName": { - "message": "Domain Name", + "message": "Domen adı", "description": "Domain name. Ex. website.com" }, "host": { @@ -1431,7 +1431,7 @@ "message": "Hesabatlar" }, "reportsDesc": { - "message": "Identify and close security gaps in your online accounts by clicking the reports below." + "message": "Aşağıdakı hesabatlara klikləyərək onlayn hesablarınızdakı güvənlik boşluqlarına baxın və onları bağlayın." }, "unsecuredWebsitesReport": { "message": "Təhlükəli veb sayt hesabatları" @@ -3616,7 +3616,8 @@ "message": "Bütün \"Send\"lər" }, "maxAccessCountReached": { - "message": "Maksimal müraciət sayına çatıldı" + "message": "Maksimal müraciət sayına çatıldı", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Silinməsi gözlənilir" @@ -4521,7 +4522,7 @@ "message": "Gedən çıxış tələblərinə icazə ver" }, "idpSignAuthenticationRequests": { - "message": "Sign authentication requests" + "message": "Kimlik təsdiqləmə tələblərini imzala" }, "ssoSettingsSaved": { "message": "Tək daxil olma konfiqurasiyası saxlanıldı." @@ -4707,7 +4708,7 @@ "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Enable the SSO Authentication policy to require all members to log in with SSO.'" }, "ssoPolicyHelpKeyConnector": { - "message": "SSO Authentication and Single Organization policies are required to set up Key Connector decryption." + "message": "Açar Bağlayıcı şifrə açmanı quraşdırmaq üçün SSO Kimlik Təsdiqləmə və Tək Təşkilat siyasətləri tələb olunur." }, "memberDecryptionOption": { "message": "Üzv şifrə açma seçimləri" @@ -4719,10 +4720,10 @@ "message": "Açar Bağlayıcı" }, "memberDecryptionKeyConnectorDesc": { - "message": "Connect Login with SSO to your self-hosted decryption key server. Using this option, members won’t need to use their Master Passwords to decrypt vault data. Contact Bitwarden Support for set up assistance." + "message": "SSO ilə Giriş etməni, öz-özünə sahiblik edən şifrə açma açar serverinizə bağlayın. Bu seçimi istifadə edərək, üzvlərin anbar verilənlərinin şifrəsini açmaq üçün Ana Parollarını istifadə etməsinə ehtiyac qalmayacaq. Quraşdırma üzrə kömək üçün Bitwarden Dəstək ilə əlaqə saxlayın." }, "keyConnectorPolicyRestriction": { - "message": "\"Login with SSO and Key Connector Decryption\" is enabled. This policy will only apply to Owners and Admins." + "message": "\"SSO və Açar Bağlayıcı Şifrə Açma ilə Giriş\" fəaldır. Bu siyasət yalnız Sahiblər və Adminlər üçün etibarlıdır." }, "enabledSso": { "message": "SSO fəaldır" @@ -4773,7 +4774,7 @@ "message": "ÖDƏNİŞSİZ sponsorluq" }, "formErrorSummaryPlural": { - "message": "$COUNT$ fields above need your attention.", + "message": "Yuxarıdakı $COUNT$ sahənin diqqətinizə ehtiyacı var.", "placeholders": { "count": { "content": "$1", @@ -4782,10 +4783,10 @@ } }, "formErrorSummarySingle": { - "message": "1 field above needs your attention." + "message": "Yuxarıdakı 1 sahənin diqqətinizə ehtiyacı var." }, "fieldRequiredError": { - "message": "$FIELDNAME$ is required.", + "message": "$FIELDNAME$ tələb olunur.", "placeholders": { "fieldname": { "content": "$1", @@ -4794,31 +4795,31 @@ } }, "required": { - "message": "required" + "message": "tələb olunur" }, "idpSingleSignOnServiceUrlRequired": { - "message": "Required if Entity ID is not a URL." + "message": "Varlıq Kimliyi bir URL deyilsə tələb olunur." }, "openIdOptionalCustomizations": { - "message": "Optional Customizations" + "message": "İxtiyari Özəlləşdirmələr" }, "openIdAuthorityRequired": { - "message": "Required if Authority is not valid." + "message": "Səlahiyyət etibarlı deyilsə tələb olunur." }, "separateMultipleWithComma": { - "message": "Separate multiple with a comma." + "message": "Vergüllə ayırın." }, "sessionTimeout": { - "message": "Your session has timed out. Please go back and try logging in again." + "message": "Seansınızın vaxtı bitdi. Zəhmət olmasa geri qayıdıb yenidən giriş etməyə cəhd edin." }, "exportingPersonalVaultTitle": { - "message": "Exporting Personal Vault" + "message": "Şəxsi anbarın ixracı" }, "exportingOrganizationVaultTitle": { - "message": "Exporting Organization Vault" + "message": "Təşkilat anbarının ixracı" }, "exportingPersonalVaultDescription": { - "message": "Only the personal vault items associated with $EMAIL$ will be exported. Organization vault items will not be included.", + "message": "Yalnız $EMAIL$ ilə əlaqəli şəxsi anbar elementləri ixrac ediləcək. Təşkilat anbar elementləri daxil edilmir.", "placeholders": { "email": { "content": "$1", @@ -4827,7 +4828,7 @@ } }, "exportingOrganizationVaultDescription": { - "message": "Only the organization vault associated with $ORGANIZATION$ will be exported. Personal vault items and items from other organizations will not be included.", + "message": "Yalnız $ORGANIZATION$ ilə əlaqəli təşkilat anbar elementləri ixrac ediləcək. Şəxsi anbar elementləri və digər təşkilatlardan olan elementlər daxil edilmir.", "placeholders": { "organization": { "content": "$1", @@ -4836,45 +4837,46 @@ } }, "backToReports": { - "message": "Back to Reports" + "message": "Hesabatlara qayıt" }, "generator": { - "message": "Generator" + "message": "Yaradıcı" }, "whatWouldYouLikeToGenerate": { - "message": "What would you like to generate?" + "message": "Nə yaratmaq istəyirsiniz?" }, "passwordType": { - "message": "Password Type" + "message": "Parol növü" }, "regenerateUsername": { - "message": "Regenerate Username" + "message": "İstifadəçi adını yenidən yarat" }, "generateUsername": { - "message": "Generate Username" + "message": "İstifadəçi adı yarat" }, "usernameType": { - "message": "Username Type" + "message": "İstifadəçi adı növü" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plyus ünvanlı e-poçt", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { - "message": "Use your email provider's sub-addressing capabilities." + "message": "E-poçt təchizatçınızın alt ünvan özəlliklərini istifadə et." }, "catchallEmail": { - "message": "Catch-all Email" + "message": "Catch-all E-poçt" }, "catchallEmailDesc": { - "message": "Use your domain's configured catch-all inbox." + "message": "Domeninizin konfiqurasiya edilmiş hamısını yaxalama gələn qutusunu istifadə edin." }, "random": { - "message": "Random" + "message": "Təsadüfi" }, "randomWord": { - "message": "Random Word" + "message": "Təsadüfi söz" }, "service": { - "message": "Service" + "message": "Xidmət" } } diff --git a/src/locales/be/messages.json b/src/locales/be/messages.json index bb6a64e4..d56585d4 100644 --- a/src/locales/be/messages.json +++ b/src/locales/be/messages.json @@ -3616,7 +3616,8 @@ "message": "All Sends" }, "maxAccessCountReached": { - "message": "Max access count reached" + "message": "Max access count reached", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Pending deletion" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/bg/messages.json b/src/locales/bg/messages.json index a209e699..61bd5a65 100644 --- a/src/locales/bg/messages.json +++ b/src/locales/bg/messages.json @@ -3616,7 +3616,8 @@ "message": "Всички изпращания" }, "maxAccessCountReached": { - "message": "Достигнат е максималният брой достъпвания" + "message": "Достигнат е максималният брой достъпвания", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Предстои изтриване" @@ -4857,7 +4858,8 @@ "message": "Тип потребителско име" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Използвайте възможностите за под-адресиране на е-поща на своя доставчик." diff --git a/src/locales/bn/messages.json b/src/locales/bn/messages.json index 615d3a79..6b54975c 100644 --- a/src/locales/bn/messages.json +++ b/src/locales/bn/messages.json @@ -3616,7 +3616,8 @@ "message": "All Sends" }, "maxAccessCountReached": { - "message": "Max access count reached" + "message": "Max access count reached", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Pending deletion" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/bs/messages.json b/src/locales/bs/messages.json index 04d8cc46..0bf3605e 100644 --- a/src/locales/bs/messages.json +++ b/src/locales/bs/messages.json @@ -3616,7 +3616,8 @@ "message": "All Sends" }, "maxAccessCountReached": { - "message": "Max access count reached" + "message": "Max access count reached", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Pending deletion" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/ca/messages.json b/src/locales/ca/messages.json index 30b4172e..401d4585 100644 --- a/src/locales/ca/messages.json +++ b/src/locales/ca/messages.json @@ -191,7 +191,7 @@ "description": "Domain name. Ex. website.com" }, "domainName": { - "message": "Domain Name", + "message": "Nom del domini", "description": "Domain name. Ex. website.com" }, "host": { @@ -1431,7 +1431,7 @@ "message": "Informes" }, "reportsDesc": { - "message": "Identify and close security gaps in your online accounts by clicking the reports below." + "message": "Identifiqueu i tanqueu els forats de seguretat dels comptes en línia fent clic en els informes següents." }, "unsecuredWebsitesReport": { "message": "Informe de llocs web no segurs" @@ -1563,10 +1563,10 @@ } }, "dataBreachReport": { - "message": "Informe de filtració de dades" + "message": "Filtració de dades" }, "breachDesc": { - "message": "Un \"filtració\" és un incident on les dades dels llocs han estat accessades il·legalment pels pirates informàtics i, posteriorment, es mostren públicament. Reviseu els tipus de dades que han quedat compromeses (adreces de correu electrònic, contrasenyes, targetes de crèdit, etc.) i preneu les mesures adequades, com ara canviar les contrasenyes." + "message": "Els comptes filtrats poden exposar la vostra informació personal. Assegureu els comptes filtrats activant la autenticació de dos factors (2FA) o creant contrasenyes més fortes." }, "breachCheckUsernameEmail": { "message": "Comproveu qualsevol nom d'usuari o adreça electrònica que utilitzeu." @@ -3616,7 +3616,8 @@ "message": "Tots els Send" }, "maxAccessCountReached": { - "message": "S'ha assolit el recompte màxim d'accesos" + "message": "S'ha assolit el recompte màxim d'accesos", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Pendent de supressió" @@ -4836,28 +4837,29 @@ } }, "backToReports": { - "message": "Back to Reports" + "message": "Torna als informes" }, "generator": { - "message": "Generator" + "message": "Generador" }, "whatWouldYouLikeToGenerate": { - "message": "What would you like to generate?" + "message": "Què voleu generar?" }, "passwordType": { - "message": "Password Type" + "message": "Tipus de contrasenya" }, "regenerateUsername": { - "message": "Regenerate Username" + "message": "Regenera el nom d'usuari" }, "generateUsername": { - "message": "Generate Username" + "message": "Genera un nom d'usuari" }, "usernameType": { - "message": "Username Type" + "message": "Tipus de nom d'usuari" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Adreça amb sufix", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." @@ -4869,12 +4871,12 @@ "message": "Use your domain's configured catch-all inbox." }, "random": { - "message": "Random" + "message": "Aleatori" }, "randomWord": { - "message": "Random Word" + "message": "Paraula aleatòria" }, "service": { - "message": "Service" + "message": "Servei" } } diff --git a/src/locales/cs/messages.json b/src/locales/cs/messages.json index b1a973da..d159e9cb 100644 --- a/src/locales/cs/messages.json +++ b/src/locales/cs/messages.json @@ -3616,7 +3616,8 @@ "message": "Všechny Sends" }, "maxAccessCountReached": { - "message": "Dosažen maximální počet přístupů" + "message": "Dosažen maximální počet přístupů", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Čeká na smazání" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/da/messages.json b/src/locales/da/messages.json index 2b9d881f..4bb6a3cd 100644 --- a/src/locales/da/messages.json +++ b/src/locales/da/messages.json @@ -3616,7 +3616,8 @@ "message": "Alle Send" }, "maxAccessCountReached": { - "message": "Maks. adgangsantal nået" + "message": "Maks. adgangsantal nået", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Afventer sletning" @@ -4857,7 +4858,8 @@ "message": "Brugernavnstype" }, "plusAddressedEmail": { - "message": "Plus adresseret e-mail" + "message": "Plus adresseret e-mail", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Brug e-mailudbyderens underadresseringsmuligheder." diff --git a/src/locales/de/messages.json b/src/locales/de/messages.json index d6acb23d..1a8c8b4c 100644 --- a/src/locales/de/messages.json +++ b/src/locales/de/messages.json @@ -1431,7 +1431,7 @@ "message": "Berichte" }, "reportsDesc": { - "message": "Ermittel und schließe Sicherheitslücken in deinen Online-Konten, indem du auf die Berichte unten klickst." + "message": "Identifiziere und schließe Sicherheitslücken in deinen Online-Konten, indem du auf die Berichte unten klickst." }, "unsecuredWebsitesReport": { "message": "Bericht über ungesicherte Websites" @@ -3616,7 +3616,8 @@ "message": "Alle Sends" }, "maxAccessCountReached": { - "message": "Maximale Zugriffsanzahl erreicht" + "message": "Maximale Zugriffsanzahl erreicht", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Ausstehende Löschung" @@ -4842,7 +4843,7 @@ "message": "Generator" }, "whatWouldYouLikeToGenerate": { - "message": "Was möchten Sie generieren?" + "message": "Was möchtest du generieren?" }, "passwordType": { "message": "Passworttyp" @@ -4857,7 +4858,8 @@ "message": "Benutzernamentyp" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/el/messages.json b/src/locales/el/messages.json index a96cc59f..720117e9 100644 --- a/src/locales/el/messages.json +++ b/src/locales/el/messages.json @@ -191,7 +191,7 @@ "description": "Domain name. Ex. website.com" }, "domainName": { - "message": "Domain Name", + "message": "Όνομα τομέα", "description": "Domain name. Ex. website.com" }, "host": { @@ -306,16 +306,16 @@ "message": "Ασφαλής Σημείωση" }, "typeLoginPlural": { - "message": "Logins" + "message": "Συνδέσεις" }, "typeCardPlural": { - "message": "Cards" + "message": "Κάρτες" }, "typeIdentityPlural": { - "message": "Identities" + "message": "Ταυτότητες" }, "typeSecureNotePlural": { - "message": "Secure Notes" + "message": "Ασφαλείς Σημειώσεις" }, "folders": { "message": "Φάκελοι" @@ -1431,7 +1431,7 @@ "message": "Αναφορές" }, "reportsDesc": { - "message": "Identify and close security gaps in your online accounts by clicking the reports below." + "message": "Προσδιορίστε και κλείστε τα κενά ασφαλείας στους online λογαριασμούς σας κάνοντας κλικ στις παρακάτω αναφορές." }, "unsecuredWebsitesReport": { "message": "Αναφορά Μη-Ασφαλών Ιστοσελίδων" @@ -2803,7 +2803,7 @@ "message": "Διαγραφή Οργανισμού" }, "deletingOrganizationContentWarning": { - "message": "Enter the master password to confirm deletion of $ORGANIZATION$ and all associated data. Vault data in $ORGANIZATION$ includes:", + "message": "Εισάγετε τον κύριο κωδικό πρόσβασης για να επιβεβαιώσετε τη διαγραφή του $ORGANIZATION$ και όλων των σχετικών δεδομένων. Τα δεδομένα vault στο $ORGANIZATION$ περιλαμβάνουν:", "placeholders": { "organization": { "content": "$1", @@ -2812,10 +2812,10 @@ } }, "deletingOrganizationActiveUserAccountsWarning": { - "message": "User accounts will remain active after deletion but will no longer be associated to this organization." + "message": "Οι λογαριασμοί χρήστη θα παραμείνουν ενεργοί μετά τη διαγραφή αλλά δεν θα συσχετίζονται πλέον με αυτόν τον οργανισμό." }, "deletingOrganizationIsPermanentWarning": { - "message": "Deleting $ORGANIZATION$ is permanent and irreversible.", + "message": "Η διαγραφή του $ORGANIZATION$ είναι μόνιμη και μη αναστρέψιμη.", "placeholders": { "organization": { "content": "$1", @@ -3616,7 +3616,8 @@ "message": "Όλα τα Sends" }, "maxAccessCountReached": { - "message": "Φτάσατε στον μέγιστο αριθμό πρόσβασης" + "message": "Φτάσατε στον μέγιστο αριθμό πρόσβασης", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Εκκρεμεί διαγραφή" @@ -4452,16 +4453,16 @@ "message": "Λήψη Αιτημάτων Από Το Τελικό Σημείο Πληροφοριών Χρήστη" }, "additionalScopes": { - "message": "Πρόσθετα/Προσαρμοσμένα Πεδία (οριοθετημένα με κόμμα)" + "message": "Προσαρμοσμένα Πεδία" }, "additionalUserIdClaimTypes": { - "message": "Πρόσθετα/Προσαρμοσμένοι Τύποι Ιδιότητας Χρήστη (οριοθετημένοι με κόμμα)" + "message": "Προσαρμοσμένοι Τύποι Ιδιότητας Χρήστη" }, "additionalEmailClaimTypes": { - "message": "Πρόσθετα/Προσαρμοσμένοι Τύποι Διεκδίκησης Email (οριοθετημένοι με κόμμα)" + "message": "Προσαρμοσμένοι Τύποι Διεκδίκησης Email" }, "additionalNameClaimTypes": { - "message": "Πρόσθετο/Προσαρμοσμένος Τύπος Διεκδίκησης Ονόματος (οριοθετημένος με κόμμα)" + "message": "Προσαρμοσμένος Τύπος Διεκδίκησης Ονόματος" }, "acrValues": { "message": "Ζητούμενες τιμές αναφοράς κατηγορίας πλαισίου ελέγχου ταυτότητας (acr_values)" @@ -4491,7 +4492,7 @@ "message": "Ελάχιστος Εισερχόμενος Αλγόριθμος Υπογραφής" }, "spWantAssertionsSigned": { - "message": "Υπεγράφη Επιβεβαιώσεις" + "message": "Αναμονή υπογεγραμμένων ισχυρισμών" }, "spValidateCertificates": { "message": "Επικύρωση Πιστοποιητικών" @@ -4518,10 +4519,10 @@ "message": "Να Επιτρέπεται Μη Αιτούμενη Απόκριση Ταυτοποίησης" }, "idpAllowOutboundLogoutRequests": { - "message": "Allow outbound logout requests" + "message": "Να επιτρέπονται αιτήματα εξερχόμενης αποσύνδεσης" }, "idpSignAuthenticationRequests": { - "message": "Sign authentication requests" + "message": "Υπογραφή αιτήσεων ταυτοποίησης" }, "ssoSettingsSaved": { "message": "Οι ρυθμίσεις για απλή σύνδεση αποθηκεύτηκαν." @@ -4773,7 +4774,7 @@ "message": "ΔΩΡΕΑΝ με χορηγία" }, "formErrorSummaryPlural": { - "message": "$COUNT$ fields above need your attention.", + "message": "$COUNT$ πεδία παραπάνω χρειάζονται την προσοχή σας.", "placeholders": { "count": { "content": "$1", @@ -4782,10 +4783,10 @@ } }, "formErrorSummarySingle": { - "message": "1 field above needs your attention." + "message": "1 πεδίο παραπάνω χρειάζεται την προσοχή σας." }, "fieldRequiredError": { - "message": "$FIELDNAME$ is required.", + "message": "$FIELDNAME$ απαιτείται.", "placeholders": { "fieldname": { "content": "$1", @@ -4794,31 +4795,31 @@ } }, "required": { - "message": "required" + "message": "απαιτείται" }, "idpSingleSignOnServiceUrlRequired": { - "message": "Required if Entity ID is not a URL." + "message": "Απαιτείται εάν το ID οντότητας δεν είναι URL." }, "openIdOptionalCustomizations": { - "message": "Optional Customizations" + "message": "Προαιρετικές Προσαρμογές" }, "openIdAuthorityRequired": { - "message": "Required if Authority is not valid." + "message": "Απαιτείται εάν η Αρχή δεν είναι έγκυρη." }, "separateMultipleWithComma": { - "message": "Separate multiple with a comma." + "message": "Διαχωρίστε το πολλαπλάσιο με κόμμα." }, "sessionTimeout": { "message": "Έχει λήξει το χρονικό όριο. Παρακαλώ επιστρέψτε και προσπαθήστε να συνδεθείτε ξανά." }, "exportingPersonalVaultTitle": { - "message": "Exporting Personal Vault" + "message": "Εξαγωγή Προσωπικού Vault" }, "exportingOrganizationVaultTitle": { - "message": "Exporting Organization Vault" + "message": "Εξαγωγή Vault Οργανισμού" }, "exportingPersonalVaultDescription": { - "message": "Only the personal vault items associated with $EMAIL$ will be exported. Organization vault items will not be included.", + "message": "Θα εξαχθούν μόνο τα προσωπικά αντικείμενα Vault που σχετίζονται με το $EMAIL$. Τα αντικείμενα Vault οργανισμού δεν θα συμπεριληφθούν.", "placeholders": { "email": { "content": "$1", @@ -4827,7 +4828,7 @@ } }, "exportingOrganizationVaultDescription": { - "message": "Only the organization vault associated with $ORGANIZATION$ will be exported. Personal vault items and items from other organizations will not be included.", + "message": "Μόνο το vault οργανισμού που σχετίζεται με το $ORGANIZATION$ θα εξαχθεί. Προσωπικά αντικείμενα και αντικείμενα από άλλους οργανισμούς δεν θα συμπεριληφθούν.", "placeholders": { "organization": { "content": "$1", @@ -4836,45 +4837,46 @@ } }, "backToReports": { - "message": "Back to Reports" + "message": "Επιστροφή στις Αναφορές" }, "generator": { - "message": "Generator" + "message": "Γεννήτρια" }, "whatWouldYouLikeToGenerate": { - "message": "What would you like to generate?" + "message": "Τι θα θέλατε να δημιουργήσετε;" }, "passwordType": { - "message": "Password Type" + "message": "Τύπος Κωδικού" }, "regenerateUsername": { - "message": "Regenerate Username" + "message": "Επαναδημιουργία Ονόματος Χρήστη" }, "generateUsername": { - "message": "Generate Username" + "message": "Δημιουργία Ονόματος Χρήστη" }, "usernameType": { - "message": "Username Type" + "message": "Τύπος Ονόματος Χρήστη" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Συν Διεύθυνση Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { - "message": "Use your email provider's sub-addressing capabilities." + "message": "Χρησιμοποιήστε τις δυνατότητες δευτερεύουσας διεύθυνσης του παρόχου email σας." }, "catchallEmail": { "message": "Catch-all Email" }, "catchallEmailDesc": { - "message": "Use your domain's configured catch-all inbox." + "message": "Χρησιμοποιήστε τα διαμορφωμένα εισερχόμενα catch-all του domain σας." }, "random": { - "message": "Random" + "message": "Τυχαίο" }, "randomWord": { - "message": "Random Word" + "message": "Τυχαία Λέξη" }, "service": { - "message": "Service" + "message": "Υπηρεσία" } } diff --git a/src/locales/en_GB/messages.json b/src/locales/en_GB/messages.json index 9f33e294..e41f5eba 100644 --- a/src/locales/en_GB/messages.json +++ b/src/locales/en_GB/messages.json @@ -3616,7 +3616,8 @@ "message": "All sends" }, "maxAccessCountReached": { - "message": "Max access count reached" + "message": "Max access count reached", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Pending deletion" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/en_IN/messages.json b/src/locales/en_IN/messages.json index 89af0011..3f88812b 100644 --- a/src/locales/en_IN/messages.json +++ b/src/locales/en_IN/messages.json @@ -3616,7 +3616,8 @@ "message": "All Sends" }, "maxAccessCountReached": { - "message": "Max access count reached" + "message": "Max access count reached", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Pending deletion" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/eo/messages.json b/src/locales/eo/messages.json index 4637cabc..e9dce079 100644 --- a/src/locales/eo/messages.json +++ b/src/locales/eo/messages.json @@ -3616,7 +3616,8 @@ "message": "Ĉiuj Sendoj" }, "maxAccessCountReached": { - "message": "Maksimuma alirnombro atingis" + "message": "Maksimuma alirnombro atingis", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Atendanta forigo" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/es/messages.json b/src/locales/es/messages.json index c4ed1ad4..de85c2d1 100644 --- a/src/locales/es/messages.json +++ b/src/locales/es/messages.json @@ -3616,7 +3616,8 @@ "message": "Todos los Sends" }, "maxAccessCountReached": { - "message": "Número máximo de accesos alcanzado" + "message": "Número máximo de accesos alcanzado", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Borrado pendiente" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/et/messages.json b/src/locales/et/messages.json index 6072ce53..6e2aea11 100644 --- a/src/locales/et/messages.json +++ b/src/locales/et/messages.json @@ -191,7 +191,7 @@ "description": "Domain name. Ex. website.com" }, "domainName": { - "message": "Domain Name", + "message": "Domeeni nimi", "description": "Domain name. Ex. website.com" }, "host": { @@ -3616,7 +3616,8 @@ "message": "Kõik Sendid" }, "maxAccessCountReached": { - "message": "Maksimaalne ligipääsude arv on saavutatud" + "message": "Maksimaalne ligipääsude arv on saavutatud", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Kustutamise ootel" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/fi/messages.json b/src/locales/fi/messages.json index 2b1de489..b47697bb 100644 --- a/src/locales/fi/messages.json +++ b/src/locales/fi/messages.json @@ -3616,7 +3616,8 @@ "message": "Kaikki Sendit" }, "maxAccessCountReached": { - "message": "Käyttökertojen enimmäismäärä saavutettu" + "message": "Käyttökertojen enimmäismäärä saavutettu", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Odottaa poistoa" @@ -4857,7 +4858,8 @@ "message": "Käyttäjätunnuksen tyyppi" }, "plusAddressedEmail": { - "message": "Plus-osoitteinen sähköposti" + "message": "Plus-osoitteinen sähköposti", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Käytä sähköpostipalvelusi aliosoiteominaisuuksia." diff --git a/src/locales/fil/messages.json b/src/locales/fil/messages.json index 2721f590..5956fa88 100644 --- a/src/locales/fil/messages.json +++ b/src/locales/fil/messages.json @@ -3616,7 +3616,8 @@ "message": "All Sends" }, "maxAccessCountReached": { - "message": "Max access count reached" + "message": "Max access count reached", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Pending deletion" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/fr/messages.json b/src/locales/fr/messages.json index f925acab..ad75a1f8 100644 --- a/src/locales/fr/messages.json +++ b/src/locales/fr/messages.json @@ -3616,7 +3616,8 @@ "message": "Tous les Sends" }, "maxAccessCountReached": { - "message": "Nombre maximum d'accès atteint" + "message": "Nombre maximum d'accès atteint", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "En attente de suppression" @@ -4857,7 +4858,8 @@ "message": "Type de Nom d'Utilisateur" }, "plusAddressedEmail": { - "message": "Courriel Adressé Plus" + "message": "Courriel Adressé Plus", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Utilisez les capacités de sous-adressage de votre fournisseur de messagerie." diff --git a/src/locales/he/messages.json b/src/locales/he/messages.json index 79916673..2fc045eb 100644 --- a/src/locales/he/messages.json +++ b/src/locales/he/messages.json @@ -167,7 +167,7 @@ "message": "אמת או שקר" }, "cfTypeLinked": { - "message": "Linked", + "message": "מקושר", "description": "This describes a field that is 'linked' (related) to another field." }, "remove": { @@ -191,7 +191,7 @@ "description": "Domain name. Ex. website.com" }, "domainName": { - "message": "Domain Name", + "message": "שם דומיין", "description": "Domain name. Ex. website.com" }, "host": { @@ -306,16 +306,16 @@ "message": "פתק מאובטח" }, "typeLoginPlural": { - "message": "Logins" + "message": "התחברויות" }, "typeCardPlural": { - "message": "Cards" + "message": "כרטיסים" }, "typeIdentityPlural": { - "message": "Identities" + "message": "זהויות" }, "typeSecureNotePlural": { - "message": "Secure Notes" + "message": "פתקים מאובטחים" }, "folders": { "message": "תיקיות" @@ -333,7 +333,7 @@ "message": "שם משפחה" }, "fullName": { - "message": "Full Name" + "message": "שם מלא" }, "address1": { "message": "כתובת 1" @@ -372,7 +372,7 @@ "message": "ערוך פריט" }, "viewItem": { - "message": "View Item" + "message": "הצג פריט" }, "ex": { "message": "לדוגמא", @@ -385,7 +385,7 @@ "message": "שתף" }, "moveToOrganization": { - "message": "Move to Organization" + "message": "העברה לארגון" }, "valueCopied": { "message": "השדה $VALUE$ הועתק לזיכרון", @@ -428,7 +428,7 @@ "message": "כספת" }, "moveSelectedToOrg": { - "message": "Move Selected to Organization" + "message": "העבר בחירה לארגון" }, "deleteSelected": { "message": "מחק בחירה" @@ -476,7 +476,7 @@ "message": "פריט שנערך" }, "movedItemToOrg": { - "message": "$ITEMNAME$ moved to $ORGNAME$", + "message": "$ITEMNAME$ הועבר ל־$ORGNAME$", "placeholders": { "itemname": { "content": "$1", @@ -489,7 +489,7 @@ } }, "movedItemsToOrg": { - "message": "Selected items moved to $ORGNAME$", + "message": "פריטים נבחרים הועברו ל־$ORGNAME$", "placeholders": { "orgname": { "content": "$1", @@ -2680,7 +2680,7 @@ "message": "שלח הזמנה מחדש" }, "resendEmail": { - "message": "Resend Email" + "message": "שלח מייל בשנית" }, "hasBeenReinvited": { "message": "$USER$ הוזמן מחדש.", @@ -2737,10 +2737,10 @@ "message": "לא ניתן לאמת את האימייל שלך. נסה לשלוח מייל אימות חדש." }, "emailVerificationRequired": { - "message": "Email Verification Required" + "message": "יש לאמת את כתובת האימייל" }, "emailVerificationRequiredDesc": { - "message": "You must verify your email to use this feature." + "message": "נדרש אישור אימות בדוא\"ל כדי לאפשר שימוש בתכונה זו." }, "updateBrowser": { "message": "עדכן דפדפן" @@ -3616,13 +3616,14 @@ "message": "כל הSendים" }, "maxAccessCountReached": { - "message": "Max access count reached" + "message": "Max access count reached", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { - "message": "Pending deletion" + "message": "ממתין להסרה" }, "expired": { - "message": "Expired" + "message": "פג תוקף" }, "searchSends": { "message": "חיפוש Send", @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/hi/messages.json b/src/locales/hi/messages.json index 226fc697..a16c89e9 100644 --- a/src/locales/hi/messages.json +++ b/src/locales/hi/messages.json @@ -3616,7 +3616,8 @@ "message": "All Sends" }, "maxAccessCountReached": { - "message": "Max access count reached" + "message": "Max access count reached", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Pending deletion" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/hr/messages.json b/src/locales/hr/messages.json index 6ed93b15..78332f50 100644 --- a/src/locales/hr/messages.json +++ b/src/locales/hr/messages.json @@ -3616,7 +3616,8 @@ "message": "Svi Sendovi" }, "maxAccessCountReached": { - "message": "Dostignut najveći broj pristupanja" + "message": "Dostignut najveći broj pristupanja", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Čeka brisanje" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/hu/messages.json b/src/locales/hu/messages.json index 953c43b6..b38a77a0 100644 --- a/src/locales/hu/messages.json +++ b/src/locales/hu/messages.json @@ -1431,7 +1431,7 @@ "message": "Jelentések" }, "reportsDesc": { - "message": "Identify and close security gaps in your online accounts by clicking the reports below." + "message": "Az alábbi jelentésekre kattintva azonosítsuk és zárjuk le a webes kiókjaink biztonsági hiányosságait." }, "unsecuredWebsitesReport": { "message": "Nem-biztonságos webhelyek jelentés" @@ -3616,7 +3616,8 @@ "message": "Összes küldés" }, "maxAccessCountReached": { - "message": "A maximális hozzáférések száma elérésre került." + "message": "A maximális hozzáférések száma elérésre került.", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Függőben lévő törlés" @@ -4836,7 +4837,7 @@ } }, "backToReports": { - "message": "Back to Reports" + "message": "Vissza a jelentésekhez" }, "generator": { "message": "Generator" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/id/messages.json b/src/locales/id/messages.json index 88e3d917..0dd91ced 100644 --- a/src/locales/id/messages.json +++ b/src/locales/id/messages.json @@ -3616,7 +3616,8 @@ "message": "Semua Dikirim" }, "maxAccessCountReached": { - "message": "Jumlah akses maksimum tercapai" + "message": "Jumlah akses maksimum tercapai", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Penghapusan menunggu keputusan" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/it/messages.json b/src/locales/it/messages.json index 7f82bdd6..61ea046c 100644 --- a/src/locales/it/messages.json +++ b/src/locales/it/messages.json @@ -3616,7 +3616,8 @@ "message": "Tutti i Send" }, "maxAccessCountReached": { - "message": "Numero massimo di accessi raggiunto" + "message": "Numero massimo di accessi raggiunto", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "In attesa di eliminazione" @@ -4803,7 +4804,7 @@ "message": "Personalizzazioni opzionali" }, "openIdAuthorityRequired": { - "message": "Richiesto se l'autorità non è valida." + "message": "Richiesto se l'Authority non è valida." }, "separateMultipleWithComma": { "message": "Elenco separato da virgole." @@ -4857,7 +4858,8 @@ "message": "Tipo di nome utente" }, "plusAddressedEmail": { - "message": "Indirizzo email alternativo" + "message": "Indirizzo email alternativo", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Usa le funzionalità di sub-indirizzamento del tuo fornitore di posta elettronica." diff --git a/src/locales/ja/messages.json b/src/locales/ja/messages.json index ef3c2432..3793b3c3 100644 --- a/src/locales/ja/messages.json +++ b/src/locales/ja/messages.json @@ -3616,7 +3616,8 @@ "message": "すべての Send" }, "maxAccessCountReached": { - "message": "最大アクセス数に達しました" + "message": "最大アクセス数に達しました", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "保留中の削除" @@ -4857,7 +4858,8 @@ "message": "ユーザー名の種類" }, "plusAddressedEmail": { - "message": "プラス付きのメールアドレス" + "message": "プラス付きのメールアドレス", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "メールプロバイダのエイリアス機能を使用します。" diff --git a/src/locales/ka/messages.json b/src/locales/ka/messages.json index 02e504d3..a7c284de 100644 --- a/src/locales/ka/messages.json +++ b/src/locales/ka/messages.json @@ -3616,7 +3616,8 @@ "message": "All Sends" }, "maxAccessCountReached": { - "message": "Max access count reached" + "message": "Max access count reached", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Pending deletion" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/km/messages.json b/src/locales/km/messages.json index 02e504d3..a7c284de 100644 --- a/src/locales/km/messages.json +++ b/src/locales/km/messages.json @@ -3616,7 +3616,8 @@ "message": "All Sends" }, "maxAccessCountReached": { - "message": "Max access count reached" + "message": "Max access count reached", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Pending deletion" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/kn/messages.json b/src/locales/kn/messages.json index 2f051902..bffd6bbf 100644 --- a/src/locales/kn/messages.json +++ b/src/locales/kn/messages.json @@ -3616,7 +3616,8 @@ "message": "ಎಲ್ಲಾ ಕಳುಹಿಸುತ್ತದೆ" }, "maxAccessCountReached": { - "message": "ಗರಿಷ್ಠ ಪ್ರವೇಶ ಎಣಿಕೆ ತಲುಪಿದೆ" + "message": "ಗರಿಷ್ಠ ಪ್ರವೇಶ ಎಣಿಕೆ ತಲುಪಿದೆ", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "ಅಳಿಸುವಿಕೆ ಬಾಕಿ ಉಳಿದಿದೆ" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/ko/messages.json b/src/locales/ko/messages.json index 9a5f88f7..dd724005 100644 --- a/src/locales/ko/messages.json +++ b/src/locales/ko/messages.json @@ -3616,7 +3616,8 @@ "message": "모든 Send" }, "maxAccessCountReached": { - "message": "최대 접근 횟수 도달" + "message": "최대 접근 횟수 도달", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "삭제 대기 중" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/lv/messages.json b/src/locales/lv/messages.json index eb14c8f5..38fa0e7a 100644 --- a/src/locales/lv/messages.json +++ b/src/locales/lv/messages.json @@ -191,7 +191,7 @@ "description": "Domain name. Ex. website.com" }, "domainName": { - "message": "Domain Name", + "message": "Domēna vārds", "description": "Domain name. Ex. website.com" }, "host": { @@ -1431,7 +1431,7 @@ "message": "Pārskati" }, "reportsDesc": { - "message": "Identify and close security gaps in your online accounts by clicking the reports below." + "message": "Noteikt un novērst drošības nepilnības tiešsaistes kontos klikšķinot uz zemāk esošajām atskaitēm." }, "unsecuredWebsitesReport": { "message": "Nedrošu tīmekļa vietņu pārskats" @@ -3616,7 +3616,8 @@ "message": "Visi \"Send\"" }, "maxAccessCountReached": { - "message": "Sasniegts lielākais pieļaujamais piekļuvju skaits" + "message": "Sasniegts lielākais pieļaujamais piekļuvju skaits", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Gaida dzēšanu" @@ -4836,45 +4837,46 @@ } }, "backToReports": { - "message": "Back to Reports" + "message": "Atgriezties pie atskaitēm" }, "generator": { - "message": "Generator" + "message": "Veidotājs" }, "whatWouldYouLikeToGenerate": { - "message": "What would you like to generate?" + "message": "Ko ir nepieciešams izveidot?" }, "passwordType": { - "message": "Password Type" + "message": "Paroles veids" }, "regenerateUsername": { - "message": "Regenerate Username" + "message": "Pārizveidot lietotājvārdu" }, "generateUsername": { - "message": "Generate Username" + "message": "Izveidot lietotājvārdu" }, "usernameType": { - "message": "Username Type" + "message": "Lietotājvārda veids" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "E-pasta adrese ar plusu", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { - "message": "Use your email provider's sub-addressing capabilities." + "message": "Izmantot e-pasta pakalpojuma nodrošinātāja apakšadresēšanas spējas." }, "catchallEmail": { - "message": "Catch-all Email" + "message": "Visu tveroša e-pasta adrese" }, "catchallEmailDesc": { - "message": "Use your domain's configured catch-all inbox." + "message": "Izmantot uzstādīto domēna visu tverošo iesūtni." }, "random": { - "message": "Random" + "message": "Nejauši" }, "randomWord": { - "message": "Random Word" + "message": "Nejaušs vārds" }, "service": { - "message": "Service" + "message": "Pakalpojums" } } diff --git a/src/locales/ml/messages.json b/src/locales/ml/messages.json index 13661832..6e799f1f 100644 --- a/src/locales/ml/messages.json +++ b/src/locales/ml/messages.json @@ -3616,7 +3616,8 @@ "message": "എല്ലാം Send-കൾ" }, "maxAccessCountReached": { - "message": "Max access count reached" + "message": "Max access count reached", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Pending deletion" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/nb/messages.json b/src/locales/nb/messages.json index 85c84bf9..cd1319d2 100644 --- a/src/locales/nb/messages.json +++ b/src/locales/nb/messages.json @@ -3616,7 +3616,8 @@ "message": "Alle Send-er" }, "maxAccessCountReached": { - "message": "Maksimalt antall tilganger nådd" + "message": "Maksimalt antall tilganger nådd", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Venter på sletting" @@ -4857,7 +4858,8 @@ "message": "Brukernavntype" }, "plusAddressedEmail": { - "message": "Pluss-adressert e-post" + "message": "Pluss-adressert e-post", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Bruk e-posttilbyderens sub-adresseringsmuligheter." diff --git a/src/locales/nl/messages.json b/src/locales/nl/messages.json index da4c02fb..5a01345b 100644 --- a/src/locales/nl/messages.json +++ b/src/locales/nl/messages.json @@ -3616,7 +3616,8 @@ "message": "Alle Sends" }, "maxAccessCountReached": { - "message": "Maximum aantal keren benaderd" + "message": "Maximum aantal keren benaderd", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Wordt verwijderd" @@ -4857,7 +4858,8 @@ "message": "Type gebruikersnaam" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/nn/messages.json b/src/locales/nn/messages.json index 28cfe2c9..09e41acf 100644 --- a/src/locales/nn/messages.json +++ b/src/locales/nn/messages.json @@ -3616,7 +3616,8 @@ "message": "All Sends" }, "maxAccessCountReached": { - "message": "Max access count reached" + "message": "Max access count reached", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Pending deletion" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/pl/messages.json b/src/locales/pl/messages.json index a7eb6988..aab046c2 100644 --- a/src/locales/pl/messages.json +++ b/src/locales/pl/messages.json @@ -1434,7 +1434,7 @@ "message": "Zidentyfikuj i napraw luki bezpieczeństwa na swoich kontach online, klikając raporty poniżej." }, "unsecuredWebsitesReport": { - "message": "Raport niezabezpieczonych stron" + "message": "Niezabezpieczone witryny" }, "unsecuredWebsitesReportDesc": { "message": "Używanie niezabezpieczonych stron (protokół HTTP) może być niebezpieczne. Jeśli strona na to pozwala, zawsze powinieneś używać protokołu HTTPS, aby Twoje połączenie było szyfrowane." @@ -1479,7 +1479,7 @@ "message": "Instrukcje" }, "exposedPasswordsReport": { - "message": "Raport ujawnionych haseł" + "message": "Ujawnione hasła" }, "exposedPasswordsReportDesc": { "message": "Ujawnione hasła to hasła odkryte w znanych wyciekach danych, które zostały publicznie wydane lub sprzedane w sieci przez hakerów." @@ -1512,7 +1512,7 @@ } }, "weakPasswordsReport": { - "message": "Raport słabych haseł" + "message": "Słabe hasła" }, "weakPasswordsReportDesc": { "message": "Słabe hasła mogą być łatwo odgadnięte przez hakerów i zautomatyzowane narzędzia używane do łamania haseł. Generator haseł Bitwarden tworzy silne hasła." @@ -3616,7 +3616,8 @@ "message": "Wszystkie wysyłki" }, "maxAccessCountReached": { - "message": "Maksymalna liczba dostępów została osiągnięta" + "message": "Maksymalna liczba dostępów została osiągnięta", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Oczekiwanie na usunięcie" @@ -4836,7 +4837,7 @@ } }, "backToReports": { - "message": "Wróć do raportów" + "message": "Powrót do raportów" }, "generator": { "message": "Generator" @@ -4845,7 +4846,7 @@ "message": "Co chcesz wygenerować?" }, "passwordType": { - "message": "Typ hasła" + "message": "Rodzaj hasła" }, "regenerateUsername": { "message": "Wygeneruj ponownie nazwę użytkownika" @@ -4854,19 +4855,20 @@ "message": "Wygeneruj nazwę użytkownika" }, "usernameType": { - "message": "Typ nazwy użytkownika" + "message": "Rodzaj nazwy użytkownika" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Adres e-mail z plusem", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { - "message": "Use your email provider's sub-addressing capabilities." + "message": "Użyj możliwości dodawania aliasów u swojego dostawcy poczty e-mail." }, "catchallEmail": { "message": "Adres catch-all" }, "catchallEmailDesc": { - "message": "Use your domain's configured catch-all inbox." + "message": "Użyj skonfigurowanej skrzynki catch-all w swojej domenie." }, "random": { "message": "Losowo" diff --git a/src/locales/pt_BR/messages.json b/src/locales/pt_BR/messages.json index ba2bcca1..f97367af 100644 --- a/src/locales/pt_BR/messages.json +++ b/src/locales/pt_BR/messages.json @@ -3616,7 +3616,8 @@ "message": "Todos os Sends" }, "maxAccessCountReached": { - "message": "Número máximo de acessos atingido" + "message": "Número máximo de acessos atingido", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Exclusão pendente" @@ -4521,7 +4522,7 @@ "message": "Allow outbound logout requests" }, "idpSignAuthenticationRequests": { - "message": "Sign authentication requests" + "message": "Assinar pedidos de autenticação" }, "ssoSettingsSaved": { "message": "Configuração de logon único foi salva." @@ -4848,7 +4849,7 @@ "message": "Password Type" }, "regenerateUsername": { - "message": "Regenerate Username" + "message": "Recriar Usuário" }, "generateUsername": { "message": "Generate Username" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/pt_PT/messages.json b/src/locales/pt_PT/messages.json index 5be873ac..836c14fd 100644 --- a/src/locales/pt_PT/messages.json +++ b/src/locales/pt_PT/messages.json @@ -3616,7 +3616,8 @@ "message": "All Sends" }, "maxAccessCountReached": { - "message": "Max access count reached" + "message": "Max access count reached", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Pending deletion" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/ro/messages.json b/src/locales/ro/messages.json index c61b27f1..9a2d2fb4 100644 --- a/src/locales/ro/messages.json +++ b/src/locales/ro/messages.json @@ -3616,7 +3616,8 @@ "message": "Toate Send-urile" }, "maxAccessCountReached": { - "message": "S-a atins numărul maxim de acces" + "message": "S-a atins numărul maxim de acces", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Ștergere în așteptare" @@ -4857,7 +4858,8 @@ "message": "Tip de nume de utilizator" }, "plusAddressedEmail": { - "message": "Plus e-mail adresat" + "message": "Plus e-mail adresat", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Utilizați capacitățile de subadresare ale furnizorului dvs. de e-mail." diff --git a/src/locales/ru/messages.json b/src/locales/ru/messages.json index 50a4336a..76d6565c 100644 --- a/src/locales/ru/messages.json +++ b/src/locales/ru/messages.json @@ -1431,13 +1431,13 @@ "message": "Отчеты" }, "reportsDesc": { - "message": "Identify and close security gaps in your online accounts by clicking the reports below." + "message": "Выявите и устраните проблемы с безопасностью в ваших онлайн-аккаунтах, перейдя по ссылкам на отчеты ниже." }, "unsecuredWebsitesReport": { - "message": "Отчет о незащищенных сайтах" + "message": "Небезопасные сайты" }, "unsecuredWebsitesReportDesc": { - "message": "Использование незащищенных сайтов по схеме http:// может быть опасным. Если сайт позволяет, следует всегда получать к нему доступ по схеме https://, для шифрования соединения." + "message": "URL-адреса, начинающиеся с http://, не используют оптимальный способ шифрования. Измените URI для логинов этих аккаунтов на https:// для более безопасного использования интернета." }, "unsecuredWebsitesFound": { "message": "Найдены незащищенные сайты" @@ -1455,10 +1455,10 @@ "message": "В вашем хранилище нет элементов с незащищенными URI." }, "inactive2faReport": { - "message": "Отчет о неактивной 2ФА" + "message": "Неактивная двухфакторная аутентификация" }, "inactive2faReportDesc": { - "message": "Двухфакторная аутентификация (2ФА) очень важна для безопасности, она помогает защитить ваши аккаунты. Если сайт предлагает это, следует всегда включать двухфакторную аутентификацию." + "message": "Двухфакторная аутентификация добавляет уровень защиты для ваших аккаунтов. Включите ее для этих учетных записей с помощью Bitwarden Authenticator или используйте альтернативный метод." }, "inactive2faFound": { "message": "Найдены логины без 2ФА" @@ -1479,10 +1479,10 @@ "message": "Инструкции" }, "exposedPasswordsReport": { - "message": "Отчет о скопрометированных паролях" + "message": "Скомпрометированные пароли" }, "exposedPasswordsReportDesc": { - "message": "Скомпрометированные пароли - это пароли, обнаруженные в известных базах утечек, опубликованные или проданные в даркнете хакерами." + "message": "Скомпрометированные в результате утечки данных пароли - легкая мишень для злоумышленников. Измените эти пароли, чтобы предотвратить возможные взломы." }, "exposedPasswordsFound": { "message": "Найдены скомпрометированные пароли" @@ -1512,10 +1512,10 @@ } }, "weakPasswordsReport": { - "message": "Отчет о слабых паролях" + "message": "Слабые пароли" }, "weakPasswordsReportDesc": { - "message": "Слабые пароли могут быть легко подобраны хакерами и автоматизированными средствами для взлома паролей. Создавать надежные пароли может помочь генератор паролей Bitwarden." + "message": "Слабые пароли могут быть легко подобраны злоумышленниками. Измените эти пароли на надежные при помощи генератора паролей." }, "weakPasswordsFound": { "message": "Обнаружены слабые пароли" @@ -1533,10 +1533,10 @@ "message": "В вашем хранилище нет слабых паролей." }, "reusedPasswordsReport": { - "message": "Отчет о повторно использованных паролях" + "message": "Повторно использованные пароли" }, "reusedPasswordsReportDesc": { - "message": "Если используемый вами сервис взломан, повторное использование того же пароля в другом месте может позволить хакерам легко получить доступ к другим вашим аккаунтам. Для каждого аккаунта или сервиса следует использовать уникальный пароль." + "message": "Повторное использование паролей облегчает злоумышленникам взлом нескольких учетных записей. Измените эти пароли и сделайте каждый из них уникальным." }, "reusedPasswordsFound": { "message": "Обнаружены повторно использованные пароли" @@ -1563,10 +1563,10 @@ } }, "dataBreachReport": { - "message": "Отчет о данных утечек" + "message": "Утечка данных" }, "breachDesc": { - "message": "Утечка - это когда данные сайта стали незаконно доступны хакерам и впоследствии опубликованы. Проверьте типы данных, которые были скомпрометированы (адреса email, пароли, кредитные карты и т.д.), и примите соответствующие меры, например измените пароли." + "message": "Взломанные аккаунты могут раскрыть вашу личную информацию. Защитите их, включив 2ФА или создав более надежный пароль." }, "breachCheckUsernameEmail": { "message": "Проверьте имена пользователей или адреса email, которые вы используете." @@ -3616,7 +3616,8 @@ "message": "Все Send’ы" }, "maxAccessCountReached": { - "message": "Достигнут максимум обращений" + "message": "Достигнут максимум обращений", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Ожидание удаления" @@ -4449,25 +4450,25 @@ "message": "Поведение перенаправления OIDC" }, "getClaimsFromUserInfoEndpoint": { - "message": "Получать запросы от конечной точки информации о пользователе" + "message": "Получать требования от конечной точки информации о пользователе" }, "additionalScopes": { - "message": "Дополнительные/пользовательские области видимости (разделенные запятыми)" + "message": "Пользовательские области" }, "additionalUserIdClaimTypes": { - "message": "Дополнительные/пользовательские типы требований к ID пользователя (разделенные запятыми)" + "message": "Типы требований к ID пользователя" }, "additionalEmailClaimTypes": { - "message": "Дополнительные/пользовательские типы требований к email (разделенные запятыми)" + "message": "Типы требований email" }, "additionalNameClaimTypes": { - "message": "Дополнительные/пользовательские типы требований к имени (разделенные запятыми)" + "message": "Типы требований к имени пользователя" }, "acrValues": { - "message": "Запрашиваемый контекст аутентификации 'Класс справочных значений' (acr_values)" + "message": "Запрашиваемые значения класса ссылок на контекст аутентификации" }, "expectedReturnAcrValue": { - "message": "Ожидаемый \"acr\" Значение утверждения в ответе (проверка acr)" + "message": "Ожидаемое значение \"acr\" Значение требования в ответе" }, "spEntityId": { "message": "ID объекта SP" @@ -4491,7 +4492,7 @@ "message": "Алгоритм минимальной входящей подписи" }, "spWantAssertionsSigned": { - "message": "Требуется подпись" + "message": "Ожидание подписанных подтверждений" }, "spValidateCertificates": { "message": "Проверка сертификатов" @@ -4848,7 +4849,7 @@ "message": "Тип пароля" }, "regenerateUsername": { - "message": "Восстановить имя пользователя" + "message": "Пересоздать имя пользователя" }, "generateUsername": { "message": "Создать имя пользователя" @@ -4857,16 +4858,17 @@ "message": "Тип имени пользователя" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Плюс-адресованные email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { - "message": "Use your email provider's sub-addressing capabilities." + "message": "Использовать возможности суб-адресации вашего провайдера электронной почты." }, "catchallEmail": { - "message": "Универсальная электронная почта" + "message": "Catch-all-адрес электронной почты" }, "catchallEmailDesc": { - "message": "Use your domain's configured catch-all inbox." + "message": "Использовать настроенную в вашем домене почту catch-all." }, "random": { "message": "Случайно" @@ -4875,6 +4877,6 @@ "message": "Случайное слово" }, "service": { - "message": "Service" + "message": "Служба" } } diff --git a/src/locales/si/messages.json b/src/locales/si/messages.json index 4bc6e350..71100f06 100644 --- a/src/locales/si/messages.json +++ b/src/locales/si/messages.json @@ -3616,7 +3616,8 @@ "message": "All Sends" }, "maxAccessCountReached": { - "message": "Max access count reached" + "message": "Max access count reached", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Pending deletion" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/sk/messages.json b/src/locales/sk/messages.json index 538c4583..43e77edb 100644 --- a/src/locales/sk/messages.json +++ b/src/locales/sk/messages.json @@ -1434,7 +1434,7 @@ "message": "Identify and close security gaps in your online accounts by clicking the reports below." }, "unsecuredWebsitesReport": { - "message": "Správa o nezabezpečených stránkach" + "message": "Nezabezpečené stránky" }, "unsecuredWebsitesReportDesc": { "message": "Používať nezabezpečené stránky s protokolom http:// môže byť nebezpečné. Ak to stránka umožňuje, mali by ste vždy používať protokol https:// aby bolo vaše pripojenie šifrované." @@ -1455,7 +1455,7 @@ "message": "Vo vašom trezore nemáte nezabezpečené URI." }, "inactive2faReport": { - "message": "Správa o neaktívnych 2FA" + "message": "Neaktívne 2FA" }, "inactive2faReportDesc": { "message": "Dvojstupňové prihlásenie (2FA) je dôležité nastavenie ktoré vám pomôže zabezpečiť vaše kontá. Ak to stránka umožňuje, mali by ste 2FA použiť." @@ -3616,7 +3616,8 @@ "message": "Všetky Sendy" }, "maxAccessCountReached": { - "message": "Bol dosiahnutý maximálny počet prístupov" + "message": "Bol dosiahnutý maximálny počet prístupov", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Čakajúce odstránenie" @@ -4857,7 +4858,8 @@ "message": "Typ používateľského mena" }, "plusAddressedEmail": { - "message": "E-mail s plusovým aliasom" + "message": "E-mail s plusovým aliasom", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Použiť možnosti subadresovania svojho poskytovateľa e-mailu." diff --git a/src/locales/sl/messages.json b/src/locales/sl/messages.json index 37b549ba..1df7f9f0 100644 --- a/src/locales/sl/messages.json +++ b/src/locales/sl/messages.json @@ -3616,7 +3616,8 @@ "message": "All Sends" }, "maxAccessCountReached": { - "message": "Max access count reached" + "message": "Max access count reached", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Pending deletion" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/sr/messages.json b/src/locales/sr/messages.json index 3535736d..a6dccc1c 100644 --- a/src/locales/sr/messages.json +++ b/src/locales/sr/messages.json @@ -3616,7 +3616,8 @@ "message": "Sva slanja" }, "maxAccessCountReached": { - "message": "Max access count reached" + "message": "Max access count reached", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Pending deletion" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/sv/messages.json b/src/locales/sv/messages.json index 744cc05c..bfae3863 100644 --- a/src/locales/sv/messages.json +++ b/src/locales/sv/messages.json @@ -191,7 +191,7 @@ "description": "Domain name. Ex. website.com" }, "domainName": { - "message": "Domain Name", + "message": "Domännamn", "description": "Domain name. Ex. website.com" }, "host": { @@ -3616,7 +3616,8 @@ "message": "All Sends" }, "maxAccessCountReached": { - "message": "Det maximala antalet åtkomster har uppnåtts" + "message": "Det maximala antalet åtkomster har uppnåtts", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Väntar på radering" @@ -4836,7 +4837,7 @@ } }, "backToReports": { - "message": "Back to Reports" + "message": "Tillbaka till Rapporter" }, "generator": { "message": "Generator" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/tr/messages.json b/src/locales/tr/messages.json index 37a45dea..e392f263 100644 --- a/src/locales/tr/messages.json +++ b/src/locales/tr/messages.json @@ -3616,7 +3616,8 @@ "message": "Tüm Send'ler" }, "maxAccessCountReached": { - "message": "Maksimum erişim sayısına ulaşıldı" + "message": "Maksimum erişim sayısına ulaşıldı", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Silinmesi bekleniyor" @@ -4857,7 +4858,8 @@ "message": "Kullanıcı adı türü" }, "plusAddressedEmail": { - "message": "Artı adresli e-posta" + "message": "Artı adresli e-posta", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "E-posta sağlayıcınızın alt adres özelliklerini kullanın." diff --git a/src/locales/uk/messages.json b/src/locales/uk/messages.json index 4ece7d0d..80fc5f1a 100644 --- a/src/locales/uk/messages.json +++ b/src/locales/uk/messages.json @@ -191,7 +191,7 @@ "description": "Domain name. Ex. website.com" }, "domainName": { - "message": "Domain Name", + "message": "Ім'я домену", "description": "Domain name. Ex. website.com" }, "host": { @@ -1431,13 +1431,13 @@ "message": "Звіти" }, "reportsDesc": { - "message": "Identify and close security gaps in your online accounts by clicking the reports below." + "message": "Визначте і закрийте прогалини в безпеці у ваших облікових записах, натиснувши на звіти нижче." }, "unsecuredWebsitesReport": { - "message": "Звіт про незахищені вебсайти" + "message": "Незахищені вебсайти" }, "unsecuredWebsitesReportDesc": { - "message": "Використання незахищених вебсайтів з протоколом http:// може бути небезпечним. Якщо вебсайт дозволяє, вам слід завжди використовувати його з протоколом https://, щоб ваше з'єднання було зашифрованим." + "message": "URL-адреси, що починаються з http:// не мають надійного шифрування. Змініть URL-адреси цих облікових записів на https:// для використання безпечного з'єднання." }, "unsecuredWebsitesFound": { "message": "Знайдено незахищені вебсайти" @@ -1455,10 +1455,10 @@ "message": "У вашому сховищі немає записів з незахищеними URL-адресами." }, "inactive2faReport": { - "message": "Звіт про неактивну двоетапну перевірку" + "message": "Неактивна двоетапна перевірка" }, "inactive2faReportDesc": { - "message": "Двоетапна перевірка (2FA) - це важливе налаштування безпеки, що дозволяє захистити ваші облікові дані. Ви повинні завжди використовувати її на вебсайтах, де вона пропонується." + "message": "Двоетапна перевірка надає додатковий рівень захисту для ваших облікових записів. Увімкніть двоетапнуперевірку з використанням вбудованих засобів Bitwarden для цих облікових записів, або скористайтеся альтернативним способом." }, "inactive2faFound": { "message": "Знайдено записи без двоетапної перевірки" @@ -1479,10 +1479,10 @@ "message": "Інструкції" }, "exposedPasswordsReport": { - "message": "Звіт викритих паролів" + "message": "Викриті паролі" }, "exposedPasswordsReportDesc": { - "message": "Exposed passwords are passwords have been uncovered in known data breaches that were released publicly or sold on the dark web by hackers." + "message": "Паролі, викриті у витоках даних, є легкою мішенню для зловмисників. Змініть ці паролі для запобігання потенційних ризиків." }, "exposedPasswordsFound": { "message": "Знайдено викриті паролі" @@ -1512,10 +1512,10 @@ } }, "weakPasswordsReport": { - "message": "Звіт про ненадійні паролі" + "message": "Ненадійні паролі" }, "weakPasswordsReportDesc": { - "message": "Ненадійні паролі можуть легко бути вгадані хакерами і автоматизованими засобами злому паролів. Генератор паролів Bitwarden може допомогти вам створити надійні паролі." + "message": "Ненадійні паролі можуть легко бути вгадані зловмисниками. Замініть ці паролі на надійні за допомогою генератора паролів." }, "weakPasswordsFound": { "message": "Знайдено ненадійні паролі" @@ -1533,10 +1533,10 @@ "message": "У вашому сховищі немає ненадійних паролів." }, "reusedPasswordsReport": { - "message": "Звіт повторюваних паролів" + "message": "Повторювані паролі" }, "reusedPasswordsReportDesc": { - "message": "Якщо використовуваний вами сервіс було скомпрометовано, повторне використання однакового пароля в інших місцях може дозволити хакерам легко отримати доступ до інших ваших облікових записів. Вам слід використовувати унікальний пароль для кожного сервісу чи облікового запису." + "message": "Повторне використання паролів дає змогу легко отримати доступ до багатьох облікових записів. Замініть ці паролі, щоб кожен з них був унікальним." }, "reusedPasswordsFound": { "message": "Знайдено повторювані паролі" @@ -1563,10 +1563,10 @@ } }, "dataBreachReport": { - "message": "Звіт про витік даних" + "message": "Витік даних" }, "breachDesc": { - "message": "Витік даних - це подія, під час якої зловмисниками було отримано неавторизований доступ до даних вебсайтів та оприлюднено їх. Перегляньте тип даних, які було скомпрометовано (адреси електронної пошти, паролі, кредитні картки та інше) і виконайте необхідні дії, наприклад, змініть паролі." + "message": "Викриті облікові дані можуть розкрити вашу особисту інформацію. Захистіть викриті облікові записи, увімкнувши двоктапну перевірку чи створивши надійніший пароль." }, "breachCheckUsernameEmail": { "message": "Перевірте будь-які використовувані вами імена користувачів чи адреси електронної пошти." @@ -3616,7 +3616,8 @@ "message": "Усі відправлення" }, "maxAccessCountReached": { - "message": "Досягнуто максимальну кількість доступів" + "message": "Досягнуто максимальну кількість доступів", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Очікується видалення" @@ -4836,45 +4837,46 @@ } }, "backToReports": { - "message": "Back to Reports" + "message": "Повернутися до звітів" }, "generator": { - "message": "Generator" + "message": "Генератор" }, "whatWouldYouLikeToGenerate": { - "message": "What would you like to generate?" + "message": "Що ви бажаєте згенерувати?" }, "passwordType": { - "message": "Password Type" + "message": "Тип пароля" }, "regenerateUsername": { - "message": "Regenerate Username" + "message": "Повторно генерувати ім'я користувача" }, "generateUsername": { - "message": "Generate Username" + "message": "Генерувати ім'я користувача" }, "usernameType": { - "message": "Username Type" + "message": "Тип імені користувача" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Плюс адреса електронної пошти", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { - "message": "Use your email provider's sub-addressing capabilities." + "message": "Використовуйте розширені можливості адрес вашого постачальника електронної пошти." }, "catchallEmail": { - "message": "Catch-all Email" + "message": "Адреса е-пошти Catch-all" }, "catchallEmailDesc": { - "message": "Use your domain's configured catch-all inbox." + "message": "Використовуйте свою скриньку вхідних Catch-All власного домену." }, "random": { - "message": "Random" + "message": "Випадково" }, "randomWord": { - "message": "Random Word" + "message": "Випадкове слово" }, "service": { - "message": "Service" + "message": "Послуга" } } diff --git a/src/locales/vi/messages.json b/src/locales/vi/messages.json index 209bb0a6..ea0802fd 100644 --- a/src/locales/vi/messages.json +++ b/src/locales/vi/messages.json @@ -3616,7 +3616,8 @@ "message": "Toàn bộ Send" }, "maxAccessCountReached": { - "message": "Max access count reached" + "message": "Max access count reached", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "Pending deletion" @@ -4857,7 +4858,8 @@ "message": "Username Type" }, "plusAddressedEmail": { - "message": "Plus Addressed Email" + "message": "Plus Addressed Email", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "Use your email provider's sub-addressing capabilities." diff --git a/src/locales/zh_CN/messages.json b/src/locales/zh_CN/messages.json index 2511d842..461530d0 100644 --- a/src/locales/zh_CN/messages.json +++ b/src/locales/zh_CN/messages.json @@ -3616,7 +3616,8 @@ "message": "所有 Send" }, "maxAccessCountReached": { - "message": "已达最大访问次数" + "message": "已达最大访问次数", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "等待删除" @@ -4857,7 +4858,8 @@ "message": "用户名类型" }, "plusAddressedEmail": { - "message": "附加地址电子邮件" + "message": "附加地址电子邮件", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "使用您的电子邮件提供商的子地址功能。" diff --git a/src/locales/zh_TW/messages.json b/src/locales/zh_TW/messages.json index 6553e0c0..b94239b5 100644 --- a/src/locales/zh_TW/messages.json +++ b/src/locales/zh_TW/messages.json @@ -3616,7 +3616,8 @@ "message": "所有 Send" }, "maxAccessCountReached": { - "message": "已達最大存取次數" + "message": "已達最大存取次數", + "description": "This text will be displayed after a Send has been accessed the maximum amount of times." }, "pendingDeletion": { "message": "等待刪除" @@ -4857,7 +4858,8 @@ "message": "使用者名稱類型" }, "plusAddressedEmail": { - "message": "加號地址電子郵件" + "message": "加號地址電子郵件", + "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { "message": "使用您的電子郵件提供者的子地址功能。" From 609c13faf4f15459db4e7738a5a7a3945863741b Mon Sep 17 00:00:00 2001 From: Joseph Flinn <58369717+joseph-flinn@users.noreply.github.com> Date: Thu, 14 Apr 2022 16:05:20 -0700 Subject: [PATCH 18/18] Bumping the pinned commit for the download-artifact to bypass the github api issue (#1598) --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 15baa896..bef2229d 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -188,7 +188,7 @@ jobs: git config --global url."https://".insteadOf ssh:// - name: Download latest cloud asset - uses: bitwarden/gh-actions/download-artifacts@23433be15ed6fd046ce12b6889c5184a8d9c8783 + uses: bitwarden/gh-actions/download-artifacts@c1fa8e09871a860862d6bbe36184b06d2c7e35a8 with: workflow: build.yml workflow_conclusion: success