@ampsec/platform-client 58.1.0 → 58.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.
Files changed (41) hide show
  1. package/build/src/dto/assetKeys.d.ts +14 -4
  2. package/build/src/dto/assetKeys.js +10 -0
  3. package/build/src/dto/assetKeys.js.map +1 -1
  4. package/build/src/dto/assets.dto.d.ts +114 -15
  5. package/build/src/dto/assets.dto.js +22 -0
  6. package/build/src/dto/assets.dto.js.map +1 -1
  7. package/build/src/dto/base.dto.d.ts +51 -16
  8. package/build/src/dto/base.dto.js +14 -0
  9. package/build/src/dto/base.dto.js.map +1 -1
  10. package/build/src/dto/coverage.dto.d.ts +301 -0
  11. package/build/src/dto/coverage.dto.js +18 -0
  12. package/build/src/dto/coverage.dto.js.map +1 -0
  13. package/build/src/dto/index.d.ts +1 -0
  14. package/build/src/dto/index.js +1 -0
  15. package/build/src/dto/index.js.map +1 -1
  16. package/build/src/dto/saasAssets.dto.d.ts +91 -13
  17. package/build/src/dto/saasAssets.dto.js +20 -0
  18. package/build/src/dto/saasAssets.dto.js.map +1 -1
  19. package/build/src/dto/saasUsers.dto.d.ts +67 -10
  20. package/build/src/dto/saasUsers.dto.js +16 -0
  21. package/build/src/dto/saasUsers.dto.js.map +1 -1
  22. package/build/src/dto/users.dto.d.ts +27 -12
  23. package/build/src/dto/users.dto.js +11 -0
  24. package/build/src/dto/users.dto.js.map +1 -1
  25. package/build/src/services/entity.service.d.ts +8 -1
  26. package/build/src/services/entity.service.js +17 -2
  27. package/build/src/services/entity.service.js.map +1 -1
  28. package/build/src/settings.d.ts +4 -0
  29. package/build/src/settings.js +4 -0
  30. package/build/src/settings.js.map +1 -1
  31. package/package.json +1 -1
  32. package/src/dto/assetKeys.ts +9 -5
  33. package/src/dto/assets.dto.ts +20 -13
  34. package/src/dto/base.dto.ts +25 -25
  35. package/src/dto/coverage.dto.ts +20 -0
  36. package/src/dto/index.ts +1 -0
  37. package/src/dto/saasAssets.dto.ts +17 -11
  38. package/src/dto/saasUsers.dto.ts +14 -9
  39. package/src/dto/users.dto.ts +12 -12
  40. package/src/services/entity.service.ts +24 -1
  41. package/src/settings.ts +4 -0
@@ -1,16 +1,21 @@
1
- import {ChangeAwareDto, ChangeAwareUpsertDto} from './base.dto';
1
+ import {z} from 'zod';
2
+ import {_ChangeAwareDto, _ChangeAwareUpsertDto} from './base.dto';
2
3
 
3
- export type SaasUserUpsertDto = ChangeAwareUpsertDto & {
4
+ export const _SaasUserUpsertDto = _ChangeAwareUpsertDto.extend({
4
5
  /** User Id */
5
- uid: string;
6
+ uid: z.string(),
6
7
  /** Connector Id */
7
- cid: string;
8
+ cid: z.string(),
8
9
  /** External email */
9
- email: string;
10
+ email: z.string(),
10
11
  /** External Id */
11
- extId: string;
12
+ extId: z.string(),
12
13
  /** Additional information specific to this Saas User */
13
- meta: unknown;
14
- };
14
+ meta: z.unknown(),
15
+ });
15
16
 
16
- export type SaasUserDto = ChangeAwareDto & SaasUserUpsertDto;
17
+ export type SaasUserUpsertDto = z.infer<typeof _SaasUserUpsertDto>;
18
+
19
+ export const _SaasUserDto = _ChangeAwareDto.and(_SaasUserUpsertDto);
20
+
21
+ export type SaasUserDto = z.infer<typeof _SaasUserDto>;
@@ -1,19 +1,19 @@
1
+ import {z} from 'zod';
1
2
  import {ChangeAwareDto, ChangeAwareUpsertDto} from './base.dto';
2
3
  import {GlobalUserType} from './enums/globalUser.type';
3
4
  import {RiskContributorUpsertDto} from './riskContributors.dto';
4
5
 
5
- export type SimpleUserDto = {
6
- /** Id of the user */
7
- id?: string;
8
- /** First name of the user */
9
- firstName?: string;
10
- /** Last name of the user */
11
- lastName?: string;
12
- /** Email of the user */
13
- email?: string;
14
- /** Department of the user */
15
- department?: string;
16
- };
6
+ export const _SimpleUserDto = z.object({
7
+ id: z.string().optional(),
8
+ score: z.number().optional(),
9
+ firstName: z.string().optional(),
10
+ lastName: z.string().optional(),
11
+ email: z.string().optional(),
12
+ organization: z.string().optional(),
13
+ department: z.string().optional(),
14
+ });
15
+
16
+ export type SimpleUserDto = z.infer<typeof _SimpleUserDto>;
17
17
 
18
18
  export type UserUpsertDto = ChangeAwareUpsertDto & {
19
19
  /** Tenant ID */
@@ -31,6 +31,10 @@ export interface AmpGlobalEntityService<WriteT extends BaseUpsertDto, ReadT exte
31
31
  getLookupIds(_tid: string, _options?: EntityCallOptions): Promise<ExtKeyMap>;
32
32
  }
33
33
 
34
+ export interface AmpPatchEntityService<WriteT extends BaseUpsertDto, ReadT extends BaseDto> extends AmpDataService<ReadT> {
35
+ patch(_model: WriteT | WriteT[], _options: EntityCallOptions): Promise<Page<ReadT>>;
36
+ }
37
+
34
38
  export class AmpEntityServiceImpl<WriteT extends BaseUpsertDto, ReadT extends BaseDto> extends AmpDataServiceImpl<ReadT> implements AmpEntityService<WriteT, ReadT> {
35
39
  constructor(rest: RestClient, kind: string, targetApi: TargetApi = TARGET_API_AGENT) {
36
40
  super(rest, kind, targetApi);
@@ -113,7 +117,26 @@ const errorHandler = (error: unknown) => {
113
117
  throw error;
114
118
  };
115
119
 
116
- export class AmpSdkUserService extends AmpGlobalEntityServiceImpl<PlatformUserUpsertDto, PlatformUserDto> {
120
+ export class AmpPatchUserServiceImpl<WriteT extends BaseUpsertDto, ReadT extends BaseDto>
121
+ extends AmpGlobalEntityServiceImpl<WriteT, ReadT>
122
+ implements AmpPatchEntityService<WriteT, ReadT>
123
+ {
124
+ constructor(rest: RestClient, kind: string, targetApi: TargetApi = 'api') {
125
+ super(rest, kind, targetApi);
126
+ }
127
+
128
+ patch = (model: WriteT | WriteT[], options: EntityCallOptions): Promise<Page<ReadT>> => {
129
+ const url = _.isArray(model) ? `/${this.targetApi}/v1/${this.kind}` : `/${this.targetApi}/v1/${this.kind}/${model.id}`;
130
+ return this.getPage({
131
+ url,
132
+ method: 'PATCH',
133
+ params: options.params as QueryMap,
134
+ data: model,
135
+ });
136
+ };
137
+ }
138
+
139
+ export class AmpSdkUserService extends AmpPatchUserServiceImpl<PlatformUserUpsertDto, PlatformUserDto> {
117
140
  constructor(rest: RestClient, targetApi: TargetApi = TARGET_API_AGENT) {
118
141
  super(rest, KIND.USERS, targetApi);
119
142
  }
package/src/settings.ts CHANGED
@@ -87,6 +87,10 @@ const SLACK_SETTINGS = {
87
87
  const TENABLE_SETTINGS = {
88
88
  TENABLE_ASSET_ARCHIVED_RULE: AmpSettingsMap.asKey<unknown>('tenable.asset.archived.rule', {MATCH_NOTHING: true}),
89
89
  TENABLE_ASSET_ARCHIVED_THRESHOLD: AmpSettingsMap.asKey<string>('tenable.asset.archived.threshold', '1 year'),
90
+ TENABLE_VULN_CRIT_DEADLINE_THRESHOLD: AmpSettingsMap.asKey<string>('tenable.vuln.crit.deadline', '1 day'),
91
+ TENABLE_VULN_HIGH_DEADLINE_THRESHOLD: AmpSettingsMap.asKey<string>('tenable.vuln.high.deadline', '7 day'),
92
+ TENABLE_VULN_MEDIUM_DEADLINE_THRESHOLD: AmpSettingsMap.asKey<string>('tenable.vuln.medium.deadline', '30 day'),
93
+ TENABLE_VULN_LOW_DEADLINE_THRESHOLD: AmpSettingsMap.asKey<string>('tenable.vuln.low.deadline', '90 day'),
90
94
  };
91
95
 
92
96
  /**