@explorins/pers-shared 2.1.101 → 2.1.103
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/cjs/shared-lib/dto/account-token-balances.dto.d.ts +1 -5
- package/dist/cjs/shared-lib/dto/account-token-balances.dto.d.ts.map +1 -1
- package/dist/cjs/shared-lib/dto/account-token-balances.dto.js +1 -14
- package/dist/cjs/shared-lib/dto/account-token-balances.dto.js.map +1 -1
- package/dist/cjs/shared-lib/dto/campaign/campaignClaim.request.dto.d.ts +1 -0
- package/dist/cjs/shared-lib/dto/campaign/campaignClaim.request.dto.d.ts.map +1 -1
- package/dist/cjs/shared-lib/dto/campaign/campaignClaim.request.dto.js +9 -0
- package/dist/cjs/shared-lib/dto/campaign/campaignClaim.request.dto.js.map +1 -1
- package/dist/cjs/shared-lib/dto/index.d.ts +1 -0
- package/dist/cjs/shared-lib/dto/index.d.ts.map +1 -1
- package/dist/cjs/shared-lib/dto/index.js +2 -0
- package/dist/cjs/shared-lib/dto/index.js.map +1 -1
- package/dist/cjs/shared-lib/dto/purchase/payment-intent.dto.d.ts +1 -1
- package/dist/cjs/shared-lib/dto/purchase/payment-intent.dto.d.ts.map +1 -1
- package/dist/cjs/shared-lib/dto/purchase/payment-intent.dto.js +3 -3
- package/dist/cjs/shared-lib/dto/purchase/payment-intent.dto.js.map +1 -1
- package/dist/cjs/shared-lib/dto/token/token-balance.dto.d.ts +0 -2
- package/dist/cjs/shared-lib/dto/token/token-balance.dto.d.ts.map +1 -1
- package/dist/cjs/shared-lib/dto/token/token-balance.dto.js +4 -7
- package/dist/cjs/shared-lib/dto/token/token-balance.dto.js.map +1 -1
- package/dist/cjs/shared-lib/dto/token/token-metadata.dto.d.ts +2 -0
- package/dist/cjs/shared-lib/dto/token/token-metadata.dto.d.ts.map +1 -1
- package/dist/cjs/shared-lib/dto/token/token-metadata.dto.js +21 -0
- package/dist/cjs/shared-lib/dto/token/token-metadata.dto.js.map +1 -1
- package/dist/cjs/shared-lib/dto/webhook/index.d.ts +2 -0
- package/dist/cjs/shared-lib/dto/webhook/index.d.ts.map +1 -0
- package/dist/cjs/shared-lib/dto/webhook/index.js +18 -0
- package/dist/cjs/shared-lib/dto/webhook/index.js.map +1 -0
- package/dist/cjs/shared-lib/dto/webhook/webhook.dto.d.ts +70 -0
- package/dist/cjs/shared-lib/dto/webhook/webhook.dto.d.ts.map +1 -0
- package/dist/cjs/shared-lib/dto/webhook/webhook.dto.js +301 -0
- package/dist/cjs/shared-lib/dto/webhook/webhook.dto.js.map +1 -0
- package/dist/cjs/shared-lib/enum/api-key-type.enum.d.ts +1 -0
- package/dist/cjs/shared-lib/enum/api-key-type.enum.d.ts.map +1 -1
- package/dist/cjs/shared-lib/enum/api-key-type.enum.js +1 -0
- package/dist/cjs/shared-lib/enum/api-key-type.enum.js.map +1 -1
- package/dist/cjs/shared-lib/enum/index.d.ts +1 -0
- package/dist/cjs/shared-lib/enum/index.d.ts.map +1 -1
- package/dist/cjs/shared-lib/enum/index.js +2 -0
- package/dist/cjs/shared-lib/enum/index.js.map +1 -1
- package/dist/cjs/shared-lib/enum/webhook.enum.d.ts +55 -0
- package/dist/cjs/shared-lib/enum/webhook.enum.d.ts.map +1 -0
- package/dist/cjs/shared-lib/enum/webhook.enum.js +66 -0
- package/dist/cjs/shared-lib/enum/webhook.enum.js.map +1 -0
- package/dist/cjs/shared-lib/errors/domains/business-errors.d.ts +6 -0
- package/dist/cjs/shared-lib/errors/domains/business-errors.d.ts.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/business-errors.js +10 -1
- package/dist/cjs/shared-lib/errors/domains/business-errors.js.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/token-errors.d.ts +12 -0
- package/dist/cjs/shared-lib/errors/domains/token-errors.d.ts.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/token-errors.js +19 -1
- package/dist/cjs/shared-lib/errors/domains/token-errors.js.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/webhook-errors.d.ts +76 -0
- package/dist/cjs/shared-lib/errors/domains/webhook-errors.d.ts.map +1 -0
- package/dist/cjs/shared-lib/errors/domains/webhook-errors.js +123 -0
- package/dist/cjs/shared-lib/errors/domains/webhook-errors.js.map +1 -0
- package/dist/cjs/shared-lib/errors/error-codes.d.ts +11 -0
- package/dist/cjs/shared-lib/errors/error-codes.d.ts.map +1 -1
- package/dist/cjs/shared-lib/errors/error-codes.js +16 -2
- package/dist/cjs/shared-lib/errors/error-codes.js.map +1 -1
- package/dist/cjs/shared-lib/errors/index.d.ts +1 -0
- package/dist/cjs/shared-lib/errors/index.d.ts.map +1 -1
- package/dist/cjs/shared-lib/errors/index.js +1 -0
- package/dist/cjs/shared-lib/errors/index.js.map +1 -1
- package/dist/cjs/shared-lib/interfaces/jwt.payload.interface.d.ts +11 -1
- package/dist/cjs/shared-lib/interfaces/jwt.payload.interface.d.ts.map +1 -1
- package/dist/cjs/shared-lib/interfaces/jwt.payload.interface.js +5 -1
- package/dist/cjs/shared-lib/interfaces/jwt.payload.interface.js.map +1 -1
- package/dist/cjs/shared-lib/interfaces/token-storage-data.interface.d.ts +2 -1
- package/dist/cjs/shared-lib/interfaces/token-storage-data.interface.d.ts.map +1 -1
- package/dist/cjs/shared-lib/interfaces/token-storage-data.interface.js +1 -0
- package/dist/cjs/shared-lib/interfaces/token-storage-data.interface.js.map +1 -1
- package/dist/cjs/shared-patterns/errors/error-factory.d.ts +17 -2
- package/dist/cjs/shared-patterns/errors/error-factory.d.ts.map +1 -1
- package/dist/cjs/shared-patterns/errors/error-factory.js +62 -1
- package/dist/cjs/shared-patterns/errors/error-factory.js.map +1 -1
- package/dist/cjs/shared-patterns/functions/helper.functions.d.ts +12 -0
- package/dist/cjs/shared-patterns/functions/helper.functions.d.ts.map +1 -1
- package/dist/cjs/shared-patterns/functions/helper.functions.js +30 -1
- package/dist/cjs/shared-patterns/functions/helper.functions.js.map +1 -1
- package/dist/esm/shared-lib/dto/account-token-balances.dto.d.ts +1 -5
- package/dist/esm/shared-lib/dto/account-token-balances.dto.d.ts.map +1 -1
- package/dist/esm/shared-lib/dto/account-token-balances.dto.js +1 -11
- package/dist/esm/shared-lib/dto/account-token-balances.dto.js.map +1 -1
- package/dist/esm/shared-lib/dto/campaign/campaignClaim.request.dto.d.ts +1 -0
- package/dist/esm/shared-lib/dto/campaign/campaignClaim.request.dto.d.ts.map +1 -1
- package/dist/esm/shared-lib/dto/campaign/campaignClaim.request.dto.js +8 -0
- package/dist/esm/shared-lib/dto/campaign/campaignClaim.request.dto.js.map +1 -1
- package/dist/esm/shared-lib/dto/index.d.ts +1 -0
- package/dist/esm/shared-lib/dto/index.d.ts.map +1 -1
- package/dist/esm/shared-lib/dto/index.js +2 -0
- package/dist/esm/shared-lib/dto/index.js.map +1 -1
- package/dist/esm/shared-lib/dto/purchase/payment-intent.dto.d.ts +1 -1
- package/dist/esm/shared-lib/dto/purchase/payment-intent.dto.d.ts.map +1 -1
- package/dist/esm/shared-lib/dto/purchase/payment-intent.dto.js +5 -5
- package/dist/esm/shared-lib/dto/purchase/payment-intent.dto.js.map +1 -1
- package/dist/esm/shared-lib/dto/token/token-balance.dto.d.ts +0 -2
- package/dist/esm/shared-lib/dto/token/token-balance.dto.d.ts.map +1 -1
- package/dist/esm/shared-lib/dto/token/token-balance.dto.js +3 -5
- package/dist/esm/shared-lib/dto/token/token-balance.dto.js.map +1 -1
- package/dist/esm/shared-lib/dto/token/token-metadata.dto.d.ts +2 -0
- package/dist/esm/shared-lib/dto/token/token-metadata.dto.d.ts.map +1 -1
- package/dist/esm/shared-lib/dto/token/token-metadata.dto.js +19 -0
- package/dist/esm/shared-lib/dto/token/token-metadata.dto.js.map +1 -1
- package/dist/esm/shared-lib/dto/webhook/index.d.ts +2 -0
- package/dist/esm/shared-lib/dto/webhook/index.d.ts.map +1 -0
- package/dist/esm/shared-lib/dto/webhook/index.js +2 -0
- package/dist/esm/shared-lib/dto/webhook/index.js.map +1 -0
- package/dist/esm/shared-lib/dto/webhook/webhook.dto.d.ts +70 -0
- package/dist/esm/shared-lib/dto/webhook/webhook.dto.d.ts.map +1 -0
- package/dist/esm/shared-lib/dto/webhook/webhook.dto.js +246 -0
- package/dist/esm/shared-lib/dto/webhook/webhook.dto.js.map +1 -0
- package/dist/esm/shared-lib/enum/api-key-type.enum.d.ts +1 -0
- package/dist/esm/shared-lib/enum/api-key-type.enum.d.ts.map +1 -1
- package/dist/esm/shared-lib/enum/api-key-type.enum.js +1 -0
- package/dist/esm/shared-lib/enum/api-key-type.enum.js.map +1 -1
- package/dist/esm/shared-lib/enum/index.d.ts +1 -0
- package/dist/esm/shared-lib/enum/index.d.ts.map +1 -1
- package/dist/esm/shared-lib/enum/index.js +2 -0
- package/dist/esm/shared-lib/enum/index.js.map +1 -1
- package/dist/esm/shared-lib/enum/webhook.enum.d.ts +55 -0
- package/dist/esm/shared-lib/enum/webhook.enum.d.ts.map +1 -0
- package/dist/esm/shared-lib/enum/webhook.enum.js +63 -0
- package/dist/esm/shared-lib/enum/webhook.enum.js.map +1 -0
- package/dist/esm/shared-lib/errors/domains/business-errors.d.ts +6 -0
- package/dist/esm/shared-lib/errors/domains/business-errors.d.ts.map +1 -1
- package/dist/esm/shared-lib/errors/domains/business-errors.js +8 -0
- package/dist/esm/shared-lib/errors/domains/business-errors.js.map +1 -1
- package/dist/esm/shared-lib/errors/domains/token-errors.d.ts +12 -0
- package/dist/esm/shared-lib/errors/domains/token-errors.d.ts.map +1 -1
- package/dist/esm/shared-lib/errors/domains/token-errors.js +16 -0
- package/dist/esm/shared-lib/errors/domains/token-errors.js.map +1 -1
- package/dist/esm/shared-lib/errors/domains/webhook-errors.d.ts +76 -0
- package/dist/esm/shared-lib/errors/domains/webhook-errors.d.ts.map +1 -0
- package/dist/esm/shared-lib/errors/domains/webhook-errors.js +109 -0
- package/dist/esm/shared-lib/errors/domains/webhook-errors.js.map +1 -0
- package/dist/esm/shared-lib/errors/error-codes.d.ts +11 -0
- package/dist/esm/shared-lib/errors/error-codes.d.ts.map +1 -1
- package/dist/esm/shared-lib/errors/error-codes.js +16 -2
- package/dist/esm/shared-lib/errors/error-codes.js.map +1 -1
- package/dist/esm/shared-lib/errors/index.d.ts +1 -0
- package/dist/esm/shared-lib/errors/index.d.ts.map +1 -1
- package/dist/esm/shared-lib/errors/index.js +1 -0
- package/dist/esm/shared-lib/errors/index.js.map +1 -1
- package/dist/esm/shared-lib/interfaces/jwt.payload.interface.d.ts +11 -1
- package/dist/esm/shared-lib/interfaces/jwt.payload.interface.d.ts.map +1 -1
- package/dist/esm/shared-lib/interfaces/jwt.payload.interface.js +4 -1
- package/dist/esm/shared-lib/interfaces/jwt.payload.interface.js.map +1 -1
- package/dist/esm/shared-lib/interfaces/token-storage-data.interface.d.ts +2 -1
- package/dist/esm/shared-lib/interfaces/token-storage-data.interface.d.ts.map +1 -1
- package/dist/esm/shared-lib/interfaces/token-storage-data.interface.js +1 -0
- package/dist/esm/shared-lib/interfaces/token-storage-data.interface.js.map +1 -1
- package/dist/esm/shared-patterns/errors/error-factory.d.ts +17 -2
- package/dist/esm/shared-patterns/errors/error-factory.d.ts.map +1 -1
- package/dist/esm/shared-patterns/errors/error-factory.js +64 -3
- package/dist/esm/shared-patterns/errors/error-factory.js.map +1 -1
- package/dist/esm/shared-patterns/functions/helper.functions.d.ts +12 -0
- package/dist/esm/shared-patterns/functions/helper.functions.d.ts.map +1 -1
- package/dist/esm/shared-patterns/functions/helper.functions.js +28 -0
- package/dist/esm/shared-patterns/functions/helper.functions.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { DomainRuleError, SecurityError, InfrastructureError, TimeoutError, ValidationError } from '../base-business-error';
|
|
2
|
+
/**
|
|
3
|
+
* Webhook domain business errors
|
|
4
|
+
*
|
|
5
|
+
* These errors cover:
|
|
6
|
+
* - Webhook configuration issues (not found, inactive)
|
|
7
|
+
* - Inbound security (source validation, signature verification)
|
|
8
|
+
* - Outbound forwarding (target unreachable, timeout)
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Webhook not found error
|
|
12
|
+
*/
|
|
13
|
+
export declare class WebhookNotFoundError extends DomainRuleError {
|
|
14
|
+
constructor(webhookId: string);
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Webhook is inactive/disabled
|
|
18
|
+
*/
|
|
19
|
+
export declare class WebhookInactiveError extends DomainRuleError {
|
|
20
|
+
constructor(webhookId: string);
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Caller source not in allowed sources list
|
|
24
|
+
*/
|
|
25
|
+
export declare class WebhookSourceNotAllowedError extends SecurityError {
|
|
26
|
+
constructor(webhookId: string, callerType?: string);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Signature verification failed (e.g., Stripe signature)
|
|
30
|
+
*/
|
|
31
|
+
export declare class WebhookSignatureInvalidError extends SecurityError {
|
|
32
|
+
constructor(webhookId: string, source?: string);
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Webhook forward failed (target unreachable or returned error)
|
|
36
|
+
*/
|
|
37
|
+
export declare class WebhookForwardFailedError extends InfrastructureError {
|
|
38
|
+
constructor(webhookId: string, targetUrl: string, statusCode?: number);
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Webhook request timed out
|
|
42
|
+
*/
|
|
43
|
+
export declare class WebhookTimeoutError extends TimeoutError {
|
|
44
|
+
constructor(webhookId: string, timeoutMs: number);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Webhook validation error (configuration issues)
|
|
48
|
+
*/
|
|
49
|
+
export declare class WebhookValidationError extends ValidationError {
|
|
50
|
+
constructor(field: string, reason: string);
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* No allowed sources configured (webhook is blocked)
|
|
54
|
+
*/
|
|
55
|
+
export declare class WebhookBlockedError extends DomainRuleError {
|
|
56
|
+
constructor(webhookId: string);
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* HTTP method not allowed for this webhook
|
|
60
|
+
*/
|
|
61
|
+
export declare class WebhookMethodNotAllowedError extends DomainRuleError {
|
|
62
|
+
constructor(webhookId: string, method: string);
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Webhook execution not found
|
|
66
|
+
*/
|
|
67
|
+
export declare class WebhookExecutionNotFoundError extends DomainRuleError {
|
|
68
|
+
constructor(executionId: string);
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Webhook callback rejected (expired or already received)
|
|
72
|
+
*/
|
|
73
|
+
export declare class WebhookCallbackRejectedError extends DomainRuleError {
|
|
74
|
+
constructor(executionId: string, reason: string);
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=webhook-errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhook-errors.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/errors/domains/webhook-errors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,mBAAmB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG5H;;;;;;;GAOG;AAEH;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,SAAS,EAAE,MAAM;CAS9B;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,SAAS,EAAE,MAAM;CAS9B;AAED;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,aAAa;gBACjD,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM;CAYnD;AAED;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,aAAa;gBACjD,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;CAY/C;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,mBAAmB;gBACpD,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM;CAYtE;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,YAAY;gBACvC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;CASjD;AAED;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,eAAe;gBAC7C,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAS1C;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,SAAS,EAAE,MAAM;CAS9B;AAED;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,eAAe;gBACnD,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAS9C;AAED;;GAEG;AACH,qBAAa,6BAA8B,SAAQ,eAAe;gBACpD,WAAW,EAAE,MAAM;CAShC;AAED;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,eAAe;gBACnD,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAShD"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WebhookCallbackRejectedError = exports.WebhookExecutionNotFoundError = exports.WebhookMethodNotAllowedError = exports.WebhookBlockedError = exports.WebhookValidationError = exports.WebhookTimeoutError = exports.WebhookForwardFailedError = exports.WebhookSignatureInvalidError = exports.WebhookSourceNotAllowedError = exports.WebhookInactiveError = exports.WebhookNotFoundError = void 0;
|
|
4
|
+
const common_1 = require("@nestjs/common");
|
|
5
|
+
const base_business_error_1 = require("../base-business-error");
|
|
6
|
+
const error_codes_1 = require("../error-codes");
|
|
7
|
+
/**
|
|
8
|
+
* Webhook domain business errors
|
|
9
|
+
*
|
|
10
|
+
* These errors cover:
|
|
11
|
+
* - Webhook configuration issues (not found, inactive)
|
|
12
|
+
* - Inbound security (source validation, signature verification)
|
|
13
|
+
* - Outbound forwarding (target unreachable, timeout)
|
|
14
|
+
*/
|
|
15
|
+
/**
|
|
16
|
+
* Webhook not found error
|
|
17
|
+
*/
|
|
18
|
+
class WebhookNotFoundError extends base_business_error_1.DomainRuleError {
|
|
19
|
+
constructor(webhookId) {
|
|
20
|
+
super(error_codes_1.CommonErrorCodes.WEBHOOK_NOT_FOUND, error_codes_1.ErrorDomains.WEBHOOK, `Webhook ${webhookId} not found`, common_1.HttpStatus.NOT_FOUND, 'Verify the webhook ID and ensure it exists');
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
exports.WebhookNotFoundError = WebhookNotFoundError;
|
|
24
|
+
/**
|
|
25
|
+
* Webhook is inactive/disabled
|
|
26
|
+
*/
|
|
27
|
+
class WebhookInactiveError extends base_business_error_1.DomainRuleError {
|
|
28
|
+
constructor(webhookId) {
|
|
29
|
+
super(error_codes_1.CommonErrorCodes.WEBHOOK_INACTIVE, error_codes_1.ErrorDomains.WEBHOOK, `Webhook ${webhookId} is inactive`, common_1.HttpStatus.BAD_REQUEST, 'Activate the webhook before sending requests');
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
exports.WebhookInactiveError = WebhookInactiveError;
|
|
33
|
+
/**
|
|
34
|
+
* Caller source not in allowed sources list
|
|
35
|
+
*/
|
|
36
|
+
class WebhookSourceNotAllowedError extends base_business_error_1.SecurityError {
|
|
37
|
+
constructor(webhookId, callerType) {
|
|
38
|
+
const message = callerType
|
|
39
|
+
? `Caller type '${callerType}' not allowed for webhook ${webhookId}`
|
|
40
|
+
: `Webhook ${webhookId} requires authentication`;
|
|
41
|
+
super(error_codes_1.CommonErrorCodes.WEBHOOK_SOURCE_NOT_ALLOWED, error_codes_1.ErrorDomains.WEBHOOK, message, common_1.HttpStatus.FORBIDDEN, 'Ensure the caller is authenticated with an allowed source type');
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.WebhookSourceNotAllowedError = WebhookSourceNotAllowedError;
|
|
45
|
+
/**
|
|
46
|
+
* Signature verification failed (e.g., Stripe signature)
|
|
47
|
+
*/
|
|
48
|
+
class WebhookSignatureInvalidError extends base_business_error_1.SecurityError {
|
|
49
|
+
constructor(webhookId, source) {
|
|
50
|
+
const message = source
|
|
51
|
+
? `${source} signature verification failed for webhook ${webhookId}`
|
|
52
|
+
: `Signature verification failed for webhook ${webhookId}`;
|
|
53
|
+
super(error_codes_1.CommonErrorCodes.WEBHOOK_SIGNATURE_INVALID, error_codes_1.ErrorDomains.WEBHOOK, message, common_1.HttpStatus.FORBIDDEN, 'Verify the signing secret is correctly configured');
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
exports.WebhookSignatureInvalidError = WebhookSignatureInvalidError;
|
|
57
|
+
/**
|
|
58
|
+
* Webhook forward failed (target unreachable or returned error)
|
|
59
|
+
*/
|
|
60
|
+
class WebhookForwardFailedError extends base_business_error_1.InfrastructureError {
|
|
61
|
+
constructor(webhookId, targetUrl, statusCode) {
|
|
62
|
+
const message = statusCode
|
|
63
|
+
? `Webhook ${webhookId} forward to ${targetUrl} failed with status ${statusCode}`
|
|
64
|
+
: `Webhook ${webhookId} forward to ${targetUrl} failed`;
|
|
65
|
+
super(error_codes_1.CommonErrorCodes.WEBHOOK_FORWARD_FAILED, error_codes_1.ErrorDomains.WEBHOOK, message, common_1.HttpStatus.BAD_GATEWAY, 'Check target URL availability and configuration');
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
exports.WebhookForwardFailedError = WebhookForwardFailedError;
|
|
69
|
+
/**
|
|
70
|
+
* Webhook request timed out
|
|
71
|
+
*/
|
|
72
|
+
class WebhookTimeoutError extends base_business_error_1.TimeoutError {
|
|
73
|
+
constructor(webhookId, timeoutMs) {
|
|
74
|
+
super(error_codes_1.CommonErrorCodes.WEBHOOK_TIMEOUT, error_codes_1.ErrorDomains.WEBHOOK, `Webhook ${webhookId} request timed out after ${timeoutMs}ms`, common_1.HttpStatus.GATEWAY_TIMEOUT, 'Increase timeout or optimize target endpoint');
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
exports.WebhookTimeoutError = WebhookTimeoutError;
|
|
78
|
+
/**
|
|
79
|
+
* Webhook validation error (configuration issues)
|
|
80
|
+
*/
|
|
81
|
+
class WebhookValidationError extends base_business_error_1.ValidationError {
|
|
82
|
+
constructor(field, reason) {
|
|
83
|
+
super(error_codes_1.CommonErrorCodes.VALIDATION_ERROR, error_codes_1.ErrorDomains.WEBHOOK, `Webhook validation failed: ${field} - ${reason}`, field, 'Correct the webhook configuration');
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
exports.WebhookValidationError = WebhookValidationError;
|
|
87
|
+
/**
|
|
88
|
+
* No allowed sources configured (webhook is blocked)
|
|
89
|
+
*/
|
|
90
|
+
class WebhookBlockedError extends base_business_error_1.DomainRuleError {
|
|
91
|
+
constructor(webhookId) {
|
|
92
|
+
super(error_codes_1.CommonErrorCodes.WEBHOOK_SOURCE_NOT_ALLOWED, error_codes_1.ErrorDomains.WEBHOOK, `Webhook ${webhookId} has no allowed sources configured`, common_1.HttpStatus.FORBIDDEN, 'Configure at least one allowed source for the webhook');
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
exports.WebhookBlockedError = WebhookBlockedError;
|
|
96
|
+
/**
|
|
97
|
+
* HTTP method not allowed for this webhook
|
|
98
|
+
*/
|
|
99
|
+
class WebhookMethodNotAllowedError extends base_business_error_1.DomainRuleError {
|
|
100
|
+
constructor(webhookId, method) {
|
|
101
|
+
super(error_codes_1.CommonErrorCodes.WEBHOOK_SOURCE_NOT_ALLOWED, error_codes_1.ErrorDomains.WEBHOOK, `HTTP method ${method} not allowed for webhook ${webhookId}`, common_1.HttpStatus.METHOD_NOT_ALLOWED, 'Check the webhook configuration for allowed HTTP methods');
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
exports.WebhookMethodNotAllowedError = WebhookMethodNotAllowedError;
|
|
105
|
+
/**
|
|
106
|
+
* Webhook execution not found
|
|
107
|
+
*/
|
|
108
|
+
class WebhookExecutionNotFoundError extends base_business_error_1.DomainRuleError {
|
|
109
|
+
constructor(executionId) {
|
|
110
|
+
super(error_codes_1.CommonErrorCodes.WEBHOOK_NOT_FOUND, error_codes_1.ErrorDomains.WEBHOOK, `Webhook execution ${executionId} not found`, common_1.HttpStatus.NOT_FOUND, 'Verify the execution ID and ensure it exists');
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
exports.WebhookExecutionNotFoundError = WebhookExecutionNotFoundError;
|
|
114
|
+
/**
|
|
115
|
+
* Webhook callback rejected (expired or already received)
|
|
116
|
+
*/
|
|
117
|
+
class WebhookCallbackRejectedError extends base_business_error_1.DomainRuleError {
|
|
118
|
+
constructor(executionId, reason) {
|
|
119
|
+
super(error_codes_1.CommonErrorCodes.WEBHOOK_SOURCE_NOT_ALLOWED, error_codes_1.ErrorDomains.WEBHOOK, `Callback for execution ${executionId} rejected: ${reason}`, common_1.HttpStatus.CONFLICT, 'Callbacks must be sent within 1 hour and cannot be sent twice');
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
exports.WebhookCallbackRejectedError = WebhookCallbackRejectedError;
|
|
123
|
+
//# sourceMappingURL=webhook-errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhook-errors.js","sourceRoot":"","sources":["../../../../../src/shared-lib/errors/domains/webhook-errors.ts"],"names":[],"mappings":";;;AAAA,2CAA4C;AAC5C,gEAA4H;AAC5H,gDAAgE;AAEhE;;;;;;;GAOG;AAEH;;GAEG;AACH,MAAa,oBAAqB,SAAQ,qCAAe;IACvD,YAAY,SAAiB;QAC3B,KAAK,CACH,8BAAgB,CAAC,iBAAiB,EAClC,0BAAY,CAAC,OAAO,EACpB,WAAW,SAAS,YAAY,EAChC,mBAAU,CAAC,SAAS,EACpB,4CAA4C,CAC7C,CAAC;IACJ,CAAC;CACF;AAVD,oDAUC;AAED;;GAEG;AACH,MAAa,oBAAqB,SAAQ,qCAAe;IACvD,YAAY,SAAiB;QAC3B,KAAK,CACH,8BAAgB,CAAC,gBAAgB,EACjC,0BAAY,CAAC,OAAO,EACpB,WAAW,SAAS,cAAc,EAClC,mBAAU,CAAC,WAAW,EACtB,8CAA8C,CAC/C,CAAC;IACJ,CAAC;CACF;AAVD,oDAUC;AAED;;GAEG;AACH,MAAa,4BAA6B,SAAQ,mCAAa;IAC7D,YAAY,SAAiB,EAAE,UAAmB;QAChD,MAAM,OAAO,GAAG,UAAU;YACxB,CAAC,CAAC,gBAAgB,UAAU,6BAA6B,SAAS,EAAE;YACpE,CAAC,CAAC,WAAW,SAAS,0BAA0B,CAAC;QACnD,KAAK,CACH,8BAAgB,CAAC,0BAA0B,EAC3C,0BAAY,CAAC,OAAO,EACpB,OAAO,EACP,mBAAU,CAAC,SAAS,EACpB,gEAAgE,CACjE,CAAC;IACJ,CAAC;CACF;AAbD,oEAaC;AAED;;GAEG;AACH,MAAa,4BAA6B,SAAQ,mCAAa;IAC7D,YAAY,SAAiB,EAAE,MAAe;QAC5C,MAAM,OAAO,GAAG,MAAM;YACpB,CAAC,CAAC,GAAG,MAAM,8CAA8C,SAAS,EAAE;YACpE,CAAC,CAAC,6CAA6C,SAAS,EAAE,CAAC;QAC7D,KAAK,CACH,8BAAgB,CAAC,yBAAyB,EAC1C,0BAAY,CAAC,OAAO,EACpB,OAAO,EACP,mBAAU,CAAC,SAAS,EACpB,mDAAmD,CACpD,CAAC;IACJ,CAAC;CACF;AAbD,oEAaC;AAED;;GAEG;AACH,MAAa,yBAA0B,SAAQ,yCAAmB;IAChE,YAAY,SAAiB,EAAE,SAAiB,EAAE,UAAmB;QACnE,MAAM,OAAO,GAAG,UAAU;YACxB,CAAC,CAAC,WAAW,SAAS,eAAe,SAAS,uBAAuB,UAAU,EAAE;YACjF,CAAC,CAAC,WAAW,SAAS,eAAe,SAAS,SAAS,CAAC;QAC1D,KAAK,CACH,8BAAgB,CAAC,sBAAsB,EACvC,0BAAY,CAAC,OAAO,EACpB,OAAO,EACP,mBAAU,CAAC,WAAW,EACtB,iDAAiD,CAClD,CAAC;IACJ,CAAC;CACF;AAbD,8DAaC;AAED;;GAEG;AACH,MAAa,mBAAoB,SAAQ,kCAAY;IACnD,YAAY,SAAiB,EAAE,SAAiB;QAC9C,KAAK,CACH,8BAAgB,CAAC,eAAe,EAChC,0BAAY,CAAC,OAAO,EACpB,WAAW,SAAS,4BAA4B,SAAS,IAAI,EAC7D,mBAAU,CAAC,eAAe,EAC1B,8CAA8C,CAC/C,CAAC;IACJ,CAAC;CACF;AAVD,kDAUC;AAED;;GAEG;AACH,MAAa,sBAAuB,SAAQ,qCAAe;IACzD,YAAY,KAAa,EAAE,MAAc;QACvC,KAAK,CACH,8BAAgB,CAAC,gBAAgB,EACjC,0BAAY,CAAC,OAAO,EACpB,8BAA8B,KAAK,MAAM,MAAM,EAAE,EACjD,KAAK,EACL,mCAAmC,CACpC,CAAC;IACJ,CAAC;CACF;AAVD,wDAUC;AAED;;GAEG;AACH,MAAa,mBAAoB,SAAQ,qCAAe;IACtD,YAAY,SAAiB;QAC3B,KAAK,CACH,8BAAgB,CAAC,0BAA0B,EAC3C,0BAAY,CAAC,OAAO,EACpB,WAAW,SAAS,oCAAoC,EACxD,mBAAU,CAAC,SAAS,EACpB,uDAAuD,CACxD,CAAC;IACJ,CAAC;CACF;AAVD,kDAUC;AAED;;GAEG;AACH,MAAa,4BAA6B,SAAQ,qCAAe;IAC/D,YAAY,SAAiB,EAAE,MAAc;QAC3C,KAAK,CACH,8BAAgB,CAAC,0BAA0B,EAC3C,0BAAY,CAAC,OAAO,EACpB,eAAe,MAAM,4BAA4B,SAAS,EAAE,EAC5D,mBAAU,CAAC,kBAAkB,EAC7B,0DAA0D,CAC3D,CAAC;IACJ,CAAC;CACF;AAVD,oEAUC;AAED;;GAEG;AACH,MAAa,6BAA8B,SAAQ,qCAAe;IAChE,YAAY,WAAmB;QAC7B,KAAK,CACH,8BAAgB,CAAC,iBAAiB,EAClC,0BAAY,CAAC,OAAO,EACpB,qBAAqB,WAAW,YAAY,EAC5C,mBAAU,CAAC,SAAS,EACpB,8CAA8C,CAC/C,CAAC;IACJ,CAAC;CACF;AAVD,sEAUC;AAED;;GAEG;AACH,MAAa,4BAA6B,SAAQ,qCAAe;IAC/D,YAAY,WAAmB,EAAE,MAAc;QAC7C,KAAK,CACH,8BAAgB,CAAC,0BAA0B,EAC3C,0BAAY,CAAC,OAAO,EACpB,0BAA0B,WAAW,cAAc,MAAM,EAAE,EAC3D,mBAAU,CAAC,QAAQ,EACnB,+DAA+D,CAChE,CAAC;IACJ,CAAC;CACF;AAVD,oEAUC"}
|
|
@@ -68,6 +68,16 @@ export declare const CommonErrorCodes: {
|
|
|
68
68
|
readonly VALIDATION_ERROR: "VALIDATION_ERROR";
|
|
69
69
|
readonly BUSINESS_RULE_VIOLATION: "BUSINESS_RULE_VIOLATION";
|
|
70
70
|
readonly RESOURCE_NOT_FOUND: "RESOURCE_NOT_FOUND";
|
|
71
|
+
readonly WEBHOOK_NOT_FOUND: "WEBHOOK_NOT_FOUND";
|
|
72
|
+
readonly WEBHOOK_INACTIVE: "WEBHOOK_INACTIVE";
|
|
73
|
+
readonly WEBHOOK_SOURCE_NOT_ALLOWED: "WEBHOOK_SOURCE_NOT_ALLOWED";
|
|
74
|
+
readonly WEBHOOK_SIGNATURE_INVALID: "WEBHOOK_SIGNATURE_INVALID";
|
|
75
|
+
readonly WEBHOOK_FORWARD_FAILED: "WEBHOOK_FORWARD_FAILED";
|
|
76
|
+
readonly WEBHOOK_TIMEOUT: "WEBHOOK_TIMEOUT";
|
|
77
|
+
readonly RESOURCE_CONFLICT: "RESOURCE_CONFLICT";
|
|
78
|
+
readonly CONCURRENT_MODIFICATION: "CONCURRENT_MODIFICATION";
|
|
79
|
+
readonly REQUEST_TIMEOUT: "REQUEST_TIMEOUT";
|
|
80
|
+
readonly GATEWAY_TIMEOUT: "GATEWAY_TIMEOUT";
|
|
71
81
|
};
|
|
72
82
|
/**
|
|
73
83
|
* Type-safe union of all error codes
|
|
@@ -96,6 +106,7 @@ export declare const ErrorDomains: {
|
|
|
96
106
|
readonly AUTHENTICATION: "authentication";
|
|
97
107
|
readonly EXTERNAL: "external";
|
|
98
108
|
readonly TENANT: "tenant";
|
|
109
|
+
readonly WEBHOOK: "webhook";
|
|
99
110
|
};
|
|
100
111
|
/**
|
|
101
112
|
* Type-safe union of all domain names
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-codes.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/errors/error-codes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,eAAO,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"error-codes.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/errors/error-codes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyGnB,CAAC;AAEX;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,gBAAgB,CAAC,MAAM,OAAO,gBAAgB,CAAC,CAAC;AAErF;;;;;GAKG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;CAef,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,YAAY,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC"}
|
|
@@ -86,7 +86,20 @@ exports.CommonErrorCodes = {
|
|
|
86
86
|
INTERNAL_ERROR: 'INTERNAL_ERROR',
|
|
87
87
|
VALIDATION_ERROR: 'VALIDATION_ERROR',
|
|
88
88
|
BUSINESS_RULE_VIOLATION: 'BUSINESS_RULE_VIOLATION',
|
|
89
|
-
RESOURCE_NOT_FOUND: 'RESOURCE_NOT_FOUND'
|
|
89
|
+
RESOURCE_NOT_FOUND: 'RESOURCE_NOT_FOUND',
|
|
90
|
+
// Webhook domain
|
|
91
|
+
WEBHOOK_NOT_FOUND: 'WEBHOOK_NOT_FOUND',
|
|
92
|
+
WEBHOOK_INACTIVE: 'WEBHOOK_INACTIVE',
|
|
93
|
+
WEBHOOK_SOURCE_NOT_ALLOWED: 'WEBHOOK_SOURCE_NOT_ALLOWED',
|
|
94
|
+
WEBHOOK_SIGNATURE_INVALID: 'WEBHOOK_SIGNATURE_INVALID',
|
|
95
|
+
WEBHOOK_FORWARD_FAILED: 'WEBHOOK_FORWARD_FAILED',
|
|
96
|
+
WEBHOOK_TIMEOUT: 'WEBHOOK_TIMEOUT',
|
|
97
|
+
// Conflict errors (409)
|
|
98
|
+
RESOURCE_CONFLICT: 'RESOURCE_CONFLICT',
|
|
99
|
+
CONCURRENT_MODIFICATION: 'CONCURRENT_MODIFICATION',
|
|
100
|
+
// Timeout errors (504)
|
|
101
|
+
REQUEST_TIMEOUT: 'REQUEST_TIMEOUT',
|
|
102
|
+
GATEWAY_TIMEOUT: 'GATEWAY_TIMEOUT'
|
|
90
103
|
};
|
|
91
104
|
/**
|
|
92
105
|
* Domain names used in error classification
|
|
@@ -107,6 +120,7 @@ exports.ErrorDomains = {
|
|
|
107
120
|
CAMPAIGN: 'campaign',
|
|
108
121
|
AUTHENTICATION: 'authentication',
|
|
109
122
|
EXTERNAL: 'external',
|
|
110
|
-
TENANT: 'tenant'
|
|
123
|
+
TENANT: 'tenant',
|
|
124
|
+
WEBHOOK: 'webhook'
|
|
111
125
|
};
|
|
112
126
|
//# sourceMappingURL=error-codes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-codes.js","sourceRoot":"","sources":["../../../../src/shared-lib/errors/error-codes.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;;AAEU,QAAA,gBAAgB,GAAG;IAC9B,cAAc;IACd,cAAc,EAAE,gBAAgB;IAChC,mBAAmB,EAAE,qBAAqB;IAC1C,mBAAmB,EAAE,qBAAqB;IAE1C,eAAe;IACf,eAAe,EAAE,iBAAiB;IAClC,gBAAgB,EAAE,kBAAkB;IACpC,iBAAiB,EAAE,mBAAmB;IACtC,oBAAoB,EAAE,sBAAsB;IAE5C,gBAAgB;IAChB,sBAAsB,EAAE,wBAAwB;IAChD,gBAAgB,EAAE,kBAAkB;IACpC,8BAA8B,EAAE,gCAAgC;IAEhE,iBAAiB;IACjB,oBAAoB,EAAE,sBAAsB;IAE5C,kBAAkB;IAClB,kBAAkB,EAAE,oBAAoB;IAExC,kBAAkB;IAClB,kBAAkB,EAAE,oBAAoB;IACxC,mBAAmB,EAAE,qBAAqB;IAE1C,oBAAoB;IACpB,oBAAoB,EAAE,sBAAsB;IAC5C,yBAAyB,EAAE,2BAA2B;IACtD,qBAAqB,EAAE,uBAAuB;IAE9C,qBAAqB;IACrB,qBAAqB,EAAE,uBAAuB;IAC9C,6BAA6B,EAAE,+BAA+B;IAC9D,6BAA6B,EAAE,+BAA+B;IAC9D,uBAAuB,EAAE,yBAAyB;IAClD,mBAAmB,EAAE,qBAAqB;IAC1C,4BAA4B,EAAE,8BAA8B;IAC5D,8BAA8B,EAAE,gCAAgC;IAEhE,kBAAkB;IAClB,2BAA2B,EAAE,6BAA6B;IAC1D,0BAA0B,EAAE,4BAA4B;IACxD,0BAA0B,EAAE,4BAA4B;IACxD,wBAAwB,EAAE,0BAA0B;IACpD,mBAAmB,EAAE,qBAAqB;IAC1C,0BAA0B,EAAE,4BAA4B;IACxD,0BAA0B,EAAE,4BAA4B;IACxD,mBAAmB,EAAE,qBAAqB;IAC1C,cAAc,EAAE,gBAAgB;IAChC,oBAAoB,EAAE,sBAAsB;IAC5C,4BAA4B,EAAE,8BAA8B;IAC5D,wBAAwB,EAAE,0BAA0B;IACpD,4BAA4B,EAAE,8BAA8B;IAC5D,6BAA6B,EAAE,+BAA+B;IAC9D,mCAAmC,EAAE,qCAAqC;IAE1E,iBAAiB;IACjB,iBAAiB,EAAE,mBAAmB;IAEtC,wBAAwB;IACxB,wBAAwB,EAAE,0BAA0B;IAEpD,wBAAwB;IACxB,uBAAuB,EAAE,yBAAyB;IAClD,eAAe,EAAE,iBAAiB;IAElC,mBAAmB;IACnB,eAAe,EAAE,iBAAiB;IAClC,mBAAmB,EAAE,qBAAqB;IAE1C,gBAAgB;IAChB,YAAY,EAAE,cAAc;IAC5B,sBAAsB,EAAE,wBAAwB;IAChD,uBAAuB,EAAE,yBAAyB;IAClD,oBAAoB,EAAE,sBAAsB;IAE5C,iCAAiC;IACjC,aAAa,EAAE,eAAe;IAC9B,aAAa,EAAE,eAAe;IAC9B,aAAa,EAAE,eAAe;IAC9B,mBAAmB,EAAE,qBAAqB;IAE1C,oBAAoB;IACpB,cAAc,EAAE,gBAAgB;IAChC,gBAAgB,EAAE,kBAAkB;IACpC,uBAAuB,EAAE,yBAAyB;IAClD,kBAAkB,EAAE,oBAAoB;
|
|
1
|
+
{"version":3,"file":"error-codes.js","sourceRoot":"","sources":["../../../../src/shared-lib/errors/error-codes.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,4 +16,5 @@ export * from './domains/validation-errors';
|
|
|
16
16
|
export * from './domains/tenant-errors';
|
|
17
17
|
export * from './domains/campaign-errors';
|
|
18
18
|
export * from './domains/trigger-source-errors';
|
|
19
|
+
export * from './domains/webhook-errors';
|
|
19
20
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/errors/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,aAAa,EACb,cAAc,EACd,YAAY,EACZ,YAAY,EACb,MAAM,uBAAuB,CAAC;AAE/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAG7C,cAAc,mCAAmC,CAAC;AAKlD,cAAc,eAAe,CAAC;AAG9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,iCAAiC,CAAC;AAChD,cAAc,kCAAkC,CAAC;AACjD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iCAAiC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/errors/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,aAAa,EACb,cAAc,EACd,YAAY,EACZ,YAAY,EACb,MAAM,uBAAuB,CAAC;AAE/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAG7C,cAAc,mCAAmC,CAAC;AAKlD,cAAc,eAAe,CAAC;AAG9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,iCAAiC,CAAC;AAChD,cAAc,kCAAkC,CAAC;AACjD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iCAAiC,CAAC;AAChD,cAAc,0BAA0B,CAAC"}
|
|
@@ -47,4 +47,5 @@ __exportStar(require("./domains/validation-errors"), exports);
|
|
|
47
47
|
__exportStar(require("./domains/tenant-errors"), exports);
|
|
48
48
|
__exportStar(require("./domains/campaign-errors"), exports);
|
|
49
49
|
__exportStar(require("./domains/trigger-source-errors"), exports);
|
|
50
|
+
__exportStar(require("./domains/webhook-errors"), exports);
|
|
50
51
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/shared-lib/errors/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,oCAAoC;AACpC,6DAU+B;AAT7B,yHAAA,kBAAkB,OAAA;AAClB,sHAAA,eAAe,OAAA;AACf,sHAAA,eAAe,OAAA;AACf,qHAAA,cAAc,OAAA;AACd,0HAAA,mBAAmB,OAAA;AACnB,oHAAA,aAAa,OAAA;AACb,qHAAA,cAAc,OAAA;AACd,mHAAA,YAAY,OAAA;AACZ,mHAAA,YAAY,OAAA;AAGd,qDAAmC;AACnC,+DAA6C;AAE7C,8BAA8B;AAC9B,oEAAkD;AAElD,6EAA6E;AAE7E,4CAA4C;AAC5C,gDAA8B;AAE9B,+CAA+C;AAC/C,yDAAuC;AACvC,wDAAsC;AACtC,0DAAwC;AACxC,4DAA0C;AAC1C,2DAAyC;AACzC,4DAA0C;AAC1C,0DAAwC;AACxC,kEAAgD;AAChD,mEAAiD;AACjD,8DAA4C;AAC5C,0DAAwC;AACxC,4DAA0C;AAC1C,kEAAgD"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/shared-lib/errors/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,oCAAoC;AACpC,6DAU+B;AAT7B,yHAAA,kBAAkB,OAAA;AAClB,sHAAA,eAAe,OAAA;AACf,sHAAA,eAAe,OAAA;AACf,qHAAA,cAAc,OAAA;AACd,0HAAA,mBAAmB,OAAA;AACnB,oHAAA,aAAa,OAAA;AACb,qHAAA,cAAc,OAAA;AACd,mHAAA,YAAY,OAAA;AACZ,mHAAA,YAAY,OAAA;AAGd,qDAAmC;AACnC,+DAA6C;AAE7C,8BAA8B;AAC9B,oEAAkD;AAElD,6EAA6E;AAE7E,4CAA4C;AAC5C,gDAA8B;AAE9B,+CAA+C;AAC/C,yDAAuC;AACvC,wDAAsC;AACtC,0DAAwC;AACxC,4DAA0C;AAC1C,2DAAyC;AACzC,4DAA0C;AAC1C,0DAAwC;AACxC,kEAAgD;AAChD,mEAAiD;AACjD,8DAA4C;AAC5C,0DAAwC;AACxC,4DAA0C;AAC1C,kEAAgD;AAChD,2DAAyC"}
|
|
@@ -69,10 +69,20 @@ export interface BlockchainJWTPayload extends BasePersJWTPayload {
|
|
|
69
69
|
accountType?: AccountOwnerType;
|
|
70
70
|
permissions: string[];
|
|
71
71
|
}
|
|
72
|
-
export
|
|
72
|
+
export interface WebhookJWTPayload extends BasePersJWTPayload {
|
|
73
|
+
sub: string;
|
|
74
|
+
type: ApiKeyType.WEBHOOK_OUTBOUND_JWT;
|
|
75
|
+
tenantId: string;
|
|
76
|
+
webhookId: string;
|
|
77
|
+
targetUrl: string;
|
|
78
|
+
executionId: string;
|
|
79
|
+
callbackUrl: string;
|
|
80
|
+
}
|
|
81
|
+
export type PersJWTPayload = AuthJWTPayload | ActionableJWTPayload | BlockchainJWTPayload | WebhookJWTPayload;
|
|
73
82
|
export declare function isAuthPayload(payload: PersJWTPayload): payload is AuthJWTPayload;
|
|
74
83
|
export declare function isActionablePayload(payload: PersJWTPayload): payload is ActionableJWTPayload;
|
|
75
84
|
export declare function isBlockchainPayload(payload: PersJWTPayload): payload is BlockchainJWTPayload;
|
|
85
|
+
export declare function isWebhookPayload(payload: PersJWTPayload): payload is WebhookJWTPayload;
|
|
76
86
|
export declare function isPersJWTPayload(payload: any): payload is PersJWTPayload;
|
|
77
87
|
export {};
|
|
78
88
|
//# sourceMappingURL=jwt.payload.interface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jwt.payload.interface.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/interfaces/jwt.payload.interface.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"jwt.payload.interface.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/interfaces/jwt.payload.interface.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,13 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.isAuthPayload = isAuthPayload;
|
|
4
4
|
exports.isActionablePayload = isActionablePayload;
|
|
5
5
|
exports.isBlockchainPayload = isBlockchainPayload;
|
|
6
|
+
exports.isWebhookPayload = isWebhookPayload;
|
|
6
7
|
exports.isPersJWTPayload = isPersJWTPayload;
|
|
7
8
|
// ===========================================
|
|
8
9
|
// TYPE GUARDS & UTILITIES
|
|
9
10
|
// ===========================================
|
|
10
11
|
// PERS JWT type guards
|
|
11
12
|
function isAuthPayload(payload) {
|
|
12
|
-
return !('permissions' in payload) && !('transactionId' in payload);
|
|
13
|
+
return !('permissions' in payload) && !('transactionId' in payload) && !('webhookId' in payload);
|
|
13
14
|
}
|
|
14
15
|
function isActionablePayload(payload) {
|
|
15
16
|
return 'transactionId' in payload && !('permissions' in payload);
|
|
@@ -17,6 +18,9 @@ function isActionablePayload(payload) {
|
|
|
17
18
|
function isBlockchainPayload(payload) {
|
|
18
19
|
return 'permissions' in payload;
|
|
19
20
|
}
|
|
21
|
+
function isWebhookPayload(payload) {
|
|
22
|
+
return 'webhookId' in payload && 'targetUrl' in payload;
|
|
23
|
+
}
|
|
20
24
|
// Helper to identify PERS JWT payloads
|
|
21
25
|
function isPersJWTPayload(payload) {
|
|
22
26
|
return 'type' in payload && typeof payload.type === 'string';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jwt.payload.interface.js","sourceRoot":"","sources":["../../../../src/shared-lib/interfaces/jwt.payload.interface.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"jwt.payload.interface.js","sourceRoot":"","sources":["../../../../src/shared-lib/interfaces/jwt.payload.interface.ts"],"names":[],"mappings":";;AAgIA,sCAEC;AAED,kDAEC;AAED,kDAEC;AAED,4CAEC;AAGD,4CAEC;AAxBD,8CAA8C;AAC9C,0BAA0B;AAC1B,8CAA8C;AAE9C,uBAAuB;AACvB,SAAgB,aAAa,CAAC,OAAuB;IACjD,OAAO,CAAC,CAAC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,IAAI,OAAO,CAAC,CAAC;AACrG,CAAC;AAED,SAAgB,mBAAmB,CAAC,OAAuB;IACvD,OAAO,eAAe,IAAI,OAAO,IAAI,CAAC,CAAC,aAAa,IAAI,OAAO,CAAC,CAAC;AACrE,CAAC;AAED,SAAgB,mBAAmB,CAAC,OAAuB;IACvD,OAAO,aAAa,IAAI,OAAO,CAAC;AACpC,CAAC;AAED,SAAgB,gBAAgB,CAAC,OAAuB;IACpD,OAAO,WAAW,IAAI,OAAO,IAAI,WAAW,IAAI,OAAO,CAAC;AAC5D,CAAC;AAED,uCAAuC;AACvC,SAAgB,gBAAgB,CAAC,OAAY;IACzC,OAAO,MAAM,IAAI,OAAO,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC;AACjE,CAAC"}
|
|
@@ -19,6 +19,7 @@ export declare enum TokenStorageDataAttributesType {
|
|
|
19
19
|
TAGS = "tags",
|
|
20
20
|
VALIDITY_TYPE = "validity_type",
|
|
21
21
|
VALIDITY_DURATION = "validity_duration",
|
|
22
|
-
TIMESTAMP = "timestamp"
|
|
22
|
+
TIMESTAMP = "timestamp",
|
|
23
|
+
BUSINESS_IDS = "business_ids"
|
|
23
24
|
}
|
|
24
25
|
//# sourceMappingURL=token-storage-data.interface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-storage-data.interface.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/interfaces/token-storage-data.interface.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,yBAAyB,EAAE,CAAC;IACzC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,yBAAyB;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,oBAAY,8BAA8B;IACtC,WAAW,gBAAgB;IAC3B,uBAAuB,4BAA4B;IACnD,WAAW,gBAAgB;IAC3B,IAAI,SAAS;IACb,aAAa,kBAAkB;IAC/B,iBAAiB,sBAAsB;IACvC,SAAS,cAAc;
|
|
1
|
+
{"version":3,"file":"token-storage-data.interface.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/interfaces/token-storage-data.interface.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,yBAAyB,EAAE,CAAC;IACzC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,yBAAyB;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,oBAAY,8BAA8B;IACtC,WAAW,gBAAgB;IAC3B,uBAAuB,4BAA4B;IACnD,WAAW,gBAAgB;IAC3B,IAAI,SAAS;IACb,aAAa,kBAAkB;IAC/B,iBAAiB,sBAAsB;IACvC,SAAS,cAAc;IACvB,YAAY,iBAAiB;CAChC"}
|
|
@@ -10,5 +10,6 @@ var TokenStorageDataAttributesType;
|
|
|
10
10
|
TokenStorageDataAttributesType["VALIDITY_TYPE"] = "validity_type";
|
|
11
11
|
TokenStorageDataAttributesType["VALIDITY_DURATION"] = "validity_duration";
|
|
12
12
|
TokenStorageDataAttributesType["TIMESTAMP"] = "timestamp";
|
|
13
|
+
TokenStorageDataAttributesType["BUSINESS_IDS"] = "business_ids";
|
|
13
14
|
})(TokenStorageDataAttributesType || (exports.TokenStorageDataAttributesType = TokenStorageDataAttributesType = {}));
|
|
14
15
|
//# sourceMappingURL=token-storage-data.interface.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-storage-data.interface.js","sourceRoot":"","sources":["../../../../src/shared-lib/interfaces/token-storage-data.interface.ts"],"names":[],"mappings":";;;AAiBA,IAAY,
|
|
1
|
+
{"version":3,"file":"token-storage-data.interface.js","sourceRoot":"","sources":["../../../../src/shared-lib/interfaces/token-storage-data.interface.ts"],"names":[],"mappings":";;;AAiBA,IAAY,8BASX;AATD,WAAY,8BAA8B;IACtC,6DAA2B,CAAA;IAC3B,qFAAmD,CAAA;IACnD,6DAA2B,CAAA;IAC3B,+CAAa,CAAA;IACb,iEAA+B,CAAA;IAC/B,yEAAuC,CAAA;IACvC,yDAAuB,CAAA;IACvB,+DAA6B,CAAA;AACjC,CAAC,EATW,8BAA8B,8CAA9B,8BAA8B,QASzC"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import { BusinessNotFoundError, BusinessNotMinterError, CampaignNotFoundError, MembershipNotFoundError, MembershipAlreadyExistsError, MembershipLastOwnerError, GeographicRestrictionError, LocationVerificationRequiredError, RedemptionLimitReachedError, UserStatusRestrictedError } from '../../shared-lib/errors/domains/business-errors';
|
|
1
|
+
import { BusinessNotFoundError, BusinessNotMinterError, CampaignNotFoundError, MembershipNotFoundError, MembershipAlreadyExistsError, MembershipLastOwnerError, GeographicRestrictionError, LocationVerificationRequiredError, RedemptionLimitReachedError, RedemptionAlreadyProcessingError, UserStatusRestrictedError } from '../../shared-lib/errors/domains/business-errors';
|
|
2
2
|
import { UserNotFoundError } from '../../shared-lib/errors/domains/user-errors';
|
|
3
|
-
import { TokenNotFoundError, TokenNotActiveError, TokenIdRequiredError, TokenTypeNotFoundError, TokenUnitNotFoundError } from '../../shared-lib/errors/domains/token-errors';
|
|
3
|
+
import { TokenNotFoundError, TokenNotActiveError, TokenIdRequiredError, TokenTypeNotFoundError, TokenUnitNotFoundError, NftExpiredError, NftBusinessRestrictionError } from '../../shared-lib/errors/domains/token-errors';
|
|
4
4
|
import { TransactionNotFoundError, TransactionAlreadyCompletedError, TransactionNotPendingError, TransactionValidationError, UnexpectedValidationScenarioError, TransactionExpiredError } from '../../shared-lib/errors/domains/transaction-errors';
|
|
5
5
|
import { AuthenticationRequiredError, InvalidTokenError, TokenExpiredError, AuthorizationFailedError, MultipleContextSelectionRequiredError } from '../../shared-lib/errors/domains/authentication-errors';
|
|
6
6
|
import { InsufficientBalanceError } from '../../shared-lib/errors/domains/balance-errors';
|
|
7
7
|
import { InvalidInputError, RequiredFieldError, InvalidFormatError } from '../../shared-lib/errors/domains/validation-errors';
|
|
8
8
|
import { SystemError, ExternalServiceError, ConfigurationMissingError } from '../../shared-lib/errors/domains/system-errors';
|
|
9
9
|
import { TriggerSourceNotFoundError } from '../../shared-lib/errors/domains/trigger-source-errors';
|
|
10
|
+
import { WebhookNotFoundError, WebhookInactiveError, WebhookSourceNotAllowedError, WebhookSignatureInvalidError, WebhookForwardFailedError, WebhookTimeoutError, WebhookValidationError, WebhookBlockedError, WebhookMethodNotAllowedError, WebhookExecutionNotFoundError, WebhookCallbackRejectedError } from '../../shared-lib/errors/domains/webhook-errors';
|
|
10
11
|
import { SigningAccountValidationError, SigningAccountNotFoundError, SigningAccountAlreadyExistsError, KeyGenerationError } from '../../shared-lib/errors/domains/signing-account-errors';
|
|
11
12
|
import { WalletNotFoundError, WalletMissingSigningError, SmartWalletProcessingError } from '../../shared-lib/errors/domains/wallet-errors';
|
|
12
13
|
import { TenantNotFoundError } from '../../shared-lib/errors/domains/tenant-errors';
|
|
@@ -50,6 +51,7 @@ export declare const Errors: {
|
|
|
50
51
|
locationRequired: (resource?: string) => LocationVerificationRequiredError;
|
|
51
52
|
limitReached: (limitType: "max_redemption" | "user_limit") => RedemptionLimitReachedError;
|
|
52
53
|
userStatusRestricted: () => UserStatusRestrictedError;
|
|
54
|
+
redemptionAlreadyProcessing: (redeemId: string, status: string) => RedemptionAlreadyProcessingError;
|
|
53
55
|
invalidInput: (field: string, reason?: string) => InvalidInputError;
|
|
54
56
|
requiredField: (field: string) => RequiredFieldError;
|
|
55
57
|
invalidFormat: (field: string, format: string) => InvalidFormatError;
|
|
@@ -60,6 +62,8 @@ export declare const Errors: {
|
|
|
60
62
|
tokenNotActive: (id: string) => TokenNotActiveError;
|
|
61
63
|
tokenIdRequired: (type: string) => TokenIdRequiredError;
|
|
62
64
|
tokenTypeNotFound: (type: string) => TokenTypeNotFoundError;
|
|
65
|
+
nftExpired: (tokenId: string, expiryDate: Date) => NftExpiredError;
|
|
66
|
+
nftBusinessRestriction: (tokenId: string, engagedBusinessId: string) => NftBusinessRestrictionError;
|
|
63
67
|
transactionAlreadyCompleted: (id: string, status: string) => TransactionAlreadyCompletedError;
|
|
64
68
|
transactionNotPending: (id: string, status: string) => TransactionNotPendingError;
|
|
65
69
|
transactionValidation: (field: string, reason: string) => TransactionValidationError;
|
|
@@ -80,6 +84,17 @@ export declare const Errors: {
|
|
|
80
84
|
name?: string;
|
|
81
85
|
}>) => MultipleContextSelectionRequiredError;
|
|
82
86
|
unexpectedValidationScenario: (context: string) => UnexpectedValidationScenarioError;
|
|
87
|
+
webhookNotFound: (id: string) => WebhookNotFoundError;
|
|
88
|
+
webhookInactive: (id: string) => WebhookInactiveError;
|
|
89
|
+
webhookSourceNotAllowed: (id: string, callerType?: string) => WebhookSourceNotAllowedError;
|
|
90
|
+
webhookSignatureInvalid: (id: string, source?: string) => WebhookSignatureInvalidError;
|
|
91
|
+
webhookForwardFailed: (id: string, targetUrl: string, statusCode?: number) => WebhookForwardFailedError;
|
|
92
|
+
webhookTimeout: (id: string, timeoutMs: number) => WebhookTimeoutError;
|
|
93
|
+
webhookValidation: (field: string, reason: string) => WebhookValidationError;
|
|
94
|
+
webhookBlocked: (id: string) => WebhookBlockedError;
|
|
95
|
+
webhookMethodNotAllowed: (id: string, method: string) => WebhookMethodNotAllowedError;
|
|
96
|
+
webhookExecutionNotFound: (id: string) => WebhookExecutionNotFoundError;
|
|
97
|
+
webhookCallbackRejected: (id: string, reason: string) => WebhookCallbackRejectedError;
|
|
83
98
|
};
|
|
84
99
|
/**
|
|
85
100
|
* Advanced Error Builder for complex scenarios
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-factory.d.ts","sourceRoot":"","sources":["../../../../src/shared-patterns/errors/error-factory.ts"],"names":[],"mappings":"AACA,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,EACrB,uBAAuB,EACvB,4BAA4B,EAC5B,wBAAwB,EACxB,0BAA0B,EAC1B,iCAAiC,EACjC,2BAA2B,EAC3B,yBAAyB,EAC1B,MAAM,iDAAiD,CAAC;AACzD,OAAO,EACL,iBAAiB,EAClB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,
|
|
1
|
+
{"version":3,"file":"error-factory.d.ts","sourceRoot":"","sources":["../../../../src/shared-patterns/errors/error-factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ const balance_errors_1 = require("../../shared-lib/errors/domains/balance-errors
|
|
|
11
11
|
const validation_errors_1 = require("../../shared-lib/errors/domains/validation-errors");
|
|
12
12
|
const system_errors_1 = require("../../shared-lib/errors/domains/system-errors");
|
|
13
13
|
const trigger_source_errors_1 = require("../../shared-lib/errors/domains/trigger-source-errors");
|
|
14
|
+
const webhook_errors_1 = require("../../shared-lib/errors/domains/webhook-errors");
|
|
14
15
|
const signing_account_errors_1 = require("../../shared-lib/errors/domains/signing-account-errors");
|
|
15
16
|
const wallet_errors_1 = require("../../shared-lib/errors/domains/wallet-errors");
|
|
16
17
|
const tenant_errors_1 = require("../../shared-lib/errors/domains/tenant-errors");
|
|
@@ -143,6 +144,9 @@ class ErrorFactory {
|
|
|
143
144
|
static userStatusRestricted() {
|
|
144
145
|
return new business_errors_1.UserStatusRestrictedError();
|
|
145
146
|
}
|
|
147
|
+
static redemptionAlreadyProcessing(redeemId, status) {
|
|
148
|
+
return new business_errors_1.RedemptionAlreadyProcessingError(redeemId, status);
|
|
149
|
+
}
|
|
146
150
|
/**
|
|
147
151
|
* Validation patterns
|
|
148
152
|
*/
|
|
@@ -185,6 +189,12 @@ class ErrorFactory {
|
|
|
185
189
|
static tokenTypeNotFound(tokenType) {
|
|
186
190
|
return new token_errors_1.TokenTypeNotFoundError(tokenType);
|
|
187
191
|
}
|
|
192
|
+
static nftExpired(tokenId, expiryDate) {
|
|
193
|
+
return new token_errors_1.NftExpiredError(tokenId, expiryDate);
|
|
194
|
+
}
|
|
195
|
+
static nftBusinessRestriction(tokenId, engagedBusinessId) {
|
|
196
|
+
return new token_errors_1.NftBusinessRestrictionError(tokenId, engagedBusinessId);
|
|
197
|
+
}
|
|
188
198
|
/**
|
|
189
199
|
* Transaction-specific patterns
|
|
190
200
|
*/
|
|
@@ -258,6 +268,42 @@ class ErrorFactory {
|
|
|
258
268
|
static unexpectedValidationScenario(context) {
|
|
259
269
|
return new transaction_errors_1.UnexpectedValidationScenarioError(context);
|
|
260
270
|
}
|
|
271
|
+
/**
|
|
272
|
+
* Webhook patterns
|
|
273
|
+
*/
|
|
274
|
+
static webhookNotFound(webhookId) {
|
|
275
|
+
return new webhook_errors_1.WebhookNotFoundError(webhookId);
|
|
276
|
+
}
|
|
277
|
+
static webhookInactive(webhookId) {
|
|
278
|
+
return new webhook_errors_1.WebhookInactiveError(webhookId);
|
|
279
|
+
}
|
|
280
|
+
static webhookSourceNotAllowed(webhookId, callerType) {
|
|
281
|
+
return new webhook_errors_1.WebhookSourceNotAllowedError(webhookId, callerType);
|
|
282
|
+
}
|
|
283
|
+
static webhookSignatureInvalid(webhookId, source) {
|
|
284
|
+
return new webhook_errors_1.WebhookSignatureInvalidError(webhookId, source);
|
|
285
|
+
}
|
|
286
|
+
static webhookForwardFailed(webhookId, targetUrl, statusCode) {
|
|
287
|
+
return new webhook_errors_1.WebhookForwardFailedError(webhookId, targetUrl, statusCode);
|
|
288
|
+
}
|
|
289
|
+
static webhookTimeout(webhookId, timeoutMs) {
|
|
290
|
+
return new webhook_errors_1.WebhookTimeoutError(webhookId, timeoutMs);
|
|
291
|
+
}
|
|
292
|
+
static webhookValidation(field, reason) {
|
|
293
|
+
return new webhook_errors_1.WebhookValidationError(field, reason);
|
|
294
|
+
}
|
|
295
|
+
static webhookBlocked(webhookId) {
|
|
296
|
+
return new webhook_errors_1.WebhookBlockedError(webhookId);
|
|
297
|
+
}
|
|
298
|
+
static webhookMethodNotAllowed(webhookId, method) {
|
|
299
|
+
return new webhook_errors_1.WebhookMethodNotAllowedError(webhookId, method);
|
|
300
|
+
}
|
|
301
|
+
static webhookExecutionNotFound(executionId) {
|
|
302
|
+
return new webhook_errors_1.WebhookExecutionNotFoundError(executionId);
|
|
303
|
+
}
|
|
304
|
+
static webhookCallbackRejected(executionId, reason) {
|
|
305
|
+
return new webhook_errors_1.WebhookCallbackRejectedError(executionId, reason);
|
|
306
|
+
}
|
|
261
307
|
}
|
|
262
308
|
/**
|
|
263
309
|
* Convenient shortcut object for the most commonly used error patterns
|
|
@@ -302,6 +348,7 @@ exports.Errors = {
|
|
|
302
348
|
locationRequired: (resource) => ErrorFactory.locationRequired(resource),
|
|
303
349
|
limitReached: (limitType) => ErrorFactory.limitReached(limitType),
|
|
304
350
|
userStatusRestricted: () => ErrorFactory.userStatusRestricted(),
|
|
351
|
+
redemptionAlreadyProcessing: (redeemId, status) => ErrorFactory.redemptionAlreadyProcessing(redeemId, status),
|
|
305
352
|
// Validation
|
|
306
353
|
invalidInput: (field, reason) => ErrorFactory.invalidInput(field, reason),
|
|
307
354
|
requiredField: (field) => ErrorFactory.requiredField(field),
|
|
@@ -316,6 +363,8 @@ exports.Errors = {
|
|
|
316
363
|
tokenNotActive: (id) => ErrorFactory.tokenNotActive(id),
|
|
317
364
|
tokenIdRequired: (type) => ErrorFactory.tokenIdRequired(type),
|
|
318
365
|
tokenTypeNotFound: (type) => ErrorFactory.tokenTypeNotFound(type),
|
|
366
|
+
nftExpired: (tokenId, expiryDate) => ErrorFactory.nftExpired(tokenId, expiryDate),
|
|
367
|
+
nftBusinessRestriction: (tokenId, engagedBusinessId) => ErrorFactory.nftBusinessRestriction(tokenId, engagedBusinessId),
|
|
319
368
|
// Transaction specific
|
|
320
369
|
transactionAlreadyCompleted: (id, status) => ErrorFactory.transactionAlreadyCompleted(id, status),
|
|
321
370
|
transactionNotPending: (id, status) => ErrorFactory.transactionNotPending(id, status),
|
|
@@ -339,7 +388,19 @@ exports.Errors = {
|
|
|
339
388
|
// Context selection
|
|
340
389
|
multipleContextSelectionRequired: (contextType, options) => ErrorFactory.multipleContextSelectionRequired(contextType, options),
|
|
341
390
|
// Validation
|
|
342
|
-
unexpectedValidationScenario: (context) => ErrorFactory.unexpectedValidationScenario(context)
|
|
391
|
+
unexpectedValidationScenario: (context) => ErrorFactory.unexpectedValidationScenario(context),
|
|
392
|
+
// Webhook
|
|
393
|
+
webhookNotFound: (id) => ErrorFactory.webhookNotFound(id),
|
|
394
|
+
webhookInactive: (id) => ErrorFactory.webhookInactive(id),
|
|
395
|
+
webhookSourceNotAllowed: (id, callerType) => ErrorFactory.webhookSourceNotAllowed(id, callerType),
|
|
396
|
+
webhookSignatureInvalid: (id, source) => ErrorFactory.webhookSignatureInvalid(id, source),
|
|
397
|
+
webhookForwardFailed: (id, targetUrl, statusCode) => ErrorFactory.webhookForwardFailed(id, targetUrl, statusCode),
|
|
398
|
+
webhookTimeout: (id, timeoutMs) => ErrorFactory.webhookTimeout(id, timeoutMs),
|
|
399
|
+
webhookValidation: (field, reason) => ErrorFactory.webhookValidation(field, reason),
|
|
400
|
+
webhookBlocked: (id) => ErrorFactory.webhookBlocked(id),
|
|
401
|
+
webhookMethodNotAllowed: (id, method) => ErrorFactory.webhookMethodNotAllowed(id, method),
|
|
402
|
+
webhookExecutionNotFound: (id) => ErrorFactory.webhookExecutionNotFound(id),
|
|
403
|
+
webhookCallbackRejected: (id, reason) => ErrorFactory.webhookCallbackRejected(id, reason),
|
|
343
404
|
};
|
|
344
405
|
/**
|
|
345
406
|
* Advanced Error Builder for complex scenarios
|