1
0
mirror of https://github.com/bitwarden/browser.git synced 2025-02-14 01:01:31 +01:00
Commit Graph

1139 Commits

Author SHA1 Message Date
Jonathan Prusik
15faf52f57
[PM-13115] Allow users to disable extension content script injections by domain (#11826)
* add disabledInteractionsUris state to the domain settings service

* add routes and ui for user disabledInteractionsUris state management

* use disabled URIs service state as a preemptive conditon to injecting content scripts

* move disabled domains navigation button from account security settings to autofill settings

* update disabled domain terminology to blocked domain terminology

* update copy

* handle blocked domains initializing with null value

* add dismissable banner to the vault view when the active autofill tab is on the blocked domains list

* add autofill blocked domain indicators to autofill suggestions section header

* add BlockBrowserInjectionsByDomain feature flag and put feature behind it

* update router config to new style

* update tests and cleanup

* use full-width-notice slot for domain script injection blocked banner

* convert thrown error on content script injection block to a warning and early return

* simplify and enspeeden state resolution for blockedInteractionsUris

* refactor feature flag state fetching and update tests

* document domain settings service

* remove vault component presentational updates
2025-01-06 17:10:34 -05:00
SmithThe4th
10c8a2101a
[PM-12049] Remove usage of ActiveUserState from folder service (#11880)
* Migrated folder service from using active user state to single user state

Added extra test cases for encrypted folder and decrypted folders

Updated derived state to use decrypt with key

* Update callers in the web

* Update callers in the browser

* Update callers in libs

* Update callers in cli

* Fixed test

* Fixed folder state test

* Fixed test

* removed duplicate activeUserId

* Added takewhile operator to only make calls when userId is present

* Simplified to accept a single user id instead of an observable

* Required userid to be passed from notification service

* [PM-15635] Folders not working on desktop (#12333)

* Added folders memory state definition

* added decrypted folders state

* Refactored service to remove derived state

* removed combinedstate and added clear decrypted folders to methods

* Fixed test

* Fixed issue with editing folder on the desktop app

* Fixed test

* Changed state name

* fixed ts strict issue

* fixed ts strict issue

* fixed ts strict issue

* removed unnecessasry null encrypteed folder check

* Handle null folderdata

* [PM-16197] "Items with No Folder" shows as a folder to edit name and delete (#12470)

* Force redcryption anytime encryption state changes

* Fixed text file

* revert changes

* create new object with nofolder instead of modifying exisiting object

* Fixed failing test

* switched to use memory-large-object

* Fixed ts sctrict issue

---------

Co-authored-by: Matt Bishop <mbishop@bitwarden.com>
Co-authored-by: bnagawiecki <107435978+bnagawiecki@users.noreply.github.com>
2025-01-02 17:16:33 -05:00
Alex Morask
15cc4ff1eb
[PM-14461] Update organization state after subscription update (#12222)
* Update organization state after subscription update

* QA: Fix SM trial seat adjustment
2025-01-02 15:37:09 -05:00
Jonas Hendrickx
c724b0d974
[PM-13999] show estimated tax for taxable countries (#12245) 2025-01-02 20:28:04 +01:00
Jonathan Prusik
e47b5a15fd
[PM-16667] Fix flaky card expiry tests (#12659)
* fix improper date month subtraction

* fix mishandling of 0 month value
2025-01-02 14:09:57 -05:00
cyprain-okeke
899b16966a
[PM-15814]Alert owners of reseller-managed orgs to renewal events (#12607)
* Changes for the reseller alert

* Resolve the null error

* Refactor the reseller service

* Fix the a failing test due to null date

* Fix the No overload matches error

* Resolve the null error

* Resolve the null error

* Resolve the null error

* Change the date format

* Remove unwanted comment

* Refactor changes

* Add the feature flag
2024-12-31 18:06:45 +01:00
Jason Ng
894dd2c896
[PM-16507] update new device verification notice state definition (#12608) 2024-12-30 19:24:31 -05:00
Kyle Spearrin
f434334a88
[PM-16428] Option for primary click action to autofill on Vault view (#12557)
* add option for primary click action to autofill

* setting option string

* autofill setting for click items to autofill

* fix showQuickCopyActions

* apply setting
2024-12-27 08:51:17 -05:00
Andreas Coroiu
1d335bb164
[PM-16262] Make getEnvironment observable and use it in SdkService (#12501)
* feat: re-implement getEnvironment as an observable

* feat: deprecate `getEnvironment`

* fix: use correct environment function in SdkService

* fix: test
2024-12-20 15:20:23 +01:00
Oscar Hinton
8caadacfbc
[PM-16217] Remove wasm timeout (#12476)
Remove the WASM timeout logic and supported$.
2024-12-20 13:54:52 +01:00
Nick Krantz
0f3803ac91
[PM-11442] Emergency Cipher Viewing (#12054)
* force viewOnly to be true for emergency access

* add input to hide password history, applicable when the view is used from emergency view

* add extension refresh version of the emergency view dialog

* allow emergency access to view password history

- `ViewPasswordHistoryService` accepts a cipher id or CipherView. When a CipherView is included, the history component no longer has to fetch the cipher.

* remove unused comments

* Add fixme comment for removing non-extension refresh code

* refactor password history component to accept a full cipher view

- Remove the option to pass in only an id
2024-12-19 09:42:37 -06:00
Daniel García
51f6594d4b
[PM-9473] Add messaging for macOS passkey extension and desktop (#10768)
* Add messaging for macos passkey provider

* fix: credential id conversion

* Make build.sh executable

Co-authored-by: Colton Hurst <colton@coltonhurst.com>

* chore: add TODO

---------

Co-authored-by: Andreas Coroiu <andreas.coroiu@gmail.com>
Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com>
Co-authored-by: Colton Hurst <colton@coltonhurst.com>
2024-12-19 09:00:21 +01:00
cyprain-okeke
12b698b11d
organization status changed code changes (#12249)
* organization status changed code changes

* Remove the stop so a reconnect can be made
2024-12-18 16:31:16 +01:00
Kyle Spearrin
a4db5279b7
[PM-16097] Separate copy buttons appearance setting (#12428)
---------

Co-authored-by: William Martin <contact@willmartian.com>
2024-12-16 16:10:32 -05:00
Thomas Avery
971c157f56
[PM-12700] Add private key regeneration process (#11829)
* add user asymmetric key api service

* Add user asymmetric key regen service

* add feature flag

* Add LoginSuccessHandlerService

* add loginSuccessHandlerService to BaseLoginViaWebAuthnComponent

* Only run loginSuccessHandlerService if webAuthn is used for vault decryption.

* Updates for TS strict

* bump SDK version

* swap to combineLatest

* Update abstractions
2024-12-16 12:00:17 -06:00
Brandon Treston
31be6a7c88
[PM-12273] use organization properties for access permissions (#12358)
* use organization properties for access permissions

* clean up refactor

* simplify logic

* refactor canAccessIntegrationEditor to have all the permission checks
2024-12-16 08:33:46 +10:00
Daniel Riera
6383048197
PM-5550 Implement on-page autofil for single line TOTP (#12058)
* PM-5550 initial commit -Initial render
-Edit tests
-Clean up styling
-New method to validate totpfields

* add refresh overlay

* localize and clean up

* - Clean up code
- Remove unnecessary data from buildtotpelement
- Add feature flag
- Add aria labels to buildtotpelement
- Add tests and update relevant snapshots

* Add and translate aria labels

* add aria labels

* implement feature flag

* address totp tests

* clean up totpfield function

* fix styling and tests, update snapshots

* Update apps/browser/src/_locales/en/messages.json

Formatting suggestion

Co-authored-by: Jonathan Prusik <jprusik@users.noreply.github.com>

* Update apps/browser/src/_locales/en/messages.json

Formatting suggestion

Co-authored-by: Jonathan Prusik <jprusik@users.noreply.github.com>

* remove group tag

* update snapshots

* adress feedback

---------

Co-authored-by: Jonathan Prusik <jprusik@users.noreply.github.com>
2024-12-13 12:37:16 -05:00
Tomi Belan
7a5f3b2dd4
Fix reporting of server-side errors in "bw sync". (#6855)
Co-authored-by: SmithThe4th <gsmith@bitwarden.com>
2024-12-12 13:01:03 -05: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
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
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
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
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
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
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
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
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
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
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
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
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
Bernd Schoolmann
06b5c798dd
Force ssh key creation when creating new ssh item while filtering to ssh keys in desktop (#11985) 2024-11-20 13:39:35 +01:00
rr-bw
9429ae1d06
feat(auth): [PM-9723] Refresh LoginViaAuthRequestComponent (#11545)
Creates a refreshed and consolidated LoginViaAuthRequestComponent for use on all visual clients, which will be used when the UnauthenticatedExtensionUIRefresh feature flag is on.
2024-11-19 14:53:01 -08:00
cyprain-okeke
c17f582768
[PM-13345]Add the new policy (#11894)
* Add the new policy

* Add the free family policy behind flag

* Patch build process

* Revert "Patch build process"

This reverts commit 4024e974b1.

* [PM-13346] Email notification impacts (#11967)

* Changes error notification for disabled offer

* Add the feature to the change

* Add the missing dot

* Remove the authenicated endpoint

* Add the changes for error toast

* Resolve the lint issue

* rename file a correctly

* Remove the floating promise comments

* Delete unwanted comments

---------

Co-authored-by: Matt Bishop <mbishop@bitwarden.com>
2024-11-19 17:36:52 +01:00
Jason Ng
21855595c5
[PM-14219] Add service for new device verification notice (#11988)
* added service and spec file for new device verification notice
2024-11-19 10:04:40 -05:00
Andreas Coroiu
33f7643e15
[PM-12989] Create process for qa to build client with particular sdk version (#11601)
* feat: update sdk service abstraction with documentation and new `userClient$` function

* feat: add uninitialized user client with cache

* feat: initialize user crypto

* feat: initialize org keys

* fix: org crypto not initializing properly

* feat: avoid creating clients unnecessarily

* chore: remove dev print/subscription

* fix: clean up cache

* chore: update sdk version

* feat: implement clean-up logic (#11504)

* chore: bump sdk version to fix build issues

* chore: bump sdk version to fix build issues

* fix: missing constructor parameters

* refactor: simplify free() and delete() calls

* refactor: use a named function for client creation

* fix: client never freeing after refactor

* fix: broken impl and race condition in tests

* feat: add sdk override to desktop build

* feat: add SDK version to browser about dialog

* feat: add sdk override to browser build

* fix: `npm ci` overriding the override

* fix: artifacts not properly downloaded

* fix: switch to new repository

* feat: add debug version function to web

* feat: add sdk-version to CLI

* feat: add version to desktop

* feat: add override to cli

* feat: add override to web

* fix: cli version acting as default command

* fix: consistent workflow input name

* feat: add error handling

* feat: upgrade sdk-internal

* fix: forgot to update package lock

* fix: broken CI build

move sdk version to a regular command

* chore: revert version changes

* refactor: move error handling code

* chore: bump SDK to 0.2.0.main-1

* fix: clean up references to inputs.sdk_commit

* refactor: rename `init` to `applyVersionToWindow`
2024-11-19 13:59:59 +01:00
✨ Audrey ✨
3521c54672
[PM-14964] revert passphrase minimum (#12019)
* revert passphrase minimum
* add recommendation text to browser refresh;  hide hint text when value exceeds recommendation
* migrate validators to generator configuration
2024-11-18 13:43:03 -06:00
Brandon Treston
2447355153
[pm-14025] Remove usage of ActiveUserState from organization.service (#11799)
* WIP refactor organizationService

* rename file, add tests

* fix tests, remove promisies from servcie

* rename tests, classes, and files. Remove unneeded code

* refactor organization service function params to expect a UserId

* fix test

---------

Co-authored-by: Matt Bishop <mbishop@bitwarden.com>
2024-11-18 12:26:10 -05:00
Tom
f1538e1a5f
[PM-14525] remove member access feature flag (#11972)
* Remove member access feature flag

* removing unused code
2024-11-18 10:37:08 -05:00
Todd Martin
0308e6e180
Remove showPasswordless conditionals (#11928)
Co-authored-by: Matt Bishop <mbishop@bitwarden.com>
2024-11-15 12:34:02 -05:00
Jonas Hendrickx
a4156799e9
[PM-13783] Battle harden ProviderType enum expansion (#11920) 2024-11-14 17:46:02 +01:00
cyprain-okeke
2e6d98938a
[PM-13868]Remove Upgrade password manager flag (#11789)
* Remove the feature flag

* Add the feature flag reference
2024-11-14 15:57:54 +01:00
Alex Morask
88cbee9b0a
Remove consolidated billing feature flag (#11969) 2024-11-13 09:01:22 -05:00
cyprain-okeke
24ca942cd6
[PM-14861]Vault items fail to load (#11974)
* Resolve the vault items fail to load

* Remove the hasSubscription

* Replace with hasSubscription from metadata

* Resolve the failing popup
2024-11-13 13:28:40 +01:00
Jason Ng
9ec6f45803
[PM-8682] Add Flags for New Device Verification Notice (#11968) 2024-11-12 12:56:25 -05:00
Shane Melton
96c9e3f92f
[PM-14418] Add security-tasks feature flag (#11962) 2024-11-11 16:07:30 -05:00
Lorenz Brun
6d89c0f157
fido2-utils: fix BufferSource conversions (#11784)
The original implementation of bufferSourceToUint8Array was incorrect as
it did not consider that TypedArray instances represent a view of the
underlying ArrayBuffer which does not necessarily cover the entire
backing ArrayBuffer. This resulted in the output of this function
containing data which would not be logically contained in the input.

This was partially fixed by #8787 for the common case of the input
already being an Uint8Array, but it was still broken for any other
TypedArrays. But #8222 introduced another copy of the original broken
code, breaking the Uint8Array case again.

Fix this once and hopefully for the last time with a correct
implementation of bufferSourceToUint8Array and using that in the
appropriate places instead of open-coding it. In addition there are now
tests which exercise most edge cases with regards to ArrayBuffer and
TypedArrays.
2024-11-11 14:54:36 -05:00
cyprain-okeke
f593269133
[PM-8161] Payment optional trial MVP (#10872)
* Initial comment

* Add changes for the create org with payment method

* Add the secrets manager trail flow

* Add the banners

* Add changes for the Disabled Org

* Add banner to payment method page

* Refactoring changes

* Resolve the bug on tha payment method

* Resolve lint error

* Resolve Pr comments

* resolve the lint issue

* Resolve the lint wrong file issue

* Rename object properly

* Resolve pr comments from sm team

* Resolve the pr comments from sm team

* Fix the failing test

* Resolve some issue with vault

* Resolve the comments from sm team

* Resolve some pr comments from vault team

* Resolve pr comments from auth team

* Exported ValidOrgParams enum

* Removed unnecessary interpolation

* Corrected bit-banner id for trial

* Resolve pr comments from auth team

* Resolve pr comments from auth team

* Removed unnecessary method

* Made OrganizationCreateRequest a subtype of OrganizationNoPaymentMethodCreateRequest

* Resolve review changes from sm

* Resolve review changes from dm

* Resolve the pr comments from billing

* move the free-trial to core

* Move free-trial change to right file

* Revert changes on the free trial  page

* Resolve the comment on protected trial page

* Resolve the comment on protected trial page

* Revert the next async change

* resolve pr comment fro vault team

* resolve the default message comments

* remove unused method

* resolve email sending issue

* Fix the pop issue on payment method

* Fix some console errors

* Fix the pop refresh page

* move the trial services to billing folder

* resolve pr comments

* Resolve the import issues

* Move the observable up

* Resolve blank payment method for trialing org

* Changes to  disable icon is removed onsubmit

* Remove unused references

* add a missing a period at the end of it

* resolve the reload issue

* Resolve the disable icon issue

* Fix the admin access bug

* Resolve the lint issue

* Fix the message incorrect format

* Formatting fixed

* Resolve the access issue of other users role
2024-11-11 17:05:37 +01:00
✨ Audrey ✨
888b9e346c
fix length allowing negative values on Chrome extension (#11926) 2024-11-11 16:48:32 +01:00
Jonas Hendrickx
2bbe4d2cba
[PM-13470] Allow creating clients for multi-org providers (#11890) 2024-11-11 07:57:09 +01:00
Rui Tomé
1f0c1f1b44
[PM-10318] Add organization user deletion and leaving events to EventService (#11554) 2024-11-08 11:23:24 +00:00
Bernd Schoolmann
081fe83d83
PM-10393 SSH keys (#10825)
* [PM-10395] Add new item type ssh key (#10360)

* Implement ssh-key cipher type

* Fix linting

* Fix edit and view components for ssh-keys on desktop

* Fix tests

* Remove ssh key type references

* Remove add ssh key option

* Fix typo

* Add tests

* [PM-10399] Add ssh key import export for bitwarden json (#10529)

* Add ssh key import export for bitwarden json

* Remove key type from ssh key export

* [PM-10406] Add privatekey publickey and fingerprint to both add-edit and view co… (#11046)

* Add privatekey publickey and fingerprint to both add-edit and view components

* Remove wrong a11y title

* Fix testid

* [PM-10098] SSH Agent & SSH Key creation for Bitwarden Desktop (#10293)

* Add ssh agent, generator & import

* Move ssh agent code to bitwarden-russh crate

* Remove generator component

* Cleanup

* Cleanup

* Remove left over sshGenerator reference

* Cleanup

* Add documentation to sshkeyimportstatus

* Fix outdated variable name

* Update apps/desktop/src/platform/preload.ts

Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com>

* Rename renderersshagent

* Rename MainSshAgentService

* Improve clarity of 'id' variables being used

* Improve clarity of 'id' variables being used

* Update apps/desktop/src/vault/app/vault/add-edit.component.html

Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com>

* Fix outdated cipher/messageid names

* Rename SSH to Ssh

* Make agent syncing more reactive

* Move constants to top of class

* Make sshkey cipher filtering clearer

* Add stricter equality check on ssh key unlock

* Fix build and messages

* Fix incorrect featureflag name

* Replace anonymous async function with switchmap pipe

* Fix build

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

Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com>

* Revert incorrectly renamed 'Ssh' usages to SSH

* Run cargo fmt

* Clean up ssh agent sock path logic

* Cleanup and split to platform specific files

* Small cleanup

* Pull out generator and importer into core

* Rename renderersshagentservice to sshagentservice

* Rename cipheruuid to cipher_id

* Drop ssh dependencies from napi crate

* Clean up windows build

* Small cleanup

* Small cleanup

* Cleanup

* Add rxjs pipeline for agent services

* [PM-12555] Pkcs8 sshkey import & general ssh key import tests (#11048)

* Add pkcs8 import and tests

* Add key type unsupported error

* Remove unsupported formats

* Remove code for unsupported formats

* Fix encrypted pkcs8 import

* Add ed25519 pkcs8 unencrypted test file

* SSH agent rxjs tweaks (#11148)

* feat: rewrite sshagent.signrequest as purely observable

* feat: fail the request when unlock times out

* chore: clean up, add some clarifying comments

* chore: remove unused dependency

* fix: result `undefined` crashing in NAPI -> Rust

* Allow concurrent SSH requests in rust

* Remove unwraps

* Cleanup and add init service init call

* Fix windows

* Fix timeout behavior on locked vault

---------

Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com>

* Fix libc dependency being duplicated

* fix SSH casing (#11840)

* Move ssh agent behind feature flag (#11841)

* Move ssh agent behind feature flag

* Add separate flag for ssh agent

* [PM-14215] fix unsupported key type error message (#11788)

* Fix error message for import of unsupported ssh keys

* Use triple equals in add-edit component for ssh keys

---------

Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com>
Co-authored-by: aj-bw <81774843+aj-bw@users.noreply.github.com>
2024-11-08 11:01:31 +01:00
Jordan Aasen
d69642e7a0
[PM-14468] - add feature flag for critical apps (#11871)
* rename acess intelligence to risk insights

* keep branch name

* replace all instances of AccessIntelligence. strip raw data + members to just the table

* revert change to feature flag name

* add feature flag for critical apps

* change flag name

* Update libs/common/src/enums/feature-flag.enum.ts

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

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com>
2024-11-07 16:39:15 -08:00
Todd Martin
f9098558a6
Update Is-Prerelease header to be integer instead of string (#11909) 2024-11-07 16:00:48 -05:00
Nick Krantz
b42741f313
[PM-13839][PM-13840] Admin Console Collections (#11649)
* allow admin console to see all collections when viewing a cipher

- When "manage all" option is selected all collections should be editable

* update cipher form service to use admin endpoints

* when saving a cipher, choose to move to collections first before saving any other edits

- This handles the case where a cipher is moving from unassigned to assigned and needs to have a collection to save any other edits

* set admin flag when the original cipher has zero collections

- handling the case where the user  un-assigns themselves from a cipher

* add check for the users ability to edit items within the collection

* save cipher edit first to handle when the user unassigns themselves from the cipher

* update filter order of collections

* use cipher returned from the collections endpoint rather than re-fetching it

* fix unit tests by adding canEditItems

* re-enable collection control when orgId is present

* fetch the updated cipher from the respective service for editing a cipher
2024-11-07 10:22:35 -06:00
Alec Rippberger
f5e6fc8ed5
[PM-5237] Clients, Self Hosted: Login - Hide "Create account" when registration disabled (#11811)
* Add server settings model and service.

* Inject ServerSettingsService into the login-secondary-content component.

* Fix merge conflict

* Add server settings to old views

* Remove server settings from desktop/mobile

* Cleanup unused code

* Remove changes to default config

* Conditionally show/hide HR element

* Add tests

* PM-5237 - Move ServerSettingsService to jslib-services.module so it is the same across all clients and to solve NullInjectorErrors on desktop & browser extension

* Remove change to v1 components

* Rename ServerSettingsService to DefaultServerSettingsService

* Remove unnecessary map call

* Remove server interface in favor of using ServerSettings class

* Add back HR element

---------

Co-authored-by: Jared Snider <jsnider@bitwarden.com>
2024-11-06 17:57:07 -05:00
✨ Audrey ✨
414bdde232
[PM-13876] replace angular validation with html constraints validation (#11816)
* rough-in passphrase validation failure handling

* trigger valid change from settings

* fix `max` constraint enforcement

* add taps for generator validation monitoring/debugging

* HTML constraints validation rises like a phoenix

* remove min/max boundaries to fix chrome display issue

* bind settings components as view children of options components

* remove defunct `okSettings$`

* extend validationless generator to passwords

* extend validationless generator to catchall emails

* extend validationless generator to forwarder emails

* extend validationless generator to subaddress emails

* extend validationless generator to usernames

* fix observable cycle

* disable generate button when no algorithm is selected

* prevent duplicate algorithm emissions

* add constraints that assign email address defaults
2024-11-06 17:54:29 +01:00
cyprain-okeke
f33661c31c
[PM-11505]Delete the feature flag PM-5864-dollar-threshold (#11436)
* remove the time threshold flag

* Remove the time threshold flag
2024-11-06 16:05:22 +01:00
Justin Baur
1e2a51a56b
Reverse Arguments (#11870) 2024-11-05 13:55:31 -05:00
Todd Martin
eb95d437a8
[PM-13804] Add new Is-Prerelease header to requests (#11605)
* Added new Is-Beta header

* Updated beta to prerelease
2024-11-05 12:01:29 -05:00
Justin Baur
f41365ce48
[PM-13673] Require UserId In CompareHash Method (#11568)
* Require UserId In CompareHash Method

* Throw on null-ish 'masterKey'

* Update Test
2024-11-04 15:11:59 -05:00
Oscar Hinton
cd79457349
[PM-4347] Upgrade angular to 17 (#11031)
Upgrade angular to 17
2024-11-04 11:51:43 -05:00
Todd Martin
a049b553a6
Update decryptUserKeyWithMasterKey to requireUserId (#11560)
* Updated decryptUserKeyWithMasterKey to requireUserId

* Removed unintended extra character.

* Added dependency to LogService.

* Fixed unlock command.
2024-11-01 11:21:18 -04:00
Thomas Rittson
4a2c14dc2e
[PM-14161] Add getById and getByIds rjxs helpers (#11742) 2024-11-01 09:49:31 +10:00
Jonathan Prusik
eba1212e1c
[PM-14351] Migrate away from theme enum (#11812)
* update extension autofill concerns to use theme object and type over enum

* mark ThemeType enum as deprecated

* update theming service concerns to use theme object and type over enum
2024-10-31 16:46:25 -04:00
Alex Morask
36b18c3e59
[PM-14275] Resolve reseller & CB MSP organization owner experience for subscription page (#11797)
* Fixed issue with Resellers and CB MSP Org Owners on subscription page

* Hide billing sync from Families
2024-10-31 11:05:05 -04:00
Oscar Hinton
5e157c5bca
[PM-14180] Provide more debugging details in wasm-debug (#11771)
Improve error logging to include some additional information about the error.
2024-10-31 10:07:55 +01:00
Jared Snider
4de7cb8012
BEEEP - Auth AccountService Improvements (#11779)
* BEEEP Adjacent - AccountService misc improvements - (1) prefer null over undefined and (2) add new Account type

* LockCompV2 - Fix activeAccount type per PR feedback

* AccountService - update getUserId per PR feedback.
2024-10-30 17:54:39 -04:00
Bernd Schoolmann
912ff886bc
[PM-12806] Fix minimum KDF validation (#11786)
* Fix minimum KDF validation

* Add better error messages

* Fix tests

* Fix tests
2024-10-30 17:35:15 +01:00
Andreas Coroiu
021efa2c90
Document firstValueFrom not being supported (#11769) 2024-10-29 16:00:02 +01:00
Thomas Rittson
3736f6854c
Add getUserId and getOptionalUserId rxjs functions (#11741) 2024-10-29 09:51:03 +10:00
Jared McCannon
53f13f4ea5
[PM-10314] Update Warnings for Verifying Domains and Single Org Policy Auto Enable (#11688)
* Updated description and warning for single org policy.

* Added check for verified domains in disabling single org.
2024-10-28 11:00:39 -05:00
Daniel García
65074b0d12
Initialize SDK even when orgKeys is null (#11748) 2024-10-28 14:52:45 +01:00
Thomas Rittson
d0ed9aaa5d
[PM-13779] Add vNext CollectionService without ActiveUserState (#11705)
- add tests
- install jest-extended for additional matchers
- allow for generation of different crypto keys in tests
2024-10-28 10:13:32 +10:00
Bernd Schoolmann
e83dca529b
[PM-12607] Move key rotation to km ownership (#11709)
* Move key rotation to km ownership

* Fix build

* Move userkey rotation data provider abstraction to km ownership

* Move userkey rotation data provider abstraction to km ownership

* Fix linting

* Fix CODEOWNERS for key-management web

* Remove incorrect export

* Fix import error
2024-10-26 13:47:40 +02:00
Bernd Schoolmann
122c3c7809
Add context to logs for decryption failures (#11684)
* Add logging to decryption routines

* Fix case of uknown encryption type

* Add decryption context to log where failures occur

* Update log message

* Fix linting

* Add more context logs

* Add more fine grained logging

* Update log message

* Fix tests
2024-10-25 15:22:30 +02:00
Thomas Rittson
55cd435279
[PM-13790] Remove RefactorOrganizationUserApi feature flag (#11662) 2024-10-25 10:16:59 +10:00
Jared Snider
1fb1be56b3
Auth/PM-12613 - Registration with Email Verification - Provider Invite Flow (#11635)
* PM-12613 - AcceptProviderComp - Add support for new registration with email verification flow.

* PM-12613 - AcceptProviderComp - Reduce required params for finish registration to minimum

* PM-12613 - RegistrationFinish - Add passthrough logic for provider invite token

* PM-12613 - Update DefaultRegistrationFinishService finishRegistration tests to assert that all web only inputs are undefined on the outgoing request model

* PM-12613 - DefaultRegistrationFinishService - finishRegistration - Add missed mapping of optional properties into buildRegisterRequest

* PM-12613 - WebRegistrationFinishService - Add tests for additional token flows.
2024-10-24 17:21:06 -04:00
Shane Melton
a0fe4f4ca6
[PM-13892] Browser Refresh - Organization item clone permission fix (#11660)
* [PM-13892] Introduce canClone$ method on CipherAuthorizationService

* [PM-13892] Use new canClone$ method for the 3dot menu in browser extension

* [PM-13892] Add todo for vault-items.component.ts
2024-10-24 14:12:04 -07:00
Cesar Gonzalez
da1e508c25
[PM-8833] Implement on page autofill menu for password generation (#11114) 2024-10-24 13:20:00 -05:00
Bernd Schoolmann
9264e6775c
Add logging for userkey / device trust rotation (#11682)
* Add logging for userkey rotation

* Fix tests
2024-10-24 19:54:39 +02:00
Shane Melton
a9d9130f01
[PM-13907] [PM-13849] Browser Refresh - Improve launch login UX (#11680)
* [PM-13907] Move canLaunch logic to CipherView

* [PM-13907] Add external link icon to vault list items

* [PM-13907] Remove launch option from more options dropdown

* [PM-13849] Add double click to launch support
2024-10-24 10:51:38 -07:00
Bernd Schoolmann
b486fcc689
[Pm-13097] Rename cryptoservice to keyservice and move it to km ownership (#11358)
* Rename cryptoservice to keyservice

* Rename cryptoservice to keyservice

* Move key service to key management ownership

* Remove accidentally added file

* Fix cli build

* Fix browser build

* Run prettier

* Fix builds

* Fix cli build

* Fix tests

* Fix incorrect renames

* Rename webauthn-login-crypto-service

* Fix build errors due to merge conflicts

* Fix linting
2024-10-24 19:41:30 +02:00
Bernd Schoolmann
b3b311e164
Add logging for decryption failures (#11683)
* Add logging to decryption routines

* Fix case of uknown encryption type

* Remove enum to string mapping
2024-10-24 15:43:49 +02:00
Cesar Gonzalez
9b471e6633
[PM-13715] Launching a website from the extension does not trigger an update to reference the correct autofill value (#11587)
* [PM-13715] Launching page from cipher does not set correct autofill action

* [PM-13715] Fix autofill not triggering for correct cipher after page has been launched from browser extension
2024-10-24 08:22:43 -05:00
Bernd Schoolmann
74dabb97bf
Move process reload ownership to key-management (#10853) 2024-10-23 19:05:24 +02:00
✨ Audrey ✨
eff9a423da
[PM-8280] email forwarders (#11563)
* forwarder lookup and generation support
* localize algorithm names and descriptions in the credential generator service
* add encryption support to UserStateSubject
* move generic rx utilities to common
* move icon button labels to generator configurations
2024-10-23 18:11:42 +02:00
SmithThe4th
4a30782939
[PM-12281] [PM-12301] [PM-12306] [PM-12334] Move delete item permission to Can Manage (#11289)
* Added inputs to the view and edit component to disable or remove the delete button when a user does not have manage rights

* Refactored editByCipherId to receive cipherview object

* Fixed issue where adding an item on the individual vault throws a null reference

* Fixed issue where adding an item on the AC vault throws a null reference

* Allow delete in unassigned collection

* created reusable service to check if a user has delete permission on an item

* Registered service

* Used authorizationservice on the browser and desktop

Only display the delete button when a user has delete permission

* Added comments to the service

* Passed active collectionId to add edit component

renamed constructor parameter

* restored input property used by the web

* Fixed dependency issue

* Fixed dependency issue

* Fixed dependency issue

* Modified service to cater for org vault

* Updated to include new dependency

* Updated components to use the observable

* Added check on the cli to know if user has rights to delete an item

* Renamed abstraction and renamed implementation to include Default

Fixed permission issues

* Fixed test to reflect changes in implementation

* Modified base classes to use new naming

Passed new parameters for the canDeleteCipher

* Modified base classes to use new naming

Made changes from base class

* Desktop changes

Updated reference naming

* cli changes

Updated reference naming

Passed new parameters for the canDeleteCipher$

* Updated references

* browser changes

Updated reference naming

Passed new parameters for the canDeleteCipher$

* Modified cipher form dialog to take in active collection id

used canDeleteCipher$ on the vault item dialog to disable the delete button when user does not have the required permissions

* Fix number of arguments issue

* Added active collection id

* Updated canDeleteCipher$ arguments

* Updated to pass the cipher object

* Fixed up refrences and comments

* Updated dependency

* updated check to canEditUnassignedCiphers

* Fixed unit tests

* Removed activeCollectionId from cipher form

* Fixed issue where bulk delete option shows for can edit users

* Fix null reference when checking if a cipher belongs to the unassigned collection

* Fixed bug where allowedCollection passed is undefined

* Modified cipher by adding a isAdminConsoleAction argument to tell when a reuqest comes from the admin console

* Passed isAdminConsoleAction as true when request is from the admin console
2024-10-22 09:15:15 -04:00