@xyo-network/sdk 8.0.1 → 8.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/neutral/archivist-abstract.mjs +8 -7
- package/dist/neutral/archivist-abstract.mjs.map +2 -2
- package/dist/neutral/archivist-memory.mjs +4 -3
- package/dist/neutral/archivist-memory.mjs.map +2 -2
- package/dist/neutral/bridge-abstract.mjs +27 -29
- package/dist/neutral/bridge-abstract.mjs.map +2 -2
- package/dist/neutral/bridge-http.mjs +18 -17
- package/dist/neutral/bridge-http.mjs.map +2 -2
- package/dist/neutral/diviner-boundwitness.memory.mjs +1 -1
- package/dist/neutral/diviner-boundwitness.memory.mjs.map +2 -2
- package/dist/neutral/diviner-boundwitness.mjs +1 -1
- package/dist/neutral/diviner-boundwitness.mjs.map +2 -2
- package/dist/neutral/manifest-wrapper.mjs +10 -10
- package/dist/neutral/manifest-wrapper.mjs.map +3 -3
- package/dist/neutral/module-abstract.mjs +16 -26
- package/dist/neutral/module-abstract.mjs.map +2 -2
- package/dist/neutral/module-model.mjs +1 -2
- package/dist/neutral/module-model.mjs.map +2 -2
- package/dist/neutral/module-resolver.mjs +16 -22
- package/dist/neutral/module-resolver.mjs.map +2 -2
- package/dist/neutral/module-wrapper.mjs +2 -8
- package/dist/neutral/module-wrapper.mjs.map +2 -2
- package/dist/neutral/modules/archivist-abstract/payloadAdmission.d.ts.map +1 -1
- package/dist/neutral/modules/archivist-memory/MemoryDriver.d.ts.map +1 -1
- package/dist/neutral/modules/bridge-abstract/AbstractBridgeModuleResolver.d.ts.map +1 -1
- package/dist/neutral/modules/bridge-abstract/AbstractModuleProxy/ModuleProxyResolver.d.ts.map +1 -1
- package/dist/neutral/modules/bridge-http/HttpBridgeModuleResolver.d.ts.map +1 -1
- package/dist/neutral/modules/manifest-wrapper/Wrapper.d.ts.map +1 -1
- package/dist/neutral/modules/manifest-wrapper/WrapperEx.d.ts.map +1 -1
- package/dist/neutral/modules/module-abstract/AbstractModule.d.ts.map +1 -1
- package/dist/neutral/modules/module-abstract/AbstractModuleInstance.d.ts.map +1 -1
- package/dist/neutral/modules/module-abstract/QueryValidator/ModuleConfigQueryValidator.d.ts.map +1 -1
- package/dist/neutral/modules/module-model/CreatableModule/CreatableModuleRegistry.d.ts.map +1 -1
- package/dist/neutral/modules/module-resolver/CompositeModuleResolver.d.ts.map +1 -1
- package/dist/neutral/modules/module-resolver/ResolveHelper/resolveAll.d.ts.map +1 -1
- package/dist/neutral/modules/module-resolver/ResolveHelper/resolvePathToInstance.d.ts.map +1 -1
- package/dist/neutral/modules/module-resolver/SimpleModuleResolver.d.ts.map +1 -1
- package/dist/neutral/modules/module-wrapper/ModuleWrapper.d.ts.map +1 -1
- package/dist/neutral/modules/node-abstract/NodeHelper/attachedPrivateModules.d.ts.map +1 -1
- package/dist/neutral/modules/node-abstract/NodeHelper/attachedPublicModules.d.ts.map +1 -1
- package/dist/neutral/modules/node-view/ViewNode.d.ts.map +1 -1
- package/dist/neutral/modules/sentinel-abstract/AbstractSentinel.d.ts.map +1 -1
- package/dist/neutral/modules/sentinel-memory/MemorySentinel.d.ts.map +1 -1
- package/dist/neutral/node-abstract.mjs +8 -6
- package/dist/neutral/node-abstract.mjs.map +2 -2
- package/dist/neutral/node-view.mjs +8 -7
- package/dist/neutral/node-view.mjs.map +2 -2
- package/dist/neutral/sentinel-abstract.mjs +4 -13
- package/dist/neutral/sentinel-abstract.mjs.map +2 -2
- package/dist/neutral/sentinel-memory.mjs +8 -7
- package/dist/neutral/sentinel-memory.mjs.map +2 -2
- package/dist/node/address-payload-plugin.d.ts +1 -1
- package/dist/node/api-location-diviner.d.ts +1 -1
- package/dist/node/archivist-abstract.d.ts +1 -1
- package/dist/node/archivist-generic.d.ts +1 -1
- package/dist/node/archivist-memory.d.ts +1 -1
- package/dist/node/archivist-model.d.ts +1 -1
- package/dist/node/archivist-view.d.ts +1 -1
- package/dist/node/archivist-wrapper.d.ts +1 -1
- package/dist/node/archivist.d.ts +1 -1
- package/dist/node/boundwitness-loader.d.ts +1 -1
- package/dist/node/bridge-abstract.d.ts +1 -1
- package/dist/node/bridge-http.d.ts +1 -1
- package/dist/node/bridge-model.d.ts +1 -1
- package/dist/node/bridge-wrapper.d.ts +1 -1
- package/dist/node/bridge.d.ts +1 -1
- package/dist/node/diviner-abstract.d.ts +1 -1
- package/dist/node/diviner-boundwitness.abstract.d.ts +1 -1
- package/dist/node/diviner-boundwitness.d.ts +1 -1
- package/dist/node/diviner-boundwitness.memory.d.ts +1 -1
- package/dist/node/diviner-boundwitness.model.d.ts +1 -1
- package/dist/node/diviner-identity.d.ts +1 -1
- package/dist/node/diviner-model.d.ts +1 -1
- package/dist/node/diviner-payload-abstract.d.ts +1 -1
- package/dist/node/diviner-payload-generic.d.ts +1 -1
- package/dist/node/diviner-payload-model.d.ts +1 -1
- package/dist/node/diviner-wrapper.d.ts +1 -1
- package/dist/node/diviner.d.ts +1 -1
- package/dist/node/index.d.ts +11 -11
- package/dist/node/manifest-wrapper.d.ts +1 -1
- package/dist/node/module-abstract.d.ts +1 -1
- package/dist/node/module-event-emitter.d.ts +1 -1
- package/dist/node/module-factory-locator.d.ts +1 -1
- package/dist/node/module-model.d.ts +1 -1
- package/dist/node/module-resolver.d.ts +1 -1
- package/dist/node/module-wrapper.d.ts +1 -1
- package/dist/node/module.d.ts +1 -1
- package/dist/node/modules/archivist/abstract.d.ts +1 -1
- package/dist/node/modules/archivist/model.d.ts +1 -1
- package/dist/node/modules/archivist/wrapper.d.ts +1 -1
- package/dist/node/modules/archivist-memory/MemoryDriver.d.ts +1 -1
- package/dist/node/modules/archivist-memory/MemoryDriver.d.ts.map +1 -1
- package/dist/node/modules/bridge/model.d.ts +1 -1
- package/dist/node/modules/bridge/wrapper.d.ts +1 -1
- package/dist/node/modules/diviner/abstract.d.ts +1 -1
- package/dist/node/modules/diviner/model.d.ts +1 -1
- package/dist/node/modules/diviner/wrapper.d.ts +1 -1
- package/dist/node/modules/module/abstract.d.ts +1 -1
- package/dist/node/modules/module/model.d.ts +1 -1
- package/dist/node/modules/module/resolver.d.ts +1 -1
- package/dist/node/modules/module/wrapper.d.ts +1 -1
- package/dist/node/modules/module-resolver/ResolveHelper/traceModuleIdentifier.d.ts +1 -1
- package/dist/node/modules/node/abstract.d.ts +1 -1
- package/dist/node/modules/node/model.d.ts +1 -1
- package/dist/node/modules/node/wrapper.d.ts +1 -1
- package/dist/node/modules/node-abstract/NodeHelper/attachedPrivateModules.d.ts +2 -2
- package/dist/node/modules/node-abstract/NodeHelper/attachedPrivateModules.d.ts.map +1 -1
- package/dist/node/modules/node-abstract/NodeHelper/attachedPublicModules.d.ts +2 -2
- package/dist/node/modules/node-abstract/NodeHelper/attachedPublicModules.d.ts.map +1 -1
- package/dist/node/modules/node-memory/NodeHelper/attachToExistingNode.d.ts +2 -2
- package/dist/node/modules/node-memory/NodeHelper/attachToNewNode.d.ts +3 -3
- package/dist/node/modules/node-memory/NodeHelper/flatAttachToExistingNode.d.ts +2 -2
- package/dist/node/modules/node-memory/NodeHelper/flatAttachToNewNode.d.ts +3 -3
- package/dist/node/modules/sentinel/abstract.d.ts +1 -1
- package/dist/node/modules/sentinel/model.d.ts +1 -1
- package/dist/node/modules/sentinel/wrapper.d.ts +1 -1
- package/dist/node/modules/witness/abstract.d.ts +1 -1
- package/dist/node/modules/witness/model.d.ts +1 -1
- package/dist/node/modules/witness/wrapper.d.ts +1 -1
- package/dist/node/modules.d.ts +1 -1
- package/dist/node/node-abstract.d.ts +1 -1
- package/dist/node/node-memory.d.ts +1 -1
- package/dist/node/node-model.d.ts +1 -1
- package/dist/node/node-view.d.ts +1 -1
- package/dist/node/node-wrapper.d.ts +1 -1
- package/dist/node/node.d.ts +1 -1
- package/dist/node/payloadset-plugin.d.ts +1 -1
- package/dist/node/sentinel-abstract.d.ts +1 -1
- package/dist/node/sentinel-memory.d.ts +1 -1
- package/dist/node/sentinel-model.d.ts +1 -1
- package/dist/node/sentinel-wrapper.d.ts +1 -1
- package/dist/node/sentinel.d.ts +1 -1
- package/dist/node/witness-abstract.d.ts +1 -1
- package/dist/node/witness-adhoc.d.ts +1 -1
- package/dist/node/witness-model.d.ts +1 -1
- package/dist/node/witness-wrapper.d.ts +1 -1
- package/dist/node/witness.d.ts +1 -1
- package/package.json +8 -8
- package/dist/node/modules/address-payload-plugin/Plugin.d.ts +0 -4
- package/dist/node/modules/address-payload-plugin/Plugin.d.ts.map +0 -1
- package/dist/node/modules/address-payload-plugin/Template.d.ts +0 -3
- package/dist/node/modules/address-payload-plugin/Template.d.ts.map +0 -1
- package/dist/node/modules/address-payload-plugin/index.d.ts +0 -3
- package/dist/node/modules/address-payload-plugin/index.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/LocationDiviner/LocationDivinerApi.d.ts +0 -13
- package/dist/node/modules/api-location-diviner/LocationDiviner/LocationDivinerApi.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationHeatmapQuery/LocationHeatmapPointProperties.d.ts +0 -5
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationHeatmapQuery/LocationHeatmapPointProperties.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationHeatmapQuery/LocationHeatmapQuery.d.ts +0 -21
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationHeatmapQuery/LocationHeatmapQuery.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationHeatmapQuery/index.d.ts +0 -3
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationHeatmapQuery/index.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationQuadkeyHeatmapQuery/LocationQuadkeyHeatmapQuery.d.ts +0 -21
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationQuadkeyHeatmapQuery/LocationQuadkeyHeatmapQuery.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationQuadkeyHeatmapQuery/index.d.ts +0 -2
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationQuadkeyHeatmapQuery/index.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationQueryCreationRequest.d.ts +0 -22
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationQueryCreationRequest.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationQueryCreationResponse.d.ts +0 -5
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationQueryCreationResponse.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationQuerySchema.d.ts +0 -7
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationQuerySchema.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationTimeRangeQuery/LocationTimeRangePointProperties.d.ts +0 -8
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationTimeRangeQuery/LocationTimeRangePointProperties.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationTimeRangeQuery/LocationTimeRangeQuery.d.ts +0 -21
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationTimeRangeQuery/LocationTimeRangeQuery.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationTimeRangeQuery/index.d.ts +0 -3
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/LocationTimeRangeQuery/index.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/index.d.ts +0 -7
- package/dist/node/modules/api-location-diviner/LocationDiviner/Queries/index.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/LocationDiviner/Witnesses/CurrentLocationWitness.d.ts +0 -20
- package/dist/node/modules/api-location-diviner/LocationDiviner/Witnesses/CurrentLocationWitness.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/LocationDiviner/Witnesses/LocationWitness.d.ts +0 -28
- package/dist/node/modules/api-location-diviner/LocationDiviner/Witnesses/LocationWitness.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/LocationDiviner/Witnesses/index.d.ts +0 -3
- package/dist/node/modules/api-location-diviner/LocationDiviner/Witnesses/index.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/LocationDiviner/index.d.ts +0 -5
- package/dist/node/modules/api-location-diviner/LocationDiviner/index.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/LocationDiviner/models.d.ts +0 -5
- package/dist/node/modules/api-location-diviner/LocationDiviner/models.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/RemoteDivinerConfig.d.ts +0 -18
- package/dist/node/modules/api-location-diviner/RemoteDivinerConfig.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/RemoteDivinerError.d.ts +0 -6
- package/dist/node/modules/api-location-diviner/RemoteDivinerError.d.ts.map +0 -1
- package/dist/node/modules/api-location-diviner/index.d.ts +0 -4
- package/dist/node/modules/api-location-diviner/index.d.ts.map +0 -1
- package/dist/node/modules/archivist/index.d.ts +0 -5
- package/dist/node/modules/archivist/index.d.ts.map +0 -1
- package/dist/node/modules/archivist-abstract/AbstractArchivist.d.ts +0 -101
- package/dist/node/modules/archivist-abstract/AbstractArchivist.d.ts.map +0 -1
- package/dist/node/modules/archivist-abstract/StorageClassLabel.d.ts +0 -3
- package/dist/node/modules/archivist-abstract/StorageClassLabel.d.ts.map +0 -1
- package/dist/node/modules/archivist-abstract/index.d.ts +0 -4
- package/dist/node/modules/archivist-abstract/index.d.ts.map +0 -1
- package/dist/node/modules/archivist-abstract/payloadAdmission.d.ts +0 -13
- package/dist/node/modules/archivist-abstract/payloadAdmission.d.ts.map +0 -1
- package/dist/node/modules/archivist-generic/Archivist.d.ts +0 -29
- package/dist/node/modules/archivist-generic/Archivist.d.ts.map +0 -1
- package/dist/node/modules/archivist-generic/Config.d.ts +0 -22
- package/dist/node/modules/archivist-generic/Config.d.ts.map +0 -1
- package/dist/node/modules/archivist-generic/index.d.ts +0 -3
- package/dist/node/modules/archivist-generic/index.d.ts.map +0 -1
- package/dist/node/modules/archivist-memory/Archivist.d.ts +0 -17
- package/dist/node/modules/archivist-memory/Archivist.d.ts.map +0 -1
- package/dist/node/modules/archivist-memory/Config.d.ts +0 -22
- package/dist/node/modules/archivist-memory/Config.d.ts.map +0 -1
- package/dist/node/modules/archivist-memory/index.d.ts +0 -3
- package/dist/node/modules/archivist-memory/index.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/ArchivistDriver.d.ts +0 -12
- package/dist/node/modules/archivist-model/ArchivistDriver.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/ArchivistFunctions.d.ts +0 -20
- package/dist/node/modules/archivist-model/ArchivistFunctions.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/ArchivistSnapshot.d.ts +0 -16
- package/dist/node/modules/archivist-model/ArchivistSnapshot.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/ArchivistStats.d.ts +0 -15
- package/dist/node/modules/archivist-model/ArchivistStats.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/Config.d.ts +0 -50
- package/dist/node/modules/archivist-model/Config.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/EventData.d.ts +0 -5
- package/dist/node/modules/archivist-model/EventData.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/EventModels/Cleared.d.ts +0 -7
- package/dist/node/modules/archivist-model/EventModels/Cleared.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/EventModels/Deleted.d.ts +0 -11
- package/dist/node/modules/archivist-model/EventModels/Deleted.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/EventModels/Inserted.d.ts +0 -12
- package/dist/node/modules/archivist-model/EventModels/Inserted.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/EventModels/index.d.ts +0 -4
- package/dist/node/modules/archivist-model/EventModels/index.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/IndexDescription.d.ts +0 -34
- package/dist/node/modules/archivist-model/IndexDescription.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/Instance.d.ts +0 -30
- package/dist/node/modules/archivist-model/Instance.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/Labels.d.ts +0 -5
- package/dist/node/modules/archivist-model/Labels.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/Module.d.ts +0 -7
- package/dist/node/modules/archivist-model/Module.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/ModuleInstance.d.ts +0 -6
- package/dist/node/modules/archivist-model/ModuleInstance.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/NextOptions.d.ts +0 -11
- package/dist/node/modules/archivist-model/NextOptions.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/PayloadArchivist.d.ts +0 -18
- package/dist/node/modules/archivist-model/PayloadArchivist.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/Queries/All.d.ts +0 -15
- package/dist/node/modules/archivist-model/Queries/All.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/Queries/Clear.d.ts +0 -15
- package/dist/node/modules/archivist-model/Queries/Clear.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/Queries/Commit.d.ts +0 -15
- package/dist/node/modules/archivist-model/Queries/Commit.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/Queries/Delete.d.ts +0 -18
- package/dist/node/modules/archivist-model/Queries/Delete.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/Queries/Get.d.ts +0 -18
- package/dist/node/modules/archivist-model/Queries/Get.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/Queries/Insert.d.ts +0 -15
- package/dist/node/modules/archivist-model/Queries/Insert.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/Queries/Next.d.ts +0 -21
- package/dist/node/modules/archivist-model/Queries/Next.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/Queries/Snapshot.d.ts +0 -15
- package/dist/node/modules/archivist-model/Queries/Snapshot.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/Queries/index.d.ts +0 -20
- package/dist/node/modules/archivist-model/Queries/index.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/RawQueryFunctions.d.ts +0 -14
- package/dist/node/modules/archivist-model/RawQueryFunctions.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/attachable/AttachableInstance.d.ts +0 -13
- package/dist/node/modules/archivist-model/attachable/AttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/attachable/asAttachableInstance.d.ts +0 -2
- package/dist/node/modules/archivist-model/attachable/asAttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/attachable/index.d.ts +0 -4
- package/dist/node/modules/archivist-model/attachable/index.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/attachable/isAttachableInstance.d.ts +0 -5
- package/dist/node/modules/archivist-model/attachable/isAttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/index.d.ts +0 -18
- package/dist/node/modules/archivist-model/index.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/lib/HydratedBoundWitness.d.ts +0 -8
- package/dist/node/modules/archivist-model/lib/HydratedBoundWitness.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/lib/getBoundWitness.d.ts +0 -7
- package/dist/node/modules/archivist-model/lib/getBoundWitness.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/lib/hydrateBoundWitness.d.ts +0 -8
- package/dist/node/modules/archivist-model/lib/hydrateBoundWitness.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/lib/index.d.ts +0 -4
- package/dist/node/modules/archivist-model/lib/index.d.ts.map +0 -1
- package/dist/node/modules/archivist-model/typeChecks.d.ts +0 -12
- package/dist/node/modules/archivist-model/typeChecks.d.ts.map +0 -1
- package/dist/node/modules/archivist-view/ViewArchivist.d.ts +0 -45
- package/dist/node/modules/archivist-view/ViewArchivist.d.ts.map +0 -1
- package/dist/node/modules/archivist-view/index.d.ts +0 -2
- package/dist/node/modules/archivist-view/index.d.ts.map +0 -1
- package/dist/node/modules/archivist-wrapper/ArchivistWrapper.d.ts +0 -27
- package/dist/node/modules/archivist-wrapper/ArchivistWrapper.d.ts.map +0 -1
- package/dist/node/modules/archivist-wrapper/index.d.ts +0 -2
- package/dist/node/modules/archivist-wrapper/index.d.ts.map +0 -1
- package/dist/node/modules/boundwitness-loader/Loader.d.ts +0 -21
- package/dist/node/modules/boundwitness-loader/Loader.d.ts.map +0 -1
- package/dist/node/modules/boundwitness-loader/index.d.ts +0 -2
- package/dist/node/modules/boundwitness-loader/index.d.ts.map +0 -1
- package/dist/node/modules/bridge/index.d.ts +0 -7
- package/dist/node/modules/bridge/index.d.ts.map +0 -1
- package/dist/node/modules/bridge-abstract/AbstractBridge.d.ts +0 -31
- package/dist/node/modules/bridge-abstract/AbstractBridge.d.ts.map +0 -1
- package/dist/node/modules/bridge-abstract/AbstractBridgeModuleResolver.d.ts +0 -25
- package/dist/node/modules/bridge-abstract/AbstractBridgeModuleResolver.d.ts.map +0 -1
- package/dist/node/modules/bridge-abstract/AbstractModuleProxy/AbstractModuleProxy.d.ts +0 -61
- package/dist/node/modules/bridge-abstract/AbstractModuleProxy/AbstractModuleProxy.d.ts.map +0 -1
- package/dist/node/modules/bridge-abstract/AbstractModuleProxy/ModuleProxyResolver.d.ts +0 -39
- package/dist/node/modules/bridge-abstract/AbstractModuleProxy/ModuleProxyResolver.d.ts.map +0 -1
- package/dist/node/modules/bridge-abstract/AbstractModuleProxy/index.d.ts +0 -3
- package/dist/node/modules/bridge-abstract/AbstractModuleProxy/index.d.ts.map +0 -1
- package/dist/node/modules/bridge-abstract/index.d.ts +0 -9
- package/dist/node/modules/bridge-abstract/index.d.ts.map +0 -1
- package/dist/node/modules/bridge-abstract/wrapModuleWithType.d.ts +0 -6
- package/dist/node/modules/bridge-abstract/wrapModuleWithType.d.ts.map +0 -1
- package/dist/node/modules/bridge-http/HttpBridge.d.ts +0 -45
- package/dist/node/modules/bridge-http/HttpBridge.d.ts.map +0 -1
- package/dist/node/modules/bridge-http/HttpBridgeConfig.d.ts +0 -53
- package/dist/node/modules/bridge-http/HttpBridgeConfig.d.ts.map +0 -1
- package/dist/node/modules/bridge-http/HttpBridgeModuleResolver.d.ts +0 -27
- package/dist/node/modules/bridge-http/HttpBridgeModuleResolver.d.ts.map +0 -1
- package/dist/node/modules/bridge-http/ModuleProxy/ModuleProxy.d.ts +0 -26
- package/dist/node/modules/bridge-http/ModuleProxy/ModuleProxy.d.ts.map +0 -1
- package/dist/node/modules/bridge-http/ModuleProxy/index.d.ts +0 -3
- package/dist/node/modules/bridge-http/ModuleProxy/index.d.ts.map +0 -1
- package/dist/node/modules/bridge-http/index.d.ts +0 -5
- package/dist/node/modules/bridge-http/index.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/Config.d.ts +0 -44
- package/dist/node/modules/bridge-model/Config.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/EventData.d.ts +0 -6
- package/dist/node/modules/bridge-model/EventData.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/Events/Exposed.d.ts +0 -11
- package/dist/node/modules/bridge-model/Events/Exposed.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/Events/QueryFulfillFinished.d.ts +0 -15
- package/dist/node/modules/bridge-model/Events/QueryFulfillFinished.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/Events/QueryFulfillStarted.d.ts +0 -13
- package/dist/node/modules/bridge-model/Events/QueryFulfillStarted.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/Events/QuerySendFinished.d.ts +0 -15
- package/dist/node/modules/bridge-model/Events/QuerySendFinished.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/Events/QuerySendStarted.d.ts +0 -13
- package/dist/node/modules/bridge-model/Events/QuerySendStarted.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/Events/Unexposed.d.ts +0 -11
- package/dist/node/modules/bridge-model/Events/Unexposed.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/Events/index.d.ts +0 -7
- package/dist/node/modules/bridge-model/Events/index.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/Instance.d.ts +0 -12
- package/dist/node/modules/bridge-model/Instance.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/Module.d.ts +0 -7
- package/dist/node/modules/bridge-model/Module.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/Params.d.ts +0 -7
- package/dist/node/modules/bridge-model/Params.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/Queries/Connect.d.ts +0 -26
- package/dist/node/modules/bridge-model/Queries/Connect.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/Queries/Disconnect.d.ts +0 -26
- package/dist/node/modules/bridge-model/Queries/Disconnect.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/Queries/Expose.d.ts +0 -49
- package/dist/node/modules/bridge-model/Queries/Expose.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/Queries/Unexpose.d.ts +0 -26
- package/dist/node/modules/bridge-model/Queries/Unexpose.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/Queries/index.d.ts +0 -14
- package/dist/node/modules/bridge-model/Queries/index.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/QueryFunctions.d.ts +0 -12
- package/dist/node/modules/bridge-model/QueryFunctions.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/RawQueryFunctions.d.ts +0 -11
- package/dist/node/modules/bridge-model/RawQueryFunctions.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/attachable/AttachableInstance.d.ts +0 -16
- package/dist/node/modules/bridge-model/attachable/AttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/attachable/asAttachableInstance.d.ts +0 -3
- package/dist/node/modules/bridge-model/attachable/asAttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/attachable/index.d.ts +0 -4
- package/dist/node/modules/bridge-model/attachable/index.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/attachable/isAttachableInstance.d.ts +0 -7
- package/dist/node/modules/bridge-model/attachable/isAttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/index.d.ts +0 -13
- package/dist/node/modules/bridge-model/index.d.ts.map +0 -1
- package/dist/node/modules/bridge-model/typeChecks.d.ts +0 -21
- package/dist/node/modules/bridge-model/typeChecks.d.ts.map +0 -1
- package/dist/node/modules/bridge-wrapper/BridgeWrapper.d.ts +0 -13
- package/dist/node/modules/bridge-wrapper/BridgeWrapper.d.ts.map +0 -1
- package/dist/node/modules/bridge-wrapper/index.d.ts +0 -3
- package/dist/node/modules/bridge-wrapper/index.d.ts.map +0 -1
- package/dist/node/modules/diviner/index.d.ts +0 -4
- package/dist/node/modules/diviner/index.d.ts.map +0 -1
- package/dist/node/modules/diviner-abstract/AbstractDiviner.d.ts +0 -22
- package/dist/node/modules/diviner-abstract/AbstractDiviner.d.ts.map +0 -1
- package/dist/node/modules/diviner-abstract/index.d.ts +0 -2
- package/dist/node/modules/diviner-abstract/index.d.ts.map +0 -1
- package/dist/node/modules/diviner-boundwitness/BoundWitnessDiviner.d.ts +0 -10
- package/dist/node/modules/diviner-boundwitness/BoundWitnessDiviner.d.ts.map +0 -1
- package/dist/node/modules/diviner-boundwitness/Config.d.ts +0 -20
- package/dist/node/modules/diviner-boundwitness/Config.d.ts.map +0 -1
- package/dist/node/modules/diviner-boundwitness/MemoryBoundWitnessDiviner.d.ts +0 -52
- package/dist/node/modules/diviner-boundwitness/MemoryBoundWitnessDiviner.d.ts.map +0 -1
- package/dist/node/modules/diviner-boundwitness/Params.d.ts +0 -5
- package/dist/node/modules/diviner-boundwitness/Params.d.ts.map +0 -1
- package/dist/node/modules/diviner-boundwitness/Predicate.d.ts +0 -9
- package/dist/node/modules/diviner-boundwitness/Predicate.d.ts.map +0 -1
- package/dist/node/modules/diviner-boundwitness/Query.d.ts +0 -16
- package/dist/node/modules/diviner-boundwitness/Query.d.ts.map +0 -1
- package/dist/node/modules/diviner-boundwitness/Schema.d.ts +0 -5
- package/dist/node/modules/diviner-boundwitness/Schema.d.ts.map +0 -1
- package/dist/node/modules/diviner-boundwitness/abstract.d.ts +0 -2
- package/dist/node/modules/diviner-boundwitness/abstract.d.ts.map +0 -1
- package/dist/node/modules/diviner-boundwitness/applyBoundWitnessDivinerQueryPayload.d.ts +0 -4
- package/dist/node/modules/diviner-boundwitness/applyBoundWitnessDivinerQueryPayload.d.ts.map +0 -1
- package/dist/node/modules/diviner-boundwitness/index.d.ts +0 -4
- package/dist/node/modules/diviner-boundwitness/index.d.ts.map +0 -1
- package/dist/node/modules/diviner-boundwitness/memory.d.ts +0 -3
- package/dist/node/modules/diviner-boundwitness/memory.d.ts.map +0 -1
- package/dist/node/modules/diviner-boundwitness/model.d.ts +0 -6
- package/dist/node/modules/diviner-boundwitness/model.d.ts.map +0 -1
- package/dist/node/modules/diviner-identity/IdentityDiviner.d.ts +0 -13
- package/dist/node/modules/diviner-identity/IdentityDiviner.d.ts.map +0 -1
- package/dist/node/modules/diviner-identity/index.d.ts +0 -2
- package/dist/node/modules/diviner-identity/index.d.ts.map +0 -1
- package/dist/node/modules/diviner-model/Config.d.ts +0 -27
- package/dist/node/modules/diviner-model/Config.d.ts.map +0 -1
- package/dist/node/modules/diviner-model/DivinerQueryFunctions.d.ts +0 -9
- package/dist/node/modules/diviner-model/DivinerQueryFunctions.d.ts.map +0 -1
- package/dist/node/modules/diviner-model/EventData.d.ts +0 -5
- package/dist/node/modules/diviner-model/EventData.d.ts.map +0 -1
- package/dist/node/modules/diviner-model/EventsModels/DivineEnd.d.ts +0 -12
- package/dist/node/modules/diviner-model/EventsModels/DivineEnd.d.ts.map +0 -1
- package/dist/node/modules/diviner-model/EventsModels/DivineStart.d.ts +0 -10
- package/dist/node/modules/diviner-model/EventsModels/DivineStart.d.ts.map +0 -1
- package/dist/node/modules/diviner-model/EventsModels/index.d.ts +0 -3
- package/dist/node/modules/diviner-model/EventsModels/index.d.ts.map +0 -1
- package/dist/node/modules/diviner-model/Instance.d.ts +0 -9
- package/dist/node/modules/diviner-model/Instance.d.ts.map +0 -1
- package/dist/node/modules/diviner-model/Module.d.ts +0 -6
- package/dist/node/modules/diviner-model/Module.d.ts.map +0 -1
- package/dist/node/modules/diviner-model/Params.d.ts +0 -5
- package/dist/node/modules/diviner-model/Params.d.ts.map +0 -1
- package/dist/node/modules/diviner-model/Payload.d.ts +0 -6
- package/dist/node/modules/diviner-model/Payload.d.ts.map +0 -1
- package/dist/node/modules/diviner-model/Queries/Divine.d.ts +0 -15
- package/dist/node/modules/diviner-model/Queries/Divine.d.ts.map +0 -1
- package/dist/node/modules/diviner-model/Queries/index.d.ts +0 -6
- package/dist/node/modules/diviner-model/Queries/index.d.ts.map +0 -1
- package/dist/node/modules/diviner-model/SearchableStorage.d.ts +0 -19
- package/dist/node/modules/diviner-model/SearchableStorage.d.ts.map +0 -1
- package/dist/node/modules/diviner-model/attachable/AttachableInstance.d.ts +0 -13
- package/dist/node/modules/diviner-model/attachable/AttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/diviner-model/attachable/asAttachableInstance.d.ts +0 -2
- package/dist/node/modules/diviner-model/attachable/asAttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/diviner-model/attachable/index.d.ts +0 -4
- package/dist/node/modules/diviner-model/attachable/index.d.ts.map +0 -1
- package/dist/node/modules/diviner-model/attachable/isAttachableInstance.d.ts +0 -5
- package/dist/node/modules/diviner-model/attachable/isAttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/diviner-model/index.d.ts +0 -13
- package/dist/node/modules/diviner-model/index.d.ts.map +0 -1
- package/dist/node/modules/diviner-model/typeChecks.d.ts +0 -12
- package/dist/node/modules/diviner-model/typeChecks.d.ts.map +0 -1
- package/dist/node/modules/diviner-payload-abstract/Diviner.d.ts +0 -9
- package/dist/node/modules/diviner-payload-abstract/Diviner.d.ts.map +0 -1
- package/dist/node/modules/diviner-payload-abstract/index.d.ts +0 -2
- package/dist/node/modules/diviner-payload-abstract/index.d.ts.map +0 -1
- package/dist/node/modules/diviner-payload-generic/Diviner.d.ts +0 -48
- package/dist/node/modules/diviner-payload-generic/Diviner.d.ts.map +0 -1
- package/dist/node/modules/diviner-payload-generic/index.d.ts +0 -2
- package/dist/node/modules/diviner-payload-generic/index.d.ts.map +0 -1
- package/dist/node/modules/diviner-payload-model/Config.d.ts +0 -24
- package/dist/node/modules/diviner-payload-model/Config.d.ts.map +0 -1
- package/dist/node/modules/diviner-payload-model/Order.d.ts +0 -2
- package/dist/node/modules/diviner-payload-model/Order.d.ts.map +0 -1
- package/dist/node/modules/diviner-payload-model/Params.d.ts +0 -5
- package/dist/node/modules/diviner-payload-model/Params.d.ts.map +0 -1
- package/dist/node/modules/diviner-payload-model/Predicate.d.ts +0 -10
- package/dist/node/modules/diviner-payload-model/Predicate.d.ts.map +0 -1
- package/dist/node/modules/diviner-payload-model/Query.d.ts +0 -25
- package/dist/node/modules/diviner-payload-model/Query.d.ts.map +0 -1
- package/dist/node/modules/diviner-payload-model/Schema.d.ts +0 -5
- package/dist/node/modules/diviner-payload-model/Schema.d.ts.map +0 -1
- package/dist/node/modules/diviner-payload-model/SortDirection.d.ts +0 -3
- package/dist/node/modules/diviner-payload-model/SortDirection.d.ts.map +0 -1
- package/dist/node/modules/diviner-payload-model/index.d.ts +0 -8
- package/dist/node/modules/diviner-payload-model/index.d.ts.map +0 -1
- package/dist/node/modules/diviner-wrapper/DivinerWrapper.d.ts +0 -13
- package/dist/node/modules/diviner-wrapper/DivinerWrapper.d.ts.map +0 -1
- package/dist/node/modules/diviner-wrapper/index.d.ts +0 -2
- package/dist/node/modules/diviner-wrapper/index.d.ts.map +0 -1
- package/dist/node/modules/manifest-wrapper/Wrapper.d.ts +0 -26
- package/dist/node/modules/manifest-wrapper/Wrapper.d.ts.map +0 -1
- package/dist/node/modules/manifest-wrapper/WrapperEx.d.ts +0 -32
- package/dist/node/modules/manifest-wrapper/WrapperEx.d.ts.map +0 -1
- package/dist/node/modules/manifest-wrapper/index.d.ts +0 -3
- package/dist/node/modules/manifest-wrapper/index.d.ts.map +0 -1
- package/dist/node/modules/module/index.d.ts +0 -7
- package/dist/node/modules/module/index.d.ts.map +0 -1
- package/dist/node/modules/module-abstract/AbstractModule.d.ts +0 -119
- package/dist/node/modules/module-abstract/AbstractModule.d.ts.map +0 -1
- package/dist/node/modules/module-abstract/AbstractModuleInstance.d.ts +0 -48
- package/dist/node/modules/module-abstract/AbstractModuleInstance.d.ts.map +0 -1
- package/dist/node/modules/module-abstract/Error.d.ts +0 -13
- package/dist/node/modules/module-abstract/Error.d.ts.map +0 -1
- package/dist/node/modules/module-abstract/LoggerModuleStatusReporter.d.ts +0 -9
- package/dist/node/modules/module-abstract/LoggerModuleStatusReporter.d.ts.map +0 -1
- package/dist/node/modules/module-abstract/QueryValidator/ModuleConfigQueryValidator.d.ts +0 -16
- package/dist/node/modules/module-abstract/QueryValidator/ModuleConfigQueryValidator.d.ts.map +0 -1
- package/dist/node/modules/module-abstract/QueryValidator/QueryValidator.d.ts +0 -7
- package/dist/node/modules/module-abstract/QueryValidator/QueryValidator.d.ts.map +0 -1
- package/dist/node/modules/module-abstract/QueryValidator/SupportedQueryValidator.d.ts +0 -10
- package/dist/node/modules/module-abstract/QueryValidator/SupportedQueryValidator.d.ts.map +0 -1
- package/dist/node/modules/module-abstract/QueryValidator/index.d.ts +0 -4
- package/dist/node/modules/module-abstract/QueryValidator/index.d.ts.map +0 -1
- package/dist/node/modules/module-abstract/index.d.ts +0 -6
- package/dist/node/modules/module-abstract/index.d.ts.map +0 -1
- package/dist/node/modules/module-event-emitter/ModuleBaseEmitter.d.ts +0 -5
- package/dist/node/modules/module-event-emitter/ModuleBaseEmitter.d.ts.map +0 -1
- package/dist/node/modules/module-event-emitter/index.d.ts +0 -2
- package/dist/node/modules/module-event-emitter/index.d.ts.map +0 -1
- package/dist/node/modules/module-factory-locator/ModuleFactoryLocator.d.ts +0 -44
- package/dist/node/modules/module-factory-locator/ModuleFactoryLocator.d.ts.map +0 -1
- package/dist/node/modules/module-factory-locator/index.d.ts +0 -3
- package/dist/node/modules/module-factory-locator/index.d.ts.map +0 -1
- package/dist/node/modules/module-factory-locator/standardCreatableFactories.d.ts +0 -4
- package/dist/node/modules/module-factory-locator/standardCreatableFactories.d.ts.map +0 -1
- package/dist/node/modules/module-model/Config/Archiving.d.ts +0 -11
- package/dist/node/modules/module-model/Config/Archiving.d.ts.map +0 -1
- package/dist/node/modules/module-model/Config/Config.d.ts +0 -28
- package/dist/node/modules/module-model/Config/Config.d.ts.map +0 -1
- package/dist/node/modules/module-model/Config/Fields.d.ts +0 -24
- package/dist/node/modules/module-model/Config/Fields.d.ts.map +0 -1
- package/dist/node/modules/module-model/Config/Reentrancy.d.ts +0 -9
- package/dist/node/modules/module-model/Config/Reentrancy.d.ts.map +0 -1
- package/dist/node/modules/module-model/Config/Security.d.ts +0 -10
- package/dist/node/modules/module-model/Config/Security.d.ts.map +0 -1
- package/dist/node/modules/module-model/Config/index.d.ts +0 -6
- package/dist/node/modules/module-model/Config/index.d.ts.map +0 -1
- package/dist/node/modules/module-model/CreatableModule/CreatableModule.d.ts +0 -27
- package/dist/node/modules/module-model/CreatableModule/CreatableModule.d.ts.map +0 -1
- package/dist/node/modules/module-model/CreatableModule/CreatableModuleRegistry.d.ts +0 -12
- package/dist/node/modules/module-model/CreatableModule/CreatableModuleRegistry.d.ts.map +0 -1
- package/dist/node/modules/module-model/CreatableModule/LabeledCreatableModule.d.ts +0 -14
- package/dist/node/modules/module-model/CreatableModule/LabeledCreatableModule.d.ts.map +0 -1
- package/dist/node/modules/module-model/CreatableModule/LabeledCreatableModuleFactory.d.ts +0 -12
- package/dist/node/modules/module-model/CreatableModule/LabeledCreatableModuleFactory.d.ts.map +0 -1
- package/dist/node/modules/module-model/CreatableModule/ModuleFactory.d.ts +0 -17
- package/dist/node/modules/module-model/CreatableModule/ModuleFactory.d.ts.map +0 -1
- package/dist/node/modules/module-model/CreatableModule/index.d.ts +0 -6
- package/dist/node/modules/module-model/CreatableModule/index.d.ts.map +0 -1
- package/dist/node/modules/module-model/DetailsError.d.ts +0 -6
- package/dist/node/modules/module-model/DetailsError.d.ts.map +0 -1
- package/dist/node/modules/module-model/EventsModels/ModuleBusy.d.ts +0 -9
- package/dist/node/modules/module-model/EventsModels/ModuleBusy.d.ts.map +0 -1
- package/dist/node/modules/module-model/EventsModels/ModuleError.d.ts +0 -9
- package/dist/node/modules/module-model/EventsModels/ModuleError.d.ts.map +0 -1
- package/dist/node/modules/module-model/EventsModels/ModuleEventArgs.d.ts +0 -6
- package/dist/node/modules/module-model/EventsModels/ModuleEventArgs.d.ts.map +0 -1
- package/dist/node/modules/module-model/EventsModels/ModuleEventData.d.ts +0 -6
- package/dist/node/modules/module-model/EventsModels/ModuleEventData.d.ts.map +0 -1
- package/dist/node/modules/module-model/EventsModels/ModuleQueried.d.ts +0 -13
- package/dist/node/modules/module-model/EventsModels/ModuleQueried.d.ts.map +0 -1
- package/dist/node/modules/module-model/EventsModels/index.d.ts +0 -6
- package/dist/node/modules/module-model/EventsModels/index.d.ts.map +0 -1
- package/dist/node/modules/module-model/Job/Job.d.ts +0 -12
- package/dist/node/modules/module-model/Job/Job.d.ts.map +0 -1
- package/dist/node/modules/module-model/Job/JobProvider.d.ts +0 -5
- package/dist/node/modules/module-model/Job/JobProvider.d.ts.map +0 -1
- package/dist/node/modules/module-model/Job/JobQueue.d.ts +0 -13
- package/dist/node/modules/module-model/Job/JobQueue.d.ts.map +0 -1
- package/dist/node/modules/module-model/Job/Task.d.ts +0 -2
- package/dist/node/modules/module-model/Job/Task.d.ts.map +0 -1
- package/dist/node/modules/module-model/Job/index.d.ts +0 -4
- package/dist/node/modules/module-model/Job/index.d.ts.map +0 -1
- package/dist/node/modules/module-model/Labels/Labels.d.ts +0 -24
- package/dist/node/modules/module-model/Labels/Labels.d.ts.map +0 -1
- package/dist/node/modules/module-model/Labels/index.d.ts +0 -3
- package/dist/node/modules/module-model/Labels/index.d.ts.map +0 -1
- package/dist/node/modules/module-model/Labels/standard/View.d.ts +0 -6
- package/dist/node/modules/module-model/Labels/standard/View.d.ts.map +0 -1
- package/dist/node/modules/module-model/Labels/standard/index.d.ts +0 -2
- package/dist/node/modules/module-model/Labels/standard/index.d.ts.map +0 -1
- package/dist/node/modules/module-model/ModuleDescription.d.ts +0 -9
- package/dist/node/modules/module-model/ModuleDescription.d.ts.map +0 -1
- package/dist/node/modules/module-model/ModuleFactoryLocatorInstance.d.ts +0 -37
- package/dist/node/modules/module-model/ModuleFactoryLocatorInstance.d.ts.map +0 -1
- package/dist/node/modules/module-model/ModuleIdentifier.d.ts +0 -43
- package/dist/node/modules/module-model/ModuleIdentifier.d.ts.map +0 -1
- package/dist/node/modules/module-model/ModuleIdentifierTransformer.d.ts +0 -7
- package/dist/node/modules/module-model/ModuleIdentifierTransformer.d.ts.map +0 -1
- package/dist/node/modules/module-model/ModuleQueryHandlerResult.d.ts +0 -3
- package/dist/node/modules/module-model/ModuleQueryHandlerResult.d.ts.map +0 -1
- package/dist/node/modules/module-model/ModuleQueryResult.d.ts +0 -7
- package/dist/node/modules/module-model/ModuleQueryResult.d.ts.map +0 -1
- package/dist/node/modules/module-model/ModuleStatusReporter.d.ts +0 -4
- package/dist/node/modules/module-model/ModuleStatusReporter.d.ts.map +0 -1
- package/dist/node/modules/module-model/Payload/Address.d.ts +0 -48
- package/dist/node/modules/module-model/Payload/Address.d.ts.map +0 -1
- package/dist/node/modules/module-model/Payload/AddressPreviousHash.d.ts +0 -17
- package/dist/node/modules/module-model/Payload/AddressPreviousHash.d.ts.map +0 -1
- package/dist/node/modules/module-model/Payload/Description.d.ts +0 -15
- package/dist/node/modules/module-model/Payload/Description.d.ts.map +0 -1
- package/dist/node/modules/module-model/Payload/ModuleState.d.ts +0 -23
- package/dist/node/modules/module-model/Payload/ModuleState.d.ts.map +0 -1
- package/dist/node/modules/module-model/Payload/index.d.ts +0 -5
- package/dist/node/modules/module-model/Payload/index.d.ts.map +0 -1
- package/dist/node/modules/module-model/Queries/Manifest.d.ts +0 -17
- package/dist/node/modules/module-model/Queries/Manifest.d.ts.map +0 -1
- package/dist/node/modules/module-model/Queries/ModuleAddress/Query.d.ts +0 -15
- package/dist/node/modules/module-model/Queries/ModuleAddress/Query.d.ts.map +0 -1
- package/dist/node/modules/module-model/Queries/ModuleAddress/index.d.ts +0 -2
- package/dist/node/modules/module-model/Queries/ModuleAddress/index.d.ts.map +0 -1
- package/dist/node/modules/module-model/Queries/State.d.ts +0 -15
- package/dist/node/modules/module-model/Queries/State.d.ts.map +0 -1
- package/dist/node/modules/module-model/Queries/Subscribe.d.ts +0 -23
- package/dist/node/modules/module-model/Queries/Subscribe.d.ts.map +0 -1
- package/dist/node/modules/module-model/Queries/index.d.ts +0 -10
- package/dist/node/modules/module-model/Queries/index.d.ts.map +0 -1
- package/dist/node/modules/module-model/QueryableModule/IsQueryableModuleFactory.d.ts +0 -12
- package/dist/node/modules/module-model/QueryableModule/IsQueryableModuleFactory.d.ts.map +0 -1
- package/dist/node/modules/module-model/QueryableModule/QueryableModule.d.ts +0 -10
- package/dist/node/modules/module-model/QueryableModule/QueryableModule.d.ts.map +0 -1
- package/dist/node/modules/module-model/QueryableModule/QueryableModuleFields.d.ts +0 -22
- package/dist/node/modules/module-model/QueryableModule/QueryableModuleFields.d.ts.map +0 -1
- package/dist/node/modules/module-model/QueryableModule/QueryableModuleFunctions.d.ts +0 -15
- package/dist/node/modules/module-model/QueryableModule/QueryableModuleFunctions.d.ts.map +0 -1
- package/dist/node/modules/module-model/QueryableModule/QueryableModuleParams.d.ts +0 -19
- package/dist/node/modules/module-model/QueryableModule/QueryableModuleParams.d.ts.map +0 -1
- package/dist/node/modules/module-model/QueryableModule/asQueryableModule.d.ts +0 -9
- package/dist/node/modules/module-model/QueryableModule/asQueryableModule.d.ts.map +0 -1
- package/dist/node/modules/module-model/QueryableModule/asQueryableModuleObject.d.ts +0 -9
- package/dist/node/modules/module-model/QueryableModule/asQueryableModuleObject.d.ts.map +0 -1
- package/dist/node/modules/module-model/QueryableModule/index.d.ts +0 -10
- package/dist/node/modules/module-model/QueryableModule/index.d.ts.map +0 -1
- package/dist/node/modules/module-model/QueryableModule/isQueryableModule.d.ts +0 -10
- package/dist/node/modules/module-model/QueryableModule/isQueryableModule.d.ts.map +0 -1
- package/dist/node/modules/module-model/QueryableModule/isQueryableModuleObject.d.ts +0 -9
- package/dist/node/modules/module-model/QueryableModule/isQueryableModuleObject.d.ts.map +0 -1
- package/dist/node/modules/module-model/cache.d.ts +0 -6
- package/dist/node/modules/module-model/cache.d.ts.map +0 -1
- package/dist/node/modules/module-model/index.d.ts +0 -21
- package/dist/node/modules/module-model/index.d.ts.map +0 -1
- package/dist/node/modules/module-model/instance/Instance.d.ts +0 -38
- package/dist/node/modules/module-model/instance/Instance.d.ts.map +0 -1
- package/dist/node/modules/module-model/instance/ModuleFilter.d.ts +0 -14
- package/dist/node/modules/module-model/instance/ModuleFilter.d.ts.map +0 -1
- package/dist/node/modules/module-model/instance/ModuleInstanceParams.d.ts +0 -10
- package/dist/node/modules/module-model/instance/ModuleInstanceParams.d.ts.map +0 -1
- package/dist/node/modules/module-model/instance/ModuleRepository.d.ts +0 -10
- package/dist/node/modules/module-model/instance/ModuleRepository.d.ts.map +0 -1
- package/dist/node/modules/module-model/instance/ModuleResolver.d.ts +0 -18
- package/dist/node/modules/module-model/instance/ModuleResolver.d.ts.map +0 -1
- package/dist/node/modules/module-model/instance/ObjectFilter.d.ts +0 -30
- package/dist/node/modules/module-model/instance/ObjectFilter.d.ts.map +0 -1
- package/dist/node/modules/module-model/instance/ObjectResolver.d.ts +0 -27
- package/dist/node/modules/module-model/instance/ObjectResolver.d.ts.map +0 -1
- package/dist/node/modules/module-model/instance/asModuleInstance.d.ts +0 -7
- package/dist/node/modules/module-model/instance/asModuleInstance.d.ts.map +0 -1
- package/dist/node/modules/module-model/instance/attachable/AttachableInstance.d.ts +0 -16
- package/dist/node/modules/module-model/instance/attachable/AttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/module-model/instance/attachable/asAttachableInstance.d.ts +0 -4
- package/dist/node/modules/module-model/instance/attachable/asAttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/module-model/instance/attachable/index.d.ts +0 -4
- package/dist/node/modules/module-model/instance/attachable/index.d.ts.map +0 -1
- package/dist/node/modules/module-model/instance/attachable/isAttachableInstance.d.ts +0 -5
- package/dist/node/modules/module-model/instance/attachable/isAttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/module-model/instance/index.d.ts +0 -11
- package/dist/node/modules/module-model/instance/index.d.ts.map +0 -1
- package/dist/node/modules/module-model/instance/isModuleInstance.d.ts +0 -5
- package/dist/node/modules/module-model/instance/isModuleInstance.d.ts.map +0 -1
- package/dist/node/modules/module-model/lib/duplicateModules.d.ts +0 -12
- package/dist/node/modules/module-model/lib/duplicateModules.d.ts.map +0 -1
- package/dist/node/modules/module-model/lib/index.d.ts +0 -3
- package/dist/node/modules/module-model/lib/index.d.ts.map +0 -1
- package/dist/node/modules/module-model/lib/serializable.d.ts +0 -2
- package/dist/node/modules/module-model/lib/serializable.d.ts.map +0 -1
- package/dist/node/modules/module-model/withModule.d.ts +0 -6
- package/dist/node/modules/module-model/withModule.d.ts.map +0 -1
- package/dist/node/modules/module-resolver/AbstractModuleResolver.d.ts +0 -24
- package/dist/node/modules/module-resolver/AbstractModuleResolver.d.ts.map +0 -1
- package/dist/node/modules/module-resolver/CompositeModuleResolver.d.ts +0 -35
- package/dist/node/modules/module-resolver/CompositeModuleResolver.d.ts.map +0 -1
- package/dist/node/modules/module-resolver/NameRegistrarTransformer.d.ts +0 -10
- package/dist/node/modules/module-resolver/NameRegistrarTransformer.d.ts.map +0 -1
- package/dist/node/modules/module-resolver/ResolveHelper/ResolveHelper.d.ts +0 -27
- package/dist/node/modules/module-resolver/ResolveHelper/ResolveHelper.d.ts.map +0 -1
- package/dist/node/modules/module-resolver/ResolveHelper/ResolveHelperStatic.d.ts +0 -7
- package/dist/node/modules/module-resolver/ResolveHelper/ResolveHelperStatic.d.ts.map +0 -1
- package/dist/node/modules/module-resolver/ResolveHelper/index.d.ts +0 -10
- package/dist/node/modules/module-resolver/ResolveHelper/index.d.ts.map +0 -1
- package/dist/node/modules/module-resolver/ResolveHelper/model.d.ts +0 -2
- package/dist/node/modules/module-resolver/ResolveHelper/model.d.ts.map +0 -1
- package/dist/node/modules/module-resolver/ResolveHelper/resolveAddressToInstance.d.ts +0 -9
- package/dist/node/modules/module-resolver/ResolveHelper/resolveAddressToInstance.d.ts.map +0 -1
- package/dist/node/modules/module-resolver/ResolveHelper/resolveAll.d.ts +0 -6
- package/dist/node/modules/module-resolver/ResolveHelper/resolveAll.d.ts.map +0 -1
- package/dist/node/modules/module-resolver/ResolveHelper/resolveLocalNameToAddress.d.ts +0 -8
- package/dist/node/modules/module-resolver/ResolveHelper/resolveLocalNameToAddress.d.ts.map +0 -1
- package/dist/node/modules/module-resolver/ResolveHelper/resolveLocalNameToInstance.d.ts +0 -7
- package/dist/node/modules/module-resolver/ResolveHelper/resolveLocalNameToInstance.d.ts.map +0 -1
- package/dist/node/modules/module-resolver/ResolveHelper/resolvePathToAddress.d.ts +0 -4
- package/dist/node/modules/module-resolver/ResolveHelper/resolvePathToAddress.d.ts.map +0 -1
- package/dist/node/modules/module-resolver/ResolveHelper/resolvePathToInstance.d.ts +0 -3
- package/dist/node/modules/module-resolver/ResolveHelper/resolvePathToInstance.d.ts.map +0 -1
- package/dist/node/modules/module-resolver/ResolveHelper/transformModuleIdentifier.d.ts +0 -3
- package/dist/node/modules/module-resolver/ResolveHelper/transformModuleIdentifier.d.ts.map +0 -1
- package/dist/node/modules/module-resolver/ResolverEventEmitter.d.ts +0 -10
- package/dist/node/modules/module-resolver/ResolverEventEmitter.d.ts.map +0 -1
- package/dist/node/modules/module-resolver/SimpleModuleResolver.d.ts +0 -27
- package/dist/node/modules/module-resolver/SimpleModuleResolver.d.ts.map +0 -1
- package/dist/node/modules/module-resolver/index.d.ts +0 -7
- package/dist/node/modules/module-resolver/index.d.ts.map +0 -1
- package/dist/node/modules/module-wrapper/ModuleWrapper.d.ts +0 -104
- package/dist/node/modules/module-wrapper/ModuleWrapper.d.ts.map +0 -1
- package/dist/node/modules/module-wrapper/index.d.ts +0 -3
- package/dist/node/modules/module-wrapper/index.d.ts.map +0 -1
- package/dist/node/modules/module-wrapper/models.d.ts +0 -9
- package/dist/node/modules/module-wrapper/models.d.ts.map +0 -1
- package/dist/node/modules/modules/index.d.ts +0 -14
- package/dist/node/modules/modules/index.d.ts.map +0 -1
- package/dist/node/modules/node/index.d.ts +0 -5
- package/dist/node/modules/node/index.d.ts.map +0 -1
- package/dist/node/modules/node-abstract/AbstractNode.d.ts +0 -36
- package/dist/node/modules/node-abstract/AbstractNode.d.ts.map +0 -1
- package/dist/node/modules/node-abstract/NodeHelper/index.d.ts +0 -7
- package/dist/node/modules/node-abstract/NodeHelper/index.d.ts.map +0 -1
- package/dist/node/modules/node-abstract/index.d.ts +0 -3
- package/dist/node/modules/node-abstract/index.d.ts.map +0 -1
- package/dist/node/modules/node-memory/MemoryNode.d.ts +0 -47
- package/dist/node/modules/node-memory/MemoryNode.d.ts.map +0 -1
- package/dist/node/modules/node-memory/NodeHelper/index.d.ts +0 -14
- package/dist/node/modules/node-memory/NodeHelper/index.d.ts.map +0 -1
- package/dist/node/modules/node-memory/index.d.ts +0 -3
- package/dist/node/modules/node-memory/index.d.ts.map +0 -1
- package/dist/node/modules/node-model/ChildCertification.d.ts +0 -19
- package/dist/node/modules/node-model/ChildCertification.d.ts.map +0 -1
- package/dist/node/modules/node-model/Config.d.ts +0 -21
- package/dist/node/modules/node-model/Config.d.ts.map +0 -1
- package/dist/node/modules/node-model/EventsModels/ModuleAttached.d.ts +0 -7
- package/dist/node/modules/node-model/EventsModels/ModuleAttached.d.ts.map +0 -1
- package/dist/node/modules/node-model/EventsModels/ModuleDetached.d.ts +0 -7
- package/dist/node/modules/node-model/EventsModels/ModuleDetached.d.ts.map +0 -1
- package/dist/node/modules/node-model/EventsModels/ModuleRegistered.d.ts +0 -7
- package/dist/node/modules/node-model/EventsModels/ModuleRegistered.d.ts.map +0 -1
- package/dist/node/modules/node-model/EventsModels/ModuleUnregistered.d.ts +0 -7
- package/dist/node/modules/node-model/EventsModels/ModuleUnregistered.d.ts.map +0 -1
- package/dist/node/modules/node-model/EventsModels/index.d.ts +0 -5
- package/dist/node/modules/node-model/EventsModels/index.d.ts.map +0 -1
- package/dist/node/modules/node-model/Node.d.ts +0 -8
- package/dist/node/modules/node-model/Node.d.ts.map +0 -1
- package/dist/node/modules/node-model/Params.d.ts +0 -7
- package/dist/node/modules/node-model/Params.d.ts.map +0 -1
- package/dist/node/modules/node-model/Queries/Attach.d.ts +0 -19
- package/dist/node/modules/node-model/Queries/Attach.d.ts.map +0 -1
- package/dist/node/modules/node-model/Queries/Attached.d.ts +0 -15
- package/dist/node/modules/node-model/Queries/Attached.d.ts.map +0 -1
- package/dist/node/modules/node-model/Queries/Certify.d.ts +0 -18
- package/dist/node/modules/node-model/Queries/Certify.d.ts.map +0 -1
- package/dist/node/modules/node-model/Queries/Detach.d.ts +0 -18
- package/dist/node/modules/node-model/Queries/Detach.d.ts.map +0 -1
- package/dist/node/modules/node-model/Queries/Registered.d.ts +0 -15
- package/dist/node/modules/node-model/Queries/Registered.d.ts.map +0 -1
- package/dist/node/modules/node-model/Queries/index.d.ts +0 -14
- package/dist/node/modules/node-model/Queries/index.d.ts.map +0 -1
- package/dist/node/modules/node-model/attachable/AttachableInstance.d.ts +0 -12
- package/dist/node/modules/node-model/attachable/AttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/node-model/attachable/asAttachableInstance.d.ts +0 -2
- package/dist/node/modules/node-model/attachable/asAttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/node-model/attachable/index.d.ts +0 -4
- package/dist/node/modules/node-model/attachable/index.d.ts.map +0 -1
- package/dist/node/modules/node-model/attachable/isAttachableInstance.d.ts +0 -5
- package/dist/node/modules/node-model/attachable/isAttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/node-model/index.d.ts +0 -10
- package/dist/node/modules/node-model/index.d.ts.map +0 -1
- package/dist/node/modules/node-model/instance.d.ts +0 -25
- package/dist/node/modules/node-model/instance.d.ts.map +0 -1
- package/dist/node/modules/node-model/typeChecks.d.ts +0 -12
- package/dist/node/modules/node-model/typeChecks.d.ts.map +0 -1
- package/dist/node/modules/node-view/ViewNode.d.ts +0 -56
- package/dist/node/modules/node-view/ViewNode.d.ts.map +0 -1
- package/dist/node/modules/node-view/index.d.ts +0 -2
- package/dist/node/modules/node-view/index.d.ts.map +0 -1
- package/dist/node/modules/node-wrapper/NodeWrapper.d.ts +0 -25
- package/dist/node/modules/node-wrapper/NodeWrapper.d.ts.map +0 -1
- package/dist/node/modules/node-wrapper/index.d.ts +0 -2
- package/dist/node/modules/node-wrapper/index.d.ts.map +0 -1
- package/dist/node/modules/payloadset-plugin/Plugin.d.ts +0 -27
- package/dist/node/modules/payloadset-plugin/Plugin.d.ts.map +0 -1
- package/dist/node/modules/payloadset-plugin/Resolver.d.ts +0 -24
- package/dist/node/modules/payloadset-plugin/Resolver.d.ts.map +0 -1
- package/dist/node/modules/payloadset-plugin/createPlugin.d.ts +0 -8
- package/dist/node/modules/payloadset-plugin/createPlugin.d.ts.map +0 -1
- package/dist/node/modules/payloadset-plugin/index.d.ts +0 -4
- package/dist/node/modules/payloadset-plugin/index.d.ts.map +0 -1
- package/dist/node/modules/sentinel/index.d.ts +0 -5
- package/dist/node/modules/sentinel/index.d.ts.map +0 -1
- package/dist/node/modules/sentinel-abstract/AbstractSentinel.d.ts +0 -21
- package/dist/node/modules/sentinel-abstract/AbstractSentinel.d.ts.map +0 -1
- package/dist/node/modules/sentinel-abstract/index.d.ts +0 -2
- package/dist/node/modules/sentinel-abstract/index.d.ts.map +0 -1
- package/dist/node/modules/sentinel-memory/MemorySentinel.d.ts +0 -17
- package/dist/node/modules/sentinel-memory/MemorySentinel.d.ts.map +0 -1
- package/dist/node/modules/sentinel-memory/SentinelIntervalAutomationWrapper.d.ts +0 -21
- package/dist/node/modules/sentinel-memory/SentinelIntervalAutomationWrapper.d.ts.map +0 -1
- package/dist/node/modules/sentinel-memory/SentinelRunner.d.ts +0 -30
- package/dist/node/modules/sentinel-memory/SentinelRunner.d.ts.map +0 -1
- package/dist/node/modules/sentinel-memory/index.d.ts +0 -4
- package/dist/node/modules/sentinel-memory/index.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/Automation.d.ts +0 -48
- package/dist/node/modules/sentinel-model/Automation.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/Config.d.ts +0 -32
- package/dist/node/modules/sentinel-model/Config.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/EventData.d.ts +0 -5
- package/dist/node/modules/sentinel-model/EventData.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/EventsModels/JobEnd.d.ts +0 -11
- package/dist/node/modules/sentinel-model/EventsModels/JobEnd.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/EventsModels/JobStart.d.ts +0 -10
- package/dist/node/modules/sentinel-model/EventsModels/JobStart.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/EventsModels/ReportEnd.d.ts +0 -12
- package/dist/node/modules/sentinel-model/EventsModels/ReportEnd.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/EventsModels/ReportStart.d.ts +0 -10
- package/dist/node/modules/sentinel-model/EventsModels/ReportStart.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/EventsModels/TaskEnd.d.ts +0 -13
- package/dist/node/modules/sentinel-model/EventsModels/TaskEnd.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/EventsModels/TaskStart.d.ts +0 -12
- package/dist/node/modules/sentinel-model/EventsModels/TaskStart.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/EventsModels/index.d.ts +0 -7
- package/dist/node/modules/sentinel-model/EventsModels/index.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/Instance.d.ts +0 -10
- package/dist/node/modules/sentinel-model/Instance.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/Job.d.ts +0 -5
- package/dist/node/modules/sentinel-model/Job.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/Module.d.ts +0 -8
- package/dist/node/modules/sentinel-model/Module.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/Params.d.ts +0 -5
- package/dist/node/modules/sentinel-model/Params.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/Queries/Report.d.ts +0 -15
- package/dist/node/modules/sentinel-model/Queries/Report.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/Queries/index.d.ts +0 -6
- package/dist/node/modules/sentinel-model/Queries/index.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/ResolvedTask.d.ts +0 -14
- package/dist/node/modules/sentinel-model/ResolvedTask.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/Sentinel.d.ts +0 -8
- package/dist/node/modules/sentinel-model/Sentinel.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/Task.d.ts +0 -15
- package/dist/node/modules/sentinel-model/Task.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/attachable/AttachableInstance.d.ts +0 -13
- package/dist/node/modules/sentinel-model/attachable/AttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/attachable/asAttachableInstance.d.ts +0 -2
- package/dist/node/modules/sentinel-model/attachable/asAttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/attachable/index.d.ts +0 -4
- package/dist/node/modules/sentinel-model/attachable/index.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/attachable/isAttachableInstance.d.ts +0 -5
- package/dist/node/modules/sentinel-model/attachable/isAttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/index.d.ts +0 -15
- package/dist/node/modules/sentinel-model/index.d.ts.map +0 -1
- package/dist/node/modules/sentinel-model/typeChecks.d.ts +0 -11
- package/dist/node/modules/sentinel-model/typeChecks.d.ts.map +0 -1
- package/dist/node/modules/sentinel-wrapper/Wrapper.d.ts +0 -17
- package/dist/node/modules/sentinel-wrapper/Wrapper.d.ts.map +0 -1
- package/dist/node/modules/sentinel-wrapper/index.d.ts +0 -2
- package/dist/node/modules/sentinel-wrapper/index.d.ts.map +0 -1
- package/dist/node/modules/witness/index.d.ts +0 -4
- package/dist/node/modules/witness/index.d.ts.map +0 -1
- package/dist/node/modules/witness-abstract/AbstractWitness.d.ts +0 -21
- package/dist/node/modules/witness-abstract/AbstractWitness.d.ts.map +0 -1
- package/dist/node/modules/witness-abstract/index.d.ts +0 -2
- package/dist/node/modules/witness-abstract/index.d.ts.map +0 -1
- package/dist/node/modules/witness-adhoc/Witness.d.ts +0 -28
- package/dist/node/modules/witness-adhoc/Witness.d.ts.map +0 -1
- package/dist/node/modules/witness-adhoc/index.d.ts +0 -2
- package/dist/node/modules/witness-adhoc/index.d.ts.map +0 -1
- package/dist/node/modules/witness-model/Config.d.ts +0 -21
- package/dist/node/modules/witness-model/Config.d.ts.map +0 -1
- package/dist/node/modules/witness-model/CustomInstance.d.ts +0 -9
- package/dist/node/modules/witness-model/CustomInstance.d.ts.map +0 -1
- package/dist/node/modules/witness-model/CustomModule.d.ts +0 -7
- package/dist/node/modules/witness-model/CustomModule.d.ts.map +0 -1
- package/dist/node/modules/witness-model/EventData.d.ts +0 -5
- package/dist/node/modules/witness-model/EventData.d.ts.map +0 -1
- package/dist/node/modules/witness-model/EventsModels/ObserveEnd.d.ts +0 -12
- package/dist/node/modules/witness-model/EventsModels/ObserveEnd.d.ts.map +0 -1
- package/dist/node/modules/witness-model/EventsModels/ObserveStart.d.ts +0 -10
- package/dist/node/modules/witness-model/EventsModels/ObserveStart.d.ts.map +0 -1
- package/dist/node/modules/witness-model/EventsModels/index.d.ts +0 -3
- package/dist/node/modules/witness-model/EventsModels/index.d.ts.map +0 -1
- package/dist/node/modules/witness-model/Instance.d.ts +0 -9
- package/dist/node/modules/witness-model/Instance.d.ts.map +0 -1
- package/dist/node/modules/witness-model/Module.d.ts +0 -6
- package/dist/node/modules/witness-model/Module.d.ts.map +0 -1
- package/dist/node/modules/witness-model/Params.d.ts +0 -5
- package/dist/node/modules/witness-model/Params.d.ts.map +0 -1
- package/dist/node/modules/witness-model/Queries/Observe.d.ts +0 -17
- package/dist/node/modules/witness-model/Queries/Observe.d.ts.map +0 -1
- package/dist/node/modules/witness-model/Queries/index.d.ts +0 -6
- package/dist/node/modules/witness-model/Queries/index.d.ts.map +0 -1
- package/dist/node/modules/witness-model/QueryFunctions.d.ts +0 -8
- package/dist/node/modules/witness-model/QueryFunctions.d.ts.map +0 -1
- package/dist/node/modules/witness-model/attachable/AttachableInstance.d.ts +0 -13
- package/dist/node/modules/witness-model/attachable/AttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/witness-model/attachable/asAttachableInstance.d.ts +0 -2
- package/dist/node/modules/witness-model/attachable/asAttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/witness-model/attachable/index.d.ts +0 -4
- package/dist/node/modules/witness-model/attachable/index.d.ts.map +0 -1
- package/dist/node/modules/witness-model/attachable/isAttachableInstance.d.ts +0 -5
- package/dist/node/modules/witness-model/attachable/isAttachableInstance.d.ts.map +0 -1
- package/dist/node/modules/witness-model/index.d.ts +0 -13
- package/dist/node/modules/witness-model/index.d.ts.map +0 -1
- package/dist/node/modules/witness-model/typeChecks.d.ts +0 -12
- package/dist/node/modules/witness-model/typeChecks.d.ts.map +0 -1
- package/dist/node/modules/witness-wrapper/WitnessWrapper.d.ts +0 -13
- package/dist/node/modules/witness-wrapper/WitnessWrapper.d.ts.map +0 -1
- package/dist/node/modules/witness-wrapper/index.d.ts +0 -2
- package/dist/node/modules/witness-wrapper/index.d.ts.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/modules/bridge-abstract/AbstractBridge.ts", "../../src/modules/bridge-abstract/AbstractBridgeModuleResolver.ts", "../../src/modules/bridge-abstract/AbstractModuleProxy/AbstractModuleProxy.ts", "../../src/modules/bridge-abstract/AbstractModuleProxy/ModuleProxyResolver.ts", "../../src/modules/bridge-abstract/wrapModuleWithType.ts"],
|
|
4
|
-
"sourcesContent": ["import type { Promisable } from '@ariestools/sdk'\nimport {\n assertEx, exists, forget,\n} from '@ariestools/sdk'\nimport type {\n Payload, QueryBoundWitness, Schema, XyoAddress,\n} from '@xyo-network/sdk-protocol'\nimport { isPayloadOfSchemaType, QueryBoundWitnessWrapper } from '@xyo-network/sdk-protocol'\n\nimport type { ArchivistInstance } from '#archivist-model'\nimport { asArchivistInstance } from '#archivist-model'\nimport type {\n AttachableBridgeInstance,\n BridgeExposeOptions,\n BridgeModuleEventData,\n BridgeParams,\n BridgeQueries,\n BridgeUnexposeOptions,\n ModuleFilterPayload,\n} from '#bridge-model'\nimport {\n BridgeConfigSchema,\n BridgeConnectQuerySchema,\n BridgeDisconnectQuerySchema,\n BridgeExposeQuerySchema,\n BridgeUnexposeQuerySchema,\n ModuleFilterPayloadSchema,\n} from '#bridge-model'\nimport { AbstractModuleInstance } from '#module-abstract'\nimport type {\n AddressPayload,\n ModuleFilterOptions,\n ModuleIdentifier,\n ModuleInstance,\n ModuleQueryHandlerResult,\n ModuleResolverInstance,\n} from '#module-model'\nimport { AddressSchema } from '#module-model'\nimport {\n resolveAddressToInstance,\n resolvePathToAddress,\n transformModuleIdentifier,\n} from '#module-resolver'\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport abstract class AbstractBridge<TParams extends BridgeParams = BridgeParams>\n extends AbstractModuleInstance<TParams, BridgeModuleEventData>\n implements AttachableBridgeInstance<TParams, BridgeModuleEventData> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, BridgeConfigSchema]\n static override readonly defaultConfigSchema: Schema = BridgeConfigSchema\n\n protected _roots?: ModuleInstance[]\n\n override get allowNameResolution(): boolean {\n // we default to false here to prevent name collisions\n return this.params.allowNameResolution ?? true\n }\n\n get discoverRoots(): false | 'start' | 'lazy' {\n return this.config.client?.discoverRoots ?? (this.config.client === undefined ? false : 'start')\n }\n\n override get queries(): Schema[] {\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): 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<XyoAddress[]> {\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>(id: ModuleIdentifier, options?: ModuleFilterOptions<T>): Promise<T | undefined>\n\n override async resolve<T extends ModuleInstance = ModuleInstance>(\n id: 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 (id === '*') {\n const remainingDepth = (options.maxDepth ?? 5) - 1\n if (remainingDepth <= 0) return workingSet\n // eslint-disable-next-line @typescript-eslint/await-thenable\n const nested = await Promise.all(roots.map(mod => mod.resolve('*', { ...options, maxDepth: remainingDepth })))\n return [...workingSet, ...nested.flat()]\n }\n switch (typeof id) {\n case 'string': {\n const parts = id.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 default: {\n return\n }\n }\n }\n\n override async startHandler(): Promise<void> {\n if (this.discoverRoots === 'lazy') {\n forget(this.getRoots())\n } else if (this.discoverRoots === 'start') {\n await this.getRoots()\n }\n }\n\n async unexpose(id: ModuleIdentifier, options?: BridgeUnexposeOptions): Promise<XyoAddress[]> {\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 = 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 resolvedAddressesNested = await Promise.all(\n archivists.map(async (archivist) => {\n const parents = await this.parents()\n const addresses = await Promise.all(parents.map(parent => resolvePathToAddress(parent, archivist)))\n return addresses.filter(exists)\n }),\n )\n const resolvedAddresses = resolvedAddressesNested\n .flat()\n .filter(exists)\n const resolvedInstances = await Promise.all(resolvedAddresses.map(address => resolveAddressToInstance(this, address)))\n const resolved = resolvedInstances.filter(exists)\n return resolved.map(mod => asArchivistInstance(mod)).filter(exists)\n }\n\n abstract exposeHandler(address: XyoAddress, options?: BridgeExposeOptions): Promisable<ModuleInstance[]>\n\n abstract exposedHandler(): Promisable<XyoAddress[]>\n\n abstract getRoots(force?: boolean): Promise<ModuleInstance[]>\n\n abstract unexposeHandler(address: XyoAddress, options?: BridgeUnexposeOptions): Promisable<ModuleInstance[]>\n}\n", "import type { AccountInstance } from '@xyo-network/sdk-protocol'\n\nimport type { ArchivistInstance } from '#archivist-model'\nimport type {\n BridgeInstance, QuerySendFinishedEventArgs, QuerySendStartedEventArgs,\n} from '#bridge-model'\nimport type {\n ArchivingModuleConfig,\n CacheConfig,\n ModuleFilterOptions,\n ModuleIdentifier,\n ModuleInstance,\n} from '#module-model'\nimport { ObjectResolverPriority } from '#module-model'\nimport type { ModuleResolverParams } from '#module-resolver'\nimport { CompositeModuleResolver } from '#module-resolver'\n\nimport type { ModuleProxyParams } from './AbstractModuleProxy/index.ts'\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\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\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport abstract class AbstractBridgeModuleResolver<\n TParams extends BridgeModuleResolverParams = BridgeModuleResolverParams,\n TProxyParams extends ModuleProxyParams = ModuleProxyParams,\n> extends CompositeModuleResolver<TParams> {\n override get priority(): 0 {\n return ObjectResolverPriority.VeryLow\n }\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 {\n asAddress, assertEx,\n exists,\n forget,\n isAddress, toSafeJsonString,\n} from '@ariestools/sdk'\nimport type {\n AccountInstance, ModuleError, ModuleManifestPayload, NodeManifestPayload,\n Payload, QueryBoundWitness, QueryPayload, Schema, XyoAddress,\n XyoQuantAddress,\n} from '@xyo-network/sdk-protocol'\nimport {\n Account, BoundWitnessWrapper, isPayloadOfSchemaType, isSchema, ModuleErrorSchema, ModuleManifestPayloadSchema, NodeManifestPayloadSchema, PayloadBuilder,\n QueryBoundWitnessWrapper, QuerySchema,\n} from '@xyo-network/sdk-protocol'\nimport { LRUCache } from 'lru-cache'\n\nimport type { ArchivistInstance } from '#archivist-model'\nimport type { QuerySendFinishedEventArgs, QuerySendStartedEventArgs } from '#bridge-model'\nimport { AbstractModuleInstance } from '#module-abstract'\nimport type {\n AddressPreviousHashPayload,\n AnyConfigSchema,\n ArchivingModuleConfig,\n AttachableModuleInstance,\n ModuleAddressQuery,\n ModuleConfig,\n ModuleEventData,\n ModuleInstance,\n ModuleManifestQuery,\n ModuleName,\n ModuleQueryHandlerResult,\n ModuleQueryResult,\n ModuleResolver,\n QueryableModule,\n QueryableModuleParams,\n} from '#module-model'\nimport {\n AddressPreviousHashSchema,\n DeadModuleError,\n ModuleAddressQuerySchema,\n ModuleConfigSchema,\n ModuleManifestQuerySchema,\n ModuleStateQuerySchema,\n} from '#module-model'\nimport { ModuleWrapper } from '#module-wrapper'\n\nimport { ModuleProxyResolver } from './ModuleProxyResolver.ts'\n\nconst collectChildAddresses = (manifest: NodeManifestPayload, result: Record<XyoAddress, ModuleName | null>): void => {\n const children = manifest.modules?.public ?? []\n for (const child of children) {\n if (typeof child !== 'object') {\n continue\n }\n const address = child.status?.address\n if (isAddress(address)) {\n result[address] = child.config.name ?? null\n }\n }\n}\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport interface ModuleProxyParams extends QueryableModuleParams\n{\n account: AccountInstance\n archiving?: ArchivingModuleConfig['archiving'] & { resolveArchivists: () => Promise<ArchivistInstance[]> }\n host: ModuleResolver\n manifest?: ModuleManifestPayload\n moduleAddress: XyoAddress\n onQuerySendFinished?: (args: Omit<QuerySendFinishedEventArgs, 'mod'>) => void\n onQuerySendStarted?: (args: Omit<QuerySendStartedEventArgs, 'mod'>) => void\n state?: Payload[]\n}\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport abstract class AbstractModuleProxy<\n TWrappedModule extends ModuleInstance = ModuleInstance,\n TParams extends ModuleProxyParams = ModuleProxyParams,\n>\n extends AbstractModuleInstance<TParams, TWrappedModule['eventData']>\n implements ModuleInstance<TParams, TWrappedModule['eventData']> {\n static readonly requiredQueries: string[] = [ModuleStateQuerySchema]\n\n protected _config?: TWrappedModule['config']\n protected _publicChildren?: ModuleInstance[]\n protected _state: Payload[] | undefined = undefined\n protected _stateInProcess = false\n\n private _spamTrap = new LRUCache<string, number>({\n max: 1000, ttl: 1000 * 60, ttlAutopurge: true,\n })\n\n override get address(): (Lowercase<string> & {\n readonly __hex: true\n } & {\n readonly __address: true\n }) | XyoQuantAddress {\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(): TWrappedModule['config'] & { schema: Schema } {\n return { ...this._config, schema: (this._config?.schema ?? ModuleConfigSchema) }\n }\n\n override get queries(): Schema[] {\n const queryPayloads = assertEx(this._state, () => 'Module state not found. Make sure proxy has been started').filter(item =>\n isPayloadOfSchemaType<QueryPayload>(QuerySchema)(item))\n return queryPayloads.map(payload => payload.query)\n }\n\n static hasRequiredQueries(mod: QueryableModule): boolean {\n return this.missingRequiredQueries(mod).length === 0\n }\n\n static override isAllowedSchema(schema: Schema): boolean {\n return isSchema(schema)\n }\n\n static missingRequiredQueries(mod: QueryableModule): string[] {\n const moduleQueries = mod.queries\n return (\n this.requiredQueries.map((query) => {\n return moduleQueries.includes(query) ? null : query\n })\n ).filter(exists)\n }\n\n static override async paramsHandler<T extends AttachableModuleInstance<QueryableModuleParams, ModuleEventData>>(\n inParams?: Partial<T['params']>,\n ): Promise<T['params']> {\n const superParams = await super.paramsHandler(inParams)\n return {\n ...superParams,\n account: (superParams.account === 'random') ? await Account.random() : superParams.account,\n addToResolvers: superParams.addToResolvers ?? true,\n }\n }\n\n async addressPreviousHash(): Promise<AddressPreviousHashPayload> {\n const queryPayload: ModuleAddressQuery = { schema: ModuleAddressQuerySchema }\n const queryResult = await this.sendQuery(queryPayload, undefined, this.account)\n const result: AddressPreviousHashPayload = assertEx(\n queryResult.find(\n isPayloadOfSchemaType<AddressPreviousHashPayload>(AddressPreviousHashSchema),\n ),\n () => 'Result did not include correct payload',\n )\n return result\n }\n\n childAddressByName(name: ModuleName): XyoAddress | undefined {\n const nodeManifests = this._state?.filter(isPayloadOfSchemaType<NodeManifestPayload>(NodeManifestPayloadSchema))\n const childPairs = nodeManifests?.flatMap(nodeManifest => Object.entries(nodeManifest.status?.children ?? {}) as [XyoAddress, ModuleName | null][])\n return asAddress(childPairs?.find(([_, childName]) => childName === name)?.[0])\n }\n\n async childAddressMap(): Promise<Record<XyoAddress, ModuleName | null>> {\n let nodeManifests: NodeManifestPayload[] | undefined\n = isPayloadOfSchemaType<NodeManifestPayload>(NodeManifestPayloadSchema)(this.params.manifest) ? [this.params.manifest] : undefined\n const result: Record<XyoAddress, ModuleName | null> = {}\n if (nodeManifests === undefined) {\n const state = await this.state()\n nodeManifests = state.filter(isPayloadOfSchemaType<NodeManifestPayload>(NodeManifestPayloadSchema))\n }\n const manifests = nodeManifests ?? []\n for (const manifest of manifests) {\n collectChildAddresses(manifest, result)\n }\n return result\n }\n\n override async createHandler(): Promise<void> {\n await super.createHandler()\n let manifest: ModuleManifestPayload | NodeManifestPayload | undefined = this.params.manifest\n if (!manifest) {\n const state = await this.state()\n const manifestPayload = state.find(\n payload => isPayloadOfSchemaType<NodeManifestPayload>(NodeManifestPayloadSchema)(payload)\n || isPayloadOfSchemaType<ModuleManifestPayload>(ModuleManifestPayloadSchema)(payload),\n )\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 }\n\n override async manifest(maxDepth?: number): Promise<ModuleManifestPayload> {\n const queryPayload: ModuleManifestQuery = { schema: ModuleManifestQuerySchema, ...(maxDepth !== undefined && { maxDepth }) }\n const queryResult = await this.sendQuery(queryPayload)\n return queryResult[0] as ModuleManifestPayload\n }\n\n override async moduleAddress(): Promise<AddressPreviousHashPayload[]> {\n const queryPayload: ModuleAddressQuery = { schema: ModuleAddressQuerySchema }\n return (await this.sendQuery(queryPayload))\n }\n\n override async previousHash(): Promise<string | undefined> {\n const queryPayload: ModuleAddressQuery = { schema: ModuleAddressQuerySchema }\n const queryResult = await this.sendQuery(queryPayload)\n return (queryResult.pop() as AddressPreviousHashPayload).previousHash\n }\n\n override async publicChildren(): Promise<ModuleInstance<QueryableModuleParams<AnyConfigSchema<ModuleConfig>>, ModuleEventData<object>>[]> {\n 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?.({\n payloads, query, result, status: 'success',\n })\n if (this.archiving && this.isAllowedArchivingQuery(query.schema)) {\n forget(this.storeToArchivists(result.flat()))\n }\n forget(this.emit('moduleQueried', {\n mod: this, payloads, query, result,\n }))\n return result\n } catch (ex) {\n this.params.onQuerySendFinished?.({\n payloads, query, status: 'failure',\n })\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 = 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 true\n }\n\n override async resolveArchivingArchivists(): Promise<ArchivistInstance[]> {\n return (await this.params.archiving?.resolveArchivists()) ?? []\n }\n\n setConfig(config: TWrappedModule['params']['config']): void {\n this._config = config\n }\n\n setState(state: Payload[]): void {\n this._state = state\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, await Account.random())\n this._state = await wrapper.state()\n }\n return this._state\n }\n\n protected filterErrors(result: ModuleQueryResult): ModuleError[] {\n const wrapper = BoundWitnessWrapper.wrap(result[0], result[1])\n return wrapper.payloadsBySchema<ModuleError>(ModuleErrorSchema)\n }\n\n protected override async startHandler(): Promise<void> {\n return await super.startHandler()\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 ${toSafeJsonString(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 type { Promisable } from '@ariestools/sdk'\nimport { assertEx, exists } from '@ariestools/sdk'\nimport type {\n ModuleManifestPayload, XyoAddress, XyoQuantAddress,\n} from '@xyo-network/sdk-protocol'\nimport { Account } from '@xyo-network/sdk-protocol'\n\nimport type {\n AnyConfigSchema,\n ModuleConfig,\n ModuleEventData,\n ModuleFilterOptions,\n ModuleIdentifier,\n ModuleIdentifierTransformer,\n ModuleInstance,\n ModuleName,\n ModuleResolver,\n ModuleResolverInstance,\n ObjectFilterOptions,\n QueryableModuleParams,\n} from '#module-model'\nimport { ObjectResolverPriority } from '#module-model'\nimport { CompositeModuleResolver } from '#module-resolver'\n\nimport { wrapModuleWithType } from '../wrapModuleWithType.ts'\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport interface ModuleProxyResolverOptions {\n childAddressMap: Record<XyoAddress, ModuleName | null>\n childManifests?: Record<XyoAddress, ModuleManifestPayload>\n childStates?: Record<XyoAddress, ModuleManifestPayload>\n host: ModuleResolver\n mod: ModuleInstance\n moduleIdentifierTransformers?: ModuleIdentifierTransformer[]\n}\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport class ModuleProxyResolver<T extends ModuleProxyResolverOptions = ModuleProxyResolverOptions> implements ModuleResolverInstance {\n private downResolver: CompositeModuleResolver\n private options: T\n\n constructor(options: T) {\n this.options = options\n this.downResolver = new CompositeModuleResolver({ moduleIdentifierTransformers: options.moduleIdentifierTransformers, root: this.root })\n }\n\n get priority(): 0 {\n return ObjectResolverPriority.VeryLow\n }\n\n get root(): ModuleInstance {\n return this.options.mod\n }\n\n protected get childAddressMap(): Record<(Lowercase<string> & {\n readonly __hex: true\n } & {\n readonly __address: true\n }) | XyoQuantAddress, string | null> {\n return this.options.childAddressMap\n }\n\n protected get host(): ModuleResolver<ModuleInstance<QueryableModuleParams<AnyConfigSchema<ModuleConfig>>, ModuleEventData<object>>> {\n return this.options.host\n }\n\n protected get mod(): ModuleInstance {\n return this.options.mod\n }\n\n addResolver(_resolver: ModuleResolver): this {\n throw new Error('Not supported')\n }\n\n childManifest(address: XyoAddress): ModuleManifestPayload | undefined {\n return this.options.childManifests?.[address]\n }\n\n childState(address: XyoAddress): ModuleManifestPayload | undefined {\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>(id: ModuleIdentifier, options?: ModuleFilterOptions<T>): Promise<T | undefined>\n // eslint-disable-next-line complexity\n async resolve<T extends ModuleInstance = ModuleInstance>(\n id: ModuleIdentifier = '*',\n options?: ModuleFilterOptions<T>,\n ): Promise<T | T[] | undefined> {\n // console.log(`childAddressMap: ${toSafeJsonString(this.childAddressMap, 10)}`)\n if (id === '*') {\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 }\n const direction = options?.direction ?? 'all'\n if (typeof id === 'string') {\n const idParts = id.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 !== undefined && 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 !== undefined && 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)\n ? (firstPartAddress)\n : (Object.entries(this.childAddressMap).find(([_, value]) => value === firstPartAddress)?.[0] as XyoAddress | 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 !== undefined && remainingParts !== '' ? wrapped?.resolve(remainingParts, options) : wrapped\n }\n return\n }\n }\n }\n return\n }\n }\n\n resolveIdentifier(id: ModuleIdentifier, _options?: ObjectFilterOptions): Promisable<XyoAddress | undefined> {\n // check if any of the modules have the id as an address\n if (Object.hasOwn(this.childAddressMap, id)) {\n return id as XyoAddress\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 XyoAddress | 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 []\n }\n}\n", "import type { AccountInstance } from '@xyo-network/sdk-protocol'\n\nimport { isArchivistModule } from '#archivist-model'\nimport { ArchivistWrapper } from '#archivist-wrapper'\nimport { isDivinerModule } from '#diviner-model'\nimport { DivinerWrapper } from '#diviner-wrapper'\nimport type { QueryableModule } from '#module-model'\nimport type { ModuleWrapper } from '#module-wrapper'\nimport { isNodeModule } from '#node-model'\nimport { NodeWrapper } from '#node-wrapper'\nimport { isSentinelModule } from '#sentinel-model'\nimport { SentinelWrapper } from '#sentinel-wrapper'\nimport { isWitnessModule } from '#witness-model'\nimport { WitnessWrapper } from '#witness-wrapper'\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport const wrapModuleWithType = (mod: QueryableModule, 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 new Error('Failed to wrap')\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"sourcesContent": ["import type { Promisable } from '@ariestools/sdk'\nimport {\n assertEx, exists, forget,\n} from '@ariestools/sdk'\nimport type {\n Payload, QueryBoundWitness, Schema, XyoAddress,\n} from '@xyo-network/sdk-protocol'\nimport { isPayloadOfSchemaType, QueryBoundWitnessWrapper } from '@xyo-network/sdk-protocol'\n\nimport type { ArchivistInstance } from '#archivist-model'\nimport { asArchivistInstance } from '#archivist-model'\nimport type {\n AttachableBridgeInstance,\n BridgeExposeOptions,\n BridgeModuleEventData,\n BridgeParams,\n BridgeQueries,\n BridgeUnexposeOptions,\n ModuleFilterPayload,\n} from '#bridge-model'\nimport {\n BridgeConfigSchema,\n BridgeConnectQuerySchema,\n BridgeDisconnectQuerySchema,\n BridgeExposeQuerySchema,\n BridgeUnexposeQuerySchema,\n ModuleFilterPayloadSchema,\n} from '#bridge-model'\nimport { AbstractModuleInstance } from '#module-abstract'\nimport type {\n AddressPayload,\n ModuleFilterOptions,\n ModuleIdentifier,\n ModuleInstance,\n ModuleQueryHandlerResult,\n ModuleResolverInstance,\n} from '#module-model'\nimport { AddressSchema } from '#module-model'\nimport {\n resolveAddressToInstance,\n resolvePathToAddress,\n transformModuleIdentifier,\n} from '#module-resolver'\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport abstract class AbstractBridge<TParams extends BridgeParams = BridgeParams>\n extends AbstractModuleInstance<TParams, BridgeModuleEventData>\n implements AttachableBridgeInstance<TParams, BridgeModuleEventData> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, BridgeConfigSchema]\n static override readonly defaultConfigSchema: Schema = BridgeConfigSchema\n\n protected _roots?: ModuleInstance[]\n\n override get allowNameResolution(): boolean {\n // we default to false here to prevent name collisions\n return this.params.allowNameResolution ?? true\n }\n\n get discoverRoots(): false | 'start' | 'lazy' {\n return this.config.client?.discoverRoots ?? (this.config.client !== undefined && 'start')\n }\n\n override get queries(): Schema[] {\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): 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<XyoAddress[]> {\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>(id: ModuleIdentifier, options?: ModuleFilterOptions<T>): Promise<T | undefined>\n\n override async resolve<T extends ModuleInstance = ModuleInstance>(\n id: 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 (id === '*') {\n const remainingDepth = (options.maxDepth ?? 5) - 1\n if (remainingDepth <= 0) return workingSet\n // eslint-disable-next-line @typescript-eslint/await-thenable\n const nested = await Promise.all(roots.map(mod => mod.resolve('*', { ...options, maxDepth: remainingDepth })))\n return [...workingSet, ...nested.flat()]\n }\n switch (typeof id) {\n case 'string': {\n const parts = id.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 default: {\n return\n }\n }\n }\n\n override async startHandler(): Promise<void> {\n if (this.discoverRoots === 'lazy') {\n forget(this.getRoots())\n } else if (this.discoverRoots === 'start') {\n await this.getRoots()\n }\n }\n\n async unexpose(id: ModuleIdentifier, options?: BridgeUnexposeOptions): Promise<XyoAddress[]> {\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 = 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 resolvedAddressesNested = await Promise.all(\n archivists.map(async (archivist) => {\n const parents = await this.parents()\n const addresses = await Promise.all(parents.map(parent => resolvePathToAddress(parent, archivist)))\n return addresses.filter(exists)\n }),\n )\n const resolvedAddresses = resolvedAddressesNested\n .flat()\n .filter(exists)\n const resolvedInstances = await Promise.all(resolvedAddresses.map(address => resolveAddressToInstance(this, address)))\n const resolved = resolvedInstances.filter(exists)\n return resolved.map(mod => asArchivistInstance(mod)).filter(exists)\n }\n\n abstract exposeHandler(address: XyoAddress, options?: BridgeExposeOptions): Promisable<ModuleInstance[]>\n\n abstract exposedHandler(): Promisable<XyoAddress[]>\n\n abstract getRoots(force?: boolean): Promise<ModuleInstance[]>\n\n abstract unexposeHandler(address: XyoAddress, options?: BridgeUnexposeOptions): Promisable<ModuleInstance[]>\n}\n", "import type { AccountInstance } from '@xyo-network/sdk-protocol'\n\nimport type { ArchivistInstance } from '#archivist-model'\nimport type {\n BridgeInstance, QuerySendFinishedEventArgs, QuerySendStartedEventArgs,\n} from '#bridge-model'\nimport type {\n ArchivingModuleConfig,\n CacheConfig,\n ModuleFilterOptions,\n ModuleIdentifier,\n ModuleInstance,\n} from '#module-model'\nimport { ObjectResolverPriority } from '#module-model'\nimport type { ModuleResolverParams } from '#module-resolver'\nimport { CompositeModuleResolver } from '#module-resolver'\n\nimport type { ModuleProxyParams } from './AbstractModuleProxy/index.ts'\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\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\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport abstract class AbstractBridgeModuleResolver<\n TParams extends BridgeModuleResolverParams = BridgeModuleResolverParams,\n TProxyParams extends ModuleProxyParams = ModuleProxyParams,\n> extends CompositeModuleResolver<TParams> {\n override get priority(): 0 {\n return ObjectResolverPriority.VeryLow\n }\n\n override async resolveHandler<T extends ModuleInstance = ModuleInstance>(\n id: ModuleIdentifier,\n options?: ModuleFilterOptions<T>,\n _params?: Partial<TProxyParams>,\n ): Promise<T[]> {\n return id === '*' ? [] : (await super.resolveHandler(id, options))\n }\n}\n", "import {\n asAddress, assertEx,\n exists,\n forget,\n isAddress, toSafeJsonString,\n} from '@ariestools/sdk'\nimport type {\n AccountInstance, ModuleError, ModuleManifestPayload, NodeManifestPayload,\n Payload, QueryBoundWitness, QueryPayload, Schema, XyoAddress,\n XyoQuantAddress,\n} from '@xyo-network/sdk-protocol'\nimport {\n Account, BoundWitnessWrapper, isPayloadOfSchemaType, isSchema, ModuleErrorSchema, ModuleManifestPayloadSchema, NodeManifestPayloadSchema, PayloadBuilder,\n QueryBoundWitnessWrapper, QuerySchema,\n} from '@xyo-network/sdk-protocol'\nimport { LRUCache } from 'lru-cache'\n\nimport type { ArchivistInstance } from '#archivist-model'\nimport type { QuerySendFinishedEventArgs, QuerySendStartedEventArgs } from '#bridge-model'\nimport { AbstractModuleInstance } from '#module-abstract'\nimport type {\n AddressPreviousHashPayload,\n AnyConfigSchema,\n ArchivingModuleConfig,\n AttachableModuleInstance,\n ModuleAddressQuery,\n ModuleConfig,\n ModuleEventData,\n ModuleInstance,\n ModuleManifestQuery,\n ModuleName,\n ModuleQueryHandlerResult,\n ModuleQueryResult,\n ModuleResolver,\n QueryableModule,\n QueryableModuleParams,\n} from '#module-model'\nimport {\n AddressPreviousHashSchema,\n DeadModuleError,\n ModuleAddressQuerySchema,\n ModuleConfigSchema,\n ModuleManifestQuerySchema,\n ModuleStateQuerySchema,\n} from '#module-model'\nimport { ModuleWrapper } from '#module-wrapper'\n\nimport { ModuleProxyResolver } from './ModuleProxyResolver.ts'\n\nconst collectChildAddresses = (manifest: NodeManifestPayload, result: Record<XyoAddress, ModuleName | null>): void => {\n const children = manifest.modules?.public ?? []\n for (const child of children) {\n if (typeof child !== 'object') {\n continue\n }\n const address = child.status?.address\n if (isAddress(address)) {\n result[address] = child.config.name ?? null\n }\n }\n}\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport interface ModuleProxyParams extends QueryableModuleParams\n{\n account: AccountInstance\n archiving?: ArchivingModuleConfig['archiving'] & { resolveArchivists: () => Promise<ArchivistInstance[]> }\n host: ModuleResolver\n manifest?: ModuleManifestPayload\n moduleAddress: XyoAddress\n onQuerySendFinished?: (args: Omit<QuerySendFinishedEventArgs, 'mod'>) => void\n onQuerySendStarted?: (args: Omit<QuerySendStartedEventArgs, 'mod'>) => void\n state?: Payload[]\n}\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport abstract class AbstractModuleProxy<\n TWrappedModule extends ModuleInstance = ModuleInstance,\n TParams extends ModuleProxyParams = ModuleProxyParams,\n>\n extends AbstractModuleInstance<TParams, TWrappedModule['eventData']>\n implements ModuleInstance<TParams, TWrappedModule['eventData']> {\n static readonly requiredQueries: string[] = [ModuleStateQuerySchema]\n\n protected _config?: TWrappedModule['config']\n protected _publicChildren?: ModuleInstance[]\n protected _state: Payload[] | undefined = undefined\n protected _stateInProcess = false\n\n private _spamTrap = new LRUCache<string, number>({\n max: 1000, ttl: 1000 * 60, ttlAutopurge: true,\n })\n\n override get address(): (Lowercase<string> & {\n readonly __hex: true\n } & {\n readonly __address: true\n }) | XyoQuantAddress {\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(): TWrappedModule['config'] & { schema: Schema } {\n return { ...this._config, schema: (this._config?.schema ?? ModuleConfigSchema) }\n }\n\n override get queries(): Schema[] {\n const queryPayloads = assertEx(this._state, () => 'Module state not found. Make sure proxy has been started').filter(item =>\n isPayloadOfSchemaType<QueryPayload>(QuerySchema)(item))\n return queryPayloads.map(payload => payload.query)\n }\n\n static hasRequiredQueries(mod: QueryableModule): boolean {\n return this.missingRequiredQueries(mod).length === 0\n }\n\n static override isAllowedSchema(schema: Schema): boolean {\n return isSchema(schema)\n }\n\n static missingRequiredQueries(mod: QueryableModule): string[] {\n const moduleQueries = mod.queries\n return (\n this.requiredQueries.map((query) => {\n return moduleQueries.includes(query) ? null : query\n })\n ).filter(exists)\n }\n\n static override async paramsHandler<T extends AttachableModuleInstance<QueryableModuleParams, ModuleEventData>>(\n inParams?: Partial<T['params']>,\n ): Promise<T['params']> {\n const superParams = await super.paramsHandler(inParams)\n return {\n ...superParams,\n account: (superParams.account === 'random') ? await Account.random() : superParams.account,\n addToResolvers: superParams.addToResolvers ?? true,\n }\n }\n\n async addressPreviousHash(): Promise<AddressPreviousHashPayload> {\n const queryPayload: ModuleAddressQuery = { schema: ModuleAddressQuerySchema }\n const queryResult = await this.sendQuery(queryPayload, undefined, this.account)\n const result: AddressPreviousHashPayload = assertEx(\n queryResult.find(\n isPayloadOfSchemaType<AddressPreviousHashPayload>(AddressPreviousHashSchema),\n ),\n () => 'Result did not include correct payload',\n )\n return result\n }\n\n childAddressByName(name: ModuleName): XyoAddress | undefined {\n const nodeManifests = this._state?.filter(isPayloadOfSchemaType<NodeManifestPayload>(NodeManifestPayloadSchema))\n const childPairs = nodeManifests?.flatMap(nodeManifest => Object.entries(nodeManifest.status?.children ?? {}) as [XyoAddress, ModuleName | null][])\n return asAddress(childPairs?.find(([_, childName]) => childName === name)?.[0])\n }\n\n async childAddressMap(): Promise<Record<XyoAddress, ModuleName | null>> {\n let nodeManifests: NodeManifestPayload[] | undefined\n = isPayloadOfSchemaType<NodeManifestPayload>(NodeManifestPayloadSchema)(this.params.manifest) ? [this.params.manifest] : undefined\n const result: Record<XyoAddress, ModuleName | null> = {}\n if (nodeManifests === undefined) {\n const state = await this.state()\n nodeManifests = state.filter(isPayloadOfSchemaType<NodeManifestPayload>(NodeManifestPayloadSchema))\n }\n const manifests = nodeManifests ?? []\n for (const manifest of manifests) {\n collectChildAddresses(manifest, result)\n }\n return result\n }\n\n override async createHandler(): Promise<void> {\n await super.createHandler()\n let manifest: ModuleManifestPayload | NodeManifestPayload | undefined = this.params.manifest\n if (!manifest) {\n const state = await this.state()\n const manifestPayload = state.find(\n payload => isPayloadOfSchemaType<NodeManifestPayload>(NodeManifestPayloadSchema)(payload)\n || isPayloadOfSchemaType<ModuleManifestPayload>(ModuleManifestPayloadSchema)(payload),\n )\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 }\n\n override async manifest(maxDepth?: number): Promise<ModuleManifestPayload> {\n const queryPayload: ModuleManifestQuery = { schema: ModuleManifestQuerySchema, ...(maxDepth !== undefined && { maxDepth }) }\n const queryResult = await this.sendQuery(queryPayload)\n return queryResult[0] as ModuleManifestPayload\n }\n\n override async moduleAddress(): Promise<AddressPreviousHashPayload[]> {\n const queryPayload: ModuleAddressQuery = { schema: ModuleAddressQuerySchema }\n return (await this.sendQuery(queryPayload))\n }\n\n override async previousHash(): Promise<string | undefined> {\n const queryPayload: ModuleAddressQuery = { schema: ModuleAddressQuerySchema }\n const queryResult = await this.sendQuery(queryPayload)\n return (queryResult.pop() as AddressPreviousHashPayload).previousHash\n }\n\n override async publicChildren(): Promise<ModuleInstance<QueryableModuleParams<AnyConfigSchema<ModuleConfig>>, ModuleEventData<object>>[]> {\n 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?.({\n payloads, query, result, status: 'success',\n })\n if (this.archiving && this.isAllowedArchivingQuery(query.schema)) {\n forget(this.storeToArchivists(result.flat()))\n }\n forget(this.emit('moduleQueried', {\n mod: this, payloads, query, result,\n }))\n return result\n } catch (ex) {\n this.params.onQuerySendFinished?.({\n payloads, query, status: 'failure',\n })\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 = 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 true\n }\n\n override async resolveArchivingArchivists(): Promise<ArchivistInstance[]> {\n return (await this.params.archiving?.resolveArchivists()) ?? []\n }\n\n setConfig(config: TWrappedModule['params']['config']): void {\n this._config = config\n }\n\n setState(state: Payload[]): void {\n this._state = state\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, await Account.random())\n this._state = await wrapper.state()\n }\n return this._state\n }\n\n protected filterErrors(result: ModuleQueryResult): ModuleError[] {\n const wrapper = BoundWitnessWrapper.wrap(result[0], result[1])\n return wrapper.payloadsBySchema<ModuleError>(ModuleErrorSchema)\n }\n\n protected override async startHandler(): Promise<void> {\n return await super.startHandler()\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 ${toSafeJsonString(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 type { Promisable } from '@ariestools/sdk'\nimport { assertEx, exists } from '@ariestools/sdk'\nimport type {\n ModuleManifestPayload, XyoAddress, XyoQuantAddress,\n} from '@xyo-network/sdk-protocol'\nimport { Account } from '@xyo-network/sdk-protocol'\n\nimport type {\n AnyConfigSchema,\n ModuleConfig,\n ModuleEventData,\n ModuleFilterOptions,\n ModuleIdentifier,\n ModuleIdentifierTransformer,\n ModuleInstance,\n ModuleName,\n ModuleResolver,\n ModuleResolverInstance,\n ObjectFilterOptions,\n QueryableModuleParams,\n} from '#module-model'\nimport { ObjectResolverPriority } from '#module-model'\nimport { CompositeModuleResolver } from '#module-resolver'\n\nimport { wrapModuleWithType } from '../wrapModuleWithType.ts'\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport interface ModuleProxyResolverOptions {\n childAddressMap: Record<XyoAddress, ModuleName | null>\n childManifests?: Record<XyoAddress, ModuleManifestPayload>\n childStates?: Record<XyoAddress, ModuleManifestPayload>\n host: ModuleResolver\n mod: ModuleInstance\n moduleIdentifierTransformers?: ModuleIdentifierTransformer[]\n}\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport class ModuleProxyResolver<T extends ModuleProxyResolverOptions = ModuleProxyResolverOptions> implements ModuleResolverInstance {\n private downResolver: CompositeModuleResolver\n private options: T\n\n constructor(options: T) {\n this.options = options\n this.downResolver = new CompositeModuleResolver({ moduleIdentifierTransformers: options.moduleIdentifierTransformers, root: this.root })\n }\n\n get priority(): 0 {\n return ObjectResolverPriority.VeryLow\n }\n\n get root(): ModuleInstance {\n return this.options.mod\n }\n\n protected get childAddressMap(): Record<(Lowercase<string> & {\n readonly __hex: true\n } & {\n readonly __address: true\n }) | XyoQuantAddress, string | null> {\n return this.options.childAddressMap\n }\n\n protected get host(): ModuleResolver<ModuleInstance<QueryableModuleParams<AnyConfigSchema<ModuleConfig>>, ModuleEventData<object>>> {\n return this.options.host\n }\n\n protected get mod(): ModuleInstance {\n return this.options.mod\n }\n\n addResolver(_resolver: ModuleResolver): this {\n throw new Error('Not supported')\n }\n\n childManifest(address: XyoAddress): ModuleManifestPayload | undefined {\n return this.options.childManifests?.[address]\n }\n\n childState(address: XyoAddress): ModuleManifestPayload | undefined {\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>(id: ModuleIdentifier, options?: ModuleFilterOptions<T>): Promise<T | undefined>\n // eslint-disable-next-line complexity\n async resolve<T extends ModuleInstance = ModuleInstance>(\n id: ModuleIdentifier = '*',\n options?: ModuleFilterOptions<T>,\n ): Promise<T | T[] | undefined> {\n // console.log(`childAddressMap: ${toSafeJsonString(this.childAddressMap, 10)}`)\n if (id === '*') {\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 }\n if (typeof id !== 'string') {\n return\n }\n\n const direction = options?.direction ?? 'all'\n const idParts = id.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 !== undefined && 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 !== undefined && 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)\n ? (firstPartAddress)\n : (Object.entries(this.childAddressMap).find(([_, value]) => value === firstPartAddress)?.[0] as XyoAddress | 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 !== undefined && remainingParts !== '' ? wrapped?.resolve(remainingParts, options) : wrapped\n }\n return\n }\n }\n }\n return\n }\n\n resolveIdentifier(id: ModuleIdentifier, _options?: ObjectFilterOptions): Promisable<XyoAddress | undefined> {\n // check if any of the modules have the id as an address\n if (Object.hasOwn(this.childAddressMap, id)) {\n return id as XyoAddress\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 XyoAddress | 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 []\n }\n}\n", "import type { AccountInstance } from '@xyo-network/sdk-protocol'\n\nimport { isArchivistModule } from '#archivist-model'\nimport { ArchivistWrapper } from '#archivist-wrapper'\nimport { isDivinerModule } from '#diviner-model'\nimport { DivinerWrapper } from '#diviner-wrapper'\nimport type { QueryableModule } from '#module-model'\nimport type { ModuleWrapper } from '#module-wrapper'\nimport { isNodeModule } from '#node-model'\nimport { NodeWrapper } from '#node-wrapper'\nimport { isSentinelModule } from '#sentinel-model'\nimport { SentinelWrapper } from '#sentinel-wrapper'\nimport { isWitnessModule } from '#witness-model'\nimport { WitnessWrapper } from '#witness-wrapper'\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport const wrapModuleWithType = (mod: QueryableModule, 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 new Error('Failed to wrap')\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["assertEx", "exists", "forget", "Account", "isPayloadOfSchemaType", "QueryBoundWitnessWrapper", "AbstractModuleInstance", "assertEx", "exists", "ObjectResolverPriority", "CompositeModuleResolver", "CompositeModuleResolver", "ObjectResolverPriority", "exists", "assertEx", "AbstractModuleInstance", "assertEx", "isPayloadOfSchemaType", "exists", "Account", "forget", "QueryBoundWitnessWrapper"]
|
|
7
7
|
}
|
|
@@ -190,24 +190,25 @@ var HttpBridgeModuleResolver = class extends AbstractBridgeModuleResolver {
|
|
|
190
190
|
const error = ex;
|
|
191
191
|
this.logger?.error(error.message);
|
|
192
192
|
}
|
|
193
|
-
if (isDefined(proxy)) {
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
const config = assertEx(
|
|
200
|
-
state.find((payload) => payload.schema === configSchema),
|
|
201
|
-
() => "Unable to locate config"
|
|
202
|
-
);
|
|
203
|
-
proxy.setConfig(config);
|
|
204
|
-
this.logger?.log(`created HttpProxy [${firstPart}] ${proxy.id}`);
|
|
205
|
-
await proxy.start?.();
|
|
206
|
-
const wrapped = wrapModuleWithType(proxy, account);
|
|
207
|
-
assertEx(asModuleInstance(wrapped, {}), () => `Failed to asModuleInstance [${id}]`);
|
|
208
|
-
this._resolvedCache.set(wrapped.address, wrapped);
|
|
209
|
-
return wrapped;
|
|
193
|
+
if (!isDefined(proxy)) {
|
|
194
|
+
return;
|
|
195
|
+
}
|
|
196
|
+
if (!state) {
|
|
197
|
+
this._resolvedCache.set(firstPart, NotFoundModule);
|
|
198
|
+
return;
|
|
210
199
|
}
|
|
200
|
+
const configSchema = state.find((payload) => payload.schema === ConfigSchema)?.config;
|
|
201
|
+
const config = assertEx(
|
|
202
|
+
state.find((payload) => payload.schema === configSchema),
|
|
203
|
+
() => "Unable to locate config"
|
|
204
|
+
);
|
|
205
|
+
proxy.setConfig(config);
|
|
206
|
+
this.logger?.log(`created HttpProxy [${firstPart}] ${proxy.id}`);
|
|
207
|
+
await proxy.start?.();
|
|
208
|
+
const wrapped = wrapModuleWithType(proxy, account);
|
|
209
|
+
assertEx(asModuleInstance(wrapped, {}), () => `Failed to asModuleInstance [${id}]`);
|
|
210
|
+
this._resolvedCache.set(wrapped.address, wrapped);
|
|
211
|
+
return wrapped;
|
|
211
212
|
});
|
|
212
213
|
const result = remainderParts.length > 0 ? await instance?.resolve(remainderParts, options) : instance;
|
|
213
214
|
return result ? [result] : [];
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/modules/bridge-http/HttpBridge.ts", "../../src/modules/bridge-http/HttpBridgeConfig.ts", "../../src/modules/bridge-http/HttpBridgeModuleResolver.ts", "../../src/modules/bridge-http/ModuleProxy/ModuleProxy.ts"],
|
|
4
|
-
"sourcesContent": ["import type { Promisable } from '@ariestools/sdk'\nimport {\n assertEx,\n exists,\n FetchClientError,\n FetchJsonClient,\n forget,\n toSafeJsonString,\n} from '@ariestools/sdk'\nimport type {\n ModuleManifestPayload, NodeManifestPayload, Payload, QueryBoundWitness, Schema, XyoAddress,\n} from '@xyo-network/sdk-protocol'\nimport { isPayloadOfSchemaType, NodeManifestPayloadSchema } from '@xyo-network/sdk-protocol'\nimport { Mutex, Semaphore } from 'async-mutex'\nimport { LRUCache } from 'lru-cache'\n\nimport { AbstractBridge } from '#bridge-abstract'\nimport type {\n BridgeExposeOptions,\n BridgeModule,\n BridgeParams,\n BridgeUnexposeOptions,\n QuerySendFinishedEventArgs,\n QuerySendStartedEventArgs,\n} from '#bridge-model'\nimport type {\n AnyConfigSchema,\n ModuleInstance,\n ModuleQueryResult,\n ModuleResolverInstance,\n ModuleStateQuery,\n} from '#module-model'\nimport {\n creatableModule,\n ModuleStateQuerySchema,\n} from '#module-model'\nimport { asAttachableNodeInstance } from '#node-model'\n\nimport type { HttpBridgeConfig } from './HttpBridgeConfig.ts'\nimport { HttpBridgeConfigSchema } from './HttpBridgeConfig.ts'\nimport { HttpBridgeModuleResolver } from './HttpBridgeModuleResolver.ts'\nimport type { BridgeQuerySender } from './ModuleProxy/index.ts'\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport interface HttpBridgeParams extends BridgeParams<AnyConfigSchema<HttpBridgeConfig>> {\n fetchClient?: FetchJsonClient\n}\n\ninterface HttpQueryEnvelope<T> {\n data?: T\n errors?: unknown[]\n}\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\n@creatableModule()\nexport class HttpBridge<TParams extends HttpBridgeParams> extends AbstractBridge<TParams> implements BridgeModule<TParams>, BridgeQuerySender {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, HttpBridgeConfigSchema]\n static override readonly defaultConfigSchema: Schema = HttpBridgeConfigSchema\n static readonly defaultFailureRetryTime: number = 1000 * 60\n static readonly defaultMaxConnections = 4\n static readonly defaultMaxPayloadSizeWarning: number = 256 * 256\n static readonly fetchClient: FetchJsonClient = new FetchJsonClient()\n static readonly maxFailureCacheSize = 1000\n\n private _discoverRootsMutex = new Mutex()\n private _failureTimeCache = new LRUCache<XyoAddress, number>({ max: HttpBridge.maxFailureCacheSize })\n private _fetchClient?: FetchJsonClient\n private _querySemaphore?: Semaphore\n private _resolver?: HttpBridgeModuleResolver\n\n get clientUrl(): string {\n return assertEx(this.config.client?.url, () => 'No Url Set')\n }\n\n get failureRetryTime(): number {\n return this.config.failureRetryTime ?? HttpBridge.defaultFailureRetryTime\n }\n\n get fetchClient(): FetchJsonClient {\n this._fetchClient ??= this.params.fetchClient ?? HttpBridge.fetchClient\n return this._fetchClient\n }\n\n get maxConnections(): number {\n return this.config.maxConnections ?? HttpBridge.defaultMaxConnections\n }\n\n get maxPayloadSizeWarning(): number {\n return this.config.maxPayloadSizeWarning ?? HttpBridge.defaultMaxPayloadSizeWarning\n }\n\n get querySemaphore(): Semaphore {\n this._querySemaphore ??= new Semaphore(this.maxConnections)\n return this._querySemaphore\n }\n\n override get resolver(): HttpBridgeModuleResolver {\n this._resolver\n ??= new HttpBridgeModuleResolver({\n additionalSigners: this.additionalSigners,\n archiving: { ...this.archiving, resolveArchivists: this.resolveArchivingArchivists.bind(this) },\n bridge: this,\n onQuerySendFinished: (args: Omit<QuerySendFinishedEventArgs, 'mod'>) => {\n forget(this.emit('querySendFinished', { mod: this, ...args }))\n },\n onQuerySendStarted: (args: Omit<QuerySendStartedEventArgs, 'mod'>) => {\n forget(this.emit('querySendStarted', { mod: this, ...args }))\n },\n querySender: this,\n root: this,\n rootUrl: this.clientUrl,\n wrapperAccount: this.account,\n })\n return this._resolver\n }\n\n override exposeHandler(_id: string, _options?: BridgeExposeOptions): Promisable<ModuleInstance[]> {\n throw new Error('Unsupported')\n }\n\n override exposedHandler(): Promisable<XyoAddress[]> {\n throw new Error('Unsupported')\n }\n\n async getRoots(force?: boolean): Promise<ModuleInstance[]> {\n return await this._discoverRootsMutex.runExclusive(async () => {\n if (force === true || this._roots === undefined) {\n const state = await this.getRootState()\n this.logger?.debug(`HttpBridge:discoverRoots.state [${state?.length}]`)\n const nodeManifest = state?.find(isPayloadOfSchemaType<NodeManifestPayload>(NodeManifestPayloadSchema))\n if (nodeManifest) {\n const rootModules = await this.resolveRootNode(nodeManifest)\n const mods = rootModules.filter(exists)\n this.logger?.debug(`HttpBridge:discoverRoots [${mods.length}]`)\n this._roots = mods\n } else {\n this._roots = []\n }\n }\n return this._roots\n })\n }\n\n moduleUrl(address: XyoAddress): URL {\n return new URL(address, this.clientUrl)\n }\n\n async sendBridgeQuery<TOut extends Payload = Payload, TQuery extends QueryBoundWitness = QueryBoundWitness, TIn extends Payload = Payload>(\n targetAddress: XyoAddress,\n query: TQuery,\n payloads?: TIn[],\n ): Promise<ModuleQueryResult<TOut>> {\n const lastFailureTime = this._failureTimeCache.get(targetAddress)\n if (lastFailureTime !== undefined) {\n const now = Date.now()\n const timeSincePreviousFailure = now - lastFailureTime\n if (timeSincePreviousFailure > this.failureRetryTime) {\n throw new Error(`target module failed recently [${targetAddress}] [${timeSincePreviousFailure}ms ago]`)\n }\n this._failureTimeCache.delete(targetAddress)\n }\n try {\n await this.querySemaphore.acquire()\n const payloadSize = JSON.stringify([query, payloads]).length\n if (payloadSize > this.maxPayloadSizeWarning) {\n this.logger?.warn(\n `Large targetQuery being sent: ${payloadSize} bytes [${this.address}][${targetAddress}] [${query.schema}] [${payloads?.length ?? 0}]`,\n )\n }\n const moduleUrl = this.moduleUrl(targetAddress).href\n const result = await this.fetchClient.post<HttpQueryEnvelope<ModuleQueryResult<TOut>>>(moduleUrl, [query, payloads])\n if (result.status === 404) {\n throw new Error(`target module not found [${moduleUrl}] [${result.status}]`)\n }\n if (result.status >= 400) {\n this.logger?.error(`targetQuery failed [${moduleUrl}]`)\n throw new Error(`targetQuery failed [${moduleUrl}] [${result.status}]`)\n }\n return assertEx(result.data?.data, () => `targetQuery returned no data [${moduleUrl}]`)\n } catch (ex) {\n const error = ex instanceof FetchClientError ? ex : (ex as Error)\n this.logger?.error(`Error: ${toSafeJsonString(error)}`)\n throw error\n } finally {\n this.querySemaphore.release()\n }\n }\n\n override unexposeHandler(_id: string, _options?: BridgeUnexposeOptions): Promisable<ModuleInstance[]> {\n throw new Error('Unsupported')\n }\n\n private async getRootState() {\n const queryPayload: ModuleStateQuery = { schema: ModuleStateQuerySchema }\n const boundQuery = await this.bindQuery(queryPayload)\n try {\n const response = await this.fetchClient.post<HttpQueryEnvelope<ModuleQueryResult>>(this.clientUrl, boundQuery)\n if (response.status === 404) {\n return []\n }\n const [, payloads, errors] = response.data?.data ?? [undefined, [], []]\n if (errors.length > 0) {\n throw new Error(`getRootState failed: ${JSON.stringify(errors, null, 2)}`)\n }\n return payloads\n } catch (ex) {\n const error = ex as Error\n this.logger?.warn(`Unable to connect to remote node: ${error.message} [${this.clientUrl}]`)\n }\n }\n\n private async resolveRootNode(nodeManifest: ModuleManifestPayload): Promise<ModuleInstance[]> {\n const resolvedRoots = await this.resolver.resolveHandler(\n assertEx(nodeManifest.status?.address, () => 'Root has no address'),\n undefined,\n { manifest: nodeManifest },\n )\n const rootModule = assertEx(\n resolvedRoots.at(0),\n () => `Root not found [${nodeManifest.status?.address}]`,\n )\n assertEx(rootModule.constructor.name !== 'HttpModuleProxy', () => 'rootModule is not a Wrapper')\n const rootNode = asAttachableNodeInstance(rootModule, 'Root modules is not a node')\n if (rootNode) {\n this.logger?.debug(`rootNode: ${rootNode.id}`)\n this.downResolver.addResolver(rootNode as unknown as ModuleResolverInstance)\n return [rootNode]\n }\n return []\n }\n}\n", "import type { EmptyObject } from '@ariestools/sdk'\nimport {\n zodAsFactory, zodIsFactory, zodToFactory,\n} from '@ariestools/sdk'\nimport type { Schema } from '@xyo-network/sdk-protocol'\nimport { asSchema } from '@xyo-network/sdk-protocol'\nimport * as z from 'zod/mini'\n\nimport type { BridgeClientConfig, BridgeConfig } from '#bridge-model'\nimport { BridgeConfigZod } from '#bridge-model'\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport const HttpBridgeConfigSchema: 'network.xyo.bridge.http.config' & {\n readonly __schema: true\n} = asSchema('network.xyo.bridge.http.config', true)\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport type HttpBridgeConfigSchema = typeof HttpBridgeConfigSchema\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport const HttpBridgeConfigZod: z.ZodMiniObject<\n Omit<(typeof BridgeConfigZod)['shape'], 'schema' | 'client' | 'host'> & {\n client: z.ZodMiniOptional<z.ZodMiniCustom<BridgeClientConfig & { url: string }, BridgeClientConfig & { url: string }>>\n failureRetryTime: z.ZodMiniOptional<z.ZodMiniNumber<number>>\n failureTimeCacheMax: z.ZodMiniOptional<z.ZodMiniNumber<number>>\n host: z.ZodMiniOptional<z.ZodMiniCustom<{ port: number }, { port: number }>>\n maxConnections: z.ZodMiniOptional<z.ZodMiniNumber<number>>\n maxPayloadSizeWarning: z.ZodMiniOptional<z.ZodMiniNumber<number>>\n schema: z.ZodMiniLiteral<HttpBridgeConfigSchema>\n },\n z.core.$strip\n> = z.extend(BridgeConfigZod, {\n client: z.optional(z.custom<BridgeClientConfig & { url: string }>()),\n failureRetryTime: z.optional(z.number()),\n failureTimeCacheMax: z.optional(z.number()),\n host: z.optional(z.custom<{ port: number }>()),\n maxConnections: z.optional(z.number()),\n maxPayloadSizeWarning: z.optional(z.number()),\n schema: z.literal(HttpBridgeConfigSchema),\n})\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport type HttpBridgeConfigBase = z.infer<typeof HttpBridgeConfigZod>\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport const isHttpBridgeConfig: ReturnType<typeof zodIsFactory<HttpBridgeConfigBase>> = zodIsFactory(HttpBridgeConfigZod)\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport const asHttpBridgeConfig: ReturnType<typeof zodAsFactory<HttpBridgeConfigBase>> = zodAsFactory(HttpBridgeConfigZod, 'asHttpBridgeConfig')\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport const toHttpBridgeConfig: ReturnType<typeof zodToFactory<HttpBridgeConfigBase>> = zodToFactory(HttpBridgeConfigZod, 'toHttpBridgeConfig')\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport type HttpBridgeConfig<TConfig extends EmptyObject = EmptyObject, TSchema extends string | void = void> = BridgeConfig<\n {\n client?: BridgeConfig['client'] & {\n url: string\n }\n failureRetryTime?: number\n failureTimeCacheMax?: number\n host?: {\n port: number\n }\n maxConnections?: number\n maxPayloadSizeWarning?: number\n schema: HttpBridgeConfigSchema\n } & TConfig,\n TSchema extends Schema ? TSchema : HttpBridgeConfigSchema\n>\n", "import type { CreatableName } from '@ariestools/sdk'\nimport {\n assertEx, isAddress, isDefined,\n} from '@ariestools/sdk'\nimport type {\n ConfigPayload, Payload, XyoAddress,\n XyoQuantAddress,\n} from '@xyo-network/sdk-protocol'\nimport { Account, ConfigSchema } from '@xyo-network/sdk-protocol'\nimport { Mutex } from 'async-mutex'\nimport { LRUCache } from 'lru-cache'\n\nimport type { BridgeModuleResolverParams } from '#bridge-abstract'\nimport { AbstractBridgeModuleResolver, wrapModuleWithType } from '#bridge-abstract'\nimport type {\n AnyConfigSchema,\n ModuleConfig,\n ModuleEventData,\n ModuleFilterOptions,\n ModuleIdentifier,\n ModuleInstance,\n QueryableModuleParams,\n} from '#module-model'\nimport {\n asModuleInstance,\n isModuleInstance,\n ModuleConfigSchema,\n} from '#module-model'\nimport { ResolveHelper } from '#module-resolver'\n\nimport type { BridgeQuerySender, HttpModuleProxyParams } from './ModuleProxy/index.ts'\nimport { HttpModuleProxy } from './ModuleProxy/index.ts'\n\nconst NotFoundModule = { notFound: true }\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport interface HttpBridgeModuleResolverParams extends BridgeModuleResolverParams {\n querySender: BridgeQuerySender\n rootUrl: string\n}\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport class HttpBridgeModuleResolver<\n T extends HttpBridgeModuleResolverParams = HttpBridgeModuleResolverParams,\n> extends AbstractBridgeModuleResolver<T> {\n protected _resolvedCache: LRUCache<(Lowercase<string> & {\n readonly __hex: true\n } & {\n readonly __address: true\n }) | XyoQuantAddress, ModuleInstance<QueryableModuleParams<AnyConfigSchema<ModuleConfig>>, ModuleEventData<object>> | {\n notFound: boolean\n }, unknown> = new LRUCache<XyoAddress, ModuleInstance | typeof NotFoundModule>({ max: 1000 })\n\n protected _resolvedCacheMutex: Mutex = new Mutex()\n\n get querySender(): BridgeQuerySender {\n return this.params.querySender\n }\n\n moduleUrl(address: XyoAddress): URL {\n return new URL(address, this.params.rootUrl)\n }\n\n override async resolveHandler<T extends ModuleInstance = ModuleInstance>(\n id: ModuleIdentifier,\n options?: ModuleFilterOptions<T>,\n params?: Partial<HttpModuleProxyParams>,\n ): Promise<T[]> {\n const parentResult = await super.resolveHandler(id, options)\n if (parentResult.length > 0) {\n return parentResult\n }\n const idParts = id.split(':')\n const untransformedFirstPart = assertEx(idParts.shift(), () => 'Missing module identifier')\n const firstPart = await ResolveHelper.transformModuleIdentifier(untransformedFirstPart)\n assertEx(isAddress(firstPart), () => `Invalid module address: ${firstPart}`)\n const remainderParts = idParts.join(':')\n const instance: T | undefined = await this._resolvedCacheMutex.runExclusive(async () => {\n const cachedMod = this._resolvedCache.get(firstPart as XyoAddress)\n if (cachedMod) {\n if (isModuleInstance(cachedMod)) {\n const result = idParts.length === 0 ? cachedMod : cachedMod.resolve(remainderParts, { ...options, maxDepth: (options?.maxDepth ?? 5) - 1 })\n return result as T\n }\n // return cached 404\n return\n }\n const account = await Account.random()\n const finalParams: HttpModuleProxyParams = {\n name: 'HttpBridgeModuleResolver' as CreatableName,\n account,\n archiving: this.params.archiving,\n config: { schema: ModuleConfigSchema },\n host: this,\n moduleAddress: firstPart as XyoAddress,\n onQuerySendFinished: this.params.onQuerySendFinished,\n onQuerySendStarted: this.params.onQuerySendStarted,\n querySender: this.params.querySender,\n ...params,\n }\n\n this.logger?.debug(`creating HttpProxy [${firstPart}] ${id}`)\n\n let proxy: HttpModuleProxy | undefined\n\n let state: Payload[] | undefined\n\n try {\n proxy = await HttpModuleProxy.create(finalParams)\n state = await proxy.state()\n } catch (ex) {\n const error = ex as Error\n this.logger?.error(error.message)\n }\n\n if (isDefined(proxy)) {\n if (!state) {\n // cache the fact that it was not found\n this._resolvedCache.set(firstPart as XyoAddress, NotFoundModule)\n return\n }\n\n const configSchema = (state.find(payload => payload.schema === ConfigSchema) as ConfigPayload | undefined)?.config\n const config = assertEx(\n state.find(payload => payload.schema === configSchema),\n () => 'Unable to locate config',\n ) as ModuleConfig\n proxy.setConfig(config)\n\n this.logger?.log(`created HttpProxy [${firstPart}] ${proxy.id}`)\n\n await proxy.start?.()\n const wrapped = wrapModuleWithType(proxy, account) as unknown as T\n assertEx(asModuleInstance<T>(wrapped, {}), () => `Failed to asModuleInstance [${id}]`)\n this._resolvedCache.set(wrapped.address, wrapped)\n return wrapped\n }\n })\n const result = remainderParts.length > 0 ? await instance?.resolve(remainderParts, options) : instance\n return result ? [result] : []\n }\n}\n", "import {\n exists, forget,\n isAddress, isString,\n} from '@ariestools/sdk'\nimport type {\n Payload, QueryBoundWitness, XyoAddress,\n} from '@xyo-network/sdk-protocol'\n\nimport type { ModuleProxyParams } from '#bridge-abstract'\nimport { AbstractModuleProxy } from '#bridge-abstract'\nimport type {\n AttachableModuleInstance,\n ModuleFilterOptions,\n ModuleIdentifier,\n ModuleInstance,\n ModuleQueryResult,\n} from '#module-model'\nimport { creatableModule } from '#module-model'\nimport type { ResolveHelperConfig } from '#module-resolver'\nimport { ResolveHelper } from '#module-resolver'\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport interface BridgeQuerySender {\n sendBridgeQuery: <TOut extends Payload = Payload, TQuery extends QueryBoundWitness = QueryBoundWitness, TIn extends Payload = Payload>(\n targetAddress: XyoAddress,\n query: TQuery,\n payloads?: TIn[],\n ) => Promise<ModuleQueryResult<TOut>>\n}\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport type HttpModuleProxyParams = ModuleProxyParams & {\n querySender: BridgeQuerySender\n}\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\n@creatableModule()\nexport class HttpModuleProxy<\n TWrappedModule extends ModuleInstance = ModuleInstance,\n TParams extends Omit<HttpModuleProxyParams, 'config'> & { config: TWrappedModule['config'] } = Omit<HttpModuleProxyParams, 'config'> & {\n config: TWrappedModule['config']\n },\n>\n extends AbstractModuleProxy<TWrappedModule, TParams>\n implements AttachableModuleInstance<TParams, TWrappedModule['eventData']> {\n async proxyQueryHandler<T extends QueryBoundWitness = QueryBoundWitness>(query: T, payloads: Payload[] = []): Promise<ModuleQueryResult> {\n if (this.archiving && this.isAllowedArchivingQuery(query.schema)) {\n forget(this.storeToArchivists([query, ...(payloads ?? [])]))\n }\n const result = await this.params.querySender.sendBridgeQuery(this.params.moduleAddress, query, payloads)\n if (this.archiving && this.isAllowedArchivingQuery(query.schema)) {\n forget(this.storeToArchivists(result.flat()))\n }\n return result\n }\n\n override async publicChildren(): Promise<ModuleInstance[]> {\n const children = await Promise.all(\n Object.values(await this.childAddressMap())\n .filter(exists)\n .map(address => this.resolve(address)),\n )\n return children.filter(exists)\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>(id: ModuleIdentifier, options?: ModuleFilterOptions<T>): Promise<T | undefined>\n override async resolve<T extends ModuleInstance = ModuleInstance>(\n id: ModuleIdentifier = '*',\n options: ModuleFilterOptions<T> = {},\n ): Promise<T | T[] | undefined> {\n if (id === '*') {\n return [...(await this.publicChildren()), await this.params.host.resolve(this.address)] as T[]\n }\n const config: ResolveHelperConfig = {\n address: this.address,\n dead: this.dead,\n downResolver: this.downResolver,\n logger: this.logger,\n mod: this,\n transformers: this.moduleIdentifierTransformers,\n upResolver: this.upResolver,\n }\n switch (typeof id) {\n case 'string': {\n const parts = id.split(':')\n const first = parts.shift()\n if (isString(first)) {\n const remainingPath = parts.length > 0 ? parts.join(':') : undefined\n const address\n = isAddress(first)\n ? first\n : this.id === first\n ? this.address\n : this.childAddressByName(first)\n if (!isAddress(address)) return undefined\n const firstInstance = (await this.params.host.resolve(address))\n return (isString(remainingPath) ? await firstInstance?.resolve(remainingPath) : firstInstance) as T | undefined\n }\n return undefined\n }\n default: {\n const resolved = await ResolveHelper.resolve(config, id, options)\n return resolved.filter(mod => mod.address !== this.address)\n }\n }\n }\n}\n"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["import type { Promisable } from '@ariestools/sdk'\nimport {\n assertEx,\n exists,\n FetchClientError,\n FetchJsonClient,\n forget,\n toSafeJsonString,\n} from '@ariestools/sdk'\nimport type {\n ModuleManifestPayload, NodeManifestPayload, Payload, QueryBoundWitness, Schema, XyoAddress,\n} from '@xyo-network/sdk-protocol'\nimport { isPayloadOfSchemaType, NodeManifestPayloadSchema } from '@xyo-network/sdk-protocol'\nimport { Mutex, Semaphore } from 'async-mutex'\nimport { LRUCache } from 'lru-cache'\n\nimport { AbstractBridge } from '#bridge-abstract'\nimport type {\n BridgeExposeOptions,\n BridgeModule,\n BridgeParams,\n BridgeUnexposeOptions,\n QuerySendFinishedEventArgs,\n QuerySendStartedEventArgs,\n} from '#bridge-model'\nimport type {\n AnyConfigSchema,\n ModuleInstance,\n ModuleQueryResult,\n ModuleResolverInstance,\n ModuleStateQuery,\n} from '#module-model'\nimport {\n creatableModule,\n ModuleStateQuerySchema,\n} from '#module-model'\nimport { asAttachableNodeInstance } from '#node-model'\n\nimport type { HttpBridgeConfig } from './HttpBridgeConfig.ts'\nimport { HttpBridgeConfigSchema } from './HttpBridgeConfig.ts'\nimport { HttpBridgeModuleResolver } from './HttpBridgeModuleResolver.ts'\nimport type { BridgeQuerySender } from './ModuleProxy/index.ts'\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport interface HttpBridgeParams extends BridgeParams<AnyConfigSchema<HttpBridgeConfig>> {\n fetchClient?: FetchJsonClient\n}\n\ninterface HttpQueryEnvelope<T> {\n data?: T\n errors?: unknown[]\n}\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\n@creatableModule()\nexport class HttpBridge<TParams extends HttpBridgeParams> extends AbstractBridge<TParams> implements BridgeModule<TParams>, BridgeQuerySender {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, HttpBridgeConfigSchema]\n static override readonly defaultConfigSchema: Schema = HttpBridgeConfigSchema\n static readonly defaultFailureRetryTime: number = 1000 * 60\n static readonly defaultMaxConnections = 4\n static readonly defaultMaxPayloadSizeWarning: number = 256 * 256\n static readonly fetchClient: FetchJsonClient = new FetchJsonClient()\n static readonly maxFailureCacheSize = 1000\n\n private _discoverRootsMutex = new Mutex()\n private _failureTimeCache = new LRUCache<XyoAddress, number>({ max: HttpBridge.maxFailureCacheSize })\n private _fetchClient?: FetchJsonClient\n private _querySemaphore?: Semaphore\n private _resolver?: HttpBridgeModuleResolver\n\n get clientUrl(): string {\n return assertEx(this.config.client?.url, () => 'No Url Set')\n }\n\n get failureRetryTime(): number {\n return this.config.failureRetryTime ?? HttpBridge.defaultFailureRetryTime\n }\n\n get fetchClient(): FetchJsonClient {\n this._fetchClient ??= this.params.fetchClient ?? HttpBridge.fetchClient\n return this._fetchClient\n }\n\n get maxConnections(): number {\n return this.config.maxConnections ?? HttpBridge.defaultMaxConnections\n }\n\n get maxPayloadSizeWarning(): number {\n return this.config.maxPayloadSizeWarning ?? HttpBridge.defaultMaxPayloadSizeWarning\n }\n\n get querySemaphore(): Semaphore {\n this._querySemaphore ??= new Semaphore(this.maxConnections)\n return this._querySemaphore\n }\n\n override get resolver(): HttpBridgeModuleResolver {\n this._resolver\n ??= new HttpBridgeModuleResolver({\n additionalSigners: this.additionalSigners,\n archiving: { ...this.archiving, resolveArchivists: this.resolveArchivingArchivists.bind(this) },\n bridge: this,\n onQuerySendFinished: (args: Omit<QuerySendFinishedEventArgs, 'mod'>) => {\n forget(this.emit('querySendFinished', { mod: this, ...args }))\n },\n onQuerySendStarted: (args: Omit<QuerySendStartedEventArgs, 'mod'>) => {\n forget(this.emit('querySendStarted', { mod: this, ...args }))\n },\n querySender: this,\n root: this,\n rootUrl: this.clientUrl,\n wrapperAccount: this.account,\n })\n return this._resolver\n }\n\n override exposeHandler(_id: string, _options?: BridgeExposeOptions): Promisable<ModuleInstance[]> {\n throw new Error('Unsupported')\n }\n\n override exposedHandler(): Promisable<XyoAddress[]> {\n throw new Error('Unsupported')\n }\n\n async getRoots(force?: boolean): Promise<ModuleInstance[]> {\n return await this._discoverRootsMutex.runExclusive(async () => {\n if (force === true || this._roots === undefined) {\n const state = await this.getRootState()\n this.logger?.debug(`HttpBridge:discoverRoots.state [${state?.length}]`)\n const nodeManifest = state?.find(isPayloadOfSchemaType<NodeManifestPayload>(NodeManifestPayloadSchema))\n if (nodeManifest) {\n const rootModules = await this.resolveRootNode(nodeManifest)\n const mods = rootModules.filter(exists)\n this.logger?.debug(`HttpBridge:discoverRoots [${mods.length}]`)\n this._roots = mods\n } else {\n this._roots = []\n }\n }\n return this._roots\n })\n }\n\n moduleUrl(address: XyoAddress): URL {\n return new URL(address, this.clientUrl)\n }\n\n async sendBridgeQuery<TOut extends Payload = Payload, TQuery extends QueryBoundWitness = QueryBoundWitness, TIn extends Payload = Payload>(\n targetAddress: XyoAddress,\n query: TQuery,\n payloads?: TIn[],\n ): Promise<ModuleQueryResult<TOut>> {\n const lastFailureTime = this._failureTimeCache.get(targetAddress)\n if (lastFailureTime !== undefined) {\n const now = Date.now()\n const timeSincePreviousFailure = now - lastFailureTime\n if (timeSincePreviousFailure > this.failureRetryTime) {\n throw new Error(`target module failed recently [${targetAddress}] [${timeSincePreviousFailure}ms ago]`)\n }\n this._failureTimeCache.delete(targetAddress)\n }\n try {\n await this.querySemaphore.acquire()\n const payloadSize = JSON.stringify([query, payloads]).length\n if (payloadSize > this.maxPayloadSizeWarning) {\n this.logger?.warn(\n `Large targetQuery being sent: ${payloadSize} bytes [${this.address}][${targetAddress}] [${query.schema}] [${payloads?.length ?? 0}]`,\n )\n }\n const moduleUrl = this.moduleUrl(targetAddress).href\n const result = await this.fetchClient.post<HttpQueryEnvelope<ModuleQueryResult<TOut>>>(moduleUrl, [query, payloads])\n if (result.status === 404) {\n throw new Error(`target module not found [${moduleUrl}] [${result.status}]`)\n }\n if (result.status >= 400) {\n this.logger?.error(`targetQuery failed [${moduleUrl}]`)\n throw new Error(`targetQuery failed [${moduleUrl}] [${result.status}]`)\n }\n return assertEx(result.data?.data, () => `targetQuery returned no data [${moduleUrl}]`)\n } catch (ex) {\n const error = ex instanceof FetchClientError ? ex : (ex as Error)\n this.logger?.error(`Error: ${toSafeJsonString(error)}`)\n throw error\n } finally {\n this.querySemaphore.release()\n }\n }\n\n override unexposeHandler(_id: string, _options?: BridgeUnexposeOptions): Promisable<ModuleInstance[]> {\n throw new Error('Unsupported')\n }\n\n private async getRootState() {\n const queryPayload: ModuleStateQuery = { schema: ModuleStateQuerySchema }\n const boundQuery = await this.bindQuery(queryPayload)\n try {\n const response = await this.fetchClient.post<HttpQueryEnvelope<ModuleQueryResult>>(this.clientUrl, boundQuery)\n if (response.status === 404) {\n return []\n }\n const [, payloads, errors] = response.data?.data ?? [undefined, [], []]\n if (errors.length > 0) {\n throw new Error(`getRootState failed: ${JSON.stringify(errors, null, 2)}`)\n }\n return payloads\n } catch (ex) {\n const error = ex as Error\n this.logger?.warn(`Unable to connect to remote node: ${error.message} [${this.clientUrl}]`)\n }\n }\n\n private async resolveRootNode(nodeManifest: ModuleManifestPayload): Promise<ModuleInstance[]> {\n const resolvedRoots = await this.resolver.resolveHandler(\n assertEx(nodeManifest.status?.address, () => 'Root has no address'),\n undefined,\n { manifest: nodeManifest },\n )\n const rootModule = assertEx(\n resolvedRoots.at(0),\n () => `Root not found [${nodeManifest.status?.address}]`,\n )\n assertEx(rootModule.constructor.name !== 'HttpModuleProxy', () => 'rootModule is not a Wrapper')\n const rootNode = asAttachableNodeInstance(rootModule, 'Root modules is not a node')\n if (rootNode) {\n this.logger?.debug(`rootNode: ${rootNode.id}`)\n this.downResolver.addResolver(rootNode as unknown as ModuleResolverInstance)\n return [rootNode]\n }\n return []\n }\n}\n", "import type { EmptyObject } from '@ariestools/sdk'\nimport {\n zodAsFactory, zodIsFactory, zodToFactory,\n} from '@ariestools/sdk'\nimport type { Schema } from '@xyo-network/sdk-protocol'\nimport { asSchema } from '@xyo-network/sdk-protocol'\nimport * as z from 'zod/mini'\n\nimport type { BridgeClientConfig, BridgeConfig } from '#bridge-model'\nimport { BridgeConfigZod } from '#bridge-model'\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport const HttpBridgeConfigSchema: 'network.xyo.bridge.http.config' & {\n readonly __schema: true\n} = asSchema('network.xyo.bridge.http.config', true)\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport type HttpBridgeConfigSchema = typeof HttpBridgeConfigSchema\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport const HttpBridgeConfigZod: z.ZodMiniObject<\n Omit<(typeof BridgeConfigZod)['shape'], 'schema' | 'client' | 'host'> & {\n client: z.ZodMiniOptional<z.ZodMiniCustom<BridgeClientConfig & { url: string }, BridgeClientConfig & { url: string }>>\n failureRetryTime: z.ZodMiniOptional<z.ZodMiniNumber<number>>\n failureTimeCacheMax: z.ZodMiniOptional<z.ZodMiniNumber<number>>\n host: z.ZodMiniOptional<z.ZodMiniCustom<{ port: number }, { port: number }>>\n maxConnections: z.ZodMiniOptional<z.ZodMiniNumber<number>>\n maxPayloadSizeWarning: z.ZodMiniOptional<z.ZodMiniNumber<number>>\n schema: z.ZodMiniLiteral<HttpBridgeConfigSchema>\n },\n z.core.$strip\n> = z.extend(BridgeConfigZod, {\n client: z.optional(z.custom<BridgeClientConfig & { url: string }>()),\n failureRetryTime: z.optional(z.number()),\n failureTimeCacheMax: z.optional(z.number()),\n host: z.optional(z.custom<{ port: number }>()),\n maxConnections: z.optional(z.number()),\n maxPayloadSizeWarning: z.optional(z.number()),\n schema: z.literal(HttpBridgeConfigSchema),\n})\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport type HttpBridgeConfigBase = z.infer<typeof HttpBridgeConfigZod>\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport const isHttpBridgeConfig: ReturnType<typeof zodIsFactory<HttpBridgeConfigBase>> = zodIsFactory(HttpBridgeConfigZod)\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport const asHttpBridgeConfig: ReturnType<typeof zodAsFactory<HttpBridgeConfigBase>> = zodAsFactory(HttpBridgeConfigZod, 'asHttpBridgeConfig')\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport const toHttpBridgeConfig: ReturnType<typeof zodToFactory<HttpBridgeConfigBase>> = zodToFactory(HttpBridgeConfigZod, 'toHttpBridgeConfig')\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport type HttpBridgeConfig<TConfig extends EmptyObject = EmptyObject, TSchema extends string | void = void> = BridgeConfig<\n {\n client?: BridgeConfig['client'] & {\n url: string\n }\n failureRetryTime?: number\n failureTimeCacheMax?: number\n host?: {\n port: number\n }\n maxConnections?: number\n maxPayloadSizeWarning?: number\n schema: HttpBridgeConfigSchema\n } & TConfig,\n TSchema extends Schema ? TSchema : HttpBridgeConfigSchema\n>\n", "import type { CreatableName } from '@ariestools/sdk'\nimport {\n assertEx, isAddress, isDefined,\n} from '@ariestools/sdk'\nimport type {\n ConfigPayload, Payload, XyoAddress,\n XyoQuantAddress,\n} from '@xyo-network/sdk-protocol'\nimport { Account, ConfigSchema } from '@xyo-network/sdk-protocol'\nimport { Mutex } from 'async-mutex'\nimport { LRUCache } from 'lru-cache'\n\nimport type { BridgeModuleResolverParams } from '#bridge-abstract'\nimport { AbstractBridgeModuleResolver, wrapModuleWithType } from '#bridge-abstract'\nimport type {\n AnyConfigSchema,\n ModuleConfig,\n ModuleEventData,\n ModuleFilterOptions,\n ModuleIdentifier,\n ModuleInstance,\n QueryableModuleParams,\n} from '#module-model'\nimport {\n asModuleInstance,\n isModuleInstance,\n ModuleConfigSchema,\n} from '#module-model'\nimport { ResolveHelper } from '#module-resolver'\n\nimport type { BridgeQuerySender, HttpModuleProxyParams } from './ModuleProxy/index.ts'\nimport { HttpModuleProxy } from './ModuleProxy/index.ts'\n\nconst NotFoundModule = { notFound: true }\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport interface HttpBridgeModuleResolverParams extends BridgeModuleResolverParams {\n querySender: BridgeQuerySender\n rootUrl: string\n}\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport class HttpBridgeModuleResolver<\n T extends HttpBridgeModuleResolverParams = HttpBridgeModuleResolverParams,\n> extends AbstractBridgeModuleResolver<T> {\n protected _resolvedCache: LRUCache<(Lowercase<string> & {\n readonly __hex: true\n } & {\n readonly __address: true\n }) | XyoQuantAddress, ModuleInstance<QueryableModuleParams<AnyConfigSchema<ModuleConfig>>, ModuleEventData<object>> | {\n notFound: boolean\n }, unknown> = new LRUCache<XyoAddress, ModuleInstance | typeof NotFoundModule>({ max: 1000 })\n\n protected _resolvedCacheMutex: Mutex = new Mutex()\n\n get querySender(): BridgeQuerySender {\n return this.params.querySender\n }\n\n moduleUrl(address: XyoAddress): URL {\n return new URL(address, this.params.rootUrl)\n }\n\n override async resolveHandler<T extends ModuleInstance = ModuleInstance>(\n id: ModuleIdentifier,\n options?: ModuleFilterOptions<T>,\n params?: Partial<HttpModuleProxyParams>,\n ): Promise<T[]> {\n const parentResult = await super.resolveHandler(id, options)\n if (parentResult.length > 0) {\n return parentResult\n }\n const idParts = id.split(':')\n const untransformedFirstPart = assertEx(idParts.shift(), () => 'Missing module identifier')\n const firstPart = await ResolveHelper.transformModuleIdentifier(untransformedFirstPart)\n assertEx(isAddress(firstPart), () => `Invalid module address: ${firstPart}`)\n const remainderParts = idParts.join(':')\n const instance: T | undefined = await this._resolvedCacheMutex.runExclusive(async () => {\n const cachedMod = this._resolvedCache.get(firstPart as XyoAddress)\n if (cachedMod) {\n if (isModuleInstance(cachedMod)) {\n const result = idParts.length === 0 ? cachedMod : cachedMod.resolve(remainderParts, { ...options, maxDepth: (options?.maxDepth ?? 5) - 1 })\n return result as T\n }\n // return cached 404\n return\n }\n const account = await Account.random()\n const finalParams: HttpModuleProxyParams = {\n name: 'HttpBridgeModuleResolver' as CreatableName,\n account,\n archiving: this.params.archiving,\n config: { schema: ModuleConfigSchema },\n host: this,\n moduleAddress: firstPart as XyoAddress,\n onQuerySendFinished: this.params.onQuerySendFinished,\n onQuerySendStarted: this.params.onQuerySendStarted,\n querySender: this.params.querySender,\n ...params,\n }\n\n this.logger?.debug(`creating HttpProxy [${firstPart}] ${id}`)\n\n let proxy: HttpModuleProxy | undefined\n\n let state: Payload[] | undefined\n\n try {\n proxy = await HttpModuleProxy.create(finalParams)\n state = await proxy.state()\n } catch (ex) {\n const error = ex as Error\n this.logger?.error(error.message)\n }\n\n if (!isDefined(proxy)) {\n return\n }\n\n if (!state) {\n // cache the fact that it was not found\n this._resolvedCache.set(firstPart as XyoAddress, NotFoundModule)\n return\n }\n\n const configSchema = (state.find(payload => payload.schema === ConfigSchema) as ConfigPayload | undefined)?.config\n const config = assertEx(\n state.find(payload => payload.schema === configSchema),\n () => 'Unable to locate config',\n ) as ModuleConfig\n proxy.setConfig(config)\n\n this.logger?.log(`created HttpProxy [${firstPart}] ${proxy.id}`)\n\n await proxy.start?.()\n const wrapped = wrapModuleWithType(proxy, account) as unknown as T\n assertEx(asModuleInstance<T>(wrapped, {}), () => `Failed to asModuleInstance [${id}]`)\n this._resolvedCache.set(wrapped.address, wrapped)\n return wrapped\n })\n const result = remainderParts.length > 0 ? await instance?.resolve(remainderParts, options) : instance\n return result ? [result] : []\n }\n}\n", "import {\n exists, forget,\n isAddress, isString,\n} from '@ariestools/sdk'\nimport type {\n Payload, QueryBoundWitness, XyoAddress,\n} from '@xyo-network/sdk-protocol'\n\nimport type { ModuleProxyParams } from '#bridge-abstract'\nimport { AbstractModuleProxy } from '#bridge-abstract'\nimport type {\n AttachableModuleInstance,\n ModuleFilterOptions,\n ModuleIdentifier,\n ModuleInstance,\n ModuleQueryResult,\n} from '#module-model'\nimport { creatableModule } from '#module-model'\nimport type { ResolveHelperConfig } from '#module-resolver'\nimport { ResolveHelper } from '#module-resolver'\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport interface BridgeQuerySender {\n sendBridgeQuery: <TOut extends Payload = Payload, TQuery extends QueryBoundWitness = QueryBoundWitness, TIn extends Payload = Payload>(\n targetAddress: XyoAddress,\n query: TQuery,\n payloads?: TIn[],\n ) => Promise<ModuleQueryResult<TOut>>\n}\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\nexport type HttpModuleProxyParams = ModuleProxyParams & {\n querySender: BridgeQuerySender\n}\n\n/** @deprecated The Bridge module concept is deprecated and will be removed in the next major version. */\n@creatableModule()\nexport class HttpModuleProxy<\n TWrappedModule extends ModuleInstance = ModuleInstance,\n TParams extends Omit<HttpModuleProxyParams, 'config'> & { config: TWrappedModule['config'] } = Omit<HttpModuleProxyParams, 'config'> & {\n config: TWrappedModule['config']\n },\n>\n extends AbstractModuleProxy<TWrappedModule, TParams>\n implements AttachableModuleInstance<TParams, TWrappedModule['eventData']> {\n async proxyQueryHandler<T extends QueryBoundWitness = QueryBoundWitness>(query: T, payloads: Payload[] = []): Promise<ModuleQueryResult> {\n if (this.archiving && this.isAllowedArchivingQuery(query.schema)) {\n forget(this.storeToArchivists([query, ...(payloads ?? [])]))\n }\n const result = await this.params.querySender.sendBridgeQuery(this.params.moduleAddress, query, payloads)\n if (this.archiving && this.isAllowedArchivingQuery(query.schema)) {\n forget(this.storeToArchivists(result.flat()))\n }\n return result\n }\n\n override async publicChildren(): Promise<ModuleInstance[]> {\n const children = await Promise.all(\n Object.values(await this.childAddressMap())\n .filter(exists)\n .map(address => this.resolve(address)),\n )\n return children.filter(exists)\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>(id: ModuleIdentifier, options?: ModuleFilterOptions<T>): Promise<T | undefined>\n override async resolve<T extends ModuleInstance = ModuleInstance>(\n id: ModuleIdentifier = '*',\n options: ModuleFilterOptions<T> = {},\n ): Promise<T | T[] | undefined> {\n if (id === '*') {\n return [...(await this.publicChildren()), await this.params.host.resolve(this.address)] as T[]\n }\n const config: ResolveHelperConfig = {\n address: this.address,\n dead: this.dead,\n downResolver: this.downResolver,\n logger: this.logger,\n mod: this,\n transformers: this.moduleIdentifierTransformers,\n upResolver: this.upResolver,\n }\n switch (typeof id) {\n case 'string': {\n const parts = id.split(':')\n const first = parts.shift()\n if (isString(first)) {\n const remainingPath = parts.length > 0 ? parts.join(':') : undefined\n const address\n = isAddress(first)\n ? first\n : this.id === first\n ? this.address\n : this.childAddressByName(first)\n if (!isAddress(address)) return undefined\n const firstInstance = (await this.params.host.resolve(address))\n return (isString(remainingPath) ? await firstInstance?.resolve(remainingPath) : firstInstance) as T | undefined\n }\n return undefined\n }\n default: {\n const resolved = await ResolveHelper.resolve(config, id, options)\n return resolved.filter(mod => mod.address !== this.address)\n }\n }\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["assertEx", "exists", "forget", "Mutex", "LRUCache", "creatableModule", "isAddress", "ResolveHelper", "ResolveHelper", "isAddress", "result", "Mutex", "LRUCache", "assertEx", "forget", "exists", "creatableModule"]
|
|
7
7
|
}
|
|
@@ -37,7 +37,7 @@ var applyBoundWitnessDivinerQueryPayload = (filter, payloads = []) => {
|
|
|
37
37
|
const targetFilter = assertEx(destination, () => "Missing destination");
|
|
38
38
|
bws = bws.filter((bw) => {
|
|
39
39
|
const targetDestinationField = bw?.$destination;
|
|
40
|
-
return targetDestinationField !== void 0 && Array.isArray(targetDestinationField) && targetDestinationField.length > 0
|
|
40
|
+
return targetDestinationField !== void 0 && Array.isArray(targetDestinationField) && targetDestinationField.length > 0 && containsAll(targetFilter, targetDestinationField ?? []);
|
|
41
41
|
});
|
|
42
42
|
}
|
|
43
43
|
const parsedLimit = limit ?? bws.length;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/modules/diviner-boundwitness/applyBoundWitnessDivinerQueryPayload.ts", "../../src/modules/diviner-boundwitness/MemoryBoundWitnessDiviner.ts", "../../src/modules/diviner-boundwitness/BoundWitnessDiviner.ts", "../../src/modules/diviner-boundwitness/Config.ts", "../../src/modules/diviner-boundwitness/Schema.ts", "../../src/modules/diviner-boundwitness/Query.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n assertEx, containsAll,\n exists, hexFromHexString,\n} from '@ariestools/sdk'\nimport type {\n BoundWitness, Payload, WithStorageMeta,\n} from '@xyo-network/sdk-protocol'\nimport {\n isBoundWitness, PayloadBuilder, SequenceConstants,\n} from '@xyo-network/sdk-protocol'\n\nimport type { BoundWitnessDivinerQueryPayload } from './Query.ts'\n\n// eslint-disable-next-line complexity\nexport const applyBoundWitnessDivinerQueryPayload = (filter?: BoundWitnessDivinerQueryPayload, payloads: WithStorageMeta<Payload>[] = []): BoundWitness[] => {\n if (!filter) return []\n const {\n addresses, cursor, destination, limit, order = 'desc', payload_hashes, payload_schemas, sourceQuery,\n } = filter\n\n const sortedPayloads = PayloadBuilder.sortByStorageMeta(payloads, order === 'desc' ? -1 : 1)\n const parsedCursor = cursor ?? ((order === 'desc') ? SequenceConstants.maxLocalSequence : SequenceConstants.minLocalSequence)\n const parsedOffset = (order === 'desc')\n ? sortedPayloads.findIndex(bw => bw._sequence < parsedCursor)\n : sortedPayloads.findIndex(bw => bw._sequence > parsedCursor)\n if (parsedOffset === -1) return []\n const payloadSubset = sortedPayloads.slice(parsedOffset)\n\n let bws = payloadSubset.filter(isBoundWitness)\n const allAddresses = addresses?.map(address => hexFromHexString(address)).filter(exists)\n if (allAddresses !== undefined && allAddresses.length > 0) bws = bws.filter(bw => containsAll<string>(bw.addresses, allAddresses))\n if (payload_hashes !== undefined && payload_hashes.length > 0) bws = bws.filter(bw => containsAll(bw.payload_hashes, payload_hashes))\n if (payload_schemas !== undefined && payload_schemas.length > 0) bws = bws.filter(bw => containsAll(bw.payload_schemas, payload_schemas))\n if (sourceQuery !== undefined && sourceQuery !== '') bws = bws.filter(bw => bw?.$sourceQuery === sourceQuery)\n // If there's a destination filter of the right kind\n if (destination && Array.isArray(destination) && destination?.length > 0) {\n const targetFilter = assertEx(destination, () => 'Missing destination')\n // Find all BWs that satisfy the destination constraint\n bws = bws.filter((bw) => {\n const targetDestinationField = (bw as { $destination?: string | string[] })?.$destination\n // If the destination field is an array and contains at least one element\n return targetDestinationField !== undefined && Array.isArray(targetDestinationField) && targetDestinationField.length > 0\n // Check that the targetDestinationField contains all the elements in the targetFilter\n ? containsAll(targetFilter, targetDestinationField ?? [])\n // Otherwise, filter it out\n : false\n })\n }\n const parsedLimit = limit ?? bws.length\n return bws.slice(0, parsedLimit)\n}\n", "import { assertEx } from '@ariestools/sdk'\nimport { type BoundWitness, isBoundWitness } from '@xyo-network/sdk-protocol'\nimport { isStorageMeta } from '@xyo-network/sdk-protocol'\n\nimport { applyBoundWitnessDivinerQueryPayload } from './applyBoundWitnessDivinerQueryPayload.ts'\nimport { BoundWitnessDiviner } from './BoundWitnessDiviner.ts'\nimport type { BoundWitnessDivinerParams } from './Params.ts'\nimport { type BoundWitnessDivinerQueryPayload, isBoundWitnessDivinerQueryPayload } from './Query.ts'\n\nexport interface EqualityComparisonOperators {\n /**\n * 'Not Equal To' comparison operator.\n * Compares the field with the specified string value,\n * selecting records where the field value does not match the provided string.\n * Example: field != 'value'\n */\n '!=': string\n\n /**\n * 'Less Than' comparison operator.\n * Compares the field with the specified string value,\n * selecting records where the field value is lexicographically less than the provided string.\n * Example: field < 'value'\n */\n '<': string\n\n /**\n * 'Less Than or Equal To' comparison operator.\n * Compares the field with the specified string value,\n * selecting records where the field value is lexicographically less than or equal to the provided string.\n * Example: field <= 'value'\n */\n '<=': string\n\n /**\n * 'Equal To' comparison operator.\n * Compares the field with the specified string value,\n * selecting records where the field value matches the provided string exactly.\n * Example: field = 'value'\n */\n '=': string\n\n /**\n * 'Greater Than' comparison operator.\n * Compares the field with the specified string value,\n * selecting records where the field value is lexicographically greater than the provided string.\n * Example: field > 'value'\n */\n '>': string\n\n /**\n * 'Greater Than or Equal To' comparison operator.\n * Compares the field with the specified string value,\n * selecting records where the field value is lexicographically greater than or equal to the provided string.\n * Example: field >= 'value'\n */\n '>=': string\n}\n\nexport class MemoryBoundWitnessDiviner<\n TParams extends BoundWitnessDivinerParams = BoundWitnessDivinerParams,\n TIn extends BoundWitnessDivinerQueryPayload = BoundWitnessDivinerQueryPayload,\n TOut extends BoundWitness = BoundWitness,\n> extends BoundWitnessDiviner<TParams, TIn, TOut> {\n protected override async divineHandler(payloads?: TIn[]): Promise<TOut[]> {\n const filter = assertEx(payloads?.filter(isBoundWitnessDivinerQueryPayload)?.pop(), () => 'Missing query payload')\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const bws = ((await archivist?.next({ limit: 10_000 })) ?? []).filter(x => isBoundWitness(x) && isStorageMeta(x))\n return applyBoundWitnessDivinerQueryPayload(filter, bws) as TOut[]\n }\n}\n", "import type { BoundWitness, Schema } from '@xyo-network/sdk-protocol'\n\nimport { AbstractDiviner } from '#diviner-abstract'\nimport type { DivinerInstance, DivinerModuleEventData } from '#diviner-model'\n\nimport { BoundWitnessDivinerConfigSchema } from './Config.ts'\nimport type { BoundWitnessDivinerParams } from './Params.ts'\nimport type { BoundWitnessDivinerQueryPayload } from './Query.ts'\n\nexport abstract class BoundWitnessDiviner<\n TParams extends BoundWitnessDivinerParams = BoundWitnessDivinerParams,\n TIn extends BoundWitnessDivinerQueryPayload = BoundWitnessDivinerQueryPayload,\n TOut extends BoundWitness = BoundWitness,\n TEventData extends DivinerModuleEventData<DivinerInstance<TParams, TIn, TOut>, TIn, TOut> = DivinerModuleEventData<\n DivinerInstance<TParams, TIn, TOut>,\n TIn,\n TOut\n >,\n> extends AbstractDiviner<TParams, TIn, TOut, TEventData> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, BoundWitnessDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = BoundWitnessDivinerConfigSchema\n}\n", "import {\n zodAsFactory, zodIsFactory, zodToFactory,\n} from '@ariestools/sdk'\nimport { asSchema, type Payload } from '@xyo-network/sdk-protocol'\nimport * as z from 'zod/mini'\n\nimport type { DivinerConfig } from '#diviner-model'\nimport { DivinerConfigZod } from '#diviner-model'\n\nimport { BoundWitnessDivinerSchema } from './Schema.ts'\n\nexport const BoundWitnessDivinerConfigSchema: string & {\n readonly __schema: true\n} = asSchema(`${BoundWitnessDivinerSchema}.config`, true)\nexport type BoundWitnessDivinerConfigSchema = typeof BoundWitnessDivinerConfigSchema\n\nexport const BoundWitnessDivinerConfigZod: z.ZodMiniObject<\n Omit<(typeof DivinerConfigZod)['shape'], 'schema'> & {\n schema: z.ZodMiniLiteral<BoundWitnessDivinerConfigSchema>\n },\n z.core.$strip\n> = z.extend(DivinerConfigZod, { schema: z.literal(BoundWitnessDivinerConfigSchema) })\n\nexport type BoundWitnessDivinerConfigBase = z.infer<typeof BoundWitnessDivinerConfigZod>\n\nexport const isBoundWitnessDivinerConfig: ReturnType<typeof zodIsFactory<BoundWitnessDivinerConfigBase>> = zodIsFactory(BoundWitnessDivinerConfigZod)\nexport const asBoundWitnessDivinerConfig: ReturnType<typeof zodAsFactory<BoundWitnessDivinerConfigBase>> = zodAsFactory(BoundWitnessDivinerConfigZod, 'asBoundWitnessDivinerConfig')\nexport const toBoundWitnessDivinerConfig: ReturnType<typeof zodToFactory<BoundWitnessDivinerConfigBase>> = zodToFactory(BoundWitnessDivinerConfigZod, 'toBoundWitnessDivinerConfig')\n\nexport type BoundWitnessDivinerConfig<T extends Payload = Payload> = DivinerConfig<\n T & {\n schema: BoundWitnessDivinerConfigSchema\n }\n>\n", "import { asSchema } from '@xyo-network/sdk-protocol'\n\nexport const BoundWitnessDivinerSchema: 'network.xyo.diviner.boundwitness' & {\n readonly __schema: true\n} = asSchema('network.xyo.diviner.boundwitness', true)\nexport type BoundWitnessDivinerSchema = typeof BoundWitnessDivinerSchema\n", "import {\n zodAsFactory, zodIsFactory, zodToFactory,\n} from '@ariestools/sdk'\nimport {\n asSchema, PayloadZodOfSchema, QueryFieldsZod,\n} from '@xyo-network/sdk-protocol'\nimport * as z from 'zod/mini'\n\nimport type { BoundWitnessDivinerPredicate } from './Predicate.ts'\nimport { BoundWitnessDivinerSchema } from './Schema.ts'\n\nexport const BoundWitnessDivinerQuerySchema: string & {\n readonly __schema: true\n} = asSchema(`${BoundWitnessDivinerSchema}.query`, true)\nexport type BoundWitnessDivinerQuerySchema = typeof BoundWitnessDivinerQuerySchema\n\nexport const BoundWitnessDivinerQueryPayloadZod: z.ZodMiniIntersection<\n z.ZodMiniObject<\n & { schema: z.ZodMiniLiteral<BoundWitnessDivinerQuerySchema> }\n & (typeof QueryFieldsZod)['shape'],\n z.core.$strip\n >,\n z.ZodMiniCustom<BoundWitnessDivinerPredicate, BoundWitnessDivinerPredicate>\n> = z.intersection(\n z.extend(PayloadZodOfSchema(BoundWitnessDivinerQuerySchema), { ...QueryFieldsZod.shape }),\n z.custom<BoundWitnessDivinerPredicate>(),\n)\n\nexport type BoundWitnessDivinerQueryPayload = z.infer<typeof BoundWitnessDivinerQueryPayloadZod>\n\nexport const isBoundWitnessDivinerQueryPayload: ReturnType<typeof zodIsFactory<BoundWitnessDivinerQueryPayload>> = zodIsFactory(BoundWitnessDivinerQueryPayloadZod)\nexport const asBoundWitnessDivinerQueryPayload: ReturnType<typeof zodAsFactory<BoundWitnessDivinerQueryPayload>> = zodAsFactory(BoundWitnessDivinerQueryPayloadZod, 'asBoundWitnessDivinerQueryPayload')\nexport const toBoundWitnessDivinerQueryPayload: ReturnType<typeof zodToFactory<BoundWitnessDivinerQueryPayload>> = zodToFactory(BoundWitnessDivinerQueryPayloadZod, 'toBoundWitnessDivinerQueryPayload')\n"],
|
|
5
|
-
"mappings": ";AAAA;AAAA,EACE;AAAA,EAAU;AAAA,EACV;AAAA,EAAQ;AAAA,OACH;AAIP;AAAA,EACE;AAAA,EAAgB;AAAA,EAAgB;AAAA,OAC3B;AAKA,IAAM,uCAAuC,CAAC,QAA0C,WAAuC,CAAC,MAAsB;AAC3J,MAAI,CAAC,OAAQ,QAAO,CAAC;AACrB,QAAM;AAAA,IACJ;AAAA,IAAW;AAAA,IAAQ;AAAA,IAAa;AAAA,IAAO,QAAQ;AAAA,IAAQ;AAAA,IAAgB;AAAA,IAAiB;AAAA,EAC1F,IAAI;AAEJ,QAAM,iBAAiB,eAAe,kBAAkB,UAAU,UAAU,SAAS,KAAK,CAAC;AAC3F,QAAM,eAAe,WAAY,UAAU,SAAU,kBAAkB,mBAAmB,kBAAkB;AAC5G,QAAM,eAAgB,UAAU,SAC5B,eAAe,UAAU,QAAM,GAAG,YAAY,YAAY,IAC1D,eAAe,UAAU,QAAM,GAAG,YAAY,YAAY;AAC9D,MAAI,iBAAiB,GAAI,QAAO,CAAC;AACjC,QAAM,gBAAgB,eAAe,MAAM,YAAY;AAEvD,MAAI,MAAM,cAAc,OAAO,cAAc;AAC7C,QAAM,eAAe,WAAW,IAAI,aAAW,iBAAiB,OAAO,CAAC,EAAE,OAAO,MAAM;AACvF,MAAI,iBAAiB,UAAa,aAAa,SAAS,EAAG,OAAM,IAAI,OAAO,QAAM,YAAoB,GAAG,WAAW,YAAY,CAAC;AACjI,MAAI,mBAAmB,UAAa,eAAe,SAAS,EAAG,OAAM,IAAI,OAAO,QAAM,YAAY,GAAG,gBAAgB,cAAc,CAAC;AACpI,MAAI,oBAAoB,UAAa,gBAAgB,SAAS,EAAG,OAAM,IAAI,OAAO,QAAM,YAAY,GAAG,iBAAiB,eAAe,CAAC;AACxI,MAAI,gBAAgB,UAAa,gBAAgB,GAAI,OAAM,IAAI,OAAO,QAAM,IAAI,iBAAiB,WAAW;AAE5G,MAAI,eAAe,MAAM,QAAQ,WAAW,KAAK,aAAa,SAAS,GAAG;AACxE,UAAM,eAAe,SAAS,aAAa,MAAM,qBAAqB;AAEtE,UAAM,IAAI,OAAO,CAAC,OAAO;AACvB,YAAM,yBAA0B,IAA6C;
|
|
4
|
+
"sourcesContent": ["import {\n assertEx, containsAll,\n exists, hexFromHexString,\n} from '@ariestools/sdk'\nimport type {\n BoundWitness, Payload, WithStorageMeta,\n} from '@xyo-network/sdk-protocol'\nimport {\n isBoundWitness, PayloadBuilder, SequenceConstants,\n} from '@xyo-network/sdk-protocol'\n\nimport type { BoundWitnessDivinerQueryPayload } from './Query.ts'\n\n// eslint-disable-next-line complexity\nexport const applyBoundWitnessDivinerQueryPayload = (filter?: BoundWitnessDivinerQueryPayload, payloads: WithStorageMeta<Payload>[] = []): BoundWitness[] => {\n if (!filter) return []\n const {\n addresses, cursor, destination, limit, order = 'desc', payload_hashes, payload_schemas, sourceQuery,\n } = filter\n\n const sortedPayloads = PayloadBuilder.sortByStorageMeta(payloads, order === 'desc' ? -1 : 1)\n const parsedCursor = cursor ?? ((order === 'desc') ? SequenceConstants.maxLocalSequence : SequenceConstants.minLocalSequence)\n const parsedOffset = (order === 'desc')\n ? sortedPayloads.findIndex(bw => bw._sequence < parsedCursor)\n : sortedPayloads.findIndex(bw => bw._sequence > parsedCursor)\n if (parsedOffset === -1) return []\n const payloadSubset = sortedPayloads.slice(parsedOffset)\n\n let bws = payloadSubset.filter(isBoundWitness)\n const allAddresses = addresses?.map(address => hexFromHexString(address)).filter(exists)\n if (allAddresses !== undefined && allAddresses.length > 0) bws = bws.filter(bw => containsAll<string>(bw.addresses, allAddresses))\n if (payload_hashes !== undefined && payload_hashes.length > 0) bws = bws.filter(bw => containsAll(bw.payload_hashes, payload_hashes))\n if (payload_schemas !== undefined && payload_schemas.length > 0) bws = bws.filter(bw => containsAll(bw.payload_schemas, payload_schemas))\n if (sourceQuery !== undefined && sourceQuery !== '') bws = bws.filter(bw => bw?.$sourceQuery === sourceQuery)\n // If there's a destination filter of the right kind\n if (destination && Array.isArray(destination) && destination?.length > 0) {\n const targetFilter = assertEx(destination, () => 'Missing destination')\n // Find all BWs that satisfy the destination constraint\n bws = bws.filter((bw) => {\n const targetDestinationField = (bw as { $destination?: string | string[] })?.$destination\n // If the destination field is an array and contains at least one element\n // If the destination field is an array with at least one element, keep bound witnesses that contain the filter.\n return targetDestinationField !== undefined\n && Array.isArray(targetDestinationField)\n && targetDestinationField.length > 0\n && containsAll(targetFilter, targetDestinationField ?? [])\n })\n }\n const parsedLimit = limit ?? bws.length\n return bws.slice(0, parsedLimit)\n}\n", "import { assertEx } from '@ariestools/sdk'\nimport { type BoundWitness, isBoundWitness } from '@xyo-network/sdk-protocol'\nimport { isStorageMeta } from '@xyo-network/sdk-protocol'\n\nimport { applyBoundWitnessDivinerQueryPayload } from './applyBoundWitnessDivinerQueryPayload.ts'\nimport { BoundWitnessDiviner } from './BoundWitnessDiviner.ts'\nimport type { BoundWitnessDivinerParams } from './Params.ts'\nimport { type BoundWitnessDivinerQueryPayload, isBoundWitnessDivinerQueryPayload } from './Query.ts'\n\nexport interface EqualityComparisonOperators {\n /**\n * 'Not Equal To' comparison operator.\n * Compares the field with the specified string value,\n * selecting records where the field value does not match the provided string.\n * Example: field != 'value'\n */\n '!=': string\n\n /**\n * 'Less Than' comparison operator.\n * Compares the field with the specified string value,\n * selecting records where the field value is lexicographically less than the provided string.\n * Example: field < 'value'\n */\n '<': string\n\n /**\n * 'Less Than or Equal To' comparison operator.\n * Compares the field with the specified string value,\n * selecting records where the field value is lexicographically less than or equal to the provided string.\n * Example: field <= 'value'\n */\n '<=': string\n\n /**\n * 'Equal To' comparison operator.\n * Compares the field with the specified string value,\n * selecting records where the field value matches the provided string exactly.\n * Example: field = 'value'\n */\n '=': string\n\n /**\n * 'Greater Than' comparison operator.\n * Compares the field with the specified string value,\n * selecting records where the field value is lexicographically greater than the provided string.\n * Example: field > 'value'\n */\n '>': string\n\n /**\n * 'Greater Than or Equal To' comparison operator.\n * Compares the field with the specified string value,\n * selecting records where the field value is lexicographically greater than or equal to the provided string.\n * Example: field >= 'value'\n */\n '>=': string\n}\n\nexport class MemoryBoundWitnessDiviner<\n TParams extends BoundWitnessDivinerParams = BoundWitnessDivinerParams,\n TIn extends BoundWitnessDivinerQueryPayload = BoundWitnessDivinerQueryPayload,\n TOut extends BoundWitness = BoundWitness,\n> extends BoundWitnessDiviner<TParams, TIn, TOut> {\n protected override async divineHandler(payloads?: TIn[]): Promise<TOut[]> {\n const filter = assertEx(payloads?.filter(isBoundWitnessDivinerQueryPayload)?.pop(), () => 'Missing query payload')\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const bws = ((await archivist?.next({ limit: 10_000 })) ?? []).filter(x => isBoundWitness(x) && isStorageMeta(x))\n return applyBoundWitnessDivinerQueryPayload(filter, bws) as TOut[]\n }\n}\n", "import type { BoundWitness, Schema } from '@xyo-network/sdk-protocol'\n\nimport { AbstractDiviner } from '#diviner-abstract'\nimport type { DivinerInstance, DivinerModuleEventData } from '#diviner-model'\n\nimport { BoundWitnessDivinerConfigSchema } from './Config.ts'\nimport type { BoundWitnessDivinerParams } from './Params.ts'\nimport type { BoundWitnessDivinerQueryPayload } from './Query.ts'\n\nexport abstract class BoundWitnessDiviner<\n TParams extends BoundWitnessDivinerParams = BoundWitnessDivinerParams,\n TIn extends BoundWitnessDivinerQueryPayload = BoundWitnessDivinerQueryPayload,\n TOut extends BoundWitness = BoundWitness,\n TEventData extends DivinerModuleEventData<DivinerInstance<TParams, TIn, TOut>, TIn, TOut> = DivinerModuleEventData<\n DivinerInstance<TParams, TIn, TOut>,\n TIn,\n TOut\n >,\n> extends AbstractDiviner<TParams, TIn, TOut, TEventData> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, BoundWitnessDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = BoundWitnessDivinerConfigSchema\n}\n", "import {\n zodAsFactory, zodIsFactory, zodToFactory,\n} from '@ariestools/sdk'\nimport { asSchema, type Payload } from '@xyo-network/sdk-protocol'\nimport * as z from 'zod/mini'\n\nimport type { DivinerConfig } from '#diviner-model'\nimport { DivinerConfigZod } from '#diviner-model'\n\nimport { BoundWitnessDivinerSchema } from './Schema.ts'\n\nexport const BoundWitnessDivinerConfigSchema: string & {\n readonly __schema: true\n} = asSchema(`${BoundWitnessDivinerSchema}.config`, true)\nexport type BoundWitnessDivinerConfigSchema = typeof BoundWitnessDivinerConfigSchema\n\nexport const BoundWitnessDivinerConfigZod: z.ZodMiniObject<\n Omit<(typeof DivinerConfigZod)['shape'], 'schema'> & {\n schema: z.ZodMiniLiteral<BoundWitnessDivinerConfigSchema>\n },\n z.core.$strip\n> = z.extend(DivinerConfigZod, { schema: z.literal(BoundWitnessDivinerConfigSchema) })\n\nexport type BoundWitnessDivinerConfigBase = z.infer<typeof BoundWitnessDivinerConfigZod>\n\nexport const isBoundWitnessDivinerConfig: ReturnType<typeof zodIsFactory<BoundWitnessDivinerConfigBase>> = zodIsFactory(BoundWitnessDivinerConfigZod)\nexport const asBoundWitnessDivinerConfig: ReturnType<typeof zodAsFactory<BoundWitnessDivinerConfigBase>> = zodAsFactory(BoundWitnessDivinerConfigZod, 'asBoundWitnessDivinerConfig')\nexport const toBoundWitnessDivinerConfig: ReturnType<typeof zodToFactory<BoundWitnessDivinerConfigBase>> = zodToFactory(BoundWitnessDivinerConfigZod, 'toBoundWitnessDivinerConfig')\n\nexport type BoundWitnessDivinerConfig<T extends Payload = Payload> = DivinerConfig<\n T & {\n schema: BoundWitnessDivinerConfigSchema\n }\n>\n", "import { asSchema } from '@xyo-network/sdk-protocol'\n\nexport const BoundWitnessDivinerSchema: 'network.xyo.diviner.boundwitness' & {\n readonly __schema: true\n} = asSchema('network.xyo.diviner.boundwitness', true)\nexport type BoundWitnessDivinerSchema = typeof BoundWitnessDivinerSchema\n", "import {\n zodAsFactory, zodIsFactory, zodToFactory,\n} from '@ariestools/sdk'\nimport {\n asSchema, PayloadZodOfSchema, QueryFieldsZod,\n} from '@xyo-network/sdk-protocol'\nimport * as z from 'zod/mini'\n\nimport type { BoundWitnessDivinerPredicate } from './Predicate.ts'\nimport { BoundWitnessDivinerSchema } from './Schema.ts'\n\nexport const BoundWitnessDivinerQuerySchema: string & {\n readonly __schema: true\n} = asSchema(`${BoundWitnessDivinerSchema}.query`, true)\nexport type BoundWitnessDivinerQuerySchema = typeof BoundWitnessDivinerQuerySchema\n\nexport const BoundWitnessDivinerQueryPayloadZod: z.ZodMiniIntersection<\n z.ZodMiniObject<\n & { schema: z.ZodMiniLiteral<BoundWitnessDivinerQuerySchema> }\n & (typeof QueryFieldsZod)['shape'],\n z.core.$strip\n >,\n z.ZodMiniCustom<BoundWitnessDivinerPredicate, BoundWitnessDivinerPredicate>\n> = z.intersection(\n z.extend(PayloadZodOfSchema(BoundWitnessDivinerQuerySchema), { ...QueryFieldsZod.shape }),\n z.custom<BoundWitnessDivinerPredicate>(),\n)\n\nexport type BoundWitnessDivinerQueryPayload = z.infer<typeof BoundWitnessDivinerQueryPayloadZod>\n\nexport const isBoundWitnessDivinerQueryPayload: ReturnType<typeof zodIsFactory<BoundWitnessDivinerQueryPayload>> = zodIsFactory(BoundWitnessDivinerQueryPayloadZod)\nexport const asBoundWitnessDivinerQueryPayload: ReturnType<typeof zodAsFactory<BoundWitnessDivinerQueryPayload>> = zodAsFactory(BoundWitnessDivinerQueryPayloadZod, 'asBoundWitnessDivinerQueryPayload')\nexport const toBoundWitnessDivinerQueryPayload: ReturnType<typeof zodToFactory<BoundWitnessDivinerQueryPayload>> = zodToFactory(BoundWitnessDivinerQueryPayloadZod, 'toBoundWitnessDivinerQueryPayload')\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["assertEx", "isBoundWitness", "asSchema", "asSchema", "zodAsFactory", "zodIsFactory", "zodToFactory", "asSchema", "z", "asSchema", "zodIsFactory", "zodAsFactory", "zodToFactory", "assertEx", "isBoundWitness"]
|
|
7
7
|
}
|
|
@@ -67,7 +67,7 @@ var applyBoundWitnessDivinerQueryPayload = (filter, payloads = []) => {
|
|
|
67
67
|
const targetFilter = assertEx(destination, () => "Missing destination");
|
|
68
68
|
bws = bws.filter((bw) => {
|
|
69
69
|
const targetDestinationField = bw?.$destination;
|
|
70
|
-
return targetDestinationField !== void 0 && Array.isArray(targetDestinationField) && targetDestinationField.length > 0
|
|
70
|
+
return targetDestinationField !== void 0 && Array.isArray(targetDestinationField) && targetDestinationField.length > 0 && containsAll(targetFilter, targetDestinationField ?? []);
|
|
71
71
|
});
|
|
72
72
|
}
|
|
73
73
|
const parsedLimit = limit ?? bws.length;
|