@servicelabsco/slabs-access-manager 0.1.174 → 0.1.175
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/access/libraries/send.webhook.request.d.ts +1 -2
- package/dist/access/libraries/send.webhook.request.js +8 -18
- package/dist/access/libraries/send.webhook.request.js.map +1 -1
- package/dist/access/services/webhook.service.d.ts +1 -1
- package/dist/access/services/webhook.service.js +6 -1
- package/dist/access/services/webhook.service.js.map +1 -1
- package/package.json +1 -1
|
@@ -11,10 +11,9 @@ export declare class SendWebhookRequest {
|
|
|
11
11
|
protected event: WebhookEventEntity;
|
|
12
12
|
protected payload: SendWebhookRequestPayload;
|
|
13
13
|
constructor(business: AccessBusinessEntity, remoteRequestService: RemoteRequestService);
|
|
14
|
-
process(payload: SendWebhookRequestPayload): Promise<
|
|
14
|
+
process(payload: SendWebhookRequestPayload): Promise<WebhookLogEntity>;
|
|
15
15
|
private validate;
|
|
16
16
|
private sendRequest;
|
|
17
17
|
private disableWebhook;
|
|
18
|
-
private sleep;
|
|
19
18
|
private saveLog;
|
|
20
19
|
}
|
|
@@ -22,6 +22,10 @@ class SendWebhookRequest {
|
|
|
22
22
|
const event = await webhook_event_entity_1.WebhookEventEntity.findOne({ where: { identifier: this.payload.event_identifier } });
|
|
23
23
|
if (!event?.active)
|
|
24
24
|
throw new nestjs_utility_services_1.OperationException('Event is not setup properly');
|
|
25
|
+
const hasEventEnabled = webhook.event_type.includes(event?.identifier);
|
|
26
|
+
if (!hasEventEnabled)
|
|
27
|
+
throw new nestjs_utility_services_1.OperationException('Event Not enabled on the business');
|
|
28
|
+
this.event = event;
|
|
25
29
|
this.webhook = webhook;
|
|
26
30
|
}
|
|
27
31
|
async sendRequest() {
|
|
@@ -33,29 +37,15 @@ class SendWebhookRequest {
|
|
|
33
37
|
},
|
|
34
38
|
data: this.payload?.payload,
|
|
35
39
|
};
|
|
36
|
-
let
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
let data = await this.remoteRequestService.getRawResponse(dataPayload);
|
|
41
|
-
if (data?.status === 200)
|
|
42
|
-
return this.saveLog(data);
|
|
43
|
-
attempts++;
|
|
44
|
-
if (attempts < maxAttempts) {
|
|
45
|
-
await this.sleep(delay);
|
|
46
|
-
this.saveLog(data);
|
|
47
|
-
}
|
|
48
|
-
if (attempts === maxAttempts)
|
|
49
|
-
return this.disableWebhook();
|
|
50
|
-
}
|
|
40
|
+
let data = await this.remoteRequestService.getRawResponse(dataPayload);
|
|
41
|
+
if (data?.status !== 200)
|
|
42
|
+
await this.disableWebhook();
|
|
43
|
+
return this.saveLog(data);
|
|
51
44
|
}
|
|
52
45
|
async disableWebhook() {
|
|
53
46
|
this.webhook.active = false;
|
|
54
47
|
return this.webhook.save();
|
|
55
48
|
}
|
|
56
|
-
sleep(ms) {
|
|
57
|
-
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
58
|
-
}
|
|
59
49
|
async saveLog(request) {
|
|
60
50
|
const log = webhook_log_entity_1.WebhookLogEntity.create({ webhook_id: this.webhook.id });
|
|
61
51
|
log.event_id = this.event.id;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send.webhook.request.js","sourceRoot":"","sources":["../../../src/access/libraries/send.webhook.request.ts"],"names":[],"mappings":";;;AAAA,oFAAwH;AAGxH,iFAA4E;AAC5E,2EAAsE;AACtE,uEAAkE;AAMlE,MAAa,kBAAkB;IAM3B,YACqB,QAA8B,EAC9B,oBAA0C;QAD1C,aAAQ,GAAR,QAAQ,CAAsB;QAC9B,yBAAoB,GAApB,oBAAoB,CAAsB;IAC5D,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAAkC;QAC5C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAEvB,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;IAC9B,CAAC;IAEO,KAAK,CAAC,QAAQ;QAClB,MAAM,OAAO,GAAG,MAAM,+CAAqB,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAClG,IAAI,CAAC,OAAO,EAAE,MAAM;YAAE,MAAM,IAAI,4CAAkB,CAAC,+BAA+B,CAAC,CAAC;QAEpF,MAAM,KAAK,GAAG,MAAM,yCAAkB,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;QACzG,IAAI,CAAC,KAAK,EAAE,MAAM;YAAE,MAAM,IAAI,4CAAkB,CAAC,6BAA6B,CAAC,CAAC;QAEhF,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAEO,KAAK,CAAC,WAAW;QACrB,MAAM,WAAW,GAAG;YAChB,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG;YACrB,OAAO,EAAE,MAAM;YACf,OAAO,EAAE;gBACL,cAAc,EAAE,kBAAkB;aACrC;YACD,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO;SAC9B,CAAC;QAEF,IAAI,
|
|
1
|
+
{"version":3,"file":"send.webhook.request.js","sourceRoot":"","sources":["../../../src/access/libraries/send.webhook.request.ts"],"names":[],"mappings":";;;AAAA,oFAAwH;AAGxH,iFAA4E;AAC5E,2EAAsE;AACtE,uEAAkE;AAMlE,MAAa,kBAAkB;IAM3B,YACqB,QAA8B,EAC9B,oBAA0C;QAD1C,aAAQ,GAAR,QAAQ,CAAsB;QAC9B,yBAAoB,GAApB,oBAAoB,CAAsB;IAC5D,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAAkC;QAC5C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAEvB,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;IAC9B,CAAC;IAEO,KAAK,CAAC,QAAQ;QAClB,MAAM,OAAO,GAAG,MAAM,+CAAqB,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAClG,IAAI,CAAC,OAAO,EAAE,MAAM;YAAE,MAAM,IAAI,4CAAkB,CAAC,+BAA+B,CAAC,CAAC;QAEpF,MAAM,KAAK,GAAG,MAAM,yCAAkB,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;QACzG,IAAI,CAAC,KAAK,EAAE,MAAM;YAAE,MAAM,IAAI,4CAAkB,CAAC,6BAA6B,CAAC,CAAC;QAEhF,MAAM,eAAe,GAAI,OAAO,CAAC,UAAuB,CAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QACrF,IAAI,CAAC,eAAe;YAAE,MAAM,IAAI,4CAAkB,CAAC,mCAAmC,CAAC,CAAC;QAExF,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAEO,KAAK,CAAC,WAAW;QACrB,MAAM,WAAW,GAAG;YAChB,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG;YACrB,OAAO,EAAE,MAAM;YACf,OAAO,EAAE;gBACL,cAAc,EAAE,kBAAkB;aACrC;YACD,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO;SAC9B,CAAC;QAEF,IAAI,IAAI,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QACvE,IAAI,IAAI,EAAE,MAAM,KAAK,GAAG;YAAE,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAEO,KAAK,CAAC,cAAc;QACxB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC;QAC5B,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IAC/B,CAAC;IAEO,KAAK,CAAC,OAAO,CAAC,OAA6B;QAC/C,MAAM,GAAG,GAAG,qCAAgB,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QAErE,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAE7B,GAAG,CAAC,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;QACnC,GAAG,CAAC,YAAY,GAAG,IAAI,IAAI,EAAE,CAAC;QAE9B,GAAG,CAAC,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;QACjC,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC;QACpC,GAAG,CAAC,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;QAEjC,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;CACJ;AAnED,gDAmEC"}
|
|
@@ -7,5 +7,5 @@ export declare class WebhookService {
|
|
|
7
7
|
getJob(type: string): Promise<any>;
|
|
8
8
|
setJobFromDb(name: string): Promise<string>;
|
|
9
9
|
getSlugBusiness(slug: string): Promise<any>;
|
|
10
|
-
triggerEvent(business_id: number, payload: SendWebhookRequestPayload): Promise<import("..").
|
|
10
|
+
triggerEvent(business_id: number, payload: SendWebhookRequestPayload): Promise<import("..").WebhookLogEntity>;
|
|
11
11
|
}
|
|
@@ -53,7 +53,12 @@ let WebhookService = class WebhookService {
|
|
|
53
53
|
const business = await access_business_entity_1.AccessBusinessEntity.first(business_id);
|
|
54
54
|
if (!business)
|
|
55
55
|
return;
|
|
56
|
-
|
|
56
|
+
try {
|
|
57
|
+
return await new send_webhook_request_1.SendWebhookRequest(business, this.remoteRequestService).process(payload);
|
|
58
|
+
}
|
|
59
|
+
catch (e) {
|
|
60
|
+
console.log(e);
|
|
61
|
+
}
|
|
57
62
|
}
|
|
58
63
|
};
|
|
59
64
|
exports.WebhookService = WebhookService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhook.service.js","sourceRoot":"","sources":["../../../src/access/services/webhook.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,oFAA4F;AAC5F,uCAAoC;AAEpC,+EAA0E;AAC1E,yEAAoE;AACpE,yEAAoE;AACpE,4EAAuE;AAGhE,IAAM,cAAc,GAApB,MAAM,cAAc;IACvB,YACuB,YAA0B,EAC5B,oBAA0C;QADxC,iBAAY,GAAZ,YAAY,CAAc;QAC5B,yBAAoB,GAApB,oBAAoB,CAAsB;IAC5D,CAAC;IAEJ,KAAK,CAAC,MAAM,CAAC,IAAY;QACrB,MAAM,UAAU,GAAG,gBAAgB,IAAI,iBAAiB,CAAC;QACzD,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAElD,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC;QAChB,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,IAAY;QAC3B,MAAM,CAAC,GAAG,MAAM,uCAAiB,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACrF,MAAM,GAAG,GAAG,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC;QACjC,IAAI,CAAC,GAAG;YAAE,OAAO;QAEjB,MAAM,UAAU,GAAG,gBAAgB,IAAI,iBAAiB,CAAC;QACzD,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,EAAE,IAAA,mBAAQ,EAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QAEtE,OAAO,GAAG,CAAC;IACf,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,IAAY;QAC9B,MAAM,GAAG,GAAG,WAAW,IAAI,WAAW,CAAC;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC9C,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;QAEtB,MAAM,CAAC,GAAG,MAAM,uCAAiB,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;QACzF,IAAI,CAAC,CAAC;YAAE,OAAO;QAEf,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAEpC,OAAO,CAAC,CAAC;IACb,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,WAAmB,EAAE,OAAkC;QACtE,MAAM,QAAQ,GAAG,MAAM,6CAAoB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC/D,IAAI,CAAC,QAAQ;YAAE,OAAO;QAEtB,OAAO,IAAI,yCAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"webhook.service.js","sourceRoot":"","sources":["../../../src/access/services/webhook.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,oFAA4F;AAC5F,uCAAoC;AAEpC,+EAA0E;AAC1E,yEAAoE;AACpE,yEAAoE;AACpE,4EAAuE;AAGhE,IAAM,cAAc,GAApB,MAAM,cAAc;IACvB,YACuB,YAA0B,EAC5B,oBAA0C;QADxC,iBAAY,GAAZ,YAAY,CAAc;QAC5B,yBAAoB,GAApB,oBAAoB,CAAsB;IAC5D,CAAC;IAEJ,KAAK,CAAC,MAAM,CAAC,IAAY;QACrB,MAAM,UAAU,GAAG,gBAAgB,IAAI,iBAAiB,CAAC;QACzD,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAElD,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC;QAChB,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,IAAY;QAC3B,MAAM,CAAC,GAAG,MAAM,uCAAiB,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACrF,MAAM,GAAG,GAAG,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC;QACjC,IAAI,CAAC,GAAG;YAAE,OAAO;QAEjB,MAAM,UAAU,GAAG,gBAAgB,IAAI,iBAAiB,CAAC;QACzD,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,EAAE,IAAA,mBAAQ,EAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QAEtE,OAAO,GAAG,CAAC;IACf,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,IAAY;QAC9B,MAAM,GAAG,GAAG,WAAW,IAAI,WAAW,CAAC;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC9C,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;QAEtB,MAAM,CAAC,GAAG,MAAM,uCAAiB,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;QACzF,IAAI,CAAC,CAAC;YAAE,OAAO;QAEf,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAEpC,OAAO,CAAC,CAAC;IACb,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,WAAmB,EAAE,OAAkC;QACtE,MAAM,QAAQ,GAAG,MAAM,6CAAoB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC/D,IAAI,CAAC,QAAQ;YAAE,OAAO;QAEtB,IAAI,CAAC;YACD,OAAO,MAAM,IAAI,yCAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC9F,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC;IACL,CAAC;CACJ,CAAA;AAhDY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,mBAAU,GAAE;qCAG4B,sCAAY;QACN,8CAAoB;GAHtD,cAAc,CAgD1B"}
|
package/package.json
CHANGED