ddd-node 21.0.2 → 21.0.3
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/model/domain.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ModelRegistry } from "./model-registry";
|
|
2
2
|
export type DomainName = string;
|
|
3
|
+
export declare const DEFAULT_DOMAIN = "__default__";
|
|
3
4
|
export declare class Domain {
|
|
4
5
|
readonly name: DomainName;
|
|
5
6
|
readonly modelRegistry: ModelRegistry;
|
|
@@ -12,7 +13,10 @@ export declare class DomainManager {
|
|
|
12
13
|
static instance(): DomainManager;
|
|
13
14
|
private constructor();
|
|
14
15
|
private _domains;
|
|
16
|
+
isDefaultDomain(domain: Domain): boolean;
|
|
15
17
|
hasDomain(domainName: DomainName): boolean;
|
|
18
|
+
getDomain(): Domain;
|
|
19
|
+
getDomain(domainName: typeof DEFAULT_DOMAIN): Domain;
|
|
16
20
|
getDomain(domainName: DomainName): Domain | undefined;
|
|
17
21
|
addDomain(domain: Domain): void;
|
|
18
22
|
deleteDomain(domainName: DomainName): void;
|
package/dist/model/domain.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.domainManager = exports.DomainManager = exports.DomainMap = exports.Domain = void 0;
|
|
3
|
+
exports.domainManager = exports.DomainManager = exports.DomainMap = exports.Domain = exports.DEFAULT_DOMAIN = void 0;
|
|
4
4
|
const model_registry_1 = require("./model-registry");
|
|
5
|
+
exports.DEFAULT_DOMAIN = "__default__";
|
|
5
6
|
class Domain {
|
|
6
7
|
constructor(name) {
|
|
7
8
|
this.name = name;
|
|
@@ -16,16 +17,23 @@ class DomainManager {
|
|
|
16
17
|
static instance() {
|
|
17
18
|
if (!this._instance)
|
|
18
19
|
this._instance = new DomainManager();
|
|
20
|
+
this._instance.addDomain(new Domain(exports.DEFAULT_DOMAIN));
|
|
19
21
|
return this._instance;
|
|
20
22
|
}
|
|
21
23
|
constructor() {
|
|
22
24
|
this._domains = new DomainMap();
|
|
23
25
|
}
|
|
26
|
+
isDefaultDomain(domain) {
|
|
27
|
+
return domain.name === exports.DEFAULT_DOMAIN;
|
|
28
|
+
}
|
|
24
29
|
hasDomain(domainName) {
|
|
25
30
|
return this._domains.has(domainName);
|
|
26
31
|
}
|
|
27
32
|
getDomain(domainName) {
|
|
28
|
-
|
|
33
|
+
if (domainName)
|
|
34
|
+
return this._domains.get(domainName);
|
|
35
|
+
if (!domainName)
|
|
36
|
+
return this._domains.get(exports.DEFAULT_DOMAIN);
|
|
29
37
|
}
|
|
30
38
|
addDomain(domain) {
|
|
31
39
|
if (this.hasDomain(domain.name))
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { AnyModel, ModelClass } from "../core";
|
|
2
2
|
export declare const ModelDomainMetaKey: unique symbol;
|
|
3
|
-
export declare const DEFAULT_MODEL_DOMAIN = "default";
|
|
4
3
|
export declare const defineModelDomain: <T extends AnyModel>(target: ModelClass<T>, domainName: string) => void;
|
|
5
4
|
export declare const getModelDomain: <T extends AnyModel>(target: ModelClass<T>) => string;
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getModelDomain = exports.defineModelDomain = exports.
|
|
3
|
+
exports.getModelDomain = exports.defineModelDomain = exports.ModelDomainMetaKey = void 0;
|
|
4
|
+
const domain_1 = require("../domain");
|
|
4
5
|
exports.ModelDomainMetaKey = Symbol.for("MODEL_DOMAIN");
|
|
5
|
-
exports.DEFAULT_MODEL_DOMAIN = "default";
|
|
6
6
|
const defineModelDomain = (target, domainName) => {
|
|
7
7
|
Reflect.defineMetadata(exports.ModelDomainMetaKey, domainName, target);
|
|
8
8
|
};
|
|
9
9
|
exports.defineModelDomain = defineModelDomain;
|
|
10
10
|
const getModelDomain = (target) => {
|
|
11
11
|
if (!Reflect.hasOwnMetadata(exports.ModelDomainMetaKey, target))
|
|
12
|
-
(0, exports.defineModelDomain)(target,
|
|
12
|
+
(0, exports.defineModelDomain)(target, domain_1.DEFAULT_DOMAIN);
|
|
13
13
|
return Reflect.getOwnMetadata(exports.ModelDomainMetaKey, target);
|
|
14
14
|
};
|
|
15
15
|
exports.getModelDomain = getModelDomain;
|
package/dist/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"ddd-node","version":"21.0.
|
|
1
|
+
{"name":"ddd-node","version":"21.0.3","description":"Domain Driven Design base for NodeJs","type":"commonjs","main":"index.js","types":"index.d.ts","files":["dist"],"repository":{"type":"git","url":"https://github.com/nqd881/ddd-node"},"keywords":["ddd","ddd-node","ddd-base","ddd-ts","ddd-js"],"author":"Quoc Dai","license":"ISC","devDependencies":{"@types/chai":"^4.3.16","@types/lodash":"^4.14.200","@types/mocha":"^10.0.6","@types/uuid":"^9.0.6","chai":"^5.1.1","chai-deep-match":"^1.2.1","ddd-node":"file:dist","mocha":"^10.4.0","ts-node":"^10.9.1","tsconfig-paths":"^4.2.0","typescript":"^5.2.2"},"dependencies":{"lodash":"^4.17.21","nodejs-snowflake":"^2.0.1","reflect-metadata":"^0.1.13","tsc-alias":"^1.8.8","type-fest":"^4.20.1","uuid":"^9.0.1"}}
|