@rosen-bridge/rosen-extractor 8.1.0 → 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 (146) hide show
  1. package/dist/getRosenData/{runes/RunesEsploraRosenExtractor.d.ts → bitcoin-runes/BitcoinRunesEsploraRosenExtractor.d.ts} +2 -2
  2. package/dist/getRosenData/bitcoin-runes/BitcoinRunesEsploraRosenExtractor.d.ts.map +1 -0
  3. package/dist/getRosenData/bitcoin-runes/BitcoinRunesEsploraRosenExtractor.js +114 -0
  4. package/dist/{lib/getRosenData/runes/RunesRosenExtractor.d.ts → getRosenData/bitcoin-runes/BitcoinRunesRosenExtractor.d.ts} +2 -2
  5. package/dist/getRosenData/bitcoin-runes/BitcoinRunesRosenExtractor.d.ts.map +1 -0
  6. package/dist/getRosenData/bitcoin-runes/BitcoinRunesRosenExtractor.js +121 -0
  7. package/dist/getRosenData/{runes/RunesRpcRosenExtractor.d.ts → bitcoin-runes/BitcoinRunesRpcRosenExtractor.d.ts} +2 -2
  8. package/dist/getRosenData/bitcoin-runes/BitcoinRunesRpcRosenExtractor.d.ts.map +1 -0
  9. package/dist/getRosenData/bitcoin-runes/BitcoinRunesRpcRosenExtractor.js +114 -0
  10. package/dist/getRosenData/bitcoin-runes/constants.d.ts.map +1 -0
  11. package/dist/getRosenData/bitcoin-runes/constants.js +2 -0
  12. package/dist/getRosenData/bitcoin-runes/types.d.ts.map +1 -0
  13. package/dist/getRosenData/bitcoin-runes/types.js +2 -0
  14. package/dist/getRosenData/bitcoin-runes/utils.d.ts.map +1 -0
  15. package/dist/getRosenData/bitcoin-runes/utils.js +9 -0
  16. package/dist/getRosenData/const.d.ts +1 -1
  17. package/dist/getRosenData/const.d.ts.map +1 -1
  18. package/dist/getRosenData/const.js +3 -3
  19. package/dist/index.d.ts +3 -3
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +4 -4
  22. package/package.json +1 -1
  23. package/dist/getRosenData/runes/RunesEsploraRosenExtractor.d.ts.map +0 -1
  24. package/dist/getRosenData/runes/RunesEsploraRosenExtractor.js +0 -113
  25. package/dist/getRosenData/runes/RunesRosenExtractor.d.ts +0 -36
  26. package/dist/getRosenData/runes/RunesRosenExtractor.d.ts.map +0 -1
  27. package/dist/getRosenData/runes/RunesRosenExtractor.js +0 -120
  28. package/dist/getRosenData/runes/RunesRpcRosenExtractor.d.ts.map +0 -1
  29. package/dist/getRosenData/runes/RunesRpcRosenExtractor.js +0 -113
  30. package/dist/getRosenData/runes/constants.d.ts.map +0 -1
  31. package/dist/getRosenData/runes/constants.js +0 -2
  32. package/dist/getRosenData/runes/types.d.ts.map +0 -1
  33. package/dist/getRosenData/runes/types.js +0 -2
  34. package/dist/getRosenData/runes/utils.d.ts.map +0 -1
  35. package/dist/getRosenData/runes/utils.js +0 -9
  36. package/dist/lib/getRosenData/abstract/AbstractRosenDataExtractor.d.ts +0 -19
  37. package/dist/lib/getRosenData/abstract/AbstractRosenDataExtractor.d.ts.map +0 -1
  38. package/dist/lib/getRosenData/abstract/AbstractRosenDataExtractor.js +0 -32
  39. package/dist/lib/getRosenData/abstract/types.d.ts +0 -18
  40. package/dist/lib/getRosenData/abstract/types.d.ts.map +0 -1
  41. package/dist/lib/getRosenData/abstract/types.js +0 -2
  42. package/dist/lib/getRosenData/bitcoin/BitcoinEsploraRosenExtractor.d.ts +0 -22
  43. package/dist/lib/getRosenData/bitcoin/BitcoinEsploraRosenExtractor.d.ts.map +0 -1
  44. package/dist/lib/getRosenData/bitcoin/BitcoinEsploraRosenExtractor.js +0 -105
  45. package/dist/lib/getRosenData/bitcoin/BitcoinRosenExtractor.d.ts +0 -22
  46. package/dist/lib/getRosenData/bitcoin/BitcoinRosenExtractor.d.ts.map +0 -1
  47. package/dist/lib/getRosenData/bitcoin/BitcoinRosenExtractor.js +0 -113
  48. package/dist/lib/getRosenData/bitcoin/BitcoinRpcRosenExtractor.d.ts +0 -22
  49. package/dist/lib/getRosenData/bitcoin/BitcoinRpcRosenExtractor.d.ts.map +0 -1
  50. package/dist/lib/getRosenData/bitcoin/BitcoinRpcRosenExtractor.js +0 -106
  51. package/dist/lib/getRosenData/bitcoin/types.d.ts +0 -89
  52. package/dist/lib/getRosenData/bitcoin/types.d.ts.map +0 -1
  53. package/dist/lib/getRosenData/bitcoin/types.js +0 -2
  54. package/dist/lib/getRosenData/bitcoin/utils.d.ts +0 -7
  55. package/dist/lib/getRosenData/bitcoin/utils.d.ts.map +0 -1
  56. package/dist/lib/getRosenData/bitcoin/utils.js +0 -17
  57. package/dist/lib/getRosenData/cardano/CardanoBlockFrostRosenExtractor.d.ts +0 -18
  58. package/dist/lib/getRosenData/cardano/CardanoBlockFrostRosenExtractor.d.ts.map +0 -1
  59. package/dist/lib/getRosenData/cardano/CardanoBlockFrostRosenExtractor.js +0 -94
  60. package/dist/lib/getRosenData/cardano/CardanoGraphQLRosenExtractor.d.ts +0 -18
  61. package/dist/lib/getRosenData/cardano/CardanoGraphQLRosenExtractor.d.ts.map +0 -1
  62. package/dist/lib/getRosenData/cardano/CardanoGraphQLRosenExtractor.js +0 -92
  63. package/dist/lib/getRosenData/cardano/CardanoKoiosRosenExtractor.d.ts +0 -19
  64. package/dist/lib/getRosenData/cardano/CardanoKoiosRosenExtractor.d.ts.map +0 -1
  65. package/dist/lib/getRosenData/cardano/CardanoKoiosRosenExtractor.js +0 -95
  66. package/dist/lib/getRosenData/cardano/CardanoOgmiosRosenExtractor.d.ts +0 -18
  67. package/dist/lib/getRosenData/cardano/CardanoOgmiosRosenExtractor.d.ts.map +0 -1
  68. package/dist/lib/getRosenData/cardano/CardanoOgmiosRosenExtractor.js +0 -97
  69. package/dist/lib/getRosenData/cardano/CardanoRosenExtractor.d.ts +0 -18
  70. package/dist/lib/getRosenData/cardano/CardanoRosenExtractor.d.ts.map +0 -1
  71. package/dist/lib/getRosenData/cardano/CardanoRosenExtractor.js +0 -88
  72. package/dist/lib/getRosenData/cardano/types.d.ts +0 -102
  73. package/dist/lib/getRosenData/cardano/types.d.ts.map +0 -1
  74. package/dist/lib/getRosenData/cardano/types.js +0 -2
  75. package/dist/lib/getRosenData/cardano/utils.d.ts +0 -19
  76. package/dist/lib/getRosenData/cardano/utils.d.ts.map +0 -1
  77. package/dist/lib/getRosenData/cardano/utils.js +0 -32
  78. package/dist/lib/getRosenData/const.d.ts +0 -13
  79. package/dist/lib/getRosenData/const.d.ts.map +0 -1
  80. package/dist/lib/getRosenData/const.js +0 -21
  81. package/dist/lib/getRosenData/doge/DogeEsploraRosenExtractor.d.ts +0 -22
  82. package/dist/lib/getRosenData/doge/DogeEsploraRosenExtractor.d.ts.map +0 -1
  83. package/dist/lib/getRosenData/doge/DogeEsploraRosenExtractor.js +0 -104
  84. package/dist/lib/getRosenData/doge/DogeRosenExtractor.d.ts +0 -22
  85. package/dist/lib/getRosenData/doge/DogeRosenExtractor.d.ts.map +0 -1
  86. package/dist/lib/getRosenData/doge/DogeRosenExtractor.js +0 -112
  87. package/dist/lib/getRosenData/doge/DogeRpcRosenExtractor.d.ts +0 -22
  88. package/dist/lib/getRosenData/doge/DogeRpcRosenExtractor.d.ts.map +0 -1
  89. package/dist/lib/getRosenData/doge/DogeRpcRosenExtractor.js +0 -105
  90. package/dist/lib/getRosenData/doge/types.d.ts +0 -87
  91. package/dist/lib/getRosenData/doge/types.d.ts.map +0 -1
  92. package/dist/lib/getRosenData/doge/types.js +0 -2
  93. package/dist/lib/getRosenData/doge/utils.d.ts +0 -13
  94. package/dist/lib/getRosenData/doge/utils.d.ts.map +0 -1
  95. package/dist/lib/getRosenData/doge/utils.js +0 -58
  96. package/dist/lib/getRosenData/ergo/ErgoNodeRosenExtractor.d.ts +0 -22
  97. package/dist/lib/getRosenData/ergo/ErgoNodeRosenExtractor.d.ts.map +0 -1
  98. package/dist/lib/getRosenData/ergo/ErgoNodeRosenExtractor.js +0 -105
  99. package/dist/lib/getRosenData/ergo/ErgoRosenExtractor.d.ts +0 -15
  100. package/dist/lib/getRosenData/ergo/ErgoRosenExtractor.d.ts.map +0 -1
  101. package/dist/lib/getRosenData/ergo/ErgoRosenExtractor.js +0 -33
  102. package/dist/lib/getRosenData/ergo/types.d.ts +0 -37
  103. package/dist/lib/getRosenData/ergo/types.d.ts.map +0 -1
  104. package/dist/lib/getRosenData/ergo/types.js +0 -2
  105. package/dist/lib/getRosenData/evm/EvmEthersRosenExtractor.d.ts +0 -23
  106. package/dist/lib/getRosenData/evm/EvmEthersRosenExtractor.d.ts.map +0 -1
  107. package/dist/lib/getRosenData/evm/EvmEthersRosenExtractor.js +0 -54
  108. package/dist/lib/getRosenData/evm/EvmRosenExtractor.d.ts +0 -16
  109. package/dist/lib/getRosenData/evm/EvmRosenExtractor.d.ts.map +0 -1
  110. package/dist/lib/getRosenData/evm/EvmRosenExtractor.js +0 -31
  111. package/dist/lib/getRosenData/evm/EvmRpcRosenExtractor.d.ts +0 -26
  112. package/dist/lib/getRosenData/evm/EvmRpcRosenExtractor.d.ts.map +0 -1
  113. package/dist/lib/getRosenData/evm/EvmRpcRosenExtractor.js +0 -123
  114. package/dist/lib/getRosenData/evm/utils.d.ts +0 -7
  115. package/dist/lib/getRosenData/evm/utils.d.ts.map +0 -1
  116. package/dist/lib/getRosenData/evm/utils.js +0 -9
  117. package/dist/lib/getRosenData/runes/RunesEsploraRosenExtractor.d.ts +0 -36
  118. package/dist/lib/getRosenData/runes/RunesEsploraRosenExtractor.d.ts.map +0 -1
  119. package/dist/lib/getRosenData/runes/RunesEsploraRosenExtractor.js +0 -113
  120. package/dist/lib/getRosenData/runes/RunesRosenExtractor.d.ts.map +0 -1
  121. package/dist/lib/getRosenData/runes/RunesRosenExtractor.js +0 -120
  122. package/dist/lib/getRosenData/runes/RunesRpcRosenExtractor.d.ts +0 -36
  123. package/dist/lib/getRosenData/runes/RunesRpcRosenExtractor.d.ts.map +0 -1
  124. package/dist/lib/getRosenData/runes/RunesRpcRosenExtractor.js +0 -113
  125. package/dist/lib/getRosenData/runes/constants.d.ts +0 -2
  126. package/dist/lib/getRosenData/runes/constants.d.ts.map +0 -1
  127. package/dist/lib/getRosenData/runes/constants.js +0 -2
  128. package/dist/lib/getRosenData/runes/types.d.ts +0 -5
  129. package/dist/lib/getRosenData/runes/types.d.ts.map +0 -1
  130. package/dist/lib/getRosenData/runes/types.js +0 -2
  131. package/dist/lib/getRosenData/runes/utils.d.ts +0 -7
  132. package/dist/lib/getRosenData/runes/utils.d.ts.map +0 -1
  133. package/dist/lib/getRosenData/runes/utils.js +0 -9
  134. package/dist/lib/index.d.ts +0 -23
  135. package/dist/lib/index.d.ts.map +0 -1
  136. package/dist/lib/index.js +0 -25
  137. package/dist/lib/types.d.ts +0 -7
  138. package/dist/lib/types.d.ts.map +0 -1
  139. package/dist/lib/types.js +0 -2
  140. package/dist/lib/utils.d.ts +0 -7
  141. package/dist/lib/utils.d.ts.map +0 -1
  142. package/dist/lib/utils.js +0 -31
  143. package/dist/tsconfig.build.tsbuildinfo +0 -1
  144. /package/dist/getRosenData/{runes → bitcoin-runes}/constants.d.ts +0 -0
  145. /package/dist/getRosenData/{runes → bitcoin-runes}/types.d.ts +0 -0
  146. /package/dist/getRosenData/{runes → bitcoin-runes}/utils.d.ts +0 -0
@@ -5,7 +5,7 @@ import { TokenMap } from '@rosen-bridge/tokens';
5
5
  import { AbstractLogger } from '@rosen-bridge/abstract-logger';
6
6
  import { LockDataChunk } from './types';
7
7
  import { MinimalOnChainRosenData } from '../../types';
8
- export declare class RunesEsploraRosenExtractor extends AbstractRosenDataExtractor<BitcoinEsploraTransaction> {
8
+ export declare class BitcoinRunesEsploraRosenExtractor extends AbstractRosenDataExtractor<BitcoinEsploraTransaction> {
9
9
  readonly chain = "bitcoin-runes";
10
10
  protected lockScriptPubKey: string;
11
11
  constructor(lockAddress: string, tokens: TokenMap, logger?: AbstractLogger);
@@ -33,4 +33,4 @@ export declare class RunesEsploraRosenExtractor extends AbstractRosenDataExtract
33
33
  */
34
34
  protected validateLock: (outputs: EsploraTxOutput[]) => boolean;
35
35
  }
36
- //# sourceMappingURL=RunesEsploraRosenExtractor.d.ts.map
36
+ //# sourceMappingURL=BitcoinRunesEsploraRosenExtractor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BitcoinRunesEsploraRosenExtractor.d.ts","sourceRoot":"","sources":["../../../lib/getRosenData/bitcoin-runes/BitcoinRunesEsploraRosenExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,0BAA0B,MAAM,wCAAwC,CAAC;AAEhF,OAAO,EAAE,yBAAyB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAI/D,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAGtD,qBAAa,iCAAkC,SAAQ,0BAA0B,CAAC,yBAAyB,CAAC;IAC1G,QAAQ,CAAC,KAAK,mBAAuB;IACrC,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAC;gBAEvB,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,cAAc;IAK1E;;;OAGG;IACH,cAAc,GACZ,aAAa,yBAAyB,KACrC,SAAS,GAAG,SAAS,CAgDtB;IAEF;;;;OAIG;IACH,SAAS,CAAC,iBAAiB,GACzB,SAAS,eAAe,EAAE,KACzB,aAAa,EAAE,CAoBhB;IAEF;;;;OAIG;IACH,SAAS,CAAC,kBAAkB,GAC1B,gBAAgB,aAAa,EAAE,KAC9B,uBAAuB,GAAG,SAAS,CAgBpC;IAEF;;;;OAIG;IACH,SAAS,CAAC,YAAY,GAAI,SAAS,eAAe,EAAE,KAAG,OAAO,CAO5D;CACH"}
@@ -0,0 +1,114 @@
1
+ import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
2
+ import { BITCOIN_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 BitcoinRunesEsploraRosenExtractor extends AbstractRosenDataExtractor {
8
+ chain = BITCOIN_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 Esplora format
16
+ * @param transaction the lock transaction in Esplora 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 Esplora: ${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
+ // the first 3 boxes are expected to be change, OP_RETURN and lock address, which should not be considered for data chunks
70
+ for (let boxIndex = 3; boxIndex < outputs.length; boxIndex++) {
71
+ const output = outputs[boxIndex];
72
+ if (output.value !== minUtxoValue + i)
73
+ continue; // wrong data index
74
+ if (output.scriptpubkey.slice(0, 4) !== '0014')
75
+ continue; // not a native-segwit utxo
76
+ lockDataChunks.push({
77
+ index: i,
78
+ data: output.scriptpubkey.slice(4),
79
+ });
80
+ break;
81
+ }
82
+ }
83
+ return lockDataChunks;
84
+ };
85
+ /**
86
+ * combines lock data chunks into lock data object
87
+ * @param lockDataChunks
88
+ * @return lock data object or undefined
89
+ */
90
+ lockDataFromChunks = (lockDataChunks) => {
91
+ let lockData;
92
+ try {
93
+ lockData = parseAggregatedData(lockDataChunks.map((chunk) => chunk.data).join(''));
94
+ }
95
+ catch (e) {
96
+ this.logger.debug(`Failed to extract data from chunks [${JsonBigInt.stringify(lockDataChunks)}]: ${e}`);
97
+ }
98
+ return lockData;
99
+ };
100
+ /**
101
+ * check lock box exists in the tx outputs
102
+ * @param outputs
103
+ * @return boolean
104
+ */
105
+ validateLock = (outputs) => {
106
+ for (let i = 0; i < outputs.length; i++) {
107
+ if (outputs[i].scriptpubkey === this.lockScriptPubKey) {
108
+ return true;
109
+ }
110
+ }
111
+ return false;
112
+ };
113
+ }
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQml0Y29pblJ1bmVzRXNwbG9yYVJvc2VuRXh0cmFjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL2dldFJvc2VuRGF0YS9iaXRjb2luLXJ1bmVzL0JpdGNvaW5SdW5lc0VzcGxvcmFSb3NlbkV4dHJhY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLDBCQUEwQixNQUFNLHdDQUF3QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUkvQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUM5QyxPQUFPLFVBQVUsTUFBTSwyQkFBMkIsQ0FBQztBQUduRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTNDLE1BQU0sT0FBTyxpQ0FBa0MsU0FBUSwwQkFBcUQ7SUFDakcsS0FBSyxHQUFHLG1CQUFtQixDQUFDO0lBQzNCLGdCQUFnQixDQUFTO0lBRW5DLFlBQVksV0FBbUIsRUFBRSxNQUFnQixFQUFFLE1BQXVCO1FBQ3hFLEtBQUssQ0FBQyxXQUFXLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxPQUFPLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsY0FBYyxHQUFHLENBQ2YsV0FBc0MsRUFDZixFQUFFO1FBQ3pCLE1BQU0sU0FBUyxHQUFHLGtDQUFrQyxXQUFXLENBQUMsSUFBSSxHQUFHLENBQUM7UUFDeEUsSUFBSSxDQUFDO1lBQ0gsa0NBQWtDO1lBQ2xDLE1BQU0sT0FBTyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUM7WUFDakMsSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMs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Q25DLENBQUMsQ0FBQztnQkFDSCxNQUFNO1lBQ1IsQ0FBQztRQUNILENBQUM7UUFFRCxPQUFPLGNBQWMsQ0FBQztJQUN4QixDQUFDLENBQUM7SUFFRjs7OztPQUlHO0lBQ08sa0JBQWtCLEdBQUcsQ0FDN0IsY0FBK0IsRUFDTSxFQUFFO1FBQ3ZDLElBQUksUUFBNkMsQ0FBQztRQUVsRCxJQUFJLENBQUM7WUFDSCxRQUFRLEdBQUcsbUJBQW1CLENBQzVCLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQ25ELENBQUM7UUFDSixDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUNmLHVDQUF1QyxVQUFVLENBQUMsU0FBUyxDQUN6RCxjQUFjLENBQ2YsTUFBTSxDQUFDLEVBQUUsQ0FDWCxDQUFDO1FBQ0osQ0FBQztRQUVELE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUMsQ0FBQztJQUVGOzs7O09BSUc7SUFDTyxZQUFZLEdBQUcsQ0FBQyxPQUEwQixFQUFXLEVBQUU7UUFDL0QsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUN4QyxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLEtBQUssSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7Z0JBQ3RELE9BQU8sSUFBSSxDQUFDO1lBQ2QsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUMsQ0FBQztDQUNIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm9zZW5EYXRhIH0gZnJvbSAnLi4vYWJzdHJhY3QvdHlwZXMnO1xuaW1wb3J0IEFic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yIGZyb20gJy4uL2Fic3RyYWN0L0Fic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yJztcbmltcG9ydCB7IEJJVENPSU5fUlVORVNfQ0hBSU4gfSBmcm9tICcuLi9jb25zdCc7XG5pbXBvcnQgeyBCaXRjb2luRXNwbG9yYVRyYW5zYWN0aW9uLCBFc3Bsb3JhVHhPdXRwdXQgfSBmcm9tICcuLi9iaXRjb2luL3R5cGVzJztcbmltcG9ydCB7IFRva2VuTWFwIH0gZnJvbSAnQHJvc2VuLWJyaWRnZS90b2tlbnMnO1xuaW1wb3J0IHsgQWJzdHJhY3RMb2dnZXIgfSBmcm9tICdAcm9zZW4tYnJpZGdlL2Fic3RyYWN0LWxvZ2dlcic7XG5pbXBvcnQgeyBhZGRyZXNzIH0gZnJvbSAnYml0Y29pbmpzLWxpYic7XG5pbXBvcnQgeyBwYXJzZUFnZ3JlZ2F0ZWREYXRhIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgSnNvbkJpZ0ludCBmcm9tICdAcm9zZW4tYnJpZGdlL2pzb24tYmlnaW50JztcbmltcG9ydCB7IExvY2tEYXRhQ2h1bmsgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IE1pbmltYWxPbkNoYWluUm9zZW5EYXRhIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgbWluVXR4b1ZhbHVlIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5leHBvcnQgY2xhc3MgQml0Y29pblJ1bmVzRXNwbG9yYVJvc2VuRXh0cmFjdG9yIGV4dGVuZHMgQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3I8Qml0Y29pbkVzcGxvcmFUcmFuc2FjdGlvbj4ge1xuICByZWFkb25seSBjaGFpbiA9IEJJVENPSU5fUlVORVNfQ0hBSU47XG4gIHByb3RlY3RlZCBsb2NrU2NyaXB0UHViS2V5OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IobG9ja0FkZHJlc3M6IHN0cmluZywgdG9rZW5zOiBUb2tlbk1hcCwgbG9nZ2VyPzogQWJzdHJhY3RMb2dnZXIpIHtcbiAgICBzdXBlcihsb2NrQWRkcmVzcywgdG9rZW5zLCBsb2dnZXIpO1xuICAgIHRoaXMubG9ja1NjcmlwdFB1YktleSA9IGFkZHJlc3MudG9PdXRwdXRTY3JpcHQobG9ja0FkZHJlc3MpLnRvU3RyaW5nKCdoZXgnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBleHRyYWN0cyBSb3NlbkRhdGEgZnJvbSBnaXZlbiBsb2NrIHRyYW5zYWN0aW9uIGluIEVzcGxvcmEgZm9ybWF0XG4gICAqIEBwYXJhbSB0cmFuc2FjdGlvbiB0aGUgbG9jayB0cmFuc2FjdGlvbiBpbiBFc3Bsb3JhIGZvcm1hdFxuICAgKi9cbiAgZXh0cmFjdFJhd0RhdGEgPSAoXG4gICAgdHJhbnNhY3Rpb246IEJpdGNvaW5Fc3Bsb3JhVHJhbnNhY3Rpb25cbiAgKTogUm9zZW5EYXRhIHwgdW5kZWZpbmVkID0+IHtcbiAgICBjb25zdCBiYXNlRXJyb3IgPSBgTm8gcm9zZW4gZGF0YSBpcyBmb3VuZCBmb3IgdHggWyR7dHJhbnNhY3Rpb24udHhpZH1dYDtcbiAgICB0cnkge1xuICAgICAgLy8gdmFsaWRhdGUgbnVtYmVyIG9mIG91dHB1dCBib3hlc1xuICAgICAgY29uc3Qgb3V0cHV0cyA9IHRyYW5zYWN0aW9uLnZvdXQ7XG4gICAgICBpZiAob3V0cHV0cy5sZW5ndGggPCA1KSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKGJhc2VFcnJvciArIGA6IEluc3VmZmljaWVudCBudW1iZXIgb2YgYm94ZXNgKTtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cblxuICAgICAgLy8gdmFsaWRhdGUgbG9jayBjb25kaXRpb25zXG4gICAgICBjb25zdCB2YWxpZExvY2sgPSB0aGlzLnZhbGlkYXRlTG9jayhvdXRwdXRzKTtcbiAgICAgIGlmICghdmFsaWRMb2NrKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKGJhc2VFcnJvciArIGA6IEZhaWxlZCB0byBmaW5kIHJvc2VuIGxvY2sgdXR4b2ApO1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuXG4gICAgICAvLyB2YWxpZGF0ZSBkYXRhIGNvbmRpdGlvbnNcbiAgICAgIGNvbnN0IGxvY2tEYXRhQ2h1bmtzID0gdGhpcy5nZXRMb2NrRGF0YUNodW5rcyhvdXRwdXRzKTtcbiAgICAgIGNvbnN0IGxvY2tEYXRhID0gdGhpcy5sb2NrRGF0YUZyb21DaHVua3MobG9ja0RhdGFDaHVua3MpO1xuICAgICAgaWYgKCFsb2NrRGF0YSkge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgICBiYXNlRXJyb3IgKyBgOiBGYWlsZWQgdG8gZXh0cmFjdCByb3NlbiBkYXRhIGZyb20gdXR4b3NgXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGZyb21BZGRyZXNzID0gYGJveDoke3RyYW5zYWN0aW9uLnZpblswXS50eGlkfS4ke3RyYW5zYWN0aW9uLnZpblswXS52b3V0fWA7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0b0NoYWluOiBsb2NrRGF0YS50b0NoYWluLFxuICAgICAgICB0b0FkZHJlc3M6IGxvY2tEYXRhLnRvQWRkcmVzcyxcbiAgICAgICAgYnJpZGdlRmVlOiBsb2NrRGF0YS5icmlkZ2VGZWUsXG4gICAgICAgIG5ldHdvcmtGZWU6IGxvY2tEYXRhLm5ldHdvcmtGZWUsXG4gICAgICAgIGZyb21BZGRyZXNzOiBmcm9tQWRkcmVzcyxcbiAgICAgICAgc291cmNlQ2hhaW5Ub2tlbklkOiAnJyxcbiAgICAgICAgYW1vdW50OiAnJyxcbiAgICAgICAgdGFyZ2V0Q2hhaW5Ub2tlbklkOiAnJyxcbiAgICAgICAgc291cmNlVHhJZDogdHJhbnNhY3Rpb24udHhpZCxcbiAgICAgIH07XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgIGBBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSBnZXR0aW5nIFJ1bmVzIHJvc2VuIGRhdGEgZnJvbSBFc3Bsb3JhOiAke2V9YFxuICAgICAgKTtcbiAgICAgIGlmIChlIGluc3RhbmNlb2YgRXJyb3IgJiYgZS5zdGFjaykge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhlLnN0YWNrKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfTtcblxuICAvKipcbiAgICogZXh0cmFjdHMgUm9zZW5EYXRhIGNodW5rcyBmcm9tIHR4IG91dHB1dHNcbiAgICogQHBhcmFtIG91dHB1dHNcbiAgICogQHJldHVybiBhcnJheSBvZiBMb2NrRGF0YUNodW5rXG4gICAqL1xuICBwcm90ZWN0ZWQgZ2V0TG9ja0RhdGFDaHVua3MgPSAoXG4gICAgb3V0cHV0czogRXNwbG9yYVR4T3V0cHV0W11cbiAgKTogTG9ja0RhdGFDaHVua1tdID0+IHtcbiAgICBjb25zdCBsb2NrRGF0YUNodW5rczogTG9ja0RhdGFDaHVua1tdID0gW107XG5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IDQ7IGkrKykge1xuICAgICAgLy8gdGhlIGZpcnN0IDMgYm94ZXMgYXJlIGV4cGVjdGVkIHRvIGJlIGNoYW5nZSwgT1BfUkVUVVJOIGFuZCBsb2NrIGFkZHJlc3MsIHdoaWNoIHNob3VsZCBub3QgYmUgY29uc2lkZXJlZCBmb3IgZGF0YSBjaHVua3NcbiAgICAgIGZvciAobGV0IGJveEluZGV4ID0gMzsgYm94SW5kZXggPCBvdXRwdXRzLmxlbmd0aDsgYm94SW5kZXgrKykge1xuICAgICAgICBjb25zdCBvdXRwdXQgPSBvdXRwdXRzW2JveEluZGV4XTtcblxuICAgICAgICBpZiAob3V0cHV0LnZhbHVlICE9PSBtaW5VdHhvVmFsdWUgKyBpKSBjb250aW51ZTsgLy8gd3JvbmcgZGF0YSBpbmRleFxuICAgICAgICBpZiAob3V0cHV0LnNjcmlwdHB1YmtleS5zbGljZSgwLCA0KSAhPT0gJzAwMTQnKSBjb250aW51ZTsgLy8gbm90IGEgbmF0aXZlLXNlZ3dpdCB1dHhvXG5cbiAgICAgICAgbG9ja0RhdGFDaHVua3MucHVzaCh7XG4gICAgICAgICAgaW5kZXg6IGksXG4gICAgICAgICAgZGF0YTogb3V0cHV0LnNjcmlwdHB1YmtleS5zbGljZSg0KSxcbiAgICAgICAgfSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBsb2NrRGF0YUNodW5rcztcbiAgfTtcblxuICAvKipcbiAgICogY29tYmluZXMgbG9jayBkYXRhIGNodW5rcyBpbnRvIGxvY2sgZGF0YSBvYmplY3RcbiAgICogQHBhcmFtIGxvY2tEYXRhQ2h1bmtzXG4gICAqIEByZXR1cm4gbG9jayBkYXRhIG9iamVjdCBvciB1bmRlZmluZWRcbiAgICovXG4gIHByb3RlY3RlZCBsb2NrRGF0YUZyb21DaHVua3MgPSAoXG4gICAgbG9ja0RhdGFDaHVua3M6IExvY2tEYXRhQ2h1bmtbXVxuICApOiBNaW5pbWFsT25DaGFpblJvc2VuRGF0YSB8IHVuZGVmaW5lZCA9PiB7XG4gICAgbGV0IGxvY2tEYXRhOiBNaW5pbWFsT25DaGFpblJvc2VuRGF0YSB8IHVuZGVmaW5lZDtcblxuICAgIHRyeSB7XG4gICAgICBsb2NrRGF0YSA9IHBhcnNlQWdncmVnYXRlZERhdGEoXG4gICAgICAgIGxvY2tEYXRhQ2h1bmtzLm1hcCgoY2h1bmspID0+IGNodW5rLmRhdGEpLmpvaW4oJycpXG4gICAgICApO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICBgRmFpbGVkIHRvIGV4dHJhY3QgZGF0YSBmcm9tIGNodW5rcyBbJHtKc29uQmlnSW50LnN0cmluZ2lmeShcbiAgICAgICAgICBsb2NrRGF0YUNodW5rc1xuICAgICAgICApfV06ICR7ZX1gXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBsb2NrRGF0YTtcbiAgfTtcblxuICAvKipcbiAgICogY2hlY2sgbG9jayBib3ggZXhpc3RzIGluIHRoZSB0eCBvdXRwdXRzXG4gICAqIEBwYXJhbSBvdXRwdXRzXG4gICAqIEByZXR1cm4gYm9vbGVhblxuICAgKi9cbiAgcHJvdGVjdGVkIHZhbGlkYXRlTG9jayA9IChvdXRwdXRzOiBFc3Bsb3JhVHhPdXRwdXRbXSk6IGJvb2xlYW4gPT4ge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb3V0cHV0cy5sZW5ndGg7IGkrKykge1xuICAgICAgaWYgKG91dHB1dHNbaV0uc2NyaXB0cHVia2V5ID09PSB0aGlzLmxvY2tTY3JpcHRQdWJLZXkpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfTtcbn1cbiJdfQ==
@@ -5,7 +5,7 @@ import { TokenMap } from '@rosen-bridge/tokens';
5
5
  import { AbstractLogger } from '@rosen-bridge/abstract-logger';
6
6
  import { LockDataChunk } from './types';
7
7
  import { MinimalOnChainRosenData } from '../../types';
8
- export declare class RunesRosenExtractor extends AbstractRosenDataExtractor<string> {
8
+ export declare class BitcoinRunesRosenExtractor extends AbstractRosenDataExtractor<string> {
9
9
  readonly chain = "bitcoin-runes";
10
10
  protected lockScriptPubKey: string;
11
11
  constructor(lockAddress: string, tokens: TokenMap, logger?: AbstractLogger);
@@ -33,4 +33,4 @@ export declare class RunesRosenExtractor extends AbstractRosenDataExtractor<stri
33
33
  */
34
34
  protected validateLock: (outputs: BitcoinTxOutput[]) => boolean;
35
35
  }
36
- //# sourceMappingURL=RunesRosenExtractor.d.ts.map
36
+ //# sourceMappingURL=BitcoinRunesRosenExtractor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BitcoinRunesRosenExtractor.d.ts","sourceRoot":"","sources":["../../../lib/getRosenData/bitcoin-runes/BitcoinRunesRosenExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,0BAA0B,MAAM,wCAAwC,CAAC;AAEhF,OAAO,EAAE,eAAe,EAAa,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAI/D,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAGtD,qBAAa,0BAA2B,SAAQ,0BAA0B,CAAC,MAAM,CAAC;IAChF,QAAQ,CAAC,KAAK,mBAAuB;IACrC,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAC;gBAEvB,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,cAAc;IAK1E;;;OAGG;IACH,cAAc,GAAI,uBAAuB,MAAM,KAAG,SAAS,GAAG,SAAS,CAyDrE;IAEF;;;;OAIG;IACH,SAAS,CAAC,iBAAiB,GACzB,SAAS,eAAe,EAAE,KACzB,aAAa,EAAE,CAoBhB;IAEF;;;;OAIG;IACH,SAAS,CAAC,kBAAkB,GAC1B,gBAAgB,aAAa,EAAE,KAC9B,uBAAuB,GAAG,SAAS,CAgBpC;IAEF;;;;OAIG;IACH,SAAS,CAAC,YAAY,GAAI,SAAS,eAAe,EAAE,KAAG,OAAO,CAO5D;CACH"}
@@ -0,0 +1,121 @@
1
+ import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
2
+ import { BITCOIN_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 BitcoinRunesRosenExtractor extends AbstractRosenDataExtractor {
8
+ chain = BITCOIN_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 BitcoinTx format
16
+ * @param serializedTransaction stringified transaction in BitcoinTx format
17
+ */
18
+ extractRawData = (serializedTransaction) => {
19
+ let transaction;
20
+ try {
21
+ transaction = JsonBigInt.parse(serializedTransaction);
22
+ }
23
+ catch (e) {
24
+ throw new Error(`Failed to parse transaction json to BitcoinTx format while extracting rosen data: ${e}`);
25
+ }
26
+ const baseError = `No rosen data is found for tx [${transaction.id}]`;
27
+ try {
28
+ // validate number of output boxes
29
+ const outputs = transaction.outputs;
30
+ if (outputs.length < 5) {
31
+ this.logger.debug(baseError + `: Insufficient number of boxes`);
32
+ return undefined;
33
+ }
34
+ // validate lock conditions
35
+ const validLock = this.validateLock(outputs);
36
+ if (!validLock) {
37
+ this.logger.debug(baseError + `: Failed to find rosen lock utxo`);
38
+ return undefined;
39
+ }
40
+ // validate data conditions
41
+ const lockDataChunks = this.getLockDataChunks(outputs);
42
+ const lockData = this.lockDataFromChunks(lockDataChunks);
43
+ if (!lockData) {
44
+ this.logger.debug(baseError + `: Failed to extract rosen data from utxos`);
45
+ return undefined;
46
+ }
47
+ const fromAddress = `box:${transaction.inputs[0].txId}.${transaction.inputs[0].index}`;
48
+ return {
49
+ toChain: lockData.toChain,
50
+ toAddress: lockData.toAddress,
51
+ bridgeFee: lockData.bridgeFee,
52
+ networkFee: lockData.networkFee,
53
+ fromAddress: fromAddress,
54
+ sourceChainTokenId: '',
55
+ amount: '',
56
+ targetChainTokenId: '',
57
+ sourceTxId: transaction.id,
58
+ };
59
+ }
60
+ catch (e) {
61
+ this.logger.debug(`An error occurred while getting Runes rosen data from BitcoinTx: ${e}`);
62
+ if (e instanceof Error && e.stack) {
63
+ this.logger.debug(e.stack);
64
+ }
65
+ }
66
+ return undefined;
67
+ };
68
+ /**
69
+ * extracts RosenData chunks from tx outputs
70
+ * @param outputs
71
+ * @return array of LockDataChunk
72
+ */
73
+ getLockDataChunks = (outputs) => {
74
+ const lockDataChunks = [];
75
+ for (let i = 0; i < 4; i++) {
76
+ // the first 3 boxes are expected to be change, OP_RETURN and lock address, which should not be considered for data chunks
77
+ for (let boxIndex = 3; boxIndex < outputs.length; boxIndex++) {
78
+ const output = outputs[boxIndex];
79
+ if (output.value !== BigInt(minUtxoValue) + BigInt(i))
80
+ continue; // wrong data index
81
+ if (output.scriptPubKey.slice(0, 4) !== '0014')
82
+ continue; // not a native-segwit utxo
83
+ lockDataChunks.push({
84
+ index: i,
85
+ data: output.scriptPubKey.slice(4),
86
+ });
87
+ break;
88
+ }
89
+ }
90
+ return lockDataChunks;
91
+ };
92
+ /**
93
+ * combines lock data chunks into lock data object
94
+ * @param lockDataChunks
95
+ * @return lock data object or undefined
96
+ */
97
+ lockDataFromChunks = (lockDataChunks) => {
98
+ let lockData;
99
+ try {
100
+ lockData = parseAggregatedData(lockDataChunks.map((chunk) => chunk.data).join(''));
101
+ }
102
+ catch (e) {
103
+ this.logger.debug(`Failed to extract data from chunks [${JsonBigInt.stringify(lockDataChunks)}]: ${e}`);
104
+ }
105
+ return lockData;
106
+ };
107
+ /**
108
+ * check lock box exists in the tx outputs
109
+ * @param outputs
110
+ * @return boolean
111
+ */
112
+ validateLock = (outputs) => {
113
+ for (let i = 0; i < outputs.length; i++) {
114
+ if (outputs[i].scriptPubKey === this.lockScriptPubKey) {
115
+ return true;
116
+ }
117
+ }
118
+ return false;
119
+ };
120
+ }
121
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQml0Y29pblJ1bmVzUm9zZW5FeHRyYWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2JpdGNvaW4tcnVuZXMvQml0Y29pblJ1bmVzUm9zZW5FeHRyYWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTywwQkFBMEIsTUFBTSx3Q0FBd0MsQ0FBQztBQUNoRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFJL0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDOUMsT0FBTyxVQUFVLE1BQU0sMkJBQTJCLENBQUM7QUFHbkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUUzQyxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsMEJBQWtDO0lBQ3ZFLEtBQUssR0FBRyxtQkFBbUIsQ0FBQztJQUMzQixnQkFBZ0IsQ0FBUztJQUVuQyxZQUFZLFdBQW1CLEVBQUUsTUFBZ0IsRUFBRSxNQUF1QjtRQUN4RSxLQUFLLENBQUMsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVEOzs7T0FHRztJQUNILGNBQWMsR0FBRyxDQUFDLHFCQUE2QixFQUF5QixFQUFFO1FBQ3hFLElBQUksV0FBc0IsQ0FBQztRQUMzQixJQUFJLENBQUM7WUFDSCxXQUFXLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQ3hELENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ1gsTUFBTSxJQUFJLEtBQUssQ0FDYixxRkFBcUYsQ0FBQyxFQUFFLENB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T0FBTyxJQUFJLENBQUM7WUFDZCxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQyxDQUFDO0NBQ0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSb3NlbkRhdGEgfSBmcm9tICcuLi9hYnN0cmFjdC90eXBlcyc7XG5pbXBvcnQgQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3IgZnJvbSAnLi4vYWJzdHJhY3QvQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3InO1xuaW1wb3J0IHsgQklUQ09JTl9SVU5FU19DSEFJTiB9IGZyb20gJy4uL2NvbnN0JztcbmltcG9ydCB7IEJpdGNvaW5UeE91dHB1dCwgQml0Y29pblR4IH0gZnJvbSAnLi4vYml0Y29pbi90eXBlcyc7XG5pbXBvcnQgeyBUb2tlbk1hcCB9IGZyb20gJ0Byb3Nlbi1icmlkZ2UvdG9rZW5zJztcbmltcG9ydCB7IEFic3RyYWN0TG9nZ2VyIH0gZnJvbSAnQHJvc2VuLWJyaWRnZS9hYnN0cmFjdC1sb2dnZXInO1xuaW1wb3J0IHsgYWRkcmVzcyB9IGZyb20gJ2JpdGNvaW5qcy1saWInO1xuaW1wb3J0IHsgcGFyc2VBZ2dyZWdhdGVkRGF0YSB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IEpzb25CaWdJbnQgZnJvbSAnQHJvc2VuLWJyaWRnZS9qc29uLWJpZ2ludCc7XG5pbXBvcnQgeyBMb2NrRGF0YUNodW5rIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBNaW5pbWFsT25DaGFpblJvc2VuRGF0YSB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IG1pblV0eG9WYWx1ZSB9IGZyb20gJy4vY29uc3RhbnRzJztcblxuZXhwb3J0IGNsYXNzIEJpdGNvaW5SdW5lc1Jvc2VuRXh0cmFjdG9yIGV4dGVuZHMgQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3I8c3RyaW5nPiB7XG4gIHJlYWRvbmx5IGNoYWluID0gQklUQ09JTl9SVU5FU19DSEFJTjtcbiAgcHJvdGVjdGVkIGxvY2tTY3JpcHRQdWJLZXk6IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihsb2NrQWRkcmVzczogc3RyaW5nLCB0b2tlbnM6IFRva2VuTWFwLCBsb2dnZXI/OiBBYnN0cmFjdExvZ2dlcikge1xuICAgIHN1cGVyKGxvY2tBZGRyZXNzLCB0b2tlbnMsIGxvZ2dlcik7XG4gICAgdGhpcy5sb2NrU2NyaXB0UHViS2V5ID0gYWRkcmVzcy50b091dHB1dFNjcmlwdChsb2NrQWRkcmVzcykudG9TdHJpbmcoJ2hleCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIGV4dHJhY3RzIFJvc2VuRGF0YSBmcm9tIGdpdmVuIGxvY2sgdHJhbnNhY3Rpb24gaW4gQml0Y29pblR4IGZvcm1hdFxuICAgKiBAcGFyYW0gc2VyaWFsaXplZFRyYW5zYWN0aW9uIHN0cmluZ2lmaWVkIHRyYW5zYWN0aW9uIGluIEJpdGNvaW5UeCBmb3JtYXRcbiAgICovXG4gIGV4dHJhY3RSYXdEYXRhID0gKHNlcmlhbGl6ZWRUcmFuc2FjdGlvbjogc3RyaW5nKTogUm9zZW5EYXRhIHwgdW5kZWZpbmVkID0+IHtcbiAgICBsZXQgdHJhbnNhY3Rpb246IEJpdGNvaW5UeDtcbiAgICB0cnkge1xuICAgICAgdHJhbnNhY3Rpb24gPSBKc29uQmlnSW50LnBhcnNlKHNlcmlhbGl6ZWRUcmFuc2FjdGlvbik7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgRmFpbGVkIHRvIHBhcnNlIHRyYW5zYWN0aW9uIGpzb24gdG8gQml0Y29pblR4IGZvcm1hdCB3aGlsZSBleHRyYWN0aW5nIHJvc2VuIGRhdGE6ICR7ZX1gXG4gICAgICApO1xuICAgIH1cbiAgICBjb25zdCBiYXNlRXJyb3IgPSBgTm8gcm9zZW4gZGF0YSBpcyBmb3VuZCBmb3IgdHggWyR7dHJhbnNhY3Rpb24uaWR9XWA7XG4gICAgdHJ5IHtcbiAgICAgIC8vIHZhbGlkYXRlIG51bWJlciBvZiBvdXRwdXQgYm94ZXNcbiAgICAgIGNvbnN0IG91dHB1dHMgPSB0cmFuc2FjdGlvbi5vdXRwdXRzO1xuICAgICAgaWYgKG91dHB1dHMubGVuZ3RoIDwgNSkge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhiYXNlRXJyb3IgKyBgOiBJbnN1ZmZpY2llbnQgbnVtYmVyIG9mIGJveGVzYCk7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIC8vIHZhbGlkYXRlIGxvY2sgY29uZGl0aW9uc1xuICAgICAgY29uc3QgdmFsaWRMb2NrID0gdGhpcy52YWxpZGF0ZUxvY2sob3V0cHV0cyk7XG4gICAgICBpZiAoIXZhbGlkTG9jaykge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhiYXNlRXJyb3IgKyBgOiBGYWlsZWQgdG8gZmluZCByb3NlbiBsb2NrIHV0eG9gKTtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cblxuICAgICAgLy8gdmFsaWRhdGUgZGF0YSBjb25kaXRpb25zXG4gICAgICBjb25zdCBsb2NrRGF0YUNodW5rcyA9IHRoaXMuZ2V0TG9ja0RhdGFDaHVua3Mob3V0cHV0cyk7XG4gICAgICBjb25zdCBsb2NrRGF0YSA9IHRoaXMubG9ja0RhdGFGcm9tQ2h1bmtzKGxvY2tEYXRhQ2h1bmtzKTtcblxuICAgICAgaWYgKCFsb2NrRGF0YSkge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgICBiYXNlRXJyb3IgKyBgOiBGYWlsZWQgdG8gZXh0cmFjdCByb3NlbiBkYXRhIGZyb20gdXR4b3NgXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGZyb21BZGRyZXNzID0gYGJveDoke3RyYW5zYWN0aW9uLmlucHV0c1swXS50eElkfS4ke3RyYW5zYWN0aW9uLmlucHV0c1swXS5pbmRleH1gO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdG9DaGFpbjogbG9ja0RhdGEudG9DaGFpbixcbiAgICAgICAgdG9BZGRyZXNzOiBsb2NrRGF0YS50b0FkZHJlc3MsXG4gICAgICAgIGJyaWRnZUZlZTogbG9ja0RhdGEuYnJpZGdlRmVlLFxuICAgICAgICBuZXR3b3JrRmVlOiBsb2NrRGF0YS5uZXR3b3JrRmVlLFxuICAgICAgICBmcm9tQWRkcmVzczogZnJvbUFkZHJlc3MsXG4gICAgICAgIHNvdXJjZUNoYWluVG9rZW5JZDogJycsXG4gICAgICAgIGFtb3VudDogJycsXG4gICAgICAgIHRhcmdldENoYWluVG9rZW5JZDogJycsXG4gICAgICAgIHNvdXJjZVR4SWQ6IHRyYW5zYWN0aW9uLmlkLFxuICAgICAgfTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgYEFuIGVycm9yIG9jY3VycmVkIHdoaWxlIGdldHRpbmcgUnVuZXMgcm9zZW4gZGF0YSBmcm9tIEJpdGNvaW5UeDogJHtlfWBcbiAgICAgICk7XG4gICAgICBpZiAoZSBpbnN0YW5jZW9mIEVycm9yICYmIGUuc3RhY2spIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoZS5zdGFjayk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH07XG5cbiAgLyoqXG4gICAqIGV4dHJhY3RzIFJvc2VuRGF0YSBjaHVua3MgZnJvbSB0eCBvdXRwdXRzXG4gICAqIEBwYXJhbSBvdXRwdXRzXG4gICAqIEByZXR1cm4gYXJyYXkgb2YgTG9ja0RhdGFDaHVua1xuICAgKi9cbiAgcHJvdGVjdGVkIGdldExvY2tEYXRhQ2h1bmtzID0gKFxuICAgIG91dHB1dHM6IEJpdGNvaW5UeE91dHB1dFtdXG4gICk6IExvY2tEYXRhQ2h1bmtbXSA9PiB7XG4gICAgY29uc3QgbG9ja0RhdGFDaHVua3M6IExvY2tEYXRhQ2h1bmtbXSA9IFtdO1xuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCA0OyBpKyspIHtcbiAgICAgIC8vIHRoZSBmaXJzdCAzIGJveGVzIGFyZSBleHBlY3RlZCB0byBiZSBjaGFuZ2UsIE9QX1JFVFVSTiBhbmQgbG9jayBhZGRyZXNzLCB3aGljaCBzaG91bGQgbm90IGJlIGNvbnNpZGVyZWQgZm9yIGRhdGEgY2h1bmtzXG4gICAgICBmb3IgKGxldCBib3hJbmRleCA9IDM7IGJveEluZGV4IDwgb3V0cHV0cy5sZW5ndGg7IGJveEluZGV4KyspIHtcbiAgICAgICAgY29uc3Qgb3V0cHV0ID0gb3V0cHV0c1tib3hJbmRleF07XG5cbiAgICAgICAgaWYgKG91dHB1dC52YWx1ZSAhPT0gQmlnSW50KG1pblV0eG9WYWx1ZSkgKyBCaWdJbnQoaSkpIGNvbnRpbnVlOyAvLyB3cm9uZyBkYXRhIGluZGV4XG4gICAgICAgIGlmIChvdXRwdXQuc2NyaXB0UHViS2V5LnNsaWNlKDAsIDQpICE9PSAnMDAxNCcpIGNvbnRpbnVlOyAvLyBub3QgYSBuYXRpdmUtc2Vnd2l0IHV0eG9cblxuICAgICAgICBsb2NrRGF0YUNodW5rcy5wdXNoKHtcbiAgICAgICAgICBpbmRleDogaSxcbiAgICAgICAgICBkYXRhOiBvdXRwdXQuc2NyaXB0UHViS2V5LnNsaWNlKDQpLFxuICAgICAgICB9KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGxvY2tEYXRhQ2h1bmtzO1xuICB9O1xuXG4gIC8qKlxuICAgKiBjb21iaW5lcyBsb2NrIGRhdGEgY2h1bmtzIGludG8gbG9jayBkYXRhIG9iamVjdFxuICAgKiBAcGFyYW0gbG9ja0RhdGFDaHVua3NcbiAgICogQHJldHVybiBsb2NrIGRhdGEgb2JqZWN0IG9yIHVuZGVmaW5lZFxuICAgKi9cbiAgcHJvdGVjdGVkIGxvY2tEYXRhRnJvbUNodW5rcyA9IChcbiAgICBsb2NrRGF0YUNodW5rczogTG9ja0RhdGFDaHVua1tdXG4gICk6IE1pbmltYWxPbkNoYWluUm9zZW5EYXRhIHwgdW5kZWZpbmVkID0+IHtcbiAgICBsZXQgbG9ja0RhdGE6IE1pbmltYWxPbkNoYWluUm9zZW5EYXRhIHwgdW5kZWZpbmVkO1xuXG4gICAgdHJ5IHtcbiAgICAgIGxvY2tEYXRhID0gcGFyc2VBZ2dyZWdhdGVkRGF0YShcbiAgICAgICAgbG9ja0RhdGFDaHVua3MubWFwKChjaHVuaykgPT4gY2h1bmsuZGF0YSkuam9pbignJylcbiAgICAgICk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgIGBGYWlsZWQgdG8gZXh0cmFjdCBkYXRhIGZyb20gY2h1bmtzIFske0pzb25CaWdJbnQuc3RyaW5naWZ5KFxuICAgICAgICAgIGxvY2tEYXRhQ2h1bmtzXG4gICAgICAgICl9XTogJHtlfWBcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGxvY2tEYXRhO1xuICB9O1xuXG4gIC8qKlxuICAgKiBjaGVjayBsb2NrIGJveCBleGlzdHMgaW4gdGhlIHR4IG91dHB1dHNcbiAgICogQHBhcmFtIG91dHB1dHNcbiAgICogQHJldHVybiBib29sZWFuXG4gICAqL1xuICBwcm90ZWN0ZWQgdmFsaWRhdGVMb2NrID0gKG91dHB1dHM6IEJpdGNvaW5UeE91dHB1dFtdKTogYm9vbGVhbiA9PiB7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBvdXRwdXRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBpZiAob3V0cHV0c1tpXS5zY3JpcHRQdWJLZXkgPT09IHRoaXMubG9ja1NjcmlwdFB1YktleSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9O1xufVxuIl19
@@ -5,7 +5,7 @@ import { TokenMap } from '@rosen-bridge/tokens';
5
5
  import { AbstractLogger } from '@rosen-bridge/abstract-logger';
6
6
  import { LockDataChunk } from './types';
7
7
  import { MinimalOnChainRosenData } from '../../types';
8
- export declare class RunesRpcRosenExtractor extends AbstractRosenDataExtractor<BitcoinRpcTransaction> {
8
+ export declare class BitcoinRunesRpcRosenExtractor extends AbstractRosenDataExtractor<BitcoinRpcTransaction> {
9
9
  readonly chain = "bitcoin-runes";
10
10
  protected lockScriptPubKey: string;
11
11
  constructor(lockAddress: string, tokens: TokenMap, logger?: AbstractLogger);
@@ -33,4 +33,4 @@ export declare class RunesRpcRosenExtractor extends AbstractRosenDataExtractor<B
33
33
  */
34
34
  protected validateLock: (outputs: BitcoinRpcTxOutput[]) => boolean;
35
35
  }
36
- //# sourceMappingURL=RunesRpcRosenExtractor.d.ts.map
36
+ //# sourceMappingURL=BitcoinRunesRpcRosenExtractor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BitcoinRunesRpcRosenExtractor.d.ts","sourceRoot":"","sources":["../../../lib/getRosenData/bitcoin-runes/BitcoinRunesRpcRosenExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,0BAA0B,MAAM,wCAAwC,CAAC;AAEhF,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAI/D,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAGtD,qBAAa,6BAA8B,SAAQ,0BAA0B,CAAC,qBAAqB,CAAC;IAClG,QAAQ,CAAC,KAAK,mBAAuB;IACrC,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAC;gBAEvB,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,cAAc;IAK1E;;;OAGG;IACH,cAAc,GACZ,aAAa,qBAAqB,KACjC,SAAS,GAAG,SAAS,CAkDtB;IAEF;;;;OAIG;IACH,SAAS,CAAC,iBAAiB,GACzB,SAAS,kBAAkB,EAAE,KAC5B,aAAa,EAAE,CAoBhB;IAEF;;;;OAIG;IACH,SAAS,CAAC,kBAAkB,GAC1B,gBAAgB,aAAa,EAAE,KAC9B,uBAAuB,GAAG,SAAS,CAgBpC;IAEF;;;;OAIG;IACH,SAAS,CAAC,YAAY,GAAI,SAAS,kBAAkB,EAAE,KAAG,OAAO,CAO/D;CACH"}
@@ -0,0 +1,114 @@
1
+ import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
2
+ import { BITCOIN_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 BitcoinRunesRpcRosenExtractor extends AbstractRosenDataExtractor {
8
+ chain = BITCOIN_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
+ // the first 3 boxes are expected to be change, OP_RETURN and lock address, which should not be considered for data chunks
70
+ for (let boxIndex = 3; boxIndex < outputs.length; boxIndex++) {
71
+ const output = outputs[boxIndex];
72
+ if (output.value * 10 ** 8 !== minUtxoValue + i)
73
+ continue; // wrong data index
74
+ if (output.scriptPubKey.hex.slice(0, 4) !== '0014')
75
+ continue; // not a native-segwit utxo
76
+ lockDataChunks.push({
77
+ index: i,
78
+ data: output.scriptPubKey.hex.slice(4),
79
+ });
80
+ break;
81
+ }
82
+ }
83
+ return lockDataChunks;
84
+ };
85
+ /**
86
+ * combines lock data chunks into lock data object
87
+ * @param lockDataChunks
88
+ * @return lock data object or undefined
89
+ */
90
+ lockDataFromChunks = (lockDataChunks) => {
91
+ let lockData;
92
+ try {
93
+ lockData = parseAggregatedData(lockDataChunks.map((chunk) => chunk.data).join(''));
94
+ }
95
+ catch (e) {
96
+ this.logger.debug(`Failed to extract data from chunks [${JsonBigInt.stringify(lockDataChunks)}]: ${e}`);
97
+ }
98
+ return lockData;
99
+ };
100
+ /**
101
+ * check lock box exists in the tx outputs
102
+ * @param outputs
103
+ * @return boolean
104
+ */
105
+ validateLock = (outputs) => {
106
+ for (let i = 0; i < outputs.length; i++) {
107
+ if (outputs[i].scriptPubKey.hex === this.lockScriptPubKey) {
108
+ return true;
109
+ }
110
+ }
111
+ return false;
112
+ };
113
+ }
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQml0Y29pblJ1bmVzUnBjUm9zZW5FeHRyYWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2JpdGNvaW4tcnVuZXMvQml0Y29pblJ1bmVzUnBjUm9zZW5FeHRyYWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTywwQkFBMEIsTUFBTSx3Q0FBd0MsQ0FBQztBQUNoRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFJL0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDOUMsT0FBTyxVQUFVLE1BQU0sMkJBQTJCLENBQUM7QUFHbkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUUzQyxNQUFNLE9BQU8sNkJBQThCLFNBQVEsMEJBQWlEO0lBQ3pGLEtBQUssR0FBRyxtQkFBbUIsQ0FBQztJQUMzQixnQkFBZ0IsQ0FBUztJQUVuQyxZQUFZLFdBQW1CLEVBQUUsTUFBZ0IsRUFBRSxNQUF1QjtRQUN4RSxLQUFLLENBQUMsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVEOzs7T0FHRztJQUNILGNBQWMsR0FBRyxDQUNmLFdBQWtDLEVBQ1gsRUFBRTtRQUN6QixNQUFNLFNBQVMsR0FBRyxrQ0FBa0MsV0FBVyxDQUFDLElBQUksR0FBRyxDQUFDO1FBQ3hFLElBQUksQ0FBQztZQUNILGtDQUFrQztZQUNsQyxNQUFNLE9BQU8sR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDO1lBQ2pDLElBQUksT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FB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QUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztpQkFDdkMsQ0FBQyxDQUFDO2dCQUNILE1BQU07WUFDUixDQUFDO1FBQ0gsQ0FBQztRQUVELE9BQU8sY0FBYyxDQUFDO0lBQ3hCLENBQUMsQ0FBQztJQUVGOzs7O09BSUc7SUFDTyxrQkFBa0IsR0FBRyxDQUM3QixjQUErQixFQUNNLEVBQUU7UUFDdkMsSUFBSSxRQUE2QyxDQUFDO1FBRWxELElBQUksQ0FBQztZQUNILFFBQVEsR0FBRyxtQkFBbUIsQ0FDNUIsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FDbkQsQ0FBQztRQUNKLENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ1gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQ2YsdUNBQXVDLFVBQVUsQ0FBQyxTQUFTLENBQ3pELGNBQWMsQ0FDZixNQUFNLENBQUMsRUFBRSxDQUNYLENBQUM7UUFDSixDQUFDO1FBRUQsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQyxDQUFDO0lBRUY7Ozs7T0FJRztJQUNPLFlBQVksR0FBRyxDQUFDLE9BQTZCLEVBQVcsRUFBRTtRQUNsRSxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ3hDLElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxHQUFHLEtBQUssSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7Z0JBQzFELE9BQU8sSUFBSSxDQUFDO1lBQ2QsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUMsQ0FBQztDQUNIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm9zZW5EYXRhIH0gZnJvbSAnLi4vYWJzdHJhY3QvdHlwZXMnO1xuaW1wb3J0IEFic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yIGZyb20gJy4uL2Fic3RyYWN0L0Fic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yJztcbmltcG9ydCB7IEJJVENPSU5fUlVORVNfQ0hBSU4gfSBmcm9tICcuLi9jb25zdCc7XG5pbXBvcnQgeyBCaXRjb2luUnBjVHJhbnNhY3Rpb24sIEJpdGNvaW5ScGNUeE91dHB1dCB9IGZyb20gJy4uL2JpdGNvaW4vdHlwZXMnO1xuaW1wb3J0IHsgVG9rZW5NYXAgfSBmcm9tICdAcm9zZW4tYnJpZGdlL3Rva2Vucyc7XG5pbXBvcnQgeyBBYnN0cmFjdExvZ2dlciB9IGZyb20gJ0Byb3Nlbi1icmlkZ2UvYWJzdHJhY3QtbG9nZ2VyJztcbmltcG9ydCB7IGFkZHJlc3MgfSBmcm9tICdiaXRjb2luanMtbGliJztcbmltcG9ydCB7IHBhcnNlQWdncmVnYXRlZERhdGEgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCBKc29uQmlnSW50IGZyb20gJ0Byb3Nlbi1icmlkZ2UvanNvbi1iaWdpbnQnO1xuaW1wb3J0IHsgTG9ja0RhdGFDaHVuayB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgTWluaW1hbE9uQ2hhaW5Sb3NlbkRhdGEgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBtaW5VdHhvVmFsdWUgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5cbmV4cG9ydCBjbGFzcyBCaXRjb2luUnVuZXNScGNSb3NlbkV4dHJhY3RvciBleHRlbmRzIEFic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yPEJpdGNvaW5ScGNUcmFuc2FjdGlvbj4ge1xuICByZWFkb25seSBjaGFpbiA9IEJJVENPSU5fUlVORVNfQ0hBSU47XG4gIHByb3RlY3RlZCBsb2NrU2NyaXB0UHViS2V5OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IobG9ja0FkZHJlc3M6IHN0cmluZywgdG9rZW5zOiBUb2tlbk1hcCwgbG9nZ2VyPzogQWJzdHJhY3RMb2dnZXIpIHtcbiAgICBzdXBlcihsb2NrQWRkcmVzcywgdG9rZW5zLCBsb2dnZXIpO1xuICAgIHRoaXMubG9ja1NjcmlwdFB1YktleSA9IGFkZHJlc3MudG9PdXRwdXRTY3JpcHQobG9ja0FkZHJlc3MpLnRvU3RyaW5nKCdoZXgnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBleHRyYWN0cyBSb3NlbkRhdGEgZnJvbSBnaXZlbiBsb2NrIHRyYW5zYWN0aW9uIGluIFJwYyBmb3JtYXRcbiAgICogQHBhcmFtIHRyYW5zYWN0aW9uIHRoZSBsb2NrIHRyYW5zYWN0aW9uIGluIFJwYyBmb3JtYXRcbiAgICovXG4gIGV4dHJhY3RSYXdEYXRhID0gKFxuICAgIHRyYW5zYWN0aW9uOiBCaXRjb2luUnBjVHJhbnNhY3Rpb25cbiAgKTogUm9zZW5EYXRhIHwgdW5kZWZpbmVkID0+IHtcbiAgICBjb25zdCBiYXNlRXJyb3IgPSBgTm8gcm9zZW4gZGF0YSBpcyBmb3VuZCBmb3IgdHggWyR7dHJhbnNhY3Rpb24udHhpZH1dYDtcbiAgICB0cnkge1xuICAgICAgLy8gdmFsaWRhdGUgbnVtYmVyIG9mIG91dHB1dCBib3hlc1xuICAgICAgY29uc3Qgb3V0cHV0cyA9IHRyYW5zYWN0aW9uLnZvdXQ7XG4gICAgICBpZiAob3V0cHV0cy5sZW5ndGggPCA1KSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKGJhc2VFcnJvciArIGA6IEluc3VmZmljaWVudCBudW1iZXIgb2YgYm94ZXNgKTtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cblxuICAgICAgLy8gdmFsaWRhdGUgbG9jayBjb25kaXRpb25zXG4gICAgICBjb25zdCB2YWxpZExvY2sgPSB0aGlzLnZhbGlkYXRlTG9jayhvdXRwdXRzKTtcblxuICAgICAgaWYgKCF2YWxpZExvY2spIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoYmFzZUVycm9yICsgYDogRmFpbGVkIHRvIGZpbmQgcm9zZW4gbG9jayB1dHhvYCk7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIC8vIHZhbGlkYXRlIGRhdGEgY29uZGl0aW9uc1xuICAgICAgY29uc3QgbG9ja0RhdGFDaHVua3MgPSB0aGlzLmdldExvY2tEYXRhQ2h1bmtzKG91dHB1dHMpO1xuICAgICAgY29uc3QgbG9ja0RhdGEgPSB0aGlzLmxvY2tEYXRhRnJvbUNodW5rcyhsb2NrRGF0YUNodW5rcyk7XG5cbiAgICAgIGlmICghbG9ja0RhdGEpIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgICAgYmFzZUVycm9yICsgYDogRmFpbGVkIHRvIGV4dHJhY3Qgcm9zZW4gZGF0YSBmcm9tIHV0eG9zYFxuICAgICAgICApO1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBmcm9tQWRkcmVzcyA9IGBib3g6JHt0cmFuc2FjdGlvbi52aW5bMF0udHhpZH0uJHt0cmFuc2FjdGlvbi52aW5bMF0udm91dH1gO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdG9DaGFpbjogbG9ja0RhdGEudG9DaGFpbixcbiAgICAgICAgdG9BZGRyZXNzOiBsb2NrRGF0YS50b0FkZHJlc3MsXG4gICAgICAgIGJyaWRnZUZlZTogbG9ja0RhdGEuYnJpZGdlRmVlLFxuICAgICAgICBuZXR3b3JrRmVlOiBsb2NrRGF0YS5uZXR3b3JrRmVlLFxuICAgICAgICBmcm9tQWRkcmVzczogZnJvbUFkZHJlc3MsXG4gICAgICAgIHNvdXJjZUNoYWluVG9rZW5JZDogJycsXG4gICAgICAgIGFtb3VudDogJycsXG4gICAgICAgIHRhcmdldENoYWluVG9rZW5JZDogJycsXG4gICAgICAgIHNvdXJjZVR4SWQ6IHRyYW5zYWN0aW9uLnR4aWQsXG4gICAgICB9O1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICBgQW4gZXJyb3Igb2NjdXJyZWQgd2hpbGUgZ2V0dGluZyBSdW5lcyByb3NlbiBkYXRhIGZyb20gUnBjOiAke2V9YFxuICAgICAgKTtcbiAgICAgIGlmIChlIGluc3RhbmNlb2YgRXJyb3IgJiYgZS5zdGFjaykge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhlLnN0YWNrKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfTtcblxuICAvKipcbiAgICogZXh0cmFjdHMgUm9zZW5EYXRhIGNodW5rcyBmcm9tIHR4IG91dHB1dHNcbiAgICogQHBhcmFtIG91dHB1dHNcbiAgICogQHJldHVybiBhcnJheSBvZiBMb2NrRGF0YUNodW5rXG4gICAqL1xuICBwcm90ZWN0ZWQgZ2V0TG9ja0RhdGFDaHVua3MgPSAoXG4gICAgb3V0cHV0czogQml0Y29pblJwY1R4T3V0cHV0W11cbiAgKTogTG9ja0RhdGFDaHVua1tdID0+IHtcbiAgICBjb25zdCBsb2NrRGF0YUNodW5rczogTG9ja0RhdGFDaHVua1tdID0gW107XG5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IDQ7IGkrKykge1xuICAgICAgLy8gdGhlIGZpcnN0IDMgYm94ZXMgYXJlIGV4cGVjdGVkIHRvIGJlIGNoYW5nZSwgT1BfUkVUVVJOIGFuZCBsb2NrIGFkZHJlc3MsIHdoaWNoIHNob3VsZCBub3QgYmUgY29uc2lkZXJlZCBmb3IgZGF0YSBjaHVua3NcbiAgICAgIGZvciAobGV0IGJveEluZGV4ID0gMzsgYm94SW5kZXggPCBvdXRwdXRzLmxlbmd0aDsgYm94SW5kZXgrKykge1xuICAgICAgICBjb25zdCBvdXRwdXQgPSBvdXRwdXRzW2JveEluZGV4XTtcblxuICAgICAgICBpZiAob3V0cHV0LnZhbHVlICogMTAgKiogOCAhPT0gbWluVXR4b1ZhbHVlICsgaSkgY29udGludWU7IC8vIHdyb25nIGRhdGEgaW5kZXhcbiAgICAgICAgaWYgKG91dHB1dC5zY3JpcHRQdWJLZXkuaGV4LnNsaWNlKDAsIDQpICE9PSAnMDAxNCcpIGNvbnRpbnVlOyAvLyBub3QgYSBuYXRpdmUtc2Vnd2l0IHV0eG9cblxuICAgICAgICBsb2NrRGF0YUNodW5rcy5wdXNoKHtcbiAgICAgICAgICBpbmRleDogaSxcbiAgICAgICAgICBkYXRhOiBvdXRwdXQuc2NyaXB0UHViS2V5LmhleC5zbGljZSg0KSxcbiAgICAgICAgfSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBsb2NrRGF0YUNodW5rcztcbiAgfTtcblxuICAvKipcbiAgICogY29tYmluZXMgbG9jayBkYXRhIGNodW5rcyBpbnRvIGxvY2sgZGF0YSBvYmplY3RcbiAgICogQHBhcmFtIGxvY2tEYXRhQ2h1bmtzXG4gICAqIEByZXR1cm4gbG9jayBkYXRhIG9iamVjdCBvciB1bmRlZmluZWRcbiAgICovXG4gIHByb3RlY3RlZCBsb2NrRGF0YUZyb21DaHVua3MgPSAoXG4gICAgbG9ja0RhdGFDaHVua3M6IExvY2tEYXRhQ2h1bmtbXVxuICApOiBNaW5pbWFsT25DaGFpblJvc2VuRGF0YSB8IHVuZGVmaW5lZCA9PiB7XG4gICAgbGV0IGxvY2tEYXRhOiBNaW5pbWFsT25DaGFpblJvc2VuRGF0YSB8IHVuZGVmaW5lZDtcblxuICAgIHRyeSB7XG4gICAgICBsb2NrRGF0YSA9IHBhcnNlQWdncmVnYXRlZERhdGEoXG4gICAgICAgIGxvY2tEYXRhQ2h1bmtzLm1hcCgoY2h1bmspID0+IGNodW5rLmRhdGEpLmpvaW4oJycpXG4gICAgICApO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICBgRmFpbGVkIHRvIGV4dHJhY3QgZGF0YSBmcm9tIGNodW5rcyBbJHtKc29uQmlnSW50LnN0cmluZ2lmeShcbiAgICAgICAgICBsb2NrRGF0YUNodW5rc1xuICAgICAgICApfV06ICR7ZX1gXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBsb2NrRGF0YTtcbiAgfTtcblxuICAvKipcbiAgICogY2hlY2sgbG9jayBib3ggZXhpc3RzIGluIHRoZSB0eCBvdXRwdXRzXG4gICAqIEBwYXJhbSBvdXRwdXRzXG4gICAqIEByZXR1cm4gYm9vbGVhblxuICAgKi9cbiAgcHJvdGVjdGVkIHZhbGlkYXRlTG9jayA9IChvdXRwdXRzOiBCaXRjb2luUnBjVHhPdXRwdXRbXSk6IGJvb2xlYW4gPT4ge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb3V0cHV0cy5sZW5ndGg7IGkrKykge1xuICAgICAgaWYgKG91dHB1dHNbaV0uc2NyaXB0UHViS2V5LmhleCA9PT0gdGhpcy5sb2NrU2NyaXB0UHViS2V5KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH07XG59XG4iXX0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../lib/getRosenData/bitcoin-runes/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,MAAM,CAAC"}
@@ -0,0 +1,2 @@
1
+ export const minUtxoValue = 294;
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL2dldFJvc2VuRGF0YS9iaXRjb2luLXJ1bmVzL2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsR0FBRyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IG1pblV0eG9WYWx1ZSA9IDI5NDtcbiJdfQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../lib/getRosenData/bitcoin-runes/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2JpdGNvaW4tcnVuZXMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIExvY2tEYXRhQ2h1bmsgPSB7IGluZGV4OiBudW1iZXI7IGRhdGE6IHN0cmluZyB9O1xuIl19
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../lib/getRosenData/bitcoin-runes/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAEtD;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAC9B,iBAAiB,MAAM,KACtB,uBAEF,CAAC"}
@@ -0,0 +1,9 @@
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2JpdGNvaW4tcnVuZXMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUc3Qzs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUNqQyxlQUF1QixFQUNFLEVBQUU7SUFDM0IsT0FBTyxjQUFjLENBQUMsZUFBZSxDQUFDLENBQUM7QUFDekMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcGFyc2VSb3NlbkRhdGEgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyBNaW5pbWFsT25DaGFpblJvc2VuRGF0YSB9IGZyb20gJy4uLy4uL3R5cGVzJztcblxuLyoqXG4gKiBleHRyYWN0cyByb3NlbiBkYXRhIGZyb20gcmF3IGhleCBkYXRhXG4gKiBAcGFyYW0gc2NyaXB0UHViS2V5SGV4XG4gKi9cbmV4cG9ydCBjb25zdCBwYXJzZUFnZ3JlZ2F0ZWREYXRhID0gKFxuICBzY3JpcHRQdWJLZXlIZXg6IHN0cmluZ1xuKTogTWluaW1hbE9uQ2hhaW5Sb3NlbkRhdGEgPT4ge1xuICByZXR1cm4gcGFyc2VSb3NlbkRhdGEoc2NyaXB0UHViS2V5SGV4KTtcbn07XG4iXX0=
@@ -8,6 +8,6 @@ export declare const CARDANO_CHAIN = "cardano";
8
8
  export declare const ERGO_CHAIN = "ergo";
9
9
  export declare const DOGE_CHAIN = "doge";
10
10
  export declare const DOGE_NATIVE_TOKEN = "doge";
11
- export declare const RUNES_CHAIN = "bitcoin-runes";
11
+ export declare const BITCOIN_RUNES_CHAIN = "bitcoin-runes";
12
12
  export declare const SUPPORTED_CHAINS: string[];
13
13
  //# sourceMappingURL=const.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../../lib/getRosenData/const.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,QAAQ,CAAC;AAC1C,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AACvC,eAAO,MAAM,oBAAoB,QAAQ,CAAC;AAC1C,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,cAAc,aAAa,CAAC;AACzC,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,UAAU,SAAS,CAAC;AACjC,eAAO,MAAM,UAAU,SAAS,CAAC;AACjC,eAAO,MAAM,iBAAiB,SAAS,CAAC;AACxC,eAAO,MAAM,WAAW,kBAAkB,CAAC;AAC3C,eAAO,MAAM,gBAAgB,UAQ5B,CAAC"}
1
+ {"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../../lib/getRosenData/const.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,QAAQ,CAAC;AAC1C,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AACvC,eAAO,MAAM,oBAAoB,QAAQ,CAAC;AAC1C,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,cAAc,aAAa,CAAC;AACzC,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,UAAU,SAAS,CAAC;AACjC,eAAO,MAAM,UAAU,SAAS,CAAC;AACjC,eAAO,MAAM,iBAAiB,SAAS,CAAC;AACxC,eAAO,MAAM,mBAAmB,kBAAkB,CAAC;AACnD,eAAO,MAAM,gBAAgB,UAQ5B,CAAC"}
@@ -8,7 +8,7 @@ export const CARDANO_CHAIN = 'cardano';
8
8
  export const ERGO_CHAIN = 'ergo';
9
9
  export const DOGE_CHAIN = 'doge';
10
10
  export const DOGE_NATIVE_TOKEN = 'doge';
11
- export const RUNES_CHAIN = 'bitcoin-runes';
11
+ export const BITCOIN_RUNES_CHAIN = 'bitcoin-runes';
12
12
  export const SUPPORTED_CHAINS = [
13
13
  ERGO_CHAIN,
14
14
  CARDANO_CHAIN,
@@ -16,6 +16,6 @@ export const SUPPORTED_CHAINS = [
16
16
  ETHEREUM_CHAIN,
17
17
  BINANCE_CHAIN,
18
18
  DOGE_CHAIN,
19
- RUNES_CHAIN,
19
+ BITCOIN_RUNES_CHAIN,
20
20
  ];
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2NvbnN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLEtBQUssQ0FBQztBQUMxQyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxLQUFLLENBQUM7QUFDdkMsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsS0FBSyxDQUFDO0FBQzFDLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxTQUFTLENBQUM7QUFDdkMsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLFVBQVUsQ0FBQztBQUN6QyxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsU0FBUyxDQUFDO0FBQ3ZDLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxTQUFTLENBQUM7QUFDdkMsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQztBQUNqQyxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDO0FBQ2pDLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLE1BQU0sQ0FBQztBQUN4QyxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsZUFBZSxDQUFDO0FBQzNDLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHO0lBQzlCLFVBQVU7SUFDVixhQUFhO0lBQ2IsYUFBYTtJQUNiLGNBQWM7SUFDZCxhQUFhO0lBQ2IsVUFBVTtJQUNWLFdBQVc7Q0FDWixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IENBUkRBTk9fTkFUSVZFX1RPS0VOID0gJ2FkYSc7XG5leHBvcnQgY29uc3QgRVJHT19OQVRJVkVfVE9LRU4gPSAnZXJnJztcbmV4cG9ydCBjb25zdCBCSVRDT0lOX05BVElWRV9UT0tFTiA9ICdidGMnO1xuZXhwb3J0IGNvbnN0IEJJVENPSU5fQ0hBSU4gPSAnYml0Y29pbic7XG5leHBvcnQgY29uc3QgRVRIRVJFVU1fQ0hBSU4gPSAnZXRoZXJldW0nO1xuZXhwb3J0IGNvbnN0IEJJTkFOQ0VfQ0hBSU4gPSAnYmluYW5jZSc7XG5leHBvcnQgY29uc3QgQ0FSREFOT19DSEFJTiA9ICdjYXJkYW5vJztcbmV4cG9ydCBjb25zdCBFUkdPX0NIQUlOID0gJ2VyZ28nO1xuZXhwb3J0IGNvbnN0IERPR0VfQ0hBSU4gPSAnZG9nZSc7XG5leHBvcnQgY29uc3QgRE9HRV9OQVRJVkVfVE9LRU4gPSAnZG9nZSc7XG5leHBvcnQgY29uc3QgUlVORVNfQ0hBSU4gPSAnYml0Y29pbi1ydW5lcyc7XG5leHBvcnQgY29uc3QgU1VQUE9SVEVEX0NIQUlOUyA9IFtcbiAgRVJHT19DSEFJTixcbiAgQ0FSREFOT19DSEFJTixcbiAgQklUQ09JTl9DSEFJTixcbiAgRVRIRVJFVU1fQ0hBSU4sXG4gIEJJTkFOQ0VfQ0hBSU4sXG4gIERPR0VfQ0hBSU4sXG4gIFJVTkVTX0NIQUlOLFxuXTtcbiJdfQ==
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2NvbnN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLEtBQUssQ0FBQztBQUMxQyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxLQUFLLENBQUM7QUFDdkMsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsS0FBSyxDQUFDO0FBQzFDLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxTQUFTLENBQUM7QUFDdkMsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLFVBQVUsQ0FBQztBQUN6QyxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsU0FBUyxDQUFDO0FBQ3ZDLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxTQUFTLENBQUM7QUFDdkMsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQztBQUNqQyxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDO0FBQ2pDLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLE1BQU0sQ0FBQztBQUN4QyxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxlQUFlLENBQUM7QUFDbkQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUc7SUFDOUIsVUFBVTtJQUNWLGFBQWE7SUFDYixhQUFhO0lBQ2IsY0FBYztJQUNkLGFBQWE7SUFDYixVQUFVO0lBQ1YsbUJBQW1CO0NBQ3BCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgQ0FSREFOT19OQVRJVkVfVE9LRU4gPSAnYWRhJztcbmV4cG9ydCBjb25zdCBFUkdPX05BVElWRV9UT0tFTiA9ICdlcmcnO1xuZXhwb3J0IGNvbnN0IEJJVENPSU5fTkFUSVZFX1RPS0VOID0gJ2J0Yyc7XG5leHBvcnQgY29uc3QgQklUQ09JTl9DSEFJTiA9ICdiaXRjb2luJztcbmV4cG9ydCBjb25zdCBFVEhFUkVVTV9DSEFJTiA9ICdldGhlcmV1bSc7XG5leHBvcnQgY29uc3QgQklOQU5DRV9DSEFJTiA9ICdiaW5hbmNlJztcbmV4cG9ydCBjb25zdCBDQVJEQU5PX0NIQUlOID0gJ2NhcmRhbm8nO1xuZXhwb3J0IGNvbnN0IEVSR09fQ0hBSU4gPSAnZXJnbyc7XG5leHBvcnQgY29uc3QgRE9HRV9DSEFJTiA9ICdkb2dlJztcbmV4cG9ydCBjb25zdCBET0dFX05BVElWRV9UT0tFTiA9ICdkb2dlJztcbmV4cG9ydCBjb25zdCBCSVRDT0lOX1JVTkVTX0NIQUlOID0gJ2JpdGNvaW4tcnVuZXMnO1xuZXhwb3J0IGNvbnN0IFNVUFBPUlRFRF9DSEFJTlMgPSBbXG4gIEVSR09fQ0hBSU4sXG4gIENBUkRBTk9fQ0hBSU4sXG4gIEJJVENPSU5fQ0hBSU4sXG4gIEVUSEVSRVVNX0NIQUlOLFxuICBCSU5BTkNFX0NIQUlOLFxuICBET0dFX0NIQUlOLFxuICBCSVRDT0lOX1JVTkVTX0NIQUlOLFxuXTtcbiJdfQ==
package/dist/index.d.ts CHANGED
@@ -16,8 +16,8 @@ export { RosenData, TokenTransformation } from './getRosenData/abstract/types';
16
16
  export { DogeEsploraRosenExtractor } from './getRosenData/doge/DogeEsploraRosenExtractor';
17
17
  export { DogeRosenExtractor } from './getRosenData/doge/DogeRosenExtractor';
18
18
  export { DogeRpcRosenExtractor } from './getRosenData/doge/DogeRpcRosenExtractor';
19
- export { RunesEsploraRosenExtractor } from './getRosenData/runes/RunesEsploraRosenExtractor';
20
- export { RunesRosenExtractor } from './getRosenData/runes/RunesRosenExtractor';
21
- export { RunesRpcRosenExtractor } from './getRosenData/runes/RunesRpcRosenExtractor';
19
+ export { BitcoinRunesEsploraRosenExtractor } from './getRosenData/bitcoin-runes/BitcoinRunesEsploraRosenExtractor';
20
+ export { BitcoinRunesRosenExtractor } from './getRosenData/bitcoin-runes/BitcoinRunesRosenExtractor';
21
+ export { BitcoinRunesRpcRosenExtractor } from './getRosenData/bitcoin-runes/BitcoinRunesRpcRosenExtractor';
22
22
  export { parseRosenData } from './utils';
23
23
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
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"}
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,iCAAiC,EAAE,MAAM,gEAAgE,CAAC;AACnH,OAAO,EAAE,0BAA0B,EAAE,MAAM,yDAAyD,CAAC;AACrG,OAAO,EAAE,6BAA6B,EAAE,MAAM,4DAA4D,CAAC;AAC3G,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -18,8 +18,8 @@ export { ErgoNodeRosenExtractor } from './getRosenData/ergo/ErgoNodeRosenExtract
18
18
  export { DogeEsploraRosenExtractor } from './getRosenData/doge/DogeEsploraRosenExtractor';
19
19
  export { DogeRosenExtractor } from './getRosenData/doge/DogeRosenExtractor';
20
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';
21
+ export { BitcoinRunesEsploraRosenExtractor } from './getRosenData/bitcoin-runes/BitcoinRunesEsploraRosenExtractor';
22
+ export { BitcoinRunesRosenExtractor } from './getRosenData/bitcoin-runes/BitcoinRunesRosenExtractor';
23
+ export { BitcoinRunesRpcRosenExtractor } from './getRosenData/bitcoin-runes/BitcoinRunesRpcRosenExtractor';
24
24
  export { parseRosenData } from './utils';
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEdBQUcsTUFBTSx5QkFBeUIsQ0FBQztBQUUxQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7QUFFaEIsT0FBTyxFQUFFLE9BQU8sSUFBSSwwQkFBMEIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzNHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ25HLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ3pHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ25HLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRXBGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzFGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbml0RWNjTGliIH0gZnJvbSAnYml0Y29pbmpzLWxpYic7XG5pbXBvcnQgZWNjIGZyb20gJ0BiaXRjb2luZXJsYWIvc2VjcDI1NmsxJztcblxuaW5pdEVjY0xpYihlY2MpO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIEFic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yIH0gZnJvbSAnLi9nZXRSb3NlbkRhdGEvYWJzdHJhY3QvQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3InO1xuZXhwb3J0IHsgQml0Y29pbkVzcGxvcmFSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2JpdGNvaW4vQml0Y29pbkVzcGxvcmFSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBCaXRjb2luUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9iaXRjb2luL0JpdGNvaW5Sb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBCaXRjb2luUnBjUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9iaXRjb2luL0JpdGNvaW5ScGNSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBFdm1FdGhlcnNSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2V2bS9Fdm1FdGhlcnNSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBFdm1ScGNSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2V2bS9Fdm1ScGNSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBFdm1Sb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2V2bS9Fdm1Sb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBDYXJkYW5vS29pb3NSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2NhcmRhbm8vQ2FyZGFub0tvaW9zUm9zZW5FeHRyYWN0b3InO1xuZXhwb3J0IHsgQ2FyZGFub09nbWlvc1Jvc2VuRXh0cmFjdG9yIH0gZnJvbSAnLi9nZXRSb3NlbkRhdGEvY2FyZGFuby9DYXJkYW5vT2dtaW9zUm9zZW5FeHRyYWN0b3InO1xuZXhwb3J0IHsgQ2FyZGFub1Jvc2VuRXh0cmFjdG9yIH0gZnJvbSAnLi9nZXRSb3NlbkRhdGEvY2FyZGFuby9DYXJkYW5vUm9zZW5FeHRyYWN0b3InO1xuZXhwb3J0IHsgQ2FyZGFub0Jsb2NrRnJvc3RSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2NhcmRhbm8vQ2FyZGFub0Jsb2NrRnJvc3RSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBDYXJkYW5vR3JhcGhRTFJvc2VuRXh0cmFjdG9yIH0gZnJvbSAnLi9nZXRSb3NlbkRhdGEvY2FyZGFuby9DYXJkYW5vR3JhcGhRTFJvc2VuRXh0cmFjdG9yJztcbmV4cG9ydCB7IEVyZ29Sb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2VyZ28vRXJnb1Jvc2VuRXh0cmFjdG9yJztcbmV4cG9ydCB7IEVyZ29Ob2RlUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9lcmdvL0VyZ29Ob2RlUm9zZW5FeHRyYWN0b3InO1xuZXhwb3J0IHsgUm9zZW5EYXRhLCBUb2tlblRyYW5zZm9ybWF0aW9uIH0gZnJvbSAnLi9nZXRSb3NlbkRhdGEvYWJzdHJhY3QvdHlwZXMnO1xuZXhwb3J0IHsgRG9nZUVzcGxvcmFSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2RvZ2UvRG9nZUVzcGxvcmFSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBEb2dlUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9kb2dlL0RvZ2VSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBEb2dlUnBjUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9kb2dlL0RvZ2VScGNSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBSdW5lc0VzcGxvcmFSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL3J1bmVzL1J1bmVzRXNwbG9yYVJvc2VuRXh0cmFjdG9yJztcbmV4cG9ydCB7IFJ1bmVzUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9ydW5lcy9SdW5lc1Jvc2VuRXh0cmFjdG9yJztcbmV4cG9ydCB7IFJ1bmVzUnBjUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9ydW5lcy9SdW5lc1JwY1Jvc2VuRXh0cmFjdG9yJztcbmV4cG9ydCB7IHBhcnNlUm9zZW5EYXRhIH0gZnJvbSAnLi91dGlscyc7XG4iXX0=
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEdBQUcsTUFBTSx5QkFBeUIsQ0FBQztBQUUxQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7QUFFaEIsT0FBTyxFQUFFLE9BQU8sSUFBSSwwQkFBMEIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzNHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ25HLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ3pHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ25HLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRXBGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzFGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLGdFQUFnRSxDQUFDO0FBQ25ILE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3JHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQzNHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbml0RWNjTGliIH0gZnJvbSAnYml0Y29pbmpzLWxpYic7XG5pbXBvcnQgZWNjIGZyb20gJ0BiaXRjb2luZXJsYWIvc2VjcDI1NmsxJztcblxuaW5pdEVjY0xpYihlY2MpO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIEFic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yIH0gZnJvbSAnLi9nZXRSb3NlbkRhdGEvYWJzdHJhY3QvQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3InO1xuZXhwb3J0IHsgQml0Y29pbkVzcGxvcmFSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2JpdGNvaW4vQml0Y29pbkVzcGxvcmFSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBCaXRjb2luUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9iaXRjb2luL0JpdGNvaW5Sb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBCaXRjb2luUnBjUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9iaXRjb2luL0JpdGNvaW5ScGNSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBFdm1FdGhlcnNSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2V2bS9Fdm1FdGhlcnNSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBFdm1ScGNSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2V2bS9Fdm1ScGNSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBFdm1Sb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2V2bS9Fdm1Sb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBDYXJkYW5vS29pb3NSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2NhcmRhbm8vQ2FyZGFub0tvaW9zUm9zZW5FeHRyYWN0b3InO1xuZXhwb3J0IHsgQ2FyZGFub09nbWlvc1Jvc2VuRXh0cmFjdG9yIH0gZnJvbSAnLi9nZXRSb3NlbkRhdGEvY2FyZGFuby9DYXJkYW5vT2dtaW9zUm9zZW5FeHRyYWN0b3InO1xuZXhwb3J0IHsgQ2FyZGFub1Jvc2VuRXh0cmFjdG9yIH0gZnJvbSAnLi9nZXRSb3NlbkRhdGEvY2FyZGFuby9DYXJkYW5vUm9zZW5FeHRyYWN0b3InO1xuZXhwb3J0IHsgQ2FyZGFub0Jsb2NrRnJvc3RSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2NhcmRhbm8vQ2FyZGFub0Jsb2NrRnJvc3RSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBDYXJkYW5vR3JhcGhRTFJvc2VuRXh0cmFjdG9yIH0gZnJvbSAnLi9nZXRSb3NlbkRhdGEvY2FyZGFuby9DYXJkYW5vR3JhcGhRTFJvc2VuRXh0cmFjdG9yJztcbmV4cG9ydCB7IEVyZ29Sb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2VyZ28vRXJnb1Jvc2VuRXh0cmFjdG9yJztcbmV4cG9ydCB7IEVyZ29Ob2RlUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9lcmdvL0VyZ29Ob2RlUm9zZW5FeHRyYWN0b3InO1xuZXhwb3J0IHsgUm9zZW5EYXRhLCBUb2tlblRyYW5zZm9ybWF0aW9uIH0gZnJvbSAnLi9nZXRSb3NlbkRhdGEvYWJzdHJhY3QvdHlwZXMnO1xuZXhwb3J0IHsgRG9nZUVzcGxvcmFSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2RvZ2UvRG9nZUVzcGxvcmFSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBEb2dlUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9kb2dlL0RvZ2VSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBEb2dlUnBjUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9kb2dlL0RvZ2VScGNSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBCaXRjb2luUnVuZXNFc3Bsb3JhUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9iaXRjb2luLXJ1bmVzL0JpdGNvaW5SdW5lc0VzcGxvcmFSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBCaXRjb2luUnVuZXNSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2JpdGNvaW4tcnVuZXMvQml0Y29pblJ1bmVzUm9zZW5FeHRyYWN0b3InO1xuZXhwb3J0IHsgQml0Y29pblJ1bmVzUnBjUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9iaXRjb2luLXJ1bmVzL0JpdGNvaW5SdW5lc1JwY1Jvc2VuRXh0cmFjdG9yJztcbmV4cG9ydCB7IHBhcnNlUm9zZW5EYXRhIH0gZnJvbSAnLi91dGlscyc7XG4iXX0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rosen-bridge/rosen-extractor",
3
- "version": "8.1.0",
3
+ "version": "9.0.0",
4
4
  "description": "this project contains methods to get rosen data from blockchain",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1 +0,0 @@
1
- {"version":3,"file":"RunesEsploraRosenExtractor.d.ts","sourceRoot":"","sources":["../../../lib/getRosenData/runes/RunesEsploraRosenExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,0BAA0B,MAAM,wCAAwC,CAAC;AAEhF,OAAO,EAAE,yBAAyB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAI/D,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAGtD,qBAAa,0BAA2B,SAAQ,0BAA0B,CAAC,yBAAyB,CAAC;IACnG,QAAQ,CAAC,KAAK,mBAAe;IAC7B,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAC;gBAEvB,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,cAAc;IAK1E;;;OAGG;IACH,cAAc,GACZ,aAAa,yBAAyB,KACrC,SAAS,GAAG,SAAS,CAgDtB;IAEF;;;;OAIG;IACH,SAAS,CAAC,iBAAiB,GACzB,SAAS,eAAe,EAAE,KACzB,aAAa,EAAE,CAmBhB;IAEF;;;;OAIG;IACH,SAAS,CAAC,kBAAkB,GAC1B,gBAAgB,aAAa,EAAE,KAC9B,uBAAuB,GAAG,SAAS,CAgBpC;IAEF;;;;OAIG;IACH,SAAS,CAAC,YAAY,GAAI,SAAS,eAAe,EAAE,KAAG,OAAO,CAO5D;CACH"}