From 7aa709a04fc57440715102f173e82c471c6a0e3d Mon Sep 17 00:00:00 2001 From: Oscar Hinton Date: Mon, 8 May 2023 16:34:22 +0200 Subject: [PATCH 01/37] [PM-2183] Remove duplicated electron packages (#5381) --- package-lock.json | 60 ----------------------------------------------- package.json | 2 -- 2 files changed, 62 deletions(-) diff --git a/package-lock.json b/package-lock.json index b8011231b85..49414111c68 100644 --- a/package-lock.json +++ b/package-lock.json @@ -126,8 +126,6 @@ "electron": "24.1.1", "electron-builder": "^23.6.0", "electron-log": "4.4.8", - "electron-notarize": "1.2.2", - "electron-rebuild": "3.2.9", "electron-reload": "2.0.0-alpha.1", "electron-store": "8.1.0", "electron-updater": "5.3.0", @@ -22334,35 +22332,6 @@ "integrity": "sha512-QQ4GvrXO+HkgqqEOYbi+DHL7hj5JM+nHi/j+qrN9zeeXVKy8ZABgbu4CnG+BBqDZ2+tbeq9tUC4DZfIWFU5AZA==", "dev": true }, - "node_modules/electron-notarize": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/electron-notarize/-/electron-notarize-1.2.2.tgz", - "integrity": "sha512-ZStVWYcWI7g87/PgjPJSIIhwQXOaw4/XeXU+pWqMMktSLHaGMLHdyPPN7Cmao7+Cr7fYufA16npdtMndYciHNw==", - "deprecated": "Please use @electron/notarize moving forward. There is no API change, just a package name change", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "fs-extra": "^9.0.1" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/electron-notarize/node_modules/fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", - "dev": true, - "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/electron-osx-sign": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/electron-osx-sign/-/electron-osx-sign-0.6.0.tgz", @@ -22427,35 +22396,6 @@ "mime": "^2.5.2" } }, - "node_modules/electron-rebuild": { - "version": "3.2.9", - "resolved": "https://registry.npmjs.org/electron-rebuild/-/electron-rebuild-3.2.9.tgz", - "integrity": "sha512-FkEZNFViUem3P0RLYbZkUjC8LUFIK+wKq09GHoOITSJjfDAVQv964hwaNseTTWt58sITQX3/5fHNYcTefqaCWw==", - "deprecated": "Please use @electron/rebuild moving forward. There is no API change, just a package name change", - "dev": true, - "dependencies": { - "@malept/cross-spawn-promise": "^2.0.0", - "chalk": "^4.0.0", - "debug": "^4.1.1", - "detect-libc": "^2.0.1", - "fs-extra": "^10.0.0", - "got": "^11.7.0", - "lzma-native": "^8.0.5", - "node-abi": "^3.0.0", - "node-api-version": "^0.1.4", - "node-gyp": "^9.0.0", - "ora": "^5.1.0", - "semver": "^7.3.5", - "tar": "^6.0.5", - "yargs": "^17.0.1" - }, - "bin": { - "electron-rebuild": "lib/src/cli.js" - }, - "engines": { - "node": ">=12.13.0" - } - }, "node_modules/electron-reload": { "version": "2.0.0-alpha.1", "resolved": "https://registry.npmjs.org/electron-reload/-/electron-reload-2.0.0-alpha.1.tgz", diff --git a/package.json b/package.json index 1eaaed3b96f..4404bf9b986 100644 --- a/package.json +++ b/package.json @@ -90,8 +90,6 @@ "electron": "24.1.1", "electron-builder": "^23.6.0", "electron-log": "4.4.8", - "electron-notarize": "1.2.2", - "electron-rebuild": "3.2.9", "electron-reload": "2.0.0-alpha.1", "electron-store": "8.1.0", "electron-updater": "5.3.0", From 01c7b1bf12f2ec9e40a26c3531594504ca9c568b Mon Sep 17 00:00:00 2001 From: mimartin12 <77340197+mimartin12@users.noreply.github.com> Date: Mon, 8 May 2023 09:20:44 -0600 Subject: [PATCH 02/37] [DEVOPS-1330] - Deploy to GH pages (#5366) --- .github/workflows/release-web.yml | 103 +++++++++++++++++------------- 1 file changed, 58 insertions(+), 45 deletions(-) diff --git a/.github/workflows/release-web.yml b/.github/workflows/release-web.yml index 75e4aeb48c7..e2ebdb9cb1c 100644 --- a/.github/workflows/release-web.yml +++ b/.github/workflows/release-web.yml @@ -139,25 +139,41 @@ jobs: run: docker logout - cfpages-deploy: - name: Deploy Web Vault to CloudFlare Pages branch + ghpages-deploy: + name: Deploy to GitHub Pages runs-on: ubuntu-20.04 needs: - setup - - self-host env: _RELEASE_VERSION: ${{ needs.setup.outputs.release_version }} - _TAG_VERSION: ${{ needs.setup.outputs.release_version }} + _TAG_VERSION: ${{ needs.setup.outputs.tag_version }} + _BRANCH: "v${{ needs.setup.outputs.release_version }}-deploy" steps: - - name: Checkout Repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + - name: Login to Azure - CI Subscription + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + with: + creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} + + - name: Retrieve bot secrets + id: retrieve-bot-secrets + uses: bitwarden/gh-actions/get-keyvault-secrets@34ecb67b2a357795dc893549df0795e7383ff50f + with: + keyvault: bitwarden-ci + secrets: "github-pat-bitwarden-devops-bot-repo-scope" + + - name: Checkout GH pages repo + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 + with: + repository: bitwarden/web-vault-pages + path: ghpages-deployment + token: ${{ steps.retrieve-bot-secrets.outputs.github-pat-bitwarden-devops-bot-repo-scope }} - name: Download latest cloud asset if: ${{ github.event.inputs.release_type != 'Dry Run' }} uses: bitwarden/gh-actions/download-artifacts@34ecb67b2a357795dc893549df0795e7383ff50f with: workflow: build-web.yml - path: apps/web + path: assets workflow_conclusion: success branch: ${{ github.ref_name }} artifacts: web-*-cloud-COMMERCIAL.zip @@ -167,56 +183,53 @@ jobs: uses: bitwarden/gh-actions/download-artifacts@34ecb67b2a357795dc893549df0795e7383ff50f with: workflow: build-web.yml - path: apps/web + path: assets workflow_conclusion: success branch: master artifacts: web-*-cloud-COMMERCIAL.zip - name: Unzip build asset - working-directory: apps/web + working-directory: assets run: unzip web-*-cloud-COMMERCIAL.zip - - - name: Checkout Repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 - with: - ref: cf-pages - path: deployment - - - name: Setup git config + + - name: Create new branch run: | - git config --global user.name = "GitHub Action Bot" - git config --global user.email = "<>" + cd ${{ github.workspace }}/ghpages-deployment + git config user.name = "GitHub Action Bot" + git config user.email = "<>" git config --global url."https://github.com/".insteadOf ssh://git@github.com/ git config --global url."https://".insteadOf ssh:// - - - name: Deploy CloudFlare Pages + git checkout -b ${_BRANCH} + + - name: Copy build files run: | - rm -rf ./* - cp -R ../apps/web/build/* . - working-directory: deployment - - - name: Create cf-pages-deploy branch + rm -rf ${{ github.workspace }}/ghpages-deployment/* + cp -Rf ${{ github.workspace }}/assets/build/* ghpages-deployment/ + + - name: Commit and push changes + working-directory: ghpages-deployment run: | - git switch -c cf-pages-deploy-$_TAG_VERSION git add . - git commit -m "Staging deploy ${{ needs.setup.outputs.release_version }}" + git commit -m "Deploy Web v${_RELEASE_VERSION} to GitHub Pages" + git push --set-upstream origin ${_BRANCH} --force - if [[ "${{ github.event.inputs.release_type }}" != "Dry Run" ]]; then - git push -u origin cf-pages-deploy-$_TAG_VERSION - fi - working-directory: deployment - - - name: Create CloudFlare Pages Deploy PR - if: ${{ github.event.inputs.release_type != 'Dry Run' }} + - name: Create GitHub Pages Deploy PR + working-directory: ghpages-deployment env: - PR_BRANCH: cf-pages-deploy-${{ env._TAG_VERSION }} - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GITHUB_TOKEN: ${{ steps.retrieve-bot-secrets.outputs.github-pat-bitwarden-devops-bot-repo-scope }} run: | - gh pr create --title "Deploy $_RELEASE_VERSION to CloudFlare Pages" \ - --body "Deploying $_RELEASE_VERSION" \ - --base cf-pages \ - --head "$PR_BRANCH" - + if [[ "${{ github.event.inputs.release_type }}" == "Dry Run" ]]; then + gh pr create --title "Deploy v${_RELEASE_VERSION} to GitHub Pages" \ + --draft \ + --body "Deploying v${_RELEASE_VERSION}" \ + --base master \ + --head "${_BRANCH}" + else + gh pr create --title "Deploy v${_RELEASE_VERSION} to GitHub Pages" \ + --body "Deploying v${_RELEASE_VERSION}" \ + --base master \ + --head "${_BRANCH}" + fi release: name: Create GitHub Release @@ -224,7 +237,7 @@ jobs: needs: - setup - self-host - - cfpages-deploy + - ghpages-deploy steps: - name: Create GitHub deployment if: ${{ github.event.inputs.release_type != 'Dry Run' }} @@ -281,7 +294,7 @@ jobs: - name: Update deployment status to Success if: ${{ github.event.inputs.release_type != 'Dry Run' && success() }} - uses: chrnorm/deployment-status@2afb7d27101260f4a764219439564d954d10b5b0 # v2.0.1 + uses: chrnorm/deployment-status@d42cde7132fcec920de534fffc3be83794335c00 # v2.0.5 with: token: '${{ secrets.GITHUB_TOKEN }}' environment-url: http://vault.bitwarden.com @@ -290,7 +303,7 @@ jobs: - name: Update deployment status to Failure if: ${{ github.event.inputs.release_type != 'Dry Run' && failure() }} - uses: chrnorm/deployment-status@2afb7d27101260f4a764219439564d954d10b5b0 # v2.0.1 + uses: chrnorm/deployment-status@d42cde7132fcec920de534fffc3be83794335c00 # v2.0.5 with: token: '${{ secrets.GITHUB_TOKEN }}' environment-url: http://vault.bitwarden.com From e5a9aaee196be9a743f6edcf21dac14656d5b360 Mon Sep 17 00:00:00 2001 From: Oscar Hinton Date: Mon, 8 May 2023 17:50:57 +0200 Subject: [PATCH 03/37] Fix renovate branch name (#5395) --- .github/renovate.json | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/renovate.json b/.github/renovate.json index 4a144814d58..d6a74837f31 100644 --- a/.github/renovate.json +++ b/.github/renovate.json @@ -15,6 +15,7 @@ "packageRules": [ { "groupName": "{{manager}}", + "matchManagers": ["cargo", "github-actions", "npm", "nuget"], "matchPackagePatterns": ["*"], "matchUpdateTypes": ["minor", "patch"] }, From ad7abe86efe6b827e0c541fbdd077780411d321b Mon Sep 17 00:00:00 2001 From: Oscar Hinton Date: Mon, 8 May 2023 18:58:57 +0200 Subject: [PATCH 04/37] Use separate rules per manager (#5399) --- .github/renovate.json | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/.github/renovate.json b/.github/renovate.json index d6a74837f31..51ae0560d30 100644 --- a/.github/renovate.json +++ b/.github/renovate.json @@ -14,9 +14,18 @@ "enabledManagers": ["cargo", "github-actions", "npm"], "packageRules": [ { - "groupName": "{{manager}}", - "matchManagers": ["cargo", "github-actions", "npm", "nuget"], - "matchPackagePatterns": ["*"], + "groupName": "cargo minor", + "matchManagers": ["cargo"], + "matchUpdateTypes": ["minor", "patch"] + }, + { + "groupName": "gh minor", + "matchManagers": ["github-actions"], + "matchUpdateTypes": ["minor", "patch"] + }, + { + "groupName": "npm minor", + "matchManagers": ["npm"], "matchUpdateTypes": ["minor", "patch"] }, { From 0b9ed77b8e4ace8561a0fe2319eff3f4f4009497 Mon Sep 17 00:00:00 2001 From: Robyn MacCallum Date: Mon, 8 May 2023 13:21:45 -0400 Subject: [PATCH 05/37] [PM-2088] Remove extra click handling from Collection row (#5353) --- .../components/vault-items/vault-collection-row.component.html | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/web/src/app/vault/components/vault-items/vault-collection-row.component.html b/apps/web/src/app/vault/components/vault-items/vault-collection-row.component.html index 6a4a17db6d7..cc1b693ab3b 100644 --- a/apps/web/src/app/vault/components/vault-items/vault-collection-row.component.html +++ b/apps/web/src/app/vault/components/vault-items/vault-collection-row.component.html @@ -24,6 +24,7 @@ [routerLink]="[]" [queryParams]="{ collectionId: collection.id }" queryParamsHandling="merge" + appStopProp > {{ collection.name }} From 9bbaae6ef2da09f04aef5fd75f7b0fbb1f4a6d52 Mon Sep 17 00:00:00 2001 From: Robyn MacCallum Date: Mon, 8 May 2023 13:22:06 -0400 Subject: [PATCH 06/37] [PM-2089] Fix Collections not nesting properly in the Org Vault (#5369) --- .../app/vault/utils/collection-utils.spec.ts | 28 +++++++++++++++++++ .../src/app/vault/utils/collection-utils.ts | 4 ++- 2 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 apps/web/src/app/vault/utils/collection-utils.spec.ts diff --git a/apps/web/src/app/vault/utils/collection-utils.spec.ts b/apps/web/src/app/vault/utils/collection-utils.spec.ts new file mode 100644 index 00000000000..17c213e151e --- /dev/null +++ b/apps/web/src/app/vault/utils/collection-utils.spec.ts @@ -0,0 +1,28 @@ +import { CollectionView } from "@bitwarden/common/admin-console/models/view/collection.view"; + +import { getNestedCollectionTree } from "./collection-utils"; + +describe("CollectionUtils Service", () => { + describe("getNestedCollectionTree", () => { + it("should return collections properly sorted if provided out of order", () => { + // Arrange + const collections: CollectionView[] = []; + + const parentCollection = new CollectionView(); + parentCollection.name = "Parent"; + + const childCollection = new CollectionView(); + childCollection.name = "Parent/Child"; + + collections.push(childCollection); + collections.push(parentCollection); + + // Act + const result = getNestedCollectionTree(collections); + + // Assert + expect(result[0].node.name).toBe("Parent"); + expect(result[0].children[0].node.name).toBe("Child"); + }); + }); +}); diff --git a/apps/web/src/app/vault/utils/collection-utils.ts b/apps/web/src/app/vault/utils/collection-utils.ts index 8e839398977..bf018b52fc4 100644 --- a/apps/web/src/app/vault/utils/collection-utils.ts +++ b/apps/web/src/app/vault/utils/collection-utils.ts @@ -17,7 +17,9 @@ export function getNestedCollectionTree( // Collections need to be cloned because ServiceUtils.nestedTraverse actively // modifies the names of collections. // These changes risk affecting collections store in StateService. - const clonedCollections = collections.map(cloneCollection); + const clonedCollections = collections + .sort((a, b) => a.name.localeCompare(b.name)) + .map(cloneCollection); const nodes: TreeNode[] = []; clonedCollections.forEach((collection) => { From 96ba8b323317d2fb30dda4669241c6b21d98a600 Mon Sep 17 00:00:00 2001 From: Oscar Hinton Date: Tue, 9 May 2023 11:26:13 +0200 Subject: [PATCH 07/37] [PM-1950] Add support for a loading state in dialogs (#5268) --- .../src/dialog/dialog/dialog.component.html | 19 +++- .../src/dialog/dialog/dialog.component.ts | 11 +++ .../src/dialog/dialog/dialog.stories.ts | 93 ++++++++++--------- 3 files changed, 79 insertions(+), 44 deletions(-) diff --git a/libs/components/src/dialog/dialog/dialog.component.html b/libs/components/src/dialog/dialog/dialog.component.html index bb3721795fb..773b764b22e 100644 --- a/libs/components/src/dialog/dialog/dialog.component.html +++ b/libs/components/src/dialog/dialog/dialog.component.html @@ -20,8 +20,23 @@ > -
- +
+
+ +
+
+ +
= (args: DialogComponent) => ({ props: args, template: ` - - {{title}} - Dialog body text goes here. - - - - - - + + {{title}} + Dialog body text goes here. + + + + + + `, }); @@ -94,23 +96,30 @@ Large.args = { title: "Large", }; +export const Loading = Template.bind({}); +Loading.args = { + dialogSize: "large", + loading: true, + title: "Loading", +}; + const TemplateScrolling: Story = (args: DialogComponent) => ({ props: args, template: ` - - Scrolling Example - - Dialog body text goes here.
- - repeating lines of characters
+ + Scrolling Example + + Dialog body text goes here.
+ + repeating lines of characters
+
+ end of sequence! +
+ + + - end of sequence! -
- - - - -
+ `, }); @@ -122,20 +131,20 @@ ScrollingContent.args = { const TemplateTabbed: Story = (args: DialogComponent) => ({ props: args, template: ` - - Tab Content Example - - - First Tab Content - Second Tab Content - Third Tab Content - - - - - - - + + Tab Content Example + + + First Tab Content + Second Tab Content + Third Tab Content + + + + + + + `, }); From 5f825e10f9677ba5288291fb22b9aac6ca08bf21 Mon Sep 17 00:00:00 2001 From: Oscar Hinton Date: Tue, 9 May 2023 11:27:09 +0200 Subject: [PATCH 08/37] [PM-2132] Move all specs to the src directory (#5367) --- .github/whitelist-capital-letters.txt | 8 ----- apps/cli/spec/bw.spec.ts | 3 -- .../src/services/console-log.service.spec.ts | 2 +- apps/cli/tsconfig.json | 2 +- libs/common/spec/index.ts | 3 ++ ...terceptConsole.ts => intercept-console.ts} | 0 libs/common/spec/matchers/index.ts | 1 + ...Buffer.spec.ts => to-equal-buffer.spec.ts} | 0 .../{toEqualBuffer.ts => to-equal-buffer.ts} | 0 .../models/domain/collection.spec.ts | 6 ++-- .../organization/organization.service.spec.ts | 7 ++-- .../{spec => src}/misc/sequentialize.spec.ts | 2 +- .../{spec => src}/misc/throttle.spec.ts | 4 +-- libs/common/{spec => src}/misc/utils.spec.ts | 2 +- .../src/models/domain/account-keys.spec.ts | 2 +- .../models/domain/enc-array-buffer.spec.ts} | 6 ++-- .../models/domain/enc-string.spec.ts | 13 ++++---- .../domain/symmetric-crypto-key.spec.ts} | 6 ++-- .../services/console-log.service.spec.ts} | 4 +-- .../services/crypto.service.spec.ts | 12 +++---- .../services/encrypt.service.spec.ts | 18 +++++----- .../org-domain-api.service.spec.ts | 17 +++++----- .../org-domain.service.spec.ts | 9 ++--- .../services/policy.service.spec.ts | 33 ++++++++++--------- .../services/settings.service.spec.ts | 11 ++++--- .../services/state-migration.service.spec.ts} | 13 ++++---- .../web-crypto-function.service.spec.ts} | 9 ++--- .../send/models/domain/send-access.spec.ts | 2 +- .../send/models/domain/send-file.spec.ts | 2 +- .../send/models/domain/send-text.spec.ts | 2 +- .../src/tools/send/models/domain/send.spec.ts | 2 +- .../vault/models/domain/attachment.spec.ts | 2 +- .../src/vault/models/domain/card.spec.ts | 2 +- .../src/vault/models/domain/cipher.spec.ts | 2 +- .../src/vault/models/domain/field.spec.ts | 2 +- .../src/vault/models/domain/folder.spec.ts | 2 +- .../src/vault/models/domain/identity.spec.ts | 2 +- .../src/vault/models/domain/login-uri.spec.ts | 2 +- .../src/vault/models/domain/login.spec.ts | 2 +- .../src/vault/models/domain/password.spec.ts | 2 +- .../vault/models/view/attachment.view.spec.ts | 2 +- .../src/vault/models/view/cipher.view.spec.ts | 2 +- .../src/vault/models/view/login.view.spec.ts | 2 +- libs/common/test.setup.ts | 2 +- .../services/vault-export.service.spec.ts | 2 +- .../node-crypto-function.service.spec.ts | 3 +- 46 files changed, 117 insertions(+), 115 deletions(-) delete mode 100644 apps/cli/spec/bw.spec.ts create mode 100644 libs/common/spec/index.ts rename libs/common/spec/{shared/interceptConsole.ts => intercept-console.ts} (100%) create mode 100644 libs/common/spec/matchers/index.ts rename libs/common/spec/matchers/{toEqualBuffer.spec.ts => to-equal-buffer.spec.ts} (100%) rename libs/common/spec/matchers/{toEqualBuffer.ts => to-equal-buffer.ts} (100%) rename libs/common/{spec => src/admin-console}/models/domain/collection.spec.ts (86%) rename libs/common/{spec => src/admin-console}/services/organization/organization.service.spec.ts (94%) rename libs/common/{spec => src}/misc/sequentialize.spec.ts (98%) rename libs/common/{spec => src}/misc/throttle.spec.ts (95%) rename libs/common/{spec => src}/misc/utils.spec.ts (99%) rename libs/common/{spec/models/domain/encArrayBuffer.spec.ts => src/models/domain/enc-array-buffer.spec.ts} (93%) rename libs/common/{spec => src}/models/domain/enc-string.spec.ts (93%) rename libs/common/{spec/models/domain/symmetricCryptoKey.spec.ts => src/models/domain/symmetric-crypto-key.spec.ts} (92%) rename libs/common/{spec/services/consoleLog.service.spec.ts => src/services/console-log.service.spec.ts} (90%) rename libs/common/{spec => src}/services/crypto.service.spec.ts (62%) rename libs/common/{spec => src}/services/encrypt.service.spec.ts (90%) rename libs/common/{spec => src}/services/organization-domain/org-domain-api.service.spec.ts (88%) rename libs/common/{spec => src}/services/organization-domain/org-domain.service.spec.ts (93%) rename libs/common/{spec => src}/services/policy.service.spec.ts (88%) rename libs/common/{spec => src}/services/settings.service.spec.ts (86%) rename libs/common/{spec/services/stateMigration.service.spec.ts => src/services/state-migration.service.spec.ts} (93%) rename libs/common/{spec/web/services/webCryptoFunction.service.spec.ts => src/services/web-crypto-function.service.spec.ts} (98%) rename libs/node/{spec => src}/services/node-crypto-function.service.spec.ts (99%) diff --git a/.github/whitelist-capital-letters.txt b/.github/whitelist-capital-letters.txt index 0a73f96cb13..9e585d170e9 100644 --- a/.github/whitelist-capital-letters.txt +++ b/.github/whitelist-capital-letters.txt @@ -25,14 +25,6 @@ ./libs/angular/src/services/theming/themeBuilder.ts ./libs/angular/src/interfaces/selectOptions.ts ./libs/components/src/stories/Introduction.stories.mdx -./libs/common/spec/web/services/webCryptoFunction.service.spec.ts -./libs/common/spec/shared/interceptConsole.ts -./libs/common/spec/models/domain/symmetricCryptoKey.spec.ts -./libs/common/spec/models/domain/encArrayBuffer.spec.ts -./libs/common/spec/matchers/toEqualBuffer.spec.ts -./libs/common/spec/matchers/toEqualBuffer.ts -./libs/common/spec/services/stateMigration.service.spec.ts -./libs/common/spec/services/consoleLog.service.spec.ts ./libs/common/src/misc/nodeUtils.ts ./libs/common/src/misc/linkedFieldOption.decorator.ts ./libs/common/src/misc/serviceUtils.ts diff --git a/apps/cli/spec/bw.spec.ts b/apps/cli/spec/bw.spec.ts deleted file mode 100644 index 9ce5fc2cd17..00000000000 --- a/apps/cli/spec/bw.spec.ts +++ /dev/null @@ -1,3 +0,0 @@ -describe("bw", () => { - test.todo("is a placeholder test"); -}); diff --git a/apps/cli/src/services/console-log.service.spec.ts b/apps/cli/src/services/console-log.service.spec.ts index d629b7c1c06..10a0ad8cca8 100644 --- a/apps/cli/src/services/console-log.service.spec.ts +++ b/apps/cli/src/services/console-log.service.spec.ts @@ -1,4 +1,4 @@ -import { interceptConsole, restoreConsole } from "@bitwarden/common/spec/shared/interceptConsole"; +import { interceptConsole, restoreConsole } from "@bitwarden/common/spec"; import { ConsoleLogService } from "./console-log.service"; diff --git a/apps/cli/tsconfig.json b/apps/cli/tsconfig.json index d516b5ee6c2..420496ad93c 100644 --- a/apps/cli/tsconfig.json +++ b/apps/cli/tsconfig.json @@ -12,7 +12,7 @@ "sourceMap": true, "baseUrl": ".", "paths": { - "@bitwarden/common/spec/*": ["../../libs/common/spec/*"], + "@bitwarden/common/spec": ["../../libs/common/spec"], "@bitwarden/common/*": ["../../libs/common/src/*"], "@bitwarden/importer": ["../../libs/importer/src"], "@bitwarden/exporter/*": ["../../libs/exporter/src/*"], diff --git a/libs/common/spec/index.ts b/libs/common/spec/index.ts new file mode 100644 index 00000000000..494b31b521d --- /dev/null +++ b/libs/common/spec/index.ts @@ -0,0 +1,3 @@ +export * from "./utils"; +export * from "./intercept-console"; +export * from "./matchers"; diff --git a/libs/common/spec/shared/interceptConsole.ts b/libs/common/spec/intercept-console.ts similarity index 100% rename from libs/common/spec/shared/interceptConsole.ts rename to libs/common/spec/intercept-console.ts diff --git a/libs/common/spec/matchers/index.ts b/libs/common/spec/matchers/index.ts new file mode 100644 index 00000000000..59f6409fefa --- /dev/null +++ b/libs/common/spec/matchers/index.ts @@ -0,0 +1 @@ +export * from "./to-equal-buffer"; diff --git a/libs/common/spec/matchers/toEqualBuffer.spec.ts b/libs/common/spec/matchers/to-equal-buffer.spec.ts similarity index 100% rename from libs/common/spec/matchers/toEqualBuffer.spec.ts rename to libs/common/spec/matchers/to-equal-buffer.spec.ts diff --git a/libs/common/spec/matchers/toEqualBuffer.ts b/libs/common/spec/matchers/to-equal-buffer.ts similarity index 100% rename from libs/common/spec/matchers/toEqualBuffer.ts rename to libs/common/spec/matchers/to-equal-buffer.ts diff --git a/libs/common/spec/models/domain/collection.spec.ts b/libs/common/src/admin-console/models/domain/collection.spec.ts similarity index 86% rename from libs/common/spec/models/domain/collection.spec.ts rename to libs/common/src/admin-console/models/domain/collection.spec.ts index 6f3a5bcfec6..977a5e53cfa 100644 --- a/libs/common/spec/models/domain/collection.spec.ts +++ b/libs/common/src/admin-console/models/domain/collection.spec.ts @@ -1,7 +1,7 @@ -import { CollectionData } from "@bitwarden/common/admin-console/models/data/collection.data"; -import { Collection } from "@bitwarden/common/admin-console/models/domain/collection"; +import { mockEnc } from "../../../../spec"; +import { CollectionData } from "../data/collection.data"; -import { mockEnc } from "../../utils"; +import { Collection } from "./collection"; describe("Collection", () => { let data: CollectionData; diff --git a/libs/common/spec/services/organization/organization.service.spec.ts b/libs/common/src/admin-console/services/organization/organization.service.spec.ts similarity index 94% rename from libs/common/spec/services/organization/organization.service.spec.ts rename to libs/common/src/admin-console/services/organization/organization.service.spec.ts index df875d77487..3947df97071 100644 --- a/libs/common/spec/services/organization/organization.service.spec.ts +++ b/libs/common/src/admin-console/services/organization/organization.service.spec.ts @@ -1,9 +1,10 @@ import { MockProxy, mock, any, mockClear } from "jest-mock-extended"; import { BehaviorSubject, firstValueFrom } from "rxjs"; -import { StateService } from "@bitwarden/common/abstractions/state.service"; -import { OrganizationData } from "@bitwarden/common/admin-console/models/data/organization.data"; -import { OrganizationService } from "@bitwarden/common/admin-console/services/organization/organization.service"; +import { StateService } from "../../../abstractions/state.service"; +import { OrganizationData } from "../../models/data/organization.data"; + +import { OrganizationService } from "./organization.service"; describe("Organization Service", () => { let organizationService: OrganizationService; diff --git a/libs/common/spec/misc/sequentialize.spec.ts b/libs/common/src/misc/sequentialize.spec.ts similarity index 98% rename from libs/common/spec/misc/sequentialize.spec.ts rename to libs/common/src/misc/sequentialize.spec.ts index 77f10afb9a8..1dc5f2b2c27 100644 --- a/libs/common/spec/misc/sequentialize.spec.ts +++ b/libs/common/src/misc/sequentialize.spec.ts @@ -1,4 +1,4 @@ -import { sequentialize } from "@bitwarden/common/misc/sequentialize"; +import { sequentialize } from "./sequentialize"; describe("sequentialize decorator", () => { it("should call the function once", async () => { diff --git a/libs/common/spec/misc/throttle.spec.ts b/libs/common/src/misc/throttle.spec.ts similarity index 95% rename from libs/common/spec/misc/throttle.spec.ts rename to libs/common/src/misc/throttle.spec.ts index 27572c6e04e..0947d4af664 100644 --- a/libs/common/spec/misc/throttle.spec.ts +++ b/libs/common/src/misc/throttle.spec.ts @@ -1,5 +1,5 @@ -import { sequentialize } from "@bitwarden/common/misc/sequentialize"; -import { throttle } from "@bitwarden/common/misc/throttle"; +import { sequentialize } from "./sequentialize"; +import { throttle } from "./throttle"; describe("throttle decorator", () => { it("should call the function once at a time", async () => { diff --git a/libs/common/spec/misc/utils.spec.ts b/libs/common/src/misc/utils.spec.ts similarity index 99% rename from libs/common/spec/misc/utils.spec.ts rename to libs/common/src/misc/utils.spec.ts index 52dbf6ad941..5f7d63fee22 100644 --- a/libs/common/spec/misc/utils.spec.ts +++ b/libs/common/src/misc/utils.spec.ts @@ -1,6 +1,6 @@ import * as path from "path"; -import { Utils } from "@bitwarden/common/misc/utils"; +import { Utils } from "./utils"; describe("Utils Service", () => { describe("getDomain", () => { diff --git a/libs/common/src/models/domain/account-keys.spec.ts b/libs/common/src/models/domain/account-keys.spec.ts index 8dac20d4ebb..bacfac25a65 100644 --- a/libs/common/src/models/domain/account-keys.spec.ts +++ b/libs/common/src/models/domain/account-keys.spec.ts @@ -1,4 +1,4 @@ -import { makeStaticByteArray } from "../../../spec/utils"; +import { makeStaticByteArray } from "../../../spec"; import { Utils } from "../../misc/utils"; import { AccountKeys, EncryptionPair } from "./account"; diff --git a/libs/common/spec/models/domain/encArrayBuffer.spec.ts b/libs/common/src/models/domain/enc-array-buffer.spec.ts similarity index 93% rename from libs/common/spec/models/domain/encArrayBuffer.spec.ts rename to libs/common/src/models/domain/enc-array-buffer.spec.ts index 03b02b0ee45..2a2052484fd 100644 --- a/libs/common/spec/models/domain/encArrayBuffer.spec.ts +++ b/libs/common/src/models/domain/enc-array-buffer.spec.ts @@ -1,7 +1,7 @@ -import { EncryptionType } from "@bitwarden/common/enums"; -import { EncArrayBuffer } from "@bitwarden/common/models/domain/enc-array-buffer"; +import { makeStaticByteArray } from "../../../spec"; +import { EncryptionType } from "../../enums"; -import { makeStaticByteArray } from "../../utils"; +import { EncArrayBuffer } from "./enc-array-buffer"; describe("encArrayBuffer", () => { describe("parses the buffer", () => { diff --git a/libs/common/spec/models/domain/enc-string.spec.ts b/libs/common/src/models/domain/enc-string.spec.ts similarity index 93% rename from libs/common/spec/models/domain/enc-string.spec.ts rename to libs/common/src/models/domain/enc-string.spec.ts index 62e7434511c..08ff9c145d4 100644 --- a/libs/common/spec/models/domain/enc-string.spec.ts +++ b/libs/common/src/models/domain/enc-string.spec.ts @@ -2,12 +2,13 @@ import { Substitute, Arg } from "@fluffy-spoon/substitute"; import { mock, MockProxy } from "jest-mock-extended"; -import { CryptoService } from "@bitwarden/common/abstractions/crypto.service"; -import { EncryptService } from "@bitwarden/common/abstractions/encrypt.service"; -import { EncryptionType } from "@bitwarden/common/enums"; -import { EncString } from "@bitwarden/common/models/domain/enc-string"; -import { SymmetricCryptoKey } from "@bitwarden/common/models/domain/symmetric-crypto-key"; -import { ContainerService } from "@bitwarden/common/services/container.service"; +import { CryptoService } from "../../abstractions/crypto.service"; +import { EncryptService } from "../../abstractions/encrypt.service"; +import { EncryptionType } from "../../enums"; +import { ContainerService } from "../../services/container.service"; + +import { EncString } from "./enc-string"; +import { SymmetricCryptoKey } from "./symmetric-crypto-key"; describe("EncString", () => { afterEach(() => { diff --git a/libs/common/spec/models/domain/symmetricCryptoKey.spec.ts b/libs/common/src/models/domain/symmetric-crypto-key.spec.ts similarity index 92% rename from libs/common/spec/models/domain/symmetricCryptoKey.spec.ts rename to libs/common/src/models/domain/symmetric-crypto-key.spec.ts index ddd1cb5b706..c371008bb36 100644 --- a/libs/common/spec/models/domain/symmetricCryptoKey.spec.ts +++ b/libs/common/src/models/domain/symmetric-crypto-key.spec.ts @@ -1,7 +1,7 @@ -import { EncryptionType } from "@bitwarden/common/enums"; -import { SymmetricCryptoKey } from "@bitwarden/common/models/domain/symmetric-crypto-key"; +import { makeStaticByteArray } from "../../../spec"; +import { EncryptionType } from "../../enums"; -import { makeStaticByteArray } from "../../utils"; +import { SymmetricCryptoKey } from "./symmetric-crypto-key"; describe("SymmetricCryptoKey", () => { it("errors if no key", () => { diff --git a/libs/common/spec/services/consoleLog.service.spec.ts b/libs/common/src/services/console-log.service.spec.ts similarity index 90% rename from libs/common/spec/services/consoleLog.service.spec.ts rename to libs/common/src/services/console-log.service.spec.ts index 3c961487f31..0b14ac559b1 100644 --- a/libs/common/spec/services/consoleLog.service.spec.ts +++ b/libs/common/src/services/console-log.service.spec.ts @@ -1,6 +1,6 @@ -import { ConsoleLogService } from "@bitwarden/common/services/consoleLog.service"; +import { interceptConsole, restoreConsole } from "../../spec"; -import { interceptConsole, restoreConsole } from "../shared/interceptConsole"; +import { ConsoleLogService } from "./consoleLog.service"; let caughtMessage: any; diff --git a/libs/common/spec/services/crypto.service.spec.ts b/libs/common/src/services/crypto.service.spec.ts similarity index 62% rename from libs/common/spec/services/crypto.service.spec.ts rename to libs/common/src/services/crypto.service.spec.ts index 64905008588..cc0d3ba212a 100644 --- a/libs/common/spec/services/crypto.service.spec.ts +++ b/libs/common/src/services/crypto.service.spec.ts @@ -1,11 +1,11 @@ import { mock, mockReset } from "jest-mock-extended"; -import { CryptoFunctionService } from "@bitwarden/common/abstractions/cryptoFunction.service"; -import { EncryptService } from "@bitwarden/common/abstractions/encrypt.service"; -import { LogService } from "@bitwarden/common/abstractions/log.service"; -import { PlatformUtilsService } from "@bitwarden/common/abstractions/platformUtils.service"; -import { StateService } from "@bitwarden/common/abstractions/state.service"; -import { CryptoService } from "@bitwarden/common/services/crypto.service"; +import { CryptoFunctionService } from "../abstractions/cryptoFunction.service"; +import { EncryptService } from "../abstractions/encrypt.service"; +import { LogService } from "../abstractions/log.service"; +import { PlatformUtilsService } from "../abstractions/platformUtils.service"; +import { StateService } from "../abstractions/state.service"; +import { CryptoService } from "../services/crypto.service"; describe("cryptoService", () => { let cryptoService: CryptoService; diff --git a/libs/common/spec/services/encrypt.service.spec.ts b/libs/common/src/services/encrypt.service.spec.ts similarity index 90% rename from libs/common/spec/services/encrypt.service.spec.ts rename to libs/common/src/services/encrypt.service.spec.ts index 712ec04ebe0..8df3c170bf6 100644 --- a/libs/common/spec/services/encrypt.service.spec.ts +++ b/libs/common/src/services/encrypt.service.spec.ts @@ -1,15 +1,15 @@ import { mockReset, mock } from "jest-mock-extended"; -import { CryptoFunctionService } from "@bitwarden/common/abstractions/cryptoFunction.service"; -import { LogService } from "@bitwarden/common/abstractions/log.service"; -import { EncryptionType } from "@bitwarden/common/enums"; -import { EncArrayBuffer } from "@bitwarden/common/models/domain/enc-array-buffer"; -import { EncString } from "@bitwarden/common/models/domain/enc-string"; -import { SymmetricCryptoKey } from "@bitwarden/common/models/domain/symmetric-crypto-key"; -import { EncryptServiceImplementation } from "@bitwarden/common/services/cryptography/encrypt.service.implementation"; +import { makeStaticByteArray } from "../../spec"; +import { CryptoFunctionService } from "../abstractions/cryptoFunction.service"; +import { LogService } from "../abstractions/log.service"; +import { EncryptionType } from "../enums"; +import { EncArrayBuffer } from "../models/domain/enc-array-buffer"; +import { EncString } from "../models/domain/enc-string"; +import { SymmetricCryptoKey } from "../models/domain/symmetric-crypto-key"; +import { CsprngArray } from "../types/csprng"; -import { CsprngArray } from "../../src/types/csprng"; -import { makeStaticByteArray } from "../utils"; +import { EncryptServiceImplementation } from "./cryptography/encrypt.service.implementation"; describe("EncryptService", () => { const cryptoFunctionService = mock(); diff --git a/libs/common/spec/services/organization-domain/org-domain-api.service.spec.ts b/libs/common/src/services/organization-domain/org-domain-api.service.spec.ts similarity index 88% rename from libs/common/spec/services/organization-domain/org-domain-api.service.spec.ts rename to libs/common/src/services/organization-domain/org-domain-api.service.spec.ts index e4dc94728f6..7fa6ed7855a 100644 --- a/libs/common/spec/services/organization-domain/org-domain-api.service.spec.ts +++ b/libs/common/src/services/organization-domain/org-domain-api.service.spec.ts @@ -1,14 +1,15 @@ import { mock } from "jest-mock-extended"; import { lastValueFrom } from "rxjs"; -import { ApiService } from "@bitwarden/common/abstractions/api.service"; -import { I18nService } from "@bitwarden/common/abstractions/i18n.service"; -import { OrganizationDomainSsoDetailsResponse } from "@bitwarden/common/abstractions/organization-domain/responses/organization-domain-sso-details.response"; -import { OrganizationDomainResponse } from "@bitwarden/common/abstractions/organization-domain/responses/organization-domain.response"; -import { PlatformUtilsService } from "@bitwarden/common/abstractions/platformUtils.service"; -import { OrgDomainApiService } from "@bitwarden/common/services/organization-domain/org-domain-api.service"; -import { OrgDomainService } from "@bitwarden/common/services/organization-domain/org-domain.service"; -import { OrganizationDomainSsoDetailsRequest } from "@bitwarden/common/services/organization-domain/requests/organization-domain-sso-details.request"; +import { ApiService } from "../../abstractions/api.service"; +import { I18nService } from "../../abstractions/i18n.service"; +import { OrganizationDomainSsoDetailsResponse } from "../../abstractions/organization-domain/responses/organization-domain-sso-details.response"; +import { OrganizationDomainResponse } from "../../abstractions/organization-domain/responses/organization-domain.response"; +import { PlatformUtilsService } from "../../abstractions/platformUtils.service"; + +import { OrgDomainApiService } from "./org-domain-api.service"; +import { OrgDomainService } from "./org-domain.service"; +import { OrganizationDomainSsoDetailsRequest } from "./requests/organization-domain-sso-details.request"; const mockedGetAllByOrgIdResponse: any = { data: [ diff --git a/libs/common/spec/services/organization-domain/org-domain.service.spec.ts b/libs/common/src/services/organization-domain/org-domain.service.spec.ts similarity index 93% rename from libs/common/spec/services/organization-domain/org-domain.service.spec.ts rename to libs/common/src/services/organization-domain/org-domain.service.spec.ts index e4e61d4e227..3bc8ae770f1 100644 --- a/libs/common/spec/services/organization-domain/org-domain.service.spec.ts +++ b/libs/common/src/services/organization-domain/org-domain.service.spec.ts @@ -1,10 +1,11 @@ import { mock, mockReset } from "jest-mock-extended"; import { lastValueFrom } from "rxjs"; -import { I18nService } from "@bitwarden/common/abstractions/i18n.service"; -import { OrganizationDomainResponse } from "@bitwarden/common/abstractions/organization-domain/responses/organization-domain.response"; -import { PlatformUtilsService } from "@bitwarden/common/abstractions/platformUtils.service"; -import { OrgDomainService } from "@bitwarden/common/services/organization-domain/org-domain.service"; +import { I18nService } from "../../abstractions/i18n.service"; +import { OrganizationDomainResponse } from "../../abstractions/organization-domain/responses/organization-domain.response"; +import { PlatformUtilsService } from "../../abstractions/platformUtils.service"; + +import { OrgDomainService } from "./org-domain.service"; const mockedUnverifiedDomainServerResponse = { creationDate: "2022-12-13T23:16:43.7066667Z", diff --git a/libs/common/spec/services/policy.service.spec.ts b/libs/common/src/services/policy.service.spec.ts similarity index 88% rename from libs/common/spec/services/policy.service.spec.ts rename to libs/common/src/services/policy.service.spec.ts index 61ab3dcb073..b806a4502c4 100644 --- a/libs/common/spec/services/policy.service.spec.ts +++ b/libs/common/src/services/policy.service.spec.ts @@ -2,22 +2,23 @@ import { Arg, Substitute, SubstituteOf } from "@fluffy-spoon/substitute"; import { BehaviorSubject, firstValueFrom } from "rxjs"; -import { CryptoService } from "@bitwarden/common/abstractions/crypto.service"; -import { EncryptService } from "@bitwarden/common/abstractions/encrypt.service"; -import { OrganizationService } from "@bitwarden/common/admin-console/abstractions/organization/organization.service.abstraction"; -import { OrganizationUserStatusType, PolicyType } from "@bitwarden/common/admin-console/enums"; -import { PermissionsApi } from "@bitwarden/common/admin-console/models/api/permissions.api"; -import { OrganizationData } from "@bitwarden/common/admin-console/models/data/organization.data"; -import { PolicyData } from "@bitwarden/common/admin-console/models/data/policy.data"; -import { MasterPasswordPolicyOptions } from "@bitwarden/common/admin-console/models/domain/master-password-policy-options"; -import { Organization } from "@bitwarden/common/admin-console/models/domain/organization"; -import { Policy } from "@bitwarden/common/admin-console/models/domain/policy"; -import { ResetPasswordPolicyOptions } from "@bitwarden/common/admin-console/models/domain/reset-password-policy-options"; -import { PolicyResponse } from "@bitwarden/common/admin-console/models/response/policy.response"; -import { PolicyService } from "@bitwarden/common/admin-console/services/policy/policy.service"; -import { ListResponse } from "@bitwarden/common/models/response/list.response"; -import { ContainerService } from "@bitwarden/common/services/container.service"; -import { StateService } from "@bitwarden/common/services/state.service"; +import { CryptoService } from "../abstractions/crypto.service"; +import { EncryptService } from "../abstractions/encrypt.service"; +import { OrganizationService } from "../admin-console/abstractions/organization/organization.service.abstraction"; +import { OrganizationUserStatusType, PolicyType } from "../admin-console/enums"; +import { PermissionsApi } from "../admin-console/models/api/permissions.api"; +import { OrganizationData } from "../admin-console/models/data/organization.data"; +import { PolicyData } from "../admin-console/models/data/policy.data"; +import { MasterPasswordPolicyOptions } from "../admin-console/models/domain/master-password-policy-options"; +import { Organization } from "../admin-console/models/domain/organization"; +import { Policy } from "../admin-console/models/domain/policy"; +import { ResetPasswordPolicyOptions } from "../admin-console/models/domain/reset-password-policy-options"; +import { PolicyResponse } from "../admin-console/models/response/policy.response"; +import { PolicyService } from "../admin-console/services/policy/policy.service"; +import { ListResponse } from "../models/response/list.response"; + +import { ContainerService } from "./container.service"; +import { StateService } from "./state.service"; describe("PolicyService", () => { let policyService: PolicyService; diff --git a/libs/common/spec/services/settings.service.spec.ts b/libs/common/src/services/settings.service.spec.ts similarity index 86% rename from libs/common/spec/services/settings.service.spec.ts rename to libs/common/src/services/settings.service.spec.ts index 7ef088798e5..1f23252e243 100644 --- a/libs/common/spec/services/settings.service.spec.ts +++ b/libs/common/src/services/settings.service.spec.ts @@ -2,11 +2,12 @@ import { Arg, Substitute, SubstituteOf } from "@fluffy-spoon/substitute"; import { BehaviorSubject, firstValueFrom } from "rxjs"; -import { CryptoService } from "@bitwarden/common/abstractions/crypto.service"; -import { EncryptService } from "@bitwarden/common/abstractions/encrypt.service"; -import { ContainerService } from "@bitwarden/common/services/container.service"; -import { SettingsService } from "@bitwarden/common/services/settings.service"; -import { StateService } from "@bitwarden/common/services/state.service"; +import { CryptoService } from "../abstractions/crypto.service"; +import { EncryptService } from "../abstractions/encrypt.service"; + +import { ContainerService } from "./container.service"; +import { SettingsService } from "./settings.service"; +import { StateService } from "./state.service"; describe("SettingsService", () => { let settingsService: SettingsService; diff --git a/libs/common/spec/services/stateMigration.service.spec.ts b/libs/common/src/services/state-migration.service.spec.ts similarity index 93% rename from libs/common/spec/services/stateMigration.service.spec.ts rename to libs/common/src/services/state-migration.service.spec.ts index f94fa58c461..13727c96dd6 100644 --- a/libs/common/spec/services/stateMigration.service.spec.ts +++ b/libs/common/src/services/state-migration.service.spec.ts @@ -2,12 +2,13 @@ import { Substitute, SubstituteOf } from "@fluffy-spoon/substitute"; import { MockProxy, any, mock } from "jest-mock-extended"; -import { AbstractStorageService } from "@bitwarden/common/abstractions/storage.service"; -import { StateVersion } from "@bitwarden/common/enums"; -import { StateFactory } from "@bitwarden/common/factories/stateFactory"; -import { Account } from "@bitwarden/common/models/domain/account"; -import { GlobalState } from "@bitwarden/common/models/domain/global-state"; -import { StateMigrationService } from "@bitwarden/common/services/stateMigration.service"; +import { AbstractStorageService } from "../abstractions/storage.service"; +import { StateVersion } from "../enums"; +import { StateFactory } from "../factories/stateFactory"; +import { Account } from "../models/domain/account"; +import { GlobalState } from "../models/domain/global-state"; + +import { StateMigrationService } from "./stateMigration.service"; const userId = "USER_ID"; diff --git a/libs/common/spec/web/services/webCryptoFunction.service.spec.ts b/libs/common/src/services/web-crypto-function.service.spec.ts similarity index 98% rename from libs/common/spec/web/services/webCryptoFunction.service.spec.ts rename to libs/common/src/services/web-crypto-function.service.spec.ts index cc2dd952342..519ba2eddbd 100644 --- a/libs/common/spec/web/services/webCryptoFunction.service.spec.ts +++ b/libs/common/src/services/web-crypto-function.service.spec.ts @@ -1,10 +1,11 @@ // eslint-disable-next-line no-restricted-imports import { Substitute } from "@fluffy-spoon/substitute"; -import { PlatformUtilsService } from "@bitwarden/common/abstractions/platformUtils.service"; -import { Utils } from "@bitwarden/common/misc/utils"; -import { SymmetricCryptoKey } from "@bitwarden/common/models/domain/symmetric-crypto-key"; -import { WebCryptoFunctionService } from "@bitwarden/common/services/webCryptoFunction.service"; +import { PlatformUtilsService } from "../abstractions/platformUtils.service"; +import { Utils } from "../misc/utils"; +import { SymmetricCryptoKey } from "../models/domain/symmetric-crypto-key"; + +import { WebCryptoFunctionService } from "./webCryptoFunction.service"; const RsaPublicKey = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAl0Vawl/toXzkEvB82FEtqHP" + diff --git a/libs/common/src/tools/send/models/domain/send-access.spec.ts b/libs/common/src/tools/send/models/domain/send-access.spec.ts index 3935cdf67aa..8c59bc51eda 100644 --- a/libs/common/src/tools/send/models/domain/send-access.spec.ts +++ b/libs/common/src/tools/send/models/domain/send-access.spec.ts @@ -1,7 +1,7 @@ // eslint-disable-next-line no-restricted-imports import { Substitute, Arg } from "@fluffy-spoon/substitute"; -import { mockEnc } from "../../../../../spec/utils"; +import { mockEnc } from "../../../../../spec"; import { SendType } from "../../enums/send-type"; import { SendAccessResponse } from "../response/send-access.response"; diff --git a/libs/common/src/tools/send/models/domain/send-file.spec.ts b/libs/common/src/tools/send/models/domain/send-file.spec.ts index 8e0381434c6..44a84cdc639 100644 --- a/libs/common/src/tools/send/models/domain/send-file.spec.ts +++ b/libs/common/src/tools/send/models/domain/send-file.spec.ts @@ -1,4 +1,4 @@ -import { mockEnc } from "../../../../../spec/utils"; +import { mockEnc } from "../../../../../spec"; import { SendFileData } from "../data/send-file.data"; import { SendFile } from "./send-file"; diff --git a/libs/common/src/tools/send/models/domain/send-text.spec.ts b/libs/common/src/tools/send/models/domain/send-text.spec.ts index 7285447d8af..6af143ec594 100644 --- a/libs/common/src/tools/send/models/domain/send-text.spec.ts +++ b/libs/common/src/tools/send/models/domain/send-text.spec.ts @@ -1,4 +1,4 @@ -import { mockEnc } from "../../../../../spec/utils"; +import { mockEnc } from "../../../../../spec"; import { SendTextData } from "../data/send-text.data"; import { SendText } from "./send-text"; diff --git a/libs/common/src/tools/send/models/domain/send.spec.ts b/libs/common/src/tools/send/models/domain/send.spec.ts index 4497551e04b..8bd832a501f 100644 --- a/libs/common/src/tools/send/models/domain/send.spec.ts +++ b/libs/common/src/tools/send/models/domain/send.spec.ts @@ -1,7 +1,7 @@ // eslint-disable-next-line no-restricted-imports import { Substitute, Arg, SubstituteOf } from "@fluffy-spoon/substitute"; -import { makeStaticByteArray, mockEnc } from "../../../../../spec/utils"; +import { makeStaticByteArray, mockEnc } from "../../../../../spec"; import { CryptoService } from "../../../../abstractions/crypto.service"; import { EncryptService } from "../../../../abstractions/encrypt.service"; import { EncString } from "../../../../models/domain/enc-string"; diff --git a/libs/common/src/vault/models/domain/attachment.spec.ts b/libs/common/src/vault/models/domain/attachment.spec.ts index e061569f024..c1397ad3ca4 100644 --- a/libs/common/src/vault/models/domain/attachment.spec.ts +++ b/libs/common/src/vault/models/domain/attachment.spec.ts @@ -1,6 +1,6 @@ import { mock, MockProxy } from "jest-mock-extended"; -import { makeStaticByteArray, mockEnc, mockFromJson } from "../../../../spec/utils"; +import { makeStaticByteArray, mockEnc, mockFromJson } from "../../../../spec"; import { CryptoService } from "../../../abstractions/crypto.service"; import { EncryptService } from "../../../abstractions/encrypt.service"; import { EncString } from "../../../models/domain/enc-string"; diff --git a/libs/common/src/vault/models/domain/card.spec.ts b/libs/common/src/vault/models/domain/card.spec.ts index a1556fefc51..a80d57a587f 100644 --- a/libs/common/src/vault/models/domain/card.spec.ts +++ b/libs/common/src/vault/models/domain/card.spec.ts @@ -1,4 +1,4 @@ -import { mockEnc, mockFromJson } from "../../../../spec/utils"; +import { mockEnc, mockFromJson } from "../../../../spec"; import { EncString } from "../../../models/domain/enc-string"; import { CardData } from "../../../vault/models/data/card.data"; import { Card } from "../../models/domain/card"; diff --git a/libs/common/src/vault/models/domain/cipher.spec.ts b/libs/common/src/vault/models/domain/cipher.spec.ts index c484af26d3c..b23b15e3ef7 100644 --- a/libs/common/src/vault/models/domain/cipher.spec.ts +++ b/libs/common/src/vault/models/domain/cipher.spec.ts @@ -2,7 +2,7 @@ import { Substitute, Arg } from "@fluffy-spoon/substitute"; import { Jsonify } from "type-fest"; -import { mockEnc, mockFromJson } from "../../../../spec/utils"; +import { mockEnc, mockFromJson } from "../../../../spec"; import { FieldType, SecureNoteType, UriMatchType } from "../../../enums"; import { EncString } from "../../../models/domain/enc-string"; import { InitializerKey } from "../../../services/cryptography/initializer-key"; diff --git a/libs/common/src/vault/models/domain/field.spec.ts b/libs/common/src/vault/models/domain/field.spec.ts index 3f07f6905c3..0754c0b3b68 100644 --- a/libs/common/src/vault/models/domain/field.spec.ts +++ b/libs/common/src/vault/models/domain/field.spec.ts @@ -1,4 +1,4 @@ -import { mockEnc, mockFromJson } from "../../../../spec/utils"; +import { mockEnc, mockFromJson } from "../../../../spec"; import { FieldType } from "../../../enums"; import { EncString } from "../../../models/domain/enc-string"; import { FieldData } from "../../models/data/field.data"; diff --git a/libs/common/src/vault/models/domain/folder.spec.ts b/libs/common/src/vault/models/domain/folder.spec.ts index cc08518a90a..dc8b490e72a 100644 --- a/libs/common/src/vault/models/domain/folder.spec.ts +++ b/libs/common/src/vault/models/domain/folder.spec.ts @@ -1,4 +1,4 @@ -import { mockEnc, mockFromJson } from "../../../../spec/utils"; +import { mockEnc, mockFromJson } from "../../../../spec"; import { EncString } from "../../../models/domain/enc-string"; import { FolderData } from "../../models/data/folder.data"; import { Folder } from "../../models/domain/folder"; diff --git a/libs/common/src/vault/models/domain/identity.spec.ts b/libs/common/src/vault/models/domain/identity.spec.ts index 8b53ec016ff..a3fdbd580bb 100644 --- a/libs/common/src/vault/models/domain/identity.spec.ts +++ b/libs/common/src/vault/models/domain/identity.spec.ts @@ -1,4 +1,4 @@ -import { mockEnc, mockFromJson } from "../../../../spec/utils"; +import { mockEnc, mockFromJson } from "../../../../spec"; import { EncString } from "../../../models/domain/enc-string"; import { IdentityData } from "../../models/data/identity.data"; import { Identity } from "../../models/domain/identity"; diff --git a/libs/common/src/vault/models/domain/login-uri.spec.ts b/libs/common/src/vault/models/domain/login-uri.spec.ts index 70fb24360f4..28378e73c4a 100644 --- a/libs/common/src/vault/models/domain/login-uri.spec.ts +++ b/libs/common/src/vault/models/domain/login-uri.spec.ts @@ -1,6 +1,6 @@ import { Jsonify } from "type-fest"; -import { mockEnc, mockFromJson } from "../../../../spec/utils"; +import { mockEnc, mockFromJson } from "../../../../spec"; import { UriMatchType } from "../../../enums"; import { EncString } from "../../../models/domain/enc-string"; import { LoginUriData } from "../data/login-uri.data"; diff --git a/libs/common/src/vault/models/domain/login.spec.ts b/libs/common/src/vault/models/domain/login.spec.ts index 654c66f8cf1..4cc774bdc3e 100644 --- a/libs/common/src/vault/models/domain/login.spec.ts +++ b/libs/common/src/vault/models/domain/login.spec.ts @@ -1,7 +1,7 @@ // eslint-disable-next-line no-restricted-imports import { Substitute, Arg } from "@fluffy-spoon/substitute"; -import { mockEnc, mockFromJson } from "../../../../spec/utils"; +import { mockEnc, mockFromJson } from "../../../../spec"; import { UriMatchType } from "../../../enums"; import { EncString } from "../../../models/domain/enc-string"; import { LoginData } from "../../models/data/login.data"; diff --git a/libs/common/src/vault/models/domain/password.spec.ts b/libs/common/src/vault/models/domain/password.spec.ts index 6128e37f284..4e42904ad96 100644 --- a/libs/common/src/vault/models/domain/password.spec.ts +++ b/libs/common/src/vault/models/domain/password.spec.ts @@ -1,4 +1,4 @@ -import { mockEnc, mockFromJson } from "../../../../spec/utils"; +import { mockEnc, mockFromJson } from "../../../../spec"; import { EncString } from "../../../models/domain/enc-string"; import { PasswordHistoryData } from "../../models/data/password-history.data"; import { Password } from "../../models/domain/password"; diff --git a/libs/common/src/vault/models/view/attachment.view.spec.ts b/libs/common/src/vault/models/view/attachment.view.spec.ts index 7900465b030..dc81fe3f78e 100644 --- a/libs/common/src/vault/models/view/attachment.view.spec.ts +++ b/libs/common/src/vault/models/view/attachment.view.spec.ts @@ -1,4 +1,4 @@ -import { mockFromJson } from "../../../../spec/utils"; +import { mockFromJson } from "../../../../spec"; import { SymmetricCryptoKey } from "../../../models/domain/symmetric-crypto-key"; import { AttachmentView } from "./attachment.view"; diff --git a/libs/common/src/vault/models/view/cipher.view.spec.ts b/libs/common/src/vault/models/view/cipher.view.spec.ts index a2de5b4a3ac..3ab2706d356 100644 --- a/libs/common/src/vault/models/view/cipher.view.spec.ts +++ b/libs/common/src/vault/models/view/cipher.view.spec.ts @@ -1,4 +1,4 @@ -import { mockFromJson } from "../../../../spec/utils"; +import { mockFromJson } from "../../../../spec"; import { CipherType } from "../../enums/cipher-type"; import { AttachmentView } from "./attachment.view"; diff --git a/libs/common/src/vault/models/view/login.view.spec.ts b/libs/common/src/vault/models/view/login.view.spec.ts index 92beb18bd6f..728a62deb9d 100644 --- a/libs/common/src/vault/models/view/login.view.spec.ts +++ b/libs/common/src/vault/models/view/login.view.spec.ts @@ -1,4 +1,4 @@ -import { mockFromJson } from "../../../../spec/utils"; +import { mockFromJson } from "../../../../spec"; import { LoginUriView } from "./login-uri.view"; import { LoginView } from "./login.view"; diff --git a/libs/common/test.setup.ts b/libs/common/test.setup.ts index 17254ea34c6..dfcf7c86101 100644 --- a/libs/common/test.setup.ts +++ b/libs/common/test.setup.ts @@ -1,6 +1,6 @@ import { webcrypto } from "crypto"; -import { toEqualBuffer } from "./spec/matchers/toEqualBuffer"; +import { toEqualBuffer } from "./spec"; Object.defineProperty(window, "crypto", { value: webcrypto, diff --git a/libs/exporter/src/vault-export/services/vault-export.service.spec.ts b/libs/exporter/src/vault-export/services/vault-export.service.spec.ts index c5947b579d5..0649107a447 100644 --- a/libs/exporter/src/vault-export/services/vault-export.service.spec.ts +++ b/libs/exporter/src/vault-export/services/vault-export.service.spec.ts @@ -20,7 +20,7 @@ import { CipherView } from "@bitwarden/common/vault/models/view/cipher.view"; import { FolderView } from "@bitwarden/common/vault/models/view/folder.view"; import { LoginView } from "@bitwarden/common/vault/models/view/login.view"; -import { BuildTestObject, GetUniqueString } from "../../../../common/spec/utils"; +import { BuildTestObject, GetUniqueString } from "../../../../common/spec"; import { VaultExportService } from "./vault-export.service"; diff --git a/libs/node/spec/services/node-crypto-function.service.spec.ts b/libs/node/src/services/node-crypto-function.service.spec.ts similarity index 99% rename from libs/node/spec/services/node-crypto-function.service.spec.ts rename to libs/node/src/services/node-crypto-function.service.spec.ts index 1dbdcfb93ae..8e2aa768f9f 100644 --- a/libs/node/spec/services/node-crypto-function.service.spec.ts +++ b/libs/node/src/services/node-crypto-function.service.spec.ts @@ -1,6 +1,7 @@ import { Utils } from "@bitwarden/common/misc/utils"; import { SymmetricCryptoKey } from "@bitwarden/common/models/domain/symmetric-crypto-key"; -import { NodeCryptoFunctionService } from "@bitwarden/node/services/node-crypto-function.service"; + +import { NodeCryptoFunctionService } from "./node-crypto-function.service"; const RsaPublicKey = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAl0Vawl/toXzkEvB82FEtqHP" + From 423fb453e26e2cd8929f10dabef0ce31daed4f57 Mon Sep 17 00:00:00 2001 From: Oscar Hinton Date: Tue, 9 May 2023 11:44:05 +0200 Subject: [PATCH 09/37] Fix version tags for gh workflows (#5402) --- .github/workflows/brew-bump-cli.yml | 2 +- .github/workflows/build-web.yml | 4 ++-- .github/workflows/chromatic.yml | 2 +- .github/workflows/enforce-labels.yml | 2 +- .github/workflows/label-issue-pull-request.yml | 2 +- .github/workflows/release-web.yml | 4 ++-- .github/workflows/test.yml | 2 +- .github/workflows/version-bump.yml | 2 +- 8 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/brew-bump-cli.yml b/.github/workflows/brew-bump-cli.yml index b90e750414c..5fdff310912 100644 --- a/.github/workflows/brew-bump-cli.yml +++ b/.github/workflows/brew-bump-cli.yml @@ -29,7 +29,7 @@ jobs: secrets: "brew-bump-workflow-pat" - name: Update Homebrew formula - uses: dawidd6/action-homebrew-bump-formula@dd221ff435f42fa8102b5871bb1929af9d76476c + uses: dawidd6/action-homebrew-bump-formula@dd221ff435f42fa8102b5871bb1929af9d76476c # v3.8.0 with: # Required, custom GitHub access token with the 'public_repo' and 'workflow' scopes token: ${{ steps.retrieve-secrets.outputs.brew-bump-workflow-pat }} diff --git a/.github/workflows/build-web.yml b/.github/workflows/build-web.yml index d957a1f2d28..f2cc18581ed 100644 --- a/.github/workflows/build-web.yml +++ b/.github/workflows/build-web.yml @@ -249,7 +249,7 @@ jobs: azure-keyvault-name: "bitwarden-ci" - name: Build Docker image - uses: docker/build-push-action@3b5e8027fcad23fda98b2e3ac259d8d67585f671 # v3.2.0 + uses: docker/build-push-action@3b5e8027fcad23fda98b2e3ac259d8d67585f671 # v4.0.0 with: context: apps/web file: apps/web/Dockerfile @@ -297,7 +297,7 @@ jobs: secrets: "crowdin-api-token" - name: Upload Sources - uses: crowdin/github-action@ecd7eb0ef6f3cfa16293c79e9cbc4bc5b5fd9c49 # v1.4.9 + uses: crowdin/github-action@3cabba4ddfd0579a1236b3fb68405236dc489ccc # v1.8.0 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} CROWDIN_API_TOKEN: ${{ steps.retrieve-secrets.outputs.crowdin-api-token }} diff --git a/.github/workflows/chromatic.yml b/.github/workflows/chromatic.yml index 0bcfdc18586..4c1e64722a0 100644 --- a/.github/workflows/chromatic.yml +++ b/.github/workflows/chromatic.yml @@ -33,7 +33,7 @@ jobs: run: npm ci - name: Publish to Chromatic - uses: chromaui/action@d51b84e79d164fbe8fc5bb7175695d88ddd04b72 # v1.0.0 + uses: chromaui/action@d51b84e79d164fbe8fc5bb7175695d88ddd04b72 with: token: ${{ secrets.GITHUB_TOKEN }} projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }} diff --git a/.github/workflows/enforce-labels.yml b/.github/workflows/enforce-labels.yml index 213cde0ebf5..73092bb2e0d 100644 --- a/.github/workflows/enforce-labels.yml +++ b/.github/workflows/enforce-labels.yml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-20.04 steps: - name: Enforce Label - uses: yogevbd/enforce-label-action@a3c219da6b8fa73f6ba62b68ff09c469b3a1c024 # v2.2.2 + uses: yogevbd/enforce-label-action@a3c219da6b8fa73f6ba62b68ff09c469b3a1c024 # 2.2.2 with: BANNED_LABELS: "hold,needs-qa" BANNED_LABELS_DESCRIPTION: "PRs with the hold or needs-qa labels cannot be merged" diff --git a/.github/workflows/label-issue-pull-request.yml b/.github/workflows/label-issue-pull-request.yml index 8b25d8947ec..5f3214b3451 100644 --- a/.github/workflows/label-issue-pull-request.yml +++ b/.github/workflows/label-issue-pull-request.yml @@ -16,7 +16,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Add label to pull request - uses: andymckay/labeler@e6c4322d0397f3240f0e7e30a33b5c5df2d39e90 # v1.0.4 + uses: andymckay/labeler@e6c4322d0397f3240f0e7e30a33b5c5df2d39e90 # 1.0.4 if: ${{ !github.event.pull_request.head.repo.fork }} with: add-labels: "needs-qa" diff --git a/.github/workflows/release-web.yml b/.github/workflows/release-web.yml index e2ebdb9cb1c..0c7e1124b25 100644 --- a/.github/workflows/release-web.yml +++ b/.github/workflows/release-web.yml @@ -294,7 +294,7 @@ jobs: - name: Update deployment status to Success if: ${{ github.event.inputs.release_type != 'Dry Run' && success() }} - uses: chrnorm/deployment-status@d42cde7132fcec920de534fffc3be83794335c00 # v2.0.5 + uses: chrnorm/deployment-status@2afb7d27101260f4a764219439564d954d10b5b0 # v2.0.1 with: token: '${{ secrets.GITHUB_TOKEN }}' environment-url: http://vault.bitwarden.com @@ -303,7 +303,7 @@ jobs: - name: Update deployment status to Failure if: ${{ github.event.inputs.release_type != 'Dry Run' && failure() }} - uses: chrnorm/deployment-status@d42cde7132fcec920de534fffc3be83794335c00 # v2.0.5 + uses: chrnorm/deployment-status@2afb7d27101260f4a764219439564d954d10b5b0 # v2.0.1 with: token: '${{ secrets.GITHUB_TOKEN }}' environment-url: http://vault.bitwarden.com diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 49dc9db4538..4a9aa1cf0f6 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -82,7 +82,7 @@ jobs: uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 - name: Install rust - uses: actions-rs/toolchain@88dc2356392166efad76775c878094f4e83ff746 # v1.0.6 + uses: actions-rs/toolchain@16499b5e05bf2e26879000db0c1d13f7e13fa3af # v1.0.7 with: toolchain: stable profile: minimal diff --git a/.github/workflows/version-bump.yml b/.github/workflows/version-bump.yml index 9c74f8b8fc1..22c4ab157eb 100644 --- a/.github/workflows/version-bump.yml +++ b/.github/workflows/version-bump.yml @@ -55,7 +55,7 @@ jobs: secrets: "github-gpg-private-key, github-gpg-private-key-passphrase" - name: Import GPG key - uses: crazy-max/ghaction-import-gpg@c8bb57c57e8df1be8c73ff3d59deab1dbc00e0d1 # v5.2.0 + uses: crazy-max/ghaction-import-gpg@c8bb57c57e8df1be8c73ff3d59deab1dbc00e0d1 # v5.3.0 with: gpg_private_key: ${{ steps.retrieve-secrets.outputs.github-gpg-private-key }} passphrase: ${{ steps.retrieve-secrets.outputs.github-gpg-private-key-passphrase }} From c5674080efccce8e51c6f65c6cbd8f9cf107257f Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 9 May 2023 09:54:19 -0400 Subject: [PATCH 10/37] Bumped web version to 2023.4.1 (#5412) Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com> --- apps/web/package.json | 2 +- package-lock.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/web/package.json b/apps/web/package.json index 202b55ac285..90feb902be4 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -1,6 +1,6 @@ { "name": "@bitwarden/web-vault", - "version": "2023.4.0", + "version": "2023.4.1", "scripts": { "build:oss": "webpack", "build:bit": "webpack -c ../../bitwarden_license/bit-web/webpack.config.js", diff --git a/package-lock.json b/package-lock.json index 49414111c68..384800aafdb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -240,7 +240,7 @@ }, "apps/web": { "name": "@bitwarden/web-vault", - "version": "2023.4.0" + "version": "2023.4.1" }, "libs/angular": { "name": "@bitwarden/angular", From e97390ba3f115cd44f4763839d97f304e9cc89aa Mon Sep 17 00:00:00 2001 From: cd-bitwarden <106776772+cd-bitwarden@users.noreply.github.com> Date: Tue, 9 May 2023 09:56:17 -0400 Subject: [PATCH 11/37] =?UTF-8?q?[SM-664]=20Checking=20if=20the=20user=20h?= =?UTF-8?q?as=20selected=20access=20tokens=20to=20revoke,=20if=20not=20err?= =?UTF-8?q?=E2=80=A6=20(#5299)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Checking if the user has selected access tokens to revoke, if not error message * change messaging * SM-664: Refactor revoke function and make the bwi-minus-circle red --------- Co-authored-by: Colton Hurst --- apps/web/src/locales/en/messages.json | 4 ++++ .../access/access-list.component.html | 6 ++++-- .../access/access-tokens.component.ts | 15 +++++++++++++-- 3 files changed, 21 insertions(+), 4 deletions(-) diff --git a/apps/web/src/locales/en/messages.json b/apps/web/src/locales/en/messages.json index 578caf9ad50..35bd7b3a630 100644 --- a/apps/web/src/locales/en/messages.json +++ b/apps/web/src/locales/en/messages.json @@ -6174,6 +6174,10 @@ "message": "Access tokens revoked", "description": "Toast message after deleting one or multiple access tokens." }, + "noAccessTokenSelected": { + "message": "No access token selected to revoke", + "description": "Toast error message after trying to delete access tokens but not selecting any access tokens." + }, "submenu": { "message": "Submenu" }, diff --git a/bitwarden_license/bit-web/src/app/secrets-manager/service-accounts/access/access-list.component.html b/bitwarden_license/bit-web/src/app/secrets-manager/service-accounts/access/access-list.component.html index efcb70a0ef9..632e10c8c7f 100644 --- a/bitwarden_license/bit-web/src/app/secrets-manager/service-accounts/access/access-list.component.html +++ b/bitwarden_license/bit-web/src/app/secrets-manager/service-accounts/access/access-list.component.html @@ -87,7 +87,9 @@ diff --git a/bitwarden_license/bit-web/src/app/secrets-manager/service-accounts/access/access-tokens.component.ts b/bitwarden_license/bit-web/src/app/secrets-manager/service-accounts/access/access-tokens.component.ts index b9a8a88b539..2355f3049f0 100644 --- a/bitwarden_license/bit-web/src/app/secrets-manager/service-accounts/access/access-tokens.component.ts +++ b/bitwarden_license/bit-web/src/app/secrets-manager/service-accounts/access/access-tokens.component.ts @@ -4,6 +4,7 @@ import { combineLatestWith, Observable, startWith, switchMap } from "rxjs"; import { DialogServiceAbstraction } from "@bitwarden/angular/services/dialog"; import { ModalService } from "@bitwarden/angular/services/modal.service"; +import { I18nService } from "@bitwarden/common/abstractions/i18n.service"; import { PlatformUtilsService } from "@bitwarden/common/abstractions/platformUtils.service"; import { UserVerificationPromptComponent } from "@bitwarden/web-vault/app/components/user-verification-prompt.component"; @@ -27,7 +28,8 @@ export class AccessTokenComponent implements OnInit { private accessService: AccessService, private dialogService: DialogServiceAbstraction, private modalService: ModalService, - private platformUtilsService: PlatformUtilsService + private platformUtilsService: PlatformUtilsService, + private i18nService: I18nService ) {} ngOnInit() { @@ -43,6 +45,15 @@ export class AccessTokenComponent implements OnInit { } protected async revoke(tokens: AccessTokenView[]) { + if (!tokens?.length) { + this.platformUtilsService.showToast( + "error", + null, + this.i18nService.t("noAccessTokenSelected") + ); + return; + } + if (!(await this.verifyUser())) { return; } @@ -52,7 +63,7 @@ export class AccessTokenComponent implements OnInit { tokens.map((t) => t.id) ); - this.platformUtilsService.showToast("success", null, "Access tokens revoked."); + this.platformUtilsService.showToast("success", null, this.i18nService.t("accessTokenRevoked")); } protected openNewAccessTokenDialog() { From 518e184ad6a46badb8d28c64a419e20588784b41 Mon Sep 17 00:00:00 2001 From: Todd Martin <106564991+trmartin4@users.noreply.github.com> Date: Tue, 9 May 2023 10:23:16 -0400 Subject: [PATCH 12/37] Removed PR edit trigger from workflow that adds needs-qa label (#5398) * Removed check on edit * Linting --- .github/workflows/label-issue-pull-request.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/label-issue-pull-request.yml b/.github/workflows/label-issue-pull-request.yml index 5f3214b3451..a83e9e569b4 100644 --- a/.github/workflows/label-issue-pull-request.yml +++ b/.github/workflows/label-issue-pull-request.yml @@ -5,7 +5,8 @@ name: Label Issue Pull Request on: pull_request: - types: [opened, edited] # Check when PR is opened or target branch is edited + types: + - opened # Check when PR is opened paths-ignore: - .github/workflows/** # We don't need QA on workflow changes branches: From 4174ba3afdf0f5b28cb0cdb53d0cf1f2be8db35c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 9 May 2023 10:38:11 -0600 Subject: [PATCH 13/37] chore(deps): update gh minor (#5400) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/brew-bump-cli.yml | 4 +- .github/workflows/brew-bump-desktop.yml | 2 +- .github/workflows/build-browser.yml | 38 ++++----- .github/workflows/build-cli.yml | 34 ++++---- .github/workflows/build-desktop.yml | 88 ++++++++++---------- .github/workflows/build-web.yml | 24 +++--- .github/workflows/chromatic.yml | 4 +- .github/workflows/crowdin-pull.yml | 4 +- .github/workflows/deploy-non-prod-web.yml | 4 +- .github/workflows/lint.yml | 4 +- .github/workflows/release-browser.yml | 4 +- .github/workflows/release-cli.yml | 14 ++-- .github/workflows/release-desktop-beta.yml | 76 ++++++++--------- .github/workflows/release-desktop.yml | 12 +-- .github/workflows/release-qa-web.yml | 4 +- .github/workflows/release-web.yml | 8 +- .github/workflows/staged-rollout-desktop.yml | 2 +- .github/workflows/test.yml | 6 +- .github/workflows/version-auto-bump.yml | 2 +- .github/workflows/version-bump.yml | 2 +- 20 files changed, 168 insertions(+), 168 deletions(-) diff --git a/.github/workflows/brew-bump-cli.yml b/.github/workflows/brew-bump-cli.yml index 5fdff310912..43fdb368dd6 100644 --- a/.github/workflows/brew-bump-cli.yml +++ b/.github/workflows/brew-bump-cli.yml @@ -17,7 +17,7 @@ jobs: runs-on: macos-11 steps: - name: Login to Azure - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} @@ -29,7 +29,7 @@ jobs: secrets: "brew-bump-workflow-pat" - name: Update Homebrew formula - uses: dawidd6/action-homebrew-bump-formula@dd221ff435f42fa8102b5871bb1929af9d76476c # v3.8.0 + uses: dawidd6/action-homebrew-bump-formula@d3667e5ae14df19579e4414897498e3e88f2f458 # v3.10.0 with: # Required, custom GitHub access token with the 'public_repo' and 'workflow' scopes token: ${{ steps.retrieve-secrets.outputs.brew-bump-workflow-pat }} diff --git a/.github/workflows/brew-bump-desktop.yml b/.github/workflows/brew-bump-desktop.yml index f204d4ff8cb..a3a0e3849cc 100644 --- a/.github/workflows/brew-bump-desktop.yml +++ b/.github/workflows/brew-bump-desktop.yml @@ -17,7 +17,7 @@ jobs: runs-on: macos-11 steps: - name: Login to Azure - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} diff --git a/.github/workflows/build-browser.yml b/.github/workflows/build-browser.yml index 26382e0c5b2..f69618a30d4 100644 --- a/.github/workflows/build-browser.yml +++ b/.github/workflows/build-browser.yml @@ -41,7 +41,7 @@ jobs: runs-on: ubuntu-20.04 steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Set up cloc run: | @@ -79,7 +79,7 @@ jobs: working-directory: apps/browser steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Testing locales - extName length run: | @@ -119,10 +119,10 @@ jobs: working-directory: apps/browser steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Set up Node - uses: actions/setup-node@eeb10cff27034e7acf239c5d29f62154018672fd # v3.3.0 + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 with: cache: 'npm' cache-dependency-path: '**/package-lock.json' @@ -173,56 +173,56 @@ jobs: working-directory: ./ - name: Upload Opera artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: dist-opera-${{ env._BUILD_NUMBER }}.zip path: apps/browser/dist/dist-opera.zip if-no-files-found: error - name: Upload Opera MV3 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: dist-opera-MV3-${{ env._BUILD_NUMBER }}.zip path: apps/browser/dist/dist-opera-mv3.zip if-no-files-found: error - name: Upload Chrome artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: dist-chrome-${{ env._BUILD_NUMBER }}.zip path: apps/browser/dist/dist-chrome.zip if-no-files-found: error - name: Upload Chrome MV3 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: dist-chrome-MV3-${{ env._BUILD_NUMBER }}.zip path: apps/browser/dist/dist-chrome-mv3.zip if-no-files-found: error - name: Upload Firefox artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: dist-firefox-${{ env._BUILD_NUMBER }}.zip path: apps/browser/dist/dist-firefox.zip if-no-files-found: error - name: Upload Edge artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: dist-edge-${{ env._BUILD_NUMBER }}.zip path: apps/browser/dist/dist-edge.zip if-no-files-found: error - name: Upload Edge MV3 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: dist-edge-MV3-${{ env._BUILD_NUMBER }}.zip path: apps/browser/dist/dist-edge-mv3.zip if-no-files-found: error - name: Upload browser source - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: browser-source-${{ env._BUILD_NUMBER }}.zip path: browser-source.zip @@ -230,7 +230,7 @@ jobs: - name: Upload coverage artifact if: false - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: coverage-${{ env._BUILD_NUMBER }}.zip path: apps/browser/coverage/coverage-${{ env._BUILD_NUMBER }}.zip @@ -246,10 +246,10 @@ jobs: _BUILD_NUMBER: ${{ needs.setup.outputs.adj_build_number }} steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Set up Node - uses: actions/setup-node@eeb10cff27034e7acf239c5d29f62154018672fd # v3.3.0 + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 with: cache: 'npm' cache-dependency-path: '**/package-lock.json' @@ -330,7 +330,7 @@ jobs: ls -la - name: Upload Safari artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: dist-safari-${{ env._BUILD_NUMBER }}.zip path: apps/browser/dist/dist-safari.zip @@ -345,10 +345,10 @@ jobs: - build-safari steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Login to Azure - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} @@ -408,7 +408,7 @@ jobs: fi - name: Login to Azure - Prod Subscription - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 if: failure() with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} diff --git a/.github/workflows/build-cli.yml b/.github/workflows/build-cli.yml index f0b1e0c650f..b9313fb636f 100644 --- a/.github/workflows/build-cli.yml +++ b/.github/workflows/build-cli.yml @@ -38,7 +38,7 @@ jobs: runs-on: ubuntu-20.04 steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Set up cloc run: | @@ -56,7 +56,7 @@ jobs: package_version: ${{ steps.retrieve-version.outputs.package_version }} steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Get Package Version id: retrieve-version @@ -79,7 +79,7 @@ jobs: _WIN_PKG_VERSION: 3.4 steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Setup Unix Vars run: | @@ -88,7 +88,7 @@ jobs: awk '{print tolower($0)}')" >> $GITHUB_ENV - name: Set up Node - uses: actions/setup-node@17f8bd926464a1afa4c6a11669539e9c1ba77048 # v3.2.0 + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 with: cache: 'npm' cache-dependency-path: '**/package-lock.json' @@ -129,14 +129,14 @@ jobs: | awk '{split($0, a); print a[1]}' > bw-${{ env.LOWER_RUNNER_OS }}-sha256-${{ env._PACKAGE_VERSION }}.txt - name: Upload unix zip asset - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: bw-${{ env.LOWER_RUNNER_OS }}-${{ env._PACKAGE_VERSION }}.zip path: apps/cli/dist/bw-${{ env.LOWER_RUNNER_OS }}-${{ env._PACKAGE_VERSION }}.zip if-no-files-found: error - name: Upload unix checksum asset - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: bw-${{ env.LOWER_RUNNER_OS }}-sha256-${{ env._PACKAGE_VERSION }}.txt path: apps/cli/dist/bw-${{ env.LOWER_RUNNER_OS }}-sha256-${{ env._PACKAGE_VERSION }}.txt @@ -153,7 +153,7 @@ jobs: _WIN_PKG_VERSION: 3.4 steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Setup Windows builder run: | @@ -162,7 +162,7 @@ jobs: choco install nasm --no-progress - name: Set up Node - uses: actions/setup-node@17f8bd926464a1afa4c6a11669539e9c1ba77048 # v3.2.0 + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 with: cache: 'npm' cache-dependency-path: '**/package-lock.json' @@ -264,28 +264,28 @@ jobs: -t sha256 | Out-File -Encoding ASCII ./dist/bw-windows-sha256-${env:_PACKAGE_VERSION}.txt - name: Upload windows zip asset - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: bw-windows-${{ env._PACKAGE_VERSION }}.zip path: apps/cli/dist/bw-windows-${{ env._PACKAGE_VERSION }}.zip if-no-files-found: error - name: Upload windows checksum asset - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: bw-windows-sha256-${{ env._PACKAGE_VERSION }}.txt path: apps/cli/dist/bw-windows-sha256-${{ env._PACKAGE_VERSION }}.txt if-no-files-found: error - name: Upload Chocolatey asset - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: bitwarden-cli.${{ env._PACKAGE_VERSION }}.nupkg path: apps/cli/dist/chocolatey/bitwarden-cli.${{ env._PACKAGE_VERSION }}.nupkg if-no-files-found: error - name: Upload NPM Build Directory asset - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: bitwarden-cli-${{ env._PACKAGE_VERSION }}-npm-build.zip path: apps/cli/build @@ -299,7 +299,7 @@ jobs: _PACKAGE_VERSION: ${{ needs.setup.outputs.package_version }} steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Print environment run: | @@ -322,7 +322,7 @@ jobs: ls -alth - name: Build snap - uses: snapcore/action-build@ea14cdeb353272f75977040488ca191880509a8c # v1.1.0 + uses: snapcore/action-build@3457752ec9b1c79a8290b5167fce2d14df0997c1 # v1.1.2 with: path: apps/cli/dist/snap @@ -351,14 +351,14 @@ jobs: run: sudo snap remove bw - name: Upload snap asset - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: bw_${{ env._PACKAGE_VERSION }}_amd64.snap path: apps/cli/dist/snap/bw_${{ env._PACKAGE_VERSION }}_amd64.snap if-no-files-found: error - name: Upload snap checksum asset - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: bw-snap-sha256-${{ env._PACKAGE_VERSION }}.txt path: apps/cli/dist/snap/bw-snap-sha256-${{ env._PACKAGE_VERSION }}.txt @@ -396,7 +396,7 @@ jobs: fi - name: Login to Azure - Prod Subscription - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 if: failure() with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} diff --git a/.github/workflows/build-desktop.yml b/.github/workflows/build-desktop.yml index 8c7e05a216d..579036e8e87 100644 --- a/.github/workflows/build-desktop.yml +++ b/.github/workflows/build-desktop.yml @@ -40,7 +40,7 @@ jobs: runs-on: ubuntu-20.04 steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Set up cloc run: | @@ -55,7 +55,7 @@ jobs: runs-on: ubuntu-20.04 steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Verify run: | @@ -83,7 +83,7 @@ jobs: working-directory: apps/desktop steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Get Package Version id: retrieve-version @@ -143,10 +143,10 @@ jobs: working-directory: apps/desktop steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Set up Node - uses: actions/setup-node@17f8bd926464a1afa4c6a11669539e9c1ba77048 # v3.2.0 + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 with: cache: 'npm' cache-dependency-path: '**/package-lock.json' @@ -204,42 +204,42 @@ jobs: run: npm run dist:lin - name: Upload .deb artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-amd64.deb path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-amd64.deb if-no-files-found: error - name: Upload .rpm artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-x86_64.rpm path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-x86_64.rpm if-no-files-found: error - name: Upload .freebsd artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-x64.freebsd path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-x64.freebsd if-no-files-found: error - name: Upload .snap artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: bitwarden_${{ env._PACKAGE_VERSION }}_amd64.snap path: apps/desktop/dist/bitwarden_${{ env._PACKAGE_VERSION }}_amd64.snap if-no-files-found: error - name: Upload .AppImage artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-x86_64.AppImage path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-x86_64.AppImage if-no-files-found: error - name: Upload auto-update artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: ${{ needs.setup.outputs.release_channel }}-linux.yml path: apps/desktop/dist/${{ needs.setup.outputs.release_channel }}-linux.yml @@ -259,10 +259,10 @@ jobs: _PACKAGE_VERSION: ${{ needs.setup.outputs.package_version }} steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Set up Node - uses: actions/setup-node@17f8bd926464a1afa4c6a11669539e9c1ba77048 # v3.2.0 + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 with: cache: 'npm' cache-dependency-path: '**/package-lock.json' @@ -296,7 +296,7 @@ jobs: rustup show - name: Login to Azure - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} @@ -369,91 +369,91 @@ jobs: -NewName bitwarden-${{ env._PACKAGE_VERSION }}-arm64.nsis.7z - name: Upload portable exe artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-Portable-${{ env._PACKAGE_VERSION }}.exe path: apps/desktop/dist/Bitwarden-Portable-${{ env._PACKAGE_VERSION }}.exe if-no-files-found: error - name: Upload installer exe artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-Installer-${{ env._PACKAGE_VERSION }}.exe path: apps/desktop/dist/nsis-web/Bitwarden-Installer-${{ env._PACKAGE_VERSION }}.exe if-no-files-found: error - name: Upload appx ia32 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-ia32.appx path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-ia32.appx if-no-files-found: error - name: Upload store appx ia32 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-ia32-store.appx path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-ia32-store.appx if-no-files-found: error - name: Upload NSIS ia32 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: bitwarden-${{ env._PACKAGE_VERSION }}-ia32.nsis.7z path: apps/desktop/dist/nsis-web/bitwarden-${{ env._PACKAGE_VERSION }}-ia32.nsis.7z if-no-files-found: error - name: Upload appx x64 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-x64.appx path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-x64.appx if-no-files-found: error - name: Upload store appx x64 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-x64-store.appx path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-x64-store.appx if-no-files-found: error - name: Upload NSIS x64 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: bitwarden-${{ env._PACKAGE_VERSION }}-x64.nsis.7z path: apps/desktop/dist/nsis-web/bitwarden-${{ env._PACKAGE_VERSION }}-x64.nsis.7z if-no-files-found: error - name: Upload appx ARM64 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-arm64.appx path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-arm64.appx if-no-files-found: error - name: Upload store appx ARM64 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-arm64-store.appx path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-arm64-store.appx if-no-files-found: error - name: Upload NSIS ARM64 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: bitwarden-${{ env._PACKAGE_VERSION }}-arm64.nsis.7z path: apps/desktop/dist/nsis-web/bitwarden-${{ env._PACKAGE_VERSION }}-arm64.nsis.7z if-no-files-found: error - name: Upload nupkg artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: bitwarden.${{ env._PACKAGE_VERSION }}.nupkg path: apps/desktop/dist/chocolatey/bitwarden.${{ env._PACKAGE_VERSION }}.nupkg if-no-files-found: error - name: Upload auto-update artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: ${{ needs.setup.outputs.release_channel }}.yml path: apps/desktop/dist/nsis-web/${{ needs.setup.outputs.release_channel }}.yml @@ -472,10 +472,10 @@ jobs: working-directory: apps/desktop steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Set up Node - uses: actions/setup-node@17f8bd926464a1afa4c6a11669539e9c1ba77048 # v3.2.0 + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 with: cache: 'npm' cache-dependency-path: '**/package-lock.json' @@ -624,10 +624,10 @@ jobs: working-directory: apps/desktop steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Set up Node - uses: actions/setup-node@17f8bd926464a1afa4c6a11669539e9c1ba77048 # v3.2.0 + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 with: cache: 'npm' cache-dependency-path: '**/package-lock.json' @@ -779,28 +779,28 @@ jobs: run: npm run pack:mac - name: Upload .zip artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-universal-mac.zip path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-universal-mac.zip if-no-files-found: error - name: Upload .dmg artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-universal.dmg path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-universal.dmg if-no-files-found: error - name: Upload .dmg blockmap artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-universal.dmg.blockmap path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-universal.dmg.blockmap if-no-files-found: error - name: Upload auto-update artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: ${{ needs.setup.outputs.release_channel }}-mac.yml path: apps/desktop/dist/${{ needs.setup.outputs.release_channel }}-mac.yml @@ -821,10 +821,10 @@ jobs: working-directory: apps/desktop steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Set up Node - uses: actions/setup-node@17f8bd926464a1afa4c6a11669539e9c1ba77048 # v3.2.0 + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 with: cache: 'npm' cache-dependency-path: '**/package-lock.json' @@ -976,7 +976,7 @@ jobs: CSC_FOR_PULL_REQUEST: true - name: Upload .pkg artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-universal.pkg path: apps/desktop/dist/mas-universal/Bitwarden-${{ env._PACKAGE_VERSION }}-universal.pkg @@ -1010,10 +1010,10 @@ jobs: working-directory: apps/desktop steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Set up Node - uses: actions/setup-node@17f8bd926464a1afa4c6a11669539e9c1ba77048 # v3.2.0 + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 with: cache: 'npm' cache-dependency-path: '**/package-lock.json' @@ -1163,7 +1163,7 @@ jobs: run: zip -r Bitwarden-${{ env.PACKAGE_VERSION }}-masdev-universal.zip Bitwarden.app - name: Upload masdev artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-masdev-universal.zip path: apps/desktop/dist/mas-universal/Bitwarden-${{ env._PACKAGE_VERSION }}-masdev-universal.zip @@ -1181,10 +1181,10 @@ jobs: runs-on: ubuntu-20.04 steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Login to Azure - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} @@ -1261,7 +1261,7 @@ jobs: fi - name: Login to Azure - Prod Subscription - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 if: failure() with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} diff --git a/.github/workflows/build-web.yml b/.github/workflows/build-web.yml index f2cc18581ed..ea9e9ffa788 100644 --- a/.github/workflows/build-web.yml +++ b/.github/workflows/build-web.yml @@ -37,7 +37,7 @@ jobs: runs-on: ubuntu-22.04 steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Set up cloc run: | @@ -56,7 +56,7 @@ jobs: version: ${{ steps.version.outputs.value }} steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Get GitHub sha as version id: version @@ -87,10 +87,10 @@ jobs: steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Set up Node - uses: actions/setup-node@2fddd8803e2f5c9604345a0b591c3020ee971a93 # v3.4.1 + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 with: cache: 'npm' cache-dependency-path: '**/package-lock.json' @@ -126,7 +126,7 @@ jobs: run: zip -r web-${{ env._VERSION }}-${{ matrix.name }}.zip build - name: Upload ${{ matrix.name }} artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: web-${{ env._VERSION }}-${{ matrix.name }}.zip path: apps/web/web-${{ env._VERSION }}-${{ matrix.name }}.zip @@ -156,7 +156,7 @@ jobs: _VERSION: ${{ needs.setup.outputs.version }} steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Check Branch to Publish env: @@ -173,7 +173,7 @@ jobs: ########## ACRs ########## - name: Login to Azure - QA - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_QA_KV_CREDENTIALS }} @@ -181,7 +181,7 @@ jobs: run: az acr login -n bitwardenqa - name: Login to Azure - Prod - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_PROD_KV_CREDENTIALS }} @@ -229,7 +229,7 @@ jobs: run: unzip web-${{ env._VERSION }}-${{ matrix.artifact_name }}.zip - name: Login to Azure - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} @@ -282,10 +282,10 @@ jobs: runs-on: ubuntu-22.04 steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Login to Azure - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} @@ -344,7 +344,7 @@ jobs: fi - name: Login to Azure - Prod Subscription - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 if: failure() with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} diff --git a/.github/workflows/chromatic.yml b/.github/workflows/chromatic.yml index 4c1e64722a0..cb2a4ba7607 100644 --- a/.github/workflows/chromatic.yml +++ b/.github/workflows/chromatic.yml @@ -13,12 +13,12 @@ jobs: steps: - name: Set up Node - uses: actions/setup-node@9ced9a43a244f3ac94f13bfd896db8c8f30da67a # v3.0.0 + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 with: node-version: "16" - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 with: fetch-depth: 0 diff --git a/.github/workflows/crowdin-pull.yml b/.github/workflows/crowdin-pull.yml index 1bacc203cd2..2a447d58552 100644 --- a/.github/workflows/crowdin-pull.yml +++ b/.github/workflows/crowdin-pull.yml @@ -23,10 +23,10 @@ jobs: crowdin_project_id: "308189" steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Login to Azure - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} diff --git a/.github/workflows/deploy-non-prod-web.yml b/.github/workflows/deploy-non-prod-web.yml index 143f520ad1b..c1118856dd2 100644 --- a/.github/workflows/deploy-non-prod-web.yml +++ b/.github/workflows/deploy-non-prod-web.yml @@ -60,7 +60,7 @@ jobs: description: 'Deployment from branch ${{ github.ref_name }}' - name: Checkout Repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Download latest cloud asset uses: bitwarden/gh-actions/download-artifacts@34ecb67b2a357795dc893549df0795e7383ff50f @@ -76,7 +76,7 @@ jobs: run: unzip ${{ env._ENVIRONMENT_ARTIFACT }} - name: Checkout Repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 with: ref: ${{ env._ENVIRONMENT_BRANCH }} path: deployment diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 99be92c941d..2cc004987a1 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -21,7 +21,7 @@ jobs: runs-on: ubuntu-20.04 steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Lint filenames (no capital characters) run: | @@ -39,7 +39,7 @@ jobs: diff <(sort .github/whitelist-capital-letters.txt) <(sort tmp.txt) - name: Set up Node - uses: actions/setup-node@9ced9a43a244f3ac94f13bfd896db8c8f30da67a # v3.0.0 + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 with: cache: 'npm' cache-dependency-path: '**/package-lock.json' diff --git a/.github/workflows/release-browser.yml b/.github/workflows/release-browser.yml index e7ac530c84e..a9e99fb2397 100644 --- a/.github/workflows/release-browser.yml +++ b/.github/workflows/release-browser.yml @@ -27,7 +27,7 @@ jobs: release-version: ${{ steps.version.outputs.version }} steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Branch check if: ${{ github.event.inputs.release_type != 'Dry Run' }} @@ -56,7 +56,7 @@ jobs: needs: setup steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Testing locales - extName length run: | diff --git a/.github/workflows/release-cli.yml b/.github/workflows/release-cli.yml index f09d1e8a8d2..1714134be98 100644 --- a/.github/workflows/release-cli.yml +++ b/.github/workflows/release-cli.yml @@ -43,7 +43,7 @@ jobs: release-version: ${{ steps.version.outputs.version }} steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Branch check if: ${{ github.event.inputs.release_type != 'Dry Run' }} @@ -141,10 +141,10 @@ jobs: _PKG_VERSION: ${{ needs.setup.outputs.release-version }} steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Login to Azure - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} @@ -195,10 +195,10 @@ jobs: _PKG_VERSION: ${{ needs.setup.outputs.release-version }} steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Login to Azure - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} @@ -254,10 +254,10 @@ jobs: _PKG_VERSION: ${{ needs.setup.outputs.release-version }} steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Login to Azure - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} diff --git a/.github/workflows/release-desktop-beta.yml b/.github/workflows/release-desktop-beta.yml index 76db07eb6ea..febf7996a9f 100644 --- a/.github/workflows/release-desktop-beta.yml +++ b/.github/workflows/release-desktop-beta.yml @@ -23,7 +23,7 @@ jobs: build_number: ${{ steps.increment-version.outputs.build_number }} steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Branch check run: | @@ -115,12 +115,12 @@ jobs: working-directory: apps/desktop steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 with: ref: ${{ needs.setup.outputs.branch-name }} - name: Set up Node - uses: actions/setup-node@9ced9a43a244f3ac94f13bfd896db8c8f30da67a # v3.0.0 + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 with: cache: 'npm' cache-dependency-path: '**/package-lock.json' @@ -157,42 +157,42 @@ jobs: run: npm run dist:lin - name: Upload .deb artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-amd64.deb path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-amd64.deb if-no-files-found: error - name: Upload .rpm artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-x86_64.rpm path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-x86_64.rpm if-no-files-found: error - name: Upload .freebsd artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-x64.freebsd path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-x64.freebsd if-no-files-found: error - name: Upload .snap artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: bitwarden_${{ env._PACKAGE_VERSION }}_amd64.snap path: apps/desktop/dist/bitwarden_${{ env._PACKAGE_VERSION }}_amd64.snap if-no-files-found: error - name: Upload .AppImage artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-x86_64.AppImage path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-x86_64.AppImage if-no-files-found: error - name: Upload auto-update artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: ${{ needs.setup.outputs.release-channel }}-linux.yml path: apps/desktop/dist/${{ needs.setup.outputs.release-channel }}-linux.yml @@ -211,12 +211,12 @@ jobs: _PACKAGE_VERSION: ${{ needs.setup.outputs.release-version }} steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 with: ref: ${{ needs.setup.outputs.branch-name }} - name: Set up Node - uses: actions/setup-node@9ced9a43a244f3ac94f13bfd896db8c8f30da67a # v3.0.0 + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 with: cache: 'npm' cache-dependency-path: '**/package-lock.json' @@ -243,7 +243,7 @@ jobs: choco --version - name: Login to Azure - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} @@ -304,91 +304,91 @@ jobs: -NewName bitwarden-${{ env._PACKAGE_VERSION }}-arm64.nsis.7z - name: Upload portable exe artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-Portable-${{ env._PACKAGE_VERSION }}.exe path: apps/desktop/dist/Bitwarden-Portable-${{ env._PACKAGE_VERSION }}.exe if-no-files-found: error - name: Upload installer exe artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-Installer-${{ env._PACKAGE_VERSION }}.exe path: apps/desktop/dist/nsis-web/Bitwarden-Installer-${{ env._PACKAGE_VERSION }}.exe if-no-files-found: error - name: Upload appx ia32 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-ia32.appx path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-ia32.appx if-no-files-found: error - name: Upload store appx ia32 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-ia32-store.appx path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-ia32-store.appx if-no-files-found: error - name: Upload NSIS ia32 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: bitwarden-${{ env._PACKAGE_VERSION }}-ia32.nsis.7z path: apps/desktop/dist/nsis-web/bitwarden-${{ env._PACKAGE_VERSION }}-ia32.nsis.7z if-no-files-found: error - name: Upload appx x64 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-x64.appx path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-x64.appx if-no-files-found: error - name: Upload store appx x64 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-x64-store.appx path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-x64-store.appx if-no-files-found: error - name: Upload NSIS x64 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: bitwarden-${{ env._PACKAGE_VERSION }}-x64.nsis.7z path: apps/desktop/dist/nsis-web/bitwarden-${{ env._PACKAGE_VERSION }}-x64.nsis.7z if-no-files-found: error - name: Upload appx ARM64 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-arm64.appx path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-arm64.appx if-no-files-found: error - name: Upload store appx ARM64 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-arm64-store.appx path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-arm64-store.appx if-no-files-found: error - name: Upload NSIS ARM64 artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: bitwarden-${{ env._PACKAGE_VERSION }}-arm64.nsis.7z path: apps/desktop/dist/nsis-web/bitwarden-${{ env._PACKAGE_VERSION }}-arm64.nsis.7z if-no-files-found: error - name: Upload nupkg artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: bitwarden.${{ env._PACKAGE_VERSION }}.nupkg path: apps/desktop/dist/chocolatey/bitwarden.${{ env._PACKAGE_VERSION }}.nupkg if-no-files-found: error - name: Upload auto-update artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: ${{ needs.setup.outputs.release-channel }}.yml path: apps/desktop/dist/nsis-web/${{ needs.setup.outputs.release-channel }}.yml @@ -406,12 +406,12 @@ jobs: working-directory: apps/desktop steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 with: ref: ${{ needs.setup.outputs.branch-name }} - name: Set up Node - uses: actions/setup-node@9ced9a43a244f3ac94f13bfd896db8c8f30da67a # v3.0.0 + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 with: cache: 'npm' cache-dependency-path: '**/package-lock.json' @@ -535,12 +535,12 @@ jobs: working-directory: apps/desktop steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 with: ref: ${{ needs.setup.outputs.branch-name }} - name: Set up Node - uses: actions/setup-node@9ced9a43a244f3ac94f13bfd896db8c8f30da67a # v3.0.0 + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 with: cache: 'npm' cache-dependency-path: '**/package-lock.json' @@ -696,28 +696,28 @@ jobs: run: npm run pack:mac - name: Upload .zip artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-universal-mac.zip path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-universal-mac.zip if-no-files-found: error - name: Upload .dmg artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-universal.dmg path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-universal.dmg if-no-files-found: error - name: Upload .dmg blockmap artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-universal.dmg.blockmap path: apps/desktop/dist/Bitwarden-${{ env._PACKAGE_VERSION }}-universal.dmg.blockmap if-no-files-found: error - name: Upload auto-update artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: ${{ needs.setup.outputs.release-channel }}-mac.yml path: apps/desktop/dist/${{ needs.setup.outputs.release-channel }}-mac.yml @@ -737,12 +737,12 @@ jobs: working-directory: apps/desktop steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 with: ref: ${{ needs.setup.outputs.branch-name }} - name: Set up Node - uses: actions/setup-node@9ced9a43a244f3ac94f13bfd896db8c8f30da67a # v3.0.0 + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 with: cache: 'npm' cache-dependency-path: '**/package-lock.json' @@ -898,7 +898,7 @@ jobs: APPLE_ID_PASSWORD: ${{ secrets.APPLE_ID_PASSWORD }} - name: Upload .pkg artifact - uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 with: name: Bitwarden-${{ env._PACKAGE_VERSION }}-universal.pkg path: apps/desktop/dist/mas-universal/Bitwarden-${{ env._PACKAGE_VERSION }}-universal.pkg @@ -926,7 +926,7 @@ jobs: task: release - name: Login to Azure - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} @@ -1011,7 +1011,7 @@ jobs: - release steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Setup git config run: | diff --git a/.github/workflows/release-desktop.yml b/.github/workflows/release-desktop.yml index 2ddeba45169..37f94341551 100644 --- a/.github/workflows/release-desktop.yml +++ b/.github/workflows/release-desktop.yml @@ -53,7 +53,7 @@ jobs: release-channel: ${{ steps.release-channel.outputs.channel }} steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Branch check if: ${{ github.event.inputs.release_type != 'Dry Run' }} @@ -104,7 +104,7 @@ jobs: task: release - name: Login to Azure - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} @@ -254,10 +254,10 @@ jobs: _PKG_VERSION: ${{ needs.setup.outputs.release-version }} steps: - name: Checkout Repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Login to Azure - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} @@ -313,7 +313,7 @@ jobs: _PKG_VERSION: ${{ needs.setup.outputs.release-version }} steps: - name: Checkout Repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Print Environment run: | @@ -321,7 +321,7 @@ jobs: dotnet nuget --version - name: Login to Azure - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} diff --git a/.github/workflows/release-qa-web.yml b/.github/workflows/release-qa-web.yml index 2b55d7b22e5..c2c9c39db26 100644 --- a/.github/workflows/release-qa-web.yml +++ b/.github/workflows/release-qa-web.yml @@ -20,7 +20,7 @@ jobs: description: 'Deployment from branch ${{ github.ref_name }}' - name: Checkout Repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Download latest cloud asset uses: bitwarden/gh-actions/download-artifacts@34ecb67b2a357795dc893549df0795e7383ff50f @@ -36,7 +36,7 @@ jobs: run: unzip web-*-cloud-QA.zip - name: Checkout Repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 with: ref: cf-pages-qa path: deployment diff --git a/.github/workflows/release-web.yml b/.github/workflows/release-web.yml index 0c7e1124b25..2ecab7f6cd8 100644 --- a/.github/workflows/release-web.yml +++ b/.github/workflows/release-web.yml @@ -24,7 +24,7 @@ jobs: tag_version: ${{ steps.version.outputs.tag }} steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Branch check if: ${{ github.event.inputs.release_type != 'Dry Run' }} @@ -65,7 +65,7 @@ jobs: echo "Github Release Option: $_RELEASE_OPTION" - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 ########## DockerHub ########## - name: Setup DCT @@ -105,7 +105,7 @@ jobs: ########## ACR ########## - name: Login to Azure - PROD Subscription - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_PROD_KV_CREDENTIALS }} @@ -150,7 +150,7 @@ jobs: _BRANCH: "v${{ needs.setup.outputs.release_version }}-deploy" steps: - name: Login to Azure - CI Subscription - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} diff --git a/.github/workflows/staged-rollout-desktop.yml b/.github/workflows/staged-rollout-desktop.yml index b33bdb9ae3b..322e04b5358 100644 --- a/.github/workflows/staged-rollout-desktop.yml +++ b/.github/workflows/staged-rollout-desktop.yml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-22.04 steps: - name: Login to Azure - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 4a9aa1cf0f6..870b5a6d980 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -25,10 +25,10 @@ jobs: runs-on: ubuntu-20.04 steps: - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Set up Node - uses: actions/setup-node@9ced9a43a244f3ac94f13bfd896db8c8f30da67a # v3.0.0 + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 with: cache: 'npm' cache-dependency-path: '**/package-lock.json' @@ -79,7 +79,7 @@ jobs: sudo apt-get install -y gnome-keyring dbus-x11 - name: Checkout repo - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Install rust uses: actions-rs/toolchain@16499b5e05bf2e26879000db0c1d13f7e13fa3af # v1.0.7 diff --git a/.github/workflows/version-auto-bump.yml b/.github/workflows/version-auto-bump.yml index a1de93ae442..991b25eef94 100644 --- a/.github/workflows/version-auto-bump.yml +++ b/.github/workflows/version-auto-bump.yml @@ -18,7 +18,7 @@ jobs: version_number: ${{ steps.version.outputs.new-version }} steps: - name: Checkout Branch - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Calculate bumped version id: version diff --git a/.github/workflows/version-bump.yml b/.github/workflows/version-bump.yml index 22c4ab157eb..58b40bae25a 100644 --- a/.github/workflows/version-bump.yml +++ b/.github/workflows/version-bump.yml @@ -43,7 +43,7 @@ jobs: uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 - name: Login to Azure - Prod Subscription - uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.6 + uses: Azure/login@92a5484dfaf04ca78a94597f4f19fea633851fa2 # v1.4.7 with: creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} From 8dc7ead8535881fbe1903d55ac187eba3d08ccdc Mon Sep 17 00:00:00 2001 From: Robyn MacCallum Date: Tue, 9 May 2023 14:03:31 -0400 Subject: [PATCH 14/37] Add more descriptive titles for web vault rows (#5404) * Add more descriptive titles for web vault rows * Swap example strings --- .../vault-cipher-row.component.html | 2 +- .../vault-collection-row.component.html | 1 + apps/web/src/locales/en/messages.json | 18 ++++++++++++++++++ 3 files changed, 20 insertions(+), 1 deletion(-) diff --git a/apps/web/src/app/vault/components/vault-items/vault-cipher-row.component.html b/apps/web/src/app/vault/components/vault-items/vault-cipher-row.component.html index 97b3875a47c..5e9b834247c 100644 --- a/apps/web/src/app/vault/components/vault-items/vault-cipher-row.component.html +++ b/apps/web/src/app/vault/components/vault-items/vault-cipher-row.component.html @@ -24,7 +24,7 @@ [routerLink]="[]" [queryParams]="{ itemId: cipher.id }" queryParamsHandling="merge" - title="{{ 'editItem' | i18n }}" + title="{{ 'editItemWithName' | i18n : cipher.name }}" type="button" > {{ cipher.name }} diff --git a/apps/web/src/app/vault/components/vault-items/vault-collection-row.component.html b/apps/web/src/app/vault/components/vault-items/vault-collection-row.component.html index cc1b693ab3b..43162c9366c 100644 --- a/apps/web/src/app/vault/components/vault-items/vault-collection-row.component.html +++ b/apps/web/src/app/vault/components/vault-items/vault-collection-row.component.html @@ -21,6 +21,7 @@ type="button" class="tw-w-full tw-overflow-hidden tw-text-ellipsis tw-text-start" linkType="secondary" + title="{{ 'viewCollectionWithName' | i18n : collection.name }}" [routerLink]="[]" [queryParams]="{ collectionId: collection.id }" queryParamsHandling="merge" diff --git a/apps/web/src/locales/en/messages.json b/apps/web/src/locales/en/messages.json index 35bd7b3a630..2e064e46086 100644 --- a/apps/web/src/locales/en/messages.json +++ b/apps/web/src/locales/en/messages.json @@ -2751,6 +2751,24 @@ } } }, + "viewCollectionWithName": { + "message": "View collection - $NAME$", + "placeholders": { + "name": { + "content": "$1", + "example": "Collection1" + } + } + }, + "editItemWithName": { + "message": "Edit item - $NAME$", + "placeholders": { + "name": { + "content": "$1", + "example": "Google Login" + } + } + }, "copiedPasswordItemId": { "message": "Copied password for item $ID$.", "placeholders": { From dffb8957cebb4b9e97d4cf263636d505576773cc Mon Sep 17 00:00:00 2001 From: mimartin12 <77340197+mimartin12@users.noreply.github.com> Date: Tue, 9 May 2023 12:16:40 -0600 Subject: [PATCH 15/37] Update action version for setup-docker-trust (#5415) --- .github/workflows/build-web.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-web.yml b/.github/workflows/build-web.yml index ea9e9ffa788..93049cea00f 100644 --- a/.github/workflows/build-web.yml +++ b/.github/workflows/build-web.yml @@ -243,7 +243,7 @@ jobs: - name: Setup DCT if: ${{ env.is_publish_branch == 'true' }} id: setup-dct - uses: bitwarden/gh-actions/setup-docker-trust@ea03b38348a42e18ac63c17f97004697f65e0dc6 + uses: bitwarden/gh-actions/setup-docker-trust@82bfda66185116020992660f6c73aa53277d081d with: azure-creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }} azure-keyvault-name: "bitwarden-ci" From 6eb032b6974803b82f187bf14582240c701f6f04 Mon Sep 17 00:00:00 2001 From: Jonathan Prusik Date: Tue, 9 May 2023 19:45:35 -0400 Subject: [PATCH 16/37] [PM-1884] Address vault ui long name overflow and vertical letter cutoff (#5345) * address vault ui long name overflow and vertical letter cutoff * address vertical icon placement in item row --- .../components/vault-items/vault-cipher-row.component.html | 6 +++--- .../vault-items/vault-collection-row.component.html | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/web/src/app/vault/components/vault-items/vault-cipher-row.component.html b/apps/web/src/app/vault/components/vault-items/vault-cipher-row.component.html index 5e9b834247c..664b3bbc380 100644 --- a/apps/web/src/app/vault/components/vault-items/vault-cipher-row.component.html +++ b/apps/web/src/app/vault/components/vault-items/vault-cipher-row.component.html @@ -19,7 +19,7 @@