@rosen-bridge/abstract-extractor 2.0.1 → 2.0.3-52fc0239

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 (115) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/ergo/AbstractErgoExtractor.d.ts.map +1 -1
  3. package/dist/ergo/AbstractErgoExtractor.js +3 -2
  4. package/dist/ergo/AbstractErgoExtractorAction.d.ts +1 -1
  5. package/dist/ergo/AbstractErgoExtractorAction.d.ts.map +1 -1
  6. package/dist/ergo/AbstractErgoExtractorAction.js +23 -9
  7. package/dist/ergo/AbstractErgoExtractorEntity.js +2 -2
  8. package/dist/ergo/initializable/AbstractInitializableAction.d.ts +1 -1
  9. package/dist/ergo/initializable/AbstractInitializableAction.d.ts.map +1 -1
  10. package/dist/ergo/initializable/AbstractInitializableAction.js +4 -2
  11. package/dist/lib/abstractExtractor.d.ts +25 -0
  12. package/dist/lib/abstractExtractor.d.ts.map +1 -0
  13. package/dist/lib/abstractExtractor.js +3 -0
  14. package/dist/lib/constants.d.ts +4 -0
  15. package/dist/lib/constants.d.ts.map +1 -0
  16. package/dist/lib/constants.js +4 -0
  17. package/dist/lib/ergo/AbstractErgoExtractor.d.ts +80 -0
  18. package/dist/lib/ergo/AbstractErgoExtractor.d.ts.map +1 -0
  19. package/dist/lib/ergo/AbstractErgoExtractor.js +143 -0
  20. package/dist/lib/ergo/AbstractErgoExtractorAction.d.ts +87 -0
  21. package/dist/lib/ergo/AbstractErgoExtractorAction.d.ts.map +1 -0
  22. package/dist/lib/ergo/AbstractErgoExtractorAction.js +222 -0
  23. package/dist/lib/ergo/AbstractErgoExtractorEntity.d.ts +11 -0
  24. package/dist/lib/ergo/AbstractErgoExtractorEntity.d.ts.map +1 -0
  25. package/dist/lib/ergo/AbstractErgoExtractorEntity.js +57 -0
  26. package/dist/lib/ergo/index.d.ts +10 -0
  27. package/dist/lib/ergo/index.d.ts.map +1 -0
  28. package/dist/lib/ergo/index.js +10 -0
  29. package/dist/lib/ergo/initializable/AbstractInitializable.d.ts +48 -0
  30. package/dist/lib/ergo/initializable/AbstractInitializable.d.ts.map +1 -0
  31. package/dist/lib/ergo/initializable/AbstractInitializable.js +163 -0
  32. package/dist/lib/ergo/initializable/AbstractInitializableAction.d.ts +14 -0
  33. package/dist/lib/ergo/initializable/AbstractInitializableAction.d.ts.map +1 -0
  34. package/dist/lib/ergo/initializable/AbstractInitializableAction.js +16 -0
  35. package/dist/lib/ergo/initializable/index.d.ts +3 -0
  36. package/dist/lib/ergo/initializable/index.d.ts.map +1 -0
  37. package/dist/lib/ergo/initializable/index.js +3 -0
  38. package/dist/lib/ergo/interfaces.d.ts +47 -0
  39. package/dist/lib/ergo/interfaces.d.ts.map +1 -0
  40. package/dist/lib/ergo/interfaces.js +8 -0
  41. package/dist/lib/ergo/network/AbstractNetwork.d.ts +26 -0
  42. package/dist/lib/ergo/network/AbstractNetwork.d.ts.map +1 -0
  43. package/dist/lib/ergo/network/AbstractNetwork.js +3 -0
  44. package/dist/lib/ergo/network/ExplorerNetwork.d.ts +74 -0
  45. package/dist/lib/ergo/network/ExplorerNetwork.d.ts.map +1 -0
  46. package/dist/lib/ergo/network/ExplorerNetwork.js +185 -0
  47. package/dist/lib/ergo/network/NodeNetwork.d.ts +60 -0
  48. package/dist/lib/ergo/network/NodeNetwork.d.ts.map +1 -0
  49. package/dist/lib/ergo/network/NodeNetwork.js +131 -0
  50. package/dist/lib/ergo/utils.d.ts +8 -0
  51. package/dist/lib/ergo/utils.d.ts.map +1 -0
  52. package/dist/lib/ergo/utils.js +16 -0
  53. package/dist/lib/index.d.ts +4 -0
  54. package/dist/lib/index.d.ts.map +1 -0
  55. package/dist/lib/index.js +4 -0
  56. package/dist/tests/AbstractErgoExtractor.mock.d.ts +11 -0
  57. package/dist/tests/AbstractErgoExtractor.mock.d.ts.map +1 -0
  58. package/dist/tests/AbstractErgoExtractor.mock.js +13 -0
  59. package/dist/tests/AbstractErgoExtractor.spec.d.ts +2 -0
  60. package/dist/tests/AbstractErgoExtractor.spec.d.ts.map +1 -0
  61. package/dist/tests/AbstractErgoExtractor.spec.js +241 -0
  62. package/dist/tests/AbstractErgoExtractorAction.mock.d.ts +15 -0
  63. package/dist/tests/AbstractErgoExtractorAction.mock.d.ts.map +1 -0
  64. package/dist/tests/AbstractErgoExtractorAction.mock.js +27 -0
  65. package/dist/tests/AbstractErgoExtractorAction.spec.d.ts +2 -0
  66. package/dist/tests/AbstractErgoExtractorAction.spec.d.ts.map +1 -0
  67. package/dist/tests/AbstractErgoExtractorAction.spec.js +222 -0
  68. package/dist/tests/initializable/AbstractInitializable.mock.d.ts +60 -0
  69. package/dist/tests/initializable/AbstractInitializable.mock.d.ts.map +1 -0
  70. package/dist/tests/initializable/AbstractInitializable.mock.js +22 -0
  71. package/dist/tests/initializable/AbstractInitializable.spec.d.ts +2 -0
  72. package/dist/tests/initializable/AbstractInitializable.spec.d.ts.map +1 -0
  73. package/dist/tests/initializable/AbstractInitializable.spec.js +300 -0
  74. package/dist/tests/initializable/AbstractInitializableAction.mock.d.ts +15 -0
  75. package/dist/tests/initializable/AbstractInitializableAction.mock.d.ts.map +1 -0
  76. package/dist/tests/initializable/AbstractInitializableAction.mock.js +27 -0
  77. package/dist/tests/initializable/AbstractInitializableAction.spec.d.ts +2 -0
  78. package/dist/tests/initializable/AbstractInitializableAction.spec.d.ts.map +1 -0
  79. package/dist/tests/initializable/AbstractInitializableAction.spec.js +55 -0
  80. package/dist/tests/initializable/testData.d.ts +94 -0
  81. package/dist/tests/initializable/testData.d.ts.map +1 -0
  82. package/dist/tests/initializable/testData.js +235 -0
  83. package/dist/tests/network/ExplorerNetwork.spec.d.ts +2 -0
  84. package/dist/tests/network/ExplorerNetwork.spec.d.ts.map +1 -0
  85. package/dist/tests/network/ExplorerNetwork.spec.js +62 -0
  86. package/dist/tests/network/NodeNetwork.spec.d.ts +2 -0
  87. package/dist/tests/network/NodeNetwork.spec.d.ts.map +1 -0
  88. package/dist/tests/network/NodeNetwork.spec.js +49 -0
  89. package/dist/tests/network/testData.d.ts +752 -0
  90. package/dist/tests/network/testData.d.ts.map +1 -0
  91. package/dist/tests/network/testData.js +1401 -0
  92. package/dist/tests/testData.d.ts +32 -0
  93. package/dist/tests/testData.d.ts.map +1 -0
  94. package/dist/tests/testData.js +121 -0
  95. package/dist/tests/testUtils.d.ts +9 -0
  96. package/dist/tests/testUtils.d.ts.map +1 -0
  97. package/dist/tests/testUtils.js +31 -0
  98. package/dist/tsconfig.tsbuildinfo +1 -0
  99. package/dist/vitest.config.d.ts +3 -0
  100. package/dist/vitest.config.d.ts.map +1 -0
  101. package/dist/vitest.config.js +17 -0
  102. package/lib/ergo/AbstractErgoExtractor.ts +3 -1
  103. package/lib/ergo/AbstractErgoExtractorAction.ts +47 -36
  104. package/lib/ergo/AbstractErgoExtractorEntity.ts +1 -1
  105. package/lib/ergo/initializable/AbstractInitializableAction.ts +4 -2
  106. package/package.json +9 -14
  107. package/tests/AbstractErgoExtractor.mock.ts +4 -2
  108. package/tests/AbstractErgoExtractorAction.mock.ts +1 -1
  109. package/tests/AbstractErgoExtractorAction.spec.ts +1 -1
  110. package/tests/initializable/AbstractInitializable.mock.ts +13 -4
  111. package/tests/initializable/AbstractInitializable.spec.ts +1 -9
  112. package/tests/initializable/AbstractInitializableAction.mock.ts +1 -1
  113. package/tests/initializable/AbstractInitializableAction.spec.ts +1 -1
  114. package/tests/testUtils.ts +1 -1
  115. package/tsconfig.build.tsbuildinfo +1 -1
@@ -0,0 +1,94 @@
1
+ export declare const ergoBoxes: ({
2
+ boxId: string;
3
+ transactionId: string;
4
+ blockId: string;
5
+ value: bigint;
6
+ index: number;
7
+ creationHeight: number;
8
+ inclusionHeight: number;
9
+ ergoTree: string;
10
+ address: string;
11
+ assets: {
12
+ tokenId: string;
13
+ index: number;
14
+ amount: bigint;
15
+ name: string;
16
+ decimals: number;
17
+ }[];
18
+ additionalRegisters: {};
19
+ spentHeight?: undefined;
20
+ spentBlockId?: undefined;
21
+ spentTransactionId?: undefined;
22
+ spentIndex?: undefined;
23
+ } | {
24
+ boxId: string;
25
+ transactionId: string;
26
+ blockId: string;
27
+ value: bigint;
28
+ index: number;
29
+ creationHeight: number;
30
+ inclusionHeight: number;
31
+ ergoTree: string;
32
+ address: string;
33
+ assets: {
34
+ tokenId: string;
35
+ index: number;
36
+ amount: bigint;
37
+ name: string;
38
+ decimals: number;
39
+ }[];
40
+ additionalRegisters: {};
41
+ spentHeight: number;
42
+ spentBlockId: string;
43
+ spentTransactionId: string;
44
+ spentIndex: number;
45
+ })[];
46
+ export declare const extractedData: {
47
+ boxId: string;
48
+ address: string;
49
+ serialized: string;
50
+ blockId: string;
51
+ height: number;
52
+ };
53
+ export declare const transactionBatch: {
54
+ id: string;
55
+ inclusionHeight: number;
56
+ blockId: string;
57
+ outputs: ({
58
+ transactionId: string;
59
+ index: number;
60
+ value: bigint;
61
+ ergoTree: string;
62
+ creationHeight: number;
63
+ assets: {
64
+ tokenId: string;
65
+ amount: bigint;
66
+ }[];
67
+ additionalRegisters: {
68
+ R4: string;
69
+ R5: string;
70
+ R6: string;
71
+ };
72
+ boxId: string;
73
+ } | {
74
+ transactionId: string;
75
+ index: number;
76
+ value: bigint;
77
+ ergoTree: string;
78
+ creationHeight: number;
79
+ assets: never[];
80
+ additionalRegisters: {
81
+ R4?: undefined;
82
+ R5?: undefined;
83
+ R6?: undefined;
84
+ };
85
+ boxId: string;
86
+ })[];
87
+ inputs: {
88
+ boxId: string;
89
+ }[];
90
+ dataInputs: {
91
+ boxId: string;
92
+ }[];
93
+ }[];
94
+ //# sourceMappingURL=testData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"testData.d.ts","sourceRoot":"","sources":["../../../tests/initializable/testData.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAuDrB,CAAC;AAEF,eAAO,MAAM,aAAa;;;;;;CAMzB,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyN5B,CAAC"}
@@ -0,0 +1,235 @@
1
+ export const ergoBoxes = [
2
+ {
3
+ boxId: '57d8334d8b6095393d9c6e471e25b477caba54adcc9757ea4f24d366fe72cdb3',
4
+ transactionId: '793724eec1c6fa4ec68d93186c6403a071154cfc6e5931038791e447a69e1207',
5
+ blockId: '4674c0e9a4f26e24e083c8b5b3bbe0c63cd786c32a317f742be1228281b45b26',
6
+ value: 14948300000n,
7
+ index: 1,
8
+ creationHeight: 1252681,
9
+ inclusionHeight: 1252681,
10
+ ergoTree: '0008cd03e5f5f63b27f9cdc47a9a8b799a26e5ee66a1e2a5d41d64640df3e64f4d050c18',
11
+ address: '9iD5jMoLjK9azTdigyT8z1QY6qHrA6gVrJamMF8MJ2qt45pJpDc',
12
+ assets: [
13
+ {
14
+ tokenId: 'e023c5f382b6e96fbd878f6811aac73345489032157ad5affb84aefd4956c297',
15
+ index: 0,
16
+ amount: 4983552n,
17
+ name: 'rsADA',
18
+ decimals: 6,
19
+ },
20
+ ],
21
+ additionalRegisters: {},
22
+ },
23
+ {
24
+ boxId: '2708cc15be42eff988c7194c86912d305361c8c12cf9dae2b750dbf5c1519bd0',
25
+ transactionId: 'd18aaa53c20ff5a8989f6b26d2e84c9bd439abb7b61e9e53f48e73a6f311e712',
26
+ blockId: '95e73453f5824158e89946bf2efb6f7bf808c6c4b6d380d7f588e770a1de1ad0',
27
+ value: 14981300000n,
28
+ index: 2,
29
+ creationHeight: 1252677,
30
+ inclusionHeight: 1252677,
31
+ ergoTree: '0008cd03e5f5f63b27f9cdc47a9a8b799a26e5ee66a1e2a5d41d64640df3e64f4d050c18',
32
+ address: '9iD5jMoLjK9azTdigyT8z1QY6qHrA6gVrJamMF8MJ2qt45pJpDc',
33
+ assets: [
34
+ {
35
+ tokenId: 'e023c5f382b6e96fbd878f6811aac73345489032157ad5affb84aefd4956c297',
36
+ index: 0,
37
+ amount: 4983552n,
38
+ name: 'rsADA',
39
+ decimals: 6,
40
+ },
41
+ ],
42
+ additionalRegisters: {},
43
+ spentHeight: 1252680,
44
+ spentBlockId: '9239ebca7b3b10701895e491a2213da4e07a37abc413d05434a5fab04993a19d',
45
+ spentTransactionId: 'b08fa920a6907d0e76eb0ad754439f1a26fa112b39f4de489620e4e6241930b7',
46
+ spentIndex: 1,
47
+ },
48
+ ];
49
+ export const extractedData = {
50
+ boxId: 'boxId1',
51
+ address: 'address1',
52
+ serialized: 'serialized1',
53
+ blockId: 'blockId1',
54
+ height: 98,
55
+ };
56
+ export const transactionBatch = [
57
+ {
58
+ id: 'c0bd3194b04c7d44159d57a532d2d00f6db3c9a1e4aa1a7dc3dee6e8ae3f0f80',
59
+ inclusionHeight: 1320705,
60
+ blockId: 'b861e2134821fcf1fcdad7e6edd56c4e4495b42b2fd72762a4c79ed1db78b44b',
61
+ outputs: [
62
+ {
63
+ transactionId: 'c0bd3194b04c7d44159d57a532d2d00f6db3c9a1e4aa1a7dc3dee6e8ae3f0f80',
64
+ index: 0,
65
+ value: 1000000n,
66
+ ergoTree: '100504000400050004000e20011d3364de07e5a26f0c4eef0852cddb387039a921b7154ef3cab22c6eda887fd803d601b2a5730000d602e4c6a70407d603b2db6501fe730100ea02d1ededededed93e4c672010407720293e4c67201050ec5720391e4c672010605730293c27201c2a793db63087201db6308a7938cb2db63087203730300017304cd7202',
67
+ creationHeight: 1320705,
68
+ assets: [
69
+ {
70
+ tokenId: '8c27dd9d8a35aac1e3167d58858c0a8b4059b277da790552e37eba22df9b9035',
71
+ amount: 1n,
72
+ },
73
+ ],
74
+ additionalRegisters: {
75
+ R4: '0702c1d434dac8765fc1269af82958d8aa350da53907096b35f7747cc372a7e6e69d',
76
+ R5: '0e2056b8b7c2ae45876ec9a79c575d66f6be1ead5498879f08df00b40daa62ae1b94',
77
+ R6: '058cee94aa09',
78
+ },
79
+ boxId: '0881528fb109938778ec5da029b8e076b3ee8a48c3fbb46eadf020f3caa25800',
80
+ },
81
+ {
82
+ transactionId: 'c0bd3194b04c7d44159d57a532d2d00f6db3c9a1e4aa1a7dc3dee6e8ae3f0f80',
83
+ index: 1,
84
+ value: 1500000n,
85
+ ergoTree: '1005040004000e36100204a00b08cd0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798ea02d192a39a8cc7a701730073011001020402d19683030193a38cc7b2a57300000193c2b2a57301007473027303830108cdeeac93b1a57304',
86
+ creationHeight: 1320705,
87
+ assets: [],
88
+ additionalRegisters: {},
89
+ boxId: '6c92ec246cc30aa12353e35438f0a130dcd088be3535636b81fd73d131e32ac7',
90
+ },
91
+ {
92
+ transactionId: 'c0bd3194b04c7d44159d57a532d2d00f6db3c9a1e4aa1a7dc3dee6e8ae3f0f80',
93
+ index: 2,
94
+ value: 23278478571n,
95
+ ergoTree: '0008cd02c1d434dac8765fc1269af82958d8aa350da53907096b35f7747cc372a7e6e69d',
96
+ creationHeight: 1320705,
97
+ assets: [],
98
+ additionalRegisters: {},
99
+ boxId: '70b5811a0678f7e634dcff9b862467f2b5620f2a4e4ffd5a6a37f331b9194c68',
100
+ },
101
+ ],
102
+ inputs: [
103
+ {
104
+ boxId: 'be50cf8b4bf156e082c1f48199811cec081b123834422ac64e9659b36bc029f2',
105
+ },
106
+ {
107
+ boxId: 'b6db0c5629850b62a58a9c0dae956e1ce14438f5d48ca75c3e55e60df17836cb',
108
+ },
109
+ ],
110
+ dataInputs: [
111
+ {
112
+ boxId: '56b8b7c2ae45876ec9a79c575d66f6be1ead5498879f08df00b40daa62ae1b94',
113
+ },
114
+ ],
115
+ },
116
+ {
117
+ id: '41d16484deab78069aaa2fa7bce4797f55768bde4687d4357ac502e086d26d08',
118
+ inclusionHeight: 1320705,
119
+ blockId: 'b861e2134821fcf1fcdad7e6edd56c4e4495b42b2fd72762a4c79ed1db78b44b',
120
+ outputs: [
121
+ {
122
+ transactionId: '41d16484deab78069aaa2fa7bce4797f55768bde4687d4357ac502e086d26d08',
123
+ index: 0,
124
+ value: 1000000n,
125
+ ergoTree: '100504000400050004000e20011d3364de07e5a26f0c4eef0852cddb387039a921b7154ef3cab22c6eda887fd803d601b2a5730000d602e4c6a70407d603b2db6501fe730100ea02d1ededededed93e4c672010407720293e4c67201050ec5720391e4c672010605730293c27201c2a793db63087201db6308a7938cb2db63087203730300017304cd7202',
126
+ creationHeight: 1320701,
127
+ assets: [
128
+ {
129
+ tokenId: '8c27dd9d8a35aac1e3167d58858c0a8b4059b277da790552e37eba22df9b9035',
130
+ amount: 1n,
131
+ },
132
+ ],
133
+ additionalRegisters: {
134
+ R4: '0702c1d434dac8765fc1269af82958d8aa350da53907096b35f7747cc372a7e6e69d',
135
+ R5: '0e2056b8b7c2ae45876ec9a79c575d66f6be1ead5498879f08df00b40daa62ae1b94',
136
+ R6: '058cee94aa09',
137
+ },
138
+ boxId: 'be50cf8b4bf156e082c1f48199811cec081b123834422ac64e9659b36bc029f2',
139
+ },
140
+ {
141
+ transactionId: '41d16484deab78069aaa2fa7bce4797f55768bde4687d4357ac502e086d26d08',
142
+ index: 1,
143
+ value: 1500000n,
144
+ ergoTree: '1005040004000e36100204a00b08cd0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798ea02d192a39a8cc7a701730073011001020402d19683030193a38cc7b2a57300000193c2b2a57301007473027303830108cdeeac93b1a57304',
145
+ creationHeight: 1320701,
146
+ assets: [],
147
+ additionalRegisters: {},
148
+ boxId: '9df85ba11e07c6fa7bd39f74731bb03538d36dedb5874f313bf6b32a3adddaa3',
149
+ },
150
+ {
151
+ transactionId: '41d16484deab78069aaa2fa7bce4797f55768bde4687d4357ac502e086d26d08',
152
+ index: 2,
153
+ value: 3730116410n,
154
+ ergoTree: '0008cd02c1d434dac8765fc1269af82958d8aa350da53907096b35f7747cc372a7e6e69d',
155
+ creationHeight: 1320701,
156
+ assets: [],
157
+ additionalRegisters: {},
158
+ boxId: '0cf4f4a3638464612dc710ff0c9613e10e23e090bf8ad21f830277fa0a4f4c1b',
159
+ },
160
+ ],
161
+ inputs: [
162
+ {
163
+ boxId: '3715c953269a829641db0022f3a7ab67917911491c6f363ab863d7ad42785437',
164
+ },
165
+ {
166
+ boxId: '88105776d682d645de57a1aa1569665ebfc57138ca9072c7472274dc0e1f6746',
167
+ },
168
+ ],
169
+ dataInputs: [
170
+ {
171
+ boxId: '56b8b7c2ae45876ec9a79c575d66f6be1ead5498879f08df00b40daa62ae1b94',
172
+ },
173
+ ],
174
+ },
175
+ {
176
+ id: '0fbd5c82dc0a4316a40a9d1de4f0949c503b39c5fe0e3e113e26d43558285ef7',
177
+ inclusionHeight: 1320698,
178
+ blockId: '92eaff11a4a1c29b8654473258f9d837e9ce99fc0a8a4f27c484d5871afcde64',
179
+ outputs: [
180
+ {
181
+ transactionId: '0fbd5c82dc0a4316a40a9d1de4f0949c503b39c5fe0e3e113e26d43558285ef7',
182
+ index: 0,
183
+ value: 1000000n,
184
+ ergoTree: '100504000400050004000e20011d3364de07e5a26f0c4eef0852cddb387039a921b7154ef3cab22c6eda887fd803d601b2a5730000d602e4c6a70407d603b2db6501fe730100ea02d1ededededed93e4c672010407720293e4c67201050ec5720391e4c672010605730293c27201c2a793db63087201db6308a7938cb2db63087203730300017304cd7202',
185
+ creationHeight: 1320696,
186
+ assets: [
187
+ {
188
+ tokenId: '8c27dd9d8a35aac1e3167d58858c0a8b4059b277da790552e37eba22df9b9035',
189
+ amount: 1n,
190
+ },
191
+ ],
192
+ additionalRegisters: {
193
+ R4: '0702c1d434dac8765fc1269af82958d8aa350da53907096b35f7747cc372a7e6e69d',
194
+ R5: '0e2056b8b7c2ae45876ec9a79c575d66f6be1ead5498879f08df00b40daa62ae1b94',
195
+ R6: '058cee94aa09',
196
+ },
197
+ boxId: '3715c953269a829641db0022f3a7ab67917911491c6f363ab863d7ad42785437',
198
+ },
199
+ {
200
+ transactionId: '0fbd5c82dc0a4316a40a9d1de4f0949c503b39c5fe0e3e113e26d43558285ef7',
201
+ index: 1,
202
+ value: 1500000n,
203
+ ergoTree: '1005040004000e36100204a00b08cd0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798ea02d192a39a8cc7a701730073011001020402d19683030193a38cc7b2a57300000193c2b2a57301007473027303830108cdeeac93b1a57304',
204
+ creationHeight: 1320696,
205
+ assets: [],
206
+ additionalRegisters: {},
207
+ boxId: 'ef31d4cea3cd9fa960d254d07742d759cf4076690d0fd1ffe442912bc8a0fb18',
208
+ },
209
+ {
210
+ transactionId: '0fbd5c82dc0a4316a40a9d1de4f0949c503b39c5fe0e3e113e26d43558285ef7',
211
+ index: 2,
212
+ value: 23279978571n,
213
+ ergoTree: '0008cd02c1d434dac8765fc1269af82958d8aa350da53907096b35f7747cc372a7e6e69d',
214
+ creationHeight: 1320696,
215
+ assets: [],
216
+ additionalRegisters: {},
217
+ boxId: 'b6db0c5629850b62a58a9c0dae956e1ce14438f5d48ca75c3e55e60df17836cb',
218
+ },
219
+ ],
220
+ inputs: [
221
+ {
222
+ boxId: '55cec880dcdce1c914de20a1fcaf949a76f1e5e5b2d474e351c9d11f2a00472c',
223
+ },
224
+ {
225
+ boxId: '111d487d65d5ad5f715a6e0ff1bbd588596f73f7d8394eb7f50f1d278e482b88',
226
+ },
227
+ ],
228
+ dataInputs: [
229
+ {
230
+ boxId: '56b8b7c2ae45876ec9a79c575d66f6be1ead5498879f08df00b40daa62ae1b94',
231
+ },
232
+ ],
233
+ },
234
+ ];
235
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdERhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90ZXN0cy9pbml0aWFsaXphYmxlL3Rlc3REYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRztJQUN2QjtRQUNFLEtBQUssRUFBRSxrRUFBa0U7UUFDekUsYUFBYSxFQUNYLGtFQUFrRTtRQUNwRSxPQUFPLEVBQUUsa0VBQWtFO1FBQzNFLEtBQUssRUFBRSxZQUFZO1FBQ25CLEtBQUssRUFBRSxDQUFDO1FBQ1IsY0FBYyxFQUFFLE9BQU87UUFDdkIsZUFBZSxFQUFFLE9BQU87UUFDeEIsUUFBUSxFQUNOLDBFQUEwRTtRQUM1RSxPQUFPLEVBQUUscURBQXFEO1FBQzlELE1BQU0sRUFBRTtZQUNOO2dCQUNFLE9BQU8sRUFDTCxrRUFBa0U7Z0JBQ3BFLEtBQUssRUFBRSxDQUFDO2dCQUNSLE1BQU0sRUFBRSxRQUFRO2dCQUNoQixJQUFJLEVBQUUsT0FBTztnQkFDYixRQUFRLEVBQUUsQ0FBQzthQUNaO1NBQ0Y7UUFDRCxtQkFBbUIsRUFBRSxFQUFFO0tBQ3hCO0lBQ0Q7UUFDRSxLQUFLLEVBQUUsa0VBQWtFO1FBQ3pFLGFBQWEsRUFDWCxrRUFBa0U7UUFDcEUsT0FBTyxFQUFFLGtFQUFrRTtRQUMzRSxLQUFLLEVBQUUsWUFBWTtRQUNuQixLQUFLLEVBQUUsQ0FBQztRQUNSLGNBQWMsRUFBRSxPQUFPO1FBQ3ZCLGVBQWUsRUFBRSxPQUFPO1FBQ3hCLFFBQVEsRUFDTiwwRUFBMEU7UUFDNUUsT0FBTyxFQUFFLHFEQUFxRDtRQUM5RCxNQUFNLEVBQUU7WUFDTjtnQkFDRSxPQUFPLEVBQ0wsa0VBQWtFO2dCQUNwRSxLQUFLLEVBQUUsQ0FBQztnQkFDUixNQUFNLEVBQUUsUUFBUTtnQkFDaEIsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsUUFBUSxFQUFFLENBQUM7YUFDWjtTQUNGO1FBQ0QsbUJBQW1CLEVBQUUsRUFBRTtRQUN2QixX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RUFBRTtnQkFDVixtQkFBbUIsRUFBRSxFQUFFO2dCQUN2QixLQUFLLEVBQ0gsa0VBQWtFO2FBQ3JFO1lBQ0Q7Z0JBQ0UsYUFBYSxFQUNYLGtFQUFrRTtnQkFDcEUsS0FBSyxFQUFFLENBQUM7Z0JBQ1IsS0FBSyxFQUFFLFlBQVk7Z0JBQ25CLFFBQVEsRUFDTiwwRUFBMEU7Z0JBQzVFLGNBQWMsRUFBRSxPQUFPO2dCQUN2QixNQUFNLEVBQUUsRUFBRTtnQkFDVixtQkFBbUIsRUFBRSxFQUFFO2dCQUN2QixLQUFLLEVBQ0gsa0VBQWtFO2FBQ3JFO1NBQ0Y7UUFDRCxNQUFNLEVBQUU7WUFDTjtnQkFDRSxLQUFLLEVBQ0gsa0VBQWtFO2FBQ3JFO1lBQ0Q7Z0JBQ0UsS0FBSyxFQUNILGtFQUFrRTthQUNyRTtTQUNGO1FBQ0QsVUFBVSxFQUFFO1lBQ1Y7Z0JBQ0UsS0FBSyxFQUNILGtFQUFrRTthQUNyRTtTQUNGO0tBQ0Y7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGVyZ29Cb3hlcyA9IFtcbiAge1xuICAgIGJveElkOiAnNTdkODMzNGQ4YjYwOTUzOTNkOWM2ZTQ3MWUyNWI0NzdjYWJhNTRhZGNjOTc1N2VhNGYyNGQzNjZmZTcyY2RiMycsXG4gICAgdHJhbnNhY3Rpb25JZDpcbiAgICAgICc3OTM3MjRlZWMxYzZmYTRlYzY4ZDkzMTg2YzY0MDNhMDcxMTU0Y2ZjNmU1OTMxMDM4NzkxZTQ0N2E2OWUxMjA3JyxcbiAgICBibG9ja0lkOiAnNDY3NGMwZTlhNGYyNmUyNGUwODNjOGI1YjNiYmUwYzYzY2Q3ODZjMzJhMzE3Zjc0MmJlMTIyODI4MWI0NWIyNicsXG4gICAgdmFsdWU6IDE0OTQ4MzAwMDAwbixcbiAgICBpbmRleDogMSxcbiAgICBjcmVhdGlvbkhlaWdodDogMTI1MjY4MSxcbiAgICBpbmNsdXNpb25IZWlnaHQ6IDEyNTI2ODEsXG4gICAgZXJnb1RyZWU6XG4gICAgICAnMDAwOGNkMDNlNWY1ZjYzYjI3ZjljZGM0N2E5YThiNzk5YTI2ZTVlZTY2YTFlMmE1ZDQxZDY0NjQwZGYzZTY0ZjRkMDUwYzE4JyxcbiAgICBhZGRyZXNzOiAnOWlENWpNb0xqSzlhelRkaWd5VDh6MVFZNnFIckE2Z1ZySmFtTUY4TUoycXQ0NXBKcERjJyxcbiAgICBhc3NldHM6IFtcbiAgICAgIHtcbiAgICAgICAgdG9rZW5JZDpcbiAgICAgICAgICAnZTAyM2M1ZjM4MmI2ZTk2ZmJkODc4ZjY4MTFhYWM3MzM0NTQ4OTAzMjE1N2FkNWFmZmI4NGFlZmQ0OTU2YzI5NycsXG4gICAgICAgIGluZGV4OiAwLFxuICAgICAgICBhbW91bnQ6IDQ5ODM1NTJuLFxuICAgICAgICBuYW1lOiAncnNBREEnLFxuICAgICAgICBkZWNpbWFsczogNixcbiAgICAgIH0sXG4gICAgXSxcbiAgICBhZGRpdGlvbmFsUmVnaXN0ZXJzOiB7fSxcbiAgfSxcbiAge1xuICAgIGJveElkOiAnMjcwOGNjMTViZTQyZWZmOTg4YzcxOTRjODY5MTJkMzA1MzYxYzhjMTJjZjlkYWUyYjc1MGRiZjVjMTUxOWJkMCcsXG4gICAgdHJhbnNhY3Rpb25JZDpcbiAgICAgICdkMThhYWE1M2MyMGZmNWE4OTg5ZjZiMjZkMmU4NGM5YmQ0MzlhYmI3YjYxZTllNTNmNDhlNzNhNmYzMTFlNzEyJyxcbiAgICBibG9ja0lkOiAnOTVlNzM0NTNmNTgyNDE1OGU4OTk0NmJmMmVmYjZmN2JmODA4YzZjNGI2ZDM4MGQ3ZjU4OGU3NzBhMWRlMWFkMCcsXG4gICAgdmFsdWU6IDE0OTgxMzAwMDAwbixcbiAgICBpbmRleDogMixcbiAgICBjcmVhdGlvbkhlaWdodDogMTI1MjY3NyxcbiAgICBpbmNsdXNpb25IZWlnaHQ6IDEyNTI2NzcsXG4gICAgZXJnb1RyZWU6XG4gICAgICAnMDAwOGNkMDNlNWY1ZjYzYjI3ZjljZGM0N2E5YThiNzk5YTI2ZTVlZTY2YTFlMmE1ZDQxZDY0NjQwZGYzZTY0ZjRkMDUwYzE4JyxcbiAgICBhZGRyZXNzOiAnOWlENWpNb0xqSzlhelRkaWd5VDh6MVFZNnFIckE2Z1ZySmFtTUY4TUoycXQ0NXBKcERjJyxcbiAgICBhc3NldHM6IFtcbiAgICAgIHtcbiAgICAgICAgdG9rZW5JZDpcbiAgICAgICAgICAnZTAyM2M1ZjM4MmI2ZTk2ZmJkODc4ZjY4MTFhYWM3MzM0NTQ4OTAzMjE1N2FkNWFmZmI4NGFlZmQ0OTU2YzI5NycsXG4gICAgICAgIGluZGV4OiAwLFxuICAgICAgICBhbW91bnQ6IDQ5ODM1NTJuLFxuICAgICAgICBuYW1lOiAncnNBREEnLFxuICAgICAgICBkZWNpbWFsczogNixcbiAgICAgIH0sXG4gICAgXSxcbiAgICBhZGRpdGlvbmFsUmVnaXN0ZXJzOiB7fSxcbiAgICBzcGVudEhlaWdodDogMTI1MjY4MCxcbiAgICBzcGVudEJsb2NrSWQ6XG4gICAgICAnOTIzOWViY2E3YjNiMTA3MDE4OTVlNDkxYTIyMTNkYTRlMDdhMzdhYmM0MTNkMDU0MzRhNWZhYjA0OTkzYTE5ZCcsXG4gICAgc3BlbnRUcmFuc2FjdGlvbklkOlxuICAgICAgJ2IwOGZhOTIwYTY5MDdkMGU3NmViMGFkNzU0NDM5ZjFhMjZmYTExMmIzOWY0ZGU0ODk2MjBlNGU2MjQxOTMwYjcnLFxuICAgIHNwZW50SW5kZXg6IDEsXG4gIH0sXG5dO1xuXG5leHBvcnQgY29uc3QgZXh0cmFjdGVkRGF0YSA9IHtcbiAgYm94SWQ6ICdib3hJZDEnLFxuICBhZGRyZXNzOiAnYWRkcmVzczEnLFxuICBzZXJpYWxpemVkOiAnc2VyaWFsaXplZDEnLFxuICBibG9ja0lkOiAnYmxvY2tJZDEnLFxuICBoZWlnaHQ6IDk4LFxufTtcblxuZXhwb3J0IGNvbnN0IHRyYW5zYWN0aW9uQmF0Y2ggPSBbXG4gIHtcbiAgICBpZDogJ2MwYmQzMTk0YjA0YzdkNDQxNTlkNTdhNTMyZDJkMDBmNmRiM2M5YTFlNGFhMWE3ZGMzZGVlNmU4YWUzZjBmODAnLFxuICAgIGluY2x1c2lvbkhlaWdodDogMTMyMDcwNSxcbiAgICBibG9ja0lkOiAnYjg2MWUyMTM0ODIxZmNmMWZjZGFkN2U2ZWRkNTZjNGU0NDk1YjQyYjJmZDcyNzYyYTRjNzllZDFkYjc4YjQ0YicsXG4gICAgb3V0cHV0czogW1xuICAgICAge1xuICAgICAgICB0cmFuc2FjdGlvbklkOlxuICAgICAgICAgICdjMGJkMzE5NGIwNGM3ZDQ0MTU5ZDU3YTUzMmQyZDAwZjZkYjNjOWExZTRhYTFhN2RjM2RlZTZlOGFlM2YwZjgwJyxcbiAgICAgICAgaW5kZXg6IDAsXG4gICAgICAgIHZhbHVlOiAxMDAwMDAwbixcbiAgICAgICAgZXJnb1RyZWU6XG4gICAgICAgICAgJzEwMDUwNDAwMDQwMDA1MDAwNDAwMGUyMDAxMWQzMzY0ZGUwN2U1YTI2ZjBjNGVlZjA4NTJjZGRiMzg3MDM5YTkyMWI3MTU0ZWYzY2FiMjJjNmVkYTg4N2ZkODAzZDYwMWIyYTU3MzAwMDBkNjAyZTRjNmE3MDQwN2Q2MDNiMmRiNjUwMWZlNzMwMTAwZWEwMmQxZWRlZGVkZWRlZDkzZTRjNjcyMDEwNDA3NzIwMjkzZTRjNjcyMDEwNTBlYzU3MjAzOTFlNGM2NzIwMTA2MDU3MzAyOTNjMjcyMDFjMmE3OTNkYjYzMDg3MjAxZGI2MzA4YTc5MzhjYjJkYjYzMDg3MjAzNzMwMzAwMDE3MzA0Y2Q3MjAyJyxcbiAgICAgICAgY3JlYXRpb25IZWlnaHQ6IDEzMjA3MDUsXG4gICAgICAgIGFzc2V0czogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHRva2VuSWQ6XG4gICAgICAgICAgICAgICc4YzI3ZGQ5ZDhhMzVhYWMxZTMxNjdkNTg4NThjMGE4YjQwNTliMjc3ZGE3OTA1NTJlMzdlYmEyMmRmOWI5MDM1JyxcbiAgICAgICAgICAgIGFtb3VudDogMW4sXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgYWRkaXRpb25hbFJlZ2lzdGVyczoge1xuICAgICAgICAgIFI0OiAnMDcwMmMxZDQzNGRhYzg3NjVmYzEyNjlhZjgyOTU4ZDhhYTM1MGRhNTM5MDcwOTZiMzVmNzc0N2NjMzcyYTdlNmU2OWQnLFxuICAgICAgICAgIFI1OiAnMGUyMDU2YjhiN2MyYWU0NTg3NmVjOWE3OWM1NzVkNjZmNmJlMWVhZDU0OTg4NzlmMDhkZjAwYjQwZGFhNjJhZTFiOTQnLFxuICAgICAgICAgIFI2OiAnMDU4Y2VlOTRhYTA5JyxcbiAgICAgICAgfSxcbiAgICAgICAgYm94SWQ6XG4gICAgICAgICAgJzA4ODE1MjhmYjEwOTkzODc3OGVjNWRhMDI5YjhlMDc2YjNlZThhNDhjM2ZiYjQ2ZWFkZjAyMGYzY2FhMjU4MDAnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgdHJhbnNhY3Rpb25JZDpcbiAgICAgICAgICAnYzBiZDMxOTRiMDRjN2Q0NDE1OWQ1N2E1MzJkMmQwMGY2ZGIzYzlhMWU0YWExYTdkYzNkZWU2ZThhZTNmMGY4MCcsXG4gICAgICAgIGluZGV4OiAxLFxuICAgICAgICB2YWx1ZTogMTUwMDAwMG4sXG4gICAgICAgIGVyZ29UcmVlOlxuICAgICAgICAgICcxMDA1MDQwMDA0MDAwZTM2MTAwMjA0YTAwYjA4Y2QwMjc5YmU2NjdlZjlkY2JiYWM1NWEwNjI5NWNlODcwYjA3MDI5YmZjZGIyZGNlMjhkOTU5ZjI4MTViMTZmODE3OThlYTAyZDE5MmEzOWE4Y2M3YTcwMTczMDA3MzAxMTAwMTAyMDQwMmQxOTY4MzAzMDE5M2EzOGNjN2IyYTU3MzAwMDAwMTkzYzJiMmE1NzMwMTAwNzQ3MzAyNzMwMzgzMDEwOGNkZWVhYzkzYjFhNTczMDQnLFxuICAgICAgICBjcmVhdGlvbkhlaWdodDogMTMyMDcwNSxcbiAgICAgICAgYXNzZXRzOiBbXSxcbiAgICAgICAgYWRkaXRpb25hbFJlZ2lzdGVyczoge30sXG4gICAgICAgIGJveElkOlxuICAgICAgICAgICc2YzkyZWMyNDZjYzMwYWExMjM1M2UzNTQzOGYwYTEzMGRjZDA4OGJlMzUzNTYzNmI4MWZkNzNkMTMxZTMyYWM3JyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHRyYW5zYWN0aW9uSWQ6XG4gICAgICAgICAgJ2MwYmQzMTk0YjA0YzdkNDQxNTlkNTdhNTMyZDJkMDBmNmRiM2M5YTFlNGFhMWE3ZGMzZGVlNmU4YWUzZjBmODAnLFxuICAgICAgICBpbmRleDogMixcbiAgICAgICAgdmFsdWU6IDIzMjc4NDc4NTcxbixcbiAgICAgICAgZXJnb1RyZWU6XG4gICAgICAgICAgJzAwMDhjZDAyYzFkNDM0ZGFjODc2NWZjMTI2OWFmODI5NThkOGFhMzUwZGE1MzkwNzA5NmIzNWY3NzQ3Y2MzNzJhN2U2ZTY5ZCcsXG4gICAgICAgIGNyZWF0aW9uSGVpZ2h0OiAxMzIwNzA1LFxuICAgICAgICBhc3NldHM6IFtdLFxuICAgICAgICBhZGRpdGlvbmFsUmVnaXN0ZXJzOiB7fSxcbiAgICAgICAgYm94SWQ6XG4gICAgICAgICAgJzcwYjU4MTFhMDY3OGY3ZTYzNGRjZmY5Yjg2MjQ2N2YyYjU2MjBmMmE0ZTRmZmQ1YTZhMzdmMzMxYjkxOTRjNjgnLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGlucHV0czogW1xuICAgICAge1xuICAgICAgICBib3hJZDpcbiAgICAgICAgICAnYmU1MGNmOGI0YmYxNTZlMDgyYzFmNDgxOTk4MTFjZWMwODFiMTIzODM0NDIyYWM2NGU5NjU5YjM2YmMwMjlmMicsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBib3hJZDpcbiAgICAgICAgICAnYjZkYjBjNTYyOTg1MGI2MmE1OGE5YzBkYWU5NTZlMWNlMTQ0MzhmNWQ0OGNhNzVjM2U1NWU2MGRmMTc4MzZjYicsXG4gICAgICB9LFxuICAgIF0sXG4gICAgZGF0YUlucHV0czogW1xuICAgICAge1xuICAgICAgICBib3hJZDpcbiAgICAgICAgICAnNTZiOGI3YzJhZTQ1ODc2ZWM5YTc5YzU3NWQ2NmY2YmUxZWFkNTQ5ODg3OWYwOGRmMDBiNDBkYWE2MmFlMWI5NCcsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG4gIHtcbiAgICBpZDogJzQxZDE2NDg0ZGVhYjc4MDY5YWFhMmZhN2JjZTQ3OTdmNTU3NjhiZGU0Njg3ZDQzNTdhYzUwMmUwODZkMjZkMDgnLFxuICAgIGluY2x1c2lvbkhlaWdodDogMTMyMDcwNSxcbiAgICBibG9ja0lkOiAnYjg2MWUyMTM0ODIxZmNmMWZjZGFkN2U2ZWRkNTZjNGU0NDk1YjQyYjJmZDcyNzYyYTRjNzllZDFkYjc4YjQ0YicsXG4gICAgb3V0cHV0czogW1xuICAgICAge1xuICAgICAgICB0cmFuc2FjdGlvbklkOlxuICAgICAgICAgICc0MWQxNjQ4NGRlYWI3ODA2OWFhYTJmYTdiY2U0Nzk3ZjU1NzY4YmRlNDY4N2Q0MzU3YWM1MDJlMDg2ZDI2ZDA4JyxcbiAgICAgICAgaW5kZXg6IDAsXG4gICAgICAgIHZhbHVlOiAxMDAwMDAwbixcbiAgICAgICAgZXJnb1RyZWU6XG4gICAgICAgICAgJzEwMDUwNDAwMDQwMDA1MDAwNDAwMGUyMDAxMWQzMzY0ZGUwN2U1YTI2ZjBjNGVlZjA4NTJjZGRiMzg3MDM5YTkyMWI3MTU0ZWYzY2FiMjJjNmVkYTg4N2ZkODAzZDYwMWIyYTU3MzAwMDBkNjAyZTRjNmE3MDQwN2Q2MDNiMmRiNjUwMWZlNzMwMTAwZWEwMmQxZWRlZGVkZWRlZDkzZTRjNjcyMDEwNDA3NzIwMjkzZTRjNjcyMDEwNTBlYzU3MjAzOTFlNGM2NzIwMTA2MDU3MzAyOTNjMjcyMDFjMmE3OTNkYjYzMDg3MjAxZGI2MzA4YTc5MzhjYjJkYjYzMDg3MjAzNzMwMzAwMDE3MzA0Y2Q3MjAyJyxcbiAgICAgICAgY3JlYXRpb25IZWlnaHQ6IDEzMjA3MDEsXG4gICAgICAgIGFzc2V0czogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHRva2VuSWQ6XG4gICAgICAgICAgICAgICc4YzI3ZGQ5ZDhhMzVhYWMxZTMxNjdkNTg4NThjMGE4YjQwNTliMjc3ZGE3OTA1NTJlMzdlYmEyMmRmOWI5MDM1JyxcbiAgICAgICAgICAgIGFtb3VudDogMW4sXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgYWRkaXRpb25hbFJlZ2lzdGVyczoge1xuICAgICAgICAgIFI0OiAnMDcwMmMxZDQzNGRhYzg3NjVmYzEyNjlhZjgyOTU4ZDhhYTM1MGRhNTM5MDcwOTZiMzVmNzc0N2NjMzcyYTdlNmU2OWQnLFxuICAgICAgICAgIFI1OiAnMGUyMDU2YjhiN2MyYWU0NTg3NmVjOWE3OWM1NzVkNjZmNmJlMWVhZDU0OTg4NzlmMDhkZjAwYjQwZGFhNjJhZTFiOTQnLFxuICAgICAgICAgIFI2OiAnMDU4Y2VlOTRhYTA5JyxcbiAgICAgICAgfSxcbiAgICAgICAgYm94SWQ6XG4gICAgICAgICAgJ2JlNTBjZjhiNGJmMTU2ZTA4MmMxZjQ4MTk5ODExY2VjMDgxYjEyMzgzNDQyMmFjNjRlOTY1OWIzNmJjMDI5ZjInLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgdHJhbnNhY3Rpb25JZDpcbiAgICAgICAgICAnNDFkMTY0ODRkZWFiNzgwNjlhYWEyZmE3YmNlNDc5N2Y1NTc2OGJkZTQ2ODdkNDM1N2FjNTAyZTA4NmQyNmQwOCcsXG4gICAgICAgIGluZGV4OiAxLFxuICAgICAgICB2YWx1ZTogMTUwMDAwMG4sXG4gICAgICAgIGVyZ29UcmVlOlxuICAgICAgICAgICcxMDA1MDQwMDA0MDAwZTM2MTAwMjA0YTAwYjA4Y2QwMjc5YmU2NjdlZjlkY2JiYWM1NWEwNjI5NWNlODcwYjA3MDI5YmZjZGIyZGNlMjhkOTU5ZjI4MTViMTZmODE3OThlYTAyZDE5MmEzOWE4Y2M3YTcwMTczMDA3MzAxMTAwMTAyMDQwMmQxOTY4MzAzMDE5M2EzOGNjN2IyYTU3MzAwMDAwMTkzYzJiMmE1NzMwMTAwNzQ3MzAyNzMwMzgzMDEwOGNkZWVhYzkzYjFhNTczMDQnLFxuICAgICAgICBjcmVhdGlvbkhlaWdodDogMTMyMDcwMSxcbiAgICAgICAgYXNzZXRzOiBbXSxcbiAgICAgICAgYWRkaXRpb25hbFJlZ2lzdGVyczoge30sXG4gICAgICAgIGJveElkOlxuICAgICAgICAgICc5ZGY4NWJhMTFlMDdjNmZhN2JkMzlmNzQ3MzFiYjAzNTM4ZDM2ZGVkYjU4NzRmMzEzYmY2YjMyYTNhZGRkYWEzJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHRyYW5zYWN0aW9uSWQ6XG4gICAgICAgICAgJzQxZDE2NDg0ZGVhYjc4MDY5YWFhMmZhN2JjZTQ3OTdmNTU3NjhiZGU0Njg3ZDQzNTdhYzUwMmUwODZkMjZkMDgnLFxuICAgICAgICBpbmRleDogMixcbiAgICAgICAgdmFsdWU6IDM3MzAxMTY0MTBuLFxuICAgICAgICBlcmdvVHJlZTpcbiAgICAgICAgICAnMDAwOGNkMDJjMWQ0MzRkYWM4NzY1ZmMxMjY5YWY4Mjk1OGQ4YWEzNTBkYTUzOTA3MDk2YjM1Zjc3NDdjYzM3MmE3ZTZlNjlkJyxcbiAgICAgICAgY3JlYXRpb25IZWlnaHQ6IDEzMjA3MDEsXG4gICAgICAgIGFzc2V0czogW10sXG4gICAgICAgIGFkZGl0aW9uYWxSZWdpc3RlcnM6IHt9LFxuICAgICAgICBib3hJZDpcbiAgICAgICAgICAnMGNmNGY0YTM2Mzg0NjQ2MTJkYzcxMGZmMGM5NjEzZTEwZTIzZTA5MGJmOGFkMjFmODMwMjc3ZmEwYTRmNGMxYicsXG4gICAgICB9LFxuICAgIF0sXG4gICAgaW5wdXRzOiBbXG4gICAgICB7XG4gICAgICAgIGJveElkOlxuICAgICAgICAgICczNzE1Yzk1MzI2OWE4Mjk2NDFkYjAwMjJmM2E3YWI2NzkxNzkxMTQ5MWM2ZjM2M2FiODYzZDdhZDQyNzg1NDM3JyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGJveElkOlxuICAgICAgICAgICc4ODEwNTc3NmQ2ODJkNjQ1ZGU1N2ExYWExNTY5NjY1ZWJmYzU3MTM4Y2E5MDcyYzc0NzIyNzRkYzBlMWY2NzQ2JyxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBkYXRhSW5wdXRzOiBbXG4gICAgICB7XG4gICAgICAgIGJveElkOlxuICAgICAgICAgICc1NmI4YjdjMmFlNDU4NzZlYzlhNzljNTc1ZDY2ZjZiZTFlYWQ1NDk4ODc5ZjA4ZGYwMGI0MGRhYTYyYWUxYjk0JyxcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcbiAge1xuICAgIGlkOiAnMGZiZDVjODJkYzBhNDMxNmE0MGE5ZDFkZTRmMDk0OWM1MDNiMzljNWZlMGUzZTExM2UyNmQ0MzU1ODI4NWVmNycsXG4gICAgaW5jbHVzaW9uSGVpZ2h0OiAxMzIwNjk4LFxuICAgIGJsb2NrSWQ6ICc5MmVhZmYxMWE0YTFjMjliODY1NDQ3MzI1OGY5ZDgzN2U5Y2U5OWZjMGE4YTRmMjdjNDg0ZDU4NzFhZmNkZTY0JyxcbiAgICBvdXRwdXRzOiBbXG4gICAgICB7XG4gICAgICAgIHRyYW5zYWN0aW9uSWQ6XG4gICAgICAgICAgJzBmYmQ1YzgyZGMwYTQzMTZhNDBhOWQxZGU0ZjA5NDljNTAzYjM5YzVmZTBlM2UxMTNlMjZkNDM1NTgyODVlZjcnLFxuICAgICAgICBpbmRleDogMCxcbiAgICAgICAgdmFsdWU6IDEwMDAwMDBuLFxuICAgICAgICBlcmdvVHJlZTpcbiAgICAgICAgICAnMTAwNTA0MDAwNDAwMDUwMDA0MDAwZTIwMDExZDMzNjRkZTA3ZTVhMjZmMGM0ZWVmMDg1MmNkZGIzODcwMzlhOTIxYjcxNTRlZjNjYWIyMmM2ZWRhODg3ZmQ4MDNkNjAxYjJhNTczMDAwMGQ2MDJlNGM2YTcwNDA3ZDYwM2IyZGI2NTAxZmU3MzAxMDBlYTAyZDFlZGVkZWRlZGVkOTNlNGM2NzIwMTA0MDc3MjAyOTNlNGM2NzIwMTA1MGVjNTcyMDM5MWU0YzY3MjAxMDYwNTczMDI5M2MyNzIwMWMyYTc5M2RiNjMwODcyMDFkYjYzMDhhNzkzOGNiMmRiNjMwODcyMDM3MzAzMDAwMTczMDRjZDcyMDInLFxuICAgICAgICBjcmVhdGlvbkhlaWdodDogMTMyMDY5NixcbiAgICAgICAgYXNzZXRzOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgdG9rZW5JZDpcbiAgICAgICAgICAgICAgJzhjMjdkZDlkOGEzNWFhYzFlMzE2N2Q1ODg1OGMwYThiNDA1OWIyNzdkYTc5MDU1MmUzN2ViYTIyZGY5YjkwMzUnLFxuICAgICAgICAgICAgYW1vdW50OiAxbixcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBhZGRpdGlvbmFsUmVnaXN0ZXJzOiB7XG4gICAgICAgICAgUjQ6ICcwNzAyYzFkNDM0ZGFjODc2NWZjMTI2OWFmODI5NThkOGFhMzUwZGE1MzkwNzA5NmIzNWY3NzQ3Y2MzNzJhN2U2ZTY5ZCcsXG4gICAgICAgICAgUjU6ICcwZTIwNTZiOGI3YzJhZTQ1ODc2ZWM5YTc5YzU3NWQ2NmY2YmUxZWFkNTQ5ODg3OWYwOGRmMDBiNDBkYWE2MmFlMWI5NCcsXG4gICAgICAgICAgUjY6ICcwNThjZWU5NGFhMDknLFxuICAgICAgICB9LFxuICAgICAgICBib3hJZDpcbiAgICAgICAgICAnMzcxNWM5NTMyNjlhODI5NjQxZGIwMDIyZjNhN2FiNjc5MTc5MTE0OTFjNmYzNjNhYjg2M2Q3YWQ0Mjc4NTQzNycsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICB0cmFuc2FjdGlvbklkOlxuICAgICAgICAgICcwZmJkNWM4MmRjMGE0MzE2YTQwYTlkMWRlNGYwOTQ5YzUwM2IzOWM1ZmUwZTNlMTEzZTI2ZDQzNTU4Mjg1ZWY3JyxcbiAgICAgICAgaW5kZXg6IDEsXG4gICAgICAgIHZhbHVlOiAxNTAwMDAwbixcbiAgICAgICAgZXJnb1RyZWU6XG4gICAgICAgICAgJzEwMDUwNDAwMDQwMDBlMzYxMDAyMDRhMDBiMDhjZDAyNzliZTY2N2VmOWRjYmJhYzU1YTA2Mjk1Y2U4NzBiMDcwMjliZmNkYjJkY2UyOGQ5NTlmMjgxNWIxNmY4MTc5OGVhMDJkMTkyYTM5YThjYzdhNzAxNzMwMDczMDExMDAxMDIwNDAyZDE5NjgzMDMwMTkzYTM4Y2M3YjJhNTczMDAwMDAxOTNjMmIyYTU3MzAxMDA3NDczMDI3MzAzODMwMTA4Y2RlZWFjOTNiMWE1NzMwNCcsXG4gICAgICAgIGNyZWF0aW9uSGVpZ2h0OiAxMzIwNjk2LFxuICAgICAgICBhc3NldHM6IFtdLFxuICAgICAgICBhZGRpdGlvbmFsUmVnaXN0ZXJzOiB7fSxcbiAgICAgICAgYm94SWQ6XG4gICAgICAgICAgJ2VmMzFkNGNlYTNjZDlmYTk2MGQyNTRkMDc3NDJkNzU5Y2Y0MDc2NjkwZDBmZDFmZmU0NDI5MTJiYzhhMGZiMTgnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgdHJhbnNhY3Rpb25JZDpcbiAgICAgICAgICAnMGZiZDVjODJkYzBhNDMxNmE0MGE5ZDFkZTRmMDk0OWM1MDNiMzljNWZlMGUzZTExM2UyNmQ0MzU1ODI4NWVmNycsXG4gICAgICAgIGluZGV4OiAyLFxuICAgICAgICB2YWx1ZTogMjMyNzk5Nzg1NzFuLFxuICAgICAgICBlcmdvVHJlZTpcbiAgICAgICAgICAnMDAwOGNkMDJjMWQ0MzRkYWM4NzY1ZmMxMjY5YWY4Mjk1OGQ4YWEzNTBkYTUzOTA3MDk2YjM1Zjc3NDdjYzM3MmE3ZTZlNjlkJyxcbiAgICAgICAgY3JlYXRpb25IZWlnaHQ6IDEzMjA2OTYsXG4gICAgICAgIGFzc2V0czogW10sXG4gICAgICAgIGFkZGl0aW9uYWxSZWdpc3RlcnM6IHt9LFxuICAgICAgICBib3hJZDpcbiAgICAgICAgICAnYjZkYjBjNTYyOTg1MGI2MmE1OGE5YzBkYWU5NTZlMWNlMTQ0MzhmNWQ0OGNhNzVjM2U1NWU2MGRmMTc4MzZjYicsXG4gICAgICB9LFxuICAgIF0sXG4gICAgaW5wdXRzOiBbXG4gICAgICB7XG4gICAgICAgIGJveElkOlxuICAgICAgICAgICc1NWNlYzg4MGRjZGNlMWM5MTRkZTIwYTFmY2FmOTQ5YTc2ZjFlNWU1YjJkNDc0ZTM1MWM5ZDExZjJhMDA0NzJjJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGJveElkOlxuICAgICAgICAgICcxMTFkNDg3ZDY1ZDVhZDVmNzE1YTZlMGZmMWJiZDU4ODU5NmY3M2Y3ZDgzOTRlYjdmNTBmMWQyNzhlNDgyYjg4JyxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBkYXRhSW5wdXRzOiBbXG4gICAgICB7XG4gICAgICAgIGJveElkOlxuICAgICAgICAgICc1NmI4YjdjMmFlNDU4NzZlYzlhNzljNTc1ZDY2ZjZiZTFlYWQ1NDk4ODc5ZjA4ZGYwMGI0MGRhYTYyYWUxYjk0JyxcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcbl07XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ExplorerNetwork.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExplorerNetwork.spec.d.ts","sourceRoot":"","sources":["../../../tests/network/ExplorerNetwork.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,62 @@
1
+ import { describe, expect, it, vitest } from 'vitest';
2
+ import ergoExplorerClientFactory from '@rosen-clients/ergo-explorer';
3
+ import { omit } from 'lodash-es';
4
+ import { ExplorerNetwork } from '../../lib';
5
+ import { convertedBox, explorerBox, explorerTxInfo, convertedTx, explorerTx, explorerBlockTx, } from './testData';
6
+ vitest.mock('@rosen-clients/ergo-explorer');
7
+ describe('ExplorerNetwork', () => {
8
+ describe('convertBox', () => {
9
+ /**
10
+ * @target covertBox should properly convert explorer api box to ergo box
11
+ * @dependencies
12
+ * @scenario
13
+ * - mock getApiV1TransactionsP1 to return spending transaction
14
+ * - run test (call `covertBox`)
15
+ * @expected
16
+ * - to convert box properly
17
+ */
18
+ it('should properly convert explorer api box to ergo box', async () => {
19
+ vitest.mocked(ergoExplorerClientFactory).mockReturnValue({
20
+ v1: {
21
+ getApiV1TransactionsP1: async () => explorerTxInfo,
22
+ },
23
+ });
24
+ const explorerNetwork = new ExplorerNetwork('explorer_url');
25
+ const ergoBox = await explorerNetwork['convertBox'](explorerBox);
26
+ expect(ergoBox).toEqual(convertedBox);
27
+ });
28
+ });
29
+ describe('convertTransaction', () => {
30
+ /**
31
+ * @target convertTransaction should properly convert explorer api tx to
32
+ * extractor transaction
33
+ * @dependencies
34
+ * @scenario
35
+ * - run test (call `convertTransaction`)
36
+ * @expected
37
+ * - to convert tx properly
38
+ */
39
+ it('should properly convert explorer api tx to extractor transaction', async () => {
40
+ const explorerNetwork = new ExplorerNetwork('explorer_url');
41
+ const tx = await explorerNetwork['convertTransaction'](explorerTx);
42
+ expect(tx).toEqual(convertedTx);
43
+ });
44
+ });
45
+ describe('convertBlockTransaction', () => {
46
+ /**
47
+ * @target convertBlockTransaction should properly convert explorer api tx to
48
+ * transaction type
49
+ * @dependencies
50
+ * @scenario
51
+ * - run test (call `convertBlockTransaction`)
52
+ * @expected
53
+ * - to convert tx properly
54
+ */
55
+ it('should properly convert explorer api tx to transaction type', async () => {
56
+ const explorerNetwork = new ExplorerNetwork('explorer_url');
57
+ const tx = await explorerNetwork['convertBlockTransaction'](explorerBlockTx);
58
+ expect(tx).toEqual(omit(convertedTx, ['blockId', 'inclusionHeight']));
59
+ });
60
+ });
61
+ });
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXhwbG9yZXJOZXR3b3JrLnNwZWMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90ZXN0cy9uZXR3b3JrL0V4cGxvcmVyTmV0d29yay5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDdEQsT0FBTyx5QkFBeUIsTUFBTSw4QkFBOEIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRWpDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDNUMsT0FBTyxFQUNMLFlBQVksRUFDWixXQUFXLEVBQ1gsY0FBYyxFQUNkLFdBQVcsRUFDWCxVQUFVLEVBQ1YsZUFBZSxHQUNoQixNQUFNLFlBQVksQ0FBQztBQUVwQixNQUFNLENBQUMsSUFBSSxDQUFDLDhCQUE4QixDQUFDLENBQUM7QUFFNUMsUUFBUSxDQUFDLGlCQUFpQixFQUFFLEdBQUcsRUFBRTtJQUMvQixRQUFRLENBQUMsWUFBWSxFQUFFLEdBQUcsRUFBRTtRQUMxQjs7Ozs7Ozs7V0FRRztRQUNILEVBQUUsQ0FBQyxzREFBc0QsRUFBRSxLQUFLLElBQUksRUFBRTtZQUNwRSxNQUFNLENBQUMsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUMsZUFBZSxDQUFDO2dCQUN2RCxFQUFFLEVBQUU7b0JBQ0Ysc0JBQXNCLEVBQUUsS0FBSyxJQUFJLEVBQUUsQ0FBQyxjQUFjO2lCQUNuRDthQUN5RCxDQUFDLENBQUM7WUFDOUQsTUFBTSxlQUFlLEdBQUcsSUFBSSxlQUFlLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDNUQsTUFBTSxPQUFPLEdBQUcsTUFBTSxlQUFlLENBQUMsWUFBWSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDakUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN4QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0lBRUgsUUFBUSxDQUFDLG9CQUFvQixFQUFFLEdBQUcsRUFBRTtRQUNsQzs7Ozs7Ozs7V0FRRztRQUNILEVBQUUsQ0FBQyxrRUFBa0UsRUFBRSxLQUFLLElBQUksRUFBRTtZQUNoRixNQUFNLGVBQWUsR0FBRyxJQUFJLGVBQWUsQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUM1RCxNQUFNLEVBQUUsR0FBRyxNQUFNLGVBQWUsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ25FLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVILFFBQVEsQ0FBQyx5QkFBeUIsRUFBRSxHQUFHLEVBQUU7UUFDdkM7Ozs7Ozs7O1dBUUc7UUFDSCxFQUFFLENBQUMsNkRBQTZELEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDM0UsTUFBTSxlQUFlLEdBQUcsSUFBSSxlQUFlLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDNUQsTUFBTSxFQUFFLEdBQUcsTUFBTSxlQUFlLENBQUMseUJBQXlCLENBQUMsQ0FDekQsZUFBZSxDQUNoQixDQUFDO1lBQ0YsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxFQUFFLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRlc2NyaWJlLCBleHBlY3QsIGl0LCB2aXRlc3QgfSBmcm9tICd2aXRlc3QnO1xuaW1wb3J0IGVyZ29FeHBsb3JlckNsaWVudEZhY3RvcnkgZnJvbSAnQHJvc2VuLWNsaWVudHMvZXJnby1leHBsb3Jlcic7XG5pbXBvcnQgeyBvbWl0IH0gZnJvbSAnbG9kYXNoLWVzJztcblxuaW1wb3J0IHsgRXhwbG9yZXJOZXR3b3JrIH0gZnJvbSAnLi4vLi4vbGliJztcbmltcG9ydCB7XG4gIGNvbnZlcnRlZEJveCxcbiAgZXhwbG9yZXJCb3gsXG4gIGV4cGxvcmVyVHhJbmZvLFxuICBjb252ZXJ0ZWRUeCxcbiAgZXhwbG9yZXJUeCxcbiAgZXhwbG9yZXJCbG9ja1R4LFxufSBmcm9tICcuL3Rlc3REYXRhJztcblxudml0ZXN0Lm1vY2soJ0Byb3Nlbi1jbGllbnRzL2VyZ28tZXhwbG9yZXInKTtcblxuZGVzY3JpYmUoJ0V4cGxvcmVyTmV0d29yaycsICgpID0+IHtcbiAgZGVzY3JpYmUoJ2NvbnZlcnRCb3gnLCAoKSA9PiB7XG4gICAgLyoqXG4gICAgICogQHRhcmdldCBjb3ZlcnRCb3ggc2hvdWxkIHByb3Blcmx5IGNvbnZlcnQgZXhwbG9yZXIgYXBpIGJveCB0byBlcmdvIGJveFxuICAgICAqIEBkZXBlbmRlbmNpZXNcbiAgICAgKiBAc2NlbmFyaW9cbiAgICAgKiAtIG1vY2sgZ2V0QXBpVjFUcmFuc2FjdGlvbnNQMSB0byByZXR1cm4gc3BlbmRpbmcgdHJhbnNhY3Rpb25cbiAgICAgKiAtIHJ1biB0ZXN0IChjYWxsIGBjb3ZlcnRCb3hgKVxuICAgICAqIEBleHBlY3RlZFxuICAgICAqIC0gdG8gY29udmVydCBib3ggcHJvcGVybHlcbiAgICAgKi9cbiAgICBpdCgnc2hvdWxkIHByb3Blcmx5IGNvbnZlcnQgZXhwbG9yZXIgYXBpIGJveCB0byBlcmdvIGJveCcsIGFzeW5jICgpID0+IHtcbiAgICAgIHZpdGVzdC5tb2NrZWQoZXJnb0V4cGxvcmVyQ2xpZW50RmFjdG9yeSkubW9ja1JldHVyblZhbHVlKHtcbiAgICAgICAgdjE6IHtcbiAgICAgICAgICBnZXRBcGlWMVRyYW5zYWN0aW9uc1AxOiBhc3luYyAoKSA9PiBleHBsb3JlclR4SW5mbyxcbiAgICAgICAgfSxcbiAgICAgIH0gYXMgdW5rbm93biBhcyBSZXR1cm5UeXBlPHR5cGVvZiBlcmdvRXhwbG9yZXJDbGllbnRGYWN0b3J5Pik7XG4gICAgICBjb25zdCBleHBsb3Jlck5ldHdvcmsgPSBuZXcgRXhwbG9yZXJOZXR3b3JrKCdleHBsb3Jlcl91cmwnKTtcbiAgICAgIGNvbnN0IGVyZ29Cb3ggPSBhd2FpdCBleHBsb3Jlck5ldHdvcmtbJ2NvbnZlcnRCb3gnXShleHBsb3JlckJveCk7XG4gICAgICBleHBlY3QoZXJnb0JveCkudG9FcXVhbChjb252ZXJ0ZWRCb3gpO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnY29udmVydFRyYW5zYWN0aW9uJywgKCkgPT4ge1xuICAgIC8qKlxuICAgICAqIEB0YXJnZXQgY29udmVydFRyYW5zYWN0aW9uIHNob3VsZCBwcm9wZXJseSBjb252ZXJ0IGV4cGxvcmVyIGFwaSB0eCB0b1xuICAgICAqIGV4dHJhY3RvciB0cmFuc2FjdGlvblxuICAgICAqIEBkZXBlbmRlbmNpZXNcbiAgICAgKiBAc2NlbmFyaW9cbiAgICAgKiAtIHJ1biB0ZXN0IChjYWxsIGBjb252ZXJ0VHJhbnNhY3Rpb25gKVxuICAgICAqIEBleHBlY3RlZFxuICAgICAqIC0gdG8gY29udmVydCB0eCBwcm9wZXJseVxuICAgICAqL1xuICAgIGl0KCdzaG91bGQgcHJvcGVybHkgY29udmVydCBleHBsb3JlciBhcGkgdHggdG8gZXh0cmFjdG9yIHRyYW5zYWN0aW9uJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgZXhwbG9yZXJOZXR3b3JrID0gbmV3IEV4cGxvcmVyTmV0d29yaygnZXhwbG9yZXJfdXJsJyk7XG4gICAgICBjb25zdCB0eCA9IGF3YWl0IGV4cGxvcmVyTmV0d29ya1snY29udmVydFRyYW5zYWN0aW9uJ10oZXhwbG9yZXJUeCk7XG4gICAgICBleHBlY3QodHgpLnRvRXF1YWwoY29udmVydGVkVHgpO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnY29udmVydEJsb2NrVHJhbnNhY3Rpb24nLCAoKSA9PiB7XG4gICAgLyoqXG4gICAgICogQHRhcmdldCBjb252ZXJ0QmxvY2tUcmFuc2FjdGlvbiBzaG91bGQgcHJvcGVybHkgY29udmVydCBleHBsb3JlciBhcGkgdHggdG9cbiAgICAgKiB0cmFuc2FjdGlvbiB0eXBlXG4gICAgICogQGRlcGVuZGVuY2llc1xuICAgICAqIEBzY2VuYXJpb1xuICAgICAqIC0gcnVuIHRlc3QgKGNhbGwgYGNvbnZlcnRCbG9ja1RyYW5zYWN0aW9uYClcbiAgICAgKiBAZXhwZWN0ZWRcbiAgICAgKiAtIHRvIGNvbnZlcnQgdHggcHJvcGVybHlcbiAgICAgKi9cbiAgICBpdCgnc2hvdWxkIHByb3Blcmx5IGNvbnZlcnQgZXhwbG9yZXIgYXBpIHR4IHRvIHRyYW5zYWN0aW9uIHR5cGUnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBleHBsb3Jlck5ldHdvcmsgPSBuZXcgRXhwbG9yZXJOZXR3b3JrKCdleHBsb3Jlcl91cmwnKTtcbiAgICAgIGNvbnN0IHR4ID0gYXdhaXQgZXhwbG9yZXJOZXR3b3JrWydjb252ZXJ0QmxvY2tUcmFuc2FjdGlvbiddKFxuICAgICAgICBleHBsb3JlckJsb2NrVHhcbiAgICAgICk7XG4gICAgICBleHBlY3QodHgpLnRvRXF1YWwob21pdChjb252ZXJ0ZWRUeCwgWydibG9ja0lkJywgJ2luY2x1c2lvbkhlaWdodCddKSk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=NodeNetwork.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeNetwork.spec.d.ts","sourceRoot":"","sources":["../../../tests/network/NodeNetwork.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,49 @@
1
+ import { describe, expect, it, vitest } from 'vitest';
2
+ import ergoNodeClientFactory from '@rosen-clients/ergo-node';
3
+ import { NodeNetwork } from '../../lib';
4
+ import { convertedBox, nodeBox, nodeSpendingTxInfo, nodeCreationTxInfo, nodeTx, convertedTx, } from './testData';
5
+ vitest.mock('@rosen-clients/ergo-node');
6
+ describe('NodeNetwork', () => {
7
+ describe('convertBox', () => {
8
+ /**
9
+ * @target covertBox should properly convert node api box to ergo box
10
+ * @dependencies
11
+ * @scenario
12
+ * - mock getTxById to return creation and spending transaction
13
+ * - run test (call `covertBox`)
14
+ * @expected
15
+ * - to convert box properly
16
+ */
17
+ it('should properly convert node api box to ergo box', async () => {
18
+ vitest.mocked(ergoNodeClientFactory).mockReturnValue({
19
+ getTxById: async (txId) => {
20
+ if (txId == nodeSpendingTxInfo.id)
21
+ return nodeSpendingTxInfo;
22
+ else
23
+ return nodeCreationTxInfo;
24
+ },
25
+ });
26
+ const nodeNetwork = new NodeNetwork('node_url');
27
+ const ergoBox = await nodeNetwork['convertBox'](nodeBox);
28
+ expect(ergoBox).toEqual(convertedBox);
29
+ });
30
+ });
31
+ describe('convertTransaction', () => {
32
+ /**
33
+ * @target convertTransaction should properly convert node api tx to
34
+ * extractor transaction
35
+ * @dependencies
36
+ * @scenario
37
+ * - mock getTxById to return creation and spending transaction
38
+ * - run test (call `convertTransaction`)
39
+ * @expected
40
+ * - to convert tx properly
41
+ */
42
+ it('should properly convert node api tx to extractor transaction', async () => {
43
+ const nodeNetwork = new NodeNetwork('node_url');
44
+ const tx = await nodeNetwork['convertTransaction'](nodeTx);
45
+ expect(tx).toEqual(convertedTx);
46
+ });
47
+ });
48
+ });
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTm9kZU5ldHdvcmsuc3BlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Rlc3RzL25ldHdvcmsvTm9kZU5ldHdvcmsuc3BlYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3RELE9BQU8scUJBQXFCLE1BQU0sMEJBQTBCLENBQUM7QUFFN0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN4QyxPQUFPLEVBQ0wsWUFBWSxFQUNaLE9BQU8sRUFDUCxrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLE1BQU0sRUFDTixXQUFXLEdBQ1osTUFBTSxZQUFZLENBQUM7QUFFcEIsTUFBTSxDQUFDLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0FBRXhDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsR0FBRyxFQUFFO0lBQzNCLFFBQVEsQ0FBQyxZQUFZLEVBQUUsR0FBRyxFQUFFO1FBQzFCOzs7Ozs7OztXQVFHO1FBQ0gsRUFBRSxDQUFDLGtEQUFrRCxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ2hFLE1BQU0sQ0FBQyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQyxlQUFlLENBQUM7Z0JBQ25ELFNBQVMsRUFBRSxLQUFLLEVBQUUsSUFBWSxFQUFFLEVBQUU7b0JBQ2hDLElBQUksSUFBSSxJQUFJLGtCQUFrQixDQUFDLEVBQUU7d0JBQUUsT0FBTyxrQkFBa0IsQ0FBQzs7d0JBQ3hELE9BQU8sa0JBQWtCLENBQUM7Z0JBQ2pDLENBQUM7YUFDcUQsQ0FBQyxDQUFDO1lBQzFELE1BQU0sV0FBVyxHQUFHLElBQUksV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ2hELE1BQU0sT0FBTyxHQUFHLE1BQU0sV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3pELE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDeEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVILFFBQVEsQ0FBQyxvQkFBb0IsRUFBRSxHQUFHLEVBQUU7UUFDbEM7Ozs7Ozs7OztXQVNHO1FBQ0gsRUFBRSxDQUFDLDhEQUE4RCxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQzVFLE1BQU0sV0FBVyxHQUFHLElBQUksV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ2hELE1BQU0sRUFBRSxHQUFHLE1BQU0sV0FBVyxDQUFDLG9CQUFvQixDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDM0QsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNsQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBkZXNjcmliZSwgZXhwZWN0LCBpdCwgdml0ZXN0IH0gZnJvbSAndml0ZXN0JztcbmltcG9ydCBlcmdvTm9kZUNsaWVudEZhY3RvcnkgZnJvbSAnQHJvc2VuLWNsaWVudHMvZXJnby1ub2RlJztcblxuaW1wb3J0IHsgTm9kZU5ldHdvcmsgfSBmcm9tICcuLi8uLi9saWInO1xuaW1wb3J0IHtcbiAgY29udmVydGVkQm94LFxuICBub2RlQm94LFxuICBub2RlU3BlbmRpbmdUeEluZm8sXG4gIG5vZGVDcmVhdGlvblR4SW5mbyxcbiAgbm9kZVR4LFxuICBjb252ZXJ0ZWRUeCxcbn0gZnJvbSAnLi90ZXN0RGF0YSc7XG5cbnZpdGVzdC5tb2NrKCdAcm9zZW4tY2xpZW50cy9lcmdvLW5vZGUnKTtcblxuZGVzY3JpYmUoJ05vZGVOZXR3b3JrJywgKCkgPT4ge1xuICBkZXNjcmliZSgnY29udmVydEJveCcsICgpID0+IHtcbiAgICAvKipcbiAgICAgKiBAdGFyZ2V0IGNvdmVydEJveCBzaG91bGQgcHJvcGVybHkgY29udmVydCBub2RlIGFwaSBib3ggdG8gZXJnbyBib3hcbiAgICAgKiBAZGVwZW5kZW5jaWVzXG4gICAgICogQHNjZW5hcmlvXG4gICAgICogLSBtb2NrIGdldFR4QnlJZCB0byByZXR1cm4gY3JlYXRpb24gYW5kIHNwZW5kaW5nIHRyYW5zYWN0aW9uXG4gICAgICogLSBydW4gdGVzdCAoY2FsbCBgY292ZXJ0Qm94YClcbiAgICAgKiBAZXhwZWN0ZWRcbiAgICAgKiAtIHRvIGNvbnZlcnQgYm94IHByb3Blcmx5XG4gICAgICovXG4gICAgaXQoJ3Nob3VsZCBwcm9wZXJseSBjb252ZXJ0IG5vZGUgYXBpIGJveCB0byBlcmdvIGJveCcsIGFzeW5jICgpID0+IHtcbiAgICAgIHZpdGVzdC5tb2NrZWQoZXJnb05vZGVDbGllbnRGYWN0b3J5KS5tb2NrUmV0dXJuVmFsdWUoe1xuICAgICAgICBnZXRUeEJ5SWQ6IGFzeW5jICh0eElkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICBpZiAodHhJZCA9PSBub2RlU3BlbmRpbmdUeEluZm8uaWQpIHJldHVybiBub2RlU3BlbmRpbmdUeEluZm87XG4gICAgICAgICAgZWxzZSByZXR1cm4gbm9kZUNyZWF0aW9uVHhJbmZvO1xuICAgICAgICB9LFxuICAgICAgfSBhcyB1bmtub3duIGFzIFJldHVyblR5cGU8dHlwZW9mIGVyZ29Ob2RlQ2xpZW50RmFjdG9yeT4pO1xuICAgICAgY29uc3Qgbm9kZU5ldHdvcmsgPSBuZXcgTm9kZU5ldHdvcmsoJ25vZGVfdXJsJyk7XG4gICAgICBjb25zdCBlcmdvQm94ID0gYXdhaXQgbm9kZU5ldHdvcmtbJ2NvbnZlcnRCb3gnXShub2RlQm94KTtcbiAgICAgIGV4cGVjdChlcmdvQm94KS50b0VxdWFsKGNvbnZlcnRlZEJveCk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdjb252ZXJ0VHJhbnNhY3Rpb24nLCAoKSA9PiB7XG4gICAgLyoqXG4gICAgICogQHRhcmdldCBjb252ZXJ0VHJhbnNhY3Rpb24gc2hvdWxkIHByb3Blcmx5IGNvbnZlcnQgbm9kZSBhcGkgdHggdG9cbiAgICAgKiBleHRyYWN0b3IgdHJhbnNhY3Rpb25cbiAgICAgKiBAZGVwZW5kZW5jaWVzXG4gICAgICogQHNjZW5hcmlvXG4gICAgICogLSBtb2NrIGdldFR4QnlJZCB0byByZXR1cm4gY3JlYXRpb24gYW5kIHNwZW5kaW5nIHRyYW5zYWN0aW9uXG4gICAgICogLSBydW4gdGVzdCAoY2FsbCBgY29udmVydFRyYW5zYWN0aW9uYClcbiAgICAgKiBAZXhwZWN0ZWRcbiAgICAgKiAtIHRvIGNvbnZlcnQgdHggcHJvcGVybHlcbiAgICAgKi9cbiAgICBpdCgnc2hvdWxkIHByb3Blcmx5IGNvbnZlcnQgbm9kZSBhcGkgdHggdG8gZXh0cmFjdG9yIHRyYW5zYWN0aW9uJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3Qgbm9kZU5ldHdvcmsgPSBuZXcgTm9kZU5ldHdvcmsoJ25vZGVfdXJsJyk7XG4gICAgICBjb25zdCB0eCA9IGF3YWl0IG5vZGVOZXR3b3JrWydjb252ZXJ0VHJhbnNhY3Rpb24nXShub2RlVHgpO1xuICAgICAgZXhwZWN0KHR4KS50b0VxdWFsKGNvbnZlcnRlZFR4KTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdfQ==