* refactor(billing): Modernize organization plans template with block syntax * Refactor: Update `@for` loop tracking with `$index` * Feat: Migrate component properties to Angular signals * Refactor: Adapt component logic for signal consumption and improve structure * feat(admin-console): Bind OrganizationPlansComponent inputs directly in template * refactor(admin-console): Remove ViewChild for OrganizationPlansComponent configuration * refactor(billing): Switch productTier and plan to input signals * refactor(billing): Update productTier and plan access to use form controls * refactor(billing): Rename 'isCreatingNewOrganization' getter * refactor(billing): Access enterPaymentMethodComponent as a signal * feat(billing): use createOrganization property for organization creation flow * refactor(billing): migrate organization plans tests to signals and reactive forms * refactor(billing): introduce setupMockUpgradeOrganization helper in tests * refactor(billing): update getters to computed signals * refactor(billing): update template to use new computed signals * tests(billing): update tests with computed signals * feat(billing): update display of specific forms when user is upgrading from premium * tests(billing): add premium upgrade tests * fix(billing): update type issues for organization plans * tests(billing): update failing test * refactor(billing): rename plan/productTier inputs to initial* for clarity * refactor(billing): update templates to use renamed initial* inputs * test(billing): update tests to use renamed initial* inputs * feat(billing): feature flag upgrade from premium changes * test(billing): update tests for featureflag * refactor(ui): Improve HTML templating for organization plans * refactor(component): Safely derive 'hasPremiumPersonally' signal * refactor(component): Streamline 'createCloudHosted' method and key handling * feat(billing): Enable organization key submission for premium upgrades * test(billing): Enhance and adjust organization plan submission tests * refactor: remove unused imports and types * refactor(billing): introduce DTO for organization upgrade request * feat(billing): implement organization key and collection encryption * refactor(billing): integrate DTO and encryption logic in upgrade service * test(billing): update specs and components for organization upgrade DTO * refactor(billing): relocate FamiliesForEnterpriseSetupComponent to billing module * refactor(admin-console): revert families-for-enterprise component * refactor: rename wrappedPrivateKey to encryptedPrivateKey * refactor(billing): rename encrypted private key variable * feat(billing): add tier ids and types * refactor(billing): remove unused imports and sync service * fix(billing): correct tier passing in upgrade function * feat(billing): add conversion function from product tier to subscription tier id * refactor(billing): enhance organization encryption data generation * fix(billing): enable response for account upgrade * fix(billing): pass plan tier instead of plan details * refactor(test): remove unnecessary organization service mock * test: update upgrade service tests * tests(billing): update tests * refactor(billing): import account type feat(billing): add organization creation message * refactor(billing): remove unused imports and constants * refactor(billing): remove unused viewchild * fix(billing): remove selectedfile variable * feat(billing): update organization upgrade logic * refactor(billing): remove unused upgrade functions * test: remove unnecessary setupMockEncryptionKeys calls * refactor: remove unused mockAccountBillingClient * feat: introduce PremiumOrgUpgradeService * refactor: simplify form value access and remove accountbilling * fix(billing): handle type validation * test(billing): add initial plan and product tier input tests * feat(billing): set initial plan and product tier values * refactor(billing): ensure selected plan exists before accessing type |
||
|---|---|---|
| .checkmarx | ||
| .claude | ||
| .codescene | ||
| .github | ||
| .husky | ||
| .storybook | ||
| .vscode | ||
| apps | ||
| bitwarden_license | ||
| docs | ||
| libs | ||
| scripts | ||
| .browserslistrc | ||
| .editorconfig | ||
| .git-blame-ignore-revs | ||
| .gitattributes | ||
| .gitignore | ||
| .npmrc | ||
| .nvmrc | ||
| .prettierignore | ||
| .prettierrc.json | ||
| angular.json | ||
| babel.config.json | ||
| clients.code-workspace | ||
| CONTRIBUTING.md | ||
| eslint.config.mjs | ||
| jest.config.js | ||
| jest.preset.js | ||
| LICENSE_BITWARDEN.txt | ||
| LICENSE_GPL.txt | ||
| LICENSE.txt | ||
| lint-staged.config.mjs | ||
| nx.json | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| SECURITY.md | ||
| tailwind.config.js | ||
| tsconfig.base.json | ||
| tsconfig.eslint.json | ||
| tsconfig.json | ||
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.
Related projects:
- bitwarden/server: The core infrastructure backend (API, database, Docker, etc).
- bitwarden/ios: Bitwarden iOS Password Manager & Authenticator apps.
- bitwarden/android: Bitwarden Android Password Manager & Authenticator apps.
- bitwarden/directory-connector: A tool for syncing a directory (AD, LDAP, Azure, G Suite, Okta) to an organization.
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.