@xyo-network/node 2.51.5 → 2.51.7
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/cjs/MemoryNode.js +55 -32
- package/dist/cjs/MemoryNode.js.map +1 -1
- package/dist/cjs/NodeWrapper.js +5 -1
- package/dist/cjs/NodeWrapper.js.map +1 -1
- package/dist/docs.json +1070 -753
- package/dist/esm/MemoryNode.js +53 -30
- package/dist/esm/MemoryNode.js.map +1 -1
- package/dist/esm/NodeWrapper.js +5 -1
- package/dist/esm/NodeWrapper.js.map +1 -1
- package/dist/types/MemoryNode.d.ts.map +1 -1
- package/dist/types/NodeWrapper.d.ts +2 -1
- package/dist/types/NodeWrapper.d.ts.map +1 -1
- package/package.json +11 -11
- package/src/MemoryNode.ts +65 -37
- package/src/NodeWrapper.ts +7 -2
package/dist/cjs/MemoryNode.js
CHANGED
|
@@ -6,6 +6,7 @@ const assert_1 = require("@xylabs/assert");
|
|
|
6
6
|
const exists_1 = require("@xylabs/exists");
|
|
7
7
|
const promise_1 = require("@xylabs/promise");
|
|
8
8
|
const module_1 = require("@xyo-network/module");
|
|
9
|
+
const compact_1 = tslib_1.__importDefault(require("lodash/compact"));
|
|
9
10
|
const AbstractNode_1 = require("./AbstractNode");
|
|
10
11
|
const Config_1 = require("./Config");
|
|
11
12
|
const NodeWrapper_1 = require("./NodeWrapper");
|
|
@@ -28,37 +29,53 @@ class MemoryNode extends AbstractNode_1.AbstractNode {
|
|
|
28
29
|
const existingModule = (yield this.resolve({ address: [address] })).pop();
|
|
29
30
|
(0, assert_1.assertEx)(!existingModule, `Module [${(_a = existingModule === null || existingModule === void 0 ? void 0 : existingModule.config.name) !== null && _a !== void 0 ? _a : existingModule === null || existingModule === void 0 ? void 0 : existingModule.address}] already attached at address [${address}]`);
|
|
30
31
|
const module = (0, assert_1.assertEx)(this.registeredModuleMap[address], 'No module registered at that address');
|
|
32
|
+
const wrapper = module_1.ModuleWrapper.wrap(module);
|
|
33
|
+
const notifiedAddresses = [];
|
|
34
|
+
const getModulesToNotifyAbout = (node) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
35
|
+
//send attach events for all existing attached modules
|
|
36
|
+
const childModules = yield node.resolve();
|
|
37
|
+
return (0, compact_1.default)(childModules.map((child) => {
|
|
38
|
+
//don't report self
|
|
39
|
+
if (node.address === child.address) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
//prevent loop
|
|
43
|
+
if (notifiedAddresses.includes(child.address)) {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
notifiedAddresses.push(child.address);
|
|
47
|
+
return child;
|
|
48
|
+
}));
|
|
49
|
+
});
|
|
50
|
+
const notificationList = yield getModulesToNotifyAbout(wrapper);
|
|
51
|
+
const args = { module, name: module.config.name };
|
|
52
|
+
(_b = this.moduleAttachedEventListeners) === null || _b === void 0 ? void 0 : _b.map((listener) => listener(args));
|
|
31
53
|
this.privateResolver.addResolver(module.downResolver);
|
|
32
54
|
//give it inside access
|
|
33
|
-
(
|
|
55
|
+
(_d = (_c = module.upResolver).addResolver) === null || _d === void 0 ? void 0 : _d.call(_c, this.privateResolver);
|
|
34
56
|
//give it outside access
|
|
35
|
-
(
|
|
57
|
+
(_f = (_e = module.upResolver).addResolver) === null || _f === void 0 ? void 0 : _f.call(_e, this.upResolver);
|
|
36
58
|
if (external) {
|
|
37
59
|
//expose it externally
|
|
38
60
|
this.downResolver.addResolver(module.downResolver);
|
|
39
61
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
const notifyOfExistingModules = (node) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
49
|
-
//send attach events for all existing attached modules
|
|
50
|
-
const childModules = yield node.resolve();
|
|
51
|
-
yield Promise.all(childModules.map((child) => {
|
|
52
|
-
var _a;
|
|
53
|
-
(_a = this.moduleAttachedEventListeners) === null || _a === void 0 ? void 0 : _a.map((listener) => listener({ module: child }));
|
|
54
|
-
const wrappedAsNode = NodeWrapper_1.NodeWrapper.tryWrap(child);
|
|
55
|
-
if (wrappedAsNode) {
|
|
56
|
-
return notifyOfExistingModules(wrappedAsNode);
|
|
57
|
-
}
|
|
58
|
-
}));
|
|
59
|
-
});
|
|
60
|
-
yield notifyOfExistingModules(wrappedAsNode);
|
|
62
|
+
if (NodeWrapper_1.NodeWrapper.isNodeModule(module)) {
|
|
63
|
+
if (external) {
|
|
64
|
+
const wrappedAsNode = NodeWrapper_1.NodeWrapper.wrap(module);
|
|
65
|
+
const attachEmitter = wrappedAsNode.module;
|
|
66
|
+
const detachEmitter = wrappedAsNode.module;
|
|
67
|
+
attachEmitter.on('moduleAttached', (args) => { var _a; return (_a = this.moduleAttachedEventListeners) === null || _a === void 0 ? void 0 : _a.map((listener) => listener(args)); });
|
|
68
|
+
detachEmitter.on('moduleDetached', (args) => { var _a; return (_a = this.moduleDetachedEventListeners) === null || _a === void 0 ? void 0 : _a.map((listener) => listener(args)); });
|
|
69
|
+
}
|
|
61
70
|
}
|
|
71
|
+
const notifyOfExistingModules = (childModules) => {
|
|
72
|
+
childModules.map((child) => {
|
|
73
|
+
var _a;
|
|
74
|
+
const args = { module: child, name: child.config.name };
|
|
75
|
+
(_a = this.moduleAttachedEventListeners) === null || _a === void 0 ? void 0 : _a.map((listener) => listener(args));
|
|
76
|
+
});
|
|
77
|
+
};
|
|
78
|
+
yield notifyOfExistingModules(notificationList);
|
|
62
79
|
});
|
|
63
80
|
}
|
|
64
81
|
detach(address) {
|
|
@@ -75,21 +92,27 @@ class MemoryNode extends AbstractNode_1.AbstractNode {
|
|
|
75
92
|
const args = { module, name: module.config.name };
|
|
76
93
|
(_e = this.moduleDetachedEventListeners) === null || _e === void 0 ? void 0 : _e.map((listener) => listener(args));
|
|
77
94
|
//notify of all sub node children detach
|
|
78
|
-
const
|
|
79
|
-
|
|
95
|
+
const wrapper = module_1.ModuleWrapper.tryWrap(module);
|
|
96
|
+
const notifiedAddresses = [];
|
|
97
|
+
if (wrapper) {
|
|
80
98
|
const notifyOfExistingModules = (node) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
81
99
|
//send attach events for all existing attached modules
|
|
82
100
|
const childModules = yield node.resolve();
|
|
83
|
-
|
|
101
|
+
childModules.map((child) => {
|
|
84
102
|
var _a;
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
103
|
+
//don't report self
|
|
104
|
+
if (node.address === child.address) {
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
//prevent loop
|
|
108
|
+
if (notifiedAddresses.includes(child.address)) {
|
|
109
|
+
return;
|
|
89
110
|
}
|
|
90
|
-
|
|
111
|
+
notifiedAddresses.push(child.address);
|
|
112
|
+
(_a = this.moduleDetachedEventListeners) === null || _a === void 0 ? void 0 : _a.map((listener) => listener({ module: child }));
|
|
113
|
+
});
|
|
91
114
|
});
|
|
92
|
-
yield notifyOfExistingModules(
|
|
115
|
+
yield notifyOfExistingModules(wrapper);
|
|
93
116
|
}
|
|
94
117
|
});
|
|
95
118
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryNode.js","sourceRoot":"","sources":["../../src/MemoryNode.ts"],"names":[],"mappings":";;;;AAAA,2CAAyC;AACzC,2CAAuC;AACvC,6CAAqD;AACrD,
|
|
1
|
+
{"version":3,"file":"MemoryNode.js","sourceRoot":"","sources":["../../src/MemoryNode.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/NodeWrapper.js
CHANGED
|
@@ -15,11 +15,15 @@ class NodeWrapper extends module_1.ModuleWrapper {
|
|
|
15
15
|
this._archivist = (_a = this._archivist) !== null && _a !== void 0 ? _a : new archivist_wrapper_1.ArchivistWrapper(this.module);
|
|
16
16
|
return this._archivist;
|
|
17
17
|
}
|
|
18
|
+
static isNodeModule(module) {
|
|
19
|
+
const missingRequiredQueries = this.missingRequiredQueries(module);
|
|
20
|
+
return missingRequiredQueries.length === 0;
|
|
21
|
+
}
|
|
18
22
|
static tryWrap(module, account) {
|
|
19
23
|
if (module) {
|
|
20
24
|
const missingRequiredQueries = this.missingRequiredQueries(module);
|
|
21
25
|
if (missingRequiredQueries.length > 0) {
|
|
22
|
-
console.warn(`Missing queries: ${JSON.stringify(missingRequiredQueries, null, 2)}`)
|
|
26
|
+
//console.warn(`Missing queries: ${JSON.stringify(missingRequiredQueries, null, 2)}`)
|
|
23
27
|
}
|
|
24
28
|
else {
|
|
25
29
|
return new NodeWrapper(module, account);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeWrapper.js","sourceRoot":"","sources":["../../src/NodeWrapper.ts"],"names":[],"mappings":";;;;AAAA,2CAAyC;AAEzC,gFAAmF;AACnF,sEAAiE;AACjE,
|
|
1
|
+
{"version":3,"file":"NodeWrapper.js","sourceRoot":"","sources":["../../src/NodeWrapper.ts"],"names":[],"mappings":";;;;AAAA,2CAAyC;AAEzC,gFAAmF;AACnF,sEAAiE;AACjE,gDAA2D;AAC3D,8DAAqE;AACrE,kEAA6D;AAG7D,uCASkB;AAElB,MAAa,WAAY,SAAQ,sBAAyB;IAKxD,IAAI,SAAS;;QACX,IAAI,CAAC,UAAU,GAAG,MAAA,IAAI,CAAC,UAAU,mCAAI,IAAI,oCAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACtE,OAAO,IAAI,CAAC,UAAU,CAAA;IACxB,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,MAAc;QAChC,MAAM,sBAAsB,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAA;QAClE,OAAO,sBAAsB,CAAC,MAAM,KAAK,CAAC,CAAA;IAC5C,CAAC;IAED,MAAM,CAAU,OAAO,CAA0C,MAAgB,EAAE,OAAyB;QAC1G,IAAI,MAAM,EAAE;YACV,MAAM,sBAAsB,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAA;YAClE,IAAI,sBAAsB,CAAC,MAAM,GAAG,CAAC,EAAE;gBACrC,qFAAqF;aACtF;iBAAM;gBACL,OAAO,IAAI,WAAW,CAAC,MAAiB,EAAE,OAAO,CAAC,CAAA;aACnD;SACF;IACH,CAAC;IAED,MAAM,CAAU,IAAI,CAA0C,MAAgB,EAAE,OAAyB;QACvG,OAAO,IAAA,iBAAQ,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,sCAAsC,CAAC,CAAA;IACxF,CAAC;IAEK,MAAM,CAAC,OAAe,EAAE,QAAkB;;YAC9C,MAAM,YAAY,GAAG,gCAAc,CAAC,KAAK,CAAqB,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,kCAAwB,EAAE,CAAC,CAAA;YACtH,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;QACpC,CAAC;KAAA;IAEK,QAAQ;;YACZ,MAAM,YAAY,GAAG,gCAAc,CAAC,KAAK,CAAuB,EAAE,MAAM,EAAE,oCAA0B,EAAE,CAAC,CAAA;YACvG,MAAM,QAAQ,GAAqB,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,IAAA,wCAAwB,EAAiB,sCAAa,CAAC,CAAC,CAAA;YACvI,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;QACvC,CAAC;KAAA;IAEK,MAAM,CAAC,OAAe;;YAC1B,MAAM,YAAY,GAAG,gCAAc,CAAC,KAAK,CAAqB,EAAE,OAAO,EAAE,MAAM,EAAE,kCAAwB,EAAE,CAAC,CAAA;YAC5G,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;QACpC,CAAC;KAAA;IAEK,UAAU;;YACd,MAAM,YAAY,GAAG,gCAAc,CAAC,KAAK,CAAyB,EAAE,MAAM,EAAE,sCAA4B,EAAE,CAAC,CAAA;YAC3G,MAAM,QAAQ,GAAqB,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,IAAA,wCAAwB,EAAiB,sCAAa,CAAC,CAAC,CAAA;YACvI,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;QACvC,CAAC;KAAA;;AAlDH,kCAmDC;AAlDiB,2BAAe,GAAG,CAAC,kCAAwB,EAAE,GAAG,sBAAa,CAAC,eAAe,CAAC,CAAA"}
|