@ampsec/platform-client 54.3.0 → 55.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,7 +4,7 @@ import { AmpRestClientOptions, RestClient } from './rest';
4
4
  import { PlatformJobSpecDto, PlatformJobSpecUpsertDto } from '../dto/platform/platform.jobSpec.dto';
5
5
  import { PlatformJobExecutionStateDto, PlatformJobExecutionStateUpsertDto } from '../dto/platform/platform.jobExecutionState.dto';
6
6
  import { EnumService } from './rest/EnumService';
7
- import { AmpSettingsService } from './settings.service';
7
+ import { AmpSdkSettingsService } from './settings.service';
8
8
  import { AmpSaaSEntityService, AmpSdkSaasAssetService, AmpSdkSaasComponentService, AmpSdkSaasUserService } from './saasEntity.service';
9
9
  export type AmpSdkOptions = AmpRestClientOptions;
10
10
  /**
@@ -31,7 +31,7 @@ export declare class AmpSdkServices {
31
31
  readonly saasAssets: AmpSdkSaasAssetService;
32
32
  readonly saasComponents: AmpSdkSaasComponentService;
33
33
  readonly saasUsers: AmpSdkSaasUserService;
34
- readonly settings: AmpSettingsService;
34
+ readonly settings: AmpSdkSettingsService;
35
35
  readonly tenants: AmpSdkTenantService<TenantUpsertDto, TenantDto>;
36
36
  readonly users: AmpSdkUserService;
37
37
  readonly workflowsProgress: AmpEntityService<PlatformWorkflowProgressUpsertDto, PlatformWorkflowProgressDto>;
@@ -32,7 +32,7 @@ class AmpSdkServices {
32
32
  this.saasAssets = new saasEntity_service_1.AmpSdkSaasAssetService(rest, constants_1.TARGET_API_PLATFORM);
33
33
  this.saasComponents = new saasEntity_service_1.AmpSdkSaasComponentService(rest, constants_1.TARGET_API_PLATFORM);
34
34
  this.saasUsers = new saasEntity_service_1.AmpSdkSaasUserService(rest, constants_1.TARGET_API_PLATFORM);
35
- this.settings = new settings_service_1.AmpSettingsService(rest, constants_1.TARGET_API_PLATFORM);
35
+ this.settings = new settings_service_1.AmpSdkSettingsService(rest);
36
36
  this.tenants = new entity_service_1.AmpEntityServiceImpl(rest, constants_1.KIND.TENANTS, constants_1.TARGET_API_PLATFORM);
37
37
  this.users = new entity_service_1.AmpSdkUserService(rest, constants_1.TARGET_API_PLATFORM);
38
38
  this.workflowsProgress = new entity_service_1.AmpEntityServiceImpl(rest, constants_1.KIND.WORKFLOW_PROGRESS, constants_1.TARGET_API_PLATFORM);
@@ -1 +1 @@
1
- {"version":3,"file":"AmpSdk.js","sourceRoot":"","sources":["../../../src/services/AmpSdk.ts"],"names":[],"mappings":";;;AAoBA,qDAAoI;AACpI,iCAA0E;AAC1E,2CAAsD;AAGtD,oDAAmE;AACnE,yDAAsD;AACtD,6DAA+J;AAI/J;;;;;;;;GAQG;AACH,MAAa,cAAc;IAoBzB,YAAY,IAAgB;QAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,qCAAoB,CAA2C,IAAI,EAAE,gBAAI,CAAC,MAAM,EAAE,+BAAmB,CAAC,CAAC;QACzH,IAAI,CAAC,KAAK,GAAG,IAAI,mCAAkB,CAAC,IAAI,EAAE,+BAAmB,CAAC,CAAC;QAC/D,IAAI,CAAC,UAAU,GAAG,IAAI,qCAAoB,CAAmD,IAAI,EAAE,gBAAI,CAAC,UAAU,EAAE,+BAAmB,CAAC,CAAC;QACzI,IAAI,CAAC,KAAK,GAAG,IAAI,gCAAkB,CAAC,IAAI,EAAE,+BAAmB,CAAC,CAAC;QAC/D,IAAI,CAAC,QAAQ,GAAG,IAAI,6CAAwB,CAA+C,IAAI,EAAE,gBAAI,CAAC,QAAQ,EAAE,+BAAmB,CAAC,CAAC;QACrI,IAAI,CAAC,aAAa,GAAG,IAAI,qCAAoB,CAAmE,IAAI,EAAE,gBAAI,CAAC,cAAc,EAAE,+BAAmB,CAAC,CAAC;QAChK,IAAI,CAAC,IAAI,GAAG,IAAI,qCAAoB,CAA+C,IAAI,EAAE,gBAAI,CAAC,QAAQ,EAAE,+BAAmB,CAAC,CAAC;QAC7H,IAAI,CAAC,aAAa,GAAG,IAAI,qCAAoB,CAAyD,IAAI,EAAE,gBAAI,CAAC,aAAa,EAAE,+BAAmB,CAAC,CAAC;QACrJ,IAAI,CAAC,SAAS,GAAG,IAAI,qCAAoB,CAAyC,IAAI,EAAE,gBAAI,CAAC,SAAS,EAAE,+BAAmB,CAAC,CAAC;QAC7H,IAAI,CAAC,aAAa,GAAG,IAAI,6CAAwB,CAAyD,IAAI,EAAE,gBAAI,CAAC,cAAc,EAAE,+BAAmB,CAAC,CAAC;QAC1J,IAAI,CAAC,gBAAgB,GAAG,IAAI,6CAAwB,CAA+D,IAAI,EAAE,gBAAI,CAAC,iBAAiB,EAAE,+BAAmB,CAAC,CAAC;QACtK,IAAI,CAAC,UAAU,GAAG,IAAI,2CAAsB,CAAC,IAAI,EAAE,+BAAmB,CAAC,CAAC;QACxE,IAAI,CAAC,cAAc,GAAG,IAAI,+CAA0B,CAAC,IAAI,EAAE,+BAAmB,CAAC,CAAC;QAChF,IAAI,CAAC,SAAS,GAAG,IAAI,0CAAqB,CAAC,IAAI,EAAE,+BAAmB,CAAC,CAAC;QACtE,IAAI,CAAC,QAAQ,GAAG,IAAI,qCAAkB,CAAC,IAAI,EAAE,+BAAmB,CAAC,CAAC;QAClE,IAAI,CAAC,OAAO,GAAG,IAAI,qCAAoB,CAA6B,IAAI,EAAE,gBAAI,CAAC,OAAO,EAAE,+BAAmB,CAAC,CAAC;QAC7G,IAAI,CAAC,KAAK,GAAG,IAAI,kCAAiB,CAAC,IAAI,EAAE,+BAAmB,CAAC,CAAC;QAC9D,IAAI,CAAC,iBAAiB,GAAG,IAAI,qCAAoB,CAAiE,IAAI,EAAE,gBAAI,CAAC,iBAAiB,EAAE,+BAAmB,CAAC,CAAC;IACvK,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,OAAsB;QACpC,MAAM,IAAI,GAAG,IAAA,uBAAgB,EAAC,OAAO,CAAC,CAAC;QACvC,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;CACF;AA7CD,wCA6CC"}
1
+ {"version":3,"file":"AmpSdk.js","sourceRoot":"","sources":["../../../src/services/AmpSdk.ts"],"names":[],"mappings":";;;AAoBA,qDAAoI;AACpI,iCAA0E;AAC1E,2CAAsD;AAGtD,oDAAmE;AACnE,yDAAyD;AACzD,6DAA+J;AAI/J;;;;;;;;GAQG;AACH,MAAa,cAAc;IAoBzB,YAAY,IAAgB;QAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,qCAAoB,CAA2C,IAAI,EAAE,gBAAI,CAAC,MAAM,EAAE,+BAAmB,CAAC,CAAC;QACzH,IAAI,CAAC,KAAK,GAAG,IAAI,mCAAkB,CAAC,IAAI,EAAE,+BAAmB,CAAC,CAAC;QAC/D,IAAI,CAAC,UAAU,GAAG,IAAI,qCAAoB,CAAmD,IAAI,EAAE,gBAAI,CAAC,UAAU,EAAE,+BAAmB,CAAC,CAAC;QACzI,IAAI,CAAC,KAAK,GAAG,IAAI,gCAAkB,CAAC,IAAI,EAAE,+BAAmB,CAAC,CAAC;QAC/D,IAAI,CAAC,QAAQ,GAAG,IAAI,6CAAwB,CAA+C,IAAI,EAAE,gBAAI,CAAC,QAAQ,EAAE,+BAAmB,CAAC,CAAC;QACrI,IAAI,CAAC,aAAa,GAAG,IAAI,qCAAoB,CAAmE,IAAI,EAAE,gBAAI,CAAC,cAAc,EAAE,+BAAmB,CAAC,CAAC;QAChK,IAAI,CAAC,IAAI,GAAG,IAAI,qCAAoB,CAA+C,IAAI,EAAE,gBAAI,CAAC,QAAQ,EAAE,+BAAmB,CAAC,CAAC;QAC7H,IAAI,CAAC,aAAa,GAAG,IAAI,qCAAoB,CAAyD,IAAI,EAAE,gBAAI,CAAC,aAAa,EAAE,+BAAmB,CAAC,CAAC;QACrJ,IAAI,CAAC,SAAS,GAAG,IAAI,qCAAoB,CAAyC,IAAI,EAAE,gBAAI,CAAC,SAAS,EAAE,+BAAmB,CAAC,CAAC;QAC7H,IAAI,CAAC,aAAa,GAAG,IAAI,6CAAwB,CAAyD,IAAI,EAAE,gBAAI,CAAC,cAAc,EAAE,+BAAmB,CAAC,CAAC;QAC1J,IAAI,CAAC,gBAAgB,GAAG,IAAI,6CAAwB,CAA+D,IAAI,EAAE,gBAAI,CAAC,iBAAiB,EAAE,+BAAmB,CAAC,CAAC;QACtK,IAAI,CAAC,UAAU,GAAG,IAAI,2CAAsB,CAAC,IAAI,EAAE,+BAAmB,CAAC,CAAC;QACxE,IAAI,CAAC,cAAc,GAAG,IAAI,+CAA0B,CAAC,IAAI,EAAE,+BAAmB,CAAC,CAAC;QAChF,IAAI,CAAC,SAAS,GAAG,IAAI,0CAAqB,CAAC,IAAI,EAAE,+BAAmB,CAAC,CAAC;QACtE,IAAI,CAAC,QAAQ,GAAG,IAAI,wCAAqB,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,GAAG,IAAI,qCAAoB,CAA6B,IAAI,EAAE,gBAAI,CAAC,OAAO,EAAE,+BAAmB,CAAC,CAAC;QAC7G,IAAI,CAAC,KAAK,GAAG,IAAI,kCAAiB,CAAC,IAAI,EAAE,+BAAmB,CAAC,CAAC;QAC9D,IAAI,CAAC,iBAAiB,GAAG,IAAI,qCAAoB,CAAiE,IAAI,EAAE,gBAAI,CAAC,iBAAiB,EAAE,+BAAmB,CAAC,CAAC;IACvK,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,OAAsB;QACpC,MAAM,IAAI,GAAG,IAAA,uBAAgB,EAAC,OAAO,CAAC,CAAC;QACvC,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;CACF;AA7CD,wCA6CC"}
@@ -31,6 +31,22 @@ export declare class AmpSettingsService {
31
31
  delete: (id: string) => Promise<AmpSettingDto>;
32
32
  static formatSettingMap: (settings: AmpSettingDto[], valuesOnly?: boolean) => TenantSettingsMap;
33
33
  }
34
+ export declare class AmpSdkSettingsService {
35
+ protected readonly rest: RestClient;
36
+ protected readonly targetApi: string;
37
+ constructor(rest: RestClient);
38
+ getSettingsMap: (tid?: string) => Promise<AmpSettingsMap>;
39
+ createMultiple: (keyValues: Array<{
40
+ key: string;
41
+ value: unknown;
42
+ cid: string | null;
43
+ tid: string;
44
+ }>) => Promise<AmpSettingDto[]>;
45
+ create: <T>(key: string | T, value: unknown, tid: string, cid: string | null) => Promise<AmpSettingDto>;
46
+ update: (id: string, entity: AmpSettingUpsertDto) => Promise<AmpSettingDto>;
47
+ delete: (id: string) => Promise<AmpSettingDto>;
48
+ static formatSettingMap: (settings: AmpSettingDto[], valuesOnly?: boolean) => TenantSettingsMap;
49
+ }
34
50
  export declare class AmpSettingsMap {
35
51
  private readonly settings;
36
52
  private readonly rawSettingsList;
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.AmpSettingsMap = exports.AmpSettingsService = void 0;
6
+ exports.AmpSettingsMap = exports.AmpSdkSettingsService = exports.AmpSettingsService = void 0;
7
7
  const lodash_1 = __importDefault(require("lodash"));
8
8
  class AmpSettingsService {
9
9
  constructor(rest, targetApi = 'api') {
@@ -89,6 +89,95 @@ AmpSettingsService.formatSettingMap = (settings, valuesOnly = true) => {
89
89
  });
90
90
  return rawSettingsMap;
91
91
  };
92
+ class AmpSdkSettingsService {
93
+ constructor(rest) {
94
+ this.getSettingsMap = async (tid) => {
95
+ const res = await this.rest.call({
96
+ url: '/platform/v1/settings',
97
+ method: 'GET',
98
+ params: { tid },
99
+ });
100
+ const page = res.data;
101
+ const settings = page.data;
102
+ settings.forEach(setting => {
103
+ if (lodash_1.default.isString(setting.value) && /^(?:".*"|\{.*\}|\[.*\]|-?\d+(?:\.\d+))$/i.test(setting.value)) {
104
+ setting.value = JSON.parse(setting.value);
105
+ }
106
+ });
107
+ const rawSettingsMap = AmpSettingsService.formatSettingMap(settings, true);
108
+ return new AmpSettingsMap(rawSettingsMap, settings);
109
+ };
110
+ this.createMultiple = async (keyValues) => {
111
+ const page = await this.rest.call({
112
+ url: '/platform/v1/settings',
113
+ method: 'POST',
114
+ data: keyValues.map(kv => {
115
+ var _a;
116
+ return ({
117
+ tid: kv.tid,
118
+ cid: (_a = kv.cid) !== null && _a !== void 0 ? _a : undefined,
119
+ key: kv.key,
120
+ value: kv.value,
121
+ });
122
+ }),
123
+ });
124
+ const settings = page.data;
125
+ return settings;
126
+ };
127
+ this.create = async (key, value, tid, cid) => {
128
+ const page = await this.rest.call({
129
+ url: '/platform/v1/settings',
130
+ method: 'POST',
131
+ data: {
132
+ tid,
133
+ cid: cid !== null && cid !== void 0 ? cid : undefined,
134
+ key,
135
+ value,
136
+ },
137
+ });
138
+ const settings = page.data;
139
+ return settings[0];
140
+ };
141
+ this.update = async (id, entity) => {
142
+ const page = await this.rest.call({
143
+ url: `/platform/v1/settings/${id}`,
144
+ method: 'PATCH',
145
+ data: entity,
146
+ });
147
+ const settings = page.data;
148
+ return settings[0];
149
+ };
150
+ this.delete = async (id) => {
151
+ const page = await this.rest.call({
152
+ url: `/platform/v1/settings/${id}`,
153
+ method: 'DELETE',
154
+ });
155
+ const settings = page.data;
156
+ return settings[0];
157
+ };
158
+ this.rest = rest;
159
+ this.targetApi = 'platform';
160
+ }
161
+ }
162
+ exports.AmpSdkSettingsService = AmpSdkSettingsService;
163
+ AmpSdkSettingsService.formatSettingMap = (settings, valuesOnly = true) => {
164
+ const rawSettingsMap = {
165
+ tenantSettings: {},
166
+ connectorSettings: {},
167
+ };
168
+ settings.forEach(setting => {
169
+ if (setting.cid) {
170
+ if (!rawSettingsMap.connectorSettings[setting.cid]) {
171
+ rawSettingsMap.connectorSettings[setting.cid] = {};
172
+ }
173
+ rawSettingsMap.connectorSettings[setting.cid][setting.key] = valuesOnly ? setting.value : setting;
174
+ }
175
+ else {
176
+ rawSettingsMap.tenantSettings[setting.key] = valuesOnly ? setting.value : setting;
177
+ }
178
+ });
179
+ return rawSettingsMap;
180
+ };
92
181
  class AmpSettingsMap {
93
182
  constructor(settings, rawSettingsList) {
94
183
  this.rawSettingsList = new Array();
@@ -1 +1 @@
1
- {"version":3,"file":"settings.service.js","sourceRoot":"","sources":["../../../src/services/settings.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings.service.js","sourceRoot":"","sources":["../../../src/services/settings.service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ampsec/platform-client",
3
- "version": "54.3.0",
3
+ "version": "55.0.0",
4
4
  "description": "",
5
5
  "main": "build/src/index.js",
6
6
  "runkitExampleFilename": "example/main.js",
@@ -24,7 +24,7 @@ import {KIND, TARGET_API_PLATFORM} from './constants';
24
24
  import {PlatformJobSpecDto, PlatformJobSpecUpsertDto} from '../dto/platform/platform.jobSpec.dto';
25
25
  import {PlatformJobExecutionStateDto, PlatformJobExecutionStateUpsertDto} from '../dto/platform/platform.jobExecutionState.dto';
26
26
  import {DefaultEnumService, EnumService} from './rest/EnumService';
27
- import {AmpSettingsService} from './settings.service';
27
+ import {AmpSdkSettingsService} from './settings.service';
28
28
  import {AmpSaaSEntityService, AmpSaaSEntityServiceImpl, AmpSdkSaasAssetService, AmpSdkSaasComponentService, AmpSdkSaasUserService} from './saasEntity.service';
29
29
 
30
30
  export type AmpSdkOptions = AmpRestClientOptions;
@@ -53,7 +53,7 @@ export class AmpSdkServices {
53
53
  readonly saasAssets: AmpSdkSaasAssetService;
54
54
  readonly saasComponents: AmpSdkSaasComponentService;
55
55
  readonly saasUsers: AmpSdkSaasUserService;
56
- readonly settings: AmpSettingsService;
56
+ readonly settings: AmpSdkSettingsService;
57
57
  readonly tenants: AmpSdkTenantService<TenantUpsertDto, TenantDto>;
58
58
  readonly users: AmpSdkUserService;
59
59
  readonly workflowsProgress: AmpEntityService<PlatformWorkflowProgressUpsertDto, PlatformWorkflowProgressDto>;
@@ -73,7 +73,7 @@ export class AmpSdkServices {
73
73
  this.saasAssets = new AmpSdkSaasAssetService(rest, TARGET_API_PLATFORM);
74
74
  this.saasComponents = new AmpSdkSaasComponentService(rest, TARGET_API_PLATFORM);
75
75
  this.saasUsers = new AmpSdkSaasUserService(rest, TARGET_API_PLATFORM);
76
- this.settings = new AmpSettingsService(rest, TARGET_API_PLATFORM);
76
+ this.settings = new AmpSdkSettingsService(rest);
77
77
  this.tenants = new AmpEntityServiceImpl<TenantUpsertDto, TenantDto>(rest, KIND.TENANTS, TARGET_API_PLATFORM);
78
78
  this.users = new AmpSdkUserService(rest, TARGET_API_PLATFORM);
79
79
  this.workflowsProgress = new AmpEntityServiceImpl<PlatformWorkflowProgressUpsertDto, PlatformWorkflowProgressDto>(rest, KIND.WORKFLOW_PROGRESS, TARGET_API_PLATFORM);
@@ -109,6 +109,99 @@ export class AmpSettingsService {
109
109
  };
110
110
  }
111
111
 
112
+ export class AmpSdkSettingsService {
113
+ protected readonly rest: RestClient;
114
+ protected readonly targetApi: string;
115
+ constructor(rest: RestClient) {
116
+ this.rest = rest;
117
+ this.targetApi = 'platform';
118
+ }
119
+
120
+ getSettingsMap = async (tid?: string): Promise<AmpSettingsMap> => {
121
+ const res = await this.rest.call({
122
+ url: '/platform/v1/settings',
123
+ method: 'GET',
124
+ params: {tid},
125
+ });
126
+ const page = res.data as Page<AmpSettingDto>;
127
+ const settings = page.data;
128
+ settings.forEach(setting => {
129
+ if (_.isString(setting.value) && /^(?:".*"|\{.*\}|\[.*\]|-?\d+(?:\.\d+))$/i.test(setting.value)) {
130
+ setting.value = JSON.parse(setting.value);
131
+ }
132
+ });
133
+ const rawSettingsMap: TenantSettingsMap = AmpSettingsService.formatSettingMap(settings, true);
134
+ return new AmpSettingsMap(rawSettingsMap, settings);
135
+ };
136
+
137
+ createMultiple = async (keyValues: Array<{key: string; value: unknown; cid: string | null; tid: string}>): Promise<AmpSettingDto[]> => {
138
+ const page = await this.rest.call({
139
+ url: '/platform/v1/settings',
140
+ method: 'POST',
141
+ data: keyValues.map(kv => ({
142
+ tid: kv.tid,
143
+ cid: kv.cid ?? undefined,
144
+ key: kv.key,
145
+ value: kv.value,
146
+ })),
147
+ });
148
+ const settings = page.data as AmpSettingDto[];
149
+ return settings;
150
+ };
151
+
152
+ create = async <T>(key: string | T, value: unknown | T, tid: string, cid: string | null): Promise<AmpSettingDto> => {
153
+ const page = await this.rest.call({
154
+ url: '/platform/v1/settings',
155
+ method: 'POST',
156
+ data: {
157
+ tid,
158
+ cid: cid ?? undefined,
159
+ key,
160
+ value,
161
+ },
162
+ });
163
+ const settings = page.data as AmpSettingDto[];
164
+ return settings[0];
165
+ };
166
+
167
+ update = async (id: string, entity: AmpSettingUpsertDto): Promise<AmpSettingDto> => {
168
+ const page = await this.rest.call({
169
+ url: `/platform/v1/settings/${id}`,
170
+ method: 'PATCH',
171
+ data: entity,
172
+ });
173
+ const settings = page.data as AmpSettingDto[];
174
+ return settings[0];
175
+ };
176
+
177
+ delete = async (id: string): Promise<AmpSettingDto> => {
178
+ const page = await this.rest.call({
179
+ url: `/platform/v1/settings/${id}`,
180
+ method: 'DELETE',
181
+ });
182
+ const settings = page.data as AmpSettingDto[];
183
+ return settings[0];
184
+ };
185
+
186
+ static formatSettingMap = (settings: AmpSettingDto[], valuesOnly = true): TenantSettingsMap => {
187
+ const rawSettingsMap: TenantSettingsMap = {
188
+ tenantSettings: {},
189
+ connectorSettings: {},
190
+ };
191
+ settings.forEach(setting => {
192
+ if (setting.cid) {
193
+ if (!rawSettingsMap.connectorSettings[setting.cid]) {
194
+ rawSettingsMap.connectorSettings[setting.cid] = {};
195
+ }
196
+ rawSettingsMap.connectorSettings[setting.cid][setting.key] = valuesOnly ? setting.value : setting;
197
+ } else {
198
+ rawSettingsMap.tenantSettings[setting.key] = valuesOnly ? setting.value : setting;
199
+ }
200
+ });
201
+ return rawSettingsMap;
202
+ };
203
+ }
204
+
112
205
  export class AmpSettingsMap {
113
206
  private readonly settings: TenantSettingsMap;
114
207
  private readonly rawSettingsList = new Array<AmpSettingDto>();