diff --git a/.github/workflows/alert-ddg-files-modified.yml b/.github/workflows/alert-ddg-files-modified.yml index 4acab6b1c6..90c055a97b 100644 --- a/.github/workflows/alert-ddg-files-modified.yml +++ b/.github/workflows/alert-ddg-files-modified.yml @@ -14,7 +14,7 @@ jobs: pull-requests: write steps: - name: Checkout code - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: fetch-depth: 0 persist-credentials: false diff --git a/.github/workflows/auto-branch-updater.yml b/.github/workflows/auto-branch-updater.yml index dcd031af0d..02176b3169 100644 --- a/.github/workflows/auto-branch-updater.yml +++ b/.github/workflows/auto-branch-updater.yml @@ -30,7 +30,7 @@ jobs: run: echo "branch=${GITHUB_REF#refs/heads/}" >> "$GITHUB_OUTPUT" - name: Checkout repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: 'eu-web-${{ steps.setup.outputs.branch }}' fetch-depth: 0 diff --git a/.github/workflows/build-browser.yml b/.github/workflows/build-browser.yml index 3990a8bef9..ab932c561b 100644 --- a/.github/workflows/build-browser.yml +++ b/.github/workflows/build-browser.yml @@ -55,7 +55,7 @@ jobs: has_secrets: ${{ steps.check-secrets.outputs.has_secrets }} steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false @@ -94,7 +94,7 @@ jobs: working-directory: apps/browser steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false @@ -146,7 +146,7 @@ jobs: _NODE_VERSION: ${{ needs.setup.outputs.node_version }} steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false @@ -254,7 +254,7 @@ jobs: artifact_name: "dist-opera-MV3" steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false @@ -386,7 +386,7 @@ jobs: _NODE_VERSION: ${{ needs.setup.outputs.node_version }} steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false @@ -542,7 +542,7 @@ jobs: - build-safari steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false diff --git a/.github/workflows/build-cli.yml b/.github/workflows/build-cli.yml index babd00a323..964cbc834c 100644 --- a/.github/workflows/build-cli.yml +++ b/.github/workflows/build-cli.yml @@ -59,7 +59,7 @@ jobs: has_secrets: ${{ steps.check-secrets.outputs.has_secrets }} steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false @@ -114,7 +114,7 @@ jobs: steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false @@ -311,7 +311,7 @@ jobs: _WIN_PKG_VERSION: 3.5 steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false @@ -520,7 +520,7 @@ jobs: _PACKAGE_VERSION: ${{ needs.setup.outputs.package_version }} steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false diff --git a/.github/workflows/build-desktop.yml b/.github/workflows/build-desktop.yml index aeab2d791f..9492bb9539 100644 --- a/.github/workflows/build-desktop.yml +++ b/.github/workflows/build-desktop.yml @@ -55,7 +55,7 @@ jobs: runs-on: ubuntu-22.04 steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false @@ -88,7 +88,7 @@ jobs: working-directory: apps/desktop steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: true @@ -173,7 +173,7 @@ jobs: working-directory: apps/desktop steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false @@ -256,6 +256,13 @@ jobs: - name: Build application run: npm run dist:lin + - name: Upload tar.gz artifact + uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0 + with: + name: bitwarden_${{ env._PACKAGE_VERSION }}_x64.tar.gz + path: apps/desktop/dist/bitwarden_desktop_x64.tar.gz + if-no-files-found: error + - name: Upload .deb artifact uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0 with: @@ -322,7 +329,7 @@ jobs: working-directory: apps/desktop steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false @@ -470,7 +477,7 @@ jobs: NODE_OPTIONS: --max_old_space_size=4096 steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false @@ -736,7 +743,7 @@ jobs: NODE_OPTIONS: --max_old_space_size=4096 steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false @@ -979,7 +986,7 @@ jobs: working-directory: apps/desktop steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false @@ -1216,7 +1223,7 @@ jobs: working-directory: apps/desktop steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false @@ -1488,7 +1495,7 @@ jobs: working-directory: apps/desktop steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false @@ -1829,7 +1836,7 @@ jobs: runs-on: ubuntu-22.04 steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false diff --git a/.github/workflows/build-web.yml b/.github/workflows/build-web.yml index caf806af9f..02ab7727c2 100644 --- a/.github/workflows/build-web.yml +++ b/.github/workflows/build-web.yml @@ -64,7 +64,7 @@ jobs: has_secrets: ${{ steps.check-secrets.outputs.has_secrets }} steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false @@ -144,7 +144,7 @@ jobs: _VERSION: ${{ needs.setup.outputs.version }} steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false @@ -174,7 +174,7 @@ jobs: echo "server_ref=$SERVER_REF" >> "$GITHUB_OUTPUT" - name: Check out Server repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: path: server repository: bitwarden/server @@ -367,7 +367,7 @@ jobs: runs-on: ubuntu-24.04 steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} persist-credentials: false diff --git a/.github/workflows/chromatic.yml b/.github/workflows/chromatic.yml index aa0183ac16..677d3dfc1d 100644 --- a/.github/workflows/chromatic.yml +++ b/.github/workflows/chromatic.yml @@ -31,7 +31,7 @@ jobs: steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.head.sha }} fetch-depth: 0 diff --git a/.github/workflows/crowdin-pull.yml b/.github/workflows/crowdin-pull.yml index 311737a2c0..5475c4dd69 100644 --- a/.github/workflows/crowdin-pull.yml +++ b/.github/workflows/crowdin-pull.yml @@ -58,7 +58,7 @@ jobs: permission-pull-requests: write # for generating pull requests - name: Checkout repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: token: ${{ steps.app-token.outputs.token }} persist-credentials: false diff --git a/.github/workflows/lint-crowdin-config.yml b/.github/workflows/lint-crowdin-config.yml index 8d6bf25490..b0efeb5082 100644 --- a/.github/workflows/lint-crowdin-config.yml +++ b/.github/workflows/lint-crowdin-config.yml @@ -22,7 +22,7 @@ jobs: ] steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: fetch-depth: 1 persist-credentials: false diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 6718690539..48d3eca2f4 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -31,7 +31,7 @@ jobs: runs-on: ubuntu-22.04 steps: - name: Checkout repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false @@ -94,7 +94,7 @@ jobs: steps: - name: Checkout repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false diff --git a/.github/workflows/locales-lint.yml b/.github/workflows/locales-lint.yml index da79f9aa21..8335d6aaca 100644 --- a/.github/workflows/locales-lint.yml +++ b/.github/workflows/locales-lint.yml @@ -17,11 +17,11 @@ jobs: runs-on: ubuntu-22.04 steps: - name: Checkout repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false - name: Checkout base branch repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ github.event.pull_request.base.sha }} path: base diff --git a/.github/workflows/nx.yml b/.github/workflows/nx.yml index 43361bc983..0f01aa2789 100644 --- a/.github/workflows/nx.yml +++ b/.github/workflows/nx.yml @@ -12,7 +12,7 @@ jobs: runs-on: ubuntu-22.04 steps: - name: Checkout repository - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: fetch-depth: 0 persist-credentials: false diff --git a/.github/workflows/publish-cli.yml b/.github/workflows/publish-cli.yml index 426947526a..8fcd1fe7c9 100644 --- a/.github/workflows/publish-cli.yml +++ b/.github/workflows/publish-cli.yml @@ -103,7 +103,7 @@ jobs: _PKG_VERSION: ${{ needs.setup.outputs.release_version }} steps: - name: Checkout repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false @@ -151,7 +151,7 @@ jobs: _PKG_VERSION: ${{ needs.setup.outputs.release_version }} steps: - name: Checkout repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false @@ -203,7 +203,7 @@ jobs: _PKG_VERSION: ${{ needs.setup.outputs.release_version }} steps: - name: Checkout repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false diff --git a/.github/workflows/publish-desktop.yml b/.github/workflows/publish-desktop.yml index b17312950e..3d512d4955 100644 --- a/.github/workflows/publish-desktop.yml +++ b/.github/workflows/publish-desktop.yml @@ -204,7 +204,7 @@ jobs: _RELEASE_TAG: ${{ needs.setup.outputs.tag_name }} steps: - name: Checkout Repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false @@ -258,7 +258,7 @@ jobs: _RELEASE_TAG: ${{ needs.setup.outputs.tag_name }} steps: - name: Checkout Repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false @@ -315,7 +315,7 @@ jobs: _RELEASE_TAG: ${{ needs.setup.outputs.tag_name }} steps: - name: Checkout repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false diff --git a/.github/workflows/publish-web.yml b/.github/workflows/publish-web.yml index 4f41898a9b..be93ee6147 100644 --- a/.github/workflows/publish-web.yml +++ b/.github/workflows/publish-web.yml @@ -28,7 +28,7 @@ jobs: contents: read steps: - name: Checkout repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false @@ -74,7 +74,7 @@ jobs: echo "Github Release Option: $_RELEASE_OPTION" - name: Checkout repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false diff --git a/.github/workflows/release-browser.yml b/.github/workflows/release-browser.yml index 53382539b8..ff5fb669fa 100644 --- a/.github/workflows/release-browser.yml +++ b/.github/workflows/release-browser.yml @@ -28,7 +28,7 @@ jobs: release_version: ${{ steps.version.outputs.version }} steps: - name: Checkout repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false @@ -61,7 +61,7 @@ jobs: contents: read steps: - name: Checkout repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false diff --git a/.github/workflows/release-cli.yml b/.github/workflows/release-cli.yml index 4b94939b9d..08045b8d3c 100644 --- a/.github/workflows/release-cli.yml +++ b/.github/workflows/release-cli.yml @@ -29,7 +29,7 @@ jobs: release_version: ${{ steps.version.outputs.version }} steps: - name: Checkout repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false diff --git a/.github/workflows/release-desktop.yml b/.github/workflows/release-desktop.yml index 10a0f581fa..7f87a1e562 100644 --- a/.github/workflows/release-desktop.yml +++ b/.github/workflows/release-desktop.yml @@ -31,7 +31,7 @@ jobs: release_channel: ${{ steps.release_channel.outputs.channel }} steps: - name: Checkout repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false @@ -110,6 +110,7 @@ jobs: apps/desktop/artifacts/bitwarden_${{ env.PKG_VERSION }}_amd64.snap, apps/desktop/artifacts/bitwarden_${{ env.PKG_VERSION }}_arm64.snap, apps/desktop/artifacts/bitwarden_${{ env.PKG_VERSION }}_arm64.tar.gz, + apps/desktop/artifacts/bitwarden_${{ env.PKG_VERSION }}_x64.tar.gz, apps/desktop/artifacts/Bitwarden-${{ env.PKG_VERSION }}-x86_64.AppImage, apps/desktop/artifacts/Bitwarden-Portable-${{ env.PKG_VERSION }}.exe, apps/desktop/artifacts/Bitwarden-Installer-${{ env.PKG_VERSION }}.exe, diff --git a/.github/workflows/release-web.yml b/.github/workflows/release-web.yml index 9203769bc7..fc0ac34023 100644 --- a/.github/workflows/release-web.yml +++ b/.github/workflows/release-web.yml @@ -25,7 +25,7 @@ jobs: tag_version: ${{ steps.version.outputs.tag }} steps: - name: Checkout repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false diff --git a/.github/workflows/repository-management.yml b/.github/workflows/repository-management.yml index 2a58e2fa82..faf119cce2 100644 --- a/.github/workflows/repository-management.yml +++ b/.github/workflows/repository-management.yml @@ -104,7 +104,7 @@ jobs: private-key: ${{ steps.get-kv-secrets.outputs.BW-GHAPP-KEY }} - name: Check out branch - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: main token: ${{ steps.app-token.outputs.token }} @@ -469,7 +469,7 @@ jobs: private-key: ${{ steps.get-kv-secrets.outputs.BW-GHAPP-KEY }} - name: Check out target ref - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: ${{ inputs.target_ref }} token: ${{ steps.app-token.outputs.token }} diff --git a/.github/workflows/sdk-breaking-change-check.yml b/.github/workflows/sdk-breaking-change-check.yml index 1b9653417f..14547b3942 100644 --- a/.github/workflows/sdk-breaking-change-check.yml +++ b/.github/workflows/sdk-breaking-change-check.yml @@ -64,7 +64,7 @@ jobs: uses: bitwarden/gh-actions/azure-logout@main - name: Check out clients repository - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false diff --git a/.github/workflows/test-browser-interactions.yml b/.github/workflows/test-browser-interactions.yml index bc50a62317..dfc0f28b9c 100644 --- a/.github/workflows/test-browser-interactions.yml +++ b/.github/workflows/test-browser-interactions.yml @@ -18,7 +18,7 @@ jobs: id-token: write steps: - name: Checkout code - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: fetch-depth: 0 persist-credentials: false diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index f471826355..f53bfc39d3 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -24,7 +24,7 @@ jobs: steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false @@ -103,7 +103,7 @@ jobs: sudo apt-get install -y gnome-keyring dbus-x11 - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false @@ -137,7 +137,7 @@ jobs: runs-on: macos-14 steps: - name: Checkout - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false @@ -173,7 +173,7 @@ jobs: - rust-coverage steps: - name: Check out repo - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: persist-credentials: false diff --git a/.github/workflows/version-auto-bump.yml b/.github/workflows/version-auto-bump.yml index d807dd046d..65f004149d 100644 --- a/.github/workflows/version-auto-bump.yml +++ b/.github/workflows/version-auto-bump.yml @@ -39,7 +39,7 @@ jobs: permission-contents: write # for committing and pushing to the current branch - name: Check out target ref - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 with: ref: main token: ${{ steps.app-token.outputs.token }} diff --git a/apps/browser/package.json b/apps/browser/package.json index a6a88b53db..ff279dd64c 100644 --- a/apps/browser/package.json +++ b/apps/browser/package.json @@ -1,6 +1,6 @@ { "name": "@bitwarden/browser", - "version": "2025.11.1", + "version": "2025.11.2", "scripts": { "build": "npm run build:chrome", "build:bit": "npm run build:bit:chrome", diff --git a/apps/browser/src/_locales/ar/messages.json b/apps/browser/src/_locales/ar/messages.json index 505a840423..03d5eb0a9f 100644 --- a/apps/browser/src/_locales/ar/messages.json +++ b/apps/browser/src/_locales/ar/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "تعديل" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "سنة الإنتهاء" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "تاريخ الانتهاء" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/az/messages.json b/apps/browser/src/_locales/az/messages.json index 086b66380b..7dbd1ba3e7 100644 --- a/apps/browser/src/_locales/az/messages.json +++ b/apps/browser/src/_locales/az/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Arxivlənmiş elementlər ümumi axtarış nəticələrindən və avto-doldurma təkliflərindən xaric ediləcək. Bu elementi arxivləmək istədiyinizə əminsiniz?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Düzəliş et" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "Hamısına bax" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "Daha azına bax" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Son istifadə ili" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Bitmə vaxtı" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Ödənişsiz təşkilatlar qoşmaları istifadə edə bilməz" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "\"Premium\"a yüksəlt" }, - "upgradeCompleteSecurity": { - "message": "Tam təhlükəsizlik üçün yüksəldin" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium, güvəndə qalmağınız, səmərəli çalışmağınız və nəzarətə sahib olmağınız üçün daha çox alət verir." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Premium-u kəşf et" diff --git a/apps/browser/src/_locales/be/messages.json b/apps/browser/src/_locales/be/messages.json index 16a6d73996..89651f0038 100644 --- a/apps/browser/src/_locales/be/messages.json +++ b/apps/browser/src/_locales/be/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Рэдагаваць" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Год завяршэння" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Тэрмін дзеяння" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/bg/messages.json b/apps/browser/src/_locales/bg/messages.json index 3dba65d6aa..b40f4b91cb 100644 --- a/apps/browser/src/_locales/bg/messages.json +++ b/apps/browser/src/_locales/bg/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Архивираните елементи са изключени от общите резултати при търсене и от предложенията за автоматично попълване. Наистина ли искате да архивирате този елемент?" }, + "upgradeToUseArchive": { + "message": "За да се възползвате от архивирането, трябва да ползвате платен абонамент." + }, "edit": { "message": "Редактиране" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "Показване на всички" }, + "showAll": { + "message": "Показване на всички" + }, "viewLess": { "message": "Преглед на по-малко" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Година на изтичане" }, + "monthly": { + "message": "месец" + }, "expiration": { "message": "Изтичане" }, @@ -2437,7 +2446,7 @@ } }, "topLayerHijackWarning": { - "message": "This page is interfering with the Bitwarden experience. The Bitwarden inline menu has been temporarily disabled as a safety measure." + "message": "Тази страница пречи на работата на Битуорден. Вмъкнатото меню на Битуорден е временно изключено, като мярка за сигурност." }, "setMasterPassword": { "message": "Задаване на главна парола" @@ -4902,6 +4911,9 @@ "premium": { "message": "Премиум" }, + "unlockFeaturesWithPremium": { + "message": "Отключете докладите, аварийния достъп и още функционалности свързани със сигурността, с платения план." + }, "freeOrgsCannotUseAttachments": { "message": "Безплатните организации не могат да използват прикачени файлове" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Надградете до Платения план" }, - "upgradeCompleteSecurity": { - "message": "Надградете, за да се възползвате от пълна защита" + "unlockAdvancedSecurity": { + "message": "Отключване на разширените функционалности по сигурността" }, - "premiumGivesMoreTools": { - "message": "Платеният план предоставя повече инструменти за защита, ефективна работа и контрол." + "unlockAdvancedSecurityDesc": { + "message": "Платеният абонамент предоставя повече инструменти за защита и управление" }, "explorePremium": { "message": "Разгледайте платения план" diff --git a/apps/browser/src/_locales/bn/messages.json b/apps/browser/src/_locales/bn/messages.json index d2519cb13e..4f8e705430 100644 --- a/apps/browser/src/_locales/bn/messages.json +++ b/apps/browser/src/_locales/bn/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "সম্পাদনা" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "মেয়াদোত্তীর্ণ বছর" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "মেয়াদোত্তীর্ণতা" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/bs/messages.json b/apps/browser/src/_locales/bs/messages.json index 917180579f..9d5631c47e 100644 --- a/apps/browser/src/_locales/bs/messages.json +++ b/apps/browser/src/_locales/bs/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Edit" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Expiration year" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Expiration" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/ca/messages.json b/apps/browser/src/_locales/ca/messages.json index a9ebdf139d..255263a6da 100644 --- a/apps/browser/src/_locales/ca/messages.json +++ b/apps/browser/src/_locales/ca/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Edita" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Any de venciment" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Caducitat" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/cs/messages.json b/apps/browser/src/_locales/cs/messages.json index ca5d4b09f2..eff2c6c0ea 100644 --- a/apps/browser/src/_locales/cs/messages.json +++ b/apps/browser/src/_locales/cs/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archivované položky jsou vyloučeny z obecných výsledků vyhledávání a z návrhů automatického vyplňování. Jste si jisti, že chcete tuto položku archivovat?" }, + "upgradeToUseArchive": { + "message": "Pro použití funkce Archiv je potřebné prémiové členství." + }, "edit": { "message": "Upravit" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "Zobrazit vše" }, + "showAll": { + "message": "Zobrazit vše" + }, "viewLess": { "message": "Zobrazit méně" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Rok expirace" }, + "monthly": { + "message": "měsíčně" + }, "expiration": { "message": "Expirace" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Odemkněte hlášení, nouzový přístup a další bezpečnostní funkce s předplatným Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Volné organizace nemohou používat přílohy" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Aktualizovat na Premium" }, - "upgradeCompleteSecurity": { - "message": "Aktualizujte pro úplné zabezpečení" + "unlockAdvancedSecurity": { + "message": "Odemknout pokročilé bezpečnostní funkce" }, - "premiumGivesMoreTools": { - "message": "Verze Premium Vám poskytne více nástrojů k zabezpečení, efektivní práci a udržení kontroly." + "unlockAdvancedSecurityDesc": { + "message": "Prémiové předplatné Vám dává více nástrojů k bezpečí a kontrole" }, "explorePremium": { "message": "Objevit Premium" diff --git a/apps/browser/src/_locales/cy/messages.json b/apps/browser/src/_locales/cy/messages.json index 1f83ff72f6..99fcdffcc9 100644 --- a/apps/browser/src/_locales/cy/messages.json +++ b/apps/browser/src/_locales/cy/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Golygu" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Blwyddyn dod i ben" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Dod i ben" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/da/messages.json b/apps/browser/src/_locales/da/messages.json index 96aa81ce87..865e6ff7dd 100644 --- a/apps/browser/src/_locales/da/messages.json +++ b/apps/browser/src/_locales/da/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Redigér" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Udløbsår" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Udløb" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Gratis organisationer kan ikke bruge vedhæftninger" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/de/messages.json b/apps/browser/src/_locales/de/messages.json index b32c9a68c0..86f49bb875 100644 --- a/apps/browser/src/_locales/de/messages.json +++ b/apps/browser/src/_locales/de/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archivierte Einträge werden von allgemeinen Suchergebnissen sowie Vorschlägen zum automatischen Ausfüllen ausgeschlossen. Bist du sicher, dass du diesen Eintrag archivieren möchtest?" }, + "upgradeToUseArchive": { + "message": "Für die Nutzung des Archivs ist eine Premium-Mitgliedschaft erforderlich." + }, "edit": { "message": "Bearbeiten" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "Alles anzeigen" }, + "showAll": { + "message": "Alles anzeigen" + }, "viewLess": { "message": "Weniger anzeigen" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Ablaufjahr" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Gültig bis" }, @@ -2437,7 +2446,7 @@ } }, "topLayerHijackWarning": { - "message": "This page is interfering with the Bitwarden experience. The Bitwarden inline menu has been temporarily disabled as a safety measure." + "message": "Diese Seite beeinträchtigt die Nutzung von Bitwarden. Das Bitwarden Inline-Menü wurde aus Sicherheitsgründen vorübergehend deaktiviert." }, "setMasterPassword": { "message": "Master-Passwort festlegen" @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Schalte mit Premium Berichte, Notfallzugriff und weitere Sicherheitsfunktionen frei." + }, "freeOrgsCannotUseAttachments": { "message": "Kostenlose Organisationen können Anhänge nicht verwenden" }, @@ -5812,14 +5824,14 @@ "upgradeToPremium": { "message": "Upgrade auf Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade für umfassende Sicherheit" + "unlockAdvancedSecurity": { + "message": "Erweiterte Sicherheitsfunktionen freischalten" }, - "premiumGivesMoreTools": { - "message": "Premium gibt dir mehr Werkzeuge, um sicher zu bleiben, effizient zu arbeiten und die Kontrolle zu behalten." + "unlockAdvancedSecurityDesc": { + "message": "Mit einem Premium-Abonnement erhältst du mehr Werkzeuge für mehr Sicherheit und Kontrolle" }, "explorePremium": { - "message": "Premium erkunden" + "message": "Premium entdecken" }, "loadingVault": { "message": "Tresor wird geladen" diff --git a/apps/browser/src/_locales/el/messages.json b/apps/browser/src/_locales/el/messages.json index f4c3c0d53a..476a6165a8 100644 --- a/apps/browser/src/_locales/el/messages.json +++ b/apps/browser/src/_locales/el/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Επεξεργασία" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Έτος λήξης" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Λήξη" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Οι δωρεάν οργανισμοί δεν μπορούν να χρησιμοποιήσουν συνημμένα" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/en/messages.json b/apps/browser/src/_locales/en/messages.json index fe979e129f..2114949948 100644 --- a/apps/browser/src/_locales/en/messages.json +++ b/apps/browser/src/_locales/en/messages.json @@ -1873,6 +1873,9 @@ "expirationYear": { "message": "Expiration year" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Expiration" }, @@ -5821,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/en_GB/messages.json b/apps/browser/src/_locales/en_GB/messages.json index 96c3323fae..103d45f068 100644 --- a/apps/browser/src/_locales/en_GB/messages.json +++ b/apps/browser/src/_locales/en_GB/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Edit" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Expiration year" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Expiration" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organisations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/en_IN/messages.json b/apps/browser/src/_locales/en_IN/messages.json index b9f777148e..2713381986 100644 --- a/apps/browser/src/_locales/en_IN/messages.json +++ b/apps/browser/src/_locales/en_IN/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Edit" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Expiration year" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Expiration" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organisations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/es/messages.json b/apps/browser/src/_locales/es/messages.json index 92dbe15fad..e19bd11ba2 100644 --- a/apps/browser/src/_locales/es/messages.json +++ b/apps/browser/src/_locales/es/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Editar" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Año de expiración" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Expiración" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Las organizaciones gratis no pueden usar archivos adjuntos" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/et/messages.json b/apps/browser/src/_locales/et/messages.json index bb029bf777..7a9737f71f 100644 --- a/apps/browser/src/_locales/et/messages.json +++ b/apps/browser/src/_locales/et/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Muuda" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Aegumise aasta" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Aegumine" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/eu/messages.json b/apps/browser/src/_locales/eu/messages.json index 06a4f8ea48..b61213da98 100644 --- a/apps/browser/src/_locales/eu/messages.json +++ b/apps/browser/src/_locales/eu/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Editatu" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Iraungitze urtea" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Iraungitze data" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/fa/messages.json b/apps/browser/src/_locales/fa/messages.json index 33f4a02277..550de006cf 100644 --- a/apps/browser/src/_locales/fa/messages.json +++ b/apps/browser/src/_locales/fa/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "ویرایش" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "سال انقضاء" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "انقضاء" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "پرمیوم" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "سازمان‌های رایگان نمی‌توانند از پرونده‌های پیوست استفاده کنند" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/fi/messages.json b/apps/browser/src/_locales/fi/messages.json index 9953782f50..bdf2ebd641 100644 --- a/apps/browser/src/_locales/fi/messages.json +++ b/apps/browser/src/_locales/fi/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Muokkaa" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "Näytä kaikki" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Erääntymisvuosi" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Voimassaolo päättyy" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Ilmaiset organisaatiot eivät voi käyttää liitteitä" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/fil/messages.json b/apps/browser/src/_locales/fil/messages.json index 687863550a..31284265b2 100644 --- a/apps/browser/src/_locales/fil/messages.json +++ b/apps/browser/src/_locales/fil/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "I-edit" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Taon ng Pag-expire" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Pag-expire" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/fr/messages.json b/apps/browser/src/_locales/fr/messages.json index 87c1a20a38..dadcd0c041 100644 --- a/apps/browser/src/_locales/fr/messages.json +++ b/apps/browser/src/_locales/fr/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Les éléments archivés sont exclus des résultats de recherche généraux et des suggestions de remplissage automatique. Êtes-vous sûr de vouloir archiver cet élément ?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Modifier" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "Tout afficher" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "Afficher moins" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Année d'expiration" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Expiration" }, @@ -2437,7 +2446,7 @@ } }, "topLayerHijackWarning": { - "message": "This page is interfering with the Bitwarden experience. The Bitwarden inline menu has been temporarily disabled as a safety measure." + "message": "Cette page interfère avec l'expérience Bitwarden. Le menu en ligne de Bitwarden a été temporairement désactivé en tant que mesure de sécurité." }, "setMasterPassword": { "message": "Définir le mot de passe principal" @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Déverrouillez la journalisation, l'accès d'urgence et plus de fonctionnalités de sécurité avec Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Les organisations gratuites ne peuvent pas utiliser de pièces jointes" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Mettre à niveau vers Premium" }, - "upgradeCompleteSecurity": { - "message": "Mettre à niveau pour une sécurité complète" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium vous donne plus d'outils pour rester en sécurité, travailler efficacement et garder le contrôle." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explorer Premium" diff --git a/apps/browser/src/_locales/gl/messages.json b/apps/browser/src/_locales/gl/messages.json index 9b35af1aad..bd657b9d4b 100644 --- a/apps/browser/src/_locales/gl/messages.json +++ b/apps/browser/src/_locales/gl/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Editar" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Ano de vencemento" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Vencemento" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Prémium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "As organizacións gratuitas non poden empregar anexos" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/he/messages.json b/apps/browser/src/_locales/he/messages.json index 7d1700cbbd..2e9243206b 100644 --- a/apps/browser/src/_locales/he/messages.json +++ b/apps/browser/src/_locales/he/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "פריטים בארכיון מוחרגים מתוצאות חיפוש כללי והצעות למילוי אוטומטי. האם אתה בטוח שברצונך להעביר פריט זה לארכיון?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "ערוך" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "הצג הכל" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "הצג פחות" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "שנת תפוגה" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "תוקף" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "פרימיום" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "ארגונים חינמיים לא יכולים להשתמש בצרופות" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "שדרג לפרימיום" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/hi/messages.json b/apps/browser/src/_locales/hi/messages.json index 0af38bf696..58db7ac8ad 100644 --- a/apps/browser/src/_locales/hi/messages.json +++ b/apps/browser/src/_locales/hi/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "संपादन करें" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Expiration Year" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "समय सीमा समाप्ति" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/hr/messages.json b/apps/browser/src/_locales/hr/messages.json index 9bb5ca0884..8a5a09aec9 100644 --- a/apps/browser/src/_locales/hr/messages.json +++ b/apps/browser/src/_locales/hr/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Arhivirane stavke biti će izuzete iz rezultata općih pretraga i preporuka auto-ispune. Sigurno želiš arhivirati?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Uredi" }, @@ -594,8 +597,11 @@ "viewAll": { "message": "Vidi sve" }, + "showAll": { + "message": "Show all" + }, "viewLess": { - "message": "View less" + "message": "Vidi manje" }, "viewLogin": { "message": "Prikaži prijavu" @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Godina isteka" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Istek" }, @@ -2437,7 +2446,7 @@ } }, "topLayerHijackWarning": { - "message": "This page is interfering with the Bitwarden experience. The Bitwarden inline menu has been temporarily disabled as a safety measure." + "message": "Ova stranica ometa Bitwarden iskustvo. Kao sigurnosna mjera, Bitwarden inline izbornik je privremeno onemogućen." }, "setMasterPassword": { "message": "Postavi glavnu lozinku" @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Besplatne organizacije ne mogu koristiti privitke" }, @@ -5812,14 +5824,14 @@ "upgradeToPremium": { "message": " Nadogradi na Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { - "message": "Explore Premium" + "message": "Provjeri Premium" }, "loadingVault": { "message": "Učitavanje trezora" diff --git a/apps/browser/src/_locales/hu/messages.json b/apps/browser/src/_locales/hu/messages.json index 9b6a5d756d..bacda584ba 100644 --- a/apps/browser/src/_locales/hu/messages.json +++ b/apps/browser/src/_locales/hu/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Az archivált elemek ki vannak zárva az általános keresési eredményekből és az automatikus kitöltési javaslatokból. Biztosan archiválni szeretnénk ezt az elemet?" }, + "upgradeToUseArchive": { + "message": "Az Archívum használatához prémium tagság szükséges." + }, "edit": { "message": "Szerkesztés" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "Összes megtekintése" }, + "showAll": { + "message": "Összes megjelenítése" + }, "viewLess": { "message": "kevesebb megjelenítése" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Lejárati év" }, + "monthly": { + "message": "hónap" + }, "expiration": { "message": "Lejárat" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Prémium" }, + "unlockFeaturesWithPremium": { + "message": "A Prémium segítségével feloldhatjuk a jelentés készítést, a vészhelyzeti hozzáférést és a további biztonsági funkciókat." + }, "freeOrgsCannotUseAttachments": { "message": "Az ingyenes szervezetek nem használhatnak mellékleteket." }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Áttérés Prémium csomagra" }, - "upgradeCompleteSecurity": { - "message": "Áttérés a teljes biztonságért" + "unlockAdvancedSecurity": { + "message": "Fejlett biztonsági funkciók feloldása" }, - "premiumGivesMoreTools": { - "message": "A Premium több eszközt ad a biztonság megőrzéséhez, a hatékony munkavégzéshez és az irányítás megőrzéséhez." + "unlockAdvancedSecurityDesc": { + "message": "A prémium előfizetés több eszközt biztosít a biztonság és az irányítás megőrzéséhez." }, "explorePremium": { "message": "Premium felfedezése" diff --git a/apps/browser/src/_locales/id/messages.json b/apps/browser/src/_locales/id/messages.json index 85fdfbf9af..88147f804d 100644 --- a/apps/browser/src/_locales/id/messages.json +++ b/apps/browser/src/_locales/id/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Edit" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Tahun Kedaluwarsa" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Masa Berlaku" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Organisasi gratis tidak dapat menggunakan lampiran" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/it/messages.json b/apps/browser/src/_locales/it/messages.json index a76bb05d15..d4d032737b 100644 --- a/apps/browser/src/_locales/it/messages.json +++ b/apps/browser/src/_locales/it/messages.json @@ -32,7 +32,7 @@ "message": "Usa il Single Sign-On" }, "yourOrganizationRequiresSingleSignOn": { - "message": "Your organization requires single sign-on." + "message": "La tua organizzazione richiede un accesso Single Sign-On (SSO)." }, "welcomeBack": { "message": "Bentornato/a" @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Gli elementi archiviati sono esclusi dai risultati di ricerca e suggerimenti di autoriempimento. Vuoi davvero archiviare questo elemento?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Modifica" }, @@ -592,10 +595,13 @@ "message": "Visualizza" }, "viewAll": { - "message": "View all" + "message": "Mostra tutto" + }, + "showAll": { + "message": "Show all" }, "viewLess": { - "message": "View less" + "message": "Vedi meno" }, "viewLogin": { "message": "Visualizza login" @@ -800,10 +806,10 @@ "message": "Al blocco del computer" }, "onIdle": { - "message": "On system idle" + "message": "Quando il sistema è inattivo" }, "onSleep": { - "message": "On system sleep" + "message": "Quando il sistema è sospeso" }, "onRestart": { "message": "Al riavvio del browser" @@ -1044,10 +1050,10 @@ "message": "Elemento salvato" }, "savedWebsite": { - "message": "Saved website" + "message": "Sito Web salvato" }, "savedWebsites": { - "message": "Saved websites ( $COUNT$ )", + "message": "Siti Web salvati ( $COUNT$)", "placeholders": { "count": { "content": "$1", @@ -1645,7 +1651,7 @@ "message": "Devi aggiungere lo URL del server di base o almeno un ambiente personalizzato." }, "selfHostedEnvMustUseHttps": { - "message": "URLs must use HTTPS." + "message": "Gli indirizzi devono usare il protocollo HTTPS." }, "customEnvironment": { "message": "Ambiente personalizzato" @@ -1701,28 +1707,28 @@ "message": "Disattiva il riempimento automatico" }, "confirmAutofill": { - "message": "Confirm autofill" + "message": "Conferma il riempimento automatico" }, "confirmAutofillDesc": { - "message": "This site doesn't match your saved login details. Before you fill in your login credentials, make sure it's a trusted site." + "message": "Questo sito non corrisponde ai tuoi dati di accesso salvati. Prima di compilare le credenziali di accesso, assicurati che si tratti di un sito affidabile." }, "showInlineMenuLabel": { "message": "Mostra suggerimenti di riempimento automatico nei campi del modulo" }, "howDoesBitwardenProtectFromPhishing": { - "message": "How does Bitwarden protect your data from phishing?" + "message": "In che modo Bitwarden ti protegge dai pericoli del phising?" }, "currentWebsite": { - "message": "Current website" + "message": "Sito web corrente" }, "autofillAndAddWebsite": { - "message": "Autofill and add this website" + "message": "Compila e aggiungi questo sito" }, "autofillWithoutAdding": { - "message": "Autofill without adding" + "message": "Compila senza salvare" }, "doNotAutofill": { - "message": "Do not autofill" + "message": "Non compilare con il riempimento automatico" }, "showInlineMenuIdentitiesLabel": { "message": "Mostra identità come consigli" @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Anno di scadenza" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Scadenza" }, @@ -2437,7 +2446,7 @@ } }, "topLayerHijackWarning": { - "message": "This page is interfering with the Bitwarden experience. The Bitwarden inline menu has been temporarily disabled as a safety measure." + "message": "Questa pagina sta interferendo con Bitwarden. Il menu in linea di Bitwarden è stato temporaneamente disabilitato come misura di sicurezza." }, "setMasterPassword": { "message": "Imposta password principale" @@ -3289,7 +3298,7 @@ "message": "Errore di decifrazione" }, "errorGettingAutoFillData": { - "message": "Error getting autofill data" + "message": "Errore: impossibile accedere ai dati per il riempimento automatico" }, "couldNotDecryptVaultItemsBelow": { "message": "Bitwarden non può decifrare gli elementi elencati di seguito." @@ -4063,13 +4072,13 @@ "description": "Toast message for informing the user that autofill on page load has been set to the default setting." }, "cannotAutofill": { - "message": "Cannot autofill" + "message": "Impossibile usare il riempimento automatico" }, "cannotAutofillExactMatch": { - "message": "Default matching is set to 'Exact Match'. The current website does not exactly match the saved login details for this item." + "message": "La corrispondenza predefinita è impostata su 'Corrispondenza esatta'. Il sito Web corrente non corrisponde esattamente ai dettagli di accesso salvati per questo elemento." }, "okay": { - "message": "Okay" + "message": "OK" }, "toggleSideNavigation": { "message": "Attiva/Disattiva navigazione laterale" @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Sblocca reportistica, accesso d'emergenza e altre funzionalità di sicurezza con Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Le organizzazioni gratis non possono utilizzare gli allegati" }, @@ -4987,7 +4999,7 @@ } }, "defaultLabelWithValue": { - "message": "Default ( $VALUE$ )", + "message": "Predefinito ($VALUE$)", "description": "A label that indicates the default value for a field with the current default value in parentheses.", "placeholders": { "value": { @@ -5786,58 +5798,58 @@ "message": "Conferma dominio Key Connector" }, "atRiskLoginsSecured": { - "message": "Great job securing your at-risk logins!" + "message": "Ottimo lavoro, i tuoi dati di accesso sono al sicuro!" }, "upgradeNow": { - "message": "Upgrade now" + "message": "Aggiorna ora" }, "builtInAuthenticator": { - "message": "Built-in authenticator" + "message": "App di autenticazione integrata" }, "secureFileStorage": { - "message": "Secure file storage" + "message": "Archiviazione sicura di file" }, "emergencyAccess": { - "message": "Emergency access" + "message": "Accesso di emergenza" }, "breachMonitoring": { - "message": "Breach monitoring" + "message": "Monitoraggio delle violazioni" }, "andMoreFeatures": { - "message": "And more!" + "message": "E molto altro!" }, "planDescPremium": { - "message": "Complete online security" + "message": "Sicurezza online completa" }, "upgradeToPremium": { - "message": "Upgrade to Premium" + "message": "Aggiorna a Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { - "message": "Explore Premium" + "message": "Scopri Premium" }, "loadingVault": { - "message": "Loading vault" + "message": "Caricamento cassaforte" }, "vaultLoaded": { - "message": "Vault loaded" + "message": "Cassaforte caricata" }, "settingDisabledByPolicy": { "message": "Questa impostazione è disabilitata dalle restrizioni della tua organizzazione.", "description": "This hint text is displayed when a user setting is disabled due to an organization policy." }, "zipPostalCodeLabel": { - "message": "ZIP / Postal code" + "message": "CAP" }, "cardNumberLabel": { - "message": "Card number" + "message": "Numero di carta" }, "sessionTimeoutSettingsAction": { - "message": "Timeout action" + "message": "Azione al timeout" } } diff --git a/apps/browser/src/_locales/ja/messages.json b/apps/browser/src/_locales/ja/messages.json index 1294335481..c13b139e13 100644 --- a/apps/browser/src/_locales/ja/messages.json +++ b/apps/browser/src/_locales/ja/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "編集" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "有効期限年" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "有効期限" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "プレミアム" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "無料の組織は添付ファイルを使用できません" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "プレミアムにアップグレード" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/ka/messages.json b/apps/browser/src/_locales/ka/messages.json index 52e9fbc522..a54a0f2c65 100644 --- a/apps/browser/src/_locales/ka/messages.json +++ b/apps/browser/src/_locales/ka/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "ჩასწორება" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Expiration year" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "ვადა" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "პრემიუმი" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/km/messages.json b/apps/browser/src/_locales/km/messages.json index 7c4dbaf85d..f829937ac5 100644 --- a/apps/browser/src/_locales/km/messages.json +++ b/apps/browser/src/_locales/km/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Edit" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Expiration year" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Expiration" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/kn/messages.json b/apps/browser/src/_locales/kn/messages.json index d2ca68a010..bd2be23828 100644 --- a/apps/browser/src/_locales/kn/messages.json +++ b/apps/browser/src/_locales/kn/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "ಎಡಿಟ್" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "ಮುಕ್ತಾಯ ವರ್ಷ" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "ಮುಕ್ತಾಯ" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/ko/messages.json b/apps/browser/src/_locales/ko/messages.json index c583e173d9..1ad08accfc 100644 --- a/apps/browser/src/_locales/ko/messages.json +++ b/apps/browser/src/_locales/ko/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "보관된 항목은 일반 검색 결과와 자동 완성 제안에서 제외됩니다. 이 항목을 보관하시겠습니까?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "편집" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "만료 연도" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "만료" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "프리미엄" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "무료 조직에서는 첨부 파일을 사용할 수 없습니다." }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/lt/messages.json b/apps/browser/src/_locales/lt/messages.json index 45ee71f75d..46ffb24e3d 100644 --- a/apps/browser/src/_locales/lt/messages.json +++ b/apps/browser/src/_locales/lt/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Keisti" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Galiojimo pabaigos metai" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Galiojimo pabaiga" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "„Premium“" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Nemokamos organizacijos negali naudoti priedų" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/lv/messages.json b/apps/browser/src/_locales/lv/messages.json index d7e4b5eea9..754781dc4f 100644 --- a/apps/browser/src/_locales/lv/messages.json +++ b/apps/browser/src/_locales/lv/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Arhivētie vienumi netiek iekļauti vispārējās meklēšanas iznākumos un automātiskās aizpildes ieteikumos. Vai tiešām ahrivēt šo vienumu?" }, + "upgradeToUseArchive": { + "message": "Ir nepieciešama Premium dalība, lai izmantotu arhīvu." + }, "edit": { "message": "Labot" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "Apskatīt visu" }, + "showAll": { + "message": "Rādīt visu" + }, "viewLess": { "message": "Skatīt mazāk" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Derīguma gads" }, + "monthly": { + "message": "mēnesī" + }, "expiration": { "message": "Derīgums" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Iegūsti piekļuvi atskaitēm, ārkārtas piekļuvei un citām drošības iespējām ar Premium!" + }, "freeOrgsCannotUseAttachments": { "message": "Bezmaksas apvienības nevar izmantot pielikumus" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Uzlabot uz Premium" }, - "upgradeCompleteSecurity": { - "message": "Uzlabo pilnīgas drošības iegūšanai" + "unlockAdvancedSecurity": { + "message": "Atslēdz papildu drošības iespējas" }, - "premiumGivesMoreTools": { - "message": "Premium sniedz vairāk rīku drošībai, darba ražīgumam un pārraudzībai." + "unlockAdvancedSecurityDesc": { + "message": "Premium abonements sniedz vairāk rīku drošības uzturēšanai un pārraudzībai" }, "explorePremium": { "message": "Izpētīt Premium" diff --git a/apps/browser/src/_locales/ml/messages.json b/apps/browser/src/_locales/ml/messages.json index 6c022f0043..2f7f8d30e7 100644 --- a/apps/browser/src/_locales/ml/messages.json +++ b/apps/browser/src/_locales/ml/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "തിരുത്തുക" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "കാലാവതി കഴിയുന്ന വർഷം" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "കാലഹരണപ്പെടൽ" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/mr/messages.json b/apps/browser/src/_locales/mr/messages.json index d34d1c8797..70f8fe5393 100644 --- a/apps/browser/src/_locales/mr/messages.json +++ b/apps/browser/src/_locales/mr/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Edit" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Expiration year" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Expiration" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/my/messages.json b/apps/browser/src/_locales/my/messages.json index 7c4dbaf85d..f829937ac5 100644 --- a/apps/browser/src/_locales/my/messages.json +++ b/apps/browser/src/_locales/my/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Edit" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Expiration year" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Expiration" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/nb/messages.json b/apps/browser/src/_locales/nb/messages.json index 11bd78ed56..0eba9c953a 100644 --- a/apps/browser/src/_locales/nb/messages.json +++ b/apps/browser/src/_locales/nb/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Rediger" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Utløpsår" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Utløp" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/ne/messages.json b/apps/browser/src/_locales/ne/messages.json index 7c4dbaf85d..f829937ac5 100644 --- a/apps/browser/src/_locales/ne/messages.json +++ b/apps/browser/src/_locales/ne/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Edit" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Expiration year" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Expiration" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/nl/messages.json b/apps/browser/src/_locales/nl/messages.json index 8817e04b16..601aac16f9 100644 --- a/apps/browser/src/_locales/nl/messages.json +++ b/apps/browser/src/_locales/nl/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Gearchiveerde items worden uitgesloten van algemene zoekresultaten en automatische invulsuggesties. Weet je zeker dat je dit item wilt archiveren?" }, + "upgradeToUseArchive": { + "message": "Je hebt een Premium-abonnement nodig om te kunnen archiveren." + }, "edit": { "message": "Bewerken" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "Alles weergeven" }, + "showAll": { + "message": "Alles weergeven" + }, "viewLess": { "message": "Minder weergeven" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Vervaljaar" }, + "monthly": { + "message": "maand" + }, "expiration": { "message": "Vervaldatum" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Ontgrendel tapporteren, noodtoegang en meer beveiligingsfuncties met Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Gratis organisaties kunnen geen bijlagen gebruiken" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Opwaarderen naar Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade voor volledige beveiliging" + "unlockAdvancedSecurity": { + "message": "Geavanceerde beveiligingsfuncties ontgrendelen" }, - "premiumGivesMoreTools": { - "message": "Premium geeft je meer tools om veilig te blijven, efficiënt te werken en in controle te blijven." + "unlockAdvancedSecurityDesc": { + "message": "Een Premium-abonnement geeft je meer tools om veilig en in controle te blijven" }, "explorePremium": { "message": "Premium verkennen" diff --git a/apps/browser/src/_locales/nn/messages.json b/apps/browser/src/_locales/nn/messages.json index 7c4dbaf85d..f829937ac5 100644 --- a/apps/browser/src/_locales/nn/messages.json +++ b/apps/browser/src/_locales/nn/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Edit" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Expiration year" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Expiration" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/or/messages.json b/apps/browser/src/_locales/or/messages.json index 7c4dbaf85d..f829937ac5 100644 --- a/apps/browser/src/_locales/or/messages.json +++ b/apps/browser/src/_locales/or/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Edit" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Expiration year" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Expiration" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/pl/messages.json b/apps/browser/src/_locales/pl/messages.json index 41f679aba5..9741f94da3 100644 --- a/apps/browser/src/_locales/pl/messages.json +++ b/apps/browser/src/_locales/pl/messages.json @@ -32,7 +32,7 @@ "message": "Użyj logowania jednokrotnego" }, "yourOrganizationRequiresSingleSignOn": { - "message": "Your organization requires single sign-on." + "message": "Twoja organizacja wymaga logowania jednokrotnego." }, "welcomeBack": { "message": "Witaj ponownie" @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Zarchiwizowane elementy są wykluczone z wyników wyszukiwania i sugestii autouzupełniania. Czy na pewno chcesz archiwizować element?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Edytuj" }, @@ -592,10 +595,13 @@ "message": "Pokaż" }, "viewAll": { - "message": "View all" + "message": "Pokaż wszystko" + }, + "showAll": { + "message": "Show all" }, "viewLess": { - "message": "View less" + "message": "Pokaż mniej" }, "viewLogin": { "message": "Pokaż dane logowania" @@ -743,7 +749,7 @@ "message": "Hasło główne jest nieprawidłowe" }, "invalidMasterPasswordConfirmEmailAndHost": { - "message": "Invalid master password. Confirm your email is correct and your account was created on $HOST$.", + "message": "Nieprawidłowe hasło główne. Sprawdź, czy Twój adres e-mail jest poprawny i czy Twoje konto zostało utworzone na $HOST$.", "placeholders": { "host": { "content": "$1", @@ -800,10 +806,10 @@ "message": "Po zablokowaniu urządzenia" }, "onIdle": { - "message": "On system idle" + "message": "Podczas bezczynności systemu" }, "onSleep": { - "message": "On system sleep" + "message": "Podczas uśpienia systemu" }, "onRestart": { "message": "Po uruchomieniu przeglądarki" @@ -1044,10 +1050,10 @@ "message": "Element został zapisany" }, "savedWebsite": { - "message": "Saved website" + "message": "Zapisana witryna" }, "savedWebsites": { - "message": "Saved websites ( $COUNT$ )", + "message": "Zapisane witryny ($COUNT$)", "placeholders": { "count": { "content": "$1", @@ -1573,7 +1579,7 @@ "message": "Odczytywanie klucza dostępu..." }, "passkeyAuthenticationFailed": { - "message": "Passkey authentication failed" + "message": "Uwierzytelnienie za pomocą klucza nie powiodło się" }, "useADifferentLogInMethod": { "message": "Użyj innej metody logowania" @@ -1645,7 +1651,7 @@ "message": "Musisz dodać podstawowy adres URL serwera lub co najmniej jedno niestandardowe środowisko." }, "selfHostedEnvMustUseHttps": { - "message": "URLs must use HTTPS." + "message": "Adresy URL muszą używać protokołu HTTPS." }, "customEnvironment": { "message": "Niestandardowe środowisko" @@ -1701,28 +1707,28 @@ "message": "Wyłącz autouzupełnianie" }, "confirmAutofill": { - "message": "Confirm autofill" + "message": "Potwierdź autouzupełnianie" }, "confirmAutofillDesc": { - "message": "This site doesn't match your saved login details. Before you fill in your login credentials, make sure it's a trusted site." + "message": "Ta witryna nie pasuje do Twoich zapisanych danych logowania. Zanim wpiszesz dane logowania, upewnij się, że jest to zaufana witryna." }, "showInlineMenuLabel": { "message": "Pokaż sugestie autouzupełniania na polach formularza" }, "howDoesBitwardenProtectFromPhishing": { - "message": "How does Bitwarden protect your data from phishing?" + "message": "W jaki sposób Bitwarden chroni Twoje dane przed phishingiem?" }, "currentWebsite": { - "message": "Current website" + "message": "Aktualna witryna" }, "autofillAndAddWebsite": { - "message": "Autofill and add this website" + "message": "Wypełnij automatycznie i dodaj tę witrynę" }, "autofillWithoutAdding": { - "message": "Autofill without adding" + "message": "Automatyczne uzupełnianie bez dodawania" }, "doNotAutofill": { - "message": "Do not autofill" + "message": "Nie wypełniaj automatycznie" }, "showInlineMenuIdentitiesLabel": { "message": "Pokaż tożsamości w sugestiach" @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Rok wygaśnięcia" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Data wygaśnięcia" }, @@ -2437,7 +2446,7 @@ } }, "topLayerHijackWarning": { - "message": "This page is interfering with the Bitwarden experience. The Bitwarden inline menu has been temporarily disabled as a safety measure." + "message": "Ta strona zakłóca działanie Bitwarden. Menu Bitwarden zostało tymczasowo wyłączone ze względów bezpieczeństwa." }, "setMasterPassword": { "message": "Ustaw hasło główne" @@ -3289,7 +3298,7 @@ "message": "Błąd odszyfrowywania" }, "errorGettingAutoFillData": { - "message": "Error getting autofill data" + "message": "Błąd podczas pobierania danych autouzupełniania" }, "couldNotDecryptVaultItemsBelow": { "message": "Bitwarden nie mógł odszyfrować poniższych elementów sejfu." @@ -4063,13 +4072,13 @@ "description": "Toast message for informing the user that autofill on page load has been set to the default setting." }, "cannotAutofill": { - "message": "Cannot autofill" + "message": "Nie można automatycznie wypełnić" }, "cannotAutofillExactMatch": { - "message": "Default matching is set to 'Exact Match'. The current website does not exactly match the saved login details for this item." + "message": "Domyślnie dopasowanie jest ustawione na „Dokładne dopasowanie”. Aktualna strona internetowa nie jest dokładnie taka sama jak zapisane dane logowania dla tego elementu." }, "okay": { - "message": "Okay" + "message": "Ok" }, "toggleSideNavigation": { "message": "Przełącz nawigację boczną" @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Darmowe organizacje nie mogą używać załączników" }, @@ -4987,7 +4999,7 @@ } }, "defaultLabelWithValue": { - "message": "Default ( $VALUE$ )", + "message": "Domyślne ($VALUE$)", "description": "A label that indicates the default value for a field with the current default value in parentheses.", "placeholders": { "value": { @@ -5650,30 +5662,30 @@ "message": "Witaj w sejfie!" }, "phishingPageTitleV2": { - "message": "Phishing attempt detected" + "message": "Wykryto próbę phishingu" }, "phishingPageSummary": { - "message": "The site you are attempting to visit is a known malicious site and a security risk." + "message": "Witryna, którą próbujesz odwiedzić, jest znaną złośliwą witryną i zagrożeniem bezpieczeństwa." }, "phishingPageCloseTabV2": { "message": "Zamknij kartę" }, "phishingPageContinueV2": { - "message": "Continue to this site (not recommended)" + "message": "Przejdź do tej witryny (niezalecane)" }, "phishingPageExplanation1": { - "message": "This site was found in ", + "message": "Ta witryna została znaleziona w ", "description": "This is in multiple parts to allow for bold text in the middle of the sentence. A proper name follows this." }, "phishingPageExplanation2": { - "message": ", an open-source list of known phishing sites used for stealing personal and sensitive information.", + "message": ", lista znanych witryn phishingowych, które służą do kradzieży danych osobowych i poufnych.", "description": "This is in multiple parts to allow for bold text in the middle of the sentence. A proper name precedes this." }, "phishingPageLearnMore": { - "message": "Learn more about phishing detection" + "message": "Dowiedz się więcej o wykrywaniu phishingu" }, "protectedBy": { - "message": "Protected by $PRODUCT$", + "message": "Chronione przez $PRODUCT$", "placeholders": { "product": { "content": "$1", @@ -5786,49 +5798,49 @@ "message": "Potwierdź domenę Key Connector" }, "atRiskLoginsSecured": { - "message": "Great job securing your at-risk logins!" + "message": "Świetna robota z zabezpieczeniem Twoich zagrożonych danych logowania!" }, "upgradeNow": { - "message": "Upgrade now" + "message": "Zaktualizuj teraz" }, "builtInAuthenticator": { - "message": "Built-in authenticator" + "message": "Wbudowany uwierzytelniacz" }, "secureFileStorage": { - "message": "Secure file storage" + "message": "Bezpieczne przechowywanie plików" }, "emergencyAccess": { - "message": "Emergency access" + "message": "Dostęp awaryjny" }, "breachMonitoring": { - "message": "Breach monitoring" + "message": "Monitorowanie naruszeń" }, "andMoreFeatures": { - "message": "And more!" + "message": "I jeszcze więcej!" }, "planDescPremium": { - "message": "Complete online security" + "message": "Pełne bezpieczeństwo w Internecie" }, "upgradeToPremium": { - "message": "Upgrade to Premium" + "message": "Ulepsz do Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { - "message": "Explore Premium" + "message": "Poznaj Premium" }, "loadingVault": { - "message": "Loading vault" + "message": "Ładowanie sejfu" }, "vaultLoaded": { - "message": "Vault loaded" + "message": "Sejf załadowany" }, "settingDisabledByPolicy": { - "message": "This setting is disabled by your organization's policy.", + "message": "To ustawienie jest wyłączone zgodnie z zasadami polityki Twojej organizacji.", "description": "This hint text is displayed when a user setting is disabled due to an organization policy." }, "zipPostalCodeLabel": { @@ -5838,6 +5850,6 @@ "message": "Numer karty" }, "sessionTimeoutSettingsAction": { - "message": "Timeout action" + "message": "Akcja przekroczenia limitu czasu" } } diff --git a/apps/browser/src/_locales/pt_BR/messages.json b/apps/browser/src/_locales/pt_BR/messages.json index 9e5d233174..a7675274ea 100644 --- a/apps/browser/src/_locales/pt_BR/messages.json +++ b/apps/browser/src/_locales/pt_BR/messages.json @@ -10,11 +10,11 @@ "description": "Extension name, MUST be less than 40 characters (Safari restriction)" }, "extDesc": { - "message": "Em qual lugar for, o Bitwarden protege suas senhas, chaves de acesso, e informações confidenciais", + "message": "Onde quer que você esteja, o Bitwarden protege suas senhas, chaves de acesso e informações sensíveis", "description": "Extension description, MUST be less than 112 characters (Safari restriction)" }, "loginOrCreateNewAccount": { - "message": "Inicie a sessão ou crie uma nova conta para acessar seu cofre seguro." + "message": "Conecte-se ou crie uma conta para acessar o seu cofre seguro." }, "inviteAccepted": { "message": "Convite aceito" @@ -26,7 +26,7 @@ "message": "Novo no Bitwarden?" }, "logInWithPasskey": { - "message": "Entrar com chave de acesso" + "message": "Conectar-se com chave de acesso" }, "useSingleSignOn": { "message": "Usar autenticação única" @@ -38,10 +38,10 @@ "message": "Boas-vindas de volta" }, "setAStrongPassword": { - "message": "Defina uma senha forte" + "message": "Configure uma senha forte" }, "finishCreatingYourAccountBySettingAPassword": { - "message": "Termine de criar a sua conta definindo uma senha" + "message": "Termine de criar a sua conta configurando uma senha" }, "enterpriseSingleSignOn": { "message": "Autenticação única empresarial" @@ -65,7 +65,7 @@ "message": "A senha principal é a senha que você usa para acessar o seu cofre. É muito importante que você não esqueça sua senha principal. Não há maneira de recuperar a senha caso você se esqueça." }, "masterPassHintDesc": { - "message": "Uma dica de senha principal pode ajudá-lo(a) a lembrá-lo(a) caso você esqueça." + "message": "Uma dica de senha principal pode ajudá-lo(a) a lembrá-la caso você esqueça." }, "masterPassHintText": { "message": "Se você esquecer sua senha, a dica de senha pode ser enviada ao seu e-mail. $CURRENT$/$MAXIMUM$ caracteres máximos.", @@ -108,7 +108,7 @@ } }, "finishJoiningThisOrganizationBySettingAMasterPassword": { - "message": "Termine de juntar-se à organização definindo uma senha principal." + "message": "Termine de juntar-se à organização configurando uma senha principal." }, "tab": { "message": "Aba" @@ -117,7 +117,7 @@ "message": "Cofre" }, "myVault": { - "message": "Meu Cofre" + "message": "Meu cofre" }, "allVaults": { "message": "Todos os cofres" @@ -129,10 +129,10 @@ "message": "Configurações" }, "currentTab": { - "message": "Aba Atual" + "message": "Aba atual" }, "copyPassword": { - "message": "Copiar Senha" + "message": "Copiar senha" }, "copyPassphrase": { "message": "Copiar frase secreta" @@ -144,7 +144,7 @@ "message": "Copiar URI" }, "copyUsername": { - "message": "Copiar Nome de Usuário" + "message": "Copiar nome de usuário" }, "copyNumber": { "message": "Copiar número" @@ -200,10 +200,10 @@ "description": "This string is used on the vault page to indicate autofilling. Horizontal space is limited in the interface here so try and keep translations as concise as possible." }, "autoFill": { - "message": "Autopreencher" + "message": "Preenchimento automático" }, "autoFillLogin": { - "message": "Preencher login automaticamente" + "message": "Preencher credencial automaticamente" }, "autoFillCard": { "message": "Preencher cartão automaticamente" @@ -212,7 +212,7 @@ "message": "Preencher identidade automaticamente" }, "fillVerificationCode": { - "message": "Preencher o código de verificação" + "message": "Preencher código de verificação" }, "fillVerificationCodeAria": { "message": "Preencher código de verificação", @@ -228,7 +228,7 @@ "message": "Nenhuma credencial correspondente" }, "noCards": { - "message": "Sem cartões" + "message": "Nenhum cartão" }, "noIdentities": { "message": "Nenhuma identidade" @@ -246,7 +246,7 @@ "message": "Desbloqueie seu cofre" }, "loginToVaultMenu": { - "message": "Acesse o seu cofre" + "message": "Conecte-se ao seu cofre" }, "autoFillInfo": { "message": "Não há credenciais disponíveis para preencher automaticamente na aba atual do navegador." @@ -264,13 +264,13 @@ "message": "Solicitar dica" }, "requestPasswordHint": { - "message": "Dica da senha principal" + "message": "Solicitar dica da senha" }, "enterYourAccountEmailAddressAndYourPasswordHintWillBeSentToYou": { "message": "Digite o endereço de e-mail da sua conta e dica da sua senha será enviada para você" }, "getMasterPasswordHint": { - "message": "Obter dica da senha principal" + "message": "Receber dica da senha principal" }, "continue": { "message": "Continuar" @@ -319,14 +319,14 @@ "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." }, "yourAccountsFingerprint": { - "message": "A sua frase biométrica", + "message": "A frase biométrica da sua conta", "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." }, "twoStepLogin": { - "message": "Login em Duas Etapas" + "message": "Autenticação em duas etapas" }, "logOut": { - "message": "Sair" + "message": "Desconectar" }, "aboutBitwarden": { "message": "Sobre o Bitwarden" @@ -338,7 +338,7 @@ "message": "Mais do Bitwarden" }, "continueToBitwardenDotCom": { - "message": "Continuar para bitwarden.com?" + "message": "Continuar em bitwarden.com?" }, "bitwardenForBusiness": { "message": "Bitwarden para Negócios" @@ -362,10 +362,10 @@ "message": "Crie experiências de autenticação seguras, simples, livres de senhas tradicionais, com o Passwordless.dev. Saiba mais no site bitwarden.com." }, "freeBitwardenFamilies": { - "message": "Bitwarden Families grátis" + "message": "Bitwarden Famílias grátis" }, "freeBitwardenFamiliesPageDesc": { - "message": "Você é elegível para o plano Bitwarden Families grátis. Resgate esta oferta hoje no aplicativo web." + "message": "Você é elegível para o plano Bitwarden Famílias grátis. Resgate esta oferta hoje no aplicativo web." }, "version": { "message": "Versão" @@ -377,13 +377,13 @@ "message": "Mover" }, "addFolder": { - "message": "Adicionar Pasta" + "message": "Adicionar pasta" }, "name": { "message": "Nome" }, "editFolder": { - "message": "Editar Pasta" + "message": "Editar pasta" }, "editFolderWithName": { "message": "Editar pasta: $FOLDERNAME$", @@ -413,25 +413,25 @@ "message": "Tem certeza que quer apagar esta pasta para sempre?" }, "deleteFolder": { - "message": "Excluir Pasta" + "message": "Apagar pasta" }, "folders": { "message": "Pastas" }, "noFolders": { - "message": "Não existem pastas para listar." + "message": "Não há pastas para listar." }, "helpFeedback": { - "message": "Ajuda & Feedback" + "message": "Ajuda e retorno" }, "helpCenter": { "message": "Central de ajuda do Bitwarden" }, "communityForums": { - "message": "Explore os fóruns da comunidade do Bitwarden" + "message": "Explorar os fóruns da comunidade do Bitwarden" }, "contactSupport": { - "message": "Contate o suporte do Bitwarden" + "message": "Entrar em contato com o suporte do Bitwarden" }, "sync": { "message": "Sincronizar" @@ -440,7 +440,7 @@ "message": "Sincronizar cofre agora" }, "lastSync": { - "message": "Última Sincronização:" + "message": "Última sincronização:" }, "passGen": { "message": "Gerador de senhas" @@ -462,7 +462,7 @@ "message": "Selecionar" }, "generatePassword": { - "message": "Gerar Senha" + "message": "Gerar senha" }, "generatePassphrase": { "message": "Gerar frase secreta" @@ -480,7 +480,7 @@ "message": "E-mail gerado" }, "regeneratePassword": { - "message": "Gerar nova senha" + "message": "Regerar senha" }, "options": { "message": "Opções" @@ -527,7 +527,7 @@ "message": "Separador de palavras" }, "capitalize": { - "message": "Iniciais em Maiúsculas", + "message": "Iniciais maiúsculas", "description": "Make the first letter of a work uppercase." }, "includeNumber": { @@ -548,10 +548,10 @@ "description": "Indicates that a policy limits the credential generator screen." }, "searchVault": { - "message": "Pesquisar no Cofre" + "message": "Buscar no cofre" }, "resetSearch": { - "message": "Redefinir pesquisa" + "message": "Apagar busca" }, "archiveNoun": { "message": "Arquivo", @@ -571,7 +571,7 @@ "message": "Nenhum item no arquivo" }, "noItemsInArchiveDesc": { - "message": "Os itens arquivados aparecerão aqui e serão excluídos dos resultados de pesquisa gerais e das sugestões de preenchimento automático." + "message": "Os itens arquivados aparecerão aqui e serão excluídos dos resultados gerais de busca e das sugestões de preenchimento automático." }, "itemWasSentToArchive": { "message": "O item foi enviado para o arquivo" @@ -583,7 +583,10 @@ "message": "Arquivar item" }, "archiveItemConfirmDesc": { - "message": "Itens arquivados são excluídos dos resultados da pesquisa geral e das sugestões de preenchimento automático. Tem certeza de que deseja arquivar este item?" + "message": "Itens arquivados são excluídos dos resultados gerais de busca e das sugestões de preenchimento automático. Tem certeza de que deseja arquivar este item?" + }, + "upgradeToUseArchive": { + "message": "Um plano Premium é necessário para usar o arquivamento." }, "edit": { "message": "Editar" @@ -594,6 +597,9 @@ "viewAll": { "message": "Ver tudo" }, + "showAll": { + "message": "Mostrar tudo" + }, "viewLess": { "message": "Ver menos" }, @@ -607,7 +613,7 @@ "message": "Informações do item" }, "username": { - "message": "Nome de Usuário" + "message": "Nome de usuário" }, "password": { "message": "Senha" @@ -616,10 +622,10 @@ "message": "Segredo do autenticador" }, "passphrase": { - "message": "Frase Secreta" + "message": "Frase secreta" }, "favorite": { - "message": "Favorito" + "message": "Favoritar" }, "unfavorite": { "message": "Desfavoritar" @@ -631,13 +637,13 @@ "message": "Item removido dos favoritos" }, "notes": { - "message": "Notas" + "message": "Anotações" }, "privateNote": { "message": "Anotação privada" }, "note": { - "message": "Nota" + "message": "Anotação" }, "editItem": { "message": "Editar item" @@ -697,10 +703,10 @@ "message": "Outras opções" }, "rateExtension": { - "message": "Avaliar a Extensão" + "message": "Avalie a extensão" }, "browserNotSupportClipboard": { - "message": "O seu navegador web não suporta cópia para a área de transferência. Em alternativa, copie manualmente." + "message": "O seu navegador web não suporta copiar para a área de transferência. Em vez disso, copie manualmente." }, "verifyYourIdentity": { "message": "Verifique a sua identidade" @@ -712,7 +718,7 @@ "message": "Continuar acessando" }, "yourVaultIsLocked": { - "message": "Seu cofre está trancado. Verifique sua identidade para continuar." + "message": "Seu cofre está bloqueado. Verifique sua identidade para continuar." }, "yourVaultIsLockedV2": { "message": "Seu cofre está bloqueado" @@ -727,7 +733,7 @@ "message": "Desbloquear" }, "loggedInAsOn": { - "message": "Entrou como $EMAIL$ em $HOSTNAME$.", + "message": "Conectado como $EMAIL$ em $HOSTNAME$.", "placeholders": { "email": { "content": "$1", @@ -758,7 +764,7 @@ "message": "Tempo limite" }, "lockNow": { - "message": "Bloquear Agora" + "message": "Bloquear agora" }, "lockAll": { "message": "Bloquear tudo" @@ -797,16 +803,16 @@ "message": "4 horas" }, "onLocked": { - "message": "Ao bloquear o sistema" + "message": "No bloqueio do sistema" }, "onIdle": { - "message": "Quando o sistema ficar inativo" + "message": "Na inatividade do sistema" }, "onSleep": { - "message": "Quando o sistema hibernar" + "message": "Na hibernação do sistema" }, "onRestart": { - "message": "Ao reiniciar o navegador" + "message": "No reinício do navegador" }, "never": { "message": "Nunca" @@ -839,7 +845,7 @@ "message": "A senha principal é necessária." }, "confirmMasterPasswordRequired": { - "message": "É necessário digitar a senha principal novamente." + "message": "É necessário redigitar a senha principal." }, "masterPasswordMinlength": { "message": "A senha principal deve ter pelo menos $VALUE$ caracteres.", @@ -855,7 +861,7 @@ "message": "A confirmação da senha principal não corresponde." }, "newAccountCreated": { - "message": "A sua nova conta foi criada! Agora você pode iniciar a sessão." + "message": "A sua nova conta foi criada! Agora você pode conectar-se." }, "newAccountCreated2": { "message": "Sua nova conta foi criada!" @@ -864,7 +870,7 @@ "message": "Você foi conectado!" }, "youSuccessfullyLoggedIn": { - "message": "Você entrou na sua conta com sucesso" + "message": "Você conectou-se à sua conta com sucesso" }, "youMayCloseThisWindow": { "message": "Você pode fechar esta janela" @@ -876,13 +882,13 @@ "message": "O código de verificação é necessário." }, "webauthnCancelOrTimeout": { - "message": "A autenticação foi cancelada ou demorou muito. Por favor tente novamente." + "message": "A autenticação foi cancelada ou demorou muito. Tente novamente." }, "invalidVerificationCode": { "message": "Código de verificação inválido" }, "valueCopied": { - "message": " copiado", + "message": "$VALUE$ copiado(a)", "description": "Value has been copied to the clipboard.", "placeholders": { "value": { @@ -919,7 +925,7 @@ "message": "Copiar chave do autenticador (TOTP)" }, "loggedOut": { - "message": "Sessão encerrada" + "message": "Desconectado" }, "loggedOutDesc": { "message": "Você foi desconectado de sua conta." @@ -928,13 +934,13 @@ "message": "A sua sessão expirou." }, "logIn": { - "message": "Entrar" + "message": "Conectar-se" }, "logInToBitwarden": { - "message": "Entre no Bitwarden" + "message": "Conecte-se ao Bitwarden" }, "enterTheCodeSentToYourEmail": { - "message": "Digite o código enviado por e-mail" + "message": "Digite o código enviado ao seu e-mail" }, "enterTheCodeFromYourAuthenticatorApp": { "message": "Digite o código do seu autenticador" @@ -943,19 +949,19 @@ "message": "Pressione sua YubiKey para autenticar-se" }, "duoTwoFactorRequiredPageSubtitle": { - "message": "A autenticação de dois fatores do Duo é necessária para sua conta. Siga os passos abaixo para conseguir entrar." + "message": "A autenticação de duas etapas do Duo é necessária para sua conta. Siga os passos abaixo para conseguir se conectar." }, "followTheStepsBelowToFinishLoggingIn": { - "message": "Siga os passos abaixo para finalizar a autenticação." + "message": "Siga os passos abaixo para terminar de se conectar." }, "followTheStepsBelowToFinishLoggingInWithSecurityKey": { - "message": "Siga os passos abaixo para finalizar a autenticação com a sua chave de segurança." + "message": "Siga os passos abaixo para finalizar de se conectar com a sua chave de segurança." }, "restartRegistration": { "message": "Reiniciar cadastro" }, "expiredLink": { - "message": "Link expirado" + "message": "Link vencido" }, "pleaseRestartRegistrationOrTryLoggingIn": { "message": "Reinicie o cadastro ou tente conectar-se." @@ -964,7 +970,7 @@ "message": "Você pode já ter uma conta" }, "logOutConfirmation": { - "message": "Você tem certeza que deseja sair?" + "message": "Tem certeza que quer se desconectar?" }, "yes": { "message": "Sim" @@ -991,13 +997,13 @@ "message": "Torne sua conta mais segura configurando a autenticação em duas etapas no aplicativo web do Bitwarden." }, "twoStepLoginConfirmationTitle": { - "message": "Continuar para o aplicativo web?" + "message": "Continuar no aplicativo web?" }, "editedFolder": { "message": "Pasta salva" }, "deleteFolderConfirmation": { - "message": "Você tem certeza que deseja excluir esta pasta?" + "message": "Tem certeza que deseja apagar esta pasta?" }, "deletedFolder": { "message": "Pasta apagada" @@ -1009,16 +1015,16 @@ "message": "Assista o nosso tutorial de introdução e saiba como tirar o máximo de proveito da extensão de navegador." }, "syncingComplete": { - "message": "Sincronização completa" + "message": "Sincronização concluída" }, "syncingFailed": { - "message": "A Sincronização falhou" + "message": "A sincronização falhou" }, "passwordCopied": { "message": "Senha copiada" }, "uri": { - "message": "URL" + "message": "URI" }, "uriPosition": { "message": "URI $POSITION$", @@ -1056,7 +1062,7 @@ } }, "deleteItemConfirmation": { - "message": "Você tem certeza que deseja enviar este item para a lixeira?" + "message": "Tem certeza que quer enviar este item para a lixeira?" }, "deletedItem": { "message": "Item enviado para a lixeira" @@ -1068,19 +1074,19 @@ "message": "Você tem certeza que deseja substituir a senha atual?" }, "overwriteUsername": { - "message": "Sobrescrever nome de usuário" + "message": "Substituir nome de usuário" }, "overwriteUsernameConfirmation": { "message": "Tem certeza que deseja substituir o nome de usuário atual?" }, "searchFolder": { - "message": "Pesquisar pasta" + "message": "Buscar na pasta" }, "searchCollection": { - "message": "Pesquisar coleção" + "message": "Buscar no conjunto" }, "searchType": { - "message": "Pesquisar tipo" + "message": "Buscar tipo" }, "noneFolder": { "message": "Sem pasta", @@ -1114,7 +1120,7 @@ "message": "Mostrar identidades na página da aba" }, "showIdentitiesCurrentTabDesc": { - "message": "Liste as identidades na página da aba para facilitar o preenchimento automático." + "message": "Listar as identidades na página da aba para facilitar o preenchimento automático." }, "clickToAutofillOnVault": { "message": "Clique em itens na tela do Cofre para preencher automaticamente" @@ -1248,10 +1254,10 @@ "description": "Detailed error message shown when saving login details fails." }, "changePasswordWarning": { - "message": "Ao alterar sua senha, você precisará entrar com a sua senha nova. Sessões ativas em outros dispositivos serão desconectados dentro de uma hora." + "message": "Ao alterar sua senha, você precisará se conectar com a sua senha nova. Sessões ativas em outros dispositivos serão desconectadas dentro de uma hora." }, "accountRecoveryUpdateMasterPasswordSubtitle": { - "message": "Mude a sua senha principal para completar a recuperação de conta." + "message": "Altere a sua senha principal para concluir a recuperação da conta." }, "enableChangedPasswordNotification": { "message": "Pedir para atualizar credencial existente" @@ -1266,7 +1272,7 @@ "message": "Pedir para salvar e usar chaves de acesso" }, "usePasskeysDesc": { - "message": "Pedir para salvar novas chaves de acesso ou entrar com as mesmas armazenadas no seu cofre. Aplica-se a todas as contas conectadas." + "message": "Pedir para salvar novas chaves de acesso ou se conectar com as mesmas armazenadas no seu cofre. Aplica-se a todas as contas conectadas." }, "notificationChangeDesc": { "message": "Você quer atualizar esta senha no Bitwarden?" @@ -1293,7 +1299,7 @@ "message": "Use um clique secundário para acessar a geração de senha e as credenciais correspondentes para o site. Aplica-se a todas as contas conectadas." }, "defaultUriMatchDetection": { - "message": "Detecção de correspondência de URI padrão", + "message": "Detecção de correspondência padrão de URI", "description": "Default URI match detection for autofill." }, "defaultUriMatchDetectionDesc": { @@ -1320,7 +1326,7 @@ "message": "Exportar de" }, "exportVault": { - "message": "Exportar Cofre" + "message": "Exportar cofre" }, "fileFormat": { "message": "Formato do arquivo" @@ -1338,7 +1344,7 @@ "message": "Use a chave de criptografia da sua conta, derivada do nome de usuário e senha principal da sua conta, para criptografar a exportação e restringir a importação para apenas a conta atual do Bitwarden." }, "passwordProtectedOptionDescription": { - "message": "Defina uma senha para criptografar a exportação e importá-la para qualquer conta do Bitwarden usando a senha para descriptografar." + "message": "Configure uma senha de arquivo para criptografar a exportação e importá-la para qualquer conta do Bitwarden usando a senha para descriptografá-la." }, "exportTypeHeading": { "message": "Tipo da exportação" @@ -1347,21 +1353,21 @@ "message": "Restrita à conta" }, "filePasswordAndConfirmFilePasswordDoNotMatch": { - "message": "\"Senha do arquivo\" e \"Confirmação de senha\" não correspondem." + "message": "\"Senha do arquivo\" e \"Confirmar senha do arquivo\" não correspondem." }, "warning": { - "message": "AVISO", + "message": "ALERTA", "description": "WARNING (should stay in capitalized letters if the language permits)" }, "warningCapitalized": { - "message": "Aviso", + "message": "Atenção", "description": "Warning (should maintain locale-relevant capitalization)" }, "confirmVaultExport": { "message": "Confirmar exportação do cofre" }, "exportWarningDesc": { - "message": "Esta exportação contém os dados do seu cofre em um formato não criptografado. Você não deve armazenar ou enviar o arquivo exportado por canais inseguros (como e-mail). Exclua o arquivo imediatamente após terminar de usá-lo." + "message": "Esta exportação contém os dados do seu cofre em um formato não criptografado. Você não deve armazenar ou enviar o arquivo exportado por canais inseguros (como e-mail). Apague o arquivo imediatamente após terminar de usá-lo." }, "encExportKeyWarningDesc": { "message": "Esta exportação criptografa seus dados usando a chave de criptografia da sua conta. Se você rotacionar a chave de criptografia da sua conta, você deve exportar novamente, já que você não será capaz de descriptografar este arquivo de exportação." @@ -1370,7 +1376,7 @@ "message": "As chaves de criptografia são únicas para cada conta de usuário do Bitwarden, então você não pode importar um arquivo de exportação criptografado para uma conta diferente." }, "exportMasterPassword": { - "message": "Insira a sua senha principal para exportar os dados do seu cofre." + "message": "Digite a sua senha principal para exportar os dados do seu cofre." }, "shared": { "message": "Compartilhado" @@ -1398,7 +1404,7 @@ "message": "Escolha uma organização para a qual deseja mover este item. Mudar para uma organização transfere a propriedade do item para essa organização. Você não será mais o proprietário direto deste item depois que ele for movido." }, "learnMore": { - "message": "Saber mais" + "message": "Saiba mais" }, "authenticatorKeyTotp": { "message": "Chave do autenticador (TOTP)" @@ -1413,10 +1419,10 @@ "message": "Anexos" }, "deleteAttachment": { - "message": "Excluir anexo" + "message": "Apagar anexo" }, "deleteAttachmentConfirmation": { - "message": "Tem a certeza de que deseja excluir este anexo?" + "message": "Tem a certeza de que deseja apagar este anexo?" }, "deletedAttachment": { "message": "Anexo apagado" @@ -1425,7 +1431,7 @@ "message": "Adicionar novo anexo" }, "noAttachments": { - "message": "Sem anexos." + "message": "Nenhum anexo." }, "attachmentSaved": { "message": "Anexo salvo" @@ -1437,7 +1443,7 @@ "message": "Arquivo para compartilhar" }, "selectFile": { - "message": "Selecione um arquivo." + "message": "Selecione um arquivo" }, "maxFileSize": { "message": "O tamanho máximo do arquivo é de 500 MB." @@ -1455,19 +1461,19 @@ "message": "Gerenciar plano" }, "premiumManageAlert": { - "message": "Você pode gerenciar a sua assinatura premium no cofre web em bitwarden.com. Você deseja visitar o site agora?" + "message": "Você pode gerenciar o seu plano no cofre web do bitwarden.com. Você deseja visitar o site agora?" }, "premiumRefresh": { - "message": "Recarregar assinatura" + "message": "Recarregar plano" }, "premiumNotCurrentMember": { "message": "Você não é um membro Premium atualmente." }, "premiumSignUpAndGet": { - "message": "Inscreva-se para uma assinatura Premium e receba:" + "message": "Inscreva-se para um plano Premium e receba:" }, "ppremiumSignUpStorage": { - "message": "1 GB de armazenamento de arquivos encriptados." + "message": "1 GB de armazenamento criptografado para anexo de arquivos." }, "premiumSignUpEmergency": { "message": "Acesso de emergência." @@ -1476,7 +1482,7 @@ "message": "Opções de autenticação em duas etapas proprietárias como YubiKey e Duo." }, "ppremiumSignUpReports": { - "message": "Higiene de senha, saúde da conta, e relatórios sobre violação de dados para manter o seu cofre seguro." + "message": "Relatórios de higiene de senha, saúde da conta, e vazamentos de dados para manter o seu cofre seguro." }, "ppremiumSignUpTotp": { "message": "Gerador de códigos de verificação TOTP (2FA) para credenciais no seu cofre." @@ -1485,7 +1491,7 @@ "message": "Prioridade no suporte ao cliente." }, "ppremiumSignUpFuture": { - "message": "Todas as recursos do Premium no futuro. Mais em breve!" + "message": "Todos as recursos do Premium no futuro. Mais em breve!" }, "premiumPurchase": { "message": "Comprar Premium" @@ -1503,7 +1509,7 @@ "message": "Faça upgrade para o Premium e receba:" }, "premiumPrice": { - "message": "Tudo por apenas %price% /ano!", + "message": "Tudo por apenas $PRICE$ por ano!", "placeholders": { "price": { "content": "$1", @@ -1521,7 +1527,7 @@ } }, "refreshComplete": { - "message": "Atualização completa" + "message": "Recarregamento concluído" }, "enableAutoTotpCopy": { "message": "Copiar TOTP automaticamente" @@ -1533,7 +1539,7 @@ "message": "Pedir biometria ao abrir" }, "authenticationTimeout": { - "message": "Tempo de autenticação esgotado" + "message": "Tempo limite da autenticação atingido" }, "authenticationSessionTimedOut": { "message": "A sessão de autenticação expirou. Reinicie o processo de autenticação." @@ -1558,7 +1564,7 @@ "message": "Usar seu código de recuperação" }, "insertU2f": { - "message": "Insira a sua chave de segurança na porta USB do seu computador. Se ele tiver um botão, toque nele." + "message": "Insira a sua chave de segurança na porta USB do seu computador. Se ela tiver um botão, toque nele." }, "openInNewTab": { "message": "Abrir em uma nova aba" @@ -1576,7 +1582,7 @@ "message": "Falha na autenticação da chave de acesso" }, "useADifferentLogInMethod": { - "message": "Usar um método de entrada diferente" + "message": "Usar um método de autenticação diferente" }, "awaitingSecurityKeyInteraction": { "message": "Aguardando interação com a chave de segurança..." @@ -1585,10 +1591,10 @@ "message": "Autenticação indisponível" }, "noTwoStepProviders": { - "message": "Esta conta tem a verificação de duas etapas ativada, no entanto, nenhum dos provedores de verificação de duas etapas configurados são suportados por este navegador web." + "message": "Esta conta tem a autenticação de duas etapas ativada, no entanto, nenhum dos provedores configurados são suportados por este navegador web." }, "noTwoStepProviders2": { - "message": "Por favor utilize um navegador web suportado (tal como o Chrome) e/ou inclua provedores adicionais que são melhor suportados entre navegadores web (tal como uma aplicativo de autenticação)." + "message": "Use um navegador web suportado (tal como o Chrome) e/ou inclua provedores adicionais que são melhor suportados entre navegadores web (tal como um aplicativo autenticator)." }, "twoStepOptions": { "message": "Opções de autenticação em duas etapas" @@ -1610,14 +1616,14 @@ "message": "Chave de segurança Yubico OTP" }, "yubiKeyDesc": { - "message": "Utilize uma YubiKey para acessar a sua conta. Funciona com YubiKey 4, 4 Nano, 4C, e dispositivos NEO." + "message": "Utilize uma YubiKey para acessar a sua conta. Funciona com os dispositivos YubiKey 4, 4 Nano, 4C, e NEO." }, "duoDescV2": { "message": "Digite um código gerado pelo Duo Security.", "description": "'Duo Security' and 'Duo Mobile' are product names and should not be translated." }, "duoOrganizationDesc": { - "message": "Verifique com o Duo Security utilizando o aplicativo Duo Mobile, SMS, chamada telefônica, ou chave de segurança U2F.", + "message": "Verifique com o Duo Security para a sua organização usando o aplicativo Duo Mobile, SMS, chamada telefônica, ou chave de segurança U2F.", "description": "'Duo Security' and 'Duo Mobile' are product names and should not be translated." }, "webAuthnTitle": { @@ -1636,13 +1642,13 @@ "message": "Ambiente auto-hospedado" }, "selfHostedBaseUrlHint": { - "message": "Especifique o0 URL de base da sua instalação local do Bitwarden. Exemplo: https://bitwarden.company.com" + "message": "Especifique o URL de base da sua instalação local do Bitwarden. Exemplo: https://bitwarden.company.com" }, "selfHostedCustomEnvHeader": { "message": "Para configuração avançada, você pode especificar a URL de base de cada serviço independentemente." }, "selfHostedEnvFormInvalid": { - "message": "Você deve adicionar um URL do servidor de base ou pelo menos um ambiente personalizado." + "message": "Você deve adicionar um URL de base de um servidor ou pelo menos um ambiente personalizado." }, "selfHostedEnvMustUseHttps": { "message": "URLs devem usar HTTPS." @@ -1651,7 +1657,7 @@ "message": "Ambiente personalizado" }, "baseUrl": { - "message": "URL do Servidor" + "message": "URL do servidor" }, "selfHostBaseUrl": { "message": "URL do servidor auto-hospedado", @@ -1737,7 +1743,7 @@ "message": "Aplica-se a todas as contas conectadas." }, "turnOffBrowserBuiltInPasswordManagerSettings": { - "message": "Desative o gerenciador de senhas integrado do seu navegador para evitar conflitos." + "message": "Desative o gerenciador de senhas embutido no seu navegador para evitar conflitos." }, "turnOffBrowserBuiltInPasswordManagerSettingsLink": { "message": "Edite as configurações do navegador." @@ -1773,7 +1779,7 @@ "message": "Saiba mais sobre preenchimento automático" }, "defaultAutoFillOnPageLoad": { - "message": "Configuração de autopreenchimento padrão para itens de credenciais" + "message": "Configuração padrão de preenchimento automático para credenciais" }, "defaultAutoFillOnPageLoadDesc": { "message": "Você pode desativar o preenchimento automático no carregamento da página para credenciais individuais na tela de Editar do item." @@ -1794,7 +1800,7 @@ "message": "Abrir cofre na barra lateral" }, "commandAutofillLoginDesc": { - "message": "Preencher automaticamente o último login utilizado para o site atual" + "message": "Preencher automaticamente a última credencial utilizada para o site atual" }, "commandAutofillCardDesc": { "message": "Preencher automaticamente o último cartão utilizado para o site atual" @@ -1803,7 +1809,7 @@ "message": "Preencher automaticamente a última identidade usada para o site atual" }, "commandGeneratePasswordDesc": { - "message": "Gerar e copiar uma nova senha aleatória para a área de transferência." + "message": "Gere e copie uma nova senha aleatória para a área de transferência" }, "commandLockVaultDesc": { "message": "Bloquear o cofre" @@ -1821,7 +1827,7 @@ "message": "Novo campo personalizado" }, "dragToSort": { - "message": "Arrastar para ordenar" + "message": "Arraste para ordenar" }, "dragToReorder": { "message": "Arraste para reorganizar" @@ -1830,7 +1836,7 @@ "message": "Texto" }, "cfTypeHidden": { - "message": "Ocultado" + "message": "Oculto" }, "cfTypeBoolean": { "message": "Booleano" @@ -1847,7 +1853,7 @@ "description": "This describes a value that is 'linked' (tied) to another value." }, "popup2faCloseMessage": { - "message": "Ao clicar fora da janela de pop-up para verificar seu e-mail para o seu código de verificação fará com que este pop-up feche. Você deseja abrir este pop-up em uma nova janela para que ele não seja fechado?" + "message": "Ao clicar fora da janela de pop-up para conferir seu e-mail pelo seu código de verificação, este pop-up fechará. Você deseja abrir este pop-up em uma nova janela para que ele não seja fechado?" }, "showIconsChangePasswordUrls": { "message": "Mostrar ícones de sites e obter URLs de alteração de senha" @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Ano de vencimento" }, + "monthly": { + "message": "mês" + }, "expiration": { "message": "Vencimento" }, @@ -1913,7 +1922,7 @@ "message": "número do cartão" }, "ex": { - "message": "ex." + "message": "p. ex." }, "title": { "message": "Título" @@ -1979,10 +1988,10 @@ "message": "Endereço 3" }, "cityTown": { - "message": "Cidade / Localidade" + "message": "Cidade ou localidade" }, "stateProvince": { - "message": "Estado / Província" + "message": "Estado ou província" }, "zipPostalCode": { "message": "CEP / Código postal" @@ -2071,23 +2080,23 @@ "description": "Header for edit file send" }, "viewItemHeaderLogin": { - "message": "Visualizar credencial", + "message": "Ver credencial", "description": "Header for view login item type" }, "viewItemHeaderCard": { - "message": "Visualizar cartão", + "message": "Ver cartão", "description": "Header for view card item type" }, "viewItemHeaderIdentity": { - "message": "Visualizar identidade", + "message": "Ver identidade", "description": "Header for view identity item type" }, "viewItemHeaderNote": { - "message": "Visualizar anotação", + "message": "Ver anotação", "description": "Header for view note item type" }, "viewItemHeaderSshKey": { - "message": "Visualizar chave SSH", + "message": "Ver chave SSH", "description": "Header for view SSH key item type" }, "passwordHistory": { @@ -2106,10 +2115,10 @@ "message": "Voltar" }, "collections": { - "message": "Coleções" + "message": "Conjuntos" }, "nCollections": { - "message": "$COUNT$ coleções", + "message": "$COUNT$ conjuntos", "placeholders": { "count": { "content": "$1", @@ -2124,7 +2133,7 @@ "message": "Abrir em uma nova janela" }, "refresh": { - "message": "Atualizar" + "message": "Recarregar" }, "cards": { "message": "Cartões" @@ -2146,10 +2155,10 @@ "description": "To clear something out. example: To clear browser history." }, "checkPassword": { - "message": "Verifique se a senha foi exposta." + "message": "Confira se a senha foi exposta." }, "passwordExposed": { - "message": "Esta senha foi exposta $VALUE$ vez(es) em violações de dados. Você deve alterá-la.", + "message": "Esta senha foi exposta $VALUE$ vez(es) em vazamentos de dados. Você deve alterá-la.", "placeholders": { "value": { "content": "$1", @@ -2158,7 +2167,7 @@ } }, "passwordSafe": { - "message": "Esta senha não foi encontrada em violações de dados conhecidas. Deve ser seguro de usar." + "message": "Esta senha não foi encontrada em vazamentos de dados conhecidos. Deve ser segura de usar." }, "baseDomain": { "message": "Domínio de base", @@ -2216,7 +2225,7 @@ "message": "Todos os itens" }, "noPasswordsInList": { - "message": "Não existem senhas para listar." + "message": "Não há senhas para listar." }, "clearHistory": { "message": "Limpar histórico" @@ -2246,19 +2255,19 @@ "description": "ex. Date this password was updated" }, "neverLockWarning": { - "message": "Você tem certeza que deseja usar a opção \"Nunca\"? Definir suas opções de bloqueio para \"Nunca\" armazena a chave de criptografia do seu cofre no seu dispositivo. Se você usar esta opção, você deve garantir que irá manter o seu dispositivo devidamente protegido." + "message": "Você tem certeza que deseja usar a opção \"Nunca\"? Configurar suas opções de bloqueio para \"Nunca\" armazena a chave de criptografia do seu cofre no seu dispositivo. Se você usar esta opção, você deve garantir que irá manter o seu dispositivo devidamente protegido." }, "noOrganizationsList": { - "message": "Você pertence a nenhuma organização. As organizações permitem que você compartilhe itens em segurança com outros usuários." + "message": "Você não pertence a nenhuma organização. As organizações permitem que você compartilhe itens em segurança com outros usuários." }, "noCollectionsInList": { - "message": "Não há coleções para listar." + "message": "Não há conjuntos para listar." }, "ownership": { "message": "Propriedade" }, "whoOwnsThisItem": { - "message": "Quem possui este item?" + "message": "Quem é o proprietário deste item?" }, "strong": { "message": "Forte", @@ -2273,17 +2282,17 @@ "description": "ex. A weak password. Scale: Weak -> Good -> Strong" }, "weakMasterPassword": { - "message": "Senha principal Fraca" + "message": "Senha principal fraca" }, "weakMasterPasswordDesc": { - "message": "A senha principal que você selecionou está fraca. Você deve usar uma senha principal forte (ou uma frase-passe) para proteger a sua conta Bitwarden adequadamente. Tem certeza que deseja usar esta senha principal?" + "message": "A senha principal que você selecionou está fraca. Você deve usar uma senha principal forte (ou uma frase secreta) para proteger a sua conta Bitwarden adequadamente. Tem certeza que deseja usar esta senha principal?" }, "pin": { "message": "PIN", "description": "PIN code. Ex. The short code (often numeric) that you use to unlock a device." }, "unlockWithPin": { - "message": "Desbloquear com o PIN" + "message": "Desbloquear com PIN" }, "setYourPinTitle": { "message": "Configurar PIN" @@ -2292,10 +2301,10 @@ "message": "Configurar PIN" }, "setYourPinCode": { - "message": "Defina o seu código PIN para desbloquear o Bitwarden. Suas configurações de PIN serão redefinidas se alguma vez você encerrar completamente toda a sessão do aplicativo." + "message": "Configure o seu código PIN para desbloquear o Bitwarden. Suas configurações de PIN serão reconfiguradas se você desconectar a sua conta do aplicativo." }, "setPinCode": { - "message": "Você pode usar este PIN para desbloquear o Bitwarden. O seu PIN será redefinido se você sair da sua conta no aplicativo." + "message": "Você pode usar este PIN para desbloquear o Bitwarden. O seu PIN será reconfigurado se você desconectar a sua conta do aplicativo." }, "pinRequired": { "message": "O código PIN é necessário." @@ -2307,13 +2316,13 @@ "message": "Muitas tentativas de entrada de PIN inválidas. Desconectando." }, "unlockWithBiometrics": { - "message": "Desbloquear com a biometria" + "message": "Desbloquear com biometria" }, "unlockWithMasterPassword": { "message": "Desbloquear com senha principal" }, "awaitDesktop": { - "message": "Aguardando confirmação do desktop" + "message": "Aguardando confirmação do computador" }, "awaitDesktopDesc": { "message": "Confirme o uso de biometria no aplicativo do Bitwarden Desktop para ativar a biometria para o navegador." @@ -2325,7 +2334,7 @@ "message": "Exigir senha principal ao reiniciar o navegador" }, "selectOneCollection": { - "message": "Você deve selecionar pelo menos uma coleção." + "message": "Você deve selecionar pelo menos um conjunto." }, "cloneItem": { "message": "Clonar item" @@ -2343,16 +2352,16 @@ "message": "Usar este e-mail" }, "useThisPassword": { - "message": "Use esta senha" + "message": "Usar esta senha" }, "useThisPassphrase": { - "message": "Use esta frase secreta" + "message": "Usar esta frase secreta" }, "useThisUsername": { - "message": "Use este nome de usuário" + "message": "Usar este nome de usuário" }, "securePasswordGenerated": { - "message": "Senha segura gerada! Não se esqueça de atualizar também sua senha no site." + "message": "Senha segura gerada! Não se esqueça de atualizar sua senha no site também." }, "useGeneratorHelpTextPartOne": { "message": "Use o gerador", @@ -2380,13 +2389,13 @@ "description": "Noun: a special folder to hold deleted items" }, "searchTrash": { - "message": "Pesquisar na lixeira" + "message": "Buscar na lixeira" }, "permanentlyDeleteItem": { "message": "Apagar item para sempre" }, "permanentlyDeleteItemConfirmation": { - "message": "Você tem certeza que deseja excluir permanentemente esse item?" + "message": "Tem certeza que deseja apagar esse item para sempre?" }, "permanentlyDeletedItem": { "message": "Item apagado para sempre" @@ -2401,7 +2410,7 @@ "message": "Já tem uma conta?" }, "vaultTimeoutLogOutConfirmation": { - "message": "Sair irá remover todo o acesso ao seu cofre e requer autenticação online após o período de tempo limite. Tem certeza de que deseja usar esta configuração?" + "message": "Desconectar-se irá remover todo o acesso ao seu cofre e requirirá autenticação online após o período de tempo limite. Tem certeza de que deseja usar esta configuração?" }, "vaultTimeoutLogOutConfirmationTitle": { "message": "Confirmação da ação do tempo limite" @@ -2437,10 +2446,10 @@ } }, "topLayerHijackWarning": { - "message": "This page is interfering with the Bitwarden experience. The Bitwarden inline menu has been temporarily disabled as a safety measure." + "message": "Esta página está interferindo com a experiência do Bitwarden. O menu inline do Bitwarden foi temporariamente desativado como uma medida de segurança." }, "setMasterPassword": { - "message": "Definir senha principal" + "message": "Configurar senha principal" }, "currentMasterPass": { "message": "Senha principal atual" @@ -2524,7 +2533,7 @@ "message": "Sua senha nova não pode ser a mesma que a sua atual." }, "hintEqualsPassword": { - "message": "Sua dica de senha não pode ser o mesmo que sua senha." + "message": "A dica da sua senha não pode ser a mesma coisa que sua senha." }, "ok": { "message": "Ok" @@ -2539,7 +2548,7 @@ "message": "Verificação de sincronização do Desktop" }, "desktopIntegrationVerificationText": { - "message": "Por favor, verifique se o aplicativo desktop mostra esta impressão digital: " + "message": "Verifique se o aplicativo de computador mostra esta frase biométrica: " }, "desktopIntegrationDisabledTitle": { "message": "A integração com o navegador não foi configurada" @@ -2548,40 +2557,40 @@ "message": "A integração com o navegador não foi configurada no aplicativo do Bitwarden Desktop. Configure ela nas configurações do aplicativo de computador." }, "startDesktopTitle": { - "message": "Iniciar o aplicativo Bitwarden Desktop" + "message": "Abrir o aplicativo Bitwarden Desktop" }, "startDesktopDesc": { - "message": "O aplicativo do Bitwarden para desktop precisa ser iniciado antes que o desbloqueio com biometria possa ser usado." + "message": "O aplicativo Bitwarden para computador precisa ser aberto antes que o desbloqueio com biometria possa ser usado." }, "errorEnableBiometricTitle": { "message": "Não é possível ativar a biometria" }, "errorEnableBiometricDesc": { - "message": "A ação foi cancelada pelo aplicativo desktop" + "message": "A ação foi cancelada pelo aplicativo de computador" }, "nativeMessagingInvalidEncryptionDesc": { - "message": "O aplicativo desktop invalidou o canal de comunicação seguro. Por favor, tente esta operação novamente" + "message": "O aplicativo de computador invalidou o canal de comunicação seguro. Tente esta operação novamente" }, "nativeMessagingInvalidEncryptionTitle": { - "message": "Comunicação com o desktop interrompida" + "message": "Comunicação com o computador interrompida" }, "nativeMessagingWrongUserDesc": { - "message": "O aplicativo desktop está conectado em uma conta diferente. Por favor, certifique-se de que ambos os aplicativos estejam conectados na mesma conta." + "message": "O aplicativo de computador está conectado em uma conta diferente. Certifique-se de que ambos os aplicativos estejam conectados na mesma conta." }, "nativeMessagingWrongUserTitle": { - "message": "A conta não confere" + "message": "Não correspondência da conta" }, "nativeMessagingWrongUserKeyTitle": { "message": "Não correspondência da chave biométrica" }, "nativeMessagingWrongUserKeyDesc": { - "message": "O desbloqueio biométrico falhou. A chave secreta da biometria falhou ao desbloquear o cofre. Tente configurar a biometrica biométricos novamente." + "message": "O desbloqueio biométrico falhou. A chave secreta da biometria falhou ao desbloquear o cofre. Tente configurar a biometria novamente." }, "biometricsNotEnabledTitle": { "message": "Biometria não configurada" }, "biometricsNotEnabledDesc": { - "message": "A biometria com o navegador requer que a biometria de desktop seja ativada nas configurações primeiro." + "message": "A biometria com o navegador requer que a biometria do desktop seja configurada nas configurações primeiro." }, "biometricsNotSupportedTitle": { "message": "Biometria não suportada" @@ -2611,16 +2620,16 @@ "message": "Permissão não fornecida" }, "nativeMessaginPermissionErrorDesc": { - "message": "Sem a permissão para se comunicar com o Aplicativo Bitwarden Desktop, não podemos fornecer dados biométricos na extensão do navegador. Por favor, tente novamente." + "message": "Sem a permissão para se comunicar com o aplicativo do Bitwarden Desktop, não podemos fornecer a biometria na extensão do navegador. Tente novamente." }, "nativeMessaginPermissionSidebarTitle": { "message": "Erro ao solicitar permissão" }, "nativeMessaginPermissionSidebarDesc": { - "message": "Esta ação não pode ser feita na barra lateral. Por favor, tente novamente no pop-up ou popout." + "message": "Esta ação não pode ser feita na barra lateral. Tente novamente no pop-up." }, "personalOwnershipSubmitError": { - "message": "Devido a uma política empresarial, você não pode salvar itens no seu cofre pessoal. Altere a opção de propriedade para uma organização e escolha entre as coleções disponíveis." + "message": "Devido a uma política empresarial, você não pode salvar itens no seu cofre pessoal. Altere a opção de propriedade para uma organização e escolha entre os conjuntos disponíveis." }, "personalOwnershipPolicyInEffect": { "message": "Uma política de organização está afetando suas opções de propriedade." @@ -2629,7 +2638,7 @@ "message": "Uma política da organização bloqueou a importação de itens em seu cofre pessoal." }, "restrictCardTypeImport": { - "message": "Não é possível importar tipos de item de cartão" + "message": "Não é possível importar itens do tipo de cartão" }, "restrictCardTypeImportDesc": { "message": "Uma política definida por 1 ou mais organizações impedem que você importe cartões em seus cofres." @@ -2651,10 +2660,10 @@ "message": "O Bitwarden não irá pedir para salvar os detalhes de credencial para estes domínios. Você deve atualizar a página para que as alterações entrem em vigor." }, "excludedDomainsDescAlt": { - "message": "O Bitwarden não irá pedir para salvar os detalhes de credencial para estes domínios, em todas as contas. Você deve atualizar a página para que as alterações entrem em vigor." + "message": "O Bitwarden não irá pedir para salvar os detalhes de credencial para estes domínios, em todas as contas. Você deve recarregar a página para que as alterações entrem em vigor." }, "blockedDomainsDesc": { - "message": "O preenchimento automático e outros recursos não serão oferecidos para estes sites. Atualize a página para que as mudanças surtam efeito." + "message": "O preenchimento automático e outros recursos relacionados não serão oferecidos para estes sites. Recarregue a página para que as mudanças surtam efeito." }, "autofillBlockedNoticeV2": { "message": "O preenchimento automático está bloqueado para este site." @@ -2685,7 +2694,7 @@ "message": "Senhas em risco" }, "atRiskPasswordDescSingleOrg": { - "message": "$ORGANIZATION$ solicita que altere uma senha, pois ela está vulnerável.", + "message": "$ORGANIZATION$ está solicitando que altere uma senha, pois ela está em risco.", "placeholders": { "organization": { "content": "$1", @@ -2694,7 +2703,7 @@ } }, "atRiskPasswordsDescSingleOrgPlural": { - "message": "$ORGANIZATION$ solicita que altere $COUNT$ senhas, pois elas estão vulneráveis.", + "message": "$ORGANIZATION$ está solicitando que altere $COUNT$ senhas, pois elas estão em risco.", "placeholders": { "organization": { "content": "$1", @@ -2707,7 +2716,7 @@ } }, "atRiskPasswordsDescMultiOrgPlural": { - "message": "Suas organizações estão solicitando que altere $COUNT$ senhas porque elas estão vulneráveis.", + "message": "Suas organizações estão solicitando que altere $COUNT$ senhas porque elas estão em risco.", "placeholders": { "count": { "content": "$1", @@ -2716,7 +2725,7 @@ } }, "atRiskChangePrompt": { - "message": "Sua senha para este site está em risco. $ORGANIZATION$ solicitou alterá-la.", + "message": "Sua senha para este site está em risco. $ORGANIZATION$ solicitou que você altere ela.", "placeholders": { "organization": { "content": "$1", @@ -2787,10 +2796,10 @@ "message": "Ativar preenchimento automático" }, "turnedOnAutofill": { - "message": "Desativar preenchimento automático" + "message": "Preenchimento automático ativado" }, "dismiss": { - "message": "Dispensar" + "message": "Descartar" }, "websiteItemLabel": { "message": "Site $number$ (URI)", @@ -2814,7 +2823,7 @@ "message": "Alterações de domínios bloqueados salvas" }, "excludedDomainsSavedSuccess": { - "message": "Mudanças de domínios excluídos salvas" + "message": "Alterações de domínios excluídos salvas" }, "limitSendViews": { "message": "Limitar visualizações" @@ -2862,7 +2871,7 @@ "message": "Ocultar texto por padrão" }, "expired": { - "message": "Expirado" + "message": "Vencido" }, "passwordProtected": { "message": "Protegido por senha" @@ -2875,10 +2884,10 @@ "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "removePassword": { - "message": "Remover Senha" + "message": "Remover senha" }, "delete": { - "message": "Excluir" + "message": "Apagar" }, "removedPassword": { "message": "Senha removida" @@ -2898,11 +2907,11 @@ "message": "Você tem certeza que deseja remover a senha?" }, "deleteSend": { - "message": "Excluir Send", + "message": "Apagar Send", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "deleteSendConfirmation": { - "message": "Você tem certeza que deseja excluir este Send?", + "message": "Você tem certeza que deseja apagar este Send?", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "deleteSendPermanentConfirmation": { @@ -2954,7 +2963,7 @@ "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendDisabledWarning": { - "message": "Devido a uma política corporativa, você só pode excluir um Send existente.", + "message": "Devido a uma política corporativa, você só pode apagar um Send existente.", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "createdSend": { @@ -2966,7 +2975,7 @@ "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendExpiresInHoursSingle": { - "message": "O Send estará disponível para qualquer pessoa com o link pela próxima hora.", + "message": "O Send estará disponível para qualquer pessoa com o link pela próxima 1 hora.", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendExpiresInHours": { @@ -2980,7 +2989,7 @@ } }, "sendExpiresInDaysSingle": { - "message": "O Send estará disponível para qualquer pessoa com o link pelo próximo dia.", + "message": "O Send estará disponível para qualquer pessoa com o link pelo próximo 1 dia.", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendExpiresInDays": { @@ -3002,7 +3011,7 @@ "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendFilePopoutDialogText": { - "message": "Mostrar extensão?", + "message": "Criar janela da extensão?", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendFilePopoutDialogDesc": { @@ -3019,7 +3028,7 @@ "message": "Para escolher um arquivo usando o Safari, abra uma nova janela clicando neste banner." }, "popOut": { - "message": "Separar da janela" + "message": "Mover para janela" }, "sendFileCalloutHeader": { "message": "Antes de começar" @@ -3028,28 +3037,28 @@ "message": "A data de validade fornecida não é válida." }, "deletionDateIsInvalid": { - "message": "A data de exclusão fornecida não é válida." + "message": "A data de apagamento fornecida não é válida." }, "expirationDateAndTimeRequired": { - "message": "Uma data e hora de expiração são obrigatórias." + "message": "Uma data e hora de validade são obrigatórias." }, "deletionDateAndTimeRequired": { - "message": "Uma data e hora de exclusão são obrigatórias." + "message": "Uma data e hora de apagamento são obrigatórias." }, "dateParsingError": { - "message": "Ocorreu um erro ao salvar as suas datas de exclusão e validade." + "message": "Ocorreu um erro ao salvar as suas datas de apagamento e validade." }, "hideYourEmail": { "message": "Oculte seu endereço de e-mail dos visualizadores." }, "passwordPrompt": { - "message": "Solicitação nova de senha principal" + "message": "Resolicitar senha principal" }, "passwordConfirmation": { "message": "Confirmação de senha principal" }, "passwordConfirmationDesc": { - "message": "Esta ação está protegida. Para continuar, por favor, reinsira a sua senha principal para verificar sua identidade." + "message": "Esta ação está protegida. Para continuar, digite a sua senha principal novamente para verificar sua identidade." }, "emailVerificationRequired": { "message": "Verificação de e-mail necessária" @@ -3061,7 +3070,7 @@ "message": "Você precisa verificar o seu e-mail para usar este recurso. Você pode verificar seu e-mail no cofre web." }, "masterPasswordSuccessfullySet": { - "message": "Senha principal definida com sucesso" + "message": "Senha principal configurada com sucesso" }, "updatedMasterPassword": { "message": "Senha principal atualizada" @@ -3070,19 +3079,19 @@ "message": "Atualizar senha principal" }, "updateMasterPasswordWarning": { - "message": "Sua senha principal foi alterada recentemente por um administrador de sua organização. Para acessar o cofre, você precisa atualizá-la agora. O processo desconectará você da sessão atual, exigindo que você entre novamente. Sessões ativas em outros dispositivos podem continuar ativas por até uma hora." + "message": "Sua senha principal foi alterada recentemente por um administrador de sua organização. Para acessar o cofre, você precisa atualizá-la agora. O processo desconectará você da sessão atual, exigindo que você se conecte novamente. Sessões ativas em outros dispositivos podem continuar ativas por até uma hora." }, "updateWeakMasterPasswordWarning": { - "message": "A sua senha principal não atende a uma ou mais das políticas da sua organização. Para acessar o cofre, você deve atualizar a sua senha principal agora. O processo desconectará você da sessão atual, exigindo que você entre novamente. Sessões ativas em outros dispositivos podem continuar ativas por até uma hora." + "message": "A sua senha principal não atende a uma ou mais das políticas da sua organização. Para acessar o cofre, você deve atualizar a sua senha principal agora. O processo desconectará você da sessão atual, exigindo que você se conecte novamente. Sessões ativas em outros dispositivos podem continuar ativas por até uma hora." }, "tdeDisabledMasterPasswordRequired": { - "message": "Sua organização desativou a criptografia confiável do dispositivo. Defina uma senha principal para acessar o seu cofre." + "message": "Sua organização desativou a criptografia de dispositivo confiado. Configure uma senha principal para acessar o seu cofre." }, "resetPasswordPolicyAutoEnroll": { "message": "Inscrição automática" }, "resetPasswordAutoEnrollInviteWarning": { - "message": "Esta organização possui uma política empresarial que irá inscrevê-lo automaticamente na redefinição de senha. A inscrição permitirá que os administradores da organização alterem sua senha principal." + "message": "Esta organização possui uma política empresarial que irá inscrevê-lo automaticamente na reconfiguração de senha. A inscrição permitirá que os administradores da organização alterem sua senha principal." }, "selectFolder": { "message": "Selecionar pasta..." @@ -3092,11 +3101,11 @@ "description": "Used as a message within the notification bar when no folders are found" }, "orgPermissionsUpdatedMustSetPassword": { - "message": "As permissões da sua organização foram atualizadas, exigindo que você defina uma senha principal.", + "message": "As permissões da sua organização foram atualizadas, exigindo que você configure uma senha principal.", "description": "Used as a card title description on the set password page to explain why the user is there" }, "orgRequiresYouToSetPassword": { - "message": "Sua organização requer que você defina uma senha principal.", + "message": "Sua organização requer que você configure uma senha principal.", "description": "Used as a card title description on the set password page to explain why the user is there" }, "cardMetrics": { @@ -3119,10 +3128,10 @@ "message": "Minutos" }, "vaultTimeoutPolicyAffectingOptions": { - "message": "Os requisitos de política empresarial foram aplicados às opções de tempo limite" + "message": "Os requisitos de política empresarial foram aplicados às suas opções de tempo limite" }, "vaultTimeoutPolicyInEffect": { - "message": "As políticas da sua organização definiram o tempo máximo de limite para o cofre como $HOURS$ hora(s) e $MINUTES$ minuto(s).", + "message": "As políticas da sua organização configuraram o seu máximo permitido do tempo limite do cofre para $HOURS$ hora(s) e $MINUTES$ minuto(s).", "placeholders": { "hours": { "content": "$1", @@ -3161,7 +3170,7 @@ } }, "vaultTimeoutPolicyWithActionInEffect": { - "message": "As políticas da sua organização estão afetando seu cofre tempo limite. Tempo limite máximo permitido para cofre é $HOURS$ hora(s) e $MINUTES$ minuto(s). A ação de tempo limite do seu cofre é definida como $ACTION$.", + "message": "As políticas da sua organização estão afetando o tempo limite do seu cofre. \nO tempo limite máximo permitido para o cofre é $HOURS$ hora(s) e $MINUTES$ minuto(s). A ação de tempo limite do seu cofre está configurada como $ACTION$.", "placeholders": { "hours": { "content": "$1", @@ -3178,7 +3187,7 @@ } }, "vaultTimeoutActionPolicyInEffect": { - "message": "As políticas da sua organização definiram a ação tempo limite do seu cofre para $ACTION$.", + "message": "As políticas da sua organização configuraram a ação do tempo limite do seu cofre para $ACTION$.", "placeholders": { "action": { "content": "$1", @@ -3187,7 +3196,7 @@ } }, "vaultTimeoutTooLarge": { - "message": "O tempo limite do seu cofre excede as restrições estabelecidas por sua organização." + "message": "O tempo limite do seu cofre excede as restrições estabelecidas pela sua organização." }, "vaultExportDisabled": { "message": "Exportação de cofre indisponível" @@ -3196,10 +3205,10 @@ "message": "Uma ou mais políticas da organização impedem que você exporte seu cofre individual." }, "copyCustomFieldNameInvalidElement": { - "message": "Não foi possível identificar um elemento de formulário válido. Em vez disso, tente inspecionar o HTML." + "message": "Não é possível identificar um elemento de formulário válido. Em vez disso, tente inspecionar o HTML." }, "copyCustomFieldNameNotUnique": { - "message": "Nenhum identificador exclusivo encontrado." + "message": "Nenhum identificador único encontrado." }, "removeMasterPasswordForOrganizationUserKeyConnector": { "message": "Uma senha principal não é mais necessária para os membros da seguinte organização. Confirme o domínio abaixo com o administrador da sua organização." @@ -3208,7 +3217,7 @@ "message": "Nome da organização" }, "keyConnectorDomain": { - "message": "Domínio do Conector de Chave" + "message": "Domínio do Key Connector" }, "leaveOrganization": { "message": "Sair da organização" @@ -3229,7 +3238,7 @@ "message": "Habilitar contagem de caracteres" }, "sessionTimeout": { - "message": "Sua sessão expirou. Volte e tente entrar novamente." + "message": "Sua sessão expirou. Volte e tente se conectar novamente." }, "exportingPersonalVaultTitle": { "message": "Exportando cofre individual" @@ -3274,7 +3283,7 @@ } }, "exportingOrganizationVaultFromAdminConsoleWithDataOwnershipDesc": { - "message": "Apenas o cofre da organização associado com $ORGANIZATION$ será exportado. Os itens da minhas coleções não serão incluídos.", + "message": "Apenas o cofre da organização associado com $ORGANIZATION$ será exportado. Os itens dos meus conjuntos não serão incluídos.", "placeholders": { "organization": { "content": "$1", @@ -3286,7 +3295,7 @@ "message": "Erro" }, "decryptionError": { - "message": "Erro ao descriptografar" + "message": "Erro de descriptografia" }, "errorGettingAutoFillData": { "message": "Erro ao obter dados de preenchimento automático" @@ -3295,7 +3304,7 @@ "message": "O Bitwarden não conseguiu descriptografar o(s) item(ns) do cofre listado abaixo." }, "contactCSToAvoidDataLossPart1": { - "message": "Contate o sucesso do cliente", + "message": "Contate o costumer success", "description": "This is part of a larger sentence. The full sentence will read 'Contact customer success to avoid additional data loss.'" }, "contactCSToAvoidDataLossPart2": { @@ -3353,7 +3362,7 @@ "message": "E-mail pega-tudo" }, "catchallEmailDesc": { - "message": "Use o pega-tudo configurado na caixa de entrada do seu domínio." + "message": "Use a caixa de entrada pega-tudo configurada no seu domínio." }, "random": { "message": "Aleatório" @@ -3368,10 +3377,10 @@ "message": "Serviço" }, "forwardedEmail": { - "message": "Alias do e-mail encaminhado" + "message": "Alias de encaminhamento de e-mail" }, "forwardedEmailDesc": { - "message": "Gere um alias de e-mail com um serviço de encaminhamento externo." + "message": "Gere um alias de e-mail com um serviço externo de encaminhamento." }, "forwarderDomainName": { "message": "Domínio de e-mail", @@ -3382,7 +3391,7 @@ "description": "Guidance provided for email forwarding services that support multiple email domains." }, "forwarderError": { - "message": "Erro $SERVICENAME$: $ERRORMESSAGE$", + "message": "Erro do $SERVICENAME$: $ERRORMESSAGE$", "description": "Reports an error returned by a forwarding service to the user.", "placeholders": { "servicename": { @@ -3410,7 +3419,7 @@ } }, "forwaderInvalidToken": { - "message": "Token de API $SERVICENAME$ inválido", + "message": "Token de API do $SERVICENAME$ inválido", "description": "Displayed when the user's API token is empty or rejected by the forwarding service.", "placeholders": { "servicename": { @@ -3420,7 +3429,7 @@ } }, "forwaderInvalidTokenWithMessage": { - "message": "Token de API $SERVICENAME$ inválido: $ERRORMESSAGE$", + "message": "Token de API da $SERVICENAME$ inválido: $ERRORMESSAGE$", "description": "Displayed when the user's API token is rejected by the forwarding service with an error message.", "placeholders": { "servicename": { @@ -3468,7 +3477,7 @@ } }, "forwarderNoDomain": { - "message": "Domínio $SERVICENAME$ inválido.", + "message": "Domínio inválido do $SERVICENAME$.", "description": "Displayed when the domain is empty or domain authorization failed at the forwarding service.", "placeholders": { "servicename": { @@ -3478,7 +3487,7 @@ } }, "forwarderNoUrl": { - "message": "URL $SERVICENAME$ inválida.", + "message": "URL inválido do $SERVICENAME$.", "description": "Displayed when the url of the forwarding service wasn't supplied.", "placeholders": { "servicename": { @@ -3488,7 +3497,7 @@ } }, "forwarderUnknownError": { - "message": "Ocorreu um erro $SERVICENAME$ desconhecido.", + "message": "Ocorreu um erro desconhecido do $SERVICENAME$.", "description": "Displayed when the forwarding service failed due to an unknown error.", "placeholders": { "servicename": { @@ -3518,10 +3527,10 @@ "message": "Chave da API" }, "ssoKeyConnectorError": { - "message": "Erro do conector de chave: certifique-se de que o conector de chave está disponível e funcionando corretamente." + "message": "Erro de Key Connector: certifique-se de que a Key Connector está disponível e funcionando corretamente." }, "premiumSubcriptionRequired": { - "message": "Assinatura Premium necessária" + "message": "Plano Premium necessário" }, "organizationIsDisabled": { "message": "Organização suspensa." @@ -3530,7 +3539,7 @@ "message": "Itens em organizações suspensas não podem ser acessados. Entre em contato com o proprietário da sua Organização para obter assistência." }, "loggingInTo": { - "message": "Entrando em $DOMAIN$", + "message": "Conectando-se a $DOMAIN$", "placeholders": { "domain": { "content": "$1", @@ -3548,7 +3557,7 @@ "message": "Terceiros" }, "thirdPartyServerMessage": { - "message": "Conectado à implementação de servidores terceiros, $SERVERNAME$. Verifique bugs usando o servidor oficial ou reporte-os ao servidor de terceiros.", + "message": "Conectado à uma implementação de terceiros do servidor, $SERVERNAME$. Verifique bugs usando o servidor oficial ou reporte-os ao servidor de terceiros.", "placeholders": { "servername": { "content": "$1", @@ -3566,7 +3575,7 @@ } }, "loginWithMasterPassword": { - "message": "Entrar com a senha principal" + "message": "Conectar-se com senha principal" }, "newAroundHere": { "message": "Novo por aqui?" @@ -3575,7 +3584,7 @@ "message": "Lembrar e-mail" }, "loginWithDevice": { - "message": "Entrar com dispositivo" + "message": "Conectar-se com dispositivo" }, "fingerprintPhraseHeader": { "message": "Frase biométrica" @@ -3630,7 +3639,7 @@ } }, "youDeniedLoginAttemptFromAnotherDevice": { - "message": "Você negou uma tentativa de autenticação de outro dispositivo. Se era você, tente entrar com o dispositivo novamente." + "message": "Você negou uma tentativa de autenticação de outro dispositivo. Se era você, tente se conectar com o dispositivo novamente." }, "device": { "message": "Dispositivo" @@ -3705,7 +3714,7 @@ "message": "Atalho de teclado para preenchimento automático" }, "autofillLoginShortcutNotSet": { - "message": "O atalho do preenchimento automático não está definido. Altere isso nas configurações do navegador." + "message": "O atalho do preenchimento automático não está configurado. Altere isso nas configurações do navegador." }, "autofillLoginShortcutText": { "message": "O atalho de preenchimento automático é $COMMAND$. Gerencie todos os atalhos nas configurações do navegador.", @@ -3844,10 +3853,10 @@ "message": "Não é possível concluir a autenticação" }, "loginOnTrustedDeviceOrAskAdminToAssignPassword": { - "message": "Você precisa entrar com um dispositivo confiável ou solicitar ao administrador que lhe atribua uma senha." + "message": "Você precisa se conectar com um dispositivo confiado ou solicitar ao administrador que lhe atribua uma senha." }, "ssoIdentifierRequired": { - "message": "Identificador de SSO da organização é necessário." + "message": "O identificador de SSO da organização é necessário." }, "creatingAccountOn": { "message": "Criando conta em" @@ -3865,7 +3874,7 @@ "message": "Nenhum e-mail?" }, "goBack": { - "message": "Voltar" + "message": "Volte" }, "toEditYourEmailAddress": { "message": "para editar o seu endereço de e-mail." @@ -3902,7 +3911,7 @@ "message": "E-mail do usuário ausente" }, "activeUserEmailNotFoundLoggingYouOut": { - "message": "E-mail de usuário ativo não encontrado. Desconectando." + "message": "E-mail do usuário ativo não encontrado. Desconectando você." }, "deviceTrusted": { "message": "Dispositivo confiado" @@ -3920,13 +3929,13 @@ "message": "Organização não foi confiada" }, "emergencyAccessTrustWarning": { - "message": "Para a segurança da sua conta, apenas confirme se você permitiu o acesso de emergência a esse usuário e se a frase biométrica dele coincide com a que é exibida em sua conta" + "message": "Para a segurança da sua conta, apenas confirme que você permitiu o acesso de emergência a esse usuário e se a frase biométrica dele coincide com a que é exibida na conta deles" }, "orgTrustWarning": { - "message": "Para a segurança da sua conta, prossiga apenas se você for um membro dessa organização, tem uma recuperação de conta ativa e a frase biométrica exibida abaixo corresponde com a da organização." + "message": "Para a segurança da sua conta, prossiga apenas se você for um membro dessa organização, tem a recuperação de conta ativa, e a frase biométrica exibida abaixo corresponde com a da organização." }, "orgTrustWarning1": { - "message": "Esta organização tem uma política empresarial que lhe inscreverá na recuperação de conta. A inscrição permitirá que os administradores da organização alterem sua senha. Prossiga somente se você reconhecer esta organização e se a frase biométrica exibida abaixo corresponde com a impressão digital da organização." + "message": "Esta organização tem uma política empresarial que lhe inscreverá na recuperação de conta. A inscrição permitirá que os administradores da organização alterem sua senha. Prossiga somente se você reconhecer esta organização e se a frase biométrica exibida abaixo corresponde com a da organização." }, "trustUser": { "message": "Confiar no usuário" @@ -3946,7 +3955,7 @@ "message": "obrigatório" }, "search": { - "message": "Pesquisar" + "message": "Buscar" }, "inputMinLength": { "message": "A entrada deve ter pelo menos $COUNT$ caracteres.", @@ -3994,7 +4003,7 @@ } }, "multipleInputEmails": { - "message": "Um ou mais e-mails são inválidos" + "message": "1 ou mais e-mails são inválidos" }, "inputTrimValidator": { "message": "A entrada não pode conter somente espaços em branco.", @@ -4013,7 +4022,7 @@ } }, "singleFieldNeedsAttention": { - "message": "Um campo precisa da sua atenção." + "message": "1 campo precisa de sua atenção." }, "multipleFieldsNeedAttention": { "message": "$COUNT$ campos precisam da sua atenção.", @@ -4056,7 +4065,7 @@ "description": "Toggling an expand/collapse state." }, "aliasDomain": { - "message": "Alias do domínio" + "message": "Domínio de alias" }, "autofillOnPageLoadSetToDefault": { "message": "O preenchimento automático ao carregar a página está usando a configuração padrão.", @@ -4102,7 +4111,7 @@ "description": "Button text to display in overlay when the account is locked." }, "unlockAccountAria": { - "message": "Desbloqueie sua conta, abre em uma nova janela", + "message": "Desbloquear sua conta, abre em uma nova janela", "description": "Screen reader text (aria-label) for unlock account button in overlay" }, "totpCodeAria": { @@ -4130,7 +4139,7 @@ "description": "Button text to display in overlay when there are no matching items" }, "addNewVaultItem": { - "message": "Adicionar novo item do cofre", + "message": "Adicionar novo item no cofre", "description": "Screen reader text (aria-label) for new item button in overlay" }, "newLogin": { @@ -4146,7 +4155,7 @@ "description": "Button text to display within inline menu when there are no matching items on a credit card field" }, "addNewCardItemAria": { - "message": "Adicione um novo item de cartão no cofre, abre em uma nova janela", + "message": "Adicionar um novo item de cartão no cofre, abre em uma nova janela", "description": "Screen reader text (aria-label) for new card button within inline menu" }, "newIdentity": { @@ -4199,10 +4208,10 @@ "message": "Tentar novamente" }, "verificationRequiredForActionSetPinToContinue": { - "message": "Verificação necessária para esta ação. Defina um PIN para continuar." + "message": "Verificação necessária para esta ação. Configure um PIN para continuar." }, "setPin": { - "message": "Definir PIN" + "message": "Configurar PIN" }, "verifyWithBiometrics": { "message": "Verificar com biometria" @@ -4211,13 +4220,13 @@ "message": "Aguardando confirmação" }, "couldNotCompleteBiometrics": { - "message": "Não foi possível completar a biometria." + "message": "Não foi possível concluir a biometria." }, "needADifferentMethod": { "message": "Precisa de um método diferente?" }, "useMasterPassword": { - "message": "Usar a senha principal" + "message": "Usar senha principal" }, "usePin": { "message": "Usar PIN" @@ -4250,10 +4259,10 @@ "message": "A autenticação em duas etapas do Duo é necessária para sua conta." }, "popoutExtension": { - "message": "Mostrar extensão" + "message": "Criar janela da extensão" }, "launchDuo": { - "message": "Abrir o Duo" + "message": "Abrir Duo" }, "importFormatError": { "message": "Os dados não estão formatados corretamente. Verifique o seu arquivo de importação e tente novamente." @@ -4277,13 +4286,13 @@ "message": "Selecione uma pasta" }, "selectImportCollection": { - "message": "Selecione uma coleção" + "message": "Selecione um conjunto" }, "importTargetHintCollection": { - "message": "Selecione esta opção caso queira importar os conteúdos de arquivos para uma coleção" + "message": "Selecione esta opção caso queira importar os conteúdos do arquivo para um conjunto" }, "importTargetHintFolder": { - "message": "Selecione esta opção caso queira importar os conteúdos de arquivos para uma pasta" + "message": "Selecione esta opção caso queira importar os conteúdos do arquivo para uma pasta" }, "importUnassignedItemsError": { "message": "Arquivo contém itens não atribuídos." @@ -4295,7 +4304,7 @@ "message": "Selecione o arquivo de importação" }, "chooseFile": { - "message": "Escolher arquivo" + "message": "Selecionar arquivo" }, "noFileChosen": { "message": "Nenhum arquivo escolhido" @@ -4341,7 +4350,7 @@ "message": "A chave de acesso não será copiada para o item clonado. Deseja continuar clonando este item?" }, "logInWithPasskeyQuestion": { - "message": "Entrar com chave de acesso?" + "message": "Conectar-se com chave de acesso?" }, "passkeyAlreadyExists": { "message": "Uma chave de acesso já existe para este aplicativo." @@ -4356,7 +4365,7 @@ "message": "Sem credenciais correspondentes para este site" }, "searchSavePasskeyNewLogin": { - "message": "Salvar ou pesquisar chave de acesso como uma nova credencial" + "message": "Buscar ou salvar chave de acesso como nova credencial" }, "confirm": { "message": "Confirmar" @@ -4365,19 +4374,19 @@ "message": "Salvar chave de acesso" }, "savePasskeyNewLogin": { - "message": "Salvar chave de acesso como uma nova credencial" + "message": "Salvar chave de acesso como nova credencial" }, "chooseCipherForPasskeySave": { "message": "Escolha uma credencial para salvar essa chave de acesso" }, "chooseCipherForPasskeyAuth": { - "message": "Escolha uma chave para conectar-se" + "message": "Escolha uma chave de acesso para conectar-se" }, "passkeyItem": { "message": "Item de chave de acesso" }, "overwritePasskey": { - "message": "Sobrescrever chave de acesso?" + "message": "Substituir chave de acesso?" }, "overwritePasskeyAlert": { "message": "Este item já contém uma chave de acesso. Tem certeza que deseja substituir a atual?" @@ -4419,7 +4428,7 @@ "message": "Importando sua conta..." }, "lastPassMFARequired": { - "message": "Requer autenticação multifatorial do LastPass" + "message": "Autenticação multifatorial do LastPass é necessária" }, "lastPassMFADesc": { "message": "Digite sua senha única do app autenticador" @@ -4431,7 +4440,7 @@ "message": "Código" }, "lastPassMasterPassword": { - "message": "Senha principal do LastPass" + "message": "Senha mestra do LastPass" }, "lastPassAuthRequired": { "message": "Autenticação do LastPass necessária" @@ -4440,7 +4449,7 @@ "message": "Aguardando autenticação do SSO" }, "awaitingSSODesc": { - "message": "Continue autenticando-se usando as credenciais da sua empresa." + "message": "Continue conectando-se usando as credenciais da sua empresa." }, "seeDetailedInstructions": { "message": "Veja instruções detalhadas no nosso site de ajuda em", @@ -4456,7 +4465,7 @@ "message": "Tente novamente ou procure um e-mail do LastPass para verificar que é você." }, "collection": { - "message": "Coleção" + "message": "Conjunto" }, "lastPassYubikeyDesc": { "message": "Insira a YubiKey associada com a sua conta do LastPass na porta USB do seu computador, e depois toque no botão dela." @@ -4465,10 +4474,10 @@ "message": "Trocar de conta" }, "switchAccounts": { - "message": "Alternar conta" + "message": "Trocar de conta" }, "switchToAccount": { - "message": "Mudar para conta" + "message": "Trocar para a conta" }, "activeAccount": { "message": "Conta ativa" @@ -4480,7 +4489,7 @@ "message": "Contas disponíveis" }, "accountLimitReached": { - "message": "Limite de contas atingido. Saia de uma conta para adicionar outra." + "message": "Limite de contas atingido. Desconecte uma conta para adicionar outra." }, "active": { "message": "ativo" @@ -4498,7 +4507,7 @@ "message": "hospedado em" }, "useDeviceOrHardwareKey": { - "message": "Use o seu dispositivo ou chave de hardware" + "message": "Use a sua chave de dispositivo ou hardware" }, "justOnce": { "message": "Somente uma vez" @@ -4532,7 +4541,7 @@ "description": "Content for dialog which warns a user when selecting 'starts with' matching strategy as a cipher match strategy" }, "uriMatchWarningDialogLink": { - "message": "Mais sobre detecção de correspondências", + "message": "Mais sobre a detecção de correspondência", "description": "Link to match detection docs on warning dialog for advance match strategy" }, "uriAdvancedOption": { @@ -4544,7 +4553,7 @@ "description": "Title for dialog which asks if the user wants to proceed to a relevant browser settings page" }, "confirmContinueToHelpCenter": { - "message": "Continuar para o Centro de Ajuda?", + "message": "Continuar no Centro de Ajuda?", "description": "Title for dialog which asks if the user wants to proceed to a relevant Help Center page" }, "confirmContinueToHelpCenterPasswordManagementContent": { @@ -4552,7 +4561,7 @@ "description": "Body content for dialog which asks if the user wants to proceed to the Help Center's page about browser password management settings" }, "confirmContinueToHelpCenterKeyboardShortcutsContent": { - "message": "Você pode ver e definir atalhos de extensão nas configurações do seu navegador.", + "message": "Você pode ver e configurar atalhos de extensão nas configurações do seu navegador.", "description": "Body content for dialog which asks if the user wants to proceed to the Help Center's page about browser keyboard shortcut settings" }, "confirmContinueToBrowserPasswordManagementSettingsContent": { @@ -4560,7 +4569,7 @@ "description": "Body content for dialog which asks if the user wants to proceed to the browser's password management settings page" }, "confirmContinueToBrowserKeyboardShortcutSettingsContent": { - "message": "Você pode ver e definir atalhos de extensão nas configurações do seu navegador.", + "message": "Você pode ver e configurar atalhos de extensão nas configurações do seu navegador.", "description": "Body content for dialog which asks if the user wants to proceed to the browser's keyboard shortcut settings page" }, "overrideDefaultBrowserAutofillTitle": { @@ -4576,11 +4585,11 @@ "description": "Label for the setting that allows overriding the default browser autofill settings" }, "privacyPermissionAdditionNotGrantedTitle": { - "message": "Não é possível definir o Bitwarden como o gerenciador de senhas padrão", + "message": "Não é possível configurar o Bitwarden como o gerenciador de senhas padrão", "description": "Title for the dialog that appears when the user has not granted the extension permission to set privacy settings" }, "privacyPermissionAdditionNotGrantedDescription": { - "message": "Você deve conceder permissões de privacidade do navegador ao Bitwarden para defini-lo como o gerenciador de senhas padrão.", + "message": "Você deve conceder permissões de privacidade do navegador ao Bitwarden para configurá-lo como o gerenciador de senhas padrão.", "description": "Description for the dialog that appears when the user has not granted the extension permission to set privacy settings" }, "makeDefault": { @@ -4623,16 +4632,16 @@ "message": "Itens sugeridos" }, "autofillSuggestionsTip": { - "message": "Salvar um item de credencial para este site para o preenchimento automático" + "message": "Salve um item de credencial para este site para preencher automaticamente" }, "yourVaultIsEmpty": { "message": "Seu cofre está vazio" }, "noItemsMatchSearch": { - "message": "Nenhum item corresponde à sua pesquisa" + "message": "Nenhum item corresponde à sua busca" }, "clearFiltersOrTryAnother": { - "message": "Limpe os filtros ou tente outro termo de pesquisa" + "message": "Limpe os filtros ou tente outro termo de busca" }, "copyInfoTitle": { "message": "Copiar informações - $ITEMNAME$", @@ -4675,7 +4684,7 @@ } }, "viewItemTitle": { - "message": "Visualizar item - $ITEMNAME$", + "message": "Ver item - $ITEMNAME$", "description": "Title for a link that opens a view for an item.", "placeholders": { "itemname": { @@ -4685,7 +4694,7 @@ } }, "viewItemTitleWithField": { - "message": "Visualizar item - $ITEMNAME$ - $FIELD$", + "message": "Ver item - $ITEMNAME$ - $FIELD$", "description": "Title for a link that opens a view for an item.", "placeholders": { "itemname": { @@ -4740,7 +4749,7 @@ "message": "Não há valores para copiar" }, "assignToCollections": { - "message": "Atribuir à coleções" + "message": "Atribuir a conjuntos" }, "copyEmail": { "message": "Copiar e-mail" @@ -4764,13 +4773,13 @@ "message": "Aparência" }, "errorAssigningTargetCollection": { - "message": "Erro ao atribuir coleção de destino." + "message": "Erro ao atribuir conjunto de destino." }, "errorAssigningTargetFolder": { "message": "Erro ao atribuir pasta de destino." }, "viewItemsIn": { - "message": "Visualizar itens em $NAME$", + "message": "Ver itens em $NAME$", "description": "Button to view the contents of a folder or collection", "placeholders": { "name": { @@ -4873,10 +4882,10 @@ "message": "Baixar o Bitwarden" }, "downloadBitwardenOnAllDevices": { - "message": "Baixe o Bitwarden em todos os dispositivos" + "message": "Baixar o Bitwarden em tudo" }, "getTheMobileApp": { - "message": "Baixar o aplicativo para dispositivos móveis" + "message": "Baixe o aplicativo para dispositivos móveis" }, "getTheMobileAppDesc": { "message": "Acesse as suas senhas em qualquer lugar com o aplicativo móvel do Bitwarden." @@ -4885,7 +4894,7 @@ "message": "Baixe o aplicativo para computador" }, "getTheDesktopAppDesc": { - "message": "Acesse o seu cofre sem um navegador e, em seguida, configure o desbloqueio com biometria para facilitar o desbloqueio tanto no aplicativo de computador quanto na extensão do navegador." + "message": "Acesse o seu cofre sem um navegador, configure o desbloqueio com biometria para facilitar o desbloqueio tanto no aplicativo de computador quanto na extensão do navegador." }, "downloadFromBitwardenNow": { "message": "Baixar em bitwarden.com agora" @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Desbloqueie relatórios, acesso de emergência, e mais recursos de segurança com o Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Organizações gratuitas não podem usar anexos" }, @@ -5056,17 +5068,17 @@ "description": "A section header for a list of passwords." }, "logInWithPasskeyAriaLabel": { - "message": "Entrar com chave de acesso", + "message": "Conectar-se com chave de acesso", "description": "ARIA label for the inline menu button that logs in with a passkey." }, "assign": { "message": "Atribuir" }, "bulkCollectionAssignmentDialogDescriptionSingular": { - "message": "Apenas membros da organização com acesso a essas coleções poderão ver o item." + "message": "Apenas membros da organização com acesso a estes conjuntos poderão ver o item." }, "bulkCollectionAssignmentDialogDescriptionPlural": { - "message": "Apenas membros da organização com acesso à essas coleções poderão ver os itens." + "message": "Apenas membros da organização com acesso a estes conjuntos poderão ver os itens." }, "bulkCollectionAssignmentWarning": { "message": "Você selecionou $TOTAL_COUNT$ itens. Você não pode atualizar $READONLY_COUNT$ destes itens porque você não tem permissão de edição.", @@ -5093,7 +5105,7 @@ "message": "Rótulo do campo" }, "textHelpText": { - "message": "Utilize campos de texto para dados como questões de segurança" + "message": "Use campos de texto para dados como questões de segurança" }, "hiddenHelpText": { "message": "Use campos ocultos para dados confidenciais como uma senha" @@ -5138,7 +5150,7 @@ } }, "reorderToggleButton": { - "message": "Reordene $LABEL$. Use a tecla de seta para mover o item para cima ou para baixo.", + "message": "Reordenar $LABEL$. Use a tecla de seta para mover o item para cima ou para baixo.", "placeholders": { "label": { "content": "$1", @@ -5147,7 +5159,7 @@ } }, "reorderWebsiteUriButton": { - "message": "Reorganize a URI do site. Use as setas para mover o item para cima ou para baixo." + "message": "Reordenar a URI do site. Use as setas para mover o item para cima ou para baixo." }, "reorderFieldUp": { "message": "$LABEL$ movido para cima, posição $INDEX$ de $LENGTH$", @@ -5167,13 +5179,13 @@ } }, "selectCollectionsToAssign": { - "message": "Selecione as coleções para atribuir" + "message": "Selecione conjuntos a atribuir" }, "personalItemTransferWarningSingular": { - "message": "1 item será transferido permanentemente para a organização selecionada. Você não irá mais ser dono deste item." + "message": "1 item será transferido permanentemente para a organização selecionada. Você não irá mais ser o proprietário deste item." }, "personalItemsTransferWarningPlural": { - "message": "$PERSONAL_ITEMS_COUNT$ itens serão transferidos permanentemente para a organização selecionada. Você não irá mais ser dono desses itens.", + "message": "$PERSONAL_ITEMS_COUNT$ itens serão transferidos permanentemente para a organização selecionada. Você não irá mais ser o proprietário desses itens.", "placeholders": { "personal_items_count": { "content": "$1", @@ -5182,7 +5194,7 @@ } }, "personalItemWithOrgTransferWarningSingular": { - "message": "1 item será transferido permanentemente para $ORG$. Você não irá mais ser dono deste item.", + "message": "1 item será transferido permanentemente para $ORG$. Você não irá mais ser o proprietário deste item.", "placeholders": { "org": { "content": "$1", @@ -5191,7 +5203,7 @@ } }, "personalItemsWithOrgTransferWarningPlural": { - "message": "$PERSONAL_ITEMS_COUNT$ itens serão transferidos permanentemente para $ORG$. Você não irá mais ser dono desses itens.", + "message": "$PERSONAL_ITEMS_COUNT$ itens serão transferidos permanentemente para $ORG$. Você não irá mais ser o proprietário desses itens.", "placeholders": { "personal_items_count": { "content": "$1", @@ -5204,7 +5216,7 @@ } }, "successfullyAssignedCollections": { - "message": "Coleções atribuídas com sucesso" + "message": "Conjuntos atribuídos com sucesso" }, "nothingSelected": { "message": "Você não selecionou nada." @@ -5257,7 +5269,7 @@ "message": "Ações da conta" }, "showNumberOfAutofillSuggestions": { - "message": "Mostrar o número de sugestões de preenchimento automático de login no ícone da extensão" + "message": "Mostrar número de sugestões de preenchimento automático de credenciais no ícone da extensão" }, "accountAccessRequested": { "message": "Acesso à conta solicitado" @@ -5272,7 +5284,7 @@ } }, "showQuickCopyActions": { - "message": "Mostrar a opção de cópia rápida no Cofre" + "message": "Mostrar opções de cópia rápida no Cofre" }, "systemDefault": { "message": "Padrão do sistema" @@ -5347,10 +5359,10 @@ "message": "O desbloqueio por biometria está indisponível no momento." }, "biometricsStatusHelptextAutoSetupNeeded": { - "message": "O desbloqueio por biometria está indisponível devido a algum erro na configuração dos arquivos de sistema." + "message": "O desbloqueio por biometria está indisponível devido a algum erro na configuração dos arquivos do sistema." }, "biometricsStatusHelptextManualSetupNeeded": { - "message": "O desbloqueio por biometria está indisponível devido a algum erro na configuração dos arquivos de sistema." + "message": "O desbloqueio por biometria está indisponível devido a algum erro na configuração dos arquivos do sistema." }, "biometricsStatusHelptextDesktopDisconnected": { "message": "O desbloqueio por biometria está indisponível porque o aplicativo de computador não está aberto." @@ -5371,23 +5383,23 @@ "message": "Desbloqueie seu cofre em segundos" }, "unlockVaultDesc": { - "message": "Você pode personalizar suas configurações de desbloqueio e tempo limite para acessar mais rapidamente seu cofre." + "message": "Você pode personalizar suas configurações de desbloqueio e tempo limite para acessar seu cofre mais rapidamente." }, "unlockPinSet": { - "message": "Desbloqueio com PIN definido" + "message": "PIN de desbloqueio configurado" }, "unlockWithBiometricSet": { - "message": "Desbloqueio com biometria definido" + "message": "Desbloqueio com biometria configurado" }, "authenticating": { "message": "Autenticando" }, "fillGeneratedPassword": { - "message": "Preencher a senha gerada", + "message": "Preencher senha gerada", "description": "Heading for the password generator within the inline menu" }, "passwordRegenerated": { - "message": "Senha regenerada", + "message": "Senha regerada", "description": "Notification message for when a password has been regenerated" }, "saveToBitwarden": { @@ -5431,11 +5443,11 @@ "description": "Represents the ^ key in screen reader content as a readable word" }, "ampersandCharacterDescriptor": { - "message": "E Comercial", + "message": "E", "description": "Represents the & key in screen reader content as a readable word" }, "asteriskCharacterDescriptor": { - "message": "Asterísco", + "message": "Asterisco", "description": "Represents the * key in screen reader content as a readable word" }, "parenLeftCharacterDescriptor": { @@ -5563,7 +5575,7 @@ "message": "Digite a senha da chave SSH." }, "enterSshKeyPassword": { - "message": "Digite a senha" + "message": "Digitar senha" }, "invalidSshKey": { "message": "A chave SSH é inválida" @@ -5578,7 +5590,7 @@ "message": "Chave SSH importada com sucesso" }, "cannotRemoveViewOnlyCollections": { - "message": "Você não pode remover coleções com permissões de Somente leitura: $COLLECTIONS$", + "message": "Você não pode remover conjuntos com permissões de Apenas ver: $COLLECTIONS$", "placeholders": { "collections": { "content": "$1", @@ -5590,7 +5602,7 @@ "message": "Atualize seu aplicativo de computador" }, "updateDesktopAppOrDisableFingerprintDialogMessage": { - "message": "Para usar o desbloqueio biométrica, atualize seu aplicativo de computador ou desative o desbloqueio biométrico nas configurações do desktop." + "message": "Para usar o desbloqueio biométrico, atualize seu aplicativo de computador ou desative o desbloqueio biométrico nas configurações do desktop." }, "changeAtRiskPassword": { "message": "Alterar senhas em risco" @@ -5620,7 +5632,7 @@ "message": "Autenticação rápida e fácil" }, "quickLoginBody": { - "message": "Configure o desbloqueio por biometria e o preenchimento automático para acessar suas contas sem digitar uma única letra." + "message": "Configure o desbloqueio biométrico e o preenchimento automático para acessar suas contas sem digitar uma única letra." }, "secureUser": { "message": "Dê um up nas suas credenciais" @@ -5666,7 +5678,7 @@ "description": "This is in multiple parts to allow for bold text in the middle of the sentence. A proper name follows this." }, "phishingPageExplanation2": { - "message": ", uma lista de código aberto de sites de phishing conhecidos usados para roubar informações pessoais e sensíveis.", + "message": ", uma lista de código aberto de sites de phishing conhecidos usados por roubar informações pessoais e sensíveis.", "description": "This is in multiple parts to allow for bold text in the middle of the sentence. A proper name precedes this." }, "phishingPageLearnMore": { @@ -5682,16 +5694,16 @@ } }, "hasItemsVaultNudgeBodyOne": { - "message": "Preencher itens automaticamente para a página atual" + "message": "Preenche automaticamente itens para a página atual" }, "hasItemsVaultNudgeBodyTwo": { "message": "Favorite itens para acesso rápido" }, "hasItemsVaultNudgeBodyThree": { - "message": "Pesquise seu cofre por outra coisa" + "message": "Busque no cofre por outra coisa" }, "newLoginNudgeTitle": { - "message": "Seja mais rápido com o preenchimento automático" + "message": "Economize tempo com o preenchimento automático" }, "newLoginNudgeBodyOne": { "message": "Inclua um", @@ -5760,10 +5772,10 @@ "message": "Sobre esta configuração" }, "permitCipherDetailsDescription": { - "message": "O Bitwarden usará URIs de credenciais salvas para identificar qual ícone ou URL de mudança de senha deverá ser usado para melhorar sua experiência. Nenhuma informação é coletada ou salva quando você utiliza este serviço." + "message": "O Bitwarden usará URIs de credenciais salvas para identificar qual ícone ou URL de alteração de senha deverá ser usado para melhorar sua experiência. Nenhuma informação é coletada ou salva quando você utiliza este serviço." }, "noPermissionsViewPage": { - "message": "Você não tem permissão para visualizar esta página. Tente entrar com uma conta diferente." + "message": "Você não tem permissão para ver esta página. Tente se conectar com uma conta diferente." }, "wasmNotSupported": { "message": "O WebAssembly não é suportado no seu navegador ou não está ativado. O WebAssembly é necessário para utilizar o aplicativo do Bitwarden.", @@ -5783,7 +5795,7 @@ "description": "This is used in the context of a breadcrumb navigation, indicating that there are more items in the breadcrumb trail that are not currently displayed." }, "confirmKeyConnectorDomain": { - "message": "Confirmar domínio do Conector de Chave" + "message": "Confirmar domínio do Key Connector" }, "atRiskLoginsSecured": { "message": "Ótimo trabalho protegendo suas credenciais em risco!" @@ -5801,7 +5813,7 @@ "message": "Acesso de emergência" }, "breachMonitoring": { - "message": "Monitoramento de brechas" + "message": "Monitoramento de vazamentos" }, "andMoreFeatures": { "message": "E mais!" @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Faça upgrade para o Premium" }, - "upgradeCompleteSecurity": { - "message": "Faça upgrade para segurança completa" + "unlockAdvancedSecurity": { + "message": "Desbloqueie recursos avançados de segurança" }, - "premiumGivesMoreTools": { - "message": "O Premium te oferece mais ferramentas para se permanecer seguro, trabalhar eficientemente, e manter o controle." + "unlockAdvancedSecurityDesc": { + "message": "Um plano Premium te dá mais ferramentas para se manter seguro e em controle" }, "explorePremium": { "message": "Explorar o Premium" diff --git a/apps/browser/src/_locales/pt_PT/messages.json b/apps/browser/src/_locales/pt_PT/messages.json index 4fd291e5c8..6b8568ddb1 100644 --- a/apps/browser/src/_locales/pt_PT/messages.json +++ b/apps/browser/src/_locales/pt_PT/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Os itens arquivados são excluídos dos resultados gerais da pesquisa e das sugestões de preenchimento automático. Tem a certeza de que pretende arquivar este item?" }, + "upgradeToUseArchive": { + "message": "É necessária uma subscrição Premium para utilizar o Arquivo." + }, "edit": { "message": "Editar" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "Ver tudo" }, + "showAll": { + "message": "Mostrar tudo" + }, "viewLess": { "message": "Ver menos" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Ano de validade" }, + "monthly": { + "message": "mês" + }, "expiration": { "message": "Prazo de validade" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Desbloqueie relatórios, acesso de emergência e outras funcionalidades de segurança com o Premium." + }, "freeOrgsCannotUseAttachments": { "message": "As organizações gratuitas não podem utilizar anexos" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Atualizar para o Premium" }, - "upgradeCompleteSecurity": { - "message": "Atualize para obter segurança total" + "unlockAdvancedSecurity": { + "message": "Desbloqueie funcionalidades de segurança avançadas" }, - "premiumGivesMoreTools": { - "message": "O Premium oferece mais ferramentas para manter a segurança, trabalhar com eficiência e manter o controlo." + "unlockAdvancedSecurityDesc": { + "message": "Uma subscrição Premium dá-lhe ferramentas adicionais para reforçar a sua segurança e manter o controlo" }, "explorePremium": { "message": "Explorar o Premium" diff --git a/apps/browser/src/_locales/ro/messages.json b/apps/browser/src/_locales/ro/messages.json index 66a5b9d796..db7a1b8c65 100644 --- a/apps/browser/src/_locales/ro/messages.json +++ b/apps/browser/src/_locales/ro/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Editare" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Anul expirării" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Expirare" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/ru/messages.json b/apps/browser/src/_locales/ru/messages.json index 1f3d7c7234..0535027daa 100644 --- a/apps/browser/src/_locales/ru/messages.json +++ b/apps/browser/src/_locales/ru/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Архивированные элементы исключены из общих результатов поиска и предложений автозаполнения. Вы уверены, что хотите архивировать этот элемент?" }, + "upgradeToUseArchive": { + "message": "Для использования архива требуется премиум-статус." + }, "edit": { "message": "Изменить" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "Посмотреть все" }, + "showAll": { + "message": "Показать все" + }, "viewLess": { "message": "Свернуть" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Год" }, + "monthly": { + "message": "месяц" + }, "expiration": { "message": "Срок действия" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Премиум" }, + "unlockFeaturesWithPremium": { + "message": "Разблокируйте отчеты, экстренный доступ и другие функции безопасности с помощью Премиум." + }, "freeOrgsCannotUseAttachments": { "message": "Бесплатные организации не могут использовать вложения" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Обновить до Премиум" }, - "upgradeCompleteSecurity": { - "message": "Перейти для полной защищенности" + "unlockAdvancedSecurity": { + "message": "Разблокировать дополнительные функции безопасности" }, - "premiumGivesMoreTools": { - "message": "Премиум предоставит вам больше инструментов для обеспечения безопасности, эффективной работы и контроля над ситуацией." + "unlockAdvancedSecurityDesc": { + "message": "Премиум-подписка дает вам больше возможностей для обеспечения безопасности и контроля" }, "explorePremium": { "message": "Познакомиться с Премиум" diff --git a/apps/browser/src/_locales/si/messages.json b/apps/browser/src/_locales/si/messages.json index 61dc029754..bb46b28332 100644 --- a/apps/browser/src/_locales/si/messages.json +++ b/apps/browser/src/_locales/si/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "සංස්කරණය" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "කල් ඉකුත්වන වසර" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "කල් ඉකුත්" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/sk/messages.json b/apps/browser/src/_locales/sk/messages.json index 865e832fda..283442d95d 100644 --- a/apps/browser/src/_locales/sk/messages.json +++ b/apps/browser/src/_locales/sk/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archivované položky sú vylúčené zo všeobecného vyhľadávania a z návrhov automatického vypĺňania. Naozaj chcete archivovať túto položku?" }, + "upgradeToUseArchive": { + "message": "Na použitie archívu je potrebné prémiové členstvo." + }, "edit": { "message": "Upraviť" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "Zobraziť všetky" }, + "showAll": { + "message": "Zobraziť všetko" + }, "viewLess": { "message": "Zobraziť menej" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Rok exspirácie" }, + "monthly": { + "message": "mesačne" + }, "expiration": { "message": "Expirácia" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Prémium" }, + "unlockFeaturesWithPremium": { + "message": "Odomknite reportovanie, núdzový prístup a ďalšie bezpečnostné funkcie s predplatným Prémium." + }, "freeOrgsCannotUseAttachments": { "message": "Bezplatné organizácie nemôžu používať prílohy" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgradovať na Prémium" }, - "upgradeCompleteSecurity": { - "message": "Upgradovať pre úplné zabezpečenie" + "unlockAdvancedSecurity": { + "message": "Odomknutie pokročilých funkcií zabezpečenia" }, - "premiumGivesMoreTools": { - "message": "Predplatné Prémium vám poskytuje viac nástrojov na zabezpečenie, efektívnu prácu a kontrolu." + "unlockAdvancedSecurityDesc": { + "message": "Predplatné Prémium vám poskytne viac nástrojov na zabezpečenie a kontrolu" }, "explorePremium": { "message": "Preskúmať Prémium" diff --git a/apps/browser/src/_locales/sl/messages.json b/apps/browser/src/_locales/sl/messages.json index ebb245290f..2d20050d7f 100644 --- a/apps/browser/src/_locales/sl/messages.json +++ b/apps/browser/src/_locales/sl/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Uredi" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Leto poteka" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Veljavna do" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/sr/messages.json b/apps/browser/src/_locales/sr/messages.json index d54a6ba928..0c7562987f 100644 --- a/apps/browser/src/_locales/sr/messages.json +++ b/apps/browser/src/_locales/sr/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Архивиране ставке су искључене из општих резултата претраге и предлога за ауто попуњавање. Јесте ли сигурни да желите да архивирате ову ставку?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Уреди" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "Прегледај све" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Година истека" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Истек" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Премијум" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Бесплатне организације не могу да користе прилоге" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Надоградите на Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/sv/messages.json b/apps/browser/src/_locales/sv/messages.json index 245692a27a..2c364f2059 100644 --- a/apps/browser/src/_locales/sv/messages.json +++ b/apps/browser/src/_locales/sv/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Arkiverade objekt är exkluderade från allmänna sökresultat och förslag för autofyll. Är du säker på att du vill arkivera detta objekt?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Redigera" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "Visa alla" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "Visa mindre" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Utgångsår" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Utgång" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Lås upp rapportering, nödåtkomst och fler säkerhetsfunktioner med Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Fria organisationer kan inte använda bilagor" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Uppgradera till Premium" }, - "upgradeCompleteSecurity": { - "message": "Uppgradera för fullständig säkerhet" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium ger dig fler verktyg för att hålla dig säker, arbeta effektivt och ha kontroll." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Utforska Premium" diff --git a/apps/browser/src/_locales/ta/messages.json b/apps/browser/src/_locales/ta/messages.json index a6e2ad0ee3..4d18550185 100644 --- a/apps/browser/src/_locales/ta/messages.json +++ b/apps/browser/src/_locales/ta/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "திருத்து" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "காலாவதி ஆண்டு" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "காலாவதி" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "பிரீமியம்" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "இலவச நிறுவனங்கள் இணைப்புகளைப் பயன்படுத்த முடியாது" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/te/messages.json b/apps/browser/src/_locales/te/messages.json index 7c4dbaf85d..f829937ac5 100644 --- a/apps/browser/src/_locales/te/messages.json +++ b/apps/browser/src/_locales/te/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Edit" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Expiration year" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Expiration" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/th/messages.json b/apps/browser/src/_locales/th/messages.json index ff0c05a470..ef6ba5b207 100644 --- a/apps/browser/src/_locales/th/messages.json +++ b/apps/browser/src/_locales/th/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "แก้ไข" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "View all" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Expiration Year" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "วันหมดอายุ" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Free organizations cannot use attachments" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Upgrade to Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/tr/messages.json b/apps/browser/src/_locales/tr/messages.json index b2bff83e8a..e6004ef387 100644 --- a/apps/browser/src/_locales/tr/messages.json +++ b/apps/browser/src/_locales/tr/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Arşivlenmiş kayıtlar genel arama sonuçları ve otomatik doldurma önerilerinden hariç tutulur. Bu kaydı arşivlemek istediğine emin misin?" }, + "upgradeToUseArchive": { + "message": "Arşivi kullanmak için premium üyelik gereklidir." + }, "edit": { "message": "Düzenle" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "Tümünü göster" }, + "showAll": { + "message": "Tümünü göster" + }, "viewLess": { "message": "Daha az göster" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Son kullanma yılı" }, + "monthly": { + "message": "ay" + }, "expiration": { "message": "Son kullanma tarihi" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Ücretsiz kuruluşlar dosya eklerini kullanamaz" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Premium'a yükselt" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Gelişmiş güvenlik özelliklerinin kilidini açın" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "Premium abonelik size daha fazla güvenlik ve kontrol olanağı sunan ek araçlara erişmenizi sağlar" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/uk/messages.json b/apps/browser/src/_locales/uk/messages.json index b104f845fa..a1922a5abd 100644 --- a/apps/browser/src/_locales/uk/messages.json +++ b/apps/browser/src/_locales/uk/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Архівовані записи виключаються з результатів звичайного пошуку та пропозицій автозаповнення. Ви дійсно хочете архівувати цей запис?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Змінити" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "Переглянути все" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Рік завершення" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Термін дії" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Premium" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Організації без передплати не можуть використовувати вкладення" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Покращити до Premium" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/vi/messages.json b/apps/browser/src/_locales/vi/messages.json index 242b779ca2..415cf474af 100644 --- a/apps/browser/src/_locales/vi/messages.json +++ b/apps/browser/src/_locales/vi/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "Các mục đã lưu trữ sẽ bị loại khỏi kết quả tìm kiếm chung và gợi ý tự động điền. Bạn có chắc chắn muốn lưu trữ mục này không?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "Sửa" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "Xem tất cả" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "View less" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "Năm hết hạn" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "Hết hạn" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "Cao cấp" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "Các tổ chức miễn phí không thể sử dụng tệp đính kèm" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "Nâng cấp lên gói Cao cấp" }, - "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "Premium gives you more tools to stay secure, work efficiently, and stay in control." + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "Explore Premium" diff --git a/apps/browser/src/_locales/zh_CN/messages.json b/apps/browser/src/_locales/zh_CN/messages.json index cf1664b6a6..92bcb8cb90 100644 --- a/apps/browser/src/_locales/zh_CN/messages.json +++ b/apps/browser/src/_locales/zh_CN/messages.json @@ -309,7 +309,7 @@ "message": "前往浏览器扩展商店吗?" }, "continueToBrowserExtensionStoreDesc": { - "message": "帮助别人了解 Bitwarden 是否适合他们。立即访问浏览器的扩展程序商店并留下评分。" + "message": "帮助别人了解 Bitwarden 是否适合他们。立即访问浏览器扩展商店并留下评分。" }, "changeMasterPasswordOnWebConfirmation": { "message": "您可以在 Bitwarden 网页 App 上更改您的主密码。" @@ -362,10 +362,10 @@ "message": "使用 Passwordless.dev 摆脱传统密码束缚,打造流畅且安全的登录体验。访问 bitwarden.com 网站了解更多信息。" }, "freeBitwardenFamilies": { - "message": "免费 Bitwarden 家庭" + "message": "免费的 Bitwarden 家庭版" }, "freeBitwardenFamiliesPageDesc": { - "message": "您有资格获得免费的 Bitwarden 家庭。立即在网页 App 中兑换此优惠。" + "message": "您有资格获得免费的 Bitwarden 家庭版。立即在网页 App 中兑换此优惠。" }, "version": { "message": "版本" @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "已归档的项目将被排除在一般搜索结果和自动填充建议之外。确定要归档此项目吗?" }, + "upgradeToUseArchive": { + "message": "需要高级会员才能使用归档。" + }, "edit": { "message": "编辑" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "查看全部" }, + "showAll": { + "message": "显示全部" + }, "viewLess": { "message": "查看更少" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "过期年份" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "有效期" }, @@ -3002,7 +3011,7 @@ "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendFilePopoutDialogText": { - "message": "弹出扩展?", + "message": "弹出扩展吗?", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendFilePopoutDialogDesc": { @@ -4902,6 +4911,9 @@ "premium": { "message": "高级版" }, + "unlockFeaturesWithPremium": { + "message": "使用高级版解锁报告、紧急访问以及更多安全功能。" + }, "freeOrgsCannotUseAttachments": { "message": "免费组织无法使用附件" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "升级为高级版" }, - "upgradeCompleteSecurity": { - "message": "升级以获得全面的安全防护" + "unlockAdvancedSecurity": { + "message": "解锁高级安全功能" }, - "premiumGivesMoreTools": { - "message": "高级版为您提供更多工具,助您保障安全、高效工作并掌控一切。" + "unlockAdvancedSecurityDesc": { + "message": "高级版订阅为您提供更多工具,助您保持安全并掌控一切" }, "explorePremium": { "message": "探索高级版" diff --git a/apps/browser/src/_locales/zh_TW/messages.json b/apps/browser/src/_locales/zh_TW/messages.json index 0ef20edce8..38fb50d6c8 100644 --- a/apps/browser/src/_locales/zh_TW/messages.json +++ b/apps/browser/src/_locales/zh_TW/messages.json @@ -585,6 +585,9 @@ "archiveItemConfirmDesc": { "message": "封存的項目將不會出現在一般搜尋結果或自動填入建議中。確定要封存此項目嗎?" }, + "upgradeToUseArchive": { + "message": "A premium membership is required to use Archive." + }, "edit": { "message": "編輯" }, @@ -594,6 +597,9 @@ "viewAll": { "message": "檢視全部" }, + "showAll": { + "message": "Show all" + }, "viewLess": { "message": "顯示較少" }, @@ -1867,6 +1873,9 @@ "expirationYear": { "message": "逾期年份" }, + "monthly": { + "message": "month" + }, "expiration": { "message": "逾期" }, @@ -4902,6 +4911,9 @@ "premium": { "message": "進階版" }, + "unlockFeaturesWithPremium": { + "message": "Unlock reporting, emergency access, and more security features with Premium." + }, "freeOrgsCannotUseAttachments": { "message": "免費組織無法使用附檔" }, @@ -5812,11 +5824,11 @@ "upgradeToPremium": { "message": "升級到 Premium" }, - "upgradeCompleteSecurity": { - "message": "升級以獲得完整的安全防護" + "unlockAdvancedSecurity": { + "message": "Unlock advanced security features" }, - "premiumGivesMoreTools": { - "message": "進階版提供更多工具,協助您維持安全、高效工作並保持掌控。" + "unlockAdvancedSecurityDesc": { + "message": "A Premium subscription gives you more tools to stay secure and in control" }, "explorePremium": { "message": "探索進階版" diff --git a/apps/browser/src/manifest.json b/apps/browser/src/manifest.json index 3d8f648dac..21a4e91853 100644 --- a/apps/browser/src/manifest.json +++ b/apps/browser/src/manifest.json @@ -2,7 +2,7 @@ "manifest_version": 2, "name": "__MSG_extName__", "short_name": "Bitwarden", - "version": "2025.11.1", + "version": "2025.11.2", "description": "__MSG_extDesc__", "default_locale": "en", "author": "Bitwarden Inc.", diff --git a/apps/browser/src/manifest.v3.json b/apps/browser/src/manifest.v3.json index 2b2aa0f117..1febac5aa9 100644 --- a/apps/browser/src/manifest.v3.json +++ b/apps/browser/src/manifest.v3.json @@ -3,7 +3,7 @@ "minimum_chrome_version": "102.0", "name": "__MSG_extName__", "short_name": "Bitwarden", - "version": "2025.11.1", + "version": "2025.11.2", "description": "__MSG_extDesc__", "default_locale": "en", "author": "Bitwarden Inc.", diff --git a/apps/browser/src/platform/services/platform-utils/browser-platform-utils.service.ts b/apps/browser/src/platform/services/platform-utils/browser-platform-utils.service.ts index 5a933d9715..c3dd3adb8c 100644 --- a/apps/browser/src/platform/services/platform-utils/browser-platform-utils.service.ts +++ b/apps/browser/src/platform/services/platform-utils/browser-platform-utils.service.ts @@ -329,6 +329,25 @@ export abstract class BrowserPlatformUtilsService implements PlatformUtilsServic return autofillCommand; } + async packageType(): Promise { + switch (this.getDevice()) { + case DeviceType.ChromeExtension: + return "Chrome Extension"; + case DeviceType.FirefoxExtension: + return "Firefox Extension"; + case DeviceType.OperaExtension: + return "Opera Extension"; + case DeviceType.EdgeExtension: + return "Edge Extension"; + case DeviceType.VivaldiExtension: + return "Vivaldi Extension"; + case DeviceType.SafariExtension: + return "Safari Extension"; + default: + return "Unknown Browser Extension"; + } + } + /** * Triggers the offscreen document API to copy the text to the clipboard. */ diff --git a/apps/browser/src/tools/popup/send-v2/add-edit/send-add-edit.component.ts b/apps/browser/src/tools/popup/send-v2/add-edit/send-add-edit.component.ts index 3481ced35d..8f30d00cc3 100644 --- a/apps/browser/src/tools/popup/send-v2/add-edit/send-add-edit.component.ts +++ b/apps/browser/src/tools/popup/send-v2/add-edit/send-add-edit.component.ts @@ -41,7 +41,12 @@ import { SendFilePopoutDialogContainerComponent } from "../send-file-popout-dial class QueryParams { constructor(params: Params) { this.sendId = params.sendId; - this.type = parseInt(params.type, 10); + const sendTypeValue = parseInt(params.type, 10); + if (sendTypeValue === SendType.Text || sendTypeValue === SendType.File) { + this.type = sendTypeValue; + } else { + throw new Error(`Invalid SendType: ${params.type}`); + } } /** diff --git a/apps/browser/src/tools/popup/send-v2/send-v2.component.spec.ts b/apps/browser/src/tools/popup/send-v2/send-v2.component.spec.ts index 63ede7ba35..6d79f430a3 100644 --- a/apps/browser/src/tools/popup/send-v2/send-v2.component.spec.ts +++ b/apps/browser/src/tools/popup/send-v2/send-v2.component.spec.ts @@ -37,7 +37,7 @@ import { PopupHeaderComponent } from "../../../platform/popup/layout/popup-heade import { PopupPageComponent } from "../../../platform/popup/layout/popup-page.component"; import { PopupRouterCacheService } from "../../../platform/popup/view-cache/popup-router-cache.service"; -import { SendV2Component, SendState } from "./send-v2.component"; +import { SendState, SendV2Component } from "./send-v2.component"; describe("SendV2Component", () => { let component: SendV2Component; diff --git a/apps/browser/src/tools/popup/send-v2/send-v2.component.ts b/apps/browser/src/tools/popup/send-v2/send-v2.component.ts index e3baba53c4..89769bdd1c 100644 --- a/apps/browser/src/tools/popup/send-v2/send-v2.component.ts +++ b/apps/browser/src/tools/popup/send-v2/send-v2.component.ts @@ -38,12 +38,16 @@ import { PopupHeaderComponent } from "../../../platform/popup/layout/popup-heade import { PopupPageComponent } from "../../../platform/popup/layout/popup-page.component"; import { VaultFadeInOutSkeletonComponent } from "../../../vault/popup/components/vault-fade-in-out-skeleton/vault-fade-in-out-skeleton.component"; -// FIXME: update to use a const object instead of a typescript enum -// eslint-disable-next-line @bitwarden/platform/no-enums -export enum SendState { - Empty, - NoResults, -} +/** A state of the Send list UI. */ +export const SendState = Object.freeze({ + /** No sends exist for the current filter (file or text). */ + Empty: "Empty", + /** Sends exist, but none match the current filter/search. */ + NoResults: "NoResults", +} as const); + +/** A state of the Send list UI. */ +export type SendState = (typeof SendState)[keyof typeof SendState]; // FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush // eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection @@ -114,6 +118,11 @@ export class SendV2Component implements OnDestroy { protected sendsDisabled = false; + private readonly sendTypeTitles: Record = { + [SendType.File]: "fileSends", + [SendType.Text]: "textSends", + }; + constructor( protected sendItemsService: SendItemsService, protected sendListFiltersService: SendListFiltersService, @@ -130,7 +139,7 @@ export class SendV2Component implements OnDestroy { .pipe(takeUntilDestroyed()) .subscribe(([emptyList, noFilteredResults, currentFilter]) => { if (currentFilter?.sendType !== null) { - this.title = `${this.sendType[currentFilter.sendType].toLowerCase()}Sends`; + this.title = this.sendTypeTitles[currentFilter.sendType] ?? "allSends"; } else { this.title = "allSends"; } diff --git a/apps/browser/src/vault/popup/components/at-risk-passwords/at-risk-passwords.component.html b/apps/browser/src/vault/popup/components/at-risk-passwords/at-risk-passwords.component.html index 1ffb404fdd..3953d8f1ea 100644 --- a/apps/browser/src/vault/popup/components/at-risk-passwords/at-risk-passwords.component.html +++ b/apps/browser/src/vault/popup/components/at-risk-passwords/at-risk-passwords.component.html @@ -53,12 +53,14 @@ {{ cipher.name }} - {{ cipher.subTitle }} +
+ +
+ @if (!(canArchive$ | async)) { + + }
  • { + let component: StatusFilterComponent; + let fixture: ComponentFixture; + let cipherArchiveService: jest.Mocked; + let accountService: FakeAccountService; + + const mockUserId = Utils.newGuid() as UserId; + const event = new Event("click"); + + beforeEach(async () => { + accountService = mockAccountServiceWith(mockUserId); + cipherArchiveService = mock(); + + await TestBed.configureTestingModule({ + declarations: [StatusFilterComponent], + providers: [ + { provide: AccountService, useValue: accountService }, + { provide: CipherArchiveService, useValue: cipherArchiveService }, + { provide: PremiumUpgradePromptService, useValue: mock() }, + { + provide: BillingAccountProfileStateService, + useValue: mock(), + }, + { provide: I18nService, useValue: { t: (key: string) => key } }, + ], + imports: [JslibModule, PremiumBadgeComponent], + }).compileComponents(); + + fixture = TestBed.createComponent(StatusFilterComponent); + component = fixture.componentInstance; + component.activeFilter = new VaultFilter(); + fixture.detectChanges(); + }); + + describe("handleArchiveFilter", () => { + const applyFilter = jest.fn(); + let promptForPremiumSpy: jest.SpyInstance; + + beforeEach(() => { + applyFilter.mockClear(); + component["applyFilter"] = applyFilter; + + promptForPremiumSpy = jest.spyOn(component["premiumBadgeComponent"]()!, "promptForPremium"); + }); + + it("should apply archive filter when userCanArchive returns true", async () => { + cipherArchiveService.userCanArchive$.mockReturnValue(of(true)); + cipherArchiveService.archivedCiphers$.mockReturnValue(of([])); + + await component["handleArchiveFilter"](event); + + expect(applyFilter).toHaveBeenCalledWith("archive"); + expect(promptForPremiumSpy).not.toHaveBeenCalled(); + }); + + it("should apply archive filter when userCanArchive returns false but hasArchivedCiphers is true", async () => { + const mockCipher = new CipherView(); + mockCipher.id = "test-id"; + + cipherArchiveService.userCanArchive$.mockReturnValue(of(false)); + cipherArchiveService.archivedCiphers$.mockReturnValue(of([mockCipher])); + + await component["handleArchiveFilter"](event); + + expect(applyFilter).toHaveBeenCalledWith("archive"); + expect(promptForPremiumSpy).not.toHaveBeenCalled(); + }); + + it("should prompt for premium when userCanArchive returns false and hasArchivedCiphers is false", async () => { + cipherArchiveService.userCanArchive$.mockReturnValue(of(false)); + cipherArchiveService.archivedCiphers$.mockReturnValue(of([])); + + await component["handleArchiveFilter"](event); + + expect(applyFilter).not.toHaveBeenCalled(); + expect(promptForPremiumSpy).toHaveBeenCalled(); + }); + }); +}); diff --git a/apps/desktop/src/vault/app/vault/vault-filter/filters/status-filter.component.ts b/apps/desktop/src/vault/app/vault/vault-filter/filters/status-filter.component.ts index db546f76a2..95ffd3f021 100644 --- a/apps/desktop/src/vault/app/vault/vault-filter/filters/status-filter.component.ts +++ b/apps/desktop/src/vault/app/vault/vault-filter/filters/status-filter.component.ts @@ -1,6 +1,11 @@ -import { Component } from "@angular/core"; +import { Component, viewChild } from "@angular/core"; +import { combineLatest, firstValueFrom, map, switchMap } from "rxjs"; +import { PremiumBadgeComponent } from "@bitwarden/angular/billing/components/premium-badge"; import { StatusFilterComponent as BaseStatusFilterComponent } from "@bitwarden/angular/vault/vault-filter/components/status-filter.component"; +import { AccountService } from "@bitwarden/common/auth/abstractions/account.service"; +import { getUserId } from "@bitwarden/common/auth/services/account.service"; +import { CipherArchiveService } from "@bitwarden/common/vault/abstractions/cipher-archive.service"; // FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush // eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection @@ -9,4 +14,38 @@ import { StatusFilterComponent as BaseStatusFilterComponent } from "@bitwarden/a templateUrl: "status-filter.component.html", standalone: false, }) -export class StatusFilterComponent extends BaseStatusFilterComponent {} +export class StatusFilterComponent extends BaseStatusFilterComponent { + private readonly premiumBadgeComponent = viewChild(PremiumBadgeComponent); + + private userId$ = this.accountService.activeAccount$.pipe(getUserId); + protected canArchive$ = this.userId$.pipe( + switchMap((userId) => this.cipherArchiveService.userCanArchive$(userId)), + ); + + protected hasArchivedCiphers$ = this.userId$.pipe( + switchMap((userId) => + this.cipherArchiveService.archivedCiphers$(userId).pipe(map((ciphers) => ciphers.length > 0)), + ), + ); + + constructor( + private accountService: AccountService, + private cipherArchiveService: CipherArchiveService, + ) { + super(); + } + + protected async handleArchiveFilter(event: Event) { + const [canArchive, hasArchivedCiphers] = await firstValueFrom( + combineLatest([this.canArchive$, this.hasArchivedCiphers$]), + ); + + if (canArchive || hasArchivedCiphers) { + this.applyFilter("archive"); + } else if (this.premiumBadgeComponent()) { + // The `premiumBadgeComponent` should always be defined here, adding the + // if to satisfy TypeScript. + await this.premiumBadgeComponent().promptForPremium(event); + } + } +} diff --git a/apps/desktop/src/vault/app/vault/vault-filter/vault-filter.module.ts b/apps/desktop/src/vault/app/vault/vault-filter/vault-filter.module.ts index 8729996c83..54a6d33ca6 100644 --- a/apps/desktop/src/vault/app/vault/vault-filter/vault-filter.module.ts +++ b/apps/desktop/src/vault/app/vault/vault-filter/vault-filter.module.ts @@ -1,6 +1,7 @@ import { CommonModule } from "@angular/common"; import { NgModule } from "@angular/core"; +import { PremiumBadgeComponent } from "@bitwarden/angular/billing/components/premium-badge"; import { JslibModule } from "@bitwarden/angular/jslib.module"; import { DeprecatedVaultFilterService as DeprecatedVaultFilterServiceAbstraction } from "@bitwarden/angular/vault/abstractions/deprecated-vault-filter.service"; import { VaultFilterService } from "@bitwarden/angular/vault/vault-filter/services/vault-filter.service"; @@ -13,7 +14,7 @@ import { TypeFilterComponent } from "./filters/type-filter.component"; import { VaultFilterComponent } from "./vault-filter.component"; @NgModule({ - imports: [CommonModule, JslibModule], + imports: [CommonModule, JslibModule, PremiumBadgeComponent], declarations: [ VaultFilterComponent, CollectionFilterComponent, diff --git a/apps/desktop/src/vault/app/vault/vault-v2.component.ts b/apps/desktop/src/vault/app/vault/vault-v2.component.ts index bdade04bac..6c4ebe13f1 100644 --- a/apps/desktop/src/vault/app/vault/vault-v2.component.ts +++ b/apps/desktop/src/vault/app/vault/vault-v2.component.ts @@ -565,10 +565,15 @@ export class VaultV2Component } } - if (userCanArchive && !cipher.organizationId && !cipher.isDeleted && !cipher.isArchived) { + if (!cipher.organizationId && !cipher.isDeleted && !cipher.isArchived) { menu.push({ label: this.i18nService.t("archiveVerb"), click: async () => { + if (!userCanArchive) { + await this.premiumUpgradePromptService.promptForPremium(); + return; + } + await this.archiveCipherUtilitiesService.archiveCipher(cipher); await this.refreshCurrentCipher(); }, diff --git a/apps/desktop/tsconfig.spec.json b/apps/desktop/tsconfig.spec.json index d52d889aa7..e6627a8ce4 100644 --- a/apps/desktop/tsconfig.spec.json +++ b/apps/desktop/tsconfig.spec.json @@ -4,5 +4,6 @@ "isolatedModules": true, "emitDecoratorMetadata": false }, - "files": ["./test.setup.ts"] + "files": ["./test.setup.ts"], + "include": ["src/**/*.spec.ts"] } diff --git a/apps/web/src/app/admin-console/organizations/settings/account.component.ts b/apps/web/src/app/admin-console/organizations/settings/account.component.ts index 68b220aeac..ec8ba59b98 100644 --- a/apps/web/src/app/admin-console/organizations/settings/account.component.ts +++ b/apps/web/src/app/admin-console/organizations/settings/account.component.ts @@ -168,18 +168,11 @@ export class AccountComponent implements OnInit, OnDestroy { return; } - const request = new OrganizationUpdateRequest(); - - /* - * When you disable a FormControl, it is removed from formGroup.values, so we have to use - * the original value. - * */ - request.name = this.formGroup.get("orgName").disabled - ? this.org.name - : this.formGroup.value.orgName; - request.billingEmail = this.formGroup.get("billingEmail").disabled - ? this.org.billingEmail - : this.formGroup.value.billingEmail; + // The server ignores any undefined values, so it's ok to reference disabled form fields here + const request: OrganizationUpdateRequest = { + name: this.formGroup.value.orgName, + billingEmail: this.formGroup.value.billingEmail, + }; // Backfill pub/priv key if necessary if (!this.org.hasPublicAndPrivateKeys) { diff --git a/apps/web/src/app/app.component.ts b/apps/web/src/app/app.component.ts index 30dbee9fac..c312b4edd7 100644 --- a/apps/web/src/app/app.component.ts +++ b/apps/web/src/app/app.component.ts @@ -27,7 +27,7 @@ import { StateEventRunnerService } from "@bitwarden/common/platform/state"; import { CipherService } from "@bitwarden/common/vault/abstractions/cipher.service"; import { InternalFolderService } from "@bitwarden/common/vault/abstractions/folder/folder.service.abstraction"; import { SearchService } from "@bitwarden/common/vault/abstractions/search.service"; -import { DialogService, ToastService } from "@bitwarden/components"; +import { DialogService, RouterFocusManagerService, ToastService } from "@bitwarden/components"; import { KeyService, BiometricStateService } from "@bitwarden/key-management"; const BroadcasterSubscriptionId = "AppComponent"; @@ -76,11 +76,17 @@ export class AppComponent implements OnDestroy, OnInit { private readonly destroy: DestroyRef, private readonly documentLangSetter: DocumentLangSetter, private readonly tokenService: TokenService, + private readonly routerFocusManager: RouterFocusManagerService, ) { this.deviceTrustToastService.setupListeners$.pipe(takeUntilDestroyed()).subscribe(); const langSubscription = this.documentLangSetter.start(); - this.destroy.onDestroy(() => langSubscription.unsubscribe()); + + this.routerFocusManager.start$.pipe(takeUntilDestroyed()).subscribe(); + + this.destroy.onDestroy(() => { + langSubscription.unsubscribe(); + }); } ngOnInit() { diff --git a/apps/web/src/app/core/web-platform-utils.service.ts b/apps/web/src/app/core/web-platform-utils.service.ts index dea4323bcc..037ee0f906 100644 --- a/apps/web/src/app/core/web-platform-utils.service.ts +++ b/apps/web/src/app/core/web-platform-utils.service.ts @@ -219,4 +219,8 @@ export class WebPlatformUtilsService implements PlatformUtilsService { getAutofillKeyboardShortcut(): Promise { return null; } + + packageType(): Promise { + return null; + } } diff --git a/apps/web/src/app/vault/individual-vault/vault-filter/components/vault-filter.component.ts b/apps/web/src/app/vault/individual-vault/vault-filter/components/vault-filter.component.ts index 0326f8455a..e40a32dc8b 100644 --- a/apps/web/src/app/vault/individual-vault/vault-filter/components/vault-filter.component.ts +++ b/apps/web/src/app/vault/individual-vault/vault-filter/components/vault-filter.component.ts @@ -313,7 +313,7 @@ export class VaultFilterComponent implements OnInit, OnDestroy { const data$ = combineLatest([ this.restrictedItemTypesService.restricted$, - this.cipherService.cipherViews$(userId), + this.cipherService.cipherListViews$(userId), ]).pipe( map(([restrictedTypes, ciphers]) => { const restrictedForUser = restrictedTypes diff --git a/apps/web/src/locales/af/messages.json b/apps/web/src/locales/af/messages.json index 0aa8616847..0fc3ebe06d 100644 --- a/apps/web/src/locales/af/messages.json +++ b/apps/web/src/locales/af/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/ar/messages.json b/apps/web/src/locales/ar/messages.json index 9b8dde78dd..acd669d462 100644 --- a/apps/web/src/locales/ar/messages.json +++ b/apps/web/src/locales/ar/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/az/messages.json b/apps/web/src/locales/az/messages.json index 5181906dac..9fa7411f19 100644 --- a/apps/web/src/locales/az/messages.json +++ b/apps/web/src/locales/az/messages.json @@ -9820,6 +9820,14 @@ "message": "Çox bahadır", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "1 illik ödənişsiz" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Bitwarden brauzer uzantısı uğurla açıldı. Riskli parollarınıza nəzər sala bilərsiniz." }, - "openExtensionManuallyPart1": { - "message": "Bitwarden brauzer uzantısı açılarkən xəta ilə üzləşdik. Alət çubuğundan", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "Bitwarden ikonunu açın.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Abunəliyiniz tezliklə yenilənəcək. Kəsintisiz xidməti təmin etmək və yeniləməni $RENEWAL_DATE$ tarixindən əvvəl təsdiqləmək üçün $RESELLER$ ilə əlaqə saxlayın.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden uzantısı quraşdırıldı!" }, - "openTheBitwardenExtension": { - "message": "Bitwarden uzantısını aç" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "Bitwarden uzantısı quraşdırılıb! Giriş etmək və avto-doldurmanı başlatmaq üçün uzantını aç." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Giriş etmək üçün uzantını aç və avto-doldurmağa başla." @@ -11687,6 +11684,14 @@ "message": "Öyrənmə Mərkəzi", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Kömək Mərkəzi", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Davam etmək istədiyinizə əminsiniz?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/be/messages.json b/apps/web/src/locales/be/messages.json index 59d5d49ab1..20142bf95d 100644 --- a/apps/web/src/locales/be/messages.json +++ b/apps/web/src/locales/be/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/bg/messages.json b/apps/web/src/locales/bg/messages.json index eb92601599..3267ebc338 100644 --- a/apps/web/src/locales/bg/messages.json +++ b/apps/web/src/locales/bg/messages.json @@ -5810,7 +5810,7 @@ "description": "This is the policy description shown in the policy list." }, "organizationDataOwnershipDescContent": { - "message": "All items will be owned and saved to the organization, enabling organization-wide controls, visibility, and reporting. When turned on, a default collection will be available for each member to store items. Learn more about managing the ", + "message": "Всички елементи ще се притежават от и съхраняват в организацията, което ще означава, че управлението, видимостта и докладите ще се извършват от организацията. Когато това и включено, всеки член ще може да съхранява елементите си в стандартна колекция. Научете повече относно управлението на ", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'All items will be owned and saved to the organization, enabling organization-wide controls, visibility, and reporting. When turned on, a default collection will be available for each member to store items. Learn more about managing the credential lifecycle.'" }, "organizationDataOwnershipContentAnchor": { @@ -9820,6 +9820,14 @@ "message": "Твърде скъпо", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Превключване към безплатен план", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Превключване към безплатна организация", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Безплатно за 1 година" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Добавката за браузър на Биуторден се отвори. Сега може да прегледате паролите си в риск." }, - "openExtensionManuallyPart1": { - "message": "Добавката за браузър на Биуторден не успя да се отвори. Отворете я с иконката на Битуорден", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "от лентата с инструменти.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Вашият абонамент ще бъде подновен скоро. За да подсигурите, че услугата няма да има прекъсвания, свържете се с $RESELLER$ и потвърдете подновяването преди $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Добавката на Битуорден е инсталирана!" }, - "openTheBitwardenExtension": { - "message": "Отварете добавката на Битуорден" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "Добавката на Битуорден е инсталирана! Отворете я, за да се впишете и да можете да се вписвате автоматично." + "bitwardenExtensionIsInstalled": { + "message": "Добавката на Битуорден е инсталирана!" }, "openExtensionToAutofill": { "message": "Отворете добавката, за да се впишете и да можете да използвате автоматичното попълване." @@ -11687,6 +11684,14 @@ "message": "Центъра за обучения", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "Ако добавката на Битуорден не се е отворила, може да трябва да отворите Битуорден от иконката ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " в лентата с инструменти.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Помощния център", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12119,13 +12124,13 @@ "message": "Започнете безплатния пробен период на Семейния план" }, "blockClaimedDomainAccountCreation": { - "message": "Block account creation for claimed domains" + "message": "Блокиране на създаването на акаунти за присвоени домейни" }, "blockClaimedDomainAccountCreationDesc": { - "message": "Prevent users from creating accounts outside of your organization using email addresses from claimed domains." + "message": "Предотвратяване на създаването на потребителски акаунти извън Вашата организация чрез адреси на е-поща от присвоени домейни." }, "blockClaimedDomainAccountCreationPrerequisite": { - "message": "A domain must be claimed before activating this policy." + "message": "Трябва да има присвоен домейн преди активирането на тази политика." }, "unlockMethodNeededToChangeTimeoutActionDesc": { "message": "Задайте метод за отключване, за да може да промените действието при изтичане на времето за достъп до трезора." @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Наистина ли искате да продължите?" + }, + "userVerificationFailed": { + "message": "Проверката на потребителя беше неуспешна." } } diff --git a/apps/web/src/locales/bn/messages.json b/apps/web/src/locales/bn/messages.json index 300f0bcd8f..f302bd08e2 100644 --- a/apps/web/src/locales/bn/messages.json +++ b/apps/web/src/locales/bn/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/bs/messages.json b/apps/web/src/locales/bs/messages.json index 3dc0ab7494..dce29d875d 100644 --- a/apps/web/src/locales/bs/messages.json +++ b/apps/web/src/locales/bs/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/ca/messages.json b/apps/web/src/locales/ca/messages.json index 35db86e2b2..dc3f4994c6 100644 --- a/apps/web/src/locales/ca/messages.json +++ b/apps/web/src/locales/ca/messages.json @@ -9820,6 +9820,14 @@ "message": "Massa car", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Gratuït durant 1 any" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/cs/messages.json b/apps/web/src/locales/cs/messages.json index 5693a5fc82..b4016223c7 100644 --- a/apps/web/src/locales/cs/messages.json +++ b/apps/web/src/locales/cs/messages.json @@ -9820,6 +9820,14 @@ "message": "Příliš drahé", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Přepínání na bezplatný tarif", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Přepínání na bezplatnou organizaci", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Zdarma na 1 rok" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Rozšíření Bitwarden pro prohlížeč bylo úspěšně otevřeno. Nyní můžete zkontrolovat Vaše ohrožená hesla." }, - "openExtensionManuallyPart1": { - "message": "Měli jsme potíže s otevřením rozšíření Bitwarden pro pohlížeč. Klepněte na ikonu Bitwarden", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "na panelu nástrojů.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Vaše předplatné se brzy obnoví. Chcete-li zajistit nepřerušenou službu, kontaktujte $RESELLER$ pro potvrzení obnovení před $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Rozšíření Bitwarden nainstalováno!" }, - "openTheBitwardenExtension": { - "message": "Otevřít rozšíření Bitwarden" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "Rozšíření Bitwarden je nainstalováno! Otevřete rozšíření pro přihlášení a začněte používat automatické vyplňování." + "bitwardenExtensionIsInstalled": { + "message": "Rozšíření Bitwarden je nainstalováno!" }, "openExtensionToAutofill": { "message": "Otevřete rozšíření pro příhlášení a spuštění automatického vyplňování." @@ -11687,6 +11684,14 @@ "message": "Centrum výuky", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "Pokud není rozšíření otevřeno, možná budete muset otevřít Bitwarden z ikony ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " na panelu nástrojů.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Centrum nápovědy", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Opravdu chcete pokračovat?" + }, + "userVerificationFailed": { + "message": "Ověření uživatele se nezdařilo." } } diff --git a/apps/web/src/locales/cy/messages.json b/apps/web/src/locales/cy/messages.json index 2b0222d709..46876fa947 100644 --- a/apps/web/src/locales/cy/messages.json +++ b/apps/web/src/locales/cy/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/da/messages.json b/apps/web/src/locales/da/messages.json index dee490c39e..0316c1d2f0 100644 --- a/apps/web/src/locales/da/messages.json +++ b/apps/web/src/locales/da/messages.json @@ -9820,6 +9820,14 @@ "message": "For dyrt", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Gratis i 1 år" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Abonnementet fornyes snart. For at sikre uafbrudt tjeneste, kontakt $RESELLER$ inden $RENEWAL_DATE$ for at bekræfte fornyelsen.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/de/messages.json b/apps/web/src/locales/de/messages.json index 4a83f8becc..4b623bf817 100644 --- a/apps/web/src/locales/de/messages.json +++ b/apps/web/src/locales/de/messages.json @@ -94,7 +94,7 @@ "message": "Mitglieder Aufgaben zuweisen, um den Fortschritt zu überwachen" }, "onceYouReviewApplications": { - "message": "Once you review applications and mark them as critical, assign tasks to your members to change their passwords." + "message": "Sobald du Anwendungen überprüft und als kritisch markiert hast, weist du deinen Mitgliedern Aufgaben zu, damit diese ihre Passwörter ändern." }, "sendReminders": { "message": "Erinnerungen senden" @@ -179,34 +179,34 @@ } }, "noDataInOrgTitle": { - "message": "No data found" + "message": "Keine Daten gefunden" }, "noDataInOrgDescription": { - "message": "Import your organization's login data to get started with Access Intelligence. Once you do that, you'll be able to:" + "message": "Importiere die Zugangsdaten deiner Organisation, um mit der Zugangsintelligenz zu beginnen. Sobald du dies getan hast, kannst du:" }, "feature1Title": { - "message": "Mark applications as critical" + "message": "Anwendungen als kritisch markieren" }, "feature1Description": { - "message": "This will help you remove risks to your most important applications first." + "message": "Dadurch kannst du Risiken für deine wichtigsten Anwendungen zuerst beseitigen." }, "feature2Title": { - "message": "Help members improve their security" + "message": "Helfe Mitgliedern, ihre Sicherheit zu verbessern" }, "feature2Description": { - "message": "Assign at-risk members guided security tasks to update credentials." + "message": "Weise gefährdeten Mitgliedern gezielte Sicherheitsaufgaben zu, um Zugangsdaten zu aktualisieren." }, "feature3Title": { "message": "Fortschritt überwachen" }, "feature3Description": { - "message": "Track changes over time to show security improvements." + "message": "Änderungen im Laufe der Zeit verfolgen, um Sicherheitsverbesserungen anzuzeigen." }, "noReportsRunTitle": { - "message": "Generate report" + "message": "Bericht generieren" }, "noReportsRunDescription": { - "message": "You’re ready to start generating reports. Once you generate, you’ll be able to:" + "message": "Du bist so weit, Berichte zu generieren. Sobald du sie generierst, kannst du folgendes tun:" }, "noCriticalApplicationsTitle": { "message": "Du hast keine Anwendung als kritisch markiert" @@ -266,13 +266,13 @@ "message": "Gefährdete Mitglieder" }, "membersWithAccessToAtRiskItemsForCriticalApplications": { - "message": "These members have access to vulnerable items for critical applications." + "message": "Diese Mitglieder haben Zugriff auf sensible Einträge für kritische Anwendungen." }, "membersWithAtRiskPasswords": { "message": "Mitglieder mit gefährdeten Passwörtern" }, "membersWillReceiveSecurityTask": { - "message": "Members of your organization will be assigned a task to change vulnerable passwords. They’ll receive a notification within their Bitwarden browser extension." + "message": "Den Mitgliedern deiner Organisation wird die Aufgabe zugewiesen, sensible Passwörter zu ändern. Sie erhalten eine Benachrichtigung innerhalb ihrer Bitwarden Browser-Erweiterung." }, "membersAtRiskCount": { "message": "$COUNT$ gefährdete Mitglieder", @@ -302,7 +302,7 @@ } }, "atRiskMemberDescription": { - "message": "These members are logging into critical applications with weak, exposed, or reused passwords." + "message": "Diese Mitglieder melden sich bei kritischen Anwendungen mit schwachen, kompromittierten oder wiederverwendeten Passwörtern an." }, "atRiskMembersDescriptionNone": { "message": "Dies sind keine Mitglieder, die sich in Anwendungen mit schwachen, kompromittierten oder wiederverwendeten Passwörtern anmelden." @@ -386,13 +386,13 @@ "message": "Kritische Anwendungen priorisieren" }, "selectCriticalAppsDescription": { - "message": "Select which applications are most critical to your organization. Then, you’ll be able to assign security tasks to members to remove risks." + "message": "Wähle die für deine Organisation kritischsten Anwendungen aus. Danach kannst du Mitgliedern Sicherheitsaufgaben zuweisen, um Risiken zu beseitigen." }, "reviewNewApplications": { "message": "Neue Anwendungen überprüfen" }, "reviewNewAppsDescription": { - "message": "Review new applications with vulnerable items and mark those you’d like to monitor closely as critical. Then, you’ll be able to assign security tasks to members to remove risks." + "message": "Überprüfe neue Anwendungen mit sensiblen Einträgen und kennzeichne diejenigen, die du genau überwachen möchtest, als kritisch. Anschließend kannst du Mitgliedern Sicherheitsaufgaben zuweisen, um Risiken zu beseitigen." }, "clickIconToMarkAppAsCritical": { "message": "Klicke auf das Sternsymbol, um eine App als kritisch zu markieren" @@ -5810,7 +5810,7 @@ "description": "This is the policy description shown in the policy list." }, "organizationDataOwnershipDescContent": { - "message": "All items will be owned and saved to the organization, enabling organization-wide controls, visibility, and reporting. When turned on, a default collection will be available for each member to store items. Learn more about managing the ", + "message": "Alle Einträge sind Eigentum der Organisation und werden dort gespeichert, was organisationsweite Kontrollen, Transparenz und Berichterstellung ermöglicht. Wenn diese Funktion aktiviert ist, steht jedem Mitglied eine Standard-Sammlung zur Speicherung von Einträgen zur Verfügung. Erfahre mehr über die Verwaltung des ", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'All items will be owned and saved to the organization, enabling organization-wide controls, visibility, and reporting. When turned on, a default collection will be available for each member to store items. Learn more about managing the credential lifecycle.'" }, "organizationDataOwnershipContentAnchor": { @@ -9820,6 +9820,14 @@ "message": "Zu teuer", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Wechseln zum kostenlosen Tarif", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Wechseln zur kostenlosen Organisation", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Kostenlos für 1 Jahr" }, @@ -9851,7 +9859,7 @@ "message": "Aufgaben zuweisen" }, "assignSecurityTasksToMembers": { - "message": "Sende Benachrichtigungen, um Passwörter zu ändern" + "message": "Benachrichtigungen zum Ändern von Passwörtern senden" }, "assignToCollections": { "message": "Sammlungen zuweisen" @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Die Bitwarden Browser-Erweiterung wurde erfolgreich geöffnet. Du kannst jetzt deine gefährdeten Passwörter überprüfen." }, - "openExtensionManuallyPart1": { - "message": "Wir hatten Probleme beim Öffnen der Bitwarden-Browser-Erweiterung. Öffne das Bitwarden-Symbol", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "in der Symbolleiste.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Dein Abonnement wird bald verlängert. Um einen ununterbrochenen Betrieb zu gewährleisten, kontaktiere $RESELLER$ um deine Verlängerung vor dem $RENEWAL_DATE$ zu bestätigen.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden-Erweiterung installiert!" }, - "openTheBitwardenExtension": { - "message": "Die Bitwarden-Erweiterung öffnen" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "Die Bitwarden-Erweiterung ist installiert! Öffne die Erweiterung, um dich anzumelden und das automatische Ausfüllen zu starten." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden-Erweiterung wurde installiert!" }, "openExtensionToAutofill": { "message": "Öffne die Erweiterung, um dich anzumelden und Auto-Ausfüllen zu nutzen." @@ -11687,6 +11684,14 @@ "message": "Lernzentrum", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "Falls sich die Erweiterung nicht geöffnet hat, musst du möglicherweise Bitwarden über das Symbol ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " in der Symbolleiste öffnen.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Hilfezentrum", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12119,13 +12124,13 @@ "message": "Kostenlose Families-Testversion starten" }, "blockClaimedDomainAccountCreation": { - "message": "Block account creation for claimed domains" + "message": "Erstellung von Konten für beanspruchte Domains blockieren" }, "blockClaimedDomainAccountCreationDesc": { - "message": "Prevent users from creating accounts outside of your organization using email addresses from claimed domains." + "message": "Verhindere, dass Benutzer außerhalb deiner Organisation Konten mit E-Mail-Adressen aus beanspruchten Domains erstellen." }, "blockClaimedDomainAccountCreationPrerequisite": { - "message": "A domain must be claimed before activating this policy." + "message": "Vor der Aktivierung dieser Richtlinie muss eine Domain beansprucht werden." }, "unlockMethodNeededToChangeTimeoutActionDesc": { "message": "Richte eine Entsperrmethode ein, um deine Aktion bei Tresor-Timeout zu ändern." @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Bist du sicher, dass du fortfahren möchtest?" + }, + "userVerificationFailed": { + "message": "Benutzerverifizierung fehlgeschlagen." } } diff --git a/apps/web/src/locales/el/messages.json b/apps/web/src/locales/el/messages.json index 5e937df4a2..3a23bb286e 100644 --- a/apps/web/src/locales/el/messages.json +++ b/apps/web/src/locales/el/messages.json @@ -9820,6 +9820,14 @@ "message": "Πολύ ακριβό", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Δωρεάν για 1 χρόνο" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/en_GB/messages.json b/apps/web/src/locales/en_GB/messages.json index 7e0f79f9a1..643601f54f 100644 --- a/apps/web/src/locales/en_GB/messages.json +++ b/apps/web/src/locales/en_GB/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organisation", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Centre", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Centre", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/en_IN/messages.json b/apps/web/src/locales/en_IN/messages.json index 864f66ade8..29271d771d 100644 --- a/apps/web/src/locales/en_IN/messages.json +++ b/apps/web/src/locales/en_IN/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organisation", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Centre", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Centre", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/eo/messages.json b/apps/web/src/locales/eo/messages.json index 3ec660dc5b..da4490d049 100644 --- a/apps/web/src/locales/eo/messages.json +++ b/apps/web/src/locales/eo/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "el la ilarbreto", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/es/messages.json b/apps/web/src/locales/es/messages.json index b69c4ebf82..ac5ca868b0 100644 --- a/apps/web/src/locales/es/messages.json +++ b/apps/web/src/locales/es/messages.json @@ -9820,6 +9820,14 @@ "message": "Demasiado caro", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Gratis durante 1 año" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/et/messages.json b/apps/web/src/locales/et/messages.json index f96af49235..186c0f1f25 100644 --- a/apps/web/src/locales/et/messages.json +++ b/apps/web/src/locales/et/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/eu/messages.json b/apps/web/src/locales/eu/messages.json index 20aec32c79..e494c663b7 100644 --- a/apps/web/src/locales/eu/messages.json +++ b/apps/web/src/locales/eu/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/fa/messages.json b/apps/web/src/locales/fa/messages.json index 56aa148b77..ff39b14c05 100644 --- a/apps/web/src/locales/fa/messages.json +++ b/apps/web/src/locales/fa/messages.json @@ -3,7 +3,7 @@ "message": "همه‌ برنامه‌ها" }, "activity": { - "message": "Activity" + "message": "فعالیت" }, "appLogoLabel": { "message": "لوگو Bitwarden" @@ -21,13 +21,13 @@ "message": "خطر کلمه عبور" }, "noEditPermissions": { - "message": "You don't have permission to edit this item" + "message": "شما مجاز به ویرایش این مورد نیستید" }, "reviewAtRiskPasswords": { "message": "کلمات عبور در معرض خطر (ضعیف، افشا شده یا تکراری) را در برنامه‌ها بررسی کنید. برنامه‌های حیاتی خود را انتخاب کنید تا اقدامات امنیتی را برای کاربران‌تان اولویت‌بندی کنید و به کلمات عبور در معرض خطر رسیدگی کنید." }, "reviewAtRiskLoginsPrompt": { - "message": "Review at-risk logins" + "message": "بررسی ورودهای پرخطر" }, "dataLastUpdated": { "message": "آخرین به‌روزرسانی داده‌ها: $DATE$", @@ -39,7 +39,7 @@ } }, "noReportRan": { - "message": "You have not created a report yet" + "message": "شما هنوز گزارشی ایجاد نکرده‌اید" }, "notifiedMembers": { "message": "اعضای مطلع شده" @@ -66,7 +66,7 @@ "message": "ایجاد مورد ورود جدید" }, "percentageCompleted": { - "message": "$PERCENT$% complete", + "message": "$PERCENT$ درصد انجام شده", "placeholders": { "percent": { "content": "$1", @@ -75,7 +75,7 @@ } }, "securityTasksCompleted": { - "message": "$COUNT$ out of $TOTAL$ security tasks completed", + "message": "$COUNT$ مورد از $TOTAL$ کار امنیتی انجام شده است", "placeholders": { "count": { "content": "$1", @@ -88,28 +88,28 @@ } }, "passwordChangeProgress": { - "message": "Password change progress" + "message": "وضعیت تغییر رمزهای عبور" }, "assignMembersTasksToMonitorProgress": { - "message": "Assign members tasks to monitor progress" + "message": "به اعضا وظیفه بدهید تا روند کار را رصد کنند" }, "onceYouReviewApplications": { - "message": "Once you review applications and mark them as critical, assign tasks to your members to change their passwords." + "message": "وقتی برنامه‌ها را بررسی کردید و آنها را به عنوان مهم علامت زدید، به اعضای تیم خود وظیفه دهید که رمزهایشان را تغییر دهند." }, "sendReminders": { - "message": "Send reminders" + "message": "ارسال يادآوری" }, "onceYouMarkApplicationsCriticalTheyWillDisplayHere": { - "message": "Once you mark applications critical, they will display here." + "message": "وقتی برنامه‌ای را مهم علامت بزنید، اینجا نمایش داده می‌شود." }, "viewAtRiskMembers": { - "message": "View at-risk members" + "message": "مشاهده اعضای در خطر" }, "viewAtRiskApplications": { - "message": "View at-risk applications" + "message": "مشاهده برنامه‌های در خطر" }, "criticalApplicationsAreAtRisk": { - "message": "$COUNT$ out of $TOTAL$ critical applications are at-risk due to at-risk passwords", + "message": "$COUNT$ مورد از $TOTAL$ برنامه مهم به دلیل رمزهای ضعیف در خطر هستند", "placeholders": { "count": { "content": "$1", @@ -131,10 +131,10 @@ } }, "criticalApplicationsMarked": { - "message": "critical applications marked" + "message": "برنامه‌های مهم علامت‌گذاری شده" }, "countOfCriticalApplications": { - "message": "$COUNT$ critical applications", + "message": "$COUNT$ برنامه مهم", "placeholders": { "count": { "content": "$1", @@ -143,7 +143,7 @@ } }, "countOfApplicationsAtRisk": { - "message": "$COUNT$ applications at-risk", + "message": "$COUNT$ رمز عبور در خطر", "placeholders": { "count": { "content": "$1", @@ -152,7 +152,7 @@ } }, "countOfAtRiskPasswords": { - "message": "$COUNT$ passwords at-risk", + "message": "$COUNT$ رمز عبور جدید در خطر", "placeholders": { "count": { "content": "$1", @@ -161,7 +161,7 @@ } }, "newPasswordsAtRisk": { - "message": "$COUNT$ new passwords at-risk", + "message": "$COUNT$ رمز عبور جدید در خطر", "placeholders": { "count": { "content": "$1", @@ -179,64 +179,64 @@ } }, "noDataInOrgTitle": { - "message": "No data found" + "message": "اطلاعاتی وجود ندارد" }, "noDataInOrgDescription": { - "message": "Import your organization's login data to get started with Access Intelligence. Once you do that, you'll be able to:" + "message": "اطلاعات ورود سازمان خود را وارد کنید تا با هوش دسترسی شروع کنید. بعد از این کار می‌توانید:" }, "feature1Title": { - "message": "Mark applications as critical" + "message": "علامت‌گذاری برنامه‌ها به عنوان مهم" }, "feature1Description": { - "message": "This will help you remove risks to your most important applications first." + "message": "این کار به شما کمک می‌کند ابتدا خطرات برنامه‌های مهم خود را برطرف کنید." }, "feature2Title": { - "message": "Help members improve their security" + "message": "کمک به اعضا برای بهبود امنیتشان" }, "feature2Description": { - "message": "Assign at-risk members guided security tasks to update credentials." + "message": "به اعضای در خطر وظایف امنیتی راهنما شده بدهید تا اطلاعات ورودشان را به‌روز کنند." }, "feature3Title": { - "message": "Monitor progress" + "message": "نظارت بر پیشرفت" }, "feature3Description": { - "message": "Track changes over time to show security improvements." + "message": "تغییرات را در طول زمان دنبال کنید تا بهبود امنیت را نشان دهید." }, "noReportsRunTitle": { - "message": "Generate report" + "message": "ایجاد گزارش" }, "noReportsRunDescription": { - "message": "You’re ready to start generating reports. Once you generate, you’ll be able to:" + "message": "شما آماده ایجاد گزارش هستید. بعد از ایجاد گزارش می‌توانید:" }, "noCriticalApplicationsTitle": { - "message": "You haven’t marked any applications as critical" + "message": "شما هیچ برنامه‌ای را به عنوان مهم علامت نزده‌اید" }, "noCriticalApplicationsDescription": { - "message": "Select your most critical applications to prioritize security actions for your users to address at-risk passwords." + "message": "مهم‌ترین برنامه‌های خود را انتخاب کنید تا اقدامات امنیتی برای کاربران در مورد رمزهای ضعیف اولویت‌بندی شود." }, "markCriticalApplications": { - "message": "Select critical applications" + "message": "انتخاب برنامه‌های مهم" }, "markAppAsCritical": { "message": "برنامه را به عنوان حیاتی علامت‌گذاری کنید" }, "markAsCritical": { - "message": "Mark as critical" + "message": "علامت‌گذاری به عنوان مهم" }, "applicationsSelected": { - "message": "applications selected" + "message": "برنامه انتخاب شده" }, "selectApplication": { - "message": "Select application" + "message": "برنامه را انتخاب کنید" }, "unselectApplication": { - "message": "Unselect application" + "message": "لغو انتخاب برنامه" }, "applicationsMarkedAsCriticalSuccess": { "message": "برنامه‌های علامت گذاری شده به عنوان حیاتی" }, "criticalApplicationsMarkedSuccess": { - "message": "$COUNT$ applications marked as critical", + "message": "$COUNT$ برنامه به عنوان مهم علامت زده شد", "placeholders": { "count": { "content": "$1", @@ -245,7 +245,7 @@ } }, "applicationsMarkedAsCriticalFail": { - "message": "Failed to mark applications as critical" + "message": "علامت‌گذاری برنامه‌ها به عنوان مهم ناموفق بود" }, "application": { "message": "برنامه" @@ -266,16 +266,16 @@ "message": "اعضای در معرض خطر" }, "membersWithAccessToAtRiskItemsForCriticalApplications": { - "message": "These members have access to vulnerable items for critical applications." + "message": "این اعضا به موارد آسیب‌پذیر برنامه‌های مهم دسترسی دارند." }, "membersWithAtRiskPasswords": { - "message": "Members with at-risk passwords" + "message": "اعضایی با رمزهای عبور ضعیف" }, "membersWillReceiveSecurityTask": { - "message": "Members of your organization will be assigned a task to change vulnerable passwords. They’ll receive a notification within their Bitwarden browser extension." + "message": "به اعضای سازمان شما وظیفه تغییر رمزهای آسیب‌پذیر داده می‌شود. آن‌ها در افزونه مرورگر Bitwarden خود اعلان دریافت می‌کنند." }, "membersAtRiskCount": { - "message": "$COUNT$ members at-risk", + "message": "$COUNT$ عضو در خطر", "placeholders": { "count": { "content": "$1", @@ -302,7 +302,7 @@ } }, "atRiskMemberDescription": { - "message": "These members are logging into critical applications with weak, exposed, or reused passwords." + "message": "این اعضا با رمزهای ضعیف، افشا شده یا تکراری وارد برنامه‌های مهم می‌شوند." }, "atRiskMembersDescriptionNone": { "message": "هیچ عضوی با کلمات عبور ضعیف، افشا شده یا تکراری وارد برنامه‌ها نمی‌شود." @@ -341,13 +341,13 @@ "message": "کل برنامه‌ها" }, "applicationsNeedingReview": { - "message": "Applications needing review" + "message": "برنامه‌هایی که نیاز به بررسی دارند" }, "newApplicationsCardTitle": { - "message": "Review new applications" + "message": "بررسی برنامه‌های جدید" }, "newApplicationsWithCount": { - "message": "$COUNT$ new applications", + "message": "$COUNT$ برنامه جدید", "placeholders": { "count": { "content": "$1", @@ -356,16 +356,16 @@ } }, "newApplicationsDescription": { - "message": "Review new applications to mark as critical and keep your organization secure" + "message": "برنامه‌های جدید را بررسی کنید، آنها را به عنوان مهم علامت بزنید و سازمان خود را ایمن نگه دارید" }, "reviewNow": { - "message": "Review now" + "message": "همین حالا بررسی کنید" }, "allCaughtUp": { - "message": "All caught up!" + "message": "همه چیز انجام شد!" }, "noNewApplicationsToReviewAtThisTime": { - "message": "No new applications to review at this time" + "message": "در حال حاضر برنامه جدیدی برای بررسی وجود ندارد" }, "organizationHasItemsSavedForApplications": { "message": "Your organization has items saved for $COUNT$ applications", @@ -9820,6 +9820,14 @@ "message": "خیلی گران است", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "رایگان برای یک سال" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "افزونه مرورگر Bitwarden با موفقیت باز شد. اکنون می‌توانید کلمات عبور در معرض خطر خود را بررسی کنید." }, - "openExtensionManuallyPart1": { - "message": "در باز کردن افزونه مرورگر Bitwarden مشکل داشتیم. آیکون Bitwarden را باز کنید", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "از نوار ابزار.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "اشتراک شما به‌زودی تمدید می‌شود. برای تضمین ادامه‌ی بدون وقفه‌ی خدمات، قبل از تاریخ $RENEWAL_DATE$ با $RESELLER$ تماس بگیرید و تمدید خود را تأیید کنید.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "افزونه Bitwarden نصب شد!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "افزونه را باز کنید تا وارد شوید و پر کردن خودکار را آغاز کنید." @@ -11687,6 +11684,14 @@ "message": "مرکز آموزش", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "مرکز راهنمایی", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/fi/messages.json b/apps/web/src/locales/fi/messages.json index a1332427b0..9710db5f28 100644 --- a/apps/web/src/locales/fi/messages.json +++ b/apps/web/src/locales/fi/messages.json @@ -9820,6 +9820,14 @@ "message": "Liian kallis", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Ilmainen 1 vuoden ajan" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/fil/messages.json b/apps/web/src/locales/fil/messages.json index 9935386d01..85b5797e63 100644 --- a/apps/web/src/locales/fil/messages.json +++ b/apps/web/src/locales/fil/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/fr/messages.json b/apps/web/src/locales/fr/messages.json index db3aa3090b..8103dcde46 100644 --- a/apps/web/src/locales/fr/messages.json +++ b/apps/web/src/locales/fr/messages.json @@ -9820,6 +9820,14 @@ "message": "Trop cher", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Passage à l'abonnement gratuit", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Passage à l'organisation gratuite", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Gratuit pour 1 an" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Ouverture réussie de l'extension du navigateur Bitwarden. Vous pouvez maintenant revoir vos mots de passe à risque." }, - "openExtensionManuallyPart1": { - "message": "Nous avons eu des difficultés à ouvrir l'extension de navigateur Bitwarden. Ouvrez l'icône Bitwarden", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "de la barre d'outils.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Votre abonnement sera renouvelé bientôt. Pour assurer un service ininterrompu, contactez $RESELLER$ pour confirmer votre renouvellement avant le $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "L'extension Bitwarden est installée !" }, - "openTheBitwardenExtension": { - "message": "Ouvrir l'extension Bitwarden" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "L'extension Bitwarden est installée! Ouvrez l'extension pour vous connecter et démarrer le remplissage automatique." + "bitwardenExtensionIsInstalled": { + "message": "L'extension Bitwarden est installée !" }, "openExtensionToAutofill": { "message": "Ouvrez l'extension pour vous connecter et démarrer le remplissage automatique." @@ -11687,6 +11684,14 @@ "message": "Centre d'apprentissage", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "Si l'extension n'est pas ouverte, vous devrez peut-être ouvrir Bitwarden à partir de l'icône ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " sur la barre d'outils.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Centre d’aide", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Êtes-vous sûr de vouloir continuer ?" + }, + "userVerificationFailed": { + "message": "La vérification de l'utilisateur a échoué." } } diff --git a/apps/web/src/locales/gl/messages.json b/apps/web/src/locales/gl/messages.json index 5ff4117909..ce34dee8f4 100644 --- a/apps/web/src/locales/gl/messages.json +++ b/apps/web/src/locales/gl/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/he/messages.json b/apps/web/src/locales/he/messages.json index f5f8bfd3c7..6560e2f222 100644 --- a/apps/web/src/locales/he/messages.json +++ b/apps/web/src/locales/he/messages.json @@ -9820,6 +9820,14 @@ "message": "יקר מדי", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "חינם לשנה אחת" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "פתח בהצלחה את הרחבת הדפדפן של Bitwarden. אתה יכול לסקור עכשיו את הסיסמאות בסיכון שלך." }, - "openExtensionManuallyPart1": { - "message": "התקשינו לפתוח את הרחבת הדפדפן של Bitwarden. פתח את הסמל של Bitwarden", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "מסרגל הכלים.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "המנוי שלך יתחדש בקרוב. כדי להבטיח שירות רציף, צור קשר עם $RESELLER$ כדי לאשר את החידוש שלך לפני $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "הרחבת Bitwarden הותקנה!" }, - "openTheBitwardenExtension": { - "message": "פתח את ההרחבה של Bitwarden" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "ההרחבה של Bitwarden הותקנה! פתח את ההרחבה כדי להיכנס ולהתחיל למלא אוטומטית." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "פתח את ההרחבה כדי להיכנס ולהתחיל למלא אוטומטית." @@ -11687,6 +11684,14 @@ "message": "מרכז הלמידה", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "מרכז העזרה", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/hi/messages.json b/apps/web/src/locales/hi/messages.json index b3ecb676b4..67dede6f1e 100644 --- a/apps/web/src/locales/hi/messages.json +++ b/apps/web/src/locales/hi/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/hr/messages.json b/apps/web/src/locales/hr/messages.json index 26a784acf5..8c548a71de 100644 --- a/apps/web/src/locales/hr/messages.json +++ b/apps/web/src/locales/hr/messages.json @@ -94,7 +94,7 @@ "message": "Dodijeli članovima zadatke za praćenje napretka" }, "onceYouReviewApplications": { - "message": "Once you review applications and mark them as critical, assign tasks to your members to change their passwords." + "message": "Nakon što pregledaš aplikacije i označiš ih kao kritične, dodijeli svojim članovima zadatke za promjenu lozinki." }, "sendReminders": { "message": "Pošalji podsjetnike" @@ -179,34 +179,34 @@ } }, "noDataInOrgTitle": { - "message": "No data found" + "message": "Nisu pronađeni podaci" }, "noDataInOrgDescription": { - "message": "Import your organization's login data to get started with Access Intelligence. Once you do that, you'll be able to:" + "message": "Uvezi podatke za prijavu svoje organizacije za korištenje usluge Access Intelligence. Nakon toga, moći ćeš:" }, "feature1Title": { - "message": "Mark applications as critical" + "message": "Označi aplikacije kao kritične" }, "feature1Description": { - "message": "This will help you remove risks to your most important applications first." + "message": "To će ti pomoći prvo ukloniti rizike za tvoje najvažnije aplikacije." }, "feature2Title": { - "message": "Help members improve their security" + "message": "Pomoći povećati sigurnost članova" }, "feature2Description": { - "message": "Assign at-risk members guided security tasks to update credentials." + "message": "Dodijeli vođene sigurnosne zadatke članovima u riziku za ažuriranje vjerodajnica." }, "feature3Title": { - "message": "Monitor progress" + "message": "Pratiti napredak" }, "feature3Description": { - "message": "Track changes over time to show security improvements." + "message": "Praćenje promjena tijekom vremena za prikaz sigurnosnih poboljšanja." }, "noReportsRunTitle": { - "message": "Generate report" + "message": "Stvarati izvješća" }, "noReportsRunDescription": { - "message": "You’re ready to start generating reports. Once you generate, you’ll be able to:" + "message": "Počni generirati izvješća. Nakon što ih generiraš, moći ćeš:" }, "noCriticalApplicationsTitle": { "message": "Niti jedna aplikacija nije označena kao kritična" @@ -266,13 +266,13 @@ "message": "Rizični korisnici" }, "membersWithAccessToAtRiskItemsForCriticalApplications": { - "message": "These members have access to vulnerable items for critical applications." + "message": "Ovi članovi imaju pristup ranjivim stavkama za kritične aplikacije." }, "membersWithAtRiskPasswords": { "message": "Članovi s rizičnim lozinkama" }, "membersWillReceiveSecurityTask": { - "message": "Members of your organization will be assigned a task to change vulnerable passwords. They’ll receive a notification within their Bitwarden browser extension." + "message": "Članovima tvoje organizacije biti će dodijeljen zadatak promjene ranjivih lozinki. Primiti će obavijest unutar Bitwarden proširenja preglednika." }, "membersAtRiskCount": { "message": "Rizičnih članova: $COUNT$", @@ -302,7 +302,7 @@ } }, "atRiskMemberDescription": { - "message": "These members are logging into critical applications with weak, exposed, or reused passwords." + "message": "Ovi članovi se prijavljuju u kritične aplikacije slabim, otkrivenim ili ponovno korištenim lozinkama." }, "atRiskMembersDescriptionNone": { "message": "Nema članova koji se prijavljuju slabim, izloženim ili ponovno korištenim lozinkama." @@ -386,13 +386,13 @@ "message": "Daj prioritet kritičnim aplikacijama" }, "selectCriticalAppsDescription": { - "message": "Select which applications are most critical to your organization. Then, you’ll be able to assign security tasks to members to remove risks." + "message": "Odaberi koje su aplikacije najvažnije za tvoju organizaciju. Zatim ćeš moći dodijeliti sigurnosne zadatke članovima kako bi se uklonili rizici." }, "reviewNewApplications": { "message": "Pregledaj nove prijave" }, "reviewNewAppsDescription": { - "message": "Review new applications with vulnerable items and mark those you’d like to monitor closely as critical. Then, you’ll be able to assign security tasks to members to remove risks." + "message": "Pregledaj nove aplikacije s ranjivim stavkama i označi one koje želiš pomno pratiti kao kritične. Zatim ćeš moći dodijeliti sigurnosne zadatke članovima kako bi se uklonili rizici." }, "clickIconToMarkAppAsCritical": { "message": "Klikni ikonu zvjezdice za označavanje aplikacije kao kritične" @@ -3188,7 +3188,7 @@ "message": "Sve neplaćene pretplate naplatiti će se na tvoj način plaćanja." }, "paymentChargedWithTrial": { - "message": "Plan dolazi s besplatnom probnom verzijom od 7 dana. Tvoj način plaćanja neće biti terećen dok ne završi probno razdoblje. Možeš otkazati u bilo kojem trenutku." + "message": "Paket dolazi s besplatnom probnom verzijom od 7 dana. Tvoj način plaćanja neće biti terećen dok ne završi probno razdoblje. Možeš otkazati u bilo kojem trenutku." }, "paymentInformation": { "message": "Podaci o plaćanju" @@ -3419,7 +3419,7 @@ "message": "Naziv tvrtke" }, "chooseYourPlan": { - "message": "Odaberi svoj plan" + "message": "Odaberi svoj paket" }, "users": { "message": "Korisnici" @@ -3469,7 +3469,7 @@ "message": "Za privatnu upotrebu, za dijeljenje s obitelji i prijateljima." }, "planNameTeams": { - "message": "Timovi" + "message": "Teams" }, "planDescTeams": { "message": "Za male tvtke ili druge manje organizacije." @@ -3598,7 +3598,7 @@ } }, "trialPaidInfoMessage": { - "message": "Tvoj plan $PLAN$ će biti pretvoren u plaćenu pretplatu nakon isteka besplatnog probnog razdoblja od 7 dana.", + "message": "Tvoj paket $PLAN$ će biti pretvoren u plaćenu pretplatu nakon isteka besplatnog probnog razdoblja od 7 dana.", "placeholders": { "plan": { "content": "$1", @@ -4813,7 +4813,7 @@ } }, "subscriptionUserSeatsWithoutAdditionalSeatsOption": { - "message": "Možeš pozvati do $COUNT$ članova bez dodatnih troškova. Kontaktiraj korisničku podršku za nadogradnju plana i pozivanje više članova.", + "message": "Možeš pozvati do $COUNT$ članova bez dodatnih troškova. Kontaktiraj korisničku podršku za nadogradnju paketa i pozivanje više članova.", "placeholders": { "count": { "content": "$1", @@ -4822,7 +4822,7 @@ } }, "subscriptionFreePlan": { - "message": "Nije moguće pozvati više od $COUNT$ korisnika bez nadogradnje plana.", + "message": "Nije moguće pozvati više od $COUNT$ korisnika bez nadogradnje paketa.", "placeholders": { "count": { "content": "$1", @@ -4831,7 +4831,7 @@ } }, "subscriptionUpgrade": { - "message": "Nije moguće pozvati više od $COUNT$ korisnika bez nadogradnje plana.", + "message": "Nije moguće pozvati više od $COUNT$ korisnika bez nadogradnje paketa.", "placeholders": { "count": { "content": "$1", @@ -5810,7 +5810,7 @@ "description": "This is the policy description shown in the policy list." }, "organizationDataOwnershipDescContent": { - "message": "All items will be owned and saved to the organization, enabling organization-wide controls, visibility, and reporting. When turned on, a default collection will be available for each member to store items. Learn more about managing the ", + "message": "Sve će stavke biti u vlasništvu i spremljene u organizaciji, što će omogućiti kontrolu, vidljivost i izvještavanje na razini cijele organizacije. Kada je uključeno, svakom će članu biti dostupna zadana kolekcija za pohranu stavki. Saznaj više o upravljanju ", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'All items will be owned and saved to the organization, enabling organization-wide controls, visibility, and reporting. When turned on, a default collection will be available for each member to store items. Learn more about managing the credential lifecycle.'" }, "organizationDataOwnershipContentAnchor": { @@ -5994,7 +5994,7 @@ "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Custom roles is an enterprise feature. Contact our support team to upgrade your subscription'" }, "customNonEnterpriseError": { - "message": "Za uključivanje prilagođenih uloga, organizacija mora biti na planu Enterprise 2020." + "message": "Za uključivanje prilagođenih uloga organizacija mora biti na paketu Enterprise 2020." }, "permissions": { "message": "Dozvole" @@ -6891,7 +6891,7 @@ "message": "Nema sponzoriranog Families paketa" }, "nosponsoredFamiliesDetails": { - "message": "Sponzorirani ne-obiteljski paketi biti će prikazani ovdje" + "message": "Sponzorirani ne-obiteljski paketi će biti prikazani ovdje" }, "sponsorshipFreeBitwardenFamilies": { "message": "Članovi tvoje organizacije ispunjavaju uvjete za besplatni Bitwarden Families paket. Možeš sponzorirati besplatni Bitwarden Families paket za zaposlenike koji nisu članovi tvoje Bitwarden organizacije. Sponzoriranje ne-člana zahtijeva dostupno mjesto unutar vaše organizacije." @@ -6939,7 +6939,7 @@ "message": "Veza više nije valjana. Zamoli sponzora da pošalje novu ponudu." }, "reclaimedFreePlan": { - "message": "Obnovljeni besplatni plan" + "message": "Obnovljeni besplatni paket" }, "redeem": { "message": "Iskoristi" @@ -7242,7 +7242,7 @@ "message": "Vlastiti poslužitelj" }, "selfHostingEnterpriseOrganizationSectionCopy": { - "message": "Za postavljanje svoje organizacije na vlastitom poslužitelju, morat ćeš prenijeti datoteku licence. Kako bi podržali besplatne Families pakete i napredne mogućnosti naplate za svoju samostalnu organizaciju, morat ćeš postaviti sinkronizaciju naplate." + "message": "Za postavljanje svoje organizacije na vlastitom poslužitelju, morat ćeš prenijeti datoteku licence. Kako bi besplatni Families paketi i napredne mogućnosti naplate bili podržani u tvojoj samostalnoj organizaciji, morat ćeš postaviti sinkronizaciju naplate." }, "billingSyncApiKeyRotated": { "message": "Token rotiran" @@ -8626,7 +8626,7 @@ "message": "Zamijeni proizvode" }, "freeOrgInvLimitReachedManageBilling": { - "message": "Besplatne organizacije mogu imati do $SEATCOUNT$ članova. Nadogradi na plaćeni plan za pozivanje više članova.", + "message": "Besplatne organizacije mogu imati do $SEATCOUNT$ članova. Nadogradi na plaćeni paket za pozivanje više članova.", "placeholders": { "seatcount": { "content": "$1", @@ -8644,7 +8644,7 @@ } }, "teamsStarterPlanInvLimitReachedManageBilling": { - "message": "Teams Starter plan može imati do $SEATCOUNT$ članova. Nadogradi svoj plan za pozivanje više članova.", + "message": "Teams Starter paket može imati do $SEATCOUNT$ članova. Nadogradi svoj paket za pozivanje više članova.", "placeholders": { "seatcount": { "content": "$1", @@ -8653,7 +8653,7 @@ } }, "teamsStarterPlanInvLimitReachedNoManageBilling": { - "message": "Teams Starter plan može imati do $SEATCOUNT$ članova. Kontaktiraj vlasnika svoje organizacije za nadogradnju plana i pozivanje više članova.", + "message": "Teams Starter paket može imati do $SEATCOUNT$ članova. Kontaktiraj vlasnika svoje organizacije za nadogradnju paketa i pozivanje više članova.", "placeholders": { "seatcount": { "content": "$1", @@ -8662,7 +8662,7 @@ } }, "freeOrgMaxCollectionReachedManageBilling": { - "message": "Besplatne organizacije mogu imati do $COLLECTIONCOUNT$ zbirki. Nadogradi na plaćeni plan za dodavanje više zbirki.", + "message": "Besplatne organizacije mogu imati do $COLLECTIONCOUNT$ zbirki. Nadogradi na plaćeni paket za dodavanje više zbirki.", "placeholders": { "COLLECTIONCOUNT": { "content": "$1", @@ -9494,13 +9494,13 @@ "message": "Predbilježi se za Secrets Manager" }, "addSecretsManagerUpgradeDesc": { - "message": "Dodajte Secrets Manager svojem nadograđenom planu za zadržavanje pristupa svim tajnama stvorenim sa svojim prethodnim planom." + "message": "Dodajte Secrets Manager svojem nadograđenom paketu za zadržavanje pristupa svim tajnama stvorenim sa svojim prethodnim planom." }, "additionalServiceAccounts": { "message": "Dodani servisni računi" }, "includedServiceAccounts": { - "message": "Plan uključuje $COUNT$ servisnih računa.", + "message": "Paket uključuje $COUNT$ servisnih računa.", "placeholders": { "count": { "content": "$1", @@ -9544,7 +9544,7 @@ "message": "Ažurirane postavke upravljanja zbirkama" }, "passwordManagerPlanPrice": { - "message": "Cijena plana za Upravitelj lozinkama" + "message": "Cijena paketa za Upravitelj lozinkama" }, "secretsManagerPlanPrice": { "message": "Cjenik Secrets Managera" @@ -9820,6 +9820,14 @@ "message": "Preskupo", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Prebacivanje na besplatni paket", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Prebacivanje na besplatnu organizaciju", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Besplatno godinu dana" }, @@ -9851,7 +9859,7 @@ "message": "Dodijeli zadatke" }, "assignSecurityTasksToMembers": { - "message": "Send notifications to change passwords" + "message": "Pošalji podsjetnike za promjenu lozinki" }, "assignToCollections": { "message": "Dodijeli zbirkama" @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Uspjšeno otvoreno Bitwarden proširenje preglednika. Sada možeš pregledati svoje rizične lozinke." }, - "openExtensionManuallyPart1": { - "message": "Nismo mogli otvoriti Bitwarden proširenje preglednika. Otvori Bitwarden ikonu", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "na alatnoj traci.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Tvoja će se pretplata uskoro obnoviti. Za neprekinutu uslugu, kontaktiraj $RESELLER$ za potvrdu obnove prije $RENEWAL_DATE$.", "placeholders": { @@ -11506,7 +11506,7 @@ "message": "Pregled događaja" }, "cannotCreateCollection": { - "message": "Besplatne organizacije mogu imati do 2 zbirke. Nadogradi na plaćeni plan za dodavanje više zbirki." + "message": "Besplatne organizacije mogu imati do 2 zbirke. Nadogradi na plaćeni paket za dodavanje više zbirki." }, "searchArchive": { "message": "Pretraži arhivu" @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden proširenje je instalirano!" }, - "openTheBitwardenExtension": { - "message": "Otvori Bitwarden proširenje" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "Instalirano je Bitwarden proširenje! Otvori ga za prijavu i početak auto-ispune." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Otvori proširenje i prijavi se za početak korištenja auto-ispune." @@ -11687,6 +11684,14 @@ "message": "centar za učenje", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "centar za pomoć", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -11814,7 +11819,7 @@ } }, "subscribeEnterpriseSubtitle": { - "message": "Tvoj 7-dnevni probni rok za plan $PLAN$ počinje danas. Dodaj način plaćanja za nastavak korištenja značajki nakon završetka probnog roka: ", + "message": "Tvoj 7-dnevni probni rok za paket $PLAN$ počinje danas. Dodaj način plaćanja za nastavak korištenja značajki nakon završetka probnog roka: ", "placeholders": { "plan": { "content": "$1", @@ -11939,7 +11944,7 @@ "message": "Napredne mogućnosti za bilo koju organizaciju" }, "planNameCustom": { - "message": "Vlastiti plan" + "message": "Vlastiti paket" }, "planDescCustom": { "message": "Bitwarden se prilagođava tvrtkama svih veličina kako bi osigurao lozinke i osjetljive podatke. Ako si dio velike tvrtke, zatraži ponudu od odjela prodaje." @@ -12119,13 +12124,13 @@ "message": "Započni besplatno probno razdoblje za Families" }, "blockClaimedDomainAccountCreation": { - "message": "Block account creation for claimed domains" + "message": "Blokiraj stvaranje računa za potvrđene domene" }, "blockClaimedDomainAccountCreationDesc": { - "message": "Prevent users from creating accounts outside of your organization using email addresses from claimed domains." + "message": "Spriječi korisnike da stvaraju račune izvan organizacije koristeći adrese e-pošte s potvrđenim domenama." }, "blockClaimedDomainAccountCreationPrerequisite": { - "message": "A domain must be claimed before activating this policy." + "message": "Domena mora biti potvrđena prije aktiviranja ovog pravila." }, "unlockMethodNeededToChangeTimeoutActionDesc": { "message": "Postavi metodu otključavanja za promjenu radnje nakon isteka vremenskog ograničenja trezora." @@ -12162,9 +12167,12 @@ } }, "confirmNoSelectedCriticalApplicationsTitle": { - "message": "No critical applications are selected" + "message": "Nisu odabrane kritične aplikacije" }, "confirmNoSelectedCriticalApplicationsDesc": { - "message": "Are you sure you want to continue?" + "message": "Sigurno želiš nastaviti?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/hu/messages.json b/apps/web/src/locales/hu/messages.json index 82a892eb09..f626e348e7 100644 --- a/apps/web/src/locales/hu/messages.json +++ b/apps/web/src/locales/hu/messages.json @@ -9820,6 +9820,14 @@ "message": "Túl drága", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Váltás ingyenes díkcsomagra", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Váltás ingyenes szervezetre", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Díjmentes 1 évre" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Sikeresen megnyitottuk a Bitwarden böngésző bővítményt. Mostantól áttekinthetjük a veszélyeztetett jelszavakat." }, - "openExtensionManuallyPart1": { - "message": "Probléma merült fel a Bitward böngésző bővítmény megnyitásakor. Nyissuk meg a Bitwarden ikont", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "az eszköztárból.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Az előfizetés hamarosan megújul. A folyamatos szolgáltatás biztosítása érdekében lépjünk kapcsolatba $RESELLER$ viszonteladóval és erősítsük meg a megújítást $RENEWAL_DATE$ előtt.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "A Bitwarden bővítmény megnyitása" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "A Bitwarden bővítmény telepítve van! Nyissuk meg a bővítményt a bejelentkezéshez és az automatikus kitöltés megkezdéséhez." + "bitwardenExtensionIsInstalled": { + "message": "A Bitwarden kiterjesztés telepítésre került!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "Ha a bővítmény nem nyílt meg, előfordulhat, hogy meg kell nyitni a Bitwardent az ikonról ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": "az eszköztárból.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Biztos folytatni szeretnénk?" + }, + "userVerificationFailed": { + "message": "A felhasználó ellenőrzése sikertelen volt." } } diff --git a/apps/web/src/locales/id/messages.json b/apps/web/src/locales/id/messages.json index 86b9356ac0..639063ca30 100644 --- a/apps/web/src/locales/id/messages.json +++ b/apps/web/src/locales/id/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/it/messages.json b/apps/web/src/locales/it/messages.json index ffc82cfcb4..14da6d6be5 100644 --- a/apps/web/src/locales/it/messages.json +++ b/apps/web/src/locales/it/messages.json @@ -21,13 +21,13 @@ "message": "Rischio password" }, "noEditPermissions": { - "message": "You don't have permission to edit this item" + "message": "Non hai i permessi per modificare questo elemento" }, "reviewAtRiskPasswords": { "message": "Controlla le password a rischio (deboli, esposte o riutilizzate). Seleziona le applicazioni critiche per determinare la priorità delle azioni di sicurezza." }, "reviewAtRiskLoginsPrompt": { - "message": "Review at-risk logins" + "message": "Rivedi i login a rischio" }, "dataLastUpdated": { "message": "Ultimo aggiornamento dei dati: $DATE$", @@ -94,7 +94,7 @@ "message": "Assegna compiti ai membri per monitorarne i progressi" }, "onceYouReviewApplications": { - "message": "Once you review applications and mark them as critical, assign tasks to your members to change their passwords." + "message": "Dopo aver esaminato le applicazioni e contrassegnato quelle critiche, comunica ai membri dell'organizzazione di cambiare le loro password." }, "sendReminders": { "message": "Invia promemoria" @@ -131,7 +131,7 @@ } }, "criticalApplicationsMarked": { - "message": "critical applications marked" + "message": "applicazioni critiche contrassegnate" }, "countOfCriticalApplications": { "message": "$COUNT$ applicazioni critiche", @@ -179,34 +179,34 @@ } }, "noDataInOrgTitle": { - "message": "No data found" + "message": "Nessun dato disponibile" }, "noDataInOrgDescription": { - "message": "Import your organization's login data to get started with Access Intelligence. Once you do that, you'll be able to:" + "message": "Importa i dati di accesso della tua organizzazione per configurare Access Intelligence. Una volta fatto, sarai in grado di:" }, "feature1Title": { - "message": "Mark applications as critical" + "message": "Contrassegna l'applicazione come critica" }, "feature1Description": { - "message": "This will help you remove risks to your most important applications first." + "message": "Ti sarà utile per rimuovere i rischi innanzi tutto per le tue applicazioni più importanti." }, "feature2Title": { - "message": "Help members improve their security" + "message": "Aiuta i membri a migliorare la loro sicurezza" }, "feature2Description": { - "message": "Assign at-risk members guided security tasks to update credentials." + "message": "Assegna ai membri a rischio attività di sicurezza guidate per aggiornare, migliorare o rafforzare le loro credenziali di accesso." }, "feature3Title": { - "message": "Monitor progress" + "message": "Tieni sotto controllo i progressi" }, "feature3Description": { - "message": "Track changes over time to show security improvements." + "message": "Traccia i cambiamenti per monitorare i miglioramenti di sicurezza." }, "noReportsRunTitle": { - "message": "Generate report" + "message": "Genera un report" }, "noReportsRunDescription": { - "message": "You’re ready to start generating reports. Once you generate, you’ll be able to:" + "message": "Sei pronto per iniziare a generare report. Una volta generati, sarai in grado di:" }, "noCriticalApplicationsTitle": { "message": "Non hai contrassegnato nessuna applicazione come critica" @@ -224,7 +224,7 @@ "message": "Contrassegna l'elemento come critico" }, "applicationsSelected": { - "message": "Applicazioni selezionate" + "message": "applicazioni selezionate" }, "selectApplication": { "message": "Seleziona applicazione" @@ -236,7 +236,7 @@ "message": "Applicazioni contrassegnate come critiche" }, "criticalApplicationsMarkedSuccess": { - "message": "$COUNT$ applications marked as critical", + "message": "$COUNT$ applicazioni contrassegnate come critiche", "placeholders": { "count": { "content": "$1", @@ -266,13 +266,13 @@ "message": "Membri a rischio" }, "membersWithAccessToAtRiskItemsForCriticalApplications": { - "message": "These members have access to vulnerable items for critical applications." + "message": "Questi membri hanno accesso a elementi vulnerabili per applicazioni critiche." }, "membersWithAtRiskPasswords": { - "message": "Members with at-risk passwords" + "message": "Membri con password a rischio" }, "membersWillReceiveSecurityTask": { - "message": "Members of your organization will be assigned a task to change vulnerable passwords. They’ll receive a notification within their Bitwarden browser extension." + "message": "I membri della tua organizzazione dovranno cambiare le password vulnerabili. Riceveranno una notifica all'interno dell'estensione Bitwarden del loro browser." }, "membersAtRiskCount": { "message": "$COUNT$ membri a rischio", @@ -302,7 +302,7 @@ } }, "atRiskMemberDescription": { - "message": "These members are logging into critical applications with weak, exposed, or reused passwords." + "message": "Questi membri accedono ad applicazioni con password deboli, esposte, o riutilizzate." }, "atRiskMembersDescriptionNone": { "message": "Non ci sono utenti connessi con password deboli, esposte o riutilizzate." @@ -344,7 +344,7 @@ "message": "Applicazioni in attesa di revisione" }, "newApplicationsCardTitle": { - "message": "Review new applications" + "message": "Verifica le nuove applicazioni" }, "newApplicationsWithCount": { "message": "$COUNT$ nuove applicazioni", @@ -362,13 +362,13 @@ "message": "Controlla adesso" }, "allCaughtUp": { - "message": "All caught up!" + "message": "Nessuna notifica" }, "noNewApplicationsToReviewAtThisTime": { - "message": "No new applications to review at this time" + "message": "Nessuna nuova applicazione da verificare" }, "organizationHasItemsSavedForApplications": { - "message": "Your organization has items saved for $COUNT$ applications", + "message": "La tua organizzazione ha elementi salvati per $COUNT$ applicazioni", "placeholders": { "count": { "content": "$1", @@ -377,40 +377,40 @@ } }, "reviewApplicationsToSecureItems": { - "message": "Review applications to secure the items most critical to your organization's security" + "message": "Controlla le applicazioni e proteggi gli elementi critici per la sicurezza della tua organizzazione" }, "reviewApplications": { - "message": "Review applications" + "message": "Verifica le nuove applicazioni" }, "prioritizeCriticalApplications": { "message": "Priorità alle applicazioni critiche" }, "selectCriticalAppsDescription": { - "message": "Select which applications are most critical to your organization. Then, you’ll be able to assign security tasks to members to remove risks." + "message": "Indica quali sono le applicazioni più importanti la tua organizzazione. Potrai assegnare ai membri delle attività da completare per mettere in sicurezza le loro credenziali." }, "reviewNewApplications": { - "message": "Review new applications" + "message": "Verifica le nuove applicazioni" }, "reviewNewAppsDescription": { - "message": "Review new applications with vulnerable items and mark those you’d like to monitor closely as critical. Then, you’ll be able to assign security tasks to members to remove risks." + "message": "Rivedi le nuove applicazioni con elementi vulnerabili e contrassegna come critiche quelle che desideri monitorare da vicino. Potrai assegnare ai membri delle attività da completare per mettere in sicurezza le loro credenziali." }, "clickIconToMarkAppAsCritical": { - "message": "Click the star icon to mark an app as critical" + "message": "Clicca sull'icona stella per contrassegnare un'app come critica" }, "markAsCriticalPlaceholder": { "message": "La funzionalità per contrassegnare gli elementi critici sarà implementata in un aggiornamento futuro" }, "applicationReviewSaved": { - "message": "Application review saved" + "message": "Applicazione verificata" }, "newApplicationsReviewed": { - "message": "New applications reviewed" + "message": "Nuove applicazioni verificate" }, "errorSavingReviewStatus": { - "message": "Error saving review status" + "message": "Errore nell'aggiornamento dello stato di verifica" }, "pleaseTryAgain": { - "message": "Please try again" + "message": "Riprova" }, "unmarkAsCritical": { "message": "Contrassegna l'elemento come non critico" @@ -875,7 +875,7 @@ "message": "Preferiti" }, "taskSummary": { - "message": "Task summary" + "message": "Riepilogo attività" }, "types": { "message": "Tipi" @@ -1402,7 +1402,7 @@ "message": "Usa login unificato (SSO)" }, "yourOrganizationRequiresSingleSignOn": { - "message": "Your organization requires single sign-on." + "message": "La tua organizzazione richiede un accesso Single Sign-On (SSO)." }, "welcomeBack": { "message": "Bentornato/a" @@ -3245,16 +3245,16 @@ "message": "Prossimo addebito" }, "nextChargeHeader": { - "message": "Next Charge" + "message": "Prossimo addebito" }, "plan": { - "message": "Plan" + "message": "Piano" }, "details": { "message": "Dettagli" }, "discount": { - "message": "discount" + "message": "sconto" }, "downloadLicense": { "message": "Scarica licenza" @@ -4461,31 +4461,31 @@ "message": "Aggiorna browser" }, "generatingYourAccessIntelligence": { - "message": "Generating your Access Intelligence..." + "message": "Generazione del tuo Access Intelligence..." }, "fetchingMemberData": { - "message": "Fetching member data..." + "message": "Recupero dei dati dei membri..." }, "analyzingPasswordHealth": { - "message": "Analyzing password health..." + "message": "Analisi della salute della password..." }, "calculatingRiskScores": { - "message": "Calculating risk scores..." + "message": "Calcolo dei punteggi di rischio..." }, "generatingReportData": { - "message": "Generating report data..." + "message": "Generazione dati del rapporto..." }, "savingReport": { - "message": "Saving report..." + "message": "Salvataggio..." }, "compilingInsights": { - "message": "Compiling insights..." + "message": "Compilazione dei dati..." }, "loadingProgress": { - "message": "Loading progress" + "message": "Caricamento in corso" }, "thisMightTakeFewMinutes": { - "message": "This might take a few minutes." + "message": "Attendi..." }, "riskInsightsRunReport": { "message": "Avvia report" @@ -4573,7 +4573,7 @@ "message": "Invito accettato" }, "invitationAcceptedDesc": { - "message": "Successfully accepted your invitation." + "message": "Hai accettato l'invito." }, "inviteInitAcceptedDesc": { "message": "Ora puoi accedere a questa organizzazione." @@ -5810,7 +5810,7 @@ "description": "This is the policy description shown in the policy list." }, "organizationDataOwnershipDescContent": { - "message": "All items will be owned and saved to the organization, enabling organization-wide controls, visibility, and reporting. When turned on, a default collection will be available for each member to store items. Learn more about managing the ", + "message": "Tutti gli elementi saranno posseduti e memorizzati dall'organizzazione, e saranno disponibili controlli, visibilità e reporting. Quando attivato, è disponibile una raccolta predefinita per ogni utente. Per sapere di più sulla gestione del ", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'All items will be owned and saved to the organization, enabling organization-wide controls, visibility, and reporting. When turned on, a default collection will be available for each member to store items. Learn more about managing the credential lifecycle.'" }, "organizationDataOwnershipContentAnchor": { @@ -5837,63 +5837,63 @@ "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Learn more about the credential lifecycle.'" }, "availableNow": { - "message": "Available now" + "message": "Disponibile ora" }, "autoConfirm": { - "message": "Automatic confirmation of new users" + "message": "Conferma automatica dei nuovi utenti" }, "autoConfirmDescription": { - "message": "New users invited to the organization will be automatically confirmed when an admin’s device is unlocked.", + "message": "I nuovi utenti invitati ad accedere all'organizzazione saranno automaticamente confermati quando il dispositivo di un amministratore è sbloccato.", "description": "This is the description of the policy as it appears in the 'Policies' page" }, "howToTurnOnAutoConfirm": { - "message": "How to turn on automatic user confirmation" + "message": "Come attivare la conferma automatica dell'utente" }, "autoConfirmExtension1": { - "message": "Open your Bitwarden extension" + "message": "Apri l'estensione di Bitwarden" }, "autoConfirmExtension2": { - "message": "Select", + "message": "Seleziona", "description": "This is a fragment of a larger sencence. The whole sentence will read: 'Select Turn on'" }, "autoConfirmExtension3": { - "message": " Turn on", + "message": " Attiva", "description": "This is a fragment of a larger sencence. The whole sentence will read: 'Select Turn on'" }, "autoConfirmExtensionOpened": { - "message": "Successfully opened the Bitwarden browser extension. You can now activate the automatic user confirmation setting." + "message": "L'estensione del browser Bitwarden è stata aperta con successo. Ora è possibile attivare l'impostazione di conferma automatica dell'utente." }, "autoConfirmPolicyEditDescription": { - "message": "New users invited to the organization will be automatically confirmed when an admin’s device is unlocked. Before turning on this policy, please review and agree to the following: ", + "message": "I nuovi utenti invitati ad accedere all'organizzazione saranno automaticamente confermati quando il dispositivo di un amministratore è sbloccato. Prima di attivare questa funzione, leggi attentamente e conferma di accettare quanto segue: ", "description": "This is the description of the policy as it appears inside the policy edit dialog" }, "autoConfirmAcceptSecurityRiskTitle": { - "message": "Potential security risk. " + "message": "Potenziale rischio per la sicurezza. " }, "autoConfirmAcceptSecurityRiskDescription": { - "message": "Automatic user confirmation could pose a security risk to your organization’s data." + "message": "La conferma automatica dell'utente potrebbe rappresentare un rischio per la sicurezza dei dati della tua organizzazione." }, "autoConfirmAcceptSecurityRiskLearnMore": { - "message": "Learn about the risks", + "message": "Scopri i rischi", "description": "The is the link copy for the first check box option in the edit policy dialog" }, "autoConfirmSingleOrgRequired": { - "message": "Single organization policy required. " + "message": "È richiesto il Single Sign-On (SSO)." }, "autoConfirmSingleOrgRequiredDesc": { - "message": "All members must only belong to this organization to activate this automation." + "message": "Tutti i membri devono appartenere esclusivamente a questa organizzazione per attivare questa automazione." }, "autoConfirmSingleOrgExemption": { - "message": "Single organization policy will extend to all roles. " + "message": "La politica di organizzazione unica si estenderà a tutti i ruoli. " }, "autoConfirmNoEmergencyAccess": { - "message": "No emergency access. " + "message": "Non è stato configurato l'accesso d'emergenza. " }, "autoConfirmNoEmergencyAccessDescription": { - "message": "Emergency Access will be removed." + "message": "L'accesso d'emergenza sarà rimosso." }, "autoConfirmCheckBoxLabel": { - "message": "I accept these risks and policy updates" + "message": "Accetto questi rischi e aggiornamenti sulle politiche" }, "personalOwnership": { "message": "Rimuovi cassaforte individuale" @@ -5948,16 +5948,16 @@ "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "uriMatchDetectionPolicy": { - "message": "Default URI match detection" + "message": "Metodo di corrispondenza degli URL predefinito" }, "uriMatchDetectionPolicyDesc": { - "message": "Determine when logins are suggested for autofill. Admins and owners are exempt from this policy." + "message": "Determina con quale logica i login sono suggeriti in base all'URL visitato. Amministratori e proprietari possono modificare questa impostazione." }, "uriMatchDetectionOptionsLabel": { - "message": "Default URI match detection" + "message": "Metodo di corrispondenza predefinito" }, "invalidUriMatchDefaultPolicySetting": { - "message": "Please select a valid URI match detection option.", + "message": "Scegli un metodo di corrispondenza valido.", "description": "Error message displayed when a user attempts to save URI match detection policy settings with an invalid selection." }, "modifiedPolicyId": { @@ -6614,10 +6614,10 @@ "message": "La tua password principale non soddisfa uno o più politiche della tua organizzazione. Per accedere alla cassaforte, aggiornala ora. Procedere ti farà uscire dalla sessione corrente, richiedendoti di accedere di nuovo. Le sessioni attive su altri dispositivi potrebbero continuare a rimanere attive per un massimo di un'ora." }, "automaticAppLoginWithSSO": { - "message": "Automatic login with SSO" + "message": "Accesso automatico con SSO" }, "automaticAppLoginWithSSODesc": { - "message": "Extend SSO security and convenience to unmanaged apps. When users launch an app from your identity provider, their login details are automatically filled and submitted, creating a one-click, secure flow from the identity provider to the app." + "message": "Estendi la sicurezza e la comodità del Single Sign-On (SSO) alle app non gestite. Quando gli utenti lanciano un'app collegata, i dati di accesso sono inseriti e inviati automaticamente: si tratta di un flusso a singolo clic, velocissimo e sicuro, che unisce il provider d'identità all'applicazione." }, "automaticAppLoginIdpHostLabel": { "message": "Host Identity provider" @@ -6629,31 +6629,31 @@ "message": "La tua organizzazione ha aggiornato le tue opzioni di decrittazione. Per favore, imposta una master password per accedere alla tua cassaforte." }, "sessionTimeoutPolicyTitle": { - "message": "Session timeout" + "message": "Timeout della sessione" }, "sessionTimeoutPolicyDescription": { - "message": "Set a maximum session timeout for all members except owners." + "message": "Imposta un timeout di sessione massimo per tutti i membri tranne i proprietari." }, "maximumAllowedTimeout": { - "message": "Maximum allowed timeout" + "message": "Timeout massimo consentito" }, "maximumAllowedTimeoutRequired": { - "message": "Maximum allowed timeout is required." + "message": "È necessario impostare un limite massimo di timeout." }, "sessionTimeoutPolicyInvalidTime": { - "message": "Time is invalid. Change at least one value." + "message": "Valore non valido: prova ad inserirlo nuovamente." }, "sessionTimeoutAction": { - "message": "Session timeout action" + "message": "Azione al timeout della sessione" }, "immediately": { - "message": "Immediately" + "message": "Subito" }, "onSystemLock": { - "message": "On system lock" + "message": "Al blocco del dispositivo" }, "onAppRestart": { - "message": "On app restart" + "message": "Al riavvio dell'app" }, "hours": { "message": "Ore" @@ -6662,19 +6662,19 @@ "message": "Minuti" }, "sessionTimeoutConfirmationNeverTitle": { - "message": "Are you certain you want to allow a maximum timeout of \"Never\" for all members?" + "message": "Sei sicuro di voler disabilitare il valore massimo di timeout per tutti i membri?" }, "sessionTimeoutConfirmationNeverDescription": { - "message": "This option will save your members' encryption keys on their devices. If you choose this option, ensure that their devices are adequately protected." + "message": "Questa opzione salverà localmente la chiave crittografica di ogni membro sul suo dispositivo. Se scegli questa opzione, assicurati che i loro dispositivi siano adeguatamente protetti." }, "learnMoreAboutDeviceProtection": { - "message": "Learn more about device protection" + "message": "Ulteriori informazioni sulla protezione dei dispositivi" }, "sessionTimeoutConfirmationOnSystemLockTitle": { - "message": "\"System lock\" will only apply to the browser and desktop app" + "message": "'Blocco di sistema' si applica solo all'estensione del browser e all'app desktop" }, "sessionTimeoutConfirmationOnSystemLockDescription": { - "message": "The mobile and web app will use \"on app restart\" as their maximum allowed timeout, since the option is not supported." + "message": "Le versioni mobile e Web imposteranno un timeout al riavvio dell'app, perché l'opzione non è supportata." }, "vaultTimeoutPolicyInEffect": { "message": "Le politiche della tua organizzazione hanno impostato il timeout massimo consentito della tua cassaforte su $HOURS$ ore e $MINUTES$ minuti.", @@ -7218,7 +7218,7 @@ "message": "Devi aggiungere lo URL del server di base o almeno un ambiente personalizzato." }, "selfHostedEnvMustUseHttps": { - "message": "URLs must use HTTPS." + "message": "Gli indirizzi devono usare il protocollo HTTPS." }, "apiUrl": { "message": "URL del server API" @@ -7393,7 +7393,7 @@ "message": "Accesso negato. Non hai i permessi necessari per visualizzare questa pagina." }, "noPageAccess": { - "message": "You do not have access to this page" + "message": "Non hai accesso a questa pagina" }, "masterPassword": { "message": "Password principale" @@ -9820,6 +9820,14 @@ "message": "Troppo costoso", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Passaggio al piano gratuito", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Passaggio all'organizzazione gratuita", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Gratis per un anno" }, @@ -9851,7 +9859,7 @@ "message": "Assegna attività" }, "assignSecurityTasksToMembers": { - "message": "Send notifications to change passwords" + "message": "Invia notifiche ai membri per invitarli a modificare le loro password" }, "assignToCollections": { "message": "Assegna alle raccolte" @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "L'estensione di Bitwarden è installata e funzionante. Ora è possibile avere una panoramica delle password a rischio." }, - "openExtensionManuallyPart1": { - "message": "Non è stato possibile aprire l'estensione di Bitwarden. Clicca sull'icona di Bitwarden", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "dalla barra degli strumenti.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Il tuo abbonamento sarà rinnovato a breve. Per assicurarti un servizio continuativo, contatta $RESELLER$ e conferma il tuo rinnovo prima del $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Estensione di Bitwarden installata!" }, - "openTheBitwardenExtension": { - "message": "Apri l'estensione Bitwarden" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "L'estensione Bitwarden è installata! Clicca sul pulsante dell'estensione sulla barra del browser per accedere e avviare l'auto-riempimento." + "bitwardenExtensionIsInstalled": { + "message": "Estensione di Bitwarden installata!" }, "openExtensionToAutofill": { "message": "Apri l'estensione cliccando sul tasto della barra degli strumenti e accedi con i tuoi dati per attivare il riempimento automatico." @@ -11687,6 +11684,14 @@ "message": "Guida introduttiva", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "Se l'estensione non s'è avviata, potrebbe essere necessario cliccare sull'icona di Bitwarden ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " nella barra degli strumenti del browser.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "il Manuale di Bitwarden", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12083,73 +12088,73 @@ "message": "Vedi i piani Business" }, "updateEncryptionSettings": { - "message": "Update encryption settings" + "message": "Aggiorna le impostazioni di crittografia" }, "updateYourEncryptionSettings": { - "message": "Update your encryption settings" + "message": "Aggiorna le impostazioni di crittografia" }, "updateSettings": { - "message": "Update settings" + "message": "Aggiorna le impostazioni" }, "algorithm": { - "message": "Algorithm" + "message": "Algoritmo" }, "encryptionKeySettingsHowShouldWeEncryptYourData": { - "message": "Choose how Bitwarden should encrypt your vault data. All options are secure, but stronger methods offer better protection - especially against brute-force attacks. Bitwarden recommends the default setting for most users." + "message": "Scegli la modalità di crittografia per la tua cassaforte. Tutte le opzioni sono assolutamente sicure, ma alcuni metodi avanzati offrono una protezione superiore. Bitwarden consiglia l'impostazione predefinita per la maggior parte degli utenti." }, "encryptionKeySettingsIncreaseImproveSecurity": { - "message": "Increasing the values above the default will improve security, but your vault may take longer to unlock as a result." + "message": "Scegliere un valore superiore al predefinito aumenta il livello di sicurezza, ma la cassaforte potrebbe impiegare più tempo a sbloccarsi." }, "encryptionKeySettingsAlgorithmPopoverTitle": { - "message": "About encryption algorithms" + "message": "Informazioni sugli algoritmi di crittografia" }, "encryptionKeySettingsAlgorithmPopoverPBKDF2": { - "message": "PBKDF2-SHA256 is a well-tested encryption method that balances security and performance. Good for all users." + "message": "PBKDF2-SHA256 è un metodo di crittografia ben testato che bilancia sicurezza e prestazioni. Consigliato per tutti gli utenti." }, "encryptionKeySettingsAlgorithmPopoverArgon2Id": { - "message": "Argon2id offers stronger protection against modern attacks. Best for advanced users with powerful devices." + "message": "Argon2id offre una protezione più forte contro gli attacchi moderni. Consigliato per gli utenti avanzati con dispositivi potenti." }, "zipPostalCodeLabel": { - "message": "ZIP / Postal code" + "message": "CAP / codice postale" }, "cardNumberLabel": { - "message": "Card number" + "message": "Numero di carta" }, "startFreeFamiliesTrial": { - "message": "Start free Families trial" + "message": "Inizia la prova gratuita Famiglie" }, "blockClaimedDomainAccountCreation": { - "message": "Block account creation for claimed domains" + "message": "Blocca la creazione di account per domini rivendicati" }, "blockClaimedDomainAccountCreationDesc": { - "message": "Prevent users from creating accounts outside of your organization using email addresses from claimed domains." + "message": "Impedisci agli utenti di creare account al di fuori della tua organizzazione utilizzando indirizzi email da domini rivendicati." }, "blockClaimedDomainAccountCreationPrerequisite": { - "message": "A domain must be claimed before activating this policy." + "message": "Prima di attivare questa politica è necessario attivare un dominio." }, "unlockMethodNeededToChangeTimeoutActionDesc": { - "message": "Set up an unlock method to change your vault timeout action." + "message": "Imposta un metodo di sblocco per modificare l'azione al timeout della cassaforte." }, "vaultTimeoutPolicyAffectingOptions": { - "message": "Enterprise policy requirements have been applied to your timeout options" + "message": "Le impostazioni di timeout sono state impostate secondo le politiche aziendali" }, "vaultTimeoutTooLarge": { - "message": "Your vault timeout exceeds the restrictions set by your organization." + "message": "Il timeout della tua cassaforte supera i limiti impostati dalla tua organizzazione." }, "neverLockWarning": { - "message": "Are you sure you want to use the \"Never\" option? Setting your lock options to \"Never\" stores your vault's encryption key on your device. If you use this option you should ensure that you keep your device properly protected." + "message": "Vuoi davvero impostare il blocco su 'Mai'? In questa modalità, la chiave di decrittazione della cassaforte sarà conservata localmente sul tuo dispositivo: assicurati di mantenerlo protetto e al sicuro." }, "sessionTimeoutSettingsAction": { - "message": "Timeout action" + "message": "Azione al timeout" }, "sessionTimeoutHeader": { - "message": "Session timeout" + "message": "Timeout della sessione" }, "appearance": { - "message": "Appearance" + "message": "Aspetto" }, "vaultTimeoutPolicyMaximumError": { - "message": "Timeout exceeds the restriction set by your organization: $HOURS$ hour(s) and $MINUTES$ minute(s) maximum", + "message": "Il timeout supera la restrizione imposta dalla tua organizzazione: massimo $HOURS$ ora/e e $MINUTES$ minuto/i", "placeholders": { "hours": { "content": "$1", @@ -12162,9 +12167,12 @@ } }, "confirmNoSelectedCriticalApplicationsTitle": { - "message": "No critical applications are selected" + "message": "Non ci sono applicazioni contrassegnate come critiche" }, "confirmNoSelectedCriticalApplicationsDesc": { - "message": "Are you sure you want to continue?" + "message": "Vuoi davvero continuare?" + }, + "userVerificationFailed": { + "message": "Verifica dell'utente non riuscita." } } diff --git a/apps/web/src/locales/ja/messages.json b/apps/web/src/locales/ja/messages.json index 66f30f93f9..7143e958f9 100644 --- a/apps/web/src/locales/ja/messages.json +++ b/apps/web/src/locales/ja/messages.json @@ -9820,6 +9820,14 @@ "message": "料金が高すぎる", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "1年間無料" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/ka/messages.json b/apps/web/src/locales/ka/messages.json index c4069973d9..108df6dcdd 100644 --- a/apps/web/src/locales/ka/messages.json +++ b/apps/web/src/locales/ka/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/km/messages.json b/apps/web/src/locales/km/messages.json index b23e2e3cba..0d08d20774 100644 --- a/apps/web/src/locales/km/messages.json +++ b/apps/web/src/locales/km/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/kn/messages.json b/apps/web/src/locales/kn/messages.json index 49d834e9ca..c3b4fe8ebd 100644 --- a/apps/web/src/locales/kn/messages.json +++ b/apps/web/src/locales/kn/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/ko/messages.json b/apps/web/src/locales/ko/messages.json index 33d812d153..4063e7c62d 100644 --- a/apps/web/src/locales/ko/messages.json +++ b/apps/web/src/locales/ko/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/lv/messages.json b/apps/web/src/locales/lv/messages.json index 9b1b54cf0b..120b06b802 100644 --- a/apps/web/src/locales/lv/messages.json +++ b/apps/web/src/locales/lv/messages.json @@ -94,7 +94,7 @@ "message": "Piešķirt dalībniekiem uzdevumus, lai pārraudzītu virzību" }, "onceYouReviewApplications": { - "message": "Once you review applications and mark them as critical, assign tasks to your members to change their passwords." + "message": "Tiklīdz lietotnes ir izskatītas un atzīmētas kā būtiskas, piešķir uzdevumus dalībniekiem nomainīt savas paroles!" }, "sendReminders": { "message": "Nosūtīt atgādinājumus" @@ -179,13 +179,13 @@ } }, "noDataInOrgTitle": { - "message": "No data found" + "message": "Dati netika atrasti" }, "noDataInOrgDescription": { - "message": "Import your organization's login data to get started with Access Intelligence. Once you do that, you'll be able to:" + "message": "Ievieto savas apvienības pieteikšanās datus, lai uzsāktu Access Intelligence izmantošanu. Tiklīdz to izdarīsi, varēsi:" }, "feature1Title": { - "message": "Mark applications as critical" + "message": "Atzīmēt lietotnes kā būtiskas" }, "feature1Description": { "message": "This will help you remove risks to your most important applications first." @@ -5810,7 +5810,7 @@ "description": "This is the policy description shown in the policy list." }, "organizationDataOwnershipDescContent": { - "message": "All items will be owned and saved to the organization, enabling organization-wide controls, visibility, and reporting. When turned on, a default collection will be available for each member to store items. Learn more about managing the ", + "message": "Visi vienumi piederēs apvienībai un tiks tajā saglabāti, iespējojot visaptverošu pārvaldību, redzamību un ziņošanu apvienībā. Kad ieslēgta, noklusējuma krājums, kurā glabātat vienumus, būs pieejams katram dalībniekam. Uzzināt vairāk par ", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'All items will be owned and saved to the organization, enabling organization-wide controls, visibility, and reporting. When turned on, a default collection will be available for each member to store items. Learn more about managing the credential lifecycle.'" }, "organizationDataOwnershipContentAnchor": { @@ -9820,6 +9820,14 @@ "message": "Pārāk dārgi", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Pārslēdzas uz bezmaksas plānu", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Pārslēdzas uz bezmaksas apvienību", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "1 gadu bez maksas" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Bitwarden pārlūka paplašinājums tika veiksmīgi atvērts. Tagad var pārskatīt savas riskam pakļautās paroles." }, - "openExtensionManuallyPart1": { - "message": "Mums bija sarežģījumi Bitwarden pārlūka paplašinājuma atvēršanā. Rīkjoslā jāatver Bitwarden ikona", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "rīkjoslā.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Abonements drīz tiks atjaunots. Lai nodrošinātu nepārtrauktu pakalpojumu, pirms $RENEWAL_DATE$ jāsazinās ar $RESELLER$, lai apstiprinātu atjaunošanu.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden paplašinājums uzstādīts." }, - "openTheBitwardenExtension": { - "message": "Atvērt Bitwarden paplašinājumu" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "Bitwarden paplašinājums ir uzstādīts. Atver paplašinājumu, lai pieteiktos un sāktu automātsko aizpildīšanu!" + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden paplašinājums ir uzstādīts." }, "openExtensionToAutofill": { "message": "Jāatver paplašinājums, lai pieteiktos un uzsāktu automātisko aizpildi." @@ -11687,6 +11684,14 @@ "message": "Mācīšanāš centrs", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "Ja paplašinājums neatvērās, var būt nepieciešams atvērt Bitwarden ar ikonu ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " rīkjoslā.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Palīdzības centrs", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12119,13 +12124,13 @@ "message": "Uzsākt ģimenes plāna bezmaksas izmēģinājumu" }, "blockClaimedDomainAccountCreation": { - "message": "Block account creation for claimed domains" + "message": "Liegt konta izveidošanu pieteiktajiem domēniem" }, "blockClaimedDomainAccountCreationDesc": { - "message": "Prevent users from creating accounts outside of your organization using email addresses from claimed domains." + "message": "Neļaut lietotājiem kontu izveidošanu ārpus apvienības ar e-pasta adresēm no pieteikajiem domēniem." }, "blockClaimedDomainAccountCreationPrerequisite": { - "message": "A domain must be claimed before activating this policy." + "message": "Domēnam jābūt pieteiktam pirms šīs pamatnostādnes aktivēšanas." }, "unlockMethodNeededToChangeTimeoutActionDesc": { "message": "Jāuzstāda atslēgšanas veids, lai mainītu glabātavas noildzes darbību." @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Vai tiešām turpināt?" + }, + "userVerificationFailed": { + "message": "Lietotāja apliecināšana neizdevās." } } diff --git a/apps/web/src/locales/ml/messages.json b/apps/web/src/locales/ml/messages.json index 1632226b9c..5d7c304216 100644 --- a/apps/web/src/locales/ml/messages.json +++ b/apps/web/src/locales/ml/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/mr/messages.json b/apps/web/src/locales/mr/messages.json index b71d94fe31..8258598495 100644 --- a/apps/web/src/locales/mr/messages.json +++ b/apps/web/src/locales/mr/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/my/messages.json b/apps/web/src/locales/my/messages.json index b23e2e3cba..0d08d20774 100644 --- a/apps/web/src/locales/my/messages.json +++ b/apps/web/src/locales/my/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/nb/messages.json b/apps/web/src/locales/nb/messages.json index 33ff6b1fb5..87664f952a 100644 --- a/apps/web/src/locales/nb/messages.json +++ b/apps/web/src/locales/nb/messages.json @@ -9820,6 +9820,14 @@ "message": "For dyrt", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Gratis i 1 år" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Hjelpesenter", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/ne/messages.json b/apps/web/src/locales/ne/messages.json index d87792ef4b..e2e310d703 100644 --- a/apps/web/src/locales/ne/messages.json +++ b/apps/web/src/locales/ne/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/nl/messages.json b/apps/web/src/locales/nl/messages.json index 0d8840a188..fadbaa923d 100644 --- a/apps/web/src/locales/nl/messages.json +++ b/apps/web/src/locales/nl/messages.json @@ -9820,6 +9820,14 @@ "message": "Te duur", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Overstappen naar gratis abonnement", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Overstappen naar gratis organisatie", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "1 jaar gratis" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "De Bitwarden-browserextensie is geopend. Je kunt nu je risicovolle wachtwoorden bekijken." }, - "openExtensionManuallyPart1": { - "message": "We konden de Bitwarden-browserextensie niet openen. Open het Bitwarden-pictogram", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "vanaf de werkbalk.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Je abonnement wordt binnenkort verlengd. Neem voor $RENEWAL_DATE$ contact op met $RESELLER$ om je verlenging te bevestigen en een ononderbroken service te verzekeren.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extensie geïnstalleerd!" }, - "openTheBitwardenExtension": { - "message": "De Bitwarden-extensie openen" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "De Bitwarden-extensie is geïnstalleerd! Open de extensie om in te loggen en te beginnen met automatisch invullen." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden-extensie geïnstalleerd!" }, "openExtensionToAutofill": { "message": "Open de extensie om in te loggen en te beginnen met automatisch invullen." @@ -11687,6 +11684,14 @@ "message": "Leercentrum", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "Als de extensie niet is geopend, moet je misschien Bitwarden via het pictogram ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " op de werkbalk openen.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Helpcentrum", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Weet je zeker dat je wilt doorgaan?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/nn/messages.json b/apps/web/src/locales/nn/messages.json index 2777a14d5c..8dc4b88b64 100644 --- a/apps/web/src/locales/nn/messages.json +++ b/apps/web/src/locales/nn/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/or/messages.json b/apps/web/src/locales/or/messages.json index b23e2e3cba..0d08d20774 100644 --- a/apps/web/src/locales/or/messages.json +++ b/apps/web/src/locales/or/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/pl/messages.json b/apps/web/src/locales/pl/messages.json index 38b7fb51de..5db5acc944 100644 --- a/apps/web/src/locales/pl/messages.json +++ b/apps/web/src/locales/pl/messages.json @@ -9820,6 +9820,14 @@ "message": "Zbyt drogo", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Za darmo na 1 rok" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Pomyślnie otwarto rozszerzenie do przeglądarki. Teraz możesz przejrzeć swoje hasła zagrożone." }, - "openExtensionManuallyPart1": { - "message": "Wystąpił problem z otwarciem rozszerzenia przeglądarki. Otwórz ikonę Bitwarden", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "z paska narzędzi.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Twoja subskrypcja wkrótce zostanie odnowiona. Aby zapewnić ciągłość usług, skontaktuj się z $RESELLER$, aby potwierdzić odnowienie przed $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Rozszerzenie Bitwarden zainstalowane!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Otwórz rozszerzenie, aby zalogować się i rozpocząć autouzupełnianie." @@ -11687,6 +11684,14 @@ "message": "Centrum Szkoleniowe", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Centrum Pomocy", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/pt_BR/messages.json b/apps/web/src/locales/pt_BR/messages.json index 09dd1b14c4..a1fd3f271b 100644 --- a/apps/web/src/locales/pt_BR/messages.json +++ b/apps/web/src/locales/pt_BR/messages.json @@ -21,13 +21,13 @@ "message": "Risco de senhas" }, "noEditPermissions": { - "message": "You don't have permission to edit this item" + "message": "Você não tem permissão para editar este item" }, "reviewAtRiskPasswords": { - "message": "Revise senhas em risco (fracas, expostas, ou reutilizadas) em todos os aplicativos. Selecione seus aplicativos mais críticos para priorizar ações de segurança para que seus usuários resolvem senhas em risco." + "message": "Revise senhas em risco (fracas, expostas, ou reutilizadas) entre aplicativos. Selecione seus aplicativos mais críticos para priorizar ações de segurança para que seus usuários resolvem senhas em risco." }, "reviewAtRiskLoginsPrompt": { - "message": "Review at-risk logins" + "message": "Revisar credenciais em risco" }, "dataLastUpdated": { "message": "Última atualização dos dados: $DATE$", @@ -45,7 +45,7 @@ "message": "Membros notificados" }, "revokeMembers": { - "message": "Revogar membro" + "message": "Revogar membros" }, "restoreMembers": { "message": "Restaurar membros" @@ -63,7 +63,7 @@ } }, "createNewLoginItem": { - "message": "Criar credencial" + "message": "Criar item de credencial" }, "percentageCompleted": { "message": "$PERCENT$% concluído", @@ -91,10 +91,10 @@ "message": "Progresso de alteração de senha" }, "assignMembersTasksToMonitorProgress": { - "message": "Atribuir tarefas a membros para monitorar progresso" + "message": "Atribua tarefas a membros para monitorar o progresso" }, "onceYouReviewApplications": { - "message": "Once you review applications and mark them as critical, assign tasks to your members to change their passwords." + "message": "Depois que você revisar aplicativos e os marcar como críticos, atribua tarefas aos seus membros para alterar suas senhas." }, "sendReminders": { "message": "Enviar lembretes" @@ -103,10 +103,10 @@ "message": "Ao marcar aplicativos como críticos, eles aparecerão aqui." }, "viewAtRiskMembers": { - "message": "Visualizar membros em risco" + "message": "Ver membros em risco" }, "viewAtRiskApplications": { - "message": "Visualizar aplicativos em risco" + "message": "Ver aplicativos em risco" }, "criticalApplicationsAreAtRisk": { "message": "$COUNT$ aplicativos críticos dos $TOTAL$ estão em risco devido a senhas em risco", @@ -131,7 +131,7 @@ } }, "criticalApplicationsMarked": { - "message": "critical applications marked" + "message": "aplicativos críticos marcados" }, "countOfCriticalApplications": { "message": "$COUNT$ aplicativos críticos", @@ -161,7 +161,7 @@ } }, "newPasswordsAtRisk": { - "message": "$COUNT$ new passwords at-risk", + "message": "$COUNT$ novas senhas em risco", "placeholders": { "count": { "content": "$1", @@ -179,40 +179,40 @@ } }, "noDataInOrgTitle": { - "message": "No data found" + "message": "Nenhum dado encontrado" }, "noDataInOrgDescription": { - "message": "Import your organization's login data to get started with Access Intelligence. Once you do that, you'll be able to:" + "message": "Importe os dados de autenticação da sua organização para começar com a Inteligência de Acesso. Depois de fazer isso, você poderá:" }, "feature1Title": { - "message": "Mark applications as critical" + "message": "Marque aplicativos como críticos" }, "feature1Description": { - "message": "This will help you remove risks to your most important applications first." + "message": "Isso te ajudará a remover riscos dos seus aplicativos mais importantes primeiro." }, "feature2Title": { - "message": "Help members improve their security" + "message": "Ajude os membros a melhorar sua segurança" }, "feature2Description": { - "message": "Assign at-risk members guided security tasks to update credentials." + "message": "Atribua membros em risco tarefas guiadas de segurança para atualizar as credenciais." }, "feature3Title": { - "message": "Monitor progress" + "message": "Monitore o progresso" }, "feature3Description": { - "message": "Track changes over time to show security improvements." + "message": "Rastreie alterações ao longo do tempo para mostrar melhorias de segurança." }, "noReportsRunTitle": { - "message": "Generate report" + "message": "Gerar relatório" }, "noReportsRunDescription": { - "message": "You’re ready to start generating reports. Once you generate, you’ll be able to:" + "message": "Você está pronto para começar a gerar relatórios. Depois de gerar, você poderá:" }, "noCriticalApplicationsTitle": { "message": "Você não marcou nenhum aplicativo como crítico" }, "noCriticalApplicationsDescription": { - "message": "Selecione os seus aplicativos mais críticos para priorizar ações de segurança de correção de senhas em risco dos seus usuários." + "message": "Selecione os seus aplicativos mais críticos para priorizar ações de segurança dos seus usuários de correção de senhas em risco." }, "markCriticalApplications": { "message": "Selecionar aplicativos críticos" @@ -236,7 +236,7 @@ "message": "Aplicativos marcados como críticos" }, "criticalApplicationsMarkedSuccess": { - "message": "$COUNT$ applications marked as critical", + "message": "$COUNT$ aplicativos marcados como críticos", "placeholders": { "count": { "content": "$1", @@ -260,19 +260,19 @@ "message": "Total de senhas" }, "searchApps": { - "message": "Procurar aplicativos" + "message": "Buscar aplicativos" }, "atRiskMembers": { "message": "Membros em risco" }, "membersWithAccessToAtRiskItemsForCriticalApplications": { - "message": "These members have access to vulnerable items for critical applications." + "message": "Esses membros têm acesso a itens vulneráveis de aplicativos críticos." }, "membersWithAtRiskPasswords": { - "message": "Members with at-risk passwords" + "message": "Membros com senhas em risco" }, "membersWillReceiveSecurityTask": { - "message": "Members of your organization will be assigned a task to change vulnerable passwords. They’ll receive a notification within their Bitwarden browser extension." + "message": "Membros da sua organização serão atribuídos a uma tarefa para alterar senhas vulneráveis. Eles receberão uma notificação dentro da sua extensão de navegador do Bitwarden." }, "membersAtRiskCount": { "message": "$COUNT$ membros em risco", @@ -302,19 +302,19 @@ } }, "atRiskMemberDescription": { - "message": "These members are logging into critical applications with weak, exposed, or reused passwords." + "message": "Esses membros estão se conectando a aplicativos críticos com senhas fracas, expostas, ou reutilizadas." }, "atRiskMembersDescriptionNone": { - "message": "Não há nenhum membro se conectando em aplicativos com senhas fracas, expostas, ou reutilizadas." + "message": "Não há nenhum membro se conectando a aplicativos com senhas fracas, expostas, ou reutilizadas." }, "atRiskApplicationsDescription": { "message": "Esses aplicativos têm senhas fracas, expostas, ou reutilizadas." }, "atRiskApplicationsDescriptionNone": { - "message": "Não há aplicativos com senhas fracas, expostas ou reutilizadas." + "message": "Não há aplicativos com senhas fracas, expostas, ou reutilizadas." }, "atRiskMembersDescriptionWithApp": { - "message": "Esses membros estão conectando-se no $APPNAME$ com senhas fracas, expostas, ou reutilizadas.", + "message": "Esses membros estão se conectando a $APPNAME$ com senhas fracas, expostas, ou reutilizadas.", "placeholders": { "appname": { "content": "$1", @@ -344,7 +344,7 @@ "message": "Aplicativos que precisam de revisão" }, "newApplicationsCardTitle": { - "message": "Review new applications" + "message": "Revisar aplicativos novos" }, "newApplicationsWithCount": { "message": "$COUNT$ aplicativos novos", @@ -362,13 +362,13 @@ "message": "Revisar agora" }, "allCaughtUp": { - "message": "All caught up!" + "message": "Tudo pronto!" }, "noNewApplicationsToReviewAtThisTime": { - "message": "No new applications to review at this time" + "message": "Não há aplicativos novos para revisar neste momento" }, "organizationHasItemsSavedForApplications": { - "message": "Your organization has items saved for $COUNT$ applications", + "message": "A sua organização tem itens salvos para $COUNT$ aplicativos", "placeholders": { "count": { "content": "$1", @@ -377,46 +377,46 @@ } }, "reviewApplicationsToSecureItems": { - "message": "Review applications to secure the items most critical to your organization's security" + "message": "Revise os aplicativos para proteger os itens mais críticos para a segurança da sua organização" }, "reviewApplications": { - "message": "Review applications" + "message": "Revisar aplicativos" }, "prioritizeCriticalApplications": { "message": "Priorizar aplicativos críticos" }, "selectCriticalAppsDescription": { - "message": "Select which applications are most critical to your organization. Then, you’ll be able to assign security tasks to members to remove risks." + "message": "Selecione quais aplicativos são os mais críticos para a sua organização. E então, você poderá atribuir tarefas de segurança aos membros, para se livrar dos riscos." }, "reviewNewApplications": { - "message": "Review new applications" + "message": "Revisar aplicativos novos" }, "reviewNewAppsDescription": { - "message": "Review new applications with vulnerable items and mark those you’d like to monitor closely as critical. Then, you’ll be able to assign security tasks to members to remove risks." + "message": "Revise aplicativos novos com itens vulneráveis e marque aqueles que você gostaria de monitorar com atenção, como crítico. E então, você poderá atribuir tarefas de segurança aos membros, para se livrar de riscos." }, "clickIconToMarkAppAsCritical": { - "message": "Click the star icon to mark an app as critical" + "message": "Clique no ícone de estrela para marcar um aplicativo como crítico" }, "markAsCriticalPlaceholder": { - "message": "A funcionalidade de marcar como crítico será implementada em uma atualização futura" + "message": "O recurso de marcar como crítico será implementado em uma atualização futura" }, "applicationReviewSaved": { - "message": "Application review saved" + "message": "Revisão de aplicativo salva" }, "newApplicationsReviewed": { - "message": "New applications reviewed" + "message": "Novos aplicativos revisados" }, "errorSavingReviewStatus": { - "message": "Error saving review status" + "message": "Erro ao salvar o estado da revisão" }, "pleaseTryAgain": { - "message": "Please try again" + "message": "Tente novamente" }, "unmarkAsCritical": { "message": "Desmarcar como crítico" }, "criticalApplicationUnmarkedSuccessfully": { - "message": "Aplicativo desmarcado com sucesso como crítico" + "message": "Aplicativo desmarcado como crítico com sucesso" }, "whatTypeOfItem": { "message": "Que tipo de item é este?" @@ -441,19 +441,19 @@ "message": "Novo URI" }, "username": { - "message": "Nome de Usuário" + "message": "Nome de usuário" }, "password": { "message": "Senha" }, "newPassword": { - "message": "Nova senha" + "message": "Senha nova" }, "passphrase": { - "message": "Frase Secreta" + "message": "Frase secreta" }, "notes": { - "message": "Notas" + "message": "Anotações" }, "privateNote": { "message": "Anotação privada" @@ -468,13 +468,13 @@ "message": "Nome do titular do cartão" }, "loginCredentials": { - "message": "Credenciais de login" + "message": "Credenciais de acesso" }, "personalDetails": { "message": "Detalhes pessoais" }, "identification": { - "message": "Identidade" + "message": "Identificação" }, "contactInfo": { "message": "Informação de contato" @@ -483,7 +483,7 @@ "message": "Detalhes do cartão" }, "cardBrandDetails": { - "message": "Detalhes $BRAND$", + "message": "Detalhes da $BRAND$", "placeholders": { "brand": { "content": "$1", @@ -504,7 +504,7 @@ "message": "Site (URI)" }, "websiteUriCount": { - "message": "$COUNT$° site (URI)", + "message": "Site (URI) $COUNT$", "description": "Label for an input field that contains a website URI. The input field is part of a list of fields, and the count indicates the position of the field in the list.", "placeholders": { "count": { @@ -569,13 +569,13 @@ "message": "Código de segurança / CVV" }, "identityName": { - "message": "Nome na identidade" + "message": "Nome da identidade" }, "company": { "message": "Empresa" }, "ssn": { - "message": "Cadastro de Pessoas Físicas (CPF)" + "message": "Número de CPF" }, "passportNumber": { "message": "Número do passaporte" @@ -659,13 +659,13 @@ "message": "Chave do autenticador (TOTP)" }, "totpHelperTitle": { - "message": "Tornar a verificação em duas etapas fácil" + "message": "Torne a verificação em 2 etapas mais simples" }, "totpHelper": { "message": "O Bitwarden pode armazenar e preencher códigos de verificação de duas etapas. Copie e cole a chave neste campo." }, "totpHelperWithCapture": { - "message": "O Bitwarden pode armazenar e preencher códigos de verificação de duas etapas. Selecione o ícone de câmera para tirar uma captura da tela do código QR de autenticador deste site, ou copie e cole a chave neste campo." + "message": "O Bitwarden pode armazenar e preencher códigos de verificação de 2 etapas. Selecione o ícone da câmera e tire uma captura de tela do código QR do autenticador nesse site ou copie e cole a chave nesse campo." }, "learnMoreAboutAuthenticators": { "message": "Saiba mais sobre os autenticadores" @@ -680,7 +680,7 @@ "message": "Texto" }, "cfTypeHidden": { - "message": "Ocultado" + "message": "Oculto" }, "cfTypeBoolean": { "message": "Booleano" @@ -784,10 +784,10 @@ "description": "Toggling an expand/collapse state." }, "checkPassword": { - "message": "Verifique se a senha foi exposta." + "message": "Confira se a senha foi exposta." }, "passwordExposed": { - "message": "Esta senha foi exposta $VALUE$ vez(es) em violações de dados. Você deve alterá-la.", + "message": "Esta senha foi exposta $VALUE$ vez(es) em vazamentos de dados. Você deve alterá-la.", "placeholders": { "value": { "content": "$1", @@ -796,7 +796,7 @@ } }, "passwordSafe": { - "message": "Esta senha não foi encontrada em violações de dados conhecidos. Deve ser seguro de usar." + "message": "Esta senha não foi encontrada em vazamentos de dados conhecidos. Deve ser segura de usar." }, "save": { "message": "Salvar" @@ -814,10 +814,10 @@ "message": "Fechar" }, "delete": { - "message": "Excluir" + "message": "Apagar" }, "favorite": { - "message": "Favorito" + "message": "Favoritar" }, "unfavorite": { "message": "Desfavoritar" @@ -826,47 +826,47 @@ "message": "Editar" }, "searchCollection": { - "message": "Pesquisar coleção" + "message": "Buscar no conjunto" }, "searchFolder": { - "message": "Pesquisar pasta" + "message": "Buscar na pasta" }, "searchFavorites": { - "message": "Pesquisar favoritos" + "message": "Buscar nos favoritos" }, "searchLogin": { - "message": "Pesquisar credenciais", + "message": "Buscar nas credenciais", "description": "Search Login type" }, "searchCard": { - "message": "Buscar cartões", + "message": "Buscar nos cartões", "description": "Search Card type" }, "searchIdentity": { - "message": "Pesquisar identidades", + "message": "Buscar nas identidades", "description": "Search Identity type" }, "searchSecureNote": { - "message": "Pesquisar anotações seguras", + "message": "Buscar nas anotações seguras", "description": "Search Secure Note type" }, "searchVault": { - "message": "Pesquisar cofre" + "message": "Buscar no cofre" }, "searchMyVault": { - "message": "Pesquisar meu cofre" + "message": "Buscar no meu cofre" }, "searchOrganization": { - "message": "Pesquisar organização" + "message": "Buscar na organização" }, "searchMembers": { - "message": "Pesquisar membros" + "message": "Buscar nos membros" }, "searchGroups": { - "message": "Buscar grupos" + "message": "Buscar nos grupos" }, "resetSearch": { - "message": "Apagar pesquisa" + "message": "Apagar busca" }, "allItems": { "message": "Todos os itens" @@ -875,7 +875,7 @@ "message": "Favoritos" }, "taskSummary": { - "message": "Task summary" + "message": "Resumo de tarefas" }, "types": { "message": "Tipos" @@ -914,7 +914,7 @@ "message": "Pastas" }, "collections": { - "message": "Coleções" + "message": "Conjuntos" }, "firstName": { "message": "Primeiro nome" @@ -971,7 +971,7 @@ "message": "Editar item" }, "viewItem": { - "message": "Visualizar item" + "message": "Ver item" }, "newItemHeaderLogin": { "message": "Nova credencial", @@ -1030,23 +1030,23 @@ "description": "Header for edit file send" }, "viewItemHeaderLogin": { - "message": "Visualizar credencial", + "message": "Ver credencial", "description": "Header for view login item type" }, "viewItemHeaderCard": { - "message": "Visualizar cartão", + "message": "Ver cartão", "description": "Header for view card item type" }, "viewItemHeaderIdentity": { - "message": "Visualizar identidade", + "message": "Ver identidade", "description": "Header for view identity item type" }, "viewItemHeaderNote": { - "message": "Visualizar anotação", + "message": "Ver anotação", "description": "Header for view note item type" }, "viewItemHeaderSshKey": { - "message": "Visualizar chave SSH", + "message": "Ver chave SSH", "description": "Header for view SSH key item type" }, "new": { @@ -1063,7 +1063,7 @@ "message": "Nome do item" }, "ex": { - "message": "ex.", + "message": "p. ex.", "description": "Short abbreviation for 'example'." }, "other": { @@ -1215,22 +1215,22 @@ "message": "Mover selecionados" }, "selectAll": { - "message": "Marcar tudo" + "message": "Selecionar tudo" }, "unselectAll": { - "message": "Desmarcar tudo" + "message": "Deselecionar tudo" }, "launch": { "message": "Abrir" }, "newAttachment": { - "message": "Adicionar Novo Anexo" + "message": "Adicionar novo anexo" }, "deletedAttachment": { - "message": "Anexo excluído" + "message": "Anexo apagado" }, "deleteAttachmentConfirmation": { - "message": "Tem certeza que deseja excluir esse anexo?" + "message": "Tem certeza que quer apagar este anexo?" }, "attachmentSaved": { "message": "Anexo salvo" @@ -1291,7 +1291,7 @@ "message": "Apagar anexo" }, "deleteItemConfirmation": { - "message": "Você tem certeza que deseja enviar este item para a lixeira?" + "message": "Tem certeza que quer enviar este item para a lixeira?" }, "deletedItem": { "message": "Item enviado para a lixeira" @@ -1303,7 +1303,7 @@ "message": "Itens movidos" }, "overwritePasswordConfirmation": { - "message": "Você tem certeza que deseja substituir a senha atual?" + "message": "Tem certeza que quer substituir a senha atual?" }, "editedFolder": { "message": "Pasta salva" @@ -1312,7 +1312,7 @@ "message": "Pasta adicionada" }, "deleteFolderConfirmation": { - "message": "Você tem certeza que deseja excluir esta pasta?" + "message": "Você tem certeza que deseja apagar esta pasta?" }, "deletedFolder": { "message": "Pasta apagada" @@ -1330,7 +1330,7 @@ "message": "Acessando" }, "loggedOut": { - "message": "Sessão encerrada" + "message": "Desconectado" }, "loggedOutDesc": { "message": "Você foi desconectado de sua conta." @@ -1342,7 +1342,7 @@ "message": "Reiniciar cadastro" }, "expiredLink": { - "message": "Link expirado" + "message": "Link vencido" }, "pleaseRestartRegistrationOrTryLoggingIn": { "message": "Reinicie o cadastro ou tente conectar-se." @@ -1351,10 +1351,10 @@ "message": "Você pode já ter uma conta" }, "logOutConfirmation": { - "message": "Você tem certeza que deseja sair?" + "message": "Tem certeza que quer se desconectar?" }, "logOut": { - "message": "Encerrar sessão" + "message": "Desconectar" }, "ok": { "message": "Ok" @@ -1369,19 +1369,19 @@ "message": "Localização" }, "loginOrCreateNewAccount": { - "message": "Inicie a sessão ou crie uma nova conta para acessar seu cofre seguro." + "message": "Conecte-se ou crie uma conta para acessar seu cofre seguro." }, "loginWithDevice": { "message": "Conectar-se com dispositivo" }, "loginWithDeviceEnabledNote": { - "message": "O login com dispositivo deve estar ativado nas configurações do aplicativo do Bitwarden. Precisa de outra opção?" + "message": "A autenticação com dispositivo deve ser configurada nas configurações do aplicativo móvel do Bitwarden. Precisa de outra opção?" }, "needAnotherOptionV1": { "message": "Precisa de outra opção?" }, "loginWithMasterPassword": { - "message": "Entrar com senha principal" + "message": "Conectar-se com senha principal" }, "readingPasskeyLoading": { "message": "Lendo a chave de acesso..." @@ -1393,16 +1393,16 @@ "message": "A autenticação da chave de acesso falhou. Tente novamente." }, "useADifferentLogInMethod": { - "message": "Usar um método de entrada diferente" + "message": "Usar um método de autenticação diferente" }, "logInWithPasskey": { - "message": "Entrar com chave de acesso" + "message": "Conectar-se com chave de acesso" }, "useSingleSignOn": { "message": "Usar autenticação única" }, "yourOrganizationRequiresSingleSignOn": { - "message": "Your organization requires single sign-on." + "message": "A sua organização requer o uso da autenticação única." }, "welcomeBack": { "message": "Boas-vindas de volta" @@ -1411,16 +1411,16 @@ "message": "Chave de acesso inválida. Tente novamente." }, "twoFactorForPasskeysNotSupportedOnClientUpdateToLogIn": { - "message": "A 2FA não é suportada para chaves de acesso. Atualize o app para entrar." + "message": "A 2FA não é suportada para chaves de acesso. Atualize o aplicativo para se conectar." }, "loginWithPasskeyInfo": { - "message": "Use uma chave de acesso gerada que te conectará automaticamente sem uma senha. Biometrias como reconhecimento facial ou impressão digital, ou outro método de segurança FIDO2 verificarão sua identidade." + "message": "Use uma chave de acesso gerada que te conectará automaticamente sem uma senha. A biometria, como a reconhecimento facial ou impressão digital, ou outro método de segurança do FIDO2 verificarão sua identidade." }, "newPasskey": { "message": "Nova chave de acesso" }, "learnMoreAboutPasswordless": { - "message": "Saiba mais sobre acesso sem senha" + "message": "Saiba mais sobre o passwordless" }, "creatingPasskeyLoading": { "message": "Criando chave de acesso..." @@ -1459,10 +1459,10 @@ "message": "Usada para criptografia" }, "loginWithPasskeyEnabled": { - "message": "Entrar com chave de acesso ativado" + "message": "Autenticação com chave de acesso ativada" }, "passkeySaved": { - "message": "$NAME$ salvo", + "message": "$NAME$ salva", "placeholders": { "name": { "content": "$1", @@ -1477,7 +1477,7 @@ "message": "Remover chave de acesso" }, "removePasskeyInfo": { - "message": "Se todas as chaves de acesso forem removidas, não será mais possível entrar em novos dispositivos sem sua senha principal." + "message": "Se todas as chaves de acesso forem removidas, não será mais possível se conectar em novos dispositivos sem sua senha principal." }, "passkeyLimitReachedInfo": { "message": "Limite de chaves de acesso atingido. Remova uma chave de acesso para adicionar outra." @@ -1492,10 +1492,10 @@ "message": "Novo no Bitwarden?" }, "setAStrongPassword": { - "message": "Defina uma senha forte" + "message": "Configure uma senha forte" }, "finishCreatingYourAccountBySettingAPassword": { - "message": "Termine de criar a sua conta definindo uma senha" + "message": "Termine de criar a sua conta configurando uma senha" }, "newAroundHere": { "message": "Novo por aqui?" @@ -1504,25 +1504,25 @@ "message": "Iniciar período de teste" }, "logIn": { - "message": "Entrar" + "message": "Conectar-se" }, "logInToBitwarden": { - "message": "Entrar no Bitwarden" + "message": "Conecte-se ao Bitwarden" }, "enterTheCodeSentToYourEmail": { - "message": "Digite o código enviado por e-mail" + "message": "Digite o código enviado ao seu e-mail" }, "enterTheCodeFromYourAuthenticatorApp": { "message": "Digite o código do seu aplicativo autenticador" }, "pressYourYubiKeyToAuthenticate": { - "message": "Pressione sua YubiKey para autenticar" + "message": "Pressione sua YubiKey para autenticar-se" }, "authenticationTimeout": { - "message": "Tempo de autenticação esgotado" + "message": "Tempo limite da autenticação atingido" }, "authenticationSessionTimedOut": { - "message": "A sessão de autenticação expirou. Reinicie o processo de entrada." + "message": "A sessão de autenticação expirou. Reinicie o processo de autenticação." }, "verifyYourIdentity": { "message": "Verifique sua identidade" @@ -1537,10 +1537,10 @@ "message": "O que é um dispositivo?" }, "aDeviceIs": { - "message": "Um dispositivo é uma instalação única do aplicativo Bitwarden em qual você se conectou. Reinstalar, limpar os dados do aplicativo ou limpar seus cookies pode resultar em um dispositivo aparecendo várias vezes." + "message": "Um dispositivo é uma instalação única do aplicativo do Bitwarden em qual você se conectou. Reinstalar, limpar os dados do aplicativo ou limpar seus cookies pode resultar em um dispositivo aparecendo várias vezes." }, "logInInitiated": { - "message": "Login iniciado" + "message": "Autenticação iniciada" }, "logInRequestSent": { "message": "Solicitação enviada" @@ -1549,13 +1549,13 @@ "message": "Enviar" }, "emailAddressDesc": { - "message": "Você usará o seu endereço de e-mail para a iniciar sessão." + "message": "Você usará o seu endereço de e-mail para se conectar." }, "yourName": { "message": "Seu nome" }, "yourNameDesc": { - "message": "Como devemos chamá-lo?" + "message": "Como devemos te chamar?" }, "masterPass": { "message": "Senha principal" @@ -1570,7 +1570,7 @@ "message": "Uma dica de senha principal pode ajudá-lo(a) a lembrar a senha caso você esqueça." }, "reTypeMasterPass": { - "message": "Digite novamente a senha principal" + "message": "Redigitar senha principal" }, "masterPassHint": { "message": "Dica da senha principal (opcional)" @@ -1582,7 +1582,7 @@ "message": "Dica da senha principal" }, "masterPassHintText": { - "message": "Se você esquecer sua senha, a dica da senha pode ser enviada ao seu e-mail. $CURRENT$/$MAXIMUM$ caracteres máximos.", + "message": "Se você esquecer sua senha, a dica da senha pode ser enviada ao seu e-mail. $CURRENT$ do máximo de $MAXIMUM$ caracteres.", "placeholders": { "current": { "content": "$1", @@ -1604,13 +1604,13 @@ "message": "Solicitar dica" }, "requestPasswordHint": { - "message": "Dica da senha principal" + "message": "Solicitar dica da senha" }, "enterYourAccountEmailAddressAndYourPasswordHintWillBeSentToYou": { - "message": "Digite o endereço de e-mail da sua conta e sua dica da senha será enviada para você" + "message": "Digite o endereço de e-mail da sua conta e dica da sua senha será enviada para você" }, "getMasterPasswordHint": { - "message": "Obter dica da senha principal" + "message": "Receber dica da senha principal" }, "emailRequired": { "message": "O endereço de e-mail é obrigatório." @@ -1622,7 +1622,7 @@ "message": "A senha principal é obrigatória." }, "confirmMasterPasswordRequired": { - "message": "A senha principal é obrigatória." + "message": "É necessário redigitar a senha principal." }, "masterPasswordMinlength": { "message": "A senha principal deve ter pelo menos $VALUE$ caracteres.", @@ -1638,13 +1638,13 @@ "message": "A confirmação da senha principal não corresponde." }, "newAccountCreated": { - "message": "A sua nova conta foi criada! Agora você pode iniciar a sessão." + "message": "A sua conta nova foi criada! Agora você pode se conectar." }, "newAccountCreated2": { - "message": "Sua nova conta foi criada!" + "message": "Sua conta nova foi criada!" }, "youHaveBeenLoggedIn": { - "message": "Você está conectado!" + "message": "Você foi conectado!" }, "trialAccountCreated": { "message": "Conta criada com sucesso." @@ -1674,7 +1674,7 @@ "message": "Desbloquear" }, "loggedInAsEmailOn": { - "message": "Entrou como $EMAIL$ em $HOSTNAME$.", + "message": "Conectado como $EMAIL$ em $HOSTNAME$.", "placeholders": { "email": { "content": "$1", @@ -1690,7 +1690,7 @@ "message": "Senha principal inválida" }, "invalidMasterPasswordConfirmEmailAndHost": { - "message": "Senha principal inválida. Confirme se seu e-mail está correto e sua conta foi criada em $HOST$.", + "message": "Senha principal inválida. Confirme que seu e-mail está correto e que sua conta foi criada em $HOST$.", "placeholders": { "host": { "content": "$1", @@ -1726,19 +1726,19 @@ "message": "Adicione itens usados frequentemente aos favoritos para acesso rápido." }, "noSearchResults": { - "message": "Nenhum resultado de pesquisa" + "message": "Nenhum resultado de busca" }, "clearFiltersOrTryAnother": { - "message": "Limpar filtros ou tentar outro termo de pesquisa" + "message": "Limpe os filtros ou tente outro termo de busca" }, "noPermissionToViewAllCollectionItems": { - "message": "Você não tem permissão para visualizar todos os itens nesta coleção." + "message": "Você não tem permissão para ver todos os itens neste conjunto." }, "youDoNotHavePermissions": { - "message": "Você não pode acessar esta coleção" + "message": "Você não tem permissões para esse conjunto" }, "noCollectionsInList": { - "message": "Não há coleções para listar." + "message": "Não há conjuntos para listar." }, "noGroupsInList": { "message": "Não há grupos para listar." @@ -1756,7 +1756,7 @@ "message": "Nova organização" }, "noOrganizationsList": { - "message": "Você não pertence a nenhuma organização. Organizações permitem-lhe compartilhar itens em segurança com outros usuários." + "message": "Você não pertence à nenhuma organização. Organizações te permitem compartilhar itens em segurança com outros usuários." }, "notificationSentDevice": { "message": "Uma notificação foi enviada para seu dispositivo." @@ -1817,19 +1817,19 @@ "description": "Select another two-step login method" }, "useYourRecoveryCode": { - "message": "Usar código de recuperação" + "message": "Usar seu código de recuperação" }, "insertU2f": { - "message": "Insira a sua chave de segurança na porta USB do seu computador. Se ele tiver um botão, toque nele." + "message": "Insira a sua chave de segurança na porta USB do seu computador. Se ela tiver um botão, toque nele." }, "loginUnavailable": { - "message": "Entrada indisponível" + "message": "Autenticação indisponível" }, "noTwoStepProviders": { "message": "Esta conta tem a autenticação em duas etapas ativada. No entanto, nenhum dos provedores de autenticação em duas etapas configurados são suportados por este navegador web." }, "noTwoStepProviders2": { - "message": "Por favor utilize um navegador web suportado (tal como o Chrome) e/ou inclua provedores adicionais que são melhor suportados entre navegadores web (tal como um aplicativo de autenticação)." + "message": "Utilize um navegador web suportado (tal como o Chrome) e/ou inclua provedores adicionais que são melhor suportados entre navegadores web (tal como um aplicativo de autenticação)." }, "twoStepOptions": { "message": "Opções de autenticação em duas etapas" @@ -1844,7 +1844,7 @@ "message": "Chave de recuperação inválida" }, "authenticatorAppTitle": { - "message": "Aplicativo de autenticação" + "message": "Aplicativo autenticador" }, "authenticatorAppDescV2": { "message": "Digite um código gerado por um aplicativo autenticador como o Bitwarden Authenticator.", @@ -1861,7 +1861,7 @@ "description": "'Duo Security' and 'Duo Mobile' are product names and should not be translated." }, "duoOrganizationDesc": { - "message": "Verifique com o Duo Security utilizando o aplicativo Duo Mobile, SMS, chamada telefônica, ou chave de segurança U2F.", + "message": "Verifique com o Duo Security para sua organização utilizando o aplicativo Duo Mobile, SMS, chamada telefônica, ou chave de segurança U2F.", "description": "'Duo Security' and 'Duo Mobile' are product names and should not be translated." }, "u2fDesc": { @@ -1898,10 +1898,10 @@ "message": "Organizações" }, "moveToOrgDesc": { - "message": "Escolha uma organização para a qual deseja mover este item. Mudar para uma organização transfere a propriedade do item para essa organização. Você não será mais o proprietário direto deste item depois que ele for movido." + "message": "Escolha uma organização para a qual deseja mover este item. Mover para uma organização transfere a propriedade do item para essa organização. Você não será mais o proprietário direto deste item depois que ele for movido." }, "collectionsDesc": { - "message": "Edite as coleções com as quais este item está sendo compartilhado. Somente usuários da organização com acesso a estas coleções poderão ver esse item." + "message": "Edite os conjuntos com os quais este item está sendo compartilhado. Somente usuários da organização com acesso a estes conjuntos poderão ver esse item." }, "deleteSelectedItemsDesc": { "message": "$COUNT$ item(ns) serão enviados para a lixeira.", @@ -1913,7 +1913,7 @@ } }, "deleteSelectedCollectionsDesc": { - "message": "$COUNT$ coleção(ões) serão apagadas para sempre.", + "message": "$COUNT$ conjunto(s) serão apagadas para sempre.", "placeholders": { "count": { "content": "$1", @@ -1925,7 +1925,7 @@ "message": "Tem certeza que deseja continuar?" }, "moveSelectedItemsDesc": { - "message": "Escolha a pasta para a qual você deseja mover os $COUNT$ itens selecionados.", + "message": "Escolha a pasta para a qual você deseja adicionar o(s) $COUNT$ item(ns) selecionado(s).", "placeholders": { "count": { "content": "$1", @@ -1943,13 +1943,13 @@ "message": "Copiar UUID" }, "errorRefreshingAccessToken": { - "message": "Erro ao acessar token de recarregamento" + "message": "Erro de recarregamento do token de acesso" }, "errorRefreshingAccessTokenDesc": { - "message": "Nenhum token de atualização ou chave de API foi encontrado. Tente sair e entrar novamente." + "message": "Nenhum token de atualização ou chave de API foi encontrado. Tente se desconectar e se conectar novamente." }, "warning": { - "message": "Aviso" + "message": "Atenção" }, "confirmVaultExport": { "message": "Confirmar exportação do cofre" @@ -1958,7 +1958,7 @@ "message": "Confirmar exportação de segredos" }, "exportWarningDesc": { - "message": "Esta exportação contém os dados do seu cofre em um formato não criptografado. Você não deve armazenar ou enviar o arquivo exportado por canais inseguros (como e-mail). Exclua o arquivo imediatamente após terminar de usá-lo." + "message": "Esta exportação contém os dados do seu cofre em um formato não criptografado. Você não deve armazenar ou enviar o arquivo exportado por canais inseguros (como e-mail). Apague o arquivo imediatamente após terminar de usá-lo." }, "exportSecretsWarningDesc": { "message": "Esta exportação contém seus dados de segredos em um formato não criptografado. Você não deve armazenar ou enviar o arquivo exportado por canais inseguros (como e-mail). Apague-o imediatamente após terminar de usá-lo." @@ -1991,7 +1991,7 @@ "message": "Esta senha será usada para exportar e importar este arquivo" }, "confirmMasterPassword": { - "message": "Confirme a senha principal" + "message": "Confirmar senha principal" }, "confirmFormat": { "message": "Confirmar formato" @@ -2006,7 +2006,7 @@ "message": "Use a chave de criptografia da sua conta, derivada do nome de usuário e senha principal da sua conta, para criptografar a exportação e restringir a importação para apenas a conta atual do Bitwarden." }, "passwordProtectedOptionDescription": { - "message": "Defina uma senha para criptografar a exportação e importá-la para qualquer conta do Bitwarden usando a senha para descriptografar." + "message": "Configure uma senha de arquivo para criptografar a exportação e importá-la para qualquer conta do Bitwarden usando a senha para descriptografá-la." }, "exportTypeHeading": { "message": "Tipo da exportação" @@ -2015,7 +2015,7 @@ "message": "Restrita à conta" }, "passwordProtected": { - "message": "Protegido por senha" + "message": "Protegida por senha" }, "filePasswordAndConfirmFilePasswordDoNotMatch": { "message": "\"Senha do arquivo\" e \"Confirmar senha do arquivo\" não correspondem." @@ -2030,16 +2030,16 @@ "message": "Dados do cofre exportados" }, "passwordGenerator": { - "message": "Gerador de senha" + "message": "Gerador de senhas" }, "minComplexityScore": { - "message": "Pontuação de complexidade mínima" + "message": "Pontuação mínima de complexidade" }, "minNumbers": { "message": "Mínimo de números" }, "minSpecial": { - "message": "Mínimo de especiais", + "message": "Mínimo de caracteres especiais", "description": "Minimum special characters" }, "ambiguous": { @@ -2078,14 +2078,14 @@ "message": "Separador das palavras" }, "capitalize": { - "message": "Iniciais em Maiúsculas", + "message": "Iniciais maiúsculas", "description": "Make the first letter of a word uppercase." }, "includeNumber": { "message": "Incluir número" }, "generatorPolicyInEffect": { - "message": "Os requisitos de política empresarial foram aplicados às suas opções de gerador.", + "message": "Os requisitos da política empresarial foram aplicados às opções do seu gerador.", "description": "Indicates that a policy limits the credential generator screen." }, "passwordHistory": { @@ -2101,13 +2101,13 @@ "message": "Se continuar, todos os itens serão apagados para sempre do histórico do gerador. Tem certeza que deseja continuar?" }, "noPasswordsInList": { - "message": "Não existem senhas para listar." + "message": "Não há senhas para listar." }, "clearHistory": { "message": "Limpar histórico" }, "nothingToShow": { - "message": "Nada a mostrar" + "message": "Nada para mostrar" }, "nothingGeneratedRecently": { "message": "Você não gerou nada recentemente" @@ -2123,7 +2123,7 @@ "message": "Alterar e-mail" }, "changeEmailTwoFactorWarning": { - "message": "Prosseguir irá alterar o endereço de e-mail da sua conta. Isso não mudará o endereço de e-mail usado para autenticação de dois fatores. Você pode alterar esse endereço de e-mail nas configurações de autenticação de duas etapas." + "message": "Prosseguir irá alterar o endereço de e-mail da sua conta. Isso não mudará o endereço de e-mail usado para autenticação de duas etapas. Você pode alterar esse endereço de e-mail nas configurações de autenticação de duas etapas." }, "newEmail": { "message": "Novo e-mail" @@ -2144,13 +2144,13 @@ "message": "O processo desconectará você da sessão atual, exigindo que você inicie a sessão novamente. As sessões ativas em outros dispositivos podem continuar ativas por até uma hora." }, "changePasswordWarning": { - "message": "Ao alterar sua senha, você precisará entrar com a sua senha nova. Sessões ativas em outros dispositivos serão desconectados dentro de uma hora." + "message": "Ao alterar sua senha, você precisará se conectar com a sua senha nova. Sessões ativas em outros dispositivos serão desconectadas dentro de uma hora." }, "emailChanged": { "message": "E-mail salvo" }, "logBackIn": { - "message": "Por favor, reinicie a sessão." + "message": "Conecte-se novamente." }, "currentSession": { "message": "Sessão atual" @@ -2159,7 +2159,7 @@ "message": "Solicitação pendente" }, "logBackInOthersToo": { - "message": "Por favor, reinicie a sessão. Se estiver usando outros aplicativos do Bitwarden, encerre a sessão e reinicie também." + "message": "Conecte-se novamente. Se estiver usando outros aplicativos do Bitwarden, desconecte-se e conecte-se neles também." }, "changeMasterPassword": { "message": "Alterar senha principal" @@ -2183,7 +2183,7 @@ "message": "Iterações da KDF" }, "kdfIterationsDesc": { - "message": "As iterações KDF mais altas podem ajudar a proteger a sua senha principal de ser descoberta pela força bruta de um invasor. Recomendamos um valor de $VALUE$ ou mais.", + "message": "Ter iterações de KDF mais altas podem ajudar a proteger a sua senha principal de ser descoberta pela força bruta de um invasor. Recomendamos um valor de $VALUE$ ou mais.", "placeholders": { "value": { "content": "$1", @@ -2192,7 +2192,7 @@ } }, "kdfIterationsWarning": { - "message": "Usar iterações de KDF muito altas pode resultar em baixo desempenho ao entrar (e desbloquear) no Bitwarden em dispositivos com CPUs mais lentas. Recomendamos que você aumente o valor em incrementos de $INCREMENT$ e, em seguida, teste em todos os seus dispositivos.", + "message": "Configurar as suas iterações da KDF muito altas pode resultar em baixo desempenho ao se conectar no (e desbloquear o) Bitwarden em dispositivos mais lentos ou antigos. Recomendamos que você aumente o valor em incrementos de $INCREMENT$ e, em seguida, teste em todos os seus dispositivos.", "placeholders": { "increment": { "content": "$1", @@ -2205,13 +2205,13 @@ "description": "Memory refers to computer memory (RAM). MB is short for megabytes." }, "argon2Warning": { - "message": "Usar valores altos para as iterações, memória, e paralelismo da KDF pode resultar em baixo desempenho ao entrar (e desbloquear) o Bitwarden em dispositivos mais lentos ou antigos. Recomendamos alterar estes valores individualmente em incrementos pequenos, e então, testar em todos os seus dispositivos." + "message": "Configurar valores altos para as iterações, memória, e paralelismo da KDF pode resultar em baixo desempenho ao se conectar (e desbloquear) o Bitwarden em dispositivos mais lentos ou antigos. Recomendamos alterar estes valores individualmente em incrementos pequenos, e então, testar em todos os seus dispositivos." }, "kdfParallelism": { "message": "Paralelismo da KDF" }, "argon2Desc": { - "message": "Mais iterações KDF, memória e paralelismo podem ajudar a proteger sua senha principal de ser descoberta por força bruta por um invasor." + "message": "Mais iterações, memória, e paralelismo da KDF podem ajudar a proteger sua senha principal de ser descoberta por força bruta por um invasor." }, "encKeySettingsChanged": { "message": "As configurações da chave de criptografia foram salvas" @@ -2223,19 +2223,19 @@ "message": "Desautorizar sessões" }, "deauthorizeSessionsDesc": { - "message": "Preocupado por ter iniciado a sessão em outro dispositivo? Prossiga abaixo para desautorizar todos os computadores e dispositivos que tenha usado. Esta medida de segurança é recomendada se usou um computador público ou guardou acidentalmente a sua senha num dispositivo que não lhe pertence. Esta ação também apagará todas as sessões anteriores registadas iniciadas com autenticação em duas etapas." + "message": "Preocupado que sua conta esteja conectada em outro dispositivo? Prossiga abaixo para desautorizar todos os computadores e dispositivos que tenha usado. Esta medida de segurança é recomendada se usou um computador público ou salvou acidentalmente a sua senha num dispositivo que não lhe pertence. Isso também limpará todas as sessões lembradas de autenticação com duas etapas." }, "deauthorizeSessionsWarning": { "message": "O processo também desconectará você da sua sessão atual, exigindo que você se conecte novamente. Você também será solicitado a efetuar a autenticação em duas etapas novamente, se estiver ativada. Sessões ativas em outros dispositivos podem continuar ativas por até uma hora." }, "newDeviceLoginProtection": { - "message": "Entrada de dispositivos novos" + "message": "Autenticação de dispositivos novos" }, "turnOffNewDeviceLoginProtection": { - "message": "Desativar proteção de entrada de dispositivos novos" + "message": "Desativar proteção de autenticação de dispositivos novos" }, "turnOnNewDeviceLoginProtection": { - "message": "Ativar proteção de entrada de dispositivos novos" + "message": "Ativar proteção de autenticação de dispositivos novos" }, "turnOffNewDeviceLoginProtectionModalDesc": { "message": "Continue abaixo para desativar os e-mails de verificação que o Bitwarden enviará quando se conectar a partir de um novo dispositivo." @@ -2247,7 +2247,7 @@ "message": "Com a proteção de autenticação de dispositivos novos desativada, qualquer um com a sua senha principal pode acessar sua conta de qualquer dispositivo. Para proteger sua conta sem e-mails de verificação, configure a autenticação em duas etapas." }, "accountNewDeviceLoginProtectionSaved": { - "message": "Alterações na proteção na entrada de dispositivos novos salvas" + "message": "Alterações na proteção na autenticação de dispositivos novos salvas" }, "sessionsDeauthorized": { "message": "Todas as sessões desautorizadas" @@ -2265,19 +2265,19 @@ "message": "Limpar cofre" }, "purgedOrganizationVault": { - "message": "Cofre da organização limpado." + "message": "Cofre da organização limpo." }, "vaultAccessedByProvider": { "message": "Cofre acessado pelo provedor." }, "purgeVaultDesc": { - "message": "Continue abaixo para excluir todos os itens e pastas do seu cofre. Itens que pertencem a uma organização com a qual você compartilha não serão excluídos." + "message": "Continue abaixo para apagar todos os itens e pastas no seu cofre. Itens que pertencem a uma organização com a qual você compartilha não serão apagados." }, "purgeOrgVaultDesc": { - "message": "Continue abaixo para excluir todos os itens no cofre da organização." + "message": "Continue abaixo para apagar todos os itens no cofre da organização." }, "purgeVaultWarning": { - "message": "Limpando o seu cofre permanentemente. Não pode ser desfeito." + "message": "Limpar seu cofre é para sempre. Não pode ser desfeito." }, "vaultPurged": { "message": "O cofre foi limpo." @@ -2289,7 +2289,7 @@ "message": "Prossiga abaixo para apagar sua conta e todos os dados do cofre." }, "deleteAccountWarning": { - "message": "A exclusão de sua conta é permanente. Não pode ser desfeito." + "message": "O apagamento da sua conta é permanente. Não pode ser desfeito." }, "accountDeleted": { "message": "Conta apagada" @@ -2298,7 +2298,7 @@ "message": "A sua conta foi fechada e todos os dados associados foram apagados." }, "deleteOrganizationWarning": { - "message": "O apagamento da organização é permanente. Não pode ser desfeito." + "message": "O apagamento da sua organização é permanente. Não pode ser desfeito." }, "myAccount": { "message": "Minha conta" @@ -2310,7 +2310,7 @@ "message": "Importar dados" }, "onboardingImportDataDetailsPartOne": { - "message": "Se você não tem dados para importar, você pode criar um ", + "message": "Se você não tem dados para importar, você pode criar um(a) ", "description": "This will be part of a larger sentence, that will read like this: If you don't have any data to import, you can create a new item instead. (Optional second half: You may need to wait until your administrator confirms your organization membership.)" }, "onboardingImportDataDetailsLink": { @@ -2333,7 +2333,7 @@ "message": "Erro de importação" }, "importErrorDesc": { - "message": "Houve um problema com os dados que você tentou importar. Resolva os erros listados abaixo em seu arquivo de origem e tente novamente." + "message": "Houve um problema com os dados que você tentou importar. Resolva os erros listados abaixo em seu arquivo-fonte e tente novamente." }, "importSuccess": { "message": "Dados importados com sucesso" @@ -2360,7 +2360,7 @@ } }, "importFormatError": { - "message": "Os dados não estão formatados corretamente. Por favor, verifique o seu arquivo de importação e tente novamente." + "message": "Os dados não estão formatados corretamente. Verifique o seu arquivo de importação e tente novamente." }, "importNothingError": { "message": "Nada foi importado." @@ -2378,13 +2378,13 @@ "message": "Selecione uma pasta" }, "selectImportCollection": { - "message": "Selecione uma coleção" + "message": "Selecione um conjunto" }, "importTargetHintCollection": { - "message": "Selecione esta opção caso queira importar os conteúdos importados do arquivo movidos para uma coleção" + "message": "Selecione esta opção caso queira importar os conteúdos do arquivo para um conjunto" }, "importTargetHintFolder": { - "message": "Selecione esta opção caso queira importar os conteúdos importados do arquivo movidos para uma pasta" + "message": "Selecione esta opção caso queira importar os conteúdos do arquivo para uma pasta" }, "importUnassignedItemsError": { "message": "Arquivo contém itens não atribuídos." @@ -2396,7 +2396,7 @@ "message": "Selecione o arquivo de importação" }, "chooseFile": { - "message": "Escolher arquivo" + "message": "Selecionar arquivo" }, "noFileChosen": { "message": "Nenhum arquivo escolhido" @@ -2405,7 +2405,7 @@ "message": "ou copie/cole o conteúdo do arquivo de importação" }, "instructionsFor": { - "message": "$NAME$ instruções", + "message": "Instruções para $NAME$", "description": "The title for the import tool instructions.", "placeholders": { "name": { @@ -2424,7 +2424,7 @@ "message": "Personalize sua experiência no cofre web." }, "preferencesUpdated": { - "message": "Preferências atualizadas" + "message": "Preferências salvas" }, "language": { "message": "Idioma" @@ -2463,10 +2463,10 @@ "message": "Novo domínio personalizado" }, "newCustomDomainDesc": { - "message": "Digite uma lista de domínios separados por vírgulas. Apenas domínios \"base\" são permitidos. Não insira subdomínios. Por exemplo, digite \"google.com.br\" em vez de \"www.google.com.br\". Você também pode digitar \"androidapp://package.name\" para associar um aplicativo Android a outros domínios de site." + "message": "Digite uma lista de domínios separados por vírgulas. Apenas domínios \"base\" são permitidos. Não digite subdomínios. Por exemplo, digite \"google.com\" em vez de \"www.google.com\". Você também pode digitar \"androidapp://package.name\" para associar um aplicativo Android a outros domínios." }, "customDomainX": { - "message": "Domínio Personalizado $INDEX$", + "message": "Domínio personalizado $INDEX$", "placeholders": { "index": { "content": "$1", @@ -2481,10 +2481,10 @@ "message": "Autenticação em duas etapas" }, "twoStepLoginEnforcement": { - "message": "Obrigatoriedade da autenticação em duas etapas" + "message": "Aplicação da autenticação em duas etapas" }, "twoStepLoginDesc": { - "message": "Proteja a sua conta exigindo uma etapa adicional ao iniciar sessão." + "message": "Proteja a sua conta exigindo uma etapa adicional ao se conectar." }, "twoStepLoginTeamsDesc": { "message": "Ative a autenticação em duas etapas para sua organização." @@ -2500,7 +2500,7 @@ "message": "Para aplicar a autenticação em duas etapas pelo Duo, use as opções abaixo." }, "twoStepLoginOrganizationSsoDesc": { - "message": "Se você tem SSO configurado ou planeja ter, a autenticação em duas etapas já pode ser aplicada por meio do seu provedor de identidade." + "message": "Se você tem o SSO configurado ou planeja ter, a autenticação em duas etapas já pode ser aplicada por meio do seu provedor de identidade." }, "twoStepLoginRecoveryWarning": { "message": "A configuração de autenticação em duas etapas pode bloqueá-lo permanentemente da sua conta no Bitwarden. Um código de recuperação permite que você acesse sua conta no caso de não poder mais usar seu provedor de login em duas etapas normalmente (exemplo: você perde seu dispositivo). O suporte do Bitwarden não será capaz de ajudá-lo se você perder o acesso à sua conta. Recomendamos que você anote ou imprima o código de recuperação e o mantenha em um lugar seguro." @@ -2509,16 +2509,16 @@ "message": "Remover tipo de item de cartão" }, "restrictedItemTypePolicyDesc": { - "message": "Não permitir que membros criem tipos de itens de cartões. Cartões existentes serão apagados automaticamente." + "message": "Não permita que membros criem cartões. Cartões existentes serão apagados automaticamente." }, "restrictCardTypeImport": { - "message": "Não é possível importar tipos de item de cartão" + "message": "Não é possível importar itens do tipo cartão" }, "restrictCardTypeImportDesc": { "message": "Uma política configurada por uma ou mais organizações impede que você importe cartões em seus cofres." }, "yourSingleUseRecoveryCode": { - "message": "Seu código de recuperação de uso único pode ser usado para desativar a autenticação em duas etapas no caso de você perder acesso ao seu provedor de login em duas etapas. O Bitwarden recomenda que você anote o código de recuperação e o mantenha em um lugar seguro." + "message": "Seu código de recuperação de uso único pode ser usado para desativar a autenticação em duas etapas no caso de você perder acesso ao seu provedor de autenticação em duas etapas. O Bitwarden recomenda que você anote o código de recuperação e o mantenha em um lugar seguro." }, "viewRecoveryCode": { "message": "Ver código de recuperação" @@ -2541,13 +2541,13 @@ "description": "Premium membership" }, "premiumMembership": { - "message": "Assinatura Premium" + "message": "Plano Premium" }, "premiumRequired": { - "message": "Requer assinatura Premium" + "message": "Requer Premium" }, "premiumRequiredDesc": { - "message": "É necessário ter uma conta premium para usar esse recurso." + "message": "Um plano Premium é necessário para usar esse recurso." }, "youHavePremiumAccess": { "message": "Você tem acesso Premium" @@ -2559,10 +2559,10 @@ "message": "Gerenciar" }, "manageCollection": { - "message": "Gerenciar coleção" + "message": "Gerenciar conjunto" }, "viewItems": { - "message": "Visualizar itens" + "message": "Ver itens" }, "viewItemsHidePass": { "message": "Ver itens, senhas ocultas" @@ -2574,10 +2574,10 @@ "message": "Editar itens, senhas ocultas" }, "disable": { - "message": "Desabilitar" + "message": "Desativar" }, "orgUserDetailsNotFound": { - "message": "Detalhes de membro não encontrados." + "message": "Detalhes do membro não encontrados." }, "revokeAccess": { "message": "Revogar acesso" @@ -2589,7 +2589,7 @@ "message": "Este provedor de autenticação em duas etapas está ativo em sua conta." }, "twoStepLoginAuthDesc": { - "message": "Insira a sua senha principal para modificar as configurações de login em duas etapas." + "message": "Digite a sua senha principal para modificar as configurações de autenticação em duas etapas." }, "twoStepAuthenticatorInstructionPrefix": { "message": "Baixe um app autenticador como o" @@ -2604,7 +2604,7 @@ "message": "." }, "continueToExternalUrlTitle": { - "message": "Continuar para $URL$?", + "message": "Continuar em $URL$?", "placeholders": { "url": { "content": "$1", @@ -2616,13 +2616,13 @@ "message": "Você está saindo do Bitwarden e abrindo um site externo em uma nova janela." }, "twoStepContinueToBitwardenUrlTitle": { - "message": "Continuar para bitwarden.com?" + "message": "Continuar em bitwarden.com?" }, "twoStepContinueToBitwardenUrlDesc": { "message": "O Bitwarden Authenticator permite que você armazene as chaves de autenticador e gere códigos TOTP para fluxos de verificação de 2 etapas. Saiba mais no site bitwarden.com." }, "twoStepAuthenticatorScanCodeV2": { - "message": "Leia o código QR abaixo com o seu app de autenticação ou insira a chave." + "message": "Leia o código QR abaixo com o seu app de autenticação ou cole a chave." }, "twoStepAuthenticatorQRCanvasError": { "message": "Não foi possível carregar o código QR. Tente novamente ou use a chave abaixo." @@ -2643,16 +2643,16 @@ "message": "Provedor de autenticação em duas etapas desativado." }, "twoFactorYubikeyAdd": { - "message": "Adicionar um novo Yubikey à sua conta" + "message": "Adicione uma nova YubiKey à sua conta" }, "twoFactorYubikeyPlugIn": { - "message": "Conecte o YubiKey na porta USB do seu computador." + "message": "Conecte a YubiKey na porta USB do seu computador." }, "twoFactorYubikeySelectKey": { - "message": "Selecione o YubiKey no primeiro campo vazio abaixo." + "message": "Selecione o primeiro campo vazio de entrada da YubiKey." }, "twoFactorYubikeyTouchButton": { - "message": "Toque o botão do Yubikey." + "message": "Toque o botão da YubiKey." }, "twoFactorYubikeySaveForm": { "message": "Salve o formulário." @@ -2661,10 +2661,10 @@ "message": "Devido as limitações da plataforma, YubiKeys não podem ser usadas em todos os aplicativos do Bitwarden. Você deve ativar outro provedor de autenticação em duas etapas, para que você possa acessar a sua conta quando YubiKeys não puderem ser usadas. Plataformas suportadas:" }, "twoFactorYubikeySupportUsb": { - "message": "Cofre Web, aplicativo de desktop, CLI e todas as extensões do navegador em um dispositivo com uma porta USB que pode aceitar o seu YubiKey." + "message": "Cofre web, aplicativo de computador, CLI, e todas as extensões de navegador em um dispositivo com uma porta USB que pode aceitar a sua YubiKey." }, "twoFactorYubikeySupportMobile": { - "message": "Aplicativos móveis em um dispositivo com capacidades de NFC ou uma porta USB que pode aceitar o seu YubiKey." + "message": "Aplicativos móveis em um dispositivo com capacidades de NFC ou uma porta USB que pode aceitar a sua YubiKey." }, "yubikeyX": { "message": "YubiKey $INDEX$", @@ -2685,7 +2685,7 @@ } }, "webAuthnkeyX": { - "message": "$INDEX$ª Chave WebAuthn", + "message": "Chave WebAuthn $INDEX$", "placeholders": { "index": { "content": "$1", @@ -2700,34 +2700,34 @@ "message": "Uma das minhas chaves suporta NFC." }, "twoFactorYubikeySupportsNfcDesc": { - "message": "Se um dos seus YubiKeys oferece suporte a NFC (como um NEO YubiKey), você será solicitado em dispositivos móveis sempre que for detectada disponibilidade de NFC." + "message": "Se uma das suas YubiKeys oferece suporte a NFC (como uma YubiKey NEO), você será solicitado em dispositivos móveis sempre que for detectada disponibilidade da NFC." }, "yubikeysUpdated": { - "message": "YubiKeys atualizado" + "message": "YubiKeys atualizadas" }, "disableAllKeys": { "message": "Desativar todas as chaves" }, "twoFactorDuoDesc": { - "message": "Insira as informações do aplicativo Bitwarden no painel do administrador do Duo." + "message": "Digite as informações do aplicativo Bitwarden no painel de administração do Duo." }, "twoFactorDuoClientId": { - "message": "Id do cliente" + "message": "ID do cliente" }, "twoFactorDuoClientSecret": { "message": "Segredo do cliente" }, "twoFactorDuoApiHostname": { - "message": "Servidor da API" + "message": "Nome do servidor da API" }, "twoFactorEmailDesc": { - "message": "Siga estas etapas para configurar o login em duas etapas com e-mail:" + "message": "Siga estas etapas para configurar a autenticação em duas etapas com e-mail:" }, "twoFactorEmailEnterEmail": { - "message": "Insira o e-mail que você deseja receber o códigos de verificação" + "message": "Digite o e-mail que você deseja receber os códigos de verificação" }, "twoFactorEmailEnterCode": { - "message": "Insira o código de verificação de 6 dígitos que foi enviado pro seu e-mail" + "message": "Digite o código de verificação de 6 dígitos que foi enviado pro seu e-mail" }, "sendEmail": { "message": "Enviar e-mail" @@ -2751,31 +2751,31 @@ "message": "Dê à chave de segurança um nome amigável para identificá-la." }, "twoFactorU2fPlugInReadKey": { - "message": "Conecte a chave de segurança na porta USB do seu computador e clique no botão \"Ler Chave\"." + "message": "Conecte a chave de segurança na porta USB do seu computador e clique no botão \"Ler chave\"." }, "twoFactorU2fTouchButton": { "message": "Se a chave de segurança tiver um botão, toque nele." }, "twoFactorU2fSaveForm": { - "message": "Salvar o formulário." + "message": "Salve o formulário." }, "twoFactorU2fWarning": { - "message": "Devido às limitações da plataforma, o FIDO U2F não pode ser usado em todos os aplicativos do Bitwarden. Deve configurar outro provedor de autenticação em duas etapas para poder acessar a sua conta quando o FIDO U2F não puder ser usado. Plataformas suportadas:" + "message": "Devido às limitações da plataforma, o FIDO U2F não pode ser usado em todos os aplicativos do Bitwarden. Você deve configurar outro provedor de autenticação em duas etapas para poder acessar a sua conta quando o FIDO U2F não puder ser usado. Plataformas suportadas:" }, "twoFactorU2fSupportWeb": { - "message": "Cofre web e extensões de navegador em um desktop/laptop com um navegador que suporte U2F (Chrome, Opera, Vivaldi ou Firefox com o FIDO U2F ativado)." + "message": "Cofre web e extensões de navegador em um computador com um navegador que suporte U2F (Chrome, Opera, Vivaldi ou Firefox com o FIDO U2F ativado)." }, "twoFactorU2fWaiting": { - "message": "Esperando que você toque no botão da sua chave de segurança" + "message": "Aguardando que você toque no botão da sua chave de segurança" }, "twoFactorU2fClickSave": { - "message": "Clique no botão \"Salvar\" abaixo para ativar essa chave de segurança para a autenticação em duas etapas." + "message": "Clique no botão de \"Salvar\" abaixo para ativar essa chave de segurança para a autenticação em duas etapas." }, "twoFactorU2fProblemReadingTryAgain": { "message": "Houve um problema ao ler a chave de segurança. Tente novamente." }, "twoFactorRecoveryYourCode": { - "message": "Seu código de recuperação de login em duas etapas do Bitwarden" + "message": "Seu código de recuperação da autenticação em duas etapas do Bitwarden" }, "twoFactorRecoveryNoCode": { "message": "Você ainda não ativou nenhum provedor de autenticação em duas etapas. Depois de ativar um provedor de autenticação em duas etapas, você pode conferir aqui o seu código de recuperação." @@ -2818,7 +2818,7 @@ } }, "noUnsecuredWebsites": { - "message": "Nenhum item no seu cofre tem URIs inseguros." + "message": "Nenhum item no seu cofre tem URIs sem segurança." }, "inactive2faReport": { "message": "Autenticação em duas etapas inativa" @@ -2830,7 +2830,7 @@ "message": "Credenciais encontradas sem autenticação em duas etapas" }, "inactive2faFoundReportDesc": { - "message": "Encontramos $COUNT$ site(s) em seu(s) $VAULT$ que pode(m) não estar configurado com a autenticação em duas etapas (de acordo com 2fa.directory). Para proteger ainda mais essas contas, você deve configurar a autenticação em duas etapas.", + "message": "Encontramos $COUNT$ site(s) em seu(s) $VAULT$ que pode(m) não estar configurado(s) com a autenticação em duas etapas (de acordo com 2fa.directory). Para proteger ainda mais essas contas, você deve configurar a autenticação em duas etapas.", "placeholders": { "count": { "content": "$1", @@ -2858,7 +2858,7 @@ "message": "Senhas expostas encontradas" }, "exposedPasswordsFoundReportDesc": { - "message": "Encontramos $COUNT$ itens em seu(s) cofres $VAULT$ com senhas expostas em vazamentos conhecidos de dados. Você deve alterá-las para uma nova senha.", + "message": "Encontramos $COUNT$ itens em seu(s) cofre(s) $VAULT$ com senhas expostas em vazamentos conhecidos de dados. Você deve alterá-las para uma nova senha.", "placeholders": { "count": { "content": "$1", @@ -2871,7 +2871,7 @@ } }, "noExposedPasswords": { - "message": "Nenhum item no seu cofre tem senhas que foram expostas em violações de dados conhecidas." + "message": "Nenhum item em seu cofre tem senhas expostas em vazamentos de dados conhecidos." }, "checkExposedPasswords": { "message": "Conferir senhas expostas" @@ -2957,16 +2957,16 @@ "message": "Vazamento de dados" }, "breachDesc": { - "message": "Contas comprometidas podem expor sua informação pessoal. Dê segurança a contas vazadas ativando o 2FA ou criando uma senha mais forte." + "message": "Contas comprometidas podem expor sua informação pessoal. Proteja as contas vazadas ativando o 2FA ou criando uma senha mais forte." }, "breachCheckUsernameEmail": { - "message": "Verifique qualquer nome de usuário ou endereço de e-mail que você usa." + "message": "Confira quaisquer nomes de usuário ou endereços de e-mail que você usa." }, "checkBreaches": { - "message": "Conferir brechas" + "message": "Conferir vazamentos" }, "breachUsernameNotFound": { - "message": "$USERNAME$ não foi encontrado em nenhuma violação de dados conhecida.", + "message": "$USERNAME$ não foi encontrado em nenhum vazamento de dados conhecido.", "placeholders": { "username": { "content": "$1", @@ -2979,7 +2979,7 @@ "description": "ex. Good News, No Breached Accounts Found!" }, "breachUsernameFound": { - "message": "$USERNAME$ foi encontrado em $COUNT$ violações de dados diferentes on-line.", + "message": "$USERNAME$ foi encontrado em $COUNT$ vazamentos de dados diferentes on-line.", "placeholders": { "username": { "content": "$1", @@ -3004,10 +3004,10 @@ "message": "Usuários afetados" }, "breachOccurred": { - "message": "Ocorreu uma brecha" + "message": "Ocorreu um vazamento" }, "breachReported": { - "message": "Brecha reportada" + "message": "Vazamento relatado" }, "reportError": { "message": "Ocorreu um erro ao tentar carregar o relatório. Tente novamente" @@ -3034,14 +3034,14 @@ "description": "Add more credit to your account's balance." }, "amount": { - "message": "Montante", + "message": "Valor", "description": "Dollar amount, or quantity." }, "creditDelayed": { "message": "O crédito adicionado aparecerá em sua conta após o pagamento ser totalmente processado. Alguns métodos de pagamento são mais lentos e podem levar mais tempo para processar do que outros." }, "makeSureEnoughCredit": { - "message": "Por favor, certifique-se de que sua conta tenha crédito suficiente para esta compra. Se sua conta não tiver crédito suficiente disponível, seu método de pagamento padrão será usado para completar a diferença. Você pode adicionar crédito à sua conta na página de Cobrança." + "message": "Certifique-se de que sua conta tenha crédito suficiente para esta compra. Se sua conta não tiver crédito suficiente disponível, seu método de pagamento padrão será usado para completar a diferença. Você pode adicionar crédito à sua conta na página de Cobrança." }, "notEnoughAccountCredit": { "message": "Você não tem crédito suficiente na conta para esta compra. Você pode adicionar crédito à sua conta na página de Cobrança." @@ -3054,34 +3054,34 @@ "description": "Another way of saying \"Get a Premium membership\"" }, "premiumUpdated": { - "message": "Você se tornou Premium." + "message": "Você fez upgrade para o Premium." }, "premiumUpgradeUnlockFeatures": { - "message": "Faça upgrade da sua conta para uma conta Premium e desbloqueie ótimos recursos adicionais." + "message": "Faça upgrade da sua conta para um plano Premium e desbloqueie ótimos recursos adicionais." }, "premiumSignUpStorage": { - "message": "1 GB de armazenamento de arquivos encriptados." + "message": "1 GB de armazenamento criptografado para anexo de arquivos." }, "premiumSignUpTwoStepOptions": { - "message": "Opções adicionais de autenticação em duas etapas, como YubiKey, e Duo." + "message": "Opções de autenticação em duas etapas proprietárias como YubiKey e Duo." }, "premiumSignUpEmergency": { "message": "Acesso de emergência" }, "premiumSignUpReports": { - "message": "Higiene de senha, saúde da conta, e relatórios sobre violação de dados para manter o seu cofre seguro." + "message": "Higiene de senhas, saúde da conta, e relatórios sobre vazamentos de dados para manter o seu cofre seguro." }, "premiumSignUpTotp": { - "message": "Gerador de código de verificação TOTP (2FA) para logins no seu cofre." + "message": "Gerador de código de verificação TOTP (2FA) para credenciais no seu cofre." }, "premiumSignUpSupport": { "message": "Prioridade no suporte ao cliente." }, "premiumSignUpFuture": { - "message": "Todos os recursos Premium no futuro. Mais em breve!" + "message": "Todos as recursos do Premium no futuro. Mais em breve!" }, "premiumPrice": { - "message": "Tudo por apenas $PRICE$ /ano!", + "message": "Tudo por apenas $PRICE$ por ano!", "placeholders": { "price": { "content": "$1", @@ -3090,7 +3090,7 @@ } }, "premiumPriceWithFamilyPlan": { - "message": "Seja Premium por apenas $PRICE$ por ano, ou obtenha contas premium para $FAMILYPLANUSERCOUNT$ usuários e compartilhamento familiar ilimitado com um ", + "message": "Torne-se Premium por apenas $PRICE$ por ano, ou obtenha contas Premium para $FAMILYPLANUSERCOUNT$ usuários e compartilhamento familiar ilimitado com um ", "placeholders": { "price": { "content": "$1", @@ -3103,16 +3103,16 @@ } }, "bitwardenFamiliesPlan": { - "message": "Plano Bitwarden Families." + "message": "Plano Bitwarden Familías." }, "addons": { - "message": "Complementos" + "message": "Extensões" }, "premiumAccess": { "message": "Acesso Premium" }, "premiumAccessDesc": { - "message": "Você pode adicionar acesso Premium a todos os membros da sua organização a $PRICE$ por $INTERVAL$.", + "message": "Você pode adicionar acesso ao Premium a todos os membros da sua organização por $PRICE$ ao $INTERVAL$.", "placeholders": { "price": { "content": "$1", @@ -3128,10 +3128,10 @@ "message": "Armazenamento adicional (GB)" }, "additionalStorageGbDesc": { - "message": "# de GB adicional" + "message": "Número de GB adicionais" }, "additionalStorageIntervalDesc": { - "message": "Seu plano tem $SIZE$ de armazenamento criptografado de arquivos. Você pode adicionar armazenamento adicional por $PRICE$ por GB /$INTERVAL$.", + "message": "Seu plano vem com $SIZE$ de armazenamento criptografado de arquivos. Você pode adicionar armazenamento adicional por $PRICE$ por GB ao $INTERVAL$.", "placeholders": { "size": { "content": "$1", @@ -3169,7 +3169,7 @@ "message": "mês" }, "monthAbbr": { - "message": "mês.", + "message": "mês", "description": "Short abbreviation for 'month'" }, "paymentChargedAnnually": { @@ -3188,7 +3188,7 @@ "message": "Seu método de pagamento será cobrado por qualquer assinatura não paga." }, "paymentChargedWithTrial": { - "message": "Seu plano vem com um teste gratuito de 7 dias. Seu cartão não será cobrado até que o período de teste termine. Você pode cancelar a qualquer momento." + "message": "Seu plano vem com um teste grátis de 7 dias. Seu cartão não será cobrado até que o período de teste termine. Você pode cancelar a qualquer momento." }, "paymentInformation": { "message": "Informações de pagamento" @@ -3197,13 +3197,13 @@ "message": "Informações de cobrança" }, "billingTrialSubLabel": { - "message": "Seu método de pagamento não será cobrado durante o teste gratuito de 7 dias." + "message": "Seu método de pagamento não será cobrado durante o teste grátis de 7 dias." }, "creditCard": { "message": "Cartão de crédito" }, "paypalClickSubmit": { - "message": "Clique no botão do PayPal para entrar na sua conta do PayPal e, em seguida, clique no botão Enviar abaixo para continuar." + "message": "Clique no botão do PayPal para se conectar à sua conta do PayPal e, em seguida, clique no botão Enviar abaixo para continuar." }, "cancelSubscription": { "message": "Cancelar assinatura" @@ -3233,7 +3233,7 @@ "message": "Você tem certeza que deseja cancelar? Você perderá o acesso a todos os recursos dessa assinatura no final deste ciclo de faturamento." }, "canceledSubscription": { - "message": "A assinatura foi cancelada." + "message": "Assinatura cancelada" }, "neverExpires": { "message": "Nunca vence" @@ -3245,22 +3245,22 @@ "message": "Próxima cobrança" }, "nextChargeHeader": { - "message": "Next Charge" + "message": "Próxima cobrança" }, "plan": { - "message": "Plan" + "message": "Plano" }, "details": { "message": "Detalhes" }, "discount": { - "message": "discount" + "message": "desconto" }, "downloadLicense": { "message": "Baixar licença" }, "viewBillingToken": { - "message": "Ver token de cobrança" + "message": "Ver token de faturamento" }, "updateLicense": { "message": "Atualizar licença" @@ -3269,7 +3269,7 @@ "message": "Gerenciar assinatura" }, "launchCloudSubscription": { - "message": "Lançar assinatura na nuvem" + "message": "Iniciar Assinatura na Nuvem" }, "storage": { "message": "Armazenamento" @@ -3281,7 +3281,7 @@ "message": "Remover armazenamento" }, "subscriptionStorage": { - "message": "A sua assinatura tem um total de $MAX_STORAGE$ GB de armazenamento de arquivos criptografados. Você está usando $USED_STORAGE$ no momento.", + "message": "A sua assinatura tem um total de $MAX_STORAGE$ GB de armazenamento criptografado de arquivos. Você está usando $USED_STORAGE$ no momento.", "placeholders": { "max_storage": { "content": "$1", @@ -3315,11 +3315,11 @@ "message": "Nenhuma fatura paga." }, "paid": { - "message": "Pago", + "message": "Paga", "description": "Past tense status of an invoice. ex. Paid or unpaid." }, "unpaid": { - "message": "Por pagar", + "message": "Não paga", "description": "Past tense status of an invoice. ex. Paid or unpaid." }, "transactions": { @@ -3330,7 +3330,7 @@ "message": "Sem transações." }, "chargeNoun": { - "message": "Carregar", + "message": "Cobrança", "description": "Noun. A charge from a payment method." }, "refundNoun": { @@ -3353,10 +3353,10 @@ "message": "GB de armazenamento para remover" }, "storageAddNote": { - "message": "A adição de armazenamento resultará em ajustes no valor total da fatura e será cobrado imediatamente pela forma de pagamento registrada. A primeira cobrança será rateada pelo restante do ciclo de faturamento atual." + "message": "A adição de armazenamento resultará em ajustes no valor total da fatura e será cobrado imediatamente pela forma de pagamento cadastrada. A primeira cobrança será rateada pelo restante do ciclo de faturamento atual." }, "storageRemoveNote": { - "message": "A remoção do armazenamento resultará em ajustes no valor total da fatura que serão divididos em sua próxima cobrança de faturamento." + "message": "A remoção do armazenamento resultará em ajustes no valor total da fatura que serão rateados na sua próxima cobrança de faturamento." }, "adjustedStorage": { "message": "Ajustado $AMOUNT$ GB de armazenamento.", @@ -3371,10 +3371,10 @@ "message": "Contatar suporte ao cliente" }, "contactSupportShort": { - "message": "Entrar em contato com o suporte" + "message": "Contatar suporte" }, "updatedPaymentMethod": { - "message": "Atualizar forma de pagamento." + "message": "Método de pagamento atualizado." }, "purchasePremium": { "message": "Comprar Premium" @@ -3392,16 +3392,16 @@ } }, "uploadLicenseFilePremium": { - "message": "Para fazer upgrade da sua conta para uma assinatura Premium, você precisa enviar um arquivo de licença válido." + "message": "Para fazer upgrade da sua conta para um plano Premium, você precisa enviar um arquivo de licença válido." }, "uploadLicenseFileOrg": { - "message": "Para criar uma organização hospedada localmente, você precisa fazer o upload de um arquivo de licença válido." + "message": "Para criar uma organização hospedada localmente, você precisa enviar um arquivo de licença válido." }, "accountEmailMustBeVerified": { "message": "O endereço de e-mail da sua conta deve ser verificado." }, "newOrganizationDesc": { - "message": "As organizações permitem que você compartilhe partes do seu cofre com outras pessoas, além de gerenciar usuários relacionados para uma entidade específica, como uma família, uma equipe pequena ou uma empresa grande." + "message": "As organizações permitem que você compartilhe partes do seu cofre com outras pessoas, além de gerenciar usuários relacionados a uma entidade específica, como uma família, uma equipe pequena, ou uma empresa grande." }, "generalInformation": { "message": "Informações gerais" @@ -3410,7 +3410,7 @@ "message": "Nome da organização" }, "accountOwnedBusiness": { - "message": "Esta conta pertence a uma empresa." + "message": "Esta conta pertence à uma empresa." }, "billingEmail": { "message": "E-mail de cobrança" @@ -3431,10 +3431,10 @@ "message": "Vagas de usuários adicionais" }, "userSeatsDesc": { - "message": "# de assentos de usuário" + "message": "Número de vagas de usuário" }, "userSeatsAdditionalDesc": { - "message": "O seu plano vem com assentos de usuário de $BASE_SEATS$. Você pode adicionar mais usuários por $SEAT_PRICE$ por usuário /mês.", + "message": "Seu plano vem com $BASE_SEATS$ vagas de usuário. Você pode adicionar usuários adicionais por $SEAT_PRICE$ por usuário ao mês.", "placeholders": { "base_seats": { "content": "$1", @@ -3447,14 +3447,14 @@ } }, "userSeatsHowManyDesc": { - "message": "Quanto mais assentos de usuário você precisa? Você também pode adicionar mais assentos depois, se necessário." + "message": "Quanto mais vagas de usuário você precisa? Você também pode adicionar mais vagas depois, se necessário." }, "planNameFree": { "message": "Grátis", "description": "Free as in 'free beer'." }, "planDescFree": { - "message": "Para usuários de testes ou pessoais para compartilhar com $COUNT$ outro usuário.", + "message": "Para testes ou usuários pessoais para compartilhar com $COUNT$ outro usuário.", "placeholders": { "count": { "content": "$1", @@ -3463,10 +3463,10 @@ } }, "planNameFamilies": { - "message": "Families" + "message": "Famílias" }, "planDescFamilies": { - "message": "Para uso pessoal, para compartilhar com a família & amigos." + "message": "Para uso pessoal, para compartilhar com a família e amigos." }, "planNameTeams": { "message": "Equipes" @@ -3475,7 +3475,7 @@ "message": "Para empresas e outras organizações de equipe." }, "planNameTeamsStarter": { - "message": "Teams Starter" + "message": "Equipes Iniciantes" }, "planNameEnterprise": { "message": "Empresarial" @@ -3517,7 +3517,7 @@ } }, "limitedCollections": { - "message": "Limitado a $COUNT$ coleções", + "message": "Limitado a $COUNT$ conjuntos", "placeholders": { "count": { "content": "$1", @@ -3538,10 +3538,10 @@ "message": "Adicione e compartilhe com usuários ilimitados" }, "createUnlimitedCollections": { - "message": "Crie coleções ilimitadas" + "message": "Crie conjuntos ilimitados" }, "gbEncryptedFileStorage": { - "message": "$SIZE$ de armazenamento encriptado", + "message": "$SIZE$ de armazenamento criptografado", "placeholders": { "size": { "content": "$1", @@ -3565,13 +3565,13 @@ "message": "Acompanhe as ações do usuário com os registros de auditoria" }, "enforce2faDuo": { - "message": "Reforçar o 2FA com o Duo" + "message": "Aplique o 2FA com o Duo" }, "priorityCustomerSupport": { - "message": "Suporte prioritário ao cliente" + "message": "Suporte ao cliente com prioridade" }, "xDayFreeTrial": { - "message": "Avaliação gratuita de $COUNT$ dia(s), cancele a qualquer momento", + "message": "Teste grátis de $COUNT$ dia(s), cancele a qualquer momento", "placeholders": { "count": { "content": "$1", @@ -3589,7 +3589,7 @@ } }, "trialSecretsManagerThankYou": { - "message": "Obrigado por se inscrever no Bitwarden Secrets Manager para $PLAN$!", + "message": "Obrigado por se inscrever no Bitwarden Gerenciador de Segredos para $PLAN$!", "placeholders": { "plan": { "content": "$1", @@ -3598,7 +3598,7 @@ } }, "trialPaidInfoMessage": { - "message": "Seu $PLAN$ de teste de 7 dias será convertido em uma assinatura paga após 7 dias.", + "message": "Seu teste de 7 dias do $PLAN$ será convertido em uma assinatura paga após 7 dias.", "placeholders": { "plan": { "content": "$1", @@ -3610,10 +3610,10 @@ "message": "Enviamos um e-mail de confirmação para o e-mail de cobrança da sua equipe em " }, "monthly": { - "message": "Mensal" + "message": "Mensalmente" }, "annually": { - "message": "Anual" + "message": "Anualmente" }, "annual": { "message": "Anual" @@ -3628,7 +3628,7 @@ "message": "A sua nova organização está pronta!" }, "organizationUpgraded": { - "message": "Um upgrade foi feito na organização" + "message": "Upgrade feito na organização" }, "leave": { "message": "Sair" @@ -3640,16 +3640,16 @@ "message": "Você saiu da organização." }, "defaultCollection": { - "message": "Coleção padrão" + "message": "Conjunto padrão" }, "getHelp": { - "message": "Obter ajuda" + "message": "Receber ajuda" }, "getApps": { - "message": "Baixe os apps" + "message": "Baixar os apps" }, "loggedInAs": { - "message": "Sessão iniciada como" + "message": "Conectado como" }, "eventLogs": { "message": "Registro de eventos" @@ -3679,7 +3679,7 @@ "message": "Editar grupo" }, "deleteGroupConfirmation": { - "message": "Você tem certeza que deseja excluir este grupo?" + "message": "Você tem certeza que deseja apagar este grupo?" }, "deleteMultipleGroupsConfirmation": { "message": "Você tem certeza que deseja apagar os seguintes $QUANTITY$ grupo(s)?", @@ -3691,16 +3691,16 @@ } }, "removeUserConfirmation": { - "message": "Você tem certeza que deseja remover este(a) usuário(a)?" + "message": "Você tem certeza que deseja remover este usuário?" }, "removeOrgUserConfirmation": { "message": "Quando um membro é removido, ele já não mais acesso aos dados da organização, e esta ação é irreversível. Para adicionar o membro de volta à organização, ele deve ser convidado e integrado novamente." }, "revokeUserConfirmation": { - "message": "Quando um membro é revogado, ele não tem mais acesso aos dados da organização. Para restaurar rapidamente o acesso ao membro vá para a aba Revogados." + "message": "Quando um membro é revogado, ele não tem mais acesso aos dados da organização. Para restaurar rapidamente o acesso do membro vá para a aba de Revogados." }, "removeUserConfirmationKeyConnector": { - "message": "Alerta! Este usuário precisa do Conector de Chave para gerenciar sua criptografia. Remover este usuário de sua organização desativará permanentemente sua conta. Essa ação não pode ser desfeita. Você quer prosseguir?" + "message": "Alerta! Este usuário precisa do Key Connector para gerenciar sua criptografia. Remover este usuário de sua organização desativará permanentemente a conta dele. Essa ação não pode ser desfeita. Você quer prosseguir?" }, "externalId": { "message": "ID externo" @@ -3712,10 +3712,10 @@ "message": "ID externo do SSO" }, "ssoExternalIdDesc": { - "message": "O ID Externo do SSO é uma referência não criptografada entre o Bitwarden e seu provedor de SSO configurado." + "message": "O ID externo do SSO é uma referência não criptografada entre o Bitwarden e seu provedor de SSO configurado." }, "nestCollectionUnder": { - "message": "Agrupar coleção sob" + "message": "Agrupar conjunto em" }, "accessControl": { "message": "Controle de acesso" @@ -3724,25 +3724,25 @@ "message": "Somente leitura" }, "newCollection": { - "message": "Nova coleção" + "message": "Novo conjunto" }, "addCollection": { - "message": "Adicionar coleção" + "message": "Adicionar conjunto" }, "editCollection": { - "message": "Editar coleção" + "message": "Editar conjunto" }, "collectionInfo": { - "message": "Informações da coleção" + "message": "Informações do conjunto" }, "deleteCollectionConfirmation": { - "message": "Você tem certeza que deseja excluir esta coleção?" + "message": "Você tem certeza que deseja apagar este conjunto?" }, "editMember": { "message": "Editar membro" }, "fieldOnTabRequiresAttention": { - "message": "Um campo na aba '$TAB$' requer sua atenção.", + "message": "Um campo na aba de '$TAB$' requer sua atenção.", "placeholders": { "tab": { "content": "$1", @@ -3754,7 +3754,7 @@ "message": "Convide um novo usuário para sua organização digitando o endereço de e-mail da conta Bitwarden dele abaixo. Se ele não tiver uma conta no Bitwarden, ele será solicitado a criar uma nova conta." }, "inviteMultipleEmailDesc": { - "message": "Você pode convidar até $COUNT$ usuários por vez, separando-os com uma vírgula.", + "message": "Digite até $COUNT$ e-mails, separados com vírgula.", "placeholders": { "count": { "content": "$1", @@ -3769,16 +3769,16 @@ "message": "Você tem 0 convites restantes." }, "userUsingTwoStep": { - "message": "Este usuário está usando o login em duas etapas para proteger a sua conta." + "message": "Este usuário está usando a autenticação em duas etapas para proteger a sua conta." }, "search": { - "message": "Pesquisar" + "message": "Buscar" }, "invited": { - "message": "Convidado" + "message": "Convidados" }, "confirmed": { - "message": "Confirmado" + "message": "Confirmados" }, "clientOwnerEmail": { "message": "Email do proprietário do cliente" @@ -3796,16 +3796,16 @@ "message": "Administrador" }, "adminDesc": { - "message": "Gerencie o acesso à organização, todas as coleções, membros, relatórios, e configurações de segurança" + "message": "Gerencie o acesso à organização, todos os conjuntos, membros, relatórios, e configurações de segurança" }, "user": { "message": "Usuário" }, "userDesc": { - "message": "Acesse e adicione itens a coleções atribuídas" + "message": "Acesse e adicione itens aos conjuntos atribuídos" }, "all": { - "message": "Todos" + "message": "Tudo" }, "addAccess": { "message": "Adicionar acesso" @@ -3814,10 +3814,10 @@ "message": "Adicionar filtro de acesso" }, "refresh": { - "message": "Atualizar" + "message": "Recarregar" }, "timestamp": { - "message": "Timestamp" + "message": "Horário" }, "event": { "message": "Evento" @@ -3837,14 +3837,14 @@ "description": "Browser extension/addon" }, "desktop": { - "message": "Área de Trabalho", + "message": "Computador", "description": "Desktop app" }, "webVault": { "message": "Cofre web" }, "webApp": { - "message": "App web" + "message": "Aplicativo web" }, "cli": { "message": "CLI" @@ -3853,10 +3853,10 @@ "message": "Cofre web do Bitwarden" }, "bitSecretsManager": { - "message": "Gerenciador de Segredos do Bitwarden" + "message": "Bitwarden Gerenciador de Segredos" }, "loggedIn": { - "message": "Conectou" + "message": "Conectou-se" }, "changedPassword": { "message": "Senha da conta alterada" @@ -3871,10 +3871,10 @@ "message": "Conta recuperada da autenticação em duas etapas." }, "failedLogin": { - "message": "Falha na tentativa de login com senha incorreta." + "message": "Falha na tentativa de autenticação com senha incorreta." }, "failedLogin2fa": { - "message": "A tentativa de login falhou com o login incorreto em duas etapas." + "message": "Falha na tentativa de autenticação com autenticação em duas etapas errada." }, "incorrectPassword": { "message": "Senha incorreta" @@ -3899,7 +3899,7 @@ "message": "Editou as configurações da organização." }, "createdItemId": { - "message": "Item criado $ID$.", + "message": "Criou o item $ID$.", "placeholders": { "id": { "content": "$1", @@ -3908,7 +3908,7 @@ } }, "editedItemId": { - "message": "Item editado $ID$.", + "message": "Editou o item $ID$.", "placeholders": { "id": { "content": "$1", @@ -3917,7 +3917,7 @@ } }, "deletedItemId": { - "message": "Item $ID$ enviado para lixeira.", + "message": "Enviou o item $ID$ para a lixeira.", "placeholders": { "id": { "content": "$1", @@ -3941,7 +3941,7 @@ "message": "Ver todas as opções de autenticação" }, "viewedItemId": { - "message": "Item $ID$ visualizado.", + "message": "Visualizou o item $ID$.", "placeholders": { "id": { "content": "$1", @@ -3950,7 +3950,7 @@ } }, "viewedPasswordItemId": { - "message": "Senha visualizada para o item $ID$.", + "message": "Visualizou a senha do item $ID$.", "placeholders": { "id": { "content": "$1", @@ -3959,7 +3959,7 @@ } }, "viewedHiddenFieldItemId": { - "message": "Campo oculto visualizado para o item $ID$.", + "message": "Visualizou o campo oculto do item $ID$.", "placeholders": { "id": { "content": "$1", @@ -3977,7 +3977,7 @@ } }, "viewedSecurityCodeItemId": { - "message": "Código de segurança visualizado para o item $ID$.", + "message": "Visualizou o código de segurança do item $ID$.", "placeholders": { "id": { "content": "$1", @@ -3986,7 +3986,7 @@ } }, "viewCollectionWithName": { - "message": "Ver coleção - $NAME$", + "message": "Ver conjunto - $NAME$", "placeholders": { "name": { "content": "$1", @@ -4004,7 +4004,7 @@ } }, "copiedPasswordItemId": { - "message": "Senha copiada para o item $ID$.", + "message": "Copiou a senha do item $ID$.", "placeholders": { "id": { "content": "$1", @@ -4013,7 +4013,7 @@ } }, "copiedHiddenFieldItemId": { - "message": "Campo oculto copiado para o item $ID$.", + "message": "Copiou o campo oculto do item $ID$.", "placeholders": { "id": { "content": "$1", @@ -4022,7 +4022,7 @@ } }, "copiedSecurityCodeItemId": { - "message": "Código de segurança copiado para o item $ID$.", + "message": "Copiou o código de segurança do item $ID$.", "placeholders": { "id": { "content": "$1", @@ -4031,7 +4031,7 @@ } }, "autofilledItemId": { - "message": "Item $ID$ auto-preenchido.", + "message": "Preencheu automaticamente o item $ID$.", "placeholders": { "id": { "content": "$1", @@ -4040,7 +4040,7 @@ } }, "createdCollectionId": { - "message": "Coleção criada $ID$.", + "message": "Criou o conjunto $ID$.", "placeholders": { "id": { "content": "$1", @@ -4049,7 +4049,7 @@ } }, "editedCollectionId": { - "message": "Coleção editada $ID$.", + "message": "Editou o conjunto $ID$.", "placeholders": { "id": { "content": "$1", @@ -4058,10 +4058,10 @@ } }, "deletedCollections": { - "message": "Apagou as coleções" + "message": "Conjuntos apagados" }, "deletedCollectionId": { - "message": "Coleção excluída $ID$.", + "message": "Apagou o conjunto $ID$.", "placeholders": { "id": { "content": "$1", @@ -4070,7 +4070,7 @@ } }, "editedPolicyId": { - "message": "Política $ID$ editada.", + "message": "Editou a política $ID$.", "placeholders": { "id": { "content": "$1", @@ -4079,7 +4079,7 @@ } }, "createdGroupId": { - "message": "Grupo criado $ID$.", + "message": "Criou o grupo $ID$.", "placeholders": { "id": { "content": "$1", @@ -4088,7 +4088,7 @@ } }, "editedGroupId": { - "message": "Grupo editado $ID$.", + "message": "Editou o grupo $ID$.", "placeholders": { "id": { "content": "$1", @@ -4097,7 +4097,7 @@ } }, "deletedGroupId": { - "message": "Grupo excluído $ID$.", + "message": "Apagou o grupo $ID$.", "placeholders": { "id": { "content": "$1", @@ -4115,7 +4115,7 @@ } }, "removedUserId": { - "message": "Usuário removido $ID$.", + "message": "Removeu o usuário $ID$.", "placeholders": { "id": { "content": "$1", @@ -4133,7 +4133,7 @@ } }, "revokedUserId": { - "message": "Acesso de $ID$ revogado da organização.", + "message": "Revogou o acesso de $ID$ à organização.", "placeholders": { "id": { "content": "$1", @@ -4142,7 +4142,7 @@ } }, "restoredUserId": { - "message": "Acesso de $ID$ restaurado à organização.", + "message": "Restaurou o acesso de $ID$ à organização.", "placeholders": { "id": { "content": "$1", @@ -4160,7 +4160,7 @@ } }, "createdAttachmentForItem": { - "message": "Anexo criado para o item $ID$.", + "message": "Criou anexo para o item $ID$.", "placeholders": { "id": { "content": "$1", @@ -4169,7 +4169,7 @@ } }, "deletedAttachmentForItem": { - "message": "Anexo excluído para o item $ID$.", + "message": "Apagou anexo do item $ID$.", "placeholders": { "id": { "content": "$1", @@ -4178,7 +4178,7 @@ } }, "editedCollectionsForItem": { - "message": "Coleção editada para o item $ID$.", + "message": "Editou conjuntos do item $ID$.", "placeholders": { "id": { "content": "$1", @@ -4187,7 +4187,7 @@ } }, "invitedUserId": { - "message": "Usuário(a) convidado(a) $ID$.", + "message": "Convidou o usuário $ID$.", "placeholders": { "id": { "content": "$1", @@ -4196,7 +4196,7 @@ } }, "confirmedUserId": { - "message": "Usuário(a) confirmado(a) $ID$.", + "message": "Confirmou o usuário $ID$.", "placeholders": { "id": { "content": "$1", @@ -4205,7 +4205,7 @@ } }, "editedUserId": { - "message": "Usuário(a) editado(a) $ID$.", + "message": "Editou o usuário $ID$.", "placeholders": { "id": { "content": "$1", @@ -4214,7 +4214,7 @@ } }, "editedGroupsForUser": { - "message": "Grupo editado para usuário(a) $ID$.", + "message": "Editou grupos para o usuário $ID$.", "placeholders": { "id": { "content": "$1", @@ -4223,10 +4223,10 @@ } }, "unlinkedSso": { - "message": "SSO desvinculado." + "message": "Desvinculou o SSO." }, "unlinkedSsoUser": { - "message": "SSO desvinculado para o usuário $ID$.", + "message": "Desvinculou o SSO para o usuário $ID$.", "placeholders": { "id": { "content": "$1", @@ -4289,7 +4289,7 @@ "message": "Você está tentando se conectar?" }, "logInAttemptBy": { - "message": "Tentativa de autenticação por $EMAIL$", + "message": "Tentativa de acesso por $EMAIL$", "placeholders": { "email": { "content": "$1", @@ -4310,7 +4310,7 @@ "message": "Negar acesso" }, "thisRequestIsNoLongerValid": { - "message": "Este pedido não é mais válido." + "message": "Esta solicitação não é mais válida." }, "loginRequestApprovedForEmailOnDevice": { "message": "Solicitação de autenticação aprovada para $EMAIL$ em $DEVICE$", @@ -4326,7 +4326,7 @@ } }, "youDeniedLoginAttemptFromAnotherDevice": { - "message": "Você negou uma tentativa de autenticação de outro dispositivo. Se era você, tente entrar com o dispositivo novamente." + "message": "Você negou uma tentativa de autenticação de outro dispositivo. Se era você, tente se conectar com o dispositivo novamente." }, "loginRequestHasAlreadyExpired": { "message": "A solicitação de autenticação já expirou." @@ -4350,7 +4350,7 @@ "message": "Confira seu e-mail" }, "followTheLinkInTheEmailSentTo": { - "message": "Siga o link no e-mail enviado para" + "message": "Abra o link no e-mail enviado para" }, "andContinueCreatingYourAccount": { "message": "e continue criando a sua conta." @@ -4359,7 +4359,7 @@ "message": "Nenhum e-mail?" }, "goBack": { - "message": "Voltar" + "message": "Volte" }, "toEditYourEmailAddress": { "message": "para editar o seu endereço de e-mail." @@ -4383,7 +4383,7 @@ "message": "Acesso a grupos" }, "groupAccessUserDesc": { - "message": "Conceda acesso ao membro a coleções adicionado-o a um ou mais grupos." + "message": "Conceda acesso ao membro a conjuntos adicionado-o a um ou mais grupos." }, "invitedUsers": { "message": "Usuário(s) convidado(s)" @@ -4434,13 +4434,13 @@ "message": "Verificar e-mail" }, "verifyEmailDesc": { - "message": "Confirme o endereço de e-mail da sua conta para desbloquear o acesso a todos os recursos." + "message": "Verifique o endereço de e-mail da sua conta para desbloquear o acesso a todos os recursos." }, "verifyEmailFirst": { - "message": "Primeiro, o endereço de e-mail da sua conta precisa ser confirmado." + "message": "Primeiro, o endereço de e-mail da sua conta precisa ser verificado." }, "checkInboxForVerification": { - "message": "Verifique sua caixa de entrada do e-mail para obter o código de verificação." + "message": "Confira sua caixa de entrada do e-mail por um link de verificação." }, "emailVerified": { "message": "E-mail da conta verificado" @@ -4449,49 +4449,49 @@ "message": "E-mail verificado" }, "emailVerifiedFailed": { - "message": "Não é possível confirmar o seu e-mail. Tente enviar um novo e-mail de verificação." + "message": "Não é possível verificar o seu e-mail. Tente enviar um novo e-mail de verificação." }, "emailVerificationRequired": { - "message": "Verificação de e-mail obrigatória" + "message": "Verificação de e-mail necessária" }, "emailVerificationRequiredDesc": { "message": "Você precisa verificar o seu e-mail para usar este recurso." }, "updateBrowser": { - "message": "Atualize o navegador" + "message": "Atualizar navegador" }, "generatingYourAccessIntelligence": { - "message": "Generating your Access Intelligence..." + "message": "Gerando sua Inteligência de Acesso..." }, "fetchingMemberData": { - "message": "Fetching member data..." + "message": "Buscando dados de membros..." }, "analyzingPasswordHealth": { - "message": "Analyzing password health..." + "message": "Analisando saúde das senhas..." }, "calculatingRiskScores": { - "message": "Calculating risk scores..." + "message": "Calculando pontuações de risco..." }, "generatingReportData": { - "message": "Generating report data..." + "message": "Gerando dados do relatório..." }, "savingReport": { - "message": "Saving report..." + "message": "Salvando relatório..." }, "compilingInsights": { - "message": "Compiling insights..." + "message": "Compilando conhecimentos..." }, "loadingProgress": { - "message": "Loading progress" + "message": "Progresso de carregamento" }, "thisMightTakeFewMinutes": { - "message": "This might take a few minutes." + "message": "Isto pode levar alguns minutos." }, "riskInsightsRunReport": { "message": "Executar relatório" }, "updateBrowserDesc": { - "message": "Você está usando um navegador da Web não suportado. O cofre web pode não funcionar corretamente." + "message": "Você está usando um navegador da web não suportado. O cofre web pode não funcionar corretamente." }, "youHaveAPendingLoginRequest": { "message": "Você tem uma solicitação de autenticação pendente de outro dispositivo." @@ -4503,7 +4503,7 @@ "message": "Solicitação de autenticação" }, "freeTrialEndPromptCount": { - "message": "Seu teste gratuito termina em $COUNT$ dias.", + "message": "Seu teste grátis termina em $COUNT$ dias.", "placeholders": { "count": { "content": "$1", @@ -4512,7 +4512,7 @@ } }, "freeTrialEndPromptMultipleDays": { - "message": "$ORGANIZATION$, seu teste gratuito termina em $COUNT$ dias.", + "message": "$ORGANIZATION$, seu teste grátis termina em $COUNT$ dias.", "placeholders": { "count": { "content": "$2", @@ -4525,7 +4525,7 @@ } }, "freeTrialEndPromptTomorrow": { - "message": "$ORGANIZATION$, o seu teste gratuito termina amanhã.", + "message": "$ORGANIZATION$, o seu teste grátis termina amanhã.", "placeholders": { "organization": { "content": "$1", @@ -4534,10 +4534,10 @@ } }, "freeTrialEndPromptTomorrowNoOrgName": { - "message": "Seu teste gratuito termina amanhã." + "message": "Seu teste grátis termina amanhã." }, "freeTrialEndPromptToday": { - "message": "$ORGANIZATION$, seu teste gratuito termina hoje.", + "message": "$ORGANIZATION$, seu teste grátis termina hoje.", "placeholders": { "organization": { "content": "$1", @@ -4546,7 +4546,7 @@ } }, "freeTrialEndingTodayWithoutOrgName": { - "message": "Seu teste gratuito termina hoje." + "message": "Seu teste grátis termina hoje." }, "clickHereToAddPaymentMethod": { "message": "Clique aqui para adicionar um método de pagamento." @@ -4564,25 +4564,25 @@ } }, "joinOrganizationDesc": { - "message": "Você foi convidado para participar da organização listada acima. Para aceitar o convite, você precisa iniciar sessão ou criar uma nova conta no Bitwarden." + "message": "Você foi convidado para participar da organização listada acima. Para aceitar o convite, você precisa se conectar ou criar uma nova conta no Bitwarden." }, "finishJoiningThisOrganizationBySettingAMasterPassword": { - "message": "Termine de juntar-se nessa organização definindo uma senha principal." + "message": "Termine de juntar-se à organização configurando uma senha principal." }, "inviteAccepted": { "message": "Convite aceito" }, "invitationAcceptedDesc": { - "message": "Successfully accepted your invitation." + "message": "Seu convite foi aceito com sucesso." }, "inviteInitAcceptedDesc": { - "message": "Você agora pode acessar esta organização." + "message": "Agora, você pode acessar esta organização." }, "inviteAcceptFailed": { "message": "Não é possível aceitar o convite. Peça a um administrador da organização para enviar um novo convite." }, "inviteAcceptFailedShort": { - "message": "Não foi possível aceitar o convite. $DESCRIPTION$", + "message": "Não é possível aceitar o convite. $DESCRIPTION$", "placeholders": { "description": { "content": "$1", @@ -4594,10 +4594,10 @@ "message": "Lembrar e-mail" }, "recoverAccountTwoStepDesc": { - "message": "Se você não puder acessar sua conta por meio de seus métodos normais de autenticação em duas etapas, poderá usar seu código de recuperação para desativar a funcionalidade de duas etapas da sua conta." + "message": "Se você não puder acessar sua conta por meio de seus métodos normais de autenticação em duas etapas, poderá usar seu código de recuperação para desativar todos os provedores de duas etapas da sua conta." }, "logInBelowUsingYourSingleUseRecoveryCode": { - "message": "Autentique-se abaixo usando seu código de recuperação de uso único. Isso irá desativar todos os provedores de duas etapas na sua conta." + "message": "Conecte-se abaixo usando seu código de recuperação de uso único. Isso irá desativar todos os provedores de duas etapas na sua conta." }, "recoverAccountTwoStep": { "message": "Recuperar autenticação em duas etapas da conta" @@ -4609,7 +4609,7 @@ "message": "Saiba mais" }, "deleteRecoverDesc": { - "message": "Insira seu endereço de e-mail abaixo para recuperar e excluir sua conta." + "message": "Digite seu endereço de e-mail abaixo para recuperar e apagar sua conta." }, "deleteRecoverEmailSent": { "message": "Se a sua conta existir, enviamos um e-mail para você com mais instruções." @@ -4654,7 +4654,7 @@ "message": "Organização apagada" }, "organizationDeletedDesc": { - "message": "A organização e todos os dados associados foram excluídos." + "message": "A organização e todos os dados associados foram apagados." }, "organizationUpdated": { "message": "Organização salva" @@ -4663,18 +4663,18 @@ "message": "Informações de tributos" }, "taxInformationDesc": { - "message": "Para clientes dentro dos EUA, o código postal (ZIP code) é necessário para satisfazer os requisitos fiscais das vendas. para outros países você pode opcionalmente fornecer um número de identificação fiscal (VAT/GST) e/ou um endereço para aparecer nas suas faturas." + "message": "Para clientes dentro dos EUA, o código postal (ZIP code) é necessário para satisfazer os requisitos fiscais das vendas, para outros países você pode opcionalmente fornecer um número de identificação fiscal (VAT/GST) e/ou um endereço para aparecer nas suas faturas." }, "billingPlan": { "message": "Plano", "description": "A billing plan/package. For example: Families, Teams, Enterprise, etc." }, "changeBillingPlan": { - "message": "Alterar plano", + "message": "Fazer upgrade do plano", "description": "A billing plan/package. For example: Families, Teams, Enterprise, etc." }, "changeBillingPlanUpgrade": { - "message": "Atualize sua conta para outro plano fornecendo as informações abaixo. Por favor, verifique se você tem um método de pagamento ativo adicionado à conta.", + "message": "Faça upgrade da sua conta para outro plano fornecendo as informações abaixo. Certifique-se que você tem um método de pagamento ativo adicionado à conta.", "description": "A billing plan/package. For example: Families, Teams, Enterprise, etc." }, "invoiceNumber": { @@ -4697,10 +4697,10 @@ "message": "Verificar conta bancária" }, "verifyBankAccountDesc": { - "message": "Fizemos dois micro-depósitos em sua conta bancária (pode demorar de 1 a 2 dias úteis para aparecer). Insira esses valores para confirmar a conta bancária." + "message": "Fizemos dois micro-depósitos em sua conta bancária (pode demorar de 1 a 2 dias úteis para aparecer). Digite esses valores para confirmar a conta bancária." }, "verifyBankAccountInitialDesc": { - "message": "O pagamento com uma conta bancária só está disponível para clientes nos Estados Unidos. Você será solicitado a confirmar sua conta bancária. Vamos fazer dois micro-depósitos nos próximos 1-2 dias úteis. Insira esses valores na página de faturamento da organização para confirmar a conta bancária." + "message": "O pagamento com uma conta bancária só está disponível para clientes nos Estados Unidos. Você precisará verificar sua conta bancária. Faremos um micro-depósito nos próximos 1-2 dias úteis. Digite os valores na página de assinatura da organização para verificar a conta bancária." }, "verifyBankAccountFailureWarning": { "message": "A falha na verificação da conta bancária resultará em um pagamento não atendido e sua assinatura será suspensa." @@ -4712,7 +4712,7 @@ "message": "Conta bancária" }, "amountX": { - "message": "Montante $COUNT$", + "message": "Valor $COUNT$", "description": "Used in bank account verification of micro-deposits. Amount, as in a currency amount. Ex. Amount 1 is $2.00, Amount 2 is $1.50", "placeholders": { "count": { @@ -4741,20 +4741,20 @@ "message": "Individual (pessoal)" }, "enterInstallationId": { - "message": "Insira o seu ID de instalação" + "message": "Digite o seu ID de instalação" }, "limitSubscriptionDesc": { - "message": "Defina um limite de vagas para sua assinatura. Quando esse limite for atingido, você não poderá convidar novos usuários." + "message": "Configure um limite de vagas para sua assinatura. Quando esse limite for atingido, você não poderá convidar novos usuários." }, "limitSmSubscriptionDesc": { - "message": "Defina um limite de vagas para sua assinatura do Gerenciador de Segredos. Ao atingir este limite, você não poderá convidar novos membros." + "message": "Configure um limite de vagas para sua assinatura do Gerenciador de Segredos. Ao atingir este limite, você não poderá convidar novos membros." }, "maxSeatLimit": { "message": "Limite de vagas (opcional)", "description": "Upper limit of seats to allow through autoscaling" }, "maxSeatCost": { - "message": "Custo de vaga potencial máximo" + "message": "Custo máximo possível de vagas" }, "addSeats": { "message": "Adicionar vagas", @@ -4777,7 +4777,7 @@ } }, "limitSubscription": { - "message": "Assinatura Limite (Opcional)" + "message": "Limitar assinatura (opcional)" }, "subscriptionSeats": { "message": "Vagas da assinatura" @@ -4813,7 +4813,7 @@ } }, "subscriptionUserSeatsWithoutAdditionalSeatsOption": { - "message": "Você pode convidar até $COUNT$ membros sem custos adicionais. Entre em contato com o Suporte ao Cliente para melhorar seu plano e convidar mais membros.", + "message": "Você pode convidar até $COUNT$ membros sem custos adicionais. Entre em contato com o Suporte ao Cliente para fazer upgrade do seu plano e convidar mais membros.", "placeholders": { "count": { "content": "$1", @@ -4822,7 +4822,7 @@ } }, "subscriptionFreePlan": { - "message": "Você não pode convidar mais do que $COUNT$ usuários sem melhorar seu plano.", + "message": "Você não pode convidar mais do que $COUNT$ usuários sem fazer upgrade do seu plano.", "placeholders": { "count": { "content": "$1", @@ -4831,7 +4831,7 @@ } }, "subscriptionUpgrade": { - "message": "Você não pode convidar mais de $COUNT$ membros sem melhorar seu plano.", + "message": "Você não pode convidar mais de $COUNT$ membros sem fazer upgrade do seu plano.", "placeholders": { "count": { "content": "$1", @@ -4849,7 +4849,7 @@ } }, "subscriptionMaxReached": { - "message": "Ajustes em sua assinatura resultarão em alterações rateadas em seus totais de cobrança. Você não pode convidar mais de $COUNT$ usuários sem aumentar suas vagas de assinatura.", + "message": "Ajustes em sua assinatura resultarão em alterações rateadas em seus totais de cobrança. Você não pode convidar mais de $COUNT$ usuários sem aumentar as vagas da sua assinatura.", "placeholders": { "count": { "content": "$1", @@ -4858,7 +4858,7 @@ } }, "subscriptionSeatMaxReached": { - "message": "Você não pode convidar mais de $COUNT$ membros sem aumentar as suas vagas da assinatura.", + "message": "Você não pode convidar mais de $COUNT$ membros sem aumentar as vagas da sua assinatura.", "placeholders": { "count": { "content": "$1", @@ -4873,13 +4873,13 @@ "message": "Vagas a remover" }, "seatsAddNote": { - "message": "A adição de assentos de usuário resultará em ajustes no total da cobrança, e será cobrada imediatamente pela sua forma de pagamento registrada. A primeira cobrança será rateada pelo restante do ciclo do faturamento atual." + "message": "A adição de vagas de usuário resultará em ajustes no total da cobrança, e será cobrada imediatamente pela sua forma de pagamento cadastrada. A primeira cobrança será rateada pelo restante do ciclo do faturamento atual." }, "seatsRemoveNote": { - "message": "A remoção dos assentos de usuário resultará em ajustes no total do faturamento, que será rateado como crédito para sua próxima cobrança." + "message": "A remoção de vagas de usuário resultará em ajustes no total do faturamento, que será rateado como crédito para sua próxima cobrança." }, "adjustedSeats": { - "message": "Ajustado $AMOUNT$ assentos de usuário.", + "message": "Ajustou $AMOUNT$ vagas de usuário.", "placeholders": { "amount": { "content": "$1", @@ -4897,7 +4897,7 @@ } }, "reorderToggleButton": { - "message": "Reordene $LABEL$. Use a tecla de seta para mover o item para cima ou para baixo.", + "message": "Reordenar $LABEL$. Use a tecla de seta para mover o item para cima ou para baixo.", "placeholders": { "label": { "content": "$1", @@ -4940,10 +4940,10 @@ } }, "updateEncryptionKeyWarning": { - "message": "Depois de atualizar sua chave de criptografia, é necessário encerrar e iniciar a sessão em todos os aplicativos do Bitwarden que você está usando atualmente (como o aplicativo móvel ou as extensões do navegador). Não encerrar e iniciar sessão (que baixa sua nova chave de criptografia) pode resultar em corrupção de dados. Nós tentaremos desconectá-lo automaticamente, mas isso pode demorar um pouco." + "message": "Depois de atualizar sua chave de criptografia, é necessário se desconectar e reconectar em todos os aplicativos do Bitwarden que você está usando atualmente (como o aplicativo móvel ou as extensões do navegador). Não fazer isso (que descarrega sua nova chave de criptografia) pode resultar em corrupção de dados. Nós tentaremos desconectá-lo automaticamente, mas isso pode demorar um pouco." }, "updateEncryptionKeyAccountExportWarning": { - "message": "Quaisquer exportações restritas pela conta que você tem salvas se tornarão inválidas." + "message": "Quaisquer exportações que você tem salvas que são restritas à conta se tornarão inválidas." }, "legacyEncryptionUnsupported": { "message": "A criptografia legada não é mais suportada. Entre em contato com o suporte para recuperar a sua conta." @@ -4955,7 +4955,7 @@ "message": "Carregando" }, "upgrade": { - "message": "Atualizar" + "message": "Fazer upgrade" }, "upgradeOrganization": { "message": "Fazer upgrade da organização" @@ -4973,7 +4973,7 @@ "message": "Reembolsado" }, "nothingSelected": { - "message": "Você selecionou nada." + "message": "Voce não selecionou nada." }, "receiveMarketingEmailsV2": { "message": "Receba conselhos, novidades, e oportunidades de pesquisa do Bitwarden em sua caixa de entrada." @@ -5009,13 +5009,13 @@ "message": "Filtros" }, "vaultTimeout": { - "message": "Tempo Limite do Cofre" + "message": "Tempo limite do cofre" }, "vaultTimeout1": { "message": "Tempo limite" }, "vaultTimeoutDesc": { - "message": "Escolha quando o tempo limite do seu cofre irá se esgotar e executar a ação selecionada." + "message": "Escolha quando o seu cofre executará a ação do tempo limite do cofre." }, "vaultTimeoutLogoutDesc": { "message": "Escolha quando seu cofre será desconectado." @@ -5039,7 +5039,7 @@ "message": "4 horas" }, "onRefresh": { - "message": "Ao recarregar o navegador" + "message": "No reinício do navegador" }, "dateUpdated": { "message": "Atualizado", @@ -5075,7 +5075,7 @@ "message": "Contas de serviço não podem ser criadas em organizações suspensas. Entre em contato com o proprietário da organização para obter assistência." }, "licenseIsExpired": { - "message": "A licença está expirada." + "message": "A licença está vencida." }, "updatedUsers": { "message": "Usuários atualizados" @@ -5090,7 +5090,7 @@ "message": "Propriedade" }, "whoOwnsThisItem": { - "message": "Quem possui este item?" + "message": "Quem é o proprietário deste item?" }, "strong": { "message": "Forte", @@ -5105,7 +5105,7 @@ "description": "ex. A weak password. Scale: Very Weak -> Weak -> Good -> Strong" }, "veryWeak": { - "message": "Muito Fraca", + "message": "Muito fraca", "description": "ex. A very weak password. Scale: Very Weak -> Weak -> Good -> Strong" }, "weakMasterPassword": { @@ -5115,13 +5115,13 @@ "message": "Senha fraca identificada. Você deve usar uma senha principal forte para proteger a sua conta. Tem certeza que quer usar esta senha principal?" }, "rotateAccountEncKey": { - "message": "Também rodar a chave de encriptação da minha conta" + "message": "Rotacionar a chave de criptografia da minha conta" }, "rotateEncKeyTitle": { "message": "Rotacionar chave de criptografia" }, "rotateEncKeyConfirmation": { - "message": "Você tem certeza que quer rodar a chave de encriptação da sua conta?" + "message": "Tem certeza que quer rotacionar a chave de criptografia da sua conta?" }, "attachmentsNeedFix": { "message": "Este item tem anexos de arquivos antigos que precisam ser corrigidos." @@ -5134,10 +5134,10 @@ "description": "This is a verb. ex. 'Fix The Car'" }, "oldAttachmentsNeedFixDesc": { - "message": "Há anexos de arquivos antigos no seu cofre que precisam ser corrigidos antes que você possa girar a chave de criptografia da sua conta." + "message": "Há anexos de arquivos antigos no seu cofre que precisam ser corrigidos antes que você possa rotacionar a chave de criptografia da sua conta." }, "yourAccountsFingerprint": { - "message": "A sua frase biométrica", + "message": "A frase biométrica da sua conta", "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": { @@ -5145,7 +5145,7 @@ "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." }, "fingerprintMatchInfo": { - "message": "Certifique-se de que o seu cofre esteja desbloqueado e a frase biométrica corresponda ao outro dispositivo." + "message": "Certifique-se de que o seu cofre está desbloqueado e a frase biométrica corresponda ao do outro dispositivo." }, "fingerprintPhraseHeader": { "message": "Frase biométrica" @@ -5158,42 +5158,42 @@ "message": "Você será notificado assim que a solicitação ser aprovada" }, "free": { - "message": "Gratuito", + "message": "Grátis", "description": "Free, as in 'Free beer'" }, "apiKey": { - "message": "Chave API" + "message": "Chave da API" }, "apiKeyDesc": { - "message": "Sua chave API pode ser usada para autenticar na API pública do Bitwarden." + "message": "Sua chave da API pode ser usada para autenticar na API pública do Bitwarden." }, "apiKeyRotateDesc": { - "message": "Girar a chave da API invalidará a chave anterior. Você pode girar sua chave de API se acreditar que a chave atual não é mais segura de usar." + "message": "Rotacionar a chave da API invalidará a chave anterior. Você pode rotacionar sua chave de API se acreditar que a chave atual não é mais segura de usar." }, "apiKeyWarning": { - "message": "Sua chave de API tem acesso total à organização. Deve ser mantido em segredo." + "message": "Sua chave de API tem acesso total à organização. Deve ser mantida em segredo." }, "userApiKeyDesc": { - "message": "Sua chave API pode ser usada para autenticar no Bitwarden CLI." + "message": "Sua chave da API pode ser usada para autenticar no Bitwarden CLI." }, "userApiKeyWarning": { - "message": "Sua chave de API é um mecanismo de autenticação alternativo. Deve ser mantido em segredo." + "message": "Sua chave de API é um mecanismo de autenticação alternativo. Deve ser mantida em segredo." }, "oauth2ClientCredentials": { "message": "Credenciais do cliente OAuth 2.0", "description": "'OAuth 2.0' is a programming protocol. It should probably not be translated." }, "viewApiKey": { - "message": "Visualizar chave da API" + "message": "Ver chave da API" }, "rotateApiKey": { "message": "Rotacionar chave da API" }, "selectOneCollection": { - "message": "Você deve selecionar pelo menos uma coleção." + "message": "Você deve selecionar pelo menos um conjunto." }, "couldNotChargeCardPayInvoice": { - "message": "Não foi possível cobrar no seu cartão. Por favor, veja e pague a fatura pendente listada abaixo." + "message": "Não foi possível cobrar o seu cartão. Veja e pague a fatura pendente listada abaixo." }, "minLength": { "message": "Comprimento mínimo" @@ -5202,10 +5202,10 @@ "message": "Clonar" }, "masterPassPolicyTitle": { - "message": "Requisitos de senha principal" + "message": "Requisitos da senha principal" }, "masterPassPolicyDesc": { - "message": "Defina os requisitos para a força da senha principal." + "message": "Configure os requisitos para a força da senha principal." }, "passwordStrengthScore": { "message": "Pontuação de força da senha $SCORE$", @@ -5220,7 +5220,7 @@ "message": "Exigir autenticação em duas etapas" }, "twoStepLoginPolicyDesc": { - "message": "Exigir que os usuários definam a autenticação de dois passos nas suas contas pessoais." + "message": "Exija que os membros configurem a autenticação de duas etapas." }, "twoStepLoginPolicyWarning": { "message": "Membros da organização que não são proprietários ou administradores e não têm a autenticação em duas etapas configurada em sua conta serão removidos da organização e receberão um e-mail notificando-os sobre a mudança." @@ -5229,7 +5229,7 @@ "message": "Você é um membro de uma organização que exige que a autenticação de dois passos seja ativada na sua conta de usuário. Se desativar todos os serviços de autenticação de dois passos, você será automaticamente removido dessas organizações." }, "passwordGeneratorPolicyDesc": { - "message": "Defina requisitos para o gerador de senhas." + "message": "Configure requisitos para o gerador de senhas." }, "masterPasswordPolicyInEffect": { "message": "Uma ou mais políticas da organização exigem que a sua senha principal cumpra aos seguintes requisitos:" @@ -5253,16 +5253,16 @@ } }, "policyInEffectUppercase": { - "message": "Contém um ou mais caracteres em maiúsculo" + "message": "Conter um ou mais caracteres em maiúsculo" }, "policyInEffectLowercase": { - "message": "Contém um ou mais caracteres em minúsculo" + "message": "Conter um ou mais caracteres em minúsculo" }, "policyInEffectNumbers": { - "message": "Contém um ou mais números" + "message": "Conter um ou mais números" }, "policyInEffectSpecial": { - "message": "Contém um ou mais dos seguintes caracteres especiais $CHARS$", + "message": "Conter um ou mais dos seguintes caracteres especiais $CHARS$", "placeholders": { "chars": { "content": "$1", @@ -5301,28 +5301,28 @@ "description": "Noun: A special folder for holding deleted items that have not yet been permanently deleted" }, "searchTrash": { - "message": "Pesquisar na lixeira" + "message": "Buscar na lixeira" }, "permanentlyDelete": { - "message": "Apagar para sempre" + "message": "Apagar permanentemente" }, "permanentlyDeleteSelected": { - "message": "Apagar selecionados para sempre" + "message": "Apagar selecionados permanentemente" }, "permanentlyDeleteItem": { - "message": "Apagar item para sempre" + "message": "Apagar item permanentemente" }, "permanentlyDeleteItemConfirmation": { - "message": "Você tem certeza que deseja excluir permanentemente esse item?" + "message": "Você tem certeza que deseja apagar permanentemente esse item?" }, "permanentlyDeletedItem": { - "message": "Item apagado para sempre" + "message": "Item apagado permanentemente" }, "permanentlyDeletedItems": { - "message": "Itens apagados para sempre" + "message": "Itens apagados permanentemente" }, "permanentlyDeleteSelectedItemsDesc": { - "message": "Você selecionou $COUNT$ item(ns) para excluir permanentemente. Tem certeza que deseja excluir permanentemente todos estes itens?", + "message": "Você selecionou $COUNT$ item(ns) para apagar permanentemente. Tem certeza que quer apagar todos estes itens permanentemente?", "placeholders": { "count": { "content": "$1", @@ -5331,7 +5331,7 @@ } }, "permanentlyDeletedItemId": { - "message": "Item $ID$ apagado para sempre", + "message": "Item $ID$ apagado permanentemente", "placeholders": { "id": { "content": "$1", @@ -5361,7 +5361,7 @@ } }, "vaultTimeoutLogOutConfirmation": { - "message": "Sair irá remover todo o acesso ao seu cofre e requer autenticação online após o período de tempo limite. Tem certeza de que deseja usar esta configuração?" + "message": "Desconectar-se irá remover todo o acesso ao seu cofre e requirirá autenticação on-line após o período de tempo limite. Tem certeza de que deseja usar esta configuração?" }, "vaultTimeoutLogOutConfirmationTitle": { "message": "Confirmação de ação do tempo limite" @@ -5376,7 +5376,7 @@ "message": "Incluir informações sobre IVA/GST (opcional)" }, "taxIdNumber": { - "message": "ID de Imposto VAT/GST" + "message": "ID de imposto VAT/GST" }, "taxInfoUpdated": { "message": "Informações de impostos atualizadas." @@ -5391,13 +5391,13 @@ "message": "Identificador da organização" }, "ssoLogInWithOrgIdentifier": { - "message": "Entre usando o portal de autenticação única da sua organização. Digite o identificador de SSO da sua organização para começar." + "message": "Conecte-se usando o portal de autenticação única da sua organização. Digite o identificador de SSO da sua organização para começar." }, "singleSignOnEnterOrgIdentifier": { "message": "Digite o identificador de SSO da sua organização para começar" }, "singleSignOnEnterOrgIdentifierText": { - "message": "Para entrar com seu provedor de SSO, digite o identificador de SSO da sua organização para começar. Talvez seja necessário digitar este identificador de SSO quando entrar com um novo dispositivo." + "message": "Para se conectar com seu provedor de SSO, digite o identificador de SSO da sua organização para começar. Talvez seja necessário digitar este identificador de SSO quando se conectar com um novo dispositivo." }, "enterpriseSingleSignOn": { "message": "Autenticação única empresarial" @@ -5406,7 +5406,7 @@ "message": "Agora você pode fechar esta aba e continuar na extensão." }, "youSuccessfullyLoggedIn": { - "message": "Você entrou na sua conta com sucesso" + "message": "Você se conectou com sucesso" }, "thisWindowWillCloseIn5Seconds": { "message": "Esta janela será fechada automaticamente em 5 segundos" @@ -5415,10 +5415,10 @@ "message": "Você pode fechar esta janela" }, "includeAllTeamsFeatures": { - "message": "Recursos para Todas as Equipes, além de:" + "message": "Todos os recursos do Equipes, mais:" }, "includeAllTeamsStarterFeatures": { - "message": "Todos os recursos do Teams Starter, mais:" + "message": "Todos os recursos do Equipes Iniciantes, mais:" }, "chooseMonthlyOrAnnualBilling": { "message": "Escolha cobrança mensal ou anual" @@ -5474,7 +5474,7 @@ "message": "Restrinja membros de entrar em outras organizações. Essa política é necessária para organizações que tenham ativado a verificação de domínio." }, "singleOrgBlockCreateMessage": { - "message": "Sua organização atual tem uma política que não permite que você entre em mais de uma organização. Por favor, entre em contato com os administradores da sua organização ou cadastre-se a partir de uma conta do Bitwarden diferente." + "message": "Sua organização atual tem uma política que não permite que você entre em mais de uma organização. Entre em contato com os administradores da sua organização ou cadastre-se a partir de uma conta do Bitwarden diferente." }, "singleOrgPolicyMemberWarning": { "message": "Membros não adequados serão colocados no estado revogado até que saiam de todas as outras organizações. Administradores estão isentos e podem restaurar os membros assim que se adequarem." @@ -5483,7 +5483,7 @@ "message": "Exigir autenticação única" }, "requireSsoPolicyDesc": { - "message": "Exija que os usuários entrem com o método de autenticação única empresarial." + "message": "Exija que os usuários se conectem com o método de autenticação única empresarial." }, "prerequisite": { "message": "Pré-requisito" @@ -5528,7 +5528,7 @@ "message": "Texto" }, "sendPasswordDescV3": { - "message": "Adicione uma senha opcional para os destinatários acessarem este Send.", + "message": "Adicione uma senha opcional para que os destinatários acessem este Send.", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "createSend": { @@ -5552,25 +5552,25 @@ "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "deleteSend": { - "message": "Excluir Send", + "message": "Apagar Send", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "deleteSendPermanentConfirmation": { - "message": "Tem certeza de que quer apagar este Send para sempre?", + "message": "Tem certeza de que quer apagar este Send permanentemente?", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "deletionDate": { "message": "Data de apagamento" }, "deletionDateDescV2": { - "message": "O Send será apagado para sempre nesta data.", + "message": "O Send será apagado permanentemente nesta data.", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "expirationDate": { "message": "Data de validade" }, "expirationDateDesc": { - "message": "Se configurado, o acesso a este Send expirará no horário especificado.", + "message": "Se configurado, o acesso a este Send acabará no horário especificado.", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "maxAccessCount": { @@ -5580,7 +5580,7 @@ "message": "Desativado" }, "revoked": { - "message": "Revogado" + "message": "Revogados" }, "sendLink": { "message": "Link do Send", @@ -5616,14 +5616,14 @@ "message": "Ocultar texto por padrão" }, "expired": { - "message": "Expirado" + "message": "Vencido" }, "searchSends": { - "message": "Pesquisar Sends", + "message": "Buscar nos Sends", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendProtectedPassword": { - "message": "Este Send está protegido com uma senha. Por favor, digite a senha abaixo para continuar.", + "message": "Este Send está protegido com uma senha. Digite a senha abaixo para continuar.", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendProtectedPasswordDontKnow": { @@ -5638,11 +5638,11 @@ "message": "Baixar anexos" }, "sendAccessPasswordTitle": { - "message": "Digite a senha para visualizar este Send", + "message": "Digite a senha para ver este Send", "description": "Title of the Send password authentication screen." }, "sendAccessContentTitle": { - "message": "Visualizar Send", + "message": "Ver Send", "description": "Title of the Send view content screen." }, "sendAccessUnavailable": { @@ -5650,7 +5650,7 @@ "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "missingSendFile": { - "message": "O arquivo associado a este Send não foi encontrado.", + "message": "O arquivo associado com este Send não foi encontrado.", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "noSendsInList": { @@ -5661,10 +5661,10 @@ "message": "Acesso de emergência" }, "emergencyAccessDesc": { - "message": "Conceda e gerencie o acesso de emergência para contatos confiáveis. Contatos confiáveis podem solicitar acesso a visualizar ou assumir o controle da sua conta em caso de emergência. Visite a nossa página de ajuda para obter mais informações e detalhes sobre como o compartilhamento de conhecimento zero funciona." + "message": "Conceda e gerencie o acesso de emergência para contatos de confiança. Contatos de confiança podem solicitar acesso para ver ou assumir o controle da sua conta em caso de emergência. Visite a nossa página de ajuda para obter mais informações e detalhes sobre como o compartilhamento de conhecimento zero funciona." }, "emergencyAccessOwnerWarning": { - "message": "Você é o Proprietário de uma ou mais organizações. Se você conceder o assumir controle a um contato de emergência, eles serão capazes de usar todas as suas permissões como Proprietário ao assumir controle." + "message": "Você é o proprietário de uma ou mais organizações. Se você conceder o assumir controle a um contato de emergência, eles serão capazes de usar todas as suas permissões como proprietário ao assumir controle." }, "trustedEmergencyContacts": { "message": "Contatos de emergência confiados" @@ -5679,7 +5679,7 @@ "message": "Designado como contato de emergência" }, "noGrantedAccess": { - "message": "Você ainda não foi designado como um contato de emergência de ninguém." + "message": "Você ainda não foi designado como um contato de emergência para ninguém." }, "inviteEmergencyContact": { "message": "Convidar contato de emergência" @@ -5703,7 +5703,7 @@ "message": "Assumir controle" }, "takeoverDesc": { - "message": "Pode redefinir a sua conta com uma nova senha principal." + "message": "Pode reconfigurar a sua conta com uma nova senha principal." }, "waitTime": { "message": "Tempo de espera" @@ -5727,7 +5727,7 @@ "message": "Usuário convidado." }, "acceptEmergencyAccess": { - "message": "Você foi convidado para se tornar um contato de emergência para o usuário listado acima. Para aceitar o convite, você precisa entrar ou criar uma nova conta no Bitwarden." + "message": "Você foi convidado para se tornar um contato de emergência para o usuário listado acima. Para aceitar o convite, você precisa se conectar ou criar uma nova conta no Bitwarden." }, "emergencyInviteAcceptFailed": { "message": "Não é possível aceitar o convite. Peça ao usuário para enviar um novo convite." @@ -5748,7 +5748,7 @@ "message": "Solicitar acesso" }, "requestAccessConfirmation": { - "message": "Tem certeza que deseja solicitar acesso de emergência? Você receberá acesso após $WAITTIME$ dia(s) ou sempre que o usuário aprovar manualmente a solicitação.", + "message": "Tem certeza que deseja solicitar acesso de emergência? Você receberá acesso após $WAITTIME$ dia(s) ou se o usuário aprovar manualmente a solicitação.", "placeholders": { "waittime": { "content": "$1", @@ -5791,10 +5791,10 @@ "message": "Acesso de emergência recusado" }, "grantorDetailsNotFound": { - "message": "Detalhes do condecente não encontrados" + "message": "Detalhes do concedente não encontrados" }, "passwordResetFor": { - "message": "Senha redefinida para $USER$. Agora você pode acessar usando a nova senha.", + "message": "Senha reconfigurada para $USER$. Agora você pode se conectar usando a nova senha.", "placeholders": { "user": { "content": "$1", @@ -5806,15 +5806,15 @@ "message": "Aplicar propriedade de dados da organização" }, "organizationDataOwnershipDesc": { - "message": "Exigir que todos os itens sejam propriedade de uma organização, removendo a opção de armazenar itens ao nível da conta.", + "message": "Exija que todos os itens sejam propriedade de uma organização, removendo a opção de armazenar itens ao nível da conta.", "description": "This is the policy description shown in the policy list." }, "organizationDataOwnershipDescContent": { - "message": "All items will be owned and saved to the organization, enabling organization-wide controls, visibility, and reporting. When turned on, a default collection will be available for each member to store items. Learn more about managing the ", + "message": "Todos os itens serão propriedade da e salvos na organização, ativando controles, visibilidade, e relatórios ao nível da organização. Quando ativado, um conjunto padrão ficará disponível para que cada membro armazene seus itens. Saiba mais sobre gerenciar o ", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'All items will be owned and saved to the organization, enabling organization-wide controls, visibility, and reporting. When turned on, a default collection will be available for each member to store items. Learn more about managing the credential lifecycle.'" }, "organizationDataOwnershipContentAnchor": { - "message": "ciclo de vida credencial", + "message": "ciclo de vida de credenciais", "description": "This will be used as a hyperlink" }, "organizationDataOwnershipWarningTitle": { @@ -5827,85 +5827,85 @@ "message": "não será selecionado automaticamente ao criar itens" }, "organizationDataOwnershipWarning3": { - "message": "não pode ser gerenciado pelo Console de Admin até que o usuário seja removido" + "message": "não pode ser gerenciado pelo painel de administração até que o usuário seja removido" }, "organizationDataOwnershipWarningContentTop": { - "message": "Ao desligar esta política, a coleção padrão: " + "message": "Ao desativar esta política, o conjunto padrão: " }, "organizationDataOwnershipWarningContentBottom": { "message": "Saiba mais sobre o ", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Learn more about the credential lifecycle.'" }, "availableNow": { - "message": "Available now" + "message": "Disponível agora" }, "autoConfirm": { - "message": "Automatic confirmation of new users" + "message": "Confirmação automática de novos usuários" }, "autoConfirmDescription": { - "message": "New users invited to the organization will be automatically confirmed when an admin’s device is unlocked.", + "message": "Novos usuários convidados para a organização serão confirmados automaticamente quando o dispositivo de um administrador for desbloqueado.", "description": "This is the description of the policy as it appears in the 'Policies' page" }, "howToTurnOnAutoConfirm": { - "message": "How to turn on automatic user confirmation" + "message": "Como ativar a confirmação automática de usuários" }, "autoConfirmExtension1": { - "message": "Open your Bitwarden extension" + "message": "Abra a sua extensão do Bitwarden" }, "autoConfirmExtension2": { - "message": "Select", + "message": "Selecione", "description": "This is a fragment of a larger sencence. The whole sentence will read: 'Select Turn on'" }, "autoConfirmExtension3": { - "message": " Turn on", + "message": " Ativar", "description": "This is a fragment of a larger sencence. The whole sentence will read: 'Select Turn on'" }, "autoConfirmExtensionOpened": { - "message": "Successfully opened the Bitwarden browser extension. You can now activate the automatic user confirmation setting." + "message": "A extensão de navegador do Bitwarden foi aberta com sucesso. Agora você pode ativar a configuração de confirmação automática de usuários." }, "autoConfirmPolicyEditDescription": { - "message": "New users invited to the organization will be automatically confirmed when an admin’s device is unlocked. Before turning on this policy, please review and agree to the following: ", + "message": "Novos usuários convidados para a organização serão confirmados automaticamente quando o dispositivo de um administrador for desbloqueado. Antes de ativar esta política, revisa e concorde com o seguinte: ", "description": "This is the description of the policy as it appears inside the policy edit dialog" }, "autoConfirmAcceptSecurityRiskTitle": { - "message": "Potential security risk. " + "message": "Potencial risco de segurança. " }, "autoConfirmAcceptSecurityRiskDescription": { - "message": "Automatic user confirmation could pose a security risk to your organization’s data." + "message": "A confirmação automática de usuários pode representar um risco para a segurança dos dados da sua organização." }, "autoConfirmAcceptSecurityRiskLearnMore": { - "message": "Learn about the risks", + "message": "Saiba mais sobre os riscos", "description": "The is the link copy for the first check box option in the edit policy dialog" }, "autoConfirmSingleOrgRequired": { - "message": "Single organization policy required. " + "message": "Política de organização única necessária. " }, "autoConfirmSingleOrgRequiredDesc": { - "message": "All members must only belong to this organization to activate this automation." + "message": "Todos os membros devem pertencer somente a esta organização para ativar esta automação." }, "autoConfirmSingleOrgExemption": { - "message": "Single organization policy will extend to all roles. " + "message": "A política de organização única estenderá a todos os cargos. " }, "autoConfirmNoEmergencyAccess": { - "message": "No emergency access. " + "message": "Sem acesso de emergência. " }, "autoConfirmNoEmergencyAccessDescription": { - "message": "Emergency Access will be removed." + "message": "O acesso de emergência será removido." }, "autoConfirmCheckBoxLabel": { - "message": "I accept these risks and policy updates" + "message": "Eu aceito estes riscos e atualizações de política" }, "personalOwnership": { "message": "Remover cofre individual" }, "personalOwnershipPolicyDesc": { - "message": "Exigir que os usuários salvem itens em uma organização removendo a opção de cofre individual." + "message": "Exija que os usuários salvem itens em uma organização removendo a opção de cofre individual." }, "personalOwnershipExemption": { "message": "Os proprietários e administradores da organização são isentos da aplicação desta política." }, "personalOwnershipSubmitError": { - "message": "Devido a uma política empresarial, você não pode salvar itens no seu cofre pessoal. Altere a opção de propriedade para uma organização e escolha entre as coleções disponíveis." + "message": "Devido a uma política empresarial, você não pode salvar itens no seu cofre individual. Altere a opção de propriedade para uma organização e escolha entre os conjuntos disponíveis." }, "desktopAutotypePolicy": { "message": "Configuração padrão da digitação automática no computador" @@ -5918,18 +5918,18 @@ "message": "Remover Send" }, "disableSendPolicyDesc": { - "message": "Não permitir que usuários criem ou editem Sends.", + "message": "Não permita que usuários criem ou editem Sends.", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "disableSendExemption": { - "message": "Os usuários da organização que podem gerenciar as políticas da organização estão isentos da aplicação desta política." + "message": "Os usuários da organização que podem gerenciar as políticas da organização são isentos da aplicação desta política." }, "sendDisabled": { "message": "Send removido", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendDisabledWarning": { - "message": "Devido a uma política empresarial, você só é capaz de apagar um Send existente.", + "message": "Devido a uma política corporativa, você só pode apagar um Send existente.", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendOptions": { @@ -5941,23 +5941,23 @@ "description": "'Sends' is a plural noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendOptionsExemption": { - "message": "Os usuários da organização que podem gerenciar as políticas da organização estão isentos da aplicação desta política." + "message": "Os usuários da organização que podem gerenciar as políticas da organização são isentos da aplicação desta política." }, "disableHideEmail": { "message": "Sempre mostrar o endereço de e-mail do membro com destinatários ao criar ou editar um Send.", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "uriMatchDetectionPolicy": { - "message": "Default URI match detection" + "message": "Detecção de correspondência padrão de URI" }, "uriMatchDetectionPolicyDesc": { - "message": "Determine when logins are suggested for autofill. Admins and owners are exempt from this policy." + "message": "Determine quando as credenciais são sugeridas para preenchimento automático. Administradores e proprietários ficam isentos desta política." }, "uriMatchDetectionOptionsLabel": { - "message": "Default URI match detection" + "message": "Detecção de correspondência padrão de URI" }, "invalidUriMatchDefaultPolicySetting": { - "message": "Please select a valid URI match detection option.", + "message": "Selecione uma opção de detecção de correspondência de URI válida.", "description": "Error message displayed when a user attempts to save URI match detection policy settings with an invalid selection." }, "modifiedPolicyId": { @@ -5979,7 +5979,7 @@ "message": "Personalizado" }, "customDesc": { - "message": "Conceder permissões personalizadas aos membros" + "message": "Conceda permissões personalizadas aos membros" }, "customDescNonEnterpriseStart": { "message": "Cargos personalizados são um ", @@ -5994,7 +5994,7 @@ "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Custom roles is an enterprise feature. Contact our support team to upgrade your subscription'" }, "customNonEnterpriseError": { - "message": "Para ativar as permissões personalizadas, a organização deve estar em um plano Enterprise 2020." + "message": "Para ativar as permissões personalizadas, a organização deve estar em um plano Empresarial 2020." }, "permissions": { "message": "Permissões" @@ -6015,16 +6015,16 @@ "message": "Você não tem a permissão necessária para executar esta ação." }, "manageAllCollections": { - "message": "Gerenciar todas as coleções" + "message": "Gerenciar todos os conjuntos" }, "createNewCollections": { - "message": "Criar novas coleções" + "message": "Criar novos conjuntos" }, "editAnyCollection": { - "message": "Editar qualquer coleção" + "message": "Editar qualquer conjunto" }, "deleteAnyCollection": { - "message": "Apagar qualquer coleção" + "message": "Apagar qualquer conjunto" }, "manageGroups": { "message": "Gerenciar grupos" @@ -6042,7 +6042,7 @@ "message": "Gerenciar recuperação de conta" }, "disableRequiredError": { - "message": "Você deve desativar manualmente a política $POLICYNAME$ antes que esta política possa ser desativada.", + "message": "Você deve desativar manualmente a política de $POLICYNAME$ antes que esta política possa ser desativada.", "placeholders": { "policyName": { "content": "$1", @@ -6054,10 +6054,10 @@ "message": "Uma política de organização está afetando suas opções de propriedade." }, "personalOwnershipPolicyInEffectImports": { - "message": "Uma política da organização bloqueou a importação de itens em seu cofre pessoal." + "message": "Uma política da organização bloqueou a importação de itens em seu cofre individual." }, "personalOwnershipCheckboxDesc": { - "message": "Remover propriedade individual para usuários da organização" + "message": "Remova a propriedade individual para usuários da organização" }, "send": { "message": "Send", @@ -6091,19 +6091,19 @@ "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.'" }, "developmentDevOpsAndITTeamsChooseBWSecret": { - "message": "Desenvolvimento, DevOps e equipes de TI escolhem o Gerenciador de Segredos do Bitwarden para gerenciar e implementar seus segredos de infraestrutura e máquina de forma segura." + "message": "Equipes de desenvolvimento, DevOps e TI escolhem o Bitwarden Gerenciador de Segredos para gerenciar e implementar seus segredos de infraestrutura e máquina de forma segura." }, "centralizeSecretsManagement": { "message": "Centralize o gerenciamento de segredos." }, "centralizeSecretsManagementDescription": { - "message": "Armazene e gerencie com segurança segredos em um único local para impedir dispersão de segredos em sua organização." + "message": "Armazene e gerencie segredos com segurança em um único local para impedir dispersão de segredos em sua organização." }, "preventSecretLeaks": { "message": "Impeça vazamentos de segredos." }, "preventSecretLeaksDescription": { - "message": "Proteja segredos com criptografia de ponta a ponta. Não há mais segredos de codificação rígida ou compartilhamento através de arquivos .env." + "message": "Proteja segredos com criptografia de ponta a ponta. Nada mais de segredos hard-coded ou compartilhamento através de arquivos .env." }, "enhanceDeveloperProductivity": { "message": "Melhore a produtividade dos desenvolvedores." @@ -6112,7 +6112,7 @@ "message": "Recupere e implemente segredos programaticamente em tempo de execução para que os desenvolvedores possam se concentrar no que mais importa, como melhorar a qualidade do código." }, "strengthenBusinessSecurity": { - "message": "Fortaleça a segurança empresarial." + "message": "Fortaleça a segurança da empresa." }, "strengthenBusinessSecurityDescription": { "message": "Mantenha controle rígido sobre o acesso de máquina e humano a segredos com integrações de SSO, registros de eventos e rotação de acesso." @@ -6127,7 +6127,7 @@ "message": "Adicione uma anotação" }, "bitwardenSecretsManager": { - "message": "Gerenciador de Segredos do Bitwarden" + "message": "Bitwarden Gerenciador de Segredos" }, "moreProductsFromBitwarden": { "message": "Mais produtos do Bitwarden" @@ -6136,19 +6136,19 @@ "message": "Solicitar acesso ao Gerenciador de Segredos" }, "youNeedApprovalFromYourAdminToTrySecretsManager": { - "message": "Você precisa de aprovação do seu administrador para testar o Gerenciador de Segredos." + "message": "Você precisa de aprovação do seu administrador para experimentar o Gerenciador de Segredos." }, "smAccessRequestEmailSent": { "message": "Solicitação de acesso para o gerenciador de segredos enviada ao e-mail dos administradores." }, "requestAccessSMDefaultEmailContent": { - "message": "Olá,\n\nEstou solicitando uma assinatura do Gerenciador de Segredos do Bitwarden para a nossa equipe. O vosso apoio significaria muito!\n\nO Gerenciador de Segredos do Bitwarden é uma solução de gerenciamento de segredos criptografados de ponta a ponta para armazenamento seguro, compartilhamento, e implementação de credenciais de máquina como chaves de API, senhas de banco de dados e certificados de autenticação.\n\nEle nos ajudará a:\n\n- Melhorar a segurança\n- Otimizar o fluxo\n- Impedir caros vazamentos de segredos\n\nPara solicitar uma avaliação gratuita para nossa equipe, entre em contato com o Bitwarden.\n\nObrigado pela sua ajuda!" + "message": "Olá,\n\nEstou solicitando uma assinatura do Bitwarden Gerenciador de Segredos para a nossa equipe. O vosso apoio significaria muito!\n\nO Gerenciador de Segredos do Bitwarden é uma solução de gerenciamento de segredos criptografados de ponta a ponta para armazenamento seguro, compartilhamento, e implementação de credenciais de máquina como chaves de API, senhas de banco de dados e certificados de autenticação.\n\nEle nos ajudará a:\n\n- Melhorar a segurança\n- Otimizar o fluxo\n- Impedir caros vazamentos de segredos\n\nPara solicitar uma avaliação gratuita para nossa equipe, por favor, entre em contato com o Bitwarden.\n\nObrigado pela sua ajuda!" }, "giveMembersAccess": { - "message": "Dar acesso aos membros:" + "message": "Dê acesso aos membros:" }, "viewAndSelectTheMembers": { - "message": "visualize e selecione os membros que você deseja dar acesso ao Gerenciador de Segredos." + "message": "veja e selecione os membros que você deseja dar acesso ao Gerenciador de Segredos." }, "openYourOrganizations": { "message": "Abra o da sua organização" @@ -6199,7 +6199,7 @@ "message": "A data de apagamento fornecida não é válida." }, "expirationDateAndTimeRequired": { - "message": "Uma data e hora de expiração são obrigatórias." + "message": "Uma data e hora de validade são obrigatórias." }, "deletionDateAndTimeRequired": { "message": "Uma data e hora de apagamento são obrigatórias." @@ -6208,10 +6208,10 @@ "message": "Ocorreu um erro ao salvar as suas datas de apagamento e validade." }, "hideYourEmail": { - "message": "Oculte seu endereço de e-mail dos visualizadores." + "message": "Ocultar seu endereço de e-mail dos visualizadores." }, "webAuthnFallbackMsg": { - "message": "Para verificar seu 2FA, clique no botão abaixo." + "message": "Para verificar sua 2FA, clique no botão abaixo." }, "webAuthnAuthenticate": { "message": "Autenticar WebAuthn" @@ -6232,7 +6232,7 @@ "message": "Sua senha nova não pode ser a mesma que a sua atual." }, "hintEqualsPassword": { - "message": "Sua dica de senha não pode ser a mesma que a sua senha." + "message": "A dica da sua senha não pode ser a mesma coisa que sua senha." }, "enrollAccountRecovery": { "message": "Inscrever-se na recuperação de conta" @@ -6247,7 +6247,7 @@ "message": "Inscrito com sucesso!" }, "withdrawPasswordResetSuccess": { - "message": "Retirou-se com sucesso!" + "message": "Retirada com sucesso!" }, "eventEnrollAccountRecovery": { "message": "O usuário $ID$ se inscreveu na recuperação de conta.", @@ -6268,7 +6268,7 @@ } }, "eventAdminPasswordReset": { - "message": "Senha principal do usuário $ID$ redefinida.", + "message": "Senha principal do usuário $ID$ reconfigurada.", "placeholders": { "id": { "content": "$1", @@ -6277,7 +6277,7 @@ } }, "eventResetSsoLink": { - "message": "Link de SSO redefinido para o usuário $ID$", + "message": "Reconfigurou o link do SSO para o usuário $ID$", "placeholders": { "id": { "content": "$1", @@ -6295,10 +6295,10 @@ } }, "resetPassword": { - "message": "Redefinir senha" + "message": "Reconfigurar senha" }, "resetPasswordLoggedOutWarning": { - "message": "O processo desconectará $NAME$ de sua sessão atual, obrigando que eles entrem novamente. As sessões ativas em outros dispositivos podem continuar ativas por até uma hora.", + "message": "O processo desconectará $NAME$ de sua sessão atual, obrigando que eles se conectem novamente. As sessões ativas em outros dispositivos podem continuar ativas por até uma hora.", "placeholders": { "name": { "content": "$1", @@ -6307,7 +6307,7 @@ } }, "emergencyAccessLoggedOutWarning": { - "message": "O processo desconectará $NAME$ de sua sessão atual, obrigando que eles entrem novamente. As sessões ativas em outros dispositivos podem continuar ativas por até uma hora.", + "message": "O processo desconectará $NAME$ de sua sessão atual, obrigando que eles se conectem novamente. As sessões ativas em outros dispositivos podem continuar ativas por até uma hora.", "placeholders": { "name": { "content": "$1", @@ -6325,55 +6325,55 @@ "message": "Uma ou mais políticas da organização exigem que a senha principal cumpra aos seguintes requisitos:" }, "resetPasswordSuccess": { - "message": "Senha redefinida com sucesso!" + "message": "Senha reconfigurada com sucesso!" }, "resetPasswordEnrollmentWarning": { - "message": "A inscrição permitirá que os administradores da organização alterem sua senha principal. Tem certeza que deseja se inscrever?" + "message": "A inscrição permitirá que os administradores da organização alterem sua senha principal" }, "accountRecoveryPolicy": { - "message": "Gerenciar recuperação de conta" + "message": "Gerenciamento da recuperação de conta" }, "accountRecoveryPolicyDesc": { - "message": "Baseado no método de criptografia, recupere contas quando senhas principais ou dispositivos confiáveis forem esquecidos ou perdidos." + "message": "Baseado no método de criptografia, recupere contas quando senhas principais ou dispositivos confiados forem esquecidos ou perdidos." }, "accountRecoveryPolicyWarning": { - "message": "Contas existentes com senhas principais exigirá que os membros se inscrevam antes que os administradores possam recuperar suas contas. A inscrição automática irá ativar a recuperação de conta para novos membros." + "message": "Contas existentes com senhas principais exigirão que os membros se inscrevam si mesmos antes que os administradores possam recuperar suas contas. A inscrição automática irá ativar a recuperação de conta para novos membros." }, "accountRecoverySingleOrgRequirementDesc": { "message": "A política empresarial de organização única deve ser ativada antes de ativar esta política." }, "resetPasswordPolicyAutoEnroll": { - "message": "Inscrição Automática" + "message": "Inscrição automática" }, "resetPasswordPolicyAutoEnrollCheckbox": { - "message": "Inscrever automaticamente novos usuários" + "message": "Exigir que novos membros sejam inscritos automaticamente" }, "resetPasswordAutoEnrollInviteWarning": { - "message": "Esta organização possui uma política empresarial que irá inscrevê-lo automaticamente na redefinição de senha. A inscrição permitirá que os administradores da organização alterem sua senha principal." + "message": "Esta organização possui uma política empresarial que irá inscrevê-lo automaticamente na reconfiguração de senha. A inscrição permitirá que os administradores da organização alterem sua senha principal." }, "resetPasswordOrgKeysError": { - "message": "A resposta das Chaves da Organização é nula" + "message": "A resposta das chaves da organização é nula" }, "resetPasswordDetailsError": { - "message": "A resposta para Redefinir os Detalhes da Senha é nula" + "message": "A resposta para os detalhes de reconfiguração de senha é nula" }, "trashCleanupWarning": { - "message": "As cifras que ficarem na lixeira por mais de 30 dias serão excluídas automaticamente." + "message": "Items que estão na lixeira por mais de 30 dias serão apagados automaticamente." }, "trashCleanupWarningSelfHosted": { - "message": "As cifras que estiverem na Lixeira por um tempo serão excluídas automaticamente." + "message": "Itens que ficarem na lixeira por um tempo serão apagados automaticamente." }, "passwordPrompt": { - "message": "Nova solicitação de senha principal" + "message": "Resolicitar senha principal" }, "passwordConfirmation": { "message": "Confirmação de senha principal" }, "passwordConfirmationDesc": { - "message": "Esta ação está protegida. Para continuar, por favor, reinsira a sua senha principal para verificar sua identidade." + "message": "Esta ação está protegida. Para continuar, digite a sua senha principal novamente para verificar sua identidade." }, "reinviteSelected": { - "message": "Reenviar Convites" + "message": "Reenviar convites" }, "resendNotification": { "message": "Reenviar notificação" @@ -6385,7 +6385,7 @@ "message": "Tem certeza de que deseja remover os seguintes usuários? O processo pode levar alguns segundos para ser concluído e não pode ser interrompido ou cancelado." }, "removeOrgUsersConfirmation": { - "message": "Quando membro(s) são removidos, eles não têm acesso aos dados da organização e esta ação é irreversível. Para adicionar o membro de volta à organização, ele deve ser convidado e integrado novamente. O processo pode demorar alguns segundos para ser concluído e não pode ser interrompido ou cancelado." + "message": "Quando membro(s) são removidos, eles não têm mais acesso aos dados da organização e esta ação é irreversível. Para adicionar o membro de volta à organização, ele deve ser convidado e integrado novamente. O processo pode demorar alguns segundos para ser concluído e não pode ser interrompido ou cancelado." }, "revokeUsersWarning": { "message": "Quando membro(s) são revogados, eles não têm mais acesso aos dados da organização. Para restaurar o acesso rapidamente, vá para a aba Revogados. O processo pode demorar alguns segundos para ser concluído e não pode ser interrompido ou cancelado." @@ -6397,7 +6397,7 @@ "message": "Escolha um tema para o seu cofre web." }, "themeSystem": { - "message": "Usar Tema do Sistema" + "message": "Usar tema do sistema" }, "themeDark": { "message": "Escuro" @@ -6406,16 +6406,16 @@ "message": "Claro" }, "confirmSelected": { - "message": "Confirmar Selecionado(s)" + "message": "Confirmar selecionados" }, "bulkConfirmStatus": { - "message": "Status de ação em massa" + "message": "Estado de ação em massa" }, "bulkConfirmMessage": { - "message": "Confirmado com sucesso." + "message": "Confirmado com sucesso" }, "bulkReinviteMessage": { - "message": "Convidado novamente com sucesso." + "message": "Re-convidado com sucesso" }, "bulkRemovedMessage": { "message": "Removido com sucesso" @@ -6427,13 +6427,13 @@ "message": "Acesso à organização restaurado com sucesso" }, "bulkFilteredMessage": { - "message": "Excluído, não aplicável para esta ação." + "message": "Excluído, não aplicável para esta ação" }, "nonCompliantMembersTitle": { - "message": "Membros não compatíveis" + "message": "Membros não adequados" }, "nonCompliantMembersError": { - "message": "Os membros que não estão em conformidade com a política de “login” único ou de duas etapas não poderão ser restaurados até cumprirem os requisitos da política" + "message": "Os membros que não estão em conformidade com a política de organização única ou de duas etapas não poderão ser restaurados até cumprirem os requisitos da política" }, "fingerprint": { "message": "Impressão digital" @@ -6445,13 +6445,13 @@ "message": "Erro" }, "decryptionError": { - "message": "Erro ao descriptografar" + "message": "Erro de descriptografia" }, "couldNotDecryptVaultItemsBelow": { "message": "O Bitwarden não pôde descriptografar o(s) item(ns) do cofre listado abaixo." }, "contactCSToAvoidDataLossPart1": { - "message": "Contato com o cliente feito com sucesso", + "message": "Contate o costumer success", "description": "This is part of a larger sentence. The full sentence will read 'Contact customer success to avoid additional data loss.'" }, "contactCSToAvoidDataLossPart2": { @@ -6462,19 +6462,19 @@ "message": "Gerenciar usuários também devem ser concedidos com a permissão de gerenciar a recuperação de contas" }, "setupProvider": { - "message": "Configuração do Provedor" + "message": "Configuração do provedor" }, "setupProviderLoginDesc": { - "message": "Você foi convidado para configurar um novo provedor. Para continuar, você precisa iniciar sessão ou criar uma nova conta no Bitwarden." + "message": "Você foi convidado para configurar um novo provedor. Para continuar, você precisa se conectar ou criar uma nova conta no Bitwarden." }, "setupProviderDesc": { - "message": "Por favor, insira os detalhes abaixo para completar a configuração do provedor. Entre em Contato com o Suporte ao Cliente se tiver alguma dúvida." + "message": "Digite os detalhes abaixo para completar a configuração do provedor. Entre em contato com o suporte ao cliente se tiver alguma dúvida." }, "providerName": { - "message": "Nome do Provedor" + "message": "Nome do provedor" }, "providerSetup": { - "message": "O provedor foi configurado." + "message": "Provedor configurado com sucesso" }, "clients": { "message": "Clientes" @@ -6484,13 +6484,13 @@ "description": "This is used as a table header to describe which client application created an event log." }, "providerAdmin": { - "message": "Administrador do Provedor" + "message": "Administrador do provedor" }, "providerAdminDesc": { "message": "O usuário de maior acesso que pode gerenciar todos os aspectos do seu provedor, bem como acessar e gerenciar organizações de clientes." }, "serviceUser": { - "message": "Usuário de Serviço" + "message": "Usuário do serviço" }, "serviceUserDesc": { "message": "Os usuários do serviço podem acessar e gerenciar todas as organizações de clientes." @@ -6499,10 +6499,10 @@ "message": "Convide um novo usuário para seu provedor digitando o endereço de e-mail da conta Bitwarden dele abaixo. Se ele não tiver uma conta no Bitwarden, ele será solicitado a criar uma nova conta." }, "joinProvider": { - "message": "Participar do Provedor" + "message": "Juntar-se ao provedor" }, "joinProviderDesc": { - "message": "Você foi convidado para participar do provedor listado acima. Para aceitar o convite, você precisa iniciar sessão ou criar uma nova conta no Bitwarden." + "message": "Você foi convidado para participar do provedor listado acima. Para aceitar o convite, você precisa se conectar ou criar uma nova conta no Bitwarden." }, "providerInviteAcceptFailed": { "message": "Não foi possível aceitar o convite. Peça ao administrador do provedor para enviar um novo convite." @@ -6517,25 +6517,25 @@ "message": "Provedor" }, "newClientOrganization": { - "message": "Nova Organização de Cliente" + "message": "Nova organização de cliente" }, "newClientOrganizationDesc": { - "message": "Crie uma nova organização de cliente que será associada a você como o provedor. Você poderá acessar e gerenciar esta organização." + "message": "Crie uma organização de cliente que será associada a você como o provedor. Você poderá acessar e gerenciar esta organização." }, "newClient": { "message": "Novo cliente" }, "addExistingOrganization": { - "message": "Adicionar Organização Existente" + "message": "Adicionar organização existente" }, "addNewOrganization": { "message": "Adicionar nova organização" }, "myProvider": { - "message": "Meu Provedor" + "message": "Meu provedor" }, "addOrganizationConfirmation": { - "message": "Tem certeza de que deseja adicionar $ORGANIZATION$ como um cliente a $PROVIDER$?", + "message": "Tem certeza de que deseja adicionar $ORGANIZATION$ como um cliente de $PROVIDER$?", "placeholders": { "organization": { "content": "$1", @@ -6560,10 +6560,10 @@ } }, "providerIsDisabled": { - "message": "O provedor está desativado." + "message": "Provedor suspenso" }, "providerUpdated": { - "message": "Provedor atualizado" + "message": "Provedor salvo" }, "yourProviderIs": { "message": "Seu provedor é $PROVIDER$. Eles têm privilégios administrativos e de cobrança para sua organização.", @@ -6590,70 +6590,70 @@ "message": "Adicionar" }, "masterPasswordSuccessfullySet": { - "message": "Master password successfully set" + "message": "Senha principal configurada com sucesso" }, "updatedMasterPassword": { - "message": "Senha Mestra Atualizada" + "message": "Senha principal salva" }, "updateMasterPassword": { - "message": "Atualizar Senha Mestra" + "message": "Atualizar senha principal" }, "accountRecoveryUpdateMasterPasswordSubtitle": { - "message": "Change your master password to complete account recovery." + "message": "Altere a sua senha principal para concluir a recuperação da conta." }, "updateMasterPasswordSubtitle": { - "message": "Your master password does not meet this organization’s requirements. Change your master password to continue." + "message": "Sua senha principal não corresponde aos requisitos dessa organização. Altere a sua senha principal para continuar." }, "updateMasterPasswordWarning": { - "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." + "message": "Sua senha principal foi alterada recentemente por um administrador na sua organização. Para acessar o cofre, você deve atualizar sua senha principal agora. Prosseguir irá desconectá-lo da sessão atual, exigindo que você se conecte novamente. As sessões ativas em outros dispositivos podem continuar ativas por até uma hora." }, "masterPasswordInvalidWarning": { - "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." + "message": "A sua senha principal não atende aos requisitos da política desta organização. Para poder se juntar à organização, você precisa atualizar sua senha principal agora. O processo te desconectará da sua sessão atual, exigindo que você se conecte novamente. Sessões ativas em outros dispositivos podem ficar ativas por até uma hora." }, "updateWeakMasterPasswordWarning": { - "message": "A sua senha principal não atende a uma ou mais das políticas da sua organização. Para acessar o cofre, você deve atualizar a sua senha principal 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." + "message": "A sua senha principal não atende aos requisitos da política desta organização. Para poder acessar o cofre, você precisa atualizar sua senha principal agora. O processo te desconectará da sua sessão atual, exigindo que você se conecte novamente. Sessões ativas em outros dispositivos podem ficar ativas por até uma hora." }, "automaticAppLoginWithSSO": { - "message": "Automatic login with SSO" + "message": "Autenticação automática com SSO" }, "automaticAppLoginWithSSODesc": { - "message": "Extend SSO security and convenience to unmanaged apps. When users launch an app from your identity provider, their login details are automatically filled and submitted, creating a one-click, secure flow from the identity provider to the app." + "message": "Estenda a segurança e conveniência do SSO para aplicativos não gerenciados. Quando usuários abrir um aplicativo pelo seu provedor de identidade, os detalhes de autenticação serão preenchidos e enviados automaticamente, criando um fluxo seguro e de um só clique do provedor de identidade ao aplicativo." }, "automaticAppLoginIdpHostLabel": { - "message": "Provedor de identidade" + "message": "Servidor do provedor de identidade" }, "automaticAppLoginIdpHostDesc": { - "message": "Digite a URL do seu provedor de identidade. Insira vários URLs, separando com uma vírgula." + "message": "Digite o URL do seu provedor de identidade. Digite vários URLs separando com uma vírgula." }, "tdeDisabledMasterPasswordRequired": { - "message": "Sua organização atualizou suas opções de descriptografia. Por favor, defina uma senha principal para acessar seu cofre." + "message": "Sua organização atualizou suas opções de descriptografia. Configure uma senha principal para acessar seu cofre." }, "sessionTimeoutPolicyTitle": { - "message": "Session timeout" + "message": "Tempo limite da sessão" }, "sessionTimeoutPolicyDescription": { - "message": "Set a maximum session timeout for all members except owners." + "message": "Configure um tempo limite máximo para a sessão de todos os membros, exceto os proprietários." }, "maximumAllowedTimeout": { - "message": "Maximum allowed timeout" + "message": "Tempo limite máximo permitido" }, "maximumAllowedTimeoutRequired": { - "message": "Maximum allowed timeout is required." + "message": "Tempo limite máximo permitido é necessário." }, "sessionTimeoutPolicyInvalidTime": { - "message": "Time is invalid. Change at least one value." + "message": "Tempo é inválido. Altere pelo menos um valor." }, "sessionTimeoutAction": { - "message": "Session timeout action" + "message": "Ação do tempo limite da sessão" }, "immediately": { - "message": "Immediately" + "message": "Imediatamente" }, "onSystemLock": { - "message": "On system lock" + "message": "No bloqueio do sistema" }, "onAppRestart": { - "message": "On app restart" + "message": "No reinício do aplicativo" }, "hours": { "message": "Horas" @@ -6662,22 +6662,22 @@ "message": "Minutos" }, "sessionTimeoutConfirmationNeverTitle": { - "message": "Are you certain you want to allow a maximum timeout of \"Never\" for all members?" + "message": "Você tem certeza de que deseja permitir um tempo limite máximo de \"Nunca\" para todos os membros?" }, "sessionTimeoutConfirmationNeverDescription": { - "message": "This option will save your members' encryption keys on their devices. If you choose this option, ensure that their devices are adequately protected." + "message": "Esta opção salvará as chaves criptográficas dos seus membros em seus dispositivos. Se escolher esta opção, certifique-se de que seus dispositivos estão adequadamente protegidos." }, "learnMoreAboutDeviceProtection": { - "message": "Learn more about device protection" + "message": "Saiba mais sobre a proteção de dispositivos" }, "sessionTimeoutConfirmationOnSystemLockTitle": { - "message": "\"System lock\" will only apply to the browser and desktop app" + "message": "\"Bloqueio de sistema\" só será aplicado ao navegador e aplicativo de computador" }, "sessionTimeoutConfirmationOnSystemLockDescription": { - "message": "The mobile and web app will use \"on app restart\" as their maximum allowed timeout, since the option is not supported." + "message": "O aplicativo móvel e web usarão \"no reinício do aplicativo\" como tempo máximo permitido, já que a opção não é suportada." }, "vaultTimeoutPolicyInEffect": { - "message": "As políticas da sua organização estão afetando o tempo limite do seu cofre. O Tempo Limite Máximo permitido do Cofre é $HOURS$ hora(s) e $MINUTES$ minuto(s)", + "message": "As políticas da sua organização configuraram o seu máximo permitido do tempo limite do cofre para $HOURS$ hora(s) e $MINUTES$ minuto(s).", "placeholders": { "hours": { "content": "$1", @@ -6703,7 +6703,7 @@ } }, "vaultTimeoutPolicyWithActionInEffect": { - "message": "As políticas da sua organização estão afetando o tempo limite do seu cofre. O Tempo Limite Máximo permitido do Cofre é {0} hora(s) e {1} minuto(s). Seu tempo limite do cofre está definido em {2}.", + "message": "As políticas da sua organização estão afetando o tempo limite do seu cofre. \nO tempo limite máximo permitido para o cofre é $HOURS$ hora(s) e $MINUTES$ minuto(s). A ação de tempo limite do seu cofre está configurada como $ACTION$.", "placeholders": { "hours": { "content": "$1", @@ -6720,7 +6720,7 @@ } }, "vaultTimeoutActionPolicyInEffect": { - "message": "As políticas da sua organização definiram a ação tempo limite do seu cofre para $ACTION$.", + "message": "As políticas da sua organização configuraram a ação do tempo limite do seu cofre para $ACTION$.", "placeholders": { "action": { "content": "$1", @@ -6729,205 +6729,205 @@ } }, "vaultTimeoutToLarge": { - "message": "O tempo limite do seu cofre excede a restrição definida por sua organização." + "message": "O tempo limite do seu cofre excede as restrições estabelecidas pela sua organização." }, "vaultCustomTimeoutMinimum": { - "message": "Tempo limite mínimo personalizado é 1 minuto." + "message": "O mínimo do tempo limite personalizado é de 1 minuto." }, "vaultTimeoutRangeError": { "message": "Tempo limite do cofre não está dentro do intervalo permitido." }, "disablePersonalVaultExport": { - "message": "Desabilitar Exportação de Cofre Pessoal" + "message": "Remover exportação do cofre individual" }, "disablePersonalVaultExportDescription": { "message": "Não permita que os membros exportem dados do seu cofre individual." }, "vaultExportDisabled": { - "message": "Exportação de Cofre Desabilitada" + "message": "Exportação de cofre removida" }, "personalVaultExportPolicyInEffect": { - "message": "Uma ou mais políticas da organização impdem que você exporte seu cofre pessoal." + "message": "Uma ou mais políticas da organização impedem que você exporte seu cofre individual." }, "activateAutofill": { "message": "Ativar preenchimento automático" }, "activateAutofillPolicyDesc": { - "message": "Ative a configuração de preenchimento automático ao carregamento de página na extensão do navegador para todos os membros existentes e novos." + "message": "Ative a configuração de preenchimento automático no carregamento da página na extensão do navegador para todos os membros existentes e novos." }, "experimentalFeature": { - "message": "Sites comprometidos ou não confiáveis podem tomar vantagem do autopreenchimento ao carregar a página." + "message": "Sites comprometidos ou não confiáveis podem tomar vantagem do preenchimento automático ao carregar a página." }, "learnMoreAboutAutofill": { "message": "Saiba mais sobre o preenchimento automático" }, "selectType": { - "message": "Selecionar Tipo de SSO" + "message": "Selecionar tipo de SSO" }, "type": { "message": "Tipo" }, "openIdConnectConfig": { - "message": "Configuração OpenID Connect" + "message": "Configuração do OpenID Connect" }, "samlSpConfig": { - "message": "Configuração do Provedor de Serviço SAML" + "message": "Configuração do provedor de serviço SAML" }, "samlIdpConfig": { - "message": "Configuração do Provedor de Identidade SAML" + "message": "Configuração do provedor de identidade SAML" }, "callbackPath": { - "message": "Caminho de Retorno" + "message": "Caminho de callback" }, "signedOutCallbackPath": { - "message": "Caminho de Retorno de Chamada Desconectado" + "message": "Caminho de callback desconectado" }, "authority": { "message": "Autoridade" }, "clientId": { - "message": "ID do Cliente" + "message": "ID do cliente" }, "clientSecret": { - "message": "Segredo do Cliente" + "message": "Segredo do cliente" }, "metadataAddress": { - "message": "Endereço dos Metadados" + "message": "Endereço dos metadados" }, "oidcRedirectBehavior": { - "message": "Comportamento de Redirecionamento OIDC" + "message": "Comportamento de redirecionamento OIDC" }, "getClaimsFromUserInfoEndpoint": { - "message": "Obter Reivindicações do Terminal de Informações do Usuário" + "message": "Obter reivindicações do link de informações de usuário" }, "additionalScopes": { - "message": "Escopos Adicionais/Personalizados (delimitado por vírgulas)" + "message": "Escopos personalizados" }, "additionalUserIdClaimTypes": { - "message": "Tipos de Reivindicação de ID de Usuário Adicionais/Personalizados (delimitado por vírgulas)" + "message": "Tipos de reivindicação de ID de usuário personalizado" }, "additionalEmailClaimTypes": { - "message": "Tipos de Reivindicação de E-mail Adicionais/Personalizados (delimitado por vírgulas)" + "message": "Tipos de reivindicação de e-mail" }, "additionalNameClaimTypes": { - "message": "Tipos de Reivindicação de Nome Adicionais/Personalizados (delimitado por vírgulas)" + "message": "Tipos de reivindicação de nomes personalizados" }, "acrValues": { - "message": "Valores de Referência de Classe de Contexto de Autenticação Solicitada (acr_values)" + "message": "Valores de referência de classe de contexto de autenticação solicitados" }, "expectedReturnAcrValue": { - "message": "Esperado Valor de Reivindicação \"acr\" Na Resposta (validação acr)" + "message": "Era esperado o valor de reivindicação \"acr\" na resposta" }, "spEntityId": { - "message": "ID da Entidade SP" + "message": "ID da entidade SP" }, "spMetadataUrl": { - "message": "URL de Metadados SAML 2.0" + "message": "URL de metadados do SAML 2.0" }, "spAcsUrl": { - "message": "URL do Serviço de Declaração de Consumidor (ACS)" + "message": "URL do serviço de declaração de consumidor (ACS)" }, "spNameIdFormat": { - "message": "Formato ID do Nome" + "message": "Formato do ID do nome" }, "spOutboundSigningAlgorithm": { - "message": "Algoritmo de Assinatura de Saída" + "message": "Algoritmo de assinatura de saída" }, "spSigningBehavior": { - "message": "Comportamento de Assinatura" + "message": "Comportamento de assinatura" }, "spMinIncomingSigningAlgorithm": { - "message": "Algoritmo de Assinatura de Entrada Mínima" + "message": "Algoritmo mínimo de assinatura de entrada" }, "spWantAssertionsSigned": { - "message": "Precisa de Declarações Assinadas" + "message": "Supor declarações assinadas" }, "spValidateCertificates": { - "message": "Validar Certificados" + "message": "Validar certificados" }, "spUniqueEntityId": { - "message": "Defina um ID único de entidade SP" + "message": "Configurar ID único para entidade SP" }, "spUniqueEntityIdDesc": { - "message": "Gerar um identificador que seja exclusivo para sua organização" + "message": "Gere um identificador que é único para a sua organização" }, "idpEntityId": { - "message": "ID da Entidade" + "message": "ID da entidade" }, "idpBindingType": { - "message": "Tipo de Ligação" + "message": "Tipo de vínculo" }, "idpSingleSignOnServiceUrl": { - "message": "URL de Serviço de Logon Único" + "message": "URL do serviço de autenticação única" }, "idpSingleLogoutServiceUrl": { - "message": "URL de Serviço de Desconexão Único" + "message": "URL do serviço de desconexão única" }, "idpX509PublicCert": { - "message": "Certificado Público X509" + "message": "Certificado público X509" }, "idpOutboundSigningAlgorithm": { - "message": "Algoritmo de Assinatura de Saída" + "message": "Algoritmo de assinatura de saída" }, "idpAllowUnsolicitedAuthnResponse": { - "message": "Permitir Retorno de Autenticação Não Solicitada" + "message": "Permitir respostas não solicitadas de autenticação" }, "idpAllowOutboundLogoutRequests": { - "message": "Permitir pedidos de saída" + "message": "Permitir solicitações de desconexão de saída" }, "idpSignAuthenticationRequests": { - "message": "Assinar pedidos de autenticação" + "message": "Assinar solicitações de autenticação" }, "ssoSettingsSaved": { - "message": "Configuração de logon único foi salva." + "message": "Configuração da autenticação única salva" }, "sponsoredFamilies": { - "message": "Bitwarden Families Gratuito" + "message": "Bitwarden Famílias Grátis" }, "sponsoredBitwardenFamilies": { - "message": "Sponsored families" + "message": "Famílias financiadas" }, "noSponsoredFamiliesMessage": { - "message": "No sponsored families" + "message": "Nenhuma família financiada" }, "nosponsoredFamiliesDetails": { - "message": "Sponsored non-member families plans will display here" + "message": "Planos familiares financiados de não membros aparecerão aqui" }, "sponsorshipFreeBitwardenFamilies": { - "message": "Members of your organization are eligible for Free Bitwarden Families. You can sponsor Free Bitwarden Families for employees who are not a member of your Bitwarden organization. Sponsoring a non-member requires an available seat within your organization." + "message": "Os membros da sua organização são elegíveis para o Bitwarden Famílias Grátis. Você pode financiar o Bitwarden Famílias de graça para funcionários que não são membros da sua organização do Bitwarden. Para financiar um não membro, é necessária uma vaga disponível dentro da sua organização." }, "sponsoredFamiliesRemoveActiveSponsorship": { - "message": "When you remove an active sponsorship, a seat within your organization will be available after the renewal date of the sponsored organization." + "message": "Quando você remove um financiamento ativo, uma vaga dentro da sua organização ficará disponível após a data de renovação da organização financiada." }, "sponsoredFamiliesEligible": { - "message": "Você e sua família estão elegíveis para o Bitwarden Families Gratuito. Resgate com seu e-mail pessoal para manter seus dados seguros mesmo quando você não estiver no trabalho." + "message": "Você e a sua família são elegíveis para o Bitwarden Famílias Grátis. Resgate com seu e-mail pessoal para manter seus dados seguros mesmo quando você não estiver no trabalho." }, "sponsoredFamiliesEligibleCard": { - "message": "Resgate o seu plano Bitwarden for Families Grátis hoje para manter seus dados seguros mesmo quando você não estiver no trabalho." + "message": "Resgate o seu plano Bitwarden Famílias Grátis hoje para manter seus dados seguros mesmo quando não estiver no trabalho." }, "sponsoredFamiliesIncludeMessage": { - "message": "The Bitwarden for Families plan includes" + "message": "O plano Bitwarden Famílias inclui" }, "sponsoredFamiliesPremiumAccess": { - "message": "Acesso premium para até 6 usuários" + "message": "Acesso Premium para até 6 usuários" }, "sponsoredFamiliesSharedCollectionsForFamilyMembers": { - "message": "Shared collections for family members" + "message": "Conjuntos compartilhados para membros da família" }, "memberFamilies": { - "message": "Member families" + "message": "Famílias de membros" }, "noMemberFamilies": { - "message": "No member families" + "message": "Nenhuma família de membros" }, "noMemberFamiliesDescription": { - "message": "Members who have redeemed family plans will display here" + "message": "Os membros que resgataram os planos familiares aparecerão aqui" }, "membersWithSponsoredFamilies": { - "message": "Members of your organization are eligible for Free Bitwarden Families. Here you can see members who have sponsored a Families organization." + "message": "Os membros da sua organização são elegíveis para o Bitwarden Famílias Grátis. Aqui você pode ver os membros que financiaram uma organização do Famílias." }, "organizationHasMemberMessage": { - "message": "A sponsorship cannot be sent to $EMAIL$ because they are a member of your organization.", + "message": "Um financiamento não pode ser enviado para $EMAIL$ porque eles são um membro da sua organização.", "placeholders": { "email": { "content": "$1", @@ -6936,31 +6936,31 @@ } }, "badToken": { - "message": "O link não é mais válido. Peça ao patrocinador para reenviar a oferta." + "message": "O link não é mais válido. Peça ao financiador para reenviar a oferta." }, "reclaimedFreePlan": { - "message": "Plano gratuito recuperado" + "message": "Plano gratuito resgatado" }, "redeem": { "message": "Resgatar" }, "sponsoredFamiliesSelectOffer": { - "message": "Selecione a organização que você gostaria de patrocinar" + "message": "Selecione a organização que você gostaria de financiar" }, "familiesSponsoringOrgSelect": { - "message": "Qual oferta do Families Grátis você gostaria de resgatar?" + "message": "Qual oferta do Famílias Grátis você gostaria de resgatar?" }, "sponsoredFamiliesEmail": { - "message": "Digite seu e-mail pessoal para resgatar o Bitwarden Families" + "message": "Digite o seu e-mail pessoal para resgatar o Bitwarden Famílias" }, "sponsoredFamiliesLeaveCopy": { - "message": "Se você sair ou for removido desta organização, seu plano do Families irá expirar no final do período de cobrança." + "message": "Se você remover uma oferta ou ser removido da organização financiante, o seu financiamento irá expirar na próxima data de renovação." }, "acceptBitwardenFamiliesHelp": { - "message": "Aceite a oferta de uma organização existente ou crie uma nova organização de Famílias." + "message": "Aceite a oferta de uma organização existente ou crie uma organização de Famílias." }, "setupSponsoredFamiliesLoginDesc": { - "message": "Foi oferecida a você uma Organização do Plano Bitwarden Families gratuita. Para continuar, você precisa entrar na conta que recebeu a oferta." + "message": "Foi oferecida a você uma organização do plano Bitwarden Famílias Grátis. Para continuar, você precisa se conectar à conta que recebeu a oferta." }, "sponsoredFamiliesAcceptFailed": { "message": "Não é possível aceitar a oferta. Reenvie o e-mail da oferta da conta corporativa e tente novamente." @@ -6975,10 +6975,10 @@ } }, "sponsoredFamiliesOffer": { - "message": "Resgatar Oferta de Organização do Bitwarden Families Gratuita" + "message": "Aceitar Bitwarden Familías Grátis" }, "sponsoredFamiliesOfferRedeemed": { - "message": "A Oferta Gratuita do Bitwarden Families foi resgatada com sucesso" + "message": "Oferta do Bitwarden Familías Grátis resgatada com sucesso" }, "redeemed": { "message": "Resgatado" @@ -6987,7 +6987,7 @@ "message": "Conta resgatada" }, "revokeAccountMessage": { - "message": "Revoke account $NAME$", + "message": "Revogar conta $NAME$", "placeholders": { "name": { "content": "$1", @@ -6996,7 +6996,7 @@ } }, "resendEmailLabel": { - "message": "Reenviar e-mail de Patrocínio para $NAME$ patrocínio", + "message": "Reenviar o e-mail de financiamento para o financiamento do $NAME$", "placeholders": { "name": { "content": "$1", @@ -7005,7 +7005,7 @@ } }, "freeFamiliesPlan": { - "message": "Plano de famílias gratuitas" + "message": "Plano Famílias grátis" }, "redeemNow": { "message": "Resgatar agora" @@ -7014,37 +7014,37 @@ "message": "Destinatário" }, "removeSponsorship": { - "message": "Remover Patrocínio" + "message": "Remover financiamento" }, "removeSponsorshipConfirmation": { - "message": "Após remover um patrocínio, você será responsável por esta assinatura e faturas relacionadas. Você tem certeza que deseja continuar?" + "message": "Após remover um financiamento, você ficará responsável por esta assinatura e as faturas relacionadas. Você tem certeza que deseja continuar?" }, "sponsorshipCreated": { - "message": "Patrocínio criado" + "message": "Financiamento criado" }, "emailSent": { "message": "E-mail enviado" }, "removeSponsorshipSuccess": { - "message": "Patrocínio Removido" + "message": "Financiamento removido" }, "ssoKeyConnectorError": { - "message": "Erro de Key Connector: certifique-se de que a Key Connector está disponível e funcionando corretamente." + "message": "Erro do Key Connector: certifique-se de que o Key Connector está disponível e funcionando corretamente." }, "keyConnectorUrl": { - "message": "URL de Conector de Chave" + "message": "URL do Key Connector" }, "sendVerificationCode": { "message": "Enviar um código de verificação para o seu e-mail" }, "sendCode": { - "message": "Enviar Código" + "message": "Enviar código" }, "codeSent": { - "message": "Código Enviado" + "message": "Código enviado" }, "verificationCode": { - "message": "Código de Verificação" + "message": "Código de verificação" }, "confirmIdentity": { "message": "Confirme a sua identidade para continuar." @@ -7053,22 +7053,22 @@ "message": "O código de verificação é necessário." }, "webauthnCancelOrTimeout": { - "message": "A autenticação foi cancelada ou demorou muito. Por favor tente novamente." + "message": "A autenticação foi cancelada ou demorou muito. Tente novamente." }, "invalidVerificationCode": { "message": "Código de verificação inválido" }, "removeMasterPasswordForOrganizationUserKeyConnector": { - "message": "A master password is no longer required for members of the following organization. Please confirm the domain below with your organization administrator." + "message": "Uma senha principal não é mais necessária para membros da seguinte organização. Confirme o domínio abaixo com o administrador da sua organização." }, "keyConnectorDomain": { - "message": "Key Connector domain" + "message": "Domínio do Key Connector" }, "leaveOrganization": { - "message": "Sair da Organização" + "message": "Sair da organização" }, "removeMasterPassword": { - "message": "Remover Senha Mestra" + "message": "Remover senha principal" }, "removedMasterPassword": { "message": "Senha principal removida." @@ -7077,52 +7077,52 @@ "message": "Permitir autenticação por SSO" }, "allowSsoDesc": { - "message": "Uma vez definida, sua configuração será salva e os membros poderão se autenticar usando suas credenciais de Provedor de Identidade." + "message": "Uma vez configurada, sua configuração será salva e os membros poderão se autenticar usando suas credenciais do Provedor de Identidade." }, "ssoPolicyHelpStart": { - "message": "Ativar o", + "message": "Use a", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Use the require single-sign-on authentication policy to require all members to log in with SSO.'" }, "ssoPolicyHelpAnchor": { - "message": "requer política de autenticação de logon único", + "message": "política de aplicação da autenticação única", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Use the require single-sign-on authentication policy to require all members to log in with SSO.'" }, "ssoPolicyHelpEnd": { - "message": "para exigir que todos os membros entrem com o SSO.", + "message": "para exigir que todos os membros se conectem com o SSO.", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Use the require single-sign-on authentication policy to require all members to log in with SSO.'" }, "memberDecryptionOption": { - "message": "Opções de Descriptografia de Membro" + "message": "Opções de descriptografia do membro" }, "memberDecryptionPassDesc": { - "message": "Uma vez autenticados, os membros irão descriptografar os dados do cofre usando suas Senhas Mestras." + "message": "Ao se autenticar, os membros descriptografarão os dados do cofre usando suas senhas principais." }, "keyConnector": { - "message": "Conector de Chave" + "message": "Key Connector" }, "memberDecryptionKeyConnectorDescStart": { - "message": "Conecte o login com SSO ao seu servidor de chave de descriptografia auto-hospedado. Usando essa opção, os membros não precisarão usar suas senhas principais para descriptografar os dados", + "message": "Conecte a autenticação com SSO ao seu servidor de chave de descriptografia auto-hospedado. Usando essa opção, os membros não precisarão usar suas senhas principais para descriptografar os dados dos cofres. As", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read '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. The require SSO authentication and single organization policies are required to set up Key Connector decryption. Contact Bitwarden Support for set up assistance.'" }, "memberDecryptionKeyConnectorDescLink": { - "message": "requer autenticação SSO e políticas de organização única", + "message": "políticas de autenticação única e de organização única", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read '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. The require SSO authentication and single organization policies are required to set up Key Connector decryption. Contact Bitwarden Support for set up assistance.'" }, "memberDecryptionKeyConnectorDescEnd": { - "message": "são necessários para configurar a descriptografia do conector chave. Contacte o suporte do Bitwarden para configurar a assistência.", + "message": "são necessárias para configurar a descriptografia do Key Connector. Entre em contato com o suporte do Bitwarden para assistência na configuração.", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read '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. The require SSO authentication and single organization policies are required to set up Key Connector decryption. Contact Bitwarden Support for set up assistance.'" }, "keyConnectorPolicyRestriction": { - "message": "\"Entrar com o SSO e Descriptografia de Conector de Chave\" está habilitado. Esta política se aplica apenas a Proprietários e Administradores." + "message": "\"Conectar-se com SSO e descriptografia do Key Connector\" está ativado. Esta política se aplica apenas a proprietários e administradores." }, "enabledSso": { - "message": "Ativado o SSO" + "message": "SSO foi ativado" }, "disabledSso": { - "message": "Desativado o SSO" + "message": "SSO foi desativado" }, "emailMustLoginWithSso": { - "message": "$EMAIL$ must login with Single Sign-on", + "message": "$EMAIL$ deve se conectar com a autenticação única", "placeholders": { "email": { "content": "$1", @@ -7131,58 +7131,58 @@ } }, "enabledKeyConnector": { - "message": "Ativado o Conector de Chave" + "message": "Key Connector foi ativado" }, "disabledKeyConnector": { - "message": "Desativado o Conector de Chave" + "message": "Key Connector foi desativado" }, "keyConnectorWarning": { - "message": "Depois que o Conector de Chave é configurado, as Opções de Descriptografia de Membro não podem ser alteradas." + "message": "Quando os membros começarem a usar o Key Connector, a sua organização não poderá reverter para a descriptografia com a senha principal. Prossiga somente se você está confortável com a implementação e gerenciamento de um servidor de chaves." }, "migratedKeyConnector": { - "message": "Migrado para o Conector de Chave" + "message": "Migrado para o Key Connector" }, "paymentSponsored": { - "message": "Por favor, forneça uma forma de pagamento para associar à organização. Não se preocupe, não cobraremos nada, a menos que você selecione recursos adicionais ou seu patrocínio expire. " + "message": "Forneça uma forma de pagamento para associar à organização. Não se preocupe, não cobraremos nada, a menos que você selecione recursos adicionais ou seu financiamento expire. " }, "orgCreatedSponsorshipInvalid": { - "message": "A oferta de patrocínio expirou, você pode excluir a organização que criou para evitar uma cobrança no final do seu teste de 7 dias. Caso contrário, você pode fechar este alerta para manter a organização e assumir a responsabilidade pela cobrança." + "message": "A oferta de financiamento expirou, você pode apagar a organização que criou para evitar uma cobrança no final do seu teste de 7 dias. Caso contrário, você pode fechar este alerta para manter a organização e assumir a responsabilidade pela cobrança." }, "newFamiliesOrganization": { - "message": "Nova Organização de Famílias" + "message": "Nova organização de Famílias" }, "acceptOffer": { - "message": "Aceitar Oferta" + "message": "Aceitar oferta" }, "sponsoringOrg": { - "message": "Organização Patrocinadora" + "message": "Organização financiante" }, "keyConnectorTest": { "message": "Testar" }, "keyConnectorTestSuccess": { - "message": "Sucesso! Conector de Chave acessado." + "message": "Sucesso! O Key Connector foi contatado." }, "keyConnectorTestFail": { - "message": "Não foi possível acessar o Conector de Chave. Verifique a URL." + "message": "Não é possível acessar o Key Connector. Verifique o URL." }, "sponsorshipTokenHasExpired": { - "message": "A oferta de patrocínio expirou." + "message": "A oferta de financiamento expirou." }, "freeWithSponsorship": { - "message": "GRÁTIS com patrocínio" + "message": "GRÁTIS com financiamento" }, "viewBillingSyncToken": { - "message": "Ver Token de Faturamento Sync" + "message": "Ver token de sincronização de faturamento" }, "generateBillingToken": { "message": "Gerar token de faturamento" }, "copyPasteBillingSync": { - "message": "Copie e cole esse token nas configurações de Faturamento Sync da sua organização auto-hospedada." + "message": "Copie e cole esse token nas configurações de sincronização de faturamento da sua organização auto-hospedada." }, "billingSyncCanAccess": { - "message": "Seu token de faturamento Sync pode acessar e editar as configurações de assinatura desta organização." + "message": "Seu token de sincronização de faturamento pode acessar e editar as configurações de assinatura desta organização." }, "manageBillingTokenSync": { "message": "Gerenciar token de faturamento" @@ -7191,16 +7191,16 @@ "message": "Configurar sincronização de faturamento" }, "generateToken": { - "message": "Gerar o token" + "message": "Gerar token" }, "rotateToken": { - "message": "Renovar Token" + "message": "Rotacionar token" }, "rotateBillingSyncTokenWarning": { - "message": "Se você continuar, precisará re-configurar a sincronização de cobrança no seu servidor auto-hospedado." + "message": "Se você continuar, precisará reconfigurar a sincronização de faturamento no seu servidor auto-hospedado." }, "rotateBillingSyncTokenTitle": { - "message": "Renovar o Token de Sincronização de Cobrança invalidará o token anterior." + "message": "Rotacionar o token de sincronização de faturamento invalidará o token anterior." }, "selfHostedServer": { "message": "auto-hospedado" @@ -7212,49 +7212,49 @@ "message": "Especifique a URL de base da sua instalação local do Bitwarden. Exemplo: https://bitwarden.company.com" }, "selfHostedCustomEnvHeader": { - "message": "Para usuários avançados. Você pode especificar a URL de base de cada serviço independentemente." + "message": "Para configuração avançada, você pode especificar o URL de base de cada serviço independentemente." }, "selfHostedEnvFormInvalid": { - "message": "Você deve adicionar um URL do servidor de base ou pelo menos um ambiente personalizado." + "message": "Você deve adicionar um URL de base de um servidor ou pelo menos um ambiente personalizado." }, "selfHostedEnvMustUseHttps": { - "message": "URLs must use HTTPS." + "message": "URLs devem usar HTTPS." }, "apiUrl": { - "message": "URL do servidor API" + "message": "URL do servidor da API" }, "webVaultUrl": { - "message": "URL do servidor do Cofre Web" + "message": "URL do servidor do cofre web" }, "identityUrl": { "message": "URL do servidor de identidade" }, "notificationsUrl": { - "message": "URL do servidor notificações" + "message": "URL do servidor de notificações" }, "iconsUrl": { - "message": "URL do Servidor de Ícones" + "message": "URL do servidor de ícones" }, "environmentSaved": { - "message": "URLs para ambiente salvo" + "message": "URLs do ambiente salvas" }, "selfHostingTitle": { - "message": "Auto-hospedado" + "message": "Auto-hospedagem" }, "selfHostingEnterpriseOrganizationSectionCopy": { - "message": "Para configurar sua organização no seu próprio servidor, você precisará fazer o upload do arquivo de licença. Para oferecer suporte a planos de famílias gratuitas e recursos avançados de faturamento para a sua organização auto-hospedada, você precisará configurar a sincronização de cobrança." + "message": "Para configurar sua organização no seu próprio servidor, você precisará enviar o arquivo da licença. Para oferecer suporte a planos do Famílias Grátis e recursos avançados de faturamento para a sua organização auto-hospedada, você precisará configurar a sincronização de faturamento." }, "billingSyncApiKeyRotated": { - "message": "Token renovado" + "message": "Token rotacionado" }, "billingSyncKeyDesc": { - "message": "Um Token de sincronização de faturamento das configurações de assinatura da sua organização da nuvem é necessário para completar este formulário." + "message": "Um token de sincronização de faturamento das configurações de assinatura da sua organização da nuvem é necessário para completar este formulário." }, "billingSyncKey": { - "message": "Token de Sincronização de Faturamento" + "message": "Token de sincronização de faturamento" }, "automaticBillingSyncDesc": { - "message": "Sincronização automática desbloqueia os patrocínios das famílias e permite-lhe sincronizar sua licença sem enviar um arquivo. Depois de fazer atualizações no servidor da nuvem do Bitwarden, selecione Sincronizar licença para aplicar as alterações." + "message": "A sincronização automática desbloqueia o financiamento das famílias e te permite sincronizar sua licença sem enviar um arquivo. Depois de atualizar o servidor da nuvem do Bitwarden, selecione Sincronizar licença para aplicar as alterações." }, "active": { "message": "Ativo" @@ -7263,13 +7263,13 @@ "message": "Inativo" }, "sentAwaitingSync": { - "message": "Enviado (Aguardando Sincronização)" + "message": "Enviado (aguardando sincronização)" }, "sent": { "message": "Enviado" }, "requestRemoved": { - "message": "Removido (Aguardando Sincronização)" + "message": "Removido (aguardando sincronização)" }, "requested": { "message": "Solicitado" @@ -7321,7 +7321,7 @@ } }, "idpSingleSignOnServiceUrlRequired": { - "message": "Necessário se o ID da Entidade não for um URL." + "message": "Necessário se o ID da entidade não for um URL." }, "offerNoLongerValid": { "message": "Esta oferta não é mais válida. Entre em contato com os administradores da sua organização para obter mais informações." @@ -7333,19 +7333,19 @@ "message": "Necessário se a autoridade não for válida." }, "separateMultipleWithComma": { - "message": "Separe várias tags com vírgula." + "message": "Separe vários com uma vírgula." }, "sessionTimeout": { - "message": "Sua sessão expirou. Volte e tente iniciar a sessão novamente." + "message": "Sua sessão expirou. Volte e tente se conectar novamente." }, "exportingPersonalVaultTitle": { - "message": "Exportando Cofre Pessoal" + "message": "Exportando cofre individual" }, "exportingOrganizationVaultTitle": { - "message": "Exportando o Cofre da Organização" + "message": "Exportando cofre da organização" }, "exportingIndividualVaultDescription": { - "message": "Apenas os itens individuais do cofre associados a $EMAIL$ serão exportados. Os itens do cofre da organização não serão incluídos. Apenas as informações de item do cofre serão exportadas e não incluirão anexos associados.", + "message": "Apenas os itens do cofre individual associados a $EMAIL$ serão exportados. Os itens do cofre de organizações não serão incluídos. Apenas as informações dos itens do cofre serão exportadas e não incluirão anexos associados.", "placeholders": { "email": { "content": "$1", @@ -7354,7 +7354,7 @@ } }, "exportingIndividualVaultWithAttachmentsDescription": { - "message": "Apenas os itens individuais do cofre, incluindo anexos associados ao $EMAIL$ serão exportados. Os itens do cofre da organização não serão incluídos", + "message": "Apenas os itens do cofre individual, incluindo anexos associados com $EMAIL$ serão exportados. Os itens do cofre de organizações não serão incluídos", "placeholders": { "email": { "content": "$1", @@ -7363,7 +7363,7 @@ } }, "exportingOrganizationVaultDesc": { - "message": "Apenas o cofre da organização associado com $ORGANIZATION$ será exportado. Itens do cofre pessoal e itens de outras organizações não serão incluídos.", + "message": "Apenas o cofre da organização associado a $ORGANIZATION$ será exportado. Itens de cofres individuais e de outras organizações não serão incluídos.", "placeholders": { "organization": { "content": "$1", @@ -7372,7 +7372,7 @@ } }, "exportingOrganizationVaultFromPasswordManagerWithDataOwnershipDesc": { - "message": "Only the organization vault associated with $ORGANIZATION$ will be exported.", + "message": "Apenas o cofre da organização associado com $ORGANIZATION$ será exportado.", "placeholders": { "organization": { "content": "$1", @@ -7381,7 +7381,7 @@ } }, "exportingOrganizationVaultFromAdminConsoleWithDataOwnershipDesc": { - "message": "Only the organization vault associated with $ORGANIZATION$ will be exported. My items collections will not be included.", + "message": "Apenas o cofre da organização associado com $ORGANIZATION$ será exportado. Os itens dos meus conjuntos não serão incluídos.", "placeholders": { "organization": { "content": "$1", @@ -7393,10 +7393,10 @@ "message": "Acesso negado. Você não tem permissão para ver esta página." }, "noPageAccess": { - "message": "You do not have access to this page" + "message": "Você não tem acesso a esta página" }, "masterPassword": { - "message": "Senha Mestra" + "message": "Senha principal" }, "security": { "message": "Segurança" @@ -7405,10 +7405,10 @@ "message": "Chaves" }, "billingHistory": { - "message": "Histórico de Cobrança" + "message": "Histórico de cobrança" }, "backToReports": { - "message": "Voltar para Relatórios" + "message": "Voltar aos relatórios" }, "organizationPicker": { "message": "Seletor de organização" @@ -7427,35 +7427,35 @@ } }, "accountSettings": { - "message": "Configurações da Conta" + "message": "Configurações da conta" }, "generator": { "message": "Gerador", "description": "Short for 'credential generator'." }, "generateUsername": { - "message": "Gerar Usuário" + "message": "Gerar nome de usuário" }, "generateEmail": { "message": "Gerar e-mail" }, "generatePassword": { - "message": "Gerar Senha" + "message": "Gerar senha" }, "generatePassphrase": { "message": "Gerar frase secreta" }, "passwordGenerated": { - "message": "Password generated" + "message": "Senha gerada" }, "passphraseGenerated": { - "message": "Passphrase generated" + "message": "Frase secreta gerada" }, "usernameGenerated": { - "message": "Username generated" + "message": "Nome de usuário gerado" }, "emailGenerated": { - "message": "Email generated" + "message": "E-mail gerado" }, "spinboxBoundariesHint": { "message": "Valor deve ser entre $MIN$ e $MAX$.", @@ -7472,7 +7472,7 @@ } }, "passwordLengthRecommendationHint": { - "message": " Use $RECOMMENDED$ caracteres ou mais para gerar uma senha forte.", + "message": " Utilize $RECOMMENDED$ ou mais caracteres para gerar um senha forte.", "description": "Appended to `spinboxBoundariesHint` to recommend a length to the user. This must include any language-specific 'sentence' separator characters (e.g. a space in english).", "placeholders": { "recommended": { @@ -7482,7 +7482,7 @@ } }, "passphraseNumWordsRecommendationHint": { - "message": " Use palavras $RECOMMENDED$ ou mais para gerar uma frase secreta forte.", + "message": " Utilize $RECOMMENDED$ ou mais palavras para gerar uma frase secreta forte.", "description": "Appended to `spinboxBoundariesHint` to recommend a number of words to the user. This must include any language-specific 'sentence' separator characters (e.g. a space in english).", "placeholders": { "recommended": { @@ -7492,7 +7492,7 @@ } }, "plusAddressedEmail": { - "message": "E-mail alternativo (com um +)", + "message": "E-mail endereçado com +", "description": "Username generator option that appends a random sub-address to the username. For example: address+subaddress@email.com" }, "plusAddressedEmailDesc": { @@ -7502,7 +7502,7 @@ "message": "E-mail pega-tudo" }, "catchallEmailDesc": { - "message": "Use o catch-all configurado no seu domínio." + "message": "Use a caixa de entrada pega-tudo configurada no seu domínio." }, "useThisEmail": { "message": "Usar este e-mail" @@ -7512,25 +7512,25 @@ "description": "Generates domain-based username using random letters" }, "randomWord": { - "message": "Palavra Aleatória" + "message": "Palavra aleatória" }, "usernameGenerator": { - "message": "Gerador de usuário" + "message": "Gerador de nome de usuário" }, "useThisPassword": { - "message": "Use esta senha" + "message": "Usar esta senha" }, "useThisPassphrase": { - "message": "Use this passphrase" + "message": "Usar esta frase secreta" }, "useThisUsername": { - "message": "Use este nome de usuário" + "message": "Usar este nome de usuário" }, "securePasswordGenerated": { - "message": "Senha segura gerada! Não se esqueça de atualizar também sua senha no site." + "message": "Senha segura gerada! Não se esqueça de atualizar sua senha no site também." }, "useGeneratorHelpTextPartOne": { - "message": "Usar o gerador", + "message": "Use o gerador", "description": "This will be used as part of a larger sentence, broken up to include the generator icon. The full sentence will read 'Use the generator [GENERATOR_ICON] to create a strong unique password'" }, "useGeneratorHelpTextPartTwo": { @@ -7541,19 +7541,19 @@ "message": "Serviço" }, "unknownCipher": { - "message": "Item desconhecido, talvez você precise fazer login com outra conta para acessar este item." + "message": "Item desconhecido, talvez você precise pedir permissão para acessar este item." }, "unknownSecret": { - "message": "Unknown secret, you may need to request permission to access this secret." + "message": "Segredo desconhecido, talvez você precise pedir permissão para acessar este segredo." }, "unknownServiceAccount": { - "message": "Unknown machine account, you may need to request permission to access this machine account." + "message": "Conta de máquina desconhecida, talvez você precise pedir permissão para acessar esta conta de máquina." }, "unknownProject": { - "message": "Unknown project, you may need to request permission to access this project." + "message": "Projeto desconhecido, talvez você precise pedir permissão para acessar este projeto." }, "cannotSponsorSelf": { - "message": "Você não pode resgatar a conta ativa. Digite um e-mail diferente." + "message": "Você não pode resgatar para conta ativa. Digite um e-mail diferente." }, "revokeWhenExpired": { "message": "Expira em $DATE$", @@ -7565,7 +7565,7 @@ } }, "awaitingSyncSingular": { - "message": "Token renovado há $DAYS$ dia atrás. Atualize o token de sincronização de cobrança nas configurações da organização auto-hospedada.", + "message": "Token rotacionado há $DAYS$ dia atrás. Atualize o token de sincronização de faturamento nas configurações da organização auto-hospedada.", "placeholders": { "days": { "content": "$1", @@ -7574,7 +7574,7 @@ } }, "awaitingSyncPlural": { - "message": "Token renovado há $DAYS$ dias. Atualize o token de sincronização de cobrança nas configurações da sua organização auto-hospedada.", + "message": "Token rotacionado há $DAYS$ dias atrás. Atualize o token de sincronização de faturamento nas configurações da organização auto-hospedada.", "placeholders": { "days": { "content": "$1", @@ -7583,11 +7583,11 @@ } }, "lastSync": { - "message": "Última Sincronização", + "message": "Última sincronização", "description": "Used as a prefix to indicate the last time a sync occurred. Example \"Last sync 1968-11-16 00:00:00\"" }, "sponsorshipsSynced": { - "message": "Patrocínios auto-hospedados sincronizados." + "message": "Faturamentos auto-hospedados sincronizados." }, "billingManagedByProvider": { "message": "Gerenciado por $PROVIDER$", @@ -7599,11 +7599,11 @@ } }, "billingContactProviderForAssistance": { - "message": "Por favor, entre em contato com eles para obter mais ajuda", + "message": "Entre em contato com eles para obter mais ajuda", "description": "This text is displayed if an organization's billing is managed by a Provider. It tells the user to contact the Provider for assistance." }, "forwardedEmail": { - "message": "Alias de E-mail Encaminhado" + "message": "Alias de encaminhamento de e-mail" }, "forwardedEmailDesc": { "message": "Gere um alias de e-mail com um serviço externo de encaminhamento." @@ -7617,7 +7617,7 @@ "description": "Guidance provided for email forwarding services that support multiple email domains." }, "forwarderError": { - "message": "Erro $SERVICENAME$ : $ERRORMESSAGE$", + "message": "Erro do $SERVICENAME$: $ERRORMESSAGE$", "description": "Reports an error returned by a forwarding service to the user.", "placeholders": { "servicename": { @@ -7645,7 +7645,7 @@ } }, "forwaderInvalidToken": { - "message": "Token de API $SERVICENAME$ inválido", + "message": "Token de API do $SERVICENAME$ inválido", "description": "Displayed when the user's API token is empty or rejected by the forwarding service.", "placeholders": { "servicename": { @@ -7655,7 +7655,7 @@ } }, "forwaderInvalidTokenWithMessage": { - "message": "Token de API $SERVICENAME$ inválido: $ERRORMESSAGE$", + "message": "Token de API da $SERVICENAME$ inválido: $ERRORMESSAGE$", "description": "Displayed when the user's API token is rejected by the forwarding service with an error message.", "placeholders": { "servicename": { @@ -7693,7 +7693,7 @@ } }, "forwarderNoAccountId": { - "message": "Não foi possível obter a máscara do ID da conta de email $SERVICENAME$.", + "message": "Não é possível obter o ID da conta de e-mail mascarado do $SERVICENAME$.", "description": "Displayed when the forwarding service fails to return an account ID.", "placeholders": { "servicename": { @@ -7703,7 +7703,7 @@ } }, "forwarderNoDomain": { - "message": "Domínio $SERVICENAME$ inválido.", + "message": "Domínio inválido do $SERVICENAME$.", "description": "Displayed when the domain is empty or domain authorization failed at the forwarding service.", "placeholders": { "servicename": { @@ -7713,7 +7713,7 @@ } }, "forwarderNoUrl": { - "message": "URL $SERVICENAME$ inválida.", + "message": "URL inválido do $SERVICENAME$.", "description": "Displayed when the url of the forwarding service wasn't supplied.", "placeholders": { "servicename": { @@ -7723,7 +7723,7 @@ } }, "forwarderUnknownError": { - "message": "Ocorreu um erro $SERVICENAME$ desconhecido.", + "message": "Ocorreu um erro desconhecido do $SERVICENAME$.", "description": "Displayed when the forwarding service failed due to an unknown error.", "placeholders": { "servicename": { @@ -7743,23 +7743,23 @@ } }, "hostname": { - "message": "Hostname", + "message": "Nome do servidor", "description": "Part of a URL." }, "deviceVerification": { - "message": "Verificação do dispositivo" + "message": "Verificação de dispositivo" }, "enableDeviceVerification": { - "message": "Habilitar Verificação do Dispositivo" + "message": "Ativar verificação de dispositivo" }, "deviceVerificationDesc": { - "message": "Quando ativado, são enviados códigos de verificação para o seu endereço de e-mail ao fazer login a partir de um dispositivo não reconhecido" + "message": "Códigos de recuperação serão enviados ao seu endereço de e-mail ao se conectar a partir de um dispositivo desconhecido" }, "updatedDeviceVerification": { - "message": "Verificação do Dispositivo Atualizada" + "message": "Verificação de dispositivo atualizada" }, "areYouSureYouWantToEnableDeviceVerificationTheVerificationCodeEmailsWillArriveAtX": { - "message": "Tem certeza de que deseja habilitar o Verificação do Dispositivo? O código de verificação de e-mail chegarão em: $EMAIL$", + "message": "Tem certeza de que deseja ativar a verificação de dispositivo? Os e-mails dos códigos de verificação chegarão em: $EMAIL$", "placeholders": { "email": { "content": "$1", @@ -7768,41 +7768,41 @@ } }, "premiumSubcriptionRequired": { - "message": "Assinatura Premium necessária" + "message": "Plano Premium necessário" }, "scim": { "message": "Provisionamento de SCIM", "description": "The text, 'SCIM', is an acronym and should not be translated." }, "scimDescription": { - "message": "Provisionar automaticamente usuários e grupos com seu provedor de identidade preferido via provisionamento de SCIM", + "message": "Provisione automaticamente usuários e grupos com seu provedor de identidade preferido via provisionamento de SCIM", "description": "the text, 'SCIM', is an acronym and should not be translated." }, "scimIntegrationDescription": { - "message": "Provisionar automaticamente usuários e grupos com seu provedor de identidade preferido via provisionamento de SCIM. Encontre suporte para as integrações", + "message": "Provisione automaticamente usuários e grupos com seu provedor de identidade preferido via provisionamento de SCIM. Procure integrações suportadas", "description": "the text, 'SCIM', is an acronym and should not be translated." }, "scimEnabledCheckboxDesc": { - "message": "Habilitar SCIM", + "message": "Ativar SCIM", "description": "the text, 'SCIM', is an acronym and should not be translated." }, "scimEnabledCheckboxDescHelpText": { - "message": "Configure seu provedor de identidade preferido, configurando a URL e a chave de API SCIM", + "message": "Configure seu provedor de identidade preferido, configurando a URL e a chave da API do SCIM", "description": "the text, 'SCIM', is an acronym and should not be translated." }, "scimApiKeyHelperText": { "message": "Esta chave de API tem acesso para gerenciar os usuários da sua organização. Deve ser mantida em segredo." }, "copyScimKey": { - "message": "Copie a chave API do SCIM para a área de transferência", + "message": "Copie a chave da API do SCIM para a área de transferência", "description": "the text, 'SCIM' and 'API', are acronyms and should not be translated." }, "rotateScimKey": { - "message": "Rotacionar a chave API SCIM", + "message": "Rotacionar a chave de API do SCIM", "description": "the text, 'SCIM' and 'API', are acronyms and should not be translated." }, "rotateScimKeyWarning": { - "message": "Você tem certeza que deseja rotacionar a chave de API SCIM? A chave atual não funcionará mais para quaisquer integrações existentes.", + "message": "Você tem certeza que deseja rotacionar a chave de API do SCIM? A chave atual não funcionará mais para quaisquer integrações existentes.", "description": "the text, 'SCIM' and 'API', are acronyms and should not be translated." }, "rotateKey": { @@ -7813,7 +7813,7 @@ "description": "the text, 'SCIM' and 'API', are acronyms and should not be translated." }, "copyScimUrl": { - "message": "Copie a URL do endpoint SCIM para a área de transferência", + "message": "Copie a URL do endpoint do SCIM para a área de transferência", "description": "the text, 'SCIM' and 'URL', are acronyms and should not be translated." }, "scimUrl": { @@ -7821,11 +7821,11 @@ "description": "the text, 'SCIM' and 'URL', are acronyms and should not be translated." }, "scimApiKeyRotated": { - "message": "A chave de API SCIM foi rotacionada com sucesso", + "message": "A chave da API do SCIM foi rotacionada com sucesso", "description": "the text, 'SCIM' and 'API', are acronyms and should not be translated." }, "scimSettingsSaved": { - "message": "As configurações de SCIM foram salvas com sucesso", + "message": "Configurações do SCIM salvas", "description": "the text, 'SCIM', is an acronym and should not be translated." }, "inputRequired": { @@ -7892,7 +7892,7 @@ } }, "fieldsNeedAttention": { - "message": "$COUNT$ campos(s) acima precisam de sua atenção.", + "message": "$COUNT$ campo(s) acima precisam de sua atenção.", "placeholders": { "count": { "content": "$1", @@ -7904,7 +7904,7 @@ "message": "1 campo precisa de sua atenção." }, "multipleFieldsNeedAttention": { - "message": "Campos $COUNT$ precisam de sua atenção.", + "message": "$COUNT$ campos precisam da sua atenção.", "placeholders": { "count": { "content": "$1", @@ -7919,34 +7919,34 @@ "message": "A autenticação em duas etapas do Duo é necessária para sua conta." }, "duoTwoFactorRequiredPageSubtitle": { - "message": "A autenticação de dois fatores do Duo é necessária para sua conta. Siga os passos abaixo para conseguir entrar." + "message": "A autenticação de duas etapas do Duo é necessária para sua conta. Siga os passos abaixo para conseguir se conectar." }, "followTheStepsBelowToFinishLoggingIn": { - "message": "Siga os passos abaixo para finalizar o login." + "message": "Siga os passos abaixo para terminar de se conectar." }, "followTheStepsBelowToFinishLoggingInWithSecurityKey": { - "message": "Follow the steps below to finish logging in with your security key." + "message": "Siga os passos abaixo para terminar de se conectar com a sua chave de segurança." }, "launchDuo": { - "message": "Abrir o Duo" + "message": "Abrir Duo" }, "turnOn": { - "message": "Ligar" + "message": "Ativar" }, "on": { - "message": "Ligado" + "message": "Ativado" }, "off": { - "message": "Desligado" + "message": "Desativado" }, "connected": { - "message": "Connected" + "message": "Conectado" }, "members": { "message": "Membros" }, "reporting": { - "message": "Reportando" + "message": "Relatórios" }, "numberOfUsers": { "message": "Número de usuários" @@ -7997,16 +7997,16 @@ "message": "-- Digite para filtrar --" }, "multiSelectLoading": { - "message": "Carrgando Opções..." + "message": "Carrgando opções..." }, "multiSelectNotFound": { "message": "Nenhum item encontrado" }, "multiSelectClearAll": { - "message": "Limpar todos" + "message": "Limpar tudo" }, "toggleCharacterCount": { - "message": "Alternar contagem de caracteres", + "message": "Habilitar contagem de caracteres", "description": "'Character count' describes a feature that displays a number next to each character of the password." }, "passwordCharacterCount": { @@ -8041,18 +8041,18 @@ "description": "Action to copy the value of a secret to the system's clipboard." }, "deleteSecret": { - "message": "Excluir segredo", + "message": "Apagar segredo", "description": "Action to delete a single secret from the system." }, "deleteSecrets": { - "message": "Excluir segredos", + "message": "Apagar segredos", "description": "The action to delete multiple secrets from the system." }, "hardDeleteSecret": { - "message": "Excluir permanentemente o segredo" + "message": "Apagar segredo permanentemente" }, "hardDeleteSecrets": { - "message": "Excluir permanentemente os segredos" + "message": "Apagar segredos permanentemente" }, "secretProjectAssociationDescription": { "message": "Selecione os projetos aos quais o segredo será associado. Somente os usuários da organização com acesso a estes projetos poderão ver o segredo.", @@ -8063,11 +8063,11 @@ "description": "A label for a type-to-filter input field to choose projects." }, "searchProjects": { - "message": "Pesquisar projetos", + "message": "Buscar nos projetos", "description": "Label for the search bar used to search projects." }, "project": { - "message": "Projecto", + "message": "Projeto", "description": "Similar to collections, projects can be used to group secrets." }, "editProject": { @@ -8079,11 +8079,11 @@ "description": "The action to view details of a project." }, "deleteProject": { - "message": "Excluir projeto", + "message": "Apagar projeto", "description": "The action to delete a project from the system." }, "deleteProjects": { - "message": "Excluir projetos", + "message": "Apagar projetos", "description": "The action to delete multiple projects from the system." }, "secret": { @@ -8095,7 +8095,7 @@ "description": "A machine user which can be used to automate processes and access secrets in the system." }, "serviceAccounts": { - "message": "Contas de Serviço", + "message": "Contas de serviço", "description": "The title for the section that deals with service accounts." }, "secrets": { @@ -8103,11 +8103,11 @@ "description": "The title for the section of the application that deals with secrets." }, "nameValuePair": { - "message": "Par de Nome/Valor", + "message": "Par de nome/valor", "description": "Title for a name/ value pair. Secrets typically consist of a name and value pair." }, "secretEdited": { - "message": "Secreto editado", + "message": "Segredo editado", "description": "Notification for the successful editing of a secret." }, "secretCreated": { @@ -8123,7 +8123,7 @@ "description": "Title for creating a new service account." }, "secretsNoItemsTitle": { - "message": "Sem segredos para mostrar", + "message": "Nenhum segredo para mostrar", "description": "Empty state to indicate that there are no secrets to display." }, "secretsNoItemsMessage": { @@ -8131,10 +8131,10 @@ "description": "Message to encourage the user to start adding secrets." }, "secretsTrashNoItemsMessage": { - "message": "Não há segredos no lixo." + "message": "Não há segredos na lixeira." }, "serviceAccountsNoItemsMessage": { - "message": "Crie uma nova conta de serviço para começar a automatizar o acesso secreto.", + "message": "Crie uma nova conta de serviço para começar a automatizar o acesso aos segredos.", "description": "Message to encourage the user to start creating service accounts." }, "serviceAccountsNoItemsTitle": { @@ -8142,15 +8142,15 @@ "description": "Title to indicate that there are no service accounts to display." }, "searchSecrets": { - "message": "Pesquisar segredos", + "message": "Buscar nos segredos", "description": "Placeholder text for searching secrets." }, "deleteServiceAccounts": { - "message": "Excluir contas de serviço", + "message": "Apagar contas de serviço", "description": "Title for the action to delete one or multiple service accounts." }, "deleteServiceAccount": { - "message": "Excluir conta de serviço", + "message": "Apagar conta de serviço", "description": "Title for the action to delete a single service account." }, "viewServiceAccount": { @@ -8158,7 +8158,7 @@ "description": "Action to view the details of a service account." }, "deleteServiceAccountDialogMessage": { - "message": "Excluir conta de serviço $SERVICE_ACCOUNT$ é permanente e irreversível.", + "message": "Apagar a conta de serviço $SERVICE_ACCOUNT$ é permanente e irreversível.", "placeholders": { "service_account": { "content": "$1", @@ -8167,10 +8167,10 @@ } }, "deleteServiceAccountsDialogMessage": { - "message": "A exclusão de projetos é permanente e irreversível." + "message": "O apagamento de contas de serviço é permanente e irreversível." }, "deleteServiceAccountsConfirmMessage": { - "message": "Excluir $COUNT$ contas de serviço", + "message": "Apagar $COUNT$ contas de serviço", "placeholders": { "count": { "content": "$1", @@ -8179,13 +8179,13 @@ } }, "deleteServiceAccountToast": { - "message": "Conta de serviço excluída" + "message": "Conta de serviço apagada" }, "deleteServiceAccountsToast": { - "message": "Contas de serviço excluídas" + "message": "Contas de serviço apagadas" }, "searchServiceAccounts": { - "message": "Pesquisar contas de serviço", + "message": "Buscar nas contas de serviço", "description": "Placeholder text for searching service accounts." }, "editServiceAccount": { @@ -8217,7 +8217,7 @@ "description": "Title for creating a new project." }, "softDeleteSecretWarning": { - "message": "Excluir segredos pode afetar integrações existentes.", + "message": "Apagar segredos pode afetar integrações existentes.", "description": "Warns that deleting secrets can have consequences on integrations" }, "softDeletesSuccessToast": { @@ -8225,13 +8225,13 @@ "description": "Notifies that the selected secrets have been moved to the trash" }, "hardDeleteSecretConfirmation": { - "message": "Tem certeza de que deseja excluir permanentemente este segredo?" + "message": "Tem certeza de que deseja apagar permanentemente este segredo?" }, "hardDeleteSecretsConfirmation": { - "message": "Tem certeza que deseja excluir estes segredos permanentemente?" + "message": "Tem certeza que deseja apagar estes segredos permanentemente?" }, "hardDeletesSuccessToast": { - "message": "Segredos excluídos permanentemente" + "message": "Segredos apagados permanentemente" }, "smAccess": { "message": "Acesso", @@ -8254,7 +8254,7 @@ "description": "Notifies that a service account has been updated" }, "typeOrSelectProjects": { - "message": "Type or select projects", + "message": "Digite ou selecione projetos", "description": "Instructions for selecting projects for a service account" }, "newSaTypeToFilter": { @@ -8262,15 +8262,15 @@ "description": "Instructions for filtering a list of projects or secrets" }, "deleteProjectsToast": { - "message": "Projetos excluídos", + "message": "Projetos apagados", "description": "Notifies that the selected projects have been deleted" }, "deleteProjectToast": { - "message": "O projeto e todos os segredos associados foram excluídos", + "message": "Projeto apagado", "description": "Notifies that a project has been deleted" }, "deleteProjectDialogMessage": { - "message": "Excluir o projeto $PROJECT$ é permanente e irreversível.", + "message": "Apagar o projeto $PROJECT$ é permanente e irreversível.", "description": "Informs users that projects are hard deleted and not sent to trash", "placeholders": { "project": { @@ -8290,7 +8290,7 @@ } }, "deleteProjectConfirmMessage": { - "message": "Excluir $PROJECT$", + "message": "Apagar $PROJECT$", "description": "Confirmation prompt to delete a specific project, where '$PROJECT$' is a placeholder for the name of the project.", "placeholders": { "project": { @@ -8300,7 +8300,7 @@ } }, "deleteProjectsConfirmMessage": { - "message": "Excluir $COUNT$ Projetos", + "message": "Apagar $COUNT$ projetos", "description": "Confirmation prompt to delete multiple projects, where '$COUNT$' is a placeholder for the number of projects to be deleted.", "placeholders": { "count": { @@ -8310,7 +8310,7 @@ } }, "deleteProjectsDialogMessage": { - "message": "A exclusão de projetos é permanente e irreversível.", + "message": "Apagar projetos é permanente e irreversível.", "description": "This message is displayed in a dialog box as a warning before proceeding with project deletion." }, "projectsNoItemsTitle": { @@ -8326,7 +8326,7 @@ "description": "Indicates that user confirmation is required for an action to proceed." }, "bulkDeleteProjectsErrorMessage": { - "message": "Os seguintes projetos não puderam ser excluídos:", + "message": "Os seguintes projetos não puderam ser apagados:", "description": "Message to be displayed when there is an error during bulk project deletion." }, "softDeleteSuccessToast": { @@ -8334,14 +8334,14 @@ "description": "Notification to be displayed when a secret is successfully sent to the trash." }, "hardDeleteSuccessToast": { - "message": "Segredo excluído permanentemente" + "message": "Segredo apagado permanentemente" }, "accessTokens": { "message": "Tokens de acesso", "description": "Title for the section displaying access tokens." }, "createAccessToken": { - "message": "Create access token", + "message": "Criar token de acesso", "description": "Button label for creating a new access token." }, "expires": { @@ -8353,7 +8353,7 @@ "description": "Label for the access level of an access token (Read only)." }, "accessTokensNoItemsTitle": { - "message": "Nenhum token de acesso para exibir", + "message": "Nenhum token de acesso para mostrar", "description": "Title to be displayed when there are no access tokens to display in the list." }, "accessTokensNoItemsDesc": { @@ -8381,7 +8381,7 @@ "description": "A unique string that gives a client application (eg. CLI) access to a secret or set of secrets." }, "accessTokenExpirationRequired": { - "message": "Data de validade requerida", + "message": "Data de validade necessária", "description": "Error message indicating that an expiration date for the access token must be set." }, "accessTokenCreatedAndCopied": { @@ -8410,10 +8410,10 @@ "message": "Submenu" }, "from": { - "message": "De" + "message": "Desde" }, "to": { - "message": "Para" + "message": "Até" }, "member": { "message": "Membro" @@ -8422,7 +8422,7 @@ "message": "Atualizar" }, "plusNMore": { - "message": "+ $QUANTITY$ mais", + "message": "+ mais $QUANTITY$", "placeholders": { "quantity": { "content": "$1", @@ -8434,34 +8434,34 @@ "message": "Informações do grupo" }, "editGroupMembersDesc": { - "message": "Conceder acesso às coleções atribuídas ao grupo." + "message": "Conceda acesso dos conjuntos atribuídos do grupo aos membros." }, "editGroupCollectionsDesc": { - "message": "Conceder acesso às coleções adicionando-as a este grupo." + "message": "Conceda acesso aos conjuntos adicionando-os a este grupo." }, "restrictedCollectionAssignmentDesc": { - "message": "Você só pode atribuir coleções que você gerencia." + "message": "Você só pode atribuir conjuntos que você gerencia." }, "selectMembers": { "message": "Selecionar membros" }, "selectCollections": { - "message": "Selecionar coleções" + "message": "Selecionar conjuntos" }, "role": { - "message": "Função" + "message": "Cargo" }, "removeMember": { "message": "Remover membro" }, "collection": { - "message": "Coleção" + "message": "Conjunto" }, "noCollection": { - "message": "Sem coleções" + "message": "Sem conjunto" }, "noCollectionsAdded": { - "message": "Nenhuma coleção adicionada" + "message": "Nenhum conjunto adicionado" }, "noMembersAdded": { "message": "Nenhum membro adicionado" @@ -8473,7 +8473,7 @@ "message": "Grupo" }, "domainVerification": { - "message": "Verificação de Domínio" + "message": "Verificação de domínio" }, "newDomain": { "message": "Novo domínio" @@ -8482,13 +8482,13 @@ "message": "Sem domínio" }, "noDomainsSubText": { - "message": "Conectar um domínio permite que os membros pulem o campo identificador SSO durante o Login com SSO." + "message": "Conectar um domínio permite que os membros pulem o campo do identificador de SSO durante a autenticação única." }, "copyDnsTxtRecord": { - "message": "Copiar registro do DNS TXT" + "message": "Copiar registro TXT do DNS" }, "dnsTxtRecord": { - "message": "Registro DNS TXT" + "message": "Registro TXT do DNS" }, "dnsTxtRecordInputHint": { "message": "Copie e cole o registro TXT no seu provedor de DNS." @@ -8521,10 +8521,10 @@ "message": "Nome" }, "domainStatusTh": { - "message": "Status" + "message": "Estado" }, "lastChecked": { - "message": "Última verificação:" + "message": "Última verificação" }, "editDomain": { "message": "Editar domínio" @@ -8551,25 +8551,25 @@ } }, "verificationRequiredForActionSetPinToContinue": { - "message": "Verificação necessária para esta ação. Defina um PIN para continuar." + "message": "Verificação necessária para esta ação. Configure um PIN para continuar." }, "setPin": { - "message": "Definir PIN" + "message": "Configurar PIN" }, "verifyWithBiometrics": { - "message": "Desbloquear com a biometria" + "message": "Verificar com biometria" }, "awaitingConfirmation": { "message": "Aguardando confirmação" }, "couldNotCompleteBiometrics": { - "message": "Não foi possível completar a biometria." + "message": "Não foi possível concluir a biometria." }, "needADifferentMethod": { "message": "Precisa de um método diferente?" }, "useMasterPassword": { - "message": "Usar a senha principal" + "message": "Usar senha principal" }, "usePin": { "message": "Usar PIN" @@ -8578,7 +8578,7 @@ "message": "Usar biometria" }, "enterVerificationCodeSentToEmail": { - "message": "Digite o código de verificação que foi enviado para o seu e-mail." + "message": "Digite o código de verificação enviado para o seu e-mail." }, "resendCode": { "message": "Reenviar código" @@ -8590,40 +8590,40 @@ "message": "Grupo/Membro" }, "selectGroupsAndMembers": { - "message": "Selecione grupos e membros" + "message": "Selecionar grupos e membros" }, "selectGroups": { - "message": "Selecione grupos" + "message": "Selecionar grupos" }, "userPermissionOverrideHelperDesc": { - "message": "Permissões definidas para um membro substituirão as permissões definidas pelo grupo desse membro." + "message": "As permissões configuradas para um membro substituirão as permissões configuradas pelo grupo desse membro." }, "noMembersOrGroupsAdded": { "message": "Nenhum membro ou grupo adicionado" }, "deleted": { - "message": "Excluído" + "message": "Apagado" }, "memberStatusFilter": { - "message": "Filtro de status de membros" + "message": "Filtro do estado de membros" }, "inviteMember": { "message": "Convidar membro" }, "addSponsorship": { - "message": "Add sponsorship" + "message": "Adicionar financiamento" }, "needsConfirmation": { "message": "Precisa de confirmação" }, "memberRole": { - "message": "Função de membro" + "message": "Cargo do membro" }, "moreFromBitwarden": { "message": "Mais do Bitwarden" }, "switchProducts": { - "message": "Trocar Produtos" + "message": "Trocar de produto" }, "freeOrgInvLimitReachedManageBilling": { "message": "Organizações gratuitas podem ter até $SEATCOUNT$ membros. Faça upgrade para um plano pago para convidar mais membros.", @@ -8644,7 +8644,7 @@ } }, "teamsStarterPlanInvLimitReachedManageBilling": { - "message": "Planos de Times Starter podem ter até $SEATCOUNT$ membros. Atualize para o seu plano para convidar mais membros.", + "message": "Planos do Equipes Iniciantes podem ter até $SEATCOUNT$ membros. Faça upgrade do seu plano para convidar mais membros.", "placeholders": { "seatcount": { "content": "$1", @@ -8653,7 +8653,7 @@ } }, "teamsStarterPlanInvLimitReachedNoManageBilling": { - "message": "Planos para Equipes Iniciantes podem ter até $SEATCOUNT$ membros. Entre em contato com o proprietário da organização para melhorar o seu plano e convidar mais membros.", + "message": "Planos do Equipes Iniciantes podem ter até $SEATCOUNT$ membros. Entre em contato com o proprietário da organização para fazer upgrade do seu plano e convidar mais membros.", "placeholders": { "seatcount": { "content": "$1", @@ -8662,7 +8662,7 @@ } }, "freeOrgMaxCollectionReachedManageBilling": { - "message": "Organizações gratuitas podem ter até $COLLECTIONCOUNT$ coleções. Faça o upgrade para um plano pago para adicionar mais coleções.", + "message": "Organizações gratuitas podem ter até $COLLECTIONCOUNT$ conjuntos. Faça upgrade para um plano pago para adicionar mais conjuntos.", "placeholders": { "COLLECTIONCOUNT": { "content": "$1", @@ -8671,7 +8671,7 @@ } }, "freeOrgMaxCollectionReachedNoManageBilling": { - "message": "Organizações gratuitas podem ter até $COLLECTIONCOUNT$ membros. Entre em contato com o proprietário da sua organização para fazer upgrade.", + "message": "Organizações gratuitas podem ter até $COLLECTIONCOUNT$ conjuntos. Entre em contato com o proprietário da sua organização para fazer upgrade.", "placeholders": { "COLLECTIONCOUNT": { "content": "$1", @@ -8686,10 +8686,10 @@ "message": "Exportar dados" }, "exportingOrganizationSecretDataTitle": { - "message": "Exportando dados secretos da organização" + "message": "Exportando dados de segredos da organização" }, "exportingOrganizationSecretDataDescription": { - "message": "Apenas o cofre da organização associado com $ORGANIZATION$ será exportado. Itens do cofre pessoal e itens de outras organizações não serão incluídos.", + "message": "Apenas os dados do Gerenciador de Segredos associados com $ORGANIZATION$ serão exportados. Itens em outros produtos ou de outras organizações não serão incluídos.", "placeholders": { "ORGANIZATION": { "content": "$1", @@ -8698,28 +8698,28 @@ } }, "fileUpload": { - "message": "Enviar de arquivo" + "message": "Envio de arquivo" }, "upload": { - "message": "Fazer upload" + "message": "Enviar" }, "acceptedFormats": { - "message": "Formatos Aceitos:" + "message": "Formatos aceitos:" }, "copyPasteImportContents": { - "message": "Copiar e colar conteúdo para importação:" + "message": "Copie e cole o conteúdo de importação:" }, "or": { "message": "ou" }, "unlockWithBiometrics": { - "message": "Desbloquear com a biometria" + "message": "Desbloquear com biometria" }, "unlockWithPin": { - "message": "Desbloquear com o PIN" + "message": "Desbloquear com PIN" }, "unlockWithMasterPassword": { - "message": "Desbloquear com a senha principal" + "message": "Desbloquear com senha principal" }, "licenseAndBillingManagement": { "message": "Gerenciamento da licença e faturamento" @@ -8728,10 +8728,10 @@ "message": "Sincronização automática" }, "manualUpload": { - "message": "Upload manual" + "message": "Envio manual" }, "manualBillingTokenUploadDesc": { - "message": "Se você não deseja optar pela sincronização de faturamento, carregue sua licença manualmente aqui. Isto não desbloqueará automaticamente os patrocinadores das Famílias." + "message": "Se você não deseja optar pela sincronização de faturamento, envie sua licença manualmente aqui. Isto não desbloqueará automaticamente os financiamentos do Famílias." }, "syncLicense": { "message": "Sincronizar licença" @@ -8746,13 +8746,13 @@ "message": "Última sincronização de licença" }, "billingSyncHelp": { - "message": "Ajuda da Sincronização de faturamento" + "message": "Ajuda com sincronização de faturamento" }, "licensePaidFeaturesHelp": { - "message": "Ajuda dos recursos de licença paga" + "message": "Ajuda com recursos de licença paga" }, "selfHostGracePeriodHelp": { - "message": "Após a expiração da assinatura, você tem 60 dias para aplicar um arquivo de licença atualizado à sua organização. Fim do período de carência $GRACE_PERIOD_END_DATE$.", + "message": "Após a expiração da assinatura, você tem 60 dias para aplicar um arquivo de licença atualizado à sua organização. O fim do período de tolerância é em $GRACE_PERIOD_END_DATE$.", "placeholders": { "GRACE_PERIOD_END_DATE": { "content": "$1", @@ -8764,13 +8764,13 @@ "message": "Enviar licença" }, "projectPeopleDescription": { - "message": "Conceder acesso a este projeto ou grupos de pessoas." + "message": "Conceda acesso ao projeto para grupos ou pessoas." }, "projectPeopleSelectHint": { "message": "Digite ou selecione pessoas ou grupos" }, "projectServiceAccountsDescription": { - "message": "Conceder acesso a contas de serviço a este projeto." + "message": "Conceda acesso a contas de serviço a este projeto." }, "projectServiceAccountsSelectHint": { "message": "Digite ou selecione contas de serviço" @@ -8782,13 +8782,13 @@ "message": "Adicione contas de serviço para conceder acesso" }, "serviceAccountPeopleDescription": { - "message": "Conceder acesso a esta conta de serviço a grupos ou pessoas." + "message": "Conceda acesso a esta conta de serviço a grupos ou pessoas." }, "serviceAccountProjectsDescription": { - "message": "Atribuir projetos para esta conta de serviço. " + "message": "Atribua projetos a esta conta de serviço. " }, "serviceAccountEmptyProjectAccesspolicies": { - "message": "Adicionar projetos para conceder acesso" + "message": "Adicione projetos para conceder acesso" }, "canReadWrite": { "message": "Pode ler e gravar" @@ -8797,22 +8797,22 @@ "message": "Grupo/Usuário" }, "kdfSettingsChangeLogoutWarning": { - "message": "O processo desconectará você de todas as sessões ativas. Você precisará iniciar a sessão novamente e concluir o login em duas etapas, se houver. Recomendamos exportar seu cofre antes de alterar suas configurações de criptografia para evitar perda de dados." + "message": "O processo desconectará você de todas as sessões ativas. Você precisará se conectar novamente, e fazer a autenticação em duas etapas, se configurada. Recomendamos exportar seu cofre antes de alterar suas configurações de criptografia para evitar perda de dados." }, "secretsManager": { "message": "Gerenciador de Segredos" }, "secretsManagerAccessDescription": { - "message": "Ative o acesso do usuário ao Gerenciador Secretos." + "message": "Ative o acesso de usuários ao Gerenciador de Segredos." }, "userAccessSecretsManagerGA": { - "message": "Este usuário pode acessar o gerente secreto" + "message": "Este usuário pode acessar o Gerenciador de Segredos" }, "important": { "message": "Importante:" }, "viewAll": { - "message": "Visualizar tudo" + "message": "Ver tudo" }, "showingPortionOfTotal": { "message": "Mostrando $PORTION$ de $TOTAL$", @@ -8837,7 +8837,7 @@ "message": "Ocorreu um erro ao tentar ler o arquivo de importação" }, "accessedSecretWithId": { - "message": "Accessed a secret with identifier: $SECRET_ID$", + "message": "Acessou um segredo com o identificador: $SECRET_ID$", "placeholders": { "secret_id": { "content": "$1", @@ -8846,7 +8846,7 @@ } }, "accessedSecret": { - "message": "$SECRET_ID$ secreto acessado.", + "message": "Acessou o segredo $SECRET_ID$.", "placeholders": { "secret_id": { "content": "$1", @@ -8855,7 +8855,7 @@ } }, "editedSecretWithId": { - "message": "Edited a secret with identifier: $SECRET_ID$", + "message": "Editou um segredo com o identificador: $SECRET_ID$", "placeholders": { "secret_id": { "content": "$1", @@ -8864,7 +8864,7 @@ } }, "deletedSecretWithId": { - "message": "Deleted a secret with identifier: $SECRET_ID$", + "message": "Apagou um segredo com o identificador: $SECRET_ID$", "placeholders": { "secret_id": { "content": "$1", @@ -8873,7 +8873,7 @@ } }, "permanentlyDeletedSecretWithId": { - "message": "Permanently deleted a secret with identifier: $SECRET_ID$", + "message": "Apagou permanentemente um segredo com o identificador: $SECRET_ID$", "placeholders": { "secret_id": { "content": "$1", @@ -8882,7 +8882,7 @@ } }, "restoredSecretWithId": { - "message": "Restored a secret with identifier: $SECRET_ID$", + "message": "Restaurou o segredo com o identificador: $SECRET_ID$", "placeholders": { "secret_id": { "content": "$1", @@ -8891,7 +8891,7 @@ } }, "createdSecretWithId": { - "message": "Created a new secret with identifier: $SECRET_ID$", + "message": "Criou um segredo com o identificador: $SECRET_ID$", "placeholders": { "secret_id": { "content": "$1", @@ -8900,7 +8900,7 @@ } }, "accessedProjectWithIdentifier": { - "message": "Accessed a project with identifier: $PROJECT_ID$.", + "message": "Acessou um projeto com o identificador: $PROJECT_ID$.", "placeholders": { "project_id": { "content": "$1", @@ -8909,7 +8909,7 @@ } }, "nameUnavailableProjectDeleted": { - "message": "Deleted project Id: $PROJECT_ID$", + "message": "Apagou o projeto com ID: $PROJECT_ID$", "placeholders": { "project_id": { "content": "$1", @@ -8918,7 +8918,7 @@ } }, "nameUnavailableSecretDeleted": { - "message": "Deleted secret Id: $SECRET_ID$", + "message": "Apagou segredo com o ID: $SECRET_ID$", "placeholders": { "secret_id": { "content": "$1", @@ -8927,7 +8927,7 @@ } }, "nameUnavailableServiceAccountDeleted": { - "message": "Deleted machine account Id: $SERVICE_ACCOUNT_ID$", + "message": "Apagou conta de máquina com o ID: $SERVICE_ACCOUNT_ID$", "placeholders": { "service_account_id": { "content": "$1", @@ -8936,7 +8936,7 @@ } }, "editedProjectWithId": { - "message": "Edited a project with identifier: $PROJECT_ID$", + "message": "Editou um projeto com o identificador: $PROJECT_ID$", "placeholders": { "project_id": { "content": "$1", @@ -8945,7 +8945,7 @@ } }, "addedUserToServiceAccountWithId": { - "message": "Added user: $USER_ID$ to machine account with identifier: $SERVICE_ACCOUNT_ID$", + "message": "Adicionou o usuário: $USER_ID$ a conta de máquina com identificador: $SERVICE_ACCOUNT_ID$", "placeholders": { "user_id": { "content": "$1", @@ -8958,7 +8958,7 @@ } }, "removedUserToServiceAccountWithId": { - "message": "Removed user: $USER_ID$ from machine account with identifier: $SERVICE_ACCOUNT_ID$", + "message": "Removeu o usuário: $USER_ID$ da conta de máquina com identificador: $SERVICE_ACCOUNT_ID$", "placeholders": { "user_id": { "content": "$1", @@ -8971,7 +8971,7 @@ } }, "removedGroupFromServiceAccountWithId": { - "message": "Removed group: $GROUP_ID$ from machine account with identifier: $SERVICE_ACCOUNT_ID$", + "message": "Removeu o grupo: $GROUP_ID$ da conta de máquina com identificador: $SERVICE_ACCOUNT_ID$", "placeholders": { "group_id": { "content": "$1", @@ -8984,7 +8984,7 @@ } }, "serviceAccountCreatedWithId": { - "message": "Created machine account with identifier: $SERVICE_ACCOUNT_ID$", + "message": "Criou a conta de máquina com identificador: $SERVICE_ACCOUNT_ID$", "placeholders": { "service_account_id": { "content": "$1", @@ -8993,7 +8993,7 @@ } }, "addedGroupToServiceAccountId": { - "message": "Added group: $GROUP_ID$ to machine account with identifier: $SERVICE_ACCOUNT_ID$", + "message": "Adicionou o grupo: $GROUP_ID$ a conta de máquina com identificador: $SERVICE_ACCOUNT_ID$", "placeholders": { "group_id": { "content": "$1", @@ -9006,7 +9006,7 @@ } }, "serviceAccountDeletedWithId": { - "message": "Deleted machine account with identifier: $SERVICE_ACCOUNT_ID$", + "message": "Apagou a conta de máquina com identificador: $SERVICE_ACCOUNT_ID$", "placeholders": { "service_account_id": { "content": "$1", @@ -9015,7 +9015,7 @@ } }, "deletedProjectWithId": { - "message": "Deleted a project with identifier: $PROJECT_ID$", + "message": "Apagou um projeto com o identificador: $PROJECT_ID$", "placeholders": { "project_id": { "content": "$1", @@ -9024,7 +9024,7 @@ } }, "createdProjectWithId": { - "message": "Created a new project with identifier: $PROJECT_ID$", + "message": "Criou um projeto com o identificador: $PROJECT_ID$", "placeholders": { "project_id": { "content": "$1", @@ -9037,16 +9037,16 @@ "description": "Software Development Kit" }, "createAnAccount": { - "message": "Criar uma conta" + "message": "Crie uma conta" }, "createSecret": { "message": "Crie um segredo" }, "createProject": { - "message": "Criar um projeto" + "message": "Crie um projeto" }, "createServiceAccount": { - "message": "Criar conta de serviço" + "message": "Crie uma conta de serviço" }, "downloadThe": { "message": "Baixe o", @@ -9062,7 +9062,7 @@ "message": "Vamos começar" }, "complete": { - "message": "$COMPLETED$/$TOTAL$ Completos", + "message": "$COMPLETED$ concluídos dos $TOTAL$", "placeholders": { "COMPLETED": { "content": "$1", @@ -9102,13 +9102,13 @@ "message": "Remover pessoas de uma conta de serviço não remove os tokens de acesso que criaram. Para a melhor prática de segurança, é recomendável revogar os tokens de acesso criados por pessoas removidas de uma conta de serviço." }, "smAccessRemovalWarningProjectTitle": { - "message": "Remover acesso para esse projeto" + "message": "Remova o acesso a esse projeto" }, "smAccessRemovalWarningProjectMessage": { "message": "Esta ação removerá seu acesso ao projeto." }, "smAccessRemovalWarningSaTitle": { - "message": "Remover acesso a essa conta de serviço" + "message": "Remova o acesso a essa conta de serviço" }, "smAccessRemovalWarningSaMessage": { "message": "Essa ação removerá seu acesso à conta de serviço." @@ -9117,16 +9117,16 @@ "message": "Remover acesso" }, "checkForBreaches": { - "message": "Verificar se essa senha aparece em vazamento de dados conhecidos" + "message": "Conferir vazamentos de dados conhecidos por esta senha" }, "exposedMasterPassword": { "message": "Senha principal exposta" }, "exposedMasterPasswordDesc": { - "message": "A senha foi encontrada em violação de dados. Use uma senha única para proteger sua conta. Tem certeza de que deseja usar uma senha exposta?" + "message": "Senha encontrada em um vazamento de dados. Use uma senha única para proteger sua conta. Tem certeza que quer usar uma senha exposta?" }, "weakAndExposedMasterPassword": { - "message": "Senha Mestra Fraca e Exposta" + "message": "Senha principal fraca e comprometida" }, "weakAndBreachedMasterPasswordDesc": { "message": "Senha fraca identificada e encontrada em um vazamento de dados. Use uma senha forte e única para proteger a sua conta. Tem certeza de que deseja usar essa senha?" @@ -9157,31 +9157,31 @@ "message": "Descartar" }, "notAvailableForFreeOrganization": { - "message": "Este recurso não está disponível para organizações gratuitas. Entre em contato com o seu proprietário para atualizar." + "message": "Este recurso não está disponível para organizações gratuitas. Entre em contato com o seu proprietário para fazer upgrade." }, "smProjectSecretsNoItemsNoAccess": { "message": "Entre em contato com o administrador da sua organização para gerenciar segredos para este projeto.", "description": "The message shown to the user under a project's secrets tab when the user only has read access to the project." }, "enforceOnLoginDesc": { - "message": "Exigir que os membros existentes alterem suas senhas" + "message": "Exija que membros existentes alterem suas senhas" }, "smProjectDeleteAccessRestricted": { - "message": "Você não tem permissão para excluir este projeto", + "message": "Você não tem permissão para apagar este projeto", "description": "The individual description shown to the user when the user doesn't have access to delete a project." }, "smProjectsDeleteBulkConfirmation": { - "message": "Os projetos a seguir não podem ser excluídos. Deseja continuar?", + "message": "Os projetos a seguir não podem ser apagados. Deseja continuar?", "description": "The message shown to the user when bulk deleting projects and the user doesn't have access to some projects." }, "updateKdfSettings": { - "message": "Atualizar as definições do KDF" + "message": "Atualizar configurações da KDF" }, "loginInitiated": { "message": "Autenticação iniciada" }, "rememberThisDeviceToMakeFutureLoginsSeamless": { - "message": "Lembre-se deste dispositivo para permanecer conectado" + "message": "Lembrar deste dispositivo para tornar futuras autenticações simples" }, "deviceApprovalRequired": { "message": "Aprovação do dispositivo necessária. Selecione uma opção de aprovação abaixo:" @@ -9205,35 +9205,35 @@ "message": "Solicitar aprovação do administrador" }, "unableToCompleteLogin": { - "message": "Unable to complete login" + "message": "Não é possível concluir a autenticação" }, "loginOnTrustedDeviceOrAskAdminToAssignPassword": { - "message": "You need to log in on a trusted device or ask your administrator to assign you a password." + "message": "Você precisa se conectar com um dispositivo confiado ou solicitar ao administrador que lhe atribua uma senha." }, "trustedDeviceEncryption": { - "message": "Criptografia de dispositivo confiável" + "message": "Criptografia de dispositivo confiado" }, "trustedDevices": { - "message": "Dispositivos confiáveis" + "message": "Dispositivos confiados" }, "memberDecryptionOptionTdeDescPart1": { - "message": "Os membros não precisarão de uma senha principal ao fazer login com SSO. A senha principal é substituída por uma chave de criptografia armazenada no dispositivo, fazendo com que esse dispositivo seja confiável. O primeiro dispositivo que um membro cria sua conta e os logins serão confiáveis. Novos dispositivos precisarão ser aprovados por um dispositivo confiável existente ou por um administrador. O", + "message": "Os membros não precisarão de uma senha principal ao se conectar com SSO. A senha principal é substituída por uma chave de criptografia armazenada no dispositivo, fazendo com que esse dispositivo seja confiado. O primeiro dispositivo que um membro cria sua conta e se conecta serão confiados. Novos dispositivos precisarão ser aprovados por um dispositivo confiado existente ou por um administrador. A", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Members will not need a master password when logging in with SSO. Master password is replaced with an encryption key stored on the device, making that device trusted. The first device a member creates their account and logs into will be trusted. New devices will need to be approved by an existing trusted device or by an administrator. The single organization policy, SSO required policy, and account recovery administration policy will turn on when this option is used.'" }, "memberDecryptionOptionTdeDescLink1": { - "message": "organização única", + "message": "política de", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Members will not need a master password when logging in with SSO. Master password is replaced with an encryption key stored on the device, making that device trusted. The first device a member creates their account and logs into will be trusted. New devices will need to be approved by an existing trusted device or by an administrator. The single organization policy, SSO required policy, and account recovery administration policy will turn on when this option is used.'" }, "memberDecryptionOptionTdeDescPart2": { - "message": "política,", + "message": "organização única,", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Members will not need a master password when logging in with SSO. Master password is replaced with an encryption key stored on the device, making that device trusted. The first device a member creates their account and logs into will be trusted. New devices will need to be approved by an existing trusted device or by an administrator. The single organization policy, SSO required policy, and account recovery administration policy will turn on when this option is used.'" }, "memberDecryptionOptionTdeDescLink2": { - "message": "Necessário SSO", + "message": "política de", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Members will not need a master password when logging in with SSO. Master password is replaced with an encryption key stored on the device, making that device trusted. The first device a member creates their account and logs into will be trusted. New devices will need to be approved by an existing trusted device or by an administrator. The single organization policy, SSO required policy, and account recovery administration policy will turn on when this option is used.'" }, "memberDecryptionOptionTdeDescPart3": { - "message": "política, e", + "message": "SSO obrigatória, e a política de", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Members will not need a master password when logging in with SSO. Master password is replaced with an encryption key stored on the device, making that device trusted. The first device a member creates their account and logs into will be trusted. New devices will need to be approved by an existing trusted device or by an administrator. The single organization policy, SSO required policy, and account recovery administration policy will turn on when this option is used.'" }, "memberDecryptionOptionTdeDescLink3": { @@ -9241,19 +9241,19 @@ "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Members will not need a master password when logging in with SSO. Master password is replaced with an encryption key stored on the device, making that device trusted. The first device a member creates their account and logs into will be trusted. New devices will need to be approved by an existing trusted device or by an administrator. The single organization policy, SSO required policy, and account recovery administration policy will turn on when this option is used.'" }, "memberDecryptionOptionTdeDescPart4": { - "message": "política será ativada quando esta opção for utilizada.", + "message": "ativarão quando esta opção for utilizada.", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Members will not need a master password when logging in with SSO. Master password is replaced with an encryption key stored on the device, making that device trusted. The first device a member creates their account and logs into will be trusted. New devices will need to be approved by an existing trusted device or by an administrator. The single organization policy, SSO required policy, and account recovery administration policy will turn on when this option is used.'" }, "orgPermissionsUpdatedMustSetPassword": { - "message": "As permissões da sua organização foram atualizadas, exigindo que você defina uma senha principal.", + "message": "As permissões da sua organização foram atualizadas, exigindo que você configure uma senha principal.", "description": "Used as a card title description on the set password page to explain why the user is there" }, "orgRequiresYouToSetPassword": { - "message": "Sua organização requer que você defina uma senha principal.", + "message": "Sua organização requer que você configure uma senha principal.", "description": "Used as a card title description on the set password page to explain why the user is there" }, "cardMetrics": { - "message": "fora do $TOTAL$", + "message": "dos $TOTAL$", "placeholders": { "total": { "content": "$1", @@ -9262,7 +9262,7 @@ } }, "notFound": { - "message": "$RESOURCE$ não encontrado", + "message": "$RESOURCE$ não encontrado(a)", "placeholders": { "resource": { "content": "$1", @@ -9288,7 +9288,7 @@ "message": "Ativar acesso" }, "bulkEnableSecretsManagerDescription": { - "message": "Conceda aos seguintes membros acesso ao Gerenciador de Segredos. A função concedida no Gerenciador de Senhas será aplicada ao Gerenciador de Segredos.", + "message": "Conceda aos seguintes membros acesso ao Gerenciador de Segredos. O cargo concedido no Gerenciador de Senhas será aplicado ao Gerenciador de Segredos.", "description": "This description is shown to an admin when they are attempting to add more users to Secrets Manager." }, "activateSecretsManager": { @@ -9299,10 +9299,10 @@ "description": "A 'fingerprint phrase' is a unique word phrase (similar to a passphrase) that a user can use to authenticate their organization's public key with another user, for the purposes of sharing." }, "deviceApprovals": { - "message": "Aprovações do dispositivo" + "message": "Aprovações de dispositivo" }, "deviceApprovalsDesc": { - "message": "Aprovar as solicitações de login abaixo para permitir que o membro solicitante termine o login. Solicitações não aprovadas expiram após 1 semana. Verifique as informações do membro antes de aprovar." + "message": "Aprove as solicitações de acesso abaixo para permitir que o membro solicitante se conecte. Solicitações não aprovadas expiram após 1 semana. Verifique as informações do membro antes de aprovar." }, "deviceInfo": { "message": "Informações do dispositivo" @@ -9314,7 +9314,7 @@ "message": "Negar todas as solicitações" }, "denyRequest": { - "message": "Negar pedido" + "message": "Negar solicitação" }, "approveRequest": { "message": "Aprovar solicitação" @@ -9332,25 +9332,25 @@ "message": "Tem certeza de que deseja remover este dispositivo?" }, "noDeviceRequests": { - "message": "Nenhum pedido de dispositivo" + "message": "Nenhuma solicitação de dispositivo" }, "noDeviceRequestsDesc": { - "message": "Os pedidos de aprovação de dispositivo de membro aparecerão aqui" + "message": "As solicitações de aprovação de dispositivo dos membros aparecerão aqui" }, "loginRequestDenied": { - "message": "Solicitação de login negada" + "message": "Solicitação de acesso negada" }, "allLoginRequestsDenied": { - "message": "Todas as solicitações de login negadas" + "message": "Todas as solicitações de autenticação foram negadas" }, "loginRequestApproved": { - "message": "Solicitação de login aprovada" + "message": "Solicitação de acesso aprovada" }, "removeOrgUserNoMasterPasswordTitle": { "message": "A conta não tem uma senha principal" }, "removeOrgUserNoMasterPasswordDesc": { - "message": "Remover $USER$ sem definir uma senha principal pode restringir o acesso deles à conta toda. Tem certeza de que deseja continuar?", + "message": "Remover $USER$ sem configurar uma senha principal para eles pode restringir o acesso à conta toda. Tem certeza de que deseja continuar?", "placeholders": { "user": { "content": "$1", @@ -9359,10 +9359,10 @@ } }, "noMasterPassword": { - "message": "Nenhuma senha principal" + "message": "Sem senha principal" }, "removeMembersWithoutMasterPasswordWarning": { - "message": "Remover membros que não têm senhas principais sem definir uma para eles pode restringir o acesso à sua conta completa." + "message": "Remover membros que não têm senhas principais sem configurar uma para eles pode restringir o acesso à conta toda." }, "approvedAuthRequest": { "message": "Dispositivo aprovado para $ID$.", @@ -9386,10 +9386,10 @@ "message": "Aprovação do dispositivo solicitada." }, "tdeOffboardingPasswordSet": { - "message": "Usuário definiu uma senha principal durante o offboard TDE." + "message": "Usuário configurou uma senha principal durante o offboarding da criptografia de dispositivo confiado." }, "startYour7DayFreeTrialOfBitwardenFor": { - "message": "Comece o seu período de teste gratuito de 7 dias do Bitwarden para $ORG$", + "message": "Comece o seu teste grátis de 7 dias do Bitwarden para $ORG$", "placeholders": { "org": { "content": "$1", @@ -9398,7 +9398,7 @@ } }, "startYour7DayFreeTrialOfBitwardenSecretsManagerFor": { - "message": "Inicie o seu período de teste gratuito de 7 dias do Bitwarden Secrets Manager para $ORG$", + "message": "Comece o seu teste grátis de 7 dias do Bitwarden Gerenciador de Segredos para $ORG$", "placeholders": { "org": { "content": "$1", @@ -9410,10 +9410,10 @@ "message": "Avançar" }, "ssoLoginIsRequired": { - "message": "Login SSO é obrigatório" + "message": "Autenticação com SSO é necessário" }, "selectedRegionFlag": { - "message": "Sinalização de região selecionada" + "message": "Bandeira da região selecionada" }, "accountSuccessfullyCreated": { "message": "Conta criada com sucesso!" @@ -9422,10 +9422,10 @@ "message": "Aprovação do administrador necessária" }, "adminApprovalRequestSentToAdmins": { - "message": "Seu pedido foi enviado para seu administrador." + "message": "Sua solicitação foi enviada para seu administrador." }, "troubleLoggingIn": { - "message": "Problemas em efetuar login?" + "message": "Problemas para acessar?" }, "loginApproved": { "message": "Autenticação aprovada" @@ -9434,16 +9434,16 @@ "message": "E-mail do usuário ausente" }, "activeUserEmailNotFoundLoggingYouOut": { - "message": "Endereço eletrônico de usuário ativo não encontrado. Você será desconectado" + "message": "E-mail do usuário ativo não encontrado. Desconectando você." }, "deviceTrusted": { - "message": "Dispositivo confiável" + "message": "Dispositivo confiado" }, "inviteUsers": { "message": "Convidar usuários" }, "secretsManagerForPlan": { - "message": "Gerenciador de segredos para $PLAN$", + "message": "Gerenciador de Segredos para $PLAN$", "placeholders": { "plan": { "content": "$1", @@ -9455,7 +9455,7 @@ "message": "Para equipes de engenharia e DevOps gerenciar segredos durante todo o ciclo de vida do desenvolvimento de software." }, "free2PersonOrganization": { - "message": "Organizações gratuitas com 2 pessoas" + "message": "Organizações grátis de 2 pessoas" }, "unlimitedSecrets": { "message": "Segredos ilimitados" @@ -9491,10 +9491,10 @@ } }, "subscribeToSecretsManager": { - "message": "Assine o Gerenciador de Segredos" + "message": "Assinar o Gerenciador de Segredos" }, "addSecretsManagerUpgradeDesc": { - "message": "Adicione o Gerenciador de Segredos ao seu plano atualizado para manter o acesso a todos os segredos criados com seu plano anterior." + "message": "Adicione o Gerenciador de Segredos ao seu plano com upgrade para manter o acesso a todos os segredos criados com seu plano anterior." }, "additionalServiceAccounts": { "message": "Contas de serviço adicionais" @@ -9518,94 +9518,94 @@ } }, "collectionManagement": { - "message": "Gerenciamento da coleção" + "message": "Gerenciamento de conjuntos" }, "collectionManagementDescription": { - "message": "Configure the collection behavior for the organization" + "message": "Configure o comportamento dos conjuntos da organização" }, "allowAdminAccessToAllCollectionItemsDescription": { - "message": "Allow owners and admins to manage all collections and items from the Admin Console" + "message": "Permita que proprietários e administradores gerenciem todos os conjuntos e itens pelo painel de administração" }, "restrictCollectionCreationDescription": { - "message": "Restrict collection creation to owners and admins" + "message": "Restrinja a criação de conjuntos a proprietários e administradores" }, "restrictCollectionDeletionDescription": { - "message": "Restrict collection deletion to owners and admins" + "message": "Restrinja o apagamento de conjuntos a proprietários e administradores" }, "restrictItemDeletionDescriptionStart": { - "message": "Restrict item deletion to members with the ", + "message": "Restrinja o apagamento de itens a membros com a permissão de ", "description": "This will be used as part of a larger sentence, broken up to allow styling of the middle portion. Full sentence: 'Restrict item deletion to members with the [Manage collection] permission'" }, "restrictItemDeletionDescriptionEnd": { - "message": " permission", + "message": "‎", "description": "This will be used as part of a larger sentence, broken up to allow styling of the middle portion. Full sentence: 'Restrict item deletion to members with the [Manage collection] permission'" }, "updatedCollectionManagement": { - "message": "Configuração da gestão de coleção atualizada" + "message": "Configuração de gerenciamento de conjuntos atualizada" }, "passwordManagerPlanPrice": { - "message": "Preço do plano do Gerenciador de Senha" + "message": "Preço do plano do Gerenciador de Senhas" }, "secretsManagerPlanPrice": { "message": "Preço do plano do Gerenciador de Segredos" }, "passwordManager": { - "message": "Gerenciador de senha" + "message": "Gerenciador de Senhas" }, "freeOrganization": { - "message": "Organização gratuita" + "message": "Organização Grátis" }, "limitServiceAccounts": { "message": "Limitar contas de serviço (opcional)" }, "limitServiceAccountsDesc": { - "message": "Defina um limite para suas contas de máquina. Quando este limite for atingido, você não poderá criar novas contas de máquina." + "message": "Configure um limite para suas contas de serviço. Quando este limite for atingido, você não poderá criar novas contas de serviço." }, "serviceAccountLimit": { "message": "Limite de contas de serviço (opcional)" }, "maxServiceAccountCost": { - "message": "Custo máximo da conta de serviço potencial" + "message": "Custo potencial máximo de contas de serviço" }, "loggedInExclamation": { "message": "Conectado!" }, "assignCollectionAccess": { - "message": "Atribuir acesso à coleção" + "message": "Atribuir acesso a conjuntos" }, "editedCollections": { - "message": "Coleções editadas" + "message": "Conjuntos editados" }, "baseUrl": { - "message": "URL do Servidor" + "message": "URL do servidor" }, "selfHostBaseUrl": { - "message": "URL do servidor auto-host", + "message": "URL do servidor auto-hospedado", "description": "Label for field requesting a self-hosted integration service URL" }, "alreadyHaveAccount": { "message": "Já tem uma conta?" }, "toggleSideNavigation": { - "message": "Ativar/desativar navegação lateral" + "message": "Habilitar navegação lateral" }, "skipToContent": { - "message": "Pular para o conteúdo" + "message": "Ir para o conteúdo" }, "managePermissionRequired": { - "message": "Pelo menos um membro ou grupo deve ter poder gerenciar a permissão." + "message": "Pelo menos um membro ou grupo deve ter permissões de gerenciamento." }, "typePasskey": { "message": "Chave de acesso" }, "passkeyNotCopied": { - "message": "A senha não será copiada" + "message": "A chave de acesso não será copiada" }, "passkeyNotCopiedAlert": { - "message": "A senha não será copiada para o item clonado. Deseja continuar clonando este item?" + "message": "A chave de acesso não será copiada para o item clonado. Deseja continuar clonando este item?" }, "modifiedCollectionManagement": { - "message": "Definição de gerenciamento da coleção $ID$ modificada.", + "message": "Modificou a configuração de gerenciamento de conjuntos $ID$.", "placeholders": { "id": { "content": "$1", @@ -9614,7 +9614,7 @@ } }, "limitCollectionCreationEnabled": { - "message": "Turned on Restrict collection creation setting $ID$.", + "message": "Ativou a configuração de restrição de criação de conjuntos $ID$.", "placeholders": { "id": { "content": "$1", @@ -9623,7 +9623,7 @@ } }, "limitCollectionCreationDisabled": { - "message": "Turned off Restrict collection creation setting $ID$.", + "message": "Desativou a configuração de restrição de criação de conjuntos $ID$.", "placeholders": { "id": { "content": "$1", @@ -9632,7 +9632,7 @@ } }, "limitCollectionDeletionEnabled": { - "message": "Turned on Restrict collection deletion setting $ID$.", + "message": "Ativou a configuração de restrição de apagamento de conjuntos $ID$.", "placeholders": { "id": { "content": "$1", @@ -9641,7 +9641,7 @@ } }, "limitCollectionDeletionDisabled": { - "message": "Turned off Restrict collection deletion setting $ID$.", + "message": "Desativou a configuração de restrição de apagamento de conjuntos $ID$.", "placeholders": { "id": { "content": "$1", @@ -9650,7 +9650,7 @@ } }, "limitItemDeletionEnabled": { - "message": "Turned on Restrict item deletion setting $ID$.", + "message": "Ativou a configuração de restrição de apagamento de itens $ID$.", "placeholders": { "id": { "content": "$1", @@ -9659,7 +9659,7 @@ } }, "limitItemDeletionDisabled": { - "message": "Turned off Restrict item deletion setting $ID$.", + "message": "Desativou a configuração de restrição de apagamento de itens $ID$.", "placeholders": { "id": { "content": "$1", @@ -9668,7 +9668,7 @@ } }, "allowAdminAccessToAllCollectionItemsEnabled": { - "message": "Turned on Allow owners and admins to manage all collections and items setting $ID$.", + "message": "Ativou a configuração de permitir que todos os proprietários e administradores gerenciem todos os conjuntos e itens $ID$.", "placeholders": { "id": { "content": "$1", @@ -9677,7 +9677,7 @@ } }, "allowAdminAccessToAllCollectionItemsDisabled": { - "message": "Turned off Allow owners and admins to manage all collections and items setting $ID$.", + "message": "Desativou a configuração de permitir que todos os proprietários e administradores gerenciem todos os conjuntos e itens $ID$.", "placeholders": { "id": { "content": "$1", @@ -9690,80 +9690,80 @@ "description": "This is followed a by a hyperlink to the help website." }, "installBrowserExtension": { - "message": "Instalar extensões de navegador" + "message": "Instalar extensão de navegador" }, "installBrowserExtensionDetails": { - "message": "Use a extensão para salvar rapidamente credenciais e formulários de autopreenchimento sem abrir o aplicativo web." + "message": "Use a extensão para salvar credenciais e preencher automaticamente formulários de forma rápida, sem abrir o aplicativo web." }, "projectAccessUpdated": { "message": "Acesso ao projeto atualizado" }, "unexpectedErrorSend": { - "message": "Ocorreu um erro inesperado ao carregar este Envio. Tente novamente mais tarde." + "message": "Ocorreu um erro inesperado ao carregar este Send. Tente novamente mais tarde." }, "seatLimitReached": { - "message": "Limite de lugares foi atingido" + "message": "Limite de vagas foi atingido" }, "contactYourProvider": { - "message": "Entre em contato com seu provedor para comprar lugares adicionais." + "message": "Entre em contato com seu provedor para comprar vagas adicionais." }, "seatLimitReachedContactYourProvider": { - "message": "O limite de lugares foi atingido. Entre em contato com seu provedor para comprar lugares adicionais." + "message": "O limite de vagas foi atingido. Entre em contato com seu provedor para comprar vagas adicionais." }, "collectionAccessRestricted": { - "message": "O acesso à coleção está restrito" + "message": "O acesso ao conjunto está restrito" }, "readOnlyCollectionAccess": { - "message": "Você não tem acesso para gerenciar esta coleção." + "message": "Você não tem acesso para gerenciar este conjunto." }, "grantManageCollectionWarningTitle": { - "message": "Faltando Permissões para Gerenciar Coleção" + "message": "Permissões de gerenciamento de conjunto ausentes" }, "grantManageCollectionWarning": { - "message": "Conceda permissões de Gerenciamento de Coleções para permitir o gerenciamento completo da coleção, incluindo a exclusão da coleção." + "message": "Conceda permissões de gerenciamento de conjuntos para permitir o gerenciamento completo do conjunto, incluindo o apagamento do conjunto." }, "grantCollectionAccess": { - "message": "Conceder acesso de grupos ou membros a esta coleção." + "message": "Conceda o acesso de grupos ou membros a este conjunto." }, "grantCollectionAccessMembersOnly": { - "message": "Conceder acesso a essa coleção." + "message": "Conceda acesso de membros a este conjunto." }, "adminCollectionAccess": { - "message": "Os administradores podem acessar e gerenciar coleções." + "message": "Os administradores podem acessar e gerenciar conjuntos." }, "serviceAccountAccessUpdated": { - "message": "Acesso à conta de serviço atualizado" + "message": "Acesso da conta de serviço atualizado" }, "commonImportFormats": { "message": "Formatos comuns", "description": "Label indicating the most common import formats" }, "uriMatchDefaultStrategyHint": { - "message": "URI match detection is how Bitwarden identifies autofill suggestions.", + "message": "Detecção de correspondência de URI é como o Bitwarden identifica sugestões de preenchimento automático.", "description": "Explains to the user that URI match detection determines how Bitwarden suggests autofill options, and clarifies that this default strategy applies when no specific match detection is set for a login item." }, "regExAdvancedOptionWarning": { - "message": "\"Regular expression\" is an advanced option with increased risk of exposing credentials.", + "message": "\"Expressão regular\" é uma opção avançada com maior risco de exposição das credenciais.", "description": "Content for dialog which warns a user when selecting 'regular expression' matching strategy as a cipher match strategy" }, "startsWithAdvancedOptionWarning": { - "message": "\"Starts with\" is an advanced option with increased risk of exposing credentials.", + "message": "\"Começa com\" é uma opção avançada com maior risco de exposição de credenciais.", "description": "Content for dialog which warns a user when selecting 'starts with' matching strategy as a cipher match strategy" }, "uriMatchWarningDialogLink": { - "message": "More about match detection", + "message": "Mais sobre a detecção de correspondência", "description": "Link to match detection docs on warning dialog for advance match strategy" }, "uriAdvancedOption": { - "message": "Advanced options", + "message": "Opções avançadas", "description": "Advanced option placeholder for uri option component" }, "warningCapitalized": { - "message": "Warning", + "message": "Atenção", "description": "Warning (should maintain locale-relevant capitalization)" }, "maintainYourSubscription": { - "message": "Para manter sua assinatura para $ORG$, ", + "message": "Para manter sua assinatura de $ORG$, ", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'To maintain your subscription for $ORG$, add a payment method.'", "placeholders": { "org": { @@ -9777,13 +9777,13 @@ "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'To maintain your subscription for $ORG$, add a payment method'" }, "organizationInformation": { - "message": "Informação da Organização" + "message": "Informações da organização" }, "confirmationDetails": { "message": "Detalhes da confirmação" }, "smFreeTrialThankYou": { - "message": "Obrigado por se inscrever no Bitwarden Secrets Manager!" + "message": "Obrigado por se inscrever no Bitwarden Gerenciador de Segredos!" }, "smFreeTrialConfirmationEmail": { "message": "Enviamos um e-mail de confirmação para seu e-mail em " @@ -9805,7 +9805,7 @@ "description": "An option for the offboarding survey shown when a user cancels their subscription." }, "movingToAnotherTool": { - "message": "Trocando de ferramenta", + "message": "Migrando para outra ferramenta", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, "tooDifficultToUse": { @@ -9813,21 +9813,29 @@ "description": "An option for the offboarding survey shown when a user cancels their subscription." }, "notUsingEnough": { - "message": "Não está usando o suficiente", + "message": "Falta de uso", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, "tooExpensive": { "message": "Muito caro", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Migrando para o plano grátis", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Migrando para uma organização grátis", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Grátis por 1 ano" }, "newWebApp": { - "message": "Bem-vindo ao novo e melhorado aplicativo da web. Saiba mais sobre o que mudou." + "message": "Boas-vindas ao novo e melhorado aplicativo web. Saiba mais sobre o que mudou." }, "releaseBlog": { - "message": "Ler o blog do lançamento" + "message": "Ler o post do lançamento no blog" }, "adminConsole": { "message": "Painel de administração" @@ -9842,37 +9850,37 @@ "message": "Você não pode se adicionar aos grupos." }, "cannotAddYourselfToCollections": { - "message": "Você não pode se adicionar às coleções." + "message": "Você não pode se adicionar aos conjuntos." }, "assign": { "message": "Atribuir" }, "assignTasks": { - "message": "Assign tasks" + "message": "Atribuir tarefas" }, "assignSecurityTasksToMembers": { - "message": "Send notifications to change passwords" + "message": "Envie notificações para alteração de senhas" }, "assignToCollections": { - "message": "Atribuir à coleções" + "message": "Atribuir a conjuntos" }, "assignToTheseCollections": { - "message": "Atribuir a estas coleções" + "message": "Atribuir a estes conjuntos" }, "bulkCollectionAssignmentDialogDescriptionSingular": { - "message": "Apenas membros da organização com acesso a essas coleções poderão ver o item." + "message": "Apenas membros da organização com acesso a estes conjuntos poderão ver o item." }, "bulkCollectionAssignmentDialogDescriptionPlural": { - "message": "Apenas membros da organização com acesso à essas coleções poderão ver os itens." + "message": "Apenas membros da organização com acesso a estes conjuntos poderão ver os itens." }, "selectCollectionsToAssign": { - "message": "Selecione as coleções para atribuir" + "message": "Selecione conjuntos a atribuir" }, "noCollectionsAssigned": { - "message": "Nenhuma coleção foi atribuída" + "message": "Nenhum conjunto foi atribuído" }, "successfullyAssignedCollections": { - "message": "Coleções atribuídas com sucesso" + "message": "Conjuntos atribuídos com sucesso" }, "bulkCollectionAssignmentWarning": { "message": "Você selecionou $TOTAL_COUNT$ itens. Você não pode atualizar $READONLY_COUNT$ destes itens porque você não tem permissão para edição.", @@ -9897,44 +9905,44 @@ "message": "Itens" }, "assignedSeats": { - "message": "Lugares Atribuídos" + "message": "Vagas atribuídas" }, "assigned": { - "message": "Atribuído" + "message": "Atribuídas" }, "used": { - "message": "Utilizado" + "message": "Usadas" }, "remaining": { - "message": "Restante" + "message": "Restantes" }, "unlinkOrganization": { "message": "Desvincular organização" }, "manageSeats": { - "message": "GERENCIAR LUGARES" + "message": "GERENCIAR VAGAS" }, "manageSeatsDescription": { - "message": "Os ajustes nos lugares serão refletidos no próximo ciclo de faturamento." + "message": "Os ajustes nas vagas serão refletidos no próximo ciclo de faturamento." }, "unassignedSeatsDescription": { - "message": "Assinatura de assentos desvinculada" + "message": "Vagas não atribuídas" }, "purchaseSeatDescription": { - "message": "Assentos adicionais comprados" + "message": "Vagas adicionais compradas" }, "assignedSeatCannotUpdate": { - "message": "Os assentos atribuídos não podem ser atualizados. Por favor, entre em contato com o proprietário da sua organização para obter assistência." + "message": "Os assentos atribuídos não podem ser atualizados. Entre em contato com o proprietário da sua organização para obter assistência." }, "subscriptionUpdateFailed": { "message": "Atualização da assinatura falhou" }, "trial": { - "message": "Avaliação", + "message": "Teste grátis", "description": "A subscription status label." }, "pastDue": { - "message": "Atrasado", + "message": "Atrasada", "description": "A subscription status label" }, "subscriptionExpired": { @@ -9942,7 +9950,7 @@ "description": "The date header used when a subscription is past due." }, "pastDueWarningForChargeAutomatically": { - "message": "Você tem um período de carência de $DAYS$ dias a contar da data de expiração para manter sua assinatura. Por favor, resolva as faturas vencidas até $SUSPENSION_DATE$.", + "message": "Você tem um período de tolerância de $DAYS$ dias a contar da data de expiração para manter sua assinatura. Resolva as faturas atrasadas até $SUSPENSION_DATE$.", "placeholders": { "days": { "content": "$1", @@ -9956,7 +9964,7 @@ "description": "A warning shown to the user when their subscription is past due and they are charged automatically." }, "pastDueWarningForSendInvoice": { - "message": "Você tem um período de licença de $DAYS$, contados a partir da data de vencimento da sua primeira fatura em aberto para manter a sua assinatura. Por favor, resolva as faturas vencidas até $SUSPENSION_DATE$.", + "message": "Você tem um período de tolerância de $DAYS$ dias para manter a sua assinatura, contados a partir da data de vencimento da sua primeira fatura em aberto. Resolva as faturas atrasadas até $SUSPENSION_DATE$.", "placeholders": { "days": { "content": "$1", @@ -9974,7 +9982,7 @@ "description": "The header of a warning box shown to a user whose subscription is unpaid." }, "toReactivateYourSubscription": { - "message": "Para reativar sua assinatura, por favor resolva as faturas vencidas.", + "message": "Para reativar sua assinatura, resolva as faturas atrasadas.", "description": "The body of a warning box shown to a user whose subscription is unpaid." }, "cancellationDate": { @@ -9997,19 +10005,19 @@ "description": "Title for creating a new machine account." }, "machineAccountsNoItemsMessage": { - "message": "Crie uma nova conta de máquina para começar a automatizar o acesso secreto.", + "message": "Crie uma conta de máquina para começar a automatizar o acesso aos segredos.", "description": "Message to encourage the user to start creating machine accounts." }, "machineAccountsNoItemsTitle": { - "message": "Ainda não há nada a ser exibido", + "message": "Nada para mostrar ainda", "description": "Title to indicate that there are no machine accounts to display." }, "deleteMachineAccounts": { - "message": "Excluir contas de máquina", + "message": "Apagar contas de serviço", "description": "Title for the action to delete one or multiple machine accounts." }, "deleteMachineAccount": { - "message": "Excluir conta de máquina", + "message": "Apagar conta de serviço", "description": "Title for the action to delete a single machine account." }, "viewMachineAccount": { @@ -10017,7 +10025,7 @@ "description": "Action to view the details of a machine account." }, "deleteMachineAccountDialogMessage": { - "message": "A exclusão da conta de máquina $MACHINE_ACCOUNT$ é permanente e irreversível.", + "message": "Apagar a conta de máquina $MACHINE_ACCOUNT$ é permanente e irreversível.", "placeholders": { "machine_account": { "content": "$1", @@ -10026,10 +10034,10 @@ } }, "deleteMachineAccountsDialogMessage": { - "message": "Excluir contas de máquina é permanente e irreversível." + "message": "Apagar contas de máquina é permanente e irreversível." }, "deleteMachineAccountsConfirmMessage": { - "message": "Excluir $COUNT$ contas de máquina", + "message": "Apagar $COUNT$ contas de máquina", "placeholders": { "count": { "content": "$1", @@ -10038,17 +10046,17 @@ } }, "deleteMachineAccountToast": { - "message": "Conta de máquina excluída" + "message": "Conta de máquina apagada" }, "deleteMachineAccountsToast": { - "message": "Contas de máquina excluídas" + "message": "Contas de máquina apagadas" }, "searchMachineAccounts": { - "message": "Pesquisar contas de máquina", + "message": "Buscar contas de máquina", "description": "Placeholder text for searching machine accounts." }, "editMachineAccount": { - "message": "Editar conta da máquina", + "message": "Editar conta de máquina", "description": "Title for editing a machine account." }, "machineAccountName": { @@ -10064,7 +10072,7 @@ "description": "Notifies that a machine account has been updated" }, "projectMachineAccountsDescription": { - "message": "Conceder acesso a contas de máquina a este projeto." + "message": "Conceda acesso do projeto a contas de máquina." }, "projectMachineAccountsSelectHint": { "message": "Digite ou selecione contas de máquina" @@ -10073,13 +10081,13 @@ "message": "Adicione contas de máquina para conceder acesso" }, "machineAccountPeopleDescription": { - "message": "Conceder acesso de grupos ou pessoas a esta conta de máquina." + "message": "Conceda acesso a esta conta de máquina a grupos ou pessoas." }, "machineAccountProjectsDescription": { - "message": "Atribuir projetos a esta conta de máquina. " + "message": "Atribua projetos a esta conta de máquina. " }, "createMachineAccount": { - "message": "Criar uma conta de máquina" + "message": "Crie uma conta de serviço" }, "maPeopleWarningMessage": { "message": "Remover pessoas de uma conta de máquina não remove os tokens de acesso que elas criaram. Por melhores práticas de segurança, é recomendado revogar os tokens de acesso criados por pessoas que foram removidas de uma conta de máquina." @@ -10091,7 +10099,7 @@ "message": "Esta ação irá remover seu acesso à conta de máquina." }, "machineAccountsIncluded": { - "message": "$COUNT$ contas de serviço incluídas", + "message": "$COUNT$ contas de máquina incluídas", "placeholders": { "count": { "content": "$1", @@ -10100,7 +10108,7 @@ } }, "additionalMachineAccountCost": { - "message": "$COST$ mensal para contas de máquina adicionais", + "message": "$COST$ mensais por contas de máquina adicionais", "placeholders": { "cost": { "content": "$1", @@ -10121,7 +10129,7 @@ } }, "addAdditionalMachineAccounts": { - "message": "Você pode adicionar contas de máquina extras por $COST$ mensais.", + "message": "Você pode adicionar contas de máquina adicionais por $COST$ mensais.", "placeholders": { "cost": { "content": "$1", @@ -10133,28 +10141,28 @@ "message": "Limitar contas de máquina (opcional)" }, "limitMachineAccountsDesc": { - "message": "Defina um limite para suas contas de máquina. Quando este limite for atingido, você não poderá criar novas contas de máquina." + "message": "Configure um limite para suas contas de máquina. Quando este limite for atingido, você não poderá criar contas de máquina." }, "machineAccountLimit": { - "message": "Limite de conta de máquina (opcional)" + "message": "Limite de contas de máquina (opcional)" }, "maxMachineAccountCost": { - "message": "Custo máximo de conta de máquina" + "message": "Custo potencial máximo de contas de máquina" }, "machineAccountAccessUpdated": { - "message": "Acesso a conta de máquina atualizado" + "message": "Acesso da conta de máquina atualizado" }, "restrictedGroupAccessDesc": { - "message": "Você não pode adicionar você mesmo a um grupo." + "message": "Você não pode se adicionar a um grupo." }, "deleteProvider": { - "message": "Excluir Provedor" + "message": "Apagar provedor" }, "deleteProviderConfirmation": { - "message": "A exclusão de um provedor é permanente e irreversível. Digite sua senha principal para confirmar a exclusão do provedor e de todos os dados associados." + "message": "Apagar um provedor é permanente e irreversível. Digite sua senha principal para confirmar o apagamento do provedor e de todos os dados associados." }, "deleteProviderName": { - "message": "Não é possível excluir $ID$", + "message": "Não é possível apagar $ID$", "placeholders": { "id": { "content": "$1", @@ -10163,7 +10171,7 @@ } }, "deleteProviderWarningDescription": { - "message": "Você deve desvincular todos os clientes antes de excluir $ID$.", + "message": "Você deve desvincular todos os clientes antes de apagar $ID$.", "placeholders": { "id": { "content": "$1", @@ -10172,19 +10180,19 @@ } }, "providerDeleted": { - "message": "Provedor excluído" + "message": "Provedor apagado" }, "providerDeletedDesc": { - "message": "O provedor e todos os dados associados foram excluídos." + "message": "O provedor e todos os dados associados foram apagados." }, "deleteProviderRecoverConfirmDesc": { - "message": "Você pediu para excluir este Provedor. Clique no botão abaixo para confirmar." + "message": "Você pediu para apagar este provedor. Clique no botão abaixo para confirmar." }, "deleteProviderWarning": { - "message": "A exclusão do seu provedor é permanente. Não pode ser desfeita." + "message": "O apagamento do seu provedor é permanente. Não pode ser desfeito." }, "errorAssigningTargetCollection": { - "message": "Erro ao atribuir coleção de destino." + "message": "Erro ao atribuir conjunto de destino." }, "errorAssigningTargetFolder": { "message": "Erro ao atribuir pasta de destino." @@ -10197,20 +10205,20 @@ "message": "Integrações" }, "integrationsDesc": { - "message": "Sincronize automaticamente segredos do Bitwarden Secrets Manager para um serviço de terceiros." + "message": "Sincronize segredos do Bitwarden Gerenciador de Segredos automaticamente para um serviço de terceiros." }, "sdks": { "message": "SDKs" }, "sdksDesc": { - "message": "Utilize o Bitwarden Secrets Manager SDK nas seguintes linguagens de programação para construir seus próprios aplicativos." + "message": "Utilize o SDK do Bitwarden Gerenciador de Segredos nas seguintes linguagens de programação para construir seus próprios aplicativos." }, "ssoDescStart": { - "message": "Configurar", + "message": "Configure a", "description": "This represents the beginning of a sentence, broken up to include links. The full sentence will be 'Configure single sign-on for Bitwarden using the implementation guide for your Identity Provider." }, "ssoDescEnd": { - "message": "Para o Bitwarden usar o guia de implementação Para o seu provedor de identidade.", + "message": "para o BItwarden usando o guia de implementação do seu provedor de identidade.", "description": "This represents the end of a sentence, broken up to include links. The full sentence will be 'Configure single sign-on for Bitwarden using the implementation guide for your Identity Provider." }, "userProvisioning": { @@ -10220,63 +10228,63 @@ "message": "SCIM" }, "scimIntegrationDescStart": { - "message": "Configurar", + "message": "Configure o", "description": "This represents the beginning of a sentence, broken up to include links. The full sentence will be 'Configure SCIM (System for Cross-domain Identity Management) to automatically provision users and groups to Bitwarden using the implementation guide for your Identity Provider" }, "scimIntegrationDescEnd": { - "message": "(Sistema de Gerenciamento de Identidade de Domínio) para fornecer automaticamente usuários e grupos ao Bitwarden usando o guia de implementação do seu Provedor de Identidade.", + "message": "(Sistema de Gerenciamento de Identidade Entre Domínios) para provisionar automaticamente usuários e grupos ao Bitwarden usando o guia de implementação do seu provedor de identidade.", "description": "This represents the end of a sentence, broken up to include links. The full sentence will be 'Configure SCIM (System for Cross-domain Identity Management) to automatically provision users and groups to Bitwarden using the implementation guide for your Identity Provider" }, "bwdc": { - "message": "Conector de Diretório Bitwarden" + "message": "Bitwarden Conector de Diretório" }, "bwdcDesc": { - "message": "Configure o conector de diretório do Bitwarden para fornecer automaticamente usuários e grupos usando o guia de implementação para o seu provedor de identidade." + "message": "Configure o Bitwarden Conector de Diretório para provisionar automaticamente usuários e grupos usando o guia de implementação para o seu provedor de identidade." }, "eventManagement": { - "message": "Gerenciador de eventos" + "message": "Gerenciamento de eventos" }, "eventManagementDesc": { - "message": "Integre os logs de eventos do Bitwarden ao seu sistema SIEM (informações do sistema e gerenciamento de eventos) utilizando o guia de implementação da sua plataforma." + "message": "Integre os registros de eventos do Bitwarden ao seu sistema SIEM (gerenciamento de eventos e informações do sistema) utilizando o guia de implementação da sua plataforma." }, "deviceManagement": { - "message": "Gerenciamento do dispositivo" + "message": "Gerenciamento de dispositivos" }, "deviceManagementDesc": { "message": "Configure o gerenciamento de dispositivos para o Bitwarden usando o guia de implementação da sua plataforma." }, "crowdstrikeEventIntegrationDesc": { - "message": "Send event data to your Logscale instance" + "message": "Envie dados de eventos a sua instância do Logscale" }, "datadogEventIntegrationDesc": { - "message": "Send vault event data to your Datadog instance" + "message": "Envie dados de eventos do cofre a sua instância do Datadog" }, "failedToSaveIntegration": { - "message": "Failed to save integration. Please try again later." + "message": "Falha ao salvar a integração. Tente novamente mais tarde." }, "mustBeOrgOwnerToPerformAction": { - "message": "You must be the organization owner to perform this action." + "message": "Você precisa ser o proprietário da organização para executar esta ação." }, "failedToDeleteIntegration": { - "message": "Failed to delete integration. Please try again later." + "message": "Falha ao apagar a integração. Tente novamente mais tarde." }, "deviceIdMissing": { "message": "ID do dispositivo está faltando" }, "deviceTypeMissing": { - "message": "O tipo de dispositivo está faltando" + "message": "O tipo do dispositivo está faltando" }, "deviceCreationDateMissing": { - "message": "Data de criação do dispositivo ausente" + "message": "A data de criação do dispositivo está faltando" }, "desktopRequired": { - "message": "Desktop necessário" + "message": "Computador necessário" }, "reopenLinkOnDesktop": { - "message": "Reabra este link a partir do seu e-mail em um desktop." + "message": "Reabra este link a partir do seu e-mail em um computador." }, "connectIntegrationButtonDesc": { - "message": "Connect $INTEGRATION$", + "message": "Conectar $INTEGRATION$", "placeholders": { "integration": { "content": "$1", @@ -10285,7 +10293,7 @@ } }, "updateIntegrationButtonDesc": { - "message": "Update $INTEGRATION$", + "message": "Atualizar $INTEGRATION$", "placeholders": { "integration": { "content": "$1", @@ -10294,7 +10302,7 @@ } }, "integrationCardTooltip": { - "message": "Inicie o guia de implementação $INTEGRATION$.", + "message": "Abra o guia de implementação do $INTEGRATION$.", "placeholders": { "integration": { "content": "$1", @@ -10303,7 +10311,7 @@ } }, "smIntegrationTooltip": { - "message": "Configure $INTEGRATION$.", + "message": "Configure o $INTEGRATION$.", "placeholders": { "integration": { "content": "$1", @@ -10312,7 +10320,7 @@ } }, "smSdkTooltip": { - "message": "Visualizar repositório Rust", + "message": "Ver repositório do $SDK$", "placeholders": { "sdk": { "content": "$1", @@ -10321,7 +10329,7 @@ } }, "integrationCardAriaLabel": { - "message": "Abrir guia de implementação $INTEGRATION$ em uma nova aba.", + "message": "abra o guia de implementação do $INTEGRATION$ em uma nova aba.", "placeholders": { "integration": { "content": "$1", @@ -10330,7 +10338,7 @@ } }, "smSdkAriaLabel": { - "message": "Veja o repositório $SDK$ em uma nova guia.", + "message": "veja o repositório do $SDK$ em uma nova guia.", "placeholders": { "sdk": { "content": "$1", @@ -10339,7 +10347,7 @@ } }, "smIntegrationCardAriaLabel": { - "message": "Configurar guia de implementação $INTEGRATION$ em uma nova aba.", + "message": "configure o guia de implementação do $INTEGRATION$ em uma nova aba.", "placeholders": { "integration": { "content": "$1", @@ -10348,25 +10356,25 @@ } }, "createNewClientToManageAsProvider": { - "message": "Crie uma nova organização de cliente para gerenciar como um Provedor. Posições adicionais serão refletidas no próximo ciclo de faturamento." + "message": "Crie uma nova organização de cliente para gerenciar como um provedor. Vagas adicionais serão refletidas no próximo ciclo de faturamento." }, "url": { "message": "URL" }, "bearerToken": { - "message": "Bearer Token" + "message": "Token de portador" }, "repositoryNameHint": { - "message": "Name of the repository to ingest into" + "message": "Nome do repositório que irá ser ingerido" }, "index": { - "message": "Index" + "message": "Índice" }, "selectAPlan": { "message": "Selecione um plano" }, "thirtyFivePercentDiscount": { - "message": "35% de Desconto" + "message": "Desconto de 35%" }, "monthPerMember": { "message": "mês por membro" @@ -10375,10 +10383,10 @@ "message": "mês por membro cobrado anualmente" }, "seats": { - "message": "Lugares" + "message": "Vagas" }, "addOrganization": { - "message": "Adicionar Organização" + "message": "Adicionar organização" }, "createdNewClient": { "message": "Novo cliente criado com sucesso" @@ -10387,49 +10395,49 @@ "message": "Sem acesso" }, "collectionAdminConsoleManaged": { - "message": "Esta coleção só é acessível a partir do console de administração" + "message": "Este conjunto só é acessível a partir do painel de administração" }, "organizationOptionsMenu": { - "message": "Alternar Menu da Organização" + "message": "Habilitar menu da organização" }, "vaultItemSelect": { "message": "Selecionar item do cofre" }, "collectionItemSelect": { - "message": "Selecionar item da coleção" + "message": "Selecionar item do conjunto" }, "manageBillingFromProviderPortalMessage": { - "message": "Gerenciar faturamento a partir do Portal do Provedor" + "message": "Gerenciar faturamento pelo Portal do Provedor" }, "continueSettingUp": { - "message": "Continue setting up Bitwarden" + "message": "Continuar configurando o Bitwarden" }, "continueSettingUpFreeTrial": { - "message": "Continue a configurar a sua avaliação gratuita do Bitwarden" + "message": "Continuar configurando o seu teste grátis do Bitwarden" }, "continueSettingUpPasswordManager": { - "message": "Continue setting up Bitwarden Password Manager" + "message": "Continuar configurando o Bitwarden Gerenciador de Senhas" }, "continueSettingUpFreeTrialPasswordManager": { - "message": "Continue a configurar sua avaliação gratuita do Gerenciador de Senhas do Bitwarden" + "message": "Continuar configurando o teste grátis do Bitwarden Gerenciador de Senhas" }, "continueSettingUpSecretsManager": { - "message": "Continue setting up Bitwarden Secrets Manager" + "message": "Continuar configurando o Bitwarden Gerenciador de Segredos" }, "continueSettingUpFreeTrialSecretsManager": { - "message": "Continue configurando seu teste gratuito do Gerenciador de Segredos do Bitwarden" + "message": "Continuar configurando seu teste grátis do Bitwarden Gerenciador de Segredos" }, "enterTeamsOrgInfo": { - "message": "Insira as informações da organização de suas equipes" + "message": "Digite as informações da organização do Equipes" }, "enterFamiliesOrgInfo": { - "message": "Digite as informações da organização das suas famílias" + "message": "Digite as informações da organização do Famílias" }, "enterEnterpriseOrgInfo": { - "message": "Insira suas informações da organização empresarial" + "message": "Digite as informações da sua organização do Empresarial" }, "viewItemsIn": { - "message": "Visualizar itens em $NAME$", + "message": "Ver itens em $NAME$", "description": "Button to view the contents of a folder or collection", "placeholders": { "name": { @@ -10466,10 +10474,10 @@ "message": "Ver informações" }, "viewAccess": { - "message": "Acesso à visualização" + "message": "Ver acesso" }, "noCollectionsSelected": { - "message": "Você não selecionou nenhuma coleção." + "message": "Você não selecionou nenhum conjunto." }, "updateName": { "message": "Atualizar nome" @@ -10481,13 +10489,13 @@ "message": "Provedor de Serviços Gerenciados" }, "managedServiceProvider": { - "message": "Provedor de serviço gerenciado" + "message": "Provedor de serviços gerenciados" }, "multiOrganizationEnterprise": { - "message": "multi-empresa organizacional" + "message": "Empresa multi-organizacional" }, "orgSeats": { - "message": "Lugares da Organização" + "message": "Vagas da organização" }, "providerDiscount": { "message": "Desconto de $AMOUNT$%", @@ -10505,16 +10513,16 @@ "message": "Proteja sua família ou empresa" }, "upgradeOrganizationCloseSecurityGaps": { - "message": "Fechar lacunas de segurança com relatórios de monitoramento" + "message": "Resolva problemas de segurança com relatórios de monitoramento" }, "upgradeOrganizationCloseSecurityGapsDesc": { - "message": "Fique à frente das vulnerabilidades de segurança atualizando para um plano pago para um monitoramento melhorado." + "message": "Fique à frente das vulnerabilidades de segurança fazendo upgrade para um plano pago para um monitoramento aprimorado." }, "approveAllRequests": { "message": "Aprovar todas as solicitações" }, "allLoginRequestsApproved": { - "message": "Todas as solicitações de login aprovadas" + "message": "Todas as solicitações de acesso aprovadas" }, "payPal": { "message": "PayPal" @@ -10526,13 +10534,13 @@ "message": "Informações fiscais atualizadas" }, "billingInvalidTaxIdError": { - "message": "CPF/CNPJ inválido, se você acredita que isto é um erro, contate o suporte." + "message": "ID de imposto (tax ID) inválido, se você acredita que isto é um erro, entre em contato com o suporte." }, "billingTaxIdTypeInferenceError": { - "message": "Não foi possível validar seu CPF/CNPJ, se você acredita que isto é um erro, contate o suporte." + "message": "Não foi possível validar seu ID de imposto (tax ID), se você acredita que isto é um erro, entre em contato com o suporte." }, "billingPreviewInvalidTaxIdError": { - "message": "CPF/CNPJ inválido, se você acredita que isto é um erro, contate o suporte." + "message": "ID de imposto (tax ID) inválido, se você acredita que isto é um erro, entre em contato com o suporte." }, "billingPreviewInvoiceError": { "message": "Ocorreu um erro ao pré-visualizar a fatura. Tente novamente mais tarde." @@ -10554,10 +10562,10 @@ "description": "A hint that shows up on the Provider setup page to inform the admin the billing email will receive the provider's invoices." }, "upgradeOrganizationEnterprise": { - "message": "Identifique os riscos de segurança ao verificar o acesso de membros" + "message": "Identifique riscos de segurança verificando o acesso dos membros" }, "onlyAvailableForEnterpriseOrganization": { - "message": "Visualize rapidamente o acesso de membros em toda a organização atualizando para um plano empresarial." + "message": "Veja o acesso de membros em toda a organização de forma rápida fazendo upgrade para um plano Empresarial." }, "date": { "message": "Data" @@ -10566,55 +10574,55 @@ "message": "Exportar relatório do cliente" }, "memberAccessReport": { - "message": "Acesso de membros" + "message": "Acesso dos membros" }, "memberAccessReportDesc": { - "message": "Garanta que membros tenham acesso às credenciais certas e que suas contas estejam seguras. Utilize este relatório para obter um CSV do acesso de membros e configurações de conta." + "message": "Garanta que membros tenham acesso às credenciais certas e que suas contas estejam seguras. Utilize este relatório para obter um CSV do acesso e configurações das contas dos membros." }, "memberAccessReportPageDesc": { - "message": "Avalie o acesso de membros da organização entre grupos, coleções e itens de coleções. O exporte CSV fornece informações detalhadas por membro, incluindo informações sobre permissões de coleção e configurações de conta." + "message": "Fiscalize o acesso dos membros da organização entre grupos, conjuntos e os itens dos conjuntos. A exportação em CSV fornece informações detalhadas por membro, incluindo informações sobre permissões de conjuntos e configurações de conta." }, "memberAccessReportNoCollection": { - "message": "(Sem coleção)" + "message": "(Sem conjunto)" }, "memberAccessReportNoCollectionPermission": { - "message": "(Nenhuma permissão de coleção)" + "message": "(Sem permissão de conjunto)" }, "memberAccessReportNoGroup": { - "message": "(Sem Grupo)" + "message": "(Sem grupo)" }, "memberAccessReportTwoFactorEnabledTrue": { - "message": "Ligado" + "message": "Ativada" }, "memberAccessReportTwoFactorEnabledFalse": { - "message": "Desligado" + "message": "Desativada" }, "memberAccessReportAuthenticationEnabledTrue": { - "message": "Ligado" + "message": "Ativada" }, "memberAccessReportAuthenticationEnabledFalse": { - "message": "Desligado" + "message": "Desativada" }, "kdfIterationRecommends": { "message": "Recomendamos 600.000 ou mais" }, "providerReinstate": { - "message": " Contate o Atendimento ao Cliente para restabelecer sua assinatura." + "message": " Contate o suporte ao cliente para restabelecer sua assinatura." }, "secretPeopleDescription": { - "message": "Conceder acesso a este segredo a grupos ou pessoas. As permissões definidas para pessoas irão substituir as permissões definidas por grupos." + "message": "Conceda acesso a este segredo a grupos ou pessoas. As permissões configuradas para pessoas substituirão as permissões configuradas por grupos." }, "secretPeopleEmptyMessage": { "message": "Adicione pessoas ou grupos para compartilhar o acesso a este segredo" }, "secretMachineAccountsDescription": { - "message": "Conceda contas de máquinas acesso a este segredo." + "message": "Conceda contas de máquina acesso a este segredo." }, "secretMachineAccountsEmptyMessage": { "message": "Adicione contas de máquina para conceder acesso a este segredo" }, "smAccessRemovalWarningSecretTitle": { - "message": "Remover acesso a este segredo" + "message": "Remova acesso a este segredo" }, "smAccessRemovalSecretMessage": { "message": "Esta ação removerá seu acesso a este segredo." @@ -10633,18 +10641,18 @@ "description": "A message showing how many unassigned seats are available for a provider." }, "contactYourProviderForAdditionalSeats": { - "message": "Entre em contato com o administrador do seu provedor para comprar lugares adicionais." + "message": "Entre em contato com o administrador do seu provedor para comprar vagas adicionais." }, "open": { - "message": "Abrir", + "message": "Em aberto", "description": "The status of an invoice." }, "uncollectible": { - "message": "Incolecionável", + "message": "Incobrável", "description": "The status of an invoice." }, "clientDetails": { - "message": "Detalhes de cliente" + "message": "Detalhes do cliente" }, "downloadCSV": { "message": "Baixar CSV" @@ -10656,15 +10664,15 @@ "message": "Os ajustes à sua assinatura resultarão em cobranças rateadas em um ciclo de faturamento mensal. " }, "billingHistoryDescription": { - "message": "Baixe um CSV para obter detalhes do cliente para cada data de faturamento. As taxas pagas não estão incluídas no CSV e podem variar da factura vinculada. Para obter dados de faturamento mais precisos, consulte suas faturas mensais.", + "message": "Baixe um CSV para obter detalhes do cliente para cada data de faturamento. As taxas rateadas não estão incluídas no CSV e podem variar da fatura vinculada. Para obter dados de faturamento mais precisos, consulte suas faturas mensais.", "description": "A paragraph on the Billing History page of the Provider Portal letting users know they can download a CSV report for their invoices that does not include prorations." }, "noInvoicesToList": { - "message": "Não há itens para listar", + "message": "Não há faturas para listar", "description": "A paragraph on the Billing History page of the Provider Portal letting users know they can download a CSV report for their invoices that does not include prorations." }, "providerClientVaultPrivacyNotification": { - "message": "Aviso: No final deste mês, a privacidade do cofre cliente será melhorada e os membros do provedor não terão mais acesso direto aos itens do cofre do cliente. Para dúvidas,", + "message": "Atenção: No final deste mês, a privacidade do cofre dos clientes será melhorada e os membros do provedor não terão mais acesso direto aos itens do cofre do cliente. Para dúvidas,", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'Notice: Later this month, client vault privacy will be improved and provider members will no longer have direct access to client vault items. For questions, please contact Bitwarden support'." }, "contactBitwardenSupport": { @@ -10672,10 +10680,10 @@ "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'Notice: Later this month, client vault privacy will be improved and provider members will no longer have direct access to client vault items. For questions, please contact Bitwarden support'. 'Bitwarden' should not be translated" }, "sponsored": { - "message": "Patrocinado" + "message": "Financiado" }, "licenseAndBillingManagementDesc": { - "message": "Após fazer atualizações no servidor da nuvem do Bitwarden, envie o arquivo de licença para aplicar as alterações mais recentes." + "message": "Após fazer atualizações no servidor da nuvem do Bitwarden, envie o arquivo da sua licença para aplicar as alterações mais recentes." }, "addToFolder": { "message": "Adicionar à pasta" @@ -10684,10 +10692,10 @@ "message": "Selecionar pastas" }, "personalItemTransferWarningSingular": { - "message": "1 item será transferido permanentemente para a organização selecionada. Você não irá mais possuir este item." + "message": "1 item será transferido permanentemente para a organização selecionada. Você não irá mais ser o proprietário deste item." }, "personalItemsTransferWarningPlural": { - "message": "Itens $PERSONAL_ITEMS_COUNT$ serão transferidos permanentemente para a organização selecionada. Você não irá mais possuir esses itens.", + "message": "$PERSONAL_ITEMS_COUNT$ itens serão transferidos permanentemente para a organização selecionada. Você não irá mais ser o proprietário desses itens.", "placeholders": { "personal_items_count": { "content": "$1", @@ -10696,7 +10704,7 @@ } }, "personalItemWithOrgTransferWarningSingular": { - "message": "1 item será transferido permanentemente para $ORG$. Você não irá mais possuir este item.", + "message": "1 item será transferido permanentemente para $ORG$. Você não irá mais ser o proprietário deste item.", "placeholders": { "org": { "content": "$1", @@ -10705,7 +10713,7 @@ } }, "personalItemsWithOrgTransferWarningPlural": { - "message": "Os itens $PERSONAL_ITEMS_COUNT$ serão transferidos permanentemente para $ORG$. Você não irá mais possuir esses itens.", + "message": "$PERSONAL_ITEMS_COUNT$ itens serão transferidos permanentemente para $ORG$. Você não irá mais ser o proprietário desses itens.", "placeholders": { "personal_items_count": { "content": "$1", @@ -10718,55 +10726,55 @@ } }, "data": { - "message": "Dado" + "message": "Dados" }, "purchasedSeatsRemoved": { - "message": "assentos comprados removidos" + "message": "vagas compradas removidas" }, "environmentVariables": { - "message": "Variáveis de ambiente" + "message": "Variáveis do ambiente" }, "organizationId": { - "message": "ID da Organização" + "message": "ID da organização" }, "projectIds": { "message": "IDs do projeto" }, "projectId": { - "message": "ID do Projeto" + "message": "ID do projeto" }, "projectsAccessedByMachineAccount": { "message": "Os seguintes projetos podem ser acessados por esta conta de máquina." }, "config": { - "message": "Configuraçao" + "message": "Configuração" }, "learnMoreAboutEmergencyAccess": { - "message": "Saiba mais sobre acesso de emergência" + "message": "Saiba mais sobre o acesso de emergência" }, "learnMoreAboutMatchDetection": { - "message": "Saiba mais sobre a detecção de partidas" + "message": "Saiba mais sobre a detecção de correspondência" }, "learnMoreAboutMasterPasswordReprompt": { - "message": "Saiba mais sobre a redefinição da senha principal" + "message": "Saiba mais sobre a resolicitação da senha principal" }, "learnMoreAboutSearchingYourVault": { - "message": "Saiba mais sobre como pesquisar no seu cofre" + "message": "Saiba mais sobre buscar no seu cofre" }, "learnMoreAboutYourAccountFingerprintPhrase": { - "message": "Saiba mais sobre a sua frase biométrica" + "message": "Saiba mais sobre a frase biométrica da sua conta" }, "impactOfRotatingYourEncryptionKey": { - "message": "Impacto ao girar sua chave de criptografia" + "message": "Consequências de rotacionar sua chave de criptografia" }, "learnMoreAboutEncryptionAlgorithms": { "message": "Saiba mais sobre os algoritmos de criptografia" }, "learnMoreAboutKDFIterations": { - "message": "Aprenda mais sobre iterações KDF" + "message": "Saiba mais sobre as iterações da KDF" }, "learnMoreAboutLocalization": { - "message": "Saiba mais sobre a localização" + "message": "Saiba mais sobre a tradução" }, "learnMoreAboutWebsiteIcons": { "message": "Saiba mais sobre como usar os ícones dos sites" @@ -10775,22 +10783,22 @@ "message": "Saiba mais sobre o acesso aos usuários" }, "learnMoreAboutMemberRoles": { - "message": "Saiba mais sobre os papéis e permissões dos membros" + "message": "Saiba mais sobre os cargos e permissões dos membros" }, "whatIsACvvNumber": { - "message": "O que é um número CVVV?" + "message": "O que é um número de CVV?" }, "learnMoreAboutApi": { "message": "Saiba mais sobre a API do Bitwarden" }, "fileSends": { - "message": "Arquivos enviados" + "message": "Sends de arquivo" }, "textSends": { - "message": "Texto enviado" + "message": "Sends de texto" }, "includesXMembers": { - "message": "para $COUNT$ membro", + "message": "por $COUNT$ membro(s)", "placeholders": { "count": { "content": "$1", @@ -10811,7 +10819,7 @@ "message": "Hospedagem local opcional" }, "upgradeFreeOrganization": { - "message": "Atualize sua organização $NAME$ ", + "message": "Faça upgrade da sua organização do $NAME$ ", "placeholders": { "name": { "content": "$1", @@ -10820,10 +10828,10 @@ } }, "includeSsoAuthenticationMessage": { - "message": "Autenticação SSO" + "message": "Autenticação única" }, "familiesPlanInvLimitReachedManageBilling": { - "message": "Organizações familiares podem ter até membros da $SEATCOUNT$. Faça o upgrade para um plano pago para convidar mais membros.", + "message": "Organizações familiares podem ter até $SEATCOUNT$ membros. Faça upgrade para um plano pago para convidar mais membros.", "placeholders": { "seatcount": { "content": "$1", @@ -10832,7 +10840,7 @@ } }, "familiesPlanInvLimitReachedNoManageBilling": { - "message": "Organizações familiares podem ter até membros $SEATCOUNT$. Entre em contato com o proprietário da sua organização para atualizar.", + "message": "Organizações familiares podem ter até $SEATCOUNT$ membros. Entre em contato com o proprietário da sua organização para fazer upgrade.", "placeholders": { "seatcount": { "content": "$1", @@ -10841,7 +10849,7 @@ } }, "upgradePlans": { - "message": "Atualize o seu plano para convidar membros e experimentar poderosos recursos de segurança." + "message": "Faça upgrade do seu plano para convidar membros e experimentar poderosos recursos de segurança." }, "upgradeDiscount": { "message": "Economize $AMOUNT$%", @@ -10853,25 +10861,25 @@ } }, "enterprisePlanUpgradeMessage": { - "message": "Recursos avançados para organizações maiores" + "message": "Capacidades avançadas para organizações maiores" }, "teamsPlanUpgradeMessage": { - "message": "Proteção residencial para o cultivo das equipes" + "message": "Proteção resiliente para o crescimento das equipes" }, "teamsInviteMessage": { - "message": "Convide membros ilimitados" + "message": "Convide ilimitados membros" }, "accessToCreateGroups": { "message": "Acesso para criar grupos" }, "syncGroupsAndUsersFromDirectory": { - "message": "Sincronizar grupos e usuários de um diretório" + "message": "Sincronize grupos e usuários de um diretório" }, "familyPlanUpgradeMessage": { - "message": "Proteja seus logins familiares" + "message": "Proteja as credenciais da sua família" }, "accessToPremiumFeatures": { - "message": "Acesso às funcionalidades Premium" + "message": "Acesso aos recursos do Premium" }, "additionalStorageGbMessage": { "message": "GB de armazenamento adicional" @@ -10901,40 +10909,40 @@ "message": "ED25519" }, "sshKeyAlgorithmRSA2048": { - "message": "RSA 2048-Bit" + "message": "RSA de 2048 bits" }, "sshKeyAlgorithmRSA3072": { - "message": "RSA 3072-Bit" + "message": "RSA de 3072 bits" }, "sshKeyAlgorithmRSA4096": { - "message": "RSA 4096-Bit" + "message": "RSA de 4096 bits" }, "premiumAccounts": { - "message": "6 contas premium" + "message": "6 contas Premium" }, "unlimitedSharing": { "message": "Compartilhamento ilimitado" }, "unlimitedCollections": { - "message": "Coleções ilimitadas" + "message": "Conjuntos ilimitados" }, "secureDataSharing": { - "message": "Compartilhamento de dados seguro" + "message": "Compartilhamento seguro de dados" }, "eventLogMonitoring": { "message": "Monitoramento do registro de eventos" }, "directoryIntegration": { - "message": "Integração de diretório" + "message": "Integração de diretórios" }, "passwordLessSso": { - "message": "SSO Senha-Chaves" + "message": "Autenticação sem senha" }, "accountRecovery": { "message": "Recuperação de conta" }, "customRoles": { - "message": "Funções personalizadas" + "message": "Cargos personalizados" }, "unlimitedSecretsStorage": { "message": "Armazenamento ilimitado de segredos" @@ -10952,13 +10960,13 @@ "message": "Atual" }, "secretsManagerSubscriptionInfo": { - "message": "Sua assinatura do Gerenciador de Segredos será atualizada com base no plano selecionado" + "message": "Sua assinatura do Gerenciador de Segredos terá o upgrade feito de acordo com o plano selecionado" }, "bitwardenPasswordManager": { - "message": "Gerenciador de Senhas Bitwarden" + "message": "Bitwarden Gerenciador de Senhas" }, "secretsManagerComplimentaryPasswordManager": { - "message": "Sua cortesia de um ano de assinatura do Gerenciador de Senhas vai atualizar para o plano selecionado. Você não será cobrado até que o período complementar acabe." + "message": "Sua assinatura de cortesia de um ano do Gerenciador de Senhas terá o upgrade feito para o plano selecionado. Você não será cobrado até que o período de cortesia acabe." }, "fileSavedToDevice": { "message": "Arquivo salvo no dispositivo. Gerencie a partir das transferências do seu dispositivo." @@ -10968,28 +10976,28 @@ "description": "The text, 'API', is an acronym and should not be translated." }, "showCharacterCount": { - "message": "Mostrar contagem de caracteres" + "message": "Mostrar número de caracteres" }, "hideCharacterCount": { - "message": "Esconder contagem de caracteres" + "message": "Ocultar número de caracteres" }, "editAccess": { "message": "Editar acesso" }, "textHelpText": { - "message": "Utilize campos de texto para dados como perguntas de segurança" + "message": "Use campos de texto para dados como questões de segurança" }, "hiddenHelpText": { - "message": "Use campos ocultos para dados confidenciais como uma senha" + "message": "Use campos ocultos para dados sensíveis como senhas" }, "checkBoxHelpText": { - "message": "Use caixas de seleção se gostaria de preencher automaticamente a caixa de seleção de um formulário, como um e-mail de lembrança" + "message": "Use caixas de seleção se gostaria de preencher automaticamente a caixa de seleção de um formulário, como um lembrar e-mail" }, "linkedHelpText": { "message": "Use um campo vinculado quando estiver enfrentando problemas com o preenchimento automático em um site específico." }, "linkedLabelHelpText": { - "message": "Digite o Id html do campo, nome, nome aria-label, ou marcador de posição" + "message": "Digite o ID html, nome, aria-label, ou placeholder do campo." }, "uppercaseDescription": { "message": "Incluir caracteres maiúsculos", @@ -11012,7 +11020,7 @@ "description": "Full description for the password generator numbers checkbox" }, "numbersLabel": { - "message": "0 – 9", + "message": "0-9", "description": "Label for the password generator numbers checkbox" }, "specialCharactersDescription": { @@ -11026,26 +11034,26 @@ "message": "O tamanho máximo do arquivo é 500 MB" }, "permanentlyDeleteAttachmentConfirmation": { - "message": "Tem certeza de que deseja excluir permanentemente esse anexo?" + "message": "Tem certeza de que deseja apagar esse anexo permanentemente?" }, "manageSubscriptionFromThe": { - "message": "Gerenciar assinatura do", + "message": "Gerenciar assinatura pelo", "description": "This represents the beginning of a sentence. The full sentence will be 'Manage subscription from the Provider Portal', but 'Provider Portal' will be a link and thus cannot be included in the translation file." }, "toHostBitwardenOnYourOwnServer": { - "message": "Para hospedar o Bitwarden no seu próprio servidor, você precisará enviar seu arquivo de licença. Para apoiar planos de famílias gratuitas e recursos avançados de faturamento para sua organização auto-hospedada, você precisará configurar a sincronização automática em sua organização auto-hospedada." + "message": "Para hospedar o Bitwarden no seu próprio servidor, você precisará enviar o arquivo da sua licença. Para apoiar planos grátis do Famílias e recursos avançados de faturamento para sua organização auto-hospedada, você precisará configurar a sincronização automática nela." }, "selfHostingTitleProper": { - "message": "Auto-hospedado" + "message": "Auto-hospedagem" }, "claim-domain-single-org-warning": { - "message": "Reivindicar um domínio ligará a política de organização única." + "message": "Reivindicar um domínio ativará a política de organização única." }, "single-org-revoked-user-warning": { "message": "Membros não conformes serão revogados. Os administradores podem restaurar os membros assim que saírem de todas as outras organizações." }, "deleteOrganizationUser": { - "message": "Excluir $NAME$", + "message": "Apagar $NAME$", "placeholders": { "name": { "content": "$1", @@ -11055,7 +11063,7 @@ } }, "deleteOrganizationUserWarningDesc": { - "message": "Isto irá excluir permanentemente todos os itens pertencentes a $NAME$. Os itens de coleção não são impactados.", + "message": "Isto apagará permanentemente todos os itens pertencentes a $NAME$. Os itens de conjuntos não são impactados.", "description": "Warning description for the delete organization user dialog", "placeholders": { "name": { @@ -11065,11 +11073,11 @@ } }, "deleteManyOrganizationUsersWarningDesc": { - "message": "Isto irá excluir permanentemente todos os itens pertencentes a $NAME$. Os itens de coleção não são impactados.", + "message": "Isso apagará permanentemente todos os itens pertencentes aos seguintes membros. Os itens de conjuntos não são impactados.", "description": "Warning description for the bulk delete organization users dialog" }, "organizationUserDeleted": { - "message": "$NAME$ Excluído", + "message": "Apagou $NAME$", "placeholders": { "name": { "content": "$1", @@ -11078,10 +11086,10 @@ } }, "organizationUserDeletedDesc": { - "message": "O usuário foi removido da organização e todos os dados de usuários associados foram excluídos." + "message": "O usuário foi removido da organização e todos os dados de usuários associados foram apagados." }, "deletedUserIdEventMessage": { - "message": "Deleted user $ID$", + "message": "Apagou o usuário $ID$", "placeholders": { "id": { "content": "$1", @@ -11099,7 +11107,7 @@ } }, "suspendedOrganizationTitle": { - "message": "O $ORGANIZATION$ está suspenso", + "message": "A $ORGANIZATION$ está suspensa", "placeholders": { "organization": { "content": "$1", @@ -11114,31 +11122,31 @@ "message": "Para recuperar o acesso à sua organização, adicione um método de pagamento." }, "deleteMembers": { - "message": "Excluir membros" + "message": "Apagar membros" }, "noSelectedMembersApplicable": { "message": "Esta ação não se aplica a nenhum dos membros selecionados." }, "deletedSuccessfully": { - "message": "Excluído com sucesso" + "message": "Apagado com sucesso" }, "freeFamiliesSponsorship": { - "message": "Remova o patrocínio das famílias do Bitwarden" + "message": "Remover financiamento do Bitwarden Famílias grátis" }, "freeFamiliesSponsorshipPolicyDesc": { - "message": "Não permita que os membros resgatem um plano de Famílias por meio desta organização." + "message": "Não permita que os membros resgatem um plano do Famílias por meio desta organização." }, "verifyBankAccountWithStatementDescriptorWarning": { - "message": "O pagamento com uma conta bancária só está disponível para clientes nos Estados Unidos. Você será obrigado a verificar sua conta bancária. Nós faremos um micro-depósito nos próximos 1-2 dias úteis. Digite o código do descritor da instrução a partir deste depósito na página de faturamento da organização para verificar a conta bancária. A não verificação da conta bancária resultará em um pagamento não atendido e sua assinatura será suspensa." + "message": "O pagamento com uma conta bancária só está disponível para clientes nos Estados Unidos. Você precisará verificar sua conta bancária. Faremos um micro-depósito nos próximos 1-2 dias úteis. Digite o código descritor do extrato deste depósito na página de faturamento da organização para verificar a conta bancária. A falha na verificação da conta bancária resultará em um pagamento atrasado e a sua assinatura será suspensa." }, "verifyBankAccountWithStatementDescriptorInstructions": { - "message": "Fizemos um microdepósito em sua conta bancária (isso pode levar 1-2 dias úteis). Digite o código de seis dígitos começando com 'SM' encontrado na descrição de depósito. A não verificação da conta bancária resultará em um pagamento não atendido e sua assinatura será suspensa." + "message": "Fizemos um micro-depósito em sua conta bancária (isso pode levar 1-2 dias úteis). Digite o código de seis dígitos começando com 'SM' encontrado na descrição do depósito. A falha da verificação da conta bancária resultará em um pagamento atrasado, e a sua assinatura será suspensa." }, "descriptorCode": { - "message": "Código do descritor" + "message": "Código descritor" }, "cannotRemoveViewOnlyCollections": { - "message": "Você não pode remover coleções com permissões de Somente leitura: $COLLECTIONS$", + "message": "Você não pode remover conjuntos com permissões de Apenas ver: $COLLECTIONS$", "placeholders": { "collections": { "content": "$1", @@ -11147,7 +11155,7 @@ } }, "removeMembers": { - "message": "Remover membro?" + "message": "Remover membros" }, "devices": { "message": "Dispositivos" @@ -11168,16 +11176,16 @@ "message": "Recuperar domínio" }, "claimDomainNameInputHint": { - "message": "Exemplo: meudominio.com. Subdomínios requerem entradas separadas para serem reivindicadas." + "message": "Exemplo: meudominio.com. Subdomínios requerem entradas separadas para serem reivindicados." }, "automaticClaimedDomains": { - "message": "Domínios Reivindicados Automaticamente" + "message": "Domínios reivindicados automaticamente" }, "automaticDomainClaimProcess": { - "message": "O Bitwarden tentará reivindicar o domínio 3 vezes durante as primeiras 72 horas. Se o domínio não puder ser reivindicado, verifique o registro DNS no seu host e reivindique manualmente. O domínio será removido da sua organização em 7 dias, se não for reivindicado." + "message": "O Bitwarden tentará reivindicar o domínio 3 vezes durante as primeiras 72 horas. Se o domínio não poder ser reivindicado, confira o registro de DNS no seu servidor e reivindique manualmente. Se não for reivindicado, o domínio será removido da sua organização em 7 dias." }, "domainNotClaimed": { - "message": "$DOMAIN$ não reivindicado. Verifique seus registros DNS.", + "message": "$DOMAIN$ não reivindicado. Confira os seus registros de DNS.", "placeholders": { "DOMAIN": { "content": "$1", @@ -11192,10 +11200,10 @@ "message": "Em verificação" }, "claimedDomainsDescription": { - "message": "Claim a domain to own member accounts. The SSO identifier page will be skipped during login for members with claimed domains and administrators will be able to delete claimed accounts." + "message": "Reivindique um domínio para ser o proprietário das contas dos membros. A página do identificador do SSO será pulada durante a autenticação dos membros com os domínios reivindicados, e os administradores poderão apagar contas reivindicadas." }, "invalidDomainNameClaimMessage": { - "message": "Entrada não é um formato válido. Formato: meudominio.com. Subdomínios requerem entradas separadas para serem reivindicados." + "message": "A entrada não está em um formato válido. Formato: meudominio.com. Subdomínios requerem entradas separadas a serem reivindicadas." }, "domainClaimedEvent": { "message": "$DOMAIN$ reivindicado", @@ -11216,7 +11224,7 @@ } }, "updatedRevokeSponsorshipConfirmationForSentSponsorship": { - "message": "Se você remover $EMAIL$, o pagamento deste plano Família não poderá ser resgatado. Tem certeza que deseja continuar?", + "message": "Se você remover $EMAIL$, o pagamento deste plano familiar não poderá ser resgatado. Tem certeza que deseja continuar?", "placeholders": { "email": { "content": "$1", @@ -11225,7 +11233,7 @@ } }, "updatedRevokeSponsorshipConfirmationForAcceptedSponsorship": { - "message": "Se remover $EMAIL$, o pagamento para este plano Família terminará e o método de pagamento salvo será cobrado por US$ 40 + imposto aplicável em $DATE$. Você não poderá resgatar um novo pagamento até $DATE$. Tem certeza que deseja continuar?", + "message": "Se remover $EMAIL$, o financiamento deste plano familiar terminará e o método de pagamento salvo será cobrado por 40$ USD + impostos aplicáveis em $DATE$. Você não poderá resgatar um novo financiamento até $DATE$. Tem certeza que deseja continuar?", "placeholders": { "email": { "content": "$1", @@ -11241,13 +11249,13 @@ "message": "Domínio reivindicado" }, "itemAddedToFavorites": { - "message": "Item added to favorites" + "message": "Item adicionado aos favoritos" }, "itemRemovedFromFavorites": { - "message": "Item removed from favorites" + "message": "Item removido dos favoritos" }, "copyNote": { - "message": "Copy note" + "message": "Copiar anotação" }, "organizationNameMaxLength": { "message": "O nome da organização não pode exceder 50 caracteres." @@ -11262,49 +11270,49 @@ "message": "Confiar e confirmar usuário" }, "trustOrganization": { - "message": "Organização de confiança" + "message": "Confiar na organização" }, "trust": { - "message": "Confiança" + "message": "Confiar" }, "doNotTrust": { "message": "Não confiar" }, "organizationNotTrusted": { - "message": "Organization is not trusted" + "message": "Organização não é confiada" }, "emergencyAccessTrustWarning": { - "message": "Para a segurança de sua conta, só confirme se você concedeu acesso de emergência a este usuário e sua impressão digital corresponde ao que é exibido na conta dele" + "message": "Para a segurança da sua conta, apenas confirme que você permitiu o acesso de emergência a esse usuário e se a frase biométrica dele coincide com a que é exibida na conta deles" }, "orgTrustWarning": { - "message": "Para a segurança da sua conta, prossiga somente se você for um membro desta organização, tem a recuperação de conta ativada, e a impressão digital exibida abaixo corresponde à impressão digital da organização." + "message": "Para a segurança da sua conta, prossiga apenas se você for um membro dessa organização, tem a recuperação de conta ativa, e a frase biométrica exibida abaixo corresponde com a da organização." }, "orgTrustWarning1": { - "message": "This organization has an Enterprise policy that will enroll you in account recovery. Enrollment will allow organization administrators to change your password. Only proceed if you recognize this organization and the fingerprint phrase displayed below matches the organization's fingerprint." + "message": "Esta organização tem uma política empresarial que lhe inscreverá na recuperação de conta. A inscrição permitirá que os administradores da organização alterem sua senha. Prossiga somente se você reconhecer esta organização e se a frase biométrica exibida abaixo corresponde com a da organização." }, "trustUser": { "message": "Confiar no usuário" }, "sshKeyWrongPassword": { - "message": "A senha está incorreta." + "message": "A senha que você digitou está incorreta." }, "importSshKey": { "message": "Importar" }, "confirmSshKeyPassword": { - "message": "Confirme a senha" + "message": "Confirmar senha" }, "enterSshKeyPasswordDesc": { - "message": "Insira a senha da chave SSH." + "message": "Digite a senha da chave SSH." }, "enterSshKeyPassword": { - "message": "Insira a senha" + "message": "Digitar senha" }, "invalidSshKey": { "message": "A chave SSH é inválida" }, "sshKeyTypeUnsupported": { - "message": "O tipo de chave SSH não é compatível" + "message": "O tipo de chave SSH não é suportado" }, "importSshKeyFromClipboard": { "message": "Importar chave da área de transferência" @@ -11316,36 +11324,28 @@ "message": "Copiar chave privada" }, "openingExtension": { - "message": "Abrir a extensão do navegador Bitwarden" + "message": "Abrindo a extensão de navegador do Bitwarden" }, "somethingWentWrong": { - "message": "Ocorreu um problema..." + "message": "Algo deu errado..." }, "openingExtensionError": { - "message": "Tivemos problemas ao abrir a extensão Bitwarden. Clique no botão para abri-la agora." + "message": "Tivemos problemas ao abrir a extensão de navegador do Bitwarden. Clique no botão para abri-la agora." }, "openExtension": { "message": "Abrir extensão" }, "doNotHaveExtension": { - "message": "Não tem a extensão do Bitwarden?" + "message": "Não tem a extensão de navegador do Bitwarden?" }, "installExtension": { - "message": "Instalar a extensão" + "message": "Instalar extensão" }, "openedExtension": { - "message": "Abriu a extensão do navegador" + "message": "Extensão de navegador foi aberta" }, "openedExtensionViewAtRiskPasswords": { - "message": "A extensão do Bitwarden foi aberta com sucesso. Agora você pode rever suas senhas em risco." - }, - "openExtensionManuallyPart1": { - "message": "Tivemos problemas ao abrir a extensão Bitwarden. Abra o ícone do Bitwarden", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "da barra de ferramentas.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" + "message": "A extensão de navegador do Bitwarden foi aberta com sucesso. Agora você pode revisar suas senhas em risco." }, "resellerRenewalWarningMsg": { "message": "Sua assinatura será renovada em breve. Para garantir o serviço sem interrupções, entre em contato com $RESELLER$ para confirmar sua renovação antes de $RENEWAL_DATE$.", @@ -11361,7 +11361,7 @@ } }, "resellerOpenInvoiceWarningMgs": { - "message": "Uma fatura para sua assinatura foi emitida em $ISSUED_DATE$. Para garantir o serviço ininterrupto, entre em contato com $RESELLER$ para confirmar a sua renovação antes de $DUE_DATE$.", + "message": "Uma fatura para sua assinatura foi emitida em $ISSUED_DATE$. Para garantir o serviço sem interrupções, entre em contato com $RESELLER$ para confirmar a sua renovação antes de $DUE_DATE$.", "placeholders": { "reseller": { "content": "$1", @@ -11378,7 +11378,7 @@ } }, "resellerPastDueWarningMsg": { - "message": "A fatura da sua assinatura não foi paga. Para garantir o serviço ininterrupto, entre em contato com $RESELLER$ para confirmar sua renovação antes de $GRACE_PERIOD_END$.", + "message": "A fatura da sua assinatura não foi paga. Para garantir o serviço sem interrupções, entre em contato com $RESELLER$ para confirmar sua renovação antes de $GRACE_PERIOD_END$.", "placeholders": { "reseller": { "content": "$1", @@ -11397,7 +11397,7 @@ "message": "Reinicie sua assinatura" }, "suspendedManagedOrgMessage": { - "message": "Entre em contato com $PROVIDER$ para assistência.", + "message": "Entre em contato com $PROVIDER$ para ter assistência.", "placeholders": { "provider": { "content": "$1", @@ -11406,16 +11406,16 @@ } }, "accountDeprovisioningNotification": { - "message": "Os administradores agora têm a capacidade de excluir contas de membros que pertencem a um domínio reivindicado." + "message": "Os administradores agora conseguem apagar contas de membros que pertencem a um domínio reivindicado." }, "deleteManagedUserWarningDesc": { - "message": "Esta ação irá excluir a conta de membro, incluindo todos os itens do seu cofre. Isso substitui a ação de Remover anterior." + "message": "Esta ação irá apagar a conta do membro, incluindo todos os itens do seu cofre. Isso substitui a ação anterior de Remover." }, "deleteManagedUserWarning": { - "message": "Excluir é uma nova ação!" + "message": "Apagar é uma nova ação!" }, "seatsRemaining": { - "message": "Você tem $REMAINING$ assentos restantes de $TOTAL$ atribuídos a essa organização. Entre em contato com seu provedor para gerenciar sua assinatura.", + "message": "Você tem $REMAINING$ vagas restantes das $TOTAL$ atribuídas para esta organização. Entre em contato com seu provedor para gerenciar sua assinatura.", "placeholders": { "remaining": { "content": "$1", @@ -11431,7 +11431,7 @@ "message": "Organização existente" }, "selectOrganizationProviderPortal": { - "message": "Selecione uma organização para adicionar ao seu Portal do Provedor." + "message": "Selecione uma organização para adicionar ao seu portal de provedor." }, "noOrganizations": { "message": "Não há organizações para listar" @@ -11452,10 +11452,10 @@ "message": "Organização existente adicionada" }, "assignedExceedsAvailable": { - "message": "Os assentos atribuídos excedem os disponíveis." + "message": "As vagas atribuídas excedem as disponíveis." }, "userkeyRotationDisclaimerEmergencyAccessText": { - "message": "Frase de impressão digital para contatos $NUM_USERS$ para os quais você ativou o acesso de emergência.", + "message": "A frase biométrica dos $NUM_USERS$ contatos para os quais você ativou o acesso de emergência.", "placeholders": { "num_users": { "content": "$1", @@ -11464,7 +11464,7 @@ } }, "userkeyRotationDisclaimerAccountRecoveryOrgsText": { - "message": "Frase de impressão digital para a organização $ORG_NAME$ para a qual você ativou a recuperação de conta.", + "message": "A frase biométrica da organização $ORG_NAME$ para a qual você ativou a recuperação de conta.", "placeholders": { "org_name": { "content": "$1", @@ -11473,95 +11473,95 @@ } }, "userkeyRotationDisclaimerDescription": { - "message": "Girar suas chaves de criptografia exigirá que você confie nas chaves de qualquer organização que possa recuperar sua conta, e quaisquer contatos que você ativou o acesso de emergência. Para continuar, certifique-se de que pode verificar o seguinte:" + "message": "Rotacionar suas chaves de criptografia exigirá que você confie nas chaves de quaisquer organizações que possam recuperar sua conta, e quaisquer contatos que você ativou o acesso de emergência. Para continuar, certifique-se de que pode verificar o seguinte:" }, "userkeyRotationDisclaimerTitle": { - "message": "Chaves criptográficas não confiáveis" + "message": "Chaves criptográficas não confiadas" }, "changeAtRiskPassword": { - "message": "Alterar senhas vulneráveis" + "message": "Alterar senhas em risco" }, "changeAtRiskPasswordAndAddWebsite": { - "message": "This login is at-risk and missing a website. Add a website and change the password for stronger security." + "message": "Esta credencial está em risco e está sem um site. Adicione um site e altere a senha para segurança melhor." }, "missingWebsite": { - "message": "Missing website" + "message": "Site ausente" }, "removeUnlockWithPinPolicyTitle": { - "message": "Remover desbloqueio com o PIN" + "message": "Remover desbloqueio com PIN" }, "removeUnlockWithPinPolicyDesc": { - "message": "Não permitir que os membros desbloqueiem sua conta com um PIN." + "message": "Não permita que os membros desbloqueiem sua conta com um PIN." }, "upgradeForFullEventsMessage": { - "message": "Event logs are not stored for your organization. Upgrade to a Teams or Enterprise plan to get full access to organization event logs." + "message": "O registro de eventos não é armazenado para a sua organização. Faça upgrade para um plano Equipes ou Empresarial para ter acesso completo ao registro de eventos da organização." }, "upgradeEventLogTitleMessage": { - "message": "Upgrade to see event logs from your organization." + "message": "Faça upgrade para ver o registro de eventos da sua organização." }, "upgradeEventLogMessage": { "message": "Esses eventos são apenas exemplos e não refletem eventos reais na sua organização do Bitwarden." }, "viewEvents": { - "message": "View Events" + "message": "Ver eventos" }, "cannotCreateCollection": { - "message": "Organizações gratuitas podem ter até duas coleções. Faça o upgrade para um plano pago para adicionar mais coleções." + "message": "Organizações gratuitas podem ter até dois conjuntos. Faça upgrade para um plano pago para adicionar mais conjuntos." }, "searchArchive": { - "message": "Search archive" + "message": "Buscar no arquivo" }, "archiveNoun": { - "message": "Archive", + "message": "Arquivo", "description": "Noun" }, "archiveVerb": { - "message": "Archive", + "message": "Arquivar", "description": "Verb" }, "unArchive": { - "message": "Unarchive" + "message": "Desarquivar" }, "itemsInArchive": { - "message": "Items in archive" + "message": "Itens no arquivo" }, "noItemsInArchive": { - "message": "No items in archive" + "message": "Nenhum item no arquivo" }, "noItemsInArchiveDesc": { - "message": "Archived items will appear here and will be excluded from general search results and autofill suggestions." + "message": "Os itens arquivados aparecerão aqui e serão excluídos dos resultados gerais de busca e das sugestões de preenchimento automático." }, "itemWasSentToArchive": { - "message": "Item was sent to archive" + "message": "O item foi enviado para o arquivo" }, "itemsWereSentToArchive": { - "message": "Items were sent to archive" + "message": "Itens foram enviados para o arquivo" }, "itemUnarchived": { - "message": "Item was unarchived" + "message": "O item foi desarquivado" }, "bulkArchiveItems": { - "message": "Items archived" + "message": "Itens arquivados" }, "bulkUnarchiveItems": { - "message": "Items unarchived" + "message": "Itens desarquivados" }, "archiveItem": { - "message": "Archive item", + "message": "Arquivar item", "description": "Verb" }, "archiveItemConfirmDesc": { - "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive this item?" + "message": "Itens arquivados são excluídos dos resultados gerais de busca e das sugestões de preenchimento automático. Tem certeza de que deseja arquivar este item?" }, "archiveBulkItems": { - "message": "Archive items", + "message": "Arquivar itens", "description": "Verb" }, "archiveBulkItemsConfirmDesc": { - "message": "Archived items are excluded from general search results and autofill suggestions. Are you sure you want to archive these items?" + "message": "Itens arquivados são excluídos dos resultados gerais de busca e das sugestões de preenchimento automático. Tem certeza de que deseja arquivar esses itens?" }, "businessUnit": { - "message": "Unidades de Negócio" + "message": "Unidade de négocio" }, "businessUnits": { "message": "Unidades de Negócio" @@ -11570,141 +11570,146 @@ "message": "Nova unidade de negócio" }, "sendsTitleNoItems": { - "message": "Send sensitive information safely", + "message": "Envie informações sensíveis com segurança", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "sendsBodyNoItems": { - "message": "Share files and data securely with anyone, on any platform. Your information will remain end-to-end encrypted while limiting exposure.", + "message": "Compartilhe dados e arquivos com segurança com qualquer pessoa, em qualquer plataforma. Suas informações permanecerão criptografadas de ponta a ponta, limitando a exposição.", "description": "'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated." }, "generatorNudgeTitle": { - "message": "Quickly create passwords" + "message": "Crie senhas de forma rápida" }, "generatorNudgeBodyOne": { - "message": "Easily create strong and unique passwords by clicking on", + "message": "Crie senhas únicas e fortes com facilidade clicando em", "description": "Two part message", "example": "Easily create strong and unique passwords by clicking on {icon} to help you keep your logins secure." }, "generatorNudgeBodyTwo": { - "message": "to help you keep your logins secure.", + "message": "para ajudá-lo a manter suas credenciais seguras.", "description": "Two part message", "example": "Easily create strong and unique passwords by clicking on {icon} to help you keep your logins secure." }, "generatorNudgeBodyAria": { - "message": "Easily create strong and unique passwords by clicking on the Generate password button to help you keep your logins secure.", + "message": "Crie senhas únicas e fortes com facilidade clicando no botão de gerar senha para ajudá-lo a manter suas credenciais seguras.", "description": "Aria label for the body content of the generator nudge" }, "newLoginNudgeTitle": { - "message": "Save time with autofill" + "message": "Economize tempo com o preenchimento automático" }, "newLoginNudgeBodyOne": { - "message": "Include a", + "message": "Inclua um", "description": "This is in multiple parts to allow for bold text in the middle of the sentence.", "example": "Include a Website so this login appears as an autofill suggestion." }, "newLoginNudgeBodyBold": { - "message": "Website", + "message": "Site", "description": "This is in multiple parts to allow for bold text in the middle of the sentence.", "example": "Include a Website so this login appears as an autofill suggestion." }, "newLoginNudgeBodyTwo": { - "message": "so this login appears as an autofill suggestion.", + "message": "para que esta credencial apareça como uma sugestão de preenchimento automático.", "description": "This is in multiple parts to allow for bold text in the middle of the sentence.", "example": "Include a Website so this login appears as an autofill suggestion." }, "newCardNudgeTitle": { - "message": "Seamless online checkout" + "message": "Pagamento on-line simplificado" }, "newCardNudgeBody": { - "message": "With cards, easily autofill payment forms securely and accurately." + "message": "Preencha automaticamente formulários de pagamento com cartões de forma segura e precisa." }, "newIdentityNudgeTitle": { - "message": "Simplify creating accounts" + "message": "Simplifique a criação de contas" }, "newIdentityNudgeBody": { - "message": "With identities, quickly autofill long registration or contact forms." + "message": "Com identidades, preencha formulários de cadastro ou contato longos rapidamente, de forma automática." }, "newNoteNudgeTitle": { - "message": "Keep your sensitive data safe" + "message": "Mantenha seus dados sensíveis seguros" }, "newNoteNudgeBody": { - "message": "With notes, securely store sensitive data like banking or insurance details." + "message": "Com anotações, armazene com segurança dados sensíveis como detalhes de informações bancárias ou de seguro." }, "newSshNudgeTitle": { - "message": "Developer-friendly SSH access" + "message": "Acesso SSH amigável para desenvolvedores" }, "newSshNudgeBodyOne": { - "message": "Store your keys and connect with the SSH agent for fast, encrypted authentication.", + "message": "Armazene suas chaves e conecte com o agente SSH para uma autenticação rápida e criptografada.", "description": "Two part message", "example": "Store your keys and connect with the SSH agent for fast, encrypted authentication. Learn more about SSH agent" }, "newSshNudgeBodyTwo": { - "message": "Learn more about SSH agent", + "message": "Saiba mais sobre o agente SSH", "description": "Two part message", "example": "Store your keys and connect with the SSH agent for fast, encrypted authentication. Learn more about SSH agent" }, "setupExtensionPageTitle": { - "message": "Autofill your passwords securely with one click" + "message": "Autopreencha com segurança as suas senhas com um clique" }, "setupExtensionPageDescription": { - "message": "Get the Bitwarden browser extension and start autofilling today" + "message": "Baixe a extensão de navegador do Bitwarden e use o preenchimento automático hoje" }, "getTheExtension": { - "message": "Get the extension" + "message": "Baixar extensão" }, "addItLater": { - "message": "Add it later" + "message": "Adicionar mais tarde" }, "cannotAutofillPasswordsWithoutExtensionTitle": { - "message": "You can't autofill passwords without the browser extension" + "message": "Você não pode preencher senhas automaticamente sem a extensão de navegador" }, "cannotAutofillPasswordsWithoutExtensionDesc": { - "message": "Are you sure you don't want to add the extension now?" + "message": "Você tem certeza de que não quer adicionar a extensão agora?" }, "skipToWebApp": { - "message": "Skip to web app" + "message": "Ir para o aplicativo web" }, "bitwardenExtensionInstalled": { - "message": "Bitwarden extension installed!" + "message": "Extensão do Bitwarden instalada!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "A extensão do Bitwarden está instalada!" }, "openExtensionToAutofill": { - "message": "Open the extension to log in and start autofilling." + "message": "Abra a extensão, se conecte, e comece a usar o preenchimento automático." }, "openBitwardenExtension": { - "message": "Open Bitwarden extension" + "message": "Abrir extensão do Bitwarden" }, "gettingStartedWithBitwardenPart1": { - "message": "For tips on getting started with Bitwarden visit the", + "message": "Para dicas em começar a usar o Bitwarden, visite o", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, "gettingStartedWithBitwardenPart2": { - "message": "Learning Center", + "message": "Centro de Aprendizagem", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "Se a extensão não abrir, você pode precisar abrir o Bitwarden pelo ícone ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " na barra de ferramentas.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { - "message": "Help Center", + "message": "Central de Ajuda", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, "setupExtensionContentAlt": { - "message": "With the Bitwarden browser extension you can easily create new logins, access your saved logins directly from your browser toolbar, and sign in to accounts quickly using Bitwarden autofill." + "message": "Com a extensão de navegador do Bitwarden, você pode criar credenciais, acessar suas credenciais salvas diretamente pela barra do seu navegador, e se conectar a contas rapidamente usando o preenchimento automático do Bitwarden." }, "restart": { - "message": "Restart" + "message": "Reiniciar" }, "verifyProviderBankAccountWithStatementDescriptorWarning": { - "message": "Payment with a bank account is only available to customers in the United States. You will be required to verify your bank account. We will make a micro-deposit within the next 1-2 business days. Enter the statement descriptor code from this deposit on the provider's subscription page to verify the bank account. Failure to verify the bank account will result in a missed payment and your subscription being suspended." + "message": "O pagamento com uma conta bancária só está disponível para clientes nos Estados Unidos. Você precisará verificar sua conta bancária. Faremos um micro-depósito nos próximos 1-2 dias úteis. Digite o código descritor do extrato deste depósito na página de assinatura do provedor para verificar a conta bancária. A falha na verificação da conta bancária resultará em um pagamento atrasado e a sua assinatura será suspensa." }, "clickPayWithPayPal": { - "message": "Please click the Pay with PayPal button to add your payment method." + "message": "Clique no botão de Pagar com PayPal para adicionar seu método de pagamento." }, "revokeActiveSponsorshipConfirmation": { - "message": "If you remove $EMAIL$, the sponsorship for this Family plan will end. A seat within your organization will become available for members or sponsorships after the sponsored organization renewal date on $DATE$.", + "message": "Se remover $EMAIL$, o financiamento deste plano familiar terminará. Uma vaga na sua organização ficará disponível para membros ou financiamentos após a data de renovação da organização financiada em $DATE$.", "placeholders": { "email": { "content": "$1", @@ -11717,56 +11722,56 @@ } }, "billingAddressRequiredToAddCredit": { - "message": "Billing address required to add credit.", + "message": "O endereço de cobrança é necessário para adicionar créditos.", "description": "Error message shown when trying to add credit to a trialing organization without a billing address." }, "aboutThisSetting": { - "message": "About this setting" + "message": "Sobre esta configuração" }, "permitCipherDetailsDescription": { - "message": "Bitwarden will use saved login URIs to identify which icon or change password URL should be used to improve your experience. No information is collected or saved when you use this service." + "message": "O Bitwarden usará URIs de credenciais salvas para identificar qual ícone ou URL de alteração de senha deverá ser usado para melhorar sua experiência. Nenhuma informação é coletada ou salva quando você utiliza este serviço." }, "billingAddress": { - "message": "Billing address" + "message": "Endereço de cobrança" }, "addBillingAddress": { - "message": "Add billing address" + "message": "Adicionar endereço de cobrança" }, "editBillingAddress": { - "message": "Edit billing address" + "message": "Editar endereço de cobrança" }, "noBillingAddress": { - "message": "No address on file." + "message": "Nenhum endereço cadastrado." }, "billingAddressUpdated": { - "message": "Your billing address has been updated." + "message": "Seu endereço de cobrança foi atualizado." }, "paymentDetails": { - "message": "Payment details" + "message": "Detalhes de pagamento" }, "paymentMethodUpdated": { - "message": "Your payment method has been updated." + "message": "Seu método de pagamento foi atualizado." }, "bankAccountVerified": { - "message": "Your bank account has been verified." + "message": "Sua conta bancária foi verificada." }, "availableCreditAppliedToInvoice": { - "message": "Any available credit will be automatically applied towards invoices generated for this account." + "message": "Qualquer crédito disponível será automaticamente aplicado em faturas geradas para esta conta." }, "mustBePositiveNumber": { - "message": "Must be a positive number" + "message": "Deve ser um número positivo" }, "cardSecurityCode": { - "message": "Card security code" + "message": "Código de segurança do cartão" }, "cardSecurityCodeDescription": { - "message": "Card security code, also known as CVV or CVC, is typically a 3 digit number printed on the back of your credit card or 4 digit number printed on the front above your card number." + "message": "O código de segurança do cartão, também conhecido como CVV ou CVC, normalmente é um número de 3 dígitos impresso no verso do seu cartão de crédito ou um número de 4 dígitos impresso na frente acima do número do seu cartão." }, "verifyBankAccountWarning": { - "message": "Payment with a bank account is only available to customers in the United States. You will be required to verify your bank account. We will make a micro-deposit within the next 1-2 business days. Enter the statement descriptor code from this deposit on the Payment Details page to verify the bank account. Failure to verify the bank account will result in a missed payment and your subscription being suspended." + "message": "O pagamento com uma conta bancária só está disponível para clientes nos Estados Unidos. Você precisará verificar sua conta bancária. Faremos um micro-depósito nos próximos 1-2 dias úteis. Digite o código descritor do extrato deste depósito na página de detalhes de pagamento para verificar a conta bancária. A falha na verificação da conta bancária resultará em um pagamento atrasado e a sua assinatura será suspensa." }, "taxId": { - "message": "Tax ID: $TAX_ID$", + "message": "ID de imposto (Tax ID): $TAX_ID$", "placeholders": { "tax_id": { "content": "$1", @@ -11775,14 +11780,14 @@ } }, "unpaidInvoices": { - "message": "Unpaid invoices" + "message": "Faturas não pagas" }, "unpaidInvoicesForServiceUser": { - "message": "Your subscription has not been paid. Contact your provider administrator to restore service to you and your clients.", + "message": "Sua assinatura não foi paga. Contate o administrador do seu provedor para restaurar o serviço a você e aos seus clientes.", "description": "A message shown in a non-dismissible dialog to service users of unpaid providers." }, "providerSuspended": { - "message": "$PROVIDER$ is suspended", + "message": "$PROVIDER$ está suspenso", "placeholders": { "provider": { "content": "$1", @@ -11791,11 +11796,11 @@ } }, "restoreProviderPortalAccessViaCustomerSupport": { - "message": "To restore access to your provider portal, contact Bitwarden Customer Support to renew your subscription.", + "message": "Para restaurar o acesso ao portal do seu provedor, contacte o suporte ao cliente do Bitwarden para renovar sua assinatura.", "description": "A message shown in a non-dismissible dialog to any user of a suspended providers." }, "restoreProviderPortalAccessViaPaymentMethod": { - "message": "Your subscription has not been paid. To restore service to you and your clients, add a payment method by $CANCELLATION_DATE$.", + "message": "Sua assinatura não foi paga. Para restaurar o serviço a você e aos seus clientes, adicione um método de pagamento até $CANCELLATION_DATE$.", "placeholders": { "cancellation_date": { "content": "$1", @@ -11805,7 +11810,7 @@ "description": "A message shown in a non-dismissible dialog to admins of unpaid providers." }, "subscribetoEnterprise": { - "message": "Subscribe to $PLAN$", + "message": "Assinar o $PLAN$", "placeholders": { "plan": { "content": "$1", @@ -11814,7 +11819,7 @@ } }, "subscribeEnterpriseSubtitle": { - "message": "Your 7-day $PLAN$ trial starts today. Add a payment method now to continue using these features after your trial ends: ", + "message": "O seu teste grátis de 7 dias do $PLAN$ começa hoje. Adicione um método de pagamento agora para continuar usando esses recursos quando o teste terminar: ", "placeholders": { "plan": { "content": "$1", @@ -11823,13 +11828,13 @@ } }, "unlimitedSecretsAndProjects": { - "message": "Unlimited secrets and projects" + "message": "Segredos e projetos ilimitados" }, "providersubscriptionCanceled": { - "message": "Subscription canceled" + "message": "Assinatura cancelada" }, "providersubCanceledmessage": { - "message": "To resubscribe, contact Bitwarden Customer Support." + "message": "Para assinar novamente, entre em contato com o suporte ao cliente do Bitwarden." }, "showMore": { "message": "Mostrar mais" @@ -11838,44 +11843,44 @@ "message": "Mostrar menos" }, "missingTaxId": { - "message": "Missing Tax ID" + "message": "ID de imposto (Tax ID) ausente" }, "missingTaxIdWarning": { - "message": "Action required: You're missing a Tax ID number in payment details. If a Tax ID is not added, your invoices may include additional tax." + "message": "Ação necessária: está faltando o número do ID de imposto (Tax ID) nos detalhes de pagamento. Se um ID de imposto não for adicionado, suas faturas podem incluir impostos adicionais." }, "moreBreadcrumbs": { - "message": "More breadcrumbs", + "message": "Mais trilhas", "description": "This is used in the context of a breadcrumb navigation, indicating that there are more items in the breadcrumb trail that are not currently displayed." }, "addTaxId": { - "message": "Add a Tax ID" + "message": "Adicione um ID de imposto" }, "missingTaxIdCalloutTitle": { - "message": "Action required: Missing Tax ID" + "message": "Ação necessária: ID de imposto ausente" }, "missingTaxIdCalloutDescription": { - "message": "If a Tax ID is not added, your invoices may include additional tax." + "message": "Se um ID de imposto não for adicionado, as suas faturas podem incluir impostos adicionais." }, "unverifiedTaxIdWarning": { - "message": "Action required: Your Tax ID number is unverified. If your Tax ID is left unverified, your invoices may include additional tax." + "message": "Ação necessária: O número do seu ID de imposto não foi verificado. Se o seu ID de imposto não for verificado, as suas faturas podem incluir impostos adicionais." }, "editTaxId": { - "message": "Edit your Tax ID" + "message": "Edite seu ID de imposto" }, "unverifiedTaxIdCalloutTitle": { - "message": "Tax ID unverified" + "message": "ID de imposto não verificado" }, "unverifiedTaxIdCalloutDescription": { - "message": "Check your Tax ID to verify the format is correct and there are no typos." + "message": "Confira o seu ID de imposto para verificar se o formato está correto e não há erros de digitação." }, "pendingVerification": { - "message": "Pending verification" + "message": "Verificação pendente" }, "checkInputFormat": { - "message": "Check input format for typos." + "message": "Confira o formato de entrada por erros de digitação." }, "exampleTaxIdFormat": { - "message": "Example $CODE$ format: $EXAMPLE$", + "message": "Exemplo do formato de $CODE$: $EXAMPLE$", "placeholders": { "code": { "content": "$1", @@ -11888,46 +11893,46 @@ } }, "confirmKeyConnectorDomain": { - "message": "Confirm Key Connector domain" + "message": "Confirmar domínio do Key Connector" }, "requiredToVerifyBankAccountWithStripe": { - "message": "Payment with a bank account is only available to customers in the United States. You will be required to verify your bank account. We will make a micro-deposit within the next 1-2 business days. Failure to verify the bank account will result in a missed payment and your subscription being suspended." + "message": "O pagamento com uma conta bancária só está disponível para clientes nos Estados Unidos. Você precisará verificar sua conta bancária. Faremos um micro-depósito nos próximos 1-2 dias úteis. A falha na verificação da conta bancária resultará em um pagamento atrasado e a sua assinatura será suspensa." }, "verifyBankAccountWithStripe": { - "message": "We have made a micro-deposit to your bank account. This may take 1-2 business days. When you see the deposit in your account, you can verify your bank account. Failure to verify your bank account will result in a missed payment and your subscription will be suspended." + "message": "Fizemos um micro-depósito em sua conta bancária. Isso pode levar 1-2 dias úteis. Quando ver o depósito na sua conta, você poderá verificar a sua conta bancária. A falha da verificação da conta bancária resultará em um pagamento atrasado, e a sua assinatura será suspensa." }, "verifyNow": { - "message": "Verify now." + "message": "Verifique agora." }, "additionalStorageGB": { - "message": "Additional storage GB" + "message": "GB de armazenamento adicional" }, "additionalServiceAccountsV2": { - "message": "Additional machine accounts" + "message": "Contas de máquina adicionais" }, "secretsManagerSeats": { - "message": "Secrets Manager seats" + "message": "Vagas do Gerenciador de Segredos" }, "additionalStorage": { - "message": "Additional Storage" + "message": "Armazenamento adicional" }, "expandPurchaseDetails": { - "message": "Expand purchase details" + "message": "Expandir detalhes da compra" }, "collapsePurchaseDetails": { - "message": "Collapse purchase details" + "message": "Recolher detalhes da compra" }, "familiesMembership": { - "message": "Families membership" + "message": "Assinatura do Famílias" }, "planDescPremium": { - "message": "Complete online security" + "message": "Segurança on-line completa" }, "planDescFamiliesV2": { - "message": "Premium security for your family" + "message": "Segurança Premium para a sua família" }, "planDescFreeV2": { - "message": "Share with $COUNT$ other user", + "message": "Compartilhe com $COUNT$ usuário(s)", "placeholders": { "count": { "content": "$1", @@ -11936,37 +11941,37 @@ } }, "planDescEnterpriseV2": { - "message": "Advanced capabilities for any organization" + "message": "Capacidades avançadas para qualquer organização" }, "planNameCustom": { - "message": "Custom plan" + "message": "Plano personalizado" }, "planDescCustom": { - "message": "Bitwarden scales with businesses of all sizes to secure passwords and sensitive information. If you're part of a large enterprise, contact sales to request a quote." + "message": "O Bitwarden escala com empresas de todos os tamanos para proteger senhas e informações sensíveis. Se faz parte de uma grande empresa, entre em contato com o setor financeiro para solicitar um orçamento." }, "builtInAuthenticator": { - "message": "Built-in authenticator" + "message": "Autenticador integrado" }, "breachMonitoring": { - "message": "Breach monitoring" + "message": "Monitoramento de vazamentos" }, "andMoreFeatures": { - "message": "And more!" + "message": "E mais!" }, "secureFileStorage": { - "message": "Secure file storage" + "message": "Armazenamento seguro de arquivos" }, "familiesUnlimitedSharing": { - "message": "Unlimited sharing - choose who sees what" + "message": "Compartilhamento ilimitado - escolha quem vê o quê" }, "familiesUnlimitedCollections": { - "message": "Unlimited family collections" + "message": "Conjuntos familiares ilimitados" }, "familiesSharedStorage": { - "message": "Shared storage for important family info" + "message": "Armazenamento compartilhado para informações importantes da família" }, "limitedUsersV2": { - "message": "Up to $COUNT$ members", + "message": "Até $COUNT$ membros", "placeholders": { "count": { "content": "$1", @@ -11975,7 +11980,7 @@ } }, "limitedCollectionsV2": { - "message": "Up to $COUNT$ collections", + "message": "Até $COUNT$ conjuntos", "placeholders": { "count": { "content": "$1", @@ -11984,13 +11989,13 @@ } }, "alwaysFree": { - "message": "Always free" + "message": "Grátis para sempre" }, "twoSecretsIncluded": { - "message": "2 secrets" + "message": "2 segredos" }, "projectsIncludedV2": { - "message": "$COUNT$ project(s)", + "message": "$COUNT$ projeto(s)", "placeholders": { "count": { "content": "$1", @@ -11999,13 +12004,13 @@ } }, "secureItemSharing": { - "message": "Secure item sharing" + "message": "Compartilhamento seguro de itens" }, "scimSupport": { - "message": "SCIM support" + "message": "Suporte a SCIM" }, "includedMachineAccountsV2": { - "message": "$COUNT$ machine accounts", + "message": "$COUNT$ contas de máquina", "placeholders": { "count": { "content": "$1", @@ -12014,142 +12019,142 @@ } }, "enterpriseSecurityPolicies": { - "message": "Enterprise security policies" + "message": "Políticas empresariais de segurança" }, "selfHostOption": { - "message": "Self-host option" + "message": "Opção auto-hospedada" }, "complimentaryFamiliesPlan": { - "message": "Complimentary families plan for all users" + "message": "Plano de cortesia para famílias de todos os usuários" }, "strengthenCybersecurity": { - "message": "Strengthen cybersecurity" + "message": "Fortaleça a cibersegurança" }, "boostProductivity": { - "message": "Boost productivity" + "message": "Aumente a produtividade" }, "seamlessIntegration": { - "message": "Seamless integration" + "message": "Integração harmoniosa" }, "families": { - "message": "Families" + "message": "Famílias" }, "upgradeToFamilies": { - "message": "Upgrade to Families" + "message": "Fazer upgrade para o Famílias" }, "upgradeToPremium": { - "message": "Upgrade to Premium" + "message": "Fazer upgrade para o Premium" }, "familiesUpdated": { - "message": "You've upgraded to Families!" + "message": "Você fez upgrade para o Famílias!" }, "taxCalculationError": { - "message": "There was an error calculating tax for your location. Please try again." + "message": "Houve um erro ao calcular o imposto para a sua localização. Tente novamente." }, "individualUpgradeWelcomeMessage": { - "message": "Welcome to Bitwarden" + "message": "Boas-vindas ao Bitwarden" }, "individualUpgradeDescriptionMessage": { - "message": "Unlock more security features with Premium, or start sharing items with Families" + "message": "Desbloqueie mais recursos de segurança com o Premium, ou comece a compartilhar itens com o Famílias" }, "individualUpgradeTaxInformationMessage": { - "message": "Prices exclude tax and are billed annually." + "message": "Os preços excluem os impostos e são cobrados anualmente." }, "organizationNameDescription": { - "message": "Your organization name will appear in invitations you send to members." + "message": "O nome da sua organização aparecerá nos convites que você enviar para os membros." }, "continueWithoutUpgrading": { - "message": "Continue without upgrading" + "message": "Continuar sem fazer upgrade" }, "upgradeYourPlan": { - "message": "Upgrade your plan" + "message": "Faça upgrade do seu plano" }, "upgradeNow": { - "message": "Upgrade now" + "message": "Fazer upgrade agora" }, "formWillCreateNewFamiliesOrgMessage": { - "message": "Completing this form will create a new Families organization. You can upgrade your Free organization from the Admin Console." + "message": "Completar este formulário criará uma organização do Famílias. Você pode fazer upgrade da sua organização grátis pelo painel de administração." }, "upgradeErrorMessage": { - "message": "We encountered an error while processing your upgrade. Please try again." + "message": "Encontramos um erro ao processar seu upgrade. Tente novamente." }, "bitwardenFreeplanMessage": { - "message": "You have the Bitwarden Free plan" + "message": "Você tem o plano grátis do Bitwarden" }, "upgradeCompleteSecurity": { - "message": "Upgrade for complete security" + "message": "Faça upgrade para segurança completa" }, "viewbusinessplans": { - "message": "View business plans" + "message": "Ver planos empresariais" }, "updateEncryptionSettings": { - "message": "Update encryption settings" + "message": "Atualizar configurações de criptografia" }, "updateYourEncryptionSettings": { - "message": "Update your encryption settings" + "message": "Atualize suas configurações de criptografia" }, "updateSettings": { - "message": "Update settings" + "message": "Atualizar configurações" }, "algorithm": { - "message": "Algorithm" + "message": "Algoritmo" }, "encryptionKeySettingsHowShouldWeEncryptYourData": { - "message": "Choose how Bitwarden should encrypt your vault data. All options are secure, but stronger methods offer better protection - especially against brute-force attacks. Bitwarden recommends the default setting for most users." + "message": "Escolha como que o Bitwarden deve criptografar os dados do seu cofre. Todas as opções são seguras, mas métodos mais fortes oferecem proteção melhor - especialmente contra ataques de força bruta. O Bitwarden recomenda a pré-configuração para a maioria dos usuários." }, "encryptionKeySettingsIncreaseImproveSecurity": { - "message": "Increasing the values above the default will improve security, but your vault may take longer to unlock as a result." + "message": "Aumentar os valores acima do padrão melhorará a segurança, mas como resultado, o seu cofre pode demorar mais tempo para ser desbloqueado." }, "encryptionKeySettingsAlgorithmPopoverTitle": { - "message": "About encryption algorithms" + "message": "Sobre algoritmos de criptografia" }, "encryptionKeySettingsAlgorithmPopoverPBKDF2": { - "message": "PBKDF2-SHA256 is a well-tested encryption method that balances security and performance. Good for all users." + "message": "O PBKDF2-SHA256 é um método de criptografia bem testado que equilibra a segurança e o desempenho. Bom para todos os usuários." }, "encryptionKeySettingsAlgorithmPopoverArgon2Id": { - "message": "Argon2id offers stronger protection against modern attacks. Best for advanced users with powerful devices." + "message": "O Argon2id oferece uma proteção mais forte contra ataques modernos. É melhor para usuários avançados com dispositivos robustos." }, "zipPostalCodeLabel": { - "message": "ZIP / Postal code" + "message": "CEP / Código postal" }, "cardNumberLabel": { - "message": "Card number" + "message": "Número do cartão" }, "startFreeFamiliesTrial": { - "message": "Start free Families trial" + "message": "Iniciar teste grátis do Famílias" }, "blockClaimedDomainAccountCreation": { - "message": "Block account creation for claimed domains" + "message": "Bloquear criação de conta para domínios reivindicados" }, "blockClaimedDomainAccountCreationDesc": { - "message": "Prevent users from creating accounts outside of your organization using email addresses from claimed domains." + "message": "Impeça que os usuários criem contas fora da sua organização usando endereços de e-mail de domínios reivindicados." }, "blockClaimedDomainAccountCreationPrerequisite": { - "message": "A domain must be claimed before activating this policy." + "message": "Um domínio deve ser reivindicado antes de ativar esta política." }, "unlockMethodNeededToChangeTimeoutActionDesc": { - "message": "Set up an unlock method to change your vault timeout action." + "message": "Configure um método de desbloqueio para alterar a ação do tempo limite do cofre." }, "vaultTimeoutPolicyAffectingOptions": { - "message": "Enterprise policy requirements have been applied to your timeout options" + "message": "Os requisitos de política empresarial foram aplicados às suas opções de tempo limite" }, "vaultTimeoutTooLarge": { - "message": "Your vault timeout exceeds the restrictions set by your organization." + "message": "O tempo limite do seu cofre excede as restrições estabelecidas pela sua organização." }, "neverLockWarning": { - "message": "Are you sure you want to use the \"Never\" option? Setting your lock options to \"Never\" stores your vault's encryption key on your device. If you use this option you should ensure that you keep your device properly protected." + "message": "Você tem certeza que deseja usar a opção \"Nunca\"? Ao usar o \"Nunca\", a chave de criptografia do seu cofre é armazenada no seu dispositivo. Se você usar esta opção, deve garantir que mantém seu dispositivo devidamente protegido." }, "sessionTimeoutSettingsAction": { - "message": "Timeout action" + "message": "Ação do tempo limite" }, "sessionTimeoutHeader": { - "message": "Session timeout" + "message": "Tempo limite da sessão" }, "appearance": { - "message": "Appearance" + "message": "Aparência" }, "vaultTimeoutPolicyMaximumError": { - "message": "Timeout exceeds the restriction set by your organization: $HOURS$ hour(s) and $MINUTES$ minute(s) maximum", + "message": "O tempo limite excede a restrição configurada pela sua organização: máximo de $HOURS$ hora(s) e $MINUTES$ minuto(s)", "placeholders": { "hours": { "content": "$1", @@ -12162,9 +12167,12 @@ } }, "confirmNoSelectedCriticalApplicationsTitle": { - "message": "No critical applications are selected" + "message": "Nenhum aplicativo crítico foi selecionado" }, "confirmNoSelectedCriticalApplicationsDesc": { - "message": "Are you sure you want to continue?" + "message": "Tem certeza que deseja continuar?" + }, + "userVerificationFailed": { + "message": "Falha na verificação do usuário." } } diff --git a/apps/web/src/locales/pt_PT/messages.json b/apps/web/src/locales/pt_PT/messages.json index 4e240bafc1..2227710d09 100644 --- a/apps/web/src/locales/pt_PT/messages.json +++ b/apps/web/src/locales/pt_PT/messages.json @@ -3050,7 +3050,7 @@ "message": "O crédito da sua conta pode ser utilizado para efetuar compras. Qualquer crédito disponível será automaticamente aplicado às faturas geradas para esta conta." }, "goPremium": { - "message": "Tornar-se Premium", + "message": "Torne-se Premium", "description": "Another way of saying \"Get a Premium membership\"" }, "premiumUpdated": { @@ -9820,6 +9820,14 @@ "message": "Demasiado caro", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "A passar para o plano gratuito", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "A passar para uma organização gratuita", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Gratuito durante 1 ano" }, @@ -10766,7 +10774,7 @@ "message": "Saiba mais sobre as iterações do KDF" }, "learnMoreAboutLocalization": { - "message": "Saiba mais sobre a localização" + "message": "Saiba mais sobre a tradução" }, "learnMoreAboutWebsiteIcons": { "message": "Saiba mais sobre a utilização de ícones de sites" @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Abriu com sucesso a extensão de navegador Bitwarden. Pode agora rever as suas palavras-passe em risco." }, - "openExtensionManuallyPart1": { - "message": "Tivemos problemas ao abrir a extensão de navegador Bitwarden. Abra o ícone do Bitwarden", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "da barra de ferramentas.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "A sua subscrição será renovada em breve. Para garantir um serviço ininterrupto, contacte a $RESELLER$ para confirmar a sua renovação antes de $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Extensão Bitwarden instalada!" }, - "openTheBitwardenExtension": { - "message": "Abrir a extensão Bitwarden" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "A extensão Bitwarden está instalada! Abra a extensão para iniciar sessão e começar o preenchimento automático." + "bitwardenExtensionIsInstalled": { + "message": "A extensão Bitwarden está instalada!" }, "openExtensionToAutofill": { "message": "Abra a extensão para iniciar sessão e começar o preenchimento automático." @@ -11687,6 +11684,14 @@ "message": "Centro de aprendizagem", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "Se a extensão não tiver sido aberta, poderá ter de abrir o Bitwarden através do ícone ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " na barra de ferramentas.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Centro de ajuda", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Tem a certeza de que deseja continuar?" + }, + "userVerificationFailed": { + "message": "Falha na verificação do utilizador." } } diff --git a/apps/web/src/locales/ro/messages.json b/apps/web/src/locales/ro/messages.json index 5b03a1b744..c3c2b7d9c4 100644 --- a/apps/web/src/locales/ro/messages.json +++ b/apps/web/src/locales/ro/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/ru/messages.json b/apps/web/src/locales/ru/messages.json index f2b9856e97..c1b2e3f1dc 100644 --- a/apps/web/src/locales/ru/messages.json +++ b/apps/web/src/locales/ru/messages.json @@ -9820,6 +9820,14 @@ "message": "Слишком дорого", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Переход на бесплатный план", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Переключение на бесплатную организацию", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Бесплатно на 1 год" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Расширение для браузера Bitwarden успешно открыто. Теперь вы можете просмотреть свои пароли, подверженные риску." }, - "openExtensionManuallyPart1": { - "message": "У нас возникли проблемы с открытием расширения для браузера Bitwarden. Нажмите на значок Bitwarden", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "на панели инструментов.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Ваша подписка скоро будет продлена. Чтобы обеспечить непрерывность сервиса, свяжитесь с $RESELLER$ для подтверждения продления до $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Расширение Bitwarden установлено!" }, - "openTheBitwardenExtension": { - "message": "Открыть расширение Bitwarden" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "Расширение Bitwarden установлено! Откройте расширение, чтобы авторизоваться и начать автозаполнение." + "bitwardenExtensionIsInstalled": { + "message": "Расширение Bitwarden установлено!" }, "openExtensionToAutofill": { "message": "Откройте расширение, чтобы авторизоваться и начать использовать автозаполнение." @@ -11687,6 +11684,14 @@ "message": "База знаний", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "Если расширение не открылось, возможно, вам потребуется открыть Bitwarden с помощью значка ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " на панели инструментов.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Центр поддержки", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Вы действительно хотите продолжить?" + }, + "userVerificationFailed": { + "message": "Проверка пользователя не удалась." } } diff --git a/apps/web/src/locales/si/messages.json b/apps/web/src/locales/si/messages.json index 65838aec60..03f68be3c0 100644 --- a/apps/web/src/locales/si/messages.json +++ b/apps/web/src/locales/si/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/sk/messages.json b/apps/web/src/locales/sk/messages.json index 933a349440..3e19422e07 100644 --- a/apps/web/src/locales/sk/messages.json +++ b/apps/web/src/locales/sk/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Rozšírenie pre prehliadač Bitwarden úspešne otvorené. Teraz môžete skontrolovať vaše ohrozene heslá." }, - "openExtensionManuallyPart1": { - "message": "Mali sme problém otvoriť Bitwarden rozšírenie pre prehliadač. Otvorte ikonu Bitwarden", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "na paneli nástrojov.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Vaše predplatné sa čoskoro obnoví. Aby ste si zabezpečili nepretržitú prevádzku, kontaktujte $RESELLER$ a potvrďte obnovenie pred $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Rozšírenie Bitwarden nainštalované!" }, - "openTheBitwardenExtension": { - "message": "Otvoriť rozšírenie Bitwarden" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "Rozšírenie Bitwarden je nainštalované! Otvorte rozšírenie, prihláste sa a začnite automaticky vypĺňať." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Otvorte rozšírenie, prihláste sa a začnite automatické vypĺňanie." @@ -11687,6 +11684,14 @@ "message": "Vzdelávacie centrum", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Centrum pomoci", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Ste si istí, že chcete pokračovať?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/sl/messages.json b/apps/web/src/locales/sl/messages.json index b1d5da3db3..09a882fe7e 100644 --- a/apps/web/src/locales/sl/messages.json +++ b/apps/web/src/locales/sl/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/sr_CS/messages.json b/apps/web/src/locales/sr_CS/messages.json index 9052035c17..367d4ddbac 100644 --- a/apps/web/src/locales/sr_CS/messages.json +++ b/apps/web/src/locales/sr_CS/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/sr_CY/messages.json b/apps/web/src/locales/sr_CY/messages.json index c7dd63b580..aea5a1d973 100644 --- a/apps/web/src/locales/sr_CY/messages.json +++ b/apps/web/src/locales/sr_CY/messages.json @@ -9820,6 +9820,14 @@ "message": "Превише скупо", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Бесплатно 1 годину" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Успешно је отворен додатак. Сада можете да прегледате своје ризичне лозинке." }, - "openExtensionManuallyPart1": { - "message": "Имали смо проблема са отварањем додатка. Отворите Bitwarden иконицу", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "са алатне траке.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Ваша претплата ће ускоро бити обновљена. Да бисте обезбедили непрекинуто пружање услуге, контактирајте $RESELLER$ ради потврде обновљења пре $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden екстензија инсталираана!" }, - "openTheBitwardenExtension": { - "message": "Отворити Bitwarden екстензију" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Отворите екстензију да бисте се пријавили и започели ауто-попуњавање." @@ -11687,6 +11684,14 @@ "message": "Центар за учење", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Центар за помоћ", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/sv/messages.json b/apps/web/src/locales/sv/messages.json index a90524b95b..6432029d21 100644 --- a/apps/web/src/locales/sv/messages.json +++ b/apps/web/src/locales/sv/messages.json @@ -9820,6 +9820,14 @@ "message": "För dyrt", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Växlar till kostnadsfri plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Växlar till kostnadsfri organisation", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Gratis i 1 år" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Framgångsrikt öppnat webbläsartillägget Bitwarden. Du kan nu granska dina risklösenord." }, - "openExtensionManuallyPart1": { - "message": "Vi hade problem med att öppna webbläsartillägget Bitwarden. Öppna Bitwarden-ikonen", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "från verktygsfältet.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Din prenumeration kommer snart att förnyas. För att säkerställa oavbruten service, kontakta $RESELLER$ för att bekräfta din förnyelse före $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden-tillägg installerat!" }, - "openTheBitwardenExtension": { - "message": "Öppna Bitwarden-tillägget" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "Bitwarden-tillägget är installerat! Öppna tillägget för att logga in och starta autofyllning." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden-tillägget är installerat!" }, "openExtensionToAutofill": { "message": "Öppna tillägget för att logga in och starta autofyllning." @@ -11687,6 +11684,14 @@ "message": "Lärcentrum", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "Om tillägget inte öppnades kan du behöva öppna Bitwarden från ikonen ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " på verktygsfältet.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Hjälpcenter", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Är du säker på att du vill fortsätta?" + }, + "userVerificationFailed": { + "message": "Verifiering av användare misslyckades." } } diff --git a/apps/web/src/locales/ta/messages.json b/apps/web/src/locales/ta/messages.json index eabda4c761..d6154ae9fc 100644 --- a/apps/web/src/locales/ta/messages.json +++ b/apps/web/src/locales/ta/messages.json @@ -9820,6 +9820,14 @@ "message": "மிகவும் விலை உயர்ந்தது", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "1 வருடத்திற்கு இலவசம்" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Bitwarden உலாவி நீட்டிப்பு வெற்றிகரமாக திறக்கப்பட்டது. உங்கள் ஆபத்தில் உள்ள கடவுச்சொற்களை இப்போது நீங்கள் மதிப்பாய்வு செய்யலாம்." }, - "openExtensionManuallyPart1": { - "message": "Bitwarden உலாவி நீட்டிப்பைத் திறப்பதில் எங்களுக்குச் சிக்கல் ஏற்பட்டது. Bitwarden ஐகானைத் திறக்கவும்", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "பணிப்பட்டி யிலிருந்து.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "உங்கள் சந்தா விரைவில் புதுப்பிக்கப்படும். தடையற்ற சேவையை உறுதிப்படுத்த, $RENEWAL_DATE$-க்கு முன் உங்கள் புதுப்பித்தலை உறுதிப்படுத்த $RESELLER$-ஐத் தொடர்பு கொள்ளவும்.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden நீட்டிப்பு நிறுவப்பட்டது!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "உள்நுழைந்து தானாக நிரப்பத் தொடங்க நீட்டிப்பைத் திறக்கவும்." @@ -11687,6 +11684,14 @@ "message": "கற்றல் மையம்", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "உதவி மையம்", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/te/messages.json b/apps/web/src/locales/te/messages.json index b23e2e3cba..0d08d20774 100644 --- a/apps/web/src/locales/te/messages.json +++ b/apps/web/src/locales/te/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/th/messages.json b/apps/web/src/locales/th/messages.json index bcaada3bea..fca5672946 100644 --- a/apps/web/src/locales/th/messages.json +++ b/apps/web/src/locales/th/messages.json @@ -9820,6 +9820,14 @@ "message": "Too expensive", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Free for 1 year" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Successfully opened the Bitwarden browser extension. You can now review your at-risk passwords." }, - "openExtensionManuallyPart1": { - "message": "We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "from the toolbar.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Your subscription will renew soon. To ensure uninterrupted service, contact $RESELLER$ to confirm your renewal before $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden extension installed!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Open the extension to log in and start autofilling." @@ -11687,6 +11684,14 @@ "message": "Learning Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Help Center", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/tr/messages.json b/apps/web/src/locales/tr/messages.json index 82ca8d37b6..70136be608 100644 --- a/apps/web/src/locales/tr/messages.json +++ b/apps/web/src/locales/tr/messages.json @@ -9820,6 +9820,14 @@ "message": "Çok pahalı", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "1 yıl boyunca ücretsiz" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Bitwarden tarayıcı uzantısı başarıyla açıldı. Artık risk altındaki parolalarınızı gözden geçirebilirsiniz." }, - "openExtensionManuallyPart1": { - "message": "Bitwarden tarayıcı uzantısını açarken sorun yaşadık. Araç çubuğundan Bitwarden simgesini", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "açın.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Aboneliğiniz yakında yenilenecektir. Kesintisiz hizmet için, $RENEWAL_DATE$ tarihinden önce $RESELLER$ ile iletişime geçerek yenileme işleminizi onaylayın.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden uzantısı yüklendi!" }, - "openTheBitwardenExtension": { - "message": "Bitwarden uzantısını aç" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden uzantısı yüklendi!" }, "openExtensionToAutofill": { "message": "Otomatik doldurmaya başlamak için uzantıyı açıp giriş yapın." @@ -11687,6 +11684,14 @@ "message": "Öğrenim Merkezi", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "Uzantı açılmadıysa araç çubuğundaki simgeye ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " tıklayarak Bitwarden'ı açmanız gerekebilir.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Yardım Merkezi", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Devam etmek istediğinizden emin misiniz?" + }, + "userVerificationFailed": { + "message": "Kullanıcı doğrulaması başarısız oldu." } } diff --git a/apps/web/src/locales/uk/messages.json b/apps/web/src/locales/uk/messages.json index 85fbbc317e..1ccabaeddf 100644 --- a/apps/web/src/locales/uk/messages.json +++ b/apps/web/src/locales/uk/messages.json @@ -9820,6 +9820,14 @@ "message": "Висока ціна", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Безплатно на 1 рік" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Розширення браузера Bitwarden успішно відкрито. Тепер ви можете переглянути свої ризиковані паролі." }, - "openExtensionManuallyPart1": { - "message": "Виникли проблеми з відкриттям розширення браузера Bitwarden. Відкрийте піктограму Bitwarden", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "з панелі інструментів.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Ваша передплата невдовзі поновиться. Щоб забезпечити безперебійну роботу, зверніться до $RESELLER$ для підтвердження поновлення до $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Розширення Bitwarden встановлено!" }, - "openTheBitwardenExtension": { - "message": "Open the Bitwarden extension" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "The Bitwarden extension is installed! Open the extension to log in and start autofilling." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Відкрийте розширення, щоб увійти й користуватися автозаповненням." @@ -11687,6 +11684,14 @@ "message": "Навчальний центр", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Довідковий центр", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/vi/messages.json b/apps/web/src/locales/vi/messages.json index b361fb8882..370ca0f5ad 100644 --- a/apps/web/src/locales/vi/messages.json +++ b/apps/web/src/locales/vi/messages.json @@ -9820,6 +9820,14 @@ "message": "Quá đắt", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "Switching to free plan", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "Switching to free organization", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "Miễn phí 1 năm" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "Đã mở tiện ích mở rộng trình duyệt Bitwarden thành công. Bây giờ bạn có thể xem lại mật khẩu có rủi ro của mình." }, - "openExtensionManuallyPart1": { - "message": "Chúng tôi gặp sự cố khi mở tiện ích mở rộng trình duyệt Bitwarden. Mở biểu tượng Bitwarden", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "từ thanh công cụ.", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "Đăng ký của bạn sẽ sớm được gia hạn. Để đảm bảo dịch vụ không bị gián đoạn, hãy liên hệ $RESELLER$ để xác nhận gia hạn trước $RENEWAL_DATE$.", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Đã cài đặt tiện ích mở rộng Bitwarden!" }, - "openTheBitwardenExtension": { - "message": "Mở tiện ích mở rộng Bitwarden" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "Tiện ích mở rộng Bitwarden đã được cài đặt! Mở tiện ích mở rộng để đăng nhập và bắt đầu tự động điền." + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden extension is installed!" }, "openExtensionToAutofill": { "message": "Mở tiện ích mở rộng để đăng nhập và bắt đầu tự động điền." @@ -11687,6 +11684,14 @@ "message": "Trung tâm học tập", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "If the extension didn't open, you may need to open Bitwarden from the icon ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " on the toolbar.", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "Trung tâm Trợ giúp", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "Are you sure you want to continue?" + }, + "userVerificationFailed": { + "message": "User verification failed." } } diff --git a/apps/web/src/locales/zh_CN/messages.json b/apps/web/src/locales/zh_CN/messages.json index 6ccfef71f9..6a436fbb4a 100644 --- a/apps/web/src/locales/zh_CN/messages.json +++ b/apps/web/src/locales/zh_CN/messages.json @@ -236,7 +236,7 @@ "message": "标记为关键的应用程序" }, "criticalApplicationsMarkedSuccess": { - "message": "$COUNT$ 个应用程序标记为关键", + "message": "$COUNT$ 个标记为关键的应用程序", "placeholders": { "count": { "content": "$1", @@ -2490,7 +2490,7 @@ "message": "为您的组织启用两步登录。" }, "twoStepLoginEnterpriseDescStart": { - "message": "要为成员强制实施 Bitwarden 两步登录选项,请使用 ", + "message": "要为成员强制实施 Bitwarden 两步登录选项,请使用", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'Enforce Bitwarden Two-step Login options for members by using the Two-step Login Policy.'" }, "twoStepLoginPolicy": { @@ -2547,7 +2547,7 @@ "message": "需要高级版" }, "premiumRequiredDesc": { - "message": "使用此功能需要高级会员资格。" + "message": "需要高级会员才能使用此功能。" }, "youHavePremiumAccess": { "message": "您拥有高级版访问权限" @@ -3103,7 +3103,7 @@ } }, "bitwardenFamiliesPlan": { - "message": "Bitwarden 家庭方案。" + "message": "Bitwarden 家庭版方案。" }, "addons": { "message": "附加项目" @@ -3796,7 +3796,7 @@ "message": "管理员" }, "adminDesc": { - "message": "管理组织的访问权限,所有集合、成员、报告,以及安全设置" + "message": "管理组织的访问权限、所有集合、成员、报告,以及安全设置" }, "user": { "message": "用户" @@ -5810,11 +5810,11 @@ "description": "This is the policy description shown in the policy list." }, "organizationDataOwnershipDescContent": { - "message": "所有项目都将归组织所有并保存至组织,从而实现组织范围的控制、可见性和报告功能。启用后,每个成员都将拥有一个默认集合来存储项目。进一步了解", + "message": "所有项目都将归组织所有并保存至组织中,从而实现组织范围的控制、可见性和报告。启用后,每个成员都可以使用默认集合来存储项目。进一步了解如何管理", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'All items will be owned and saved to the organization, enabling organization-wide controls, visibility, and reporting. When turned on, a default collection will be available for each member to store items. Learn more about managing the credential lifecycle.'" }, "organizationDataOwnershipContentAnchor": { - "message": "凭据的生命周期", + "message": "凭据生命周期", "description": "This will be used as a hyperlink" }, "organizationDataOwnershipWarningTitle": { @@ -6115,7 +6115,7 @@ "message": "加强企业安全。" }, "strengthenBusinessSecurityDescription": { - "message": "通过 SSO 集成、事件日志和访问轮换,保持机器和人类对机密访问权限的严格控制。" + "message": "通过 SSO 集成、事件日志和访问权限轮换,保持机器和人类对机密访问权限的严格控制。" }, "tryItNow": { "message": "立即体验" @@ -6882,7 +6882,7 @@ "message": "单点登录配置已保存" }, "sponsoredFamilies": { - "message": "免费 Bitwarden 家庭" + "message": "免费的 Bitwarden 家庭版" }, "sponsoredBitwardenFamilies": { "message": "赞助的家庭" @@ -6891,22 +6891,22 @@ "message": "没有赞助的家庭" }, "nosponsoredFamiliesDetails": { - "message": "已赞助的非成员家庭方案将显示在这里" + "message": "已赞助的非成员家庭版方案将显示在这里" }, "sponsorshipFreeBitwardenFamilies": { - "message": "您的组织成员有资格获得免费的 Bitwarden 家庭计划。您可以为不是您的 Bitwarden 组织成员的员工赞助免费 Bitwarden 家庭。赞助非成员需要您的组织内有可用的席位。" + "message": "您的组织成员有资格获得免费的 Bitwarden 家庭版。您可以为不是您的 Bitwarden 组织成员的员工赞助免费的 Bitwarden 家庭版。赞助非成员需要您的组织内有可用的席位。" }, "sponsoredFamiliesRemoveActiveSponsorship": { "message": "当您移除某个活动赞助,在被赞助组织的续费日期之后,您的组织中将释放一个可用的席位。" }, "sponsoredFamiliesEligible": { - "message": "您和您的家人有资格获得免费的 Bitwarden 家庭版计划。使用您的个人电子邮箱兑换,即使您不在工作中,也能确保您的数据安全。" + "message": "您和您的家人有资格获得免费的 Bitwarden 家庭版。使用您的个人电子邮箱兑换,即使您不在工作中,也能确保您的数据安全。" }, "sponsoredFamiliesEligibleCard": { - "message": "立即兑换免费的 Bitwarden 家庭方案,即使您不在工作中,也能确保您的数据安全。" + "message": "立即兑换免费的 Bitwarden 家庭版方案,即使您不在工作中,也能确保您的数据安全。" }, "sponsoredFamiliesIncludeMessage": { - "message": "Bitwarden 家庭方案包含" + "message": "Bitwarden 家庭版方案包含" }, "sponsoredFamiliesPremiumAccess": { "message": "最多 6 个高级版访问权限的用户" @@ -6921,10 +6921,10 @@ "message": "没有成员家庭" }, "noMemberFamiliesDescription": { - "message": "已兑换家庭方案的成员将在这里显示" + "message": "已兑换家庭版方案的成员将在这里显示" }, "membersWithSponsoredFamilies": { - "message": "您的组织成员有资格获得免费的 Bitwarden 家庭计划。在这里,您可以看到已赞助了家庭组织的成员。" + "message": "您的组织成员有资格获得免费的 Bitwarden 家庭版。在这里,您可以看到已赞助了家庭版组织的成员。" }, "organizationHasMemberMessage": { "message": "由于他们是您组织的成员,因此不能将赞助发送给 $EMAIL$。", @@ -6939,7 +6939,7 @@ "message": "链接已失效。请让赞助方重新发送邀请。" }, "reclaimedFreePlan": { - "message": "重新申领了免费方案" + "message": "已恢复为免费版方案" }, "redeem": { "message": "兑换" @@ -6948,19 +6948,19 @@ "message": "选择您希望被赞助的组织" }, "familiesSponsoringOrgSelect": { - "message": "您想兑换哪一个免费家庭邀请?" + "message": "您想兑换哪一个免费家庭版邀请?" }, "sponsoredFamiliesEmail": { - "message": "输入您的个人电子邮箱以兑换 Bitwarden 家庭" + "message": "输入您的个人电子邮箱以兑换 Bitwarden 家庭版" }, "sponsoredFamiliesLeaveCopy": { - "message": "如果您移除邀请或您被从赞助组织中移除,您的家庭赞助将在下一个续费日到期。" + "message": "如果您移除邀请或您被从赞助组织中移除,您的家庭版赞助将在下一个续费日到期。" }, "acceptBitwardenFamiliesHelp": { - "message": "接受现有组织的邀请或创建一个新的家庭组织。" + "message": "接受现有组织的邀请或创建一个新的家庭版组织。" }, "setupSponsoredFamiliesLoginDesc": { - "message": "您已被邀请加入免费的 Bitwarden 家庭方案组织。要继续,您需要登录到接收邀请的账户。" + "message": "您已被邀请加入免费的 Bitwarden 家庭版方案组织。要继续,您需要登录到接收邀请的账户。" }, "sponsoredFamiliesAcceptFailed": { "message": "无法接受邀请。请通过您的企业账户重新发送邀请邮件,然后重试。" @@ -6975,10 +6975,10 @@ } }, "sponsoredFamiliesOffer": { - "message": "接受免费的 Bitwarden 家庭组织" + "message": "接受免费的 Bitwarden 家庭版" }, "sponsoredFamiliesOfferRedeemed": { - "message": "免费 Bitwarden 家庭邀请已成功兑换" + "message": "免费的 Bitwarden 家庭版邀请已成功兑换" }, "redeemed": { "message": "已兑换" @@ -7005,7 +7005,7 @@ } }, "freeFamiliesPlan": { - "message": "免费家庭方案" + "message": "免费家庭版方案" }, "redeemNow": { "message": "立即兑换" @@ -7149,7 +7149,7 @@ "message": "赞助邀请已过期,您可以删除您创建的组织,以避免 7 天试用期结束时收取费用。您也可以关闭这个提示,以保留此组织并承担计费责任。" }, "newFamiliesOrganization": { - "message": "新建家庭组织" + "message": "新建家庭版组织" }, "acceptOffer": { "message": "接受邀请" @@ -7242,7 +7242,7 @@ "message": "自托管" }, "selfHostingEnterpriseOrganizationSectionCopy": { - "message": "要在您自己的服务器上设置您的组织,您需要上传您的许可证文件。要为您的自托管组织提供免费家庭方案和高级计费功能,您需要设置计费同步。" + "message": "要在您自己的服务器上设置您的组织,您需要上传您的许可证文件。要为您的自托管组织提供免费家庭版方案和高级计费功能,您需要设置计费同步。" }, "billingSyncApiKeyRotated": { "message": "令牌已轮换" @@ -7254,7 +7254,7 @@ "message": "计费同步令牌" }, "automaticBillingSyncDesc": { - "message": "自动同步将解锁家庭赞助功能,并允许您同步许可证而无需上传文件。在 Bitwarden 云服务器中进行更新后,选择「同步许可证」以应用更改。" + "message": "自动同步将解锁家庭版赞助功能,并允许您同步许可证而无需上传文件。在 Bitwarden 云服务器中进行更新后,选择「同步许可证」以应用更改。" }, "active": { "message": "已生效" @@ -9820,6 +9820,14 @@ "message": "太贵了", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "正在切换到免费方案", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "正在切换到免费组织", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "免费 1 年" }, @@ -10423,7 +10431,7 @@ "message": "输入您的团队组织信息" }, "enterFamiliesOrgInfo": { - "message": "输入您的家庭组织信息" + "message": "输入您的家庭版组织信息" }, "enterEnterpriseOrgInfo": { "message": "输入您的企业组织信息" @@ -10823,7 +10831,7 @@ "message": "SSO 身份验证" }, "familiesPlanInvLimitReachedManageBilling": { - "message": "家庭组织最多拥有 $SEATCOUNT$ 位成员。要邀请更多成员,请升级到付费方案。", + "message": "家庭版组织最多拥有 $SEATCOUNT$ 位成员。要邀请更多成员,请升级到付费方案。", "placeholders": { "seatcount": { "content": "$1", @@ -10832,7 +10840,7 @@ } }, "familiesPlanInvLimitReachedNoManageBilling": { - "message": "家庭组织最多拥有 $SEATCOUNT$ 位成员。请联系您的组织所有者升级。", + "message": "家庭版组织最多拥有 $SEATCOUNT$ 位成员。要升级,请联系您的组织所有者。", "placeholders": { "seatcount": { "content": "$1", @@ -11033,7 +11041,7 @@ "description": "This represents the beginning of a sentence. The full sentence will be 'Manage subscription from the Provider Portal', but 'Provider Portal' will be a link and thus cannot be included in the translation file." }, "toHostBitwardenOnYourOwnServer": { - "message": "要在您自己的服务器上托管 Bitwarden,您需要上传许可证文件。要支持自托管组织的免费家庭版方案和高级计费功能,您需要在自托管组织中设置自动同步。" + "message": "要在您自己的服务器上托管 Bitwarden,您需要上传许可证文件。要支持自托管组织的免费版家庭版方案和高级计费功能,您需要在自托管组织中设置自动同步。" }, "selfHostingTitleProper": { "message": "自托管" @@ -11123,7 +11131,7 @@ "message": "删除成功" }, "freeFamiliesSponsorship": { - "message": "禁用免费 Bitwarden 家庭赞助" + "message": "禁用免费的 Bitwarden 家庭版赞助" }, "freeFamiliesSponsorshipPolicyDesc": { "message": "不允许成员通过此组织兑换家庭版方案。" @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "成功打开 Bitwarden 浏览器扩展。您现在可以审查存在风险的密码了。" }, - "openExtensionManuallyPart1": { - "message": "我们无法打开 Bitwarden 浏览器扩展。请从工具栏中点击 Bitwarden 图标", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "来打开它。", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "您的订阅即将续期。为确保服务不会中断,请在 $RENEWAL_DATE$ 之前联系 $RESELLER$ 确认您的续订。", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "Bitwarden 扩展已安装!" }, - "openTheBitwardenExtension": { - "message": "打开 Bitwarden 扩展" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "Bitwarden 扩展已安装!请打开扩展登录并开始自动填充。" + "bitwardenExtensionIsInstalled": { + "message": "Bitwarden 扩展已安装!" }, "openExtensionToAutofill": { "message": "打开扩展以登录并开始自动填充。" @@ -11687,6 +11684,14 @@ "message": "学习中心", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "如果扩展未打开,您可能需要通过工具栏上的图标 ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " 来打开 Bitwarden。", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "帮助中心", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12068,7 +12073,7 @@ "message": "立即升级" }, "formWillCreateNewFamiliesOrgMessage": { - "message": "完成此表单将创建一个新的家庭组织。您可以从管理控制台升级您的免费组织。" + "message": "完成此表单将创建一个新的家庭版组织。您可以从管理控制台升级您的免费版组织。" }, "upgradeErrorMessage": { "message": "我们在处理您的升级时遇到错误。请重试。" @@ -12119,7 +12124,7 @@ "message": "开始免费家庭版试用" }, "blockClaimedDomainAccountCreation": { - "message": "阻止为已声明的域名创建账户" + "message": "阻止使用已声明的域名创建账户" }, "blockClaimedDomainAccountCreationDesc": { "message": "禁止用户使用已声明域名的电子邮件地址在组织外部创建账户。" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "确定要继续吗?" + }, + "userVerificationFailed": { + "message": "用户验证失败。" } } diff --git a/apps/web/src/locales/zh_TW/messages.json b/apps/web/src/locales/zh_TW/messages.json index add3fa6a84..19456fed39 100644 --- a/apps/web/src/locales/zh_TW/messages.json +++ b/apps/web/src/locales/zh_TW/messages.json @@ -1762,7 +1762,7 @@ "message": "通知已傳送至您的裝置。" }, "notificationSentDevicePart1": { - "message": "在你的裝置或其他裝置上解鎖 Bitwarden" + "message": "在你的裝置或其他裝置上解鎖 Bitwarden " }, "accessAttemptBy": { "message": "來自 $EMAIL$ 的存取嘗試", @@ -2310,7 +2310,7 @@ "message": "匯入資料" }, "onboardingImportDataDetailsPartOne": { - "message": "如果你沒有任何資料要匯入,你可以建立一個", + "message": "如果你沒有任何資料要匯入,你可以建立一個 ", "description": "This will be part of a larger sentence, that will read like this: If you don't have any data to import, you can create a new item instead. (Optional second half: You may need to wait until your administrator confirms your organization membership.)" }, "onboardingImportDataDetailsLink": { @@ -5810,7 +5810,7 @@ "description": "This is the policy description shown in the policy list." }, "organizationDataOwnershipDescContent": { - "message": "All items will be owned and saved to the organization, enabling organization-wide controls, visibility, and reporting. When turned on, a default collection will be available for each member to store items. Learn more about managing the ", + "message": "所有項目將由組織擁有並儲存,啟用組織範圍的控管、可見性及報告。啟用後,每位成員將有預設集合可用於儲存項目。瞭解更多關於管理", "description": "This will be used as part of a larger sentence, broken up to include links. The full sentence will read 'All items will be owned and saved to the organization, enabling organization-wide controls, visibility, and reporting. When turned on, a default collection will be available for each member to store items. Learn more about managing the credential lifecycle.'" }, "organizationDataOwnershipContentAnchor": { @@ -9820,6 +9820,14 @@ "message": "太貴了", "description": "An option for the offboarding survey shown when a user cancels their subscription." }, + "switchToFreePlan": { + "message": "切換至免費方案", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, + "switchToFreeOrg": { + "message": "切換至免費組織", + "description": "An option for the offboarding survey shown when a user cancels their subscription." + }, "freeForOneYear": { "message": "免費 1 年" }, @@ -11339,14 +11347,6 @@ "openedExtensionViewAtRiskPasswords": { "message": "已成功開啟 Bitwarden 瀏覽器擴充套件。你現在可以檢視風險密碼。" }, - "openExtensionManuallyPart1": { - "message": "開啟 Bitwarden 瀏覽器擴充套件時發生問題。請從工具列開啟 Bitwarden 圖示", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, - "openExtensionManuallyPart2": { - "message": "。", - "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'We had trouble opening the Bitwarden browser extension. Open the Bitwarden icon [Bitwarden Icon] from the toolbar.'" - }, "resellerRenewalWarningMsg": { "message": "你的訂閱即將續約。為確保服務不中斷,請於 $RENEWAL_DATE$ 前聯絡 $RESELLER$ 確認續約。", "placeholders": { @@ -11667,11 +11667,8 @@ "bitwardenExtensionInstalled": { "message": "已安裝 Bitwarden 擴充套件!" }, - "openTheBitwardenExtension": { - "message": "開啟 Bitwarden 擴充套件" - }, - "bitwardenExtensionInstalledOpenExtension": { - "message": "已安裝 Bitwarden 擴充套件!開啟擴充套件以登入並開始自動填入。" + "bitwardenExtensionIsInstalled": { + "message": "已安裝 Bitwarden 擴充套件!" }, "openExtensionToAutofill": { "message": "開啟擴充套件以登入並開始自動填入。" @@ -11687,6 +11684,14 @@ "message": "學習中心", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" }, + "openExtensionFromToolbarPart1": { + "message": "如果擴充套件沒有開啟,您可能需要從圖示開啟 Bitwarden ", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, + "openExtensionFromToolbarPart2": { + "message": " 在工具列上。", + "description": "This will be used as part of a larger sentence, broken up to include the Bitwarden icon. The full sentence will read 'If the extension didn't open, you may need to open Bitwarden from the icon [Bitwarden Icon] on the toolbar.'" + }, "gettingStartedWithBitwardenPart3": { "message": "說明中心", "description": "This will be displayed as part of a larger sentence. The whole sentence reads: 'For tips on getting started with Bitwarden visit the Learning Center and Help Center'" @@ -12119,13 +12124,13 @@ "message": "開始免費家庭試用" }, "blockClaimedDomainAccountCreation": { - "message": "Block account creation for claimed domains" + "message": "封鎖已宣告網域的帳號建立" }, "blockClaimedDomainAccountCreationDesc": { - "message": "Prevent users from creating accounts outside of your organization using email addresses from claimed domains." + "message": "防止使用者使用屬於已宣告網域的電子郵件地址,在組織外建立帳號。" }, "blockClaimedDomainAccountCreationPrerequisite": { - "message": "A domain must be claimed before activating this policy." + "message": "在啟用此原則前,必須先宣告網域。" }, "unlockMethodNeededToChangeTimeoutActionDesc": { "message": "設定一個解鎖方式來變更您的密碼庫逾時動作。" @@ -12166,5 +12171,8 @@ }, "confirmNoSelectedCriticalApplicationsDesc": { "message": "您確定要繼續嗎?" + }, + "userVerificationFailed": { + "message": "使用者驗證失敗。" } } diff --git a/bitwarden_license/bit-common/src/dirt/reports/risk-insights/services/domain/risk-insights-orchestrator.service.ts b/bitwarden_license/bit-common/src/dirt/reports/risk-insights/services/domain/risk-insights-orchestrator.service.ts index 51d35570cd..050ec8df94 100644 --- a/bitwarden_license/bit-common/src/dirt/reports/risk-insights/services/domain/risk-insights-orchestrator.service.ts +++ b/bitwarden_license/bit-common/src/dirt/reports/risk-insights/services/domain/risk-insights-orchestrator.service.ts @@ -1063,6 +1063,7 @@ export class RiskInsightsOrchestratorService { this.logService.debug("[RiskInsightsOrchestratorService] Fetching organization ciphers"); const ciphers = await this.cipherService.getAllFromApiForOrganization( orgDetails.organizationId, + true, ); this._ciphersSubject.next(ciphers); this._hasCiphersSubject$.next(ciphers.length > 0); diff --git a/clients.code-workspace b/clients.code-workspace index f7d86d2a24..1dbef721fe 100644 --- a/clients.code-workspace +++ b/clients.code-workspace @@ -82,6 +82,7 @@ "rust-lang.rust-analyzer", "tamasfe.even-better-toml", "vadimcn.vscode-lldb", + "nrwl.angular-console", ], }, } diff --git a/libs/angular/src/billing/components/premium-upgrade-dialog/premium-upgrade-dialog.component.html b/libs/angular/src/billing/components/premium-upgrade-dialog/premium-upgrade-dialog.component.html index 62ac981664..3b89d7cf56 100644 --- a/libs/angular/src/billing/components/premium-upgrade-dialog/premium-upgrade-dialog.component.html +++ b/libs/angular/src/billing/components/premium-upgrade-dialog/premium-upgrade-dialog.component.html @@ -40,7 +40,7 @@ cardDetails.price.amount | currency: "$" }} - / {{ cardDetails.price.cadence }} + / {{ cardDetails.price.cadence | i18n }} diff --git a/libs/angular/src/services/jslib-services.module.ts b/libs/angular/src/services/jslib-services.module.ts index bcb601a993..c8a70cf5af 100644 --- a/libs/angular/src/services/jslib-services.module.ts +++ b/libs/angular/src/services/jslib-services.module.ts @@ -223,6 +223,7 @@ import { I18nService as I18nServiceAbstraction } from "@bitwarden/common/platfor import { LogService } from "@bitwarden/common/platform/abstractions/log.service"; import { MessagingService as MessagingServiceAbstraction } from "@bitwarden/common/platform/abstractions/messaging.service"; import { PlatformUtilsService as PlatformUtilsServiceAbstraction } from "@bitwarden/common/platform/abstractions/platform-utils.service"; +import { RegisterSdkService } from "@bitwarden/common/platform/abstractions/sdk/register-sdk.service"; import { SdkClientFactory } from "@bitwarden/common/platform/abstractions/sdk/sdk-client-factory"; import { SdkService } from "@bitwarden/common/platform/abstractions/sdk/sdk.service"; import { StateService as StateServiceAbstraction } from "@bitwarden/common/platform/abstractions/state.service"; @@ -261,6 +262,7 @@ import { FileUploadService } from "@bitwarden/common/platform/services/file-uplo import { MigrationBuilderService } from "@bitwarden/common/platform/services/migration-builder.service"; import { MigrationRunner } from "@bitwarden/common/platform/services/migration-runner"; import { DefaultSdkService } from "@bitwarden/common/platform/services/sdk/default-sdk.service"; +import { DefaultRegisterSdkService } from "@bitwarden/common/platform/services/sdk/register-sdk.service"; import { StorageServiceProvider } from "@bitwarden/common/platform/services/storage-service.provider"; import { UserAutoUnlockKeyService } from "@bitwarden/common/platform/services/user-auto-unlock-key.service"; import { ValidationService } from "@bitwarden/common/platform/services/validation.service"; @@ -1586,6 +1588,19 @@ const safeProviders: SafeProvider[] = [ SsoLoginServiceAbstraction, ], }), + safeProvider({ + provide: RegisterSdkService, + useClass: DefaultRegisterSdkService, + deps: [ + SdkClientFactory, + EnvironmentService, + PlatformUtilsServiceAbstraction, + AccountServiceAbstraction, + ApiServiceAbstraction, + StateProvider, + ConfigService, + ], + }), safeProvider({ provide: SdkService, useClass: DefaultSdkService, diff --git a/libs/angular/src/vault/vault-filter/components/vault-filter.component.ts b/libs/angular/src/vault/vault-filter/components/vault-filter.component.ts index 9b1d6286a9..659db1bb92 100644 --- a/libs/angular/src/vault/vault-filter/components/vault-filter.component.ts +++ b/libs/angular/src/vault/vault-filter/components/vault-filter.component.ts @@ -88,14 +88,10 @@ export class VaultFilterComponent implements OnInit { this.folders$ = await this.vaultFilterService.buildNestedFolders(); this.collections = await this.initCollections(); - const userCanArchive = await firstValueFrom( - this.cipherArchiveService.userCanArchive$(this.activeUserId), - ); - const showArchiveVault = await firstValueFrom( - this.cipherArchiveService.showArchiveVault$(this.activeUserId), + this.showArchiveVaultFilter = await firstValueFrom( + this.cipherArchiveService.hasArchiveFlagEnabled$(), ); - this.showArchiveVaultFilter = userCanArchive || showArchiveVault; this.isLoaded = true; } diff --git a/libs/common/src/admin-console/models/request/organization-update.request.ts b/libs/common/src/admin-console/models/request/organization-update.request.ts index 1cde23dc67..0fa5dced88 100644 --- a/libs/common/src/admin-console/models/request/organization-update.request.ts +++ b/libs/common/src/admin-console/models/request/organization-update.request.ts @@ -1,10 +1,7 @@ -// FIXME: Update this file to be type safe and remove this and next line -// @ts-strict-ignore import { OrganizationKeysRequest } from "./organization-keys.request"; -export class OrganizationUpdateRequest { - name: string; - businessName: string; - billingEmail: string; - keys: OrganizationKeysRequest; +export interface OrganizationUpdateRequest { + name?: string; + billingEmail?: string; + keys?: OrganizationKeysRequest; } diff --git a/libs/common/src/enums/feature-flag.enum.ts b/libs/common/src/enums/feature-flag.enum.ts index 56a25cb213..cf60dca5d2 100644 --- a/libs/common/src/enums/feature-flag.enum.ts +++ b/libs/common/src/enums/feature-flag.enum.ts @@ -72,6 +72,9 @@ export enum FeatureFlag { /* Innovation */ PM19148_InnovationArchive = "pm-19148-innovation-archive", + + /* UIF */ + RouterFocusManagement = "router-focus-management", } export type AllowedFeatureFlagTypes = boolean | number | string; @@ -150,6 +153,9 @@ export const DefaultFeatureFlagValue = { /* Innovation */ [FeatureFlag.PM19148_InnovationArchive]: FALSE, + + /* UIF */ + [FeatureFlag.RouterFocusManagement]: FALSE, } satisfies Record; export type DefaultFeatureFlagValueType = typeof DefaultFeatureFlagValue; diff --git a/libs/common/src/platform/abstractions/platform-utils.service.ts b/libs/common/src/platform/abstractions/platform-utils.service.ts index 4d126aeab8..0aabd7aa5a 100644 --- a/libs/common/src/platform/abstractions/platform-utils.service.ts +++ b/libs/common/src/platform/abstractions/platform-utils.service.ts @@ -55,4 +55,5 @@ export abstract class PlatformUtilsService { abstract readFromClipboard(): Promise; abstract supportsSecureStorage(): boolean; abstract getAutofillKeyboardShortcut(): Promise; + abstract packageType(): Promise; } diff --git a/libs/common/src/platform/abstractions/sdk/register-sdk.service.ts b/libs/common/src/platform/abstractions/sdk/register-sdk.service.ts new file mode 100644 index 0000000000..b340dd95eb --- /dev/null +++ b/libs/common/src/platform/abstractions/sdk/register-sdk.service.ts @@ -0,0 +1,56 @@ +import { Observable } from "rxjs"; + +import { BitwardenClient, Uuid } from "@bitwarden/sdk-internal"; + +import { UserId } from "../../../types/guid"; +import { Rc } from "../../misc/reference-counting/rc"; +import { Utils } from "../../misc/utils"; + +export class UserNotLoggedInError extends Error { + constructor(userId: UserId) { + super(`User (${userId}) is not logged in`); + } +} + +export class InvalidUuid extends Error { + constructor(uuid: string) { + super(`Invalid UUID: ${uuid}`); + } +} + +/** + * Converts a string to UUID. Will throw an error if the UUID is non valid. + */ +export function asUuid(uuid: string): T { + if (Utils.isGuid(uuid)) { + return uuid as T; + } + + throw new InvalidUuid(uuid); +} + +/** + * Converts a UUID to the string representation. + */ +export function uuidAsString(uuid: T): string { + return uuid as unknown as string; +} + +export abstract class RegisterSdkService { + /** + * Retrieve a client with tokens for a specific user. + * This client is meant exclusively for registrations that require tokens, such as TDE and key-connector. + * + * - If the user is not logged when the subscription is created, the observable will complete + * immediately with {@link UserNotLoggedInError}. + * - If the user is logged in, the observable will emit the client and complete without an error + * when the user logs out. + * + * **WARNING:** Do not use `firstValueFrom(userClient$)`! Any operations on the client must be done within the observable. + * The client will be destroyed when the observable is no longer subscribed to. + * Please let platform know if you need a client that is not destroyed when the observable is no longer subscribed to. + * + * @param userId The user id for which to retrieve the client + */ + abstract registerClient$(userId: UserId): Observable>; +} diff --git a/libs/common/src/platform/abstractions/sdk/sdk.service.ts b/libs/common/src/platform/abstractions/sdk/sdk.service.ts index 9b7f32a8a0..f34bb8fb61 100644 --- a/libs/common/src/platform/abstractions/sdk/sdk.service.ts +++ b/libs/common/src/platform/abstractions/sdk/sdk.service.ts @@ -1,7 +1,8 @@ import { Observable } from "rxjs"; -import { PasswordManagerClient, Uuid } from "@bitwarden/sdk-internal"; +import { PasswordManagerClient, Uuid, DeviceType as SdkDeviceType } from "@bitwarden/sdk-internal"; +import { DeviceType } from "../../../enums"; import { UserId } from "../../../types/guid"; import { Rc } from "../../misc/reference-counting/rc"; import { Utils } from "../../misc/utils"; @@ -18,6 +19,63 @@ export class InvalidUuid extends Error { } } +export function toSdkDevice(device: DeviceType): SdkDeviceType { + switch (device) { + case DeviceType.Android: + return "Android"; + case DeviceType.iOS: + return "iOS"; + case DeviceType.ChromeExtension: + return "ChromeExtension"; + case DeviceType.FirefoxExtension: + return "FirefoxExtension"; + case DeviceType.OperaExtension: + return "OperaExtension"; + case DeviceType.EdgeExtension: + return "EdgeExtension"; + case DeviceType.WindowsDesktop: + return "WindowsDesktop"; + case DeviceType.MacOsDesktop: + return "MacOsDesktop"; + case DeviceType.LinuxDesktop: + return "LinuxDesktop"; + case DeviceType.ChromeBrowser: + return "ChromeBrowser"; + case DeviceType.FirefoxBrowser: + return "FirefoxBrowser"; + case DeviceType.OperaBrowser: + return "OperaBrowser"; + case DeviceType.EdgeBrowser: + return "EdgeBrowser"; + case DeviceType.IEBrowser: + return "IEBrowser"; + case DeviceType.UnknownBrowser: + return "UnknownBrowser"; + case DeviceType.AndroidAmazon: + return "AndroidAmazon"; + case DeviceType.UWP: + return "UWP"; + case DeviceType.SafariBrowser: + return "SafariBrowser"; + case DeviceType.VivaldiBrowser: + return "VivaldiBrowser"; + case DeviceType.VivaldiExtension: + return "VivaldiExtension"; + case DeviceType.SafariExtension: + return "SafariExtension"; + case DeviceType.Server: + return "Server"; + case DeviceType.WindowsCLI: + return "WindowsCLI"; + case DeviceType.MacOsCLI: + return "MacOsCLI"; + case DeviceType.LinuxCLI: + return "LinuxCLI"; + default: + return "SDK"; + } +} + /** * Converts a string to UUID. Will throw an error if the UUID is non valid. */ diff --git a/libs/common/src/platform/services/sdk/default-sdk.service.ts b/libs/common/src/platform/services/sdk/default-sdk.service.ts index eb663c6f92..6e7bcbb197 100644 --- a/libs/common/src/platform/services/sdk/default-sdk.service.ts +++ b/libs/common/src/platform/services/sdk/default-sdk.service.ts @@ -22,14 +22,12 @@ import { KeyService, KdfConfigService, KdfConfig, KdfType } from "@bitwarden/key import { PasswordManagerClient, ClientSettings, - DeviceType as SdkDeviceType, TokenProvider, UnsignedSharedKey, } from "@bitwarden/sdk-internal"; import { ApiService } from "../../../abstractions/api.service"; import { AccountInfo, AccountService } from "../../../auth/abstractions/account.service"; -import { DeviceType } from "../../../enums/device-type.enum"; import { EncryptedString, EncString } from "../../../key-management/crypto/models/enc-string"; import { SecurityStateService } from "../../../key-management/security-state/abstractions/security-state.service"; import { SignedSecurityState, WrappedSigningKey } from "../../../key-management/types"; @@ -39,7 +37,12 @@ import { Environment, EnvironmentService } from "../../abstractions/environment. import { PlatformUtilsService } from "../../abstractions/platform-utils.service"; import { SdkClientFactory } from "../../abstractions/sdk/sdk-client-factory"; import { SdkLoadService } from "../../abstractions/sdk/sdk-load.service"; -import { asUuid, SdkService, UserNotLoggedInError } from "../../abstractions/sdk/sdk.service"; +import { + asUuid, + SdkService, + toSdkDevice, + UserNotLoggedInError, +} from "../../abstractions/sdk/sdk.service"; import { compareValues } from "../../misc/compare-values"; import { Rc } from "../../misc/reference-counting/rc"; import { StateProvider } from "../../state"; @@ -297,65 +300,8 @@ export class DefaultSdkService implements SdkService { return { apiUrl: env.getApiUrl(), identityUrl: env.getIdentityUrl(), - deviceType: this.toDevice(this.platformUtilsService.getDevice()), + deviceType: toSdkDevice(this.platformUtilsService.getDevice()), userAgent: this.userAgent ?? navigator.userAgent, }; } - - private toDevice(device: DeviceType): SdkDeviceType { - switch (device) { - case DeviceType.Android: - return "Android"; - case DeviceType.iOS: - return "iOS"; - case DeviceType.ChromeExtension: - return "ChromeExtension"; - case DeviceType.FirefoxExtension: - return "FirefoxExtension"; - case DeviceType.OperaExtension: - return "OperaExtension"; - case DeviceType.EdgeExtension: - return "EdgeExtension"; - case DeviceType.WindowsDesktop: - return "WindowsDesktop"; - case DeviceType.MacOsDesktop: - return "MacOsDesktop"; - case DeviceType.LinuxDesktop: - return "LinuxDesktop"; - case DeviceType.ChromeBrowser: - return "ChromeBrowser"; - case DeviceType.FirefoxBrowser: - return "FirefoxBrowser"; - case DeviceType.OperaBrowser: - return "OperaBrowser"; - case DeviceType.EdgeBrowser: - return "EdgeBrowser"; - case DeviceType.IEBrowser: - return "IEBrowser"; - case DeviceType.UnknownBrowser: - return "UnknownBrowser"; - case DeviceType.AndroidAmazon: - return "AndroidAmazon"; - case DeviceType.UWP: - return "UWP"; - case DeviceType.SafariBrowser: - return "SafariBrowser"; - case DeviceType.VivaldiBrowser: - return "VivaldiBrowser"; - case DeviceType.VivaldiExtension: - return "VivaldiExtension"; - case DeviceType.SafariExtension: - return "SafariExtension"; - case DeviceType.Server: - return "Server"; - case DeviceType.WindowsCLI: - return "WindowsCLI"; - case DeviceType.MacOsCLI: - return "MacOsCLI"; - case DeviceType.LinuxCLI: - return "LinuxCLI"; - default: - return "SDK"; - } - } } diff --git a/libs/common/src/platform/services/sdk/register-sdk.service.spec.ts b/libs/common/src/platform/services/sdk/register-sdk.service.spec.ts new file mode 100644 index 0000000000..0a05ac8dbf --- /dev/null +++ b/libs/common/src/platform/services/sdk/register-sdk.service.spec.ts @@ -0,0 +1,170 @@ +import { mock, MockProxy } from "jest-mock-extended"; +import { BehaviorSubject, firstValueFrom, of } from "rxjs"; + +import { BitwardenClient } from "@bitwarden/sdk-internal"; + +import { + ObservableTracker, + FakeAccountService, + FakeStateProvider, + mockAccountServiceWith, +} from "../../../../spec"; +import { ApiService } from "../../../abstractions/api.service"; +import { AccountInfo } from "../../../auth/abstractions/account.service"; +import { UserId } from "../../../types/guid"; +import { ConfigService } from "../../abstractions/config/config.service"; +import { Environment, EnvironmentService } from "../../abstractions/environment.service"; +import { PlatformUtilsService } from "../../abstractions/platform-utils.service"; +import { SdkClientFactory } from "../../abstractions/sdk/sdk-client-factory"; +import { SdkLoadService } from "../../abstractions/sdk/sdk-load.service"; +import { UserNotLoggedInError } from "../../abstractions/sdk/sdk.service"; +import { Rc } from "../../misc/reference-counting/rc"; +import { Utils } from "../../misc/utils"; + +import { DefaultRegisterSdkService } from "./register-sdk.service"; + +class TestSdkLoadService extends SdkLoadService { + protected override load(): Promise { + // Simulate successful WASM load + return Promise.resolve(); + } +} + +describe("DefaultRegisterSdkService", () => { + describe("userClient$", () => { + let sdkClientFactory!: MockProxy; + let environmentService!: MockProxy; + let platformUtilsService!: MockProxy; + let configService!: MockProxy; + let service!: DefaultRegisterSdkService; + let accountService!: FakeAccountService; + let fakeStateProvider!: FakeStateProvider; + let apiService!: MockProxy; + + beforeEach(async () => { + await new TestSdkLoadService().loadAndInit(); + + sdkClientFactory = mock(); + environmentService = mock(); + platformUtilsService = mock(); + apiService = mock(); + const mockUserId = Utils.newGuid() as UserId; + accountService = mockAccountServiceWith(mockUserId); + fakeStateProvider = new FakeStateProvider(accountService); + configService = mock(); + + configService.serverConfig$ = new BehaviorSubject(null); + + // Can't use `of(mock())` for some reason + environmentService.environment$ = new BehaviorSubject(mock()); + + service = new DefaultRegisterSdkService( + sdkClientFactory, + environmentService, + platformUtilsService, + accountService, + apiService, + fakeStateProvider, + configService, + ); + }); + + describe("given the user is logged in", () => { + const userId = "0da62ebd-98bb-4f42-a846-64e8555087d7" as UserId; + beforeEach(() => { + environmentService.getEnvironment$ + .calledWith(userId) + .mockReturnValue(new BehaviorSubject(mock())); + accountService.accounts$ = of({ + [userId]: { email: "email", emailVerified: true, name: "name" } as AccountInfo, + }); + }); + + let mockClient!: MockProxy; + + beforeEach(() => { + mockClient = createMockClient(); + sdkClientFactory.createSdkClient.mockResolvedValue(mockClient); + }); + + it("creates an internal SDK client when called the first time", async () => { + await firstValueFrom(service.registerClient$(userId)); + + expect(sdkClientFactory.createSdkClient).toHaveBeenCalled(); + }); + + it("does not create an SDK client when called the second time with same userId", async () => { + const subject_1 = new BehaviorSubject | undefined>(undefined); + const subject_2 = new BehaviorSubject | undefined>(undefined); + + // Use subjects to ensure the subscription is kept alive + service.registerClient$(userId).subscribe(subject_1); + service.registerClient$(userId).subscribe(subject_2); + + // Wait for the next tick to ensure all async operations are done + await new Promise(process.nextTick); + + expect(subject_1.value.take().value).toBe(mockClient); + expect(subject_2.value.take().value).toBe(mockClient); + expect(sdkClientFactory.createSdkClient).toHaveBeenCalledTimes(1); + }); + + it("destroys the internal SDK client when all subscriptions are closed", async () => { + const subject_1 = new BehaviorSubject | undefined>(undefined); + const subject_2 = new BehaviorSubject | undefined>(undefined); + const subscription_1 = service.registerClient$(userId).subscribe(subject_1); + const subscription_2 = service.registerClient$(userId).subscribe(subject_2); + await new Promise(process.nextTick); + + subscription_1.unsubscribe(); + subscription_2.unsubscribe(); + + await new Promise(process.nextTick); + expect(mockClient.free).toHaveBeenCalledTimes(1); + }); + + it("destroys the internal SDK client when the account is removed (logout)", async () => { + const accounts$ = new BehaviorSubject({ + [userId]: { email: "email", emailVerified: true, name: "name" } as AccountInfo, + }); + accountService.accounts$ = accounts$; + + const userClientTracker = new ObservableTracker(service.registerClient$(userId), false); + await userClientTracker.pauseUntilReceived(1); + + accounts$.next({}); + await userClientTracker.expectCompletion(); + + expect(mockClient.free).toHaveBeenCalledTimes(1); + }); + }); + + describe("given the user is not logged in", () => { + const userId = "0da62ebd-98bb-4f42-a846-64e8555087d7" as UserId; + + beforeEach(() => { + environmentService.getEnvironment$ + .calledWith(userId) + .mockReturnValue(new BehaviorSubject(mock())); + accountService.accounts$ = of({}); + }); + + it("throws UserNotLoggedInError when user has no account", async () => { + const result = () => firstValueFrom(service.registerClient$(userId)); + + await expect(result).rejects.toThrow(UserNotLoggedInError); + }); + }); + }); +}); + +function createMockClient(): MockProxy { + const client = mock(); + client.platform.mockReturnValue({ + state: jest.fn().mockReturnValue(mock()), + load_flags: jest.fn().mockReturnValue(mock()), + free: mock(), + [Symbol.dispose]: jest.fn(), + }); + return client; +} diff --git a/libs/common/src/platform/services/sdk/register-sdk.service.ts b/libs/common/src/platform/services/sdk/register-sdk.service.ts new file mode 100644 index 0000000000..a222807640 --- /dev/null +++ b/libs/common/src/platform/services/sdk/register-sdk.service.ts @@ -0,0 +1,196 @@ +import { + combineLatest, + concatMap, + Observable, + shareReplay, + map, + distinctUntilChanged, + tap, + switchMap, + BehaviorSubject, + of, + takeWhile, + throwIfEmpty, + firstValueFrom, +} from "rxjs"; + +import { PasswordManagerClient, ClientSettings, TokenProvider } from "@bitwarden/sdk-internal"; + +import { ApiService } from "../../../abstractions/api.service"; +import { AccountService } from "../../../auth/abstractions/account.service"; +import { ConfigService } from "../../../platform/abstractions/config/config.service"; +import { UserId } from "../../../types/guid"; +import { Environment, EnvironmentService } from "../../abstractions/environment.service"; +import { PlatformUtilsService } from "../../abstractions/platform-utils.service"; +import { RegisterSdkService } from "../../abstractions/sdk/register-sdk.service"; +import { SdkClientFactory } from "../../abstractions/sdk/sdk-client-factory"; +import { SdkLoadService } from "../../abstractions/sdk/sdk-load.service"; +import { toSdkDevice, UserNotLoggedInError } from "../../abstractions/sdk/sdk.service"; +import { Rc } from "../../misc/reference-counting/rc"; +import { StateProvider } from "../../state"; + +import { initializeState } from "./client-managed-state"; + +// A symbol that represents an overridden client that is explicitly set to undefined, +// blocking the creation of an internal client for that user. +const UnsetClient = Symbol("UnsetClient"); + +/** + * A token provider that exposes the access token to the SDK. + */ +class JsTokenProvider implements TokenProvider { + constructor( + private apiService: ApiService, + private userId?: UserId, + ) {} + + async get_access_token(): Promise { + if (this.userId == null) { + return undefined; + } + + return await this.apiService.getActiveBearerToken(this.userId); + } +} + +export class DefaultRegisterSdkService implements RegisterSdkService { + private sdkClientOverrides = new BehaviorSubject<{ + [userId: UserId]: Rc | typeof UnsetClient; + }>({}); + private sdkClientCache = new Map>>(); + + client$ = this.environmentService.environment$.pipe( + concatMap(async (env) => { + await SdkLoadService.Ready; + const settings = this.toSettings(env); + const client = await this.sdkClientFactory.createSdkClient( + new JsTokenProvider(this.apiService), + settings, + ); + await this.loadFeatureFlags(client); + return client; + }), + shareReplay({ refCount: true, bufferSize: 1 }), + ); + + constructor( + private sdkClientFactory: SdkClientFactory, + private environmentService: EnvironmentService, + private platformUtilsService: PlatformUtilsService, + private accountService: AccountService, + private apiService: ApiService, + private stateProvider: StateProvider, + private configService: ConfigService, + private userAgent: string | null = null, + ) {} + + registerClient$(userId: UserId): Observable> { + return this.sdkClientOverrides.pipe( + takeWhile((clients) => clients[userId] !== UnsetClient, false), + map((clients) => { + if (clients[userId] === UnsetClient) { + throw new Error("Encountered UnsetClient even though it should have been filtered out"); + } + return clients[userId] as Rc; + }), + distinctUntilChanged(), + switchMap((clientOverride) => { + if (clientOverride) { + return of(clientOverride); + } + + return this.internalClient$(userId); + }), + takeWhile((client) => client !== undefined, false), + throwIfEmpty(() => new UserNotLoggedInError(userId)), + ); + } + + /** + * This method is used to create a client for a specific user by using the existing state of the application. + * This client is token-only and does not initialize any encryption keys. + * @param userId The user id for which to create the client + * @returns An observable that emits the client for the user + */ + private internalClient$(userId: UserId): Observable> { + const cached = this.sdkClientCache.get(userId); + if (cached !== undefined) { + return cached; + } + + const account$ = this.accountService.accounts$.pipe( + map((accounts) => accounts[userId]), + distinctUntilChanged(), + ); + + const client$ = combineLatest([ + this.environmentService.getEnvironment$(userId), + account$, + SdkLoadService.Ready, // Makes sure we wait (once) for the SDK to be loaded + ]).pipe( + // switchMap is required to allow the clean-up logic to be executed when `combineLatest` emits a new value. + switchMap(([env, account]) => { + // Create our own observable to be able to implement clean-up logic + return new Observable>((subscriber) => { + const createAndInitializeClient = async () => { + if (env == null || account == null) { + return undefined; + } + + const settings = this.toSettings(env); + const client = await this.sdkClientFactory.createSdkClient( + new JsTokenProvider(this.apiService, userId), + settings, + ); + + // Initialize the SDK managed database and the client managed repositories. + await initializeState(userId, client.platform().state(), this.stateProvider); + + await this.loadFeatureFlags(client); + + return client; + }; + + let client: Rc | undefined; + createAndInitializeClient() + .then((c) => { + client = c === undefined ? undefined : new Rc(c); + + subscriber.next(client); + }) + .catch((e) => { + subscriber.error(e); + }); + + return () => client?.markForDisposal(); + }); + }), + tap({ finalize: () => this.sdkClientCache.delete(userId) }), + shareReplay({ refCount: true, bufferSize: 1 }), + ); + + this.sdkClientCache.set(userId, client$); + return client$; + } + + private async loadFeatureFlags(client: PasswordManagerClient) { + const serverConfig = await firstValueFrom(this.configService.serverConfig$); + + const featureFlagMap = new Map( + Object.entries(serverConfig?.featureStates ?? {}) + .filter(([, value]) => typeof value === "boolean") // The SDK only supports boolean feature flags at this time + .map(([key, value]) => [key, value] as [string, boolean]), + ); + + client.platform().load_flags(featureFlagMap); + } + + private toSettings(env: Environment): ClientSettings { + return { + apiUrl: env.getApiUrl(), + identityUrl: env.getIdentityUrl(), + deviceType: toSdkDevice(this.platformUtilsService.getDevice()), + userAgent: this.userAgent ?? navigator.userAgent, + }; + } +} diff --git a/libs/common/src/services/api.service.ts b/libs/common/src/services/api.service.ts index 633c7eedcc..5f4d3de11b 100644 --- a/libs/common/src/services/api.service.ts +++ b/libs/common/src/services/api.service.ts @@ -1325,6 +1325,11 @@ export class ApiService implements ApiServiceAbstraction { "Bitwarden-Client-Version", await this.platformUtilsService.getApplicationVersionNumber(), ); + + const packageType = await this.platformUtilsService.packageType(); + if (packageType != null) { + request.headers.set("Bitwarden-Package-Type", packageType); + } return this.nativeFetch(request); } diff --git a/libs/common/src/tools/send/enums/send-type.ts b/libs/common/src/tools/send/enums/send-type.ts index 5b03c71d22..c2c5bdc6f6 100644 --- a/libs/common/src/tools/send/enums/send-type.ts +++ b/libs/common/src/tools/send/enums/send-type.ts @@ -1,6 +1,10 @@ -// FIXME: update to use a const object instead of a typescript enum -// eslint-disable-next-line @bitwarden/platform/no-enums -export enum SendType { - Text = 0, - File = 1, -} +/** A type of Send. */ +export const SendType = Object.freeze({ + /** Send contains plain text. */ + Text: 0, + /** Send contains a file. */ + File: 1, +} as const); + +/** A type of Send. */ +export type SendType = (typeof SendType)[keyof typeof SendType]; diff --git a/libs/common/src/vault/services/cipher.service.ts b/libs/common/src/vault/services/cipher.service.ts index 1e7e5302d4..72c1ca4091 100644 --- a/libs/common/src/vault/services/cipher.service.ts +++ b/libs/common/src/vault/services/cipher.service.ts @@ -141,6 +141,8 @@ export class CipherService implements CipherServiceAbstraction { * Usage of the {@link CipherViewLike} type is recommended to ensure both `CipherView` and `CipherListView` are supported. */ cipherListViews$ = perUserCache$((userId: UserId) => { + let decryptStartTime: number; + return this.configService.getFeatureFlag$(FeatureFlag.PM22134SdkCipherListView).pipe( switchMap((useSdk) => { if (!useSdk) { @@ -158,11 +160,23 @@ export class CipherService implements CipherServiceAbstraction { (cipherData) => new Cipher(cipherData, localData?.[cipherData.id as CipherId]), ), ), + tap(() => { + decryptStartTime = performance.now(); + }), switchMap(async (ciphers) => { const [decrypted, failures] = await this.decryptCiphersWithSdk(ciphers, userId, false); await this.setFailedDecryptedCiphers(failures, userId); return decrypted; }), + tap((decrypted) => { + this.logService.measure( + decryptStartTime, + "Vault", + "CipherService", + "listView decrypt complete", + [["Items", decrypted.length]], + ); + }), ); }), ); diff --git a/libs/components/src/a11y/index.ts b/libs/components/src/a11y/index.ts index 2a723f14c9..ff53375ab0 100644 --- a/libs/components/src/a11y/index.ts +++ b/libs/components/src/a11y/index.ts @@ -1,3 +1,4 @@ export * from "./a11y-title.directive"; export * from "./aria-disabled-click-capture.service"; export * from "./aria-disable.directive"; +export * from "./router-focus-manager.service"; diff --git a/libs/components/src/a11y/router-focus-manager.service.ts b/libs/components/src/a11y/router-focus-manager.service.ts new file mode 100644 index 0000000000..27c4e0f9b1 --- /dev/null +++ b/libs/components/src/a11y/router-focus-manager.service.ts @@ -0,0 +1,65 @@ +import { inject, Injectable } from "@angular/core"; +import { takeUntilDestroyed } from "@angular/core/rxjs-interop"; +import { NavigationEnd, Router } from "@angular/router"; +import { skip, filter, map, combineLatestWith, tap } from "rxjs"; + +import { FeatureFlag } from "@bitwarden/common/enums/feature-flag.enum"; +import { ConfigService } from "@bitwarden/common/platform/abstractions/config/config.service"; + +@Injectable({ providedIn: "root" }) +export class RouterFocusManagerService { + private router = inject(Router); + + private configService = inject(ConfigService); + + /** + * Handles SPA route focus management. SPA apps don't automatically notify screenreader + * users that navigation has occured or move the user's focus to the content they are + * navigating to, so we need to do it. + * + * By default, we focus the `main` after an internal route navigation. + * + * Consumers can opt out of the passing the following to the `info` input: + * `` + * + * Or, consumers can use the autofocus directive on an applicable interactive element. + * The autofocus directive will take precedence over this route focus pipeline. + * + * Example of where you might want to manually opt out: + * - Tab component causes a route navigation, but the tab content should be focused, + * not the whole `main` + * + * Note that router events that cause a fully new page to load (like switching between + * products) will not follow this pipeline. Instead, those will automatically bring + * focus to the top of the html document as if it were a full page load. So those links + * do not need to manually opt out of this pipeline. + */ + start$ = this.router.events.pipe( + takeUntilDestroyed(), + filter((navEvent) => navEvent instanceof NavigationEnd), + /** + * On first page load, we do not want to skip the user over the navigation content, + * so we opt out of the default focus management behavior. + */ + skip(1), + combineLatestWith(this.configService.getFeatureFlag$(FeatureFlag.RouterFocusManagement)), + filter(([_navEvent, flagEnabled]) => flagEnabled), + map(() => { + const currentNavData = this.router.getCurrentNavigation()?.extras; + + const info = currentNavData?.info as { focusMainAfterNav?: boolean } | undefined; + + return info; + }), + filter((currentNavInfo) => { + return currentNavInfo === undefined ? true : currentNavInfo?.focusMainAfterNav !== false; + }), + tap(() => { + const mainEl = document.querySelector("main"); + + if (mainEl) { + mainEl.focus(); + } + }), + ); +} diff --git a/libs/components/src/banner/banner.component.html b/libs/components/src/banner/banner.component.html index bfde8135da..19875d69f3 100644 --- a/libs/components/src/banner/banner.component.html +++ b/libs/components/src/banner/banner.component.html @@ -1,11 +1,11 @@
    - @if (icon(); as icon) { - + @if (displayIcon(); as icon) { + } diff --git a/libs/components/src/banner/banner.component.ts b/libs/components/src/banner/banner.component.ts index 1f9bf960d4..2f36353cfc 100644 --- a/libs/components/src/banner/banner.component.ts +++ b/libs/components/src/banner/banner.component.ts @@ -1,5 +1,4 @@ -import { CommonModule } from "@angular/common"; -import { Component, OnInit, Output, EventEmitter, input, model } from "@angular/core"; +import { ChangeDetectionStrategy, Component, computed, input, output } from "@angular/core"; import { I18nPipe } from "@bitwarden/ui-common"; @@ -13,47 +12,69 @@ const defaultIcon: Record = { warning: "bwi-exclamation-triangle", danger: "bwi-error", }; -/** - * Banners are used for important communication with the user that needs to be seen right away, but has - * little effect on the experience. Banners appear at the top of the user's screen on page load and - * persist across all pages a user navigates to. - * - They should always be dismissible and never use a timeout. If a user dismisses a banner, it should not reappear during that same active session. - * - Use banners sparingly, as they can feel intrusive to the user if they appear unexpectedly. Their effectiveness may decrease if too many are used. - * - Avoid stacking multiple banners. - * - Banners can contain a button or anchor that uses the `bitLink` directive with `linkType="secondary"`. +/** + * Banners are used for important communication with the user that needs to be seen right away, but has + * little effect on the experience. Banners appear at the top of the user's screen on page load and + * persist across all pages a user navigates to. + * + * - They should always be dismissible and never use a timeout. If a user dismisses a banner, it should not reappear during that same active session. + * - Use banners sparingly, as they can feel intrusive to the user if they appear unexpectedly. Their effectiveness may decrease if too many are used. + * - Avoid stacking multiple banners. + * - Banners can contain a button or anchor that uses the `bitLink` directive with `linkType="secondary"`. */ -// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush -// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection @Component({ selector: "bit-banner", templateUrl: "./banner.component.html", - imports: [CommonModule, IconButtonModule, I18nPipe], + imports: [IconButtonModule, I18nPipe], host: { // Account for bit-layout's padding class: "tw-flex tw-flex-col [bit-layout_&]:-tw-mx-8 [bit-layout_&]:-tw-my-6 [bit-layout_&]:tw-pb-6", }, + changeDetection: ChangeDetectionStrategy.OnPush, }) -export class BannerComponent implements OnInit { +export class BannerComponent { + /** + * The type of banner, which determines its color scheme. + */ readonly bannerType = input("info"); - // passing `null` will remove the icon from element from the banner - readonly icon = model(); + /** + * The icon to display. If not provided, a default icon based on bannerType will be used. Explicitly passing null will remove the icon. + */ + readonly icon = input(); + + /** + * Whether to use ARIA alert role for screen readers. + */ readonly useAlertRole = input(true); + + /** + * Whether to show the close button. + */ readonly showClose = input(true); - // FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals - // eslint-disable-next-line @angular-eslint/prefer-output-emitter-ref - @Output() onClose = new EventEmitter(); + /** + * Emitted when the banner is closed via the close button. + */ + readonly onClose = output(); - ngOnInit(): void { - if (!this.icon() && this.icon() !== null) { - this.icon.set(defaultIcon[this.bannerType()]); + /** + * The computed icon to display, falling back to the default icon for the banner type. + * Returns null if icon is explicitly set to null (to hide the icon). + */ + protected readonly displayIcon = computed(() => { + // If icon is explicitly null, don't show any icon + if (this.icon() === null) { + return null; } - } - get bannerClass() { + // If icon is undefined, fall back to default icon + return this.icon() ?? defaultIcon[this.bannerType()]; + }); + + protected readonly bannerClass = computed(() => { switch (this.bannerType()) { case "danger": return "tw-bg-danger-100 tw-border-b-danger-700"; @@ -64,5 +85,5 @@ export class BannerComponent implements OnInit { case "warning": return "tw-bg-warning-100 tw-border-b-warning-700"; } - } + }); } diff --git a/libs/components/src/dialog/dialog/dialog.component.html b/libs/components/src/dialog/dialog/dialog.component.html index 83cfa21ed2..c077dc2ceb 100644 --- a/libs/components/src/dialog/dialog/dialog.component.html +++ b/libs/components/src/dialog/dialog/dialog.component.html @@ -75,13 +75,19 @@ @let isScrollable = isScrollable$ | async; @let showFooterBorder = (!bodyHasScrolledFrom().top && isScrollable) || bodyHasScrolledFrom().bottom; +