Commit Graph

648 Commits

Author SHA1 Message Date
Justin Baur d79fd7f417
[PS-1306] Context Menu for MV3 (#3910)
* Add combine helper

* Helper for running multiple actions with single service cache

* Remove unneeded any

* Send identifier through callback

* Extend Tab Message

* Split out ContextMenu logic

* Add tests for ContextMenu actions

* Context Menu Fixes

* Await call to menu handler
* set onUpdatedRan to false when it's ran

* Switch to using new cache per run

* Fix Generate Password Test

* Remove old file from whitelist

* Remove Useless never from Generic

* Update apps/browser/src/background/main.background.ts

Co-authored-by: Matt Gibson <mgibson@bitwarden.com>

* Address PR Feedback

* Specify a Document Url for Context Menu Items

* Update Test

* Use Generate Password Callback

* Remove DocumentUrlPatterns

Co-authored-by: Matt Gibson <mgibson@bitwarden.com>
2023-01-06 19:31:32 -05:00
Patrick Demers 574c18ba3f
browser - modify styling to remove scrolling glitch in virtual list (#4316) 2023-01-06 13:11:34 -08:00
github-actions[bot] 36c1665ec5
Bumped web version to 2023.1.0 (#4407)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-01-06 10:55:48 -08:00
Jared Snider fc8f5ba11c
Feature/SG-959 Update "Go premium" copy verbiage (#4396)
* SG-959 - Replacing premium callout copy with new message + link to create org screen with families plan selected

* SG-959 - Replacing pure inputs for plan & product type with getters & setters so I can provide a form control setValue byproduct when a parent component (create-organization.component in this case) passes in a product / plan type. Query params for plan type were not being respected until this fix. Chose setters & getters over ngOnChanges as it doesn't allow for devs to manually set product or plan to other values without the form reflecting it.
2023-01-06 08:46:25 -05:00
github-actions[bot] 078a02fff0
Autosync the updated translations (#4400)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-01-06 01:22:41 +01:00
github-actions[bot] 778e1dd56f
Autosync the updated translations (#4399)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-01-06 01:13:22 +01:00
github-actions[bot] b102a76d5e
Autosync the updated translations (#4398)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-01-06 01:12:04 +01:00
Matt Gibson efefa3fc6a
Revert "Ps/sync only when changed (#4245)" (#4394)
This reverts commit 161ff3de28.
2023-01-05 14:19:47 -06:00
cd-bitwarden 0a5f96c560
Squash commits (#4382)
Co-authored-by: Hinton <hinton@users.noreply.github.com>
2023-01-05 13:31:57 -05:00
Oscar Hinton 049940d04b
[SM-410] Fix boolean custom fields not working (#4386)
* Fix boolean custom fields not working
2023-01-05 16:50:19 +01:00
Daniel James Smith d3c780e079
Revert "Use Multi-Messaging Service (#4304)" (#4374)
This reverts commit b1ee65dca8.
2023-01-03 14:13:54 -05:00
Carlgo11 491fac405e
[PS-2118] Update 2fa.directory API URI (#4318)
* Update 2fa.directory API URI

* Update 2fa.directory API url in dev CSP rules

Co-authored-by: Daniel James Smith <djsmith@web.de>
2023-01-03 19:53:31 +01:00
Daniel James Smith ec19fc7225
[PS-2072] Browser Badge fixes (#4363)
* Force update of badge icon and text on all windows

Affects MV2 and MV3
No longer pass in tab and windowId to setLoggedOut and setLocked

When the vault is locked or the user logs out, all open windows/tabs need to be updated

Iterating over all active tabs like in 2022.10.1 was missing:

488734577f/apps/browser/src/background/main.background.ts (L859-L867)

Create clearBadgeText function to take care of it.

* Only try to retrieve tab in unlocked state

* Remove lock icon when unlocking on all windows

* Only use windowId to retrieve tab when defined

In MV2 the `windowId` isn't passed into updateBage and fails to retrieve the correct tab to update.

This resorted in the badge not showing a match count in another window.

Fixes #4260

Ensure in MV3 that all listener pass on the windowId if present.

* Fix Firefox private mode

Only pass on the windowId if defined and within Firefox

In private mode the main.background bootstrap-method passes in the windowId

Do not refreshBadge when in private mode

Previously 488734577f/apps/browser/src/background/main.background.ts (L575-L586) setIcon would skip in private mode. Calling refreshBadge without this would update the badge on all windows (normal and private ones)
2023-01-03 18:06:21 +01:00
Brandon Maharaj d41b3b13ea
[SG-58] Avatar color selector (#3691)
* changes

* merge

* undo

* work

* stuffs

* chore: added custom color picker

* oops

* chore: everything but the broken sink

* picker v2

* fix: cleanup

* fix: linty

* fix: use tailwind

* fix: use tailwind

* undo: merge error

* remove: old color picker

* fix: merge issue

* chore: use input vs component

* fix: move logic out!

* fix: revert changes to bit-avatar

* fix: cleanup undos

* feat: color lookup for "me" badge in vault

* fix: naming stuff

* fix: event emitter

* fix: linty

* fix: protect

* fix: remove v1 states
work: navatar

* fix: big

* fix: messages merge issue

* bug: differing bg colors for generated components

* feat: added sync stuff

* fix: cli

* fix: remove service refs, use state

* fix: moved from EventEmitter to Subjects

* fix: srs

* fix: strict stuff is nice tbh

* SG-920 + SG-921 (#4342)

* SG-920 + SG-921

* Update change-avatar.component.html

* Update selectable-avatar.component.ts

* [SG-926] [SG-58] [Defect] - Selected Avatar color does not persist in the Account Settings menu (#4359)

* SG-926

* fix: comment

* fix: undo

* fix: imp

* work: done with static values (#4272)

* [SG-35] (#4361)

Co-authored-by: Todd Martin <106564991+trmartin4@users.noreply.github.com>
2023-01-01 10:30:09 -05:00
github-actions[bot] 0a734ce338
Autosync the updated translations (#4354)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2022-12-30 12:35:36 +01:00
github-actions[bot] be986440bd
Autosync the updated translations (#4352)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2022-12-30 12:35:18 +01:00
github-actions[bot] 2346bfbeab
Autosync the updated translations (#4355)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2022-12-30 12:33:35 +01:00
github-actions[bot] 5f1818182b
Autosync the updated translations (#4353)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2022-12-30 01:18:05 +01:00
Patrick 9f711d8cdd
[EC-892] Hide Secrets Manager (#4347)
* [EC-892] Hide Secrets Manager

Set the secretsManager flag to false outside of dev to deactivate it in all other environments

* linting

* set base to false for maximum safety

this gets rid of having to set it in selfhosted and cloud, but i feel safer with a belt and suspenders; don't want someone setting it true in base without thinking and the feature popping up in prod before we're ready.
2022-12-29 17:11:58 -05:00
Justin Baur 53288d2087
Add Provider Filter to Browser Vault Select (#4322) 2022-12-29 16:45:17 -05:00
Rui Tomé bf67493663
[EC-781] User can bypass master password requirements policy by canceling password reset and pasting invite link (#4218)
* [EC-781] Forcing the user to login to evaluate if the user's password meets the Organization password policy requirements

* [EC-781] Fix bug preventing from submitting update password form

* Revert "[EC-781] Forcing the user to login to evaluate if the user's password meets the Organization password policy requirements"

This reverts commit f09d74b4fc.

* [EC-781] Get email value from query parameters also for authenticated requests

* [EC-781] Forcing the user to login to evaluate if the user's current password meets the Organization password policy requirements

* [EC-781] Logging out the user using messagingService on accept-organization component

* [EC-781] Refactored accept-organization component to be simpler to read
2022-12-29 16:20:19 +00:00
Daniel James Smith 1fc7798e7d
Update year in copyrights (#4325) 2022-12-28 21:59:23 +01:00
Andreas Coroiu 350724f586
[EC-587] Update UI copy for Encrypted Export (#4228) 2022-12-28 15:51:00 +00:00
Matt Gibson c10e93c0d9
Handle null value URLs in autofiller script (#4277) 2022-12-28 08:49:38 -06:00
github-actions[bot] 81402f2166
Autosync the updated translations (#4311)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2022-12-23 12:49:30 +01:00
github-actions[bot] bd07e22802
Autosync the updated translations (#4312)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2022-12-23 01:28:37 +01:00
github-actions[bot] 4ad1b1fb91
Autosync the updated translations (#4310)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2022-12-23 01:24:59 +01:00
Patrick H. Lauke e1aceca72b
[PS-1386] Browser/Desktop/Web: Accessibility - Stop username regenerator button from losing focus (#3405)
* Make username regenerator button same as password one

it seems that (originally?) it wanted to be disabled at first and then become active again once the generator's async call was finished...but this seems unnecessary. removing all that extraneous stuff that doesn't seem to be actually doing anything makes this work just as well as the password generator button, and doesn't end up losing/resetting focus.

* Remove the `[disabled]` attribute from regenerate buttons

* Use `aria-disabled` instead of `disabled`, make click event conditional

* Make spinner show for `aria-disabled` controls as well
2022-12-23 01:18:18 +01:00
Will Martin 288827f13a
[SM-403] fix: manually detectChanges in Product Switcher (#4307) 2022-12-22 16:36:23 -05:00
Justin Baur b1ee65dca8
Use Multi-Messaging Service (#4304)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Co-authored-by: Matt Gibson <mgibson@bitwarden.com>
2022-12-22 13:29:02 -05:00
Robyn MacCallum 3a98b415b0
Revert "[EC-772] Add i18n key typechecking in web (#4023)" (#4296)
This reverts commit 5a1940f3f4.
2022-12-21 17:46:23 -05:00
Will Martin eeb407b8a4
[SM-43] create product-switcher (#4189)
* rebase to master

* use bit-menu in product switcher; add focusStrategy to bit-menu

* recommit locales after rebase

* add light style to iconButton, use in product-switcher

* move out of component library

* add buttonType input

* gate behind sm flag

* update aria-label

* add role input to bit-menu

* style changes

* simplify partition logic

* split into two components for Storybook

* update focus styles; update grid sizing to relative

* fix underline on hover

* update attribute binding

* move to layouts dir

* add bitLink; update grid gap

* reorder loose components

* move orgs mock

* move a11y module

* fix aria role bug; add aria label to menu

* update colors

* update ring color

* simplify colors

* remove duplicate link module
2022-12-21 16:50:41 -05:00
Patrick H. Lauke 7d3063942e
[PS-1692] Use `aria-describedby` for all help blocks/hints (#3802)
* Use aria-describedby for all help blocks/hints

* Add label to send notes textfield

* Use aria-describedby for all help blocks/hints / browser

* Tweak help block for confirming identity

* Remove aria-describedby for general login form

Seems unnecessary / doesn't need an extra description

* Fix compiler error

* Remove unnecessary aria-describedby

After testing, turns out the addition here was unnecessary, as the help block is already part of the `<label>`

* Fix aria-describedby reference for user verification component

* Remove redundant aria-describedby and generated id for radio buttons

* Fix aria-describedby for send editing in Safari

> When editing a send, the text below the deletion date is not recognized by the screen reader reliably (send-add-edit.component.html / efflux-dates.component.html). There might be an issues depending on which browser is used (deletionDateHelp vs. deletionDateCustomHelp

* Make custom environment container role="group", give it a label and description

> In the Environment Url Settings, the text “For advanced users…….“ is not not recognized by the screen reader. Not sure how to best solve this one, as it's below all individual url inputs. Ideally it gets announced with the baseUrl part or when focusing Custom Environment)
2022-12-21 20:48:22 +01:00
Jared Snider 9ed195c9f9
SG-903 - AllUsers count now updated on user remove which fixes issue with web/org/manage/people comp showing upgrade modal even after a user has been removed. (#4294) 2022-12-21 11:59:23 -05:00
Andreas Coroiu 772513c673
[EC-823] fix: append ng-select overlay to body (#4243) 2022-12-21 14:36:36 +01:00
Thomas Rittson 5a1940f3f4
[EC-772] Add i18n key typechecking in web (#4023) 2022-12-21 14:27:00 +10:00
github-actions[bot] 1f0e184cff
Bumped browser version to 2022.12.1 (#4280)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2022-12-20 10:21:21 -05:00
Jared Snider f0fba6c4e1
SG-898 - Adjust people component invite user action to check allUsers instead of users (which gets filtered and modified when a user uses the user status filter buttons) (#4269) 2022-12-20 10:15:23 -05:00
Melanie Kanavakatini 35b33335fb
[EC-474] Add hidden char count toggle to web and desktop (#3262)
* feat-web: add hidden char count toggle

* Added toggle char count for desktop

* Use Tailwind and Component Library, add i18n

* Hide char count when password is hidden

* Initial proposal

* Update colors per design spec for all clients

Also make variable names consistent across clients

* Remove unused scss

* Add styling

* Set fixed with for password count elements

* Add separate wrapped stories

* Fix alignment of first char when wrapped

* Minor refactors

* Make naming consistent

* Add Figma url

* add barrel files

* Use CL component

* Fix template

* Remove duplicate style

* Use ColorPasswordComponent in web, remove old pipe

Also remove styling and move pipe out of jslib-module given that
it's no longer shared by all Angular clients

* Run prettier

* Remove unused scss vars

* Undo unnecessary changes

* Remove unnecessary changes

* Fix styling

* Fix selector

* Collect show password event

* Fix incorrect background in dark mode

* Fix linting

* Use color password for password history

* Add char count to hidden custom fields in desktop

* Fix char count background in web: take 2

* Update service name

* Add missing label toggleCharacterCount for desktop

Co-authored-by: Daniel James Smith <djsmith@web.de>
Co-authored-by: Thomas Rittson <trittson@bitwarden.com>
2022-12-20 13:31:18 +01:00
Andreas Coroiu 32ec5bdba1
[CL-58] Make icon button compatible with bit suffix directive (#4057)
* [CL-58] feat: add support for modyfing button types from directives

* [CL-58] feat: set button type secondary when used as prefix/suffix

* [CL-58] chore: add example using suffix to async actions story

* [CL-58] feat: update story with examples

* [CL-58] feat: allow buttons to have their style unset

* [CL-58] feat: move all styling into prefix/suffix

* [CL-58] fix: static content prefix/suffix

* [CL-58] fix: add missing bitFormButton to bitAction

* [CL-58] fix: disabled opacity not overriding correctly

* [CL-58] feat: change hover color to muted

* [CL-58] feat: replace undefined with unstyled

* [CL-58] fix: focus borders on input and prefix/suffix

* [CL-58] feat: update production code to use icon button correctly

* [CL-58] refactor: move out button type to common place

* [CL-58] fix: buttons not migrated correctly

* [CL-58] feat: use icon button in password toggle

* [CL-58] fix: remove button icon stories

* [SM-358] Migrate password toggles (#4129)

* [CL-58] fix: missing i18n service in story

* [CL-58] fix: missing bitIconButton directive in export comp

Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com>
Co-authored-by: Thomas Rittson <trittson@bitwarden.com>
2022-12-20 08:14:29 +10:00
Daniel James Smith 8c8d4b3e3e
Add passky importer (#4253)
Create types for passky export format
Add test files
Write tests for passky-json-importer
Write importer for passky export
Register 'passkyjson' with `importOptions`
Import/register passky-json-importer with import.service
Add instructions on how to export from Passky
2022-12-19 21:47:45 +01:00
Shane Melton f67fffcc08
[EC 784] Refactor organization user service (#4163)
* [EC-784] Introduce OrganizationUserService and abstraction

* [EC-784] Move API response models into abstraction folder

* [EC-784] Register OrganizationUserService in JsLib

* [EC-784] Add OrganizationUserService to CLI Main

* [EC-784] Move getOrganizationUser()

- Move getOrganizationUser() implementation to OrganizationUserService
- Update any references to the API service in the CLI and Web projects

* [EC-784] Move getOrganizationUserGroups()

* [EC-784] Move and rename getOrganizationUsers()

* [EC-784] Move getOrganizationUserResetPasswordDetails()

* [EC-784] Move OrganizationUser API request models into abstraction folder

* [EC-784] Move postOrganizationUserInvite()

* [EC-784] Move postOrganizationUserReinvite()

* [EC-784] Move postManyOrganizationUserReinvite()

Also tweak the signature to avoid exposing the API request model

* [EC-784] Move postOrganizationUserAccept()

* [EC-784] Move postOrganizationUserConfirm()

* [EC-784] Move postOrganizationUsersPublicKey()

Also modify signature to avoid exposing API request model

* [EC-784] Move postOrganizationUserBulkConfirm()

* [EC-784] Move putOrganizationUser()

* [EC-784] Move putOrganizationUserGroups()

* [EC-784] Update abstraction method definitions to use abstract keyword

* [EC-784] Move putOrganizationUserResetPasswordEnrollment()

* [EC-784] Move putOrganizationUserResetPassword()

* [EC-784] Move deleteOrganizationUser()

* [EC-784] Move deleteManyOrganizationUsers()

* [EC-784] Move revokeOrganizationUser()

* [EC-784] Move revokeManyOrganizationUsers()

* [EC-784] Move restoreOrganizationUser()

* [EC-784] Move restoreManyOrganizationUsers()

* [EC-784] Move internal OrganizationUserBulkRequest model out of service abstraction

* [EC-784] Rename organizationUser folder to organization-user
2022-12-19 10:56:16 -08:00
Kyle Spearrin d18c32ab32
margin and padding style adjustments (#4264) 2022-12-19 12:50:47 -05:00
Robyn MacCallum 2df2f953c2
[SG-890] Fix routing to org members in trial confirmation (#4255)
* Fix routing to org members in trial confirmation

* Adjust trial tests with new route
2022-12-19 08:51:09 -05:00
Jared Snider 1f92dcbf20
Defect/SG-825 - users in org w/ no personal vault still see personal vault (disabled org policies now still apply) (#4094)
* SG-825 - policy.service - Apply policies of disabled orgs

* SG-825 - OrgFilter - Show org suspended icon when org is disabled and remove personal vault policy enabled

* SG-825 - Org Filter refactor - Enterprise users can now access org options to leave orgs without selecting them (previously, you had to select an org to get the options to show up which was not possible for disabled orgs).  Users can now leave disabled orgs.

* SG-825 - fix aria label compile issue

* SG-825 - Browser - Vault filter CSS refactor - (1) Better ellipsis truncation implemented (2) Selected vault and dropdown widths now scale dynamically based on selection and container width

* SG-825 - Desktop - (1) Org suspended warning icon now displayed on disabled orgs even when personal vault removed policy applied (2) Org suspended icon now has same accessibility (title / label) as web & browser.
2022-12-16 15:22:27 -05:00
Jared Snider 3d008da287
Web - SG-668 update flows for free 2 person orgs (#4093)
* People-component - Minor refactoring - Make  org a comp prop instead of creating multiple component props for props on the org object

* Added IconDirective to Dialog.module so that bit-dialog-icon directive can work within <bit-simple-dialog> components

* SG-668 - #2 - If a free org has members (any status) at max seat limit, then prompt for upgrade with dialog which takes you to upgrade flow on billing/subscription management page

* SG-668 - (1) Refactored upgrade dialog to accept translated body text for better re-usability (2) Completed task #3 - If user has max collections for free org and tries to add a 3rd, they are prompted via upgrade dialog.

* SG-668 - Update equality checks to use strict equality

* SG-668 - Upgrade dialog now shows contextual body text based on if the user can manage billing or not
2022-12-16 15:11:37 -05:00
github-actions[bot] 9bbe13fa71
Autosync the updated translations (#4250)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2022-12-16 18:27:28 +01:00
Hunter Bertoson 91ff4fc00d
[PS-1830] Updated the autofill.js file to no longer add the 'data.com' attribute to tags (#4001)
* Updated the autofill.js file to no longer add the 'data.com' attribute to tags

* Added Comments and removed empty lines
2022-12-16 17:02:13 +01:00
Robyn MacCallum c06c0f9f2c
[SG-742] (#4190)
* Remove default landing on masterpassword page

* Remove rememberEmail state service value that isn't needed

* Remove last occurence of setRememberEmail

* Remove alwaysRememberEmail functionality

* Remove always remember email from browser and add option to

* Add extra spacing around remember email check

* [SG-884] Fix Remember Email functionality for Login with SSO (#4238)

* Add saveEmailSettings method to LoginService

* Add StateService as a dependency to LoginService

* Update login components to utilize new login service method for saving rememberedEmail
2022-12-16 10:08:44 -05:00
github-actions[bot] 923cb21654
Autosync the updated translations (#4251)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2022-12-16 01:15:16 +01:00