@explorins/pers-shared 2.1.35 → 2.1.36
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/auth.dto.d.ts +1 -2
- package/dist/cjs/shared-lib/dto/auth.dto.d.ts.map +1 -1
- package/dist/cjs/shared-lib/dto/auth.dto.js +1 -10
- package/dist/cjs/shared-lib/dto/auth.dto.js.map +1 -1
- package/dist/cjs/shared-lib/errors/base/error-classification-enums.d.ts +157 -1
- package/dist/cjs/shared-lib/errors/base/error-classification-enums.d.ts.map +1 -1
- package/dist/cjs/shared-lib/errors/base/error-classification-enums.js +20 -1
- package/dist/cjs/shared-lib/errors/base/error-classification-enums.js.map +1 -1
- package/dist/cjs/shared-lib/errors/base-business-error.d.ts +56 -2
- package/dist/cjs/shared-lib/errors/base-business-error.d.ts.map +1 -1
- package/dist/cjs/shared-lib/errors/base-business-error.js +110 -11
- package/dist/cjs/shared-lib/errors/base-business-error.js.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/authentication-errors.d.ts +7 -7
- package/dist/cjs/shared-lib/errors/domains/authentication-errors.d.ts.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/authentication-errors.js +6 -6
- package/dist/cjs/shared-lib/errors/domains/authentication-errors.js.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/balance-errors.d.ts +2 -2
- package/dist/cjs/shared-lib/errors/domains/balance-errors.d.ts.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/balance-errors.js +2 -2
- package/dist/cjs/shared-lib/errors/domains/balance-errors.js.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/business-errors.d.ts +24 -3
- package/dist/cjs/shared-lib/errors/domains/business-errors.d.ts.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/business-errors.js +42 -3
- package/dist/cjs/shared-lib/errors/domains/business-errors.js.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/contract-errors.d.ts +2 -2
- package/dist/cjs/shared-lib/errors/domains/contract-errors.d.ts.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/contract-errors.js +1 -1
- package/dist/cjs/shared-lib/errors/domains/contract-errors.js.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/signing-account-errors.d.ts +7 -7
- package/dist/cjs/shared-lib/errors/domains/signing-account-errors.d.ts.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/signing-account-errors.js +12 -10
- package/dist/cjs/shared-lib/errors/domains/signing-account-errors.js.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/system-errors.d.ts +7 -4
- package/dist/cjs/shared-lib/errors/domains/system-errors.d.ts.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/system-errors.js +13 -6
- package/dist/cjs/shared-lib/errors/domains/system-errors.js.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/token-errors.d.ts +10 -4
- 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 -5
- package/dist/cjs/shared-lib/errors/domains/token-errors.js.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/transaction-errors.d.ts +8 -5
- package/dist/cjs/shared-lib/errors/domains/transaction-errors.d.ts.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/transaction-errors.js +14 -7
- package/dist/cjs/shared-lib/errors/domains/transaction-errors.js.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/user-errors.d.ts +2 -2
- package/dist/cjs/shared-lib/errors/domains/user-errors.d.ts.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/user-errors.js +1 -1
- package/dist/cjs/shared-lib/errors/domains/user-errors.js.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/validation-errors.d.ts +4 -4
- package/dist/cjs/shared-lib/errors/domains/validation-errors.d.ts.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/validation-errors.js +6 -7
- package/dist/cjs/shared-lib/errors/domains/validation-errors.js.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/wallet-errors.d.ts +4 -4
- package/dist/cjs/shared-lib/errors/domains/wallet-errors.d.ts.map +1 -1
- package/dist/cjs/shared-lib/errors/domains/wallet-errors.js +5 -4
- package/dist/cjs/shared-lib/errors/domains/wallet-errors.js.map +1 -1
- package/dist/cjs/shared-lib/errors/index.d.ts +1 -1
- package/dist/cjs/shared-lib/errors/index.d.ts.map +1 -1
- package/dist/cjs/shared-lib/errors/index.js +9 -1
- package/dist/cjs/shared-lib/errors/index.js.map +1 -1
- package/dist/esm/shared-lib/dto/auth.dto.d.ts +1 -2
- package/dist/esm/shared-lib/dto/auth.dto.d.ts.map +1 -1
- package/dist/esm/shared-lib/dto/auth.dto.js +1 -9
- package/dist/esm/shared-lib/dto/auth.dto.js.map +1 -1
- package/dist/esm/shared-lib/errors/base/error-classification-enums.d.ts +157 -1
- package/dist/esm/shared-lib/errors/base/error-classification-enums.d.ts.map +1 -1
- package/dist/esm/shared-lib/errors/base/error-classification-enums.js +11 -0
- package/dist/esm/shared-lib/errors/base/error-classification-enums.js.map +1 -1
- package/dist/esm/shared-lib/errors/base-business-error.d.ts +56 -2
- package/dist/esm/shared-lib/errors/base-business-error.d.ts.map +1 -1
- package/dist/esm/shared-lib/errors/base-business-error.js +101 -10
- package/dist/esm/shared-lib/errors/base-business-error.js.map +1 -1
- package/dist/esm/shared-lib/errors/domains/authentication-errors.d.ts +7 -7
- package/dist/esm/shared-lib/errors/domains/authentication-errors.d.ts.map +1 -1
- package/dist/esm/shared-lib/errors/domains/authentication-errors.js +7 -7
- package/dist/esm/shared-lib/errors/domains/authentication-errors.js.map +1 -1
- package/dist/esm/shared-lib/errors/domains/balance-errors.d.ts +2 -2
- package/dist/esm/shared-lib/errors/domains/balance-errors.d.ts.map +1 -1
- package/dist/esm/shared-lib/errors/domains/balance-errors.js +3 -3
- package/dist/esm/shared-lib/errors/domains/balance-errors.js.map +1 -1
- package/dist/esm/shared-lib/errors/domains/business-errors.d.ts +24 -3
- package/dist/esm/shared-lib/errors/domains/business-errors.d.ts.map +1 -1
- package/dist/esm/shared-lib/errors/domains/business-errors.js +37 -3
- package/dist/esm/shared-lib/errors/domains/business-errors.js.map +1 -1
- package/dist/esm/shared-lib/errors/domains/contract-errors.d.ts +2 -2
- package/dist/esm/shared-lib/errors/domains/contract-errors.d.ts.map +1 -1
- package/dist/esm/shared-lib/errors/domains/contract-errors.js +2 -2
- package/dist/esm/shared-lib/errors/domains/contract-errors.js.map +1 -1
- package/dist/esm/shared-lib/errors/domains/signing-account-errors.d.ts +7 -7
- package/dist/esm/shared-lib/errors/domains/signing-account-errors.d.ts.map +1 -1
- package/dist/esm/shared-lib/errors/domains/signing-account-errors.js +13 -11
- package/dist/esm/shared-lib/errors/domains/signing-account-errors.js.map +1 -1
- package/dist/esm/shared-lib/errors/domains/system-errors.d.ts +7 -4
- package/dist/esm/shared-lib/errors/domains/system-errors.d.ts.map +1 -1
- package/dist/esm/shared-lib/errors/domains/system-errors.js +12 -6
- package/dist/esm/shared-lib/errors/domains/system-errors.js.map +1 -1
- package/dist/esm/shared-lib/errors/domains/token-errors.d.ts +10 -4
- package/dist/esm/shared-lib/errors/domains/token-errors.d.ts.map +1 -1
- package/dist/esm/shared-lib/errors/domains/token-errors.js +17 -5
- package/dist/esm/shared-lib/errors/domains/token-errors.js.map +1 -1
- package/dist/esm/shared-lib/errors/domains/transaction-errors.d.ts +8 -5
- package/dist/esm/shared-lib/errors/domains/transaction-errors.d.ts.map +1 -1
- package/dist/esm/shared-lib/errors/domains/transaction-errors.js +13 -7
- package/dist/esm/shared-lib/errors/domains/transaction-errors.js.map +1 -1
- package/dist/esm/shared-lib/errors/domains/user-errors.d.ts +2 -2
- package/dist/esm/shared-lib/errors/domains/user-errors.d.ts.map +1 -1
- package/dist/esm/shared-lib/errors/domains/user-errors.js +2 -2
- package/dist/esm/shared-lib/errors/domains/user-errors.js.map +1 -1
- package/dist/esm/shared-lib/errors/domains/validation-errors.d.ts +4 -4
- package/dist/esm/shared-lib/errors/domains/validation-errors.d.ts.map +1 -1
- package/dist/esm/shared-lib/errors/domains/validation-errors.js +7 -8
- package/dist/esm/shared-lib/errors/domains/validation-errors.js.map +1 -1
- package/dist/esm/shared-lib/errors/domains/wallet-errors.d.ts +4 -4
- package/dist/esm/shared-lib/errors/domains/wallet-errors.d.ts.map +1 -1
- package/dist/esm/shared-lib/errors/domains/wallet-errors.js +6 -5
- package/dist/esm/shared-lib/errors/domains/wallet-errors.js.map +1 -1
- package/dist/esm/shared-lib/errors/index.d.ts +1 -1
- package/dist/esm/shared-lib/errors/index.d.ts.map +1 -1
- package/dist/esm/shared-lib/errors/index.js +1 -1
- package/dist/esm/shared-lib/errors/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ValidationError } from '../base-business-error';
|
|
2
2
|
/**
|
|
3
3
|
* Generic validation errors used across multiple domains
|
|
4
4
|
*/
|
|
5
|
-
export declare class InvalidInputError extends
|
|
5
|
+
export declare class InvalidInputError extends ValidationError {
|
|
6
6
|
constructor(field: string, reason?: string);
|
|
7
7
|
}
|
|
8
|
-
export declare class RequiredFieldError extends
|
|
8
|
+
export declare class RequiredFieldError extends ValidationError {
|
|
9
9
|
constructor(field: string);
|
|
10
10
|
}
|
|
11
|
-
export declare class InvalidFormatError extends
|
|
11
|
+
export declare class InvalidFormatError extends ValidationError {
|
|
12
12
|
constructor(field: string, expectedFormat: string);
|
|
13
13
|
}
|
|
14
14
|
//# sourceMappingURL=validation-errors.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation-errors.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/errors/domains/validation-errors.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"validation-errors.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/errors/domains/validation-errors.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG7E;;GAEG;AAEH,qBAAa,iBAAkB,SAAQ,eAAe;gBACxC,KAAK,EAAE,MAAM,EAAE,MAAM,GAAE,MAAiC;CAUrE;AAED,qBAAa,kBAAmB,SAAQ,eAAe;gBACzC,KAAK,EAAE,MAAM;CAU1B;AAED,qBAAa,kBAAmB,SAAQ,eAAe;gBACzC,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM;CAUlD"}
|
|
@@ -1,27 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.InvalidFormatError = exports.RequiredFieldError = exports.InvalidInputError = void 0;
|
|
4
|
-
const common_1 = require("@nestjs/common");
|
|
5
4
|
const base_business_error_1 = require("../base-business-error");
|
|
6
5
|
const error_codes_1 = require("../error-codes");
|
|
7
6
|
/**
|
|
8
7
|
* Generic validation errors used across multiple domains
|
|
9
8
|
*/
|
|
10
|
-
class InvalidInputError extends base_business_error_1.
|
|
9
|
+
class InvalidInputError extends base_business_error_1.ValidationError {
|
|
11
10
|
constructor(field, reason = 'Invalid input provided') {
|
|
12
|
-
super(error_codes_1.CommonErrorCodes.VALIDATION_ERROR, error_codes_1.ErrorDomains.VALIDATION, `Validation failed: ${reason}`, `Field '${field}' validation failed: ${reason}`,
|
|
11
|
+
super(error_codes_1.CommonErrorCodes.VALIDATION_ERROR, error_codes_1.ErrorDomains.VALIDATION, `Validation failed: ${reason}`, `Field '${field}' validation failed: ${reason}`, field, 'Please check your input and try again');
|
|
13
12
|
}
|
|
14
13
|
}
|
|
15
14
|
exports.InvalidInputError = InvalidInputError;
|
|
16
|
-
class RequiredFieldError extends base_business_error_1.
|
|
15
|
+
class RequiredFieldError extends base_business_error_1.ValidationError {
|
|
17
16
|
constructor(field) {
|
|
18
|
-
super(error_codes_1.CommonErrorCodes.VALIDATION_ERROR, error_codes_1.ErrorDomains.VALIDATION, 'Required field missing', `Required field '${field}' is missing or empty`,
|
|
17
|
+
super(error_codes_1.CommonErrorCodes.VALIDATION_ERROR, error_codes_1.ErrorDomains.VALIDATION, 'Required field missing', `Required field '${field}' is missing or empty`, field, `Please provide a value for '${field}'`);
|
|
19
18
|
}
|
|
20
19
|
}
|
|
21
20
|
exports.RequiredFieldError = RequiredFieldError;
|
|
22
|
-
class InvalidFormatError extends base_business_error_1.
|
|
21
|
+
class InvalidFormatError extends base_business_error_1.ValidationError {
|
|
23
22
|
constructor(field, expectedFormat) {
|
|
24
|
-
super(error_codes_1.CommonErrorCodes.VALIDATION_ERROR, error_codes_1.ErrorDomains.VALIDATION, 'Invalid format', `Field '${field}' has invalid format. Expected: ${expectedFormat}`,
|
|
23
|
+
super(error_codes_1.CommonErrorCodes.VALIDATION_ERROR, error_codes_1.ErrorDomains.VALIDATION, 'Invalid format', `Field '${field}' has invalid format. Expected: ${expectedFormat}`, field, `Please provide '${field}' in the correct format: ${expectedFormat}`);
|
|
25
24
|
}
|
|
26
25
|
}
|
|
27
26
|
exports.InvalidFormatError = InvalidFormatError;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation-errors.js","sourceRoot":"","sources":["../../../../../src/shared-lib/errors/domains/validation-errors.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"validation-errors.js","sourceRoot":"","sources":["../../../../../src/shared-lib/errors/domains/validation-errors.ts"],"names":[],"mappings":";;;AACA,gEAA6E;AAC7E,gDAAgE;AAEhE;;GAEG;AAEH,MAAa,iBAAkB,SAAQ,qCAAe;IACpD,YAAY,KAAa,EAAE,SAAiB,wBAAwB;QAClE,KAAK,CACH,8BAAgB,CAAC,gBAAgB,EACjC,0BAAY,CAAC,UAAU,EACvB,sBAAsB,MAAM,EAAE,EAC9B,UAAU,KAAK,wBAAwB,MAAM,EAAE,EAC/C,KAAK,EACL,uCAAuC,CACxC,CAAC;IACJ,CAAC;CACF;AAXD,8CAWC;AAED,MAAa,kBAAmB,SAAQ,qCAAe;IACrD,YAAY,KAAa;QACvB,KAAK,CACH,8BAAgB,CAAC,gBAAgB,EACjC,0BAAY,CAAC,UAAU,EACvB,wBAAwB,EACxB,mBAAmB,KAAK,uBAAuB,EAC/C,KAAK,EACL,+BAA+B,KAAK,GAAG,CACxC,CAAC;IACJ,CAAC;CACF;AAXD,gDAWC;AAED,MAAa,kBAAmB,SAAQ,qCAAe;IACrD,YAAY,KAAa,EAAE,cAAsB;QAC/C,KAAK,CACH,8BAAgB,CAAC,gBAAgB,EACjC,0BAAY,CAAC,UAAU,EACvB,gBAAgB,EAChB,UAAU,KAAK,mCAAmC,cAAc,EAAE,EAClE,KAAK,EACL,mBAAmB,KAAK,4BAA4B,cAAc,EAAE,CACrE,CAAC;IACJ,CAAC;CACF;AAXD,gDAWC"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { DomainRuleError, TechnicalError } from '../base-business-error';
|
|
2
2
|
/**
|
|
3
3
|
* Wallet domain business errors
|
|
4
4
|
*/
|
|
5
|
-
export declare class WalletMissingSigningError extends
|
|
5
|
+
export declare class WalletMissingSigningError extends DomainRuleError {
|
|
6
6
|
constructor(walletAddress: string, reason: string);
|
|
7
7
|
}
|
|
8
8
|
export declare function isWalletMissingSigningError(error: any): boolean;
|
|
9
|
-
export declare class WalletNotFoundError extends
|
|
9
|
+
export declare class WalletNotFoundError extends DomainRuleError {
|
|
10
10
|
constructor(ownerAddress: string);
|
|
11
11
|
}
|
|
12
|
-
export declare class SmartWalletProcessingError extends
|
|
12
|
+
export declare class SmartWalletProcessingError extends TechnicalError {
|
|
13
13
|
constructor(reason: string);
|
|
14
14
|
}
|
|
15
15
|
//# sourceMappingURL=wallet-errors.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet-errors.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/errors/domains/wallet-errors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"wallet-errors.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/errors/domains/wallet-errors.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,eAAe,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG7F;;GAEG;AAEH,qBAAa,yBAA0B,SAAQ,eAAe;gBAChD,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAUlD;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAG7D;AAEH,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,YAAY,EAAE,MAAM;CAUjC;AAED,qBAAa,0BAA2B,SAAQ,cAAc;gBAChD,MAAM,EAAE,MAAM;CAW3B"}
|
|
@@ -8,7 +8,7 @@ const error_codes_1 = require("../error-codes");
|
|
|
8
8
|
/**
|
|
9
9
|
* Wallet domain business errors
|
|
10
10
|
*/
|
|
11
|
-
class WalletMissingSigningError extends base_business_error_1.
|
|
11
|
+
class WalletMissingSigningError extends base_business_error_1.DomainRuleError {
|
|
12
12
|
constructor(walletAddress, reason) {
|
|
13
13
|
super(error_codes_1.CommonErrorCodes.WALLET_MISSING_SIGNING, error_codes_1.ErrorDomains.WALLET, 'Wallet requires signing account setup', `Wallet ${walletAddress} missing signing: ${reason}`, common_1.HttpStatus.UNPROCESSABLE_ENTITY, 'Please set up signing account for this wallet');
|
|
14
14
|
}
|
|
@@ -18,15 +18,16 @@ function isWalletMissingSigningError(error) {
|
|
|
18
18
|
return error?.errorCode === 'WALLET_MISSING_SIGNING' ||
|
|
19
19
|
error?.response?.code === 'WALLET_MISSING_SIGNING';
|
|
20
20
|
}
|
|
21
|
-
class WalletNotFoundError extends base_business_error_1.
|
|
21
|
+
class WalletNotFoundError extends base_business_error_1.DomainRuleError {
|
|
22
22
|
constructor(ownerAddress) {
|
|
23
23
|
super(error_codes_1.CommonErrorCodes.WALLET_NOT_FOUND, error_codes_1.ErrorDomains.WALLET, 'No wallet found for this address', `No wallet found for owner address: ${ownerAddress}`, common_1.HttpStatus.NOT_FOUND, 'Please create a wallet first');
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
26
|
exports.WalletNotFoundError = WalletNotFoundError;
|
|
27
|
-
class SmartWalletProcessingError extends base_business_error_1.
|
|
27
|
+
class SmartWalletProcessingError extends base_business_error_1.TechnicalError {
|
|
28
28
|
constructor(reason) {
|
|
29
|
-
super(error_codes_1.CommonErrorCodes.SMART_WALLET_PROCESSING_FAILED, error_codes_1.ErrorDomains.WALLET, 'Smart wallet transaction processing failed', `Smart wallet processing failed: ${reason}`, common_1.HttpStatus.UNPROCESSABLE_ENTITY, 'Please try with a standard wallet transaction'
|
|
29
|
+
super(error_codes_1.CommonErrorCodes.SMART_WALLET_PROCESSING_FAILED, error_codes_1.ErrorDomains.WALLET, 'Smart wallet transaction processing failed', `Smart wallet processing failed: ${reason}`, common_1.HttpStatus.UNPROCESSABLE_ENTITY, 'Please try with a standard wallet transaction', true // retryable
|
|
30
|
+
);
|
|
30
31
|
}
|
|
31
32
|
}
|
|
32
33
|
exports.SmartWalletProcessingError = SmartWalletProcessingError;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet-errors.js","sourceRoot":"","sources":["../../../../../src/shared-lib/errors/domains/wallet-errors.ts"],"names":[],"mappings":";;;AAqBA,kEAGG;AAxBH,2CAA4C;AAC5C,
|
|
1
|
+
{"version":3,"file":"wallet-errors.js","sourceRoot":"","sources":["../../../../../src/shared-lib/errors/domains/wallet-errors.ts"],"names":[],"mappings":";;;AAqBA,kEAGG;AAxBH,2CAA4C;AAC5C,gEAA6F;AAC7F,gDAAgE;AAEhE;;GAEG;AAEH,MAAa,yBAA0B,SAAQ,qCAAe;IAC5D,YAAY,aAAqB,EAAE,MAAc;QAC/C,KAAK,CACH,8BAAgB,CAAC,sBAAsB,EACvC,0BAAY,CAAC,MAAM,EACnB,uCAAuC,EACvC,UAAU,aAAa,qBAAqB,MAAM,EAAE,EACpD,mBAAU,CAAC,oBAAoB,EAC/B,+CAA+C,CAChD,CAAC;IACJ,CAAC;CACF;AAXD,8DAWC;AAED,SAAgB,2BAA2B,CAAC,KAAU;IAClD,OAAO,KAAK,EAAE,SAAS,KAAK,wBAAwB;QAC9C,KAAK,EAAE,QAAQ,EAAE,IAAI,KAAK,wBAAwB,CAAC;AAC3D,CAAC;AAEH,MAAa,mBAAoB,SAAQ,qCAAe;IACtD,YAAY,YAAoB;QAC9B,KAAK,CACH,8BAAgB,CAAC,gBAAgB,EACjC,0BAAY,CAAC,MAAM,EACnB,kCAAkC,EAClC,sCAAsC,YAAY,EAAE,EACpD,mBAAU,CAAC,SAAS,EACpB,8BAA8B,CAC/B,CAAC;IACJ,CAAC;CACF;AAXD,kDAWC;AAED,MAAa,0BAA2B,SAAQ,oCAAc;IAC5D,YAAY,MAAc;QACxB,KAAK,CACH,8BAAgB,CAAC,8BAA8B,EAC/C,0BAAY,CAAC,MAAM,EACnB,4CAA4C,EAC5C,mCAAmC,MAAM,EAAE,EAC3C,mBAAU,CAAC,oBAAoB,EAC/B,+CAA+C,EAC/C,IAAI,CAAC,YAAY;SAClB,CAAC;IACJ,CAAC;CACF;AAZD,gEAYC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { BusinessLogicError } from './base-business-error';
|
|
1
|
+
export { BusinessLogicError, ValidationError, DomainRuleError, TechnicalError, InfrastructureError, SecurityError, RateLimitError, TimeoutError, UnknownError } from './base-business-error';
|
|
2
2
|
export * from './technical-errors';
|
|
3
3
|
export * from './domains/transaction-errors';
|
|
4
4
|
export * from './base/error-classification-enums';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/errors/index.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
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"}
|
|
@@ -14,10 +14,18 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.BusinessLogicError = void 0;
|
|
17
|
+
exports.UnknownError = exports.TimeoutError = exports.RateLimitError = exports.SecurityError = exports.InfrastructureError = exports.TechnicalError = exports.DomainRuleError = exports.ValidationError = exports.BusinessLogicError = void 0;
|
|
18
18
|
// Base error classes and interfaces
|
|
19
19
|
var base_business_error_1 = require("./base-business-error");
|
|
20
20
|
Object.defineProperty(exports, "BusinessLogicError", { enumerable: true, get: function () { return base_business_error_1.BusinessLogicError; } });
|
|
21
|
+
Object.defineProperty(exports, "ValidationError", { enumerable: true, get: function () { return base_business_error_1.ValidationError; } });
|
|
22
|
+
Object.defineProperty(exports, "DomainRuleError", { enumerable: true, get: function () { return base_business_error_1.DomainRuleError; } });
|
|
23
|
+
Object.defineProperty(exports, "TechnicalError", { enumerable: true, get: function () { return base_business_error_1.TechnicalError; } });
|
|
24
|
+
Object.defineProperty(exports, "InfrastructureError", { enumerable: true, get: function () { return base_business_error_1.InfrastructureError; } });
|
|
25
|
+
Object.defineProperty(exports, "SecurityError", { enumerable: true, get: function () { return base_business_error_1.SecurityError; } });
|
|
26
|
+
Object.defineProperty(exports, "RateLimitError", { enumerable: true, get: function () { return base_business_error_1.RateLimitError; } });
|
|
27
|
+
Object.defineProperty(exports, "TimeoutError", { enumerable: true, get: function () { return base_business_error_1.TimeoutError; } });
|
|
28
|
+
Object.defineProperty(exports, "UnknownError", { enumerable: true, get: function () { return base_business_error_1.UnknownError; } });
|
|
21
29
|
__exportStar(require("./technical-errors"), exports);
|
|
22
30
|
__exportStar(require("./domains/transaction-errors"), exports);
|
|
23
31
|
// Error classification system
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/shared-lib/errors/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,oCAAoC;AACpC,
|
|
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"}
|
|
@@ -9,9 +9,8 @@ export declare class SessionAuthRequestDTO {
|
|
|
9
9
|
export declare class RefreshTokenRequestDTO {
|
|
10
10
|
refreshToken: string;
|
|
11
11
|
}
|
|
12
|
-
export declare class SessionAuthResponseDTO {
|
|
12
|
+
export declare class SessionAuthResponseDTO extends RefreshTokenRequestDTO {
|
|
13
13
|
accessToken: string;
|
|
14
|
-
refreshToken: string;
|
|
15
14
|
}
|
|
16
15
|
export declare class SessionAuthContextResponseDTO extends SessionAuthResponseDTO {
|
|
17
16
|
admin?: AdminDTO;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.dto.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/dto/auth.dto.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAG,WAAW,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,qBAAa,qBAAqB;IAQ9B,SAAS,EAAE,MAAM,CAAM;IAQvB,QAAQ,CAAC,EAAE,gBAAgB,CAAyB;CACvD;AAGD,qBAAa,sBAAsB;IAO/B,YAAY,EAAE,MAAM,CAAM;CAC7B;AAGD,qBAAa,sBAAsB;
|
|
1
|
+
{"version":3,"file":"auth.dto.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/dto/auth.dto.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAG,WAAW,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,qBAAa,qBAAqB;IAQ9B,SAAS,EAAE,MAAM,CAAM;IAQvB,QAAQ,CAAC,EAAE,gBAAgB,CAAyB;CACvD;AAGD,qBAAa,sBAAsB;IAO/B,YAAY,EAAE,MAAM,CAAM;CAC7B;AAGD,qBAAa,sBAAuB,SAAQ,sBAAsB;IAQ9D,WAAW,EAAE,MAAM,CAAM;CAUxB;AAEL,qBAAa,6BAA8B,SAAQ,sBAAsB;IAKrE,KAAK,CAAC,EAAE,QAAQ,CAAC;IAMjB,IAAI,CAAC,EAAE,OAAO,CAAC;IAMf,QAAQ,CAAC,EAAE,WAAW,CAAC;IAQvB,QAAQ,EAAE,gBAAgB,CAAyB;CACtD"}
|
|
@@ -43,9 +43,8 @@ __decorate([
|
|
|
43
43
|
IsNotEmpty(),
|
|
44
44
|
IsString()
|
|
45
45
|
], RefreshTokenRequestDTO.prototype, "refreshToken", void 0);
|
|
46
|
-
export class SessionAuthResponseDTO {
|
|
46
|
+
export class SessionAuthResponseDTO extends RefreshTokenRequestDTO {
|
|
47
47
|
accessToken = '';
|
|
48
|
-
refreshToken = '';
|
|
49
48
|
}
|
|
50
49
|
__decorate([
|
|
51
50
|
ApiProperty({
|
|
@@ -54,13 +53,6 @@ __decorate([
|
|
|
54
53
|
IsNotEmpty(),
|
|
55
54
|
IsString()
|
|
56
55
|
], SessionAuthResponseDTO.prototype, "accessToken", void 0);
|
|
57
|
-
__decorate([
|
|
58
|
-
ApiProperty({
|
|
59
|
-
description: 'JWT refresh token this token is used to get a new access token when the current one expires. It is valid for 1 day.',
|
|
60
|
-
}),
|
|
61
|
-
IsNotEmpty(),
|
|
62
|
-
IsString()
|
|
63
|
-
], SessionAuthResponseDTO.prototype, "refreshToken", void 0);
|
|
64
56
|
export class SessionAuthContextResponseDTO extends SessionAuthResponseDTO {
|
|
65
57
|
admin;
|
|
66
58
|
user;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.dto.js","sourceRoot":"","sources":["../../../../src/shared-lib/dto/auth.dto.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAG,WAAW,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,MAAM,OAAO,qBAAqB;IAQ9B,SAAS,GAAW,EAAE,CAAC;IAQvB,AADA,4BAA4B;IAC5B,QAAQ,GAAsB,gBAAgB,CAAC,IAAI,CAAC;CACvD;AATG;IAPC,WAAW,CAAC;QACT,WAAW,EAAE,qEAAqE;QAClF,OAAO,EAAE,yCAAyC;QAClD,IAAI,EAAE,MAAM;KACf,CAAC;IACD,UAAU,EAAE;IACZ,QAAQ,EAAE;wDACY;AAQvB;IANC,mBAAmB,CAAC;QACjB,WAAW,EAAE,iFAAiF;QAC9F,0BAA0B;QAC1B,IAAI,EAAE,gBAAgB;KACzB,CAAC;IACF,4BAA4B;uDACwB;AAIxD,MAAM,OAAO,sBAAsB;IAO/B,YAAY,GAAW,EAAE,CAAC;CAC7B;AADG;IANC,WAAW,CAAC;QACT,WAAW,EAAE,eAAe;QAC5B,OAAO,EAAE,sJAAsJ;KAClK,CAAC;IACD,UAAU,EAAE;IACZ,QAAQ,EAAE;4DACe;AAI9B,MAAM,OAAO,sBAAsB;
|
|
1
|
+
{"version":3,"file":"auth.dto.js","sourceRoot":"","sources":["../../../../src/shared-lib/dto/auth.dto.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAG,WAAW,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,MAAM,OAAO,qBAAqB;IAQ9B,SAAS,GAAW,EAAE,CAAC;IAQvB,AADA,4BAA4B;IAC5B,QAAQ,GAAsB,gBAAgB,CAAC,IAAI,CAAC;CACvD;AATG;IAPC,WAAW,CAAC;QACT,WAAW,EAAE,qEAAqE;QAClF,OAAO,EAAE,yCAAyC;QAClD,IAAI,EAAE,MAAM;KACf,CAAC;IACD,UAAU,EAAE;IACZ,QAAQ,EAAE;wDACY;AAQvB;IANC,mBAAmB,CAAC;QACjB,WAAW,EAAE,iFAAiF;QAC9F,0BAA0B;QAC1B,IAAI,EAAE,gBAAgB;KACzB,CAAC;IACF,4BAA4B;uDACwB;AAIxD,MAAM,OAAO,sBAAsB;IAO/B,YAAY,GAAW,EAAE,CAAC;CAC7B;AADG;IANC,WAAW,CAAC;QACT,WAAW,EAAE,eAAe;QAC5B,OAAO,EAAE,sJAAsJ;KAClK,CAAC;IACD,UAAU,EAAE;IACZ,QAAQ,EAAE;4DACe;AAI9B,MAAM,OAAO,sBAAuB,SAAQ,sBAAsB;IAQ9D,WAAW,GAAW,EAAE,CAAC;CAUxB;AAVD;IAPC,WAAW,CACR;QACI,WAAW,EAAE,uKAAuK;KACvL,CACJ;IACA,UAAU,EAAE;IACZ,QAAQ,EAAE;2DACc;AAY7B,MAAM,OAAO,6BAA8B,SAAQ,sBAAsB;IAKrE,KAAK,CAAY;IAMjB,IAAI,CAAW;IAMf,QAAQ,CAAe;IAQvB,AADA,4BAA4B;IAC5B,QAAQ,GAAqB,gBAAgB,CAAC,IAAI,CAAC;CACtD;AArBG;IAJC,mBAAmB,CAAC;QACjB,WAAW,EAAE,yCAAyC;QACtD,IAAI,EAAE,GAAG,EAAE,CAAC,QAAQ;KACvB,CAAC;4DACe;AAMjB;IAJC,mBAAmB,CAAC;QACjB,WAAW,EAAE,uCAAuC;QACpD,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO;KACtB,CAAC;2DACa;AAMf;IAJC,mBAAmB,CAAC;QACjB,WAAW,EAAE,+CAA+C;QAC5D,IAAI,EAAE,GAAG,EAAE,CAAC,WAAW;KAC1B,CAAC;+DACqB;AAQvB;IANC,WAAW,CAAC;QACT,WAAW,EAAE,iFAAiF;QAC9F,0BAA0B;QAC1B,IAAI,EAAE,gBAAgB;KACzB,CAAC;IACF,4BAA4B;+DACuB"}
|
|
@@ -40,15 +40,171 @@ export declare enum ErrorCategory {
|
|
|
40
40
|
}
|
|
41
41
|
/**
|
|
42
42
|
* Structured error object for classification
|
|
43
|
+
* Follows RFC 7807 (Problem Details for HTTP APIs) with extensions
|
|
43
44
|
*/
|
|
44
45
|
export interface StructuredError {
|
|
46
|
+
/** HTTP status code as number (industry standard) */
|
|
47
|
+
status: number;
|
|
48
|
+
/** Human-readable summary of the error type */
|
|
49
|
+
title: string;
|
|
50
|
+
/** Human-readable explanation specific to this occurrence */
|
|
51
|
+
detail: string;
|
|
52
|
+
/** Common error message field (industry standard) - usually same as detail */
|
|
45
53
|
message: string;
|
|
54
|
+
/** URI reference identifying the problem type (optional) */
|
|
55
|
+
type?: string;
|
|
56
|
+
/** URI reference to this specific error occurrence (optional) */
|
|
57
|
+
instance?: string;
|
|
58
|
+
/** Service-defined error code for programmatic handling */
|
|
46
59
|
code: string;
|
|
47
|
-
|
|
60
|
+
/** Error category for classification and routing */
|
|
48
61
|
category: ErrorCategory;
|
|
62
|
+
/** ISO 8601 timestamp when error occurred */
|
|
63
|
+
timestamp?: string;
|
|
64
|
+
/** Correlation ID for request tracing */
|
|
49
65
|
correlationId?: string;
|
|
66
|
+
/** Additional structured error details */
|
|
50
67
|
details?: Record<string, any>;
|
|
68
|
+
/** User-friendly message safe for end-user display */
|
|
51
69
|
userMessage?: string;
|
|
70
|
+
/** Whether the operation can be safely retried */
|
|
71
|
+
retryable: boolean;
|
|
72
|
+
/** Target property/parameter that caused the error (for validation errors) */
|
|
73
|
+
target?: string;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Backward compatibility alias
|
|
77
|
+
* @deprecated Use StructuredError instead
|
|
78
|
+
*/
|
|
79
|
+
export type ErrorResponse = StructuredError;
|
|
80
|
+
/**
|
|
81
|
+
* Validation error detail for field-specific errors
|
|
82
|
+
*/
|
|
83
|
+
export interface ValidationErrorDetail {
|
|
84
|
+
field: string;
|
|
85
|
+
code: string;
|
|
86
|
+
message: string;
|
|
87
|
+
rejectedValue?: any;
|
|
88
|
+
constraints?: Record<string, string>;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Category-specific structured error interfaces for type safety
|
|
92
|
+
*/
|
|
93
|
+
/**
|
|
94
|
+
* Validation error for input validation failures
|
|
95
|
+
*/
|
|
96
|
+
export interface ValidationStructuredError extends StructuredError {
|
|
97
|
+
category: ErrorCategory.VALIDATION;
|
|
98
|
+
details: {
|
|
99
|
+
violations: ValidationErrorDetail[];
|
|
100
|
+
[key: string]: any;
|
|
101
|
+
};
|
|
102
|
+
target: string;
|
|
103
|
+
retryable: false;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Domain rule error for business logic violations
|
|
107
|
+
*/
|
|
108
|
+
export interface DomainRuleStructuredError extends StructuredError {
|
|
109
|
+
category: ErrorCategory.DOMAIN_RULE;
|
|
110
|
+
details?: {
|
|
111
|
+
businessRule: string;
|
|
112
|
+
violatedConstraints?: string[];
|
|
113
|
+
[key: string]: any;
|
|
114
|
+
};
|
|
115
|
+
retryable: false;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Technical error for application/configuration issues
|
|
119
|
+
*/
|
|
120
|
+
export interface TechnicalStructuredError extends StructuredError {
|
|
121
|
+
category: ErrorCategory.TECHNICAL;
|
|
122
|
+
details?: {
|
|
123
|
+
component?: string;
|
|
124
|
+
operation?: string;
|
|
125
|
+
technicalDetails?: string;
|
|
126
|
+
[key: string]: any;
|
|
127
|
+
};
|
|
52
128
|
retryable: boolean;
|
|
53
129
|
}
|
|
130
|
+
/**
|
|
131
|
+
* Infrastructure error for system/external service failures
|
|
132
|
+
*/
|
|
133
|
+
export interface InfrastructureStructuredError extends StructuredError {
|
|
134
|
+
category: ErrorCategory.INFRASTRUCTURE;
|
|
135
|
+
details?: {
|
|
136
|
+
service?: string;
|
|
137
|
+
endpoint?: string;
|
|
138
|
+
connectionDetails?: string;
|
|
139
|
+
[key: string]: any;
|
|
140
|
+
};
|
|
141
|
+
retryable: true;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Security error for authentication/authorization failures
|
|
145
|
+
*/
|
|
146
|
+
export interface SecurityStructuredError extends StructuredError {
|
|
147
|
+
category: ErrorCategory.SECURITY;
|
|
148
|
+
details?: {
|
|
149
|
+
securityViolationType?: 'authentication' | 'authorization' | 'suspicious_activity';
|
|
150
|
+
requiredPermissions?: string[];
|
|
151
|
+
attemptedAction?: string;
|
|
152
|
+
[key: string]: any;
|
|
153
|
+
};
|
|
154
|
+
retryable: false;
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Rate limit error for usage limit violations
|
|
158
|
+
*/
|
|
159
|
+
export interface RateLimitStructuredError extends StructuredError {
|
|
160
|
+
category: ErrorCategory.RATE_LIMIT;
|
|
161
|
+
details: {
|
|
162
|
+
limit: number;
|
|
163
|
+
remaining: number;
|
|
164
|
+
resetTime: string;
|
|
165
|
+
window: string;
|
|
166
|
+
[key: string]: any;
|
|
167
|
+
};
|
|
168
|
+
retryable: true;
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* Timeout error for operations that exceed time limits
|
|
172
|
+
*/
|
|
173
|
+
export interface TimeoutStructuredError extends StructuredError {
|
|
174
|
+
category: ErrorCategory.TIMEOUT;
|
|
175
|
+
details?: {
|
|
176
|
+
timeoutMs: number;
|
|
177
|
+
operation?: string;
|
|
178
|
+
elapsedMs?: number;
|
|
179
|
+
[key: string]: any;
|
|
180
|
+
};
|
|
181
|
+
retryable: true;
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* Unknown error for unclassified failures
|
|
185
|
+
*/
|
|
186
|
+
export interface UnknownStructuredError extends StructuredError {
|
|
187
|
+
category: ErrorCategory.UNKNOWN;
|
|
188
|
+
details?: {
|
|
189
|
+
originalError?: string;
|
|
190
|
+
context?: string;
|
|
191
|
+
[key: string]: any;
|
|
192
|
+
};
|
|
193
|
+
retryable: boolean;
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Union type of all category-specific structured errors for type safety
|
|
197
|
+
*/
|
|
198
|
+
export type CategorizedStructuredError = ValidationStructuredError | DomainRuleStructuredError | TechnicalStructuredError | InfrastructureStructuredError | SecurityStructuredError | RateLimitStructuredError | TimeoutStructuredError | UnknownStructuredError;
|
|
199
|
+
/**
|
|
200
|
+
* Type guard functions for category-specific error handling
|
|
201
|
+
*/
|
|
202
|
+
export declare const isValidationError: (error: StructuredError) => error is ValidationStructuredError;
|
|
203
|
+
export declare const isDomainRuleError: (error: StructuredError) => error is DomainRuleStructuredError;
|
|
204
|
+
export declare const isTechnicalError: (error: StructuredError) => error is TechnicalStructuredError;
|
|
205
|
+
export declare const isInfrastructureError: (error: StructuredError) => error is InfrastructureStructuredError;
|
|
206
|
+
export declare const isSecurityError: (error: StructuredError) => error is SecurityStructuredError;
|
|
207
|
+
export declare const isRateLimitError: (error: StructuredError) => error is RateLimitStructuredError;
|
|
208
|
+
export declare const isTimeoutError: (error: StructuredError) => error is TimeoutStructuredError;
|
|
209
|
+
export declare const isUnknownError: (error: StructuredError) => error is UnknownStructuredError;
|
|
54
210
|
//# sourceMappingURL=error-classification-enums.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-classification-enums.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/errors/base/error-classification-enums.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,oBAAY,aAAa;IACvB;;OAEG;IACH,UAAU,eAAe;IAEzB;;OAEG;IACH,WAAW,gBAAgB;IAE3B;;OAEG;IACH,SAAS,cAAc;IAEvB;;OAEG;IACH,cAAc,mBAAmB;IAEjC;;OAEG;IACH,QAAQ,aAAa;IAErB;;OAEG;IACH,UAAU,eAAe;IAEzB;;OAEG;IACH,OAAO,YAAY;IAEnB;;OAEG;IACH,OAAO,YAAY;CACpB;AAED
|
|
1
|
+
{"version":3,"file":"error-classification-enums.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/errors/base/error-classification-enums.ts"],"names":[],"mappings":"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"}
|
|
@@ -39,4 +39,15 @@ export var ErrorCategory;
|
|
|
39
39
|
*/
|
|
40
40
|
ErrorCategory["UNKNOWN"] = "UNKNOWN";
|
|
41
41
|
})(ErrorCategory || (ErrorCategory = {}));
|
|
42
|
+
/**
|
|
43
|
+
* Type guard functions for category-specific error handling
|
|
44
|
+
*/
|
|
45
|
+
export const isValidationError = (error) => error.category === ErrorCategory.VALIDATION;
|
|
46
|
+
export const isDomainRuleError = (error) => error.category === ErrorCategory.DOMAIN_RULE;
|
|
47
|
+
export const isTechnicalError = (error) => error.category === ErrorCategory.TECHNICAL;
|
|
48
|
+
export const isInfrastructureError = (error) => error.category === ErrorCategory.INFRASTRUCTURE;
|
|
49
|
+
export const isSecurityError = (error) => error.category === ErrorCategory.SECURITY;
|
|
50
|
+
export const isRateLimitError = (error) => error.category === ErrorCategory.RATE_LIMIT;
|
|
51
|
+
export const isTimeoutError = (error) => error.category === ErrorCategory.TIMEOUT;
|
|
52
|
+
export const isUnknownError = (error) => error.category === ErrorCategory.UNKNOWN;
|
|
42
53
|
//# sourceMappingURL=error-classification-enums.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-classification-enums.js","sourceRoot":"","sources":["../../../../../src/shared-lib/errors/base/error-classification-enums.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAN,IAAY,aAwCX;AAxCD,WAAY,aAAa;IACvB;;OAEG;IACH,0CAAyB,CAAA;IAEzB;;OAEG;IACH,4CAA2B,CAAA;IAE3B;;OAEG;IACH,wCAAuB,CAAA;IAEvB;;OAEG;IACH,kDAAiC,CAAA;IAEjC;;OAEG;IACH,sCAAqB,CAAA;IAErB;;OAEG;IACH,0CAAyB,CAAA;IAEzB;;OAEG;IACH,oCAAmB,CAAA;IAEnB;;OAEG;IACH,oCAAmB,CAAA;AACrB,CAAC,EAxCW,aAAa,KAAb,aAAa,QAwCxB"}
|
|
1
|
+
{"version":3,"file":"error-classification-enums.js","sourceRoot":"","sources":["../../../../../src/shared-lib/errors/base/error-classification-enums.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAN,IAAY,aAwCX;AAxCD,WAAY,aAAa;IACvB;;OAEG;IACH,0CAAyB,CAAA;IAEzB;;OAEG;IACH,4CAA2B,CAAA;IAE3B;;OAEG;IACH,wCAAuB,CAAA;IAEvB;;OAEG;IACH,kDAAiC,CAAA;IAEjC;;OAEG;IACH,sCAAqB,CAAA;IAErB;;OAEG;IACH,0CAAyB,CAAA;IAEzB;;OAEG;IACH,oCAAmB,CAAA;IAEnB;;OAEG;IACH,oCAAmB,CAAA;AACrB,CAAC,EAxCW,aAAa,KAAb,aAAa,QAwCxB;AAoMD;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAsB,EAAsC,EAAE,CAC9F,KAAK,CAAC,QAAQ,KAAK,aAAa,CAAC,UAAU,CAAC;AAE9C,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAsB,EAAsC,EAAE,CAC9F,KAAK,CAAC,QAAQ,KAAK,aAAa,CAAC,WAAW,CAAC;AAE/C,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAsB,EAAqC,EAAE,CAC5F,KAAK,CAAC,QAAQ,KAAK,aAAa,CAAC,SAAS,CAAC;AAE7C,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAAsB,EAA0C,EAAE,CACtG,KAAK,CAAC,QAAQ,KAAK,aAAa,CAAC,cAAc,CAAC;AAElD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAsB,EAAoC,EAAE,CAC1F,KAAK,CAAC,QAAQ,KAAK,aAAa,CAAC,QAAQ,CAAC;AAE5C,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAsB,EAAqC,EAAE,CAC5F,KAAK,CAAC,QAAQ,KAAK,aAAa,CAAC,UAAU,CAAC;AAE9C,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAsB,EAAmC,EAAE,CACxF,KAAK,CAAC,QAAQ,KAAK,aAAa,CAAC,OAAO,CAAC;AAE3C,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAsB,EAAmC,EAAE,CACxF,KAAK,CAAC,QAAQ,KAAK,aAAa,CAAC,OAAO,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { HttpException, HttpStatus } from '@nestjs/common';
|
|
2
|
+
import { ErrorCategory, StructuredError } from './base/error-classification-enums';
|
|
2
3
|
/**
|
|
3
4
|
* Base class for business logic errors that should be surfaced to clients
|
|
4
5
|
* with meaningful error messages and appropriate HTTP status codes.
|
|
@@ -11,7 +12,9 @@ export declare abstract class BusinessLogicError extends HttpException {
|
|
|
11
12
|
readonly userMessage: string;
|
|
12
13
|
readonly developerMessage: string;
|
|
13
14
|
readonly action?: string;
|
|
14
|
-
|
|
15
|
+
readonly category: ErrorCategory;
|
|
16
|
+
readonly retryable: boolean;
|
|
17
|
+
constructor(errorCode: string, domain: string, userMessage: string, developerMessage: string, httpStatus?: HttpStatus, action?: string, category?: ErrorCategory, retryable?: boolean);
|
|
15
18
|
/**
|
|
16
19
|
* Type guard to check if an error is a business logic error
|
|
17
20
|
*/
|
|
@@ -19,6 +22,57 @@ export declare abstract class BusinessLogicError extends HttpException {
|
|
|
19
22
|
/**
|
|
20
23
|
* Get structured error response for API consumers
|
|
21
24
|
*/
|
|
22
|
-
getStructuredResponse():
|
|
25
|
+
getStructuredResponse(): StructuredError;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Category-specific base error classes for type safety and proper defaults
|
|
29
|
+
*/
|
|
30
|
+
/**
|
|
31
|
+
* Base class for validation errors - input validation failures
|
|
32
|
+
*/
|
|
33
|
+
export declare class ValidationError extends BusinessLogicError {
|
|
34
|
+
constructor(errorCode: string, domain: string, userMessage: string, developerMessage: string, target: string, action?: string);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Base class for domain rule errors - business logic violations
|
|
38
|
+
*/
|
|
39
|
+
export declare class DomainRuleError extends BusinessLogicError {
|
|
40
|
+
constructor(errorCode: string, domain: string, userMessage: string, developerMessage: string, httpStatus?: HttpStatus, action?: string);
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Base class for technical errors - application/configuration issues
|
|
44
|
+
*/
|
|
45
|
+
export declare class TechnicalError extends BusinessLogicError {
|
|
46
|
+
constructor(errorCode: string, domain: string, userMessage: string, developerMessage: string, httpStatus?: HttpStatus, action?: string, retryable?: boolean);
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Base class for infrastructure errors - system/external service failures
|
|
50
|
+
*/
|
|
51
|
+
export declare class InfrastructureError extends BusinessLogicError {
|
|
52
|
+
constructor(errorCode: string, domain: string, userMessage: string, developerMessage: string, httpStatus?: HttpStatus, action?: string);
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Base class for security errors - authentication/authorization failures
|
|
56
|
+
*/
|
|
57
|
+
export declare class SecurityError extends BusinessLogicError {
|
|
58
|
+
constructor(errorCode: string, domain: string, userMessage: string, developerMessage: string, httpStatus?: HttpStatus, action?: string);
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Base class for rate limit errors - usage limit violations
|
|
62
|
+
*/
|
|
63
|
+
export declare class RateLimitError extends BusinessLogicError {
|
|
64
|
+
constructor(errorCode: string, domain: string, userMessage: string, developerMessage: string, action?: string);
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Base class for timeout errors - operations that exceed time limits
|
|
68
|
+
*/
|
|
69
|
+
export declare class TimeoutError extends BusinessLogicError {
|
|
70
|
+
constructor(errorCode: string, domain: string, userMessage: string, developerMessage: string, httpStatus?: HttpStatus, action?: string);
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Base class for unknown errors - unclassified failures
|
|
74
|
+
*/
|
|
75
|
+
export declare class UnknownError extends BusinessLogicError {
|
|
76
|
+
constructor(errorCode: string, domain: string, userMessage: string, developerMessage: string, httpStatus?: HttpStatus, action?: string, retryable?: boolean);
|
|
23
77
|
}
|
|
24
78
|
//# sourceMappingURL=base-business-error.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-business-error.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/errors/base-business-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"base-business-error.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/errors/base-business-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAEnF;;;;;GAKG;AACH,8BAAsB,kBAAmB,SAAQ,aAAa;IAC5D,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,SAAgB,WAAW,EAAE,MAAM,CAAC;IACpC,SAAgB,gBAAgB,EAAE,MAAM,CAAC;IACzC,SAAgB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChC,SAAgB,QAAQ,EAAE,aAAa,CAAC;IACxC,SAAgB,SAAS,EAAE,OAAO,CAAC;gBAGjC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,UAAU,GAAE,UAAmC,EAC/C,MAAM,CAAC,EAAE,MAAM,EACf,QAAQ,GAAE,aAAyC,EACnD,SAAS,GAAE,OAAe;IAmC5B;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,kBAAkB;IAI/D;;OAEG;IACH,qBAAqB,IAAI,eAAe;CAkBzC;AAED;;GAEG;AAEH;;GAEG;AACH,qBAAa,eAAgB,SAAQ,kBAAkB;gBAEnD,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM;CAalB;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,kBAAkB;gBAEnD,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,UAAU,GAAE,UAAmC,EAC/C,MAAM,CAAC,EAAE,MAAM;CAalB;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,kBAAkB;gBAElD,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,UAAU,GAAE,UAA6C,EACzD,MAAM,CAAC,EAAE,MAAM,EACf,SAAS,GAAE,OAAc;CAa5B;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,kBAAkB;gBAEvD,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,UAAU,GAAE,UAA2C,EACvD,MAAM,CAAC,EAAE,MAAM;CAalB;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,kBAAkB;gBAEjD,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,UAAU,GAAE,UAAoC,EAChD,MAAM,CAAC,EAAE,MAAM;CAalB;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,kBAAkB;gBAElD,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,MAAM,CAAC,EAAE,MAAM;CAalB;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,kBAAkB;gBAEhD,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,UAAU,GAAE,UAAuC,EACnD,MAAM,CAAC,EAAE,MAAM;CAalB;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,kBAAkB;gBAEhD,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,UAAU,GAAE,UAA6C,EACzD,MAAM,CAAC,EAAE,MAAM,EACf,SAAS,GAAE,OAAe;CAa7B"}
|