@xyo-network/api 2.38.17 → 2.38.19

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 (99) hide show
  1. package/dist/cjs/Diviner/ArchiveListApiDiviner/ArchiveListApiDiviner.d.ts +19 -0
  2. package/dist/cjs/Diviner/ArchiveListApiDiviner/ArchiveListApiDiviner.d.ts.map +1 -0
  3. package/dist/cjs/Diviner/ArchiveListApiDiviner/ArchiveListApiDiviner.js +48 -0
  4. package/dist/cjs/Diviner/ArchiveListApiDiviner/ArchiveListApiDiviner.js.map +1 -0
  5. package/dist/cjs/Diviner/ArchiveListApiDiviner/ArchiveListApiDivinerConfig.d.ts +10 -0
  6. package/dist/cjs/Diviner/ArchiveListApiDiviner/ArchiveListApiDivinerConfig.d.ts.map +1 -0
  7. package/dist/cjs/Diviner/ArchiveListApiDiviner/ArchiveListApiDivinerConfig.js +6 -0
  8. package/dist/cjs/Diviner/ArchiveListApiDiviner/ArchiveListApiDivinerConfig.js.map +1 -0
  9. package/dist/cjs/Diviner/ArchiveListApiDiviner/Payload.d.ts +7 -0
  10. package/dist/cjs/Diviner/ArchiveListApiDiviner/Payload.d.ts.map +1 -0
  11. package/dist/cjs/Diviner/ArchiveListApiDiviner/Payload.js +3 -0
  12. package/dist/cjs/Diviner/ArchiveListApiDiviner/Payload.js.map +1 -0
  13. package/dist/cjs/Diviner/ArchiveListApiDiviner/index.d.ts +4 -0
  14. package/dist/cjs/Diviner/ArchiveListApiDiviner/index.d.ts.map +1 -0
  15. package/dist/cjs/Diviner/ArchiveListApiDiviner/index.js +7 -0
  16. package/dist/cjs/Diviner/ArchiveListApiDiviner/index.js.map +1 -0
  17. package/dist/cjs/Diviner/SchemaListApiDiviner/Payload.d.ts +6 -0
  18. package/dist/cjs/Diviner/SchemaListApiDiviner/Payload.d.ts.map +1 -0
  19. package/dist/cjs/Diviner/SchemaListApiDiviner/Payload.js +3 -0
  20. package/dist/cjs/Diviner/SchemaListApiDiviner/Payload.js.map +1 -0
  21. package/dist/cjs/Diviner/SchemaListApiDiviner/SchemaListApiDiviner.d.ts +20 -0
  22. package/dist/cjs/Diviner/SchemaListApiDiviner/SchemaListApiDiviner.d.ts.map +1 -0
  23. package/dist/cjs/Diviner/SchemaListApiDiviner/SchemaListApiDiviner.js +54 -0
  24. package/dist/cjs/Diviner/SchemaListApiDiviner/SchemaListApiDiviner.js.map +1 -0
  25. package/dist/cjs/Diviner/SchemaListApiDiviner/SchemaListApiDivinerConfig.d.ts +9 -0
  26. package/dist/cjs/Diviner/SchemaListApiDiviner/SchemaListApiDivinerConfig.d.ts.map +1 -0
  27. package/dist/cjs/Diviner/SchemaListApiDiviner/SchemaListApiDivinerConfig.js +5 -0
  28. package/dist/cjs/Diviner/SchemaListApiDiviner/SchemaListApiDivinerConfig.js.map +1 -0
  29. package/dist/cjs/Diviner/SchemaListApiDiviner/index.d.ts +4 -0
  30. package/dist/cjs/Diviner/SchemaListApiDiviner/index.d.ts.map +1 -0
  31. package/dist/cjs/Diviner/SchemaListApiDiviner/index.js +7 -0
  32. package/dist/cjs/Diviner/SchemaListApiDiviner/index.js.map +1 -0
  33. package/dist/cjs/Diviner/SchemaStatsApiDiviner/SchemaStatsApiDiviner.js +1 -1
  34. package/dist/cjs/Diviner/SchemaStatsApiDiviner/SchemaStatsApiDiviner.js.map +1 -1
  35. package/dist/cjs/Diviner/SchemaStatsApiDiviner/index.d.ts +1 -0
  36. package/dist/cjs/Diviner/SchemaStatsApiDiviner/index.d.ts.map +1 -1
  37. package/dist/cjs/Diviner/SchemaStatsApiDiviner/index.js +1 -0
  38. package/dist/cjs/Diviner/SchemaStatsApiDiviner/index.js.map +1 -1
  39. package/dist/cjs/Diviner/index.d.ts +2 -0
  40. package/dist/cjs/Diviner/index.d.ts.map +1 -1
  41. package/dist/cjs/Diviner/index.js +2 -0
  42. package/dist/cjs/Diviner/index.js.map +1 -1
  43. package/dist/docs.json +7255 -3171
  44. package/dist/esm/Diviner/ArchiveListApiDiviner/ArchiveListApiDiviner.d.ts +19 -0
  45. package/dist/esm/Diviner/ArchiveListApiDiviner/ArchiveListApiDiviner.d.ts.map +1 -0
  46. package/dist/esm/Diviner/ArchiveListApiDiviner/ArchiveListApiDiviner.js +31 -0
  47. package/dist/esm/Diviner/ArchiveListApiDiviner/ArchiveListApiDiviner.js.map +1 -0
  48. package/dist/esm/Diviner/ArchiveListApiDiviner/ArchiveListApiDivinerConfig.d.ts +10 -0
  49. package/dist/esm/Diviner/ArchiveListApiDiviner/ArchiveListApiDivinerConfig.d.ts.map +1 -0
  50. package/dist/esm/Diviner/ArchiveListApiDiviner/ArchiveListApiDivinerConfig.js +3 -0
  51. package/dist/esm/Diviner/ArchiveListApiDiviner/ArchiveListApiDivinerConfig.js.map +1 -0
  52. package/dist/esm/Diviner/ArchiveListApiDiviner/Payload.d.ts +7 -0
  53. package/dist/esm/Diviner/ArchiveListApiDiviner/Payload.d.ts.map +1 -0
  54. package/dist/esm/Diviner/ArchiveListApiDiviner/Payload.js +2 -0
  55. package/dist/esm/Diviner/ArchiveListApiDiviner/Payload.js.map +1 -0
  56. package/dist/esm/Diviner/ArchiveListApiDiviner/index.d.ts +4 -0
  57. package/dist/esm/Diviner/ArchiveListApiDiviner/index.d.ts.map +1 -0
  58. package/dist/esm/Diviner/ArchiveListApiDiviner/index.js +4 -0
  59. package/dist/esm/Diviner/ArchiveListApiDiviner/index.js.map +1 -0
  60. package/dist/esm/Diviner/SchemaListApiDiviner/Payload.d.ts +6 -0
  61. package/dist/esm/Diviner/SchemaListApiDiviner/Payload.d.ts.map +1 -0
  62. package/dist/esm/Diviner/SchemaListApiDiviner/Payload.js +2 -0
  63. package/dist/esm/Diviner/SchemaListApiDiviner/Payload.js.map +1 -0
  64. package/dist/esm/Diviner/SchemaListApiDiviner/SchemaListApiDiviner.d.ts +20 -0
  65. package/dist/esm/Diviner/SchemaListApiDiviner/SchemaListApiDiviner.d.ts.map +1 -0
  66. package/dist/esm/Diviner/SchemaListApiDiviner/SchemaListApiDiviner.js +36 -0
  67. package/dist/esm/Diviner/SchemaListApiDiviner/SchemaListApiDiviner.js.map +1 -0
  68. package/dist/esm/Diviner/SchemaListApiDiviner/SchemaListApiDivinerConfig.d.ts +9 -0
  69. package/dist/esm/Diviner/SchemaListApiDiviner/SchemaListApiDivinerConfig.d.ts.map +1 -0
  70. package/dist/esm/Diviner/SchemaListApiDiviner/SchemaListApiDivinerConfig.js +2 -0
  71. package/dist/esm/Diviner/SchemaListApiDiviner/SchemaListApiDivinerConfig.js.map +1 -0
  72. package/dist/esm/Diviner/SchemaListApiDiviner/index.d.ts +4 -0
  73. package/dist/esm/Diviner/SchemaListApiDiviner/index.d.ts.map +1 -0
  74. package/dist/esm/Diviner/SchemaListApiDiviner/index.js +4 -0
  75. package/dist/esm/Diviner/SchemaListApiDiviner/index.js.map +1 -0
  76. package/dist/esm/Diviner/SchemaStatsApiDiviner/SchemaStatsApiDiviner.js +1 -1
  77. package/dist/esm/Diviner/SchemaStatsApiDiviner/SchemaStatsApiDiviner.js.map +1 -1
  78. package/dist/esm/Diviner/SchemaStatsApiDiviner/index.d.ts +1 -0
  79. package/dist/esm/Diviner/SchemaStatsApiDiviner/index.d.ts.map +1 -1
  80. package/dist/esm/Diviner/SchemaStatsApiDiviner/index.js +1 -0
  81. package/dist/esm/Diviner/SchemaStatsApiDiviner/index.js.map +1 -1
  82. package/dist/esm/Diviner/index.d.ts +2 -0
  83. package/dist/esm/Diviner/index.d.ts.map +1 -1
  84. package/dist/esm/Diviner/index.js +2 -0
  85. package/dist/esm/Diviner/index.js.map +1 -1
  86. package/package.json +9 -9
  87. package/src/Diviner/ArchiveListApiDiviner/ArchiveListApiDiviner.spec.ts +24 -0
  88. package/src/Diviner/ArchiveListApiDiviner/ArchiveListApiDiviner.ts +45 -0
  89. package/src/Diviner/ArchiveListApiDiviner/ArchiveListApiDivinerConfig.ts +15 -0
  90. package/src/Diviner/ArchiveListApiDiviner/Payload.ts +11 -0
  91. package/src/Diviner/ArchiveListApiDiviner/index.ts +3 -0
  92. package/src/Diviner/SchemaListApiDiviner/Payload.ts +9 -0
  93. package/src/Diviner/SchemaListApiDiviner/SchemaListApiDiviner.spec.ts +23 -0
  94. package/src/Diviner/SchemaListApiDiviner/SchemaListApiDiviner.ts +51 -0
  95. package/src/Diviner/SchemaListApiDiviner/SchemaListApiDivinerConfig.ts +13 -0
  96. package/src/Diviner/SchemaListApiDiviner/index.ts +3 -0
  97. package/src/Diviner/SchemaStatsApiDiviner/SchemaStatsApiDiviner.ts +1 -1
  98. package/src/Diviner/SchemaStatsApiDiviner/index.ts +1 -0
  99. package/src/Diviner/index.ts +2 -0
@@ -0,0 +1,19 @@
1
+ import { XyoDiviner } from '@xyo-network/diviner';
2
+ import { XyoModuleParams } from '@xyo-network/module';
3
+ import { XyoArchivistApi } from '../../Api';
4
+ import { XyoArchiveListApiDivinerConfig } from './ArchiveListApiDivinerConfig';
5
+ import { ArchiveList } from './Payload';
6
+ export declare type XyoArchiveListApiDivinerParams = XyoModuleParams<XyoArchiveListApiDivinerConfig> & {
7
+ api: XyoArchivistApi;
8
+ };
9
+ export declare class ArchiveListApiDiviner extends XyoDiviner<XyoArchiveListApiDivinerConfig> {
10
+ static configSchema: "network.xyo.diviner.archive.list.api.config";
11
+ static targetSchema: "network.xyo.archive";
12
+ protected readonly api: XyoArchivistApi;
13
+ protected constructor(params: XyoArchiveListApiDivinerParams);
14
+ static create(params: XyoArchiveListApiDivinerParams): Promise<ArchiveListApiDiviner>;
15
+ divine(): Promise<ArchiveList[]>;
16
+ queries(): string[];
17
+ protected start(): Promise<this>;
18
+ }
19
+ //# sourceMappingURL=ArchiveListApiDiviner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArchiveListApiDiviner.d.ts","sourceRoot":"","sources":["../../../../src/Diviner/ArchiveListApiDiviner/ArchiveListApiDiviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA+B,MAAM,sBAAsB,CAAA;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAErD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,EAAE,8BAA8B,EAA0D,MAAM,+BAA+B,CAAA;AACtI,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAEvC,oBAAY,8BAA8B,GAAG,eAAe,CAAC,8BAA8B,CAAC,GAAG;IAAE,GAAG,EAAE,eAAe,CAAA;CAAE,CAAA;AAEvH,qBAAa,qBAAsB,SAAQ,UAAU,CAAC,8BAA8B,CAAC;IACnF,OAAgB,YAAY,gDAAuC;IACnE,OAAgB,YAAY,wBAAmB;IAE/C,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,eAAe,CAAA;IAEvC,SAAS,aAAa,MAAM,EAAE,8BAA8B;WAKtC,MAAM,CAAC,MAAM,EAAE,8BAA8B,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAIvF,MAAM,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAYpC,OAAO;cAIS,KAAK;CAI/B"}
@@ -0,0 +1,31 @@
1
+ import { XyoDiviner, XyoDivinerDivineQuerySchema } from '@xyo-network/diviner';
2
+ import { XyoArchiveListApiDivinerConfigSchema, XyoArchiveSchema } from './ArchiveListApiDivinerConfig';
3
+ export class ArchiveListApiDiviner extends XyoDiviner {
4
+ static configSchema = XyoArchiveListApiDivinerConfigSchema;
5
+ static targetSchema = XyoArchiveSchema;
6
+ api;
7
+ constructor(params) {
8
+ super(params);
9
+ this.api = params.api;
10
+ }
11
+ static async create(params) {
12
+ return (await super.create(params));
13
+ }
14
+ async divine() {
15
+ const apiResult = (await this.api.archives.get()) ?? [];
16
+ return (apiResult.map((archive) => {
17
+ return {
18
+ archive,
19
+ schema: XyoArchiveSchema,
20
+ };
21
+ }) ?? []);
22
+ }
23
+ queries() {
24
+ return [XyoDivinerDivineQuerySchema, ...super.queries()];
25
+ }
26
+ async start() {
27
+ await super.start();
28
+ return this;
29
+ }
30
+ }
31
+ //# sourceMappingURL=ArchiveListApiDiviner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArchiveListApiDiviner.js","sourceRoot":"","sources":["../../../../src/Diviner/ArchiveListApiDiviner/ArchiveListApiDiviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAA;AAI9E,OAAO,EAAkC,oCAAoC,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAKtI,MAAM,OAAO,qBAAsB,SAAQ,UAA0C;IACnF,MAAM,CAAU,YAAY,GAAG,oCAAoC,CAAA;IACnE,MAAM,CAAU,YAAY,GAAG,gBAAgB,CAAA;IAE5B,GAAG,CAAiB;IAEvC,YAAsB,MAAsC;QAC1D,KAAK,CAAC,MAAM,CAAC,CAAA;QACb,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAA;IACvB,CAAC;IAED,MAAM,CAAU,KAAK,CAAC,MAAM,CAAC,MAAsC;QACjE,OAAO,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAA0B,CAAA;IAC9D,CAAC;IAEM,KAAK,CAAC,MAAM;QACjB,MAAM,SAAS,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAA;QACvD,OAAO,CACL,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YACxB,OAAO;gBACL,OAAO;gBACP,MAAM,EAAE,gBAAgB;aACzB,CAAA;QACH,CAAC,CAAC,IAAI,EAAE,CACT,CAAA;IACH,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,OAAO,IAAI,CAAA;IACb,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { XyoDivinerConfig } from '@xyo-network/diviner';
2
+ import { XyoPayload } from '@xyo-network/payload';
3
+ export declare type XyoArchiveListApiDivinerConfigSchema = 'network.xyo.diviner.archive.list.api.config';
4
+ export declare const XyoArchiveListApiDivinerConfigSchema: XyoArchiveListApiDivinerConfigSchema;
5
+ export declare type XyoArchiveSchema = 'network.xyo.archive';
6
+ export declare const XyoArchiveSchema: XyoArchiveSchema;
7
+ export declare type XyoArchiveListApiDivinerConfig<T extends XyoPayload = XyoPayload> = XyoDivinerConfig<XyoPayload, T & {
8
+ schema: XyoArchiveListApiDivinerConfigSchema;
9
+ }>;
10
+ //# sourceMappingURL=ArchiveListApiDivinerConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArchiveListApiDivinerConfig.d.ts","sourceRoot":"","sources":["../../../../src/Diviner/ArchiveListApiDiviner/ArchiveListApiDivinerConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,oBAAY,oCAAoC,GAAG,6CAA6C,CAAA;AAChG,eAAO,MAAM,oCAAoC,EAAE,oCAAoF,CAAA;AAEvI,oBAAY,gBAAgB,GAAG,qBAAqB,CAAA;AACpD,eAAO,MAAM,gBAAgB,EAAE,gBAAwC,CAAA;AAEvE,oBAAY,8BAA8B,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,IAAI,gBAAgB,CAC9F,UAAU,EACV,CAAC,GAAG;IACF,MAAM,EAAE,oCAAoC,CAAA;CAC7C,CACF,CAAA"}
@@ -0,0 +1,3 @@
1
+ export const XyoArchiveListApiDivinerConfigSchema = 'network.xyo.diviner.archive.list.api.config';
2
+ export const XyoArchiveSchema = 'network.xyo.archive';
3
+ //# sourceMappingURL=ArchiveListApiDivinerConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArchiveListApiDivinerConfig.js","sourceRoot":"","sources":["../../../../src/Diviner/ArchiveListApiDiviner/ArchiveListApiDivinerConfig.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,MAAM,oCAAoC,GAAyC,6CAA6C,CAAA;AAGvI,MAAM,CAAC,MAAM,gBAAgB,GAAqB,qBAAqB,CAAA"}
@@ -0,0 +1,7 @@
1
+ import { XyoPayload } from '@xyo-network/payload';
2
+ import { XyoArchive } from '../../models';
3
+ import { XyoArchiveSchema } from './ArchiveListApiDivinerConfig';
4
+ export declare type ArchiveList = XyoPayload<{
5
+ archive: XyoArchive;
6
+ }, XyoArchiveSchema>;
7
+ //# sourceMappingURL=Payload.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Payload.d.ts","sourceRoot":"","sources":["../../../../src/Diviner/ArchiveListApiDiviner/Payload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAEhE,oBAAY,WAAW,GAAG,UAAU,CAClC;IACE,OAAO,EAAE,UAAU,CAAA;CACpB,EACD,gBAAgB,CACjB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Payload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Payload.js","sourceRoot":"","sources":["../../../../src/Diviner/ArchiveListApiDiviner/Payload.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ export * from './ArchiveListApiDiviner';
2
+ export * from './ArchiveListApiDivinerConfig';
3
+ export * from './Payload';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Diviner/ArchiveListApiDiviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,WAAW,CAAA"}
@@ -0,0 +1,4 @@
1
+ export * from './ArchiveListApiDiviner';
2
+ export * from './ArchiveListApiDivinerConfig';
3
+ export * from './Payload';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Diviner/ArchiveListApiDiviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,WAAW,CAAA"}
@@ -0,0 +1,6 @@
1
+ import { XyoPayload } from '@xyo-network/payload';
2
+ import { XyoSchemaSchema } from '@xyo-network/schema-payload-plugin';
3
+ export declare type SchemaList = XyoPayload<{
4
+ name: string;
5
+ }, XyoSchemaSchema>;
6
+ //# sourceMappingURL=Payload.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Payload.d.ts","sourceRoot":"","sources":["../../../../src/Diviner/SchemaListApiDiviner/Payload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AAEpE,oBAAY,UAAU,GAAG,UAAU,CACjC;IACE,IAAI,EAAE,MAAM,CAAA;CACb,EACD,eAAe,CAChB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Payload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Payload.js","sourceRoot":"","sources":["../../../../src/Diviner/SchemaListApiDiviner/Payload.ts"],"names":[],"mappings":""}
@@ -0,0 +1,20 @@
1
+ import { XyoDiviner } from '@xyo-network/diviner';
2
+ import { XyoModuleParams } from '@xyo-network/module';
3
+ import { XyoArchivistApi } from '../../Api';
4
+ import { SchemaList } from './Payload';
5
+ import { XyoSchemaListApiDivinerConfig } from './SchemaListApiDivinerConfig';
6
+ export declare type XyoSchemaListApiDivinerParams = XyoModuleParams<XyoSchemaListApiDivinerConfig> & {
7
+ api: XyoArchivistApi;
8
+ };
9
+ export declare class SchemaListApiDiviner extends XyoDiviner<XyoSchemaListApiDivinerConfig> {
10
+ static configSchema: "network.xyo.diviner.schema.list.api.config";
11
+ static targetSchema: "network.xyo.schema";
12
+ protected readonly api: XyoArchivistApi;
13
+ protected constructor(params: XyoSchemaListApiDivinerParams);
14
+ get archive(): string;
15
+ static create(params: XyoSchemaListApiDivinerParams): Promise<SchemaListApiDiviner>;
16
+ divine(): Promise<SchemaList[]>;
17
+ queries(): string[];
18
+ protected start(): Promise<this>;
19
+ }
20
+ //# sourceMappingURL=SchemaListApiDiviner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SchemaListApiDiviner.d.ts","sourceRoot":"","sources":["../../../../src/Diviner/SchemaListApiDiviner/SchemaListApiDiviner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAA+B,MAAM,sBAAsB,CAAA;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAGrD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AACtC,OAAO,EAAE,6BAA6B,EAAuC,MAAM,8BAA8B,CAAA;AAEjH,oBAAY,6BAA6B,GAAG,eAAe,CAAC,6BAA6B,CAAC,GAAG;IAAE,GAAG,EAAE,eAAe,CAAA;CAAE,CAAA;AAErH,qBAAa,oBAAqB,SAAQ,UAAU,CAAC,6BAA6B,CAAC;IACjF,OAAgB,YAAY,+CAAsC;IAClE,OAAgB,YAAY,uBAAkB;IAE9C,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,eAAe,CAAA;IAEvC,SAAS,aAAa,MAAM,EAAE,6BAA6B;IAK3D,IAAI,OAAO,WAEV;WAEqB,MAAM,CAAC,MAAM,EAAE,6BAA6B,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAIrF,MAAM,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAYnC,OAAO;cAIS,KAAK;CAI/B"}
@@ -0,0 +1,36 @@
1
+ import { assertEx } from '@xylabs/sdk-js';
2
+ import { XyoDiviner, XyoDivinerDivineQuerySchema } from '@xyo-network/diviner';
3
+ import { XyoSchemaSchema } from '@xyo-network/schema-payload-plugin';
4
+ import { XyoSchemaListApiDivinerConfigSchema } from './SchemaListApiDivinerConfig';
5
+ export class SchemaListApiDiviner extends XyoDiviner {
6
+ static configSchema = XyoSchemaListApiDivinerConfigSchema;
7
+ static targetSchema = XyoSchemaSchema;
8
+ api;
9
+ constructor(params) {
10
+ super(params);
11
+ this.api = params.api;
12
+ }
13
+ get archive() {
14
+ return assertEx(this.config?.archive, `SchemaListApiDiviner config.archive required [${JSON.stringify(this.config)}]`);
15
+ }
16
+ static async create(params) {
17
+ return (await super.create(params));
18
+ }
19
+ async divine() {
20
+ const apiResult = (await this.api.archive(this.archive)?.payload.schema.get()) ?? [];
21
+ return (apiResult.map((schema) => {
22
+ return {
23
+ name: schema,
24
+ schema: XyoSchemaSchema,
25
+ };
26
+ }) ?? []);
27
+ }
28
+ queries() {
29
+ return [XyoDivinerDivineQuerySchema, ...super.queries()];
30
+ }
31
+ async start() {
32
+ await super.start();
33
+ return this;
34
+ }
35
+ }
36
+ //# sourceMappingURL=SchemaListApiDiviner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SchemaListApiDiviner.js","sourceRoot":"","sources":["../../../../src/Diviner/SchemaListApiDiviner/SchemaListApiDiviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAA;AAE9E,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AAIpE,OAAO,EAAiC,mCAAmC,EAAE,MAAM,8BAA8B,CAAA;AAIjH,MAAM,OAAO,oBAAqB,SAAQ,UAAyC;IACjF,MAAM,CAAU,YAAY,GAAG,mCAAmC,CAAA;IAClE,MAAM,CAAU,YAAY,GAAG,eAAe,CAAA;IAE3B,GAAG,CAAiB;IAEvC,YAAsB,MAAqC;QACzD,KAAK,CAAC,MAAM,CAAC,CAAA;QACb,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAA;IACvB,CAAC;IAED,IAAI,OAAO;QACT,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,iDAAiD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IACxH,CAAC;IAED,MAAM,CAAU,KAAK,CAAC,MAAM,CAAC,MAAqC;QAChE,OAAO,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAyB,CAAA;IAC7D,CAAC;IAEM,KAAK,CAAC,MAAM;QACjB,MAAM,SAAS,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAA;QACpF,OAAO,CACL,SAAS,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACvB,OAAO;gBACL,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,eAAe;aACxB,CAAA;QACH,CAAC,CAAC,IAAI,EAAE,CACT,CAAA;IACH,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,OAAO,IAAI,CAAA;IACb,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { XyoDivinerConfig } from '@xyo-network/diviner';
2
+ import { XyoPayload } from '@xyo-network/payload';
3
+ export declare type XyoSchemaListApiDivinerConfigSchema = 'network.xyo.diviner.schema.list.api.config';
4
+ export declare const XyoSchemaListApiDivinerConfigSchema: XyoSchemaListApiDivinerConfigSchema;
5
+ export declare type XyoSchemaListApiDivinerConfig<T extends XyoPayload = XyoPayload> = XyoDivinerConfig<XyoPayload, T & {
6
+ archive: string;
7
+ schema: XyoSchemaListApiDivinerConfigSchema;
8
+ }>;
9
+ //# sourceMappingURL=SchemaListApiDivinerConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SchemaListApiDivinerConfig.d.ts","sourceRoot":"","sources":["../../../../src/Diviner/SchemaListApiDiviner/SchemaListApiDivinerConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,oBAAY,mCAAmC,GAAG,4CAA4C,CAAA;AAC9F,eAAO,MAAM,mCAAmC,EAAE,mCAAkF,CAAA;AAEpI,oBAAY,6BAA6B,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,IAAI,gBAAgB,CAC7F,UAAU,EACV,CAAC,GAAG;IACF,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,mCAAmC,CAAA;CAC5C,CACF,CAAA"}
@@ -0,0 +1,2 @@
1
+ export const XyoSchemaListApiDivinerConfigSchema = 'network.xyo.diviner.schema.list.api.config';
2
+ //# sourceMappingURL=SchemaListApiDivinerConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SchemaListApiDivinerConfig.js","sourceRoot":"","sources":["../../../../src/Diviner/SchemaListApiDiviner/SchemaListApiDivinerConfig.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,MAAM,mCAAmC,GAAwC,4CAA4C,CAAA"}
@@ -0,0 +1,4 @@
1
+ export * from './Payload';
2
+ export * from './SchemaListApiDiviner';
3
+ export * from './SchemaListApiDivinerConfig';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Diviner/SchemaListApiDiviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,wBAAwB,CAAA;AACtC,cAAc,8BAA8B,CAAA"}
@@ -0,0 +1,4 @@
1
+ export * from './Payload';
2
+ export * from './SchemaListApiDiviner';
3
+ export * from './SchemaListApiDivinerConfig';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Diviner/SchemaListApiDiviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,wBAAwB,CAAA;AACtC,cAAc,8BAA8B,CAAA"}
@@ -11,7 +11,7 @@ export class SchemaStatsApiDiviner extends XyoDiviner {
11
11
  this.api = params.api;
12
12
  }
13
13
  get archive() {
14
- return assertEx(this.config?.archive, `config required [${this.config}]`);
14
+ return assertEx(this.config?.archive, `SchemaStatsApiDiviner config.archive required [${JSON.stringify(this.config)}]`);
15
15
  }
16
16
  static async create(params) {
17
17
  return (await super.create(params));
@@ -1 +1 @@
1
- {"version":3,"file":"SchemaStatsApiDiviner.js","sourceRoot":"","sources":["../../../../src/Diviner/SchemaStatsApiDiviner/SchemaStatsApiDiviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAA;AAI9E,OAAO,EAAe,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAC1D,OAAO,EAAkC,oCAAoC,EAAE,MAAM,+BAA+B,CAAA;AAIpH,MAAM,OAAO,qBAAsB,SAAQ,UAA0C;IACnF,MAAM,CAAU,YAAY,GAAG,oCAAoC,CAAA;IACnE,MAAM,CAAU,YAAY,GAAG,iBAAiB,CAAA;IAE7B,GAAG,CAAiB;IAEvC,YAAsB,MAAsC;QAC1D,KAAK,CAAC,MAAM,CAAC,CAAA;QACb,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAA;IACvB,CAAC;IAED,IAAI,OAAO;QACT,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,oBAAoB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAA;IAC3E,CAAC;IAED,MAAM,CAAU,KAAK,CAAC,MAAM,CAAC,MAAsC;QACjE,OAAO,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAA0B,CAAA;IAC9D,CAAC;IAEM,KAAK,CAAC,MAAM;QACjB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAA;QAC7E,MAAM,MAAM,GAAkB;YAC5B;gBACE,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,EAAE;gBAC3B,MAAM,EAAE,iBAAiB;aAC1B;SACF,CAAA;QACD,OAAO,MAAM,CAAA;IACf,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,OAAO,IAAI,CAAA;IACb,CAAC"}
1
+ {"version":3,"file":"SchemaStatsApiDiviner.js","sourceRoot":"","sources":["../../../../src/Diviner/SchemaStatsApiDiviner/SchemaStatsApiDiviner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAA;AAI9E,OAAO,EAAe,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAC1D,OAAO,EAAkC,oCAAoC,EAAE,MAAM,+BAA+B,CAAA;AAIpH,MAAM,OAAO,qBAAsB,SAAQ,UAA0C;IACnF,MAAM,CAAU,YAAY,GAAG,oCAAoC,CAAA;IACnE,MAAM,CAAU,YAAY,GAAG,iBAAiB,CAAA;IAE7B,GAAG,CAAiB;IAEvC,YAAsB,MAAsC;QAC1D,KAAK,CAAC,MAAM,CAAC,CAAA;QACb,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAA;IACvB,CAAC;IAED,IAAI,OAAO;QACT,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,kDAAkD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IACzH,CAAC;IAED,MAAM,CAAU,KAAK,CAAC,MAAM,CAAC,MAAsC;QACjE,OAAO,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAA0B,CAAA;IAC9D,CAAC;IAEM,KAAK,CAAC,MAAM;QACjB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAA;QAC7E,MAAM,MAAM,GAAkB;YAC5B;gBACE,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,EAAE;gBAC3B,MAAM,EAAE,iBAAiB;aAC1B;SACF,CAAA;QACD,OAAO,MAAM,CAAA;IACf,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,OAAO,IAAI,CAAA;IACb,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export * from './Payload';
2
2
  export * from './SchemaStatsApiDiviner';
3
+ export * from './SchemaStatsApiDivinerConfig';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Diviner/SchemaStatsApiDiviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,yBAAyB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Diviner/SchemaStatsApiDiviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,yBAAyB,CAAA;AACvC,cAAc,+BAA+B,CAAA"}
@@ -1,3 +1,4 @@
1
1
  export * from './Payload';
2
2
  export * from './SchemaStatsApiDiviner';
3
+ export * from './SchemaStatsApiDivinerConfig';
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Diviner/SchemaStatsApiDiviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,yBAAyB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Diviner/SchemaStatsApiDiviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,yBAAyB,CAAA;AACvC,cAAc,+BAA+B,CAAA"}
@@ -1,4 +1,6 @@
1
1
  export * from './AddressHistoryDiviner';
2
2
  export * from './LocationDiviner';
3
+ export * from './SchemaListApiDiviner';
3
4
  export * from './SchemaStatsApiDiviner';
5
+ export * from './XyoRemoteDivinerConfig';
4
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Diviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,mBAAmB,CAAA;AACjC,cAAc,yBAAyB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Diviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,mBAAmB,CAAA;AACjC,cAAc,wBAAwB,CAAA;AACtC,cAAc,yBAAyB,CAAA;AACvC,cAAc,0BAA0B,CAAA"}
@@ -1,4 +1,6 @@
1
1
  export * from './AddressHistoryDiviner';
2
2
  export * from './LocationDiviner';
3
+ export * from './SchemaListApiDiviner';
3
4
  export * from './SchemaStatsApiDiviner';
5
+ export * from './XyoRemoteDivinerConfig';
4
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Diviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,mBAAmB,CAAA;AACjC,cAAc,yBAAyB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Diviner/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,mBAAmB,CAAA;AACjC,cAAc,wBAAwB,CAAA;AACtC,cAAc,yBAAyB,CAAA;AACvC,cAAc,0BAA0B,CAAA"}
package/package.json CHANGED
@@ -12,14 +12,14 @@
12
12
  "@xylabs/assert": "^2.6.9",
13
13
  "@xylabs/delay": "^2.6.9",
14
14
  "@xylabs/sdk-js": "^2.6.9",
15
- "@xyo-network/account": "^2.38.17",
16
- "@xyo-network/archivist": "^2.38.17",
17
- "@xyo-network/boundwitness": "^2.38.17",
18
- "@xyo-network/core": "^2.38.17",
19
- "@xyo-network/diviner": "^2.38.17",
20
- "@xyo-network/module": "^2.38.17",
21
- "@xyo-network/payload": "^2.38.17",
22
- "@xyo-network/schema-payload-plugin": "^2.38.17",
15
+ "@xyo-network/account": "^2.38.19",
16
+ "@xyo-network/archivist": "^2.38.19",
17
+ "@xyo-network/boundwitness": "^2.38.19",
18
+ "@xyo-network/core": "^2.38.19",
19
+ "@xyo-network/diviner": "^2.38.19",
20
+ "@xyo-network/module": "^2.38.19",
21
+ "@xyo-network/payload": "^2.38.19",
22
+ "@xyo-network/schema-payload-plugin": "^2.38.19",
23
23
  "tslib": "^2.4.0"
24
24
  },
25
25
  "peerDependencies": {
@@ -66,5 +66,5 @@
66
66
  },
67
67
  "sideEffects": false,
68
68
  "types": "dist/esm/index.d.ts",
69
- "version": "2.38.17"
69
+ "version": "2.38.19"
70
70
  }
@@ -0,0 +1,24 @@
1
+ import { XyoArchivistApi } from '../../Api'
2
+ import { XyoApiConfig } from '../../models'
3
+ import { ArchiveListApiDiviner } from './ArchiveListApiDiviner'
4
+ import { XyoArchiveListApiDivinerConfigSchema, XyoArchiveSchema } from './ArchiveListApiDivinerConfig'
5
+
6
+ const configData: XyoApiConfig = {
7
+ apiDomain: process.env.API_DOMAIN || 'https://beta.api.archivist.xyo.network',
8
+ }
9
+
10
+ test('ArchiveListApiDiviner', async () => {
11
+ const api = new XyoArchivistApi(configData)
12
+ const diviner = await ArchiveListApiDiviner.create({
13
+ api,
14
+ config: { schema: XyoArchiveListApiDivinerConfigSchema },
15
+ logger: console,
16
+ })
17
+
18
+ expect(diviner).toBeDefined()
19
+
20
+ const result = await diviner.divine()
21
+
22
+ expect(result.length).toBeGreaterThan(0)
23
+ expect(result[0].schema).toBe(XyoArchiveSchema)
24
+ })
@@ -0,0 +1,45 @@
1
+ import { XyoDiviner, XyoDivinerDivineQuerySchema } from '@xyo-network/diviner'
2
+ import { XyoModuleParams } from '@xyo-network/module'
3
+
4
+ import { XyoArchivistApi } from '../../Api'
5
+ import { XyoArchiveListApiDivinerConfig, XyoArchiveListApiDivinerConfigSchema, XyoArchiveSchema } from './ArchiveListApiDivinerConfig'
6
+ import { ArchiveList } from './Payload'
7
+
8
+ export type XyoArchiveListApiDivinerParams = XyoModuleParams<XyoArchiveListApiDivinerConfig> & { api: XyoArchivistApi }
9
+
10
+ export class ArchiveListApiDiviner extends XyoDiviner<XyoArchiveListApiDivinerConfig> {
11
+ static override configSchema = XyoArchiveListApiDivinerConfigSchema
12
+ static override targetSchema = XyoArchiveSchema
13
+
14
+ protected readonly api: XyoArchivistApi
15
+
16
+ protected constructor(params: XyoArchiveListApiDivinerParams) {
17
+ super(params)
18
+ this.api = params.api
19
+ }
20
+
21
+ static override async create(params: XyoArchiveListApiDivinerParams): Promise<ArchiveListApiDiviner> {
22
+ return (await super.create(params)) as ArchiveListApiDiviner
23
+ }
24
+
25
+ public async divine(): Promise<ArchiveList[]> {
26
+ const apiResult = (await this.api.archives.get()) ?? []
27
+ return (
28
+ apiResult.map((archive) => {
29
+ return {
30
+ archive,
31
+ schema: XyoArchiveSchema,
32
+ }
33
+ }) ?? []
34
+ )
35
+ }
36
+
37
+ override queries() {
38
+ return [XyoDivinerDivineQuerySchema, ...super.queries()]
39
+ }
40
+
41
+ protected override async start() {
42
+ await super.start()
43
+ return this
44
+ }
45
+ }
@@ -0,0 +1,15 @@
1
+ import { XyoDivinerConfig } from '@xyo-network/diviner'
2
+ import { XyoPayload } from '@xyo-network/payload'
3
+
4
+ export type XyoArchiveListApiDivinerConfigSchema = 'network.xyo.diviner.archive.list.api.config'
5
+ export const XyoArchiveListApiDivinerConfigSchema: XyoArchiveListApiDivinerConfigSchema = 'network.xyo.diviner.archive.list.api.config'
6
+
7
+ export type XyoArchiveSchema = 'network.xyo.archive'
8
+ export const XyoArchiveSchema: XyoArchiveSchema = 'network.xyo.archive'
9
+
10
+ export type XyoArchiveListApiDivinerConfig<T extends XyoPayload = XyoPayload> = XyoDivinerConfig<
11
+ XyoPayload,
12
+ T & {
13
+ schema: XyoArchiveListApiDivinerConfigSchema
14
+ }
15
+ >
@@ -0,0 +1,11 @@
1
+ import { XyoPayload } from '@xyo-network/payload'
2
+
3
+ import { XyoArchive } from '../../models'
4
+ import { XyoArchiveSchema } from './ArchiveListApiDivinerConfig'
5
+
6
+ export type ArchiveList = XyoPayload<
7
+ {
8
+ archive: XyoArchive
9
+ },
10
+ XyoArchiveSchema
11
+ >
@@ -0,0 +1,3 @@
1
+ export * from './ArchiveListApiDiviner'
2
+ export * from './ArchiveListApiDivinerConfig'
3
+ export * from './Payload'
@@ -0,0 +1,9 @@
1
+ import { XyoPayload } from '@xyo-network/payload'
2
+ import { XyoSchemaSchema } from '@xyo-network/schema-payload-plugin'
3
+
4
+ export type SchemaList = XyoPayload<
5
+ {
6
+ name: string
7
+ },
8
+ XyoSchemaSchema
9
+ >
@@ -0,0 +1,23 @@
1
+ import { XyoArchivistApi } from '../../Api'
2
+ import { XyoApiConfig } from '../../models'
3
+ import { SchemaListApiDiviner } from './SchemaListApiDiviner'
4
+ import { XyoSchemaListApiDivinerConfigSchema } from './SchemaListApiDivinerConfig'
5
+
6
+ const configData: XyoApiConfig = {
7
+ apiDomain: process.env.API_DOMAIN || 'https://beta.api.archivist.xyo.network',
8
+ }
9
+
10
+ test('SchemaListApiDiviner', async () => {
11
+ const api = new XyoArchivistApi(configData)
12
+ const diviner = await SchemaListApiDiviner.create({
13
+ api,
14
+ config: { archive: 'temp', schema: XyoSchemaListApiDivinerConfigSchema },
15
+ logger: console,
16
+ })
17
+
18
+ expect(diviner).toBeDefined()
19
+
20
+ const result = await diviner.divine()
21
+
22
+ expect(result.length).toBeGreaterThan(0)
23
+ })
@@ -0,0 +1,51 @@
1
+ import { assertEx } from '@xylabs/sdk-js'
2
+ import { XyoDiviner, XyoDivinerDivineQuerySchema } from '@xyo-network/diviner'
3
+ import { XyoModuleParams } from '@xyo-network/module'
4
+ import { XyoSchemaSchema } from '@xyo-network/schema-payload-plugin'
5
+
6
+ import { XyoArchivistApi } from '../../Api'
7
+ import { SchemaList } from './Payload'
8
+ import { XyoSchemaListApiDivinerConfig, XyoSchemaListApiDivinerConfigSchema } from './SchemaListApiDivinerConfig'
9
+
10
+ export type XyoSchemaListApiDivinerParams = XyoModuleParams<XyoSchemaListApiDivinerConfig> & { api: XyoArchivistApi }
11
+
12
+ export class SchemaListApiDiviner extends XyoDiviner<XyoSchemaListApiDivinerConfig> {
13
+ static override configSchema = XyoSchemaListApiDivinerConfigSchema
14
+ static override targetSchema = XyoSchemaSchema
15
+
16
+ protected readonly api: XyoArchivistApi
17
+
18
+ protected constructor(params: XyoSchemaListApiDivinerParams) {
19
+ super(params)
20
+ this.api = params.api
21
+ }
22
+
23
+ get archive() {
24
+ return assertEx(this.config?.archive, `SchemaListApiDiviner config.archive required [${JSON.stringify(this.config)}]`)
25
+ }
26
+
27
+ static override async create(params: XyoSchemaListApiDivinerParams): Promise<SchemaListApiDiviner> {
28
+ return (await super.create(params)) as SchemaListApiDiviner
29
+ }
30
+
31
+ public async divine(): Promise<SchemaList[]> {
32
+ const apiResult = (await this.api.archive(this.archive)?.payload.schema.get()) ?? []
33
+ return (
34
+ apiResult.map((schema) => {
35
+ return {
36
+ name: schema,
37
+ schema: XyoSchemaSchema,
38
+ }
39
+ }) ?? []
40
+ )
41
+ }
42
+
43
+ override queries() {
44
+ return [XyoDivinerDivineQuerySchema, ...super.queries()]
45
+ }
46
+
47
+ protected override async start() {
48
+ await super.start()
49
+ return this
50
+ }
51
+ }
@@ -0,0 +1,13 @@
1
+ import { XyoDivinerConfig } from '@xyo-network/diviner'
2
+ import { XyoPayload } from '@xyo-network/payload'
3
+
4
+ export type XyoSchemaListApiDivinerConfigSchema = 'network.xyo.diviner.schema.list.api.config'
5
+ export const XyoSchemaListApiDivinerConfigSchema: XyoSchemaListApiDivinerConfigSchema = 'network.xyo.diviner.schema.list.api.config'
6
+
7
+ export type XyoSchemaListApiDivinerConfig<T extends XyoPayload = XyoPayload> = XyoDivinerConfig<
8
+ XyoPayload,
9
+ T & {
10
+ archive: string
11
+ schema: XyoSchemaListApiDivinerConfigSchema
12
+ }
13
+ >
@@ -0,0 +1,3 @@
1
+ export * from './Payload'
2
+ export * from './SchemaListApiDiviner'
3
+ export * from './SchemaListApiDivinerConfig'
@@ -20,7 +20,7 @@ export class SchemaStatsApiDiviner extends XyoDiviner<XyoSchemaStatsApiDivinerCo
20
20
  }
21
21
 
22
22
  get archive() {
23
- return assertEx(this.config?.archive, `config required [${this.config}]`)
23
+ return assertEx(this.config?.archive, `SchemaStatsApiDiviner config.archive required [${JSON.stringify(this.config)}]`)
24
24
  }
25
25
 
26
26
  static override async create(params: XyoSchemaStatsApiDivinerParams): Promise<SchemaStatsApiDiviner> {
@@ -1,2 +1,3 @@
1
1
  export * from './Payload'
2
2
  export * from './SchemaStatsApiDiviner'
3
+ export * from './SchemaStatsApiDivinerConfig'
@@ -1,3 +1,5 @@
1
1
  export * from './AddressHistoryDiviner'
2
2
  export * from './LocationDiviner'
3
+ export * from './SchemaListApiDiviner'
3
4
  export * from './SchemaStatsApiDiviner'
5
+ export * from './XyoRemoteDivinerConfig'