@getomnichain/omnichain 0.5.1 → 0.6.1

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 (300) hide show
  1. package/CHANGELOG.md +123 -0
  2. package/README.md +5 -3
  3. package/dist/cjs/address.factory.js +7 -4
  4. package/dist/cjs/address.factory.js.map +1 -1
  5. package/dist/cjs/asset_balance.js +7 -0
  6. package/dist/cjs/asset_balance.js.map +1 -0
  7. package/dist/cjs/asset_map.js +45 -0
  8. package/dist/cjs/asset_map.js.map +1 -0
  9. package/dist/cjs/asset_registry.js +21 -0
  10. package/dist/cjs/asset_registry.js.map +1 -0
  11. package/dist/cjs/bip39.js +88 -0
  12. package/dist/cjs/bip39.js.map +1 -0
  13. package/dist/cjs/bytes_from_hex.js +34 -0
  14. package/dist/cjs/bytes_from_hex.js.map +1 -0
  15. package/dist/cjs/chain_type.js +35 -0
  16. package/dist/cjs/chain_type.js.map +1 -0
  17. package/dist/cjs/evm/evm_chain.js +16 -0
  18. package/dist/cjs/evm/evm_chain.js.map +1 -1
  19. package/dist/cjs/index.js +12 -0
  20. package/dist/cjs/index.js.map +1 -1
  21. package/dist/cjs/network_type.js +5 -2
  22. package/dist/cjs/network_type.js.map +1 -1
  23. package/dist/cjs/python_builtins.js +225 -0
  24. package/dist/cjs/python_builtins.js.map +1 -0
  25. package/dist/cjs/python_json.js +120 -0
  26. package/dist/cjs/python_json.js.map +1 -0
  27. package/dist/cjs/python_pydantic.js +50 -0
  28. package/dist/cjs/python_pydantic.js.map +1 -0
  29. package/dist/cjs/python_repr.js +172 -0
  30. package/dist/cjs/python_repr.js.map +1 -0
  31. package/dist/cjs/signed_transaction.js +24 -0
  32. package/dist/cjs/signed_transaction.js.map +1 -0
  33. package/dist/cjs/stellar/index.js +26 -0
  34. package/dist/cjs/stellar/index.js.map +1 -0
  35. package/dist/cjs/stellar/stellar_address.js +25 -0
  36. package/dist/cjs/stellar/stellar_address.js.map +1 -0
  37. package/dist/cjs/stellar/stellar_asset.js +155 -0
  38. package/dist/cjs/stellar/stellar_asset.js.map +1 -0
  39. package/dist/cjs/stellar/stellar_assets.js +26 -0
  40. package/dist/cjs/stellar/stellar_assets.js.map +1 -0
  41. package/dist/cjs/stellar/stellar_chain.js +1334 -0
  42. package/dist/cjs/stellar/stellar_chain.js.map +1 -0
  43. package/dist/cjs/stellar/stellar_chains.js +28 -0
  44. package/dist/cjs/stellar/stellar_chains.js.map +1 -0
  45. package/dist/cjs/stellar/stellar_gas_pricing.js +22 -0
  46. package/dist/cjs/stellar/stellar_gas_pricing.js.map +1 -0
  47. package/dist/cjs/stellar/stellar_strkey.js +71 -0
  48. package/dist/cjs/stellar/stellar_strkey.js.map +1 -0
  49. package/dist/cjs/stellar/stellar_transaction_status.js +72 -0
  50. package/dist/cjs/stellar/stellar_transaction_status.js.map +1 -0
  51. package/dist/cjs/stellar/stellar_transactions.js +475 -0
  52. package/dist/cjs/stellar/stellar_transactions.js.map +1 -0
  53. package/dist/cjs/stellar/stellar_wallet.js +195 -0
  54. package/dist/cjs/stellar/stellar_wallet.js.map +1 -0
  55. package/dist/cjs/token.js +3 -1
  56. package/dist/cjs/token.js.map +1 -1
  57. package/dist/cjs/transaction_json.js +85 -0
  58. package/dist/cjs/transaction_json.js.map +1 -0
  59. package/dist/cjs/transaction_prerequisite.js +19 -0
  60. package/dist/cjs/transaction_prerequisite.js.map +1 -0
  61. package/dist/cjs/transaction_simulation.js +21 -0
  62. package/dist/cjs/transaction_simulation.js.map +1 -0
  63. package/dist/cjs/tron/index.js +32 -0
  64. package/dist/cjs/tron/index.js.map +1 -0
  65. package/dist/cjs/tron/tron_abi.js +287 -0
  66. package/dist/cjs/tron/tron_abi.js.map +1 -0
  67. package/dist/cjs/tron/tron_address.js +38 -0
  68. package/dist/cjs/tron/tron_address.js.map +1 -0
  69. package/dist/cjs/tron/tron_asset.js +56 -0
  70. package/dist/cjs/tron/tron_asset.js.map +1 -0
  71. package/dist/cjs/tron/tron_assets.js +17 -0
  72. package/dist/cjs/tron/tron_assets.js.map +1 -0
  73. package/dist/cjs/tron/tron_base58.js +95 -0
  74. package/dist/cjs/tron/tron_base58.js.map +1 -0
  75. package/dist/cjs/tron/tron_canonical_transaction.js +268 -0
  76. package/dist/cjs/tron/tron_canonical_transaction.js.map +1 -0
  77. package/dist/cjs/tron/tron_chain.js +809 -0
  78. package/dist/cjs/tron/tron_chain.js.map +1 -0
  79. package/dist/cjs/tron/tron_chains.js +19 -0
  80. package/dist/cjs/tron/tron_chains.js.map +1 -0
  81. package/dist/cjs/tron/tron_client.js +327 -0
  82. package/dist/cjs/tron/tron_client.js.map +1 -0
  83. package/dist/cjs/tron/tron_contract.js +195 -0
  84. package/dist/cjs/tron/tron_contract.js.map +1 -0
  85. package/dist/cjs/tron/tron_gas_pricing.js +21 -0
  86. package/dist/cjs/tron/tron_gas_pricing.js.map +1 -0
  87. package/dist/cjs/tron/tron_keys.js +251 -0
  88. package/dist/cjs/tron/tron_keys.js.map +1 -0
  89. package/dist/cjs/tron/tron_transaction_builder.js +196 -0
  90. package/dist/cjs/tron/tron_transaction_builder.js.map +1 -0
  91. package/dist/cjs/tron/tron_transaction_status.js +118 -0
  92. package/dist/cjs/tron/tron_transaction_status.js.map +1 -0
  93. package/dist/cjs/tron/tron_transactions.js +192 -0
  94. package/dist/cjs/tron/tron_transactions.js.map +1 -0
  95. package/dist/cjs/tron/tron_wallet.js +152 -0
  96. package/dist/cjs/tron/tron_wallet.js.map +1 -0
  97. package/dist/cjs/unsigned_transaction.js +12 -0
  98. package/dist/cjs/unsigned_transaction.js.map +1 -1
  99. package/dist/cjs/wallet.base.js +29 -0
  100. package/dist/cjs/wallet.base.js.map +1 -0
  101. package/dist/esm/address.factory.d.ts.map +1 -1
  102. package/dist/esm/address.factory.js +7 -4
  103. package/dist/esm/address.factory.js.map +1 -1
  104. package/dist/esm/asset_balance.d.ts +5 -0
  105. package/dist/esm/asset_balance.d.ts.map +1 -0
  106. package/dist/esm/asset_balance.js +3 -0
  107. package/dist/esm/asset_balance.js.map +1 -0
  108. package/dist/esm/asset_map.d.ts +12 -0
  109. package/dist/esm/asset_map.d.ts.map +1 -0
  110. package/dist/esm/asset_map.js +40 -0
  111. package/dist/esm/asset_map.js.map +1 -0
  112. package/dist/esm/asset_registry.d.ts +6 -0
  113. package/dist/esm/asset_registry.d.ts.map +1 -0
  114. package/dist/esm/asset_registry.js +15 -0
  115. package/dist/esm/asset_registry.js.map +1 -0
  116. package/dist/esm/bip39.d.ts +4 -0
  117. package/dist/esm/bip39.d.ts.map +1 -0
  118. package/dist/esm/bip39.js +83 -0
  119. package/dist/esm/bip39.js.map +1 -0
  120. package/dist/esm/bytes_from_hex.d.ts +2 -0
  121. package/dist/esm/bytes_from_hex.d.ts.map +1 -0
  122. package/dist/esm/bytes_from_hex.js +31 -0
  123. package/dist/esm/bytes_from_hex.js.map +1 -0
  124. package/dist/esm/chain_type.d.ts +29 -0
  125. package/dist/esm/chain_type.d.ts.map +1 -0
  126. package/dist/esm/chain_type.js +32 -0
  127. package/dist/esm/chain_type.js.map +1 -0
  128. package/dist/esm/evm/evm_chain.d.ts +1 -0
  129. package/dist/esm/evm/evm_chain.d.ts.map +1 -1
  130. package/dist/esm/evm/evm_chain.js +17 -1
  131. package/dist/esm/evm/evm_chain.js.map +1 -1
  132. package/dist/esm/index.d.ts +12 -0
  133. package/dist/esm/index.d.ts.map +1 -1
  134. package/dist/esm/index.js +12 -0
  135. package/dist/esm/index.js.map +1 -1
  136. package/dist/esm/network_type.d.ts +3 -2
  137. package/dist/esm/network_type.d.ts.map +1 -1
  138. package/dist/esm/network_type.js +6 -3
  139. package/dist/esm/network_type.js.map +1 -1
  140. package/dist/esm/python_builtins.d.ts +13 -0
  141. package/dist/esm/python_builtins.d.ts.map +1 -0
  142. package/dist/esm/python_builtins.js +212 -0
  143. package/dist/esm/python_builtins.js.map +1 -0
  144. package/dist/esm/python_json.d.ts +9 -0
  145. package/dist/esm/python_json.d.ts.map +1 -0
  146. package/dist/esm/python_json.js +117 -0
  147. package/dist/esm/python_json.js.map +1 -0
  148. package/dist/esm/python_pydantic.d.ts +11 -0
  149. package/dist/esm/python_pydantic.d.ts.map +1 -0
  150. package/dist/esm/python_pydantic.js +39 -0
  151. package/dist/esm/python_pydantic.js.map +1 -0
  152. package/dist/esm/python_repr.d.ts +17 -0
  153. package/dist/esm/python_repr.d.ts.map +1 -0
  154. package/dist/esm/python_repr.js +160 -0
  155. package/dist/esm/python_repr.js.map +1 -0
  156. package/dist/esm/signed_transaction.d.ts +17 -0
  157. package/dist/esm/signed_transaction.d.ts.map +1 -0
  158. package/dist/esm/signed_transaction.js +19 -0
  159. package/dist/esm/signed_transaction.js.map +1 -0
  160. package/dist/esm/stellar/index.d.ts +10 -0
  161. package/dist/esm/stellar/index.d.ts.map +1 -0
  162. package/dist/esm/stellar/index.js +10 -0
  163. package/dist/esm/stellar/index.js.map +1 -0
  164. package/dist/esm/stellar/stellar_address.d.ts +8 -0
  165. package/dist/esm/stellar/stellar_address.d.ts.map +1 -0
  166. package/dist/esm/stellar/stellar_address.js +21 -0
  167. package/dist/esm/stellar/stellar_address.js.map +1 -0
  168. package/dist/esm/stellar/stellar_asset.d.ts +52 -0
  169. package/dist/esm/stellar/stellar_asset.d.ts.map +1 -0
  170. package/dist/esm/stellar/stellar_asset.js +147 -0
  171. package/dist/esm/stellar/stellar_asset.js.map +1 -0
  172. package/dist/esm/stellar/stellar_assets.d.ts +11 -0
  173. package/dist/esm/stellar/stellar_assets.d.ts.map +1 -0
  174. package/dist/esm/stellar/stellar_assets.js +23 -0
  175. package/dist/esm/stellar/stellar_assets.js.map +1 -0
  176. package/dist/esm/stellar/stellar_chain.d.ts +173 -0
  177. package/dist/esm/stellar/stellar_chain.d.ts.map +1 -0
  178. package/dist/esm/stellar/stellar_chain.js +1325 -0
  179. package/dist/esm/stellar/stellar_chain.js.map +1 -0
  180. package/dist/esm/stellar/stellar_chains.d.ts +5 -0
  181. package/dist/esm/stellar/stellar_chains.d.ts.map +1 -0
  182. package/dist/esm/stellar/stellar_chains.js +25 -0
  183. package/dist/esm/stellar/stellar_chains.js.map +1 -0
  184. package/dist/esm/stellar/stellar_gas_pricing.d.ts +13 -0
  185. package/dist/esm/stellar/stellar_gas_pricing.d.ts.map +1 -0
  186. package/dist/esm/stellar/stellar_gas_pricing.js +18 -0
  187. package/dist/esm/stellar/stellar_gas_pricing.js.map +1 -0
  188. package/dist/esm/stellar/stellar_strkey.d.ts +3 -0
  189. package/dist/esm/stellar/stellar_strkey.d.ts.map +1 -0
  190. package/dist/esm/stellar/stellar_strkey.js +67 -0
  191. package/dist/esm/stellar/stellar_strkey.js.map +1 -0
  192. package/dist/esm/stellar/stellar_transaction_status.d.ts +39 -0
  193. package/dist/esm/stellar/stellar_transaction_status.d.ts.map +1 -0
  194. package/dist/esm/stellar/stellar_transaction_status.js +68 -0
  195. package/dist/esm/stellar/stellar_transaction_status.js.map +1 -0
  196. package/dist/esm/stellar/stellar_transactions.d.ts +166 -0
  197. package/dist/esm/stellar/stellar_transactions.d.ts.map +1 -0
  198. package/dist/esm/stellar/stellar_transactions.js +451 -0
  199. package/dist/esm/stellar/stellar_transactions.js.map +1 -0
  200. package/dist/esm/stellar/stellar_wallet.d.ts +43 -0
  201. package/dist/esm/stellar/stellar_wallet.d.ts.map +1 -0
  202. package/dist/esm/stellar/stellar_wallet.js +190 -0
  203. package/dist/esm/stellar/stellar_wallet.js.map +1 -0
  204. package/dist/esm/token.d.ts +1 -0
  205. package/dist/esm/token.d.ts.map +1 -1
  206. package/dist/esm/token.js +3 -1
  207. package/dist/esm/token.js.map +1 -1
  208. package/dist/esm/transaction_json.d.ts +21 -0
  209. package/dist/esm/transaction_json.d.ts.map +1 -0
  210. package/dist/esm/transaction_json.js +75 -0
  211. package/dist/esm/transaction_json.js.map +1 -0
  212. package/dist/esm/transaction_prerequisite.d.ts +17 -0
  213. package/dist/esm/transaction_prerequisite.d.ts.map +1 -0
  214. package/dist/esm/transaction_prerequisite.js +13 -0
  215. package/dist/esm/transaction_prerequisite.js.map +1 -0
  216. package/dist/esm/transaction_simulation.d.ts +20 -0
  217. package/dist/esm/transaction_simulation.d.ts.map +1 -0
  218. package/dist/esm/transaction_simulation.js +17 -0
  219. package/dist/esm/transaction_simulation.js.map +1 -0
  220. package/dist/esm/tron/index.d.ts +16 -0
  221. package/dist/esm/tron/index.d.ts.map +1 -0
  222. package/dist/esm/tron/index.js +16 -0
  223. package/dist/esm/tron/index.js.map +1 -0
  224. package/dist/esm/tron/tron_abi.d.ts +3 -0
  225. package/dist/esm/tron/tron_abi.d.ts.map +1 -0
  226. package/dist/esm/tron/tron_abi.js +283 -0
  227. package/dist/esm/tron/tron_abi.js.map +1 -0
  228. package/dist/esm/tron/tron_address.d.ts +10 -0
  229. package/dist/esm/tron/tron_address.d.ts.map +1 -0
  230. package/dist/esm/tron/tron_address.js +34 -0
  231. package/dist/esm/tron/tron_address.js.map +1 -0
  232. package/dist/esm/tron/tron_asset.d.ts +19 -0
  233. package/dist/esm/tron/tron_asset.d.ts.map +1 -0
  234. package/dist/esm/tron/tron_asset.js +51 -0
  235. package/dist/esm/tron/tron_asset.js.map +1 -0
  236. package/dist/esm/tron/tron_assets.d.ts +10 -0
  237. package/dist/esm/tron/tron_assets.d.ts.map +1 -0
  238. package/dist/esm/tron/tron_assets.js +14 -0
  239. package/dist/esm/tron/tron_assets.js.map +1 -0
  240. package/dist/esm/tron/tron_base58.d.ts +7 -0
  241. package/dist/esm/tron/tron_base58.d.ts.map +1 -0
  242. package/dist/esm/tron/tron_base58.js +84 -0
  243. package/dist/esm/tron/tron_base58.js.map +1 -0
  244. package/dist/esm/tron/tron_canonical_transaction.d.ts +164 -0
  245. package/dist/esm/tron/tron_canonical_transaction.d.ts.map +1 -0
  246. package/dist/esm/tron/tron_canonical_transaction.js +262 -0
  247. package/dist/esm/tron/tron_canonical_transaction.js.map +1 -0
  248. package/dist/esm/tron/tron_chain.d.ts +136 -0
  249. package/dist/esm/tron/tron_chain.d.ts.map +1 -0
  250. package/dist/esm/tron/tron_chain.js +801 -0
  251. package/dist/esm/tron/tron_chain.js.map +1 -0
  252. package/dist/esm/tron/tron_chains.d.ts +5 -0
  253. package/dist/esm/tron/tron_chains.d.ts.map +1 -0
  254. package/dist/esm/tron/tron_chains.js +16 -0
  255. package/dist/esm/tron/tron_chains.js.map +1 -0
  256. package/dist/esm/tron/tron_client.d.ts +56 -0
  257. package/dist/esm/tron/tron_client.d.ts.map +1 -0
  258. package/dist/esm/tron/tron_client.js +319 -0
  259. package/dist/esm/tron/tron_client.js.map +1 -0
  260. package/dist/esm/tron/tron_contract.d.ts +69 -0
  261. package/dist/esm/tron/tron_contract.d.ts.map +1 -0
  262. package/dist/esm/tron/tron_contract.js +190 -0
  263. package/dist/esm/tron/tron_contract.js.map +1 -0
  264. package/dist/esm/tron/tron_gas_pricing.d.ts +12 -0
  265. package/dist/esm/tron/tron_gas_pricing.d.ts.map +1 -0
  266. package/dist/esm/tron/tron_gas_pricing.js +17 -0
  267. package/dist/esm/tron/tron_gas_pricing.js.map +1 -0
  268. package/dist/esm/tron/tron_keys.d.ts +61 -0
  269. package/dist/esm/tron/tron_keys.d.ts.map +1 -0
  270. package/dist/esm/tron/tron_keys.js +228 -0
  271. package/dist/esm/tron/tron_keys.js.map +1 -0
  272. package/dist/esm/tron/tron_transaction_builder.d.ts +56 -0
  273. package/dist/esm/tron/tron_transaction_builder.d.ts.map +1 -0
  274. package/dist/esm/tron/tron_transaction_builder.js +188 -0
  275. package/dist/esm/tron/tron_transaction_builder.js.map +1 -0
  276. package/dist/esm/tron/tron_transaction_status.d.ts +54 -0
  277. package/dist/esm/tron/tron_transaction_status.d.ts.map +1 -0
  278. package/dist/esm/tron/tron_transaction_status.js +113 -0
  279. package/dist/esm/tron/tron_transaction_status.js.map +1 -0
  280. package/dist/esm/tron/tron_transactions.d.ts +96 -0
  281. package/dist/esm/tron/tron_transactions.d.ts.map +1 -0
  282. package/dist/esm/tron/tron_transactions.js +181 -0
  283. package/dist/esm/tron/tron_transactions.js.map +1 -0
  284. package/dist/esm/tron/tron_wallet.d.ts +43 -0
  285. package/dist/esm/tron/tron_wallet.d.ts.map +1 -0
  286. package/dist/esm/tron/tron_wallet.js +148 -0
  287. package/dist/esm/tron/tron_wallet.js.map +1 -0
  288. package/dist/esm/unsigned_transaction.d.ts +5 -0
  289. package/dist/esm/unsigned_transaction.d.ts.map +1 -1
  290. package/dist/esm/unsigned_transaction.js +12 -0
  291. package/dist/esm/unsigned_transaction.js.map +1 -1
  292. package/dist/esm/wallet.base.d.ts +32 -0
  293. package/dist/esm/wallet.base.d.ts.map +1 -0
  294. package/dist/esm/wallet.base.js +23 -0
  295. package/dist/esm/wallet.base.js.map +1 -0
  296. package/docs/CONNECTIONS.md +1 -0
  297. package/docs/README.md +16 -7
  298. package/docs/stellar.md +113 -0
  299. package/docs/tron.md +103 -0
  300. package/package.json +14 -2
@@ -0,0 +1,475 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StellarTransactionSimulationResult = exports.StellarTransactionFees = exports.StellarBroadcastTransactionResponse = exports.StellarSignedTransaction = exports.StellarUnsignedTransaction = exports.StellarChangeTrustPrerequisiteResponse = exports.StellarChangeTrustLineTransactionPrerequisite = exports.SorobanRpcErrorResponse = void 0;
4
+ exports.isInvokeHostFunctionOperation = isInvokeHostFunctionOperation;
5
+ exports.pyMemoStr = pyMemoStr;
6
+ exports.stellarTextMemo = stellarTextMemo;
7
+ exports.sorobanRpcError = sorobanRpcError;
8
+ exports.validateSimulateTransactionResponse = validateSimulateTransactionResponse;
9
+ exports.simulateSorobanTransaction = simulateSorobanTransaction;
10
+ exports.prepareSorobanTransaction = prepareSorobanTransaction;
11
+ exports.assembleSorobanTransaction = assembleSorobanTransaction;
12
+ exports.stellarOperationAmount = stellarOperationAmount;
13
+ exports.toClassicStellarAccountId = toClassicStellarAccountId;
14
+ exports.loadStellarAccount = loadStellarAccount;
15
+ exports.parseStellarExpertTransactionInfo = parseStellarExpertTransactionInfo;
16
+ exports.parseSignedStellarEnvelope = parseSignedStellarEnvelope;
17
+ const stellar_sdk_1 = require("@stellar/stellar-sdk");
18
+ const decimal_js_1 = require("decimal.js");
19
+ const errors_ts_1 = require("../errors.js");
20
+ const python_builtins_ts_1 = require("../python_builtins.js");
21
+ const python_pydantic_ts_1 = require("../python_pydantic.js");
22
+ const python_repr_ts_1 = require("../python_repr.js");
23
+ const network_type_ts_1 = require("../network_type.js");
24
+ const signed_transaction_ts_1 = require("../signed_transaction.js");
25
+ const transaction_json_ts_1 = require("../transaction_json.js");
26
+ const transaction_prerequisite_ts_1 = require("../transaction_prerequisite.js");
27
+ const transaction_simulation_ts_1 = require("../transaction_simulation.js");
28
+ const unsigned_transaction_ts_1 = require("../unsigned_transaction.js");
29
+ function isInvokeHostFunctionOperation(operation) {
30
+ return operation.body().switch().name === 'invokeHostFunction';
31
+ }
32
+ function pyMemoStr(memo) {
33
+ const valueBytes = () => (typeof memo.value === 'string' ? Buffer.from(memo.value, 'utf8') : memo.value);
34
+ switch (memo.type) {
35
+ case stellar_sdk_1.MemoText:
36
+ return `<TextMemo [memo=${(0, python_repr_ts_1.pyBytesRepr)(valueBytes())}]>`;
37
+ case stellar_sdk_1.MemoID:
38
+ return `<IdMemo [memo=${String(memo.value)}]>`;
39
+ case stellar_sdk_1.MemoHash:
40
+ return `<HashMemo [memo=${(0, python_repr_ts_1.pyBytesRepr)(valueBytes())}]>`;
41
+ case stellar_sdk_1.MemoReturn:
42
+ return `<ReturnHashMemo [memo=${(0, python_repr_ts_1.pyBytesRepr)(valueBytes())}]>`;
43
+ default:
44
+ return '<NoneMemo>';
45
+ }
46
+ }
47
+ const STELLAR_TEXT_MEMO_MAX_BYTES = 28;
48
+ function stellarTextMemo(text) {
49
+ const length = (0, python_builtins_ts_1.pyEncodeUtf8)(text).length;
50
+ if (length > STELLAR_TEXT_MEMO_MAX_BYTES) {
51
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `Text should be <= ${STELLAR_TEXT_MEMO_MAX_BYTES} bytes (ascii encoded), got ${length} bytes.`);
52
+ }
53
+ return stellar_sdk_1.Memo.text(text);
54
+ }
55
+ class SorobanRpcErrorResponse extends errors_ts_1.ChainError {
56
+ code;
57
+ data;
58
+ constructor(code, message, data, chainId) {
59
+ super(errors_ts_1.ChainErrorKinds.RpcError, message === undefined || message === null ? 'None' : String(message), { chainId });
60
+ this.name = 'SorobanRpcErrorResponse';
61
+ this.code = code;
62
+ this.data = data;
63
+ }
64
+ }
65
+ exports.SorobanRpcErrorResponse = SorobanRpcErrorResponse;
66
+ function jsonRpcError(value) {
67
+ return value !== null && typeof value === 'object' && !Array.isArray(value) && 'message' in value
68
+ ? value
69
+ : null;
70
+ }
71
+ function sorobanRpcError(err, chainId, rpcUrl) {
72
+ if (err instanceof errors_ts_1.ChainError)
73
+ return err;
74
+ const bodyError = jsonRpcError(err?.response?.data?.error);
75
+ const rpcError = err instanceof Error ? bodyError : jsonRpcError(err);
76
+ if (rpcError !== null)
77
+ return new SorobanRpcErrorResponse(rpcError.code, rpcError.message, rpcError.data, chainId);
78
+ if (err instanceof Error)
79
+ return new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.RpcError, err.message, { chainId }, (0, errors_ts_1.sanitizeCause)(err, rpcUrl));
80
+ return new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.RpcError, String(err), { chainId });
81
+ }
82
+ const SOROBAN_OPERATION_TYPES = new Set(['invokeHostFunction', 'extendFootprintTtl', 'restoreFootprint']);
83
+ function simulationResultsRepr(results) {
84
+ if (results === null)
85
+ return 'None';
86
+ const items = results.map((r) => `SimulateHostFunctionResult(auth=${r.auth === undefined || r.auth === null ? 'None' : (0, python_repr_ts_1.pyRepr)(r.auth)}, xdr=${(0, python_repr_ts_1.pyRepr)(r.xdr)})`);
87
+ return `[${items.join(', ')}]`;
88
+ }
89
+ function isSimulateHostFunctionResult(value) {
90
+ return (0, python_pydantic_ts_1.isPydanticDict)(value) && typeof value.xdr === 'string' && (0, python_pydantic_ts_1.isPydanticOptionalStrList)(value.auth);
91
+ }
92
+ function isRestorePreamble(value) {
93
+ return (0, python_pydantic_ts_1.isPydanticDict)(value) && typeof value.transactionData === 'string' && (0, python_pydantic_ts_1.isPydanticLaxInt)(value.minResourceFee);
94
+ }
95
+ function isLedgerEntryChange(value) {
96
+ return ((0, python_pydantic_ts_1.isPydanticDict)(value) &&
97
+ typeof value.type === 'string' &&
98
+ typeof value.key === 'string' &&
99
+ (0, python_pydantic_ts_1.isPydanticOptionalStr)(value.before) &&
100
+ (0, python_pydantic_ts_1.isPydanticOptionalStr)(value.after));
101
+ }
102
+ function validateSimulateTransactionResponse(result, chainId) {
103
+ const valid = (0, python_pydantic_ts_1.isPydanticDict)(result) &&
104
+ (0, python_pydantic_ts_1.isPydanticOptionalStr)(result.error) &&
105
+ (0, python_pydantic_ts_1.isPydanticOptionalStr)(result.transactionData) &&
106
+ ((0, python_pydantic_ts_1.isPydanticAbsent)(result.minResourceFee) || (0, python_pydantic_ts_1.isPydanticLaxInt)(result.minResourceFee)) &&
107
+ (0, python_pydantic_ts_1.isPydanticOptionalStrList)(result.events) &&
108
+ ((0, python_pydantic_ts_1.isPydanticAbsent)(result.results) || (Array.isArray(result.results) && result.results.every(isSimulateHostFunctionResult))) &&
109
+ ((0, python_pydantic_ts_1.isPydanticAbsent)(result.restorePreamble) || isRestorePreamble(result.restorePreamble)) &&
110
+ ((0, python_pydantic_ts_1.isPydanticAbsent)(result.stateChanges) || (Array.isArray(result.stateChanges) && result.stateChanges.every(isLedgerEntryChange))) &&
111
+ (0, python_pydantic_ts_1.isPydanticLaxInt)(result.latestLedger);
112
+ if (!valid) {
113
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.RpcError, 'Soroban simulateTransaction result does not match the SimulateTransactionResponse model', { chainId });
114
+ }
115
+ const fields = result;
116
+ return {
117
+ error: (fields.error ?? null),
118
+ transactionData: (fields.transactionData ?? null),
119
+ minResourceFee: (0, python_pydantic_ts_1.isPydanticAbsent)(fields.minResourceFee) ? null : (0, python_pydantic_ts_1.pydanticLaxIntValue)(fields.minResourceFee),
120
+ events: (fields.events ?? null),
121
+ results: (fields.results ?? null),
122
+ };
123
+ }
124
+ async function simulateSorobanTransaction(tx, chain) {
125
+ let result;
126
+ try {
127
+ result = await chain._sorobanRpc('simulateTransaction', { transaction: tx.toXDR(), resourceConfig: null, authMode: null });
128
+ }
129
+ catch (err) {
130
+ throw sorobanRpcError(err, chain.chainId, chain.sorobanRpcUrl);
131
+ }
132
+ return validateSimulateTransactionResponse(result, chain.chainId);
133
+ }
134
+ async function prepareSorobanTransaction(tx, chain) {
135
+ const simulation = await simulateSorobanTransaction(tx, chain);
136
+ if (simulation.error) {
137
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.SimulationFailed, 'Simulation transaction failed, the response contains error information.', { chainId: chain.chainId });
138
+ }
139
+ return assembleSorobanTransaction(tx, simulation, chain.chainId);
140
+ }
141
+ function assembleSorobanTransaction(tx, simulation, chainId) {
142
+ const envelope = tx.toEnvelope();
143
+ const transaction = envelope.v1().tx();
144
+ const operations = transaction.operations();
145
+ if (operations.length !== 1 || !SOROBAN_OPERATION_TYPES.has(operations[0].body().switch().name)) {
146
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, 'Unsupported transaction: must contain exactly one operation of type RestoreFootprint, InvokeHostFunction or ExtendFootprintTTL', { chainId });
147
+ }
148
+ if (simulation.transactionData === null) {
149
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.RpcError, '', { chainId });
150
+ }
151
+ const sorobanData = stellar_sdk_1.xdr.SorobanTransactionData.fromXDR(simulation.transactionData, 'base64');
152
+ let fee = BigInt(transaction.fee());
153
+ if (transaction.ext().switch() === 1) {
154
+ fee -= transaction.ext().sorobanData().resourceFee().toBigInt();
155
+ }
156
+ if (simulation.minResourceFee === null) {
157
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.RpcError, '', { chainId });
158
+ }
159
+ fee += simulation.minResourceFee;
160
+ transaction.fee(Number(fee));
161
+ transaction.ext(new stellar_sdk_1.xdr.TransactionExt(1, sorobanData));
162
+ const operation = operations[0].body();
163
+ if (operation.switch().name === 'invokeHostFunction') {
164
+ const results = simulation.results;
165
+ if (!results || results.length !== 1) {
166
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `Simulation results invalid: ${simulationResultsRepr(results)}`, { chainId });
167
+ }
168
+ const invoke = operation.invokeHostFunctionOp();
169
+ const auth = results[0].auth ?? [];
170
+ if (invoke.auth().length === 0 && auth.length > 0) {
171
+ invoke.auth(auth.map((entry) => stellar_sdk_1.xdr.SorobanAuthorizationEntry.fromXDR(entry, 'base64')));
172
+ }
173
+ }
174
+ envelope.v1().signatures([]);
175
+ return new stellar_sdk_1.Transaction(envelope, tx.networkPassphrase);
176
+ }
177
+ const STELLAR_AMOUNT_UPPER_LIMIT = '922337203685.4775807';
178
+ const STELLAR_AMOUNT_MAX_DECIMALS = 7;
179
+ function stellarOperationAmount(value, argumentName, opts = {}) {
180
+ const amount = new decimal_js_1.Decimal(value.toString());
181
+ const text = amount.toFixed();
182
+ if (amount.decimalPlaces() > STELLAR_AMOUNT_MAX_DECIMALS) {
183
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `Value of argument "${argumentName}" must have at most ${STELLAR_AMOUNT_MAX_DECIMALS} digits after the decimal: ${text}`);
184
+ }
185
+ if (amount.lt(0) || amount.gt(STELLAR_AMOUNT_UPPER_LIMIT)) {
186
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `Value of argument "${argumentName}" must represent a positive number and the max valid value is ${STELLAR_AMOUNT_UPPER_LIMIT}: ${text}`);
187
+ }
188
+ if (amount.isZero() && opts.allowZero !== true) {
189
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `Value of argument "${argumentName}" must be greater than zero: the Stellar network rejects a zero ${argumentName}`);
190
+ }
191
+ return text;
192
+ }
193
+ function toClassicStellarAccountId(address) {
194
+ if (stellar_sdk_1.StrKey.isValidEd25519PublicKey(address))
195
+ return address;
196
+ try {
197
+ return stellar_sdk_1.StrKey.encodeEd25519PublicKey(stellar_sdk_1.StrKey.decodeMed25519PublicKey(address).subarray(0, 32));
198
+ }
199
+ catch (err) {
200
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidAddress, `This is not a valid account: ${address}`, { address }, err);
201
+ }
202
+ }
203
+ class StellarChangeTrustLineTransactionPrerequisite extends transaction_prerequisite_ts_1.AbstractTransactionPrerequisite {
204
+ _chainId;
205
+ code;
206
+ issuer;
207
+ limit;
208
+ walletAddress;
209
+ constructor(init) {
210
+ super();
211
+ this._chainId = init.chainId;
212
+ this.code = init.code;
213
+ this.issuer = init.issuer;
214
+ this.limit = init.limit;
215
+ this.walletAddress = init.walletAddress;
216
+ }
217
+ get chainId() {
218
+ return this._chainId;
219
+ }
220
+ toString() {
221
+ return `StellarChangeTrustPrerequisite[code:${this.code}, issuer:${this.issuer}, limit:${this.limit.toString()}, wallet:${this.walletAddress}]`;
222
+ }
223
+ }
224
+ exports.StellarChangeTrustLineTransactionPrerequisite = StellarChangeTrustLineTransactionPrerequisite;
225
+ class StellarChangeTrustPrerequisiteResponse extends transaction_prerequisite_ts_1.AbstractHandledPrerequisiteResponse {
226
+ _skipped;
227
+ txHash;
228
+ constructor(init) {
229
+ super();
230
+ this._skipped = init.skipped;
231
+ this.txHash = init.txHash;
232
+ }
233
+ get skipped() {
234
+ return this._skipped;
235
+ }
236
+ toString() {
237
+ return `StellarChangeTrustPrerequisiteResponse[skipped=${(0, python_repr_ts_1.pyStr)(this.skipped)}, tx_hash=${(0, python_repr_ts_1.pyStr)(this.txHash)}]`;
238
+ }
239
+ }
240
+ exports.StellarChangeTrustPrerequisiteResponse = StellarChangeTrustPrerequisiteResponse;
241
+ class StellarUnsignedTransaction extends unsigned_transaction_ts_1.UnsignedTransaction {
242
+ static JSON_TYPE = 'StellarUnsignedTransaction';
243
+ sourceAccountId;
244
+ baseFee;
245
+ operations;
246
+ memo;
247
+ constructor(init) {
248
+ super(init.chainId, network_type_ts_1.NetworkType.STELLAR);
249
+ this.sourceAccountId = init.sourceAccountId;
250
+ this.baseFee = init.baseFee ?? null;
251
+ this.operations = init.operations;
252
+ this.memo = init.memo ?? null;
253
+ }
254
+ async buildTransactionEnvelope(chain) {
255
+ if (chain.chainId !== this.chainId) {
256
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `StellarUnsignedTransaction for chain ${this.chainId} cannot be built on chain ${chain.chainId}`, { chainId: this.chainId });
257
+ }
258
+ const sourceAccount = await loadStellarAccount(chain, this.sourceAccountId);
259
+ let baseFee = this.baseFee;
260
+ if (baseFee === null) {
261
+ baseFee = await chain.getBaseFee();
262
+ }
263
+ const hasInvokeHostOp = this.operations.some(isInvokeHostFunctionOperation);
264
+ if (hasInvokeHostOp) {
265
+ if (this.operations.length !== 1) {
266
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `InvokeHostFunction operation must have exactly 1 operation, got ${this.operations.length}`, { chainId: this.chainId });
267
+ }
268
+ if (this.memo !== null && this.memo.type !== stellar_sdk_1.MemoNone) {
269
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `Soroban Transactions (Operation InvokeHostFunction) does not support memo, received ${pyMemoStr(this.memo)}`, { chainId: this.chainId });
270
+ }
271
+ }
272
+ const builder = new stellar_sdk_1.TransactionBuilder(sourceAccount, {
273
+ fee: String(baseFee),
274
+ networkPassphrase: chain.networkPassphrase,
275
+ });
276
+ for (const operation of this.operations) {
277
+ builder.addOperation(operation);
278
+ }
279
+ if (this.memo !== null) {
280
+ builder.addMemo(this.memo);
281
+ }
282
+ builder.setTimeout(300);
283
+ let tx = builder.build();
284
+ if (hasInvokeHostOp) {
285
+ tx = await prepareSorobanTransaction(tx, chain);
286
+ }
287
+ return tx;
288
+ }
289
+ static validateEnvelope(envelope) {
290
+ const operations = envelope.operations;
291
+ const hasSorobanInvokeOp = operations.filter((op) => op.type === 'invokeHostFunction').length > 0;
292
+ if (hasSorobanInvokeOp && operations.length !== 1) {
293
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, 'Stellar envelop must have 1 operation (InvokeHostFunction) when calling soroban contracts');
294
+ }
295
+ }
296
+ static fromXdr(chain, envelopeXdr) {
297
+ const envelope = parseSignedStellarEnvelope(envelopeXdr, chain.networkPassphrase);
298
+ StellarUnsignedTransaction.validateEnvelope(envelope);
299
+ return new StellarUnsignedTransaction({
300
+ chainId: chain.chainId,
301
+ sourceAccountId: toClassicStellarAccountId(envelope.source),
302
+ operations: rawEnvelopeOperations(envelope),
303
+ memo: envelope.memo,
304
+ });
305
+ }
306
+ get isSorobanInvokeContractTransaction() {
307
+ return this.operations.length === 1 && isInvokeHostFunctionOperation(this.operations[0]);
308
+ }
309
+ toJson() {
310
+ return (0, transaction_json_ts_1.jsonTransactionEnvelope)(StellarUnsignedTransaction.JSON_TYPE, this.chainId, {
311
+ source_account_id: this.sourceAccountId,
312
+ base_fee: this.baseFee,
313
+ operations: this.operations.map((op) => op.toXDR('base64')),
314
+ memo: this.memo === null ? null : this.memo.toXDRObject().toXDR('base64'),
315
+ });
316
+ }
317
+ static fromJson(data) {
318
+ const payload = (0, transaction_json_ts_1.parseJsonTransactionEnvelope)(data, StellarUnsignedTransaction.JSON_TYPE);
319
+ const memoXdr = payload.memo;
320
+ return new StellarUnsignedTransaction({
321
+ chainId: (0, transaction_json_ts_1.jsonPayloadItem)(payload, 'chain_id'),
322
+ sourceAccountId: (0, transaction_json_ts_1.jsonPayloadItem)(payload, 'source_account_id'),
323
+ baseFee: payload.base_fee ?? null,
324
+ operations: (0, transaction_json_ts_1.jsonPayloadItem)(payload, 'operations').map((op) => stellar_sdk_1.xdr.Operation.fromXDR(op, 'base64')),
325
+ memo: memoXdr === null || memoXdr === undefined ? null : stellar_sdk_1.Memo.fromXDRObject(stellar_sdk_1.xdr.Memo.fromXDR(memoXdr, 'base64')),
326
+ });
327
+ }
328
+ toString() {
329
+ return `StellarUnsignedTransaction[source_account_id:${this.sourceAccountId}, operations:${this.operations.length}, base_fee:${(0, python_repr_ts_1.pyStr)(this.baseFee)}, memo:${this.memo === null ? 'None' : pyMemoStr(this.memo)}]`;
330
+ }
331
+ }
332
+ exports.StellarUnsignedTransaction = StellarUnsignedTransaction;
333
+ function rawEnvelopeOperations(envelope) {
334
+ const raw = envelope.toEnvelope();
335
+ const inner = raw.switch().name === 'envelopeTypeTxV0' ? raw.v0().tx() : raw.v1().tx();
336
+ return [...inner.operations()];
337
+ }
338
+ async function loadStellarAccount(chain, accountId) {
339
+ const classicAccountId = toClassicStellarAccountId(accountId);
340
+ const record = (await chain.asyncHorizonServer.accounts().accountId(classicAccountId).call());
341
+ const sequence = (0, python_builtins_ts_1.pyIntOf)((0, python_builtins_ts_1.pyItem)(record, 'sequence')).toString();
342
+ return stellar_sdk_1.StrKey.isValidMed25519PublicKey(accountId) ? stellar_sdk_1.MuxedAccount.fromAddress(accountId, sequence) : new stellar_sdk_1.Account(classicAccountId, sequence);
343
+ }
344
+ class StellarSignedTransaction extends signed_transaction_ts_1.AbstractSignedTransaction {
345
+ static JSON_TYPE = 'StellarSignedTransaction';
346
+ _chainId;
347
+ signedXdr;
348
+ networkPassphrase;
349
+ constructor(init) {
350
+ super();
351
+ this._chainId = init.chainId;
352
+ this.signedXdr = init.signedXdr;
353
+ this.networkPassphrase = init.networkPassphrase;
354
+ }
355
+ get chainId() {
356
+ return this._chainId;
357
+ }
358
+ get txHash() {
359
+ return parseSignedStellarEnvelope(this.signedXdr, this.networkPassphrase).hash().toString('hex');
360
+ }
361
+ toJson() {
362
+ return (0, transaction_json_ts_1.jsonTransactionEnvelope)(StellarSignedTransaction.JSON_TYPE, this.chainId, {
363
+ signed_xdr: this.signedXdr,
364
+ network_passphrase: this.networkPassphrase,
365
+ });
366
+ }
367
+ static fromJson(data) {
368
+ const payload = (0, transaction_json_ts_1.parseJsonTransactionEnvelope)(data, StellarSignedTransaction.JSON_TYPE);
369
+ return new StellarSignedTransaction({
370
+ chainId: (0, transaction_json_ts_1.jsonPayloadItem)(payload, 'chain_id'),
371
+ signedXdr: (0, transaction_json_ts_1.jsonPayloadItem)(payload, 'signed_xdr'),
372
+ networkPassphrase: (0, transaction_json_ts_1.jsonPayloadItem)(payload, 'network_passphrase'),
373
+ });
374
+ }
375
+ }
376
+ exports.StellarSignedTransaction = StellarSignedTransaction;
377
+ (0, transaction_json_ts_1.registerJsonTransactionType)(StellarUnsignedTransaction);
378
+ (0, transaction_json_ts_1.registerJsonTransactionType)(StellarSignedTransaction);
379
+ class StellarBroadcastTransactionResponse extends signed_transaction_ts_1.AbstractBroadcastTransactionResponse {
380
+ _chain;
381
+ _txHash;
382
+ _broadcastError;
383
+ constructor(init) {
384
+ super();
385
+ if (init.chain.networkType !== network_type_ts_1.NetworkType.STELLAR) {
386
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `Unsupported chain ${String(init.chain)}, expected StellarChain.`);
387
+ }
388
+ this._chain = init.chain;
389
+ this._txHash = init.txHash;
390
+ this._broadcastError = init.broadcastError ?? null;
391
+ }
392
+ get chain() {
393
+ return this._chain;
394
+ }
395
+ get txHash() {
396
+ return this._txHash;
397
+ }
398
+ get broadcastError() {
399
+ return this._broadcastError;
400
+ }
401
+ toString() {
402
+ return `StellarBroadcastTransactionResponse[tx_hash:${this.txHash}, broadcast_error:${(0, python_repr_ts_1.pyStr)(this.broadcastError)}]`;
403
+ }
404
+ }
405
+ exports.StellarBroadcastTransactionResponse = StellarBroadcastTransactionResponse;
406
+ class StellarTransactionFees {
407
+ feeStroops;
408
+ feePayer;
409
+ constructor(init) {
410
+ this.feeStroops = init.feeStroops;
411
+ this.feePayer = init.feePayer;
412
+ }
413
+ toString() {
414
+ return `StellarTransactionFees[stroops:${this.feeStroops}, payer:${this.feePayer}]`;
415
+ }
416
+ }
417
+ exports.StellarTransactionFees = StellarTransactionFees;
418
+ class StellarTransactionSimulationResult extends transaction_simulation_ts_1.AbstractTransactionSimulationResult {
419
+ fees;
420
+ transactionType;
421
+ memo;
422
+ constructor(init) {
423
+ super(init);
424
+ this.fees = init.fees ?? null;
425
+ this.transactionType = init.transactionType ?? null;
426
+ this.memo = init.memo ?? null;
427
+ }
428
+ toString() {
429
+ return (`StellarTransactionSimulationResult[chain_id:${this.chainId},status:${this.statusType},` +
430
+ `balance_changes:${(0, python_repr_ts_1.pyBalanceChangesRepr)(this.balanceChanges)},error:${(0, python_repr_ts_1.pyStr)(this.error)},fees:${(0, python_repr_ts_1.pyStr)(this.fees)},` +
431
+ `transaction_type:${(0, python_repr_ts_1.pyStr)(this.transactionType)},memo:${this.memo === null ? 'None' : pyMemoStr(this.memo)},]`);
432
+ }
433
+ }
434
+ exports.StellarTransactionSimulationResult = StellarTransactionSimulationResult;
435
+ function parseStellarExpertTransactionInfo(value) {
436
+ if (value === null || typeof value !== 'object' || Array.isArray(value)) {
437
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.TransactionDecodeFailed, 'Stellar Expert transaction info must be an object');
438
+ }
439
+ const obj = value;
440
+ const str = (key) => {
441
+ const v = obj[key];
442
+ if (typeof v === 'string')
443
+ return v;
444
+ if (typeof v === 'number' && Number.isFinite(v))
445
+ return String(v);
446
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.TransactionDecodeFailed, `Stellar Expert transaction info field ${key} must be a string`);
447
+ };
448
+ const int = (key) => {
449
+ const v = obj[key];
450
+ if (typeof v === 'number' && Number.isInteger(v))
451
+ return v;
452
+ if (typeof v === 'string' && /^\s*[-+]?\d+\s*$/.test(v))
453
+ return Number.parseInt(v, 10);
454
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.TransactionDecodeFailed, `Stellar Expert transaction info field ${key} must be an integer`);
455
+ };
456
+ return {
457
+ id: str('id'),
458
+ hash: str('hash'),
459
+ ledger: int('ledger'),
460
+ ts: int('ts'),
461
+ protocol: int('protocol'),
462
+ body: str('body'),
463
+ meta: str('meta'),
464
+ result: str('result'),
465
+ };
466
+ }
467
+ function parseSignedStellarEnvelope(signedXdr, networkPassphrase) {
468
+ const envelope = stellar_sdk_1.xdr.TransactionEnvelope.fromXDR(signedXdr, 'base64');
469
+ const envelopeType = envelope.switch();
470
+ if (envelopeType !== stellar_sdk_1.xdr.EnvelopeType.envelopeTypeTxV0() && envelopeType !== stellar_sdk_1.xdr.EnvelopeType.envelopeTypeTx()) {
471
+ throw new errors_ts_1.ChainError(errors_ts_1.ChainErrorKinds.InvalidArgument, `Unexpected EnvelopeType: ${envelopeType.value}.`);
472
+ }
473
+ return new stellar_sdk_1.Transaction(envelope, networkPassphrase);
474
+ }
475
+ //# sourceMappingURL=stellar_transactions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stellar_transactions.js","sourceRoot":"","sources":["../../../stellar/stellar_transactions.ts"],"names":[],"mappings":"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"}