1
0
mirror of https://github.com/bitwarden/browser.git synced 2024-12-28 17:27:50 +01:00
Commit Graph

1674 Commits

Author SHA1 Message Date
Victoria League
b149db9f4d
[CL-458] Exclude badges from truncation and vertically center content (#11262) 2024-09-30 11:45:51 -04:00
cyprain-okeke
65fb967a19
Fix a ui bug on plan display (#11302) 2024-09-28 08:28:14 +01:00
Daniel James Smith
20c253e87b
[PM-12066] Add missing column headers to reports (#11293)
* Add missing column header to weak-password report

* Add missing column header to exposed-password report

* Add missing column header to reused-password report

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-09-27 13:03:22 -04:00
cyprain-okeke
b149c86c28
Resolve the issue of recalculation (#11294) 2024-09-27 17:51:43 +01:00
github-actions[bot]
794e46973d
Autosync the updated translations (#11272)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-09-27 08:49:58 +00:00
Daniel James Smith
9eeaf0a61f
[PM-12066] Add sorting to weak password report (#11027)
* Simplify the filter(toggle group) to filter by organizationId instead of a orgFilterStatus property which is not present on the CipherView

* Add sorting to weak password report table

- Create new type to represent a row within the report
- Add types and remove usage of any
- Include the score/badge within the data passed to the datasource/table instead of looking it up via the `passwordStrengthMap`
- Remove unneeded passwordStrengthCache
-  Enable sorting via bitSortable
- Set default sort to order by weakness

* Show headers and sort also within AC version of weak-password report, but hide the Owner column

* Clarify that we are filtering by OrgId

* Use a typed object for the reportValue instead of an array

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-09-27 01:38:18 +02:00
Jason Ng
069ed80eed
PM-12678 update org vault so user not blocked after edit item(#11261) 2024-09-26 16:25:27 -04:00
Jonas Hendrickx
d2e5af7fb5
[PM-11901] Refactoring self-hosting license file uploader (#11083) 2024-09-26 11:23:23 +02:00
Alec Rippberger
742900a663
PM-11390: [Defect] View Login - Clicking Password History opens Edit Item window behind View Login window (#11119)
* Add password dialog component.

* Properly direct to browser password history screen.

* Add padding to history items.

* Update test to correct password history route.

* Remove unneeded provider.

* Use relative path for SharedModule.
2024-09-25 10:45:13 -04:00
Shane Melton
e6c3de9f47
[PM-12609] Use shareReplay for allCiphers$ observable (#11229) 2024-09-24 14:30:06 -07:00
Todd Martin
85b97d9304
Remove authenticator-token feature flag (#11182) 2024-09-24 17:02:39 -04:00
SmithThe4th
3646214a0f
Made allCiphers$ depend on the refresh subject$ (#11225) 2024-09-24 14:13:27 -04:00
cyprain-okeke
e3c75b3c1b
Resolve the payment display (#11219) 2024-09-24 18:07:29 +01:00
Jonathan Prusik
e88e231d48
[PM-11588] Bugfix - parse user input value for combined expiry date when creating/adding a card cipher (#11103)
* simplify logic and fix some pattern-matching bugs

* add first pass at parsing combined expiry year and month from user input

* clean up code

* fix broken three-digit parsing case

* fix case where splitCombinedDateValues returns empty strings when the input is only a delimiter

* fix incorrect expectation of falsy negative integers

* clean up code

* split out logic from parseYearMonthExpiry

* move utils from vault to autofill
2024-09-24 10:36:44 -04:00
Alex Morask
c8084cc4e3
Fixed free organization upgrade after stripe sources deprecation (#11205) 2024-09-24 09:26:39 -04:00
Bernd Schoolmann
d92b2cbea2
[PM-11477] Remove deprecated cryptoservice functions (#10854)
* Remove deprecated cryptoservice functions

* Use getUserkeyWithLegacySupport to get userkey

* Fix tests

* Fix tests

* Fix tests

* Remove unused cryptoservice instances

* Fix build

* Remove unused apiService in constructor

* Fix encryption

* Ensure passed in key is used if present

* Fix sends and folders

* Fix tests

* Remove logged key

* Fix import for account restricted keys
2024-09-24 11:28:33 +02:00
Shane Melton
4b9935b28c
[PM-12528] AC Fix Collection Refresh (#11207)
* [PM-12528] Ensure collections refresh when the refresh$ subject emits

* [PM-12528] Cleanup all collections observable
2024-09-23 15:01:48 -07:00
cyprain-okeke
08f0dadc2f
Resolve the bug on change payment method (#11202) 2024-09-23 19:23:53 +01:00
Jared McCannon
2b462b6fd6
Validate domain has been verified (#11125)
- Added client-side validation that the domain has been verified.
2024-09-23 10:33:44 -05:00
github-actions[bot]
1b8fcda90d
Autosync the updated translations (#11197)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-09-23 09:47:05 +00:00
✨ Audrey ✨
cf48db5ed1
[PM-11418] generator policy constraints (#11014)
* add constraint support to UserStateSubject
* add dynamic constraints
* implement password policy constraints
* replace policy evaluator with constraints in credential generation service
* add cascade between minNumber and minSpecial

Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com>
2024-09-23 11:07:47 +02:00
Robyn MacCallum
cf1f7cc61d
[SM-1302] Initial config page (#10196)
* Initial config page

* Remove project actions

* Add copy projectId method to the project page

* Update bitwarden_license/bit-web/src/app/secrets-manager/service-accounts/config/config.component.ts

Co-authored-by: Maciej Zieniuk <167752252+mzieniukbw@users.noreply.github.com>

* Update bitwarden_license/bit-web/src/app/secrets-manager/shared/projects-list.component.ts

Co-authored-by: Maciej Zieniuk <167752252+mzieniukbw@users.noreply.github.com>

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

Co-authored-by: Maciej Zieniuk <167752252+mzieniukbw@users.noreply.github.com>

* Fix method and  string naming

* Ensure config component load logic happens after params observed

* Remove projectId emitted event

* Update bitwarden_license/bit-web/src/app/secrets-manager/service-accounts/config/config.component.ts

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

* Adjust load function

* Fix config translation

* Remove unnecceary async from copy functions

* Add project ID translation key

* Update bitwarden_license/bit-web/src/app/secrets-manager/service-accounts/config/config.component.ts

Co-authored-by: Maciej Zieniuk <167752252+mzieniukbw@users.noreply.github.com>

* Simplify load function

* Simplify variable definition

* Add all machine account projects to the config page

* Update bitwarden_license/bit-web/src/app/secrets-manager/service-accounts/config/config.component.ts

Co-authored-by: Maciej Zieniuk <167752252+mzieniukbw@users.noreply.github.com>

* Remove unused variable

* Remove revision date in config project list

---------

Co-authored-by: Maciej Zieniuk <167752252+mzieniukbw@users.noreply.github.com>
Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>
2024-09-20 12:54:03 -04:00
Jordan Aasen
ea025b9026
add padding to new organization input (#11090) 2024-09-20 08:49:27 -07:00
Nick Krantz
0516ca00dc
update trial initiation text to only represent the product (#11171)
Co-authored-by: Alec Rippberger <alec@livefront.com>
2024-09-20 09:48:44 -05:00
Cesar Gonzalez
c276d5dfa5
[PM-281] A11y visual distinction required for page links (#9878)
* [PM-281] Visual distinction required for login page links

* add bitLink to report links

* add bitLink to billing history

* [PM-281] Adding more references to bitLink and incorporating changes to aria labels for a variety of buttons

* Added editItemWithName to announce links within reports even better

---------

Co-authored-by: Vicki League <vleague@bitwarden.com>
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-09-20 09:04:48 -05:00
cyprain-okeke
8f05581ba0
[AC-3052] [Defect] Payment method section is blank when upgrading Teams SM trial initiated org paid with Bank Account (#11158)
* Fix the payment method issue

* Resolve the navigation after upgrade
2024-09-20 14:58:53 +01:00
Jason Ng
ece6f8aae2
AC-2617 update vault header to have loading text on slow connection(#11121) 2024-09-20 09:44:05 -04:00
github-actions[bot]
5f25bd93cd
Autosync the updated translations (#11166)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-09-20 11:26:04 +00:00
Alec Rippberger
ca1dce4625
Add missing translation keys. (#11159) 2024-09-19 14:48:14 -05:00
Shane Melton
4327fa21f6
[PM-11343] Browser Refresh - View dialog permissions in AC (#11092)
* [PM-11343] Add param to conditionally disable the edit button

* [PM-11343] Cleanup router navigation and move query param handling to callers of the View dialog

* [PM-11343] Fix failing test

* [PM-11343] Fix missing router after merge

* [PM-11343] Add null checks in case the dialog result is undefined (due to closing via the ESC key)

* [PM-11343] Add support to provide a list of collections to the cipher view component

* [PM-11343] Add collections as an optional view cipher dialog parameter

* [PM-11343] Update the org vault to provide collections when opening the View cipher dialog

* [PM-11343] Fix import

* [PM-11343] Use [replaceUrl] for cipher items to avoid needing double back button
2024-09-19 10:43:28 -07:00
SmithThe4th
7ae427e713
Revert "[PM-11200] Move delete item permission to Can Manage (#10890)" (#11155)
* Revert "[PM-11200] Move delete item permission to Can Manage (#10890)"

This reverts commit 8921230b4f.

* Removed provider access
2024-09-19 13:27:08 -04:00
Nick Krantz
01e530d02b
[PM-11691] Remove Nord and Solarized Dark from extension (#11013)
* remove nord and solarized dark from AppearanceV2 component
- This component already behind the extension refresh feature flag

* update the users theme to system when nord or solarized dark is selected

* For desktop, still allow all theme types by overriding the default theme service.

* change theme on the fly rather than updating local state.

- When the feature flag is removed then a migration will have to take place
2024-09-19 10:55:40 -05:00
Ike
afff91e0f3
added duofederal.com to valid urls (#11137) 2024-09-19 11:32:42 -04:00
Alec Rippberger
2b85392b0f
PM-11338: [Defect] Clicking outside of View {Item} dialog should close the dialog properly (#11035)
* Handle undefined result.

* Updated enum values for consistency.
2024-09-18 16:02:47 -05:00
Alec Rippberger
6c1d74a4ce
[PM-11395] [Defect] View Login - TOTP premium badge does nothing when clicked (#10857)
* Add MessagingService to LoginCredentialView component.

* Add comments.

* Add WIP PremiumUpgradeService

* Simplify web PremiumUpgradeServices into one service.

* Relocate service files.

* Add browser version of PremiumUpgradePromptService.

* Cleanup debug comments.

* Run prettier.

* rework promptForPremium to take organization id and add test.

* Add test for browser

* Rework imports to fix linter errors.

* Add Shane's reworked WebVaultPremiumUpgradePromptService.
2024-09-18 16:00:54 -05:00
cyprain-okeke
1940256fe2
Resolve the discount issue (#11128) 2024-09-18 18:55:31 +01:00
Alec Rippberger
931f86c948
[PM- 9666] Implement edit item view individual vault (#10553)
* Add initial vault cipher form for cipher edit.

* Add ability to add new cipher by type

* Add ability to save and clone cipher,

* Update canEditAllCiphers to take 1 argument.

* Add attachments button to add/edit dialog.

* Add semi-working attachment dialog.

* Add working attachment functionality.

* Remove debugging code.

* Add tests for new attachments dialog component.

* Add AddEditComponentV2 tests.

* Remove AddEditComponentV2 delete functionality.

* Remove unnecessary else statement.

* Launch password generation in new dialog when extension refresh enabled.

* Add tests for PasswordGeneratorComponent.

* Adjust password and attachments dialog sizes.

* run lint:fix

* Remove unnecessary form from button.

* Add missing provider in test.

* Remove password generation events.

* Add WebVaultGeneratorDialogComponent and WebCipherFormGenerationService

* Move and rename CipherFormQueryParams

* Use WebCipherFormGenerationService to launch password / user generation modals.

* Add WebVaultGeneratorDialogComponent tests.

* Remove unnecessary functionality and corresponding tests.

* Fix failing tests.

* Remove unused properties from AddEditComponentV2

* Pass CipherFormConfig to dialog.

* Clean up unused attachment dialog functionality.

* Update AddEdit cancel functionality to prevent navigating user.

* Make attachment dialog open a static method.

* Add addCipherV2 method and clean up tests.

* Remove changes to QueryParams.

* Add tests for WebCipherFormGenerationService

* Remove unused onCipherSaved method.

* Remove cipherSaved event.

* Remove unused password generator component

* Refactor to simplify editCipherId for extensionRefresh flag.

* Add additional comments to AddEditComponentV2.

* Simplify open vault generator dialog comment.

* Remove unused organizationService

* Remove unnecessary typecasting.

* Remove extensionRefreshEnabled and related.

* Remove slideIn animation

* Remove unused AddEditComponentV2 properties.

* Add back generic typing.

* Condesnse properties into single form config.

* Remove onDestroy and related code.

* Run prettier

* fix injection warning

* Handle cipher save.

* Redirect to vault on delete and make actions consistent.

* Update comment.
2024-09-18 12:48:47 -05:00
Daniel James Smith
a674f698a2
[PM-12067] Add sorting to exposed passwords report (#11029)
* Add sorting to exposed passwords report

- Create new type to represent a row within the report
- Add types and remove usage of any
- Include the exposed number of times within the data passed to the datasource/table instead of looking it up via the `exposedPasswordMap`
- Enable sorting via bitSortable
- Set default sort to order by exposed number of times in descending order

* Show headers and sort also within AC version of exposed-passwords report but hide the Owner column

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-09-18 18:53:04 +02:00
cyprain-okeke
727fbb6731
Ac 3030 discount is not included in the pricing breakdown when annual plan (#11126)
* Resolve the discount issues

* Resolve the payment cvv alignment

* Resolve the wrong message for secrets manager

* Remove unused commented code

* resolve the display message bug on sm flow
2024-09-18 16:22:04 +01:00
Alec Rippberger
80a9836cb2
Navigate to fault after cipher deleted. (#11042) 2024-09-17 14:00:21 -05:00
Jason Ng
d0516f24e8
[AC-2627] Empty Collection New Item Btn Permissions (#11089)
* only show new item btn in empty collection for can edit perm
2024-09-17 14:28:39 -04:00
Nick Krantz
d68853a4a2
[PM-11131] Screen Reader Announcements for Copy (#11091)
* add copy specific aria-labels for login ciphers

* add copy specific aria-labels for card ciphers

* add copy translations for identity to web translations
2024-09-17 13:23:15 -05:00
Rui Tomé
c05b6eb116
[PM-11667] Remove all code related to the outdated custom permissions 'Edit/Delete Assigned Collections' (#10904)
* [PM-11667] Remove all code related to the outdated custom permissions 'Edit/Delete Assigned Collections'

* Revert change made to data model in state migration
2024-09-17 14:22:17 +01:00
Bernd Schoolmann
15610906d2
[PM-7608] Account Security Settings V2 (#10441)
* Implement account security settings v2

* Increase await dialog delay to 500 msec

* Update messages

* Replace platformservice with biometricsservice

* Cleanup

* Cleanup

* Fix account security component according to feedback

* Re-add old message

* Re-add old error message

* Fix minimum timeout message

* Fix screen-reader on custom timeout

* Remove debugging configurations

* Fix incorrectly changed message

* Remove custom vault timeout text

* Restore vaultTimeoutPolicyInEffect i18n message in web

* Change text to use vaultTimeoutPolicyInEffect1

* Fix tests
2024-09-16 17:40:08 +02:00
Alex Morask
096a2563bb
Piped submit text to i18n (#11078) 2024-09-16 10:23:10 -04:00
Nick Krantz
c64477034a
set extensionRefreshEnabled to be undefined so the "new" button isn't shown until the feature flag is resolved (#11038) 2024-09-16 08:33:23 -05:00
cyprain-okeke
f816e80314
[AC-3023] Resolve the capitalization here (#11019)
* Resolve the capitalization here

* Resolve the returned issue on A11y

* Fix the storage bug
2024-09-16 10:14:46 +01:00
rr-bw
96d116d643
[PM-8116] Auth Browser Refresh: Password Hint Component (#10492)
* setup component, services, and web HTML

* make Web and Browser functional

* make desktop functional

* update template to solidify common client HTML

* simplify template and class

* update browser routing

* move canActivate to correct location

* simplify post submit routing

* update routing to use unauthUiRefreshSwap()

* constrain AnonLayout title/subtitle width, reduce height on destkop to account for header

* reduce height on browser to account for header (otherwise have to scroll to see EnvSelector

* resolve email issue when clicking 'cancel' on extension popout

* update routing for web

* persist email to popout

* update web router and anon-layout min-h based on client

* change anchor link to button

* remove unnecessary formatting changes

* add new icon

* remove unnecessary call to loginEmailService
2024-09-13 09:16:25 -07:00
Bernd Schoolmann
54cc35e29a
[PM-6037] Fix process reload not triggering on inactive account lock/logout (#9805)
* Send loggedOut/locked events on logout/lock event

* Revert "Send loggedOut/locked events on logout/lock event"

This reverts commit 293f2d6131.

* Ensure loggedOut is sent for non-active user logouts too

* Make loggedOut accept userIds

* Add userBeingLoggedOut in desktop app component

* Await updateconnection calls
2024-09-13 18:11:05 +02:00
Alex Morask
0080fcc979
Use payment-v2.component in trial-billing-step.component (#11010) 2024-09-13 09:29:11 -04:00
Jonathan Prusik
e72203d5e0
fix typos (#11011) 2024-09-13 09:17:07 -04:00
github-actions[bot]
83a11a195e
Autosync the updated translations (#11022)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-09-13 09:50:20 +00:00
Jared Snider
bd3863c313
Auth/PM-11969 - Registration with Email Verification - Accept Emergency Access Invite Flow (#11018)
* PM-11969 - Registration with Email Verification - Accept Emergency Access Invite Fixed

* PM-11969 - Fix PR feedback

* PM-11969 - AcceptEmergencyComponent - remove prop
2024-09-12 20:14:37 -04:00
Nick Krantz
70fbcf2a10
[PM-11657] Stripe + Browser Refresh Styling (#10978)
* add check for `ExtensionRefresh` in StripeService

- Stripe components need new styles to match the new CL components

* add global styles for Stripe components

- Matches closer to the browser refresh components

* add browser refresh component details to Stripe JS initialization

* add component to match the display of the new component library that shows only when the `ExtensionRefresh` flag is enabled

* update both payment components to use payment label component

- This styling of the label is separate from the `AC2476_DeprecateStripeSourcesAPI` flag

* update security code copy

* change layout of the trial component to account for new CL components

* absolutely position label to remove extra spacing around the label

* remove unneeded logic
2024-09-12 14:37:44 -05:00
Jared Snider
b6cde7e3ef
Auth/PM-11945 - Registration with Email Verification - Fix Org Sponsored Free Family Plan not working (#11012)
* PM-11945 - AcceptOrg - fix inaccurate comment.

* PM-11945 - Refactor new registration process to pass along orgSponsoredFreeFamilyPlanToken

* PM-11945 - RegistrationFinishComponent - wire up passing of orgSponsoredFreeFamilyPlanToken to submit method

* PM-11945 - Add todo
2024-09-12 15:24:35 -04:00
cyprain-okeke
fc2c83f0d3
[AC-3022]Selecting a plan makes the plan cards content to auto-adjusts (#10992)
* Resolve the recommended issue

* Resolve the discount display issues

* remove unused tw property

* Resolve all the outstanding bugs

* Fix the A11y bug

* Resolve the base storage issue

* Rename service account in the summary

* changes for the A11y bug

* Fix the improper keyboard navigation in modal

* Add some additional ui changes
2024-09-12 19:12:38 +01:00
Daniel James Smith
f70b3df2d2
[PM-11949] Fix generating and copying export password (#10999)
* Use password field value instead of local variable for copy to clipboard

Use appCopyClick directive instead of manually copying and showing success toast

* Add missing "copySuccessful" message key to desktop and web

* Remove whitespace from web en/messages.json

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-09-12 20:04:39 +02:00
Jake Fink
07d2e36496
[PM-10914] add option to delete all folders if migration fails (#10983)
* add option to delete all folders if migration fails

* update text and flow to reattempt migration

* clear encrypted folders as well on delete all

* Update messaging
2024-09-12 13:47:35 -04:00
Jason Ng
89751f46d6
[PM-254] Set PDF Attachments in Web to download, add success toast (#10757)
* add success toast to pdf attachment download in web

* update desktop attachments for toastService

* removed trailing comma

---------

Co-authored-by: gbubemismith <gsmithwalter@gmail.com>
Co-authored-by: SmithThe4th <gsmith@bitwarden.com>
2024-09-11 15:27:53 -04:00
Alex Morask
2cfbfcbdfe
Run prettier (#10993) 2024-09-11 15:03:39 -04:00
Shane Melton
8e4dab5eba
[PM-10996] Remove restrict-provider-access feature flag (#10977) 2024-09-11 10:45:23 -07:00
Nick Krantz
db9003458b
[PM-11436] New "+" button (#10907)
* replace icon in "new" button on admin-console

* replace icon in "new" button on secrets manager

* reduce flash of "new item" button by checking the availability of the organization
2024-09-11 11:29:53 -05:00
Alex Morask
4fa31b8f2b
Use payment-v2.component in change-plan-dialog.component when FF is on (#10976) 2024-09-11 09:48:22 -04:00
SmithThe4th
8921230b4f
[PM-11200] Move delete item permission to Can Manage (#10890)
* Refactored the showDelete function to check if a user can manage a collection

Removed the can edit or manage cipher check from the show delete function

* Add check for AC vault to return true when user has admin access

* Check user is an admin or custom user with editAnyCollection

* Check user is an admin or custom user with editAnyCollection
2024-09-10 14:15:01 -04:00
Jared Snider
2d02b6ca5c
Auth/PM-11252 - Registration with Email Verification - Add new redirect connector (#10682)
* PM-11252 - Registration with email verification - Add new signup redirect connector

* PM-11252 - Make the redirect connector generic and extensible while updating it to reference the new fragment based approach which prevents open redirects and prevents the query string from being sent to servers or proxies.

* PM-11252 - PR feedback - refactor redirect to simply forward any fragment onward with no query param parsing required leading to an even more generic solution.

* PM-11252 - Docs

* PM-11252 - PR Feedback - Include styles in chunks to remove need to manually import scss

* PM-11252 - Update redirect html to tailwind.
2024-09-10 11:29:48 -04:00
cyprain-okeke
c1b1db071d
[AC-3029][Defect] Organization storage count is not carried over to the Upgrade dialog Total section (#10965)
* Resolve the ui changes issues

* Resolve the storage ui issue
2024-09-10 12:57:47 +01:00
cyprain-okeke
e786eac87d
Resolve the ui changes issues (#10955) 2024-09-09 18:21:09 +01:00
Tom
8a199a1f66
[AC-2614] Member Access Localization (#10931)
* Initial setup and modifications for member access report api implementation

* Adding the permissions logic for getting the permissions text

* fixing the test cases

* Some refactoring on async calls

* Comments on the model

* Resolving the mock issue

* messages

* Localization of text

* One more file to fix merge
2024-09-09 11:48:08 -04:00
github-actions[bot]
bf7a490a76
Autosync the updated translations (#10959)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-09-09 14:55:53 +00:00
Conner Turnbull
60e9969017
[AC-2568] Split billing history calls to separately call for invoices and transactions. Added paging buttons (#10697)
* Split billing history calls to separately call for invoices and transactions. Added paging button

* Added missing button types
2024-09-09 09:39:02 -04:00
cyprain-okeke
3af0590807
Fix the adjusting issue on the plans selection (#10953) 2024-09-09 13:25:14 +01:00
Alex Morask
56ededa947
Update organization-plans.component to use new payment-v2.component when FF is on (#10906) 2024-09-06 10:19:12 -04:00
Alex Morask
2aa4b07d68
Move braintree.service and stripe.service from jslib-services.module into web (#10923) 2024-09-06 09:51:00 -04:00
Nick Krantz
fb1a294c97
update aria label of the character count toggle (#10915) 2024-09-06 08:49:46 -05:00
github-actions[bot]
d28b62ae5d
Autosync the updated translations (#10920)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-09-06 11:08:30 +00:00
cyprain-okeke
8eef46ad4e
[PM-11417] Customers' Expiration Date in Admin Console changing to next invoice date when Pending Invoice items exist (#10774)
* Resolve the wrong subscription expiration date

* Refactor the change to include flag

* refactor the change to consider the flag

* Resolve the year bug for all subscription

* Changes for the premium user

* resolve the premium issue
2024-09-05 23:48:15 +01:00
cyprain-okeke
397141b9d9
Resolve the issue of blank seat and seat limit pm (#10902) 2024-09-05 20:40:27 +01:00
Justin Baur
3bbc2cc691
Change AppIdService to Use Storage Directly (#10835) 2024-09-05 14:44:19 -04:00
Jordan Aasen
329f8b138c
[PM-11438] add padding to self-hosted subscription import button (#10869)
* add padding to import button

* reduce padding on upload input

* add padding to premium self-hosted file upload
2024-09-05 09:31:59 -07:00
Alex Morask
2a1d9b7f31
[AC-2963] Add premium-v2.component for individual users (#10885)
* Add premium-v2.component

* (No Logic) Move existing premium.component into new premium folder

* Add new premium-v2.component to /premium route behind FF
2024-09-05 11:20:23 -04:00
Victoria League
32903a21f9
[CL-322] Remove tw-sr-only from form field labels (#10868) 2024-09-05 10:16:06 -04:00
Alec Rippberger
c2046f8929
Add missing address label. (#10823) 2024-09-04 15:40:25 -07:00
Alec Rippberger
5ba39651e2
[PM-10833] [Defect] Add items to new dropdown in admin console (#10828)
* Add cipher types to "new" dropdown in admin console.

* Keep feature flag code consistent.

* Add missing menu divider.
2024-09-04 15:38:56 -07:00
Alec Rippberger
8aa81dec3b
[PM-11388] [Defect] Section headers are missing for View {Item} on web (#10838)
* Add Personal Details header.

* Add missing translation strings.
2024-09-04 15:33:54 -07:00
Thomas Rittson
0173b5192e
[PM-11623] Refactor access-selector stories (#10874)
* Split access-selector stories into separate stories and files
* Tweak existing stories to better represent actual use cases in our app
* Add jsdoc comments
* Add stories
2024-09-05 08:33:35 +10:00
Thomas Rittson
8344623185
[PM-11450] Move organization-user domain to admin-console lib (#10785)
- move organization-user files from libs/common/src/admin-console into libs/admin-console/src/common
- add barrel files and update imports to use barrel files
- rename OrganizationUserService to OrganizationUserApiService
- rename OrganizationUserServiceImplementation to DefaultOrganizationUserApiService
2024-09-04 18:21:26 -04:00
Ike
b264a3f442
toast is how showing; removed event emitter to use built in emitter in base class; (#10761) 2024-09-04 12:49:18 -07:00
Jonathan Prusik
44f1fc156c
[PM-11458] Bugfix - If two digit year was entered for card, the expired card message shows if card is not expired (#10801)
* normalize card expiry year before determining if it is expired

* add tests
2024-09-04 13:39:48 -04:00
Alex Morask
6edc3edb9a
[AC-2960] Create new adjust-storage-dialog component without payment.component (#10793)
* Add adjust-storage-dialog-v2.component

* (No Logic) Rename old adjust-storage.component to adjust-storage-dialog.component

* (No Logic) Move existing adjust-storage-dialog.component into new adjust-storage-dialog folder

* Use adjust-storage-dialog-v2.component in adjustStorage methods when FF is on
2024-09-04 12:30:47 -04:00
Nick Krantz
c5c8a0dd5e
swap account font color for muted (#10883) 2024-09-04 10:51:53 -05:00
rr-bw
b27dc44298
[PM-11136] Convert LoginEmailService email property to state provider (#10624)
* convert email property to state provider

* update tests

* assign loginEmail to variable before passing in

* remove nav logic in ngOnInit
2024-09-03 09:40:11 -07:00
Alec Rippberger
ea618c682a
Use alt background for view dialog. (#10763) 2024-09-03 10:30:46 -05:00
SmithThe4th
e7d4f8575d
renamed bulk and inline menu options (#10834) 2024-08-30 16:45:47 -04:00
Jared Snider
1b75261f68
Fix web vault lock throwing an error (#10833) 2024-08-30 16:35:58 -04:00
Alex Morask
95d04f264f
Remove unused payment.component from adjust-subscription.component.html (#10820) 2024-08-30 14:18:07 -04:00
Jordan Aasen
2882fa3077
[AC-2268] - migrate toast to CL service for admin-console (#10663)
* migrate toast to CL service for admin-console

* fix spec

* add missing dep for toastService

* fix toastService args

* fix toastService args

* fix toastService args
2024-08-30 11:16:06 -07:00
cyprain-okeke
c0fbb5ce39
Hide the selfHost for teams and free plan (#10692) 2024-08-30 17:26:25 +01:00
Rui Tomé
4453a5c114
[PM-11333] Rename deleteOrganizationUser to removeOrganizationUser in BaseMembersComponent, OrganizationUserService and related files 2024-08-30 15:01:29 +01:00
github-actions[bot]
7f537efa46
Autosync the updated translations (#10813)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-08-30 10:55:54 +00:00
github-actions[bot]
e5f67f0a45
Autosync the updated translations (#10809)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-08-30 10:25:54 +00:00
Alec Rippberger
1c43402601
Check result is not null or undefined before trying to access the action property. (#10754) 2024-08-29 17:09:20 -05:00
Jason Ng
2d753f2778
PM-11130 add aria labels to pw count and website launch in view v2 (#10776) 2024-08-29 17:44:53 -04:00
Jared Snider
0a0cbde5b3
Auth/PM-11318 - Registration With Email Verification - Login After Registration (#10783)
* PM-11318 - Registration Finish - Log user in after registration

* PM-11318 - Adjust registration and login message to be one msg

* PM-11318 - RegistrationFinish - Adjust messaging based on product feedback.

* PM-11318 - RegistrationFinishComp - Tweak redirect and error logic.
2024-08-29 13:55:09 -04:00
Jared Snider
d4b984f907
Auth/PM-11414 - Fix Web Client Lock Component (#10780)
* PM-11414 - Fix web lock being broken due to missing web implementation for biometric service.

* PM-11414 - Fix import
2024-08-29 11:18:17 -04:00
Alex Morask
a58642e370
[AC-2959] ACH Direct Debit POC (#10746)
* (No Logic) Fix typo in billing-api-service.abstraction file name

* (Cleanup) Remove payment method components and API methods from provider portal

Product team decided not to have a payment method page in the provider portal for consolidated billing. This just removes all the unused components and API methods.

* Add organization endpoints to support new payment method behavior

* Add payment-v2.component

This component existed in the libs folder because we used it for the provider portal, but since we've removed payment functionality from the provider portal, I moved it into web in this commit.

* (No Logic) Move existing payment.component into new payment component folder

* Add verify-bank-account.component

This component existed in the libs folder because we used it for the provider portal, but since we've removed payment functionality from the provider portal, I moved it into web in this commit.

* Add adjust-payment-dialog-v2.component

* (No Logic) Move existing adjust-payment-dialog.component into new adjust-payment-dialog component folder

* Add organization-payment-method.component

* Add feature flag: AC-2476-deprecate-stripe-sources-api

* Pivot organization payment method route on new feature flag

* Fix broken test
2024-08-28 10:48:22 -04:00
Addison Beck
76b9adf50b
Enable event logs to show events logged by the Public API (#10660)
* Add PublicApi to event system users

* Remove `import` api service method
2024-08-27 18:21:33 -04:00
Alec Rippberger
7564c4aa7c
[PM-10833] Add cipher types to "new" dropdown in admin console (#10614)
* Add cipher types to "new" dropdown in admin console.

* Keep feature flag code consistent.
2024-08-27 15:19:25 -05:00
Jordan Aasen
9041a4cd4c
[PM-6564] migrate auth toasts to CL toastService (#10665)
* migrate auth toasts to CL toastService

* fix component args

* fix component args

* fix specs

* fix toastService args
2024-08-27 10:33:58 -07:00
Jordan Aasen
e255d84121
[PM-4473] use anon layout for send access component (#10699)
* use anon layout for send access component

* fix width on explainer.

* don't show creator ID until send is decrypted in send access
2024-08-27 10:18:02 -07:00
Will Martin
80f4935171
[CL-324] migrate app-callout internals to bit-callout (#9925) 2024-08-27 09:12:28 -04:00
Bernd Schoolmann
3c9b3ea2cc
[PM-6296] Fix biometrics error prompt when biometrics are temporarily unavailable in browser extension (v2) (#10374)
* Create unavailable message for biometrics when in clamshell mode

* Move browser biometrics

* Inject nativemessagingbackground instead of using constructor

* Fix linting

* Fix build on browser
2024-08-27 06:25:20 +00:00
Matt Gibson
9459cda304
Pm-10953/add-user-context-to-sync-replaces (#10627)
* Require userId for setting masterKeyEncryptedUserKey

* Replace folders for specified user

* Require userId for collection replace

* Cipher Replace requires userId

* Require UserId to update equivalent domains

* Require userId for policy replace

* sync state updates between fake state for better testing

* Revert to public observable tests

Since they now sync, we can test single-user updates impacting active user observables

* Do not init fake states through sync

Do not sync initial null values, that might wipe out already existing data.

* Require userId for Send replace

* Include userId for organization replace

* Require userId for billing sync data

* Require user Id for key connector sync data

* Allow decode of token by userId

* Require userId for synced key connector updates

* Add userId to policy setting during organization invite accept

* Fix cli

* Handle null userId

---------

Co-authored-by: bnagawiecki <107435978+bnagawiecki@users.noreply.github.com>
2024-08-26 20:44:08 -04:00
Jared Snider
c3e1b09643
PM-9906 - Web Preferences Component - Fix issue where having a vault timeout policy would prevent users from updating their preferences. (#10554) 2024-08-26 13:09:38 -04:00
Oscar Hinton
9152c3203f
[BEEEP] [PM-10117] Migrate index.html (#10286)
Migrate the index.html to use tailwind instead of bootstrap

* Extracted some more global styles to override the bootstrap styles for layout
  frontend. We should revisit this when we remove bootstrap.
* Removed Angular specific logo for anon pages. Now uses the same css class as
  loading page to prevent duplicated assets.
2024-08-26 18:15:09 +02:00
Jordan Aasen
bfc49c4e41
display toast when billing sync copy button is clicked (#10661) 2024-08-26 09:13:58 -07:00
github-actions[bot]
b8be1f7b1b
Autosync the updated translations (#10722)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-08-26 11:13:11 +00:00
Matt Gibson
c2829cd71b
Remove password hint responses from API (#10523)
* Log reloading behavior

* Remove hints from responses.

changing password implies updating the hint, but no longer displays the old one. This is a security risk for shoulder surfing and breaks the escrow model we have where it is only shared via email when requested.

* Update change password hint label
2024-08-23 13:51:42 -04:00
cyprain-okeke
0d75b71ea9
[AC-2708][AC-2712][AC-2713] upgrading from a Organizations new design changes (#10662)
* Changes base on the new design

* changes base on the new design

* Fix the family plan summary issue
2024-08-23 16:45:03 +01:00
github-actions[bot]
6f8ad2414f
Autosync the updated translations (#10686)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-08-23 07:59:04 +00:00
github-actions[bot]
fa13732957
Autosync the updated translations (#10675)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-08-22 16:09:02 +00:00
Conner Turnbull
938bb340df
Resolved broken web build (#10659) 2024-08-21 12:42:29 -04:00
Jordan Aasen
4c7ac36ffa
increase postal code colspan (#10647) 2024-08-21 09:20:52 -07:00
Jordan Aasen
0873f03932
migrate toast to CL service (#10644) 2024-08-21 09:19:55 -07:00
Jonathan Prusik
1fe6631c82
[BEEEP][PM-3876] - Warn users if a stored card has an expiry date in the past (#10470)
* add enableExpiredPaymentCipherWarning setting

* add card expiry warning to the v2 Card Details component

* remove enableExpiredPaymentCipherWarning setting

* update expired card callout design and copy

* move card expired callout to cipher view

* add card expiry warning to the web vault add-edit cipher component
2024-08-21 10:59:03 -04:00
Alex Morask
b030c6e27b
[AC-2858] Remove code supporting payment method warning banners (#10615)
* Remove errant payment method warning banner implementation

* Removing unused endpoint
2024-08-21 10:17:42 -04:00
SmithThe4th
dedd7f1b5c
[PM-10607] Require userId for getKeyForCipherKeyDecryption (#10509)
* updated cipher service to stop using the deprecated getUserKeyWithLegacySupport and use the version that requires a user id

* Added account service mock

* fixed cipher test

* Fixed test

* removed async from encryptCipher

* updated encryptSharedCipher to pass userId to the encrypt function

* Pass userId to getUserKeyWithLegacySupport on encryptSharedCipher

* pass in userid when setting masterKeyEncryptedUserKey

* Added activer usedId to new web refresh function
2024-08-20 11:00:48 -05:00
Victoria League
ed719f835a
[CL-389] Add end slot to non-text bit label content (#10457) 2024-08-20 11:55:11 -04:00
Daniel James Smith
e5227c045d
Remove duplicate message-keys (#10633)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-08-20 16:30:45 +02:00
Alec Rippberger
3a31eb2f10
PM-9665: implement view item view (#10416)
* Add initial view cipher dialog.

* Add working view cipher modal dialog markup.

* Cleanup dialog markup and allow edit from dialog.

* Cleanup unused imports.

* Begin adding org-vault view-cipher functionality.

* Refactor to remove loose-components usage and use DialogService.

* Add edit and delete button functionality.

* Add delete functionality.

* Remove addition to loose components.

* Remove unused modal-dialog artifacts.

* Ensure dialog closes and URL updates properly on edit or close.

* Disable edit/delete buttons instead of hiding them.

* Add simple tests for view.component.ts.

* Adjust import order.

* Remove now unnecessary ng-template.

* Decrypt cipher to cipher view.

* Add cleanup function and additional delete test.

* Remove boolean return from delete promise.

* Remove fake timers.

* Remove unnecessary TestBed.inject calls.

* Add code comments.

* Hide new view cipher dialog behind feature flag.

* Keep "else if" statement intact.

* Simplify getting cipherTypeString.

* Add comments to vault.component.ts files.

* Change button type to "danger"

Update apps/web/src/app/vault/individual-vault/view.component.html

Co-authored-by: Nick Krantz <125900171+nick-livefront@users.noreply.github.com>

* Add a11y title to delete button.

* Simplify OrganizationService testing.

* Update comment to better reflect function.

* Use large dialog to better match designs.

* Add aria-haspopup to cipher row button.

* Add deleteCipher to messages.json.

* Remove extra argument from canEditAllCiphers.

* Use 'delete' instead of 'delete cipher' for a11y title.

* Remove 'bitFormButton' from non-form buttons.

* Rework view cipher view delete functionality.

* Add translations for cipher types.

* Remove unecesarry test.

* Add additional test coverage to ensure dialogs close.

* Add back delete functionality in view.component.ts.

* Update "secure note" to "note".

---------

Co-authored-by: Nick Krantz <125900171+nick-livefront@users.noreply.github.com>
2024-08-19 14:32:17 -07:00
github-actions[bot]
e3d9804b5f
Autosync the updated translations (#10536)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-08-19 10:40:07 +00:00
Jordan Aasen
ef281099b8
migrate report-layout component (#10545) 2024-08-19 12:30:46 +02:00
Oscar Hinton
604e22334a
[BEEEP] [PM-10132] Upgrade storybook to v8 (#10288)
Upgrade storybook to version v8 which is a major upgrade. Storybook provides an
upgrade wizard which did most of the work.

- Ran npx storybook upgrade.
- Manually updated `remark-gfm` since the newer mdx requires v 4.
- Migrated all old stories still using `Story` to `StoryObj`.
2024-08-16 09:28:29 +02:00
Jordan Aasen
92f87dad9a
[PM-4962] remove all bootstrap classes from reports. add missing header column (#10524)
* remove all bootstrap classes from reports. add missing header column

* finish migrating table components to component library

* update reports based on PR feedback
2024-08-15 17:16:38 -07:00
Jordan Aasen
199ac3de45
[PM-10045] - SendCreated page (#10331)
* WIP - send created component

* WIP - send created page

* finalize send created component and specs

* add extra padding

* undo browser extension refresh

* fix tests

* fix error
2024-08-15 07:59:00 -07:00
Jordan Aasen
6fd184728f
add missing header to exposed passwords report (#10516) 2024-08-14 12:53:30 -07:00
Kyle Spearrin
5547b953ad
[AC-2928] Create automatic app login policy (#10295)
* Create automatic app login policy

* update copy

* update copy

* [PM-10155] Automatic Login After Autofill (#10297)

---------

Co-authored-by: Cesar Gonzalez <cesar.a.gonzalezcs@gmail.com>
2024-08-14 09:38:33 -05:00
Shane Melton
1b22320dc5
[AC-1041] My Vault filter on first login fix (#10301)
* [AC-1041] Ensure organizationTree$ updates whenever the policy observables emit

* [AC-1041] Ensure enforcePersonalOwnership updates whenever the policy observable emits

* [AC-1041] Do not attempt to pre-select null filter values or read-only collections
2024-08-13 10:32:02 -07:00
Shane Melton
fe9d44af6d
[PM-10721] Autofill section styles fixes (#10454)
* [PM-10721] Remove autofill section title hyphen

* [PM-10721] Use h6 styling for header

* [PM-10721] Fix spacing for match detection select
2024-08-13 10:16:53 -07:00
Shane Melton
f017edb088
[PM-10651] Use bitLink instead of icon button and add a11y title (#10483) 2024-08-13 10:15:14 -07:00
Shane Melton
7ad42ae18b
[PM-9190] Browser Refresh - Autofill section fixes (#10488)
* [PM-10751] Add count to website URI label

* [PM-10752] Hide autofill on page load field when the setting is disabled

* [PM-10790] Fix bottom margin
2024-08-13 08:58:16 -07:00
Vincent Salucci
471dd3bd7b
[PM-10294] Remove FC v1 from Clients (#10422)
* chore: remove fc v1 from org.canEditAnyCollection and update callers, refs PM-10294

* chore: remove fc v1 from collectionView.canEdit and update callers, refs PM-10294

* chore: remove fc v1 from organization.canEditAllCiphers and update callers, refs PM-10294

* chore: remove fc v1 from canDeleteAnyCollection, collection views, update callers, refs PM-10294

* chore: remove fc v1 from canEditUser/GroupAccess, refs PM-10294

* chore: remove fc v1 from canViewCollectionInfo, refs PM-10294

* chore: remove fc v1 from account component, refs PM-10294

* fix: remove fc v1 from collections component, refs PM-10294

* fix: update vault-items component, refs PM-10294

* fix: remove fc v1 from collection-dialog and collections components, refs PM-10294

* chore: remove ConfigService from group-add-edit and account components, refs PM-10294

* chore: change canEditAnyCollection to getter and update callers, refs PM-10294

* chore: change canEditUnmanagedCollections to getter and update callers, refs PM-10294

* chore: change canDeleteAnyCollection to getter and update callers, refs PM-10294

* chore: remove deprecated observable and update comments with v1, refs PM-10294

* chore: remove ununsed ConfigService from collection-dialog component, refs PM-10294

* chore: remove final fc v1 ref for vault-collection-row, refs PM-10294
2024-08-13 10:45:41 -05:00
cyprain-okeke
cdc82f13b0
Resolve the seat adjustment issue (#10265) 2024-08-13 12:36:40 +01:00
Justin Baur
a7adf952db
[PM-10754] Store DeviceKey In Backup Storage Location (#10469)
* Implement Backup Storage Location For Browser Disk

* Remove Testing Change

* Remove Comment

* Add Comment For `disk-backup-local-storage`

* Require Matching `valuesRequireDeserialization` values
2024-08-12 13:29:22 -04:00
cyprain-okeke
cd7aaacfd9
[PM-10026] [Defect] Zip code is not being enforced when subscribing in Password Manager (#10446)
* resolve the postal code error

* Resolve the issue if licence is uploaded

* resolve the postal code issue on selfhost
2024-08-12 16:01:19 +01:00
github-actions[bot]
5932c981d2
Autosync the updated translations (#10462)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-08-12 10:03:32 +00:00
Alec Rippberger
2b69ccda40
[PM-8655] Update web app new item button (#10354)
* Add additional extension refresh menu behind feature flag.

* Open new cipher dialog with proper cipher type selected.

* Adjust onboarding copy and default to login cipher.

* Update "New item" button styles.

* Add test to ensure onboarding component always calls onAddCipher.emit with the login cipher type.

* Hide onboarding and new item changes behind feature flag

* Fix missing mock in test.

* Remove extensionRefreshEnabled$ and conditional styles from the "add new" button.

* Remove rounding class from menu "new" button.
2024-08-08 23:45:47 -05:00
Cesar Gonzalez
d2c4c4cad4
[PM-10723] Remove autocomplete="new-password" attribute from 2fa based code inputs (#10448)
* [PM-10723] Remove autocomplete="new-password" attribute from 2fa based code inputs

* [PM-10723] Remove autocomplete="new-password" attribute from 2fa based code inputs
2024-08-08 13:04:28 -05:00
Shane Melton
600c8de129
[PM-10100] Remove auto password generation (#10355)
* [PM-10100] Remove initial password generation on new Login ciphers

* [PM-10100] Update password help text

* [PM-10100] Fix linter
2024-08-07 12:57:05 -07:00
Jordan Aasen
af14c3fe6d
[PM-9854] - Send Search Component (#10278)
* send list items container

* update send list items container

* finalize send list container

* remove unecessary file

* undo change to config

* prefer use of takeUntilDestroyed

* add send items service

* and send list filters and service

* undo changes to jest config

* add specs for send list filters

* Revert "Merge branch 'PM-9853' into PM-9852"

This reverts commit 9f65ded13f, reversing
changes made to 63f95600e8.

* add send items service

* Revert "Revert "Merge branch 'PM-9853' into PM-9852""

This reverts commit 81e9860c25.

* finish send search

* fix formControlName

* add specs

* finalize send search

* layout and copy fixes

* cleanup

* Remove unneeded empty file

* Remove the erroneous addition of send-list-filters to vault-export tsconfig

* update tests

* hide send list filters for non-premium users

* fix and add specss

* Fix small typo

* Re-add missing tests

* Remove unused NgZone

* Rename selector for send-search

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com>
2024-08-07 14:34:03 +02:00
Justin Baur
dcb21c2685
Move lastSync State (#10272) 2024-08-06 15:01:42 -04:00
✨ Audrey ✨
4a5a0ca537
[PM-10104] add generator password type policy (#10275)
* add generator password type policy
* limit options display to only valid options when override in effect
* remove defaultType i18n message
2024-08-06 11:49:27 -04:00
Bernd Schoolmann
2ce8500391
[PM-990] Unix biometrics unlock via Polkit (#4586)
* Update unix biometrics for desktop biometrics rework

* Implement polkit policy setup

* Enable browser integration on Linux

* Remove polkit policy file

* Undo change to messages.json

* Fix biometrics setup, implement missing functions

* Implement osSupportsBiometrics

* Fix polkit settings message

* Remove unwraps in biometrics unix rust module

* Force password reprompt on start on linux with biometrics

* Merge branch 'main' into feature/unix-biometrics

* Allow browser extension to be unlocked on Linux via Polkit

* Implement availability check

* Cleanup

* Add auto-setup, manual setup, setup detection and change localized prompts

* Implement missing methods

* Add i18n to polkit message

* Implement missing method

* Small cleanup

* Update polkit consent message

* Fix unlock and print errors on failed biometrics

* Add dependencies to core crate

* Fix reference and update polkit policy

* Remove async-trait

* Add tsdoc

* Add comment about auto setup

* Delete unused init

* Update help link

* Remove additional settings for polkit

* Add availability-check to passwords implementation on linux

* Add availability test

* Add availability check to libsecret

* Expose availability check in napi crate

* Update d.ts

* Update osSupportsBiometric check to detect libsecret presence

* Improve secret service detection

* Add client half to Linux biometrics

* Fix windows build

* Remove unencrypted key handling for biometric key

* Move rng to rust, align linux bio implementation with windows

* Consolidate elevated commands into one

* Disable snap support in linux biometrics

---------

Co-authored-by: DigitallyRefined <129616584+DigitallyRefined@users.noreply.github.com>
2024-08-06 11:04:17 -04:00
Alex Morask
2c5c96094c
Make client owner email required when creating client org (#10403) 2024-08-05 14:42:50 -04:00
Oscar Hinton
c50a9063bc
[PM-2340] Enable use-lifecycle-interface (#5488)
Enables one of the recommended rules of @angular-eslint. Since this rule was fairly trivial to fix and has no QA effects it seemed reasonable to migrate all code.
2024-08-02 13:59:38 -04:00
Bernd Schoolmann
cc45655b86
Revert "[PM-6296] Fix biometrics error prompt when biometrics are temporarily…" (#10373)
This reverts commit 1184c504d1.
2024-08-02 07:46:54 -04:00
Bernd Schoolmann
1184c504d1
[PM-6296] Fix biometrics error prompt when biometrics are temporarily unavailable in browser extension (#9851)
* Add availability check to biometrics

* Move isbiometricunlockavailable logic to parent component

* Fix availability detection on desktop

* FIx response parsing on browser

* Suppress pending biometric message while checking for availability

* Refactor biometrics functions out of platformutilsservice

* Remove unused constructor

* Remove unused abstract function definitions

* Rename abstract services

* Add documentation

* Rename service abstraction, add comments

* Add comments

* Refactor browser biometrics into background/foreground and remove callbacks

* Remove unused logs

* Remove unused logs
2024-08-02 12:31:11 +02:00
github-actions[bot]
b6aadaa255
Autosync the updated translations (#10370)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-08-02 06:45:25 +00:00
Bernd Schoolmann
c6229abd12
[PM-5963] Fix tde offboarding vault corruption (#9480)
* Fix tde offboarding

* Add tde offboarding password request

* Add event for tde offboarding

* Update libs/auth/src/common/models/domain/user-decryption-options.ts

Co-authored-by: Jake Fink <jfink@bitwarden.com>

* Update libs/common/src/services/api.service.ts

Co-authored-by: Jake Fink <jfink@bitwarden.com>

* Make tde offboarding take priority

* Update tde offboarding message

* Fix unit tests

* Fix unit tests

* Fix typo

* Fix unit tests

---------

Co-authored-by: Jake Fink <jfink@bitwarden.com>
2024-08-01 19:48:09 -04:00
Shane Melton
0d76835cd8
[PM-9190] Edit Login - Autofill Options (#10274)
* [PM-8524] Update appA11yTitle to keep attributes in sync after first render

* [PM-8524] Introduce UriOptionComponent

* [PM-9190] Introduce AutofillOptionsComponent

* [PM-9190] Add AutofillOptions to LoginDetailsSection

* [PM-9190] Add autofill options component unit tests

* [PM-9190] Add UriOptionComponent unit tests

* [PM-9190] Add missing translations

* [PM-9190] Add autofill on page load field

* [PM-9190] Ensure updatedCipherView is completely separate from originalCipherView

* [CL-348] Do not override items if there are no OptionComponents available

* [PM-9190] Mock AutoFillOptions component in Login Details tests

* [PM-9190] Cleanup storybook and missing web translations

* [PM-9190] Ensure storybook decryptCipher returns a separate object
2024-08-01 08:35:04 -07:00
cyprain-okeke
5dbdb33ac5
Resolve the camelCase comments (#10340) 2024-08-01 14:24:15 +01:00
Rui Tomé
766c2f4b9c
[PM-8290] Refresh vault after saving item collections (#10053) 2024-07-31 15:27:20 +01:00
cyprain-okeke
6896ef2392
[AC-2708] Upgrading from a password manager only subscription (#10320)
* Add changes for the upgrade dialog

* Resolve the  free org to any org type besides Families

* Resolve the pr comments on navigation

* resolve family plan upgrade from free
2024-07-30 16:01:28 +01:00
Nick Krantz
8f437dc773
[PM-1655] Trial Registration Layout (#9091)
* add messaging for finish sign up component

* Add product enum for finish sign up components

* Allow confirmation details component to display secret manager confirmation

* add FinishSignUp component

- Started as exact copy of trial initiation component
- Consolidated with secrets manager trial components

* Integration finish sign up component into routing

- Use anon layout component
- Add resolver to pass the accurate title to the layout

* migrate to product tier type

* use existing ProductType enum

* migrate to accept org service

* fix query param parsing for free trial text

* migrate finish sign up to complete trial naming

* migrate fully to productTier

* fix import of free trial resolver

* increase max width of anon layout

* add auth-input component

* refactor component makeup

* export the users password if needed to auto login the user

* handle login situations where a stepper isn't used

* fix type check

* allow max width of anon layout to be configurable

* remove account created toast

* update productTier query param in text resolver

* set maxWidth for secrets manager trial route

* parse product query param as an int

* properly show registration error

* update routes to be from the root rather than relative

* install updated prettier and apply fixes

* fix missing password in test

---------

Co-authored-by: Conner Turnbull <133619638+cturnbull-bitwarden@users.noreply.github.com>
2024-07-30 08:11:40 -04:00
Oscar Hinton
339768947b
[PM-8771] Migrate the 404 page to Tailwind (#10116)
Redesign our 404 page and update to use Tailwind components.
2024-07-30 12:25:24 +02:00
github-actions[bot]
beb5a65cda
Autosync the updated translations (#10314)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-07-29 12:33:00 +00:00
github-actions[bot]
518310e0f1
Autosync the updated translations (#10282)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-07-26 10:39:23 +00:00
Thomas Rittson
c5c8c45bab
[AC-2924] Remove GroupsComponentRefactor flag (#10259)
* Remove feature flag and old component
2024-07-26 07:46:11 +10:00
Bernd Schoolmann
ad26f0890a
[PM-4348] Migrate AuthGuards to functions (#9595)
* Migrate auth guards

* Fix remaining auth guard migration

* Fix unauth guard usage

* Add unit tests for auth guard and unauth guard

* Remove unused angular DI code

* Move auth related logic out fo sm guard

* Add tests

* Add more tests for unauth guard

* Fix incorrect merge
2024-07-25 17:00:29 -04:00
Jordan Aasen
0bf0d1ac96
[PM-9853] - Add SendListItemsContainer component (#10193)
* send list items container

* update send list items container

* finalize send list container

* remove unecessary file

* undo change to config

* prefer use of takeUntilDestroyed

* add specss
2024-07-25 21:39:20 +02:00
Thomas Rittson
6830e471bb
Remove unused i18n strings (#10220) 2024-07-25 14:02:42 -04:00
Ike
b3f7bad4b2
added feature flag, and services for tokenable when adding Authenticator two factor; (#10261) 2024-07-25 08:13:57 -07:00
renovate[bot]
b9eb4003a1
[deps] Autofill: Update prettier to v3.3.3 (#10228)
* [deps] Autofill: Update prettier to v3.3.3

* prettier formatting changes

* fix SyntaxError for literal @ inline html

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jonathan Prusik <jprusik@classynemesis.com>
2024-07-25 11:11:55 -04:00
cd-bitwarden
5180ec44e0
Creating a landing page for SM, where user can request access from ad… (#9504)
* Creating a landing page for SM, where user can request access from admins

* moving files to better folder, also fixing UI

* updating file paths

* cleaning up the code

* Updating API request to be the new one, and fixing HTML

* Adding coowners

* Updating OrganizaitonId in the request model to be a Guid

* Update apps/web/src/app/secrets-manager/secrets-manager-landing/request-sm-access.component.ts

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

* Update apps/web/src/app/layouts/product-switcher/navigation-switcher/navigation-switcher.component.ts

Co-authored-by: Maciej Zieniuk <167752252+mzieniukbw@users.noreply.github.com>

* Update apps/web/src/app/layouts/product-switcher/navigation-switcher/navigation-switcher.component.ts

Co-authored-by: Maciej Zieniuk <167752252+mzieniukbw@users.noreply.github.com>

* Suggested changes from Maceij and Thomas

* fixing merge issues

* fixing issues

* Fixing logic to match top bar

* updating file name to not start with a capital letter

* renaming folder

* updating names

* Getting around the lint issue

* fixing lint issues

* Changes requested by Vicky

* Maciej suggested changes

* Fixing comments

* Update apps/web/src/app/secrets-manager/secrets-manager-landing/sm-landing-api.service.ts

Thomas's suggested improvement

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

* ui fixes

* New awesome changes, to include the scenario where a Provider user is logged in, and to handle if an admin needs instructions to enable SM for themselves

* renaming fuctions and variables

---------

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>
Co-authored-by: Maciej Zieniuk <167752252+mzieniukbw@users.noreply.github.com>
2024-07-25 11:03:57 -04:00
rr-bw
9355a9bb43
[PM-7330] Create SetPasswordComponent (email verification) (#9810)
* setup SetPassword component

* accept query params

* add InputPasswordComponent to template

* add route

* add dynamic translation with org name

* feature flag route

* setup onInit

* add set password logic

* move to libs

* remove comments

* update AuthGuard routing

* use ToastService

* replace deprecated methods

* replace orgId input with policy input

* use getter for msg instead of ngOnInit

* cleanup

* refactor to use services

* more refactoring of service

* address browser routing and translations

* add desktop service

* simplify queryParam handler

* remove ngOnDestroy

* small edits

* use inject()

* add jsdocs

* create basic tests

* add success toasts on successfuly set password

* add tests

* update feature-flag

* move model to service

* refactor client services to override setPassword()

* add error handling to setPassword()

* move auto enroll logic to service

* update tests

* fix test

* adjust padding on password-callout list

* revert refactor of auto enroll logic

* refactor keyPair generation to own method

* update page title and button text

* update pageSubtitle and translations

* fix test
2024-07-25 07:42:32 -07:00
Nick Krantz
61713e5fe4
[PM-9951] Assignment Collections copy (part 2) (#10244)
* add back disc bullet for assignment collections

* add singular and plural versions of bulk collection assignment description
2024-07-24 13:28:33 -05:00
Jordan Aasen
fc55082148
[PM-8386] - Add section header to import page (#10153)
* first pass section header in import data component

* change layout

* fix desktop bg

* revert chnage to default config

* update translation key

* revert change to background color
2024-07-24 07:27:28 -07:00
Alex Morask
768b5393e9
Null check provider in organization management check (#10233) 2024-07-24 10:13:03 -04:00
aj-rosado
9a6b37d019
Restructued is-enterprise-org.guard to be a function. (#10134)
Added test cases for IsEnterpriseOrgGuard

Co-authored-by: Tom <ttalty@bitwarden.com>
Co-authored-by: Tom <144813356+ttalty@users.noreply.github.com>
2024-07-24 11:08:33 +02:00
Nick Krantz
3093566f01
[PM-9951] Assign to Collection copy (#10205)
* refactor "Assign collections" to "Assign to collections"

* show singular or plural version of collection assignment success message

* update singular and plural warning text

* refactor switch to be an `if`
2024-07-23 21:21:39 -05:00
SmithThe4th
91aa475766
[PM-6992] Refactor VaultComponent (#10126)
* Added function to return cipherview observable and trigger the decryption process if the cipherviews$ observable returns empty

* Updated the vault component to use getCipherViews$ observable function

* converted vault banner to standalone component

* converted vault header to standalone component

* fixed unawaited promises

converted component to standalone component

* cleaned up vault module

* fixed imports

* refactored getCipherView$ observable

* refactored onVaultItemsEvent to switch case

* Refactored to use toast service instead of platform utils service for toast

* Added function to return cipherview observable and trigger the decryption process if the cipherviews$ observable returns empty

* Updated the vault component to use getCipherViews$ observable function

* converted vault banner to standalone component

* converted vault header to standalone component

* fixed unawaited promises

converted component to standalone component

* cleaned up vault module

* fixed imports

* refactored getCipherView$ observable

* refactored onVaultItemsEvent to switch case

* Refactored to use toast service instead of platform utils service for toast

* merged with main and fixed conflicts

* reordered standalone property

* converted components to standalone

* cleaned up ng module for org vault

* cleaned up vault module individual vault

* fixed conflicts

* Replaced deprecated toast service

* refactored to use switch case for org vault

* fixed comments and fixed failing tests

reverted to use getAllDecrypted
2024-07-23 16:47:54 -04:00
aj-rosado
2ea2045686
Added option to through queryParams pre select the desired upgrade option on the subscription page (#10145) 2024-07-23 13:56:21 +02:00
Jordan Aasen
b2d4d1bec2
[PM-4963] Migrate breach report components (#10045)
* WIP - migrate exposed passwords report components

* lint fix

* migrate components in reports

* migrate breach and unsecured websites reports

* undo change routing

* revert changes to reports

* revert changes

* migrate breach report component

* update form

* revert back to text input

* revert change to logic

* layout fixes

* add spec

* fix typo

* undo changes to exposed passowords report

* fix test

---------

Co-authored-by: jordan-bite <jordan@bite-interactive.com>
2024-07-19 17:23:02 -07:00
Tom
087440989e
Fixing the test for unsecured reports (#10185) 2024-07-19 11:27:23 -04:00
Bernd Schoolmann
05e8b45edb
[PM-7084] 6/6: Introduce shared duo two-factor component (#9772)
* Add shared duo component

* Fix duo import

* Fix wrong i18n service DI in duo desktop component

* Remove duo v2

* Add override to functions

* Remove web duo implementation

* Update apps/browser/src/auth/popup/two-factor-auth-duo.component.ts

Co-authored-by: Ike <137194738+ike-kottlowski@users.noreply.github.com>

* Update apps/desktop/src/auth/two-factor-auth-duo.component.ts

Co-authored-by: Ike <137194738+ike-kottlowski@users.noreply.github.com>

* Update libs/angular/src/auth/components/two-factor-auth/two-factor-auth-duo.component.ts

Co-authored-by: Ike <137194738+ike-kottlowski@users.noreply.github.com>

* Fix missing service on duo components

* Fix missing service on base duo auth component

* Fix constructor super calls in duo auth component

* Fix duo auth components incorrectly extending base class

---------

Co-authored-by: Ike <137194738+ike-kottlowski@users.noreply.github.com>
2024-07-19 16:29:24 +02:00
Tom
bc1ee0a169
Modifying the unsecured reports to check for proper permissions (#10038) 2024-07-19 09:18:30 -04:00
github-actions[bot]
1cdc701328
Autosync the updated translations (#10177)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-07-19 11:14:22 +00:00
SmithThe4th
c27657eb82
[PM-8050] Deleting one folder deletes all other folders (#10165)
* removed the use of deletepromise from folder edit dialog on web

* resolved fix me

* return folders if folder is not found with folder id
2024-07-18 18:28:25 -04:00
Jared Snider
56f5dba444
Auth/PM-6198 - Registration with Email Verification - Call email clicked endpoint (#10139)
* PM-6198 - Majority of client work done; WIP on registration finish comp

* PM-6198 - Registration Finish - Add registerVerificationEmailClicked logic

* PM-6198 - RegistrationLinkExpired component; added translations on other clients just in case we use the component on other clients in the future.

* PM-6198 - Clean up comment
2024-07-18 17:37:22 -04:00
Jared Snider
8be11b174c
Registration start - update copy per product request. (#10169) 2024-07-18 17:10:32 -04:00
Jordan Aasen
9dd80c92c8
[PM-4968] Migrate unsecured websites report components (#10046)
* WIP - migrate exposed passwords report components

* lint fix

* migrate components in reports

* migrate breach and unsecured websites reports

* undo change routing

* revert changes to reports

* revert changes

* migrate unsecured websites report component

* fix icon and padding in unsecured websites report

* undo changes to exposed passwords report

---------

Co-authored-by: jordan-bite <jordan@bite-interactive.com>
2024-07-18 23:04:50 +02:00
Shane Melton
f75c1ab02d
[PM-8524] Cipher Form - Edit Login Details Section (#10081)
* [PM-8524] Introduce login details section component

* [PM-8524] Add ability to remove passkey

* [PM-8524] Introduce TotpCaptureService and the Browser implementation

* [PM-8524] Tweak storybook

* [PM-8524] Add note regarding existing login view references

* [PM-8524] Fix clone mode so that a new cipher is created

* [PM-8524] Add support for generating usernames/passwords and auditing passwords

* [PM-8524] Migrate password/username generation to CipherFormGenerationService

* [PM-8524] Add optional passwordInput to BitPasswordInputToggle to support conditionally rendered password toggle buttons

* [PM-8524] Add LoginDetailsSection tests

* [PM-8524] Add BrowserTotpCaptureService tests

* Revert "[PM-8524] Add optional passwordInput to BitPasswordInputToggle to support conditionally rendered password toggle buttons"

This reverts commit e76a0ccfe8.

* [PM-8524] Add null check to password input toggle
2024-07-18 09:38:55 -07:00
Nick Krantz
9bfd838da6
[PM-8381] Assign collections (#9854)
* initial add of assign collections component

* grab cipherId from query params

* add organization selection for moving a cipher

* add multi-select for collections

* add transfer of cipher to an organization

* temp: do not show assign collections while a cipher already has an organization

* account for initial collections for a cipher

* block assign-collections route with feature flag

* replace hardcoded string with i18n

* separate out async calls to switchMap to avoid async subscribe

* use local cipher rather than decrypting again

* use anchor for better semantics

* migrate form submission to bitSubmit directive

* swap to "assign" rather than "save"

* integrate with base AssignCollections component

* clean up messages file

* remove unneeded takeUntilDestroyed

* remove unneeded bitFormButton

* remove unused translations

* lint fix

* refactor assign-collections component to take in a button reference

- This allows consuming components to not have to worry about loading/disabled states
- The base AssignCollections component will change the submit button when supplied
2024-07-18 08:53:53 -05:00
Bernd Schoolmann
84b719d797
[PM-4154] Introduce Bulk Encrypt Service for Faster Unlock Times (#6465)
* Implement multi-worker encryption service

* Fix feature flag being flipped and check for empty input earlier

* Add tests

* Small cleanup

* Remove restricted import

* Rename feature flag

* Refactor to BulkEncryptService

* Rename feature flag

* Fix cipher service spec

* Implement browser bulk encryption service

* Un-deprecate browserbulkencryptservice

* Load browser bulk encrypt service on feature flag asynchronously

* Fix bulk encryption service factories

* Deprecate BrowserMultithreadEncryptServiceImplementation

* Copy tests for browser-bulk-encrypt-service-implementation from browser-multithread-encrypt-service-implementation

* Make sure desktop uses non-bulk fallback during feature rollout

* Rename FallbackBulkEncryptService and fix service dependency issue

* Disable bulk encrypt service on mv3

* Change condition order to avoid expensive api call

* Set default hardware concurrency to 1 if not available

* Make getdecrypteditemfromworker private

* Fix cli build

* Add check for key being null
2024-07-18 08:56:22 -04:00
Addison Beck
9b50e5c496
Disable a button during page load (#10148)
The people screen has a button that can be clicked to open a modal for
inviting new users to an organization. This modal depends on data from
the people list for conditional logic, like whether or not the seat count
cor the organization has been reached. If the modal is opened before the
people list loads these conditions can not process correctly, causing
bugs.

This commit disabled the button until the people list loads to prevent
this kind of behavior.
2024-07-18 10:17:53 +01:00
Alex Morask
e27d698d4b
[AC-2860] Revise unassigned and purchased seat warning for CB (#10077)
* Rework create-client-dialog seat warning

* Rework manage-client-subscription-dialog seat warning

* Fix create client purchased seats label

* Fix manage client subscription purchased seats label logic

* Another manage subscription purchased seats fix
2024-07-17 10:12:40 -04:00
Bernd Schoolmann
a1c5cc6dbf
Fix key rotation being broken due to master key validation (#10135) 2024-07-17 14:13:03 +02:00
Bernd Schoolmann
69a37a884f
Add shared webauthn component (#9771) 2024-07-16 10:46:37 -04:00
Oscar Hinton
d852a5ff07
[PM-97089] [Bootstrap] Convert remaining sr-only to tw-sr-only (#10094)
We're still using sr-only in multiple places. This is a bootstrap utility class and needs to be migrated to tw-sr-only.
2024-07-16 11:59:04 +01:00
Oscar Hinton
bc7c6dd04e
[PM-9710] [Bootstrap] Hide file inputs when not using bootstrap (#10095)
When removing boostrap it seems the hidden attribute to the file inputs stops working. This implements a "quick" fix by just adding the tw-hidden class.
2024-07-15 13:09:25 -05:00
Ike
d2685e1bc5
[PM-9618] Show toast when AuthUrl is null (#10108)
* Added toast message if AuthUrl is null

* added toast to desktop and browser

* fixed tests
2024-07-15 09:04:15 -07:00
Alex Morask
e7b50e790a
[AC-2828] Add provider portal members page behind FF (#9949)
* Add provider portal members page behind a FF

* Fix reinvite issue

* Import scrolling module

* Add deprecations to old classes

* Move members.component init to constructor

* Rename new-base.people.component to base.members.component

* Hide bulk reinvite when no users can be re-invited on AC members page

* Rename events() to openEventsDialog()

* Fix return type for members component getUsers()

* Make table headers sortable

* Extract row height class to ts file

* Convert open methods to static methods for bulk dialogs

* Rename and refactor member-dialog.component

* Prevent event emission for searchControl and set filter in members component constructor

* use featureFlaggedRoute rather than using FF in components

* Add BaseBulkConfirmComponent for use in both web and bit-web

* Add BaseBulkRemoveComponent for use in both web and bit-web

* Thomas' feedback on base confirm/remove

* Remaining feedback
2024-07-15 11:56:11 -04:00
Jordan Aasen
4edbd65faf
[PM-3197] "Pay with PayPal" button moves on screen after loading (#10083)
* hide duplicate iframe

* add comment

* Moved braintree styling to plugins.scss

* Moved next to other braintree-sheet

---------

Co-authored-by: Conner Turnbull <cturnbull@bitwarden.com>
2024-07-15 11:47:30 -04:00
Bernd Schoolmann
5a46c7d5cc
[PM-7084] 4/6: Introduce shared email two-factor component (#9770)
* Add shared email two-factor component

* Update apps/browser/src/auth/popup/two-factor-auth-email.component.ts

Co-authored-by: Jake Fink <jfink@bitwarden.com>

---------

Co-authored-by: Jake Fink <jfink@bitwarden.com>
2024-07-15 09:59:39 -04:00
github-actions[bot]
a1667e5603
Autosync the updated translations (#10118)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-07-15 11:00:21 +00:00
Jordan Aasen
fb311bfb4b
[PM-4964] migrate exposed passwords report components (#9952)
* WIP - migrate exposed passwords report components

* lint fix

* migrate components in reports

* migrate breach and unsecured websites reports

* undo change routing

* revert changes to reports

* revert changes

* fix icon and padding in exposed passwords report

* fix icon and padding in exposed passwords report

* fix exposed passwords report cipher state

* [PM-4965] Migrate inactive two factor report (#10043)

* migrate inactive two factor report

* fix icon and padding in inactive two factor report

* [PM-4967] Migrate reused passwords report components (#10044)

* migrate components in reused passwords report

* fix icon and padding in reused passwords report

* [PM-4969] Migrate weak passwords report components (#10048)

* migrate weak passwords report component

* migrate weak passwords report component

* Revert "migrate weak passwords report component"

This reverts commit 0e453aafc1.

* Revert "migrate weak passwords report component"

This reverts commit e8e9b01997.

* Revert "Revert "migrate weak passwords report component""

This reverts commit 8cd2421cb0.

* fix padding and icon size in weak passwords report

---------

Co-authored-by: jordan-bite <jordan@bite-interactive.com>
2024-07-15 12:26:11 +02:00
cyprain-okeke
410d1c6394
Fix the zip core error on trial initiation (#10100) 2024-07-13 07:19:46 +01:00
Oscar Hinton
06cf849b18
[PM-9707] [Boostrap] Fix avatar and customize placement (#10093)
The Avatar customize button appeared below the avatar after removing Boostrap. This resolves it by adding flex, it also has the added benefit of aligning the button vertically as it's currently slightly misaligned.
2024-07-12 15:48:59 -07:00
SmithThe4th
7588e06d2b
fix blank titles on menu options button (#10099) 2024-07-12 12:16:54 -04:00
Vincent Salucci
bce6e77514
[AC-2520] Remove Unassigned Items Banner (#10042)
* chore: remove UnassignedItemsBanner feature flag, refs AC-2520

* chore: remove unassignedItemsBanner from web-header component, refs AC-2520

* chore: delete unassigned items banner service/api/spec, refs AC-2520

* chore: remove unassigned items banner messages (web), refs AC-2520

* chore: remove unassigned items banner messages (browser), refs AC-2520

* chore: remove unassigned items banner code from current tab (browser), refs AC-2520

* chore: remove state definition for unassigned items banner, refs AC-2520

* chore: revert state-definition removal, refs AC-2520
2024-07-12 11:06:02 -05:00
github-actions[bot]
8e0e6fdaff
Autosync the updated translations (#10088)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-07-12 11:07:34 +00:00
SmithThe4th
050f8f4bdc
[PM-7624] [PM-7625] Bulk management actions on individual vault (#9507)
* fixed issue with clearing search index state

* clear user index before account is totally cleaned up

* added logout clear on option

* removed redundant clear index from logout

* added feature flag

* added new menu drop down and put behind feature flag

* added permanentlyDeleteSelected to the menu

* added permanentlyDeleteSelected to the menu

* wired up logic to show to hide menu drop down items

* modified the bulk collection assignment to work with end user vault

* wired up delete and move to folder

* merged bulk management actions header into old leveraging the feature flag

* added ability to move personal items to an organization and set active collection when user is on a collection

* made collection required by default

* handled organization cipher share when personal items and org items are selected

* moved logic to determine warning text to component class

* moved logic to determine warning text to component class

* Improved hide or show logic for menu

* added bullet point to bulk assignment dialog content

* changed description for move to folder

* Fixed issue were all collections are retrived instead of only can manage, and added logic to get collections associated with a cipher

* added inline assign to collections

* added logic to disable three dot to template

* Updated logic to retreive shared collection ids between ciphers

* Added logic to make attachment view only, show or hide

* Only show menu options when there are options available

* Comments cleanup

* update cipher row to disable menu instead of hide

* Put add to folder behind feature flag

* ensured old menu behaviour is shown when feature flag is turned off

* refactored code base on code review suggestions

* fixed bug with available collections

* Made assign to collections resuable

made pluralize a pipe instead

* Utilized the resuable assign to collections component on the web

* changed description message for collection assignment

* fixed bug with ExpressionChangedAfterItHasBeenCheckedError

* Added changedetectorref markForCheck

* removed redundant startwith as seed value has been added

* made code review suggestions

* fixed bug where assign to collections shows up in trash filter

* removed bitInput

* refactored based on code review comments

* added reference ticket

* [PM-9341] Cannot assign to collections when filtering by My Vault (#9862)

* Add checks for org id myvault

* made myvault id a constant

* show bulk move is set by individual vault and it is needed so assign to collections does not show up in trash filter (#9876)

* Fixed issue where selectedOrgId is null (#9879)

* Fix bug introduced with assigning items to a collection (#9897)

* [PM-9601] [PM-9602] When collection management setting is turned on view only collections and assign to collections menu option show up (#10047)

* Only show collections with edit access on individual vault

* remove unused arguments
2024-07-11 17:39:49 -04:00
Thomas Rittson
a723038b44
Remove OrganizationUserType.Manager (#10060) 2024-07-12 06:14:08 +10:00
Jake Fink
9c66b5bf9f
[PM-4917, PM-8707, PM-9119] Persist login email memory through 2fa on browser (#9811)
* persist email memory through 2fa on browser

* fix tests

* fix desktop
2024-07-11 14:51:06 -04:00
aj-bw
4f3760beae
PM-1935/vault-locked-message-fix (#10078) 2024-07-11 14:39:29 -04:00
cyprain-okeke
cc206d4c3f
[AC-1102]Automatic Sync is visible for self hosted Families Orgs (#9565)
* Add the changes to remove automasync for family org

* Remove changes to the form field file

* Rename productType to productTierType

* Add Upload license and License file

* Hide the License and upload License label

* Resolve the issue of Validation required for family org
2024-07-11 18:05:17 +01:00
Oscar Hinton
39eed02904
[PM-8517] Create web specific layout (#9209)
We currently duplicate some logic between our layouts. In an effort to streamline our experience I'm exploring if we can create a web specific layout that handles some of this.
2024-07-11 12:20:56 -04:00
aj-rosado
ea76760782
[AC-2508][AC-2511] member access report view and export logic (#10011)
* Added new report card and FeatureFlag for MemberAccessReport

* Add new "isEnterpriseOrgGuard"

* Add member access icon

* Show upgrade organization dialog for enterprise on member access report click

* verify member access featureflag on enterprise org guard

* add comment with TODO information for follow up task

* Initial member access report component

* Improved readability, removed path to wrong component and refactored buildReports to use the productType

* finished MemberAccessReport layout and added temporary service to provide mock data

* Moved member-access-report files to bitwarden_license/
Removed unnecessary files

* Added new tools path on bitwarden_license to the CODEOWNERS file

* added member access description to the messages.json

* layout changes to member access report

* Created new reports-routing under bitwarden_license
Moved member-access-report files to corresponding subfolder

* Added search logic

* Removed routing from member-access-report BL component on OSS.
Added member-access-report navigation to organizations-routing on BL

* removed unnecessary ng-container

* Added OrganizationPermissionsGuard and canAccessReports validation to member-access-report navigation

* replaced deprecated search code with searchControl

* Address PR feedback

* removed unnecessary canAccessReports method

* Added report-utils class with generic functions to support report operations

* Added member access report mock

* Added member access report specific logic

* Splitted code into different classes that explained their objective.

* fixed member access report service test cases

* Addressed PR feedback

* Creating a service to return the data for the member access report

* added missing ExportHelper on index.ts

* Corrected property names on member access report component view

* removed duplicated service
2024-07-11 17:11:05 +01:00
cyprain-okeke
a08cbf30d9
Resolve the error on license upload (#10057) 2024-07-11 16:18:48 +01:00
Bernd Schoolmann
9eddbfc6e7
[PM-7084]: 3/6 Introduce shared yubikey two-factor component (#9769)
* Add shared two-factor-options component

* Add new refactored two-factor-auth component and totp auth componnet behind feature flag

* Add yubico yubikey otp shared two-fa component
2024-07-11 10:28:55 -04:00
Conner Turnbull
36030c3763
[PM-9113] Trim Whitespace from email in sponsorship form (#9781)
* Removed whitespace from email form when setting up families sponsorship

* Moved sponsorship components to billing folder

* Updated to use existing input stripping directive

* Updated appInputStripSpaces to update both the element and the control value

* Removed the call to Renderer2 as it wasn't needed
2024-07-11 09:04:51 -04:00
Conner Turnbull
dbeab65ea5
When redeeming a F4E sponsorship, now filtering out organizations that the current user is not an owner of (#10013) 2024-07-10 16:16:50 -04:00
KiruthigaManivannan
3f0f5af26a
PM- 2060 Update Two Factor Yubikey dialog (#9010)
* PM-2060 Update Two Factor Yubikey Dialog

* PM-2060 Removed old code

* PM-2060 Added event emitter to capture enabled status

* PM-2060 Addressed review comments

* PM-2060 Change in html file for existing key options

* PM-2060 Addressed the latest comments

* PM-2060 Updated remove method as per comments

* PM-2060 Added throw error to enable and disbale in base component

* tailwind updates to yubikey two factor settings

* fixing imports

* remove disable dialog when keys are null to use the error toast

* PM-2060 Addressed the review comments and fixed conflicts

* Removed super.enable removed extra emitter from component class.

* fixing adding multiple keys in one session of a dialog.

* removed thrown error

---------

Co-authored-by: Ike Kottlowski <ikottlowski@bitwarden.com>
Co-authored-by: Ike <137194738+ike-kottlowski@users.noreply.github.com>
2024-07-10 10:56:52 -07:00
Conner Turnbull
e4c7efba12
Resolved circular dependency with UpdateLicenseDialogResult enum (#10056) 2024-07-10 13:34:51 -04:00
KiruthigaManivannan
f446c3b454
PM-8545 Defect Upload License Dialog should close after file upload (#9871)
* PM-8545 Defect Upload License Dialog should close after file upload

* Resolve the validation message issue (#10033)

---------

Co-authored-by: cyprain-okeke <108260115+cyprain-okeke@users.noreply.github.com>
2024-07-10 15:40:18 +01:00
Bernd Schoolmann
3d5c0a9b97
Set loading indicator on automatic sso flow (#10028) 2024-07-10 15:57:02 +02:00
Oscar Hinton
7dfef8991c
[PM-1935] Migrate vault lock screen to component library (#6237)
* Migrate vault lock screen to component library

* Remove unnecessary divs

* Remove card from trial

* Migrate to standalone component

* refactor to use AnonLayout

* revert login component

* migrate web component to bitSubmit

* remove class

* use inject

* update web pageTitle translation

* validate on submit, not on blur

---------

Co-authored-by: rr-bw <102181210+rr-bw@users.noreply.github.com>
2024-07-09 17:19:12 -07:00
Conner Turnbull
a87b5adb80
Added missing i18n key for "sponsored" (#10039) 2024-07-09 16:38:25 -04:00
aj-rosado
0e2c486a38
[AC-2509] add member access component (#9411)
* Added new report card and FeatureFlag for MemberAccessReport

* Add new "isEnterpriseOrgGuard"

* Add member access icon

* Show upgrade organization dialog for enterprise on member access report click

* verify member access featureflag on enterprise org guard

* add comment with TODO information for follow up task

* Initial member access report component

* Improved readability, removed path to wrong component and refactored buildReports to use the productType

* finished MemberAccessReport layout and added temporary service to provide mock data

* Moved member-access-report files to bitwarden_license/
Removed unnecessary files

* Added new tools path on bitwarden_license to the CODEOWNERS file

* added member access description to the messages.json

* layout changes to member access report

* Created new reports-routing under bitwarden_license
Moved member-access-report files to corresponding subfolder

* Added search logic

* Removed routing from member-access-report BL component on OSS.
Added member-access-report navigation to organizations-routing on BL

* removed unnecessary ng-container

* Added OrganizationPermissionsGuard and canAccessReports validation to member-access-report navigation

* replaced deprecated search code with searchControl

* Address PR feedback

* removed unnecessary canAccessReports method
2024-07-09 18:36:18 +01:00
Bernd Schoolmann
7e2b4d9652
[PM-7084] 2/6: Add shared two-factor-auth orchestrator component, and TOTP two-factor component (#9768)
* Add shared two-factor-options component

* Add new refactored two-factor-auth component and totp auth componnet behind feature flag

* Fix default value for twofactorcomponentrefactor featureflag
2024-07-09 16:19:04 +02:00
Thomas Rittson
f9b623b37c
Add AC Team eslint configuration (#9971) 2024-07-09 14:33:07 +01:00
Justin Baur
053e255a68
Delete Unused Bits of StateService (#9858)
* Delete Unused Bits of StateService

* Fix Tests
2024-07-08 20:38:10 -04:00
Ike
9b509cd329
[PM-8943] Update QRious script initialization in Authenticator two-factor provider (#9926)
* create onload() for qrious as well as error messaging if QR code cannot be displayed

* button and message updates and formpromise removal

* load QR script async

* rename and reorder methods
2024-07-08 14:48:19 -07:00
Jared Snider
226af09aac
Auth/PM-7321 - Registration with Email Verification - Registration Finish Component Implementation (#9653)
* PM-7321 - Temp add input password

* PM-7321 - update input password based on latest PR changes to test.

* PM-7321 - Progress on testing input password component + RegistrationFinishComponent checks

* PM-7321 - more progress on registration finish.

* PM-7321 - Wire up RegistrationFinishRequest model + AccountApiService abstraction + implementation changes for new method.

* PM-7321 - WIP Registration Finish - wiring up request building and API call on submit.

* PM-7321 - WIP registratin finish

* PM-7321 - WIP on creating registration-finish service + web override to add org invite handling

* PM-7321 - (1) Move web-registration-finish svc to web (2) Wire up exports (3) wire up RegistrationFinishComponent to call registration finish service

* PM-7321 - Get CLI building

* PM-7321 - Move all finish registration service and content to registration-finish feature folder.

* PM-7321 - Fix RegistrationFinishService config

* PM-7321 - RegistrationFinishComponent- handlePasswordFormSubmit - error handling WIP

* PM-7321 - InputPasswordComp - Update to accept masterPasswordPolicyOptions as input instead of retrieving it as parent components in different scenarios will need to retrieve the policies differently (e.g., orgInvite token in registration vs direct call via org id post SSO on set password)

* PM-7321 - Registration Finish - Add web specific logic for retrieving master password policies and passing them into the input password component.

* PM-7321 - Registration Start - Send email via query param to registration finish page so it can create masterKey

* PM-7321 - InputPassword comp - (1) Add loading input (2) Add email validation to submit logic.

* PM-7321 - Registration Finish - Add submitting state and pass into input password so that the rest of the registration process keeps the child form disabled.

* PM-7321 - Registration Finish - use validation service for error handling.

* PM-7321 - All register routes must be dynamic and change if the feature flag changes.

* PM-7321 - Test registration finish services.

* PM-7321 - RegisterRouteService - Add comment documenting why the service exists.

* PM-7321 - Add missing input password translations to browser & desktop

* PM-7321 - WebRegistrationFinishSvc - apply PR feedback
2024-07-08 10:40:23 -04:00
Addison Beck
52207b7620
Communicate the upcoming client vault privacy changes to MSPs (#9994)
* Add a banner notification to the provider portal

* Feature flag the banner

* Move banner copy to messages.json

* Allow for dismissing the banner
2024-07-08 10:16:29 -04:00
github-actions[bot]
6e3c57da89
Autosync the updated translations (#9972)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-07-05 10:37:08 +00:00
Thomas Rittson
3e7f8f5384
[AC-2676] Remove paging logic from GroupsComponent (#9705)
* remove infinite scroll, use virtual scroll instead
* use TableDataSource for search
* allow sorting by name
* replacing PlatformUtilsService.showToast with ToastService
* misc FIXMEs
2024-07-04 06:04:16 +10:00
Rui Tomé
a9abc772c2
[AC-1452] Restrict access to 'Organization Info' and 'Two-Step Login' settings pages with a permission check (#9483)
* Guard Organization Info route - Owners only

* Guard TwoFactor route - Owners only and Organization must be able to use 2FA

* Update guards to use function syntax

---------

Co-authored-by: Addison Beck <hello@addisonbeck.com>
2024-07-03 12:45:49 -04:00
Alex Morask
d4eeeb8ed2
[AC-2805] Consolidated Billing UI Updates (#9893)
* Add empty state for invoices

* Make cards on create client dialog tabbable

* Add space in $ / month per member

* Mute text, remove (Monthly) and right align menu on clients table

* Made used seats account for all users and fixed column sort for used/remaining

* Resize pricing cards

* Rename assignedSeats to occupiedSeats
2024-07-03 10:33:43 -04:00
cyprain-okeke
ca4ac38fcb
[AC-2830] Unable to create a free organization (#9917)
* Resolve the issue free org creation

* Check that the taxForm is touched
2024-07-02 23:21:37 +01:00
github-actions[bot]
75a5a663b0
Autosync the updated translations (#9923)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-07-02 22:00:23 +00:00
Shane Melton
17d37ecaeb
[PM-7162] Cipher Form - Item Details (#9758)
* [PM-7162] Fix weird angular error regarding disabled component bit-select

* [PM-7162] Introduce CipherFormConfigService and related types

* [PM-7162] Introduce CipherFormService

* [PM-7162] Introduce the Item Details section component and the CipherFormContainer interface

* [PM-7162] Introduce the CipherForm component

* [PM-7162] Add strongly typed QueryParams to the add-edit-v2.component

* [PM-7162] Export CipherForm from Vault Lib

* [PM-7162] Use the CipherForm in Browser AddEditV2

* [PM-7162] Introduce CipherForm storybook

* [PM-7162] Remove VaultPopupListFilterService dependency from NewItemDropDownV2 component

* [PM-7162] Add support for content projection of attachment button

* [PM-7162] Fix typo

* [PM-7162] Cipher form service cleanup

* [PM-7162] Move readonly collection notice to bit-hint

* [PM-7162] Refactor CipherFormConfig type to enforce required properties with Typescript

* [PM-7162] Fix storybook after config changes

* [PM-7162] Use new add-edit component for clone route
2024-07-02 13:22:51 -07:00
Addison Beck
b7e3f5bc68
Restructure the org-permissions guard to be Angular 17+ compliant (#9631)
* Document the `org-permissions` guard in code

* Restructure the `org-permissions` guard to be Angular 17+ compliant

* Update the `org-permissions` guard to use `ToastService`

* Simplify callback function sigantures

* Remove unused test object

* Fix updated route from merge
2024-07-02 09:53:06 -05:00
cyprain-okeke
804cbe6da1
[PM-5024] Migrate tax-info component (#9872)
* Changes for the tax info migration

* Return for invalid formgroup
2024-07-02 15:50:11 +01:00
Jake Fink
a5e7fde413
fix duo subscriptions and org vs individual duo setup (#9859) 2024-07-02 10:44:27 -04:00
Matt Gibson
da7e466252
[PM-9344] Clarify accepted user state (#9861)
* Prefer `Needs confirmation` to `Accepted` display status

This emphasizes that action is still required to complete setup.

* Remove unused message
2024-07-02 06:03:00 +10:00
Addison Beck
c7777c38ef
Restructure the is-paid-org guard to be Angular 17+ compliant (#9598)
* Document that `is-paid-org` guard in code

* Remove unused `MessagingService` dependency

* Make assertions about the way the is-paid-org guard should behave

* Restructure the `is-paid-org` guard to be Angular 17+ compliant

* Random commit to get the build job moving

* Undo previous commit
2024-07-01 12:31:37 -04:00
vinith-kovan
432a4ddd17
Bug fix - error toast in 2fa (#9623)
* Bug fix - error toast in 2fa

* Bug fix - Yubikey code obscured

* 2FA error fix
2024-07-01 09:03:51 -07:00
Jake Fink
c63e50908b
don't initialize kdf with validators, do it on first set (#9754) 2024-07-01 12:01:17 -04:00
Addison Beck
9551691fde
Restructure the org-redirect guard to be Angular 17+ compliant (#9552)
* Document the `org-redirect` guard in code

* Make assertions about the way the `org-redirect` guard should behave

* Restructure the `org-redirect` guard to be Angular 17+ compliant

* Convert data parameter to function parameter

* Convert a data parameter to a function parameter that was missed

* Pass redirect function to default organization route
2024-07-01 11:54:00 -04:00
Addison Beck
71e8fdb73d
Add the ability for custom validation logic to be injected into UserVerificationDialogComponent (#8770)
* Introduce `verificationType`

* Update template to use `verificationType`

* Implement a path for `verificationType = 'custom'`

* Delete `clientSideOnlyVerification`

* Update `EnrollMasterPasswordResetComponent` to include a server-side hash check

* Better describe the custom scenerio through comments

* Add an example of the custom verficiation scenerio

* Move execution of verification function into try/catch

* Migrate existing uses of `clientSideOnlyVerification`

* Use generic type option instead of casting

* Change "given" to "determined" in a comment
2024-07-01 11:52:39 -04:00