@xyo-network/diviner 2.38.15 → 2.38.17
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/cjs/Payload/Archivist/Config.d.ts +1 -1
- package/dist/cjs/Payload/Archivist/Config.d.ts.map +1 -1
- package/dist/cjs/Payload/Archivist/Diviner.d.ts +2 -2
- package/dist/cjs/Payload/Archivist/Diviner.d.ts.map +1 -1
- package/dist/cjs/Payload/Archivist/Diviner.js +13 -13
- package/dist/cjs/Payload/Archivist/Diviner.js.map +1 -1
- package/dist/cjs/Payload/Huri/Config.d.ts +1 -1
- package/dist/cjs/Payload/Huri/Config.d.ts.map +1 -1
- package/dist/cjs/Payload/Huri/Diviner.d.ts +2 -2
- package/dist/cjs/Payload/Huri/Diviner.d.ts.map +1 -1
- package/dist/cjs/Payload/Huri/Diviner.js +7 -7
- package/dist/cjs/Payload/Huri/Diviner.js.map +1 -1
- package/dist/cjs/Payload/XyoHuriPayload.d.ts +1 -1
- package/dist/cjs/Payload/XyoHuriPayload.d.ts.map +1 -1
- package/dist/cjs/XyoDiviner.d.ts +3 -3
- package/dist/cjs/XyoDiviner.d.ts.map +1 -1
- package/dist/cjs/XyoDiviner.js +4 -4
- package/dist/cjs/XyoDiviner.js.map +1 -1
- package/dist/docs.json +2422 -2422
- package/dist/esm/Payload/Archivist/Config.d.ts +1 -1
- package/dist/esm/Payload/Archivist/Config.d.ts.map +1 -1
- package/dist/esm/Payload/Archivist/Diviner.d.ts +2 -2
- package/dist/esm/Payload/Archivist/Diviner.d.ts.map +1 -1
- package/dist/esm/Payload/Archivist/Diviner.js +12 -12
- package/dist/esm/Payload/Archivist/Diviner.js.map +1 -1
- package/dist/esm/Payload/Huri/Config.d.ts +1 -1
- package/dist/esm/Payload/Huri/Config.d.ts.map +1 -1
- package/dist/esm/Payload/Huri/Diviner.d.ts +2 -2
- package/dist/esm/Payload/Huri/Diviner.d.ts.map +1 -1
- package/dist/esm/Payload/Huri/Diviner.js +6 -6
- package/dist/esm/Payload/Huri/Diviner.js.map +1 -1
- package/dist/esm/Payload/XyoHuriPayload.d.ts +1 -1
- package/dist/esm/Payload/XyoHuriPayload.d.ts.map +1 -1
- package/dist/esm/XyoDiviner.d.ts +3 -3
- package/dist/esm/XyoDiviner.d.ts.map +1 -1
- package/dist/esm/XyoDiviner.js +5 -5
- package/dist/esm/XyoDiviner.js.map +1 -1
- package/package.json +6 -6
- package/src/Payload/Archivist/Config.ts +1 -1
- package/src/Payload/Archivist/Diviner.ts +16 -16
- package/src/Payload/Huri/Config.ts +1 -1
- package/src/Payload/Huri/Diviner.ts +8 -8
- package/src/Payload/XyoHuriPayload.ts +1 -1
- package/src/XyoDiviner.ts +9 -9
|
@@ -3,7 +3,7 @@ import { XyoDivinerConfig } from '../../Config';
|
|
|
3
3
|
export declare type XyoArchivistPayloadDivinerConfigSchema = 'network.xyo.diviner.payload.archivist.config';
|
|
4
4
|
export declare const XyoArchivistPayloadDivinerConfigSchema: XyoArchivistPayloadDivinerConfigSchema;
|
|
5
5
|
export declare type XyoArchivistPayloadDivinerConfig<T extends XyoPayload = XyoPayload> = XyoDivinerConfig<XyoPayload, T & {
|
|
6
|
-
schema: XyoArchivistPayloadDivinerConfigSchema;
|
|
7
6
|
archivist?: string;
|
|
7
|
+
schema: XyoArchivistPayloadDivinerConfigSchema;
|
|
8
8
|
}>;
|
|
9
9
|
//# sourceMappingURL=Config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../../../src/Payload/Archivist/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAE/C,oBAAY,sCAAsC,GAAG,8CAA8C,CAAA;AACnG,eAAO,MAAM,sCAAsC,EAAE,sCAAuF,CAAA;AAE5I,oBAAY,gCAAgC,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,IAAI,gBAAgB,CAChG,UAAU,EACV,CAAC,GAAG;IACF,
|
|
1
|
+
{"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../../../src/Payload/Archivist/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAE/C,oBAAY,sCAAsC,GAAG,8CAA8C,CAAA;AACnG,eAAO,MAAM,sCAAsC,EAAE,sCAAuF,CAAA;AAE5I,oBAAY,gCAAgC,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,IAAI,gBAAgB,CAChG,UAAU,EACV,CAAC,GAAG;IACF,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,sCAAsC,CAAA;CAC/C,CACF,CAAA"}
|
|
@@ -4,10 +4,10 @@ import { XyoPayload } from '@xyo-network/payload';
|
|
|
4
4
|
import { XyoPayloadDiviner } from '../XyoPayloadDiviner';
|
|
5
5
|
import { XyoArchivistPayloadDivinerConfig } from './Config';
|
|
6
6
|
export declare class XyoArchivistPayloadDiviner extends XyoPayloadDiviner<XyoArchivistPayloadDivinerConfig> {
|
|
7
|
-
static create(params?: XyoModuleParams<XyoArchivistPayloadDivinerConfig>): Promise<XyoArchivistPayloadDiviner>;
|
|
8
7
|
protected archivist?: PayloadArchivist | null;
|
|
8
|
+
static create(params?: XyoModuleParams<XyoArchivistPayloadDivinerConfig>): Promise<XyoArchivistPayloadDiviner>;
|
|
9
|
+
divine(payloads?: XyoPayload[]): Promise<XyoPayload[]>;
|
|
9
10
|
queries(): string[];
|
|
10
11
|
protected start(): Promise<this>;
|
|
11
|
-
divine(payloads?: XyoPayload[]): Promise<XyoPayload[]>;
|
|
12
12
|
}
|
|
13
13
|
//# sourceMappingURL=Diviner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../../../src/Payload/Archivist/Diviner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAyE,MAAM,wBAAwB,CAAA;AAChI,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAwB,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAIvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,gCAAgC,EAAE,MAAM,UAAU,CAAA;AAE3D,qBAAa,0BAA2B,SAAQ,iBAAiB,CAAC,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../../../src/Payload/Archivist/Diviner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAyE,MAAM,wBAAwB,CAAA;AAChI,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAwB,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAIvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,gCAAgC,EAAE,MAAM,UAAU,CAAA;AAE3D,qBAAa,0BAA2B,SAAQ,iBAAiB,CAAC,gCAAgC,CAAC;IACjG,SAAS,CAAC,SAAS,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAA;WAEvB,MAAM,CAAC,MAAM,CAAC,EAAE,eAAe,CAAC,gCAAgC,CAAC,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAOhH,MAAM,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAe1D,OAAO;cAIS,KAAK;CAa/B"}
|
|
@@ -5,13 +5,24 @@ import { XyoDivinerDivineQuerySchema } from '../../Queries';
|
|
|
5
5
|
import { XyoHuriSchema } from '../XyoHuriPayload';
|
|
6
6
|
import { XyoPayloadDiviner } from '../XyoPayloadDiviner';
|
|
7
7
|
export class XyoArchivistPayloadDiviner extends XyoPayloadDiviner {
|
|
8
|
+
archivist;
|
|
8
9
|
static async create(params) {
|
|
9
10
|
params?.logger?.debug(`config: ${JSON.stringify(params.config, null, 2)}`);
|
|
10
11
|
const module = new XyoArchivistPayloadDiviner(params);
|
|
11
12
|
await module.start();
|
|
12
13
|
return module;
|
|
13
14
|
}
|
|
14
|
-
|
|
15
|
+
async divine(payloads) {
|
|
16
|
+
const huriPayloads = assertEx(payloads?.filter((payload) => payload?.schema === XyoHuriSchema), `no huri payloads provided: ${JSON.stringify(payloads, null, 2)}`);
|
|
17
|
+
const hashes = huriPayloads.map((huriPayload) => huriPayload.huri.map((huri) => new Huri(huri).hash)).flat();
|
|
18
|
+
const activeArchivist = this.archivist;
|
|
19
|
+
if (activeArchivist) {
|
|
20
|
+
const queryPayload = PayloadWrapper.parse({ hashes, schema: XyoArchivistGetQuerySchema });
|
|
21
|
+
const query = await this.bindQuery(queryPayload);
|
|
22
|
+
return (await activeArchivist.query(query[0], query[1]))[1];
|
|
23
|
+
}
|
|
24
|
+
return [];
|
|
25
|
+
}
|
|
15
26
|
queries() {
|
|
16
27
|
return [XyoDivinerDivineQuerySchema, ...super.queries()];
|
|
17
28
|
}
|
|
@@ -28,16 +39,5 @@ export class XyoArchivistPayloadDiviner extends XyoPayloadDiviner {
|
|
|
28
39
|
}
|
|
29
40
|
return this;
|
|
30
41
|
}
|
|
31
|
-
async divine(payloads) {
|
|
32
|
-
const huriPayloads = assertEx(payloads?.filter((payload) => payload?.schema === XyoHuriSchema), `no huri payloads provided: ${JSON.stringify(payloads, null, 2)}`);
|
|
33
|
-
const hashes = huriPayloads.map((huriPayload) => huriPayload.huri.map((huri) => new Huri(huri).hash)).flat();
|
|
34
|
-
const activeArchivist = this.archivist;
|
|
35
|
-
if (activeArchivist) {
|
|
36
|
-
const queryPayload = PayloadWrapper.parse({ hashes, schema: XyoArchivistGetQuerySchema });
|
|
37
|
-
const query = await this.bindQuery(queryPayload);
|
|
38
|
-
return (await activeArchivist.query(query[0], query[1]))[1];
|
|
39
|
-
}
|
|
40
|
-
return [];
|
|
41
|
-
}
|
|
42
42
|
}
|
|
43
43
|
//# sourceMappingURL=Diviner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Diviner.js","sourceRoot":"","sources":["../../../../src/Payload/Archivist/Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAA0C,0BAA0B,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAEhI,OAAO,EAAE,IAAI,EAAE,cAAc,EAAc,MAAM,sBAAsB,CAAA;AAEvE,OAAO,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAA;AAC3D,OAAO,EAAkB,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAGxD,MAAM,OAAO,0BAA2B,SAAQ,iBAAmD;
|
|
1
|
+
{"version":3,"file":"Diviner.js","sourceRoot":"","sources":["../../../../src/Payload/Archivist/Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAA0C,0BAA0B,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAEhI,OAAO,EAAE,IAAI,EAAE,cAAc,EAAc,MAAM,sBAAsB,CAAA;AAEvE,OAAO,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAA;AAC3D,OAAO,EAAkB,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAGxD,MAAM,OAAO,0BAA2B,SAAQ,iBAAmD;IACvF,SAAS,CAA0B;IAE7C,MAAM,CAAU,KAAK,CAAC,MAAM,CAAC,MAA0D;QACrF,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,WAAW,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;QAC1E,MAAM,MAAM,GAAG,IAAI,0BAA0B,CAAC,MAAM,CAAC,CAAA;QACrD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAA;QACpB,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,QAAuB;QACzC,MAAM,YAAY,GAAG,QAAQ,CAC3B,QAAQ,EAAE,MAAM,CAAC,CAAC,OAAO,EAA6B,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,aAAa,CAAC,EAC3F,8BAA8B,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAClE,CAAA;QACD,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QAC5G,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAA;QACtC,IAAI,eAAe,EAAE;YACnB,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,CAAuB,EAAE,MAAM,EAAE,MAAM,EAAE,0BAA0B,EAAE,CAAC,CAAA;YAC/G,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;YAChD,OAAO,CAAC,MAAM,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;SAC5D;QACD,OAAO,EAAE,CAAA;IACX,CAAC;IAEQ,OAAO;QACd,OAAO,CAAC,2BAA2B,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;IAC1D,CAAC;IAEkB,KAAK,CAAC,KAAK;QAC5B,MAAM,KAAK,CAAC,KAAK,EAAE,CAAA;QACnB,MAAM,sBAAsB,GAAG,IAAI,CAAC,MAAM,EAAE,SAAS,CAAA;QACrD,IAAI,sBAAsB,EAAE;YAC1B,MAAM,iBAAiB,GAA4B,sBAAsB;gBACvE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,sBAAsB,CAAC,CAAmC,CAAA,CAAC,KAAK,EAAE,IAAI,IAAI;gBACzG,CAAC,CAAC,IAAI,CAAA;YACR,IAAI,iBAAiB,EAAE;gBACrB,IAAI,CAAC,SAAS,GAAG,iBAAiB,CAAC,CAAC,CAAC,IAAI,mBAAmB,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;aACvF;SACF;QACD,OAAO,IAAI,CAAA;IACb,CAAC;CACF"}
|
|
@@ -3,7 +3,7 @@ import { XyoDivinerConfig } from '../../Config';
|
|
|
3
3
|
export declare type XyoHuriPayloadDivinerConfigSchema = 'network.xyo.diviner.payload.huri.config';
|
|
4
4
|
export declare const XyoHuriPayloadDivinerConfigSchema: XyoHuriPayloadDivinerConfigSchema;
|
|
5
5
|
export declare type XyoHuriPayloadDivinerConfig<T extends XyoPayload = XyoPayload> = XyoDivinerConfig<XyoPayload, T & {
|
|
6
|
-
schema: XyoHuriPayloadDivinerConfigSchema;
|
|
7
6
|
options?: HuriOptions;
|
|
7
|
+
schema: XyoHuriPayloadDivinerConfigSchema;
|
|
8
8
|
}>;
|
|
9
9
|
//# sourceMappingURL=Config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../../../src/Payload/Huri/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAE9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAE/C,oBAAY,iCAAiC,GAAG,yCAAyC,CAAA;AACzF,eAAO,MAAM,iCAAiC,EAAE,iCAA6E,CAAA;AAE7H,oBAAY,2BAA2B,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,IAAI,gBAAgB,CAC3F,UAAU,EACV,CAAC,GAAG;IACF,
|
|
1
|
+
{"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../../../src/Payload/Huri/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAE9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAE/C,oBAAY,iCAAiC,GAAG,yCAAyC,CAAA;AACzF,eAAO,MAAM,iCAAiC,EAAE,iCAA6E,CAAA;AAE7H,oBAAY,2BAA2B,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,IAAI,gBAAgB,CAC3F,UAAU,EACV,CAAC,GAAG;IACF,OAAO,CAAC,EAAE,WAAW,CAAA;IACrB,MAAM,EAAE,iCAAiC,CAAA;CAC1C,CACF,CAAA"}
|
|
@@ -3,9 +3,9 @@ import { XyoPayload } from '@xyo-network/payload';
|
|
|
3
3
|
import { XyoPayloadDiviner } from '../XyoPayloadDiviner';
|
|
4
4
|
import { XyoHuriPayloadDivinerConfig } from './Config';
|
|
5
5
|
export declare class XyoHuriPayloadDiviner extends XyoPayloadDiviner<XyoHuriPayloadDivinerConfig> {
|
|
6
|
-
static create(params?: XyoModuleParams<XyoHuriPayloadDivinerConfig>): Promise<XyoHuriPayloadDiviner>;
|
|
7
6
|
protected get options(): import("@xyo-network/payload").HuriOptions | undefined;
|
|
8
|
-
|
|
7
|
+
static create(params?: XyoModuleParams<XyoHuriPayloadDivinerConfig>): Promise<XyoHuriPayloadDiviner>;
|
|
9
8
|
divine(payloads?: XyoPayload[]): Promise<XyoPayload[]>;
|
|
9
|
+
queries(): string[];
|
|
10
10
|
}
|
|
11
11
|
//# sourceMappingURL=Diviner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../../../src/Payload/Huri/Diviner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAQ,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAKvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAA;AAEtD,qBAAa,qBAAsB,SAAQ,iBAAiB,CAAC,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../../../src/Payload/Huri/Diviner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAQ,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAKvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAA;AAEtD,qBAAa,qBAAsB,SAAQ,iBAAiB,CAAC,2BAA2B,CAAC;IACvF,SAAS,KAAK,OAAO,2DAEpB;WAEqB,MAAM,CAAC,MAAM,CAAC,EAAE,eAAe,CAAC,2BAA2B,CAAC,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAOpG,MAAM,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAW5D,OAAO;CAGjB"}
|
|
@@ -5,23 +5,23 @@ import { XyoDivinerDivineQuerySchema } from '../../Queries';
|
|
|
5
5
|
import { XyoHuriSchema } from '../XyoHuriPayload';
|
|
6
6
|
import { XyoPayloadDiviner } from '../XyoPayloadDiviner';
|
|
7
7
|
export class XyoHuriPayloadDiviner extends XyoPayloadDiviner {
|
|
8
|
+
get options() {
|
|
9
|
+
return this.config?.options;
|
|
10
|
+
}
|
|
8
11
|
static async create(params) {
|
|
9
12
|
params?.logger?.debug(`config: ${JSON.stringify(params.config, null, 2)}`);
|
|
10
13
|
const module = new XyoHuriPayloadDiviner(params);
|
|
11
14
|
await module.start();
|
|
12
15
|
return module;
|
|
13
16
|
}
|
|
14
|
-
get options() {
|
|
15
|
-
return this.config?.options;
|
|
16
|
-
}
|
|
17
|
-
queries() {
|
|
18
|
-
return [XyoDivinerDivineQuerySchema, ...super.queries()];
|
|
19
|
-
}
|
|
20
17
|
async divine(payloads) {
|
|
21
18
|
const huriPayloads = assertEx(payloads?.filter((payload) => payload?.schema === XyoHuriSchema), `no huri payloads provided: ${JSON.stringify(payloads, null, 2)}`);
|
|
22
19
|
const huriList = huriPayloads.map((huriPayload) => huriPayload.huri.map((huri) => new Huri(huri))).flat();
|
|
23
20
|
const settled = await Promise.allSettled(huriList.map((huri) => huri.fetch()));
|
|
24
21
|
return compact(settled.map((settle) => (settle.status === 'fulfilled' ? settle.value : null)));
|
|
25
22
|
}
|
|
23
|
+
queries() {
|
|
24
|
+
return [XyoDivinerDivineQuerySchema, ...super.queries()];
|
|
25
|
+
}
|
|
26
26
|
}
|
|
27
27
|
//# sourceMappingURL=Diviner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Diviner.js","sourceRoot":"","sources":["../../../../src/Payload/Huri/Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,IAAI,EAAc,MAAM,sBAAsB,CAAA;AACvD,OAAO,OAAO,MAAM,gBAAgB,CAAA;AAEpC,OAAO,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAA;AAC3D,OAAO,EAAkB,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAGxD,MAAM,OAAO,qBAAsB,SAAQ,iBAA8C;IACvF,MAAM,CAAU,KAAK,CAAC,MAAM,CAAC,MAAqD;QAChF,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,WAAW,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;QAC1E,MAAM,MAAM,GAAG,IAAI,qBAAqB,CAAC,MAAM,CAAC,CAAA;QAChD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAA;QACpB,OAAO,MAAM,CAAA;IACf,CAAC;
|
|
1
|
+
{"version":3,"file":"Diviner.js","sourceRoot":"","sources":["../../../../src/Payload/Huri/Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,IAAI,EAAc,MAAM,sBAAsB,CAAA;AACvD,OAAO,OAAO,MAAM,gBAAgB,CAAA;AAEpC,OAAO,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAA;AAC3D,OAAO,EAAkB,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAGxD,MAAM,OAAO,qBAAsB,SAAQ,iBAA8C;IACvF,IAAc,OAAO;QACnB,OAAO,IAAI,CAAC,MAAM,EAAE,OAAO,CAAA;IAC7B,CAAC;IAED,MAAM,CAAU,KAAK,CAAC,MAAM,CAAC,MAAqD;QAChF,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,WAAW,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;QAC1E,MAAM,MAAM,GAAG,IAAI,qBAAqB,CAAC,MAAM,CAAC,CAAA;QAChD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAA;QACpB,OAAO,MAAM,CAAA;IACf,CAAC;IAEQ,KAAK,CAAC,MAAM,CAAC,QAAuB;QAC3C,MAAM,YAAY,GAAG,QAAQ,CAC3B,QAAQ,EAAE,MAAM,CAAC,CAAC,OAAO,EAA6B,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,aAAa,CAAC,EAC3F,8BAA8B,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAClE,CAAA;QACD,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QAEzG,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QAC9E,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAChG,CAAC;IAEQ,OAAO;QACd,OAAO,CAAC,2BAA2B,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;IAC1D,CAAC;CACF"}
|
|
@@ -2,7 +2,7 @@ import { XyoPayload } from '@xyo-network/payload';
|
|
|
2
2
|
export declare type XyoHuriSchema = 'network.xyo.huri';
|
|
3
3
|
export declare const XyoHuriSchema: XyoHuriSchema;
|
|
4
4
|
export declare type XyoHuriPayload = XyoPayload<{
|
|
5
|
-
schema: 'network.xyo.huri';
|
|
6
5
|
huri: string[];
|
|
6
|
+
schema: 'network.xyo.huri';
|
|
7
7
|
}>;
|
|
8
8
|
//# sourceMappingURL=XyoHuriPayload.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XyoHuriPayload.d.ts","sourceRoot":"","sources":["../../../src/Payload/XyoHuriPayload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,oBAAY,aAAa,GAAG,kBAAkB,CAAA;AAC9C,eAAO,MAAM,aAAa,EAAE,aAAkC,CAAA;AAE9D,oBAAY,cAAc,GAAG,UAAU,CAAC;IACtC,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"XyoHuriPayload.d.ts","sourceRoot":"","sources":["../../../src/Payload/XyoHuriPayload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,oBAAY,aAAa,GAAG,kBAAkB,CAAA;AAC9C,eAAO,MAAM,aAAa,EAAE,aAAkC,CAAA;AAE9D,oBAAY,cAAc,GAAG,UAAU,CAAC;IACtC,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,MAAM,EAAE,kBAAkB,CAAA;CAC3B,CAAC,CAAA"}
|
package/dist/esm/XyoDiviner.d.ts
CHANGED
|
@@ -5,13 +5,13 @@ import { XyoDivinerConfig } from './Config';
|
|
|
5
5
|
import { DivinerModule } from './Diviner';
|
|
6
6
|
export declare type XyoDivinerParams = XyoModuleParams;
|
|
7
7
|
export declare abstract class XyoDiviner<TConfig extends XyoDivinerConfig = XyoDivinerConfig> extends XyoModule<TConfig> implements DivinerModule {
|
|
8
|
-
static create(params?: XyoModuleParams<XyoDivinerConfig>): Promise<XyoDiviner>;
|
|
9
|
-
abstract divine(payloads?: XyoPayload[]): Promisable<XyoPayload[]>;
|
|
10
|
-
static targetSchema: string;
|
|
11
8
|
static configSchema: string;
|
|
9
|
+
static targetSchema: string;
|
|
12
10
|
get targetSchema(): string | undefined;
|
|
11
|
+
static create(params?: XyoModuleParams<XyoDivinerConfig>): Promise<XyoDiviner>;
|
|
13
12
|
queries(): string[];
|
|
14
13
|
query<T extends XyoQueryBoundWitness = XyoQueryBoundWitness>(query: T, payloads?: XyoPayload[]): Promise<ModuleQueryResult<XyoPayload>>;
|
|
14
|
+
abstract divine(payloads?: XyoPayload[]): Promisable<XyoPayload[]>;
|
|
15
15
|
}
|
|
16
16
|
export declare abstract class XyoTimestampDiviner<TConfig extends XyoDivinerConfig = XyoDivinerConfig> extends XyoDiviner<TConfig> {
|
|
17
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XyoDiviner.d.ts","sourceRoot":"","sources":["../../src/XyoDiviner.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAA6C,SAAS,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AACpJ,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,oBAAY,gBAAgB,GAAG,eAAe,CAAA;AAE9C,8BAAsB,UAAU,CAAC,OAAO,SAAS,gBAAgB,GAAG,gBAAgB,CAAE,SAAQ,SAAS,CAAC,OAAO,CAAE,YAAW,aAAa;
|
|
1
|
+
{"version":3,"file":"XyoDiviner.d.ts","sourceRoot":"","sources":["../../src/XyoDiviner.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAA6C,SAAS,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AACpJ,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,oBAAY,gBAAgB,GAAG,eAAe,CAAA;AAE9C,8BAAsB,UAAU,CAAC,OAAO,SAAS,gBAAgB,GAAG,gBAAgB,CAAE,SAAQ,SAAS,CAAC,OAAO,CAAE,YAAW,aAAa;IACvI,OAAgB,YAAY,EAAE,MAAM,CAAA;IACpC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAA;IAE3B,IAAW,YAAY,uBAEtB;WAEqB,MAAM,CAAC,MAAM,CAAC,EAAE,eAAe,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC;IAO7E,OAAO,IAAI,MAAM,EAAE;IAIpB,KAAK,CAAC,CAAC,SAAS,oBAAoB,GAAG,oBAAoB,EACxE,KAAK,EAAE,CAAC,EACR,QAAQ,CAAC,EAAE,UAAU,EAAE,GACtB,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAuBzC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC;CACnE;AAED,8BAAsB,mBAAmB,CAAC,OAAO,SAAS,gBAAgB,GAAG,gBAAgB,CAAE,SAAQ,UAAU,CAAC,OAAO,CAAC;CAAG;AAE7H,wCAAwC;AACxC,8BAAsB,kBAAkB,CAAC,OAAO,SAAS,gBAAgB,GAAG,gBAAgB,CAAE,SAAQ,UAAU,CAAC,OAAO,CAAC;CAAG;AAE5H,wCAAwC;AACxC,8BAAsB,2BAA2B,CAAC,OAAO,SAAS,gBAAgB,GAAG,gBAAgB,CAAE,SAAQ,mBAAmB,CAAC,OAAO,CAAC;CAAG"}
|
package/dist/esm/XyoDiviner.js
CHANGED
|
@@ -3,17 +3,17 @@ import { XyoAccount } from '@xyo-network/account';
|
|
|
3
3
|
import { QueryBoundWitnessWrapper, XyoErrorBuilder, XyoModule } from '@xyo-network/module';
|
|
4
4
|
import { XyoDivinerDivineQuerySchema } from './Queries';
|
|
5
5
|
export class XyoDiviner extends XyoModule {
|
|
6
|
+
static configSchema;
|
|
7
|
+
static targetSchema;
|
|
8
|
+
get targetSchema() {
|
|
9
|
+
return this.config?.targetSchema;
|
|
10
|
+
}
|
|
6
11
|
static async create(params) {
|
|
7
12
|
params?.logger?.debug(`config: ${JSON.stringify(params.config, null, 2)}`);
|
|
8
13
|
const actualParams = params ?? {};
|
|
9
14
|
actualParams.config = params?.config ?? { schema: this.configSchema, targetSchema: this.targetSchema };
|
|
10
15
|
return (await super.create(actualParams));
|
|
11
16
|
}
|
|
12
|
-
static targetSchema;
|
|
13
|
-
static configSchema;
|
|
14
|
-
get targetSchema() {
|
|
15
|
-
return this.config?.targetSchema;
|
|
16
|
-
}
|
|
17
17
|
queries() {
|
|
18
18
|
return [XyoDivinerDivineQuerySchema, ...super.queries()];
|
|
19
19
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XyoDiviner.js","sourceRoot":"","sources":["../../src/XyoDiviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAqB,wBAAwB,EAAE,eAAe,EAAE,SAAS,EAAyC,MAAM,qBAAqB,CAAA;AAMpJ,OAAO,EAAE,2BAA2B,EAAmB,MAAM,WAAW,CAAA;AAIxE,MAAM,OAAgB,UAAgE,SAAQ,SAAkB;IAC9G,MAAM,CAAU,KAAK,CAAC,MAAM,CAAC,MAA0C;QACrE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,WAAW,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;QAC1E,MAAM,YAAY,GAAsC,MAAM,IAAI,EAAE,CAAA;QACpE,YAAY,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAA;QACtG,OAAO,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAe,CAAA;IACzD,CAAC;
|
|
1
|
+
{"version":3,"file":"XyoDiviner.js","sourceRoot":"","sources":["../../src/XyoDiviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAqB,wBAAwB,EAAE,eAAe,EAAE,SAAS,EAAyC,MAAM,qBAAqB,CAAA;AAMpJ,OAAO,EAAE,2BAA2B,EAAmB,MAAM,WAAW,CAAA;AAIxE,MAAM,OAAgB,UAAgE,SAAQ,SAAkB;IAC9G,MAAM,CAAU,YAAY,CAAQ;IACpC,MAAM,CAAC,YAAY,CAAQ;IAE3B,IAAW,YAAY;QACrB,OAAO,IAAI,CAAC,MAAM,EAAE,YAAY,CAAA;IAClC,CAAC;IAED,MAAM,CAAU,KAAK,CAAC,MAAM,CAAC,MAA0C;QACrE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,WAAW,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;QAC1E,MAAM,YAAY,GAAsC,MAAM,IAAI,EAAE,CAAA;QACpE,YAAY,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAA;QACtG,OAAO,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAe,CAAA;IACzD,CAAC;IAEe,OAAO;QACrB,OAAO,CAAC,2BAA2B,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;IAC1D,CAAC;IAEQ,KAAK,CAAC,KAAK,CAClB,KAAQ,EACR,QAAuB;QAEvB,MAAM,OAAO,GAAG,wBAAwB,CAAC,UAAU,CAAkB,KAAK,EAAE,QAAQ,CAAC,CAAA;QACrF,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAA;QAChC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAA;QAEzD,MAAM,YAAY,GAAG,IAAI,UAAU,EAAE,CAAA;QAErC,MAAM,cAAc,GAAiB,EAAE,CAAA;QACvC,IAAI;YACF,QAAQ,UAAU,CAAC,UAAU,EAAE;gBAC7B,KAAK,2BAA2B;oBAC9B,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;oBACrD,MAAK;gBACP;oBACE,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;aACtC;SACF;QAAC,OAAO,EAAE,EAAE;YACX,MAAM,KAAK,GAAG,EAAW,CAAA;YACzB,cAAc,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;SAChF;QACD,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;IAC5D,CAAC;CAGF;AAED,MAAM,OAAgB,mBAAyE,SAAQ,UAAmB;CAAG;AAE7H,wCAAwC;AACxC,MAAM,OAAgB,kBAAwE,SAAQ,UAAmB;CAAG;AAE5H,wCAAwC;AACxC,MAAM,OAAgB,2BAAiF,SAAQ,mBAA4B;CAAG"}
|
package/package.json
CHANGED
|
@@ -11,11 +11,11 @@
|
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
13
|
"@xylabs/assert": "^2.6.9",
|
|
14
|
-
"@xyo-network/account": "^2.38.
|
|
15
|
-
"@xyo-network/archivist": "^2.38.
|
|
16
|
-
"@xyo-network/module": "^2.38.
|
|
17
|
-
"@xyo-network/payload": "^2.38.
|
|
18
|
-
"@xyo-network/promise": "^2.38.
|
|
14
|
+
"@xyo-network/account": "^2.38.17",
|
|
15
|
+
"@xyo-network/archivist": "^2.38.17",
|
|
16
|
+
"@xyo-network/module": "^2.38.17",
|
|
17
|
+
"@xyo-network/payload": "^2.38.17",
|
|
18
|
+
"@xyo-network/promise": "^2.38.17",
|
|
19
19
|
"lodash": "^4.17.21",
|
|
20
20
|
"tslib": "^2.4.0"
|
|
21
21
|
},
|
|
@@ -52,5 +52,5 @@
|
|
|
52
52
|
},
|
|
53
53
|
"sideEffects": false,
|
|
54
54
|
"types": "dist/esm/index.d.ts",
|
|
55
|
-
"version": "2.38.
|
|
55
|
+
"version": "2.38.17"
|
|
56
56
|
}
|
|
@@ -8,7 +8,7 @@ export const XyoArchivistPayloadDivinerConfigSchema: XyoArchivistPayloadDivinerC
|
|
|
8
8
|
export type XyoArchivistPayloadDivinerConfig<T extends XyoPayload = XyoPayload> = XyoDivinerConfig<
|
|
9
9
|
XyoPayload,
|
|
10
10
|
T & {
|
|
11
|
-
schema: XyoArchivistPayloadDivinerConfigSchema
|
|
12
11
|
archivist?: string
|
|
12
|
+
schema: XyoArchivistPayloadDivinerConfigSchema
|
|
13
13
|
}
|
|
14
14
|
>
|
|
@@ -9,6 +9,8 @@ import { XyoPayloadDiviner } from '../XyoPayloadDiviner'
|
|
|
9
9
|
import { XyoArchivistPayloadDivinerConfig } from './Config'
|
|
10
10
|
|
|
11
11
|
export class XyoArchivistPayloadDiviner extends XyoPayloadDiviner<XyoArchivistPayloadDivinerConfig> {
|
|
12
|
+
protected archivist?: PayloadArchivist | null
|
|
13
|
+
|
|
12
14
|
static override async create(params?: XyoModuleParams<XyoArchivistPayloadDivinerConfig>): Promise<XyoArchivistPayloadDiviner> {
|
|
13
15
|
params?.logger?.debug(`config: ${JSON.stringify(params.config, null, 2)}`)
|
|
14
16
|
const module = new XyoArchivistPayloadDiviner(params)
|
|
@@ -16,7 +18,20 @@ export class XyoArchivistPayloadDiviner extends XyoPayloadDiviner<XyoArchivistPa
|
|
|
16
18
|
return module
|
|
17
19
|
}
|
|
18
20
|
|
|
19
|
-
|
|
21
|
+
public async divine(payloads?: XyoPayload[]): Promise<XyoPayload[]> {
|
|
22
|
+
const huriPayloads = assertEx(
|
|
23
|
+
payloads?.filter((payload): payload is XyoHuriPayload => payload?.schema === XyoHuriSchema),
|
|
24
|
+
`no huri payloads provided: ${JSON.stringify(payloads, null, 2)}`,
|
|
25
|
+
)
|
|
26
|
+
const hashes = huriPayloads.map((huriPayload) => huriPayload.huri.map((huri) => new Huri(huri).hash)).flat()
|
|
27
|
+
const activeArchivist = this.archivist
|
|
28
|
+
if (activeArchivist) {
|
|
29
|
+
const queryPayload = PayloadWrapper.parse<XyoArchivistGetQuery>({ hashes, schema: XyoArchivistGetQuerySchema })
|
|
30
|
+
const query = await this.bindQuery(queryPayload)
|
|
31
|
+
return (await activeArchivist.query(query[0], query[1]))[1]
|
|
32
|
+
}
|
|
33
|
+
return []
|
|
34
|
+
}
|
|
20
35
|
|
|
21
36
|
override queries() {
|
|
22
37
|
return [XyoDivinerDivineQuerySchema, ...super.queries()]
|
|
@@ -35,19 +50,4 @@ export class XyoArchivistPayloadDiviner extends XyoPayloadDiviner<XyoArchivistPa
|
|
|
35
50
|
}
|
|
36
51
|
return this
|
|
37
52
|
}
|
|
38
|
-
|
|
39
|
-
public async divine(payloads?: XyoPayload[]): Promise<XyoPayload[]> {
|
|
40
|
-
const huriPayloads = assertEx(
|
|
41
|
-
payloads?.filter((payload): payload is XyoHuriPayload => payload?.schema === XyoHuriSchema),
|
|
42
|
-
`no huri payloads provided: ${JSON.stringify(payloads, null, 2)}`,
|
|
43
|
-
)
|
|
44
|
-
const hashes = huriPayloads.map((huriPayload) => huriPayload.huri.map((huri) => new Huri(huri).hash)).flat()
|
|
45
|
-
const activeArchivist = this.archivist
|
|
46
|
-
if (activeArchivist) {
|
|
47
|
-
const queryPayload = PayloadWrapper.parse<XyoArchivistGetQuery>({ hashes, schema: XyoArchivistGetQuerySchema })
|
|
48
|
-
const query = await this.bindQuery(queryPayload)
|
|
49
|
-
return (await activeArchivist.query(query[0], query[1]))[1]
|
|
50
|
-
}
|
|
51
|
-
return []
|
|
52
|
-
}
|
|
53
53
|
}
|
|
@@ -8,7 +8,7 @@ export const XyoHuriPayloadDivinerConfigSchema: XyoHuriPayloadDivinerConfigSchem
|
|
|
8
8
|
export type XyoHuriPayloadDivinerConfig<T extends XyoPayload = XyoPayload> = XyoDivinerConfig<
|
|
9
9
|
XyoPayload,
|
|
10
10
|
T & {
|
|
11
|
-
schema: XyoHuriPayloadDivinerConfigSchema
|
|
12
11
|
options?: HuriOptions
|
|
12
|
+
schema: XyoHuriPayloadDivinerConfigSchema
|
|
13
13
|
}
|
|
14
14
|
>
|
|
@@ -9,6 +9,10 @@ import { XyoPayloadDiviner } from '../XyoPayloadDiviner'
|
|
|
9
9
|
import { XyoHuriPayloadDivinerConfig } from './Config'
|
|
10
10
|
|
|
11
11
|
export class XyoHuriPayloadDiviner extends XyoPayloadDiviner<XyoHuriPayloadDivinerConfig> {
|
|
12
|
+
protected get options() {
|
|
13
|
+
return this.config?.options
|
|
14
|
+
}
|
|
15
|
+
|
|
12
16
|
static override async create(params?: XyoModuleParams<XyoHuriPayloadDivinerConfig>): Promise<XyoHuriPayloadDiviner> {
|
|
13
17
|
params?.logger?.debug(`config: ${JSON.stringify(params.config, null, 2)}`)
|
|
14
18
|
const module = new XyoHuriPayloadDiviner(params)
|
|
@@ -16,14 +20,6 @@ export class XyoHuriPayloadDiviner extends XyoPayloadDiviner<XyoHuriPayloadDivin
|
|
|
16
20
|
return module
|
|
17
21
|
}
|
|
18
22
|
|
|
19
|
-
protected get options() {
|
|
20
|
-
return this.config?.options
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
override queries() {
|
|
24
|
-
return [XyoDivinerDivineQuerySchema, ...super.queries()]
|
|
25
|
-
}
|
|
26
|
-
|
|
27
23
|
override async divine(payloads?: XyoPayload[]): Promise<XyoPayload[]> {
|
|
28
24
|
const huriPayloads = assertEx(
|
|
29
25
|
payloads?.filter((payload): payload is XyoHuriPayload => payload?.schema === XyoHuriSchema),
|
|
@@ -34,4 +30,8 @@ export class XyoHuriPayloadDiviner extends XyoPayloadDiviner<XyoHuriPayloadDivin
|
|
|
34
30
|
const settled = await Promise.allSettled(huriList.map((huri) => huri.fetch()))
|
|
35
31
|
return compact(settled.map((settle) => (settle.status === 'fulfilled' ? settle.value : null)))
|
|
36
32
|
}
|
|
33
|
+
|
|
34
|
+
override queries() {
|
|
35
|
+
return [XyoDivinerDivineQuerySchema, ...super.queries()]
|
|
36
|
+
}
|
|
37
37
|
}
|
package/src/XyoDiviner.ts
CHANGED
|
@@ -11,6 +11,13 @@ import { XyoDivinerDivineQuerySchema, XyoDivinerQuery } from './Queries'
|
|
|
11
11
|
export type XyoDivinerParams = XyoModuleParams
|
|
12
12
|
|
|
13
13
|
export abstract class XyoDiviner<TConfig extends XyoDivinerConfig = XyoDivinerConfig> extends XyoModule<TConfig> implements DivinerModule {
|
|
14
|
+
static override configSchema: string
|
|
15
|
+
static targetSchema: string
|
|
16
|
+
|
|
17
|
+
public get targetSchema() {
|
|
18
|
+
return this.config?.targetSchema
|
|
19
|
+
}
|
|
20
|
+
|
|
14
21
|
static override async create(params?: XyoModuleParams<XyoDivinerConfig>): Promise<XyoDiviner> {
|
|
15
22
|
params?.logger?.debug(`config: ${JSON.stringify(params.config, null, 2)}`)
|
|
16
23
|
const actualParams: XyoModuleParams<XyoDivinerConfig> = params ?? {}
|
|
@@ -18,15 +25,6 @@ export abstract class XyoDiviner<TConfig extends XyoDivinerConfig = XyoDivinerCo
|
|
|
18
25
|
return (await super.create(actualParams)) as XyoDiviner
|
|
19
26
|
}
|
|
20
27
|
|
|
21
|
-
abstract divine(payloads?: XyoPayload[]): Promisable<XyoPayload[]>
|
|
22
|
-
|
|
23
|
-
static targetSchema: string
|
|
24
|
-
static override configSchema: string
|
|
25
|
-
|
|
26
|
-
public get targetSchema() {
|
|
27
|
-
return this.config?.targetSchema
|
|
28
|
-
}
|
|
29
|
-
|
|
30
28
|
public override queries(): string[] {
|
|
31
29
|
return [XyoDivinerDivineQuerySchema, ...super.queries()]
|
|
32
30
|
}
|
|
@@ -56,6 +54,8 @@ export abstract class XyoDiviner<TConfig extends XyoDivinerConfig = XyoDivinerCo
|
|
|
56
54
|
}
|
|
57
55
|
return await this.bindResult(resultPayloads, queryAccount)
|
|
58
56
|
}
|
|
57
|
+
|
|
58
|
+
abstract divine(payloads?: XyoPayload[]): Promisable<XyoPayload[]>
|
|
59
59
|
}
|
|
60
60
|
|
|
61
61
|
export abstract class XyoTimestampDiviner<TConfig extends XyoDivinerConfig = XyoDivinerConfig> extends XyoDiviner<TConfig> {}
|