@lifi/sdk 3.3.0-beta.2 → 3.3.0-beta.4

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 (232) hide show
  1. package/package.json +4 -3
  2. package/src/_cjs/core/Solana/SolanaStepExecutor.js +10 -0
  3. package/src/_cjs/core/Solana/SolanaStepExecutor.js.map +1 -1
  4. package/src/_cjs/core/UTXO/UTXO.js +2 -2
  5. package/src/_cjs/core/UTXO/UTXO.js.map +1 -1
  6. package/src/_cjs/core/UTXO/UTXOStepExecutor.js +3 -4
  7. package/src/_cjs/core/UTXO/UTXOStepExecutor.js.map +1 -1
  8. package/src/_cjs/core/UTXO/getUTXOAPIPublicClient.js +7 -7
  9. package/src/_cjs/core/UTXO/getUTXOAPIPublicClient.js.map +1 -1
  10. package/src/_cjs/core/UTXO/getUTXOPublicClient.js +2 -2
  11. package/src/_cjs/core/UTXO/getUTXOPublicClient.js.map +1 -1
  12. package/src/_cjs/index.js +2 -4
  13. package/src/_cjs/index.js.map +1 -1
  14. package/src/_cjs/version.js +1 -1
  15. package/src/_esm/core/Solana/SolanaStepExecutor.js +10 -0
  16. package/src/_esm/core/Solana/SolanaStepExecutor.js.map +1 -1
  17. package/src/_esm/core/UTXO/UTXO.js +1 -1
  18. package/src/_esm/core/UTXO/UTXO.js.map +1 -1
  19. package/src/_esm/core/UTXO/UTXOStepExecutor.js +1 -2
  20. package/src/_esm/core/UTXO/UTXOStepExecutor.js.map +1 -1
  21. package/src/_esm/core/UTXO/getUTXOAPIPublicClient.js +2 -2
  22. package/src/_esm/core/UTXO/getUTXOAPIPublicClient.js.map +1 -1
  23. package/src/_esm/core/UTXO/getUTXOPublicClient.js +1 -1
  24. package/src/_esm/core/UTXO/getUTXOPublicClient.js.map +1 -1
  25. package/src/_esm/index.js +0 -1
  26. package/src/_esm/index.js.map +1 -1
  27. package/src/_esm/version.js +1 -1
  28. package/src/_types/core/Solana/SolanaStepExecutor.d.ts.map +1 -1
  29. package/src/_types/core/UTXO/UTXOStepExecutor.d.ts.map +1 -1
  30. package/src/_types/core/UTXO/getUTXOAPIPublicClient.d.ts +2 -2
  31. package/src/_types/core/UTXO/getUTXOAPIPublicClient.d.ts.map +1 -1
  32. package/src/_types/core/UTXO/getUTXOPublicClient.d.ts +2 -2
  33. package/src/_types/core/UTXO/getUTXOPublicClient.d.ts.map +1 -1
  34. package/src/_types/index.d.ts +0 -2
  35. package/src/_types/index.d.ts.map +1 -1
  36. package/src/_types/version.d.ts +1 -1
  37. package/src/core/Solana/SolanaStepExecutor.ts +12 -0
  38. package/src/core/UTXO/UTXO.ts +1 -1
  39. package/src/core/UTXO/UTXOStepExecutor.ts +2 -5
  40. package/src/core/UTXO/getUTXOAPIPublicClient.ts +3 -3
  41. package/src/core/UTXO/getUTXOPublicClient.ts +2 -2
  42. package/src/index.ts +0 -8
  43. package/src/version.ts +1 -1
  44. package/src/_cjs/core/UTXO/isUTXOAddress.js +0 -133
  45. package/src/_cjs/core/UTXO/isUTXOAddress.js.map +0 -1
  46. package/src/_cjs/core/UTXO/utxo-stack/actions/getBalance.js +0 -11
  47. package/src/_cjs/core/UTXO/utxo-stack/actions/getBalance.js.map +0 -1
  48. package/src/_cjs/core/UTXO/utxo-stack/actions/getBlock.js +0 -31
  49. package/src/_cjs/core/UTXO/utxo-stack/actions/getBlock.js.map +0 -1
  50. package/src/_cjs/core/UTXO/utxo-stack/actions/getBlockCount.js +0 -11
  51. package/src/_cjs/core/UTXO/utxo-stack/actions/getBlockCount.js.map +0 -1
  52. package/src/_cjs/core/UTXO/utxo-stack/actions/getBlockStats.js +0 -27
  53. package/src/_cjs/core/UTXO/utxo-stack/actions/getBlockStats.js.map +0 -1
  54. package/src/_cjs/core/UTXO/utxo-stack/actions/getUTXOTransaction.js +0 -24
  55. package/src/_cjs/core/UTXO/utxo-stack/actions/getUTXOTransaction.js.map +0 -1
  56. package/src/_cjs/core/UTXO/utxo-stack/actions/sendUTXOTransaction.js +0 -15
  57. package/src/_cjs/core/UTXO/utxo-stack/actions/sendUTXOTransaction.js.map +0 -1
  58. package/src/_cjs/core/UTXO/utxo-stack/actions/signPsbt.js +0 -11
  59. package/src/_cjs/core/UTXO/utxo-stack/actions/signPsbt.js.map +0 -1
  60. package/src/_cjs/core/UTXO/utxo-stack/actions/waitForTransaction.js +0 -185
  61. package/src/_cjs/core/UTXO/utxo-stack/actions/waitForTransaction.js.map +0 -1
  62. package/src/_cjs/core/UTXO/utxo-stack/actions/watchBlockNumber.js +0 -45
  63. package/src/_cjs/core/UTXO/utxo-stack/actions/watchBlockNumber.js.map +0 -1
  64. package/src/_cjs/core/UTXO/utxo-stack/clients/types.js +0 -3
  65. package/src/_cjs/core/UTXO/utxo-stack/clients/types.js.map +0 -1
  66. package/src/_cjs/core/UTXO/utxo-stack/decorators/UTXOAPIActions.js +0 -10
  67. package/src/_cjs/core/UTXO/utxo-stack/decorators/UTXOAPIActions.js.map +0 -1
  68. package/src/_cjs/core/UTXO/utxo-stack/decorators/UTXOActions.js +0 -14
  69. package/src/_cjs/core/UTXO/utxo-stack/decorators/UTXOActions.js.map +0 -1
  70. package/src/_cjs/core/UTXO/utxo-stack/transports/utxo/ankr.js +0 -21
  71. package/src/_cjs/core/UTXO/utxo-stack/transports/utxo/ankr.js.map +0 -1
  72. package/src/_cjs/core/UTXO/utxo-stack/transports/utxo/blockchair.js +0 -24
  73. package/src/_cjs/core/UTXO/utxo-stack/transports/utxo/blockchair.js.map +0 -1
  74. package/src/_cjs/core/UTXO/utxo-stack/transports/utxo/blockcypher.js +0 -21
  75. package/src/_cjs/core/UTXO/utxo-stack/transports/utxo/blockcypher.js.map +0 -1
  76. package/src/_cjs/core/UTXO/utxo-stack/transports/utxo/getHttpRpcClient.js +0 -77
  77. package/src/_cjs/core/UTXO/utxo-stack/transports/utxo/getHttpRpcClient.js.map +0 -1
  78. package/src/_cjs/core/UTXO/utxo-stack/transports/utxo/getRpcProviderMethods.js +0 -22
  79. package/src/_cjs/core/UTXO/utxo-stack/transports/utxo/getRpcProviderMethods.js.map +0 -1
  80. package/src/_cjs/core/UTXO/utxo-stack/transports/utxo/mempool.js +0 -17
  81. package/src/_cjs/core/UTXO/utxo-stack/transports/utxo/mempool.js.map +0 -1
  82. package/src/_cjs/core/UTXO/utxo-stack/transports/utxo/types.js +0 -3
  83. package/src/_cjs/core/UTXO/utxo-stack/transports/utxo/types.js.map +0 -1
  84. package/src/_cjs/core/UTXO/utxo-stack/transports/utxo/utxo.js +0 -56
  85. package/src/_cjs/core/UTXO/utxo-stack/transports/utxo/utxo.js.map +0 -1
  86. package/src/_cjs/core/UTXO/utxo-stack/types/blockStats.js +0 -3
  87. package/src/_cjs/core/UTXO/utxo-stack/types/blockStats.js.map +0 -1
  88. package/src/_cjs/core/UTXO/utxo-stack/types/transaction.js +0 -3
  89. package/src/_cjs/core/UTXO/utxo-stack/types/transaction.js.map +0 -1
  90. package/src/_cjs/core/UTXO/utxo-stack/utils/cancelTransaction.js +0 -51
  91. package/src/_cjs/core/UTXO/utxo-stack/utils/cancelTransaction.js.map +0 -1
  92. package/src/_cjs/core/UTXO/utxo-stack/utils/modifyFee.js +0 -50
  93. package/src/_cjs/core/UTXO/utxo-stack/utils/modifyFee.js.map +0 -1
  94. package/src/_cjs/core/UTXO/utxo-stack/utils/observe.js +0 -48
  95. package/src/_cjs/core/UTXO/utxo-stack/utils/observe.js.map +0 -1
  96. package/src/_cjs/core/UTXO/utxo-stack/utils/poll.js +0 -30
  97. package/src/_cjs/core/UTXO/utxo-stack/utils/poll.js.map +0 -1
  98. package/src/_esm/core/UTXO/isUTXOAddress.js +0 -128
  99. package/src/_esm/core/UTXO/isUTXOAddress.js.map +0 -1
  100. package/src/_esm/core/UTXO/utxo-stack/actions/getBalance.js +0 -8
  101. package/src/_esm/core/UTXO/utxo-stack/actions/getBalance.js.map +0 -1
  102. package/src/_esm/core/UTXO/utxo-stack/actions/getBlock.js +0 -28
  103. package/src/_esm/core/UTXO/utxo-stack/actions/getBlock.js.map +0 -1
  104. package/src/_esm/core/UTXO/utxo-stack/actions/getBlockCount.js +0 -8
  105. package/src/_esm/core/UTXO/utxo-stack/actions/getBlockCount.js.map +0 -1
  106. package/src/_esm/core/UTXO/utxo-stack/actions/getBlockStats.js +0 -24
  107. package/src/_esm/core/UTXO/utxo-stack/actions/getBlockStats.js.map +0 -1
  108. package/src/_esm/core/UTXO/utxo-stack/actions/getUTXOTransaction.js +0 -21
  109. package/src/_esm/core/UTXO/utxo-stack/actions/getUTXOTransaction.js.map +0 -1
  110. package/src/_esm/core/UTXO/utxo-stack/actions/sendUTXOTransaction.js +0 -12
  111. package/src/_esm/core/UTXO/utxo-stack/actions/sendUTXOTransaction.js.map +0 -1
  112. package/src/_esm/core/UTXO/utxo-stack/actions/signPsbt.js +0 -8
  113. package/src/_esm/core/UTXO/utxo-stack/actions/signPsbt.js.map +0 -1
  114. package/src/_esm/core/UTXO/utxo-stack/actions/waitForTransaction.js +0 -230
  115. package/src/_esm/core/UTXO/utxo-stack/actions/waitForTransaction.js.map +0 -1
  116. package/src/_esm/core/UTXO/utxo-stack/actions/watchBlockNumber.js +0 -58
  117. package/src/_esm/core/UTXO/utxo-stack/actions/watchBlockNumber.js.map +0 -1
  118. package/src/_esm/core/UTXO/utxo-stack/clients/types.js +0 -2
  119. package/src/_esm/core/UTXO/utxo-stack/clients/types.js.map +0 -1
  120. package/src/_esm/core/UTXO/utxo-stack/decorators/UTXOAPIActions.js +0 -7
  121. package/src/_esm/core/UTXO/utxo-stack/decorators/UTXOAPIActions.js.map +0 -1
  122. package/src/_esm/core/UTXO/utxo-stack/decorators/UTXOActions.js +0 -11
  123. package/src/_esm/core/UTXO/utxo-stack/decorators/UTXOActions.js.map +0 -1
  124. package/src/_esm/core/UTXO/utxo-stack/transports/utxo/ankr.js +0 -18
  125. package/src/_esm/core/UTXO/utxo-stack/transports/utxo/ankr.js.map +0 -1
  126. package/src/_esm/core/UTXO/utxo-stack/transports/utxo/blockchair.js +0 -21
  127. package/src/_esm/core/UTXO/utxo-stack/transports/utxo/blockchair.js.map +0 -1
  128. package/src/_esm/core/UTXO/utxo-stack/transports/utxo/blockcypher.js +0 -18
  129. package/src/_esm/core/UTXO/utxo-stack/transports/utxo/blockcypher.js.map +0 -1
  130. package/src/_esm/core/UTXO/utxo-stack/transports/utxo/getHttpRpcClient.js +0 -74
  131. package/src/_esm/core/UTXO/utxo-stack/transports/utxo/getHttpRpcClient.js.map +0 -1
  132. package/src/_esm/core/UTXO/utxo-stack/transports/utxo/getRpcProviderMethods.js +0 -19
  133. package/src/_esm/core/UTXO/utxo-stack/transports/utxo/getRpcProviderMethods.js.map +0 -1
  134. package/src/_esm/core/UTXO/utxo-stack/transports/utxo/mempool.js +0 -14
  135. package/src/_esm/core/UTXO/utxo-stack/transports/utxo/mempool.js.map +0 -1
  136. package/src/_esm/core/UTXO/utxo-stack/transports/utxo/types.js +0 -2
  137. package/src/_esm/core/UTXO/utxo-stack/transports/utxo/types.js.map +0 -1
  138. package/src/_esm/core/UTXO/utxo-stack/transports/utxo/utxo.js +0 -53
  139. package/src/_esm/core/UTXO/utxo-stack/transports/utxo/utxo.js.map +0 -1
  140. package/src/_esm/core/UTXO/utxo-stack/types/blockStats.js +0 -2
  141. package/src/_esm/core/UTXO/utxo-stack/types/blockStats.js.map +0 -1
  142. package/src/_esm/core/UTXO/utxo-stack/types/transaction.js +0 -2
  143. package/src/_esm/core/UTXO/utxo-stack/types/transaction.js.map +0 -1
  144. package/src/_esm/core/UTXO/utxo-stack/utils/cancelTransaction.js +0 -55
  145. package/src/_esm/core/UTXO/utxo-stack/utils/cancelTransaction.js.map +0 -1
  146. package/src/_esm/core/UTXO/utxo-stack/utils/modifyFee.js +0 -53
  147. package/src/_esm/core/UTXO/utxo-stack/utils/modifyFee.js.map +0 -1
  148. package/src/_esm/core/UTXO/utxo-stack/utils/observe.js +0 -51
  149. package/src/_esm/core/UTXO/utxo-stack/utils/observe.js.map +0 -1
  150. package/src/_esm/core/UTXO/utxo-stack/utils/poll.js +0 -30
  151. package/src/_esm/core/UTXO/utxo-stack/utils/poll.js.map +0 -1
  152. package/src/_types/core/UTXO/isUTXOAddress.d.ts +0 -21
  153. package/src/_types/core/UTXO/isUTXOAddress.d.ts.map +0 -1
  154. package/src/_types/core/UTXO/utxo-stack/actions/getBalance.d.ts +0 -9
  155. package/src/_types/core/UTXO/utxo-stack/actions/getBalance.d.ts.map +0 -1
  156. package/src/_types/core/UTXO/utxo-stack/actions/getBlock.d.ts +0 -13
  157. package/src/_types/core/UTXO/utxo-stack/actions/getBlock.d.ts.map +0 -1
  158. package/src/_types/core/UTXO/utxo-stack/actions/getBlockCount.d.ts +0 -5
  159. package/src/_types/core/UTXO/utxo-stack/actions/getBlockCount.d.ts.map +0 -1
  160. package/src/_types/core/UTXO/utxo-stack/actions/getBlockStats.d.ts +0 -15
  161. package/src/_types/core/UTXO/utxo-stack/actions/getBlockStats.d.ts.map +0 -1
  162. package/src/_types/core/UTXO/utxo-stack/actions/getUTXOTransaction.d.ts +0 -12
  163. package/src/_types/core/UTXO/utxo-stack/actions/getUTXOTransaction.d.ts.map +0 -1
  164. package/src/_types/core/UTXO/utxo-stack/actions/sendUTXOTransaction.d.ts +0 -11
  165. package/src/_types/core/UTXO/utxo-stack/actions/sendUTXOTransaction.d.ts.map +0 -1
  166. package/src/_types/core/UTXO/utxo-stack/actions/signPsbt.d.ts +0 -4
  167. package/src/_types/core/UTXO/utxo-stack/actions/signPsbt.d.ts.map +0 -1
  168. package/src/_types/core/UTXO/utxo-stack/actions/waitForTransaction.d.ts +0 -76
  169. package/src/_types/core/UTXO/utxo-stack/actions/waitForTransaction.d.ts.map +0 -1
  170. package/src/_types/core/UTXO/utxo-stack/actions/watchBlockNumber.d.ts +0 -26
  171. package/src/_types/core/UTXO/utxo-stack/actions/watchBlockNumber.d.ts.map +0 -1
  172. package/src/_types/core/UTXO/utxo-stack/clients/types.d.ts +0 -44
  173. package/src/_types/core/UTXO/utxo-stack/clients/types.d.ts.map +0 -1
  174. package/src/_types/core/UTXO/utxo-stack/decorators/UTXOAPIActions.d.ts +0 -7
  175. package/src/_types/core/UTXO/utxo-stack/decorators/UTXOAPIActions.d.ts.map +0 -1
  176. package/src/_types/core/UTXO/utxo-stack/decorators/UTXOActions.d.ts +0 -11
  177. package/src/_types/core/UTXO/utxo-stack/decorators/UTXOActions.d.ts.map +0 -1
  178. package/src/_types/core/UTXO/utxo-stack/transports/utxo/ankr.d.ts +0 -3
  179. package/src/_types/core/UTXO/utxo-stack/transports/utxo/ankr.d.ts.map +0 -1
  180. package/src/_types/core/UTXO/utxo-stack/transports/utxo/blockchair.d.ts +0 -3
  181. package/src/_types/core/UTXO/utxo-stack/transports/utxo/blockchair.d.ts.map +0 -1
  182. package/src/_types/core/UTXO/utxo-stack/transports/utxo/blockcypher.d.ts +0 -3
  183. package/src/_types/core/UTXO/utxo-stack/transports/utxo/blockcypher.d.ts.map +0 -1
  184. package/src/_types/core/UTXO/utxo-stack/transports/utxo/getHttpRpcClient.d.ts +0 -25
  185. package/src/_types/core/UTXO/utxo-stack/transports/utxo/getHttpRpcClient.d.ts.map +0 -1
  186. package/src/_types/core/UTXO/utxo-stack/transports/utxo/getRpcProviderMethods.d.ts +0 -3
  187. package/src/_types/core/UTXO/utxo-stack/transports/utxo/getRpcProviderMethods.d.ts.map +0 -1
  188. package/src/_types/core/UTXO/utxo-stack/transports/utxo/mempool.d.ts +0 -3
  189. package/src/_types/core/UTXO/utxo-stack/transports/utxo/mempool.d.ts.map +0 -1
  190. package/src/_types/core/UTXO/utxo-stack/transports/utxo/types.d.ts +0 -61
  191. package/src/_types/core/UTXO/utxo-stack/transports/utxo/types.d.ts.map +0 -1
  192. package/src/_types/core/UTXO/utxo-stack/transports/utxo/utxo.d.ts +0 -7
  193. package/src/_types/core/UTXO/utxo-stack/transports/utxo/utxo.d.ts.map +0 -1
  194. package/src/_types/core/UTXO/utxo-stack/types/blockStats.d.ts +0 -35
  195. package/src/_types/core/UTXO/utxo-stack/types/blockStats.d.ts.map +0 -1
  196. package/src/_types/core/UTXO/utxo-stack/types/transaction.d.ts +0 -42
  197. package/src/_types/core/UTXO/utxo-stack/types/transaction.d.ts.map +0 -1
  198. package/src/_types/core/UTXO/utxo-stack/utils/cancelTransaction.d.ts +0 -3
  199. package/src/_types/core/UTXO/utxo-stack/utils/cancelTransaction.d.ts.map +0 -1
  200. package/src/_types/core/UTXO/utxo-stack/utils/modifyFee.d.ts +0 -3
  201. package/src/_types/core/UTXO/utxo-stack/utils/modifyFee.d.ts.map +0 -1
  202. package/src/_types/core/UTXO/utxo-stack/utils/observe.d.ts +0 -19
  203. package/src/_types/core/UTXO/utxo-stack/utils/observe.d.ts.map +0 -1
  204. package/src/_types/core/UTXO/utxo-stack/utils/poll.d.ts +0 -13
  205. package/src/_types/core/UTXO/utxo-stack/utils/poll.d.ts.map +0 -1
  206. package/src/core/UTXO/isUTXOAddress.ts +0 -165
  207. package/src/core/UTXO/utxo-stack/actions/getBalance.ts +0 -26
  208. package/src/core/UTXO/utxo-stack/actions/getBlock.ts +0 -58
  209. package/src/core/UTXO/utxo-stack/actions/getBlockCount.ts +0 -20
  210. package/src/core/UTXO/utxo-stack/actions/getBlockStats.ts +0 -55
  211. package/src/core/UTXO/utxo-stack/actions/getUTXOTransaction.ts +0 -43
  212. package/src/core/UTXO/utxo-stack/actions/sendUTXOTransaction.ts +0 -29
  213. package/src/core/UTXO/utxo-stack/actions/signPsbt.ts +0 -23
  214. package/src/core/UTXO/utxo-stack/actions/waitForTransaction.ts +0 -387
  215. package/src/core/UTXO/utxo-stack/actions/watchBlockNumber.ts +0 -105
  216. package/src/core/UTXO/utxo-stack/clients/types.ts +0 -48
  217. package/src/core/UTXO/utxo-stack/decorators/UTXOAPIActions.ts +0 -20
  218. package/src/core/UTXO/utxo-stack/decorators/UTXOActions.ts +0 -37
  219. package/src/core/UTXO/utxo-stack/transports/utxo/ankr.ts +0 -30
  220. package/src/core/UTXO/utxo-stack/transports/utxo/blockchair.ts +0 -27
  221. package/src/core/UTXO/utxo-stack/transports/utxo/blockcypher.ts +0 -32
  222. package/src/core/UTXO/utxo-stack/transports/utxo/getHttpRpcClient.ts +0 -122
  223. package/src/core/UTXO/utxo-stack/transports/utxo/getRpcProviderMethods.ts +0 -22
  224. package/src/core/UTXO/utxo-stack/transports/utxo/mempool.ts +0 -34
  225. package/src/core/UTXO/utxo-stack/transports/utxo/types.ts +0 -71
  226. package/src/core/UTXO/utxo-stack/transports/utxo/utxo.ts +0 -84
  227. package/src/core/UTXO/utxo-stack/types/blockStats.ts +0 -35
  228. package/src/core/UTXO/utxo-stack/types/transaction.ts +0 -43
  229. package/src/core/UTXO/utxo-stack/utils/cancelTransaction.ts +0 -75
  230. package/src/core/UTXO/utxo-stack/utils/modifyFee.ts +0 -78
  231. package/src/core/UTXO/utxo-stack/utils/observe.ts +0 -81
  232. package/src/core/UTXO/utxo-stack/utils/poll.ts +0 -48
@@ -1,3 +1,3 @@
1
1
  export declare const name = "@lifi/sdk";
2
- export declare const version = "3.3.0-beta.2";
2
+ export declare const version = "3.3.0-beta.4";
3
3
  //# sourceMappingURL=version.d.ts.map
@@ -159,6 +159,18 @@ export class SolanaStepExecutor extends BaseStepExecutor {
159
159
  }
160
160
  )
161
161
 
162
+ async function bufferToBase64(buffer: any) {
163
+ const base64url = (await new Promise((r) => {
164
+ const reader = new FileReader()
165
+ reader.onload = () => r(reader.result)
166
+ reader.readAsDataURL(new Blob([buffer]))
167
+ })) as any
168
+ return base64url.slice(base64url.indexOf(',') + 1)
169
+ }
170
+
171
+ const _s = await bufferToBase64(signedTx.serialize())
172
+ console.log(_s)
173
+
162
174
  process = this.statusManager.updateProcess(
163
175
  step,
164
176
  process.type,
@@ -1,8 +1,8 @@
1
+ import { isUTXOAddress } from '@bigmi/core'
1
2
  import { ChainType } from '@lifi/types'
2
3
  import type { StepExecutorOptions } from '../types.js'
3
4
  import { UTXOStepExecutor } from './UTXOStepExecutor.js'
4
5
  import { getUTXOBalance } from './getUTXOBalance.js'
5
- import { isUTXOAddress } from './isUTXOAddress.js'
6
6
  import type { UTXOProvider, UTXOProviderOptions } from './types.js'
7
7
 
8
8
  export function UTXO(options?: UTXOProviderOptions): UTXOProvider {
@@ -1,3 +1,5 @@
1
+ import { signPsbt, waitForTransaction } from '@bigmi/core'
2
+ import type { ReplacementReason } from '@bigmi/core'
1
3
  import {
2
4
  ChainId,
3
5
  type ExtendedTransactionInfo,
@@ -22,11 +24,6 @@ import type {
22
24
  import { waitForReceivingTransaction } from '../waitForReceivingTransaction.js'
23
25
  import { getUTXOPublicClient } from './getUTXOPublicClient.js'
24
26
  import { parseUTXOErrors } from './parseUTXOErrors.js'
25
- import { signPsbt } from './utxo-stack/actions/signPsbt.js'
26
- import {
27
- type ReplacementReason,
28
- waitForTransaction,
29
- } from './utxo-stack/actions/waitForTransaction.js'
30
27
 
31
28
  export interface UTXOStepExecutorOptions extends StepExecutorOptions {
32
29
  client: Client
@@ -1,3 +1,6 @@
1
+ import { UTXOAPIActions } from '@bigmi/core'
2
+ import type { UTXOAPISchema } from '@bigmi/core'
3
+ import { utxo } from '@bigmi/core'
1
4
  import {
2
5
  type Chain,
3
6
  type Client,
@@ -8,9 +11,6 @@ import {
8
11
  rpcSchema,
9
12
  } from 'viem'
10
13
  import { config } from '../../config.js'
11
- import { UTXOAPIActions } from './utxo-stack/decorators/UTXOAPIActions.js'
12
- import type { UTXOAPISchema } from './utxo-stack/transports/utxo/types.js'
13
- import { utxo } from './utxo-stack/transports/utxo/utxo.js'
14
14
 
15
15
  // cached providers
16
16
  const publicAPIClients: Record<
@@ -1,3 +1,5 @@
1
+ import { UTXOActions } from '@bigmi/core'
2
+ import type { UTXOSchema } from '@bigmi/core'
1
3
  import {
2
4
  http,
3
5
  type Chain,
@@ -10,8 +12,6 @@ import {
10
12
  } from 'viem'
11
13
  import { config } from '../../config.js'
12
14
  import { getRpcUrls } from '../rpc.js'
13
- import { UTXOActions } from './utxo-stack/decorators/UTXOActions.js'
14
- import type { UTXOSchema } from './utxo-stack/transports/utxo/types.js'
15
15
 
16
16
  // cached providers
17
17
  const publicClients: Record<
package/src/index.ts CHANGED
@@ -53,14 +53,6 @@ export {
53
53
  KeypairWalletName,
54
54
  } from './core/Solana/KeypairWalletAdapter.js'
55
55
  export { Solana } from './core/Solana/Solana.js'
56
- export { isUTXOAddress } from './core/UTXO/isUTXOAddress.js'
57
- export type {
58
- BtcAccount,
59
- SignPsbtParameters,
60
- SignPsbtReturnType,
61
- UTXOWalletProvider,
62
- UTXOWalletSchema,
63
- } from './core/UTXO/utxo-stack/clients/types.js'
64
56
  export { UTXO } from './core/UTXO/UTXO.js'
65
57
  export { createConfig } from './createConfig.js'
66
58
  export {
package/src/version.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  export const name = '@lifi/sdk'
2
- export const version = '3.3.0-beta.2'
2
+ export const version = '3.3.0-beta.4'
@@ -1,133 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isUTXOAddress = exports.getUTXOAddress = exports.UTXOAddressType = exports.UTXONetwork = void 0;
4
- const sha256_1 = require("@noble/hashes/sha256");
5
- const bech32_1 = require("bech32");
6
- const bs58_1 = require("bs58");
7
- var UTXONetwork;
8
- (function (UTXONetwork) {
9
- UTXONetwork["Mainnet"] = "mainnet";
10
- UTXONetwork["Testnet"] = "testnet";
11
- UTXONetwork["Regtest"] = "regtest";
12
- })(UTXONetwork || (exports.UTXONetwork = UTXONetwork = {}));
13
- var UTXOAddressType;
14
- (function (UTXOAddressType) {
15
- UTXOAddressType["p2pkh"] = "p2pkh";
16
- UTXOAddressType["p2sh"] = "p2sh";
17
- UTXOAddressType["p2wpkh"] = "p2wpkh";
18
- UTXOAddressType["p2wsh"] = "p2wsh";
19
- UTXOAddressType["p2tr"] = "p2tr";
20
- })(UTXOAddressType || (exports.UTXOAddressType = UTXOAddressType = {}));
21
- const addressTypes = {
22
- 0: {
23
- type: UTXOAddressType.p2pkh,
24
- network: UTXONetwork.Mainnet,
25
- },
26
- 111: {
27
- type: UTXOAddressType.p2pkh,
28
- network: UTXONetwork.Testnet,
29
- },
30
- 5: {
31
- type: UTXOAddressType.p2sh,
32
- network: UTXONetwork.Mainnet,
33
- },
34
- 196: {
35
- type: UTXOAddressType.p2sh,
36
- network: UTXONetwork.Testnet,
37
- },
38
- };
39
- const parseBech32 = (address) => {
40
- let decoded;
41
- try {
42
- if (address.startsWith('bc1p') ||
43
- address.startsWith('tb1p') ||
44
- address.startsWith('bcrt1p')) {
45
- decoded = bech32_1.bech32m.decode(address);
46
- }
47
- else {
48
- decoded = bech32_1.bech32.decode(address);
49
- }
50
- }
51
- catch (_error) {
52
- throw new Error('Invalid address');
53
- }
54
- const mapPrefixToNetwork = {
55
- bc: UTXONetwork.Mainnet,
56
- tb: UTXONetwork.Testnet,
57
- bcrt: UTXONetwork.Regtest,
58
- };
59
- const network = mapPrefixToNetwork[decoded.prefix];
60
- if (network === undefined) {
61
- throw new Error('Invalid address');
62
- }
63
- const witnessVersion = decoded.words[0];
64
- if (witnessVersion < 0 || witnessVersion > 16) {
65
- throw new Error('Invalid address');
66
- }
67
- const data = bech32_1.bech32.fromWords(decoded.words.slice(1));
68
- let type;
69
- if (data.length === 20) {
70
- type = UTXOAddressType.p2wpkh;
71
- }
72
- else if (witnessVersion === 1) {
73
- type = UTXOAddressType.p2tr;
74
- }
75
- else {
76
- type = UTXOAddressType.p2wsh;
77
- }
78
- return {
79
- bech32: true,
80
- network,
81
- address,
82
- type,
83
- };
84
- };
85
- const getUTXOAddress = (address) => {
86
- let decoded;
87
- const prefix = address.substring(0, 2).toLowerCase();
88
- if (prefix === 'bc' || prefix === 'tb') {
89
- return parseBech32(address);
90
- }
91
- try {
92
- decoded = bs58_1.default.decode(address);
93
- }
94
- catch (_error) {
95
- throw new Error('Invalid address');
96
- }
97
- const { length } = decoded;
98
- if (length !== 25) {
99
- throw new Error('Invalid address');
100
- }
101
- const version = decoded[0];
102
- const checksum = decoded.slice(length - 4, length);
103
- const body = decoded.slice(0, length - 4);
104
- const expectedChecksum = (0, sha256_1.sha256)((0, sha256_1.sha256)(body)).slice(0, 4);
105
- if (checksum.some((value, index) => value !== expectedChecksum[index])) {
106
- throw new Error('Invalid address');
107
- }
108
- const validVersions = Object.keys(addressTypes).map(Number);
109
- if (!validVersions.includes(version)) {
110
- throw new Error('Invalid address');
111
- }
112
- const addressType = addressTypes[version];
113
- return {
114
- ...addressType,
115
- address,
116
- bech32: false,
117
- };
118
- };
119
- exports.getUTXOAddress = getUTXOAddress;
120
- const isUTXOAddress = (address, network) => {
121
- try {
122
- const utxoAddress = (0, exports.getUTXOAddress)(address);
123
- if (network) {
124
- return network === utxoAddress.network;
125
- }
126
- return true;
127
- }
128
- catch (_error) {
129
- return false;
130
- }
131
- };
132
- exports.isUTXOAddress = isUTXOAddress;
133
- //# sourceMappingURL=isUTXOAddress.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"isUTXOAddress.js","sourceRoot":"","sources":["../../../core/UTXO/isUTXOAddress.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getBalance = getBalance;
4
- async function getBalance(client, params) {
5
- const data = await client.request({
6
- method: 'getBalance',
7
- params,
8
- }, { dedupe: true });
9
- return data;
10
- }
11
- //# sourceMappingURL=getBalance.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getBalance.js","sourceRoot":"","sources":["../../../../../core/UTXO/utxo-stack/actions/getBalance.ts"],"names":[],"mappings":";;AAUA,gCAeC;AAfM,KAAK,UAAU,UAAU,CAI9B,MAA8C,EAC9C,MAA4B;IAE5B,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAC/B;QACE,MAAM,EAAE,YAAY;QACpB,MAAM;KACP,EACD,EAAE,MAAM,EAAE,IAAI,EAAE,CACjB,CAAA;IACD,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getBlock = getBlock;
4
- const bitcoinjs_lib_1 = require("bitcoinjs-lib");
5
- const viem_1 = require("viem");
6
- async function getBlock(client, { blockHash, blockNumber }) {
7
- let blockHex;
8
- try {
9
- let _blockHash = blockHash;
10
- if (!_blockHash && blockNumber) {
11
- _blockHash = await client.request({
12
- method: 'getblockhash',
13
- params: [blockNumber],
14
- }, { dedupe: true });
15
- }
16
- if (_blockHash) {
17
- blockHex = await client.request({
18
- method: 'getblock',
19
- params: [_blockHash, 0],
20
- }, { dedupe: true });
21
- }
22
- }
23
- catch (_error) {
24
- throw new viem_1.BlockNotFoundError({ blockHash, blockNumber });
25
- }
26
- if (!blockHex) {
27
- throw new viem_1.BlockNotFoundError({ blockHash, blockNumber });
28
- }
29
- return bitcoinjs_lib_1.Block.fromHex(blockHex);
30
- }
31
- //# sourceMappingURL=getBlock.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getBlock.js","sourceRoot":"","sources":["../../../../../core/UTXO/utxo-stack/actions/getBlock.ts"],"names":[],"mappings":";;AAsBA,4BAmCC;AAzDD,iDAAqC;AACrC,+BAMa;AAeN,KAAK,UAAU,QAAQ,CAI5B,MAA2C,EAC3C,EAAE,SAAS,EAAE,WAAW,EAAsB;IAE9C,IAAI,QAA4B,CAAA;IAChC,IAAI,CAAC;QACH,IAAI,UAAU,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,UAAU,IAAI,WAAW,EAAE,CAAC;YAC/B,UAAU,GAAG,MAAM,MAAM,CAAC,OAAO,CAC/B;gBACE,MAAM,EAAE,cAAc;gBACtB,MAAM,EAAE,CAAC,WAAW,CAAC;aACtB,EACD,EAAE,MAAM,EAAE,IAAI,EAAE,CACjB,CAAA;QACH,CAAC;QACD,IAAI,UAAU,EAAE,CAAC;YACf,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAC7B;gBACE,MAAM,EAAE,UAAU;gBAClB,MAAM,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC;aACxB,EACD,EAAE,MAAM,EAAE,IAAI,EAAE,CACjB,CAAA;QACH,CAAC;IACH,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QAChB,MAAM,IAAI,yBAAkB,CAAC,EAAE,SAAS,EAAE,WAAW,EAAW,CAAC,CAAA;IACnE,CAAC;IACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,yBAAkB,CAAC,EAAE,SAAS,EAAE,WAAW,EAAW,CAAC,CAAA;IACnE,CAAC;IACD,OAAO,qBAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;AAChC,CAAC"}
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getBlockCount = getBlockCount;
4
- async function getBlockCount(client) {
5
- const data = await client.request({
6
- method: 'getblockcount',
7
- params: [],
8
- }, { dedupe: true });
9
- return data;
10
- }
11
- //# sourceMappingURL=getBlockCount.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getBlockCount.js","sourceRoot":"","sources":["../../../../../core/UTXO/utxo-stack/actions/getBlockCount.ts"],"names":[],"mappings":";;AAKA,sCAcC;AAdM,KAAK,UAAU,aAAa,CAIjC,MAA2C;IAE3C,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAC/B;QACE,MAAM,EAAE,eAAe;QACvB,MAAM,EAAE,EAAE;KACX,EACD,EAAE,MAAM,EAAE,IAAI,EAAE,CACjB,CAAA;IACD,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getBlockStats = getBlockStats;
4
- const viem_1 = require("viem");
5
- async function getBlockStats(client, { blockHash, blockNumber, stats }) {
6
- const blockHashOrNumber = blockHash || blockNumber;
7
- if (!blockHashOrNumber) {
8
- throw new viem_1.BlockNotFoundError({ blockHash, blockNumber });
9
- }
10
- try {
11
- const params = [
12
- blockHashOrNumber,
13
- ];
14
- if (stats) {
15
- params.push(stats);
16
- }
17
- const data = await client.request({
18
- method: 'getblockstats',
19
- params: params,
20
- }, { dedupe: true });
21
- return data;
22
- }
23
- catch (_error) {
24
- throw new viem_1.BlockNotFoundError({ blockHash, blockNumber });
25
- }
26
- }
27
- //# sourceMappingURL=getBlockStats.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getBlockStats.js","sourceRoot":"","sources":["../../../../../core/UTXO/utxo-stack/actions/getBlockStats.ts"],"names":[],"mappings":";;AAyBA,sCA6BC;AAtDD,+BAMa;AAmBN,KAAK,UAAU,aAAa,CAIjC,MAA2C,EAC3C,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAA2B;IAE1D,MAAM,iBAAiB,GAAG,SAAS,IAAI,WAAW,CAAA;IAClD,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,MAAM,IAAI,yBAAkB,CAAC,EAAE,SAAS,EAAE,WAAW,EAAW,CAAC,CAAA;IACnE,CAAC;IACD,IAAI,CAAC;QACH,MAAM,MAAM,GAA8C;YACxD,iBAAiB;SAClB,CAAA;QACD,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACpB,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAC/B;YACE,MAAM,EAAE,eAAe;YACvB,MAAM,EAAE,MAAM;SACf,EACD,EAAE,MAAM,EAAE,IAAI,EAAE,CACjB,CAAA;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QAChB,MAAM,IAAI,yBAAkB,CAAC,EAAE,SAAS,EAAE,WAAW,EAAW,CAAC,CAAA;IACnE,CAAC;AACH,CAAC"}
@@ -1,24 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getUTXOTransaction = getUTXOTransaction;
4
- const viem_1 = require("viem");
5
- async function getUTXOTransaction(client, { txId, blockHash }) {
6
- try {
7
- const params = [txId, true];
8
- if (blockHash) {
9
- params.push(blockHash);
10
- }
11
- const data = await client.request({
12
- method: 'getrawtransaction',
13
- params: params,
14
- });
15
- return data;
16
- }
17
- catch (_error) {
18
- throw new viem_1.TransactionNotFoundError({
19
- blockHash: blockHash,
20
- hash: txId,
21
- });
22
- }
23
- }
24
- //# sourceMappingURL=getUTXOTransaction.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getUTXOTransaction.js","sourceRoot":"","sources":["../../../../../core/UTXO/utxo-stack/actions/getUTXOTransaction.ts"],"names":[],"mappings":";;AAmBA,gDAuBC;AA1CD,+BAMa;AAaN,KAAK,UAAU,kBAAkB,CAItC,MAA2C,EAC3C,EAAE,IAAI,EAAE,SAAS,EAAgC;IAEjD,IAAI,CAAC;QACH,MAAM,MAAM,GAA+B,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QACvD,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACxB,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;YAChC,MAAM,EAAE,mBAAmB;YAC3B,MAAM,EAAE,MAAM;SACf,CAAC,CAAA;QACF,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QAChB,MAAM,IAAI,+BAAwB,CAAC;YACjC,SAAS,EAAE,SAAkB;YAC7B,IAAI,EAAE,IAAa;SACpB,CAAC,CAAA;IACJ,CAAC;AACH,CAAC"}
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.sendUTXOTransaction = sendUTXOTransaction;
4
- async function sendUTXOTransaction(client, { hex, maxFeeRate }) {
5
- const params = [hex];
6
- if (maxFeeRate) {
7
- params.push(maxFeeRate);
8
- }
9
- const data = await client.request({
10
- method: 'sendrawtransaction',
11
- params: params,
12
- });
13
- return data;
14
- }
15
- //# sourceMappingURL=sendUTXOTransaction.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sendUTXOTransaction.js","sourceRoot":"","sources":["../../../../../core/UTXO/utxo-stack/actions/sendUTXOTransaction.ts"],"names":[],"mappings":";;AAYA,kDAgBC;AAhBM,KAAK,UAAU,mBAAmB,CAIvC,MAA2C,EAC3C,EAAE,GAAG,EAAE,UAAU,EAAiC;IAElD,MAAM,MAAM,GAAsB,CAAC,GAAG,CAAC,CAAA;IACvC,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IACzB,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAChC,MAAM,EAAE,oBAAoB;QAC5B,MAAM,EAAE,MAAM;KACf,CAAC,CAAA;IACF,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.signPsbt = signPsbt;
4
- async function signPsbt(client, params) {
5
- const data = await client.request({
6
- method: 'signPsbt',
7
- params: params,
8
- }, { dedupe: true });
9
- return data;
10
- }
11
- //# sourceMappingURL=signPsbt.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"signPsbt.js","sourceRoot":"","sources":["../../../../../core/UTXO/utxo-stack/actions/signPsbt.ts"],"names":[],"mappings":";;AAOA,4BAeC;AAfM,KAAK,UAAU,QAAQ,CAI5B,MAAiD,EACjD,MAA0B;IAE1B,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAC/B;QACE,MAAM,EAAE,UAAU;QAClB,MAAM,EAAE,MAAM;KACf,EACD,EAAE,MAAM,EAAE,IAAI,EAAE,CACjB,CAAA;IACD,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -1,185 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.waitForTransaction = waitForTransaction;
4
- const bitcoinjs_lib_1 = require("bitcoinjs-lib");
5
- const viem_1 = require("viem");
6
- const utils_1 = require("viem/utils");
7
- const observe_js_1 = require("../utils/observe.js");
8
- const getBlock_js_1 = require("./getBlock.js");
9
- const getBlockStats_js_1 = require("./getBlockStats.js");
10
- const getUTXOTransaction_js_1 = require("./getUTXOTransaction.js");
11
- const watchBlockNumber_js_1 = require("./watchBlockNumber.js");
12
- async function waitForTransaction(client, { confirmations = 1, txId, txHex, senderAddress, onReplaced, pollingInterval = client.pollingInterval, retryCount = 10, retryDelay = 3_000, timeout, }) {
13
- const observerId = (0, viem_1.stringify)(['waitForTransaction', client.uid, txId]);
14
- let count = 0;
15
- let transaction;
16
- let replacedTransaction;
17
- let retrying = false;
18
- return new Promise((resolve, reject) => {
19
- if (timeout) {
20
- setTimeout(() => reject(new viem_1.WaitForTransactionReceiptTimeoutError({ hash: txId })), timeout);
21
- }
22
- const _unobserve = (0, observe_js_1.observe)(observerId, { onReplaced, resolve, reject }, (emit) => {
23
- const _unwatch = (0, utils_1.getAction)(client, watchBlockNumber_js_1.watchBlockNumber, 'watchBlockNumber')({
24
- emitMissed: true,
25
- emitOnBegin: true,
26
- pollingInterval,
27
- async onBlockNumber(blockNumber_) {
28
- const done = (fn) => {
29
- _unwatch();
30
- fn();
31
- _unobserve();
32
- };
33
- let blockNumber = blockNumber_;
34
- if (retrying) {
35
- return;
36
- }
37
- if (count > retryCount) {
38
- done(() => emit.reject(new viem_1.WaitForTransactionReceiptTimeoutError({
39
- hash: txId,
40
- })));
41
- }
42
- try {
43
- if (transaction?.blockhash) {
44
- const blockStats = await (0, utils_1.getAction)(client, getBlockStats_js_1.getBlockStats, 'getBlockStats')({
45
- blockHash: transaction.blockhash,
46
- stats: ['height'],
47
- });
48
- if (confirmations > 1 &&
49
- (!blockStats.height ||
50
- blockNumber - blockStats.height + 1 < confirmations)) {
51
- return;
52
- }
53
- done(() => emit.resolve(transaction));
54
- return;
55
- }
56
- retrying = true;
57
- transaction = await (0, viem_1.withRetry)(() => (0, utils_1.getAction)(client, getUTXOTransaction_js_1.getUTXOTransaction, 'getUTXOTransaction')({ txId: transaction?.txid || txId }), {
58
- delay: retryDelay,
59
- retryCount,
60
- });
61
- if (transaction.blockhash) {
62
- const blockStats = await (0, utils_1.getAction)(client, getBlockStats_js_1.getBlockStats, 'getBlockStats')({
63
- blockHash: transaction.blockhash,
64
- stats: ['height'],
65
- });
66
- if (blockStats.height) {
67
- blockNumber = blockStats.height;
68
- }
69
- }
70
- retrying = false;
71
- if (!transaction?.confirmations) {
72
- throw new viem_1.TransactionReceiptNotFoundError({
73
- hash: txId,
74
- });
75
- }
76
- if (transaction.confirmations < confirmations) {
77
- return;
78
- }
79
- done(() => emit.resolve(transaction));
80
- }
81
- catch (err) {
82
- if (err instanceof viem_1.TransactionNotFoundError ||
83
- err instanceof viem_1.TransactionReceiptNotFoundError) {
84
- try {
85
- replacedTransaction = bitcoinjs_lib_1.Transaction.fromHex(transaction?.hex || txHex);
86
- retrying = true;
87
- const block = await (0, viem_1.withRetry)(() => (0, utils_1.getAction)(client, getBlock_js_1.getBlock, 'getBlock')({
88
- blockNumber,
89
- }), {
90
- delay: retryDelay,
91
- retryCount,
92
- });
93
- retrying = false;
94
- const replacedTransactionInputs = new Set();
95
- for (const input of replacedTransaction.ins) {
96
- const txid = Array.from(input.hash)
97
- .reverse()
98
- .map((byte) => `00${byte.toString(16)}`.slice(-2))
99
- .join('');
100
- const vout = input.index;
101
- const inputId = `${txid}:${vout}`;
102
- replacedTransactionInputs.add(inputId);
103
- }
104
- let replacementTransaction;
105
- for (const tx of block.transactions) {
106
- if (tx.isCoinbase()) {
107
- continue;
108
- }
109
- for (const input of tx.ins) {
110
- const txid = Array.from(input.hash)
111
- .reverse()
112
- .map((byte) => `00${byte.toString(16)}`.slice(-2))
113
- .join('');
114
- const vout = input.index;
115
- const inputId = `${txid}:${vout}`;
116
- if (replacedTransactionInputs.has(inputId)) {
117
- replacementTransaction = tx;
118
- break;
119
- }
120
- }
121
- if (replacementTransaction) {
122
- break;
123
- }
124
- }
125
- if (!replacementTransaction) {
126
- return;
127
- }
128
- transaction = await (0, utils_1.getAction)(client, getUTXOTransaction_js_1.getUTXOTransaction, 'getUTXOTransaction')({
129
- txId: replacementTransaction.getId(),
130
- });
131
- if (transaction.confirmations &&
132
- transaction.confirmations < confirmations) {
133
- return;
134
- }
135
- let reason = 'replaced';
136
- function getOutputAddresses(tx) {
137
- const addresses = [];
138
- for (const output of tx.outs) {
139
- try {
140
- const outputAddress = bitcoinjs_lib_1.address.fromOutputScript(output.script);
141
- addresses.push(outputAddress);
142
- }
143
- catch (_e) {
144
- }
145
- }
146
- return addresses;
147
- }
148
- const originalOutputAddresses = getOutputAddresses(replacedTransaction);
149
- const replacementOutputAddresses = getOutputAddresses(replacementTransaction);
150
- if (originalOutputAddresses.length ===
151
- replacementOutputAddresses.length &&
152
- originalOutputAddresses.every((address) => replacementOutputAddresses.includes(address))) {
153
- reason = 'repriced';
154
- }
155
- else if (senderAddress &&
156
- replacementOutputAddresses.length === 1 &&
157
- replacementOutputAddresses.includes(senderAddress)) {
158
- reason = 'cancelled';
159
- }
160
- done(() => {
161
- emit.onReplaced?.({
162
- reason,
163
- replacedTransaction: replacedTransaction,
164
- transaction: transaction,
165
- });
166
- emit.resolve(transaction);
167
- });
168
- }
169
- catch (err_) {
170
- done(() => emit.reject(err_));
171
- }
172
- }
173
- else {
174
- done(() => emit.reject(err));
175
- }
176
- }
177
- finally {
178
- count++;
179
- }
180
- },
181
- });
182
- });
183
- });
184
- }
185
- //# sourceMappingURL=waitForTransaction.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"waitForTransaction.js","sourceRoot":"","sources":["../../../../../core/UTXO/utxo-stack/actions/waitForTransaction.ts"],"names":[],"mappings":"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"}