mirror of
https://github.com/bitwarden/browser
synced 2026-02-28 18:43:26 +00:00
Remove Injectable decorator from class, use safeProvider.
This commit is contained in:
@@ -187,7 +187,10 @@ import { I18nService as I18nServiceAbstraction } from "@bitwarden/common/platfor
|
||||
import { KeyGenerationService as KeyGenerationServiceAbstraction } from "@bitwarden/common/platform/abstractions/key-generation.service";
|
||||
import { LogService } from "@bitwarden/common/platform/abstractions/log.service";
|
||||
import { MessagingService as MessagingServiceAbstraction } from "@bitwarden/common/platform/abstractions/messaging.service";
|
||||
import { PlatformUtilsService as PlatformUtilsServiceAbstraction } from "@bitwarden/common/platform/abstractions/platform-utils.service";
|
||||
import {
|
||||
PlatformUtilsService,
|
||||
PlatformUtilsService as PlatformUtilsServiceAbstraction,
|
||||
} from "@bitwarden/common/platform/abstractions/platform-utils.service";
|
||||
import { SdkClientFactory } from "@bitwarden/common/platform/abstractions/sdk/sdk-client-factory";
|
||||
import { SdkService } from "@bitwarden/common/platform/abstractions/sdk/sdk.service";
|
||||
import { StateService as StateServiceAbstraction } from "@bitwarden/common/platform/abstractions/state.service";
|
||||
@@ -324,7 +327,11 @@ import {
|
||||
import { SafeInjectionToken } from "@bitwarden/ui-common";
|
||||
// This import has been flagged as unallowed for this class. It may be involved in a circular dependency loop.
|
||||
// eslint-disable-next-line no-restricted-imports
|
||||
import { PasswordRepromptService } from "@bitwarden/vault";
|
||||
import {
|
||||
ChangeLoginPasswordService,
|
||||
DefaultChangeLoginPasswordService,
|
||||
PasswordRepromptService,
|
||||
} from "@bitwarden/vault";
|
||||
import {
|
||||
IndividualVaultExportService,
|
||||
IndividualVaultExportServiceAbstraction,
|
||||
@@ -1559,6 +1566,11 @@ const safeProviders: SafeProvider[] = [
|
||||
InternalMasterPasswordServiceAbstraction,
|
||||
],
|
||||
}),
|
||||
safeProvider({
|
||||
provide: ChangeLoginPasswordService,
|
||||
useClass: DefaultChangeLoginPasswordService,
|
||||
deps: [ApiService, PlatformUtilsService],
|
||||
}),
|
||||
];
|
||||
|
||||
@NgModule({
|
||||
|
||||
@@ -1,36 +1,16 @@
|
||||
import { Inject, Injectable } from "@angular/core";
|
||||
|
||||
import { ApiService } from "@bitwarden/common/abstractions/api.service";
|
||||
import { PlatformUtilsService } from "@bitwarden/common/platform/abstractions/platform-utils.service";
|
||||
import { Utils } from "@bitwarden/common/platform/misc/utils";
|
||||
import { CipherType } from "@bitwarden/common/vault/enums";
|
||||
import { CipherView } from "@bitwarden/common/vault/models/view/cipher.view";
|
||||
|
||||
import { ChangeLoginPasswordService } from "../abstractions/change-login-password.service";
|
||||
|
||||
interface PartialApiService {
|
||||
nativeFetch(request: Request): Promise<Response>;
|
||||
}
|
||||
interface PartialPlatformUtilsService {
|
||||
getClientType(): string;
|
||||
}
|
||||
@Injectable()
|
||||
export class DefaultChangeLoginPasswordService implements ChangeLoginPasswordService {
|
||||
private apiService: PartialApiService;
|
||||
private platformUtilsService: PartialPlatformUtilsService;
|
||||
|
||||
constructor(
|
||||
@Inject("ApiService") apiService: PartialApiService,
|
||||
@Inject("PlatformUtilsService") platformUtilsService: PartialPlatformUtilsService,
|
||||
) {
|
||||
this.apiService = apiService;
|
||||
this.platformUtilsService = platformUtilsService;
|
||||
}
|
||||
|
||||
static create(apiService: PartialApiService, platformUtilsService: PartialPlatformUtilsService) {
|
||||
const instance = new DefaultChangeLoginPasswordService(null!, null!);
|
||||
instance.apiService = apiService;
|
||||
instance.platformUtilsService = platformUtilsService;
|
||||
return instance;
|
||||
}
|
||||
private apiService: ApiService,
|
||||
private platformUtilsService: PlatformUtilsService,
|
||||
) {}
|
||||
|
||||
/**
|
||||
* @inheritDoc
|
||||
|
||||
Reference in New Issue
Block a user