Bitwarden client apps (web, browser extension, desktop, and cli). bitwarden.com
Go to file
Jared 6cdbd80057
[PM-33372] hide prompt if org does not use my items (#19475)
* Enhance policy management by adding organization input to policy edit components and dialogs. Update edit method to include organization context, enabling feature entitlements based on organization settings. Adjust templates to conditionally render options based on organization properties.

* Refactor PolicyEditDialogComponent to change access modifiers for properties. Update policyType and saveDisabled$ to protected and instance variables respectively, enhancing encapsulation and consistency in the component's structure.

* Refactor PolicyEditDialogComponent to change property access modifiers from readonly to instance variables for loading, saveDisabled$, and policyComponent, improving flexibility in component state management.

* Refactor PoliciesComponent tests to use property accessors and improve type definitions

- Updated mockPolicyResponse and mockPolicyResponsesData to include explicit type definitions.
- Changed direct property access to bracket notation for organizationId$, organization$, policies$, and policiesEnabledMap$ observables.
- Enhanced edit method calls to include organization parameter in tests.
- Added new tests for conditional behavior based on organization.useMyItems in vNextOrganizationDataOwnershipPolicyComponent.
- Implemented logic to enable/disable controls based on policy and organization state.

* Refactor PolicyEditDialogComponent to use Angular signals for state management

- Updated loading state and saveDisabled properties to use signals instead of traditional variables.
- Modified template bindings to reflect changes in loading state and save button disable logic.
- Enhanced component initialization to ensure proper handling of policy component and its state.
- Improved observables management with takeUntilDestroyed for better resource cleanup.

* Refactor Policy Edit Dialogs to use Angular signals for loading state management

- Updated loading state bindings in HTML templates to call loading() as a function.
- Refactored TypeScript components to utilize typed accessors for policy components.
- Enhanced observables for save button disable logic to ensure proper state handling.
- Improved error handling and initialization checks for policy components.

* Fix test setup for AutoConfirmPolicyDialogComponent by updating policyComponent initialization to use bracket notation for better type handling.

* Refactor policy components to remove organization ID references and utilize organization objects directly. Update related dialog components and tests to ensure consistency with the new structure. This change enhances clarity and reduces redundancy in policy management.

* Refactor policy components to improve organization handling. Update policies component to directly use organization objects instead of IDs. Adjust related components and services for consistency, enhancing clarity in policy management.

* Refactor PoliciesComponent tests to eliminate organization ID references and directly use organization objects. Update related test cases for consistency and clarity in policy management.

* Refactor policy dialog components to enhance type safety by checking component instances instead of using type assertions. This change improves code clarity and maintainability.

* Enhance unit tests for policy dialog and vault services by improving mock implementations and ensuring accurate date calculations. Update organization references to use object structures for better clarity and maintainability in policy management.

* fix(tests): Update date calculation in WebVaultExtensionPromptService tests for clarity
2026-03-30 10:35:32 -04:00
.checkmarx Update SAST preset to query set (#8569) 2024-04-01 16:24:04 -04:00
.claude [PM-33934] add create-pull-request Claude skill (#19687) 2026-03-20 16:53:27 -04:00
.codescene disable code duplication check in unit tests (#6773) 2023-11-06 15:48:34 -05:00
.github feat(sdk): [PM-32677] Optimize sdk-update workflow 2026-03-27 13:38:23 -04:00
.husky Update husky hooks (#7738) 2024-01-30 06:50:54 -08:00
.storybook [CL-1023][CL-1031] Design system refresh: Milestone 1 (#19061) 2026-03-25 10:55:06 -05:00
.vscode chore(dev): enable Tailwind IntelliSense for tw- class strings in TypeScript (#19353) 2026-03-04 10:17:14 -05:00
apps [PM-33372] hide prompt if org does not use my items (#19475) 2026-03-30 10:35:32 -04:00
bitwarden_license [PM-33797] AIV2: Standardize Models and Services: Shared Components (#19730) 2026-03-26 09:04:13 -07:00
docs refactor(nx): remove unneeded tsconfig.build.json & adjust nx docs (#16864) 2025-10-14 11:07:23 -04:00
libs [PM-30614] - Fix double event log in browser ext popup (#19657) 2026-03-30 09:33:54 -05:00
scripts [CL-1023][CL-1031] Design system refresh: Milestone 1 (#19061) 2026-03-25 10:55:06 -05:00
.browserslistrc [PM-6788][PM-7755] add babel/preset-env and browserslist (#9383) 2024-05-30 18:42:26 -04:00
.editorconfig Add support for migrated jslib (#2826) 2022-06-03 18:01:07 +02:00
.git-blame-ignore-revs add prettier formatting merge commit to .git-blame-ignore-revs (#7037) 2023-11-29 17:53:26 -05:00
.gitattributes Apply Prettier (#2238) 2021-12-21 15:43:35 +01:00
.gitignore Implement reusable Claude code review workflow (#16979) 2025-10-27 16:25:40 +01:00
.npmrc [PM-25911] Add commercial sdk internal as dependency (#16883) 2025-10-27 15:17:20 +01:00
.nvmrc [PM-22343] Bump non-cli to Node 22 (#15058) 2025-06-26 18:05:37 -04:00
.nxignore refactor(scheduling): extract @bitwarden/scheduling Nx leaf library (#19771) 2026-03-27 11:23:22 +00:00
.prettierignore [PM-5551] Removing Autofill v2 and AutofillOverlay Feature Flags (#7642) 2024-01-22 17:11:07 +00:00
.prettierrc.json Update CL documentation (#5379) 2023-05-08 14:46:59 +02:00
angular.json [CL-717][PM-27966] Update to Angular 20 and Storybook 9 (#17638) 2025-12-01 14:15:58 -05:00
babel.config.json [PM-6788] enable bugfixes in babel/preset-env (#9465) 2024-05-31 17:59:39 -04:00
clients.code-workspace Add Nx Console to vscode recommended extension list (#17683) 2025-11-27 07:47:01 +01:00
CONTRIBUTING.md Update README and CONTRIBUTING to point to contributing.bitwarden.com (#2771) 2022-06-13 17:34:07 +10:00
eslint.config.mjs [PM-32248] [PM-32233] [PM-32235] Block links from opening in electron window (#19317) 2026-03-17 15:42:20 +01:00
jest.config.js refactor(scheduling): extract @bitwarden/scheduling Nx leaf library (#19771) 2026-03-27 11:23:22 +00:00
jest.preset.js feat(nx): add basic-lib generator for streamlined library creation (#14992) 2025-06-05 14:20:23 -04:00
LICENSE_BITWARDEN.txt Fix some references to master (#14578) 2025-05-01 07:18:09 -07:00
LICENSE_GPL.txt Prepare bitwarden_license directory (#2663) 2022-05-09 17:50:15 +02:00
LICENSE.txt Fix some references to master (#14578) 2025-05-01 07:18:09 -07:00
lint-staged.config.mjs Add Rust pre-commit hooks for desktop native (#17823) 2026-01-15 07:50:47 -07:00
nx.json feat(nx): add basic-lib generator for streamlined library creation (#14992) 2025-06-05 14:20:23 -04:00
package-lock.json refactor(scheduling): extract @bitwarden/scheduling Nx leaf library (#19771) 2026-03-27 11:23:22 +00:00
package.json [deps] Platform: Update copy-webpack-plugin to v14 (#19581) 2026-03-27 12:20:26 +01:00
README.md Remove gitter chat badges from READMEs (#19368) 2026-03-04 16:33:27 +00:00
SECURITY.md Revise language on SECURITY.md 2022-03-15 15:39:14 -04:00
tailwind.config.js Billing/pm 23385 premium modal in web after registration (#16182) 2025-09-04 14:44:04 +00:00
tsconfig.base.json refactor(scheduling): extract @bitwarden/scheduling Nx leaf library (#19771) 2026-03-27 11:23:22 +00:00
tsconfig.eslint.json fix(eslint): extend tsconfig.base in tsconfig.eslint (#15082) 2025-06-05 11:08:03 -04:00
tsconfig.json [PM-32442] Enforce tsc-strict on desktop and CLI apps (#19058) 2026-02-24 09:20:44 +01:00

Bitwarden

GitHub Workflow browser build on main GitHub Workflow CLI build on main GitHub Workflow desktop build on main GitHub Workflow web build on main


Bitwarden Client Applications

This repository houses all Bitwarden client applications except the mobile applications (iOS | android).

Please refer to the Clients section of the Contributing Documentation for build instructions, recommended tooling, code style tips, and lots of other great information to get you started.

We're Hiring!

Interested in contributing in a big way? Consider joining our team! We're hiring for many positions. Please take a look at our Careers page to see what opportunities are currently open as well as what it's like to work at Bitwarden.

Contribute

Code contributions are welcome! Please commit any pull requests against the main branch. Learn more about how to contribute by reading the Contributing Guidelines. Check out the Contributing Documentation for how to get started with your first contribution.

Security audits and feedback are welcome. Please open an issue or email us privately if the report is sensitive in nature. You can read our security policy in the SECURITY.md file.