1
0
mirror of https://github.com/bitwarden/directory-connector synced 2026-02-27 17:53:15 +00:00
Commit Graph

525 Commits

Author SHA1 Message Date
Brandon
684cfcbe13 Merge branch 'main' into dev-clarity-hands-on 2026-02-26 12:11:19 -05:00
Brandon
4eb74cdeb4 cleanup migration key for account, clean up 2026-02-25 15:41:15 -05:00
Brandon
b1a3859516 remove hard coded state keys, fix env urls, fix account state migration 2026-02-25 10:01:35 -05:00
sven-bitwarden
984ae973a1 [PM-31004]: Fix Stackoverflow from Circular Group References (#991)
* Fix circular groups

* Simplify tests
2026-02-24 09:31:56 -06:00
Brandon
4c7afc0e64 Merge branch 'state-service-rewrite' into dev-clarity-hands-on 2026-02-24 10:04:35 -05:00
Brandon
4b079a3ec9 continue removing jslib code 2026-02-23 15:50:31 -05:00
Brandon
77873c3075 migrate electron, window/tray, and UI state to vNext 2026-02-23 14:07:46 -05:00
Jared
db3e7aa685 Refactor error handling in LdapDirectoryService to ensure proper unbinding and error propagation (#995) 2026-02-23 12:42:39 -05:00
Brandon
9997e988e6 update callers to vNext state service 2026-02-23 10:32:05 -05:00
Brandon
abdddacb06 merge state service re-write 2026-02-20 16:20:03 -05:00
Brandon
d5566c56b1 Migrate all remaining cjs files to esm 2026-02-19 17:45:04 -05:00
Brandon
06edf4cf91 flatten account structure using claude 2026-02-13 16:34:20 -05:00
Brandon Treston
3059934d4c remove substitute (#992) 2026-02-10 09:41:26 -05:00
Brandon
a0e74948bd fix integration test 2026-02-05 12:04:41 -05:00
Brandon
9f8018e8f8 fix type issues 2026-02-05 11:53:24 -05:00
Brandon
0bff38c459 add tests 2026-02-04 16:00:01 -05:00
Brandon
94ff20f69f scaffold new state service, add migration, initial commit 2026-01-29 14:36:38 -05:00
Brandon Treston
2854a2eba1 Update Angular to v21 (#972)
* update jest to v.30.2.0

* ng update 21 wip

* update @angular/cdk@21

* NG 21 WIP

* @ngtools-webpack@21 and jest-preset-angular@16

* updated jest, add babel & jest-enveironment-jsdom

* add missing polyfils for TextEncoder & TextDecoder

* cleanup lock file

* tsconfig cleanup

* fix import

* cleanup

* clean up
2026-01-21 08:37:52 +10:00
renovate[bot]
d1ac1e667e [deps]: Update eslint to v9 (#867)
* [deps]: Update eslint to v9

* resolve lint errors, upgrade eslint, replace unmaintained packages

* refresh lockfile

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Brandon <btreston@bitwarden.com>
Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com>
Co-authored-by: Thomas Rittson <trittson@bitwarden.com>
2025-12-19 19:48:36 -06:00
Thomas Rittson
a44eb28be8 [PM-26672] Add Google Workspace integration tests to CI pipeline (#909)
- reorganize integration test files to allow for future additions
- add Google Workspace integration tests to the Github workflow
- refactor to run tests selective based on changed files and use
  Azure Key Vault
2025-11-12 06:03:37 +10:00
Thomas Rittson
fe01b49df1 [PM-26671] Google workspace integration tests (#894)
Add tests for Google Workspace - not enabled in CI yet
2025-10-28 11:31:02 +10:00
Thomas Rittson
b13895bdd6 [PM-26669] Fix Google Workspace dynamic import error in CLI (#893)
* Revert "[PM-26454] Undo removal of core-js to fix dynamic import errors (#890)"

This reverts commit 7c27202dab.

This removes the core-js dependency again, because restoring it did not fix the bug.

* Downgrade googleapis to 149 to avoid ESM issue

* Exclude googleapis from updates
2025-10-09 07:10:03 +10:00
Thomas Rittson
7c27202dab [PM-26454] Undo removal of core-js to fix dynamic import errors (#890)
* Undo removal of core-js to fix dynamic import errors

* chore: update package-lock with npm install

---------

Co-authored-by: Vincent Salucci <vincesalucci21@gmail.com>
2025-10-02 11:06:49 -05:00
sso-bitwarden
77ea7a395d [PM-11981] Support LDAP membership with UID (#841)
---------

Co-authored-by: Thomas Rittson <trittson@bitwarden.com>
2025-10-01 11:34:36 +10:00
Thomas Rittson
489effb852 Remove core-js (#857)
Directory Connector runs on Electron and Node, both environments that we control.
Polyfills for old browsers are not required.
2025-08-20 13:40:00 +10:00
Brandon Treston
460de6a075 [PM-23377] electron v36 (#839)
* angular 18 upgrade

* wip

* wip

* remove @types/glob, fix jest version, use standalone: false

* clean up

* npm ci

* update electron to v36

* fix electron v36 update

* fix package-lock.json
2025-07-28 09:40:15 -04:00
Brandon Treston
3013e5f06f [PM-23399] Angular 19 and type script 5.6 (#835)
* angular 18 upgrade

* wip

* wip

* remove @types/glob, fix jest version, use standalone: false

* clean up

* npm ci
2025-07-24 09:50:16 -04:00
Thomas Rittson
3715df42d7 [PM-23631] Delete unused jslib models and misc code (#819)
* Remove unused cipher-related code from jslib

- Delete cipher.ts, cipherView.ts, sortedCiphersCache.ts
- Delete search-ciphers.pipe.ts and icon.component files
- Delete cipherData.ts, cipherResponse.ts, linkedIdType.ts
- Delete field-related files (fieldData.ts, field.ts, fieldApi.ts, fieldView.ts)
- Delete sync, emergency access, and attachment upload response files
- Delete card and identity view files
- Delete linkedFieldOption decorator
- Remove cipher methods from StateService abstractions and implementations
- Preserve ciphers property in AccountData as 'any' type for data compatibility

* Remove unused Send feature and related password manager code from jslib

- Delete Send domain models: send.ts, sendAccess.ts, sendFile.ts, sendText.ts
- Delete Send data models: sendData.ts, sendFileData.ts, sendTextData.ts
- Delete Send view models: sendView.ts, sendAccessView.ts, sendFileView.ts, sendTextView.ts
- Delete Send API models: sendFileApi.ts, sendTextApi.ts
- Delete Send response models: sendAccessResponse.ts, sendFileDownloadDataResponse.ts, sendFileUploadDataResponse.ts, sendResponse.ts
- Delete Send enum: sendType.ts
- Delete Send specs: send.spec.ts, sendAccess.spec.ts, sendFile.spec.ts, sendText.spec.ts
- Remove Send methods from StateService abstractions and implementations
- Remove getDecryptedSends/setDecryptedSends and getEncryptedSends/setEncryptedSends methods
- Change sends property in AccountData to 'any' type for data compatibility
- Fix import formatting and remove empty lines

* Remove misc unused password manager models from jslib

- Delete Core domain models: card.ts, identity.ts, secureNote.ts, attachment.ts
- Delete Core data models: cardData.ts, identityData.ts, secureNoteData.ts, attachmentData.ts
- Delete Core view models: secureNoteView.ts, attachmentView.ts
- Delete Core API models: cardApi.ts, identityApi.ts, secureNoteApi.ts
- Delete Core response models: attachmentResponse.ts
- Delete Core enum: secureNoteType.ts
- Delete Core specs: card.spec.ts, identity.spec.ts, secureNote.spec.ts, attachment.spec.ts

* Remove unused Organization files (folders/collections)

- Delete folder and collection domain models, data models, view models,
  response models, and spec files

* Remove unused UI/UX settings methods from state service

- Remove 20 password manager specific interface methods:
  - Autofill methods (4): getAutoFillOnPageLoadDefault, setAutoFillOnPageLoadDefault, getEnableAutoFillOnPageLoad, setEnableAutoFillOnPageLoad
  - Browser integration methods (4): getEnableBrowserIntegration, setEnableBrowserIntegration, getEnableBrowserIntegrationFingerprint, setEnableBrowserIntegrationFingerprint
  - Notification methods (4): getDisableAddLoginNotification, setDisableAddLoginNotification, getDisableChangedPasswordNotification, setDisableChangedPasswordNotification
  - Favicon methods (2): getDisableFavicon, setDisableFavicon
  - Gravatar methods (2): getEnableGravitars, setEnableGravitars
  - Card/Identity tab methods (4): getDontShowCardsCurrentTab, setDontShowCardsCurrentTab, getDontShowIdentitiesCurrentTab, setDontShowIdentitiesCurrentTab

* Fix build errors

* Delete leftover data models and stateService methods

* Delete iframes and passwordReprompt
2025-07-12 14:23:04 +10:00
Brandon Treston
c51e37e77d fix about 118n string (#818) 2025-07-09 16:53:21 -04:00
Jared McCannon
284206b735 [PM-32177] - Fixing Backward Compatibility with Azure AD (#813)
* Updating the fetching of the config and key to check entra and check azure afterwards.

* Making this camelCase to match other values.
2025-07-02 08:20:56 -05:00
Jared McCannon
dc64f7191e [PM-21187] Rename Azure AD to Entra ID (#797)
* Changed label to entraID

* Performed rename of Azure AD to Entra ID

* Added check to maintain backward compatibility.

* Swapping Azure for Entra

* one last spot

* Adding property for the data.json for backward compatibility.

Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com>

* Removing unneeded setting using the old azure property.

* Accidentally removed. Adding entra back in.

* Adding backward compatibility comment. Added here because it's required for SecureStorageKeys

* Adding backward compatibility comments.

* Fixing comment

* Removing unused fields.

---------

Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com>
2025-06-27 08:28:04 -05:00
Rui Tomé
3b3ea8ac47 [PM-15456] Update AzureDirectoryService to dynamically select Graph API endpoint based on identity authority (public or government) (#777)
Co-authored-by: bnagawiecki <107435978+bnagawiecki@users.noreply.github.com>
2025-06-02 14:00:07 +01:00
Brandon Treston
c5d4cb9fb6 fix null error (#782) 2025-05-14 11:12:01 -04:00
Brandon Treston
3573e201a6 [PM-20134] Fix overwriteExisting and largeImport causing users to be deleted (#737)
* Fix mixed up bools, use whole object

* disallow overwriteExisting on large syncs

* remove unused file

* add test, always set overwriteExisting to false for batched requests

* add more tests

* wip

* Clean up

---------

Co-authored-by: Thomas Rittson <trittson@bitwarden.com>
2025-04-30 09:26:15 -04:00
Brandon Treston
23d285a9f6 change g suite propertey name in example to match the docs (#739) 2025-04-15 09:51:08 -04:00
Vicki League
41ee0d82d5 [CL-570] Remove deprecated icons from use (#727) 2025-03-27 09:48:07 -04:00
Hendrik Heil
23c591f903 feat: disable archived google users (#715)
Google Workspace users in an "archived" state will be treated
as a disabled user by Directory Connector. e.g. they will be removed
from the organization if "remove disabled users during sync" is enabled.
2025-03-19 15:18:31 +10:00
Brandon Treston
2ea2fd701c [PM-14360] Import Batching (#703)
* initial implementation

* next iteration

* clean up

* cleanup

* fix test

* cleanup

* rename services, refactor, fix test logic

* fix DI

* update comment

* update comment

* resolve merge conflict

* register dependencies out of jslib, more cleanup

* fix failing test in build

* fix type error

* try fixing test error

* remove async from test setup

* attempt to fix test

* fix text

* fix test

* add ts-expect-error comment

* cleanup

---------

Co-authored-by: bnagawiecki <107435978+bnagawiecki@users.noreply.github.com>
2025-03-10 14:54:00 -04:00
Thomas Rittson
37c992f16b [PM-13007] Fix Active Directory externalId parsing (#693)
Return AD ObjectGuid attribute as buffer so it can be parsed properly
2024-12-19 07:43:47 +10:00
Thomas Rittson
91dfd7e0b7 [PM-13007] Replace ldapjs with ldapts (#641) 2024-11-01 12:58:52 +10:00
Brandon Treston
e3fbc4e731 Add warning message and help icon (#652) 2024-10-18 09:34:06 -04:00
Thomas Rittson
d65f42684e [PM-13008] Add ldap integration tests (#637) 2024-10-14 08:17:00 +10:00
renovate[bot]
493e819b1c [deps]: Update angular-eslint monorepo to v17.5.3 (#580)
* [deps]: Update angular-eslint monorepo to v17.5.3

* Run npm prettier

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Rui Tome <rtome@bitwarden.com>
2024-10-03 11:05:58 +01:00
Thomas Rittson
4652c6489f [AC-3043] Refactor AuthService to only use organization api key login (#622)
* Remove jslib authService and unused loginStrategies

* Delete KeyConnectorService

* Move OrganizationLoginStrategy into base LoginStrategy

* Remove unused code and services from loginStrategy

* Delete OrganizationService

* Move loginStrategy into authService
2024-09-23 08:46:38 +10:00
Thomas Rittson
9dc497dd13 [AC-3047] Refactor LoginCommand to only use organization api key login (#621)
* Add tests

* Remove unused code from LoginCommand and refactor

* Remove unused services

* Remove unused npm deps

* Install missing type-fest dep
2024-09-19 07:50:40 +10:00
renovate[bot]
6b1b6bf1c4 [deps]: Update bootstrap to v5 [SECURITY] (#585)
* [deps]: Update bootstrap to v5 [SECURITY]

* Use the color-contrast method instead of the deprecated color-yiq method

* Update settings component for bootstrap 5

* Update ApiKey component for bootstrap 5

* Update environment component for bootstrap 5

* Run prettier

* Revert back to data-dismiss

* Update modal close button attribute to use data-bs-dismiss instead of data-dismiss

* Run npm prettier

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Rui Tome <rtome@bitwarden.com>
2024-09-17 10:53:56 +01:00
renovate[bot]
4ae4cba877 [deps]: Update @types/node to v18.19.50 (#599)
* [deps]: Update @types/node to v18.19.50

* Adjust timer type

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Addison Beck <github@addisonbeck.com>
2024-09-16 11:17:57 -04:00
Thomas Rittson
dd10538d0f Add SafeProvider (#582) 2024-09-06 08:11:57 +10:00
Thomas Rittson
eae9cac931 [AC-3020] Remove unused jslib code - services (#575)
* Delete NotificationsService

* Remove SyncService

* Delete VaultTimeoutService

* Remove ProviderService

* Remove UserVerificationService

* Remove SendService

* Remove EventService

* Remove PasswordRepromptService

* Remove UsernameGenerationService

* Remove TotpService

* Remove CollectionService

* Remove FolderService

* Remove AuditService

* Remove CipherService and SearchService together

* Remove FileUploadService

* Remove SettingsService

* Remove SystemService

* Remove ElectronCryptoService

* Remove unused deps
2024-09-05 08:11:18 +10:00
Addison Beck
decada8745 Filter out deleted AD users unless otherwise instructed (#548) 2024-08-12 11:04:07 -04:00