@xyo-network/node 2.43.9 → 2.43.11

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.
Files changed (78) hide show
  1. package/dist/cjs/Events/ModuleAttached.js +3 -0
  2. package/dist/cjs/Events/ModuleAttached.js.map +1 -0
  3. package/dist/cjs/Events/ResolverChanged.js +3 -0
  4. package/dist/cjs/Events/ResolverChanged.js.map +1 -0
  5. package/dist/cjs/Events/index.js +6 -0
  6. package/dist/cjs/Events/index.js.map +1 -0
  7. package/dist/cjs/MemoryNode.js +13 -2
  8. package/dist/cjs/MemoryNode.js.map +1 -1
  9. package/dist/docs.json +1974 -2329
  10. package/dist/esm/Events/ModuleAttached.js +2 -0
  11. package/dist/esm/Events/ModuleAttached.js.map +1 -0
  12. package/dist/esm/Events/ResolverChanged.js +2 -0
  13. package/dist/esm/Events/ResolverChanged.js.map +1 -0
  14. package/dist/esm/Events/index.js +3 -0
  15. package/dist/esm/Events/index.js.map +1 -0
  16. package/dist/esm/MemoryNode.js +11 -1
  17. package/dist/esm/MemoryNode.js.map +1 -1
  18. package/dist/{cjs → types}/AbstractNode.d.ts +0 -0
  19. package/dist/{cjs → types}/AbstractNode.d.ts.map +0 -0
  20. package/dist/{cjs → types}/Config.d.ts +0 -0
  21. package/dist/{cjs → types}/Config.d.ts.map +0 -0
  22. package/dist/types/Events/ModuleAttached.d.ts +7 -0
  23. package/dist/types/Events/ModuleAttached.d.ts.map +1 -0
  24. package/dist/types/Events/ResolverChanged.d.ts +7 -0
  25. package/dist/types/Events/ResolverChanged.d.ts.map +1 -0
  26. package/dist/types/Events/index.d.ts +3 -0
  27. package/dist/types/Events/index.d.ts.map +1 -0
  28. package/dist/{cjs → types}/MemoryNode.d.ts +4 -9
  29. package/dist/types/MemoryNode.d.ts.map +1 -0
  30. package/dist/{cjs → types}/Node.d.ts +0 -0
  31. package/dist/{cjs → types}/Node.d.ts.map +0 -0
  32. package/dist/{cjs → types}/NodeWrapper.d.ts +0 -0
  33. package/dist/{cjs → types}/NodeWrapper.d.ts.map +0 -0
  34. package/dist/{cjs → types}/PartialConfig.d.ts +0 -0
  35. package/dist/{cjs → types}/PartialConfig.d.ts.map +0 -0
  36. package/dist/{cjs → types}/Queries/Attach.d.ts +0 -0
  37. package/dist/{cjs → types}/Queries/Attach.d.ts.map +0 -0
  38. package/dist/{cjs → types}/Queries/Attached.d.ts +0 -0
  39. package/dist/{cjs → types}/Queries/Attached.d.ts.map +0 -0
  40. package/dist/{cjs → types}/Queries/Detach.d.ts +0 -0
  41. package/dist/{cjs → types}/Queries/Detach.d.ts.map +0 -0
  42. package/dist/{cjs → types}/Queries/Registered.d.ts +0 -0
  43. package/dist/{cjs → types}/Queries/Registered.d.ts.map +0 -0
  44. package/dist/{cjs → types}/Queries/index.d.ts +0 -0
  45. package/dist/{cjs → types}/Queries/index.d.ts.map +0 -0
  46. package/dist/{cjs → types}/index.d.ts +0 -0
  47. package/dist/{cjs → types}/index.d.ts.map +0 -0
  48. package/package.json +15 -15
  49. package/src/Events/ModuleAttached.ts +8 -0
  50. package/src/Events/ResolverChanged.ts +8 -0
  51. package/src/Events/index.ts +2 -0
  52. package/src/MemoryNode.spec.ts +19 -12
  53. package/src/MemoryNode.ts +23 -17
  54. package/dist/cjs/MemoryNode.d.ts.map +0 -1
  55. package/dist/esm/AbstractNode.d.ts +0 -59
  56. package/dist/esm/AbstractNode.d.ts.map +0 -1
  57. package/dist/esm/Config.d.ts +0 -8
  58. package/dist/esm/Config.d.ts.map +0 -1
  59. package/dist/esm/MemoryNode.d.ts +0 -32
  60. package/dist/esm/MemoryNode.d.ts.map +0 -1
  61. package/dist/esm/Node.d.ts +0 -10
  62. package/dist/esm/Node.d.ts.map +0 -1
  63. package/dist/esm/NodeWrapper.d.ts +0 -29
  64. package/dist/esm/NodeWrapper.d.ts.map +0 -1
  65. package/dist/esm/PartialConfig.d.ts +0 -4
  66. package/dist/esm/PartialConfig.d.ts.map +0 -1
  67. package/dist/esm/Queries/Attach.d.ts +0 -9
  68. package/dist/esm/Queries/Attach.d.ts.map +0 -1
  69. package/dist/esm/Queries/Attached.d.ts +0 -7
  70. package/dist/esm/Queries/Attached.d.ts.map +0 -1
  71. package/dist/esm/Queries/Detach.d.ts +0 -8
  72. package/dist/esm/Queries/Detach.d.ts.map +0 -1
  73. package/dist/esm/Queries/Registered.d.ts +0 -7
  74. package/dist/esm/Queries/Registered.d.ts.map +0 -1
  75. package/dist/esm/Queries/index.d.ts +0 -12
  76. package/dist/esm/Queries/index.d.ts.map +0 -1
  77. package/dist/esm/index.d.ts +0 -8
  78. package/dist/esm/index.d.ts.map +0 -1
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ModuleAttached.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModuleAttached.js","sourceRoot":"","sources":["../../../src/Events/ModuleAttached.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ResolverChanged.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResolverChanged.js","sourceRoot":"","sources":["../../../src/Events/ResolverChanged.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ export * from './ModuleAttached';
2
+ export * from './ResolverChanged';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Events/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA"}
@@ -6,6 +6,7 @@ import { AbstractNode } from './AbstractNode';
6
6
  import { NodeConfigSchema } from './Config';
7
7
  export class MemoryNode extends AbstractNode {
8
8
  static configSchema = NodeConfigSchema;
9
+ moduleAttachedEventListeners = [];
9
10
  registeredModuleMap = new Map();
10
11
  resolverChangedEventListeners = [];
11
12
  get resolver() {
@@ -44,12 +45,21 @@ export class MemoryNode extends AbstractNode {
44
45
  attach(address, name) {
45
46
  const module = assertEx(this.registeredModuleMap.get(address), 'No module found at that address');
46
47
  this.internalResolver.add(module, name);
48
+ const args = { module };
49
+ this.moduleAttachedEventListeners?.map((listener) => listener(args));
47
50
  }
48
51
  detach(address) {
49
52
  this.internalResolver.remove(address);
50
53
  }
51
54
  on(event, listener) {
52
- this.resolverChangedEventListeners?.push(listener);
55
+ switch (event) {
56
+ case 'moduleAttached':
57
+ this.moduleAttachedEventListeners?.push(listener);
58
+ break;
59
+ case 'moduleResolverChanged':
60
+ this.resolverChangedEventListeners?.push(listener);
61
+ break;
62
+ }
53
63
  return this;
54
64
  }
55
65
  register(module) {
@@ -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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"}
File without changes
File without changes
File without changes
File without changes
@@ -0,0 +1,7 @@
1
+ import { ModuleEventEmitter } from '@xyo-network/module';
2
+ import { Module } from '@xyo-network/module-model';
3
+ export interface ModuleAttachedEventArgs {
4
+ module: Module;
5
+ }
6
+ export type ModuleAttachedEventEmitter = ModuleEventEmitter<'moduleAttached', ModuleAttachedEventArgs>;
7
+ //# sourceMappingURL=ModuleAttached.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModuleAttached.d.ts","sourceRoot":"","sources":["../../../src/Events/ModuleAttached.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAElD,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,MAAM,0BAA0B,GAAG,kBAAkB,CAAC,gBAAgB,EAAE,uBAAuB,CAAC,CAAA"}
@@ -0,0 +1,7 @@
1
+ import { ModuleEventEmitter } from '@xyo-network/module';
2
+ import { ModuleResolver } from '@xyo-network/module-model';
3
+ export interface ModuleResolverChangedEventArgs {
4
+ resolver?: ModuleResolver;
5
+ }
6
+ export type ResolverChangedEventEmitter = ModuleEventEmitter<'moduleResolverChanged', ModuleResolverChangedEventArgs>;
7
+ //# sourceMappingURL=ResolverChanged.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResolverChanged.d.ts","sourceRoot":"","sources":["../../../src/Events/ResolverChanged.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAE1D,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,EAAE,cAAc,CAAA;CAC1B;AAED,MAAM,MAAM,2BAA2B,GAAG,kBAAkB,CAAC,uBAAuB,EAAE,8BAA8B,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ export * from './ModuleAttached';
2
+ export * from './ResolverChanged';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Events/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA"}
@@ -1,19 +1,13 @@
1
1
  import { Module, ModuleFilter, ModuleResolver } from '@xyo-network/module';
2
2
  import { AbstractNode, AbstractNodeParams } from './AbstractNode';
3
3
  import { NodeConfig } from './Config';
4
+ import { ModuleAttachedEventArgs, ModuleAttachedEventEmitter, ModuleResolverChangedEventArgs, ResolverChangedEventEmitter } from './Events';
4
5
  export interface MemoryNodeParams<TConfig extends NodeConfig = NodeConfig, TModule extends Module = Module> extends AbstractNodeParams<TConfig, TModule> {
5
6
  autoAttachExternallyResolved?: boolean;
6
7
  }
7
- export type ListenerFunction<T> = (args: T) => void;
8
- export interface ModuleEventEmitter<TEvent extends string, TEventArgs> {
9
- on(event: TEvent, listener: ListenerFunction<TEventArgs>): this;
10
- }
11
- export interface ModuleResolverChangedEventArgs {
12
- resolver?: ModuleResolver;
13
- }
14
- export type ResolverChangedEventEmitter = ModuleEventEmitter<'moduleResolverChanged', ModuleResolverChangedEventArgs>;
15
- export declare class MemoryNode<TConfig extends NodeConfig = NodeConfig, TModule extends Module = Module> extends AbstractNode<TConfig, TModule> implements ResolverChangedEventEmitter {
8
+ export declare class MemoryNode<TConfig extends NodeConfig = NodeConfig, TModule extends Module = Module> extends AbstractNode<TConfig, TModule> implements ModuleAttachedEventEmitter, ResolverChangedEventEmitter {
16
9
  static configSchema: "network.xyo.node.config";
10
+ private readonly moduleAttachedEventListeners;
17
11
  private registeredModuleMap;
18
12
  private readonly resolverChangedEventListeners;
19
13
  get resolver(): ModuleResolver | undefined;
@@ -21,6 +15,7 @@ export declare class MemoryNode<TConfig extends NodeConfig = NodeConfig, TModule
21
15
  static create(params?: Partial<MemoryNodeParams>): Promise<MemoryNode>;
22
16
  attach(address: string, name?: string): void;
23
17
  detach(address: string): void;
18
+ on(event: 'moduleAttached', listener: (args: ModuleAttachedEventArgs) => void): this;
24
19
  on(event: 'moduleResolverChanged', listener: (args: ModuleResolverChangedEventArgs) => void): this;
25
20
  register(module: TModule): void;
26
21
  registered(): string[];
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemoryNode.d.ts","sourceRoot":"","sources":["../../src/MemoryNode.ts"],"names":[],"mappings":"AAGA,OAAO,EAA8D,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEtI,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACjE,OAAO,EAAE,UAAU,EAAoB,MAAM,UAAU,CAAA;AACvD,OAAO,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,8BAA8B,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAA;AAO3I,MAAM,WAAW,gBAAgB,CAAC,OAAO,SAAS,UAAU,GAAG,UAAU,EAAE,OAAO,SAAS,MAAM,GAAG,MAAM,CACxG,SAAQ,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC;IAC5C,4BAA4B,CAAC,EAAE,OAAO,CAAA;CACvC;AAED,qBAAa,UAAU,CAAC,OAAO,SAAS,UAAU,GAAG,UAAU,EAAE,OAAO,SAAS,MAAM,GAAG,MAAM,CAC9F,SAAQ,YAAY,CAAC,OAAO,EAAE,OAAO,CACrC,YAAW,0BAA0B,EAAE,2BAA2B;IAElE,MAAM,CAAC,YAAY,4BAAmB;IACtC,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAA+C;IAC5F,OAAO,CAAC,mBAAmB,CAA6B;IACxD,OAAO,CAAC,QAAQ,CAAC,6BAA6B,CAAsD;IAEpG,IAAa,QAAQ,IAIW,cAAc,GAAG,SAAS,CAFzD;IAED,IAAa,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,SAAS,EAIzD;WAEqB,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC;IAwB5E,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM;IAOrC,MAAM,CAAC,OAAO,EAAE,MAAM;IAI/B,EAAE,CAAC,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,uBAAuB,KAAK,IAAI,GAAG,IAAI;IACpF,EAAE,CAAC,KAAK,EAAE,uBAAuB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,8BAA8B,KAAK,IAAI,GAAG,IAAI;IAazF,QAAQ,CAAC,MAAM,EAAE,OAAO;IAIxB,UAAU;IAMV,iBAAiB;IAMX,OAAO,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAOlD,UAAU,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAY3D,UAAU,CAAC,MAAM,EAAE,OAAO;CAGpC"}
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/package.json CHANGED
@@ -10,21 +10,21 @@
10
10
  "url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues"
11
11
  },
12
12
  "dependencies": {
13
- "@xylabs/assert": "^2.6.15",
14
- "@xylabs/exists": "^2.6.15",
15
- "@xylabs/promise": "^2.6.15",
16
- "@xyo-network/account": "^2.43.9",
17
- "@xyo-network/address-payload-plugin": "^2.43.9",
18
- "@xyo-network/archivist-wrapper": "^2.43.9",
19
- "@xyo-network/module": "^2.43.9",
20
- "@xyo-network/module-model": "^2.43.9",
21
- "@xyo-network/payload-builder": "^2.43.9",
22
- "@xyo-network/payload-model": "^2.43.9",
23
- "@xyo-network/payload-wrapper": "^2.43.9",
24
- "@xyo-network/promise": "^2.43.9"
13
+ "@xylabs/assert": "^2.6.16",
14
+ "@xylabs/exists": "^2.6.16",
15
+ "@xylabs/promise": "^2.6.16",
16
+ "@xyo-network/account": "^2.43.11",
17
+ "@xyo-network/address-payload-plugin": "^2.43.11",
18
+ "@xyo-network/archivist-wrapper": "^2.43.11",
19
+ "@xyo-network/module": "^2.43.11",
20
+ "@xyo-network/module-model": "^2.43.11",
21
+ "@xyo-network/payload-builder": "^2.43.11",
22
+ "@xyo-network/payload-model": "^2.43.11",
23
+ "@xyo-network/payload-wrapper": "^2.43.11",
24
+ "@xyo-network/promise": "^2.43.11"
25
25
  },
26
26
  "devDependencies": {
27
- "@xylabs/ts-scripts-yarn3": "^2.12.21"
27
+ "@xylabs/ts-scripts-yarn3": "^2.12.25"
28
28
  },
29
29
  "description": "Primary SDK for using XYO Protocol 2.0",
30
30
  "browser": "dist/esm/index.js",
@@ -58,6 +58,6 @@
58
58
  "url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js.git"
59
59
  },
60
60
  "sideEffects": false,
61
- "types": "dist/esm/index.d.ts",
62
- "version": "2.43.9"
61
+ "types": "dist/types/index.d.ts",
62
+ "version": "2.43.11"
63
63
  }
@@ -0,0 +1,8 @@
1
+ import { ModuleEventEmitter } from '@xyo-network/module'
2
+ import { Module } from '@xyo-network/module-model'
3
+
4
+ export interface ModuleAttachedEventArgs {
5
+ module: Module
6
+ }
7
+
8
+ export type ModuleAttachedEventEmitter = ModuleEventEmitter<'moduleAttached', ModuleAttachedEventArgs>
@@ -0,0 +1,8 @@
1
+ import { ModuleEventEmitter } from '@xyo-network/module'
2
+ import { ModuleResolver } from '@xyo-network/module-model'
3
+
4
+ export interface ModuleResolverChangedEventArgs {
5
+ resolver?: ModuleResolver
6
+ }
7
+
8
+ export type ResolverChangedEventEmitter = ModuleEventEmitter<'moduleResolverChanged', ModuleResolverChangedEventArgs>
@@ -0,0 +1,2 @@
1
+ export * from './ModuleAttached'
2
+ export * from './ResolverChanged'
@@ -150,6 +150,15 @@ describe('MemoryNode', () => {
150
150
  it('attaches module', () => {
151
151
  node.attach(module.address)
152
152
  })
153
+ it('emits event on module attach', (done) => {
154
+ node.on('moduleAttached', (args) => {
155
+ expect(args.module).toBeObject()
156
+ expect(args.module.address).toBe(module.address)
157
+ expect(args.module).toBe(module)
158
+ done()
159
+ })
160
+ node.attach(module.address)
161
+ })
153
162
  })
154
163
  describe('attached', () => {
155
164
  let module: AbstractModule
@@ -368,19 +377,17 @@ describe('MemoryNode', () => {
368
377
  })
369
378
  })
370
379
  })
371
- describe('on', () => {
372
- describe('moduleResolverChanged', () => {
373
- it('emits event', (done) => {
374
- const resolver = new SimpleModuleResolver()
375
- node.on('moduleResolverChanged', (args) => {
376
- expect(args).toBeObject()
377
- expect(args.resolver).toBe(resolver)
378
- done()
379
- })
380
- expect(node.resolver).toBeUndefined()
381
- node.resolver = resolver
382
- expect(node.resolver).toBe(resolver)
380
+ describe('resolver', () => {
381
+ it('emits event when resolver changes', (done) => {
382
+ const resolver = new SimpleModuleResolver()
383
+ node.on('moduleResolverChanged', (args) => {
384
+ expect(args).toBeObject()
385
+ expect(args.resolver).toBe(resolver)
386
+ done()
383
387
  })
388
+ expect(node.resolver).toBeUndefined()
389
+ node.resolver = resolver
390
+ expect(node.resolver).toBe(resolver)
384
391
  })
385
392
  })
386
393
  })
package/src/MemoryNode.ts CHANGED
@@ -1,35 +1,30 @@
1
1
  import { assertEx } from '@xylabs/assert'
2
2
  import { exists } from '@xylabs/exists'
3
3
  import { fulfilled } from '@xylabs/promise'
4
- import { duplicateModules, mixinResolverEventEmitter, Module, ModuleFilter, ModuleResolver } from '@xyo-network/module'
4
+ import { duplicateModules, EventListener, mixinResolverEventEmitter, Module, ModuleFilter, ModuleResolver } from '@xyo-network/module'
5
5
 
6
6
  import { AbstractNode, AbstractNodeParams } from './AbstractNode'
7
7
  import { NodeConfig, NodeConfigSchema } from './Config'
8
+ import { ModuleAttachedEventArgs, ModuleAttachedEventEmitter, ModuleResolverChangedEventArgs, ResolverChangedEventEmitter } from './Events'
9
+
10
+ type SupportedEventTypes = 'moduleAttached' | 'moduleResolverChanged'
11
+ type SupportedEventListeners<T extends SupportedEventTypes> = T extends 'moduleAttached'
12
+ ? EventListener<ModuleAttachedEventArgs>
13
+ : EventListener<ModuleResolverChangedEventArgs>
8
14
 
9
15
  export interface MemoryNodeParams<TConfig extends NodeConfig = NodeConfig, TModule extends Module = Module>
10
16
  extends AbstractNodeParams<TConfig, TModule> {
11
17
  autoAttachExternallyResolved?: boolean
12
18
  }
13
19
 
14
- export type ListenerFunction<T> = (args: T) => void
15
-
16
- export interface ModuleEventEmitter<TEvent extends string, TEventArgs> {
17
- on(event: TEvent, listener: ListenerFunction<TEventArgs>): this
18
- }
19
-
20
- export interface ModuleResolverChangedEventArgs {
21
- resolver?: ModuleResolver
22
- }
23
-
24
- export type ResolverChangedEventEmitter = ModuleEventEmitter<'moduleResolverChanged', ModuleResolverChangedEventArgs>
25
-
26
20
  export class MemoryNode<TConfig extends NodeConfig = NodeConfig, TModule extends Module = Module>
27
21
  extends AbstractNode<TConfig, TModule>
28
- implements ResolverChangedEventEmitter
22
+ implements ModuleAttachedEventEmitter, ResolverChangedEventEmitter
29
23
  {
30
24
  static configSchema = NodeConfigSchema
25
+ private readonly moduleAttachedEventListeners: EventListener<ModuleAttachedEventArgs>[] = []
31
26
  private registeredModuleMap = new Map<string, TModule>()
32
- private readonly resolverChangedEventListeners: ListenerFunction<ModuleResolverChangedEventArgs>[] = []
27
+ private readonly resolverChangedEventListeners: EventListener<ModuleResolverChangedEventArgs>[] = []
33
28
 
34
29
  override get resolver() {
35
30
  return this._resolver
@@ -68,14 +63,25 @@ export class MemoryNode<TConfig extends NodeConfig = NodeConfig, TModule extends
68
63
  override attach(address: string, name?: string) {
69
64
  const module = assertEx(this.registeredModuleMap.get(address), 'No module found at that address')
70
65
  this.internalResolver.add(module, name)
66
+ const args = { module }
67
+ this.moduleAttachedEventListeners?.map((listener) => listener(args))
71
68
  }
72
69
 
73
70
  override detach(address: string) {
74
71
  this.internalResolver.remove(address)
75
72
  }
76
73
 
77
- on(event: 'moduleResolverChanged', listener: (args: ModuleResolverChangedEventArgs) => void): this {
78
- this.resolverChangedEventListeners?.push(listener)
74
+ on(event: 'moduleAttached', listener: (args: ModuleAttachedEventArgs) => void): this
75
+ on(event: 'moduleResolverChanged', listener: (args: ModuleResolverChangedEventArgs) => void): this
76
+ on<T extends SupportedEventTypes>(event: T, listener: SupportedEventListeners<T>): this {
77
+ switch (event) {
78
+ case 'moduleAttached':
79
+ this.moduleAttachedEventListeners?.push(listener as EventListener<ModuleAttachedEventArgs>)
80
+ break
81
+ case 'moduleResolverChanged':
82
+ this.resolverChangedEventListeners?.push(listener as EventListener<ModuleResolverChangedEventArgs>)
83
+ break
84
+ }
79
85
  return this
80
86
  }
81
87
 
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoryNode.d.ts","sourceRoot":"","sources":["../../src/MemoryNode.ts"],"names":[],"mappings":"AAGA,OAAO,EAA+C,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEvH,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACjE,OAAO,EAAE,UAAU,EAAoB,MAAM,UAAU,CAAA;AAEvD,MAAM,WAAW,gBAAgB,CAAC,OAAO,SAAS,UAAU,GAAG,UAAU,EAAE,OAAO,SAAS,MAAM,GAAG,MAAM,CACxG,SAAQ,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC;IAC5C,4BAA4B,CAAC,EAAE,OAAO,CAAA;CACvC;AAED,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAA;AAEnD,MAAM,WAAW,kBAAkB,CAAC,MAAM,SAAS,MAAM,EAAE,UAAU;IACnE,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,CAAC,UAAU,CAAC,GAAG,IAAI,CAAA;CAChE;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,EAAE,cAAc,CAAA;CAC1B;AAED,MAAM,MAAM,2BAA2B,GAAG,kBAAkB,CAAC,uBAAuB,EAAE,8BAA8B,CAAC,CAAA;AAErH,qBAAa,UAAU,CAAC,OAAO,SAAS,UAAU,GAAG,UAAU,EAAE,OAAO,SAAS,MAAM,GAAG,MAAM,CAC9F,SAAQ,YAAY,CAAC,OAAO,EAAE,OAAO,CACrC,YAAW,2BAA2B;IAEtC,MAAM,CAAC,YAAY,4BAAmB;IACtC,OAAO,CAAC,mBAAmB,CAA6B;IACxD,OAAO,CAAC,QAAQ,CAAC,6BAA6B,CAAyD;IAEvG,IAAa,QAAQ,IAIW,cAAc,GAAG,SAAS,CAFzD;IAED,IAAa,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,SAAS,EAIzD;WAEqB,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC;IAwB5E,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM;IAKrC,MAAM,CAAC,OAAO,EAAE,MAAM;IAI/B,EAAE,CAAC,KAAK,EAAE,uBAAuB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,8BAA8B,KAAK,IAAI,GAAG,IAAI;IAKzF,QAAQ,CAAC,MAAM,EAAE,OAAO;IAIxB,UAAU;IAMV,iBAAiB;IAMX,OAAO,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAOlD,UAAU,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAY3D,UAAU,CAAC,MAAM,EAAE,OAAO;CAGpC"}
@@ -1,59 +0,0 @@
1
- import { Account } from '@xyo-network/account';
2
- import { AbstractModule, AbstractModuleConfig, Module, ModuleConstructable, ModuleDescription, ModuleFilter, ModuleParams, ModuleQueryResult, ModuleRepository, ModuleWrapper, XyoQueryBoundWitness } from '@xyo-network/module';
3
- import { XyoPayload } from '@xyo-network/payload-model';
4
- import { Promisable } from '@xyo-network/promise';
5
- import { NodeConfig } from './Config';
6
- import { NodeModule } from './Node';
7
- export interface AbstractNodeParams<TConfig extends NodeConfig = NodeConfig, TModule extends Module = Module> extends ModuleParams<TConfig> {
8
- internalResolver?: ModuleRepository<TModule>;
9
- }
10
- export declare abstract class AbstractNode<TConfig extends NodeConfig = NodeConfig, TModule extends Module = Module> extends AbstractModule<TConfig> implements NodeModule {
11
- static readonly configSchema: "network.xyo.node.config";
12
- protected internalResolver: ModuleRepository<TModule>;
13
- protected constructor(params: AbstractNodeParams<TConfig, TModule>);
14
- get isModuleResolver(): boolean;
15
- static create(params?: Partial<AbstractNodeParams>): Promise<AbstractNode>;
16
- attached(): Promise<string[]>;
17
- attachedModules(): Promise<TModule[]>;
18
- description(): Promise<ModuleDescription>;
19
- discover(_queryAccount?: Account | undefined): Promise<XyoPayload[]>;
20
- queries(): string[];
21
- query<T extends XyoQueryBoundWitness = XyoQueryBoundWitness, TConfig extends AbstractModuleConfig = AbstractModuleConfig>(query: T, payloads?: XyoPayload[], queryConfig?: TConfig): Promise<ModuleQueryResult>;
22
- register(_module: TModule): Promisable<void>;
23
- registered(): Promisable<string[]>;
24
- registeredModules(): Promisable<TModule[]>;
25
- /**
26
- * Resolves the supplied filter into wrapped modules
27
- * @example <caption>Example using ArchivistWrapper</caption>
28
- * const filter = { address: [address] }
29
- * const mods: ArchivistWrapper[] = await node.resolveWrapped(ArchivistWrapper, filter)
30
- * @param wrapper The ModuleWrapper class (ArchivistWrapper,
31
- * DivinerWrapper, etc.)
32
- * @param filter The ModuleFilter
33
- * @returns An array of ModuleWrapper instances corresponding to
34
- * the underlying modules matching the supplied filter
35
- */
36
- resolveWrapped<T extends ModuleWrapper<TModule> = ModuleWrapper<TModule>>(wrapper: ModuleConstructable<TModule, T>, filter?: ModuleFilter): Promise<T[]>;
37
- start(): Promise<this>;
38
- /**
39
- * Tries to resolve the supplied filter into wrapped modules
40
- * @example <caption>Example using ArchivistWrapper</caption>
41
- * const filter = { address: [address] }
42
- * const mods: ArchivistWrapper[] = await node.tryResolveWrapped(ArchivistWrapper, filter)
43
- * @param wrapper The ModuleWrapper class (ArchivistWrapper,
44
- * DivinerWrapper, etc.)
45
- * @param filter The ModuleFilter
46
- * @returns An array of ModuleWrapper instances corresponding to
47
- * the underlying modules matching the supplied filter
48
- */
49
- tryResolveWrapped<T extends ModuleWrapper<TModule> = ModuleWrapper<TModule>>(wrapper: ModuleConstructable<TModule, T>, filter?: ModuleFilter): Promise<T[]>;
50
- unregister(_module: TModule): Promisable<void>;
51
- abstract attach(address: string): Promisable<void>;
52
- abstract detach(address: string): Promisable<void>;
53
- abstract resolve(filter?: ModuleFilter): Promisable<TModule[]>;
54
- abstract tryResolve(filter?: ModuleFilter): Promisable<TModule[]>;
55
- }
56
- /** @deprecated use AbstractNode instead */
57
- export declare abstract class XyoNode<TConfig extends NodeConfig = NodeConfig, TModule extends AbstractModule = AbstractModule> extends AbstractNode<TConfig, TModule> {
58
- }
59
- //# sourceMappingURL=AbstractNode.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AbstractNode.d.ts","sourceRoot":"","sources":["../../src/AbstractNode.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- import { AbstractModuleConfig } from '@xyo-network/module';
2
- import { XyoPayload } from '@xyo-network/payload-model';
3
- export type NodeConfigSchema = 'network.xyo.node.config';
4
- export declare const NodeConfigSchema: NodeConfigSchema;
5
- export type NodeConfig<TConfig extends XyoPayload = XyoPayload> = AbstractModuleConfig<{
6
- archivist?: string;
7
- } & TConfig>;
8
- //# sourceMappingURL=Config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../src/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AAEvD,MAAM,MAAM,gBAAgB,GAAG,yBAAyB,CAAA;AACxD,eAAO,MAAM,gBAAgB,EAAE,gBAA4C,CAAA;AAE3E,MAAM,MAAM,UAAU,CAAC,OAAO,SAAS,UAAU,GAAG,UAAU,IAAI,oBAAoB,CAAC;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,CAAA"}
@@ -1,32 +0,0 @@
1
- import { Module, ModuleFilter, ModuleResolver } from '@xyo-network/module';
2
- import { AbstractNode, AbstractNodeParams } from './AbstractNode';
3
- import { NodeConfig } from './Config';
4
- export interface MemoryNodeParams<TConfig extends NodeConfig = NodeConfig, TModule extends Module = Module> extends AbstractNodeParams<TConfig, TModule> {
5
- autoAttachExternallyResolved?: boolean;
6
- }
7
- export type ListenerFunction<T> = (args: T) => void;
8
- export interface ModuleEventEmitter<TEvent extends string, TEventArgs> {
9
- on(event: TEvent, listener: ListenerFunction<TEventArgs>): this;
10
- }
11
- export interface ModuleResolverChangedEventArgs {
12
- resolver?: ModuleResolver;
13
- }
14
- export type ResolverChangedEventEmitter = ModuleEventEmitter<'moduleResolverChanged', ModuleResolverChangedEventArgs>;
15
- export declare class MemoryNode<TConfig extends NodeConfig = NodeConfig, TModule extends Module = Module> extends AbstractNode<TConfig, TModule> implements ResolverChangedEventEmitter {
16
- static configSchema: "network.xyo.node.config";
17
- private registeredModuleMap;
18
- private readonly resolverChangedEventListeners;
19
- get resolver(): ModuleResolver | undefined;
20
- set resolver(resolver: ModuleResolver | undefined);
21
- static create(params?: Partial<MemoryNodeParams>): Promise<MemoryNode>;
22
- attach(address: string, name?: string): void;
23
- detach(address: string): void;
24
- on(event: 'moduleResolverChanged', listener: (args: ModuleResolverChangedEventArgs) => void): this;
25
- register(module: TModule): void;
26
- registered(): string[];
27
- registeredModules(): TModule[];
28
- resolve(filter?: ModuleFilter): Promise<TModule[]>;
29
- tryResolve(filter?: ModuleFilter): Promise<TModule[]>;
30
- unregister(module: TModule): void;
31
- }
32
- //# sourceMappingURL=MemoryNode.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoryNode.d.ts","sourceRoot":"","sources":["../../src/MemoryNode.ts"],"names":[],"mappings":"AAGA,OAAO,EAA+C,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEvH,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACjE,OAAO,EAAE,UAAU,EAAoB,MAAM,UAAU,CAAA;AAEvD,MAAM,WAAW,gBAAgB,CAAC,OAAO,SAAS,UAAU,GAAG,UAAU,EAAE,OAAO,SAAS,MAAM,GAAG,MAAM,CACxG,SAAQ,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC;IAC5C,4BAA4B,CAAC,EAAE,OAAO,CAAA;CACvC;AAED,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAA;AAEnD,MAAM,WAAW,kBAAkB,CAAC,MAAM,SAAS,MAAM,EAAE,UAAU;IACnE,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,CAAC,UAAU,CAAC,GAAG,IAAI,CAAA;CAChE;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,EAAE,cAAc,CAAA;CAC1B;AAED,MAAM,MAAM,2BAA2B,GAAG,kBAAkB,CAAC,uBAAuB,EAAE,8BAA8B,CAAC,CAAA;AAErH,qBAAa,UAAU,CAAC,OAAO,SAAS,UAAU,GAAG,UAAU,EAAE,OAAO,SAAS,MAAM,GAAG,MAAM,CAC9F,SAAQ,YAAY,CAAC,OAAO,EAAE,OAAO,CACrC,YAAW,2BAA2B;IAEtC,MAAM,CAAC,YAAY,4BAAmB;IACtC,OAAO,CAAC,mBAAmB,CAA6B;IACxD,OAAO,CAAC,QAAQ,CAAC,6BAA6B,CAAyD;IAEvG,IAAa,QAAQ,IAIW,cAAc,GAAG,SAAS,CAFzD;IAED,IAAa,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,SAAS,EAIzD;WAEqB,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC;IAwB5E,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM;IAKrC,MAAM,CAAC,OAAO,EAAE,MAAM;IAI/B,EAAE,CAAC,KAAK,EAAE,uBAAuB,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,8BAA8B,KAAK,IAAI,GAAG,IAAI;IAKzF,QAAQ,CAAC,MAAM,EAAE,OAAO;IAIxB,UAAU;IAMV,iBAAiB;IAMX,OAAO,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAOlD,UAAU,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAY3D,UAAU,CAAC,MAAM,EAAE,OAAO;CAGpC"}
@@ -1,10 +0,0 @@
1
- import { Module, ModuleResolver } from '@xyo-network/module-model';
2
- import { Promisable } from '@xyo-network/promise';
3
- export interface Node {
4
- attach(address: string, name?: string): Promisable<void>;
5
- attached(): Promisable<string[]>;
6
- detach(address: string): Promisable<void>;
7
- registered(): Promisable<string[]>;
8
- }
9
- export type NodeModule<TModule extends Module = Module> = Node & Module & ModuleResolver<TModule>;
10
- //# sourceMappingURL=Node.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Node.d.ts","sourceRoot":"","sources":["../../src/Node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,MAAM,WAAW,IAAI;IACnB,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;IACxD,QAAQ,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC,CAAA;IAChC,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;IACzC,UAAU,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC,CAAA;CACnC;AAED,MAAM,MAAM,UAAU,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,IAAI,IAAI,GAAG,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA"}
@@ -1,29 +0,0 @@
1
- import { ArchivistWrapper } from '@xyo-network/archivist-wrapper';
2
- import { ModuleFilter, ModuleWrapper } from '@xyo-network/module';
3
- import { Node, NodeModule } from './Node';
4
- export declare class NodeWrapper<TModule extends NodeModule = NodeModule> extends ModuleWrapper<TModule> implements Node, NodeModule {
5
- isModuleResolver: boolean;
6
- private _archivist?;
7
- get archivist(): ArchivistWrapper;
8
- attach(address: string, name?: string): Promise<void>;
9
- attached(): Promise<string[]>;
10
- detach(address: string): Promise<void>;
11
- registered(): Promise<string[]>;
12
- resolve(filter?: ModuleFilter): import("@xyo-network/promise").Promisable<import("@xyo-network/module").Module<import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
13
- security?: {
14
- allowed?: Record<string, (string | import("@xyo-network/module").CosigningAddressSet)[]> | undefined;
15
- disallowed?: Record<string, string[]> | undefined;
16
- } | undefined;
17
- } & {
18
- schema: string;
19
- }>[], never>;
20
- tryResolve(filter?: ModuleFilter): import("@xyo-network/promise").Promisable<import("@xyo-network/module").Module<import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
21
- security?: {
22
- allowed?: Record<string, (string | import("@xyo-network/module").CosigningAddressSet)[]> | undefined;
23
- disallowed?: Record<string, string[]> | undefined;
24
- } | undefined;
25
- } & {
26
- schema: string;
27
- }>[], never>;
28
- }
29
- //# sourceMappingURL=NodeWrapper.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NodeWrapper.d.ts","sourceRoot":"","sources":["../../src/NodeWrapper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAIjE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAYzC,qBAAa,WAAW,CAAC,OAAO,SAAS,UAAU,GAAG,UAAU,CAAE,SAAQ,aAAa,CAAC,OAAO,CAAE,YAAW,IAAI,EAAE,UAAU;IACnH,gBAAgB,UAAO;IAE9B,OAAO,CAAC,UAAU,CAAC,CAAkB;IAErC,IAAW,SAAS,qBAGnB;IAEK,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrD,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;IAMrC,OAAO,CAAC,MAAM,CAAC,EAAE,YAAY;;;;;;;;IAG7B,UAAU,CAAC,MAAM,CAAC,EAAE,YAAY;;;;;;;;CAGjC"}
@@ -1,4 +0,0 @@
1
- import { PartialModuleConfig } from '@xyo-network/module';
2
- import { NodeConfig } from './Config';
3
- export type PartialNodeConfig<T extends NodeConfig = NodeConfig> = PartialModuleConfig<T>;
4
- //# sourceMappingURL=PartialConfig.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PartialConfig.d.ts","sourceRoot":"","sources":["../../src/PartialConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAEzD,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAErC,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,IAAI,mBAAmB,CAAC,CAAC,CAAC,CAAA"}
@@ -1,9 +0,0 @@
1
- import { XyoQuery } from '@xyo-network/module-model';
2
- export type XyoNodeAttachQuerySchema = 'network.xyo.query.node.attach';
3
- export declare const XyoNodeAttachQuerySchema: XyoNodeAttachQuerySchema;
4
- export type XyoNodeAttachQuery = XyoQuery<{
5
- address: string;
6
- name?: string;
7
- schema: XyoNodeAttachQuerySchema;
8
- }>;
9
- //# sourceMappingURL=Attach.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Attach.d.ts","sourceRoot":"","sources":["../../../src/Queries/Attach.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AAEpD,MAAM,MAAM,wBAAwB,GAAG,+BAA+B,CAAA;AACtE,eAAO,MAAM,wBAAwB,EAAE,wBAA0D,CAAA;AAEjG,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC;IACxC,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,wBAAwB,CAAA;CACjC,CAAC,CAAA"}
@@ -1,7 +0,0 @@
1
- import { XyoQuery } from '@xyo-network/module-model';
2
- export type XyoNodeAttachedQuerySchema = 'network.xyo.query.node.attached';
3
- export declare const XyoNodeAttachedQuerySchema: XyoNodeAttachedQuerySchema;
4
- export type XyoNodeAttachedQuery = XyoQuery<{
5
- schema: XyoNodeAttachedQuerySchema;
6
- }>;
7
- //# sourceMappingURL=Attached.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Attached.d.ts","sourceRoot":"","sources":["../../../src/Queries/Attached.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AAEpD,MAAM,MAAM,0BAA0B,GAAG,iCAAiC,CAAA;AAC1E,eAAO,MAAM,0BAA0B,EAAE,0BAA8D,CAAA;AAEvG,MAAM,MAAM,oBAAoB,GAAG,QAAQ,CAAC;IAC1C,MAAM,EAAE,0BAA0B,CAAA;CACnC,CAAC,CAAA"}