Commit Graph

69 Commits

Author SHA1 Message Date
Thomas Rittson 9ee31ad2fb
Improve URL parsing (#411)
* Check hostname is valid in getDomain

* fix linting

* Update noop implementation

* Fix tests

* Fix tests
2021-06-23 06:00:14 +10:00
Oscar Hinton d7682cde3b
Move nodeCryptoFunction to jslib-node (#405)
* Move nodeCryptoFunction to jslib-node

* Fix imports

* Fix tests import
2021-06-09 16:59:45 +02:00
Matt Gibson ea90aea013
Use encrypted filename filename in Cipher attachment upload blob name (#403)
* Use EncString type to enforce encryption on filename in Cipher attachment upload

* Fix Cipher attachment test
2021-06-08 14:02:08 -05:00
Oscar Hinton 1016bbfb9e
Split jslib into multiple modules (#363)
* Split jslib into multiple modules
2021-06-03 18:58:57 +02:00
Thomas Rittson 306aef73d4
Increase error checking on imported Login items (#369)
* Increase error checking on imported Login items

* Check encKey when importing encrypted JSON

* Fix style, use GUID as random string for test

* Revert "Increase error checking on imported Login items"

This reverts commit 17294527863cc53b84ed218f94ffbc21f4e96260.

* fix linting

* Fix tests
2021-05-13 10:58:59 +10:00
Oscar Hinton ba1a40af4e
Bump node to 14 (#358)
* Bump node requirement to 14 and npm to 7
2021-05-12 18:55:00 +02:00
Daniel James Smith 1eb40a4891
Add support to import from Nordpass(.csv) (#360)
* Add support for parsing .csv files from Nordpass

* Remove whitespace before extracting CardExpiration

* Add curlybraces to one-liner if's as requested

* NordPassImporter: Process more complex names
2021-04-29 06:51:35 -04:00
Daniel James Smith e298ecfee3
Add import of totp from Lastpass (#361)
* Add import of totp from Lastpass

* Fixed import as request during review
2021-04-28 16:50:37 -04:00
Oscar Hinton aca098645a
Bump dependencies (#350)
* Bump dependencies
2021-04-22 21:17:14 +02:00
Matt Gibson 3a1087456f
Rename CipherString and CipherArrayBuffer to Enc (#352) 2021-04-20 19:16:19 -05:00
Matt Gibson 0a0cdaa7fd
Fix cipher upload (#346)
* Upload correct data array

* Require BufferArray Encryption for upload to server

The CipherArrayBuffer tiny type is only created by CryptoService
and required by all upload methods

* Add test for attachment upload encryption
2021-04-14 10:47:10 -05:00
Tomasz Zdybał 827674847f
Skip FirefoxAccounts during Firefox CSV Import (#323)
* Skip FirefoxAccounts during Firefox CSV Import

Firefox exports 'chrome://FirefoxAccounts' if Firefox Accouts are used
in browser. It's quite hacky - password field in CSV is actually a JSON
encoded data, not a password.
Because it's not a useful record, it should be skipped during import.

* Fix indentation

* Move test Firefox test data to files, fix linter errors
2021-04-12 12:08:56 -05:00
Daniel James Smith b774c3e785
Replaced appveyor build badge with one from Github Workflow (#319)
* Deleted appveyor.yml

* Removed Appveyor check in karma.conf.js

* Modified build badge to use Github workflow

* Fixed missing parenthesis in README.md
2021-04-05 15:25:45 -04:00
Daniel James Smith c7ac645eb7
Fixes linting error introduced with PR #307 (#309) 2021-03-17 17:14:10 -04:00
Paul Sieben a36f1c25d8
Enhance SafeInCloud import (#307)
* don't import deleted cards

* keep favourite status while importing from saveInCloud

* import all passwords from saveInCloud

* add test data
2021-03-16 15:06:12 -05:00
Matt Gibson 2730e04a05
Match tslint rules (#264) 2021-02-08 14:11:44 -06:00
Matt Gibson 58f40b0085
Fix glob processing in npm. Ban single param parens (#257) 2021-02-04 09:49:23 -06:00
Chad Scharf 06239aea2d
update package https-proxy-agent (#246)
* update package http-proxy-agent

* Update syntax appropriately

* Explicitly add utils package to fix broken tests

* Revert "Explicitly add utils package to fix broken tests"

This reverts commit 2cf03fdcbae89e55124c7e36201238520434f8cc.

* Import util in spec to make sure it gets bundled

* Revert "Import util in spec to make sure it gets bundled"

This reverts commit 79264cdab0ef37af855d64a6dc3ef574575309d2.

* Add alias to ensure util module resolves in tests

Co-authored-by: Thomas Rittson <trittson@bitwarden.com>
2021-01-27 20:08:56 -05:00
Matt Gibson 1420082348
Do not export trashed items (#241)
* Do not export trashed items

* Test Item exporting

Does not test organization export. Export's use of apiService is not
very testable. We will either need a testApiService or to refactor
apiService to make mocking easier.

* Linter fixes
2020-12-30 15:08:02 -06:00
Matt Gibson 2c414ce27a
Use log service for console messages (#221)
* Use logService for console messages

* Implement a base ConsoleLog service

Use this class as a default for other services that would like to output
to console. This service is overriden in CLI and Desktop to use CLI's
consoleLogService and electronLogService, respectively.

* Use browser-process-hrtime for timing

* test LogService implementations

* Ignore default import of hrtime

* Clean up imports. Require ConsoleLog injection

Co-authored-by: Matt Gibson <mdgibson@Matts-MBP.lan>
2020-12-11 10:44:57 -06:00
Matt Gibson 72bf18f369
Fix 1password importer (#222)
* Change cipher type based on csv type header

* Test identity and credit card import

* Do not use node 'fs' module

Karma is being used for automated tests so node modules are not available

* WIP: mac and windows 1password importer split

Need to improve windows field identification to limit secret data
exposure and improve user experience

* Hide fields with likely secret values

Co-authored-by: Matt Gibson <mdgibson@Matts-MBP.lan>
2020-12-08 11:29:57 -06:00
Kyle Spearrin dcbd09e736
encrypted import for bitwarden json (#220) 2020-12-04 21:05:11 -05:00
Matt Gibson 6fb0646481
Fix 1password importer (#217)
* Fix import of 1password csv

* 1password is using '\' as a quote escape character.

* 1password's csv headers are sometimes capitalized. We want to identify
them case insensitively

* Change cipher type based on csv type header

* Translate 1password data to correct fields

* Test identity and credit card import

* linter fixes

* Do not use node 'fs' module

Karma is being used for automated tests so node modules are not available

Co-authored-by: Matt Gibson <mdgibson@Matts-MBP.lan>
2020-12-04 12:29:31 -06:00
Kyle Spearrin 8cb5a9f505
hkdf crypto functions (#190)
* hkdf crypto functions

* comment to spec
2020-10-29 15:52:12 -04:00
Chad Scharf 5e0a2d1d99
remove old Edge browser hacks (#168)
* remove old Edge browser hacks

* Remove final edge hacks

* Update constructor parameters

* Update search-ciphers.pipe.ts

Co-authored-by: Kyle Spearrin <kspearrin@users.noreply.github.com>
2020-09-15 10:23:21 -04:00
Kyle Spearrin 566e88f52a only run chrome tests on github action 2020-07-23 17:23:38 -04:00
Kyle Spearrin 1fb95726ef fix build and run on os matrix 2020-07-23 17:13:57 -04:00
mtgto d6c9acdf6f
Add noImplicitAny to tsc compiler options (#86) 2020-03-11 09:00:14 -04:00
Kyle Spearrin 76f60dd99e fix lastpass importer tests 2020-02-06 15:28:17 -05:00
Reese eecd774b13
fix lastpass import credit card expiration (#65)
* Fix import of expiration date from LastPass

Signed-off-by: Felipe Santos <felipecassiors@gmail.com>

* handle empty cc exp from lastpass, add test

* check for month/year null/whitespace

* check for empty expiration from lp import

Co-authored-by: Felipe Santos <felipecassiors@gmail.com>
2020-02-06 11:24:18 -05:00
jgfaust c91ab626c2 The domain of data URLs should be null. (#59) 2020-01-25 07:52:51 -05:00
Kyle Spearrin a0a1142f1f Revert "dont sequentialize in throttle spec"
This reverts commit 8edc99dfd1.
2019-04-19 19:46:48 -04:00
Kyle Spearrin 8edc99dfd1 dont sequentialize in throttle spec 2019-04-19 17:41:33 -04:00
Kyle Spearrin f39bdc4269 fix lint issues 2019-03-27 14:46:34 -04:00
Kyle Spearrin 58c34b896c sort and limit password history parsing 2019-03-25 09:10:33 -04:00
Robert Wachs 8ed27eeeec 1password 1pif: import password history (#33)
* 1password 1pif import password history

* 1password 1pif importer: process windows password history

* linter fix
2019-03-24 10:50:49 -04:00
Kyle Spearrin df429fe178 country is now upper 2019-03-23 22:49:22 -04:00
Robert Wachs 2bd47a19df 1password 1pif importer: create identity records (#34)
* 1password 1pif importer: create identity records

* importer: do not store empty strings

replace them with null instead
2019-03-23 22:21:43 -04:00
Kyle Spearrin c17e8b458c use single quote 2019-03-23 12:31:52 -04:00
Robert Wachs f874ec253d 1password 1pif importer: create hidden fields (#32)
* allow base importer to receive custom field type

* 1password importer uses hidden field type

for custom fields marked as 'concealed'

* 1password 1pif importer specs

* remove 'focus' from specs

* change field type logic into simple one liner
2019-03-23 12:27:50 -04:00
Kyle Spearrin 93244b5c90 use jsdom for DOMParser 2019-02-07 16:55:49 -05:00
Fred Cox db37a831e4 Throttle calls to HIBP api (#25)
Randomly failing to check by passwords, I'm pretty sure its because ~2000 connections are made at the same time.
2019-02-02 10:17:44 -05:00
Fred Cox e7f4dccfc3 Clear sequentialize cache when empty to remove chance of memory leaks (#26) 2019-02-02 09:23:16 -05:00
Kyle Spearrin ad97afc590 move getDomain to jslib Utils 2018-10-13 22:21:54 -04:00
Kyle Spearrin 64be82d5cc remove unused import 2018-09-19 09:57:17 -04:00
Kyle Spearrin 85587e0672 isSafari mock 2018-09-14 13:36:03 -04:00
Kyle Spearrin d0ad865060 add getDevice to mocked utils service 2018-09-10 16:44:50 -04:00
Kyle Spearrin 2045e7047a add support for md5 hash crypto function 2018-07-30 23:29:30 -04:00
Kyle Spearrin d07ee4c01b fix sequentialize tests 2018-07-23 15:32:22 -04:00
Fred Cox 04014a8e78 Add sequentialize to prevent parralel loading of cipher keys (#7)
* Add sequentialize to prevent parralel loading of cipher keys

Massively improves start up performance of extensions

* Add tests for sequentialize

* Fix sequentialize as it was caching calls for all instances together

* Add sequentialize to the functions that have internal caches

* Adding sequentialize to getOrgKeys makes big performance difference

* Update cipher.service.ts

* Update collection.service.ts

* Update folder.service.ts
2018-07-23 14:23:30 -04:00