Commit Graph

282 Commits

Author SHA1 Message Date
Tomi Belan e7da2f0c22
Allow bw sync without unlocking (#2916) 2022-08-16 16:27:05 -05:00
Matt Gibson 5339344630
PS-1133 Feature/mv3 browser observable memory caching (#3245)
* Create sessions sync structure

* Add observing to session-syncer

* Do not run syncer logic in decorator tests

* Extract test constants

* Change Observables to BehaviorSubject

* Move sendMessage to static method in BrowserApi

* Implement session sync

* only watch in manifest v3

* Use session sync on folder service

* Add array observable sync

* Bypass cache on update from message

* Create feature and dev flags for browser

* Protect development-only methods with decorator

* Improve todo comments for long-term residency

* Use class properties in init

* Do not reuse mocks

* Use json (de)serialization patterns

* Fix failing session storage in dev environment

* Split up complex EncString constructor

* Default false for decrypted session storage

* Try removing hydrate EncString method

* PR review

* PR test review
2022-08-16 07:05:03 -05:00
Matt Gibson 6e68761337
PS-1230 PS-1152 Fix/improve null origin message (#3280)
* Improve message if Origin header value is empty

* PS-1230 Remove serve feature flag
2022-08-11 09:00:27 -05:00
Thomas Rittson 4a1c3eb1ec
[EC-423] Fix unit tests (#3265)
* Create base jest.config file

* Fix various tests that were broken

* Add maxWorkers to jest config

* Undo change to testEnvironment

* Enable tsconfig.spec.json
2022-08-11 11:35:08 +10:00
Justin Baur 1ba76dec16
[PS-1107] User Verification Service Refactor (#3219)
* UserVerificationService refactor

* Remove temp change

* move import order

* Address PR feedback
2022-08-09 21:31:02 -04:00
Rui Tomé c263eacd88
[EC-376] Extract API logic from PolicyService to PolicyApiService (#3203)
* Added abstractions for PolicyApiService and PolicyService

* Added implementations for PolicyApiService and PolicyService

* Updated all references to new PolicyApiService and PolicyService

* Deleted old PolicyService abstraction and implementation

* Fixed CLI import path for policy.service

* Fixed main.background.ts policyApiService dependency for policyService

* Updated policy-api.service with the correct imports

* [EC-376] Sorted methods order in PolicyApiService

* [EC-376] Removed unused clearCache method from PolicyService

* [EC-376] Added upsert method to PolicyService

* [EC-376] PolicyApiService putPolicy method now upserts data to PolicyService
2022-08-08 10:04:36 +01:00
Matt Gibson e7220644d1
[PS-1152] CLI serve forbid browser requests (#3220)
* Inconsiquential change to allow a draft PR

* Serve blocks requests from browsers by default

Option is provided to override this behavior for backwards
compatibility.

* Revert "Inconsiquential change to allow a draft PR"

This reverts commit 0f51344c35.
2022-08-05 10:27:11 -05:00
github-actions[bot] 60061a8901
Bumped cli version to 2022.8.0 (#3228)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2022-08-04 17:21:30 +02:00
Thomas Rittson c90eb42ead
[EC-271] Refactor CryptoService - move symmetric encryption to EncryptService (#3042)
* move decryptFromBytes, decryptToBytes, and encryptToBytes from CryptoService to EncryptService
* leave redirects in CryptoService
* combine encryptService decryptFromBytes and decryptToBytes methods
* move parsing logic into EncArrayBuffer
* add tests
2022-07-26 11:40:32 +10:00
Daniel James Smith 9a56ddcef1
Re-generate CLI package-lock.json (#3165) 2022-07-25 13:26:19 +02:00
Matt Gibson 528af15eb0
Do not use deprecated method (#3155) 2022-07-22 11:41:02 -05:00
Oscar Hinton fbff2e5f00
[PS-1134] Folder fixes, including revamped auth logic (#3118) 2022-07-18 14:39:12 +02:00
Oscar Hinton 23253b3882
[PS-1078] Refactor FolderService to use Observables (#3022) 2022-07-12 20:25:18 +02:00
Oscar Hinton f79c4f0c65
Extract API logic from FolderService to FolderApiService (#3011) 2022-07-08 15:40:31 +02:00
github-actions[bot] 97598f5ba4
Bumped cli version to 2022.6.2 (#3061)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-07 07:28:16 -07:00
github-actions[bot] 2f290e406d
Bumped cli version to 2022.6.1 (#3041)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-05 14:43:54 -07:00
github-actions[bot] 11e12d910b
Bumped cli version to 2022.6.0 (#3004)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-29 11:23:10 -05:00
Matt Gibson 399b8c2b34
PS-813 Add memory storage to state service (#2892)
* Use abstract methods and generics in StorageService

* Prepend `Abstract` to abstract classes

* Create session browser storage service

* Use memory storage service for state memory

* Inject memory storage service

* Maintain filename extensions to help ide formatting

* Preserve state if it's still in memory

* Use jslib's memory storage service

* linter

* Create prototypes on stored objects

* standardize package scripts

* Add type safety to `withPrototype` decorators

* webpack notify manifest version

* Fix desktop

* linter

* Fix script

* Improve prototye application

* do not change prototype if it already matches desired
* fix error with object values prototype application

* Handle null state

* Apply prototypes to browser-specific state

* Add angular language server to recommended extensions

* Improve browser state service tests

* Start testing state Service

* Fix abstract returns

* Move test setup files to not be picked up by default glob matchers

* Add key generation service

* Add low-dependency encrypt service

* Back crypto service with encrypt service.

We'll want to work items that don't require state over to encrypt service

* Add new storage service and tests

* Properly init more stored values

* Fix reload issues when state service is recovering state from session storage

Co-authored-by: Thomas Avery <Thomas-Avery@users.noreply.github.com>
Co-authored-by: Justin Baur <admin@justinbaur.com>

* Simplify encrypt service

* Do not log mac failures for local-backed session storage

* `content` changed to `main` in #2245

* Fix CLI

* Remove loggin

* PR feedback

* Merge remote-tracking branch 'origin/master' into add-memory-storage-to-state-service

* Fix desktop

* Fix decrypt method signature

* Minify if not development

* Key is required

Co-authored-by: Thomas Avery <Thomas-Avery@users.noreply.github.com>
Co-authored-by: Justin Baur <admin@justinbaur.com>
2022-06-27 12:38:12 -05:00
Andreas Coroiu fd69e163ff
[PS-683] Update negative copy (#2912)
* feat(browser): Update auto biometrics copy

* refactor(common): remove TotpService.isAutoCopyEnabled and use state directly

The TotpService was just taking the value from StateService and forwarding it, making it depend on state service.
All services that depended on the TotpService.isAutoCopyEnable flag also depended on StateService.
This therefore simplifies things by using StateService directly.

* feat(browser): update auto totp copy

* feat(browser): update add login notification copy

* feat(browser): update change password notification copy

* feat(browser): update context menu copy

* feat(browser): update show cards current tab copy

* feat(browser): update show identities current tab copy

* feat(browser): update enable favicon copy

* feat(browser): update badge counter copy

* feat(browser): update auto-fill copy

* feat(desktop): update auto biometrics prompt copy

* feat(desktop): update favicon copy

* feat(desktop): adjust copy

* feat(web): update favicons copy

* feat(web): adjust copy

* feat(web): update preference settings to sentence case

* feat(browser): update settings and options page to sentence case

* feat(desktop): update settings to sentence case

* feat(web): update copy

* feat(desktop): update copy
2022-06-23 09:53:42 +02:00
Oscar Hinton 19caa7bfe0
Simplify our gitignore files (#2925) 2022-06-17 15:33:51 +02:00
Oscar Hinton bc639688e8
Use NPM workspace (#2874) 2022-06-14 17:10:53 +02:00
Matt Gibson c4ff8f99dc
Multi root workspace tweaks (#2858)
* Ignore jest for workspaces without tests (for now)

* Add jest as recommended extension

* Set eslint and prettier file paths

We can't do this on a multi-folder workspace level because the
path depths are not identical between folders

* fix tsconfig extends for

* Simplify bitwarden-licensed web tsconfig

This tsconfig isn't needed to build, since we do that through webpack
and the web client. It's only needed as hints to IDEs

* Remove unintended change

* linter
2022-06-13 21:39:36 -05:00
Oscar Hinton 4f9079dd4f
[PS-801] Re-add dependencies to the cli (#2878) 2022-06-13 15:50:11 +02:00
Thomas Rittson 3b857345bb
Update README and CONTRIBUTING to point to contributing.bitwarden.com (#2771)
Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com>
2022-06-13 17:34:07 +10:00
Oscar Hinton 2126ac414c
[EC-236] Add CLI dependencies to root package.json (#2816) 2022-06-03 20:11:47 +02:00
Oscar Hinton 5780bf85e7
Add support for migrated jslib (#2826) 2022-06-03 18:01:07 +02:00
Oscar Hinton 579cee3364
Migrate cli to jest (#2759)
* Migrate cli to jest

* Remove jasmine from browser

* Remove coverage from browser since it's in the root gitignore
2022-05-31 16:29:10 +02:00
Micaiah Martin 2f72286f66
Add CLI build (#2746)
Co-authored-by: Vince Grassia <593223+vgrassia@users.noreply.github.com>
2022-05-31 07:20:06 -06:00
Thomas Rittson 6a861d4fcd
Update jslib (#2751) 2022-05-27 13:11:45 +10:00
Thomas Rittson 8519decb7c
[EC-177] Update Key Connector error handling (#2748)
* Update jslib, deps and messages.json
2022-05-26 11:16:05 +10:00
Oscar Hinton ebb66e71dd
[EC-239] CLI cleanup (#2745) 2022-05-25 21:36:30 +02:00
Hinton 980429f4bd Move CLI to apps/cli 2022-05-25 10:57:15 +02:00