@xyo-network/xl1-protocol 1.13.6 → 1.13.8

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 (39) hide show
  1. package/dist/neutral/block/AllowedBlockPayload.d.ts +16 -9
  2. package/dist/neutral/block/AllowedBlockPayload.d.ts.map +1 -1
  3. package/dist/neutral/index.mjs +167 -147
  4. package/dist/neutral/index.mjs.map +1 -1
  5. package/dist/neutral/model/BlockNumber/BlockNumber.d.ts +2 -2
  6. package/dist/neutral/model/BlockNumber/BlockNumber.d.ts.map +1 -1
  7. package/dist/neutral/model/BlockNumber/EthBlockNumber.d.ts +2 -2
  8. package/dist/neutral/model/BlockNumber/EthBlockNumber.d.ts.map +1 -1
  9. package/dist/neutral/model/BlockNumber/XL1BlockNumber.d.ts +2 -2
  10. package/dist/neutral/model/BlockNumber/XL1BlockNumber.d.ts.map +1 -1
  11. package/dist/neutral/model/BlockRange/BlockRange.d.ts +2 -2
  12. package/dist/neutral/model/BlockRange/BlockRange.d.ts.map +1 -1
  13. package/dist/neutral/model/BlockRange/EthBlockRange.d.ts +2 -2
  14. package/dist/neutral/model/BlockRange/EthBlockRange.d.ts.map +1 -1
  15. package/dist/neutral/model/BlockRange/Range.d.ts +2 -2
  16. package/dist/neutral/model/BlockRange/Range.d.ts.map +1 -1
  17. package/dist/neutral/model/BlockRange/XL1BlockRange.d.ts +2 -2
  18. package/dist/neutral/model/BlockRange/XL1BlockRange.d.ts.map +1 -1
  19. package/dist/neutral/model/zod/Config.d.ts +6 -0
  20. package/dist/neutral/model/zod/Config.d.ts.map +1 -0
  21. package/dist/neutral/model/zod/index.d.ts +1 -0
  22. package/dist/neutral/model/zod/index.d.ts.map +1 -1
  23. package/dist/neutral/model/zod/zodAsFactory.d.ts +3 -3
  24. package/dist/neutral/model/zod/zodAsFactory.d.ts.map +1 -1
  25. package/dist/neutral/model/zod/zodToFactory.d.ts +2 -2
  26. package/dist/neutral/model/zod/zodToFactory.d.ts.map +1 -1
  27. package/package.json +1 -1
  28. package/src/block/AllowedBlockPayload.ts +7 -10
  29. package/src/model/BlockNumber/BlockNumber.ts +2 -2
  30. package/src/model/BlockNumber/EthBlockNumber.ts +2 -2
  31. package/src/model/BlockNumber/XL1BlockNumber.ts +2 -2
  32. package/src/model/BlockRange/BlockRange.ts +2 -2
  33. package/src/model/BlockRange/EthBlockRange.ts +2 -2
  34. package/src/model/BlockRange/Range.ts +2 -2
  35. package/src/model/BlockRange/XL1BlockRange.ts +2 -2
  36. package/src/model/zod/Config.ts +7 -0
  37. package/src/model/zod/index.ts +1 -0
  38. package/src/model/zod/zodAsFactory.ts +30 -4
  39. package/src/model/zod/zodToFactory.ts +2 -2
@@ -1,17 +1,24 @@
1
- import type { Schema, WithStorageMeta } from '@xyo-network/payload-model';
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: Schema[];
8
- export type AllowedBlockPayloadSchema = typeof AllowedBlockPayloadSchemas[number];
9
- export declare const isAllowedBlockPayloadSchema: (value: unknown) => value is AllowedBlockPayloadSchema;
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,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAEzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA;AAEvE,OAAO,CAAC,MAAM,KAAK,CAAA;AAEnB,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,EAAE,MAAM,EAW9C,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG,OAAO,0BAA0B,CAAC,MAAM,CAAC,CAAA;AAEjF,eAAO,MAAM,2BAA2B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,yBAErE,CAAA;AAED,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;AAED,eAAO,MAAM,sBAAsB;;;;mBAA2D,CAAA"}
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"}
@@ -285,10 +285,168 @@ 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, isSchema } from "@xyo-network/payload-model";
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
+ if (assert !== void 0) {
304
+ let assertConfig;
305
+ switch (typeof assert) {
306
+ case "string": {
307
+ assertConfig = `[${name}][${value}] ${assert}`;
308
+ break;
309
+ }
310
+ case "object": {
311
+ assertConfig = `[${name}][${assert.name}][${value}] ${result.error.message}`;
312
+ break;
313
+ }
314
+ case "boolean": {
315
+ assertConfig = `[${name}][${value}] ${result.error.message}`;
316
+ break;
317
+ }
318
+ case "function": {
319
+ assertConfig = assert(value, result.error.message);
320
+ break;
321
+ }
322
+ default: {
323
+ assertConfig = true;
324
+ }
325
+ }
326
+ return assertError(value, assertConfig, result.error.message);
327
+ }
328
+ }
329
+ return asFunc;
330
+ }
331
+
332
+ // src/model/zod/zodIsFactory.ts
333
+ function zodIsFactory(zod) {
334
+ return (value) => zod.safeParse(value).success;
335
+ }
336
+
337
+ // src/model/zod/zodToFactory.ts
338
+ function zodToFactory(zod, name) {
339
+ return zodAsFactory(zod, name);
340
+ }
341
+
342
+ // src/model/BlockNumber/Numberish.ts
343
+ import z2 from "zod";
344
+ 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());
345
+
346
+ // src/model/BlockNumber/BlockNumber.ts
347
+ var BlockNumberZod = z3.number().transform((v) => v);
348
+ var NumberishBlockNumberZod = NumberishZod.transform((v) => v);
349
+ var asBlockNumber = zodAsFactory(BlockNumberZod, "asBlockNumber");
350
+ var toBlockNumber = zodToFactory(NumberishBlockNumberZod, "toBlockNumber");
351
+ var BLOCK_NUMBER_ZERO = asBlockNumber(0);
352
+
353
+ // src/model/BlockNumber/EthBlockNumber.ts
354
+ import z4 from "zod";
355
+ var EthBlockNumberZod = z4.number().transform((v) => v);
356
+ var NumberishEthBlockNumberZod = NumberishBlockNumberZod.transform((v) => v);
357
+ var asEthBlockNumber = zodAsFactory(EthBlockNumberZod, "asEthBlockNumber");
358
+ var toEthBlockNumber = zodToFactory(NumberishEthBlockNumberZod, "toEthBlockNumber");
359
+ var ETH_BLOCK_NUMBER_ZERO = asEthBlockNumber(0);
360
+
361
+ // src/model/BlockNumber/XL1BlockNumber.ts
362
+ import z5 from "zod";
363
+ var XL1BlockNumberZod = z5.number().transform((v) => v);
364
+ var NumberishXL1BlockNumberZod = NumberishBlockNumberZod.transform((v) => v);
365
+ var asXL1BlockNumber = zodAsFactory(XL1BlockNumberZod, "asXL1BlockNumber");
366
+ var toXL1BlockNumber = zodToFactory(NumberishXL1BlockNumberZod, "toXL1BlockNumber");
367
+ var XL1_BLOCK_NUMBER_ZERO = asXL1BlockNumber(0);
368
+
369
+ // src/model/BlockRange/BlockRange.ts
370
+ import { assertError as assertError2 } from "@xylabs/hex";
371
+ import { isDefined } from "@xylabs/typeof";
372
+ import z6 from "zod";
373
+ var BlockRangeZod = z6.tuple([BlockNumberZod, BlockNumberZod]);
374
+ var NumberishBlockRangeZod = z6.tuple([NumberishBlockNumberZod, NumberishBlockNumberZod]);
375
+ var asBlockRange = zodAsFactory(BlockRangeZod, "BlockRange");
376
+ var toBlockRange = zodToFactory(NumberishBlockRangeZod, "BlockRange");
377
+ var toBlockNumberKey = (range) => `${range[0]}|${range[1]}`;
378
+ function fromBlockNumberKey(key, assert) {
379
+ const [start, end] = key.split("|").map((v) => asBlockNumber(Number(v)));
380
+ const result = isDefined(start) && isDefined(end) ? [start, end] : void 0;
381
+ return assertError2(result, assert, `Invalid BlockRangeKey: ${key}`);
382
+ }
383
+
384
+ // src/model/BlockRange/EthBlockRange.ts
385
+ import { assertError as assertError3 } from "@xylabs/hex";
386
+ import { isDefined as isDefined2 } from "@xylabs/typeof";
387
+ import z7 from "zod";
388
+ var EthBlockRangeZod = z7.tuple([EthBlockNumberZod, EthBlockNumberZod]);
389
+ var NumberishEthBlockRangeZod = z7.tuple([NumberishEthBlockNumberZod, NumberishEthBlockNumberZod]);
390
+ var asEthBlockRange = zodAsFactory(EthBlockRangeZod, "EthBlockRange");
391
+ var toEthBlockRange = zodToFactory(NumberishEthBlockRangeZod, "EthBlockRange");
392
+ var toEthBlockNumberKey = (range) => `${range[0]}|${range[1]}`;
393
+ function fromEthBlockNumberKey(key, assert) {
394
+ const [start, end] = key.split("|").map((v) => asEthBlockNumber(Number(v)));
395
+ const result = isDefined2(start) && isDefined2(end) ? [start, end] : void 0;
396
+ return assertError3(result, assert, `Invalid EthBlockRangeKey: ${key}`);
397
+ }
398
+
399
+ // src/model/BlockRange/Range.ts
400
+ import z8 from "zod";
401
+ var RangeZod = z8.tuple([z8.number(), z8.number()]);
402
+ var isRange = zodIsFactory(RangeZod);
403
+ var asRange = zodAsFactory(RangeZod, "Range");
404
+ var toRange = zodToFactory(RangeZod, "Range");
405
+
406
+ // src/model/BlockRange/XL1BlockRange.ts
407
+ import { assertError as assertError4 } from "@xylabs/hex";
408
+ import { isDefined as isDefined3 } from "@xylabs/typeof";
409
+ import z9 from "zod";
410
+ var XL1BlockRangeZod = z9.tuple([XL1BlockNumberZod, XL1BlockNumberZod]);
411
+ var NumberishXL1BlockRangeZod = z9.tuple([NumberishXL1BlockNumberZod, NumberishXL1BlockNumberZod]);
412
+ var asXL1BlockRange = zodAsFactory(XL1BlockRangeZod, "XL1BlockRange");
413
+ var toXL1BlockRange = zodToFactory(NumberishXL1BlockRangeZod, "XL1BlockRange");
414
+ var toXL1BlockNumberKey = (range) => `${range[0]}|${range[1]}`;
415
+ function fromXL1BlockNumberKey(key, assert) {
416
+ const [start, end] = key.split("|").map((v) => asXL1BlockNumber(Number(v)));
417
+ const result = isDefined3(start) && isDefined3(end) ? [start, end] : void 0;
418
+ return assertError4(result, assert, `Invalid XL1BlockRangeKey: ${key}`);
419
+ }
420
+
421
+ // src/model/StepIdentity.ts
422
+ import { isUndefined } from "@xylabs/typeof";
423
+ import * as z10 from "zod";
424
+ var StepIdentityZod = z10.object({
425
+ block: z10.number().int().nonnegative(),
426
+ step: z10.number().int().nonnegative()
427
+ });
428
+ function tryParseInt(value) {
429
+ if (value === "") return void 0;
430
+ const num = Number(value);
431
+ return Number.isInteger(num) ? num : void 0;
432
+ }
433
+ var asStepIdentity = (stepIdentityString) => {
434
+ try {
435
+ const [blockNumberString, stepString] = stepIdentityString.split("|");
436
+ if (isUndefined(blockNumberString) || isUndefined(stepString)) {
437
+ return void 0;
438
+ }
439
+ const step = tryParseInt(stepString);
440
+ const block = toXL1BlockNumber(blockNumberString);
441
+ if (isUndefined(block) || isUndefined(step)) {
442
+ return void 0;
443
+ }
444
+ return { block, step };
445
+ } catch {
446
+ return void 0;
447
+ }
448
+ };
449
+
292
450
  // src/payload/elevatable/Bridge/BridgeDestinationObservation.ts
293
451
  import { HexZod as HexZod2 } from "@xylabs/hex";
294
452
  import { AsObjectFactory } from "@xylabs/object";
@@ -296,8 +454,8 @@ import { isPayloadOfZodType } from "@xyo-network/payload-model";
296
454
 
297
455
  // src/payload/elevatable/Bridge/BridgeDetails.ts
298
456
  import { HexZod } from "@xylabs/hex";
299
- import z2 from "zod";
300
- var BridgeDetailsDestinationFieldsZod = z2.object({
457
+ import z11 from "zod";
458
+ var BridgeDetailsDestinationFieldsZod = z11.object({
301
459
  /**
302
460
  * Destination network
303
461
  */
@@ -315,7 +473,7 @@ var BridgeDetailsDestinationFieldsZod = z2.object({
315
473
  */
316
474
  destToken: HexZod.describe("The token being bridged to")
317
475
  });
318
- var BridgeDetailsSourceFieldsZod = z2.object({
476
+ var BridgeDetailsSourceFieldsZod = z11.object({
319
477
  /**
320
478
  * Source network
321
479
  */
@@ -354,13 +512,13 @@ var asBridgeDestinationObservation = AsObjectFactory.create(isBridgeDestinationO
354
512
  // src/payload/elevatable/Bridge/BridgeIntent.ts
355
513
  import { AsObjectFactory as AsObjectFactory2 } from "@xylabs/object";
356
514
  import { isPayloadOfZodType as isPayloadOfZodType2 } from "@xyo-network/payload-model";
357
- import z3 from "zod";
515
+ import z12 from "zod";
358
516
  var BridgeIntentSchema = "network.xyo.chain.bridge.intent";
359
517
  var BridgeIntentFieldsZod = BridgeDetailsFieldsZod.extend({
360
518
  /**
361
519
  * Unique identifier for replay protection
362
520
  */
363
- nonce: z3.string().describe("Unique identifier for replay protection")
521
+ nonce: z12.string().describe("Unique identifier for replay protection")
364
522
  });
365
523
  var isBridgeIntent = isPayloadOfZodType2(
366
524
  BridgeIntentFieldsZod,
@@ -450,142 +608,6 @@ var asTransfer = AsObjectFactory8.create(isTransfer);
450
608
  // src/payload/StepIdentityPayload.ts
451
609
  import { AsObjectFactory as AsObjectFactory9 } from "@xylabs/object";
452
610
  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
611
  var StepIdentitySchema = "network.xyo.chain.step.identity";
590
612
  var isStepIdentityPayload = isPayloadOfZodType4(StepIdentityZod, StepIdentitySchema);
591
613
  var asStepIdentityPayload = AsObjectFactory9.create(isStepIdentityPayload);
@@ -782,16 +804,14 @@ var AllowedBlockPayloadSchemas = [
782
804
  TimeSchema,
783
805
  TransferSchema
784
806
  ];
785
- var isAllowedBlockPayloadSchema = (value) => {
786
- return isSchema(value) && AllowedBlockPayloadSchemas.includes(value);
787
- };
807
+ var AllowedBlockPayloadSchemaZod = z13.enum(AllowedBlockPayloadSchemas);
808
+ var isAllowedBlockPayloadSchema = zodIsFactory(AllowedBlockPayloadSchemaZod);
788
809
  var isAllowedBlockPayload = (value) => {
789
810
  return isTransfer(value) || isBridgeDestinationObservation(value) || isBridgeIntent(value) || isBridgeSourceObservation(value) || isChainStakeIntent(value) || isHashPayload(value) || isSchemaPayload(value) || isTimePayload(value) || isTransactionBoundWitness(value);
790
811
  };
791
812
  var isAllowedBlockPayloadWithHashMeta = (value) => {
792
813
  return isAllowedBlockPayload(value) && isHashMeta3(value);
793
814
  };
794
- var AllowedBlockPayloadZod = z13.object({ schema: z13.enum(AllowedBlockPayloadSchemas) });
795
815
 
796
816
  // src/block/BlockBoundWitness.ts
797
817
  import { isHex as isHex2 } from "@xylabs/hex";
@@ -1001,8 +1021,8 @@ var isHydratedTransactionValidationError = (error) => {
1001
1021
  return error.name === HydratedTransactionValidationError.constructor.name;
1002
1022
  };
1003
1023
  export {
1024
+ AllowedBlockPayloadSchemaZod,
1004
1025
  AllowedBlockPayloadSchemas,
1005
- AllowedBlockPayloadZod,
1006
1026
  AttoXL1,
1007
1027
  AttoXL1ConvertFactor,
1008
1028
  AttoXL1MaxValue,