1
0
mirror of https://github.com/bitwarden/browser.git synced 2024-12-21 16:18:28 +01:00
Commit Graph

1884 Commits

Author SHA1 Message Date
Alec Rippberger
0df7b53bb4
feat(sso): [PM-8114] implement SSO component UI refresh
Consolidates existing SSO components into a single unified component in
libs/auth, matching the new design system. This implementation:

- Creates a new shared SsoComponent with extracted business logic
- Adds feature flag support for unauth-ui-refresh
- Updates page styling including new icons and typography
- Preserves web client claimed domain logic
- Maintains backwards compatibility with legacy views

PM-8114

---------

Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>
Co-authored-by: Jared Snider <jsnider@bitwarden.com>
2024-12-12 10:28:30 -06:00
Brandon Treston
b2ee27c02f
[PM-12443] Remove paging logic from base clients component and subclasses (#12250)
* remove ngx-infinite-scroll in provider clients components.

* cleanup, fix redirect

* cleanup

* remove function call during interpolation

* remove this in template

* add router guard, cleanup

* cleanup

* fix row height for virtual scroller
2024-12-11 09:53:52 -05:00
Andreas Coroiu
d4fcb5852a
fix: text-drag directive ts-strict error (#12346) 2024-12-11 12:20:32 +00:00
cd-bitwarden
83dc66dd56
[PM-14345] Enabling drag and drop for cipher fields (#12067)
* enabling drag and drop for cipher fields

* adding drag and drop to totp and fido

* removing code changes to wrong file

* undoing uneeded change

* Changes suggested by Shane

* fixes

* fixes

* moving export to the correct spot

---------

Co-authored-by: --global <>
2024-12-10 12:55:02 -05:00
✨ Audrey ✨
b2af12ab24
[PM-15872] fix username generation character limit (#12329) 2024-12-10 11:08:01 -05:00
Daniel James Smith
161a358c49
[PM-5214] [CLI] Add proxy support for file uploads (#7342)
* Add proxy support for file uploads

Instead of using node's native fetch we extend ApiService with NodeApiService to add support for proxies using `node-fetch`

* Fix constructors for FileUploadService in browser

* Fix dependency on ApiService within jslib-services.module

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-12-10 13:17:00 +01:00
Victoria League
4daba832a2
[CL-351] Prevent tw-group styling conflicts by namespacing (#12261) 2024-12-09 15:13:42 -05:00
Matt Gibson
9c1e2ebd67
Typescript-strict-plugin (#12235)
* Use typescript-strict-plugin to iteratively turn on strict

* Add strict testing to pipeline

Can be executed locally through either `npm run test:types` for full type checking including spec files, or `npx tsc-strict` for only tsconfig.json included files.

* turn on strict for scripts directory

* Use plugin for all tsconfigs in monorepo

vscode is capable of executing tsc with plugins, but uses the most relevant tsconfig to do so. If the plugin is not a part of that config, it is skipped and developers get no feedback of strict compile time issues. These updates remedy that at the cost of slightly more complex removal of the plugin when the time comes.

* remove plugin from configs that extend one that already has it

* Update workspace settings to honor strict plugin

* Apply strict-plugin to native message test runner

* Update vscode workspace to use root tsc version

* `./node_modules/.bin/update-strict-comments` 🤖

This is a one-time operation. All future files should adhere to strict type checking.

* Add fixme to `ts-strict-ignore` comments

* `update-strict-comments` 🤖

repeated for new merge files
2024-12-09 20:58:50 +01:00
Victoria League
0906c503e1
[CL-522] Reduce font size for checkbox and radio labels (#12251) 2024-12-09 14:10:14 -05:00
Nick Krantz
b5ce2167eb
update styles of the password history to use bitLink & button (#12246) 2024-12-09 09:04:16 -06:00
Alec Rippberger
69800d01ab
revert: [PR-13659] remove 2FA timeout logging and fix attempts
This reverts two previous commits:
- PM-13659 - 2FA Timeout Log All the things (#12275)
- Auth/PM-13659 - 2FA Timeout - Attempted Fix (#12263)
2024-12-06 13:42:32 -06:00
Jared Snider
9fcc4f0543
PM-13659 - 2FA Timeout Log All the things (#12275) 2024-12-06 12:43:17 -05:00
Andreas Coroiu
f16bfa4cd2
[PM-9035] desktop build logic to provide credentials to os on sync (#10181)
* feat: scaffold desktop_objc

* feat: rename fido2 to autofill

* feat: scaffold electron autofill

* feat: auto call hello world on init

* feat: scaffold call to basic objc function

* feat: simple log that checks if autofill is enabled

* feat: adding some availability guards

* feat: scaffold services and allow calls from inspector

* feat: create custom type for returning strings across rust/objc boundary

* chore: clean up comments

* feat: enable ARC

* feat: add util function `c_string_to_nsstring`

* chore: refactor and rename to `run_command`

* feat: add try-catch around command execution

* feat: properly implement command calling

Add static typing. Add proper error handling.

* feat: add autoreleasepool to avoid memory leaks

* chore: change objc names to camelCase

* fix: error returning

* feat: extract some helper functions into utils class

* feat: scaffold status command

* feat: implement status command

* feat: implement password credential mapping

* wip: implement sync command

This crashes because we are not properly handling the fact that `saveCredentialIdentities` uses callbacks, resulting in a race condition where we try to access a variable (result) that has already gotten dealloc'd.

* feat: first version of callback

* feat: make run_command async

* feat: functioning callback returns

* chore: refactor to make objc code easier to read and use

* feat: refactor everything to use new callback return method

* feat: re-implement status command with callback

* fix: warning about CommandContext not being FFI-safe

* feat: implement sync command using callbacks

* feat: implement manual password credential sync

* feat: add auto syncing

* docs: add todo

* feat: add support for passkeys

* chore: move desktop autofill service to init service

* feat: auto-add all .m files to builder

* fix: native build on unix and windows

* fix: unused compiler warnings

* fix: napi type exports

* feat: add corresponding dist command

* feat: comment signing profile until we fix signing

* fix: build breaking on non-macOS platforms

* chore: cargo lock update

* chore: revert accidental version change

* feat: put sync behind feature flag

* chore: put files in autofill folder

* fix: obj-c code not recompiling on changes

* feat: add `namespace` to commands

* fix: linting complaining about flag

* feat: add autofill as owner of their objc code

* chore: make autofill owner of run_command in core crate

* fix: re-add napi annotation

* fix: remove dev bypass
2024-12-06 16:31:30 +01:00
Jared Snider
8d68a2dd58
Auth/PM-13659 - 2FA Timeout - Attempted Fix (#12263)
fix(auth): attempt to resolve 2FA session timeout issue
2024-12-05 20:22:13 -05:00
Vijay Oommen
d6e1fe70ca
PM-15091 Remove client side featureflag.AccessIntelligence and use DB feature flag (#12247)
* PM-15091 remove featureflag.AccessIntelligence

* removed unwanted lines of code

* fixed merge conflict
2024-12-05 17:24:51 +00:00
Brandon Treston
c11f429ddb
[PM-12273] Admin Console Integration Page (#11883)
* Integration page initial implementation

* replace placeholder integrations

* fix linting and tests

* fix locales

* update locale

* Change logos, add link to SCIM page

* refactor to standalone components, add integration filtering pipe

* refactor modules and imports. Remove hyperlink text from integration card template

* refactor i18n usage to be more generic

* Add storybooks

* fix tests

* minify svgs, include spec files in TS config, fix stories

* Update apps/web/src/locales/en/messages.json

Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com>

* fix imports, add static dir for stories

* Add darkmode svgs for integrations

* hide nav link for non enterprise orgs

* add router guard

* change rxjs selector

* Remove tailwind class causing style issues

---------

Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com>
2024-12-05 10:09:40 -05:00
SmithThe4th
45db17627e
[PM-15535] User with Edit* permission can permanently delete item from more actions menu on extension (#12234)
* Added conditional to check if a cipher can be delete by user

* Added change detection on push

* Added directive to check if user can delete a cipher

* Added directive to check if user can delete a cipher

* Replaced check with directive

* removed takeUntilDestroyed
2024-12-04 11:57:03 -05:00
Daniel James Smith
98702d9f50
Fix the new send dropdown showing premium when it should not (#12242)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-12-04 09:59:06 -05:00
Jonas Hendrickx
b25dc6300c
Revert "[PM-13999] Show estimated tax for taxable countries (#12145)" (#12244)
This reverts commit 1dce7f5ba0.
2024-12-04 14:40:57 +00:00
Bernd Schoolmann
864e6759fd
Switch to rustcrypto argon2 on desktop (#11753)
* Switch to rustcrypto argon2 on desktop

* Make argon2 use zeroize

* Remove argon2 native modules from electron-builder config

* Clean rust implementation of argon2

* Update cargo.lock

* Update apps/desktop/desktop_native/napi/src/lib.rs

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>

* Add tests

* Clean up test

* Remove argon2 external from webpack main

* Fix build

* Fix argon2 module causing a startup crash

---------

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>
2024-12-04 11:54:55 +00:00
Jonas Hendrickx
1dce7f5ba0
[PM-13999] Show estimated tax for taxable countries (#12145) 2024-12-04 11:45:44 +01:00
Thomas Rittson
853db233d9
Remove AddPolicyDefinitions feature flag (#12172) 2024-12-04 11:50:39 +10:00
Shane Melton
a6c905cc1a
[PM-15533] Remove isNotClone parameter from updateWithServer method (#12233) 2024-12-03 15:43:09 -08:00
Alec Rippberger
c073e91f17
feat(auth): [PM-13659] implement 2FA timeout handling across clients
Add timeout state management for two-factor authentication flows in web, desktop,
and browser extension clients. Includes:

- New timeout screen component with 5-minute session limit
- Updated UI elements and styling
- Comprehensive test coverage

Refs: PM-13659
2024-12-03 13:55:40 -06:00
Shane Melton
60e52dd2f2
[PM-14965] Fix password reprompt for context menu actions (#12213)
* [PM-14965] Add return value for copy-cipher-field.service

* [PM-14965] Cleanup loadAction handling in updated browser view item page

* [PM-14965] Fix unit tests

* [PM-14965] Clear copy mock
2024-12-03 09:37:44 -08:00
cd-bitwarden
0ff48aa345
[PM-12743] a11y changes to make new drop down list for send and vault accessible (#11717)
* updating new menus to allow tab + enter to submit the link/button

* Updating New actions to use button instead of a for accessibiity purposes

* refactor

* refactor

* test fix

* fixes

* fixing tests

* fixing test

* fixing tests

---------

Co-authored-by: --global <>
2024-12-02 10:30:38 -06:00
Alex Morask
0544100e83
Make payment optional trial banner work with Stripe sources API deprecation (#12146) 2024-12-02 09:12:49 -05:00
Oscar Hinton
59686346d4
[PM-15444] Increase WASM timeout to 10s (#12158)
* Increase WASM timeout to 10s

* Change time to 3s, add logService with debug log
2024-11-28 11:58:09 +01:00
✨ Audrey ✨
ab21b78c53
[PM-15061] extract encryptors from generator service (#12068)
* introduce legacy encryptor provider
* port credential generation service to encryptor provider
2024-11-28 11:02:21 +01:00
Bernd Schoolmann
f79141c421
[PM-14990] Add password prompt for ssh key import (#12105)
* Add password prompt for ssh key import

* Remove empty line

* Convert to switch statement
2024-11-27 17:29:36 +01:00
Andreas Coroiu
f71d42e051
fix: lint after PM-13923 (#12164) 2024-11-27 12:00:46 +01:00
Thomas Rittson
5a6d5f5887
fix: createNewCollections should not grant access to AC (#12142) 2024-11-27 10:44:29 +00:00
xinghejd
35764b53dc
[PM-13923] [CLI] fix: resolve CLI file upload issue in Node.js 18+ (#11652)
* fix: resolve CLI file upload issue in Node.js 18+

* remove useless try catch

Signed-off-by: xinghejd <31512683+xinghejd@users.noreply.github.com>

---------

Signed-off-by: xinghejd <31512683+xinghejd@users.noreply.github.com>
Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com>
2024-11-27 10:04:30 +00:00
Victoria League
3db5beaa60
[CL-514] Update slider icon to reduce blurriness on external monitors (#12154) 2024-11-26 11:31:08 -05:00
Victoria League
eac5e63f2f
[CL-513] Fix lifecycle order for toggle title attribute (#12152) 2024-11-26 11:10:43 -05:00
cyprain-okeke
c52eeb1cb3
[PM-13348] Browser Extension impacts on Free Bitwarden Family Policy (#12073)
* Add changes for enabled policy

* Remove unused property

* Refactor the changes

* remove duplicated across multiple components

* Add some test and documentations to service

* Correct the comment free family sponsorship for isExemptFromPolicy
2024-11-25 22:37:24 +01:00
Will Martin
bb0912154d
[CL-508] extension width setting (#12040) 2024-11-25 14:43:31 -05:00
rr-bw
820b03dd49
fix(biometrics): [PM-13901] Bugfix for "Ask for biometrics on launch does not auto prompt biometrics" (#12144)
This PR ensures that, on the Chrome browser extension, biometrics gets auto-prompted when the user selects "Ask for biometrics on launch" by resetting the `isInitialLockScreen` to `true` on active account change.

Feature flag: `ExtensionRefresh` ON.
2024-11-25 11:34:53 -08:00
Michal Vaněk
06b3c37f03
[PM-15167] Fix password generator ascii ambiguous sets (#12143)
Co-authored-by:  Audrey  <ajensen@bitwarden.com>
2024-11-25 10:46:17 -05:00
Jared Snider
493f81a017
Auth/PM-15115 - New LoginComponent - Remove Captcha (#12077)
* PM-15115 - Captcha being deprecated so remove from new UI refreshed login component + start putting deprecated comments on some things.

* PM-15115 - Add Jira ticket to TODOs per best practice
2024-11-22 15:50:31 -05:00
Alec Rippberger
02ea368446
[PM-4816] Create shared LoginApprovalComponent (#11982)
* Stub out dialog

* Genericize LoginApprovalComponent

* update ipc mocks

* Remove changes to account component

* Remove changes to account component

* Remove debug

* Remove test component

* Remove added translations

* Fix failing test

* Run lint and prettier

* Rename LoginApprovalServiceAbstraction to LoginApprovalComponentServiceAbstraction

* Add back missing "isVisible" check before calling loginRequest

* Rename classes to contain "Component" in the name

* Add missing space between "login attempt" and fingerprint phrase

* Require email
2024-11-22 12:55:26 -06:00
Daniel James Smith
03aa4fd4d8
[PM-13667] Add button to open credential history on web (#12100)
* Create CredentialGeneratorHistoryDialogComponent to be re-used on web and desktop

* Add button to open credential histpry on web

* Add button to open credential history on desktop (#12101)

- Register route to open new CredentialGeneratorHistoryDialogComponent when FeatureFlag/GeneratorToolsModernization is enabled
- Add button to credential generator
- Add missing keys to en/messages.json

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-11-22 18:29:30 +01:00
Addison Beck
e6c68b7138
Remove LimitCollectionCreationDeletionSplit feature flag (#11258)
* Remove references to feature flag

* Remove feature flag enum
2024-11-22 13:58:21 +10:00
Thomas Rittson
9e9f977eb3
[PM-11360] Remove export permission for providers (#12062)
* Split organization.canAccessImportExport
* Fix import permission to include CanCreateNewCollections
* Remove provider export permission (feature flagged)
2024-11-22 07:58:03 +10:00
rr-bw
9f99454b37
feat(auth): [PM-9693] Refresh LoginDecryptionOptionsComponent (#11782)
Creates a refreshed and consolidated `LoginDecryptionOptionsComponent` for use on all visual clients, which will be used when the `UnauthenticatedExtensionUIRefresh` feature flag is on.
2024-11-21 13:31:20 -08:00
Daniel James Smith
a9f570be06
Fix toggle entry not displaying correctly on non-English clients (#12088)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-11-21 18:37:29 +00:00
Andreas Coroiu
acf5b1e9e6
[PM-7382] Add support for non-UUID credential (#11993)
* feat: add tests for guidToRawFormat

* feat: add support for parsing b64 credential ids

* refactor: change interface to use Uint8Array for simplification

Technically this deviates from the specification, but nobody is going to be using the authenticator directly but us so it shouldn't matter. We're gonna switch to `passkey-rs` anyways so

* feat: change how the authenticator parses credential ids to support b64
2024-11-21 15:54:19 +01:00
Bernd Schoolmann
38c4eeb27d
[PM-14542] Move kdf to km ownership (#11877)
* Move kdf to km ownership

* Fix duplicate import

* Remove whitespace

* Fix double imports

* Fix desktop build

* Fix test error

* Fix imports

* Move ownership of kdftype to km

* Fix imports

---------

Co-authored-by: Matt Bishop <mbishop@bitwarden.com>
2024-11-21 13:45:28 +01:00
Alex Morask
34e20b7ae8
Update bank account verification to use statement descriptor (#12055) 2024-11-20 14:36:52 -05:00
Jared Snider
d1499da793
Auth/PM-12077 - Web Process Reload (#11781)
* PM-12077 - Initial work on web process reload - more testing required.

* PM-12077 - Clarify comment

* PM-12077 - Improving UX of logout with process reload.

* PM-12077 - Final tweaks for process reload

* PM-12077 - Remove no longer accurate comment.

* PM-12077 - Per PR feedback, clean up logout reason

---------

Co-authored-by: Matt Bishop <mbishop@bitwarden.com>
2024-11-20 13:54:27 -05:00