mirror of
https://github.com/bitwarden/browser
synced 2026-02-18 10:23:52 +00:00
Separates policy response model for individual policy data
This commit is contained in:
@@ -3,10 +3,11 @@ import { PolicyType } from "../../enums";
|
||||
import { MasterPasswordPolicyOptions } from "../../models/domain/master-password-policy-options";
|
||||
import { Policy } from "../../models/domain/policy";
|
||||
import { PolicyRequest } from "../../models/request/policy.request";
|
||||
import { PolicyStatusResponse } from "../../models/response/policy-status.response";
|
||||
import { PolicyResponse } from "../../models/response/policy.response";
|
||||
|
||||
export abstract class PolicyApiServiceAbstraction {
|
||||
abstract getPolicy: (organizationId: string, type: PolicyType) => Promise<PolicyResponse>;
|
||||
abstract getPolicy: (organizationId: string, type: PolicyType) => Promise<PolicyStatusResponse>;
|
||||
abstract getPolicies: (organizationId: string) => Promise<ListResponse<PolicyResponse>>;
|
||||
|
||||
abstract getPoliciesByToken: (
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
import { BaseResponse } from "../../../models/response/base.response";
|
||||
import { PolicyType } from "../../enums";
|
||||
|
||||
export class PolicyStatusResponse extends BaseResponse {
|
||||
organizationId: string;
|
||||
type: PolicyType;
|
||||
data: any;
|
||||
enabled: boolean;
|
||||
canToggleState: boolean;
|
||||
|
||||
constructor(response: any) {
|
||||
super(response);
|
||||
this.organizationId = this.getResponseProperty("OrganizationId");
|
||||
this.type = this.getResponseProperty("Type");
|
||||
this.data = this.getResponseProperty("Data");
|
||||
this.enabled = this.getResponseProperty("Enabled");
|
||||
this.canToggleState = this.getResponseProperty("CanToggleState") ?? true;
|
||||
}
|
||||
}
|
||||
@@ -14,6 +14,7 @@ import { PolicyData } from "../../models/data/policy.data";
|
||||
import { MasterPasswordPolicyOptions } from "../../models/domain/master-password-policy-options";
|
||||
import { Policy } from "../../models/domain/policy";
|
||||
import { PolicyRequest } from "../../models/request/policy.request";
|
||||
import { PolicyStatusResponse } from "../../models/response/policy-status.response";
|
||||
import { PolicyResponse } from "../../models/response/policy.response";
|
||||
|
||||
export class PolicyApiService implements PolicyApiServiceAbstraction {
|
||||
@@ -23,7 +24,7 @@ export class PolicyApiService implements PolicyApiServiceAbstraction {
|
||||
private accountService: AccountService,
|
||||
) {}
|
||||
|
||||
async getPolicy(organizationId: string, type: PolicyType): Promise<PolicyResponse> {
|
||||
async getPolicy(organizationId: string, type: PolicyType): Promise<PolicyStatusResponse> {
|
||||
const r = await this.apiService.send(
|
||||
"GET",
|
||||
"/organizations/" + organizationId + "/policies/" + type,
|
||||
|
||||
Reference in New Issue
Block a user