@xyo-network/node 2.64.7 → 2.64.9

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.
@@ -3,7 +3,7 @@ import { Account } from '@xyo-network/account';
3
3
  import { AddressSchema } from '@xyo-network/address-payload-plugin';
4
4
  import { handleErrorAsync } from '@xyo-network/error';
5
5
  import { NodeManifestPayloadSchema } from '@xyo-network/manifest-model';
6
- import { AbstractModule, CompositeModuleResolver, duplicateModules, ModuleErrorBuilder, QueryBoundWitnessWrapper, } from '@xyo-network/module';
6
+ import { AbstractModule, CompositeModuleResolver, duplicateModules, isDirectModule, ModuleErrorBuilder, ModuleWrapper, QueryBoundWitnessWrapper, } from '@xyo-network/module';
7
7
  import { NodeAttachedQuerySchema, NodeAttachQuerySchema, NodeConfigSchema, NodeDetachQuerySchema, NodeRegisteredQuerySchema, } from '@xyo-network/node-model';
8
8
  import { PayloadBuilder } from '@xyo-network/payload-builder';
9
9
  export class AbstractNode extends AbstractModule {
@@ -41,7 +41,7 @@ export class AbstractNode extends AbstractModule {
41
41
  async manifest() {
42
42
  const manifest = { ...(await super.manifest()), schema: NodeManifestPayloadSchema };
43
43
  const notThisModule = (module) => module.address !== this.address;
44
- const toManifest = (module) => module.manifest();
44
+ const toManifest = (module) => (isDirectModule(module) ? module.manifest() : ModuleWrapper.wrap(module, this.account).manifest());
45
45
  const privateModules = await Promise.all((await this.privateResolver.resolve()).filter(notThisModule).map(toManifest));
46
46
  if (privateModules.length > 0) {
47
47
  manifest.modules = manifest.modules ?? {};
@@ -63,6 +63,23 @@ export class AbstractNode extends AbstractModule {
63
63
  registeredModules() {
64
64
  throw new Error('Method not implemented.');
65
65
  }
66
+ async resolvePrivate(nameOrAddressOrFilter) {
67
+ switch (typeof nameOrAddressOrFilter) {
68
+ case 'string': {
69
+ const byAddress = Account.isAddress(nameOrAddressOrFilter)
70
+ ? (await this.privateResolver.resolve({ address: [nameOrAddressOrFilter] })).pop() ??
71
+ (await this.resolve({ address: [nameOrAddressOrFilter] })).pop()
72
+ : undefined;
73
+ return (byAddress ??
74
+ (await this.privateResolver.resolve({ name: [nameOrAddressOrFilter] })).pop() ??
75
+ (await this.resolve({ name: [nameOrAddressOrFilter] })).pop());
76
+ }
77
+ default: {
78
+ const filter = nameOrAddressOrFilter;
79
+ return [...(await this.privateResolver.resolve(filter)), ...(await this.resolve(filter))].filter(duplicateModules);
80
+ }
81
+ }
82
+ }
66
83
  unregister(_module) {
67
84
  throw new Error('Method not implemented.');
68
85
  }
@@ -123,8 +140,5 @@ export class AbstractNode extends AbstractModule {
123
140
  }
124
141
  return (await this.bindQueryResult(queryPayload, resultPayloads, [queryAccount], errorPayloads))[0];
125
142
  }
126
- async resolve(filter) {
127
- return [...(await this.privateResolver.resolve(filter)), ...(await super.resolve(filter))].filter(duplicateModules);
128
- }
129
143
  }
130
144
  //# sourceMappingURL=AbstractNode.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractNode.js","sourceRoot":"","sources":["../../src/AbstractNode.ts"],"names":[],"mappings":"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"}
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,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAuB,yBAAyB,EAAE,MAAM,6BAA6B,CAAA;AAC5F,OAAO,EACL,cAAc,EACd,uBAAuB,EACvB,gBAAgB,EAChB,cAAc,EAId,kBAAkB,EAGlB,aAAa,EAEb,wBAAwB,GACzB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,EAChB,qBAAqB,EAMrB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAI7D,MAAM,OAAgB,YACpB,SAAQ,cAAmC;IAG3C,MAAM,CAAmB,aAAa,GAAa,CAAC,gBAAgB,CAAC,CAAA;IAElD,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,qBAAqB,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,CAAA;IAC7H,CAAC;IAED,IAAuB,kBAAkB;QACvC,OAAO;YACL,+BAA+B,EAAE,KAAK;YACtC,iCAAiC,EAAE,KAAK;YACxC,+BAA+B,EAAE,KAAK;YACtC,mCAAmC,EAAE,KAAK;SAC3C,CAAA;IACH,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,cAAc,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,CAC9H,CAAA;QAED,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,GAAG,iBAAiB,CAAC,CAAA;IAC5D,CAAC;IAEQ,KAAK,CAAC,QAAQ;QACrB,MAAM,QAAQ,GAAwB,EAAE,GAAG,CAAC,MAAM,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAA;QAExG,MAAM,aAAa,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,CAAA;QACzE,MAAM,UAAU,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;QAEzI,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAA;QACtH,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7B,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAA;YACzC,QAAQ,CAAC,OAAO,CAAC,OAAO,GAAG,cAAc,CAAA;SAC1C;QAED,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAA;QAClH,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;YAC5B,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAA;YACzC,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,aAAa,CAAA;SACxC;QAED,OAAO,QAAQ,CAAA;IACjB,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;IAID,KAAK,CAAC,cAAc,CAAkC,qBAA6C;QACjG,QAAQ,OAAO,qBAAqB,EAAE;YACpC,KAAK,QAAQ,CAAC,CAAC;gBACb,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC;oBACxD,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAU,EAAE,OAAO,EAAE,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE;wBACzF,CAAC,MAAM,IAAI,CAAC,OAAO,CAAU,EAAE,OAAO,EAAE,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE;oBAC3E,CAAC,CAAC,SAAS,CAAA;gBACb,OAAO,CACL,SAAS;oBACT,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAU,EAAE,IAAI,EAAE,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE;oBACtF,CAAC,MAAM,IAAI,CAAC,OAAO,CAAU,EAAE,IAAI,EAAE,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CACvE,CAAA;aACF;YACD,OAAO,CAAC,CAAC;gBACP,MAAM,MAAM,GAA6B,qBAAqB,CAAA;gBAC9D,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAU,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,CAAU,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAA;aACrI;SACF;IACH,CAAC;IAED,UAAU,CAAC,OAAe;QACxB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAC5C,CAAC;IAEkB,KAAK,CAAC,YAAY,CACnC,KAAQ,EACR,QAAoB,EACpB,WAAqB;QAErB,MAAM,OAAO,GAAG,wBAAwB,CAAC,UAAU,CAAY,KAAK,EAAE,QAAQ,CAAC,CAAA;QAC/E,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE,CAAA;QAC7C,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAA;QACtD,MAAM,YAAY,GAAG,OAAO,CAAC,UAAU,EAAE,CAAA;QACzC,MAAM,cAAc,GAAc,EAAE,CAAA;QACpC,MAAM,aAAa,GAAkB,EAAE,CAAA;QACvC,IAAI;YACF,QAAQ,YAAY,CAAC,MAAM,EAAE;gBAC3B,KAAK,qBAAqB,CAAC,CAAC;oBAC1B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,aAAa,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAA;oBACpF,IAAI,OAAO,EAAE;wBACX,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAA;wBACzF,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;qBAC7B;oBACD,MAAK;iBACN;gBACD,KAAK,qBAAqB,CAAC,CAAC;oBAC1B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,CAAA;oBAC7D,IAAI,OAAO,EAAE;wBACX,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAA;wBACzF,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;qBAC7B;oBACD,MAAK;iBACN;gBACD,KAAK,uBAAuB,CAAC,CAAC;oBAC5B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;oBACvC,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE;wBAC/B,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAA;wBACzF,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;qBAC7B;oBACD,MAAK;iBACN;gBACD,KAAK,yBAAyB,CAAC,CAAC;oBAC9B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;oBACzC,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE;wBAC/B,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAA;wBACzF,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;qBAC7B;oBACD,MAAK;iBACN;gBACD;oBACE,OAAO,MAAM,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;aACnD;SACF;QAAC,OAAO,EAAE,EAAE;YACX,MAAM,gBAAgB,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;gBACzC,aAAa,CAAC,IAAI,CAChB,IAAI,kBAAkB,EAAE;qBACrB,OAAO,CAAC,CAAC,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;qBACpC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,WAAW,CAAC;qBACrC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;qBACnB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;qBACtB,KAAK,EAAE,CACX,CAAA;YACH,CAAC,CAAC,CAAA;SACH;QACD,OAAO,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,cAAc,EAAE,CAAC,YAAY,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACrG,CAAC"}
@@ -1,9 +1,5 @@
1
1
  import { assertEx } from '@xylabs/assert';
2
- import { exists } from '@xylabs/exists';
3
- import { fulfilled, rejected } from '@xylabs/promise';
4
- import { duplicateModules, ModuleWrapper } from '@xyo-network/module';
5
- import { NodeConfigSchema } from '@xyo-network/node-model';
6
- import { NodeWrapper } from '@xyo-network/node-wrapper';
2
+ import { isNodeModule, NodeConfigSchema } from '@xyo-network/node-model';
7
3
  import compact from 'lodash/compact';
8
4
  import { AbstractNode } from './AbstractNode';
9
5
  export class MemoryNode extends AbstractNode {
@@ -39,22 +35,6 @@ export class MemoryNode extends AbstractNode {
39
35
  await this.emit('moduleUnregistered', args);
40
36
  return this;
41
37
  }
42
- async resolve(filter) {
43
- const internal = this.privateResolver.resolve(filter);
44
- const up = this.upResolver?.resolve(filter) || [];
45
- const down = this.downResolver?.resolve(filter) || [];
46
- const resolved = await Promise.allSettled([internal, up, down]);
47
- const errors = resolved.filter(rejected).map((r) => Error(r.reason));
48
- if (errors.length) {
49
- this.logger?.error(`Resolve Errors: ${JSON.stringify(errors, null, 2)}`);
50
- }
51
- return resolved
52
- .filter(fulfilled)
53
- .map((r) => r.value)
54
- .flat()
55
- .filter(exists)
56
- .filter(duplicateModules);
57
- }
58
38
  async attachUsingAddress(address, external) {
59
39
  const existingModule = (await this.resolve({ address: [address] })).pop();
60
40
  assertEx(!existingModule, `Module [${existingModule?.config.name ?? existingModule?.address}] already attached at address [${address}]`);
@@ -62,11 +42,10 @@ export class MemoryNode extends AbstractNode {
62
42
  if (!module) {
63
43
  return;
64
44
  }
65
- const wrapper = ModuleWrapper.wrap(module);
66
45
  const notifiedAddresses = [];
67
46
  const getModulesToNotifyAbout = async (node) => {
68
47
  //send attach events for all existing attached modules
69
- const childModules = await node.resolve();
48
+ const childModules = await node.downResolver.resolve();
70
49
  return compact(childModules.map((child) => {
71
50
  //don't report self
72
51
  if (node.address === child.address) {
@@ -80,7 +59,7 @@ export class MemoryNode extends AbstractNode {
80
59
  return child;
81
60
  }));
82
61
  };
83
- const notificationList = await getModulesToNotifyAbout(wrapper);
62
+ const notificationList = await getModulesToNotifyAbout(module);
84
63
  this.privateResolver.addResolver(module.downResolver);
85
64
  //give it inside access
86
65
  module.upResolver.addResolver?.(this.privateResolver);
@@ -92,13 +71,12 @@ export class MemoryNode extends AbstractNode {
92
71
  }
93
72
  const args = { module, name: module.config.name };
94
73
  await this.emit('moduleAttached', args);
95
- if (NodeWrapper.isNodeModule(module)) {
74
+ if (isNodeModule(module)) {
96
75
  if (external) {
97
- const wrappedAsNode = NodeWrapper.wrap(module);
98
76
  const attachedListener = async (args) => await this.emit('moduleAttached', args);
99
77
  const detachedListener = async (args) => await this.emit('moduleDetached', args);
100
- wrappedAsNode.on('moduleAttached', attachedListener);
101
- wrappedAsNode.on('moduleDetached', detachedListener);
78
+ module.on('moduleAttached', attachedListener);
79
+ module.on('moduleDetached', detachedListener);
102
80
  }
103
81
  }
104
82
  const notifyOfExistingModules = async (childModules) => {
@@ -131,12 +109,11 @@ export class MemoryNode extends AbstractNode {
131
109
  const args = { module, name: module.config.name };
132
110
  await this.emit('moduleDetached', args);
133
111
  //notify of all sub node children detach
134
- const wrapper = ModuleWrapper.tryWrap(module);
135
112
  const notifiedAddresses = [];
136
- if (wrapper) {
113
+ if (isNodeModule(module)) {
137
114
  const notifyOfExistingModules = async (node) => {
138
115
  //send attach events for all existing attached modules
139
- const childModules = await node.resolve();
116
+ const childModules = await node.downResolver.resolve();
140
117
  await Promise.all(childModules.map(async (child) => {
141
118
  //don't report self
142
119
  if (node.address === child.address) {
@@ -150,7 +127,7 @@ export class MemoryNode extends AbstractNode {
150
127
  await this.emit('moduleDetached', { module: child });
151
128
  }));
152
129
  };
153
- await notifyOfExistingModules(wrapper);
130
+ await notifyOfExistingModules(module);
154
131
  }
155
132
  return address;
156
133
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MemoryNode.js","sourceRoot":"","sources":["../../src/MemoryNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MemoryNode.js","sourceRoot":"","sources":["../../src/MemoryNode.ts"],"names":[],"mappings":"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"}
@@ -18,9 +18,10 @@ export declare abstract class AbstractNode<TParams extends NodeModuleParams = No
18
18
  register(_module: Module): Promisable<this>;
19
19
  registered(): Promisable<string[]>;
20
20
  registeredModules(): Promisable<Module[]>;
21
+ resolvePrivate<TModule extends Module = Module>(filter?: ModuleFilter): Promise<TModule[]>;
22
+ resolvePrivate<TModule extends Module = Module>(nameOrAddress: string): Promise<TModule | undefined>;
21
23
  unregister(_module: Module): Promisable<this>;
22
24
  protected queryHandler<T extends QueryBoundWitness = QueryBoundWitness, TConfig extends ModuleConfig = ModuleConfig>(query: T, payloads?: Payload[], queryConfig?: TConfig): Promise<ModuleQueryResult>;
23
- protected resolve<TModule extends Module = Module>(filter?: ModuleFilter): Promise<TModule[]>;
24
25
  abstract attach(nameOrAddress: string, external?: boolean): Promisable<string | undefined>;
25
26
  abstract detach(nameOrAddress: string): Promisable<string | undefined>;
26
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractNode.d.ts","sourceRoot":"","sources":["../../src/AbstractNode.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAA6B,MAAM,6BAA6B,CAAA;AAC5F,OAAO,EACL,cAAc,EACd,uBAAuB,EAEvB,MAAM,EACN,YAAY,EAGZ,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EAElB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAKL,UAAU,EACV,mBAAmB,EACnB,gBAAgB,EAEhB,aAAa,EAEd,MAAM,yBAAyB,CAAA;AAEhC,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,8BAAsB,YAAY,CAAC,OAAO,SAAS,gBAAgB,GAAG,gBAAgB,EAAE,UAAU,SAAS,mBAAmB,GAAG,mBAAmB,CAClJ,SAAQ,cAAc,CAAC,OAAO,EAAE,UAAU,CAC1C,YAAW,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC;IAEvE,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;IAI3B,QAAQ,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAS9B,QAAQ,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAqBvD,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,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;cA2DJ,OAAO,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAI5G,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
+ {"version":3,"file":"AbstractNode.d.ts","sourceRoot":"","sources":["../../src/AbstractNode.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAA6B,MAAM,6BAA6B,CAAA;AAC5F,OAAO,EACL,cAAc,EACd,uBAAuB,EAGvB,MAAM,EACN,YAAY,EAGZ,YAAY,EACZ,iBAAiB,EAEjB,iBAAiB,EAElB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAKL,UAAU,EACV,mBAAmB,EACnB,gBAAgB,EAEhB,aAAa,EAEd,MAAM,yBAAyB,CAAA;AAEhC,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,8BAAsB,YAAY,CAAC,OAAO,SAAS,gBAAgB,GAAG,gBAAgB,EAAE,UAAU,SAAS,mBAAmB,GAAG,mBAAmB,CAClJ,SAAQ,cAAc,CAAC,OAAO,EAAE,UAAU,CAC1C,YAAW,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC;IAEvE,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;IAI3B,QAAQ,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAS9B,QAAQ,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAqBvD,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,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,4 +1,4 @@
1
- import { AnyConfigSchema, Module, ModuleFilter } from '@xyo-network/module';
1
+ import { AnyConfigSchema, Module } from '@xyo-network/module';
2
2
  import { NodeConfig, NodeModule, NodeModuleEventData, NodeModuleParams } from '@xyo-network/node-model';
3
3
  import { AbstractNode } from './AbstractNode';
4
4
  export type MemoryNodeParams = NodeModuleParams<AnyConfigSchema<NodeConfig>>;
@@ -11,7 +11,6 @@ export declare class MemoryNode<TParams extends MemoryNodeParams = MemoryNodePar
11
11
  registered(): string[];
12
12
  registeredModules(): Module[];
13
13
  unregister(module: Module): Promise<this>;
14
- protected resolve<TModule extends Module = Module>(filter?: ModuleFilter): Promise<TModule[]>;
15
14
  private attachUsingAddress;
16
15
  private attachUsingName;
17
16
  private detachUsingAddress;
@@ -1 +1 @@
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,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAIzH,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,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC;IAE1C,OAAgB,aAAa,8BAAqB;IAElD,OAAO,CAAC,mBAAmB,CAA6B;IAEzC,MAAM,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO;IAIhD,MAAM,CAAC,aAAa,EAAE,MAAM;IAI5B,QAAQ,CAAC,MAAM,EAAE,MAAM;IAQ7B,UAAU;IAMV,iBAAiB;IAMX,UAAU,CAAC,MAAM,EAAE,MAAM;cAQf,OAAO,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;YAoB9F,kBAAkB;YAiFlB,eAAe;YAOf,kBAAkB;YAiDlB,eAAe;IAQ7B,OAAO,CAAC,qBAAqB;CAM9B"}
1
+ {"version":3,"file":"MemoryNode.d.ts","sourceRoot":"","sources":["../../src/MemoryNode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAiB,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAC5E,OAAO,EAAgB,UAAU,EAAoB,UAAU,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAGvI,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,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC;IAE1C,OAAgB,aAAa,8BAAqB;IAElD,OAAO,CAAC,mBAAmB,CAA6B;IAEzC,MAAM,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO;IAIhD,MAAM,CAAC,aAAa,EAAE,MAAM;IAI5B,QAAQ,CAAC,MAAM,EAAE,MAAM;IAQ7B,UAAU;IAMV,iBAAiB;IAMX,UAAU,CAAC,MAAM,EAAE,MAAM;YAQ1B,kBAAkB;YA8ElB,eAAe;YAOf,kBAAkB;YAgDlB,eAAe;IAQ7B,OAAO,CAAC,qBAAqB;CAM9B"}
package/package.json CHANGED
@@ -11,24 +11,22 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "@xylabs/assert": "^2.9.3",
14
- "@xylabs/exists": "^2.9.3",
15
- "@xylabs/promise": "^2.9.3",
16
- "@xyo-network/account": "^2.64.7",
17
- "@xyo-network/address-payload-plugin": "^2.64.7",
18
- "@xyo-network/error": "^2.64.7",
19
- "@xyo-network/manifest-model": "^2.64.7",
20
- "@xyo-network/module": "^2.64.7",
21
- "@xyo-network/node-model": "^2.64.7",
22
- "@xyo-network/node-wrapper": "^2.64.7",
23
- "@xyo-network/payload-builder": "^2.64.7",
24
- "@xyo-network/payload-model": "^2.64.7",
25
- "@xyo-network/promise": "^2.64.7",
14
+ "@xyo-network/account": "^2.64.9",
15
+ "@xyo-network/address-payload-plugin": "^2.64.9",
16
+ "@xyo-network/error": "^2.64.9",
17
+ "@xyo-network/manifest-model": "^2.64.9",
18
+ "@xyo-network/module": "^2.64.9",
19
+ "@xyo-network/node-model": "^2.64.9",
20
+ "@xyo-network/node-wrapper": "^2.64.9",
21
+ "@xyo-network/payload-builder": "^2.64.9",
22
+ "@xyo-network/payload-model": "^2.64.9",
23
+ "@xyo-network/promise": "^2.64.9",
26
24
  "lodash": "^4.17.21"
27
25
  },
28
26
  "devDependencies": {
29
27
  "@types/lodash": "^4.14.195",
30
- "@xylabs/ts-scripts-yarn3": "^2.18.5",
31
- "@xylabs/tsconfig": "^2.18.5",
28
+ "@xylabs/ts-scripts-yarn3": "^2.18.7",
29
+ "@xylabs/tsconfig": "^2.18.7",
32
30
  "typescript": "^5.1.6"
33
31
  },
34
32
  "description": "Primary SDK for using XYO Protocol 2.0",
@@ -64,5 +62,5 @@
64
62
  },
65
63
  "sideEffects": false,
66
64
  "types": "dist/types/index.d.ts",
67
- "version": "2.64.7"
65
+ "version": "2.64.9"
68
66
  }
@@ -7,12 +7,14 @@ import {
7
7
  AbstractModule,
8
8
  CompositeModuleResolver,
9
9
  duplicateModules,
10
+ isDirectModule,
10
11
  Module,
11
12
  ModuleConfig,
12
13
  ModuleError,
13
14
  ModuleErrorBuilder,
14
15
  ModuleFilter,
15
16
  ModuleQueryResult,
17
+ ModuleWrapper,
16
18
  QueryBoundWitness,
17
19
  QueryBoundWitnessWrapper,
18
20
  } from '@xyo-network/module'
@@ -84,7 +86,7 @@ export abstract class AbstractNode<TParams extends NodeModuleParams = NodeModule
84
86
  const manifest: NodeManifestPayload = { ...(await super.manifest()), schema: NodeManifestPayloadSchema }
85
87
 
86
88
  const notThisModule = (module: Module) => module.address !== this.address
87
- const toManifest = (module: Module) => module.manifest()
89
+ const toManifest = (module: Module) => (isDirectModule(module) ? module.manifest() : ModuleWrapper.wrap(module, this.account).manifest())
88
90
 
89
91
  const privateModules = await Promise.all((await this.privateResolver.resolve()).filter(notThisModule).map(toManifest))
90
92
  if (privateModules.length > 0) {
@@ -113,6 +115,28 @@ export abstract class AbstractNode<TParams extends NodeModuleParams = NodeModule
113
115
  throw new Error('Method not implemented.')
114
116
  }
115
117
 
118
+ async resolvePrivate<TModule extends Module = Module>(filter?: ModuleFilter): Promise<TModule[]>
119
+ async resolvePrivate<TModule extends Module = Module>(nameOrAddress: string): Promise<TModule | undefined>
120
+ async resolvePrivate<TModule extends Module = Module>(nameOrAddressOrFilter?: ModuleFilter | string): Promise<TModule | TModule[] | undefined> {
121
+ switch (typeof nameOrAddressOrFilter) {
122
+ case 'string': {
123
+ const byAddress = Account.isAddress(nameOrAddressOrFilter)
124
+ ? (await this.privateResolver.resolve<TModule>({ address: [nameOrAddressOrFilter] })).pop() ??
125
+ (await this.resolve<TModule>({ address: [nameOrAddressOrFilter] })).pop()
126
+ : undefined
127
+ return (
128
+ byAddress ??
129
+ (await this.privateResolver.resolve<TModule>({ name: [nameOrAddressOrFilter] })).pop() ??
130
+ (await this.resolve<TModule>({ name: [nameOrAddressOrFilter] })).pop()
131
+ )
132
+ }
133
+ default: {
134
+ const filter: ModuleFilter | undefined = nameOrAddressOrFilter
135
+ return [...(await this.privateResolver.resolve<TModule>(filter)), ...(await this.resolve<TModule>(filter))].filter(duplicateModules)
136
+ }
137
+ }
138
+ }
139
+
116
140
  unregister(_module: Module): Promisable<this> {
117
141
  throw new Error('Method not implemented.')
118
142
  }
@@ -180,10 +204,6 @@ export abstract class AbstractNode<TParams extends NodeModuleParams = NodeModule
180
204
  return (await this.bindQueryResult(queryPayload, resultPayloads, [queryAccount], errorPayloads))[0]
181
205
  }
182
206
 
183
- protected override async resolve<TModule extends Module = Module>(filter?: ModuleFilter): Promise<TModule[]> {
184
- return [...(await this.privateResolver.resolve<TModule>(filter)), ...(await super.resolve<TModule>(filter))].filter(duplicateModules)
185
- }
186
-
187
207
  abstract attach(nameOrAddress: string, external?: boolean): Promisable<string | undefined>
188
208
  abstract detach(nameOrAddress: string): Promisable<string | undefined>
189
209
  }
package/src/MemoryNode.ts CHANGED
@@ -1,9 +1,6 @@
1
1
  import { assertEx } from '@xylabs/assert'
2
- import { exists } from '@xylabs/exists'
3
- import { fulfilled, rejected } from '@xylabs/promise'
4
- import { AnyConfigSchema, duplicateModules, EventListener, Module, ModuleFilter, ModuleWrapper } from '@xyo-network/module'
5
- import { NodeConfig, NodeConfigSchema, NodeModule, NodeModuleEventData, NodeModuleParams } from '@xyo-network/node-model'
6
- import { NodeWrapper } from '@xyo-network/node-wrapper'
2
+ import { AnyConfigSchema, EventListener, Module } from '@xyo-network/module'
3
+ import { isNodeModule, NodeConfig, NodeConfigSchema, NodeModule, NodeModuleEventData, NodeModuleParams } from '@xyo-network/node-model'
7
4
  import compact from 'lodash/compact'
8
5
 
9
6
  import { AbstractNode } from './AbstractNode'
@@ -54,26 +51,6 @@ export class MemoryNode<TParams extends MemoryNodeParams = MemoryNodeParams, TEv
54
51
  return this
55
52
  }
56
53
 
57
- protected override async resolve<TModule extends Module = Module>(filter?: ModuleFilter): Promise<TModule[]> {
58
- const internal: Promise<TModule[]> = this.privateResolver.resolve<TModule>(filter)
59
- const up: Promise<TModule[]> = this.upResolver?.resolve<TModule>(filter) || []
60
- const down: Promise<TModule[]> = this.downResolver?.resolve<TModule>(filter) || []
61
- const resolved = await Promise.allSettled([internal, up, down])
62
-
63
- const errors = resolved.filter(rejected).map((r) => Error(r.reason))
64
-
65
- if (errors.length) {
66
- this.logger?.error(`Resolve Errors: ${JSON.stringify(errors, null, 2)}`)
67
- }
68
-
69
- return resolved
70
- .filter(fulfilled)
71
- .map((r) => r.value)
72
- .flat()
73
- .filter(exists)
74
- .filter(duplicateModules)
75
- }
76
-
77
54
  private async attachUsingAddress(address: string, external?: boolean) {
78
55
  const existingModule = (await this.resolve({ address: [address] })).pop()
79
56
  assertEx(!existingModule, `Module [${existingModule?.config.name ?? existingModule?.address}] already attached at address [${address}]`)
@@ -83,12 +60,11 @@ export class MemoryNode<TParams extends MemoryNodeParams = MemoryNodeParams, TEv
83
60
  return
84
61
  }
85
62
 
86
- const wrapper = ModuleWrapper.wrap(module)
87
63
  const notifiedAddresses: string[] = []
88
64
 
89
- const getModulesToNotifyAbout = async (node: ModuleWrapper) => {
65
+ const getModulesToNotifyAbout = async (node: Module) => {
90
66
  //send attach events for all existing attached modules
91
- const childModules = await node.resolve()
67
+ const childModules = await node.downResolver.resolve()
92
68
  return compact(
93
69
  childModules.map((child) => {
94
70
  //don't report self
@@ -108,7 +84,7 @@ export class MemoryNode<TParams extends MemoryNodeParams = MemoryNodeParams, TEv
108
84
  )
109
85
  }
110
86
 
111
- const notificationList = await getModulesToNotifyAbout(wrapper)
87
+ const notificationList = await getModulesToNotifyAbout(module)
112
88
 
113
89
  this.privateResolver.addResolver(module.downResolver)
114
90
 
@@ -126,18 +102,16 @@ export class MemoryNode<TParams extends MemoryNodeParams = MemoryNodeParams, TEv
126
102
  const args = { module, name: module.config.name }
127
103
  await this.emit('moduleAttached', args)
128
104
 
129
- if (NodeWrapper.isNodeModule(module)) {
105
+ if (isNodeModule(module)) {
130
106
  if (external) {
131
- const wrappedAsNode = NodeWrapper.wrap(module as NodeModule)
132
-
133
107
  const attachedListener: EventListener<TEventData['moduleAttached']> = async (args: TEventData['moduleAttached']) =>
134
108
  await this.emit('moduleAttached', args)
135
109
 
136
110
  const detachedListener: EventListener<TEventData['moduleDetached']> = async (args: TEventData['moduleDetached']) =>
137
111
  await this.emit('moduleDetached', args)
138
112
 
139
- wrappedAsNode.on('moduleAttached', attachedListener)
140
- wrappedAsNode.on('moduleDetached', detachedListener)
113
+ module.on('moduleAttached', attachedListener)
114
+ module.on('moduleDetached', detachedListener)
141
115
  }
142
116
  }
143
117
 
@@ -184,12 +158,11 @@ export class MemoryNode<TParams extends MemoryNodeParams = MemoryNodeParams, TEv
184
158
  await this.emit('moduleDetached', args)
185
159
 
186
160
  //notify of all sub node children detach
187
- const wrapper = ModuleWrapper.tryWrap(module as NodeModule)
188
161
  const notifiedAddresses: string[] = []
189
- if (wrapper) {
190
- const notifyOfExistingModules = async (node: ModuleWrapper) => {
162
+ if (isNodeModule(module)) {
163
+ const notifyOfExistingModules = async (node: NodeModule) => {
191
164
  //send attach events for all existing attached modules
192
- const childModules = await node.resolve()
165
+ const childModules = await node.downResolver.resolve()
193
166
  await Promise.all(
194
167
  childModules.map(async (child) => {
195
168
  //don't report self
@@ -206,7 +179,7 @@ export class MemoryNode<TParams extends MemoryNodeParams = MemoryNodeParams, TEv
206
179
  }),
207
180
  )
208
181
  }
209
- await notifyOfExistingModules(wrapper)
182
+ await notifyOfExistingModules(module)
210
183
  }
211
184
  return address
212
185
  }