@venturialstd/workflow 0.1.7 → 0.1.8
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/modules/webhook/services/webhook-received.service.d.ts +5 -1
- package/dist/modules/webhook/services/webhook-received.service.d.ts.map +1 -1
- package/dist/modules/webhook/services/webhook-received.service.js +42 -5
- package/dist/modules/webhook/services/webhook-received.service.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
import { WorkflowWebhook } from '../../../entities/workflow-webhook.entity';
|
|
2
|
+
import { WorkflowNodeService } from '../../../services/workflow-node.service';
|
|
2
3
|
import { WorkflowWebhookService } from '../../../services/workflow-webhook.service';
|
|
3
4
|
import { IWorkflowActionService, WorkflowActionContext } from '../../types';
|
|
4
5
|
export declare class WebhookReceivedService implements IWorkflowActionService {
|
|
5
6
|
private readonly workflowWebhookService;
|
|
6
|
-
|
|
7
|
+
private readonly workflowNodeService;
|
|
8
|
+
constructor(workflowWebhookService: WorkflowWebhookService, workflowNodeService: WorkflowNodeService);
|
|
7
9
|
perform(_inputs: Record<string, unknown>, _context: WorkflowActionContext): Promise<Record<string, unknown>>;
|
|
8
10
|
performSubscribe(inputs: Record<string, unknown>, context: WorkflowActionContext, nodeId: string): Promise<WorkflowWebhook>;
|
|
11
|
+
private saveSubscriptionDetailsToNode;
|
|
9
12
|
performUnsubscribe(inputs: Record<string, unknown>, context: WorkflowActionContext, nodeId: string): Promise<void>;
|
|
13
|
+
private removeSubscriptionDetailsFromNode;
|
|
10
14
|
}
|
|
11
15
|
//# sourceMappingURL=webhook-received.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhook-received.service.d.ts","sourceRoot":"","sources":["../../../../src/modules/webhook/services/webhook-received.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAe,eAAe,EAAE,MAAM,2CAA2C,CAAC;AACzF,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAc5E,qBACa,sBAAuB,YAAW,sBAAsB;
|
|
1
|
+
{"version":3,"file":"webhook-received.service.d.ts","sourceRoot":"","sources":["../../../../src/modules/webhook/services/webhook-received.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAe,eAAe,EAAE,MAAM,2CAA2C,CAAC;AACzF,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAc5E,qBACa,sBAAuB,YAAW,sBAAsB;IAEjE,OAAO,CAAC,QAAQ,CAAC,sBAAsB;IACvC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;gBADnB,sBAAsB,EAAE,sBAAsB,EAC9C,mBAAmB,EAAE,mBAAmB;IAGrD,OAAO,CACX,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,QAAQ,EAAE,qBAAqB,GAC9B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAoB7B,gBAAgB,CACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,OAAO,EAAE,qBAAqB,EAC9B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,eAAe,CAAC;YAwEb,6BAA6B;IA2BrC,kBAAkB,CACtB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,OAAO,EAAE,qBAAqB,EAC9B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC;YAwBF,iCAAiC;CAehD"}
|
|
@@ -11,6 +11,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.WebhookReceivedService = void 0;
|
|
13
13
|
const common_1 = require("@nestjs/common");
|
|
14
|
+
const workflow_node_service_1 = require("../../../services/workflow-node.service");
|
|
14
15
|
const workflow_webhook_service_1 = require("../../../services/workflow-webhook.service");
|
|
15
16
|
function generateWebhookPath() {
|
|
16
17
|
const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
|
|
@@ -22,8 +23,10 @@ function generateWebhookPath() {
|
|
|
22
23
|
}
|
|
23
24
|
let WebhookReceivedService = class WebhookReceivedService {
|
|
24
25
|
workflowWebhookService;
|
|
25
|
-
|
|
26
|
+
workflowNodeService;
|
|
27
|
+
constructor(workflowWebhookService, workflowNodeService) {
|
|
26
28
|
this.workflowWebhookService = workflowWebhookService;
|
|
29
|
+
this.workflowNodeService = workflowNodeService;
|
|
27
30
|
}
|
|
28
31
|
async perform(_inputs, _context) {
|
|
29
32
|
return {
|
|
@@ -49,10 +52,14 @@ let WebhookReceivedService = class WebhookReceivedService {
|
|
|
49
52
|
if (existingWebhook.httpMethod !== httpMethod) {
|
|
50
53
|
existingWebhook.httpMethod = httpMethod;
|
|
51
54
|
existingWebhook.isActive = true;
|
|
52
|
-
|
|
55
|
+
const savedWebhook = await this.workflowWebhookService.repo.save(existingWebhook);
|
|
56
|
+
await this.saveSubscriptionDetailsToNode(nodeId, savedWebhook);
|
|
57
|
+
return savedWebhook;
|
|
53
58
|
}
|
|
54
59
|
else {
|
|
55
|
-
|
|
60
|
+
const activatedWebhook = await this.workflowWebhookService.activate(existingWebhook.id);
|
|
61
|
+
await this.saveSubscriptionDetailsToNode(nodeId, activatedWebhook);
|
|
62
|
+
return activatedWebhook;
|
|
56
63
|
}
|
|
57
64
|
}
|
|
58
65
|
else {
|
|
@@ -77,9 +84,28 @@ let WebhookReceivedService = class WebhookReceivedService {
|
|
|
77
84
|
httpMethod: httpMethod,
|
|
78
85
|
isActive: true,
|
|
79
86
|
});
|
|
80
|
-
|
|
87
|
+
const savedWebhook = await this.workflowWebhookService.repo.save(newWebhook);
|
|
88
|
+
await this.saveSubscriptionDetailsToNode(nodeId, savedWebhook);
|
|
89
|
+
return savedWebhook;
|
|
81
90
|
}
|
|
82
91
|
}
|
|
92
|
+
async saveSubscriptionDetailsToNode(nodeId, webhook) {
|
|
93
|
+
const node = await this.workflowNodeService.findOne({ where: { id: nodeId } });
|
|
94
|
+
if (!node) {
|
|
95
|
+
throw new Error(`Node with id "${nodeId}" not found`);
|
|
96
|
+
}
|
|
97
|
+
node.properties = {
|
|
98
|
+
...node.properties,
|
|
99
|
+
subscription: {
|
|
100
|
+
webhookId: webhook.id,
|
|
101
|
+
webhookPath: webhook.webhookPath,
|
|
102
|
+
httpMethod: webhook.httpMethod,
|
|
103
|
+
isActive: webhook.isActive,
|
|
104
|
+
subscribedAt: new Date().toISOString(),
|
|
105
|
+
},
|
|
106
|
+
};
|
|
107
|
+
await this.workflowNodeService.repo.save(node);
|
|
108
|
+
}
|
|
83
109
|
async performUnsubscribe(inputs, context, nodeId) {
|
|
84
110
|
const webhook = await this.workflowWebhookService.findByNodeId(nodeId);
|
|
85
111
|
if (!webhook) {
|
|
@@ -89,11 +115,22 @@ let WebhookReceivedService = class WebhookReceivedService {
|
|
|
89
115
|
throw new Error('Trigger is already unsubscribed. Please subscribe first before unsubscribing again.');
|
|
90
116
|
}
|
|
91
117
|
await this.workflowWebhookService.deactivate(webhook.id);
|
|
118
|
+
await this.removeSubscriptionDetailsFromNode(nodeId);
|
|
119
|
+
}
|
|
120
|
+
async removeSubscriptionDetailsFromNode(nodeId) {
|
|
121
|
+
const node = await this.workflowNodeService.findOne({ where: { id: nodeId } });
|
|
122
|
+
if (!node) {
|
|
123
|
+
throw new Error(`Node with id "${nodeId}" not found`);
|
|
124
|
+
}
|
|
125
|
+
const { subscription, ...restProperties } = node.properties;
|
|
126
|
+
node.properties = restProperties;
|
|
127
|
+
await this.workflowNodeService.repo.save(node);
|
|
92
128
|
}
|
|
93
129
|
};
|
|
94
130
|
exports.WebhookReceivedService = WebhookReceivedService;
|
|
95
131
|
exports.WebhookReceivedService = WebhookReceivedService = __decorate([
|
|
96
132
|
(0, common_1.Injectable)(),
|
|
97
|
-
__metadata("design:paramtypes", [workflow_webhook_service_1.WorkflowWebhookService
|
|
133
|
+
__metadata("design:paramtypes", [workflow_webhook_service_1.WorkflowWebhookService,
|
|
134
|
+
workflow_node_service_1.WorkflowNodeService])
|
|
98
135
|
], WebhookReceivedService);
|
|
99
136
|
//# sourceMappingURL=webhook-received.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhook-received.service.js","sourceRoot":"","sources":["../../../../src/modules/webhook/services/webhook-received.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAG5C,yFAAoF;AAMpF,SAAS,mBAAmB;IAC1B,MAAM,KAAK,GAAG,gEAAgE,CAAC;IAC/E,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAGM,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;
|
|
1
|
+
{"version":3,"file":"webhook-received.service.js","sourceRoot":"","sources":["../../../../src/modules/webhook/services/webhook-received.service.ts"],"names":[],"mappings":"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"}
|