@explorins/pers-shared 2.1.39 → 2.1.41
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 -0
- package/dist/cjs/shared-lib/dto/auth.dto.d.ts.map +1 -1
- package/dist/cjs/shared-lib/dto/auth.dto.js +12 -2
- package/dist/cjs/shared-lib/dto/auth.dto.js.map +1 -1
- package/dist/cjs/shared-lib/dto/token/token.request.dto.d.ts +1 -0
- package/dist/cjs/shared-lib/dto/token/token.request.dto.d.ts.map +1 -1
- package/dist/cjs/shared-lib/dto/token/token.request.dto.js +7 -0
- package/dist/cjs/shared-lib/dto/token/token.request.dto.js.map +1 -1
- package/dist/cjs/shared-lib/enum/transaction-status.enum.d.ts +3 -1
- package/dist/cjs/shared-lib/enum/transaction-status.enum.d.ts.map +1 -1
- package/dist/cjs/shared-lib/enum/transaction-status.enum.js +6 -0
- package/dist/cjs/shared-lib/enum/transaction-status.enum.js.map +1 -1
- package/dist/cjs/shared-lib/errors/technical-errors.d.ts +0 -13
- package/dist/cjs/shared-lib/errors/technical-errors.d.ts.map +1 -1
- package/dist/cjs/shared-lib/errors/technical-errors.js +1 -46
- package/dist/cjs/shared-lib/errors/technical-errors.js.map +1 -1
- package/dist/cjs/shared-lib/value-objects/account-selector.vo.d.ts.map +1 -1
- package/dist/cjs/shared-lib/value-objects/account-selector.vo.js +13 -9
- package/dist/cjs/shared-lib/value-objects/account-selector.vo.js.map +1 -1
- package/dist/cjs/shared-lib/value-objects/address.value-object.d.ts.map +1 -1
- package/dist/cjs/shared-lib/value-objects/address.value-object.js +2 -1
- package/dist/cjs/shared-lib/value-objects/address.value-object.js.map +1 -1
- package/dist/cjs/shared-patterns/errors/error-factory.d.ts +150 -0
- package/dist/cjs/shared-patterns/errors/error-factory.d.ts.map +1 -0
- package/dist/cjs/shared-patterns/errors/error-factory.js +257 -0
- package/dist/cjs/shared-patterns/errors/error-factory.js.map +1 -0
- package/dist/esm/shared-lib/dto/auth.dto.d.ts +1 -0
- package/dist/esm/shared-lib/dto/auth.dto.d.ts.map +1 -1
- package/dist/esm/shared-lib/dto/auth.dto.js +11 -2
- package/dist/esm/shared-lib/dto/auth.dto.js.map +1 -1
- package/dist/esm/shared-lib/dto/token/token.request.dto.d.ts +1 -0
- package/dist/esm/shared-lib/dto/token/token.request.dto.d.ts.map +1 -1
- package/dist/esm/shared-lib/dto/token/token.request.dto.js +6 -0
- package/dist/esm/shared-lib/dto/token/token.request.dto.js.map +1 -1
- package/dist/esm/shared-lib/enum/transaction-status.enum.d.ts +3 -1
- package/dist/esm/shared-lib/enum/transaction-status.enum.d.ts.map +1 -1
- package/dist/esm/shared-lib/enum/transaction-status.enum.js +6 -0
- package/dist/esm/shared-lib/enum/transaction-status.enum.js.map +1 -1
- package/dist/esm/shared-lib/errors/technical-errors.d.ts +0 -13
- package/dist/esm/shared-lib/errors/technical-errors.d.ts.map +1 -1
- package/dist/esm/shared-lib/errors/technical-errors.js +0 -44
- package/dist/esm/shared-lib/errors/technical-errors.js.map +1 -1
- package/dist/esm/shared-lib/value-objects/account-selector.vo.d.ts.map +1 -1
- package/dist/esm/shared-lib/value-objects/account-selector.vo.js +13 -9
- package/dist/esm/shared-lib/value-objects/account-selector.vo.js.map +1 -1
- package/dist/esm/shared-lib/value-objects/address.value-object.d.ts.map +1 -1
- package/dist/esm/shared-lib/value-objects/address.value-object.js +2 -1
- package/dist/esm/shared-lib/value-objects/address.value-object.js.map +1 -1
- package/dist/esm/shared-patterns/errors/error-factory.d.ts +150 -0
- package/dist/esm/shared-patterns/errors/error-factory.d.ts.map +1 -0
- package/dist/esm/shared-patterns/errors/error-factory.js +254 -0
- package/dist/esm/shared-patterns/errors/error-factory.js.map +1 -0
- package/package.json +1 -1
|
@@ -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;
|
|
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;IAOpD,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACtC;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"}
|
|
@@ -20,6 +20,7 @@ class SessionAuthRequestDTO {
|
|
|
20
20
|
authToken = '';
|
|
21
21
|
// @IsEnum(AccountOwnerType)
|
|
22
22
|
authType = enum_1.AccountOwnerType.USER;
|
|
23
|
+
rawLoginData;
|
|
23
24
|
}
|
|
24
25
|
exports.SessionAuthRequestDTO = SessionAuthRequestDTO;
|
|
25
26
|
__decorate([
|
|
@@ -27,8 +28,9 @@ __decorate([
|
|
|
27
28
|
description: 'Authentication token from WebAuthn provider (e.g., PERS Signer API)',
|
|
28
29
|
example: 'eyJ0eXAiOiJKV1QiLCJhbGciOiJFZERTQSJ9...',
|
|
29
30
|
type: String
|
|
30
|
-
})
|
|
31
|
-
|
|
31
|
+
})
|
|
32
|
+
// @IsNotEmpty()
|
|
33
|
+
,
|
|
32
34
|
(0, class_validator_1.IsString)(),
|
|
33
35
|
__metadata("design:type", String)
|
|
34
36
|
], SessionAuthRequestDTO.prototype, "authToken", void 0);
|
|
@@ -42,6 +44,14 @@ __decorate([
|
|
|
42
44
|
,
|
|
43
45
|
__metadata("design:type", String)
|
|
44
46
|
], SessionAuthRequestDTO.prototype, "authType", void 0);
|
|
47
|
+
__decorate([
|
|
48
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
49
|
+
description: 'if Tenant settings allowJWTForUnauthenticatedUsers is true, this field contains data to create user and setup unauthenticated user session instead of token verification. Useful for sandbox or trial modes. For now it is only used to create unauthenticated users.',
|
|
50
|
+
example: { someKey: 'someValue' },
|
|
51
|
+
type: Object
|
|
52
|
+
}),
|
|
53
|
+
__metadata("design:type", Object)
|
|
54
|
+
], SessionAuthRequestDTO.prototype, "rawLoginData", void 0);
|
|
45
55
|
class RefreshTokenRequestDTO {
|
|
46
56
|
refreshToken = '';
|
|
47
57
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.dto.js","sourceRoot":"","sources":["../../../../src/shared-lib/dto/auth.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAmE;AACnE,qDAAuD;AACvD,yCAAqC;AACrC,yCAA0C;AAC1C,kCAA2C;AAC3C,mCAAmC;AAEnC,MAAa,qBAAqB;IAQ9B,SAAS,GAAW,EAAE,CAAC;IAQvB,AADA,4BAA4B;IAC5B,QAAQ,GAAsB,uBAAgB,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.dto.js","sourceRoot":"","sources":["../../../../src/shared-lib/dto/auth.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAmE;AACnE,qDAAuD;AACvD,yCAAqC;AACrC,yCAA0C;AAC1C,kCAA2C;AAC3C,mCAAmC;AAEnC,MAAa,qBAAqB;IAQ9B,SAAS,GAAW,EAAE,CAAC;IAQvB,AADA,4BAA4B;IAC5B,QAAQ,GAAsB,uBAAgB,CAAC,IAAI,CAAC;IAOpD,YAAY,CAAuB;CACtC;AAxBD,sDAwBC;AAhBG;IAPC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,qEAAqE;QAClF,OAAO,EAAE,yCAAyC;QAClD,IAAI,EAAE,MAAM;KACf,CAAC;IACF,gBAAgB;;IACf,IAAA,0BAAQ,GAAE;;wDACY;AAQvB;IANC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,iFAAiF;QAC9F,0BAA0B;QAC1B,IAAI,EAAE,uBAAgB;KACzB,CAAC;IACF,4BAA4B;;;uDACwB;AAOpD;IALC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,uQAAuQ;QACpR,OAAO,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE;QACjC,IAAI,EAAE,MAAM;KACf,CAAC;;2DACiC;AAIvC,MAAa,sBAAsB;IAO/B,YAAY,GAAW,EAAE,CAAC;CAC7B;AARD,wDAQC;AADG;IANC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,eAAe;QAC5B,OAAO,EAAE,sJAAsJ;KAClK,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;4DACe;AAI9B,MAAa,sBAAuB,SAAQ,sBAAsB;IAQ9D,WAAW,GAAW,EAAE,CAAC;CAUxB;AAlBL,wDAkBK;AAVD;IAPC,IAAA,qBAAW,EACR;QACI,WAAW,EAAE,uKAAuK;KACvL,CACJ;IACA,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;2DACc;AAY7B,MAAa,6BAA8B,SAAQ,sBAAsB;IAKrE,KAAK,CAAY;IAMjB,IAAI,CAAW;IAMf,QAAQ,CAAe;IAQvB,AADA,4BAA4B;IAC5B,QAAQ,GAAqB,uBAAgB,CAAC,IAAI,CAAC;CACtD;AA1BD,sEA0BC;AArBG;IAJC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,yCAAyC;QACtD,IAAI,EAAE,GAAG,EAAE,CAAC,gBAAQ;KACvB,CAAC;8BACM,gBAAQ;4DAAC;AAMjB;IAJC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,uCAAuC;QACpD,IAAI,EAAE,GAAG,EAAE,CAAC,kBAAO;KACtB,CAAC;8BACK,kBAAO;2DAAC;AAMf;IAJC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,+CAA+C;QAC5D,IAAI,EAAE,GAAG,EAAE,CAAC,sBAAW;KAC1B,CAAC;8BACS,sBAAW;+DAAC;AAQvB;IANC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,iFAAiF;QAC9F,0BAA0B;QAC1B,IAAI,EAAE,uBAAgB;KACzB,CAAC;IACF,4BAA4B;;;+DACuB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token.request.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/token/token.request.dto.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,eAAe,EAAoB,MAAM,+BAA+B,CAAC;AAGvF,qBAAa,qBAAqB;IAK9B,SAAS,CAAC,EAAE,OAAO,CAAC;IAKpB,IAAI,CAAC,EAAE,MAAM,CAAC;IAKd,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,qBAAqB;IAI9B,eAAe,EAAE,MAAM,CAAK;
|
|
1
|
+
{"version":3,"file":"token.request.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/token/token.request.dto.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,eAAe,EAAoB,MAAM,+BAA+B,CAAC;AAGvF,qBAAa,qBAAqB;IAK9B,SAAS,CAAC,EAAE,OAAO,CAAC;IAKpB,IAAI,CAAC,EAAE,MAAM,CAAC;IAKd,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,qBAAqB;IAI9B,eAAe,EAAE,MAAM,CAAK;IAK5B,OAAO,CAAC,EAAE,MAAM,CAAC;IAejB,MAAM,CAAC,EAAE,MAAM,CAAA;IAKf,IAAI,EAAE,eAAe,CAA0B;IAK/C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB"}
|
|
@@ -32,6 +32,7 @@ __decorate([
|
|
|
32
32
|
], TokenUpdateRequestDTO.prototype, "symbol", void 0);
|
|
33
33
|
class TokenCreateRequestDTO {
|
|
34
34
|
contractAddress = '';
|
|
35
|
+
chainId;
|
|
35
36
|
/* @ApiProperty({
|
|
36
37
|
description: 'The chain id is the chain id of the contract. This is useful for multi-chain contracts.'
|
|
37
38
|
})
|
|
@@ -51,6 +52,12 @@ __decorate([
|
|
|
51
52
|
}),
|
|
52
53
|
__metadata("design:type", String)
|
|
53
54
|
], TokenCreateRequestDTO.prototype, "contractAddress", void 0);
|
|
55
|
+
__decorate([
|
|
56
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
57
|
+
description: 'The chain id is the chain id of the contract. This is useful for multi-chain contracts.'
|
|
58
|
+
}),
|
|
59
|
+
__metadata("design:type", Number)
|
|
60
|
+
], TokenCreateRequestDTO.prototype, "chainId", void 0);
|
|
54
61
|
__decorate([
|
|
55
62
|
(0, swagger_1.ApiPropertyOptional)({
|
|
56
63
|
description: 'The ABI URL is the URL to the contract ABI. This is an optional field. If not provided, the contract ABI will be fetched from PERS instance depending on selected token type.'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token.request.dto.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/token/token.request.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAkE;AAClE,qEAAuF;AAGvF,MAAa,qBAAqB;IAK9B,SAAS,CAAW;IAKpB,IAAI,CAAU;IAKd,MAAM,CAAU;CACnB;AAhBD,sDAgBC;AAXG;IAHC,IAAA,6BAAmB,EAChB,EAAC,WAAW,EAAE,uGAAuG,EAAC,CACzH;;wDACmB;AAKpB;IAHC,IAAA,6BAAmB,EAChB,EAAC,WAAW,EAAE,uBAAuB,EAAC,CACzC;;mDACa;AAKd;IAHC,IAAA,6BAAmB,EAChB,EAAC,WAAW,EAAE,yBAAyB,EAAC,CAC3C;;qDACe;AAGpB,MAAa,qBAAqB;IAI9B,eAAe,GAAW,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"token.request.dto.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/token/token.request.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAkE;AAClE,qEAAuF;AAGvF,MAAa,qBAAqB;IAK9B,SAAS,CAAW;IAKpB,IAAI,CAAU;IAKd,MAAM,CAAU;CACnB;AAhBD,sDAgBC;AAXG;IAHC,IAAA,6BAAmB,EAChB,EAAC,WAAW,EAAE,uGAAuG,EAAC,CACzH;;wDACmB;AAKpB;IAHC,IAAA,6BAAmB,EAChB,EAAC,WAAW,EAAE,uBAAuB,EAAC,CACzC;;mDACa;AAKd;IAHC,IAAA,6BAAmB,EAChB,EAAC,WAAW,EAAE,yBAAyB,EAAC,CAC3C;;qDACe;AAGpB,MAAa,qBAAqB;IAI9B,eAAe,GAAW,EAAE,CAAA;IAK5B,OAAO,CAAU;IAEjB;;;0BAGsB;IAEtB;;;+BAG2B;IAK3B,MAAM,CAAS;IAKf,IAAI,GAAoB,oCAAgB,CAAC,KAAK,CAAC;IAK/C,QAAQ,CAAU;CACrB;AAnCD,sDAmCC;AA/BG;IAHC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,iEAAiE;KACjF,CAAC;;8DAC0B;AAK5B;IAHC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,yFAAyF;KACzG,CAAC;;sDACe;AAejB;IAHC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,+KAA+K;KAC/L,CAAC;;qDACa;AAKf;IAHC,IAAA,qBAAW,EAAC;QACT,IAAI,EAAE,oCAAgB;KACzB,CAAC;;mDAC6C;AAK/C;IAHC,IAAA,6BAAmB,EAChB,EAAC,WAAW,EAAE,qFAAqF,EAAC,CACvG;;uDACiB"}
|
|
@@ -4,6 +4,8 @@ export declare enum TransactionStatus {
|
|
|
4
4
|
PENDING_SIGNATURE = "pending_signature",
|
|
5
5
|
BROADCASTED = "broadcasted",
|
|
6
6
|
SUCCEEDED = "succeeded",
|
|
7
|
-
FAILED = "failed"
|
|
7
|
+
FAILED = "failed",
|
|
8
|
+
CANCELLED = "cancelled",
|
|
9
|
+
EXPIRED = "expired"
|
|
8
10
|
}
|
|
9
11
|
//# sourceMappingURL=transaction-status.enum.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transaction-status.enum.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/enum/transaction-status.enum.ts"],"names":[],"mappings":"AAEA,oBAAY,iBAAiB;IAEzB,OAAO,YAA+B;IAGtC,UAAU,eAAgC;IAG1C,iBAAiB,sBAAiC;IAGlD,WAAW,gBAAgC;IAG3C,SAAS,cAAgC;IAGzC,MAAM,WAAgC;CACvC"}
|
|
1
|
+
{"version":3,"file":"transaction-status.enum.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/enum/transaction-status.enum.ts"],"names":[],"mappings":"AAEA,oBAAY,iBAAiB;IAEzB,OAAO,YAA+B;IAGtC,UAAU,eAAgC;IAG1C,iBAAiB,sBAAiC;IAGlD,WAAW,gBAAgC;IAG3C,SAAS,cAAgC;IAGzC,MAAM,WAAgC;IAItC,SAAS,cAAgC;IAIzC,OAAO,YAA+B;CACvC"}
|
|
@@ -14,5 +14,11 @@ var TransactionStatus;
|
|
|
14
14
|
TransactionStatus["SUCCEEDED"] = "succeeded";
|
|
15
15
|
// after transaction has failed
|
|
16
16
|
TransactionStatus["FAILED"] = "failed";
|
|
17
|
+
// after transaction has been cancelled
|
|
18
|
+
// TODO : is it needed? & needs to be handled in the flows
|
|
19
|
+
TransactionStatus["CANCELLED"] = "cancelled";
|
|
20
|
+
// after transaction has expired
|
|
21
|
+
// TODO : is it needed? & needs to be handled in the flows
|
|
22
|
+
TransactionStatus["EXPIRED"] = "expired";
|
|
17
23
|
})(TransactionStatus || (exports.TransactionStatus = TransactionStatus = {}));
|
|
18
24
|
//# sourceMappingURL=transaction-status.enum.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transaction-status.enum.js","sourceRoot":"","sources":["../../../../src/shared-lib/enum/transaction-status.enum.ts"],"names":[],"mappings":";;;AAEA,IAAY,
|
|
1
|
+
{"version":3,"file":"transaction-status.enum.js","sourceRoot":"","sources":["../../../../src/shared-lib/enum/transaction-status.enum.ts"],"names":[],"mappings":";;;AAEA,IAAY,iBA0BT;AA1BH,WAAY,iBAAiB;IAEzB,wCAAsC,CAAA;IAEtC,kCAAkC;IAClC,8CAA0C,CAAA;IAE1C,2CAA2C;IAC3C,4DAAkD,CAAA;IAElD,yCAAyC;IACzC,gDAA2C,CAAA;IAE3C,kCAAkC;IAClC,4CAAyC,CAAA;IAEzC,+BAA+B;IAC/B,sCAAsC,CAAA;IAEtC,uCAAuC;IACvC,0DAA0D;IAC1D,4CAAyC,CAAA;IAEzC,gCAAgC;IAChC,0DAA0D;IAC1D,wCAAsC,CAAA;AACxC,CAAC,EA1BS,iBAAiB,iCAAjB,iBAAiB,QA0B1B"}
|
|
@@ -18,17 +18,4 @@ export declare class TechnicalError extends HttpException {
|
|
|
18
18
|
*/
|
|
19
19
|
static hidden(message: string, originalError?: Error, correlationId?: string): TechnicalError;
|
|
20
20
|
}
|
|
21
|
-
/**
|
|
22
|
-
* Orchestration errors that wrap other errors but preserve business context
|
|
23
|
-
*/
|
|
24
|
-
export declare class OrchestrationError extends HttpException {
|
|
25
|
-
readonly operation: string;
|
|
26
|
-
readonly originalError: Error;
|
|
27
|
-
constructor(operation: string, originalError: Error);
|
|
28
|
-
static isOrchestrationError(error: any): error is OrchestrationError;
|
|
29
|
-
/**
|
|
30
|
-
* Get the root business error if it exists
|
|
31
|
-
*/
|
|
32
|
-
getRootBusinessError(): HttpException | null;
|
|
33
|
-
}
|
|
34
21
|
//# sourceMappingURL=technical-errors.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"technical-errors.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/errors/technical-errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAI3D;;;GAGG;AACH,qBAAa,cAAe,SAAQ,aAAa;IAC/C,SAAgB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvC,SAAgB,aAAa,CAAC,EAAE,KAAK,CAAC;IACtC,SAAgB,eAAe,EAAE,OAAO,CAAC;gBAGvC,OAAO,EAAE,MAAM,EACf,aAAa,CAAC,EAAE,KAAK,EACrB,aAAa,CAAC,EAAE,MAAM,EACtB,UAAU,GAAE,UAA6C,EACzD,eAAe,GAAE,OAAc;IAsBjC,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,cAAc;IAI5D;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,cAAc;IAI3E;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,cAAc;CAG9F
|
|
1
|
+
{"version":3,"file":"technical-errors.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/errors/technical-errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAI3D;;;GAGG;AACH,qBAAa,cAAe,SAAQ,aAAa;IAC/C,SAAgB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvC,SAAgB,aAAa,CAAC,EAAE,KAAK,CAAC;IACtC,SAAgB,eAAe,EAAE,OAAO,CAAC;gBAGvC,OAAO,EAAE,MAAM,EACf,aAAa,CAAC,EAAE,KAAK,EACrB,aAAa,CAAC,EAAE,MAAM,EACtB,UAAU,GAAE,UAA6C,EACzD,eAAe,GAAE,OAAc;IAsBjC,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,cAAc;IAI5D;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,cAAc;IAI3E;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,cAAc;CAG9F"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.TechnicalError = void 0;
|
|
4
4
|
const common_1 = require("@nestjs/common");
|
|
5
5
|
const error_classification_enums_1 = require("./base/error-classification-enums");
|
|
6
6
|
const error_codes_1 = require("./error-codes");
|
|
@@ -44,49 +44,4 @@ class TechnicalError extends common_1.HttpException {
|
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
46
|
exports.TechnicalError = TechnicalError;
|
|
47
|
-
/**
|
|
48
|
-
* Orchestration errors that wrap other errors but preserve business context
|
|
49
|
-
*/
|
|
50
|
-
class OrchestrationError extends common_1.HttpException {
|
|
51
|
-
operation;
|
|
52
|
-
originalError;
|
|
53
|
-
constructor(operation, originalError) {
|
|
54
|
-
// If the original error is a business error, preserve its HTTP status and message
|
|
55
|
-
const isBusinessError = originalError instanceof common_1.HttpException;
|
|
56
|
-
const status = isBusinessError ? originalError.getStatus() : common_1.HttpStatus.INTERNAL_SERVER_ERROR;
|
|
57
|
-
const response = isBusinessError ? originalError.getResponse() : {
|
|
58
|
-
code: error_codes_1.CommonErrorCodes.ORCHESTRATION_ERROR,
|
|
59
|
-
message: 'Operation failed',
|
|
60
|
-
timestamp: new Date().toISOString(),
|
|
61
|
-
category: 'ORCHESTRATION'
|
|
62
|
-
};
|
|
63
|
-
super(response, status);
|
|
64
|
-
this.operation = operation;
|
|
65
|
-
this.originalError = originalError;
|
|
66
|
-
this.name = this.constructor.name;
|
|
67
|
-
}
|
|
68
|
-
static isOrchestrationError(error) {
|
|
69
|
-
return error instanceof OrchestrationError;
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Get the root business error if it exists
|
|
73
|
-
*/
|
|
74
|
-
getRootBusinessError() {
|
|
75
|
-
let current = this.originalError;
|
|
76
|
-
while (current) {
|
|
77
|
-
if (current instanceof common_1.HttpException &&
|
|
78
|
-
current.getResponse?.()?.category === 'DOMAIN_RULE') {
|
|
79
|
-
return current;
|
|
80
|
-
}
|
|
81
|
-
if (current instanceof OrchestrationError) {
|
|
82
|
-
current = current.originalError;
|
|
83
|
-
}
|
|
84
|
-
else {
|
|
85
|
-
break;
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
return null;
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
exports.OrchestrationError = OrchestrationError;
|
|
92
47
|
//# sourceMappingURL=technical-errors.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"technical-errors.js","sourceRoot":"","sources":["../../../../src/shared-lib/errors/technical-errors.ts"],"names":[],"mappings":";;;AAAA,2CAA2D;AAC3D,kFAAkE;AAClE,+CAAiD;AAEjD;;;GAGG;AACH,MAAa,cAAe,SAAQ,sBAAa;IAC/B,aAAa,CAAU;IACvB,aAAa,CAAS;IACtB,eAAe,CAAU;IAEzC,YACE,OAAe,EACf,aAAqB,EACrB,aAAsB,EACtB,aAAyB,mBAAU,CAAC,qBAAqB,EACzD,kBAA2B,IAAI;QAE/B,2EAA2E;QAC3E,MAAM,aAAa,GAAG,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,8BAA8B,CAAC;QAEjF,KAAK,CACH;YACE,IAAI,EAAE,8BAAgB,CAAC,eAAe;YACtC,OAAO,EAAE,aAAa;YACtB,aAAa;YACb,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,QAAQ,EAAE,0CAAa,CAAC,SAAS;SAClC,EACD,UAAU,CACX,CAAC;QAEF,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,KAAU;QAChC,OAAO,KAAK,YAAY,cAAc,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,OAAe,EAAE,aAAsB;QACxD,OAAO,IAAI,cAAc,CAAC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,mBAAU,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;IACvG,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,OAAe,EAAE,aAAqB,EAAE,aAAsB;QAC1E,OAAO,IAAI,cAAc,CAAC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,mBAAU,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;IAC5G,CAAC;CACF;AAjDD,wCAiDC
|
|
1
|
+
{"version":3,"file":"technical-errors.js","sourceRoot":"","sources":["../../../../src/shared-lib/errors/technical-errors.ts"],"names":[],"mappings":";;;AAAA,2CAA2D;AAC3D,kFAAkE;AAClE,+CAAiD;AAEjD;;;GAGG;AACH,MAAa,cAAe,SAAQ,sBAAa;IAC/B,aAAa,CAAU;IACvB,aAAa,CAAS;IACtB,eAAe,CAAU;IAEzC,YACE,OAAe,EACf,aAAqB,EACrB,aAAsB,EACtB,aAAyB,mBAAU,CAAC,qBAAqB,EACzD,kBAA2B,IAAI;QAE/B,2EAA2E;QAC3E,MAAM,aAAa,GAAG,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,8BAA8B,CAAC;QAEjF,KAAK,CACH;YACE,IAAI,EAAE,8BAAgB,CAAC,eAAe;YACtC,OAAO,EAAE,aAAa;YACtB,aAAa;YACb,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,QAAQ,EAAE,0CAAa,CAAC,SAAS;SAClC,EACD,UAAU,CACX,CAAC;QAEF,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,KAAU;QAChC,OAAO,KAAK,YAAY,cAAc,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,OAAe,EAAE,aAAsB;QACxD,OAAO,IAAI,cAAc,CAAC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,mBAAU,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;IACvG,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,OAAe,EAAE,aAAqB,EAAE,aAAsB;QAC1E,OAAO,IAAI,cAAc,CAAC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,mBAAU,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;IAC5G,CAAC;CACF;AAjDD,wCAiDC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account-selector.vo.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/value-objects/account-selector.vo.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"account-selector.vo.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/value-objects/account-selector.vo.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAI5C,qBAAa,iBAAiB;IAGpB,WAAW,EAAE,gBAAgB,CAAC;IAI9B,SAAS,CAAC,EAAE,MAAM,CAAC;IAKnB,cAAc,CAAC,EAAE,OAAO,CAAC;IAEjC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,kBAAkB,GAAG,iBAAiB;IAwC/D;;;OAGG;IACH,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,iBAAiB;IAQ1D,MAAM,CAAC,oBAAoB,CAAC,WAAW,EAAE,gBAAgB,CAAC,IAAI,GAAG,gBAAgB,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,iBAAiB;IAOjI;;;OAGG;IACH,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB;IAOrD;;;OAGG;IACH,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB;IAO3D;;;OAGG;IACH,MAAM,CAAC,YAAY,IAAI,iBAAiB;gBAO9B,IAAI,EAAE,eAAe;IAQjC;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAyB7B;;;OAGG;IACH,iBAAiB,IAAI,eAAe;CAgCrC"}
|
|
@@ -14,6 +14,7 @@ const class_transformer_1 = require("class-transformer");
|
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
15
|
const enum_1 = require("./../enum");
|
|
16
16
|
const address_value_object_1 = require("./address.value-object");
|
|
17
|
+
const error_factory_1 = require("../../shared-patterns/errors/error-factory");
|
|
17
18
|
class AccountSelectorVo {
|
|
18
19
|
static fromDTO(selector) {
|
|
19
20
|
// Create the appropriate AccountSelector based on accountType
|
|
@@ -22,7 +23,7 @@ class AccountSelectorVo {
|
|
|
22
23
|
case enum_1.AccountOwnerType.USER:
|
|
23
24
|
case enum_1.AccountOwnerType.BUSINESS:
|
|
24
25
|
if (!selector.accountId) {
|
|
25
|
-
throw
|
|
26
|
+
throw error_factory_1.ErrorFactory.requiredField(`accountId for ${selector.accountType} account selector`);
|
|
26
27
|
}
|
|
27
28
|
accountSelectorData = {
|
|
28
29
|
accountType: selector.accountType,
|
|
@@ -31,7 +32,7 @@ class AccountSelectorVo {
|
|
|
31
32
|
break;
|
|
32
33
|
case enum_1.AccountOwnerType.EXTERNAL:
|
|
33
34
|
if (!selector.accountAddress) {
|
|
34
|
-
throw
|
|
35
|
+
throw error_factory_1.ErrorFactory.requiredField('accountAddress for external account selector');
|
|
35
36
|
}
|
|
36
37
|
accountSelectorData = {
|
|
37
38
|
accountType: selector.accountType,
|
|
@@ -44,7 +45,8 @@ class AccountSelectorVo {
|
|
|
44
45
|
};
|
|
45
46
|
break;
|
|
46
47
|
default:
|
|
47
|
-
|
|
48
|
+
const accountTypeValue = selector.accountType === undefined ? 'undefined' : selector.accountType;
|
|
49
|
+
throw error_factory_1.ErrorFactory.invalidInput('accountType', `Unsupported account type: ${accountTypeValue}. Supported types: ${Object.values(enum_1.AccountOwnerType).join(', ')}`);
|
|
48
50
|
}
|
|
49
51
|
return new AccountSelectorVo(accountSelectorData);
|
|
50
52
|
}
|
|
@@ -110,19 +112,20 @@ class AccountSelectorVo {
|
|
|
110
112
|
case enum_1.AccountOwnerType.USER:
|
|
111
113
|
case enum_1.AccountOwnerType.BUSINESS:
|
|
112
114
|
if (!this.accountId) {
|
|
113
|
-
throw
|
|
115
|
+
throw error_factory_1.ErrorFactory.requiredField(`accountId for ${this.accountType} account selector`);
|
|
114
116
|
}
|
|
115
117
|
break;
|
|
116
118
|
case enum_1.AccountOwnerType.EXTERNAL:
|
|
117
119
|
if (!this.accountAddress) {
|
|
118
|
-
throw
|
|
120
|
+
throw error_factory_1.ErrorFactory.requiredField('accountAddress for external account selector');
|
|
119
121
|
}
|
|
120
122
|
break;
|
|
121
123
|
case enum_1.AccountOwnerType.TENANT:
|
|
122
124
|
// Tenant context resolved from request - no validation needed
|
|
123
125
|
break;
|
|
124
126
|
default:
|
|
125
|
-
|
|
127
|
+
const accountTypeValue = this.accountType === undefined ? 'undefined' : this.accountType;
|
|
128
|
+
throw error_factory_1.ErrorFactory.invalidInput('accountType', `Unsupported account type: ${accountTypeValue}. Supported types: ${Object.values(enum_1.AccountOwnerType).join(', ')}`);
|
|
126
129
|
}
|
|
127
130
|
}
|
|
128
131
|
/**
|
|
@@ -134,7 +137,7 @@ class AccountSelectorVo {
|
|
|
134
137
|
case enum_1.AccountOwnerType.USER:
|
|
135
138
|
case enum_1.AccountOwnerType.BUSINESS:
|
|
136
139
|
if (!this.accountId) {
|
|
137
|
-
throw
|
|
140
|
+
throw error_factory_1.ErrorFactory.requiredField(`accountId for ${this.accountType} account selector`);
|
|
138
141
|
}
|
|
139
142
|
return {
|
|
140
143
|
accountType: this.accountType,
|
|
@@ -142,7 +145,7 @@ class AccountSelectorVo {
|
|
|
142
145
|
};
|
|
143
146
|
case enum_1.AccountOwnerType.EXTERNAL:
|
|
144
147
|
if (!this.accountAddress) {
|
|
145
|
-
throw
|
|
148
|
+
throw error_factory_1.ErrorFactory.requiredField('accountAddress for external account selector');
|
|
146
149
|
}
|
|
147
150
|
return {
|
|
148
151
|
accountType: this.accountType,
|
|
@@ -154,7 +157,8 @@ class AccountSelectorVo {
|
|
|
154
157
|
accountType: this.accountType
|
|
155
158
|
};
|
|
156
159
|
default:
|
|
157
|
-
|
|
160
|
+
const accountTypeValue = this.accountType === undefined ? 'undefined' : this.accountType;
|
|
161
|
+
throw error_factory_1.ErrorFactory.invalidInput('accountType', `Unsupported account type: ${accountTypeValue}. Supported types: ${Object.values(enum_1.AccountOwnerType).join(', ')}`);
|
|
158
162
|
}
|
|
159
163
|
}
|
|
160
164
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account-selector.vo.js","sourceRoot":"","sources":["../../../../src/shared-lib/value-objects/account-selector.vo.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAyC;AACzC,qDAA2F;AAC3F,oCAA6C;AAE7C,iEAAiD;
|
|
1
|
+
{"version":3,"file":"account-selector.vo.js","sourceRoot":"","sources":["../../../../src/shared-lib/value-objects/account-selector.vo.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"address.value-object.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/value-objects/address.value-object.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"address.value-object.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/value-objects/address.value-object.ts"],"names":[],"mappings":"AAIA,qBAAa,OAAO;IAChB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;gBAEnB,KAAK,EAAE,MAAM;IAOzB,QAAQ,IAAI,MAAM;IAIlB,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IAI/B,OAAO,CAAC,cAAc;CAIvB"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Address = void 0;
|
|
4
|
+
const error_factory_1 = require("../../shared-patterns/errors/error-factory");
|
|
4
5
|
class Address {
|
|
5
6
|
value;
|
|
6
7
|
constructor(value) {
|
|
7
8
|
if (!this.isValidAddress(value)) {
|
|
8
|
-
throw
|
|
9
|
+
throw error_factory_1.ErrorFactory.invalidFormat('address', `Valid Ethereum address (0x + 40 hex characters). Received: "${value}" with length ${value?.length || 0}`);
|
|
9
10
|
}
|
|
10
11
|
this.value = value;
|
|
11
12
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"address.value-object.js","sourceRoot":"","sources":["../../../../src/shared-lib/value-objects/address.value-object.ts"],"names":[],"mappings":";;;AAEA,MAAa,OAAO;IACC,KAAK,CAAS;IAE/B,YAAY,KAAa;QACvB,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,
|
|
1
|
+
{"version":3,"file":"address.value-object.js","sourceRoot":"","sources":["../../../../src/shared-lib/value-objects/address.value-object.ts"],"names":[],"mappings":";;;AAEA,8EAA0E;AAE1E,MAAa,OAAO;IACC,KAAK,CAAS;IAE/B,YAAY,KAAa;QACvB,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,4BAAY,CAAC,aAAa,CAAC,SAAS,EAAE,+DAA+D,KAAK,iBAAiB,KAAK,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC,CAAC;QACzJ,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,MAAM,CAAC,KAAc;QACnB,OAAO,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC;IACpC,CAAC;IAEO,cAAc,CAAC,KAAa;QAClC,yEAAyE;QACzE,OAAO,KAAK,CAAC,MAAM,KAAK,EAAE,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACvD,CAAC;CACF;AAtBH,0BAsBG"}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
import { UserNotFoundError, BusinessNotFoundError, TokenNotFoundError, TransactionNotFoundError, AuthenticationRequiredError, InvalidTokenError, TokenExpiredError, AuthorizationFailedError, InsufficientBalanceError, InvalidInputError, RequiredFieldError, InvalidFormatError, SystemError, ExternalServiceError, ConfigurationMissingError, TokenNotActiveError, TokenIdRequiredError, TokenTypeNotFoundError, TokenUnitNotFoundError, TransactionAlreadyCompletedError, TransactionNotPendingError, TransactionValidationError, SigningAccountValidationError, SigningAccountNotFoundError, SigningAccountAlreadyExistsError, KeyGenerationError, CampaignNotFoundError, GeographicRestrictionError, LocationVerificationRequiredError, RedemptionLimitReachedError, UserStatusRestrictedError, WalletNotFoundError, WalletMissingSigningError, SmartWalletProcessingError, BusinessNotMinterError, UnexpectedValidationScenarioError } from '../../shared-lib/errors';
|
|
2
|
+
/**
|
|
3
|
+
* Universal Error Factory for NestJS Applications
|
|
4
|
+
*
|
|
5
|
+
* This factory provides a clean, discoverable API for creating errors while
|
|
6
|
+
* maintaining the domain error classes as the single source of truth.
|
|
7
|
+
*
|
|
8
|
+
* Architecture:
|
|
9
|
+
* - Domain files define canonical error classes (exported as types for frontend)
|
|
10
|
+
* - Factory methods instantiate these domain classes (no duplication)
|
|
11
|
+
* - NestJS apps use factory for clean developer experience
|
|
12
|
+
* - Frontend devs import types from domain classes
|
|
13
|
+
*/
|
|
14
|
+
export declare class ErrorFactory {
|
|
15
|
+
/**
|
|
16
|
+
* Resource "not found" patterns
|
|
17
|
+
* Uses domain classes internally for consistency
|
|
18
|
+
*/
|
|
19
|
+
static userNotFound(identifier: string): UserNotFoundError;
|
|
20
|
+
static businessNotFound(identifier: string): BusinessNotFoundError;
|
|
21
|
+
static tokenNotFound(tokenId: string): TokenNotFoundError;
|
|
22
|
+
static transactionNotFound(transactionId: string): TransactionNotFoundError;
|
|
23
|
+
static campaignNotFound(campaignId: string): CampaignNotFoundError;
|
|
24
|
+
static tokenUnitNotFound(tokenUnitId?: string): TokenUnitNotFoundError;
|
|
25
|
+
/**
|
|
26
|
+
* Authentication & Authorization patterns
|
|
27
|
+
*/
|
|
28
|
+
static authRequired(resource?: string): AuthenticationRequiredError;
|
|
29
|
+
static invalidToken(reason?: string): InvalidTokenError;
|
|
30
|
+
static tokenExpired(): TokenExpiredError;
|
|
31
|
+
static forbidden(action: string, resource: string): AuthorizationFailedError;
|
|
32
|
+
/**
|
|
33
|
+
* Business rule patterns
|
|
34
|
+
*/
|
|
35
|
+
static geographicRestriction(countryCode: string, resource?: string): GeographicRestrictionError;
|
|
36
|
+
static locationRequired(resource?: string): LocationVerificationRequiredError;
|
|
37
|
+
static limitReached(limitType: 'max_redemption' | 'user_limit'): RedemptionLimitReachedError;
|
|
38
|
+
static userStatusRestricted(): UserStatusRestrictedError;
|
|
39
|
+
/**
|
|
40
|
+
* Validation patterns
|
|
41
|
+
*/
|
|
42
|
+
static invalidInput(field: string, reason?: string): InvalidInputError;
|
|
43
|
+
static requiredField(field: string): RequiredFieldError;
|
|
44
|
+
static invalidFormat(field: string, expectedFormat: string): InvalidFormatError;
|
|
45
|
+
/**
|
|
46
|
+
* Financial/Balance patterns
|
|
47
|
+
*/
|
|
48
|
+
static insufficientBalance(required: string, available: string): InsufficientBalanceError;
|
|
49
|
+
/**
|
|
50
|
+
* Technical/Infrastructure patterns
|
|
51
|
+
*/
|
|
52
|
+
static systemError(operation: string, details: string): SystemError;
|
|
53
|
+
static externalServiceError(serviceName: string, operation: string): ExternalServiceError;
|
|
54
|
+
static configMissing(configKey: string): ConfigurationMissingError;
|
|
55
|
+
/**
|
|
56
|
+
* Token-specific patterns
|
|
57
|
+
*/
|
|
58
|
+
static tokenNotActive(tokenId: string): TokenNotActiveError;
|
|
59
|
+
static tokenIdRequired(tokenType: string): TokenIdRequiredError;
|
|
60
|
+
static tokenTypeNotFound(tokenType: string): TokenTypeNotFoundError;
|
|
61
|
+
/**
|
|
62
|
+
* Transaction-specific patterns
|
|
63
|
+
*/
|
|
64
|
+
static transactionAlreadyCompleted(transactionId: string, currentStatus: string): TransactionAlreadyCompletedError;
|
|
65
|
+
static transactionNotPending(transactionId: string, currentStatus: string): TransactionNotPendingError;
|
|
66
|
+
static transactionValidation(field: string, reason: string): TransactionValidationError;
|
|
67
|
+
/**
|
|
68
|
+
* Signing account patterns
|
|
69
|
+
*/
|
|
70
|
+
static signingAccountValidation(field: string, reason: string): SigningAccountValidationError;
|
|
71
|
+
static signingAccountNotFound(identifier: string): SigningAccountNotFoundError;
|
|
72
|
+
static signingAccountAlreadyExists(accountAddress: string): SigningAccountAlreadyExistsError;
|
|
73
|
+
static keyGeneration(reason: string): KeyGenerationError;
|
|
74
|
+
/**
|
|
75
|
+
* Wallet patterns
|
|
76
|
+
*/
|
|
77
|
+
static walletNotFound(ownerAddress: string): WalletNotFoundError;
|
|
78
|
+
static walletMissingSigning(walletAddress: string, reason: string): WalletMissingSigningError;
|
|
79
|
+
static smartWalletProcessing(reason: string): SmartWalletProcessingError;
|
|
80
|
+
/**
|
|
81
|
+
* Business patterns
|
|
82
|
+
*/
|
|
83
|
+
static businessNotMinter(businessId: string, tokenAddress: string): BusinessNotMinterError;
|
|
84
|
+
/**
|
|
85
|
+
* Validation patterns
|
|
86
|
+
*/
|
|
87
|
+
static unexpectedValidationScenario(context: string): UnexpectedValidationScenarioError;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Convenient shortcut object for the most commonly used error patterns
|
|
91
|
+
* Provides clean, discoverable API for NestJS applications
|
|
92
|
+
*/
|
|
93
|
+
export declare const Errors: {
|
|
94
|
+
userNotFound: (id: string) => UserNotFoundError;
|
|
95
|
+
businessNotFound: (id: string) => BusinessNotFoundError;
|
|
96
|
+
tokenNotFound: (id: string) => TokenNotFoundError;
|
|
97
|
+
tokenUnitNotFound: (id?: string) => TokenUnitNotFoundError;
|
|
98
|
+
transactionNotFound: (id: string) => TransactionNotFoundError;
|
|
99
|
+
campaignNotFound: (id: string) => CampaignNotFoundError;
|
|
100
|
+
authRequired: (resource?: string) => AuthenticationRequiredError;
|
|
101
|
+
invalidToken: (reason?: string) => InvalidTokenError;
|
|
102
|
+
tokenExpired: () => TokenExpiredError;
|
|
103
|
+
forbidden: (action: string, resource: string) => AuthorizationFailedError;
|
|
104
|
+
geographicRestriction: (countryCode: string, resource?: string) => GeographicRestrictionError;
|
|
105
|
+
locationRequired: (resource?: string) => LocationVerificationRequiredError;
|
|
106
|
+
limitReached: (limitType: "max_redemption" | "user_limit") => RedemptionLimitReachedError;
|
|
107
|
+
userStatusRestricted: () => UserStatusRestrictedError;
|
|
108
|
+
invalidInput: (field: string, reason?: string) => InvalidInputError;
|
|
109
|
+
requiredField: (field: string) => RequiredFieldError;
|
|
110
|
+
invalidFormat: (field: string, format: string) => InvalidFormatError;
|
|
111
|
+
insufficientBalance: (required: string, available: string) => InsufficientBalanceError;
|
|
112
|
+
systemError: (operation: string, details: string) => SystemError;
|
|
113
|
+
externalServiceError: (service: string, operation: string) => ExternalServiceError;
|
|
114
|
+
configMissing: (key: string) => ConfigurationMissingError;
|
|
115
|
+
tokenNotActive: (id: string) => TokenNotActiveError;
|
|
116
|
+
tokenIdRequired: (type: string) => TokenIdRequiredError;
|
|
117
|
+
tokenTypeNotFound: (type: string) => TokenTypeNotFoundError;
|
|
118
|
+
transactionAlreadyCompleted: (id: string, status: string) => TransactionAlreadyCompletedError;
|
|
119
|
+
transactionNotPending: (id: string, status: string) => TransactionNotPendingError;
|
|
120
|
+
transactionValidation: (field: string, reason: string) => TransactionValidationError;
|
|
121
|
+
signingAccountValidation: (field: string, reason: string) => SigningAccountValidationError;
|
|
122
|
+
signingAccountNotFound: (id: string) => SigningAccountNotFoundError;
|
|
123
|
+
signingAccountAlreadyExists: (address: string) => SigningAccountAlreadyExistsError;
|
|
124
|
+
keyGeneration: (reason: string) => KeyGenerationError;
|
|
125
|
+
walletNotFound: (address: string) => WalletNotFoundError;
|
|
126
|
+
walletMissingSigning: (address: string, reason: string) => WalletMissingSigningError;
|
|
127
|
+
smartWalletProcessing: (reason: string) => SmartWalletProcessingError;
|
|
128
|
+
businessNotMinter: (businessId: string, tokenAddress: string) => BusinessNotMinterError;
|
|
129
|
+
unexpectedValidationScenario: (context: string) => UnexpectedValidationScenarioError;
|
|
130
|
+
};
|
|
131
|
+
/**
|
|
132
|
+
* Advanced Error Builder for complex scenarios
|
|
133
|
+
* Still references domain classes when possible
|
|
134
|
+
*/
|
|
135
|
+
export declare class ErrorBuilder {
|
|
136
|
+
private config;
|
|
137
|
+
static create(): ErrorBuilder;
|
|
138
|
+
/**
|
|
139
|
+
* Use a specific domain error class
|
|
140
|
+
*/
|
|
141
|
+
useClass(errorClass: any, ...params: any[]): ErrorBuilder;
|
|
142
|
+
/**
|
|
143
|
+
* Build the error instance
|
|
144
|
+
*/
|
|
145
|
+
build(): Error;
|
|
146
|
+
buildUserNotFound(id: string): UserNotFoundError;
|
|
147
|
+
buildBusinessNotFound(id: string): BusinessNotFoundError;
|
|
148
|
+
buildAuthRequired(resource: string): AuthenticationRequiredError;
|
|
149
|
+
}
|
|
150
|
+
//# sourceMappingURL=error-factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-factory.d.ts","sourceRoot":"","sources":["../../../../src/shared-patterns/errors/error-factory.ts"],"names":[],"mappings":"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"}
|