@xyo-network/xl1-protocol 1.13.6 → 1.13.7
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/dist/neutral/block/AllowedBlockPayload.d.ts +16 -9
- package/dist/neutral/block/AllowedBlockPayload.d.ts.map +1 -1
- package/dist/neutral/index.mjs +165 -147
- package/dist/neutral/index.mjs.map +1 -1
- package/dist/neutral/model/BlockNumber/BlockNumber.d.ts +2 -2
- package/dist/neutral/model/BlockNumber/BlockNumber.d.ts.map +1 -1
- package/dist/neutral/model/BlockNumber/EthBlockNumber.d.ts +2 -2
- package/dist/neutral/model/BlockNumber/EthBlockNumber.d.ts.map +1 -1
- package/dist/neutral/model/BlockNumber/XL1BlockNumber.d.ts +2 -2
- package/dist/neutral/model/BlockNumber/XL1BlockNumber.d.ts.map +1 -1
- package/dist/neutral/model/BlockRange/BlockRange.d.ts +2 -2
- package/dist/neutral/model/BlockRange/BlockRange.d.ts.map +1 -1
- package/dist/neutral/model/BlockRange/EthBlockRange.d.ts +2 -2
- package/dist/neutral/model/BlockRange/EthBlockRange.d.ts.map +1 -1
- package/dist/neutral/model/BlockRange/Range.d.ts +2 -2
- package/dist/neutral/model/BlockRange/Range.d.ts.map +1 -1
- package/dist/neutral/model/BlockRange/XL1BlockRange.d.ts +2 -2
- package/dist/neutral/model/BlockRange/XL1BlockRange.d.ts.map +1 -1
- package/dist/neutral/model/zod/Config.d.ts +6 -0
- package/dist/neutral/model/zod/Config.d.ts.map +1 -0
- package/dist/neutral/model/zod/index.d.ts +1 -0
- package/dist/neutral/model/zod/index.d.ts.map +1 -1
- package/dist/neutral/model/zod/zodAsFactory.d.ts +3 -3
- package/dist/neutral/model/zod/zodAsFactory.d.ts.map +1 -1
- package/dist/neutral/model/zod/zodToFactory.d.ts +2 -2
- package/dist/neutral/model/zod/zodToFactory.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/block/AllowedBlockPayload.ts +7 -10
- package/src/model/BlockNumber/BlockNumber.ts +2 -2
- package/src/model/BlockNumber/EthBlockNumber.ts +2 -2
- package/src/model/BlockNumber/XL1BlockNumber.ts +2 -2
- package/src/model/BlockRange/BlockRange.ts +2 -2
- package/src/model/BlockRange/EthBlockRange.ts +2 -2
- package/src/model/BlockRange/Range.ts +2 -2
- package/src/model/BlockRange/XL1BlockRange.ts +2 -2
- package/src/model/zod/Config.ts +7 -0
- package/src/model/zod/index.ts +1 -0
- package/src/model/zod/zodAsFactory.ts +28 -4
- package/src/model/zod/zodToFactory.ts +2 -2
|
@@ -1,17 +1,24 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { WithStorageMeta } from '@xyo-network/payload-model';
|
|
2
2
|
import type { SchemaPayload } from '@xyo-network/schema-payload-plugin';
|
|
3
3
|
import z from 'zod';
|
|
4
4
|
import type { BridgeDestinationObservation, BridgeIntent, BridgeSourceObservation, ChainStakeIntent, HashPayload, StepComplete, TimePayload, Transfer } from '../payload/index.ts';
|
|
5
5
|
import { type TransactionBoundWitness } from '../transaction/index.ts';
|
|
6
6
|
export type AllowedBlockPayload = Transfer | BridgeDestinationObservation | BridgeIntent | BridgeSourceObservation | ChainStakeIntent | HashPayload | SchemaPayload | StepComplete | TimePayload | TransactionBoundWitness;
|
|
7
|
-
export declare const AllowedBlockPayloadSchemas:
|
|
8
|
-
export
|
|
9
|
-
|
|
7
|
+
export declare const AllowedBlockPayloadSchemas: ("network.xyo.chain.bridge.observation.destination" | "network.xyo.chain.bridge.intent" | "network.xyo.chain.bridge.observation.source" | "network.xyo.chain.stake.intent" | "network.xyo.hash" | "network.xyo.chain.step.complete" | "network.xyo.time" | "network.xyo.transfer" | "network.xyo.boundwitness" | "network.xyo.schema")[];
|
|
8
|
+
export declare const AllowedBlockPayloadSchemaZod: z.ZodEnum<{
|
|
9
|
+
"network.xyo.chain.bridge.observation.destination": "network.xyo.chain.bridge.observation.destination";
|
|
10
|
+
"network.xyo.chain.bridge.intent": "network.xyo.chain.bridge.intent";
|
|
11
|
+
"network.xyo.chain.bridge.observation.source": "network.xyo.chain.bridge.observation.source";
|
|
12
|
+
"network.xyo.chain.stake.intent": "network.xyo.chain.stake.intent";
|
|
13
|
+
"network.xyo.hash": "network.xyo.hash";
|
|
14
|
+
"network.xyo.chain.step.complete": "network.xyo.chain.step.complete";
|
|
15
|
+
"network.xyo.time": "network.xyo.time";
|
|
16
|
+
"network.xyo.transfer": "network.xyo.transfer";
|
|
17
|
+
"network.xyo.boundwitness": "network.xyo.boundwitness";
|
|
18
|
+
"network.xyo.schema": "network.xyo.schema";
|
|
19
|
+
}>;
|
|
20
|
+
export type AllowedBlockPayloadSchema = z.infer<typeof AllowedBlockPayloadSchemaZod>;
|
|
21
|
+
export declare const isAllowedBlockPayloadSchema: (value: unknown) => value is "network.xyo.chain.bridge.observation.destination" | "network.xyo.chain.bridge.intent" | "network.xyo.chain.bridge.observation.source" | "network.xyo.chain.stake.intent" | "network.xyo.hash" | "network.xyo.chain.step.complete" | "network.xyo.time" | "network.xyo.transfer" | "network.xyo.boundwitness" | "network.xyo.schema";
|
|
10
22
|
export declare const isAllowedBlockPayload: (value: unknown) => value is AllowedBlockPayload;
|
|
11
23
|
export declare const isAllowedBlockPayloadWithHashMeta: (value: unknown) => value is WithStorageMeta<AllowedBlockPayload>;
|
|
12
|
-
export declare const AllowedBlockPayloadZod: z.ZodObject<{
|
|
13
|
-
schema: z.ZodEnum<{
|
|
14
|
-
[x: string]: string;
|
|
15
|
-
}>;
|
|
16
|
-
}, z.z.core.$strip>;
|
|
17
24
|
//# sourceMappingURL=AllowedBlockPayload.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AllowedBlockPayload.d.ts","sourceRoot":"","sources":["../../../src/block/AllowedBlockPayload.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"AllowedBlockPayload.d.ts","sourceRoot":"","sources":["../../../src/block/AllowedBlockPayload.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAU,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAEzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA;AAEvE,OAAO,CAAC,MAAM,KAAK,CAAA;AAGnB,OAAO,KAAK,EACV,4BAA4B,EAAE,YAAY,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EACxI,MAAM,qBAAqB,CAAA;AAM5B,OAAO,EAA6B,KAAK,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AAEjG,MAAM,MAAM,mBAAmB,GAC3B,QAAQ,GACN,4BAA4B,GAC5B,YAAY,GACZ,uBAAuB,GACvB,gBAAgB,GAChB,WAAW,GACX,aAAa,GACb,YAAY,GACZ,WAAW,GACX,uBAAuB,CAAA;AAE7B,eAAO,MAAM,0BAA0B,0UAWnB,CAAA;AAEpB,eAAO,MAAM,4BAA4B;;;;;;;;;;;EAAqC,CAAA;AAC9E,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAA;AACpF,eAAO,MAAM,2BAA2B,mWAAwE,CAAA;AAEhH,eAAO,MAAM,qBAAqB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,mBAU/D,CAAA;AAED,eAAO,MAAM,iCAAiC,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,eAAe,CAAC,mBAAmB,CAE9G,CAAA"}
|
package/dist/neutral/index.mjs
CHANGED
|
@@ -285,10 +285,166 @@ var XL1Amount = class _XL1Amount {
|
|
|
285
285
|
|
|
286
286
|
// src/block/AllowedBlockPayload.ts
|
|
287
287
|
import { BoundWitnessSchema } from "@xyo-network/boundwitness-model";
|
|
288
|
-
import { isHashMeta as isHashMeta3
|
|
288
|
+
import { isHashMeta as isHashMeta3 } from "@xyo-network/payload-model";
|
|
289
289
|
import { isSchemaPayload, SchemaSchema } from "@xyo-network/schema-payload-plugin";
|
|
290
290
|
import z13 from "zod";
|
|
291
291
|
|
|
292
|
+
// src/model/BlockNumber/BlockNumber.ts
|
|
293
|
+
import z3 from "zod";
|
|
294
|
+
|
|
295
|
+
// src/model/zod/zodAsFactory.ts
|
|
296
|
+
import { assertError } from "@xylabs/hex";
|
|
297
|
+
function zodAsFactory(zod, name) {
|
|
298
|
+
function asFunc(value, assert) {
|
|
299
|
+
const result = zod.safeParse(value);
|
|
300
|
+
if (result.success) {
|
|
301
|
+
return result.data;
|
|
302
|
+
}
|
|
303
|
+
let assertConfig;
|
|
304
|
+
switch (typeof assert) {
|
|
305
|
+
case "string": {
|
|
306
|
+
assertConfig = `[${name}][${value}] ${assert}`;
|
|
307
|
+
break;
|
|
308
|
+
}
|
|
309
|
+
case "object": {
|
|
310
|
+
assertConfig = `[${name}][${assert.name}][${value}] ${result.error.message}`;
|
|
311
|
+
break;
|
|
312
|
+
}
|
|
313
|
+
case "boolean": {
|
|
314
|
+
assertConfig = `[${name}][${value}] ${result.error.message}`;
|
|
315
|
+
break;
|
|
316
|
+
}
|
|
317
|
+
case "function": {
|
|
318
|
+
assertConfig = assert(value, result.error.message);
|
|
319
|
+
break;
|
|
320
|
+
}
|
|
321
|
+
default: {
|
|
322
|
+
assertConfig = true;
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
return assertError(value, assertConfig, result.error.message);
|
|
326
|
+
}
|
|
327
|
+
return asFunc;
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
// src/model/zod/zodIsFactory.ts
|
|
331
|
+
function zodIsFactory(zod) {
|
|
332
|
+
return (value) => zod.safeParse(value).success;
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
// src/model/zod/zodToFactory.ts
|
|
336
|
+
function zodToFactory(zod, name) {
|
|
337
|
+
return zodAsFactory(zod, name);
|
|
338
|
+
}
|
|
339
|
+
|
|
340
|
+
// src/model/BlockNumber/Numberish.ts
|
|
341
|
+
import z2 from "zod";
|
|
342
|
+
var NumberishZod = z2.union([z2.number(), z2.string(), z2.bigint()]).transform((v) => typeof v === "bigint" ? Number(v) : typeof v === "string" ? Number(v) : v).pipe(z2.number());
|
|
343
|
+
|
|
344
|
+
// src/model/BlockNumber/BlockNumber.ts
|
|
345
|
+
var BlockNumberZod = z3.number().transform((v) => v);
|
|
346
|
+
var NumberishBlockNumberZod = NumberishZod.transform((v) => v);
|
|
347
|
+
var asBlockNumber = zodAsFactory(BlockNumberZod, "asBlockNumber");
|
|
348
|
+
var toBlockNumber = zodToFactory(NumberishBlockNumberZod, "toBlockNumber");
|
|
349
|
+
var BLOCK_NUMBER_ZERO = asBlockNumber(0);
|
|
350
|
+
|
|
351
|
+
// src/model/BlockNumber/EthBlockNumber.ts
|
|
352
|
+
import z4 from "zod";
|
|
353
|
+
var EthBlockNumberZod = z4.number().transform((v) => v);
|
|
354
|
+
var NumberishEthBlockNumberZod = NumberishBlockNumberZod.transform((v) => v);
|
|
355
|
+
var asEthBlockNumber = zodAsFactory(EthBlockNumberZod, "asEthBlockNumber");
|
|
356
|
+
var toEthBlockNumber = zodToFactory(NumberishEthBlockNumberZod, "toEthBlockNumber");
|
|
357
|
+
var ETH_BLOCK_NUMBER_ZERO = asEthBlockNumber(0);
|
|
358
|
+
|
|
359
|
+
// src/model/BlockNumber/XL1BlockNumber.ts
|
|
360
|
+
import z5 from "zod";
|
|
361
|
+
var XL1BlockNumberZod = z5.number().transform((v) => v);
|
|
362
|
+
var NumberishXL1BlockNumberZod = NumberishBlockNumberZod.transform((v) => v);
|
|
363
|
+
var asXL1BlockNumber = zodAsFactory(XL1BlockNumberZod, "asXL1BlockNumber");
|
|
364
|
+
var toXL1BlockNumber = zodToFactory(NumberishXL1BlockNumberZod, "toXL1BlockNumber");
|
|
365
|
+
var XL1_BLOCK_NUMBER_ZERO = asXL1BlockNumber(0);
|
|
366
|
+
|
|
367
|
+
// src/model/BlockRange/BlockRange.ts
|
|
368
|
+
import { assertError as assertError2 } from "@xylabs/hex";
|
|
369
|
+
import { isDefined } from "@xylabs/typeof";
|
|
370
|
+
import z6 from "zod";
|
|
371
|
+
var BlockRangeZod = z6.tuple([BlockNumberZod, BlockNumberZod]);
|
|
372
|
+
var NumberishBlockRangeZod = z6.tuple([NumberishBlockNumberZod, NumberishBlockNumberZod]);
|
|
373
|
+
var asBlockRange = zodAsFactory(BlockRangeZod, "BlockRange");
|
|
374
|
+
var toBlockRange = zodToFactory(NumberishBlockRangeZod, "BlockRange");
|
|
375
|
+
var toBlockNumberKey = (range) => `${range[0]}|${range[1]}`;
|
|
376
|
+
function fromBlockNumberKey(key, assert) {
|
|
377
|
+
const [start, end] = key.split("|").map((v) => asBlockNumber(Number(v)));
|
|
378
|
+
const result = isDefined(start) && isDefined(end) ? [start, end] : void 0;
|
|
379
|
+
return assertError2(result, assert, `Invalid BlockRangeKey: ${key}`);
|
|
380
|
+
}
|
|
381
|
+
|
|
382
|
+
// src/model/BlockRange/EthBlockRange.ts
|
|
383
|
+
import { assertError as assertError3 } from "@xylabs/hex";
|
|
384
|
+
import { isDefined as isDefined2 } from "@xylabs/typeof";
|
|
385
|
+
import z7 from "zod";
|
|
386
|
+
var EthBlockRangeZod = z7.tuple([EthBlockNumberZod, EthBlockNumberZod]);
|
|
387
|
+
var NumberishEthBlockRangeZod = z7.tuple([NumberishEthBlockNumberZod, NumberishEthBlockNumberZod]);
|
|
388
|
+
var asEthBlockRange = zodAsFactory(EthBlockRangeZod, "EthBlockRange");
|
|
389
|
+
var toEthBlockRange = zodToFactory(NumberishEthBlockRangeZod, "EthBlockRange");
|
|
390
|
+
var toEthBlockNumberKey = (range) => `${range[0]}|${range[1]}`;
|
|
391
|
+
function fromEthBlockNumberKey(key, assert) {
|
|
392
|
+
const [start, end] = key.split("|").map((v) => asEthBlockNumber(Number(v)));
|
|
393
|
+
const result = isDefined2(start) && isDefined2(end) ? [start, end] : void 0;
|
|
394
|
+
return assertError3(result, assert, `Invalid EthBlockRangeKey: ${key}`);
|
|
395
|
+
}
|
|
396
|
+
|
|
397
|
+
// src/model/BlockRange/Range.ts
|
|
398
|
+
import z8 from "zod";
|
|
399
|
+
var RangeZod = z8.tuple([z8.number(), z8.number()]);
|
|
400
|
+
var isRange = zodIsFactory(RangeZod);
|
|
401
|
+
var asRange = zodAsFactory(RangeZod, "Range");
|
|
402
|
+
var toRange = zodToFactory(RangeZod, "Range");
|
|
403
|
+
|
|
404
|
+
// src/model/BlockRange/XL1BlockRange.ts
|
|
405
|
+
import { assertError as assertError4 } from "@xylabs/hex";
|
|
406
|
+
import { isDefined as isDefined3 } from "@xylabs/typeof";
|
|
407
|
+
import z9 from "zod";
|
|
408
|
+
var XL1BlockRangeZod = z9.tuple([XL1BlockNumberZod, XL1BlockNumberZod]);
|
|
409
|
+
var NumberishXL1BlockRangeZod = z9.tuple([NumberishXL1BlockNumberZod, NumberishXL1BlockNumberZod]);
|
|
410
|
+
var asXL1BlockRange = zodAsFactory(XL1BlockRangeZod, "XL1BlockRange");
|
|
411
|
+
var toXL1BlockRange = zodToFactory(NumberishXL1BlockRangeZod, "XL1BlockRange");
|
|
412
|
+
var toXL1BlockNumberKey = (range) => `${range[0]}|${range[1]}`;
|
|
413
|
+
function fromXL1BlockNumberKey(key, assert) {
|
|
414
|
+
const [start, end] = key.split("|").map((v) => asXL1BlockNumber(Number(v)));
|
|
415
|
+
const result = isDefined3(start) && isDefined3(end) ? [start, end] : void 0;
|
|
416
|
+
return assertError4(result, assert, `Invalid XL1BlockRangeKey: ${key}`);
|
|
417
|
+
}
|
|
418
|
+
|
|
419
|
+
// src/model/StepIdentity.ts
|
|
420
|
+
import { isUndefined } from "@xylabs/typeof";
|
|
421
|
+
import * as z10 from "zod";
|
|
422
|
+
var StepIdentityZod = z10.object({
|
|
423
|
+
block: z10.number().int().nonnegative(),
|
|
424
|
+
step: z10.number().int().nonnegative()
|
|
425
|
+
});
|
|
426
|
+
function tryParseInt(value) {
|
|
427
|
+
if (value === "") return void 0;
|
|
428
|
+
const num = Number(value);
|
|
429
|
+
return Number.isInteger(num) ? num : void 0;
|
|
430
|
+
}
|
|
431
|
+
var asStepIdentity = (stepIdentityString) => {
|
|
432
|
+
try {
|
|
433
|
+
const [blockNumberString, stepString] = stepIdentityString.split("|");
|
|
434
|
+
if (isUndefined(blockNumberString) || isUndefined(stepString)) {
|
|
435
|
+
return void 0;
|
|
436
|
+
}
|
|
437
|
+
const step = tryParseInt(stepString);
|
|
438
|
+
const block = toXL1BlockNumber(blockNumberString);
|
|
439
|
+
if (isUndefined(block) || isUndefined(step)) {
|
|
440
|
+
return void 0;
|
|
441
|
+
}
|
|
442
|
+
return { block, step };
|
|
443
|
+
} catch {
|
|
444
|
+
return void 0;
|
|
445
|
+
}
|
|
446
|
+
};
|
|
447
|
+
|
|
292
448
|
// src/payload/elevatable/Bridge/BridgeDestinationObservation.ts
|
|
293
449
|
import { HexZod as HexZod2 } from "@xylabs/hex";
|
|
294
450
|
import { AsObjectFactory } from "@xylabs/object";
|
|
@@ -296,8 +452,8 @@ import { isPayloadOfZodType } from "@xyo-network/payload-model";
|
|
|
296
452
|
|
|
297
453
|
// src/payload/elevatable/Bridge/BridgeDetails.ts
|
|
298
454
|
import { HexZod } from "@xylabs/hex";
|
|
299
|
-
import
|
|
300
|
-
var BridgeDetailsDestinationFieldsZod =
|
|
455
|
+
import z11 from "zod";
|
|
456
|
+
var BridgeDetailsDestinationFieldsZod = z11.object({
|
|
301
457
|
/**
|
|
302
458
|
* Destination network
|
|
303
459
|
*/
|
|
@@ -315,7 +471,7 @@ var BridgeDetailsDestinationFieldsZod = z2.object({
|
|
|
315
471
|
*/
|
|
316
472
|
destToken: HexZod.describe("The token being bridged to")
|
|
317
473
|
});
|
|
318
|
-
var BridgeDetailsSourceFieldsZod =
|
|
474
|
+
var BridgeDetailsSourceFieldsZod = z11.object({
|
|
319
475
|
/**
|
|
320
476
|
* Source network
|
|
321
477
|
*/
|
|
@@ -354,13 +510,13 @@ var asBridgeDestinationObservation = AsObjectFactory.create(isBridgeDestinationO
|
|
|
354
510
|
// src/payload/elevatable/Bridge/BridgeIntent.ts
|
|
355
511
|
import { AsObjectFactory as AsObjectFactory2 } from "@xylabs/object";
|
|
356
512
|
import { isPayloadOfZodType as isPayloadOfZodType2 } from "@xyo-network/payload-model";
|
|
357
|
-
import
|
|
513
|
+
import z12 from "zod";
|
|
358
514
|
var BridgeIntentSchema = "network.xyo.chain.bridge.intent";
|
|
359
515
|
var BridgeIntentFieldsZod = BridgeDetailsFieldsZod.extend({
|
|
360
516
|
/**
|
|
361
517
|
* Unique identifier for replay protection
|
|
362
518
|
*/
|
|
363
|
-
nonce:
|
|
519
|
+
nonce: z12.string().describe("Unique identifier for replay protection")
|
|
364
520
|
});
|
|
365
521
|
var isBridgeIntent = isPayloadOfZodType2(
|
|
366
522
|
BridgeIntentFieldsZod,
|
|
@@ -450,142 +606,6 @@ var asTransfer = AsObjectFactory8.create(isTransfer);
|
|
|
450
606
|
// src/payload/StepIdentityPayload.ts
|
|
451
607
|
import { AsObjectFactory as AsObjectFactory9 } from "@xylabs/object";
|
|
452
608
|
import { isPayloadOfZodType as isPayloadOfZodType4 } from "@xyo-network/payload-model";
|
|
453
|
-
|
|
454
|
-
// src/model/BlockNumber/BlockNumber.ts
|
|
455
|
-
import z5 from "zod";
|
|
456
|
-
|
|
457
|
-
// src/model/zod/zodAsFactory.ts
|
|
458
|
-
import { assertError } from "@xylabs/hex";
|
|
459
|
-
function zodAsFactory(zod) {
|
|
460
|
-
function asFunc(value, assert) {
|
|
461
|
-
const result = zod.safeParse(value);
|
|
462
|
-
if (result.success) {
|
|
463
|
-
return result.data;
|
|
464
|
-
}
|
|
465
|
-
return assertError(value, assert, result.error.message);
|
|
466
|
-
}
|
|
467
|
-
return asFunc;
|
|
468
|
-
}
|
|
469
|
-
|
|
470
|
-
// src/model/zod/zodIsFactory.ts
|
|
471
|
-
function zodIsFactory(zod) {
|
|
472
|
-
return (value) => zod.safeParse(value).success;
|
|
473
|
-
}
|
|
474
|
-
|
|
475
|
-
// src/model/zod/zodToFactory.ts
|
|
476
|
-
function zodToFactory(zod) {
|
|
477
|
-
return zodAsFactory(zod);
|
|
478
|
-
}
|
|
479
|
-
|
|
480
|
-
// src/model/BlockNumber/Numberish.ts
|
|
481
|
-
import z4 from "zod";
|
|
482
|
-
var NumberishZod = z4.union([z4.number(), z4.string(), z4.bigint()]).transform((v) => typeof v === "bigint" ? Number(v) : typeof v === "string" ? Number(v) : v).pipe(z4.number());
|
|
483
|
-
|
|
484
|
-
// src/model/BlockNumber/BlockNumber.ts
|
|
485
|
-
var BlockNumberZod = z5.number().transform((v) => v);
|
|
486
|
-
var NumberishBlockNumberZod = NumberishZod.transform((v) => v);
|
|
487
|
-
var asBlockNumber = zodAsFactory(BlockNumberZod);
|
|
488
|
-
var toBlockNumber = zodToFactory(NumberishBlockNumberZod);
|
|
489
|
-
var BLOCK_NUMBER_ZERO = asBlockNumber(0);
|
|
490
|
-
|
|
491
|
-
// src/model/BlockNumber/EthBlockNumber.ts
|
|
492
|
-
import z6 from "zod";
|
|
493
|
-
var EthBlockNumberZod = z6.number().transform((v) => v);
|
|
494
|
-
var NumberishEthBlockNumberZod = NumberishBlockNumberZod.transform((v) => v);
|
|
495
|
-
var asEthBlockNumber = zodAsFactory(EthBlockNumberZod);
|
|
496
|
-
var toEthBlockNumber = zodToFactory(NumberishEthBlockNumberZod);
|
|
497
|
-
var ETH_BLOCK_NUMBER_ZERO = asEthBlockNumber(0);
|
|
498
|
-
|
|
499
|
-
// src/model/BlockNumber/XL1BlockNumber.ts
|
|
500
|
-
import z7 from "zod";
|
|
501
|
-
var XL1BlockNumberZod = z7.number().transform((v) => v);
|
|
502
|
-
var NumberishXL1BlockNumberZod = NumberishBlockNumberZod.transform((v) => v);
|
|
503
|
-
var asXL1BlockNumber = zodAsFactory(XL1BlockNumberZod);
|
|
504
|
-
var toXL1BlockNumber = zodToFactory(NumberishXL1BlockNumberZod);
|
|
505
|
-
var XL1_BLOCK_NUMBER_ZERO = asXL1BlockNumber(0);
|
|
506
|
-
|
|
507
|
-
// src/model/BlockRange/BlockRange.ts
|
|
508
|
-
import { assertError as assertError2 } from "@xylabs/hex";
|
|
509
|
-
import { isDefined } from "@xylabs/typeof";
|
|
510
|
-
import z8 from "zod";
|
|
511
|
-
var BlockRangeZod = z8.tuple([BlockNumberZod, BlockNumberZod]);
|
|
512
|
-
var NumberishBlockRangeZod = z8.tuple([NumberishBlockNumberZod, NumberishBlockNumberZod]);
|
|
513
|
-
var asBlockRange = zodAsFactory(BlockRangeZod);
|
|
514
|
-
var toBlockRange = zodToFactory(NumberishBlockRangeZod);
|
|
515
|
-
var toBlockNumberKey = (range) => `${range[0]}|${range[1]}`;
|
|
516
|
-
function fromBlockNumberKey(key, assert) {
|
|
517
|
-
const [start, end] = key.split("|").map((v) => asBlockNumber(Number(v)));
|
|
518
|
-
const result = isDefined(start) && isDefined(end) ? [start, end] : void 0;
|
|
519
|
-
return assertError2(result, assert, `Invalid BlockRangeKey: ${key}`);
|
|
520
|
-
}
|
|
521
|
-
|
|
522
|
-
// src/model/BlockRange/EthBlockRange.ts
|
|
523
|
-
import { assertError as assertError3 } from "@xylabs/hex";
|
|
524
|
-
import { isDefined as isDefined2 } from "@xylabs/typeof";
|
|
525
|
-
import z9 from "zod";
|
|
526
|
-
var EthBlockRangeZod = z9.tuple([EthBlockNumberZod, EthBlockNumberZod]);
|
|
527
|
-
var NumberishEthBlockRangeZod = z9.tuple([NumberishEthBlockNumberZod, NumberishEthBlockNumberZod]);
|
|
528
|
-
var asEthBlockRange = zodAsFactory(EthBlockRangeZod);
|
|
529
|
-
var toEthBlockRange = zodToFactory(NumberishEthBlockRangeZod);
|
|
530
|
-
var toEthBlockNumberKey = (range) => `${range[0]}|${range[1]}`;
|
|
531
|
-
function fromEthBlockNumberKey(key, assert) {
|
|
532
|
-
const [start, end] = key.split("|").map((v) => asEthBlockNumber(Number(v)));
|
|
533
|
-
const result = isDefined2(start) && isDefined2(end) ? [start, end] : void 0;
|
|
534
|
-
return assertError3(result, assert, `Invalid EthBlockRangeKey: ${key}`);
|
|
535
|
-
}
|
|
536
|
-
|
|
537
|
-
// src/model/BlockRange/Range.ts
|
|
538
|
-
import z10 from "zod";
|
|
539
|
-
var RangeZod = z10.tuple([z10.number(), z10.number()]);
|
|
540
|
-
var isRange = zodIsFactory(RangeZod);
|
|
541
|
-
var asRange = zodAsFactory(RangeZod);
|
|
542
|
-
var toRange = zodToFactory(RangeZod);
|
|
543
|
-
|
|
544
|
-
// src/model/BlockRange/XL1BlockRange.ts
|
|
545
|
-
import { assertError as assertError4 } from "@xylabs/hex";
|
|
546
|
-
import { isDefined as isDefined3 } from "@xylabs/typeof";
|
|
547
|
-
import z11 from "zod";
|
|
548
|
-
var XL1BlockRangeZod = z11.tuple([XL1BlockNumberZod, XL1BlockNumberZod]);
|
|
549
|
-
var NumberishXL1BlockRangeZod = z11.tuple([NumberishXL1BlockNumberZod, NumberishXL1BlockNumberZod]);
|
|
550
|
-
var asXL1BlockRange = zodAsFactory(XL1BlockRangeZod);
|
|
551
|
-
var toXL1BlockRange = zodToFactory(NumberishXL1BlockRangeZod);
|
|
552
|
-
var toXL1BlockNumberKey = (range) => `${range[0]}|${range[1]}`;
|
|
553
|
-
function fromXL1BlockNumberKey(key, assert) {
|
|
554
|
-
const [start, end] = key.split("|").map((v) => asXL1BlockNumber(Number(v)));
|
|
555
|
-
const result = isDefined3(start) && isDefined3(end) ? [start, end] : void 0;
|
|
556
|
-
return assertError4(result, assert, `Invalid XL1BlockRangeKey: ${key}`);
|
|
557
|
-
}
|
|
558
|
-
|
|
559
|
-
// src/model/StepIdentity.ts
|
|
560
|
-
import { isUndefined } from "@xylabs/typeof";
|
|
561
|
-
import * as z12 from "zod";
|
|
562
|
-
var StepIdentityZod = z12.object({
|
|
563
|
-
block: z12.number().int().nonnegative(),
|
|
564
|
-
step: z12.number().int().nonnegative()
|
|
565
|
-
});
|
|
566
|
-
function tryParseInt(value) {
|
|
567
|
-
if (value === "") return void 0;
|
|
568
|
-
const num = Number(value);
|
|
569
|
-
return Number.isInteger(num) ? num : void 0;
|
|
570
|
-
}
|
|
571
|
-
var asStepIdentity = (stepIdentityString) => {
|
|
572
|
-
try {
|
|
573
|
-
const [blockNumberString, stepString] = stepIdentityString.split("|");
|
|
574
|
-
if (isUndefined(blockNumberString) || isUndefined(stepString)) {
|
|
575
|
-
return void 0;
|
|
576
|
-
}
|
|
577
|
-
const step = tryParseInt(stepString);
|
|
578
|
-
const block = toXL1BlockNumber(blockNumberString);
|
|
579
|
-
if (isUndefined(block) || isUndefined(step)) {
|
|
580
|
-
return void 0;
|
|
581
|
-
}
|
|
582
|
-
return { block, step };
|
|
583
|
-
} catch {
|
|
584
|
-
return void 0;
|
|
585
|
-
}
|
|
586
|
-
};
|
|
587
|
-
|
|
588
|
-
// src/payload/StepIdentityPayload.ts
|
|
589
609
|
var StepIdentitySchema = "network.xyo.chain.step.identity";
|
|
590
610
|
var isStepIdentityPayload = isPayloadOfZodType4(StepIdentityZod, StepIdentitySchema);
|
|
591
611
|
var asStepIdentityPayload = AsObjectFactory9.create(isStepIdentityPayload);
|
|
@@ -782,16 +802,14 @@ var AllowedBlockPayloadSchemas = [
|
|
|
782
802
|
TimeSchema,
|
|
783
803
|
TransferSchema
|
|
784
804
|
];
|
|
785
|
-
var
|
|
786
|
-
|
|
787
|
-
};
|
|
805
|
+
var AllowedBlockPayloadSchemaZod = z13.enum(AllowedBlockPayloadSchemas);
|
|
806
|
+
var isAllowedBlockPayloadSchema = zodIsFactory(AllowedBlockPayloadSchemaZod);
|
|
788
807
|
var isAllowedBlockPayload = (value) => {
|
|
789
808
|
return isTransfer(value) || isBridgeDestinationObservation(value) || isBridgeIntent(value) || isBridgeSourceObservation(value) || isChainStakeIntent(value) || isHashPayload(value) || isSchemaPayload(value) || isTimePayload(value) || isTransactionBoundWitness(value);
|
|
790
809
|
};
|
|
791
810
|
var isAllowedBlockPayloadWithHashMeta = (value) => {
|
|
792
811
|
return isAllowedBlockPayload(value) && isHashMeta3(value);
|
|
793
812
|
};
|
|
794
|
-
var AllowedBlockPayloadZod = z13.object({ schema: z13.enum(AllowedBlockPayloadSchemas) });
|
|
795
813
|
|
|
796
814
|
// src/block/BlockBoundWitness.ts
|
|
797
815
|
import { isHex as isHex2 } from "@xylabs/hex";
|
|
@@ -1001,8 +1019,8 @@ var isHydratedTransactionValidationError = (error) => {
|
|
|
1001
1019
|
return error.name === HydratedTransactionValidationError.constructor.name;
|
|
1002
1020
|
};
|
|
1003
1021
|
export {
|
|
1022
|
+
AllowedBlockPayloadSchemaZod,
|
|
1004
1023
|
AllowedBlockPayloadSchemas,
|
|
1005
|
-
AllowedBlockPayloadZod,
|
|
1006
1024
|
AttoXL1,
|
|
1007
1025
|
AttoXL1ConvertFactor,
|
|
1008
1026
|
AttoXL1MaxValue,
|