@abyss-project/console 1.0.1 → 1.0.3

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 (118) hide show
  1. package/README.md +1 -1
  2. package/dist/api/index.d.ts +1 -2
  3. package/dist/api/index.js +1 -2
  4. package/dist/api/ip-address.api.d.ts +6 -0
  5. package/dist/api/ip-address.api.js +29 -0
  6. package/dist/api/project.admin.api.d.ts +2 -0
  7. package/dist/api/project.admin.api.js +9 -0
  8. package/dist/api/project.api.d.ts +3 -0
  9. package/dist/api/project.api.js +14 -0
  10. package/dist/api/workflow.admin.api.d.ts +8 -8
  11. package/dist/api/workflow.admin.api.js +29 -24
  12. package/dist/api/workflow.api.d.ts +11 -6
  13. package/dist/api/workflow.api.js +60 -23
  14. package/dist/index.d.ts +64 -31
  15. package/dist/index.js +87 -47
  16. package/dist/types/constants/index.d.ts +1 -0
  17. package/dist/types/constants/index.js +17 -0
  18. package/dist/types/constants/webhook.constants.d.ts +6 -0
  19. package/dist/types/constants/webhook.constants.js +9 -0
  20. package/dist/types/dto/index.d.ts +1 -0
  21. package/dist/types/dto/index.js +1 -0
  22. package/dist/types/dto/workflow.dto.d.ts +63 -0
  23. package/dist/types/dto/workflow.dto.js +2 -0
  24. package/dist/types/enum/api-error.enum.d.ts +27 -3
  25. package/dist/types/enum/api-error.enum.js +27 -3
  26. package/dist/types/enum/index.d.ts +1 -0
  27. package/dist/types/enum/index.js +1 -0
  28. package/dist/types/enum/workflow.enum.d.ts +82 -0
  29. package/dist/types/enum/workflow.enum.js +97 -0
  30. package/dist/types/index.d.ts +1 -0
  31. package/dist/types/index.js +1 -0
  32. package/dist/types/interface/api/index.d.ts +6 -0
  33. package/dist/types/interface/api/index.js +6 -0
  34. package/dist/types/interface/api/requests/ip-address.request.d.ts +32 -0
  35. package/dist/types/interface/api/requests/ip-address.request.js +2 -0
  36. package/dist/types/interface/api/requests/project.admin.request.d.ts +3 -0
  37. package/dist/types/interface/api/requests/project.admin.request.js +2 -0
  38. package/dist/types/interface/api/requests/project.request.d.ts +6 -0
  39. package/dist/types/interface/api/requests/project.request.js +2 -0
  40. package/dist/types/interface/api/requests/workflow-webhook-trigger.request.d.ts +66 -0
  41. package/dist/types/interface/api/requests/workflow-webhook-trigger.request.js +2 -0
  42. package/dist/types/interface/api/requests/workflow-webhook.request.d.ts +123 -0
  43. package/dist/types/interface/api/requests/workflow-webhook.request.js +2 -0
  44. package/dist/types/interface/api/requests/workflow.admin.request.d.ts +14 -20
  45. package/dist/types/interface/api/requests/workflow.request.d.ts +83 -46
  46. package/dist/types/interface/api/responses/ip-address.response.d.ts +21 -0
  47. package/dist/types/interface/api/responses/ip-address.response.js +2 -0
  48. package/dist/types/interface/api/responses/project.admin.response.d.ts +4 -0
  49. package/dist/types/interface/api/responses/project.admin.response.js +2 -0
  50. package/dist/types/interface/api/responses/project.response.d.ts +10 -0
  51. package/dist/types/interface/api/responses/project.response.js +2 -0
  52. package/dist/types/interface/api/responses/workflow-webhook-action.response.d.ts +24 -0
  53. package/dist/types/interface/api/responses/workflow-webhook-action.response.js +2 -0
  54. package/dist/types/interface/api/responses/workflow-webhook-public.response.d.ts +7 -0
  55. package/dist/types/interface/api/responses/workflow-webhook-public.response.js +2 -0
  56. package/dist/types/interface/api/responses/workflow-webhook-trigger.response.d.ts +41 -0
  57. package/dist/types/interface/api/responses/workflow-webhook-trigger.response.js +2 -0
  58. package/dist/types/interface/api/responses/workflow-webhook.response.d.ts +56 -0
  59. package/dist/types/interface/api/responses/workflow-webhook.response.js +2 -0
  60. package/dist/types/interface/api/responses/workflow.admin.response.d.ts +4 -3
  61. package/dist/types/interface/api/responses/workflow.response.d.ts +43 -18
  62. package/dist/types/interface/index.d.ts +5 -1
  63. package/dist/types/interface/index.js +5 -1
  64. package/dist/types/interface/models/domain-verification.model.d.ts +5 -4
  65. package/dist/types/interface/models/ip-address.model.d.ts +17 -0
  66. package/dist/types/interface/models/ip-address.model.js +11 -0
  67. package/dist/types/interface/models/ip-whitelist.model.d.ts +19 -0
  68. package/dist/types/interface/models/ip-whitelist.model.js +9 -0
  69. package/dist/types/interface/models/project.model.d.ts +3 -5
  70. package/dist/types/interface/models/trigger-filter.model.d.ts +0 -0
  71. package/dist/types/interface/models/trigger-filter.model.js +1 -0
  72. package/dist/types/interface/models/webhook-action-log.model.d.ts +22 -0
  73. package/dist/types/interface/models/webhook-action-log.model.js +9 -0
  74. package/dist/types/interface/models/webhook-trigger-log.model.d.ts +23 -0
  75. package/dist/types/interface/models/webhook-trigger-log.model.js +9 -0
  76. package/dist/types/interface/models/workflow-execution.model.d.ts +12 -66
  77. package/dist/types/interface/models/workflow-execution.model.js +0 -11
  78. package/dist/types/interface/models/workflow-step-config.model.d.ts +0 -0
  79. package/dist/types/interface/models/workflow-step-config.model.js +1 -0
  80. package/dist/types/interface/models/workflow-step-data.model.d.ts +0 -0
  81. package/dist/types/interface/models/workflow-step-data.model.js +1 -0
  82. package/dist/types/interface/models/workflow-step-execution.model.d.ts +23 -0
  83. package/dist/types/interface/models/workflow-step-execution.model.js +2 -0
  84. package/dist/types/interface/models/workflow-step.model.d.ts +10 -94
  85. package/dist/types/interface/models/workflow-step.model.js +0 -42
  86. package/dist/types/interface/models/workflow-trigger-config.model.d.ts +0 -0
  87. package/dist/types/interface/models/workflow-trigger-config.model.js +1 -0
  88. package/dist/types/interface/models/workflow-trigger.model.d.ts +35 -0
  89. package/dist/types/interface/models/workflow-trigger.model.js +2 -0
  90. package/dist/types/interface/models/workflow-webhook-action.model.d.ts +27 -0
  91. package/dist/types/interface/models/workflow-webhook-action.model.js +2 -0
  92. package/dist/types/interface/models/workflow-webhook-incoming-log.model.d.ts +19 -0
  93. package/dist/types/interface/models/workflow-webhook-incoming-log.model.js +2 -0
  94. package/dist/types/interface/models/workflow-webhook-outgoing-log.model.d.ts +21 -0
  95. package/dist/types/interface/models/workflow-webhook-outgoing-log.model.js +2 -0
  96. package/dist/types/interface/models/workflow-webhook-trigger-allowed-ip.model.d.ts +10 -0
  97. package/dist/types/interface/models/workflow-webhook-trigger-allowed-ip.model.js +2 -0
  98. package/dist/types/interface/models/workflow-webhook-trigger.model.d.ts +20 -0
  99. package/dist/types/interface/models/workflow-webhook-trigger.model.js +2 -0
  100. package/dist/types/interface/models/workflow-webhook.model.d.ts +27 -0
  101. package/dist/types/interface/models/workflow-webhook.model.js +2 -0
  102. package/dist/types/interface/models/workflow.model.d.ts +4 -72
  103. package/dist/types/interface/models/workflow.model.js +0 -22
  104. package/dist/utils/__tests__/ip-address-reference.utils.test.d.ts +0 -0
  105. package/dist/utils/__tests__/ip-address-reference.utils.test.js +1 -0
  106. package/dist/utils/__tests__/reference-resolver.examples.d.ts +0 -0
  107. package/dist/utils/__tests__/reference-resolver.examples.js +1 -0
  108. package/dist/utils/index.d.ts +2 -0
  109. package/dist/utils/index.js +2 -0
  110. package/dist/utils/ip-address-reference.utils.d.ts +0 -0
  111. package/dist/utils/ip-address-reference.utils.js +1 -0
  112. package/dist/utils/ip-address-validator.utils.d.ts +14 -0
  113. package/dist/utils/ip-address-validator.utils.js +119 -0
  114. package/dist/utils/reference-resolver.utils.d.ts +52 -0
  115. package/dist/utils/reference-resolver.utils.js +219 -0
  116. package/package.json +1 -1
  117. package/USAGE_EXAMPLES.md +0 -257
  118. package/tsconfig.tsbuildinfo +0 -1
package/dist/index.js CHANGED
@@ -28,16 +28,18 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
28
28
  var __importDefault = (this && this.__importDefault) || function (mod) {
29
29
  return (mod && mod.__esModule) ? mod : { "default": mod };
30
30
  };
31
- var _a;
32
31
  Object.defineProperty(exports, "__esModule", { value: true });
33
32
  exports.AbyssConsoleCore = exports.WEBHOOK_SIGNATURE_ALGORITHM = exports.HEADER_WEBHOOK_SIGNATURE_NAME = exports.ADMIN_TOKEN_HEADER = exports.API_KEY_APPLICATION_HEADER = void 0;
34
33
  const axios_1 = __importDefault(require("axios"));
35
34
  const axios_retry_1 = __importStar(require("axios-retry"));
36
- const workflowApi = __importStar(require("./api/workflow.api"));
37
- const workflowAdminApi = __importStar(require("./api/workflow.admin.api"));
38
35
  const domainVerificationApi = __importStar(require("./api/domain-verification.api"));
39
36
  const domainVerificationAdminApi = __importStar(require("./api/domain-verification.admin.api"));
40
37
  const monitorApi = __importStar(require("./api/monitor.api"));
38
+ const workflowApi = __importStar(require("./api/workflow.api"));
39
+ const workflowAdminApi = __importStar(require("./api/workflow.admin.api"));
40
+ const ipAddressApi = __importStar(require("./api/ip-address.api"));
41
+ const projectApi = __importStar(require("./api/project.api"));
42
+ const projectAdminApi = __importStar(require("./api/project.admin.api"));
41
43
  __exportStar(require("./types"), exports);
42
44
  __exportStar(require("./utils"), exports);
43
45
  const MONITOR_DEFAULT_BASE_URL = 'https://console-api.abyss-project.fr/api/';
@@ -53,101 +55,139 @@ const RETRY_CODES = [
53
55
  ];
54
56
  class AbyssConsoleCore {
55
57
  static get sdk() {
56
- if (!_a._sdk) {
57
- _a._sdk = _a.buildSDK();
58
+ if (!AbyssConsoleCore._sdk) {
59
+ AbyssConsoleCore._sdk = AbyssConsoleCore.buildSDK();
58
60
  }
59
- return _a._sdk;
61
+ return AbyssConsoleCore._sdk;
60
62
  }
61
63
  static buildSDK() {
64
+ const domainVerificationSDK = {
65
+ create: domainVerificationApi.createDomainVerification,
66
+ list: domainVerificationApi.listDomainVerification,
67
+ get: domainVerificationApi.getDomainVerification,
68
+ verify: domainVerificationApi.verifyDomainVerification,
69
+ regenerate: domainVerificationApi.regenerateDomainVerification,
70
+ delete: domainVerificationApi.deleteDomainVerification,
71
+ ...(AbyssConsoleCore.config.admin
72
+ ? {
73
+ admin: {
74
+ runCron: domainVerificationAdminApi.runCron,
75
+ },
76
+ }
77
+ : {}),
78
+ };
62
79
  const workflowSDK = {
63
80
  create: workflowApi.createWorkflow,
64
81
  paginate: workflowApi.paginateWorkflow,
65
82
  get: workflowApi.getWorkflow,
66
83
  update: workflowApi.updateWorkflow,
67
- updateStatus: workflowApi.updateStatusWorkflow,
84
+ updateStatus: workflowApi.updateWorkflowStatus,
68
85
  delete: workflowApi.deleteWorkflow,
69
86
  step: {
70
87
  create: workflowApi.createWorkflowStep,
71
- list: workflowApi.listWorkflowSteps,
88
+ list: workflowApi.listWorkflowStep,
72
89
  update: workflowApi.updateWorkflowStep,
73
90
  delete: workflowApi.deleteWorkflowStep,
74
91
  },
75
92
  execution: {
76
93
  paginate: workflowApi.paginateWorkflowExecution,
77
94
  get: workflowApi.getWorkflowExecution,
78
- stats: workflowApi.getStatsWorkflowExecution,
95
+ getStats: workflowApi.getWorkflowStats,
79
96
  cancel: workflowApi.cancelWorkflowExecution,
80
97
  },
98
+ trigger: {
99
+ create: workflowApi.createWorkflowTrigger,
100
+ list: workflowApi.listWorkflowTrigger,
101
+ get: workflowApi.getWorkflowTrigger,
102
+ update: workflowApi.updateWorkflowTrigger,
103
+ delete: workflowApi.deleteWorkflowTrigger,
104
+ },
105
+ ...(AbyssConsoleCore.config.admin
106
+ ? {
107
+ admin: {
108
+ paginate: workflowAdminApi.paginateWorkflow,
109
+ get: workflowAdminApi.getWorkflow,
110
+ updateStatus: workflowAdminApi.updateWorkflowStatus,
111
+ delete: workflowAdminApi.deleteWorkflow,
112
+ execution: {
113
+ paginate: workflowAdminApi.paginateWorkflowExecution,
114
+ cancel: workflowAdminApi.cancelWorkflowExecution,
115
+ },
116
+ trigger: workflowAdminApi.triggerWorkflow,
117
+ },
118
+ }
119
+ : {}),
81
120
  };
82
- if (_a.config.admin) {
83
- workflowSDK.admin = {
84
- paginate: workflowAdminApi.paginateWorkflowAdmin,
85
- get: workflowAdminApi.getWorkflowAdmin,
86
- updateStatus: workflowAdminApi.updateStatusWorkflowAdmin,
87
- delete: workflowAdminApi.deleteWorkflowAdmin,
88
- trigger: workflowAdminApi.triggerWorkflowAdmin,
89
- execution: {
90
- paginate: workflowAdminApi.paginateWorkflowExecutionAdmin,
91
- cancel: workflowAdminApi.cancelWorkflowExecutionAdmin,
92
- },
93
- };
94
- }
95
- const domainVerificationSDK = {
96
- create: domainVerificationApi.createDomainVerification,
97
- list: domainVerificationApi.listDomainVerification,
98
- get: domainVerificationApi.getDomainVerification,
99
- verify: domainVerificationApi.verifyDomainVerification,
100
- regenerate: domainVerificationApi.regenerateDomainVerification,
101
- delete: domainVerificationApi.deleteDomainVerification,
121
+ const projectSDK = {
122
+ get: projectApi.getProject,
123
+ activate: projectApi.activateProject,
124
+ ...(AbyssConsoleCore.config.admin
125
+ ? {
126
+ admin: {
127
+ delete: projectAdminApi.deleteProject,
128
+ },
129
+ }
130
+ : {}),
102
131
  };
103
- if (_a.config.admin) {
104
- domainVerificationSDK.admin = {
105
- runCron: domainVerificationAdminApi.runCron,
106
- };
107
- }
108
132
  const baseSDK = {
109
- workflow: workflowSDK,
110
133
  domainVerification: domainVerificationSDK,
111
134
  monitor: {
112
135
  up: monitorApi.upMonitor,
113
136
  },
137
+ ipAddress: {
138
+ create: ipAddressApi.createIpAddress,
139
+ list: ipAddressApi.listIpAddress,
140
+ get: ipAddressApi.getIpAddress,
141
+ update: ipAddressApi.updateIpAddress,
142
+ delete: ipAddressApi.deleteIpAddress,
143
+ },
144
+ project: projectSDK,
145
+ workflow: workflowSDK,
114
146
  };
115
147
  return baseSDK;
116
148
  }
117
149
  static setConfig(config) {
118
- _a.config = { ..._a.config, ...config, admin: config.admin || false };
119
- _a._sdk = null;
150
+ var _a, _b, _c, _d, _e, _f;
151
+ AbyssConsoleCore.config = {
152
+ ...AbyssConsoleCore.config,
153
+ token: (_a = config.token) !== null && _a !== void 0 ? _a : AbyssConsoleCore.config.token,
154
+ applicationApiKey: (_b = config.applicationApiKey) !== null && _b !== void 0 ? _b : AbyssConsoleCore.config.applicationApiKey,
155
+ applicationId: (_c = config.applicationId) !== null && _c !== void 0 ? _c : AbyssConsoleCore.config.applicationId,
156
+ adminToken: (_d = config.adminToken) !== null && _d !== void 0 ? _d : AbyssConsoleCore.config.adminToken,
157
+ baseURL: (_e = config.baseURL) !== null && _e !== void 0 ? _e : AbyssConsoleCore.config.baseURL,
158
+ admin: (_f = config.admin) !== null && _f !== void 0 ? _f : false,
159
+ };
160
+ AbyssConsoleCore._sdk = null;
120
161
  if (config.baseURL) {
121
- _a.axios.defaults.baseURL = config.baseURL;
162
+ AbyssConsoleCore.axios.defaults.baseURL = config.baseURL;
122
163
  }
123
164
  if (config.token) {
124
- _a.axios.defaults.headers.common.Authorization = `Bearer ${config.token}`;
165
+ AbyssConsoleCore.axios.defaults.headers.common.Authorization = `Bearer ${config.token}`;
125
166
  }
126
167
  if (config.adminToken) {
127
- _a.axios.defaults.headers.common[exports.ADMIN_TOKEN_HEADER] = `${config.adminToken}`;
168
+ AbyssConsoleCore.axios.defaults.headers.common[exports.ADMIN_TOKEN_HEADER] = `${config.adminToken}`;
128
169
  }
129
170
  if (config.applicationApiKey) {
130
- _a.axios.defaults.headers.common[exports.API_KEY_APPLICATION_HEADER] = `${config.applicationApiKey}`;
171
+ AbyssConsoleCore.axios.defaults.headers.common[exports.API_KEY_APPLICATION_HEADER] = `${config.applicationApiKey}`;
131
172
  }
132
173
  }
133
174
  static getConfig() {
134
- return _a.config;
175
+ return AbyssConsoleCore.config;
135
176
  }
136
177
  static enableAxiosRetry(axiosRetryConfig) {
137
- (0, axios_retry_1.default)(_a.axios, {
178
+ (0, axios_retry_1.default)(AbyssConsoleCore.axios, {
138
179
  retries: NUMBER_RETRY_API,
139
180
  retryDelay: (retryCount) => retryCount * BASE_DELAY_BETWEEN_RETRY,
140
181
  retryCondition: (error) => {
141
- var _b;
182
+ var _a;
142
183
  return (0, axios_retry_1.isNetworkOrIdempotentRequestError)(error) ||
143
- RETRY_CODES.includes(((_b = error.response) === null || _b === void 0 ? void 0 : _b.status) || 502);
184
+ RETRY_CODES.includes(((_a = error.response) === null || _a === void 0 ? void 0 : _a.status) || 502);
144
185
  },
145
186
  ...axiosRetryConfig,
146
187
  });
147
188
  }
148
189
  }
149
190
  exports.AbyssConsoleCore = AbyssConsoleCore;
150
- _a = AbyssConsoleCore;
151
191
  AbyssConsoleCore.config = {
152
192
  token: '',
153
193
  applicationApiKey: '',
@@ -157,7 +197,7 @@ AbyssConsoleCore.config = {
157
197
  admin: false,
158
198
  };
159
199
  AbyssConsoleCore.axios = axios_1.default.create({
160
- baseURL: _a.config.baseURL,
200
+ baseURL: MONITOR_DEFAULT_BASE_URL,
161
201
  withCredentials: true,
162
202
  });
163
203
  AbyssConsoleCore._sdk = null;
@@ -0,0 +1 @@
1
+ export * from './webhook.constants';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./webhook.constants"), exports);
@@ -0,0 +1,6 @@
1
+ export declare const WEBHOOK_MAX_RETRIES_MIN = 0;
2
+ export declare const WEBHOOK_MAX_RETRIES_MAX = 10;
3
+ export declare const WEBHOOK_MAX_RETRIES_DEFAULT = 3;
4
+ export declare const WEBHOOK_RETRY_DELAY_MIN = 100;
5
+ export declare const WEBHOOK_RETRY_DELAY_MAX = 300000;
6
+ export declare const WEBHOOK_RETRY_DELAY_DEFAULT = 1000;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WEBHOOK_RETRY_DELAY_DEFAULT = exports.WEBHOOK_RETRY_DELAY_MAX = exports.WEBHOOK_RETRY_DELAY_MIN = exports.WEBHOOK_MAX_RETRIES_DEFAULT = exports.WEBHOOK_MAX_RETRIES_MAX = exports.WEBHOOK_MAX_RETRIES_MIN = void 0;
4
+ exports.WEBHOOK_MAX_RETRIES_MIN = 0;
5
+ exports.WEBHOOK_MAX_RETRIES_MAX = 10;
6
+ exports.WEBHOOK_MAX_RETRIES_DEFAULT = 3;
7
+ exports.WEBHOOK_RETRY_DELAY_MIN = 100;
8
+ exports.WEBHOOK_RETRY_DELAY_MAX = 300000;
9
+ exports.WEBHOOK_RETRY_DELAY_DEFAULT = 1000;
@@ -1 +1,2 @@
1
1
  export * from './domain-verification.dto';
2
+ export * from './workflow.dto';
@@ -15,3 +15,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./domain-verification.dto"), exports);
18
+ __exportStar(require("./workflow.dto"), exports);
@@ -0,0 +1,63 @@
1
+ import { FilterOperator, SwitchConditionOperator, HttpMethod, WorkflowActionType } from '../enum';
2
+ export interface IUserRegistrationWorkflowTriggerData {
3
+ userId: string;
4
+ email: string;
5
+ emailDomain: string;
6
+ alias?: string;
7
+ metadata?: Record<string, any>;
8
+ }
9
+ export interface IWebhookWorkflowTriggerData {
10
+ webhookId: string;
11
+ headers: Record<string, string>;
12
+ body: any;
13
+ method?: string;
14
+ url?: string;
15
+ receivedAt: string;
16
+ sourceIp?: string;
17
+ }
18
+ export type WorkflowTriggerData = IUserRegistrationWorkflowTriggerData | IWebhookWorkflowTriggerData | Record<string, any>;
19
+ export interface IFilterStepConfig {
20
+ filters: Array<{
21
+ field: string;
22
+ operator: FilterOperator;
23
+ value: any;
24
+ }>;
25
+ }
26
+ export interface ISleepStepConfig {
27
+ duration: number;
28
+ }
29
+ export interface ISwitchCondition {
30
+ field: string;
31
+ operator: SwitchConditionOperator;
32
+ value: any;
33
+ targetStepId: string;
34
+ }
35
+ export interface ISwitchStepConfig {
36
+ conditions: ISwitchCondition[];
37
+ defaultTargetStepId: string | null;
38
+ }
39
+ export interface ICallWebhookActionConfig {
40
+ actionType: WorkflowActionType.CALL_WEBHOOK;
41
+ url: string;
42
+ method: HttpMethod;
43
+ headers?: Record<string, string>;
44
+ body?: Record<string, any>;
45
+ timeout?: number;
46
+ retryCount?: number;
47
+ retryDelay?: number;
48
+ }
49
+ export interface IInviteToProjectActionConfig {
50
+ actionType: WorkflowActionType.INVITE_TO_PROJECT;
51
+ projectId: string;
52
+ permissions: string[];
53
+ message?: string;
54
+ }
55
+ export type IActionStepConfig = ICallWebhookActionConfig | IInviteToProjectActionConfig;
56
+ export type StepConfig = IFilterStepConfig | ISleepStepConfig | ISwitchStepConfig | IActionStepConfig;
57
+ export interface IWorkflowSettings {
58
+ maxExecutionsPerHour?: number;
59
+ maxExecutionsPerDay?: number;
60
+ retryOnFailure?: boolean;
61
+ maxRetryAttempts?: number;
62
+ retryDelaySeconds?: number;
63
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -14,7 +14,31 @@ export declare enum Code {
14
14
  serviceUnavailable = "service_unavailable",
15
15
  invalidData = "invalid_data",
16
16
  notImplemented = "not_implemented",
17
- maxCronTaskNumber = "max_cron_task_number",
18
- maxEventPublishPerDay = "max_event_publish_per_day",
19
- maxSentinelNumber = "max_sentinel_number"
17
+ workflowCannotUpdateArchived = "workflow_cannot_update_archived",
18
+ workflowCannotActivateWithoutSteps = "workflow_cannot_activate_without_steps",
19
+ workflowCannotDeleteActive = "workflow_cannot_delete_active",
20
+ workflowCannotDeleteWithRunningExecutions = "workflow_cannot_delete_with_running_executions",
21
+ workflowArchivedCanOnlySetDraft = "workflow_archived_can_only_set_draft",
22
+ workflowCannotCancelFinished = "workflow_cannot_cancel_finished",
23
+ ipAddressValueRequired = "ip_address_value_required",
24
+ ipAddressInvalidIPv4Format = "ip_address_invalid_ipv4_format",
25
+ ipAddressInvalidIPv6Format = "ip_address_invalid_ipv6_format",
26
+ ipAddressInvalidIPv4CIDRFormat = "ip_address_invalid_ipv4_cidr_format",
27
+ ipAddressInvalidIPv6CIDRFormat = "ip_address_invalid_ipv6_cidr_format",
28
+ ipAddressInvalidDomainFormat = "ip_address_invalid_domain_format",
29
+ ipAddressInvalidType = "ip_address_invalid_type",
30
+ domainVerificationInvalidDomain = "domain_verification_invalid_domain",
31
+ domainVerificationDnsTimeout = "domain_verification_dns_timeout",
32
+ domainVerificationDnsNotFound = "domain_verification_dns_not_found",
33
+ domainVerificationDnsNoData = "domain_verification_dns_no_data",
34
+ domainVerificationDnsError = "domain_verification_dns_error",
35
+ domainVerificationTokenNotFound = "domain_verification_token_not_found",
36
+ domainVerificationFileNotFound = "domain_verification_file_not_found",
37
+ domainVerificationAccessForbidden = "domain_verification_access_forbidden",
38
+ domainVerificationTimeout = "domain_verification_timeout",
39
+ domainVerificationDomainNotFound = "domain_verification_domain_not_found",
40
+ domainVerificationTokenMismatch = "domain_verification_token_mismatch",
41
+ domainVerificationSsrfProtection = "domain_verification_ssrf_protection",
42
+ domainVerificationHttpError = "domain_verification_http_error",
43
+ domainVerificationUnknownError = "domain_verification_unknown_error"
20
44
  }
@@ -19,7 +19,31 @@ var Code;
19
19
  Code["serviceUnavailable"] = "service_unavailable";
20
20
  Code["invalidData"] = "invalid_data";
21
21
  Code["notImplemented"] = "not_implemented";
22
- Code["maxCronTaskNumber"] = "max_cron_task_number";
23
- Code["maxEventPublishPerDay"] = "max_event_publish_per_day";
24
- Code["maxSentinelNumber"] = "max_sentinel_number";
22
+ Code["workflowCannotUpdateArchived"] = "workflow_cannot_update_archived";
23
+ Code["workflowCannotActivateWithoutSteps"] = "workflow_cannot_activate_without_steps";
24
+ Code["workflowCannotDeleteActive"] = "workflow_cannot_delete_active";
25
+ Code["workflowCannotDeleteWithRunningExecutions"] = "workflow_cannot_delete_with_running_executions";
26
+ Code["workflowArchivedCanOnlySetDraft"] = "workflow_archived_can_only_set_draft";
27
+ Code["workflowCannotCancelFinished"] = "workflow_cannot_cancel_finished";
28
+ Code["ipAddressValueRequired"] = "ip_address_value_required";
29
+ Code["ipAddressInvalidIPv4Format"] = "ip_address_invalid_ipv4_format";
30
+ Code["ipAddressInvalidIPv6Format"] = "ip_address_invalid_ipv6_format";
31
+ Code["ipAddressInvalidIPv4CIDRFormat"] = "ip_address_invalid_ipv4_cidr_format";
32
+ Code["ipAddressInvalidIPv6CIDRFormat"] = "ip_address_invalid_ipv6_cidr_format";
33
+ Code["ipAddressInvalidDomainFormat"] = "ip_address_invalid_domain_format";
34
+ Code["ipAddressInvalidType"] = "ip_address_invalid_type";
35
+ Code["domainVerificationInvalidDomain"] = "domain_verification_invalid_domain";
36
+ Code["domainVerificationDnsTimeout"] = "domain_verification_dns_timeout";
37
+ Code["domainVerificationDnsNotFound"] = "domain_verification_dns_not_found";
38
+ Code["domainVerificationDnsNoData"] = "domain_verification_dns_no_data";
39
+ Code["domainVerificationDnsError"] = "domain_verification_dns_error";
40
+ Code["domainVerificationTokenNotFound"] = "domain_verification_token_not_found";
41
+ Code["domainVerificationFileNotFound"] = "domain_verification_file_not_found";
42
+ Code["domainVerificationAccessForbidden"] = "domain_verification_access_forbidden";
43
+ Code["domainVerificationTimeout"] = "domain_verification_timeout";
44
+ Code["domainVerificationDomainNotFound"] = "domain_verification_domain_not_found";
45
+ Code["domainVerificationTokenMismatch"] = "domain_verification_token_mismatch";
46
+ Code["domainVerificationSsrfProtection"] = "domain_verification_ssrf_protection";
47
+ Code["domainVerificationHttpError"] = "domain_verification_http_error";
48
+ Code["domainVerificationUnknownError"] = "domain_verification_unknown_error";
25
49
  })(Code || (exports.Code = Code = {}));
@@ -1 +1,2 @@
1
1
  export * from './api-error.enum';
2
+ export * from './workflow.enum';
@@ -15,3 +15,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./api-error.enum"), exports);
18
+ __exportStar(require("./workflow.enum"), exports);
@@ -0,0 +1,82 @@
1
+ export declare enum WorkflowStatus {
2
+ DRAFT = "DRAFT",
3
+ ACTIVE = "ACTIVE",
4
+ PAUSED = "PAUSED",
5
+ ARCHIVED = "ARCHIVED"
6
+ }
7
+ export declare enum WorkflowTriggerType {
8
+ USER_REGISTRATION = "USER_REGISTRATION",
9
+ WEBHOOK = "WEBHOOK",
10
+ MANUAL = "MANUAL"
11
+ }
12
+ export declare enum WorkflowTemplate {
13
+ AUTO_INVITE_BY_DOMAIN = "AUTO_INVITE_BY_DOMAIN"
14
+ }
15
+ export declare enum WorkflowStepType {
16
+ FILTER = "FILTER",
17
+ SLEEP = "SLEEP",
18
+ SWITCH = "SWITCH",
19
+ ACTION = "ACTION"
20
+ }
21
+ export declare enum WorkflowActionType {
22
+ CALL_WEBHOOK = "CALL_WEBHOOK",
23
+ INVITE_TO_PROJECT = "INVITE_TO_PROJECT"
24
+ }
25
+ export declare enum WorkflowStepStatus {
26
+ PENDING = "PENDING",
27
+ RUNNING = "RUNNING",
28
+ COMPLETED = "COMPLETED",
29
+ FAILED = "FAILED",
30
+ SKIPPED = "SKIPPED"
31
+ }
32
+ export declare enum WorkflowExecutionStatus {
33
+ PENDING = "PENDING",
34
+ RUNNING = "RUNNING",
35
+ COMPLETED = "COMPLETED",
36
+ FAILED = "FAILED",
37
+ CANCELLED = "CANCELLED"
38
+ }
39
+ export declare enum WebhookDirection {
40
+ INCOMING = "INCOMING",
41
+ OUTGOING = "OUTGOING"
42
+ }
43
+ export declare enum WebhookStatus {
44
+ PENDING = "PENDING",
45
+ SUCCESS = "SUCCESS",
46
+ FAILED = "FAILED",
47
+ RETRYING = "RETRYING"
48
+ }
49
+ export declare enum FilterOperator {
50
+ EQUALS = "EQUALS",
51
+ NOT_EQUALS = "NOT_EQUALS",
52
+ CONTAINS = "CONTAINS",
53
+ NOT_CONTAINS = "NOT_CONTAINS",
54
+ STARTS_WITH = "STARTS_WITH",
55
+ ENDS_WITH = "ENDS_WITH",
56
+ GREATER_THAN = "GREATER_THAN",
57
+ LESS_THAN = "LESS_THAN",
58
+ GREATER_THAN_OR_EQUAL = "GREATER_THAN_OR_EQUAL",
59
+ LESS_THAN_OR_EQUAL = "LESS_THAN_OR_EQUAL",
60
+ IN = "IN",
61
+ NOT_IN = "NOT_IN",
62
+ IS_EMPTY = "IS_EMPTY",
63
+ IS_NOT_EMPTY = "IS_NOT_EMPTY",
64
+ MATCHES_REGEX = "MATCHES_REGEX"
65
+ }
66
+ export declare enum SwitchConditionOperator {
67
+ EQUALS = "EQUALS",
68
+ NOT_EQUALS = "NOT_EQUALS",
69
+ CONTAINS = "CONTAINS",
70
+ NOT_CONTAINS = "NOT_CONTAINS",
71
+ GREATER_THAN = "GREATER_THAN",
72
+ LESS_THAN = "LESS_THAN"
73
+ }
74
+ export declare enum HttpMethod {
75
+ GET = "GET",
76
+ POST = "POST",
77
+ PUT = "PUT",
78
+ PATCH = "PATCH",
79
+ DELETE = "DELETE",
80
+ HEAD = "HEAD",
81
+ OPTIONS = "OPTIONS"
82
+ }
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HttpMethod = exports.SwitchConditionOperator = exports.FilterOperator = exports.WebhookStatus = exports.WebhookDirection = exports.WorkflowExecutionStatus = exports.WorkflowStepStatus = exports.WorkflowActionType = exports.WorkflowStepType = exports.WorkflowTemplate = exports.WorkflowTriggerType = exports.WorkflowStatus = void 0;
4
+ var WorkflowStatus;
5
+ (function (WorkflowStatus) {
6
+ WorkflowStatus["DRAFT"] = "DRAFT";
7
+ WorkflowStatus["ACTIVE"] = "ACTIVE";
8
+ WorkflowStatus["PAUSED"] = "PAUSED";
9
+ WorkflowStatus["ARCHIVED"] = "ARCHIVED";
10
+ })(WorkflowStatus || (exports.WorkflowStatus = WorkflowStatus = {}));
11
+ var WorkflowTriggerType;
12
+ (function (WorkflowTriggerType) {
13
+ WorkflowTriggerType["USER_REGISTRATION"] = "USER_REGISTRATION";
14
+ WorkflowTriggerType["WEBHOOK"] = "WEBHOOK";
15
+ WorkflowTriggerType["MANUAL"] = "MANUAL";
16
+ })(WorkflowTriggerType || (exports.WorkflowTriggerType = WorkflowTriggerType = {}));
17
+ var WorkflowTemplate;
18
+ (function (WorkflowTemplate) {
19
+ WorkflowTemplate["AUTO_INVITE_BY_DOMAIN"] = "AUTO_INVITE_BY_DOMAIN";
20
+ })(WorkflowTemplate || (exports.WorkflowTemplate = WorkflowTemplate = {}));
21
+ var WorkflowStepType;
22
+ (function (WorkflowStepType) {
23
+ WorkflowStepType["FILTER"] = "FILTER";
24
+ WorkflowStepType["SLEEP"] = "SLEEP";
25
+ WorkflowStepType["SWITCH"] = "SWITCH";
26
+ WorkflowStepType["ACTION"] = "ACTION";
27
+ })(WorkflowStepType || (exports.WorkflowStepType = WorkflowStepType = {}));
28
+ var WorkflowActionType;
29
+ (function (WorkflowActionType) {
30
+ WorkflowActionType["CALL_WEBHOOK"] = "CALL_WEBHOOK";
31
+ WorkflowActionType["INVITE_TO_PROJECT"] = "INVITE_TO_PROJECT";
32
+ })(WorkflowActionType || (exports.WorkflowActionType = WorkflowActionType = {}));
33
+ var WorkflowStepStatus;
34
+ (function (WorkflowStepStatus) {
35
+ WorkflowStepStatus["PENDING"] = "PENDING";
36
+ WorkflowStepStatus["RUNNING"] = "RUNNING";
37
+ WorkflowStepStatus["COMPLETED"] = "COMPLETED";
38
+ WorkflowStepStatus["FAILED"] = "FAILED";
39
+ WorkflowStepStatus["SKIPPED"] = "SKIPPED";
40
+ })(WorkflowStepStatus || (exports.WorkflowStepStatus = WorkflowStepStatus = {}));
41
+ var WorkflowExecutionStatus;
42
+ (function (WorkflowExecutionStatus) {
43
+ WorkflowExecutionStatus["PENDING"] = "PENDING";
44
+ WorkflowExecutionStatus["RUNNING"] = "RUNNING";
45
+ WorkflowExecutionStatus["COMPLETED"] = "COMPLETED";
46
+ WorkflowExecutionStatus["FAILED"] = "FAILED";
47
+ WorkflowExecutionStatus["CANCELLED"] = "CANCELLED";
48
+ })(WorkflowExecutionStatus || (exports.WorkflowExecutionStatus = WorkflowExecutionStatus = {}));
49
+ var WebhookDirection;
50
+ (function (WebhookDirection) {
51
+ WebhookDirection["INCOMING"] = "INCOMING";
52
+ WebhookDirection["OUTGOING"] = "OUTGOING";
53
+ })(WebhookDirection || (exports.WebhookDirection = WebhookDirection = {}));
54
+ var WebhookStatus;
55
+ (function (WebhookStatus) {
56
+ WebhookStatus["PENDING"] = "PENDING";
57
+ WebhookStatus["SUCCESS"] = "SUCCESS";
58
+ WebhookStatus["FAILED"] = "FAILED";
59
+ WebhookStatus["RETRYING"] = "RETRYING";
60
+ })(WebhookStatus || (exports.WebhookStatus = WebhookStatus = {}));
61
+ var FilterOperator;
62
+ (function (FilterOperator) {
63
+ FilterOperator["EQUALS"] = "EQUALS";
64
+ FilterOperator["NOT_EQUALS"] = "NOT_EQUALS";
65
+ FilterOperator["CONTAINS"] = "CONTAINS";
66
+ FilterOperator["NOT_CONTAINS"] = "NOT_CONTAINS";
67
+ FilterOperator["STARTS_WITH"] = "STARTS_WITH";
68
+ FilterOperator["ENDS_WITH"] = "ENDS_WITH";
69
+ FilterOperator["GREATER_THAN"] = "GREATER_THAN";
70
+ FilterOperator["LESS_THAN"] = "LESS_THAN";
71
+ FilterOperator["GREATER_THAN_OR_EQUAL"] = "GREATER_THAN_OR_EQUAL";
72
+ FilterOperator["LESS_THAN_OR_EQUAL"] = "LESS_THAN_OR_EQUAL";
73
+ FilterOperator["IN"] = "IN";
74
+ FilterOperator["NOT_IN"] = "NOT_IN";
75
+ FilterOperator["IS_EMPTY"] = "IS_EMPTY";
76
+ FilterOperator["IS_NOT_EMPTY"] = "IS_NOT_EMPTY";
77
+ FilterOperator["MATCHES_REGEX"] = "MATCHES_REGEX";
78
+ })(FilterOperator || (exports.FilterOperator = FilterOperator = {}));
79
+ var SwitchConditionOperator;
80
+ (function (SwitchConditionOperator) {
81
+ SwitchConditionOperator["EQUALS"] = "EQUALS";
82
+ SwitchConditionOperator["NOT_EQUALS"] = "NOT_EQUALS";
83
+ SwitchConditionOperator["CONTAINS"] = "CONTAINS";
84
+ SwitchConditionOperator["NOT_CONTAINS"] = "NOT_CONTAINS";
85
+ SwitchConditionOperator["GREATER_THAN"] = "GREATER_THAN";
86
+ SwitchConditionOperator["LESS_THAN"] = "LESS_THAN";
87
+ })(SwitchConditionOperator || (exports.SwitchConditionOperator = SwitchConditionOperator = {}));
88
+ var HttpMethod;
89
+ (function (HttpMethod) {
90
+ HttpMethod["GET"] = "GET";
91
+ HttpMethod["POST"] = "POST";
92
+ HttpMethod["PUT"] = "PUT";
93
+ HttpMethod["PATCH"] = "PATCH";
94
+ HttpMethod["DELETE"] = "DELETE";
95
+ HttpMethod["HEAD"] = "HEAD";
96
+ HttpMethod["OPTIONS"] = "OPTIONS";
97
+ })(HttpMethod || (exports.HttpMethod = HttpMethod = {}));
@@ -1,3 +1,4 @@
1
1
  export * from './interface';
2
2
  export * from './enum';
3
3
  export * from './dto';
4
+ export * from './constants';
@@ -17,3 +17,4 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./interface"), exports);
18
18
  __exportStar(require("./enum"), exports);
19
19
  __exportStar(require("./dto"), exports);
20
+ __exportStar(require("./constants"), exports);
@@ -4,10 +4,16 @@ export * from './type-message/base-order';
4
4
  export * from './type-message/base-paginate';
5
5
  export * from './requests/domain-verification.request';
6
6
  export * from './requests/domain-verification.admin.request';
7
+ export * from './requests/ip-address.request';
7
8
  export * from './requests/workflow.request';
8
9
  export * from './requests/workflow.admin.request';
10
+ export * from './requests/project.request';
11
+ export * from './requests/project.admin.request';
9
12
  export * from './responses/monitor.response';
10
13
  export * from './responses/domain-verification.response';
11
14
  export * from './responses/domain-verification.admin.response';
15
+ export * from './responses/ip-address.response';
12
16
  export * from './responses/workflow.response';
13
17
  export * from './responses/workflow.admin.response';
18
+ export * from './responses/project.response';
19
+ export * from './responses/project.admin.response';
@@ -20,10 +20,16 @@ __exportStar(require("./type-message/base-order"), exports);
20
20
  __exportStar(require("./type-message/base-paginate"), exports);
21
21
  __exportStar(require("./requests/domain-verification.request"), exports);
22
22
  __exportStar(require("./requests/domain-verification.admin.request"), exports);
23
+ __exportStar(require("./requests/ip-address.request"), exports);
23
24
  __exportStar(require("./requests/workflow.request"), exports);
24
25
  __exportStar(require("./requests/workflow.admin.request"), exports);
26
+ __exportStar(require("./requests/project.request"), exports);
27
+ __exportStar(require("./requests/project.admin.request"), exports);
25
28
  __exportStar(require("./responses/monitor.response"), exports);
26
29
  __exportStar(require("./responses/domain-verification.response"), exports);
27
30
  __exportStar(require("./responses/domain-verification.admin.response"), exports);
31
+ __exportStar(require("./responses/ip-address.response"), exports);
28
32
  __exportStar(require("./responses/workflow.response"), exports);
29
33
  __exportStar(require("./responses/workflow.admin.response"), exports);
34
+ __exportStar(require("./responses/project.response"), exports);
35
+ __exportStar(require("./responses/project.admin.response"), exports);