ddd-node 29.4.0 → 29.6.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/dist/base/decorators/model.js +7 -11
- package/dist/base/decorators/prop.js +1 -1
- package/dist/base/meta/model-static-values.js +2 -1
- package/dist/base/model/model.js +4 -2
- package/dist/core/aggregate/aggregate-base/aggregate.js +1 -4
- package/dist/core/aggregate/event-sourced-aggregate/event-sourced-aggregate.js +1 -7
- package/dist/core/message/command/command.js +2 -8
- package/dist/core/message/event/event.js +2 -9
- package/dist/core/message/message-base/message.js +1 -6
- package/dist/core/model-with-id/model-with-id.js +1 -4
- package/dist/decorators/enum.js +1 -1
- package/dist/event-pubsub/event-publisher.js +14 -3
- package/dist/event-pubsub/event-subscriber.js +2 -1
- package/package.json +1 -1
|
@@ -23,24 +23,20 @@ function Model(p1, p2, p3) {
|
|
|
23
23
|
if (typeof p2 === "number")
|
|
24
24
|
modelOptions = { name: p1, version: p2 };
|
|
25
25
|
else
|
|
26
|
-
modelOptions = { name: p1,
|
|
26
|
+
modelOptions = Object.assign({ name: p1 }, p2);
|
|
27
27
|
}
|
|
28
28
|
else if (p1 && p2 && p3) {
|
|
29
|
-
modelOptions = {
|
|
30
|
-
name: p1,
|
|
31
|
-
version: p2,
|
|
32
|
-
...p3,
|
|
33
|
-
};
|
|
29
|
+
modelOptions = Object.assign({ name: p1, version: p2 }, p3);
|
|
34
30
|
}
|
|
35
31
|
modelOptions = lodash_1.default.merge(defaultModelOptions, modelOptions);
|
|
36
32
|
return (target) => {
|
|
37
|
-
if (modelOptions
|
|
33
|
+
if (modelOptions === null || modelOptions === void 0 ? void 0 : modelOptions.name)
|
|
38
34
|
(0, meta_1.defineModelName)(target, modelOptions.name);
|
|
39
|
-
if (modelOptions
|
|
35
|
+
if (modelOptions === null || modelOptions === void 0 ? void 0 : modelOptions.version)
|
|
40
36
|
(0, meta_1.defineModelVersion)(target, modelOptions.version);
|
|
41
|
-
if (modelOptions
|
|
37
|
+
if (modelOptions === null || modelOptions === void 0 ? void 0 : modelOptions.domain)
|
|
42
38
|
(0, meta_1.defineModelDomain)(target, modelOptions.domain);
|
|
43
|
-
if (modelOptions
|
|
39
|
+
if (modelOptions === null || modelOptions === void 0 ? void 0 : modelOptions.autoRegisterModel) {
|
|
44
40
|
const domainName = (0, meta_1.getModelDomain)(target);
|
|
45
41
|
const domainManager = domain_1.DomainManager.instance();
|
|
46
42
|
if (!domainManager.hasDomain(domainName)) {
|
|
@@ -49,7 +45,7 @@ function Model(p1, p2, p3) {
|
|
|
49
45
|
const domain = domainManager.getDomain(domainName);
|
|
50
46
|
domain.modelRegistry.registerModel(target);
|
|
51
47
|
}
|
|
52
|
-
if (modelOptions
|
|
48
|
+
if (modelOptions === null || modelOptions === void 0 ? void 0 : modelOptions.propsValidator)
|
|
53
49
|
(0, meta_1.defineModelPropsValidator)(target, modelOptions.propsValidator);
|
|
54
50
|
};
|
|
55
51
|
}
|
|
@@ -4,7 +4,7 @@ exports.Prop = void 0;
|
|
|
4
4
|
const meta_1 = require("../meta");
|
|
5
5
|
const Prop = (propTargetKey) => {
|
|
6
6
|
return (target, key) => {
|
|
7
|
-
(0, meta_1.defineModelProp)(target, key, propTargetKey
|
|
7
|
+
(0, meta_1.defineModelProp)(target, key, propTargetKey !== null && propTargetKey !== void 0 ? propTargetKey : key);
|
|
8
8
|
};
|
|
9
9
|
};
|
|
10
10
|
exports.Prop = Prop;
|
|
@@ -29,11 +29,12 @@ const setModelStaticValue = (target, key, value) => {
|
|
|
29
29
|
};
|
|
30
30
|
exports.setModelStaticValue = setModelStaticValue;
|
|
31
31
|
const getModelStaticValue = (target, key) => {
|
|
32
|
+
var _a;
|
|
32
33
|
let _target = target;
|
|
33
34
|
do {
|
|
34
35
|
const staticValues = (0, exports.getOwnModelStaticValues)(_target);
|
|
35
36
|
if (staticValues.has(key))
|
|
36
|
-
return staticValues.get(key)
|
|
37
|
+
return (_a = staticValues.get(key)) === null || _a === void 0 ? void 0 : _a.value;
|
|
37
38
|
_target = Reflect.getPrototypeOf(_target);
|
|
38
39
|
} while (_target !== null);
|
|
39
40
|
return undefined;
|
package/dist/base/model/model.js
CHANGED
|
@@ -12,7 +12,8 @@ class ModelBase {
|
|
|
12
12
|
return model instanceof ModelBase;
|
|
13
13
|
}
|
|
14
14
|
static modelMutable() {
|
|
15
|
-
|
|
15
|
+
var _a;
|
|
16
|
+
return (_a = (0, meta_1.getModelMutable)(this)) !== null && _a !== void 0 ? _a : false;
|
|
16
17
|
}
|
|
17
18
|
static modelName() {
|
|
18
19
|
return (0, meta_1.getModelName)(this);
|
|
@@ -53,7 +54,8 @@ class ModelBase {
|
|
|
53
54
|
configurable: true,
|
|
54
55
|
enumerable: true,
|
|
55
56
|
get() {
|
|
56
|
-
|
|
57
|
+
var _a;
|
|
58
|
+
return (_a = this._props) === null || _a === void 0 ? void 0 : _a[propTargetKey];
|
|
57
59
|
},
|
|
58
60
|
});
|
|
59
61
|
}
|
|
@@ -20,10 +20,7 @@ let AggregateBase = class AggregateBase extends model_with_id_1.ModelWithId {
|
|
|
20
20
|
this._version = metadata.version;
|
|
21
21
|
}
|
|
22
22
|
metadata() {
|
|
23
|
-
return {
|
|
24
|
-
...super.metadata(),
|
|
25
|
-
version: this.version(),
|
|
26
|
-
};
|
|
23
|
+
return Object.assign(Object.assign({}, super.metadata()), { version: this.version() });
|
|
27
24
|
}
|
|
28
25
|
createEventSource() {
|
|
29
26
|
return {
|
|
@@ -29,13 +29,7 @@ class EventSourcedAggregateBase extends aggregate_base_1.AggregateBase {
|
|
|
29
29
|
}
|
|
30
30
|
modelDescriptor() {
|
|
31
31
|
const aggregateClass = this.constructor;
|
|
32
|
-
return {
|
|
33
|
-
...super.modelDescriptor(),
|
|
34
|
-
ownEventApplierMap: aggregateClass.ownEventApplierMap(),
|
|
35
|
-
eventApplierMap: aggregateClass.eventApplierMap(),
|
|
36
|
-
ownCommandHandlerMap: aggregateClass.ownCommandHandlerMap(),
|
|
37
|
-
commandHandlerMap: aggregateClass.commandHandlerMap(),
|
|
38
|
-
};
|
|
32
|
+
return Object.assign(Object.assign({}, super.modelDescriptor()), { ownEventApplierMap: aggregateClass.ownEventApplierMap(), eventApplierMap: aggregateClass.eventApplierMap(), ownCommandHandlerMap: aggregateClass.ownCommandHandlerMap(), commandHandlerMap: aggregateClass.commandHandlerMap() });
|
|
39
33
|
}
|
|
40
34
|
version() {
|
|
41
35
|
return this._version + this._pastEvents.length + this._events.length;
|
|
@@ -17,16 +17,10 @@ class CommandBase extends message_base_1.MessageBase {
|
|
|
17
17
|
}
|
|
18
18
|
modelDescriptor() {
|
|
19
19
|
const commandClass = this.constructor;
|
|
20
|
-
return {
|
|
21
|
-
...super.modelDescriptor(),
|
|
22
|
-
commandType: commandClass.commandType(),
|
|
23
|
-
};
|
|
20
|
+
return Object.assign(Object.assign({}, super.modelDescriptor()), { commandType: commandClass.commandType() });
|
|
24
21
|
}
|
|
25
22
|
metadata() {
|
|
26
|
-
return {
|
|
27
|
-
...super.metadata(),
|
|
28
|
-
commandType: this._commandType,
|
|
29
|
-
};
|
|
23
|
+
return Object.assign(Object.assign({}, super.metadata()), { commandType: this._commandType });
|
|
30
24
|
}
|
|
31
25
|
commandType() {
|
|
32
26
|
return this._commandType;
|
|
@@ -18,17 +18,10 @@ class EventBase extends message_base_1.MessageBase {
|
|
|
18
18
|
}
|
|
19
19
|
modelDescriptor() {
|
|
20
20
|
const eventClass = this.constructor;
|
|
21
|
-
return {
|
|
22
|
-
...super.modelDescriptor(),
|
|
23
|
-
eventType: eventClass.eventType(),
|
|
24
|
-
};
|
|
21
|
+
return Object.assign(Object.assign({}, super.modelDescriptor()), { eventType: eventClass.eventType() });
|
|
25
22
|
}
|
|
26
23
|
metadata() {
|
|
27
|
-
return {
|
|
28
|
-
...super.metadata(),
|
|
29
|
-
eventType: this._eventType,
|
|
30
|
-
source: this._source,
|
|
31
|
-
};
|
|
24
|
+
return Object.assign(Object.assign({}, super.metadata()), { eventType: this._eventType, source: this._source });
|
|
32
25
|
}
|
|
33
26
|
eventType() {
|
|
34
27
|
return this._eventType;
|
|
@@ -24,12 +24,7 @@ let MessageBase = class MessageBase extends model_with_id_1.ModelWithId {
|
|
|
24
24
|
return super.props();
|
|
25
25
|
}
|
|
26
26
|
metadata() {
|
|
27
|
-
return {
|
|
28
|
-
...super.metadata(),
|
|
29
|
-
timestamp: this._timestamp,
|
|
30
|
-
correlationIds: this._correlationIds,
|
|
31
|
-
causationId: this._causationId,
|
|
32
|
-
};
|
|
27
|
+
return Object.assign(Object.assign({}, super.metadata()), { timestamp: this._timestamp, correlationIds: this._correlationIds, causationId: this._causationId });
|
|
33
28
|
}
|
|
34
29
|
timestamp() {
|
|
35
30
|
return this._timestamp;
|
|
@@ -8,10 +8,7 @@ class ModelWithId extends base_1.ModelBase {
|
|
|
8
8
|
this._id = metadata.id;
|
|
9
9
|
}
|
|
10
10
|
metadata() {
|
|
11
|
-
return {
|
|
12
|
-
...super.metadata(),
|
|
13
|
-
id: this._id,
|
|
14
|
-
};
|
|
11
|
+
return Object.assign(Object.assign({}, super.metadata()), { id: this._id });
|
|
15
12
|
}
|
|
16
13
|
id() {
|
|
17
14
|
return this._id;
|
package/dist/decorators/enum.js
CHANGED
|
@@ -4,7 +4,7 @@ exports.Enum = void 0;
|
|
|
4
4
|
const base_1 = require("../base");
|
|
5
5
|
const Enum = (value) => {
|
|
6
6
|
return (target, key) => {
|
|
7
|
-
(0, base_1.Static)(() => new target(value
|
|
7
|
+
(0, base_1.Static)(() => new target(value !== null && value !== void 0 ? value : key))(target, key);
|
|
8
8
|
};
|
|
9
9
|
};
|
|
10
10
|
exports.Enum = Enum;
|
|
@@ -1,13 +1,24 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
12
|
exports.EventPublisher = void 0;
|
|
4
13
|
class EventPublisher {
|
|
5
14
|
constructor(subscriberRegistry) {
|
|
6
15
|
this.subscriberRegistry = subscriberRegistry;
|
|
7
16
|
}
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
17
|
+
publish(event) {
|
|
18
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
19
|
+
const subscribers = this.subscriberRegistry.getAllSubscribersForEvent(event.constructor);
|
|
20
|
+
yield Promise.all(subscribers.map((subscriber) => subscriber.handleEvent(event)));
|
|
21
|
+
});
|
|
11
22
|
}
|
|
12
23
|
}
|
|
13
24
|
exports.EventPublisher = EventPublisher;
|
|
@@ -4,7 +4,8 @@ exports.DynamicEventSubscriber = exports.EventSubscriber = void 0;
|
|
|
4
4
|
const decorators_1 = require("./decorators");
|
|
5
5
|
class EventSubscriber {
|
|
6
6
|
subscribeToEvents() {
|
|
7
|
-
|
|
7
|
+
var _a;
|
|
8
|
+
const subscribedEvents = (_a = Reflect.getOwnMetadata(decorators_1.SubscribedEventsMetaKey, this.constructor)) !== null && _a !== void 0 ? _a : [];
|
|
8
9
|
return subscribedEvents;
|
|
9
10
|
}
|
|
10
11
|
}
|