attlaz-client 1.23.1 → 1.25.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 (42) hide show
  1. package/dist/Core/MetaDataAware.d.ts +8 -0
  2. package/dist/Core/MetaDataAware.js +24 -0
  3. package/dist/Http/Data/QueryString.d.ts +2 -0
  4. package/dist/Http/Data/QueryString.js +6 -0
  5. package/dist/Model/Adapter/Adapter.d.ts +4 -5
  6. package/dist/Model/Adapter/Adapter.js +3 -5
  7. package/dist/Model/Adapter/AdapterConnection.d.ts +5 -4
  8. package/dist/Model/Adapter/AdapterConnection.js +5 -6
  9. package/dist/Model/ApiRecord.d.ts +1 -0
  10. package/dist/Model/ApiRecord.js +1 -0
  11. package/dist/Model/Collections/Collection.d.ts +2 -1
  12. package/dist/Model/Deployment/CodeSource.d.ts +5 -4
  13. package/dist/Model/Deployment/CodeSource.js +5 -6
  14. package/dist/Model/Deployment/CodeSourceAccount.d.ts +4 -3
  15. package/dist/Model/Deployment/CodeSourceAccount.js +3 -5
  16. package/dist/Model/Flow/Flow.d.ts +4 -7
  17. package/dist/Model/Flow/Flow.js +5 -18
  18. package/dist/Model/Flow/FlowRun.d.ts +2 -4
  19. package/dist/Model/Flow/FlowRun.js +1 -10
  20. package/dist/Model/Messaging/Channel/Channel.d.ts +0 -1
  21. package/dist/Model/Messaging/Channel/Channel.js +0 -5
  22. package/dist/Model/Messaging/Subscriber.d.ts +2 -1
  23. package/dist/Model/Messaging/Subscriber.js +2 -5
  24. package/dist/Model/Pagination/Filters.d.ts +20 -0
  25. package/dist/Model/Pagination/Filters.js +33 -0
  26. package/dist/Model/Project/CodeDeploy.d.ts +2 -1
  27. package/dist/Model/Project/CodeDeploy.js +1 -1
  28. package/dist/Model/Project/Project.d.ts +4 -3
  29. package/dist/Model/Project/Project.js +5 -3
  30. package/dist/Model/Project/ProjectEnvironment.d.ts +4 -3
  31. package/dist/Model/Project/ProjectEnvironment.js +4 -5
  32. package/dist/Model/Trigger/Trigger.d.ts +2 -3
  33. package/dist/Model/Trigger/Trigger.js +0 -7
  34. package/dist/Model/Workspace/Workspace.d.ts +4 -3
  35. package/dist/Model/Workspace/Workspace.js +3 -4
  36. package/dist/Model/Workspace/WorkspaceMember.d.ts +4 -3
  37. package/dist/Model/Workspace/WorkspaceMember.js +4 -4
  38. package/dist/Service/UserActionEndpoint.d.ts +1 -0
  39. package/dist/Service/UserActionEndpoint.js +8 -6
  40. package/dist/version.d.ts +1 -1
  41. package/dist/version.js +1 -1
  42. package/package.json +1 -1
@@ -1,4 +1,12 @@
1
1
  import { DataValueCollection } from '../Model/DataValueCollection.js';
2
+ import { ApiRecord } from '../Model/ApiRecord.js';
2
3
  export declare abstract class MetaDataAware {
4
+ abstract id: string;
5
+ name: string;
6
+ description: string | null;
7
+ icon: string | null;
3
8
  metadata: DataValueCollection;
9
+ updatedAt: Date | null;
10
+ createdAt: Date | null;
11
+ static parseMetaData<T extends MetaDataAware>(input: T, raw: ApiRecord): T;
4
12
  }
@@ -1,3 +1,27 @@
1
+ import { DataValueCollection } from '../Model/DataValueCollection.js';
2
+ import { Utils } from '../Utils.js';
1
3
  export class MetaDataAware {
4
+ name;
5
+ description = null;
6
+ icon = null;
2
7
  metadata;
8
+ updatedAt = null;
9
+ createdAt = null;
10
+ static parseMetaData(input, raw) {
11
+ input.id = raw.id;
12
+ input.name = raw.name;
13
+ input.description = raw.description;
14
+ input.icon = raw.icon;
15
+ // TODO: parse meta data
16
+ if (Object.prototype.hasOwnProperty.call(raw, 'metadata')) {
17
+ // input.metadata = DataValueCollection.fromObject(raw.metadata as any);
18
+ input.metadata = DataValueCollection.fromObject(raw.metadata);
19
+ }
20
+ else {
21
+ input.metadata = new DataValueCollection();
22
+ }
23
+ input.updatedAt = (raw.updated === null || raw.updated === undefined) ? null : Utils.parseRawDate(raw.updated);
24
+ input.createdAt = (raw.created === null || raw.created === undefined) ? null : Utils.parseRawDate(raw.created);
25
+ return input;
26
+ }
3
27
  }
@@ -1,5 +1,6 @@
1
1
  import { CursorPagination } from '../../Model/Pagination/CursorPagination.js';
2
2
  import { State } from '../../Model/State.js';
3
+ import { Filters } from '../../Model/Pagination/Filters.js';
3
4
  export declare class QueryString {
4
5
  private command;
5
6
  private parameters;
@@ -7,6 +8,7 @@ export declare class QueryString {
7
8
  setCommand(command: string): void;
8
9
  set(parameter: string, value: string | number | boolean | string[]): void;
9
10
  addPagination(pagination: CursorPagination | null): void;
11
+ addFilters(filters: Filters): void;
10
12
  addStateFilter(states: State[] | null): void;
11
13
  getParameters(): {
12
14
  parameter: string;
@@ -27,6 +27,12 @@ export class QueryString {
27
27
  }
28
28
  }
29
29
  }
30
+ addFilters(filters) {
31
+ for (const filter of filters.toArray()) {
32
+ const strMethod = filter.method === 'eq' ? '' : '[' + filter.method + ']';
33
+ this.set(filter.field + strMethod, filter.value);
34
+ }
35
+ }
30
36
  addStateFilter(states) {
31
37
  if (states !== null) {
32
38
  this.set('state', states);
@@ -1,13 +1,12 @@
1
- export declare class Adapter {
1
+ import { MetaDataAware } from '../../Core/MetaDataAware.js';
2
+ import { ApiRecord } from '../ApiRecord.js';
3
+ export declare class Adapter extends MetaDataAware {
2
4
  id: string;
3
- name: string;
4
- description: string;
5
5
  vendor: string;
6
- icon: string;
7
6
  logo: string;
8
7
  type: string;
9
8
  categoryIds: string[];
10
9
  docs: string | null;
11
10
  website: string | null;
12
- static parse(rawAdapter: Record<string, unknown>): Adapter;
11
+ static parse(rawAdapter: ApiRecord): Adapter;
13
12
  }
@@ -1,16 +1,14 @@
1
- export class Adapter {
1
+ import { MetaDataAware } from '../../Core/MetaDataAware.js';
2
+ export class Adapter extends MetaDataAware {
2
3
  id;
3
- name;
4
- description;
5
4
  vendor;
6
- icon;
7
5
  logo;
8
6
  type;
9
7
  categoryIds;
10
8
  docs;
11
9
  website;
12
10
  static parse(rawAdapter) {
13
- const adapter = new Adapter();
11
+ const adapter = MetaDataAware.parseMetaData(new Adapter(), rawAdapter);
14
12
  adapter.id = rawAdapter.id;
15
13
  adapter.name = rawAdapter.name;
16
14
  adapter.description = rawAdapter.description;
@@ -1,14 +1,15 @@
1
1
  import { StateAware } from '../StateAware.js';
2
2
  import { State } from '../State.js';
3
+ import { ApiRecord } from '../ApiRecord.js';
4
+ import { MetaDataAware } from '../../Core/MetaDataAware.js';
3
5
  import { AdapterConnectionStatus } from './AdapterConnectionStatus.js';
4
- export declare class AdapterConnection implements StateAware {
6
+ export declare class AdapterConnection extends MetaDataAware implements StateAware {
5
7
  id: string;
6
8
  key: string;
7
9
  adapter: string;
8
- name: string;
9
10
  projectId: string;
10
11
  status: AdapterConnectionStatus;
11
12
  state: State;
12
- lastUsed: Date | null;
13
- static parse(rawAdapterConnection: any): AdapterConnection;
13
+ lastUsedAt: Date | null;
14
+ static parse(rawAdapterConnection: ApiRecord): AdapterConnection;
14
15
  }
@@ -1,25 +1,24 @@
1
1
  import { Utils } from '../../Utils.js';
2
2
  import { State } from '../State.js';
3
+ import { MetaDataAware } from '../../Core/MetaDataAware.js';
3
4
  import { AdapterConnectionStatus } from './AdapterConnectionStatus.js';
4
- export class AdapterConnection {
5
+ export class AdapterConnection extends MetaDataAware {
5
6
  id;
6
7
  key;
7
8
  adapter;
8
- name;
9
9
  projectId;
10
10
  status;
11
11
  state = State.Active;
12
- lastUsed = null;
12
+ lastUsedAt = null;
13
13
  static parse(rawAdapterConnection) {
14
- const adapterConnection = new AdapterConnection();
14
+ const adapterConnection = MetaDataAware.parseMetaData(new AdapterConnection(), rawAdapterConnection);
15
15
  adapterConnection.id = rawAdapterConnection.id;
16
16
  adapterConnection.key = rawAdapterConnection.key;
17
17
  adapterConnection.adapter = rawAdapterConnection.adapter;
18
- adapterConnection.name = rawAdapterConnection.name;
19
18
  adapterConnection.projectId = rawAdapterConnection.project;
20
19
  adapterConnection.state = State.fromString(rawAdapterConnection.state);
21
20
  adapterConnection.status = AdapterConnectionStatus.fromString(rawAdapterConnection.status);
22
- adapterConnection.lastUsed = rawAdapterConnection.last_used === null ? null : Utils.parseRawDate(rawAdapterConnection.last_used);
21
+ adapterConnection.lastUsedAt = rawAdapterConnection.last_used === null ? null : Utils.parseRawDate(rawAdapterConnection.last_used);
23
22
  return adapterConnection;
24
23
  }
25
24
  }
@@ -0,0 +1 @@
1
+ export type ApiRecord = Record<string, string | number | boolean | Date | null>;
@@ -0,0 +1 @@
1
+ export {};
@@ -1,3 +1,4 @@
1
+ import { ApiRecord } from '../ApiRecord.js';
1
2
  export declare class Collection {
2
3
  id: string;
3
4
  project: string;
@@ -8,5 +9,5 @@ export declare class Collection {
8
9
  type: string;
9
10
  options: string[];
10
11
  }[];
11
- static parse(raw: Record<string, unknown>): Collection;
12
+ static parse(raw: ApiRecord): Collection;
12
13
  }
@@ -1,6 +1,8 @@
1
1
  import { StateAware } from '../StateAware.js';
2
2
  import { State } from '../State.js';
3
- export declare class CodeSource implements StateAware {
3
+ import { MetaDataAware } from '../../Core/MetaDataAware.js';
4
+ import { ApiRecord } from '../ApiRecord.js';
5
+ export declare class CodeSource extends MetaDataAware implements StateAware {
4
6
  id: string;
5
7
  codeSourceAccountId: string;
6
8
  repository: {
@@ -12,12 +14,11 @@ export declare class CodeSource implements StateAware {
12
14
  platformId: string;
13
15
  buildStrategyId: string;
14
16
  runStrategyId: string;
15
- description: string;
16
17
  state: State;
17
18
  usage: {
18
19
  flows: number;
19
20
  environments: number;
20
21
  } | null;
21
- deploys: number | null;
22
- static parse(rawCodeSource: any): CodeSource;
22
+ deployCount: number | null;
23
+ static parse(rawCodeSource: ApiRecord): CodeSource;
23
24
  }
@@ -1,5 +1,6 @@
1
1
  import { State } from '../State.js';
2
- export class CodeSource {
2
+ import { MetaDataAware } from '../../Core/MetaDataAware.js';
3
+ export class CodeSource extends MetaDataAware {
3
4
  id;
4
5
  codeSourceAccountId;
5
6
  repository;
@@ -7,12 +8,11 @@ export class CodeSource {
7
8
  platformId;
8
9
  buildStrategyId;
9
10
  runStrategyId;
10
- description;
11
11
  state = State.Active;
12
12
  usage = null;
13
- deploys = null;
13
+ deployCount = null;
14
14
  static parse(rawCodeSource) {
15
- const codeSource = new CodeSource();
15
+ const codeSource = MetaDataAware.parseMetaData(new CodeSource(), rawCodeSource);
16
16
  codeSource.id = rawCodeSource.id;
17
17
  codeSource.codeSourceAccountId = rawCodeSource.code_source_account;
18
18
  codeSource.repository = rawCodeSource.repository;
@@ -20,13 +20,12 @@ export class CodeSource {
20
20
  codeSource.platformId = rawCodeSource.platform;
21
21
  codeSource.buildStrategyId = rawCodeSource.build_strategy;
22
22
  codeSource.runStrategyId = rawCodeSource.run_strategy;
23
- codeSource.description = rawCodeSource.description;
24
23
  codeSource.state = State.fromString(rawCodeSource.state);
25
24
  if (Object.prototype.hasOwnProperty.call(rawCodeSource, 'usage')) {
26
25
  codeSource.usage = rawCodeSource.usage;
27
26
  }
28
27
  if (Object.prototype.hasOwnProperty.call(rawCodeSource, 'deploys')) {
29
- codeSource.deploys = rawCodeSource.deploys;
28
+ codeSource.deployCount = rawCodeSource.deploys;
30
29
  }
31
30
  return codeSource;
32
31
  }
@@ -1,11 +1,12 @@
1
1
  import { State } from '../State.js';
2
2
  import { StateAware } from '../StateAware.js';
3
- export declare class CodeSourceAccount implements StateAware {
3
+ import { MetaDataAware } from '../../Core/MetaDataAware.js';
4
+ import { ApiRecord } from '../ApiRecord.js';
5
+ export declare class CodeSourceAccount extends MetaDataAware implements StateAware {
4
6
  id: string;
5
- name: string;
6
7
  userId: string;
7
8
  workspaceId: string;
8
9
  type: string;
9
10
  state: State;
10
- static parse(rawSourcesAccount: any): CodeSourceAccount;
11
+ static parse(rawSourcesAccount: ApiRecord): CodeSourceAccount;
11
12
  }
@@ -1,7 +1,7 @@
1
1
  import { State } from '../State.js';
2
- export class CodeSourceAccount {
2
+ import { MetaDataAware } from '../../Core/MetaDataAware.js';
3
+ export class CodeSourceAccount extends MetaDataAware {
3
4
  id;
4
- name;
5
5
  userId;
6
6
  workspaceId;
7
7
  type;
@@ -10,9 +10,7 @@ export class CodeSourceAccount {
10
10
  // public scopes: string;
11
11
  state;
12
12
  static parse(rawSourcesAccount) {
13
- const sourcesAccount = new CodeSourceAccount();
14
- sourcesAccount.id = rawSourcesAccount.id;
15
- sourcesAccount.name = rawSourcesAccount.name;
13
+ const sourcesAccount = MetaDataAware.parseMetaData(new CodeSourceAccount(), rawSourcesAccount);
16
14
  sourcesAccount.userId = rawSourcesAccount.user;
17
15
  sourcesAccount.workspaceId = rawSourcesAccount.workspace;
18
16
  sourcesAccount.type = rawSourcesAccount.type;
@@ -1,19 +1,16 @@
1
1
  import { State } from '../State.js';
2
2
  import { StateAware } from '../StateAware.js';
3
3
  import { MetaDataAware } from '../../Core/MetaDataAware.js';
4
+ import { ApiRecord } from '../ApiRecord.js';
4
5
  export declare class Flow extends MetaDataAware implements StateAware {
5
6
  id: string;
6
7
  key: string;
7
- name: string;
8
- description: string;
9
8
  projectId: string;
10
9
  isDirect: boolean;
11
10
  state: State;
12
- createdAt?: Date;
13
- updatedAt?: Date;
14
11
  /** The maximum number of flows to run at any time (0 = no limit) * */
15
12
  parallelLimit: number;
16
- codeSource: string | null;
17
- runStrategy: string | null;
18
- static parse(rawFlow: any): Flow;
13
+ codeSourceId: string | null;
14
+ runStrategyId: string | null;
15
+ static parse(rawFlow: ApiRecord): Flow;
19
16
  }
@@ -1,38 +1,25 @@
1
1
  import { State } from '../State.js';
2
2
  import { Utils } from '../../Utils.js';
3
3
  import { MetaDataAware } from '../../Core/MetaDataAware.js';
4
- import { DataValueCollection } from '../DataValueCollection.js';
5
4
  export class Flow extends MetaDataAware {
6
5
  id;
7
6
  key;
8
- name;
9
- description;
10
7
  projectId;
11
8
  isDirect = false;
12
9
  state = State.Active;
13
- createdAt;
14
- updatedAt;
15
10
  /** The maximum number of flows to run at any time (0 = no limit) * */
16
11
  parallelLimit = 0;
17
- codeSource = null;
18
- runStrategy = null;
12
+ codeSourceId = null;
13
+ runStrategyId = null;
19
14
  static parse(rawFlow) {
20
- const flow = new Flow();
21
- flow.id = rawFlow.id;
15
+ const flow = MetaDataAware.parseMetaData(new Flow(), rawFlow);
22
16
  flow.key = rawFlow.key;
23
17
  flow.projectId = rawFlow.project;
24
- flow.name = rawFlow.name;
25
- flow.description = rawFlow.description;
26
18
  flow.isDirect = Utils.isTrue(rawFlow.is_direct);
27
19
  flow.state = State.fromString(rawFlow.state);
28
- flow.updatedAt = (rawFlow.updated === null || rawFlow.updated === undefined) ? undefined : Utils.parseRawDate(rawFlow.updated);
29
- flow.createdAt = (rawFlow.created === null || rawFlow.created === undefined) ? undefined : Utils.parseRawDate(rawFlow.created);
30
20
  flow.parallelLimit = Utils.parseInt(rawFlow.parallel_limit);
31
- flow.codeSource = rawFlow.code_source;
32
- flow.runStrategy = rawFlow.run_strategy;
33
- if (Object.prototype.hasOwnProperty.call(rawFlow, 'metadata')) {
34
- flow.metadata = DataValueCollection.fromObject(rawFlow.metadata);
35
- }
21
+ flow.codeSourceId = rawFlow.code_source;
22
+ flow.runStrategyId = rawFlow.run_strategy;
36
23
  return flow;
37
24
  }
38
25
  }
@@ -1,10 +1,10 @@
1
1
  import { LogLevel } from '../Log/LogLevel.js';
2
2
  import { MetaDataAware } from '../../Core/MetaDataAware.js';
3
3
  import { FlowRunPriority } from './FlowRunPriority.js';
4
+ import { ApiRecord } from '../ApiRecord.js';
4
5
  export declare class FlowRun extends MetaDataAware {
5
6
  id: string;
6
7
  flowId: string;
7
- name: string;
8
8
  arguments: any;
9
9
  projectEnvironmentId: string;
10
10
  triggerId: string;
@@ -12,7 +12,5 @@ export declare class FlowRun extends MetaDataAware {
12
12
  deployId: string;
13
13
  logLevelCount: Map<LogLevel, number>;
14
14
  logsPurged: boolean;
15
- createdAt?: Date;
16
- updatedAt?: Date;
17
- static parse(rawFlowRun: any): FlowRun;
15
+ static parse(rawFlowRun: ApiRecord): FlowRun;
18
16
  }
@@ -1,12 +1,10 @@
1
1
  import { Utils } from '../../Utils.js';
2
2
  import { MetaDataAware } from '../../Core/MetaDataAware.js';
3
- import { DataValueCollection } from '../DataValueCollection.js';
4
3
  import { FlowRunPriority } from './FlowRunPriority.js';
5
4
  export class FlowRun extends MetaDataAware {
6
5
  id;
7
6
  // public key: string;
8
7
  flowId;
9
- name;
10
8
  arguments;
11
9
  projectEnvironmentId;
12
10
  triggerId;
@@ -15,10 +13,8 @@ export class FlowRun extends MetaDataAware {
15
13
  deployId;
16
14
  logLevelCount;
17
15
  logsPurged = false;
18
- createdAt;
19
- updatedAt;
20
16
  static parse(rawFlowRun) {
21
- const flowRun = new FlowRun();
17
+ const flowRun = MetaDataAware.parseMetaData(new FlowRun(), rawFlowRun);
22
18
  flowRun.id = rawFlowRun.id;
23
19
  flowRun.flowId = rawFlowRun.flow;
24
20
  flowRun.arguments = rawFlowRun.arguments;
@@ -28,11 +24,6 @@ export class FlowRun extends MetaDataAware {
28
24
  flowRun.deployId = rawFlowRun.deploy;
29
25
  flowRun.logLevelCount = rawFlowRun.log_level_count;
30
26
  flowRun.logsPurged = Utils.isTrue(rawFlowRun.logs_purged);
31
- flowRun.createdAt = (rawFlowRun.created === null || rawFlowRun.created === undefined) ? undefined : Utils.parseRawDate(rawFlowRun.created);
32
- flowRun.updatedAt = (rawFlowRun.updated === null || rawFlowRun.updated === undefined) ? undefined : Utils.parseRawDate(rawFlowRun.updated);
33
- if (Object.prototype.hasOwnProperty.call(rawFlowRun, 'metadata')) {
34
- flowRun.metadata = DataValueCollection.fromObject(rawFlowRun.metadata);
35
- }
36
27
  return flowRun;
37
28
  }
38
29
  }
@@ -5,7 +5,6 @@ import { ChannelType } from './ChannelType.js';
5
5
  export declare class Channel extends MetaDataAware implements StateAware {
6
6
  id: string;
7
7
  ownerId: string;
8
- name: string;
9
8
  type: ChannelType;
10
9
  data: any;
11
10
  state: State;
@@ -1,12 +1,10 @@
1
1
  import { State } from '../../State.js';
2
2
  import { Utils } from '../../../Utils.js';
3
3
  import { MetaDataAware } from '../../../Core/MetaDataAware.js';
4
- import { DataValueCollection } from '../../DataValueCollection.js';
5
4
  import { ChannelType } from './ChannelType.js';
6
5
  export class Channel extends MetaDataAware {
7
6
  id;
8
7
  ownerId;
9
- name;
10
8
  type;
11
9
  data;
12
10
  state = State.Active;
@@ -28,9 +26,6 @@ export class Channel extends MetaDataAware {
28
26
  channel.isPrivate = Utils.isTrue(rawChannel.is_private);
29
27
  channel.singleUse = Utils.isTrue(rawChannel.single_use);
30
28
  channel.workspaces = rawChannel.workspaces;
31
- if (Object.prototype.hasOwnProperty.call(rawChannel, 'metadata')) {
32
- channel.metadata = DataValueCollection.fromObject(rawChannel.metadata);
33
- }
34
29
  return channel;
35
30
  }
36
31
  }
@@ -3,6 +3,7 @@ import { EventType } from '../Event/EventType.js';
3
3
  import { LogLevel } from '../Log/LogLevel.js';
4
4
  import { StateAware } from '../StateAware.js';
5
5
  import { MetaDataAware } from '../../Core/MetaDataAware.js';
6
+ import { ApiRecord } from '../ApiRecord.js';
6
7
  export declare class Subscriber extends MetaDataAware implements StateAware {
7
8
  id: string;
8
9
  eventTypes: EventType[];
@@ -12,7 +13,7 @@ export declare class Subscriber extends MetaDataAware implements StateAware {
12
13
  logLevelThreshold: LogLevel;
13
14
  state: State;
14
15
  constructor(id: string, eventTypes: EventType[], projectEnvironmentId: string, flowId: string, channelIds: string[], logLevelThreshold?: LogLevel);
15
- static parseRaw(rawSubscriber: any): Subscriber;
16
+ static parseRaw(rawSubscriber: ApiRecord): Subscriber;
16
17
  getLogLevelThreshold(): LogLevel;
17
18
  hasLogLevelThreshold(): boolean;
18
19
  }
@@ -1,7 +1,6 @@
1
1
  import { State } from '../State.js';
2
2
  import { LogLevel } from '../Log/LogLevel.js';
3
3
  import { MetaDataAware } from '../../Core/MetaDataAware.js';
4
- import { DataValueCollection } from '../DataValueCollection.js';
5
4
  export class Subscriber extends MetaDataAware {
6
5
  id;
7
6
  eventTypes;
@@ -22,11 +21,9 @@ export class Subscriber extends MetaDataAware {
22
21
  this.logLevelThreshold = logLevelThreshold;
23
22
  }
24
23
  static parseRaw(rawSubscriber) {
25
- const subscriber = new Subscriber(rawSubscriber.id, rawSubscriber.event_types, rawSubscriber.project_environment, rawSubscriber.flow, rawSubscriber.channels, rawSubscriber.log_level_threshold);
24
+ let subscriber = new Subscriber(rawSubscriber.id, rawSubscriber.event_types, rawSubscriber.project_environment, rawSubscriber.flow, rawSubscriber.channels, rawSubscriber.log_level_threshold);
25
+ subscriber = MetaDataAware.parseMetaData(subscriber, rawSubscriber);
26
26
  subscriber.state = State.fromString(rawSubscriber.state);
27
- if (Object.prototype.hasOwnProperty.call(rawSubscriber, 'metadata')) {
28
- subscriber.metadata = DataValueCollection.fromObject(rawSubscriber.metadata);
29
- }
30
27
  return subscriber;
31
28
  }
32
29
  getLogLevelThreshold() {
@@ -0,0 +1,20 @@
1
+ export declare class Filters {
2
+ /**
3
+ * gte = greater than or equal
4
+ * gt = greater than
5
+ * lte = less than or equal
6
+ * lt = more than
7
+ * eq = equal
8
+ * in = in
9
+ */
10
+ private readonly filters;
11
+ addEqualFilter(field: string, value: string | number): void;
12
+ addBetweenFilter(field: string, valueA: string | number, valueB: string | number): void;
13
+ toArray(): Filter[];
14
+ }
15
+ type Filter = {
16
+ field: string;
17
+ method: string;
18
+ value: string | number;
19
+ };
20
+ export {};
@@ -0,0 +1,33 @@
1
+ export class Filters {
2
+ /**
3
+ * gte = greater than or equal
4
+ * gt = greater than
5
+ * lte = less than or equal
6
+ * lt = more than
7
+ * eq = equal
8
+ * in = in
9
+ */
10
+ filters = [];
11
+ addEqualFilter(field, value) {
12
+ this.filters.push({
13
+ field: field,
14
+ method: 'eq',
15
+ value: value,
16
+ });
17
+ }
18
+ addBetweenFilter(field, valueA, valueB) {
19
+ this.filters.push({
20
+ field: field,
21
+ method: 'gte',
22
+ value: valueA,
23
+ });
24
+ this.filters.push({
25
+ field: field,
26
+ method: 'lte',
27
+ value: valueB,
28
+ });
29
+ }
30
+ toArray() {
31
+ return this.filters;
32
+ }
33
+ }
@@ -1,5 +1,6 @@
1
1
  import { CodeDeployStatus } from './CodeDeployStatus.js';
2
2
  import { ProjectDeployCommit } from './ProjectDeployCommit.js';
3
+ import { ApiRecord } from '../ApiRecord.js';
3
4
  export declare class CodeDeploy {
4
5
  id: string;
5
6
  codeSourceId: string;
@@ -17,5 +18,5 @@ export declare class CodeDeploy {
17
18
  errors: {
18
19
  message: string;
19
20
  }[] | null;
20
- static parse(rawCodeDeploy: any): CodeDeploy;
21
+ static parse(rawCodeDeploy: ApiRecord): CodeDeploy;
21
22
  }
@@ -18,7 +18,7 @@ export class CodeDeploy {
18
18
  errors = null;
19
19
  static parse(rawCodeDeploy) {
20
20
  const projectDeploy = new CodeDeploy();
21
- projectDeploy.id = rawCodeDeploy.id.toString();
21
+ projectDeploy.id = rawCodeDeploy.id;
22
22
  projectDeploy.codeSourceId = rawCodeDeploy.code_source;
23
23
  projectDeploy.platformId = rawCodeDeploy.platform;
24
24
  projectDeploy.buildStrategyId = rawCodeDeploy.build_strategy;
@@ -1,12 +1,13 @@
1
1
  import { State } from '../State.js';
2
2
  import { StateAware } from '../StateAware.js';
3
- export declare class Project implements StateAware {
3
+ import { MetaDataAware } from '../../Core/MetaDataAware.js';
4
+ import { ApiRecord } from '../ApiRecord.js';
5
+ export declare class Project extends MetaDataAware implements StateAware {
4
6
  id: string;
5
7
  key: string;
6
- name: string;
7
8
  workspaceId: string;
8
9
  defaultEnvironmentId: string;
9
10
  state: State;
10
11
  constructor(id: string, key: string, name: string);
11
- static parse(rawProject: any): Project;
12
+ static parse(rawProject: ApiRecord): Project;
12
13
  }
@@ -1,18 +1,20 @@
1
1
  import { State } from '../State.js';
2
- export class Project {
2
+ import { MetaDataAware } from '../../Core/MetaDataAware.js';
3
+ export class Project extends MetaDataAware {
3
4
  id;
4
5
  key;
5
- name;
6
6
  workspaceId;
7
7
  defaultEnvironmentId;
8
8
  state = State.Active;
9
9
  constructor(id, key, name) {
10
+ super();
10
11
  this.id = id;
11
12
  this.key = key;
12
13
  this.name = name;
13
14
  }
14
15
  static parse(rawProject) {
15
- const project = new Project(rawProject.id, rawProject.key, rawProject.name);
16
+ let project = new Project(rawProject.id, rawProject.key, rawProject.name);
17
+ project = MetaDataAware.parseMetaData(project, rawProject);
16
18
  project.workspaceId = rawProject.workspace;
17
19
  // if (rawProject.default !== null && rawProject.default !== undefined) {
18
20
  // project.default = Utils.isTrue(rawProject.default);
@@ -1,14 +1,15 @@
1
1
  import { State } from '../State.js';
2
2
  import { StateAware } from '../StateAware.js';
3
+ import { ApiRecord } from '../ApiRecord.js';
4
+ import { MetaDataAware } from '../../Core/MetaDataAware.js';
3
5
  import { ProjectEnvironmentType } from './ProjectEnvironmentType.js';
4
- export declare class ProjectEnvironment implements StateAware {
6
+ export declare class ProjectEnvironment extends MetaDataAware implements StateAware {
5
7
  id: string;
6
8
  key: string;
7
9
  projectId: string;
8
- name: string;
9
10
  codeSourceId: string | null;
10
11
  parentId: string | null;
11
12
  type: ProjectEnvironmentType;
12
13
  state: State;
13
- static parse(rawProjectEnvironment: any): ProjectEnvironment;
14
+ static parse(rawProjectEnvironment: ApiRecord): ProjectEnvironment;
14
15
  }
@@ -1,20 +1,19 @@
1
1
  import { State } from '../State.js';
2
+ import { MetaDataAware } from '../../Core/MetaDataAware.js';
2
3
  import { ProjectEnvironmentType } from './ProjectEnvironmentType.js';
3
- export class ProjectEnvironment {
4
+ export class ProjectEnvironment extends MetaDataAware {
4
5
  id;
5
6
  key;
6
7
  projectId;
7
- name;
8
8
  codeSourceId = null;
9
9
  parentId = null;
10
10
  type = ProjectEnvironmentType.Production;
11
11
  state = State.Active;
12
12
  static parse(rawProjectEnvironment) {
13
- const projectEnvironment = new ProjectEnvironment();
14
- projectEnvironment.id = rawProjectEnvironment.id.toString();
13
+ const projectEnvironment = MetaDataAware.parseMetaData(new ProjectEnvironment(), rawProjectEnvironment);
14
+ projectEnvironment.id = rawProjectEnvironment.id;
15
15
  projectEnvironment.key = rawProjectEnvironment.key;
16
16
  projectEnvironment.projectId = rawProjectEnvironment.project;
17
- projectEnvironment.name = rawProjectEnvironment.name;
18
17
  projectEnvironment.codeSourceId = rawProjectEnvironment.code_source;
19
18
  projectEnvironment.parentId = rawProjectEnvironment.parent;
20
19
  projectEnvironment.type = ProjectEnvironmentType.fromString(rawProjectEnvironment.type);
@@ -2,18 +2,17 @@ import { State } from '../State.js';
2
2
  import { StateAware } from '../StateAware.js';
3
3
  import { MetaDataAware } from '../../Core/MetaDataAware.js';
4
4
  import { DataValueCollection } from '../DataValueCollection.js';
5
+ import { ApiRecord } from '../ApiRecord.js';
5
6
  export declare class Trigger extends MetaDataAware implements StateAware {
6
7
  id: string;
7
8
  type: string;
8
9
  projectEnvironmentId: string;
9
10
  flowId: string;
10
- name: string;
11
- description: string;
12
11
  target: string;
13
12
  arguments: {};
14
13
  data: DataValueCollection;
15
14
  state: State;
16
15
  constructor(id: string, type: string, projectEnvironmentId: string, flowId: string, data: DataValueCollection);
17
- static parse(rawTrigger: any): Trigger;
16
+ static parse(rawTrigger: ApiRecord): Trigger;
18
17
  getData(): DataValueCollection;
19
18
  }
@@ -6,8 +6,6 @@ export class Trigger extends MetaDataAware {
6
6
  type;
7
7
  projectEnvironmentId;
8
8
  flowId;
9
- name;
10
- description;
11
9
  target;
12
10
  arguments;
13
11
  data;
@@ -25,14 +23,9 @@ export class Trigger extends MetaDataAware {
25
23
  const flowId = rawTrigger.flow;
26
24
  const parsedData = DataValueCollection.fromObject(rawTrigger.data);
27
25
  const trigger = new Trigger(rawTrigger.id, rawTrigger.type, rawTrigger.project_environment, flowId, parsedData);
28
- trigger.name = rawTrigger.name;
29
- trigger.description = rawTrigger.description;
30
26
  trigger.target = rawTrigger.target;
31
27
  trigger.arguments = rawTrigger.arguments;
32
28
  trigger.state = State.fromString(rawTrigger.state);
33
- if (Object.prototype.hasOwnProperty.call(rawTrigger, 'metadata')) {
34
- trigger.metadata = DataValueCollection.fromObject(rawTrigger.metadata);
35
- }
36
29
  return trigger;
37
30
  }
38
31
  getData() {
@@ -1,9 +1,10 @@
1
1
  import { State } from '../State.js';
2
2
  import { StateAware } from '../StateAware.js';
3
- export declare class Workspace implements StateAware {
3
+ import { MetaDataAware } from '../../Core/MetaDataAware.js';
4
+ import { ApiRecord } from '../ApiRecord.js';
5
+ export declare class Workspace extends MetaDataAware implements StateAware {
4
6
  id: string;
5
- name: string;
6
7
  key: string;
7
8
  state: State;
8
- static parse(raw: any): Workspace;
9
+ static parse(raw: ApiRecord): Workspace;
9
10
  }
@@ -1,13 +1,12 @@
1
1
  import { State } from '../State.js';
2
- export class Workspace {
2
+ import { MetaDataAware } from '../../Core/MetaDataAware.js';
3
+ export class Workspace extends MetaDataAware {
3
4
  id;
4
- name;
5
5
  key;
6
6
  state;
7
7
  static parse(raw) {
8
- const workspace = new Workspace();
8
+ const workspace = MetaDataAware.parseMetaData(new Workspace(), raw);
9
9
  workspace.id = raw.id;
10
- workspace.name = raw.name;
11
10
  workspace.key = raw.key;
12
11
  workspace.state = State.fromString(raw.state);
13
12
  return workspace;
@@ -1,13 +1,14 @@
1
1
  import { State } from '../State.js';
2
2
  import { WorkspaceMemberInviteState } from './WorkspaceMemberInviteState.js';
3
+ import { ApiRecord } from '../ApiRecord.js';
3
4
  export declare class WorkspaceMember {
4
5
  id: string;
5
6
  workspaceId: string;
6
7
  email: string;
7
8
  invite: boolean;
8
- last_login: Date | null;
9
+ lastLoginAt: Date | null;
9
10
  name: string;
10
- role: string;
11
+ roleId: string;
11
12
  state: State | WorkspaceMemberInviteState;
12
- static parse(rawMember: any): WorkspaceMember;
13
+ static parse(rawMember: ApiRecord): WorkspaceMember;
13
14
  }
@@ -6,9 +6,9 @@ export class WorkspaceMember {
6
6
  workspaceId;
7
7
  email;
8
8
  invite;
9
- last_login = null;
9
+ lastLoginAt = null;
10
10
  name;
11
- role;
11
+ roleId;
12
12
  state;
13
13
  static parse(rawMember) {
14
14
  const member = new WorkspaceMember();
@@ -17,10 +17,10 @@ export class WorkspaceMember {
17
17
  member.email = rawMember.email;
18
18
  member.invite = Utils.isTrue(rawMember.invite);
19
19
  if (rawMember.last_login !== null && rawMember.last_login !== undefined) {
20
- member.last_login = Utils.parseRawDate(rawMember.last_login);
20
+ member.lastLoginAt = Utils.parseRawDate(rawMember.last_login);
21
21
  }
22
22
  member.name = rawMember.name;
23
- member.role = rawMember.role;
23
+ member.roleId = rawMember.role;
24
24
  if (member.invite) {
25
25
  member.state = WorkspaceMemberInviteState.fromString(rawMember.state);
26
26
  }
@@ -6,5 +6,6 @@ export declare class UserActionEndpoint extends Endpoint {
6
6
  getWorkspaceMemberActions(workspaceId: string, memberId: string, pagination?: CursorPagination | null): Promise<CollectionResult<UserAction>>;
7
7
  getUserActions(userId: string, pagination?: CursorPagination | null): Promise<CollectionResult<UserAction>>;
8
8
  getByResource(resourceId: string, resourceType: string, pagination?: CursorPagination | null): Promise<CollectionResult<UserAction>>;
9
+ getAll(pagination?: CursorPagination | null): Promise<CollectionResult<UserAction>>;
9
10
  private static parse;
10
11
  }
@@ -8,8 +8,7 @@ export class UserActionEndpoint extends Endpoint {
8
8
  try {
9
9
  const queryString = new QueryString('/workspaces/' + workspaceId + '/members/' + memberId + '/actions');
10
10
  queryString.addPagination(pagination);
11
- const result = await this.requestCollection(queryString, UserActionEndpoint.parse, null, 'GET');
12
- return result;
11
+ return await this.requestCollection(queryString, UserActionEndpoint.parse, null, 'GET');
13
12
  }
14
13
  catch (error) {
15
14
  if (this.httpClient.isDebugEnabled()) {
@@ -22,8 +21,7 @@ export class UserActionEndpoint extends Endpoint {
22
21
  try {
23
22
  const queryString = new QueryString('/users/' + userId + '/actions');
24
23
  queryString.addPagination(pagination);
25
- const result = await this.requestCollection(queryString, UserActionEndpoint.parse, null, 'GET');
26
- return result;
24
+ return await this.requestCollection(queryString, UserActionEndpoint.parse, null, 'GET');
27
25
  }
28
26
  catch (error) {
29
27
  if (this.httpClient.isDebugEnabled()) {
@@ -36,8 +34,7 @@ export class UserActionEndpoint extends Endpoint {
36
34
  try {
37
35
  const queryString = new QueryString('/resources/' + resourceType + '/' + resourceId + '/actions');
38
36
  queryString.addPagination(pagination);
39
- const result = await this.requestCollection(queryString, UserActionEndpoint.parse, null, 'GET');
40
- return result;
37
+ return await this.requestCollection(queryString, UserActionEndpoint.parse, null, 'GET');
41
38
  }
42
39
  catch (error) {
43
40
  if (this.httpClient.isDebugEnabled()) {
@@ -46,6 +43,11 @@ export class UserActionEndpoint extends Endpoint {
46
43
  throw error;
47
44
  }
48
45
  }
46
+ async getAll(pagination = null) {
47
+ const queryString = new QueryString('/audit-logs');
48
+ queryString.addPagination(pagination);
49
+ return await this.requestCollection(queryString, UserActionEndpoint.parse, null, 'GET');
50
+ }
49
51
  static parse(rawUserEvent) {
50
52
  const userAction = new UserAction();
51
53
  userAction.id = rawUserEvent.id;
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const VERSION = "1.23.0";
1
+ export declare const VERSION = "1.24.0";
package/dist/version.js CHANGED
@@ -1 +1 @@
1
- export const VERSION = "1.23.0";
1
+ export const VERSION = "1.24.0";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "attlaz-client",
3
- "version": "1.23.1",
3
+ "version": "1.25.0",
4
4
  "description": "Javascript Client to access Attlaz API",
5
5
  "types": "./dist/index.d.ts",
6
6
  "main": "./dist/index.js",