@xyo-network/xl1-protocol 1.13.5 → 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.
Files changed (48) 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 +217 -183
  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/StepIdentity.d.ts +5 -0
  20. package/dist/neutral/model/StepIdentity.d.ts.map +1 -1
  21. package/dist/neutral/model/zod/Config.d.ts +6 -0
  22. package/dist/neutral/model/zod/Config.d.ts.map +1 -0
  23. package/dist/neutral/model/zod/index.d.ts +1 -0
  24. package/dist/neutral/model/zod/index.d.ts.map +1 -1
  25. package/dist/neutral/model/zod/zodAsFactory.d.ts +3 -3
  26. package/dist/neutral/model/zod/zodAsFactory.d.ts.map +1 -1
  27. package/dist/neutral/model/zod/zodToFactory.d.ts +2 -2
  28. package/dist/neutral/model/zod/zodToFactory.d.ts.map +1 -1
  29. package/dist/neutral/payload/StepIdentityPayload.d.ts +13 -0
  30. package/dist/neutral/payload/StepIdentityPayload.d.ts.map +1 -0
  31. package/dist/neutral/payload/index.d.ts +1 -0
  32. package/dist/neutral/payload/index.d.ts.map +1 -1
  33. package/package.json +1 -1
  34. package/src/block/AllowedBlockPayload.ts +7 -10
  35. package/src/model/BlockNumber/BlockNumber.ts +2 -2
  36. package/src/model/BlockNumber/EthBlockNumber.ts +2 -2
  37. package/src/model/BlockNumber/XL1BlockNumber.ts +2 -2
  38. package/src/model/BlockRange/BlockRange.ts +2 -2
  39. package/src/model/BlockRange/EthBlockRange.ts +2 -2
  40. package/src/model/BlockRange/Range.ts +2 -2
  41. package/src/model/BlockRange/XL1BlockRange.ts +2 -2
  42. package/src/model/StepIdentity.ts +6 -0
  43. package/src/model/zod/Config.ts +7 -0
  44. package/src/model/zod/index.ts +1 -0
  45. package/src/model/zod/zodAsFactory.ts +28 -4
  46. package/src/model/zod/zodToFactory.ts +2 -2
  47. package/src/payload/StepIdentityPayload.ts +20 -0
  48. package/src/payload/index.ts +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"EthBlockRange.d.ts","sourceRoot":"","sources":["../../../../src/model/BlockRange/EthBlockRange.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE/C,OAAO,EAAE,KAAK,KAAK,EAAa,MAAM,gBAAgB,CAAA;AACtD,OAAO,CAAC,MAAM,KAAK,CAAA;AAEnB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAQ7D,MAAM,MAAM,aAAa,GAAG,CAAC,cAAc,EAAE,cAAc,CAAC,CAAA;AAC5D,MAAM,MAAM,sBAAsB,GAAG,CAAC,cAAc,EAAE,cAAc,CAAC,CAAA;AAErE,eAAO,MAAM,gBAAgB,oJAAkD,CAAA;AAC/E,eAAO,MAAM,yBAAyB,0qBAAoE,CAAA;AAE1G,eAAO,MAAM,eAAe;;;CAAgD,CAAA;AAC5E,eAAO,MAAM,eAAe;;;CAAyD,CAAA;AAErF,MAAM,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,EAAE;IAAE,QAAQ,CAAC,kBAAkB,EAAE,IAAI,CAAA;CAAE,CAAC,CAAA;AACnF,eAAO,MAAM,mBAAmB,GAAI,OAAO,aAAa,KAAkC,gBAAgB,CAAA;AAE1G,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,gBAAgB,GAAG,aAAa,GAAG,SAAS,CAAA;AACvF,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,YAAY,GAAG,aAAa,CAAA"}
1
+ {"version":3,"file":"EthBlockRange.d.ts","sourceRoot":"","sources":["../../../../src/model/BlockRange/EthBlockRange.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE/C,OAAO,EAAE,KAAK,KAAK,EAAa,MAAM,gBAAgB,CAAA;AACtD,OAAO,CAAC,MAAM,KAAK,CAAA;AAEnB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAQ7D,MAAM,MAAM,aAAa,GAAG,CAAC,cAAc,EAAE,cAAc,CAAC,CAAA;AAC5D,MAAM,MAAM,sBAAsB,GAAG,CAAC,cAAc,EAAE,cAAc,CAAC,CAAA;AAErE,eAAO,MAAM,gBAAgB,oJAAkD,CAAA;AAC/E,eAAO,MAAM,yBAAyB,0qBAAoE,CAAA;AAE1G,eAAO,MAAM,eAAe;;;CAAiE,CAAA;AAC7F,eAAO,MAAM,eAAe;;;CAA0E,CAAA;AAEtG,MAAM,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,EAAE;IAAE,QAAQ,CAAC,kBAAkB,EAAE,IAAI,CAAA;CAAE,CAAC,CAAA;AACnF,eAAO,MAAM,mBAAmB,GAAI,OAAO,aAAa,KAAkC,gBAAgB,CAAA;AAE1G,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,gBAAgB,GAAG,aAAa,GAAG,SAAS,CAAA;AACvF,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,YAAY,GAAG,aAAa,CAAA"}
@@ -4,10 +4,10 @@ export type Range = z.infer<typeof RangeZod>;
4
4
  export declare const isRange: (value: unknown) => value is [number, number];
5
5
  export declare const asRange: {
6
6
  (value: unknown): [number, number] | undefined;
7
- (value: unknown, assert: import("@xylabs/hex").AssertConfig): [number, number];
7
+ (value: unknown, assert: import("../zod/Config.ts").ZodFactoryConfig): [number, number];
8
8
  };
9
9
  export declare const toRange: {
10
10
  (value: unknown): [number, number] | undefined;
11
- (value: unknown, assert: import("@xylabs/hex").AssertConfig): [number, number];
11
+ (value: unknown, assert: import("../zod/Config.ts").ZodFactoryConfig): [number, number];
12
12
  };
13
13
  //# sourceMappingURL=Range.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Range.d.ts","sourceRoot":"","sources":["../../../../src/model/BlockRange/Range.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAA;AAMnB,eAAO,MAAM,QAAQ,8CAAoC,CAAA;AAEzD,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAA;AAE5C,eAAO,MAAM,OAAO,+CAAgC,CAAA;AACpD,eAAO,MAAM,OAAO;;;CAAgC,CAAA;AACpD,eAAO,MAAM,OAAO;;;CAAgC,CAAA"}
1
+ {"version":3,"file":"Range.d.ts","sourceRoot":"","sources":["../../../../src/model/BlockRange/Range.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAA;AAMnB,eAAO,MAAM,QAAQ,8CAAoC,CAAA;AAEzD,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAA;AAE5C,eAAO,MAAM,OAAO,+CAAgC,CAAA;AACpD,eAAO,MAAM,OAAO;;;CAAyC,CAAA;AAC7D,eAAO,MAAM,OAAO;;;CAAyC,CAAA"}
@@ -8,11 +8,11 @@ export declare const XL1BlockRangeZod: z.ZodTuple<[z.ZodPipe<z.ZodNumber, z.ZodT
8
8
  export declare const NumberishXL1BlockRangeZod: z.ZodTuple<[z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBigInt]>, z.ZodTransform<number, string | number | bigint>>, z.ZodNumber>, z.ZodTransform<import("../BlockNumber/BlockNumber.ts").BlockNumber, number>>, z.ZodTransform<XL1BlockNumber, import("../BlockNumber/BlockNumber.ts").BlockNumber>>, z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodPipe<z.ZodUnion<readonly [z.ZodNumber, z.ZodString, z.ZodBigInt]>, z.ZodTransform<number, string | number | bigint>>, z.ZodNumber>, z.ZodTransform<import("../BlockNumber/BlockNumber.ts").BlockNumber, number>>, z.ZodTransform<XL1BlockNumber, import("../BlockNumber/BlockNumber.ts").BlockNumber>>], null>;
9
9
  export declare const asXL1BlockRange: {
10
10
  (value: unknown): XL1BlockRange | undefined;
11
- (value: unknown, assert: AssertConfig): XL1BlockRange;
11
+ (value: unknown, assert: import("../zod/Config.ts").ZodFactoryConfig): XL1BlockRange;
12
12
  };
13
13
  export declare const toXL1BlockRange: {
14
14
  (value: unknown): XL1BlockRange | undefined;
15
- (value: unknown, assert: AssertConfig): XL1BlockRange;
15
+ (value: unknown, assert: import("../zod/Config.ts").ZodFactoryConfig): XL1BlockRange;
16
16
  };
17
17
  export type XL1BlockRangeKey = Brand<string, {
18
18
  readonly __xl1BlockRangeKey: true;
@@ -1 +1 @@
1
- {"version":3,"file":"XL1BlockRange.d.ts","sourceRoot":"","sources":["../../../../src/model/BlockRange/XL1BlockRange.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE/C,OAAO,EAAE,KAAK,KAAK,EAAa,MAAM,gBAAgB,CAAA;AACtD,OAAO,CAAC,MAAM,KAAK,CAAA;AAEnB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAQ7D,MAAM,MAAM,aAAa,GAAG,CAAC,cAAc,EAAE,cAAc,CAAC,CAAA;AAC5D,MAAM,MAAM,sBAAsB,GAAG,CAAC,cAAc,EAAE,cAAc,CAAC,CAAA;AAErE,eAAO,MAAM,gBAAgB,oJAAkD,CAAA;AAC/E,eAAO,MAAM,yBAAyB,0qBAAoE,CAAA;AAE1G,eAAO,MAAM,eAAe;;;CAAgD,CAAA;AAC5E,eAAO,MAAM,eAAe;;;CAAyD,CAAA;AAErF,MAAM,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,EAAE;IAAE,QAAQ,CAAC,kBAAkB,EAAE,IAAI,CAAA;CAAE,CAAC,CAAA;AACnF,eAAO,MAAM,mBAAmB,GAAI,OAAO,aAAa,KAAkC,gBAAgB,CAAA;AAE1G,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,gBAAgB,GAAG,aAAa,GAAG,SAAS,CAAA;AACvF,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,YAAY,GAAG,aAAa,CAAA"}
1
+ {"version":3,"file":"XL1BlockRange.d.ts","sourceRoot":"","sources":["../../../../src/model/BlockRange/XL1BlockRange.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE/C,OAAO,EAAE,KAAK,KAAK,EAAa,MAAM,gBAAgB,CAAA;AACtD,OAAO,CAAC,MAAM,KAAK,CAAA;AAEnB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAQ7D,MAAM,MAAM,aAAa,GAAG,CAAC,cAAc,EAAE,cAAc,CAAC,CAAA;AAC5D,MAAM,MAAM,sBAAsB,GAAG,CAAC,cAAc,EAAE,cAAc,CAAC,CAAA;AAErE,eAAO,MAAM,gBAAgB,oJAAkD,CAAA;AAC/E,eAAO,MAAM,yBAAyB,0qBAAoE,CAAA;AAE1G,eAAO,MAAM,eAAe;;;CAAiE,CAAA;AAC7F,eAAO,MAAM,eAAe;;;CAA0E,CAAA;AAEtG,MAAM,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,EAAE;IAAE,QAAQ,CAAC,kBAAkB,EAAE,IAAI,CAAA;CAAE,CAAC,CAAA;AACnF,eAAO,MAAM,mBAAmB,GAAI,OAAO,aAAa,KAAkC,gBAAgB,CAAA;AAE1G,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,gBAAgB,GAAG,aAAa,GAAG,SAAS,CAAA;AACvF,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,YAAY,GAAG,aAAa,CAAA"}
@@ -1,5 +1,10 @@
1
1
  import { type Brand } from '@xylabs/typeof';
2
+ import * as z from 'zod';
2
3
  import { type XL1BlockNumber } from './BlockNumber/index.ts';
4
+ export declare const StepIdentityZod: z.ZodObject<{
5
+ block: z.ZodNumber;
6
+ step: z.ZodNumber;
7
+ }, z.core.$strip>;
3
8
  export interface StepIdentity {
4
9
  block: XL1BlockNumber;
5
10
  step: number;
@@ -1 +1 @@
1
- {"version":3,"file":"StepIdentity.d.ts","sourceRoot":"","sources":["../../../src/model/StepIdentity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,KAAK,EAAe,MAAM,gBAAgB,CAAA;AAExD,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAE9E,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,cAAc,CAAA;IAErB,IAAI,EAAE,MAAM,CAAA;CACb;AAED,2CAA2C;AAC3C,MAAM,WAAW,WAAY,SAAQ,YAAY;CAAG;AAGpD,MAAM,MAAM,kBAAkB,GAAG,KAAK,CAAC,MAAM,EAAE;IAAE,QAAQ,CAAC,oBAAoB,EAAE,IAAI,CAAA;CAAE,CAAC,CAAA;AAWvF,eAAO,MAAM,cAAc,GAAI,oBAAoB,MAAM,KAAG,YAAY,GAAG,SAgB1E,CAAA"}
1
+ {"version":3,"file":"StepIdentity.d.ts","sourceRoot":"","sources":["../../../src/model/StepIdentity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,KAAK,EAAe,MAAM,gBAAgB,CAAA;AACxD,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAExB,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAE9E,eAAO,MAAM,eAAe;;;iBAG1B,CAAA;AAEF,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,cAAc,CAAA;IAErB,IAAI,EAAE,MAAM,CAAA;CACb;AAED,2CAA2C;AAC3C,MAAM,WAAW,WAAY,SAAQ,YAAY;CAAG;AAGpD,MAAM,MAAM,kBAAkB,GAAG,KAAK,CAAC,MAAM,EAAE;IAAE,QAAQ,CAAC,oBAAoB,EAAE,IAAI,CAAA;CAAE,CAAC,CAAA;AAWvF,eAAO,MAAM,cAAc,GAAI,oBAAoB,MAAM,KAAG,YAAY,GAAG,SAgB1E,CAAA"}
@@ -0,0 +1,6 @@
1
+ import type { AssertConfig } from '@xylabs/hex';
2
+ export interface ZodFactoryConfigObject {
3
+ name: string;
4
+ }
5
+ export type ZodFactoryConfig = AssertConfig | ZodFactoryConfigObject;
6
+ //# sourceMappingURL=Config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../../../src/model/zod/Config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE/C,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,MAAM,gBAAgB,GAAG,YAAY,GAAG,sBAAsB,CAAA"}
@@ -1,3 +1,4 @@
1
+ export * from './Config.ts';
1
2
  export * from './zodAsFactory.ts';
2
3
  export * from './zodIsFactory.ts';
3
4
  export * from './zodToFactory.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/model/zod/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/model/zod/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA"}
@@ -1,7 +1,7 @@
1
- import type { AssertConfig } from '@xylabs/hex';
2
1
  import type z from 'zod';
3
- export declare function zodAsFactory<T>(zod: z.ZodType<T>): {
2
+ import type { ZodFactoryConfig } from './Config.ts';
3
+ export declare function zodAsFactory<T>(zod: z.ZodType<T>, name: string): {
4
4
  (value: unknown): T | undefined;
5
- (value: unknown, assert: AssertConfig): T;
5
+ (value: unknown, assert: ZodFactoryConfig): T;
6
6
  };
7
7
  //# sourceMappingURL=zodAsFactory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"zodAsFactory.d.ts","sourceRoot":"","sources":["../../../../src/model/zod/zodAsFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE/C,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAExB,wBAAgB,YAAY,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACxB,OAAO,GAAG,CAAC,GAAG,SAAS;YACvB,OAAO,UAAU,YAAY,GAAG,CAAC;EAUzD"}
1
+ {"version":3,"file":"zodAsFactory.d.ts","sourceRoot":"","sources":["../../../../src/model/zod/zodAsFactory.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAExB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAEnD,wBAAgB,YAAY,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM;YACtC,OAAO,GAAG,CAAC,GAAG,SAAS;YACvB,OAAO,UAAU,gBAAgB,GAAG,CAAC;EAgC7D"}
@@ -1,6 +1,6 @@
1
1
  import type z from 'zod';
2
- export declare function zodToFactory<T>(zod: z.ZodType<T>): {
2
+ export declare function zodToFactory<T>(zod: z.ZodType<T>, name: string): {
3
3
  (value: unknown): T | undefined;
4
- (value: unknown, assert: import("@xylabs/hex").AssertConfig): T;
4
+ (value: unknown, assert: import("./Config.ts").ZodFactoryConfig): T;
5
5
  };
6
6
  //# sourceMappingURL=zodToFactory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"zodToFactory.d.ts","sourceRoot":"","sources":["../../../../src/model/zod/zodToFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAIxB,wBAAgB,YAAY,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;;;EAEhD"}
1
+ {"version":3,"file":"zodToFactory.d.ts","sourceRoot":"","sources":["../../../../src/model/zod/zodToFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAIxB,wBAAgB,YAAY,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM;;;EAE9D"}
@@ -0,0 +1,13 @@
1
+ import type { Payload } from '@xyo-network/payload-model';
2
+ import type { z } from 'zod';
3
+ import { StepIdentityZod } from '../model/index.ts';
4
+ export declare const StepIdentitySchema: "network.xyo.chain.step.identity";
5
+ export type StepIdentitySchema = typeof StepIdentitySchema;
6
+ export type StepIdentityFields = z.infer<typeof StepIdentityZod>;
7
+ /**
8
+ * A Step Identity Payload
9
+ */
10
+ export type StepIdentityPayload = Payload<StepIdentityFields, StepIdentitySchema>;
11
+ export declare const isStepIdentityPayload: (x?: unknown | null) => x is StepIdentityPayload;
12
+ export declare const asStepIdentityPayload: import("@xylabs/object").AsTypeFunction<StepIdentityPayload>;
13
+ //# sourceMappingURL=StepIdentityPayload.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StepIdentityPayload.d.ts","sourceRoot":"","sources":["../../../src/payload/StepIdentityPayload.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEzD,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAE5B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEnD,eAAO,MAAM,kBAAkB,EAAG,iCAA0C,CAAA;AAC5E,MAAM,MAAM,kBAAkB,GAAG,OAAO,kBAAkB,CAAA;AAE1D,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AAEhE;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAAA;AAEjF,eAAO,MAAM,qBAAqB,kDAA+E,CAAA;AAEjH,eAAO,MAAM,qBAAqB,8DAAgD,CAAA"}
@@ -1,2 +1,3 @@
1
1
  export * from './elevatable/index.ts';
2
+ export * from './StepIdentityPayload.ts';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/payload/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/payload/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,0BAA0B,CAAA"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "http://json.schemastore.org/package.json",
3
3
  "name": "@xyo-network/xl1-protocol",
4
- "version": "1.13.5",
4
+ "version": "1.13.7",
5
5
  "description": "XYO Layer One Protocol",
6
6
  "homepage": "https://xylabs.com",
7
7
  "bugs": {
@@ -1,10 +1,11 @@
1
1
  import { BoundWitnessSchema } from '@xyo-network/boundwitness-model'
2
2
  import type { Schema, WithStorageMeta } from '@xyo-network/payload-model'
3
- import { isHashMeta, isSchema } from '@xyo-network/payload-model'
3
+ import { isHashMeta } from '@xyo-network/payload-model'
4
4
  import type { SchemaPayload } from '@xyo-network/schema-payload-plugin'
5
5
  import { isSchemaPayload, SchemaSchema } from '@xyo-network/schema-payload-plugin'
6
6
  import z from 'zod'
7
7
 
8
+ import { zodIsFactory } from '../model/index.ts'
8
9
  import type {
9
10
  BridgeDestinationObservation, BridgeIntent, BridgeSourceObservation, ChainStakeIntent, HashPayload, StepComplete, TimePayload, Transfer,
10
11
  } from '../payload/index.ts'
@@ -27,7 +28,7 @@ export type AllowedBlockPayload
27
28
  | TimePayload
28
29
  | TransactionBoundWitness
29
30
 
30
- export const AllowedBlockPayloadSchemas: Schema[] = [
31
+ export const AllowedBlockPayloadSchemas = [
31
32
  BoundWitnessSchema,
32
33
  BridgeDestinationObservationSchema,
33
34
  BridgeIntentSchema,
@@ -38,13 +39,11 @@ export const AllowedBlockPayloadSchemas: Schema[] = [
38
39
  StepCompleteSchema,
39
40
  TimeSchema,
40
41
  TransferSchema,
41
- ]
42
+ ] satisfies Schema[]
42
43
 
43
- export type AllowedBlockPayloadSchema = typeof AllowedBlockPayloadSchemas[number]
44
-
45
- export const isAllowedBlockPayloadSchema = (value: unknown): value is AllowedBlockPayloadSchema => {
46
- return isSchema(value) && AllowedBlockPayloadSchemas.includes(value)
47
- }
44
+ export const AllowedBlockPayloadSchemaZod = z.enum(AllowedBlockPayloadSchemas)
45
+ export type AllowedBlockPayloadSchema = z.infer<typeof AllowedBlockPayloadSchemaZod>
46
+ export const isAllowedBlockPayloadSchema = zodIsFactory<AllowedBlockPayloadSchema>(AllowedBlockPayloadSchemaZod)
48
47
 
49
48
  export const isAllowedBlockPayload = (value: unknown): value is AllowedBlockPayload => {
50
49
  return isTransfer(value)
@@ -61,5 +60,3 @@ export const isAllowedBlockPayload = (value: unknown): value is AllowedBlockPayl
61
60
  export const isAllowedBlockPayloadWithHashMeta = (value: unknown): value is WithStorageMeta<AllowedBlockPayload> => {
62
61
  return isAllowedBlockPayload(value) && isHashMeta(value)
63
62
  }
64
-
65
- export const AllowedBlockPayloadZod = z.object({ schema: z.enum(AllowedBlockPayloadSchemas) })
@@ -9,7 +9,7 @@ export type BlockNumber = Brand<number, { readonly __blockNumber: true }>
9
9
  export const BlockNumberZod = z.number().transform(v => v as BlockNumber)
10
10
  export const NumberishBlockNumberZod = NumberishZod.transform(v => v as BlockNumber)
11
11
 
12
- export const asBlockNumber = zodAsFactory<BlockNumber>(BlockNumberZod)
13
- export const toBlockNumber = zodToFactory<BlockNumber>(NumberishBlockNumberZod)
12
+ export const asBlockNumber = zodAsFactory<BlockNumber>(BlockNumberZod, 'asBlockNumber')
13
+ export const toBlockNumber = zodToFactory<BlockNumber>(NumberishBlockNumberZod, 'toBlockNumber')
14
14
 
15
15
  export const BLOCK_NUMBER_ZERO = asBlockNumber(0)
@@ -10,7 +10,7 @@ export type EthBlockNumber = Brand<BlockNumber, { readonly __ethBlockNumber: tru
10
10
  export const EthBlockNumberZod = z.number().transform(v => v as EthBlockNumber)
11
11
  export const NumberishEthBlockNumberZod = NumberishBlockNumberZod.transform(v => v as EthBlockNumber)
12
12
 
13
- export const asEthBlockNumber = zodAsFactory<EthBlockNumber>(EthBlockNumberZod)
14
- export const toEthBlockNumber = zodToFactory<EthBlockNumber>(NumberishEthBlockNumberZod)
13
+ export const asEthBlockNumber = zodAsFactory<EthBlockNumber>(EthBlockNumberZod, 'asEthBlockNumber')
14
+ export const toEthBlockNumber = zodToFactory<EthBlockNumber>(NumberishEthBlockNumberZod, 'toEthBlockNumber')
15
15
 
16
16
  export const ETH_BLOCK_NUMBER_ZERO = asEthBlockNumber(0)
@@ -10,7 +10,7 @@ export type XL1BlockNumber = Brand<BlockNumber, { readonly __xl1BlockNumber: tru
10
10
  export const XL1BlockNumberZod = z.number().transform(v => v as XL1BlockNumber)
11
11
  export const NumberishXL1BlockNumberZod = NumberishBlockNumberZod.transform(v => v as XL1BlockNumber)
12
12
 
13
- export const asXL1BlockNumber = zodAsFactory<XL1BlockNumber>(XL1BlockNumberZod)
14
- export const toXL1BlockNumber = zodToFactory<XL1BlockNumber>(NumberishXL1BlockNumberZod)
13
+ export const asXL1BlockNumber = zodAsFactory<XL1BlockNumber>(XL1BlockNumberZod, 'asXL1BlockNumber')
14
+ export const toXL1BlockNumber = zodToFactory<XL1BlockNumber>(NumberishXL1BlockNumberZod, 'toXL1BlockNumber')
15
15
 
16
16
  export const XL1_BLOCK_NUMBER_ZERO = asXL1BlockNumber(0)
@@ -15,8 +15,8 @@ export type NumberishBlockRange = [BlockNumber, BlockNumber]
15
15
  export const BlockRangeZod = z.tuple([BlockNumberZod, BlockNumberZod])
16
16
  export const NumberishBlockRangeZod = z.tuple([NumberishBlockNumberZod, NumberishBlockNumberZod])
17
17
 
18
- export const asBlockRange = zodAsFactory<BlockRange>(BlockRangeZod)
19
- export const toBlockRange = zodToFactory<BlockRange>(NumberishBlockRangeZod)
18
+ export const asBlockRange = zodAsFactory<BlockRange>(BlockRangeZod, 'BlockRange')
19
+ export const toBlockRange = zodToFactory<BlockRange>(NumberishBlockRangeZod, 'BlockRange')
20
20
 
21
21
  export type BlockRangeKey = Brand<string, { readonly __blockRangeKey: true }>
22
22
  export const toBlockNumberKey = (range: BlockRange) => `${range[0]}|${range[1]}` as BlockRangeKey
@@ -17,8 +17,8 @@ export type NumberishEthBlockRange = [EthBlockNumber, EthBlockNumber]
17
17
  export const EthBlockRangeZod = z.tuple([EthBlockNumberZod, EthBlockNumberZod])
18
18
  export const NumberishEthBlockRangeZod = z.tuple([NumberishEthBlockNumberZod, NumberishEthBlockNumberZod])
19
19
 
20
- export const asEthBlockRange = zodAsFactory<EthBlockRange>(EthBlockRangeZod)
21
- export const toEthBlockRange = zodToFactory<EthBlockRange>(NumberishEthBlockRangeZod)
20
+ export const asEthBlockRange = zodAsFactory<EthBlockRange>(EthBlockRangeZod, 'EthBlockRange')
21
+ export const toEthBlockRange = zodToFactory<EthBlockRange>(NumberishEthBlockRangeZod, 'EthBlockRange')
22
22
 
23
23
  export type EthBlockRangeKey = Brand<string, { readonly __ethBlockRangeKey: true }>
24
24
  export const toEthBlockNumberKey = (range: EthBlockRange) => `${range[0]}|${range[1]}` as EthBlockRangeKey
@@ -9,5 +9,5 @@ export const RangeZod = z.tuple([z.number(), z.number()])
9
9
  export type Range = z.infer<typeof RangeZod>
10
10
 
11
11
  export const isRange = zodIsFactory<Range>(RangeZod)
12
- export const asRange = zodAsFactory<Range>(RangeZod)
13
- export const toRange = zodToFactory<Range>(RangeZod)
12
+ export const asRange = zodAsFactory<Range>(RangeZod, 'Range')
13
+ export const toRange = zodToFactory<Range>(RangeZod, 'Range')
@@ -17,8 +17,8 @@ export type NumberishXL1BlockRange = [XL1BlockNumber, XL1BlockNumber]
17
17
  export const XL1BlockRangeZod = z.tuple([XL1BlockNumberZod, XL1BlockNumberZod])
18
18
  export const NumberishXL1BlockRangeZod = z.tuple([NumberishXL1BlockNumberZod, NumberishXL1BlockNumberZod])
19
19
 
20
- export const asXL1BlockRange = zodAsFactory<XL1BlockRange>(XL1BlockRangeZod)
21
- export const toXL1BlockRange = zodToFactory<XL1BlockRange>(NumberishXL1BlockRangeZod)
20
+ export const asXL1BlockRange = zodAsFactory<XL1BlockRange>(XL1BlockRangeZod, 'XL1BlockRange')
21
+ export const toXL1BlockRange = zodToFactory<XL1BlockRange>(NumberishXL1BlockRangeZod, 'XL1BlockRange')
22
22
 
23
23
  export type XL1BlockRangeKey = Brand<string, { readonly __xl1BlockRangeKey: true }>
24
24
  export const toXL1BlockNumberKey = (range: XL1BlockRange) => `${range[0]}|${range[1]}` as XL1BlockRangeKey
@@ -1,7 +1,13 @@
1
1
  import { type Brand, isUndefined } from '@xylabs/typeof'
2
+ import * as z from 'zod'
2
3
 
3
4
  import { toXL1BlockNumber, type XL1BlockNumber } from './BlockNumber/index.ts'
4
5
 
6
+ export const StepIdentityZod = z.object({
7
+ block: z.number().int().nonnegative(),
8
+ step: z.number().int().nonnegative(),
9
+ })
10
+
5
11
  export interface StepIdentity {
6
12
  block: XL1BlockNumber
7
13
  // the index of the step into the StepSize array
@@ -0,0 +1,7 @@
1
+ import type { AssertConfig } from '@xylabs/hex'
2
+
3
+ export interface ZodFactoryConfigObject {
4
+ name: string
5
+ }
6
+
7
+ export type ZodFactoryConfig = AssertConfig | ZodFactoryConfigObject
@@ -1,3 +1,4 @@
1
+ export * from './Config.ts'
1
2
  export * from './zodAsFactory.ts'
2
3
  export * from './zodIsFactory.ts'
3
4
  export * from './zodToFactory.ts'
@@ -2,15 +2,39 @@ import type { AssertConfig } from '@xylabs/hex'
2
2
  import { assertError } from '@xylabs/hex'
3
3
  import type z from 'zod'
4
4
 
5
- export function zodAsFactory<T>(zod: z.ZodType<T>) {
5
+ import type { ZodFactoryConfig } from './Config.ts'
6
+
7
+ export function zodAsFactory<T>(zod: z.ZodType<T>, name: string) {
6
8
  function asFunc(value: unknown): T | undefined
7
- function asFunc(value: unknown, assert: AssertConfig): T
8
- function asFunc(value: unknown, assert?: AssertConfig): T | undefined {
9
+ function asFunc(value: unknown, assert: ZodFactoryConfig): T
10
+ function asFunc(value: unknown, assert?: ZodFactoryConfig): T | undefined {
9
11
  const result = zod.safeParse(value)
10
12
  if (result.success) {
11
13
  return result.data
12
14
  }
13
- return assertError(value, assert, result.error.message)
15
+ let assertConfig: AssertConfig
16
+ switch (typeof assert) {
17
+ case 'string': {
18
+ assertConfig = `[${name}][${value}] ${assert}`
19
+ break
20
+ }
21
+ case 'object': {
22
+ assertConfig = `[${name}][${assert.name}][${value}] ${result.error.message}`
23
+ break
24
+ }
25
+ case 'boolean': {
26
+ assertConfig = `[${name}][${value}] ${result.error.message}`
27
+ break
28
+ }
29
+ case 'function': {
30
+ assertConfig = assert(value, result.error.message)
31
+ break
32
+ }
33
+ default: {
34
+ assertConfig = true
35
+ }
36
+ }
37
+ return assertError(value, assertConfig, result.error.message)
14
38
  }
15
39
 
16
40
  return asFunc
@@ -2,6 +2,6 @@ import type z from 'zod'
2
2
 
3
3
  import { zodAsFactory } from './zodAsFactory.ts'
4
4
 
5
- export function zodToFactory<T>(zod: z.ZodType<T>) {
6
- return zodAsFactory<T>(zod)
5
+ export function zodToFactory<T>(zod: z.ZodType<T>, name: string) {
6
+ return zodAsFactory<T>(zod, name)
7
7
  }
@@ -0,0 +1,20 @@
1
+ import { AsObjectFactory } from '@xylabs/object'
2
+ import type { Payload } from '@xyo-network/payload-model'
3
+ import { isPayloadOfZodType } from '@xyo-network/payload-model'
4
+ import type { z } from 'zod'
5
+
6
+ import { StepIdentityZod } from '../model/index.ts'
7
+
8
+ export const StepIdentitySchema = 'network.xyo.chain.step.identity' as const
9
+ export type StepIdentitySchema = typeof StepIdentitySchema
10
+
11
+ export type StepIdentityFields = z.infer<typeof StepIdentityZod>
12
+
13
+ /**
14
+ * A Step Identity Payload
15
+ */
16
+ export type StepIdentityPayload = Payload<StepIdentityFields, StepIdentitySchema>
17
+
18
+ export const isStepIdentityPayload = isPayloadOfZodType<StepIdentityPayload>(StepIdentityZod, StepIdentitySchema)
19
+
20
+ export const asStepIdentityPayload = AsObjectFactory.create(isStepIdentityPayload)
@@ -1 +1,2 @@
1
1
  export * from './elevatable/index.ts'
2
+ export * from './StepIdentityPayload.ts'