* prune desktop packages
* Fix @napi-rs/cli version mismatch in desktop napi workspace
Aligns package.json declaration with the locked version (3.2.0) to
resolve npm workspace inconsistency that was blocking ng update.
* update Storybook to v10
* update Angular to v21
* override jest in ng builder
* Add jest-environment-jsdom as explicit dependency
Previously installed as a side effect of a jest@29 override; removing
that override caused it to disappear from node_modules.
* Add .claude/worktrees/ to .gitignore
* Restore @napi-rs/cli to 3.5.1 to match main
* Pin jest-environment-jsdom to 29.7.0 and add to renovate config
* Override jest-environment-jsdom to 29.7.0 in build-angular context
* Add isolatedModules to libs/subscription tsconfig.spec.json to fix Angular 21 module resolution
* Change moduleResolution to bundler for Angular 21 subpath export compatibility
* Add isolatedModules to Angular libs with old spec tsconfig pattern
* Disable emitDecoratorMetadata in spec tsconfigs with isolatedModules
* Fix HostListener event parameter types for Angular 21 compiler strictness
* Revert accidental change to access-selector spec
* Remove accidentally generated desktop package-lock.json
* Fix type-only imports/exports caught by Rolldown in Storybook v10/Vite v8
* fix vault-wrapper type error from Angular 21 stricter generic inference
ngComponentOutlet accepts Type<unknown>; annotate computed() explicitly
since VaultComponent is generic and VaultOrigComponent is not, preventing
TypeScript from inferring a compatible union constructor type.
* Fix kitchen-sink interaction tests for Storybook v10
Replace fire-and-forget navigateTo + synchronous getByRole with
navigateAndWaitFor<T>, which sets the hash and retries the ready
callback via waitFor. Storybook v10 starts play functions before
Angular's initial router navigation completes, so synchronous DOM
queries after navigation were failing intermittently.
* Provide ZoneJS change detection scheduler for Storybook stories
Angular 21 no longer sets up the ZoneJS change detection scheduler by
default in bootstrapApplication. Storybook's Angular renderer uses
bootstrapApplication internally and does not add provideZoneChangeDetection
automatically, so Default CD components relying on zone.js to trigger
re-renders after async operations were not updating before Chromatic
snapshots.
* Wait for dialog/side nav to render before Chromatic snapshot
After userEvent.click the dialog and side nav open asynchronously.
Without an explicit waitFor, Chromatic captures the snapshot before the
resulting UI state is present.
* Fix kitchen-sink waitFor: re-query side nav button, use querySelector for dialog
- openSideNav: re-query the toggle button inside waitFor to avoid reading
a stale DOM reference after Angular re-renders the element post-click
- SimpleDialogOpen / VirtualScrollBlockingDialog: replace getByRole("dialog")
with querySelector("cdk-dialog-container") to avoid testing-library's
visibility check failing on a momentarily inaccessible overlay element
* Revert kitchen-sink stories to main
* Bump Angular, Storybook, and ng-select to latest patch versions
* Trigger pre-commit hooks on merge
* Regenerate package-lock.json with --force to fix npm ci sync
* Refactor bidirectional mapping for CollectionType and SDK types
Updated the mapping between numeric CollectionType and SDK's numeric variant to ensure type safety. The previous string variant has been replaced with numeric values for better consistency and maintainability. This change enhances type checking in TypeScript and ensures that any additions to the CollectionTypes require corresponding updates in the mapping.
* Refactor CollectionType handling in collection models
Removed bidirectional mapping for CollectionType and SDK types, simplifying the type assignment in the Collection and CollectionView classes. This change enhances code clarity and reduces complexity by directly using the SDK's numeric variant for type assignments.
* Update CollectionType handling in tests to use numeric values
Replaced string representations of CollectionType with their corresponding numeric values in the collection SDK mapping tests. This change ensures consistency with the recent refactor of type handling, enhancing type safety and maintainability across the codebase.
* Update tests to use CollectionTypes for type assignments
Replaced numeric values with the CollectionTypes enum in the collection SDK mapping tests. This change improves code clarity and consistency, aligning with recent refactors to enhance type safety and maintainability across the codebase.
* Update Bitwarden SDK dependencies to version 0.2.0-main.739 in package.json and package-lock.json. This change ensures compatibility with the latest features and fixes in the SDK.
* Refactor tests to utilize CollectionTypes enum for type assignments
Updated test cases in default-collection-encryption.service.spec.ts to replace string literals with the CollectionTypes enum for improved type safety and consistency. This aligns with recent refactors aimed at enhancing code clarity and maintainability.
* Add devclarity commands
* added doc and skills
* Added cipher type skill
* Refined the cipher type skills a bit
* core models and enum
* Wire BankAccount into cipher container classes
* Add BankAccount icon(incomplete), vault filters, and shared UI components
* Localization keys
* Add BankAccount into web vault UI
* Add BankAccount into browser extension UI
* Add BankAccount into desktop vault UI
* Add BankAccount support to CLI
* copy actions
* Remove .claude/commands files from branch
* Updated to match vault/PM-32687-cipher-type-skill
* update bank account copy options on web
* add copy options for bank account on browser
* update bank account copy fields for both versions of the vault
* update `hasBankAccount` logic to consider all fields
* add PIN and Account Number to protected fields for reprompt service
* update bank account section to have readonly properties
* localize bank account view - account type
* remove duplicate import
* add events for bank account
* migrate form field to use content children to allow for OnPush consumers to update fields
* fix strict typings
* fix failing tests from bank account changes
* display all bank account details for the cli
* add bank icon
* add copy option for iban
* remove bank account from cipher menu
* update bank account implementation based on main
* address local claude feedback
* address the fixme
* local code review changes
* update SDK and fix BankAccount adjacent typings
* make IBAN and SWIFT fields hidden by default
* clean up encrypted string tests
* add IBAN and Swift to protected fields
* fix test
* add BankAccount to cipher-types.md
* remove filtering for cli commands
---------
Co-authored-by: Patrick Honkonen <phonkonen@bitwarden.com>
Co-authored-by: Nick Krantz <nick@livefront.com>
Co-authored-by: Nick Krantz <125900171+nick-livefront@users.noreply.github.com>
* Bump jest packages
jest is a transient dependency of ts-jest but because angular-devkit/build-angular drags in an older version of jest, we have to add jest 30.3.0 to our dependencies
* Fix some typescript issues due to stricter types on mockImplementation
* Update guide link in snapshots
* Fix jest-environment paths
* Fix typescript linting errors
* Address typescript errors due stricter mockImplementation
---------
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>