@xyo-network/bridge-abstract 2.110.9 → 2.110.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 (42) hide show
  1. package/dist/browser/AbstractBridge.d.cts +1 -1
  2. package/dist/browser/AbstractBridge.d.cts.map +1 -1
  3. package/dist/browser/AbstractBridge.d.mts +1 -1
  4. package/dist/browser/AbstractBridge.d.mts.map +1 -1
  5. package/dist/browser/AbstractBridge.d.ts +1 -1
  6. package/dist/browser/AbstractBridge.d.ts.map +1 -1
  7. package/dist/browser/AbstractModuleProxy/ModuleProxyResolver.d.cts.map +1 -1
  8. package/dist/browser/AbstractModuleProxy/ModuleProxyResolver.d.mts.map +1 -1
  9. package/dist/browser/AbstractModuleProxy/ModuleProxyResolver.d.ts.map +1 -1
  10. package/dist/browser/index.cjs +8 -9
  11. package/dist/browser/index.cjs.map +1 -1
  12. package/dist/browser/index.js +8 -9
  13. package/dist/browser/index.js.map +1 -1
  14. package/dist/neutral/AbstractBridge.d.cts +1 -1
  15. package/dist/neutral/AbstractBridge.d.cts.map +1 -1
  16. package/dist/neutral/AbstractBridge.d.mts +1 -1
  17. package/dist/neutral/AbstractBridge.d.mts.map +1 -1
  18. package/dist/neutral/AbstractBridge.d.ts +1 -1
  19. package/dist/neutral/AbstractBridge.d.ts.map +1 -1
  20. package/dist/neutral/AbstractModuleProxy/ModuleProxyResolver.d.cts.map +1 -1
  21. package/dist/neutral/AbstractModuleProxy/ModuleProxyResolver.d.mts.map +1 -1
  22. package/dist/neutral/AbstractModuleProxy/ModuleProxyResolver.d.ts.map +1 -1
  23. package/dist/neutral/index.cjs +8 -9
  24. package/dist/neutral/index.cjs.map +1 -1
  25. package/dist/neutral/index.js +8 -9
  26. package/dist/neutral/index.js.map +1 -1
  27. package/dist/node/AbstractBridge.d.cts +1 -1
  28. package/dist/node/AbstractBridge.d.cts.map +1 -1
  29. package/dist/node/AbstractBridge.d.mts +1 -1
  30. package/dist/node/AbstractBridge.d.mts.map +1 -1
  31. package/dist/node/AbstractBridge.d.ts +1 -1
  32. package/dist/node/AbstractBridge.d.ts.map +1 -1
  33. package/dist/node/AbstractModuleProxy/ModuleProxyResolver.d.cts.map +1 -1
  34. package/dist/node/AbstractModuleProxy/ModuleProxyResolver.d.mts.map +1 -1
  35. package/dist/node/AbstractModuleProxy/ModuleProxyResolver.d.ts.map +1 -1
  36. package/dist/node/index.cjs +8 -9
  37. package/dist/node/index.cjs.map +1 -1
  38. package/dist/node/index.js +8 -9
  39. package/dist/node/index.js.map +1 -1
  40. package/package.json +33 -33
  41. package/src/AbstractBridge.ts +8 -8
  42. package/src/AbstractModuleProxy/ModuleProxyResolver.ts +1 -2
@@ -23,7 +23,7 @@ export declare abstract class AbstractBridge<TParams extends BridgeParams = Brid
23
23
  resolve<T extends ModuleInstance = ModuleInstance>(id: ModuleIdentifier, options?: ModuleFilterOptions<T>): Promise<T | undefined>;
24
24
  resolve<T extends ModuleInstance = ModuleInstance>(filter?: ModuleFilter, options?: ModuleFilterOptions<T>): Promise<T[]>;
25
25
  startHandler(): Promise<boolean>;
26
- unexpose(id: ModuleIdentifier, options?: BridgeUnexposeOptions | undefined): Promise<ModuleInstance[]>;
26
+ unexpose(id: ModuleIdentifier, options?: BridgeUnexposeOptions | undefined): Promise<Address[]>;
27
27
  protected queryHandler<T extends QueryBoundWitness = QueryBoundWitness>(query: T, payloads?: Payload[]): Promise<ModuleQueryHandlerResult>;
28
28
  protected resolveArchivingArchivists(): Promise<ArchivistInstance[]>;
29
29
  abstract exposeHandler(address: Address, options?: BridgeExposeOptions | undefined): Promisable<ModuleInstance[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractBridge.d.ts","sourceRoot":"","sources":["../../src/AbstractBridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AbstractBridge.d.ts","sourceRoot":"","sources":["../../src/AbstractBridge.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,7 @@ export declare abstract class AbstractBridge<TParams extends BridgeParams = Brid
23
23
  resolve<T extends ModuleInstance = ModuleInstance>(id: ModuleIdentifier, options?: ModuleFilterOptions<T>): Promise<T | undefined>;
24
24
  resolve<T extends ModuleInstance = ModuleInstance>(filter?: ModuleFilter, options?: ModuleFilterOptions<T>): Promise<T[]>;
25
25
  startHandler(): Promise<boolean>;
26
- unexpose(id: ModuleIdentifier, options?: BridgeUnexposeOptions | undefined): Promise<ModuleInstance[]>;
26
+ unexpose(id: ModuleIdentifier, options?: BridgeUnexposeOptions | undefined): Promise<Address[]>;
27
27
  protected queryHandler<T extends QueryBoundWitness = QueryBoundWitness>(query: T, payloads?: Payload[]): Promise<ModuleQueryHandlerResult>;
28
28
  protected resolveArchivingArchivists(): Promise<ArchivistInstance[]>;
29
29
  abstract exposeHandler(address: Address, options?: BridgeExposeOptions | undefined): Promisable<ModuleInstance[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractBridge.d.ts","sourceRoot":"","sources":["../../src/AbstractBridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AbstractBridge.d.ts","sourceRoot":"","sources":["../../src/AbstractBridge.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,7 @@ export declare abstract class AbstractBridge<TParams extends BridgeParams = Brid
23
23
  resolve<T extends ModuleInstance = ModuleInstance>(id: ModuleIdentifier, options?: ModuleFilterOptions<T>): Promise<T | undefined>;
24
24
  resolve<T extends ModuleInstance = ModuleInstance>(filter?: ModuleFilter, options?: ModuleFilterOptions<T>): Promise<T[]>;
25
25
  startHandler(): Promise<boolean>;
26
- unexpose(id: ModuleIdentifier, options?: BridgeUnexposeOptions | undefined): Promise<ModuleInstance[]>;
26
+ unexpose(id: ModuleIdentifier, options?: BridgeUnexposeOptions | undefined): Promise<Address[]>;
27
27
  protected queryHandler<T extends QueryBoundWitness = QueryBoundWitness>(query: T, payloads?: Payload[]): Promise<ModuleQueryHandlerResult>;
28
28
  protected resolveArchivingArchivists(): Promise<ArchivistInstance[]>;
29
29
  abstract exposeHandler(address: Address, options?: BridgeExposeOptions | undefined): Promisable<ModuleInstance[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractBridge.d.ts","sourceRoot":"","sources":["../../src/AbstractBridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AbstractBridge.d.ts","sourceRoot":"","sources":["../../src/AbstractBridge.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ModuleProxyResolver.d.ts","sourceRoot":"","sources":["../../../src/AbstractModuleProxy/ModuleProxyResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ModuleProxyResolver.d.ts","sourceRoot":"","sources":["../../../src/AbstractModuleProxy/ModuleProxyResolver.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ModuleProxyResolver.d.ts","sourceRoot":"","sources":["../../../src/AbstractModuleProxy/ModuleProxyResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ModuleProxyResolver.d.ts","sourceRoot":"","sources":["../../../src/AbstractModuleProxy/ModuleProxyResolver.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ModuleProxyResolver.d.ts","sourceRoot":"","sources":["../../../src/AbstractModuleProxy/ModuleProxyResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ModuleProxyResolver.d.ts","sourceRoot":"","sources":["../../../src/AbstractModuleProxy/ModuleProxyResolver.ts"],"names":[],"mappings":"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"}
@@ -149,7 +149,7 @@ var AbstractBridge = class _AbstractBridge extends import_module_abstract.Abstra
149
149
  mod: this,
150
150
  modules
151
151
  });
152
- return modules;
152
+ return modules.map((mod) => mod.address);
153
153
  }
154
154
  async queryHandler(query, payloads) {
155
155
  const wrapper = await import_boundwitness_wrapper.QueryBoundWitnessWrapper.parseQuery(query, payloads);
@@ -162,13 +162,13 @@ var AbstractBridge = class _AbstractBridge extends import_module_abstract.Abstra
162
162
  await Promise.all(filterPayloads.map(async (filter) => {
163
163
  const { id, ...options } = filter;
164
164
  const modules = await this.expose(id, options);
165
- modules.map((mod) => {
165
+ for (const mod of modules) {
166
166
  const addressPayload = {
167
167
  address: mod.address,
168
168
  schema: import_module_model.AddressSchema
169
169
  };
170
170
  resultPayloads.push(addressPayload);
171
- });
171
+ }
172
172
  }));
173
173
  break;
174
174
  }
@@ -177,14 +177,14 @@ var AbstractBridge = class _AbstractBridge extends import_module_abstract.Abstra
177
177
  (0, import_assert.assertEx)(filterPayloads, () => "At least one filter is required");
178
178
  await Promise.all(filterPayloads.map(async (filter) => {
179
179
  const { id, ...options } = filter;
180
- const modules = await this.unexpose(id, options);
181
- modules.map((mod) => {
180
+ const moduleAddresses = await this.unexpose(id, options);
181
+ for (const address of moduleAddresses) {
182
182
  const addressPayload = {
183
- address: mod.address,
183
+ address,
184
184
  schema: import_module_model.AddressSchema
185
185
  };
186
186
  resultPayloads.push(addressPayload);
187
- });
187
+ }
188
188
  }));
189
189
  break;
190
190
  }
@@ -356,8 +356,7 @@ var ModuleProxyResolver = class {
356
356
  } else {
357
357
  const filter = idOrFilter;
358
358
  if ((0, import_module_model3.isAddressModuleFilter)(filter)) {
359
- const results = (await Promise.all(filter.address.map((item) => this.resolve(item, options)))).filter(import_exists2.exists);
360
- return results;
359
+ return (await Promise.all(filter.address.map((item) => this.resolve(item, options)))).filter(import_exists2.exists);
361
360
  } else if ((0, import_module_model3.isNameModuleFilter)(filter)) {
362
361
  return (await Promise.all(filter.name.map((item) => this.resolve(item, options)))).filter(import_exists2.exists);
363
362
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts","../../src/AbstractBridge.ts","../../src/AbstractBridgeModuleResolver.ts","../../src/AbstractModuleProxy/AbstractModuleProxy.ts","../../src/AbstractModuleProxy/ModuleProxyResolver.ts","../../src/wrapModuleWithType.ts"],"sourcesContent":["export * from './AbstractBridge.js'\nexport * from './AbstractBridgeModuleResolver.js'\nexport * from './AbstractModuleProxy/index.js'\nexport * from './wrapModuleWithType.js'\n","import { assertEx } from '@xylabs/assert'\nimport { exists } from '@xylabs/exists'\nimport { forget } from '@xylabs/forget'\nimport { Address } from '@xylabs/hex'\nimport { globallyUnique } from '@xylabs/object'\nimport { Promisable } from '@xylabs/promise'\nimport { ArchivistInstance, asArchivistInstance } from '@xyo-network/archivist-model'\nimport { QueryBoundWitness } from '@xyo-network/boundwitness-model'\nimport { QueryBoundWitnessWrapper } from '@xyo-network/boundwitness-wrapper'\nimport {\n AttachableBridgeInstance,\n BridgeConfigSchema,\n BridgeConnectQuerySchema,\n BridgeDisconnectQuerySchema,\n BridgeExposeOptions,\n BridgeExposeQuerySchema,\n BridgeModuleEventData,\n BridgeParams,\n BridgeQueries,\n BridgeUnexposeOptions,\n BridgeUnexposeQuerySchema,\n ModuleFilterPayload,\n ModuleFilterPayloadSchema,\n} from '@xyo-network/bridge-model'\nimport { AbstractModuleInstance } from '@xyo-network/module-abstract'\nimport {\n AddressPayload,\n AddressSchema,\n isAddressModuleFilter,\n isNameModuleFilter,\n ModuleFilter,\n ModuleFilterOptions,\n ModuleIdentifier,\n ModuleInstance,\n ModuleQueryHandlerResult,\n ModuleResolverInstance,\n resolveAddressToInstance,\n resolvePathToAddress,\n transformModuleIdentifier,\n} from '@xyo-network/module-model'\nimport { isPayloadOfSchemaType, Payload, Schema } from '@xyo-network/payload-model'\n\nexport abstract class AbstractBridge<TParams extends BridgeParams = BridgeParams>\n extends AbstractModuleInstance<TParams, BridgeModuleEventData>\n implements AttachableBridgeInstance<TParams, BridgeModuleEventData>\n{\n static override readonly configSchemas: Schema[] = [...super.configSchemas, BridgeConfigSchema]\n static override readonly defaultConfigSchema: Schema = BridgeConfigSchema\n static override readonly uniqueName = globallyUnique('AbstractBridge', AbstractBridge, 'xyo')\n\n protected _roots?: ModuleInstance[]\n\n override get allowNameResolution() {\n //we default to false here to prevent name collisions\n return this.params.allowNameResolution ?? true\n }\n\n get discoverRoots() {\n return this.config.client?.discoverRoots ?? this.config.discoverRoots ?? (this.config.client === undefined ? false : 'start')\n }\n\n override get queries(): string[] {\n return [BridgeConnectQuerySchema, BridgeDisconnectQuerySchema, BridgeExposeQuerySchema, BridgeUnexposeQuerySchema, ...super.queries]\n }\n\n get resolver(): Promisable<ModuleResolverInstance> {\n return assertEx(this.params.resolver, () => 'No resolver provided')\n }\n\n async expose(id: ModuleIdentifier, options?: BridgeExposeOptions | undefined): Promise<ModuleInstance[]> {\n this._noOverride('expose')\n assertEx(id !== '*', () => \"Exposing '*' not supported\")\n const addressToExpose = assertEx(await resolvePathToAddress(this, id), () => `Module to expose not found [${id}]`)\n console.log(`expose: ${addressToExpose}`)\n const modules = await this.exposeHandler(addressToExpose, options)\n await this.emit('exposed', { mod: this, modules })\n return modules\n }\n\n async exposed(): Promise<Address[]> {\n this._noOverride('exposed')\n return await this.exposedHandler()\n }\n\n /** @deprecated do not pass undefined. If trying to get all, pass '*' */\n override async resolve(): Promise<ModuleInstance[]>\n override async resolve<T extends ModuleInstance = ModuleInstance>(all: '*', options?: ModuleFilterOptions<T>): Promise<T[]>\n override async resolve<T extends ModuleInstance = ModuleInstance>(filter: ModuleFilter, options?: ModuleFilterOptions<T>): Promise<T[]>\n override async resolve<T extends ModuleInstance = ModuleInstance>(id: ModuleIdentifier, options?: ModuleFilterOptions<T>): Promise<T | undefined>\n /** @deprecated use '*' if trying to resolve all */\n override async resolve<T extends ModuleInstance = ModuleInstance>(filter?: ModuleFilter, options?: ModuleFilterOptions<T>): Promise<T[]>\n // eslint-disable-next-line complexity\n override async resolve<T extends ModuleInstance = ModuleInstance>(\n idOrFilter: ModuleFilter<T> | ModuleIdentifier = '*',\n options: ModuleFilterOptions<T> = {},\n ): Promise<T | T[] | undefined> {\n const roots = (this._roots ?? []) as T[]\n const workingSet = (options.direction === 'up' ? [this as ModuleInstance] : [...roots, this]) as T[]\n if (idOrFilter === '*') {\n const remainingDepth = (options.maxDepth ?? 5) - 1\n return remainingDepth <= 0 ? workingSet : (\n [...workingSet, ...(await Promise.all(roots.map((mod) => mod.resolve('*', { ...options, maxDepth: remainingDepth })))).flat()]\n )\n }\n switch (typeof idOrFilter) {\n case 'string': {\n const parts = idOrFilter.split(':')\n const first = assertEx(parts.shift(), () => 'Missing module identifier')\n const firstId = await transformModuleIdentifier(first, this.moduleIdentifierTransformers)\n const result = workingSet.find((mod) => {\n return firstId === mod.address || firstId === mod.modName\n })\n return parts.length === 0 ? result : result?.resolve(parts.join(':'), options)\n }\n case 'object': {\n const results: T[] = []\n if (isNameModuleFilter(idOrFilter)) {\n for (const mod of workingSet) {\n if (mod.modName && idOrFilter.name.includes(mod.modName)) results.push(mod as T)\n }\n }\n if (isAddressModuleFilter(idOrFilter)) {\n for (const mod of workingSet) {\n if (mod.modName && idOrFilter.address.includes(mod.address)) results.push(mod as T)\n }\n }\n return results\n }\n default: {\n return\n }\n }\n }\n\n override async startHandler(): Promise<boolean> {\n if (this.discoverRoots === 'lazy') {\n forget(this.getRoots())\n } else if (this.discoverRoots === 'start') {\n await this.getRoots()\n }\n return true\n }\n\n async unexpose(id: ModuleIdentifier, options?: BridgeUnexposeOptions | undefined): Promise<ModuleInstance[]> {\n this._noOverride('unexpose')\n const addressToUnexpose = assertEx(await resolvePathToAddress(this, id), () => `Module to unexpose not found [${id}]`)\n const modules = await this.unexposeHandler(addressToUnexpose, options)\n await this.emit('unexposed', { mod: this, modules })\n return modules\n }\n\n protected override async queryHandler<T extends QueryBoundWitness = QueryBoundWitness>(\n query: T,\n payloads?: Payload[],\n ): Promise<ModuleQueryHandlerResult> {\n const wrapper = await QueryBoundWitnessWrapper.parseQuery<BridgeQueries>(query, payloads)\n const queryPayload = await wrapper.getQuery()\n const resultPayloads: Payload[] = []\n\n switch (queryPayload.schema) {\n case BridgeExposeQuerySchema: {\n const filterPayloads = (payloads ?? []).filter(isPayloadOfSchemaType<ModuleFilterPayload>(ModuleFilterPayloadSchema))\n assertEx(filterPayloads, () => 'At least one filter is required')\n\n await Promise.all(\n filterPayloads.map(async (filter) => {\n const { id, ...options } = filter\n const modules = await this.expose(id, options)\n modules.map((mod) => {\n const addressPayload: AddressPayload = {\n address: mod.address,\n schema: AddressSchema,\n }\n resultPayloads.push(addressPayload)\n })\n }),\n )\n break\n }\n case BridgeUnexposeQuerySchema: {\n const filterPayloads = (payloads ?? []).filter(isPayloadOfSchemaType<ModuleFilterPayload>(ModuleFilterPayloadSchema))\n assertEx(filterPayloads, () => 'At least one filter is required')\n\n await Promise.all(\n filterPayloads.map(async (filter) => {\n const { id, ...options } = filter\n const modules = await this.unexpose(id, options)\n modules.map((mod) => {\n const addressPayload: AddressPayload = {\n address: mod.address,\n schema: AddressSchema,\n }\n resultPayloads.push(addressPayload)\n })\n }),\n )\n break\n }\n default: {\n return await super.queryHandler(query, payloads)\n }\n }\n return resultPayloads\n }\n\n protected override async resolveArchivingArchivists(): Promise<ArchivistInstance[]> {\n const archivists = this.archiving?.archivists\n if (!archivists) return []\n const resolvedAddresses = (\n await Promise.all(\n archivists.map(async (archivist) =>\n (await Promise.all((await this.parents()).map((parent) => resolvePathToAddress(parent, archivist)))).filter(exists),\n ),\n )\n )\n .flat()\n .filter(exists)\n const resolved = (await Promise.all(resolvedAddresses.map((address) => resolveAddressToInstance(this, address)))).filter(exists)\n return resolved.map((mod) => asArchivistInstance(mod)).filter(exists)\n }\n\n abstract exposeHandler(address: Address, options?: BridgeExposeOptions | undefined): Promisable<ModuleInstance[]>\n\n abstract exposedHandler(): Promisable<Address[]>\n\n abstract getRoots(force?: boolean): Promise<ModuleInstance[]>\n\n abstract unexposeHandler(address: Address, options?: BridgeUnexposeOptions | undefined): Promisable<ModuleInstance[]>\n}\n","import { AccountInstance } from '@xyo-network/account-model'\nimport { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { BridgeInstance, QuerySendFinishedEventArgs, QuerySendStartedEventArgs } from '@xyo-network/bridge-model'\nimport {\n ArchivingModuleConfig,\n CacheConfig,\n ModuleFilterOptions,\n ModuleIdentifier,\n ModuleInstance,\n ObjectResolverPriority,\n} from '@xyo-network/module-model'\nimport { CompositeModuleResolver, ModuleResolverParams } from '@xyo-network/module-resolver'\n\nimport { ModuleProxyParams } from './AbstractModuleProxy/index.js'\n\nexport interface BridgeModuleResolverParams extends ModuleResolverParams {\n additionalSigners?: AccountInstance[]\n archiving?: ArchivingModuleConfig['archiving'] & { resolveArchivists: () => Promise<ArchivistInstance[]> }\n bridge: BridgeInstance\n cacheConfig?: CacheConfig\n onQuerySendFinished?: (args: Omit<QuerySendFinishedEventArgs, 'mod'>) => void\n onQuerySendStarted?: (args: Omit<QuerySendStartedEventArgs, 'mod'>) => void\n wrapperAccount: AccountInstance\n}\n\nexport abstract class AbstractBridgeModuleResolver<\n TParams extends BridgeModuleResolverParams = BridgeModuleResolverParams,\n TProxyParams extends ModuleProxyParams = ModuleProxyParams,\n> extends CompositeModuleResolver<TParams> {\n override get priority() {\n return ObjectResolverPriority.VeryLow\n }\n override async resolveHandler<T extends ModuleInstance = ModuleInstance>(\n id: ModuleIdentifier,\n options?: ModuleFilterOptions<T>,\n _params?: Partial<TProxyParams>,\n ): Promise<T[]> {\n if (id === '*') {\n return []\n }\n return await super.resolveHandler(id, options)\n }\n}\n","import { assertEx } from '@xylabs/assert'\nimport { forget } from '@xylabs/forget'\nimport { Address, asAddress } from '@xylabs/hex'\nimport { compact } from '@xylabs/lodash'\nimport { toJsonString } from '@xylabs/object'\nimport { AccountInstance } from '@xyo-network/account-model'\nimport { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { QueryBoundWitness } from '@xyo-network/boundwitness-model'\nimport { BoundWitnessWrapper, QueryBoundWitnessWrapper } from '@xyo-network/boundwitness-wrapper'\nimport { QuerySendFinishedEventArgs, QuerySendStartedEventArgs } from '@xyo-network/bridge-model'\nimport { ModuleManifestPayload, ModuleManifestPayloadSchema, NodeManifestPayload, NodeManifestPayloadSchema } from '@xyo-network/manifest-model'\nimport { AbstractModuleInstance } from '@xyo-network/module-abstract'\nimport {\n AddressPreviousHashPayload,\n AddressPreviousHashSchema,\n ArchivingModuleConfig,\n DeadModuleError,\n Module,\n ModuleAddressQuery,\n ModuleAddressQuerySchema,\n ModuleConfigSchema,\n ModuleInstance,\n ModuleManifestQuery,\n ModuleManifestQuerySchema,\n ModuleName,\n ModuleParams,\n ModuleQueryHandlerResult,\n ModuleQueryResult,\n ModuleResolver,\n ModuleStateQuerySchema,\n} from '@xyo-network/module-model'\nimport { ModuleWrapper } from '@xyo-network/module-wrapper'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { isPayloadOfSchemaType, ModuleError, ModuleErrorSchema, Payload, WithMeta } from '@xyo-network/payload-model'\nimport { QueryPayload, QuerySchema } from '@xyo-network/query-payload-plugin'\nimport { LRUCache } from 'lru-cache'\n\nimport { ModuleProxyResolver } from './ModuleProxyResolver.js'\n\nexport type ModuleProxyParams = ModuleParams<\n {\n schema: ModuleConfigSchema\n },\n {\n account: AccountInstance\n archiving?: ArchivingModuleConfig['archiving'] & { resolveArchivists: () => Promise<ArchivistInstance[]> }\n host: ModuleResolver\n manifest?: ModuleManifestPayload\n moduleAddress: Address\n onQuerySendFinished?: (args: Omit<QuerySendFinishedEventArgs, 'mod'>) => void\n onQuerySendStarted?: (args: Omit<QuerySendStartedEventArgs, 'mod'>) => void\n state?: Payload[]\n }\n>\n\nexport abstract class AbstractModuleProxy<\n TWrappedModule extends ModuleInstance = ModuleInstance,\n TParams extends Omit<ModuleProxyParams, 'config'> & { config: TWrappedModule['config'] } = Omit<ModuleProxyParams, 'config'> & {\n config: TWrappedModule['config']\n },\n >\n extends AbstractModuleInstance<TParams, TWrappedModule['eventData']>\n implements ModuleInstance<TParams, TWrappedModule['eventData']>\n{\n static requiredQueries: string[] = [ModuleStateQuerySchema]\n\n protected _config?: ModuleInstance['config']\n protected _publicChildren?: ModuleInstance[]\n protected _state: Payload[] | undefined = undefined\n protected _stateInProcess = false\n\n private _spamTrap = new LRUCache<string, number>({ max: 1000, ttl: 1000 * 60, ttlAutopurge: true })\n\n constructor(params: TParams) {\n params.addToResolvers = false\n super(AbstractModuleProxy.privateConstructorKey, params, params.account)\n }\n\n override get address() {\n return this.params.moduleAddress\n }\n\n override get archiving(): ArchivingModuleConfig['archiving'] | undefined {\n return this.params?.archiving\n }\n\n override get config() {\n return assertEx(this._config, () => 'Config not set')\n }\n\n override get queries(): string[] {\n const queryPayloads = assertEx(this._state, () => 'Module state not found. Make sure proxy has been started').filter((item) =>\n isPayloadOfSchemaType<QueryPayload>(QuerySchema)(item),\n ) as QueryPayload[]\n return queryPayloads.map((payload) => payload.query)\n }\n\n static hasRequiredQueries(mod: Module) {\n return this.missingRequiredQueries(mod).length === 0\n }\n\n static missingRequiredQueries(mod: Module): string[] {\n const moduleQueries = mod.queries\n return compact(\n this.requiredQueries.map((query) => {\n return moduleQueries.includes(query) ? null : query\n }),\n )\n }\n\n async addressPreviousHash(): Promise<AddressPreviousHashPayload> {\n const queryPayload: ModuleAddressQuery = { schema: ModuleAddressQuerySchema }\n const result: AddressPreviousHashPayload = assertEx(\n (await this.sendQuery(queryPayload, undefined, this.account)).find(\n isPayloadOfSchemaType<AddressPreviousHashPayload>(AddressPreviousHashSchema),\n ) as WithMeta<AddressPreviousHashPayload>,\n () => 'Result did not include correct payload',\n )\n return result\n }\n\n childAddressByName(name: ModuleName): Address | undefined {\n const nodeManifests = this._state?.filter(isPayloadOfSchemaType<NodeManifestPayload>(NodeManifestPayloadSchema))\n const childPairs = nodeManifests?.flatMap((nodeManifest) => Object.entries(nodeManifest.status?.children ?? {}) as [Address, ModuleName | null][])\n return asAddress(childPairs?.find(([_, childName]) => childName === name)?.[0])\n }\n\n async childAddressMap(): Promise<Record<Address, ModuleName | null>> {\n let nodeManifests: NodeManifestPayload[] | undefined =\n isPayloadOfSchemaType<NodeManifestPayload>(NodeManifestPayloadSchema)(this.params.manifest) ? [this.params.manifest] : undefined\n const result: Record<Address, ModuleName | null> = {}\n if (nodeManifests === undefined) {\n const state = await this.state()\n nodeManifests = state.filter(isPayloadOfSchemaType<NodeManifestPayload>(NodeManifestPayloadSchema))\n }\n for (const manifest of nodeManifests ?? []) {\n const children = manifest.modules?.public ?? []\n for (const child of children) {\n if (typeof child === 'object') {\n const address = child.status?.address\n if (address) {\n result[address] = child.config.name ?? null\n }\n }\n }\n }\n return result\n }\n\n override async manifest(maxDepth?: number): Promise<ModuleManifestPayload> {\n const queryPayload: ModuleManifestQuery = { schema: ModuleManifestQuerySchema, ...(maxDepth === undefined ? {} : { maxDepth }) }\n return (await this.sendQuery(queryPayload))[0] as WithMeta<ModuleManifestPayload>\n }\n\n override async moduleAddress(): Promise<AddressPreviousHashPayload[]> {\n const queryPayload: ModuleAddressQuery = { schema: ModuleAddressQuerySchema }\n return (await this.sendQuery(queryPayload)) as WithMeta<AddressPreviousHashPayload>[]\n }\n\n override async previousHash(): Promise<string | undefined> {\n const queryPayload: ModuleAddressQuery = { schema: ModuleAddressQuerySchema }\n return ((await this.sendQuery(queryPayload)).pop() as WithMeta<AddressPreviousHashPayload>).previousHash\n }\n\n override async publicChildren() {\n this._publicChildren = this._publicChildren ?? (await super.publicChildren())\n return this._publicChildren\n }\n\n override async query<T extends QueryBoundWitness = QueryBoundWitness>(query: T, payloads?: Payload[]): Promise<ModuleQueryResult> {\n this._checkDead()\n return await this.busy(async () => {\n try {\n await this.checkSpam(query)\n if (this.archiving && this.isAllowedArchivingQuery(query.schema)) {\n forget(this.storeToArchivists([query, ...(payloads ?? [])]))\n }\n this.params.onQuerySendStarted?.({ payloads, query })\n const result = await this.proxyQueryHandler<T>(query, payloads)\n this.params.onQuerySendFinished?.({ payloads, query, result, status: 'success' })\n if (this.archiving && this.isAllowedArchivingQuery(query.schema)) {\n forget(this.storeToArchivists(result.flat()))\n }\n forget(this.emit('moduleQueried', { mod: this, payloads, query, result }))\n return result\n } catch (ex) {\n this.params.onQuerySendFinished?.({ payloads, query, status: 'failure' })\n const error = ex as Error\n this._lastError = error\n //this.status = 'dead'\n const deadError = new DeadModuleError(this.address, error)\n const errorPayload: ModuleError = {\n message: deadError.message,\n name: deadError.name,\n schema: ModuleErrorSchema,\n }\n const sourceQuery = await PayloadBuilder.build(assertEx(QueryBoundWitnessWrapper.unwrap(query), () => 'Invalid query'))\n return await this.bindQueryResult(sourceQuery, [], undefined, [errorPayload])\n }\n })\n }\n\n override queryHandler<T extends QueryBoundWitness = QueryBoundWitness>(\n _query: T,\n _payloads?: Payload[],\n _queryConfig?: TWrappedModule['params']['config'],\n ): Promise<ModuleQueryHandlerResult> {\n throw new Error('queryHandler should never be called')\n }\n\n override async queryable<T extends QueryBoundWitness = QueryBoundWitness>(\n _query: T,\n _payloads?: Payload[],\n _queryConfig?: TWrappedModule['params']['config'],\n ): Promise<boolean> {\n return await Promise.resolve(true)\n }\n\n override async resolveArchivingArchivists(): Promise<ArchivistInstance[]> {\n return (await this.params.archiving?.resolveArchivists()) ?? []\n }\n\n setConfig(config: TWrappedModule['params']['config']) {\n this._config = config\n }\n\n setState(state: Payload[]) {\n this._state = state\n }\n\n override async startHandler(): Promise<boolean> {\n let manifest: ModuleManifestPayload | undefined = this.params.manifest\n if (!manifest) {\n const state = await this.state()\n const manifestPayload = state.find(\n (payload) => isPayloadOfSchemaType(NodeManifestPayloadSchema)(payload) || isPayloadOfSchemaType(ModuleManifestPayloadSchema)(payload),\n ) as ModuleManifestPayload\n manifest = assertEx(manifestPayload, () => \"Can't find manifest payload\")\n }\n this.setConfig({ ...manifest.config })\n this.downResolver.addResolver(\n new ModuleProxyResolver({\n childAddressMap: await this.childAddressMap(),\n host: this.params.host,\n mod: this,\n moduleIdentifierTransformers: this.params.moduleIdentifierTransformers,\n }),\n )\n return await super.startHandler()\n }\n\n override async state(): Promise<Payload[]> {\n if (this._state === undefined) {\n //temporarily add ModuleStateQuerySchema to the schema list so we can wrap it and get the real query list\n const stateQueryPayload: QueryPayload = { query: ModuleStateQuerySchema, schema: QuerySchema }\n const manifestQueryPayload: QueryPayload = { query: ModuleManifestQuerySchema, schema: QuerySchema }\n this._state = [stateQueryPayload, manifestQueryPayload]\n const wrapper = ModuleWrapper.wrap(this, this.account)\n this._state = await wrapper.state()\n }\n return this._state\n }\n\n protected async filterErrors(result: ModuleQueryResult): Promise<ModuleError[]> {\n const wrapper = await BoundWitnessWrapper.wrap(result[0], result[1])\n return wrapper.payloadsBySchema<WithMeta<ModuleError>>(ModuleErrorSchema)\n }\n\n //this checks and warns if we are getting spammed by the same query\n private async checkSpam(query: QueryBoundWitness) {\n const hash = await PayloadBuilder.hash(query)\n const previousCount = this._spamTrap.get(hash) ?? 0\n if (previousCount > 0) {\n this.logger?.warn(`Spam trap triggered for query: ${hash} from ${toJsonString(query.addresses)}`)\n }\n this._spamTrap.set(hash, previousCount + 1)\n }\n\n abstract proxyQueryHandler<T extends QueryBoundWitness = QueryBoundWitness>(query: T, payloads?: Payload[]): Promise<ModuleQueryResult>\n}\n","import { assertEx } from '@xylabs/assert'\nimport { exists } from '@xylabs/exists'\nimport { Address } from '@xylabs/hex'\nimport { Promisable } from '@xylabs/promise'\nimport { Account } from '@xyo-network/account'\nimport { ModuleManifestPayload } from '@xyo-network/manifest-model'\nimport {\n isAddressModuleFilter,\n isNameModuleFilter,\n ModuleFilter,\n ModuleFilterOptions,\n ModuleIdentifier,\n ModuleIdentifierTransformer,\n ModuleInstance,\n ModuleName,\n ModuleResolver,\n ModuleResolverInstance,\n ObjectFilterOptions,\n ObjectResolverPriority,\n} from '@xyo-network/module-model'\nimport { CompositeModuleResolver } from '@xyo-network/module-resolver'\n\nimport { wrapModuleWithType } from '../wrapModuleWithType.js'\n\nexport interface ModuleProxyResolverOptions {\n childAddressMap: Record<Address, ModuleName | null>\n childManifests?: Record<Address, ModuleManifestPayload>\n childStates?: Record<Address, ModuleManifestPayload>\n host: ModuleResolver\n mod: ModuleInstance\n moduleIdentifierTransformers?: ModuleIdentifierTransformer[]\n}\n\nexport class ModuleProxyResolver<T extends ModuleProxyResolverOptions = ModuleProxyResolverOptions> implements ModuleResolverInstance {\n private downResolver: CompositeModuleResolver\n\n constructor(private options: T) {\n this.downResolver = new CompositeModuleResolver({ moduleIdentifierTransformers: options.moduleIdentifierTransformers, root: this.root })\n }\n\n get priority() {\n return ObjectResolverPriority.VeryLow\n }\n\n get root() {\n return this.options.mod\n }\n\n protected get childAddressMap() {\n return this.options.childAddressMap\n }\n\n protected get host() {\n return this.options.host\n }\n\n protected get mod() {\n return this.options.mod\n }\n\n addResolver(_resolver: ModuleResolver): this {\n throw new Error('Not supported')\n }\n\n childManifest(address: Address) {\n return this.options.childManifests?.[address]\n }\n\n childState(address: Address) {\n return this.options.childStates?.[address]\n }\n\n removeResolver(_resolver: ModuleResolver): this {\n throw new Error('Not supported')\n }\n\n /** @deprecated do not pass undefined. If trying to get all, pass '*' */\n async resolve(): Promise<ModuleInstance[]>\n async resolve<T extends ModuleInstance = ModuleInstance>(all: '*', options?: ModuleFilterOptions<T>): Promise<T[]>\n async resolve<T extends ModuleInstance = ModuleInstance>(filter: ModuleFilter<T>, options?: ModuleFilterOptions<T>): Promise<T[]>\n async resolve<T extends ModuleInstance = ModuleInstance>(id: ModuleIdentifier, options?: ModuleFilterOptions<T>): Promise<T | undefined>\n /** @deprecated use '*' if trying to resolve all */\n async resolve<T extends ModuleInstance = ModuleInstance>(filter?: ModuleFilter<T>, options?: ModuleFilterOptions<T>): Promise<T[]>\n // eslint-disable-next-line complexity\n async resolve<T extends ModuleInstance = ModuleInstance>(\n idOrFilter: ModuleFilter<T> | ModuleIdentifier = '*',\n options?: ModuleFilterOptions<T>,\n ): Promise<T | T[] | undefined> {\n //console.log(`childAddressMap: ${toJsonString(this.childAddressMap, 10)}`)\n const direction = options?.direction ?? 'all'\n if (idOrFilter === '*') {\n //get all the child addresses. if they have been resolved before, they should be in downResolver\n const childAddresses = Object.keys(this.childAddressMap)\n const resolvedChildren = await Promise.all(childAddresses.map<Promise<T | undefined>>((address) => this.resolve<T>(address, options)))\n return resolvedChildren.filter(exists)\n } else if (typeof idOrFilter === 'string') {\n const idParts = idOrFilter.split(':')\n const firstPart: ModuleIdentifier = assertEx(idParts.shift(), () => 'Invalid module identifier at first position')\n const firstPartAddress = await this.resolveIdentifier(firstPart)\n if (firstPartAddress) {\n const remainingParts = idParts.length > 0 ? idParts.join(':') : undefined\n if (direction === 'down' || direction === 'all') {\n const downResolverModule = await this.downResolver.resolve<T>(firstPartAddress)\n if (downResolverModule) {\n return remainingParts ? downResolverModule.resolve(remainingParts, options) : downResolverModule\n }\n\n console.log(`ModuleProxyResolver: ${firstPartAddress} | ${this.root.address}`)\n if (firstPartAddress === this.root.address) {\n const wrapped = wrapModuleWithType(this.root, await Account.random()) as unknown as T\n return remainingParts ? wrapped?.resolve(remainingParts, options) : wrapped\n }\n\n //if it is a known child, create a proxy\n const addressToProxy =\n Object.keys(this.childAddressMap).includes(firstPartAddress as Address) ?\n (firstPartAddress as Address)\n : (Object.entries(this.childAddressMap).find(([_, value]) => value === firstPartAddress)?.[0] as Address | undefined)\n if (addressToProxy) {\n const proxy = await this.host.resolve(addressToProxy, { ...options, direction: 'down' })\n if (proxy) {\n const wrapped = wrapModuleWithType(proxy, await Account.random()) as unknown as T\n return remainingParts ? wrapped?.resolve(remainingParts, options) : wrapped\n }\n return\n }\n }\n }\n return\n } else {\n const filter = idOrFilter\n if (isAddressModuleFilter(filter)) {\n const results = (await Promise.all(filter.address.map((item) => this.resolve(item, options)))).filter(exists)\n return results\n } else if (isNameModuleFilter(filter)) {\n return (await Promise.all(filter.name.map((item) => this.resolve(item, options)))).filter(exists)\n }\n }\n }\n\n resolveIdentifier(id: ModuleIdentifier, _options?: ObjectFilterOptions): Promisable<Address | undefined> {\n //check if any of the modules have the id as an address\n if (this.childAddressMap[id as Address]) {\n return id as Address\n }\n\n if (this.root.address === id) {\n return this.root.address\n }\n\n if (this.root.modName === id) {\n return this.root.address\n }\n\n //check if id is a name of one of modules in the resolver\n const addressFromName = Object.entries(this.childAddressMap).find(([, name]) => name === id)?.[0] as Address | undefined\n if (addressFromName) {\n return addressFromName\n }\n }\n\n async resolvePrivate<T extends ModuleInstance = ModuleInstance>(all: '*', options?: ObjectFilterOptions<T>): Promise<T[]>\n async resolvePrivate<T extends ModuleInstance = ModuleInstance>(id: ModuleIdentifier, options?: ObjectFilterOptions<T>): Promise<T | undefined>\n async resolvePrivate<T extends ModuleInstance = ModuleInstance>(\n id: ModuleIdentifier,\n _options?: ObjectFilterOptions<T>,\n ): Promise<T | T[] | undefined> {\n if (id === '*') return await Promise.resolve([])\n }\n}\n","import { AccountInstance } from '@xyo-network/account-model'\nimport { isArchivistModule } from '@xyo-network/archivist-model'\nimport { ArchivistWrapper } from '@xyo-network/archivist-wrapper'\nimport { isDivinerModule } from '@xyo-network/diviner-model'\nimport { DivinerWrapper } from '@xyo-network/diviner-wrapper'\nimport { Module } from '@xyo-network/module-model'\nimport { ModuleWrapper } from '@xyo-network/module-wrapper'\nimport { isNodeModule } from '@xyo-network/node-model'\nimport { NodeWrapper } from '@xyo-network/node-wrapper'\nimport { isSentinelModule } from '@xyo-network/sentinel-model'\nimport { SentinelWrapper } from '@xyo-network/sentinel-wrapper'\nimport { isWitnessModule } from '@xyo-network/witness-model'\nimport { WitnessWrapper } from '@xyo-network/witness-wrapper'\n\nexport const wrapModuleWithType = (mod: Module, account: AccountInstance): ModuleWrapper => {\n if (isArchivistModule(mod)) {\n return ArchivistWrapper.wrap(mod, account)\n }\n if (isDivinerModule(mod)) {\n return DivinerWrapper.wrap(mod, account)\n }\n if (isNodeModule(mod)) {\n return NodeWrapper.wrap(mod, account)\n }\n if (isSentinelModule(mod)) {\n return SentinelWrapper.wrap(mod, account)\n }\n if (isWitnessModule(mod)) {\n return WitnessWrapper.wrap(mod, account)\n }\n throw 'Failed to wrap'\n}\n"],"mappings":"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","names":["AbstractBridge","AbstractModuleInstance","configSchemas","BridgeConfigSchema","defaultConfigSchema","uniqueName","globallyUnique","_roots","allowNameResolution","params","discoverRoots","config","client","undefined","queries","BridgeConnectQuerySchema","BridgeDisconnectQuerySchema","BridgeExposeQuerySchema","BridgeUnexposeQuerySchema","resolver","assertEx","expose","id","options","_noOverride","addressToExpose","resolvePathToAddress","console","log","modules","exposeHandler","emit","mod","exposed","exposedHandler","resolve","idOrFilter","roots","workingSet","direction","remainingDepth","maxDepth","Promise","all","map","flat","parts","split","first","shift","firstId","transformModuleIdentifier","moduleIdentifierTransformers","result","find","address","modName","length","join","results","isNameModuleFilter","name","includes","push","isAddressModuleFilter","startHandler","forget","getRoots","unexpose","addressToUnexpose","unexposeHandler","queryHandler","query","payloads","wrapper","QueryBoundWitnessWrapper","parseQuery","queryPayload","getQuery","resultPayloads","schema","filterPayloads","filter","isPayloadOfSchemaType","ModuleFilterPayloadSchema","addressPayload","AddressSchema","resolveArchivingArchivists","archivists","archiving","resolvedAddresses","archivist","parents","parent","exists","resolved","resolveAddressToInstance","asArchivistInstance","import_module_model","AbstractBridgeModuleResolver","CompositeModuleResolver","priority","ObjectResolverPriority","VeryLow","resolveHandler","id","options","_params","import_assert","import_forget","import_object","import_boundwitness_wrapper","import_module_abstract","import_module_model","import_payload_model","import_assert","import_exists","import_module_model","import_module_resolver","import_archivist_model","wrapModuleWithType","mod","account","isArchivistModule","ArchivistWrapper","wrap","isDivinerModule","DivinerWrapper","isNodeModule","NodeWrapper","isSentinelModule","SentinelWrapper","isWitnessModule","WitnessWrapper","ModuleProxyResolver","downResolver","constructor","options","CompositeModuleResolver","moduleIdentifierTransformers","root","priority","ObjectResolverPriority","VeryLow","mod","childAddressMap","host","addResolver","_resolver","Error","childManifest","address","childManifests","childState","childStates","removeResolver","resolve","idOrFilter","direction","childAddresses","Object","keys","resolvedChildren","Promise","all","map","filter","exists","idParts","split","firstPart","assertEx","shift","firstPartAddress","resolveIdentifier","remainingParts","length","join","undefined","downResolverModule","console","log","wrapped","wrapModuleWithType","Account","random","addressToProxy","includes","entries","find","_","value","proxy","isAddressModuleFilter","results","item","isNameModuleFilter","name","id","_options","modName","addressFromName","resolvePrivate","AbstractModuleProxy","AbstractModuleInstance","requiredQueries","ModuleStateQuerySchema","_config","_publicChildren","_state","undefined","_stateInProcess","_spamTrap","LRUCache","max","ttl","ttlAutopurge","constructor","params","addToResolvers","privateConstructorKey","account","address","moduleAddress","archiving","config","assertEx","queries","queryPayloads","filter","item","isPayloadOfSchemaType","QuerySchema","map","payload","query","hasRequiredQueries","mod","missingRequiredQueries","length","moduleQueries","compact","includes","addressPreviousHash","queryPayload","schema","ModuleAddressQuerySchema","result","sendQuery","find","AddressPreviousHashSchema","childAddressByName","name","nodeManifests","NodeManifestPayloadSchema","childPairs","flatMap","nodeManifest","Object","entries","status","children","asAddress","_","childName","childAddressMap","manifest","state","modules","public","child","maxDepth","ModuleManifestQuerySchema","previousHash","pop","publicChildren","payloads","_checkDead","busy","checkSpam","isAllowedArchivingQuery","forget","storeToArchivists","onQuerySendStarted","proxyQueryHandler","onQuerySendFinished","flat","emit","ex","error","_lastError","deadError","DeadModuleError","errorPayload","message","ModuleErrorSchema","sourceQuery","PayloadBuilder","build","QueryBoundWitnessWrapper","unwrap","bindQueryResult","queryHandler","_query","_payloads","_queryConfig","Error","queryable","Promise","resolve","resolveArchivingArchivists","resolveArchivists","setConfig","setState","startHandler","manifestPayload","ModuleManifestPayloadSchema","downResolver","addResolver","ModuleProxyResolver","host","moduleIdentifierTransformers","stateQueryPayload","manifestQueryPayload","wrapper","ModuleWrapper","wrap","filterErrors","BoundWitnessWrapper","payloadsBySchema","hash","previousCount","get","logger","warn","toJsonString","addresses","set"]}
1
+ {"version":3,"sources":["../../src/index.ts","../../src/AbstractBridge.ts","../../src/AbstractBridgeModuleResolver.ts","../../src/AbstractModuleProxy/AbstractModuleProxy.ts","../../src/AbstractModuleProxy/ModuleProxyResolver.ts","../../src/wrapModuleWithType.ts"],"sourcesContent":["export * from './AbstractBridge.js'\nexport * from './AbstractBridgeModuleResolver.js'\nexport * from './AbstractModuleProxy/index.js'\nexport * from './wrapModuleWithType.js'\n","import { assertEx } from '@xylabs/assert'\nimport { exists } from '@xylabs/exists'\nimport { forget } from '@xylabs/forget'\nimport { Address } from '@xylabs/hex'\nimport { globallyUnique } from '@xylabs/object'\nimport { Promisable } from '@xylabs/promise'\nimport { ArchivistInstance, asArchivistInstance } from '@xyo-network/archivist-model'\nimport { QueryBoundWitness } from '@xyo-network/boundwitness-model'\nimport { QueryBoundWitnessWrapper } from '@xyo-network/boundwitness-wrapper'\nimport {\n AttachableBridgeInstance,\n BridgeConfigSchema,\n BridgeConnectQuerySchema,\n BridgeDisconnectQuerySchema,\n BridgeExposeOptions,\n BridgeExposeQuerySchema,\n BridgeModuleEventData,\n BridgeParams,\n BridgeQueries,\n BridgeUnexposeOptions,\n BridgeUnexposeQuerySchema,\n ModuleFilterPayload,\n ModuleFilterPayloadSchema,\n} from '@xyo-network/bridge-model'\nimport { AbstractModuleInstance } from '@xyo-network/module-abstract'\nimport {\n AddressPayload,\n AddressSchema,\n isAddressModuleFilter,\n isNameModuleFilter,\n ModuleFilter,\n ModuleFilterOptions,\n ModuleIdentifier,\n ModuleInstance,\n ModuleQueryHandlerResult,\n ModuleResolverInstance,\n resolveAddressToInstance,\n resolvePathToAddress,\n transformModuleIdentifier,\n} from '@xyo-network/module-model'\nimport { isPayloadOfSchemaType, Payload, Schema } from '@xyo-network/payload-model'\n\nexport abstract class AbstractBridge<TParams extends BridgeParams = BridgeParams>\n extends AbstractModuleInstance<TParams, BridgeModuleEventData>\n implements AttachableBridgeInstance<TParams, BridgeModuleEventData>\n{\n static override readonly configSchemas: Schema[] = [...super.configSchemas, BridgeConfigSchema]\n static override readonly defaultConfigSchema: Schema = BridgeConfigSchema\n static override readonly uniqueName = globallyUnique('AbstractBridge', AbstractBridge, 'xyo')\n\n protected _roots?: ModuleInstance[]\n\n override get allowNameResolution() {\n //we default to false here to prevent name collisions\n return this.params.allowNameResolution ?? true\n }\n\n get discoverRoots() {\n return this.config.client?.discoverRoots ?? this.config.discoverRoots ?? (this.config.client === undefined ? false : 'start')\n }\n\n override get queries(): string[] {\n return [BridgeConnectQuerySchema, BridgeDisconnectQuerySchema, BridgeExposeQuerySchema, BridgeUnexposeQuerySchema, ...super.queries]\n }\n\n get resolver(): Promisable<ModuleResolverInstance> {\n return assertEx(this.params.resolver, () => 'No resolver provided')\n }\n\n async expose(id: ModuleIdentifier, options?: BridgeExposeOptions | undefined): Promise<ModuleInstance[]> {\n this._noOverride('expose')\n assertEx(id !== '*', () => \"Exposing '*' not supported\")\n const addressToExpose = assertEx(await resolvePathToAddress(this, id), () => `Module to expose not found [${id}]`)\n console.log(`expose: ${addressToExpose}`)\n const modules = await this.exposeHandler(addressToExpose, options)\n await this.emit('exposed', { mod: this, modules })\n return modules\n }\n\n async exposed(): Promise<Address[]> {\n this._noOverride('exposed')\n return await this.exposedHandler()\n }\n\n /** @deprecated do not pass undefined. If trying to get all, pass '*' */\n override async resolve(): Promise<ModuleInstance[]>\n override async resolve<T extends ModuleInstance = ModuleInstance>(all: '*', options?: ModuleFilterOptions<T>): Promise<T[]>\n override async resolve<T extends ModuleInstance = ModuleInstance>(filter: ModuleFilter, options?: ModuleFilterOptions<T>): Promise<T[]>\n override async resolve<T extends ModuleInstance = ModuleInstance>(id: ModuleIdentifier, options?: ModuleFilterOptions<T>): Promise<T | undefined>\n /** @deprecated use '*' if trying to resolve all */\n override async resolve<T extends ModuleInstance = ModuleInstance>(filter?: ModuleFilter, options?: ModuleFilterOptions<T>): Promise<T[]>\n // eslint-disable-next-line complexity\n override async resolve<T extends ModuleInstance = ModuleInstance>(\n idOrFilter: ModuleFilter<T> | ModuleIdentifier = '*',\n options: ModuleFilterOptions<T> = {},\n ): Promise<T | T[] | undefined> {\n const roots = (this._roots ?? []) as T[]\n const workingSet = (options.direction === 'up' ? [this as ModuleInstance] : [...roots, this]) as T[]\n if (idOrFilter === '*') {\n const remainingDepth = (options.maxDepth ?? 5) - 1\n return remainingDepth <= 0 ? workingSet : (\n [...workingSet, ...(await Promise.all(roots.map((mod) => mod.resolve('*', { ...options, maxDepth: remainingDepth })))).flat()]\n )\n }\n switch (typeof idOrFilter) {\n case 'string': {\n const parts = idOrFilter.split(':')\n const first = assertEx(parts.shift(), () => 'Missing module identifier')\n const firstId = await transformModuleIdentifier(first, this.moduleIdentifierTransformers)\n const result = workingSet.find((mod) => {\n return firstId === mod.address || firstId === mod.modName\n })\n return parts.length === 0 ? result : result?.resolve(parts.join(':'), options)\n }\n case 'object': {\n const results: T[] = []\n if (isNameModuleFilter(idOrFilter)) {\n for (const mod of workingSet) {\n if (mod.modName && idOrFilter.name.includes(mod.modName)) results.push(mod as T)\n }\n }\n if (isAddressModuleFilter(idOrFilter)) {\n for (const mod of workingSet) {\n if (mod.modName && idOrFilter.address.includes(mod.address)) results.push(mod as T)\n }\n }\n return results\n }\n default: {\n return\n }\n }\n }\n\n override async startHandler(): Promise<boolean> {\n if (this.discoverRoots === 'lazy') {\n forget(this.getRoots())\n } else if (this.discoverRoots === 'start') {\n await this.getRoots()\n }\n return true\n }\n\n async unexpose(id: ModuleIdentifier, options?: BridgeUnexposeOptions | undefined): Promise<Address[]> {\n this._noOverride('unexpose')\n const addressToUnexpose = assertEx(await resolvePathToAddress(this, id), () => `Module to unexpose not found [${id}]`)\n const modules = await this.unexposeHandler(addressToUnexpose, options)\n await this.emit('unexposed', { mod: this, modules })\n return modules.map((mod) => mod.address)\n }\n\n protected override async queryHandler<T extends QueryBoundWitness = QueryBoundWitness>(\n query: T,\n payloads?: Payload[],\n ): Promise<ModuleQueryHandlerResult> {\n const wrapper = await QueryBoundWitnessWrapper.parseQuery<BridgeQueries>(query, payloads)\n const queryPayload = await wrapper.getQuery()\n const resultPayloads: Payload[] = []\n\n switch (queryPayload.schema) {\n case BridgeExposeQuerySchema: {\n const filterPayloads = (payloads ?? []).filter(isPayloadOfSchemaType<ModuleFilterPayload>(ModuleFilterPayloadSchema))\n assertEx(filterPayloads, () => 'At least one filter is required')\n\n await Promise.all(\n filterPayloads.map(async (filter) => {\n const { id, ...options } = filter\n const modules = await this.expose(id, options)\n for (const mod of modules) {\n const addressPayload: AddressPayload = {\n address: mod.address,\n schema: AddressSchema,\n }\n resultPayloads.push(addressPayload)\n }\n }),\n )\n break\n }\n case BridgeUnexposeQuerySchema: {\n const filterPayloads = (payloads ?? []).filter(isPayloadOfSchemaType<ModuleFilterPayload>(ModuleFilterPayloadSchema))\n assertEx(filterPayloads, () => 'At least one filter is required')\n\n await Promise.all(\n filterPayloads.map(async (filter) => {\n const { id, ...options } = filter\n const moduleAddresses = await this.unexpose(id, options)\n for (const address of moduleAddresses) {\n const addressPayload: AddressPayload = {\n address,\n schema: AddressSchema,\n }\n resultPayloads.push(addressPayload)\n }\n }),\n )\n break\n }\n default: {\n return await super.queryHandler(query, payloads)\n }\n }\n return resultPayloads\n }\n\n protected override async resolveArchivingArchivists(): Promise<ArchivistInstance[]> {\n const archivists = this.archiving?.archivists\n if (!archivists) return []\n const resolvedAddresses = (\n await Promise.all(\n archivists.map(async (archivist) =>\n (await Promise.all((await this.parents()).map((parent) => resolvePathToAddress(parent, archivist)))).filter(exists),\n ),\n )\n )\n .flat()\n .filter(exists)\n const resolved = (await Promise.all(resolvedAddresses.map((address) => resolveAddressToInstance(this, address)))).filter(exists)\n return resolved.map((mod) => asArchivistInstance(mod)).filter(exists)\n }\n\n abstract exposeHandler(address: Address, options?: BridgeExposeOptions | undefined): Promisable<ModuleInstance[]>\n\n abstract exposedHandler(): Promisable<Address[]>\n\n abstract getRoots(force?: boolean): Promise<ModuleInstance[]>\n\n abstract unexposeHandler(address: Address, options?: BridgeUnexposeOptions | undefined): Promisable<ModuleInstance[]>\n}\n","import { AccountInstance } from '@xyo-network/account-model'\nimport { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { BridgeInstance, QuerySendFinishedEventArgs, QuerySendStartedEventArgs } from '@xyo-network/bridge-model'\nimport {\n ArchivingModuleConfig,\n CacheConfig,\n ModuleFilterOptions,\n ModuleIdentifier,\n ModuleInstance,\n ObjectResolverPriority,\n} from '@xyo-network/module-model'\nimport { CompositeModuleResolver, ModuleResolverParams } from '@xyo-network/module-resolver'\n\nimport { ModuleProxyParams } from './AbstractModuleProxy/index.js'\n\nexport interface BridgeModuleResolverParams extends ModuleResolverParams {\n additionalSigners?: AccountInstance[]\n archiving?: ArchivingModuleConfig['archiving'] & { resolveArchivists: () => Promise<ArchivistInstance[]> }\n bridge: BridgeInstance\n cacheConfig?: CacheConfig\n onQuerySendFinished?: (args: Omit<QuerySendFinishedEventArgs, 'mod'>) => void\n onQuerySendStarted?: (args: Omit<QuerySendStartedEventArgs, 'mod'>) => void\n wrapperAccount: AccountInstance\n}\n\nexport abstract class AbstractBridgeModuleResolver<\n TParams extends BridgeModuleResolverParams = BridgeModuleResolverParams,\n TProxyParams extends ModuleProxyParams = ModuleProxyParams,\n> extends CompositeModuleResolver<TParams> {\n override get priority() {\n return ObjectResolverPriority.VeryLow\n }\n override async resolveHandler<T extends ModuleInstance = ModuleInstance>(\n id: ModuleIdentifier,\n options?: ModuleFilterOptions<T>,\n _params?: Partial<TProxyParams>,\n ): Promise<T[]> {\n if (id === '*') {\n return []\n }\n return await super.resolveHandler(id, options)\n }\n}\n","import { assertEx } from '@xylabs/assert'\nimport { forget } from '@xylabs/forget'\nimport { Address, asAddress } from '@xylabs/hex'\nimport { compact } from '@xylabs/lodash'\nimport { toJsonString } from '@xylabs/object'\nimport { AccountInstance } from '@xyo-network/account-model'\nimport { ArchivistInstance } from '@xyo-network/archivist-model'\nimport { QueryBoundWitness } from '@xyo-network/boundwitness-model'\nimport { BoundWitnessWrapper, QueryBoundWitnessWrapper } from '@xyo-network/boundwitness-wrapper'\nimport { QuerySendFinishedEventArgs, QuerySendStartedEventArgs } from '@xyo-network/bridge-model'\nimport { ModuleManifestPayload, ModuleManifestPayloadSchema, NodeManifestPayload, NodeManifestPayloadSchema } from '@xyo-network/manifest-model'\nimport { AbstractModuleInstance } from '@xyo-network/module-abstract'\nimport {\n AddressPreviousHashPayload,\n AddressPreviousHashSchema,\n ArchivingModuleConfig,\n DeadModuleError,\n Module,\n ModuleAddressQuery,\n ModuleAddressQuerySchema,\n ModuleConfigSchema,\n ModuleInstance,\n ModuleManifestQuery,\n ModuleManifestQuerySchema,\n ModuleName,\n ModuleParams,\n ModuleQueryHandlerResult,\n ModuleQueryResult,\n ModuleResolver,\n ModuleStateQuerySchema,\n} from '@xyo-network/module-model'\nimport { ModuleWrapper } from '@xyo-network/module-wrapper'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { isPayloadOfSchemaType, ModuleError, ModuleErrorSchema, Payload, WithMeta } from '@xyo-network/payload-model'\nimport { QueryPayload, QuerySchema } from '@xyo-network/query-payload-plugin'\nimport { LRUCache } from 'lru-cache'\n\nimport { ModuleProxyResolver } from './ModuleProxyResolver.js'\n\nexport type ModuleProxyParams = ModuleParams<\n {\n schema: ModuleConfigSchema\n },\n {\n account: AccountInstance\n archiving?: ArchivingModuleConfig['archiving'] & { resolveArchivists: () => Promise<ArchivistInstance[]> }\n host: ModuleResolver\n manifest?: ModuleManifestPayload\n moduleAddress: Address\n onQuerySendFinished?: (args: Omit<QuerySendFinishedEventArgs, 'mod'>) => void\n onQuerySendStarted?: (args: Omit<QuerySendStartedEventArgs, 'mod'>) => void\n state?: Payload[]\n }\n>\n\nexport abstract class AbstractModuleProxy<\n TWrappedModule extends ModuleInstance = ModuleInstance,\n TParams extends Omit<ModuleProxyParams, 'config'> & { config: TWrappedModule['config'] } = Omit<ModuleProxyParams, 'config'> & {\n config: TWrappedModule['config']\n },\n >\n extends AbstractModuleInstance<TParams, TWrappedModule['eventData']>\n implements ModuleInstance<TParams, TWrappedModule['eventData']>\n{\n static requiredQueries: string[] = [ModuleStateQuerySchema]\n\n protected _config?: ModuleInstance['config']\n protected _publicChildren?: ModuleInstance[]\n protected _state: Payload[] | undefined = undefined\n protected _stateInProcess = false\n\n private _spamTrap = new LRUCache<string, number>({ max: 1000, ttl: 1000 * 60, ttlAutopurge: true })\n\n constructor(params: TParams) {\n params.addToResolvers = false\n super(AbstractModuleProxy.privateConstructorKey, params, params.account)\n }\n\n override get address() {\n return this.params.moduleAddress\n }\n\n override get archiving(): ArchivingModuleConfig['archiving'] | undefined {\n return this.params?.archiving\n }\n\n override get config() {\n return assertEx(this._config, () => 'Config not set')\n }\n\n override get queries(): string[] {\n const queryPayloads = assertEx(this._state, () => 'Module state not found. Make sure proxy has been started').filter((item) =>\n isPayloadOfSchemaType<QueryPayload>(QuerySchema)(item),\n ) as QueryPayload[]\n return queryPayloads.map((payload) => payload.query)\n }\n\n static hasRequiredQueries(mod: Module) {\n return this.missingRequiredQueries(mod).length === 0\n }\n\n static missingRequiredQueries(mod: Module): string[] {\n const moduleQueries = mod.queries\n return compact(\n this.requiredQueries.map((query) => {\n return moduleQueries.includes(query) ? null : query\n }),\n )\n }\n\n async addressPreviousHash(): Promise<AddressPreviousHashPayload> {\n const queryPayload: ModuleAddressQuery = { schema: ModuleAddressQuerySchema }\n const result: AddressPreviousHashPayload = assertEx(\n (await this.sendQuery(queryPayload, undefined, this.account)).find(\n isPayloadOfSchemaType<AddressPreviousHashPayload>(AddressPreviousHashSchema),\n ) as WithMeta<AddressPreviousHashPayload>,\n () => 'Result did not include correct payload',\n )\n return result\n }\n\n childAddressByName(name: ModuleName): Address | undefined {\n const nodeManifests = this._state?.filter(isPayloadOfSchemaType<NodeManifestPayload>(NodeManifestPayloadSchema))\n const childPairs = nodeManifests?.flatMap((nodeManifest) => Object.entries(nodeManifest.status?.children ?? {}) as [Address, ModuleName | null][])\n return asAddress(childPairs?.find(([_, childName]) => childName === name)?.[0])\n }\n\n async childAddressMap(): Promise<Record<Address, ModuleName | null>> {\n let nodeManifests: NodeManifestPayload[] | undefined =\n isPayloadOfSchemaType<NodeManifestPayload>(NodeManifestPayloadSchema)(this.params.manifest) ? [this.params.manifest] : undefined\n const result: Record<Address, ModuleName | null> = {}\n if (nodeManifests === undefined) {\n const state = await this.state()\n nodeManifests = state.filter(isPayloadOfSchemaType<NodeManifestPayload>(NodeManifestPayloadSchema))\n }\n for (const manifest of nodeManifests ?? []) {\n const children = manifest.modules?.public ?? []\n for (const child of children) {\n if (typeof child === 'object') {\n const address = child.status?.address\n if (address) {\n result[address] = child.config.name ?? null\n }\n }\n }\n }\n return result\n }\n\n override async manifest(maxDepth?: number): Promise<ModuleManifestPayload> {\n const queryPayload: ModuleManifestQuery = { schema: ModuleManifestQuerySchema, ...(maxDepth === undefined ? {} : { maxDepth }) }\n return (await this.sendQuery(queryPayload))[0] as WithMeta<ModuleManifestPayload>\n }\n\n override async moduleAddress(): Promise<AddressPreviousHashPayload[]> {\n const queryPayload: ModuleAddressQuery = { schema: ModuleAddressQuerySchema }\n return (await this.sendQuery(queryPayload)) as WithMeta<AddressPreviousHashPayload>[]\n }\n\n override async previousHash(): Promise<string | undefined> {\n const queryPayload: ModuleAddressQuery = { schema: ModuleAddressQuerySchema }\n return ((await this.sendQuery(queryPayload)).pop() as WithMeta<AddressPreviousHashPayload>).previousHash\n }\n\n override async publicChildren() {\n this._publicChildren = this._publicChildren ?? (await super.publicChildren())\n return this._publicChildren\n }\n\n override async query<T extends QueryBoundWitness = QueryBoundWitness>(query: T, payloads?: Payload[]): Promise<ModuleQueryResult> {\n this._checkDead()\n return await this.busy(async () => {\n try {\n await this.checkSpam(query)\n if (this.archiving && this.isAllowedArchivingQuery(query.schema)) {\n forget(this.storeToArchivists([query, ...(payloads ?? [])]))\n }\n this.params.onQuerySendStarted?.({ payloads, query })\n const result = await this.proxyQueryHandler<T>(query, payloads)\n this.params.onQuerySendFinished?.({ payloads, query, result, status: 'success' })\n if (this.archiving && this.isAllowedArchivingQuery(query.schema)) {\n forget(this.storeToArchivists(result.flat()))\n }\n forget(this.emit('moduleQueried', { mod: this, payloads, query, result }))\n return result\n } catch (ex) {\n this.params.onQuerySendFinished?.({ payloads, query, status: 'failure' })\n const error = ex as Error\n this._lastError = error\n //this.status = 'dead'\n const deadError = new DeadModuleError(this.address, error)\n const errorPayload: ModuleError = {\n message: deadError.message,\n name: deadError.name,\n schema: ModuleErrorSchema,\n }\n const sourceQuery = await PayloadBuilder.build(assertEx(QueryBoundWitnessWrapper.unwrap(query), () => 'Invalid query'))\n return await this.bindQueryResult(sourceQuery, [], undefined, [errorPayload])\n }\n })\n }\n\n override queryHandler<T extends QueryBoundWitness = QueryBoundWitness>(\n _query: T,\n _payloads?: Payload[],\n _queryConfig?: TWrappedModule['params']['config'],\n ): Promise<ModuleQueryHandlerResult> {\n throw new Error('queryHandler should never be called')\n }\n\n override async queryable<T extends QueryBoundWitness = QueryBoundWitness>(\n _query: T,\n _payloads?: Payload[],\n _queryConfig?: TWrappedModule['params']['config'],\n ): Promise<boolean> {\n return await Promise.resolve(true)\n }\n\n override async resolveArchivingArchivists(): Promise<ArchivistInstance[]> {\n return (await this.params.archiving?.resolveArchivists()) ?? []\n }\n\n setConfig(config: TWrappedModule['params']['config']) {\n this._config = config\n }\n\n setState(state: Payload[]) {\n this._state = state\n }\n\n override async startHandler(): Promise<boolean> {\n let manifest: ModuleManifestPayload | undefined = this.params.manifest\n if (!manifest) {\n const state = await this.state()\n const manifestPayload = state.find(\n (payload) => isPayloadOfSchemaType(NodeManifestPayloadSchema)(payload) || isPayloadOfSchemaType(ModuleManifestPayloadSchema)(payload),\n ) as ModuleManifestPayload\n manifest = assertEx(manifestPayload, () => \"Can't find manifest payload\")\n }\n this.setConfig({ ...manifest.config })\n this.downResolver.addResolver(\n new ModuleProxyResolver({\n childAddressMap: await this.childAddressMap(),\n host: this.params.host,\n mod: this,\n moduleIdentifierTransformers: this.params.moduleIdentifierTransformers,\n }),\n )\n return await super.startHandler()\n }\n\n override async state(): Promise<Payload[]> {\n if (this._state === undefined) {\n //temporarily add ModuleStateQuerySchema to the schema list so we can wrap it and get the real query list\n const stateQueryPayload: QueryPayload = { query: ModuleStateQuerySchema, schema: QuerySchema }\n const manifestQueryPayload: QueryPayload = { query: ModuleManifestQuerySchema, schema: QuerySchema }\n this._state = [stateQueryPayload, manifestQueryPayload]\n const wrapper = ModuleWrapper.wrap(this, this.account)\n this._state = await wrapper.state()\n }\n return this._state\n }\n\n protected async filterErrors(result: ModuleQueryResult): Promise<ModuleError[]> {\n const wrapper = await BoundWitnessWrapper.wrap(result[0], result[1])\n return wrapper.payloadsBySchema<WithMeta<ModuleError>>(ModuleErrorSchema)\n }\n\n //this checks and warns if we are getting spammed by the same query\n private async checkSpam(query: QueryBoundWitness) {\n const hash = await PayloadBuilder.hash(query)\n const previousCount = this._spamTrap.get(hash) ?? 0\n if (previousCount > 0) {\n this.logger?.warn(`Spam trap triggered for query: ${hash} from ${toJsonString(query.addresses)}`)\n }\n this._spamTrap.set(hash, previousCount + 1)\n }\n\n abstract proxyQueryHandler<T extends QueryBoundWitness = QueryBoundWitness>(query: T, payloads?: Payload[]): Promise<ModuleQueryResult>\n}\n","import { assertEx } from '@xylabs/assert'\nimport { exists } from '@xylabs/exists'\nimport { Address } from '@xylabs/hex'\nimport { Promisable } from '@xylabs/promise'\nimport { Account } from '@xyo-network/account'\nimport { ModuleManifestPayload } from '@xyo-network/manifest-model'\nimport {\n isAddressModuleFilter,\n isNameModuleFilter,\n ModuleFilter,\n ModuleFilterOptions,\n ModuleIdentifier,\n ModuleIdentifierTransformer,\n ModuleInstance,\n ModuleName,\n ModuleResolver,\n ModuleResolverInstance,\n ObjectFilterOptions,\n ObjectResolverPriority,\n} from '@xyo-network/module-model'\nimport { CompositeModuleResolver } from '@xyo-network/module-resolver'\n\nimport { wrapModuleWithType } from '../wrapModuleWithType.js'\n\nexport interface ModuleProxyResolverOptions {\n childAddressMap: Record<Address, ModuleName | null>\n childManifests?: Record<Address, ModuleManifestPayload>\n childStates?: Record<Address, ModuleManifestPayload>\n host: ModuleResolver\n mod: ModuleInstance\n moduleIdentifierTransformers?: ModuleIdentifierTransformer[]\n}\n\nexport class ModuleProxyResolver<T extends ModuleProxyResolverOptions = ModuleProxyResolverOptions> implements ModuleResolverInstance {\n private downResolver: CompositeModuleResolver\n\n constructor(private options: T) {\n this.downResolver = new CompositeModuleResolver({ moduleIdentifierTransformers: options.moduleIdentifierTransformers, root: this.root })\n }\n\n get priority() {\n return ObjectResolverPriority.VeryLow\n }\n\n get root() {\n return this.options.mod\n }\n\n protected get childAddressMap() {\n return this.options.childAddressMap\n }\n\n protected get host() {\n return this.options.host\n }\n\n protected get mod() {\n return this.options.mod\n }\n\n addResolver(_resolver: ModuleResolver): this {\n throw new Error('Not supported')\n }\n\n childManifest(address: Address) {\n return this.options.childManifests?.[address]\n }\n\n childState(address: Address) {\n return this.options.childStates?.[address]\n }\n\n removeResolver(_resolver: ModuleResolver): this {\n throw new Error('Not supported')\n }\n\n /** @deprecated do not pass undefined. If trying to get all, pass '*' */\n async resolve(): Promise<ModuleInstance[]>\n async resolve<T extends ModuleInstance = ModuleInstance>(all: '*', options?: ModuleFilterOptions<T>): Promise<T[]>\n async resolve<T extends ModuleInstance = ModuleInstance>(filter: ModuleFilter<T>, options?: ModuleFilterOptions<T>): Promise<T[]>\n async resolve<T extends ModuleInstance = ModuleInstance>(id: ModuleIdentifier, options?: ModuleFilterOptions<T>): Promise<T | undefined>\n /** @deprecated use '*' if trying to resolve all */\n async resolve<T extends ModuleInstance = ModuleInstance>(filter?: ModuleFilter<T>, options?: ModuleFilterOptions<T>): Promise<T[]>\n // eslint-disable-next-line complexity\n async resolve<T extends ModuleInstance = ModuleInstance>(\n idOrFilter: ModuleFilter<T> | ModuleIdentifier = '*',\n options?: ModuleFilterOptions<T>,\n ): Promise<T | T[] | undefined> {\n //console.log(`childAddressMap: ${toJsonString(this.childAddressMap, 10)}`)\n const direction = options?.direction ?? 'all'\n if (idOrFilter === '*') {\n //get all the child addresses. if they have been resolved before, they should be in downResolver\n const childAddresses = Object.keys(this.childAddressMap)\n const resolvedChildren = await Promise.all(childAddresses.map<Promise<T | undefined>>((address) => this.resolve<T>(address, options)))\n return resolvedChildren.filter(exists)\n } else if (typeof idOrFilter === 'string') {\n const idParts = idOrFilter.split(':')\n const firstPart: ModuleIdentifier = assertEx(idParts.shift(), () => 'Invalid module identifier at first position')\n const firstPartAddress = await this.resolveIdentifier(firstPart)\n if (firstPartAddress) {\n const remainingParts = idParts.length > 0 ? idParts.join(':') : undefined\n if (direction === 'down' || direction === 'all') {\n const downResolverModule = await this.downResolver.resolve<T>(firstPartAddress)\n if (downResolverModule) {\n return remainingParts ? downResolverModule.resolve(remainingParts, options) : downResolverModule\n }\n\n console.log(`ModuleProxyResolver: ${firstPartAddress} | ${this.root.address}`)\n if (firstPartAddress === this.root.address) {\n const wrapped = wrapModuleWithType(this.root, await Account.random()) as unknown as T\n return remainingParts ? wrapped?.resolve(remainingParts, options) : wrapped\n }\n\n //if it is a known child, create a proxy\n const addressToProxy =\n Object.keys(this.childAddressMap).includes(firstPartAddress as Address) ?\n (firstPartAddress as Address)\n : (Object.entries(this.childAddressMap).find(([_, value]) => value === firstPartAddress)?.[0] as Address | undefined)\n if (addressToProxy) {\n const proxy = await this.host.resolve(addressToProxy, { ...options, direction: 'down' })\n if (proxy) {\n const wrapped = wrapModuleWithType(proxy, await Account.random()) as unknown as T\n return remainingParts ? wrapped?.resolve(remainingParts, options) : wrapped\n }\n return\n }\n }\n }\n return\n } else {\n const filter = idOrFilter\n if (isAddressModuleFilter(filter)) {\n return (await Promise.all(filter.address.map((item) => this.resolve(item, options)))).filter(exists)\n } else if (isNameModuleFilter(filter)) {\n return (await Promise.all(filter.name.map((item) => this.resolve(item, options)))).filter(exists)\n }\n }\n }\n\n resolveIdentifier(id: ModuleIdentifier, _options?: ObjectFilterOptions): Promisable<Address | undefined> {\n //check if any of the modules have the id as an address\n if (this.childAddressMap[id as Address]) {\n return id as Address\n }\n\n if (this.root.address === id) {\n return this.root.address\n }\n\n if (this.root.modName === id) {\n return this.root.address\n }\n\n //check if id is a name of one of modules in the resolver\n const addressFromName = Object.entries(this.childAddressMap).find(([, name]) => name === id)?.[0] as Address | undefined\n if (addressFromName) {\n return addressFromName\n }\n }\n\n async resolvePrivate<T extends ModuleInstance = ModuleInstance>(all: '*', options?: ObjectFilterOptions<T>): Promise<T[]>\n async resolvePrivate<T extends ModuleInstance = ModuleInstance>(id: ModuleIdentifier, options?: ObjectFilterOptions<T>): Promise<T | undefined>\n async resolvePrivate<T extends ModuleInstance = ModuleInstance>(\n id: ModuleIdentifier,\n _options?: ObjectFilterOptions<T>,\n ): Promise<T | T[] | undefined> {\n if (id === '*') return await Promise.resolve([])\n }\n}\n","import { AccountInstance } from '@xyo-network/account-model'\nimport { isArchivistModule } from '@xyo-network/archivist-model'\nimport { ArchivistWrapper } from '@xyo-network/archivist-wrapper'\nimport { isDivinerModule } from '@xyo-network/diviner-model'\nimport { DivinerWrapper } from '@xyo-network/diviner-wrapper'\nimport { Module } from '@xyo-network/module-model'\nimport { ModuleWrapper } from '@xyo-network/module-wrapper'\nimport { isNodeModule } from '@xyo-network/node-model'\nimport { NodeWrapper } from '@xyo-network/node-wrapper'\nimport { isSentinelModule } from '@xyo-network/sentinel-model'\nimport { SentinelWrapper } from '@xyo-network/sentinel-wrapper'\nimport { isWitnessModule } from '@xyo-network/witness-model'\nimport { WitnessWrapper } from '@xyo-network/witness-wrapper'\n\nexport const wrapModuleWithType = (mod: Module, account: AccountInstance): ModuleWrapper => {\n if (isArchivistModule(mod)) {\n return ArchivistWrapper.wrap(mod, account)\n }\n if (isDivinerModule(mod)) {\n return DivinerWrapper.wrap(mod, account)\n }\n if (isNodeModule(mod)) {\n return NodeWrapper.wrap(mod, account)\n }\n if (isSentinelModule(mod)) {\n return SentinelWrapper.wrap(mod, account)\n }\n if (isWitnessModule(mod)) {\n return WitnessWrapper.wrap(mod, account)\n }\n throw 'Failed to wrap'\n}\n"],"mappings":"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","names":["AbstractBridge","AbstractModuleInstance","configSchemas","BridgeConfigSchema","defaultConfigSchema","uniqueName","globallyUnique","_roots","allowNameResolution","params","discoverRoots","config","client","undefined","queries","BridgeConnectQuerySchema","BridgeDisconnectQuerySchema","BridgeExposeQuerySchema","BridgeUnexposeQuerySchema","resolver","assertEx","expose","id","options","_noOverride","addressToExpose","resolvePathToAddress","console","log","modules","exposeHandler","emit","mod","exposed","exposedHandler","resolve","idOrFilter","roots","workingSet","direction","remainingDepth","maxDepth","Promise","all","map","flat","parts","split","first","shift","firstId","transformModuleIdentifier","moduleIdentifierTransformers","result","find","address","modName","length","join","results","isNameModuleFilter","name","includes","push","isAddressModuleFilter","startHandler","forget","getRoots","unexpose","addressToUnexpose","unexposeHandler","queryHandler","query","payloads","wrapper","QueryBoundWitnessWrapper","parseQuery","queryPayload","getQuery","resultPayloads","schema","filterPayloads","filter","isPayloadOfSchemaType","ModuleFilterPayloadSchema","addressPayload","AddressSchema","moduleAddresses","resolveArchivingArchivists","archivists","archiving","resolvedAddresses","archivist","parents","parent","exists","resolved","resolveAddressToInstance","asArchivistInstance","import_module_model","AbstractBridgeModuleResolver","CompositeModuleResolver","priority","ObjectResolverPriority","VeryLow","resolveHandler","id","options","_params","import_assert","import_forget","import_object","import_boundwitness_wrapper","import_module_abstract","import_module_model","import_payload_model","import_assert","import_exists","import_module_model","import_module_resolver","import_archivist_model","wrapModuleWithType","mod","account","isArchivistModule","ArchivistWrapper","wrap","isDivinerModule","DivinerWrapper","isNodeModule","NodeWrapper","isSentinelModule","SentinelWrapper","isWitnessModule","WitnessWrapper","ModuleProxyResolver","downResolver","constructor","options","CompositeModuleResolver","moduleIdentifierTransformers","root","priority","ObjectResolverPriority","VeryLow","mod","childAddressMap","host","addResolver","_resolver","Error","childManifest","address","childManifests","childState","childStates","removeResolver","resolve","idOrFilter","direction","childAddresses","Object","keys","resolvedChildren","Promise","all","map","filter","exists","idParts","split","firstPart","assertEx","shift","firstPartAddress","resolveIdentifier","remainingParts","length","join","undefined","downResolverModule","console","log","wrapped","wrapModuleWithType","Account","random","addressToProxy","includes","entries","find","_","value","proxy","isAddressModuleFilter","item","isNameModuleFilter","name","id","_options","modName","addressFromName","resolvePrivate","AbstractModuleProxy","AbstractModuleInstance","requiredQueries","ModuleStateQuerySchema","_config","_publicChildren","_state","undefined","_stateInProcess","_spamTrap","LRUCache","max","ttl","ttlAutopurge","constructor","params","addToResolvers","privateConstructorKey","account","address","moduleAddress","archiving","config","assertEx","queries","queryPayloads","filter","item","isPayloadOfSchemaType","QuerySchema","map","payload","query","hasRequiredQueries","mod","missingRequiredQueries","length","moduleQueries","compact","includes","addressPreviousHash","queryPayload","schema","ModuleAddressQuerySchema","result","sendQuery","find","AddressPreviousHashSchema","childAddressByName","name","nodeManifests","NodeManifestPayloadSchema","childPairs","flatMap","nodeManifest","Object","entries","status","children","asAddress","_","childName","childAddressMap","manifest","state","modules","public","child","maxDepth","ModuleManifestQuerySchema","previousHash","pop","publicChildren","payloads","_checkDead","busy","checkSpam","isAllowedArchivingQuery","forget","storeToArchivists","onQuerySendStarted","proxyQueryHandler","onQuerySendFinished","flat","emit","ex","error","_lastError","deadError","DeadModuleError","errorPayload","message","ModuleErrorSchema","sourceQuery","PayloadBuilder","build","QueryBoundWitnessWrapper","unwrap","bindQueryResult","queryHandler","_query","_payloads","_queryConfig","Error","queryable","Promise","resolve","resolveArchivingArchivists","resolveArchivists","setConfig","setState","startHandler","manifestPayload","ModuleManifestPayloadSchema","downResolver","addResolver","ModuleProxyResolver","host","moduleIdentifierTransformers","stateQueryPayload","manifestQueryPayload","wrapper","ModuleWrapper","wrap","filterErrors","BoundWitnessWrapper","payloadsBySchema","hash","previousCount","get","logger","warn","toJsonString","addresses","set"]}
@@ -121,7 +121,7 @@ var AbstractBridge = class _AbstractBridge extends AbstractModuleInstance {
121
121
  mod: this,
122
122
  modules
123
123
  });
124
- return modules;
124
+ return modules.map((mod) => mod.address);
125
125
  }
126
126
  async queryHandler(query, payloads) {
127
127
  const wrapper = await QueryBoundWitnessWrapper.parseQuery(query, payloads);
@@ -134,13 +134,13 @@ var AbstractBridge = class _AbstractBridge extends AbstractModuleInstance {
134
134
  await Promise.all(filterPayloads.map(async (filter) => {
135
135
  const { id, ...options } = filter;
136
136
  const modules = await this.expose(id, options);
137
- modules.map((mod) => {
137
+ for (const mod of modules) {
138
138
  const addressPayload = {
139
139
  address: mod.address,
140
140
  schema: AddressSchema
141
141
  };
142
142
  resultPayloads.push(addressPayload);
143
- });
143
+ }
144
144
  }));
145
145
  break;
146
146
  }
@@ -149,14 +149,14 @@ var AbstractBridge = class _AbstractBridge extends AbstractModuleInstance {
149
149
  assertEx(filterPayloads, () => "At least one filter is required");
150
150
  await Promise.all(filterPayloads.map(async (filter) => {
151
151
  const { id, ...options } = filter;
152
- const modules = await this.unexpose(id, options);
153
- modules.map((mod) => {
152
+ const moduleAddresses = await this.unexpose(id, options);
153
+ for (const address of moduleAddresses) {
154
154
  const addressPayload = {
155
- address: mod.address,
155
+ address,
156
156
  schema: AddressSchema
157
157
  };
158
158
  resultPayloads.push(addressPayload);
159
- });
159
+ }
160
160
  }));
161
161
  break;
162
162
  }
@@ -328,8 +328,7 @@ var ModuleProxyResolver = class {
328
328
  } else {
329
329
  const filter = idOrFilter;
330
330
  if (isAddressModuleFilter2(filter)) {
331
- const results = (await Promise.all(filter.address.map((item) => this.resolve(item, options)))).filter(exists2);
332
- return results;
331
+ return (await Promise.all(filter.address.map((item) => this.resolve(item, options)))).filter(exists2);
333
332
  } else if (isNameModuleFilter2(filter)) {
334
333
  return (await Promise.all(filter.name.map((item) => this.resolve(item, options)))).filter(exists2);
335
334
  }