@getomnichain/omnichain 0.2.0 → 0.3.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 (582) hide show
  1. package/dist/cjs/abstract_gas_pricing.js +27 -0
  2. package/dist/cjs/abstract_gas_pricing.js.map +1 -0
  3. package/dist/cjs/address.factory.js +81 -0
  4. package/dist/cjs/address.factory.js.map +1 -0
  5. package/dist/cjs/address.js +17 -0
  6. package/dist/cjs/address.js.map +1 -0
  7. package/dist/cjs/address_field.decorator.js +37 -0
  8. package/dist/cjs/address_field.decorator.js.map +1 -0
  9. package/dist/cjs/chain.base.js +118 -0
  10. package/dist/cjs/chain.base.js.map +1 -0
  11. package/dist/cjs/chain_ids.js +205 -0
  12. package/dist/cjs/chain_ids.js.map +1 -0
  13. package/dist/cjs/errors.js +118 -0
  14. package/dist/cjs/errors.js.map +1 -0
  15. package/dist/cjs/evm/evm_address.js +63 -0
  16. package/dist/cjs/evm/evm_address.js.map +1 -0
  17. package/dist/cjs/evm/evm_chain.js +1109 -0
  18. package/dist/cjs/evm/evm_chain.js.map +1 -0
  19. package/dist/cjs/evm/evm_chains.js +530 -0
  20. package/dist/cjs/evm/evm_chains.js.map +1 -0
  21. package/dist/cjs/evm/evm_gas_estimate.js +76 -0
  22. package/dist/cjs/evm/evm_gas_estimate.js.map +1 -0
  23. package/dist/cjs/evm/evm_gas_pricing.js +62 -0
  24. package/dist/cjs/evm/evm_gas_pricing.js.map +1 -0
  25. package/dist/cjs/evm/evm_token.js +26 -0
  26. package/dist/cjs/evm/evm_token.js.map +1 -0
  27. package/dist/cjs/evm/evm_tokens.js +109 -0
  28. package/dist/cjs/evm/evm_tokens.js.map +1 -0
  29. package/dist/cjs/evm/evm_transaction_status.js +187 -0
  30. package/dist/cjs/evm/evm_transaction_status.js.map +1 -0
  31. package/dist/cjs/evm/index.js +26 -0
  32. package/dist/cjs/evm/index.js.map +1 -0
  33. package/dist/cjs/evm/unsigned_evm_transaction.js +34 -0
  34. package/dist/cjs/evm/unsigned_evm_transaction.js.map +1 -0
  35. package/dist/cjs/index.js +34 -0
  36. package/dist/cjs/index.js.map +1 -0
  37. package/dist/cjs/is_address.decorator.js +54 -0
  38. package/dist/cjs/is_address.decorator.js.map +1 -0
  39. package/dist/cjs/network_type.js +152 -0
  40. package/dist/cjs/network_type.js.map +1 -0
  41. package/dist/cjs/package.json +3 -0
  42. package/dist/cjs/priority.js +26 -0
  43. package/dist/cjs/priority.js.map +1 -0
  44. package/dist/cjs/solana/index.js +25 -0
  45. package/dist/cjs/solana/index.js.map +1 -0
  46. package/dist/cjs/solana/solana_address.js +49 -0
  47. package/dist/cjs/solana/solana_address.js.map +1 -0
  48. package/dist/cjs/solana/solana_chain.js +1305 -0
  49. package/dist/cjs/solana/solana_chain.js.map +1 -0
  50. package/dist/cjs/solana/solana_chains.js +88 -0
  51. package/dist/cjs/solana/solana_chains.js.map +1 -0
  52. package/dist/cjs/solana/solana_gas_pricing.js +30 -0
  53. package/dist/cjs/solana/solana_gas_pricing.js.map +1 -0
  54. package/dist/cjs/solana/solana_token.js +38 -0
  55. package/dist/cjs/solana/solana_token.js.map +1 -0
  56. package/dist/cjs/solana/solana_tokens.js +29 -0
  57. package/dist/cjs/solana/solana_tokens.js.map +1 -0
  58. package/dist/cjs/solana/solana_transaction_status.js +149 -0
  59. package/dist/cjs/solana/solana_transaction_status.js.map +1 -0
  60. package/dist/cjs/solana/unsigned_solana_transaction.js +63 -0
  61. package/dist/cjs/solana/unsigned_solana_transaction.js.map +1 -0
  62. package/dist/cjs/token.js +66 -0
  63. package/dist/cjs/token.js.map +1 -0
  64. package/dist/cjs/ton/index.js +18 -0
  65. package/dist/cjs/ton/index.js.map +1 -0
  66. package/dist/cjs/ton/ton_address.js +57 -0
  67. package/dist/cjs/ton/ton_address.js.map +1 -0
  68. package/dist/cjs/transaction_status.js +283 -0
  69. package/dist/cjs/transaction_status.js.map +1 -0
  70. package/dist/cjs/unsigned_transaction.js +13 -0
  71. package/dist/cjs/unsigned_transaction.js.map +1 -0
  72. package/dist/cjs/utxo/btc/btc_address.js +43 -0
  73. package/dist/cjs/utxo/btc/btc_address.js.map +1 -0
  74. package/dist/cjs/utxo/btc/btc_chain.js +66 -0
  75. package/dist/cjs/utxo/btc/btc_chain.js.map +1 -0
  76. package/dist/cjs/utxo/btc/btc_chains.js +49 -0
  77. package/dist/cjs/utxo/btc/btc_chains.js.map +1 -0
  78. package/dist/cjs/utxo/btc/btc_token.js +15 -0
  79. package/dist/cjs/utxo/btc/btc_token.js.map +1 -0
  80. package/dist/cjs/utxo/btc/index.js +30 -0
  81. package/dist/cjs/utxo/btc/index.js.map +1 -0
  82. package/dist/cjs/utxo/btc/network_params.js +196 -0
  83. package/dist/cjs/utxo/btc/network_params.js.map +1 -0
  84. package/dist/cjs/utxo/btc/tools/asset_outpoint.js +16 -0
  85. package/dist/cjs/utxo/btc/tools/asset_outpoint.js.map +1 -0
  86. package/dist/cjs/utxo/btc/tools/bitcoin_core.tool.js +179 -0
  87. package/dist/cjs/utxo/btc/tools/bitcoin_core.tool.js.map +1 -0
  88. package/dist/cjs/utxo/btc/tools/esplora.tool.js +120 -0
  89. package/dist/cjs/utxo/btc/tools/esplora.tool.js.map +1 -0
  90. package/dist/cjs/utxo/btc/tools/inscription_index.js +3 -0
  91. package/dist/cjs/utxo/btc/tools/inscription_index.js.map +1 -0
  92. package/dist/cjs/utxo/btc/tools/ordiscan.tool.js +60 -0
  93. package/dist/cjs/utxo/btc/tools/ordiscan.tool.js.map +1 -0
  94. package/dist/cjs/utxo/btc/tools/rare_sat_index.js +3 -0
  95. package/dist/cjs/utxo/btc/tools/rare_sat_index.js.map +1 -0
  96. package/dist/cjs/utxo/btc/tools/rune_index.js +3 -0
  97. package/dist/cjs/utxo/btc/tools/rune_index.js.map +1 -0
  98. package/dist/cjs/utxo/btc/tools/unisat.tool.js +56 -0
  99. package/dist/cjs/utxo/btc/tools/unisat.tool.js.map +1 -0
  100. package/dist/cjs/utxo/coin_selection.js +160 -0
  101. package/dist/cjs/utxo/coin_selection.js.map +1 -0
  102. package/dist/cjs/utxo/doge/doge_chains.js +32 -0
  103. package/dist/cjs/utxo/doge/doge_chains.js.map +1 -0
  104. package/dist/cjs/utxo/doge/index.js +19 -0
  105. package/dist/cjs/utxo/doge/index.js.map +1 -0
  106. package/dist/cjs/utxo/doge/network_params.js +30 -0
  107. package/dist/cjs/utxo/doge/network_params.js.map +1 -0
  108. package/dist/cjs/utxo/ecc.js +47 -0
  109. package/dist/cjs/utxo/ecc.js.map +1 -0
  110. package/dist/cjs/utxo/fee.js +61 -0
  111. package/dist/cjs/utxo/fee.js.map +1 -0
  112. package/dist/cjs/utxo/index.js +36 -0
  113. package/dist/cjs/utxo/index.js.map +1 -0
  114. package/dist/cjs/utxo/ltc/index.js +19 -0
  115. package/dist/cjs/utxo/ltc/index.js.map +1 -0
  116. package/dist/cjs/utxo/ltc/ltc_chains.js +32 -0
  117. package/dist/cjs/utxo/ltc/ltc_chains.js.map +1 -0
  118. package/dist/cjs/utxo/ltc/network_params.js +33 -0
  119. package/dist/cjs/utxo/ltc/network_params.js.map +1 -0
  120. package/dist/cjs/utxo/script.js +59 -0
  121. package/dist/cjs/utxo/script.js.map +1 -0
  122. package/dist/cjs/utxo/tools/broadcaster.js +3 -0
  123. package/dist/cjs/utxo/tools/broadcaster.js.map +1 -0
  124. package/dist/cjs/utxo/tools/chain_tip_provider.js +3 -0
  125. package/dist/cjs/utxo/tools/chain_tip_provider.js.map +1 -0
  126. package/dist/cjs/utxo/tools/fee_estimator.js +3 -0
  127. package/dist/cjs/utxo/tools/fee_estimator.js.map +1 -0
  128. package/dist/cjs/utxo/tools/raw_transaction_provider.js +3 -0
  129. package/dist/cjs/utxo/tools/raw_transaction_provider.js.map +1 -0
  130. package/dist/cjs/utxo/tools/utxo_provider.js +3 -0
  131. package/dist/cjs/utxo/tools/utxo_provider.js.map +1 -0
  132. package/dist/cjs/utxo/unsigned_utxo_transaction.js +36 -0
  133. package/dist/cjs/utxo/unsigned_utxo_transaction.js.map +1 -0
  134. package/dist/cjs/utxo/utxo.js +3 -0
  135. package/dist/{utxo → cjs/utxo}/utxo.js.map +1 -1
  136. package/dist/cjs/utxo/utxo_chain.js +612 -0
  137. package/dist/cjs/utxo/utxo_chain.js.map +1 -0
  138. package/dist/cjs/utxo/utxo_chains.js +68 -0
  139. package/dist/cjs/utxo/utxo_chains.js.map +1 -0
  140. package/dist/cjs/utxo/utxo_gas_pricing.js +24 -0
  141. package/dist/cjs/utxo/utxo_gas_pricing.js.map +1 -0
  142. package/dist/cjs/utxo/utxo_network_params.js +18 -0
  143. package/dist/cjs/utxo/utxo_network_params.js.map +1 -0
  144. package/dist/cjs/utxo/utxo_transaction_status.js +95 -0
  145. package/dist/cjs/utxo/utxo_transaction_status.js.map +1 -0
  146. package/dist/esm/abstract_gas_pricing.d.ts.map +1 -0
  147. package/dist/esm/abstract_gas_pricing.js.map +1 -0
  148. package/dist/esm/address.d.ts.map +1 -0
  149. package/dist/esm/address.factory.d.ts.map +1 -0
  150. package/dist/esm/address.factory.js.map +1 -0
  151. package/dist/esm/address.js.map +1 -0
  152. package/dist/esm/address_field.decorator.d.ts.map +1 -0
  153. package/dist/esm/address_field.decorator.js.map +1 -0
  154. package/dist/{chain.base.d.ts → esm/chain.base.d.ts} +38 -1
  155. package/dist/esm/chain.base.d.ts.map +1 -0
  156. package/dist/esm/chain.base.js.map +1 -0
  157. package/dist/esm/chain_ids.d.ts.map +1 -0
  158. package/dist/esm/chain_ids.js.map +1 -0
  159. package/dist/{errors.d.ts → esm/errors.d.ts} +13 -0
  160. package/dist/esm/errors.d.ts.map +1 -0
  161. package/dist/esm/errors.js +107 -0
  162. package/dist/esm/errors.js.map +1 -0
  163. package/dist/esm/evm/evm_address.d.ts.map +1 -0
  164. package/dist/esm/evm/evm_address.js.map +1 -0
  165. package/dist/{evm → esm/evm}/evm_chain.d.ts +48 -2
  166. package/dist/esm/evm/evm_chain.d.ts.map +1 -0
  167. package/dist/{evm → esm/evm}/evm_chain.js +423 -4
  168. package/dist/esm/evm/evm_chain.js.map +1 -0
  169. package/dist/esm/evm/evm_chains.d.ts.map +1 -0
  170. package/dist/esm/evm/evm_chains.js.map +1 -0
  171. package/dist/esm/evm/evm_gas_estimate.d.ts.map +1 -0
  172. package/dist/esm/evm/evm_gas_estimate.js.map +1 -0
  173. package/dist/esm/evm/evm_gas_pricing.d.ts.map +1 -0
  174. package/dist/esm/evm/evm_gas_pricing.js.map +1 -0
  175. package/dist/esm/evm/evm_token.d.ts.map +1 -0
  176. package/dist/esm/evm/evm_token.js.map +1 -0
  177. package/dist/esm/evm/evm_tokens.d.ts.map +1 -0
  178. package/dist/esm/evm/evm_tokens.js.map +1 -0
  179. package/dist/{evm → esm/evm}/evm_transaction_status.d.ts +4 -0
  180. package/dist/esm/evm/evm_transaction_status.d.ts.map +1 -0
  181. package/dist/{evm → esm/evm}/evm_transaction_status.js +4 -0
  182. package/dist/esm/evm/evm_transaction_status.js.map +1 -0
  183. package/dist/esm/evm/index.d.ts.map +1 -0
  184. package/dist/esm/evm/index.js.map +1 -0
  185. package/dist/{evm → esm/evm}/unsigned_evm_transaction.d.ts +13 -0
  186. package/dist/esm/evm/unsigned_evm_transaction.d.ts.map +1 -0
  187. package/dist/{evm → esm/evm}/unsigned_evm_transaction.js +12 -0
  188. package/dist/esm/evm/unsigned_evm_transaction.js.map +1 -0
  189. package/dist/esm/index.d.ts.map +1 -0
  190. package/dist/esm/index.js.map +1 -0
  191. package/dist/esm/is_address.decorator.d.ts.map +1 -0
  192. package/dist/esm/is_address.decorator.js.map +1 -0
  193. package/dist/esm/network_type.d.ts.map +1 -0
  194. package/dist/esm/network_type.js.map +1 -0
  195. package/dist/esm/package.json +3 -0
  196. package/dist/esm/priority.d.ts.map +1 -0
  197. package/dist/esm/priority.js.map +1 -0
  198. package/dist/esm/solana/index.d.ts.map +1 -0
  199. package/dist/esm/solana/index.js.map +1 -0
  200. package/dist/esm/solana/solana_address.d.ts.map +1 -0
  201. package/dist/esm/solana/solana_address.js.map +1 -0
  202. package/dist/{solana → esm/solana}/solana_chain.d.ts +87 -3
  203. package/dist/esm/solana/solana_chain.d.ts.map +1 -0
  204. package/dist/{solana → esm/solana}/solana_chain.js +618 -23
  205. package/dist/esm/solana/solana_chain.js.map +1 -0
  206. package/dist/esm/solana/solana_chains.d.ts.map +1 -0
  207. package/dist/esm/solana/solana_chains.js.map +1 -0
  208. package/dist/esm/solana/solana_gas_pricing.d.ts.map +1 -0
  209. package/dist/esm/solana/solana_gas_pricing.js.map +1 -0
  210. package/dist/esm/solana/solana_token.d.ts.map +1 -0
  211. package/dist/esm/solana/solana_token.js.map +1 -0
  212. package/dist/esm/solana/solana_tokens.d.ts.map +1 -0
  213. package/dist/esm/solana/solana_tokens.js.map +1 -0
  214. package/dist/esm/solana/solana_transaction_status.d.ts.map +1 -0
  215. package/dist/esm/solana/solana_transaction_status.js.map +1 -0
  216. package/dist/{solana → esm/solana}/unsigned_solana_transaction.d.ts +20 -1
  217. package/dist/esm/solana/unsigned_solana_transaction.d.ts.map +1 -0
  218. package/dist/esm/solana/unsigned_solana_transaction.js +59 -0
  219. package/dist/esm/solana/unsigned_solana_transaction.js.map +1 -0
  220. package/dist/esm/token.d.ts.map +1 -0
  221. package/dist/esm/token.js.map +1 -0
  222. package/dist/esm/ton/index.d.ts.map +1 -0
  223. package/dist/esm/ton/index.js.map +1 -0
  224. package/dist/esm/ton/ton_address.d.ts.map +1 -0
  225. package/dist/esm/ton/ton_address.js.map +1 -0
  226. package/dist/esm/transaction_status.d.ts.map +1 -0
  227. package/dist/esm/transaction_status.js.map +1 -0
  228. package/dist/esm/unsigned_transaction.d.ts.map +1 -0
  229. package/dist/esm/unsigned_transaction.js.map +1 -0
  230. package/dist/esm/utxo/btc/btc_address.d.ts.map +1 -0
  231. package/dist/esm/utxo/btc/btc_address.js.map +1 -0
  232. package/dist/esm/utxo/btc/btc_chain.d.ts.map +1 -0
  233. package/dist/esm/utxo/btc/btc_chain.js.map +1 -0
  234. package/dist/esm/utxo/btc/btc_chains.d.ts.map +1 -0
  235. package/dist/esm/utxo/btc/btc_chains.js.map +1 -0
  236. package/dist/esm/utxo/btc/btc_token.d.ts.map +1 -0
  237. package/dist/esm/utxo/btc/btc_token.js.map +1 -0
  238. package/dist/esm/utxo/btc/index.d.ts.map +1 -0
  239. package/dist/esm/utxo/btc/index.js.map +1 -0
  240. package/dist/esm/utxo/btc/network_params.d.ts.map +1 -0
  241. package/dist/esm/utxo/btc/network_params.js.map +1 -0
  242. package/dist/esm/utxo/btc/tools/asset_outpoint.d.ts.map +1 -0
  243. package/dist/esm/utxo/btc/tools/asset_outpoint.js.map +1 -0
  244. package/dist/esm/utxo/btc/tools/bitcoin_core.tool.d.ts.map +1 -0
  245. package/dist/esm/utxo/btc/tools/bitcoin_core.tool.js.map +1 -0
  246. package/dist/esm/utxo/btc/tools/esplora.tool.d.ts.map +1 -0
  247. package/dist/esm/utxo/btc/tools/esplora.tool.js.map +1 -0
  248. package/dist/esm/utxo/btc/tools/inscription_index.d.ts.map +1 -0
  249. package/dist/esm/utxo/btc/tools/inscription_index.js.map +1 -0
  250. package/dist/esm/utxo/btc/tools/ordiscan.tool.d.ts.map +1 -0
  251. package/dist/esm/utxo/btc/tools/ordiscan.tool.js.map +1 -0
  252. package/dist/esm/utxo/btc/tools/rare_sat_index.d.ts.map +1 -0
  253. package/dist/esm/utxo/btc/tools/rare_sat_index.js.map +1 -0
  254. package/dist/esm/utxo/btc/tools/rune_index.d.ts.map +1 -0
  255. package/dist/esm/utxo/btc/tools/rune_index.js.map +1 -0
  256. package/dist/esm/utxo/btc/tools/unisat.tool.d.ts.map +1 -0
  257. package/dist/esm/utxo/btc/tools/unisat.tool.js.map +1 -0
  258. package/dist/esm/utxo/coin_selection.d.ts.map +1 -0
  259. package/dist/esm/utxo/coin_selection.js.map +1 -0
  260. package/dist/esm/utxo/doge/doge_chains.d.ts.map +1 -0
  261. package/dist/esm/utxo/doge/doge_chains.js.map +1 -0
  262. package/dist/esm/utxo/doge/index.d.ts.map +1 -0
  263. package/dist/esm/utxo/doge/index.js.map +1 -0
  264. package/dist/esm/utxo/doge/network_params.d.ts.map +1 -0
  265. package/dist/esm/utxo/doge/network_params.js.map +1 -0
  266. package/dist/esm/utxo/ecc.d.ts.map +1 -0
  267. package/dist/esm/utxo/ecc.js.map +1 -0
  268. package/dist/esm/utxo/fee.d.ts.map +1 -0
  269. package/dist/esm/utxo/fee.js.map +1 -0
  270. package/dist/esm/utxo/index.d.ts.map +1 -0
  271. package/dist/esm/utxo/index.js.map +1 -0
  272. package/dist/esm/utxo/ltc/index.d.ts.map +1 -0
  273. package/dist/esm/utxo/ltc/index.js.map +1 -0
  274. package/dist/{utxo/doge/doge_chains.d.ts.map → esm/utxo/ltc/ltc_chains.d.ts.map} +1 -1
  275. package/dist/{utxo/doge/doge_chains.js.map → esm/utxo/ltc/ltc_chains.js.map} +1 -1
  276. package/dist/esm/utxo/ltc/network_params.d.ts.map +1 -0
  277. package/dist/esm/utxo/ltc/network_params.js.map +1 -0
  278. package/dist/esm/utxo/script.d.ts.map +1 -0
  279. package/dist/esm/utxo/script.js.map +1 -0
  280. package/dist/esm/utxo/tools/broadcaster.d.ts.map +1 -0
  281. package/dist/esm/utxo/tools/broadcaster.js.map +1 -0
  282. package/dist/esm/utxo/tools/chain_tip_provider.d.ts.map +1 -0
  283. package/dist/esm/utxo/tools/chain_tip_provider.js.map +1 -0
  284. package/dist/esm/utxo/tools/fee_estimator.d.ts.map +1 -0
  285. package/dist/esm/utxo/tools/fee_estimator.js.map +1 -0
  286. package/dist/esm/utxo/tools/raw_transaction_provider.d.ts.map +1 -0
  287. package/dist/esm/utxo/tools/raw_transaction_provider.js.map +1 -0
  288. package/dist/esm/utxo/tools/utxo_provider.d.ts.map +1 -0
  289. package/dist/esm/utxo/tools/utxo_provider.js.map +1 -0
  290. package/dist/esm/utxo/unsigned_utxo_transaction.d.ts.map +1 -0
  291. package/dist/esm/utxo/unsigned_utxo_transaction.js.map +1 -0
  292. package/dist/esm/utxo/utxo.d.ts.map +1 -0
  293. package/dist/esm/utxo/utxo.js.map +1 -0
  294. package/dist/{utxo → esm/utxo}/utxo_chain.d.ts +15 -2
  295. package/dist/esm/utxo/utxo_chain.d.ts.map +1 -0
  296. package/dist/{utxo → esm/utxo}/utxo_chain.js +96 -13
  297. package/dist/esm/utxo/utxo_chain.js.map +1 -0
  298. package/dist/esm/utxo/utxo_chains.d.ts.map +1 -0
  299. package/dist/esm/utxo/utxo_chains.js.map +1 -0
  300. package/dist/esm/utxo/utxo_gas_pricing.d.ts.map +1 -0
  301. package/dist/esm/utxo/utxo_gas_pricing.js.map +1 -0
  302. package/dist/esm/utxo/utxo_network_params.d.ts.map +1 -0
  303. package/dist/esm/utxo/utxo_network_params.js.map +1 -0
  304. package/dist/esm/utxo/utxo_transaction_status.d.ts.map +1 -0
  305. package/dist/esm/utxo/utxo_transaction_status.js.map +1 -0
  306. package/docs/CONNECTIONS.md +33 -0
  307. package/docs/EIP7702.md +77 -0
  308. package/docs/JITO.md +41 -0
  309. package/docs/MULTI_RPC.md +28 -0
  310. package/package.json +32 -16
  311. package/dist/abstract_gas_pricing.d.ts.map +0 -1
  312. package/dist/abstract_gas_pricing.js.map +0 -1
  313. package/dist/address.d.ts.map +0 -1
  314. package/dist/address.factory.d.ts.map +0 -1
  315. package/dist/address.factory.js.map +0 -1
  316. package/dist/address.js.map +0 -1
  317. package/dist/address_field.decorator.d.ts.map +0 -1
  318. package/dist/address_field.decorator.js.map +0 -1
  319. package/dist/chain.base.d.ts.map +0 -1
  320. package/dist/chain.base.js.map +0 -1
  321. package/dist/chain_ids.d.ts.map +0 -1
  322. package/dist/chain_ids.js.map +0 -1
  323. package/dist/errors.d.ts.map +0 -1
  324. package/dist/errors.js +0 -62
  325. package/dist/errors.js.map +0 -1
  326. package/dist/evm/evm_address.d.ts.map +0 -1
  327. package/dist/evm/evm_address.js.map +0 -1
  328. package/dist/evm/evm_chain.d.ts.map +0 -1
  329. package/dist/evm/evm_chain.js.map +0 -1
  330. package/dist/evm/evm_chains.d.ts.map +0 -1
  331. package/dist/evm/evm_chains.js.map +0 -1
  332. package/dist/evm/evm_gas_estimate.d.ts.map +0 -1
  333. package/dist/evm/evm_gas_estimate.js.map +0 -1
  334. package/dist/evm/evm_gas_pricing.d.ts.map +0 -1
  335. package/dist/evm/evm_gas_pricing.js.map +0 -1
  336. package/dist/evm/evm_token.d.ts.map +0 -1
  337. package/dist/evm/evm_token.js.map +0 -1
  338. package/dist/evm/evm_tokens.d.ts.map +0 -1
  339. package/dist/evm/evm_tokens.js.map +0 -1
  340. package/dist/evm/evm_transaction_status.d.ts.map +0 -1
  341. package/dist/evm/evm_transaction_status.js.map +0 -1
  342. package/dist/evm/index.d.ts.map +0 -1
  343. package/dist/evm/index.js.map +0 -1
  344. package/dist/evm/unsigned_evm_transaction.d.ts.map +0 -1
  345. package/dist/evm/unsigned_evm_transaction.js.map +0 -1
  346. package/dist/index.d.ts.map +0 -1
  347. package/dist/index.js.map +0 -1
  348. package/dist/is_address.decorator.d.ts.map +0 -1
  349. package/dist/is_address.decorator.js.map +0 -1
  350. package/dist/network_type.d.ts.map +0 -1
  351. package/dist/network_type.js.map +0 -1
  352. package/dist/priority.d.ts.map +0 -1
  353. package/dist/priority.js.map +0 -1
  354. package/dist/solana/index.d.ts.map +0 -1
  355. package/dist/solana/index.js.map +0 -1
  356. package/dist/solana/solana_address.d.ts.map +0 -1
  357. package/dist/solana/solana_address.js.map +0 -1
  358. package/dist/solana/solana_chain.d.ts.map +0 -1
  359. package/dist/solana/solana_chain.js.map +0 -1
  360. package/dist/solana/solana_chains.d.ts.map +0 -1
  361. package/dist/solana/solana_chains.js.map +0 -1
  362. package/dist/solana/solana_gas_pricing.d.ts.map +0 -1
  363. package/dist/solana/solana_gas_pricing.js.map +0 -1
  364. package/dist/solana/solana_token.d.ts.map +0 -1
  365. package/dist/solana/solana_token.js.map +0 -1
  366. package/dist/solana/solana_tokens.d.ts.map +0 -1
  367. package/dist/solana/solana_tokens.js.map +0 -1
  368. package/dist/solana/solana_transaction_status.d.ts.map +0 -1
  369. package/dist/solana/solana_transaction_status.js.map +0 -1
  370. package/dist/solana/unsigned_solana_transaction.d.ts.map +0 -1
  371. package/dist/solana/unsigned_solana_transaction.js +0 -26
  372. package/dist/solana/unsigned_solana_transaction.js.map +0 -1
  373. package/dist/token.d.ts.map +0 -1
  374. package/dist/token.js.map +0 -1
  375. package/dist/ton/index.d.ts.map +0 -1
  376. package/dist/ton/index.js.map +0 -1
  377. package/dist/ton/ton_address.d.ts.map +0 -1
  378. package/dist/ton/ton_address.js.map +0 -1
  379. package/dist/transaction_status.d.ts.map +0 -1
  380. package/dist/transaction_status.js.map +0 -1
  381. package/dist/unsigned_transaction.d.ts.map +0 -1
  382. package/dist/unsigned_transaction.js.map +0 -1
  383. package/dist/utxo/btc/btc_address.d.ts.map +0 -1
  384. package/dist/utxo/btc/btc_address.js.map +0 -1
  385. package/dist/utxo/btc/btc_chain.d.ts.map +0 -1
  386. package/dist/utxo/btc/btc_chain.js.map +0 -1
  387. package/dist/utxo/btc/btc_chains.d.ts.map +0 -1
  388. package/dist/utxo/btc/btc_chains.js.map +0 -1
  389. package/dist/utxo/btc/btc_token.d.ts.map +0 -1
  390. package/dist/utxo/btc/btc_token.js.map +0 -1
  391. package/dist/utxo/btc/index.d.ts.map +0 -1
  392. package/dist/utxo/btc/index.js.map +0 -1
  393. package/dist/utxo/btc/network_params.d.ts.map +0 -1
  394. package/dist/utxo/btc/network_params.js.map +0 -1
  395. package/dist/utxo/btc/tools/asset_outpoint.d.ts.map +0 -1
  396. package/dist/utxo/btc/tools/asset_outpoint.js.map +0 -1
  397. package/dist/utxo/btc/tools/bitcoin_core.tool.d.ts.map +0 -1
  398. package/dist/utxo/btc/tools/bitcoin_core.tool.js.map +0 -1
  399. package/dist/utxo/btc/tools/esplora.tool.d.ts.map +0 -1
  400. package/dist/utxo/btc/tools/esplora.tool.js.map +0 -1
  401. package/dist/utxo/btc/tools/inscription_index.d.ts.map +0 -1
  402. package/dist/utxo/btc/tools/inscription_index.js.map +0 -1
  403. package/dist/utxo/btc/tools/ordiscan.tool.d.ts.map +0 -1
  404. package/dist/utxo/btc/tools/ordiscan.tool.js.map +0 -1
  405. package/dist/utxo/btc/tools/rare_sat_index.d.ts.map +0 -1
  406. package/dist/utxo/btc/tools/rare_sat_index.js.map +0 -1
  407. package/dist/utxo/btc/tools/rune_index.d.ts.map +0 -1
  408. package/dist/utxo/btc/tools/rune_index.js.map +0 -1
  409. package/dist/utxo/btc/tools/unisat.tool.d.ts.map +0 -1
  410. package/dist/utxo/btc/tools/unisat.tool.js.map +0 -1
  411. package/dist/utxo/coin_selection.d.ts.map +0 -1
  412. package/dist/utxo/coin_selection.js.map +0 -1
  413. package/dist/utxo/doge/index.d.ts.map +0 -1
  414. package/dist/utxo/doge/index.js.map +0 -1
  415. package/dist/utxo/doge/network_params.d.ts.map +0 -1
  416. package/dist/utxo/doge/network_params.js.map +0 -1
  417. package/dist/utxo/ecc.d.ts.map +0 -1
  418. package/dist/utxo/ecc.js.map +0 -1
  419. package/dist/utxo/fee.d.ts.map +0 -1
  420. package/dist/utxo/fee.js.map +0 -1
  421. package/dist/utxo/index.d.ts.map +0 -1
  422. package/dist/utxo/index.js.map +0 -1
  423. package/dist/utxo/ltc/index.d.ts.map +0 -1
  424. package/dist/utxo/ltc/index.js.map +0 -1
  425. package/dist/utxo/ltc/ltc_chains.d.ts.map +0 -1
  426. package/dist/utxo/ltc/ltc_chains.js.map +0 -1
  427. package/dist/utxo/ltc/network_params.d.ts.map +0 -1
  428. package/dist/utxo/ltc/network_params.js.map +0 -1
  429. package/dist/utxo/script.d.ts.map +0 -1
  430. package/dist/utxo/script.js.map +0 -1
  431. package/dist/utxo/tools/broadcaster.d.ts.map +0 -1
  432. package/dist/utxo/tools/broadcaster.js.map +0 -1
  433. package/dist/utxo/tools/chain_tip_provider.d.ts.map +0 -1
  434. package/dist/utxo/tools/chain_tip_provider.js.map +0 -1
  435. package/dist/utxo/tools/fee_estimator.d.ts.map +0 -1
  436. package/dist/utxo/tools/fee_estimator.js.map +0 -1
  437. package/dist/utxo/tools/raw_transaction_provider.d.ts.map +0 -1
  438. package/dist/utxo/tools/raw_transaction_provider.js.map +0 -1
  439. package/dist/utxo/tools/utxo_provider.d.ts.map +0 -1
  440. package/dist/utxo/tools/utxo_provider.js.map +0 -1
  441. package/dist/utxo/unsigned_utxo_transaction.d.ts.map +0 -1
  442. package/dist/utxo/unsigned_utxo_transaction.js.map +0 -1
  443. package/dist/utxo/utxo.d.ts.map +0 -1
  444. package/dist/utxo/utxo_chain.d.ts.map +0 -1
  445. package/dist/utxo/utxo_chain.js.map +0 -1
  446. package/dist/utxo/utxo_chains.d.ts.map +0 -1
  447. package/dist/utxo/utxo_chains.js.map +0 -1
  448. package/dist/utxo/utxo_gas_pricing.d.ts.map +0 -1
  449. package/dist/utxo/utxo_gas_pricing.js.map +0 -1
  450. package/dist/utxo/utxo_network_params.d.ts.map +0 -1
  451. package/dist/utxo/utxo_network_params.js.map +0 -1
  452. package/dist/utxo/utxo_transaction_status.d.ts.map +0 -1
  453. package/dist/utxo/utxo_transaction_status.js.map +0 -1
  454. /package/dist/{abstract_gas_pricing.d.ts → esm/abstract_gas_pricing.d.ts} +0 -0
  455. /package/dist/{abstract_gas_pricing.js → esm/abstract_gas_pricing.js} +0 -0
  456. /package/dist/{address.d.ts → esm/address.d.ts} +0 -0
  457. /package/dist/{address.factory.d.ts → esm/address.factory.d.ts} +0 -0
  458. /package/dist/{address.factory.js → esm/address.factory.js} +0 -0
  459. /package/dist/{address.js → esm/address.js} +0 -0
  460. /package/dist/{address_field.decorator.d.ts → esm/address_field.decorator.d.ts} +0 -0
  461. /package/dist/{address_field.decorator.js → esm/address_field.decorator.js} +0 -0
  462. /package/dist/{chain.base.js → esm/chain.base.js} +0 -0
  463. /package/dist/{chain_ids.d.ts → esm/chain_ids.d.ts} +0 -0
  464. /package/dist/{chain_ids.js → esm/chain_ids.js} +0 -0
  465. /package/dist/{evm → esm/evm}/evm_address.d.ts +0 -0
  466. /package/dist/{evm → esm/evm}/evm_address.js +0 -0
  467. /package/dist/{evm → esm/evm}/evm_chains.d.ts +0 -0
  468. /package/dist/{evm → esm/evm}/evm_chains.js +0 -0
  469. /package/dist/{evm → esm/evm}/evm_gas_estimate.d.ts +0 -0
  470. /package/dist/{evm → esm/evm}/evm_gas_estimate.js +0 -0
  471. /package/dist/{evm → esm/evm}/evm_gas_pricing.d.ts +0 -0
  472. /package/dist/{evm → esm/evm}/evm_gas_pricing.js +0 -0
  473. /package/dist/{evm → esm/evm}/evm_token.d.ts +0 -0
  474. /package/dist/{evm → esm/evm}/evm_token.js +0 -0
  475. /package/dist/{evm → esm/evm}/evm_tokens.d.ts +0 -0
  476. /package/dist/{evm → esm/evm}/evm_tokens.js +0 -0
  477. /package/dist/{evm → esm/evm}/index.d.ts +0 -0
  478. /package/dist/{evm → esm/evm}/index.js +0 -0
  479. /package/dist/{index.d.ts → esm/index.d.ts} +0 -0
  480. /package/dist/{index.js → esm/index.js} +0 -0
  481. /package/dist/{is_address.decorator.d.ts → esm/is_address.decorator.d.ts} +0 -0
  482. /package/dist/{is_address.decorator.js → esm/is_address.decorator.js} +0 -0
  483. /package/dist/{network_type.d.ts → esm/network_type.d.ts} +0 -0
  484. /package/dist/{network_type.js → esm/network_type.js} +0 -0
  485. /package/dist/{priority.d.ts → esm/priority.d.ts} +0 -0
  486. /package/dist/{priority.js → esm/priority.js} +0 -0
  487. /package/dist/{solana → esm/solana}/index.d.ts +0 -0
  488. /package/dist/{solana → esm/solana}/index.js +0 -0
  489. /package/dist/{solana → esm/solana}/solana_address.d.ts +0 -0
  490. /package/dist/{solana → esm/solana}/solana_address.js +0 -0
  491. /package/dist/{solana → esm/solana}/solana_chains.d.ts +0 -0
  492. /package/dist/{solana → esm/solana}/solana_chains.js +0 -0
  493. /package/dist/{solana → esm/solana}/solana_gas_pricing.d.ts +0 -0
  494. /package/dist/{solana → esm/solana}/solana_gas_pricing.js +0 -0
  495. /package/dist/{solana → esm/solana}/solana_token.d.ts +0 -0
  496. /package/dist/{solana → esm/solana}/solana_token.js +0 -0
  497. /package/dist/{solana → esm/solana}/solana_tokens.d.ts +0 -0
  498. /package/dist/{solana → esm/solana}/solana_tokens.js +0 -0
  499. /package/dist/{solana → esm/solana}/solana_transaction_status.d.ts +0 -0
  500. /package/dist/{solana → esm/solana}/solana_transaction_status.js +0 -0
  501. /package/dist/{token.d.ts → esm/token.d.ts} +0 -0
  502. /package/dist/{token.js → esm/token.js} +0 -0
  503. /package/dist/{ton → esm/ton}/index.d.ts +0 -0
  504. /package/dist/{ton → esm/ton}/index.js +0 -0
  505. /package/dist/{ton → esm/ton}/ton_address.d.ts +0 -0
  506. /package/dist/{ton → esm/ton}/ton_address.js +0 -0
  507. /package/dist/{transaction_status.d.ts → esm/transaction_status.d.ts} +0 -0
  508. /package/dist/{transaction_status.js → esm/transaction_status.js} +0 -0
  509. /package/dist/{unsigned_transaction.d.ts → esm/unsigned_transaction.d.ts} +0 -0
  510. /package/dist/{unsigned_transaction.js → esm/unsigned_transaction.js} +0 -0
  511. /package/dist/{utxo → esm/utxo}/btc/btc_address.d.ts +0 -0
  512. /package/dist/{utxo → esm/utxo}/btc/btc_address.js +0 -0
  513. /package/dist/{utxo → esm/utxo}/btc/btc_chain.d.ts +0 -0
  514. /package/dist/{utxo → esm/utxo}/btc/btc_chain.js +0 -0
  515. /package/dist/{utxo → esm/utxo}/btc/btc_chains.d.ts +0 -0
  516. /package/dist/{utxo → esm/utxo}/btc/btc_chains.js +0 -0
  517. /package/dist/{utxo → esm/utxo}/btc/btc_token.d.ts +0 -0
  518. /package/dist/{utxo → esm/utxo}/btc/btc_token.js +0 -0
  519. /package/dist/{utxo → esm/utxo}/btc/index.d.ts +0 -0
  520. /package/dist/{utxo → esm/utxo}/btc/index.js +0 -0
  521. /package/dist/{utxo → esm/utxo}/btc/network_params.d.ts +0 -0
  522. /package/dist/{utxo → esm/utxo}/btc/network_params.js +0 -0
  523. /package/dist/{utxo → esm/utxo}/btc/tools/asset_outpoint.d.ts +0 -0
  524. /package/dist/{utxo → esm/utxo}/btc/tools/asset_outpoint.js +0 -0
  525. /package/dist/{utxo → esm/utxo}/btc/tools/bitcoin_core.tool.d.ts +0 -0
  526. /package/dist/{utxo → esm/utxo}/btc/tools/bitcoin_core.tool.js +0 -0
  527. /package/dist/{utxo → esm/utxo}/btc/tools/esplora.tool.d.ts +0 -0
  528. /package/dist/{utxo → esm/utxo}/btc/tools/esplora.tool.js +0 -0
  529. /package/dist/{utxo → esm/utxo}/btc/tools/inscription_index.d.ts +0 -0
  530. /package/dist/{utxo → esm/utxo}/btc/tools/inscription_index.js +0 -0
  531. /package/dist/{utxo → esm/utxo}/btc/tools/ordiscan.tool.d.ts +0 -0
  532. /package/dist/{utxo → esm/utxo}/btc/tools/ordiscan.tool.js +0 -0
  533. /package/dist/{utxo → esm/utxo}/btc/tools/rare_sat_index.d.ts +0 -0
  534. /package/dist/{utxo → esm/utxo}/btc/tools/rare_sat_index.js +0 -0
  535. /package/dist/{utxo → esm/utxo}/btc/tools/rune_index.d.ts +0 -0
  536. /package/dist/{utxo → esm/utxo}/btc/tools/rune_index.js +0 -0
  537. /package/dist/{utxo → esm/utxo}/btc/tools/unisat.tool.d.ts +0 -0
  538. /package/dist/{utxo → esm/utxo}/btc/tools/unisat.tool.js +0 -0
  539. /package/dist/{utxo → esm/utxo}/coin_selection.d.ts +0 -0
  540. /package/dist/{utxo → esm/utxo}/coin_selection.js +0 -0
  541. /package/dist/{utxo → esm/utxo}/doge/doge_chains.d.ts +0 -0
  542. /package/dist/{utxo → esm/utxo}/doge/doge_chains.js +0 -0
  543. /package/dist/{utxo → esm/utxo}/doge/index.d.ts +0 -0
  544. /package/dist/{utxo → esm/utxo}/doge/index.js +0 -0
  545. /package/dist/{utxo → esm/utxo}/doge/network_params.d.ts +0 -0
  546. /package/dist/{utxo → esm/utxo}/doge/network_params.js +0 -0
  547. /package/dist/{utxo → esm/utxo}/ecc.d.ts +0 -0
  548. /package/dist/{utxo → esm/utxo}/ecc.js +0 -0
  549. /package/dist/{utxo → esm/utxo}/fee.d.ts +0 -0
  550. /package/dist/{utxo → esm/utxo}/fee.js +0 -0
  551. /package/dist/{utxo → esm/utxo}/index.d.ts +0 -0
  552. /package/dist/{utxo → esm/utxo}/index.js +0 -0
  553. /package/dist/{utxo → esm/utxo}/ltc/index.d.ts +0 -0
  554. /package/dist/{utxo → esm/utxo}/ltc/index.js +0 -0
  555. /package/dist/{utxo → esm/utxo}/ltc/ltc_chains.d.ts +0 -0
  556. /package/dist/{utxo → esm/utxo}/ltc/ltc_chains.js +0 -0
  557. /package/dist/{utxo → esm/utxo}/ltc/network_params.d.ts +0 -0
  558. /package/dist/{utxo → esm/utxo}/ltc/network_params.js +0 -0
  559. /package/dist/{utxo → esm/utxo}/script.d.ts +0 -0
  560. /package/dist/{utxo → esm/utxo}/script.js +0 -0
  561. /package/dist/{utxo → esm/utxo}/tools/broadcaster.d.ts +0 -0
  562. /package/dist/{utxo → esm/utxo}/tools/broadcaster.js +0 -0
  563. /package/dist/{utxo → esm/utxo}/tools/chain_tip_provider.d.ts +0 -0
  564. /package/dist/{utxo → esm/utxo}/tools/chain_tip_provider.js +0 -0
  565. /package/dist/{utxo → esm/utxo}/tools/fee_estimator.d.ts +0 -0
  566. /package/dist/{utxo → esm/utxo}/tools/fee_estimator.js +0 -0
  567. /package/dist/{utxo → esm/utxo}/tools/raw_transaction_provider.d.ts +0 -0
  568. /package/dist/{utxo → esm/utxo}/tools/raw_transaction_provider.js +0 -0
  569. /package/dist/{utxo → esm/utxo}/tools/utxo_provider.d.ts +0 -0
  570. /package/dist/{utxo → esm/utxo}/tools/utxo_provider.js +0 -0
  571. /package/dist/{utxo → esm/utxo}/unsigned_utxo_transaction.d.ts +0 -0
  572. /package/dist/{utxo → esm/utxo}/unsigned_utxo_transaction.js +0 -0
  573. /package/dist/{utxo → esm/utxo}/utxo.d.ts +0 -0
  574. /package/dist/{utxo → esm/utxo}/utxo.js +0 -0
  575. /package/dist/{utxo → esm/utxo}/utxo_chains.d.ts +0 -0
  576. /package/dist/{utxo → esm/utxo}/utxo_chains.js +0 -0
  577. /package/dist/{utxo → esm/utxo}/utxo_gas_pricing.d.ts +0 -0
  578. /package/dist/{utxo → esm/utxo}/utxo_gas_pricing.js +0 -0
  579. /package/dist/{utxo → esm/utxo}/utxo_network_params.d.ts +0 -0
  580. /package/dist/{utxo → esm/utxo}/utxo_network_params.js +0 -0
  581. /package/dist/{utxo → esm/utxo}/utxo_transaction_status.d.ts +0 -0
  582. /package/dist/{utxo → esm/utxo}/utxo_transaction_status.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solana_chain.js","sourceRoot":"","sources":["../../../solana/solana_chain.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ALL_SOLANA_CHAINS = exports.SolanaDevnet = exports.SolanaTestnet = exports.SolanaMainnet = exports.SOLANA_DEVNET_CHAIN_ID = exports.SOLANA_TESTNET_CHAIN_ID = exports.SOLANA_MAINNET_CHAIN_ID = void 0;
4
+ exports.migrateLegacySolanaChainId = migrateLegacySolanaChainId;
5
+ const chain_ids_ts_1 = require("../chain_ids.js");
6
+ const solana_chain_ts_1 = require("./solana_chain.js");
7
+ /**
8
+ * Solana chain constants and pre-baked instances. Mirrors
9
+ * omnichain-py/src/omnichain/impl/solana/chains.py.
10
+ *
11
+ * Chain IDs match Python's -2000/-2001/-2002 scheme (chain_ids.py:43-45).
12
+ * Chain names include the cluster suffix ("Solana Mainnet", "Solana Testnet",
13
+ * "Solana Devnet") so `<NAME>_RPC_URL` env-var derivation is unambiguous.
14
+ */
15
+ /** @deprecated Use CHAIN_ID_SOLANA_MAINNET from chain_ids.ts (value changed from -100 to -2000). */
16
+ exports.SOLANA_MAINNET_CHAIN_ID = chain_ids_ts_1.CHAIN_ID_SOLANA_MAINNET;
17
+ /** @deprecated Use CHAIN_ID_SOLANA_TESTNET from chain_ids.ts (value changed from -101 to -2001). */
18
+ exports.SOLANA_TESTNET_CHAIN_ID = chain_ids_ts_1.CHAIN_ID_SOLANA_TESTNET;
19
+ /** @deprecated Use CHAIN_ID_SOLANA_DEVNET from chain_ids.ts (value changed from -102 to -2002). */
20
+ exports.SOLANA_DEVNET_CHAIN_ID = chain_ids_ts_1.CHAIN_ID_SOLANA_DEVNET;
21
+ /**
22
+ * Legacy Solana chainId numbering used by the pre-v0 TS SDK.
23
+ *
24
+ * These are NOT registered as `NetworkType.SOLANA` aliases — a half-wired
25
+ * shim (accept-then-fail-later) is worse than fail-closed for a signing SDK.
26
+ * Consumers with persisted `-100 / -101 / -102` rows MUST call
27
+ * `migrateLegacySolanaChainId(id)` before those values enter the SDK;
28
+ * otherwise `networkTypeOf(-100)` throws `ChainError(ChainNotSupported)`
29
+ * at validation time, which is the intended safe behavior.
30
+ */
31
+ const LEGACY_SOLANA_MAINNET_CHAIN_ID = -100;
32
+ const LEGACY_SOLANA_TESTNET_CHAIN_ID = -101;
33
+ const LEGACY_SOLANA_DEVNET_CHAIN_ID = -102;
34
+ /** Map a legacy Solana chainId (-100/-101/-102) to its canonical v0 value
35
+ * (-2000/-2001/-2002). Non-legacy IDs are returned unchanged.
36
+ * Call this on any persisted chainId before passing it into the SDK. */
37
+ function migrateLegacySolanaChainId(chainId) {
38
+ if (chainId === LEGACY_SOLANA_MAINNET_CHAIN_ID)
39
+ return chain_ids_ts_1.CHAIN_ID_SOLANA_MAINNET;
40
+ if (chainId === LEGACY_SOLANA_TESTNET_CHAIN_ID)
41
+ return chain_ids_ts_1.CHAIN_ID_SOLANA_TESTNET;
42
+ if (chainId === LEGACY_SOLANA_DEVNET_CHAIN_ID)
43
+ return chain_ids_ts_1.CHAIN_ID_SOLANA_DEVNET;
44
+ return chainId;
45
+ }
46
+ // Predefined factories don't set rpcUrl — SolanaChain's fallback chain is:
47
+ // <NAME_UPPERCASE_UNDERSCORED>_RPC_URL env,
48
+ // then SOLANA_<chainId>_RPC_URL env (mirrors Python impl/solana/base.py:424-434),
49
+ // then defaultRpcUrl (public cluster). Solana never throws "not configured".
50
+ exports.SolanaMainnet = new solana_chain_ts_1.SolanaChain({
51
+ chainId: chain_ids_ts_1.CHAIN_ID_SOLANA_MAINNET,
52
+ name: 'Solana Mainnet',
53
+ blockTimeSeconds: 0.4,
54
+ explorerBaseUrl: 'https://solscan.io',
55
+ nativeSymbol: 'SOL',
56
+ defaultRpcUrl: 'https://api.mainnet-beta.solana.com',
57
+ // Pre-v0 SDK derived SOLANA_RPC_URL for the mainnet instance; keep it as a
58
+ // legacy fallback so existing deployments don't silently switch to the
59
+ // rate-limited public cluster when they haven't renamed their env var yet.
60
+ legacyRpcEnvNames: ['SOLANA_RPC_URL'],
61
+ chainAgnosticGenesisHash: '5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp',
62
+ });
63
+ exports.SolanaTestnet = new solana_chain_ts_1.SolanaChain({
64
+ chainId: chain_ids_ts_1.CHAIN_ID_SOLANA_TESTNET,
65
+ name: 'Solana Testnet',
66
+ blockTimeSeconds: 0.4,
67
+ explorerBaseUrl: 'https://solscan.io',
68
+ explorerClusterSuffix: '?cluster=testnet',
69
+ nativeSymbol: 'SOL',
70
+ defaultRpcUrl: 'https://api.testnet.solana.com',
71
+ chainAgnosticGenesisHash: '4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z',
72
+ });
73
+ exports.SolanaDevnet = new solana_chain_ts_1.SolanaChain({
74
+ chainId: chain_ids_ts_1.CHAIN_ID_SOLANA_DEVNET,
75
+ name: 'Solana Devnet',
76
+ blockTimeSeconds: 0.4,
77
+ explorerBaseUrl: 'https://solscan.io',
78
+ explorerClusterSuffix: '?cluster=devnet',
79
+ nativeSymbol: 'SOL',
80
+ defaultRpcUrl: 'https://api.devnet.solana.com',
81
+ chainAgnosticGenesisHash: 'EtWTRABZaYq6iMfeYKouRu166VU2xqa1',
82
+ });
83
+ exports.ALL_SOLANA_CHAINS = [
84
+ exports.SolanaMainnet,
85
+ exports.SolanaTestnet,
86
+ exports.SolanaDevnet,
87
+ ];
88
+ //# sourceMappingURL=solana_chains.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solana_chains.js","sourceRoot":"","sources":["../../../solana/solana_chains.ts"],"names":[],"mappings":";;;AAwCA,gEAKC;AA7CD,kDAIyB;AACzB,uDAAgD;AAEhD;;;;;;;GAOG;AAEH,oGAAoG;AACvF,QAAA,uBAAuB,GAAG,sCAAuB,CAAC;AAC/D,oGAAoG;AACvF,QAAA,uBAAuB,GAAG,sCAAuB,CAAC;AAC/D,mGAAmG;AACtF,QAAA,sBAAsB,GAAG,qCAAsB,CAAC;AAE7D;;;;;;;;;GASG;AACH,MAAM,8BAA8B,GAAG,CAAC,GAAG,CAAC;AAC5C,MAAM,8BAA8B,GAAG,CAAC,GAAG,CAAC;AAC5C,MAAM,6BAA6B,GAAG,CAAC,GAAG,CAAC;AAE3C;;yEAEyE;AACzE,SAAgB,0BAA0B,CAAC,OAAe;IACxD,IAAI,OAAO,KAAK,8BAA8B;QAAE,OAAO,sCAAuB,CAAC;IAC/E,IAAI,OAAO,KAAK,8BAA8B;QAAE,OAAO,sCAAuB,CAAC;IAC/E,IAAI,OAAO,KAAK,6BAA6B;QAAE,OAAO,qCAAsB,CAAC;IAC7E,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,2EAA2E;AAC3E,8CAA8C;AAC9C,oFAAoF;AACpF,+EAA+E;AAElE,QAAA,aAAa,GAAG,IAAI,6BAAW,CAAC;IAC3C,OAAO,EAAE,sCAAuB;IAChC,IAAI,EAAE,gBAAgB;IACtB,gBAAgB,EAAE,GAAG;IACrB,eAAe,EAAE,oBAAoB;IACrC,YAAY,EAAE,KAAK;IACnB,aAAa,EAAE,qCAAqC;IACpD,2EAA2E;IAC3E,uEAAuE;IACvE,2EAA2E;IAC3E,iBAAiB,EAAE,CAAC,gBAAgB,CAAC;IACrC,wBAAwB,EAAE,kCAAkC;CAC7D,CAAC,CAAC;AAEU,QAAA,aAAa,GAAG,IAAI,6BAAW,CAAC;IAC3C,OAAO,EAAE,sCAAuB;IAChC,IAAI,EAAE,gBAAgB;IACtB,gBAAgB,EAAE,GAAG;IACrB,eAAe,EAAE,oBAAoB;IACrC,qBAAqB,EAAE,kBAAkB;IACzC,YAAY,EAAE,KAAK;IACnB,aAAa,EAAE,gCAAgC;IAC/C,wBAAwB,EAAE,kCAAkC;CAC7D,CAAC,CAAC;AAEU,QAAA,YAAY,GAAG,IAAI,6BAAW,CAAC;IAC1C,OAAO,EAAE,qCAAsB;IAC/B,IAAI,EAAE,eAAe;IACrB,gBAAgB,EAAE,GAAG;IACrB,eAAe,EAAE,oBAAoB;IACrC,qBAAqB,EAAE,iBAAiB;IACxC,YAAY,EAAE,KAAK;IACnB,aAAa,EAAE,+BAA+B;IAC9C,wBAAwB,EAAE,kCAAkC;CAC7D,CAAC,CAAC;AAEU,QAAA,iBAAiB,GAA+B;IAC3D,qBAAa;IACb,qBAAa;IACb,oBAAY;CACb,CAAC"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SolanaGasPricing = void 0;
4
+ const abstract_gas_pricing_ts_1 = require("../abstract_gas_pricing.js");
5
+ const errors_ts_1 = require("../errors.js");
6
+ const network_type_ts_1 = require("../network_type.js");
7
+ /**
8
+ * Solana explicit-fee override — mirrors Python's `SolanaGasPricing` at
9
+ * `impl/solana/base.py`. Alternative to passing a `FeePriority` tier to
10
+ * `createTransferUnsignedTransaction`; the tier is resolved via
11
+ * `suggestPriorityFeeMicroLamports`.
12
+ */
13
+ class SolanaGasPricing extends abstract_gas_pricing_ts_1.AbstractGasPricing {
14
+ networkType = network_type_ts_1.NetworkType.SOLANA;
15
+ priorityFeeMicroLamports;
16
+ computeUnitLimit;
17
+ constructor(init) {
18
+ super();
19
+ if (init.priorityFeeMicroLamports < 0n) {
20
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `SolanaGasPricing.priorityFeeMicroLamports must be >= 0, got ${init.priorityFeeMicroLamports}`);
21
+ }
22
+ if (init.computeUnitLimit !== undefined && init.computeUnitLimit <= 0n) {
23
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `SolanaGasPricing.computeUnitLimit must be > 0 or undefined, got ${init.computeUnitLimit}`);
24
+ }
25
+ this.priorityFeeMicroLamports = init.priorityFeeMicroLamports;
26
+ this.computeUnitLimit = init.computeUnitLimit;
27
+ }
28
+ }
29
+ exports.SolanaGasPricing = SolanaGasPricing;
30
+ //# sourceMappingURL=solana_gas_pricing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solana_gas_pricing.js","sourceRoot":"","sources":["../../../solana/solana_gas_pricing.ts"],"names":[],"mappings":";;;AAAA,wEAAgE;AAChE,4CAA2D;AAC3D,wDAAiD;AAkBjD;;;;;GAKG;AACH,MAAa,gBAAiB,SAAQ,4CAAkB;IAC7C,WAAW,GAAG,6BAAW,CAAC,MAAM,CAAC;IACjC,wBAAwB,CAAS;IACjC,gBAAgB,CAAqB;IAE9C,YAAY,IAA0B;QACpC,KAAK,EAAE,CAAC;QACR,IAAI,IAAI,CAAC,wBAAwB,GAAG,EAAE,EAAE,CAAC;YACvC,MAAM,IAAI,sBAAU,CAClB,2BAAe,CAAC,eAAe,EAC/B,+DAA+D,IAAI,CAAC,wBAAwB,EAAE,CAC/F,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,IAAI,IAAI,CAAC,gBAAgB,IAAI,EAAE,EAAE,CAAC;YACvE,MAAM,IAAI,sBAAU,CAClB,2BAAe,CAAC,eAAe,EAC/B,mEAAmE,IAAI,CAAC,gBAAgB,EAAE,CAC3F,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,wBAAwB,CAAC;QAC9D,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;IAChD,CAAC;CACF;AAtBD,4CAsBC"}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SolanaToken = void 0;
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ const token_ts_1 = require("../token.js");
6
+ const solana_address_ts_1 = require("./solana_address.js");
7
+ /**
8
+ * On Solana, the "token identifier" is the mint address (a Solana address belonging to the
9
+ * SPL Token program). Native SOL has no mint — represented as `identifier: undefined`,
10
+ * matching the EVM-side convention for native ETH.
11
+ *
12
+ * The mint determines which Token program owns the asset (TOKEN_PROGRAM_ID vs
13
+ * TOKEN_2022_PROGRAM_ID); that's resolved at runtime by `SolanaChain.resolveSplToken` because
14
+ * we don't want to RPC for it at constant-construction time.
15
+ */
16
+ class SolanaToken extends token_ts_1.Token {
17
+ constructor(chainId, symbol, mintAddress, decimals) {
18
+ super(chainId, symbol, mintAddress, decimals);
19
+ if (mintAddress !== undefined) {
20
+ // Validate base58 + 32-byte length.
21
+ new solana_address_ts_1.SolanaAddress(mintAddress);
22
+ }
23
+ }
24
+ get mintAddress() {
25
+ return this.identifier;
26
+ }
27
+ get mintPubkey() {
28
+ return this.identifier ? new web3_js_1.PublicKey(this.identifier) : undefined;
29
+ }
30
+ static native(chainId, symbol = 'SOL', decimals = 9) {
31
+ return new SolanaToken(chainId, symbol, undefined, decimals);
32
+ }
33
+ static spl(chainId, symbol, mintAddress, decimals) {
34
+ return new SolanaToken(chainId, symbol, mintAddress, decimals);
35
+ }
36
+ }
37
+ exports.SolanaToken = SolanaToken;
38
+ //# sourceMappingURL=solana_token.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solana_token.js","sourceRoot":"","sources":["../../../solana/solana_token.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAE5C,0CAAoC;AACpC,2DAAoD;AAEpD;;;;;;;;GAQG;AACH,MAAa,WAAY,SAAQ,gBAAK;IACpC,YACE,OAAe,EACf,MAAc,EACd,WAA+B,EAC/B,QAAgB;QAEhB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC9C,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,oCAAoC;YACpC,IAAI,iCAAa,CAAC,WAAW,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,mBAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACtE,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,OAAe,EAAE,MAAM,GAAG,KAAK,EAAE,QAAQ,GAAG,CAAC;QACzD,OAAO,IAAI,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,OAAe,EAAE,MAAc,EAAE,WAAmB,EAAE,QAAgB;QAC/E,OAAO,IAAI,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IACjE,CAAC;CACF;AA7BD,kCA6BC"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SOLANA_DEVNET_EURC = exports.SOLANA_DEVNET_USDC = exports.SOLANA_DEVNET_SOL = exports.SOLANA_TESTNET_SOL = exports.SOLANA_USDT = exports.SOLANA_PYUSD = exports.SOLANA_WSOL = exports.SOLANA_EURC = exports.SOLANA_USDC = exports.SOLANA_SOL = void 0;
4
+ const solana_token_ts_1 = require("./solana_token.js");
5
+ const solana_chains_ts_1 = require("./solana_chains.js");
6
+ /**
7
+ * Pre-baked SolanaToken instances. Mirrors
8
+ * omnichain-py/src/omnichain/impl/solana/assets.py — token-for-token.
9
+ *
10
+ * Note: SolanaToken doesn't distinguish TOKEN vs TOKEN_2022 program at
11
+ * construction (that's resolved via `SolanaChain.resolveTokenProgramId` at
12
+ * runtime by reading the mint account owner). All entries below use
13
+ * `SolanaToken.spl(...)`; Token-2022 mints route through TOKEN_2022_PROGRAM_ID
14
+ * automatically at transfer-build time.
15
+ */
16
+ // assets.py:4-29 — Mainnet
17
+ exports.SOLANA_SOL = solana_chains_ts_1.SolanaMainnet.nativeToken;
18
+ exports.SOLANA_USDC = solana_token_ts_1.SolanaToken.spl(solana_chains_ts_1.SolanaMainnet.chainId, 'USDC', 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v', 6);
19
+ exports.SOLANA_EURC = solana_token_ts_1.SolanaToken.spl(solana_chains_ts_1.SolanaMainnet.chainId, 'EURC', 'HzwqbKZw8HxMN6bF2yFZNrht3c2iXXzpKcFu7uBEDKtr', 6);
20
+ exports.SOLANA_WSOL = solana_token_ts_1.SolanaToken.spl(solana_chains_ts_1.SolanaMainnet.chainId, 'WSOL', 'So11111111111111111111111111111111111111112', 9);
21
+ exports.SOLANA_PYUSD = solana_token_ts_1.SolanaToken.spl(solana_chains_ts_1.SolanaMainnet.chainId, 'PYUSD', '2b1kV6DkPAnxd5ixfnxCpjxmKwqjjaYmCZfHsFu24GXo', 6);
22
+ exports.SOLANA_USDT = solana_token_ts_1.SolanaToken.spl(solana_chains_ts_1.SolanaMainnet.chainId, 'USDT', 'Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB', 6);
23
+ // assets.py:31 — Testnet native
24
+ exports.SOLANA_TESTNET_SOL = solana_chains_ts_1.SolanaTestnet.nativeToken;
25
+ // assets.py:33-43 — Devnet
26
+ exports.SOLANA_DEVNET_SOL = solana_chains_ts_1.SolanaDevnet.nativeToken;
27
+ exports.SOLANA_DEVNET_USDC = solana_token_ts_1.SolanaToken.spl(solana_chains_ts_1.SolanaDevnet.chainId, 'USDC', '4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU', 6);
28
+ exports.SOLANA_DEVNET_EURC = solana_token_ts_1.SolanaToken.spl(solana_chains_ts_1.SolanaDevnet.chainId, 'EURC', 'HzwqbKZw8HxMN6bF2yFZNrht3c2iXXzpKcFu7uBEDKtr', 6);
29
+ //# sourceMappingURL=solana_tokens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solana_tokens.js","sourceRoot":"","sources":["../../../solana/solana_tokens.ts"],"names":[],"mappings":";;;AAAA,uDAAgD;AAChD,yDAAgF;AAEhF;;;;;;;;;GASG;AAEH,2BAA2B;AACd,QAAA,UAAU,GAAG,gCAAa,CAAC,WAAW,CAAC;AACvC,QAAA,WAAW,GAAG,6BAAW,CAAC,GAAG,CACxC,gCAAa,CAAC,OAAO,EACrB,MAAM,EACN,8CAA8C,EAC9C,CAAC,CACF,CAAC;AACW,QAAA,WAAW,GAAG,6BAAW,CAAC,GAAG,CACxC,gCAAa,CAAC,OAAO,EACrB,MAAM,EACN,8CAA8C,EAC9C,CAAC,CACF,CAAC;AACW,QAAA,WAAW,GAAG,6BAAW,CAAC,GAAG,CACxC,gCAAa,CAAC,OAAO,EACrB,MAAM,EACN,6CAA6C,EAC7C,CAAC,CACF,CAAC;AACW,QAAA,YAAY,GAAG,6BAAW,CAAC,GAAG,CACzC,gCAAa,CAAC,OAAO,EACrB,OAAO,EACP,8CAA8C,EAC9C,CAAC,CACF,CAAC;AACW,QAAA,WAAW,GAAG,6BAAW,CAAC,GAAG,CACxC,gCAAa,CAAC,OAAO,EACrB,MAAM,EACN,8CAA8C,EAC9C,CAAC,CACF,CAAC;AAEF,gCAAgC;AACnB,QAAA,kBAAkB,GAAG,gCAAa,CAAC,WAAW,CAAC;AAE5D,2BAA2B;AACd,QAAA,iBAAiB,GAAG,+BAAY,CAAC,WAAW,CAAC;AAC7C,QAAA,kBAAkB,GAAG,6BAAW,CAAC,GAAG,CAC/C,+BAAY,CAAC,OAAO,EACpB,MAAM,EACN,8CAA8C,EAC9C,CAAC,CACF,CAAC;AACW,QAAA,kBAAkB,GAAG,6BAAW,CAAC,GAAG,CAC/C,+BAAY,CAAC,OAAO,EACpB,MAAM,EACN,8CAA8C,EAC9C,CAAC,CACF,CAAC"}
@@ -0,0 +1,149 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SolanaTransactionStatus = exports.SolanaTransactionFees = void 0;
4
+ const errors_ts_1 = require("../errors.js");
5
+ const transaction_status_ts_1 = require("../transaction_status.js");
6
+ class SolanaTransactionFees {
7
+ feePayer;
8
+ feeLamports;
9
+ /** Nullable because getTransaction may omit `computeUnitsConsumed` in
10
+ * older meta shapes; fabricating a value would misrepresent observed data. */
11
+ computeUnitsConsumed;
12
+ netLamportsChangeByFeePayer;
13
+ constructor(init) {
14
+ if (init.feePayer.length === 0) {
15
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, 'SolanaTransactionFees.feePayer must be non-empty');
16
+ }
17
+ // Observed on-chain values (not caller inputs) — reject negatives only.
18
+ if (init.feeLamports < 0n) {
19
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `SolanaTransactionFees.feeLamports must be >= 0, got ${init.feeLamports}`);
20
+ }
21
+ if (init.computeUnitsConsumed !== null && init.computeUnitsConsumed < 0n) {
22
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `SolanaTransactionFees.computeUnitsConsumed must be >= 0 or null, got ${init.computeUnitsConsumed}`);
23
+ }
24
+ this.feePayer = init.feePayer;
25
+ this.feeLamports = init.feeLamports;
26
+ this.computeUnitsConsumed = init.computeUnitsConsumed;
27
+ this.netLamportsChangeByFeePayer = init.netLamportsChangeByFeePayer;
28
+ }
29
+ }
30
+ exports.SolanaTransactionFees = SolanaTransactionFees;
31
+ class SolanaTransactionStatus extends transaction_status_ts_1.TransactionStatus {
32
+ fees;
33
+ constructor(init) {
34
+ super({
35
+ chainId: init.chainId,
36
+ status: init.status,
37
+ inclusionAt: init.inclusionAt,
38
+ error: init.error,
39
+ balanceChanges: init.balanceChanges,
40
+ });
41
+ this.fees = init.fees ?? null;
42
+ }
43
+ static successful(args) {
44
+ return new SolanaTransactionStatus({
45
+ chainId: args.chainId,
46
+ status: transaction_status_ts_1.TransactionStatusTypes.Success,
47
+ inclusionAt: args.inclusionAt,
48
+ balanceChanges: args.balanceChanges,
49
+ fees: args.fees,
50
+ error: null,
51
+ });
52
+ }
53
+ /**
54
+ * `fees` is nullable — the settled-but-unfetchable path (RPC pruned
55
+ * the slot's ledger data so `getTransaction` returned null but
56
+ * `getSignatureStatus` reports `finalized` + `err`) has no way to
57
+ * reconstruct fees; the alternative would be polling `Pending`
58
+ * indefinitely (iter-2 medium).
59
+ */
60
+ static failed(args) {
61
+ return new SolanaTransactionStatus({
62
+ chainId: args.chainId,
63
+ status: transaction_status_ts_1.TransactionStatusTypes.Failed,
64
+ inclusionAt: args.inclusionAt,
65
+ error: args.error,
66
+ balanceChanges: null,
67
+ fees: args.fees,
68
+ });
69
+ }
70
+ static pending(chainId) {
71
+ return new SolanaTransactionStatus({
72
+ chainId,
73
+ status: transaction_status_ts_1.TransactionStatusTypes.Pending,
74
+ inclusionAt: null,
75
+ error: null,
76
+ balanceChanges: null,
77
+ fees: null,
78
+ });
79
+ }
80
+ static notFound(chainId, error = null) {
81
+ return new SolanaTransactionStatus({
82
+ chainId,
83
+ status: transaction_status_ts_1.TransactionStatusTypes.NotFound,
84
+ inclusionAt: null,
85
+ error,
86
+ balanceChanges: null,
87
+ fees: null,
88
+ });
89
+ }
90
+ /**
91
+ * Deep-copies `balanceChanges` and reverses the fee debit on the fee_payer's
92
+ * native row — mirrors omnichain-py `SolanaTransactionStatus.balance_changes_excluding_fees`
93
+ * (impl/solana/base.py). Solana's raw balance deltas already include the
94
+ * fee_payer's fee debit; this helper strips it so callers see gross-of-fee
95
+ * balance movements.
96
+ */
97
+ balanceChangesExcludingFees(nativeAsset) {
98
+ if (this.balanceChanges === null) {
99
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, 'balanceChangesExcludingFees requires a non-null balanceChanges');
100
+ }
101
+ if (this.fees === null) {
102
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, 'balanceChangesExcludingFees requires non-null fees to know which fee_payer to credit');
103
+ }
104
+ // Validate the caller-provided `nativeAsset` is actually a native token
105
+ // for this chain — otherwise `upsert` would silently create a phantom
106
+ // `+feeLamports` credit under a foreign asset key on the fee_payer's
107
+ // row (a fabricated balance movement that no consumer would notice
108
+ // until reconciliation drift).
109
+ if (nativeAsset.chainId !== this.chainId) {
110
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `balanceChangesExcludingFees: nativeAsset.chainId=${nativeAsset.chainId} does not match this.chainId=${this.chainId}`);
111
+ }
112
+ if (nativeAsset.identifier !== undefined && nativeAsset.identifier !== '') {
113
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `balanceChangesExcludingFees: nativeAsset must be a native token (identifier undefined/empty), got identifier="${nativeAsset.identifier}"`);
114
+ }
115
+ // Also check decimals against the existing fee-payer native row (when
116
+ // present) — assetHashOf drops decimals, so a passed nativeAsset with
117
+ // decimals=6 would silently rewrite a decimals=9 row to 6 (upsert lets
118
+ // change.decimals win). That's a 10^3 error the moment
119
+ // balanceChangeHr accessors land in Wave 2B.
120
+ const existingFeePayerRow = this.balanceChanges.get(this.fees.feePayer);
121
+ if (existingFeePayerRow) {
122
+ // The native-token key is `${chainId}_` (empty identifier).
123
+ const nativeKey = `${nativeAsset.chainId}_`;
124
+ const existingNative = existingFeePayerRow.get(nativeKey);
125
+ if (existingNative && existingNative.change.decimals !== nativeAsset.decimals) {
126
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `balanceChangesExcludingFees: nativeAsset.decimals=${nativeAsset.decimals} does not match existing fee-payer native row's decimals=${existingNative.change.decimals}`);
127
+ }
128
+ }
129
+ // The fee-payer's native row may be *absent* — the decoder drops
130
+ // delta === 0n rows, so a fee-payer whose received lamports exactly
131
+ // offset the fee has no entry. The upsert below handles that
132
+ // correctly (creates a fresh +feeLamports entry).
133
+ const copy = new Map();
134
+ for (const [wallet, perWallet] of this.balanceChanges) {
135
+ const inner = new Map();
136
+ for (const [hash, entry] of perWallet) {
137
+ inner.set(hash, {
138
+ token: entry.token,
139
+ change: transaction_status_ts_1.AssetBalanceChange.fromMr(entry.change.balanceChangeMr, entry.change.decimals),
140
+ });
141
+ }
142
+ copy.set(wallet, inner);
143
+ }
144
+ transaction_status_ts_1.AssetBalanceChange.upsert(copy, this.fees.feePayer, nativeAsset, transaction_status_ts_1.AssetBalanceChange.fromMr(this.fees.feeLamports, nativeAsset.decimals));
145
+ return copy;
146
+ }
147
+ }
148
+ exports.SolanaTransactionStatus = SolanaTransactionStatus;
149
+ //# sourceMappingURL=solana_transaction_status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solana_transaction_status.js","sourceRoot":"","sources":["../../../solana/solana_transaction_status.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UnsignedSolanaTransaction = void 0;
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ const errors_ts_1 = require("../errors.js");
6
+ const network_type_ts_1 = require("../network_type.js");
7
+ const unsigned_transaction_ts_1 = require("../unsigned_transaction.js");
8
+ class UnsignedSolanaTransaction extends unsigned_transaction_ts_1.UnsignedTransaction {
9
+ transaction;
10
+ feePayer;
11
+ recentBlockhash;
12
+ lastValidBlockHeight;
13
+ instructions;
14
+ addressLookupTables;
15
+ constructor(init) {
16
+ super(init.chainId, network_type_ts_1.NetworkType.SOLANA);
17
+ this.transaction = init.transaction;
18
+ this.feePayer = init.feePayer;
19
+ this.recentBlockhash = init.recentBlockhash;
20
+ this.lastValidBlockHeight = init.lastValidBlockHeight;
21
+ this.instructions = init.instructions;
22
+ this.addressLookupTables = init.addressLookupTables ?? [];
23
+ }
24
+ /** Serializes the message (without signatures). Useful for off-line signers / tests. */
25
+ messageBytes() {
26
+ return this.transaction.message.serialize();
27
+ }
28
+ /**
29
+ * Alias for messageBytes(). The digest an external signer should sign for
30
+ * this VersionedTransaction. Named to match the docs.
31
+ */
32
+ digestForSigning() {
33
+ return this.messageBytes();
34
+ }
35
+ /**
36
+ * Attach externally-computed signatures (one per required signer, in the
37
+ * message's signer order) and return the wire-ready serialized transaction
38
+ * that can be handed to `chain.broadcast(bytes)`. Signature count must match
39
+ * the compiled message's `numRequiredSignatures`.
40
+ */
41
+ finalizeAndSerialize(signatures) {
42
+ const required = this.transaction.message.header.numRequiredSignatures;
43
+ if (signatures.length !== required) {
44
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `finalizeAndSerialize: expected ${required} signatures for this message (numRequiredSignatures), got ${signatures.length}`, { chainId: this.chainId });
45
+ }
46
+ const staticKeys = this.transaction.message.staticAccountKeys;
47
+ for (let i = 0; i < signatures.length; i++) {
48
+ if (signatures[i].length !== 64) {
49
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `finalizeAndSerialize: signature[${i}] length ${signatures[i].length} !== 64 (ed25519)`, { chainId: this.chainId });
50
+ }
51
+ if (i >= staticKeys.length) {
52
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `finalizeAndSerialize: signature index ${i} exceeds staticAccountKeys.length (${staticKeys.length}) — malformed compiled message`, { chainId: this.chainId });
53
+ }
54
+ this.transaction.addSignature(staticKeys[i], signatures[i]);
55
+ }
56
+ return this.transaction.serialize();
57
+ }
58
+ get feePayerPubkey() {
59
+ return new web3_js_1.PublicKey(this.feePayer);
60
+ }
61
+ }
62
+ exports.UnsignedSolanaTransaction = UnsignedSolanaTransaction;
63
+ //# sourceMappingURL=unsigned_solana_transaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unsigned_solana_transaction.js","sourceRoot":"","sources":["../../../solana/unsigned_solana_transaction.ts"],"names":[],"mappings":";;;AAAA,6CAAqH;AAErH,4CAA2D;AAC3D,wDAAiD;AACjD,wEAAiE;AA0BjE,MAAa,yBAA0B,SAAQ,6CAAmB;IACvD,WAAW,CAAuB;IAClC,QAAQ,CAAS;IACjB,eAAe,CAAS;IACxB,oBAAoB,CAAS;IAC7B,YAAY,CAA2B;IACvC,mBAAmB,CAA8B;IAE1D,YAAY,IAAmC;QAC7C,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,6BAAW,CAAC,MAAM,CAAC,CAAC;QACxC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QAC5C,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACtD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,IAAI,EAAE,CAAC;IAC5D,CAAC;IAED,wFAAwF;IACxF,YAAY;QACV,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;IAC9C,CAAC;IAED;;;OAGG;IACH,gBAAgB;QACd,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,UAAwB;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,qBAAqB,CAAC;QACvE,IAAI,UAAU,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACnC,MAAM,IAAI,sBAAU,CAClB,2BAAe,CAAC,eAAe,EAC/B,kCAAkC,QAAQ,6DAA6D,UAAU,CAAC,MAAM,EAAE,EAC1H,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAC1B,CAAC;QACJ,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,iBAAiB,CAAC;QAC9D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;gBAChC,MAAM,IAAI,sBAAU,CAClB,2BAAe,CAAC,eAAe,EAC/B,mCAAmC,CAAC,YAAY,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,mBAAmB,EACvF,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAC1B,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;gBAC3B,MAAM,IAAI,sBAAU,CAClB,2BAAe,CAAC,eAAe,EAC/B,yCAAyC,CAAC,sCAAsC,UAAU,CAAC,MAAM,gCAAgC,EACjI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAC1B,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;IACtC,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,mBAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;CACF;AAtED,8DAsEC"}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Token = void 0;
4
+ const errors_ts_1 = require("./errors.js");
5
+ class Token {
6
+ chainId;
7
+ symbol;
8
+ identifier;
9
+ decimals;
10
+ constructor(chainId, symbol, identifier, decimals) {
11
+ if (!Number.isInteger(chainId)) {
12
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, 'Token chainId must be an integer');
13
+ }
14
+ if (!symbol) {
15
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, 'Token symbol is required');
16
+ }
17
+ if (!Number.isInteger(decimals) || decimals < 0) {
18
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, 'Token decimals must be a non-negative integer');
19
+ }
20
+ this.chainId = chainId;
21
+ this.symbol = symbol;
22
+ this.identifier = identifier;
23
+ this.decimals = decimals;
24
+ }
25
+ isNative() {
26
+ return this.identifier === undefined;
27
+ }
28
+ /**
29
+ * Identity is `(chainId, symbol, identifier)` — decimals is deliberately
30
+ * NOT part of equality. Mirrors omnichain-py/base/base.py:60-65
31
+ * (`AbstractAsset.__eq__`).
32
+ *
33
+ * **Do NOT use `equals` as a precondition for amount scaling** — two Token
34
+ * instances can compare equal while disagreeing on decimals. For that
35
+ * safety check use `strictEquals(other)` (which includes decimals).
36
+ *
37
+ * For identifier-only comparison (ignoring both symbol drift and decimals),
38
+ * use `sameAsset(other)`.
39
+ */
40
+ equals(other) {
41
+ return (this.chainId === other.chainId &&
42
+ this.symbol === other.symbol &&
43
+ this.identifier === other.identifier);
44
+ }
45
+ /**
46
+ * Strict equality including `decimals`. Use before parseUnits-style
47
+ * conversions where a mismatched decimals would silently mis-scale amounts.
48
+ */
49
+ strictEquals(other) {
50
+ return this.equals(other) && this.decimals === other.decimals;
51
+ }
52
+ /**
53
+ * Identifier-only equality — same chain + same contract address / mint /
54
+ * native marker, regardless of symbol drift (e.g. `'USDT'` vs `'USD₮0'`
55
+ * for Arbitrum USDT). Useful for registry / lookup paths where the
56
+ * consumer might not know the canonical symbol.
57
+ */
58
+ sameAsset(other) {
59
+ return this.chainId === other.chainId && this.identifier === other.identifier;
60
+ }
61
+ toString() {
62
+ return `Token[chainId=${this.chainId}, symbol=${this.symbol}, identifier=${this.identifier ?? 'NATIVE'}, decimals=${this.decimals}]`;
63
+ }
64
+ }
65
+ exports.Token = Token;
66
+ //# sourceMappingURL=token.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token.js","sourceRoot":"","sources":["../../token.ts"],"names":[],"mappings":";;;AAAA,2CAA0D;AAE1D,MAAsB,KAAK;IAChB,OAAO,CAAS;IAChB,MAAM,CAAS;IACf,UAAU,CAAU;IACpB,QAAQ,CAAS;IAE1B,YACE,OAAe,EACf,MAAc,EACd,UAA8B,EAC9B,QAAgB;QAEhB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,sBAAU,CAAC,2BAAe,CAAC,eAAe,EAAE,kCAAkC,CAAC,CAAC;QAC5F,CAAC;QACD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,sBAAU,CAAC,2BAAe,CAAC,eAAe,EAAE,0BAA0B,CAAC,CAAC;QACpF,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;YAChD,MAAM,IAAI,sBAAU,CAClB,2BAAe,CAAC,eAAe,EAC/B,+CAA+C,CAChD,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC;IACvC,CAAC;IAED;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,KAAY;QACjB,OAAO,CACL,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO;YAC9B,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAC5B,IAAI,CAAC,UAAU,KAAK,KAAK,CAAC,UAAU,CACrC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,YAAY,CAAC,KAAY;QACvB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,CAAC;IAChE,CAAC;IAED;;;;;OAKG;IACH,SAAS,CAAC,KAAY;QACpB,OAAO,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,UAAU,KAAK,KAAK,CAAC,UAAU,CAAC;IAChF,CAAC;IAED,QAAQ;QACN,OAAO,iBAAiB,IAAI,CAAC,OAAO,YAAY,IAAI,CAAC,MAAM,gBAAgB,IAAI,CAAC,UAAU,IAAI,QAAQ,cAAc,IAAI,CAAC,QAAQ,GAAG,CAAC;IACvI,CAAC;CACF;AA3ED,sBA2EC"}