@kontor/kontor-sdk 1.0.0-alpha.13 → 1.0.0-alpha.15

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 (288) hide show
  1. package/dist/cjs/sdk/actions/kontor/public/{build-compose-call.js → build-compose-query.js} +8 -9
  2. package/dist/cjs/sdk/actions/kontor/public/build-compose-query.js.map +1 -0
  3. package/dist/cjs/sdk/actions/kontor/public/{build-instruction.js → build-instruction-query.js} +11 -16
  4. package/dist/cjs/sdk/actions/kontor/public/build-instruction-query.js.map +1 -0
  5. package/dist/cjs/sdk/actions/kontor/public/{call-proc.js → call-compose.js} +7 -9
  6. package/dist/cjs/sdk/actions/kontor/public/call-compose.js.map +1 -0
  7. package/dist/cjs/sdk/actions/kontor/public/proc-contract.js +8 -5
  8. package/dist/cjs/sdk/actions/kontor/public/proc-contract.js.map +1 -1
  9. package/dist/cjs/sdk/actions/kontor/wallet/sign-reveal.js +1 -1
  10. package/dist/cjs/sdk/actions/kontor/wallet/sign-reveal.js.map +1 -1
  11. package/dist/cjs/sdk/clients/decorators/kontor/public.js +6 -6
  12. package/dist/cjs/sdk/clients/decorators/kontor/public.js.map +1 -1
  13. package/dist/cjs/sdk/contracts/wits.js.map +1 -1
  14. package/dist/cjs/sdk/types/kontor.js +28 -0
  15. package/dist/cjs/sdk/types/kontor.js.map +1 -1
  16. package/dist/cjs/tsconfig.build.tsbuildinfo +1 -1
  17. package/dist/{src/sdk/actions/kontor/public/build-compose-call.js → esm/sdk/actions/kontor/public/build-compose-query.js} +2 -2
  18. package/dist/esm/sdk/actions/kontor/public/build-compose-query.js.map +1 -0
  19. package/dist/{src/sdk/actions/kontor/public/build-instruction.js → esm/sdk/actions/kontor/public/build-instruction-query.js} +1 -2
  20. package/dist/esm/sdk/actions/kontor/public/build-instruction-query.js.map +1 -0
  21. package/dist/esm/sdk/actions/kontor/public/{call-proc.js → call-compose.js} +7 -8
  22. package/dist/esm/sdk/actions/kontor/public/call-compose.js.map +1 -0
  23. package/dist/esm/sdk/actions/kontor/public/proc-contract.js +8 -5
  24. package/dist/esm/sdk/actions/kontor/public/proc-contract.js.map +1 -1
  25. package/dist/esm/sdk/actions/kontor/wallet/sign-reveal.js +4 -6
  26. package/dist/esm/sdk/actions/kontor/wallet/sign-reveal.js.map +1 -1
  27. package/dist/esm/sdk/clients/decorators/kontor/public.js +6 -6
  28. package/dist/esm/sdk/clients/decorators/kontor/public.js.map +1 -1
  29. package/dist/esm/sdk/contracts/wits.js.map +1 -1
  30. package/dist/esm/sdk/types/kontor.js +27 -1
  31. package/dist/esm/sdk/types/kontor.js.map +1 -1
  32. package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
  33. package/dist/src/exports/index.test.js +10 -0
  34. package/dist/src/exports/index.test.js.map +1 -0
  35. package/dist/src/sdk/accounts/hd-key-to-account.js +20 -0
  36. package/dist/src/sdk/accounts/hd-key-to-account.js.map +1 -0
  37. package/dist/src/sdk/accounts/mnemonic-to-account.js +16 -0
  38. package/dist/src/sdk/accounts/mnemonic-to-account.js.map +1 -0
  39. package/dist/src/sdk/accounts/mnemonic-to-account.test.js +96 -0
  40. package/dist/src/sdk/accounts/mnemonic-to-account.test.js.map +1 -0
  41. package/dist/src/sdk/accounts/to-local-account.js +28 -0
  42. package/dist/src/sdk/accounts/to-local-account.js.map +1 -0
  43. package/dist/src/sdk/accounts/types.js +2 -0
  44. package/dist/src/sdk/accounts/types.js.map +1 -0
  45. package/dist/src/sdk/accounts/utils/parse-account.js +10 -0
  46. package/dist/src/sdk/accounts/utils/parse-account.js.map +1 -0
  47. package/dist/src/sdk/accounts/utils/public-key-to-p2tr-payment.js +14 -0
  48. package/dist/src/sdk/accounts/utils/public-key-to-p2tr-payment.js.map +1 -0
  49. package/dist/src/sdk/accounts/utils/sign-psbt.js +17 -0
  50. package/dist/src/sdk/accounts/utils/sign-psbt.js.map +1 -0
  51. package/dist/src/sdk/actions/kontor/wallet/sign-commit.js +34 -0
  52. package/dist/src/sdk/actions/kontor/wallet/sign-commit.js.map +1 -0
  53. package/dist/src/sdk/actions/public/send-raw-transaction.js +7 -0
  54. package/dist/src/sdk/actions/public/send-raw-transaction.js.map +1 -0
  55. package/dist/src/sdk/actions/public/test-mempool-accept.js +20 -0
  56. package/dist/src/sdk/actions/public/test-mempool-accept.js.map +1 -0
  57. package/dist/src/sdk/chains/definitions/index.js +2 -0
  58. package/dist/src/sdk/chains/definitions/index.js.map +1 -0
  59. package/dist/src/sdk/chains/definitions/signet.js +36 -0
  60. package/dist/src/sdk/chains/definitions/signet.js.map +1 -0
  61. package/dist/src/sdk/clients/base/create-rpc-client.test.js +145 -0
  62. package/dist/src/sdk/clients/base/create-rpc-client.test.js.map +1 -0
  63. package/dist/src/sdk/clients/create-public-client.test.js +113 -0
  64. package/dist/src/sdk/clients/create-public-client.test.js.map +1 -0
  65. package/dist/src/sdk/clients/decorators/kontor/wallet.js +13 -0
  66. package/dist/src/sdk/clients/decorators/kontor/wallet.js.map +1 -0
  67. package/dist/src/sdk/clients/decorators/public.js +9 -0
  68. package/dist/src/sdk/clients/decorators/public.js.map +1 -0
  69. package/dist/src/sdk/clients/decorators/wallet.js +9 -0
  70. package/dist/src/sdk/clients/decorators/wallet.js.map +1 -0
  71. package/dist/src/sdk/clients/kontor/create-public-client.test.js +44 -0
  72. package/dist/src/sdk/clients/kontor/create-public-client.test.js.map +1 -0
  73. package/dist/src/sdk/clients/kontor/create-wallet-client.js +14 -0
  74. package/dist/src/sdk/clients/kontor/create-wallet-client.js.map +1 -0
  75. package/dist/src/sdk/clients/transports/create-http-transport.js +25 -0
  76. package/dist/src/sdk/clients/transports/create-http-transport.js.map +1 -0
  77. package/dist/src/sdk/clients/transports/create-rpc-transport.test.js +58 -0
  78. package/dist/src/sdk/clients/transports/create-rpc-transport.test.js.map +1 -0
  79. package/dist/src/sdk/clients/transports/custom.js +14 -0
  80. package/dist/src/sdk/clients/transports/custom.js.map +1 -0
  81. package/dist/src/sdk/clients/transports/http-rpc.js +84 -0
  82. package/dist/src/sdk/clients/transports/http-rpc.js.map +1 -0
  83. package/dist/src/sdk/clients/transports/http-rpc.test.js +147 -0
  84. package/dist/src/sdk/clients/transports/http-rpc.test.js.map +1 -0
  85. package/dist/src/sdk/clients/transports/http.js +45 -0
  86. package/dist/src/sdk/clients/transports/http.js.map +1 -0
  87. package/dist/src/sdk/errors/address.js +13 -0
  88. package/dist/src/sdk/errors/address.js.map +1 -0
  89. package/dist/src/sdk/errors/base.js +92 -0
  90. package/dist/src/sdk/errors/base.js.map +1 -0
  91. package/dist/src/sdk/errors/request.js +100 -0
  92. package/dist/src/sdk/errors/request.js.map +1 -0
  93. package/dist/src/sdk/errors/rpc.js +30 -0
  94. package/dist/src/sdk/errors/rpc.js.map +1 -0
  95. package/dist/src/sdk/errors/transport.js +10 -0
  96. package/dist/src/sdk/errors/transport.js.map +1 -0
  97. package/dist/src/sdk/errors/utils.js +2 -0
  98. package/dist/src/sdk/errors/utils.js.map +1 -0
  99. package/dist/src/sdk/errors/version.js +2 -0
  100. package/dist/src/sdk/errors/version.js.map +1 -0
  101. package/dist/src/sdk/errors/wit.js +19 -0
  102. package/dist/src/sdk/errors/wit.js.map +1 -0
  103. package/dist/src/sdk/types/account.js +2 -0
  104. package/dist/src/sdk/types/account.js.map +1 -0
  105. package/dist/src/sdk/types/btc-rpc.js +2 -0
  106. package/dist/src/sdk/types/btc-rpc.js.map +1 -0
  107. package/dist/src/sdk/types/contract.test-d.js +35 -0
  108. package/dist/src/sdk/types/contract.test-d.js.map +1 -0
  109. package/dist/src/sdk/types/http-schema.test-d.js +133 -0
  110. package/dist/src/sdk/types/http-schema.test-d.js.map +1 -0
  111. package/dist/src/sdk/types/misc.js +2 -0
  112. package/dist/src/sdk/types/misc.js.map +1 -0
  113. package/dist/src/sdk/types/rpc.js +19 -0
  114. package/dist/src/sdk/types/rpc.js.map +1 -0
  115. package/dist/src/sdk/types/utils.js +2 -0
  116. package/dist/src/sdk/types/utils.js.map +1 -0
  117. package/dist/src/sdk/types/wbip001.js +3 -0
  118. package/dist/src/sdk/types/wbip001.js.map +1 -0
  119. package/dist/src/sdk/utils/build-http-request.js +55 -0
  120. package/dist/src/sdk/utils/build-http-request.js.map +1 -0
  121. package/dist/src/sdk/utils/build-request.js +35 -0
  122. package/dist/src/sdk/utils/build-request.js.map +1 -0
  123. package/dist/src/sdk/utils/build-rpc-request.js +84 -0
  124. package/dist/src/sdk/utils/build-rpc-request.js.map +1 -0
  125. package/dist/src/sdk/utils/encoding/to-hex.js +23 -0
  126. package/dist/src/sdk/utils/encoding/to-hex.js.map +1 -0
  127. package/dist/src/sdk/utils/get-action.js +27 -0
  128. package/dist/src/sdk/utils/get-action.js.map +1 -0
  129. package/dist/src/sdk/utils/http.js +137 -0
  130. package/dist/src/sdk/utils/http.js.map +1 -0
  131. package/dist/src/sdk/utils/lru.js +35 -0
  132. package/dist/src/sdk/utils/lru.js.map +1 -0
  133. package/dist/src/sdk/utils/promise/create-batch-scheduler.js +49 -0
  134. package/dist/src/sdk/utils/promise/create-batch-scheduler.js.map +1 -0
  135. package/dist/src/sdk/utils/promise/with-dedupe.js +14 -0
  136. package/dist/src/sdk/utils/promise/with-dedupe.js.map +1 -0
  137. package/dist/src/sdk/utils/promise/with-resolvers.js +10 -0
  138. package/dist/src/sdk/utils/promise/with-resolvers.js.map +1 -0
  139. package/dist/src/sdk/utils/promise/with-retry.js +25 -0
  140. package/dist/src/sdk/utils/promise/with-retry.js.map +1 -0
  141. package/dist/src/sdk/utils/promise/with-timeout.js +30 -0
  142. package/dist/src/sdk/utils/promise/with-timeout.js.map +1 -0
  143. package/dist/src/sdk/utils/rpc/http.js +86 -0
  144. package/dist/src/sdk/utils/rpc/http.js.map +1 -0
  145. package/dist/src/sdk/utils/rpc/id.js +13 -0
  146. package/dist/src/sdk/utils/rpc/id.js.map +1 -0
  147. package/dist/src/sdk/utils/stringify.js +5 -0
  148. package/dist/src/sdk/utils/stringify.js.map +1 -0
  149. package/dist/src/sdk/utils/uid.js +14 -0
  150. package/dist/src/sdk/utils/uid.js.map +1 -0
  151. package/dist/src/sdk/utils/wait.js +4 -0
  152. package/dist/src/sdk/utils/wait.js.map +1 -0
  153. package/dist/src/sdk/utils/wit/codecs/decimal.js +165 -0
  154. package/dist/src/sdk/utils/wit/codecs/decimal.js.map +1 -0
  155. package/dist/src/sdk/utils/wit/codecs/enum.js +104 -0
  156. package/dist/src/sdk/utils/wit/codecs/enum.js.map +1 -0
  157. package/dist/src/sdk/utils/wit/codecs/integer.js +167 -0
  158. package/dist/src/sdk/utils/wit/codecs/integer.js.map +1 -0
  159. package/dist/src/sdk/utils/wit/codecs/list.js +117 -0
  160. package/dist/src/sdk/utils/wit/codecs/list.js.map +1 -0
  161. package/dist/src/sdk/utils/wit/codecs/option.js +91 -0
  162. package/dist/src/sdk/utils/wit/codecs/option.js.map +1 -0
  163. package/dist/src/sdk/utils/wit/codecs/string.js +27 -0
  164. package/dist/src/sdk/utils/wit/codecs/string.js.map +1 -0
  165. package/dist/src/sdk/utils/wit/codecs/types.js +45 -0
  166. package/dist/src/sdk/utils/wit/codecs/types.js.map +1 -0
  167. package/dist/src/sdk/utils/wit/codecs/unit.js +22 -0
  168. package/dist/src/sdk/utils/wit/codecs/unit.js.map +1 -0
  169. package/dist/src/sdk/utils/wit/decode-function-result.js +36 -0
  170. package/dist/src/sdk/utils/wit/decode-function-result.js.map +1 -0
  171. package/dist/src/sdk/utils/wit/decode-wit-parameter.js +286 -0
  172. package/dist/src/sdk/utils/wit/decode-wit-parameter.js.map +1 -0
  173. package/dist/src/sdk/utils/wit/decode-wit-parameter.test.js +75 -0
  174. package/dist/src/sdk/utils/wit/decode-wit-parameter.test.js.map +1 -0
  175. package/dist/src/sdk/utils/wit/encode-function-data.js +17 -0
  176. package/dist/src/sdk/utils/wit/encode-function-data.js.map +1 -0
  177. package/dist/src/sdk/utils/wit/encode-function-data.test-d.js +21 -0
  178. package/dist/src/sdk/utils/wit/encode-function-data.test-d.js.map +1 -0
  179. package/dist/src/sdk/utils/wit/encode-function-data.test.js +91 -0
  180. package/dist/src/sdk/utils/wit/encode-function-data.test.js.map +1 -0
  181. package/dist/src/sdk/utils/wit/encode-wit-parameters.js +250 -0
  182. package/dist/src/sdk/utils/wit/encode-wit-parameters.js.map +1 -0
  183. package/dist/src/sdk/utils/wit/encode-wit-parameters.test.js +62 -0
  184. package/dist/src/sdk/utils/wit/encode-wit-parameters.test.js.map +1 -0
  185. package/dist/src/sdk/utils/wit/get-wit-item.js +15 -0
  186. package/dist/src/sdk/utils/wit/get-wit-item.js.map +1 -0
  187. package/dist/src/sdk/utils/wit/get-wit-item.test.js +118 -0
  188. package/dist/src/sdk/utils/wit/get-wit-item.test.js.map +1 -0
  189. package/dist/src/sdk/utils/wit/prepare-encode-function-data.js +24 -0
  190. package/dist/src/sdk/utils/wit/prepare-encode-function-data.js.map +1 -0
  191. package/dist/src/wit/error.js +59 -0
  192. package/dist/src/wit/error.js.map +1 -0
  193. package/dist/src/wit/narrow.js +14 -0
  194. package/dist/src/wit/narrow.js.map +1 -0
  195. package/dist/src/wit/regex.js +6 -0
  196. package/dist/src/wit/regex.js.map +1 -0
  197. package/dist/src/wit/register.js +2 -0
  198. package/dist/src/wit/register.js.map +1 -0
  199. package/dist/src/wit/type-utils.js +2 -0
  200. package/dist/src/wit/type-utils.js.map +1 -0
  201. package/dist/src/wit/utils.js +2 -0
  202. package/dist/src/wit/utils.js.map +1 -0
  203. package/dist/src/wit/utils.test-d.js +16 -0
  204. package/dist/src/wit/utils.test-d.js.map +1 -0
  205. package/dist/src/wit/version.js +2 -0
  206. package/dist/src/wit/version.js.map +1 -0
  207. package/dist/src/wit/wit-parser/core/errors/signature.js +42 -0
  208. package/dist/src/wit/wit-parser/core/errors/signature.js.map +1 -0
  209. package/dist/src/wit/wit-parser/core/errors/splitParameters.js +18 -0
  210. package/dist/src/wit/wit-parser/core/errors/splitParameters.js.map +1 -0
  211. package/dist/src/wit/wit-parser/core/errors/wit-parameter.js +29 -0
  212. package/dist/src/wit/wit-parser/core/errors/wit-parameter.js.map +1 -0
  213. package/dist/src/wit/wit-parser/core/records.js +73 -0
  214. package/dist/src/wit/wit-parser/core/records.js.map +1 -0
  215. package/dist/src/wit/wit-parser/core/records.test.js +53 -0
  216. package/dist/src/wit/wit-parser/core/records.test.js.map +1 -0
  217. package/dist/src/wit/wit-parser/core/signatures.js +32 -0
  218. package/dist/src/wit/wit-parser/core/signatures.js.map +1 -0
  219. package/dist/src/wit/wit-parser/core/signatures.test.js +54 -0
  220. package/dist/src/wit/wit-parser/core/signatures.test.js.map +1 -0
  221. package/dist/src/wit/wit-parser/core/types/records.js +2 -0
  222. package/dist/src/wit/wit-parser/core/types/records.js.map +1 -0
  223. package/dist/src/wit/wit-parser/core/types/records.test-d.js +19 -0
  224. package/dist/src/wit/wit-parser/core/types/records.test-d.js.map +1 -0
  225. package/dist/src/wit/wit-parser/core/types/signatures.js +3 -0
  226. package/dist/src/wit/wit-parser/core/types/signatures.js.map +1 -0
  227. package/dist/src/wit/wit-parser/core/types/signatures.test-d.js +18 -0
  228. package/dist/src/wit/wit-parser/core/types/signatures.test-d.js.map +1 -0
  229. package/dist/src/wit/wit-parser/core/types/utils.js +2 -0
  230. package/dist/src/wit/wit-parser/core/types/utils.js.map +1 -0
  231. package/dist/src/wit/wit-parser/core/types/utils.test-d.js +138 -0
  232. package/dist/src/wit/wit-parser/core/types/utils.test-d.js.map +1 -0
  233. package/dist/src/wit/wit-parser/core/utils.js +212 -0
  234. package/dist/src/wit/wit-parser/core/utils.js.map +1 -0
  235. package/dist/src/wit/wit-parser/core/utils.test.js +302 -0
  236. package/dist/src/wit/wit-parser/core/utils.test.js.map +1 -0
  237. package/dist/src/wit/wit-parser/parse-wit-parameter.js +26 -0
  238. package/dist/src/wit/wit-parser/parse-wit-parameter.js.map +1 -0
  239. package/dist/src/wit/wit-parser/parse-wit-parameter.test.js +77 -0
  240. package/dist/src/wit/wit-parser/parse-wit-parameter.test.js.map +1 -0
  241. package/dist/src/wit/wit-parser/parse-wit.js +16 -0
  242. package/dist/src/wit/wit-parser/parse-wit.js.map +1 -0
  243. package/dist/src/wit/wit-parser/parse-wit.test.js +78 -0
  244. package/dist/src/wit/wit-parser/parse-wit.test.js.map +1 -0
  245. package/dist/src/wit/wit.js +2 -0
  246. package/dist/src/wit/wit.js.map +1 -0
  247. package/dist/src/wit/wit.test.js +6 -0
  248. package/dist/src/wit/wit.test.js.map +1 -0
  249. package/dist/test/globalSetup.js +14 -0
  250. package/dist/test/globalSetup.js.map +1 -0
  251. package/dist/test/src/wits.js +21 -0
  252. package/dist/test/src/wits.js.map +1 -0
  253. package/dist/tsconfig.tsbuildinfo +1 -1
  254. package/dist/types/sdk/actions/kontor/public/build-compose-query.d.ts +16 -0
  255. package/dist/types/sdk/actions/kontor/public/build-compose-query.d.ts.map +1 -0
  256. package/dist/types/sdk/actions/kontor/public/build-instruction-query.d.ts +25 -0
  257. package/dist/types/sdk/actions/kontor/public/build-instruction-query.d.ts.map +1 -0
  258. package/dist/types/sdk/actions/kontor/public/call-compose.d.ts +20 -0
  259. package/dist/types/sdk/actions/kontor/public/call-compose.d.ts.map +1 -0
  260. package/dist/types/sdk/actions/kontor/public/proc-contract.d.ts +2 -2
  261. package/dist/types/sdk/actions/kontor/public/proc-contract.d.ts.map +1 -1
  262. package/dist/types/sdk/actions/kontor/wallet/sign-reveal.d.ts.map +1 -1
  263. package/dist/types/sdk/clients/decorators/kontor/public.d.ts +6 -6
  264. package/dist/types/sdk/clients/decorators/kontor/public.d.ts.map +1 -1
  265. package/dist/types/sdk/contracts/wits.d.ts +6 -5
  266. package/dist/types/sdk/contracts/wits.d.ts.map +1 -1
  267. package/dist/types/sdk/types/kontor.d.ts +15 -1
  268. package/dist/types/sdk/types/kontor.d.ts.map +1 -1
  269. package/package.json +1 -1
  270. package/src/sdk/actions/kontor/public/build-compose-query.ts +1 -1
  271. package/dist/cjs/sdk/actions/kontor/public/build-compose-call.js.map +0 -1
  272. package/dist/cjs/sdk/actions/kontor/public/build-instruction.js.map +0 -1
  273. package/dist/cjs/sdk/actions/kontor/public/call-proc.js.map +0 -1
  274. package/dist/esm/sdk/actions/kontor/public/build-compose-call.js +0 -31
  275. package/dist/esm/sdk/actions/kontor/public/build-compose-call.js.map +0 -1
  276. package/dist/esm/sdk/actions/kontor/public/build-instruction.js +0 -49
  277. package/dist/esm/sdk/actions/kontor/public/build-instruction.js.map +0 -1
  278. package/dist/esm/sdk/actions/kontor/public/call-proc.js.map +0 -1
  279. package/dist/src/sdk/actions/kontor/public/build-compose-call.js.map +0 -1
  280. package/dist/src/sdk/actions/kontor/public/build-instruction.js.map +0 -1
  281. package/dist/src/sdk/actions/kontor/public/call-proc.js +0 -43
  282. package/dist/src/sdk/actions/kontor/public/call-proc.js.map +0 -1
  283. package/dist/types/sdk/actions/kontor/public/build-compose-call.d.ts +0 -21
  284. package/dist/types/sdk/actions/kontor/public/build-compose-call.d.ts.map +0 -1
  285. package/dist/types/sdk/actions/kontor/public/build-instruction.d.ts +0 -17
  286. package/dist/types/sdk/actions/kontor/public/build-instruction.d.ts.map +0 -1
  287. package/dist/types/sdk/actions/kontor/public/call-proc.d.ts +0 -23
  288. package/dist/types/sdk/actions/kontor/public/call-proc.d.ts.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"address.js","sourceRoot":"","sources":["../../../../src/sdk/errors/address.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAKtC,MAAM,OAAO,mBAAoB,SAAQ,SAAS;IAChD,YAAY,EAAE,OAAO,EAAuB;QAC1C,KAAK,CAAC,YAAY,OAAO,eAAe,EAAE;YACxC,YAAY,EAAE;gBACZ,gEAAgE;gBAChE,gDAAgD;aACjD;YACD,IAAI,EAAE,qBAAqB;SAC5B,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,92 @@
1
+ const version = "1.0.0"; // TODO: Replace with actual version or import from package.json
2
+ let errorConfig = {
3
+ getDocsUrl: ({ docsBaseUrl, docsPath = "", docsSlug, }) => docsPath
4
+ ? `${docsBaseUrl ?? "https://docs.kontor.network"}${docsPath}${docsSlug ? `#${docsSlug}` : ""}`
5
+ : undefined,
6
+ version: `kontor-sdk@${version}`,
7
+ };
8
+ export function setErrorConfig(config) {
9
+ errorConfig = config;
10
+ }
11
+ export class BaseError extends Error {
12
+ constructor(shortMessage, args = {}) {
13
+ const details = (() => {
14
+ if (args.cause instanceof BaseError)
15
+ return args.cause.details;
16
+ if (args.cause?.message)
17
+ return args.cause.message;
18
+ return args.details;
19
+ })();
20
+ const docsPath = (() => {
21
+ if (args.cause instanceof BaseError)
22
+ return args.cause.docsPath || args.docsPath;
23
+ return args.docsPath;
24
+ })();
25
+ const docsUrl = errorConfig.getDocsUrl?.({ ...args, docsPath });
26
+ const message = [
27
+ shortMessage || "An error occurred.",
28
+ "",
29
+ ...(args.metaMessages ? [...args.metaMessages, ""] : []),
30
+ ...(docsUrl ? [`Docs: ${docsUrl}`] : []),
31
+ ...(details ? [`Details: ${details}`] : []),
32
+ ...(errorConfig.version ? [`Version: ${errorConfig.version}`] : []),
33
+ ].join("\n");
34
+ super(message, args.cause ? { cause: args.cause } : undefined);
35
+ Object.defineProperty(this, "details", {
36
+ enumerable: true,
37
+ configurable: true,
38
+ writable: true,
39
+ value: void 0
40
+ });
41
+ Object.defineProperty(this, "docsPath", {
42
+ enumerable: true,
43
+ configurable: true,
44
+ writable: true,
45
+ value: void 0
46
+ });
47
+ Object.defineProperty(this, "metaMessages", {
48
+ enumerable: true,
49
+ configurable: true,
50
+ writable: true,
51
+ value: void 0
52
+ });
53
+ Object.defineProperty(this, "shortMessage", {
54
+ enumerable: true,
55
+ configurable: true,
56
+ writable: true,
57
+ value: void 0
58
+ });
59
+ Object.defineProperty(this, "version", {
60
+ enumerable: true,
61
+ configurable: true,
62
+ writable: true,
63
+ value: void 0
64
+ });
65
+ Object.defineProperty(this, "name", {
66
+ enumerable: true,
67
+ configurable: true,
68
+ writable: true,
69
+ value: "BaseError"
70
+ });
71
+ this.details = details;
72
+ this.docsPath = docsPath;
73
+ this.metaMessages = args.metaMessages;
74
+ this.name = args.name ?? this.name;
75
+ this.shortMessage = shortMessage;
76
+ this.version = version;
77
+ }
78
+ walk(fn) {
79
+ return walk(this, fn);
80
+ }
81
+ }
82
+ function walk(err, fn) {
83
+ if (fn?.(err))
84
+ return err;
85
+ if (err &&
86
+ typeof err === "object" &&
87
+ "cause" in err &&
88
+ err.cause !== undefined)
89
+ return walk(err.cause, fn);
90
+ return fn ? null : err;
91
+ }
92
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/sdk/errors/base.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,100 @@
1
+ import { stringify } from "../utils/stringify.js";
2
+ import { BaseError } from "./base.js";
3
+ import { getUrl } from "./utils.js";
4
+ export class HttpRequestError extends BaseError {
5
+ constructor({ body, cause, details, headers, status, url, }) {
6
+ super("HTTP request failed.", {
7
+ cause,
8
+ details,
9
+ metaMessages: [
10
+ status && `Status: ${status}`,
11
+ `URL: ${getUrl(url)}`,
12
+ body && `Request body: ${stringify(body)}`,
13
+ ].filter(Boolean),
14
+ name: "HttpRequestError",
15
+ });
16
+ Object.defineProperty(this, "body", {
17
+ enumerable: true,
18
+ configurable: true,
19
+ writable: true,
20
+ value: void 0
21
+ });
22
+ Object.defineProperty(this, "headers", {
23
+ enumerable: true,
24
+ configurable: true,
25
+ writable: true,
26
+ value: void 0
27
+ });
28
+ Object.defineProperty(this, "status", {
29
+ enumerable: true,
30
+ configurable: true,
31
+ writable: true,
32
+ value: void 0
33
+ });
34
+ Object.defineProperty(this, "url", {
35
+ enumerable: true,
36
+ configurable: true,
37
+ writable: true,
38
+ value: void 0
39
+ });
40
+ this.body = body;
41
+ this.headers = headers;
42
+ this.status = status;
43
+ this.url = url;
44
+ }
45
+ }
46
+ export class WebSocketRequestError extends BaseError {
47
+ constructor({ body, cause, details, url, }) {
48
+ super("WebSocket request failed.", {
49
+ cause,
50
+ details,
51
+ metaMessages: [
52
+ `URL: ${getUrl(url)}`,
53
+ body && `Request body: ${stringify(body)}`,
54
+ ].filter(Boolean),
55
+ name: "WebSocketRequestError",
56
+ });
57
+ }
58
+ }
59
+ export class RpcRequestError extends BaseError {
60
+ constructor({ body, error, url, }) {
61
+ super("RPC Request failed.", {
62
+ cause: error,
63
+ details: error.message,
64
+ metaMessages: [`URL: ${getUrl(url)}`, `Request body: ${stringify(body)}`],
65
+ name: "RpcRequestError",
66
+ });
67
+ Object.defineProperty(this, "code", {
68
+ enumerable: true,
69
+ configurable: true,
70
+ writable: true,
71
+ value: void 0
72
+ });
73
+ Object.defineProperty(this, "data", {
74
+ enumerable: true,
75
+ configurable: true,
76
+ writable: true,
77
+ value: void 0
78
+ });
79
+ this.code = error.code;
80
+ this.data = error.data;
81
+ }
82
+ }
83
+ export class SocketClosedError extends BaseError {
84
+ constructor({ url, } = {}) {
85
+ super("The socket has been closed.", {
86
+ metaMessages: [url && `URL: ${getUrl(url)}`].filter(Boolean),
87
+ name: "SocketClosedError",
88
+ });
89
+ }
90
+ }
91
+ export class TimeoutError extends BaseError {
92
+ constructor({ body, url, }) {
93
+ super("The request took too long to respond.", {
94
+ details: "The request timed out.",
95
+ metaMessages: [`URL: ${getUrl(url)}`, `Request body: ${stringify(body)}`],
96
+ name: "TimeoutError",
97
+ });
98
+ }
99
+ }
100
+ //# sourceMappingURL=request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../../src/sdk/errors/request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAKpC,MAAM,OAAO,gBAAiB,SAAQ,SAAS;IAM7C,YAAY,EACV,IAAI,EACJ,KAAK,EACL,OAAO,EACP,OAAO,EACP,MAAM,EACN,GAAG,GAQJ;QACC,KAAK,CAAC,sBAAsB,EAAE;YAC5B,KAAK;YACL,OAAO;YACP,YAAY,EAAE;gBACZ,MAAM,IAAI,WAAW,MAAM,EAAE;gBAC7B,QAAQ,MAAM,CAAC,GAAG,CAAC,EAAE;gBACrB,IAAI,IAAI,iBAAiB,SAAS,CAAC,IAAI,CAAC,EAAE;aAC3C,CAAC,MAAM,CAAC,OAAO,CAAa;YAC7B,IAAI,EAAE,kBAAkB;SACzB,CAAC,CAAC;QA7BL;;;;;WAAyE;QACzE;;;;;WAA8B;QAC9B;;;;;WAA4B;QAC5B;;;;;WAAY;QA2BV,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;CACF;AAKD,MAAM,OAAO,qBAAsB,SAAQ,SAAS;IAClD,YAAY,EACV,IAAI,EACJ,KAAK,EACL,OAAO,EACP,GAAG,GAMJ;QACC,KAAK,CAAC,2BAA2B,EAAE;YACjC,KAAK;YACL,OAAO;YACP,YAAY,EAAE;gBACZ,QAAQ,MAAM,CAAC,GAAG,CAAC,EAAE;gBACrB,IAAI,IAAI,iBAAiB,SAAS,CAAC,IAAI,CAAC,EAAE;aAC3C,CAAC,MAAM,CAAC,OAAO,CAAa;YAC7B,IAAI,EAAE,uBAAuB;SAC9B,CAAC,CAAC;IACL,CAAC;CACF;AAKD,MAAM,OAAO,eAAgB,SAAQ,SAAS;IAI5C,YAAY,EACV,IAAI,EACJ,KAAK,EACL,GAAG,GAKJ;QACC,KAAK,CAAC,qBAAqB,EAAE;YAC3B,KAAK,EAAE,KAAY;YACnB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,YAAY,EAAE,CAAC,QAAQ,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,iBAAiB,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;YACzE,IAAI,EAAE,iBAAiB;SACxB,CAAC,CAAC;QAjBL;;;;;WAAa;QACb;;;;;WAAe;QAiBb,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;IACzB,CAAC;CACF;AAKD,MAAM,OAAO,iBAAkB,SAAQ,SAAS;IAC9C,YAAY,EACV,GAAG,MAGD,EAAE;QACJ,KAAK,CAAC,6BAA6B,EAAE;YACnC,YAAY,EAAE,CAAC,GAAG,IAAI,QAAQ,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAa;YACxE,IAAI,EAAE,mBAAmB;SAC1B,CAAC,CAAC;IACL,CAAC;CACF;AAKD,MAAM,OAAO,YAAa,SAAQ,SAAS;IACzC,YAAY,EACV,IAAI,EACJ,GAAG,GAIJ;QACC,KAAK,CAAC,uCAAuC,EAAE;YAC7C,OAAO,EAAE,wBAAwB;YACjC,YAAY,EAAE,CAAC,QAAQ,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,iBAAiB,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;YACzE,IAAI,EAAE,cAAc;SACrB,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,30 @@
1
+ import { BaseError } from "./base.js";
2
+ import { RpcRequestError } from "./request.js";
3
+ const unknownErrorCode = -1;
4
+ export class RpcError extends BaseError {
5
+ constructor(cause, { code, docsPath, metaMessages, name, shortMessage, }) {
6
+ super(shortMessage, {
7
+ cause,
8
+ docsPath,
9
+ metaMessages: metaMessages || cause?.metaMessages,
10
+ name: name || "RpcError",
11
+ });
12
+ Object.defineProperty(this, "code", {
13
+ enumerable: true,
14
+ configurable: true,
15
+ writable: true,
16
+ value: void 0
17
+ });
18
+ this.name = name || cause.name;
19
+ this.code = (cause instanceof RpcRequestError ? cause.code : (code ?? unknownErrorCode));
20
+ }
21
+ }
22
+ export class UnknownRpcError extends RpcError {
23
+ constructor(cause) {
24
+ super(cause, {
25
+ name: "UnknownRpcError",
26
+ shortMessage: "An unknown RPC error occurred.",
27
+ });
28
+ }
29
+ }
30
+ //# sourceMappingURL=rpc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../../../src/sdk/errors/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,gBAAgB,GAAG,CAAC,CAAC,CAAC;AAyB5B,MAAM,OAAO,QAA8C,SAAQ,SAAS;IAG1E,YACE,KAAY,EACZ,EACE,IAAI,EACJ,QAAQ,EACR,YAAY,EACZ,IAAI,EACJ,YAAY,GACW;QAEzB,KAAK,CAAC,YAAY,EAAE;YAClB,KAAK;YACL,QAAQ;YACR,YAAY,EACV,YAAY,IAAK,KAAqC,EAAE,YAAY;YACtE,IAAI,EAAE,IAAI,IAAI,UAAU;SACzB,CAAC,CAAC;QAlBL;;;;;WAA4B;QAmB1B,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,CACV,KAAK,YAAY,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,gBAAgB,CAAC,CAClE,CAAC;IACb,CAAC;CACF;AAID,MAAM,OAAO,eAAgB,SAAQ,QAAQ;IAC3C,YAAY,KAAY;QACtB,KAAK,CAAC,KAAK,EAAE;YACX,IAAI,EAAE,iBAAiB;YACvB,YAAY,EAAE,gCAAgC;SAC/C,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ import { BaseError } from "./base.js";
2
+ export class UrlRequiredError extends BaseError {
3
+ constructor() {
4
+ super("No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.", {
5
+ docsPath: "/docs/clients/intro",
6
+ name: "UrlRequiredError",
7
+ });
8
+ }
9
+ }
10
+ //# sourceMappingURL=transport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../../src/sdk/errors/transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAKtC,MAAM,OAAO,gBAAiB,SAAQ,SAAS;IAC7C;QACE,KAAK,CACH,wFAAwF,EACxF;YACE,QAAQ,EAAE,qBAAqB;YAC/B,IAAI,EAAE,kBAAkB;SACzB,CACF,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,2 @@
1
+ export const getUrl = (url) => url;
2
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/sdk/errors/utils.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,CAAC"}
@@ -0,0 +1,2 @@
1
+ export const version = "1.0.0";
2
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../../../src/sdk/errors/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { BaseError } from "./base.js";
2
+ export class WitEncodingLengthMismatchError extends BaseError {
3
+ constructor({ expectedLength, givenLength, }) {
4
+ super([
5
+ "WIT encoding params/values length mismatch.",
6
+ `Expected length (params): ${expectedLength}`,
7
+ `Given length (values): ${givenLength}`,
8
+ ].join("\n"), { name: "WitEncodingLengthMismatchError" });
9
+ }
10
+ }
11
+ export class InvalidWitEncodingTypeError extends BaseError {
12
+ constructor(type, { docsPath }) {
13
+ super([
14
+ `Type "${type}" is not a valid encoding type.`,
15
+ "Please provide a valid WIT type.",
16
+ ].join("\n"), { docsPath, name: "InvalidWitEncodingType" });
17
+ }
18
+ }
19
+ //# sourceMappingURL=wit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wit.js","sourceRoot":"","sources":["../../../../src/sdk/errors/wit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAMtC,MAAM,OAAO,8BAA+B,SAAQ,SAAS;IAC3D,YAAY,EACV,cAAc,EACd,WAAW,GAIZ;QACC,KAAK,CACH;YACE,6CAA6C;YAC7C,6BAA6B,cAAc,EAAE;YAC7C,0BAA0B,WAAW,EAAE;SACxC,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,EAAE,IAAI,EAAE,gCAAgC,EAAE,CAC3C,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,2BAA4B,SAAQ,SAAS;IACxD,YAAY,IAAY,EAAE,EAAE,QAAQ,EAAwB;QAC1D,KAAK,CACH;YACE,SAAS,IAAI,iCAAiC;YAC9C,kCAAkC;SACnC,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,EAAE,QAAQ,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAC7C,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=account.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"account.js","sourceRoot":"","sources":["../../../../src/sdk/types/account.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=btc-rpc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"btc-rpc.js","sourceRoot":"","sources":["../../../../src/sdk/types/btc-rpc.ts"],"names":[],"mappings":""}
@@ -0,0 +1,35 @@
1
+ import { expectTypeOf, test } from "vitest";
2
+ import { nativeToken } from "~test/src/wits.js";
3
+ test("ContractFunctionName", () => {
4
+ expectTypeOf().toEqualTypeOf;
5
+ expectTypeOf().toEqualTypeOf;
6
+ expectTypeOf().toEqualTypeOf;
7
+ expectTypeOf().toEqualTypeOf;
8
+ });
9
+ test("ContractFunctionArgs", () => {
10
+ expectTypeOf().toEqualTypeOf;
11
+ expectTypeOf().toEqualTypeOf;
12
+ expectTypeOf().toEqualTypeOf;
13
+ expectTypeOf().toEqualTypeOf;
14
+ expectTypeOf().toEqualTypeOf;
15
+ expectTypeOf().toEqualTypeOf;
16
+ expectTypeOf().toEqualTypeOf;
17
+ expectTypeOf().toEqualTypeOf;
18
+ expectTypeOf().toEqualTypeOf;
19
+ expectTypeOf().toEqualTypeOf;
20
+ expectTypeOf().toEqualTypeOf;
21
+ });
22
+ test("ContractFunctionReturnType", () => {
23
+ expectTypeOf().toEqualTypeOf;
24
+ expectTypeOf().toEqualTypeOf;
25
+ expectTypeOf().toEqualTypeOf;
26
+ expectTypeOf().toEqualTypeOf;
27
+ expectTypeOf().toEqualTypeOf;
28
+ expectTypeOf().toEqualTypeOf;
29
+ expectTypeOf().toEqualTypeOf;
30
+ expectTypeOf().toEqualTypeOf;
31
+ expectTypeOf().toEqualTypeOf;
32
+ expectTypeOf().toEqualTypeOf;
33
+ expectTypeOf().toEqualTypeOf;
34
+ });
35
+ //# sourceMappingURL=contract.test-d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contract.test-d.js","sourceRoot":"","sources":["../../../../src/sdk/types/contract.test-d.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAO5C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE;IAEhC,YAAY,EAAO,CAAC,aAanB,CAAC;IAGF,YAAY,EAAQ,CAAC,aAA8C,CAAC;IAGpE,YAAY,EAAQ,CAAC,aAAsD,CAAC;IAG5E,YAAY,EAAQ,CAAC,aAEpB,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE;IAEhC,YAAY,EAAY,CAAC,aAA0C,CAAC;IAGpE,YAAY,EAAQ,CAAC,aAA0C,CAAC;IAGhE,YAAY,EAAW,CAAC,aAA0C,CAAC;IAGnE,YAAY,EAAQ,CAAC,aAA0C,CAAC;IAGhE,YAAY,EAAQ,CAAC,aAA0C,CAAC;IAGhE,YAAY,EAAY,CAAC,aAAkD,CAAC;IAG5E,YAAY,EAAW,CAAC,aAAgC,CAAC;IAGzD,YAAY,EAAY,CAAC,aAA0B,CAAC;IAOpD,YAAY,EAAe,CAAC,aAA0B,CAAC;IAGvD,YAAY,EAAU,CAAC,aAAkD,CAAC;IAG1E,YAAY,EAAU,CAAC,aAA0B,CAAC;AACpD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAMtC,YAAY,EAAY,CAAC,aAYxB,CAAC;IAGF,YAAY,EAAQ,CAAC,aAapB,CAAC;IAOF,YAAY,EAAW,CAAC,aAYvB,CAAC;IAGF,YAAY,EAAQ,CAAC,aAYpB,CAAC;IAEF,YAAY,EAAQ,CAAC,aAYpB,CAAC;IAOF,YAAY,EAAY,CAAC,aAaxB,CAAC;IAMF,YAAY,EAAW,CAAC,aAQvB,CAAC;IAOF,YAAY,EAAY,CAAC,aAExB,CAAC;IAOF,YAAY,EAAe,CAAC,aAA+B,CAAC;IAO5D,YAAY,EAAU,CAAC,aAatB,CAAC;IAOF,YAAY,EAAU,CAAC,aAatB,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,133 @@
1
+ // tests/http-schema.types.test.ts
2
+ import { test, describe, expectTypeOf } from "vitest";
3
+ describe("Http schema type helpers", () => {
4
+ test("ExtractMethod returns correct methods for a route", () => {
5
+ // There are two entries for "/users/:userId": GET + PATCH
6
+ expectTypeOf().toEqualTypeOf();
7
+ });
8
+ test("ExtractPathParams converts ordered tuples to a record", () => {
9
+ // Path params for "/users/:userId"
10
+ expectTypeOf().toEqualTypeOf();
11
+ // Path params for "/users/:userId/posts/:postId"
12
+ expectTypeOf().toEqualTypeOf();
13
+ });
14
+ test("ExtractQueryParams returns the right query type", () => {
15
+ expectTypeOf().toEqualTypeOf();
16
+ expectTypeOf().toEqualTypeOf(); // route has `never` query
17
+ });
18
+ test("ExtractBodyParams returns the right body type", () => {
19
+ expectTypeOf().toEqualTypeOf();
20
+ expectTypeOf().toEqualTypeOf();
21
+ // no body for this GET route
22
+ expectTypeOf().toEqualTypeOf();
23
+ });
24
+ });
25
+ describe("HttpRequestFn", () => {
26
+ const request = async (args) => {
27
+ // We don't care about runtime here; just satisfy the type.
28
+ // Narrow return type based on `args.route` (not required for the tests).
29
+ switch (args.route) {
30
+ case "/users/:userId":
31
+ return { id: "123", name: "John Doe" };
32
+ case "/users/:userId/posts/:postId":
33
+ return { id: "1", title: "Post" };
34
+ case "/users":
35
+ return { id: "123" };
36
+ default:
37
+ throw new Error("Unknown route");
38
+ }
39
+ };
40
+ test("typed call for GET /users/:userId with path & query", async () => {
41
+ const user = await request({
42
+ method: "PATCH",
43
+ route: "/users/:userId",
44
+ path: { userId: "123" }, // Path is normalized to record
45
+ body: { name: "foo" },
46
+ });
47
+ // Both GET and PATCH return the same shape for this route.
48
+ expectTypeOf(user).toEqualTypeOf();
49
+ });
50
+ test("typed call for GET /users/:userId/posts/:postId", async () => {
51
+ const post = await request({
52
+ method: "GET",
53
+ route: "/users/:userId/posts/:postId",
54
+ path: { userId: "123", postId: "456" },
55
+ });
56
+ expectTypeOf(post).toEqualTypeOf();
57
+ });
58
+ test("typed call for POST /users with required body", async () => {
59
+ const created = await request({
60
+ method: "POST",
61
+ route: "/users",
62
+ body: { name: "Jane", email: "jane@example.com" },
63
+ });
64
+ expectTypeOf(created).toEqualTypeOf();
65
+ });
66
+ test("missing required body for POST /users should be an error", async () => {
67
+ // @ts-expect-error body is required for /users
68
+ await request({
69
+ route: "/users",
70
+ });
71
+ await request({
72
+ route: "/users",
73
+ // @ts-expect-error body is required (shape mismatch)
74
+ body: { wrong: "shape" },
75
+ });
76
+ });
77
+ test("path is required where schema has path params", async () => {
78
+ await request({
79
+ method: "GET",
80
+ route: "/users/:userId",
81
+ path: { userId: "123" },
82
+ query: { verbose: true },
83
+ });
84
+ });
85
+ test("query is optional when underlying type is optional", async () => {
86
+ await request({
87
+ method: "GET",
88
+ route: "/users/:userId",
89
+ path: { userId: "123" },
90
+ query: { verbose: false },
91
+ });
92
+ await request({
93
+ method: "GET",
94
+ route: "/users/:userId",
95
+ path: { userId: "123" },
96
+ });
97
+ });
98
+ test("default / loose mode when Schema is undefined", async () => {
99
+ const looseRequest = async (args) => {
100
+ return args;
101
+ };
102
+ // Any route string is allowed
103
+ await looseRequest({
104
+ method: "GET",
105
+ route: "/anything",
106
+ path: { foo: "bar" },
107
+ query: { x: 1 },
108
+ body: { whatever: true },
109
+ });
110
+ });
111
+ });
112
+ describe("HttpRequestOptions.routes OneOf", () => {
113
+ test("routes can have include", () => {
114
+ const opts = {
115
+ routes: { include: ["/users", "/posts"] },
116
+ };
117
+ expectTypeOf(opts.routes).toMatchTypeOf();
118
+ });
119
+ test("routes can have exclude", () => {
120
+ const opts = {
121
+ routes: { exclude: ["/health"] },
122
+ };
123
+ expectTypeOf(opts.routes).toMatchTypeOf();
124
+ });
125
+ test("routes cannot have both include and exclude", () => {
126
+ const bad = {
127
+ // @ts-expect-error OneOf should not allow both include and exclude
128
+ routes: { include: ["/users"], exclude: ["/posts"] },
129
+ };
130
+ void bad;
131
+ });
132
+ });
133
+ //# sourceMappingURL=http-schema.test-d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-schema.test-d.js","sourceRoot":"","sources":["../../../../src/sdk/types/http-schema.test-d.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAClC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAyDtD,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,IAAI,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAG7D,0DAA0D;QAC1D,YAAY,EAAiB,CAAC,aAAa,EAAmB,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAOjE,mCAAmC;QACnC,YAAY,EAAkB,CAAC,aAAa,EAEzC,CAAC;QAEJ,iDAAiD;QACjD,YAAY,EAAkB,CAAC,aAAa,EAEzC,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,iDAAiD,EAAE,GAAG,EAAE;QAO3D,YAAY,EAAmB,CAAC,aAAa,EAAyB,CAAC;QACvE,YAAY,EAAoB,CAAC,aAAa,EAAS,CAAC,CAAC,0BAA0B;IACrF,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,+CAA+C,EAAE,GAAG,EAAE;QAQzD,YAAY,EAAkB,CAAC,aAAa,EAGxC,CAAC;QAEL,YAAY,EAAiB,CAAC,aAAa,EAAqB,CAAC;QAEjE,6BAA6B;QAC7B,YAAY,EAAe,CAAC,aAAa,EAAS,CAAC;IACrD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,MAAM,OAAO,GAA4B,KAAK,EAAE,IAAI,EAAE,EAAE;QACtD,2DAA2D;QAC3D,yEAAyE;QACzE,QAAQ,IAAI,CAAC,KAAK,EAAE,CAAC;YACnB,KAAK,gBAAgB;gBACnB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAS,CAAC;YAChD,KAAK,8BAA8B;gBACjC,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAS,CAAC;YAC3C,KAAK,QAAQ;gBACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAS,CAAC;YAC9B;gBACE,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;QACrC,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;QACrE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC;YACzB,MAAM,EAAE,OAAO;YACf,KAAK,EAAE,gBAAgB;YACvB,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,+BAA+B;YACxD,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE;SACtB,CAAC,CAAC;QAEH,2DAA2D;QAC3D,YAAY,CAAC,IAAI,CAAC,CAAC,aAAa,EAAgC,CAAC;IACnE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QACjE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC;YACzB,MAAM,EAAE,KAAK;YACb,KAAK,EAAE,8BAA8B;YACrC,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE;SACvC,CAAC,CAAC;QAEH,YAAY,CAAC,IAAI,CAAC,CAAC,aAAa,EAAiC,CAAC;IACpE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC;YAC5B,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,QAAQ;YACf,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,EAAE;SAClD,CAAC,CAAC;QAEH,YAAY,CAAC,OAAO,CAAC,CAAC,aAAa,EAAkB,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;QAC1E,+CAA+C;QAC/C,MAAM,OAAO,CAAC;YACZ,KAAK,EAAE,QAAQ;SAChB,CAAC,CAAC;QAEH,MAAM,OAAO,CAAC;YACZ,KAAK,EAAE,QAAQ;YACf,qDAAqD;YACrD,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;SACzB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,OAAO,CAAC;YACZ,MAAM,EAAE,KAAK;YACb,KAAK,EAAE,gBAAgB;YACvB,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;YACvB,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;SACzB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;QACpE,MAAM,OAAO,CAAC;YACZ,MAAM,EAAE,KAAK;YACb,KAAK,EAAE,gBAAgB;YACvB,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;YACvB,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;SAC1B,CAAC,CAAC;QAEH,MAAM,OAAO,CAAC;YACZ,MAAM,EAAE,KAAK;YACb,KAAK,EAAE,gBAAgB;YACvB,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;SACxB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,YAAY,GAA6B,KAAK,EAAE,IAAI,EAAE,EAAE;YAC5D,OAAO,IAAW,CAAC;QACrB,CAAC,CAAC;QAEF,8BAA8B;QAC9B,MAAM,YAAY,CAAC;YACjB,MAAM,EAAE,KAAK;YACb,KAAK,EAAE,WAAW;YAClB,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE;YACpB,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE;YACf,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;SACzB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC/C,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACnC,MAAM,IAAI,GAAuB;YAC/B,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE;SAC1C,CAAC;QACF,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,EAIpC,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACnC,MAAM,IAAI,GAAuB;YAC/B,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,SAAS,CAAC,EAAE;SACjC,CAAC;QACF,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,EAIpC,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACvD,MAAM,GAAG,GAAuB;YAC9B,mEAAmE;YACnE,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE;SACrD,CAAC;QAEF,KAAK,GAAG,CAAC;IACX,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=misc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"misc.js","sourceRoot":"","sources":["../../../../src/sdk/types/misc.ts"],"names":[],"mappings":""}
@@ -0,0 +1,19 @@
1
+ export {};
2
+ // Subscription<result, error>);
3
+ // type Subscription<result, error> = {
4
+ // method: "eth_subscription";
5
+ // error?: undefined;
6
+ // result?: undefined;
7
+ // params:
8
+ // | {
9
+ // subscription: string;
10
+ // result: result;
11
+ // error?: undefined;
12
+ // }
13
+ // | {
14
+ // subscription: string;
15
+ // result?: undefined;
16
+ // error: error;
17
+ // };
18
+ // };
19
+ //# sourceMappingURL=rpc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../../../src/sdk/types/rpc.ts"],"names":[],"mappings":";AAsBA,gCAAgC;AAEhC,uCAAuC;AACvC,gCAAgC;AAChC,uBAAuB;AACvB,wBAAwB;AACxB,YAAY;AACZ,UAAU;AACV,gCAAgC;AAChC,0BAA0B;AAC1B,6BAA6B;AAC7B,UAAU;AACV,UAAU;AACV,gCAAgC;AAChC,8BAA8B;AAC9B,wBAAwB;AACxB,WAAW;AACX,KAAK"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/sdk/types/utils.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ // bip.ts (or wbip.ts)
2
+ export {};
3
+ //# sourceMappingURL=wbip001.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wbip001.js","sourceRoot":"","sources":["../../../../src/sdk/types/wbip001.ts"],"names":[],"mappings":"AAAA,sBAAsB"}
@@ -0,0 +1,55 @@
1
+ // sdk/utils/build-http-request.ts
2
+ import { buildRequest } from "./build-request.js";
3
+ import { HttpRequestError, } from "../errors/request.js";
4
+ export function buildHttpRequest(request, options = {}) {
5
+ const { routes, ...baseOptions } = options;
6
+ const genericRequest = buildRequest(request, {
7
+ dedupe: baseOptions.dedupe,
8
+ retryDelay: baseOptions.retryDelay,
9
+ retryCount: baseOptions.retryCount,
10
+ uid: baseOptions.uid,
11
+ shouldRetry: ({ error }) => (error ? shouldRetryHttp(error) : false),
12
+ });
13
+ return async (args, overrideOptions = {}) => {
14
+ const { routes: overrideRoutes, ...overrideBase } = overrideOptions;
15
+ const effectiveRoutes = overrideRoutes ?? routes;
16
+ if (effectiveRoutes) {
17
+ const { route } = args;
18
+ if (effectiveRoutes.exclude?.includes(route))
19
+ throw new Error("route not supported");
20
+ if (effectiveRoutes.include && !effectiveRoutes.include.includes(route))
21
+ throw new Error("route not supported");
22
+ }
23
+ const baseOverrideOptions = {
24
+ dedupe: overrideBase.dedupe,
25
+ retryDelay: overrideBase.retryDelay,
26
+ retryCount: overrideBase.retryCount,
27
+ uid: overrideBase.uid,
28
+ };
29
+ return genericRequest(args, baseOverrideOptions);
30
+ };
31
+ }
32
+ /** HTTP-specific retry heuristic. */
33
+ function shouldRetryHttp(error) {
34
+ if (error instanceof HttpRequestError && error.status) {
35
+ if (error.status === 403)
36
+ return true;
37
+ if (error.status === 408)
38
+ return true;
39
+ if (error.status === 413)
40
+ return true;
41
+ if (error.status === 429)
42
+ return true;
43
+ if (error.status === 500)
44
+ return true;
45
+ if (error.status === 502)
46
+ return true;
47
+ if (error.status === 503)
48
+ return true;
49
+ if (error.status === 504)
50
+ return true;
51
+ return false;
52
+ }
53
+ return true;
54
+ }
55
+ //# sourceMappingURL=build-http-request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-http-request.js","sourceRoot":"","sources":["../../../../src/sdk/utils/build-http-request.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAClC,OAAO,EAAE,YAAY,EAA2B,MAAM,oBAAoB,CAAC;AAM3E,OAAO,EACL,gBAAgB,GAEjB,MAAM,sBAAsB,CAAC;AAK9B,MAAM,UAAU,gBAAgB,CAG9B,OAAgB,EAAE,UAA8B,EAAE;IAClD,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,EAAE,GAAG,OAAO,CAAC;IAE3C,MAAM,cAAc,GAAG,YAAY,CAAoB,OAAO,EAAE;QAC9D,MAAM,EAAE,WAAW,CAAC,MAAM;QAC1B,UAAU,EAAE,WAAW,CAAC,UAAU;QAClC,UAAU,EAAE,WAAW,CAAC,UAAU;QAClC,GAAG,EAAE,WAAW,CAAC,GAAG;QACpB,WAAW,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;KACrE,CAAC,CAAC;IAEH,OAAO,KAAK,EAAE,IAAS,EAAE,kBAAsC,EAAE,EAAE,EAAE;QACnE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,YAAY,EAAE,GAAG,eAAe,CAAC;QACpE,MAAM,eAAe,GAAG,cAAc,IAAI,MAAM,CAAC;QAEjD,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;YACvB,IAAI,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC;gBAC1C,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;YACzC,IAAI,eAAe,CAAC,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;gBACrE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAC3C,CAAC;QAED,MAAM,mBAAmB,GAAuB;YAC9C,MAAM,EAAE,YAAY,CAAC,MAAM;YAC3B,UAAU,EAAE,YAAY,CAAC,UAAU;YACnC,UAAU,EAAE,YAAY,CAAC,UAAU;YACnC,GAAG,EAAE,YAAY,CAAC,GAAG;SACtB,CAAC;QAEF,OAAO,cAAc,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;IACnD,CAAC,CAAC;AACJ,CAAC;AAED,qCAAqC;AACrC,SAAS,eAAe,CAAC,KAAY;IACnC,IAAI,KAAK,YAAY,gBAAgB,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACtD,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QACtC,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QACtC,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QACtC,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QACtC,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QACtC,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QACtC,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QACtC,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QACtC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,35 @@
1
+ import { HttpRequestError } from "../errors/request.js";
2
+ import { withDedupe } from "./promise/with-dedupe.js";
3
+ import { withRetry } from "./promise/with-retry.js";
4
+ // TODO: move to helper
5
+ export const stringify = (value, replacer, space) => JSON.stringify(value, (key, value_) => {
6
+ const value = typeof value_ === "bigint" ? value_.toString() : value_;
7
+ return typeof replacer === "function" ? replacer(key, value) : value;
8
+ }, space);
9
+ export function buildRequest(request, options = {}) {
10
+ return async (args, overrideOptions = {}) => {
11
+ const { dedupe = false, retryDelay = 150, retryCount = 3, uid, shouldRetry = () => true, } = { ...options, ...overrideOptions };
12
+ const requestId = dedupe ? `${uid}.${stringify(args)}` : undefined;
13
+ return withDedupe(() => withRetry(async () => {
14
+ try {
15
+ return await request(args);
16
+ }
17
+ catch (err) {
18
+ // Let the caller decide the error wrapper.
19
+ throw err;
20
+ }
21
+ }, {
22
+ delay: ({ count, error }) => {
23
+ if (error && error instanceof HttpRequestError) {
24
+ const retryAfter = error?.headers?.get("Retry-After");
25
+ if (retryAfter?.match(/\d/))
26
+ return Number.parseInt(retryAfter, 10) * 1000;
27
+ }
28
+ return ~~(1 << count) * retryDelay;
29
+ },
30
+ retryCount,
31
+ shouldRetry,
32
+ }), { enabled: dedupe, id: requestId });
33
+ };
34
+ }
35
+ //# sourceMappingURL=build-request.js.map