@xyo-network/xl1-protocol 1.13.13 → 1.14.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.
Files changed (135) hide show
  1. package/dist/neutral/block/AllowedBlockPayload.d.ts +1 -1
  2. package/dist/neutral/block/AllowedBlockPayload.d.ts.map +1 -1
  3. package/dist/neutral/block/index.d.ts +0 -2
  4. package/dist/neutral/block/index.d.ts.map +1 -1
  5. package/dist/neutral/chain/ChainAnalyzer.d.ts +1 -1
  6. package/dist/neutral/chain/ChainAnalyzer.d.ts.map +1 -1
  7. package/dist/neutral/constants/defaultTransactionFees.d.ts +1 -1
  8. package/dist/neutral/constants/defaultTransactionFees.d.ts.map +1 -1
  9. package/dist/neutral/constants/minTransactionFees.d.ts +1 -1
  10. package/dist/neutral/constants/minTransactionFees.d.ts.map +1 -1
  11. package/dist/neutral/index.d.ts +1 -1
  12. package/dist/neutral/index.d.ts.map +1 -1
  13. package/dist/neutral/index.mjs +476 -233
  14. package/dist/neutral/index.mjs.map +1 -1
  15. package/dist/neutral/repository/TransactionReadRepository.d.ts +1 -1
  16. package/dist/neutral/repository/TransactionReadRepository.d.ts.map +1 -1
  17. package/dist/neutral/repository/TransactionRepositoryIterator.d.ts +1 -1
  18. package/dist/neutral/repository/TransactionRepositoryIterator.d.ts.map +1 -1
  19. package/dist/neutral/repository/TransactionWriteRepository.d.ts +1 -1
  20. package/dist/neutral/repository/TransactionWriteRepository.d.ts.map +1 -1
  21. package/dist/neutral/validation/payload/InBlockPayloadValidationFunction.d.ts +1 -1
  22. package/dist/neutral/validation/payload/InBlockPayloadValidationFunction.d.ts.map +1 -1
  23. package/dist/neutral/validation/payload/error.d.ts +1 -1
  24. package/dist/neutral/validation/payload/error.d.ts.map +1 -1
  25. package/dist/neutral/validation/transaction/HydratedTransactionStateValidationFunction.d.ts +2 -2
  26. package/dist/neutral/validation/transaction/HydratedTransactionStateValidationFunction.d.ts.map +1 -1
  27. package/dist/neutral/validation/transaction/HydratedTransactionValidationFunction.d.ts +2 -2
  28. package/dist/neutral/validation/transaction/HydratedTransactionValidationFunction.d.ts.map +1 -1
  29. package/dist/neutral/validation/transaction/error.d.ts +1 -1
  30. package/dist/neutral/validation/transaction/error.d.ts.map +1 -1
  31. package/dist/neutral/zod/ArrayBuffer.d.ts +4 -0
  32. package/dist/neutral/zod/ArrayBuffer.d.ts.map +1 -0
  33. package/dist/neutral/zod/BlockBoundWitness.d.ts +63 -0
  34. package/dist/neutral/zod/BlockBoundWitness.d.ts.map +1 -0
  35. package/dist/neutral/zod/BoundWitness.d.ts +111 -0
  36. package/dist/neutral/zod/BoundWitness.d.ts.map +1 -0
  37. package/dist/neutral/zod/Chain.d.ts +4 -0
  38. package/dist/neutral/zod/Chain.d.ts.map +1 -0
  39. package/dist/neutral/zod/HydratedBlock.d.ts +131 -0
  40. package/dist/neutral/zod/HydratedBlock.d.ts.map +1 -0
  41. package/dist/neutral/zod/HydratedTransaction.d.ts +1603 -0
  42. package/dist/neutral/zod/HydratedTransaction.d.ts.map +1 -0
  43. package/dist/neutral/zod/Permission.d.ts +53 -0
  44. package/dist/neutral/zod/Permission.d.ts.map +1 -0
  45. package/dist/neutral/zod/RewardsRangeOptions.d.ts +11 -0
  46. package/dist/neutral/zod/RewardsRangeOptions.d.ts.map +1 -0
  47. package/dist/neutral/zod/Sequence.d.ts +9 -0
  48. package/dist/neutral/zod/Sequence.d.ts.map +1 -0
  49. package/dist/neutral/zod/Stake.d.ts +62 -0
  50. package/dist/neutral/zod/Stake.d.ts.map +1 -0
  51. package/dist/neutral/zod/TimeDomain.d.ts +3 -0
  52. package/dist/neutral/zod/TimeDomain.d.ts.map +1 -0
  53. package/dist/neutral/zod/TransactionBoundWitness.d.ts +416 -0
  54. package/dist/neutral/zod/TransactionBoundWitness.d.ts.map +1 -0
  55. package/dist/neutral/zod/TransactionFees.d.ts +121 -0
  56. package/dist/neutral/zod/TransactionFees.d.ts.map +1 -0
  57. package/dist/neutral/zod/TransferPair.d.ts +3 -0
  58. package/dist/neutral/zod/TransferPair.d.ts.map +1 -0
  59. package/dist/neutral/zod/index.d.ts +15 -0
  60. package/dist/neutral/zod/index.d.ts.map +1 -0
  61. package/package.json +8 -6
  62. package/src/block/AllowedBlockPayload.ts +1 -1
  63. package/src/block/index.ts +0 -2
  64. package/src/chain/ChainAnalyzer.ts +1 -1
  65. package/src/constants/defaultTransactionFees.ts +1 -1
  66. package/src/constants/minTransactionFees.ts +1 -1
  67. package/src/index.ts +1 -1
  68. package/src/repository/TransactionReadRepository.ts +1 -1
  69. package/src/repository/TransactionRepositoryIterator.ts +1 -1
  70. package/src/repository/TransactionWriteRepository.ts +1 -1
  71. package/src/validation/payload/InBlockPayloadValidationFunction.ts +1 -1
  72. package/src/validation/payload/error.ts +1 -1
  73. package/src/validation/transaction/HydratedTransactionStateValidationFunction.ts +2 -2
  74. package/src/validation/transaction/HydratedTransactionValidationFunction.ts +2 -2
  75. package/src/validation/transaction/error.ts +1 -1
  76. package/src/zod/ArrayBuffer.ts +42 -0
  77. package/src/zod/BlockBoundWitness.ts +38 -0
  78. package/src/zod/BoundWitness.ts +59 -0
  79. package/src/zod/Chain.ts +6 -0
  80. package/src/zod/HydratedBlock.ts +49 -0
  81. package/src/zod/HydratedTransaction.ts +138 -0
  82. package/src/zod/Permission.ts +23 -0
  83. package/src/zod/RewardsRangeOptions.ts +11 -0
  84. package/src/zod/Sequence.ts +15 -0
  85. package/src/zod/Stake.ts +43 -0
  86. package/src/zod/TimeDomain.ts +7 -0
  87. package/src/zod/TransactionBoundWitness.ts +57 -0
  88. package/src/zod/TransactionFees.ts +57 -0
  89. package/src/zod/TransferPair.ts +6 -0
  90. package/src/zod/index.ts +14 -0
  91. package/dist/neutral/block/BlockBoundWitness.d.ts +0 -33
  92. package/dist/neutral/block/BlockBoundWitness.d.ts.map +0 -1
  93. package/dist/neutral/block/HydratedBlock.d.ts +0 -7
  94. package/dist/neutral/block/HydratedBlock.d.ts.map +0 -1
  95. package/dist/neutral/transaction/AnyHydratedTransaction.d.ts +0 -6
  96. package/dist/neutral/transaction/AnyHydratedTransaction.d.ts.map +0 -1
  97. package/dist/neutral/transaction/HydratedTransaction.d.ts +0 -10
  98. package/dist/neutral/transaction/HydratedTransaction.d.ts.map +0 -1
  99. package/dist/neutral/transaction/HydratedTransactionWithHashMeta.d.ts +0 -7
  100. package/dist/neutral/transaction/HydratedTransactionWithHashMeta.d.ts.map +0 -1
  101. package/dist/neutral/transaction/HydratedTransactionWithStorageMeta.d.ts +0 -7
  102. package/dist/neutral/transaction/HydratedTransactionWithStorageMeta.d.ts.map +0 -1
  103. package/dist/neutral/transaction/SignedHydratedTransaction.d.ts +0 -7
  104. package/dist/neutral/transaction/SignedHydratedTransaction.d.ts.map +0 -1
  105. package/dist/neutral/transaction/SignedHydratedTransactionWithHashMeta.d.ts +0 -7
  106. package/dist/neutral/transaction/SignedHydratedTransactionWithHashMeta.d.ts.map +0 -1
  107. package/dist/neutral/transaction/SignedHydratedTransactionWithStorageMeta.d.ts +0 -7
  108. package/dist/neutral/transaction/SignedHydratedTransactionWithStorageMeta.d.ts.map +0 -1
  109. package/dist/neutral/transaction/TransactionBoundWitness.d.ts +0 -14
  110. package/dist/neutral/transaction/TransactionBoundWitness.d.ts.map +0 -1
  111. package/dist/neutral/transaction/TransactionBoundWitnessDeprecated.d.ts +0 -11
  112. package/dist/neutral/transaction/TransactionBoundWitnessDeprecated.d.ts.map +0 -1
  113. package/dist/neutral/transaction/TransactionFeesFields.d.ts +0 -19
  114. package/dist/neutral/transaction/TransactionFeesFields.d.ts.map +0 -1
  115. package/dist/neutral/transaction/UnsignedHydratedTransaction.d.ts +0 -6
  116. package/dist/neutral/transaction/UnsignedHydratedTransaction.d.ts.map +0 -1
  117. package/dist/neutral/transaction/UnsignedHydratedTransactionWithHashMeta.d.ts +0 -7
  118. package/dist/neutral/transaction/UnsignedHydratedTransactionWithHashMeta.d.ts.map +0 -1
  119. package/dist/neutral/transaction/index.d.ts +0 -13
  120. package/dist/neutral/transaction/index.d.ts.map +0 -1
  121. package/src/block/BlockBoundWitness.ts +0 -64
  122. package/src/block/HydratedBlock.ts +0 -24
  123. package/src/transaction/AnyHydratedTransaction.ts +0 -20
  124. package/src/transaction/HydratedTransaction.ts +0 -29
  125. package/src/transaction/HydratedTransactionWithHashMeta.ts +0 -23
  126. package/src/transaction/HydratedTransactionWithStorageMeta.ts +0 -23
  127. package/src/transaction/SignedHydratedTransaction.ts +0 -22
  128. package/src/transaction/SignedHydratedTransactionWithHashMeta.ts +0 -25
  129. package/src/transaction/SignedHydratedTransactionWithStorageMeta.ts +0 -25
  130. package/src/transaction/TransactionBoundWitness.ts +0 -27
  131. package/src/transaction/TransactionBoundWitnessDeprecated.ts +0 -33
  132. package/src/transaction/TransactionFeesFields.ts +0 -58
  133. package/src/transaction/UnsignedHydratedTransaction.ts +0 -21
  134. package/src/transaction/UnsignedHydratedTransactionWithHashMeta.ts +0 -24
  135. package/src/transaction/index.ts +0 -12
@@ -1,13 +0,0 @@
1
- export * from './AnyHydratedTransaction.ts';
2
- export * from './HydratedTransaction.ts';
3
- export * from './HydratedTransactionWithHashMeta.ts';
4
- export * from './HydratedTransactionWithStorageMeta.ts';
5
- export * from './SignedHydratedTransaction.ts';
6
- export * from './SignedHydratedTransactionWithHashMeta.ts';
7
- export * from './SignedHydratedTransactionWithStorageMeta.ts';
8
- export * from './TransactionBoundWitness.ts';
9
- export * from './TransactionBoundWitnessDeprecated.ts';
10
- export * from './TransactionFeesFields.ts';
11
- export * from './UnsignedHydratedTransaction.ts';
12
- export * from './UnsignedHydratedTransactionWithHashMeta.ts';
13
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/transaction/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAA;AAC3C,cAAc,0BAA0B,CAAA;AACxC,cAAc,sCAAsC,CAAA;AACpD,cAAc,yCAAyC,CAAA;AACvD,cAAc,gCAAgC,CAAA;AAC9C,cAAc,4CAA4C,CAAA;AAC1D,cAAc,+CAA+C,CAAA;AAC7D,cAAc,8BAA8B,CAAA;AAC5C,cAAc,wCAAwC,CAAA;AACtD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,kCAAkC,CAAA;AAChD,cAAc,8CAA8C,CAAA"}
@@ -1,64 +0,0 @@
1
- import type { Hash } from '@xylabs/hex'
2
- import { isHex } from '@xylabs/hex'
3
- import { AsObjectFactory } from '@xylabs/object'
4
- import type { BoundWitness, Signed } from '@xyo-network/boundwitness-model'
5
- import { isBoundWitness, isSigned } from '@xyo-network/boundwitness-model'
6
- import type { WithHashMeta, WithStorageMeta } from '@xyo-network/payload-model'
7
- import { isHashMeta, isStorageMeta } from '@xyo-network/payload-model'
8
-
9
- import type { ChainId, XL1BlockNumber } from '../model/index.ts'
10
-
11
- export interface BlockBoundWitnessMeta {
12
- $epoch: number
13
- }
14
-
15
- export interface BlockBoundWitnessFields {
16
- /** Block number */
17
- block: XL1BlockNumber
18
- /** Chain id - this should be "0" for the genesis block */
19
- chain: ChainId
20
- /** Previous block hash if not block 0 */
21
- previous: Hash | null /* the previous block hash */
22
- /** Version of the protocol being used major * 1,000,000 + minor * 1,000 + patch */
23
- protocol: number
24
- /** Step hashes */
25
- step_hashes: Hash[]
26
- }
27
-
28
- export type BlockBoundWitness = BoundWitness<BlockBoundWitnessFields & BlockBoundWitnessMeta>
29
-
30
- export const isBlockBoundWitness = (value: unknown): value is BlockBoundWitness => {
31
- const typedObj = value as BlockBoundWitness
32
- return isBoundWitness(value)
33
- && Number.isInteger(typedObj.block)
34
- && isHex(typedObj.chain)
35
- }
36
-
37
- export const isSignedBlockBoundWitness = (value: unknown): value is Signed<BlockBoundWitness> => {
38
- return isBlockBoundWitness(value) && isSigned(value)
39
- }
40
-
41
- export const isBlockBoundWitnessWithStorageMeta = (value: unknown): value is WithStorageMeta<BlockBoundWitness> => {
42
- return isBlockBoundWitness(value) && isStorageMeta(value)
43
- }
44
-
45
- export const isSignedBlockBoundWitnessWithStorageMeta = (value: unknown): value is Signed<WithStorageMeta<BlockBoundWitness>> => {
46
- return isBlockBoundWitnessWithStorageMeta(value) && isSigned(value)
47
- }
48
-
49
- export const isBlockBoundWitnessWithHashMeta = (value: unknown): value is WithHashMeta<BlockBoundWitness> => {
50
- return isBlockBoundWitness(value) && isHashMeta(value)
51
- }
52
-
53
- export const isSignedBlockBoundWitnessWithHashMeta = (value: unknown): value is Signed<WithHashMeta<BlockBoundWitness>> => {
54
- return isBlockBoundWitnessWithHashMeta(value) && isSigned(value)
55
- }
56
-
57
- export const asBlockBoundWitness = AsObjectFactory.create(isBlockBoundWitness)
58
- export const asSignedBlockBoundWitness = AsObjectFactory.create(isSignedBlockBoundWitness)
59
-
60
- export const asBlockBoundWitnessWithStorageMeta = AsObjectFactory.create(isBlockBoundWitnessWithStorageMeta)
61
- export const asSignedBlockBoundWitnessWithStorageMeta = AsObjectFactory.create(isSignedBlockBoundWitnessWithStorageMeta)
62
-
63
- export const asBlockBoundWitnessWithHashMeta = AsObjectFactory.create(isBlockBoundWitnessWithHashMeta)
64
- export const asSignedBlockBoundWitnessWithHashMeta = AsObjectFactory.create(isSignedBlockBoundWitnessWithHashMeta)
@@ -1,24 +0,0 @@
1
- import { AsObjectFactory } from '@xylabs/object'
2
- import type { Signed } from '@xyo-network/boundwitness-model'
3
- import { type Payload, type WithStorageMeta } from '@xyo-network/payload-model'
4
-
5
- import { isHydratedBoundWitness } from '../isHydratedBoundWitness.ts'
6
- import {
7
- type BlockBoundWitness,
8
- isBlockBoundWitnessWithStorageMeta,
9
- } from './BlockBoundWitness.ts'
10
-
11
- export type HydratedBlock<T extends BlockBoundWitness = BlockBoundWitness,
12
- P extends Payload = Payload> = [WithStorageMeta<Signed<T>>, WithStorageMeta<P>[]]
13
-
14
- export const isHydratedBlock = (
15
- value: unknown,
16
- ): value is HydratedBlock => {
17
- return (
18
- isHydratedBoundWitness(value) && isBlockBoundWitnessWithStorageMeta(value[0])
19
- )
20
- }
21
-
22
- export const asHydratedBlock = AsObjectFactory.create<HydratedBlock>(
23
- isHydratedBlock,
24
- )
@@ -1,20 +0,0 @@
1
- import { AsObjectFactory } from '@xylabs/object'
2
- import { type Payload } from '@xyo-network/payload-model'
3
-
4
- import { isHydratedBoundWitness } from '../isHydratedBoundWitness.ts'
5
- import { isTransactionBoundWitness, type TransactionBoundWitness } from './TransactionBoundWitness.ts'
6
-
7
- export type AnyHydratedTransaction<T extends TransactionBoundWitness = TransactionBoundWitness,
8
- P extends Payload = Payload> = [T, P[]]
9
-
10
- export const isAnyHydratedTransaction = (
11
- value: unknown,
12
- ): value is AnyHydratedTransaction => {
13
- return (
14
- isHydratedBoundWitness(value) && isTransactionBoundWitness(value[0])
15
- )
16
- }
17
-
18
- export const asAnyHydratedTransaction = AsObjectFactory.create<AnyHydratedTransaction>(
19
- isAnyHydratedTransaction,
20
- )
@@ -1,29 +0,0 @@
1
- import { AsObjectFactory } from '@xylabs/object'
2
- import { isSigned, type Signed } from '@xyo-network/boundwitness-model'
3
- import {
4
- isStorageMeta, type Payload, type WithStorageMeta,
5
- } from '@xyo-network/payload-model'
6
-
7
- import { isHydratedBoundWitness } from '../isHydratedBoundWitness.ts'
8
- import { isTransactionBoundWitness, type TransactionBoundWitness } from './TransactionBoundWitness.ts'
9
-
10
- /** @deprecated Use HydratedTransactionWithStorageMeta instead */
11
- export type HydratedTransaction<T extends TransactionBoundWitness = TransactionBoundWitness,
12
- P extends Payload = Payload> = [WithStorageMeta<Signed<T>>, WithStorageMeta<P>[]]
13
-
14
- /** @deprecated Use isHydratedTransactionWithStorageMeta instead */
15
- export const isHydratedTransaction = (
16
- value: unknown,
17
- // eslint-disable-next-line sonarjs/deprecation
18
- ): value is HydratedTransaction => {
19
- return (
20
- isHydratedBoundWitness(value) && isTransactionBoundWitness(value[0]) && isSigned(value[0]) && isStorageMeta(value[0])
21
- )
22
- }
23
-
24
- /** @deprecated Use asHydratedTransactionWithStorageMeta instead */
25
- // eslint-disable-next-line sonarjs/deprecation
26
- export const asHydratedTransaction = AsObjectFactory.create<HydratedTransaction>(
27
- // eslint-disable-next-line sonarjs/deprecation
28
- isHydratedTransaction,
29
- )
@@ -1,23 +0,0 @@
1
- import { AsObjectFactory } from '@xylabs/object'
2
- import { type Signed } from '@xyo-network/boundwitness-model'
3
- import {
4
- isStorageMeta, type Payload, type WithHashMeta,
5
- } from '@xyo-network/payload-model'
6
-
7
- import { isAnyHydratedTransaction } from './AnyHydratedTransaction.ts'
8
- import { type TransactionBoundWitness } from './TransactionBoundWitness.ts'
9
-
10
- export type HydratedTransactionWithHashMeta<T extends TransactionBoundWitness = TransactionBoundWitness,
11
- P extends Payload = Payload> = [WithHashMeta<Signed<T>>, WithHashMeta<P>[]]
12
-
13
- export const isHydratedTransactionWithHashMeta = (
14
- value: unknown,
15
- ): value is HydratedTransactionWithHashMeta => {
16
- return (
17
- isAnyHydratedTransaction(value) && isStorageMeta(value[0]) && !value[1].some(v => !isStorageMeta(v))
18
- )
19
- }
20
-
21
- export const asHydratedTransactionWithHashMeta = AsObjectFactory.create<HydratedTransactionWithHashMeta>(
22
- isHydratedTransactionWithHashMeta,
23
- )
@@ -1,23 +0,0 @@
1
- import { AsObjectFactory } from '@xylabs/object'
2
- import { type Signed } from '@xyo-network/boundwitness-model'
3
- import {
4
- isStorageMeta, type Payload, type WithStorageMeta,
5
- } from '@xyo-network/payload-model'
6
-
7
- import { isAnyHydratedTransaction } from './AnyHydratedTransaction.ts'
8
- import { type TransactionBoundWitness } from './TransactionBoundWitness.ts'
9
-
10
- export type HydratedTransactionWithStorageMeta<T extends TransactionBoundWitness = TransactionBoundWitness,
11
- P extends Payload = Payload> = [WithStorageMeta<Signed<T>>, WithStorageMeta<P>[]]
12
-
13
- export const isHydratedTransactionWithStorageMeta = (
14
- value: unknown,
15
- ): value is HydratedTransactionWithStorageMeta => {
16
- return (
17
- isAnyHydratedTransaction(value) && isStorageMeta(value[0]) && !value[1].some(v => !isStorageMeta(v))
18
- )
19
- }
20
-
21
- export const asHydratedTransactionWithStorageMeta = AsObjectFactory.create<HydratedTransactionWithStorageMeta>(
22
- isHydratedTransactionWithStorageMeta,
23
- )
@@ -1,22 +0,0 @@
1
- import { AsObjectFactory } from '@xylabs/object'
2
- import type { Signed } from '@xyo-network/boundwitness-model'
3
- import { isSigned } from '@xyo-network/boundwitness-model'
4
- import type { Payload } from '@xyo-network/payload-model'
5
-
6
- import { isAnyHydratedTransaction } from './AnyHydratedTransaction.ts'
7
- import { type TransactionBoundWitness } from './TransactionBoundWitness.ts'
8
-
9
- export type SignedHydratedTransaction<T extends TransactionBoundWitness = TransactionBoundWitness,
10
- P extends Payload = Payload> = [Signed<T>, P[]]
11
-
12
- export const isSignedHydratedTransaction = (
13
- value: unknown,
14
- ): value is SignedHydratedTransaction => {
15
- return (
16
- isAnyHydratedTransaction(value) && isSigned(value[0])
17
- )
18
- }
19
-
20
- export const asSignedHydratedTransaction = AsObjectFactory.create<SignedHydratedTransaction>(
21
- isSignedHydratedTransaction,
22
- )
@@ -1,25 +0,0 @@
1
- import { AsObjectFactory } from '@xylabs/object'
2
- import { type Signed } from '@xyo-network/boundwitness-model'
3
- import type {
4
- Payload,
5
- WithHashMeta,
6
- } from '@xyo-network/payload-model'
7
- import { isStorageMeta } from '@xyo-network/payload-model'
8
-
9
- import { isSignedHydratedTransaction } from './SignedHydratedTransaction.ts'
10
- import { type TransactionBoundWitness } from './TransactionBoundWitness.ts'
11
-
12
- export type SignedHydratedTransactionWithHashMeta<T extends TransactionBoundWitness = TransactionBoundWitness,
13
- P extends Payload = Payload> = [WithHashMeta<Signed<T>>, WithHashMeta<P>[]]
14
-
15
- export const isSignedHydratedTransactionWithHashMeta = (
16
- value: unknown,
17
- ): value is SignedHydratedTransactionWithHashMeta => {
18
- return (
19
- isSignedHydratedTransaction(value) && isStorageMeta(value[0]) && !value[1].some(v => !isStorageMeta(v))
20
- )
21
- }
22
-
23
- export const asSignedHydratedTransactionWithHashMeta = AsObjectFactory.create<SignedHydratedTransactionWithHashMeta>(
24
- isSignedHydratedTransactionWithHashMeta,
25
- )
@@ -1,25 +0,0 @@
1
- import { AsObjectFactory } from '@xylabs/object'
2
- import { type Signed } from '@xyo-network/boundwitness-model'
3
- import type {
4
- Payload,
5
- WithStorageMeta,
6
- } from '@xyo-network/payload-model'
7
- import { isStorageMeta } from '@xyo-network/payload-model'
8
-
9
- import { isSignedHydratedTransaction } from './SignedHydratedTransaction.ts'
10
- import { type TransactionBoundWitness } from './TransactionBoundWitness.ts'
11
-
12
- export type SignedHydratedTransactionWithStorageMeta<T extends TransactionBoundWitness = TransactionBoundWitness,
13
- P extends Payload = Payload> = [WithStorageMeta<Signed<T>>, WithStorageMeta<P>[]]
14
-
15
- export const isSignedHydratedTransactionWithStorageMeta = (
16
- value: unknown,
17
- ): value is SignedHydratedTransactionWithStorageMeta => {
18
- return (
19
- isSignedHydratedTransaction(value) && isStorageMeta(value[0]) && !value[1].some(v => !isStorageMeta(v))
20
- )
21
- }
22
-
23
- export const asSignedHydratedTransactionWithStorageMeta = AsObjectFactory.create<SignedHydratedTransactionWithStorageMeta>(
24
- isSignedHydratedTransactionWithStorageMeta,
25
- )
@@ -1,27 +0,0 @@
1
- import {
2
- type Address, type Hex, isAddress,
3
- } from '@xylabs/hex'
4
- import { AsObjectFactory } from '@xylabs/object'
5
- import type { BoundWitness } from '@xyo-network/boundwitness-model'
6
- import { isBoundWitness } from '@xyo-network/boundwitness-model'
7
-
8
- import type { BlockDuration } from '../fields/index.ts'
9
- import type { FromFields, OptionalExecutable } from '../payload/index.ts'
10
- import type { TransactionFeesFields } from './TransactionFeesFields.ts'
11
-
12
- export interface TransactionBoundWitnessFields extends BlockDuration, TransactionFeesFields {
13
- chain: Hex | Address & { __chain: true }
14
- }
15
-
16
- export type TransactionBoundWitness = BoundWitness<TransactionBoundWitnessFields & OptionalExecutable & FromFields>
17
-
18
- export const isTransactionBoundWitness = (value: unknown): value is TransactionBoundWitness => {
19
- const typedObj = value as TransactionBoundWitness
20
- return isBoundWitness(value)
21
- && isAddress(typedObj.chain)
22
- && typedObj.fees !== undefined
23
- && typedObj.exp !== undefined
24
- && typedObj.nbf !== undefined
25
- }
26
-
27
- export const asTransactionBoundWitness = AsObjectFactory.create(isTransactionBoundWitness)
@@ -1,33 +0,0 @@
1
- import { AsObjectFactory } from '@xylabs/object'
2
- import type { Signed } from '@xyo-network/boundwitness-model'
3
- import { isSigned } from '@xyo-network/boundwitness-model'
4
- import type { WithHashMeta, WithStorageMeta } from '@xyo-network/payload-model'
5
- import { isHashMeta, isStorageMeta } from '@xyo-network/payload-model'
6
-
7
- import { isTransactionBoundWitness, type TransactionBoundWitness } from './TransactionBoundWitness.ts'
8
-
9
- export const isSignedTransactionBoundWitness = (value: unknown): value is Signed<TransactionBoundWitness> => {
10
- return isTransactionBoundWitness(value) && isSigned(value)
11
- }
12
-
13
- export const isTransactionBoundWitnessWithStorageMeta = (value: unknown): value is WithStorageMeta<TransactionBoundWitness> =>
14
- isTransactionBoundWitness(value)
15
- && isStorageMeta(value)
16
-
17
- export const isTransactionBoundWitnessWithHashMeta = (value: unknown): value is WithHashMeta<TransactionBoundWitness> =>
18
- isTransactionBoundWitness(value)
19
- && isHashMeta(value)
20
-
21
- export const isSignedTransactionBoundWitnessWithStorageMeta = (value: unknown): value is WithStorageMeta<Signed<TransactionBoundWitness>> =>
22
-
23
- isSignedTransactionBoundWitness(value)
24
- && isStorageMeta(value)
25
-
26
- export const isSignedTransactionBoundWitnessWithHashMeta = (value: unknown): value is WithHashMeta<Signed<TransactionBoundWitness>> =>
27
-
28
- isSignedTransactionBoundWitness(value)
29
- && isHashMeta(value)
30
-
31
- export const asTransactionBoundWitnessWithStorageMeta = AsObjectFactory.create(isTransactionBoundWitnessWithStorageMeta)
32
-
33
- export const asTransactionBoundWitnessWithHashMeta = AsObjectFactory.create(isTransactionBoundWitnessWithHashMeta)
@@ -1,58 +0,0 @@
1
- import { type Hex, isHex } from '@xylabs/hex'
2
- import { AsObjectFactory } from '@xylabs/object'
3
- import { isObject } from '@xylabs/typeof'
4
-
5
- import { type AttoXL1, isAttoXL1 } from '../xl1/index.ts'
6
-
7
- export interface TransactionFeesBigInt {
8
- base: AttoXL1
9
- gasLimit: AttoXL1
10
- gasPrice: AttoXL1
11
- priority: AttoXL1
12
- }
13
-
14
- export type TransactionFeesHex = {
15
- [K in keyof TransactionFeesBigInt]: Hex;
16
- }
17
-
18
- export interface TransactionFeesFields {
19
- fees: TransactionFeesHex
20
- }
21
-
22
- export const isTransactionFeesBigInt = (value: unknown): value is TransactionFeesBigInt => {
23
- if (!isObject(value)) {
24
- return false
25
- }
26
- const {
27
- base, gasLimit, gasPrice, priority,
28
- } = value as TransactionFeesBigInt
29
- return (
30
- isAttoXL1(base)
31
- && isAttoXL1(gasLimit)
32
- && isAttoXL1(gasPrice)
33
- && isAttoXL1(priority)
34
- )
35
- }
36
-
37
- export const asTransactionFeesBigInt = AsObjectFactory.create<TransactionFeesBigInt>(
38
- isTransactionFeesBigInt,
39
- )
40
-
41
- export const isTransactionFeesHex = (value: unknown): value is TransactionFeesHex => {
42
- if (!isObject(value)) {
43
- return false
44
- }
45
- const {
46
- base, gasLimit, gasPrice, priority,
47
- } = value as TransactionFeesHex
48
- return (
49
- isHex(base)
50
- && isHex(gasLimit)
51
- && isHex(gasPrice)
52
- && isHex(priority)
53
- )
54
- }
55
-
56
- export const asTransactionFeesHex = AsObjectFactory.create<TransactionFeesHex>(
57
- isTransactionFeesHex,
58
- )
@@ -1,21 +0,0 @@
1
- import { AsObjectFactory } from '@xylabs/object'
2
- import { isUnsigned } from '@xyo-network/boundwitness-model'
3
- import type { Payload } from '@xyo-network/payload-model'
4
-
5
- import { isAnyHydratedTransaction } from './AnyHydratedTransaction.ts'
6
- import { type TransactionBoundWitness } from './TransactionBoundWitness.ts'
7
-
8
- export type UnsignedHydratedTransaction<T extends TransactionBoundWitness = TransactionBoundWitness,
9
- P extends Payload = Payload> = [T, P[]]
10
-
11
- export const isUnsignedHydratedTransaction = (
12
- value: unknown,
13
- ): value is UnsignedHydratedTransaction => {
14
- return (
15
- isAnyHydratedTransaction(value) && isUnsigned(value[0])
16
- )
17
- }
18
-
19
- export const asUnsignedHydratedTransaction = AsObjectFactory.create<UnsignedHydratedTransaction>(
20
- isUnsignedHydratedTransaction,
21
- )
@@ -1,24 +0,0 @@
1
- import { AsObjectFactory } from '@xylabs/object'
2
- import type { Unsigned } from '@xyo-network/boundwitness-model'
3
- import {
4
- isHashMeta,
5
- type Payload, type WithHashMeta,
6
- } from '@xyo-network/payload-model'
7
-
8
- import { isSignedHydratedTransaction } from './SignedHydratedTransaction.ts'
9
- import { type TransactionBoundWitness } from './TransactionBoundWitness.ts'
10
-
11
- export type UnsignedHydratedTransactionWithHashMeta<T extends TransactionBoundWitness = TransactionBoundWitness,
12
- P extends Payload = Payload> = [WithHashMeta<Unsigned<T>>, WithHashMeta<P>[]]
13
-
14
- export const isUnsignedHydratedTransactionWithHashMeta = (
15
- value: unknown,
16
- ): value is UnsignedHydratedTransactionWithHashMeta => {
17
- return (
18
- isSignedHydratedTransaction(value) && isHashMeta(value[0]) && !value[1].some(v => !isHashMeta(v))
19
- )
20
- }
21
-
22
- export const asUnsignedHydratedTransactionWithHashMeta = AsObjectFactory.create<UnsignedHydratedTransactionWithHashMeta>(
23
- isUnsignedHydratedTransactionWithHashMeta,
24
- )
@@ -1,12 +0,0 @@
1
- export * from './AnyHydratedTransaction.ts'
2
- export * from './HydratedTransaction.ts'
3
- export * from './HydratedTransactionWithHashMeta.ts'
4
- export * from './HydratedTransactionWithStorageMeta.ts'
5
- export * from './SignedHydratedTransaction.ts'
6
- export * from './SignedHydratedTransactionWithHashMeta.ts'
7
- export * from './SignedHydratedTransactionWithStorageMeta.ts'
8
- export * from './TransactionBoundWitness.ts'
9
- export * from './TransactionBoundWitnessDeprecated.ts'
10
- export * from './TransactionFeesFields.ts'
11
- export * from './UnsignedHydratedTransaction.ts'
12
- export * from './UnsignedHydratedTransactionWithHashMeta.ts'