@my-packages-changeit/watcher-data-extractor 13.0.10
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.
- package/CHANGELOG.md +394 -0
- package/README.md +74 -0
- package/dist/actions/collateralAction.d.ts +25 -0
- package/dist/actions/collateralAction.d.ts.map +1 -0
- package/dist/actions/collateralAction.js +34 -0
- package/dist/actions/commitmentAction.d.ts +43 -0
- package/dist/actions/commitmentAction.d.ts.map +1 -0
- package/dist/actions/commitmentAction.js +138 -0
- package/dist/actions/eventTriggerAction.d.ts +29 -0
- package/dist/actions/eventTriggerAction.d.ts.map +1 -0
- package/dist/actions/eventTriggerAction.js +101 -0
- package/dist/actions/permitAction.d.ts +73 -0
- package/dist/actions/permitAction.d.ts.map +1 -0
- package/dist/actions/permitAction.js +187 -0
- package/dist/constants.d.ts +4 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +4 -0
- package/dist/entities/collateralEntity.d.ts +8 -0
- package/dist/entities/collateralEntity.d.ts.map +1 -0
- package/dist/entities/collateralEntity.js +34 -0
- package/dist/entities/commitmentEntity.d.ts +19 -0
- package/dist/entities/commitmentEntity.d.ts.map +1 -0
- package/dist/entities/commitmentEntity.js +93 -0
- package/dist/entities/eventTriggerEntity.d.ts +24 -0
- package/dist/entities/eventTriggerEntity.d.ts.map +1 -0
- package/dist/entities/eventTriggerEntity.js +113 -0
- package/dist/entities/permitEntity.d.ts +14 -0
- package/dist/entities/permitEntity.d.ts.map +1 -0
- package/dist/entities/permitEntity.js +68 -0
- package/dist/extractor/collateralExtractor.d.ts +31 -0
- package/dist/extractor/collateralExtractor.d.ts.map +1 -0
- package/dist/extractor/collateralExtractor.js +72 -0
- package/dist/extractor/commitmentExtractor.d.ts +46 -0
- package/dist/extractor/commitmentExtractor.d.ts.map +1 -0
- package/dist/extractor/commitmentExtractor.js +125 -0
- package/dist/extractor/eventTriggerExtractor.d.ts +57 -0
- package/dist/extractor/eventTriggerExtractor.d.ts.map +1 -0
- package/dist/extractor/eventTriggerExtractor.js +215 -0
- package/dist/extractor/permitExtractor.d.ts +150 -0
- package/dist/extractor/permitExtractor.d.ts.map +1 -0
- package/dist/extractor/permitExtractor.js +235 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12 -0
- package/dist/interfaces/extractedCollateral.d.ts +9 -0
- package/dist/interfaces/extractedCollateral.d.ts.map +1 -0
- package/dist/interfaces/extractedCollateral.js +2 -0
- package/dist/interfaces/extractedCommitment.d.ts +11 -0
- package/dist/interfaces/extractedCommitment.d.ts.map +1 -0
- package/dist/interfaces/extractedCommitment.js +2 -0
- package/dist/interfaces/extractedEventTrigger.d.ts +22 -0
- package/dist/interfaces/extractedEventTrigger.d.ts.map +1 -0
- package/dist/interfaces/extractedEventTrigger.js +2 -0
- package/dist/interfaces/extractedPermit.d.ts +12 -0
- package/dist/interfaces/extractedPermit.d.ts.map +1 -0
- package/dist/interfaces/extractedPermit.js +2 -0
- package/dist/interfaces/types.d.ts +25 -0
- package/dist/interfaces/types.d.ts.map +1 -0
- package/dist/interfaces/types.js +2 -0
- package/dist/migrations/index.d.ts +7 -0
- package/dist/migrations/index.d.ts.map +1 -0
- package/dist/migrations/index.js +45 -0
- package/dist/migrations/postgres/1688554842087-migration.d.ts +7 -0
- package/dist/migrations/postgres/1688554842087-migration.d.ts.map +1 -0
- package/dist/migrations/postgres/1688554842087-migration.js +82 -0
- package/dist/migrations/postgres/1689175974257-migration.d.ts +7 -0
- package/dist/migrations/postgres/1689175974257-migration.d.ts.map +1 -0
- package/dist/migrations/postgres/1689175974257-migration.js +50 -0
- package/dist/migrations/postgres/1699874447928-migration.d.ts +7 -0
- package/dist/migrations/postgres/1699874447928-migration.d.ts.map +1 -0
- package/dist/migrations/postgres/1699874447928-migration.js +36 -0
- package/dist/migrations/postgres/1706610773315-migration.d.ts +7 -0
- package/dist/migrations/postgres/1706610773315-migration.d.ts.map +1 -0
- package/dist/migrations/postgres/1706610773315-migration.js +69 -0
- package/dist/migrations/postgres/1709388482275-migration.d.ts +7 -0
- package/dist/migrations/postgres/1709388482275-migration.d.ts.map +1 -0
- package/dist/migrations/postgres/1709388482275-migration.js +29 -0
- package/dist/migrations/postgres/1737785036299-migration.d.ts +7 -0
- package/dist/migrations/postgres/1737785036299-migration.d.ts.map +1 -0
- package/dist/migrations/postgres/1737785036299-migration.js +32 -0
- package/dist/migrations/postgres/1746354253000-migration.d.ts +7 -0
- package/dist/migrations/postgres/1746354253000-migration.d.ts.map +1 -0
- package/dist/migrations/postgres/1746354253000-migration.js +15 -0
- package/dist/migrations/postgres/1758958886549-migration.d.ts +7 -0
- package/dist/migrations/postgres/1758958886549-migration.d.ts.map +1 -0
- package/dist/migrations/postgres/1758958886549-migration.js +30 -0
- package/dist/migrations/postgres/1766843825000-migration.d.ts +7 -0
- package/dist/migrations/postgres/1766843825000-migration.d.ts.map +1 -0
- package/dist/migrations/postgres/1766843825000-migration.js +42 -0
- package/dist/migrations/sqlite/1688555766601-migration.d.ts +7 -0
- package/dist/migrations/sqlite/1688555766601-migration.d.ts.map +1 -0
- package/dist/migrations/sqlite/1688555766601-migration.js +79 -0
- package/dist/migrations/sqlite/1689175103163-migration.d.ts +7 -0
- package/dist/migrations/sqlite/1689175103163-migration.d.ts.map +1 -0
- package/dist/migrations/sqlite/1689175103163-migration.js +392 -0
- package/dist/migrations/sqlite/1699872205117-migration.d.ts +7 -0
- package/dist/migrations/sqlite/1699872205117-migration.d.ts.map +1 -0
- package/dist/migrations/sqlite/1699872205117-migration.js +192 -0
- package/dist/migrations/sqlite/1706610773176-migration.d.ts +7 -0
- package/dist/migrations/sqlite/1706610773176-migration.d.ts.map +1 -0
- package/dist/migrations/sqlite/1706610773176-migration.js +421 -0
- package/dist/migrations/sqlite/1709388134975-migration.d.ts +7 -0
- package/dist/migrations/sqlite/1709388134975-migration.d.ts.map +1 -0
- package/dist/migrations/sqlite/1709388134975-migration.js +28 -0
- package/dist/migrations/sqlite/1737547743177-migration.d.ts +7 -0
- package/dist/migrations/sqlite/1737547743177-migration.d.ts.map +1 -0
- package/dist/migrations/sqlite/1737547743177-migration.js +204 -0
- package/dist/migrations/sqlite/1746354254000-migration.d.ts +7 -0
- package/dist/migrations/sqlite/1746354254000-migration.d.ts.map +1 -0
- package/dist/migrations/sqlite/1746354254000-migration.js +15 -0
- package/dist/migrations/sqlite/1761774736153-migration.d.ts +7 -0
- package/dist/migrations/sqlite/1761774736153-migration.d.ts.map +1 -0
- package/dist/migrations/sqlite/1761774736153-migration.js +204 -0
- package/dist/migrations/sqlite/1762768664031-migration.d.ts +7 -0
- package/dist/migrations/sqlite/1762768664031-migration.d.ts.map +1 -0
- package/dist/migrations/sqlite/1762768664031-migration.js +204 -0
- package/dist/migrations/sqlite/1766843824000-migration.d.ts +7 -0
- package/dist/migrations/sqlite/1766843824000-migration.d.ts.map +1 -0
- package/dist/migrations/sqlite/1766843824000-migration.js +109 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/types.d.ts +6 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +7 -0
- package/dist/utils.d.ts +25 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +29 -0
- package/package.json +50 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,394 @@
|
|
|
1
|
+
# @rosen-bridge/watcher-data-extractor
|
|
2
|
+
|
|
3
|
+
## 13.0.10
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Update dependencies
|
|
8
|
+
- @rosen-bridge/abstract-extractor@3.2.3
|
|
9
|
+
|
|
10
|
+
## 13.0.9
|
|
11
|
+
|
|
12
|
+
### Patch Changes
|
|
13
|
+
|
|
14
|
+
- Update dependencies
|
|
15
|
+
- @rosen-bridge/abstract-extractor@3.2.2
|
|
16
|
+
- @rosen-bridge/tokens@6.0.2
|
|
17
|
+
- @rosen-clients/ergo-explorer@2.1.3
|
|
18
|
+
|
|
19
|
+
## 13.0.8
|
|
20
|
+
|
|
21
|
+
### Patch Changes
|
|
22
|
+
|
|
23
|
+
- Update dependencies
|
|
24
|
+
- @rosen-bridge/abstract-extractor@3.2.1
|
|
25
|
+
|
|
26
|
+
## 13.0.7
|
|
27
|
+
|
|
28
|
+
### Patch Changes
|
|
29
|
+
|
|
30
|
+
- Update dependencies
|
|
31
|
+
- @rosen-bridge/abstract-extractor@3.2.0
|
|
32
|
+
- @rosen-bridge/scanner-interfaces@1.0.0
|
|
33
|
+
|
|
34
|
+
## 13.0.6
|
|
35
|
+
|
|
36
|
+
### Patch Changes
|
|
37
|
+
|
|
38
|
+
- Update dependencies
|
|
39
|
+
- @rosen-bridge/abstract-extractor@3.1.2
|
|
40
|
+
- @rosen-bridge/extended-typeorm@1.1.0
|
|
41
|
+
- @rosen-bridge/tokens@6.0.1
|
|
42
|
+
|
|
43
|
+
## 13.0.5
|
|
44
|
+
|
|
45
|
+
### Patch Changes
|
|
46
|
+
|
|
47
|
+
- Update dependencies
|
|
48
|
+
- @rosen-bridge/abstract-extractor@3.1.1
|
|
49
|
+
- @rosen-clients/ergo-explorer@2.1.2
|
|
50
|
+
|
|
51
|
+
## 13.0.4
|
|
52
|
+
|
|
53
|
+
### Patch Changes
|
|
54
|
+
|
|
55
|
+
- Update dependencies
|
|
56
|
+
- @rosen-bridge/abstract-extractor@3.1.0
|
|
57
|
+
|
|
58
|
+
## 13.0.3
|
|
59
|
+
|
|
60
|
+
### Patch Changes
|
|
61
|
+
|
|
62
|
+
- Fix sqlite migration on `eventTriggerEntity` table
|
|
63
|
+
|
|
64
|
+
## 13.0.2
|
|
65
|
+
|
|
66
|
+
### Patch Changes
|
|
67
|
+
|
|
68
|
+
- Update dependencies:
|
|
69
|
+
- @rosen-bridge/tokens@6.0.0
|
|
70
|
+
|
|
71
|
+
## 13.0.1
|
|
72
|
+
|
|
73
|
+
### Patch Changes
|
|
74
|
+
|
|
75
|
+
- Update dependencies
|
|
76
|
+
- @rosen-bridge/abstract-extractor@3.0.1
|
|
77
|
+
- @rosen-bridge/scanner-interfaces@0.2.2
|
|
78
|
+
- @rosen-bridge/tokens@5.0.1
|
|
79
|
+
|
|
80
|
+
## 13.0.0
|
|
81
|
+
|
|
82
|
+
### Major Changes
|
|
83
|
+
|
|
84
|
+
- Update AbstractExtractor interface; use `BlockInfo` in `processTransactions` and rename `initializeBoxes` to `initializeData`
|
|
85
|
+
- Update abstract database entity to be general; rename `boxId` columnt to `identifier`
|
|
86
|
+
- Refactor collateral extractor to extend AbstractErgoBoxExtractor
|
|
87
|
+
|
|
88
|
+
### Minor Changes
|
|
89
|
+
|
|
90
|
+
- Update AbstractExtractor interface; add `createUsedBlocksQuery` method that returns the query for used blocks
|
|
91
|
+
|
|
92
|
+
### Patch Changes
|
|
93
|
+
|
|
94
|
+
- Update dependencies
|
|
95
|
+
- @rosen-bridge/abstract-logger@4.0.0
|
|
96
|
+
- @rosen-bridge/abstract-extractor@3.0.0
|
|
97
|
+
|
|
98
|
+
## 12.3.0
|
|
99
|
+
|
|
100
|
+
### Minor Changes
|
|
101
|
+
|
|
102
|
+
- Fixed Sqlite migrations
|
|
103
|
+
- Fixed type definitions in entities based migrations
|
|
104
|
+
|
|
105
|
+
## 12.2.2
|
|
106
|
+
|
|
107
|
+
### Patch Changes
|
|
108
|
+
|
|
109
|
+
- Fix package-lock and move typescript and types/node into root
|
|
110
|
+
- Update eslint and plugins:
|
|
111
|
+
- Apply new rules such as sort imports and file name
|
|
112
|
+
- Update dependencies
|
|
113
|
+
- @rosen-bridge/extended-typeorm@1.0.1
|
|
114
|
+
- @rosen-clients/rate-limited-axios@1.1.0
|
|
115
|
+
- @rosen-bridge/rosen-extractor@10.1.1
|
|
116
|
+
- @rosen-bridge/tokens@4.0.1
|
|
117
|
+
- @rosen-bridge/abstract-logger@3.0.1
|
|
118
|
+
- @rosen-bridge/json-bigint@1.1.0
|
|
119
|
+
- @rosen-clients/ergo-explorer@2.1.0
|
|
120
|
+
- @rosen-clients/ergo-node@3.1.0
|
|
121
|
+
- @rosen-bridge/abstract-extractor@2.1.2
|
|
122
|
+
- @rosen-bridge/scanner-interfaces@0.2.1
|
|
123
|
+
|
|
124
|
+
## 12.2.1
|
|
125
|
+
|
|
126
|
+
### Patch Changes
|
|
127
|
+
|
|
128
|
+
- Update dependencies
|
|
129
|
+
- @rosen-bridge/abstract-extractor@2.1.1
|
|
130
|
+
- @rosen-bridge/extended-typeorm@1.0.0
|
|
131
|
+
- @rosen-bridge/tokens@4.0.0
|
|
132
|
+
- @rosen-bridge/json-bigint@1.0.0
|
|
133
|
+
- @rosen-bridge/abstract-logger@3.0.0
|
|
134
|
+
- @rosen-clients/ergo-explorer@2.0.0
|
|
135
|
+
|
|
136
|
+
## 12.2.0
|
|
137
|
+
|
|
138
|
+
### Minor Changes
|
|
139
|
+
|
|
140
|
+
- Upgrade to Node.js version 22.18.0
|
|
141
|
+
|
|
142
|
+
### Patch Changes
|
|
143
|
+
|
|
144
|
+
- Update dependencies
|
|
145
|
+
- @rosen-bridge/abstract-extractor@2.1.0
|
|
146
|
+
- @rosen-bridge/scanner-interfaces@0.2.0
|
|
147
|
+
|
|
148
|
+
## 12.1.4
|
|
149
|
+
|
|
150
|
+
### Patch Changes
|
|
151
|
+
|
|
152
|
+
- Update package license to MIT
|
|
153
|
+
- Update dependencies
|
|
154
|
+
- @rosen-bridge/abstract-extractor@2.0.3
|
|
155
|
+
- @rosen-bridge/scanner-interfaces@0.1.1
|
|
156
|
+
|
|
157
|
+
## 12.1.3
|
|
158
|
+
|
|
159
|
+
### Patch Changes
|
|
160
|
+
|
|
161
|
+
- Update network clients and ethers and rateLimitedAxios packages
|
|
162
|
+
- Update dependencies
|
|
163
|
+
- @rosen-bridge/abstract-extractor@2.0.2
|
|
164
|
+
|
|
165
|
+
## 12.1.2
|
|
166
|
+
|
|
167
|
+
### Patch Changes
|
|
168
|
+
|
|
169
|
+
- Use rate limiting methods using @rosen-bridge/rate-limited-axios to prevent overwhelming the endpoints
|
|
170
|
+
- Updated dependencies
|
|
171
|
+
- @rosen-bridge/abstract-extractor@2.0.1
|
|
172
|
+
|
|
173
|
+
## 12.1.1
|
|
174
|
+
|
|
175
|
+
### Patch Changes
|
|
176
|
+
|
|
177
|
+
- Fix event result extraction in EventTriggerExtractor
|
|
178
|
+
- Fix fraud result storage in database
|
|
179
|
+
|
|
180
|
+
## 12.1.0
|
|
181
|
+
|
|
182
|
+
### Minor Changes
|
|
183
|
+
|
|
184
|
+
- Unify and move shared interfaces and update all package dependencies
|
|
185
|
+
- Update extra information interfaces and extraction functions
|
|
186
|
+
|
|
187
|
+
### Patch Changes
|
|
188
|
+
|
|
189
|
+
- Updated dependencies
|
|
190
|
+
- @rosen-bridge/abstract-extractor@2.0.0
|
|
191
|
+
- @rosen-bridge/tokens@3.1.0
|
|
192
|
+
- @rosen-bridge/rosen-extractor@7.2.2
|
|
193
|
+
|
|
194
|
+
## 12.0.0
|
|
195
|
+
|
|
196
|
+
### Major Changes
|
|
197
|
+
|
|
198
|
+
- Update tokens package to v3.0.0
|
|
199
|
+
|
|
200
|
+
### Patch Changes
|
|
201
|
+
|
|
202
|
+
- Updated dependencies
|
|
203
|
+
- @rosen-bridge/scanner@5.1.0
|
|
204
|
+
- @rosen-bridge/abstract-extractor@1.0.2
|
|
205
|
+
|
|
206
|
+
## 11.0.0
|
|
207
|
+
|
|
208
|
+
### Major Changes
|
|
209
|
+
|
|
210
|
+
- Update tokens package version to 2.0.0
|
|
211
|
+
|
|
212
|
+
## 10.0.1
|
|
213
|
+
|
|
214
|
+
### Patch Changes
|
|
215
|
+
|
|
216
|
+
- Update node version to 20
|
|
217
|
+
- Updated dependencies
|
|
218
|
+
- @rosen-bridge/abstract-extractor@1.0.1
|
|
219
|
+
- @rosen-bridge/scanner@5.0.2
|
|
220
|
+
|
|
221
|
+
## 10.0.0
|
|
222
|
+
|
|
223
|
+
### Major Changes
|
|
224
|
+
|
|
225
|
+
- Update database entity and action to extend the abstract class
|
|
226
|
+
|
|
227
|
+
### Minor Changes
|
|
228
|
+
|
|
229
|
+
- Update db action interface to support callbacks
|
|
230
|
+
|
|
231
|
+
### Patch Changes
|
|
232
|
+
|
|
233
|
+
- Optimize `hasData` function not to deserialize all unrelated boxes
|
|
234
|
+
- Updated dependencies
|
|
235
|
+
- @rosen-bridge/abstract-extractor@1.0.0
|
|
236
|
+
- @rosen-bridge/scanner@5.0.1
|
|
237
|
+
|
|
238
|
+
## 9.0.0
|
|
239
|
+
|
|
240
|
+
### Major Changes
|
|
241
|
+
|
|
242
|
+
- Refactor event trigger extractor to extend abstract initializable class
|
|
243
|
+
|
|
244
|
+
### Patch Changes
|
|
245
|
+
|
|
246
|
+
- Updated dependencies
|
|
247
|
+
- @rosen-bridge/scanner@5.0.0
|
|
248
|
+
- @rosen-bridge/abstract-extractor@0.3.1
|
|
249
|
+
|
|
250
|
+
## 8.0.2
|
|
251
|
+
|
|
252
|
+
### Patch Changes
|
|
253
|
+
|
|
254
|
+
- Updated dependencies
|
|
255
|
+
- @rosen-bridge/scanner@4.1.3
|
|
256
|
+
|
|
257
|
+
## 8.0.1
|
|
258
|
+
|
|
259
|
+
### Patch Changes
|
|
260
|
+
|
|
261
|
+
- improve event result extractor to avoid unnecessary errors
|
|
262
|
+
|
|
263
|
+
## 8.0.0
|
|
264
|
+
|
|
265
|
+
### Major Changes
|
|
266
|
+
|
|
267
|
+
- change paymentTxId format in R4 from hex string to string
|
|
268
|
+
|
|
269
|
+
## 7.0.3
|
|
270
|
+
|
|
271
|
+
### Patch Changes
|
|
272
|
+
|
|
273
|
+
- Updated dependencies
|
|
274
|
+
- @rosen-bridge/abstract-extractor@0.3.0
|
|
275
|
+
- @rosen-bridge/scanner@4.1.2
|
|
276
|
+
|
|
277
|
+
## 7.0.2
|
|
278
|
+
|
|
279
|
+
### Patch Changes
|
|
280
|
+
|
|
281
|
+
- Updated dependencies
|
|
282
|
+
- @rosen-bridge/scanner@4.1.1
|
|
283
|
+
|
|
284
|
+
## 7.0.1
|
|
285
|
+
|
|
286
|
+
### Patch Changes
|
|
287
|
+
|
|
288
|
+
- Updated dependencies
|
|
289
|
+
- @rosen-bridge/abstract-extractor@0.2.0
|
|
290
|
+
- @rosen-bridge/scanner@4.1.0
|
|
291
|
+
|
|
292
|
+
## 7.0.0
|
|
293
|
+
|
|
294
|
+
### Major Changes
|
|
295
|
+
|
|
296
|
+
- wrap rwtCount in CommitmentEntity
|
|
297
|
+
- add token map to commitmentExtractor constructor arguments
|
|
298
|
+
|
|
299
|
+
## 6.0.5
|
|
300
|
+
|
|
301
|
+
### Patch Changes
|
|
302
|
+
|
|
303
|
+
- Updated dependencies
|
|
304
|
+
- @rosen-bridge/abstract-extractor@0.1.5
|
|
305
|
+
- @rosen-bridge/scanner@4.0.5
|
|
306
|
+
|
|
307
|
+
## 6.0.4
|
|
308
|
+
|
|
309
|
+
### Patch Changes
|
|
310
|
+
|
|
311
|
+
- Updated dependencies
|
|
312
|
+
- @rosen-bridge/abstract-extractor@0.1.4
|
|
313
|
+
- @rosen-bridge/scanner@4.0.4
|
|
314
|
+
|
|
315
|
+
## 6.0.3
|
|
316
|
+
|
|
317
|
+
### Patch Changes
|
|
318
|
+
|
|
319
|
+
- Updated dependencies
|
|
320
|
+
- @rosen-bridge/abstract-extractor@0.1.3
|
|
321
|
+
- @rosen-bridge/scanner@4.0.3
|
|
322
|
+
|
|
323
|
+
## 6.0.2
|
|
324
|
+
|
|
325
|
+
### Patch Changes
|
|
326
|
+
|
|
327
|
+
- Updated dependencies
|
|
328
|
+
- @rosen-bridge/abstract-extractor@0.1.2
|
|
329
|
+
- @rosen-bridge/scanner@4.0.2
|
|
330
|
+
|
|
331
|
+
## 6.0.1
|
|
332
|
+
|
|
333
|
+
### Patch Changes
|
|
334
|
+
|
|
335
|
+
- Updated dependencies
|
|
336
|
+
- @rosen-bridge/abstract-extractor@0.1.1
|
|
337
|
+
- @rosen-bridge/scanner@4.0.1
|
|
338
|
+
|
|
339
|
+
## 6.0.0
|
|
340
|
+
|
|
341
|
+
### Major Changes
|
|
342
|
+
|
|
343
|
+
- Updated the InitializeBoxes interface to include the block hash. Previously, only block height was used as initialization point.
|
|
344
|
+
|
|
345
|
+
### Patch Changes
|
|
346
|
+
|
|
347
|
+
- Update abstract extractor interface
|
|
348
|
+
- Updated dependencies
|
|
349
|
+
- @rosen-bridge/scanner@4.0.0
|
|
350
|
+
|
|
351
|
+
## 5.1.3
|
|
352
|
+
|
|
353
|
+
### Patch Changes
|
|
354
|
+
|
|
355
|
+
- Update Ergo explorer client
|
|
356
|
+
- Updated dependencies
|
|
357
|
+
- @rosen-bridge/scanner@3.2.9
|
|
358
|
+
|
|
359
|
+
## 5.1.2
|
|
360
|
+
|
|
361
|
+
### Patch Changes
|
|
362
|
+
|
|
363
|
+
- Updated dependencies
|
|
364
|
+
- @rosen-bridge/scanner@3.2.8
|
|
365
|
+
|
|
366
|
+
## 5.1.1
|
|
367
|
+
|
|
368
|
+
### Patch Changes
|
|
369
|
+
|
|
370
|
+
- Update typeorm version
|
|
371
|
+
- Updated dependencies
|
|
372
|
+
- @rosen-bridge/scanner@3.2.7
|
|
373
|
+
|
|
374
|
+
## 5.1.0
|
|
375
|
+
|
|
376
|
+
### Minor Changes
|
|
377
|
+
|
|
378
|
+
- implemented CollateralExtractor to validate and store collateral boxes
|
|
379
|
+
|
|
380
|
+
### Patch Changes
|
|
381
|
+
|
|
382
|
+
- Fix spend height column in all entities
|
|
383
|
+
|
|
384
|
+
## 5.0.1
|
|
385
|
+
|
|
386
|
+
### Patch Changes
|
|
387
|
+
|
|
388
|
+
- fix WIDsHash calculation in migrations
|
|
389
|
+
|
|
390
|
+
## 5.0.0
|
|
391
|
+
|
|
392
|
+
### Major Changes
|
|
393
|
+
|
|
394
|
+
- update extractors according to latest version of contracts
|
package/README.md
ADDED
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# Watcher Data Extractor
|
|
2
|
+
|
|
3
|
+
### Table of Contents
|
|
4
|
+
|
|
5
|
+
- [Description](#description)
|
|
6
|
+
- [Related Projects](#related-projects)
|
|
7
|
+
- [How to Use the Watcher Data Extractor](#how-to-use-the-watcher-data-extractor)
|
|
8
|
+
- [Install](#install)
|
|
9
|
+
- [Usage](#usage)
|
|
10
|
+
- [Contributing](#contributing)
|
|
11
|
+
- [License](#license)
|
|
12
|
+
|
|
13
|
+
<a name="headers"/>
|
|
14
|
+
|
|
15
|
+
## Description
|
|
16
|
+
|
|
17
|
+
Data extractors are modules that are integrated within a scanner. They drive the required information from the scanned blocks and store them in their own database. The watcher data extractor is responsible for tracking all watcher-related data in the network. These data includes permit, commitment and event trigger boxes; all these boxes are created in the network by the watchers. The watchers use their permits to create new commitments, and need to track created commitments and triggers to continue their procedures. On the other side, guards need to track event trigger boxes to verify the related user payment and start an agreement on the exchange transaction.
|
|
18
|
+
|
|
19
|
+
## Related Projects
|
|
20
|
+
|
|
21
|
+
This module is used within the [Scanner](https://github.com/rosen-bridge/scanner) project. As stated above, this module is used in the [Watcher](https://github.com/rosen-bridge/watcher) service to drive the related boxes. It also used in the [Guard](https://github.com/rosen-bridge/watcher) to track the created event triggers.
|
|
22
|
+
|
|
23
|
+
## How to Use the Watcher Data Extractor
|
|
24
|
+
|
|
25
|
+
### Install
|
|
26
|
+
|
|
27
|
+
This project is written in node-js using Esnext module and typeorm database. Extractors are not standalone projects and should be used as scanner modules. You can easily install it using npm with the command:
|
|
28
|
+
|
|
29
|
+
```shell
|
|
30
|
+
npm install @rosen-bridge/watcher-data-extractor
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Alternatively, you can build and use it manually by cloning the project and running:
|
|
34
|
+
|
|
35
|
+
```shell
|
|
36
|
+
npm install
|
|
37
|
+
npm run build
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### Usage
|
|
41
|
+
|
|
42
|
+
In the first step, you need to create a scanner instance; follow the steps [here](https://github.com/rosen-bridge/scanner) to create a running instance of the scanner. Then, you need to instantiate your desired extractors and register them to your ergo scanner:
|
|
43
|
+
|
|
44
|
+
```javascript
|
|
45
|
+
const commitmentExtractor = new CommitmentExtractor(
|
|
46
|
+
<extractor_name>,
|
|
47
|
+
<Array<commitment_address>>,
|
|
48
|
+
<rwt_id>,
|
|
49
|
+
dataSource
|
|
50
|
+
)
|
|
51
|
+
const permitExtractor = new PermitExtractor(
|
|
52
|
+
<extractor_name>,
|
|
53
|
+
dataSource,
|
|
54
|
+
<permit_address>,
|
|
55
|
+
<rwt_id>
|
|
56
|
+
)
|
|
57
|
+
const eventTriggerExtractor = new EventTriggerExtractor(
|
|
58
|
+
<extractor_name>,
|
|
59
|
+
dataSource,
|
|
60
|
+
<event_trigger_address>,
|
|
61
|
+
<rwt_id>
|
|
62
|
+
)
|
|
63
|
+
ergoScanner.registerExtractor(commitmentExtractor)
|
|
64
|
+
ergoScanner.registerExtractor(permitExtractor)
|
|
65
|
+
ergoScanner.registerExtractor(eventTriggerExtractor)
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Contributing
|
|
69
|
+
|
|
70
|
+
TBD
|
|
71
|
+
|
|
72
|
+
## License
|
|
73
|
+
|
|
74
|
+
TBD
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { AbstractErgoBoxAction } from '@rosen-bridge/abstract-extractor';
|
|
2
|
+
import { AbstractLogger } from '@rosen-bridge/abstract-logger';
|
|
3
|
+
import { DataSource } from '@rosen-bridge/extended-typeorm';
|
|
4
|
+
import { BlockInfo } from '@rosen-bridge/scanner-interfaces';
|
|
5
|
+
import CollateralEntity from '../entities/collateralEntity';
|
|
6
|
+
import { ExtractedCollateral } from '../interfaces/extractedCollateral';
|
|
7
|
+
declare class CollateralAction extends AbstractErgoBoxAction<ExtractedCollateral, CollateralEntity> {
|
|
8
|
+
constructor(dataSource: DataSource, logger?: AbstractLogger);
|
|
9
|
+
/**
|
|
10
|
+
* create the collateral entity from extracted data and block information
|
|
11
|
+
* @param collaterals
|
|
12
|
+
* @param block
|
|
13
|
+
* @param extractor
|
|
14
|
+
* @returns the collateral entities (without the id)
|
|
15
|
+
*/
|
|
16
|
+
protected createEntity: (collaterals: ExtractedCollateral[], block: BlockInfo, extractor: string) => Array<Omit<CollateralEntity, "id">>;
|
|
17
|
+
/**
|
|
18
|
+
* convert the database entity back to raw data
|
|
19
|
+
* @param entities
|
|
20
|
+
* @returns the extracted collateral data
|
|
21
|
+
*/
|
|
22
|
+
protected convertEntityToData: (entities: CollateralEntity[]) => ExtractedCollateral[];
|
|
23
|
+
}
|
|
24
|
+
export default CollateralAction;
|
|
25
|
+
//# sourceMappingURL=collateralAction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collateralAction.d.ts","sourceRoot":"","sources":["../../lib/actions/collateralAction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAE7D,OAAO,gBAAgB,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAExE,cAAM,gBAAiB,SAAQ,qBAAqB,CAClD,mBAAmB,EACnB,gBAAgB,CACjB;gBACa,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,cAAc;IAI3D;;;;;;OAMG;IACH,SAAS,CAAC,YAAY,GACpB,aAAa,mBAAmB,EAAE,EAClC,OAAO,SAAS,EAChB,WAAW,MAAM,KAChB,KAAK,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC,CASpC;IAEF;;;;OAIG;IACH,SAAS,CAAC,mBAAmB,GAC3B,UAAU,gBAAgB,EAAE,KAC3B,mBAAmB,EAAE,CAEtB;CACH;AAED,eAAe,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { AbstractErgoBoxAction } from '@rosen-bridge/abstract-extractor';
|
|
2
|
+
import CollateralEntity from '../entities/collateralEntity';
|
|
3
|
+
class CollateralAction extends AbstractErgoBoxAction {
|
|
4
|
+
constructor(dataSource, logger) {
|
|
5
|
+
super(dataSource, CollateralEntity, logger);
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* create the collateral entity from extracted data and block information
|
|
9
|
+
* @param collaterals
|
|
10
|
+
* @param block
|
|
11
|
+
* @param extractor
|
|
12
|
+
* @returns the collateral entities (without the id)
|
|
13
|
+
*/
|
|
14
|
+
createEntity = (collaterals, block, extractor) => {
|
|
15
|
+
return collaterals.map((collateral) => ({
|
|
16
|
+
...collateral,
|
|
17
|
+
block: block.hash,
|
|
18
|
+
height: block.height,
|
|
19
|
+
extractor,
|
|
20
|
+
spendBlock: collateral.spendBlock ?? null,
|
|
21
|
+
spendHeight: collateral.spendHeight ?? null,
|
|
22
|
+
}));
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* convert the database entity back to raw data
|
|
26
|
+
* @param entities
|
|
27
|
+
* @returns the extracted collateral data
|
|
28
|
+
*/
|
|
29
|
+
convertEntityToData = (entities) => {
|
|
30
|
+
return entities;
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
export default CollateralAction;
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGF0ZXJhbEFjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi9hY3Rpb25zL2NvbGxhdGVyYWxBY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFLekUsT0FBTyxnQkFBZ0IsTUFBTSw4QkFBOEIsQ0FBQztBQUc1RCxNQUFNLGdCQUFpQixTQUFRLHFCQUc5QjtJQUNDLFlBQVksVUFBc0IsRUFBRSxNQUF1QjtRQUN6RCxLQUFLLENBQUMsVUFBVSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDTyxZQUFZLEdBQUcsQ0FDdkIsV0FBa0MsRUFDbEMsS0FBZ0IsRUFDaEIsU0FBaUIsRUFDb0IsRUFBRTtRQUN2QyxPQUFPLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDdEMsR0FBRyxVQUFVO1lBQ2IsS0FBSyxFQUFFLEtBQUssQ0FBQyxJQUFJO1lBQ2pCLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTtZQUNwQixTQUFTO1lBQ1QsVUFBVSxFQUFFLFVBQVUsQ0FBQyxVQUFVLElBQUksSUFBSTtZQUN6QyxXQUFXLEVBQUUsVUFBVSxDQUFDLFdBQVcsSUFBSSxJQUFJO1NBQzVDLENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQyxDQUFDO0lBRUY7Ozs7T0FJRztJQUNPLG1CQUFtQixHQUFHLENBQzlCLFFBQTRCLEVBQ0wsRUFBRTtRQUN6QixPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDLENBQUM7Q0FDSDtBQUVELGVBQWUsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdEVyZ29Cb3hBY3Rpb24gfSBmcm9tICdAcm9zZW4tYnJpZGdlL2Fic3RyYWN0LWV4dHJhY3Rvcic7XG5pbXBvcnQgeyBBYnN0cmFjdExvZ2dlciB9IGZyb20gJ0Byb3Nlbi1icmlkZ2UvYWJzdHJhY3QtbG9nZ2VyJztcbmltcG9ydCB7IERhdGFTb3VyY2UgfSBmcm9tICdAcm9zZW4tYnJpZGdlL2V4dGVuZGVkLXR5cGVvcm0nO1xuaW1wb3J0IHsgQmxvY2tJbmZvIH0gZnJvbSAnQHJvc2VuLWJyaWRnZS9zY2FubmVyLWludGVyZmFjZXMnO1xuXG5pbXBvcnQgQ29sbGF0ZXJhbEVudGl0eSBmcm9tICcuLi9lbnRpdGllcy9jb2xsYXRlcmFsRW50aXR5JztcbmltcG9ydCB7IEV4dHJhY3RlZENvbGxhdGVyYWwgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2V4dHJhY3RlZENvbGxhdGVyYWwnO1xuXG5jbGFzcyBDb2xsYXRlcmFsQWN0aW9uIGV4dGVuZHMgQWJzdHJhY3RFcmdvQm94QWN0aW9uPFxuICBFeHRyYWN0ZWRDb2xsYXRlcmFsLFxuICBDb2xsYXRlcmFsRW50aXR5XG4+IHtcbiAgY29uc3RydWN0b3IoZGF0YVNvdXJjZTogRGF0YVNvdXJjZSwgbG9nZ2VyPzogQWJzdHJhY3RMb2dnZXIpIHtcbiAgICBzdXBlcihkYXRhU291cmNlLCBDb2xsYXRlcmFsRW50aXR5LCBsb2dnZXIpO1xuICB9XG5cbiAgLyoqXG4gICAqIGNyZWF0ZSB0aGUgY29sbGF0ZXJhbCBlbnRpdHkgZnJvbSBleHRyYWN0ZWQgZGF0YSBhbmQgYmxvY2sgaW5mb3JtYXRpb25cbiAgICogQHBhcmFtIGNvbGxhdGVyYWxzXG4gICAqIEBwYXJhbSBibG9ja1xuICAgKiBAcGFyYW0gZXh0cmFjdG9yXG4gICAqIEByZXR1cm5zIHRoZSBjb2xsYXRlcmFsIGVudGl0aWVzICh3aXRob3V0IHRoZSBpZClcbiAgICovXG4gIHByb3RlY3RlZCBjcmVhdGVFbnRpdHkgPSAoXG4gICAgY29sbGF0ZXJhbHM6IEV4dHJhY3RlZENvbGxhdGVyYWxbXSxcbiAgICBibG9jazogQmxvY2tJbmZvLFxuICAgIGV4dHJhY3Rvcjogc3RyaW5nLFxuICApOiBBcnJheTxPbWl0PENvbGxhdGVyYWxFbnRpdHksICdpZCc+PiA9PiB7XG4gICAgcmV0dXJuIGNvbGxhdGVyYWxzLm1hcCgoY29sbGF0ZXJhbCkgPT4gKHtcbiAgICAgIC4uLmNvbGxhdGVyYWwsXG4gICAgICBibG9jazogYmxvY2suaGFzaCxcbiAgICAgIGhlaWdodDogYmxvY2suaGVpZ2h0LFxuICAgICAgZXh0cmFjdG9yLFxuICAgICAgc3BlbmRCbG9jazogY29sbGF0ZXJhbC5zcGVuZEJsb2NrID8/IG51bGwsXG4gICAgICBzcGVuZEhlaWdodDogY29sbGF0ZXJhbC5zcGVuZEhlaWdodCA/PyBudWxsLFxuICAgIH0pKTtcbiAgfTtcblxuICAvKipcbiAgICogY29udmVydCB0aGUgZGF0YWJhc2UgZW50aXR5IGJhY2sgdG8gcmF3IGRhdGFcbiAgICogQHBhcmFtIGVudGl0aWVzXG4gICAqIEByZXR1cm5zIHRoZSBleHRyYWN0ZWQgY29sbGF0ZXJhbCBkYXRhXG4gICAqL1xuICBwcm90ZWN0ZWQgY29udmVydEVudGl0eVRvRGF0YSA9IChcbiAgICBlbnRpdGllczogQ29sbGF0ZXJhbEVudGl0eVtdLFxuICApOiBFeHRyYWN0ZWRDb2xsYXRlcmFsW10gPT4ge1xuICAgIHJldHVybiBlbnRpdGllcztcbiAgfTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgQ29sbGF0ZXJhbEFjdGlvbjtcbiJdfQ==
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { AbstractLogger } from '@rosen-bridge/abstract-logger';
|
|
2
|
+
import { DataSource, SelectQueryBuilder } from '@rosen-bridge/extended-typeorm';
|
|
3
|
+
import { BlockInfo } from '@rosen-bridge/scanner-interfaces';
|
|
4
|
+
import CommitmentEntity from '../entities/commitmentEntity';
|
|
5
|
+
import { extractedCommitment } from '../interfaces/extractedCommitment';
|
|
6
|
+
import { SpendInfo } from '../interfaces/types';
|
|
7
|
+
declare class CommitmentAction {
|
|
8
|
+
readonly logger: AbstractLogger;
|
|
9
|
+
private readonly datasource;
|
|
10
|
+
private readonly commitmentRepository;
|
|
11
|
+
constructor(dataSource: DataSource, logger?: AbstractLogger);
|
|
12
|
+
/**
|
|
13
|
+
* It stores list of observations in the dataSource with block id
|
|
14
|
+
* @param commitments
|
|
15
|
+
* @param block
|
|
16
|
+
* @param extractor
|
|
17
|
+
*/
|
|
18
|
+
storeCommitments: (commitments: Array<extractedCommitment>, block: BlockInfo, extractor: string) => Promise<boolean>;
|
|
19
|
+
/**
|
|
20
|
+
* Update spendBlock and spendHeight of commitments spent on the block
|
|
21
|
+
* @param spendId
|
|
22
|
+
* @param block
|
|
23
|
+
* @param extractor
|
|
24
|
+
*/
|
|
25
|
+
spendCommitments: (spendId: Array<SpendInfo>, block: BlockInfo, extractor: string) => Promise<void>;
|
|
26
|
+
/**
|
|
27
|
+
* Delete all commitments corresponding to the block(id) and extractor(id)
|
|
28
|
+
* and update all commitments spent on the specified block
|
|
29
|
+
* @param block
|
|
30
|
+
* @param extractor
|
|
31
|
+
*/
|
|
32
|
+
deleteBlock: (block: string, extractor: string) => Promise<void>;
|
|
33
|
+
/**
|
|
34
|
+
* Builds a query that returns used blocks by selecting the `block` column from the `CommitmentEntity` repository,
|
|
35
|
+
* filtered by the provided `extractorId`
|
|
36
|
+
*
|
|
37
|
+
* @param extractorId - Identifier of the extractor
|
|
38
|
+
* @returns A query builder selecting used blocks
|
|
39
|
+
*/
|
|
40
|
+
createUsedBlocksQuery: (extractorId: string) => SelectQueryBuilder<CommitmentEntity>;
|
|
41
|
+
}
|
|
42
|
+
export default CommitmentAction;
|
|
43
|
+
//# sourceMappingURL=commitmentAction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commitmentAction.d.ts","sourceRoot":"","sources":["../../lib/actions/commitmentAction.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAe,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EACL,UAAU,EAGV,kBAAkB,EACnB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAG7D,OAAO,gBAAgB,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,cAAM,gBAAgB;IACpB,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAA+B;gBAExD,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,cAAc;IAM3D;;;;;OAKG;IACH,gBAAgB,GACd,aAAa,KAAK,CAAC,mBAAmB,CAAC,EACvC,OAAO,SAAS,EAChB,WAAW,MAAM,KAChB,OAAO,CAAC,OAAO,CAAC,CAsDjB;IAEF;;;;;OAKG;IACH,gBAAgB,GACd,SAAS,KAAK,CAAC,SAAS,CAAC,EACzB,OAAO,SAAS,EAChB,WAAW,MAAM,KAChB,OAAO,CAAC,IAAI,CAAC,CAmCd;IAEF;;;;;OAKG;IACH,WAAW,GAAU,OAAO,MAAM,EAAE,WAAW,MAAM,mBAiBnD;IAEF;;;;;;OAMG;IACH,qBAAqB,GACnB,aAAa,MAAM,KAClB,kBAAkB,CAAC,gBAAgB,CAAC,CAKrC;CACH;AAED,eAAe,gBAAgB,CAAC"}
|