@xyo-network/diviner-payload-stats 6.0.4 → 7.0.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.
package/README.md CHANGED
@@ -38,10 +38,12 @@ bun add {{name}}
38
38
 
39
39
  See the [LICENSE](LICENSE) file for license rights and limitations (LGPL-3.0-only).
40
40
 
41
+ ## Credits
41
42
 
43
+ [Made with 🔥 and ❄️ by XYO Foundation](https://xyo.network)
42
44
 
43
- [logo]: https://cdn.xy.company/img/brand/XYO_full_colored.png
44
45
  [npm-badge]: https://img.shields.io/npm/v/@xyo-network/diviner-payload-stats.svg
45
46
  [npm-link]: https://www.npmjs.com/package/@xyo-network/diviner-payload-stats
46
47
  [license-badge]: https://img.shields.io/npm/l/@xyo-network/diviner-payload-stats.svg
47
48
  [license-link]: https://github.com/xylabs/sdk-js/blob/main/LICENSE
49
+ [logo]: https://cdn.xy.company/img/brand/XYO_full_colored.png
@@ -1,9 +1,19 @@
1
+ import { zodAsFactory, zodIsFactory, zodToFactory } from '@xylabs/sdk-js';
1
2
  import type { DivinerConfig } from '@xyo-network/diviner-model';
3
+ import { DivinerConfigZod } from '@xyo-network/diviner-model';
2
4
  import { type Payload } from '@xyo-network/sdk-protocol-js';
5
+ import * as z from 'zod/mini';
3
6
  export declare const PayloadStatsDivinerConfigSchema: string & {
4
7
  readonly __schema: true;
5
8
  };
6
9
  export type PayloadStatsDivinerConfigSchema = typeof PayloadStatsDivinerConfigSchema;
10
+ export declare const PayloadStatsDivinerConfigZod: z.ZodMiniObject<Omit<(typeof DivinerConfigZod)['shape'], 'schema'> & {
11
+ schema: z.ZodMiniLiteral<PayloadStatsDivinerConfigSchema>;
12
+ }, z.core.$strip>;
13
+ export type PayloadStatsDivinerConfigBase = z.infer<typeof PayloadStatsDivinerConfigZod>;
14
+ export declare const isPayloadStatsDivinerConfig: ReturnType<typeof zodIsFactory<PayloadStatsDivinerConfigBase>>;
15
+ export declare const asPayloadStatsDivinerConfig: ReturnType<typeof zodAsFactory<PayloadStatsDivinerConfigBase>>;
16
+ export declare const toPayloadStatsDivinerConfig: ReturnType<typeof zodToFactory<PayloadStatsDivinerConfigBase>>;
7
17
  export type PayloadStatsDivinerConfig<T extends Payload = Payload> = DivinerConfig<T & {
8
18
  schema: PayloadStatsDivinerConfigSchema;
9
19
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../src/Config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,EAAY,KAAK,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAIrE,eAAO,MAAM,+BAA+B;;CAAwD,CAAA;AACpG,MAAM,MAAM,+BAA+B,GAAG,OAAO,+BAA+B,CAAA;AAEpF,MAAM,MAAM,yBAAyB,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,IAAI,aAAa,CAChF,CAAC,GAAG;IACF,MAAM,EAAE,+BAA+B,CAAA;CACxC,CACF,CAAA"}
1
+ {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../src/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EAAE,YAAY,EAAE,YAAY,EACzC,MAAM,gBAAgB,CAAA;AACvB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EAAY,KAAK,OAAO,EAAE,MAAM,8BAA8B,CAAA;AACrE,OAAO,KAAK,CAAC,MAAM,UAAU,CAAA;AAI7B,eAAO,MAAM,+BAA+B,EAAE,MAAM,GAAG;IACrD,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAA;CACgC,CAAA;AACzD,MAAM,MAAM,+BAA+B,GAAG,OAAO,+BAA+B,CAAA;AAEpF,eAAO,MAAM,4BAA4B,EAAE,CAAC,CAAC,aAAa,CACxD,IAAI,CAAC,CAAC,OAAO,gBAAgB,CAAC,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,GAAG;IACnD,MAAM,EAAE,CAAC,CAAC,cAAc,CAAC,+BAA+B,CAAC,CAAA;CAC1D,EACD,CAAC,CAAC,IAAI,CAAC,MAAM,CACuE,CAAA;AAEtF,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAA;AAExF,eAAO,MAAM,2BAA2B,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,6BAA6B,CAAC,CAA8C,CAAA;AACrJ,eAAO,MAAM,2BAA2B,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,6BAA6B,CAAC,CAA6E,CAAA;AACpL,eAAO,MAAM,2BAA2B,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,6BAA6B,CAAC,CAA6E,CAAA;AAEpL,MAAM,MAAM,yBAAyB,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,IAAI,aAAa,CAChF,CAAC,GAAG;IACF,MAAM,EAAE,+BAA+B,CAAA;CACxC,CACF,CAAA"}
@@ -1,8 +1,12 @@
1
- import type { Payload } from '@xyo-network/sdk-protocol-js';
1
+ import { zodAsFactory, zodIsFactory, zodToFactory } from '@xylabs/sdk-js';
2
+ import * as z from 'zod/mini';
2
3
  import { PayloadStatsDivinerSchema } from './Schema.ts';
3
- export type PayloadStatsPayload = Payload<{
4
- count: number;
5
- schema: PayloadStatsDivinerSchema;
6
- }>;
7
- export declare const isPayloadStatsPayload: (x?: Payload | null) => x is PayloadStatsPayload;
4
+ export declare const PayloadStatsPayloadZod: z.ZodMiniObject<{
5
+ count: z.ZodMiniNumber<number>;
6
+ schema: z.ZodMiniLiteral<PayloadStatsDivinerSchema>;
7
+ }, z.core.$strip>;
8
+ export type PayloadStatsPayload = z.infer<typeof PayloadStatsPayloadZod>;
9
+ export declare const isPayloadStatsPayload: ReturnType<typeof zodIsFactory<PayloadStatsPayload>>;
10
+ export declare const asPayloadStatsPayload: ReturnType<typeof zodAsFactory<PayloadStatsPayload>>;
11
+ export declare const toPayloadStatsPayload: ReturnType<typeof zodToFactory<PayloadStatsPayload>>;
8
12
  //# sourceMappingURL=Payload.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Payload.d.ts","sourceRoot":"","sources":["../../src/Payload.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAE3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAA;AAEvD,MAAM,MAAM,mBAAmB,GAAG,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,yBAAyB,CAAA;CAAE,CAAC,CAAA;AAC/F,eAAO,MAAM,qBAAqB,GAAI,IAAI,OAAO,GAAG,IAAI,KAAG,CAAC,IAAI,mBAA8D,CAAA"}
1
+ {"version":3,"file":"Payload.d.ts","sourceRoot":"","sources":["../../src/Payload.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EAAE,YAAY,EAAE,YAAY,EACzC,MAAM,gBAAgB,CAAA;AAEvB,OAAO,KAAK,CAAC,MAAM,UAAU,CAAA;AAE7B,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAA;AAEvD,eAAO,MAAM,sBAAsB,EAAE,CAAC,CAAC,aAAa,CAAC;IACnD,KAAK,EAAE,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;IAC9B,MAAM,EAAE,CAAC,CAAC,cAAc,CAAC,yBAAyB,CAAC,CAAA;CACpD,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAkF,CAAA;AAElG,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAExE,eAAO,MAAM,qBAAqB,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,mBAAmB,CAAC,CAAwC,CAAA;AAC/H,eAAO,MAAM,qBAAqB,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,mBAAmB,CAAC,CAAiE,CAAA;AACxJ,eAAO,MAAM,qBAAqB,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,mBAAmB,CAAC,CAAiE,CAAA"}
@@ -1,10 +1,15 @@
1
- import { type Payload, type Query } from '@xyo-network/sdk-protocol-js';
1
+ import { zodAsFactory, zodIsFactory, zodToFactory } from '@xylabs/sdk-js';
2
+ import { QueryFieldsZod } from '@xyo-network/sdk-protocol-js';
3
+ import * as z from 'zod/mini';
2
4
  export declare const PayloadStatsQuerySchema: string & {
3
5
  readonly __schema: true;
4
6
  };
5
7
  export type PayloadStatsQuerySchema = typeof PayloadStatsQuerySchema;
6
- export type PayloadStatsQueryPayload = Query<{
7
- schema: PayloadStatsQuerySchema;
8
- }>;
9
- export declare const isPayloadStatsQueryPayload: (x?: Payload | null) => x is PayloadStatsQueryPayload;
8
+ export declare const PayloadStatsQueryPayloadZod: z.ZodMiniObject<{
9
+ schema: z.ZodMiniLiteral<PayloadStatsQuerySchema>;
10
+ } & (typeof QueryFieldsZod)['shape'], z.core.$strip>;
11
+ export type PayloadStatsQueryPayload = z.infer<typeof PayloadStatsQueryPayloadZod>;
12
+ export declare const isPayloadStatsQueryPayload: ReturnType<typeof zodIsFactory<PayloadStatsQueryPayload>>;
13
+ export declare const asPayloadStatsQueryPayload: ReturnType<typeof zodAsFactory<PayloadStatsQueryPayload>>;
14
+ export declare const toPayloadStatsQueryPayload: ReturnType<typeof zodToFactory<PayloadStatsQueryPayload>>;
10
15
  //# sourceMappingURL=Query.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Query.d.ts","sourceRoot":"","sources":["../../src/Query.ts"],"names":[],"mappings":"AAAA,OAAO,EACK,KAAK,OAAO,EAAE,KAAK,KAAK,EACnC,MAAM,8BAA8B,CAAA;AAIrC,eAAO,MAAM,uBAAuB;;CAAuD,CAAA;AAC3F,MAAM,MAAM,uBAAuB,GAAG,OAAO,uBAAuB,CAAA;AAEpE,MAAM,MAAM,wBAAwB,GAAG,KAAK,CAAC;IAAE,MAAM,EAAE,uBAAuB,CAAA;CAAE,CAAC,CAAA;AACjF,eAAO,MAAM,0BAA0B,GAAI,IAAI,OAAO,GAAG,IAAI,KAAG,CAAC,IAAI,wBAAiE,CAAA"}
1
+ {"version":3,"file":"Query.d.ts","sourceRoot":"","sources":["../../src/Query.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EAAE,YAAY,EAAE,YAAY,EACzC,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACyB,cAAc,EAC7C,MAAM,8BAA8B,CAAA;AACrC,OAAO,KAAK,CAAC,MAAM,UAAU,CAAA;AAI7B,eAAO,MAAM,uBAAuB,EAAE,MAAM,GAAG;IAC7C,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAA;CAC+B,CAAA;AACxD,MAAM,MAAM,uBAAuB,GAAG,OAAO,uBAAuB,CAAA;AAEpE,eAAO,MAAM,2BAA2B,EAAE,CAAC,CAAC,aAAa,CACrD;IAAE,MAAM,EAAE,CAAC,CAAC,cAAc,CAAC,uBAAuB,CAAC,CAAA;CAAE,GACrD,CAAC,OAAO,cAAc,CAAC,CAAC,OAAO,CAAC,EAClC,CAAC,CAAC,IAAI,CAAC,MAAM,CACuE,CAAA;AAEtF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAA;AAElF,eAAO,MAAM,0BAA0B,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,wBAAwB,CAAC,CAA6C,CAAA;AAC9I,eAAO,MAAM,0BAA0B,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,wBAAwB,CAAC,CAA2E,CAAA;AAC5K,eAAO,MAAM,0BAA0B,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,wBAAwB,CAAC,CAA2E,CAAA"}
@@ -1,4 +1,4 @@
1
- export declare const PayloadStatsDivinerSchema: "network.xyo.diviner.payload.stats" & {
1
+ export declare const PayloadStatsDivinerSchema: 'network.xyo.diviner.payload.stats' & {
2
2
  readonly __schema: true;
3
3
  };
4
4
  export type PayloadStatsDivinerSchema = typeof PayloadStatsDivinerSchema;
@@ -1 +1 @@
1
- {"version":3,"file":"Schema.d.ts","sourceRoot":"","sources":["../../src/Schema.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,yBAAyB;;CAAsD,CAAA;AAC5F,MAAM,MAAM,yBAAyB,GAAG,OAAO,yBAAyB,CAAA"}
1
+ {"version":3,"file":"Schema.d.ts","sourceRoot":"","sources":["../../src/Schema.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,yBAAyB,EAAE,mCAAmC,GAAG;IAC5E,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAA;CAC8B,CAAA;AACvD,MAAM,MAAM,yBAAyB,GAAG,OAAO,yBAAyB,CAAA"}
@@ -11,7 +11,14 @@ import {
11
11
  } from "@xyo-network/sdk-protocol-js";
12
12
 
13
13
  // src/Config.ts
14
+ import {
15
+ zodAsFactory,
16
+ zodIsFactory,
17
+ zodToFactory
18
+ } from "@xylabs/sdk-js";
19
+ import { DivinerConfigZod } from "@xyo-network/diviner-model";
14
20
  import { asSchema as asSchema2 } from "@xyo-network/sdk-protocol-js";
21
+ import * as z from "zod/mini";
15
22
 
16
23
  // src/Schema.ts
17
24
  import { asSchema } from "@xyo-network/sdk-protocol-js";
@@ -19,13 +26,28 @@ var PayloadStatsDivinerSchema = asSchema("network.xyo.diviner.payload.stats", tr
19
26
 
20
27
  // src/Config.ts
21
28
  var PayloadStatsDivinerConfigSchema = asSchema2(`${PayloadStatsDivinerSchema}.config`, true);
29
+ var PayloadStatsDivinerConfigZod = z.extend(DivinerConfigZod, { schema: z.literal(PayloadStatsDivinerConfigSchema) });
30
+ var isPayloadStatsDivinerConfig = zodIsFactory(PayloadStatsDivinerConfigZod);
31
+ var asPayloadStatsDivinerConfig = zodAsFactory(PayloadStatsDivinerConfigZod, "asPayloadStatsDivinerConfig");
32
+ var toPayloadStatsDivinerConfig = zodToFactory(PayloadStatsDivinerConfigZod, "toPayloadStatsDivinerConfig");
22
33
 
23
34
  // src/Query.ts
24
35
  import {
25
- asSchema as asSchema3
36
+ zodAsFactory as zodAsFactory2,
37
+ zodIsFactory as zodIsFactory2,
38
+ zodToFactory as zodToFactory2
39
+ } from "@xylabs/sdk-js";
40
+ import {
41
+ asSchema as asSchema3,
42
+ PayloadZodOfSchema,
43
+ QueryFieldsZod
26
44
  } from "@xyo-network/sdk-protocol-js";
45
+ import * as z2 from "zod/mini";
27
46
  var PayloadStatsQuerySchema = asSchema3(`${PayloadStatsDivinerSchema}.query`, true);
28
- var isPayloadStatsQueryPayload = (x) => x?.schema === PayloadStatsQuerySchema;
47
+ var PayloadStatsQueryPayloadZod = z2.extend(PayloadZodOfSchema(PayloadStatsQuerySchema), { ...QueryFieldsZod.shape });
48
+ var isPayloadStatsQueryPayload = zodIsFactory2(PayloadStatsQueryPayloadZod);
49
+ var asPayloadStatsQueryPayload = zodAsFactory2(PayloadStatsQueryPayloadZod, "asPayloadStatsQueryPayload");
50
+ var toPayloadStatsQueryPayload = zodToFactory2(PayloadStatsQueryPayloadZod, "toPayloadStatsQueryPayload");
29
51
 
30
52
  // src/MemoryPayloadStatsDiviner.ts
31
53
  var MemoryPayloadStatsDiviner = class extends PayloadStatsDiviner {
@@ -50,14 +72,34 @@ var MemoryPayloadStatsDiviner = class extends PayloadStatsDiviner {
50
72
  };
51
73
 
52
74
  // src/Payload.ts
53
- var isPayloadStatsPayload = (x) => x?.schema === PayloadStatsDivinerSchema;
75
+ import {
76
+ zodAsFactory as zodAsFactory3,
77
+ zodIsFactory as zodIsFactory3,
78
+ zodToFactory as zodToFactory3
79
+ } from "@xylabs/sdk-js";
80
+ import { PayloadZodOfSchema as PayloadZodOfSchema2 } from "@xyo-network/sdk-protocol-js";
81
+ import * as z3 from "zod/mini";
82
+ var PayloadStatsPayloadZod = z3.extend(PayloadZodOfSchema2(PayloadStatsDivinerSchema), { count: z3.number() });
83
+ var isPayloadStatsPayload = zodIsFactory3(PayloadStatsPayloadZod);
84
+ var asPayloadStatsPayload = zodAsFactory3(PayloadStatsPayloadZod, "asPayloadStatsPayload");
85
+ var toPayloadStatsPayload = zodToFactory3(PayloadStatsPayloadZod, "toPayloadStatsPayload");
54
86
  export {
55
87
  MemoryPayloadStatsDiviner,
56
88
  PayloadStatsDiviner,
57
89
  PayloadStatsDivinerConfigSchema,
90
+ PayloadStatsDivinerConfigZod,
58
91
  PayloadStatsDivinerSchema,
92
+ PayloadStatsPayloadZod,
93
+ PayloadStatsQueryPayloadZod,
59
94
  PayloadStatsQuerySchema,
95
+ asPayloadStatsDivinerConfig,
96
+ asPayloadStatsPayload,
97
+ asPayloadStatsQueryPayload,
98
+ isPayloadStatsDivinerConfig,
60
99
  isPayloadStatsPayload,
61
- isPayloadStatsQueryPayload
100
+ isPayloadStatsQueryPayload,
101
+ toPayloadStatsDivinerConfig,
102
+ toPayloadStatsPayload,
103
+ toPayloadStatsQueryPayload
62
104
  };
63
105
  //# sourceMappingURL=index.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/PayloadStatsDiviner.ts", "../../src/MemoryPayloadStatsDiviner.ts", "../../src/Config.ts", "../../src/Schema.ts", "../../src/Query.ts", "../../src/Payload.ts"],
4
- "sourcesContent": ["import { AbstractDiviner } from '@xyo-network/diviner-abstract'\nimport type { DivinerInstance, DivinerModuleEventData } from '@xyo-network/diviner-model'\nimport type { Payload } from '@xyo-network/sdk-protocol-js'\n\nimport type { PayloadStatsDivinerParams } from './Params.ts'\n\nexport abstract class PayloadStatsDiviner<\n TParams extends PayloadStatsDivinerParams = PayloadStatsDivinerParams,\n TIn extends Payload = Payload,\n TOut extends Payload = Payload,\n TEventData extends DivinerModuleEventData<DivinerInstance<TParams, TIn, TOut>, TIn, TOut> = DivinerModuleEventData<\n DivinerInstance<TParams, TIn, TOut>,\n TIn,\n TOut\n >,\n> extends AbstractDiviner<TParams, TIn, TOut, TEventData> {}\n", "import { assertEx } from '@xylabs/sdk-js'\nimport { isBoundWitness, PayloadBuilder } from '@xyo-network/sdk-protocol-js'\nimport {\n isStorageMeta, type Payload, type Schema, type XyoAddress,\n} from '@xyo-network/sdk-protocol-js'\n\nimport { PayloadStatsDivinerConfigSchema } from './Config.ts'\nimport type { PayloadStatsDivinerParams } from './Params.ts'\nimport type { PayloadStatsPayload } from './Payload.ts'\nimport { PayloadStatsDiviner } from './PayloadStatsDiviner.ts'\nimport type { PayloadStatsQueryPayload } from './Query.ts'\nimport { isPayloadStatsQueryPayload } from './Query.ts'\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport class MemoryPayloadStatsDiviner<TParams extends PayloadStatsDivinerParams = PayloadStatsDivinerParams> extends PayloadStatsDiviner<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, PayloadStatsDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = PayloadStatsDivinerConfigSchema\n\n protected async divineAddress(address: XyoAddress): Promise<number> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n return (await archivist.next({ limit: 20_000 }))\n .filter(x => isBoundWitness(x) && isStorageMeta(x))\n .filter(bw => bw.addresses.includes(address))\n .map(bw => bw.payload_hashes.length)\n .reduce((total, count) => total + count, 0)\n }\n\n protected async divineAllAddresses(): Promise<number> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await archivist.next({ limit: 20_000 })\n return all.length\n }\n\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const query = payloads?.find<PayloadStatsQueryPayload>(isPayloadStatsQueryPayload)\n if (!query) return []\n const addresses\n = query?.address\n ? Array.isArray(query?.address)\n ? query.address\n : [query.address]\n : undefined\n const counts = addresses ? await Promise.all(addresses.map(address => this.divineAddress(address))) : [await this.divineAllAddresses()]\n return counts.map(count => new PayloadBuilder<PayloadStatsPayload>({ schema: PayloadStatsDivinerSchema }).fields({ count }).build())\n }\n}\n", "import type { DivinerConfig } from '@xyo-network/diviner-model'\nimport { asSchema, type Payload } from '@xyo-network/sdk-protocol-js'\n\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport const PayloadStatsDivinerConfigSchema = asSchema(`${PayloadStatsDivinerSchema}.config`, true)\nexport type PayloadStatsDivinerConfigSchema = typeof PayloadStatsDivinerConfigSchema\n\nexport type PayloadStatsDivinerConfig<T extends Payload = Payload> = DivinerConfig<\n T & {\n schema: PayloadStatsDivinerConfigSchema\n }\n>\n", "import { asSchema } from '@xyo-network/sdk-protocol-js'\n\nexport const PayloadStatsDivinerSchema = asSchema('network.xyo.diviner.payload.stats', true)\nexport type PayloadStatsDivinerSchema = typeof PayloadStatsDivinerSchema\n", "import {\n asSchema, type Payload, type Query,\n} from '@xyo-network/sdk-protocol-js'\n\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport const PayloadStatsQuerySchema = asSchema(`${PayloadStatsDivinerSchema}.query`, true)\nexport type PayloadStatsQuerySchema = typeof PayloadStatsQuerySchema\n\nexport type PayloadStatsQueryPayload = Query<{ schema: PayloadStatsQuerySchema }>\nexport const isPayloadStatsQueryPayload = (x?: Payload | null): x is PayloadStatsQueryPayload => x?.schema === PayloadStatsQuerySchema\n", "import type { Payload } from '@xyo-network/sdk-protocol-js'\n\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport type PayloadStatsPayload = Payload<{ count: number; schema: PayloadStatsDivinerSchema }>\nexport const isPayloadStatsPayload = (x?: Payload | null): x is PayloadStatsPayload => x?.schema === PayloadStatsDivinerSchema\n"],
5
- "mappings": ";AAAA,SAAS,uBAAuB;AAMzB,IAAe,sBAAf,cASG,gBAAgD;AAAC;;;ACf3D,SAAS,gBAAgB;AACzB,SAAS,gBAAgB,sBAAsB;AAC/C;AAAA,EACE;AAAA,OACK;;;ACHP,SAAS,YAAAA,iBAA8B;;;ACDvC,SAAS,gBAAgB;AAElB,IAAM,4BAA4B,SAAS,qCAAqC,IAAI;;;ADGpF,IAAM,kCAAkCC,UAAS,GAAG,yBAAyB,WAAW,IAAI;;;AELnG;AAAA,EACE,YAAAC;AAAA,OACK;AAIA,IAAM,0BAA0BC,UAAS,GAAG,yBAAyB,UAAU,IAAI;AAInF,IAAM,6BAA6B,CAAC,MAAsD,GAAG,WAAW;;;AHIxG,IAAM,4BAAN,cAA+G,oBAA6B;AAAA,EACjJ,OAAyB,gBAA0B,CAAC,GAAG,MAAM,eAAe,+BAA+B;AAAA,EAC3G,OAAyB,sBAA8B;AAAA,EAEvD,MAAgB,cAAc,SAAsC;AAClE,UAAM,YAAY,SAAS,MAAM,KAAK,kBAAkB,GAAG,MAAM,6BAA6B;AAC9F,YAAQ,MAAM,UAAU,KAAK,EAAE,OAAO,IAAO,CAAC,GAC3C,OAAO,OAAK,eAAe,CAAC,KAAK,cAAc,CAAC,CAAC,EACjD,OAAO,QAAM,GAAG,UAAU,SAAS,OAAO,CAAC,EAC3C,IAAI,QAAM,GAAG,eAAe,MAAM,EAClC,OAAO,CAAC,OAAO,UAAU,QAAQ,OAAO,CAAC;AAAA,EAC9C;AAAA,EAEA,MAAgB,qBAAsC;AACpD,UAAM,YAAY,SAAS,MAAM,KAAK,kBAAkB,GAAG,MAAM,6BAA6B;AAC9F,UAAM,MAAM,MAAM,UAAU,KAAK,EAAE,OAAO,IAAO,CAAC;AAClD,WAAO,IAAI;AAAA,EACb;AAAA,EAEA,MAAyB,cAAc,UAA0C;AAC/E,UAAM,QAAQ,UAAU,KAA+B,0BAA0B;AACjF,QAAI,CAAC,MAAO,QAAO,CAAC;AACpB,UAAM,YACF,OAAO,UACL,MAAM,QAAQ,OAAO,OAAO,IAC1B,MAAM,UACN,CAAC,MAAM,OAAO,IAChB;AACN,UAAM,SAAS,YAAY,MAAM,QAAQ,IAAI,UAAU,IAAI,aAAW,KAAK,cAAc,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,mBAAmB,CAAC;AACtI,WAAO,OAAO,IAAI,WAAS,IAAI,eAAoC,EAAE,QAAQ,0BAA0B,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC;AAAA,EACrI;AACF;;;AIxCO,IAAM,wBAAwB,CAAC,MAAiD,GAAG,WAAW;",
6
- "names": ["asSchema", "asSchema", "asSchema", "asSchema"]
4
+ "sourcesContent": ["import { AbstractDiviner } from '@xyo-network/diviner-abstract'\nimport type { DivinerInstance, DivinerModuleEventData } from '@xyo-network/diviner-model'\nimport type { Payload } from '@xyo-network/sdk-protocol-js'\n\nimport type { PayloadStatsDivinerParams } from './Params.ts'\n\nexport abstract class PayloadStatsDiviner<\n TParams extends PayloadStatsDivinerParams = PayloadStatsDivinerParams,\n TIn extends Payload = Payload,\n TOut extends Payload = Payload,\n TEventData extends DivinerModuleEventData<DivinerInstance<TParams, TIn, TOut>, TIn, TOut> = DivinerModuleEventData<\n DivinerInstance<TParams, TIn, TOut>,\n TIn,\n TOut\n >,\n> extends AbstractDiviner<TParams, TIn, TOut, TEventData> {}\n", "import { assertEx } from '@xylabs/sdk-js'\nimport { isBoundWitness, PayloadBuilder } from '@xyo-network/sdk-protocol-js'\nimport {\n isStorageMeta, type Payload, type Schema, type XyoAddress,\n} from '@xyo-network/sdk-protocol-js'\n\nimport { PayloadStatsDivinerConfigSchema } from './Config.ts'\nimport type { PayloadStatsDivinerParams } from './Params.ts'\nimport type { PayloadStatsPayload } from './Payload.ts'\nimport { PayloadStatsDiviner } from './PayloadStatsDiviner.ts'\nimport type { PayloadStatsQueryPayload } from './Query.ts'\nimport { isPayloadStatsQueryPayload } from './Query.ts'\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport class MemoryPayloadStatsDiviner<TParams extends PayloadStatsDivinerParams = PayloadStatsDivinerParams> extends PayloadStatsDiviner<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, PayloadStatsDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = PayloadStatsDivinerConfigSchema\n\n protected async divineAddress(address: XyoAddress): Promise<number> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n return (await archivist.next({ limit: 20_000 }))\n .filter(x => isBoundWitness(x) && isStorageMeta(x))\n .filter(bw => bw.addresses.includes(address))\n .map(bw => bw.payload_hashes.length)\n .reduce((total, count) => total + count, 0)\n }\n\n protected async divineAllAddresses(): Promise<number> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await archivist.next({ limit: 20_000 })\n return all.length\n }\n\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const query = payloads?.find<PayloadStatsQueryPayload>(isPayloadStatsQueryPayload)\n if (!query) return []\n const addresses\n = query?.address\n ? Array.isArray(query?.address)\n ? query.address\n : [query.address]\n : undefined\n const counts = addresses ? await Promise.all(addresses.map(address => this.divineAddress(address))) : [await this.divineAllAddresses()]\n return counts.map(count => new PayloadBuilder<PayloadStatsPayload>({ schema: PayloadStatsDivinerSchema }).fields({ count }).build())\n }\n}\n", "import {\n zodAsFactory, zodIsFactory, zodToFactory,\n} from '@xylabs/sdk-js'\nimport type { DivinerConfig } from '@xyo-network/diviner-model'\nimport { DivinerConfigZod } from '@xyo-network/diviner-model'\nimport { asSchema, type Payload } from '@xyo-network/sdk-protocol-js'\nimport * as z from 'zod/mini'\n\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport const PayloadStatsDivinerConfigSchema: string & {\n readonly __schema: true\n} = asSchema(`${PayloadStatsDivinerSchema}.config`, true)\nexport type PayloadStatsDivinerConfigSchema = typeof PayloadStatsDivinerConfigSchema\n\nexport const PayloadStatsDivinerConfigZod: z.ZodMiniObject<\n Omit<(typeof DivinerConfigZod)['shape'], 'schema'> & {\n schema: z.ZodMiniLiteral<PayloadStatsDivinerConfigSchema>\n },\n z.core.$strip\n> = z.extend(DivinerConfigZod, { schema: z.literal(PayloadStatsDivinerConfigSchema) })\n\nexport type PayloadStatsDivinerConfigBase = z.infer<typeof PayloadStatsDivinerConfigZod>\n\nexport const isPayloadStatsDivinerConfig: ReturnType<typeof zodIsFactory<PayloadStatsDivinerConfigBase>> = zodIsFactory(PayloadStatsDivinerConfigZod)\nexport const asPayloadStatsDivinerConfig: ReturnType<typeof zodAsFactory<PayloadStatsDivinerConfigBase>> = zodAsFactory(PayloadStatsDivinerConfigZod, 'asPayloadStatsDivinerConfig')\nexport const toPayloadStatsDivinerConfig: ReturnType<typeof zodToFactory<PayloadStatsDivinerConfigBase>> = zodToFactory(PayloadStatsDivinerConfigZod, 'toPayloadStatsDivinerConfig')\n\nexport type PayloadStatsDivinerConfig<T extends Payload = Payload> = DivinerConfig<\n T & {\n schema: PayloadStatsDivinerConfigSchema\n }\n>\n", "import { asSchema } from '@xyo-network/sdk-protocol-js'\n\nexport const PayloadStatsDivinerSchema: 'network.xyo.diviner.payload.stats' & {\n readonly __schema: true\n} = asSchema('network.xyo.diviner.payload.stats', true)\nexport type PayloadStatsDivinerSchema = typeof PayloadStatsDivinerSchema\n", "import {\n zodAsFactory, zodIsFactory, zodToFactory,\n} from '@xylabs/sdk-js'\nimport {\n asSchema, PayloadZodOfSchema, QueryFieldsZod,\n} from '@xyo-network/sdk-protocol-js'\nimport * as z from 'zod/mini'\n\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport const PayloadStatsQuerySchema: string & {\n readonly __schema: true\n} = asSchema(`${PayloadStatsDivinerSchema}.query`, true)\nexport type PayloadStatsQuerySchema = typeof PayloadStatsQuerySchema\n\nexport const PayloadStatsQueryPayloadZod: z.ZodMiniObject<\n & { schema: z.ZodMiniLiteral<PayloadStatsQuerySchema> }\n & (typeof QueryFieldsZod)['shape'],\n z.core.$strip\n> = z.extend(PayloadZodOfSchema(PayloadStatsQuerySchema), { ...QueryFieldsZod.shape })\n\nexport type PayloadStatsQueryPayload = z.infer<typeof PayloadStatsQueryPayloadZod>\n\nexport const isPayloadStatsQueryPayload: ReturnType<typeof zodIsFactory<PayloadStatsQueryPayload>> = zodIsFactory(PayloadStatsQueryPayloadZod)\nexport const asPayloadStatsQueryPayload: ReturnType<typeof zodAsFactory<PayloadStatsQueryPayload>> = zodAsFactory(PayloadStatsQueryPayloadZod, 'asPayloadStatsQueryPayload')\nexport const toPayloadStatsQueryPayload: ReturnType<typeof zodToFactory<PayloadStatsQueryPayload>> = zodToFactory(PayloadStatsQueryPayloadZod, 'toPayloadStatsQueryPayload')\n", "import {\n zodAsFactory, zodIsFactory, zodToFactory,\n} from '@xylabs/sdk-js'\nimport { PayloadZodOfSchema } from '@xyo-network/sdk-protocol-js'\nimport * as z from 'zod/mini'\n\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport const PayloadStatsPayloadZod: z.ZodMiniObject<{\n count: z.ZodMiniNumber<number>\n schema: z.ZodMiniLiteral<PayloadStatsDivinerSchema>\n}, z.core.$strip> = z.extend(PayloadZodOfSchema(PayloadStatsDivinerSchema), { count: z.number() })\n\nexport type PayloadStatsPayload = z.infer<typeof PayloadStatsPayloadZod>\n\nexport const isPayloadStatsPayload: ReturnType<typeof zodIsFactory<PayloadStatsPayload>> = zodIsFactory(PayloadStatsPayloadZod)\nexport const asPayloadStatsPayload: ReturnType<typeof zodAsFactory<PayloadStatsPayload>> = zodAsFactory(PayloadStatsPayloadZod, 'asPayloadStatsPayload')\nexport const toPayloadStatsPayload: ReturnType<typeof zodToFactory<PayloadStatsPayload>> = zodToFactory(PayloadStatsPayloadZod, 'toPayloadStatsPayload')\n"],
5
+ "mappings": ";AAAA,SAAS,uBAAuB;AAMzB,IAAe,sBAAf,cASG,gBAAgD;AAAC;;;ACf3D,SAAS,gBAAgB;AACzB,SAAS,gBAAgB,sBAAsB;AAC/C;AAAA,EACE;AAAA,OACK;;;ACJP;AAAA,EACE;AAAA,EAAc;AAAA,EAAc;AAAA,OACvB;AAEP,SAAS,wBAAwB;AACjC,SAAS,YAAAA,iBAA8B;AACvC,YAAY,OAAO;;;ACNnB,SAAS,gBAAgB;AAElB,IAAM,4BAET,SAAS,qCAAqC,IAAI;;;ADM/C,IAAM,kCAETC,UAAS,GAAG,yBAAyB,WAAW,IAAI;AAGjD,IAAM,+BAKP,SAAO,kBAAkB,EAAE,QAAU,UAAQ,+BAA+B,EAAE,CAAC;AAI9E,IAAM,8BAA8F,aAAa,4BAA4B;AAC7I,IAAM,8BAA8F,aAAa,8BAA8B,6BAA6B;AAC5K,IAAM,8BAA8F,aAAa,8BAA8B,6BAA6B;;;AE1BnL;AAAA,EACE,gBAAAC;AAAA,EAAc,gBAAAC;AAAA,EAAc,gBAAAC;AAAA,OACvB;AACP;AAAA,EACE,YAAAC;AAAA,EAAU;AAAA,EAAoB;AAAA,OACzB;AACP,YAAYC,QAAO;AAIZ,IAAM,0BAETC,UAAS,GAAG,yBAAyB,UAAU,IAAI;AAGhD,IAAM,8BAIP,UAAO,mBAAmB,uBAAuB,GAAG,EAAE,GAAG,eAAe,MAAM,CAAC;AAI9E,IAAM,6BAAwFC,cAAa,2BAA2B;AACtI,IAAM,6BAAwFC,cAAa,6BAA6B,4BAA4B;AACpK,IAAM,6BAAwFC,cAAa,6BAA6B,4BAA4B;;;AHXpK,IAAM,4BAAN,cAA+G,oBAA6B;AAAA,EACjJ,OAAyB,gBAA0B,CAAC,GAAG,MAAM,eAAe,+BAA+B;AAAA,EAC3G,OAAyB,sBAA8B;AAAA,EAEvD,MAAgB,cAAc,SAAsC;AAClE,UAAM,YAAY,SAAS,MAAM,KAAK,kBAAkB,GAAG,MAAM,6BAA6B;AAC9F,YAAQ,MAAM,UAAU,KAAK,EAAE,OAAO,IAAO,CAAC,GAC3C,OAAO,OAAK,eAAe,CAAC,KAAK,cAAc,CAAC,CAAC,EACjD,OAAO,QAAM,GAAG,UAAU,SAAS,OAAO,CAAC,EAC3C,IAAI,QAAM,GAAG,eAAe,MAAM,EAClC,OAAO,CAAC,OAAO,UAAU,QAAQ,OAAO,CAAC;AAAA,EAC9C;AAAA,EAEA,MAAgB,qBAAsC;AACpD,UAAM,YAAY,SAAS,MAAM,KAAK,kBAAkB,GAAG,MAAM,6BAA6B;AAC9F,UAAM,MAAM,MAAM,UAAU,KAAK,EAAE,OAAO,IAAO,CAAC;AAClD,WAAO,IAAI;AAAA,EACb;AAAA,EAEA,MAAyB,cAAc,UAA0C;AAC/E,UAAM,QAAQ,UAAU,KAA+B,0BAA0B;AACjF,QAAI,CAAC,MAAO,QAAO,CAAC;AACpB,UAAM,YACF,OAAO,UACL,MAAM,QAAQ,OAAO,OAAO,IAC1B,MAAM,UACN,CAAC,MAAM,OAAO,IAChB;AACN,UAAM,SAAS,YAAY,MAAM,QAAQ,IAAI,UAAU,IAAI,aAAW,KAAK,cAAc,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,mBAAmB,CAAC;AACtI,WAAO,OAAO,IAAI,WAAS,IAAI,eAAoC,EAAE,QAAQ,0BAA0B,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC;AAAA,EACrI;AACF;;;AI7CA;AAAA,EACE,gBAAAC;AAAA,EAAc,gBAAAC;AAAA,EAAc,gBAAAC;AAAA,OACvB;AACP,SAAS,sBAAAC,2BAA0B;AACnC,YAAYC,QAAO;AAIZ,IAAM,yBAGS,UAAOC,oBAAmB,yBAAyB,GAAG,EAAE,OAAS,UAAO,EAAE,CAAC;AAI1F,IAAM,wBAA8EC,cAAa,sBAAsB;AACvH,IAAM,wBAA8EC,cAAa,wBAAwB,uBAAuB;AAChJ,IAAM,wBAA8EC,cAAa,wBAAwB,uBAAuB;",
6
+ "names": ["asSchema", "asSchema", "zodAsFactory", "zodIsFactory", "zodToFactory", "asSchema", "z", "asSchema", "zodIsFactory", "zodAsFactory", "zodToFactory", "zodAsFactory", "zodIsFactory", "zodToFactory", "PayloadZodOfSchema", "z", "PayloadZodOfSchema", "zodIsFactory", "zodAsFactory", "zodToFactory"]
7
7
  }
@@ -6,7 +6,14 @@ import {
6
6
  } from "@xyo-network/sdk-protocol-js";
7
7
 
8
8
  // src/Config.ts
9
+ import {
10
+ zodAsFactory,
11
+ zodIsFactory,
12
+ zodToFactory
13
+ } from "@xylabs/sdk-js";
14
+ import { DivinerConfigZod } from "@xyo-network/diviner-model";
9
15
  import { asSchema as asSchema2 } from "@xyo-network/sdk-protocol-js";
16
+ import * as z from "zod/mini";
10
17
 
11
18
  // src/Schema.ts
12
19
  import { asSchema } from "@xyo-network/sdk-protocol-js";
@@ -14,6 +21,10 @@ var PayloadStatsDivinerSchema = asSchema("network.xyo.diviner.payload.stats", tr
14
21
 
15
22
  // src/Config.ts
16
23
  var PayloadStatsDivinerConfigSchema = asSchema2(`${PayloadStatsDivinerSchema}.config`, true);
24
+ var PayloadStatsDivinerConfigZod = z.extend(DivinerConfigZod, { schema: z.literal(PayloadStatsDivinerConfigSchema) });
25
+ var isPayloadStatsDivinerConfig = zodIsFactory(PayloadStatsDivinerConfigZod);
26
+ var asPayloadStatsDivinerConfig = zodAsFactory(PayloadStatsDivinerConfigZod, "asPayloadStatsDivinerConfig");
27
+ var toPayloadStatsDivinerConfig = zodToFactory(PayloadStatsDivinerConfigZod, "toPayloadStatsDivinerConfig");
17
28
 
18
29
  // src/PayloadStatsDiviner.ts
19
30
  import { AbstractDiviner } from "@xyo-network/diviner-abstract";
@@ -22,10 +33,21 @@ var PayloadStatsDiviner = class extends AbstractDiviner {
22
33
 
23
34
  // src/Query.ts
24
35
  import {
25
- asSchema as asSchema3
36
+ zodAsFactory as zodAsFactory2,
37
+ zodIsFactory as zodIsFactory2,
38
+ zodToFactory as zodToFactory2
39
+ } from "@xylabs/sdk-js";
40
+ import {
41
+ asSchema as asSchema3,
42
+ PayloadZodOfSchema,
43
+ QueryFieldsZod
26
44
  } from "@xyo-network/sdk-protocol-js";
45
+ import * as z2 from "zod/mini";
27
46
  var PayloadStatsQuerySchema = asSchema3(`${PayloadStatsDivinerSchema}.query`, true);
28
- var isPayloadStatsQueryPayload = (x) => x?.schema === PayloadStatsQuerySchema;
47
+ var PayloadStatsQueryPayloadZod = z2.extend(PayloadZodOfSchema(PayloadStatsQuerySchema), { ...QueryFieldsZod.shape });
48
+ var isPayloadStatsQueryPayload = zodIsFactory2(PayloadStatsQueryPayloadZod);
49
+ var asPayloadStatsQueryPayload = zodAsFactory2(PayloadStatsQueryPayloadZod, "asPayloadStatsQueryPayload");
50
+ var toPayloadStatsQueryPayload = zodToFactory2(PayloadStatsQueryPayloadZod, "toPayloadStatsQueryPayload");
29
51
 
30
52
  // src/MemoryPayloadStatsDiviner.ts
31
53
  var MemoryPayloadStatsDiviner = class extends PayloadStatsDiviner {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/MemoryPayloadStatsDiviner.ts", "../../src/Config.ts", "../../src/Schema.ts", "../../src/PayloadStatsDiviner.ts", "../../src/Query.ts"],
4
- "sourcesContent": ["import { assertEx } from '@xylabs/sdk-js'\nimport { isBoundWitness, PayloadBuilder } from '@xyo-network/sdk-protocol-js'\nimport {\n isStorageMeta, type Payload, type Schema, type XyoAddress,\n} from '@xyo-network/sdk-protocol-js'\n\nimport { PayloadStatsDivinerConfigSchema } from './Config.ts'\nimport type { PayloadStatsDivinerParams } from './Params.ts'\nimport type { PayloadStatsPayload } from './Payload.ts'\nimport { PayloadStatsDiviner } from './PayloadStatsDiviner.ts'\nimport type { PayloadStatsQueryPayload } from './Query.ts'\nimport { isPayloadStatsQueryPayload } from './Query.ts'\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport class MemoryPayloadStatsDiviner<TParams extends PayloadStatsDivinerParams = PayloadStatsDivinerParams> extends PayloadStatsDiviner<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, PayloadStatsDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = PayloadStatsDivinerConfigSchema\n\n protected async divineAddress(address: XyoAddress): Promise<number> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n return (await archivist.next({ limit: 20_000 }))\n .filter(x => isBoundWitness(x) && isStorageMeta(x))\n .filter(bw => bw.addresses.includes(address))\n .map(bw => bw.payload_hashes.length)\n .reduce((total, count) => total + count, 0)\n }\n\n protected async divineAllAddresses(): Promise<number> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await archivist.next({ limit: 20_000 })\n return all.length\n }\n\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const query = payloads?.find<PayloadStatsQueryPayload>(isPayloadStatsQueryPayload)\n if (!query) return []\n const addresses\n = query?.address\n ? Array.isArray(query?.address)\n ? query.address\n : [query.address]\n : undefined\n const counts = addresses ? await Promise.all(addresses.map(address => this.divineAddress(address))) : [await this.divineAllAddresses()]\n return counts.map(count => new PayloadBuilder<PayloadStatsPayload>({ schema: PayloadStatsDivinerSchema }).fields({ count }).build())\n }\n}\n", "import type { DivinerConfig } from '@xyo-network/diviner-model'\nimport { asSchema, type Payload } from '@xyo-network/sdk-protocol-js'\n\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport const PayloadStatsDivinerConfigSchema = asSchema(`${PayloadStatsDivinerSchema}.config`, true)\nexport type PayloadStatsDivinerConfigSchema = typeof PayloadStatsDivinerConfigSchema\n\nexport type PayloadStatsDivinerConfig<T extends Payload = Payload> = DivinerConfig<\n T & {\n schema: PayloadStatsDivinerConfigSchema\n }\n>\n", "import { asSchema } from '@xyo-network/sdk-protocol-js'\n\nexport const PayloadStatsDivinerSchema = asSchema('network.xyo.diviner.payload.stats', true)\nexport type PayloadStatsDivinerSchema = typeof PayloadStatsDivinerSchema\n", "import { AbstractDiviner } from '@xyo-network/diviner-abstract'\nimport type { DivinerInstance, DivinerModuleEventData } from '@xyo-network/diviner-model'\nimport type { Payload } from '@xyo-network/sdk-protocol-js'\n\nimport type { PayloadStatsDivinerParams } from './Params.ts'\n\nexport abstract class PayloadStatsDiviner<\n TParams extends PayloadStatsDivinerParams = PayloadStatsDivinerParams,\n TIn extends Payload = Payload,\n TOut extends Payload = Payload,\n TEventData extends DivinerModuleEventData<DivinerInstance<TParams, TIn, TOut>, TIn, TOut> = DivinerModuleEventData<\n DivinerInstance<TParams, TIn, TOut>,\n TIn,\n TOut\n >,\n> extends AbstractDiviner<TParams, TIn, TOut, TEventData> {}\n", "import {\n asSchema, type Payload, type Query,\n} from '@xyo-network/sdk-protocol-js'\n\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport const PayloadStatsQuerySchema = asSchema(`${PayloadStatsDivinerSchema}.query`, true)\nexport type PayloadStatsQuerySchema = typeof PayloadStatsQuerySchema\n\nexport type PayloadStatsQueryPayload = Query<{ schema: PayloadStatsQuerySchema }>\nexport const isPayloadStatsQueryPayload = (x?: Payload | null): x is PayloadStatsQueryPayload => x?.schema === PayloadStatsQuerySchema\n"],
5
- "mappings": ";AAAA,SAAS,gBAAgB;AACzB,SAAS,gBAAgB,sBAAsB;AAC/C;AAAA,EACE;AAAA,OACK;;;ACHP,SAAS,YAAAA,iBAA8B;;;ACDvC,SAAS,gBAAgB;AAElB,IAAM,4BAA4B,SAAS,qCAAqC,IAAI;;;ADGpF,IAAM,kCAAkCC,UAAS,GAAG,yBAAyB,WAAW,IAAI;;;AELnG,SAAS,uBAAuB;AAMzB,IAAe,sBAAf,cASG,gBAAgD;AAAC;;;ACf3D;AAAA,EACE,YAAAC;AAAA,OACK;AAIA,IAAM,0BAA0BC,UAAS,GAAG,yBAAyB,UAAU,IAAI;AAInF,IAAM,6BAA6B,CAAC,MAAsD,GAAG,WAAW;;;AJIxG,IAAM,4BAAN,cAA+G,oBAA6B;AAAA,EACjJ,OAAyB,gBAA0B,CAAC,GAAG,MAAM,eAAe,+BAA+B;AAAA,EAC3G,OAAyB,sBAA8B;AAAA,EAEvD,MAAgB,cAAc,SAAsC;AAClE,UAAM,YAAY,SAAS,MAAM,KAAK,kBAAkB,GAAG,MAAM,6BAA6B;AAC9F,YAAQ,MAAM,UAAU,KAAK,EAAE,OAAO,IAAO,CAAC,GAC3C,OAAO,OAAK,eAAe,CAAC,KAAK,cAAc,CAAC,CAAC,EACjD,OAAO,QAAM,GAAG,UAAU,SAAS,OAAO,CAAC,EAC3C,IAAI,QAAM,GAAG,eAAe,MAAM,EAClC,OAAO,CAAC,OAAO,UAAU,QAAQ,OAAO,CAAC;AAAA,EAC9C;AAAA,EAEA,MAAgB,qBAAsC;AACpD,UAAM,YAAY,SAAS,MAAM,KAAK,kBAAkB,GAAG,MAAM,6BAA6B;AAC9F,UAAM,MAAM,MAAM,UAAU,KAAK,EAAE,OAAO,IAAO,CAAC;AAClD,WAAO,IAAI;AAAA,EACb;AAAA,EAEA,MAAyB,cAAc,UAA0C;AAC/E,UAAM,QAAQ,UAAU,KAA+B,0BAA0B;AACjF,QAAI,CAAC,MAAO,QAAO,CAAC;AACpB,UAAM,YACF,OAAO,UACL,MAAM,QAAQ,OAAO,OAAO,IAC1B,MAAM,UACN,CAAC,MAAM,OAAO,IAChB;AACN,UAAM,SAAS,YAAY,MAAM,QAAQ,IAAI,UAAU,IAAI,aAAW,KAAK,cAAc,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,mBAAmB,CAAC;AACtI,WAAO,OAAO,IAAI,WAAS,IAAI,eAAoC,EAAE,QAAQ,0BAA0B,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC;AAAA,EACrI;AACF;",
6
- "names": ["asSchema", "asSchema", "asSchema", "asSchema"]
4
+ "sourcesContent": ["import { assertEx } from '@xylabs/sdk-js'\nimport { isBoundWitness, PayloadBuilder } from '@xyo-network/sdk-protocol-js'\nimport {\n isStorageMeta, type Payload, type Schema, type XyoAddress,\n} from '@xyo-network/sdk-protocol-js'\n\nimport { PayloadStatsDivinerConfigSchema } from './Config.ts'\nimport type { PayloadStatsDivinerParams } from './Params.ts'\nimport type { PayloadStatsPayload } from './Payload.ts'\nimport { PayloadStatsDiviner } from './PayloadStatsDiviner.ts'\nimport type { PayloadStatsQueryPayload } from './Query.ts'\nimport { isPayloadStatsQueryPayload } from './Query.ts'\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport class MemoryPayloadStatsDiviner<TParams extends PayloadStatsDivinerParams = PayloadStatsDivinerParams> extends PayloadStatsDiviner<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, PayloadStatsDivinerConfigSchema]\n static override readonly defaultConfigSchema: Schema = PayloadStatsDivinerConfigSchema\n\n protected async divineAddress(address: XyoAddress): Promise<number> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n return (await archivist.next({ limit: 20_000 }))\n .filter(x => isBoundWitness(x) && isStorageMeta(x))\n .filter(bw => bw.addresses.includes(address))\n .map(bw => bw.payload_hashes.length)\n .reduce((total, count) => total + count, 0)\n }\n\n protected async divineAllAddresses(): Promise<number> {\n const archivist = assertEx(await this.archivistInstance(), () => 'Unable to resolve archivist')\n const all = await archivist.next({ limit: 20_000 })\n return all.length\n }\n\n protected override async divineHandler(payloads?: Payload[]): Promise<Payload[]> {\n const query = payloads?.find<PayloadStatsQueryPayload>(isPayloadStatsQueryPayload)\n if (!query) return []\n const addresses\n = query?.address\n ? Array.isArray(query?.address)\n ? query.address\n : [query.address]\n : undefined\n const counts = addresses ? await Promise.all(addresses.map(address => this.divineAddress(address))) : [await this.divineAllAddresses()]\n return counts.map(count => new PayloadBuilder<PayloadStatsPayload>({ schema: PayloadStatsDivinerSchema }).fields({ count }).build())\n }\n}\n", "import {\n zodAsFactory, zodIsFactory, zodToFactory,\n} from '@xylabs/sdk-js'\nimport type { DivinerConfig } from '@xyo-network/diviner-model'\nimport { DivinerConfigZod } from '@xyo-network/diviner-model'\nimport { asSchema, type Payload } from '@xyo-network/sdk-protocol-js'\nimport * as z from 'zod/mini'\n\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport const PayloadStatsDivinerConfigSchema: string & {\n readonly __schema: true\n} = asSchema(`${PayloadStatsDivinerSchema}.config`, true)\nexport type PayloadStatsDivinerConfigSchema = typeof PayloadStatsDivinerConfigSchema\n\nexport const PayloadStatsDivinerConfigZod: z.ZodMiniObject<\n Omit<(typeof DivinerConfigZod)['shape'], 'schema'> & {\n schema: z.ZodMiniLiteral<PayloadStatsDivinerConfigSchema>\n },\n z.core.$strip\n> = z.extend(DivinerConfigZod, { schema: z.literal(PayloadStatsDivinerConfigSchema) })\n\nexport type PayloadStatsDivinerConfigBase = z.infer<typeof PayloadStatsDivinerConfigZod>\n\nexport const isPayloadStatsDivinerConfig: ReturnType<typeof zodIsFactory<PayloadStatsDivinerConfigBase>> = zodIsFactory(PayloadStatsDivinerConfigZod)\nexport const asPayloadStatsDivinerConfig: ReturnType<typeof zodAsFactory<PayloadStatsDivinerConfigBase>> = zodAsFactory(PayloadStatsDivinerConfigZod, 'asPayloadStatsDivinerConfig')\nexport const toPayloadStatsDivinerConfig: ReturnType<typeof zodToFactory<PayloadStatsDivinerConfigBase>> = zodToFactory(PayloadStatsDivinerConfigZod, 'toPayloadStatsDivinerConfig')\n\nexport type PayloadStatsDivinerConfig<T extends Payload = Payload> = DivinerConfig<\n T & {\n schema: PayloadStatsDivinerConfigSchema\n }\n>\n", "import { asSchema } from '@xyo-network/sdk-protocol-js'\n\nexport const PayloadStatsDivinerSchema: 'network.xyo.diviner.payload.stats' & {\n readonly __schema: true\n} = asSchema('network.xyo.diviner.payload.stats', true)\nexport type PayloadStatsDivinerSchema = typeof PayloadStatsDivinerSchema\n", "import { AbstractDiviner } from '@xyo-network/diviner-abstract'\nimport type { DivinerInstance, DivinerModuleEventData } from '@xyo-network/diviner-model'\nimport type { Payload } from '@xyo-network/sdk-protocol-js'\n\nimport type { PayloadStatsDivinerParams } from './Params.ts'\n\nexport abstract class PayloadStatsDiviner<\n TParams extends PayloadStatsDivinerParams = PayloadStatsDivinerParams,\n TIn extends Payload = Payload,\n TOut extends Payload = Payload,\n TEventData extends DivinerModuleEventData<DivinerInstance<TParams, TIn, TOut>, TIn, TOut> = DivinerModuleEventData<\n DivinerInstance<TParams, TIn, TOut>,\n TIn,\n TOut\n >,\n> extends AbstractDiviner<TParams, TIn, TOut, TEventData> {}\n", "import {\n zodAsFactory, zodIsFactory, zodToFactory,\n} from '@xylabs/sdk-js'\nimport {\n asSchema, PayloadZodOfSchema, QueryFieldsZod,\n} from '@xyo-network/sdk-protocol-js'\nimport * as z from 'zod/mini'\n\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport const PayloadStatsQuerySchema: string & {\n readonly __schema: true\n} = asSchema(`${PayloadStatsDivinerSchema}.query`, true)\nexport type PayloadStatsQuerySchema = typeof PayloadStatsQuerySchema\n\nexport const PayloadStatsQueryPayloadZod: z.ZodMiniObject<\n & { schema: z.ZodMiniLiteral<PayloadStatsQuerySchema> }\n & (typeof QueryFieldsZod)['shape'],\n z.core.$strip\n> = z.extend(PayloadZodOfSchema(PayloadStatsQuerySchema), { ...QueryFieldsZod.shape })\n\nexport type PayloadStatsQueryPayload = z.infer<typeof PayloadStatsQueryPayloadZod>\n\nexport const isPayloadStatsQueryPayload: ReturnType<typeof zodIsFactory<PayloadStatsQueryPayload>> = zodIsFactory(PayloadStatsQueryPayloadZod)\nexport const asPayloadStatsQueryPayload: ReturnType<typeof zodAsFactory<PayloadStatsQueryPayload>> = zodAsFactory(PayloadStatsQueryPayloadZod, 'asPayloadStatsQueryPayload')\nexport const toPayloadStatsQueryPayload: ReturnType<typeof zodToFactory<PayloadStatsQueryPayload>> = zodToFactory(PayloadStatsQueryPayloadZod, 'toPayloadStatsQueryPayload')\n"],
5
+ "mappings": ";AAAA,SAAS,gBAAgB;AACzB,SAAS,gBAAgB,sBAAsB;AAC/C;AAAA,EACE;AAAA,OACK;;;ACJP;AAAA,EACE;AAAA,EAAc;AAAA,EAAc;AAAA,OACvB;AAEP,SAAS,wBAAwB;AACjC,SAAS,YAAAA,iBAA8B;AACvC,YAAY,OAAO;;;ACNnB,SAAS,gBAAgB;AAElB,IAAM,4BAET,SAAS,qCAAqC,IAAI;;;ADM/C,IAAM,kCAETC,UAAS,GAAG,yBAAyB,WAAW,IAAI;AAGjD,IAAM,+BAKP,SAAO,kBAAkB,EAAE,QAAU,UAAQ,+BAA+B,EAAE,CAAC;AAI9E,IAAM,8BAA8F,aAAa,4BAA4B;AAC7I,IAAM,8BAA8F,aAAa,8BAA8B,6BAA6B;AAC5K,IAAM,8BAA8F,aAAa,8BAA8B,6BAA6B;;;AE1BnL,SAAS,uBAAuB;AAMzB,IAAe,sBAAf,cASG,gBAAgD;AAAC;;;ACf3D;AAAA,EACE,gBAAAC;AAAA,EAAc,gBAAAC;AAAA,EAAc,gBAAAC;AAAA,OACvB;AACP;AAAA,EACE,YAAAC;AAAA,EAAU;AAAA,EAAoB;AAAA,OACzB;AACP,YAAYC,QAAO;AAIZ,IAAM,0BAETC,UAAS,GAAG,yBAAyB,UAAU,IAAI;AAGhD,IAAM,8BAIP,UAAO,mBAAmB,uBAAuB,GAAG,EAAE,GAAG,eAAe,MAAM,CAAC;AAI9E,IAAM,6BAAwFC,cAAa,2BAA2B;AACtI,IAAM,6BAAwFC,cAAa,6BAA6B,4BAA4B;AACpK,IAAM,6BAAwFC,cAAa,6BAA6B,4BAA4B;;;AJXpK,IAAM,4BAAN,cAA+G,oBAA6B;AAAA,EACjJ,OAAyB,gBAA0B,CAAC,GAAG,MAAM,eAAe,+BAA+B;AAAA,EAC3G,OAAyB,sBAA8B;AAAA,EAEvD,MAAgB,cAAc,SAAsC;AAClE,UAAM,YAAY,SAAS,MAAM,KAAK,kBAAkB,GAAG,MAAM,6BAA6B;AAC9F,YAAQ,MAAM,UAAU,KAAK,EAAE,OAAO,IAAO,CAAC,GAC3C,OAAO,OAAK,eAAe,CAAC,KAAK,cAAc,CAAC,CAAC,EACjD,OAAO,QAAM,GAAG,UAAU,SAAS,OAAO,CAAC,EAC3C,IAAI,QAAM,GAAG,eAAe,MAAM,EAClC,OAAO,CAAC,OAAO,UAAU,QAAQ,OAAO,CAAC;AAAA,EAC9C;AAAA,EAEA,MAAgB,qBAAsC;AACpD,UAAM,YAAY,SAAS,MAAM,KAAK,kBAAkB,GAAG,MAAM,6BAA6B;AAC9F,UAAM,MAAM,MAAM,UAAU,KAAK,EAAE,OAAO,IAAO,CAAC;AAClD,WAAO,IAAI;AAAA,EACb;AAAA,EAEA,MAAyB,cAAc,UAA0C;AAC/E,UAAM,QAAQ,UAAU,KAA+B,0BAA0B;AACjF,QAAI,CAAC,MAAO,QAAO,CAAC;AACpB,UAAM,YACF,OAAO,UACL,MAAM,QAAQ,OAAO,OAAO,IAC1B,MAAM,UACN,CAAC,MAAM,OAAO,IAChB;AACN,UAAM,SAAS,YAAY,MAAM,QAAQ,IAAI,UAAU,IAAI,aAAW,KAAK,cAAc,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,mBAAmB,CAAC;AACtI,WAAO,OAAO,IAAI,WAAS,IAAI,eAAoC,EAAE,QAAQ,0BAA0B,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC;AAAA,EACrI;AACF;",
6
+ "names": ["asSchema", "asSchema", "zodAsFactory", "zodIsFactory", "zodToFactory", "asSchema", "z", "asSchema", "zodIsFactory", "zodAsFactory", "zodToFactory"]
7
7
  }
@@ -1,5 +1,12 @@
1
1
  // src/Config.ts
2
+ import {
3
+ zodAsFactory,
4
+ zodIsFactory,
5
+ zodToFactory
6
+ } from "@xylabs/sdk-js";
7
+ import { DivinerConfigZod } from "@xyo-network/diviner-model";
2
8
  import { asSchema as asSchema2 } from "@xyo-network/sdk-protocol-js";
9
+ import * as z from "zod/mini";
3
10
 
4
11
  // src/Schema.ts
5
12
  import { asSchema } from "@xyo-network/sdk-protocol-js";
@@ -7,21 +14,56 @@ var PayloadStatsDivinerSchema = asSchema("network.xyo.diviner.payload.stats", tr
7
14
 
8
15
  // src/Config.ts
9
16
  var PayloadStatsDivinerConfigSchema = asSchema2(`${PayloadStatsDivinerSchema}.config`, true);
17
+ var PayloadStatsDivinerConfigZod = z.extend(DivinerConfigZod, { schema: z.literal(PayloadStatsDivinerConfigSchema) });
18
+ var isPayloadStatsDivinerConfig = zodIsFactory(PayloadStatsDivinerConfigZod);
19
+ var asPayloadStatsDivinerConfig = zodAsFactory(PayloadStatsDivinerConfigZod, "asPayloadStatsDivinerConfig");
20
+ var toPayloadStatsDivinerConfig = zodToFactory(PayloadStatsDivinerConfigZod, "toPayloadStatsDivinerConfig");
10
21
 
11
22
  // src/Payload.ts
12
- var isPayloadStatsPayload = (x) => x?.schema === PayloadStatsDivinerSchema;
23
+ import {
24
+ zodAsFactory as zodAsFactory2,
25
+ zodIsFactory as zodIsFactory2,
26
+ zodToFactory as zodToFactory2
27
+ } from "@xylabs/sdk-js";
28
+ import { PayloadZodOfSchema } from "@xyo-network/sdk-protocol-js";
29
+ import * as z2 from "zod/mini";
30
+ var PayloadStatsPayloadZod = z2.extend(PayloadZodOfSchema(PayloadStatsDivinerSchema), { count: z2.number() });
31
+ var isPayloadStatsPayload = zodIsFactory2(PayloadStatsPayloadZod);
32
+ var asPayloadStatsPayload = zodAsFactory2(PayloadStatsPayloadZod, "asPayloadStatsPayload");
33
+ var toPayloadStatsPayload = zodToFactory2(PayloadStatsPayloadZod, "toPayloadStatsPayload");
13
34
 
14
35
  // src/Query.ts
15
36
  import {
16
- asSchema as asSchema3
37
+ zodAsFactory as zodAsFactory3,
38
+ zodIsFactory as zodIsFactory3,
39
+ zodToFactory as zodToFactory3
40
+ } from "@xylabs/sdk-js";
41
+ import {
42
+ asSchema as asSchema3,
43
+ PayloadZodOfSchema as PayloadZodOfSchema2,
44
+ QueryFieldsZod
17
45
  } from "@xyo-network/sdk-protocol-js";
46
+ import * as z3 from "zod/mini";
18
47
  var PayloadStatsQuerySchema = asSchema3(`${PayloadStatsDivinerSchema}.query`, true);
19
- var isPayloadStatsQueryPayload = (x) => x?.schema === PayloadStatsQuerySchema;
48
+ var PayloadStatsQueryPayloadZod = z3.extend(PayloadZodOfSchema2(PayloadStatsQuerySchema), { ...QueryFieldsZod.shape });
49
+ var isPayloadStatsQueryPayload = zodIsFactory3(PayloadStatsQueryPayloadZod);
50
+ var asPayloadStatsQueryPayload = zodAsFactory3(PayloadStatsQueryPayloadZod, "asPayloadStatsQueryPayload");
51
+ var toPayloadStatsQueryPayload = zodToFactory3(PayloadStatsQueryPayloadZod, "toPayloadStatsQueryPayload");
20
52
  export {
21
53
  PayloadStatsDivinerConfigSchema,
54
+ PayloadStatsDivinerConfigZod,
22
55
  PayloadStatsDivinerSchema,
56
+ PayloadStatsPayloadZod,
57
+ PayloadStatsQueryPayloadZod,
23
58
  PayloadStatsQuerySchema,
59
+ asPayloadStatsDivinerConfig,
60
+ asPayloadStatsPayload,
61
+ asPayloadStatsQueryPayload,
62
+ isPayloadStatsDivinerConfig,
24
63
  isPayloadStatsPayload,
25
- isPayloadStatsQueryPayload
64
+ isPayloadStatsQueryPayload,
65
+ toPayloadStatsDivinerConfig,
66
+ toPayloadStatsPayload,
67
+ toPayloadStatsQueryPayload
26
68
  };
27
69
  //# sourceMappingURL=model.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Config.ts", "../../src/Schema.ts", "../../src/Payload.ts", "../../src/Query.ts"],
4
- "sourcesContent": ["import type { DivinerConfig } from '@xyo-network/diviner-model'\nimport { asSchema, type Payload } from '@xyo-network/sdk-protocol-js'\n\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport const PayloadStatsDivinerConfigSchema = asSchema(`${PayloadStatsDivinerSchema}.config`, true)\nexport type PayloadStatsDivinerConfigSchema = typeof PayloadStatsDivinerConfigSchema\n\nexport type PayloadStatsDivinerConfig<T extends Payload = Payload> = DivinerConfig<\n T & {\n schema: PayloadStatsDivinerConfigSchema\n }\n>\n", "import { asSchema } from '@xyo-network/sdk-protocol-js'\n\nexport const PayloadStatsDivinerSchema = asSchema('network.xyo.diviner.payload.stats', true)\nexport type PayloadStatsDivinerSchema = typeof PayloadStatsDivinerSchema\n", "import type { Payload } from '@xyo-network/sdk-protocol-js'\n\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport type PayloadStatsPayload = Payload<{ count: number; schema: PayloadStatsDivinerSchema }>\nexport const isPayloadStatsPayload = (x?: Payload | null): x is PayloadStatsPayload => x?.schema === PayloadStatsDivinerSchema\n", "import {\n asSchema, type Payload, type Query,\n} from '@xyo-network/sdk-protocol-js'\n\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport const PayloadStatsQuerySchema = asSchema(`${PayloadStatsDivinerSchema}.query`, true)\nexport type PayloadStatsQuerySchema = typeof PayloadStatsQuerySchema\n\nexport type PayloadStatsQueryPayload = Query<{ schema: PayloadStatsQuerySchema }>\nexport const isPayloadStatsQueryPayload = (x?: Payload | null): x is PayloadStatsQueryPayload => x?.schema === PayloadStatsQuerySchema\n"],
5
- "mappings": ";AACA,SAAS,YAAAA,iBAA8B;;;ACDvC,SAAS,gBAAgB;AAElB,IAAM,4BAA4B,SAAS,qCAAqC,IAAI;;;ADGpF,IAAM,kCAAkCC,UAAS,GAAG,yBAAyB,WAAW,IAAI;;;AEA5F,IAAM,wBAAwB,CAAC,MAAiD,GAAG,WAAW;;;ACLrG;AAAA,EACE,YAAAC;AAAA,OACK;AAIA,IAAM,0BAA0BC,UAAS,GAAG,yBAAyB,UAAU,IAAI;AAInF,IAAM,6BAA6B,CAAC,MAAsD,GAAG,WAAW;",
6
- "names": ["asSchema", "asSchema", "asSchema", "asSchema"]
4
+ "sourcesContent": ["import {\n zodAsFactory, zodIsFactory, zodToFactory,\n} from '@xylabs/sdk-js'\nimport type { DivinerConfig } from '@xyo-network/diviner-model'\nimport { DivinerConfigZod } from '@xyo-network/diviner-model'\nimport { asSchema, type Payload } from '@xyo-network/sdk-protocol-js'\nimport * as z from 'zod/mini'\n\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport const PayloadStatsDivinerConfigSchema: string & {\n readonly __schema: true\n} = asSchema(`${PayloadStatsDivinerSchema}.config`, true)\nexport type PayloadStatsDivinerConfigSchema = typeof PayloadStatsDivinerConfigSchema\n\nexport const PayloadStatsDivinerConfigZod: z.ZodMiniObject<\n Omit<(typeof DivinerConfigZod)['shape'], 'schema'> & {\n schema: z.ZodMiniLiteral<PayloadStatsDivinerConfigSchema>\n },\n z.core.$strip\n> = z.extend(DivinerConfigZod, { schema: z.literal(PayloadStatsDivinerConfigSchema) })\n\nexport type PayloadStatsDivinerConfigBase = z.infer<typeof PayloadStatsDivinerConfigZod>\n\nexport const isPayloadStatsDivinerConfig: ReturnType<typeof zodIsFactory<PayloadStatsDivinerConfigBase>> = zodIsFactory(PayloadStatsDivinerConfigZod)\nexport const asPayloadStatsDivinerConfig: ReturnType<typeof zodAsFactory<PayloadStatsDivinerConfigBase>> = zodAsFactory(PayloadStatsDivinerConfigZod, 'asPayloadStatsDivinerConfig')\nexport const toPayloadStatsDivinerConfig: ReturnType<typeof zodToFactory<PayloadStatsDivinerConfigBase>> = zodToFactory(PayloadStatsDivinerConfigZod, 'toPayloadStatsDivinerConfig')\n\nexport type PayloadStatsDivinerConfig<T extends Payload = Payload> = DivinerConfig<\n T & {\n schema: PayloadStatsDivinerConfigSchema\n }\n>\n", "import { asSchema } from '@xyo-network/sdk-protocol-js'\n\nexport const PayloadStatsDivinerSchema: 'network.xyo.diviner.payload.stats' & {\n readonly __schema: true\n} = asSchema('network.xyo.diviner.payload.stats', true)\nexport type PayloadStatsDivinerSchema = typeof PayloadStatsDivinerSchema\n", "import {\n zodAsFactory, zodIsFactory, zodToFactory,\n} from '@xylabs/sdk-js'\nimport { PayloadZodOfSchema } from '@xyo-network/sdk-protocol-js'\nimport * as z from 'zod/mini'\n\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport const PayloadStatsPayloadZod: z.ZodMiniObject<{\n count: z.ZodMiniNumber<number>\n schema: z.ZodMiniLiteral<PayloadStatsDivinerSchema>\n}, z.core.$strip> = z.extend(PayloadZodOfSchema(PayloadStatsDivinerSchema), { count: z.number() })\n\nexport type PayloadStatsPayload = z.infer<typeof PayloadStatsPayloadZod>\n\nexport const isPayloadStatsPayload: ReturnType<typeof zodIsFactory<PayloadStatsPayload>> = zodIsFactory(PayloadStatsPayloadZod)\nexport const asPayloadStatsPayload: ReturnType<typeof zodAsFactory<PayloadStatsPayload>> = zodAsFactory(PayloadStatsPayloadZod, 'asPayloadStatsPayload')\nexport const toPayloadStatsPayload: ReturnType<typeof zodToFactory<PayloadStatsPayload>> = zodToFactory(PayloadStatsPayloadZod, 'toPayloadStatsPayload')\n", "import {\n zodAsFactory, zodIsFactory, zodToFactory,\n} from '@xylabs/sdk-js'\nimport {\n asSchema, PayloadZodOfSchema, QueryFieldsZod,\n} from '@xyo-network/sdk-protocol-js'\nimport * as z from 'zod/mini'\n\nimport { PayloadStatsDivinerSchema } from './Schema.ts'\n\nexport const PayloadStatsQuerySchema: string & {\n readonly __schema: true\n} = asSchema(`${PayloadStatsDivinerSchema}.query`, true)\nexport type PayloadStatsQuerySchema = typeof PayloadStatsQuerySchema\n\nexport const PayloadStatsQueryPayloadZod: z.ZodMiniObject<\n & { schema: z.ZodMiniLiteral<PayloadStatsQuerySchema> }\n & (typeof QueryFieldsZod)['shape'],\n z.core.$strip\n> = z.extend(PayloadZodOfSchema(PayloadStatsQuerySchema), { ...QueryFieldsZod.shape })\n\nexport type PayloadStatsQueryPayload = z.infer<typeof PayloadStatsQueryPayloadZod>\n\nexport const isPayloadStatsQueryPayload: ReturnType<typeof zodIsFactory<PayloadStatsQueryPayload>> = zodIsFactory(PayloadStatsQueryPayloadZod)\nexport const asPayloadStatsQueryPayload: ReturnType<typeof zodAsFactory<PayloadStatsQueryPayload>> = zodAsFactory(PayloadStatsQueryPayloadZod, 'asPayloadStatsQueryPayload')\nexport const toPayloadStatsQueryPayload: ReturnType<typeof zodToFactory<PayloadStatsQueryPayload>> = zodToFactory(PayloadStatsQueryPayloadZod, 'toPayloadStatsQueryPayload')\n"],
5
+ "mappings": ";AAAA;AAAA,EACE;AAAA,EAAc;AAAA,EAAc;AAAA,OACvB;AAEP,SAAS,wBAAwB;AACjC,SAAS,YAAAA,iBAA8B;AACvC,YAAY,OAAO;;;ACNnB,SAAS,gBAAgB;AAElB,IAAM,4BAET,SAAS,qCAAqC,IAAI;;;ADM/C,IAAM,kCAETC,UAAS,GAAG,yBAAyB,WAAW,IAAI;AAGjD,IAAM,+BAKP,SAAO,kBAAkB,EAAE,QAAU,UAAQ,+BAA+B,EAAE,CAAC;AAI9E,IAAM,8BAA8F,aAAa,4BAA4B;AAC7I,IAAM,8BAA8F,aAAa,8BAA8B,6BAA6B;AAC5K,IAAM,8BAA8F,aAAa,8BAA8B,6BAA6B;;;AE1BnL;AAAA,EACE,gBAAAC;AAAA,EAAc,gBAAAC;AAAA,EAAc,gBAAAC;AAAA,OACvB;AACP,SAAS,0BAA0B;AACnC,YAAYC,QAAO;AAIZ,IAAM,yBAGS,UAAO,mBAAmB,yBAAyB,GAAG,EAAE,OAAS,UAAO,EAAE,CAAC;AAI1F,IAAM,wBAA8EC,cAAa,sBAAsB;AACvH,IAAM,wBAA8EC,cAAa,wBAAwB,uBAAuB;AAChJ,IAAM,wBAA8EC,cAAa,wBAAwB,uBAAuB;;;ACjBvJ;AAAA,EACE,gBAAAC;AAAA,EAAc,gBAAAC;AAAA,EAAc,gBAAAC;AAAA,OACvB;AACP;AAAA,EACE,YAAAC;AAAA,EAAU,sBAAAC;AAAA,EAAoB;AAAA,OACzB;AACP,YAAYC,QAAO;AAIZ,IAAM,0BAETC,UAAS,GAAG,yBAAyB,UAAU,IAAI;AAGhD,IAAM,8BAIP,UAAOC,oBAAmB,uBAAuB,GAAG,EAAE,GAAG,eAAe,MAAM,CAAC;AAI9E,IAAM,6BAAwFC,cAAa,2BAA2B;AACtI,IAAM,6BAAwFC,cAAa,6BAA6B,4BAA4B;AACpK,IAAM,6BAAwFC,cAAa,6BAA6B,4BAA4B;",
6
+ "names": ["asSchema", "asSchema", "zodAsFactory", "zodIsFactory", "zodToFactory", "z", "zodIsFactory", "zodAsFactory", "zodToFactory", "zodAsFactory", "zodIsFactory", "zodToFactory", "asSchema", "PayloadZodOfSchema", "z", "asSchema", "PayloadZodOfSchema", "zodIsFactory", "zodAsFactory", "zodToFactory"]
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xyo-network/diviner-payload-stats",
3
- "version": "6.0.4",
3
+ "version": "7.0.0",
4
4
  "description": "Primary SDK for using XYO Protocol 2.0",
5
5
  "homepage": "https://xyo.network",
6
6
  "bugs": {
@@ -46,30 +46,28 @@
46
46
  "README.md"
47
47
  ],
48
48
  "dependencies": {
49
- "@xyo-network/diviner-model": "~6.0.4",
50
- "@xyo-network/module-model": "~6.0.4",
51
- "@xyo-network/diviner-abstract": "~6.0.4"
49
+ "@xyo-network/diviner-abstract": "~7.0.0",
50
+ "@xyo-network/diviner-model": "~7.0.0",
51
+ "@xyo-network/module-model": "~7.0.0"
52
52
  },
53
53
  "devDependencies": {
54
54
  "@bitauth/libauth": "~3.0.0",
55
55
  "@metamask/providers": "^22.1.1",
56
56
  "@noble/post-quantum": "~0.6.1",
57
57
  "@opentelemetry/api": "^1.9.1",
58
- "@opentelemetry/sdk-trace-base": "^2.7.1",
58
+ "@opentelemetry/sdk-trace-base": "^2.8.0",
59
59
  "@scure/base": "~2.2.0",
60
60
  "@scure/bip39": "~2.2.0",
61
- "@xylabs/geo": "^6.0.8",
62
- "@xylabs/sdk-js": "^6.0.8",
63
- "@xylabs/threads": "^6.0.8",
64
- "@xylabs/toolchain": "~8.1.16",
65
- "@xylabs/tsconfig": "~8.1.16",
66
- "@xyo-network/sdk-protocol-js": "~6.0.9",
61
+ "@xylabs/geo": "^6.1.1",
62
+ "@xylabs/sdk-js": "^6.1.1",
63
+ "@xylabs/threads": "^6.1.1",
64
+ "@xylabs/toolchain": "^8.1.20",
65
+ "@xylabs/tsconfig": "^8.1.20",
66
+ "@xyo-network/sdk-protocol-js": "~7.0",
67
67
  "ajv": "^8.20.0",
68
68
  "async-mutex": "^0.5.0",
69
- "bn.js": "^5.2.3",
70
- "buffer": "^6.0.3",
71
69
  "debug": "~4.4.3",
72
- "eslint": "^10.4.1",
70
+ "eslint": "^10.5.0",
73
71
  "ethers": "^6.16.0",
74
72
  "hash-wasm": "~4.12.0",
75
73
  "idb": "^8.0.3",
@@ -90,11 +88,9 @@
90
88
  "@xylabs/geo": "^6.0",
91
89
  "@xylabs/sdk-js": "^6.0",
92
90
  "@xylabs/threads": "^6.0",
93
- "@xyo-network/sdk-protocol-js": "~6.0",
91
+ "@xyo-network/sdk-protocol-js": "^7.0",
94
92
  "ajv": "^8.20",
95
93
  "async-mutex": "^0.5",
96
- "bn.js": "^5.2",
97
- "buffer": "^6.0",
98
94
  "debug": "~4.4",
99
95
  "ethers": "^6.16",
100
96
  "hash-wasm": "~4.12",
@@ -104,6 +100,9 @@
104
100
  "webextension-polyfill": "^0.12",
105
101
  "zod": "^4.4"
106
102
  },
103
+ "engines": {
104
+ "node": "^24"
105
+ },
107
106
  "publishConfig": {
108
107
  "access": "public"
109
108
  }