@xyo-network/node 2.65.2 → 2.65.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/cjs/AbstractNode.js +32 -40
- package/dist/cjs/AbstractNode.js.map +1 -1
- package/dist/cjs/MemoryNode.js +35 -0
- package/dist/cjs/MemoryNode.js.map +1 -1
- package/dist/docs.json +5168 -5120
- package/dist/esm/AbstractNode.js +22 -25
- package/dist/esm/AbstractNode.js.map +1 -1
- package/dist/esm/MemoryNode.js +15 -0
- package/dist/esm/MemoryNode.js.map +1 -1
- package/dist/types/AbstractNode.d.ts +3 -4
- package/dist/types/AbstractNode.d.ts.map +1 -1
- package/dist/types/MemoryNode.d.ts +9 -1
- package/dist/types/MemoryNode.d.ts.map +1 -1
- package/package.json +15 -14
- package/src/AbstractNode.ts +31 -43
- package/src/MemoryNode.ts +24 -1
package/dist/esm/AbstractNode.js
CHANGED
|
@@ -6,7 +6,7 @@ import { handleErrorAsync } from '@xyo-network/error';
|
|
|
6
6
|
import { NodeManifestPayloadSchema } from '@xyo-network/manifest-model';
|
|
7
7
|
import { ModuleWrapper } from '@xyo-network/module';
|
|
8
8
|
import { AbstractIndirectModule, CompositeModuleResolver, ModuleErrorBuilder } from '@xyo-network/module-abstract';
|
|
9
|
-
import { duplicateModules, isDirectModule
|
|
9
|
+
import { duplicateModules, isDirectModule } from '@xyo-network/module-model';
|
|
10
10
|
import { NodeAttachedQuerySchema, NodeAttachQuerySchema, NodeConfigSchema, NodeDetachQuerySchema, NodeRegisteredQuerySchema, } from '@xyo-network/node-model';
|
|
11
11
|
import { PayloadBuilder } from '@xyo-network/payload-builder';
|
|
12
12
|
export class AbstractNode extends AbstractIndirectModule {
|
|
@@ -36,30 +36,6 @@ export class AbstractNode extends AbstractIndirectModule {
|
|
|
36
36
|
async attachedModules() {
|
|
37
37
|
return await (this.privateResolver.resolve() ?? []);
|
|
38
38
|
}
|
|
39
|
-
async describe() {
|
|
40
|
-
return await super.describe();
|
|
41
|
-
}
|
|
42
|
-
async discover() {
|
|
43
|
-
const childMods = await this.attachedModules();
|
|
44
|
-
const childModAddresses = childMods.map((mod) => new PayloadBuilder({ schema: AddressSchema }).fields({ address: mod.address, name: mod.config.name }).build());
|
|
45
|
-
return [...(await super.discover()), ...childModAddresses];
|
|
46
|
-
}
|
|
47
|
-
async manifest() {
|
|
48
|
-
const manifest = { ...(await super.manifest()), schema: NodeManifestPayloadSchema };
|
|
49
|
-
const notThisModule = (module) => module.address !== this.address;
|
|
50
|
-
const toManifest = (module) => (isDirectModule(module) ? module.manifest() : ModuleWrapper.wrap(module, this.account).manifest());
|
|
51
|
-
const privateModules = await Promise.all((await this.privateResolver.resolve()).filter(notThisModule).map(toManifest));
|
|
52
|
-
if (privateModules.length > 0) {
|
|
53
|
-
manifest.modules = manifest.modules ?? {};
|
|
54
|
-
manifest.modules.private = privateModules;
|
|
55
|
-
}
|
|
56
|
-
const publicModules = await Promise.all((await this.downResolver.resolve()).filter(notThisModule).map(toManifest));
|
|
57
|
-
if (publicModules.length > 0) {
|
|
58
|
-
manifest.modules = manifest.modules ?? {};
|
|
59
|
-
manifest.modules.public = publicModules;
|
|
60
|
-
}
|
|
61
|
-
return manifest;
|
|
62
|
-
}
|
|
63
39
|
register(_module) {
|
|
64
40
|
throw new Error('Method not implemented.');
|
|
65
41
|
}
|
|
@@ -89,6 +65,27 @@ export class AbstractNode extends AbstractIndirectModule {
|
|
|
89
65
|
unregister(_module) {
|
|
90
66
|
throw new Error('Method not implemented.');
|
|
91
67
|
}
|
|
68
|
+
async discoverHandler() {
|
|
69
|
+
const childMods = await this.attachedModules();
|
|
70
|
+
const childModAddresses = childMods.map((mod) => new PayloadBuilder({ schema: AddressSchema }).fields({ address: mod.address, name: mod.config.name }).build());
|
|
71
|
+
return [...(await super.discoverHandler()), ...childModAddresses];
|
|
72
|
+
}
|
|
73
|
+
async manifestHandler() {
|
|
74
|
+
const manifest = { ...(await super.manifestHandler()), schema: NodeManifestPayloadSchema };
|
|
75
|
+
const notThisModule = (module) => module.address !== this.address;
|
|
76
|
+
const toManifest = (module) => (isDirectModule(module) ? module.manifest() : ModuleWrapper.wrap(module, this.account).manifest());
|
|
77
|
+
const privateModules = await Promise.all((await this.privateResolver.resolve()).filter(notThisModule).map(toManifest));
|
|
78
|
+
if (privateModules.length > 0) {
|
|
79
|
+
manifest.modules = manifest.modules ?? {};
|
|
80
|
+
manifest.modules.private = privateModules;
|
|
81
|
+
}
|
|
82
|
+
const publicModules = await Promise.all((await this.downResolver.resolve()).filter(notThisModule).map(toManifest));
|
|
83
|
+
if (publicModules.length > 0) {
|
|
84
|
+
manifest.modules = manifest.modules ?? {};
|
|
85
|
+
manifest.modules.public = publicModules;
|
|
86
|
+
}
|
|
87
|
+
return manifest;
|
|
88
|
+
}
|
|
92
89
|
async queryHandler(query, payloads, queryConfig) {
|
|
93
90
|
const wrapper = QueryBoundWitnessWrapper.parseQuery(query, payloads);
|
|
94
91
|
const queryPayload = await wrapper.getQuery();
|
|
@@ -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,EAAqB,wBAAwB,EAAE,MAAM,mCAAmC,CAAA;AAC/F,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAuB,yBAAyB,EAAE,MAAM,6BAA6B,CAAA;AAC5F,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAClH,OAAO,
|
|
1
|
+
{"version":3,"file":"AbstractNode.js","sourceRoot":"","sources":["../../src/AbstractNode.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/MemoryNode.js
CHANGED
|
@@ -8,9 +8,21 @@ export class MemoryNode extends AbstractNode {
|
|
|
8
8
|
async attach(nameOrAddress, external) {
|
|
9
9
|
return (await this.attachUsingAddress(nameOrAddress, external)) ?? (await this.attachUsingName(nameOrAddress, external));
|
|
10
10
|
}
|
|
11
|
+
async describe() {
|
|
12
|
+
return await super.describeHandler();
|
|
13
|
+
}
|
|
11
14
|
async detach(nameOrAddress) {
|
|
12
15
|
return (await this.detachUsingAddress(nameOrAddress)) ?? (await this.detachUsingName(nameOrAddress));
|
|
13
16
|
}
|
|
17
|
+
async discover() {
|
|
18
|
+
return await super.discoverHandler();
|
|
19
|
+
}
|
|
20
|
+
async manifest() {
|
|
21
|
+
return await super.manifestHandler();
|
|
22
|
+
}
|
|
23
|
+
async moduleAddress() {
|
|
24
|
+
return await super.moduleAddressHandler();
|
|
25
|
+
}
|
|
14
26
|
async register(module) {
|
|
15
27
|
assertEx(!this.registeredModuleMap[module.address], `Module already registered at that address[${module.address}]`);
|
|
16
28
|
this.registeredModuleMap[module.address] = module;
|
|
@@ -27,6 +39,9 @@ export class MemoryNode extends AbstractNode {
|
|
|
27
39
|
return value;
|
|
28
40
|
});
|
|
29
41
|
}
|
|
42
|
+
subscribe(_queryAccount) {
|
|
43
|
+
return super.subscribeHandler();
|
|
44
|
+
}
|
|
30
45
|
async unregister(module) {
|
|
31
46
|
await this.detach(module.address);
|
|
32
47
|
delete this.registeredModuleMap[module.address];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryNode.js","sourceRoot":"","sources":["../../src/MemoryNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"MemoryNode.js","sourceRoot":"","sources":["../../src/MemoryNode.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { QueryBoundWitness } from '@xyo-network/boundwitness-builder';
|
|
2
2
|
import { NodeManifestPayload } from '@xyo-network/manifest-model';
|
|
3
3
|
import { AbstractIndirectModule, CompositeModuleResolver } from '@xyo-network/module-abstract';
|
|
4
|
-
import { Module, ModuleConfig,
|
|
4
|
+
import { Module, ModuleConfig, ModuleFilter, ModuleQueryResult } from '@xyo-network/module-model';
|
|
5
5
|
import { IndirectNodeModule, NodeModuleEventData, NodeModuleParams, NodeQueryBase } from '@xyo-network/node-model';
|
|
6
6
|
import { Payload } from '@xyo-network/payload-model';
|
|
7
7
|
import { Promisable } from '@xyo-network/promise';
|
|
@@ -15,15 +15,14 @@ export declare abstract class AbstractNode<TParams extends NodeModuleParams = No
|
|
|
15
15
|
static isNode(module: unknown): boolean;
|
|
16
16
|
attached(): Promise<string[]>;
|
|
17
17
|
attachedModules(): Promise<Module[]>;
|
|
18
|
-
describe(): Promise<ModuleDescriptionPayload>;
|
|
19
|
-
discover(): Promise<Payload[]>;
|
|
20
|
-
manifest(): Promise<NodeManifestPayload>;
|
|
21
18
|
register(_module: Module): Promisable<void>;
|
|
22
19
|
registered(): Promisable<string[]>;
|
|
23
20
|
registeredModules(): Promisable<Module[]>;
|
|
24
21
|
resolvePrivate<TModule extends Module = Module>(filter?: ModuleFilter): Promise<TModule[]>;
|
|
25
22
|
resolvePrivate<TModule extends Module = Module>(nameOrAddress: string): Promise<TModule | undefined>;
|
|
26
23
|
unregister(_module: Module): Promisable<this>;
|
|
24
|
+
protected discoverHandler(): Promise<Payload[]>;
|
|
25
|
+
protected manifestHandler(): Promise<NodeManifestPayload>;
|
|
27
26
|
protected queryHandler<T extends QueryBoundWitness = QueryBoundWitness, TConfig extends ModuleConfig = ModuleConfig>(query: T, payloads?: Payload[], queryConfig?: TConfig): Promise<ModuleQueryResult>;
|
|
28
27
|
abstract attach(nameOrAddress: string, external?: boolean): Promisable<string | undefined>;
|
|
29
28
|
abstract detach(nameOrAddress: string): Promisable<string | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractNode.d.ts","sourceRoot":"","sources":["../../src/AbstractNode.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAA4B,MAAM,mCAAmC,CAAA;AAE/F,OAAO,EAAE,mBAAmB,EAA6B,MAAM,6BAA6B,CAAA;AAE5F,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAsB,MAAM,8BAA8B,CAAA;AAClH,OAAO,
|
|
1
|
+
{"version":3,"file":"AbstractNode.d.ts","sourceRoot":"","sources":["../../src/AbstractNode.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAA4B,MAAM,mCAAmC,CAAA;AAE/F,OAAO,EAAE,mBAAmB,EAA6B,MAAM,6BAA6B,CAAA;AAE5F,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAsB,MAAM,8BAA8B,CAAA;AAClH,OAAO,EAAoC,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AACnI,OAAO,EACL,kBAAkB,EAKlB,mBAAmB,EACnB,gBAAgB,EAEhB,aAAa,EAEd,MAAM,yBAAyB,CAAA;AAEhC,OAAO,EAAe,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,8BAAsB,YAAY,CAAC,OAAO,SAAS,gBAAgB,GAAG,gBAAgB,EAAE,UAAU,SAAS,mBAAmB,GAAG,mBAAmB,CAClJ,SAAQ,sBAAsB,CAAC,OAAO,EAAE,UAAU,CAClD,YAAW,kBAAkB,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC;IAE/E,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAqB;IAErE,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,cAAuB,kBAAkB,IAAI,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAOnF;IAED,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO;IAIvB,QAAQ,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAI7B,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAI1C,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;IAInC,cAAc,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAC1F,cAAc,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;IAqB1G,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC;cAIpB,eAAe,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;cASrC,eAAe,IAAI,OAAO,CAAC,mBAAmB,CAAC;cAqB/C,YAAY,CAAC,CAAC,SAAS,iBAAiB,GAAG,iBAAiB,EAAE,OAAO,SAAS,YAAY,GAAG,YAAY,EAChI,KAAK,EAAE,CAAC,EACR,QAAQ,CAAC,EAAE,OAAO,EAAE,EACpB,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC,iBAAiB,CAAC;IA2D7B,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC;IAC1F,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC;CACvE"}
|
|
@@ -1,15 +1,23 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { AccountInstance } from '@xyo-network/account-model';
|
|
2
|
+
import { NodeManifestPayload } from '@xyo-network/manifest-model';
|
|
3
|
+
import { AddressPreviousHashPayload, AnyConfigSchema, Module, ModuleDescriptionPayload } from '@xyo-network/module';
|
|
2
4
|
import { DirectNodeModule, NodeConfig, NodeModuleEventData, NodeModuleParams } from '@xyo-network/node-model';
|
|
5
|
+
import { Payload } from '@xyo-network/payload-model';
|
|
3
6
|
import { AbstractNode } from './AbstractNode';
|
|
4
7
|
export type MemoryNodeParams = NodeModuleParams<AnyConfigSchema<NodeConfig>>;
|
|
5
8
|
export declare class MemoryNode<TParams extends MemoryNodeParams = MemoryNodeParams, TEventData extends NodeModuleEventData = NodeModuleEventData> extends AbstractNode<TParams, TEventData> implements DirectNodeModule<TParams, TEventData> {
|
|
6
9
|
static configSchemas: "network.xyo.node.config"[];
|
|
7
10
|
private registeredModuleMap;
|
|
8
11
|
attach(nameOrAddress: string, external?: boolean): Promise<string | undefined>;
|
|
12
|
+
describe(): Promise<ModuleDescriptionPayload>;
|
|
9
13
|
detach(nameOrAddress: string): Promise<string | undefined>;
|
|
14
|
+
discover(): Promise<Payload[]>;
|
|
15
|
+
manifest(): Promise<NodeManifestPayload>;
|
|
16
|
+
moduleAddress(): Promise<AddressPreviousHashPayload[]>;
|
|
10
17
|
register(module: Module): Promise<void>;
|
|
11
18
|
registered(): string[];
|
|
12
19
|
registeredModules(): Module[];
|
|
20
|
+
subscribe(_queryAccount?: AccountInstance): void;
|
|
13
21
|
unregister(module: Module): Promise<this>;
|
|
14
22
|
private attachUsingAddress;
|
|
15
23
|
private attachUsingName;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryNode.d.ts","sourceRoot":"","sources":["../../src/MemoryNode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAiB,MAAM,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"MemoryNode.d.ts","sourceRoot":"","sources":["../../src/MemoryNode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,0BAA0B,EAAE,eAAe,EAAiB,MAAM,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAA;AAClI,OAAO,EACL,gBAAgB,EAEhB,UAAU,EAGV,mBAAmB,EACnB,gBAAgB,EACjB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAGpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7C,MAAM,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAA;AAE5E,qBAAa,UAAU,CAAC,OAAO,SAAS,gBAAgB,GAAG,gBAAgB,EAAE,UAAU,SAAS,mBAAmB,GAAG,mBAAmB,CACvI,SAAQ,YAAY,CAAC,OAAO,EAAE,UAAU,CACxC,YAAW,gBAAgB,CAAC,OAAO,EAAE,UAAU,CAAC;IAEhD,OAAgB,aAAa,8BAAqB;IAElD,OAAO,CAAC,mBAAmB,CAA6B;IAEzC,MAAM,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO;IAIzD,QAAQ,IAAI,OAAO,CAAC,wBAAwB,CAAC;IAIpC,MAAM,CAAC,aAAa,EAAE,MAAM;IAIrC,QAAQ,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAI9B,QAAQ,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAIxC,aAAa,IAAI,OAAO,CAAC,0BAA0B,EAAE,CAAC;IAI7C,QAAQ,CAAC,MAAM,EAAE,MAAM;IAO7B,UAAU;IAMV,iBAAiB;IAM1B,SAAS,CAAC,aAAa,CAAC,EAAE,eAAe;IAI1B,UAAU,CAAC,MAAM,EAAE,MAAM;YAQ1B,kBAAkB;YA8ElB,eAAe;YAOf,kBAAkB;YAgDlB,eAAe;IAQ7B,OAAO,CAAC,qBAAqB;CAM9B"}
|
package/package.json
CHANGED
|
@@ -11,19 +11,20 @@
|
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
13
|
"@xylabs/assert": "^2.9.3",
|
|
14
|
-
"@xyo-network/account": "^2.65.
|
|
15
|
-
"@xyo-network/
|
|
16
|
-
"@xyo-network/
|
|
17
|
-
"@xyo-network/
|
|
18
|
-
"@xyo-network/
|
|
19
|
-
"@xyo-network/
|
|
20
|
-
"@xyo-network/module
|
|
21
|
-
"@xyo-network/module-
|
|
22
|
-
"@xyo-network/
|
|
23
|
-
"@xyo-network/node-
|
|
24
|
-
"@xyo-network/
|
|
25
|
-
"@xyo-network/payload-
|
|
26
|
-
"@xyo-network/
|
|
14
|
+
"@xyo-network/account": "^2.65.3",
|
|
15
|
+
"@xyo-network/account-model": "^2.65.3",
|
|
16
|
+
"@xyo-network/address-payload-plugin": "^2.65.3",
|
|
17
|
+
"@xyo-network/boundwitness-builder": "^2.65.3",
|
|
18
|
+
"@xyo-network/error": "^2.65.3",
|
|
19
|
+
"@xyo-network/manifest-model": "^2.65.3",
|
|
20
|
+
"@xyo-network/module": "^2.65.3",
|
|
21
|
+
"@xyo-network/module-abstract": "^2.65.3",
|
|
22
|
+
"@xyo-network/module-model": "^2.65.3",
|
|
23
|
+
"@xyo-network/node-model": "^2.65.3",
|
|
24
|
+
"@xyo-network/node-wrapper": "^2.65.3",
|
|
25
|
+
"@xyo-network/payload-builder": "^2.65.3",
|
|
26
|
+
"@xyo-network/payload-model": "^2.65.3",
|
|
27
|
+
"@xyo-network/promise": "^2.65.3",
|
|
27
28
|
"lodash": "^4.17.21"
|
|
28
29
|
},
|
|
29
30
|
"devDependencies": {
|
|
@@ -65,5 +66,5 @@
|
|
|
65
66
|
},
|
|
66
67
|
"sideEffects": false,
|
|
67
68
|
"types": "dist/types/index.d.ts",
|
|
68
|
-
"version": "2.65.
|
|
69
|
+
"version": "2.65.3"
|
|
69
70
|
}
|
package/src/AbstractNode.ts
CHANGED
|
@@ -6,15 +6,7 @@ import { handleErrorAsync } from '@xyo-network/error'
|
|
|
6
6
|
import { NodeManifestPayload, NodeManifestPayloadSchema } from '@xyo-network/manifest-model'
|
|
7
7
|
import { ModuleWrapper } from '@xyo-network/module'
|
|
8
8
|
import { AbstractIndirectModule, CompositeModuleResolver, ModuleErrorBuilder } from '@xyo-network/module-abstract'
|
|
9
|
-
import {
|
|
10
|
-
duplicateModules,
|
|
11
|
-
isDirectModule,
|
|
12
|
-
Module,
|
|
13
|
-
ModuleConfig,
|
|
14
|
-
ModuleDescriptionPayload,
|
|
15
|
-
ModuleFilter,
|
|
16
|
-
ModuleQueryResult,
|
|
17
|
-
} from '@xyo-network/module-model'
|
|
9
|
+
import { duplicateModules, isDirectModule, Module, ModuleConfig, ModuleFilter, ModuleQueryResult } from '@xyo-network/module-model'
|
|
18
10
|
import {
|
|
19
11
|
IndirectNodeModule,
|
|
20
12
|
NodeAttachedQuerySchema,
|
|
@@ -70,40 +62,6 @@ export abstract class AbstractNode<TParams extends NodeModuleParams = NodeModule
|
|
|
70
62
|
return await (this.privateResolver.resolve() ?? [])
|
|
71
63
|
}
|
|
72
64
|
|
|
73
|
-
override async describe(): Promise<ModuleDescriptionPayload> {
|
|
74
|
-
return await super.describe()
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
override async discover(): Promise<Payload[]> {
|
|
78
|
-
const childMods = await this.attachedModules()
|
|
79
|
-
const childModAddresses = childMods.map((mod) =>
|
|
80
|
-
new PayloadBuilder<AddressPayload>({ schema: AddressSchema }).fields({ address: mod.address, name: mod.config.name }).build(),
|
|
81
|
-
)
|
|
82
|
-
|
|
83
|
-
return [...(await super.discover()), ...childModAddresses]
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
override async manifest(): Promise<NodeManifestPayload> {
|
|
87
|
-
const manifest: NodeManifestPayload = { ...(await super.manifest()), schema: NodeManifestPayloadSchema }
|
|
88
|
-
|
|
89
|
-
const notThisModule = (module: Module) => module.address !== this.address
|
|
90
|
-
const toManifest = (module: Module) => (isDirectModule(module) ? module.manifest() : ModuleWrapper.wrap(module, this.account).manifest())
|
|
91
|
-
|
|
92
|
-
const privateModules = await Promise.all((await this.privateResolver.resolve()).filter(notThisModule).map(toManifest))
|
|
93
|
-
if (privateModules.length > 0) {
|
|
94
|
-
manifest.modules = manifest.modules ?? {}
|
|
95
|
-
manifest.modules.private = privateModules
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
const publicModules = await Promise.all((await this.downResolver.resolve()).filter(notThisModule).map(toManifest))
|
|
99
|
-
if (publicModules.length > 0) {
|
|
100
|
-
manifest.modules = manifest.modules ?? {}
|
|
101
|
-
manifest.modules.public = publicModules
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
return manifest
|
|
105
|
-
}
|
|
106
|
-
|
|
107
65
|
register(_module: Module): Promisable<void> {
|
|
108
66
|
throw new Error('Method not implemented.')
|
|
109
67
|
}
|
|
@@ -142,6 +100,36 @@ export abstract class AbstractNode<TParams extends NodeModuleParams = NodeModule
|
|
|
142
100
|
throw new Error('Method not implemented.')
|
|
143
101
|
}
|
|
144
102
|
|
|
103
|
+
protected override async discoverHandler(): Promise<Payload[]> {
|
|
104
|
+
const childMods = await this.attachedModules()
|
|
105
|
+
const childModAddresses = childMods.map((mod) =>
|
|
106
|
+
new PayloadBuilder<AddressPayload>({ schema: AddressSchema }).fields({ address: mod.address, name: mod.config.name }).build(),
|
|
107
|
+
)
|
|
108
|
+
|
|
109
|
+
return [...(await super.discoverHandler()), ...childModAddresses]
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
protected override async manifestHandler(): Promise<NodeManifestPayload> {
|
|
113
|
+
const manifest: NodeManifestPayload = { ...(await super.manifestHandler()), schema: NodeManifestPayloadSchema }
|
|
114
|
+
|
|
115
|
+
const notThisModule = (module: Module) => module.address !== this.address
|
|
116
|
+
const toManifest = (module: Module) => (isDirectModule(module) ? module.manifest() : ModuleWrapper.wrap(module, this.account).manifest())
|
|
117
|
+
|
|
118
|
+
const privateModules = await Promise.all((await this.privateResolver.resolve()).filter(notThisModule).map(toManifest))
|
|
119
|
+
if (privateModules.length > 0) {
|
|
120
|
+
manifest.modules = manifest.modules ?? {}
|
|
121
|
+
manifest.modules.private = privateModules
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
const publicModules = await Promise.all((await this.downResolver.resolve()).filter(notThisModule).map(toManifest))
|
|
125
|
+
if (publicModules.length > 0) {
|
|
126
|
+
manifest.modules = manifest.modules ?? {}
|
|
127
|
+
manifest.modules.public = publicModules
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
return manifest
|
|
131
|
+
}
|
|
132
|
+
|
|
145
133
|
protected override async queryHandler<T extends QueryBoundWitness = QueryBoundWitness, TConfig extends ModuleConfig = ModuleConfig>(
|
|
146
134
|
query: T,
|
|
147
135
|
payloads?: Payload[],
|
package/src/MemoryNode.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { assertEx } from '@xylabs/assert'
|
|
2
|
-
import {
|
|
2
|
+
import { AccountInstance } from '@xyo-network/account-model'
|
|
3
|
+
import { NodeManifestPayload } from '@xyo-network/manifest-model'
|
|
4
|
+
import { AddressPreviousHashPayload, AnyConfigSchema, EventListener, Module, ModuleDescriptionPayload } from '@xyo-network/module'
|
|
3
5
|
import {
|
|
4
6
|
DirectNodeModule,
|
|
5
7
|
isNodeModule,
|
|
@@ -9,6 +11,7 @@ import {
|
|
|
9
11
|
NodeModuleEventData,
|
|
10
12
|
NodeModuleParams,
|
|
11
13
|
} from '@xyo-network/node-model'
|
|
14
|
+
import { Payload } from '@xyo-network/payload-model'
|
|
12
15
|
import compact from 'lodash/compact'
|
|
13
16
|
|
|
14
17
|
import { AbstractNode } from './AbstractNode'
|
|
@@ -27,10 +30,26 @@ export class MemoryNode<TParams extends MemoryNodeParams = MemoryNodeParams, TEv
|
|
|
27
30
|
return (await this.attachUsingAddress(nameOrAddress, external)) ?? (await this.attachUsingName(nameOrAddress, external))
|
|
28
31
|
}
|
|
29
32
|
|
|
33
|
+
async describe(): Promise<ModuleDescriptionPayload> {
|
|
34
|
+
return await super.describeHandler()
|
|
35
|
+
}
|
|
36
|
+
|
|
30
37
|
override async detach(nameOrAddress: string) {
|
|
31
38
|
return (await this.detachUsingAddress(nameOrAddress)) ?? (await this.detachUsingName(nameOrAddress))
|
|
32
39
|
}
|
|
33
40
|
|
|
41
|
+
async discover(): Promise<Payload[]> {
|
|
42
|
+
return await super.discoverHandler()
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
async manifest(): Promise<NodeManifestPayload> {
|
|
46
|
+
return await super.manifestHandler()
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
async moduleAddress(): Promise<AddressPreviousHashPayload[]> {
|
|
50
|
+
return await super.moduleAddressHandler()
|
|
51
|
+
}
|
|
52
|
+
|
|
34
53
|
override async register(module: Module) {
|
|
35
54
|
assertEx(!this.registeredModuleMap[module.address], `Module already registered at that address[${module.address}]`)
|
|
36
55
|
this.registeredModuleMap[module.address] = module
|
|
@@ -50,6 +69,10 @@ export class MemoryNode<TParams extends MemoryNodeParams = MemoryNodeParams, TEv
|
|
|
50
69
|
})
|
|
51
70
|
}
|
|
52
71
|
|
|
72
|
+
subscribe(_queryAccount?: AccountInstance) {
|
|
73
|
+
return super.subscribeHandler()
|
|
74
|
+
}
|
|
75
|
+
|
|
53
76
|
override async unregister(module: Module) {
|
|
54
77
|
await this.detach(module.address)
|
|
55
78
|
delete this.registeredModuleMap[module.address]
|