@ampsec/platform-client 32.1.0 → 32.3.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.
@@ -21,10 +21,13 @@ export declare class AmpSettingsService {
21
21
  getSettingsMap(tid?: string): Promise<AmpSettingsMap>;
22
22
  create<T>(key: TypedAmpSettingsKey<T>, value: T, tid: string, cid?: string): Promise<AmpSettingDto>;
23
23
  update(id: string, entity: AmpSettingUpsertDto): Promise<AmpSettingDto>;
24
+ delete(id: string): Promise<AmpSettingDto>;
25
+ static formatSettingMap(settings: AmpSettingDto[], valuesOnly?: boolean): TenantSettingsMap;
24
26
  }
25
27
  export declare class AmpSettingsMap {
26
28
  private readonly settings;
27
- constructor(settings: TenantSettingsMap);
29
+ private readonly rawSettingsList;
30
+ constructor(settings: TenantSettingsMap, rawSettingsList: AmpSettingDto[]);
28
31
  getGlobalSetting<T>(key: TypedAmpSettingsKey<T>): T;
29
32
  getConnectorSetting<T>(cid: string, key: TypedAmpSettingsKey<T>): T;
30
33
  getConnectorSettings(cid: string): RawAmpSettingsMap | undefined;
@@ -33,7 +33,7 @@ class AmpSettingsService {
33
33
  rawSettingsMap.tenantSettings[setting.key] = setting.value;
34
34
  }
35
35
  });
36
- return new AmpSettingsMap(rawSettingsMap);
36
+ return new AmpSettingsMap(rawSettingsMap, settings);
37
37
  }
38
38
  async create(key, value, tid, cid) {
39
39
  const page = await this.rest.call({
@@ -58,11 +58,39 @@ class AmpSettingsService {
58
58
  const settings = page.data;
59
59
  return settings[0];
60
60
  }
61
+ async delete(id) {
62
+ const page = await this.rest.call({
63
+ url: `/${this.targetApi}/v1/settings/${id}`,
64
+ method: 'DELETE',
65
+ });
66
+ const settings = page.data;
67
+ return settings[0];
68
+ }
69
+ static formatSettingMap(settings, valuesOnly = true) {
70
+ const rawSettingsMap = {
71
+ tenantSettings: {},
72
+ connectorSettings: {},
73
+ };
74
+ settings.forEach(setting => {
75
+ if (setting.cid) {
76
+ if (!rawSettingsMap.connectorSettings[setting.cid]) {
77
+ rawSettingsMap.connectorSettings[setting.cid] = {};
78
+ }
79
+ rawSettingsMap.connectorSettings[setting.cid][setting.key] = setting.value;
80
+ }
81
+ else {
82
+ rawSettingsMap.tenantSettings[setting.key] = valuesOnly ? setting.value : setting;
83
+ }
84
+ });
85
+ return rawSettingsMap;
86
+ }
61
87
  }
62
88
  exports.AmpSettingsService = AmpSettingsService;
63
89
  class AmpSettingsMap {
64
- constructor(settings) {
90
+ constructor(settings, rawSettingsList) {
91
+ this.rawSettingsList = new Array();
65
92
  this.settings = settings;
93
+ this.rawSettingsList = rawSettingsList;
66
94
  }
67
95
  getGlobalSetting(key) {
68
96
  const tenantVal = this.settings.tenantSettings[key.id];
@@ -92,7 +120,7 @@ class AmpSettingsMap {
92
120
  return lodash_1.default.clone(this.settings.connectorSettings[cid]);
93
121
  }
94
122
  getRawMap() {
95
- return lodash_1.default.cloneDeep(this.settings);
123
+ return AmpSettingsService.formatSettingMap(this.rawSettingsList, false);
96
124
  }
97
125
  static asKey(key, defaultValue) {
98
126
  return {
@@ -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": "32.1.0",
3
+ "version": "32.3.0",
4
4
  "description": "",
5
5
  "main": "build/src/index.js",
6
6
  "runkitExampleFilename": "example/main.js",
@@ -35,14 +35,14 @@
35
35
  "@types/jest": "^29.5.1",
36
36
  "@types/lodash": "^4.14.195",
37
37
  "@types/qs": "^6.9.7",
38
- "gts": "^3.1.1",
38
+ "gts": "^5.0.1",
39
39
  "jest": "^29.5.0",
40
40
  "rimraf": "^5.0.0",
41
41
  "serve": "^14.2.0",
42
42
  "ts-jest": "^29.1.0",
43
43
  "ts-node": "^10.9.1",
44
- "typedoc": "^0.24.7",
45
- "typescript": "^5.0.4"
44
+ "typedoc": "^0.25.1",
45
+ "typescript": "^5.2.2"
46
46
  },
47
47
  "files": [
48
48
  "/build/src",
@@ -48,7 +48,7 @@ export class AmpSettingsService {
48
48
  rawSettingsMap.tenantSettings[setting.key] = setting.value;
49
49
  }
50
50
  });
51
- return new AmpSettingsMap(rawSettingsMap);
51
+ return new AmpSettingsMap(rawSettingsMap, settings);
52
52
  }
53
53
 
54
54
  async create<T>(key: TypedAmpSettingsKey<T>, value: T, tid: string, cid?: string): Promise<AmpSettingDto> {
@@ -75,13 +75,42 @@ export class AmpSettingsService {
75
75
  const settings = page.data as AmpSettingDto[];
76
76
  return settings[0];
77
77
  }
78
+
79
+ async delete(id: string): Promise<AmpSettingDto> {
80
+ const page = await this.rest.call({
81
+ url: `/${this.targetApi}/v1/settings/${id}`,
82
+ method: 'DELETE',
83
+ });
84
+ const settings = page.data as AmpSettingDto[];
85
+ return settings[0];
86
+ }
87
+
88
+ static formatSettingMap(settings: AmpSettingDto[], valuesOnly = true): TenantSettingsMap {
89
+ const rawSettingsMap: TenantSettingsMap = {
90
+ tenantSettings: {},
91
+ connectorSettings: {},
92
+ };
93
+ settings.forEach(setting => {
94
+ if (setting.cid) {
95
+ if (!rawSettingsMap.connectorSettings[setting.cid]) {
96
+ rawSettingsMap.connectorSettings[setting.cid] = {};
97
+ }
98
+ rawSettingsMap.connectorSettings[setting.cid][setting.key] = setting.value;
99
+ } else {
100
+ rawSettingsMap.tenantSettings[setting.key] = valuesOnly ? setting.value : setting;
101
+ }
102
+ });
103
+ return rawSettingsMap;
104
+ }
78
105
  }
79
106
 
80
107
  export class AmpSettingsMap {
81
108
  private readonly settings: TenantSettingsMap;
109
+ private readonly rawSettingsList = new Array<AmpSettingDto>();
82
110
 
83
- constructor(settings: TenantSettingsMap) {
111
+ constructor(settings: TenantSettingsMap, rawSettingsList: AmpSettingDto[]) {
84
112
  this.settings = settings;
113
+ this.rawSettingsList = rawSettingsList;
85
114
  }
86
115
 
87
116
  getGlobalSetting<T>(key: TypedAmpSettingsKey<T>): T {
@@ -115,7 +144,7 @@ export class AmpSettingsMap {
115
144
  }
116
145
 
117
146
  getRawMap(): TenantSettingsMap {
118
- return _.cloneDeep(this.settings);
147
+ return AmpSettingsService.formatSettingMap(this.rawSettingsList, false);
119
148
  }
120
149
 
121
150
  static asKey<T>(key: AmpSettingKey, defaultValue: T): TypedAmpSettingsKey<T> {