@woltz/rich-domain 1.0.0 → 1.2.0
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/CHANGELOG.md +37 -86
- package/LICENSE +20 -20
- package/dist/base-entity.d.ts +1 -1
- package/dist/base-entity.d.ts.map +1 -1
- package/dist/base-entity.js +15 -19
- package/dist/base-entity.js.map +1 -1
- package/dist/constants.js +1 -4
- package/dist/constants.js.map +1 -1
- package/dist/criteria.d.ts +24 -14
- package/dist/criteria.d.ts.map +1 -1
- package/dist/criteria.js +154 -67
- package/dist/criteria.js.map +1 -1
- package/dist/deep-proxy.d.ts.map +1 -1
- package/dist/deep-proxy.js +19 -9
- package/dist/deep-proxy.js.map +1 -1
- package/dist/domain-event-bus.d.ts +5 -6
- package/dist/domain-event-bus.d.ts.map +1 -1
- package/dist/domain-event-bus.js +4 -17
- package/dist/domain-event-bus.js.map +1 -1
- package/dist/domain-event.d.ts +1 -31
- package/dist/domain-event.d.ts.map +1 -1
- package/dist/domain-event.js +4 -7
- package/dist/domain-event.js.map +1 -1
- package/dist/entity.d.ts +2 -2
- package/dist/entity.js +3 -8
- package/dist/entity.js.map +1 -1
- package/dist/exceptions.d.ts +251 -0
- package/dist/exceptions.d.ts.map +1 -0
- package/dist/exceptions.js +321 -0
- package/dist/exceptions.js.map +1 -0
- package/dist/id.d.ts.map +1 -1
- package/dist/id.js +14 -7
- package/dist/id.js.map +1 -1
- package/dist/index.d.ts +2 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -40
- package/dist/index.js.map +1 -1
- package/dist/mapper.js +1 -5
- package/dist/mapper.js.map +1 -1
- package/dist/paginated-result.d.ts.map +1 -1
- package/dist/paginated-result.js +17 -9
- package/dist/paginated-result.js.map +1 -1
- package/dist/repository/base-repository.js +4 -11
- package/dist/repository/base-repository.js.map +1 -1
- package/dist/repository/index.d.ts +1 -2
- package/dist/repository/index.d.ts.map +1 -1
- package/dist/repository/index.js +3 -26
- package/dist/repository/index.js.map +1 -1
- package/dist/repository/unit-of-work.d.ts +0 -11
- package/dist/repository/unit-of-work.d.ts.map +1 -1
- package/dist/repository/unit-of-work.js +2 -43
- package/dist/repository/unit-of-work.js.map +1 -1
- package/dist/types/criteria.d.ts +31 -7
- package/dist/types/criteria.d.ts.map +1 -1
- package/dist/types/criteria.js +1 -4
- package/dist/types/criteria.js.map +1 -1
- package/dist/types/domain-event.d.ts +32 -0
- package/dist/types/domain-event.d.ts.map +1 -0
- package/dist/types/domain-event.js +2 -0
- package/dist/types/domain-event.js.map +1 -0
- package/dist/types/domain.d.ts +2 -2
- package/dist/types/domain.d.ts.map +1 -1
- package/dist/types/domain.js +1 -2
- package/dist/types/history-tracker.d.ts +1 -1
- package/dist/types/history-tracker.d.ts.map +1 -1
- package/dist/types/history-tracker.js +1 -2
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +7 -22
- package/dist/types/index.js.map +1 -1
- package/dist/types/standard-schema.js +1 -2
- package/dist/types/unit-of-work.js +1 -2
- package/dist/types/utils.js +1 -2
- package/dist/utils/criteria-operator-validation.d.ts +5 -0
- package/dist/utils/criteria-operator-validation.d.ts.map +1 -0
- package/dist/utils/criteria-operator-validation.js +143 -0
- package/dist/utils/criteria-operator-validation.js.map +1 -0
- package/dist/utils/helpers.d.ts +2 -0
- package/dist/utils/helpers.d.ts.map +1 -0
- package/dist/utils/helpers.js +10 -0
- package/dist/utils/helpers.js.map +1 -0
- package/dist/validation-error.js +3 -9
- package/dist/validation-error.js.map +1 -1
- package/dist/value-object.d.ts +1 -1
- package/dist/value-object.d.ts.map +1 -1
- package/dist/value-object.js +7 -14
- package/dist/value-object.js.map +1 -1
- package/eslint.config.js +9 -3
- package/jest.config.js +1 -1
- package/package.json +14 -20
- package/src/base-entity.ts +3 -3
- package/src/criteria.ts +268 -87
- package/src/deep-proxy.ts +50 -38
- package/src/domain-event-bus.ts +152 -166
- package/src/domain-event.ts +53 -90
- package/src/entity.ts +16 -16
- package/src/exceptions.ts +435 -0
- package/src/id.ts +107 -94
- package/src/index.ts +32 -8
- package/src/paginated-result.ts +15 -3
- package/src/repository/index.ts +1 -6
- package/src/repository/unit-of-work.ts +1 -44
- package/src/types/criteria.ts +95 -17
- package/src/types/domain-event.ts +38 -0
- package/src/types/domain.ts +2 -3
- package/src/types/history-tracker.ts +1 -1
- package/src/types/index.ts +1 -0
- package/src/utils/criteria-operator-validation.ts +171 -0
- package/src/utils/helpers.ts +6 -0
- package/src/validation-error.ts +97 -97
- package/src/value-object.ts +3 -6
- package/tests/criteria.test.ts +324 -1
- package/tests/domain-events.test.ts +431 -445
- package/tests/entity-validation.test.ts +1 -1
- package/tests/entity.test.ts +33 -33
- package/tests/repository.test.ts +4 -2
- package/tests/utils.ts +254 -151
- package/tests/value-object-validation.test.ts +0 -9
- package/tsconfig.json +2 -24
- package/.github/workflows/ci.yml +0 -40
- package/.husky/commit-msg +0 -1
- package/.husky/pre-commit +0 -1
- package/.vscode/settings.json +0 -3
- package/commitlint.config.js +0 -23
- package/dist/repository/in-memory-repository.d.ts +0 -50
- package/dist/repository/in-memory-repository.d.ts.map +0 -1
- package/dist/repository/in-memory-repository.js +0 -97
- package/dist/repository/in-memory-repository.js.map +0 -1
- package/src/repository/in-memory-repository.ts +0 -116
package/dist/criteria.js
CHANGED
|
@@ -1,34 +1,32 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
// ============================================================================
|
|
6
|
-
// Filter Types
|
|
7
|
-
// ============================================================================
|
|
8
|
-
class Criteria {
|
|
1
|
+
import { InvalidCriteriaError } from "./exceptions";
|
|
2
|
+
import { isValidOperatorForType, getValidOperatorsForType, isOperator, } from "./utils/criteria-operator-validation";
|
|
3
|
+
import { parseQueryValue } from "./utils/helpers";
|
|
4
|
+
export class Criteria {
|
|
9
5
|
constructor() {
|
|
10
6
|
this._filters = [];
|
|
11
7
|
this._orders = [];
|
|
12
8
|
this._pagination = { page: 1, limit: 20, offset: 0 };
|
|
13
9
|
}
|
|
14
|
-
/**
|
|
15
|
-
* Create a new Criteria instance
|
|
16
|
-
*/
|
|
17
10
|
static create() {
|
|
18
11
|
return new Criteria();
|
|
19
12
|
}
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
13
|
+
useAdapter(map) {
|
|
14
|
+
this._adapter = map;
|
|
15
|
+
return this;
|
|
16
|
+
}
|
|
17
|
+
getAdapter() {
|
|
18
|
+
return this._adapter;
|
|
19
|
+
}
|
|
20
|
+
where(field, operator, value, options) {
|
|
21
|
+
this.validateOperator(operator, value);
|
|
24
22
|
this._filters.push({
|
|
25
|
-
field,
|
|
23
|
+
field: this.resolveFieldPath(field),
|
|
26
24
|
operator,
|
|
27
25
|
value,
|
|
26
|
+
options,
|
|
28
27
|
});
|
|
29
28
|
return this;
|
|
30
29
|
}
|
|
31
|
-
// === Shorthand methods (tipados) ===
|
|
32
30
|
whereEquals(field, value) {
|
|
33
31
|
return this.where(field, "equals", value);
|
|
34
32
|
}
|
|
@@ -47,10 +45,18 @@ class Criteria {
|
|
|
47
45
|
whereNotNull(field) {
|
|
48
46
|
return this.where(field, "isNotNull");
|
|
49
47
|
}
|
|
50
|
-
|
|
48
|
+
whereSome(field, operator, value) {
|
|
49
|
+
return this.where(field, operator, value, { quantifier: "some" });
|
|
50
|
+
}
|
|
51
|
+
whereEvery(field, operator, value) {
|
|
52
|
+
return this.where(field, operator, value, { quantifier: "every" });
|
|
53
|
+
}
|
|
54
|
+
whereNone(field, operator, value) {
|
|
55
|
+
return this.where(field, operator, value, { quantifier: "none" });
|
|
56
|
+
}
|
|
51
57
|
orderBy(field, direction = "asc") {
|
|
52
58
|
this._orders.push({
|
|
53
|
-
field:
|
|
59
|
+
field: this.resolveFieldPath(field),
|
|
54
60
|
direction,
|
|
55
61
|
});
|
|
56
62
|
return this;
|
|
@@ -61,12 +67,9 @@ class Criteria {
|
|
|
61
67
|
orderByDesc(field) {
|
|
62
68
|
return this.orderBy(field, "desc");
|
|
63
69
|
}
|
|
64
|
-
// --------------------------------------------------------------------------
|
|
65
|
-
// Search (tipado)
|
|
66
|
-
// --------------------------------------------------------------------------
|
|
67
70
|
search(fields, value) {
|
|
68
71
|
this._search = {
|
|
69
|
-
fields,
|
|
72
|
+
fields: fields.map(this.resolveFieldPath),
|
|
70
73
|
value,
|
|
71
74
|
};
|
|
72
75
|
return this;
|
|
@@ -75,9 +78,13 @@ class Criteria {
|
|
|
75
78
|
return !!this._search;
|
|
76
79
|
}
|
|
77
80
|
getSearch() {
|
|
78
|
-
return this._search
|
|
81
|
+
return this._search
|
|
82
|
+
? {
|
|
83
|
+
fields: this._search.fields.map(this.resolveFieldPath),
|
|
84
|
+
value: this._search.value,
|
|
85
|
+
}
|
|
86
|
+
: undefined;
|
|
79
87
|
}
|
|
80
|
-
// === Pagination ===
|
|
81
88
|
paginate(page, limit) {
|
|
82
89
|
if (page < 1)
|
|
83
90
|
page = 1;
|
|
@@ -93,12 +100,19 @@ class Criteria {
|
|
|
93
100
|
limit(limit) {
|
|
94
101
|
return this.paginate(1, limit);
|
|
95
102
|
}
|
|
96
|
-
// === Getters ===
|
|
97
103
|
getFilters() {
|
|
98
|
-
return this._filters
|
|
104
|
+
return this._filters.map((filter) => ({
|
|
105
|
+
field: this.resolveFieldPath(filter.field),
|
|
106
|
+
operator: filter.operator,
|
|
107
|
+
value: filter.value,
|
|
108
|
+
options: filter.options,
|
|
109
|
+
}));
|
|
99
110
|
}
|
|
100
111
|
getOrders() {
|
|
101
|
-
return this._orders
|
|
112
|
+
return this._orders.map((order) => ({
|
|
113
|
+
field: this.resolveFieldPath(order.field),
|
|
114
|
+
direction: order.direction,
|
|
115
|
+
}));
|
|
102
116
|
}
|
|
103
117
|
getPagination() {
|
|
104
118
|
return this._pagination;
|
|
@@ -112,40 +126,109 @@ class Criteria {
|
|
|
112
126
|
hasPagination() {
|
|
113
127
|
return this._pagination !== undefined;
|
|
114
128
|
}
|
|
115
|
-
// === Utilities ===
|
|
116
129
|
clone() {
|
|
117
130
|
const cloned = Criteria.create();
|
|
118
|
-
cloned._filters = [
|
|
119
|
-
|
|
131
|
+
cloned._filters = [
|
|
132
|
+
...this._filters.map((filter) => ({
|
|
133
|
+
field: this.resolveFieldPath(filter.field),
|
|
134
|
+
operator: filter.operator,
|
|
135
|
+
value: filter.value,
|
|
136
|
+
options: filter.options,
|
|
137
|
+
})),
|
|
138
|
+
];
|
|
139
|
+
cloned._orders = [
|
|
140
|
+
...this._orders.map((order) => ({
|
|
141
|
+
field: this.resolveFieldPath(order.field),
|
|
142
|
+
direction: order.direction,
|
|
143
|
+
})),
|
|
144
|
+
];
|
|
120
145
|
cloned._pagination = { ...this._pagination };
|
|
146
|
+
cloned._search = this._search
|
|
147
|
+
? {
|
|
148
|
+
fields: this._search.fields.map(this.resolveFieldPath),
|
|
149
|
+
value: this._search.value,
|
|
150
|
+
}
|
|
151
|
+
: undefined;
|
|
152
|
+
if (this._adapter) {
|
|
153
|
+
cloned.useAdapter(this._adapter);
|
|
154
|
+
}
|
|
121
155
|
return cloned;
|
|
122
156
|
}
|
|
123
157
|
toJSON() {
|
|
124
158
|
return {
|
|
125
|
-
filters: this._filters
|
|
126
|
-
|
|
159
|
+
filters: this._filters.map((filter) => ({
|
|
160
|
+
field: this.resolveFieldPath(filter.field),
|
|
161
|
+
operator: filter.operator,
|
|
162
|
+
value: filter.value,
|
|
163
|
+
options: filter.options,
|
|
164
|
+
})),
|
|
165
|
+
orders: this._orders.map((order) => ({
|
|
166
|
+
field: this.resolveFieldPath(order.field),
|
|
167
|
+
direction: order.direction,
|
|
168
|
+
})),
|
|
127
169
|
pagination: this._pagination,
|
|
128
|
-
search: this._search
|
|
170
|
+
search: this._search
|
|
171
|
+
? {
|
|
172
|
+
fields: this._search.fields.map(this.resolveFieldPath),
|
|
173
|
+
value: this._search.value,
|
|
174
|
+
}
|
|
175
|
+
: undefined,
|
|
129
176
|
};
|
|
130
177
|
}
|
|
131
|
-
static fromObject(obj) {
|
|
178
|
+
static fromObject(obj, adapter) {
|
|
132
179
|
const criteria = Criteria.create();
|
|
133
|
-
if (
|
|
180
|
+
if (adapter) {
|
|
181
|
+
criteria.useAdapter(adapter);
|
|
182
|
+
}
|
|
183
|
+
if (obj.filters) {
|
|
184
|
+
for (const filter of obj.filters) {
|
|
185
|
+
filter.field = criteria.resolveFieldPath(filter.field);
|
|
186
|
+
criteria.validateOperator(filter.operator, filter.value);
|
|
187
|
+
}
|
|
134
188
|
criteria._filters = [...obj.filters];
|
|
189
|
+
}
|
|
135
190
|
if (obj.orders)
|
|
136
|
-
criteria._orders = [
|
|
191
|
+
criteria._orders = [
|
|
192
|
+
...obj.orders.map((order) => ({
|
|
193
|
+
field: criteria.resolveFieldPath(order.field),
|
|
194
|
+
direction: order.direction,
|
|
195
|
+
})),
|
|
196
|
+
];
|
|
137
197
|
if (obj.pagination)
|
|
138
198
|
criteria._pagination = { ...obj.pagination };
|
|
139
199
|
if (obj.search)
|
|
140
|
-
criteria._search = {
|
|
200
|
+
criteria._search = {
|
|
201
|
+
...obj.search,
|
|
202
|
+
fields: obj.search.fields.map(criteria.resolveFieldPath),
|
|
203
|
+
};
|
|
141
204
|
return criteria;
|
|
142
205
|
}
|
|
143
|
-
|
|
206
|
+
resolveFieldPath(field) {
|
|
207
|
+
if (!this?._adapter)
|
|
208
|
+
return field;
|
|
209
|
+
if (this._adapter[field]) {
|
|
210
|
+
return this._adapter[field];
|
|
211
|
+
}
|
|
212
|
+
const parts = field.split(".");
|
|
213
|
+
for (let i = parts.length; i > 0; i--) {
|
|
214
|
+
const prefix = parts.slice(0, i).join(".");
|
|
215
|
+
if (this._adapter[prefix]) {
|
|
216
|
+
const rest = parts.slice(i).join(".");
|
|
217
|
+
return rest
|
|
218
|
+
? `${this._adapter[prefix]}.${rest}`
|
|
219
|
+
: this._adapter[prefix];
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
return field;
|
|
223
|
+
}
|
|
224
|
+
static fromQueryParams(query, adapter) {
|
|
144
225
|
const criteria = Criteria.create();
|
|
226
|
+
if (adapter) {
|
|
227
|
+
criteria.useAdapter(adapter);
|
|
228
|
+
}
|
|
145
229
|
for (const [key, value] of Object.entries(query)) {
|
|
146
|
-
// Pagination
|
|
147
230
|
if (key === "page") {
|
|
148
|
-
continue;
|
|
231
|
+
continue;
|
|
149
232
|
}
|
|
150
233
|
if (key === "limit") {
|
|
151
234
|
continue;
|
|
@@ -153,36 +236,49 @@ class Criteria {
|
|
|
153
236
|
if (key === "sort") {
|
|
154
237
|
continue;
|
|
155
238
|
}
|
|
156
|
-
const [field,
|
|
157
|
-
if (!
|
|
239
|
+
const [field, operatorWithQuantifier] = key.split(":");
|
|
240
|
+
if (!operatorWithQuantifier || !field)
|
|
158
241
|
continue;
|
|
242
|
+
const [operatorRaw, quantifierRaw] = operatorWithQuantifier.split("@");
|
|
159
243
|
const operator = isOperator(operatorRaw) ? operatorRaw : null;
|
|
160
|
-
if (!operator)
|
|
161
|
-
throw new
|
|
244
|
+
if (!operator) {
|
|
245
|
+
throw new InvalidCriteriaError(`Invalid filter operator`, operatorRaw);
|
|
246
|
+
}
|
|
247
|
+
const validQuantifiers = ["some", "every", "none"];
|
|
248
|
+
const quantifier = quantifierRaw && validQuantifiers.includes(quantifierRaw)
|
|
249
|
+
? quantifierRaw
|
|
250
|
+
: undefined;
|
|
251
|
+
if (quantifierRaw && !quantifier) {
|
|
252
|
+
throw new InvalidCriteriaError(`Invalid quantifier. Valid values: ${validQuantifiers.join(", ")}`, quantifierRaw);
|
|
253
|
+
}
|
|
254
|
+
const options = quantifier
|
|
255
|
+
? { quantifier }
|
|
256
|
+
: undefined;
|
|
162
257
|
let parsedValue = value;
|
|
258
|
+
const resolvedField = criteria.resolveFieldPath(field);
|
|
163
259
|
if (operator === "between") {
|
|
164
260
|
parsedValue = value
|
|
165
261
|
.split(",")
|
|
166
262
|
.map((v) => parseQueryValue(v.trim()));
|
|
167
263
|
if (parsedValue.length === 2) {
|
|
168
|
-
criteria.
|
|
264
|
+
criteria.where(resolvedField, "between", [parsedValue[0], parsedValue[1]], options);
|
|
169
265
|
}
|
|
170
266
|
continue;
|
|
171
267
|
}
|
|
172
268
|
if (operator === "in" || operator === "notIn") {
|
|
173
269
|
parsedValue = value.split(",").map(parseQueryValue);
|
|
174
|
-
criteria.where(field, operator, parsedValue);
|
|
270
|
+
criteria.where(field, operator, parsedValue, options);
|
|
175
271
|
continue;
|
|
176
272
|
}
|
|
177
|
-
|
|
273
|
+
const parsedFinalValue = parseQueryValue(value);
|
|
274
|
+
criteria.validateOperator(operator, parsedFinalValue);
|
|
275
|
+
criteria.where(field, operator, parsedFinalValue, options);
|
|
178
276
|
}
|
|
179
|
-
// Pagination
|
|
180
277
|
const page = query.page ? parseInt(query.page) : undefined;
|
|
181
278
|
const limit = query.limit ? parseInt(query.limit) : undefined;
|
|
182
279
|
if (page && limit) {
|
|
183
280
|
criteria.paginate(page, limit);
|
|
184
281
|
}
|
|
185
|
-
// Sorting
|
|
186
282
|
if (query.orderBy) {
|
|
187
283
|
const sortParts = query.orderBy.split(",");
|
|
188
284
|
sortParts.forEach((part) => {
|
|
@@ -194,25 +290,16 @@ class Criteria {
|
|
|
194
290
|
const fields = query.searchFields
|
|
195
291
|
.split(",")
|
|
196
292
|
.filter(Boolean);
|
|
197
|
-
|
|
293
|
+
const resolvedFields = fields.map(criteria.resolveFieldPath);
|
|
294
|
+
criteria.search(resolvedFields, query.search);
|
|
198
295
|
}
|
|
199
296
|
return criteria;
|
|
200
297
|
}
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
if (!isNaN(Number(value)))
|
|
208
|
-
return Number(value); // number
|
|
209
|
-
if (value === "true" || value === "false")
|
|
210
|
-
return value === "true"; // boolean
|
|
211
|
-
if (!isNaN(Date.parse(value)))
|
|
212
|
-
return new Date(value); // Date
|
|
213
|
-
return value; // string
|
|
214
|
-
}
|
|
215
|
-
function isOperator(value) {
|
|
216
|
-
return types_1.FILTER_OPERATORS.includes(value);
|
|
298
|
+
validateOperator(operator, value) {
|
|
299
|
+
if (value !== undefined && !isValidOperatorForType(value, operator)) {
|
|
300
|
+
const validOps = getValidOperatorsForType(value);
|
|
301
|
+
throw new InvalidCriteriaError(`Operator "${operator}" is not valid for type "${typeof value}". Valid operators: ${validOps.join(", ")}`, operator);
|
|
302
|
+
}
|
|
303
|
+
}
|
|
217
304
|
}
|
|
218
305
|
//# sourceMappingURL=criteria.js.map
|
package/dist/criteria.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"criteria.js","sourceRoot":"","sources":["../src/criteria.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"criteria.js","sourceRoot":"","sources":["../src/criteria.ts"],"names":[],"mappings":"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"}
|
package/dist/deep-proxy.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deep-proxy.d.ts","sourceRoot":"","sources":["../src/deep-proxy.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,qBAAa,SAAS;IAWlB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,SAAS,CAAC;IAZpB,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,WAAW,CAAyC;IAC5D,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,mBAAmB,CAAiC;IAC5D,OAAO,CAAC,qBAAqB,CAAiC;IAC9D,OAAO,CAAC,iBAAiB,CAA4B;IACrD,OAAO,CAAC,gBAAgB,CAAkB;IAC1C,OAAO,CAAC,oBAAoB,CAAyB;gBAG3C,MAAM,EAAE,GAAG,EACX,IAAI,GAAE,MAAW,EACjB,SAAS,CAAC,EAAE,SAAS,YAAA;IAK/B,WAAW,IAAI,GAAG;
|
|
1
|
+
{"version":3,"file":"deep-proxy.d.ts","sourceRoot":"","sources":["../src/deep-proxy.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,qBAAa,SAAS;IAWlB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,SAAS,CAAC;IAZpB,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,WAAW,CAAyC;IAC5D,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,mBAAmB,CAAiC;IAC5D,OAAO,CAAC,qBAAqB,CAAiC;IAC9D,OAAO,CAAC,iBAAiB,CAA4B;IACrD,OAAO,CAAC,gBAAgB,CAAkB;IAC1C,OAAO,CAAC,oBAAoB,CAAyB;gBAG3C,MAAM,EAAE,GAAG,EACX,IAAI,GAAE,MAAW,EACjB,SAAS,CAAC,EAAE,SAAS,YAAA;IAK/B,WAAW,IAAI,GAAG;IA8FlB,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,gBAAgB;IA8ExB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IA4DjD,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAanD,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,uBAAuB;IAI/B,OAAO,CAAC,iBAAiB;IAoBzB,OAAO,CAAC,kBAAkB;IA2C1B,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,SAAS;IAcjB,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,qBAAqB;IAsB7B,UAAU,IAAI,YAAY,EAAE;IAI5B,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAS5D,YAAY,IAAI,IAAI;IAOpB,SAAS,IAAI,GAAG;CAGjB"}
|
package/dist/deep-proxy.js
CHANGED
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// ============================================================================
|
|
3
2
|
// Deep Proxy - Core Change Tracking
|
|
4
3
|
// ============================================================================
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const id_1 = require("./id");
|
|
8
|
-
class DeepProxy {
|
|
4
|
+
import { Id } from "./id";
|
|
5
|
+
export class DeepProxy {
|
|
9
6
|
constructor(target, path = "", rootProxy) {
|
|
10
7
|
this.target = target;
|
|
11
8
|
this.path = path;
|
|
@@ -25,6 +22,8 @@ class DeepProxy {
|
|
|
25
22
|
const handler = {
|
|
26
23
|
get: (target, prop, receiver) => {
|
|
27
24
|
const value = Reflect.get(target, prop, receiver);
|
|
25
|
+
if (!this.rootProxy)
|
|
26
|
+
throw new Error("Root proxy is required");
|
|
28
27
|
const currentPath = this.path
|
|
29
28
|
? `${this.path}.${String(prop)}`
|
|
30
29
|
: String(prop);
|
|
@@ -53,6 +52,8 @@ class DeepProxy {
|
|
|
53
52
|
const currentPath = this.path
|
|
54
53
|
? `${this.path}.${String(prop)}`
|
|
55
54
|
: String(prop);
|
|
55
|
+
if (!this.rootProxy)
|
|
56
|
+
throw new Error("Root proxy is required");
|
|
56
57
|
const oldValue = Reflect.get(target, prop, receiver);
|
|
57
58
|
const isArrayAssignment = Array.isArray(newValue);
|
|
58
59
|
if (!isArrayAssignment && oldValue === newValue)
|
|
@@ -116,6 +117,8 @@ class DeepProxy {
|
|
|
116
117
|
return new Proxy(array, {
|
|
117
118
|
get(target, prop, receiver) {
|
|
118
119
|
const value = Reflect.get(target, prop, receiver);
|
|
120
|
+
if (!self.rootProxy)
|
|
121
|
+
throw new Error("Root proxy is required");
|
|
119
122
|
if (typeof value === "function") {
|
|
120
123
|
const mutatingMethods = [
|
|
121
124
|
"push",
|
|
@@ -129,6 +132,8 @@ class DeepProxy {
|
|
|
129
132
|
if (mutatingMethods.includes(String(prop))) {
|
|
130
133
|
return function (...args) {
|
|
131
134
|
// Capture state before mutation
|
|
135
|
+
if (!self.rootProxy)
|
|
136
|
+
throw new Error("Root proxy is required");
|
|
132
137
|
const oldArray = target.slice();
|
|
133
138
|
const result = value.apply(target, args);
|
|
134
139
|
// Add to history
|
|
@@ -157,6 +162,8 @@ class DeepProxy {
|
|
|
157
162
|
},
|
|
158
163
|
set(target, prop, newValue, receiver) {
|
|
159
164
|
if (!isNaN(Number(prop))) {
|
|
165
|
+
if (!self.rootProxy)
|
|
166
|
+
throw new Error("Root proxy is required");
|
|
160
167
|
// Capture state before change
|
|
161
168
|
const oldArray = target.slice();
|
|
162
169
|
const result = Reflect.set(target, prop, newValue, receiver);
|
|
@@ -179,6 +186,8 @@ class DeepProxy {
|
|
|
179
186
|
});
|
|
180
187
|
}
|
|
181
188
|
subscribe(path, callback) {
|
|
189
|
+
if (!this.rootProxy)
|
|
190
|
+
throw new Error("Root proxy is required");
|
|
182
191
|
if (path === "*") {
|
|
183
192
|
this.rootProxy.globalSubscribers.add(callback);
|
|
184
193
|
return;
|
|
@@ -226,6 +235,8 @@ class DeepProxy {
|
|
|
226
235
|
}
|
|
227
236
|
}
|
|
228
237
|
unsubscribe(path, callback) {
|
|
238
|
+
if (!this.rootProxy)
|
|
239
|
+
throw new Error("Root proxy is required");
|
|
229
240
|
if (path === "*") {
|
|
230
241
|
this.rootProxy.globalSubscribers.delete(callback);
|
|
231
242
|
return;
|
|
@@ -303,7 +314,7 @@ class DeepProxy {
|
|
|
303
314
|
return obj;
|
|
304
315
|
if (obj instanceof Date)
|
|
305
316
|
return new Date(obj.getTime());
|
|
306
|
-
if (obj instanceof
|
|
317
|
+
if (obj instanceof Id)
|
|
307
318
|
return obj.value;
|
|
308
319
|
if (obj.toJson && typeof obj.toJson === "function")
|
|
309
320
|
return obj.toJson();
|
|
@@ -319,13 +330,13 @@ class DeepProxy {
|
|
|
319
330
|
getItemId(item) {
|
|
320
331
|
if (!item)
|
|
321
332
|
return undefined;
|
|
322
|
-
if (item.id instanceof
|
|
333
|
+
if (item.id instanceof Id)
|
|
323
334
|
return item.id.value;
|
|
324
335
|
if (item.id !== undefined)
|
|
325
336
|
return String(item.id);
|
|
326
337
|
if (typeof item === "object" && "id" in item) {
|
|
327
338
|
const id = item.id;
|
|
328
|
-
return id instanceof
|
|
339
|
+
return id instanceof Id ? id.value : String(id);
|
|
329
340
|
}
|
|
330
341
|
return undefined;
|
|
331
342
|
}
|
|
@@ -370,5 +381,4 @@ class DeepProxy {
|
|
|
370
381
|
return this.target;
|
|
371
382
|
}
|
|
372
383
|
}
|
|
373
|
-
exports.DeepProxy = DeepProxy;
|
|
374
384
|
//# sourceMappingURL=deep-proxy.js.map
|
package/dist/deep-proxy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deep-proxy.js","sourceRoot":"","sources":["../src/deep-proxy.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"deep-proxy.js","sourceRoot":"","sources":["../src/deep-proxy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IDomainEvent, DomainEventHandler, IDomainEventHandler } from "
|
|
1
|
+
import { IDomainEvent, DomainEventHandler, IDomainEventHandler } from ".";
|
|
2
2
|
type EventConstructor<T extends IDomainEvent = IDomainEvent> = new (...args: any[]) => T;
|
|
3
3
|
/**
|
|
4
4
|
* Domain Event Bus - Singleton pattern for event pub/sub
|
|
@@ -15,7 +15,10 @@ export declare class DomainEventBus {
|
|
|
15
15
|
/**
|
|
16
16
|
* Subscribe to a specific event type
|
|
17
17
|
*/
|
|
18
|
-
subscribe<T extends IDomainEvent>(
|
|
18
|
+
subscribe<T extends IDomainEvent>(props: {
|
|
19
|
+
event: EventConstructor<T> | string;
|
|
20
|
+
handler: DomainEventHandler<T> | IDomainEventHandler<T>;
|
|
21
|
+
}): void;
|
|
19
22
|
/**
|
|
20
23
|
* Subscribe to all events (wildcard)
|
|
21
24
|
*/
|
|
@@ -49,9 +52,5 @@ export declare class DomainEventBus {
|
|
|
49
52
|
*/
|
|
50
53
|
private executeHandler;
|
|
51
54
|
}
|
|
52
|
-
/**
|
|
53
|
-
* Convenience function to get the event bus instance
|
|
54
|
-
*/
|
|
55
|
-
export declare function getEventBus(): DomainEventBus;
|
|
56
55
|
export {};
|
|
57
56
|
//# sourceMappingURL=domain-event-bus.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"domain-event-bus.d.ts","sourceRoot":"","sources":["../src/domain-event-bus.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"domain-event-bus.d.ts","sourceRoot":"","sources":["../src/domain-event-bus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,GAAG,CAAC;AAE1E,KAAK,gBAAgB,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,IAAI,KAC7D,GAAG,IAAI,EAAE,GAAG,EAAE,KACX,CAAC,CAAC;AAEP;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAGF;IACd,OAAO,CAAC,gBAAgB,CAEV;IAEd,OAAO;IAEP;;OAEG;IACH,MAAM,CAAC,WAAW,IAAI,cAAc;IAOpC;;OAEG;IACH,SAAS,CAAC,CAAC,SAAS,YAAY,EAAE,KAAK,EAAE;QACvC,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;QACpC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC;KACzD,GAAG,IAAI;IAWR;;OAEG;IACH,YAAY,CACV,OAAO,EACH,kBAAkB,CAAC,YAAY,CAAC,GAChC,mBAAmB,CAAC,YAAY,CAAC,GACpC,IAAI;IAIP;;OAEG;IACH,WAAW,CAAC,CAAC,SAAS,YAAY,EAChC,SAAS,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,MAAM,EACvC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,GACtD,IAAI;IAaP;;OAEG;IACH,cAAc,CACZ,OAAO,EACH,kBAAkB,CAAC,YAAY,CAAC,GAChC,mBAAmB,CAAC,YAAY,CAAC,GACpC,IAAI;IAIP;;OAEG;IACG,OAAO,CAAC,CAAC,SAAS,YAAY,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB9D;;OAEG;IACG,UAAU,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvD;;OAEG;IACH,gBAAgB,IAAI,IAAI;IAKxB;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,gBAAgB,GAAG,MAAM,GAAG,MAAM;IAM7D;;OAEG;YACW,cAAc;CAe7B"}
|
package/dist/domain-event-bus.js
CHANGED
|
@@ -1,14 +1,7 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// ============================================================================
|
|
3
|
-
// Domain Event Bus - Pub/Sub for Domain Events
|
|
4
|
-
// ============================================================================
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.DomainEventBus = void 0;
|
|
7
|
-
exports.getEventBus = getEventBus;
|
|
8
1
|
/**
|
|
9
2
|
* Domain Event Bus - Singleton pattern for event pub/sub
|
|
10
3
|
*/
|
|
11
|
-
class DomainEventBus {
|
|
4
|
+
export class DomainEventBus {
|
|
12
5
|
constructor() {
|
|
13
6
|
this.handlers = new Map();
|
|
14
7
|
this.wildcardHandlers = new Set();
|
|
@@ -25,8 +18,9 @@ class DomainEventBus {
|
|
|
25
18
|
/**
|
|
26
19
|
* Subscribe to a specific event type
|
|
27
20
|
*/
|
|
28
|
-
subscribe(
|
|
29
|
-
const
|
|
21
|
+
subscribe(props) {
|
|
22
|
+
const { event, handler } = props;
|
|
23
|
+
const eventName = typeof event === "string" ? event : event.name;
|
|
30
24
|
if (!this.handlers.has(eventName)) {
|
|
31
25
|
this.handlers.set(eventName, new Set());
|
|
32
26
|
}
|
|
@@ -107,11 +101,4 @@ class DomainEventBus {
|
|
|
107
101
|
}
|
|
108
102
|
}
|
|
109
103
|
}
|
|
110
|
-
exports.DomainEventBus = DomainEventBus;
|
|
111
|
-
/**
|
|
112
|
-
* Convenience function to get the event bus instance
|
|
113
|
-
*/
|
|
114
|
-
function getEventBus() {
|
|
115
|
-
return DomainEventBus.getInstance();
|
|
116
|
-
}
|
|
117
104
|
//# sourceMappingURL=domain-event-bus.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"domain-event-bus.js","sourceRoot":"","sources":["../src/domain-event-bus.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"domain-event-bus.js","sourceRoot":"","sources":["../src/domain-event-bus.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,MAAM,OAAO,cAAc;IAUzB;QARQ,aAAQ,GAGZ,IAAI,GAAG,EAAE,CAAC;QACN,qBAAgB,GAEpB,IAAI,GAAG,EAAE,CAAC;IAES,CAAC;IAExB;;OAEG;IACH,MAAM,CAAC,WAAW;QAChB,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;YAC7B,cAAc,CAAC,QAAQ,GAAG,IAAI,cAAc,EAAE,CAAC;QACjD,CAAC;QACD,OAAO,cAAc,CAAC,QAAQ,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,SAAS,CAAyB,KAGjC;QACC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;QACjC,MAAM,SAAS,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;QAEjE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,YAAY,CACV,OAEqC;QAErC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,WAAW,CACT,SAAuC,EACvC,OAAuD;QAEvD,MAAM,SAAS,GACb,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC;QAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAE9C,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACzB,IAAI,QAAQ,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACxB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,cAAc,CACZ,OAEqC;QAErC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAyB,KAAQ;QAC5C,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;QAE3D,4BAA4B;QAC5B,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAC5D,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CACpC,CAAC;QAEF,4BAA4B;QAC5B,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CACzE,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CACpC,CAAC;QAEF,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,gBAAgB,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,MAAsB;QACrC,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,SAAoC;QAClD,MAAM,SAAS,GACb,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC;QAC7D,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,cAAc,CAC1B,OAA2D,EAC3D,KAAmB;QAEnB,IAAI,CAAC;YACH,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE,CAAC;gBAClC,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;iBAAM,CAAC;gBACN,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,wBAAwB,KAAK,CAAC,SAAS,GAAG,EAAE,KAAK,CAAC,CAAC;YACjE,kEAAkE;QACpE,CAAC;IACH,CAAC;CACF"}
|