@rosen-bridge/rosen-extractor 8.1.0 → 10.0.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 (202) hide show
  1. package/CHANGELOG.md +290 -0
  2. package/dist/getRosenData/abstract/{AbstractRosenDataExtractor.d.ts → abstractRosenDataExtractor.d.ts} +1 -1
  3. package/dist/getRosenData/abstract/{AbstractRosenDataExtractor.d.ts.map → abstractRosenDataExtractor.d.ts.map} +1 -1
  4. package/dist/getRosenData/abstract/{AbstractRosenDataExtractor.js → abstractRosenDataExtractor.js} +1 -1
  5. package/dist/{lib/getRosenData/bitcoin/BitcoinEsploraRosenExtractor.d.ts → getRosenData/bitcoin/bitcoinEsploraRosenExtractor.d.ts} +2 -2
  6. package/dist/getRosenData/bitcoin/{BitcoinEsploraRosenExtractor.d.ts.map → bitcoinEsploraRosenExtractor.d.ts.map} +1 -1
  7. package/dist/getRosenData/bitcoin/{BitcoinEsploraRosenExtractor.js → bitcoinEsploraRosenExtractor.js} +2 -2
  8. package/dist/{lib/getRosenData/bitcoin/BitcoinRosenExtractor.d.ts → getRosenData/bitcoin/bitcoinRosenExtractor.d.ts} +2 -2
  9. package/dist/getRosenData/bitcoin/{BitcoinRosenExtractor.d.ts.map → bitcoinRosenExtractor.d.ts.map} +1 -1
  10. package/dist/getRosenData/bitcoin/{BitcoinRosenExtractor.js → bitcoinRosenExtractor.js} +2 -2
  11. package/dist/{lib/getRosenData/bitcoin/BitcoinRpcRosenExtractor.d.ts → getRosenData/bitcoin/bitcoinRpcRosenExtractor.d.ts} +2 -2
  12. package/dist/getRosenData/bitcoin/{BitcoinRpcRosenExtractor.d.ts.map → bitcoinRpcRosenExtractor.d.ts.map} +1 -1
  13. package/dist/getRosenData/bitcoin/{BitcoinRpcRosenExtractor.js → bitcoinRpcRosenExtractor.js} +2 -2
  14. package/dist/getRosenData/bitcoin/utils.js +1 -1
  15. package/dist/getRosenData/{runes/RunesEsploraRosenExtractor.d.ts → bitcoin-runes/bitcoinRunesEsploraRosenExtractor.d.ts} +3 -3
  16. package/dist/getRosenData/bitcoin-runes/bitcoinRunesEsploraRosenExtractor.d.ts.map +1 -0
  17. package/dist/getRosenData/bitcoin-runes/bitcoinRunesEsploraRosenExtractor.js +114 -0
  18. package/dist/{lib/getRosenData/runes/RunesRosenExtractor.d.ts → getRosenData/bitcoin-runes/bitcoinRunesRosenExtractor.d.ts} +13 -14
  19. package/dist/getRosenData/bitcoin-runes/bitcoinRunesRosenExtractor.d.ts.map +1 -0
  20. package/dist/getRosenData/bitcoin-runes/bitcoinRunesRosenExtractor.js +138 -0
  21. package/dist/getRosenData/{runes/RunesRpcRosenExtractor.d.ts → bitcoin-runes/bitcoinRunesRpcRosenExtractor.d.ts} +3 -3
  22. package/dist/getRosenData/bitcoin-runes/bitcoinRunesRpcRosenExtractor.d.ts.map +1 -0
  23. package/dist/getRosenData/bitcoin-runes/bitcoinRunesRpcRosenExtractor.js +114 -0
  24. package/dist/getRosenData/bitcoin-runes/constants.d.ts.map +1 -0
  25. package/dist/getRosenData/bitcoin-runes/constants.js +2 -0
  26. package/dist/getRosenData/bitcoin-runes/types.d.ts +30 -0
  27. package/dist/getRosenData/bitcoin-runes/types.d.ts.map +1 -0
  28. package/dist/getRosenData/bitcoin-runes/types.js +2 -0
  29. package/dist/getRosenData/bitcoin-runes/utils.d.ts.map +1 -0
  30. package/dist/getRosenData/bitcoin-runes/utils.js +9 -0
  31. package/dist/getRosenData/cardano/{CardanoBlockFrostRosenExtractor.d.ts → cardanoBlockFrostRosenExtractor.d.ts} +2 -2
  32. package/dist/getRosenData/cardano/{CardanoBlockFrostRosenExtractor.d.ts.map → cardanoBlockFrostRosenExtractor.d.ts.map} +1 -1
  33. package/dist/getRosenData/cardano/{CardanoBlockFrostRosenExtractor.js → cardanoBlockFrostRosenExtractor.js} +2 -2
  34. package/dist/getRosenData/cardano/{CardanoGraphQLRosenExtractor.d.ts → cardanoGraphQLRosenExtractor.d.ts} +2 -2
  35. package/dist/getRosenData/cardano/{CardanoGraphQLRosenExtractor.d.ts.map → cardanoGraphQLRosenExtractor.d.ts.map} +1 -1
  36. package/dist/getRosenData/cardano/{CardanoGraphQLRosenExtractor.js → cardanoGraphQLRosenExtractor.js} +2 -2
  37. package/dist/{lib/getRosenData/cardano/CardanoKoiosRosenExtractor.d.ts → getRosenData/cardano/cardanoKoiosRosenExtractor.d.ts} +2 -2
  38. package/dist/getRosenData/cardano/{CardanoKoiosRosenExtractor.d.ts.map → cardanoKoiosRosenExtractor.d.ts.map} +1 -1
  39. package/dist/getRosenData/cardano/{CardanoKoiosRosenExtractor.js → cardanoKoiosRosenExtractor.js} +2 -2
  40. package/dist/getRosenData/cardano/{CardanoOgmiosRosenExtractor.d.ts → cardanoOgmiosRosenExtractor.d.ts} +2 -2
  41. package/dist/getRosenData/cardano/{CardanoOgmiosRosenExtractor.d.ts.map → cardanoOgmiosRosenExtractor.d.ts.map} +1 -1
  42. package/dist/getRosenData/cardano/{CardanoOgmiosRosenExtractor.js → cardanoOgmiosRosenExtractor.js} +2 -2
  43. package/dist/getRosenData/cardano/{CardanoRosenExtractor.d.ts → cardanoRosenExtractor.d.ts} +2 -2
  44. package/dist/getRosenData/cardano/{CardanoRosenExtractor.d.ts.map → cardanoRosenExtractor.d.ts.map} +1 -1
  45. package/dist/getRosenData/cardano/{CardanoRosenExtractor.js → cardanoRosenExtractor.js} +2 -2
  46. package/dist/getRosenData/const.d.ts +1 -1
  47. package/dist/getRosenData/const.d.ts.map +1 -1
  48. package/dist/getRosenData/const.js +3 -3
  49. package/dist/getRosenData/doge/{DogeEsploraRosenExtractor.d.ts → dogeEsploraRosenExtractor.d.ts} +2 -2
  50. package/dist/getRosenData/doge/{DogeEsploraRosenExtractor.d.ts.map → dogeEsploraRosenExtractor.d.ts.map} +1 -1
  51. package/dist/getRosenData/doge/{DogeEsploraRosenExtractor.js → dogeEsploraRosenExtractor.js} +2 -2
  52. package/dist/{lib/getRosenData/doge/DogeRosenExtractor.d.ts → getRosenData/doge/dogeRosenExtractor.d.ts} +2 -2
  53. package/dist/getRosenData/doge/{DogeRosenExtractor.d.ts.map → dogeRosenExtractor.d.ts.map} +1 -1
  54. package/dist/getRosenData/doge/{DogeRosenExtractor.js → dogeRosenExtractor.js} +2 -2
  55. package/dist/{lib/getRosenData/doge/DogeRpcRosenExtractor.d.ts → getRosenData/doge/dogeRpcRosenExtractor.d.ts} +2 -2
  56. package/dist/getRosenData/doge/{DogeRpcRosenExtractor.d.ts.map → dogeRpcRosenExtractor.d.ts.map} +1 -1
  57. package/dist/getRosenData/doge/{DogeRpcRosenExtractor.js → dogeRpcRosenExtractor.js} +2 -2
  58. package/dist/getRosenData/doge/utils.js +1 -1
  59. package/dist/{lib/getRosenData/ergo/ErgoNodeRosenExtractor.d.ts → getRosenData/ergo/ergoNodeRosenExtractor.d.ts} +2 -2
  60. package/dist/getRosenData/ergo/{ErgoNodeRosenExtractor.d.ts.map → ergoNodeRosenExtractor.d.ts.map} +1 -1
  61. package/dist/getRosenData/ergo/{ErgoNodeRosenExtractor.js → ergoNodeRosenExtractor.js} +2 -2
  62. package/dist/{lib/getRosenData/ergo/ErgoRosenExtractor.d.ts → getRosenData/ergo/ergoRosenExtractor.d.ts} +2 -2
  63. package/dist/getRosenData/ergo/{ErgoRosenExtractor.d.ts.map → ergoRosenExtractor.d.ts.map} +1 -1
  64. package/dist/getRosenData/ergo/{ErgoRosenExtractor.js → ergoRosenExtractor.js} +3 -3
  65. package/dist/{lib/getRosenData/evm/EvmEthersRosenExtractor.d.ts → getRosenData/evm/evmEthersRosenExtractor.d.ts} +3 -3
  66. package/dist/getRosenData/evm/{EvmEthersRosenExtractor.d.ts.map → evmEthersRosenExtractor.d.ts.map} +1 -1
  67. package/dist/getRosenData/evm/{EvmEthersRosenExtractor.js → evmEthersRosenExtractor.js} +3 -3
  68. package/dist/getRosenData/evm/{EvmRosenExtractor.d.ts → evmRosenExtractor.d.ts} +3 -3
  69. package/dist/getRosenData/evm/{EvmRosenExtractor.d.ts.map → evmRosenExtractor.d.ts.map} +1 -1
  70. package/dist/getRosenData/evm/{EvmRosenExtractor.js → evmRosenExtractor.js} +3 -3
  71. package/dist/{lib/getRosenData/evm/EvmRpcRosenExtractor.d.ts → getRosenData/evm/evmRpcRosenExtractor.d.ts} +2 -2
  72. package/dist/getRosenData/evm/{EvmRpcRosenExtractor.d.ts.map → evmRpcRosenExtractor.d.ts.map} +1 -1
  73. package/dist/getRosenData/evm/{EvmRpcRosenExtractor.js → evmRpcRosenExtractor.js} +3 -3
  74. package/dist/index.d.ts +20 -20
  75. package/dist/index.d.ts.map +1 -1
  76. package/dist/index.js +21 -21
  77. package/dist/utils.js +1 -1
  78. package/package.json +24 -18
  79. package/dist/getRosenData/bitcoin/BitcoinEsploraRosenExtractor.d.ts +0 -22
  80. package/dist/getRosenData/bitcoin/BitcoinRosenExtractor.d.ts +0 -22
  81. package/dist/getRosenData/bitcoin/BitcoinRpcRosenExtractor.d.ts +0 -22
  82. package/dist/getRosenData/cardano/CardanoKoiosRosenExtractor.d.ts +0 -19
  83. package/dist/getRosenData/doge/DogeRosenExtractor.d.ts +0 -22
  84. package/dist/getRosenData/doge/DogeRpcRosenExtractor.d.ts +0 -22
  85. package/dist/getRosenData/ergo/ErgoNodeRosenExtractor.d.ts +0 -22
  86. package/dist/getRosenData/ergo/ErgoRosenExtractor.d.ts +0 -15
  87. package/dist/getRosenData/evm/EvmEthersRosenExtractor.d.ts +0 -23
  88. package/dist/getRosenData/evm/EvmRpcRosenExtractor.d.ts +0 -26
  89. package/dist/getRosenData/runes/RunesEsploraRosenExtractor.d.ts.map +0 -1
  90. package/dist/getRosenData/runes/RunesEsploraRosenExtractor.js +0 -113
  91. package/dist/getRosenData/runes/RunesRosenExtractor.d.ts +0 -36
  92. package/dist/getRosenData/runes/RunesRosenExtractor.d.ts.map +0 -1
  93. package/dist/getRosenData/runes/RunesRosenExtractor.js +0 -120
  94. package/dist/getRosenData/runes/RunesRpcRosenExtractor.d.ts.map +0 -1
  95. package/dist/getRosenData/runes/RunesRpcRosenExtractor.js +0 -113
  96. package/dist/getRosenData/runes/constants.d.ts.map +0 -1
  97. package/dist/getRosenData/runes/constants.js +0 -2
  98. package/dist/getRosenData/runes/types.d.ts +0 -5
  99. package/dist/getRosenData/runes/types.d.ts.map +0 -1
  100. package/dist/getRosenData/runes/types.js +0 -2
  101. package/dist/getRosenData/runes/utils.d.ts.map +0 -1
  102. package/dist/getRosenData/runes/utils.js +0 -9
  103. package/dist/lib/getRosenData/abstract/AbstractRosenDataExtractor.d.ts +0 -19
  104. package/dist/lib/getRosenData/abstract/AbstractRosenDataExtractor.d.ts.map +0 -1
  105. package/dist/lib/getRosenData/abstract/AbstractRosenDataExtractor.js +0 -32
  106. package/dist/lib/getRosenData/abstract/types.d.ts +0 -18
  107. package/dist/lib/getRosenData/abstract/types.d.ts.map +0 -1
  108. package/dist/lib/getRosenData/abstract/types.js +0 -2
  109. package/dist/lib/getRosenData/bitcoin/BitcoinEsploraRosenExtractor.d.ts.map +0 -1
  110. package/dist/lib/getRosenData/bitcoin/BitcoinEsploraRosenExtractor.js +0 -105
  111. package/dist/lib/getRosenData/bitcoin/BitcoinRosenExtractor.d.ts.map +0 -1
  112. package/dist/lib/getRosenData/bitcoin/BitcoinRosenExtractor.js +0 -113
  113. package/dist/lib/getRosenData/bitcoin/BitcoinRpcRosenExtractor.d.ts.map +0 -1
  114. package/dist/lib/getRosenData/bitcoin/BitcoinRpcRosenExtractor.js +0 -106
  115. package/dist/lib/getRosenData/bitcoin/types.d.ts +0 -89
  116. package/dist/lib/getRosenData/bitcoin/types.d.ts.map +0 -1
  117. package/dist/lib/getRosenData/bitcoin/types.js +0 -2
  118. package/dist/lib/getRosenData/bitcoin/utils.d.ts +0 -7
  119. package/dist/lib/getRosenData/bitcoin/utils.d.ts.map +0 -1
  120. package/dist/lib/getRosenData/bitcoin/utils.js +0 -17
  121. package/dist/lib/getRosenData/cardano/CardanoBlockFrostRosenExtractor.d.ts +0 -18
  122. package/dist/lib/getRosenData/cardano/CardanoBlockFrostRosenExtractor.d.ts.map +0 -1
  123. package/dist/lib/getRosenData/cardano/CardanoBlockFrostRosenExtractor.js +0 -94
  124. package/dist/lib/getRosenData/cardano/CardanoGraphQLRosenExtractor.d.ts +0 -18
  125. package/dist/lib/getRosenData/cardano/CardanoGraphQLRosenExtractor.d.ts.map +0 -1
  126. package/dist/lib/getRosenData/cardano/CardanoGraphQLRosenExtractor.js +0 -92
  127. package/dist/lib/getRosenData/cardano/CardanoKoiosRosenExtractor.d.ts.map +0 -1
  128. package/dist/lib/getRosenData/cardano/CardanoKoiosRosenExtractor.js +0 -95
  129. package/dist/lib/getRosenData/cardano/CardanoOgmiosRosenExtractor.d.ts +0 -18
  130. package/dist/lib/getRosenData/cardano/CardanoOgmiosRosenExtractor.d.ts.map +0 -1
  131. package/dist/lib/getRosenData/cardano/CardanoOgmiosRosenExtractor.js +0 -97
  132. package/dist/lib/getRosenData/cardano/CardanoRosenExtractor.d.ts +0 -18
  133. package/dist/lib/getRosenData/cardano/CardanoRosenExtractor.d.ts.map +0 -1
  134. package/dist/lib/getRosenData/cardano/CardanoRosenExtractor.js +0 -88
  135. package/dist/lib/getRosenData/cardano/types.d.ts +0 -102
  136. package/dist/lib/getRosenData/cardano/types.d.ts.map +0 -1
  137. package/dist/lib/getRosenData/cardano/types.js +0 -2
  138. package/dist/lib/getRosenData/cardano/utils.d.ts +0 -19
  139. package/dist/lib/getRosenData/cardano/utils.d.ts.map +0 -1
  140. package/dist/lib/getRosenData/cardano/utils.js +0 -32
  141. package/dist/lib/getRosenData/const.d.ts +0 -13
  142. package/dist/lib/getRosenData/const.d.ts.map +0 -1
  143. package/dist/lib/getRosenData/const.js +0 -21
  144. package/dist/lib/getRosenData/doge/DogeEsploraRosenExtractor.d.ts +0 -22
  145. package/dist/lib/getRosenData/doge/DogeEsploraRosenExtractor.d.ts.map +0 -1
  146. package/dist/lib/getRosenData/doge/DogeEsploraRosenExtractor.js +0 -104
  147. package/dist/lib/getRosenData/doge/DogeRosenExtractor.d.ts.map +0 -1
  148. package/dist/lib/getRosenData/doge/DogeRosenExtractor.js +0 -112
  149. package/dist/lib/getRosenData/doge/DogeRpcRosenExtractor.d.ts.map +0 -1
  150. package/dist/lib/getRosenData/doge/DogeRpcRosenExtractor.js +0 -105
  151. package/dist/lib/getRosenData/doge/types.d.ts +0 -87
  152. package/dist/lib/getRosenData/doge/types.d.ts.map +0 -1
  153. package/dist/lib/getRosenData/doge/types.js +0 -2
  154. package/dist/lib/getRosenData/doge/utils.d.ts +0 -13
  155. package/dist/lib/getRosenData/doge/utils.d.ts.map +0 -1
  156. package/dist/lib/getRosenData/doge/utils.js +0 -58
  157. package/dist/lib/getRosenData/ergo/ErgoNodeRosenExtractor.d.ts.map +0 -1
  158. package/dist/lib/getRosenData/ergo/ErgoNodeRosenExtractor.js +0 -105
  159. package/dist/lib/getRosenData/ergo/ErgoRosenExtractor.d.ts.map +0 -1
  160. package/dist/lib/getRosenData/ergo/ErgoRosenExtractor.js +0 -33
  161. package/dist/lib/getRosenData/ergo/types.d.ts +0 -37
  162. package/dist/lib/getRosenData/ergo/types.d.ts.map +0 -1
  163. package/dist/lib/getRosenData/ergo/types.js +0 -2
  164. package/dist/lib/getRosenData/evm/EvmEthersRosenExtractor.d.ts.map +0 -1
  165. package/dist/lib/getRosenData/evm/EvmEthersRosenExtractor.js +0 -54
  166. package/dist/lib/getRosenData/evm/EvmRosenExtractor.d.ts +0 -16
  167. package/dist/lib/getRosenData/evm/EvmRosenExtractor.d.ts.map +0 -1
  168. package/dist/lib/getRosenData/evm/EvmRosenExtractor.js +0 -31
  169. package/dist/lib/getRosenData/evm/EvmRpcRosenExtractor.d.ts.map +0 -1
  170. package/dist/lib/getRosenData/evm/EvmRpcRosenExtractor.js +0 -123
  171. package/dist/lib/getRosenData/evm/utils.d.ts +0 -7
  172. package/dist/lib/getRosenData/evm/utils.d.ts.map +0 -1
  173. package/dist/lib/getRosenData/evm/utils.js +0 -9
  174. package/dist/lib/getRosenData/runes/RunesEsploraRosenExtractor.d.ts +0 -36
  175. package/dist/lib/getRosenData/runes/RunesEsploraRosenExtractor.d.ts.map +0 -1
  176. package/dist/lib/getRosenData/runes/RunesEsploraRosenExtractor.js +0 -113
  177. package/dist/lib/getRosenData/runes/RunesRosenExtractor.d.ts.map +0 -1
  178. package/dist/lib/getRosenData/runes/RunesRosenExtractor.js +0 -120
  179. package/dist/lib/getRosenData/runes/RunesRpcRosenExtractor.d.ts +0 -36
  180. package/dist/lib/getRosenData/runes/RunesRpcRosenExtractor.d.ts.map +0 -1
  181. package/dist/lib/getRosenData/runes/RunesRpcRosenExtractor.js +0 -113
  182. package/dist/lib/getRosenData/runes/constants.d.ts +0 -2
  183. package/dist/lib/getRosenData/runes/constants.d.ts.map +0 -1
  184. package/dist/lib/getRosenData/runes/constants.js +0 -2
  185. package/dist/lib/getRosenData/runes/types.d.ts +0 -5
  186. package/dist/lib/getRosenData/runes/types.d.ts.map +0 -1
  187. package/dist/lib/getRosenData/runes/types.js +0 -2
  188. package/dist/lib/getRosenData/runes/utils.d.ts +0 -7
  189. package/dist/lib/getRosenData/runes/utils.d.ts.map +0 -1
  190. package/dist/lib/getRosenData/runes/utils.js +0 -9
  191. package/dist/lib/index.d.ts +0 -23
  192. package/dist/lib/index.d.ts.map +0 -1
  193. package/dist/lib/index.js +0 -25
  194. package/dist/lib/types.d.ts +0 -7
  195. package/dist/lib/types.d.ts.map +0 -1
  196. package/dist/lib/types.js +0 -2
  197. package/dist/lib/utils.d.ts +0 -7
  198. package/dist/lib/utils.d.ts.map +0 -1
  199. package/dist/lib/utils.js +0 -31
  200. package/dist/tsconfig.build.tsbuildinfo +0 -1
  201. /package/dist/getRosenData/{runes → bitcoin-runes}/constants.d.ts +0 -0
  202. /package/dist/getRosenData/{runes → bitcoin-runes}/utils.d.ts +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/doge/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAevC;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,GAAI,MAAM,MAAM,KAAG,MAEpD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,iBAAiB,MAAM,KAAG,YA4CxD,CAAC"}
@@ -1,58 +0,0 @@
1
- import { decodeAddress } from '@rosen-bridge/address-codec';
2
- import { SUPPORTED_CHAINS } from '../const';
3
- import { address } from 'bitcoinjs-lib';
4
- const dogecoinNetwork = {
5
- messagePrefix: '\x19Dogecoin Signed Message:\n',
6
- bech32: 'dc',
7
- bip32: {
8
- public: 0x02facafd,
9
- private: 0x02fac398,
10
- },
11
- pubKeyHash: 0x1e,
12
- scriptHash: 0x16,
13
- wif: 0x9e,
14
- };
15
- /**
16
- * Converts a Dogecoin address to its corresponding output script
17
- * @param addr The Dogecoin address to convert
18
- * @returns The output script as a hex string
19
- */
20
- export const addressToOutputScript = (addr) => {
21
- return address.toOutputScript(addr, dogecoinNetwork).toString('hex');
22
- };
23
- /**
24
- * extracts rosen data from OP_RETURN box script pub key
25
- * @param scriptPubKeyHex
26
- */
27
- export const parseRosenData = (scriptPubKeyHex) => {
28
- // check OP_RETURN opcode
29
- if (scriptPubKeyHex.slice(0, 2) !== '6a')
30
- throw Error(`script does not start with OP_RETURN opcode (6a)`);
31
- // check script length (should not use more than one OP_RETURN)
32
- const dataLength = scriptPubKeyHex.slice(2, 4);
33
- if (parseInt(dataLength, 16) + 2 !== scriptPubKeyHex.length / 2)
34
- throw Error(`script length is unexpected [${parseInt(dataLength, 16) + 3} !== ${scriptPubKeyHex.length / 2}]`);
35
- // parse toChain
36
- const toChainHex = scriptPubKeyHex.slice(4, 6);
37
- const toChainCode = parseInt(toChainHex, 16);
38
- if (toChainCode >= SUPPORTED_CHAINS.length)
39
- throw Error(`invalid toChain code, found [${toChainCode}] but only [${SUPPORTED_CHAINS.length}] chains are supported`);
40
- const toChain = SUPPORTED_CHAINS[toChainCode];
41
- // parse bridgeFee
42
- const bridgeFeeHex = scriptPubKeyHex.slice(6, 22);
43
- const bridgeFee = BigInt('0x' + bridgeFeeHex).toString();
44
- // parse networkFee
45
- const networkFeeHex = scriptPubKeyHex.slice(22, 38);
46
- const networkFee = BigInt('0x' + networkFeeHex).toString();
47
- // parse toAddress
48
- const addressLengthCode = scriptPubKeyHex.slice(38, 40);
49
- const addressHex = scriptPubKeyHex.slice(40, 40 + parseInt(addressLengthCode, 16) * 2);
50
- const toAddress = decodeAddress(toChain, addressHex);
51
- return {
52
- toChain,
53
- toAddress,
54
- bridgeFee,
55
- networkFee,
56
- };
57
- };
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2RvZ2UvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUU1QyxPQUFPLEVBQUUsT0FBTyxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBRWxELE1BQU0sZUFBZSxHQUFHO0lBQ3RCLGFBQWEsRUFBRSxnQ0FBZ0M7SUFDL0MsTUFBTSxFQUFFLElBQUk7SUFDWixLQUFLLEVBQUU7UUFDTCxNQUFNLEVBQUUsVUFBVTtRQUNsQixPQUFPLEVBQUUsVUFBVTtLQUNwQjtJQUNELFVBQVUsRUFBRSxJQUFJO0lBQ2hCLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLEdBQUcsRUFBRSxJQUFJO0NBQ1YsQ0FBQztBQUVGOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLElBQVksRUFBVSxFQUFFO0lBQzVELE9BQU8sT0FBTyxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsZUFBZSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3ZFLENBQUMsQ0FBQztBQUVGOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLGVBQXVCLEVBQWdCLEVBQUU7SUFDdEUseUJBQXlCO0lBQ3pCLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSTtRQUN0QyxNQUFNLEtBQUssQ0FBQyxrREFBa0QsQ0FBQyxDQUFDO0lBQ2xFLCtEQUErRDtJQUMvRCxNQUFNLFVBQVUsR0FBRyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMvQyxJQUFJLFFBQVEsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLGVBQWUsQ0FBQyxNQUFNLEdBQUcsQ0FBQztRQUM3RCxNQUFNLEtBQUssQ0FDVCxnQ0FBZ0MsUUFBUSxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLFFBQzFELGVBQWUsQ0FBQyxNQUFNLEdBQUcsQ0FDM0IsR0FBRyxDQUNKLENBQUM7SUFFSixnQkFBZ0I7SUFDaEIsTUFBTSxVQUFVLEdBQUcsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDL0MsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUM3QyxJQUFJLFdBQVcsSUFBSSxnQkFBZ0IsQ0FBQyxNQUFNO1FBQ3hDLE1BQU0sS0FBSyxDQUNULGdDQUFnQyxXQUFXLGVBQWUsZ0JBQWdCLENBQUMsTUFBTSx3QkFBd0IsQ0FDMUcsQ0FBQztJQUNKLE1BQU0sT0FBTyxHQUFHLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRTlDLGtCQUFrQjtJQUNsQixNQUFNLFlBQVksR0FBRyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNsRCxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxHQUFHLFlBQVksQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBRXpELG1CQUFtQjtJQUNuQixNQUFNLGFBQWEsR0FBRyxlQUFlLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNwRCxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsSUFBSSxHQUFHLGFBQWEsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBRTNELGtCQUFrQjtJQUNsQixNQUFNLGlCQUFpQixHQUFHLGVBQWUsQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELE1BQU0sVUFBVSxHQUFHLGVBQWUsQ0FBQyxLQUFLLENBQ3RDLEVBQUUsRUFDRixFQUFFLEdBQUcsUUFBUSxDQUFDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FDekMsQ0FBQztJQUNGLE1BQU0sU0FBUyxHQUFHLGFBQWEsQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFFckQsT0FBTztRQUNMLE9BQU87UUFDUCxTQUFTO1FBQ1QsU0FBUztRQUNULFVBQVU7S0FDWCxDQUFDO0FBQ0osQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZGVjb2RlQWRkcmVzcyB9IGZyb20gJ0Byb3Nlbi1icmlkZ2UvYWRkcmVzcy1jb2RlYyc7XG5pbXBvcnQgeyBTVVBQT1JURURfQ0hBSU5TIH0gZnJvbSAnLi4vY29uc3QnO1xuaW1wb3J0IHsgT3BSZXR1cm5EYXRhIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBhZGRyZXNzLCBuZXR3b3JrcyB9IGZyb20gJ2JpdGNvaW5qcy1saWInO1xuXG5jb25zdCBkb2dlY29pbk5ldHdvcmsgPSB7XG4gIG1lc3NhZ2VQcmVmaXg6ICdcXHgxOURvZ2Vjb2luIFNpZ25lZCBNZXNzYWdlOlxcbicsXG4gIGJlY2gzMjogJ2RjJyxcbiAgYmlwMzI6IHtcbiAgICBwdWJsaWM6IDB4MDJmYWNhZmQsXG4gICAgcHJpdmF0ZTogMHgwMmZhYzM5OCxcbiAgfSxcbiAgcHViS2V5SGFzaDogMHgxZSxcbiAgc2NyaXB0SGFzaDogMHgxNixcbiAgd2lmOiAweDllLFxufTtcblxuLyoqXG4gKiBDb252ZXJ0cyBhIERvZ2Vjb2luIGFkZHJlc3MgdG8gaXRzIGNvcnJlc3BvbmRpbmcgb3V0cHV0IHNjcmlwdFxuICogQHBhcmFtIGFkZHIgVGhlIERvZ2Vjb2luIGFkZHJlc3MgdG8gY29udmVydFxuICogQHJldHVybnMgVGhlIG91dHB1dCBzY3JpcHQgYXMgYSBoZXggc3RyaW5nXG4gKi9cbmV4cG9ydCBjb25zdCBhZGRyZXNzVG9PdXRwdXRTY3JpcHQgPSAoYWRkcjogc3RyaW5nKTogc3RyaW5nID0+IHtcbiAgcmV0dXJuIGFkZHJlc3MudG9PdXRwdXRTY3JpcHQoYWRkciwgZG9nZWNvaW5OZXR3b3JrKS50b1N0cmluZygnaGV4Jyk7XG59O1xuXG4vKipcbiAqIGV4dHJhY3RzIHJvc2VuIGRhdGEgZnJvbSBPUF9SRVRVUk4gYm94IHNjcmlwdCBwdWIga2V5XG4gKiBAcGFyYW0gc2NyaXB0UHViS2V5SGV4XG4gKi9cbmV4cG9ydCBjb25zdCBwYXJzZVJvc2VuRGF0YSA9IChzY3JpcHRQdWJLZXlIZXg6IHN0cmluZyk6IE9wUmV0dXJuRGF0YSA9PiB7XG4gIC8vIGNoZWNrIE9QX1JFVFVSTiBvcGNvZGVcbiAgaWYgKHNjcmlwdFB1YktleUhleC5zbGljZSgwLCAyKSAhPT0gJzZhJylcbiAgICB0aHJvdyBFcnJvcihgc2NyaXB0IGRvZXMgbm90IHN0YXJ0IHdpdGggT1BfUkVUVVJOIG9wY29kZSAoNmEpYCk7XG4gIC8vIGNoZWNrIHNjcmlwdCBsZW5ndGggKHNob3VsZCBub3QgdXNlIG1vcmUgdGhhbiBvbmUgT1BfUkVUVVJOKVxuICBjb25zdCBkYXRhTGVuZ3RoID0gc2NyaXB0UHViS2V5SGV4LnNsaWNlKDIsIDQpO1xuICBpZiAocGFyc2VJbnQoZGF0YUxlbmd0aCwgMTYpICsgMiAhPT0gc2NyaXB0UHViS2V5SGV4Lmxlbmd0aCAvIDIpXG4gICAgdGhyb3cgRXJyb3IoXG4gICAgICBgc2NyaXB0IGxlbmd0aCBpcyB1bmV4cGVjdGVkIFske3BhcnNlSW50KGRhdGFMZW5ndGgsIDE2KSArIDN9ICE9PSAke1xuICAgICAgICBzY3JpcHRQdWJLZXlIZXgubGVuZ3RoIC8gMlxuICAgICAgfV1gXG4gICAgKTtcblxuICAvLyBwYXJzZSB0b0NoYWluXG4gIGNvbnN0IHRvQ2hhaW5IZXggPSBzY3JpcHRQdWJLZXlIZXguc2xpY2UoNCwgNik7XG4gIGNvbnN0IHRvQ2hhaW5Db2RlID0gcGFyc2VJbnQodG9DaGFpbkhleCwgMTYpO1xuICBpZiAodG9DaGFpbkNvZGUgPj0gU1VQUE9SVEVEX0NIQUlOUy5sZW5ndGgpXG4gICAgdGhyb3cgRXJyb3IoXG4gICAgICBgaW52YWxpZCB0b0NoYWluIGNvZGUsIGZvdW5kIFske3RvQ2hhaW5Db2RlfV0gYnV0IG9ubHkgWyR7U1VQUE9SVEVEX0NIQUlOUy5sZW5ndGh9XSBjaGFpbnMgYXJlIHN1cHBvcnRlZGBcbiAgICApO1xuICBjb25zdCB0b0NoYWluID0gU1VQUE9SVEVEX0NIQUlOU1t0b0NoYWluQ29kZV07XG5cbiAgLy8gcGFyc2UgYnJpZGdlRmVlXG4gIGNvbnN0IGJyaWRnZUZlZUhleCA9IHNjcmlwdFB1YktleUhleC5zbGljZSg2LCAyMik7XG4gIGNvbnN0IGJyaWRnZUZlZSA9IEJpZ0ludCgnMHgnICsgYnJpZGdlRmVlSGV4KS50b1N0cmluZygpO1xuXG4gIC8vIHBhcnNlIG5ldHdvcmtGZWVcbiAgY29uc3QgbmV0d29ya0ZlZUhleCA9IHNjcmlwdFB1YktleUhleC5zbGljZSgyMiwgMzgpO1xuICBjb25zdCBuZXR3b3JrRmVlID0gQmlnSW50KCcweCcgKyBuZXR3b3JrRmVlSGV4KS50b1N0cmluZygpO1xuXG4gIC8vIHBhcnNlIHRvQWRkcmVzc1xuICBjb25zdCBhZGRyZXNzTGVuZ3RoQ29kZSA9IHNjcmlwdFB1YktleUhleC5zbGljZSgzOCwgNDApO1xuICBjb25zdCBhZGRyZXNzSGV4ID0gc2NyaXB0UHViS2V5SGV4LnNsaWNlKFxuICAgIDQwLFxuICAgIDQwICsgcGFyc2VJbnQoYWRkcmVzc0xlbmd0aENvZGUsIDE2KSAqIDJcbiAgKTtcbiAgY29uc3QgdG9BZGRyZXNzID0gZGVjb2RlQWRkcmVzcyh0b0NoYWluLCBhZGRyZXNzSGV4KTtcblxuICByZXR1cm4ge1xuICAgIHRvQ2hhaW4sXG4gICAgdG9BZGRyZXNzLFxuICAgIGJyaWRnZUZlZSxcbiAgICBuZXR3b3JrRmVlLFxuICB9O1xufTtcbiJdfQ==
@@ -1 +0,0 @@
1
- {"version":3,"file":"ErgoNodeRosenExtractor.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/ergo/ErgoNodeRosenExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,0BAA0B,MAAM,wCAAwC,CAAC;AAEhF,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAG/D,qBAAa,sBAAuB,SAAQ,0BAA0B,CAAC,eAAe,CAAC;IACrF,QAAQ,CAAC,KAAK,UAAc;IAC5B,YAAY,EAAE,MAAM,CAAC;gBAET,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,cAAc;IAO1E;;;OAGG;IACH,cAAc,GAAI,aAAa,eAAe,KAAG,SAAS,GAAG,SAAS,CAwDpE;IAEF;;;;OAIG;IACH,sBAAsB,GACpB,KAAK,aAAa,EAClB,SAAS,MAAM,KACd,mBAAmB,GAAG,SAAS,CAmChC;CACH"}
@@ -1,105 +0,0 @@
1
- import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
2
- import { ERGO_CHAIN, ERGO_NATIVE_TOKEN } from '../const';
3
- import { Address, Constant } from 'ergo-lib-wasm-nodejs';
4
- import JsonBigInt from '@rosen-bridge/json-bigint';
5
- export class ErgoNodeRosenExtractor extends AbstractRosenDataExtractor {
6
- chain = ERGO_CHAIN;
7
- lockErgoTree;
8
- constructor(lockAddress, tokens, logger) {
9
- super(lockAddress, tokens, logger);
10
- this.lockErgoTree = Address.from_base58(lockAddress)
11
- .to_ergo_tree()
12
- .to_base16_bytes();
13
- }
14
- /**
15
- * extracts RosenData from given lock transaction in Node format
16
- * @param transaction the lock transaction in Node format
17
- */
18
- extractRawData = (transaction) => {
19
- const baseError = `No rosen data found for tx [${transaction.id}]`;
20
- try {
21
- for (const box of transaction.outputs) {
22
- const boxBaseError = `No rosen data found in box [${box.boxId}]`;
23
- if (box.ergoTree === this.lockErgoTree && box.additionalRegisters?.R4) {
24
- const R4 = Constant.decode_from_base16(box.additionalRegisters.R4);
25
- if (R4) {
26
- const R4Serialized = R4.to_coll_coll_byte();
27
- if (R4Serialized.length >= 5) {
28
- const toChain = Buffer.from(R4Serialized[0]).toString();
29
- const assetTransformation = this.getAssetTransformation(box, toChain);
30
- if (assetTransformation) {
31
- return {
32
- toChain: toChain,
33
- toAddress: Buffer.from(R4Serialized[1]).toString(),
34
- bridgeFee: Buffer.from(R4Serialized[3]).toString(),
35
- networkFee: Buffer.from(R4Serialized[2]).toString(),
36
- fromAddress: Buffer.from(R4Serialized[4]).toString(),
37
- sourceChainTokenId: assetTransformation.from,
38
- amount: assetTransformation.amount,
39
- targetChainTokenId: assetTransformation.to,
40
- sourceTxId: transaction.id,
41
- };
42
- }
43
- }
44
- else
45
- this.logger.debug(boxBaseError +
46
- `: length of data in R4 is less than expected [${R4Serialized.length} < 5]`);
47
- }
48
- }
49
- else {
50
- if (box.ergoTree !== this.lockErgoTree)
51
- this.logger.debug(boxBaseError +
52
- `: invalid ergo tree [${box.ergoTree} !== ${this.lockErgoTree}]`);
53
- else
54
- this.logger.debug(boxBaseError + `: no R4`);
55
- }
56
- }
57
- this.logger.debug(baseError + `: No valid rosen data found in any output box registers`);
58
- }
59
- catch (e) {
60
- this.logger.debug(`An error occurred while getting Ergo rosen data: ${e}`);
61
- if (e instanceof Error && e.stack) {
62
- this.logger.debug(e.stack);
63
- }
64
- }
65
- return undefined;
66
- };
67
- /**
68
- * extracts and builds token transformation from NodeOutputBox and tokenMap
69
- * @param box transaction output
70
- * @param toChain event target chain
71
- */
72
- getAssetTransformation = (box, toChain) => {
73
- // try to build transformation using locked tokens
74
- if (box.assets && box.assets.length > 0) {
75
- for (const lockedToken of box.assets) {
76
- const token = this.tokens.search(ERGO_CHAIN, {
77
- tokenId: lockedToken.tokenId,
78
- });
79
- if (token.length > 0 && Object.hasOwn(token[0], toChain)) {
80
- return {
81
- from: lockedToken.tokenId,
82
- to: this.tokens.getID(token[0], toChain),
83
- amount: lockedToken.amount.toString(),
84
- };
85
- }
86
- }
87
- }
88
- // try to build transformation using locked Erg
89
- const erg = this.tokens.search(ERGO_CHAIN, {
90
- tokenId: ERGO_NATIVE_TOKEN,
91
- });
92
- if (erg.length > 0 && Object.hasOwn(erg[0], toChain)) {
93
- return {
94
- from: ERGO_NATIVE_TOKEN,
95
- to: this.tokens.getID(erg[0], toChain),
96
- amount: box.value.toString(),
97
- };
98
- }
99
- else {
100
- this.logger.debug(`No rosen asset transformation found for box [${box.boxId}]: box assets: ${JsonBigInt.stringify(box.assets)}`);
101
- return undefined;
102
- }
103
- };
104
- }
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXJnb05vZGVSb3NlbkV4dHJhY3Rvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9nZXRSb3NlbkRhdGEvZXJnby9FcmdvTm9kZVJvc2VuRXh0cmFjdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sMEJBQTBCLE1BQU0sd0NBQXdDLENBQUM7QUFDaEYsT0FBTyxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUd6RCxPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXpELE9BQU8sVUFBVSxNQUFNLDJCQUEyQixDQUFDO0FBRW5ELE1BQU0sT0FBTyxzQkFBdUIsU0FBUSwwQkFBMkM7SUFDNUUsS0FBSyxHQUFHLFVBQVUsQ0FBQztJQUM1QixZQUFZLENBQVM7SUFFckIsWUFBWSxXQUFtQixFQUFFLE1BQWdCLEVBQUUsTUFBdUI7UUFDeEUsS0FBSyxDQUFDLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLFlBQVksR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQzthQUNqRCxZQUFZLEVBQUU7YUFDZCxlQUFlLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsY0FBYyxHQUFHLENBQUMsV0FBNEIsRUFBeUIsRUFBRTtRQUN2RSxNQUFNLFNBQVMsR0FBRywrQkFBK0IsV0FBVyxDQUFDLEVBQUUsR0FBRyxDQUFDO1FBQ25FLElBQUksQ0FBQztZQUNILEtBQUssTUFBTSxHQUFHLElBQUksV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUN0QyxNQUFNLFlBQVksR0FBRywrQkFBK0IsR0FBRyxDQUFDLEtBQUssR0FBRyxDQUFDO2dCQUNqRSxJQUFJLEdBQUcsQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDLFlBQVksSUFBSSxHQUFHLENBQUMsbUJBQW1CLEVBQUUs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LENBQUMsS0FDTixrQkFBa0IsVUFBVSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FDckQsQ0FBQztZQUNGLE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUM7SUFDSCxDQUFDLENBQUM7Q0FDSCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJvc2VuRGF0YSwgVG9rZW5UcmFuc2Zvcm1hdGlvbiB9IGZyb20gJy4uL2Fic3RyYWN0L3R5cGVzJztcbmltcG9ydCBBYnN0cmFjdFJvc2VuRGF0YUV4dHJhY3RvciBmcm9tICcuLi9hYnN0cmFjdC9BYnN0cmFjdFJvc2VuRGF0YUV4dHJhY3Rvcic7XG5pbXBvcnQgeyBFUkdPX0NIQUlOLCBFUkdPX05BVElWRV9UT0tFTiB9IGZyb20gJy4uL2NvbnN0JztcbmltcG9ydCB7IE5vZGVPdXRwdXRCb3gsIE5vZGVUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgVG9rZW5NYXAgfSBmcm9tICdAcm9zZW4tYnJpZGdlL3Rva2Vucyc7XG5pbXBvcnQgeyBBZGRyZXNzLCBDb25zdGFudCB9IGZyb20gJ2VyZ28tbGliLXdhc20tbm9kZWpzJztcbmltcG9ydCB7IEFic3RyYWN0TG9nZ2VyIH0gZnJvbSAnQHJvc2VuLWJyaWRnZS9hYnN0cmFjdC1sb2dnZXInO1xuaW1wb3J0IEpzb25CaWdJbnQgZnJvbSAnQHJvc2VuLWJyaWRnZS9qc29uLWJpZ2ludCc7XG5cbmV4cG9ydCBjbGFzcyBFcmdvTm9kZVJvc2VuRXh0cmFjdG9yIGV4dGVuZHMgQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3I8Tm9kZVRyYW5zYWN0aW9uPiB7XG4gIHJlYWRvbmx5IGNoYWluID0gRVJHT19DSEFJTjtcbiAgbG9ja0VyZ29UcmVlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IobG9ja0FkZHJlc3M6IHN0cmluZywgdG9rZW5zOiBUb2tlbk1hcCwgbG9nZ2VyPzogQWJzdHJhY3RMb2dnZXIpIHtcbiAgICBzdXBlcihsb2NrQWRkcmVzcywgdG9rZW5zLCBsb2dnZXIpO1xuICAgIHRoaXMubG9ja0VyZ29UcmVlID0gQWRkcmVzcy5mcm9tX2Jhc2U1OChsb2NrQWRkcmVzcylcbiAgICAgIC50b19lcmdvX3RyZWUoKVxuICAgICAgLnRvX2Jhc2UxNl9ieXRlcygpO1xuICB9XG5cbiAgLyoqXG4gICAqIGV4dHJhY3RzIFJvc2VuRGF0YSBmcm9tIGdpdmVuIGxvY2sgdHJhbnNhY3Rpb24gaW4gTm9kZSBmb3JtYXRcbiAgICogQHBhcmFtIHRyYW5zYWN0aW9uIHRoZSBsb2NrIHRyYW5zYWN0aW9uIGluIE5vZGUgZm9ybWF0XG4gICAqL1xuICBleHRyYWN0UmF3RGF0YSA9ICh0cmFuc2FjdGlvbjogTm9kZVRyYW5zYWN0aW9uKTogUm9zZW5EYXRhIHwgdW5kZWZpbmVkID0+IHtcbiAgICBjb25zdCBiYXNlRXJyb3IgPSBgTm8gcm9zZW4gZGF0YSBmb3VuZCBmb3IgdHggWyR7dHJhbnNhY3Rpb24uaWR9XWA7XG4gICAgdHJ5IHtcbiAgICAgIGZvciAoY29uc3QgYm94IG9mIHRyYW5zYWN0aW9uLm91dHB1dHMpIHtcbiAgICAgICAgY29uc3QgYm94QmFzZUVycm9yID0gYE5vIHJvc2VuIGRhdGEgZm91bmQgaW4gYm94IFske2JveC5ib3hJZH1dYDtcbiAgICAgICAgaWYgKGJveC5lcmdvVHJlZSA9PT0gdGhpcy5sb2NrRXJnb1RyZWUgJiYgYm94LmFkZGl0aW9uYWxSZWdpc3RlcnM/LlI0KSB7XG4gICAgICAgICAgY29uc3QgUjQgPSBDb25zdGFudC5kZWNvZGVfZnJvbV9iYXNlMTYoYm94LmFkZGl0aW9uYWxSZWdpc3RlcnMuUjQpO1xuICAgICAgICAgIGlmIChSNCkge1xuICAgICAgICAgICAgY29uc3QgUjRTZXJpYWxpemVkID0gUjQudG9fY29sbF9jb2xsX2J5dGUoKTtcbiAgICAgICAgICAgIGlmIChSNFNlcmlhbGl6ZWQubGVuZ3RoID49IDUpIHtcbiAgICAgICAgICAgICAgY29uc3QgdG9DaGFpbiA9IEJ1ZmZlci5mcm9tKFI0U2VyaWFsaXplZFswXSkudG9TdHJpbmcoKTtcblxuICAgICAgICAgICAgICBjb25zdCBhc3NldFRyYW5zZm9ybWF0aW9uID0gdGhpcy5nZXRBc3NldFRyYW5zZm9ybWF0aW9uKFxuICAgICAgICAgICAgICAgIGJveCxcbiAgICAgICAgICAgICAgICB0b0NoYWluXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIGlmIChhc3NldFRyYW5zZm9ybWF0aW9uKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgIHRvQ2hhaW46IHRvQ2hhaW4sXG4gICAgICAgICAgICAgICAgICB0b0FkZHJlc3M6IEJ1ZmZlci5mcm9tKFI0U2VyaWFsaXplZFsxXSkudG9TdHJpbmcoKSxcbiAgICAgICAgICAgICAgICAgIGJyaWRnZUZlZTogQnVmZmVyLmZyb20oUjRTZXJpYWxpemVkWzNdKS50b1N0cmluZygpLFxuICAgICAgICAgICAgICAgICAgbmV0d29ya0ZlZTogQnVmZmVyLmZyb20oUjRTZXJpYWxpemVkWzJdKS50b1N0cmluZygpLFxuICAgICAgICAgICAgICAgICAgZnJvbUFkZHJlc3M6IEJ1ZmZlci5mcm9tKFI0U2VyaWFsaXplZFs0XSkudG9TdHJpbmcoKSxcbiAgICAgICAgICAgICAgICAgIHNvdXJjZUNoYWluVG9rZW5JZDogYXNzZXRUcmFuc2Zvcm1hdGlvbi5mcm9tLFxuICAgICAgICAgICAgICAgICAgYW1vdW50OiBhc3NldFRyYW5zZm9ybWF0aW9uLmFtb3VudCxcbiAgICAgICAgICAgICAgICAgIHRhcmdldENoYWluVG9rZW5JZDogYXNzZXRUcmFuc2Zvcm1hdGlvbi50byxcbiAgICAgICAgICAgICAgICAgIHNvdXJjZVR4SWQ6IHRyYW5zYWN0aW9uLmlkLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZVxuICAgICAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgICAgICAgICBib3hCYXNlRXJyb3IgK1xuICAgICAgICAgICAgICAgICAgYDogbGVuZ3RoIG9mIGRhdGEgaW4gUjQgaXMgbGVzcyB0aGFuIGV4cGVjdGVkIFske1I0U2VyaWFsaXplZC5sZW5ndGh9IDwgNV1gXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmIChib3guZXJnb1RyZWUgIT09IHRoaXMubG9ja0VyZ29UcmVlKVxuICAgICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgICAgICAgIGJveEJhc2VFcnJvciArXG4gICAgICAgICAgICAgICAgYDogaW52YWxpZCBlcmdvIHRyZWUgWyR7Ym94LmVyZ29UcmVlfSAhPT0gJHt0aGlzLmxvY2tFcmdvVHJlZX1dYFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICBlbHNlIHRoaXMubG9nZ2VyLmRlYnVnKGJveEJhc2VFcnJvciArIGA6IG5vIFI0YCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICBiYXNlRXJyb3IgKyBgOiBObyB2YWxpZCByb3NlbiBkYXRhIGZvdW5kIGluIGFueSBvdXRwdXQgYm94IHJlZ2lzdGVyc2BcbiAgICAgICk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgIGBBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSBnZXR0aW5nIEVyZ28gcm9zZW4gZGF0YTogJHtlfWBcbiAgICAgICk7XG4gICAgICBpZiAoZSBpbnN0YW5jZW9mIEVycm9yICYmIGUuc3RhY2spIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoZS5zdGFjayk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH07XG5cbiAgLyoqXG4gICAqIGV4dHJhY3RzIGFuZCBidWlsZHMgdG9rZW4gdHJhbnNmb3JtYXRpb24gZnJvbSBOb2RlT3V0cHV0Qm94IGFuZCB0b2tlbk1hcFxuICAgKiBAcGFyYW0gYm94IHRyYW5zYWN0aW9uIG91dHB1dFxuICAgKiBAcGFyYW0gdG9DaGFpbiBldmVudCB0YXJnZXQgY2hhaW5cbiAgICovXG4gIGdldEFzc2V0VHJhbnNmb3JtYXRpb24gPSAoXG4gICAgYm94OiBOb2RlT3V0cHV0Qm94LFxuICAgIHRvQ2hhaW46IHN0cmluZ1xuICApOiBUb2tlblRyYW5zZm9ybWF0aW9uIHwgdW5kZWZpbmVkID0+IHtcbiAgICAvLyB0cnkgdG8gYnVpbGQgdHJhbnNmb3JtYXRpb24gdXNpbmcgbG9ja2VkIHRva2Vuc1xuICAgIGlmIChib3guYXNzZXRzICYmIGJveC5hc3NldHMubGVuZ3RoID4gMCkge1xuICAgICAgZm9yIChjb25zdCBsb2NrZWRUb2tlbiBvZiBib3guYXNzZXRzKSB7XG4gICAgICAgIGNvbnN0IHRva2VuID0gdGhpcy50b2tlbnMuc2VhcmNoKEVSR09fQ0hBSU4sIHtcbiAgICAgICAgICB0b2tlbklkOiBsb2NrZWRUb2tlbi50b2tlbklkLFxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHRva2VuLmxlbmd0aCA+IDAgJiYgT2JqZWN0Lmhhc093bih0b2tlblswXSwgdG9DaGFpbikpIHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZnJvbTogbG9ja2VkVG9rZW4udG9rZW5JZCxcbiAgICAgICAgICAgIHRvOiB0aGlzLnRva2Vucy5nZXRJRCh0b2tlblswXSwgdG9DaGFpbiksXG4gICAgICAgICAgICBhbW91bnQ6IGxvY2tlZFRva2VuLmFtb3VudC50b1N0cmluZygpLFxuICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyB0cnkgdG8gYnVpbGQgdHJhbnNmb3JtYXRpb24gdXNpbmcgbG9ja2VkIEVyZ1xuICAgIGNvbnN0IGVyZyA9IHRoaXMudG9rZW5zLnNlYXJjaChFUkdPX0NIQUlOLCB7XG4gICAgICB0b2tlbklkOiBFUkdPX05BVElWRV9UT0tFTixcbiAgICB9KTtcbiAgICBpZiAoZXJnLmxlbmd0aCA+IDAgJiYgT2JqZWN0Lmhhc093bihlcmdbMF0sIHRvQ2hhaW4pKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBmcm9tOiBFUkdPX05BVElWRV9UT0tFTixcbiAgICAgICAgdG86IHRoaXMudG9rZW5zLmdldElEKGVyZ1swXSwgdG9DaGFpbiksXG4gICAgICAgIGFtb3VudDogYm94LnZhbHVlLnRvU3RyaW5nKCksXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgYE5vIHJvc2VuIGFzc2V0IHRyYW5zZm9ybWF0aW9uIGZvdW5kIGZvciBib3ggWyR7XG4gICAgICAgICAgYm94LmJveElkXG4gICAgICAgIH1dOiBib3ggYXNzZXRzOiAke0pzb25CaWdJbnQuc3RyaW5naWZ5KGJveC5hc3NldHMpfWBcbiAgICAgICk7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ==
@@ -1 +0,0 @@
1
- {"version":3,"file":"ErgoRosenExtractor.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/ergo/ErgoRosenExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,0BAA0B,MAAM,wCAAwC,CAAC;AAEhF,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAK/D,qBAAa,kBAAmB,SAAQ,0BAA0B,CAAC,MAAM,CAAC;IACxE,QAAQ,CAAC,KAAK,UAAc;IAC5B,OAAO,CAAC,aAAa,CAAyB;gBAElC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,cAAc;IAS1E;;;OAGG;IACH,cAAc,GAAI,uBAAuB,MAAM,KAAG,SAAS,GAAG,SAAS,CAiBrE;CACH"}
@@ -1,33 +0,0 @@
1
- import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
2
- import { Transaction } from 'ergo-lib-wasm-nodejs';
3
- import { ErgoNodeRosenExtractor } from './ErgoNodeRosenExtractor';
4
- import JsonBigInt from '@rosen-bridge/json-bigint';
5
- import { ERGO_CHAIN } from '../const';
6
- export class ErgoRosenExtractor extends AbstractRosenDataExtractor {
7
- chain = ERGO_CHAIN;
8
- nodeExtractor;
9
- constructor(lockAddress, tokens, logger) {
10
- super(lockAddress, tokens, logger);
11
- this.nodeExtractor = new ErgoNodeRosenExtractor(lockAddress, tokens, logger);
12
- }
13
- /**
14
- * extracts RosenData from given lock transaction in wasm sigma serialized bytes
15
- * @param serializedTransaction the sigma serialized bytes of transaction
16
- */
17
- extractRawData = (serializedTransaction) => {
18
- let transaction;
19
- try {
20
- transaction = Transaction.sigma_parse_bytes(Uint8Array.from(Buffer.from(serializedTransaction, 'hex')));
21
- }
22
- catch (e) {
23
- this.logger.debug(`An error occurred while deserializing Ergo tx to extract rosen data: ${e}`);
24
- if (e instanceof Error && e.stack) {
25
- this.logger.debug(e.stack);
26
- }
27
- return undefined;
28
- }
29
- const nodeTx = JsonBigInt.parse(transaction.to_json());
30
- return this.nodeExtractor.extractRawData(nodeTx);
31
- };
32
- }
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXJnb1Jvc2VuRXh0cmFjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGliL2dldFJvc2VuRGF0YS9lcmdvL0VyZ29Sb3NlbkV4dHJhY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLDBCQUEwQixNQUFNLHdDQUF3QyxDQUFDO0FBR2hGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVuRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNsRSxPQUFPLFVBQVUsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRXRDLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSwwQkFBa0M7SUFDL0QsS0FBSyxHQUFHLFVBQVUsQ0FBQztJQUNwQixhQUFhLENBQXlCO0lBRTlDLFlBQVksV0FBbUIsRUFBRSxNQUFnQixFQUFFLE1BQXVCO1FBQ3hFLEtBQUssQ0FBQyxXQUFXLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxzQkFBc0IsQ0FDN0MsV0FBVyxFQUNYLE1BQU0sRUFDTixNQUFNLENBQ1AsQ0FBQztJQUNKLENBQUM7SUFFRDs7O09BR0c7SUFDSCxjQUFjLEdBQUcsQ0FBQyxxQkFBNkIsRUFBeUIsRUFBRTtRQUN4RSxJQUFJLFdBQXdCLENBQUM7UUFDN0IsSUFBSSxDQUFDO1lBQ0gsV0FBVyxHQUFHLFdBQVcsQ0FBQyxpQkFBaUIsQ0FDekMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLEtBQUssQ0FBQyxDQUFDLENBQzNELENBQUM7UUFDSixDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUNmLHdFQUF3RSxDQUFDLEVBQUUsQ0FDNUUsQ0FBQztZQUNGLElBQUksQ0FBQyxZQUFZLEtBQUssSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM3QixDQUFDO1lBQ0QsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztRQUNELE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFvQixDQUFDO1FBQzFFLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbkQsQ0FBQyxDQUFDO0NBQ0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSb3NlbkRhdGEgfSBmcm9tICcuLi9hYnN0cmFjdC90eXBlcyc7XG5pbXBvcnQgQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3IgZnJvbSAnLi4vYWJzdHJhY3QvQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3InO1xuaW1wb3J0IHsgTm9kZVRyYW5zYWN0aW9uIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBUb2tlbk1hcCB9IGZyb20gJ0Byb3Nlbi1icmlkZ2UvdG9rZW5zJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnZXJnby1saWItd2FzbS1ub2RlanMnO1xuaW1wb3J0IHsgQWJzdHJhY3RMb2dnZXIgfSBmcm9tICdAcm9zZW4tYnJpZGdlL2Fic3RyYWN0LWxvZ2dlcic7XG5pbXBvcnQgeyBFcmdvTm9kZVJvc2VuRXh0cmFjdG9yIH0gZnJvbSAnLi9FcmdvTm9kZVJvc2VuRXh0cmFjdG9yJztcbmltcG9ydCBKc29uQmlnSW50IGZyb20gJ0Byb3Nlbi1icmlkZ2UvanNvbi1iaWdpbnQnO1xuaW1wb3J0IHsgRVJHT19DSEFJTiB9IGZyb20gJy4uL2NvbnN0JztcblxuZXhwb3J0IGNsYXNzIEVyZ29Sb3NlbkV4dHJhY3RvciBleHRlbmRzIEFic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yPHN0cmluZz4ge1xuICByZWFkb25seSBjaGFpbiA9IEVSR09fQ0hBSU47XG4gIHByaXZhdGUgbm9kZUV4dHJhY3RvcjogRXJnb05vZGVSb3NlbkV4dHJhY3RvcjtcblxuICBjb25zdHJ1Y3Rvcihsb2NrQWRkcmVzczogc3RyaW5nLCB0b2tlbnM6IFRva2VuTWFwLCBsb2dnZXI/OiBBYnN0cmFjdExvZ2dlcikge1xuICAgIHN1cGVyKGxvY2tBZGRyZXNzLCB0b2tlbnMsIGxvZ2dlcik7XG4gICAgdGhpcy5ub2RlRXh0cmFjdG9yID0gbmV3IEVyZ29Ob2RlUm9zZW5FeHRyYWN0b3IoXG4gICAgICBsb2NrQWRkcmVzcyxcbiAgICAgIHRva2VucyxcbiAgICAgIGxvZ2dlclxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogZXh0cmFjdHMgUm9zZW5EYXRhIGZyb20gZ2l2ZW4gbG9jayB0cmFuc2FjdGlvbiBpbiB3YXNtIHNpZ21hIHNlcmlhbGl6ZWQgYnl0ZXNcbiAgICogQHBhcmFtIHNlcmlhbGl6ZWRUcmFuc2FjdGlvbiB0aGUgc2lnbWEgc2VyaWFsaXplZCBieXRlcyBvZiB0cmFuc2FjdGlvblxuICAgKi9cbiAgZXh0cmFjdFJhd0RhdGEgPSAoc2VyaWFsaXplZFRyYW5zYWN0aW9uOiBzdHJpbmcpOiBSb3NlbkRhdGEgfCB1bmRlZmluZWQgPT4ge1xuICAgIGxldCB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb247XG4gICAgdHJ5IHtcbiAgICAgIHRyYW5zYWN0aW9uID0gVHJhbnNhY3Rpb24uc2lnbWFfcGFyc2VfYnl0ZXMoXG4gICAgICAgIFVpbnQ4QXJyYXkuZnJvbShCdWZmZXIuZnJvbShzZXJpYWxpemVkVHJhbnNhY3Rpb24sICdoZXgnKSlcbiAgICAgICk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgIGBBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSBkZXNlcmlhbGl6aW5nIEVyZ28gdHggdG8gZXh0cmFjdCByb3NlbiBkYXRhOiAke2V9YFxuICAgICAgKTtcbiAgICAgIGlmIChlIGluc3RhbmNlb2YgRXJyb3IgJiYgZS5zdGFjaykge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhlLnN0YWNrKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIGNvbnN0IG5vZGVUeCA9IEpzb25CaWdJbnQucGFyc2UodHJhbnNhY3Rpb24udG9fanNvbigpKSBhcyBOb2RlVHJhbnNhY3Rpb247XG4gICAgcmV0dXJuIHRoaXMubm9kZUV4dHJhY3Rvci5leHRyYWN0UmF3RGF0YShub2RlVHgpO1xuICB9O1xufVxuIl19
@@ -1,37 +0,0 @@
1
- interface NodeAsset {
2
- tokenId: string;
3
- amount: bigint;
4
- }
5
- interface NodeAdditionalRegisters {
6
- R4?: string;
7
- R5?: string;
8
- R6?: string;
9
- R7?: string;
10
- R8?: string;
11
- R9?: string;
12
- }
13
- interface NodeOutputBox {
14
- boxId: string;
15
- value: bigint;
16
- ergoTree: string;
17
- creationHeight: bigint | number;
18
- assets?: Array<NodeAsset>;
19
- additionalRegisters?: NodeAdditionalRegisters;
20
- transactionId: string;
21
- index: bigint | number;
22
- }
23
- interface NodeInputBox {
24
- boxId: string;
25
- }
26
- interface NodeDataInput {
27
- boxId: string;
28
- }
29
- interface NodeTransaction {
30
- id: string;
31
- inputs: Array<NodeInputBox>;
32
- dataInputs: Array<NodeDataInput>;
33
- outputs: Array<NodeOutputBox>;
34
- size?: bigint;
35
- }
36
- export { NodeOutputBox, NodeTransaction };
37
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/ergo/types.ts"],"names":[],"mappings":"AAAA,UAAU,SAAS;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,uBAAuB;IAC/B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,UAAU,aAAa;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC1B,mBAAmB,CAAC,EAAE,uBAAuB,CAAC;IAC9C,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB;AAED,UAAU,YAAY;IACpB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,UAAU,aAAa;IACrB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,UAAU,eAAe;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAC5B,UAAU,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;IACjC,OAAO,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2VyZ28vdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImludGVyZmFjZSBOb2RlQXNzZXQge1xuICB0b2tlbklkOiBzdHJpbmc7XG4gIGFtb3VudDogYmlnaW50O1xufVxuXG5pbnRlcmZhY2UgTm9kZUFkZGl0aW9uYWxSZWdpc3RlcnMge1xuICBSND86IHN0cmluZztcbiAgUjU/OiBzdHJpbmc7XG4gIFI2Pzogc3RyaW5nO1xuICBSNz86IHN0cmluZztcbiAgUjg/OiBzdHJpbmc7XG4gIFI5Pzogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgTm9kZU91dHB1dEJveCB7XG4gIGJveElkOiBzdHJpbmc7XG4gIHZhbHVlOiBiaWdpbnQ7XG4gIGVyZ29UcmVlOiBzdHJpbmc7XG4gIGNyZWF0aW9uSGVpZ2h0OiBiaWdpbnQgfCBudW1iZXI7XG4gIGFzc2V0cz86IEFycmF5PE5vZGVBc3NldD47XG4gIGFkZGl0aW9uYWxSZWdpc3RlcnM/OiBOb2RlQWRkaXRpb25hbFJlZ2lzdGVycztcbiAgdHJhbnNhY3Rpb25JZDogc3RyaW5nO1xuICBpbmRleDogYmlnaW50IHwgbnVtYmVyO1xufVxuXG5pbnRlcmZhY2UgTm9kZUlucHV0Qm94IHtcbiAgYm94SWQ6IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIE5vZGVEYXRhSW5wdXQge1xuICBib3hJZDogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgTm9kZVRyYW5zYWN0aW9uIHtcbiAgaWQ6IHN0cmluZztcbiAgaW5wdXRzOiBBcnJheTxOb2RlSW5wdXRCb3g+O1xuICBkYXRhSW5wdXRzOiBBcnJheTxOb2RlRGF0YUlucHV0PjtcbiAgb3V0cHV0czogQXJyYXk8Tm9kZU91dHB1dEJveD47XG4gIHNpemU/OiBiaWdpbnQ7XG59XG5cbmV4cG9ydCB7IE5vZGVPdXRwdXRCb3gsIE5vZGVUcmFuc2FjdGlvbiB9O1xuIl19
@@ -1 +0,0 @@
1
- {"version":3,"file":"EvmEthersRosenExtractor.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/evm/EvmEthersRosenExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,0BAA0B,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAe,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,qBAAa,uBAAwB,SAAQ,0BAA0B,CAAC,mBAAmB,CAAC;IAC1F,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,YAAY,EAAE,oBAAoB,CAAC;IAC7C,SAAS,CAAC,eAAe,EAAE,MAAM,EAAE,CAAC;gBAGlC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,QAAQ,EAChB,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,cAAc;IAezB;;;OAGG;IACH,cAAc,GAAI,OAAO,mBAAmB,KAAG,SAAS,GAAG,SAAS,CAuBlE;IAEF;;;OAGG;IACH,qBAAqB,aAOnB;CACH"}
@@ -1,54 +0,0 @@
1
- import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
2
- import { Transaction } from 'ethers';
3
- import { EvmRpcRosenExtractor } from './EvmRpcRosenExtractor';
4
- export class EvmEthersRosenExtractor extends AbstractRosenDataExtractor {
5
- chain;
6
- rpcExtractor;
7
- supportedTokens;
8
- constructor(lockAddress, tokens, chain, nativeToken, logger) {
9
- super(lockAddress, tokens, logger);
10
- this.chain = chain;
11
- this.rpcExtractor = new EvmRpcRosenExtractor(lockAddress, tokens, chain, nativeToken, logger);
12
- this.updateSupportedTokens();
13
- this.tokens.registerCallback(this.updateSupportedTokens);
14
- }
15
- /**
16
- * extracts RosenData from given lock transaction in ethers TransactionResponse format
17
- * @param txRes the lock transaction in ethers TransactionResponse format
18
- */
19
- extractRawData = (txRes) => {
20
- let transaction;
21
- try {
22
- const toAddress = txRes.to?.toLowerCase();
23
- if (toAddress &&
24
- (toAddress === this.lockAddress ||
25
- this.supportedTokens.includes(toAddress))) {
26
- transaction = Transaction.from(txRes);
27
- }
28
- else {
29
- return undefined;
30
- }
31
- }
32
- catch (e) {
33
- this.logger.debug(`An error occurred while deserializing ${this.chain} tx to extract rosen data: ${e}`);
34
- if (e instanceof Error && e.stack) {
35
- this.logger.debug(e.stack);
36
- }
37
- return undefined;
38
- }
39
- return this.rpcExtractor.extractRawData(transaction);
40
- };
41
- /**
42
- * update supported tokens
43
- * @param tokens
44
- */
45
- updateSupportedTokens = () => {
46
- const newSupportedTokens = [];
47
- this.tokens.getConfig().forEach((tokenSet) => {
48
- if (Object.hasOwn(tokenSet, this.chain))
49
- newSupportedTokens.push(tokenSet[this.chain].tokenId);
50
- });
51
- this.supportedTokens = newSupportedTokens;
52
- };
53
- }
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZtRXRoZXJzUm9zZW5FeHRyYWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2V2bS9Fdm1FdGhlcnNSb3NlbkV4dHJhY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLDBCQUEwQixNQUFNLHdDQUF3QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxXQUFXLEVBQXVCLE1BQU0sUUFBUSxDQUFDO0FBRzFELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTlELE1BQU0sT0FBTyx1QkFBd0IsU0FBUSwwQkFBK0M7SUFDakYsS0FBSyxDQUFTO0lBQ2IsWUFBWSxDQUF1QjtJQUNuQyxlQUFlLENBQVc7SUFFcEMsWUFDRSxXQUFtQixFQUNuQixNQUFnQixFQUNoQixLQUFhLEVBQ2IsV0FBbUIsRUFDbkIsTUFBdUI7UUFFdkIsS0FBSyxDQUFDLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLG9CQUFvQixDQUMxQyxXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxXQUFXLEVBQ1gsTUFBTSxDQUNQLENBQUM7UUFDRixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRDs7O09BR0c7SUFDSCxjQUFjLEdBQUcsQ0FBQyxLQUEwQixFQUF5QixFQUFFO1FBQ3JFLElBQUksV0FBd0IsQ0FBQztRQUM3QixJQUFJLENBQUM7WUFDSCxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRSxDQUFDO1lBQzFDLElBQ0UsU0FBUztnQkFDVCxDQUFDLFNBQVMsS0FBSyxJQUFJLENBQUMsV0FBVztvQkFDN0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsRUFDM0MsQ0FBQztnQkFDRCxXQUFXLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN4QyxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sT0FBTyxTQUFTLENBQUM7WUFDbkIsQ0FBQztRQUNILENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ1gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQ2YseUNBQXlDLElBQUksQ0FBQyxLQUFLLDhCQUE4QixDQUFDLEVBQUUsQ0FDckYsQ0FBQztZQUNGLElBQUksQ0FBQyxZQUFZLEtBQUssSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM3QixDQUFDO1lBQ0QsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdkQsQ0FBQyxDQUFDO0lBRUY7OztPQUdHO0lBQ0gscUJBQXFCLEdBQUcsR0FBRyxFQUFFO1FBQzNCLE1BQU0sa0JBQWtCLEdBQWEsRUFBRSxDQUFDO1FBQ3hDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDM0MsSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDO2dCQUNyQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMxRCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxlQUFlLEdBQUcsa0JBQWtCLENBQUM7SUFDNUMsQ0FBQyxDQUFDO0NBQ0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSb3NlbkRhdGEgfSBmcm9tICcuLi9hYnN0cmFjdC90eXBlcyc7XG5pbXBvcnQgQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3IgZnJvbSAnLi4vYWJzdHJhY3QvQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3InO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24sIFRyYW5zYWN0aW9uUmVzcG9uc2UgfSBmcm9tICdldGhlcnMnO1xuaW1wb3J0IHsgVG9rZW5NYXAgfSBmcm9tICdAcm9zZW4tYnJpZGdlL3Rva2Vucyc7XG5pbXBvcnQgeyBBYnN0cmFjdExvZ2dlciB9IGZyb20gJ0Byb3Nlbi1icmlkZ2UvYWJzdHJhY3QtbG9nZ2VyJztcbmltcG9ydCB7IEV2bVJwY1Jvc2VuRXh0cmFjdG9yIH0gZnJvbSAnLi9Fdm1ScGNSb3NlbkV4dHJhY3Rvcic7XG5cbmV4cG9ydCBjbGFzcyBFdm1FdGhlcnNSb3NlbkV4dHJhY3RvciBleHRlbmRzIEFic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yPFRyYW5zYWN0aW9uUmVzcG9uc2U+IHtcbiAgcmVhZG9ubHkgY2hhaW46IHN0cmluZztcbiAgcHJvdGVjdGVkIHJwY0V4dHJhY3RvcjogRXZtUnBjUm9zZW5FeHRyYWN0b3I7XG4gIHByb3RlY3RlZCBzdXBwb3J0ZWRUb2tlbnM6IHN0cmluZ1tdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGxvY2tBZGRyZXNzOiBzdHJpbmcsXG4gICAgdG9rZW5zOiBUb2tlbk1hcCxcbiAgICBjaGFpbjogc3RyaW5nLFxuICAgIG5hdGl2ZVRva2VuOiBzdHJpbmcsXG4gICAgbG9nZ2VyPzogQWJzdHJhY3RMb2dnZXJcbiAgKSB7XG4gICAgc3VwZXIobG9ja0FkZHJlc3MsIHRva2VucywgbG9nZ2VyKTtcbiAgICB0aGlzLmNoYWluID0gY2hhaW47XG4gICAgdGhpcy5ycGNFeHRyYWN0b3IgPSBuZXcgRXZtUnBjUm9zZW5FeHRyYWN0b3IoXG4gICAgICBsb2NrQWRkcmVzcyxcbiAgICAgIHRva2VucyxcbiAgICAgIGNoYWluLFxuICAgICAgbmF0aXZlVG9rZW4sXG4gICAgICBsb2dnZXJcbiAgICApO1xuICAgIHRoaXMudXBkYXRlU3VwcG9ydGVkVG9rZW5zKCk7XG4gICAgdGhpcy50b2tlbnMucmVnaXN0ZXJDYWxsYmFjayh0aGlzLnVwZGF0ZVN1cHBvcnRlZFRva2Vucyk7XG4gIH1cblxuICAvKipcbiAgICogZXh0cmFjdHMgUm9zZW5EYXRhIGZyb20gZ2l2ZW4gbG9jayB0cmFuc2FjdGlvbiBpbiBldGhlcnMgVHJhbnNhY3Rpb25SZXNwb25zZSBmb3JtYXRcbiAgICogQHBhcmFtIHR4UmVzIHRoZSBsb2NrIHRyYW5zYWN0aW9uIGluIGV0aGVycyBUcmFuc2FjdGlvblJlc3BvbnNlIGZvcm1hdFxuICAgKi9cbiAgZXh0cmFjdFJhd0RhdGEgPSAodHhSZXM6IFRyYW5zYWN0aW9uUmVzcG9uc2UpOiBSb3NlbkRhdGEgfCB1bmRlZmluZWQgPT4ge1xuICAgIGxldCB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb247XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHRvQWRkcmVzcyA9IHR4UmVzLnRvPy50b0xvd2VyQ2FzZSgpO1xuICAgICAgaWYgKFxuICAgICAgICB0b0FkZHJlc3MgJiZcbiAgICAgICAgKHRvQWRkcmVzcyA9PT0gdGhpcy5sb2NrQWRkcmVzcyB8fFxuICAgICAgICAgIHRoaXMuc3VwcG9ydGVkVG9rZW5zLmluY2x1ZGVzKHRvQWRkcmVzcykpXG4gICAgICApIHtcbiAgICAgICAgdHJhbnNhY3Rpb24gPSBUcmFuc2FjdGlvbi5mcm9tKHR4UmVzKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgIGBBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSBkZXNlcmlhbGl6aW5nICR7dGhpcy5jaGFpbn0gdHggdG8gZXh0cmFjdCByb3NlbiBkYXRhOiAke2V9YFxuICAgICAgKTtcbiAgICAgIGlmIChlIGluc3RhbmNlb2YgRXJyb3IgJiYgZS5zdGFjaykge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhlLnN0YWNrKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnJwY0V4dHJhY3Rvci5leHRyYWN0UmF3RGF0YSh0cmFuc2FjdGlvbik7XG4gIH07XG5cbiAgLyoqXG4gICAqIHVwZGF0ZSBzdXBwb3J0ZWQgdG9rZW5zXG4gICAqIEBwYXJhbSB0b2tlbnNcbiAgICovXG4gIHVwZGF0ZVN1cHBvcnRlZFRva2VucyA9ICgpID0+IHtcbiAgICBjb25zdCBuZXdTdXBwb3J0ZWRUb2tlbnM6IHN0cmluZ1tdID0gW107XG4gICAgdGhpcy50b2tlbnMuZ2V0Q29uZmlnKCkuZm9yRWFjaCgodG9rZW5TZXQpID0+IHtcbiAgICAgIGlmIChPYmplY3QuaGFzT3duKHRva2VuU2V0LCB0aGlzLmNoYWluKSlcbiAgICAgICAgbmV3U3VwcG9ydGVkVG9rZW5zLnB1c2godG9rZW5TZXRbdGhpcy5jaGFpbl0udG9rZW5JZCk7XG4gICAgfSk7XG4gICAgdGhpcy5zdXBwb3J0ZWRUb2tlbnMgPSBuZXdTdXBwb3J0ZWRUb2tlbnM7XG4gIH07XG59XG4iXX0=
@@ -1,16 +0,0 @@
1
- import { RosenData } from '../abstract/types';
2
- import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
3
- import { TokenMap } from '@rosen-bridge/tokens';
4
- import { AbstractLogger } from '@rosen-bridge/abstract-logger';
5
- import { EvmRpcRosenExtractor } from './EvmRpcRosenExtractor';
6
- export declare class EvmRosenExtractor extends AbstractRosenDataExtractor<string> {
7
- readonly chain: string;
8
- protected rpcExtractor: EvmRpcRosenExtractor;
9
- constructor(lockAddress: string, tokens: TokenMap, chain: string, nativeToken: string, logger?: AbstractLogger);
10
- /**
11
- * extracts RosenData from given lock transaction in ethers Transaction format
12
- * @param serializedTransaction signed serialized transaction in ethers Transaction format
13
- */
14
- extractRawData: (serializedTransaction: string) => RosenData | undefined;
15
- }
16
- //# sourceMappingURL=EvmRosenExtractor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EvmRosenExtractor.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/evm/EvmRosenExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,0BAA0B,MAAM,wCAAwC,CAAC;AAEhF,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,qBAAa,iBAAkB,SAAQ,0BAA0B,CAAC,MAAM,CAAC;IACvE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,YAAY,EAAE,oBAAoB,CAAC;gBAG3C,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,QAAQ,EAChB,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,cAAc;IAazB;;;OAGG;IACH,cAAc,GAAI,uBAAuB,MAAM,KAAG,SAAS,GAAG,SAAS,CAcrE;CACH"}
@@ -1,31 +0,0 @@
1
- import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
2
- import { Transaction } from 'ethers';
3
- import { EvmRpcRosenExtractor } from './EvmRpcRosenExtractor';
4
- export class EvmRosenExtractor extends AbstractRosenDataExtractor {
5
- chain;
6
- rpcExtractor;
7
- constructor(lockAddress, tokens, chain, nativeToken, logger) {
8
- super(lockAddress, tokens, logger);
9
- this.chain = chain;
10
- this.rpcExtractor = new EvmRpcRosenExtractor(lockAddress, tokens, chain, nativeToken, logger);
11
- }
12
- /**
13
- * extracts RosenData from given lock transaction in ethers Transaction format
14
- * @param serializedTransaction signed serialized transaction in ethers Transaction format
15
- */
16
- extractRawData = (serializedTransaction) => {
17
- let transaction;
18
- try {
19
- transaction = Transaction.from('0x' + serializedTransaction);
20
- }
21
- catch (e) {
22
- this.logger.debug(`An error occurred while deserializing ${this.chain} tx to extract rosen data: ${e}`);
23
- if (e instanceof Error && e.stack) {
24
- this.logger.debug(e.stack);
25
- }
26
- return undefined;
27
- }
28
- return this.rpcExtractor.extractRawData(transaction);
29
- };
30
- }
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZtUm9zZW5FeHRyYWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2V2bS9Fdm1Sb3NlbkV4dHJhY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLDBCQUEwQixNQUFNLHdDQUF3QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFHckMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFOUQsTUFBTSxPQUFPLGlCQUFrQixTQUFRLDBCQUFrQztJQUM5RCxLQUFLLENBQVM7SUFDYixZQUFZLENBQXVCO0lBRTdDLFlBQ0UsV0FBbUIsRUFDbkIsTUFBZ0IsRUFDaEIsS0FBYSxFQUNiLFdBQW1CLEVBQ25CLE1BQXVCO1FBRXZCLEtBQUssQ0FBQyxXQUFXLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxvQkFBb0IsQ0FDMUMsV0FBVyxFQUNYLE1BQU0sRUFDTixLQUFLLEVBQ0wsV0FBVyxFQUNYLE1BQU0sQ0FDUCxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7T0FHRztJQUNILGNBQWMsR0FBRyxDQUFDLHFCQUE2QixFQUF5QixFQUFFO1FBQ3hFLElBQUksV0FBd0IsQ0FBQztRQUM3QixJQUFJLENBQUM7WUFDSCxXQUFXLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcscUJBQXFCLENBQUMsQ0FBQztRQUMvRCxDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUNmLHlDQUF5QyxJQUFJLENBQUMsS0FBSyw4QkFBOEIsQ0FBQyxFQUFFLENBQ3JGLENBQUM7WUFDRixJQUFJLENBQUMsWUFBWSxLQUFLLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNsQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDN0IsQ0FBQztZQUNELE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZELENBQUMsQ0FBQztDQUNIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm9zZW5EYXRhIH0gZnJvbSAnLi4vYWJzdHJhY3QvdHlwZXMnO1xuaW1wb3J0IEFic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yIGZyb20gJy4uL2Fic3RyYWN0L0Fic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnZXRoZXJzJztcbmltcG9ydCB7IFRva2VuTWFwIH0gZnJvbSAnQHJvc2VuLWJyaWRnZS90b2tlbnMnO1xuaW1wb3J0IHsgQWJzdHJhY3RMb2dnZXIgfSBmcm9tICdAcm9zZW4tYnJpZGdlL2Fic3RyYWN0LWxvZ2dlcic7XG5pbXBvcnQgeyBFdm1ScGNSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vRXZtUnBjUm9zZW5FeHRyYWN0b3InO1xuXG5leHBvcnQgY2xhc3MgRXZtUm9zZW5FeHRyYWN0b3IgZXh0ZW5kcyBBYnN0cmFjdFJvc2VuRGF0YUV4dHJhY3RvcjxzdHJpbmc+IHtcbiAgcmVhZG9ubHkgY2hhaW46IHN0cmluZztcbiAgcHJvdGVjdGVkIHJwY0V4dHJhY3RvcjogRXZtUnBjUm9zZW5FeHRyYWN0b3I7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgbG9ja0FkZHJlc3M6IHN0cmluZyxcbiAgICB0b2tlbnM6IFRva2VuTWFwLFxuICAgIGNoYWluOiBzdHJpbmcsXG4gICAgbmF0aXZlVG9rZW46IHN0cmluZyxcbiAgICBsb2dnZXI/OiBBYnN0cmFjdExvZ2dlclxuICApIHtcbiAgICBzdXBlcihsb2NrQWRkcmVzcywgdG9rZW5zLCBsb2dnZXIpO1xuICAgIHRoaXMuY2hhaW4gPSBjaGFpbjtcbiAgICB0aGlzLnJwY0V4dHJhY3RvciA9IG5ldyBFdm1ScGNSb3NlbkV4dHJhY3RvcihcbiAgICAgIGxvY2tBZGRyZXNzLFxuICAgICAgdG9rZW5zLFxuICAgICAgY2hhaW4sXG4gICAgICBuYXRpdmVUb2tlbixcbiAgICAgIGxvZ2dlclxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogZXh0cmFjdHMgUm9zZW5EYXRhIGZyb20gZ2l2ZW4gbG9jayB0cmFuc2FjdGlvbiBpbiBldGhlcnMgVHJhbnNhY3Rpb24gZm9ybWF0XG4gICAqIEBwYXJhbSBzZXJpYWxpemVkVHJhbnNhY3Rpb24gc2lnbmVkIHNlcmlhbGl6ZWQgdHJhbnNhY3Rpb24gaW4gZXRoZXJzIFRyYW5zYWN0aW9uIGZvcm1hdFxuICAgKi9cbiAgZXh0cmFjdFJhd0RhdGEgPSAoc2VyaWFsaXplZFRyYW5zYWN0aW9uOiBzdHJpbmcpOiBSb3NlbkRhdGEgfCB1bmRlZmluZWQgPT4ge1xuICAgIGxldCB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb247XG4gICAgdHJ5IHtcbiAgICAgIHRyYW5zYWN0aW9uID0gVHJhbnNhY3Rpb24uZnJvbSgnMHgnICsgc2VyaWFsaXplZFRyYW5zYWN0aW9uKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgYEFuIGVycm9yIG9jY3VycmVkIHdoaWxlIGRlc2VyaWFsaXppbmcgJHt0aGlzLmNoYWlufSB0eCB0byBleHRyYWN0IHJvc2VuIGRhdGE6ICR7ZX1gXG4gICAgICApO1xuICAgICAgaWYgKGUgaW5zdGFuY2VvZiBFcnJvciAmJiBlLnN0YWNrKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKGUuc3RhY2spO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMucnBjRXh0cmFjdG9yLmV4dHJhY3RSYXdEYXRhKHRyYW5zYWN0aW9uKTtcbiAgfTtcbn1cbiJdfQ==
@@ -1 +0,0 @@
1
- {"version":3,"file":"EvmRpcRosenExtractor.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/evm/EvmRpcRosenExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,0BAA0B,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAmB,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAG/D,qBAAa,oBAAqB,SAAQ,0BAA0B,CAAC,WAAW,CAAC;IAC/E,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;gBAG5B,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,QAAQ,EAChB,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,cAAc;IAOzB;;;;;;;;;;;;;OAaG;IACH,cAAc,GAAI,aAAa,WAAW,KAAG,SAAS,GAAG,SAAS,CA+GhE;CACH"}
@@ -1,123 +0,0 @@
1
- import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
2
- import { parseCallData } from './utils';
3
- export class EvmRpcRosenExtractor extends AbstractRosenDataExtractor {
4
- chain;
5
- nativeToken;
6
- constructor(lockAddress, tokens, chain, nativeToken, logger) {
7
- super(lockAddress, tokens, logger);
8
- this.chain = chain;
9
- this.nativeToken = nativeToken;
10
- }
11
- /**
12
- * extracts RosenData from given lock transaction in ethers Transaction object
13
- * checks:
14
- * Native token transfer:
15
- * 1. `to` must be the lock address
16
- * 2. the entire calldata must represent a valid CallDataRosenData
17
- * ERC20 transfer:
18
- * 1. `to` address is one of the supported assets
19
- * 2. first four bytes of the call data indicate `transfer` function call: a9059cbb
20
- * 3. bytes from 5 to 37 must be the lock address
21
- * 4. bytes from 37 to 69 show the amount
22
- * 5. bytes after 69 must represent a valid CallDataRosenData
23
- * @param transaction the lock transaction in ethers Transaction object
24
- */
25
- extractRawData = (transaction) => {
26
- const baseError = `No rosen data found for tx [${transaction.hash}]`;
27
- try {
28
- if (transaction.from == null || transaction.hash == null) {
29
- this.logger.debug(baseError +
30
- `transaction 'from' ([${transaction.from}]) or 'hash' ([${transaction.hash}]) is unexpected (probably unsigned transaction is passed)`);
31
- return undefined;
32
- }
33
- if (transaction.to == null) {
34
- this.logger.debug(baseError + `: 'to' address is empty.`);
35
- return undefined;
36
- }
37
- let rosenData;
38
- const callData = transaction.data.substring(2);
39
- let token;
40
- let rosenDataRaw;
41
- let tokenAddress;
42
- let amount;
43
- let sourceTokenId, targetTokenId;
44
- if (transaction.to.toLowerCase() == this.lockAddress) {
45
- // transaction must be a native token transfer
46
- rosenDataRaw = callData;
47
- tokenAddress = this.nativeToken;
48
- amount = transaction.value.toString();
49
- const tokens = this.tokens.search(this.chain, {
50
- tokenId: this.nativeToken,
51
- });
52
- if (tokens.length == 1) {
53
- sourceTokenId = this.nativeToken;
54
- token = tokens[0];
55
- }
56
- else {
57
- this.logger.debug(baseError +
58
- `: native token [${this.nativeToken}] is not available in source chian's tokens map.`);
59
- return undefined;
60
- }
61
- }
62
- else {
63
- // transaction must be an ERC-20 token transfer
64
- if (callData.substring(0, 8) != 'a9059cbb') {
65
- this.logger.debug(baseError + `: Not a valid ERC20 transfer transaction.`);
66
- return undefined;
67
- }
68
- if (BigInt('0x' + callData.substring(8, 72)).toString(16) !=
69
- this.lockAddress.substring(2)) {
70
- this.logger.debug(baseError + `: 'to' address is not the lock address.`);
71
- return undefined;
72
- }
73
- amount = BigInt('0x' + callData.slice(72, 72 + 64)).toString();
74
- rosenDataRaw = callData.substring(72 + 64);
75
- tokenAddress = transaction.to.toLowerCase();
76
- const tokens = this.tokens.search(this.chain, {
77
- tokenId: tokenAddress,
78
- });
79
- if (tokens.length != 1) {
80
- this.logger.debug(baseError +
81
- `: token [${tokenAddress}] is not supported on chain: [${this.chain}].`);
82
- return undefined;
83
- }
84
- token = tokens[0];
85
- sourceTokenId = tokenAddress.toLowerCase();
86
- }
87
- try {
88
- rosenData = parseCallData(rosenDataRaw);
89
- }
90
- catch (e) {
91
- this.logger.debug(baseError + `: Failed to extract data from call data: ${e}`);
92
- return undefined;
93
- }
94
- try {
95
- targetTokenId = this.tokens.getID(token, rosenData.toChain);
96
- }
97
- catch (e) {
98
- this.logger.debug(baseError +
99
- `: token [${tokenAddress}] is not supported on chain: [${rosenData.toChain}].`);
100
- return undefined;
101
- }
102
- return {
103
- toChain: rosenData.toChain,
104
- toAddress: rosenData.toAddress,
105
- bridgeFee: rosenData.bridgeFee,
106
- networkFee: rosenData.networkFee,
107
- fromAddress: transaction.from.toLowerCase(),
108
- sourceChainTokenId: sourceTokenId,
109
- amount: amount,
110
- targetChainTokenId: targetTokenId,
111
- sourceTxId: transaction.hash,
112
- };
113
- }
114
- catch (e) {
115
- this.logger.debug(`An error occurred while getting EVM rosen data from RPC: ${e}`);
116
- if (e instanceof Error && e.stack) {
117
- this.logger.debug(e.stack);
118
- }
119
- return undefined;
120
- }
121
- };
122
- }
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZtUnBjUm9zZW5FeHRyYWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2V2bS9Fdm1ScGNSb3NlbkV4dHJhY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLDBCQUEwQixNQUFNLHdDQUF3QyxDQUFDO0FBSWhGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFeEMsTUFBTSxPQUFPLG9CQUFxQixTQUFRLDBCQUF1QztJQUN0RSxLQUFLLENBQVM7SUFDYixXQUFXLENBQVM7SUFFOUIsWUFDRSxXQUFtQixFQUNuQixNQUFnQixFQUNoQixLQUFhLEVBQ2IsV0FBbUIsRUFDbkIsTUFBdUI7UUFFdkIsS0FBSyxDQUFDLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDakMsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7O09BYUc7SUFDSCxjQUFjLEdBQUcsQ0FBQyxXQUF3QixFQUF5QixFQUFFO1FBQ25FLE1BQU0sU0FBUyxHQUFHLCtCQUErQixXQUFXLENBQUMsSUFBSSxHQUFHLENBQUM7UUFDckUsSUFBSSxDQUFDO1lBQ0gsSUFBSSxXQUFXLENBQUMsSUFBSSxJQUFJLElBQUksSUFBSSxXQUFXLENBQUMsSUFBSSxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUN6RCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDZixTQUFTO29CQUNQLHdCQUF3QixXQUFXLENBQUMsSUFBSSxrQkFBa0IsV0FBVyxDQUFDLElBQUksNERBQTRELENBQ3pJLENBQUM7Z0JBQ0YsT0FBTyxTQUFTLENBQUM7WUFDbkIsQ0FBQztZQUNELElBQUksV0FBVyxDQUFDLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQztnQkFDM0IsSUFBSSxDQUFD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QUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDWCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDZiw0REFBNEQsQ0FBQyxFQUFFLENBQ2hFLENBQUM7WUFDRixJQUFJLENBQUMsWUFBWSxLQUFLLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNsQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDN0IsQ0FBQztZQUNELE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUM7SUFDSCxDQUFDLENBQUM7Q0FDSCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJvc2VuRGF0YSB9IGZyb20gJy4uL2Fic3RyYWN0L3R5cGVzJztcbmltcG9ydCBBYnN0cmFjdFJvc2VuRGF0YUV4dHJhY3RvciBmcm9tICcuLi9hYnN0cmFjdC9BYnN0cmFjdFJvc2VuRGF0YUV4dHJhY3Rvcic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJ2V0aGVycyc7XG5pbXBvcnQgeyBUb2tlbk1hcCwgUm9zZW5DaGFpblRva2VuIH0gZnJvbSAnQHJvc2VuLWJyaWRnZS90b2tlbnMnO1xuaW1wb3J0IHsgQWJzdHJhY3RMb2dnZXIgfSBmcm9tICdAcm9zZW4tYnJpZGdlL2Fic3RyYWN0LWxvZ2dlcic7XG5pbXBvcnQgeyBwYXJzZUNhbGxEYXRhIH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBFdm1ScGNSb3NlbkV4dHJhY3RvciBleHRlbmRzIEFic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yPFRyYW5zYWN0aW9uPiB7XG4gIHJlYWRvbmx5IGNoYWluOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBuYXRpdmVUb2tlbjogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGxvY2tBZGRyZXNzOiBzdHJpbmcsXG4gICAgdG9rZW5zOiBUb2tlbk1hcCxcbiAgICBjaGFpbjogc3RyaW5nLFxuICAgIG5hdGl2ZVRva2VuOiBzdHJpbmcsXG4gICAgbG9nZ2VyPzogQWJzdHJhY3RMb2dnZXJcbiAgKSB7XG4gICAgc3VwZXIobG9ja0FkZHJlc3MsIHRva2VucywgbG9nZ2VyKTtcbiAgICB0aGlzLmNoYWluID0gY2hhaW47XG4gICAgdGhpcy5uYXRpdmVUb2tlbiA9IG5hdGl2ZVRva2VuO1xuICB9XG5cbiAgLyoqXG4gICAqIGV4dHJhY3RzIFJvc2VuRGF0YSBmcm9tIGdpdmVuIGxvY2sgdHJhbnNhY3Rpb24gaW4gZXRoZXJzIFRyYW5zYWN0aW9uIG9iamVjdFxuICAgKiBjaGVja3M6XG4gICAqICAgICBOYXRpdmUgdG9rZW4gdHJhbnNmZXI6XG4gICAqICAgICAgICAgMS4gYHRvYCBtdXN0IGJlIHRoZSBsb2NrIGFkZHJlc3NcbiAgICogICAgICAgICAyLiB0aGUgZW50aXJlIGNhbGxkYXRhIG11c3QgcmVwcmVzZW50IGEgdmFsaWQgQ2FsbERhdGFSb3NlbkRhdGFcbiAgICogICAgIEVSQzIwIHRyYW5zZmVyOlxuICAgKiAgICAgICAgIDEuIGB0b2AgYWRkcmVzcyBpcyBvbmUgb2YgdGhlIHN1cHBvcnRlZCBhc3NldHNcbiAgICogICAgICAgICAyLiBmaXJzdCBmb3VyIGJ5dGVzIG9mIHRoZSBjYWxsIGRhdGEgaW5kaWNhdGUgYHRyYW5zZmVyYCBmdW5jdGlvbiBjYWxsOiBhOTA1OWNiYlxuICAgKiAgICAgICAgIDMuIGJ5dGVzIGZyb20gNSB0byAzNyBtdXN0IGJlIHRoZSBsb2NrIGFkZHJlc3NcbiAgICogICAgICAgICA0LiBieXRlcyBmcm9tIDM3IHRvIDY5IHNob3cgdGhlIGFtb3VudFxuICAgKiAgICAgICAgIDUuIGJ5dGVzIGFmdGVyIDY5IG11c3QgcmVwcmVzZW50IGEgdmFsaWQgQ2FsbERhdGFSb3NlbkRhdGFcbiAgICogQHBhcmFtIHRyYW5zYWN0aW9uIHRoZSBsb2NrIHRyYW5zYWN0aW9uIGluIGV0aGVycyBUcmFuc2FjdGlvbiBvYmplY3RcbiAgICovXG4gIGV4dHJhY3RSYXdEYXRhID0gKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IFJvc2VuRGF0YSB8IHVuZGVmaW5lZCA9PiB7XG4gICAgY29uc3QgYmFzZUVycm9yID0gYE5vIHJvc2VuIGRhdGEgZm91bmQgZm9yIHR4IFske3RyYW5zYWN0aW9uLmhhc2h9XWA7XG4gICAgdHJ5IHtcbiAgICAgIGlmICh0cmFuc2FjdGlvbi5mcm9tID09IG51bGwgfHwgdHJhbnNhY3Rpb24uaGFzaCA9PSBudWxsKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICAgIGJhc2VFcnJvciArXG4gICAgICAgICAgICBgdHJhbnNhY3Rpb24gJ2Zyb20nIChbJHt0cmFuc2FjdGlvbi5mcm9tfV0pIG9yICdoYXNoJyAoWyR7dHJhbnNhY3Rpb24uaGFzaH1dKSBpcyB1bmV4cGVjdGVkIChwcm9iYWJseSB1bnNpZ25lZCB0cmFuc2FjdGlvbiBpcyBwYXNzZWQpYFxuICAgICAgICApO1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgICAgaWYgKHRyYW5zYWN0aW9uLnRvID09IG51bGwpIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoYmFzZUVycm9yICsgYDogJ3RvJyBhZGRyZXNzIGlzIGVtcHR5LmApO1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgICAgbGV0IHJvc2VuRGF0YTtcbiAgICAgIGNvbnN0IGNhbGxEYXRhID0gdHJhbnNhY3Rpb24uZGF0YS5zdWJzdHJpbmcoMik7XG4gICAgICBsZXQgdG9rZW46IFJlY29yZDxzdHJpbmcsIFJvc2VuQ2hhaW5Ub2tlbj47XG4gICAgICBsZXQgcm9zZW5EYXRhUmF3O1xuICAgICAgbGV0IHRva2VuQWRkcmVzcztcbiAgICAgIGxldCBhbW91bnQ7XG4gICAgICBsZXQgc291cmNlVG9rZW5JZCwgdGFyZ2V0VG9rZW5JZDtcblxuICAgICAgaWYgKHRyYW5zYWN0aW9uLnRvLnRvTG93ZXJDYXNlKCkgPT0gdGhpcy5sb2NrQWRkcmVzcykge1xuICAgICAgICAvLyB0cmFuc2FjdGlvbiBtdXN0IGJlIGEgbmF0aXZlIHRva2VuIHRyYW5zZmVyXG4gICAgICAgIHJvc2VuRGF0YVJhdyA9IGNhbGxEYXRhO1xuICAgICAgICB0b2tlbkFkZHJlc3MgPSB0aGlzLm5hdGl2ZVRva2VuO1xuICAgICAgICBhbW91bnQgPSB0cmFuc2FjdGlvbi52YWx1ZS50b1N0cmluZygpO1xuICAgICAgICBjb25zdCB0b2tlbnMgPSB0aGlzLnRva2Vucy5zZWFyY2godGhpcy5jaGFpbiwge1xuICAgICAgICAgIHRva2VuSWQ6IHRoaXMubmF0aXZlVG9rZW4sXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAodG9rZW5zLmxlbmd0aCA9PSAxKSB7XG4gICAgICAgICAgc291cmNlVG9rZW5JZCA9IHRoaXMubmF0aXZlVG9rZW47XG4gICAgICAgICAgdG9rZW4gPSB0b2tlbnNbMF07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgICAgICBiYXNlRXJyb3IgK1xuICAgICAgICAgICAgICBgOiBuYXRpdmUgdG9rZW4gWyR7dGhpcy5uYXRpdmVUb2tlbn1dIGlzIG5vdCBhdmFpbGFibGUgaW4gc291cmNlIGNoaWFuJ3MgdG9rZW5zIG1hcC5gXG4gICAgICAgICAgKTtcbiAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyB0cmFuc2FjdGlvbiBtdXN0IGJlIGFuIEVSQy0yMCB0b2tlbiB0cmFuc2ZlclxuICAgICAgICBpZiAoY2FsbERhdGEuc3Vic3RyaW5nKDAsIDgpICE9ICdhOTA1OWNiYicpIHtcbiAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgICAgIGJhc2VFcnJvciArIGA6IE5vdCBhIHZhbGlkIEVSQzIwIHRyYW5zZmVyIHRyYW5zYWN0aW9uLmBcbiAgICAgICAgICApO1xuICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKFxuICAgICAgICAgIEJpZ0ludCgnMHgnICsgY2FsbERhdGEuc3Vic3RyaW5nKDgsIDcyKSkudG9TdHJpbmcoMTYpICE9XG4gICAgICAgICAgdGhpcy5sb2NrQWRkcmVzcy5zdWJzdHJpbmcoMilcbiAgICAgICAgKSB7XG4gICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgICAgICBiYXNlRXJyb3IgKyBgOiAndG8nIGFkZHJlc3MgaXMgbm90IHRoZSBsb2NrIGFkZHJlc3MuYFxuICAgICAgICAgICk7XG4gICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICBhbW91bnQgPSBCaWdJbnQoJzB4JyArIGNhbGxEYXRhLnNsaWNlKDcyLCA3MiArIDY0KSkudG9TdHJpbmcoKTtcbiAgICAgICAgcm9zZW5EYXRhUmF3ID0gY2FsbERhdGEuc3Vic3RyaW5nKDcyICsgNjQpO1xuICAgICAgICB0b2tlbkFkZHJlc3MgPSB0cmFuc2FjdGlvbi50by50b0xvd2VyQ2FzZSgpO1xuICAgICAgICBjb25zdCB0b2tlbnMgPSB0aGlzLnRva2Vucy5zZWFyY2godGhpcy5jaGFpbiwge1xuICAgICAgICAgIHRva2VuSWQ6IHRva2VuQWRkcmVzcyxcbiAgICAgICAgfSk7XG4gICAgICAgIGlmICh0b2tlbnMubGVuZ3RoICE9IDEpIHtcbiAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgICAgIGJhc2VFcnJvciArXG4gICAgICAgICAgICAgIGA6IHRva2VuIFske3Rva2VuQWRkcmVzc31dIGlzIG5vdCBzdXBwb3J0ZWQgb24gY2hhaW46IFske3RoaXMuY2hhaW59XS5gXG4gICAgICAgICAgKTtcbiAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIHRva2VuID0gdG9rZW5zWzBdO1xuICAgICAgICBzb3VyY2VUb2tlbklkID0gdG9rZW5BZGRyZXNzLnRvTG93ZXJDYXNlKCk7XG4gICAgICB9XG4gICAgICB0cnkge1xuICAgICAgICByb3NlbkRhdGEgPSBwYXJzZUNhbGxEYXRhKHJvc2VuRGF0YVJhdyk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICAgIGJhc2VFcnJvciArIGA6IEZhaWxlZCB0byBleHRyYWN0IGRhdGEgZnJvbSBjYWxsIGRhdGE6ICR7ZX1gXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIHRyeSB7XG4gICAgICAgIHRhcmdldFRva2VuSWQgPSB0aGlzLnRva2Vucy5nZXRJRCh0b2tlbiwgcm9zZW5EYXRhLnRvQ2hhaW4pO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgICBiYXNlRXJyb3IgK1xuICAgICAgICAgICAgYDogdG9rZW4gWyR7dG9rZW5BZGRyZXNzfV0gaXMgbm90IHN1cHBvcnRlZCBvbiBjaGFpbjogWyR7cm9zZW5EYXRhLnRvQ2hhaW59XS5gXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0b0NoYWluOiByb3NlbkRhdGEudG9DaGFpbixcbiAgICAgICAgdG9BZGRyZXNzOiByb3NlbkRhdGEudG9BZGRyZXNzLFxuICAgICAgICBicmlkZ2VGZWU6IHJvc2VuRGF0YS5icmlkZ2VGZWUsXG4gICAgICAgIG5ldHdvcmtGZWU6IHJvc2VuRGF0YS5uZXR3b3JrRmVlLFxuICAgICAgICBmcm9tQWRkcmVzczogdHJhbnNhY3Rpb24uZnJvbS50b0xvd2VyQ2FzZSgpLFxuICAgICAgICBzb3VyY2VDaGFpblRva2VuSWQ6IHNvdXJjZVRva2VuSWQsXG4gICAgICAgIGFtb3VudDogYW1vdW50LFxuICAgICAgICB0YXJnZXRDaGFpblRva2VuSWQ6IHRhcmdldFRva2VuSWQsXG4gICAgICAgIHNvdXJjZVR4SWQ6IHRyYW5zYWN0aW9uLmhhc2gsXG4gICAgICB9O1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICBgQW4gZXJyb3Igb2NjdXJyZWQgd2hpbGUgZ2V0dGluZyBFVk0gcm9zZW4gZGF0YSBmcm9tIFJQQzogJHtlfWBcbiAgICAgICk7XG4gICAgICBpZiAoZSBpbnN0YW5jZW9mIEVycm9yICYmIGUuc3RhY2spIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoZS5zdGFjayk7XG4gICAgICB9XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ==
@@ -1,7 +0,0 @@
1
- import { MinimalOnChainRosenData } from '../../types';
2
- /**
3
- * extracts rosen data from transaction's remaining call data
4
- * @param callData
5
- */
6
- export declare const parseCallData: (callData: string) => MinimalOnChainRosenData;
7
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/evm/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAEtD;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,UAAU,MAAM,KAAG,uBAEhD,CAAC"}
@@ -1,9 +0,0 @@
1
- import { parseRosenData } from '../../utils';
2
- /**
3
- * extracts rosen data from transaction's remaining call data
4
- * @param callData
5
- */
6
- export const parseCallData = (callData) => {
7
- return parseRosenData(callData);
8
- };
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2V2bS91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRzdDOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUFDLFFBQWdCLEVBQTJCLEVBQUU7SUFDekUsT0FBTyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDbEMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcGFyc2VSb3NlbkRhdGEgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyBNaW5pbWFsT25DaGFpblJvc2VuRGF0YSB9IGZyb20gJy4uLy4uL3R5cGVzJztcblxuLyoqXG4gKiBleHRyYWN0cyByb3NlbiBkYXRhIGZyb20gdHJhbnNhY3Rpb24ncyByZW1haW5pbmcgY2FsbCBkYXRhXG4gKiBAcGFyYW0gY2FsbERhdGFcbiAqL1xuZXhwb3J0IGNvbnN0IHBhcnNlQ2FsbERhdGEgPSAoY2FsbERhdGE6IHN0cmluZyk6IE1pbmltYWxPbkNoYWluUm9zZW5EYXRhID0+IHtcbiAgcmV0dXJuIHBhcnNlUm9zZW5EYXRhKGNhbGxEYXRhKTtcbn07XG4iXX0=