@rosen-bridge/rosen-extractor 8.0.1 → 9.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 (181) hide show
  1. package/dist/getRosenData/abstract/AbstractRosenDataExtractor.d.ts.map +1 -0
  2. package/dist/getRosenData/abstract/AbstractRosenDataExtractor.js +32 -0
  3. package/dist/getRosenData/abstract/types.d.ts.map +1 -0
  4. package/dist/getRosenData/abstract/types.js +2 -0
  5. package/dist/getRosenData/bitcoin/BitcoinEsploraRosenExtractor.d.ts.map +1 -0
  6. package/dist/getRosenData/bitcoin/BitcoinEsploraRosenExtractor.js +105 -0
  7. package/dist/getRosenData/bitcoin/BitcoinRosenExtractor.d.ts.map +1 -0
  8. package/dist/getRosenData/bitcoin/BitcoinRosenExtractor.js +113 -0
  9. package/dist/getRosenData/bitcoin/BitcoinRpcRosenExtractor.d.ts.map +1 -0
  10. package/dist/getRosenData/bitcoin/BitcoinRpcRosenExtractor.js +106 -0
  11. package/dist/{lib/getRosenData/doge → getRosenData/bitcoin}/types.d.ts.map +1 -1
  12. package/dist/getRosenData/bitcoin/types.js +2 -0
  13. package/dist/getRosenData/bitcoin/utils.d.ts.map +1 -0
  14. package/dist/getRosenData/bitcoin/utils.js +17 -0
  15. package/dist/{lib/getRosenData/runes/RunesEsploraRosenExtractor.d.ts → getRosenData/bitcoin-runes/BitcoinRunesEsploraRosenExtractor.d.ts} +2 -2
  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} +2 -2
  19. package/dist/getRosenData/bitcoin-runes/BitcoinRunesRosenExtractor.d.ts.map +1 -0
  20. package/dist/getRosenData/bitcoin-runes/BitcoinRunesRosenExtractor.js +121 -0
  21. package/dist/{lib/getRosenData/runes/RunesRpcRosenExtractor.d.ts → getRosenData/bitcoin-runes/BitcoinRunesRpcRosenExtractor.d.ts} +2 -2
  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.map +1 -0
  27. package/dist/getRosenData/bitcoin-runes/types.js +2 -0
  28. package/dist/getRosenData/bitcoin-runes/utils.d.ts.map +1 -0
  29. package/dist/getRosenData/bitcoin-runes/utils.js +9 -0
  30. package/dist/getRosenData/cardano/CardanoBlockFrostRosenExtractor.d.ts.map +1 -0
  31. package/dist/getRosenData/cardano/CardanoBlockFrostRosenExtractor.js +94 -0
  32. package/dist/getRosenData/cardano/CardanoGraphQLRosenExtractor.d.ts.map +1 -0
  33. package/dist/getRosenData/cardano/CardanoGraphQLRosenExtractor.js +92 -0
  34. package/dist/getRosenData/cardano/CardanoKoiosRosenExtractor.d.ts.map +1 -0
  35. package/dist/getRosenData/cardano/CardanoKoiosRosenExtractor.js +95 -0
  36. package/dist/getRosenData/cardano/CardanoOgmiosRosenExtractor.d.ts.map +1 -0
  37. package/dist/getRosenData/cardano/CardanoOgmiosRosenExtractor.js +97 -0
  38. package/dist/getRosenData/cardano/CardanoRosenExtractor.d.ts.map +1 -0
  39. package/dist/getRosenData/cardano/CardanoRosenExtractor.js +88 -0
  40. package/dist/getRosenData/cardano/types.d.ts.map +1 -0
  41. package/dist/getRosenData/cardano/types.js +2 -0
  42. package/dist/getRosenData/cardano/utils.d.ts.map +1 -0
  43. package/dist/getRosenData/cardano/utils.js +32 -0
  44. package/dist/{lib/getRosenData → getRosenData}/const.d.ts +1 -1
  45. package/dist/getRosenData/const.d.ts.map +1 -0
  46. package/dist/getRosenData/const.js +21 -0
  47. package/dist/getRosenData/doge/DogeEsploraRosenExtractor.d.ts.map +1 -0
  48. package/dist/getRosenData/doge/DogeEsploraRosenExtractor.js +104 -0
  49. package/dist/getRosenData/doge/DogeRosenExtractor.d.ts.map +1 -0
  50. package/dist/getRosenData/doge/DogeRosenExtractor.js +112 -0
  51. package/dist/getRosenData/doge/DogeRpcRosenExtractor.d.ts.map +1 -0
  52. package/dist/getRosenData/doge/DogeRpcRosenExtractor.js +105 -0
  53. package/dist/getRosenData/doge/types.d.ts.map +1 -0
  54. package/dist/getRosenData/doge/types.js +2 -0
  55. package/dist/getRosenData/doge/utils.d.ts.map +1 -0
  56. package/dist/getRosenData/doge/utils.js +58 -0
  57. package/dist/getRosenData/ergo/ErgoNodeRosenExtractor.d.ts.map +1 -0
  58. package/dist/getRosenData/ergo/ErgoNodeRosenExtractor.js +105 -0
  59. package/dist/getRosenData/ergo/ErgoRosenExtractor.d.ts.map +1 -0
  60. package/dist/getRosenData/ergo/ErgoRosenExtractor.js +33 -0
  61. package/dist/getRosenData/ergo/types.d.ts.map +1 -0
  62. package/dist/getRosenData/ergo/types.js +2 -0
  63. package/dist/getRosenData/evm/EvmEthersRosenExtractor.d.ts.map +1 -0
  64. package/dist/getRosenData/evm/EvmEthersRosenExtractor.js +54 -0
  65. package/dist/getRosenData/evm/EvmRosenExtractor.d.ts.map +1 -0
  66. package/dist/getRosenData/evm/EvmRosenExtractor.js +31 -0
  67. package/dist/getRosenData/evm/EvmRpcRosenExtractor.d.ts.map +1 -0
  68. package/dist/getRosenData/evm/EvmRpcRosenExtractor.js +123 -0
  69. package/dist/getRosenData/evm/utils.d.ts.map +1 -0
  70. package/dist/getRosenData/evm/utils.js +9 -0
  71. package/dist/{lib/index.d.ts → index.d.ts} +3 -3
  72. package/dist/index.d.ts.map +1 -0
  73. package/dist/index.js +25 -0
  74. package/dist/types.d.ts.map +1 -0
  75. package/dist/types.js +2 -0
  76. package/dist/utils.d.ts.map +1 -0
  77. package/dist/utils.js +31 -0
  78. package/package.json +11 -16
  79. package/dist/lib/getRosenData/abstract/AbstractRosenDataExtractor.d.ts.map +0 -1
  80. package/dist/lib/getRosenData/abstract/AbstractRosenDataExtractor.js +0 -32
  81. package/dist/lib/getRosenData/abstract/types.d.ts.map +0 -1
  82. package/dist/lib/getRosenData/abstract/types.js +0 -2
  83. package/dist/lib/getRosenData/bitcoin/BitcoinEsploraRosenExtractor.d.ts.map +0 -1
  84. package/dist/lib/getRosenData/bitcoin/BitcoinEsploraRosenExtractor.js +0 -105
  85. package/dist/lib/getRosenData/bitcoin/BitcoinRosenExtractor.d.ts.map +0 -1
  86. package/dist/lib/getRosenData/bitcoin/BitcoinRosenExtractor.js +0 -113
  87. package/dist/lib/getRosenData/bitcoin/BitcoinRpcRosenExtractor.d.ts.map +0 -1
  88. package/dist/lib/getRosenData/bitcoin/BitcoinRpcRosenExtractor.js +0 -106
  89. package/dist/lib/getRosenData/bitcoin/types.d.ts.map +0 -1
  90. package/dist/lib/getRosenData/bitcoin/types.js +0 -2
  91. package/dist/lib/getRosenData/bitcoin/utils.d.ts.map +0 -1
  92. package/dist/lib/getRosenData/bitcoin/utils.js +0 -17
  93. package/dist/lib/getRosenData/cardano/CardanoBlockFrostRosenExtractor.d.ts.map +0 -1
  94. package/dist/lib/getRosenData/cardano/CardanoBlockFrostRosenExtractor.js +0 -94
  95. package/dist/lib/getRosenData/cardano/CardanoGraphQLRosenExtractor.d.ts.map +0 -1
  96. package/dist/lib/getRosenData/cardano/CardanoGraphQLRosenExtractor.js +0 -92
  97. package/dist/lib/getRosenData/cardano/CardanoKoiosRosenExtractor.d.ts.map +0 -1
  98. package/dist/lib/getRosenData/cardano/CardanoKoiosRosenExtractor.js +0 -95
  99. package/dist/lib/getRosenData/cardano/CardanoOgmiosRosenExtractor.d.ts.map +0 -1
  100. package/dist/lib/getRosenData/cardano/CardanoOgmiosRosenExtractor.js +0 -97
  101. package/dist/lib/getRosenData/cardano/CardanoRosenExtractor.d.ts.map +0 -1
  102. package/dist/lib/getRosenData/cardano/CardanoRosenExtractor.js +0 -88
  103. package/dist/lib/getRosenData/cardano/types.d.ts.map +0 -1
  104. package/dist/lib/getRosenData/cardano/types.js +0 -2
  105. package/dist/lib/getRosenData/cardano/utils.d.ts.map +0 -1
  106. package/dist/lib/getRosenData/cardano/utils.js +0 -32
  107. package/dist/lib/getRosenData/const.d.ts.map +0 -1
  108. package/dist/lib/getRosenData/const.js +0 -21
  109. package/dist/lib/getRosenData/doge/DogeEsploraRosenExtractor.d.ts.map +0 -1
  110. package/dist/lib/getRosenData/doge/DogeEsploraRosenExtractor.js +0 -104
  111. package/dist/lib/getRosenData/doge/DogeRosenExtractor.d.ts.map +0 -1
  112. package/dist/lib/getRosenData/doge/DogeRosenExtractor.js +0 -112
  113. package/dist/lib/getRosenData/doge/DogeRpcRosenExtractor.d.ts.map +0 -1
  114. package/dist/lib/getRosenData/doge/DogeRpcRosenExtractor.js +0 -105
  115. package/dist/lib/getRosenData/doge/types.js +0 -2
  116. package/dist/lib/getRosenData/doge/utils.d.ts.map +0 -1
  117. package/dist/lib/getRosenData/doge/utils.js +0 -58
  118. package/dist/lib/getRosenData/ergo/ErgoNodeRosenExtractor.d.ts.map +0 -1
  119. package/dist/lib/getRosenData/ergo/ErgoNodeRosenExtractor.js +0 -105
  120. package/dist/lib/getRosenData/ergo/ErgoRosenExtractor.d.ts.map +0 -1
  121. package/dist/lib/getRosenData/ergo/ErgoRosenExtractor.js +0 -33
  122. package/dist/lib/getRosenData/ergo/types.d.ts.map +0 -1
  123. package/dist/lib/getRosenData/ergo/types.js +0 -2
  124. package/dist/lib/getRosenData/evm/EvmEthersRosenExtractor.d.ts.map +0 -1
  125. package/dist/lib/getRosenData/evm/EvmEthersRosenExtractor.js +0 -54
  126. package/dist/lib/getRosenData/evm/EvmRosenExtractor.d.ts.map +0 -1
  127. package/dist/lib/getRosenData/evm/EvmRosenExtractor.js +0 -31
  128. package/dist/lib/getRosenData/evm/EvmRpcRosenExtractor.d.ts.map +0 -1
  129. package/dist/lib/getRosenData/evm/EvmRpcRosenExtractor.js +0 -123
  130. package/dist/lib/getRosenData/evm/utils.d.ts.map +0 -1
  131. package/dist/lib/getRosenData/evm/utils.js +0 -9
  132. package/dist/lib/getRosenData/runes/RunesEsploraRosenExtractor.d.ts.map +0 -1
  133. package/dist/lib/getRosenData/runes/RunesEsploraRosenExtractor.js +0 -113
  134. package/dist/lib/getRosenData/runes/RunesRosenExtractor.d.ts.map +0 -1
  135. package/dist/lib/getRosenData/runes/RunesRosenExtractor.js +0 -120
  136. package/dist/lib/getRosenData/runes/RunesRpcRosenExtractor.d.ts.map +0 -1
  137. package/dist/lib/getRosenData/runes/RunesRpcRosenExtractor.js +0 -113
  138. package/dist/lib/getRosenData/runes/constants.d.ts.map +0 -1
  139. package/dist/lib/getRosenData/runes/constants.js +0 -2
  140. package/dist/lib/getRosenData/runes/types.d.ts.map +0 -1
  141. package/dist/lib/getRosenData/runes/types.js +0 -2
  142. package/dist/lib/getRosenData/runes/utils.d.ts.map +0 -1
  143. package/dist/lib/getRosenData/runes/utils.js +0 -9
  144. package/dist/lib/index.d.ts.map +0 -1
  145. package/dist/lib/index.js +0 -25
  146. package/dist/lib/types.d.ts.map +0 -1
  147. package/dist/lib/types.js +0 -2
  148. package/dist/lib/utils.d.ts.map +0 -1
  149. package/dist/lib/utils.js +0 -31
  150. package/dist/tsconfig.tsbuildinfo +0 -1
  151. /package/dist/{lib/getRosenData → getRosenData}/abstract/AbstractRosenDataExtractor.d.ts +0 -0
  152. /package/dist/{lib/getRosenData → getRosenData}/abstract/types.d.ts +0 -0
  153. /package/dist/{lib/getRosenData → getRosenData}/bitcoin/BitcoinEsploraRosenExtractor.d.ts +0 -0
  154. /package/dist/{lib/getRosenData → getRosenData}/bitcoin/BitcoinRosenExtractor.d.ts +0 -0
  155. /package/dist/{lib/getRosenData → getRosenData}/bitcoin/BitcoinRpcRosenExtractor.d.ts +0 -0
  156. /package/dist/{lib/getRosenData → getRosenData}/bitcoin/types.d.ts +0 -0
  157. /package/dist/{lib/getRosenData → getRosenData}/bitcoin/utils.d.ts +0 -0
  158. /package/dist/{lib/getRosenData/runes → getRosenData/bitcoin-runes}/constants.d.ts +0 -0
  159. /package/dist/{lib/getRosenData/runes → getRosenData/bitcoin-runes}/types.d.ts +0 -0
  160. /package/dist/{lib/getRosenData/runes → getRosenData/bitcoin-runes}/utils.d.ts +0 -0
  161. /package/dist/{lib/getRosenData → getRosenData}/cardano/CardanoBlockFrostRosenExtractor.d.ts +0 -0
  162. /package/dist/{lib/getRosenData → getRosenData}/cardano/CardanoGraphQLRosenExtractor.d.ts +0 -0
  163. /package/dist/{lib/getRosenData → getRosenData}/cardano/CardanoKoiosRosenExtractor.d.ts +0 -0
  164. /package/dist/{lib/getRosenData → getRosenData}/cardano/CardanoOgmiosRosenExtractor.d.ts +0 -0
  165. /package/dist/{lib/getRosenData → getRosenData}/cardano/CardanoRosenExtractor.d.ts +0 -0
  166. /package/dist/{lib/getRosenData → getRosenData}/cardano/types.d.ts +0 -0
  167. /package/dist/{lib/getRosenData → getRosenData}/cardano/utils.d.ts +0 -0
  168. /package/dist/{lib/getRosenData → getRosenData}/doge/DogeEsploraRosenExtractor.d.ts +0 -0
  169. /package/dist/{lib/getRosenData → getRosenData}/doge/DogeRosenExtractor.d.ts +0 -0
  170. /package/dist/{lib/getRosenData → getRosenData}/doge/DogeRpcRosenExtractor.d.ts +0 -0
  171. /package/dist/{lib/getRosenData → getRosenData}/doge/types.d.ts +0 -0
  172. /package/dist/{lib/getRosenData → getRosenData}/doge/utils.d.ts +0 -0
  173. /package/dist/{lib/getRosenData → getRosenData}/ergo/ErgoNodeRosenExtractor.d.ts +0 -0
  174. /package/dist/{lib/getRosenData → getRosenData}/ergo/ErgoRosenExtractor.d.ts +0 -0
  175. /package/dist/{lib/getRosenData → getRosenData}/ergo/types.d.ts +0 -0
  176. /package/dist/{lib/getRosenData → getRosenData}/evm/EvmEthersRosenExtractor.d.ts +0 -0
  177. /package/dist/{lib/getRosenData → getRosenData}/evm/EvmRosenExtractor.d.ts +0 -0
  178. /package/dist/{lib/getRosenData → getRosenData}/evm/EvmRpcRosenExtractor.d.ts +0 -0
  179. /package/dist/{lib/getRosenData → getRosenData}/evm/utils.d.ts +0 -0
  180. /package/dist/{lib/types.d.ts → types.d.ts} +0 -0
  181. /package/dist/{lib/utils.d.ts → utils.d.ts} +0 -0
@@ -1,113 +0,0 @@
1
- import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
2
- import { RUNES_CHAIN } from '../const';
3
- import { address } from 'bitcoinjs-lib';
4
- import { parseAggregatedData } from './utils';
5
- import JsonBigInt from '@rosen-bridge/json-bigint';
6
- import { minUtxoValue } from './constants';
7
- export class RunesRpcRosenExtractor extends AbstractRosenDataExtractor {
8
- chain = RUNES_CHAIN;
9
- lockScriptPubKey;
10
- constructor(lockAddress, tokens, logger) {
11
- super(lockAddress, tokens, logger);
12
- this.lockScriptPubKey = address.toOutputScript(lockAddress).toString('hex');
13
- }
14
- /**
15
- * extracts RosenData from given lock transaction in Rpc format
16
- * @param transaction the lock transaction in Rpc format
17
- */
18
- extractRawData = (transaction) => {
19
- const baseError = `No rosen data is found for tx [${transaction.txid}]`;
20
- try {
21
- // validate number of output boxes
22
- const outputs = transaction.vout;
23
- if (outputs.length < 5) {
24
- this.logger.debug(baseError + `: Insufficient number of boxes`);
25
- return undefined;
26
- }
27
- // validate lock conditions
28
- const validLock = this.validateLock(outputs);
29
- if (!validLock) {
30
- this.logger.debug(baseError + `: Failed to find rosen lock utxo`);
31
- return undefined;
32
- }
33
- // validate data conditions
34
- const lockDataChunks = this.getLockDataChunks(outputs);
35
- const lockData = this.lockDataFromChunks(lockDataChunks);
36
- if (!lockData) {
37
- this.logger.debug(baseError + `: Failed to extract rosen data from utxos`);
38
- return undefined;
39
- }
40
- const fromAddress = `box:${transaction.vin[0].txid}.${transaction.vin[0].vout}`;
41
- return {
42
- toChain: lockData.toChain,
43
- toAddress: lockData.toAddress,
44
- bridgeFee: lockData.bridgeFee,
45
- networkFee: lockData.networkFee,
46
- fromAddress: fromAddress,
47
- sourceChainTokenId: '',
48
- amount: '',
49
- targetChainTokenId: '',
50
- sourceTxId: transaction.txid,
51
- };
52
- }
53
- catch (e) {
54
- this.logger.debug(`An error occurred while getting Runes rosen data from Rpc: ${e}`);
55
- if (e instanceof Error && e.stack) {
56
- this.logger.debug(e.stack);
57
- }
58
- }
59
- return undefined;
60
- };
61
- /**
62
- * extracts RosenData chunks from tx outputs
63
- * @param outputs
64
- * @return array of LockDataChunk
65
- */
66
- getLockDataChunks = (outputs) => {
67
- const lockDataChunks = [];
68
- for (let i = 0; i < 4; i++) {
69
- for (let boxIndex = 0; boxIndex < outputs.length; boxIndex++) {
70
- const output = outputs[boxIndex];
71
- if (output.value * 10 ** 8 !== minUtxoValue + i)
72
- continue; // wrong data index
73
- if (output.scriptPubKey.hex.slice(0, 4) !== '0014')
74
- continue; // not a native-segwit utxo
75
- lockDataChunks.push({
76
- index: i,
77
- data: output.scriptPubKey.hex.slice(4),
78
- });
79
- break;
80
- }
81
- }
82
- return lockDataChunks;
83
- };
84
- /**
85
- * combines lock data chunks into lock data object
86
- * @param lockDataChunks
87
- * @return lock data object or undefined
88
- */
89
- lockDataFromChunks = (lockDataChunks) => {
90
- let lockData;
91
- try {
92
- lockData = parseAggregatedData(lockDataChunks.map((chunk) => chunk.data).join(''));
93
- }
94
- catch (e) {
95
- this.logger.debug(`Failed to extract data from chunks [${JsonBigInt.stringify(lockDataChunks)}]: ${e}`);
96
- }
97
- return lockData;
98
- };
99
- /**
100
- * check lock box exists in the tx outputs
101
- * @param outputs
102
- * @return boolean
103
- */
104
- validateLock = (outputs) => {
105
- for (let i = 0; i < outputs.length; i++) {
106
- if (outputs[i].scriptPubKey.hex === this.lockScriptPubKey) {
107
- return true;
108
- }
109
- }
110
- return false;
111
- };
112
- }
113
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUnVuZXNScGNSb3NlbkV4dHJhY3Rvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9nZXRSb3NlbkRhdGEvcnVuZXMvUnVuZXNScGNSb3NlbkV4dHJhY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLDBCQUEwQixNQUFNLHdDQUF3QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFJdkMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDOUMsT0FBTyxVQUFVLE1BQU0sMkJBQTJCLENBQUM7QUFHbkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUUzQyxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsMEJBQWlEO0lBQ2xGLEtBQUssR0FBRyxXQUFXLENBQUM7SUFDbkIsZ0JBQWdCLENBQVM7SUFFbkMsWUFBWSxXQUFtQixFQUFFLE1BQWdCLEVBQUUsTUFBdUI7UUFDeEUsS0FBSyxDQUFDLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFRDs7O09BR0c7SUFDSCxjQUFjLEdBQUcsQ0FDZixXQUFrQyxFQUNYLEVBQUU7UUFDekIsTUFBTSxTQUFTLEdBQUcsa0NBQWtDLFdBQVcsQ0FBQyxJQUFJLEdBQUcsQ0FBQztRQUN4RSxJQUFJO1lBQ0Ysa0NBQWtDO1lBQ2xDLE1BQU0sT0FBTyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUM7WUFDakMsSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDdEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFL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Rjs7OztPQUlHO0lBQ08sa0JBQWtCLEdBQUcsQ0FDN0IsY0FBK0IsRUFDTSxFQUFFO1FBQ3ZDLElBQUksUUFBNkMsQ0FBQztRQUVsRCxJQUFJO1lBQ0YsUUFBUSxHQUFHLG1CQUFtQixDQUM1QixjQUFjLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUNuRCxDQUFDO1NBQ0g7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUNmLHVDQUF1QyxVQUFVLENBQUMsU0FBUyxDQUN6RCxjQUFjLENBQ2YsTUFBTSxDQUFDLEVBQUUsQ0FDWCxDQUFDO1NBQ0g7UUFFRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDLENBQUM7SUFFRjs7OztPQUlHO0lBQ08sWUFBWSxHQUFHLENBQUMsT0FBNkIsRUFBVyxFQUFFO1FBQ2xFLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3ZDLElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxHQUFHLEtBQUssSUFBSSxDQUFDLGdCQUFnQixFQUFFO2dCQUN6RCxPQUFPLElBQUksQ0FBQzthQUNiO1NBQ0Y7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUMsQ0FBQztDQUNIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm9zZW5EYXRhIH0gZnJvbSAnLi4vYWJzdHJhY3QvdHlwZXMnO1xuaW1wb3J0IEFic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yIGZyb20gJy4uL2Fic3RyYWN0L0Fic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yJztcbmltcG9ydCB7IFJVTkVTX0NIQUlOIH0gZnJvbSAnLi4vY29uc3QnO1xuaW1wb3J0IHsgQml0Y29pblJwY1RyYW5zYWN0aW9uLCBCaXRjb2luUnBjVHhPdXRwdXQgfSBmcm9tICcuLi9iaXRjb2luL3R5cGVzJztcbmltcG9ydCB7IFRva2VuTWFwIH0gZnJvbSAnQHJvc2VuLWJyaWRnZS90b2tlbnMnO1xuaW1wb3J0IHsgQWJzdHJhY3RMb2dnZXIgfSBmcm9tICdAcm9zZW4tYnJpZGdlL2Fic3RyYWN0LWxvZ2dlcic7XG5pbXBvcnQgeyBhZGRyZXNzIH0gZnJvbSAnYml0Y29pbmpzLWxpYic7XG5pbXBvcnQgeyBwYXJzZUFnZ3JlZ2F0ZWREYXRhIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgSnNvbkJpZ0ludCBmcm9tICdAcm9zZW4tYnJpZGdlL2pzb24tYmlnaW50JztcbmltcG9ydCB7IExvY2tEYXRhQ2h1bmsgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IE1pbmltYWxPbkNoYWluUm9zZW5EYXRhIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgbWluVXR4b1ZhbHVlIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5leHBvcnQgY2xhc3MgUnVuZXNScGNSb3NlbkV4dHJhY3RvciBleHRlbmRzIEFic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yPEJpdGNvaW5ScGNUcmFuc2FjdGlvbj4ge1xuICByZWFkb25seSBjaGFpbiA9IFJVTkVTX0NIQUlOO1xuICBwcm90ZWN0ZWQgbG9ja1NjcmlwdFB1YktleTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKGxvY2tBZGRyZXNzOiBzdHJpbmcsIHRva2VuczogVG9rZW5NYXAsIGxvZ2dlcj86IEFic3RyYWN0TG9nZ2VyKSB7XG4gICAgc3VwZXIobG9ja0FkZHJlc3MsIHRva2VucywgbG9nZ2VyKTtcbiAgICB0aGlzLmxvY2tTY3JpcHRQdWJLZXkgPSBhZGRyZXNzLnRvT3V0cHV0U2NyaXB0KGxvY2tBZGRyZXNzKS50b1N0cmluZygnaGV4Jyk7XG4gIH1cblxuICAvKipcbiAgICogZXh0cmFjdHMgUm9zZW5EYXRhIGZyb20gZ2l2ZW4gbG9jayB0cmFuc2FjdGlvbiBpbiBScGMgZm9ybWF0XG4gICAqIEBwYXJhbSB0cmFuc2FjdGlvbiB0aGUgbG9jayB0cmFuc2FjdGlvbiBpbiBScGMgZm9ybWF0XG4gICAqL1xuICBleHRyYWN0UmF3RGF0YSA9IChcbiAgICB0cmFuc2FjdGlvbjogQml0Y29pblJwY1RyYW5zYWN0aW9uXG4gICk6IFJvc2VuRGF0YSB8IHVuZGVmaW5lZCA9PiB7XG4gICAgY29uc3QgYmFzZUVycm9yID0gYE5vIHJvc2VuIGRhdGEgaXMgZm91bmQgZm9yIHR4IFske3RyYW5zYWN0aW9uLnR4aWR9XWA7XG4gICAgdHJ5IHtcbiAgICAgIC8vIHZhbGlkYXRlIG51bWJlciBvZiBvdXRwdXQgYm94ZXNcbiAgICAgIGNvbnN0IG91dHB1dHMgPSB0cmFuc2FjdGlvbi52b3V0O1xuICAgICAgaWYgKG91dHB1dHMubGVuZ3RoIDwgNSkge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhiYXNlRXJyb3IgKyBgOiBJbnN1ZmZpY2llbnQgbnVtYmVyIG9mIGJveGVzYCk7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIC8vIHZhbGlkYXRlIGxvY2sgY29uZGl0aW9uc1xuICAgICAgY29uc3QgdmFsaWRMb2NrID0gdGhpcy52YWxpZGF0ZUxvY2sob3V0cHV0cyk7XG5cbiAgICAgIGlmICghdmFsaWRMb2NrKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKGJhc2VFcnJvciArIGA6IEZhaWxlZCB0byBmaW5kIHJvc2VuIGxvY2sgdXR4b2ApO1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuXG4gICAgICAvLyB2YWxpZGF0ZSBkYXRhIGNvbmRpdGlvbnNcbiAgICAgIGNvbnN0IGxvY2tEYXRhQ2h1bmtzID0gdGhpcy5nZXRMb2NrRGF0YUNodW5rcyhvdXRwdXRzKTtcbiAgICAgIGNvbnN0IGxvY2tEYXRhID0gdGhpcy5sb2NrRGF0YUZyb21DaHVua3MobG9ja0RhdGFDaHVua3MpO1xuXG4gICAgICBpZiAoIWxvY2tEYXRhKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICAgIGJhc2VFcnJvciArIGA6IEZhaWxlZCB0byBleHRyYWN0IHJvc2VuIGRhdGEgZnJvbSB1dHhvc2BcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgZnJvbUFkZHJlc3MgPSBgYm94OiR7dHJhbnNhY3Rpb24udmluWzBdLnR4aWR9LiR7dHJhbnNhY3Rpb24udmluWzBdLnZvdXR9YDtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHRvQ2hhaW46IGxvY2tEYXRhLnRvQ2hhaW4sXG4gICAgICAgIHRvQWRkcmVzczogbG9ja0RhdGEudG9BZGRyZXNzLFxuICAgICAgICBicmlkZ2VGZWU6IGxvY2tEYXRhLmJyaWRnZUZlZSxcbiAgICAgICAgbmV0d29ya0ZlZTogbG9ja0RhdGEubmV0d29ya0ZlZSxcbiAgICAgICAgZnJvbUFkZHJlc3M6IGZyb21BZGRyZXNzLFxuICAgICAgICBzb3VyY2VDaGFpblRva2VuSWQ6ICcnLFxuICAgICAgICBhbW91bnQ6ICcnLFxuICAgICAgICB0YXJnZXRDaGFpblRva2VuSWQ6ICcnLFxuICAgICAgICBzb3VyY2VUeElkOiB0cmFuc2FjdGlvbi50eGlkLFxuICAgICAgfTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgYEFuIGVycm9yIG9jY3VycmVkIHdoaWxlIGdldHRpbmcgUnVuZXMgcm9zZW4gZGF0YSBmcm9tIFJwYzogJHtlfWBcbiAgICAgICk7XG4gICAgICBpZiAoZSBpbnN0YW5jZW9mIEVycm9yICYmIGUuc3RhY2spIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoZS5zdGFjayk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH07XG5cbiAgLyoqXG4gICAqIGV4dHJhY3RzIFJvc2VuRGF0YSBjaHVua3MgZnJvbSB0eCBvdXRwdXRzXG4gICAqIEBwYXJhbSBvdXRwdXRzXG4gICAqIEByZXR1cm4gYXJyYXkgb2YgTG9ja0RhdGFDaHVua1xuICAgKi9cbiAgcHJvdGVjdGVkIGdldExvY2tEYXRhQ2h1bmtzID0gKFxuICAgIG91dHB1dHM6IEJpdGNvaW5ScGNUeE91dHB1dFtdXG4gICk6IExvY2tEYXRhQ2h1bmtbXSA9PiB7XG4gICAgY29uc3QgbG9ja0RhdGFDaHVua3M6IExvY2tEYXRhQ2h1bmtbXSA9IFtdO1xuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCA0OyBpKyspIHtcbiAgICAgIGZvciAobGV0IGJveEluZGV4ID0gMDsgYm94SW5kZXggPCBvdXRwdXRzLmxlbmd0aDsgYm94SW5kZXgrKykge1xuICAgICAgICBjb25zdCBvdXRwdXQgPSBvdXRwdXRzW2JveEluZGV4XTtcblxuICAgICAgICBpZiAob3V0cHV0LnZhbHVlICogMTAgKiogOCAhPT0gbWluVXR4b1ZhbHVlICsgaSkgY29udGludWU7IC8vIHdyb25nIGRhdGEgaW5kZXhcbiAgICAgICAgaWYgKG91dHB1dC5zY3JpcHRQdWJLZXkuaGV4LnNsaWNlKDAsIDQpICE9PSAnMDAxNCcpIGNvbnRpbnVlOyAvLyBub3QgYSBuYXRpdmUtc2Vnd2l0IHV0eG9cblxuICAgICAgICBsb2NrRGF0YUNodW5rcy5wdXNoKHtcbiAgICAgICAgICBpbmRleDogaSxcbiAgICAgICAgICBkYXRhOiBvdXRwdXQuc2NyaXB0UHViS2V5LmhleC5zbGljZSg0KSxcbiAgICAgICAgfSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBsb2NrRGF0YUNodW5rcztcbiAgfTtcblxuICAvKipcbiAgICogY29tYmluZXMgbG9jayBkYXRhIGNodW5rcyBpbnRvIGxvY2sgZGF0YSBvYmplY3RcbiAgICogQHBhcmFtIGxvY2tEYXRhQ2h1bmtzXG4gICAqIEByZXR1cm4gbG9jayBkYXRhIG9iamVjdCBvciB1bmRlZmluZWRcbiAgICovXG4gIHByb3RlY3RlZCBsb2NrRGF0YUZyb21DaHVua3MgPSAoXG4gICAgbG9ja0RhdGFDaHVua3M6IExvY2tEYXRhQ2h1bmtbXVxuICApOiBNaW5pbWFsT25DaGFpblJvc2VuRGF0YSB8IHVuZGVmaW5lZCA9PiB7XG4gICAgbGV0IGxvY2tEYXRhOiBNaW5pbWFsT25DaGFpblJvc2VuRGF0YSB8IHVuZGVmaW5lZDtcblxuICAgIHRyeSB7XG4gICAgICBsb2NrRGF0YSA9IHBhcnNlQWdncmVnYXRlZERhdGEoXG4gICAgICAgIGxvY2tEYXRhQ2h1bmtzLm1hcCgoY2h1bmspID0+IGNodW5rLmRhdGEpLmpvaW4oJycpXG4gICAgICApO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICBgRmFpbGVkIHRvIGV4dHJhY3QgZGF0YSBmcm9tIGNodW5rcyBbJHtKc29uQmlnSW50LnN0cmluZ2lmeShcbiAgICAgICAgICBsb2NrRGF0YUNodW5rc1xuICAgICAgICApfV06ICR7ZX1gXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBsb2NrRGF0YTtcbiAgfTtcblxuICAvKipcbiAgICogY2hlY2sgbG9jayBib3ggZXhpc3RzIGluIHRoZSB0eCBvdXRwdXRzXG4gICAqIEBwYXJhbSBvdXRwdXRzXG4gICAqIEByZXR1cm4gYm9vbGVhblxuICAgKi9cbiAgcHJvdGVjdGVkIHZhbGlkYXRlTG9jayA9IChvdXRwdXRzOiBCaXRjb2luUnBjVHhPdXRwdXRbXSk6IGJvb2xlYW4gPT4ge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb3V0cHV0cy5sZW5ndGg7IGkrKykge1xuICAgICAgaWYgKG91dHB1dHNbaV0uc2NyaXB0UHViS2V5LmhleCA9PT0gdGhpcy5sb2NrU2NyaXB0UHViS2V5KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH07XG59XG4iXX0=
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/runes/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,MAAM,CAAC"}
@@ -1,2 +0,0 @@
1
- export const minUtxoValue = 294;
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGliL2dldFJvc2VuRGF0YS9ydW5lcy9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBtaW5VdHhvVmFsdWUgPSAyOTQ7XG4iXX0=
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/runes/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL3J1bmVzL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBMb2NrRGF0YUNodW5rID0geyBpbmRleDogbnVtYmVyOyBkYXRhOiBzdHJpbmcgfTtcbiJdfQ==
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/runes/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAEtD;;;GAGG;AACH,eAAO,MAAM,mBAAmB,oBACb,MAAM,KACtB,uBAEF,CAAC"}
@@ -1,9 +0,0 @@
1
- import { parseRosenData } from '../../utils';
2
- /**
3
- * extracts rosen data from raw hex data
4
- * @param scriptPubKeyHex
5
- */
6
- export const parseAggregatedData = (scriptPubKeyHex) => {
7
- return parseRosenData(scriptPubKeyHex);
8
- };
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL3J1bmVzL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFHN0M7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FDakMsZUFBdUIsRUFDRSxFQUFFO0lBQzNCLE9BQU8sY0FBYyxDQUFDLGVBQWUsQ0FBQyxDQUFDO0FBQ3pDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBhcnNlUm9zZW5EYXRhIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgTWluaW1hbE9uQ2hhaW5Sb3NlbkRhdGEgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5cbi8qKlxuICogZXh0cmFjdHMgcm9zZW4gZGF0YSBmcm9tIHJhdyBoZXggZGF0YVxuICogQHBhcmFtIHNjcmlwdFB1YktleUhleFxuICovXG5leHBvcnQgY29uc3QgcGFyc2VBZ2dyZWdhdGVkRGF0YSA9IChcbiAgc2NyaXB0UHViS2V5SGV4OiBzdHJpbmdcbik6IE1pbmltYWxPbkNoYWluUm9zZW5EYXRhID0+IHtcbiAgcmV0dXJuIHBhcnNlUm9zZW5EYXRhKHNjcmlwdFB1YktleUhleCk7XG59O1xuIl19
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,oDAAoD,CAAC;AAC3G,OAAO,EAAE,4BAA4B,EAAE,MAAM,qDAAqD,CAAC;AACnG,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,wBAAwB,EAAE,MAAM,iDAAiD,CAAC;AAC3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,mDAAmD,CAAC;AAC/F,OAAO,EAAE,2BAA2B,EAAE,MAAM,oDAAoD,CAAC;AACjG,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,+BAA+B,EAAE,MAAM,wDAAwD,CAAC;AACzG,OAAO,EAAE,4BAA4B,EAAE,MAAM,qDAAqD,CAAC;AACnG,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,EAAE,yBAAyB,EAAE,MAAM,+CAA+C,CAAC;AAC1F,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,2CAA2C,CAAC;AAClF,OAAO,EAAE,0BAA0B,EAAE,MAAM,iDAAiD,CAAC;AAC7F,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC"}
package/dist/lib/index.js DELETED
@@ -1,25 +0,0 @@
1
- import { initEccLib } from 'bitcoinjs-lib';
2
- import ecc from '@bitcoinerlab/secp256k1';
3
- initEccLib(ecc);
4
- export { default as AbstractRosenDataExtractor } from './getRosenData/abstract/AbstractRosenDataExtractor';
5
- export { BitcoinEsploraRosenExtractor } from './getRosenData/bitcoin/BitcoinEsploraRosenExtractor';
6
- export { BitcoinRosenExtractor } from './getRosenData/bitcoin/BitcoinRosenExtractor';
7
- export { BitcoinRpcRosenExtractor } from './getRosenData/bitcoin/BitcoinRpcRosenExtractor';
8
- export { EvmEthersRosenExtractor } from './getRosenData/evm/EvmEthersRosenExtractor';
9
- export { EvmRpcRosenExtractor } from './getRosenData/evm/EvmRpcRosenExtractor';
10
- export { EvmRosenExtractor } from './getRosenData/evm/EvmRosenExtractor';
11
- export { CardanoKoiosRosenExtractor } from './getRosenData/cardano/CardanoKoiosRosenExtractor';
12
- export { CardanoOgmiosRosenExtractor } from './getRosenData/cardano/CardanoOgmiosRosenExtractor';
13
- export { CardanoRosenExtractor } from './getRosenData/cardano/CardanoRosenExtractor';
14
- export { CardanoBlockFrostRosenExtractor } from './getRosenData/cardano/CardanoBlockFrostRosenExtractor';
15
- export { CardanoGraphQLRosenExtractor } from './getRosenData/cardano/CardanoGraphQLRosenExtractor';
16
- export { ErgoRosenExtractor } from './getRosenData/ergo/ErgoRosenExtractor';
17
- export { ErgoNodeRosenExtractor } from './getRosenData/ergo/ErgoNodeRosenExtractor';
18
- export { DogeEsploraRosenExtractor } from './getRosenData/doge/DogeEsploraRosenExtractor';
19
- export { DogeRosenExtractor } from './getRosenData/doge/DogeRosenExtractor';
20
- export { DogeRpcRosenExtractor } from './getRosenData/doge/DogeRpcRosenExtractor';
21
- export { RunesEsploraRosenExtractor } from './getRosenData/runes/RunesEsploraRosenExtractor';
22
- export { RunesRosenExtractor } from './getRosenData/runes/RunesRosenExtractor';
23
- export { RunesRpcRosenExtractor } from './getRosenData/runes/RunesRpcRosenExtractor';
24
- export { parseRosenData } from './utils';
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEdBQUcsTUFBTSx5QkFBeUIsQ0FBQztBQUUxQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7QUFFaEIsT0FBTyxFQUFFLE9BQU8sSUFBSSwwQkFBMEIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzNHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ25HLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ3pHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ25HLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRXBGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzFGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbml0RWNjTGliIH0gZnJvbSAnYml0Y29pbmpzLWxpYic7XG5pbXBvcnQgZWNjIGZyb20gJ0BiaXRjb2luZXJsYWIvc2VjcDI1NmsxJztcblxuaW5pdEVjY0xpYihlY2MpO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIEFic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yIH0gZnJvbSAnLi9nZXRSb3NlbkRhdGEvYWJzdHJhY3QvQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3InO1xuZXhwb3J0IHsgQml0Y29pbkVzcGxvcmFSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2JpdGNvaW4vQml0Y29pbkVzcGxvcmFSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBCaXRjb2luUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9iaXRjb2luL0JpdGNvaW5Sb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBCaXRjb2luUnBjUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9iaXRjb2luL0JpdGNvaW5ScGNSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBFdm1FdGhlcnNSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2V2bS9Fdm1FdGhlcnNSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBFdm1ScGNSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2V2bS9Fdm1ScGNSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBFdm1Sb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2V2bS9Fdm1Sb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBDYXJkYW5vS29pb3NSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2NhcmRhbm8vQ2FyZGFub0tvaW9zUm9zZW5FeHRyYWN0b3InO1xuZXhwb3J0IHsgQ2FyZGFub09nbWlvc1Jvc2VuRXh0cmFjdG9yIH0gZnJvbSAnLi9nZXRSb3NlbkRhdGEvY2FyZGFuby9DYXJkYW5vT2dtaW9zUm9zZW5FeHRyYWN0b3InO1xuZXhwb3J0IHsgQ2FyZGFub1Jvc2VuRXh0cmFjdG9yIH0gZnJvbSAnLi9nZXRSb3NlbkRhdGEvY2FyZGFuby9DYXJkYW5vUm9zZW5FeHRyYWN0b3InO1xuZXhwb3J0IHsgQ2FyZGFub0Jsb2NrRnJvc3RSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2NhcmRhbm8vQ2FyZGFub0Jsb2NrRnJvc3RSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBDYXJkYW5vR3JhcGhRTFJvc2VuRXh0cmFjdG9yIH0gZnJvbSAnLi9nZXRSb3NlbkRhdGEvY2FyZGFuby9DYXJkYW5vR3JhcGhRTFJvc2VuRXh0cmFjdG9yJztcbmV4cG9ydCB7IEVyZ29Sb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2VyZ28vRXJnb1Jvc2VuRXh0cmFjdG9yJztcbmV4cG9ydCB7IEVyZ29Ob2RlUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9lcmdvL0VyZ29Ob2RlUm9zZW5FeHRyYWN0b3InO1xuZXhwb3J0IHsgUm9zZW5EYXRhLCBUb2tlblRyYW5zZm9ybWF0aW9uIH0gZnJvbSAnLi9nZXRSb3NlbkRhdGEvYWJzdHJhY3QvdHlwZXMnO1xuZXhwb3J0IHsgRG9nZUVzcGxvcmFSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2RvZ2UvRG9nZUVzcGxvcmFSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBEb2dlUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9kb2dlL0RvZ2VSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBEb2dlUnBjUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9kb2dlL0RvZ2VScGNSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBSdW5lc0VzcGxvcmFSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL3J1bmVzL1J1bmVzRXNwbG9yYVJvc2VuRXh0cmFjdG9yJztcbmV4cG9ydCB7IFJ1bmVzUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9ydW5lcy9SdW5lc1Jvc2VuRXh0cmFjdG9yJztcbmV4cG9ydCB7IFJ1bmVzUnBjUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9ydW5lcy9SdW5lc1JwY1Jvc2VuRXh0cmFjdG9yJztcbmV4cG9ydCB7IHBhcnNlUm9zZW5EYXRhIH0gZnJvbSAnLi91dGlscyc7XG4iXX0=
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../lib/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB"}
package/dist/lib/types.js DELETED
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgTWluaW1hbE9uQ2hhaW5Sb3NlbkRhdGEge1xuICB0b0NoYWluOiBzdHJpbmc7XG4gIHRvQWRkcmVzczogc3RyaW5nO1xuICBicmlkZ2VGZWU6IHN0cmluZztcbiAgbmV0d29ya0ZlZTogc3RyaW5nO1xufVxuIl19
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../lib/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAElD;;;GAGG;AACH,eAAO,MAAM,cAAc,oBACR,MAAM,KACtB,uBAgCF,CAAC"}
package/dist/lib/utils.js DELETED
@@ -1,31 +0,0 @@
1
- import { decodeAddress } from '@rosen-bridge/address-codec';
2
- import { SUPPORTED_CHAINS } from './getRosenData/const';
3
- /**
4
- * extracts rosen data from raw hex data
5
- * @param scriptPubKeyHex
6
- */
7
- export const parseRosenData = (scriptPubKeyHex) => {
8
- // parse toChain
9
- const toChainHex = scriptPubKeyHex.slice(0, 2);
10
- const toChainCode = parseInt(toChainHex, 16);
11
- if (toChainCode >= SUPPORTED_CHAINS.length)
12
- throw Error(`invalid toChain code, found [${toChainCode}] but only [${SUPPORTED_CHAINS.length}] chains are supported`);
13
- const toChain = SUPPORTED_CHAINS[toChainCode];
14
- // parse bridgeFee
15
- const bridgeFeeHex = scriptPubKeyHex.slice(2, 18);
16
- const bridgeFee = BigInt('0x' + bridgeFeeHex).toString();
17
- // parse networkFee
18
- const networkFeeHex = scriptPubKeyHex.slice(18, 34);
19
- const networkFee = BigInt('0x' + networkFeeHex).toString();
20
- // parse toAddress
21
- const addressLengthCode = scriptPubKeyHex.slice(34, 36);
22
- const addressHex = scriptPubKeyHex.slice(36, 36 + parseInt(addressLengthCode, 16) * 2);
23
- const toAddress = decodeAddress(toChain, addressHex);
24
- return {
25
- toChain,
26
- toAddress,
27
- bridgeFee,
28
- networkFee,
29
- };
30
- };
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBR3hEOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUM1QixlQUF1QixFQUNFLEVBQUU7SUFDM0IsZ0JBQWdCO0lBQ2hCLE1BQU0sVUFBVSxHQUFHLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQy9DLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDN0MsSUFBSSxXQUFXLElBQUksZ0JBQWdCLENBQUMsTUFBTTtRQUN4QyxNQUFNLEtBQUssQ0FDVCxnQ0FBZ0MsV0FBVyxlQUFlLGdCQUFnQixDQUFDLE1BQU0sd0JBQXdCLENBQzFHLENBQUM7SUFDSixNQUFNLE9BQU8sR0FBRyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUU5QyxrQkFBa0I7SUFDbEIsTUFBTSxZQUFZLEdBQUcsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDbEQsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLElBQUksR0FBRyxZQUFZLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUV6RCxtQkFBbUI7SUFDbkIsTUFBTSxhQUFhLEdBQUcsZUFBZSxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDcEQsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLElBQUksR0FBRyxhQUFhLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUUzRCxrQkFBa0I7SUFDbEIsTUFBTSxpQkFBaUIsR0FBRyxlQUFlLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN4RCxNQUFNLFVBQVUsR0FBRyxlQUFlLENBQUMsS0FBSyxDQUN0QyxFQUFFLEVBQ0YsRUFBRSxHQUFHLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQ3pDLENBQUM7SUFDRixNQUFNLFNBQVMsR0FBRyxhQUFhLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBRXJELE9BQU87UUFDTCxPQUFPO1FBQ1AsU0FBUztRQUNULFNBQVM7UUFDVCxVQUFVO0tBQ1gsQ0FBQztBQUNKLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRlY29kZUFkZHJlc3MgfSBmcm9tICdAcm9zZW4tYnJpZGdlL2FkZHJlc3MtY29kZWMnO1xuaW1wb3J0IHsgU1VQUE9SVEVEX0NIQUlOUyB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2NvbnN0JztcbmltcG9ydCB7IE1pbmltYWxPbkNoYWluUm9zZW5EYXRhIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogZXh0cmFjdHMgcm9zZW4gZGF0YSBmcm9tIHJhdyBoZXggZGF0YVxuICogQHBhcmFtIHNjcmlwdFB1YktleUhleFxuICovXG5leHBvcnQgY29uc3QgcGFyc2VSb3NlbkRhdGEgPSAoXG4gIHNjcmlwdFB1YktleUhleDogc3RyaW5nXG4pOiBNaW5pbWFsT25DaGFpblJvc2VuRGF0YSA9PiB7XG4gIC8vIHBhcnNlIHRvQ2hhaW5cbiAgY29uc3QgdG9DaGFpbkhleCA9IHNjcmlwdFB1YktleUhleC5zbGljZSgwLCAyKTtcbiAgY29uc3QgdG9DaGFpbkNvZGUgPSBwYXJzZUludCh0b0NoYWluSGV4LCAxNik7XG4gIGlmICh0b0NoYWluQ29kZSA+PSBTVVBQT1JURURfQ0hBSU5TLmxlbmd0aClcbiAgICB0aHJvdyBFcnJvcihcbiAgICAgIGBpbnZhbGlkIHRvQ2hhaW4gY29kZSwgZm91bmQgWyR7dG9DaGFpbkNvZGV9XSBidXQgb25seSBbJHtTVVBQT1JURURfQ0hBSU5TLmxlbmd0aH1dIGNoYWlucyBhcmUgc3VwcG9ydGVkYFxuICAgICk7XG4gIGNvbnN0IHRvQ2hhaW4gPSBTVVBQT1JURURfQ0hBSU5TW3RvQ2hhaW5Db2RlXTtcblxuICAvLyBwYXJzZSBicmlkZ2VGZWVcbiAgY29uc3QgYnJpZGdlRmVlSGV4ID0gc2NyaXB0UHViS2V5SGV4LnNsaWNlKDIsIDE4KTtcbiAgY29uc3QgYnJpZGdlRmVlID0gQmlnSW50KCcweCcgKyBicmlkZ2VGZWVIZXgpLnRvU3RyaW5nKCk7XG5cbiAgLy8gcGFyc2UgbmV0d29ya0ZlZVxuICBjb25zdCBuZXR3b3JrRmVlSGV4ID0gc2NyaXB0UHViS2V5SGV4LnNsaWNlKDE4LCAzNCk7XG4gIGNvbnN0IG5ldHdvcmtGZWUgPSBCaWdJbnQoJzB4JyArIG5ldHdvcmtGZWVIZXgpLnRvU3RyaW5nKCk7XG5cbiAgLy8gcGFyc2UgdG9BZGRyZXNzXG4gIGNvbnN0IGFkZHJlc3NMZW5ndGhDb2RlID0gc2NyaXB0UHViS2V5SGV4LnNsaWNlKDM0LCAzNik7XG4gIGNvbnN0IGFkZHJlc3NIZXggPSBzY3JpcHRQdWJLZXlIZXguc2xpY2UoXG4gICAgMzYsXG4gICAgMzYgKyBwYXJzZUludChhZGRyZXNzTGVuZ3RoQ29kZSwgMTYpICogMlxuICApO1xuICBjb25zdCB0b0FkZHJlc3MgPSBkZWNvZGVBZGRyZXNzKHRvQ2hhaW4sIGFkZHJlc3NIZXgpO1xuXG4gIHJldHVybiB7XG4gICAgdG9DaGFpbixcbiAgICB0b0FkZHJlc3MsXG4gICAgYnJpZGdlRmVlLFxuICAgIG5ldHdvcmtGZWUsXG4gIH07XG59O1xuIl19