From 5497063e7e79fd74c7dbef7ee3d30ba34b6bce52 Mon Sep 17 00:00:00 2001 From: Addison Beck Date: Tue, 1 Jul 2025 19:23:34 -0400 Subject: [PATCH] refactor(state): point storage imports to @bitwarden/storage-core (#15414) This change updates every import of StorageServiceProvider, AbstractStorageService, and ObservableStorageService throughout the common state code (including spec files) to pull from the new @bitwarden/storage-core package instead of their old relative paths. The cuts out one of the issues that needs to be resolved before state can hold its own as a library without importing common. --- .../implementations/default-active-user-state.spec.ts | 3 ++- .../implementations/default-global-state.provider.ts | 3 ++- .../state/implementations/default-global-state.ts | 6 ++---- .../implementations/default-single-user-state.provider.ts | 3 ++- .../state/implementations/default-single-user-state.ts | 6 ++---- .../state/implementations/specific-state.provider.spec.ts | 3 ++- .../src/platform/state/implementations/state-base.ts | 6 ++---- libs/common/src/platform/state/implementations/util.ts | 2 +- .../platform/state/state-event-registrar.service.spec.ts | 8 ++++++-- .../src/platform/state/state-event-runner.service.spec.ts | 8 ++++++-- .../src/platform/state/state-event-runner.service.ts | 3 ++- 11 files changed, 29 insertions(+), 22 deletions(-) diff --git a/libs/common/src/platform/state/implementations/default-active-user-state.spec.ts b/libs/common/src/platform/state/implementations/default-active-user-state.spec.ts index b73415d6b79..1cb1453a509 100644 --- a/libs/common/src/platform/state/implementations/default-active-user-state.spec.ts +++ b/libs/common/src/platform/state/implementations/default-active-user-state.spec.ts @@ -6,12 +6,13 @@ import { any, mock } from "jest-mock-extended"; import { BehaviorSubject, firstValueFrom, map, of, timeout } from "rxjs"; import { Jsonify } from "type-fest"; +import { StorageServiceProvider } from "@bitwarden/storage-core"; + import { awaitAsync, trackEmissions } from "../../../../spec"; import { FakeStorageService } from "../../../../spec/fake-storage.service"; import { Account } from "../../../auth/abstractions/account.service"; import { UserId } from "../../../types/guid"; import { LogService } from "../../abstractions/log.service"; -import { StorageServiceProvider } from "../../services/storage-service.provider"; import { StateDefinition } from "../state-definition"; import { StateEventRegistrarService } from "../state-event-registrar.service"; import { UserKeyDefinition } from "../user-key-definition"; diff --git a/libs/common/src/platform/state/implementations/default-global-state.provider.ts b/libs/common/src/platform/state/implementations/default-global-state.provider.ts index 18e9c21e75e..bd0cfc1dc9a 100644 --- a/libs/common/src/platform/state/implementations/default-global-state.provider.ts +++ b/libs/common/src/platform/state/implementations/default-global-state.provider.ts @@ -1,7 +1,8 @@ // FIXME: Update this file to be type safe and remove this and next line // @ts-strict-ignore +import { StorageServiceProvider } from "@bitwarden/storage-core"; + import { LogService } from "../../abstractions/log.service"; -import { StorageServiceProvider } from "../../services/storage-service.provider"; import { GlobalState } from "../global-state"; import { GlobalStateProvider } from "../global-state.provider"; import { KeyDefinition } from "../key-definition"; diff --git a/libs/common/src/platform/state/implementations/default-global-state.ts b/libs/common/src/platform/state/implementations/default-global-state.ts index c88e9303c8e..a06eb23e010 100644 --- a/libs/common/src/platform/state/implementations/default-global-state.ts +++ b/libs/common/src/platform/state/implementations/default-global-state.ts @@ -1,8 +1,6 @@ +import { AbstractStorageService, ObservableStorageService } from "@bitwarden/storage-core"; + import { LogService } from "../../abstractions/log.service"; -import { - AbstractStorageService, - ObservableStorageService, -} from "../../abstractions/storage.service"; import { GlobalState } from "../global-state"; import { KeyDefinition, globalKeyBuilder } from "../key-definition"; diff --git a/libs/common/src/platform/state/implementations/default-single-user-state.provider.ts b/libs/common/src/platform/state/implementations/default-single-user-state.provider.ts index 54e268e0b69..bef56ad2309 100644 --- a/libs/common/src/platform/state/implementations/default-single-user-state.provider.ts +++ b/libs/common/src/platform/state/implementations/default-single-user-state.provider.ts @@ -1,8 +1,9 @@ // FIXME: Update this file to be type safe and remove this and next line // @ts-strict-ignore +import { StorageServiceProvider } from "@bitwarden/storage-core"; + import { UserId } from "../../../types/guid"; import { LogService } from "../../abstractions/log.service"; -import { StorageServiceProvider } from "../../services/storage-service.provider"; import { StateEventRegistrarService } from "../state-event-registrar.service"; import { UserKeyDefinition } from "../user-key-definition"; import { SingleUserState } from "../user-state"; diff --git a/libs/common/src/platform/state/implementations/default-single-user-state.ts b/libs/common/src/platform/state/implementations/default-single-user-state.ts index 1dafd3aecad..db776c3d11d 100644 --- a/libs/common/src/platform/state/implementations/default-single-user-state.ts +++ b/libs/common/src/platform/state/implementations/default-single-user-state.ts @@ -1,11 +1,9 @@ import { Observable, combineLatest, of } from "rxjs"; +import { AbstractStorageService, ObservableStorageService } from "@bitwarden/storage-core"; + import { UserId } from "../../../types/guid"; import { LogService } from "../../abstractions/log.service"; -import { - AbstractStorageService, - ObservableStorageService, -} from "../../abstractions/storage.service"; import { StateEventRegistrarService } from "../state-event-registrar.service"; import { UserKeyDefinition } from "../user-key-definition"; import { CombinedState, SingleUserState } from "../user-state"; diff --git a/libs/common/src/platform/state/implementations/specific-state.provider.spec.ts b/libs/common/src/platform/state/implementations/specific-state.provider.spec.ts index 1b5a36445c9..6674c2577d7 100644 --- a/libs/common/src/platform/state/implementations/specific-state.provider.spec.ts +++ b/libs/common/src/platform/state/implementations/specific-state.provider.spec.ts @@ -1,10 +1,11 @@ import { mock } from "jest-mock-extended"; +import { StorageServiceProvider } from "@bitwarden/storage-core"; + import { mockAccountServiceWith } from "../../../../spec/fake-account-service"; import { FakeStorageService } from "../../../../spec/fake-storage.service"; import { UserId } from "../../../types/guid"; import { LogService } from "../../abstractions/log.service"; -import { StorageServiceProvider } from "../../services/storage-service.provider"; import { KeyDefinition } from "../key-definition"; import { StateDefinition } from "../state-definition"; import { StateEventRegistrarService } from "../state-event-registrar.service"; diff --git a/libs/common/src/platform/state/implementations/state-base.ts b/libs/common/src/platform/state/implementations/state-base.ts index 578720a2281..03140e1fe1f 100644 --- a/libs/common/src/platform/state/implementations/state-base.ts +++ b/libs/common/src/platform/state/implementations/state-base.ts @@ -15,12 +15,10 @@ import { } from "rxjs"; import { Jsonify } from "type-fest"; +import { AbstractStorageService, ObservableStorageService } from "@bitwarden/storage-core"; + import { StorageKey } from "../../../types/state"; import { LogService } from "../../abstractions/log.service"; -import { - AbstractStorageService, - ObservableStorageService, -} from "../../abstractions/storage.service"; import { DebugOptions } from "../key-definition"; import { populateOptionsWithDefault, StateUpdateOptions } from "../state-update-options"; diff --git a/libs/common/src/platform/state/implementations/util.ts b/libs/common/src/platform/state/implementations/util.ts index 0a9d76f6da5..14b11f6b553 100644 --- a/libs/common/src/platform/state/implementations/util.ts +++ b/libs/common/src/platform/state/implementations/util.ts @@ -1,6 +1,6 @@ import { Jsonify } from "type-fest"; -import { AbstractStorageService } from "../../abstractions/storage.service"; +import { AbstractStorageService } from "@bitwarden/storage-core"; export async function getStoredValue( key: string, diff --git a/libs/common/src/platform/state/state-event-registrar.service.spec.ts b/libs/common/src/platform/state/state-event-registrar.service.spec.ts index 2fae985033b..b022e2ce413 100644 --- a/libs/common/src/platform/state/state-event-registrar.service.spec.ts +++ b/libs/common/src/platform/state/state-event-registrar.service.spec.ts @@ -1,8 +1,12 @@ import { mock } from "jest-mock-extended"; +import { + AbstractStorageService, + ObservableStorageService, + StorageServiceProvider, +} from "@bitwarden/storage-core"; + import { FakeGlobalStateProvider } from "../../../spec"; -import { AbstractStorageService, ObservableStorageService } from "../abstractions/storage.service"; -import { StorageServiceProvider } from "../services/storage-service.provider"; import { StateDefinition } from "./state-definition"; import { STATE_LOCK_EVENT, StateEventRegistrarService } from "./state-event-registrar.service"; diff --git a/libs/common/src/platform/state/state-event-runner.service.spec.ts b/libs/common/src/platform/state/state-event-runner.service.spec.ts index 1c98099a518..4aef3d8516c 100644 --- a/libs/common/src/platform/state/state-event-runner.service.spec.ts +++ b/libs/common/src/platform/state/state-event-runner.service.spec.ts @@ -1,9 +1,13 @@ import { mock } from "jest-mock-extended"; +import { + AbstractStorageService, + ObservableStorageService, + StorageServiceProvider, +} from "@bitwarden/storage-core"; + import { FakeGlobalStateProvider } from "../../../spec"; import { UserId } from "../../types/guid"; -import { AbstractStorageService, ObservableStorageService } from "../abstractions/storage.service"; -import { StorageServiceProvider } from "../services/storage-service.provider"; import { STATE_LOCK_EVENT } from "./state-event-registrar.service"; import { StateEventRunnerService } from "./state-event-runner.service"; diff --git a/libs/common/src/platform/state/state-event-runner.service.ts b/libs/common/src/platform/state/state-event-runner.service.ts index f24c50f86d6..9e6f8f214e1 100644 --- a/libs/common/src/platform/state/state-event-runner.service.ts +++ b/libs/common/src/platform/state/state-event-runner.service.ts @@ -2,8 +2,9 @@ // @ts-strict-ignore import { firstValueFrom } from "rxjs"; +import { StorageServiceProvider } from "@bitwarden/storage-core"; + import { UserId } from "../../types/guid"; -import { StorageServiceProvider } from "../services/storage-service.provider"; import { GlobalState } from "./global-state"; import { GlobalStateProvider } from "./global-state.provider";