@xyo-network/node 2.51.9 → 2.51.10
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/AbstractNode.js +9 -65
- package/dist/cjs/AbstractNode.js.map +1 -1
- package/dist/cjs/MemoryNode.js +19 -29
- package/dist/cjs/MemoryNode.js.map +1 -1
- package/dist/cjs/NodeWrapper.js +10 -9
- package/dist/cjs/NodeWrapper.js.map +1 -1
- package/dist/cjs/index.js +1 -5
- package/dist/cjs/index.js.map +1 -1
- package/dist/docs.json +62879 -26919
- package/dist/esm/AbstractNode.js +1 -49
- package/dist/esm/AbstractNode.js.map +1 -1
- package/dist/esm/MemoryNode.js +15 -18
- package/dist/esm/MemoryNode.js.map +1 -1
- package/dist/esm/NodeWrapper.js +4 -4
- package/dist/esm/NodeWrapper.js.map +1 -1
- package/dist/esm/index.js +1 -5
- package/dist/esm/index.js.map +1 -1
- package/dist/types/AbstractNode.d.ts +3 -16
- package/dist/types/AbstractNode.d.ts.map +1 -1
- package/dist/types/MemoryNode.d.ts +18 -9
- package/dist/types/MemoryNode.d.ts.map +1 -1
- package/dist/types/NodeWrapper.d.ts +4 -4
- package/dist/types/NodeWrapper.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -5
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +13 -11
- package/src/AbstractNode.ts +14 -78
- package/src/MemoryNode.ts +41 -36
- package/src/NodeWrapper.ts +10 -11
- package/src/index.ts +1 -5
- package/dist/cjs/Config.js +0 -5
- package/dist/cjs/Config.js.map +0 -1
- package/dist/cjs/Events/ModuleAttached.js +0 -5
- package/dist/cjs/Events/ModuleAttached.js.map +0 -1
- package/dist/cjs/Events/ModuleDetached.js +0 -5
- package/dist/cjs/Events/ModuleDetached.js.map +0 -1
- package/dist/cjs/Events/ModuleRegistered.js +0 -5
- package/dist/cjs/Events/ModuleRegistered.js.map +0 -1
- package/dist/cjs/Events/index.js +0 -7
- package/dist/cjs/Events/index.js.map +0 -1
- package/dist/cjs/Node.js +0 -3
- package/dist/cjs/Node.js.map +0 -1
- package/dist/cjs/PartialConfig.js +0 -3
- package/dist/cjs/PartialConfig.js.map +0 -1
- package/dist/cjs/Queries/Attach.js +0 -5
- package/dist/cjs/Queries/Attach.js.map +0 -1
- package/dist/cjs/Queries/Attached.js +0 -5
- package/dist/cjs/Queries/Attached.js.map +0 -1
- package/dist/cjs/Queries/Detach.js +0 -5
- package/dist/cjs/Queries/Detach.js.map +0 -1
- package/dist/cjs/Queries/Registered.js +0 -5
- package/dist/cjs/Queries/Registered.js.map +0 -1
- package/dist/cjs/Queries/index.js +0 -8
- package/dist/cjs/Queries/index.js.map +0 -1
- package/dist/esm/Config.js +0 -2
- package/dist/esm/Config.js.map +0 -1
- package/dist/esm/Events/ModuleAttached.js +0 -2
- package/dist/esm/Events/ModuleAttached.js.map +0 -1
- package/dist/esm/Events/ModuleDetached.js +0 -2
- package/dist/esm/Events/ModuleDetached.js.map +0 -1
- package/dist/esm/Events/ModuleRegistered.js +0 -2
- package/dist/esm/Events/ModuleRegistered.js.map +0 -1
- package/dist/esm/Events/index.js +0 -4
- package/dist/esm/Events/index.js.map +0 -1
- package/dist/esm/Node.js +0 -2
- package/dist/esm/Node.js.map +0 -1
- package/dist/esm/PartialConfig.js +0 -2
- package/dist/esm/PartialConfig.js.map +0 -1
- package/dist/esm/Queries/Attach.js +0 -2
- package/dist/esm/Queries/Attach.js.map +0 -1
- package/dist/esm/Queries/Attached.js +0 -2
- package/dist/esm/Queries/Attached.js.map +0 -1
- package/dist/esm/Queries/Detach.js +0 -2
- package/dist/esm/Queries/Detach.js.map +0 -1
- package/dist/esm/Queries/Registered.js +0 -2
- package/dist/esm/Queries/Registered.js.map +0 -1
- package/dist/esm/Queries/index.js +0 -5
- package/dist/esm/Queries/index.js.map +0 -1
- package/dist/types/Config.d.ts +0 -8
- package/dist/types/Config.d.ts.map +0 -1
- package/dist/types/Events/ModuleAttached.d.ts +0 -6
- package/dist/types/Events/ModuleAttached.d.ts.map +0 -1
- package/dist/types/Events/ModuleDetached.d.ts +0 -6
- package/dist/types/Events/ModuleDetached.d.ts.map +0 -1
- package/dist/types/Events/ModuleRegistered.d.ts +0 -6
- package/dist/types/Events/ModuleRegistered.d.ts.map +0 -1
- package/dist/types/Events/index.d.ts +0 -4
- package/dist/types/Events/index.d.ts.map +0 -1
- package/dist/types/Node.d.ts +0 -12
- package/dist/types/Node.d.ts.map +0 -1
- package/dist/types/PartialConfig.d.ts +0 -4
- package/dist/types/PartialConfig.d.ts.map +0 -1
- package/dist/types/Queries/Attach.d.ts +0 -9
- package/dist/types/Queries/Attach.d.ts.map +0 -1
- package/dist/types/Queries/Attached.d.ts +0 -7
- package/dist/types/Queries/Attached.d.ts.map +0 -1
- package/dist/types/Queries/Detach.d.ts +0 -8
- package/dist/types/Queries/Detach.d.ts.map +0 -1
- package/dist/types/Queries/Registered.d.ts +0 -7
- package/dist/types/Queries/Registered.d.ts.map +0 -1
- package/dist/types/Queries/index.d.ts +0 -12
- package/dist/types/Queries/index.d.ts.map +0 -1
- package/src/Config.ts +0 -7
- package/src/Events/ModuleAttached.ts +0 -8
- package/src/Events/ModuleDetached.ts +0 -8
- package/src/Events/ModuleRegistered.ts +0 -8
- package/src/Events/index.ts +0 -3
- package/src/Node.ts +0 -14
- package/src/PartialConfig.ts +0 -5
- package/src/Queries/Attach.ts +0 -10
- package/src/Queries/Attached.ts +0 -8
- package/src/Queries/Detach.ts +0 -9
- package/src/Queries/Registered.ts +0 -8
- package/src/Queries/index.ts +0 -15
package/dist/esm/AbstractNode.js
CHANGED
|
@@ -2,29 +2,18 @@ import { assertEx } from '@xylabs/assert';
|
|
|
2
2
|
import { Account } from '@xyo-network/account';
|
|
3
3
|
import { AddressSchema } from '@xyo-network/address-payload-plugin';
|
|
4
4
|
import { AbstractModule, CompositeModuleResolver, duplicateModules, QueryBoundWitnessWrapper, XyoErrorBuilder, } from '@xyo-network/module';
|
|
5
|
+
import { NodeConfigSchema, XyoNodeAttachedQuerySchema, XyoNodeAttachQuerySchema, XyoNodeDetachQuerySchema, XyoNodeRegisteredQuerySchema, } from '@xyo-network/node-model';
|
|
5
6
|
import { XyoPayloadBuilder } from '@xyo-network/payload-builder';
|
|
6
|
-
import { NodeConfigSchema } from './Config';
|
|
7
|
-
import { ModuleAttachedEvent, ModuleDetachedEvent, ModuleRegisteredEvent, } from './Events';
|
|
8
|
-
import { XyoNodeAttachedQuerySchema, XyoNodeAttachQuerySchema, XyoNodeDetachQuerySchema, XyoNodeRegisteredQuerySchema } from './Queries';
|
|
9
7
|
export class AbstractNode extends AbstractModule {
|
|
10
8
|
static configSchema = NodeConfigSchema;
|
|
11
|
-
moduleAttachedEventListeners = [];
|
|
12
|
-
moduleDetachedEventListeners = [];
|
|
13
|
-
moduleRegisteredEventListeners = [];
|
|
14
9
|
privateResolver = new CompositeModuleResolver();
|
|
15
10
|
isNode = true;
|
|
16
|
-
constructor(params) {
|
|
17
|
-
super(params);
|
|
18
|
-
}
|
|
19
11
|
get isModuleResolver() {
|
|
20
12
|
return true;
|
|
21
13
|
}
|
|
22
14
|
get queries() {
|
|
23
15
|
return [XyoNodeAttachQuerySchema, XyoNodeDetachQuerySchema, XyoNodeAttachedQuerySchema, XyoNodeRegisteredQuerySchema, ...super.queries];
|
|
24
16
|
}
|
|
25
|
-
static async create(params) {
|
|
26
|
-
return (await super.create(params));
|
|
27
|
-
}
|
|
28
17
|
static isNode(module) {
|
|
29
18
|
return module.isNode;
|
|
30
19
|
}
|
|
@@ -39,39 +28,6 @@ export class AbstractNode extends AbstractModule {
|
|
|
39
28
|
const childModAddresses = childMods.map((mod) => new XyoPayloadBuilder({ schema: AddressSchema }).fields({ address: mod.address, name: mod.config.name }).build());
|
|
40
29
|
return [...(await super.discover()), ...childModAddresses];
|
|
41
30
|
}
|
|
42
|
-
on(event, listener, remove) {
|
|
43
|
-
if (remove) {
|
|
44
|
-
switch (event) {
|
|
45
|
-
case ModuleAttachedEvent:
|
|
46
|
-
this.moduleAttachedEventListeners = this.moduleAttachedEventListeners?.filter((item) => item != listener);
|
|
47
|
-
break;
|
|
48
|
-
case ModuleDetachedEvent:
|
|
49
|
-
this.moduleDetachedEventListeners = this.moduleDetachedEventListeners?.filter((item) => item != listener);
|
|
50
|
-
break;
|
|
51
|
-
case ModuleRegisteredEvent:
|
|
52
|
-
this.moduleRegisteredEventListeners = this.moduleRegisteredEventListeners?.filter((item) => item != listener);
|
|
53
|
-
break;
|
|
54
|
-
default:
|
|
55
|
-
return super.on(event, listener);
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
else {
|
|
59
|
-
switch (event) {
|
|
60
|
-
case ModuleAttachedEvent:
|
|
61
|
-
this.moduleAttachedEventListeners?.push(listener);
|
|
62
|
-
break;
|
|
63
|
-
case ModuleDetachedEvent:
|
|
64
|
-
this.moduleDetachedEventListeners?.push(listener);
|
|
65
|
-
break;
|
|
66
|
-
case ModuleRegisteredEvent:
|
|
67
|
-
this.moduleRegisteredEventListeners?.push(listener);
|
|
68
|
-
break;
|
|
69
|
-
default:
|
|
70
|
-
return super.on(event, listener);
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
return this;
|
|
74
|
-
}
|
|
75
31
|
async query(query, payloads, queryConfig) {
|
|
76
32
|
const wrapper = QueryBoundWitnessWrapper.parseQuery(query, payloads);
|
|
77
33
|
const typedQuery = wrapper.query.payload;
|
|
@@ -123,10 +79,6 @@ export class AbstractNode extends AbstractModule {
|
|
|
123
79
|
registeredModules() {
|
|
124
80
|
throw new Error('Method not implemented.');
|
|
125
81
|
}
|
|
126
|
-
async start() {
|
|
127
|
-
await super.start();
|
|
128
|
-
return this;
|
|
129
|
-
}
|
|
130
82
|
unregister(_module) {
|
|
131
83
|
throw new Error('Method not implemented.');
|
|
132
84
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractNode.js","sourceRoot":"","sources":["../../src/AbstractNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAC9C,OAAO,EAAkB,aAAa,EAAE,MAAM,qCAAqC,CAAA;AACnF,OAAO,EACL,cAAc,EACd,uBAAuB,EACvB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"AbstractNode.js","sourceRoot":"","sources":["../../src/AbstractNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAC9C,OAAO,EAAkB,aAAa,EAAE,MAAM,qCAAqC,CAAA;AACnF,OAAO,EACL,cAAc,EACd,uBAAuB,EACvB,gBAAgB,EAKhB,wBAAwB,EACxB,eAAe,GAEhB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,gBAAgB,EAGhB,0BAA0B,EAC1B,wBAAwB,EACxB,wBAAwB,EAExB,4BAA4B,GAC7B,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAIhE,MAAM,OAAgB,YACpB,SAAQ,cAAuB;IAG/B,MAAM,CAAmB,YAAY,GAAG,gBAAgB,CAAA;IAErC,eAAe,GAAG,IAAI,uBAAuB,EAAE,CAAA;IAEjD,MAAM,GAAG,IAAI,CAAA;IAE9B,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,IAAa,OAAO;QAClB,OAAO,CAAC,wBAAwB,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,4BAA4B,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,CAAA;IACzI,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,MAAe;QAC3B,OAAQ,MAAuB,CAAC,MAAM,CAAA;IACxC,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,OAAO,CAAC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACvE,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,OAAO,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;IACrD,CAAC;IAEQ,KAAK,CAAC,QAAQ;QACrB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAA;QAC9C,MAAM,iBAAiB,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAC9C,IAAI,iBAAiB,CAAiB,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,CACjI,CAAA;QAED,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,GAAG,iBAAiB,CAAC,CAAA;IAC5D,CAAC;IAEQ,KAAK,CAAC,KAAK,CAClB,KAAQ,EACR,QAAuB,EACvB,WAAqB;QAErB,MAAM,OAAO,GAAG,wBAAwB,CAAC,UAAU,CAAe,KAAK,EAAE,QAAQ,CAAC,CAAA;QAClF,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAA;QACxC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAA;QACtD,MAAM,YAAY,GAAG,IAAI,OAAO,EAAE,CAAA;QAClC,MAAM,cAAc,GAAiB,EAAE,CAAA;QACvC,IAAI;YACF,QAAQ,UAAU,CAAC,MAAM,EAAE;gBACzB,KAAK,wBAAwB,CAAC,CAAC;oBAC7B,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;oBAC1D,MAAK;iBACN;gBACD,KAAK,wBAAwB,CAAC,CAAC;oBAC7B,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;oBACrC,MAAK;iBACN;gBACD,KAAK,0BAA0B,CAAC,CAAC;oBAC/B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;oBACvC,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE;wBAC/B,MAAM,OAAO,GAAG,IAAI,iBAAiB,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAA;wBAC5F,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;qBAC7B;oBACD,MAAK;iBACN;gBACD,KAAK,4BAA4B,CAAC,CAAC;oBACjC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;oBACzC,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE;wBAC/B,MAAM,OAAO,GAAG,IAAI,iBAAiB,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAA;wBAC5F,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;qBAC7B;oBACD,MAAK;iBACN;gBACD;oBACE,OAAO,MAAM,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;aAC5C;SACF;QAAC,OAAO,EAAE,EAAE;YACX,MAAM,KAAK,GAAG,EAAW,CAAA;YACzB,cAAc,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;SAChF;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;IACtD,CAAC;IAED,QAAQ,CAAC,OAAe;QACtB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAC5C,CAAC;IAED,UAAU;QACR,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAC5C,CAAC;IAED,iBAAiB;QACf,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAC5C,CAAC;IAED,UAAU,CAAC,OAAe;QACxB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAC5C,CAAC;IAEkB,KAAK,CAAC,OAAO,CAAkC,MAAqB;QACrF,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAU,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,KAAK,CAAC,OAAO,CAAU,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAA;IACvI,CAAC"}
|
package/dist/esm/MemoryNode.js
CHANGED
|
@@ -2,16 +2,13 @@ import { assertEx } from '@xylabs/assert';
|
|
|
2
2
|
import { exists } from '@xylabs/exists';
|
|
3
3
|
import { fulfilled, rejected } from '@xylabs/promise';
|
|
4
4
|
import { duplicateModules, ModuleWrapper } from '@xyo-network/module';
|
|
5
|
+
import { NodeConfigSchema } from '@xyo-network/node-model';
|
|
5
6
|
import compact from 'lodash/compact';
|
|
6
7
|
import { AbstractNode } from './AbstractNode';
|
|
7
|
-
import { NodeConfigSchema } from './Config';
|
|
8
8
|
import { NodeWrapper } from './NodeWrapper';
|
|
9
9
|
export class MemoryNode extends AbstractNode {
|
|
10
10
|
static configSchema = NodeConfigSchema;
|
|
11
11
|
registeredModuleMap = {};
|
|
12
|
-
static async create(params) {
|
|
13
|
-
return (await super.create(params));
|
|
14
|
-
}
|
|
15
12
|
async attach(address, external) {
|
|
16
13
|
const existingModule = (await this.resolve({ address: [address] })).pop();
|
|
17
14
|
assertEx(!existingModule, `Module [${existingModule?.config.name ?? existingModule?.address}] already attached at address [${address}]`);
|
|
@@ -45,23 +42,23 @@ export class MemoryNode extends AbstractNode {
|
|
|
45
42
|
this.downResolver.addResolver(module.downResolver);
|
|
46
43
|
}
|
|
47
44
|
const args = { module, name: module.config.name };
|
|
48
|
-
this.
|
|
45
|
+
await this.emit('moduleAttached', args);
|
|
49
46
|
if (NodeWrapper.isNodeModule(module)) {
|
|
50
47
|
if (external) {
|
|
51
48
|
const wrappedAsNode = NodeWrapper.wrap(module);
|
|
52
|
-
const
|
|
53
|
-
const
|
|
54
|
-
|
|
55
|
-
|
|
49
|
+
const attachedListener = async (args) => await this.emit('moduleAttached', args);
|
|
50
|
+
const detachedListener = async (args) => await this.emit('moduleDetached', args);
|
|
51
|
+
wrappedAsNode.on('moduleAttached', attachedListener);
|
|
52
|
+
wrappedAsNode.on('moduleDetached', detachedListener);
|
|
56
53
|
}
|
|
57
54
|
}
|
|
58
|
-
const notifyOfExistingModules = (childModules) => {
|
|
59
|
-
childModules.map((child) => {
|
|
55
|
+
const notifyOfExistingModules = async (childModules) => {
|
|
56
|
+
await Promise.all(childModules.map(async (child) => {
|
|
60
57
|
const args = { module: child, name: child.config.name };
|
|
61
|
-
this.
|
|
62
|
-
});
|
|
58
|
+
await this.emit('moduleAttached', args);
|
|
59
|
+
}));
|
|
63
60
|
};
|
|
64
|
-
notifyOfExistingModules(notificationList);
|
|
61
|
+
await notifyOfExistingModules(notificationList);
|
|
65
62
|
}
|
|
66
63
|
async detach(address) {
|
|
67
64
|
const module = assertEx(this.registeredModuleMap[address], 'No module found at that address');
|
|
@@ -73,7 +70,7 @@ export class MemoryNode extends AbstractNode {
|
|
|
73
70
|
//remove external exposure
|
|
74
71
|
this.downResolver.removeResolver(module.downResolver);
|
|
75
72
|
const args = { module, name: module.config.name };
|
|
76
|
-
this.
|
|
73
|
+
await this.emit('moduleDetached', args);
|
|
77
74
|
//notify of all sub node children detach
|
|
78
75
|
const wrapper = ModuleWrapper.tryWrap(module);
|
|
79
76
|
const notifiedAddresses = [];
|
|
@@ -81,7 +78,7 @@ export class MemoryNode extends AbstractNode {
|
|
|
81
78
|
const notifyOfExistingModules = async (node) => {
|
|
82
79
|
//send attach events for all existing attached modules
|
|
83
80
|
const childModules = await node.resolve();
|
|
84
|
-
childModules.map((child) => {
|
|
81
|
+
await Promise.all(childModules.map(async (child) => {
|
|
85
82
|
//don't report self
|
|
86
83
|
if (node.address === child.address) {
|
|
87
84
|
return;
|
|
@@ -91,8 +88,8 @@ export class MemoryNode extends AbstractNode {
|
|
|
91
88
|
return;
|
|
92
89
|
}
|
|
93
90
|
notifiedAddresses.push(child.address);
|
|
94
|
-
this.
|
|
95
|
-
});
|
|
91
|
+
await this.emit('moduleDetached', { module: child });
|
|
92
|
+
}));
|
|
96
93
|
};
|
|
97
94
|
await notifyOfExistingModules(wrapper);
|
|
98
95
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryNode.js","sourceRoot":"","sources":["../../src/MemoryNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,
|
|
1
|
+
{"version":3,"file":"MemoryNode.js","sourceRoot":"","sources":["../../src/MemoryNode.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/NodeWrapper.js
CHANGED
|
@@ -2,14 +2,14 @@ import { assertEx } from '@xylabs/assert';
|
|
|
2
2
|
import { AddressSchema } from '@xyo-network/address-payload-plugin';
|
|
3
3
|
import { ArchivistWrapper } from '@xyo-network/archivist-wrapper';
|
|
4
4
|
import { ModuleWrapper } from '@xyo-network/module';
|
|
5
|
+
import { XyoNodeAttachedQuerySchema, XyoNodeAttachQuerySchema, XyoNodeDetachQuerySchema, XyoNodeRegisteredQuerySchema, } from '@xyo-network/node-model';
|
|
5
6
|
import { isXyoPayloadOfSchemaType } from '@xyo-network/payload-model';
|
|
6
7
|
import { PayloadWrapper } from '@xyo-network/payload-wrapper';
|
|
7
|
-
import { XyoNodeAttachedQuerySchema, XyoNodeAttachQuerySchema, XyoNodeDetachQuerySchema, XyoNodeRegisteredQuerySchema, } from './Queries';
|
|
8
8
|
export class NodeWrapper extends ModuleWrapper {
|
|
9
9
|
static requiredQueries = [XyoNodeAttachQuerySchema, ...ModuleWrapper.requiredQueries];
|
|
10
10
|
_archivist;
|
|
11
11
|
get archivist() {
|
|
12
|
-
this._archivist = this._archivist ?? new ArchivistWrapper(this.module);
|
|
12
|
+
this._archivist = this._archivist ?? new ArchivistWrapper({ account: this.account, module: this.module });
|
|
13
13
|
return this._archivist;
|
|
14
14
|
}
|
|
15
15
|
static isNodeModule(module) {
|
|
@@ -20,10 +20,10 @@ export class NodeWrapper extends ModuleWrapper {
|
|
|
20
20
|
if (module) {
|
|
21
21
|
const missingRequiredQueries = this.missingRequiredQueries(module);
|
|
22
22
|
if (missingRequiredQueries.length > 0) {
|
|
23
|
-
|
|
23
|
+
this.defaultLogger?.debug(`Missing queries: ${JSON.stringify(missingRequiredQueries, null, 2)}`);
|
|
24
24
|
}
|
|
25
25
|
else {
|
|
26
|
-
return new NodeWrapper(
|
|
26
|
+
return new NodeWrapper({ account, module });
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeWrapper.js","sourceRoot":"","sources":["../../src/NodeWrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAkB,aAAa,EAAE,MAAM,qCAAqC,CAAA;AACnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAU,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,
|
|
1
|
+
{"version":3,"file":"NodeWrapper.js","sourceRoot":"","sources":["../../src/NodeWrapper.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
export * from './AbstractNode';
|
|
2
|
-
export * from './Config';
|
|
3
|
-
export * from './Events';
|
|
4
2
|
export * from './MemoryNode';
|
|
5
|
-
export * from './Node';
|
|
6
3
|
export * from './NodeWrapper';
|
|
7
|
-
export * from '
|
|
8
|
-
export * from './Queries';
|
|
4
|
+
export * from '@xyo-network/node-model';
|
|
9
5
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,yBAAyB,CAAA"}
|
|
@@ -1,34 +1,21 @@
|
|
|
1
|
-
import { AbstractModule, CompositeModuleResolver,
|
|
1
|
+
import { AbstractModule, CompositeModuleResolver, Module, ModuleConfig, ModuleFilter, ModuleQueryResult, XyoQueryBoundWitness } from '@xyo-network/module';
|
|
2
|
+
import { NodeModule, NodeModuleParams } from '@xyo-network/node-model';
|
|
2
3
|
import { XyoPayload } from '@xyo-network/payload-model';
|
|
3
4
|
import { Promisable } from '@xyo-network/promise';
|
|
4
|
-
|
|
5
|
-
import { ModuleAttachedEvent, ModuleAttachedEventArgs, ModuleDetachedEvent, ModuleDetachedEventArgs, ModuleRegisteredEvent, ModuleRegisteredEventArgs } from './Events';
|
|
6
|
-
import { NodeModule } from './Node';
|
|
7
|
-
export type AbstractNodeParams<TConfig extends NodeConfig = NodeConfig> = ModuleParams<TConfig>;
|
|
8
|
-
export declare abstract class AbstractNode<TParams extends AbstractNodeParams = AbstractNodeParams> extends AbstractModule<TParams> implements NodeModule {
|
|
5
|
+
export declare abstract class AbstractNode<TParams extends NodeModuleParams = NodeModuleParams> extends AbstractModule<TParams> implements NodeModule<TParams>, Module<TParams>, NodeModule, Module {
|
|
9
6
|
static readonly configSchema: "network.xyo.node.config";
|
|
10
|
-
protected moduleAttachedEventListeners: EventListener<ModuleAttachedEventArgs>[];
|
|
11
|
-
protected moduleDetachedEventListeners: EventListener<ModuleDetachedEventArgs>[];
|
|
12
|
-
protected moduleRegisteredEventListeners: EventListener<ModuleRegisteredEventArgs>[];
|
|
13
7
|
protected readonly privateResolver: CompositeModuleResolver;
|
|
14
8
|
private readonly isNode;
|
|
15
|
-
protected constructor(params: TParams);
|
|
16
9
|
get isModuleResolver(): boolean;
|
|
17
10
|
get queries(): string[];
|
|
18
|
-
static create(params?: Partial<AbstractNodeParams>): Promise<AbstractNode>;
|
|
19
11
|
static isNode(module: unknown): boolean;
|
|
20
12
|
attached(): Promise<string[]>;
|
|
21
13
|
attachedModules(): Promise<Module[]>;
|
|
22
14
|
discover(): Promise<XyoPayload[]>;
|
|
23
|
-
on(event: ModuleQueriedEvent, listener: (args: ModuleQueriedEventArgs, remove?: boolean) => void): this;
|
|
24
|
-
on(event: ModuleAttachedEvent, listener: (args: ModuleAttachedEventArgs) => void, remove?: boolean): this;
|
|
25
|
-
on(event: ModuleDetachedEvent, listener: (args: ModuleDetachedEventArgs) => void, remove?: boolean): this;
|
|
26
|
-
on(event: ModuleRegisteredEvent, listener: (args: ModuleRegisteredEventArgs) => void, remove?: boolean): this;
|
|
27
15
|
query<T extends XyoQueryBoundWitness = XyoQueryBoundWitness, TConfig extends ModuleConfig = ModuleConfig>(query: T, payloads?: XyoPayload[], queryConfig?: TConfig): Promise<ModuleQueryResult>;
|
|
28
16
|
register(_module: Module): Promisable<this>;
|
|
29
17
|
registered(): Promisable<string[]>;
|
|
30
18
|
registeredModules(): Promisable<Module[]>;
|
|
31
|
-
start(): Promise<this>;
|
|
32
19
|
unregister(_module: Module): Promisable<this>;
|
|
33
20
|
protected resolve<TModule extends Module = Module>(filter?: ModuleFilter): Promise<TModule[]>;
|
|
34
21
|
abstract attach(address: string, external?: boolean): Promisable<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractNode.d.ts","sourceRoot":"","sources":["../../src/AbstractNode.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,cAAc,EACd,uBAAuB,EAEvB,
|
|
1
|
+
{"version":3,"file":"AbstractNode.d.ts","sourceRoot":"","sources":["../../src/AbstractNode.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,cAAc,EACd,uBAAuB,EAEvB,MAAM,EACN,YAAY,EACZ,YAAY,EACZ,iBAAiB,EAGjB,oBAAoB,EACrB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAEL,UAAU,EACV,gBAAgB,EAMjB,MAAM,yBAAyB,CAAA;AAEhC,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,8BAAsB,YAAY,CAAC,OAAO,SAAS,gBAAgB,GAAG,gBAAgB,CACpF,SAAQ,cAAc,CAAC,OAAO,CAC9B,YAAW,UAAU,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,MAAM;IAEnE,gBAAyB,YAAY,4BAAmB;IAExD,SAAS,CAAC,QAAQ,CAAC,eAAe,0BAAgC;IAElE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAO;IAE9B,IAAI,gBAAgB,IAAI,OAAO,CAE9B;IAED,IAAa,OAAO,IAAI,MAAM,EAAE,CAE/B;IAED,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO;IAIvB,QAAQ,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAI7B,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAI3B,QAAQ,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IASjC,KAAK,CAAC,CAAC,SAAS,oBAAoB,GAAG,oBAAoB,EAAE,OAAO,SAAS,YAAY,GAAG,YAAY,EACrH,KAAK,EAAE,CAAC,EACR,QAAQ,CAAC,EAAE,UAAU,EAAE,EACvB,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC,iBAAiB,CAAC;IA0C7B,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC;IAI3C,UAAU,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;IAIlC,iBAAiB,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;IAIzC,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC;cAIpB,OAAO,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAI5G,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC;IACtE,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC;CACnD"}
|
|
@@ -1,26 +1,35 @@
|
|
|
1
|
-
import { Module, ModuleFilter } from '@xyo-network/module';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
export type MemoryNodeParams
|
|
5
|
-
export declare class MemoryNode<TParams extends MemoryNodeParams = MemoryNodeParams> extends AbstractNode<TParams> {
|
|
1
|
+
import { AnyConfigSchema, Module, ModuleFilter } from '@xyo-network/module';
|
|
2
|
+
import { NodeConfig, NodeModule, NodeModuleParams } from '@xyo-network/node-model';
|
|
3
|
+
import { AbstractNode } from './AbstractNode';
|
|
4
|
+
export type MemoryNodeParams = NodeModuleParams<AnyConfigSchema<NodeConfig>>;
|
|
5
|
+
export declare class MemoryNode<TParams extends MemoryNodeParams = MemoryNodeParams> extends AbstractNode<TParams> implements NodeModule<TParams>, NodeModule {
|
|
6
6
|
static configSchema: "network.xyo.node.config";
|
|
7
7
|
private registeredModuleMap;
|
|
8
|
-
static create(params?: Partial<MemoryNodeParams>): Promise<MemoryNode>;
|
|
9
8
|
attach(address: string, external?: boolean): Promise<void>;
|
|
10
9
|
detach(address: string): Promise<void>;
|
|
11
10
|
register(module: Module): this;
|
|
12
11
|
registered(): string[];
|
|
13
|
-
registeredModules(): Module<import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
|
|
12
|
+
registeredModules(): Module<import("@xyo-network/module").ModuleParams<import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
|
|
14
13
|
name?: string | undefined;
|
|
14
|
+
schema: string;
|
|
15
|
+
security?: {
|
|
16
|
+
allowAnonymous?: boolean | undefined;
|
|
17
|
+
allowed?: Record<string, (string | import("@xyo-network/module").CosigningAddressSet)[]> | undefined;
|
|
18
|
+
disallowed?: Record<string, string[]> | undefined;
|
|
19
|
+
} | undefined;
|
|
20
|
+
storeQueries?: boolean | undefined;
|
|
21
|
+
} & Omit<Omit<import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
|
|
22
|
+
name?: string | undefined;
|
|
23
|
+
schema: "network.xyo.module.config";
|
|
15
24
|
security?: {
|
|
16
25
|
allowAnonymous?: boolean | undefined;
|
|
17
26
|
allowed?: Record<string, (string | import("@xyo-network/module").CosigningAddressSet)[]> | undefined;
|
|
18
27
|
disallowed?: Record<string, string[]> | undefined;
|
|
19
28
|
} | undefined;
|
|
20
29
|
storeQueries?: boolean | undefined;
|
|
21
|
-
} & {
|
|
30
|
+
} & Omit<undefined, "schema">, "schema"> & {
|
|
22
31
|
schema: string;
|
|
23
|
-
}
|
|
32
|
+
}, "schema">, undefined, undefined>>[];
|
|
24
33
|
unregister(module: Module): Promise<this>;
|
|
25
34
|
protected resolve<TModule extends Module = Module>(filter?: ModuleFilter): Promise<TModule[]>;
|
|
26
35
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryNode.d.ts","sourceRoot":"","sources":["../../src/MemoryNode.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"MemoryNode.d.ts","sourceRoot":"","sources":["../../src/MemoryNode.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAmC,MAAM,EAAE,YAAY,EAAiB,MAAM,qBAAqB,CAAA;AAC3H,OAAO,EAAE,UAAU,EAAoB,UAAU,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAGpG,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAG7C,MAAM,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAA;AAE5E,qBAAa,UAAU,CAAC,OAAO,SAAS,gBAAgB,GAAG,gBAAgB,CACzE,SAAQ,YAAY,CAAC,OAAO,CAC5B,YAAW,UAAU,CAAC,OAAO,CAAC,EAAE,UAAU;IAE1C,OAAgB,YAAY,4BAAmB;IAE/C,OAAO,CAAC,mBAAmB,CAA6B;IAEzC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO;IA2E1C,MAAM,CAAC,OAAO,EAAE,MAAM;IA4C5B,QAAQ,CAAC,MAAM,EAAE,MAAM;IAMvB,UAAU;IAMV,iBAAiB;;;;;;;;;;;;;;;;;;;;;IAMX,UAAU,CAAC,MAAM,EAAE,MAAM;cAMf,OAAO,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;CAmB7G"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { AccountInstance } from '@xyo-network/account-model';
|
|
2
2
|
import { ArchivistWrapper } from '@xyo-network/archivist-wrapper';
|
|
3
3
|
import { Module, ModuleWrapper } from '@xyo-network/module';
|
|
4
|
-
import { NodeModule } from '
|
|
5
|
-
export declare class NodeWrapper extends
|
|
4
|
+
import { NodeModule } from '@xyo-network/node-model';
|
|
5
|
+
export declare class NodeWrapper<TWrappedModule extends NodeModule = NodeModule> extends ModuleWrapper<TWrappedModule> {
|
|
6
6
|
static requiredQueries: string[];
|
|
7
7
|
private _archivist?;
|
|
8
8
|
get archivist(): ArchivistWrapper;
|
|
9
9
|
static isNodeModule(module: Module): boolean;
|
|
10
|
-
static tryWrap<TModule extends NodeModule = NodeModule>(module?: TModule, account?: AccountInstance): NodeWrapper | undefined;
|
|
11
|
-
static wrap<TModule extends NodeModule = NodeModule>(module?: TModule, account?: AccountInstance): NodeWrapper
|
|
10
|
+
static tryWrap<TModule extends NodeModule = NodeModule>(module?: TModule, account?: AccountInstance): NodeWrapper<TModule> | undefined;
|
|
11
|
+
static wrap<TModule extends NodeModule = NodeModule>(module?: TModule, account?: AccountInstance): NodeWrapper<TModule>;
|
|
12
12
|
attach(address: string, external?: boolean): Promise<void>;
|
|
13
13
|
attached(): Promise<string[]>;
|
|
14
14
|
detach(address: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeWrapper.d.ts","sourceRoot":"","sources":["../../src/NodeWrapper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAE5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"NodeWrapper.d.ts","sourceRoot":"","sources":["../../src/NodeWrapper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAE5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,EACL,UAAU,EASX,MAAM,yBAAyB,CAAA;AAIhC,qBAAa,WAAW,CAAC,cAAc,SAAS,UAAU,GAAG,UAAU,CAAE,SAAQ,aAAa,CAAC,cAAc,CAAC;IAC5G,OAAgB,eAAe,WAA+D;IAE9F,OAAO,CAAC,UAAU,CAAC,CAAkB;IAErC,IAAI,SAAS,qBAGZ;IAED,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM;WAKlB,OAAO,CAAC,OAAO,SAAS,UAAU,GAAG,UAAU,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,SAAS;WAW/H,IAAI,CAAC,OAAO,SAAS,UAAU,GAAG,UAAU,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,WAAW,CAAC,OAAO,CAAC;IAI1H,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAK1D,QAAQ,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAM7B,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtC,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAKtC"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
export * from './AbstractNode';
|
|
2
|
-
export * from './Config';
|
|
3
|
-
export * from './Events';
|
|
4
2
|
export * from './MemoryNode';
|
|
5
|
-
export * from './Node';
|
|
6
3
|
export * from './NodeWrapper';
|
|
7
|
-
export * from '
|
|
8
|
-
export * from './Queries';
|
|
4
|
+
export * from '@xyo-network/node-model';
|
|
9
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,yBAAyB,CAAA"}
|
package/package.json
CHANGED
|
@@ -13,18 +13,20 @@
|
|
|
13
13
|
"@xylabs/assert": "^2.7.4",
|
|
14
14
|
"@xylabs/exists": "^2.7.4",
|
|
15
15
|
"@xylabs/promise": "^2.7.4",
|
|
16
|
-
"@xyo-network/account": "^2.51.
|
|
17
|
-
"@xyo-network/account-model": "^2.51.
|
|
18
|
-
"@xyo-network/address-payload-plugin": "^2.51.
|
|
19
|
-
"@xyo-network/archivist-wrapper": "^2.51.
|
|
20
|
-
"@xyo-network/module": "^2.51.
|
|
21
|
-
"@xyo-network/
|
|
22
|
-
"@xyo-network/payload-builder": "^2.51.
|
|
23
|
-
"@xyo-network/payload-model": "^2.51.
|
|
24
|
-
"@xyo-network/payload-wrapper": "^2.51.
|
|
25
|
-
"@xyo-network/promise": "^2.51.
|
|
16
|
+
"@xyo-network/account": "^2.51.10",
|
|
17
|
+
"@xyo-network/account-model": "^2.51.10",
|
|
18
|
+
"@xyo-network/address-payload-plugin": "^2.51.10",
|
|
19
|
+
"@xyo-network/archivist-wrapper": "^2.51.10",
|
|
20
|
+
"@xyo-network/module": "^2.51.10",
|
|
21
|
+
"@xyo-network/node-model": "^2.51.10",
|
|
22
|
+
"@xyo-network/payload-builder": "^2.51.10",
|
|
23
|
+
"@xyo-network/payload-model": "^2.51.10",
|
|
24
|
+
"@xyo-network/payload-wrapper": "^2.51.10",
|
|
25
|
+
"@xyo-network/promise": "^2.51.10",
|
|
26
|
+
"lodash": "^4.17.21"
|
|
26
27
|
},
|
|
27
28
|
"devDependencies": {
|
|
29
|
+
"@types/lodash": "^4.14.191",
|
|
28
30
|
"@xylabs/ts-scripts-yarn3": "^2.16.1",
|
|
29
31
|
"@xylabs/tsconfig": "^2.16.1",
|
|
30
32
|
"typescript": "^4.9.5"
|
|
@@ -62,5 +64,5 @@
|
|
|
62
64
|
},
|
|
63
65
|
"sideEffects": false,
|
|
64
66
|
"types": "dist/types/index.d.ts",
|
|
65
|
-
"version": "2.51.
|
|
67
|
+
"version": "2.51.10"
|
|
66
68
|
}
|
package/src/AbstractNode.ts
CHANGED
|
@@ -5,51 +5,38 @@ import {
|
|
|
5
5
|
AbstractModule,
|
|
6
6
|
CompositeModuleResolver,
|
|
7
7
|
duplicateModules,
|
|
8
|
-
EventListener,
|
|
9
8
|
Module,
|
|
10
9
|
ModuleConfig,
|
|
11
10
|
ModuleFilter,
|
|
12
|
-
ModuleParams,
|
|
13
|
-
ModuleQueriedEvent,
|
|
14
|
-
ModuleQueriedEventArgs,
|
|
15
11
|
ModuleQueryResult,
|
|
16
12
|
QueryBoundWitnessWrapper,
|
|
17
13
|
XyoErrorBuilder,
|
|
18
14
|
XyoQueryBoundWitness,
|
|
19
15
|
} from '@xyo-network/module'
|
|
16
|
+
import {
|
|
17
|
+
NodeConfigSchema,
|
|
18
|
+
NodeModule,
|
|
19
|
+
NodeModuleParams,
|
|
20
|
+
XyoNodeAttachedQuerySchema,
|
|
21
|
+
XyoNodeAttachQuerySchema,
|
|
22
|
+
XyoNodeDetachQuerySchema,
|
|
23
|
+
XyoNodeQuery,
|
|
24
|
+
XyoNodeRegisteredQuerySchema,
|
|
25
|
+
} from '@xyo-network/node-model'
|
|
20
26
|
import { XyoPayloadBuilder } from '@xyo-network/payload-builder'
|
|
21
27
|
import { XyoPayload } from '@xyo-network/payload-model'
|
|
22
28
|
import { Promisable } from '@xyo-network/promise'
|
|
23
29
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
ModuleDetachedEvent,
|
|
29
|
-
ModuleDetachedEventArgs,
|
|
30
|
-
ModuleRegisteredEvent,
|
|
31
|
-
ModuleRegisteredEventArgs,
|
|
32
|
-
} from './Events'
|
|
33
|
-
import { NodeModule } from './Node'
|
|
34
|
-
import { XyoNodeAttachedQuerySchema, XyoNodeAttachQuerySchema, XyoNodeDetachQuerySchema, XyoNodeQuery, XyoNodeRegisteredQuerySchema } from './Queries'
|
|
35
|
-
|
|
36
|
-
export type AbstractNodeParams<TConfig extends NodeConfig = NodeConfig> = ModuleParams<TConfig>
|
|
37
|
-
|
|
38
|
-
export abstract class AbstractNode<TParams extends AbstractNodeParams = AbstractNodeParams> extends AbstractModule<TParams> implements NodeModule {
|
|
30
|
+
export abstract class AbstractNode<TParams extends NodeModuleParams = NodeModuleParams>
|
|
31
|
+
extends AbstractModule<TParams>
|
|
32
|
+
implements NodeModule<TParams>, Module<TParams>, NodeModule, Module
|
|
33
|
+
{
|
|
39
34
|
static override readonly configSchema = NodeConfigSchema
|
|
40
35
|
|
|
41
|
-
protected moduleAttachedEventListeners: EventListener<ModuleAttachedEventArgs>[] = []
|
|
42
|
-
protected moduleDetachedEventListeners: EventListener<ModuleDetachedEventArgs>[] = []
|
|
43
|
-
protected moduleRegisteredEventListeners: EventListener<ModuleRegisteredEventArgs>[] = []
|
|
44
|
-
|
|
45
36
|
protected readonly privateResolver = new CompositeModuleResolver()
|
|
46
37
|
|
|
47
38
|
private readonly isNode = true
|
|
48
39
|
|
|
49
|
-
protected constructor(params: TParams) {
|
|
50
|
-
super(params)
|
|
51
|
-
}
|
|
52
|
-
|
|
53
40
|
get isModuleResolver(): boolean {
|
|
54
41
|
return true
|
|
55
42
|
}
|
|
@@ -58,10 +45,6 @@ export abstract class AbstractNode<TParams extends AbstractNodeParams = Abstract
|
|
|
58
45
|
return [XyoNodeAttachQuerySchema, XyoNodeDetachQuerySchema, XyoNodeAttachedQuerySchema, XyoNodeRegisteredQuerySchema, ...super.queries]
|
|
59
46
|
}
|
|
60
47
|
|
|
61
|
-
static override async create(params?: Partial<AbstractNodeParams>): Promise<AbstractNode> {
|
|
62
|
-
return (await super.create(params)) as AbstractNode
|
|
63
|
-
}
|
|
64
|
-
|
|
65
48
|
static isNode(module: unknown) {
|
|
66
49
|
return (module as AbstractNode).isNode
|
|
67
50
|
}
|
|
@@ -83,48 +66,6 @@ export abstract class AbstractNode<TParams extends AbstractNodeParams = Abstract
|
|
|
83
66
|
return [...(await super.discover()), ...childModAddresses]
|
|
84
67
|
}
|
|
85
68
|
|
|
86
|
-
override on(event: ModuleQueriedEvent, listener: (args: ModuleQueriedEventArgs, remove?: boolean) => void): this
|
|
87
|
-
override on(event: ModuleAttachedEvent, listener: (args: ModuleAttachedEventArgs) => void, remove?: boolean): this
|
|
88
|
-
override on(event: ModuleDetachedEvent, listener: (args: ModuleDetachedEventArgs) => void, remove?: boolean): this
|
|
89
|
-
override on(event: ModuleRegisteredEvent, listener: (args: ModuleRegisteredEventArgs) => void, remove?: boolean): this
|
|
90
|
-
override on(
|
|
91
|
-
event: ModuleQueriedEvent | ModuleAttachedEvent | ModuleDetachedEvent | ModuleRegisteredEvent,
|
|
92
|
-
listener: (args: ModuleQueriedEventArgs) => void,
|
|
93
|
-
remove?: boolean,
|
|
94
|
-
): this {
|
|
95
|
-
if (remove) {
|
|
96
|
-
switch (event) {
|
|
97
|
-
case ModuleAttachedEvent:
|
|
98
|
-
this.moduleAttachedEventListeners = this.moduleAttachedEventListeners?.filter((item) => item != listener)
|
|
99
|
-
break
|
|
100
|
-
case ModuleDetachedEvent:
|
|
101
|
-
this.moduleDetachedEventListeners = this.moduleDetachedEventListeners?.filter((item) => item != listener)
|
|
102
|
-
break
|
|
103
|
-
case ModuleRegisteredEvent:
|
|
104
|
-
this.moduleRegisteredEventListeners = this.moduleRegisteredEventListeners?.filter((item) => item != listener)
|
|
105
|
-
break
|
|
106
|
-
default:
|
|
107
|
-
return super.on(event, listener)
|
|
108
|
-
}
|
|
109
|
-
} else {
|
|
110
|
-
switch (event) {
|
|
111
|
-
case ModuleAttachedEvent:
|
|
112
|
-
this.moduleAttachedEventListeners?.push(listener as EventListener<ModuleAttachedEventArgs>)
|
|
113
|
-
break
|
|
114
|
-
case ModuleDetachedEvent:
|
|
115
|
-
this.moduleDetachedEventListeners?.push(listener as EventListener<ModuleDetachedEventArgs>)
|
|
116
|
-
break
|
|
117
|
-
case ModuleRegisteredEvent:
|
|
118
|
-
this.moduleRegisteredEventListeners?.push(listener as EventListener<ModuleRegisteredEventArgs>)
|
|
119
|
-
break
|
|
120
|
-
default:
|
|
121
|
-
return super.on(event, listener)
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
return this
|
|
126
|
-
}
|
|
127
|
-
|
|
128
69
|
override async query<T extends XyoQueryBoundWitness = XyoQueryBoundWitness, TConfig extends ModuleConfig = ModuleConfig>(
|
|
129
70
|
query: T,
|
|
130
71
|
payloads?: XyoPayload[],
|
|
@@ -183,11 +124,6 @@ export abstract class AbstractNode<TParams extends AbstractNodeParams = Abstract
|
|
|
183
124
|
throw new Error('Method not implemented.')
|
|
184
125
|
}
|
|
185
126
|
|
|
186
|
-
override async start() {
|
|
187
|
-
await super.start()
|
|
188
|
-
return this
|
|
189
|
-
}
|
|
190
|
-
|
|
191
127
|
unregister(_module: Module): Promisable<this> {
|
|
192
128
|
throw new Error('Method not implemented.')
|
|
193
129
|
}
|