@xyo-network/diviner 2.37.6 → 2.38.0-rc.1

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,12 +1,11 @@
1
1
  import { PayloadArchivist } from '@xyo-network/archivist';
2
- import { PartialModuleConfig, XyoModuleResolverFunc } from '@xyo-network/module';
3
2
  import { XyoPayloads } from '@xyo-network/payload';
4
3
  import { XyoPayloadDiviner } from '../XyoPayloadDiviner';
5
4
  import { XyoArchivistPayloadDivinerConfig } from './Config';
6
5
  export declare class XyoArchivistPayloadDiviner extends XyoPayloadDiviner<XyoArchivistPayloadDivinerConfig> {
7
- protected readonly archivist?: PayloadArchivist | null;
8
- constructor(config?: PartialModuleConfig<XyoArchivistPayloadDivinerConfig>, archivist?: PayloadArchivist, resolver?: XyoModuleResolverFunc);
6
+ protected archivist?: PayloadArchivist | null;
9
7
  queries(): string[];
8
+ start(): Promise<this>;
10
9
  divine(payloads?: XyoPayloads): Promise<XyoPayloads>;
11
10
  }
12
11
  //# 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,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAChF,OAAO,EAAwB,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAIxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,gCAAgC,EAA0C,MAAM,UAAU,CAAA;AAEnG,qBAAa,0BAA2B,SAAQ,iBAAiB,CAAC,gCAAgC,CAAC;IACjG,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAA;gBAE1C,MAAM,CAAC,EAAE,mBAAmB,CAAC,gCAAgC,CAAC,EAAE,SAAS,CAAC,EAAE,gBAAgB,EAAE,QAAQ,CAAC,EAAE,qBAAqB;IAUjI,OAAO;IAIH,MAAM,CAAC,QAAQ,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;CAclE"}
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,EAAwB,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAIxE,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;IAEpC,OAAO;IAID,KAAK;IAcP,MAAM,CAAC,QAAQ,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;CAclE"}
@@ -4,20 +4,24 @@ import { Huri, PayloadWrapper } from '@xyo-network/payload';
4
4
  import { XyoDivinerDivineQuerySchema } from '../../Queries';
5
5
  import { XyoHuriSchema } from '../XyoHuriPayload';
6
6
  import { XyoPayloadDiviner } from '../XyoPayloadDiviner';
7
- import { XyoArchivistPayloadDivinerConfigSchema } from './Config';
8
7
  export class XyoArchivistPayloadDiviner extends XyoPayloadDiviner {
9
8
  archivist;
10
- constructor(config, archivist, resolver) {
11
- super({ ...config, schema: XyoArchivistPayloadDivinerConfigSchema }, undefined, resolver);
12
- const configArchivistAddress = config?.archivist;
13
- const resolvedArchivist = archivist ?? (configArchivistAddress ? this.resolver?.(configArchivistAddress) ?? null : null);
14
- if (resolvedArchivist) {
15
- this.archivist = resolvedArchivist ? new XyoArchivistWrapper(resolvedArchivist) : null;
16
- }
17
- }
18
9
  queries() {
19
10
  return [XyoDivinerDivineQuerySchema, ...super.queries()];
20
11
  }
12
+ async start() {
13
+ await super.start();
14
+ const configArchivistAddress = this.config?.archivist;
15
+ if (configArchivistAddress) {
16
+ const resolvedArchivist = configArchivistAddress
17
+ ? (this.resolver?.fromAddress([configArchivistAddress])).shift() ?? null
18
+ : null;
19
+ if (resolvedArchivist) {
20
+ this.archivist = resolvedArchivist ? new XyoArchivistWrapper({ module: resolvedArchivist }) : null;
21
+ }
22
+ }
23
+ return this;
24
+ }
21
25
  async divine(payloads) {
22
26
  const huriPayloads = assertEx(payloads?.filter((payload) => payload?.schema === XyoHuriSchema), `no huri payloads provided: ${JSON.stringify(payloads, null, 2)}`);
23
27
  const hashes = huriPayloads.map((huriPayload) => huriPayload.huri.map((huri) => new Huri(huri).hash)).flat();
@@ -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,EAAe,MAAM,sBAAsB,CAAA;AAExE,OAAO,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAA;AAC3D,OAAO,EAAkB,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAoC,sCAAsC,EAAE,MAAM,UAAU,CAAA;AAEnG,MAAM,OAAO,0BAA2B,SAAQ,iBAAmD;IAC9E,SAAS,CAA0B;IAEtD,YAAY,MAA8D,EAAE,SAA4B,EAAE,QAAgC;QACxI,KAAK,CAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,sCAAsC,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;QACzF,MAAM,sBAAsB,GAAG,MAAM,EAAE,SAAS,CAAA;QAChD,MAAM,iBAAiB,GACrB,SAAS,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,sBAAsB,CAAiC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACjI,IAAI,iBAAiB,EAAE;YACrB,IAAI,CAAC,SAAS,GAAG,iBAAiB,CAAC,CAAC,CAAC,IAAI,mBAAmB,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;SACvF;IACH,CAAC;IAEQ,OAAO;QACd,OAAO,CAAC,2BAA2B,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;IAC1D,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,QAAsB;QACxC,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;CACF"}
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;AAChI,OAAO,EAAE,IAAI,EAAE,cAAc,EAAe,MAAM,sBAAsB,CAAA;AAExE,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;IAEpC,OAAO;QACd,OAAO,CAAC,2BAA2B,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;IAC1D,CAAC;IAEQ,KAAK,CAAC,KAAK;QAClB,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,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;aACnG;SACF;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,QAAsB;QACxC,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;CACF"}
@@ -1,8 +1,9 @@
1
- import { ModuleQueryResult, XyoModule, XyoQueryBoundWitness } from '@xyo-network/module';
1
+ import { ModuleQueryResult, XyoModule, XyoModuleParams, XyoQueryBoundWitness } from '@xyo-network/module';
2
2
  import { XyoPayload, XyoPayloads } from '@xyo-network/payload';
3
3
  import { Promisable } from '@xyo-network/promise';
4
4
  import { XyoDivinerConfig } from './Config';
5
5
  import { DivinerModule } from './Diviner';
6
+ export declare type XyoDivinerParams = XyoModuleParams;
6
7
  export declare abstract class XyoDiviner<TConfig extends XyoDivinerConfig = XyoDivinerConfig> extends XyoModule<TConfig> implements DivinerModule {
7
8
  abstract divine(payloads?: XyoPayloads): Promisable<XyoPayloads>;
8
9
  queries(): string[];
@@ -1 +1 @@
1
- {"version":3,"file":"XyoDiviner.d.ts","sourceRoot":"","sources":["../../src/XyoDiviner.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,iBAAiB,EAEjB,SAAS,EAGT,oBAAoB,EACrB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,8BAAsB,UAAU,CAAC,OAAO,SAAS,gBAAgB,GAAG,gBAAgB,CAAE,SAAQ,SAAS,CAAC,OAAO,CAAE,YAAW,aAAa;IACvI,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;IAEhD,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;CAiB1C;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"}
1
+ {"version":3,"file":"XyoDiviner.d.ts","sourceRoot":"","sources":["../../src/XyoDiviner.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAA4B,SAAS,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AACnI,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAC9D,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,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;IAEhD,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;CAiB1C;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"}
@@ -1,10 +1,10 @@
1
1
  import { assertEx } from '@xylabs/assert';
2
2
  import { XyoAccount } from '@xyo-network/account';
3
- import { QueryBoundWitnessWrapper, XyoModule, XyoModuleInitializeQuerySchema, XyoModuleShutdownQuerySchema, } from '@xyo-network/module';
3
+ import { QueryBoundWitnessWrapper, XyoModule } from '@xyo-network/module';
4
4
  import { XyoDivinerDivineQuerySchema } from './Queries';
5
5
  export class XyoDiviner extends XyoModule {
6
6
  queries() {
7
- return [XyoModuleInitializeQuerySchema, XyoModuleShutdownQuerySchema, XyoDivinerDivineQuerySchema];
7
+ return [XyoDivinerDivineQuerySchema, ...super.queries()];
8
8
  }
9
9
  async query(query, payloads) {
10
10
  const wrapper = QueryBoundWitnessWrapper.parseQuery(query, payloads);
@@ -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,EAEL,wBAAwB,EACxB,SAAS,EACT,8BAA8B,EAC9B,4BAA4B,GAE7B,MAAM,qBAAqB,CAAA;AAM5B,OAAO,EAAE,2BAA2B,EAAmB,MAAM,WAAW,CAAA;AAExE,MAAM,OAAgB,UAAgE,SAAQ,SAAkB;IAG9F,OAAO;QACrB,OAAO,CAAC,8BAA8B,EAAE,4BAA4B,EAAE,2BAA2B,CAAC,CAAA;IACpG,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,GAAgB,EAAE,CAAA;QACtC,QAAQ,UAAU,CAAC,UAAU,EAAE;YAC7B,KAAK,2BAA2B;gBAC9B,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;gBACrD,MAAK;YACP;gBACE,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;SACtC;QACD,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;IAC5D,CAAC;CACF;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"}
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,SAAS,EAAyC,MAAM,qBAAqB,CAAA;AAMnI,OAAO,EAAE,2BAA2B,EAAmB,MAAM,WAAW,CAAA;AAIxE,MAAM,OAAgB,UAAgE,SAAQ,SAAkB;IAG9F,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,GAAgB,EAAE,CAAA;QACtC,QAAQ,UAAU,CAAC,UAAU,EAAE;YAC7B,KAAK,2BAA2B;gBAC9B,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;gBACrD,MAAK;YACP;gBACE,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;SACtC;QACD,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;IAC5D,CAAC;CACF;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.37.6",
15
- "@xyo-network/archivist": "^2.37.6",
16
- "@xyo-network/module": "^2.37.6",
17
- "@xyo-network/payload": "^2.37.6",
18
- "@xyo-network/promise": "^2.37.6",
14
+ "@xyo-network/account": "^2.38.0-rc.1",
15
+ "@xyo-network/archivist": "^2.38.0-rc.1",
16
+ "@xyo-network/module": "^2.38.0-rc.1",
17
+ "@xyo-network/payload": "^2.38.0-rc.1",
18
+ "@xyo-network/promise": "^2.38.0-rc.1",
19
19
  "lodash": "^4.17.21",
20
20
  "tslib": "^2.4.0"
21
21
  },
@@ -52,5 +52,6 @@
52
52
  },
53
53
  "sideEffects": false,
54
54
  "types": "dist/esm/index.d.ts",
55
- "version": "2.37.6"
55
+ "version": "2.38.0-rc.1",
56
+ "stableVersion": "2.37.6"
56
57
  }
@@ -1,30 +1,33 @@
1
1
  import { assertEx } from '@xylabs/assert'
2
2
  import { PayloadArchivist, XyoArchivistGetQuery, XyoArchivistGetQuerySchema, XyoArchivistWrapper } from '@xyo-network/archivist'
3
- import { PartialModuleConfig, XyoModuleResolverFunc } from '@xyo-network/module'
4
3
  import { Huri, PayloadWrapper, XyoPayloads } from '@xyo-network/payload'
5
4
 
6
5
  import { XyoDivinerDivineQuerySchema } from '../../Queries'
7
6
  import { XyoHuriPayload, XyoHuriSchema } from '../XyoHuriPayload'
8
7
  import { XyoPayloadDiviner } from '../XyoPayloadDiviner'
9
- import { XyoArchivistPayloadDivinerConfig, XyoArchivistPayloadDivinerConfigSchema } from './Config'
8
+ import { XyoArchivistPayloadDivinerConfig } from './Config'
10
9
 
11
10
  export class XyoArchivistPayloadDiviner extends XyoPayloadDiviner<XyoArchivistPayloadDivinerConfig> {
12
- protected readonly archivist?: PayloadArchivist | null
13
-
14
- constructor(config?: PartialModuleConfig<XyoArchivistPayloadDivinerConfig>, archivist?: PayloadArchivist, resolver?: XyoModuleResolverFunc) {
15
- super({ ...config, schema: XyoArchivistPayloadDivinerConfigSchema }, undefined, resolver)
16
- const configArchivistAddress = config?.archivist
17
- const resolvedArchivist: PayloadArchivist | null =
18
- archivist ?? (configArchivistAddress ? (this.resolver?.(configArchivistAddress) as unknown as PayloadArchivist) ?? null : null)
19
- if (resolvedArchivist) {
20
- this.archivist = resolvedArchivist ? new XyoArchivistWrapper(resolvedArchivist) : null
21
- }
22
- }
11
+ protected archivist?: PayloadArchivist | null
23
12
 
24
13
  override queries() {
25
14
  return [XyoDivinerDivineQuerySchema, ...super.queries()]
26
15
  }
27
16
 
17
+ override async start() {
18
+ await super.start()
19
+ const configArchivistAddress = this.config?.archivist
20
+ if (configArchivistAddress) {
21
+ const resolvedArchivist: PayloadArchivist | null = configArchivistAddress
22
+ ? (this.resolver?.fromAddress([configArchivistAddress]) as unknown as PayloadArchivist[]).shift() ?? null
23
+ : null
24
+ if (resolvedArchivist) {
25
+ this.archivist = resolvedArchivist ? new XyoArchivistWrapper({ module: resolvedArchivist }) : null
26
+ }
27
+ }
28
+ return this
29
+ }
30
+
28
31
  public async divine(payloads?: XyoPayloads): Promise<XyoPayloads> {
29
32
  const huriPayloads = assertEx(
30
33
  payloads?.filter((payload): payload is XyoHuriPayload => payload?.schema === XyoHuriSchema),
package/src/XyoDiviner.ts CHANGED
@@ -1,13 +1,6 @@
1
1
  import { assertEx } from '@xylabs/assert'
2
2
  import { XyoAccount } from '@xyo-network/account'
3
- import {
4
- ModuleQueryResult,
5
- QueryBoundWitnessWrapper,
6
- XyoModule,
7
- XyoModuleInitializeQuerySchema,
8
- XyoModuleShutdownQuerySchema,
9
- XyoQueryBoundWitness,
10
- } from '@xyo-network/module'
3
+ import { ModuleQueryResult, QueryBoundWitnessWrapper, XyoModule, XyoModuleParams, XyoQueryBoundWitness } from '@xyo-network/module'
11
4
  import { XyoPayload, XyoPayloads } from '@xyo-network/payload'
12
5
  import { Promisable } from '@xyo-network/promise'
13
6
 
@@ -15,11 +8,13 @@ import { XyoDivinerConfig } from './Config'
15
8
  import { DivinerModule } from './Diviner'
16
9
  import { XyoDivinerDivineQuerySchema, XyoDivinerQuery } from './Queries'
17
10
 
11
+ export type XyoDivinerParams = XyoModuleParams
12
+
18
13
  export abstract class XyoDiviner<TConfig extends XyoDivinerConfig = XyoDivinerConfig> extends XyoModule<TConfig> implements DivinerModule {
19
14
  abstract divine(payloads?: XyoPayloads): Promisable<XyoPayloads>
20
15
 
21
16
  public override queries(): string[] {
22
- return [XyoModuleInitializeQuerySchema, XyoModuleShutdownQuerySchema, XyoDivinerDivineQuerySchema]
17
+ return [XyoDivinerDivineQuerySchema, ...super.queries()]
23
18
  }
24
19
 
25
20
  override async query<T extends XyoQueryBoundWitness = XyoQueryBoundWitness>(