@xyo-network/diviner 2.27.0-rc.7 → 2.27.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.
Files changed (110) hide show
  1. package/dist/cjs/Config.d.ts +3 -3
  2. package/dist/cjs/Config.d.ts.map +1 -1
  3. package/dist/cjs/Payload/Archivist/Config.d.ts +3 -2
  4. package/dist/cjs/Payload/Archivist/Config.d.ts.map +1 -1
  5. package/dist/cjs/Payload/Archivist/Config.js.map +1 -1
  6. package/dist/cjs/Payload/Archivist/Diviner.d.ts +2 -2
  7. package/dist/cjs/Payload/Archivist/Diviner.d.ts.map +1 -1
  8. package/dist/cjs/Payload/Archivist/Diviner.js +7 -4
  9. package/dist/cjs/Payload/Archivist/Diviner.js.map +1 -1
  10. package/dist/cjs/Payload/Huri/Config.d.ts +1 -2
  11. package/dist/cjs/Payload/Huri/Config.d.ts.map +1 -1
  12. package/dist/cjs/Payload/Huri/Diviner.d.ts +2 -2
  13. package/dist/cjs/Payload/Huri/Diviner.d.ts.map +1 -1
  14. package/dist/cjs/Payload/Huri/Diviner.js +5 -2
  15. package/dist/cjs/Payload/Huri/Diviner.js.map +1 -1
  16. package/dist/cjs/Payload/XyoHuriPayload.d.ts +8 -0
  17. package/dist/cjs/Payload/XyoHuriPayload.d.ts.map +1 -0
  18. package/dist/cjs/Payload/XyoHuriPayload.js +5 -0
  19. package/dist/cjs/Payload/XyoHuriPayload.js.map +1 -0
  20. package/dist/cjs/Payload/XyoPayloadDiviner.d.ts +4 -2
  21. package/dist/cjs/Payload/XyoPayloadDiviner.d.ts.map +1 -1
  22. package/dist/cjs/Payload/XyoPayloadDiviner.js +2 -2
  23. package/dist/cjs/Payload/XyoPayloadDiviner.js.map +1 -1
  24. package/dist/cjs/Payload/index.d.ts +1 -1
  25. package/dist/cjs/Payload/index.d.ts.map +1 -1
  26. package/dist/cjs/Payload/index.js +1 -1
  27. package/dist/cjs/Payload/index.js.map +1 -1
  28. package/dist/cjs/Query/Divine.d.ts +3 -3
  29. package/dist/cjs/Query/Divine.d.ts.map +1 -1
  30. package/dist/cjs/Query/Payload.d.ts +2 -1
  31. package/dist/cjs/Query/Payload.d.ts.map +1 -1
  32. package/dist/cjs/XyoDiviner.d.ts +18 -3
  33. package/dist/cjs/XyoDiviner.d.ts.map +1 -1
  34. package/dist/cjs/XyoDiviner.js +35 -0
  35. package/dist/cjs/XyoDiviner.js.map +1 -1
  36. package/dist/cjs/index.d.ts +0 -1
  37. package/dist/cjs/index.d.ts.map +1 -1
  38. package/dist/cjs/index.js +0 -1
  39. package/dist/cjs/index.js.map +1 -1
  40. package/dist/docs.json +10951 -4170
  41. package/dist/esm/Config.d.ts +3 -3
  42. package/dist/esm/Config.d.ts.map +1 -1
  43. package/dist/esm/Payload/Archivist/Config.d.ts +3 -2
  44. package/dist/esm/Payload/Archivist/Config.d.ts.map +1 -1
  45. package/dist/esm/Payload/Archivist/Config.js.map +1 -1
  46. package/dist/esm/Payload/Archivist/Diviner.d.ts +2 -2
  47. package/dist/esm/Payload/Archivist/Diviner.d.ts.map +1 -1
  48. package/dist/esm/Payload/Archivist/Diviner.js +7 -4
  49. package/dist/esm/Payload/Archivist/Diviner.js.map +1 -1
  50. package/dist/esm/Payload/Huri/Config.d.ts +1 -2
  51. package/dist/esm/Payload/Huri/Config.d.ts.map +1 -1
  52. package/dist/esm/Payload/Huri/Diviner.d.ts +2 -2
  53. package/dist/esm/Payload/Huri/Diviner.d.ts.map +1 -1
  54. package/dist/esm/Payload/Huri/Diviner.js +5 -2
  55. package/dist/esm/Payload/Huri/Diviner.js.map +1 -1
  56. package/dist/esm/Payload/XyoHuriPayload.d.ts +8 -0
  57. package/dist/esm/Payload/XyoHuriPayload.d.ts.map +1 -0
  58. package/dist/esm/Payload/XyoHuriPayload.js +2 -0
  59. package/dist/esm/Payload/XyoHuriPayload.js.map +1 -0
  60. package/dist/esm/Payload/XyoPayloadDiviner.d.ts +4 -2
  61. package/dist/esm/Payload/XyoPayloadDiviner.d.ts.map +1 -1
  62. package/dist/esm/Payload/XyoPayloadDiviner.js +2 -2
  63. package/dist/esm/Payload/XyoPayloadDiviner.js.map +1 -1
  64. package/dist/esm/Payload/index.d.ts +1 -1
  65. package/dist/esm/Payload/index.d.ts.map +1 -1
  66. package/dist/esm/Payload/index.js +1 -1
  67. package/dist/esm/Payload/index.js.map +1 -1
  68. package/dist/esm/Query/Divine.d.ts +3 -3
  69. package/dist/esm/Query/Divine.d.ts.map +1 -1
  70. package/dist/esm/Query/Payload.d.ts +2 -1
  71. package/dist/esm/Query/Payload.d.ts.map +1 -1
  72. package/dist/esm/XyoDiviner.d.ts +18 -3
  73. package/dist/esm/XyoDiviner.d.ts.map +1 -1
  74. package/dist/esm/XyoDiviner.js +27 -1
  75. package/dist/esm/XyoDiviner.js.map +1 -1
  76. package/dist/esm/index.d.ts +0 -1
  77. package/dist/esm/index.d.ts.map +1 -1
  78. package/dist/esm/index.js +0 -1
  79. package/dist/esm/index.js.map +1 -1
  80. package/package.json +6 -6
  81. package/src/Config.ts +3 -1
  82. package/src/Payload/Archivist/Config.ts +9 -5
  83. package/src/Payload/Archivist/Diviner.ts +8 -5
  84. package/src/Payload/Huri/Config.ts +2 -2
  85. package/src/Payload/Huri/Diviner.ts +6 -3
  86. package/src/Payload/XyoHuriPayload.ts +9 -0
  87. package/src/Payload/XyoPayloadDiviner.ts +9 -2
  88. package/src/Payload/index.ts +1 -1
  89. package/src/Query/Divine.ts +3 -3
  90. package/src/Query/Payload.ts +2 -1
  91. package/src/XyoDiviner.ts +48 -3
  92. package/src/index.ts +0 -1
  93. package/dist/cjs/Abstract.d.ts +0 -15
  94. package/dist/cjs/Abstract.d.ts.map +0 -1
  95. package/dist/cjs/Abstract.js +0 -30
  96. package/dist/cjs/Abstract.js.map +0 -1
  97. package/dist/cjs/Payload/Query.d.ts +0 -9
  98. package/dist/cjs/Payload/Query.d.ts.map +0 -1
  99. package/dist/cjs/Payload/Query.js +0 -5
  100. package/dist/cjs/Payload/Query.js.map +0 -1
  101. package/dist/esm/Abstract.d.ts +0 -15
  102. package/dist/esm/Abstract.d.ts.map +0 -1
  103. package/dist/esm/Abstract.js +0 -22
  104. package/dist/esm/Abstract.js.map +0 -1
  105. package/dist/esm/Payload/Query.d.ts +0 -9
  106. package/dist/esm/Payload/Query.d.ts.map +0 -1
  107. package/dist/esm/Payload/Query.js +0 -2
  108. package/dist/esm/Payload/Query.js.map +0 -1
  109. package/src/Abstract.ts +0 -39
  110. package/src/Payload/Query.ts +0 -10
@@ -2,7 +2,7 @@ import { XyoModuleConfig } from '@xyo-network/module';
2
2
  import { XyoPayload } from '@xyo-network/payload';
3
3
  export declare type XyoDivinerConfigSchema = 'network.xyo.diviner.config';
4
4
  export declare const XyoDivinerConfigSchema: XyoDivinerConfigSchema;
5
- export declare type XyoDivinerConfig<TConfig extends XyoPayload = XyoPayload<{
6
- schema: XyoDivinerConfigSchema | string;
7
- }>> = XyoModuleConfig<TConfig>;
5
+ export declare type XyoDivinerConfig<TTargetPayload extends XyoPayload = XyoPayload, TConfig extends XyoPayload = XyoPayload> = XyoModuleConfig<TConfig & {
6
+ targetSchema: TTargetPayload['schema'];
7
+ }>;
8
8
  //# sourceMappingURL=Config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../src/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,oBAAY,sBAAsB,GAAG,4BAA4B,CAAA;AACjE,eAAO,MAAM,sBAAsB,EAAE,sBAAqD,CAAA;AAE1F,oBAAY,gBAAgB,CAAC,OAAO,SAAS,UAAU,GAAG,UAAU,CAAC;IAAE,MAAM,EAAE,sBAAsB,GAAG,MAAM,CAAA;CAAE,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,CAAA"}
1
+ {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../src/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,oBAAY,sBAAsB,GAAG,4BAA4B,CAAA;AACjE,eAAO,MAAM,sBAAsB,EAAE,sBAAqD,CAAA;AAE1F,oBAAY,gBAAgB,CAAC,cAAc,SAAS,UAAU,GAAG,UAAU,EAAE,OAAO,SAAS,UAAU,GAAG,UAAU,IAAI,eAAe,CACrI,OAAO,GAAG;IAAE,YAAY,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAA;CAAE,CACrD,CAAA"}
@@ -1,8 +1,9 @@
1
1
  import { XyoArchivist } from '@xyo-network/archivist';
2
- import { XyoHuriPayloadDivinerConfig } from '../Huri';
2
+ import { XyoPayload } from '@xyo-network/payload';
3
+ import { XyoDivinerConfig } from '../../Config';
3
4
  export declare type XyoArchivistPayloadDivinerConfigSchema = 'network.xyo.diviner.payload.archivist.config';
4
5
  export declare const XyoArchivistPayloadDivinerConfigSchema: XyoArchivistPayloadDivinerConfigSchema;
5
- export declare type XyoArchivistPayloadDivinerConfig = XyoHuriPayloadDivinerConfig<{
6
+ export declare type XyoArchivistPayloadDivinerConfig<TTargetPayload extends XyoPayload = XyoPayload, T extends XyoPayload = XyoPayload> = XyoDivinerConfig<TTargetPayload, T & {
6
7
  schema: XyoArchivistPayloadDivinerConfigSchema;
7
8
  archivist: XyoArchivist;
8
9
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../../../src/Payload/Archivist/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAErD,OAAO,EAAE,2BAA2B,EAAE,MAAM,SAAS,CAAA;AAErD,oBAAY,sCAAsC,GAAG,8CAA8C,CAAA;AACnG,eAAO,MAAM,sCAAsC,EAAE,sCAAuF,CAAA;AAE5I,oBAAY,gCAAgC,GAAG,2BAA2B,CAAC;IACzE,MAAM,EAAE,sCAAsC,CAAA;IAC9C,SAAS,EAAE,YAAY,CAAA;CACxB,CAAC,CAAA"}
1
+ {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../../../src/Payload/Archivist/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,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,EAAE,CAAC,SAAS,UAAU,GAAG,UAAU,IAAI,gBAAgB,CAChJ,cAAc,EACd,CAAC,GAAG;IACF,MAAM,EAAE,sCAAsC,CAAA;IAC9C,SAAS,EAAE,YAAY,CAAA;CACxB,CACF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Config.js","sourceRoot":"","sources":["../../../../src/Payload/Archivist/Config.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,sCAAsC,GAA2C,8CAA8C,CAAA"}
1
+ {"version":3,"file":"Config.js","sourceRoot":"","sources":["../../../../src/Payload/Archivist/Config.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,MAAM,sCAAsC,GAA2C,8CAA8C,CAAA"}
@@ -1,9 +1,9 @@
1
1
  import { XyoPayload, XyoPayloads } from '@xyo-network/payload';
2
2
  import { XyoPayloadDiviner } from '../XyoPayloadDiviner';
3
3
  import { XyoArchivistPayloadDivinerConfig } from './Config';
4
- export declare class XyoArchivistPayloadDiviner extends XyoPayloadDiviner<XyoArchivistPayloadDivinerConfig> {
4
+ export declare class XyoArchivistPayloadDiviner extends XyoPayloadDiviner<XyoPayload, XyoArchivistPayloadDivinerConfig> {
5
5
  protected get archivist(): import("@xyo-network/archivist").XyoArchivist<import("@xyo-network/archivist").XyoArchivistQueryPayload<never>>;
6
6
  get queries(): "network.xyo.query.diviner.divine"[];
7
- divine(_payloads: XyoPayloads): Promise<XyoPayload | null>;
7
+ divine(payloads?: XyoPayloads): Promise<XyoPayload | null>;
8
8
  }
9
9
  //# 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,EAAQ,UAAU,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAIpE,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,KAAK,SAAS,oHAEtB;IAED,IAAa,OAAO,yCAEnB;IAEY,MAAM,CAAC,SAAS,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;CAOxE"}
1
+ {"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../../../src/Payload/Archivist/Diviner.ts"],"names":[],"mappings":"AAEA,OAAO,EAAQ,UAAU,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAKpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,gCAAgC,EAAE,MAAM,UAAU,CAAA;AAE3D,qBAAa,0BAA2B,SAAQ,iBAAiB,CAAC,UAAU,EAAE,gCAAgC,CAAC;IAC7G,SAAS,KAAK,SAAS,oHAEtB;IAED,IAAa,OAAO,yCAEnB;IAEY,MAAM,CAAC,QAAQ,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;CAQxE"}
@@ -1,7 +1,9 @@
1
+ import { assertEx } from '@xylabs/assert';
1
2
  import { XyoArchivistGetQueryPayloadSchema } from '@xyo-network/archivist';
2
3
  import { Huri } from '@xyo-network/payload';
3
4
  import { XyoDivinerDivineQuerySchema } from '../../Query';
4
5
  import { profile } from '../lib';
6
+ import { XyoHuriPayloadSchema } from '../XyoHuriPayload';
5
7
  import { XyoPayloadDiviner } from '../XyoPayloadDiviner';
6
8
  export class XyoArchivistPayloadDiviner extends XyoPayloadDiviner {
7
9
  get archivist() {
@@ -10,10 +12,11 @@ export class XyoArchivistPayloadDiviner extends XyoPayloadDiviner {
10
12
  get queries() {
11
13
  return [XyoDivinerDivineQuerySchema];
12
14
  }
13
- async divine(_payloads) {
14
- const huriObj = new Huri(this.config.huri);
15
- const [[, payloads = []]] = await profile(async () => await this.archivist.query({ hashes: [huriObj.hash], schema: XyoArchivistGetQueryPayloadSchema }));
16
- return payloads?.[0] ?? null;
15
+ async divine(payloads) {
16
+ const huriPayload = assertEx(payloads?.find((payload) => payload?.schema === XyoHuriPayloadSchema));
17
+ const huriObj = new Huri(huriPayload.huri);
18
+ const [[, resultPayloads = []]] = await profile(async () => await this.archivist.query({ hashes: [huriObj.hash], schema: XyoArchivistGetQueryPayloadSchema }));
19
+ return resultPayloads?.[0] ?? null;
17
20
  }
18
21
  }
19
22
  //# sourceMappingURL=Diviner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Diviner.js","sourceRoot":"","sources":["../../../../src/Payload/Archivist/Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iCAAiC,EAAE,MAAM,wBAAwB,CAAA;AAC1E,OAAO,EAAE,IAAI,EAA2B,MAAM,sBAAsB,CAAA;AAEpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAA;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAA;AAChC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAGxD,MAAM,OAAO,0BAA2B,SAAQ,iBAAmD;IACjG,IAAc,SAAS;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAA;IAC9B,CAAC;IAED,IAAa,OAAO;QAClB,OAAO,CAAC,2BAA2B,CAAC,CAAA;IACtC,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,SAAsB;QACxC,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAC1C,MAAM,CAAC,CAAC,EAAE,QAAQ,GAAG,EAAE,CAAC,CAAC,GAAG,MAAM,OAAO,CACvC,KAAK,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,iCAAiC,EAAE,CAAC,CAC9G,CAAA;QACD,OAAO,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAA;IAC9B,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,EAAE,iCAAiC,EAAE,MAAM,wBAAwB,CAAA;AAC1E,OAAO,EAAE,IAAI,EAA2B,MAAM,sBAAsB,CAAA;AAEpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAA;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAA;AAChC,OAAO,EAAkB,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAGxD,MAAM,OAAO,0BAA2B,SAAQ,iBAA+D;IAC7G,IAAc,SAAS;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAA;IAC9B,CAAC;IAED,IAAa,OAAO;QAClB,OAAO,CAAC,2BAA2B,CAAC,CAAA;IACtC,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,QAAsB;QACxC,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,OAAO,EAA6B,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,oBAAoB,CAAC,CAAC,CAAA;QAC9H,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAC1C,MAAM,CAAC,CAAC,EAAE,cAAc,GAAG,EAAE,CAAC,CAAC,GAAG,MAAM,OAAO,CAC7C,KAAK,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,iCAAiC,EAAE,CAAC,CAC9G,CAAA;QACD,OAAO,cAAc,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAA;IACpC,CAAC;CACF"}
@@ -2,9 +2,8 @@ import { HuriOptions, XyoPayload } from '@xyo-network/payload';
2
2
  import { XyoDivinerConfig } from '../../Config';
3
3
  export declare type XyoHuriPayloadDivinerConfigSchema = 'network.xyo.diviner.payload.huri.config';
4
4
  export declare const XyoHuriPayloadDivinerConfigSchema: XyoHuriPayloadDivinerConfigSchema;
5
- export declare type XyoHuriPayloadDivinerConfig<T extends XyoPayload = XyoPayload> = XyoDivinerConfig<T & {
5
+ export declare type XyoHuriPayloadDivinerConfig<TTargetPayload extends XyoPayload = XyoPayload, T extends XyoPayload = XyoPayload> = XyoDivinerConfig<TTargetPayload, T & {
6
6
  schema: XyoHuriPayloadDivinerConfigSchema;
7
- huri: string;
8
7
  options?: HuriOptions;
9
8
  }>;
10
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,CAAC,GAAG;IACF,MAAM,EAAE,iCAAiC,CAAA;IACzC,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,WAAW,CAAA;CACtB,CACF,CAAA"}
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,EAAE,CAAC,SAAS,UAAU,GAAG,UAAU,IAAI,gBAAgB,CAC3I,cAAc,EACd,CAAC,GAAG;IACF,MAAM,EAAE,iCAAiC,CAAA;IACzC,OAAO,CAAC,EAAE,WAAW,CAAA;CACtB,CACF,CAAA"}
@@ -1,9 +1,9 @@
1
1
  import { XyoPayload, XyoPayloads } from '@xyo-network/payload';
2
2
  import { XyoPayloadDiviner } from '../XyoPayloadDiviner';
3
3
  import { XyoHuriPayloadDivinerConfig } from './Config';
4
- export declare class XyoHuriPayloadDiviner extends XyoPayloadDiviner<XyoHuriPayloadDivinerConfig> {
4
+ export declare class XyoHuriPayloadDiviner extends XyoPayloadDiviner<XyoPayload, XyoHuriPayloadDivinerConfig> {
5
5
  protected get options(): import("@xyo-network/payload").HuriOptions | undefined;
6
6
  get queries(): "network.xyo.query.diviner.divine"[];
7
- divine(_payloads?: XyoPayloads): Promise<XyoPayload | null>;
7
+ divine(payloads?: XyoPayloads): Promise<XyoPayload | null>;
8
8
  }
9
9
  //# sourceMappingURL=Diviner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../../../src/Payload/Huri/Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAIpE,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;IAED,IAAa,OAAO,yCAEnB;IAEc,MAAM,CAAC,SAAS,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;CAK3E"}
1
+ {"version":3,"file":"Diviner.d.ts","sourceRoot":"","sources":["../../../../src/Payload/Huri/Diviner.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,UAAU,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAKpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAA;AAEtD,qBAAa,qBAAsB,SAAQ,iBAAiB,CAAC,UAAU,EAAE,2BAA2B,CAAC;IACnG,SAAS,KAAK,OAAO,2DAEpB;IAED,IAAa,OAAO,yCAEnB;IAEc,MAAM,CAAC,QAAQ,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;CAM1E"}
@@ -1,6 +1,8 @@
1
+ import { assertEx } from '@xylabs/assert';
1
2
  import { Huri } from '@xyo-network/payload';
2
3
  import { XyoDivinerDivineQuerySchema } from '../../Query';
3
4
  import { profile } from '../lib';
5
+ import { XyoHuriPayloadSchema } from '../XyoHuriPayload';
4
6
  import { XyoPayloadDiviner } from '../XyoPayloadDiviner';
5
7
  export class XyoHuriPayloadDiviner extends XyoPayloadDiviner {
6
8
  get options() {
@@ -9,8 +11,9 @@ export class XyoHuriPayloadDiviner extends XyoPayloadDiviner {
9
11
  get queries() {
10
12
  return [XyoDivinerDivineQuerySchema];
11
13
  }
12
- async divine(_payloads) {
13
- const huri = new Huri(this.config.huri, this.options);
14
+ async divine(payloads) {
15
+ const huriPayload = assertEx(payloads?.find((payload) => payload?.schema === XyoHuriPayloadSchema));
16
+ const huri = new Huri(huriPayload?.huri, this.options);
14
17
  const [payload = null] = await profile(async () => await huri.fetch());
15
18
  return payload;
16
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Diviner.js","sourceRoot":"","sources":["../../../../src/Payload/Huri/Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAA2B,MAAM,sBAAsB,CAAA;AAEpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAA;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAA;AAChC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAGxD,MAAM,OAAO,qBAAsB,SAAQ,iBAA8C;IACvF,IAAc,OAAO;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA;IAC5B,CAAC;IAED,IAAa,OAAO;QAClB,OAAO,CAAC,2BAA2B,CAAC,CAAA;IACtC,CAAC;IAEQ,KAAK,CAAC,MAAM,CAAC,SAAuB;QAC3C,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;QACrD,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;QACtE,OAAO,OAAO,CAAA;IAChB,CAAC;CACF"}
1
+ {"version":3,"file":"Diviner.js","sourceRoot":"","sources":["../../../../src/Payload/Huri/Diviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,IAAI,EAA2B,MAAM,sBAAsB,CAAA;AAEpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAA;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAA;AAChC,OAAO,EAAkB,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAGxD,MAAM,OAAO,qBAAsB,SAAQ,iBAA0D;IACnG,IAAc,OAAO;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA;IAC5B,CAAC;IAED,IAAa,OAAO;QAClB,OAAO,CAAC,2BAA2B,CAAC,CAAA;IACtC,CAAC;IAEQ,KAAK,CAAC,MAAM,CAAC,QAAsB;QAC1C,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,OAAO,EAA6B,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,oBAAoB,CAAC,CAAC,CAAA;QAC9H,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;QACtD,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;QACtE,OAAO,OAAO,CAAA;IAChB,CAAC;CACF"}
@@ -0,0 +1,8 @@
1
+ import { XyoPayload } from '@xyo-network/payload';
2
+ export declare type XyoHuriPayloadSchema = 'network.xyo.huri';
3
+ export declare const XyoHuriPayloadSchema: XyoHuriPayloadSchema;
4
+ export declare type XyoHuriPayload = XyoPayload<{
5
+ schema: 'network.xyo.huri';
6
+ huri: string;
7
+ }>;
8
+ //# sourceMappingURL=XyoHuriPayload.d.ts.map
@@ -0,0 +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,oBAAoB,GAAG,kBAAkB,CAAA;AACrD,eAAO,MAAM,oBAAoB,EAAE,oBAAyC,CAAA;AAE5E,oBAAY,cAAc,GAAG,UAAU,CAAC;IACtC,MAAM,EAAE,kBAAkB,CAAA;IAC1B,IAAI,EAAE,MAAM,CAAA;CACb,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export const XyoHuriPayloadSchema = 'network.xyo.huri';
2
+ //# sourceMappingURL=XyoHuriPayload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"XyoHuriPayload.js","sourceRoot":"","sources":["../../../src/Payload/XyoHuriPayload.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,oBAAoB,GAAyB,kBAAkB,CAAA"}
@@ -1,5 +1,7 @@
1
- import { XyoAbstractDiviner } from '../Abstract';
1
+ import { XyoPayload } from '@xyo-network/payload';
2
2
  import { XyoDivinerConfig } from '../Config';
3
- export declare abstract class XyoPayloadDiviner<C extends XyoDivinerConfig = XyoDivinerConfig> extends XyoAbstractDiviner<C> {
3
+ import { XyoDivinerQueryPayload } from '../Query';
4
+ import { XyoDiviner } from '../XyoDiviner';
5
+ export declare abstract class XyoPayloadDiviner<T extends XyoPayload = XyoPayload, C extends XyoDivinerConfig<T> = XyoDivinerConfig<T>, Q extends XyoDivinerQueryPayload<T> = XyoDivinerQueryPayload<T>> extends XyoDiviner<T, C, Q> {
4
6
  }
5
7
  //# sourceMappingURL=XyoPayloadDiviner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"XyoPayloadDiviner.d.ts","sourceRoot":"","sources":["../../../src/Payload/XyoPayloadDiviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAE5C,8BAAsB,iBAAiB,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB,CAAE,SAAQ,kBAAkB,CAAC,CAAC,CAAC;CAAG"}
1
+ {"version":3,"file":"XyoPayloadDiviner.d.ts","sourceRoot":"","sources":["../../../src/Payload/XyoPayloadDiviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAE1C,8BAAsB,iBAAiB,CACrC,CAAC,SAAS,UAAU,GAAG,UAAU,EACjC,CAAC,SAAS,gBAAgB,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,EACnD,CAAC,SAAS,sBAAsB,CAAC,CAAC,CAAC,GAAG,sBAAsB,CAAC,CAAC,CAAC,CAC/D,SAAQ,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;CAAG"}
@@ -1,4 +1,4 @@
1
- import { XyoAbstractDiviner } from '../Abstract';
2
- export class XyoPayloadDiviner extends XyoAbstractDiviner {
1
+ import { XyoDiviner } from '../XyoDiviner';
2
+ export class XyoPayloadDiviner extends XyoDiviner {
3
3
  }
4
4
  //# sourceMappingURL=XyoPayloadDiviner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"XyoPayloadDiviner.js","sourceRoot":"","sources":["../../../src/Payload/XyoPayloadDiviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAGhD,MAAM,OAAgB,iBAAiE,SAAQ,kBAAqB;CAAG"}
1
+ {"version":3,"file":"XyoPayloadDiviner.js","sourceRoot":"","sources":["../../../src/Payload/XyoPayloadDiviner.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAE1C,MAAM,OAAgB,iBAIpB,SAAQ,UAAmB;CAAG"}
@@ -1,5 +1,5 @@
1
1
  export * from './Archivist';
2
2
  export * from './Huri';
3
- export * from './Query';
3
+ export * from './XyoHuriPayload';
4
4
  export * from './XyoPayloadDiviner';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Payload/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Payload/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,QAAQ,CAAA;AACtB,cAAc,kBAAkB,CAAA;AAChC,cAAc,qBAAqB,CAAA"}
@@ -1,5 +1,5 @@
1
1
  export * from './Archivist';
2
2
  export * from './Huri';
3
- export * from './Query';
3
+ export * from './XyoHuriPayload';
4
4
  export * from './XyoPayloadDiviner';
5
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Payload/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Payload/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,QAAQ,CAAA;AACtB,cAAc,kBAAkB,CAAA;AAChC,cAAc,qBAAqB,CAAA"}
@@ -1,8 +1,8 @@
1
- import { XyoPayloads, XyoQueryPayload } from '@xyo-network/payload';
1
+ import { XyoPayload, XyoPayloads, XyoQueryPayload } from '@xyo-network/payload';
2
2
  export declare type XyoDivinerDivineQuerySchema = 'network.xyo.query.diviner.divine';
3
3
  export declare const XyoDivinerDivineQuerySchema: XyoDivinerDivineQuerySchema;
4
- export declare type XyoDivinerDivineQueryPayload = XyoQueryPayload<{
4
+ export declare type XyoDivinerDivineQueryPayload<T extends XyoPayload = XyoPayload> = XyoQueryPayload<{
5
5
  schema: XyoDivinerDivineQuerySchema;
6
- payloads?: XyoPayloads;
6
+ payloads?: XyoPayloads<T>;
7
7
  }>;
8
8
  //# sourceMappingURL=Divine.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Divine.d.ts","sourceRoot":"","sources":["../../../src/Query/Divine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAEnE,oBAAY,2BAA2B,GAAG,kCAAkC,CAAA;AAC5E,eAAO,MAAM,2BAA2B,EAAE,2BAAgE,CAAA;AAE1G,oBAAY,4BAA4B,GAAG,eAAe,CAAC;IACzD,MAAM,EAAE,2BAA2B,CAAA;IACnC,QAAQ,CAAC,EAAE,WAAW,CAAA;CACvB,CAAC,CAAA"}
1
+ {"version":3,"file":"Divine.d.ts","sourceRoot":"","sources":["../../../src/Query/Divine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAE/E,oBAAY,2BAA2B,GAAG,kCAAkC,CAAA;AAC5E,eAAO,MAAM,2BAA2B,EAAE,2BAAgE,CAAA;AAE1G,oBAAY,4BAA4B,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,IAAI,eAAe,CAAC;IAC5F,MAAM,EAAE,2BAA2B,CAAA;IACnC,QAAQ,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;CAC1B,CAAC,CAAA"}
@@ -1,4 +1,5 @@
1
1
  import { XyoModuleQueryPayload } from '@xyo-network/module';
2
+ import { XyoPayload } from '@xyo-network/payload';
2
3
  import { XyoDivinerDivineQueryPayload } from './Divine';
3
- export declare type XyoDivinerQueryPayload = XyoDivinerDivineQueryPayload | XyoModuleQueryPayload;
4
+ export declare type XyoDivinerQueryPayload<T extends XyoPayload = XyoPayload> = XyoDivinerDivineQueryPayload<T> | XyoModuleQueryPayload;
4
5
  //# sourceMappingURL=Payload.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Payload.d.ts","sourceRoot":"","sources":["../../../src/Query/Payload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAE3D,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAA;AAEvD,oBAAY,sBAAsB,GAAG,4BAA4B,GAAG,qBAAqB,CAAA"}
1
+ {"version":3,"file":"Payload.d.ts","sourceRoot":"","sources":["../../../src/Query/Payload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAA;AAEvD,oBAAY,sBAAsB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,IAAI,4BAA4B,CAAC,CAAC,CAAC,GAAG,qBAAqB,CAAA"}
@@ -1,4 +1,19 @@
1
- import { XyoModule } from '@xyo-network/module';
2
- import { XyoDivinerQueryPayload } from './Query';
3
- export declare type XyoDiviner<Q extends XyoDivinerQueryPayload = XyoDivinerQueryPayload> = XyoModule<Q>;
1
+ import { XyoAbstractModule, XyoModuleQueryResult } from '@xyo-network/module';
2
+ import { XyoPayload, XyoPayloads } from '@xyo-network/payload';
3
+ import { Promisable } from '@xyo-network/promisable';
4
+ import { XyoDivinerConfig } from './Config';
5
+ import { XyoDivinerQueryPayload, XyoDivinerQuerySchema } from './Query';
6
+ export declare abstract class XyoDiviner<TPayload extends XyoPayload = XyoPayload, TConfig extends XyoDivinerConfig<TPayload> = XyoDivinerConfig<TPayload>, TQuery extends XyoDivinerQueryPayload<TPayload> = XyoDivinerQueryPayload<TPayload>> extends XyoAbstractModule<TConfig, TQuery> {
7
+ abstract divine(payloads?: XyoPayloads<TPayload>): Promisable<TPayload | null>;
8
+ get queries(): (TQuery['schema'] | XyoDivinerQuerySchema)[];
9
+ query(query: TQuery): Promise<XyoModuleQueryResult>;
10
+ }
11
+ export declare abstract class XyoTimestampDiviner<TPayload extends XyoPayload = XyoPayload, TConfig extends XyoDivinerConfig<TPayload> = XyoDivinerConfig<TPayload>, TQuery extends XyoDivinerQueryPayload<TPayload> = XyoDivinerQueryPayload<TPayload>> extends XyoDiviner<TPayload, TConfig, TQuery> {
12
+ }
13
+ /** @deprecated use XyoDiviner instead*/
14
+ export declare abstract class XyoAbstractDiviner<TConfig extends XyoDivinerConfig = XyoDivinerConfig, TQuery extends XyoDivinerQueryPayload = XyoDivinerQueryPayload> extends XyoDiviner<XyoPayload, TConfig, TQuery> {
15
+ }
16
+ /** @deprecated use XyoDiviner instead*/
17
+ export declare abstract class XyoAbstractTimestampDiviner<TConfig extends XyoDivinerConfig = XyoDivinerConfig, TQuery extends XyoDivinerQueryPayload = XyoDivinerQueryPayload> extends XyoTimestampDiviner<XyoPayload, TConfig, TQuery> {
18
+ }
4
19
  //# sourceMappingURL=XyoDiviner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"XyoDiviner.d.ts","sourceRoot":"","sources":["../../src/XyoDiviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAE/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAEhD,oBAAY,UAAU,CAAC,CAAC,SAAS,sBAAsB,GAAG,sBAAsB,IAAI,SAAS,CAAC,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"XyoDiviner.d.ts","sourceRoot":"","sources":["../../src/XyoDiviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC7E,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAC3C,OAAO,EAA+B,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAEpG,8BAAsB,UAAU,CAC9B,QAAQ,SAAS,UAAU,GAAG,UAAU,EACxC,OAAO,SAAS,gBAAgB,CAAC,QAAQ,CAAC,GAAG,gBAAgB,CAAC,QAAQ,CAAC,EACvE,MAAM,SAAS,sBAAsB,CAAC,QAAQ,CAAC,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAClF,SAAQ,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC;IAE9E,IAAoB,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,qBAAqB,CAAC,EAAE,CAE1E;IAEK,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;CAa1D;AAED,8BAAsB,mBAAmB,CACvC,QAAQ,SAAS,UAAU,GAAG,UAAU,EACxC,OAAO,SAAS,gBAAgB,CAAC,QAAQ,CAAC,GAAG,gBAAgB,CAAC,QAAQ,CAAC,EACvE,MAAM,SAAS,sBAAsB,CAAC,QAAQ,CAAC,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAClF,SAAQ,UAAU,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC;CAAG;AAElD,wCAAwC;AACxC,8BAAsB,kBAAkB,CACtC,OAAO,SAAS,gBAAgB,GAAG,gBAAgB,EACnD,MAAM,SAAS,sBAAsB,GAAG,sBAAsB,CAC9D,SAAQ,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC;CAAG;AAEpD,wCAAwC;AACxC,8BAAsB,2BAA2B,CAC/C,OAAO,SAAS,gBAAgB,GAAG,gBAAgB,EACnD,MAAM,SAAS,sBAAsB,GAAG,sBAAsB,CAC9D,SAAQ,mBAAmB,CAAC,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC;CAAG"}
@@ -1,2 +1,28 @@
1
- export {};
1
+ import { XyoAbstractModule } from '@xyo-network/module';
2
+ import { XyoDivinerDivineQuerySchema } from './Query';
3
+ export class XyoDiviner extends XyoAbstractModule {
4
+ get queries() {
5
+ return [XyoDivinerDivineQuerySchema];
6
+ }
7
+ async query(query) {
8
+ if (!this.queries.find((schema) => schema === query.schema)) {
9
+ console.error(`Undeclared Module Query: ${query.schema}`);
10
+ }
11
+ const payloads = [];
12
+ switch (query.schema) {
13
+ case XyoDivinerDivineQuerySchema:
14
+ payloads.push(await this.divine(query.payloads));
15
+ break;
16
+ }
17
+ return [this.bindPayloads(payloads), payloads];
18
+ }
19
+ }
20
+ export class XyoTimestampDiviner extends XyoDiviner {
21
+ }
22
+ /** @deprecated use XyoDiviner instead*/
23
+ export class XyoAbstractDiviner extends XyoDiviner {
24
+ }
25
+ /** @deprecated use XyoDiviner instead*/
26
+ export class XyoAbstractTimestampDiviner extends XyoTimestampDiviner {
27
+ }
2
28
  //# sourceMappingURL=XyoDiviner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"XyoDiviner.js","sourceRoot":"","sources":["../../src/XyoDiviner.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"XyoDiviner.js","sourceRoot":"","sources":["../../src/XyoDiviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAwB,MAAM,qBAAqB,CAAA;AAK7E,OAAO,EAAE,2BAA2B,EAAiD,MAAM,SAAS,CAAA;AAEpG,MAAM,OAAgB,UAIpB,SAAQ,iBAAkC;IAG1C,IAAoB,OAAO;QACzB,OAAO,CAAC,2BAA2B,CAAC,CAAA;IACtC,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAa;QACvB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC,EAAE;YAC3D,OAAO,CAAC,KAAK,CAAC,4BAA4B,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;SAC1D;QAED,MAAM,QAAQ,GAAwB,EAAE,CAAA;QACxC,QAAQ,KAAK,CAAC,MAAM,EAAE;YACpB,KAAK,2BAA2B;gBAC9B,QAAQ,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAA;gBAChD,MAAK;SACR;QACD,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAA;IAChD,CAAC;CACF;AAED,MAAM,OAAgB,mBAIpB,SAAQ,UAAqC;CAAG;AAElD,wCAAwC;AACxC,MAAM,OAAgB,kBAGpB,SAAQ,UAAuC;CAAG;AAEpD,wCAAwC;AACxC,MAAM,OAAgB,2BAGpB,SAAQ,mBAAgD;CAAG"}
@@ -1,4 +1,3 @@
1
- export * from './Abstract';
2
1
  export * from './Config';
3
2
  export * from './Diviner';
4
3
  export * from './Payload';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,cAAc,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,cAAc,CAAA"}
package/dist/esm/index.js CHANGED
@@ -1,4 +1,3 @@
1
- export * from './Abstract';
2
1
  export * from './Config';
3
2
  export * from './Diviner';
4
3
  export * from './Payload';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,cAAc,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,cAAc,CAAA"}
package/package.json CHANGED
@@ -10,10 +10,11 @@
10
10
  "url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues"
11
11
  },
12
12
  "dependencies": {
13
- "@xyo-network/archivist": "^2.27.0-rc.7",
14
- "@xyo-network/module": "^2.27.0-rc.7",
15
- "@xyo-network/payload": "^2.27.0-rc.7",
16
- "@xyo-network/promisable": "^2.27.0-rc.7",
13
+ "@xylabs/assert": "^2.6.7",
14
+ "@xyo-network/archivist": "^2.27.0",
15
+ "@xyo-network/module": "^2.27.0",
16
+ "@xyo-network/payload": "^2.27.0",
17
+ "@xyo-network/promisable": "^2.27.0",
17
18
  "tslib": "^2.4.0"
18
19
  },
19
20
  "description": "Primary SDK for using XYO Protocol 2.0",
@@ -52,6 +53,5 @@
52
53
  },
53
54
  "sideEffects": false,
54
55
  "types": "dist/esm/index.d.ts",
55
- "version": "2.27.0-rc.7",
56
- "stableVersion": "2.26.19"
56
+ "version": "2.27.0"
57
57
  }
package/src/Config.ts CHANGED
@@ -4,4 +4,6 @@ import { XyoPayload } from '@xyo-network/payload'
4
4
  export type XyoDivinerConfigSchema = 'network.xyo.diviner.config'
5
5
  export const XyoDivinerConfigSchema: XyoDivinerConfigSchema = 'network.xyo.diviner.config'
6
6
 
7
- export type XyoDivinerConfig<TConfig extends XyoPayload = XyoPayload<{ schema: XyoDivinerConfigSchema | string }>> = XyoModuleConfig<TConfig>
7
+ export type XyoDivinerConfig<TTargetPayload extends XyoPayload = XyoPayload, TConfig extends XyoPayload = XyoPayload> = XyoModuleConfig<
8
+ TConfig & { targetSchema: TTargetPayload['schema'] }
9
+ >
@@ -1,11 +1,15 @@
1
1
  import { XyoArchivist } from '@xyo-network/archivist'
2
+ import { XyoPayload } from '@xyo-network/payload'
2
3
 
3
- import { XyoHuriPayloadDivinerConfig } from '../Huri'
4
+ import { XyoDivinerConfig } from '../../Config'
4
5
 
5
6
  export type XyoArchivistPayloadDivinerConfigSchema = 'network.xyo.diviner.payload.archivist.config'
6
7
  export const XyoArchivistPayloadDivinerConfigSchema: XyoArchivistPayloadDivinerConfigSchema = 'network.xyo.diviner.payload.archivist.config'
7
8
 
8
- export type XyoArchivistPayloadDivinerConfig = XyoHuriPayloadDivinerConfig<{
9
- schema: XyoArchivistPayloadDivinerConfigSchema
10
- archivist: XyoArchivist
11
- }>
9
+ export type XyoArchivistPayloadDivinerConfig<TTargetPayload extends XyoPayload = XyoPayload, T extends XyoPayload = XyoPayload> = XyoDivinerConfig<
10
+ TTargetPayload,
11
+ T & {
12
+ schema: XyoArchivistPayloadDivinerConfigSchema
13
+ archivist: XyoArchivist
14
+ }
15
+ >
@@ -1,12 +1,14 @@
1
+ import { assertEx } from '@xylabs/assert'
1
2
  import { XyoArchivistGetQueryPayloadSchema } from '@xyo-network/archivist'
2
3
  import { Huri, XyoPayload, XyoPayloads } from '@xyo-network/payload'
3
4
 
4
5
  import { XyoDivinerDivineQuerySchema } from '../../Query'
5
6
  import { profile } from '../lib'
7
+ import { XyoHuriPayload, XyoHuriPayloadSchema } from '../XyoHuriPayload'
6
8
  import { XyoPayloadDiviner } from '../XyoPayloadDiviner'
7
9
  import { XyoArchivistPayloadDivinerConfig } from './Config'
8
10
 
9
- export class XyoArchivistPayloadDiviner extends XyoPayloadDiviner<XyoArchivistPayloadDivinerConfig> {
11
+ export class XyoArchivistPayloadDiviner extends XyoPayloadDiviner<XyoPayload, XyoArchivistPayloadDivinerConfig> {
10
12
  protected get archivist() {
11
13
  return this.config.archivist
12
14
  }
@@ -15,11 +17,12 @@ export class XyoArchivistPayloadDiviner extends XyoPayloadDiviner<XyoArchivistPa
15
17
  return [XyoDivinerDivineQuerySchema]
16
18
  }
17
19
 
18
- public async divine(_payloads: XyoPayloads): Promise<XyoPayload | null> {
19
- const huriObj = new Huri(this.config.huri)
20
- const [[, payloads = []]] = await profile(
20
+ public async divine(payloads?: XyoPayloads): Promise<XyoPayload | null> {
21
+ const huriPayload = assertEx(payloads?.find((payload): payload is XyoHuriPayload => payload?.schema === XyoHuriPayloadSchema))
22
+ const huriObj = new Huri(huriPayload.huri)
23
+ const [[, resultPayloads = []]] = await profile(
21
24
  async () => await this.archivist.query({ hashes: [huriObj.hash], schema: XyoArchivistGetQueryPayloadSchema }),
22
25
  )
23
- return payloads?.[0] ?? null
26
+ return resultPayloads?.[0] ?? null
24
27
  }
25
28
  }
@@ -5,10 +5,10 @@ import { XyoDivinerConfig } from '../../Config'
5
5
  export type XyoHuriPayloadDivinerConfigSchema = 'network.xyo.diviner.payload.huri.config'
6
6
  export const XyoHuriPayloadDivinerConfigSchema: XyoHuriPayloadDivinerConfigSchema = 'network.xyo.diviner.payload.huri.config'
7
7
 
8
- export type XyoHuriPayloadDivinerConfig<T extends XyoPayload = XyoPayload> = XyoDivinerConfig<
8
+ export type XyoHuriPayloadDivinerConfig<TTargetPayload extends XyoPayload = XyoPayload, T extends XyoPayload = XyoPayload> = XyoDivinerConfig<
9
+ TTargetPayload,
9
10
  T & {
10
11
  schema: XyoHuriPayloadDivinerConfigSchema
11
- huri: string
12
12
  options?: HuriOptions
13
13
  }
14
14
  >
@@ -1,11 +1,13 @@
1
+ import { assertEx } from '@xylabs/assert'
1
2
  import { Huri, XyoPayload, XyoPayloads } from '@xyo-network/payload'
2
3
 
3
4
  import { XyoDivinerDivineQuerySchema } from '../../Query'
4
5
  import { profile } from '../lib'
6
+ import { XyoHuriPayload, XyoHuriPayloadSchema } from '../XyoHuriPayload'
5
7
  import { XyoPayloadDiviner } from '../XyoPayloadDiviner'
6
8
  import { XyoHuriPayloadDivinerConfig } from './Config'
7
9
 
8
- export class XyoHuriPayloadDiviner extends XyoPayloadDiviner<XyoHuriPayloadDivinerConfig> {
10
+ export class XyoHuriPayloadDiviner extends XyoPayloadDiviner<XyoPayload, XyoHuriPayloadDivinerConfig> {
9
11
  protected get options() {
10
12
  return this.config.options
11
13
  }
@@ -14,8 +16,9 @@ export class XyoHuriPayloadDiviner extends XyoPayloadDiviner<XyoHuriPayloadDivin
14
16
  return [XyoDivinerDivineQuerySchema]
15
17
  }
16
18
 
17
- override async divine(_payloads?: XyoPayloads): Promise<XyoPayload | null> {
18
- const huri = new Huri(this.config.huri, this.options)
19
+ override async divine(payloads?: XyoPayloads): Promise<XyoPayload | null> {
20
+ const huriPayload = assertEx(payloads?.find((payload): payload is XyoHuriPayload => payload?.schema === XyoHuriPayloadSchema))
21
+ const huri = new Huri(huriPayload?.huri, this.options)
19
22
  const [payload = null] = await profile(async () => await huri.fetch())
20
23
  return payload
21
24
  }
@@ -0,0 +1,9 @@
1
+ import { XyoPayload } from '@xyo-network/payload'
2
+
3
+ export type XyoHuriPayloadSchema = 'network.xyo.huri'
4
+ export const XyoHuriPayloadSchema: XyoHuriPayloadSchema = 'network.xyo.huri'
5
+
6
+ export type XyoHuriPayload = XyoPayload<{
7
+ schema: 'network.xyo.huri'
8
+ huri: string
9
+ }>
@@ -1,4 +1,11 @@
1
- import { XyoAbstractDiviner } from '../Abstract'
1
+ import { XyoPayload } from '@xyo-network/payload'
2
+
2
3
  import { XyoDivinerConfig } from '../Config'
4
+ import { XyoDivinerQueryPayload } from '../Query'
5
+ import { XyoDiviner } from '../XyoDiviner'
3
6
 
4
- export abstract class XyoPayloadDiviner<C extends XyoDivinerConfig = XyoDivinerConfig> extends XyoAbstractDiviner<C> {}
7
+ export abstract class XyoPayloadDiviner<
8
+ T extends XyoPayload = XyoPayload,
9
+ C extends XyoDivinerConfig<T> = XyoDivinerConfig<T>,
10
+ Q extends XyoDivinerQueryPayload<T> = XyoDivinerQueryPayload<T>,
11
+ > extends XyoDiviner<T, C, Q> {}
@@ -1,4 +1,4 @@
1
1
  export * from './Archivist'
2
2
  export * from './Huri'
3
- export * from './Query'
3
+ export * from './XyoHuriPayload'
4
4
  export * from './XyoPayloadDiviner'
@@ -1,9 +1,9 @@
1
- import { XyoPayloads, XyoQueryPayload } from '@xyo-network/payload'
1
+ import { XyoPayload, XyoPayloads, XyoQueryPayload } from '@xyo-network/payload'
2
2
 
3
3
  export type XyoDivinerDivineQuerySchema = 'network.xyo.query.diviner.divine'
4
4
  export const XyoDivinerDivineQuerySchema: XyoDivinerDivineQuerySchema = 'network.xyo.query.diviner.divine'
5
5
 
6
- export type XyoDivinerDivineQueryPayload = XyoQueryPayload<{
6
+ export type XyoDivinerDivineQueryPayload<T extends XyoPayload = XyoPayload> = XyoQueryPayload<{
7
7
  schema: XyoDivinerDivineQuerySchema
8
- payloads?: XyoPayloads
8
+ payloads?: XyoPayloads<T>
9
9
  }>
@@ -1,5 +1,6 @@
1
1
  import { XyoModuleQueryPayload } from '@xyo-network/module'
2
+ import { XyoPayload } from '@xyo-network/payload'
2
3
 
3
4
  import { XyoDivinerDivineQueryPayload } from './Divine'
4
5
 
5
- export type XyoDivinerQueryPayload = XyoDivinerDivineQueryPayload | XyoModuleQueryPayload
6
+ export type XyoDivinerQueryPayload<T extends XyoPayload = XyoPayload> = XyoDivinerDivineQueryPayload<T> | XyoModuleQueryPayload