@kontor/kontor-sdk 1.0.0-alpha.39 → 1.0.0-alpha.40

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 (270) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/sdk/actions/kontor/public/call-view.js.map +1 -1
  3. package/dist/cjs/sdk/chains/definitions/signet.js +2 -2
  4. package/dist/cjs/sdk/test/e2e.test-deprecated.js +2 -0
  5. package/dist/cjs/sdk/test/e2e.test-deprecated.js.map +1 -0
  6. package/dist/cjs/sdk/utils/wit/codecs/bool.js +9 -21
  7. package/dist/cjs/sdk/utils/wit/codecs/bool.js.map +1 -1
  8. package/dist/cjs/sdk/utils/wit/codecs/contract-address.js +92 -0
  9. package/dist/cjs/sdk/utils/wit/codecs/contract-address.js.map +1 -0
  10. package/dist/cjs/sdk/utils/wit/codecs/index.js +29 -0
  11. package/dist/cjs/sdk/utils/wit/codecs/index.js.map +1 -0
  12. package/dist/cjs/sdk/utils/wit/codecs/list.js +21 -95
  13. package/dist/cjs/sdk/utils/wit/codecs/list.js.map +1 -1
  14. package/dist/cjs/sdk/utils/wit/codecs/numerics.js +228 -0
  15. package/dist/cjs/sdk/utils/wit/codecs/numerics.js.map +1 -0
  16. package/dist/cjs/sdk/utils/wit/codecs/option.js +21 -72
  17. package/dist/cjs/sdk/utils/wit/codecs/option.js.map +1 -1
  18. package/dist/cjs/sdk/utils/wit/codecs/result.js +32 -0
  19. package/dist/cjs/sdk/utils/wit/codecs/result.js.map +1 -0
  20. package/dist/cjs/sdk/utils/wit/codecs/string.js +16 -21
  21. package/dist/cjs/sdk/utils/wit/codecs/string.js.map +1 -1
  22. package/dist/cjs/sdk/utils/wit/codecs/unit.js +11 -19
  23. package/dist/cjs/sdk/utils/wit/codecs/unit.js.map +1 -1
  24. package/dist/cjs/sdk/utils/wit/codecs/util.js +185 -0
  25. package/dist/cjs/sdk/utils/wit/codecs/util.js.map +1 -0
  26. package/dist/cjs/sdk/utils/wit/decode-wit-parameter.js +297 -163
  27. package/dist/cjs/sdk/utils/wit/decode-wit-parameter.js.map +1 -1
  28. package/dist/cjs/sdk/utils/wit/encode-wit-parameters.js +214 -221
  29. package/dist/cjs/sdk/utils/wit/encode-wit-parameters.js.map +1 -1
  30. package/dist/cjs/tsconfig.build.tsbuildinfo +1 -1
  31. package/dist/cjs/wit/built-ins.js +19 -0
  32. package/dist/cjs/wit/built-ins.js.map +1 -0
  33. package/dist/cjs/wit/regex.js +1 -1
  34. package/dist/cjs/wit/regex.js.map +1 -1
  35. package/dist/cjs/wit/wit-parser/core/errors/signature.js +17 -2
  36. package/dist/cjs/wit/wit-parser/core/errors/signature.js.map +1 -1
  37. package/dist/cjs/wit/wit-parser/core/signatures.js +18 -0
  38. package/dist/cjs/wit/wit-parser/core/signatures.js.map +1 -1
  39. package/dist/cjs/wit/wit-parser/core/types/{records.js → user-defined.js} +1 -1
  40. package/dist/cjs/wit/wit-parser/core/types/user-defined.js.map +1 -0
  41. package/dist/cjs/wit/wit-parser/core/user-defined.js +271 -0
  42. package/dist/cjs/wit/wit-parser/core/user-defined.js.map +1 -0
  43. package/dist/cjs/wit/wit-parser/core/utils.js +29 -7
  44. package/dist/cjs/wit/wit-parser/core/utils.js.map +1 -1
  45. package/dist/cjs/wit/wit-parser/parse-wit-parameter.js +9 -3
  46. package/dist/cjs/wit/wit-parser/parse-wit-parameter.js.map +1 -1
  47. package/dist/cjs/wit/wit-parser/parse-wit.js +7 -3
  48. package/dist/cjs/wit/wit-parser/parse-wit.js.map +1 -1
  49. package/dist/esm/sdk/actions/kontor/public/call-view.js.map +1 -1
  50. package/dist/esm/sdk/chains/definitions/signet.js +2 -2
  51. package/dist/esm/sdk/test/e2e.test-deprecated.js +197 -0
  52. package/dist/esm/sdk/test/e2e.test-deprecated.js.map +1 -0
  53. package/dist/esm/sdk/utils/wit/codecs/bool.js +9 -21
  54. package/dist/esm/sdk/utils/wit/codecs/bool.js.map +1 -1
  55. package/dist/esm/sdk/utils/wit/codecs/contract-address.js +92 -0
  56. package/dist/esm/sdk/utils/wit/codecs/contract-address.js.map +1 -0
  57. package/dist/esm/sdk/utils/wit/codecs/index.js +9 -0
  58. package/dist/esm/sdk/utils/wit/codecs/index.js.map +1 -0
  59. package/dist/esm/sdk/utils/wit/codecs/list.js +20 -114
  60. package/dist/esm/sdk/utils/wit/codecs/list.js.map +1 -1
  61. package/dist/esm/sdk/utils/wit/codecs/numerics.js +234 -0
  62. package/dist/esm/sdk/utils/wit/codecs/numerics.js.map +1 -0
  63. package/dist/esm/sdk/utils/wit/codecs/option.js +21 -88
  64. package/dist/esm/sdk/utils/wit/codecs/option.js.map +1 -1
  65. package/dist/esm/sdk/utils/wit/codecs/result.js +29 -0
  66. package/dist/esm/sdk/utils/wit/codecs/result.js.map +1 -0
  67. package/dist/esm/sdk/utils/wit/codecs/string.js +22 -22
  68. package/dist/esm/sdk/utils/wit/codecs/string.js.map +1 -1
  69. package/dist/esm/sdk/utils/wit/codecs/unit.js +12 -21
  70. package/dist/esm/sdk/utils/wit/codecs/unit.js.map +1 -1
  71. package/dist/esm/sdk/utils/wit/codecs/util.js +181 -0
  72. package/dist/esm/sdk/utils/wit/codecs/util.js.map +1 -0
  73. package/dist/esm/sdk/utils/wit/decode-wit-parameter.js +322 -188
  74. package/dist/esm/sdk/utils/wit/decode-wit-parameter.js.map +1 -1
  75. package/dist/esm/sdk/utils/wit/encode-wit-parameters.js +230 -233
  76. package/dist/esm/sdk/utils/wit/encode-wit-parameters.js.map +1 -1
  77. package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
  78. package/dist/esm/wit/built-ins.js +16 -0
  79. package/dist/esm/wit/built-ins.js.map +1 -0
  80. package/dist/esm/wit/regex.js +1 -1
  81. package/dist/esm/wit/regex.js.map +1 -1
  82. package/dist/esm/wit/wit-parser/core/errors/signature.js +15 -1
  83. package/dist/esm/wit/wit-parser/core/errors/signature.js.map +1 -1
  84. package/dist/esm/wit/wit-parser/core/signatures.js +14 -0
  85. package/dist/esm/wit/wit-parser/core/signatures.js.map +1 -1
  86. package/dist/esm/wit/wit-parser/core/types/signatures.js.map +1 -1
  87. package/dist/esm/wit/wit-parser/core/types/user-defined.js +2 -0
  88. package/dist/esm/wit/wit-parser/core/types/user-defined.js.map +1 -0
  89. package/dist/esm/wit/wit-parser/core/types/utils.js +25 -0
  90. package/dist/esm/wit/wit-parser/core/types/utils.js.map +1 -1
  91. package/dist/esm/wit/wit-parser/core/user-defined.js +280 -0
  92. package/dist/esm/wit/wit-parser/core/user-defined.js.map +1 -0
  93. package/dist/esm/wit/wit-parser/core/utils.js +33 -36
  94. package/dist/esm/wit/wit-parser/core/utils.js.map +1 -1
  95. package/dist/esm/wit/wit-parser/parse-wit-parameter.js +10 -4
  96. package/dist/esm/wit/wit-parser/parse-wit-parameter.js.map +1 -1
  97. package/dist/esm/wit/wit-parser/parse-wit.js +8 -4
  98. package/dist/esm/wit/wit-parser/parse-wit.js.map +1 -1
  99. package/dist/types/sdk/actions/kontor/public/call-view.d.ts +2 -1
  100. package/dist/types/sdk/actions/kontor/public/call-view.d.ts.map +1 -1
  101. package/dist/types/sdk/chains/definitions/signet.d.ts +2 -2
  102. package/dist/types/sdk/test/e2e.test-deprecated.d.ts +2 -0
  103. package/dist/types/sdk/test/e2e.test-deprecated.d.ts.map +1 -0
  104. package/dist/types/sdk/types/contract.d.ts +5 -5
  105. package/dist/types/sdk/types/contract.d.ts.map +1 -1
  106. package/dist/types/sdk/utils/wit/codecs/bool.d.ts +2 -2
  107. package/dist/types/sdk/utils/wit/codecs/bool.d.ts.map +1 -1
  108. package/dist/types/sdk/utils/wit/codecs/contract-address.d.ts +5 -0
  109. package/dist/types/sdk/utils/wit/codecs/contract-address.d.ts.map +1 -0
  110. package/dist/types/sdk/utils/wit/codecs/index.d.ts +9 -0
  111. package/dist/types/sdk/utils/wit/codecs/index.d.ts.map +1 -0
  112. package/dist/types/sdk/utils/wit/codecs/list.d.ts +2 -16
  113. package/dist/types/sdk/utils/wit/codecs/list.d.ts.map +1 -1
  114. package/dist/types/sdk/utils/wit/codecs/numerics.d.ts +14 -0
  115. package/dist/types/sdk/utils/wit/codecs/numerics.d.ts.map +1 -0
  116. package/dist/types/sdk/utils/wit/codecs/option.d.ts +3 -23
  117. package/dist/types/sdk/utils/wit/codecs/option.d.ts.map +1 -1
  118. package/dist/types/sdk/utils/wit/codecs/result.d.ts +4 -0
  119. package/dist/types/sdk/utils/wit/codecs/result.d.ts.map +1 -0
  120. package/dist/types/sdk/utils/wit/codecs/string.d.ts +6 -2
  121. package/dist/types/sdk/utils/wit/codecs/string.d.ts.map +1 -1
  122. package/dist/types/sdk/utils/wit/codecs/types.d.ts +4 -0
  123. package/dist/types/sdk/utils/wit/codecs/types.d.ts.map +1 -1
  124. package/dist/types/sdk/utils/wit/codecs/unit.d.ts +2 -11
  125. package/dist/types/sdk/utils/wit/codecs/unit.d.ts.map +1 -1
  126. package/dist/types/sdk/utils/wit/codecs/util.d.ts +12 -0
  127. package/dist/types/sdk/utils/wit/codecs/util.d.ts.map +1 -0
  128. package/dist/types/sdk/utils/wit/decode-wit-parameter.d.ts +9 -31
  129. package/dist/types/sdk/utils/wit/decode-wit-parameter.d.ts.map +1 -1
  130. package/dist/types/sdk/utils/wit/encode-wit-parameters.d.ts +9 -1
  131. package/dist/types/sdk/utils/wit/encode-wit-parameters.d.ts.map +1 -1
  132. package/dist/types/wit/built-ins.d.ts +6 -0
  133. package/dist/types/wit/built-ins.d.ts.map +1 -0
  134. package/dist/types/wit/regex.d.ts.map +1 -1
  135. package/dist/types/wit/utils.d.ts +53 -33
  136. package/dist/types/wit/utils.d.ts.map +1 -1
  137. package/dist/types/wit/wit-parser/core/errors/signature.d.ts +7 -1
  138. package/dist/types/wit/wit-parser/core/errors/signature.d.ts.map +1 -1
  139. package/dist/types/wit/wit-parser/core/signatures.d.ts +10 -0
  140. package/dist/types/wit/wit-parser/core/signatures.d.ts.map +1 -1
  141. package/dist/types/wit/wit-parser/core/types/signatures.d.ts +6 -2
  142. package/dist/types/wit/wit-parser/core/types/signatures.d.ts.map +1 -1
  143. package/dist/types/wit/wit-parser/core/types/user-defined.d.ts +134 -0
  144. package/dist/types/wit/wit-parser/core/types/user-defined.d.ts.map +1 -0
  145. package/dist/types/wit/wit-parser/core/types/utils.d.ts +86 -11
  146. package/dist/types/wit/wit-parser/core/types/utils.d.ts.map +1 -1
  147. package/dist/types/wit/wit-parser/core/user-defined.d.ts +19 -0
  148. package/dist/types/wit/wit-parser/core/user-defined.d.ts.map +1 -0
  149. package/dist/types/wit/wit-parser/core/utils.d.ts +8 -4
  150. package/dist/types/wit/wit-parser/core/utils.d.ts.map +1 -1
  151. package/dist/types/wit/wit-parser/parse-wit-parameter.d.ts +11 -5
  152. package/dist/types/wit/wit-parser/parse-wit-parameter.d.ts.map +1 -1
  153. package/dist/types/wit/wit-parser/parse-wit.d.ts +7 -3
  154. package/dist/types/wit/wit-parser/parse-wit.d.ts.map +1 -1
  155. package/dist/types/wit/wit.d.ts +20 -12
  156. package/dist/types/wit/wit.d.ts.map +1 -1
  157. package/package.json +1 -1
  158. package/src/sdk/actions/get-contract.test-d.ts +430 -50
  159. package/src/sdk/actions/get-contract.test.ts +324 -24
  160. package/src/sdk/actions/kontor/public/call-view.ts +2 -1
  161. package/src/sdk/actions/kontor/public/proc-contract.test-d.ts +107 -0
  162. package/src/sdk/actions/kontor/public/proc-contract.test.ts +234 -21
  163. package/src/sdk/actions/kontor/public/view-contract.test-d.ts +240 -0
  164. package/src/sdk/actions/kontor/public/view-contract.test.ts +613 -18
  165. package/src/sdk/chains/definitions/signet.ts +2 -2
  166. package/src/sdk/clients/base/create-rpc-client.test.ts +2 -2
  167. package/src/sdk/clients/create-public-client.test.ts +2 -2
  168. package/src/sdk/clients/kontor/create-public-client.test.ts +2 -2
  169. package/src/sdk/clients/transports/http-rpc.test.ts +0 -24
  170. package/src/sdk/test/e2e.test-deprecated.ts +195 -0
  171. package/src/sdk/types/contract.test-d.ts +489 -55
  172. package/src/sdk/types/contract.ts +6 -7
  173. package/src/sdk/utils/wit/codecs/bool.test.ts +29 -0
  174. package/src/sdk/utils/wit/codecs/bool.ts +10 -25
  175. package/src/sdk/utils/wit/codecs/contract-address.test.ts +37 -0
  176. package/src/sdk/utils/wit/codecs/contract-address.ts +114 -0
  177. package/src/sdk/utils/wit/codecs/index.ts +20 -0
  178. package/src/sdk/utils/wit/codecs/list.test-d.ts +13 -0
  179. package/src/sdk/utils/wit/codecs/list.test.ts +55 -0
  180. package/src/sdk/utils/wit/codecs/list.ts +21 -150
  181. package/src/sdk/utils/wit/codecs/numerics.test.ts +399 -0
  182. package/src/sdk/utils/wit/codecs/numerics.ts +304 -0
  183. package/src/sdk/utils/wit/codecs/option.test.ts +71 -0
  184. package/src/sdk/utils/wit/codecs/option.ts +21 -120
  185. package/src/sdk/utils/wit/codecs/result.test.ts +82 -0
  186. package/src/sdk/utils/wit/codecs/result.ts +37 -0
  187. package/src/sdk/utils/wit/codecs/string.test.ts +62 -0
  188. package/src/sdk/utils/wit/codecs/string.ts +23 -25
  189. package/src/sdk/utils/wit/codecs/types.ts +5 -0
  190. package/src/sdk/utils/wit/codecs/unit.test.ts +27 -0
  191. package/src/sdk/utils/wit/codecs/unit.ts +14 -38
  192. package/src/sdk/utils/wit/codecs/util.test.ts +221 -0
  193. package/src/sdk/utils/wit/codecs/util.ts +193 -0
  194. package/src/sdk/utils/wit/decode-wit-parameter.test.ts +1264 -32
  195. package/src/sdk/utils/wit/decode-wit-parameter.ts +508 -211
  196. package/src/sdk/utils/wit/encode-wit-parameters.test.ts +955 -91
  197. package/src/sdk/utils/wit/encode-wit-parameters.ts +277 -274
  198. package/src/sdk/utils/wit/get-wit-item.test.ts +1 -1
  199. package/src/wit/built-ins.ts +23 -0
  200. package/src/wit/regex.ts +1 -1
  201. package/src/wit/utils.ts +120 -74
  202. package/src/wit/wit-parser/core/errors/signature.ts +13 -2
  203. package/src/wit/wit-parser/core/signatures.ts +28 -0
  204. package/src/wit/wit-parser/core/types/signatures.test-d.ts +21 -0
  205. package/src/wit/wit-parser/core/types/signatures.ts +19 -2
  206. package/src/wit/wit-parser/core/types/user-defined.test-d.ts +1308 -0
  207. package/src/wit/wit-parser/core/types/user-defined.ts +412 -0
  208. package/src/wit/wit-parser/core/types/utils.test-d.ts +43 -2
  209. package/src/wit/wit-parser/core/types/utils.ts +143 -14
  210. package/src/wit/wit-parser/core/user-defined.test.ts +609 -0
  211. package/src/wit/wit-parser/core/user-defined.ts +392 -0
  212. package/src/wit/wit-parser/core/utils.test.ts +334 -115
  213. package/src/wit/wit-parser/core/utils.ts +54 -38
  214. package/src/wit/wit-parser/parse-wit-parameter.test.ts +282 -4
  215. package/src/wit/wit-parser/parse-wit-parameter.ts +37 -11
  216. package/src/wit/wit-parser/parse-wit.test.ts +738 -12
  217. package/src/wit/wit-parser/parse-wit.ts +25 -10
  218. package/src/wit/wit.ts +37 -16
  219. package/vitest.config.ts +5 -0
  220. package/dist/cjs/sdk/utils/wit/codecs/decimal.js +0 -148
  221. package/dist/cjs/sdk/utils/wit/codecs/decimal.js.map +0 -1
  222. package/dist/cjs/sdk/utils/wit/codecs/enum.js +0 -94
  223. package/dist/cjs/sdk/utils/wit/codecs/enum.js.map +0 -1
  224. package/dist/cjs/sdk/utils/wit/codecs/integer.js +0 -125
  225. package/dist/cjs/sdk/utils/wit/codecs/integer.js.map +0 -1
  226. package/dist/cjs/sdk/utils/wit/codecs/s64.js +0 -57
  227. package/dist/cjs/sdk/utils/wit/codecs/s64.js.map +0 -1
  228. package/dist/cjs/sdk/utils/wit/codecs/u64.js +0 -56
  229. package/dist/cjs/sdk/utils/wit/codecs/u64.js.map +0 -1
  230. package/dist/cjs/wit/wit-parser/core/records.js +0 -70
  231. package/dist/cjs/wit/wit-parser/core/records.js.map +0 -1
  232. package/dist/cjs/wit/wit-parser/core/types/records.js.map +0 -1
  233. package/dist/esm/sdk/utils/wit/codecs/decimal.js +0 -165
  234. package/dist/esm/sdk/utils/wit/codecs/decimal.js.map +0 -1
  235. package/dist/esm/sdk/utils/wit/codecs/enum.js +0 -104
  236. package/dist/esm/sdk/utils/wit/codecs/enum.js.map +0 -1
  237. package/dist/esm/sdk/utils/wit/codecs/integer.js +0 -167
  238. package/dist/esm/sdk/utils/wit/codecs/integer.js.map +0 -1
  239. package/dist/esm/sdk/utils/wit/codecs/s64.js +0 -65
  240. package/dist/esm/sdk/utils/wit/codecs/s64.js.map +0 -1
  241. package/dist/esm/sdk/utils/wit/codecs/u64.js +0 -63
  242. package/dist/esm/sdk/utils/wit/codecs/u64.js.map +0 -1
  243. package/dist/esm/wit/wit-parser/core/records.js +0 -73
  244. package/dist/esm/wit/wit-parser/core/records.js.map +0 -1
  245. package/dist/esm/wit/wit-parser/core/types/records.js +0 -2
  246. package/dist/esm/wit/wit-parser/core/types/records.js.map +0 -1
  247. package/dist/types/sdk/utils/wit/codecs/decimal.d.ts +0 -42
  248. package/dist/types/sdk/utils/wit/codecs/decimal.d.ts.map +0 -1
  249. package/dist/types/sdk/utils/wit/codecs/enum.d.ts +0 -49
  250. package/dist/types/sdk/utils/wit/codecs/enum.d.ts.map +0 -1
  251. package/dist/types/sdk/utils/wit/codecs/integer.d.ts +0 -36
  252. package/dist/types/sdk/utils/wit/codecs/integer.d.ts.map +0 -1
  253. package/dist/types/sdk/utils/wit/codecs/s64.d.ts +0 -23
  254. package/dist/types/sdk/utils/wit/codecs/s64.d.ts.map +0 -1
  255. package/dist/types/sdk/utils/wit/codecs/u64.d.ts +0 -23
  256. package/dist/types/sdk/utils/wit/codecs/u64.d.ts.map +0 -1
  257. package/dist/types/wit/wit-parser/core/records.d.ts +0 -4
  258. package/dist/types/wit/wit-parser/core/records.d.ts.map +0 -1
  259. package/dist/types/wit/wit-parser/core/types/records.d.ts +0 -51
  260. package/dist/types/wit/wit-parser/core/types/records.d.ts.map +0 -1
  261. package/src/sdk/test/e2e.test.ts +0 -194
  262. package/src/sdk/utils/wit/codecs/decimal.ts +0 -215
  263. package/src/sdk/utils/wit/codecs/enum.ts +0 -114
  264. package/src/sdk/utils/wit/codecs/integer.ts +0 -193
  265. package/src/sdk/utils/wit/codecs/s64.ts +0 -76
  266. package/src/sdk/utils/wit/codecs/u64.ts +0 -73
  267. package/src/wit/wit-parser/core/records.test.ts +0 -69
  268. package/src/wit/wit-parser/core/records.ts +0 -101
  269. package/src/wit/wit-parser/core/types/records.test-d.ts +0 -331
  270. package/src/wit/wit-parser/core/types/records.ts +0 -91
@@ -1,24 +1,35 @@
1
1
  import type { Wit } from "../wit.js";
2
-
3
2
  import type { Filter } from "../type-utils.js";
4
3
  import type { Error_ } from "../error.js";
5
-
6
- import { isRecordSignature } from "./core/signatures.js";
7
- import { parseRecords } from "./core/records.js";
4
+ import {
5
+ isRecordSignature,
6
+ isVariantSignature,
7
+ isEnumSignature,
8
+ } from "./core/signatures.js";
9
+ import { parseTypes } from "./core/user-defined.js";
8
10
  import { parseSignature } from "./core/utils.js";
9
11
  import type { Signatures } from "./core/types/signatures.js";
10
- import type { ParseRecords } from "./core/types/records.js";
12
+ import type {
13
+ EnumLookup,
14
+ ParseTypes,
15
+ RecordLookup,
16
+ VariantLookup,
17
+ } from "./core/types/user-defined.js";
11
18
  import type { ParseSignature } from "./core/types/utils.js";
12
19
 
13
20
  export type ParseWit<signatures extends readonly string[]> =
14
21
  string[] extends signatures
15
- ? Wit // If `T` was not able to be inferred (e.g. just `string[]`), return `Abi`
22
+ ? Wit // If `T` was not able to be inferred (e.g. just `string[]`), return `Wit`
16
23
  : signatures extends readonly string[]
17
24
  ? signatures extends Signatures<signatures> // Validate signatures
18
- ? ParseRecords<signatures> extends infer structs
25
+ ? ParseTypes<signatures> extends infer types extends {
26
+ records?: RecordLookup;
27
+ variants?: VariantLookup;
28
+ enums?: EnumLookup;
29
+ }
19
30
  ? {
20
31
  [key in keyof signatures]: signatures[key] extends string
21
- ? ParseSignature<signatures[key], structs>
32
+ ? ParseSignature<signatures[key], types>
22
33
  : never;
23
34
  } extends infer mapped extends readonly unknown[]
24
35
  ? Filter<mapped, never> extends infer result
@@ -38,13 +49,17 @@ export function parseWit<const signatures extends readonly string[]>(
38
49
  ? signatures
39
50
  : Signatures<signatures>,
40
51
  ): ParseWit<signatures> {
41
- const structs = parseRecords(signatures as readonly string[]);
52
+ const types = parseTypes(signatures as readonly string[]);
42
53
  const wit = [];
43
54
  const length = signatures.length as number;
44
55
  for (let i = 0; i < length; i++) {
45
56
  const signature = (signatures as readonly string[])[i]!;
46
57
  if (isRecordSignature(signature)) continue;
47
- wit.push(parseSignature(signature, structs));
58
+ if (isVariantSignature(signature)) continue;
59
+ if (isEnumSignature(signature)) continue;
60
+ wit.push(
61
+ parseSignature(signature, types.records, types.variants, types.enums),
62
+ );
48
63
  }
49
64
  return wit as unknown as ParseWit<signatures>;
50
65
  }
package/src/wit/wit.ts CHANGED
@@ -12,7 +12,9 @@ export type WitContractAddress = "contract-address";
12
12
  export type WitInteger = "integer";
13
13
  export type WitDecimal = "decimal";
14
14
 
15
- export type WitTuple = "tuple";
15
+ export type WitRecord = "record";
16
+ export type WitVariant = "variant";
17
+ export type WitEnum = "enum";
16
18
  export type WitError = "error";
17
19
  export type WitUnit = "_";
18
20
 
@@ -28,7 +30,7 @@ export type WitInt = WitSInt | WitUInt;
28
30
  // TODO: fixed range array
29
31
 
30
32
  type _BuildOptionTypes<T extends string> = `option<${T}>`;
31
- export type WitOptionWithoutTuple = _BuildOptionTypes<
33
+ export type WitOptionWithoutRecord = _BuildOptionTypes<
32
34
  | WitBool
33
35
  | WitSInt
34
36
  | WitUInt
@@ -40,18 +42,24 @@ export type WitOptionWithoutTuple = _BuildOptionTypes<
40
42
  // | WitChar
41
43
  >;
42
44
 
43
- export type WitOptionWithTuple = _BuildOptionTypes<WitTuple>;
45
+ export type WitOptionWithRecord = _BuildOptionTypes<WitRecord>;
46
+
47
+ export type WitOptionWithVariant = _BuildOptionTypes<WitVariant>;
48
+
49
+ export type WitOptionWithEnum = _BuildOptionTypes<WitEnum>;
44
50
 
45
51
  export type WitOptionWithList = _BuildOptionTypes<WitList>;
46
52
 
47
53
  export type WitOption =
48
- | WitOptionWithoutTuple
49
- | WitOptionWithTuple
54
+ | WitOptionWithoutRecord
55
+ | WitOptionWithRecord
56
+ | WitOptionWithVariant
57
+ | WitOptionWithEnum
50
58
  | WitOptionWithList;
51
59
 
52
60
  type _BuildResultTypes<T extends string> = `result<${T}, error>`;
53
61
 
54
- export type WitResultWithoutTuple = _BuildResultTypes<
62
+ export type WitResultWithoutRecord = _BuildResultTypes<
55
63
  | WitBool
56
64
  | WitSInt
57
65
  | WitUInt
@@ -64,18 +72,22 @@ export type WitResultWithoutTuple = _BuildResultTypes<
64
72
 
65
73
  // | WitChar
66
74
  >;
67
- export type WitResultWithTuple = _BuildResultTypes<WitTuple>;
75
+ export type WitResultWithRecord = _BuildResultTypes<WitRecord>;
76
+ export type WitResultWithVariant = _BuildResultTypes<WitVariant>;
77
+ export type WitResultWithEnum = _BuildResultTypes<WitEnum>;
68
78
 
69
79
  export type WitResultWithList = _BuildResultTypes<WitList>;
70
80
 
71
81
  export type WitResult =
72
- | WitResultWithoutTuple
73
- | WitResultWithTuple
82
+ | WitResultWithoutRecord
83
+ | WitResultWithRecord
84
+ | WitResultWithEnum
85
+ | WitResultWithVariant
74
86
  | WitResultWithList;
75
87
 
76
88
  // todo: add option / decimal
77
89
  type _BuildListTypes<T extends string> = `list<${T}>`;
78
- export type WitListWithoutTuple = _BuildListTypes<
90
+ export type WitListWithoutRecord = _BuildListTypes<
79
91
  | WitBool
80
92
  | WitSInt
81
93
  | WitUInt
@@ -84,14 +96,21 @@ export type WitListWithoutTuple = _BuildListTypes<
84
96
  | WitInteger
85
97
  | WitDecimal
86
98
  | WitUnit
87
- // | WitChar
88
99
  >;
89
100
 
90
- export type WitListWithTuple = _BuildListTypes<WitTuple>;
101
+ export type WitListWithRecord = _BuildListTypes<WitRecord>;
91
102
 
92
- export type WitList = WitListWithoutTuple | WitListWithTuple;
103
+ export type WitListWithVariant = _BuildListTypes<WitVariant>;
104
+ export type WitListWithEnum = _BuildListTypes<WitEnum>;
105
+
106
+ export type WitList = Exclude<
107
+ | WitListWithoutRecord
108
+ | WitListWithRecord
109
+ | WitListWithEnum
110
+ | WitListWithVariant,
111
+ _BuildListTypes<WitUnit>
112
+ >;
93
113
 
94
- // TODO: this is a misnomer now
95
114
  export type WitStateMutability = "view" | "proc" | "core";
96
115
 
97
116
  export type WitParameterKind = "inputs" | "outputs";
@@ -101,7 +120,7 @@ export type WitType =
101
120
  // | WitProcContext
102
121
  // | WitViewContext
103
122
  // | WitFunc
104
- | WitTuple
123
+ | WitRecord
105
124
  | WitResult
106
125
  | WitError
107
126
  | WitBool
@@ -113,6 +132,8 @@ export type WitType =
113
132
  | WitDecimal
114
133
  // | WitChar
115
134
  | WitList
135
+ | WitVariant
136
+ | WitEnum
116
137
  | WitOption;
117
138
 
118
139
  // TODO: audit this behavior
@@ -144,7 +165,7 @@ export type WitFunction = {
144
165
  export type Wit = readonly WitFunction[];
145
166
 
146
167
  // TODO: refine, maybe add result / option
147
- export type TypedDataType = Exclude<WitType, WitTuple | WitListWithTuple>;
168
+ export type TypedDataType = Exclude<WitType, WitRecord | WitListWithRecord>;
148
169
 
149
170
  export type TypedDataParameter = {
150
171
  name: string;
package/vitest.config.ts CHANGED
@@ -6,5 +6,10 @@ export default defineConfig({
6
6
  globalSetup: ["./test/globalSetup.ts"],
7
7
  include: ["src/**/*.test.ts", "src/**/*.test-d.ts"],
8
8
  root: __dirname,
9
+ typecheck: {
10
+ enabled: false,
11
+ // optional: customize checker
12
+ checker: "tsc", // or 'vue-tsc'
13
+ },
9
14
  },
10
15
  });
@@ -1,148 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DecimalCodec = exports._Decimal = exports.U64 = void 0;
4
- exports.parseDecimalWaveExpr = parseDecimalWaveExpr;
5
- const z = require("zod");
6
- const TARGET_SCALE = 18;
7
- const U64_MAX = (1n << 64n) - 1n;
8
- exports.U64 = z
9
- .bigint()
10
- .min(0n, { message: "must be ≥ 0" })
11
- .max(U64_MAX, { message: "must be ≤ 2^64-1" });
12
- function pow10n(n) {
13
- if (n < 0)
14
- throw new Error("pow10n expects n ≥ 0");
15
- let p = 1n;
16
- for (let i = 0; i < n; i++)
17
- p *= 10n;
18
- return p;
19
- }
20
- function splitToU64Limbs(x) {
21
- const r0 = x & U64_MAX;
22
- const r1 = (x >> 64n) & U64_MAX;
23
- const r2 = (x >> 128n) & U64_MAX;
24
- const r3 = (x >> 192n) & U64_MAX;
25
- if (x >> 256n !== 0n) {
26
- throw new Error("decimal magnitude does not fit in 256 bits");
27
- }
28
- return { r0, r1, r2, r3 };
29
- }
30
- var _Decimal;
31
- (function (_Decimal) {
32
- let Sign;
33
- (function (Sign) {
34
- Sign.schema = z.enum(["plus", "minus"]);
35
- })(Sign = _Decimal.Sign || (_Decimal.Sign = {}));
36
- _Decimal.schema = z.object({
37
- r0: exports.U64,
38
- r1: exports.U64,
39
- r2: exports.U64,
40
- r3: exports.U64,
41
- sign: Sign.schema,
42
- });
43
- })(_Decimal || (exports._Decimal = _Decimal = {}));
44
- function parseDecimalWaveExpr(expr) {
45
- const trimmed = expr.trim();
46
- const inner = trimmed.replace(/^\{\s*/, "").replace(/\s*\}$/, "");
47
- if (inner.length === 0) {
48
- throw new Error("empty decimal expression");
49
- }
50
- const parts = inner
51
- .split(",")
52
- .map((p) => p.trim())
53
- .filter(Boolean);
54
- const seen = new Set();
55
- let out = {
56
- r1: 0n,
57
- r2: 0n,
58
- r3: 0n,
59
- };
60
- for (const part of parts) {
61
- const idx = part.indexOf(":");
62
- if (idx === -1) {
63
- throw new Error(`expected "key: value" pair, got "${part}"`);
64
- }
65
- const keyRaw = part.slice(0, idx).trim();
66
- const valRaw = part.slice(idx + 1).trim();
67
- if (seen.has(keyRaw)) {
68
- throw new Error(`duplicate key "${keyRaw}"`);
69
- }
70
- seen.add(keyRaw);
71
- switch (keyRaw) {
72
- case "r0":
73
- case "r1":
74
- case "r2":
75
- case "r3": {
76
- const normalized = valRaw.replace(/_/g, "");
77
- if (!/^[+-]?\d+$/.test(normalized)) {
78
- throw new Error(`invalid integer for ${keyRaw}: "${valRaw}"`);
79
- }
80
- const limb = BigInt(normalized);
81
- if (limb < 0n || limb > U64_MAX) {
82
- throw new Error(`value for ${keyRaw} out of u64 range: ${valRaw}`);
83
- }
84
- out[keyRaw] = limb;
85
- break;
86
- }
87
- case "sign": {
88
- if (valRaw !== "plus" && valRaw !== "minus") {
89
- throw new Error(`invalid sign "${valRaw}" (expected plus|minus)`);
90
- }
91
- out.sign = valRaw;
92
- break;
93
- }
94
- default:
95
- throw new Error(`unexpected key "${keyRaw}"`);
96
- }
97
- }
98
- if (out.r0 === undefined) {
99
- throw new Error(`missing required key "r0"`);
100
- }
101
- if (!out.sign) {
102
- throw new Error(`missing required key "sign"`);
103
- }
104
- return _Decimal.schema.parse(out);
105
- }
106
- class _DecimalCodec {
107
- constructor(data) {
108
- Object.defineProperty(this, "data", {
109
- enumerable: true,
110
- configurable: true,
111
- writable: true,
112
- value: void 0
113
- });
114
- this.data = data;
115
- }
116
- static fromJs(value, targetScale = TARGET_SCALE) {
117
- const [coefRaw, decs] = value;
118
- const sign = coefRaw < 0n ? "minus" : "plus";
119
- const coefAbs = coefRaw < 0n ? -coefRaw : coefRaw;
120
- if (decs > decs) {
121
- throw new Error(`cannot downscale from ${decs} to ${targetScale} decimals without rounding`);
122
- }
123
- const scaleDelta = targetScale - decs;
124
- const scaled = coefAbs * pow10n(scaleDelta);
125
- const { r0, r1, r2, r3 } = splitToU64Limbs(scaled);
126
- const out = _Decimal.schema.parse({ r0, r1, r2, r3, sign });
127
- return new _DecimalCodec(out);
128
- }
129
- static fromKontor(data) {
130
- return new _DecimalCodec(data);
131
- }
132
- static parseWave(expr) {
133
- return _Decimal.schema.parse(parseDecimalWaveExpr(expr));
134
- }
135
- toJs() {
136
- const mag = (BigInt(this.data.r3) << 192n) |
137
- (BigInt(this.data.r2) << 128n) |
138
- (BigInt(this.data.r1) << 64n) |
139
- BigInt(this.data.r0);
140
- const signed = this.data.sign === "minus" ? -mag : mag;
141
- return [signed, 18];
142
- }
143
- toWave() {
144
- return `{r0: ${this.data.r0}, r1: ${this.data.r1}, r2: ${this.data.r2}, r3: ${this.data.r3}, sign: ${this.data.sign}}`;
145
- }
146
- }
147
- exports.DecimalCodec = _DecimalCodec;
148
- //# sourceMappingURL=decimal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"decimal.js","sourceRoot":"","sources":["../../../../../../src/sdk/utils/wit/codecs/decimal.ts"],"names":[],"mappings":"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"}
@@ -1,94 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Enum = void 0;
4
- const z = require("zod");
5
- var Enum;
6
- (function (Enum) {
7
- let Parens;
8
- (function (Parens) {
9
- Parens.schema = z.templateLiteral([
10
- z.literal("("),
11
- z.string(),
12
- z.literal(")"),
13
- ]);
14
- })(Parens = Enum.Parens || (Enum.Parens = {}));
15
- let Option;
16
- (function (Option) {
17
- Option.waveRegex = /^(?<kind>some)(?:\((?<value>[\s\S]*?)\))$|^(?<none>none)$/;
18
- let None;
19
- (function (None) {
20
- None.schema = z.literal("none");
21
- })(None = Option.None || (Option.None = {}));
22
- let Some;
23
- (function (Some) {
24
- Some.schema = z.templateLiteral([
25
- z.literal("some"),
26
- Parens.schema,
27
- ]);
28
- })(Some = Option.Some || (Option.Some = {}));
29
- const rawSchema = z.union([None.schema, Some.schema]);
30
- Option.schema = rawSchema
31
- .transform((expr) => {
32
- const trimmed = expr.trim();
33
- if (trimmed === "none") {
34
- return {
35
- kind: "none",
36
- };
37
- }
38
- const match = /^some\((?<value>[\s\S]*?)\)$/.exec(trimmed);
39
- if (!match?.groups) {
40
- throw new Error(`invariant: invalid wave option expression: ${expr}`);
41
- }
42
- const value = match.groups.value?.trim() ?? "";
43
- return {
44
- kind: "some",
45
- value: value === "" ? null : value,
46
- };
47
- })
48
- .pipe(z.discriminatedUnion("kind", [
49
- z.object({
50
- kind: z.literal("none"),
51
- }),
52
- z.object({
53
- kind: z.literal("some"),
54
- value: z.string().nullable(),
55
- }),
56
- ]));
57
- })(Option = Enum.Option || (Enum.Option = {}));
58
- let Result;
59
- (function (Result) {
60
- Result.waveRegex = /^(?<_tag>ok|err)(?:\((?<value>[\s\S]*?)\))?$/;
61
- let Ok;
62
- (function (Ok) {
63
- Ok.schema = z.literal("ok");
64
- })(Ok = Result.Ok || (Result.Ok = {}));
65
- let Err;
66
- (function (Err) {
67
- Err.schema = z.literal("err");
68
- })(Err = Result.Err || (Result.Err = {}));
69
- Result.schema = z
70
- .templateLiteral([
71
- z.union([Ok.schema, Err.schema]),
72
- Parens.schema.optional(),
73
- ])
74
- .transform((expr) => {
75
- const match = Result.waveRegex.exec(expr.trim());
76
- if (!match?.groups) {
77
- throw new Error(`invariant: invalid wave expression: ${expr}`);
78
- }
79
- const { _tag, value } = match.groups;
80
- return { _tag, value: value?.trim() || null };
81
- })
82
- .pipe(z.discriminatedUnion("_tag", [
83
- z.object({
84
- _tag: Ok.schema,
85
- value: z.string().nullable(),
86
- }),
87
- z.object({
88
- _tag: Err.schema,
89
- value: z.string().nullable(),
90
- }),
91
- ]));
92
- })(Result = Enum.Result || (Enum.Result = {}));
93
- })(Enum || (exports.Enum = Enum = {}));
94
- //# sourceMappingURL=enum.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"enum.js","sourceRoot":"","sources":["../../../../../../src/sdk/utils/wit/codecs/enum.ts"],"names":[],"mappings":"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"}
@@ -1,125 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.IntegerCodec = exports._Integer = exports.U64 = void 0;
4
- exports.parseIntegerWaveExpr = parseIntegerWaveExpr;
5
- const z = require("zod");
6
- const U64_MAX = (1n << 64n) - 1n;
7
- exports.U64 = z
8
- .bigint()
9
- .min(0n, { message: "must be ≥ 0" })
10
- .max(U64_MAX, { message: "must be ≤ 2^64-1" });
11
- function parseIntegerWaveExpr(expr) {
12
- const inner = expr
13
- .trim()
14
- .replace(/^\{\s*/, "")
15
- .replace(/\s*\}$/, "");
16
- if (!inner)
17
- throw new Error("empty integer expression");
18
- const parts = inner
19
- .split(",")
20
- .map((p) => p.trim())
21
- .filter(Boolean);
22
- const seen = new Set();
23
- let out = {
24
- r1: 0n,
25
- r2: 0n,
26
- r3: 0n,
27
- };
28
- for (const part of parts) {
29
- const idx = part.indexOf(":");
30
- if (idx === -1) {
31
- throw new Error(`expected "key: value", got "${part}"`);
32
- }
33
- const keyRaw = part.slice(0, idx).trim();
34
- const valRaw = part.slice(idx + 1).trim();
35
- if (seen.has(keyRaw))
36
- throw new Error(`duplicate key "${keyRaw}"`);
37
- seen.add(keyRaw);
38
- switch (keyRaw) {
39
- case "r0":
40
- case "r1":
41
- case "r2":
42
- case "r3": {
43
- const normalized = valRaw.replace(/_/g, "");
44
- if (!/^[+-]?\d+$/.test(normalized)) {
45
- throw new Error(`invalid integer for ${keyRaw}: "${valRaw}"`);
46
- }
47
- const limb = BigInt(normalized);
48
- if (limb < 0n || limb > U64_MAX) {
49
- throw new Error(`value for ${keyRaw} out of u64 range: ${valRaw}`);
50
- }
51
- out[keyRaw] = limb;
52
- break;
53
- }
54
- case "sign": {
55
- if (valRaw !== "plus" && valRaw !== "minus") {
56
- throw new Error(`invalid sign "${valRaw}" (expected plus|minus)`);
57
- }
58
- out.sign = valRaw;
59
- break;
60
- }
61
- default:
62
- throw new Error(`unexpected key "${keyRaw}"`);
63
- }
64
- }
65
- if (out.r0 === undefined)
66
- throw new Error(`missing required key "r0"`);
67
- if (!out.sign)
68
- throw new Error(`missing required key "sign"`);
69
- return _Integer.schema.parse(out);
70
- }
71
- var _Integer;
72
- (function (_Integer) {
73
- let Sign;
74
- (function (Sign) {
75
- Sign.schema = z.enum(["plus", "minus"]);
76
- })(Sign = _Integer.Sign || (_Integer.Sign = {}));
77
- _Integer.schema = z.object({
78
- r0: exports.U64,
79
- r1: exports.U64,
80
- r2: exports.U64,
81
- r3: exports.U64,
82
- sign: Sign.schema,
83
- });
84
- })(_Integer || (exports._Integer = _Integer = {}));
85
- class _IntegerCodec {
86
- constructor(data) {
87
- Object.defineProperty(this, "data", {
88
- enumerable: true,
89
- configurable: true,
90
- writable: true,
91
- value: void 0
92
- });
93
- this.data = data;
94
- }
95
- static fromJs(value) {
96
- let v = BigInt(value);
97
- const sign = v < 0n ? "minus" : "plus";
98
- if (v < 0n)
99
- v = -v;
100
- const mask32 = (1n << 32n) - 1n;
101
- const r0 = v & mask32;
102
- const r1 = (v >> 32n) & mask32;
103
- const r2 = (v >> 64n) & mask32;
104
- const r3 = (v >> 96n) & mask32;
105
- return new _IntegerCodec({ r0, r1, r2, r3, sign });
106
- }
107
- static fromKontor(data) {
108
- return new _IntegerCodec(data);
109
- }
110
- static parseWave(expr) {
111
- return _Integer.schema.parse(parseIntegerWaveExpr(expr));
112
- }
113
- toWave() {
114
- return `{r0: ${this.data.r0}, r1: ${this.data.r1}, r2: ${this.data.r2}, r3: ${this.data.r3}, sign: ${this.data.sign}}`;
115
- }
116
- toJs() {
117
- const value = (BigInt(this.data.r3) << 96n) |
118
- (BigInt(this.data.r2) << 64n) |
119
- (BigInt(this.data.r1) << 32n) |
120
- BigInt(this.data.r0);
121
- return this.data.sign === "minus" ? -value : value;
122
- }
123
- }
124
- exports.IntegerCodec = _IntegerCodec;
125
- //# sourceMappingURL=integer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"integer.js","sourceRoot":"","sources":["../../../../../../src/sdk/utils/wit/codecs/integer.ts"],"names":[],"mappings":"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"}
@@ -1,57 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.S64Codec = exports.S64 = void 0;
4
- exports.parseS64WaveExpr = parseS64WaveExpr;
5
- const z = require("zod");
6
- const S64_MIN = -(1n << 63n);
7
- const S64_MAX = (1n << 63n) - 1n;
8
- exports.S64 = z
9
- .bigint()
10
- .min(S64_MIN, { message: "must be ≥ -2^63" })
11
- .max(S64_MAX, { message: "must be ≤ 2^63-1" });
12
- function parseS64WaveExpr(expr) {
13
- const trimmed = expr.trim();
14
- if (!trimmed)
15
- throw new Error("empty s64 expression");
16
- const normalized = trimmed.replace(/_/g, "");
17
- if (!/^-?[0-9]+$/.test(normalized)) {
18
- throw new Error(`invalid s64 literal: "${expr}"`);
19
- }
20
- const value = BigInt(normalized);
21
- return exports.S64.parse(value);
22
- }
23
- class _S64Codec {
24
- constructor(value) {
25
- Object.defineProperty(this, "value", {
26
- enumerable: true,
27
- configurable: true,
28
- writable: true,
29
- value: void 0
30
- });
31
- this.value = exports.S64.parse(value);
32
- }
33
- static fromJs(value) {
34
- let v;
35
- if (typeof value === "bigint")
36
- v = value;
37
- else if (typeof value === "number")
38
- v = BigInt(value);
39
- else
40
- v = BigInt(value);
41
- return new _S64Codec(v);
42
- }
43
- static fromKontor(data) {
44
- return _S64Codec.fromJs(data);
45
- }
46
- static parseWave(expr) {
47
- return parseS64WaveExpr(expr);
48
- }
49
- toWave() {
50
- return `${this.value}`;
51
- }
52
- toJs() {
53
- return this.value;
54
- }
55
- }
56
- exports.S64Codec = _S64Codec;
57
- //# sourceMappingURL=s64.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"s64.js","sourceRoot":"","sources":["../../../../../../src/sdk/utils/wit/codecs/s64.ts"],"names":[],"mappings":";;;AAoBA,4CAaC;AAhCD,yBAAyB;AAIzB,MAAM,OAAO,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC;AAC7B,MAAM,OAAO,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC;AAEpB,QAAA,GAAG,GAAG,CAAC;KACjB,MAAM,EAAE;KACR,GAAG,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC;KAC5C,GAAG,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC,CAAC;AASjD,SAAgB,gBAAgB,CAAC,IAAY;IAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5B,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAGtD,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAE7C,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,GAAG,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IACjC,OAAO,WAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAC1B,CAAC;AAID,MAAM,SAAS;IAGb,YAAY,KAAa;QAFT;;;;;WAAc;QAG5B,IAAI,CAAC,KAAK,GAAG,WAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,KAA+B;QAC3C,IAAI,CAAS,CAAC;QACd,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,CAAC,GAAG,KAAK,CAAC;aACpC,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;;YACjD,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAEvB,OAAO,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,IAA8B;QAC9C,OAAO,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,IAAY;QAC3B,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,MAAM;QAEJ,OAAO,GAAG,IAAI,CAAC,KAAK,EAAc,CAAC;IACrC,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;CACF;AAEY,QAAA,QAAQ,GAAG,SAIvB,CAAC"}