@kontor/kontor-sdk 1.0.0-alpha.27 → 1.0.0-alpha.29

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 (191) hide show
  1. package/dist/cjs/exports/index.js.map +1 -1
  2. package/dist/cjs/sdk/accounts/hd-key-to-account.js +1 -0
  3. package/dist/cjs/sdk/accounts/hd-key-to-account.js.map +1 -1
  4. package/dist/cjs/sdk/accounts/mnemonic-to-account.js +2 -4
  5. package/dist/cjs/sdk/accounts/mnemonic-to-account.js.map +1 -1
  6. package/dist/cjs/sdk/accounts/private-key-to-account.js +3 -8
  7. package/dist/cjs/sdk/accounts/private-key-to-account.js.map +1 -1
  8. package/dist/cjs/sdk/accounts/to-local-account.js.map +1 -1
  9. package/dist/cjs/sdk/actions/get-contract.js +36 -16
  10. package/dist/cjs/sdk/actions/get-contract.js.map +1 -1
  11. package/dist/cjs/sdk/actions/kontor/public/build-compose-query.js +9 -12
  12. package/dist/cjs/sdk/actions/kontor/public/build-compose-query.js.map +1 -1
  13. package/dist/cjs/sdk/actions/kontor/public/build-instruction-query.js +13 -33
  14. package/dist/cjs/sdk/actions/kontor/public/build-instruction-query.js.map +1 -1
  15. package/dist/cjs/sdk/actions/kontor/public/call-compose.js +6 -4
  16. package/dist/cjs/sdk/actions/kontor/public/call-compose.js.map +1 -1
  17. package/dist/cjs/sdk/actions/kontor/public/call-view.js.map +1 -1
  18. package/dist/cjs/sdk/actions/kontor/public/inspect.js +1 -2
  19. package/dist/cjs/sdk/actions/kontor/public/inspect.js.map +1 -1
  20. package/dist/cjs/sdk/actions/kontor/public/proc-contract.js +5 -5
  21. package/dist/cjs/sdk/actions/kontor/public/proc-contract.js.map +1 -1
  22. package/dist/cjs/sdk/actions/kontor/public/view-contract.js +2 -1
  23. package/dist/cjs/sdk/actions/kontor/public/view-contract.js.map +1 -1
  24. package/dist/cjs/sdk/chains/definitions/signet.js +0 -1
  25. package/dist/cjs/sdk/chains/definitions/signet.js.map +1 -1
  26. package/dist/cjs/sdk/clients/decorators/kontor/public.js.map +1 -1
  27. package/dist/cjs/sdk/errors/chain.js +44 -0
  28. package/dist/cjs/sdk/errors/chain.js.map +1 -0
  29. package/dist/cjs/sdk/utils/chain/assert-current-chain.js +11 -0
  30. package/dist/cjs/sdk/utils/chain/assert-current-chain.js.map +1 -0
  31. package/dist/cjs/sdk/utils/kontor/build-compose-query.js +19 -0
  32. package/dist/cjs/sdk/utils/kontor/build-compose-query.js.map +1 -0
  33. package/dist/cjs/sdk/utils/kontor/build-instruction-query.js +36 -0
  34. package/dist/cjs/sdk/utils/kontor/build-instruction-query.js.map +1 -0
  35. package/dist/cjs/sdk/utils/wit/codecs/bool.js +29 -0
  36. package/dist/cjs/sdk/utils/wit/codecs/bool.js.map +1 -0
  37. package/dist/cjs/sdk/utils/wit/codecs/s64.js +57 -0
  38. package/dist/cjs/sdk/utils/wit/codecs/s64.js.map +1 -0
  39. package/dist/cjs/sdk/utils/wit/decode-wit-parameter.js +134 -131
  40. package/dist/cjs/sdk/utils/wit/decode-wit-parameter.js.map +1 -1
  41. package/dist/cjs/sdk/utils/wit/encode-wit-parameters.js +74 -26
  42. package/dist/cjs/sdk/utils/wit/encode-wit-parameters.js.map +1 -1
  43. package/dist/cjs/tsconfig.build.tsbuildinfo +1 -1
  44. package/dist/cjs/wit/wit-parser/core/errors/{splitParameters.js → split-parameters.js} +1 -1
  45. package/dist/cjs/wit/wit-parser/core/errors/split-parameters.js.map +1 -0
  46. package/dist/cjs/wit/wit-parser/core/utils.js +3 -3
  47. package/dist/cjs/wit/wit-parser/core/utils.js.map +1 -1
  48. package/dist/esm/exports/index.js +1 -1
  49. package/dist/esm/exports/index.js.map +1 -1
  50. package/dist/esm/sdk/accounts/hd-key-to-account.js +2 -5
  51. package/dist/esm/sdk/accounts/hd-key-to-account.js.map +1 -1
  52. package/dist/esm/sdk/accounts/mnemonic-to-account.js +2 -10
  53. package/dist/esm/sdk/accounts/mnemonic-to-account.js.map +1 -1
  54. package/dist/esm/sdk/accounts/private-key-to-account.js +3 -15
  55. package/dist/esm/sdk/accounts/private-key-to-account.js.map +1 -1
  56. package/dist/esm/sdk/accounts/to-local-account.js +0 -5
  57. package/dist/esm/sdk/accounts/to-local-account.js.map +1 -1
  58. package/dist/esm/sdk/actions/get-contract.js +37 -35
  59. package/dist/esm/sdk/actions/get-contract.js.map +1 -1
  60. package/dist/esm/sdk/actions/kontor/public/build-compose-query.js +9 -13
  61. package/dist/esm/sdk/actions/kontor/public/build-compose-query.js.map +1 -1
  62. package/dist/esm/sdk/actions/kontor/public/build-instruction-query.js +13 -36
  63. package/dist/esm/sdk/actions/kontor/public/build-instruction-query.js.map +1 -1
  64. package/dist/esm/sdk/actions/kontor/public/call-compose.js +6 -4
  65. package/dist/esm/sdk/actions/kontor/public/call-compose.js.map +1 -1
  66. package/dist/esm/sdk/actions/kontor/public/call-view.js +1 -0
  67. package/dist/esm/sdk/actions/kontor/public/call-view.js.map +1 -1
  68. package/dist/esm/sdk/actions/kontor/public/inspect.js +9 -4
  69. package/dist/esm/sdk/actions/kontor/public/inspect.js.map +1 -1
  70. package/dist/esm/sdk/actions/kontor/public/proc-contract.js +5 -6
  71. package/dist/esm/sdk/actions/kontor/public/proc-contract.js.map +1 -1
  72. package/dist/esm/sdk/actions/kontor/public/view-contract.js +3 -5
  73. package/dist/esm/sdk/actions/kontor/public/view-contract.js.map +1 -1
  74. package/dist/esm/sdk/chains/definitions/signet.js +0 -1
  75. package/dist/esm/sdk/chains/definitions/signet.js.map +1 -1
  76. package/dist/esm/sdk/clients/decorators/kontor/public.js.map +1 -1
  77. package/dist/esm/sdk/errors/chain.js +37 -0
  78. package/dist/esm/sdk/errors/chain.js.map +1 -0
  79. package/dist/esm/sdk/utils/chain/assert-current-chain.js +8 -0
  80. package/dist/esm/sdk/utils/chain/assert-current-chain.js.map +1 -0
  81. package/dist/esm/sdk/utils/kontor/build-compose-query.js +16 -0
  82. package/dist/esm/sdk/utils/kontor/build-compose-query.js.map +1 -0
  83. package/dist/esm/sdk/utils/kontor/build-instruction-query.js +36 -0
  84. package/dist/esm/sdk/utils/kontor/build-instruction-query.js.map +1 -0
  85. package/dist/esm/sdk/utils/wit/codecs/bool.js +26 -0
  86. package/dist/esm/sdk/utils/wit/codecs/bool.js.map +1 -0
  87. package/dist/esm/sdk/utils/wit/codecs/s64.js +65 -0
  88. package/dist/esm/sdk/utils/wit/codecs/s64.js.map +1 -0
  89. package/dist/esm/sdk/utils/wit/decode-wit-parameter.js +155 -147
  90. package/dist/esm/sdk/utils/wit/decode-wit-parameter.js.map +1 -1
  91. package/dist/esm/sdk/utils/wit/encode-wit-parameters.js +74 -72
  92. package/dist/esm/sdk/utils/wit/encode-wit-parameters.js.map +1 -1
  93. package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
  94. package/dist/esm/wit/wit-parser/core/errors/{splitParameters.js → split-parameters.js} +1 -1
  95. package/dist/esm/wit/wit-parser/core/errors/split-parameters.js.map +1 -0
  96. package/dist/esm/wit/wit-parser/core/utils.js +1 -1
  97. package/dist/esm/wit/wit-parser/core/utils.js.map +1 -1
  98. package/dist/types/exports/index.d.ts +1 -1
  99. package/dist/types/exports/index.d.ts.map +1 -1
  100. package/dist/types/sdk/accounts/hd-key-to-account.d.ts +0 -5
  101. package/dist/types/sdk/accounts/hd-key-to-account.d.ts.map +1 -1
  102. package/dist/types/sdk/accounts/mnemonic-to-account.d.ts +1 -6
  103. package/dist/types/sdk/accounts/mnemonic-to-account.d.ts.map +1 -1
  104. package/dist/types/sdk/accounts/private-key-to-account.d.ts +5 -3
  105. package/dist/types/sdk/accounts/private-key-to-account.d.ts.map +1 -1
  106. package/dist/types/sdk/accounts/to-local-account.d.ts +0 -5
  107. package/dist/types/sdk/accounts/to-local-account.d.ts.map +1 -1
  108. package/dist/types/sdk/actions/get-contract.d.ts +28 -5
  109. package/dist/types/sdk/actions/get-contract.d.ts.map +1 -1
  110. package/dist/types/sdk/actions/kontor/public/build-compose-query.d.ts +5 -5
  111. package/dist/types/sdk/actions/kontor/public/build-compose-query.d.ts.map +1 -1
  112. package/dist/types/sdk/actions/kontor/public/build-instruction-query.d.ts +6 -6
  113. package/dist/types/sdk/actions/kontor/public/build-instruction-query.d.ts.map +1 -1
  114. package/dist/types/sdk/actions/kontor/public/call-compose.d.ts +1 -1
  115. package/dist/types/sdk/actions/kontor/public/call-compose.d.ts.map +1 -1
  116. package/dist/types/sdk/actions/kontor/public/call-view.d.ts +3 -3
  117. package/dist/types/sdk/actions/kontor/public/call-view.d.ts.map +1 -1
  118. package/dist/types/sdk/actions/kontor/public/inspect.d.ts +3 -3
  119. package/dist/types/sdk/actions/kontor/public/inspect.d.ts.map +1 -1
  120. package/dist/types/sdk/actions/kontor/public/proc-contract.d.ts +3 -3
  121. package/dist/types/sdk/actions/kontor/public/proc-contract.d.ts.map +1 -1
  122. package/dist/types/sdk/actions/kontor/public/view-contract.d.ts +3 -3
  123. package/dist/types/sdk/actions/kontor/public/view-contract.d.ts.map +1 -1
  124. package/dist/types/sdk/chains/definitions/signet.d.ts +0 -1
  125. package/dist/types/sdk/chains/definitions/signet.d.ts.map +1 -1
  126. package/dist/types/sdk/clients/decorators/kontor/public.d.ts +6 -6
  127. package/dist/types/sdk/clients/decorators/kontor/public.d.ts.map +1 -1
  128. package/dist/types/sdk/errors/chain.d.ts +32 -0
  129. package/dist/types/sdk/errors/chain.d.ts.map +1 -0
  130. package/dist/types/sdk/types/chain.d.ts +0 -2
  131. package/dist/types/sdk/types/chain.d.ts.map +1 -1
  132. package/dist/types/sdk/types/contract.d.ts.map +1 -1
  133. package/dist/types/sdk/utils/chain/assert-current-chain.d.ts +10 -0
  134. package/dist/types/sdk/utils/chain/assert-current-chain.d.ts.map +1 -0
  135. package/dist/types/sdk/utils/kontor/build-compose-query.d.ts +13 -0
  136. package/dist/types/sdk/utils/kontor/build-compose-query.d.ts.map +1 -0
  137. package/dist/types/sdk/utils/kontor/build-instruction-query.d.ts +22 -0
  138. package/dist/types/sdk/utils/kontor/build-instruction-query.d.ts.map +1 -0
  139. package/dist/types/sdk/utils/wit/codecs/bool.d.ts +3 -0
  140. package/dist/types/sdk/utils/wit/codecs/bool.d.ts.map +1 -0
  141. package/dist/types/sdk/utils/wit/codecs/s64.d.ts +23 -0
  142. package/dist/types/sdk/utils/wit/codecs/s64.d.ts.map +1 -0
  143. package/dist/types/sdk/utils/wit/decode-wit-parameter.d.ts +12 -3
  144. package/dist/types/sdk/utils/wit/decode-wit-parameter.d.ts.map +1 -1
  145. package/dist/types/sdk/utils/wit/encode-wit-parameters.d.ts.map +1 -1
  146. package/dist/types/wit/type-utils.d.ts.map +1 -1
  147. package/dist/types/wit/utils.d.ts.map +1 -1
  148. package/dist/types/wit/wit-parser/core/errors/{splitParameters.d.ts → split-parameters.d.ts} +1 -1
  149. package/dist/types/wit/wit-parser/core/errors/split-parameters.d.ts.map +1 -0
  150. package/package.json +1 -1
  151. package/src/exports/index.ts +1 -1
  152. package/src/sdk/accounts/hd-key-to-account.ts +2 -5
  153. package/src/sdk/accounts/mnemonic-to-account.test.ts +7 -81
  154. package/src/sdk/accounts/mnemonic-to-account.ts +2 -11
  155. package/src/sdk/accounts/private-key-to-account.ts +10 -16
  156. package/src/sdk/accounts/to-local-account.ts +0 -5
  157. package/src/sdk/actions/get-contract.test-d.ts +10 -9
  158. package/src/sdk/actions/get-contract.test.ts +49 -0
  159. package/src/sdk/actions/get-contract.ts +312 -91
  160. package/src/sdk/actions/kontor/public/build-compose-query.ts +23 -25
  161. package/src/sdk/actions/kontor/public/build-instruction-query.ts +27 -53
  162. package/src/sdk/actions/kontor/public/call-compose.ts +8 -4
  163. package/src/sdk/actions/kontor/public/call-view.ts +5 -4
  164. package/src/sdk/actions/kontor/public/inspect.ts +20 -9
  165. package/src/sdk/actions/kontor/public/proc-contract.test.ts +1 -2
  166. package/src/sdk/actions/kontor/public/proc-contract.ts +21 -55
  167. package/src/sdk/actions/kontor/public/{view-contract.test-d.ts → view-contract.test.ts} +2 -2
  168. package/src/sdk/actions/kontor/public/view-contract.ts +10 -9
  169. package/src/sdk/chains/definitions/signet.ts +0 -1
  170. package/src/sdk/clients/base/create-rpc-client.test.ts +0 -1
  171. package/src/sdk/clients/create-public-client.test.ts +0 -1
  172. package/src/sdk/clients/decorators/kontor/public.ts +21 -12
  173. package/src/sdk/clients/kontor/create-public-client.test.ts +0 -7
  174. package/src/sdk/errors/chain.ts +64 -0
  175. package/src/sdk/test/e2e.test.ts +25 -1
  176. package/src/sdk/types/chain.ts +0 -2
  177. package/src/sdk/types/contract.ts +3 -14
  178. package/src/sdk/utils/chain/assert-current-chain.ts +28 -0
  179. package/src/sdk/utils/kontor/build-compose-query.ts +33 -0
  180. package/src/sdk/utils/kontor/build-instruction-query.ts +75 -0
  181. package/src/sdk/utils/wit/codecs/bool.ts +29 -0
  182. package/src/sdk/utils/wit/codecs/s64.ts +76 -0
  183. package/src/sdk/utils/wit/decode-wit-parameter.ts +167 -164
  184. package/src/sdk/utils/wit/encode-wit-parameters.ts +78 -75
  185. package/src/wit/type-utils.ts +0 -2
  186. package/src/wit/utils.ts +3 -6
  187. package/src/wit/wit-parser/core/utils.ts +1 -1
  188. package/dist/cjs/wit/wit-parser/core/errors/splitParameters.js.map +0 -1
  189. package/dist/esm/wit/wit-parser/core/errors/splitParameters.js.map +0 -1
  190. package/dist/types/wit/wit-parser/core/errors/splitParameters.d.ts.map +0 -1
  191. /package/src/wit/wit-parser/core/errors/{splitParameters.ts → split-parameters.ts} +0 -0
@@ -10,11 +10,13 @@ import {
10
10
  } from "../../errors/wit.js";
11
11
 
12
12
  import { U64Codec } from "./codecs/u64.js";
13
+ import { S64Codec } from "./codecs/s64.js";
13
14
  import { DecimalCodec } from "./codecs/decimal.js";
14
15
  import { IntegerCodec } from "./codecs/integer.js";
15
16
  import { ListCodecFactory } from "./codecs/list.js";
16
17
  import { OptionCodecFactory } from "./codecs/option.js";
17
18
  import { StringCodec } from "./codecs/string.js";
19
+ import { BoolCodec } from "./codecs/bool.js";
18
20
 
19
21
  // TODO: consider renaming to Wave
20
22
  export type EncodeWitParametersReturnType = string;
@@ -72,11 +74,11 @@ function prepareParam<const param extends WitParameter>({
72
74
 
73
75
  switch (type) {
74
76
  case "option<bool>":
75
- // No BoolCodec yet – fail loudly for now.
76
- // TODO: change to list speci,fic error
77
- throw new InvalidWitEncodingTypeError(param.type, {
78
- docsPath: "tk",
79
- });
77
+ return {
78
+ encoded: OptionCodecFactory.create(BoolCodec)
79
+ .fromJs(value as unknown as Option<boolean>)
80
+ .toWave(),
81
+ };
80
82
 
81
83
  case "option<string>": {
82
84
  return {
@@ -107,23 +109,40 @@ function prepareParam<const param extends WitParameter>({
107
109
  case "option<s8>":
108
110
  case "option<s16>":
109
111
  case "option<s32>":
110
- case "option<s64>":
111
- // TODO: wire up once you have a signed-int codec
112
112
  throw new InvalidWitEncodingTypeError(param.type, {
113
113
  docsPath: "tk",
114
114
  });
115
+ case "option<s64>":
116
+ return {
117
+ encoded: OptionCodecFactory.create(S64Codec)
118
+ .fromJs(value as unknown as Option<bigint>)
119
+ .toWave(),
120
+ };
121
+ case "option<u64>":
122
+ return {
123
+ encoded: OptionCodecFactory.create(U64Codec)
124
+ .fromJs(value as unknown as Option<bigint>)
125
+ .toWave(),
126
+ };
115
127
 
116
- // unsigned ints
117
128
  case "option<u8>":
118
129
  case "option<u16>":
119
130
  case "option<u32>":
120
- case "option<u64>":
121
- // TODO: wire up once you have an unsigned-int codec
122
- throw new InvalidWitEncodingTypeError(param.type, {
123
- docsPath: "tk",
124
- });
125
-
126
- // tuples
131
+ case "option<list<string>>":
132
+ case "option<list<bool>>":
133
+ case "option<list<s8>>":
134
+ case "option<list<s16>>":
135
+ case "option<list<s32>>":
136
+ case "option<list<s64>>":
137
+ case "option<list<u8>>":
138
+ case "option<list<u16>>":
139
+ case "option<list<u32>>":
140
+ case "option<list<u64>>":
141
+ case "option<list<integer>>":
142
+ case "option<list<decimal>>":
143
+ case "option<list<_>>":
144
+ case "option<list<tuple>>":
145
+ case "option<_>":
127
146
  case "option<tuple>":
128
147
  // TODO: OptionCodecFactory.create(TupleCodec) once it exists
129
148
  throw new InvalidWitEncodingTypeError(param.type, {
@@ -131,11 +150,9 @@ function prepareParam<const param extends WitParameter>({
131
150
  });
132
151
 
133
152
  default: {
134
- // exhaustiveness guard if WitOption ever gains a new member,
135
- // this will start failing at compile time until you add a case.
136
- // @ts-ignore
137
- const _exhaustive: never = type;
138
- throw new InvalidWitEncodingTypeError(param.type, {
153
+ const _: never = type;
154
+
155
+ throw new InvalidWitEncodingTypeError(_, {
139
156
  docsPath: "tk",
140
157
  });
141
158
  }
@@ -148,11 +165,11 @@ function prepareParam<const param extends WitParameter>({
148
165
 
149
166
  switch (type) {
150
167
  case "list<bool>":
151
- // No BoolCodec yet – fail loudly for now.
152
- // TODO: change to list speci,fic error
153
- throw new InvalidWitEncodingTypeError(param.type, {
154
- docsPath: "tk",
155
- });
168
+ return {
169
+ encoded: ListCodecFactory.create(BoolCodec)
170
+ .fromJs(value as unknown as boolean[])
171
+ .toWave(),
172
+ };
156
173
 
157
174
  case "list<string>": {
158
175
  return {
@@ -178,79 +195,54 @@ function prepareParam<const param extends WitParameter>({
178
195
  };
179
196
  }
180
197
 
181
- // signed ints
182
- case "list<s8>":
183
- case "list<s16>":
184
- case "list<s32>":
185
198
  case "list<s64>":
186
- // TODO: wire up once you have a signed-int codec
187
- throw new InvalidWitEncodingTypeError(param.type, {
188
- docsPath: "tk",
189
- });
199
+ return {
200
+ encoded: ListCodecFactory.create(S64Codec)
201
+ .fromJs(value as unknown as bigint[])
202
+ .toWave(),
203
+ };
204
+ case "list<u64>":
205
+ return {
206
+ encoded: ListCodecFactory.create(U64Codec)
207
+ .fromJs(value as unknown as bigint[])
208
+ .toWave(),
209
+ };
190
210
 
191
- // unsigned ints
211
+ case "list<_>":
192
212
  case "list<u8>":
193
213
  case "list<u16>":
194
214
  case "list<u32>":
195
- case "list<u64>":
196
- // TODO: wire up once you have an unsigned-int codec
197
- throw new InvalidWitEncodingTypeError(param.type, {
198
- docsPath: "tk",
199
- });
200
-
201
- // tuples
202
215
  case "list<tuple>":
216
+ case "list<s8>":
217
+ case "list<s16>":
218
+ case "list<s32>":
203
219
  // TODO: ListCodecFactory.create(TupleCodec) once it exists
204
220
  throw new InvalidWitEncodingTypeError(param.type, {
205
221
  docsPath: "tk",
206
222
  });
207
223
 
208
224
  default: {
209
- // exhaustiveness guard if WitList ever gains a new member,
210
- // this will start failing at compile time until you add a case.
211
- // @ts-ignore
212
- const _exhaustive: never = type;
213
- throw new InvalidWitEncodingTypeError(param.type, {
225
+ const _: never = type;
226
+
227
+ throw new InvalidWitEncodingTypeError(_, {
214
228
  docsPath: "tk",
215
229
  });
216
230
  }
217
231
  }
218
232
  }
219
233
 
220
- // if (arrayComponents) {
221
- // const [length, type] = arrayComponents;
222
- // return encodeArray(value, { length, param: { ...param, type } });
223
- // }
224
- // if (param.type === "tuple") {
225
- // return encodeTuple(value as unknown as Tuple, {
226
- // param: param as TupleAbiParameter,
227
- // });
228
- // }
229
- // if (param.type === "address") {
230
- // return encodeAddress(value as unknown as Hex);
231
- // }
232
- // if (param.type === "bool") {
233
- // return encodeBool(value as unknown as boolean);
234
- // }
235
- // if (param.type.startsWith("uint") || param.type.startsWith("int")) {
236
- // const signed = param.type.startsWith("int");
237
- // const [, , size = "256"] = integerRegex.exec(param.type) ?? [];
238
- // return encodeNumber(value as unknown as number, {
239
- // signed,
240
- // size: Number(size),
241
- // });
242
- // }
243
- // if (param.type.startsWith("bytes")) {
244
- // return encodeBytes(value as unknown as Hex, { param });
245
- // }
246
- //
247
-
248
- console.log(param);
234
+ if (param.type === "bool") {
235
+ return encodeBool(value as unknown as boolean);
236
+ }
249
237
 
250
238
  if (param.type === "u64") {
251
239
  return encodeU64(value as unknown as bigint);
252
240
  }
253
241
 
242
+ if (param.type === "s64") {
243
+ return encodeS64(value as unknown as bigint);
244
+ }
245
+
254
246
  if (param.type === "integer") {
255
247
  return encodeInteger(value as unknown as bigint);
256
248
  }
@@ -307,12 +299,23 @@ export function getResultComponentsStrict(
307
299
  return [okType, "error"];
308
300
  }
309
301
 
302
+ function encodeBool(value: boolean): PreparedParam {
303
+ return {
304
+ encoded: BoolCodec.fromJs(value).toWave(),
305
+ };
306
+ }
307
+
310
308
  function encodeU64(value: bigint): PreparedParam {
311
309
  return {
312
310
  encoded: U64Codec.fromJs(value).toWave(),
313
311
  };
314
312
  }
315
313
 
314
+ function encodeS64(value: bigint): PreparedParam {
315
+ return {
316
+ encoded: S64Codec.fromJs(value).toWave(),
317
+ };
318
+ }
316
319
  function encodeInteger(value: bigint): PreparedParam {
317
320
  return {
318
321
  encoded: IntegerCodec.fromJs(value).toWave(),
@@ -40,8 +40,6 @@ export type OneOf<
40
40
  : never;
41
41
  type KeyofUnion<type> = type extends type ? keyof type : never;
42
42
 
43
- // from viem: https://github.com/wevm/viem/blob/320895cf0e6c654b419d8d61a59c4e7b46674368/src/types/utils.ts#L58
44
-
45
43
  export type IsNever<T> = [T] extends [never] ? true : false;
46
44
 
47
45
  export type IsNarrowable<T, U> =
package/src/wit/utils.ts CHANGED
@@ -264,8 +264,7 @@ type _TypedDataParametersToWitParameters<
264
264
  name: string;
265
265
  type: unknown;
266
266
  }
267
- ? // 1. Check if type is record
268
- typedDataParameter["type"] extends keyof typedData & string
267
+ ? typedDataParameter["type"] extends keyof typedData & string
269
268
  ? {
270
269
  name: typedDataParameter["name"];
271
270
  type: "tuple";
@@ -277,8 +276,7 @@ type _TypedDataParametersToWitParameters<
277
276
  keyReferences & { [_ in typedDataParameter["type"]]: true }
278
277
  >;
279
278
  }
280
- : // 2. Check if type is array of structs
281
- typedDataParameter["type"] extends `${infer type extends
279
+ : typedDataParameter["type"] extends `${infer type extends
282
280
  keyof typedData & string}[${infer tail}]`
283
281
  ? {
284
282
  name: typedDataParameter["name"];
@@ -291,7 +289,6 @@ type _TypedDataParametersToWitParameters<
291
289
  keyReferences & { [_ in type]: true }
292
290
  >;
293
291
  }
294
- : // 3. Type is already ABI parameter
295
- typedDataParameter
292
+ : typedDataParameter
296
293
  : never;
297
294
  };
@@ -8,7 +8,7 @@ import {
8
8
  InvalidSignatureError,
9
9
  UnknownSignatureError,
10
10
  } from "./errors/signature.js";
11
- import { InvalidGenericDepthError } from "./errors/splitParameters.js";
11
+ import { InvalidGenericDepthError } from "./errors/split-parameters.js";
12
12
  import { execFunctionSignature, isFunctionSignature } from "./signatures.js";
13
13
  import type { RecordLookup } from "./types/records.js";
14
14
 
@@ -1 +0,0 @@
1
- {"version":3,"file":"splitParameters.js","sourceRoot":"","sources":["../../../../../../src/wit/wit-parser/core/errors/splitParameters.ts"],"names":[],"mappings":";;;AAAA,gDAA8C;AAE9C,MAAa,wBAAyB,SAAQ,oBAAS;IAGrD,YAAY,EAAE,OAAO,EAAE,KAAK,EAAsC;QAChE,KAAK,CAAC,4BAA4B,EAAE;YAClC,YAAY,EAAE;gBACZ,IAAI,OAAO,CAAC,IAAI,EAAE,kBAChB,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAC1B,YAAY;aACb;YACD,OAAO,EAAE,UAAU,KAAK,GAAG;SAC5B,CAAC,CAAC;QAVI;;;;mBAAO,0BAA0B;WAAC;IAW3C,CAAC;CACF;AAbD,4DAaC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"splitParameters.js","sourceRoot":"","sources":["../../../../../../src/wit/wit-parser/core/errors/splitParameters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,MAAM,OAAO,wBAAyB,SAAQ,SAAS;IAGrD,YAAY,EAAE,OAAO,EAAE,KAAK,EAAsC;QAChE,KAAK,CAAC,4BAA4B,EAAE;YAClC,YAAY,EAAE;gBACZ,IAAI,OAAO,CAAC,IAAI,EAAE,kBAChB,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAC1B,YAAY;aACb;YACD,OAAO,EAAE,UAAU,KAAK,GAAG;SAC5B,CAAC,CAAC;QAVI;;;;mBAAO,0BAA0B;WAAC;IAW3C,CAAC;CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"splitParameters.d.ts","sourceRoot":"","sources":["../../../../../../src/wit/wit-parser/core/errors/splitParameters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,qBAAa,wBAAyB,SAAQ,SAAS;IAC5C,IAAI,SAA8B;gBAE/B,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;CAUnE"}