mirror of
https://github.com/bitwarden/browser
synced 2025-12-15 15:53:27 +00:00
Merge branch 'master' into feature/org-admin-refresh
This commit is contained in:
@@ -1,8 +1,7 @@
|
||||
import { EncString } from "@bitwarden/common/models/domain/encString";
|
||||
import { SymmetricCryptoKey } from "@bitwarden/common/models/domain/symmetricCryptoKey";
|
||||
|
||||
import { IEncrypted } from "../interfaces/IEncrypted";
|
||||
import { EncArrayBuffer } from "../models/domain/encArrayBuffer";
|
||||
import { EncString } from "../models/domain/encString";
|
||||
import { SymmetricCryptoKey } from "../models/domain/symmetricCryptoKey";
|
||||
|
||||
export abstract class AbstractEncryptService {
|
||||
abstract encrypt(plainValue: string | ArrayBuffer, key: SymmetricCryptoKey): Promise<EncString>;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { SecretVerificationRequest } from "@bitwarden/common/models/request/secretVerificationRequest";
|
||||
import { SecretVerificationRequest } from "../../models/request/secretVerificationRequest";
|
||||
|
||||
export abstract class AccountApiService {
|
||||
abstract deleteAccount(request: SecretVerificationRequest): Promise<void>;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { ServerConfigResponse } from "@bitwarden/common/models/response/server-config-response";
|
||||
import { ServerConfigResponse } from "../../models/response/server-config-response";
|
||||
|
||||
export abstract class ConfigApiServiceAbstraction {
|
||||
get: () => Promise<ServerConfigResponse>;
|
||||
|
||||
@@ -2,7 +2,7 @@ import {
|
||||
ServerConfigData,
|
||||
ThirdPartyServerConfigData,
|
||||
EnvironmentServerConfigData,
|
||||
} from "@bitwarden/common/models/data/server-config.data";
|
||||
} from "../../models/data/server-config.data";
|
||||
|
||||
const dayInMilliseconds = 24 * 3600 * 1000;
|
||||
const eighteenHoursInMilliseconds = 18 * 3600 * 1000;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { Folder } from "@bitwarden/common/models/domain/folder";
|
||||
import { FolderResponse } from "@bitwarden/common/models/response/folderResponse";
|
||||
import { Folder } from "../../models/domain/folder";
|
||||
import { FolderResponse } from "../../models/response/folderResponse";
|
||||
|
||||
export class FolderApiServiceAbstraction {
|
||||
save: (folder: Folder) => Promise<any>;
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
import { PolicyType } from "@bitwarden/common/enums/policyType";
|
||||
import { MasterPasswordPolicyOptions } from "@bitwarden/common/models/domain/masterPasswordPolicyOptions";
|
||||
import { Policy } from "@bitwarden/common/models/domain/policy";
|
||||
import { PolicyRequest } from "@bitwarden/common/models/request/policyRequest";
|
||||
import { ListResponse } from "@bitwarden/common/models/response/listResponse";
|
||||
import { PolicyResponse } from "@bitwarden/common/models/response/policyResponse";
|
||||
import { PolicyType } from "../../enums/policyType";
|
||||
import { MasterPasswordPolicyOptions } from "../../models/domain/masterPasswordPolicyOptions";
|
||||
import { Policy } from "../../models/domain/policy";
|
||||
import { PolicyRequest } from "../../models/request/policyRequest";
|
||||
import { ListResponse } from "../../models/response/listResponse";
|
||||
import { PolicyResponse } from "../../models/response/policyResponse";
|
||||
|
||||
export class PolicyApiServiceAbstraction {
|
||||
getPolicy: (organizationId: string, type: PolicyType) => Promise<PolicyResponse>;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { VerifyOTPRequest } from "@bitwarden/common/models/request/account/verifyOTPRequest";
|
||||
import { VerifyOTPRequest } from "../../models/request/account/verifyOTPRequest";
|
||||
|
||||
export abstract class UserVerificationApiServiceAbstraction {
|
||||
postAccountVerifyOTP: (request: VerifyOTPRequest) => Promise<void>;
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
/* eslint-disable no-useless-escape */
|
||||
import * as tldjs from "tldjs";
|
||||
|
||||
import { CryptoService } from "@bitwarden/common/abstractions/crypto.service";
|
||||
|
||||
import { AbstractEncryptService } from "../abstractions/abstractEncrypt.service";
|
||||
import { CryptoService } from "../abstractions/crypto.service";
|
||||
import { I18nService } from "../abstractions/i18n.service";
|
||||
|
||||
const nodeURL = typeof window === "undefined" ? require("url") : null;
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
import { ScimProviderType } from "@bitwarden/common/enums/scimProviderType";
|
||||
|
||||
import { ScimProviderType } from "../../enums/scimProviderType";
|
||||
import { BaseResponse } from "../response/baseResponse";
|
||||
|
||||
export class ScimConfigApi extends BaseResponse {
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
import { Utils } from "@bitwarden/common/misc/utils";
|
||||
|
||||
import { makeStaticByteArray } from "../../../spec/utils";
|
||||
import { Utils } from "../../misc/utils";
|
||||
|
||||
import { AccountKeys, EncryptionPair } from "./account";
|
||||
import { SymmetricCryptoKey } from "./symmetricCryptoKey";
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
import { Except, Jsonify } from "type-fest";
|
||||
|
||||
import { Utils } from "@bitwarden/common/misc/utils";
|
||||
import { DeepJsonify } from "@bitwarden/common/types/deep-jsonify";
|
||||
|
||||
import { AuthenticationStatus } from "../../enums/authenticationStatus";
|
||||
import { KdfType } from "../../enums/kdfType";
|
||||
import { UriMatchType } from "../../enums/uriMatchType";
|
||||
import { Utils } from "../../misc/utils";
|
||||
import { DeepJsonify } from "../../types/deep-jsonify";
|
||||
import { CipherData } from "../data/cipherData";
|
||||
import { CollectionData } from "../data/collectionData";
|
||||
import { EncryptedOrganizationKeyData } from "../data/encryptedOrganizationKeyData";
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import { Jsonify } from "type-fest";
|
||||
|
||||
import { Utils } from "../../misc/utils";
|
||||
import { AttachmentData } from "../data/attachmentData";
|
||||
import { AttachmentView } from "../view/attachmentView";
|
||||
@@ -90,4 +92,18 @@ export class Attachment extends Domain {
|
||||
);
|
||||
return a;
|
||||
}
|
||||
|
||||
static fromJSON(obj: Partial<Jsonify<Attachment>>): Attachment {
|
||||
if (obj == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
const key = EncString.fromJSON(obj.key);
|
||||
const fileName = EncString.fromJSON(obj.fileName);
|
||||
|
||||
return Object.assign(new Attachment(), obj, {
|
||||
key,
|
||||
fileName,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import { Jsonify } from "type-fest";
|
||||
|
||||
import { CardData } from "../data/cardData";
|
||||
import { CardView } from "../view/cardView";
|
||||
|
||||
@@ -62,4 +64,25 @@ export class Card extends Domain {
|
||||
});
|
||||
return c;
|
||||
}
|
||||
|
||||
static fromJSON(obj: Partial<Jsonify<Card>>): Card {
|
||||
if (obj == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
const cardholderName = EncString.fromJSON(obj.cardholderName);
|
||||
const brand = EncString.fromJSON(obj.brand);
|
||||
const number = EncString.fromJSON(obj.number);
|
||||
const expMonth = EncString.fromJSON(obj.expMonth);
|
||||
const expYear = EncString.fromJSON(obj.expYear);
|
||||
const code = EncString.fromJSON(obj.code);
|
||||
return Object.assign(new Card(), obj, {
|
||||
cardholderName,
|
||||
brand,
|
||||
number,
|
||||
expMonth,
|
||||
expYear,
|
||||
code,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import { Jsonify } from "type-fest";
|
||||
|
||||
import { CipherRepromptType } from "../../enums/cipherRepromptType";
|
||||
import { CipherType } from "../../enums/cipherType";
|
||||
import { CipherData } from "../data/cipherData";
|
||||
@@ -234,4 +236,48 @@ export class Cipher extends Domain {
|
||||
}
|
||||
return c;
|
||||
}
|
||||
|
||||
static fromJSON(obj: Jsonify<Cipher>) {
|
||||
if (obj == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
const domain = new Cipher();
|
||||
const name = EncString.fromJSON(obj.name);
|
||||
const notes = EncString.fromJSON(obj.notes);
|
||||
const revisionDate = obj.revisionDate == null ? null : new Date(obj.revisionDate);
|
||||
const deletedDate = obj.deletedDate == null ? null : new Date(obj.deletedDate);
|
||||
const attachments = obj.attachments?.map((a: any) => Attachment.fromJSON(a));
|
||||
const fields = obj.fields?.map((f: any) => Field.fromJSON(f));
|
||||
const passwordHistory = obj.passwordHistory?.map((ph: any) => Password.fromJSON(ph));
|
||||
|
||||
Object.assign(domain, obj, {
|
||||
name,
|
||||
notes,
|
||||
revisionDate,
|
||||
deletedDate,
|
||||
attachments,
|
||||
fields,
|
||||
passwordHistory,
|
||||
});
|
||||
|
||||
switch (obj.type) {
|
||||
case CipherType.Card:
|
||||
domain.card = Card.fromJSON(obj.card);
|
||||
break;
|
||||
case CipherType.Identity:
|
||||
domain.identity = Identity.fromJSON(obj.identity);
|
||||
break;
|
||||
case CipherType.Login:
|
||||
domain.login = Login.fromJSON(obj.login);
|
||||
break;
|
||||
case CipherType.SecureNote:
|
||||
domain.secureNote = SecureNote.fromJSON(obj.secureNote);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return domain;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { EncryptionType } from "@bitwarden/common/enums/encryptionType";
|
||||
import { IEncrypted } from "@bitwarden/common/interfaces/IEncrypted";
|
||||
import { Utils } from "@bitwarden/common/misc/utils";
|
||||
import { EncryptionType } from "../../enums/encryptionType";
|
||||
import { IEncrypted } from "../../interfaces/IEncrypted";
|
||||
import { Utils } from "../../misc/utils";
|
||||
|
||||
const ENC_TYPE_LENGTH = 1;
|
||||
const IV_LENGTH = 16;
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
import { Jsonify } from "type-fest";
|
||||
|
||||
import { IEncrypted } from "@bitwarden/common/interfaces/IEncrypted";
|
||||
|
||||
import { EncryptionType } from "../../enums/encryptionType";
|
||||
import { IEncrypted } from "../../interfaces/IEncrypted";
|
||||
import { Utils } from "../../misc/utils";
|
||||
|
||||
import { SymmetricCryptoKey } from "./symmetricCryptoKey";
|
||||
@@ -45,6 +44,10 @@ export class EncString implements IEncrypted {
|
||||
}
|
||||
|
||||
static fromJSON(obj: Jsonify<EncString>): EncString {
|
||||
if (obj == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return new EncString(obj);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { Utils } from "@bitwarden/common/misc/utils";
|
||||
import { Utils } from "../../misc/utils";
|
||||
|
||||
import { EncryptionPair } from "./account";
|
||||
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import { Jsonify } from "type-fest";
|
||||
|
||||
import { FieldType } from "../../enums/fieldType";
|
||||
import { LinkedIdType } from "../../enums/linkedIdType";
|
||||
import { FieldData } from "../data/fieldData";
|
||||
@@ -59,4 +61,18 @@ export class Field extends Domain {
|
||||
);
|
||||
return f;
|
||||
}
|
||||
|
||||
static fromJSON(obj: Partial<Jsonify<Field>>): Field {
|
||||
if (obj == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
const name = EncString.fromJSON(obj.name);
|
||||
const value = EncString.fromJSON(obj.value);
|
||||
|
||||
return Object.assign(new Field(), obj, {
|
||||
name,
|
||||
value,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import { Jsonify } from "type-fest";
|
||||
|
||||
import { IdentityData } from "../data/identityData";
|
||||
import { IdentityView } from "../view/identityView";
|
||||
|
||||
@@ -110,4 +112,50 @@ export class Identity extends Domain {
|
||||
});
|
||||
return i;
|
||||
}
|
||||
|
||||
static fromJSON(obj: Jsonify<Identity>): Identity {
|
||||
if (obj == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
const title = EncString.fromJSON(obj.title);
|
||||
const firstName = EncString.fromJSON(obj.firstName);
|
||||
const middleName = EncString.fromJSON(obj.middleName);
|
||||
const lastName = EncString.fromJSON(obj.lastName);
|
||||
const address1 = EncString.fromJSON(obj.address1);
|
||||
const address2 = EncString.fromJSON(obj.address2);
|
||||
const address3 = EncString.fromJSON(obj.address3);
|
||||
const city = EncString.fromJSON(obj.city);
|
||||
const state = EncString.fromJSON(obj.state);
|
||||
const postalCode = EncString.fromJSON(obj.postalCode);
|
||||
const country = EncString.fromJSON(obj.country);
|
||||
const company = EncString.fromJSON(obj.company);
|
||||
const email = EncString.fromJSON(obj.email);
|
||||
const phone = EncString.fromJSON(obj.phone);
|
||||
const ssn = EncString.fromJSON(obj.ssn);
|
||||
const username = EncString.fromJSON(obj.username);
|
||||
const passportNumber = EncString.fromJSON(obj.passportNumber);
|
||||
const licenseNumber = EncString.fromJSON(obj.licenseNumber);
|
||||
|
||||
return Object.assign(new Identity(), obj, {
|
||||
title,
|
||||
firstName,
|
||||
middleName,
|
||||
lastName,
|
||||
address1,
|
||||
address2,
|
||||
address3,
|
||||
city,
|
||||
state,
|
||||
postalCode,
|
||||
country,
|
||||
company,
|
||||
email,
|
||||
phone,
|
||||
ssn,
|
||||
username,
|
||||
passportNumber,
|
||||
licenseNumber,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
import { SymmetricCryptoKey } from "@bitwarden/common/models/domain/symmetricCryptoKey";
|
||||
|
||||
import { AuthenticationType } from "../../enums/authenticationType";
|
||||
import { SymmetricCryptoKey } from "../../models/domain/symmetricCryptoKey";
|
||||
import { TokenRequestTwoFactor } from "../request/identityToken/tokenRequestTwoFactor";
|
||||
|
||||
export class PasswordLogInCredentials {
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import { Jsonify } from "type-fest";
|
||||
|
||||
import { LoginData } from "../data/loginData";
|
||||
import { LoginView } from "../view/loginView";
|
||||
|
||||
@@ -85,4 +87,25 @@ export class Login extends Domain {
|
||||
|
||||
return l;
|
||||
}
|
||||
|
||||
static fromJSON(obj: Partial<Jsonify<Login>>): Login {
|
||||
if (obj == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
const username = EncString.fromJSON(obj.username);
|
||||
const password = EncString.fromJSON(obj.password);
|
||||
const totp = EncString.fromJSON(obj.totp);
|
||||
const passwordRevisionDate =
|
||||
obj.passwordRevisionDate == null ? null : new Date(obj.passwordRevisionDate);
|
||||
const uris = obj.uris?.map((uri: any) => LoginUri.fromJSON(uri));
|
||||
|
||||
return Object.assign(new Login(), obj, {
|
||||
username,
|
||||
password,
|
||||
totp,
|
||||
passwordRevisionDate: passwordRevisionDate,
|
||||
uris: uris,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import { Jsonify } from "type-fest";
|
||||
|
||||
import { UriMatchType } from "../../enums/uriMatchType";
|
||||
import { LoginUriData } from "../data/loginUriData";
|
||||
import { LoginUriView } from "../view/loginUriView";
|
||||
@@ -51,4 +53,15 @@ export class LoginUri extends Domain {
|
||||
);
|
||||
return u;
|
||||
}
|
||||
|
||||
static fromJSON(obj: Jsonify<LoginUri>): LoginUri {
|
||||
if (obj == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
const uri = EncString.fromJSON(obj.uri);
|
||||
return Object.assign(new LoginUri(), obj, {
|
||||
uri,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import { Jsonify } from "type-fest";
|
||||
|
||||
import { PasswordHistoryData } from "../data/passwordHistoryData";
|
||||
import { PasswordHistoryView } from "../view/passwordHistoryView";
|
||||
|
||||
@@ -40,4 +42,18 @@ export class Password extends Domain {
|
||||
});
|
||||
return ph;
|
||||
}
|
||||
|
||||
static fromJSON(obj: Partial<Jsonify<Password>>): Password {
|
||||
if (obj == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
const password = EncString.fromJSON(obj.password);
|
||||
const lastUsedDate = obj.lastUsedDate == null ? null : new Date(obj.lastUsedDate);
|
||||
|
||||
return Object.assign(new Password(), obj, {
|
||||
password,
|
||||
lastUsedDate,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import { Jsonify } from "type-fest";
|
||||
|
||||
import { SecureNoteType } from "../../enums/secureNoteType";
|
||||
import { SecureNoteData } from "../data/secureNoteData";
|
||||
import { SecureNoteView } from "../view/secureNoteView";
|
||||
@@ -26,4 +28,12 @@ export class SecureNote extends Domain {
|
||||
n.type = this.type;
|
||||
return n;
|
||||
}
|
||||
|
||||
static fromJSON(obj: Jsonify<SecureNote>): SecureNote {
|
||||
if (obj == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return Object.assign(new SecureNote(), obj);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
import { Jsonify } from "type-fest";
|
||||
|
||||
import { Utils } from "@bitwarden/common/misc/utils";
|
||||
|
||||
import { EncryptionType } from "../../enums/encryptionType";
|
||||
import { Utils } from "../../misc/utils";
|
||||
|
||||
export class SymmetricCryptoKey {
|
||||
key: ArrayBuffer;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { ScimProviderType } from "@bitwarden/common/enums/scimProviderType";
|
||||
import { ScimProviderType } from "../../enums/scimProviderType";
|
||||
|
||||
export class ScimConfigRequest {
|
||||
constructor(private enabled: boolean, private scimProvider: ScimProviderType = null) {}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { DeviceType } from "@bitwarden/common/enums/deviceType";
|
||||
import { DeviceType } from "../../enums/deviceType";
|
||||
|
||||
import { BaseResponse } from "./baseResponse";
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { AccountApiService as AccountApiServiceAbstraction } from "@bitwarden/common/abstractions/account/account-api.service.abstraction";
|
||||
import { ApiService } from "@bitwarden/common/abstractions/api.service";
|
||||
import { SecretVerificationRequest } from "@bitwarden/common/models/request/secretVerificationRequest";
|
||||
import { AccountApiService as AccountApiServiceAbstraction } from "../../abstractions/account/account-api.service.abstraction";
|
||||
import { ApiService } from "../../abstractions/api.service";
|
||||
import { SecretVerificationRequest } from "../../models/request/secretVerificationRequest";
|
||||
|
||||
export class AccountApiService implements AccountApiServiceAbstraction {
|
||||
constructor(private apiService: ApiService) {}
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
import { AccountApiService } from "@bitwarden/common/abstractions/account/account-api.service.abstraction";
|
||||
import { LogService } from "@bitwarden/common/abstractions/log.service";
|
||||
import { MessagingService } from "@bitwarden/common/abstractions/messaging.service";
|
||||
import { UserVerificationService } from "@bitwarden/common/abstractions/userVerification/userVerification.service.abstraction";
|
||||
|
||||
import { AccountApiService } from "../../abstractions/account/account-api.service.abstraction";
|
||||
import { AccountService as AccountServiceAbstraction } from "../../abstractions/account/account.service.abstraction";
|
||||
import { LogService } from "../../abstractions/log.service";
|
||||
import { MessagingService } from "../../abstractions/messaging.service";
|
||||
import { UserVerificationService } from "../../abstractions/userVerification/userVerification.service.abstraction";
|
||||
import { Verification } from "../../types/verification";
|
||||
|
||||
export class AccountService implements AccountServiceAbstraction {
|
||||
|
||||
@@ -32,7 +32,7 @@ export class AnonymousHubService implements AnonymousHubServiceAbstraction {
|
||||
this.url = this.environmentService.getNotificationsUrl();
|
||||
|
||||
this.anonHubConnection = new HubConnectionBuilder()
|
||||
.withUrl(this.url + "/anonymousHub?Token=" + token, {
|
||||
.withUrl(this.url + "/anonymous-hub?Token=" + token, {
|
||||
skipNegotiation: true,
|
||||
transport: HttpTransportType.WebSockets,
|
||||
})
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { ApiService } from "@bitwarden/common/abstractions/api.service";
|
||||
import { ConfigApiServiceAbstraction as ConfigApiServiceAbstraction } from "@bitwarden/common/abstractions/config/config-api.service.abstraction";
|
||||
import { ServerConfigResponse } from "@bitwarden/common/models/response/server-config-response";
|
||||
import { ApiService } from "../../abstractions/api.service";
|
||||
import { ConfigApiServiceAbstraction as ConfigApiServiceAbstraction } from "../../abstractions/config/config-api.service.abstraction";
|
||||
import { ServerConfigResponse } from "../../models/response/server-config-response";
|
||||
|
||||
export class ConfigApiService implements ConfigApiServiceAbstraction {
|
||||
constructor(private apiService: ApiService) {}
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
import { BehaviorSubject, concatMap, map, switchMap, timer, EMPTY } from "rxjs";
|
||||
|
||||
import { ServerConfigData } from "@bitwarden/common/models/data/server-config.data";
|
||||
|
||||
import { ConfigApiServiceAbstraction } from "../../abstractions/config/config-api.service.abstraction";
|
||||
import { ConfigServiceAbstraction } from "../../abstractions/config/config.service.abstraction";
|
||||
import { ServerConfig } from "../../abstractions/config/server-config";
|
||||
import { StateService } from "../../abstractions/state.service";
|
||||
import { ServerConfigData } from "../../models/data/server-config.data";
|
||||
|
||||
export class ConfigService implements ConfigServiceAbstraction {
|
||||
private _serverConfig = new BehaviorSubject<ServerConfig | null>(null);
|
||||
|
||||
@@ -1,14 +1,13 @@
|
||||
import { CryptoFunctionService } from "@bitwarden/common/abstractions/cryptoFunction.service";
|
||||
import { LogService } from "@bitwarden/common/abstractions/log.service";
|
||||
import { Utils } from "@bitwarden/common/misc/utils";
|
||||
import { EncString } from "@bitwarden/common/models/domain/encString";
|
||||
import { EncryptedObject } from "@bitwarden/common/models/domain/encryptedObject";
|
||||
import { SymmetricCryptoKey } from "@bitwarden/common/models/domain/symmetricCryptoKey";
|
||||
|
||||
import { AbstractEncryptService } from "../abstractions/abstractEncrypt.service";
|
||||
import { CryptoFunctionService } from "../abstractions/cryptoFunction.service";
|
||||
import { LogService } from "../abstractions/log.service";
|
||||
import { EncryptionType } from "../enums/encryptionType";
|
||||
import { IEncrypted } from "../interfaces/IEncrypted";
|
||||
import { Utils } from "../misc/utils";
|
||||
import { EncArrayBuffer } from "../models/domain/encArrayBuffer";
|
||||
import { EncString } from "../models/domain/encString";
|
||||
import { EncryptedObject } from "../models/domain/encryptedObject";
|
||||
import { SymmetricCryptoKey } from "../models/domain/symmetricCryptoKey";
|
||||
|
||||
export class EncryptService implements AbstractEncryptService {
|
||||
constructor(
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
import { ApiService } from "@bitwarden/common/abstractions/api.service";
|
||||
import { FolderApiServiceAbstraction } from "@bitwarden/common/abstractions/folder/folder-api.service.abstraction";
|
||||
import { InternalFolderService } from "@bitwarden/common/abstractions/folder/folder.service.abstraction";
|
||||
import { FolderData } from "@bitwarden/common/models/data/folderData";
|
||||
import { Folder } from "@bitwarden/common/models/domain/folder";
|
||||
import { FolderRequest } from "@bitwarden/common/models/request/folderRequest";
|
||||
import { FolderResponse } from "@bitwarden/common/models/response/folderResponse";
|
||||
import { ApiService } from "../../abstractions/api.service";
|
||||
import { FolderApiServiceAbstraction } from "../../abstractions/folder/folder-api.service.abstraction";
|
||||
import { InternalFolderService } from "../../abstractions/folder/folder.service.abstraction";
|
||||
import { FolderData } from "../../models/data/folderData";
|
||||
import { Folder } from "../../models/domain/folder";
|
||||
import { FolderRequest } from "../../models/request/folderRequest";
|
||||
import { FolderResponse } from "../../models/response/folderResponse";
|
||||
|
||||
export class FolderApiService implements FolderApiServiceAbstraction {
|
||||
constructor(private folderService: InternalFolderService, private apiService: ApiService) {}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import {
|
||||
AbstractStorageService,
|
||||
MemoryStorageServiceInterface,
|
||||
} from "@bitwarden/common/abstractions/storage.service";
|
||||
} from "../abstractions/storage.service";
|
||||
|
||||
export class MemoryStorageService
|
||||
extends AbstractStorageService
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { EventService } from "@bitwarden/common/abstractions/event.service";
|
||||
import { EventType } from "@bitwarden/common/enums/eventType";
|
||||
import { EventService } from "../abstractions/event.service";
|
||||
import { EventType } from "../enums/eventType";
|
||||
|
||||
/**
|
||||
* If you want to use this, don't.
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
import { ApiService } from "@bitwarden/common/abstractions/api.service";
|
||||
import { OrganizationService } from "@bitwarden/common/abstractions/organization/organization.service.abstraction";
|
||||
import { PolicyApiServiceAbstraction } from "@bitwarden/common/abstractions/policy/policy-api.service.abstraction";
|
||||
import { InternalPolicyService } from "@bitwarden/common/abstractions/policy/policy.service.abstraction";
|
||||
import { StateService } from "@bitwarden/common/abstractions/state.service";
|
||||
import { PolicyType } from "@bitwarden/common/enums/policyType";
|
||||
import { PolicyData } from "@bitwarden/common/models/data/policyData";
|
||||
import { MasterPasswordPolicyOptions } from "@bitwarden/common/models/domain/masterPasswordPolicyOptions";
|
||||
import { Policy } from "@bitwarden/common/models/domain/policy";
|
||||
import { PolicyRequest } from "@bitwarden/common/models/request/policyRequest";
|
||||
import { ListResponse } from "@bitwarden/common/models/response/listResponse";
|
||||
import { PolicyResponse } from "@bitwarden/common/models/response/policyResponse";
|
||||
import { ApiService } from "../../abstractions/api.service";
|
||||
import { OrganizationService } from "../../abstractions/organization/organization.service.abstraction";
|
||||
import { PolicyApiServiceAbstraction } from "../../abstractions/policy/policy-api.service.abstraction";
|
||||
import { InternalPolicyService } from "../../abstractions/policy/policy.service.abstraction";
|
||||
import { StateService } from "../../abstractions/state.service";
|
||||
import { PolicyType } from "../../enums/policyType";
|
||||
import { PolicyData } from "../../models/data/policyData";
|
||||
import { MasterPasswordPolicyOptions } from "../../models/domain/masterPasswordPolicyOptions";
|
||||
import { Policy } from "../../models/domain/policy";
|
||||
import { PolicyRequest } from "../../models/request/policyRequest";
|
||||
import { ListResponse } from "../../models/response/listResponse";
|
||||
import { PolicyResponse } from "../../models/response/policyResponse";
|
||||
|
||||
export class PolicyApiService implements PolicyApiServiceAbstraction {
|
||||
constructor(
|
||||
|
||||
Reference in New Issue
Block a user