@abyss-project/console 1.0.4 → 1.0.5
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.
- package/dist/api/workflow.admin.api.d.ts +4 -3
- package/dist/api/workflow.admin.api.js +6 -1
- package/dist/types/constants/webhook-trigger.constants.d.ts +0 -0
- package/dist/types/constants/webhook-trigger.constants.js +1 -0
- package/dist/types/dto/workflow.dto.d.ts +5 -7
- package/dist/types/interface/api/index.d.ts +2 -0
- package/dist/types/interface/api/index.js +2 -0
- package/dist/types/interface/api/requests/webhook-public.request.d.ts +0 -0
- package/dist/types/interface/api/requests/webhook-public.request.js +1 -0
- package/dist/types/interface/api/requests/workflow-webhook.public.request.d.ts +3 -0
- package/dist/types/interface/api/requests/workflow-webhook.public.request.js +2 -0
- package/dist/types/interface/api/requests/workflow.admin.request.d.ts +7 -3
- package/dist/types/interface/api/responses/webhook-public.response.d.ts +0 -0
- package/dist/types/interface/api/responses/webhook-public.response.js +1 -0
- package/dist/types/interface/api/responses/workflow-webhook.public.response.d.ts +3 -0
- package/dist/types/interface/api/responses/workflow-webhook.public.response.js +2 -0
- package/dist/types/interface/api/responses/workflow.admin.response.d.ts +8 -4
- package/dist/types/interface/models/workflow-trigger.model.d.ts +1 -8
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +1 -0
- package/dist/utils/webhook-trigger.utils.d.ts +4 -0
- package/dist/utils/webhook-trigger.utils.js +54 -0
- package/package.json +1 -1
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { IPaginateWorkflowAdminQuery, IGetWorkflowAdminParams,
|
|
1
|
+
import { IPaginateWorkflowAdminQuery, IGetWorkflowAdminParams, IUpdateStatusWorkflowAdminBody, IPaginateWorkflowExecutionsAdminQuery, ICancelWorkflowExecutionAdminParams, IManualTriggerWorkflowAdminParams, IManualTriggerWorkflowAdminBody, ITriggerUserRegistrationWorkflowAdminBody, IPaginateWorkflowAdminResponse, IGetWorkflowAdminResponse, IUpdateStatusWorkflowAdminResponse, IDeleteWorkflowAdminResponse, IPaginateWorkflowExecutionAdminResponse, ICancelWorkflowExecutionAdminResponse, IManualTriggerWorkflowAdminResponse, ITriggerUserRegistrationWorkflowAdminResponse } from '../types';
|
|
2
2
|
export declare const paginateWorkflow: (query: IPaginateWorkflowAdminQuery) => Promise<IPaginateWorkflowAdminResponse>;
|
|
3
3
|
export declare const getWorkflow: (params: IGetWorkflowAdminParams) => Promise<IGetWorkflowAdminResponse>;
|
|
4
|
-
export declare const updateWorkflowStatus: (params: IGetWorkflowAdminParams, body:
|
|
4
|
+
export declare const updateWorkflowStatus: (params: IGetWorkflowAdminParams, body: IUpdateStatusWorkflowAdminBody) => Promise<IUpdateStatusWorkflowAdminResponse>;
|
|
5
5
|
export declare const deleteWorkflow: (params: IGetWorkflowAdminParams) => Promise<IDeleteWorkflowAdminResponse>;
|
|
6
6
|
export declare const paginateWorkflowExecution: (query: IPaginateWorkflowExecutionsAdminQuery) => Promise<IPaginateWorkflowExecutionAdminResponse>;
|
|
7
7
|
export declare const cancelWorkflowExecution: (params: ICancelWorkflowExecutionAdminParams) => Promise<ICancelWorkflowExecutionAdminResponse>;
|
|
8
|
-
export declare const triggerWorkflow: (params:
|
|
8
|
+
export declare const triggerWorkflow: (params: IManualTriggerWorkflowAdminParams, body: IManualTriggerWorkflowAdminBody) => Promise<IManualTriggerWorkflowAdminResponse>;
|
|
9
|
+
export declare const triggerUserRegistration: (body: ITriggerUserRegistrationWorkflowAdminBody) => Promise<ITriggerUserRegistrationWorkflowAdminResponse>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.triggerWorkflow = exports.cancelWorkflowExecution = exports.paginateWorkflowExecution = exports.deleteWorkflow = exports.updateWorkflowStatus = exports.getWorkflow = exports.paginateWorkflow = void 0;
|
|
3
|
+
exports.triggerUserRegistration = exports.triggerWorkflow = exports.cancelWorkflowExecution = exports.paginateWorkflowExecution = exports.deleteWorkflow = exports.updateWorkflowStatus = exports.getWorkflow = exports.paginateWorkflow = void 0;
|
|
4
4
|
const __1 = require("..");
|
|
5
5
|
const paginateWorkflow = async (query) => {
|
|
6
6
|
const response = await __1.AbyssConsoleCore.axios.get(`/workflow/admin/paginate`, { params: query });
|
|
@@ -37,3 +37,8 @@ const triggerWorkflow = async (params, body) => {
|
|
|
37
37
|
return response.data;
|
|
38
38
|
};
|
|
39
39
|
exports.triggerWorkflow = triggerWorkflow;
|
|
40
|
+
const triggerUserRegistration = async (body) => {
|
|
41
|
+
const response = await __1.AbyssConsoleCore.axios.post(`/workflow/admin/trigger/user-registration`, body);
|
|
42
|
+
return response.data;
|
|
43
|
+
};
|
|
44
|
+
exports.triggerUserRegistration = triggerUserRegistration;
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -4,16 +4,14 @@ export interface IUserRegistrationWorkflowTriggerData {
|
|
|
4
4
|
email: string;
|
|
5
5
|
emailDomain: string;
|
|
6
6
|
alias?: string;
|
|
7
|
-
metadata?: Record<string, any>;
|
|
8
7
|
}
|
|
9
8
|
export interface IWebhookWorkflowTriggerData {
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
workflowTriggerId: string;
|
|
10
|
+
workflowId: string;
|
|
12
11
|
body: any;
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
sourceIp?: string;
|
|
12
|
+
queryParams?: Record<string, string>;
|
|
13
|
+
headers: Record<string, string>;
|
|
14
|
+
ipAddress?: string;
|
|
17
15
|
}
|
|
18
16
|
export type WorkflowTriggerData = IUserRegistrationWorkflowTriggerData | IWebhookWorkflowTriggerData | Record<string, any>;
|
|
19
17
|
export interface IFilterStepConfig {
|
|
@@ -9,6 +9,7 @@ export * from './requests/workflow.request';
|
|
|
9
9
|
export * from './requests/workflow.admin.request';
|
|
10
10
|
export * from './requests/project.request';
|
|
11
11
|
export * from './requests/project.admin.request';
|
|
12
|
+
export * from './requests/workflow-webhook.public.request';
|
|
12
13
|
export * from './responses/monitor.response';
|
|
13
14
|
export * from './responses/domain-verification.response';
|
|
14
15
|
export * from './responses/domain-verification.admin.response';
|
|
@@ -17,3 +18,4 @@ export * from './responses/workflow.response';
|
|
|
17
18
|
export * from './responses/workflow.admin.response';
|
|
18
19
|
export * from './responses/project.response';
|
|
19
20
|
export * from './responses/project.admin.response';
|
|
21
|
+
export * from './responses/workflow-webhook.public.response';
|
|
@@ -25,6 +25,7 @@ __exportStar(require("./requests/workflow.request"), exports);
|
|
|
25
25
|
__exportStar(require("./requests/workflow.admin.request"), exports);
|
|
26
26
|
__exportStar(require("./requests/project.request"), exports);
|
|
27
27
|
__exportStar(require("./requests/project.admin.request"), exports);
|
|
28
|
+
__exportStar(require("./requests/workflow-webhook.public.request"), exports);
|
|
28
29
|
__exportStar(require("./responses/monitor.response"), exports);
|
|
29
30
|
__exportStar(require("./responses/domain-verification.response"), exports);
|
|
30
31
|
__exportStar(require("./responses/domain-verification.admin.response"), exports);
|
|
@@ -33,3 +34,4 @@ __exportStar(require("./responses/workflow.response"), exports);
|
|
|
33
34
|
__exportStar(require("./responses/workflow.admin.response"), exports);
|
|
34
35
|
__exportStar(require("./responses/project.response"), exports);
|
|
35
36
|
__exportStar(require("./responses/project.admin.response"), exports);
|
|
37
|
+
__exportStar(require("./responses/workflow-webhook.public.response"), exports);
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { WorkflowStatus, WorkflowExecutionStatus } from '../../../enum/workflow.enum';
|
|
2
2
|
import { QueryPaginate } from '../type-message/base-paginate';
|
|
3
|
+
import { IUserRegistrationWorkflowTriggerData } from '../../../dto/workflow.dto';
|
|
3
4
|
export interface IPaginateWorkflowAdminQuery extends QueryPaginate {
|
|
4
5
|
projectId?: string;
|
|
5
6
|
status?: WorkflowStatus;
|
|
@@ -8,7 +9,7 @@ export interface IPaginateWorkflowAdminQuery extends QueryPaginate {
|
|
|
8
9
|
export interface IGetWorkflowAdminParams {
|
|
9
10
|
workflowId: string;
|
|
10
11
|
}
|
|
11
|
-
export interface
|
|
12
|
+
export interface IUpdateStatusWorkflowAdminBody {
|
|
12
13
|
status: WorkflowStatus;
|
|
13
14
|
}
|
|
14
15
|
export interface IPaginateWorkflowExecutionsAdminQuery extends QueryPaginate {
|
|
@@ -21,9 +22,12 @@ export interface IPaginateWorkflowExecutionsAdminQuery extends QueryPaginate {
|
|
|
21
22
|
export interface ICancelWorkflowExecutionAdminParams {
|
|
22
23
|
workflowExecutionId: string;
|
|
23
24
|
}
|
|
24
|
-
export interface
|
|
25
|
+
export interface IManualTriggerWorkflowAdminParams {
|
|
25
26
|
workflowId: string;
|
|
26
27
|
}
|
|
27
|
-
export interface
|
|
28
|
+
export interface IManualTriggerWorkflowAdminBody {
|
|
28
29
|
triggerData: Record<string, unknown>;
|
|
29
30
|
}
|
|
31
|
+
export interface ITriggerUserRegistrationWorkflowAdminBody {
|
|
32
|
+
triggerData: IUserRegistrationWorkflowTriggerData;
|
|
33
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -7,10 +7,10 @@ export interface IGetWorkflowAdminData {
|
|
|
7
7
|
workflow: IWorkflow;
|
|
8
8
|
}
|
|
9
9
|
export type IGetWorkflowAdminResponse = IResponse<IGetWorkflowAdminData>;
|
|
10
|
-
export interface
|
|
10
|
+
export interface IUpdateStatusWorkflowAdminData {
|
|
11
11
|
workflow: IWorkflow;
|
|
12
12
|
}
|
|
13
|
-
export type
|
|
13
|
+
export type IUpdateStatusWorkflowAdminResponse = IResponse<IUpdateStatusWorkflowAdminData>;
|
|
14
14
|
export interface IDeleteWorkflowAdminData {
|
|
15
15
|
}
|
|
16
16
|
export type IDeleteWorkflowAdminResponse = IResponse<IDeleteWorkflowAdminData>;
|
|
@@ -19,7 +19,11 @@ export interface ICancelWorkflowExecutionAdminData {
|
|
|
19
19
|
workflowExecution: IWorkflowExecution;
|
|
20
20
|
}
|
|
21
21
|
export type ICancelWorkflowExecutionAdminResponse = IResponse<ICancelWorkflowExecutionAdminData>;
|
|
22
|
-
export interface
|
|
22
|
+
export interface IManualTriggerWorkflowAdminData {
|
|
23
23
|
workflowExecution: IWorkflowExecution;
|
|
24
24
|
}
|
|
25
|
-
export type
|
|
25
|
+
export type IManualTriggerWorkflowAdminResponse = IResponse<IManualTriggerWorkflowAdminData>;
|
|
26
|
+
export interface ITriggerUserRegistrationWorkflowAdminData {
|
|
27
|
+
workflowExecutions: IWorkflowExecution[];
|
|
28
|
+
}
|
|
29
|
+
export type ITriggerUserRegistrationWorkflowAdminResponse = IResponse<ITriggerUserRegistrationWorkflowAdminData>;
|
|
@@ -6,19 +6,12 @@ export interface ITriggerFilter {
|
|
|
6
6
|
value: any;
|
|
7
7
|
}
|
|
8
8
|
export interface IUserRegistrationTriggerConfig {
|
|
9
|
-
filters?: {
|
|
10
|
-
emailDomains?: string[];
|
|
11
|
-
excludeEmailDomains?: string[];
|
|
12
|
-
};
|
|
13
9
|
}
|
|
14
10
|
export interface IWebhookTriggerConfig {
|
|
15
|
-
webhookUrl: string | null;
|
|
16
11
|
signatureSecret: string | null;
|
|
17
12
|
signatureHeader: string | null;
|
|
18
|
-
requiredHeaders: Record<string, string> | null;
|
|
19
|
-
allowedIpAddresses: string[];
|
|
20
13
|
}
|
|
21
|
-
export type TriggerConfig = IUserRegistrationTriggerConfig | IWebhookTriggerConfig | Record<string,
|
|
14
|
+
export type TriggerConfig = IUserRegistrationTriggerConfig | IWebhookTriggerConfig | Record<string, never>;
|
|
22
15
|
export interface IWorkflowTrigger {
|
|
23
16
|
id: string;
|
|
24
17
|
workflowId: string;
|
package/dist/utils/index.d.ts
CHANGED
package/dist/utils/index.js
CHANGED
|
@@ -17,3 +17,4 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
17
17
|
__exportStar(require("./error.utils"), exports);
|
|
18
18
|
__exportStar(require("./reference-resolver.utils"), exports);
|
|
19
19
|
__exportStar(require("./ip-address-validator.utils"), exports);
|
|
20
|
+
__exportStar(require("./webhook-trigger.utils"), exports);
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { WorkflowTriggerData, FilterOperator, IWorkflowTrigger } from "../types";
|
|
2
|
+
export declare const matchesTriggerFilters: (trigger: IWorkflowTrigger, triggerData: WorkflowTriggerData) => boolean;
|
|
3
|
+
export declare const getNestedValue: (obj: Record<string, unknown>, path: string) => unknown;
|
|
4
|
+
export declare const evaluateFilter: (value: unknown, operator: FilterOperator, expected: unknown) => boolean;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.evaluateFilter = exports.getNestedValue = exports.matchesTriggerFilters = void 0;
|
|
4
|
+
const types_1 = require("../types");
|
|
5
|
+
const matchesTriggerFilters = (trigger, triggerData) => {
|
|
6
|
+
if (!trigger.filters || trigger.filters.length === 0) {
|
|
7
|
+
return true;
|
|
8
|
+
}
|
|
9
|
+
return trigger.filters.every((filter) => {
|
|
10
|
+
const value = (0, exports.getNestedValue)(triggerData, filter.field);
|
|
11
|
+
return (0, exports.evaluateFilter)(value, filter.operator, filter.value);
|
|
12
|
+
});
|
|
13
|
+
};
|
|
14
|
+
exports.matchesTriggerFilters = matchesTriggerFilters;
|
|
15
|
+
const getNestedValue = (obj, path) => {
|
|
16
|
+
return path
|
|
17
|
+
.split('.')
|
|
18
|
+
.reduce((current, key) => current === null || current === void 0 ? void 0 : current[key], obj);
|
|
19
|
+
};
|
|
20
|
+
exports.getNestedValue = getNestedValue;
|
|
21
|
+
const evaluateFilter = (value, operator, expected) => {
|
|
22
|
+
switch (operator) {
|
|
23
|
+
case types_1.FilterOperator.EQUALS:
|
|
24
|
+
return value === expected;
|
|
25
|
+
case types_1.FilterOperator.NOT_EQUALS:
|
|
26
|
+
return value !== expected;
|
|
27
|
+
case types_1.FilterOperator.CONTAINS:
|
|
28
|
+
return String(value).includes(String(expected));
|
|
29
|
+
case types_1.FilterOperator.NOT_CONTAINS:
|
|
30
|
+
return !String(value).includes(String(expected));
|
|
31
|
+
case types_1.FilterOperator.STARTS_WITH:
|
|
32
|
+
return String(value).startsWith(String(expected));
|
|
33
|
+
case types_1.FilterOperator.ENDS_WITH:
|
|
34
|
+
return String(value).endsWith(String(expected));
|
|
35
|
+
case types_1.FilterOperator.IN:
|
|
36
|
+
return Array.isArray(expected) && expected.includes(value);
|
|
37
|
+
case types_1.FilterOperator.NOT_IN:
|
|
38
|
+
return Array.isArray(expected) && !expected.includes(value);
|
|
39
|
+
case types_1.FilterOperator.IS_EMPTY:
|
|
40
|
+
return value === null || value === undefined || value === '';
|
|
41
|
+
case types_1.FilterOperator.IS_NOT_EMPTY:
|
|
42
|
+
return value !== null && value !== undefined && value !== '';
|
|
43
|
+
case types_1.FilterOperator.MATCHES_REGEX:
|
|
44
|
+
try {
|
|
45
|
+
return new RegExp(expected).test(String(value));
|
|
46
|
+
}
|
|
47
|
+
catch {
|
|
48
|
+
return false;
|
|
49
|
+
}
|
|
50
|
+
default:
|
|
51
|
+
return true;
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
exports.evaluateFilter = evaluateFilter;
|