@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,92 +0,0 @@
1
- import { isPlainObject } from 'lodash-es';
2
- import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
3
- import { CARDANO_CHAIN, CARDANO_NATIVE_TOKEN } from '../const';
4
- import JsonBigInt from '@rosen-bridge/json-bigint';
5
- import { getCardanoTokenId, parseRosenData } from './utils';
6
- export class CardanoGraphQLRosenExtractor extends AbstractRosenDataExtractor {
7
- chain = CARDANO_CHAIN;
8
- /**
9
- * extracts RosenData from given lock transaction in graphql format
10
- * @param transaction the lock transaction in graphql format
11
- */
12
- extractRawData = (transaction) => {
13
- const baseError = `No rosen data found for tx [${transaction.hash}]`;
14
- const metadata = transaction.metadata;
15
- try {
16
- if (!metadata || metadata.length === 0) {
17
- this.logger.debug(baseError + `: No metadata`);
18
- return undefined;
19
- }
20
- const data = metadata.find((data) => data?.key === '0')?.value;
21
- const rosenData = parseRosenData(data);
22
- if (rosenData) {
23
- const lockOutputs = transaction.outputs.filter((output) => output?.address === this.lockAddress);
24
- for (let i = 0; i < lockOutputs.length; i++) {
25
- const output = lockOutputs[i];
26
- if (!output) {
27
- this.logger.debug(`No rosen asset transformation found for box [${transaction.hash}.${i}]: box is undefined!`);
28
- }
29
- else {
30
- const assetTransformation = this.getAssetTransformation(output, rosenData.toChain);
31
- if (assetTransformation) {
32
- return {
33
- ...rosenData,
34
- sourceChainTokenId: assetTransformation.from,
35
- amount: assetTransformation.amount,
36
- targetChainTokenId: assetTransformation.to,
37
- sourceTxId: transaction.hash,
38
- };
39
- }
40
- else
41
- this.logger.debug(`No rosen asset transformation found for box [${transaction.hash}.${i}]: box assets: ${JsonBigInt.stringify(output.tokens)}`);
42
- }
43
- }
44
- this.logger.debug(baseError + `: No valid transformation found in any output boxes`);
45
- }
46
- else
47
- this.logger.debug(baseError +
48
- `: Incomplete metadata. isPlain: ${isPlainObject(data)}, data: ${JsonBigInt.stringify(data)}`);
49
- }
50
- catch (e) {
51
- this.logger.debug(`An error occurred while getting Cardano rosen data from GraphQL: ${e}`);
52
- if (e instanceof Error && e.stack) {
53
- this.logger.debug(e.stack);
54
- }
55
- }
56
- return undefined;
57
- };
58
- /**
59
- * extracts and builds token transformation from UTXO and tokenMap
60
- * @param box transaction output
61
- * @param toChain event target chain
62
- */
63
- getAssetTransformation = (box, toChain) => {
64
- // try to build transformation using locked assets
65
- for (const boxToken of box.tokens) {
66
- const token = this.tokens.search(CARDANO_CHAIN, {
67
- tokenId: getCardanoTokenId(boxToken.asset.policyId, boxToken.asset.assetName),
68
- });
69
- if (token.length > 0 && Object.hasOwn(token[0], toChain))
70
- return {
71
- from: this.tokens.getID(token[0], CARDANO_CHAIN),
72
- to: this.tokens.getID(token[0], toChain),
73
- amount: boxToken.quantity,
74
- };
75
- }
76
- // try to build transformation using locked ADA
77
- const lovelace = this.tokens.search(CARDANO_CHAIN, {
78
- tokenId: CARDANO_NATIVE_TOKEN,
79
- });
80
- if (lovelace.length > 0 && Object.hasOwn(lovelace[0], toChain)) {
81
- return {
82
- from: CARDANO_NATIVE_TOKEN,
83
- to: this.tokens.getID(lovelace[0], toChain),
84
- amount: box.value,
85
- };
86
- }
87
- else {
88
- return undefined;
89
- }
90
- };
91
- }
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FyZGFub0dyYXBoUUxSb3NlbkV4dHJhY3Rvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9nZXRSb3NlbkRhdGEvY2FyZGFuby9DYXJkYW5vR3JhcGhRTFJvc2VuRXh0cmFjdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFMUMsT0FBTywwQkFBMEIsTUFBTSx3Q0FBd0MsQ0FBQztBQUNoRixPQUFPLEVBQUUsYUFBYSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRS9ELE9BQU8sVUFBVSxNQUFNLDJCQUEyQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFNUQsTUFBTSxPQUFPLDRCQUE2QixTQUFRLDBCQUE4QztJQUNyRixLQUFLLEdBQUcsYUFBYSxDQUFDO0lBQy9COzs7T0FHRztJQUNILGNBQWMsR0FBRyxDQUFDLFdBQStCLEVBQXlCLEVBQUU7UUFDMUUsTUFBTSxTQUFTLEdBQUcsK0JBQStCLFdBQVcsQ0FBQyxJQUFJLEdBQUcsQ0FBQztRQUNyRSxNQUFNLFFBQVEsR0FBRyxXQUFXLENBQUMsUUFBUSxDQUFDO1FBQ3RDLElBQUksQ0FBQztZQUNILElBQUksQ0FBQyxRQUFRLElBQUksUUFBUSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDdkMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsU0FBUyxHQUFHLGVBQWUsQ0FBQyxDQUFDO2dCQUMvQyxPQUFPLFNBQVMsQ0FBQztZQUNuQixDQUFDO1lBQ0QsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxFQUFFLEdBQUcsS0FBSyxHQUFHLENBQUMsRUFBRSxLQUFLLENBQUM7WUFDL0QsTUFBTSxTQUFTLEdBQUcsY0FB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TSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsYUFBYSxDQUFDO29CQUNoRCxFQUFFLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQztvQkFDeEMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxRQUFRO2lCQUMxQixDQUFDO1FBQ04sQ0FBQztRQUVELCtDQUErQztRQUMvQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUU7WUFDakQsT0FBTyxFQUFFLG9CQUFvQjtTQUM5QixDQUFDLENBQUM7UUFDSCxJQUFJLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDL0QsT0FBTztnQkFDTCxJQUFJLEVBQUUsb0JBQW9CO2dCQUMxQixFQUFFLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQztnQkFDM0MsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLO2FBQ2xCLENBQUM7UUFDSixDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUM7SUFDSCxDQUFDLENBQUM7Q0FDSCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzUGxhaW5PYmplY3QgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgUm9zZW5EYXRhLCBUb2tlblRyYW5zZm9ybWF0aW9uIH0gZnJvbSAnLi4vYWJzdHJhY3QvdHlwZXMnO1xuaW1wb3J0IEFic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yIGZyb20gJy4uL2Fic3RyYWN0L0Fic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yJztcbmltcG9ydCB7IENBUkRBTk9fQ0hBSU4sIENBUkRBTk9fTkFUSVZFX1RPS0VOIH0gZnJvbSAnLi4vY29uc3QnO1xuaW1wb3J0IHsgR3JhcGhRTFRyYW5zYWN0aW9uLCBHcmFwaFFMVHhPdXRwdXQgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCBKc29uQmlnSW50IGZyb20gJ0Byb3Nlbi1icmlkZ2UvanNvbi1iaWdpbnQnO1xuaW1wb3J0IHsgZ2V0Q2FyZGFub1Rva2VuSWQsIHBhcnNlUm9zZW5EYXRhIH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBDYXJkYW5vR3JhcGhRTFJvc2VuRXh0cmFjdG9yIGV4dGVuZHMgQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3I8R3JhcGhRTFRyYW5zYWN0aW9uPiB7XG4gIHJlYWRvbmx5IGNoYWluID0gQ0FSREFOT19DSEFJTjtcbiAgLyoqXG4gICAqIGV4dHJhY3RzIFJvc2VuRGF0YSBmcm9tIGdpdmVuIGxvY2sgdHJhbnNhY3Rpb24gaW4gZ3JhcGhxbCBmb3JtYXRcbiAgICogQHBhcmFtIHRyYW5zYWN0aW9uIHRoZSBsb2NrIHRyYW5zYWN0aW9uIGluIGdyYXBocWwgZm9ybWF0XG4gICAqL1xuICBleHRyYWN0UmF3RGF0YSA9ICh0cmFuc2FjdGlvbjogR3JhcGhRTFRyYW5zYWN0aW9uKTogUm9zZW5EYXRhIHwgdW5kZWZpbmVkID0+IHtcbiAgICBjb25zdCBiYXNlRXJyb3IgPSBgTm8gcm9zZW4gZGF0YSBmb3VuZCBmb3IgdHggWyR7dHJhbnNhY3Rpb24uaGFzaH1dYDtcbiAgICBjb25zdCBtZXRhZGF0YSA9IHRyYW5zYWN0aW9uLm1ldGFkYXRhO1xuICAgIHRyeSB7XG4gICAgICBpZiAoIW1ldGFkYXRhIHx8IG1ldGFkYXRhLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhiYXNlRXJyb3IgKyBgOiBObyBtZXRhZGF0YWApO1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgICAgY29uc3QgZGF0YSA9IG1ldGFkYXRhLmZpbmQoKGRhdGEpID0+IGRhdGE/LmtleSA9PT0gJzAnKT8udmFsdWU7XG4gICAgICBjb25zdCByb3NlbkRhdGEgPSBwYXJzZVJvc2VuRGF0YShkYXRhKTtcbiAgICAgIGlmIChyb3NlbkRhdGEpIHtcbiAgICAgICAgY29uc3QgbG9ja091dHB1dHMgPSB0cmFuc2FjdGlvbi5vdXRwdXRzLmZpbHRlcihcbiAgICAgICAgICAob3V0cHV0KSA9PiBvdXRwdXQ/LmFkZHJlc3MgPT09IHRoaXMubG9ja0FkZHJlc3NcbiAgICAgICAgKTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsb2NrT3V0cHV0cy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgIGNvbnN0IG91dHB1dCA9IGxvY2tPdXRwdXRzW2ldO1xuICAgICAgICAgIGlmICghb3V0cHV0KSB7XG4gICAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgICAgICAgYE5vIHJvc2VuIGFzc2V0IHRyYW5zZm9ybWF0aW9uIGZvdW5kIGZvciBib3ggWyR7dHJhbnNhY3Rpb24uaGFzaH0uJHtpfV06IGJveCBpcyB1bmRlZmluZWQhYFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgYXNzZXRUcmFuc2Zvcm1hdGlvbiA9IHRoaXMuZ2V0QXNzZXRUcmFuc2Zvcm1hdGlvbihcbiAgICAgICAgICAgICAgb3V0cHV0LFxuICAgICAgICAgICAgICByb3NlbkRhdGEudG9DaGFpblxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGlmIChhc3NldFRyYW5zZm9ybWF0aW9uKSB7XG4gICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4ucm9zZW5EYXRhLFxuICAgICAgICAgICAgICAgIHNvdXJjZUNoYWluVG9rZW5JZDogYXNzZXRUcmFuc2Zvcm1hdGlvbi5mcm9tLFxuICAgICAgICAgICAgICAgIGFtb3VudDogYXNzZXRUcmFuc2Zvcm1hdGlvbi5hbW91bnQsXG4gICAgICAgICAgICAgICAgdGFyZ2V0Q2hhaW5Ub2tlbklkOiBhc3NldFRyYW5zZm9ybWF0aW9uLnRvLFxuICAgICAgICAgICAgICAgIHNvdXJjZVR4SWQ6IHRyYW5zYWN0aW9uLmhhc2gsXG4gICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9IGVsc2VcbiAgICAgICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgICAgICAgICAgYE5vIHJvc2VuIGFzc2V0IHRyYW5zZm9ybWF0aW9uIGZvdW5kIGZvciBib3ggWyR7XG4gICAgICAgICAgICAgICAgICB0cmFuc2FjdGlvbi5oYXNoXG4gICAgICAgICAgICAgICAgfS4ke2l9XTogYm94IGFzc2V0czogJHtKc29uQmlnSW50LnN0cmluZ2lmeShvdXRwdXQudG9rZW5zKX1gXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICAgIGJhc2VFcnJvciArIGA6IE5vIHZhbGlkIHRyYW5zZm9ybWF0aW9uIGZvdW5kIGluIGFueSBvdXRwdXQgYm94ZXNgXG4gICAgICAgICk7XG4gICAgICB9IGVsc2VcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgICAgYmFzZUVycm9yICtcbiAgICAgICAgICAgIGA6IEluY29tcGxldGUgbWV0YWRhdGEuIGlzUGxhaW46ICR7aXNQbGFpbk9iamVjdChcbiAgICAgICAgICAgICAgZGF0YVxuICAgICAgICAgICAgKX0sIGRhdGE6ICR7SnNvbkJpZ0ludC5zdHJpbmdpZnkoZGF0YSl9YFxuICAgICAgICApO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICBgQW4gZXJyb3Igb2NjdXJyZWQgd2hpbGUgZ2V0dGluZyBDYXJkYW5vIHJvc2VuIGRhdGEgZnJvbSBHcmFwaFFMOiAke2V9YFxuICAgICAgKTtcbiAgICAgIGlmIChlIGluc3RhbmNlb2YgRXJyb3IgJiYgZS5zdGFjaykge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhlLnN0YWNrKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfTtcblxuICAvKipcbiAgICogZXh0cmFjdHMgYW5kIGJ1aWxkcyB0b2tlbiB0cmFuc2Zvcm1hdGlvbiBmcm9tIFVUWE8gYW5kIHRva2VuTWFwXG4gICAqIEBwYXJhbSBib3ggdHJhbnNhY3Rpb24gb3V0cHV0XG4gICAqIEBwYXJhbSB0b0NoYWluIGV2ZW50IHRhcmdldCBjaGFpblxuICAgKi9cbiAgZ2V0QXNzZXRUcmFuc2Zvcm1hdGlvbiA9IChcbiAgICBib3g6IEdyYXBoUUxUeE91dHB1dCxcbiAgICB0b0NoYWluOiBzdHJpbmdcbiAgKTogVG9rZW5UcmFuc2Zvcm1hdGlvbiB8IHVuZGVmaW5lZCA9PiB7XG4gICAgLy8gdHJ5IHRvIGJ1aWxkIHRyYW5zZm9ybWF0aW9uIHVzaW5nIGxvY2tlZCBhc3NldHNcbiAgICBmb3IgKGNvbnN0IGJveFRva2VuIG9mIGJveC50b2tlbnMpIHtcbiAgICAgIGNvbnN0IHRva2VuID0gdGhpcy50b2tlbnMuc2VhcmNoKENBUkRBTk9fQ0hBSU4sIHtcbiAgICAgICAgdG9rZW5JZDogZ2V0Q2FyZGFub1Rva2VuSWQoXG4gICAgICAgICAgYm94VG9rZW4uYXNzZXQucG9saWN5SWQsXG4gICAgICAgICAgYm94VG9rZW4uYXNzZXQuYXNzZXROYW1lXG4gICAgICAgICksXG4gICAgICB9KTtcbiAgICAgIGlmICh0b2tlbi5sZW5ndGggPiAwICYmIE9iamVjdC5oYXNPd24odG9rZW5bMF0sIHRvQ2hhaW4pKVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGZyb206IHRoaXMudG9rZW5zLmdldElEKHRva2VuWzBdLCBDQVJEQU5PX0NIQUlOKSxcbiAgICAgICAgICB0bzogdGhpcy50b2tlbnMuZ2V0SUQodG9rZW5bMF0sIHRvQ2hhaW4pLFxuICAgICAgICAgIGFtb3VudDogYm94VG9rZW4ucXVhbnRpdHksXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgLy8gdHJ5IHRvIGJ1aWxkIHRyYW5zZm9ybWF0aW9uIHVzaW5nIGxvY2tlZCBBREFcbiAgICBjb25zdCBsb3ZlbGFjZSA9IHRoaXMudG9rZW5zLnNlYXJjaChDQVJEQU5PX0NIQUlOLCB7XG4gICAgICB0b2tlbklkOiBDQVJEQU5PX05BVElWRV9UT0tFTixcbiAgICB9KTtcbiAgICBpZiAobG92ZWxhY2UubGVuZ3RoID4gMCAmJiBPYmplY3QuaGFzT3duKGxvdmVsYWNlWzBdLCB0b0NoYWluKSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZnJvbTogQ0FSREFOT19OQVRJVkVfVE9LRU4sXG4gICAgICAgIHRvOiB0aGlzLnRva2Vucy5nZXRJRChsb3ZlbGFjZVswXSwgdG9DaGFpbiksXG4gICAgICAgIGFtb3VudDogYm94LnZhbHVlLFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gIH07XG59XG4iXX0=
@@ -1 +0,0 @@
1
- {"version":3,"file":"CardanoKoiosRosenExtractor.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/cardano/CardanoKoiosRosenExtractor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,0BAA0B,MAAM,wCAAwC,CAAC;AAEhF,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAG/C,OAAO,EACL,qBAAqB,EAKtB,MAAM,0CAA0C,CAAC;AAElD,qBAAa,0BAA2B,SAAQ,0BAA0B,CAAC,oBAAoB,CAAC;IAC9F,QAAQ,CAAC,KAAK,aAAiB;IAE/B;;;OAGG;IACH,cAAc,GACZ,aAAa,oBAAoB,KAChC,SAAS,GAAG,SAAS,CA0DtB;IAEF;;;;OAIG;IACH,sBAAsB,GACpB,KAAK,qBAAqB,EAC1B,SAAS,MAAM,KACd,mBAAmB,GAAG,SAAS,CAsChC;CACH"}
@@ -1,95 +0,0 @@
1
- import { isPlainObject } from 'lodash-es';
2
- import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
3
- import { CARDANO_CHAIN, CARDANO_NATIVE_TOKEN } from '../const';
4
- import JsonBigInt from '@rosen-bridge/json-bigint';
5
- import { getCardanoTokenId, parseRosenData } from './utils';
6
- import { decode_metadatum_to_json_str, BigNum, GeneralTransactionMetadata, MetadataJsonSchema, } from '@emurgo/cardano-serialization-lib-nodejs';
7
- export class CardanoKoiosRosenExtractor extends AbstractRosenDataExtractor {
8
- chain = CARDANO_CHAIN;
9
- /**
10
- * extracts RosenData from given lock transaction in Koios format
11
- * @param transaction the lock transaction in Koios format
12
- */
13
- extractRawData = (transaction) => {
14
- const baseError = `No rosen data found for tx [${transaction.tx_hash}]`;
15
- if (!transaction.auxiliary_data)
16
- return undefined;
17
- const metadata = transaction.auxiliary_data.metadata;
18
- try {
19
- if (metadata && Object.prototype.hasOwnProperty.call(metadata, '0')) {
20
- const metadataObject = GeneralTransactionMetadata.from_json(JsonBigInt.stringify(metadata));
21
- const data = JsonBigInt.parse(decode_metadatum_to_json_str(metadataObject.get(BigNum.from_str('0')), MetadataJsonSchema.NoConversions));
22
- const rosenData = parseRosenData(data);
23
- if (rosenData) {
24
- const lockOutputs = transaction.body.outputs.filter((output) => output.address === this.lockAddress);
25
- for (const output of lockOutputs) {
26
- const assetTransformation = this.getAssetTransformation(output, rosenData.toChain);
27
- if (assetTransformation) {
28
- return {
29
- ...rosenData,
30
- sourceChainTokenId: assetTransformation.from,
31
- amount: assetTransformation.amount,
32
- targetChainTokenId: assetTransformation.to,
33
- sourceTxId: transaction.tx_hash,
34
- };
35
- }
36
- }
37
- this.logger.debug(baseError + `: No valid transformation found in any output boxes`);
38
- }
39
- else
40
- this.logger.debug(baseError +
41
- `: Incomplete metadata. isPlain: ${isPlainObject(data)}, data: ${JsonBigInt.stringify(data)}`);
42
- }
43
- else
44
- this.logger.debug(baseError + `: Invalid metadata: ${JsonBigInt.stringify(metadata)}`);
45
- }
46
- catch (e) {
47
- this.logger.debug(`An error occurred while getting Cardano rosen data from Koios: ${e}`);
48
- if (e instanceof Error && e.stack) {
49
- this.logger.debug(e.stack);
50
- }
51
- }
52
- return undefined;
53
- };
54
- /**
55
- * extracts and builds token transformation from UTXO and tokenMap
56
- * @param box transaction output
57
- * @param toChain event target chain
58
- */
59
- getAssetTransformation = (box, toChain) => {
60
- // try to build transformation using locked assets
61
- if (box.amount.multiasset) {
62
- const assets = box.amount.multiasset;
63
- for (const policyId of Object.keys(assets)) {
64
- for (const assetName of Object.keys(assets[policyId])) {
65
- const token = this.tokens.search(CARDANO_CHAIN, {
66
- tokenId: getCardanoTokenId(policyId, assetName),
67
- });
68
- if (token.length > 0 && Object.hasOwn(token[0], toChain)) {
69
- return {
70
- from: this.tokens.getID(token[0], CARDANO_CHAIN),
71
- to: this.tokens.getID(token[0], toChain),
72
- amount: assets[policyId][assetName].toString(),
73
- };
74
- }
75
- }
76
- }
77
- }
78
- // try to build transformation using locked ADA
79
- const lovelace = this.tokens.search(CARDANO_CHAIN, {
80
- tokenId: CARDANO_NATIVE_TOKEN,
81
- });
82
- if (lovelace.length > 0 && Object.hasOwn(lovelace[0], toChain)) {
83
- return {
84
- from: CARDANO_NATIVE_TOKEN,
85
- to: this.tokens.getID(lovelace[0], toChain),
86
- amount: box.amount.coin,
87
- };
88
- }
89
- else {
90
- this.logger.debug(`No rosen asset transformation found for box with assets: ${JsonBigInt.stringify(box.amount)}`);
91
- return undefined;
92
- }
93
- };
94
- }
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FyZGFub0tvaW9zUm9zZW5FeHRyYWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2NhcmRhbm8vQ2FyZGFub0tvaW9zUm9zZW5FeHRyYWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUUxQyxPQUFPLDBCQUEwQixNQUFNLHdDQUF3QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxhQUFhLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFL0QsT0FBTyxVQUFVLE1BQU0sMkJBQTJCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGNBQWMsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUM1RCxPQUFPLEVBRUwsNEJBQTRCLEVBQzVCLE1BQU0sRUFDTiwwQkFBMEIsRUFDMUIsa0JBQWtCLEdBQ25CLE1BQU0sMENBQTBDLENBQUM7QUFFbEQsTUFBTSxPQUFPLDBCQUEyQixTQUFRLDBCQUFnRDtJQUNyRixLQUFLLEdBQUcsYUFBYSxDQUFDO0lBRS9COzs7T0FHRztJQUNILGNBQWMsR0FBRyxDQUNmLFdBQWlDLEVBQ1YsRUFBRTtRQUN6QixNQUFNLFNBQVMsR0FBRywrQkFBK0IsV0FBVyxDQUFDLE9BQU8sR0FBRyxDQUFDO1FBQ3hFLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYztZQUFFLE9BQU8sU0FBUyxDQUFDO1FBQ2xELE1BQU0sUUFBUSxHQUFHLFdBQVcsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDO1FBQ3JELElBQUksQ0FBQztZQUNILElBQUksUUFBUSxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDcEUsTUFBTSxjQUFjLEdBQUcsMEJBQTBCLENBQUMsU0FBUyxDQUN6RCxVQUFVLENBQUMsU0FBUyxD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QztJQUNILENBQUMsQ0FBQztDQUNIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQbGFpbk9iamVjdCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBSb3NlbkRhdGEsIFRva2VuVHJhbnNmb3JtYXRpb24gfSBmcm9tICcuLi9hYnN0cmFjdC90eXBlcyc7XG5pbXBvcnQgQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3IgZnJvbSAnLi4vYWJzdHJhY3QvQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3InO1xuaW1wb3J0IHsgQ0FSREFOT19DSEFJTiwgQ0FSREFOT19OQVRJVkVfVE9LRU4gfSBmcm9tICcuLi9jb25zdCc7XG5pbXBvcnQgeyBLb2lvc0Nib3JUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IEpzb25CaWdJbnQgZnJvbSAnQHJvc2VuLWJyaWRnZS9qc29uLWJpZ2ludCc7XG5pbXBvcnQgeyBnZXRDYXJkYW5vVG9rZW5JZCwgcGFyc2VSb3NlbkRhdGEgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7XG4gIFRyYW5zYWN0aW9uT3V0cHV0SlNPTixcbiAgZGVjb2RlX21ldGFkYXR1bV90b19qc29uX3N0cixcbiAgQmlnTnVtLFxuICBHZW5lcmFsVHJhbnNhY3Rpb25NZXRhZGF0YSxcbiAgTWV0YWRhdGFKc29uU2NoZW1hLFxufSBmcm9tICdAZW11cmdvL2NhcmRhbm8tc2VyaWFsaXphdGlvbi1saWItbm9kZWpzJztcblxuZXhwb3J0IGNsYXNzIENhcmRhbm9Lb2lvc1Jvc2VuRXh0cmFjdG9yIGV4dGVuZHMgQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3I8S29pb3NDYm9yVHJhbnNhY3Rpb24+IHtcbiAgcmVhZG9ubHkgY2hhaW4gPSBDQVJEQU5PX0NIQUlOO1xuXG4gIC8qKlxuICAgKiBleHRyYWN0cyBSb3NlbkRhdGEgZnJvbSBnaXZlbiBsb2NrIHRyYW5zYWN0aW9uIGluIEtvaW9zIGZvcm1hdFxuICAgKiBAcGFyYW0gdHJhbnNhY3Rpb24gdGhlIGxvY2sgdHJhbnNhY3Rpb24gaW4gS29pb3MgZm9ybWF0XG4gICAqL1xuICBleHRyYWN0UmF3RGF0YSA9IChcbiAgICB0cmFuc2FjdGlvbjogS29pb3NDYm9yVHJhbnNhY3Rpb25cbiAgKTogUm9zZW5EYXRhIHwgdW5kZWZpbmVkID0+IHtcbiAgICBjb25zdCBiYXNlRXJyb3IgPSBgTm8gcm9zZW4gZGF0YSBmb3VuZCBmb3IgdHggWyR7dHJhbnNhY3Rpb24udHhfaGFzaH1dYDtcbiAgICBpZiAoIXRyYW5zYWN0aW9uLmF1eGlsaWFyeV9kYXRhKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIGNvbnN0IG1ldGFkYXRhID0gdHJhbnNhY3Rpb24uYXV4aWxpYXJ5X2RhdGEubWV0YWRhdGE7XG4gICAgdHJ5IHtcbiAgICAgIGlmIChtZXRhZGF0YSAmJiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobWV0YWRhdGEsICcwJykpIHtcbiAgICAgICAgY29uc3QgbWV0YWRhdGFPYmplY3QgPSBHZW5lcmFsVHJhbnNhY3Rpb25NZXRhZGF0YS5mcm9tX2pzb24oXG4gICAgICAgICAgSnNvbkJpZ0ludC5zdHJpbmdpZnkobWV0YWRhdGEpXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IGRhdGEgPSBKc29uQmlnSW50LnBhcnNlKFxuICAgICAgICAgIGRlY29kZV9tZXRhZGF0dW1fdG9fanNvbl9zdHIoXG4gICAgICAgICAgICBtZXRhZGF0YU9iamVjdC5nZXQoQmlnTnVtLmZyb21fc3RyKCcwJykpISxcbiAgICAgICAgICAgIE1ldGFkYXRhSnNvblNjaGVtYS5Ob0NvbnZlcnNpb25zXG4gICAgICAgICAgKVxuICAgICAgICApO1xuICAgICAgICBjb25zdCByb3NlbkRhdGEgPSBwYXJzZVJvc2VuRGF0YShkYXRhKTtcbiAgICAgICAgaWYgKHJvc2VuRGF0YSkge1xuICAgICAgICAgIGNvbnN0IGxvY2tPdXRwdXRzID0gdHJhbnNhY3Rpb24uYm9keS5vdXRwdXRzLmZpbHRlcihcbiAgICAgICAgICAgIChvdXRwdXQpID0+IG91dHB1dC5hZGRyZXNzID09PSB0aGlzLmxvY2tBZGRyZXNzXG4gICAgICAgICAgKTtcbiAgICAgICAgICBmb3IgKGNvbnN0IG91dHB1dCBvZiBsb2NrT3V0cHV0cykge1xuICAgICAgICAgICAgY29uc3QgYXNzZXRUcmFuc2Zvcm1hdGlvbiA9IHRoaXMuZ2V0QXNzZXRUcmFuc2Zvcm1hdGlvbihcbiAgICAgICAgICAgICAgb3V0cHV0LFxuICAgICAgICAgICAgICByb3NlbkRhdGEudG9DaGFpblxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGlmIChhc3NldFRyYW5zZm9ybWF0aW9uKSB7XG4gICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4ucm9zZW5EYXRhLFxuICAgICAgICAgICAgICAgIHNvdXJjZUNoYWluVG9rZW5JZDogYXNzZXRUcmFuc2Zvcm1hdGlvbi5mcm9tLFxuICAgICAgICAgICAgICAgIGFtb3VudDogYXNzZXRUcmFuc2Zvcm1hdGlvbi5hbW91bnQsXG4gICAgICAgICAgICAgICAgdGFyZ2V0Q2hhaW5Ub2tlbklkOiBhc3NldFRyYW5zZm9ybWF0aW9uLnRvLFxuICAgICAgICAgICAgICAgIHNvdXJjZVR4SWQ6IHRyYW5zYWN0aW9uLnR4X2hhc2gsXG4gICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICAgICAgYmFzZUVycm9yICsgYDogTm8gdmFsaWQgdHJhbnNmb3JtYXRpb24gZm91bmQgaW4gYW55IG91dHB1dCBib3hlc2BcbiAgICAgICAgICApO1xuICAgICAgICB9IGVsc2VcbiAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgICAgIGJhc2VFcnJvciArXG4gICAgICAgICAgICAgIGA6IEluY29tcGxldGUgbWV0YWRhdGEuIGlzUGxhaW46ICR7aXNQbGFpbk9iamVjdChcbiAgICAgICAgICAgICAgICBkYXRhXG4gICAgICAgICAgICAgICl9LCBkYXRhOiAke0pzb25CaWdJbnQuc3RyaW5naWZ5KGRhdGEpfWBcbiAgICAgICAgICApO1xuICAgICAgfSBlbHNlXG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICAgIGJhc2VFcnJvciArIGA6IEludmFsaWQgbWV0YWRhdGE6ICR7SnNvbkJpZ0ludC5zdHJpbmdpZnkobWV0YWRhdGEpfWBcbiAgICAgICAgKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgYEFuIGVycm9yIG9jY3VycmVkIHdoaWxlIGdldHRpbmcgQ2FyZGFubyByb3NlbiBkYXRhIGZyb20gS29pb3M6ICR7ZX1gXG4gICAgICApO1xuICAgICAgaWYgKGUgaW5zdGFuY2VvZiBFcnJvciAmJiBlLnN0YWNrKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKGUuc3RhY2spO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9O1xuXG4gIC8qKlxuICAgKiBleHRyYWN0cyBhbmQgYnVpbGRzIHRva2VuIHRyYW5zZm9ybWF0aW9uIGZyb20gVVRYTyBhbmQgdG9rZW5NYXBcbiAgICogQHBhcmFtIGJveCB0cmFuc2FjdGlvbiBvdXRwdXRcbiAgICogQHBhcmFtIHRvQ2hhaW4gZXZlbnQgdGFyZ2V0IGNoYWluXG4gICAqL1xuICBnZXRBc3NldFRyYW5zZm9ybWF0aW9uID0gKFxuICAgIGJveDogVHJhbnNhY3Rpb25PdXRwdXRKU09OLFxuICAgIHRvQ2hhaW46IHN0cmluZ1xuICApOiBUb2tlblRyYW5zZm9ybWF0aW9uIHwgdW5kZWZpbmVkID0+IHtcbiAgICAvLyB0cnkgdG8gYnVpbGQgdHJhbnNmb3JtYXRpb24gdXNpbmcgbG9ja2VkIGFzc2V0c1xuICAgIGlmIChib3guYW1vdW50Lm11bHRpYXNzZXQpIHtcbiAgICAgIGNvbnN0IGFzc2V0cyA9IGJveC5hbW91bnQubXVsdGlhc3NldDtcbiAgICAgIGZvciAoY29uc3QgcG9saWN5SWQgb2YgT2JqZWN0LmtleXMoYXNzZXRzKSkge1xuICAgICAgICBmb3IgKGNvbnN0IGFzc2V0TmFtZSBvZiBPYmplY3Qua2V5cyhhc3NldHNbcG9saWN5SWRdKSkge1xuICAgICAgICAgIGNvbnN0IHRva2VuID0gdGhpcy50b2tlbnMuc2VhcmNoKENBUkRBTk9fQ0hBSU4sIHtcbiAgICAgICAgICAgIHRva2VuSWQ6IGdldENhcmRhbm9Ub2tlbklkKHBvbGljeUlkLCBhc3NldE5hbWUpLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIGlmICh0b2tlbi5sZW5ndGggPiAwICYmIE9iamVjdC5oYXNPd24odG9rZW5bMF0sIHRvQ2hhaW4pKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICBmcm9tOiB0aGlzLnRva2Vucy5nZXRJRCh0b2tlblswXSwgQ0FSREFOT19DSEFJTiksXG4gICAgICAgICAgICAgIHRvOiB0aGlzLnRva2Vucy5nZXRJRCh0b2tlblswXSwgdG9DaGFpbiksXG4gICAgICAgICAgICAgIGFtb3VudDogYXNzZXRzW3BvbGljeUlkXVthc3NldE5hbWVdLnRvU3RyaW5nKCksXG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIHRyeSB0byBidWlsZCB0cmFuc2Zvcm1hdGlvbiB1c2luZyBsb2NrZWQgQURBXG4gICAgY29uc3QgbG92ZWxhY2UgPSB0aGlzLnRva2Vucy5zZWFyY2goQ0FSREFOT19DSEFJTiwge1xuICAgICAgdG9rZW5JZDogQ0FSREFOT19OQVRJVkVfVE9LRU4sXG4gICAgfSk7XG4gICAgaWYgKGxvdmVsYWNlLmxlbmd0aCA+IDAgJiYgT2JqZWN0Lmhhc093bihsb3ZlbGFjZVswXSwgdG9DaGFpbikpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGZyb206IENBUkRBTk9fTkFUSVZFX1RPS0VOLFxuICAgICAgICB0bzogdGhpcy50b2tlbnMuZ2V0SUQobG92ZWxhY2VbMF0sIHRvQ2hhaW4pLFxuICAgICAgICBhbW91bnQ6IGJveC5hbW91bnQuY29pbixcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICBgTm8gcm9zZW4gYXNzZXQgdHJhbnNmb3JtYXRpb24gZm91bmQgZm9yIGJveCB3aXRoIGFzc2V0czogJHtKc29uQmlnSW50LnN0cmluZ2lmeShcbiAgICAgICAgICBib3guYW1vdW50XG4gICAgICAgICl9YFxuICAgICAgKTtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICB9O1xufVxuIl19
@@ -1,18 +0,0 @@
1
- import { RosenData, TokenTransformation } from '../abstract/types';
2
- import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
3
- import { Transaction, TransactionOutput } from '@cardano-ogmios/schema';
4
- export declare class CardanoOgmiosRosenExtractor extends AbstractRosenDataExtractor<Transaction> {
5
- readonly chain = "cardano";
6
- /**
7
- * extracts RosenData from given lock transaction in Ogmios format
8
- * @param transaction the lock transaction in Koios format
9
- */
10
- extractRawData: (transaction: Transaction) => RosenData | undefined;
11
- /**
12
- * extracts and builds token transformation from TxOut and tokenMap
13
- * @param box transaction output
14
- * @param toChain event target chain
15
- */
16
- getAssetTransformation: (box: TransactionOutput, toChain: string) => TokenTransformation | undefined;
17
- }
18
- //# sourceMappingURL=CardanoOgmiosRosenExtractor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CardanoOgmiosRosenExtractor.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/cardano/CardanoOgmiosRosenExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,0BAA0B,MAAM,wCAAwC,CAAC;AAEhF,OAAO,EAEL,WAAW,EACX,iBAAiB,EAClB,MAAM,wBAAwB,CAAC;AAIhC,qBAAa,2BAA4B,SAAQ,0BAA0B,CAAC,WAAW,CAAC;IACtF,QAAQ,CAAC,KAAK,aAAiB;IAC/B;;;OAGG;IACH,cAAc,GAAI,aAAa,WAAW,KAAG,SAAS,GAAG,SAAS,CAqDhE;IAEF;;;;OAIG;IACH,sBAAsB,GACpB,KAAK,iBAAiB,EACtB,SAAS,MAAM,KACd,mBAAmB,GAAG,SAAS,CAuChC;CACH"}
@@ -1,97 +0,0 @@
1
- import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
2
- import { CARDANO_CHAIN, CARDANO_NATIVE_TOKEN } from '../const';
3
- import JsonBigInt from '@rosen-bridge/json-bigint';
4
- import { getCardanoTokenId, parseRosenData } from './utils';
5
- export class CardanoOgmiosRosenExtractor extends AbstractRosenDataExtractor {
6
- chain = CARDANO_CHAIN;
7
- /**
8
- * extracts RosenData from given lock transaction in Ogmios format
9
- * @param transaction the lock transaction in Koios format
10
- */
11
- extractRawData = (transaction) => {
12
- const baseError = `No rosen data found for tx [${transaction.id}]`;
13
- const metadata = transaction.metadata;
14
- try {
15
- if (metadata) {
16
- const blob = metadata.labels;
17
- if (blob && blob['0'] && blob['0'].json) {
18
- const data = blob['0'].json;
19
- const rosenData = parseRosenData(data);
20
- if (rosenData) {
21
- const lockOutputs = transaction.outputs.filter((output) => output.address === this.lockAddress);
22
- for (const output of lockOutputs) {
23
- const assetTransformation = this.getAssetTransformation(output, rosenData.toChain);
24
- if (assetTransformation) {
25
- return {
26
- ...rosenData,
27
- sourceChainTokenId: assetTransformation.from,
28
- amount: assetTransformation.amount,
29
- targetChainTokenId: assetTransformation.to,
30
- sourceTxId: transaction.id,
31
- };
32
- }
33
- }
34
- this.logger.debug(baseError + `: No valid transformation found in any output boxes`);
35
- }
36
- else
37
- this.logger.debug(baseError +
38
- `: Incomplete metadata: ${JsonBigInt.stringify(metadata)}`);
39
- }
40
- else
41
- this.logger.debug(baseError + `: Invalid blob: ${JsonBigInt.stringify(metadata)}`);
42
- }
43
- else
44
- this.logger.debug(baseError + `: Invalid metadata: ${JsonBigInt.stringify(metadata)}`);
45
- }
46
- catch (e) {
47
- this.logger.debug(`An error occurred while getting Cardano rosen data from Ogmios: ${e}`);
48
- if (e instanceof Error && e.stack) {
49
- this.logger.debug(e.stack);
50
- }
51
- }
52
- return undefined;
53
- };
54
- /**
55
- * extracts and builds token transformation from TxOut and tokenMap
56
- * @param box transaction output
57
- * @param toChain event target chain
58
- */
59
- getAssetTransformation = (box, toChain) => {
60
- // try to build transformation using locked assets
61
- const assets = box.value;
62
- for (const policyId of Object.keys(assets)) {
63
- if (policyId === CARDANO_NATIVE_TOKEN)
64
- continue;
65
- // according to ogmios v6 docs assets are stores as
66
- // [policyId]: {[assetName]: amount}
67
- for (const assetName of Object.keys(assets[policyId])) {
68
- const token = this.tokens.search(CARDANO_CHAIN, {
69
- tokenId: getCardanoTokenId(policyId, assetName),
70
- });
71
- if (token.length > 0 && Object.hasOwn(token[0], toChain)) {
72
- return {
73
- from: this.tokens.getID(token[0], CARDANO_CHAIN),
74
- to: this.tokens.getID(token[0], toChain),
75
- amount: assets[policyId][assetName].toString(),
76
- };
77
- }
78
- }
79
- }
80
- // try to build transformation using locked ADA
81
- const lovelace = this.tokens.search(CARDANO_CHAIN, {
82
- tokenId: CARDANO_NATIVE_TOKEN,
83
- });
84
- if (lovelace.length > 0 && Object.hasOwn(lovelace[0], toChain)) {
85
- return {
86
- from: CARDANO_NATIVE_TOKEN,
87
- to: this.tokens.getID(lovelace[0], toChain),
88
- amount: assets.ada.lovelace.toString(),
89
- };
90
- }
91
- else {
92
- this.logger.debug(`No rosen asset transformation found for Ogmios box with assets: ${JsonBigInt.stringify(box.value.assets)}`);
93
- return undefined;
94
- }
95
- };
96
- }
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FyZGFub09nbWlvc1Jvc2VuRXh0cmFjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGliL2dldFJvc2VuRGF0YS9jYXJkYW5vL0NhcmRhbm9PZ21pb3NSb3NlbkV4dHJhY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLDBCQUEwQixNQUFNLHdDQUF3QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxhQUFhLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFNL0QsT0FBTyxVQUFVLE1BQU0sMkJBQTJCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGNBQWMsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUU1RCxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsMEJBQXVDO0lBQzdFLEtBQUssR0FBRyxhQUFhLENBQUM7SUFDL0I7OztPQUdHO0lBQ0gsY0FBYyxHQUFHLENBQUMsV0FBd0IsRUFBeUIsRUFBRTtRQUNuRSxNQUFNLFNBQVMsR0FBRywrQkFBK0IsV0FBVyxDQUFDLEVBQUUsR0FBRyxDQUFDO1FBQ25FLE1BQU0sUUFBUSxHQUFHLFdBQVcsQ0FBQyxRQUFRLENBQUM7UUFDdEMsSUFBSSxDQUFDO1lBQ0gsSUFBSSxRQUFRLEVBQUUsQ0FBQztnQkFDYixNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDO2dCQUM3QixJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO29CQUN4QyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBc0IsQ0FBQztvQkFDOUMsTUFBTSxTQUFTLEdBQUcsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUN2QyxJQUFJLFNBQVMsRUFBRSxDQUFDO3dCQUNkLE1BQU0sV0FBVyxHQUFHLFdBQVcsQ0FBQyxPQUFPLENBQUMsTUFBTSxD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S0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQzt3QkFDeEMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUU7cUJBQy9DLENBQUM7Z0JBQ0osQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO1FBRUQsK0NBQStDO1FBQy9DLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRTtZQUNqRCxPQUFPLEVBQUUsb0JBQW9CO1NBQzlCLENBQUMsQ0FBQztRQUNILElBQUksUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUMvRCxPQUFPO2dCQUNMLElBQUksRUFBRSxvQkFBb0I7Z0JBQzFCLEVBQUUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDO2dCQUMzQyxNQUFNLEVBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFO2FBQ3ZDLENBQUM7UUFDSixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUNmLG1FQUFtRSxVQUFVLENBQUMsU0FBUyxDQUNyRixHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FDakIsRUFBRSxDQUNKLENBQUM7WUFDRixPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDO0lBQ0gsQ0FBQyxDQUFDO0NBQ0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSb3NlbkRhdGEsIFRva2VuVHJhbnNmb3JtYXRpb24gfSBmcm9tICcuLi9hYnN0cmFjdC90eXBlcyc7XG5pbXBvcnQgQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3IgZnJvbSAnLi4vYWJzdHJhY3QvQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3InO1xuaW1wb3J0IHsgQ0FSREFOT19DSEFJTiwgQ0FSREFOT19OQVRJVkVfVE9LRU4gfSBmcm9tICcuLi9jb25zdCc7XG5pbXBvcnQge1xuICBPYmplY3ROb1NjaGVtYSxcbiAgVHJhbnNhY3Rpb24sXG4gIFRyYW5zYWN0aW9uT3V0cHV0LFxufSBmcm9tICdAY2FyZGFuby1vZ21pb3Mvc2NoZW1hJztcbmltcG9ydCBKc29uQmlnSW50IGZyb20gJ0Byb3Nlbi1icmlkZ2UvanNvbi1iaWdpbnQnO1xuaW1wb3J0IHsgZ2V0Q2FyZGFub1Rva2VuSWQsIHBhcnNlUm9zZW5EYXRhIH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBDYXJkYW5vT2dtaW9zUm9zZW5FeHRyYWN0b3IgZXh0ZW5kcyBBYnN0cmFjdFJvc2VuRGF0YUV4dHJhY3RvcjxUcmFuc2FjdGlvbj4ge1xuICByZWFkb25seSBjaGFpbiA9IENBUkRBTk9fQ0hBSU47XG4gIC8qKlxuICAgKiBleHRyYWN0cyBSb3NlbkRhdGEgZnJvbSBnaXZlbiBsb2NrIHRyYW5zYWN0aW9uIGluIE9nbWlvcyBmb3JtYXRcbiAgICogQHBhcmFtIHRyYW5zYWN0aW9uIHRoZSBsb2NrIHRyYW5zYWN0aW9uIGluIEtvaW9zIGZvcm1hdFxuICAgKi9cbiAgZXh0cmFjdFJhd0RhdGEgPSAodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogUm9zZW5EYXRhIHwgdW5kZWZpbmVkID0+IHtcbiAgICBjb25zdCBiYXNlRXJyb3IgPSBgTm8gcm9zZW4gZGF0YSBmb3VuZCBmb3IgdHggWyR7dHJhbnNhY3Rpb24uaWR9XWA7XG4gICAgY29uc3QgbWV0YWRhdGEgPSB0cmFuc2FjdGlvbi5tZXRhZGF0YTtcbiAgICB0cnkge1xuICAgICAgaWYgKG1ldGFkYXRhKSB7XG4gICAgICAgIGNvbnN0IGJsb2IgPSBtZXRhZGF0YS5sYWJlbHM7XG4gICAgICAgIGlmIChibG9iICYmIGJsb2JbJzAnXSAmJiBibG9iWycwJ10uanNvbikge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBibG9iWycwJ10uanNvbiBhcyBPYmplY3ROb1NjaGVtYTtcbiAgICAgICAgICBjb25zdCByb3NlbkRhdGEgPSBwYXJzZVJvc2VuRGF0YShkYXRhKTtcbiAgICAgICAgICBpZiAocm9zZW5EYXRhKSB7XG4gICAgICAgICAgICBjb25zdCBsb2NrT3V0cHV0cyA9IHRyYW5zYWN0aW9uLm91dHB1dHMuZmlsdGVyKFxuICAgICAgICAgICAgICAob3V0cHV0KSA9PiBvdXRwdXQuYWRkcmVzcyA9PT0gdGhpcy5sb2NrQWRkcmVzc1xuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGZvciAoY29uc3Qgb3V0cHV0IG9mIGxvY2tPdXRwdXRzKSB7XG4gICAgICAgICAgICAgIGNvbnN0IGFzc2V0VHJhbnNmb3JtYXRpb24gPSB0aGlzLmdldEFzc2V0VHJhbnNmb3JtYXRpb24oXG4gICAgICAgICAgICAgICAgb3V0cHV0LFxuICAgICAgICAgICAgICAgIHJvc2VuRGF0YS50b0NoYWluXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIGlmIChhc3NldFRyYW5zZm9ybWF0aW9uKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgIC4uLnJvc2VuRGF0YSxcbiAgICAgICAgICAgICAgICAgIHNvdXJjZUNoYWluVG9rZW5JZDogYXNzZXRUcmFuc2Zvcm1hdGlvbi5mcm9tLFxuICAgICAgICAgICAgICAgICAgYW1vdW50OiBhc3NldFRyYW5zZm9ybWF0aW9uLmFtb3VudCxcbiAgICAgICAgICAgICAgICAgIHRhcmdldENoYWluVG9rZW5JZDogYXNzZXRUcmFuc2Zvcm1hdGlvbi50byxcbiAgICAgICAgICAgICAgICAgIHNvdXJjZVR4SWQ6IHRyYW5zYWN0aW9uLmlkLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICAgICAgICBiYXNlRXJyb3IgKyBgOiBObyB2YWxpZCB0cmFuc2Zvcm1hdGlvbiBmb3VuZCBpbiBhbnkgb3V0cHV0IGJveGVzYFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9IGVsc2VcbiAgICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICAgICAgICBiYXNlRXJyb3IgK1xuICAgICAgICAgICAgICAgIGA6IEluY29tcGxldGUgbWV0YWRhdGE6ICR7SnNvbkJpZ0ludC5zdHJpbmdpZnkobWV0YWRhdGEpfWBcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZVxuICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICAgICAgYmFzZUVycm9yICsgYDogSW52YWxpZCBibG9iOiAke0pzb25CaWdJbnQuc3RyaW5naWZ5KG1ldGFkYXRhKX1gXG4gICAgICAgICAgKTtcbiAgICAgIH0gZWxzZVxuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgICBiYXNlRXJyb3IgKyBgOiBJbnZhbGlkIG1ldGFkYXRhOiAke0pzb25CaWdJbnQuc3RyaW5naWZ5KG1ldGFkYXRhKX1gXG4gICAgICAgICk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgIGBBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSBnZXR0aW5nIENhcmRhbm8gcm9zZW4gZGF0YSBmcm9tIE9nbWlvczogJHtlfWBcbiAgICAgICk7XG4gICAgICBpZiAoZSBpbnN0YW5jZW9mIEVycm9yICYmIGUuc3RhY2spIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoZS5zdGFjayk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH07XG5cbiAgLyoqXG4gICAqIGV4dHJhY3RzIGFuZCBidWlsZHMgdG9rZW4gdHJhbnNmb3JtYXRpb24gZnJvbSBUeE91dCBhbmQgdG9rZW5NYXBcbiAgICogQHBhcmFtIGJveCB0cmFuc2FjdGlvbiBvdXRwdXRcbiAgICogQHBhcmFtIHRvQ2hhaW4gZXZlbnQgdGFyZ2V0IGNoYWluXG4gICAqL1xuICBnZXRBc3NldFRyYW5zZm9ybWF0aW9uID0gKFxuICAgIGJveDogVHJhbnNhY3Rpb25PdXRwdXQsXG4gICAgdG9DaGFpbjogc3RyaW5nXG4gICk6IFRva2VuVHJhbnNmb3JtYXRpb24gfCB1bmRlZmluZWQgPT4ge1xuICAgIC8vIHRyeSB0byBidWlsZCB0cmFuc2Zvcm1hdGlvbiB1c2luZyBsb2NrZWQgYXNzZXRzXG4gICAgY29uc3QgYXNzZXRzID0gYm94LnZhbHVlO1xuICAgIGZvciAoY29uc3QgcG9saWN5SWQgb2YgT2JqZWN0LmtleXMoYXNzZXRzKSkge1xuICAgICAgaWYgKHBvbGljeUlkID09PSBDQVJEQU5PX05BVElWRV9UT0tFTikgY29udGludWU7XG4gICAgICAvLyBhY2NvcmRpbmcgdG8gb2dtaW9zIHY2IGRvY3MgYXNzZXRzIGFyZSBzdG9yZXMgYXNcbiAgICAgIC8vICAgICAgW3BvbGljeUlkXToge1thc3NldE5hbWVdOiBhbW91bnR9XG4gICAgICBmb3IgKGNvbnN0IGFzc2V0TmFtZSBvZiBPYmplY3Qua2V5cyhhc3NldHNbcG9saWN5SWRdKSkge1xuICAgICAgICBjb25zdCB0b2tlbiA9IHRoaXMudG9rZW5zLnNlYXJjaChDQVJEQU5PX0NIQUlOLCB7XG4gICAgICAgICAgdG9rZW5JZDogZ2V0Q2FyZGFub1Rva2VuSWQocG9saWN5SWQsIGFzc2V0TmFtZSksXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAodG9rZW4ubGVuZ3RoID4gMCAmJiBPYmplY3QuaGFzT3duKHRva2VuWzBdLCB0b0NoYWluKSkge1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBmcm9tOiB0aGlzLnRva2Vucy5nZXRJRCh0b2tlblswXSwgQ0FSREFOT19DSEFJTiksXG4gICAgICAgICAgICB0bzogdGhpcy50b2tlbnMuZ2V0SUQodG9rZW5bMF0sIHRvQ2hhaW4pLFxuICAgICAgICAgICAgYW1vdW50OiBhc3NldHNbcG9saWN5SWRdW2Fzc2V0TmFtZV0udG9TdHJpbmcoKSxcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gdHJ5IHRvIGJ1aWxkIHRyYW5zZm9ybWF0aW9uIHVzaW5nIGxvY2tlZCBBREFcbiAgICBjb25zdCBsb3ZlbGFjZSA9IHRoaXMudG9rZW5zLnNlYXJjaChDQVJEQU5PX0NIQUlOLCB7XG4gICAgICB0b2tlbklkOiBDQVJEQU5PX05BVElWRV9UT0tFTixcbiAgICB9KTtcbiAgICBpZiAobG92ZWxhY2UubGVuZ3RoID4gMCAmJiBPYmplY3QuaGFzT3duKGxvdmVsYWNlWzBdLCB0b0NoYWluKSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZnJvbTogQ0FSREFOT19OQVRJVkVfVE9LRU4sXG4gICAgICAgIHRvOiB0aGlzLnRva2Vucy5nZXRJRChsb3ZlbGFjZVswXSwgdG9DaGFpbiksXG4gICAgICAgIGFtb3VudDogYXNzZXRzLmFkYS5sb3ZlbGFjZS50b1N0cmluZygpLFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgIGBObyByb3NlbiBhc3NldCB0cmFuc2Zvcm1hdGlvbiBmb3VuZCBmb3IgT2dtaW9zIGJveCB3aXRoIGFzc2V0czogJHtKc29uQmlnSW50LnN0cmluZ2lmeShcbiAgICAgICAgICBib3gudmFsdWUuYXNzZXRzXG4gICAgICAgICl9YFxuICAgICAgKTtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICB9O1xufVxuIl19
@@ -1,18 +0,0 @@
1
- import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
2
- import { RosenData, TokenTransformation } from '../abstract/types';
3
- import { CardanoBoxCandidate } from './types';
4
- export declare class CardanoRosenExtractor extends AbstractRosenDataExtractor<string> {
5
- readonly chain = "cardano";
6
- /**
7
- * extracts RosenData from given lock transaction in CardanoTx format
8
- * @param serializedTransaction stringified transaction in CardanoTx format
9
- */
10
- extractRawData: (serializedTransaction: string) => RosenData | undefined;
11
- /**
12
- * extracts and builds token transformation from CardanoBoxCandidate and tokenMap
13
- * @param box transaction output in CardanoBoxCandidate format
14
- * @param toChain event target chain
15
- */
16
- getAssetTransformation: (box: CardanoBoxCandidate, toChain: string) => TokenTransformation | undefined;
17
- }
18
- //# sourceMappingURL=CardanoRosenExtractor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CardanoRosenExtractor.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/cardano/CardanoRosenExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,0BAA0B,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAa,MAAM,SAAS,CAAC;AAKzD,qBAAa,qBAAsB,SAAQ,0BAA0B,CAAC,MAAM,CAAC;IAC3E,QAAQ,CAAC,KAAK,aAAiB;IAC/B;;;OAGG;IACH,cAAc,GAAI,uBAAuB,MAAM,KAAG,SAAS,GAAG,SAAS,CAiDrE;IAEF;;;;OAIG;IACH,sBAAsB,GACpB,KAAK,mBAAmB,EACxB,SAAS,MAAM,KACd,mBAAmB,GAAG,SAAS,CAkChC;CACH"}
@@ -1,88 +0,0 @@
1
- import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
2
- import { CARDANO_CHAIN, CARDANO_NATIVE_TOKEN } from '../const';
3
- import JsonBigInt from '@rosen-bridge/json-bigint';
4
- import { getCardanoTokenId, parseRosenData } from './utils';
5
- export class CardanoRosenExtractor extends AbstractRosenDataExtractor {
6
- chain = CARDANO_CHAIN;
7
- /**
8
- * extracts RosenData from given lock transaction in CardanoTx format
9
- * @param serializedTransaction stringified transaction in CardanoTx format
10
- */
11
- extractRawData = (serializedTransaction) => {
12
- let transaction;
13
- try {
14
- transaction = JsonBigInt.parse(serializedTransaction);
15
- }
16
- catch (e) {
17
- throw new Error(`Failed to parse transaction json to CardanoTx format while extracting rosen data: ${e}`);
18
- }
19
- try {
20
- const baseError = `No rosen data found for tx [${transaction.id}]`;
21
- const data = transaction.metadata?.['0'];
22
- const rosenData = parseRosenData(data);
23
- if (rosenData) {
24
- const lockOutputs = transaction.outputs.filter((output) => output.address === this.lockAddress);
25
- for (const output of lockOutputs) {
26
- const assetTransformation = this.getAssetTransformation(output, rosenData.toChain);
27
- if (assetTransformation) {
28
- return {
29
- ...rosenData,
30
- sourceChainTokenId: assetTransformation.from,
31
- amount: assetTransformation.amount,
32
- targetChainTokenId: assetTransformation.to,
33
- sourceTxId: transaction.id,
34
- };
35
- }
36
- }
37
- this.logger.debug(baseError + `: No valid transformation found in any output boxes`);
38
- }
39
- else
40
- this.logger.debug(baseError +
41
- `: Incomplete metadata: ${JsonBigInt.stringify(transaction.metadata)}`);
42
- }
43
- catch (e) {
44
- this.logger.debug(`An error occurred while extracting rosen data: ${e}`);
45
- if (e instanceof Error && e.stack) {
46
- this.logger.debug(e.stack);
47
- }
48
- }
49
- return undefined;
50
- };
51
- /**
52
- * extracts and builds token transformation from CardanoBoxCandidate and tokenMap
53
- * @param box transaction output in CardanoBoxCandidate format
54
- * @param toChain event target chain
55
- */
56
- getAssetTransformation = (box, toChain) => {
57
- // try to build transformation using locked assets
58
- if (box.assets.length > 0) {
59
- for (const asset of box.assets) {
60
- const token = this.tokens.search(CARDANO_CHAIN, {
61
- tokenId: getCardanoTokenId(asset.policyId, asset.assetName),
62
- });
63
- if (token.length > 0 && Object.hasOwn(token[0], toChain))
64
- return {
65
- from: this.tokens.getID(token[0], CARDANO_CHAIN),
66
- to: this.tokens.getID(token[0], toChain),
67
- amount: asset.quantity,
68
- };
69
- }
70
- }
71
- // try to build transformation using locked ADA
72
- const lovelace = this.tokens.search(CARDANO_CHAIN, {
73
- tokenId: CARDANO_NATIVE_TOKEN,
74
- });
75
- if (lovelace.length > 0 && Object.hasOwn(lovelace[0], toChain)) {
76
- return {
77
- from: CARDANO_NATIVE_TOKEN,
78
- to: this.tokens.getID(lovelace[0], toChain),
79
- amount: box.value.toString(),
80
- };
81
- }
82
- else {
83
- this.logger.debug(`No rosen asset transformation found for CardanoBoxCandidate with assets: ${JsonBigInt.stringify(box.assets)}`);
84
- return undefined;
85
- }
86
- };
87
- }
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FyZGFub1Jvc2VuRXh0cmFjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGliL2dldFJvc2VuRGF0YS9jYXJkYW5vL0NhcmRhbm9Sb3NlbkV4dHJhY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLDBCQUEwQixNQUFNLHdDQUF3QyxDQUFDO0FBR2hGLE9BQU8sRUFBRSxhQUFhLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDL0QsT0FBTyxVQUFVLE1BQU0sMkJBQTJCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGNBQWMsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUU1RCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsMEJBQWtDO0lBQ2xFLEtBQUssR0FBRyxhQUFhLENBQUM7SUFDL0I7OztPQUdHO0lBQ0gsY0FBYyxHQUFHLENBQUMscUJBQTZCLEVBQXlCLEVBQUU7UUFDeEUsSUFBSSxXQUFzQixDQUFDO1FBQzNCLElBQUksQ0FBQztZQUNILFdBQVcsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDeEQsQ0FBQztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDWCxNQUFNLElBQUksS0FBSyxDQUNiLHFGQUFxRixDQUFDLEVBQUUsQ0FDekYsQ0FBQztRQUNKLENBQUM7UUFDRCxJQUFJLENBQUM7WUFDSCxNQUFNLFNBQVMsR0FBRywrQkFBK0IsV0FBVyxDQUFDLEVBQUUsR0FBRyxDQUFDO1lBQ25FLE1BQU0sSUFBSSxHQUFHLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN6QyxNQUFNLFNBQVMsR0FBRyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdkMsSUFBSSxTQUFTLEVBQUUsQ0FBQztnQkFDZCxNQUFNLFdBQVcsR0FBRyxXQUFXLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FDNUMsQ0FBQyxNQUFNLEVB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QUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQztnQkFDM0MsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFO2FBQzdCLENBQUM7UUFDSixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUNmLDRFQUE0RSxVQUFVLENBQUMsU0FBUyxDQUM5RixHQUFHLENBQUMsTUFBTSxDQUNYLEVBQUUsQ0FDSixDQUFDO1lBQ0YsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztJQUNILENBQUMsQ0FBQztDQUNIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEFic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yIGZyb20gJy4uL2Fic3RyYWN0L0Fic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yJztcbmltcG9ydCB7IFJvc2VuRGF0YSwgVG9rZW5UcmFuc2Zvcm1hdGlvbiB9IGZyb20gJy4uL2Fic3RyYWN0L3R5cGVzJztcbmltcG9ydCB7IENhcmRhbm9Cb3hDYW5kaWRhdGUsIENhcmRhbm9UeCB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgQ0FSREFOT19DSEFJTiwgQ0FSREFOT19OQVRJVkVfVE9LRU4gfSBmcm9tICcuLi9jb25zdCc7XG5pbXBvcnQgSnNvbkJpZ0ludCBmcm9tICdAcm9zZW4tYnJpZGdlL2pzb24tYmlnaW50JztcbmltcG9ydCB7IGdldENhcmRhbm9Ub2tlbklkLCBwYXJzZVJvc2VuRGF0YSB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgQ2FyZGFub1Jvc2VuRXh0cmFjdG9yIGV4dGVuZHMgQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3I8c3RyaW5nPiB7XG4gIHJlYWRvbmx5IGNoYWluID0gQ0FSREFOT19DSEFJTjtcbiAgLyoqXG4gICAqIGV4dHJhY3RzIFJvc2VuRGF0YSBmcm9tIGdpdmVuIGxvY2sgdHJhbnNhY3Rpb24gaW4gQ2FyZGFub1R4IGZvcm1hdFxuICAgKiBAcGFyYW0gc2VyaWFsaXplZFRyYW5zYWN0aW9uIHN0cmluZ2lmaWVkIHRyYW5zYWN0aW9uIGluIENhcmRhbm9UeCBmb3JtYXRcbiAgICovXG4gIGV4dHJhY3RSYXdEYXRhID0gKHNlcmlhbGl6ZWRUcmFuc2FjdGlvbjogc3RyaW5nKTogUm9zZW5EYXRhIHwgdW5kZWZpbmVkID0+IHtcbiAgICBsZXQgdHJhbnNhY3Rpb246IENhcmRhbm9UeDtcbiAgICB0cnkge1xuICAgICAgdHJhbnNhY3Rpb24gPSBKc29uQmlnSW50LnBhcnNlKHNlcmlhbGl6ZWRUcmFuc2FjdGlvbik7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgRmFpbGVkIHRvIHBhcnNlIHRyYW5zYWN0aW9uIGpzb24gdG8gQ2FyZGFub1R4IGZvcm1hdCB3aGlsZSBleHRyYWN0aW5nIHJvc2VuIGRhdGE6ICR7ZX1gXG4gICAgICApO1xuICAgIH1cbiAgICB0cnkge1xuICAgICAgY29uc3QgYmFzZUVycm9yID0gYE5vIHJvc2VuIGRhdGEgZm91bmQgZm9yIHR4IFske3RyYW5zYWN0aW9uLmlkfV1gO1xuICAgICAgY29uc3QgZGF0YSA9IHRyYW5zYWN0aW9uLm1ldGFkYXRhPy5bJzAnXTtcbiAgICAgIGNvbnN0IHJvc2VuRGF0YSA9IHBhcnNlUm9zZW5EYXRhKGRhdGEpO1xuICAgICAgaWYgKHJvc2VuRGF0YSkge1xuICAgICAgICBjb25zdCBsb2NrT3V0cHV0cyA9IHRyYW5zYWN0aW9uLm91dHB1dHMuZmlsdGVyKFxuICAgICAgICAgIChvdXRwdXQpID0+IG91dHB1dC5hZGRyZXNzID09PSB0aGlzLmxvY2tBZGRyZXNzXG4gICAgICAgICk7XG4gICAgICAgIGZvciAoY29uc3Qgb3V0cHV0IG9mIGxvY2tPdXRwdXRzKSB7XG4gICAgICAgICAgY29uc3QgYXNzZXRUcmFuc2Zvcm1hdGlvbiA9IHRoaXMuZ2V0QXNzZXRUcmFuc2Zvcm1hdGlvbihcbiAgICAgICAgICAgIG91dHB1dCxcbiAgICAgICAgICAgIHJvc2VuRGF0YS50b0NoYWluXG4gICAgICAgICAgKTtcbiAgICAgICAgICBpZiAoYXNzZXRUcmFuc2Zvcm1hdGlvbikge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgLi4ucm9zZW5EYXRhLFxuICAgICAgICAgICAgICBzb3VyY2VDaGFpblRva2VuSWQ6IGFzc2V0VHJhbnNmb3JtYXRpb24uZnJvbSxcbiAgICAgICAgICAgICAgYW1vdW50OiBhc3NldFRyYW5zZm9ybWF0aW9uLmFtb3VudCxcbiAgICAgICAgICAgICAgdGFyZ2V0Q2hhaW5Ub2tlbklkOiBhc3NldFRyYW5zZm9ybWF0aW9uLnRvLFxuICAgICAgICAgICAgICBzb3VyY2VUeElkOiB0cmFuc2FjdGlvbi5pZCxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICAgIGJhc2VFcnJvciArIGA6IE5vIHZhbGlkIHRyYW5zZm9ybWF0aW9uIGZvdW5kIGluIGFueSBvdXRwdXQgYm94ZXNgXG4gICAgICAgICk7XG4gICAgICB9IGVsc2VcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgICAgYmFzZUVycm9yICtcbiAgICAgICAgICAgIGA6IEluY29tcGxldGUgbWV0YWRhdGE6ICR7SnNvbkJpZ0ludC5zdHJpbmdpZnkoXG4gICAgICAgICAgICAgIHRyYW5zYWN0aW9uLm1ldGFkYXRhXG4gICAgICAgICAgICApfWBcbiAgICAgICAgKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhgQW4gZXJyb3Igb2NjdXJyZWQgd2hpbGUgZXh0cmFjdGluZyByb3NlbiBkYXRhOiAke2V9YCk7XG4gICAgICBpZiAoZSBpbnN0YW5jZW9mIEVycm9yICYmIGUuc3RhY2spIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoZS5zdGFjayk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH07XG5cbiAgLyoqXG4gICAqIGV4dHJhY3RzIGFuZCBidWlsZHMgdG9rZW4gdHJhbnNmb3JtYXRpb24gZnJvbSBDYXJkYW5vQm94Q2FuZGlkYXRlIGFuZCB0b2tlbk1hcFxuICAgKiBAcGFyYW0gYm94IHRyYW5zYWN0aW9uIG91dHB1dCBpbiBDYXJkYW5vQm94Q2FuZGlkYXRlIGZvcm1hdFxuICAgKiBAcGFyYW0gdG9DaGFpbiBldmVudCB0YXJnZXQgY2hhaW5cbiAgICovXG4gIGdldEFzc2V0VHJhbnNmb3JtYXRpb24gPSAoXG4gICAgYm94OiBDYXJkYW5vQm94Q2FuZGlkYXRlLFxuICAgIHRvQ2hhaW46IHN0cmluZ1xuICApOiBUb2tlblRyYW5zZm9ybWF0aW9uIHwgdW5kZWZpbmVkID0+IHtcbiAgICAvLyB0cnkgdG8gYnVpbGQgdHJhbnNmb3JtYXRpb24gdXNpbmcgbG9ja2VkIGFzc2V0c1xuICAgIGlmIChib3guYXNzZXRzLmxlbmd0aCA+IDApIHtcbiAgICAgIGZvciAoY29uc3QgYXNzZXQgb2YgYm94LmFzc2V0cykge1xuICAgICAgICBjb25zdCB0b2tlbiA9IHRoaXMudG9rZW5zLnNlYXJjaChDQVJEQU5PX0NIQUlOLCB7XG4gICAgICAgICAgdG9rZW5JZDogZ2V0Q2FyZGFub1Rva2VuSWQoYXNzZXQucG9saWN5SWQsIGFzc2V0LmFzc2V0TmFtZSksXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAodG9rZW4ubGVuZ3RoID4gMCAmJiBPYmplY3QuaGFzT3duKHRva2VuWzBdLCB0b0NoYWluKSlcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZnJvbTogdGhpcy50b2tlbnMuZ2V0SUQodG9rZW5bMF0sIENBUkRBTk9fQ0hBSU4pLFxuICAgICAgICAgICAgdG86IHRoaXMudG9rZW5zLmdldElEKHRva2VuWzBdLCB0b0NoYWluKSxcbiAgICAgICAgICAgIGFtb3VudDogYXNzZXQucXVhbnRpdHksXG4gICAgICAgICAgfTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyB0cnkgdG8gYnVpbGQgdHJhbnNmb3JtYXRpb24gdXNpbmcgbG9ja2VkIEFEQVxuICAgIGNvbnN0IGxvdmVsYWNlID0gdGhpcy50b2tlbnMuc2VhcmNoKENBUkRBTk9fQ0hBSU4sIHtcbiAgICAgIHRva2VuSWQ6IENBUkRBTk9fTkFUSVZFX1RPS0VOLFxuICAgIH0pO1xuICAgIGlmIChsb3ZlbGFjZS5sZW5ndGggPiAwICYmIE9iamVjdC5oYXNPd24obG92ZWxhY2VbMF0sIHRvQ2hhaW4pKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBmcm9tOiBDQVJEQU5PX05BVElWRV9UT0tFTixcbiAgICAgICAgdG86IHRoaXMudG9rZW5zLmdldElEKGxvdmVsYWNlWzBdLCB0b0NoYWluKSxcbiAgICAgICAgYW1vdW50OiBib3gudmFsdWUudG9TdHJpbmcoKSxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICBgTm8gcm9zZW4gYXNzZXQgdHJhbnNmb3JtYXRpb24gZm91bmQgZm9yIENhcmRhbm9Cb3hDYW5kaWRhdGUgd2l0aCBhc3NldHM6ICR7SnNvbkJpZ0ludC5zdHJpbmdpZnkoXG4gICAgICAgICAgYm94LmFzc2V0c1xuICAgICAgICApfWBcbiAgICAgICk7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ==
@@ -1,102 +0,0 @@
1
- import { components } from '@blockfrost/openapi';
2
- import { TransactionJSON } from '@emurgo/cardano-serialization-lib-nodejs';
3
- interface KoiosCborTx {
4
- tx_hash: string;
5
- block_hash: string;
6
- block_height: number;
7
- epoch_no: number;
8
- absolute_slot: number;
9
- tx_timestamp: number;
10
- cbor: string;
11
- }
12
- type KoiosTransaction = KoiosCborTx & TransactionJSON;
13
- interface CardanoRosenData {
14
- toChain: string;
15
- toAddress: string;
16
- bridgeFee: string;
17
- networkFee: string;
18
- fromAddress: string;
19
- }
20
- interface CardanoMetadataRosenData {
21
- to: string;
22
- networkFee: string;
23
- bridgeFee: string;
24
- toAddress: string;
25
- fromAddress: string[];
26
- }
27
- interface CardanoAsset {
28
- policyId: string;
29
- assetName: string;
30
- quantity: string;
31
- }
32
- interface CardanoTxInput {
33
- txId: string;
34
- index: number;
35
- }
36
- interface CardanoBoxCandidate {
37
- address: string;
38
- value: bigint;
39
- assets: Array<CardanoAsset>;
40
- }
41
- type CardanoMetadata = Record<string, string | Record<string, any>>;
42
- interface CardanoTx {
43
- id: string;
44
- inputs: CardanoTxInput[];
45
- outputs: CardanoBoxCandidate[];
46
- fee: bigint;
47
- metadata?: CardanoMetadata;
48
- }
49
- interface BlockFrostTransaction {
50
- utxos: components['schemas']['tx_content_utxo'];
51
- metadata: components['schemas']['tx_content_metadata'];
52
- }
53
- type BlockFrostOutputBox = components['schemas']['tx_content_utxo']['outputs'][0];
54
- type GraphQLBlockTxsQuery = {
55
- __typename?: 'Query';
56
- blocks: Array<{
57
- __typename?: 'Block';
58
- transactions: Array<{
59
- __typename?: 'Transaction';
60
- hash: any;
61
- fee: any;
62
- inputs: Array<{
63
- __typename?: 'TransactionInput';
64
- sourceTxIndex: number;
65
- sourceTxHash: any;
66
- value: any;
67
- tokens: Array<{
68
- __typename?: 'Token';
69
- quantity: string;
70
- asset: {
71
- __typename?: 'Asset';
72
- assetName?: any | null;
73
- policyId: any;
74
- };
75
- } | null>;
76
- }>;
77
- outputs: Array<{
78
- __typename?: 'TransactionOutput';
79
- address: string;
80
- value: any;
81
- tokens: Array<{
82
- __typename?: 'Token';
83
- quantity: string;
84
- asset: {
85
- __typename?: 'Asset';
86
- assetName?: any | null;
87
- policyId: any;
88
- };
89
- }>;
90
- } | null>;
91
- metadata?: Array<{
92
- __typename?: 'TransactionMetadata';
93
- key: string;
94
- value: any;
95
- } | null> | null;
96
- } | null>;
97
- } | null>;
98
- };
99
- type GraphQLTransaction = NonNullable<NonNullable<GraphQLBlockTxsQuery['blocks'][0]>['transactions'][0]>;
100
- type GraphQLTxOutput = NonNullable<GraphQLTransaction['outputs'][0]>;
101
- export { KoiosTransaction as KoiosCborTransaction, KoiosTransaction, CardanoRosenData, CardanoMetadataRosenData, CardanoMetadata, CardanoTx, CardanoTxInput, CardanoBoxCandidate, BlockFrostTransaction, BlockFrostOutputBox, GraphQLTransaction, GraphQLTxOutput, };
102
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/cardano/types.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2NhcmRhbm8vdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbXBvbmVudHMgfSBmcm9tICdAYmxvY2tmcm9zdC9vcGVuYXBpJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uSlNPTiB9IGZyb20gJ0BlbXVyZ28vY2FyZGFuby1zZXJpYWxpemF0aW9uLWxpYi1ub2RlanMnO1xuXG5pbnRlcmZhY2UgS29pb3NDYm9yVHgge1xuICB0eF9oYXNoOiBzdHJpbmc7XG4gIGJsb2NrX2hhc2g6IHN0cmluZztcbiAgYmxvY2tfaGVpZ2h0OiBudW1iZXI7XG4gIGVwb2NoX25vOiBudW1iZXI7XG4gIGFic29sdXRlX3Nsb3Q6IG51bWJlcjtcbiAgdHhfdGltZXN0YW1wOiBudW1iZXI7XG4gIGNib3I6IHN0cmluZztcbn1cblxudHlwZSBLb2lvc1RyYW5zYWN0aW9uID0gS29pb3NDYm9yVHggJiBUcmFuc2FjdGlvbkpTT047XG5cbmludGVyZmFjZSBDYXJkYW5vUm9zZW5EYXRhIHtcbiAgdG9DaGFpbjogc3RyaW5nO1xuICB0b0FkZHJlc3M6IHN0cmluZztcbiAgYnJpZGdlRmVlOiBzdHJpbmc7XG4gIG5ldHdvcmtGZWU6IHN0cmluZztcbiAgZnJvbUFkZHJlc3M6IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIENhcmRhbm9NZXRhZGF0YVJvc2VuRGF0YSB7XG4gIHRvOiBzdHJpbmc7XG4gIG5ldHdvcmtGZWU6IHN0cmluZztcbiAgYnJpZGdlRmVlOiBzdHJpbmc7XG4gIHRvQWRkcmVzczogc3RyaW5nO1xuICBmcm9tQWRkcmVzczogc3RyaW5nW107XG59XG5cbmludGVyZmFjZSBDYXJkYW5vQXNzZXQge1xuICBwb2xpY3lJZDogc3RyaW5nO1xuICBhc3NldE5hbWU6IHN0cmluZztcbiAgcXVhbnRpdHk6IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIENhcmRhbm9UeElucHV0IHtcbiAgdHhJZDogc3RyaW5nO1xuICBpbmRleDogbnVtYmVyO1xufVxuXG5pbnRlcmZhY2UgQ2FyZGFub0JveENhbmRpZGF0ZSB7XG4gIGFkZHJlc3M6IHN0cmluZztcbiAgdmFsdWU6IGJpZ2ludDtcbiAgYXNzZXRzOiBBcnJheTxDYXJkYW5vQXNzZXQ+O1xufVxuXG50eXBlIENhcmRhbm9NZXRhZGF0YSA9IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IFJlY29yZDxzdHJpbmcsIGFueT4+O1xuXG5pbnRlcmZhY2UgQ2FyZGFub1R4IHtcbiAgaWQ6IHN0cmluZztcbiAgaW5wdXRzOiBDYXJkYW5vVHhJbnB1dFtdO1xuICBvdXRwdXRzOiBDYXJkYW5vQm94Q2FuZGlkYXRlW107XG4gIGZlZTogYmlnaW50O1xuICBtZXRhZGF0YT86IENhcmRhbm9NZXRhZGF0YTtcbn1cblxuaW50ZXJmYWNlIEJsb2NrRnJvc3RUcmFuc2FjdGlvbiB7XG4gIHV0eG9zOiBjb21wb25lbnRzWydzY2hlbWFzJ11bJ3R4X2NvbnRlbnRfdXR4byddO1xuICBtZXRhZGF0YTogY29tcG9uZW50c1snc2NoZW1hcyddWyd0eF9jb250ZW50X21ldGFkYXRhJ107XG59XG5cbnR5cGUgQmxvY2tGcm9zdE91dHB1dEJveCA9XG4gIGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsndHhfY29udGVudF91dHhvJ11bJ291dHB1dHMnXVswXTtcblxudHlwZSBHcmFwaFFMQmxvY2tUeHNRdWVyeSA9IHtcbiAgX190eXBlbmFtZT86ICdRdWVyeSc7XG4gIGJsb2NrczogQXJyYXk8e1xuICAgIF9fdHlwZW5hbWU/OiAnQmxvY2snO1xuICAgIHRyYW5zYWN0aW9uczogQXJyYXk8e1xuICAgICAgX190eXBlbmFtZT86ICdUcmFuc2FjdGlvbic7XG4gICAgICBoYXNoOiBhbnk7XG4gICAgICBmZWU6IGFueTtcbiAgICAgIGlucHV0czogQXJyYXk8e1xuICAgICAgICBfX3R5cGVuYW1lPzogJ1RyYW5zYWN0aW9uSW5wdXQnO1xuICAgICAgICBzb3VyY2VUeEluZGV4OiBudW1iZXI7XG4gICAgICAgIHNvdXJjZVR4SGFzaDogYW55O1xuICAgICAgICB2YWx1ZTogYW55O1xuICAgICAgICB0b2tlbnM6IEFycmF5PHtcbiAgICAgICAgICBfX3R5cGVuYW1lPzogJ1Rva2VuJztcbiAgICAgICAgICBxdWFudGl0eTogc3RyaW5nO1xuICAgICAgICAgIGFzc2V0OiB7XG4gICAgICAgICAgICBfX3R5cGVuYW1lPzogJ0Fzc2V0JztcbiAgICAgICAgICAgIGFzc2V0TmFtZT86IGFueSB8IG51bGw7XG4gICAgICAgICAgICBwb2xpY3lJZDogYW55O1xuICAgICAgICAgIH07XG4gICAgICAgIH0gfCBudWxsPjtcbiAgICAgIH0+O1xuICAgICAgb3V0cHV0czogQXJyYXk8e1xuICAgICAgICBfX3R5cGVuYW1lPzogJ1RyYW5zYWN0aW9uT3V0cHV0JztcbiAgICAgICAgYWRkcmVzczogc3RyaW5nO1xuICAgICAgICB2YWx1ZTogYW55O1xuICAgICAgICB0b2tlbnM6IEFycmF5PHtcbiAgICAgICAgICBfX3R5cGVuYW1lPzogJ1Rva2VuJztcbiAgICAgICAgICBxdWFudGl0eTogc3RyaW5nO1xuICAgICAgICAgIGFzc2V0OiB7XG4gICAgICAgICAgICBfX3R5cGVuYW1lPzogJ0Fzc2V0JztcbiAgICAgICAgICAgIGFzc2V0TmFtZT86IGFueSB8IG51bGw7XG4gICAgICAgICAgICBwb2xpY3lJZDogYW55O1xuICAgICAgICAgIH07XG4gICAgICAgIH0+O1xuICAgICAgfSB8IG51bGw+O1xuICAgICAgbWV0YWRhdGE/OiBBcnJheTx7XG4gICAgICAgIF9fdHlwZW5hbWU/OiAnVHJhbnNhY3Rpb25NZXRhZGF0YSc7XG4gICAgICAgIGtleTogc3RyaW5nO1xuICAgICAgICB2YWx1ZTogYW55O1xuICAgICAgfSB8IG51bGw+IHwgbnVsbDtcbiAgICB9IHwgbnVsbD47XG4gIH0gfCBudWxsPjtcbn07XG50eXBlIEdyYXBoUUxUcmFuc2FjdGlvbiA9IE5vbk51bGxhYmxlPFxuICBOb25OdWxsYWJsZTxHcmFwaFFMQmxvY2tUeHNRdWVyeVsnYmxvY2tzJ11bMF0+Wyd0cmFuc2FjdGlvbnMnXVswXVxuPjtcbnR5cGUgR3JhcGhRTFR4T3V0cHV0ID0gTm9uTnVsbGFibGU8R3JhcGhRTFRyYW5zYWN0aW9uWydvdXRwdXRzJ11bMF0+O1xuXG5leHBvcnQge1xuICBLb2lvc1RyYW5zYWN0aW9uIGFzIEtvaW9zQ2JvclRyYW5zYWN0aW9uLFxuICBLb2lvc1RyYW5zYWN0aW9uLFxuICBDYXJkYW5vUm9zZW5EYXRhLFxuICBDYXJkYW5vTWV0YWRhdGFSb3NlbkRhdGEsXG4gIENhcmRhbm9NZXRhZGF0YSxcbiAgQ2FyZGFub1R4LFxuICBDYXJkYW5vVHhJbnB1dCxcbiAgQ2FyZGFub0JveENhbmRpZGF0ZSxcbiAgQmxvY2tGcm9zdFRyYW5zYWN0aW9uLFxuICBCbG9ja0Zyb3N0T3V0cHV0Qm94LFxuICBHcmFwaFFMVHJhbnNhY3Rpb24sXG4gIEdyYXBoUUxUeE91dHB1dCxcbn07XG4iXX0=