@xyo-network/diviner-range 5.3.22 → 5.3.25

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xyo-network/diviner-range",
3
- "version": "5.3.22",
3
+ "version": "5.3.25",
4
4
  "description": "Primary SDK for using XYO Protocol 2.0",
5
5
  "homepage": "https://xyo.network",
6
6
  "bugs": {
@@ -30,44 +30,40 @@
30
30
  "types": "dist/neutral/index.d.ts",
31
31
  "files": [
32
32
  "dist",
33
- "src",
34
33
  "!**/*.bench.*",
35
34
  "!**/*.spec.*",
36
35
  "!**/*.test.*",
37
36
  "README.md"
38
37
  ],
39
38
  "dependencies": {
40
- "@xyo-network/diviner-abstract": "~5.3.22",
41
- "@xyo-network/diviner-model": "~5.3.22",
42
- "@xyo-network/diviner-range-model": "~5.3.22",
43
- "@xyo-network/module-model": "~5.3.22",
44
- "@xyo-network/payload-model": "~5.3.22"
39
+ "@xyo-network/diviner-model": "~5.3.25",
40
+ "@xyo-network/diviner-abstract": "~5.3.25",
41
+ "@xyo-network/diviner-range-model": "~5.3.25",
42
+ "@xyo-network/module-model": "~5.3.25",
43
+ "@xyo-network/payload-model": "~5.3.25"
45
44
  },
46
45
  "devDependencies": {
47
46
  "@opentelemetry/api": "^1.9.1",
48
47
  "@types/node": "^25.5.0",
49
- "@xylabs/sdk-js": "^5.0.91",
50
- "@xylabs/ts-scripts-common": "~7.6.8",
51
- "@xylabs/ts-scripts-yarn3": "~7.6.8",
52
- "@xylabs/tsconfig": "~7.6.8",
53
- "@xylabs/vitest-extended": "~5.0.91",
54
- "@xyo-network/diviner-abstract": "~5.3.22",
55
- "@xyo-network/diviner-model": "~5.3.22",
56
- "@xyo-network/diviner-range-model": "~5.3.22",
57
- "@xyo-network/module-model": "~5.3.22",
58
- "@xyo-network/payload-model": "~5.3.22",
48
+ "@xylabs/sdk-js": "^5.0.93",
49
+ "@xylabs/ts-scripts-common": "~7.6.16",
50
+ "@xylabs/ts-scripts-pnpm": "~7.6.16",
51
+ "@xylabs/tsconfig": "~7.6.16",
52
+ "@xylabs/vitest-extended": "~5.0.93",
59
53
  "acorn": "^8.16.0",
60
54
  "axios": "^1.14.0",
61
- "cosmiconfig": "^9.0.1",
62
- "esbuild": "^0.27.4",
63
- "eslint": "^10.1.0",
55
+ "esbuild": "^0.28.0",
64
56
  "ethers": "^6.16.0",
65
- "rollup": "^4.60.1",
66
57
  "tslib": "^2.8.1",
67
58
  "typescript": "~5.9.3",
68
59
  "vite": "^8.0.3",
69
60
  "vitest": "~4.1.2",
70
- "zod": "^4.3.6"
61
+ "zod": "^4.3.6",
62
+ "@xyo-network/diviner-model": "~5.3.25",
63
+ "@xyo-network/diviner-abstract": "~5.3.25",
64
+ "@xyo-network/diviner-range-model": "~5.3.25",
65
+ "@xyo-network/payload-model": "~5.3.25",
66
+ "@xyo-network/module-model": "~5.3.25"
71
67
  },
72
68
  "peerDependencies": {
73
69
  "@xylabs/sdk-js": "^5",
@@ -78,4 +74,4 @@
78
74
  "publishConfig": {
79
75
  "access": "public"
80
76
  }
81
- }
77
+ }
package/src/Diviner.ts DELETED
@@ -1,78 +0,0 @@
1
- import { hexFrom } from '@xylabs/sdk-js'
2
- import { AbstractDiviner } from '@xyo-network/diviner-abstract'
3
- import type { DivinerParams } from '@xyo-network/diviner-model'
4
- import type {
5
- BigIntPayload,
6
- BigIntRangePayload,
7
- NumberPayload,
8
- NumberRangePayload,
9
- RangeDivinerConfig,
10
- RangePayload,
11
- } from '@xyo-network/diviner-range-model'
12
- import {
13
- BigIntSchema,
14
- isBigIntRangePayload,
15
- isNumberRangePayload,
16
- isRangePayload,
17
- NumberSchema,
18
- RangeDivinerConfigSchema,
19
- } from '@xyo-network/diviner-range-model'
20
- import type { AnyConfigSchema } from '@xyo-network/module-model'
21
- import type { Schema } from '@xyo-network/payload-model'
22
-
23
- export type RangeDivinerParams = DivinerParams<AnyConfigSchema<RangeDivinerConfig>>
24
-
25
- export class RangeDiviner<TParams extends RangeDivinerParams = RangeDivinerParams> extends AbstractDiviner<
26
- TParams,
27
- RangePayload,
28
- NumberPayload | BigIntPayload
29
- > {
30
- static override readonly configSchemas: Schema[] = [...super.configSchemas, RangeDivinerConfigSchema]
31
- static override readonly defaultConfigSchema: Schema = RangeDivinerConfigSchema
32
-
33
- get ranges() {
34
- return this.config.ranges
35
- }
36
-
37
- protected static generateBigIntRange(range: BigIntRangePayload): BigIntPayload[] {
38
- const result: BigIntPayload[] = []
39
- const count = BigInt(range.count)
40
- const start = BigInt(hexFrom(range.start, { prefix: true }))
41
- for (let i = 0n; i < count; i++) {
42
- const payload: BigIntPayload = {
43
- schema: BigIntSchema,
44
- value: hexFrom(start + i, { prefix: true }),
45
- }
46
- result.push(payload)
47
- }
48
- return result
49
- }
50
-
51
- protected static generateNumberRange(range: NumberRangePayload): NumberPayload[] {
52
- const result: NumberPayload[] = []
53
- const count = range.count
54
- const start = range.start
55
- for (let i = 0; i < count; i++) {
56
- const payload: NumberPayload = {
57
- schema: NumberSchema,
58
- value: start + i,
59
- }
60
- result.push(payload)
61
- }
62
- return result
63
- }
64
-
65
- protected override divineHandler(ranges?: RangePayload[]): (NumberPayload | BigIntPayload)[] {
66
- const result: (BigIntPayload | NumberPayload)[] = []
67
- for (const range of ranges?.filter(isRangePayload) ?? []) {
68
- if (isBigIntRangePayload(range)) {
69
- result.push(...RangeDiviner.generateBigIntRange(range))
70
- } else if (isNumberRangePayload(range)) {
71
- result.push(...RangeDiviner.generateNumberRange(range))
72
- } else {
73
- throw new Error(`Only number and bigint ranges are supported: ${JSON.stringify(range, null, 2)}`)
74
- }
75
- }
76
- return result
77
- }
78
- }
package/src/index.ts DELETED
@@ -1,2 +0,0 @@
1
- export * from './Diviner.ts'
2
- export * from '@xyo-network/diviner-range-model'