@bigmi/core 0.7.1 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1036) hide show
  1. package/dist/cjs/_virtual/_rolldown/runtime.js +23 -0
  2. package/dist/cjs/actions/getBalance.d.ts +14 -9
  3. package/dist/cjs/actions/getBalance.js +9 -8
  4. package/dist/cjs/actions/getBalance.js.map +1 -1
  5. package/dist/cjs/actions/getBlock.d.ts +21 -13
  6. package/dist/cjs/actions/getBlock.js +30 -28
  7. package/dist/cjs/actions/getBlock.js.map +1 -1
  8. package/dist/cjs/actions/getBlockCount.d.ts +12 -7
  9. package/dist/cjs/actions/getBlockCount.js +9 -8
  10. package/dist/cjs/actions/getBlockCount.js.map +1 -1
  11. package/dist/cjs/actions/getBlockStats.d.ts +23 -14
  12. package/dist/cjs/actions/getBlockStats.js +24 -24
  13. package/dist/cjs/actions/getBlockStats.js.map +1 -1
  14. package/dist/cjs/actions/getTransactionFee.d.ts +16 -9
  15. package/dist/cjs/actions/getTransactionFee.js +9 -8
  16. package/dist/cjs/actions/getTransactionFee.js.map +1 -1
  17. package/dist/cjs/actions/getTransactions.d.ts +27 -17
  18. package/dist/cjs/actions/getTransactions.js +14 -13
  19. package/dist/cjs/actions/getTransactions.js.map +1 -1
  20. package/dist/cjs/actions/getUTXOTransaction.d.ts +19 -11
  21. package/dist/cjs/actions/getUTXOTransaction.js +19 -21
  22. package/dist/cjs/actions/getUTXOTransaction.js.map +1 -1
  23. package/dist/cjs/actions/getUTXOs.d.ts +19 -11
  24. package/dist/cjs/actions/getUTXOs.js +12 -11
  25. package/dist/cjs/actions/getUTXOs.js.map +1 -1
  26. package/dist/cjs/actions/getXPubAddresses.d.ts +36 -10
  27. package/dist/cjs/actions/getXPubAddresses.js +30 -8
  28. package/dist/cjs/actions/getXPubAddresses.js.map +1 -1
  29. package/dist/cjs/actions/sendUTXOTransaction.d.ts +18 -10
  30. package/dist/cjs/actions/sendUTXOTransaction.js +11 -12
  31. package/dist/cjs/actions/sendUTXOTransaction.js.map +1 -1
  32. package/dist/cjs/actions/signPsbt.d.ts +11 -6
  33. package/dist/cjs/actions/signPsbt.js +9 -8
  34. package/dist/cjs/actions/signPsbt.js.map +1 -1
  35. package/dist/cjs/actions/waitForTransaction.d.ts +84 -31
  36. package/dist/cjs/actions/waitForTransaction.js +156 -185
  37. package/dist/cjs/actions/waitForTransaction.js.map +1 -1
  38. package/dist/cjs/actions/watchBlockNumber.d.ts +31 -14
  39. package/dist/cjs/actions/watchBlockNumber.js +48 -43
  40. package/dist/cjs/actions/watchBlockNumber.js.map +1 -1
  41. package/dist/cjs/chains/bitcoin.d.ts +7 -24
  42. package/dist/cjs/chains/bitcoin.js +19 -20
  43. package/dist/cjs/chains/bitcoin.js.map +1 -1
  44. package/dist/cjs/chains/defineChain.d.ts +8 -3
  45. package/dist/cjs/chains/defineChain.js +11 -9
  46. package/dist/cjs/chains/defineChain.js.map +1 -1
  47. package/dist/cjs/chains/signet.d.ts +7 -24
  48. package/dist/cjs/chains/signet.js +20 -23
  49. package/dist/cjs/chains/signet.js.map +1 -1
  50. package/dist/cjs/clients/decorators/public.d.ts +28 -23
  51. package/dist/cjs/clients/decorators/public.js +23 -21
  52. package/dist/cjs/clients/decorators/public.js.map +1 -1
  53. package/dist/cjs/clients/decorators/wallet.d.ts +18 -10
  54. package/dist/cjs/clients/decorators/wallet.js +11 -9
  55. package/dist/cjs/clients/decorators/wallet.js.map +1 -1
  56. package/dist/cjs/errors/address.d.ts +14 -7
  57. package/dist/cjs/errors/address.js +13 -15
  58. package/dist/cjs/errors/address.js.map +1 -1
  59. package/dist/cjs/errors/base.d.ts +24 -21
  60. package/dist/cjs/errors/base.js +38 -50
  61. package/dist/cjs/errors/base.js.map +1 -1
  62. package/dist/cjs/errors/block.d.ts +17 -9
  63. package/dist/cjs/errors/block.js +13 -16
  64. package/dist/cjs/errors/block.js.map +1 -1
  65. package/dist/cjs/errors/provider.d.ts +8 -3
  66. package/dist/cjs/errors/provider.js +11 -13
  67. package/dist/cjs/errors/provider.js.map +1 -1
  68. package/dist/cjs/errors/request.d.ts +92 -65
  69. package/dist/cjs/errors/request.js +65 -67
  70. package/dist/cjs/errors/request.js.map +1 -1
  71. package/dist/cjs/errors/rpc.d.ts +58 -20
  72. package/dist/cjs/errors/rpc.js +74 -47
  73. package/dist/cjs/errors/rpc.js.map +1 -1
  74. package/dist/cjs/errors/transaction.d.ts +40 -25
  75. package/dist/cjs/errors/transaction.js +25 -36
  76. package/dist/cjs/errors/transaction.js.map +1 -1
  77. package/dist/cjs/errors/transport.d.ts +39 -27
  78. package/dist/cjs/errors/transport.js +34 -39
  79. package/dist/cjs/errors/transport.js.map +1 -1
  80. package/dist/cjs/errors/utils.d.ts +10 -5
  81. package/dist/cjs/errors/utils.js +5 -4
  82. package/dist/cjs/errors/utils.js.map +1 -1
  83. package/dist/cjs/errors/utxo.d.ts +18 -9
  84. package/dist/cjs/errors/utxo.js +13 -14
  85. package/dist/cjs/errors/utxo.js.map +1 -1
  86. package/dist/cjs/factories/createClient.d.ts +61 -44
  87. package/dist/cjs/factories/createClient.js +47 -40
  88. package/dist/cjs/factories/createClient.js.map +1 -1
  89. package/dist/cjs/factories/createTransport.d.ts +19 -2
  90. package/dist/cjs/factories/createTransport.js +31 -21
  91. package/dist/cjs/factories/createTransport.js.map +1 -1
  92. package/dist/cjs/index.d.ts +71 -83
  93. package/dist/cjs/index.js +133 -137
  94. package/dist/cjs/test/utils.d.ts +5 -1
  95. package/dist/cjs/test/utils.js +8 -9
  96. package/dist/cjs/test/utils.js.map +1 -1
  97. package/dist/cjs/transports/__mocks__/getTransactionFee.d.ts +7 -3
  98. package/dist/cjs/transports/__mocks__/getTransactionFee.js +10 -6
  99. package/dist/cjs/transports/__mocks__/getTransactionFee.js.map +1 -1
  100. package/dist/cjs/transports/ankr/ankr.d.ts +9 -5
  101. package/dist/cjs/transports/ankr/ankr.js +19 -20
  102. package/dist/cjs/transports/ankr/ankr.js.map +1 -1
  103. package/dist/cjs/transports/ankr/ankr.types.d.ts +75 -71
  104. package/dist/cjs/transports/ankr/ankr.types.js +0 -3
  105. package/dist/cjs/transports/ankr/getBalance.d.ts +7 -2
  106. package/dist/cjs/transports/ankr/getBalance.js +15 -19
  107. package/dist/cjs/transports/ankr/getBalance.js.map +1 -1
  108. package/dist/cjs/transports/ankr/getTransactionFee.d.ts +7 -2
  109. package/dist/cjs/transports/ankr/getTransactionFee.js +11 -14
  110. package/dist/cjs/transports/ankr/getTransactionFee.js.map +1 -1
  111. package/dist/cjs/transports/ankr/getTransactions.d.ts +7 -2
  112. package/dist/cjs/transports/ankr/getTransactions.js +26 -28
  113. package/dist/cjs/transports/ankr/getTransactions.js.map +1 -1
  114. package/dist/cjs/transports/ankr/methods.d.ts +7 -2
  115. package/dist/cjs/transports/ankr/methods.js +12 -10
  116. package/dist/cjs/transports/ankr/methods.js.map +1 -1
  117. package/dist/cjs/transports/ankr/utils.d.ts +8 -3
  118. package/dist/cjs/transports/ankr/utils.js +26 -25
  119. package/dist/cjs/transports/ankr/utils.js.map +1 -1
  120. package/dist/cjs/transports/blockchair/blockchair.d.ts +9 -5
  121. package/dist/cjs/transports/blockchair/blockchair.js +12 -13
  122. package/dist/cjs/transports/blockchair/blockchair.js.map +1 -1
  123. package/dist/cjs/transports/blockchair/blockchair.types.d.ts +128 -124
  124. package/dist/cjs/transports/blockchair/blockchair.types.js +0 -3
  125. package/dist/cjs/transports/blockchair/getBalance.d.ts +7 -2
  126. package/dist/cjs/transports/blockchair/getBalance.js +19 -28
  127. package/dist/cjs/transports/blockchair/getBalance.js.map +1 -1
  128. package/dist/cjs/transports/blockchair/getTransactionFee.d.ts +7 -2
  129. package/dist/cjs/transports/blockchair/getTransactionFee.js +16 -29
  130. package/dist/cjs/transports/blockchair/getTransactionFee.js.map +1 -1
  131. package/dist/cjs/transports/blockchair/getUTXOs.d.ts +7 -2
  132. package/dist/cjs/transports/blockchair/getUTXOs.js +85 -100
  133. package/dist/cjs/transports/blockchair/getUTXOs.js.map +1 -1
  134. package/dist/cjs/transports/blockchair/getXPubAddresses.d.ts +7 -2
  135. package/dist/cjs/transports/blockchair/getXPubAddresses.js +29 -43
  136. package/dist/cjs/transports/blockchair/getXPubAddresses.js.map +1 -1
  137. package/dist/cjs/transports/blockchair/methods.d.ts +7 -2
  138. package/dist/cjs/transports/blockchair/methods.js +14 -12
  139. package/dist/cjs/transports/blockchair/methods.js.map +1 -1
  140. package/dist/cjs/transports/blockcypher/blockcypher.d.ts +9 -5
  141. package/dist/cjs/transports/blockcypher/blockcypher.js +11 -12
  142. package/dist/cjs/transports/blockcypher/blockcypher.js.map +1 -1
  143. package/dist/cjs/transports/blockcypher/blockcypher.types.d.ts +69 -65
  144. package/dist/cjs/transports/blockcypher/blockcypher.types.js +0 -3
  145. package/dist/cjs/transports/blockcypher/getBalance.d.ts +7 -2
  146. package/dist/cjs/transports/blockcypher/getBalance.js +16 -23
  147. package/dist/cjs/transports/blockcypher/getBalance.js.map +1 -1
  148. package/dist/cjs/transports/blockcypher/getTransactionFee.d.ts +7 -2
  149. package/dist/cjs/transports/blockcypher/getTransactionFee.js +16 -20
  150. package/dist/cjs/transports/blockcypher/getTransactionFee.js.map +1 -1
  151. package/dist/cjs/transports/blockcypher/getUTXOs.d.ts +7 -2
  152. package/dist/cjs/transports/blockcypher/getUTXOs.js +71 -76
  153. package/dist/cjs/transports/blockcypher/getUTXOs.js.map +1 -1
  154. package/dist/cjs/transports/blockcypher/methods.d.ts +7 -2
  155. package/dist/cjs/transports/blockcypher/methods.js +12 -10
  156. package/dist/cjs/transports/blockcypher/methods.js.map +1 -1
  157. package/dist/cjs/transports/blockcypher/utils.d.ts +7 -2
  158. package/dist/cjs/transports/blockcypher/utils.js +8 -8
  159. package/dist/cjs/transports/blockcypher/utils.js.map +1 -1
  160. package/dist/cjs/transports/custom.d.ts +20 -13
  161. package/dist/cjs/transports/custom.js +19 -14
  162. package/dist/cjs/transports/custom.js.map +1 -1
  163. package/dist/cjs/transports/fallback.d.ts +86 -48
  164. package/dist/cjs/transports/fallback.js +160 -182
  165. package/dist/cjs/transports/fallback.js.map +1 -1
  166. package/dist/cjs/transports/getHttpRpcClient.d.ts +30 -25
  167. package/dist/cjs/transports/getHttpRpcClient.js +74 -94
  168. package/dist/cjs/transports/getHttpRpcClient.js.map +1 -1
  169. package/dist/cjs/transports/getRpcProviderMethods.d.ts +8 -4
  170. package/dist/cjs/transports/getRpcProviderMethods.js +16 -19
  171. package/dist/cjs/transports/getRpcProviderMethods.js.map +1 -1
  172. package/dist/cjs/transports/http.d.ts +42 -26
  173. package/dist/cjs/transports/http.js +70 -76
  174. package/dist/cjs/transports/http.js.map +1 -1
  175. package/dist/cjs/transports/mempool/getBalance.d.ts +7 -2
  176. package/dist/cjs/transports/mempool/getBalance.js +11 -12
  177. package/dist/cjs/transports/mempool/getBalance.js.map +1 -1
  178. package/dist/cjs/transports/mempool/getTransactionFee.d.ts +7 -2
  179. package/dist/cjs/transports/mempool/getTransactionFee.js +10 -11
  180. package/dist/cjs/transports/mempool/getTransactionFee.js.map +1 -1
  181. package/dist/cjs/transports/mempool/getTransactions.d.ts +7 -2
  182. package/dist/cjs/transports/mempool/getTransactions.js +23 -29
  183. package/dist/cjs/transports/mempool/getTransactions.js.map +1 -1
  184. package/dist/cjs/transports/mempool/mempool.d.ts +8 -4
  185. package/dist/cjs/transports/mempool/mempool.js +11 -12
  186. package/dist/cjs/transports/mempool/mempool.js.map +1 -1
  187. package/dist/cjs/transports/mempool/mempool.types.d.ts +62 -58
  188. package/dist/cjs/transports/mempool/mempool.types.js +0 -3
  189. package/dist/cjs/transports/mempool/methods.d.ts +7 -2
  190. package/dist/cjs/transports/mempool/methods.js +12 -10
  191. package/dist/cjs/transports/mempool/methods.js.map +1 -1
  192. package/dist/cjs/transports/mempool/utils.d.ts +8 -3
  193. package/dist/cjs/transports/mempool/utils.js +27 -26
  194. package/dist/cjs/transports/mempool/utils.js.map +1 -1
  195. package/dist/cjs/transports/types.d.ts +120 -120
  196. package/dist/cjs/transports/types.js +11 -9
  197. package/dist/cjs/transports/types.js.map +1 -1
  198. package/dist/cjs/transports/utxo.d.ts +9 -5
  199. package/dist/cjs/transports/utxo.js +60 -62
  200. package/dist/cjs/transports/utxo.js.map +1 -1
  201. package/dist/cjs/types/account.d.ts +11 -6
  202. package/dist/cjs/types/account.js +0 -3
  203. package/dist/cjs/types/address.d.ts +20 -15
  204. package/dist/cjs/types/address.js +13 -11
  205. package/dist/cjs/types/address.js.map +1 -1
  206. package/dist/cjs/types/block.d.ts +23 -1
  207. package/dist/cjs/types/block.js +0 -3
  208. package/dist/cjs/types/blockStats.d.ts +37 -33
  209. package/dist/cjs/types/blockStats.js +0 -3
  210. package/dist/cjs/types/chain.d.ts +45 -42
  211. package/dist/cjs/types/chain.js +23 -20
  212. package/dist/cjs/types/chain.js.map +1 -1
  213. package/dist/cjs/types/client.d.ts +49 -36
  214. package/dist/cjs/types/client.js +0 -3
  215. package/dist/cjs/types/hash.d.ts +5 -1
  216. package/dist/cjs/types/hash.js +0 -3
  217. package/dist/cjs/types/request.d.ts +39 -37
  218. package/dist/cjs/types/request.js +0 -3
  219. package/dist/cjs/types/rpc.d.ts +28 -28
  220. package/dist/cjs/types/rpc.js +0 -3
  221. package/dist/cjs/types/transaction.d.ts +49 -45
  222. package/dist/cjs/types/transaction.js +0 -3
  223. package/dist/cjs/types/transport.d.ts +34 -27
  224. package/dist/cjs/types/transport.js +0 -3
  225. package/dist/cjs/types/utils.d.ts +60 -35
  226. package/dist/cjs/types/utils.js +0 -3
  227. package/dist/cjs/types/xpub.d.ts +13 -8
  228. package/dist/cjs/types/xpub.js +0 -3
  229. package/dist/cjs/utils/buildRequest.d.ts +11 -5
  230. package/dist/cjs/utils/buildRequest.js +68 -97
  231. package/dist/cjs/utils/buildRequest.js.map +1 -1
  232. package/dist/cjs/utils/cancelTransaction.d.ts +7 -2
  233. package/dist/cjs/utils/cancelTransaction.js +37 -48
  234. package/dist/cjs/utils/cancelTransaction.js.map +1 -1
  235. package/dist/cjs/utils/converter.d.ts +9 -5
  236. package/dist/cjs/utils/converter.js +22 -30
  237. package/dist/cjs/utils/converter.js.map +1 -1
  238. package/dist/cjs/utils/createBatchScheduler.d.ts +23 -15
  239. package/dist/cjs/utils/createBatchScheduler.js +53 -52
  240. package/dist/cjs/utils/createBatchScheduler.js.map +1 -1
  241. package/dist/cjs/utils/deepEqual.d.ts +6 -1
  242. package/dist/cjs/utils/deepEqual.js +30 -49
  243. package/dist/cjs/utils/deepEqual.js.map +1 -1
  244. package/dist/cjs/utils/getAction.d.ts +21 -9
  245. package/dist/cjs/utils/getAction.js +17 -12
  246. package/dist/cjs/utils/getAction.js.map +1 -1
  247. package/dist/cjs/utils/getAddressInfo.d.ts +9 -4
  248. package/dist/cjs/utils/getAddressInfo.js +92 -127
  249. package/dist/cjs/utils/getAddressInfo.js.map +1 -1
  250. package/dist/cjs/utils/idCache.d.ts +8 -4
  251. package/dist/cjs/utils/idCache.js +15 -13
  252. package/dist/cjs/utils/idCache.js.map +1 -1
  253. package/dist/cjs/utils/isAddress.d.ts +7 -2
  254. package/dist/cjs/utils/isAddress.js +12 -14
  255. package/dist/cjs/utils/isAddress.js.map +1 -1
  256. package/dist/cjs/utils/lru.d.ts +14 -5
  257. package/dist/cjs/utils/lru.js +31 -27
  258. package/dist/cjs/utils/lru.js.map +1 -1
  259. package/dist/cjs/utils/modifyFee.d.ts +7 -2
  260. package/dist/cjs/utils/modifyFee.js +38 -47
  261. package/dist/cjs/utils/modifyFee.js.map +1 -1
  262. package/dist/cjs/utils/observe.d.ts +18 -7
  263. package/dist/cjs/utils/observe.js +42 -44
  264. package/dist/cjs/utils/observe.js.map +1 -1
  265. package/dist/cjs/utils/parseAccount.d.ts +10 -5
  266. package/dist/cjs/utils/parseAccount.js +10 -7
  267. package/dist/cjs/utils/parseAccount.js.map +1 -1
  268. package/dist/cjs/utils/poll.d.ts +19 -7
  269. package/dist/cjs/utils/poll.js +27 -27
  270. package/dist/cjs/utils/poll.js.map +1 -1
  271. package/dist/cjs/utils/retryUntil.d.ts +22 -3
  272. package/dist/cjs/utils/retryUntil.js +34 -22
  273. package/dist/cjs/utils/retryUntil.js.map +1 -1
  274. package/dist/cjs/utils/sleep.d.ts +5 -1
  275. package/dist/cjs/utils/sleep.js +8 -6
  276. package/dist/cjs/utils/sleep.js.map +1 -1
  277. package/dist/cjs/utils/stringify.d.ts +8 -3
  278. package/dist/cjs/utils/stringify.js +6 -5
  279. package/dist/cjs/utils/stringify.js.map +1 -1
  280. package/dist/cjs/utils/uid.d.ts +5 -1
  281. package/dist/cjs/utils/uid.js +11 -11
  282. package/dist/cjs/utils/uid.js.map +1 -1
  283. package/dist/cjs/utils/url.d.ts +5 -1
  284. package/dist/cjs/utils/url.js +9 -10
  285. package/dist/cjs/utils/url.js.map +1 -1
  286. package/dist/cjs/utils/wait.d.ts +5 -1
  287. package/dist/cjs/utils/wait.js +6 -4
  288. package/dist/cjs/utils/wait.js.map +1 -1
  289. package/dist/cjs/utils/withDedupe.d.ts +15 -6
  290. package/dist/cjs/utils/withDedupe.js +14 -15
  291. package/dist/cjs/utils/withDedupe.js.map +1 -1
  292. package/dist/cjs/utils/withResolvers.d.ts +11 -5
  293. package/dist/cjs/utils/withResolvers.js +16 -10
  294. package/dist/cjs/utils/withResolvers.js.map +1 -1
  295. package/dist/cjs/utils/withRetry.d.ts +25 -13
  296. package/dist/cjs/utils/withRetry.js +29 -28
  297. package/dist/cjs/utils/withRetry.js.map +1 -1
  298. package/dist/cjs/utils/withTimeout.d.ts +19 -8
  299. package/dist/cjs/utils/withTimeout.js +24 -33
  300. package/dist/cjs/utils/withTimeout.js.map +1 -1
  301. package/dist/cjs/version.d.ts +6 -2
  302. package/dist/cjs/version.js +8 -5
  303. package/dist/cjs/version.js.map +1 -1
  304. package/dist/cjs/vite-env.d.js +0 -0
  305. package/dist/cjs/vite-env.d.ts +1 -0
  306. package/dist/esm/actions/getBalance.d.ts +14 -10
  307. package/dist/esm/actions/getBalance.d.ts.map +1 -0
  308. package/dist/esm/actions/getBalance.js +9 -6
  309. package/dist/esm/actions/getBalance.js.map +1 -1
  310. package/dist/esm/actions/getBlock.d.ts +21 -13
  311. package/dist/esm/actions/getBlock.d.ts.map +1 -0
  312. package/dist/esm/actions/getBlock.js +29 -26
  313. package/dist/esm/actions/getBlock.js.map +1 -1
  314. package/dist/esm/actions/getBlockCount.d.ts +12 -7
  315. package/dist/esm/actions/getBlockCount.d.ts.map +1 -0
  316. package/dist/esm/actions/getBlockCount.js +9 -6
  317. package/dist/esm/actions/getBlockCount.js.map +1 -1
  318. package/dist/esm/actions/getBlockStats.d.ts +23 -14
  319. package/dist/esm/actions/getBlockStats.d.ts.map +1 -0
  320. package/dist/esm/actions/getBlockStats.js +24 -22
  321. package/dist/esm/actions/getBlockStats.js.map +1 -1
  322. package/dist/esm/actions/getTransactionFee.d.ts +16 -9
  323. package/dist/esm/actions/getTransactionFee.d.ts.map +1 -0
  324. package/dist/esm/actions/getTransactionFee.js +9 -6
  325. package/dist/esm/actions/getTransactionFee.js.map +1 -1
  326. package/dist/esm/actions/getTransactions.d.ts +27 -17
  327. package/dist/esm/actions/getTransactions.d.ts.map +1 -0
  328. package/dist/esm/actions/getTransactions.js +14 -11
  329. package/dist/esm/actions/getTransactions.js.map +1 -1
  330. package/dist/esm/actions/getUTXOTransaction.d.ts +19 -13
  331. package/dist/esm/actions/getUTXOTransaction.d.ts.map +1 -0
  332. package/dist/esm/actions/getUTXOTransaction.js +19 -19
  333. package/dist/esm/actions/getUTXOTransaction.js.map +1 -1
  334. package/dist/esm/actions/getUTXOs.d.ts +19 -11
  335. package/dist/esm/actions/getUTXOs.d.ts.map +1 -0
  336. package/dist/esm/actions/getUTXOs.js +12 -9
  337. package/dist/esm/actions/getUTXOs.js.map +1 -1
  338. package/dist/esm/actions/getXPubAddresses.d.ts +35 -31
  339. package/dist/esm/actions/getXPubAddresses.d.ts.map +1 -0
  340. package/dist/esm/actions/getXPubAddresses.js +29 -26
  341. package/dist/esm/actions/getXPubAddresses.js.map +1 -1
  342. package/dist/esm/actions/sendUTXOTransaction.d.ts +18 -12
  343. package/dist/esm/actions/sendUTXOTransaction.d.ts.map +1 -0
  344. package/dist/esm/actions/sendUTXOTransaction.js +11 -10
  345. package/dist/esm/actions/sendUTXOTransaction.js.map +1 -1
  346. package/dist/esm/actions/signPsbt.d.ts +11 -6
  347. package/dist/esm/actions/signPsbt.d.ts.map +1 -0
  348. package/dist/esm/actions/signPsbt.js +9 -6
  349. package/dist/esm/actions/signPsbt.js.map +1 -1
  350. package/dist/esm/actions/waitForTransaction.d.ts +83 -73
  351. package/dist/esm/actions/waitForTransaction.d.ts.map +1 -0
  352. package/dist/esm/actions/waitForTransaction.js +153 -229
  353. package/dist/esm/actions/waitForTransaction.js.map +1 -1
  354. package/dist/esm/actions/watchBlockNumber.d.ts +30 -24
  355. package/dist/esm/actions/watchBlockNumber.d.ts.map +1 -0
  356. package/dist/esm/actions/watchBlockNumber.js +46 -55
  357. package/dist/esm/actions/watchBlockNumber.js.map +1 -1
  358. package/dist/esm/chains/bitcoin.d.ts +7 -24
  359. package/dist/esm/chains/bitcoin.d.ts.map +1 -0
  360. package/dist/esm/chains/bitcoin.js +19 -17
  361. package/dist/esm/chains/bitcoin.js.map +1 -1
  362. package/dist/esm/chains/defineChain.d.ts +8 -3
  363. package/dist/esm/chains/defineChain.d.ts.map +1 -0
  364. package/dist/esm/chains/defineChain.js +11 -7
  365. package/dist/esm/chains/defineChain.js.map +1 -1
  366. package/dist/esm/chains/signet.d.ts +7 -24
  367. package/dist/esm/chains/signet.d.ts.map +1 -0
  368. package/dist/esm/chains/signet.js +20 -20
  369. package/dist/esm/chains/signet.js.map +1 -1
  370. package/dist/esm/clients/decorators/public.d.ts +28 -23
  371. package/dist/esm/clients/decorators/public.d.ts.map +1 -0
  372. package/dist/esm/clients/decorators/public.js +23 -19
  373. package/dist/esm/clients/decorators/public.js.map +1 -1
  374. package/dist/esm/clients/decorators/wallet.d.ts +18 -13
  375. package/dist/esm/clients/decorators/wallet.d.ts.map +1 -0
  376. package/dist/esm/clients/decorators/wallet.js +11 -7
  377. package/dist/esm/clients/decorators/wallet.js.map +1 -1
  378. package/dist/esm/errors/address.d.ts +14 -7
  379. package/dist/esm/errors/address.d.ts.map +1 -0
  380. package/dist/esm/errors/address.js +13 -12
  381. package/dist/esm/errors/address.js.map +1 -1
  382. package/dist/esm/errors/base.d.ts +24 -21
  383. package/dist/esm/errors/base.d.ts.map +1 -0
  384. package/dist/esm/errors/base.js +37 -46
  385. package/dist/esm/errors/base.js.map +1 -1
  386. package/dist/esm/errors/block.d.ts +17 -9
  387. package/dist/esm/errors/block.d.ts.map +1 -0
  388. package/dist/esm/errors/block.js +13 -13
  389. package/dist/esm/errors/block.js.map +1 -1
  390. package/dist/esm/errors/provider.d.ts +8 -3
  391. package/dist/esm/errors/provider.d.ts.map +1 -0
  392. package/dist/esm/errors/provider.js +11 -10
  393. package/dist/esm/errors/provider.js.map +1 -1
  394. package/dist/esm/errors/request.d.ts +92 -65
  395. package/dist/esm/errors/request.d.ts.map +1 -0
  396. package/dist/esm/errors/request.js +64 -63
  397. package/dist/esm/errors/request.js.map +1 -1
  398. package/dist/esm/errors/rpc.d.ts +57 -52
  399. package/dist/esm/errors/rpc.d.ts.map +1 -0
  400. package/dist/esm/errors/rpc.js +71 -75
  401. package/dist/esm/errors/rpc.js.map +1 -1
  402. package/dist/esm/errors/transaction.d.ts +40 -25
  403. package/dist/esm/errors/transaction.d.ts.map +1 -0
  404. package/dist/esm/errors/transaction.js +25 -33
  405. package/dist/esm/errors/transaction.js.map +1 -1
  406. package/dist/esm/errors/transport.d.ts +39 -27
  407. package/dist/esm/errors/transport.d.ts.map +1 -0
  408. package/dist/esm/errors/transport.js +32 -34
  409. package/dist/esm/errors/transport.js.map +1 -1
  410. package/dist/esm/errors/utils.d.ts +10 -5
  411. package/dist/esm/errors/utils.d.ts.map +1 -0
  412. package/dist/esm/errors/utils.js +6 -2
  413. package/dist/esm/errors/utils.js.map +1 -1
  414. package/dist/esm/errors/utxo.d.ts +18 -9
  415. package/dist/esm/errors/utxo.d.ts.map +1 -0
  416. package/dist/esm/errors/utxo.js +13 -11
  417. package/dist/esm/errors/utxo.js.map +1 -1
  418. package/dist/esm/factories/createClient.d.ts +60 -78
  419. package/dist/esm/factories/createClient.d.ts.map +1 -0
  420. package/dist/esm/factories/createClient.js +46 -41
  421. package/dist/esm/factories/createClient.js.map +1 -1
  422. package/dist/esm/factories/createTransport.d.ts +18 -4
  423. package/dist/esm/factories/createTransport.d.ts.map +1 -0
  424. package/dist/esm/factories/createTransport.js +29 -20
  425. package/dist/esm/factories/createTransport.js.map +1 -1
  426. package/dist/esm/index.d.ts +71 -83
  427. package/dist/esm/index.js +58 -58
  428. package/dist/esm/package.json +1 -1
  429. package/dist/esm/test/utils.d.ts +5 -1
  430. package/dist/esm/test/utils.d.ts.map +1 -0
  431. package/dist/esm/test/utils.js +9 -7
  432. package/dist/esm/test/utils.js.map +1 -1
  433. package/dist/esm/transports/__mocks__/getTransactionFee.d.ts +7 -3
  434. package/dist/esm/transports/__mocks__/getTransactionFee.d.ts.map +1 -0
  435. package/dist/esm/transports/__mocks__/getTransactionFee.js +7 -3
  436. package/dist/esm/transports/__mocks__/getTransactionFee.js.map +1 -1
  437. package/dist/esm/transports/ankr/ankr.d.ts +9 -5
  438. package/dist/esm/transports/ankr/ankr.d.ts.map +1 -0
  439. package/dist/esm/transports/ankr/ankr.js +20 -18
  440. package/dist/esm/transports/ankr/ankr.js.map +1 -1
  441. package/dist/esm/transports/ankr/ankr.types.d.ts +75 -71
  442. package/dist/esm/transports/ankr/ankr.types.d.ts.map +1 -0
  443. package/dist/esm/transports/ankr/ankr.types.js +0 -1
  444. package/dist/esm/transports/ankr/getBalance.d.ts +7 -2
  445. package/dist/esm/transports/ankr/getBalance.d.ts.map +1 -0
  446. package/dist/esm/transports/ankr/getBalance.js +16 -17
  447. package/dist/esm/transports/ankr/getBalance.js.map +1 -1
  448. package/dist/esm/transports/ankr/getTransactionFee.d.ts +7 -2
  449. package/dist/esm/transports/ankr/getTransactionFee.d.ts.map +1 -0
  450. package/dist/esm/transports/ankr/getTransactionFee.js +12 -12
  451. package/dist/esm/transports/ankr/getTransactionFee.js.map +1 -1
  452. package/dist/esm/transports/ankr/getTransactions.d.ts +7 -2
  453. package/dist/esm/transports/ankr/getTransactions.d.ts.map +1 -0
  454. package/dist/esm/transports/ankr/getTransactions.js +27 -26
  455. package/dist/esm/transports/ankr/getTransactions.js.map +1 -1
  456. package/dist/esm/transports/ankr/methods.d.ts +7 -2
  457. package/dist/esm/transports/ankr/methods.d.ts.map +1 -0
  458. package/dist/esm/transports/ankr/methods.js +11 -7
  459. package/dist/esm/transports/ankr/methods.js.map +1 -1
  460. package/dist/esm/transports/ankr/utils.d.ts +8 -3
  461. package/dist/esm/transports/ankr/utils.d.ts.map +1 -0
  462. package/dist/esm/transports/ankr/utils.js +27 -23
  463. package/dist/esm/transports/ankr/utils.js.map +1 -1
  464. package/dist/esm/transports/blockchair/blockchair.d.ts +9 -5
  465. package/dist/esm/transports/blockchair/blockchair.d.ts.map +1 -0
  466. package/dist/esm/transports/blockchair/blockchair.js +12 -10
  467. package/dist/esm/transports/blockchair/blockchair.js.map +1 -1
  468. package/dist/esm/transports/blockchair/blockchair.types.d.ts +128 -124
  469. package/dist/esm/transports/blockchair/blockchair.types.d.ts.map +1 -0
  470. package/dist/esm/transports/blockchair/blockchair.types.js +0 -1
  471. package/dist/esm/transports/blockchair/getBalance.d.ts +7 -2
  472. package/dist/esm/transports/blockchair/getBalance.d.ts.map +1 -0
  473. package/dist/esm/transports/blockchair/getBalance.js +20 -26
  474. package/dist/esm/transports/blockchair/getBalance.js.map +1 -1
  475. package/dist/esm/transports/blockchair/getTransactionFee.d.ts +7 -2
  476. package/dist/esm/transports/blockchair/getTransactionFee.d.ts.map +1 -0
  477. package/dist/esm/transports/blockchair/getTransactionFee.js +17 -27
  478. package/dist/esm/transports/blockchair/getTransactionFee.js.map +1 -1
  479. package/dist/esm/transports/blockchair/getUTXOs.d.ts +7 -2
  480. package/dist/esm/transports/blockchair/getUTXOs.d.ts.map +1 -0
  481. package/dist/esm/transports/blockchair/getUTXOs.js +86 -98
  482. package/dist/esm/transports/blockchair/getUTXOs.js.map +1 -1
  483. package/dist/esm/transports/blockchair/getXPubAddresses.d.ts +7 -2
  484. package/dist/esm/transports/blockchair/getXPubAddresses.d.ts.map +1 -0
  485. package/dist/esm/transports/blockchair/getXPubAddresses.js +30 -41
  486. package/dist/esm/transports/blockchair/getXPubAddresses.js.map +1 -1
  487. package/dist/esm/transports/blockchair/methods.d.ts +7 -2
  488. package/dist/esm/transports/blockchair/methods.d.ts.map +1 -0
  489. package/dist/esm/transports/blockchair/methods.js +13 -9
  490. package/dist/esm/transports/blockchair/methods.js.map +1 -1
  491. package/dist/esm/transports/blockcypher/blockcypher.d.ts +9 -5
  492. package/dist/esm/transports/blockcypher/blockcypher.d.ts.map +1 -0
  493. package/dist/esm/transports/blockcypher/blockcypher.js +11 -9
  494. package/dist/esm/transports/blockcypher/blockcypher.js.map +1 -1
  495. package/dist/esm/transports/blockcypher/blockcypher.types.d.ts +69 -65
  496. package/dist/esm/transports/blockcypher/blockcypher.types.d.ts.map +1 -0
  497. package/dist/esm/transports/blockcypher/blockcypher.types.js +0 -1
  498. package/dist/esm/transports/blockcypher/getBalance.d.ts +7 -2
  499. package/dist/esm/transports/blockcypher/getBalance.d.ts.map +1 -0
  500. package/dist/esm/transports/blockcypher/getBalance.js +17 -21
  501. package/dist/esm/transports/blockcypher/getBalance.js.map +1 -1
  502. package/dist/esm/transports/blockcypher/getTransactionFee.d.ts +7 -2
  503. package/dist/esm/transports/blockcypher/getTransactionFee.d.ts.map +1 -0
  504. package/dist/esm/transports/blockcypher/getTransactionFee.js +17 -18
  505. package/dist/esm/transports/blockcypher/getTransactionFee.js.map +1 -1
  506. package/dist/esm/transports/blockcypher/getUTXOs.d.ts +7 -2
  507. package/dist/esm/transports/blockcypher/getUTXOs.d.ts.map +1 -0
  508. package/dist/esm/transports/blockcypher/getUTXOs.js +72 -74
  509. package/dist/esm/transports/blockcypher/getUTXOs.js.map +1 -1
  510. package/dist/esm/transports/blockcypher/methods.d.ts +7 -2
  511. package/dist/esm/transports/blockcypher/methods.d.ts.map +1 -0
  512. package/dist/esm/transports/blockcypher/methods.js +11 -7
  513. package/dist/esm/transports/blockcypher/methods.js.map +1 -1
  514. package/dist/esm/transports/blockcypher/utils.d.ts +7 -2
  515. package/dist/esm/transports/blockcypher/utils.d.ts.map +1 -0
  516. package/dist/esm/transports/blockcypher/utils.js +8 -6
  517. package/dist/esm/transports/blockcypher/utils.js.map +1 -1
  518. package/dist/esm/transports/custom.d.ts +19 -20
  519. package/dist/esm/transports/custom.d.ts.map +1 -0
  520. package/dist/esm/transports/custom.js +18 -14
  521. package/dist/esm/transports/custom.js.map +1 -1
  522. package/dist/esm/transports/fallback.d.ts +83 -78
  523. package/dist/esm/transports/fallback.d.ts.map +1 -0
  524. package/dist/esm/transports/fallback.js +158 -190
  525. package/dist/esm/transports/fallback.js.map +1 -1
  526. package/dist/esm/transports/getHttpRpcClient.d.ts +30 -34
  527. package/dist/esm/transports/getHttpRpcClient.d.ts.map +1 -0
  528. package/dist/esm/transports/getHttpRpcClient.js +74 -92
  529. package/dist/esm/transports/getHttpRpcClient.js.map +1 -1
  530. package/dist/esm/transports/getRpcProviderMethods.d.ts +8 -4
  531. package/dist/esm/transports/getRpcProviderMethods.d.ts.map +1 -0
  532. package/dist/esm/transports/getRpcProviderMethods.js +16 -17
  533. package/dist/esm/transports/getRpcProviderMethods.js.map +1 -1
  534. package/dist/esm/transports/http.d.ts +41 -50
  535. package/dist/esm/transports/http.d.ts.map +1 -0
  536. package/dist/esm/transports/http.js +69 -78
  537. package/dist/esm/transports/http.js.map +1 -1
  538. package/dist/esm/transports/mempool/getBalance.d.ts +7 -2
  539. package/dist/esm/transports/mempool/getBalance.d.ts.map +1 -0
  540. package/dist/esm/transports/mempool/getBalance.js +12 -10
  541. package/dist/esm/transports/mempool/getBalance.js.map +1 -1
  542. package/dist/esm/transports/mempool/getTransactionFee.d.ts +7 -2
  543. package/dist/esm/transports/mempool/getTransactionFee.d.ts.map +1 -0
  544. package/dist/esm/transports/mempool/getTransactionFee.js +11 -9
  545. package/dist/esm/transports/mempool/getTransactionFee.js.map +1 -1
  546. package/dist/esm/transports/mempool/getTransactions.d.ts +7 -2
  547. package/dist/esm/transports/mempool/getTransactions.d.ts.map +1 -0
  548. package/dist/esm/transports/mempool/getTransactions.js +24 -27
  549. package/dist/esm/transports/mempool/getTransactions.js.map +1 -1
  550. package/dist/esm/transports/mempool/mempool.d.ts +8 -4
  551. package/dist/esm/transports/mempool/mempool.d.ts.map +1 -0
  552. package/dist/esm/transports/mempool/mempool.js +11 -9
  553. package/dist/esm/transports/mempool/mempool.js.map +1 -1
  554. package/dist/esm/transports/mempool/mempool.types.d.ts +62 -58
  555. package/dist/esm/transports/mempool/mempool.types.d.ts.map +1 -0
  556. package/dist/esm/transports/mempool/mempool.types.js +0 -1
  557. package/dist/esm/transports/mempool/methods.d.ts +7 -2
  558. package/dist/esm/transports/mempool/methods.d.ts.map +1 -0
  559. package/dist/esm/transports/mempool/methods.js +11 -7
  560. package/dist/esm/transports/mempool/methods.js.map +1 -1
  561. package/dist/esm/transports/mempool/utils.d.ts +8 -3
  562. package/dist/esm/transports/mempool/utils.d.ts.map +1 -0
  563. package/dist/esm/transports/mempool/utils.js +28 -24
  564. package/dist/esm/transports/mempool/utils.js.map +1 -1
  565. package/dist/esm/transports/types.d.ts +119 -135
  566. package/dist/esm/transports/types.d.ts.map +1 -0
  567. package/dist/esm/transports/types.js +10 -6
  568. package/dist/esm/transports/types.js.map +1 -1
  569. package/dist/esm/transports/utxo.d.ts +9 -5
  570. package/dist/esm/transports/utxo.d.ts.map +1 -0
  571. package/dist/esm/transports/utxo.js +60 -60
  572. package/dist/esm/transports/utxo.js.map +1 -1
  573. package/dist/esm/types/account.d.ts +11 -6
  574. package/dist/esm/types/account.d.ts.map +1 -0
  575. package/dist/esm/types/account.js +0 -1
  576. package/dist/esm/types/address.d.ts +20 -15
  577. package/dist/esm/types/address.d.ts.map +1 -0
  578. package/dist/esm/types/address.js +12 -8
  579. package/dist/esm/types/address.js.map +1 -1
  580. package/dist/esm/types/block.d.ts +22 -18
  581. package/dist/esm/types/block.d.ts.map +1 -0
  582. package/dist/esm/types/block.js +0 -1
  583. package/dist/esm/types/blockStats.d.ts +37 -33
  584. package/dist/esm/types/blockStats.d.ts.map +1 -0
  585. package/dist/esm/types/blockStats.js +0 -1
  586. package/dist/esm/types/chain.d.ts +45 -53
  587. package/dist/esm/types/chain.d.ts.map +1 -0
  588. package/dist/esm/types/chain.js +21 -17
  589. package/dist/esm/types/chain.js.map +1 -1
  590. package/dist/esm/types/client.d.ts +49 -63
  591. package/dist/esm/types/client.d.ts.map +1 -0
  592. package/dist/esm/types/client.js +0 -1
  593. package/dist/esm/types/hash.d.ts +5 -1
  594. package/dist/esm/types/hash.d.ts.map +1 -0
  595. package/dist/esm/types/hash.js +0 -1
  596. package/dist/esm/types/request.d.ts +39 -42
  597. package/dist/esm/types/request.d.ts.map +1 -0
  598. package/dist/esm/types/request.js +0 -1
  599. package/dist/esm/types/rpc.d.ts +28 -28
  600. package/dist/esm/types/rpc.d.ts.map +1 -0
  601. package/dist/esm/types/rpc.js +0 -1
  602. package/dist/esm/types/transaction.d.ts +49 -45
  603. package/dist/esm/types/transaction.d.ts.map +1 -0
  604. package/dist/esm/types/transaction.js +0 -1
  605. package/dist/esm/types/transport.d.ts +34 -35
  606. package/dist/esm/types/transport.d.ts.map +1 -0
  607. package/dist/esm/types/transport.js +0 -1
  608. package/dist/esm/types/utils.d.ts +47 -58
  609. package/dist/esm/types/utils.d.ts.map +1 -0
  610. package/dist/esm/types/utils.js +0 -1
  611. package/dist/esm/types/xpub.d.ts +13 -8
  612. package/dist/esm/types/xpub.d.ts.map +1 -0
  613. package/dist/esm/types/xpub.js +0 -1
  614. package/dist/esm/utils/buildRequest.d.ts +10 -5
  615. package/dist/esm/utils/buildRequest.d.ts.map +1 -0
  616. package/dist/esm/utils/buildRequest.js +67 -107
  617. package/dist/esm/utils/buildRequest.js.map +1 -1
  618. package/dist/esm/utils/cancelTransaction.d.ts +7 -2
  619. package/dist/esm/utils/cancelTransaction.d.ts.map +1 -0
  620. package/dist/esm/utils/cancelTransaction.js +36 -53
  621. package/dist/esm/utils/cancelTransaction.js.map +1 -1
  622. package/dist/esm/utils/converter.d.ts +9 -5
  623. package/dist/esm/utils/converter.d.ts.map +1 -0
  624. package/dist/esm/utils/converter.js +22 -28
  625. package/dist/esm/utils/converter.js.map +1 -1
  626. package/dist/esm/utils/createBatchScheduler.d.ts +22 -15
  627. package/dist/esm/utils/createBatchScheduler.d.ts.map +1 -0
  628. package/dist/esm/utils/createBatchScheduler.js +51 -49
  629. package/dist/esm/utils/createBatchScheduler.js.map +1 -1
  630. package/dist/esm/utils/deepEqual.d.ts +5 -1
  631. package/dist/esm/utils/deepEqual.d.ts.map +1 -0
  632. package/dist/esm/utils/deepEqual.js +29 -49
  633. package/dist/esm/utils/deepEqual.js.map +1 -1
  634. package/dist/esm/utils/getAction.d.ts +20 -15
  635. package/dist/esm/utils/getAction.d.ts.map +1 -0
  636. package/dist/esm/utils/getAction.js +16 -20
  637. package/dist/esm/utils/getAction.js.map +1 -1
  638. package/dist/esm/utils/getAddressInfo.d.ts +9 -4
  639. package/dist/esm/utils/getAddressInfo.d.ts.map +1 -0
  640. package/dist/esm/utils/getAddressInfo.js +91 -125
  641. package/dist/esm/utils/getAddressInfo.js.map +1 -1
  642. package/dist/esm/utils/idCache.d.ts +8 -4
  643. package/dist/esm/utils/idCache.d.ts.map +1 -0
  644. package/dist/esm/utils/idCache.js +14 -10
  645. package/dist/esm/utils/idCache.js.map +1 -1
  646. package/dist/esm/utils/isAddress.d.ts +7 -2
  647. package/dist/esm/utils/isAddress.d.ts.map +1 -0
  648. package/dist/esm/utils/isAddress.js +13 -12
  649. package/dist/esm/utils/isAddress.js.map +1 -1
  650. package/dist/esm/utils/lru.d.ts +13 -9
  651. package/dist/esm/utils/lru.d.ts.map +1 -0
  652. package/dist/esm/utils/lru.js +30 -28
  653. package/dist/esm/utils/lru.js.map +1 -1
  654. package/dist/esm/utils/modifyFee.d.ts +7 -2
  655. package/dist/esm/utils/modifyFee.d.ts.map +1 -0
  656. package/dist/esm/utils/modifyFee.js +37 -51
  657. package/dist/esm/utils/modifyFee.js.map +1 -1
  658. package/dist/esm/utils/observe.d.ts +15 -11
  659. package/dist/esm/utils/observe.d.ts.map +1 -0
  660. package/dist/esm/utils/observe.js +37 -45
  661. package/dist/esm/utils/observe.js.map +1 -1
  662. package/dist/esm/utils/parseAccount.d.ts +10 -5
  663. package/dist/esm/utils/parseAccount.d.ts.map +1 -0
  664. package/dist/esm/utils/parseAccount.js +10 -5
  665. package/dist/esm/utils/parseAccount.js.map +1 -1
  666. package/dist/esm/utils/poll.d.ts +18 -9
  667. package/dist/esm/utils/poll.d.ts.map +1 -0
  668. package/dist/esm/utils/poll.js +26 -27
  669. package/dist/esm/utils/poll.js.map +1 -1
  670. package/dist/esm/utils/retryUntil.d.ts +21 -19
  671. package/dist/esm/utils/retryUntil.d.ts.map +1 -0
  672. package/dist/esm/utils/retryUntil.js +33 -36
  673. package/dist/esm/utils/retryUntil.js.map +1 -1
  674. package/dist/esm/utils/sleep.d.ts +5 -1
  675. package/dist/esm/utils/sleep.d.ts.map +1 -0
  676. package/dist/esm/utils/sleep.js +8 -4
  677. package/dist/esm/utils/sleep.js.map +1 -1
  678. package/dist/esm/utils/stringify.d.ts +8 -3
  679. package/dist/esm/utils/stringify.d.ts.map +1 -0
  680. package/dist/esm/utils/stringify.js +7 -3
  681. package/dist/esm/utils/stringify.js.map +1 -1
  682. package/dist/esm/utils/uid.d.ts +5 -1
  683. package/dist/esm/utils/uid.d.ts.map +1 -0
  684. package/dist/esm/utils/uid.js +11 -9
  685. package/dist/esm/utils/uid.js.map +1 -1
  686. package/dist/esm/utils/url.d.ts +5 -1
  687. package/dist/esm/utils/url.d.ts.map +1 -0
  688. package/dist/esm/utils/url.js +10 -8
  689. package/dist/esm/utils/url.js.map +1 -1
  690. package/dist/esm/utils/wait.d.ts +5 -1
  691. package/dist/esm/utils/wait.d.ts.map +1 -0
  692. package/dist/esm/utils/wait.js +6 -2
  693. package/dist/esm/utils/wait.js.map +1 -1
  694. package/dist/esm/utils/withDedupe.d.ts +13 -6
  695. package/dist/esm/utils/withDedupe.d.ts.map +1 -0
  696. package/dist/esm/utils/withDedupe.js +12 -12
  697. package/dist/esm/utils/withDedupe.js.map +1 -1
  698. package/dist/esm/utils/withResolvers.d.ts +9 -5
  699. package/dist/esm/utils/withResolvers.d.ts.map +1 -0
  700. package/dist/esm/utils/withResolvers.js +15 -8
  701. package/dist/esm/utils/withResolvers.js.map +1 -1
  702. package/dist/esm/utils/withRetry.d.ts +25 -13
  703. package/dist/esm/utils/withRetry.d.ts.map +1 -0
  704. package/dist/esm/utils/withRetry.js +28 -25
  705. package/dist/esm/utils/withRetry.js.map +1 -1
  706. package/dist/esm/utils/withTimeout.d.ts +19 -8
  707. package/dist/esm/utils/withTimeout.d.ts.map +1 -0
  708. package/dist/esm/utils/withTimeout.js +23 -30
  709. package/dist/esm/utils/withTimeout.js.map +1 -1
  710. package/dist/esm/version.d.ts +6 -2
  711. package/dist/esm/version.d.ts.map +1 -0
  712. package/dist/esm/version.js +6 -2
  713. package/dist/esm/version.js.map +1 -1
  714. package/dist/esm/vite-env.d.ts +1 -0
  715. package/package.json +2 -2
  716. package/src/chains/bitcoin.ts +2 -1
  717. package/src/chains/signet.ts +2 -1
  718. package/src/errors/base.ts +2 -2
  719. package/src/errors/rpc.ts +3 -3
  720. package/src/errors/utils.ts +2 -2
  721. package/src/transports/ankr/ankr.ts +2 -2
  722. package/src/transports/blockchair/blockchair.ts +2 -2
  723. package/src/transports/blockcypher/blockcypher.ts +2 -2
  724. package/src/transports/fallback.ts +2 -2
  725. package/src/transports/mempool/mempool.ts +2 -2
  726. package/src/utils/buildRequest.ts +1 -1
  727. package/src/utils/deepEqual.ts +1 -1
  728. package/src/utils/idCache.ts +2 -1
  729. package/src/utils/lru.ts +2 -2
  730. package/src/utils/modifyFee.ts +5 -1
  731. package/src/utils/observe.ts +4 -6
  732. package/src/utils/poll.ts +1 -1
  733. package/src/utils/uid.ts +1 -1
  734. package/src/utils/url.ts +1 -1
  735. package/src/utils/wait.ts +1 -1
  736. package/src/utils/withDedupe.ts +1 -1
  737. package/src/utils/withRetry.ts +1 -1
  738. package/src/version.ts +1 -1
  739. package/dist/cjs/index.js.map +0 -1
  740. package/dist/cjs/transports/ankr/__mocks__/getBalance/valid.json +0 -9
  741. package/dist/cjs/transports/ankr/__mocks__/getTransactionFee/invalid.json +0 -3
  742. package/dist/cjs/transports/ankr/__mocks__/getTransactionFee/valid.json +0 -51
  743. package/dist/cjs/transports/ankr/__mocks__/getTransactions/valid.json +0 -1186
  744. package/dist/cjs/transports/ankr/ankr.types.js.map +0 -1
  745. package/dist/cjs/transports/blockchair/__mocks__/getBalance/invalidAddress.json +0 -29
  746. package/dist/cjs/transports/blockchair/__mocks__/getBalance/valid.json +0 -29
  747. package/dist/cjs/transports/blockchair/__mocks__/getBalance/zeroBalance.json +0 -29
  748. package/dist/cjs/transports/blockchair/__mocks__/getTransactionFee/invalid.json +0 -7
  749. package/dist/cjs/transports/blockchair/__mocks__/getTransactionFee/valid.json +0 -37
  750. package/dist/cjs/transports/blockchair/__mocks__/getUTXOs/invalidAddress.json +0 -28
  751. package/dist/cjs/transports/blockchair/__mocks__/getUTXOs/rateLimited.json +0 -28
  752. package/dist/cjs/transports/blockchair/__mocks__/getUTXOs/valid.json +0 -95
  753. package/dist/cjs/transports/blockchair/__mocks__/getUTXOs/validPaginated.json +0 -869
  754. package/dist/cjs/transports/blockchair/__mocks__/getXPubAddresses/valid.json +0 -76
  755. package/dist/cjs/transports/blockchair/blockchair.types.js.map +0 -1
  756. package/dist/cjs/transports/blockcypher/__mocks__/getBalance/invalid.json +0 -3
  757. package/dist/cjs/transports/blockcypher/__mocks__/getBalance/valid.json +0 -13
  758. package/dist/cjs/transports/blockcypher/__mocks__/getTransactionFee/invalid.json +0 -3
  759. package/dist/cjs/transports/blockcypher/__mocks__/getTransactionFee/valid.json +0 -22
  760. package/dist/cjs/transports/blockcypher/__mocks__/getUTXOs/empty.json +0 -12
  761. package/dist/cjs/transports/blockcypher/__mocks__/getUTXOs/paginated.json +0 -2786
  762. package/dist/cjs/transports/blockcypher/__mocks__/getUTXOs/rateLimited.json +0 -3
  763. package/dist/cjs/transports/blockcypher/__mocks__/getUTXOs/valid.json +0 -27
  764. package/dist/cjs/transports/blockcypher/blockcypher.types.js.map +0 -1
  765. package/dist/cjs/transports/mempool/__mocks__/getBalance/invalid.json +0 -1
  766. package/dist/cjs/transports/mempool/__mocks__/getBalance/valid.json +0 -17
  767. package/dist/cjs/transports/mempool/__mocks__/getTransactionFee/invalid.json +0 -1
  768. package/dist/cjs/transports/mempool/__mocks__/getTransactionFee/valid.json +0 -58
  769. package/dist/cjs/transports/mempool/__mocks__/getTransactions/valid.json +0 -1268
  770. package/dist/cjs/transports/mempool/mempool.types.js.map +0 -1
  771. package/dist/cjs/types/account.js.map +0 -1
  772. package/dist/cjs/types/block.js.map +0 -1
  773. package/dist/cjs/types/blockStats.js.map +0 -1
  774. package/dist/cjs/types/client.js.map +0 -1
  775. package/dist/cjs/types/hash.js.map +0 -1
  776. package/dist/cjs/types/request.js.map +0 -1
  777. package/dist/cjs/types/rpc.js.map +0 -1
  778. package/dist/cjs/types/transaction.js.map +0 -1
  779. package/dist/cjs/types/transport.js.map +0 -1
  780. package/dist/cjs/types/utils.js.map +0 -1
  781. package/dist/cjs/types/xpub.js.map +0 -1
  782. package/dist/esm/index.js.map +0 -1
  783. package/dist/esm/transports/ankr/__mocks__/getBalance/valid.json +0 -9
  784. package/dist/esm/transports/ankr/__mocks__/getTransactionFee/invalid.json +0 -3
  785. package/dist/esm/transports/ankr/__mocks__/getTransactionFee/valid.json +0 -51
  786. package/dist/esm/transports/ankr/__mocks__/getTransactions/valid.json +0 -1186
  787. package/dist/esm/transports/ankr/ankr.types.js.map +0 -1
  788. package/dist/esm/transports/blockchair/__mocks__/getBalance/invalidAddress.json +0 -29
  789. package/dist/esm/transports/blockchair/__mocks__/getBalance/valid.json +0 -29
  790. package/dist/esm/transports/blockchair/__mocks__/getBalance/zeroBalance.json +0 -29
  791. package/dist/esm/transports/blockchair/__mocks__/getTransactionFee/invalid.json +0 -7
  792. package/dist/esm/transports/blockchair/__mocks__/getTransactionFee/valid.json +0 -37
  793. package/dist/esm/transports/blockchair/__mocks__/getUTXOs/invalidAddress.json +0 -28
  794. package/dist/esm/transports/blockchair/__mocks__/getUTXOs/rateLimited.json +0 -28
  795. package/dist/esm/transports/blockchair/__mocks__/getUTXOs/valid.json +0 -95
  796. package/dist/esm/transports/blockchair/__mocks__/getUTXOs/validPaginated.json +0 -869
  797. package/dist/esm/transports/blockchair/__mocks__/getXPubAddresses/valid.json +0 -76
  798. package/dist/esm/transports/blockchair/blockchair.types.js.map +0 -1
  799. package/dist/esm/transports/blockcypher/__mocks__/getBalance/invalid.json +0 -3
  800. package/dist/esm/transports/blockcypher/__mocks__/getBalance/valid.json +0 -13
  801. package/dist/esm/transports/blockcypher/__mocks__/getTransactionFee/invalid.json +0 -3
  802. package/dist/esm/transports/blockcypher/__mocks__/getTransactionFee/valid.json +0 -22
  803. package/dist/esm/transports/blockcypher/__mocks__/getUTXOs/empty.json +0 -12
  804. package/dist/esm/transports/blockcypher/__mocks__/getUTXOs/paginated.json +0 -2786
  805. package/dist/esm/transports/blockcypher/__mocks__/getUTXOs/rateLimited.json +0 -3
  806. package/dist/esm/transports/blockcypher/__mocks__/getUTXOs/valid.json +0 -27
  807. package/dist/esm/transports/blockcypher/blockcypher.types.js.map +0 -1
  808. package/dist/esm/transports/mempool/__mocks__/getBalance/invalid.json +0 -1
  809. package/dist/esm/transports/mempool/__mocks__/getBalance/valid.json +0 -17
  810. package/dist/esm/transports/mempool/__mocks__/getTransactionFee/invalid.json +0 -1
  811. package/dist/esm/transports/mempool/__mocks__/getTransactionFee/valid.json +0 -58
  812. package/dist/esm/transports/mempool/__mocks__/getTransactions/valid.json +0 -1268
  813. package/dist/esm/transports/mempool/mempool.types.js.map +0 -1
  814. package/dist/esm/types/account.js.map +0 -1
  815. package/dist/esm/types/block.js.map +0 -1
  816. package/dist/esm/types/blockStats.js.map +0 -1
  817. package/dist/esm/types/client.js.map +0 -1
  818. package/dist/esm/types/hash.js.map +0 -1
  819. package/dist/esm/types/request.js.map +0 -1
  820. package/dist/esm/types/rpc.js.map +0 -1
  821. package/dist/esm/types/transaction.js.map +0 -1
  822. package/dist/esm/types/transport.js.map +0 -1
  823. package/dist/esm/types/utils.js.map +0 -1
  824. package/dist/esm/types/xpub.js.map +0 -1
  825. package/dist/types/actions/getBalance.d.ts +0 -12
  826. package/dist/types/actions/getBalance.d.ts.map +0 -1
  827. package/dist/types/actions/getBlock.d.ts +0 -16
  828. package/dist/types/actions/getBlock.d.ts.map +0 -1
  829. package/dist/types/actions/getBlockCount.d.ts +0 -8
  830. package/dist/types/actions/getBlockCount.d.ts.map +0 -1
  831. package/dist/types/actions/getBlockStats.d.ts +0 -18
  832. package/dist/types/actions/getBlockStats.d.ts.map +0 -1
  833. package/dist/types/actions/getTransactionFee.d.ts +0 -11
  834. package/dist/types/actions/getTransactionFee.d.ts.map +0 -1
  835. package/dist/types/actions/getTransactions.d.ts +0 -20
  836. package/dist/types/actions/getTransactions.d.ts.map +0 -1
  837. package/dist/types/actions/getUTXOTransaction.d.ts +0 -15
  838. package/dist/types/actions/getUTXOTransaction.d.ts.map +0 -1
  839. package/dist/types/actions/getUTXOs.d.ts +0 -13
  840. package/dist/types/actions/getUTXOs.d.ts.map +0 -1
  841. package/dist/types/actions/getXPubAddresses.d.ts +0 -34
  842. package/dist/types/actions/getXPubAddresses.d.ts.map +0 -1
  843. package/dist/types/actions/sendUTXOTransaction.d.ts +0 -14
  844. package/dist/types/actions/sendUTXOTransaction.d.ts.map +0 -1
  845. package/dist/types/actions/signPsbt.d.ts +0 -7
  846. package/dist/types/actions/signPsbt.d.ts.map +0 -1
  847. package/dist/types/actions/waitForTransaction.d.ts +0 -78
  848. package/dist/types/actions/waitForTransaction.d.ts.map +0 -1
  849. package/dist/types/actions/watchBlockNumber.d.ts +0 -28
  850. package/dist/types/actions/watchBlockNumber.d.ts.map +0 -1
  851. package/dist/types/chains/bitcoin.d.ts +0 -25
  852. package/dist/types/chains/bitcoin.d.ts.map +0 -1
  853. package/dist/types/chains/defineChain.d.ts +0 -4
  854. package/dist/types/chains/defineChain.d.ts.map +0 -1
  855. package/dist/types/chains/signet.d.ts +0 -25
  856. package/dist/types/chains/signet.d.ts.map +0 -1
  857. package/dist/types/clients/decorators/public.d.ts +0 -25
  858. package/dist/types/clients/decorators/public.d.ts.map +0 -1
  859. package/dist/types/clients/decorators/wallet.d.ts +0 -15
  860. package/dist/types/clients/decorators/wallet.d.ts.map +0 -1
  861. package/dist/types/errors/address.d.ts +0 -10
  862. package/dist/types/errors/address.d.ts.map +0 -1
  863. package/dist/types/errors/base.d.ts +0 -28
  864. package/dist/types/errors/base.d.ts.map +0 -1
  865. package/dist/types/errors/block.d.ts +0 -12
  866. package/dist/types/errors/block.d.ts.map +0 -1
  867. package/dist/types/errors/provider.d.ts +0 -5
  868. package/dist/types/errors/provider.d.ts.map +0 -1
  869. package/dist/types/errors/request.d.ts +0 -82
  870. package/dist/types/errors/request.d.ts.map +0 -1
  871. package/dist/types/errors/rpc.d.ts +0 -58
  872. package/dist/types/errors/rpc.d.ts.map +0 -1
  873. package/dist/types/errors/transaction.d.ts +0 -32
  874. package/dist/types/errors/transaction.d.ts.map +0 -1
  875. package/dist/types/errors/transport.d.ts +0 -39
  876. package/dist/types/errors/transport.d.ts.map +0 -1
  877. package/dist/types/errors/utils.d.ts +0 -7
  878. package/dist/types/errors/utils.d.ts.map +0 -1
  879. package/dist/types/errors/utxo.d.ts +0 -12
  880. package/dist/types/errors/utxo.d.ts.map +0 -1
  881. package/dist/types/factories/createClient.d.ts +0 -86
  882. package/dist/types/factories/createClient.d.ts.map +0 -1
  883. package/dist/types/factories/createTransport.d.ts +0 -6
  884. package/dist/types/factories/createTransport.d.ts.map +0 -1
  885. package/dist/types/index.d.ts +0 -84
  886. package/dist/types/index.d.ts.map +0 -1
  887. package/dist/types/test/utils.d.ts +0 -2
  888. package/dist/types/test/utils.d.ts.map +0 -1
  889. package/dist/types/transports/__mocks__/getTransactionFee.d.ts +0 -4
  890. package/dist/types/transports/__mocks__/getTransactionFee.d.ts.map +0 -1
  891. package/dist/types/transports/ankr/ankr.d.ts +0 -8
  892. package/dist/types/transports/ankr/ankr.d.ts.map +0 -1
  893. package/dist/types/transports/ankr/ankr.types.d.ts +0 -82
  894. package/dist/types/transports/ankr/ankr.types.d.ts.map +0 -1
  895. package/dist/types/transports/ankr/getBalance.d.ts +0 -3
  896. package/dist/types/transports/ankr/getBalance.d.ts.map +0 -1
  897. package/dist/types/transports/ankr/getTransactionFee.d.ts +0 -3
  898. package/dist/types/transports/ankr/getTransactionFee.d.ts.map +0 -1
  899. package/dist/types/transports/ankr/getTransactions.d.ts +0 -3
  900. package/dist/types/transports/ankr/getTransactions.d.ts.map +0 -1
  901. package/dist/types/transports/ankr/methods.d.ts +0 -3
  902. package/dist/types/transports/ankr/methods.d.ts.map +0 -1
  903. package/dist/types/transports/ankr/utils.d.ts +0 -4
  904. package/dist/types/transports/ankr/utils.d.ts.map +0 -1
  905. package/dist/types/transports/blockchair/blockchair.d.ts +0 -8
  906. package/dist/types/transports/blockchair/blockchair.d.ts.map +0 -1
  907. package/dist/types/transports/blockchair/blockchair.types.d.ts +0 -137
  908. package/dist/types/transports/blockchair/blockchair.types.d.ts.map +0 -1
  909. package/dist/types/transports/blockchair/getBalance.d.ts +0 -3
  910. package/dist/types/transports/blockchair/getBalance.d.ts.map +0 -1
  911. package/dist/types/transports/blockchair/getTransactionFee.d.ts +0 -3
  912. package/dist/types/transports/blockchair/getTransactionFee.d.ts.map +0 -1
  913. package/dist/types/transports/blockchair/getUTXOs.d.ts +0 -3
  914. package/dist/types/transports/blockchair/getUTXOs.d.ts.map +0 -1
  915. package/dist/types/transports/blockchair/getXPubAddresses.d.ts +0 -3
  916. package/dist/types/transports/blockchair/getXPubAddresses.d.ts.map +0 -1
  917. package/dist/types/transports/blockchair/methods.d.ts +0 -3
  918. package/dist/types/transports/blockchair/methods.d.ts.map +0 -1
  919. package/dist/types/transports/blockcypher/blockcypher.d.ts +0 -8
  920. package/dist/types/transports/blockcypher/blockcypher.d.ts.map +0 -1
  921. package/dist/types/transports/blockcypher/blockcypher.types.d.ts +0 -74
  922. package/dist/types/transports/blockcypher/blockcypher.types.d.ts.map +0 -1
  923. package/dist/types/transports/blockcypher/getBalance.d.ts +0 -3
  924. package/dist/types/transports/blockcypher/getBalance.d.ts.map +0 -1
  925. package/dist/types/transports/blockcypher/getTransactionFee.d.ts +0 -3
  926. package/dist/types/transports/blockcypher/getTransactionFee.d.ts.map +0 -1
  927. package/dist/types/transports/blockcypher/getUTXOs.d.ts +0 -3
  928. package/dist/types/transports/blockcypher/getUTXOs.d.ts.map +0 -1
  929. package/dist/types/transports/blockcypher/methods.d.ts +0 -3
  930. package/dist/types/transports/blockcypher/methods.d.ts.map +0 -1
  931. package/dist/types/transports/blockcypher/utils.d.ts +0 -3
  932. package/dist/types/transports/blockcypher/utils.d.ts.map +0 -1
  933. package/dist/types/transports/custom.d.ts +0 -25
  934. package/dist/types/transports/custom.d.ts.map +0 -1
  935. package/dist/types/transports/fallback.d.ts +0 -90
  936. package/dist/types/transports/fallback.d.ts.map +0 -1
  937. package/dist/types/transports/getHttpRpcClient.d.ts +0 -39
  938. package/dist/types/transports/getHttpRpcClient.d.ts.map +0 -1
  939. package/dist/types/transports/getRpcProviderMethods.d.ts +0 -5
  940. package/dist/types/transports/getRpcProviderMethods.d.ts.map +0 -1
  941. package/dist/types/transports/http.d.ts +0 -54
  942. package/dist/types/transports/http.d.ts.map +0 -1
  943. package/dist/types/transports/mempool/getBalance.d.ts +0 -3
  944. package/dist/types/transports/mempool/getBalance.d.ts.map +0 -1
  945. package/dist/types/transports/mempool/getTransactionFee.d.ts +0 -3
  946. package/dist/types/transports/mempool/getTransactionFee.d.ts.map +0 -1
  947. package/dist/types/transports/mempool/getTransactions.d.ts +0 -3
  948. package/dist/types/transports/mempool/getTransactions.d.ts.map +0 -1
  949. package/dist/types/transports/mempool/mempool.d.ts +0 -7
  950. package/dist/types/transports/mempool/mempool.d.ts.map +0 -1
  951. package/dist/types/transports/mempool/mempool.types.d.ts +0 -64
  952. package/dist/types/transports/mempool/mempool.types.d.ts.map +0 -1
  953. package/dist/types/transports/mempool/methods.d.ts +0 -3
  954. package/dist/types/transports/mempool/methods.d.ts.map +0 -1
  955. package/dist/types/transports/mempool/utils.d.ts +0 -4
  956. package/dist/types/transports/mempool/utils.d.ts.map +0 -1
  957. package/dist/types/transports/types.d.ts +0 -141
  958. package/dist/types/transports/types.d.ts.map +0 -1
  959. package/dist/types/transports/utxo.d.ts +0 -8
  960. package/dist/types/transports/utxo.d.ts.map +0 -1
  961. package/dist/types/types/account.d.ts +0 -8
  962. package/dist/types/types/account.d.ts.map +0 -1
  963. package/dist/types/types/address.d.ts +0 -18
  964. package/dist/types/types/address.d.ts.map +0 -1
  965. package/dist/types/types/block.d.ts +0 -20
  966. package/dist/types/types/block.d.ts.map +0 -1
  967. package/dist/types/types/blockStats.d.ts +0 -35
  968. package/dist/types/types/blockStats.d.ts.map +0 -1
  969. package/dist/types/types/chain.d.ts +0 -64
  970. package/dist/types/types/chain.d.ts.map +0 -1
  971. package/dist/types/types/client.d.ts +0 -69
  972. package/dist/types/types/client.d.ts.map +0 -1
  973. package/dist/types/types/hash.d.ts +0 -2
  974. package/dist/types/types/hash.d.ts.map +0 -1
  975. package/dist/types/types/request.d.ts +0 -50
  976. package/dist/types/types/request.d.ts.map +0 -1
  977. package/dist/types/types/rpc.d.ts +0 -35
  978. package/dist/types/types/rpc.d.ts.map +0 -1
  979. package/dist/types/types/transaction.d.ts +0 -50
  980. package/dist/types/types/transaction.d.ts.map +0 -1
  981. package/dist/types/types/transport.d.ts +0 -39
  982. package/dist/types/types/transport.d.ts.map +0 -1
  983. package/dist/types/types/utils.d.ts +0 -73
  984. package/dist/types/types/utils.d.ts.map +0 -1
  985. package/dist/types/types/xpub.d.ts +0 -11
  986. package/dist/types/types/xpub.d.ts.map +0 -1
  987. package/dist/types/utils/buildRequest.d.ts +0 -7
  988. package/dist/types/utils/buildRequest.d.ts.map +0 -1
  989. package/dist/types/utils/cancelTransaction.d.ts +0 -3
  990. package/dist/types/utils/cancelTransaction.d.ts.map +0 -1
  991. package/dist/types/utils/converter.d.ts +0 -6
  992. package/dist/types/utils/converter.d.ts.map +0 -1
  993. package/dist/types/utils/createBatchScheduler.d.ts +0 -22
  994. package/dist/types/utils/createBatchScheduler.d.ts.map +0 -1
  995. package/dist/types/utils/deepEqual.d.ts +0 -3
  996. package/dist/types/utils/deepEqual.d.ts.map +0 -1
  997. package/dist/types/utils/getAction.d.ts +0 -18
  998. package/dist/types/utils/getAction.d.ts.map +0 -1
  999. package/dist/types/utils/getAddressInfo.d.ts +0 -5
  1000. package/dist/types/utils/getAddressInfo.d.ts.map +0 -1
  1001. package/dist/types/utils/idCache.d.ts +0 -6
  1002. package/dist/types/utils/idCache.d.ts.map +0 -1
  1003. package/dist/types/utils/isAddress.d.ts +0 -3
  1004. package/dist/types/utils/isAddress.d.ts.map +0 -1
  1005. package/dist/types/utils/lru.d.ts +0 -12
  1006. package/dist/types/utils/lru.d.ts.map +0 -1
  1007. package/dist/types/utils/modifyFee.d.ts +0 -3
  1008. package/dist/types/utils/modifyFee.d.ts.map +0 -1
  1009. package/dist/types/utils/observe.d.ts +0 -19
  1010. package/dist/types/utils/observe.d.ts.map +0 -1
  1011. package/dist/types/utils/parseAccount.d.ts +0 -6
  1012. package/dist/types/utils/parseAccount.d.ts.map +0 -1
  1013. package/dist/types/utils/poll.d.ts +0 -13
  1014. package/dist/types/utils/poll.d.ts.map +0 -1
  1015. package/dist/types/utils/retryUntil.d.ts +0 -22
  1016. package/dist/types/utils/retryUntil.d.ts.map +0 -1
  1017. package/dist/types/utils/sleep.d.ts +0 -2
  1018. package/dist/types/utils/sleep.d.ts.map +0 -1
  1019. package/dist/types/utils/stringify.d.ts +0 -4
  1020. package/dist/types/utils/stringify.d.ts.map +0 -1
  1021. package/dist/types/utils/uid.d.ts +0 -2
  1022. package/dist/types/utils/uid.d.ts.map +0 -1
  1023. package/dist/types/utils/url.d.ts +0 -2
  1024. package/dist/types/utils/url.d.ts.map +0 -1
  1025. package/dist/types/utils/wait.d.ts +0 -2
  1026. package/dist/types/utils/wait.d.ts.map +0 -1
  1027. package/dist/types/utils/withDedupe.d.ts +0 -11
  1028. package/dist/types/utils/withDedupe.d.ts.map +0 -1
  1029. package/dist/types/utils/withResolvers.d.ts +0 -9
  1030. package/dist/types/utils/withResolvers.d.ts.map +0 -1
  1031. package/dist/types/utils/withRetry.d.ts +0 -15
  1032. package/dist/types/utils/withRetry.d.ts.map +0 -1
  1033. package/dist/types/utils/withTimeout.d.ts +0 -10
  1034. package/dist/types/utils/withTimeout.d.ts.map +0 -1
  1035. package/dist/types/version.d.ts +0 -3
  1036. package/dist/types/version.d.ts.map +0 -1
@@ -1,188 +1,166 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.fallback = fallback;
4
- exports.shouldThrow = shouldThrow;
5
- exports.rankTransports = rankTransports;
6
- const rpc_js_1 = require("../errors/rpc.js");
7
- const transport_js_1 = require("../errors/transport.js");
8
- const utxo_js_1 = require("../errors/utxo.js");
9
- const createTransport_js_1 = require("../factories/createTransport.js");
10
- const wait_js_1 = require("../utils/wait.js");
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_utils_wait = require("../utils/wait.js");
3
+ const require_errors_rpc = require("../errors/rpc.js");
4
+ const require_errors_transport = require("../errors/transport.js");
5
+ const require_errors_utxo = require("../errors/utxo.js");
6
+ const require_factories_createTransport = require("../factories/createTransport.js");
7
+ //#region src/transports/fallback.ts
11
8
  function fallback(transports_, config = {}) {
12
- const { key = 'fallback', name = 'Fallback', rank = false, shouldThrow: shouldThrow_ = shouldThrow, retryCount, retryDelay, } = config;
13
- return (({ chain, pollingInterval = 4000, timeout, ...rest }) => {
14
- let transports = transports_;
15
- let onResponse = () => { };
16
- const transport = (0, createTransport_js_1.createTransport)({
17
- key,
18
- name,
19
- async request({ method, params }) {
20
- const supportedTransports = transports.reduce((supportedTransports, transport) => {
21
- const instance = transport({
22
- ...rest,
23
- chain,
24
- retryCount: 0,
25
- timeout,
26
- });
27
- const { include, exclude } = instance.config.methods || {};
28
- if (include) {
29
- if (include.includes(method)) {
30
- supportedTransports.push(instance);
31
- }
32
- return supportedTransports;
33
- }
34
- if (exclude) {
35
- if (!exclude.includes(method)) {
36
- supportedTransports.push(instance);
37
- }
38
- return supportedTransports;
39
- }
40
- supportedTransports.push(instance);
41
- return supportedTransports;
42
- }, []);
43
- if (!supportedTransports.length) {
44
- throw new transport_js_1.TransportMethodNotSupportedError({ method });
45
- }
46
- const collectedErrors = [];
47
- const fetch = async (i = 0) => {
48
- const transport = supportedTransports[i];
49
- try {
50
- const response = await transport.request({
51
- method,
52
- params,
53
- });
54
- onResponse({
55
- method,
56
- params: params,
57
- response,
58
- transport,
59
- status: 'success',
60
- });
61
- return response;
62
- }
63
- catch (err) {
64
- onResponse({
65
- error: err,
66
- method,
67
- params: params,
68
- transport,
69
- status: 'error',
70
- });
71
- if (shouldThrow_(err)) {
72
- throw err;
73
- }
74
- collectedErrors.push({
75
- transport: transport.config.name,
76
- error: err,
77
- attempt: i + 1,
78
- });
79
- if (i === supportedTransports.length - 1) {
80
- throw new transport_js_1.AllTransportsFailedError({
81
- method,
82
- params,
83
- errors: collectedErrors,
84
- totalAttempts: i + 1,
85
- });
86
- }
87
- return fetch(i + 1);
88
- }
89
- };
90
- return fetch();
91
- },
92
- retryCount,
93
- retryDelay,
94
- type: 'fallback',
95
- }, {
96
- onResponse: (fn) => {
97
- onResponse = fn;
98
- },
99
- transports: transports.map((fn) => fn({ chain, retryCount: 0 })),
100
- });
101
- if (rank) {
102
- const rankOptions = (typeof rank === 'object' ? rank : {});
103
- rankTransports({
104
- chain,
105
- interval: rankOptions.interval ?? pollingInterval,
106
- onTransports: (transports_) => {
107
- transports = transports_;
108
- },
109
- ping: rankOptions.ping,
110
- sampleCount: rankOptions.sampleCount,
111
- timeout: rankOptions.timeout,
112
- transports,
113
- weights: rankOptions.weights,
114
- });
115
- }
116
- return transport;
117
- });
9
+ const { key = "fallback", name = "Fallback", rank = false, shouldThrow: shouldThrow_ = shouldThrow, retryCount, retryDelay } = config;
10
+ return (({ chain, pollingInterval = 4e3, timeout, ...rest }) => {
11
+ let transports = transports_;
12
+ let onResponse = () => {};
13
+ const transport = require_factories_createTransport.createTransport({
14
+ key,
15
+ name,
16
+ async request({ method, params }) {
17
+ const supportedTransports = transports.reduce((supportedTransports, transport) => {
18
+ const instance = transport({
19
+ ...rest,
20
+ chain,
21
+ retryCount: 0,
22
+ timeout
23
+ });
24
+ const { include, exclude } = instance.config.methods || {};
25
+ if (include) {
26
+ if (include.includes(method)) supportedTransports.push(instance);
27
+ return supportedTransports;
28
+ }
29
+ if (exclude) {
30
+ if (!exclude.includes(method)) supportedTransports.push(instance);
31
+ return supportedTransports;
32
+ }
33
+ supportedTransports.push(instance);
34
+ return supportedTransports;
35
+ }, []);
36
+ if (!supportedTransports.length) throw new require_errors_transport.TransportMethodNotSupportedError({ method });
37
+ const collectedErrors = [];
38
+ const fetch = async (i = 0) => {
39
+ const transport = supportedTransports[i];
40
+ try {
41
+ const response = await transport.request({
42
+ method,
43
+ params
44
+ });
45
+ onResponse({
46
+ method,
47
+ params,
48
+ response,
49
+ transport,
50
+ status: "success"
51
+ });
52
+ return response;
53
+ } catch (err) {
54
+ onResponse({
55
+ error: err,
56
+ method,
57
+ params,
58
+ transport,
59
+ status: "error"
60
+ });
61
+ if (shouldThrow_(err)) throw err;
62
+ collectedErrors.push({
63
+ transport: transport.config.name,
64
+ error: err,
65
+ attempt: i + 1
66
+ });
67
+ if (i === supportedTransports.length - 1) throw new require_errors_transport.AllTransportsFailedError({
68
+ method,
69
+ params,
70
+ errors: collectedErrors,
71
+ totalAttempts: i + 1
72
+ });
73
+ return fetch(i + 1);
74
+ }
75
+ };
76
+ return fetch();
77
+ },
78
+ retryCount,
79
+ retryDelay,
80
+ type: "fallback"
81
+ }, {
82
+ onResponse: (fn) => {
83
+ onResponse = fn;
84
+ },
85
+ transports: transports.map((fn) => fn({
86
+ chain,
87
+ retryCount: 0
88
+ }))
89
+ });
90
+ if (rank) {
91
+ const rankOptions = typeof rank === "object" ? rank : {};
92
+ rankTransports({
93
+ chain,
94
+ interval: rankOptions.interval ?? pollingInterval,
95
+ onTransports: (transports_) => {
96
+ transports = transports_;
97
+ },
98
+ ping: rankOptions.ping,
99
+ sampleCount: rankOptions.sampleCount,
100
+ timeout: rankOptions.timeout,
101
+ transports,
102
+ weights: rankOptions.weights
103
+ });
104
+ }
105
+ return transport;
106
+ });
118
107
  }
119
108
  function shouldThrow(error) {
120
- if (error instanceof utxo_js_1.InsufficientUTXOBalanceError) {
121
- return true;
122
- }
123
- if ('code' in error && typeof error.code === 'number') {
124
- if (error.code === rpc_js_1.RpcErrorCode.INTERNAL_ERROR ||
125
- error.code === rpc_js_1.RpcErrorCode.USER_REJECTION ||
126
- error.code === 5000) {
127
- return true;
128
- }
129
- }
130
- return false;
109
+ if (error instanceof require_errors_utxo.InsufficientUTXOBalanceError) return true;
110
+ if ("code" in error && typeof error.code === "number") {
111
+ if (error.code === require_errors_rpc.RpcErrorCode.INTERNAL_ERROR || error.code === require_errors_rpc.RpcErrorCode.USER_REJECTION || error.code === 5e3) return true;
112
+ }
113
+ return false;
131
114
  }
132
- function rankTransports({ chain, interval = 4000, onTransports, ping, sampleCount = 10, timeout = 1000, transports, weights = {}, }) {
133
- const { stability: stabilityWeight = 0.7, latency: latencyWeight = 0.3 } = weights;
134
- const samples = [];
135
- const rankTransports_ = async () => {
136
- const sample = await Promise.all(transports.map(async (transport) => {
137
- const transport_ = transport({ chain, retryCount: 0, timeout });
138
- const start = Date.now();
139
- let end;
140
- let success;
141
- try {
142
- await (ping
143
- ? ping({ transport: transport_ })
144
- : transport_.request({
145
- method: 'net_listening',
146
- params: undefined,
147
- }));
148
- success = 1;
149
- }
150
- catch {
151
- success = 0;
152
- }
153
- finally {
154
- end = Date.now();
155
- }
156
- const latency = end - start;
157
- return { latency, success };
158
- }));
159
- samples.push(sample);
160
- if (samples.length > sampleCount) {
161
- samples.shift();
162
- }
163
- const maxLatency = Math.max(...samples.map((sample) => Math.max(...sample.map(({ latency }) => latency))));
164
- const scores = transports
165
- .map((_, i) => {
166
- const latencies = samples.map((sample) => sample[i].latency);
167
- const meanLatency = latencies.reduce((acc, latency) => acc + latency, 0) /
168
- latencies.length;
169
- const latencyScore = 1 - meanLatency / maxLatency;
170
- const successes = samples.map((sample) => sample[i].success);
171
- const stabilityScore = successes.reduce((acc, success) => acc + success, 0) /
172
- successes.length;
173
- if (stabilityScore === 0) {
174
- return [0, i];
175
- }
176
- return [
177
- latencyWeight * latencyScore + stabilityWeight * stabilityScore,
178
- i,
179
- ];
180
- })
181
- .sort((a, b) => b[0] - a[0]);
182
- onTransports(scores.map(([, i]) => transports[i]));
183
- await (0, wait_js_1.wait)(interval);
184
- rankTransports_();
185
- };
186
- rankTransports_();
115
+ /** @internal */
116
+ function rankTransports({ chain, interval = 4e3, onTransports, ping, sampleCount = 10, timeout = 1e3, transports, weights = {} }) {
117
+ const { stability: stabilityWeight = .7, latency: latencyWeight = .3 } = weights;
118
+ const samples = [];
119
+ const rankTransports_ = async () => {
120
+ const sample = await Promise.all(transports.map(async (transport) => {
121
+ const transport_ = transport({
122
+ chain,
123
+ retryCount: 0,
124
+ timeout
125
+ });
126
+ const start = Date.now();
127
+ let end;
128
+ let success;
129
+ try {
130
+ await (ping ? ping({ transport: transport_ }) : transport_.request({
131
+ method: "net_listening",
132
+ params: void 0
133
+ }));
134
+ success = 1;
135
+ } catch {
136
+ success = 0;
137
+ } finally {
138
+ end = Date.now();
139
+ }
140
+ return {
141
+ latency: end - start,
142
+ success
143
+ };
144
+ }));
145
+ samples.push(sample);
146
+ if (samples.length > sampleCount) samples.shift();
147
+ const maxLatency = Math.max(...samples.map((sample) => Math.max(...sample.map(({ latency }) => latency))));
148
+ onTransports(transports.map((_, i) => {
149
+ const latencies = samples.map((sample) => sample[i].latency);
150
+ const latencyScore = 1 - latencies.reduce((acc, latency) => acc + latency, 0) / latencies.length / maxLatency;
151
+ const successes = samples.map((sample) => sample[i].success);
152
+ const stabilityScore = successes.reduce((acc, success) => acc + success, 0) / successes.length;
153
+ if (stabilityScore === 0) return [0, i];
154
+ return [latencyWeight * latencyScore + stabilityWeight * stabilityScore, i];
155
+ }).sort((a, b) => b[0] - a[0]).map(([, i]) => transports[i]));
156
+ await require_utils_wait.wait(interval);
157
+ rankTransports_();
158
+ };
159
+ rankTransports_();
187
160
  }
161
+ //#endregion
162
+ exports.fallback = fallback;
163
+ exports.rankTransports = rankTransports;
164
+ exports.shouldThrow = shouldThrow;
165
+
188
166
  //# sourceMappingURL=fallback.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fallback.js","sourceRoot":"","sources":["../../../src/transports/fallback.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fallback.js","names":["createTransport","TransportMethodNotSupportedError","AllTransportsFailedError","InsufficientUTXOBalanceError","RpcErrorCode","wait"],"sources":["../../../src/transports/fallback.ts"],"sourcesContent":["import { RpcErrorCode } from '../errors/rpc.js'\nimport {\n AllTransportsFailedError,\n TransportMethodNotSupportedError,\n} from '../errors/transport.js'\nimport type { ErrorType } from '../errors/utils.js'\nimport { InsufficientUTXOBalanceError } from '../errors/utxo.js'\nimport { createTransport } from '../factories/createTransport.js'\nimport type { Chain } from '../types/chain.js'\nimport type {\n CreateTransportErrorType,\n Transport,\n TransportConfig,\n} from '../types/transport.js'\nimport { wait } from '../utils/wait.js'\n\n// TODO: Narrow `method` & `params` types.\nexport type OnResponseFn = (\n args: {\n method: string\n params: unknown[]\n transport: ReturnType<Transport>\n } & (\n | {\n error?: undefined\n response: unknown\n status: 'success'\n }\n | {\n error: Error\n response?: undefined\n status: 'error'\n }\n )\n) => void\n\ntype RankOptions = {\n /**\n * The polling interval (in ms) at which the ranker should ping the RPC URL.\n * @default client.pollingInterval\n */\n interval?: number | undefined\n /**\n * Ping method to determine latency.\n */\n ping?: (parameters: {\n transport: ReturnType<Transport>\n }) => Promise<unknown> | undefined\n /**\n * The number of previous samples to perform ranking on.\n * @default 10\n */\n sampleCount?: number | undefined\n /**\n * Timeout when sampling transports.\n * @default 1_000\n */\n timeout?: number | undefined\n /**\n * Weights to apply to the scores. Weight values are proportional.\n */\n weights?:\n | {\n /**\n * The weight to apply to the latency score.\n * @default 0.3\n */\n latency?: number | undefined\n /**\n * The weight to apply to the stability score.\n * @default 0.7\n */\n stability?: number | undefined\n }\n | undefined\n}\n\nexport type FallbackTransportConfig = {\n /** The key of the Fallback transport. */\n key?: TransportConfig['key'] | undefined\n /** The name of the Fallback transport. */\n name?: TransportConfig['name'] | undefined\n /** Toggle to enable ranking, or rank options. */\n rank?: boolean | RankOptions | undefined\n /** The max number of times to retry. */\n retryCount?: TransportConfig['retryCount'] | undefined\n /** The base delay (in ms) between retries. */\n retryDelay?: TransportConfig['retryDelay'] | undefined\n /** Callback on whether an error should throw or try the next transport in the fallback. */\n shouldThrow?: (error: Error) => boolean | undefined\n}\n\nexport type FallbackTransport<\n transports extends readonly Transport[] = readonly Transport[],\n> = Transport<\n 'fallback',\n {\n onResponse: (fn: OnResponseFn) => void\n transports: {\n [key in keyof transports]: ReturnType<transports[key]>\n }\n }\n>\n\nexport type FallbackTransportErrorType = CreateTransportErrorType | ErrorType\n\nexport function fallback<const transports extends readonly Transport[]>(\n transports_: transports,\n config: FallbackTransportConfig = {}\n): FallbackTransport<transports> {\n const {\n key = 'fallback',\n name = 'Fallback',\n rank = false,\n shouldThrow: shouldThrow_ = shouldThrow,\n retryCount,\n retryDelay,\n } = config\n return (({ chain, pollingInterval = 4_000, timeout, ...rest }) => {\n let transports = transports_\n\n let onResponse: OnResponseFn = () => {}\n\n const transport = createTransport(\n {\n key,\n name,\n async request({ method, params }) {\n // Filter transports to only those that support the requested method\n const supportedTransports = transports.reduce<\n ReturnType<Transport>[]\n >((supportedTransports, transport) => {\n const instance = transport({\n ...rest,\n chain,\n retryCount: 0,\n timeout,\n })\n const { include, exclude } = instance.config.methods || {}\n if (include) {\n if (include.includes(method)) {\n supportedTransports.push(instance)\n }\n return supportedTransports\n }\n if (exclude) {\n if (!exclude.includes(method)) {\n supportedTransports.push(instance)\n }\n return supportedTransports\n }\n supportedTransports.push(instance)\n return supportedTransports\n }, [])\n\n if (!supportedTransports.length) {\n throw new TransportMethodNotSupportedError({ method })\n }\n\n const collectedErrors: Array<{\n transport: string\n error: Error\n attempt: number\n }> = []\n\n const fetch = async (i = 0): Promise<any> => {\n const transport = supportedTransports[i]\n try {\n const response = await transport.request({\n method,\n params,\n })\n\n onResponse({\n method,\n params: params as unknown[],\n response,\n transport,\n status: 'success',\n })\n\n return response\n } catch (err) {\n onResponse({\n error: err as Error,\n method,\n params: params as unknown[],\n transport,\n status: 'error',\n })\n\n if (shouldThrow_(err as Error)) {\n throw err\n }\n\n collectedErrors.push({\n transport: transport.config.name,\n error: err as Error,\n attempt: i + 1,\n })\n\n // If we've reached the end of the fallbacks, throw all collected errors.\n if (i === supportedTransports.length - 1) {\n throw new AllTransportsFailedError({\n method,\n params,\n errors: collectedErrors,\n totalAttempts: i + 1,\n })\n }\n\n // Otherwise, try the next fallback.\n return fetch(i + 1)\n }\n }\n return fetch()\n },\n retryCount,\n retryDelay,\n type: 'fallback',\n },\n {\n onResponse: (fn: OnResponseFn) => {\n onResponse = fn\n },\n transports: transports.map((fn) => fn({ chain, retryCount: 0 })),\n }\n )\n\n if (rank) {\n const rankOptions = (typeof rank === 'object' ? rank : {}) as RankOptions\n rankTransports({\n chain,\n interval: rankOptions.interval ?? pollingInterval,\n onTransports: (transports_) => {\n transports = transports_ as transports\n },\n ping: rankOptions.ping,\n sampleCount: rankOptions.sampleCount,\n timeout: rankOptions.timeout,\n transports,\n weights: rankOptions.weights,\n })\n }\n return transport\n }) as FallbackTransport<transports>\n}\n\nexport function shouldThrow(error: Error): boolean {\n if (error instanceof InsufficientUTXOBalanceError) {\n return true\n }\n\n if ('code' in error && typeof error.code === 'number') {\n if (\n error.code === RpcErrorCode.INTERNAL_ERROR ||\n error.code === RpcErrorCode.USER_REJECTION ||\n error.code === 5000 // CAIP UserRejectedRequestError\n ) {\n return true\n }\n }\n\n return false\n}\n\n/** @internal */\nexport function rankTransports({\n chain,\n interval = 4_000,\n onTransports,\n ping,\n sampleCount = 10,\n timeout = 1_000,\n transports,\n weights = {},\n}: {\n chain?: Chain | undefined\n interval: RankOptions['interval']\n onTransports: (transports: readonly Transport[]) => void\n ping?: RankOptions['ping'] | undefined\n sampleCount?: RankOptions['sampleCount'] | undefined\n timeout?: RankOptions['timeout'] | undefined\n transports: readonly Transport[]\n weights?: RankOptions['weights'] | undefined\n}): void {\n const { stability: stabilityWeight = 0.7, latency: latencyWeight = 0.3 } =\n weights\n\n type SampleData = { latency: number; success: number }\n type Sample = SampleData[]\n const samples: Sample[] = []\n\n const rankTransports_ = async () => {\n // 1. Take a sample from each Transport.\n const sample: Sample = await Promise.all(\n transports.map(async (transport) => {\n const transport_ = transport({ chain, retryCount: 0, timeout })\n\n const start = Date.now()\n let end: number\n let success: number\n try {\n await (ping\n ? ping({ transport: transport_ })\n : transport_.request({\n method: 'net_listening',\n params: undefined,\n }))\n success = 1\n } catch {\n success = 0\n } finally {\n end = Date.now()\n }\n const latency = end - start\n return { latency, success }\n })\n )\n\n // 2. Store the sample. If we have more than `sampleCount` samples, remove\n // the oldest sample.\n samples.push(sample)\n if (samples.length > sampleCount) {\n samples.shift()\n }\n\n // 3. Calculate the max latency from samples.\n const maxLatency = Math.max(\n ...samples.map((sample) =>\n Math.max(...sample.map(({ latency }) => latency))\n )\n )\n\n // 4. Calculate the score for each Transport.\n const scores = transports\n .map((_, i) => {\n const latencies = samples.map((sample) => sample[i].latency)\n const meanLatency =\n latencies.reduce((acc, latency) => acc + latency, 0) /\n latencies.length\n const latencyScore = 1 - meanLatency / maxLatency\n\n const successes = samples.map((sample) => sample[i].success)\n const stabilityScore =\n successes.reduce((acc, success) => acc + success, 0) /\n successes.length\n\n if (stabilityScore === 0) {\n return [0, i]\n }\n return [\n latencyWeight * latencyScore + stabilityWeight * stabilityScore,\n i,\n ]\n })\n .sort((a, b) => b[0] - a[0])\n\n // 5. Sort the Transports by score.\n onTransports(scores.map(([, i]) => transports[i]))\n\n // 6. Wait, and then rank again.\n await wait(interval)\n rankTransports_()\n }\n rankTransports_()\n}\n"],"mappings":"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"}
@@ -1,29 +1,34 @@
1
- import type { RpcResponse } from '../types/rpc.js';
2
- import type { MaybePromise } from '../types/utils.js';
3
- export type RpcRequest = {
4
- jsonrpc?: '2.0';
5
- method: string;
6
- params?: any;
7
- id?: number;
1
+ import { RpcResponse } from "../types/rpc.js";
2
+ import { MaybePromise } from "../types/utils.js";
3
+
4
+ //#region src/transports/getHttpRpcClient.d.ts
5
+ type RpcRequest = {
6
+ jsonrpc?: "2.0";
7
+ method: string;
8
+ params?: any;
9
+ id?: number;
8
10
  };
9
- export type HttpRequestReturnType<body extends RpcRequest | RpcRequest[] = RpcRequest> = body extends RpcRequest[] ? RpcResponse[] : RpcResponse;
10
- export type HttpRpcClientOptions = {
11
- fetchOptions?: Omit<RequestInit, 'body'> | undefined;
12
- onRequest?: ((request: Request, init: RequestInit) => MaybePromise<void | undefined | (RequestInit & {
13
- url?: string | undefined;
14
- })>) | undefined;
15
- onResponse?: ((response: Response) => Promise<void> | void) | undefined;
16
- timeout?: number | undefined;
11
+ type HttpRequestReturnType<body extends RpcRequest | RpcRequest[] = RpcRequest> = body extends RpcRequest[] ? RpcResponse[] : RpcResponse;
12
+ type HttpRpcClientOptions = {
13
+ /** Request configuration to pass to `fetch`. */fetchOptions?: Omit<RequestInit, "body"> | undefined; /** A callback to handle the request. */
14
+ onRequest?: ((request: Request, init: RequestInit) => MaybePromise<void | undefined | (RequestInit & {
15
+ url?: string | undefined;
16
+ })>) | undefined; /** A callback to handle the response. */
17
+ onResponse?: ((response: Response) => Promise<void> | void) | undefined; /** The timeout (in ms) for the request. */
18
+ timeout?: number | undefined;
17
19
  };
18
- export type HttpRequestParameters<body extends RpcRequest | RpcRequest[] = RpcRequest> = {
19
- url?: string;
20
- body?: body;
21
- fetchOptions?: HttpRpcClientOptions['fetchOptions'] | undefined;
22
- onRequest?: ((request: Request) => Promise<void> | void) | undefined;
23
- onResponse?: ((response: Response) => Promise<void> | void) | undefined;
24
- timeout?: HttpRpcClientOptions['timeout'] | undefined;
20
+ type HttpRequestParameters<body extends RpcRequest | RpcRequest[] = RpcRequest> = {
21
+ url?: string; /** The RPC request body. */
22
+ body?: body; /** Request configuration to pass to `fetch`. */
23
+ fetchOptions?: HttpRpcClientOptions["fetchOptions"] | undefined; /** A callback to handle the response. */
24
+ onRequest?: ((request: Request) => Promise<void> | void) | undefined; /** A callback to handle the response. */
25
+ onResponse?: ((response: Response) => Promise<void> | void) | undefined; /** The timeout (in ms) for the request. */
26
+ timeout?: HttpRpcClientOptions["timeout"] | undefined;
25
27
  };
26
- export type HttpRpcClient = {
27
- request<body extends RpcRequest | RpcRequest[]>(params: HttpRequestParameters<body>): Promise<HttpRequestReturnType<body>>;
28
+ type HttpRpcClient = {
29
+ request<body extends RpcRequest | RpcRequest[]>(params: HttpRequestParameters<body>): Promise<HttpRequestReturnType<body>>;
28
30
  };
29
- export declare function getHttpRpcClient(url: string, options?: HttpRpcClientOptions): HttpRpcClient;
31
+ declare function getHttpRpcClient(url: string, options?: HttpRpcClientOptions): HttpRpcClient;
32
+ //#endregion
33
+ export { HttpRequestParameters, HttpRequestReturnType, HttpRpcClient, HttpRpcClientOptions, RpcRequest, getHttpRpcClient };
34
+ //# sourceMappingURL=getHttpRpcClient.d.ts.map
@@ -1,97 +1,77 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getHttpRpcClient = getHttpRpcClient;
4
- const request_js_1 = require("../errors/request.js");
5
- const idCache_js_1 = require("../utils/idCache.js");
6
- const stringify_js_1 = require("../utils/stringify.js");
7
- const withTimeout_js_1 = require("../utils/withTimeout.js");
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_utils_stringify = require("../utils/stringify.js");
3
+ const require_errors_request = require("../errors/request.js");
4
+ const require_utils_idCache = require("../utils/idCache.js");
5
+ const require_utils_withTimeout = require("../utils/withTimeout.js");
6
+ //#region src/transports/getHttpRpcClient.ts
8
7
  function getHttpRpcClient(url, options = {}) {
9
- return {
10
- async request(params) {
11
- const { body, onRequest = options.onRequest, onResponse = options.onResponse, timeout = options.timeout ?? 10000, } = params;
12
- const fetchOptions = {
13
- ...(options.fetchOptions ?? {}),
14
- ...(params.fetchOptions ?? {}),
15
- };
16
- const { headers, method, signal: signal_ } = fetchOptions;
17
- try {
18
- const response = await (0, withTimeout_js_1.withTimeout)(async ({ signal }) => {
19
- const preparedBody = body
20
- ? Array.isArray(body)
21
- ? body.map((b) => ({
22
- jsonrpc: '2.0',
23
- id: b.id ?? idCache_js_1.idCache.take(),
24
- ...b,
25
- }))
26
- : {
27
- jsonrpc: '2.0',
28
- id: body.id ?? idCache_js_1.idCache.take(),
29
- ...body,
30
- }
31
- : undefined;
32
- const init = {
33
- ...fetchOptions,
34
- body: preparedBody ? (0, stringify_js_1.stringify)(preparedBody) : undefined,
35
- headers: {
36
- ...(method !== 'GET'
37
- ? { 'Content-Type': 'application/json' }
38
- : undefined),
39
- ...headers,
40
- },
41
- method: method || 'POST',
42
- signal: signal_ || (timeout > 0 ? signal : null),
43
- };
44
- const request = new Request(params.url ?? url, init);
45
- if (onRequest) {
46
- await onRequest(request, init);
47
- }
48
- const response = await fetch(params.url ?? url, init);
49
- return response;
50
- }, {
51
- errorInstance: new request_js_1.TimeoutError({
52
- body: body ?? {},
53
- url: params.url ?? url,
54
- timeout,
55
- }),
56
- timeout,
57
- signal: true,
58
- });
59
- if (onResponse) {
60
- await onResponse(response);
61
- }
62
- let data;
63
- if (response.headers.get('Content-Type')?.startsWith('application/json')) {
64
- data = await response.json();
65
- }
66
- else {
67
- data = await response.text();
68
- data = JSON.parse(data || '{}');
69
- }
70
- if (!response.ok) {
71
- throw new request_js_1.HttpRequestError({
72
- body,
73
- details: (0, stringify_js_1.stringify)(data.error) || response.statusText,
74
- headers: response.headers,
75
- status: response.status,
76
- url,
77
- });
78
- }
79
- return data;
80
- }
81
- catch (err) {
82
- if (err instanceof request_js_1.HttpRequestError) {
83
- throw err;
84
- }
85
- if (err instanceof request_js_1.TimeoutError) {
86
- throw err;
87
- }
88
- throw new request_js_1.HttpRequestError({
89
- body,
90
- cause: err,
91
- url,
92
- });
93
- }
94
- },
95
- };
8
+ return { async request(params) {
9
+ const { body, onRequest = options.onRequest, onResponse = options.onResponse, timeout = options.timeout ?? 1e4 } = params;
10
+ const fetchOptions = {
11
+ ...options.fetchOptions ?? {},
12
+ ...params.fetchOptions ?? {}
13
+ };
14
+ const { headers, method, signal: signal_ } = fetchOptions;
15
+ try {
16
+ const response = await require_utils_withTimeout.withTimeout(async ({ signal }) => {
17
+ const preparedBody = body ? Array.isArray(body) ? body.map((b) => ({
18
+ jsonrpc: "2.0",
19
+ id: b.id ?? require_utils_idCache.idCache.take(),
20
+ ...b
21
+ })) : {
22
+ jsonrpc: "2.0",
23
+ id: body.id ?? require_utils_idCache.idCache.take(),
24
+ ...body
25
+ } : void 0;
26
+ const init = {
27
+ ...fetchOptions,
28
+ body: preparedBody ? require_utils_stringify.stringify(preparedBody) : void 0,
29
+ headers: {
30
+ ...method !== "GET" ? { "Content-Type": "application/json" } : void 0,
31
+ ...headers
32
+ },
33
+ method: method || "POST",
34
+ signal: signal_ || (timeout > 0 ? signal : null)
35
+ };
36
+ const request = new Request(params.url ?? url, init);
37
+ if (onRequest) await onRequest(request, init);
38
+ return await fetch(params.url ?? url, init);
39
+ }, {
40
+ errorInstance: new require_errors_request.TimeoutError({
41
+ body: body ?? {},
42
+ url: params.url ?? url,
43
+ timeout
44
+ }),
45
+ timeout,
46
+ signal: true
47
+ });
48
+ if (onResponse) await onResponse(response);
49
+ let data;
50
+ if (response.headers.get("Content-Type")?.startsWith("application/json")) data = await response.json();
51
+ else {
52
+ data = await response.text();
53
+ data = JSON.parse(data || "{}");
54
+ }
55
+ if (!response.ok) throw new require_errors_request.HttpRequestError({
56
+ body,
57
+ details: require_utils_stringify.stringify(data.error) || response.statusText,
58
+ headers: response.headers,
59
+ status: response.status,
60
+ url
61
+ });
62
+ return data;
63
+ } catch (err) {
64
+ if (err instanceof require_errors_request.HttpRequestError) throw err;
65
+ if (err instanceof require_errors_request.TimeoutError) throw err;
66
+ throw new require_errors_request.HttpRequestError({
67
+ body,
68
+ cause: err,
69
+ url
70
+ });
71
+ }
72
+ } };
96
73
  }
74
+ //#endregion
75
+ exports.getHttpRpcClient = getHttpRpcClient;
76
+
97
77
  //# sourceMappingURL=getHttpRpcClient.js.map