@rosen-bridge/watcher-data-extractor 8.0.2 → 10.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/actions/EventTriggerAction.d.ts +15 -24
- package/dist/actions/EventTriggerAction.d.ts.map +1 -1
- package/dist/actions/EventTriggerAction.js +83 -119
- package/dist/entities/EventTriggerEntity.d.ts +2 -9
- package/dist/entities/EventTriggerEntity.d.ts.map +1 -1
- package/dist/entities/EventTriggerEntity.js +5 -45
- package/dist/extractor/EventTriggerExtractor.d.ts +28 -13
- package/dist/extractor/EventTriggerExtractor.d.ts.map +1 -1
- package/dist/extractor/EventTriggerExtractor.js +127 -104
- package/dist/interfaces/extractedEventTrigger.d.ts +1 -1
- package/dist/interfaces/extractedEventTrigger.d.ts.map +1 -1
- package/dist/interfaces/extractedEventTrigger.js +1 -1
- package/dist/migrations/index.d.ts +2 -2
- package/dist/migrations/index.d.ts.map +1 -1
- package/dist/migrations/index.js +5 -1
- 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/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/package.json +4 -4
|
@@ -1,38 +1,29 @@
|
|
|
1
1
|
import { DataSource } from 'typeorm';
|
|
2
2
|
import { AbstractLogger } from '@rosen-bridge/abstract-logger';
|
|
3
|
-
import {
|
|
3
|
+
import { AbstractInitializableErgoExtractorAction, BlockInfo, BoxInfo, SpendInfo } from '@rosen-bridge/abstract-extractor';
|
|
4
|
+
import EventTriggerEntity from '../entities/EventTriggerEntity';
|
|
4
5
|
import { ExtractedEventTrigger } from '../interfaces/extractedEventTrigger';
|
|
5
|
-
declare class EventTriggerAction {
|
|
6
|
-
readonly
|
|
7
|
-
private readonly datasource;
|
|
8
|
-
private readonly triggerEventRepository;
|
|
6
|
+
declare class EventTriggerAction extends AbstractInitializableErgoExtractorAction<ExtractedEventTrigger, EventTriggerEntity> {
|
|
7
|
+
private readonly dataSource;
|
|
9
8
|
constructor(dataSource: DataSource, logger?: AbstractLogger);
|
|
10
9
|
/**
|
|
11
|
-
*
|
|
12
|
-
* @param eventTriggers
|
|
13
|
-
* @param block
|
|
14
|
-
* @param extractor
|
|
10
|
+
* create the box entity from extracted data and block information
|
|
15
11
|
*/
|
|
16
|
-
|
|
12
|
+
createEntity: (triggerBoxes: ExtractedEventTrigger[], block: BlockInfo, extractor: string) => Omit<EventTriggerEntity, 'id'>[];
|
|
17
13
|
/**
|
|
18
|
-
*
|
|
19
|
-
* also update the spendTxId with the specified txId
|
|
20
|
-
* and set result and paymentTxId of the event
|
|
21
|
-
* @param spendId
|
|
22
|
-
* @param block
|
|
23
|
-
* @param extractor
|
|
24
|
-
* @param txId
|
|
25
|
-
* @param result
|
|
26
|
-
* @param paymentTxId
|
|
14
|
+
* convert the database entity back to raw data
|
|
27
15
|
*/
|
|
28
|
-
|
|
16
|
+
convertEntityToData: (entities: EventTriggerEntity[]) => ExtractedEventTrigger[];
|
|
29
17
|
/**
|
|
30
|
-
*
|
|
31
|
-
* and
|
|
18
|
+
* update spending information of stored event triggers
|
|
19
|
+
* and set result and paymentTxId of the event
|
|
20
|
+
* chunk spendInfos to prevent large database queries
|
|
21
|
+
* @param spendInfArray
|
|
32
22
|
* @param block
|
|
33
|
-
* @param
|
|
23
|
+
* @param extractorId
|
|
24
|
+
* @returns spent box ids
|
|
34
25
|
*/
|
|
35
|
-
|
|
26
|
+
spendBoxes: (spendInfoArray: Array<SpendInfo>, block: BlockInfo, extractorId: string) => Promise<BoxInfo[]>;
|
|
36
27
|
}
|
|
37
28
|
export default EventTriggerAction;
|
|
38
29
|
//# sourceMappingURL=EventTriggerAction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventTriggerAction.d.ts","sourceRoot":"","sources":["../../lib/actions/EventTriggerAction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"EventTriggerAction.d.ts","sourceRoot":"","sources":["../../lib/actions/EventTriggerAction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAM,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EACL,wCAAwC,EACxC,SAAS,EACT,OAAO,EAEP,SAAS,EACV,MAAM,kCAAkC,CAAC;AAE1C,OAAO,kBAAkB,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAI5E,cAAM,kBAAmB,SAAQ,wCAAwC,CACvE,qBAAqB,EACrB,kBAAkB,CACnB;IACC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;gBAE5B,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,cAAc;IAK3D;;OAEG;IACH,YAAY,iBACI,qBAAqB,EAAE,SAC9B,SAAS,aACL,MAAM,KAChB,KAAK,kBAAkB,EAAE,IAAI,CAAC,EAAE,CAwBjC;IAEF;;OAEG;IACH,mBAAmB,aACP,kBAAkB,EAAE,KAC7B,qBAAqB,EAAE,CAuBxB;IAEF;;;;;;;;OAQG;IACH,UAAU,mBACQ,MAAM,SAAS,CAAC,SACzB,SAAS,eACH,MAAM,KAClB,QAAQ,OAAO,EAAE,CAAC,CAuCnB;CACH;AAED,eAAe,kBAAkB,CAAC"}
|
|
@@ -1,139 +1,103 @@
|
|
|
1
1
|
import { In } from 'typeorm';
|
|
2
|
-
import {
|
|
3
|
-
import { DummyLogger } from '@rosen-bridge/abstract-logger';
|
|
2
|
+
import { AbstractInitializableErgoExtractorAction, DB_CHUNK_SIZE, } from '@rosen-bridge/abstract-extractor';
|
|
4
3
|
import EventTriggerEntity from '../entities/EventTriggerEntity';
|
|
5
|
-
import {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
triggerEventRepository;
|
|
4
|
+
import { JsonBI } from '../utils';
|
|
5
|
+
import { chunk, pick } from 'lodash-es';
|
|
6
|
+
class EventTriggerAction extends AbstractInitializableErgoExtractorAction {
|
|
7
|
+
dataSource;
|
|
10
8
|
constructor(dataSource, logger) {
|
|
11
|
-
|
|
12
|
-
this.
|
|
13
|
-
this.triggerEventRepository = dataSource.getRepository(EventTriggerEntity);
|
|
9
|
+
super(dataSource, EventTriggerEntity, logger);
|
|
10
|
+
this.dataSource = dataSource;
|
|
14
11
|
}
|
|
15
12
|
/**
|
|
16
|
-
*
|
|
17
|
-
* @param eventTriggers
|
|
18
|
-
* @param block
|
|
19
|
-
* @param extractor
|
|
13
|
+
* create the box entity from extracted data and block information
|
|
20
14
|
*/
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
15
|
+
createEntity = (triggerBoxes, block, extractor) => {
|
|
16
|
+
return triggerBoxes.map((trigger) => ({
|
|
17
|
+
txId: trigger.txId,
|
|
18
|
+
eventId: trigger.eventId,
|
|
19
|
+
boxId: trigger.boxId,
|
|
20
|
+
serialized: trigger.serialized,
|
|
21
|
+
block: block.hash,
|
|
22
|
+
height: block.height,
|
|
27
23
|
extractor: extractor,
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
await repository.update({ boxId: trigger.boxId }, entity);
|
|
69
|
-
}
|
|
70
|
-
this.logger.debug(`Entity: ${JSON.stringify(entity)}`);
|
|
71
|
-
}
|
|
72
|
-
await queryRunner.commitTransaction();
|
|
73
|
-
}
|
|
74
|
-
catch (e) {
|
|
75
|
-
this.logger.error(`An error occurred during store eventTrigger action: ${e}`);
|
|
76
|
-
await queryRunner.rollbackTransaction();
|
|
77
|
-
success = false;
|
|
78
|
-
}
|
|
79
|
-
finally {
|
|
80
|
-
await queryRunner.release();
|
|
81
|
-
}
|
|
82
|
-
return success;
|
|
24
|
+
WIDsCount: trigger.WIDsCount,
|
|
25
|
+
WIDsHash: trigger.WIDsHash,
|
|
26
|
+
amount: trigger.amount,
|
|
27
|
+
bridgeFee: trigger.bridgeFee,
|
|
28
|
+
fromAddress: trigger.fromAddress,
|
|
29
|
+
toAddress: trigger.toAddress,
|
|
30
|
+
fromChain: trigger.fromChain,
|
|
31
|
+
networkFee: trigger.networkFee,
|
|
32
|
+
sourceChainTokenId: trigger.sourceChainTokenId,
|
|
33
|
+
targetChainTokenId: trigger.targetChainTokenId,
|
|
34
|
+
sourceBlockId: trigger.sourceBlockId,
|
|
35
|
+
toChain: trigger.toChain,
|
|
36
|
+
sourceTxId: trigger.sourceTxId,
|
|
37
|
+
sourceChainHeight: trigger.sourceChainHeight,
|
|
38
|
+
}));
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* convert the database entity back to raw data
|
|
42
|
+
*/
|
|
43
|
+
convertEntityToData = (entities) => {
|
|
44
|
+
return entities.map((data) => pick(data, [
|
|
45
|
+
'eventId',
|
|
46
|
+
'txId',
|
|
47
|
+
'boxId',
|
|
48
|
+
'serialized',
|
|
49
|
+
'fromChain',
|
|
50
|
+
'toChain',
|
|
51
|
+
'fromAddress',
|
|
52
|
+
'toAddress',
|
|
53
|
+
'amount',
|
|
54
|
+
'bridgeFee',
|
|
55
|
+
'networkFee',
|
|
56
|
+
'sourceChainTokenId',
|
|
57
|
+
'targetChainTokenId',
|
|
58
|
+
'sourceBlockId',
|
|
59
|
+
'sourceTxId',
|
|
60
|
+
'WIDsCount',
|
|
61
|
+
'WIDsHash',
|
|
62
|
+
'sourceChainHeight',
|
|
63
|
+
]));
|
|
83
64
|
};
|
|
84
65
|
/**
|
|
85
|
-
*
|
|
86
|
-
* also update the spendTxId with the specified txId
|
|
66
|
+
* update spending information of stored event triggers
|
|
87
67
|
* and set result and paymentTxId of the event
|
|
88
|
-
*
|
|
68
|
+
* chunk spendInfos to prevent large database queries
|
|
69
|
+
* @param spendInfArray
|
|
89
70
|
* @param block
|
|
90
|
-
* @param
|
|
91
|
-
* @
|
|
92
|
-
* @param result
|
|
93
|
-
* @param paymentTxId
|
|
71
|
+
* @param extractorId
|
|
72
|
+
* @returns spent box ids
|
|
94
73
|
*/
|
|
95
|
-
|
|
96
|
-
const
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
result: result,
|
|
103
|
-
paymentTxId: paymentTxId,
|
|
74
|
+
spendBoxes = async (spendInfoArray, block, extractorId) => {
|
|
75
|
+
const spentData = [];
|
|
76
|
+
const spendInfoChunks = chunk(spendInfoArray, DB_CHUNK_SIZE);
|
|
77
|
+
for (const spendInfoChunk of spendInfoChunks) {
|
|
78
|
+
const spentTriggers = await this.repository.findBy({
|
|
79
|
+
boxId: In(spendInfoChunk.map((spendInfo) => spendInfo.boxId)),
|
|
80
|
+
extractor: extractorId,
|
|
104
81
|
});
|
|
105
|
-
|
|
106
|
-
const
|
|
107
|
-
|
|
82
|
+
for (const spentTrigger of spentTriggers) {
|
|
83
|
+
const spendInfo = spendInfoChunk.find((info) => info.boxId === spentTrigger.boxId);
|
|
84
|
+
if (!spendInfo || !spendInfo.extras || spendInfo.extras.length < 2) {
|
|
85
|
+
throw Error(`Impossible case: spending information extras does not contain result or paymentTxId, ${spendInfo}`);
|
|
86
|
+
}
|
|
87
|
+
await this.repository.update({ boxId: spendInfo.boxId, extractor: extractorId }, {
|
|
108
88
|
spendBlock: block.hash,
|
|
89
|
+
spendHeight: block.height,
|
|
90
|
+
spendTxId: spendInfo.txId,
|
|
91
|
+
result: spendInfo.extras[0],
|
|
92
|
+
paymentTxId: spendInfo.extras[1],
|
|
109
93
|
});
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
}
|
|
94
|
+
spentData.push(pick(spendInfo, ['boxId']));
|
|
95
|
+
this.logger.info(`Spent trigger [${spentTrigger.boxId}] of event [${spentTrigger.eventId}] at height ${block.height}`);
|
|
96
|
+
this.logger.debug(`Spent trigger: [${JSON.stringify(spentTrigger)}] with spending information [${JsonBI.stringify(spendInfo)}]`);
|
|
114
97
|
}
|
|
115
98
|
}
|
|
116
|
-
|
|
117
|
-
/**
|
|
118
|
-
* Delete all eventTriggers corresponding to the block(id) and extractor(id)
|
|
119
|
-
* and update all eventTriggers spent on the specified block
|
|
120
|
-
* @param block
|
|
121
|
-
* @param extractor
|
|
122
|
-
*/
|
|
123
|
-
deleteBlock = async (block, extractor) => {
|
|
124
|
-
this.logger.info(`Deleting event triggers at block ${block} and extractor ${extractor}`);
|
|
125
|
-
await this.triggerEventRepository.delete({
|
|
126
|
-
block: block,
|
|
127
|
-
extractor: extractor,
|
|
128
|
-
});
|
|
129
|
-
await this.triggerEventRepository.update({ spendBlock: block, extractor: extractor }, {
|
|
130
|
-
spendBlock: null,
|
|
131
|
-
spendTxId: null,
|
|
132
|
-
spendHeight: null,
|
|
133
|
-
result: null,
|
|
134
|
-
paymentTxId: null,
|
|
135
|
-
});
|
|
99
|
+
return spentData;
|
|
136
100
|
};
|
|
137
101
|
}
|
|
138
102
|
export default EventTriggerAction;
|
|
139
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZlbnRUcmlnZ2VyQWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGliL2FjdGlvbnMvRXZlbnRUcmlnZ2VyQWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxFQUFFLEVBQWMsTUFBTSxTQUFTLENBQUM7QUFDckQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNsQyxPQUFPLEVBQWtCLFdBQVcsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRzVFLE9BQU8sa0JBQWtCLE1BQU0sZ0NBQWdDLENBQUM7QUFFaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUU3QyxNQUFNLGtCQUFrQjtJQUNiLE1BQU0sQ0FBaUI7SUFDZixVQUFVLENBQWE7SUFDdkIsc0JBQXNCLENBQWlDO0lBRXhFLFlBQVksVUFBc0IsRUFBRSxNQUF1QjtRQUN6RCxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUM3QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQ2xELElBQUksQ0FBQyxzQkFBc0IsR0FBRyxVQUFVLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsa0JBQWtCLEdBQUcsS0FBSyxFQUN4QixhQUEyQyxFQUMzQyxLQUFZLEVBQ1osU0FBaUIsRUFDakIsRUFBRTtRQUNGLElBQUksYUFBYSxDQUFDLE1BQU0sS0FBSyxDQUFDO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDNUMsTUFBTSxNQUFNLEdBQUcsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdELE1BQU0sYUFBYSxHQUFHLE1BQU0sSUFBSSxDQUFDLHNCQUFz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QUNILEtBQUssTUFBTSxHQUFHLElBQUksU0FBUyxFQUFFO29CQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDZCxrQkFBa0IsR0FBRyxDQUFDLEtBQUssZUFBZSxHQUFHLENBQUMsT0FBTyxlQUFlLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FDbkYsQ0FBQztvQkFDRixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQzlEO2FBQ0Y7U0FDRjtJQUNILENBQUMsQ0FBQztJQUVGOzs7OztPQUtHO0lBQ0gsV0FBVyxHQUFHLEtBQUssRUFBRSxLQUFhLEVBQUUsU0FBaUIsRUFBRSxFQUFFO1FBQ3ZELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNkLG9DQUFvQyxLQUFLLGtCQUFrQixTQUFTLEVBQUUsQ0FDdkUsQ0FBQztRQUNGLE1BQU0sSUFBSSxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQztZQUN2QyxLQUFLLEVBQUUsS0FBSztZQUNaLFNBQVMsRUFBRSxTQUFTO1NBQ3JCLENBQUMsQ0FBQztRQUNILE1BQU0sSUFBSSxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FDdEMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsRUFDM0M7WUFDRSxVQUFVLEVBQUUsSUFBSTtZQUNoQixTQUFTLEVBQUUsSUFBSTtZQUNmLFdBQVcsRUFBRSxJQUFJO1lBQ2pCLE1BQU0sRUFBRSxJQUFJO1lBQ1osV0FBVyxFQUFFLElBQUk7U0FDbEIsQ0FDRixDQUFDO0lBQ0osQ0FBQyxDQUFDO0NBQ0g7QUFFRCxlQUFlLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0YVNvdXJjZSwgSW4sIFJlcG9zaXRvcnkgfSBmcm9tICd0eXBlb3JtJztcbmltcG9ydCB7IGNodW5rIH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IEFic3RyYWN0TG9nZ2VyLCBEdW1teUxvZ2dlciB9IGZyb20gJ0Byb3Nlbi1icmlkZ2UvYWJzdHJhY3QtbG9nZ2VyJztcbmltcG9ydCB7IEJsb2NrIH0gZnJvbSAnQHJvc2VuLWJyaWRnZS9hYnN0cmFjdC1leHRyYWN0b3InO1xuXG5pbXBvcnQgRXZlbnRUcmlnZ2VyRW50aXR5IGZyb20gJy4uL2VudGl0aWVzL0V2ZW50VHJpZ2dlckVudGl0eSc7XG5pbXBvcnQgeyBFeHRyYWN0ZWRFdmVudFRyaWdnZXIgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2V4dHJhY3RlZEV2ZW50VHJpZ2dlcic7XG5pbXBvcnQgeyBkYklkQ2h1bmtTaXplIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcblxuY2xhc3MgRXZlbnRUcmlnZ2VyQWN0aW9uIHtcbiAgcmVhZG9ubHkgbG9nZ2VyOiBBYnN0cmFjdExvZ2dlcjtcbiAgcHJpdmF0ZSByZWFkb25seSBkYXRhc291cmNlOiBEYXRhU291cmNlO1xuICBwcml2YXRlIHJlYWRvbmx5IHRyaWdnZXJFdmVudFJlcG9zaXRvcnk6IFJlcG9zaXRvcnk8RXZlbnRUcmlnZ2VyRW50aXR5PjtcblxuICBjb25zdHJ1Y3RvcihkYXRhU291cmNlOiBEYXRhU291cmNlLCBsb2dnZXI/OiBBYnN0cmFjdExvZ2dlcikge1xuICAgIHRoaXMuZGF0YXNvdXJjZSA9IGRhdGFTb3VyY2U7XG4gICAgdGhpcy5sb2dnZXIgPSBsb2dnZXIgPyBsb2dnZXIgOiBuZXcgRHVtbXlMb2dnZXIoKTtcbiAgICB0aGlzLnRyaWdnZXJFdmVudFJlcG9zaXRvcnkgPSBkYXRhU291cmNlLmdldFJlcG9zaXRvcnkoRXZlbnRUcmlnZ2VyRW50aXR5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJdCBzdG9yZXMgbGlzdCBvZiBldmVudFRyaWdnZXJzIGluIHRoZSBkYXRhU291cmNlIHdpdGggYmxvY2sgaWRcbiAgICogQHBhcmFtIGV2ZW50VHJpZ2dlcnNcbiAgICogQHBhcmFtIGJsb2NrXG4gICAqIEBwYXJhbSBleHRyYWN0b3JcbiAgICovXG4gIHN0b3JlRXZlbnRUcmlnZ2VycyA9IGFzeW5jIChcbiAgICBldmVudFRyaWdnZXJzOiBBcnJheTxFeHRyYWN0ZWRFdmVudFRyaWdnZXI+LFxuICAgIGJsb2NrOiBCbG9jayxcbiAgICBleHRyYWN0b3I6IHN0cmluZ1xuICApID0+IHtcbiAgICBpZiAoZXZlbnRUcmlnZ2Vycy5sZW5ndGggPT09IDApIHJldHVybiB0cnVlO1xuICAgIGNvbnN0IGJveElkcyA9IGV2ZW50VHJpZ2dlcnMubWFwKCh0cmlnZ2VyKSA9PiB0cmlnZ2VyLmJveElkKTtcbiAgICBjb25zdCBzYXZlZFRyaWdnZXJzID0gYXdhaXQgdGhpcy50cmlnZ2VyRXZlbnRSZXBvc2l0b3J5LmZpbmRCeSh7XG4gICAgICBib3hJZDogSW4oYm94SWRzKSxcbiAgICAgIGV4dHJhY3RvcjogZXh0cmFjdG9yLFxuICAgIH0pO1xuICAgIGxldCBzdWNjZXNzID0gdHJ1ZTtcbiAgICBjb25zdCBxdWVyeVJ1bm5lciA9IHRoaXMuZGF0YXNvdXJjZS5jcmVhdGVRdWVyeVJ1bm5lcigpO1xuICAgIGF3YWl0IHF1ZXJ5UnVubmVyLmNvbm5lY3QoKTtcbiAgICBhd2FpdCBxdWVyeVJ1bm5lci5zdGFydFRyYW5zYWN0aW9uKCk7XG4gICAgY29uc3QgcmVwb3NpdG9yeSA9IGF3YWl0IHF1ZXJ5UnVubmVyLm1hbmFnZXIuZ2V0UmVwb3NpdG9yeShcbiAgICAgIEV2ZW50VHJpZ2dlckVudGl0eVxuICAgICk7XG4gICAgdHJ5IHtcbiAgICAgIGZvciAoY29uc3QgdHJpZ2dlciBvZiBldmVudFRyaWdnZXJzKSB7XG4gICAgICAgIGNvbnN0IHNhdmVkID0gc2F2ZWRUcmlnZ2Vycy5zb21lKChlbnRpdHkpID0+IHtcbiAgICAgICAgICByZXR1cm4gZW50aXR5LmJveElkID09PSB0cmlnZ2VyLmJveElkO1xuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgZW50aXR5ID0ge1xuICAgICAgICAgIHR4SWQ6IHRyaWdnZXIudHhJZCxcbiAgICAgICAgICBldmVudElkOiB0cmlnZ2VyLmV2ZW50SWQsXG4gICAgICAgICAgYm94SWQ6IHRyaWdnZXIuYm94SWQsXG4gICAgICAgICAgYm94U2VyaWFsaXplZDogdHJpZ2dlci5ib3hTZXJpYWxpemVkLFxuICAgICAgICAgIGJsb2NrOiBibG9jay5oYXNoLFxuICAgICAgICAgIGhlaWdodDogYmxvY2suaGVpZ2h0LFxuICAgICAgICAgIGV4dHJhY3RvcjogZXh0cmFjdG9yLFxuICAgICAgICAgIFdJRHNDb3VudDogdHJpZ2dlci5XSURzQ291bnQsXG4gICAgICAgICAgV0lEc0hhc2g6IHRyaWdnZXIuV0lEc0hhc2gsXG4gICAgICAgICAgYW1vdW50OiB0cmlnZ2VyLmFtb3VudCxcbiAgICAgICAgICBicmlkZ2VGZWU6IHRyaWdnZXIuYnJpZGdlRmVlLFxuICAgICAgICAgIGZyb21BZGRyZXNzOiB0cmlnZ2VyLmZyb21BZGRyZXNzLFxuICAgICAgICAgIHRvQWRkcmVzczogdHJpZ2dlci50b0FkZHJlc3MsXG4gICAgICAgICAgZnJvbUNoYWluOiB0cmlnZ2VyLmZyb21DaGFpbixcbiAgICAgICAgICBuZXR3b3JrRmVlOiB0cmlnZ2VyLm5ldHdvcmtGZWUsXG4gICAgICAgICAgc291cmNlQ2hhaW5Ub2tlbklkOiB0cmlnZ2VyLnNvdXJjZUNoYWluVG9rZW5JZCxcbiAgICAgICAgICB0YXJnZXRDaGFpblRva2VuSWQ6IHRyaWdnZXIudGFyZ2V0Q2hhaW5Ub2tlbklkLFxuICAgICAgICAgIHNvdXJjZUJsb2NrSWQ6IHRyaWdnZXIuc291cmNlQmxvY2tJZCxcbiAgICAgICAgICB0b0NoYWluOiB0cmlnZ2VyLnRvQ2hhaW4sXG4gICAgICAgICAgc291cmNlVHhJZDogdHJpZ2dlci5zb3VyY2VUeElkLFxuICAgICAgICAgIHNvdXJjZUNoYWluSGVpZ2h0OiB0cmlnZ2VyLnNvdXJjZUNoYWluSGVpZ2h0LFxuICAgICAgICB9O1xuICAgICAgICBpZiAoIXNhdmVkKSB7XG4gICAgICAgICAgdGhpcy5sb2dnZXIuaW5mbyhcbiAgICAgICAgICAgIGBTdG9yaW5nIGV2ZW50IHRyaWdnZXIgWyR7dHJpZ2dlci5ib3hJZH1dIGZvciBldmVudCBbJHt0cmlnZ2VyLmV2ZW50SWR9XSBhdCBoZWlnaHQgJHtibG9jay5oZWlnaHR9IGFuZCBleHRyYWN0b3IgJHtleHRyYWN0b3J9YFxuICAgICAgICAgICk7XG4gICAgICAgICAgYXdhaXQgcmVwb3NpdG9yeS5pbnNlcnQoZW50aXR5KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmxvZ2dlci5pbmZvKFxuICAgICAgICAgICAgYFVwZGF0aW5nIGV2ZW50IHRyaWdnZXIgJHt0cmlnZ2VyLmJveElkfSBmb3IgZXZlbnQgWyR7dHJpZ2dlci5ldmVudElkfV0gYXQgaGVpZ2h0ICR7YmxvY2suaGVpZ2h0fSBhbmQgZXh0cmFjdG9yICR7ZXh0cmFjdG9yfWBcbiAgICAgICAgICApO1xuICAgICAgICAgIGF3YWl0IHJlcG9zaXRvcnkudXBkYXRlKHsgYm94SWQ6IHRyaWdnZXIuYm94SWQgfSwgZW50aXR5KTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhgRW50aXR5OiAke0pTT04uc3RyaW5naWZ5KGVudGl0eSl9YCk7XG4gICAgICB9XG4gICAgICBhd2FpdCBxdWVyeVJ1bm5lci5jb21taXRUcmFuc2FjdGlvbigpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRoaXMubG9nZ2VyLmVycm9yKFxuICAgICAgICBgQW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nIHN0b3JlIGV2ZW50VHJpZ2dlciBhY3Rpb246ICR7ZX1gXG4gICAgICApO1xuICAgICAgYXdhaXQgcXVlcnlSdW5uZXIucm9sbGJhY2tUcmFuc2FjdGlvbigpO1xuICAgICAgc3VjY2VzcyA9IGZhbHNlO1xuICAgIH0gZmluYWxseSB7XG4gICAgICBhd2FpdCBxdWVyeVJ1bm5lci5yZWxlYXNlKCk7XG4gICAgfVxuICAgIHJldHVybiBzdWNjZXNzO1xuICB9O1xuXG4gIC8qKlxuICAgKiBVcGRhdGUgc3BlbmRCbG9jayBhbmQgc3BlbmRIZWlnaHQgb2YgZXZlbnRUcmlnZ2VycyBzcGVudCBvbiB0aGUgYmxvY2tcbiAgICogYWxzbyB1cGRhdGUgdGhlIHNwZW5kVHhJZCB3aXRoIHRoZSBzcGVjaWZpZWQgdHhJZFxuICAgKiBhbmQgc2V0IHJlc3VsdCBhbmQgcGF5bWVudFR4SWQgb2YgdGhlIGV2ZW50XG4gICAqIEBwYXJhbSBzcGVuZElkXG4gICAqIEBwYXJhbSBibG9ja1xuICAgKiBAcGFyYW0gZXh0cmFjdG9yXG4gICAqIEBwYXJhbSB0eElkXG4gICAqIEBwYXJhbSByZXN1bHRcbiAgICogQHBhcmFtIHBheW1lbnRUeElkXG4gICAqL1xuICBzcGVuZEV2ZW50VHJpZ2dlcnMgPSBhc3luYyAoXG4gICAgc3BlbmRJZDogQXJyYXk8c3RyaW5nPixcbiAgICBibG9jazogQmxvY2ssXG4gICAgZXh0cmFjdG9yOiBzdHJpbmcsXG4gICAgdHhJZDogc3RyaW5nLFxuICAgIHJlc3VsdDogc3RyaW5nLFxuICAgIHBheW1lbnRUeElkOiBzdHJpbmdcbiAgKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gICAgY29uc3Qgc3BlbmRJZENodW5rcyA9IGNodW5rKHNwZW5kSWQsIGRiSWRDaHVua1NpemUpO1xuICAgIGZvciAoY29uc3Qgc3BlbmRJZENodW5rIG9mIHNwZW5kSWRDaHVua3MpIHtcbiAgICAgIGNvbnN0IHVwZGF0ZVJlc3VsdCA9IGF3YWl0IHRoaXMudHJpZ2dlckV2ZW50UmVwb3NpdG9yeS51cGRhdGUoXG4gICAgICAgIHsgYm94SWQ6IEluKHNwZW5kSWRDaHVuayksIGV4dHJhY3RvcjogZXh0cmFjdG9yIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBzcGVuZEJsb2NrOiBibG9jay5oYXNoLFxuICAgICAgICAgIHNwZW5kSGVpZ2h0OiBibG9jay5oZWlnaHQsXG4gICAgICAgICAgc3BlbmRUeElkOiB0eElkLFxuICAgICAgICAgIHJlc3VsdDogcmVzdWx0LFxuICAgICAgICAgIHBheW1lbnRUeElkOiBwYXltZW50VHhJZCxcbiAgICAgICAgfVxuICAgICAgKTtcblxuICAgICAgaWYgKHVwZGF0ZVJlc3VsdC5hZmZlY3RlZCAmJiB1cGRhdGVSZXN1bHQuYWZmZWN0ZWQgPiAwKSB7XG4gICAgICAgIGNvbnN0IHNwZW50Um93cyA9IGF3YWl0IHRoaXMudHJpZ2dlckV2ZW50UmVwb3NpdG9yeS5maW5kQnkoe1xuICAgICAgICAgIGJveElkOiBJbihzcGVuZElkQ2h1bmspLFxuICAgICAgICAgIHNwZW5kQmxvY2s6IGJsb2NrLmhhc2gsXG4gICAgICAgIH0pO1xuICAgICAgICBmb3IgKGNvbnN0IHJvdyBvZiBzcGVudFJvd3MpIHtcbiAgICAgICAgICB0aGlzLmxvZ2dlci5pbmZvKFxuICAgICAgICAgICAgYFNwZW50IHRyaWdnZXIgWyR7cm93LmJveElkfV0gb2YgZXZlbnQgWyR7cm93LmV2ZW50SWR9XSBhdCBoZWlnaHQgJHtibG9jay5oZWlnaHR9YFxuICAgICAgICAgICk7XG4gICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoYFNwZW50IHRyaWdnZXI6IFske0pTT04uc3RyaW5naWZ5KHJvdyl9XWApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9O1xuXG4gIC8qKlxuICAgKiBEZWxldGUgYWxsIGV2ZW50VHJpZ2dlcnMgY29ycmVzcG9uZGluZyB0byB0aGUgYmxvY2soaWQpIGFuZCBleHRyYWN0b3IoaWQpXG4gICAqIGFuZCB1cGRhdGUgYWxsIGV2ZW50VHJpZ2dlcnMgc3BlbnQgb24gdGhlIHNwZWNpZmllZCBibG9ja1xuICAgKiBAcGFyYW0gYmxvY2tcbiAgICogQHBhcmFtIGV4dHJhY3RvclxuICAgKi9cbiAgZGVsZXRlQmxvY2sgPSBhc3luYyAoYmxvY2s6IHN0cmluZywgZXh0cmFjdG9yOiBzdHJpbmcpID0+IHtcbiAgICB0aGlzLmxvZ2dlci5pbmZvKFxuICAgICAgYERlbGV0aW5nIGV2ZW50IHRyaWdnZXJzIGF0IGJsb2NrICR7YmxvY2t9IGFuZCBleHRyYWN0b3IgJHtleHRyYWN0b3J9YFxuICAgICk7XG4gICAgYXdhaXQgdGhpcy50cmlnZ2VyRXZlbnRSZXBvc2l0b3J5LmRlbGV0ZSh7XG4gICAgICBibG9jazogYmxvY2ssXG4gICAgICBleHRyYWN0b3I6IGV4dHJhY3RvcixcbiAgICB9KTtcbiAgICBhd2FpdCB0aGlzLnRyaWdnZXJFdmVudFJlcG9zaXRvcnkudXBkYXRlKFxuICAgICAgeyBzcGVuZEJsb2NrOiBibG9jaywgZXh0cmFjdG9yOiBleHRyYWN0b3IgfSxcbiAgICAgIHtcbiAgICAgICAgc3BlbmRCbG9jazogbnVsbCxcbiAgICAgICAgc3BlbmRUeElkOiBudWxsLFxuICAgICAgICBzcGVuZEhlaWdodDogbnVsbCxcbiAgICAgICAgcmVzdWx0OiBudWxsLFxuICAgICAgICBwYXltZW50VHhJZDogbnVsbCxcbiAgICAgIH1cbiAgICApO1xuICB9O1xufVxuXG5leHBvcnQgZGVmYXVsdCBFdmVudFRyaWdnZXJBY3Rpb247XG4iXX0=
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZlbnRUcmlnZ2VyQWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGliL2FjdGlvbnMvRXZlbnRUcmlnZ2VyQWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFekMsT0FBTyxFQUNMLHdDQUF3QyxFQUd4QyxhQUFhLEdBRWQsTUFBTSxrQ0FBa0MsQ0FBQztBQUUxQyxPQUFPLGtCQUFrQixNQUFNLGdDQUFnQyxDQUFDO0FBRWhFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDbEMsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFeEMsTUFBTSxrQkFBbUIsU0FBUSx3Q0FHaEM7SUFDa0IsVUFBVSxDQUFhO0lBRXhDLFlBQVksVUFBc0IsRUFBRSxNQUF1QjtRQUN6RCxLQUFLLENBQUMsVUFBVSxFQUFFLGtCQUFrQixFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQy9CLENBQUM7SUFFRDs7T0FFRztJQUNILFlBQVksR0FBRyxDQUNiLFlBQXFDLEVBQ3JDLEtBQWdCLEVBQ2hCLFNBQWlCLEVBQ2lCLEVBQUU7UUFDcEMsT0FBTyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3BDLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSTtZQUNsQixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87WUFDeEIsS0FBSyxFQUFFLE9BQU8sQ0FBQyxLQUFLO1lBQ3BCLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVTtZQUM5QixLQUFLLEVBQUUsS0FBSyxDQUFDLElBQUk7WUFDakIsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNO1lBQ3BCLFNBQVMsRUFBRSxTQUFTO1lBQ3BCLFNBQVMsRUFBRSxPQUFPLENBQUMs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QUNGLENBQUM7Z0JBQ0YsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUMzQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDZCxrQkFBa0IsWUFBWSxDQUFDLEtBQUssZUFBZSxZQUFZLENBQUMsT0FBTyxlQUFlLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FDckcsQ0FBQztnQkFDRixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDZixtQkFBbUIsSUFBSSxDQUFDLFNBQVMsQ0FDL0IsWUFBWSxDQUNiLGdDQUFnQyxNQUFNLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQ2hFLENBQUM7YUFDSDtTQUNGO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQyxDQUFDO0NBQ0g7QUFFRCxlQUFlLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0YVNvdXJjZSwgSW4gfSBmcm9tICd0eXBlb3JtJztcbmltcG9ydCB7IEFic3RyYWN0TG9nZ2VyIH0gZnJvbSAnQHJvc2VuLWJyaWRnZS9hYnN0cmFjdC1sb2dnZXInO1xuaW1wb3J0IHtcbiAgQWJzdHJhY3RJbml0aWFsaXphYmxlRXJnb0V4dHJhY3RvckFjdGlvbixcbiAgQmxvY2tJbmZvLFxuICBCb3hJbmZvLFxuICBEQl9DSFVOS19TSVpFLFxuICBTcGVuZEluZm8sXG59IGZyb20gJ0Byb3Nlbi1icmlkZ2UvYWJzdHJhY3QtZXh0cmFjdG9yJztcblxuaW1wb3J0IEV2ZW50VHJpZ2dlckVudGl0eSBmcm9tICcuLi9lbnRpdGllcy9FdmVudFRyaWdnZXJFbnRpdHknO1xuaW1wb3J0IHsgRXh0cmFjdGVkRXZlbnRUcmlnZ2VyIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9leHRyYWN0ZWRFdmVudFRyaWdnZXInO1xuaW1wb3J0IHsgSnNvbkJJIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgY2h1bmssIHBpY2sgfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5jbGFzcyBFdmVudFRyaWdnZXJBY3Rpb24gZXh0ZW5kcyBBYnN0cmFjdEluaXRpYWxpemFibGVFcmdvRXh0cmFjdG9yQWN0aW9uPFxuICBFeHRyYWN0ZWRFdmVudFRyaWdnZXIsXG4gIEV2ZW50VHJpZ2dlckVudGl0eVxuPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgZGF0YVNvdXJjZTogRGF0YVNvdXJjZTtcblxuICBjb25zdHJ1Y3RvcihkYXRhU291cmNlOiBEYXRhU291cmNlLCBsb2dnZXI/OiBBYnN0cmFjdExvZ2dlcikge1xuICAgIHN1cGVyKGRhdGFTb3VyY2UsIEV2ZW50VHJpZ2dlckVudGl0eSwgbG9nZ2VyKTtcbiAgICB0aGlzLmRhdGFTb3VyY2UgPSBkYXRhU291cmNlO1xuICB9XG5cbiAgLyoqXG4gICAqIGNyZWF0ZSB0aGUgYm94IGVudGl0eSBmcm9tIGV4dHJhY3RlZCBkYXRhIGFuZCBibG9jayBpbmZvcm1hdGlvblxuICAgKi9cbiAgY3JlYXRlRW50aXR5ID0gKFxuICAgIHRyaWdnZXJCb3hlczogRXh0cmFjdGVkRXZlbnRUcmlnZ2VyW10sXG4gICAgYmxvY2s6IEJsb2NrSW5mbyxcbiAgICBleHRyYWN0b3I6IHN0cmluZ1xuICApOiBPbWl0PEV2ZW50VHJpZ2dlckVudGl0eSwgJ2lkJz5bXSA9PiB7XG4gICAgcmV0dXJuIHRyaWdnZXJCb3hlcy5tYXAoKHRyaWdnZXIpID0+ICh7XG4gICAgICB0eElkOiB0cmlnZ2VyLnR4SWQsXG4gICAgICBldmVudElkOiB0cmlnZ2VyLmV2ZW50SWQsXG4gICAgICBib3hJZDogdHJpZ2dlci5ib3hJZCxcbiAgICAgIHNlcmlhbGl6ZWQ6IHRyaWdnZXIuc2VyaWFsaXplZCxcbiAgICAgIGJsb2NrOiBibG9jay5oYXNoLFxuICAgICAgaGVpZ2h0OiBibG9jay5oZWlnaHQsXG4gICAgICBleHRyYWN0b3I6IGV4dHJhY3RvcixcbiAgICAgIFdJRHNDb3VudDogdHJpZ2dlci5XSURzQ291bnQsXG4gICAgICBXSURzSGFzaDogdHJpZ2dlci5XSURzSGFzaCxcbiAgICAgIGFtb3VudDogdHJpZ2dlci5hbW91bnQsXG4gICAgICBicmlkZ2VGZWU6IHRyaWdnZXIuYnJpZGdlRmVlLFxuICAgICAgZnJvbUFkZHJlc3M6IHRyaWdnZXIuZnJvbUFkZHJlc3MsXG4gICAgICB0b0FkZHJlc3M6IHRyaWdnZXIudG9BZGRyZXNzLFxuICAgICAgZnJvbUNoYWluOiB0cmlnZ2VyLmZyb21DaGFpbixcbiAgICAgIG5ldHdvcmtGZWU6IHRyaWdnZXIubmV0d29ya0ZlZSxcbiAgICAgIHNvdXJjZUNoYWluVG9rZW5JZDogdHJpZ2dlci5zb3VyY2VDaGFpblRva2VuSWQsXG4gICAgICB0YXJnZXRDaGFpblRva2VuSWQ6IHRyaWdnZXIudGFyZ2V0Q2hhaW5Ub2tlbklkLFxuICAgICAgc291cmNlQmxvY2tJZDogdHJpZ2dlci5zb3VyY2VCbG9ja0lkLFxuICAgICAgdG9DaGFpbjogdHJpZ2dlci50b0NoYWluLFxuICAgICAgc291cmNlVHhJZDogdHJpZ2dlci5zb3VyY2VUeElkLFxuICAgICAgc291cmNlQ2hhaW5IZWlnaHQ6IHRyaWdnZXIuc291cmNlQ2hhaW5IZWlnaHQsXG4gICAgfSkpO1xuICB9O1xuXG4gIC8qKlxuICAgKiBjb252ZXJ0IHRoZSBkYXRhYmFzZSBlbnRpdHkgYmFjayB0byByYXcgZGF0YVxuICAgKi9cbiAgY29udmVydEVudGl0eVRvRGF0YSA9IChcbiAgICBlbnRpdGllczogRXZlbnRUcmlnZ2VyRW50aXR5W11cbiAgKTogRXh0cmFjdGVkRXZlbnRUcmlnZ2VyW10gPT4ge1xuICAgIHJldHVybiBlbnRpdGllcy5tYXAoKGRhdGEpID0+XG4gICAgICBwaWNrKGRhdGEsIFtcbiAgICAgICAgJ2V2ZW50SWQnLFxuICAgICAgICAndHhJZCcsXG4gICAgICAgICdib3hJZCcsXG4gICAgICAgICdzZXJpYWxpemVkJyxcbiAgICAgICAgJ2Zyb21DaGFpbicsXG4gICAgICAgICd0b0NoYWluJyxcbiAgICAgICAgJ2Zyb21BZGRyZXNzJyxcbiAgICAgICAgJ3RvQWRkcmVzcycsXG4gICAgICAgICdhbW91bnQnLFxuICAgICAgICAnYnJpZGdlRmVlJyxcbiAgICAgICAgJ25ldHdvcmtGZWUnLFxuICAgICAgICAnc291cmNlQ2hhaW5Ub2tlbklkJyxcbiAgICAgICAgJ3RhcmdldENoYWluVG9rZW5JZCcsXG4gICAgICAgICdzb3VyY2VCbG9ja0lkJyxcbiAgICAgICAgJ3NvdXJjZVR4SWQnLFxuICAgICAgICAnV0lEc0NvdW50JyxcbiAgICAgICAgJ1dJRHNIYXNoJyxcbiAgICAgICAgJ3NvdXJjZUNoYWluSGVpZ2h0JyxcbiAgICAgIF0pXG4gICAgKTtcbiAgfTtcblxuICAvKipcbiAgICogdXBkYXRlIHNwZW5kaW5nIGluZm9ybWF0aW9uIG9mIHN0b3JlZCBldmVudCB0cmlnZ2Vyc1xuICAgKiBhbmQgc2V0IHJlc3VsdCBhbmQgcGF5bWVudFR4SWQgb2YgdGhlIGV2ZW50XG4gICAqIGNodW5rIHNwZW5kSW5mb3MgdG8gcHJldmVudCBsYXJnZSBkYXRhYmFzZSBxdWVyaWVzXG4gICAqIEBwYXJhbSBzcGVuZEluZkFycmF5XG4gICAqIEBwYXJhbSBibG9ja1xuICAgKiBAcGFyYW0gZXh0cmFjdG9ySWRcbiAgICogQHJldHVybnMgc3BlbnQgYm94IGlkc1xuICAgKi9cbiAgc3BlbmRCb3hlcyA9IGFzeW5jIChcbiAgICBzcGVuZEluZm9BcnJheTogQXJyYXk8U3BlbmRJbmZvPixcbiAgICBibG9jazogQmxvY2tJbmZvLFxuICAgIGV4dHJhY3RvcklkOiBzdHJpbmdcbiAgKTogUHJvbWlzZTxCb3hJbmZvW10+ID0+IHtcbiAgICBjb25zdCBzcGVudERhdGEgPSBbXTtcbiAgICBjb25zdCBzcGVuZEluZm9DaHVua3MgPSBjaHVuayhzcGVuZEluZm9BcnJheSwgREJfQ0hVTktfU0laRSk7XG4gICAgZm9yIChjb25zdCBzcGVuZEluZm9DaHVuayBvZiBzcGVuZEluZm9DaHVua3MpIHtcbiAgICAgIGNvbnN0IHNwZW50VHJpZ2dlcnMgPSBhd2FpdCB0aGlzLnJlcG9zaXRvcnkuZmluZEJ5KHtcbiAgICAgICAgYm94SWQ6IEluKHNwZW5kSW5mb0NodW5rLm1hcCgoc3BlbmRJbmZvKSA9PiBzcGVuZEluZm8uYm94SWQpKSxcbiAgICAgICAgZXh0cmFjdG9yOiBleHRyYWN0b3JJZCxcbiAgICAgIH0pO1xuICAgICAgZm9yIChjb25zdCBzcGVudFRyaWdnZXIgb2Ygc3BlbnRUcmlnZ2Vycykge1xuICAgICAgICBjb25zdCBzcGVuZEluZm8gPSBzcGVuZEluZm9DaHVuay5maW5kKFxuICAgICAgICAgIChpbmZvKSA9PiBpbmZvLmJveElkID09PSBzcGVudFRyaWdnZXIuYm94SWRcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKCFzcGVuZEluZm8gfHwgIXNwZW5kSW5mby5leHRyYXMgfHwgc3BlbmRJbmZvLmV4dHJhcy5sZW5ndGggPCAyKSB7XG4gICAgICAgICAgdGhyb3cgRXJyb3IoXG4gICAgICAgICAgICBgSW1wb3NzaWJsZSBjYXNlOiBzcGVuZGluZyBpbmZvcm1hdGlvbiBleHRyYXMgZG9lcyBub3QgY29udGFpbiByZXN1bHQgb3IgcGF5bWVudFR4SWQsICR7c3BlbmRJbmZvfWBcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIGF3YWl0IHRoaXMucmVwb3NpdG9yeS51cGRhdGUoXG4gICAgICAgICAgeyBib3hJZDogc3BlbmRJbmZvLmJveElkLCBleHRyYWN0b3I6IGV4dHJhY3RvcklkIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgc3BlbmRCbG9jazogYmxvY2suaGFzaCxcbiAgICAgICAgICAgIHNwZW5kSGVpZ2h0OiBibG9jay5oZWlnaHQsXG4gICAgICAgICAgICBzcGVuZFR4SWQ6IHNwZW5kSW5mby50eElkLFxuICAgICAgICAgICAgcmVzdWx0OiBzcGVuZEluZm8uZXh0cmFzWzBdLFxuICAgICAgICAgICAgcGF5bWVudFR4SWQ6IHNwZW5kSW5mby5leHRyYXNbMV0sXG4gICAgICAgICAgfVxuICAgICAgICApO1xuICAgICAgICBzcGVudERhdGEucHVzaChwaWNrKHNwZW5kSW5mbywgWydib3hJZCddKSk7XG4gICAgICAgIHRoaXMubG9nZ2VyLmluZm8oXG4gICAgICAgICAgYFNwZW50IHRyaWdnZXIgWyR7c3BlbnRUcmlnZ2VyLmJveElkfV0gb2YgZXZlbnQgWyR7c3BlbnRUcmlnZ2VyLmV2ZW50SWR9XSBhdCBoZWlnaHQgJHtibG9jay5oZWlnaHR9YFxuICAgICAgICApO1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgICBgU3BlbnQgdHJpZ2dlcjogWyR7SlNPTi5zdHJpbmdpZnkoXG4gICAgICAgICAgICBzcGVudFRyaWdnZXJcbiAgICAgICAgICApfV0gd2l0aCBzcGVuZGluZyBpbmZvcm1hdGlvbiBbJHtKc29uQkkuc3RyaW5naWZ5KHNwZW5kSW5mbyl9XWBcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHNwZW50RGF0YTtcbiAgfTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgRXZlbnRUcmlnZ2VyQWN0aW9uO1xuIl19
|
|
@@ -1,12 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { AbstractErgoExtractorEntity } from '@rosen-bridge/abstract-extractor';
|
|
2
|
+
declare class EventTriggerEntity extends AbstractErgoExtractorEntity {
|
|
3
3
|
eventId: string;
|
|
4
4
|
txId: string;
|
|
5
|
-
extractor: string;
|
|
6
|
-
boxId: string;
|
|
7
|
-
boxSerialized: string;
|
|
8
|
-
block: string;
|
|
9
|
-
height: number;
|
|
10
5
|
fromChain: string;
|
|
11
6
|
toChain: string;
|
|
12
7
|
fromAddress: string;
|
|
@@ -21,8 +16,6 @@ declare class EventTriggerEntity {
|
|
|
21
16
|
sourceBlockId: string;
|
|
22
17
|
WIDsCount: number;
|
|
23
18
|
WIDsHash: string;
|
|
24
|
-
spendBlock?: string | null;
|
|
25
|
-
spendHeight?: number | null;
|
|
26
19
|
spendTxId?: string | null;
|
|
27
20
|
result?: string | null;
|
|
28
21
|
paymentTxId?: string | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventTriggerEntity.d.ts","sourceRoot":"","sources":["../../lib/entities/EventTriggerEntity.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"EventTriggerEntity.d.ts","sourceRoot":"","sources":["../../lib/entities/EventTriggerEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAG/E,cACM,kBAAmB,SAAQ,2BAA2B;IAE1D,OAAO,EAAE,MAAM,CAAC;IAGhB,IAAI,EAAE,MAAM,CAAC;IAGb,SAAS,EAAE,MAAM,CAAC;IAGlB,OAAO,EAAE,MAAM,CAAC;IAGhB,WAAW,EAAE,MAAM,CAAC;IAGpB,SAAS,EAAE,MAAM,CAAC;IAGlB,MAAM,EAAE,MAAM,CAAC;IAGf,SAAS,EAAE,MAAM,CAAC;IAGlB,UAAU,EAAE,MAAM,CAAC;IAGnB,kBAAkB,EAAE,MAAM,CAAC;IAG3B,iBAAiB,EAAE,MAAM,CAAC;IAG1B,kBAAkB,EAAE,MAAM,CAAC;IAG3B,UAAU,EAAE,MAAM,CAAC;IAGnB,aAAa,EAAE,MAAM,CAAC;IAGtB,SAAS,EAAE,MAAM,CAAC;IAGlB,QAAQ,EAAE,MAAM,CAAC;IAGjB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAG1B,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAGvB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,eAAe,kBAAkB,CAAC"}
|
|
@@ -7,16 +7,11 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
9
|
};
|
|
10
|
-
import {
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
import { AbstractErgoExtractorEntity } from '@rosen-bridge/abstract-extractor';
|
|
11
|
+
import { Column, Entity } from 'typeorm';
|
|
12
|
+
let EventTriggerEntity = class EventTriggerEntity extends AbstractErgoExtractorEntity {
|
|
13
13
|
eventId;
|
|
14
14
|
txId;
|
|
15
|
-
extractor;
|
|
16
|
-
boxId;
|
|
17
|
-
boxSerialized;
|
|
18
|
-
block;
|
|
19
|
-
height;
|
|
20
15
|
fromChain;
|
|
21
16
|
toChain;
|
|
22
17
|
fromAddress;
|
|
@@ -31,16 +26,10 @@ let EventTriggerEntity = class EventTriggerEntity {
|
|
|
31
26
|
sourceBlockId;
|
|
32
27
|
WIDsCount;
|
|
33
28
|
WIDsHash;
|
|
34
|
-
spendBlock;
|
|
35
|
-
spendHeight;
|
|
36
29
|
spendTxId;
|
|
37
30
|
result;
|
|
38
31
|
paymentTxId;
|
|
39
32
|
};
|
|
40
|
-
__decorate([
|
|
41
|
-
PrimaryGeneratedColumn(),
|
|
42
|
-
__metadata("design:type", Number)
|
|
43
|
-
], EventTriggerEntity.prototype, "id", void 0);
|
|
44
33
|
__decorate([
|
|
45
34
|
Column({ default: 'Not-set' }),
|
|
46
35
|
__metadata("design:type", String)
|
|
@@ -49,26 +38,6 @@ __decorate([
|
|
|
49
38
|
Column(),
|
|
50
39
|
__metadata("design:type", String)
|
|
51
40
|
], EventTriggerEntity.prototype, "txId", void 0);
|
|
52
|
-
__decorate([
|
|
53
|
-
Column(),
|
|
54
|
-
__metadata("design:type", String)
|
|
55
|
-
], EventTriggerEntity.prototype, "extractor", void 0);
|
|
56
|
-
__decorate([
|
|
57
|
-
Column(),
|
|
58
|
-
__metadata("design:type", String)
|
|
59
|
-
], EventTriggerEntity.prototype, "boxId", void 0);
|
|
60
|
-
__decorate([
|
|
61
|
-
Column(),
|
|
62
|
-
__metadata("design:type", String)
|
|
63
|
-
], EventTriggerEntity.prototype, "boxSerialized", void 0);
|
|
64
|
-
__decorate([
|
|
65
|
-
Column(),
|
|
66
|
-
__metadata("design:type", String)
|
|
67
|
-
], EventTriggerEntity.prototype, "block", void 0);
|
|
68
|
-
__decorate([
|
|
69
|
-
Column(),
|
|
70
|
-
__metadata("design:type", Number)
|
|
71
|
-
], EventTriggerEntity.prototype, "height", void 0);
|
|
72
41
|
__decorate([
|
|
73
42
|
Column(),
|
|
74
43
|
__metadata("design:type", String)
|
|
@@ -125,14 +94,6 @@ __decorate([
|
|
|
125
94
|
Column(),
|
|
126
95
|
__metadata("design:type", String)
|
|
127
96
|
], EventTriggerEntity.prototype, "WIDsHash", void 0);
|
|
128
|
-
__decorate([
|
|
129
|
-
Column({ nullable: true, type: 'text' }),
|
|
130
|
-
__metadata("design:type", Object)
|
|
131
|
-
], EventTriggerEntity.prototype, "spendBlock", void 0);
|
|
132
|
-
__decorate([
|
|
133
|
-
Column({ nullable: true, type: 'int' }),
|
|
134
|
-
__metadata("design:type", Object)
|
|
135
|
-
], EventTriggerEntity.prototype, "spendHeight", void 0);
|
|
136
97
|
__decorate([
|
|
137
98
|
Column({ nullable: true, type: 'text' }),
|
|
138
99
|
__metadata("design:type", Object)
|
|
@@ -146,8 +107,7 @@ __decorate([
|
|
|
146
107
|
__metadata("design:type", Object)
|
|
147
108
|
], EventTriggerEntity.prototype, "paymentTxId", void 0);
|
|
148
109
|
EventTriggerEntity = __decorate([
|
|
149
|
-
Entity('event_trigger_entity')
|
|
150
|
-
Unique(['boxId', 'extractor'])
|
|
110
|
+
Entity('event_trigger_entity')
|
|
151
111
|
], EventTriggerEntity);
|
|
152
112
|
export default EventTriggerEntity;
|
|
153
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
113
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZlbnRUcmlnZ2VyRW50aXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGliL2VudGl0aWVzL0V2ZW50VHJpZ2dlckVudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUd6QyxJQUFNLGtCQUFrQixHQUF4QixNQUFNLGtCQUFtQixTQUFRLDJCQUEyQjtJQUUxRCxPQUFPLENBQVM7SUFHaEIsSUFBSSxDQUFTO0lBR2IsU0FBUyxDQUFTO0lBR2xCLE9BQU8sQ0FBUztJQUdoQixXQUFXLENBQVM7SUFHcEIsU0FBUyxDQUFTO0lBR2xCLE1BQU0sQ0FBUztJQUdmLFNBQVMsQ0FBUztJQUdsQixVQUFVLENBQVM7SUFHbkIsa0JBQWtCLENBQVM7SUFHM0IsaUJBQWlCLENBQVM7SUFHMUIsa0JBQWtCLENBQVM7SUFHM0IsVUFBVSxDQUFTO0lBR25CLGFBQWEsQ0FBUztJQUd0QixTQUFTLENBQVM7SUFHbEIsUUFBUSxDQUFTO0lBR2pCLFNBQVMsQ0FBaUI7SUFHMUIsTUFBTSxDQUFpQjtJQUd2QixXQUFXLENBQWlCO0NBQzdCLENBQUE7QUF4REM7SUFBQyxNQUFNLENBQUMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLENBQUM7O21EQUNmO0FBRWhCO0lBQUMsTUFBTSxFQUFFOztnREFDSTtBQUViO0lBQUMsTUFBTSxFQUFFOztxREFDUztBQUVsQjtJQUFDLE1BQU0sRUFBRTs7bURBQ087QUFFaEI7SUFBQyxNQUFNLEVBQUU7O3VEQUNXO0FBRXBCO0lBQUMsTUFBTSxFQUFFOztxREFDUztBQUVsQjtJQUFDLE1BQU0sRUFBRTs7a0RBQ007QUFFZjtJQUFDLE1BQU0sRUFBRTs7cURBQ1M7QUFFbEI7SUFBQyxNQUFNLEVBQUU7O3NEQUNVO0FBRW5CO0lBQUMsTUFBTSxFQUFFOzs4REFDa0I7QUFFM0I7SUFBQyxNQUFNLEVBQUU7OzZEQUNpQjtBQUUxQjtJQUFDLE1BQU0sRUFBRTs7OERBQ2tCO0FBRTNCO0lBQUMsTUFBTSxFQUFFOztzREFDVTtBQUVuQjtJQUFDLE1BQU0sRUFBRTs7eURBQ2E7QUFFdEI7SUFBQyxNQUFNLEVBQUU7O3FEQUNTO0FBRWxCO0lBQUMsTUFBTSxFQUFFOztvREFDUTtBQUVqQjtJQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDOztxREFDZjtBQUUxQjtJQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDOztrREFDbEI7QUFFdkI7SUFBQyxNQUFNLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQzs7dURBQ2I7QUF4RHhCLGtCQUFrQjtJQUR2QixNQUFNLENBQUMsc0JBQXNCLENBQUM7R0FDekIsa0JBQWtCLENBeUR2QjtBQUVELGVBQWUsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdEVyZ29FeHRyYWN0b3JFbnRpdHkgfSBmcm9tICdAcm9zZW4tYnJpZGdlL2Fic3RyYWN0LWV4dHJhY3Rvcic7XG5pbXBvcnQgeyBDb2x1bW4sIEVudGl0eSB9IGZyb20gJ3R5cGVvcm0nO1xuXG5ARW50aXR5KCdldmVudF90cmlnZ2VyX2VudGl0eScpXG5jbGFzcyBFdmVudFRyaWdnZXJFbnRpdHkgZXh0ZW5kcyBBYnN0cmFjdEVyZ29FeHRyYWN0b3JFbnRpdHkge1xuICBAQ29sdW1uKHsgZGVmYXVsdDogJ05vdC1zZXQnIH0pXG4gIGV2ZW50SWQ6IHN0cmluZztcblxuICBAQ29sdW1uKClcbiAgdHhJZDogc3RyaW5nO1xuXG4gIEBDb2x1bW4oKVxuICBmcm9tQ2hhaW46IHN0cmluZztcblxuICBAQ29sdW1uKClcbiAgdG9DaGFpbjogc3RyaW5nO1xuXG4gIEBDb2x1bW4oKVxuICBmcm9tQWRkcmVzczogc3RyaW5nO1xuXG4gIEBDb2x1bW4oKVxuICB0b0FkZHJlc3M6IHN0cmluZztcblxuICBAQ29sdW1uKClcbiAgYW1vdW50OiBzdHJpbmc7XG5cbiAgQENvbHVtbigpXG4gIGJyaWRnZUZlZTogc3RyaW5nO1xuXG4gIEBDb2x1bW4oKVxuICBuZXR3b3JrRmVlOiBzdHJpbmc7XG5cbiAgQENvbHVtbigpXG4gIHNvdXJjZUNoYWluVG9rZW5JZDogc3RyaW5nO1xuXG4gIEBDb2x1bW4oKVxuICBzb3VyY2VDaGFpbkhlaWdodDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oKVxuICB0YXJnZXRDaGFpblRva2VuSWQ6IHN0cmluZztcblxuICBAQ29sdW1uKClcbiAgc291cmNlVHhJZDogc3RyaW5nO1xuXG4gIEBDb2x1bW4oKVxuICBzb3VyY2VCbG9ja0lkOiBzdHJpbmc7XG5cbiAgQENvbHVtbigpXG4gIFdJRHNDb3VudDogbnVtYmVyO1xuXG4gIEBDb2x1bW4oKVxuICBXSURzSGFzaDogc3RyaW5nO1xuXG4gIEBDb2x1bW4oeyBudWxsYWJsZTogdHJ1ZSwgdHlwZTogJ3RleHQnIH0pXG4gIHNwZW5kVHhJZD86IHN0cmluZyB8IG51bGw7XG5cbiAgQENvbHVtbih7IG51bGxhYmxlOiB0cnVlLCB0eXBlOiAndGV4dCcgfSlcbiAgcmVzdWx0Pzogc3RyaW5nIHwgbnVsbDtcblxuICBAQ29sdW1uKHsgbnVsbGFibGU6IHRydWUsIHR5cGU6ICd0ZXh0JyB9KVxuICBwYXltZW50VHhJZD86IHN0cmluZyB8IG51bGw7XG59XG5cbmV4cG9ydCBkZWZhdWx0IEV2ZW50VHJpZ2dlckVudGl0eTtcbiJdfQ==
|
|
@@ -1,32 +1,47 @@
|
|
|
1
1
|
import { DataSource } from 'typeorm';
|
|
2
2
|
import { Transaction } from '@rosen-bridge/scanner';
|
|
3
3
|
import { AbstractLogger } from '@rosen-bridge/abstract-logger';
|
|
4
|
-
import {
|
|
4
|
+
import { AbstractInitializableErgoExtractor, BlockInfo, ErgoNetworkType, OutputBox } from '@rosen-bridge/abstract-extractor';
|
|
5
|
+
import EventTriggerAction from '../actions/EventTriggerAction';
|
|
6
|
+
import { ExtractedEventTrigger } from '../interfaces/extractedEventTrigger';
|
|
5
7
|
import { EventResult } from '../types';
|
|
6
|
-
|
|
7
|
-
|
|
8
|
+
import EventTriggerEntity from '../entities/EventTriggerEntity';
|
|
9
|
+
declare class EventTriggerExtractor extends AbstractInitializableErgoExtractor<ExtractedEventTrigger, EventTriggerEntity> {
|
|
8
10
|
id: string;
|
|
9
|
-
|
|
10
|
-
private readonly actions;
|
|
11
|
+
protected readonly actions: EventTriggerAction;
|
|
11
12
|
private readonly eventTriggerErgoTree;
|
|
12
13
|
private readonly permitErgoTree;
|
|
13
14
|
private readonly fraudErgoTree;
|
|
14
15
|
private readonly RWT;
|
|
15
|
-
constructor(id: string, dataSource: DataSource, address: string, RWT: string, permitAddress: string, fraudAddress: string, logger?: AbstractLogger);
|
|
16
|
+
constructor(id: string, dataSource: DataSource, type: ErgoNetworkType, url: string, address: string, RWT: string, permitAddress: string, fraudAddress: string, logger?: AbstractLogger, initialize?: boolean);
|
|
17
|
+
/**
|
|
18
|
+
* get Id for current extractor
|
|
19
|
+
*/
|
|
16
20
|
getId: () => string;
|
|
21
|
+
/**
|
|
22
|
+
* check proper data format in the box
|
|
23
|
+
* - box ergoTree
|
|
24
|
+
* - RWT in first token place
|
|
25
|
+
* - widListHash in R4
|
|
26
|
+
* - event data in R5
|
|
27
|
+
* - widCount in R7
|
|
28
|
+
* @param box
|
|
29
|
+
* @return true if the box has the required data and false otherwise
|
|
30
|
+
*/
|
|
31
|
+
hasData: (box: OutputBox) => boolean;
|
|
32
|
+
/**
|
|
33
|
+
* extract box data to proper format (not including spending information)
|
|
34
|
+
* @param box
|
|
35
|
+
* @return extracted data in proper format
|
|
36
|
+
*/
|
|
37
|
+
extractBoxData: (box: OutputBox) => Omit<ExtractedEventTrigger, 'spendBlock' | 'spendHeight'> | undefined;
|
|
17
38
|
/**
|
|
18
39
|
* gets block id and transactions corresponding to the block and saves if they are valid rosen
|
|
19
40
|
* transactions and in case of success return true and in case of failure returns false
|
|
20
41
|
* @param block
|
|
21
42
|
* @param txs
|
|
22
43
|
*/
|
|
23
|
-
processTransactions: (txs: Array<Transaction>, block:
|
|
24
|
-
forkBlock: (hash: string) => Promise<void>;
|
|
25
|
-
/**
|
|
26
|
-
* Extractor box initialization
|
|
27
|
-
* No action needed in event trigger extractors
|
|
28
|
-
*/
|
|
29
|
-
initializeBoxes: () => Promise<void>;
|
|
44
|
+
processTransactions: (txs: Array<Transaction>, block: BlockInfo) => Promise<boolean>;
|
|
30
45
|
/**
|
|
31
46
|
* extracts result and paymentTxId from a transaction
|
|
32
47
|
* returns 'unknown' as result when tx is neither fraud or successful
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventTriggerExtractor.d.ts","sourceRoot":"","sources":["../../lib/extractor/EventTriggerExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGrC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"EventTriggerExtractor.d.ts","sourceRoot":"","sources":["../../lib/extractor/EventTriggerExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGrC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EACL,kCAAkC,EAClC,SAAS,EAET,eAAe,EACf,SAAS,EAEV,MAAM,kCAAkC,CAAC;AAE1C,OAAO,kBAAkB,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAE5E,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,kBAAkB,MAAM,gCAAgC,CAAC;AAEhE,cAAM,qBAAsB,SAAQ,kCAAkC,CACpE,qBAAqB,EACrB,kBAAkB,CACnB;IACC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;IAC/C,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAS;IAC9C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;gBAG3B,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,eAAe,EACrB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,cAAc,EACvB,UAAU,UAAO;IAiBnB;;OAEG;IACH,KAAK,eAAiB;IAEtB;;;;;;;;;OASG;IACH,OAAO,QAAS,SAAS,KAAG,OAAO,CA2BjC;IAEF;;;;OAIG;IACH,cAAc,QACP,SAAS,KACb,KAAK,qBAAqB,EAAE,YAAY,GAAG,aAAa,CAAC,GAAG,SAAS,CAwDtE;IAEF;;;;;OAKG;IACH,mBAAmB,QACZ,MAAM,WAAW,CAAC,SAChB,SAAS,KACf,QAAQ,OAAO,CAAC,CAuDjB;IAEF;;;;;OAKG;IACH,SAAS,CAAC,kBAAkB,gBAAiB,WAAW;;;MA0CtD;CACH;AAED,eAAe,qBAAqB,CAAC"}
|