@carbonbox/domain 0.8.0 → 0.8.2
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/build/carbonbox/shared/domain/services/implementations/DateTimeFormattingDomainService.js +14 -0
- package/build/carbonbox/shared/domain/value-objects/AggregateId.js +11 -9
- package/build/types/carbonbox/shared/domain/services/implementations/DateTimeFormattingDomainService.d.ts +8 -0
- package/build/types/carbonbox/shared/domain/services/implementations/DateTimeFormattingDomainService.d.ts.map +1 -1
- package/build/types/carbonbox/shared/domain/value-objects/AggregateId.d.ts +7 -6
- package/build/types/carbonbox/shared/domain/value-objects/AggregateId.d.ts.map +1 -1
- package/package.json +1 -1
package/build/carbonbox/shared/domain/services/implementations/DateTimeFormattingDomainService.js
CHANGED
|
@@ -276,5 +276,19 @@ class DateTimeFormattingDomainService {
|
|
|
276
276
|
const service = DateTimeFormattingDomainService.create();
|
|
277
277
|
return service.formatDateToString(date).fold((error) => { throw error; }, (dateString) => dateString);
|
|
278
278
|
}
|
|
279
|
+
/**
|
|
280
|
+
* @deprecated Use instance method instead
|
|
281
|
+
*/
|
|
282
|
+
static getCurrentDateTimeString() {
|
|
283
|
+
const service = DateTimeFormattingDomainService.create();
|
|
284
|
+
return service.getCurrentDateTimeString().fold((error) => { throw error; }, (dateTimeString) => dateTimeString);
|
|
285
|
+
}
|
|
286
|
+
/**
|
|
287
|
+
* @deprecated Use instance method instead
|
|
288
|
+
*/
|
|
289
|
+
static formatDateTimeToString(date) {
|
|
290
|
+
const service = DateTimeFormattingDomainService.create();
|
|
291
|
+
return service.formatDateTimeToString(date).fold((error) => { throw error; }, (dateTimeString) => dateTimeString);
|
|
292
|
+
}
|
|
279
293
|
}
|
|
280
294
|
exports.DateTimeFormattingDomainService = DateTimeFormattingDomainService;
|
|
@@ -7,14 +7,15 @@ const InvalidAggregateIdFormatError_1 = require("../exceptions/InvalidAggregateI
|
|
|
7
7
|
/**
|
|
8
8
|
* Pure AggregateId Value Object with structured ID format
|
|
9
9
|
*
|
|
10
|
-
* Format: {PREFIX}_{
|
|
11
|
-
*
|
|
10
|
+
* Format: {PREFIX}_{ID} where PREFIX can be BC or BC-SUB1-SUB2-...SUBn
|
|
11
|
+
* and {ID} is either a UUID v4 (legacy) or a ULID (current standard).
|
|
12
|
+
* Each prefix component can have 1+ uppercase letters (validated by specific Value Objects).
|
|
12
13
|
*
|
|
13
14
|
* Examples:
|
|
14
|
-
* - STC_550e8400-e29b-41d4-a716-446655440000
|
|
15
|
-
* - PMS-SC_550e8400-e29b-41d4-a716-446655440000
|
|
16
|
-
* -
|
|
17
|
-
* -
|
|
15
|
+
* - STC_550e8400-e29b-41d4-a716-446655440000 (UUID v4 — legacy)
|
|
16
|
+
* - PMS-SC_550e8400-e29b-41d4-a716-446655440000 (UUID v4 — legacy)
|
|
17
|
+
* - ECP-PRC_01ARZ3NDEKTSV4RRFFQ69G5FAV (ULID — current standard)
|
|
18
|
+
* - ECP-JOB_01KQD1C12GGEAV6J63DK02VD5G (ULID — current standard)
|
|
18
19
|
*
|
|
19
20
|
* This is a PURE Value Object - no external dependencies or business logic.
|
|
20
21
|
*
|
|
@@ -127,9 +128,10 @@ class AggregateId extends String_1.String {
|
|
|
127
128
|
}
|
|
128
129
|
exports.AggregateId = AggregateId;
|
|
129
130
|
AggregateId.DEFAULT_PROPERTY_NAME = 'id';
|
|
130
|
-
//
|
|
131
|
-
|
|
131
|
+
// Raw ID regex: accepts UUID v4 (legacy) or ULID (current).
|
|
132
|
+
// ULID = 26 chars, Crockford's Base32 alphabet (case-insensitive).
|
|
133
|
+
AggregateId.ID_REGEX = /^([0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|[0-9A-HJKMNP-TV-Z]{26})$/i;
|
|
132
134
|
// Aggregate ID format: BC_ID or BC-SUB1-SUB2-...SUBn_ID (flexible N-level subdomain support)
|
|
133
135
|
// Pattern: [A-Z]+(-[A-Z]+)*_[ID] - BC alone OR BC with unlimited SUBn levels (1+ letters per component)
|
|
134
136
|
// Each specific Value Object validates its exact prefix format
|
|
135
|
-
AggregateId.AGGREGATE_ID_REGEX = /^[A-Z]+(-[A-Z]+)*_[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
|
|
137
|
+
AggregateId.AGGREGATE_ID_REGEX = /^[A-Z]+(-[A-Z]+)*_([0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|[0-9A-HJKMNP-TV-Z]{26})$/i;
|
|
@@ -101,5 +101,13 @@ export declare class DateTimeFormattingDomainService implements IDateTimeFormatt
|
|
|
101
101
|
* @deprecated Use instance method instead
|
|
102
102
|
*/
|
|
103
103
|
static formatDateToString(date: Date): string;
|
|
104
|
+
/**
|
|
105
|
+
* @deprecated Use instance method instead
|
|
106
|
+
*/
|
|
107
|
+
static getCurrentDateTimeString(): string;
|
|
108
|
+
/**
|
|
109
|
+
* @deprecated Use instance method instead
|
|
110
|
+
*/
|
|
111
|
+
static formatDateTimeToString(date: Date): string;
|
|
104
112
|
}
|
|
105
113
|
//# sourceMappingURL=DateTimeFormattingDomainService.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateTimeFormattingDomainService.d.ts","sourceRoot":"","sources":["../../../../../../../src/carbonbox/shared/domain/services/implementations/DateTimeFormattingDomainService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAGjF,OAAO,EAAE,gCAAgC,EAAE,MAAM,+CAA+C,CAAC;AAEjG;;;;GAIG;AACH,qBAAa,+BAAgC,YAAW,gCAAgC;IACtF,OAAO;WAIO,MAAM,IAAI,+BAA+B;IAIvD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2D;IAEtF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAyG;IAExI;;;;OAIG;IACI,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,OAAO,CAAC;IAmBrF;;;;OAIG;IACI,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,OAAO,CAAC;IAiB7F;;;;OAIG;IACI,kBAAkB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,sBAAsB,EAAE,MAAM,CAAC;IAsB9E;;;;OAIG;IACI,sBAAsB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,sBAAsB,EAAE,MAAM,CAAC;IAyBlF;;;OAGG;IACI,oBAAoB,IAAI,OAAO,CAAC,sBAAsB,EAAE,MAAM,CAAC;IAItE;;;OAGG;IACI,wBAAwB,IAAI,OAAO,CAAC,sBAAsB,EAAE,MAAM,CAAC;IAI1E;;;;OAIG;IACI,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,IAAI,CAAC;IAyBjF;;;;OAIG;IACI,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,IAAI,CAAC;IA4BzF;;;;OAIG;IACI,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,OAAO,CAAC;IAoChF;;;;OAIG;IACI,eAAe,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,OAAO,CAAC;IAoCxF;;;;;OAKG;IACI,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,MAAM,CAAC;IA0BtG;;;;;OAKG;IACI,gBAAgB,CAAC,eAAe,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,MAAM,CAAC;IA0BlH;;;OAGG;IACI,aAAa,IAAI,MAAM;IAI9B;;;OAGG;IACI,iBAAiB,IAAI,MAAM;IAOlC;;OAEG;WACW,oBAAoB,IAAI,MAAM;IAQ5C;;OAEG;WACW,kBAAkB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;
|
|
1
|
+
{"version":3,"file":"DateTimeFormattingDomainService.d.ts","sourceRoot":"","sources":["../../../../../../../src/carbonbox/shared/domain/services/implementations/DateTimeFormattingDomainService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAGjF,OAAO,EAAE,gCAAgC,EAAE,MAAM,+CAA+C,CAAC;AAEjG;;;;GAIG;AACH,qBAAa,+BAAgC,YAAW,gCAAgC;IACtF,OAAO;WAIO,MAAM,IAAI,+BAA+B;IAIvD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2D;IAEtF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAyG;IAExI;;;;OAIG;IACI,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,OAAO,CAAC;IAmBrF;;;;OAIG;IACI,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,OAAO,CAAC;IAiB7F;;;;OAIG;IACI,kBAAkB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,sBAAsB,EAAE,MAAM,CAAC;IAsB9E;;;;OAIG;IACI,sBAAsB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,sBAAsB,EAAE,MAAM,CAAC;IAyBlF;;;OAGG;IACI,oBAAoB,IAAI,OAAO,CAAC,sBAAsB,EAAE,MAAM,CAAC;IAItE;;;OAGG;IACI,wBAAwB,IAAI,OAAO,CAAC,sBAAsB,EAAE,MAAM,CAAC;IAI1E;;;;OAIG;IACI,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,IAAI,CAAC;IAyBjF;;;;OAIG;IACI,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,IAAI,CAAC;IA4BzF;;;;OAIG;IACI,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,OAAO,CAAC;IAoChF;;;;OAIG;IACI,eAAe,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,OAAO,CAAC;IAoCxF;;;;;OAKG;IACI,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,MAAM,CAAC;IA0BtG;;;;;OAKG;IACI,gBAAgB,CAAC,eAAe,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,MAAM,CAAC;IA0BlH;;;OAGG;IACI,aAAa,IAAI,MAAM;IAI9B;;;OAGG;IACI,iBAAiB,IAAI,MAAM;IAOlC;;OAEG;WACW,oBAAoB,IAAI,MAAM;IAQ5C;;OAEG;WACW,kBAAkB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAQpD;;OAEG;WACW,wBAAwB,IAAI,MAAM;IAQhD;;OAEG;WACW,sBAAsB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;CAOzD"}
|
|
@@ -2,14 +2,15 @@ import { String } from './String';
|
|
|
2
2
|
/**
|
|
3
3
|
* Pure AggregateId Value Object with structured ID format
|
|
4
4
|
*
|
|
5
|
-
* Format: {PREFIX}_{
|
|
6
|
-
*
|
|
5
|
+
* Format: {PREFIX}_{ID} where PREFIX can be BC or BC-SUB1-SUB2-...SUBn
|
|
6
|
+
* and {ID} is either a UUID v4 (legacy) or a ULID (current standard).
|
|
7
|
+
* Each prefix component can have 1+ uppercase letters (validated by specific Value Objects).
|
|
7
8
|
*
|
|
8
9
|
* Examples:
|
|
9
|
-
* - STC_550e8400-e29b-41d4-a716-446655440000
|
|
10
|
-
* - PMS-SC_550e8400-e29b-41d4-a716-446655440000
|
|
11
|
-
* -
|
|
12
|
-
* -
|
|
10
|
+
* - STC_550e8400-e29b-41d4-a716-446655440000 (UUID v4 — legacy)
|
|
11
|
+
* - PMS-SC_550e8400-e29b-41d4-a716-446655440000 (UUID v4 — legacy)
|
|
12
|
+
* - ECP-PRC_01ARZ3NDEKTSV4RRFFQ69G5FAV (ULID — current standard)
|
|
13
|
+
* - ECP-JOB_01KQD1C12GGEAV6J63DK02VD5G (ULID — current standard)
|
|
13
14
|
*
|
|
14
15
|
* This is a PURE Value Object - no external dependencies or business logic.
|
|
15
16
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AggregateId.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/value-objects/AggregateId.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAIlC
|
|
1
|
+
{"version":3,"file":"AggregateId.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/value-objects/AggregateId.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAIlC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,WAAY,SAAQ,MAAM;IACrC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,QAAQ;IAIvD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAqG;IAKrI,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAsH;IAEhK,SAAS,aACP,KAAK,EAAE,MAAM,EACb,oBAAoB,EAAE,OAAO,EAC7B,YAAY,GAAE,MAA0C;WAanC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW;WAI/B,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW;IAI9D;;OAEG;IACI,SAAS,IAAI,MAAM;IAQ1B;;OAEG;IACI,aAAa,IAAI,MAAM;IAQ9B;;OAEG;IACI,qBAAqB,IAAI,MAAM;IAKtC;;;OAGG;IACI,iBAAiB,IAAI,MAAM,EAAE;IAQpC;;;OAGG;IACI,uBAAuB,IAAI,MAAM;IAKxC;;OAEG;IACI,aAAa,IAAI,OAAO;IAI/B;;OAEG;WACW,qBAAqB,CACjC,EAAE,EAAE,MAAM,EACV,YAAY,GAAE,MAA0C,GACvD,IAAI;IAMP,SAAS,CAAC,MAAM,CAAC,wBAAwB,CACvC,KAAK,EAAE,MAAM,EACb,YAAY,GAAE,MAAa,GAC1B,IAAI;IAMP,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAIjD,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAIvD,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAI/C,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;WAIvC,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;WAInC,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAIvC,YAAY,IAAI,MAAM;CAGvC"}
|