@xyo-network/diviner-schema-list-memory 2.110.18 → 2.111.0

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.
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts","../../src/MemorySchemaListDiviner.ts"],"sourcesContent":["export * from './MemorySchemaListDiviner.ts'\n","import { distinct } from '@xylabs/array'\nimport { assertEx } from '@xylabs/assert'\nimport { Address } from '@xylabs/hex'\nimport { isBoundWitness, isBoundWitnessWithMeta } from '@xyo-network/boundwitness-model'\nimport { SchemaListDiviner } from '@xyo-network/diviner-schema-list-abstract'\nimport {\n isSchemaListQueryPayload,\n SchemaListDivinerConfigSchema,\n SchemaListDivinerParams,\n SchemaListDivinerSchema,\n SchemaListPayload,\n SchemaListQueryPayload,\n} from '@xyo-network/diviner-schema-list-model'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { Payload, Schema } from '@xyo-network/payload-model'\n\nexport class MemorySchemaListDiviner<TParams extends SchemaListDivinerParams = SchemaListDivinerParams> extends SchemaListDiviner<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, SchemaListDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = SchemaListDivinerConfigSchema\n\n protected async divineAddress(address: Address): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n const filtered = all\n .filter(isBoundWitness)\n .filter(isBoundWitnessWithMeta)\n .filter((bw) => bw.addresses.includes(address))\n return filtered.flatMap((bw) => bw.payload_schemas).filter(distinct)\n }\n\n protected async divineAllAddresses(): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n return all.map((payload) => payload.schema).filter(distinct)\n }\n\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const query = payloads?.find<SchemaListQueryPayload>(isSchemaListQueryPayload)\n if (!query) return []\n const addresses =\n query?.address ?\n Array.isArray(query?.address) ?\n query.address\n : [query.address]\n : undefined\n const results = addresses ? await Promise.all(addresses.map((address) => this.divineAddress(address))) : [await this.divineAllAddresses()]\n return await Promise.all(\n results.map((schemas) => new PayloadBuilder<SchemaListPayload>({ schema: SchemaListDivinerSchema }).fields({ schemas }).build()),\n )\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;ACAA,mBAAyB;AACzB,oBAAyB;AAEzB,gCAAuD;AACvD,0CAAkC;AAClC,uCAOO;AACP,6BAA+B;AAGxB,IAAMA,0BAAN,cAAyGC,sDAAAA;EAhBhH,OAgBgHA;;;EAC9G,OAAyBC,gBAA0B;OAAI,MAAMA;IAAeC;;EAC5E,OAAyBC,sBAA8BD;EAEvD,MAAgBE,cAAcC,SAAqC;AACjE,UAAMC,gBAAYC,wBAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,UAAMF,wBAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,UAAMC,WAAWD,IACdE,OAAOC,wCAAAA,EACPD,OAAOE,gDAAAA,EACPF,OAAO,CAACG,OAAOA,GAAGC,UAAUC,SAASX,OAAAA,CAAAA;AACxC,WAAOK,SAASO,QAAQ,CAACH,OAAOA,GAAGI,eAAe,EAAEP,OAAOQ,qBAAAA;EAC7D;EAEA,MAAgBC,qBAAwC;AACtD,UAAMd,gBAAYC,wBAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,UAAMF,wBAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,WAAOA,IAAIY,IAAI,CAACC,YAAYA,QAAQC,MAAM,EAAEZ,OAAOQ,qBAAAA;EACrD;EAEA,MAAyBK,cAAcC,UAA0C;AAC/E,UAAMC,QAAQD,UAAUE,KAA6BC,yDAAAA;AACrD,QAAI,CAACF,MAAO,QAAO,CAAA;AACnB,UAAMX,YACJW,OAAOrB,UACLwB,MAAMC,QAAQJ,OAAOrB,OAAAA,IACnBqB,MAAMrB,UACN;MAACqB,MAAMrB;QACT0B;AACJ,UAAMC,UAAUjB,YAAY,MAAMkB,QAAQxB,IAAIM,UAAUM,IAAI,CAAChB,YAAY,KAAKD,cAAcC,OAAAA,CAAAA,CAAAA,IAAa;MAAC,MAAM,KAAKe,mBAAkB;;AACvI,WAAO,MAAMa,QAAQxB,IACnBuB,QAAQX,IAAI,CAACa,YAAY,IAAIC,sCAAkC;MAAEZ,QAAQa;IAAwB,CAAA,EAAGC,OAAO;MAAEH;IAAQ,CAAA,EAAGI,MAAK,CAAA,CAAA;EAEjI;AACF;","names":["MemorySchemaListDiviner","SchemaListDiviner","configSchemas","SchemaListDivinerConfigSchema","defaultConfigSchema","divineAddress","address","archivist","assertEx","archivistInstance","all","filtered","filter","isBoundWitness","isBoundWitnessWithMeta","bw","addresses","includes","flatMap","payload_schemas","distinct","divineAllAddresses","map","payload","schema","divineHandler","payloads","query","find","isSchemaListQueryPayload","Array","isArray","undefined","results","Promise","schemas","PayloadBuilder","SchemaListDivinerSchema","fields","build"]}
1
+ {"version":3,"sources":["../../src/index.ts","../../src/MemorySchemaListDiviner.ts"],"sourcesContent":["export * from './MemorySchemaListDiviner.ts'\n","import { distinct } from '@xylabs/array'\nimport { assertEx } from '@xylabs/assert'\nimport { Address } from '@xylabs/hex'\nimport { isBoundWitness, isBoundWitnessWithMeta } from '@xyo-network/boundwitness-model'\nimport { SchemaListDiviner } from '@xyo-network/diviner-schema-list-abstract'\nimport {\n isSchemaListQueryPayload,\n SchemaListDivinerConfigSchema,\n SchemaListDivinerParams,\n SchemaListDivinerSchema,\n SchemaListPayload,\n SchemaListQueryPayload,\n} from '@xyo-network/diviner-schema-list-model'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { Payload, Schema } from '@xyo-network/payload-model'\n\nexport class MemorySchemaListDiviner<TParams extends SchemaListDivinerParams = SchemaListDivinerParams> extends SchemaListDiviner<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, SchemaListDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = SchemaListDivinerConfigSchema\n\n protected async divineAddress(address: Address): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n const filtered = all\n .filter(isBoundWitness)\n .filter(isBoundWitnessWithMeta)\n .filter(bw => bw.addresses.includes(address))\n return filtered.flatMap(bw => bw.payload_schemas).filter(distinct)\n }\n\n protected async divineAllAddresses(): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n return all.map(payload => payload.schema).filter(distinct)\n }\n\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const query = payloads?.find<SchemaListQueryPayload>(isSchemaListQueryPayload)\n if (!query) return []\n const addresses\n = query?.address\n ? Array.isArray(query?.address)\n ? query.address\n : [query.address]\n : undefined\n const results = addresses ? await Promise.all(addresses.map(address => this.divineAddress(address))) : [await this.divineAllAddresses()]\n return await Promise.all(\n results.map(schemas => new PayloadBuilder<SchemaListPayload>({ schema: SchemaListDivinerSchema }).fields({ schemas }).build()),\n )\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;ACAA,mBAAyB;AACzB,oBAAyB;AAEzB,gCAAuD;AACvD,0CAAkC;AAClC,uCAOO;AACP,6BAA+B;AAGxB,IAAMA,0BAAN,cAAyGC,sDAAAA;EAhBhH,OAgBgHA;;;EAC9G,OAAyBC,gBAA0B;OAAI,MAAMA;IAAeC;;EAC5E,OAAyBC,sBAA8BD;EAEvD,MAAgBE,cAAcC,SAAqC;AACjE,UAAMC,gBAAYC,wBAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,UAAMF,wBAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,UAAMC,WAAWD,IACdE,OAAOC,wCAAAA,EACPD,OAAOE,gDAAAA,EACPF,OAAOG,CAAAA,OAAMA,GAAGC,UAAUC,SAASX,OAAAA,CAAAA;AACtC,WAAOK,SAASO,QAAQH,CAAAA,OAAMA,GAAGI,eAAe,EAAEP,OAAOQ,qBAAAA;EAC3D;EAEA,MAAgBC,qBAAwC;AACtD,UAAMd,gBAAYC,wBAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,UAAMF,wBAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,WAAOA,IAAIY,IAAIC,CAAAA,YAAWA,QAAQC,MAAM,EAAEZ,OAAOQ,qBAAAA;EACnD;EAEA,MAAyBK,cAAcC,UAA0C;AAC/E,UAAMC,QAAQD,UAAUE,KAA6BC,yDAAAA;AACrD,QAAI,CAACF,MAAO,QAAO,CAAA;AACnB,UAAMX,YACFW,OAAOrB,UACLwB,MAAMC,QAAQJ,OAAOrB,OAAAA,IACnBqB,MAAMrB,UACN;MAACqB,MAAMrB;QACT0B;AACN,UAAMC,UAAUjB,YAAY,MAAMkB,QAAQxB,IAAIM,UAAUM,IAAIhB,CAAAA,YAAW,KAAKD,cAAcC,OAAAA,CAAAA,CAAAA,IAAa;MAAC,MAAM,KAAKe,mBAAkB;;AACrI,WAAO,MAAMa,QAAQxB,IACnBuB,QAAQX,IAAIa,CAAAA,YAAW,IAAIC,sCAAkC;MAAEZ,QAAQa;IAAwB,CAAA,EAAGC,OAAO;MAAEH;IAAQ,CAAA,EAAGI,MAAK,CAAA,CAAA;EAE/H;AACF;","names":["MemorySchemaListDiviner","SchemaListDiviner","configSchemas","SchemaListDivinerConfigSchema","defaultConfigSchema","divineAddress","address","archivist","assertEx","archivistInstance","all","filtered","filter","isBoundWitness","isBoundWitnessWithMeta","bw","addresses","includes","flatMap","payload_schemas","distinct","divineAllAddresses","map","payload","schema","divineHandler","payloads","query","find","isSchemaListQueryPayload","Array","isArray","undefined","results","Promise","schemas","PayloadBuilder","SchemaListDivinerSchema","fields","build"]}
@@ -47,4 +47,4 @@ var MemorySchemaListDiviner = class extends SchemaListDiviner {
47
47
  export {
48
48
  MemorySchemaListDiviner
49
49
  };
50
- //# sourceMappingURL=index.js.map
50
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/MemorySchemaListDiviner.ts"],"sourcesContent":["import { distinct } from '@xylabs/array'\nimport { assertEx } from '@xylabs/assert'\nimport { Address } from '@xylabs/hex'\nimport { isBoundWitness, isBoundWitnessWithMeta } from '@xyo-network/boundwitness-model'\nimport { SchemaListDiviner } from '@xyo-network/diviner-schema-list-abstract'\nimport {\n isSchemaListQueryPayload,\n SchemaListDivinerConfigSchema,\n SchemaListDivinerParams,\n SchemaListDivinerSchema,\n SchemaListPayload,\n SchemaListQueryPayload,\n} from '@xyo-network/diviner-schema-list-model'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { Payload, Schema } from '@xyo-network/payload-model'\n\nexport class MemorySchemaListDiviner<TParams extends SchemaListDivinerParams = SchemaListDivinerParams> extends SchemaListDiviner<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, SchemaListDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = SchemaListDivinerConfigSchema\n\n protected async divineAddress(address: Address): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n const filtered = all\n .filter(isBoundWitness)\n .filter(isBoundWitnessWithMeta)\n .filter(bw => bw.addresses.includes(address))\n return filtered.flatMap(bw => bw.payload_schemas).filter(distinct)\n }\n\n protected async divineAllAddresses(): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n return all.map(payload => payload.schema).filter(distinct)\n }\n\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const query = payloads?.find<SchemaListQueryPayload>(isSchemaListQueryPayload)\n if (!query) return []\n const addresses\n = query?.address\n ? Array.isArray(query?.address)\n ? query.address\n : [query.address]\n : undefined\n const results = addresses ? await Promise.all(addresses.map(address => this.divineAddress(address))) : [await this.divineAllAddresses()]\n return await Promise.all(\n results.map(schemas => new PayloadBuilder<SchemaListPayload>({ schema: SchemaListDivinerSchema }).fields({ schemas }).build()),\n )\n }\n}\n"],"mappings":";;;;AAAA,SAASA,gBAAgB;AACzB,SAASC,gBAAgB;AAEzB,SAASC,gBAAgBC,8BAA8B;AACvD,SAASC,yBAAyB;AAClC,SACEC,0BACAC,+BAEAC,+BAGK;AACP,SAASC,sBAAsB;AAGxB,IAAMC,0BAAN,cAAyGC,kBAAAA;EAhBhH,OAgBgHA;;;EAC9G,OAAyBC,gBAA0B;OAAI,MAAMA;IAAeC;;EAC5E,OAAyBC,sBAA8BD;EAEvD,MAAgBE,cAAcC,SAAqC;AACjE,UAAMC,YAAYC,SAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,MAAMF,SAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,UAAMC,WAAWD,IACdE,OAAOC,cAAAA,EACPD,OAAOE,sBAAAA,EACPF,OAAOG,CAAAA,OAAMA,GAAGC,UAAUC,SAASX,OAAAA,CAAAA;AACtC,WAAOK,SAASO,QAAQH,CAAAA,OAAMA,GAAGI,eAAe,EAAEP,OAAOQ,QAAAA;EAC3D;EAEA,MAAgBC,qBAAwC;AACtD,UAAMd,YAAYC,SAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,MAAMF,SAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,WAAOA,IAAIY,IAAIC,CAAAA,YAAWA,QAAQC,MAAM,EAAEZ,OAAOQ,QAAAA;EACnD;EAEA,MAAyBK,cAAcC,UAA0C;AAC/E,UAAMC,QAAQD,UAAUE,KAA6BC,wBAAAA;AACrD,QAAI,CAACF,MAAO,QAAO,CAAA;AACnB,UAAMX,YACFW,OAAOrB,UACLwB,MAAMC,QAAQJ,OAAOrB,OAAAA,IACnBqB,MAAMrB,UACN;MAACqB,MAAMrB;QACT0B;AACN,UAAMC,UAAUjB,YAAY,MAAMkB,QAAQxB,IAAIM,UAAUM,IAAIhB,CAAAA,YAAW,KAAKD,cAAcC,OAAAA,CAAAA,CAAAA,IAAa;MAAC,MAAM,KAAKe,mBAAkB;;AACrI,WAAO,MAAMa,QAAQxB,IACnBuB,QAAQX,IAAIa,CAAAA,YAAW,IAAIC,eAAkC;MAAEZ,QAAQa;IAAwB,CAAA,EAAGC,OAAO;MAAEH;IAAQ,CAAA,EAAGI,MAAK,CAAA,CAAA;EAE/H;AACF;","names":["distinct","assertEx","isBoundWitness","isBoundWitnessWithMeta","SchemaListDiviner","isSchemaListQueryPayload","SchemaListDivinerConfigSchema","SchemaListDivinerSchema","PayloadBuilder","MemorySchemaListDiviner","SchemaListDiviner","configSchemas","SchemaListDivinerConfigSchema","defaultConfigSchema","divineAddress","address","archivist","assertEx","archivistInstance","all","filtered","filter","isBoundWitness","isBoundWitnessWithMeta","bw","addresses","includes","flatMap","payload_schemas","distinct","divineAllAddresses","map","payload","schema","divineHandler","payloads","query","find","isSchemaListQueryPayload","Array","isArray","undefined","results","Promise","schemas","PayloadBuilder","SchemaListDivinerSchema","fields","build"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts","../../src/MemorySchemaListDiviner.ts"],"sourcesContent":["export * from './MemorySchemaListDiviner.ts'\n","import { distinct } from '@xylabs/array'\nimport { assertEx } from '@xylabs/assert'\nimport { Address } from '@xylabs/hex'\nimport { isBoundWitness, isBoundWitnessWithMeta } from '@xyo-network/boundwitness-model'\nimport { SchemaListDiviner } from '@xyo-network/diviner-schema-list-abstract'\nimport {\n isSchemaListQueryPayload,\n SchemaListDivinerConfigSchema,\n SchemaListDivinerParams,\n SchemaListDivinerSchema,\n SchemaListPayload,\n SchemaListQueryPayload,\n} from '@xyo-network/diviner-schema-list-model'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { Payload, Schema } from '@xyo-network/payload-model'\n\nexport class MemorySchemaListDiviner<TParams extends SchemaListDivinerParams = SchemaListDivinerParams> extends SchemaListDiviner<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, SchemaListDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = SchemaListDivinerConfigSchema\n\n protected async divineAddress(address: Address): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n const filtered = all\n .filter(isBoundWitness)\n .filter(isBoundWitnessWithMeta)\n .filter((bw) => bw.addresses.includes(address))\n return filtered.flatMap((bw) => bw.payload_schemas).filter(distinct)\n }\n\n protected async divineAllAddresses(): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n return all.map((payload) => payload.schema).filter(distinct)\n }\n\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const query = payloads?.find<SchemaListQueryPayload>(isSchemaListQueryPayload)\n if (!query) return []\n const addresses =\n query?.address ?\n Array.isArray(query?.address) ?\n query.address\n : [query.address]\n : undefined\n const results = addresses ? await Promise.all(addresses.map((address) => this.divineAddress(address))) : [await this.divineAllAddresses()]\n return await Promise.all(\n results.map((schemas) => new PayloadBuilder<SchemaListPayload>({ schema: SchemaListDivinerSchema }).fields({ schemas }).build()),\n )\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;ACAA,mBAAyB;AACzB,oBAAyB;AAEzB,gCAAuD;AACvD,0CAAkC;AAClC,uCAOO;AACP,6BAA+B;AAGxB,IAAMA,0BAAN,cAAyGC,sDAAAA;EAhBhH,OAgBgHA;;;EAC9G,OAAyBC,gBAA0B;OAAI,MAAMA;IAAeC;;EAC5E,OAAyBC,sBAA8BD;EAEvD,MAAgBE,cAAcC,SAAqC;AACjE,UAAMC,gBAAYC,wBAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,UAAMF,wBAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,UAAMC,WAAWD,IACdE,OAAOC,wCAAAA,EACPD,OAAOE,gDAAAA,EACPF,OAAO,CAACG,OAAOA,GAAGC,UAAUC,SAASX,OAAAA,CAAAA;AACxC,WAAOK,SAASO,QAAQ,CAACH,OAAOA,GAAGI,eAAe,EAAEP,OAAOQ,qBAAAA;EAC7D;EAEA,MAAgBC,qBAAwC;AACtD,UAAMd,gBAAYC,wBAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,UAAMF,wBAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,WAAOA,IAAIY,IAAI,CAACC,YAAYA,QAAQC,MAAM,EAAEZ,OAAOQ,qBAAAA;EACrD;EAEA,MAAyBK,cAAcC,UAA0C;AAC/E,UAAMC,QAAQD,UAAUE,KAA6BC,yDAAAA;AACrD,QAAI,CAACF,MAAO,QAAO,CAAA;AACnB,UAAMX,YACJW,OAAOrB,UACLwB,MAAMC,QAAQJ,OAAOrB,OAAAA,IACnBqB,MAAMrB,UACN;MAACqB,MAAMrB;QACT0B;AACJ,UAAMC,UAAUjB,YAAY,MAAMkB,QAAQxB,IAAIM,UAAUM,IAAI,CAAChB,YAAY,KAAKD,cAAcC,OAAAA,CAAAA,CAAAA,IAAa;MAAC,MAAM,KAAKe,mBAAkB;;AACvI,WAAO,MAAMa,QAAQxB,IACnBuB,QAAQX,IAAI,CAACa,YAAY,IAAIC,sCAAkC;MAAEZ,QAAQa;IAAwB,CAAA,EAAGC,OAAO;MAAEH;IAAQ,CAAA,EAAGI,MAAK,CAAA,CAAA;EAEjI;AACF;","names":["MemorySchemaListDiviner","SchemaListDiviner","configSchemas","SchemaListDivinerConfigSchema","defaultConfigSchema","divineAddress","address","archivist","assertEx","archivistInstance","all","filtered","filter","isBoundWitness","isBoundWitnessWithMeta","bw","addresses","includes","flatMap","payload_schemas","distinct","divineAllAddresses","map","payload","schema","divineHandler","payloads","query","find","isSchemaListQueryPayload","Array","isArray","undefined","results","Promise","schemas","PayloadBuilder","SchemaListDivinerSchema","fields","build"]}
1
+ {"version":3,"sources":["../../src/index.ts","../../src/MemorySchemaListDiviner.ts"],"sourcesContent":["export * from './MemorySchemaListDiviner.ts'\n","import { distinct } from '@xylabs/array'\nimport { assertEx } from '@xylabs/assert'\nimport { Address } from '@xylabs/hex'\nimport { isBoundWitness, isBoundWitnessWithMeta } from '@xyo-network/boundwitness-model'\nimport { SchemaListDiviner } from '@xyo-network/diviner-schema-list-abstract'\nimport {\n isSchemaListQueryPayload,\n SchemaListDivinerConfigSchema,\n SchemaListDivinerParams,\n SchemaListDivinerSchema,\n SchemaListPayload,\n SchemaListQueryPayload,\n} from '@xyo-network/diviner-schema-list-model'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { Payload, Schema } from '@xyo-network/payload-model'\n\nexport class MemorySchemaListDiviner<TParams extends SchemaListDivinerParams = SchemaListDivinerParams> extends SchemaListDiviner<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, SchemaListDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = SchemaListDivinerConfigSchema\n\n protected async divineAddress(address: Address): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n const filtered = all\n .filter(isBoundWitness)\n .filter(isBoundWitnessWithMeta)\n .filter(bw => bw.addresses.includes(address))\n return filtered.flatMap(bw => bw.payload_schemas).filter(distinct)\n }\n\n protected async divineAllAddresses(): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n return all.map(payload => payload.schema).filter(distinct)\n }\n\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const query = payloads?.find<SchemaListQueryPayload>(isSchemaListQueryPayload)\n if (!query) return []\n const addresses\n = query?.address\n ? Array.isArray(query?.address)\n ? query.address\n : [query.address]\n : undefined\n const results = addresses ? await Promise.all(addresses.map(address => this.divineAddress(address))) : [await this.divineAllAddresses()]\n return await Promise.all(\n results.map(schemas => new PayloadBuilder<SchemaListPayload>({ schema: SchemaListDivinerSchema }).fields({ schemas }).build()),\n )\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;ACAA,mBAAyB;AACzB,oBAAyB;AAEzB,gCAAuD;AACvD,0CAAkC;AAClC,uCAOO;AACP,6BAA+B;AAGxB,IAAMA,0BAAN,cAAyGC,sDAAAA;EAhBhH,OAgBgHA;;;EAC9G,OAAyBC,gBAA0B;OAAI,MAAMA;IAAeC;;EAC5E,OAAyBC,sBAA8BD;EAEvD,MAAgBE,cAAcC,SAAqC;AACjE,UAAMC,gBAAYC,wBAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,UAAMF,wBAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,UAAMC,WAAWD,IACdE,OAAOC,wCAAAA,EACPD,OAAOE,gDAAAA,EACPF,OAAOG,CAAAA,OAAMA,GAAGC,UAAUC,SAASX,OAAAA,CAAAA;AACtC,WAAOK,SAASO,QAAQH,CAAAA,OAAMA,GAAGI,eAAe,EAAEP,OAAOQ,qBAAAA;EAC3D;EAEA,MAAgBC,qBAAwC;AACtD,UAAMd,gBAAYC,wBAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,UAAMF,wBAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,WAAOA,IAAIY,IAAIC,CAAAA,YAAWA,QAAQC,MAAM,EAAEZ,OAAOQ,qBAAAA;EACnD;EAEA,MAAyBK,cAAcC,UAA0C;AAC/E,UAAMC,QAAQD,UAAUE,KAA6BC,yDAAAA;AACrD,QAAI,CAACF,MAAO,QAAO,CAAA;AACnB,UAAMX,YACFW,OAAOrB,UACLwB,MAAMC,QAAQJ,OAAOrB,OAAAA,IACnBqB,MAAMrB,UACN;MAACqB,MAAMrB;QACT0B;AACN,UAAMC,UAAUjB,YAAY,MAAMkB,QAAQxB,IAAIM,UAAUM,IAAIhB,CAAAA,YAAW,KAAKD,cAAcC,OAAAA,CAAAA,CAAAA,IAAa;MAAC,MAAM,KAAKe,mBAAkB;;AACrI,WAAO,MAAMa,QAAQxB,IACnBuB,QAAQX,IAAIa,CAAAA,YAAW,IAAIC,sCAAkC;MAAEZ,QAAQa;IAAwB,CAAA,EAAGC,OAAO;MAAEH;IAAQ,CAAA,EAAGI,MAAK,CAAA,CAAA;EAE/H;AACF;","names":["MemorySchemaListDiviner","SchemaListDiviner","configSchemas","SchemaListDivinerConfigSchema","defaultConfigSchema","divineAddress","address","archivist","assertEx","archivistInstance","all","filtered","filter","isBoundWitness","isBoundWitnessWithMeta","bw","addresses","includes","flatMap","payload_schemas","distinct","divineAllAddresses","map","payload","schema","divineHandler","payloads","query","find","isSchemaListQueryPayload","Array","isArray","undefined","results","Promise","schemas","PayloadBuilder","SchemaListDivinerSchema","fields","build"]}
@@ -47,4 +47,4 @@ var MemorySchemaListDiviner = class extends SchemaListDiviner {
47
47
  export {
48
48
  MemorySchemaListDiviner
49
49
  };
50
- //# sourceMappingURL=index.js.map
50
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/MemorySchemaListDiviner.ts"],"sourcesContent":["import { distinct } from '@xylabs/array'\nimport { assertEx } from '@xylabs/assert'\nimport { Address } from '@xylabs/hex'\nimport { isBoundWitness, isBoundWitnessWithMeta } from '@xyo-network/boundwitness-model'\nimport { SchemaListDiviner } from '@xyo-network/diviner-schema-list-abstract'\nimport {\n isSchemaListQueryPayload,\n SchemaListDivinerConfigSchema,\n SchemaListDivinerParams,\n SchemaListDivinerSchema,\n SchemaListPayload,\n SchemaListQueryPayload,\n} from '@xyo-network/diviner-schema-list-model'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { Payload, Schema } from '@xyo-network/payload-model'\n\nexport class MemorySchemaListDiviner<TParams extends SchemaListDivinerParams = SchemaListDivinerParams> extends SchemaListDiviner<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, SchemaListDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = SchemaListDivinerConfigSchema\n\n protected async divineAddress(address: Address): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n const filtered = all\n .filter(isBoundWitness)\n .filter(isBoundWitnessWithMeta)\n .filter(bw => bw.addresses.includes(address))\n return filtered.flatMap(bw => bw.payload_schemas).filter(distinct)\n }\n\n protected async divineAllAddresses(): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n return all.map(payload => payload.schema).filter(distinct)\n }\n\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const query = payloads?.find<SchemaListQueryPayload>(isSchemaListQueryPayload)\n if (!query) return []\n const addresses\n = query?.address\n ? Array.isArray(query?.address)\n ? query.address\n : [query.address]\n : undefined\n const results = addresses ? await Promise.all(addresses.map(address => this.divineAddress(address))) : [await this.divineAllAddresses()]\n return await Promise.all(\n results.map(schemas => new PayloadBuilder<SchemaListPayload>({ schema: SchemaListDivinerSchema }).fields({ schemas }).build()),\n )\n }\n}\n"],"mappings":";;;;AAAA,SAASA,gBAAgB;AACzB,SAASC,gBAAgB;AAEzB,SAASC,gBAAgBC,8BAA8B;AACvD,SAASC,yBAAyB;AAClC,SACEC,0BACAC,+BAEAC,+BAGK;AACP,SAASC,sBAAsB;AAGxB,IAAMC,0BAAN,cAAyGC,kBAAAA;EAhBhH,OAgBgHA;;;EAC9G,OAAyBC,gBAA0B;OAAI,MAAMA;IAAeC;;EAC5E,OAAyBC,sBAA8BD;EAEvD,MAAgBE,cAAcC,SAAqC;AACjE,UAAMC,YAAYC,SAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,MAAMF,SAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,UAAMC,WAAWD,IACdE,OAAOC,cAAAA,EACPD,OAAOE,sBAAAA,EACPF,OAAOG,CAAAA,OAAMA,GAAGC,UAAUC,SAASX,OAAAA,CAAAA;AACtC,WAAOK,SAASO,QAAQH,CAAAA,OAAMA,GAAGI,eAAe,EAAEP,OAAOQ,QAAAA;EAC3D;EAEA,MAAgBC,qBAAwC;AACtD,UAAMd,YAAYC,SAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,MAAMF,SAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,WAAOA,IAAIY,IAAIC,CAAAA,YAAWA,QAAQC,MAAM,EAAEZ,OAAOQ,QAAAA;EACnD;EAEA,MAAyBK,cAAcC,UAA0C;AAC/E,UAAMC,QAAQD,UAAUE,KAA6BC,wBAAAA;AACrD,QAAI,CAACF,MAAO,QAAO,CAAA;AACnB,UAAMX,YACFW,OAAOrB,UACLwB,MAAMC,QAAQJ,OAAOrB,OAAAA,IACnBqB,MAAMrB,UACN;MAACqB,MAAMrB;QACT0B;AACN,UAAMC,UAAUjB,YAAY,MAAMkB,QAAQxB,IAAIM,UAAUM,IAAIhB,CAAAA,YAAW,KAAKD,cAAcC,OAAAA,CAAAA,CAAAA,IAAa;MAAC,MAAM,KAAKe,mBAAkB;;AACrI,WAAO,MAAMa,QAAQxB,IACnBuB,QAAQX,IAAIa,CAAAA,YAAW,IAAIC,eAAkC;MAAEZ,QAAQa;IAAwB,CAAA,EAAGC,OAAO;MAAEH;IAAQ,CAAA,EAAGI,MAAK,CAAA,CAAA;EAE/H;AACF;","names":["distinct","assertEx","isBoundWitness","isBoundWitnessWithMeta","SchemaListDiviner","isSchemaListQueryPayload","SchemaListDivinerConfigSchema","SchemaListDivinerSchema","PayloadBuilder","MemorySchemaListDiviner","SchemaListDiviner","configSchemas","SchemaListDivinerConfigSchema","defaultConfigSchema","divineAddress","address","archivist","assertEx","archivistInstance","all","filtered","filter","isBoundWitness","isBoundWitnessWithMeta","bw","addresses","includes","flatMap","payload_schemas","distinct","divineAllAddresses","map","payload","schema","divineHandler","payloads","query","find","isSchemaListQueryPayload","Array","isArray","undefined","results","Promise","schemas","PayloadBuilder","SchemaListDivinerSchema","fields","build"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts","../../src/MemorySchemaListDiviner.ts"],"sourcesContent":["export * from './MemorySchemaListDiviner.ts'\n","import { distinct } from '@xylabs/array'\nimport { assertEx } from '@xylabs/assert'\nimport { Address } from '@xylabs/hex'\nimport { isBoundWitness, isBoundWitnessWithMeta } from '@xyo-network/boundwitness-model'\nimport { SchemaListDiviner } from '@xyo-network/diviner-schema-list-abstract'\nimport {\n isSchemaListQueryPayload,\n SchemaListDivinerConfigSchema,\n SchemaListDivinerParams,\n SchemaListDivinerSchema,\n SchemaListPayload,\n SchemaListQueryPayload,\n} from '@xyo-network/diviner-schema-list-model'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { Payload, Schema } from '@xyo-network/payload-model'\n\nexport class MemorySchemaListDiviner<TParams extends SchemaListDivinerParams = SchemaListDivinerParams> extends SchemaListDiviner<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, SchemaListDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = SchemaListDivinerConfigSchema\n\n protected async divineAddress(address: Address): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n const filtered = all\n .filter(isBoundWitness)\n .filter(isBoundWitnessWithMeta)\n .filter((bw) => bw.addresses.includes(address))\n return filtered.flatMap((bw) => bw.payload_schemas).filter(distinct)\n }\n\n protected async divineAllAddresses(): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n return all.map((payload) => payload.schema).filter(distinct)\n }\n\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const query = payloads?.find<SchemaListQueryPayload>(isSchemaListQueryPayload)\n if (!query) return []\n const addresses =\n query?.address ?\n Array.isArray(query?.address) ?\n query.address\n : [query.address]\n : undefined\n const results = addresses ? await Promise.all(addresses.map((address) => this.divineAddress(address))) : [await this.divineAllAddresses()]\n return await Promise.all(\n results.map((schemas) => new PayloadBuilder<SchemaListPayload>({ schema: SchemaListDivinerSchema }).fields({ schemas }).build()),\n )\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;ACAA,mBAAyB;AACzB,oBAAyB;AAEzB,gCAAuD;AACvD,0CAAkC;AAClC,uCAOO;AACP,6BAA+B;AAGxB,IAAMA,2BAAN,MAAMA,iCAAmGC,sDAAAA;EAI9G,MAAgBC,cAAcC,SAAqC;AACjE,UAAMC,gBAAYC,wBAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,UAAMF,wBAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,UAAMC,WAAWD,IACdE,OAAOC,wCAAAA,EACPD,OAAOE,gDAAAA,EACPF,OAAO,CAACG,OAAOA,GAAGC,UAAUC,SAASX,OAAAA,CAAAA;AACxC,WAAOK,SAASO,QAAQ,CAACH,OAAOA,GAAGI,eAAe,EAAEP,OAAOQ,qBAAAA;EAC7D;EAEA,MAAgBC,qBAAwC;AACtD,UAAMd,gBAAYC,wBAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,UAAMF,wBAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,WAAOA,IAAIY,IAAI,CAACC,YAAYA,QAAQC,MAAM,EAAEZ,OAAOQ,qBAAAA;EACrD;EAEA,MAAyBK,cAAcC,UAA0C;AAC/E,UAAMC,QAAQD,qCAAUE,KAA6BC;AACrD,QAAI,CAACF,MAAO,QAAO,CAAA;AACnB,UAAMX,aACJW,+BAAOrB,WACLwB,MAAMC,QAAQJ,+BAAOrB,OAAAA,IACnBqB,MAAMrB,UACN;MAACqB,MAAMrB;QACT0B;AACJ,UAAMC,UAAUjB,YAAY,MAAMkB,QAAQxB,IAAIM,UAAUM,IAAI,CAAChB,YAAY,KAAKD,cAAcC,OAAAA,CAAAA,CAAAA,IAAa;MAAC,MAAM,KAAKe,mBAAkB;;AACvI,WAAO,MAAMa,QAAQxB,IACnBuB,QAAQX,IAAI,CAACa,YAAY,IAAIC,sCAAkC;MAAEZ,QAAQa;IAAwB,CAAA,EAAGC,OAAO;MAAEH;IAAQ,CAAA,EAAGI,MAAK,CAAA,CAAA;EAEjI;AACF;AAlCgHnC;AAC9G,cADWD,0BACcqC,iBAA0B;KAAI,+DAAMA;EAAeC;;AAC5E,cAFWtC,0BAEcuC,uBAA8BD;AAFlD,IAAMtC,0BAAN;","names":["MemorySchemaListDiviner","SchemaListDiviner","divineAddress","address","archivist","assertEx","archivistInstance","all","filtered","filter","isBoundWitness","isBoundWitnessWithMeta","bw","addresses","includes","flatMap","payload_schemas","distinct","divineAllAddresses","map","payload","schema","divineHandler","payloads","query","find","isSchemaListQueryPayload","Array","isArray","undefined","results","Promise","schemas","PayloadBuilder","SchemaListDivinerSchema","fields","build","configSchemas","SchemaListDivinerConfigSchema","defaultConfigSchema"]}
1
+ {"version":3,"sources":["../../src/index.ts","../../src/MemorySchemaListDiviner.ts"],"sourcesContent":["export * from './MemorySchemaListDiviner.ts'\n","import { distinct } from '@xylabs/array'\nimport { assertEx } from '@xylabs/assert'\nimport { Address } from '@xylabs/hex'\nimport { isBoundWitness, isBoundWitnessWithMeta } from '@xyo-network/boundwitness-model'\nimport { SchemaListDiviner } from '@xyo-network/diviner-schema-list-abstract'\nimport {\n isSchemaListQueryPayload,\n SchemaListDivinerConfigSchema,\n SchemaListDivinerParams,\n SchemaListDivinerSchema,\n SchemaListPayload,\n SchemaListQueryPayload,\n} from '@xyo-network/diviner-schema-list-model'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { Payload, Schema } from '@xyo-network/payload-model'\n\nexport class MemorySchemaListDiviner<TParams extends SchemaListDivinerParams = SchemaListDivinerParams> extends SchemaListDiviner<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, SchemaListDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = SchemaListDivinerConfigSchema\n\n protected async divineAddress(address: Address): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n const filtered = all\n .filter(isBoundWitness)\n .filter(isBoundWitnessWithMeta)\n .filter(bw => bw.addresses.includes(address))\n return filtered.flatMap(bw => bw.payload_schemas).filter(distinct)\n }\n\n protected async divineAllAddresses(): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n return all.map(payload => payload.schema).filter(distinct)\n }\n\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const query = payloads?.find<SchemaListQueryPayload>(isSchemaListQueryPayload)\n if (!query) return []\n const addresses\n = query?.address\n ? Array.isArray(query?.address)\n ? query.address\n : [query.address]\n : undefined\n const results = addresses ? await Promise.all(addresses.map(address => this.divineAddress(address))) : [await this.divineAllAddresses()]\n return await Promise.all(\n results.map(schemas => new PayloadBuilder<SchemaListPayload>({ schema: SchemaListDivinerSchema }).fields({ schemas }).build()),\n )\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;ACAA,mBAAyB;AACzB,oBAAyB;AAEzB,gCAAuD;AACvD,0CAAkC;AAClC,uCAOO;AACP,6BAA+B;AAGxB,IAAMA,2BAAN,MAAMA,iCAAmGC,sDAAAA;EAI9G,MAAgBC,cAAcC,SAAqC;AACjE,UAAMC,gBAAYC,wBAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,UAAMF,wBAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,UAAMC,WAAWD,IACdE,OAAOC,wCAAAA,EACPD,OAAOE,gDAAAA,EACPF,OAAOG,CAAAA,OAAMA,GAAGC,UAAUC,SAASX,OAAAA,CAAAA;AACtC,WAAOK,SAASO,QAAQH,CAAAA,OAAMA,GAAGI,eAAe,EAAEP,OAAOQ,qBAAAA;EAC3D;EAEA,MAAgBC,qBAAwC;AACtD,UAAMd,gBAAYC,wBAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,UAAMF,wBAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,WAAOA,IAAIY,IAAIC,CAAAA,YAAWA,QAAQC,MAAM,EAAEZ,OAAOQ,qBAAAA;EACnD;EAEA,MAAyBK,cAAcC,UAA0C;AAC/E,UAAMC,QAAQD,qCAAUE,KAA6BC;AACrD,QAAI,CAACF,MAAO,QAAO,CAAA;AACnB,UAAMX,aACFW,+BAAOrB,WACLwB,MAAMC,QAAQJ,+BAAOrB,OAAAA,IACnBqB,MAAMrB,UACN;MAACqB,MAAMrB;QACT0B;AACN,UAAMC,UAAUjB,YAAY,MAAMkB,QAAQxB,IAAIM,UAAUM,IAAIhB,CAAAA,YAAW,KAAKD,cAAcC,OAAAA,CAAAA,CAAAA,IAAa;MAAC,MAAM,KAAKe,mBAAkB;;AACrI,WAAO,MAAMa,QAAQxB,IACnBuB,QAAQX,IAAIa,CAAAA,YAAW,IAAIC,sCAAkC;MAAEZ,QAAQa;IAAwB,CAAA,EAAGC,OAAO;MAAEH;IAAQ,CAAA,EAAGI,MAAK,CAAA,CAAA;EAE/H;AACF;AAlCgHnC;AAC9G,cADWD,0BACcqC,iBAA0B;KAAI,+DAAMA;EAAeC;;AAC5E,cAFWtC,0BAEcuC,uBAA8BD;AAFlD,IAAMtC,0BAAN;","names":["MemorySchemaListDiviner","SchemaListDiviner","divineAddress","address","archivist","assertEx","archivistInstance","all","filtered","filter","isBoundWitness","isBoundWitnessWithMeta","bw","addresses","includes","flatMap","payload_schemas","distinct","divineAllAddresses","map","payload","schema","divineHandler","payloads","query","find","isSchemaListQueryPayload","Array","isArray","undefined","results","Promise","schemas","PayloadBuilder","SchemaListDivinerSchema","fields","build","configSchemas","SchemaListDivinerConfigSchema","defaultConfigSchema"]}
@@ -51,4 +51,4 @@ var MemorySchemaListDiviner = _MemorySchemaListDiviner;
51
51
  export {
52
52
  MemorySchemaListDiviner
53
53
  };
54
- //# sourceMappingURL=index.js.map
54
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/MemorySchemaListDiviner.ts"],"sourcesContent":["import { distinct } from '@xylabs/array'\nimport { assertEx } from '@xylabs/assert'\nimport { Address } from '@xylabs/hex'\nimport { isBoundWitness, isBoundWitnessWithMeta } from '@xyo-network/boundwitness-model'\nimport { SchemaListDiviner } from '@xyo-network/diviner-schema-list-abstract'\nimport {\n isSchemaListQueryPayload,\n SchemaListDivinerConfigSchema,\n SchemaListDivinerParams,\n SchemaListDivinerSchema,\n SchemaListPayload,\n SchemaListQueryPayload,\n} from '@xyo-network/diviner-schema-list-model'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { Payload, Schema } from '@xyo-network/payload-model'\n\nexport class MemorySchemaListDiviner<TParams extends SchemaListDivinerParams = SchemaListDivinerParams> extends SchemaListDiviner<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, SchemaListDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = SchemaListDivinerConfigSchema\n\n protected async divineAddress(address: Address): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n const filtered = all\n .filter(isBoundWitness)\n .filter(isBoundWitnessWithMeta)\n .filter(bw => bw.addresses.includes(address))\n return filtered.flatMap(bw => bw.payload_schemas).filter(distinct)\n }\n\n protected async divineAllAddresses(): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n return all.map(payload => payload.schema).filter(distinct)\n }\n\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const query = payloads?.find<SchemaListQueryPayload>(isSchemaListQueryPayload)\n if (!query) return []\n const addresses\n = query?.address\n ? Array.isArray(query?.address)\n ? query.address\n : [query.address]\n : undefined\n const results = addresses ? await Promise.all(addresses.map(address => this.divineAddress(address))) : [await this.divineAllAddresses()]\n return await Promise.all(\n results.map(schemas => new PayloadBuilder<SchemaListPayload>({ schema: SchemaListDivinerSchema }).fields({ schemas }).build()),\n )\n }\n}\n"],"mappings":";;;;;;;;;AAAA,SAASA,gBAAgB;AACzB,SAASC,gBAAgB;AAEzB,SAASC,gBAAgBC,8BAA8B;AACvD,SAASC,yBAAyB;AAClC,SACEC,0BACAC,+BAEAC,+BAGK;AACP,SAASC,sBAAsB;AAGxB,IAAMC,2BAAN,MAAMA,iCAAmGC,kBAAAA;EAI9G,MAAgBC,cAAcC,SAAqC;AACjE,UAAMC,YAAYC,SAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,MAAMF,SAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,UAAMC,WAAWD,IACdE,OAAOC,cAAAA,EACPD,OAAOE,sBAAAA,EACPF,OAAOG,CAAAA,OAAMA,GAAGC,UAAUC,SAASX,OAAAA,CAAAA;AACtC,WAAOK,SAASO,QAAQH,CAAAA,OAAMA,GAAGI,eAAe,EAAEP,OAAOQ,QAAAA;EAC3D;EAEA,MAAgBC,qBAAwC;AACtD,UAAMd,YAAYC,SAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,MAAMF,SAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,WAAOA,IAAIY,IAAIC,CAAAA,YAAWA,QAAQC,MAAM,EAAEZ,OAAOQ,QAAAA;EACnD;EAEA,MAAyBK,cAAcC,UAA0C;AAC/E,UAAMC,QAAQD,qCAAUE,KAA6BC;AACrD,QAAI,CAACF,MAAO,QAAO,CAAA;AACnB,UAAMX,aACFW,+BAAOrB,WACLwB,MAAMC,QAAQJ,+BAAOrB,OAAAA,IACnBqB,MAAMrB,UACN;MAACqB,MAAMrB;QACT0B;AACN,UAAMC,UAAUjB,YAAY,MAAMkB,QAAQxB,IAAIM,UAAUM,IAAIhB,CAAAA,YAAW,KAAKD,cAAcC,OAAAA,CAAAA,CAAAA,IAAa;MAAC,MAAM,KAAKe,mBAAkB;;AACrI,WAAO,MAAMa,QAAQxB,IACnBuB,QAAQX,IAAIa,CAAAA,YAAW,IAAIC,eAAkC;MAAEZ,QAAQa;IAAwB,CAAA,EAAGC,OAAO;MAAEH;IAAQ,CAAA,EAAGI,MAAK,CAAA,CAAA;EAE/H;AACF;AAlCgHnC;AAC9G,cADWD,0BACcqC,iBAA0B;KAAI,+DAAMA;EAAeC;;AAC5E,cAFWtC,0BAEcuC,uBAA8BD;AAFlD,IAAMtC,0BAAN;","names":["distinct","assertEx","isBoundWitness","isBoundWitnessWithMeta","SchemaListDiviner","isSchemaListQueryPayload","SchemaListDivinerConfigSchema","SchemaListDivinerSchema","PayloadBuilder","MemorySchemaListDiviner","SchemaListDiviner","divineAddress","address","archivist","assertEx","archivistInstance","all","filtered","filter","isBoundWitness","isBoundWitnessWithMeta","bw","addresses","includes","flatMap","payload_schemas","distinct","divineAllAddresses","map","payload","schema","divineHandler","payloads","query","find","isSchemaListQueryPayload","Array","isArray","undefined","results","Promise","schemas","PayloadBuilder","SchemaListDivinerSchema","fields","build","configSchemas","SchemaListDivinerConfigSchema","defaultConfigSchema"]}
package/package.json CHANGED
@@ -10,18 +10,18 @@
10
10
  "url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues"
11
11
  },
12
12
  "dependencies": {
13
- "@xylabs/array": "^3.6.6",
14
- "@xylabs/assert": "^3.6.6",
15
- "@xylabs/hex": "^3.6.6",
16
- "@xyo-network/boundwitness-model": "^2.110.18",
17
- "@xyo-network/diviner-schema-list-abstract": "^2.110.18",
18
- "@xyo-network/diviner-schema-list-model": "^2.110.18",
19
- "@xyo-network/payload-builder": "^2.110.18",
20
- "@xyo-network/payload-model": "^2.110.18"
13
+ "@xylabs/array": "^3.6.8",
14
+ "@xylabs/assert": "^3.6.8",
15
+ "@xylabs/hex": "^3.6.8",
16
+ "@xyo-network/boundwitness-model": "^2.111.0",
17
+ "@xyo-network/diviner-schema-list-abstract": "^2.111.0",
18
+ "@xyo-network/diviner-schema-list-model": "^2.111.0",
19
+ "@xyo-network/payload-builder": "^2.111.0",
20
+ "@xyo-network/payload-model": "^2.111.0"
21
21
  },
22
22
  "devDependencies": {
23
- "@xylabs/ts-scripts-yarn3": "^3.14.1",
24
- "@xylabs/tsconfig": "^3.14.1",
23
+ "@xylabs/ts-scripts-yarn3": "^3.15.5",
24
+ "@xylabs/tsconfig": "^3.15.5",
25
25
  "typescript": "^5.5.4"
26
26
  },
27
27
  "description": "Primary SDK for using XYO Protocol 2.0",
@@ -35,7 +35,7 @@
35
35
  },
36
36
  "import": {
37
37
  "types": "./dist/browser/index.d.mts",
38
- "default": "./dist/browser/index.js"
38
+ "default": "./dist/browser/index.mjs"
39
39
  }
40
40
  },
41
41
  "node": {
@@ -45,14 +45,14 @@
45
45
  },
46
46
  "import": {
47
47
  "types": "./dist/node/index.d.mts",
48
- "default": "./dist/node/index.js"
48
+ "default": "./dist/node/index.mjs"
49
49
  }
50
50
  }
51
51
  },
52
52
  "./package.json": "./package.json"
53
53
  },
54
54
  "main": "dist/node/index.cjs",
55
- "module": "dist/node/index.js",
55
+ "module": "dist/node/index.mjs",
56
56
  "homepage": "https://xyo.network",
57
57
  "license": "LGPL-3.0-only",
58
58
  "publishConfig": {
@@ -63,6 +63,6 @@
63
63
  "url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js.git"
64
64
  },
65
65
  "sideEffects": false,
66
- "version": "2.110.18",
66
+ "version": "2.111.0",
67
67
  "type": "module"
68
68
  }
@@ -24,28 +24,28 @@ export class MemorySchemaListDiviner<TParams extends SchemaListDivinerParams = S
24
24
  const filtered = all
25
25
  .filter(isBoundWitness)
26
26
  .filter(isBoundWitnessWithMeta)
27
- .filter((bw) => bw.addresses.includes(address))
28
- return filtered.flatMap((bw) => bw.payload_schemas).filter(distinct)
27
+ .filter(bw => bw.addresses.includes(address))
28
+ return filtered.flatMap(bw => bw.payload_schemas).filter(distinct)
29
29
  }
30
30
 
31
31
  protected async divineAllAddresses(): Promise<string[]> {
32
32
  const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')
33
33
  const all = await assertEx(archivist.all, () => 'Archivist does not support "all"')()
34
- return all.map((payload) => payload.schema).filter(distinct)
34
+ return all.map(payload => payload.schema).filter(distinct)
35
35
  }
36
36
 
37
37
  protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {
38
38
  const query = payloads?.find<SchemaListQueryPayload>(isSchemaListQueryPayload)
39
39
  if (!query) return []
40
- const addresses =
41
- query?.address ?
42
- Array.isArray(query?.address) ?
43
- query.address
44
- : [query.address]
45
- : undefined
46
- const results = addresses ? await Promise.all(addresses.map((address) => this.divineAddress(address))) : [await this.divineAllAddresses()]
40
+ const addresses
41
+ = query?.address
42
+ ? Array.isArray(query?.address)
43
+ ? query.address
44
+ : [query.address]
45
+ : undefined
46
+ const results = addresses ? await Promise.all(addresses.map(address => this.divineAddress(address))) : [await this.divineAllAddresses()]
47
47
  return await Promise.all(
48
- results.map((schemas) => new PayloadBuilder<SchemaListPayload>({ schema: SchemaListDivinerSchema }).fields({ schemas }).build()),
48
+ results.map(schemas => new PayloadBuilder<SchemaListPayload>({ schema: SchemaListDivinerSchema }).fields({ schemas }).build()),
49
49
  )
50
50
  }
51
51
  }
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/MemorySchemaListDiviner.ts"],"sourcesContent":["import { distinct } from '@xylabs/array'\nimport { assertEx } from '@xylabs/assert'\nimport { Address } from '@xylabs/hex'\nimport { isBoundWitness, isBoundWitnessWithMeta } from '@xyo-network/boundwitness-model'\nimport { SchemaListDiviner } from '@xyo-network/diviner-schema-list-abstract'\nimport {\n isSchemaListQueryPayload,\n SchemaListDivinerConfigSchema,\n SchemaListDivinerParams,\n SchemaListDivinerSchema,\n SchemaListPayload,\n SchemaListQueryPayload,\n} from '@xyo-network/diviner-schema-list-model'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { Payload, Schema } from '@xyo-network/payload-model'\n\nexport class MemorySchemaListDiviner<TParams extends SchemaListDivinerParams = SchemaListDivinerParams> extends SchemaListDiviner<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, SchemaListDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = SchemaListDivinerConfigSchema\n\n protected async divineAddress(address: Address): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n const filtered = all\n .filter(isBoundWitness)\n .filter(isBoundWitnessWithMeta)\n .filter((bw) => bw.addresses.includes(address))\n return filtered.flatMap((bw) => bw.payload_schemas).filter(distinct)\n }\n\n protected async divineAllAddresses(): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n return all.map((payload) => payload.schema).filter(distinct)\n }\n\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const query = payloads?.find<SchemaListQueryPayload>(isSchemaListQueryPayload)\n if (!query) return []\n const addresses =\n query?.address ?\n Array.isArray(query?.address) ?\n query.address\n : [query.address]\n : undefined\n const results = addresses ? await Promise.all(addresses.map((address) => this.divineAddress(address))) : [await this.divineAllAddresses()]\n return await Promise.all(\n results.map((schemas) => new PayloadBuilder<SchemaListPayload>({ schema: SchemaListDivinerSchema }).fields({ schemas }).build()),\n )\n }\n}\n"],"mappings":";;;;AAAA,SAASA,gBAAgB;AACzB,SAASC,gBAAgB;AAEzB,SAASC,gBAAgBC,8BAA8B;AACvD,SAASC,yBAAyB;AAClC,SACEC,0BACAC,+BAEAC,+BAGK;AACP,SAASC,sBAAsB;AAGxB,IAAMC,0BAAN,cAAyGC,kBAAAA;EAhBhH,OAgBgHA;;;EAC9G,OAAyBC,gBAA0B;OAAI,MAAMA;IAAeC;;EAC5E,OAAyBC,sBAA8BD;EAEvD,MAAgBE,cAAcC,SAAqC;AACjE,UAAMC,YAAYC,SAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,MAAMF,SAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,UAAMC,WAAWD,IACdE,OAAOC,cAAAA,EACPD,OAAOE,sBAAAA,EACPF,OAAO,CAACG,OAAOA,GAAGC,UAAUC,SAASX,OAAAA,CAAAA;AACxC,WAAOK,SAASO,QAAQ,CAACH,OAAOA,GAAGI,eAAe,EAAEP,OAAOQ,QAAAA;EAC7D;EAEA,MAAgBC,qBAAwC;AACtD,UAAMd,YAAYC,SAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,MAAMF,SAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,WAAOA,IAAIY,IAAI,CAACC,YAAYA,QAAQC,MAAM,EAAEZ,OAAOQ,QAAAA;EACrD;EAEA,MAAyBK,cAAcC,UAA0C;AAC/E,UAAMC,QAAQD,UAAUE,KAA6BC,wBAAAA;AACrD,QAAI,CAACF,MAAO,QAAO,CAAA;AACnB,UAAMX,YACJW,OAAOrB,UACLwB,MAAMC,QAAQJ,OAAOrB,OAAAA,IACnBqB,MAAMrB,UACN;MAACqB,MAAMrB;QACT0B;AACJ,UAAMC,UAAUjB,YAAY,MAAMkB,QAAQxB,IAAIM,UAAUM,IAAI,CAAChB,YAAY,KAAKD,cAAcC,OAAAA,CAAAA,CAAAA,IAAa;MAAC,MAAM,KAAKe,mBAAkB;;AACvI,WAAO,MAAMa,QAAQxB,IACnBuB,QAAQX,IAAI,CAACa,YAAY,IAAIC,eAAkC;MAAEZ,QAAQa;IAAwB,CAAA,EAAGC,OAAO;MAAEH;IAAQ,CAAA,EAAGI,MAAK,CAAA,CAAA;EAEjI;AACF;","names":["distinct","assertEx","isBoundWitness","isBoundWitnessWithMeta","SchemaListDiviner","isSchemaListQueryPayload","SchemaListDivinerConfigSchema","SchemaListDivinerSchema","PayloadBuilder","MemorySchemaListDiviner","SchemaListDiviner","configSchemas","SchemaListDivinerConfigSchema","defaultConfigSchema","divineAddress","address","archivist","assertEx","archivistInstance","all","filtered","filter","isBoundWitness","isBoundWitnessWithMeta","bw","addresses","includes","flatMap","payload_schemas","distinct","divineAllAddresses","map","payload","schema","divineHandler","payloads","query","find","isSchemaListQueryPayload","Array","isArray","undefined","results","Promise","schemas","PayloadBuilder","SchemaListDivinerSchema","fields","build"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/MemorySchemaListDiviner.ts"],"sourcesContent":["import { distinct } from '@xylabs/array'\nimport { assertEx } from '@xylabs/assert'\nimport { Address } from '@xylabs/hex'\nimport { isBoundWitness, isBoundWitnessWithMeta } from '@xyo-network/boundwitness-model'\nimport { SchemaListDiviner } from '@xyo-network/diviner-schema-list-abstract'\nimport {\n isSchemaListQueryPayload,\n SchemaListDivinerConfigSchema,\n SchemaListDivinerParams,\n SchemaListDivinerSchema,\n SchemaListPayload,\n SchemaListQueryPayload,\n} from '@xyo-network/diviner-schema-list-model'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { Payload, Schema } from '@xyo-network/payload-model'\n\nexport class MemorySchemaListDiviner<TParams extends SchemaListDivinerParams = SchemaListDivinerParams> extends SchemaListDiviner<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, SchemaListDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = SchemaListDivinerConfigSchema\n\n protected async divineAddress(address: Address): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n const filtered = all\n .filter(isBoundWitness)\n .filter(isBoundWitnessWithMeta)\n .filter((bw) => bw.addresses.includes(address))\n return filtered.flatMap((bw) => bw.payload_schemas).filter(distinct)\n }\n\n protected async divineAllAddresses(): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n return all.map((payload) => payload.schema).filter(distinct)\n }\n\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const query = payloads?.find<SchemaListQueryPayload>(isSchemaListQueryPayload)\n if (!query) return []\n const addresses =\n query?.address ?\n Array.isArray(query?.address) ?\n query.address\n : [query.address]\n : undefined\n const results = addresses ? await Promise.all(addresses.map((address) => this.divineAddress(address))) : [await this.divineAllAddresses()]\n return await Promise.all(\n results.map((schemas) => new PayloadBuilder<SchemaListPayload>({ schema: SchemaListDivinerSchema }).fields({ schemas }).build()),\n )\n }\n}\n"],"mappings":";;;;AAAA,SAASA,gBAAgB;AACzB,SAASC,gBAAgB;AAEzB,SAASC,gBAAgBC,8BAA8B;AACvD,SAASC,yBAAyB;AAClC,SACEC,0BACAC,+BAEAC,+BAGK;AACP,SAASC,sBAAsB;AAGxB,IAAMC,0BAAN,cAAyGC,kBAAAA;EAhBhH,OAgBgHA;;;EAC9G,OAAyBC,gBAA0B;OAAI,MAAMA;IAAeC;;EAC5E,OAAyBC,sBAA8BD;EAEvD,MAAgBE,cAAcC,SAAqC;AACjE,UAAMC,YAAYC,SAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,MAAMF,SAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,UAAMC,WAAWD,IACdE,OAAOC,cAAAA,EACPD,OAAOE,sBAAAA,EACPF,OAAO,CAACG,OAAOA,GAAGC,UAAUC,SAASX,OAAAA,CAAAA;AACxC,WAAOK,SAASO,QAAQ,CAACH,OAAOA,GAAGI,eAAe,EAAEP,OAAOQ,QAAAA;EAC7D;EAEA,MAAgBC,qBAAwC;AACtD,UAAMd,YAAYC,SAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,MAAMF,SAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,WAAOA,IAAIY,IAAI,CAACC,YAAYA,QAAQC,MAAM,EAAEZ,OAAOQ,QAAAA;EACrD;EAEA,MAAyBK,cAAcC,UAA0C;AAC/E,UAAMC,QAAQD,UAAUE,KAA6BC,wBAAAA;AACrD,QAAI,CAACF,MAAO,QAAO,CAAA;AACnB,UAAMX,YACJW,OAAOrB,UACLwB,MAAMC,QAAQJ,OAAOrB,OAAAA,IACnBqB,MAAMrB,UACN;MAACqB,MAAMrB;QACT0B;AACJ,UAAMC,UAAUjB,YAAY,MAAMkB,QAAQxB,IAAIM,UAAUM,IAAI,CAAChB,YAAY,KAAKD,cAAcC,OAAAA,CAAAA,CAAAA,IAAa;MAAC,MAAM,KAAKe,mBAAkB;;AACvI,WAAO,MAAMa,QAAQxB,IACnBuB,QAAQX,IAAI,CAACa,YAAY,IAAIC,eAAkC;MAAEZ,QAAQa;IAAwB,CAAA,EAAGC,OAAO;MAAEH;IAAQ,CAAA,EAAGI,MAAK,CAAA,CAAA;EAEjI;AACF;","names":["distinct","assertEx","isBoundWitness","isBoundWitnessWithMeta","SchemaListDiviner","isSchemaListQueryPayload","SchemaListDivinerConfigSchema","SchemaListDivinerSchema","PayloadBuilder","MemorySchemaListDiviner","SchemaListDiviner","configSchemas","SchemaListDivinerConfigSchema","defaultConfigSchema","divineAddress","address","archivist","assertEx","archivistInstance","all","filtered","filter","isBoundWitness","isBoundWitnessWithMeta","bw","addresses","includes","flatMap","payload_schemas","distinct","divineAllAddresses","map","payload","schema","divineHandler","payloads","query","find","isSchemaListQueryPayload","Array","isArray","undefined","results","Promise","schemas","PayloadBuilder","SchemaListDivinerSchema","fields","build"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/MemorySchemaListDiviner.ts"],"sourcesContent":["import { distinct } from '@xylabs/array'\nimport { assertEx } from '@xylabs/assert'\nimport { Address } from '@xylabs/hex'\nimport { isBoundWitness, isBoundWitnessWithMeta } from '@xyo-network/boundwitness-model'\nimport { SchemaListDiviner } from '@xyo-network/diviner-schema-list-abstract'\nimport {\n isSchemaListQueryPayload,\n SchemaListDivinerConfigSchema,\n SchemaListDivinerParams,\n SchemaListDivinerSchema,\n SchemaListPayload,\n SchemaListQueryPayload,\n} from '@xyo-network/diviner-schema-list-model'\nimport { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { Payload, Schema } from '@xyo-network/payload-model'\n\nexport class MemorySchemaListDiviner<TParams extends SchemaListDivinerParams = SchemaListDivinerParams> extends SchemaListDiviner<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, SchemaListDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = SchemaListDivinerConfigSchema\n\n protected async divineAddress(address: Address): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n const filtered = all\n .filter(isBoundWitness)\n .filter(isBoundWitnessWithMeta)\n .filter((bw) => bw.addresses.includes(address))\n return filtered.flatMap((bw) => bw.payload_schemas).filter(distinct)\n }\n\n protected async divineAllAddresses(): Promise<string[]> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await assertEx(archivist.all, () => 'Archivist does not support \"all\"')()\n return all.map((payload) => payload.schema).filter(distinct)\n }\n\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const query = payloads?.find<SchemaListQueryPayload>(isSchemaListQueryPayload)\n if (!query) return []\n const addresses =\n query?.address ?\n Array.isArray(query?.address) ?\n query.address\n : [query.address]\n : undefined\n const results = addresses ? await Promise.all(addresses.map((address) => this.divineAddress(address))) : [await this.divineAllAddresses()]\n return await Promise.all(\n results.map((schemas) => new PayloadBuilder<SchemaListPayload>({ schema: SchemaListDivinerSchema }).fields({ schemas }).build()),\n )\n }\n}\n"],"mappings":";;;;;;;;;AAAA,SAASA,gBAAgB;AACzB,SAASC,gBAAgB;AAEzB,SAASC,gBAAgBC,8BAA8B;AACvD,SAASC,yBAAyB;AAClC,SACEC,0BACAC,+BAEAC,+BAGK;AACP,SAASC,sBAAsB;AAGxB,IAAMC,2BAAN,MAAMA,iCAAmGC,kBAAAA;EAI9G,MAAgBC,cAAcC,SAAqC;AACjE,UAAMC,YAAYC,SAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,MAAMF,SAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,UAAMC,WAAWD,IACdE,OAAOC,cAAAA,EACPD,OAAOE,sBAAAA,EACPF,OAAO,CAACG,OAAOA,GAAGC,UAAUC,SAASX,OAAAA,CAAAA;AACxC,WAAOK,SAASO,QAAQ,CAACH,OAAOA,GAAGI,eAAe,EAAEP,OAAOQ,QAAAA;EAC7D;EAEA,MAAgBC,qBAAwC;AACtD,UAAMd,YAAYC,SAAS,MAAM,KAAKC,kBAAiB,GAAI,MAAM,6BAAA;AACjE,UAAMC,MAAM,MAAMF,SAASD,UAAUG,KAAK,MAAM,kCAAA,EAAA;AAChD,WAAOA,IAAIY,IAAI,CAACC,YAAYA,QAAQC,MAAM,EAAEZ,OAAOQ,QAAAA;EACrD;EAEA,MAAyBK,cAAcC,UAA0C;AAC/E,UAAMC,QAAQD,qCAAUE,KAA6BC;AACrD,QAAI,CAACF,MAAO,QAAO,CAAA;AACnB,UAAMX,aACJW,+BAAOrB,WACLwB,MAAMC,QAAQJ,+BAAOrB,OAAAA,IACnBqB,MAAMrB,UACN;MAACqB,MAAMrB;QACT0B;AACJ,UAAMC,UAAUjB,YAAY,MAAMkB,QAAQxB,IAAIM,UAAUM,IAAI,CAAChB,YAAY,KAAKD,cAAcC,OAAAA,CAAAA,CAAAA,IAAa;MAAC,MAAM,KAAKe,mBAAkB;;AACvI,WAAO,MAAMa,QAAQxB,IACnBuB,QAAQX,IAAI,CAACa,YAAY,IAAIC,eAAkC;MAAEZ,QAAQa;IAAwB,CAAA,EAAGC,OAAO;MAAEH;IAAQ,CAAA,EAAGI,MAAK,CAAA,CAAA;EAEjI;AACF;AAlCgHnC;AAC9G,cADWD,0BACcqC,iBAA0B;KAAI,+DAAMA;EAAeC;;AAC5E,cAFWtC,0BAEcuC,uBAA8BD;AAFlD,IAAMtC,0BAAN;","names":["distinct","assertEx","isBoundWitness","isBoundWitnessWithMeta","SchemaListDiviner","isSchemaListQueryPayload","SchemaListDivinerConfigSchema","SchemaListDivinerSchema","PayloadBuilder","MemorySchemaListDiviner","SchemaListDiviner","divineAddress","address","archivist","assertEx","archivistInstance","all","filtered","filter","isBoundWitness","isBoundWitnessWithMeta","bw","addresses","includes","flatMap","payload_schemas","distinct","divineAllAddresses","map","payload","schema","divineHandler","payloads","query","find","isSchemaListQueryPayload","Array","isArray","undefined","results","Promise","schemas","PayloadBuilder","SchemaListDivinerSchema","fields","build","configSchemas","SchemaListDivinerConfigSchema","defaultConfigSchema"]}