@nexigen/entity-normalizer 0.1.6 → 0.3.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/LICENSE +1 -1
- package/README.md +54 -54
- package/dist/async/async-duck.d.ts +2 -0
- package/dist/async/async-duck.js +11 -0
- package/dist/async/async-duck.js.map +1 -1
- package/dist/async/execution-context.d.ts +10 -0
- package/dist/async/execution-context.js +25 -0
- package/dist/async/execution-context.js.map +1 -0
- package/dist/async/index.d.ts +1 -0
- package/dist/async/index.js +1 -0
- package/dist/async/index.js.map +1 -1
- package/dist/async/public.d.ts +7 -1
- package/dist/async/types.d.ts +1 -0
- package/dist/create/cleaner.d.ts +7 -0
- package/dist/create/cleaner.js +54 -42
- package/dist/create/cleaner.js.map +1 -1
- package/dist/create/constants.d.ts +1 -0
- package/dist/create/constants.js +2 -0
- package/dist/create/constants.js.map +1 -0
- package/dist/create/create-store.js.map +1 -1
- package/dist/create/extractor.d.ts +1 -4
- package/dist/create/extractor.js +5 -7
- package/dist/create/extractor.js.map +1 -1
- package/dist/create/manager.js +8 -11
- package/dist/create/manager.js.map +1 -1
- package/dist/create/proxy.d.ts +2 -0
- package/dist/create/proxy.js +35 -4
- package/dist/create/proxy.js.map +1 -1
- package/dist/create/scanner.js +1 -0
- package/dist/create/scanner.js.map +1 -1
- package/dist/create/utils.d.ts +2 -0
- package/dist/create/utils.js +19 -0
- package/dist/create/utils.js.map +1 -1
- package/dist/create-store-hooks.d.ts +1 -1
- package/dist/di/register-root-store.d.ts +1 -1
- package/dist/entities/cleaner/store.js.map +1 -1
- package/dist/entities/collection/entity-collection.d.ts +1 -0
- package/dist/entities/collection/entity-collection.js +12 -0
- package/dist/entities/collection/entity-collection.js.map +1 -1
- package/dist/entities/collection/multi-entity-collection.js.map +1 -1
- package/dist/entities/collection/public.d.ts +1 -0
- package/dist/entities/processor.js.map +1 -1
- package/dist/entities/record/create-entity-record.js.map +1 -1
- package/dist/entities/record/entity-record.d.ts +1 -0
- package/dist/entities/record/entity-record.js +9 -0
- package/dist/entities/record/entity-record.js.map +1 -1
- package/dist/entities/record/public.d.ts +2 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/root/coreApi/create-core-api.d.ts +1 -0
- package/dist/root/coreApi/create-core-api.js +1 -0
- package/dist/root/coreApi/create-core-api.js.map +1 -1
- package/dist/root/coreApi/entities.d.ts +1 -1
- package/dist/root/coreApi/types.d.ts +2 -0
- package/dist/root/create-root-store.d.ts +1 -1
- package/dist/root/create-root-store.js +1 -1
- package/dist/root/create-root-store.js.map +1 -1
- package/dist/root/{RootStore.d.ts → root-store.d.ts} +17 -0
- package/dist/root/{RootStore.js → root-store.js} +106 -57
- package/dist/root/root-store.js.map +1 -0
- package/dist/root/types.d.ts +3 -2
- package/package.json +8 -3
- package/dist/root/RootStore.js.map +0 -1
|
@@ -14,14 +14,90 @@ export class RootStore {
|
|
|
14
14
|
constructor(deps) {
|
|
15
15
|
this.deps = deps;
|
|
16
16
|
this._isInitialized = false;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
17
|
+
this.initEntities();
|
|
18
|
+
this.initStoresRef();
|
|
19
|
+
this.core = this.createCore(this.storesRef);
|
|
20
|
+
this.buildStores(this.combinedDeps);
|
|
21
|
+
this.attachStoresToCore(this.storesRef);
|
|
22
|
+
this.buildServices(this.domainDeps);
|
|
23
|
+
this.setupPlugins();
|
|
24
|
+
this.hideCyclicDeps(this.domainDeps);
|
|
25
|
+
makeAutoObservable(this, {
|
|
26
|
+
core: false,
|
|
27
|
+
services: false,
|
|
28
|
+
stores: false,
|
|
29
|
+
entities: false,
|
|
30
|
+
entitiesCleaner: false,
|
|
31
|
+
persistence: false,
|
|
32
|
+
storesRef: false,
|
|
33
|
+
_domainDeps: false,
|
|
34
|
+
_systemDeps: false,
|
|
35
|
+
_combinedDeps: false,
|
|
36
|
+
_decorators: false,
|
|
37
|
+
_isInitialized: true,
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
get isInitialized() {
|
|
41
|
+
return this._isInitialized;
|
|
42
|
+
}
|
|
43
|
+
setInitialized(v) {
|
|
44
|
+
this._isInitialized = v;
|
|
45
|
+
}
|
|
46
|
+
get decorators() {
|
|
47
|
+
if (!this._decorators) {
|
|
48
|
+
this._decorators = {
|
|
49
|
+
isRecord: (v) => v?.[RECORD_TAG] === true,
|
|
50
|
+
isCollection: (v) => v?.[COLLECTION_TAG] === true,
|
|
51
|
+
isMultiCollection: (v) => v?.[MULTI_COLLECTION_TAG] === true,
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
return this._decorators;
|
|
55
|
+
}
|
|
56
|
+
initStoresRef() {
|
|
57
|
+
this.storesRef = {};
|
|
58
|
+
}
|
|
59
|
+
get domainDeps() {
|
|
60
|
+
if (!this._domainDeps) {
|
|
61
|
+
const self = this;
|
|
62
|
+
this._domainDeps = {
|
|
63
|
+
api: this.deps.api,
|
|
64
|
+
get stores() {
|
|
65
|
+
return self.stores;
|
|
66
|
+
},
|
|
67
|
+
get services() {
|
|
68
|
+
return self.services;
|
|
69
|
+
},
|
|
70
|
+
core: this.core,
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
return this._domainDeps;
|
|
74
|
+
}
|
|
75
|
+
get systemDeps() {
|
|
76
|
+
if (!this._systemDeps) {
|
|
77
|
+
this._systemDeps = {
|
|
78
|
+
getPersistence: () => this.persistence ?? noopPersistence,
|
|
79
|
+
entities: this.entities,
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
return this._systemDeps;
|
|
83
|
+
}
|
|
84
|
+
get combinedDeps() {
|
|
85
|
+
if (!this._combinedDeps) {
|
|
86
|
+
this._combinedDeps = {
|
|
87
|
+
domain: this.domainDeps,
|
|
88
|
+
system: this.systemDeps,
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
return this._combinedDeps;
|
|
92
|
+
}
|
|
93
|
+
initEntities() {
|
|
21
94
|
this.entities = new EntitiesStore();
|
|
22
95
|
this.entitiesCleaner = new EntityCleanerStore(this.entities, this.deps.schemaMap);
|
|
23
|
-
|
|
24
|
-
|
|
96
|
+
}
|
|
97
|
+
createCore(storesRef) {
|
|
98
|
+
const self = this;
|
|
99
|
+
const extensions = Object.create(null);
|
|
100
|
+
return createCoreAPI({
|
|
25
101
|
lifecycle: {
|
|
26
102
|
getIsInitialized: () => self.isInitialized,
|
|
27
103
|
setInitialized: (v) => self.setInitialized(v),
|
|
@@ -32,62 +108,42 @@ export class RootStore {
|
|
|
32
108
|
schemaMap: this.deps.schemaMap,
|
|
33
109
|
getPersistence: () => this.persistence ?? noopPersistence,
|
|
34
110
|
},
|
|
111
|
+
use(key) {
|
|
112
|
+
return extensions[key];
|
|
113
|
+
},
|
|
35
114
|
stores: storesRef,
|
|
36
115
|
__internal: {
|
|
37
116
|
setPersistence: notifier => {
|
|
38
117
|
this[SET_PERSISTENCE](notifier);
|
|
39
118
|
},
|
|
119
|
+
registerExtension(key, api) {
|
|
120
|
+
extensions[key] = api;
|
|
121
|
+
},
|
|
40
122
|
},
|
|
41
123
|
});
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
// ---------------------------------------------
|
|
45
|
-
const domainDeps = {
|
|
46
|
-
api: deps.api,
|
|
47
|
-
get stores() {
|
|
48
|
-
return self.stores;
|
|
49
|
-
},
|
|
50
|
-
get services() {
|
|
51
|
-
return self.services;
|
|
52
|
-
},
|
|
53
|
-
core: this.core,
|
|
54
|
-
};
|
|
55
|
-
const systemDeps = {
|
|
56
|
-
getPersistence: () => this.persistence ?? noopPersistence,
|
|
57
|
-
entities: this.entities,
|
|
58
|
-
};
|
|
59
|
-
const combinedDeps = {
|
|
60
|
-
domain: domainDeps,
|
|
61
|
-
system: systemDeps,
|
|
62
|
-
};
|
|
63
|
-
// ---------------------------------------------
|
|
64
|
-
// Plugins
|
|
65
|
-
// ---------------------------------------------
|
|
66
|
-
const decorators = {
|
|
67
|
-
isRecord: (v) => v?.[RECORD_TAG] === true,
|
|
68
|
-
isCollection: (v) => v?.[COLLECTION_TAG] === true,
|
|
69
|
-
isMultiCollection: (v) => v?.[MULTI_COLLECTION_TAG] === true,
|
|
70
|
-
};
|
|
124
|
+
}
|
|
125
|
+
setupPlugins() {
|
|
71
126
|
for (const plugin of this.deps.plugins ?? []) {
|
|
72
127
|
plugin.setup({
|
|
73
128
|
entities: this.entities,
|
|
74
129
|
core: this.core,
|
|
75
130
|
config: plugin.config,
|
|
76
|
-
|
|
77
|
-
|
|
131
|
+
stores: this.stores,
|
|
132
|
+
services: this.services,
|
|
133
|
+
decorators: this.decorators,
|
|
78
134
|
});
|
|
79
135
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
// ---------------------------------------------
|
|
136
|
+
}
|
|
137
|
+
buildStores(combinedDeps) {
|
|
83
138
|
this.stores = Object.fromEntries(Object.entries(this.deps.stores).map(([key, StoreClass]) => {
|
|
84
139
|
const instance = createStore(StoreClass, combinedDeps);
|
|
85
140
|
return [key, instance];
|
|
86
141
|
}));
|
|
142
|
+
}
|
|
143
|
+
attachStoresToCore(storesRef) {
|
|
87
144
|
Object.assign(storesRef, this.stores);
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
// ---------------------------------------------
|
|
145
|
+
}
|
|
146
|
+
buildServices(domainDeps) {
|
|
91
147
|
this.services = Object.fromEntries(Object.entries(this.deps.services).map(([key, ServiceClass]) => {
|
|
92
148
|
const instance = new ServiceClass(domainDeps);
|
|
93
149
|
Object.defineProperty(instance, 'deps', {
|
|
@@ -97,38 +153,31 @@ export class RootStore {
|
|
|
97
153
|
});
|
|
98
154
|
return [key, instance];
|
|
99
155
|
}));
|
|
100
|
-
|
|
156
|
+
}
|
|
157
|
+
hideCyclicDeps(domainDeps) {
|
|
101
158
|
Object.defineProperty(this, 'deps', {
|
|
102
159
|
enumerable: false,
|
|
103
160
|
configurable: true,
|
|
104
|
-
writable:
|
|
161
|
+
writable: false,
|
|
105
162
|
});
|
|
106
163
|
Object.defineProperty(domainDeps, 'stores', {
|
|
107
164
|
enumerable: false,
|
|
108
165
|
configurable: true,
|
|
166
|
+
writable: false,
|
|
109
167
|
});
|
|
110
168
|
Object.defineProperty(domainDeps, 'services', {
|
|
111
169
|
enumerable: false,
|
|
112
170
|
configurable: true,
|
|
171
|
+
writable: false,
|
|
113
172
|
});
|
|
114
173
|
Object.defineProperty(domainDeps, 'core', {
|
|
115
174
|
enumerable: false,
|
|
116
175
|
configurable: true,
|
|
176
|
+
writable: false,
|
|
117
177
|
});
|
|
118
178
|
Object.defineProperty(this.core, '__internal', {
|
|
119
179
|
enumerable: false,
|
|
120
180
|
});
|
|
121
|
-
makeAutoObservable(this, {
|
|
122
|
-
core: false,
|
|
123
|
-
services: false,
|
|
124
|
-
stores: false,
|
|
125
|
-
});
|
|
126
|
-
}
|
|
127
|
-
get isInitialized() {
|
|
128
|
-
return this._isInitialized;
|
|
129
|
-
}
|
|
130
|
-
setInitialized(v) {
|
|
131
|
-
this._isInitialized = v;
|
|
132
181
|
}
|
|
133
182
|
}
|
|
134
|
-
//# sourceMappingURL=
|
|
183
|
+
//# sourceMappingURL=root-store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"root-store.js","sourceRoot":"","sources":["../../src/root/root-store.ts"],"names":[],"mappings":"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"}
|
package/dist/root/types.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { AnySchema, TEntitiesStore } from '../entities';
|
|
2
2
|
import type { CoreAPI } from './coreApi/types';
|
|
3
|
-
import type { RootStore } from './
|
|
3
|
+
import type { RootStore } from './root-store';
|
|
4
4
|
export type DomainDeps<TStores = {}, TApi = any, TServices = {}, CoreAPI = {}> = {
|
|
5
5
|
api: TApi;
|
|
6
6
|
stores: TStores;
|
|
@@ -54,7 +54,8 @@ export type RootStorePlugin<TConfig = unknown> = {
|
|
|
54
54
|
entities: any;
|
|
55
55
|
core: Record<string, any>;
|
|
56
56
|
config: TConfig;
|
|
57
|
-
|
|
57
|
+
stores: DomainDeps['stores'];
|
|
58
|
+
services: DomainDeps['services'];
|
|
58
59
|
decorators: Decorators;
|
|
59
60
|
}): void;
|
|
60
61
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nexigen/entity-normalizer",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Reactive entity infrastructure for complex client applications, built on MobX.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"bugs": {
|
|
13
13
|
"url": "https://github.com/nexigenjs/entity-normalizer/issues"
|
|
14
14
|
},
|
|
15
|
+
"source": "src/index.ts",
|
|
15
16
|
"main": "dist/index.js",
|
|
16
17
|
"types": "dist/index.d.ts",
|
|
17
18
|
"files": [
|
|
@@ -21,10 +22,13 @@
|
|
|
21
22
|
"scripts": {
|
|
22
23
|
"lint": "eslint src",
|
|
23
24
|
"lint:fix": "eslint src --fix",
|
|
25
|
+
"prettier": "prettier .",
|
|
26
|
+
"prettier:check": "prettier . --check",
|
|
27
|
+
"prettier:write": "prettier . --write",
|
|
24
28
|
"test": "jest",
|
|
25
29
|
"test:watch": "jest --watch",
|
|
26
30
|
"typecheck": "tsc --noEmit",
|
|
27
|
-
"build": "tsc",
|
|
31
|
+
"build": "tsc -p tsconfig.build.json",
|
|
28
32
|
"prepare": "husky install"
|
|
29
33
|
},
|
|
30
34
|
"lint-staged": {
|
|
@@ -33,7 +37,8 @@
|
|
|
33
37
|
]
|
|
34
38
|
},
|
|
35
39
|
"peerDependencies": {
|
|
36
|
-
"mobx": ">=6.12 <7"
|
|
40
|
+
"mobx": ">=6.12 <7",
|
|
41
|
+
"react": ">=18"
|
|
37
42
|
},
|
|
38
43
|
"devDependencies": {
|
|
39
44
|
"@types/jest": "^30.0.0",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RootStore.js","sourceRoot":"","sources":["../../src/root/RootStore.ts"],"names":[],"mappings":"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"}
|