@explorins/pers-shared 2.1.9 → 2.1.11
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/README.md +62 -13
- package/dist/cjs/dto/auth.dto.d.ts +2 -6
- package/dist/cjs/dto/auth.dto.d.ts.map +1 -1
- package/dist/cjs/dto/auth.dto.js +17 -23
- package/dist/cjs/dto/auth.dto.js.map +1 -1
- package/dist/cjs/index.d.ts +1 -3
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +0 -4
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/interfaces/token-transaction-input-data.interface.d.ts +12 -3
- package/dist/cjs/interfaces/token-transaction-input-data.interface.d.ts.map +1 -1
- package/dist/cjs/internal/database/index.d.ts +6 -0
- package/dist/cjs/internal/database/index.d.ts.map +1 -0
- package/dist/cjs/internal/database/index.js +24 -0
- package/dist/cjs/internal/database/index.js.map +1 -0
- package/dist/cjs/internal/database/models/base.model.d.ts +7 -0
- package/dist/cjs/internal/database/models/base.model.d.ts.map +1 -0
- package/dist/cjs/internal/database/models/base.model.js +11 -0
- package/dist/cjs/internal/database/models/base.model.js.map +1 -0
- package/dist/cjs/internal/database/models/fixture.model.d.ts +4 -0
- package/dist/cjs/internal/database/models/fixture.model.d.ts.map +1 -0
- package/dist/cjs/internal/database/models/fixture.model.js +8 -0
- package/dist/cjs/internal/database/models/fixture.model.js.map +1 -0
- package/dist/cjs/internal/database/schemas/fixture-fields.schema.d.ts +5 -0
- package/dist/cjs/internal/database/schemas/fixture-fields.schema.d.ts.map +1 -0
- package/dist/cjs/internal/database/schemas/fixture-fields.schema.js +11 -0
- package/dist/cjs/internal/database/schemas/fixture-fields.schema.js.map +1 -0
- package/dist/cjs/internal/database/schemas/shared-fields.schema.d.ts +44 -0
- package/dist/cjs/internal/database/schemas/shared-fields.schema.d.ts.map +1 -0
- package/dist/cjs/internal/database/schemas/shared-fields.schema.js +64 -0
- package/dist/cjs/internal/database/schemas/shared-fields.schema.js.map +1 -0
- package/dist/cjs/internal/database/schemas/tenant-fields.schema.d.ts +51 -0
- package/dist/cjs/internal/database/schemas/tenant-fields.schema.d.ts.map +1 -0
- package/dist/cjs/internal/database/schemas/tenant-fields.schema.js +57 -0
- package/dist/cjs/internal/database/schemas/tenant-fields.schema.js.map +1 -0
- package/dist/cjs/internal/enums/lambda.enum.d.ts +28 -0
- package/dist/cjs/internal/enums/lambda.enum.d.ts.map +1 -0
- package/dist/cjs/internal/enums/lambda.enum.js +34 -0
- package/dist/cjs/internal/enums/lambda.enum.js.map +1 -0
- package/dist/cjs/internal/exceptions/base/error-classification-enums.d.ts +118 -0
- package/dist/cjs/internal/exceptions/base/error-classification-enums.d.ts.map +1 -0
- package/dist/cjs/internal/exceptions/base/error-classification-enums.js +111 -0
- package/dist/cjs/internal/exceptions/base/error-classification-enums.js.map +1 -0
- package/dist/cjs/internal/exceptions/base/error-classification.interface.d.ts +48 -0
- package/dist/cjs/internal/exceptions/base/error-classification.interface.d.ts.map +1 -0
- package/dist/cjs/internal/exceptions/base/error-classification.interface.js +6 -0
- package/dist/cjs/internal/exceptions/base/error-classification.interface.js.map +1 -0
- package/dist/cjs/internal/exceptions/base/error-classifier.d.ts +23 -0
- package/dist/cjs/internal/exceptions/base/error-classifier.d.ts.map +1 -0
- package/dist/cjs/internal/exceptions/base/error-classifier.js +149 -0
- package/dist/cjs/internal/exceptions/base/error-classifier.js.map +1 -0
- package/dist/cjs/internal/exceptions/index.d.ts +3 -0
- package/dist/cjs/internal/exceptions/index.d.ts.map +1 -0
- package/dist/cjs/internal/exceptions/index.js +24 -0
- package/dist/cjs/internal/exceptions/index.js.map +1 -0
- package/dist/cjs/internal/functions/crypto.functions.d.ts +16 -0
- package/dist/cjs/internal/functions/crypto.functions.d.ts.map +1 -0
- package/dist/cjs/internal/functions/crypto.functions.js +110 -0
- package/dist/cjs/internal/functions/crypto.functions.js.map +1 -0
- package/dist/cjs/internal/functions/helper.functions.d.ts +10 -0
- package/dist/cjs/internal/functions/helper.functions.d.ts.map +1 -0
- package/dist/cjs/internal/functions/helper.functions.js +38 -0
- package/dist/cjs/internal/functions/helper.functions.js.map +1 -0
- package/dist/cjs/internal/functions/index.d.ts +4 -0
- package/dist/cjs/internal/functions/index.d.ts.map +1 -0
- package/dist/cjs/internal/functions/index.js +21 -0
- package/dist/cjs/internal/functions/index.js.map +1 -0
- package/dist/cjs/internal/functions/request.functions.d.ts +14 -0
- package/dist/cjs/internal/functions/request.functions.d.ts.map +1 -0
- package/dist/cjs/internal/functions/request.functions.js +69 -0
- package/dist/cjs/internal/functions/request.functions.js.map +1 -0
- package/dist/cjs/internal/index.d.ts +14 -0
- package/dist/cjs/internal/index.d.ts.map +1 -0
- package/dist/cjs/internal/index.js +42 -0
- package/dist/cjs/internal/index.js.map +1 -0
- package/dist/cjs/internal/interfaces/index.d.ts +3 -0
- package/dist/cjs/internal/interfaces/index.d.ts.map +1 -0
- package/dist/cjs/internal/interfaces/index.js +19 -0
- package/dist/cjs/internal/interfaces/index.js.map +1 -0
- package/dist/cjs/internal/interfaces/request.interface.d.ts +21 -0
- package/dist/cjs/internal/interfaces/request.interface.d.ts.map +1 -0
- package/dist/cjs/internal/interfaces/request.interface.js +15 -0
- package/dist/cjs/internal/interfaces/request.interface.js.map +1 -0
- package/dist/cjs/internal/interfaces/stripe-payment-intent-metadata.interface.d.ts +9 -0
- package/dist/cjs/internal/interfaces/stripe-payment-intent-metadata.interface.d.ts.map +1 -0
- package/dist/cjs/internal/interfaces/stripe-payment-intent-metadata.interface.js +3 -0
- package/dist/cjs/internal/interfaces/stripe-payment-intent-metadata.interface.js.map +1 -0
- package/dist/cjs/internal/internal-index.d.ts +8 -0
- package/dist/cjs/internal/internal-index.d.ts.map +1 -0
- package/dist/cjs/internal/internal-index.js +33 -0
- package/dist/cjs/internal/internal-index.js.map +1 -0
- package/dist/cjs/internal/orchestrators/base-orchestrator.d.ts +90 -0
- package/dist/cjs/internal/orchestrators/base-orchestrator.d.ts.map +1 -0
- package/dist/cjs/internal/orchestrators/base-orchestrator.js +124 -0
- package/dist/cjs/internal/orchestrators/base-orchestrator.js.map +1 -0
- package/dist/cjs/internal/orchestrators/base-workflow.d.ts +50 -0
- package/dist/cjs/internal/orchestrators/base-workflow.d.ts.map +1 -0
- package/dist/cjs/internal/orchestrators/base-workflow.js +68 -0
- package/dist/cjs/internal/orchestrators/base-workflow.js.map +1 -0
- package/dist/cjs/internal/orchestrators/index.d.ts +26 -0
- package/dist/cjs/internal/orchestrators/index.d.ts.map +1 -0
- package/dist/cjs/internal/orchestrators/index.js +46 -0
- package/dist/cjs/internal/orchestrators/index.js.map +1 -0
- package/dist/cjs/internal/utils/index.d.ts +2 -0
- package/dist/cjs/internal/utils/index.d.ts.map +1 -0
- package/dist/cjs/internal/utils/index.js +19 -0
- package/dist/cjs/internal/utils/index.js.map +1 -0
- package/dist/cjs/internal/utils/validation.utils.d.ts +49 -0
- package/dist/cjs/internal/utils/validation.utils.d.ts.map +1 -0
- package/dist/cjs/internal/utils/validation.utils.js +76 -0
- package/dist/cjs/internal/utils/validation.utils.js.map +1 -0
- package/dist/cjs/value-objects/token-transaction-input.vo.d.ts +2 -3
- package/dist/cjs/value-objects/token-transaction-input.vo.d.ts.map +1 -1
- package/dist/cjs/value-objects/token-transaction-input.vo.js +12 -20
- package/dist/cjs/value-objects/token-transaction-input.vo.js.map +1 -1
- package/dist/esm/dto/auth.dto.d.ts +2 -6
- package/dist/esm/dto/auth.dto.d.ts.map +1 -1
- package/dist/esm/dto/auth.dto.js +14 -18
- package/dist/esm/dto/auth.dto.js.map +1 -1
- package/dist/esm/index.d.ts +1 -3
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +0 -4
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/interfaces/token-transaction-input-data.interface.d.ts +12 -3
- package/dist/esm/interfaces/token-transaction-input-data.interface.d.ts.map +1 -1
- package/dist/esm/internal/database/index.d.ts +6 -0
- package/dist/esm/internal/database/index.d.ts.map +1 -0
- package/dist/esm/internal/database/index.js +8 -0
- package/dist/esm/internal/database/index.js.map +1 -0
- package/dist/esm/internal/database/models/base.model.d.ts +7 -0
- package/dist/esm/internal/database/models/base.model.d.ts.map +1 -0
- package/dist/esm/internal/database/models/base.model.js +7 -0
- package/dist/esm/internal/database/models/base.model.js.map +1 -0
- package/dist/esm/internal/database/models/fixture.model.d.ts +4 -0
- package/dist/esm/internal/database/models/fixture.model.d.ts.map +1 -0
- package/dist/esm/internal/database/models/fixture.model.js +4 -0
- package/dist/esm/internal/database/models/fixture.model.js.map +1 -0
- package/dist/esm/internal/database/schemas/fixture-fields.schema.d.ts +5 -0
- package/dist/esm/internal/database/schemas/fixture-fields.schema.d.ts.map +1 -0
- package/dist/esm/internal/database/schemas/fixture-fields.schema.js +8 -0
- package/dist/esm/internal/database/schemas/fixture-fields.schema.js.map +1 -0
- package/dist/esm/internal/database/schemas/shared-fields.schema.d.ts +44 -0
- package/dist/esm/internal/database/schemas/shared-fields.schema.d.ts.map +1 -0
- package/dist/esm/internal/database/schemas/shared-fields.schema.js +61 -0
- package/dist/esm/internal/database/schemas/shared-fields.schema.js.map +1 -0
- package/dist/esm/internal/database/schemas/tenant-fields.schema.d.ts +51 -0
- package/dist/esm/internal/database/schemas/tenant-fields.schema.d.ts.map +1 -0
- package/dist/esm/internal/database/schemas/tenant-fields.schema.js +54 -0
- package/dist/esm/internal/database/schemas/tenant-fields.schema.js.map +1 -0
- package/dist/esm/internal/enums/lambda.enum.d.ts +28 -0
- package/dist/esm/internal/enums/lambda.enum.d.ts.map +1 -0
- package/dist/esm/internal/enums/lambda.enum.js +31 -0
- package/dist/esm/internal/enums/lambda.enum.js.map +1 -0
- package/dist/esm/internal/exceptions/base/error-classification-enums.d.ts +118 -0
- package/dist/esm/internal/exceptions/base/error-classification-enums.d.ts.map +1 -0
- package/dist/esm/internal/exceptions/base/error-classification-enums.js +108 -0
- package/dist/esm/internal/exceptions/base/error-classification-enums.js.map +1 -0
- package/dist/esm/internal/exceptions/base/error-classification.interface.d.ts +48 -0
- package/dist/esm/internal/exceptions/base/error-classification.interface.d.ts.map +1 -0
- package/dist/esm/internal/exceptions/base/error-classification.interface.js +5 -0
- package/dist/esm/internal/exceptions/base/error-classification.interface.js.map +1 -0
- package/dist/esm/internal/exceptions/base/error-classifier.d.ts +23 -0
- package/dist/esm/internal/exceptions/base/error-classifier.d.ts.map +1 -0
- package/dist/esm/internal/exceptions/base/error-classifier.js +145 -0
- package/dist/esm/internal/exceptions/base/error-classifier.js.map +1 -0
- package/dist/esm/internal/exceptions/index.d.ts +3 -0
- package/dist/esm/internal/exceptions/index.d.ts.map +1 -0
- package/dist/esm/internal/exceptions/index.js +6 -0
- package/dist/esm/internal/exceptions/index.js.map +1 -0
- package/dist/esm/internal/functions/crypto.functions.d.ts +16 -0
- package/dist/esm/internal/functions/crypto.functions.d.ts.map +1 -0
- package/dist/esm/internal/functions/crypto.functions.js +67 -0
- package/dist/esm/internal/functions/crypto.functions.js.map +1 -0
- package/dist/esm/internal/functions/helper.functions.d.ts +10 -0
- package/dist/esm/internal/functions/helper.functions.d.ts.map +1 -0
- package/dist/esm/internal/functions/helper.functions.js +32 -0
- package/dist/esm/internal/functions/helper.functions.js.map +1 -0
- package/dist/esm/internal/functions/index.d.ts +4 -0
- package/dist/esm/internal/functions/index.d.ts.map +1 -0
- package/dist/esm/internal/functions/index.js +5 -0
- package/dist/esm/internal/functions/index.js.map +1 -0
- package/dist/esm/internal/functions/request.functions.d.ts +14 -0
- package/dist/esm/internal/functions/request.functions.d.ts.map +1 -0
- package/dist/esm/internal/functions/request.functions.js +61 -0
- package/dist/esm/internal/functions/request.functions.js.map +1 -0
- package/dist/esm/internal/index.d.ts +14 -0
- package/dist/esm/internal/index.d.ts.map +1 -0
- package/dist/esm/internal/index.js +26 -0
- package/dist/esm/internal/index.js.map +1 -0
- package/dist/esm/internal/interfaces/index.d.ts +3 -0
- package/dist/esm/internal/interfaces/index.d.ts.map +1 -0
- package/dist/esm/internal/interfaces/index.js +3 -0
- package/dist/esm/internal/interfaces/index.js.map +1 -0
- package/dist/esm/internal/interfaces/request.interface.d.ts +21 -0
- package/dist/esm/internal/interfaces/request.interface.d.ts.map +1 -0
- package/dist/esm/internal/interfaces/request.interface.js +11 -0
- package/dist/esm/internal/interfaces/request.interface.js.map +1 -0
- package/dist/esm/internal/interfaces/stripe-payment-intent-metadata.interface.d.ts +9 -0
- package/dist/esm/internal/interfaces/stripe-payment-intent-metadata.interface.d.ts.map +1 -0
- package/dist/esm/internal/interfaces/stripe-payment-intent-metadata.interface.js +2 -0
- package/dist/esm/internal/interfaces/stripe-payment-intent-metadata.interface.js.map +1 -0
- package/dist/esm/internal/internal-index.d.ts +8 -0
- package/dist/esm/internal/internal-index.d.ts.map +1 -0
- package/dist/esm/internal/internal-index.js +17 -0
- package/dist/esm/internal/internal-index.js.map +1 -0
- package/dist/esm/internal/orchestrators/base-orchestrator.d.ts +90 -0
- package/dist/esm/internal/orchestrators/base-orchestrator.d.ts.map +1 -0
- package/dist/esm/internal/orchestrators/base-orchestrator.js +116 -0
- package/dist/esm/internal/orchestrators/base-orchestrator.js.map +1 -0
- package/dist/esm/internal/orchestrators/base-workflow.d.ts +50 -0
- package/dist/esm/internal/orchestrators/base-workflow.d.ts.map +1 -0
- package/dist/esm/internal/orchestrators/base-workflow.js +64 -0
- package/dist/esm/internal/orchestrators/base-workflow.js.map +1 -0
- package/dist/esm/internal/orchestrators/index.d.ts +26 -0
- package/dist/esm/internal/orchestrators/index.d.ts.map +1 -0
- package/dist/esm/internal/orchestrators/index.js +30 -0
- package/dist/esm/internal/orchestrators/index.js.map +1 -0
- package/dist/esm/internal/utils/index.d.ts +2 -0
- package/dist/esm/internal/utils/index.d.ts.map +1 -0
- package/dist/esm/internal/utils/index.js +3 -0
- package/dist/esm/internal/utils/index.js.map +1 -0
- package/dist/esm/internal/utils/validation.utils.d.ts +49 -0
- package/dist/esm/internal/utils/validation.utils.d.ts.map +1 -0
- package/dist/esm/internal/utils/validation.utils.js +70 -0
- package/dist/esm/internal/utils/validation.utils.js.map +1 -0
- package/dist/esm/value-objects/token-transaction-input.vo.d.ts +2 -3
- package/dist/esm/value-objects/token-transaction-input.vo.d.ts.map +1 -1
- package/dist/esm/value-objects/token-transaction-input.vo.js +10 -18
- package/dist/esm/value-objects/token-transaction-input.vo.js.map +1 -1
- package/package.json +7 -1
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseOrchestrator = void 0;
|
|
4
|
+
exports.createSuccessResult = createSuccessResult;
|
|
5
|
+
exports.createErrorResult = createErrorResult;
|
|
6
|
+
exports.isSuccessResult = isSuccessResult;
|
|
7
|
+
exports.unwrapResult = unwrapResult;
|
|
8
|
+
const common_1 = require("@nestjs/common");
|
|
9
|
+
const pers_shared_1 = require("@explorins/pers-shared");
|
|
10
|
+
/**
|
|
11
|
+
* BaseOrchestrator - Centralized Application Layer Orchestration Pattern
|
|
12
|
+
*
|
|
13
|
+
* @description Foundation for all domain orchestrators following PERS DDD principles:
|
|
14
|
+
* - Application layer orchestrates cross-domain operations via CQRS
|
|
15
|
+
* - Domain services contain pure business logic only
|
|
16
|
+
* - Microservice boundary preparation through clean abstractions
|
|
17
|
+
* - Consistent patterns across all domains (transaction, user, wallet, token, etc.)
|
|
18
|
+
* - Smart error handling that preserves business context
|
|
19
|
+
*
|
|
20
|
+
* @usage Extend this class in domain-specific orchestrators:
|
|
21
|
+
* ```typescript
|
|
22
|
+
* @Injectable()
|
|
23
|
+
* export class UserOrchestrator extends BaseOrchestrator {
|
|
24
|
+
* constructor(commandBus: CommandBus, queryBus: QueryBus) {
|
|
25
|
+
* super(commandBus, queryBus, UserOrchestrator.name);
|
|
26
|
+
* }
|
|
27
|
+
* }
|
|
28
|
+
* ```
|
|
29
|
+
*
|
|
30
|
+
* @library @explorins/pers-shared
|
|
31
|
+
* @version 2.0.0
|
|
32
|
+
* @since August 2025
|
|
33
|
+
*/
|
|
34
|
+
class BaseOrchestrator {
|
|
35
|
+
commandBus;
|
|
36
|
+
queryBus;
|
|
37
|
+
logger;
|
|
38
|
+
constructor(commandBus, queryBus, loggerContext) {
|
|
39
|
+
this.commandBus = commandBus;
|
|
40
|
+
this.queryBus = queryBus;
|
|
41
|
+
this.logger = new common_1.Logger(loggerContext);
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Enhanced error handling that preserves business errors while wrapping technical errors
|
|
45
|
+
* Business errors (with category: DOMAIN_RULE) are passed through unchanged
|
|
46
|
+
* Technical errors are wrapped in OrchestrationError for consistent handling
|
|
47
|
+
*/
|
|
48
|
+
async executeWithErrorHandling(operation, operationName, context) {
|
|
49
|
+
try {
|
|
50
|
+
this.logger.debug(`🚀 Starting ${operationName}`, context);
|
|
51
|
+
const result = await operation();
|
|
52
|
+
this.logger.debug(`✅ Completed ${operationName}`, context);
|
|
53
|
+
return result;
|
|
54
|
+
}
|
|
55
|
+
catch (error) {
|
|
56
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
57
|
+
// Preserve business errors - don't wrap them
|
|
58
|
+
if (error instanceof common_1.HttpException) {
|
|
59
|
+
const response = error.getResponse();
|
|
60
|
+
if (typeof response === 'object' && response?.category === pers_shared_1.ErrorCategory.DOMAIN_RULE) {
|
|
61
|
+
this.logger.warn(`⚠️ Business logic error in ${operationName}: ${errorMessage}`, { ...context, error });
|
|
62
|
+
throw error; // Pass through unchanged
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
// Wrap technical errors
|
|
66
|
+
this.logger.error(`❌ Failed ${operationName}: ${errorMessage}`, { ...context, error });
|
|
67
|
+
throw new pers_shared_1.OrchestrationError(operationName, error instanceof Error ? error : new Error(errorMessage));
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Execute CQRS command with consistent error handling and logging
|
|
72
|
+
* Standardizes command execution across all orchestrators
|
|
73
|
+
*/
|
|
74
|
+
async executeCommand(command, operationName) {
|
|
75
|
+
const operation = operationName || `Command: ${command.constructor.name}`;
|
|
76
|
+
return this.executeWithErrorHandling(() => this.commandBus.execute(command), operation, { commandType: command.constructor.name });
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Execute CQRS query with consistent error handling and logging
|
|
80
|
+
* Standardizes query execution across all orchestrators
|
|
81
|
+
*/
|
|
82
|
+
async executeQuery(query, operationName) {
|
|
83
|
+
const operation = operationName || `Query: ${query.constructor.name}`;
|
|
84
|
+
return this.executeWithErrorHandling(() => this.queryBus.execute(query), operation, { queryType: query.constructor.name });
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Execute multiple operations in parallel with error handling
|
|
88
|
+
* Useful for batch operations across domains
|
|
89
|
+
*/
|
|
90
|
+
async executeParallel(operations, operationName) {
|
|
91
|
+
return this.executeWithErrorHandling(() => Promise.all(operations.map(op => op())), `Parallel: ${operationName}`, { operationCount: operations.length });
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
exports.BaseOrchestrator = BaseOrchestrator;
|
|
95
|
+
/**
|
|
96
|
+
* Helper function to create success result
|
|
97
|
+
*/
|
|
98
|
+
function createSuccessResult(data, operation) {
|
|
99
|
+
return { success: true, data, operation };
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Helper function to create error result
|
|
103
|
+
*/
|
|
104
|
+
function createErrorResult(error, operation) {
|
|
105
|
+
return { success: false, error, operation };
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Utility function to check if result is successful
|
|
109
|
+
* Provides type guard for TypeScript
|
|
110
|
+
*/
|
|
111
|
+
function isSuccessResult(result) {
|
|
112
|
+
return result.success === true;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Utility function to extract data from result or throw error
|
|
116
|
+
* Useful for converting result pattern back to exception-based flow
|
|
117
|
+
*/
|
|
118
|
+
function unwrapResult(result) {
|
|
119
|
+
if (isSuccessResult(result)) {
|
|
120
|
+
return result.data;
|
|
121
|
+
}
|
|
122
|
+
throw result.error;
|
|
123
|
+
}
|
|
124
|
+
//# sourceMappingURL=base-orchestrator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-orchestrator.js","sourceRoot":"","sources":["../../../../src/internal/orchestrators/base-orchestrator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { Logger } from '@nestjs/common';
|
|
2
|
+
/**
|
|
3
|
+
* BaseWorkflow - Business Process Coordination Pattern
|
|
4
|
+
*
|
|
5
|
+
* @description Foundation for business workflow coordination in PERS domains.
|
|
6
|
+
* Distinct from BaseOrchestrator which handles technical CQRS coordination.
|
|
7
|
+
*
|
|
8
|
+
* ARCHITECTURAL DISTINCTION:
|
|
9
|
+
* - BaseOrchestrator: Technical coordination (CQRS, queries, commands)
|
|
10
|
+
* - BaseWorkflow: Business process coordination (orchestrator choreography)
|
|
11
|
+
*
|
|
12
|
+
* @usage Extend this class for domain-specific business workflows:
|
|
13
|
+
* ```typescript
|
|
14
|
+
* @Injectable()
|
|
15
|
+
* export class ServerTransactionWorkflow extends BaseWorkflow {
|
|
16
|
+
* constructor(
|
|
17
|
+
* private readonly walletOrchestrator: WalletResolutionOrchestrator,
|
|
18
|
+
* private readonly tokenOrchestrator: TokenResolutionOrchestrator
|
|
19
|
+
* ) {
|
|
20
|
+
* super(ServerTransactionWorkflow.name);
|
|
21
|
+
* }
|
|
22
|
+
*
|
|
23
|
+
* async executeTransactionFlow(dto: TransactionRequestDTO): Promise<TransactionDTO> {
|
|
24
|
+
* return this.executeWorkflowStep(async () => {
|
|
25
|
+
* const token = await this.tokenOrchestrator.resolveToken(dto.token);
|
|
26
|
+
* const addresses = await this.walletOrchestrator.resolveAddresses(dto, token.chainId);
|
|
27
|
+
* return this.createTransaction(token, addresses, dto);
|
|
28
|
+
* }, 'Transaction Creation Flow');
|
|
29
|
+
* }
|
|
30
|
+
* }
|
|
31
|
+
* ```
|
|
32
|
+
*
|
|
33
|
+
* @library @explorins/pers-shared-patterns
|
|
34
|
+
* @version 1.0.0
|
|
35
|
+
* @since September 2025
|
|
36
|
+
*/
|
|
37
|
+
export declare abstract class BaseWorkflow {
|
|
38
|
+
protected readonly logger: Logger;
|
|
39
|
+
protected constructor(loggerContext: string);
|
|
40
|
+
/**
|
|
41
|
+
* Execute a workflow step with standardized logging and error handling
|
|
42
|
+
*
|
|
43
|
+
* @param step - Function to execute as workflow step
|
|
44
|
+
* @param stepName - Human-readable name for the step
|
|
45
|
+
* @param context - Optional context for logging
|
|
46
|
+
* @returns Promise resolving to step result
|
|
47
|
+
*/
|
|
48
|
+
protected executeWorkflowStep<T>(step: () => Promise<T>, stepName: string, context?: Record<string, any>): Promise<T>;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=base-workflow.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-workflow.d.ts","sourceRoot":"","sources":["../../../../src/internal/orchestrators/base-workflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAExC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,8BAAsB,YAAY;IAChC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAElC,SAAS,aAAa,aAAa,EAAE,MAAM;IAI3C;;;;;;;OAOG;cACa,mBAAmB,CAAC,CAAC,EACnC,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACtB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC5B,OAAO,CAAC,CAAC,CAAC;CAYd"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseWorkflow = void 0;
|
|
4
|
+
const common_1 = require("@nestjs/common");
|
|
5
|
+
/**
|
|
6
|
+
* BaseWorkflow - Business Process Coordination Pattern
|
|
7
|
+
*
|
|
8
|
+
* @description Foundation for business workflow coordination in PERS domains.
|
|
9
|
+
* Distinct from BaseOrchestrator which handles technical CQRS coordination.
|
|
10
|
+
*
|
|
11
|
+
* ARCHITECTURAL DISTINCTION:
|
|
12
|
+
* - BaseOrchestrator: Technical coordination (CQRS, queries, commands)
|
|
13
|
+
* - BaseWorkflow: Business process coordination (orchestrator choreography)
|
|
14
|
+
*
|
|
15
|
+
* @usage Extend this class for domain-specific business workflows:
|
|
16
|
+
* ```typescript
|
|
17
|
+
* @Injectable()
|
|
18
|
+
* export class ServerTransactionWorkflow extends BaseWorkflow {
|
|
19
|
+
* constructor(
|
|
20
|
+
* private readonly walletOrchestrator: WalletResolutionOrchestrator,
|
|
21
|
+
* private readonly tokenOrchestrator: TokenResolutionOrchestrator
|
|
22
|
+
* ) {
|
|
23
|
+
* super(ServerTransactionWorkflow.name);
|
|
24
|
+
* }
|
|
25
|
+
*
|
|
26
|
+
* async executeTransactionFlow(dto: TransactionRequestDTO): Promise<TransactionDTO> {
|
|
27
|
+
* return this.executeWorkflowStep(async () => {
|
|
28
|
+
* const token = await this.tokenOrchestrator.resolveToken(dto.token);
|
|
29
|
+
* const addresses = await this.walletOrchestrator.resolveAddresses(dto, token.chainId);
|
|
30
|
+
* return this.createTransaction(token, addresses, dto);
|
|
31
|
+
* }, 'Transaction Creation Flow');
|
|
32
|
+
* }
|
|
33
|
+
* }
|
|
34
|
+
* ```
|
|
35
|
+
*
|
|
36
|
+
* @library @explorins/pers-shared-patterns
|
|
37
|
+
* @version 1.0.0
|
|
38
|
+
* @since September 2025
|
|
39
|
+
*/
|
|
40
|
+
class BaseWorkflow {
|
|
41
|
+
logger;
|
|
42
|
+
constructor(loggerContext) {
|
|
43
|
+
this.logger = new common_1.Logger(loggerContext);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Execute a workflow step with standardized logging and error handling
|
|
47
|
+
*
|
|
48
|
+
* @param step - Function to execute as workflow step
|
|
49
|
+
* @param stepName - Human-readable name for the step
|
|
50
|
+
* @param context - Optional context for logging
|
|
51
|
+
* @returns Promise resolving to step result
|
|
52
|
+
*/
|
|
53
|
+
async executeWorkflowStep(step, stepName, context) {
|
|
54
|
+
try {
|
|
55
|
+
this.logger.debug(`🎯 Starting workflow step: ${stepName}`, context);
|
|
56
|
+
const result = await step();
|
|
57
|
+
this.logger.debug(`✅ Completed workflow step: ${stepName}`, context);
|
|
58
|
+
return result;
|
|
59
|
+
}
|
|
60
|
+
catch (error) {
|
|
61
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
62
|
+
this.logger.error(`❌ Failed workflow step: ${stepName}: ${errorMessage}`, { ...context, error });
|
|
63
|
+
throw error; // Let business errors flow through unchanged
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
exports.BaseWorkflow = BaseWorkflow;
|
|
68
|
+
//# sourceMappingURL=base-workflow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-workflow.js","sourceRoot":"","sources":["../../../../src/internal/orchestrators/base-workflow.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AAExC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAsB,YAAY;IACb,MAAM,CAAS;IAElC,YAAsB,aAAqB;QACzC,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC,aAAa,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;;;OAOG;IACO,KAAK,CAAC,mBAAmB,CACjC,IAAsB,EACtB,QAAgB,EAChB,OAA6B;QAE7B,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;YACrE,MAAM,MAAM,GAAG,MAAM,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;YACrE,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,QAAQ,KAAK,YAAY,EAAE,EAAE,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;YACjG,MAAM,KAAK,CAAC,CAAC,6CAA6C;QAC5D,CAAC;IACH,CAAC;CACF;AA/BD,oCA+BC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PERS Orchestrators - Application Layer Patterns
|
|
3
|
+
*
|
|
4
|
+
* @description Centralized orchestration utilities for DDD-compliant applications
|
|
5
|
+
* - BaseOrchestrator: Foundation for all domain orchestrators (technical coordination)
|
|
6
|
+
* - BaseWorkflow: Foundation for business process workflows (business coordination)
|
|
7
|
+
* - OrchestrationError: Standard error handling
|
|
8
|
+
* - OrchestrationResult: Type-safe result pattern
|
|
9
|
+
* - Utility functions for error handling and result processing
|
|
10
|
+
*
|
|
11
|
+
* @usage Import directly from shared library:
|
|
12
|
+
* ```typescript
|
|
13
|
+
* import { BaseOrchestrator, BaseWorkflow, OrchestrationError } from '@explorins/pers-shared-patterns';
|
|
14
|
+
* ```
|
|
15
|
+
*
|
|
16
|
+
* ARCHITECTURAL DISTINCTION:
|
|
17
|
+
* - BaseOrchestrator: Technical coordination (CQRS, queries, commands)
|
|
18
|
+
* - BaseWorkflow: Business process coordination (orchestrator choreography)
|
|
19
|
+
*
|
|
20
|
+
* @library @explorins/pers-shared-patterns
|
|
21
|
+
* @version 2.0.0
|
|
22
|
+
* @since August 2025
|
|
23
|
+
*/
|
|
24
|
+
export * from './base-orchestrator';
|
|
25
|
+
export * from './base-workflow';
|
|
26
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/internal/orchestrators/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* PERS Orchestrators - Application Layer Patterns
|
|
4
|
+
*
|
|
5
|
+
* @description Centralized orchestration utilities for DDD-compliant applications
|
|
6
|
+
* - BaseOrchestrator: Foundation for all domain orchestrators (technical coordination)
|
|
7
|
+
* - BaseWorkflow: Foundation for business process workflows (business coordination)
|
|
8
|
+
* - OrchestrationError: Standard error handling
|
|
9
|
+
* - OrchestrationResult: Type-safe result pattern
|
|
10
|
+
* - Utility functions for error handling and result processing
|
|
11
|
+
*
|
|
12
|
+
* @usage Import directly from shared library:
|
|
13
|
+
* ```typescript
|
|
14
|
+
* import { BaseOrchestrator, BaseWorkflow, OrchestrationError } from '@explorins/pers-shared-patterns';
|
|
15
|
+
* ```
|
|
16
|
+
*
|
|
17
|
+
* ARCHITECTURAL DISTINCTION:
|
|
18
|
+
* - BaseOrchestrator: Technical coordination (CQRS, queries, commands)
|
|
19
|
+
* - BaseWorkflow: Business process coordination (orchestrator choreography)
|
|
20
|
+
*
|
|
21
|
+
* @library @explorins/pers-shared-patterns
|
|
22
|
+
* @version 2.0.0
|
|
23
|
+
* @since August 2025
|
|
24
|
+
*/
|
|
25
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
26
|
+
if (k2 === undefined) k2 = k;
|
|
27
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
28
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
29
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
30
|
+
}
|
|
31
|
+
Object.defineProperty(o, k2, desc);
|
|
32
|
+
}) : (function(o, m, k, k2) {
|
|
33
|
+
if (k2 === undefined) k2 = k;
|
|
34
|
+
o[k2] = m[k];
|
|
35
|
+
}));
|
|
36
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
37
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
38
|
+
};
|
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
+
__exportStar(require("./base-orchestrator"), exports);
|
|
41
|
+
__exportStar(require("./base-workflow"), exports);
|
|
42
|
+
// Future orchestration utilities can be added here:
|
|
43
|
+
// export * from './validation-orchestrator';
|
|
44
|
+
// export * from './audit-orchestrator';
|
|
45
|
+
// export * from './notification-orchestrator';
|
|
46
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/internal/orchestrators/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;;;;;;;;;;;;;;;;AAEH,sDAAoC;AACpC,kDAAgC;AAEhC,oDAAoD;AACpD,6CAA6C;AAC7C,wCAAwC;AACxC,+CAA+C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/internal/utils/index.ts"],"names":[],"mappings":"AACA,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
// Internal utilities for PERS architecture patterns
|
|
18
|
+
__exportStar(require("./validation.utils"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/internal/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAoD;AACpD,qDAAmC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PERS Validation Utilities
|
|
3
|
+
*
|
|
4
|
+
* Centralized validation functions for consistent data validation
|
|
5
|
+
* across all PERS backend modules and domains.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Validates email format according to RFC standards
|
|
9
|
+
*
|
|
10
|
+
* Features:
|
|
11
|
+
* - RFC-compliant email regex pattern
|
|
12
|
+
* - RFC 5321 length limit enforcement (254 characters)
|
|
13
|
+
* - Performance optimized with length check first
|
|
14
|
+
* - DoS protection against extremely long strings
|
|
15
|
+
*
|
|
16
|
+
* @param email - Email address to validate
|
|
17
|
+
* @returns true if email is valid, false otherwise
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* isValidEmail('user@example.com'); // true
|
|
22
|
+
* isValidEmail('invalid-email'); // false
|
|
23
|
+
* isValidEmail('a'.repeat(300) + '@example.com'); // false (too long)
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare function isValidEmail(email: string): boolean;
|
|
27
|
+
/**
|
|
28
|
+
* Validates wallet address format
|
|
29
|
+
*
|
|
30
|
+
* @param address - Wallet address to validate
|
|
31
|
+
* @returns true if address format is valid
|
|
32
|
+
*/
|
|
33
|
+
export declare function isValidWalletAddress(address: string): boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Validates that a string is not empty and meets minimum length requirements
|
|
36
|
+
*
|
|
37
|
+
* @param value - String to validate
|
|
38
|
+
* @param minLength - Minimum required length (default: 1)
|
|
39
|
+
* @returns true if string meets requirements
|
|
40
|
+
*/
|
|
41
|
+
export declare function isValidNonEmptyString(value: string, minLength?: number): boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Validates UUID format (v4)
|
|
44
|
+
*
|
|
45
|
+
* @param uuid - UUID string to validate
|
|
46
|
+
* @returns true if UUID format is valid
|
|
47
|
+
*/
|
|
48
|
+
export declare function isValidUuid(uuid: string): boolean;
|
|
49
|
+
//# sourceMappingURL=validation.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.utils.d.ts","sourceRoot":"","sources":["../../../../src/internal/utils/validation.utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CASnD;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAM7D;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,GAAE,MAAU,GAAG,OAAO,CAEnF;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAKjD"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* PERS Validation Utilities
|
|
4
|
+
*
|
|
5
|
+
* Centralized validation functions for consistent data validation
|
|
6
|
+
* across all PERS backend modules and domains.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.isValidEmail = isValidEmail;
|
|
10
|
+
exports.isValidWalletAddress = isValidWalletAddress;
|
|
11
|
+
exports.isValidNonEmptyString = isValidNonEmptyString;
|
|
12
|
+
exports.isValidUuid = isValidUuid;
|
|
13
|
+
/**
|
|
14
|
+
* Validates email format according to RFC standards
|
|
15
|
+
*
|
|
16
|
+
* Features:
|
|
17
|
+
* - RFC-compliant email regex pattern
|
|
18
|
+
* - RFC 5321 length limit enforcement (254 characters)
|
|
19
|
+
* - Performance optimized with length check first
|
|
20
|
+
* - DoS protection against extremely long strings
|
|
21
|
+
*
|
|
22
|
+
* @param email - Email address to validate
|
|
23
|
+
* @returns true if email is valid, false otherwise
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* isValidEmail('user@example.com'); // true
|
|
28
|
+
* isValidEmail('invalid-email'); // false
|
|
29
|
+
* isValidEmail('a'.repeat(300) + '@example.com'); // false (too long)
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
function isValidEmail(email) {
|
|
33
|
+
// Quick length check first for performance and RFC 5321 compliance
|
|
34
|
+
if (!email || email.length > 254) {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
// RFC-compliant email regex pattern
|
|
38
|
+
const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
|
|
39
|
+
return emailRegex.test(email);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Validates wallet address format
|
|
43
|
+
*
|
|
44
|
+
* @param address - Wallet address to validate
|
|
45
|
+
* @returns true if address format is valid
|
|
46
|
+
*/
|
|
47
|
+
function isValidWalletAddress(address) {
|
|
48
|
+
if (!address)
|
|
49
|
+
return false;
|
|
50
|
+
// Ethereum address format: 0x followed by 40 hexadecimal characters
|
|
51
|
+
const ethereumAddressRegex = /^0x[a-fA-F0-9]{40}$/;
|
|
52
|
+
return ethereumAddressRegex.test(address);
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Validates that a string is not empty and meets minimum length requirements
|
|
56
|
+
*
|
|
57
|
+
* @param value - String to validate
|
|
58
|
+
* @param minLength - Minimum required length (default: 1)
|
|
59
|
+
* @returns true if string meets requirements
|
|
60
|
+
*/
|
|
61
|
+
function isValidNonEmptyString(value, minLength = 1) {
|
|
62
|
+
return typeof value === 'string' && value.trim().length >= minLength;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Validates UUID format (v4)
|
|
66
|
+
*
|
|
67
|
+
* @param uuid - UUID string to validate
|
|
68
|
+
* @returns true if UUID format is valid
|
|
69
|
+
*/
|
|
70
|
+
function isValidUuid(uuid) {
|
|
71
|
+
if (!uuid)
|
|
72
|
+
return false;
|
|
73
|
+
const uuidRegex = /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
|
|
74
|
+
return uuidRegex.test(uuid);
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=validation.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.utils.js","sourceRoot":"","sources":["../../../../src/internal/utils/validation.utils.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAqBH,oCASC;AAQD,oDAMC;AASD,sDAEC;AAQD,kCAKC;AAlED;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,YAAY,CAAC,KAAa;IACxC,mEAAmE;IACnE,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QACjC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,oCAAoC;IACpC,MAAM,UAAU,GAAG,4BAA4B,CAAC;IAChD,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AAED;;;;;GAKG;AACH,SAAgB,oBAAoB,CAAC,OAAe;IAClD,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAC;IAE3B,oEAAoE;IACpE,MAAM,oBAAoB,GAAG,qBAAqB,CAAC;IACnD,OAAO,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC5C,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,qBAAqB,CAAC,KAAa,EAAE,YAAoB,CAAC;IACxE,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,IAAI,SAAS,CAAC;AACvE,CAAC;AAED;;;;;GAKG;AACH,SAAgB,WAAW,CAAC,IAAY;IACtC,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IAExB,MAAM,SAAS,GAAG,wEAAwE,CAAC;IAC3F,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC"}
|
|
@@ -1,20 +1,19 @@
|
|
|
1
1
|
import type { ContractAbi } from 'web3';
|
|
2
2
|
import { Web3TransactionType } from '../enum/transaction-type.enum';
|
|
3
3
|
import { Address } from './address.value-object';
|
|
4
|
-
import { ITokenTransactionInputData } from '../interfaces/token-transaction-input-data.interface';
|
|
4
|
+
import { ITokenTransactionInputData, TxParticipants } from '../interfaces/token-transaction-input-data.interface';
|
|
5
5
|
import { NativeTokenType } from '../types/native-token.type';
|
|
6
6
|
export declare class TokenTransactionInputDataVo implements ITokenTransactionInputData {
|
|
7
7
|
transactionId: string | null;
|
|
8
8
|
readonly chainId: number;
|
|
9
9
|
readonly smartContractAddress: Address;
|
|
10
10
|
readonly contractAbi: ContractAbi;
|
|
11
|
+
readonly txParticipants: TxParticipants;
|
|
11
12
|
/**
|
|
12
13
|
* Represents the token ID for ERC1155 or other standards.
|
|
13
14
|
* For ERC721 minting operations, this field should contain the unique token URI.
|
|
14
15
|
*/
|
|
15
16
|
contractTokenId: string | null;
|
|
16
|
-
readonly senderAddress: Address;
|
|
17
|
-
readonly recipientAddress: Address | null;
|
|
18
17
|
readonly amount: number;
|
|
19
18
|
readonly type: Web3TransactionType;
|
|
20
19
|
readonly tokenType: NativeTokenType;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-transaction-input.vo.d.ts","sourceRoot":"","sources":["../../../src/value-objects/token-transaction-input.vo.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,0BAA0B,EAAE,MAAM,sDAAsD,CAAC;
|
|
1
|
+
{"version":3,"file":"token-transaction-input.vo.d.ts","sourceRoot":"","sources":["../../../src/value-objects/token-transaction-input.vo.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,0BAA0B,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAClH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG7D,qBAAa,2BAA4B,YAAW,0BAA0B;IAG5E,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7B,SAEgB,OAAO,EAAE,MAAM,CAAC;IAEhC,SAIgB,oBAAoB,EAAE,OAAO,CAAC;IAE9C,SACgB,WAAW,EAAE,WAAW,CAAC;IAGzC,SAGgB,cAAc,EAAE,cAAc,CAAC;IAC/C;;;OAGG;IAGI,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtC,SAEgB,MAAM,EAAE,MAAM,CAAC;IAE/B,SAEgB,IAAI,EAAE,mBAAmB,CAAC;IAC1C,SACgB,SAAS,EAAE,eAAe,CAAC;IAI3C,SAEgB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElC,SAEgB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1C,SAEgB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3C,SAEgB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAElD,SAEgB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAE3C,IAAI,EAAE,0BAA0B;CA8B7C"}
|
|
@@ -19,13 +19,13 @@ class TokenTransactionInputDataVo {
|
|
|
19
19
|
chainId;
|
|
20
20
|
smartContractAddress;
|
|
21
21
|
contractAbi;
|
|
22
|
+
// @IsObject()
|
|
23
|
+
txParticipants;
|
|
22
24
|
/**
|
|
23
25
|
* Represents the token ID for ERC1155 or other standards.
|
|
24
26
|
* For ERC721 minting operations, this field should contain the unique token URI.
|
|
25
27
|
*/
|
|
26
28
|
contractTokenId;
|
|
27
|
-
senderAddress;
|
|
28
|
-
recipientAddress;
|
|
29
29
|
amount;
|
|
30
30
|
type; // Using the enum value for validation
|
|
31
31
|
tokenType; // Using the type for type declaration
|
|
@@ -42,8 +42,7 @@ class TokenTransactionInputDataVo {
|
|
|
42
42
|
this.smartContractAddress = data.smartContractAddress; // Assumes data.smartContractAddress is already an Address instance
|
|
43
43
|
this.contractAbi = data.contractAbi;
|
|
44
44
|
this.contractTokenId = data.contractTokenId;
|
|
45
|
-
this.
|
|
46
|
-
this.recipientAddress = data.recipientAddress; // Assumes data.recipientAddress is already an Address instance (or null)
|
|
45
|
+
this.txParticipants = data.txParticipants;
|
|
47
46
|
this.amount = data.amount;
|
|
48
47
|
this.type = data.type;
|
|
49
48
|
this.tokenType = data.tokenType;
|
|
@@ -57,10 +56,10 @@ class TokenTransactionInputDataVo {
|
|
|
57
56
|
if (this.amount <= 0 && this.type) {
|
|
58
57
|
throw new Error('Transaction amount must be positive for this transaction type.');
|
|
59
58
|
}
|
|
60
|
-
if (!this.senderAddress) {
|
|
59
|
+
if (!this.txParticipants.senderAddress) {
|
|
61
60
|
throw new Error('Sender address is required.');
|
|
62
61
|
}
|
|
63
|
-
if (this.type !== transaction_type_enum_1.Web3TransactionType.BURN && !this.recipientAddress) {
|
|
62
|
+
if (this.type !== transaction_type_enum_1.Web3TransactionType.BURN && !this.txParticipants.recipientAddress) {
|
|
64
63
|
throw new Error('Recipient address is required for this transaction type.');
|
|
65
64
|
}
|
|
66
65
|
}
|
|
@@ -90,24 +89,17 @@ __decorate([
|
|
|
90
89
|
__metadata("design:type", Object)
|
|
91
90
|
], TokenTransactionInputDataVo.prototype, "contractAbi", void 0);
|
|
92
91
|
__decorate([
|
|
93
|
-
(0, class_validator_1.IsString)(),
|
|
94
|
-
(0, class_validator_1.IsOptional)(),
|
|
95
|
-
__metadata("design:type", Object)
|
|
96
|
-
], TokenTransactionInputDataVo.prototype, "contractTokenId", void 0);
|
|
97
|
-
__decorate([
|
|
98
|
-
(0, class_validator_1.IsObject)(),
|
|
99
92
|
(0, class_validator_1.IsNotEmpty)(),
|
|
100
|
-
(0, class_validator_1.ValidateNested)()
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
93
|
+
(0, class_validator_1.ValidateNested)()
|
|
94
|
+
// @Type(() => TxParticipants)
|
|
95
|
+
,
|
|
96
|
+
__metadata("design:type", Object)
|
|
97
|
+
], TokenTransactionInputDataVo.prototype, "txParticipants", void 0);
|
|
104
98
|
__decorate([
|
|
105
|
-
(0, class_validator_1.
|
|
99
|
+
(0, class_validator_1.IsString)(),
|
|
106
100
|
(0, class_validator_1.IsOptional)(),
|
|
107
|
-
(0, class_validator_1.ValidateNested)(),
|
|
108
|
-
(0, class_transformer_1.Type)(() => address_value_object_1.Address),
|
|
109
101
|
__metadata("design:type", Object)
|
|
110
|
-
], TokenTransactionInputDataVo.prototype, "
|
|
102
|
+
], TokenTransactionInputDataVo.prototype, "contractTokenId", void 0);
|
|
111
103
|
__decorate([
|
|
112
104
|
(0, class_validator_1.IsNumber)(),
|
|
113
105
|
(0, class_validator_1.IsNotEmpty)(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-transaction-input.vo.js","sourceRoot":"","sources":["../../../src/value-objects/token-transaction-input.vo.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA+G;AAC/G,yDAAyC;AAEzC,yEAAoE;AACpE,iEAAiD;
|
|
1
|
+
{"version":3,"file":"token-transaction-input.vo.js","sourceRoot":"","sources":["../../../src/value-objects/token-transaction-input.vo.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,14 +6,10 @@ export declare class PasskeysAuthRequestDTO {
|
|
|
6
6
|
export declare class RefreshTokenRequestDTO {
|
|
7
7
|
refreshToken: string;
|
|
8
8
|
}
|
|
9
|
-
export declare class
|
|
9
|
+
export declare class SessionAuthResponseDTO {
|
|
10
10
|
accessToken: string;
|
|
11
11
|
refreshToken: string;
|
|
12
|
-
}
|
|
13
|
-
export declare class UserAuthResponseDTO extends AuthResponseDTO {
|
|
14
|
-
user: UserDTO;
|
|
15
|
-
}
|
|
16
|
-
export declare class AdminLoginResponseDTO extends AuthResponseDTO {
|
|
17
12
|
admin?: AdminDTO;
|
|
13
|
+
user?: UserDTO;
|
|
18
14
|
}
|
|
19
15
|
//# sourceMappingURL=auth.dto.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.dto.d.ts","sourceRoot":"","sources":["../../../src/dto/auth.dto.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,qBAAa,sBAAsB;IAQ/B,SAAS,EAAE,MAAM,CAAM;CAC1B;AAkBD,qBAAa,sBAAsB;IAK/B,YAAY,EAAE,MAAM,CAAM;CAC7B;AAED,qBAAa,
|
|
1
|
+
{"version":3,"file":"auth.dto.d.ts","sourceRoot":"","sources":["../../../src/dto/auth.dto.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,qBAAa,sBAAsB;IAQ/B,SAAS,EAAE,MAAM,CAAM;CAC1B;AAkBD,qBAAa,sBAAsB;IAK/B,YAAY,EAAE,MAAM,CAAM;CAC7B;AAED,qBAAa,sBAAsB;IAM/B,WAAW,EAAE,MAAM,CAAM;IAMzB,YAAY,EAAE,MAAM,CAAM;IAM1B,KAAK,CAAC,EAAE,QAAQ,CAAC;IAMjB,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB"}
|