@rosen-bridge/watcher-data-extractor 12.3.0 → 13.0.0-7b38188a
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 +20 -0
- package/dist/actions/collateralAction.d.ts +15 -66
- package/dist/actions/collateralAction.d.ts.map +1 -1
- package/dist/actions/collateralAction.js +21 -181
- package/dist/actions/commitmentAction.d.ts +3 -3
- package/dist/actions/commitmentAction.d.ts.map +1 -1
- package/dist/actions/commitmentAction.js +2 -2
- package/dist/actions/eventTriggerAction.d.ts +3 -4
- package/dist/actions/eventTriggerAction.d.ts.map +1 -1
- package/dist/actions/eventTriggerAction.js +11 -13
- package/dist/actions/permitAction.d.ts +3 -3
- package/dist/actions/permitAction.d.ts.map +1 -1
- package/dist/actions/permitAction.js +1 -1
- package/dist/entities/collateralEntity.d.ts +3 -11
- package/dist/entities/collateralEntity.d.ts.map +1 -1
- package/dist/entities/collateralEntity.js +7 -52
- package/dist/entities/eventTriggerEntity.d.ts +2 -2
- package/dist/entities/eventTriggerEntity.d.ts.map +1 -1
- package/dist/entities/eventTriggerEntity.js +3 -3
- package/dist/extractor/collateralExtractor.d.ts +17 -72
- package/dist/extractor/collateralExtractor.d.ts.map +1 -1
- package/dist/extractor/collateralExtractor.js +48 -212
- package/dist/extractor/commitmentExtractor.d.ts +3 -3
- package/dist/extractor/commitmentExtractor.d.ts.map +1 -1
- package/dist/extractor/commitmentExtractor.js +3 -3
- package/dist/extractor/eventTriggerExtractor.d.ts +3 -3
- package/dist/extractor/eventTriggerExtractor.d.ts.map +1 -1
- package/dist/extractor/eventTriggerExtractor.js +9 -9
- package/dist/extractor/permitExtractor.d.ts +3 -3
- package/dist/extractor/permitExtractor.d.ts.map +1 -1
- package/dist/extractor/permitExtractor.js +3 -3
- package/dist/interfaces/extractedCollateral.d.ts +3 -7
- package/dist/interfaces/extractedCollateral.d.ts.map +1 -1
- package/dist/interfaces/extractedCollateral.js +1 -1
- 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.map +1 -1
- package/dist/migrations/index.js +9 -1
- 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/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/package.json +8 -7
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { blake2b } from 'blakejs';
|
|
2
2
|
import * as wasm from 'ergo-lib-wasm-nodejs';
|
|
3
|
-
import {
|
|
3
|
+
import { AbstractErgoBoxExtractor, CallbackType, } from '@rosen-bridge/abstract-extractor';
|
|
4
4
|
import EventTriggerAction from '../actions/eventTriggerAction';
|
|
5
5
|
import { EventResult } from '../types';
|
|
6
6
|
import { JsonBI } from '../utils';
|
|
7
|
-
class EventTriggerExtractor extends
|
|
7
|
+
class EventTriggerExtractor extends AbstractErgoBoxExtractor {
|
|
8
8
|
id;
|
|
9
9
|
actions;
|
|
10
10
|
eventTriggerErgoTree;
|
|
@@ -12,7 +12,7 @@ class EventTriggerExtractor extends AbstractInitializableErgoExtractor {
|
|
|
12
12
|
fraudErgoTree;
|
|
13
13
|
RWT;
|
|
14
14
|
constructor(id, dataSource, type, url, address, RWT, permitAddress, fraudAddress, logger, initialize = true) {
|
|
15
|
-
super(type, url, address,
|
|
15
|
+
super({ type, url, address, active: initialize }, logger);
|
|
16
16
|
this.id = id;
|
|
17
17
|
this.eventTriggerErgoTree = wasm.Address.from_base58(address)
|
|
18
18
|
.to_ergo_tree()
|
|
@@ -24,7 +24,7 @@ class EventTriggerExtractor extends AbstractInitializableErgoExtractor {
|
|
|
24
24
|
.to_ergo_tree()
|
|
25
25
|
.to_base16_bytes();
|
|
26
26
|
this.RWT = RWT;
|
|
27
|
-
this.actions = new EventTriggerAction(dataSource, this.logger);
|
|
27
|
+
this.actions = new EventTriggerAction(dataSource, this.logger.child('EventTriggerAction'));
|
|
28
28
|
}
|
|
29
29
|
/**
|
|
30
30
|
* get Id for current extractor
|
|
@@ -40,7 +40,7 @@ class EventTriggerExtractor extends AbstractInitializableErgoExtractor {
|
|
|
40
40
|
* @param box
|
|
41
41
|
* @return true if the box has the required data and false otherwise
|
|
42
42
|
*/
|
|
43
|
-
|
|
43
|
+
hasBoxData = (box) => {
|
|
44
44
|
try {
|
|
45
45
|
if (box.additionalRegisters &&
|
|
46
46
|
box.additionalRegisters.R4 &&
|
|
@@ -89,7 +89,7 @@ class EventTriggerExtractor extends AbstractInitializableErgoExtractor {
|
|
|
89
89
|
return {
|
|
90
90
|
eventId: eventId,
|
|
91
91
|
txId: box.transactionId,
|
|
92
|
-
|
|
92
|
+
identifier: box.boxId,
|
|
93
93
|
serialized: Buffer.from(parsedBox.sigma_serialize_bytes()).toString('base64'),
|
|
94
94
|
toChain: Buffer.from(R5Serialized[2]).toString(),
|
|
95
95
|
toAddress: Buffer.from(R5Serialized[4]).toString(),
|
|
@@ -127,7 +127,7 @@ class EventTriggerExtractor extends AbstractInitializableErgoExtractor {
|
|
|
127
127
|
const { result, paymentTxId } = this.extractEventResult(transaction);
|
|
128
128
|
for (const output of transaction.outputs) {
|
|
129
129
|
// extract output box data
|
|
130
|
-
if (this.
|
|
130
|
+
if (this.hasBoxData(output)) {
|
|
131
131
|
this.logger.debug(`Trying to extract data from box ${output.boxId} at height ${block.height}`);
|
|
132
132
|
const data = this.extractBoxData(output);
|
|
133
133
|
if (data) {
|
|
@@ -146,7 +146,7 @@ class EventTriggerExtractor extends AbstractInitializableErgoExtractor {
|
|
|
146
146
|
});
|
|
147
147
|
});
|
|
148
148
|
if (boxes.length > 0) {
|
|
149
|
-
if (!(await this.actions.
|
|
149
|
+
if (!(await this.actions.storeEntities(boxes, block, this.getId()))) {
|
|
150
150
|
this.logger.warn(`Data insertion failed at height ${block.height} for extractor ${this.id}`);
|
|
151
151
|
return false;
|
|
152
152
|
}
|
|
@@ -212,4 +212,4 @@ class EventTriggerExtractor extends AbstractInitializableErgoExtractor {
|
|
|
212
212
|
};
|
|
213
213
|
}
|
|
214
214
|
export default EventTriggerExtractor;
|
|
215
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRUcmlnZ2VyRXh0cmFjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGliL2V4dHJhY3Rvci9ldmVudFRyaWdnZXJFeHRyYWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNsQyxPQUFPLEtBQUssSUFBSSxNQUFNLHNCQUFzQixDQUFDO0FBRTdDLE9BQU8sRUFDTCxrQ0FBa0MsRUFDbEMsWUFBWSxHQUViLE1BQU0sa0NBQWtDLENBQUM7QUFVMUMsT0FBTyxrQkFBa0IsTUFBTSwrQkFBK0IsQ0FBQztBQUcvRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFbEMsTUFBTSxxQkFBc0IsU0FBUSxrQ0FHbkM7SUFDQyxFQUFFLENBQVM7SUFDUSxPQUFPLENBQXFCO0lBQzlCLG9CQUFvQixDQUFTO0lBQzdCLGNBQWMsQ0FBUztJQUN2QixhQUFhLENBQVM7SUFDdEIsR0FBRyxDQUFTO0lBRTdCLFlBQ0UsRUFBVSxFQUNWLFVBQXNCLEVBQ3RCLElBQXFCLEVBQ3JCLEdBQVcsRUFDWCxPQUFlLEVBQ2YsR0FBVyxFQUNYLGFBQXFCLEVBQ3JCLFlBQW9CLEVBQ3BCLE1BQXVCLEVBQ3ZCLFVBQVUsR0FBRyxJQUFJO1FBRWpCLEtBQUssQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUM7UUFDYixJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDO2FBQzFELFlBQVksRUFBRTthQUNkLGVBQWUsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLE9BQU8s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QUFZLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7d0JBQ25ELENBQUM7d0JBQ0QsV0FBVyxHQUFHLElBQUksQ0FBQzt3QkFDbkIsSUFBSSxJQUFJLEtBQUssRUFBRSxFQUFFLENBQUM7NEJBQ2hCLFdBQVcsR0FBRyxXQUFXLENBQUMsRUFBRSxDQUFDOzRCQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDZixrQ0FBa0MsV0FBVyxDQUFDLEVBQUUsOENBQThDLENBQy9GLENBQUM7d0JBQ0osQ0FBQzt3QkFDRCwwREFBMEQ7d0JBQzFELE1BQU07b0JBQ1IsQ0FBQztnQkFDSCxDQUFDO2dCQUFDLE1BQU0sQ0FBQztvQkFDUCxTQUFTO2dCQUNYLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU87WUFDTCxNQUFNO1lBQ04sV0FBVztTQUNaLENBQUM7SUFDSixDQUFDLENBQUM7Q0FDSDtBQUVELGVBQWUscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBibGFrZTJiIH0gZnJvbSAnYmxha2Vqcyc7XG5pbXBvcnQgKiBhcyB3YXNtIGZyb20gJ2VyZ28tbGliLXdhc20tbm9kZWpzJztcblxuaW1wb3J0IHtcbiAgQWJzdHJhY3RJbml0aWFsaXphYmxlRXJnb0V4dHJhY3RvcixcbiAgQ2FsbGJhY2tUeXBlLFxuICBTcGVuZEluZm8sXG59IGZyb20gJ0Byb3Nlbi1icmlkZ2UvYWJzdHJhY3QtZXh0cmFjdG9yJztcbmltcG9ydCB7IEFic3RyYWN0TG9nZ2VyIH0gZnJvbSAnQHJvc2VuLWJyaWRnZS9hYnN0cmFjdC1sb2dnZXInO1xuaW1wb3J0IHsgRGF0YVNvdXJjZSB9IGZyb20gJ0Byb3Nlbi1icmlkZ2UvZXh0ZW5kZWQtdHlwZW9ybSc7XG5pbXBvcnQge1xuICBCbG9ja0luZm8sXG4gIEVyZ29OZXR3b3JrVHlwZSxcbiAgT3V0cHV0Qm94LFxuICBUcmFuc2FjdGlvbixcbn0gZnJvbSAnQHJvc2VuLWJyaWRnZS9zY2FubmVyLWludGVyZmFjZXMnO1xuXG5pbXBvcnQgRXZlbnRUcmlnZ2VyQWN0aW9uIGZyb20gJy4uL2FjdGlvbnMvZXZlbnRUcmlnZ2VyQWN0aW9uJztcbmltcG9ydCBFdmVudFRyaWdnZXJFbnRpdHkgZnJvbSAnLi4vZW50aXRpZXMvZXZlbnRUcmlnZ2VyRW50aXR5JztcbmltcG9ydCB7IEV4dHJhY3RlZEV2ZW50VHJpZ2dlciB9IGZyb20gJy4uL2ludGVyZmFjZXMvZXh0cmFjdGVkRXZlbnRUcmlnZ2VyJztcbmltcG9ydCB7IEV2ZW50UmVzdWx0IH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgSnNvbkJJIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5jbGFzcyBFdmVudFRyaWdnZXJFeHRyYWN0b3IgZXh0ZW5kcyBBYnN0cmFjdEluaXRpYWxpemFibGVFcmdvRXh0cmFjdG9yPFxuICBFeHRyYWN0ZWRFdmVudFRyaWdnZXIsXG4gIEV2ZW50VHJpZ2dlckVudGl0eVxuPiB7XG4gIGlkOiBzdHJpbmc7XG4gIHByb3RlY3RlZCByZWFkb25seSBhY3Rpb25zOiBFdmVudFRyaWdnZXJBY3Rpb247XG4gIHByaXZhdGUgcmVhZG9ubHkgZXZlbnRUcmlnZ2VyRXJnb1RyZWU6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBwZXJtaXRFcmdvVHJlZTogc3RyaW5nO1xuICBwcml2YXRlIHJlYWRvbmx5IGZyYXVkRXJnb1RyZWU6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBSV1Q6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBpZDogc3RyaW5nLFxuICAgIGRhdGFTb3VyY2U6IERhdGFTb3VyY2UsXG4gICAgdHlwZTogRXJnb05ldHdvcmtUeXBlLFxuICAgIHVybDogc3RyaW5nLFxuICAgIGFkZHJlc3M6IHN0cmluZyxcbiAgICBSV1Q6IHN0cmluZyxcbiAgICBwZXJtaXRBZGRyZXNzOiBzdHJpbmcsXG4gICAgZnJhdWRBZGRyZXNzOiBzdHJpbmcsXG4gICAgbG9nZ2VyPzogQWJzdHJhY3RMb2dnZXIsXG4gICAgaW5pdGlhbGl6ZSA9IHRydWUsXG4gICkge1xuICAgIHN1cGVyKHR5cGUsIHVybCwgYWRkcmVzcywgbG9nZ2VyLCBpbml0aWFsaXplKTtcbiAgICB0aGlzLmlkID0gaWQ7XG4gICAgdGhpcy5ldmVudFRyaWdnZXJFcmdvVHJlZSA9IHdhc20uQWRkcmVzcy5mcm9tX2Jhc2U1OChhZGRyZXNzKVxuICAgICAgLnRvX2VyZ29fdHJlZSgpXG4gICAgICAudG9fYmFzZTE2X2J5dGVzKCk7XG4gICAgdGhpcy5wZXJtaXRFcmdvVHJlZSA9IHdhc20uQWRkcmVzcy5mcm9tX2Jhc2U1OChwZXJtaXRBZGRyZXNzKVxuICAgICAgLnRvX2VyZ29fdHJlZSgpXG4gICAgICAudG9fYmFzZTE2X2J5dGVzKCk7XG4gICAgdGhpcy5mcmF1ZEVyZ29UcmVlID0gd2FzbS5BZGRyZXNzLmZyb21fYmFzZTU4KGZyYXVkQWRkcmVzcylcbiAgICAgIC50b19lcmdvX3RyZWUoKVxuICAgICAgLnRvX2Jhc2UxNl9ieXRlcygpO1xuICAgIHRoaXMuUldUID0gUldUO1xuICAgIHRoaXMuYWN0aW9ucyA9IG5ldyBFdmVudFRyaWdnZXJBY3Rpb24oZGF0YVNvdXJjZSwgdGhpcy5sb2dnZXIpO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCBJZCBmb3IgY3VycmVudCBleHRyYWN0b3JcbiAgICovXG4gIGdldElkID0gKCkgPT4gdGhpcy5pZDtcblxuICAvKipcbiAgICogY2hlY2sgcHJvcGVyIGRhdGEgZm9ybWF0IGluIHRoZSBib3hcbiAgICogIC0gYm94IGVyZ29UcmVlXG4gICAqICAtIFJXVCBpbiBmaXJzdCB0b2tlbiBwbGFjZVxuICAgKiAgLSB3aWRMaXN0SGFzaCBpbiBSNFxuICAgKiAgLSBldmVudCBkYXRhIGluIFI1XG4gICAqICAtIHdpZENvdW50IGluIFI3XG4gICAqIEBwYXJhbSBib3hcbiAgICogQHJldHVybiB0cnVlIGlmIHRoZSBib3ggaGFzIHRoZSByZXF1aXJlZCBkYXRhIGFuZCBmYWxzZSBvdGhlcndpc2VcbiAgICovXG4gIGhhc0RhdGEgPSAoYm94OiBPdXRwdXRCb3gpOiBib29sZWFuID0+IHtcbiAgICB0cnkge1xuICAgICAgaWYgKFxuICAgICAgICBib3guYWRkaXRpb25hbFJlZ2lzdGVycyAmJlxuICAgICAgICBib3guYWRkaXRpb25hbFJlZ2lzdGVycy5SNCAmJlxuICAgICAgICBib3guYWRkaXRpb25hbFJlZ2lzdGVycy5SNSAmJlxuICAgICAgICBib3guYWRkaXRpb25hbFJlZ2lzdGVycy5SNyAmJlxuICAgICAgICBib3guYXNzZXRzICYmXG4gICAgICAgIGJveC5hc3NldHMubGVuZ3RoID4gMCAmJlxuICAgICAgICBib3guYXNzZXRzWzBdLnRva2VuSWQgPT09IHRoaXMuUldUICYmXG4gICAgICAgIGJveC5lcmdvVHJlZSA9PT0gdGhpcy5ldmVudFRyaWdnZXJFcmdvVHJlZVxuICAgICAgKSB7XG4gICAgICAgIGNvbnN0IHBhcnNlZEJveCA9IHdhc20uRXJnb0JveC5mcm9tX2pzb24oSnNvbkJJLnN0cmluZ2lmeShib3gpKTtcbiAgICAgICAgY29uc3QgUjRTZXJpYWxpemVkID0gcGFyc2VkQm94XG4gICAgICAgICAgLnJlZ2lzdGVyX3ZhbHVlKHdhc20uTm9uTWFuZGF0b3J5UmVnaXN0ZXJJZC5SNCkhXG4gICAgICAgICAgLnRvX2J5dGVfYXJyYXkoKTtcbiAgICAgICAgY29uc3QgUjVTZXJpYWxpemVkID0gcGFyc2VkQm94XG4gICAgICAgICAgLnJlZ2lzdGVyX3ZhbHVlKHdhc20uTm9uTWFuZGF0b3J5UmVnaXN0ZXJJZC5SNSkhXG4gICAgICAgICAgLnRvX2NvbGxfY29sbF9ieXRlKCk7XG4gICAgICAgIGlmIChSNFNlcmlhbGl6ZWQubGVuZ3RoID49IDEgJiYgUjVTZXJpYWxpemVkLmxlbmd0aCA+PSAxMikgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhpcy5sb2dnZXIud2FybihcbiAgICAgICAgYFVuZXhwZWN0ZWQgZXJyb3Igb2NjdXJyZWQgd2hpbGUgY2hlY2tpbmcgdGhlIHByb3BlciB0cmlnZ2VyIGRhdGEgZm9ybWF0IGZvciBib3ggJHtib3guYm94SWR9OiAke2V9YCxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfTtcblxuICAvKipcbiAgICogZXh0cmFjdCBib3ggZGF0YSB0byBwcm9wZXIgZm9ybWF0IChub3QgaW5jbHVkaW5nIHNwZW5kaW5nIGluZm9ybWF0aW9uKVxuICAgKiBAcGFyYW0gYm94XG4gICAqIEByZXR1cm4gZXh0cmFjdGVkIGRhdGEgaW4gcHJvcGVyIGZvcm1hdFxuICAgKi9cbiAgZXh0cmFjdEJveERhdGEgPSAoXG4gICAgYm94OiBPdXRwdXRCb3gsXG4gICk6IE9taXQ8RXh0cmFjdGVkRXZlbnRUcmlnZ2VyLCAnc3BlbmRCbG9jaycgfCAnc3BlbmRIZWlnaHQnPiB8IHVuZGVmaW5lZCA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHBhcnNlZEJveCA9IHdhc20uRXJnb0JveC5mcm9tX2pzb24oSnNvbkJJLnN0cmluZ2lmeShib3gpKTtcbiAgICAgIGNvbnN0IFI0U2VyaWFsaXplZCA9IHBhcnNlZEJveFxuICAgICAgICAucmVnaXN0ZXJfdmFsdWUod2FzbS5Ob25NYW5kYXRvcnlSZWdpc3RlcklkLlI0KSFcbiAgICAgICAgLnRvX2J5dGVfYXJyYXkoKTtcbiAgICAgIGNvbnN0IFI1U2VyaWFsaXplZCA9IHBhcnNlZEJveFxuICAgICAgICAucmVnaXN0ZXJfdmFsdWUod2FzbS5Ob25NYW5kYXRvcnlSZWdpc3RlcklkLlI1KSFcbiAgICAgICAgLnRvX2NvbGxfY29sbF9ieXRlKCk7XG5cbiAgICAgIGNvbnN0IFdJRHNDb3VudCA9IHBhcnNlZEJveFxuICAgICAgICAucmVnaXN0ZXJfdmFsdWUod2FzbS5Ob25NYW5kYXRvcnlSZWdpc3RlcklkLlI3KSFcbiAgICAgICAgLnRvX2kzMigpO1xuICAgICAgY29uc3QgV0lEc0hhc2ggPSBCdWZmZXIuZnJvbShSNFNlcmlhbGl6ZWQpLnRvU3RyaW5nKCdoZXgnKTtcbiAgICAgIGNvbnN0IHNvdXJjZVR4SWQgPSBCdWZmZXIuZnJvbShSNVNlcmlhbGl6ZWRbMF0pLnRvU3RyaW5nKCk7XG4gICAgICBjb25zdCBldmVudElkID0gQnVmZmVyLmZyb20oYmxha2UyYihzb3VyY2VUeElkLCB1bmRlZmluZWQsIDMyKSkudG9TdHJpbmcoXG4gICAgICAgICdoZXgnLFxuICAgICAgKTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGV2ZW50SWQ6IGV2ZW50SWQsXG4gICAgICAgIHR4SWQ6IGJveC50cmFuc2FjdGlvbklkLFxuICAgICAgICBib3hJZDogYm94LmJveElkLFxuICAgICAgICBzZXJpYWxpemVkOiBCdWZmZXIuZnJvbShwYXJzZWRCb3guc2lnbWFfc2VyaWFsaXplX2J5dGVzKCkpLnRvU3RyaW5nKFxuICAgICAgICAgICdiYXNlNjQnLFxuICAgICAgICApLFxuICAgICAgICB0b0NoYWluOiBCdWZmZXIuZnJvbShSNVNlcmlhbGl6ZWRbMl0pLnRvU3RyaW5nKCksXG4gICAgICAgIHRvQWRkcmVzczogQnVmZmVyLmZyb20oUjVTZXJpYWxpemVkWzRdKS50b1N0cmluZygpLFxuICAgICAgICBuZXR3b3JrRmVlOiBCaWdJbnQoXG4gICAgICAgICAgJzB4JyArIEJ1ZmZlci5mcm9tKFI1U2VyaWFsaXplZFs3XSkudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgICApLnRvU3RyaW5nKDEwKSxcbiAgICAgICAgYnJpZGdlRmVlOiBCaWdJbnQoXG4gICAgICAgICAgJzB4JyArIEJ1ZmZlci5mcm9tKFI1U2VyaWFsaXplZFs2XSkudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgICApLnRvU3RyaW5nKDEwKSxcbiAgICAgICAgYW1vdW50OiBCaWdJbnQoXG4gICAgICAgICAgJzB4JyArIEJ1ZmZlci5mcm9tKFI1U2VyaWFsaXplZFs1XSkudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgICApLnRvU3RyaW5nKDEwKSxcbiAgICAgICAgc291cmNlQ2hhaW5Ub2tlbklkOiBCdWZmZXIuZnJvbShSNVNlcmlhbGl6ZWRbOF0pLnRvU3RyaW5nKCksXG4gICAgICAgIHRhcmdldENoYWluVG9rZW5JZDogQnVmZmVyLmZyb20oUjVTZXJpYWxpemVkWzldKS50b1N0cmluZygpLFxuICAgICAgICBzb3VyY2VUeElkOiBzb3VyY2VUeElkLFxuICAgICAgICBmcm9tQ2hhaW46IEJ1ZmZlci5mcm9tKFI1U2VyaWFsaXplZFsxXSkudG9TdHJpbmcoKSxcbiAgICAgICAgZnJvbUFkZHJlc3M6IEJ1ZmZlci5mcm9tKFI1U2VyaWFsaXplZFszXSkudG9TdHJpbmcoKSxcbiAgICAgICAgc291cmNlQmxvY2tJZDogQnVmZmVyLmZyb20oUjVTZXJpYWxpemVkWzEwXSkudG9TdHJpbmcoKSxcbiAgICAgICAgV0lEc0NvdW50OiBXSURzQ291bnQsXG4gICAgICAgIFdJRHNIYXNoOiBXSURzSGFzaCxcbiAgICAgICAgc291cmNlQ2hhaW5IZWlnaHQ6IE51bWJlcihcbiAgICAgICAgICBCaWdJbnQoJzB4JyArIEJ1ZmZlci5mcm9tKFI1U2VyaWFsaXplZFsxMV0pLnRvU3RyaW5nKCdoZXgnKSkudG9TdHJpbmcoXG4gICAgICAgICAgICAxMCxcbiAgICAgICAgICApLFxuICAgICAgICApLFxuICAgICAgfTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aGlzLmxvZ2dlci53YXJuKFxuICAgICAgICBgVW5leHBlY3RlZCBlcnJvciBvY2N1cnJlZCB3aGlsZSBleHRyYWN0aW5nIHRyaWdnZXIgZGF0YSBmb3IgYm94ICR7Ym94LmJveElkfTogJHtlfWAsXG4gICAgICApO1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gIH07XG5cbiAgLyoqXG4gICAqIGdldHMgYmxvY2sgaWQgYW5kIHRyYW5zYWN0aW9ucyBjb3JyZXNwb25kaW5nIHRvIHRoZSBibG9jayBhbmQgc2F2ZXMgaWYgdGhleSBhcmUgdmFsaWQgcm9zZW5cbiAgICogIHRyYW5zYWN0aW9ucyBhbmQgaW4gY2FzZSBvZiBzdWNjZXNzIHJldHVybiB0cnVlIGFuZCBpbiBjYXNlIG9mIGZhaWx1cmUgcmV0dXJucyBmYWxzZVxuICAgKiBAcGFyYW0gYmxvY2tcbiAgICogQHBhcmFtIHR4c1xuICAgKi9cbiAgcHJvY2Vzc1RyYW5zYWN0aW9ucyA9IGFzeW5jIChcbiAgICB0eHM6IEFycmF5PFRyYW5zYWN0aW9uPixcbiAgICBibG9jazogQmxvY2tJbmZvLFxuICApOiBQcm9taXNlPGJvb2xlYW4+ID0+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgYm94ZXM6IEFycmF5PEV4dHJhY3RlZEV2ZW50VHJpZ2dlcj4gPSBbXTtcbiAgICAgIGNvbnN0IHNwZW5kSW5mb0FycmF5OiBBcnJheTxTcGVuZEluZm8+ID0gW107XG4gICAgICB0eHMuZm9yRWFjaCgodHJhbnNhY3Rpb24pID0+IHtcbiAgICAgICAgLy8gZXh0cmFjdCBldmVudCByZXN1bHRcbiAgICAgICAgY29uc3QgeyByZXN1bHQsIHBheW1lbnRUeElkIH0gPSB0aGlzLmV4dHJhY3RFdmVudFJlc3VsdCh0cmFuc2FjdGlvbik7XG4gICAgICAgIGZvciAoY29uc3Qgb3V0cHV0IG9mIHRyYW5zYWN0aW9uLm91dHB1dHMpIHtcbiAgICAgICAgICAvLyBleHRyYWN0IG91dHB1dCBib3ggZGF0YVxuICAgICAgICAgIGlmICh0aGlzLmhhc0RhdGEob3V0cHV0KSkge1xuICAgICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgICAgICAgIGBUcnlpbmcgdG8gZXh0cmFjdCBkYXRhIGZyb20gYm94ICR7b3V0cHV0LmJveElkfSBhdCBoZWlnaHQgJHtibG9jay5oZWlnaHR9YCxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBjb25zdCBkYXRhID0gdGhpcy5leHRyYWN0Qm94RGF0YShvdXRwdXQpO1xuICAgICAgICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgICAgICAgICAgYEV4dHJhY3RlZCBkYXRhICR7SnNvbkJJLnN0cmluZ2lmeShkYXRhKX0gZnJvbSBib3ggJHtcbiAgICAgICAgICAgICAgICAgIG91dHB1dC5ib3hJZFxuICAgICAgICAgICAgICAgIH1gLFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICBib3hlcy5wdXNoKGRhdGEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBwcm9jZXNzIGlucHV0c1xuICAgICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgdHJhbnNhY3Rpb24uaW5wdXRzLmxlbmd0aDsgaW5kZXgrKylcbiAgICAgICAgICBzcGVuZEluZm9BcnJheS5wdXNoKHtcbiAgICAgICAgICAgIHR4SWQ6IHRyYW5zYWN0aW9uLmlkLFxuICAgICAgICAgICAgYm94SWQ6IHRyYW5zYWN0aW9uLmlucHV0c1tpbmRleF0uYm94SWQsXG4gICAgICAgICAgICBpbmRleDogaW5kZXgsXG4gICAgICAgICAgICBleHRyYXM6IHsgcmVzdWx0LCBwYXltZW50VHhJZCB9LFxuICAgICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgICBpZiAoYm94ZXMubGVuZ3RoID4gMCkge1xuICAgICAgICBpZiAoIShhd2FpdCB0aGlzLmFjdGlvbnMuc3RvcmVCb3hlcyhib3hlcywgYmxvY2ssIHRoaXMuZ2V0SWQoKSkpKSB7XG4gICAgICAgICAgdGhpcy5sb2dnZXIud2FybihcbiAgICAgICAgICAgIGBEYXRhIGluc2VydGlvbiBmYWlsZWQgYXQgaGVpZ2h0ICR7YmxvY2suaGVpZ2h0fSBmb3IgZXh0cmFjdG9yICR7dGhpcy5pZH1gLFxuICAgICAgICAgICk7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudHJpZ2dlckNhbGxiYWNrcyhDYWxsYmFja1R5cGUuSW5zZXJ0LCBib3hlcyk7XG4gICAgICB9XG4gICAgICBjb25zdCBzcGVudERhdGEgPSBhd2FpdCB0aGlzLmFjdGlvbnMuc3BlbmRCb3hlcyhcbiAgICAgICAgc3BlbmRJbmZvQXJyYXksXG4gICAgICAgIGJsb2NrLFxuICAgICAgICB0aGlzLmlkLFxuICAgICAgKTtcbiAgICAgIHRoaXMudHJpZ2dlckNhbGxiYWNrcyhDYWxsYmFja1R5cGUuU3BlbmQsIHNwZW50RGF0YSk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoXG4gICAgICAgIGBFcnJvciBpbiBzdG9yaW5nIGRhdGEgaW4gJHt0aGlzLmdldElkKCl9IG9mIHRoZSBibG9jayAke1xuICAgICAgICAgIGJsb2NrLmhlaWdodFxuICAgICAgICB9OiAke2V9YCxcbiAgICAgICk7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9O1xuXG4gIC8qKlxuICAgKiBleHRyYWN0cyByZXN1bHQgYW5kIHBheW1lbnRUeElkIGZyb20gYSB0cmFuc2FjdGlvblxuICAgKiByZXR1cm5zICd1bmtub3duJyBhcyByZXN1bHQgd2hlbiB0eCBpcyBuZWl0aGVyIGZyYXVkIG9yIHN1Y2Nlc3NmdWxcbiAgICogQHBhcmFtIHRyYW5zYWN0aW9uXG4gICAqIEByZXR1cm5zXG4gICAqL1xuICBwcm90ZWN0ZWQgZXh0cmFjdEV2ZW50UmVzdWx0ID0gKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbikgPT4ge1xuICAgIGxldCByZXN1bHQgPSBFdmVudFJlc3VsdC51bmtub3duO1xuICAgIGxldCBwYXltZW50VHhJZCA9ICcnO1xuICAgIGlmICh0cmFuc2FjdGlvbi5vdXRwdXRzWzBdLmVyZ29UcmVlID09PSB0aGlzLmZyYXVkRXJnb1RyZWUpXG4gICAgICByZXN1bHQgPSBFdmVudFJlc3VsdC5mcmF1ZDtcbiAgICBlbHNlIGlmICh0cmFuc2FjdGlvbi5vdXRwdXRzWzBdLmVyZ29UcmVlID09PSB0aGlzLnBlcm1pdEVyZ29UcmVlKSB7XG4gICAgICByZXN1bHQgPSBFdmVudFJlc3VsdC5zdWNjZXNzZnVsO1xuICAgICAgLy8gZmluZCBmaXJzdCBub24td2F0Y2hlciBib3ggd2l0aCBSNCB2YWx1ZVxuICAgICAgZm9yIChjb25zdCBib3ggb2YgdHJhbnNhY3Rpb24ub3V0cHV0cykge1xuICAgICAgICAvLyBpZiBpdCdzIHdhdGNoZXIgYm94LCBza2lwIGl0XG4gICAgICAgIGlmIChib3guZXJnb1RyZWUgPT09IHRoaXMucGVybWl0RXJnb1RyZWUpIGNvbnRpbnVlO1xuICAgICAgICBjb25zdCBvdXRwdXRQYXJzZWQgPSB3YXNtLkVyZ29Cb3guZnJvbV9qc29uKEpzb25CSS5zdHJpbmdpZnkoYm94KSk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgY29uc3QgUjRTZXJpYWxpemVkID0gb3V0cHV0UGFyc2VkXG4gICAgICAgICAgICAucmVnaXN0ZXJfdmFsdWUod2FzbS5Ob25NYW5kYXRvcnlSZWdpc3RlcklkLlI0KVxuICAgICAgICAgICAgPy50b19ieXRlX2FycmF5KCk7XG4gICAgICAgICAgaWYgKFI0U2VyaWFsaXplZCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBsZXQgdHhJZCA9IEJ1ZmZlci5mcm9tKFI0U2VyaWFsaXplZCkudG9TdHJpbmcoKTtcbiAgICAgICAgICAgIC8vIHdlIGFzc3VtZWQgdHhJZCBvbmx5IGluY2x1ZGVzIHRoZXNlIGNoYXJhY3RlcnNcbiAgICAgICAgICAgIGlmICghdHhJZC5tYXRjaCgvXlswLTlhLXpBLVpcXC1fLl0rJC8pKSB7XG4gICAgICAgICAgICAgIC8vIGJhY2t3YXJkIGNvbXBhdGliaWxpdHlcbiAgICAgICAgICAgICAgdHhJZCA9IEJ1ZmZlci5mcm9tKFI0U2VyaWFsaXplZCkudG9TdHJpbmcoJ2hleCcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcGF5bWVudFR4SWQgPSB0eElkO1xuICAgICAgICAgICAgaWYgKHR4SWQgPT09ICcnKSB7XG4gICAgICAgICAgICAgIHBheW1lbnRUeElkID0gdHJhbnNhY3Rpb24uaWQ7XG4gICAgICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICAgICAgICAgIGBzdWNjZXNzZnVsIGV2ZW50IGlzIHNwZW50LiB0eCBbJHt0cmFuc2FjdGlvbi5pZH1dIGlzIGJvdGggcGF5bWVudCBhbmQgcmV3YXJkIGRpc3RyaWJ1dGlvbiB0eGAsXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBwYXltZW50VHhJZCBpcyBleHRyYWN0ZWQuIG5vIG5lZWQgdG8gcHJvY2VzcyBuZXh0IGJveGVzXG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICByZXN1bHQsXG4gICAgICBwYXltZW50VHhJZCxcbiAgICB9O1xuICB9O1xufVxuXG5leHBvcnQgZGVmYXVsdCBFdmVudFRyaWdnZXJFeHRyYWN0b3I7XG4iXX0=
|
|
215
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRUcmlnZ2VyRXh0cmFjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGliL2V4dHJhY3Rvci9ldmVudFRyaWdnZXJFeHRyYWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNsQyxPQUFPLEtBQUssSUFBSSxNQUFNLHNCQUFzQixDQUFDO0FBRTdDLE9BQU8sRUFDTCx3QkFBd0IsRUFDeEIsWUFBWSxHQUViLE1BQU0sa0NBQWtDLENBQUM7QUFVMUMsT0FBTyxrQkFBa0IsTUFBTSwrQkFBK0IsQ0FBQztBQUcvRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFbEMsTUFBTSxxQkFBc0IsU0FBUSx3QkFHbkM7SUFDQyxFQUFFLENBQVM7SUFDUSxPQUFPLENBQXFCO0lBQzlCLG9CQUFvQixDQUFTO0lBQzdCLGNBQWMsQ0FBUztJQUN2QixhQUFhLENBQVM7SUFDdEIsR0FBRyxDQUFTO0lBRTdCLFlBQ0UsRUFBVSxFQUNWLFVBQXNCLEVBQ3RCLElBQXFCLEVBQ3JCLEdBQVcsRUFDWCxPQUFlLEVBQ2YsR0FBVyxFQUNYLGFBQXFCLEVBQ3JCLFlBQW9CLEVBQ3BCLE1BQXVCLEVBQ3ZCLFVBQVUsR0FBRyxJQUFJO1FBRWpCLEtBQUssQ0FBQyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUMxRCxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUNiLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUM7YUFDMUQsWUFBWSxFQUFFO2FBQ2QsZUFBZSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLGNBQWMs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dEMseUJBQXlCOzRCQUN6QixJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7d0JBQ25ELENBQUM7d0JBQ0QsV0FBVyxHQUFHLElBQUksQ0FBQzt3QkFDbkIsSUFBSSxJQUFJLEtBQUssRUFBRSxFQUFFLENBQUM7NEJBQ2hCLFdBQVcsR0FBRyxXQUFXLENBQUMsRUFBRSxDQUFDOzRCQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDZixrQ0FBa0MsV0FBVyxDQUFDLEVBQUUsOENBQThDLENBQy9GLENBQUM7d0JBQ0osQ0FBQzt3QkFDRCwwREFBMEQ7d0JBQzFELE1BQU07b0JBQ1IsQ0FBQztnQkFDSCxDQUFDO2dCQUFDLE1BQU0sQ0FBQztvQkFDUCxTQUFTO2dCQUNYLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU87WUFDTCxNQUFNO1lBQ04sV0FBVztTQUNaLENBQUM7SUFDSixDQUFDLENBQUM7Q0FDSDtBQUVELGVBQWUscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBibGFrZTJiIH0gZnJvbSAnYmxha2Vqcyc7XG5pbXBvcnQgKiBhcyB3YXNtIGZyb20gJ2VyZ28tbGliLXdhc20tbm9kZWpzJztcblxuaW1wb3J0IHtcbiAgQWJzdHJhY3RFcmdvQm94RXh0cmFjdG9yLFxuICBDYWxsYmFja1R5cGUsXG4gIFNwZW5kSW5mbyxcbn0gZnJvbSAnQHJvc2VuLWJyaWRnZS9hYnN0cmFjdC1leHRyYWN0b3InO1xuaW1wb3J0IHsgQWJzdHJhY3RMb2dnZXIgfSBmcm9tICdAcm9zZW4tYnJpZGdlL2Fic3RyYWN0LWxvZ2dlcic7XG5pbXBvcnQgeyBEYXRhU291cmNlIH0gZnJvbSAnQHJvc2VuLWJyaWRnZS9leHRlbmRlZC10eXBlb3JtJztcbmltcG9ydCB7XG4gIEJsb2NrSW5mbyxcbiAgRXJnb05ldHdvcmtUeXBlLFxuICBPdXRwdXRCb3gsXG4gIFRyYW5zYWN0aW9uLFxufSBmcm9tICdAcm9zZW4tYnJpZGdlL3NjYW5uZXItaW50ZXJmYWNlcyc7XG5cbmltcG9ydCBFdmVudFRyaWdnZXJBY3Rpb24gZnJvbSAnLi4vYWN0aW9ucy9ldmVudFRyaWdnZXJBY3Rpb24nO1xuaW1wb3J0IEV2ZW50VHJpZ2dlckVudGl0eSBmcm9tICcuLi9lbnRpdGllcy9ldmVudFRyaWdnZXJFbnRpdHknO1xuaW1wb3J0IHsgRXh0cmFjdGVkRXZlbnRUcmlnZ2VyIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9leHRyYWN0ZWRFdmVudFRyaWdnZXInO1xuaW1wb3J0IHsgRXZlbnRSZXN1bHQgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBKc29uQkkgfSBmcm9tICcuLi91dGlscyc7XG5cbmNsYXNzIEV2ZW50VHJpZ2dlckV4dHJhY3RvciBleHRlbmRzIEFic3RyYWN0RXJnb0JveEV4dHJhY3RvcjxcbiAgRXh0cmFjdGVkRXZlbnRUcmlnZ2VyLFxuICBFdmVudFRyaWdnZXJFbnRpdHlcbj4ge1xuICBpZDogc3RyaW5nO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYWN0aW9uczogRXZlbnRUcmlnZ2VyQWN0aW9uO1xuICBwcml2YXRlIHJlYWRvbmx5IGV2ZW50VHJpZ2dlckVyZ29UcmVlOiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgcGVybWl0RXJnb1RyZWU6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBmcmF1ZEVyZ29UcmVlOiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgUldUOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgaWQ6IHN0cmluZyxcbiAgICBkYXRhU291cmNlOiBEYXRhU291cmNlLFxuICAgIHR5cGU6IEVyZ29OZXR3b3JrVHlwZSxcbiAgICB1cmw6IHN0cmluZyxcbiAgICBhZGRyZXNzOiBzdHJpbmcsXG4gICAgUldUOiBzdHJpbmcsXG4gICAgcGVybWl0QWRkcmVzczogc3RyaW5nLFxuICAgIGZyYXVkQWRkcmVzczogc3RyaW5nLFxuICAgIGxvZ2dlcj86IEFic3RyYWN0TG9nZ2VyLFxuICAgIGluaXRpYWxpemUgPSB0cnVlLFxuICApIHtcbiAgICBzdXBlcih7IHR5cGUsIHVybCwgYWRkcmVzcywgYWN0aXZlOiBpbml0aWFsaXplIH0sIGxvZ2dlcik7XG4gICAgdGhpcy5pZCA9IGlkO1xuICAgIHRoaXMuZXZlbnRUcmlnZ2VyRXJnb1RyZWUgPSB3YXNtLkFkZHJlc3MuZnJvbV9iYXNlNTgoYWRkcmVzcylcbiAgICAgIC50b19lcmdvX3RyZWUoKVxuICAgICAgLnRvX2Jhc2UxNl9ieXRlcygpO1xuICAgIHRoaXMucGVybWl0RXJnb1RyZWUgPSB3YXNtLkFkZHJlc3MuZnJvbV9iYXNlNTgocGVybWl0QWRkcmVzcylcbiAgICAgIC50b19lcmdvX3RyZWUoKVxuICAgICAgLnRvX2Jhc2UxNl9ieXRlcygpO1xuICAgIHRoaXMuZnJhdWRFcmdvVHJlZSA9IHdhc20uQWRkcmVzcy5mcm9tX2Jhc2U1OChmcmF1ZEFkZHJlc3MpXG4gICAgICAudG9fZXJnb190cmVlKClcbiAgICAgIC50b19iYXNlMTZfYnl0ZXMoKTtcbiAgICB0aGlzLlJXVCA9IFJXVDtcbiAgICB0aGlzLmFjdGlvbnMgPSBuZXcgRXZlbnRUcmlnZ2VyQWN0aW9uKFxuICAgICAgZGF0YVNvdXJjZSxcbiAgICAgIHRoaXMubG9nZ2VyLmNoaWxkKCdFdmVudFRyaWdnZXJBY3Rpb24nKSxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCBJZCBmb3IgY3VycmVudCBleHRyYWN0b3JcbiAgICovXG4gIGdldElkID0gKCkgPT4gdGhpcy5pZDtcblxuICAvKipcbiAgICogY2hlY2sgcHJvcGVyIGRhdGEgZm9ybWF0IGluIHRoZSBib3hcbiAgICogIC0gYm94IGVyZ29UcmVlXG4gICAqICAtIFJXVCBpbiBmaXJzdCB0b2tlbiBwbGFjZVxuICAgKiAgLSB3aWRMaXN0SGFzaCBpbiBSNFxuICAgKiAgLSBldmVudCBkYXRhIGluIFI1XG4gICAqICAtIHdpZENvdW50IGluIFI3XG4gICAqIEBwYXJhbSBib3hcbiAgICogQHJldHVybiB0cnVlIGlmIHRoZSBib3ggaGFzIHRoZSByZXF1aXJlZCBkYXRhIGFuZCBmYWxzZSBvdGhlcndpc2VcbiAgICovXG4gIGhhc0JveERhdGEgPSAoYm94OiBPdXRwdXRCb3gpOiBib29sZWFuID0+IHtcbiAgICB0cnkge1xuICAgICAgaWYgKFxuICAgICAgICBib3guYWRkaXRpb25hbFJlZ2lzdGVycyAmJlxuICAgICAgICBib3guYWRkaXRpb25hbFJlZ2lzdGVycy5SNCAmJlxuICAgICAgICBib3guYWRkaXRpb25hbFJlZ2lzdGVycy5SNSAmJlxuICAgICAgICBib3guYWRkaXRpb25hbFJlZ2lzdGVycy5SNyAmJlxuICAgICAgICBib3guYXNzZXRzICYmXG4gICAgICAgIGJveC5hc3NldHMubGVuZ3RoID4gMCAmJlxuICAgICAgICBib3guYXNzZXRzWzBdLnRva2VuSWQgPT09IHRoaXMuUldUICYmXG4gICAgICAgIGJveC5lcmdvVHJlZSA9PT0gdGhpcy5ldmVudFRyaWdnZXJFcmdvVHJlZVxuICAgICAgKSB7XG4gICAgICAgIGNvbnN0IHBhcnNlZEJveCA9IHdhc20uRXJnb0JveC5mcm9tX2pzb24oSnNvbkJJLnN0cmluZ2lmeShib3gpKTtcbiAgICAgICAgY29uc3QgUjRTZXJpYWxpemVkID0gcGFyc2VkQm94XG4gICAgICAgICAgLnJlZ2lzdGVyX3ZhbHVlKHdhc20uTm9uTWFuZGF0b3J5UmVnaXN0ZXJJZC5SNCkhXG4gICAgICAgICAgLnRvX2J5dGVfYXJyYXkoKTtcbiAgICAgICAgY29uc3QgUjVTZXJpYWxpemVkID0gcGFyc2VkQm94XG4gICAgICAgICAgLnJlZ2lzdGVyX3ZhbHVlKHdhc20uTm9uTWFuZGF0b3J5UmVnaXN0ZXJJZC5SNSkhXG4gICAgICAgICAgLnRvX2NvbGxfY29sbF9ieXRlKCk7XG4gICAgICAgIGlmIChSNFNlcmlhbGl6ZWQubGVuZ3RoID49IDEgJiYgUjVTZXJpYWxpemVkLmxlbmd0aCA+PSAxMikgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhpcy5sb2dnZXIud2FybihcbiAgICAgICAgYFVuZXhwZWN0ZWQgZXJyb3Igb2NjdXJyZWQgd2hpbGUgY2hlY2tpbmcgdGhlIHByb3BlciB0cmlnZ2VyIGRhdGEgZm9ybWF0IGZvciBib3ggJHtib3guYm94SWR9OiAke2V9YCxcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfTtcblxuICAvKipcbiAgICogZXh0cmFjdCBib3ggZGF0YSB0byBwcm9wZXIgZm9ybWF0IChub3QgaW5jbHVkaW5nIHNwZW5kaW5nIGluZm9ybWF0aW9uKVxuICAgKiBAcGFyYW0gYm94XG4gICAqIEByZXR1cm4gZXh0cmFjdGVkIGRhdGEgaW4gcHJvcGVyIGZvcm1hdFxuICAgKi9cbiAgZXh0cmFjdEJveERhdGEgPSAoXG4gICAgYm94OiBPdXRwdXRCb3gsXG4gICk6IE9taXQ8RXh0cmFjdGVkRXZlbnRUcmlnZ2VyLCAnc3BlbmRCbG9jaycgfCAnc3BlbmRIZWlnaHQnPiB8IHVuZGVmaW5lZCA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHBhcnNlZEJveCA9IHdhc20uRXJnb0JveC5mcm9tX2pzb24oSnNvbkJJLnN0cmluZ2lmeShib3gpKTtcbiAgICAgIGNvbnN0IFI0U2VyaWFsaXplZCA9IHBhcnNlZEJveFxuICAgICAgICAucmVnaXN0ZXJfdmFsdWUod2FzbS5Ob25NYW5kYXRvcnlSZWdpc3RlcklkLlI0KSFcbiAgICAgICAgLnRvX2J5dGVfYXJyYXkoKTtcbiAgICAgIGNvbnN0IFI1U2VyaWFsaXplZCA9IHBhcnNlZEJveFxuICAgICAgICAucmVnaXN0ZXJfdmFsdWUod2FzbS5Ob25NYW5kYXRvcnlSZWdpc3RlcklkLlI1KSFcbiAgICAgICAgLnRvX2NvbGxfY29sbF9ieXRlKCk7XG5cbiAgICAgIGNvbnN0IFdJRHNDb3VudCA9IHBhcnNlZEJveFxuICAgICAgICAucmVnaXN0ZXJfdmFsdWUod2FzbS5Ob25NYW5kYXRvcnlSZWdpc3RlcklkLlI3KSFcbiAgICAgICAgLnRvX2kzMigpO1xuICAgICAgY29uc3QgV0lEc0hhc2ggPSBCdWZmZXIuZnJvbShSNFNlcmlhbGl6ZWQpLnRvU3RyaW5nKCdoZXgnKTtcbiAgICAgIGNvbnN0IHNvdXJjZVR4SWQgPSBCdWZmZXIuZnJvbShSNVNlcmlhbGl6ZWRbMF0pLnRvU3RyaW5nKCk7XG4gICAgICBjb25zdCBldmVudElkID0gQnVmZmVyLmZyb20oYmxha2UyYihzb3VyY2VUeElkLCB1bmRlZmluZWQsIDMyKSkudG9TdHJpbmcoXG4gICAgICAgICdoZXgnLFxuICAgICAgKTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGV2ZW50SWQ6IGV2ZW50SWQsXG4gICAgICAgIHR4SWQ6IGJveC50cmFuc2FjdGlvbklkLFxuICAgICAgICBpZGVudGlmaWVyOiBib3guYm94SWQsXG4gICAgICAgIHNlcmlhbGl6ZWQ6IEJ1ZmZlci5mcm9tKHBhcnNlZEJveC5zaWdtYV9zZXJpYWxpemVfYnl0ZXMoKSkudG9TdHJpbmcoXG4gICAgICAgICAgJ2Jhc2U2NCcsXG4gICAgICAgICksXG4gICAgICAgIHRvQ2hhaW46IEJ1ZmZlci5mcm9tKFI1U2VyaWFsaXplZFsyXSkudG9TdHJpbmcoKSxcbiAgICAgICAgdG9BZGRyZXNzOiBCdWZmZXIuZnJvbShSNVNlcmlhbGl6ZWRbNF0pLnRvU3RyaW5nKCksXG4gICAgICAgIG5ldHdvcmtGZWU6IEJpZ0ludChcbiAgICAgICAgICAnMHgnICsgQnVmZmVyLmZyb20oUjVTZXJpYWxpemVkWzddKS50b1N0cmluZygnaGV4JyksXG4gICAgICAgICkudG9TdHJpbmcoMTApLFxuICAgICAgICBicmlkZ2VGZWU6IEJpZ0ludChcbiAgICAgICAgICAnMHgnICsgQnVmZmVyLmZyb20oUjVTZXJpYWxpemVkWzZdKS50b1N0cmluZygnaGV4JyksXG4gICAgICAgICkudG9TdHJpbmcoMTApLFxuICAgICAgICBhbW91bnQ6IEJpZ0ludChcbiAgICAgICAgICAnMHgnICsgQnVmZmVyLmZyb20oUjVTZXJpYWxpemVkWzVdKS50b1N0cmluZygnaGV4JyksXG4gICAgICAgICkudG9TdHJpbmcoMTApLFxuICAgICAgICBzb3VyY2VDaGFpblRva2VuSWQ6IEJ1ZmZlci5mcm9tKFI1U2VyaWFsaXplZFs4XSkudG9TdHJpbmcoKSxcbiAgICAgICAgdGFyZ2V0Q2hhaW5Ub2tlbklkOiBCdWZmZXIuZnJvbShSNVNlcmlhbGl6ZWRbOV0pLnRvU3RyaW5nKCksXG4gICAgICAgIHNvdXJjZVR4SWQ6IHNvdXJjZVR4SWQsXG4gICAgICAgIGZyb21DaGFpbjogQnVmZmVyLmZyb20oUjVTZXJpYWxpemVkWzFdKS50b1N0cmluZygpLFxuICAgICAgICBmcm9tQWRkcmVzczogQnVmZmVyLmZyb20oUjVTZXJpYWxpemVkWzNdKS50b1N0cmluZygpLFxuICAgICAgICBzb3VyY2VCbG9ja0lkOiBCdWZmZXIuZnJvbShSNVNlcmlhbGl6ZWRbMTBdKS50b1N0cmluZygpLFxuICAgICAgICBXSURzQ291bnQ6IFdJRHNDb3VudCxcbiAgICAgICAgV0lEc0hhc2g6IFdJRHNIYXNoLFxuICAgICAgICBzb3VyY2VDaGFpbkhlaWdodDogTnVtYmVyKFxuICAgICAgICAgIEJpZ0ludCgnMHgnICsgQnVmZmVyLmZyb20oUjVTZXJpYWxpemVkWzExXSkudG9TdHJpbmcoJ2hleCcpKS50b1N0cmluZyhcbiAgICAgICAgICAgIDEwLFxuICAgICAgICAgICksXG4gICAgICAgICksXG4gICAgICB9O1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRoaXMubG9nZ2VyLndhcm4oXG4gICAgICAgIGBVbmV4cGVjdGVkIGVycm9yIG9jY3VycmVkIHdoaWxlIGV4dHJhY3RpbmcgdHJpZ2dlciBkYXRhIGZvciBib3ggJHtib3guYm94SWR9OiAke2V9YCxcbiAgICAgICk7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgfTtcblxuICAvKipcbiAgICogZ2V0cyBibG9jayBpZCBhbmQgdHJhbnNhY3Rpb25zIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGJsb2NrIGFuZCBzYXZlcyBpZiB0aGV5IGFyZSB2YWxpZCByb3NlblxuICAgKiAgdHJhbnNhY3Rpb25zIGFuZCBpbiBjYXNlIG9mIHN1Y2Nlc3MgcmV0dXJuIHRydWUgYW5kIGluIGNhc2Ugb2YgZmFpbHVyZSByZXR1cm5zIGZhbHNlXG4gICAqIEBwYXJhbSBibG9ja1xuICAgKiBAcGFyYW0gdHhzXG4gICAqL1xuICBwcm9jZXNzVHJhbnNhY3Rpb25zID0gYXN5bmMgKFxuICAgIHR4czogQXJyYXk8VHJhbnNhY3Rpb24+LFxuICAgIGJsb2NrOiBCbG9ja0luZm8sXG4gICk6IFByb21pc2U8Ym9vbGVhbj4gPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBib3hlczogQXJyYXk8RXh0cmFjdGVkRXZlbnRUcmlnZ2VyPiA9IFtdO1xuICAgICAgY29uc3Qgc3BlbmRJbmZvQXJyYXk6IEFycmF5PFNwZW5kSW5mbz4gPSBbXTtcbiAgICAgIHR4cy5mb3JFYWNoKCh0cmFuc2FjdGlvbikgPT4ge1xuICAgICAgICAvLyBleHRyYWN0IGV2ZW50IHJlc3VsdFxuICAgICAgICBjb25zdCB7IHJlc3VsdCwgcGF5bWVudFR4SWQgfSA9IHRoaXMuZXh0cmFjdEV2ZW50UmVzdWx0KHRyYW5zYWN0aW9uKTtcbiAgICAgICAgZm9yIChjb25zdCBvdXRwdXQgb2YgdHJhbnNhY3Rpb24ub3V0cHV0cykge1xuICAgICAgICAgIC8vIGV4dHJhY3Qgb3V0cHV0IGJveCBkYXRhXG4gICAgICAgICAgaWYgKHRoaXMuaGFzQm94RGF0YShvdXRwdXQpKSB7XG4gICAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgICAgICAgYFRyeWluZyB0byBleHRyYWN0IGRhdGEgZnJvbSBib3ggJHtvdXRwdXQuYm94SWR9IGF0IGhlaWdodCAke2Jsb2NrLmhlaWdodH1gLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLmV4dHJhY3RCb3hEYXRhKG91dHB1dCk7XG4gICAgICAgICAgICBpZiAoZGF0YSkge1xuICAgICAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgICAgICAgICBgRXh0cmFjdGVkIGRhdGEgJHtKc29uQkkuc3RyaW5naWZ5KGRhdGEpfSBmcm9tIGJveCAke1xuICAgICAgICAgICAgICAgICAgb3V0cHV0LmJveElkXG4gICAgICAgICAgICAgICAgfWAsXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIGJveGVzLnB1c2goZGF0YSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIHByb2Nlc3MgaW5wdXRzXG4gICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCB0cmFuc2FjdGlvbi5pbnB1dHMubGVuZ3RoOyBpbmRleCsrKVxuICAgICAgICAgIHNwZW5kSW5mb0FycmF5LnB1c2goe1xuICAgICAgICAgICAgdHhJZDogdHJhbnNhY3Rpb24uaWQsXG4gICAgICAgICAgICBib3hJZDogdHJhbnNhY3Rpb24uaW5wdXRzW2luZGV4XS5ib3hJZCxcbiAgICAgICAgICAgIGluZGV4OiBpbmRleCxcbiAgICAgICAgICAgIGV4dHJhczogeyByZXN1bHQsIHBheW1lbnRUeElkIH0sXG4gICAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICAgIGlmIChib3hlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgIGlmICghKGF3YWl0IHRoaXMuYWN0aW9ucy5zdG9yZUVudGl0aWVzKGJveGVzLCBibG9jaywgdGhpcy5nZXRJZCgpKSkpIHtcbiAgICAgICAgICB0aGlzLmxvZ2dlci53YXJuKFxuICAgICAgICAgICAgYERhdGEgaW5zZXJ0aW9uIGZhaWxlZCBhdCBoZWlnaHQgJHtibG9jay5oZWlnaHR9IGZvciBleHRyYWN0b3IgJHt0aGlzLmlkfWAsXG4gICAgICAgICAgKTtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy50cmlnZ2VyQ2FsbGJhY2tzKENhbGxiYWNrVHlwZS5JbnNlcnQsIGJveGVzKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHNwZW50RGF0YSA9IGF3YWl0IHRoaXMuYWN0aW9ucy5zcGVuZEJveGVzKFxuICAgICAgICBzcGVuZEluZm9BcnJheSxcbiAgICAgICAgYmxvY2ssXG4gICAgICAgIHRoaXMuaWQsXG4gICAgICApO1xuICAgICAgdGhpcy50cmlnZ2VyQ2FsbGJhY2tzKENhbGxiYWNrVHlwZS5TcGVuZCwgc3BlbnREYXRhKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aGlzLmxvZ2dlci5lcnJvcihcbiAgICAgICAgYEVycm9yIGluIHN0b3JpbmcgZGF0YSBpbiAke3RoaXMuZ2V0SWQoKX0gb2YgdGhlIGJsb2NrICR7XG4gICAgICAgICAgYmxvY2suaGVpZ2h0XG4gICAgICAgIH06ICR7ZX1gLFxuICAgICAgKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH07XG5cbiAgLyoqXG4gICAqIGV4dHJhY3RzIHJlc3VsdCBhbmQgcGF5bWVudFR4SWQgZnJvbSBhIHRyYW5zYWN0aW9uXG4gICAqIHJldHVybnMgJ3Vua25vd24nIGFzIHJlc3VsdCB3aGVuIHR4IGlzIG5laXRoZXIgZnJhdWQgb3Igc3VjY2Vzc2Z1bFxuICAgKiBAcGFyYW0gdHJhbnNhY3Rpb25cbiAgICogQHJldHVybnNcbiAgICovXG4gIHByb3RlY3RlZCBleHRyYWN0RXZlbnRSZXN1bHQgPSAodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKSA9PiB7XG4gICAgbGV0IHJlc3VsdCA9IEV2ZW50UmVzdWx0LnVua25vd247XG4gICAgbGV0IHBheW1lbnRUeElkID0gJyc7XG4gICAgaWYgKHRyYW5zYWN0aW9uLm91dHB1dHNbMF0uZXJnb1RyZWUgPT09IHRoaXMuZnJhdWRFcmdvVHJlZSlcbiAgICAgIHJlc3VsdCA9IEV2ZW50UmVzdWx0LmZyYXVkO1xuICAgIGVsc2UgaWYgKHRyYW5zYWN0aW9uLm91dHB1dHNbMF0uZXJnb1RyZWUgPT09IHRoaXMucGVybWl0RXJnb1RyZWUpIHtcbiAgICAgIHJlc3VsdCA9IEV2ZW50UmVzdWx0LnN1Y2Nlc3NmdWw7XG4gICAgICAvLyBmaW5kIGZpcnN0IG5vbi13YXRjaGVyIGJveCB3aXRoIFI0IHZhbHVlXG4gICAgICBmb3IgKGNvbnN0IGJveCBvZiB0cmFuc2FjdGlvbi5vdXRwdXRzKSB7XG4gICAgICAgIC8vIGlmIGl0J3Mgd2F0Y2hlciBib3gsIHNraXAgaXRcbiAgICAgICAgaWYgKGJveC5lcmdvVHJlZSA9PT0gdGhpcy5wZXJtaXRFcmdvVHJlZSkgY29udGludWU7XG4gICAgICAgIGNvbnN0IG91dHB1dFBhcnNlZCA9IHdhc20uRXJnb0JveC5mcm9tX2pzb24oSnNvbkJJLnN0cmluZ2lmeShib3gpKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjb25zdCBSNFNlcmlhbGl6ZWQgPSBvdXRwdXRQYXJzZWRcbiAgICAgICAgICAgIC5yZWdpc3Rlcl92YWx1ZSh3YXNtLk5vbk1hbmRhdG9yeVJlZ2lzdGVySWQuUjQpXG4gICAgICAgICAgICA/LnRvX2J5dGVfYXJyYXkoKTtcbiAgICAgICAgICBpZiAoUjRTZXJpYWxpemVkICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGxldCB0eElkID0gQnVmZmVyLmZyb20oUjRTZXJpYWxpemVkKS50b1N0cmluZygpO1xuICAgICAgICAgICAgLy8gd2UgYXNzdW1lZCB0eElkIG9ubHkgaW5jbHVkZXMgdGhlc2UgY2hhcmFjdGVyc1xuICAgICAgICAgICAgaWYgKCF0eElkLm1hdGNoKC9eWzAtOWEtekEtWlxcLV8uXSskLykpIHtcbiAgICAgICAgICAgICAgLy8gYmFja3dhcmQgY29tcGF0aWJpbGl0eVxuICAgICAgICAgICAgICB0eElkID0gQnVmZmVyLmZyb20oUjRTZXJpYWxpemVkKS50b1N0cmluZygnaGV4Jyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwYXltZW50VHhJZCA9IHR4SWQ7XG4gICAgICAgICAgICBpZiAodHhJZCA9PT0gJycpIHtcbiAgICAgICAgICAgICAgcGF5bWVudFR4SWQgPSB0cmFuc2FjdGlvbi5pZDtcbiAgICAgICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgICAgICAgICAgYHN1Y2Nlc3NmdWwgZXZlbnQgaXMgc3BlbnQuIHR4IFske3RyYW5zYWN0aW9uLmlkfV0gaXMgYm90aCBwYXltZW50IGFuZCByZXdhcmQgZGlzdHJpYnV0aW9uIHR4YCxcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIHBheW1lbnRUeElkIGlzIGV4dHJhY3RlZC4gbm8gbmVlZCB0byBwcm9jZXNzIG5leHQgYm94ZXNcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgIHJlc3VsdCxcbiAgICAgIHBheW1lbnRUeElkLFxuICAgIH07XG4gIH07XG59XG5cbmV4cG9ydCBkZWZhdWx0IEV2ZW50VHJpZ2dlckV4dHJhY3RvcjtcbiJdfQ==
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AbstractExtractor } from '@rosen-bridge/abstract-extractor';
|
|
2
2
|
import { AbstractLogger } from '@rosen-bridge/abstract-logger';
|
|
3
3
|
import { DataSource } from '@rosen-bridge/extended-typeorm';
|
|
4
|
-
import {
|
|
4
|
+
import { BlockInfo, Transaction } from '@rosen-bridge/scanner-interfaces';
|
|
5
5
|
import { V1 } from '@rosen-clients/ergo-explorer';
|
|
6
6
|
import PermitAction from '../actions/permitAction';
|
|
7
7
|
import { ExtractedPermit } from '../interfaces/extractedPermit';
|
|
@@ -96,12 +96,12 @@ declare class PermitExtractor extends AbstractExtractor<Transaction> {
|
|
|
96
96
|
* @param block
|
|
97
97
|
* @param txs
|
|
98
98
|
*/
|
|
99
|
-
processTransactions: (txs: Array<Transaction>, block:
|
|
99
|
+
processTransactions: (txs: Array<Transaction>, block: BlockInfo) => Promise<boolean>;
|
|
100
100
|
forkBlock: (hash: string) => Promise<void>;
|
|
101
101
|
/**
|
|
102
102
|
* Initializes the database with older permits related to the address
|
|
103
103
|
*/
|
|
104
|
-
|
|
104
|
+
initializeData: (initialBlock: BlockInfo) => Promise<void>;
|
|
105
105
|
/**
|
|
106
106
|
* Validate all remaining permits in the database
|
|
107
107
|
* update the correct ones and remove the invalid ones
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permitExtractor.d.ts","sourceRoot":"","sources":["../../lib/extractor/permitExtractor.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAe,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,
|
|
1
|
+
{"version":3,"file":"permitExtractor.d.ts","sourceRoot":"","sources":["../../lib/extractor/permitExtractor.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAe,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAkC,EAAE,EAAE,EAAE,MAAM,8BAA8B,CAAC;AAE7E,OAAO,YAAY,MAAM,yBAAyB,CAAC;AAEnD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAGhE,cAAM,eAAgB,SAAQ,iBAAiB,CAAC,WAAW,CAAC;IAC1D,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,QAAQ,CAAC,WAAW;;oDArBqB,CAAC;gEAIJ,CAAC;gEAGpC,CAAC;8CAGL,CAAC;+CAIC,CAAC;;mCAME,CAAC;;;qEAc6B,CAAC;oEAM/B,CAAJ;;;2EAcG,CAAC;oDAMe,CAAC;4DAIV,CAAF;;;;;;;;;;;;;;iFAkCM,CAAC;;;;;;;gEA0CG,CAAC;yDAIX,CAAP;;0DAKK,CAAH;sEAGgE,CAAC;iEAKvC,CAAC;6EAOzB,CAAC;yDAKmB,CAAA;2EAKV,CAAC;gEAII,CAAC;;0IAiBJ,CAAC;yHAKuB,CAAC;kHAS1B,CAAC;mCAMf,CAAA;;;;mCAU6B,CAAC;;;gEAe7B,CAAA;oEAMC,CAAJ;;mCAWK,CAAC;;0CAK4B,CAAC;;gDAOtB,CAAC;;uEAU+B,CAAC;;;;;;;MAlQzB;gBAGnB,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,cAAc;IAiBzB,KAAK,eAAiB;IAEtB;;;;;OAKG;IACH,mBAAmB,GACjB,KAAK,KAAK,CAAC,WAAW,CAAC,EACvB,OAAO,SAAS,KACf,OAAO,CAAC,OAAO,CAAC,CAoEjB;IAEF,SAAS,GAAU,MAAM,MAAM,mBAE7B;IAEF;;OAEG;IACH,cAAc,GAAU,cAAc,SAAS,mBA0B7C;IAEF;;;;;OAKG;IACH,wBAAwB,GACtB,uBAAuB,KAAK,CAAC,MAAM,CAAC,EACpC,eAAe,MAAM,mBAmBrB;IAEF;;;OAGG;IACH,kBAAkB,GAChB,OAAO,MAAM,KACZ,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CAQrC;IAEF;;;;OAIG;IACH,oBAAoB,GAClB,eAAe,MAAM,KACpB,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAuBhC;IAEF;;;OAGG;IACH,UAAU,GAAU,MAAM,MAAM;;;OAM9B;IAEF;;;;;;;OAOG;IACH,iBAAiB,GAAU,OAAO,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,gCA4BpD;CACH;AAED,eAAe,eAAe,CAAC"}
|
|
@@ -25,7 +25,7 @@ class PermitExtractor extends AbstractExtractor {
|
|
|
25
25
|
.to_base16_bytes();
|
|
26
26
|
this.RWT = RWT;
|
|
27
27
|
this.logger = logger ? logger : new DummyLogger();
|
|
28
|
-
this.actions = new PermitAction(dataSource, this.logger);
|
|
28
|
+
this.actions = new PermitAction(dataSource, this.logger.child('PermitAction'));
|
|
29
29
|
this.explorerApi = ergoExplorerClientFactory(explorerUrl);
|
|
30
30
|
}
|
|
31
31
|
getId = () => this.id;
|
|
@@ -99,7 +99,7 @@ class PermitExtractor extends AbstractExtractor {
|
|
|
99
99
|
/**
|
|
100
100
|
* Initializes the database with older permits related to the address
|
|
101
101
|
*/
|
|
102
|
-
|
|
102
|
+
initializeData = async (initialBlock) => {
|
|
103
103
|
let allStoredBoxIds = await this.actions.getAllPermitBoxIds(this.getId());
|
|
104
104
|
// Extract unspent permits
|
|
105
105
|
const unspentPermits = await this.getAllUnspentPermits(initialBlock.height);
|
|
@@ -225,4 +225,4 @@ class PermitExtractor extends AbstractExtractor {
|
|
|
225
225
|
};
|
|
226
226
|
}
|
|
227
227
|
export default PermitExtractor;
|
|
228
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWl0RXh0cmFjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGliL2V4dHJhY3Rvci9wZXJtaXRFeHRyYWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNoQyxPQUFPLEtBQUssSUFBSSxNQUFNLHNCQUFzQixDQUFDO0FBQzdDLE9BQU8sS0FBSyxPQUFPLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUV2QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRSxPQUFPLEVBQWtCLFdBQVcsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBTzVFLE9BQU8seUJBQWlDLE1BQU0sOEJBQThCLENBQUM7QUFFN0UsT0FBTyxZQUFZLE1BQU0seUJBQXlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUUvQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRWxDLE1BQU0sZUFBZ0IsU0FBUSxpQkFBOEI7SUFDakQsTUFBTSxDQUFpQjtJQUNoQyxFQUFFLENBQVM7SUFDTSxVQUFVLENBQWE7SUFDL0IsT0FBTyxDQUFlO0lBQ2QsY0FBYyxDQUFTO0lBQ3ZCLEdBQUcsQ0FBUztJQUNwQixXQUFXLENBQUM7SUFFckIsWUFDRSxFQUFVLEVBQ1YsVUFBc0IsRUFDdEIsT0FBZSxFQUNmLEdBQVcsRUFDWCxXQUFtQixFQUNuQixNQUF1QjtRQUV2QixLQUFLLEVBQUUsQ0FBQztRQUNSLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQ2IsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDN0IsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUM7YUFDcEQsWUFBWSxFQUFFO2FBQ2QsZUFBZSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDZixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQ2xELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxZQUFZLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN6RCxJQUFJLENBQUMsV0FBVyxHQUFHLHlCQUF5QixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxLQUFLLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztJQUV0Qjs7Ozs7T0FLRztJQUNILG1CQUFtQixHQUFHLENBQ3BCLEdBQXVCLEVBQ3ZCLEtBQVksRUFDTSxFQUFFO1FBQ3BCLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDckMsSUFBSSxDQUFDO2dCQUNILE1BQU0sS0FBSyxHQUEyQixFQUFFLENBQUM7Z0JBQ3pDLE1BQU0sUUFBUSxHQUFrQixFQUFFLENBQUM7Z0JBQ25DLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRTtvQkFDMUIsS0FBSyxNQUFNLE1BQU0sSUFBSSxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUM7d0JBQ3pDLElBQUksQ0FBQzs0QkFDSCxJQUNFLE1BQU0sQ0FBQyxtQkFBbUI7Z0NBQzFCLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFO2dDQUM3QixNQUFNLENBQUMsTUFBTTtnQ0FDYixNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDO2dDQUN4QixNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sS0FBSyxJQUFJLENBQUMsR0FBRztnQ0FDckMsTUFBTSxDQUFDLFFBQVEsS0FBSyxJQUFJLENBQUMsY0FBYyxFQUN2QyxDQUFDO2dDQUNELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUN0QyxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUN6QixDQUFDO2dDQUNGLE1BQU0sRUFBRSxHQUFHLFNBQVMsQ0FBQyxjQUFjLENBQ2pDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLENBQy9CLENBQUM7Z0NBQ0YsSUFBSSxFQUFFLEVBQUUsQ0FBQztvQ0FDUCxNQUFNLFlBQVksR0FBRyxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUM7b0NBQ3hDLElBQUksWUFBWSxDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQUUsQ0FBQzt3Q0FDN0IsS0FBSyxDQUFDLElBQUksQ0FBQzs0Q0FDVCxLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7NENBQ25CLGFBQWEsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUN4QixTQUFTLENBQUMscUJBQXFCLEVBQUUsQ0FDbEMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDOzRDQUNwQixHQUFHLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDOzRDQUM5QyxJQUFJLEVBQUUsTUFBTSxDQUFDLGFBQWE7eUNBQzNCLENBQUMsQ0FBQztvQ0FDTCxDQUFDO2dDQUNILENBQUM7NEJBQ0gsQ0FBQzt3QkFDSCxDQUFDO3dCQUFDLE1BQU0sQ0FBQzs0QkFDUCxRQUFRO3dCQUNWLENBQUM7b0JBQ0gsQ0FBQztvQkFDRCxpQkFBaUI7b0JBQ2pCLEtBQUssTUFBTSxLQUFLLElBQUksV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDO3dCQUN2QyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDN0IsQ0FBQztnQkFDSCxDQUFDLENBQUMsQ0FBQztnQkFFSCxJQUFJLENBQUMsT0FBTztxQkFDVCxZQUFZLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7cUJBQ3hDLElBQUksQ0FBQyxHQUFHLEVBQUU7b0JBQ1QsSUFBSSxDQUFDLE9BQU87eUJBQ1QsWUFBWSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO3lCQUMzQyxJQUFJLENBQUMsR0FBRyxFQUFFO3dCQUNULE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDaEIsQ0FBQyxDQUFDLENBQUM7Z0JBQ1AsQ0FBQyxDQUFDO3FCQUNELEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO29CQUNYLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUNmLHlDQUF5QyxLQUFLLEtBQUssQ0FBQyxFQUFFLENBQ3ZELENBQUM7b0JBQ0YsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNaLENBQUMsQ0FBQyxDQUFDO1lBQ1AsQ0FBQztZQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQ1gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQ2YsU0FBUyxLQUFLLDZDQUE2QyxDQUFDLEVBQUUsQ0FDL0QsQ0FBQztnQkFDRixNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDWixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUM7SUFFRixTQUFTLEdBQUcsS0FBSyxFQUFFLElBQVksRUFBRSxFQUFFO1FBQ2pDLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ3JELENBQUMsQ0FBQztJQUVGOztPQUVHO0lBQ0gsZUFBZSxHQUFHLEtBQUssRUFBRSxZQUF1QixFQUFFLEVBQUU7UUFDbEQsSUFBSSxlQUFlLEdBQUcsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQzFFLDBCQUEwQjtRQUMxQixNQUFNLGNBQWMsR0FBRyxNQUFNLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDNUUsTUFBTSxhQUFhLEdBQUcsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdELDRCQUE0QjtRQUM1QixLQUFLLE1BQU0sTUFBTSxJQUFJLGNBQWMsRUFBRSxDQUFDO1lBQ3BDLElBQUksZUFBZSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDM0MsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7Z0JBQ3RELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNkLG9EQUFvRCxNQUFNLENBQUMsS0FBSyxHQUFHLENBQ3BFLENBQUM7Z0JBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsbUJBQW1CLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2xFLENBQUM7aUJBQU0sQ0FBQztnQkFDTixNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztnQkFDdEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ2QsNENBQTRDLE1BQU0sQ0FBQyxLQUFLLEdBQUcsQ0FDNUQsQ0FBQztnQkFDRixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDbkUsQ0FBQztRQUNILENBQUM7UUFDRCwyREFBMkQ7UUFDM0QsZUFBZSxHQUFHLFVBQVUsQ0FBQyxlQUFlLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFDN0QsOEJBQThCO1FBQzlCLCtCQUErQjtRQUMvQix1RUFBdUU7SUFDekUsQ0FBQyxDQUFDO0lBRUY7Ozs7O09BS0c7SUFDSCx3QkFBd0IsR0FBRyxLQUFLLEVBQzlCLHFCQUFvQyxFQUNwQyxhQUFxQixFQUNyQixFQUFFO1FBQ0YsS0FBSyxNQUFNLEtBQUssSUFBSSxxQkFBcUIsRUFBRSxDQUFDO1lBQzFDLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3BELElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxVQUFVLElBQUksTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUN0RCxJQUFJLE1BQU0sQ0FBQyxXQUFXLEdBQUcsYUFBYTtvQkFDcEMsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUNqQyxLQUFLLEVBQ0wsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUNaLE1BQU0sQ0FBQyxVQUFVLEVBQ2pCLE1BQU0sQ0FBQyxXQUFXLENBQ25CLENBQUM7WUFDTixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7Z0JBQ3JELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNkLHdCQUF3QixLQUFLLGdDQUFnQyxDQUM5RCxDQUFDO1lBQ0osQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDLENBQUM7SUFFRjs7O09BR0c7SUFDSCxrQkFBa0IsR0FBRyxLQUFLLEVBQ3hCLEtBQWEsRUFDeUIsRUFBRTtRQUN4QyxJQUFJLENBQUM7WUFDSCxNQUFNLEdBQUcsR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM3RCxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbEQsQ0FBQztRQUFDLE1BQU0sQ0FBQztZQUNQLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHFCQUFxQixLQUFLLGlCQUFpQixDQUFDLENBQUM7WUFDOUQsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztJQUNILENBQUMsQ0FBQztJQUVGOzs7O09BSUc7SUFDSCxvQkFBb0IsR0FBRyxLQUFLLEVBQzFCLGFBQXFCLEVBQ1ksRUFBRTtRQUNuQyxJQUFJLGNBQWMsR0FBMkIsRUFBRSxDQUFDO1FBQ2hELElBQUksTUFBTSxHQUFHLENBQUMsRUFDWixLQUFLLEdBQUcsZUFBZSxDQUFDO1FBQzFCLE9BQU8sTUFBTSxHQUFHLEtBQUssRUFBRSxDQUFDO1lBQ3RCLE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsZ0NBQWdDLENBQ3RFLElBQUksQ0FBQyxjQUFjLEVBQ25CLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLENBQzNDLENBQUM7WUFDRixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNqQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxvREFBb0QsQ0FBQyxDQUFDO2dCQUN2RSxNQUFNLElBQUksS0FBSyxDQUFDLCtCQUErQixDQUFDLENBQUM7WUFDbkQsQ0FBQztZQUNELE1BQU0sYUFBYSxHQUFHLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUNoRCxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FDaEIsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxjQUFjLElBQUksR0FBRyxDQUFDLGNBQWMsR0FBRyxhQUFhLENBQ2xFLENBQ0YsQ0FBQztZQUNGLGNBQWMsR0FBRyxDQUFDLEdBQUcsY0FBYyxFQUFFLEdBQUcsYUFBYSxDQUFDLENBQUM7WUFDdkQsS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDcEIsTUFBTSxJQUFJLGVBQWUsQ0FBQztRQUM1QixDQUFDO1FBQ0QsT0FBTyxjQUFjLENBQUM7SUFDeEIsQ0FBQyxDQUFDO0lBRUY7OztPQUdHO0lBQ0gsVUFBVSxHQUFHLEtBQUssRUFBRSxJQUFZLEVBQUUsRUFBRTtRQUNsQyxNQUFNLEVBQUUsR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xFLE9BQU87WUFDTCxFQUFFLEVBQUUsRUFBRSxDQUFDLE9BQU87WUFDZCxNQUFNLEVBQUUsRUFBRSxDQUFDLGVBQWU7U0FDM0IsQ0FBQztJQUNKLENBQUMsQ0FBQztJQUVGOzs7Ozs7O09BT0c7SUFDSCxpQkFBaUIsR0FBRyxLQUFLLEVBQUUsS0FBMkIsRUFBRSxFQUFFO1FBQ3hELE1BQU0sY0FBYyxHQUEyQixFQUFFLENBQUM7UUFDbEQsS0FBSyxNQUFNLE9BQU8sSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUM1QixNQUFNLEdBQUcsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7WUFDakUsTUFBTSxFQUFFLEdBQUcsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNqQyxJQUFJLEVBQUUsRUFBRSxDQUFDO2dCQUNQLE1BQU0sWUFBWSxHQUFHLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFDeEMsSUFBSSxVQUFVLEVBQUUsV0FBVyxDQUFDO2dCQUM1QixJQUFJLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO29CQUMvQixNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBQUM7b0JBQ2hFLFVBQVUsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDO29CQUN0QixXQUFXLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQztnQkFDN0IsQ0FBQztnQkFDRCxjQUFjLENBQUMsSUFBSSxDQUFDO29CQUNsQixLQUFLLEVBQUUsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLE1BQU0sRUFBRTtvQkFDNUIsYUFBYSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLHFCQUFxQixFQUFFLENBQUMsQ0FBQyxRQUFRLENBQzlELFFBQVEsQ0FDVDtvQkFDRCxLQUFLLEVBQUUsT0FBTyxDQUFDLE9BQU87b0JBQ3RCLE1BQU0sRUFBRSxPQUFPLENBQUMsZ0JBQWdCO29CQUNoQyxHQUFHLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO29CQUM5QyxJQUFJLEVBQUUsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDLE1BQU0sRUFBRTtvQkFDMUIsVUFBVSxFQUFFLFVBQVU7b0JBQ3RCLFdBQVcsRUFBRSxXQUFXO2lCQUN6QixDQUFDLENBQUM7WUFDTCxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sY0FBYyxDQUFDO0lBQ3hCLENBQUMsQ0FBQztDQUNIO0FBRUQsZUFBZSxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCdWZmZXIgfSBmcm9tICdidWZmZXInO1xuaW1wb3J0ICogYXMgd2FzbSBmcm9tICdlcmdvLWxpYi13YXNtLW5vZGVqcyc7XG5pbXBvcnQgKiBhcyBlcmdvTGliIGZyb20gJ2VyZ28tbGliLXdhc20tbm9kZWpzJztcbmltcG9ydCB7IGRpZmZlcmVuY2UgfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5pbXBvcnQgeyBBYnN0cmFjdEV4dHJhY3RvciB9IGZyb20gJ0Byb3Nlbi1icmlkZ2UvYWJzdHJhY3QtZXh0cmFjdG9yJztcbmltcG9ydCB7IEFic3RyYWN0TG9nZ2VyLCBEdW1teUxvZ2dlciB9IGZyb20gJ0Byb3Nlbi1icmlkZ2UvYWJzdHJhY3QtbG9nZ2VyJztcbmltcG9ydCB7IERhdGFTb3VyY2UgfSBmcm9tICdAcm9zZW4tYnJpZGdlL2V4dGVuZGVkLXR5cGVvcm0nO1xuaW1wb3J0IHtcbiAgQmxvY2ssXG4gIEJsb2NrSW5mbyxcbiAgVHJhbnNhY3Rpb24sXG59IGZyb20gJ0Byb3Nlbi1icmlkZ2Uvc2Nhbm5lci1pbnRlcmZhY2VzJztcbmltcG9ydCBlcmdvRXhwbG9yZXJDbGllbnRGYWN0b3J5LCB7IFYxIH0gZnJvbSAnQHJvc2VuLWNsaWVudHMvZXJnby1leHBsb3Jlcic7XG5cbmltcG9ydCBQZXJtaXRBY3Rpb24gZnJvbSAnLi4vYWN0aW9ucy9wZXJtaXRBY3Rpb24nO1xuaW1wb3J0IHsgRGVmYXVsdEFwaUxpbWl0IH0gZnJvbSAnLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IEV4dHJhY3RlZFBlcm1pdCB9IGZyb20gJy4uL2ludGVyZmFjZXMvZXh0cmFjdGVkUGVybWl0JztcbmltcG9ydCB7IEpzb25CSSB9IGZyb20gJy4uL3V0aWxzJztcblxuY2xhc3MgUGVybWl0RXh0cmFjdG9yIGV4dGVuZHMgQWJzdHJhY3RFeHRyYWN0b3I8VHJhbnNhY3Rpb24+IHtcbiAgcmVhZG9ubHkgbG9nZ2VyOiBBYnN0cmFjdExvZ2dlcjtcbiAgaWQ6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBkYXRhU291cmNlOiBEYXRhU291cmNlO1xuICByZWFkb25seSBhY3Rpb25zOiBQZXJtaXRBY3Rpb247XG4gIHByaXZhdGUgcmVhZG9ubHkgcGVybWl0RXJnb1RyZWU6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBSV1Q6IHN0cmluZztcbiAgcmVhZG9ubHkgZXhwbG9yZXJBcGk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgaWQ6IHN0cmluZyxcbiAgICBkYXRhU291cmNlOiBEYXRhU291cmNlLFxuICAgIGFkZHJlc3M6IHN0cmluZyxcbiAgICBSV1Q6IHN0cmluZyxcbiAgICBleHBsb3JlclVybDogc3RyaW5nLFxuICAgIGxvZ2dlcj86IEFic3RyYWN0TG9nZ2VyLFxuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuaWQgPSBpZDtcbiAgICB0aGlzLmRhdGFTb3VyY2UgPSBkYXRhU291cmNlO1xuICAgIHRoaXMucGVybWl0RXJnb1RyZWUgPSB3YXNtLkFkZHJlc3MuZnJvbV9iYXNlNTgoYWRkcmVzcylcbiAgICAgIC50b19lcmdvX3RyZWUoKVxuICAgICAgLnRvX2Jhc2UxNl9ieXRlcygpO1xuICAgIHRoaXMuUldUID0gUldUO1xuICAgIHRoaXMubG9nZ2VyID0gbG9nZ2VyID8gbG9nZ2VyIDogbmV3IER1bW15TG9nZ2VyKCk7XG4gICAgdGhpcy5hY3Rpb25zID0gbmV3IFBlcm1pdEFjdGlvbihkYXRhU291cmNlLCB0aGlzLmxvZ2dlcik7XG4gICAgdGhpcy5leHBsb3JlckFwaSA9IGVyZ29FeHBsb3JlckNsaWVudEZhY3RvcnkoZXhwbG9yZXJVcmwpO1xuICB9XG5cbiAgZ2V0SWQgPSAoKSA9PiB0aGlzLmlkO1xuXG4gIC8qKlxuICAgKiBnZXRzIGJsb2NrIGlkIGFuZCB0cmFuc2FjdGlvbnMgY29ycmVzcG9uZGluZyB0byB0aGUgYmxvY2sgYW5kIHNhdmVzIGlmIHRoZXkgYXJlIHZhbGlkIHJvc2VuXG4gICAqICB0cmFuc2FjdGlvbnMgYW5kIGluIGNhc2Ugb2Ygc3VjY2VzcyByZXR1cm4gdHJ1ZSBhbmQgaW4gY2FzZSBvZiBmYWlsdXJlIHJldHVybnMgZmFsc2VcbiAgICogQHBhcmFtIGJsb2NrXG4gICAqIEBwYXJhbSB0eHNcbiAgICovXG4gIHByb2Nlc3NUcmFuc2FjdGlvbnMgPSAoXG4gICAgdHhzOiBBcnJheTxUcmFuc2FjdGlvbj4sXG4gICAgYmxvY2s6IEJsb2NrLFxuICApOiBQcm9taXNlPGJvb2xlYW4+ID0+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgYm94ZXM6IEFycmF5PEV4dHJhY3RlZFBlcm1pdD4gPSBbXTtcbiAgICAgICAgY29uc3Qgc3BlbmRJZHM6IEFycmF5PHN0cmluZz4gPSBbXTtcbiAgICAgICAgdHhzLmZvckVhY2goKHRyYW5zYWN0aW9uKSA9PiB7XG4gICAgICAgICAgZm9yIChjb25zdCBvdXRwdXQgb2YgdHJhbnNhY3Rpb24ub3V0cHV0cykge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIG91dHB1dC5hZGRpdGlvbmFsUmVnaXN0ZXJzICYmXG4gICAgICAgICAgICAgICAgb3V0cHV0LmFkZGl0aW9uYWxSZWdpc3RlcnMuUjQgJiZcbiAgICAgICAgICAgICAgICBvdXRwdXQuYXNzZXRzICYmXG4gICAgICAgICAgICAgICAgb3V0cHV0LmFzc2V0cy5sZW5ndGggPiAwICYmXG4gICAgICAgICAgICAgICAgb3V0cHV0LmFzc2V0c1swXS50b2tlbklkID09PSB0aGlzLlJXVCAmJlxuICAgICAgICAgICAgICAgIG91dHB1dC5lcmdvVHJlZSA9PT0gdGhpcy5wZXJtaXRFcmdvVHJlZVxuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBjb25zdCBib3hPdXRwdXQgPSB3YXNtLkVyZ29Cb3guZnJvbV9qc29uKFxuICAgICAgICAgICAgICAgICAgSnNvbkJJLnN0cmluZ2lmeShvdXRwdXQpLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgY29uc3QgcjQgPSBib3hPdXRwdXQucmVnaXN0ZXJfdmFsdWUoXG4gICAgICAgICAgICAgICAgICB3YXNtLk5vbk1hbmRhdG9yeVJlZ2lzdGVySWQuUjQsXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBpZiAocjQpIHtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IFI0U2VyaWFsaXplZCA9IHI0LnRvX2J5dGVfYXJyYXkoKTtcbiAgICAgICAgICAgICAgICAgIGlmIChSNFNlcmlhbGl6ZWQubGVuZ3RoID49IDEpIHtcbiAgICAgICAgICAgICAgICAgICAgYm94ZXMucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgICAgYm94SWQ6IG91dHB1dC5ib3hJZCxcbiAgICAgICAgICAgICAgICAgICAgICBib3hTZXJpYWxpemVkOiBCdWZmZXIuZnJvbShcbiAgICAgICAgICAgICAgICAgICAgICAgIGJveE91dHB1dC5zaWdtYV9zZXJpYWxpemVfYnl0ZXMoKSxcbiAgICAgICAgICAgICAgICAgICAgICApLnRvU3RyaW5nKCdiYXNlNjQnKSxcbiAgICAgICAgICAgICAgICAgICAgICBXSUQ6IEJ1ZmZlci5mcm9tKFI0U2VyaWFsaXplZCkudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgICAgICAgICAgICAgICAgIHR4SWQ6IG91dHB1dC50cmFuc2FjdGlvbklkLFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgICAgICAvLyBlbXB0eVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAvLyBwcm9jZXNzIGlucHV0c1xuICAgICAgICAgIGZvciAoY29uc3QgaW5wdXQgb2YgdHJhbnNhY3Rpb24uaW5wdXRzKSB7XG4gICAgICAgICAgICBzcGVuZElkcy5wdXNoKGlucHV0LmJveElkKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuYWN0aW9uc1xuICAgICAgICAgIC5zdG9yZVBlcm1pdHMoYm94ZXMsIGJsb2NrLCB0aGlzLmdldElkKCkpXG4gICAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5hY3Rpb25zXG4gICAgICAgICAgICAgIC5zcGVuZFBlcm1pdHMoc3BlbmRJZHMsIGJsb2NrLCB0aGlzLmdldElkKCkpXG4gICAgICAgICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICByZXNvbHZlKHRydWUpO1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICB9KVxuICAgICAgICAgIC5jYXRjaCgoZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoXG4gICAgICAgICAgICAgIGBFcnJvciBpbiBzdG9yaW5nIHBlcm1pdHMgb2YgdGhlIGJsb2NrICR7YmxvY2t9OiAke2V9YCxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICByZWplY3QoZSk7XG4gICAgICAgICAgfSk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmVycm9yKFxuICAgICAgICAgIGBibG9jayAke2Jsb2NrfSBkb2Vzbid0IHNhdmUgaW4gdGhlIGRhdGFiYXNlIHdpdGggZXJyb3I6ICR7ZX1gLFxuICAgICAgICApO1xuICAgICAgICByZWplY3QoZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH07XG5cbiAgZm9ya0Jsb2NrID0gYXN5bmMgKGhhc2g6IHN0cmluZykgPT4ge1xuICAgIGF3YWl0IHRoaXMuYWN0aW9ucy5kZWxldGVCbG9jayhoYXNoLCB0aGlzLmdldElkKCkpO1xuICB9O1xuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplcyB0aGUgZGF0YWJhc2Ugd2l0aCBvbGRlciBwZXJtaXRzIHJlbGF0ZWQgdG8gdGhlIGFkZHJlc3NcbiAgICovXG4gIGluaXRpYWxpemVCb3hlcyA9IGFzeW5jIChpbml0aWFsQmxvY2s6IEJsb2NrSW5mbykgPT4ge1xuICAgIGxldCBhbGxTdG9yZWRCb3hJZHMgPSBhd2FpdCB0aGlzLmFjdGlvbnMuZ2V0QWxsUGVybWl0Qm94SWRzKHRoaXMuZ2V0SWQoKSk7XG4gICAgLy8gRXh0cmFjdCB1bnNwZW50IHBlcm1pdHNcbiAgICBjb25zdCB1bnNwZW50UGVybWl0cyA9IGF3YWl0IHRoaXMuZ2V0QWxsVW5zcGVudFBlcm1pdHMoaW5pdGlhbEJsb2NrLmhlaWdodCk7XG4gICAgY29uc3QgdW5zcGVudEJveElkcyA9IHVuc3BlbnRQZXJtaXRzLm1hcCgoYm94KSA9PiBib3guYm94SWQpO1xuICAgIC8vIFN0b3JpbmcgZXh0cmFjdGVkIHBlcm1pdHNcbiAgICBmb3IgKGNvbnN0IHBlcm1pdCBvZiB1bnNwZW50UGVybWl0cykge1xuICAgICAgaWYgKGFsbFN0b3JlZEJveElkcy5pbmNsdWRlcyhwZXJtaXQuYm94SWQpKSB7XG4gICAgICAgIGF3YWl0IHRoaXMuYWN0aW9ucy51cGRhdGVQZXJtaXQocGVybWl0LCB0aGlzLmdldElkKCkpO1xuICAgICAgICB0aGlzLmxvZ2dlci5pbmZvKFxuICAgICAgICAgIGBVcGRhdGVkIHRoZSBleGlzdGluZyB1bnNwZW50IHBlcm1pdCB3aXRoIGJveElkLCBbJHtwZXJtaXQuYm94SWR9XWAsXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKGBVcGRhdGVkIHBlcm1pdCBbJHtKU09OLnN0cmluZ2lmeShwZXJtaXQpfV1gKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGF3YWl0IHRoaXMuYWN0aW9ucy5pbnNlcnRQZXJtaXQocGVybWl0LCB0aGlzLmdldElkKCkpO1xuICAgICAgICB0aGlzLmxvZ2dlci5pbmZvKFxuICAgICAgICAgIGBJbnNlcnRlZCBuZXcgdW5zcGVudCBwZXJtaXQgd2l0aCBib3hJZCwgWyR7cGVybWl0LmJveElkfV1gLFxuICAgICAgICApO1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhgSW5zZXJ0ZWQgcGVybWl0IFske0pTT04uc3RyaW5naWZ5KHBlcm1pdCl9XWApO1xuICAgICAgfVxuICAgIH1cbiAgICAvLyBSZW1vdmUgdXBkYXRlZCBwZXJtaXRzIGZyb20gZXhpc3RpbmcgcGVybWl0cyBpbiBkYXRhYmFzZVxuICAgIGFsbFN0b3JlZEJveElkcyA9IGRpZmZlcmVuY2UoYWxsU3RvcmVkQm94SWRzLCB1bnNwZW50Qm94SWRzKTtcbiAgICAvLyBWYWxpZGF0aW5nIHJlbWFpbmVkIHBlcm1pdHNcbiAgICAvLyBUT0RPOiBGaXggdmFsaWRhdGlvbiBwcm9jZXNzXG4gICAgLy8gYXdhaXQgdGhpcy52YWxpZGF0ZU9sZFN0b3JlZFBlcm1pdHMoYWxsU3RvcmVkQm94SWRzLCBpbml0aWFsSGVpZ2h0KTtcbiAgfTtcblxuICAvKipcbiAgICogVmFsaWRhdGUgYWxsIHJlbWFpbmluZyBwZXJtaXRzIGluIHRoZSBkYXRhYmFzZVxuICAgKiB1cGRhdGUgdGhlIGNvcnJlY3Qgb25lcyBhbmQgcmVtb3ZlIHRoZSBpbnZhbGlkIG9uZXNcbiAgICogQHBhcmFtIHVuY2hhbmdlZFN0b3JlZEJveElkc1xuICAgKiBAcGFyYW0gaW5pdGlhbEhlaWdodFxuICAgKi9cbiAgdmFsaWRhdGVPbGRTdG9yZWRQZXJtaXRzID0gYXN5bmMgKFxuICAgIHVuY2hhbmdlZFN0b3JlZEJveElkczogQXJyYXk8c3RyaW5nPixcbiAgICBpbml0aWFsSGVpZ2h0OiBudW1iZXIsXG4gICkgPT4ge1xuICAgIGZvciAoY29uc3QgYm94SWQgb2YgdW5jaGFuZ2VkU3RvcmVkQm94SWRzKSB7XG4gICAgICBjb25zdCBwZXJtaXQgPSBhd2FpdCB0aGlzLmdldFBlcm1pdFdpdGhCb3hJZChib3hJZCk7XG4gICAgICBpZiAocGVybWl0ICYmIHBlcm1pdC5zcGVuZEJsb2NrICYmIHBlcm1pdC5zcGVuZEhlaWdodCkge1xuICAgICAgICBpZiAocGVybWl0LnNwZW5kSGVpZ2h0IDwgaW5pdGlhbEhlaWdodClcbiAgICAgICAgICBhd2FpdCB0aGlzLmFjdGlvbnMudXBkYXRlU3BlbmRCbG9jayhcbiAgICAgICAgICAgIGJveElkLFxuICAgICAgICAgICAgdGhpcy5nZXRJZCgpLFxuICAgICAgICAgICAgcGVybWl0LnNwZW5kQmxvY2ssXG4gICAgICAgICAgICBwZXJtaXQuc3BlbmRIZWlnaHQsXG4gICAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGF3YWl0IHRoaXMuYWN0aW9ucy5yZW1vdmVQZXJtaXQoYm94SWQsIHRoaXMuZ2V0SWQoKSk7XG4gICAgICAgIHRoaXMubG9nZ2VyLmluZm8oXG4gICAgICAgICAgYFJlbW92ZWQgaW52YWxpZCBib3ggWyR7Ym94SWR9XSBpbiBpbml0aWFsaXphdGlvbiB2YWxpZGF0aW9uYCxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgLyoqXG4gICAqIFJldHVybiBleHRyYWN0ZWQgcGVybWl0IGZyb20gYSBib3hcbiAgICogQHBhcmFtIGJveElkXG4gICAqL1xuICBnZXRQZXJtaXRXaXRoQm94SWQgPSBhc3luYyAoXG4gICAgYm94SWQ6IHN0cmluZyxcbiAgKTogUHJvbWlzZTxFeHRyYWN0ZWRQZXJtaXQgfCB1bmRlZmluZWQ+ID0+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgYm94ID0gYXdhaXQgdGhpcy5leHBsb3JlckFwaS52MS5nZXRBcGlWMUJveGVzUDEoYm94SWQpO1xuICAgICAgcmV0dXJuIChhd2FpdCB0aGlzLmV4dHJhY3RQZXJtaXREYXRhKFtib3hdKSlbMF07XG4gICAgfSBjYXRjaCB7XG4gICAgICB0aGlzLmxvZ2dlci53YXJuKGBQZXJtaXQgd2l0aCBib3hJZCAke2JveElkfSBkb2VzIG5vdCBleGlzdGApO1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gIH07XG5cbiAgLyoqXG4gICAqIFJldHVybiBhbGwgdW5zcGVudCBwZXJtaXRzXG4gICAqIEBwYXJhbSBpbml0aWFsSGVpZ2h0XG4gICAqIEByZXR1cm5zXG4gICAqL1xuICBnZXRBbGxVbnNwZW50UGVybWl0cyA9IGFzeW5jIChcbiAgICBpbml0aWFsSGVpZ2h0OiBudW1iZXIsXG4gICk6IFByb21pc2U8QXJyYXk8RXh0cmFjdGVkUGVybWl0Pj4gPT4ge1xuICAgIGxldCBleHRyYWN0ZWRCb3hlczogQXJyYXk8RXh0cmFjdGVkUGVybWl0PiA9IFtdO1xuICAgIGxldCBvZmZzZXQgPSAwLFxuICAgICAgdG90YWwgPSBEZWZhdWx0QXBpTGltaXQ7XG4gICAgd2hpbGUgKG9mZnNldCA8IHRvdGFsKSB7XG4gICAgICBjb25zdCBib3hlcyA9IGF3YWl0IHRoaXMuZXhwbG9yZXJBcGkudjEuZ2V0QXBpVjFCb3hlc1Vuc3BlbnRCeWVyZ290cmVlUDEoXG4gICAgICAgIHRoaXMucGVybWl0RXJnb1RyZWUsXG4gICAgICAgIHsgb2Zmc2V0OiBvZmZzZXQsIGxpbWl0OiBEZWZhdWx0QXBpTGltaXQgfSxcbiAgICAgICk7XG4gICAgICBpZiAoIWJveGVzLml0ZW1zKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLndhcm4oJ0V4cGxvcmVyIGFwaSBvdXRwdXQgaXRlbXMgc2hvdWxkIG5vdCBiZSB1bmRlZmluZWQuJyk7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSW5jb3JyZWN0IGV4cGxvcmVyIGFwaSBvdXRwdXQnKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGZpbHRlcmVkQm94ZXMgPSBhd2FpdCB0aGlzLmV4dHJhY3RQZXJtaXREYXRhKFxuICAgICAgICBib3hlcy5pdGVtcy5maWx0ZXIoXG4gICAgICAgICAgKGJveCkgPT4gYm94LmNyZWF0aW9uSGVpZ2h0ICYmIGJveC5jcmVhdGlvbkhlaWdodCA8IGluaXRpYWxIZWlnaHQsXG4gICAgICAgICksXG4gICAgICApO1xuICAgICAgZXh0cmFjdGVkQm94ZXMgPSBbLi4uZXh0cmFjdGVkQm94ZXMsIC4uLmZpbHRlcmVkQm94ZXNdO1xuICAgICAgdG90YWwgPSBib3hlcy50b3RhbDtcbiAgICAgIG9mZnNldCArPSBEZWZhdWx0QXBpTGltaXQ7XG4gICAgfVxuICAgIHJldHVybiBleHRyYWN0ZWRCb3hlcztcbiAgfTtcblxuICAvKipcbiAgICogUmV0dXJucyBibG9jayBpbmZvcm1hdGlvbiBvZiB0eFxuICAgKiBAcGFyYW0gdHhJZFxuICAgKi9cbiAgZ2V0VHhCbG9jayA9IGFzeW5jICh0eElkOiBzdHJpbmcpID0+IHtcbiAgICBjb25zdCB0eCA9IGF3YWl0IHRoaXMuZXhwbG9yZXJBcGkudjEuZ2V0QXBpVjFUcmFuc2FjdGlvbnNQMSh0eElkKTtcbiAgICByZXR1cm4ge1xuICAgICAgaWQ6IHR4LmJsb2NrSWQsXG4gICAgICBoZWlnaHQ6IHR4LmluY2x1c2lvbkhlaWdodCxcbiAgICB9O1xuICB9O1xuXG4gIC8qKlxuICAgKiBFeHRyYWN0IHBlcm1pdCBkYXRhIGZyb20ganNvbiBib3hlc1xuICAgKiBhbmQgZmlsdGVyIHRvIGZpdCBpbiBhIHNwZWNpZmllZCBoZWlnaHQgcmFuZ2VcbiAgICogQHBhcmFtIGJveGVzXG4gICAqIEBwYXJhbSB0b0hlaWdodFxuICAgKiBAcGFyYW0gaGVpZ2h0RGlmZmVyZW5jZVxuICAgKiBAcmV0dXJucyBleHRyYWN0ZWQgcGVybWl0XG4gICAqL1xuICBleHRyYWN0UGVybWl0RGF0YSA9IGFzeW5jIChib3hlczogQXJyYXk8VjEuT3V0cHV0SW5mbz4pID0+IHtcbiAgICBjb25zdCBleHRyYWN0ZWRCb3hlczogQXJyYXk8RXh0cmFjdGVkUGVybWl0PiA9IFtdO1xuICAgIGZvciAoY29uc3QgYm94SnNvbiBvZiBib3hlcykge1xuICAgICAgY29uc3QgYm94ID0gZXJnb0xpYi5FcmdvQm94LmZyb21fanNvbihKc29uQkkuc3RyaW5naWZ5KGJveEpzb24pKTtcbiAgICAgIGNvbnN0IHI0ID0gYm94LnJlZ2lzdGVyX3ZhbHVlKDQpO1xuICAgICAgaWYgKHI0KSB7XG4gICAgICAgIGNvbnN0IFI0U2VyaWFsaXplZCA9IHI0LnRvX2J5dGVfYXJyYXkoKTtcbiAgICAgICAgbGV0IHNwZW5kQmxvY2ssIHNwZW5kSGVpZ2h0O1xuICAgICAgICBpZiAoYm94SnNvbi5zcGVudFRyYW5zYWN0aW9uSWQpIHtcbiAgICAgICAgICBjb25zdCBibG9jayA9IGF3YWl0IHRoaXMuZ2V0VHhCbG9jayhib3hKc29uLnNwZW50VHJhbnNhY3Rpb25JZCk7XG4gICAgICAgICAgc3BlbmRCbG9jayA9IGJsb2NrLmlkO1xuICAgICAgICAgIHNwZW5kSGVpZ2h0ID0gYmxvY2suaGVpZ2h0O1xuICAgICAgICB9XG4gICAgICAgIGV4dHJhY3RlZEJveGVzLnB1c2goe1xuICAgICAgICAgIGJveElkOiBib3guYm94X2lkKCkudG9fc3RyKCksXG4gICAgICAgICAgYm94U2VyaWFsaXplZDogQnVmZmVyLmZyb20oYm94LnNpZ21hX3NlcmlhbGl6ZV9ieXRlcygpKS50b1N0cmluZyhcbiAgICAgICAgICAgICdiYXNlNjQnLFxuICAgICAgICAgICksXG4gICAgICAgICAgYmxvY2s6IGJveEpzb24uYmxvY2tJZCxcbiAgICAgICAgICBoZWlnaHQ6IGJveEpzb24uc2V0dGxlbWVudEhlaWdodCxcbiAgICAgICAgICBXSUQ6IEJ1ZmZlci5mcm9tKFI0U2VyaWFsaXplZCkudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgICAgIHR4SWQ6IGJveC50eF9pZCgpLnRvX3N0cigpLFxuICAgICAgICAgIHNwZW5kQmxvY2s6IHNwZW5kQmxvY2ssXG4gICAgICAgICAgc3BlbmRIZWlnaHQ6IHNwZW5kSGVpZ2h0LFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGV4dHJhY3RlZEJveGVzO1xuICB9O1xufVxuXG5leHBvcnQgZGVmYXVsdCBQZXJtaXRFeHRyYWN0b3I7XG4iXX0=
|
|
228
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWl0RXh0cmFjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGliL2V4dHJhY3Rvci9wZXJtaXRFeHRyYWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNoQyxPQUFPLEtBQUssSUFBSSxNQUFNLHNCQUFzQixDQUFDO0FBQzdDLE9BQU8sS0FBSyxPQUFPLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUV2QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRSxPQUFPLEVBQWtCLFdBQVcsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRzVFLE9BQU8seUJBQWlDLE1BQU0sOEJBQThCLENBQUM7QUFFN0UsT0FBTyxZQUFZLE1BQU0seUJBQXlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUUvQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRWxDLE1BQU0sZUFBZ0IsU0FBUSxpQkFBOEI7SUFDakQsTUFBTSxDQUFpQjtJQUNoQyxFQUFFLENBQVM7SUFDTSxVQUFVLENBQWE7SUFDL0IsT0FBTyxDQUFlO0lBQ2QsY0FBYyxDQUFTO0lBQ3ZCLEdBQUcsQ0FBUztJQUNwQixXQUFXLENBQUM7SUFFckIsWUFDRSxFQUFVLEVBQ1YsVUFBc0IsRUFDdEIsT0FBZSxFQUNmLEdBQVcsRUFDWCxXQUFtQixFQUNuQixNQUF1QjtRQUV2QixLQUFLLEVBQUUsQ0FBQztRQUNSLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQ2IsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDN0IsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUM7YUFD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QUFJLENBQUMsR0FBRyxDQUFDLHFCQUFxQixFQUFFLENBQUMsQ0FBQyxRQUFRLENBQzlELFFBQVEsQ0FDVDtvQkFDRCxLQUFLLEVBQUUsT0FBTyxDQUFDLE9BQU87b0JBQ3RCLE1BQU0sRUFBRSxPQUFPLENBQUMsZ0JBQWdCO29CQUNoQyxHQUFHLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO29CQUM5QyxJQUFJLEVBQUUsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDLE1BQU0sRUFBRTtvQkFDMUIsVUFBVSxFQUFFLFVBQVU7b0JBQ3RCLFdBQVcsRUFBRSxXQUFXO2lCQUN6QixDQUFDLENBQUM7WUFDTCxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sY0FBYyxDQUFDO0lBQ3hCLENBQUMsQ0FBQztDQUNIO0FBRUQsZUFBZSxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCdWZmZXIgfSBmcm9tICdidWZmZXInO1xuaW1wb3J0ICogYXMgd2FzbSBmcm9tICdlcmdvLWxpYi13YXNtLW5vZGVqcyc7XG5pbXBvcnQgKiBhcyBlcmdvTGliIGZyb20gJ2VyZ28tbGliLXdhc20tbm9kZWpzJztcbmltcG9ydCB7IGRpZmZlcmVuY2UgfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5pbXBvcnQgeyBBYnN0cmFjdEV4dHJhY3RvciB9IGZyb20gJ0Byb3Nlbi1icmlkZ2UvYWJzdHJhY3QtZXh0cmFjdG9yJztcbmltcG9ydCB7IEFic3RyYWN0TG9nZ2VyLCBEdW1teUxvZ2dlciB9IGZyb20gJ0Byb3Nlbi1icmlkZ2UvYWJzdHJhY3QtbG9nZ2VyJztcbmltcG9ydCB7IERhdGFTb3VyY2UgfSBmcm9tICdAcm9zZW4tYnJpZGdlL2V4dGVuZGVkLXR5cGVvcm0nO1xuaW1wb3J0IHsgQmxvY2tJbmZvLCBUcmFuc2FjdGlvbiB9IGZyb20gJ0Byb3Nlbi1icmlkZ2Uvc2Nhbm5lci1pbnRlcmZhY2VzJztcbmltcG9ydCBlcmdvRXhwbG9yZXJDbGllbnRGYWN0b3J5LCB7IFYxIH0gZnJvbSAnQHJvc2VuLWNsaWVudHMvZXJnby1leHBsb3Jlcic7XG5cbmltcG9ydCBQZXJtaXRBY3Rpb24gZnJvbSAnLi4vYWN0aW9ucy9wZXJtaXRBY3Rpb24nO1xuaW1wb3J0IHsgRGVmYXVsdEFwaUxpbWl0IH0gZnJvbSAnLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IEV4dHJhY3RlZFBlcm1pdCB9IGZyb20gJy4uL2ludGVyZmFjZXMvZXh0cmFjdGVkUGVybWl0JztcbmltcG9ydCB7IEpzb25CSSB9IGZyb20gJy4uL3V0aWxzJztcblxuY2xhc3MgUGVybWl0RXh0cmFjdG9yIGV4dGVuZHMgQWJzdHJhY3RFeHRyYWN0b3I8VHJhbnNhY3Rpb24+IHtcbiAgcmVhZG9ubHkgbG9nZ2VyOiBBYnN0cmFjdExvZ2dlcjtcbiAgaWQ6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBkYXRhU291cmNlOiBEYXRhU291cmNlO1xuICByZWFkb25seSBhY3Rpb25zOiBQZXJtaXRBY3Rpb247XG4gIHByaXZhdGUgcmVhZG9ubHkgcGVybWl0RXJnb1RyZWU6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBSV1Q6IHN0cmluZztcbiAgcmVhZG9ubHkgZXhwbG9yZXJBcGk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgaWQ6IHN0cmluZyxcbiAgICBkYXRhU291cmNlOiBEYXRhU291cmNlLFxuICAgIGFkZHJlc3M6IHN0cmluZyxcbiAgICBSV1Q6IHN0cmluZyxcbiAgICBleHBsb3JlclVybDogc3RyaW5nLFxuICAgIGxvZ2dlcj86IEFic3RyYWN0TG9nZ2VyLFxuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuaWQgPSBpZDtcbiAgICB0aGlzLmRhdGFTb3VyY2UgPSBkYXRhU291cmNlO1xuICAgIHRoaXMucGVybWl0RXJnb1RyZWUgPSB3YXNtLkFkZHJlc3MuZnJvbV9iYXNlNTgoYWRkcmVzcylcbiAgICAgIC50b19lcmdvX3RyZWUoKVxuICAgICAgLnRvX2Jhc2UxNl9ieXRlcygpO1xuICAgIHRoaXMuUldUID0gUldUO1xuICAgIHRoaXMubG9nZ2VyID0gbG9nZ2VyID8gbG9nZ2VyIDogbmV3IER1bW15TG9nZ2VyKCk7XG4gICAgdGhpcy5hY3Rpb25zID0gbmV3IFBlcm1pdEFjdGlvbihcbiAgICAgIGRhdGFTb3VyY2UsXG4gICAgICB0aGlzLmxvZ2dlci5jaGlsZCgnUGVybWl0QWN0aW9uJyksXG4gICAgKTtcbiAgICB0aGlzLmV4cGxvcmVyQXBpID0gZXJnb0V4cGxvcmVyQ2xpZW50RmFjdG9yeShleHBsb3JlclVybCk7XG4gIH1cblxuICBnZXRJZCA9ICgpID0+IHRoaXMuaWQ7XG5cbiAgLyoqXG4gICAqIGdldHMgYmxvY2sgaWQgYW5kIHRyYW5zYWN0aW9ucyBjb3JyZXNwb25kaW5nIHRvIHRoZSBibG9jayBhbmQgc2F2ZXMgaWYgdGhleSBhcmUgdmFsaWQgcm9zZW5cbiAgICogIHRyYW5zYWN0aW9ucyBhbmQgaW4gY2FzZSBvZiBzdWNjZXNzIHJldHVybiB0cnVlIGFuZCBpbiBjYXNlIG9mIGZhaWx1cmUgcmV0dXJucyBmYWxzZVxuICAgKiBAcGFyYW0gYmxvY2tcbiAgICogQHBhcmFtIHR4c1xuICAgKi9cbiAgcHJvY2Vzc1RyYW5zYWN0aW9ucyA9IChcbiAgICB0eHM6IEFycmF5PFRyYW5zYWN0aW9uPixcbiAgICBibG9jazogQmxvY2tJbmZvLFxuICApOiBQcm9taXNlPGJvb2xlYW4+ID0+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgYm94ZXM6IEFycmF5PEV4dHJhY3RlZFBlcm1pdD4gPSBbXTtcbiAgICAgICAgY29uc3Qgc3BlbmRJZHM6IEFycmF5PHN0cmluZz4gPSBbXTtcbiAgICAgICAgdHhzLmZvckVhY2goKHRyYW5zYWN0aW9uKSA9PiB7XG4gICAgICAgICAgZm9yIChjb25zdCBvdXRwdXQgb2YgdHJhbnNhY3Rpb24ub3V0cHV0cykge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIG91dHB1dC5hZGRpdGlvbmFsUmVnaXN0ZXJzICYmXG4gICAgICAgICAgICAgICAgb3V0cHV0LmFkZGl0aW9uYWxSZWdpc3RlcnMuUjQgJiZcbiAgICAgICAgICAgICAgICBvdXRwdXQuYXNzZXRzICYmXG4gICAgICAgICAgICAgICAgb3V0cHV0LmFzc2V0cy5sZW5ndGggPiAwICYmXG4gICAgICAgICAgICAgICAgb3V0cHV0LmFzc2V0c1swXS50b2tlbklkID09PSB0aGlzLlJXVCAmJlxuICAgICAgICAgICAgICAgIG91dHB1dC5lcmdvVHJlZSA9PT0gdGhpcy5wZXJtaXRFcmdvVHJlZVxuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBjb25zdCBib3hPdXRwdXQgPSB3YXNtLkVyZ29Cb3guZnJvbV9qc29uKFxuICAgICAgICAgICAgICAgICAgSnNvbkJJLnN0cmluZ2lmeShvdXRwdXQpLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgY29uc3QgcjQgPSBib3hPdXRwdXQucmVnaXN0ZXJfdmFsdWUoXG4gICAgICAgICAgICAgICAgICB3YXNtLk5vbk1hbmRhdG9yeVJlZ2lzdGVySWQuUjQsXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBpZiAocjQpIHtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IFI0U2VyaWFsaXplZCA9IHI0LnRvX2J5dGVfYXJyYXkoKTtcbiAgICAgICAgICAgICAgICAgIGlmIChSNFNlcmlhbGl6ZWQubGVuZ3RoID49IDEpIHtcbiAgICAgICAgICAgICAgICAgICAgYm94ZXMucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgICAgYm94SWQ6IG91dHB1dC5ib3hJZCxcbiAgICAgICAgICAgICAgICAgICAgICBib3hTZXJpYWxpemVkOiBCdWZmZXIuZnJvbShcbiAgICAgICAgICAgICAgICAgICAgICAgIGJveE91dHB1dC5zaWdtYV9zZXJpYWxpemVfYnl0ZXMoKSxcbiAgICAgICAgICAgICAgICAgICAgICApLnRvU3RyaW5nKCdiYXNlNjQnKSxcbiAgICAgICAgICAgICAgICAgICAgICBXSUQ6IEJ1ZmZlci5mcm9tKFI0U2VyaWFsaXplZCkudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgICAgICAgICAgICAgICAgIHR4SWQ6IG91dHB1dC50cmFuc2FjdGlvbklkLFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgICAgICAvLyBlbXB0eVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAvLyBwcm9jZXNzIGlucHV0c1xuICAgICAgICAgIGZvciAoY29uc3QgaW5wdXQgb2YgdHJhbnNhY3Rpb24uaW5wdXRzKSB7XG4gICAgICAgICAgICBzcGVuZElkcy5wdXNoKGlucHV0LmJveElkKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuYWN0aW9uc1xuICAgICAgICAgIC5zdG9yZVBlcm1pdHMoYm94ZXMsIGJsb2NrLCB0aGlzLmdldElkKCkpXG4gICAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5hY3Rpb25zXG4gICAgICAgICAgICAgIC5zcGVuZFBlcm1pdHMoc3BlbmRJZHMsIGJsb2NrLCB0aGlzLmdldElkKCkpXG4gICAgICAgICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICByZXNvbHZlKHRydWUpO1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICB9KVxuICAgICAgICAgIC5jYXRjaCgoZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoXG4gICAgICAgICAgICAgIGBFcnJvciBpbiBzdG9yaW5nIHBlcm1pdHMgb2YgdGhlIGJsb2NrICR7YmxvY2t9OiAke2V9YCxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICByZWplY3QoZSk7XG4gICAgICAgICAgfSk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmVycm9yKFxuICAgICAgICAgIGBibG9jayAke2Jsb2NrfSBkb2Vzbid0IHNhdmUgaW4gdGhlIGRhdGFiYXNlIHdpdGggZXJyb3I6ICR7ZX1gLFxuICAgICAgICApO1xuICAgICAgICByZWplY3QoZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH07XG5cbiAgZm9ya0Jsb2NrID0gYXN5bmMgKGhhc2g6IHN0cmluZykgPT4ge1xuICAgIGF3YWl0IHRoaXMuYWN0aW9ucy5kZWxldGVCbG9jayhoYXNoLCB0aGlzLmdldElkKCkpO1xuICB9O1xuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplcyB0aGUgZGF0YWJhc2Ugd2l0aCBvbGRlciBwZXJtaXRzIHJlbGF0ZWQgdG8gdGhlIGFkZHJlc3NcbiAgICovXG4gIGluaXRpYWxpemVEYXRhID0gYXN5bmMgKGluaXRpYWxCbG9jazogQmxvY2tJbmZvKSA9PiB7XG4gICAgbGV0IGFsbFN0b3JlZEJveElkcyA9IGF3YWl0IHRoaXMuYWN0aW9ucy5nZXRBbGxQZXJtaXRCb3hJZHModGhpcy5nZXRJZCgpKTtcbiAgICAvLyBFeHRyYWN0IHVuc3BlbnQgcGVybWl0c1xuICAgIGNvbnN0IHVuc3BlbnRQZXJtaXRzID0gYXdhaXQgdGhpcy5nZXRBbGxVbnNwZW50UGVybWl0cyhpbml0aWFsQmxvY2suaGVpZ2h0KTtcbiAgICBjb25zdCB1bnNwZW50Qm94SWRzID0gdW5zcGVudFBlcm1pdHMubWFwKChib3gpID0+IGJveC5ib3hJZCk7XG4gICAgLy8gU3RvcmluZyBleHRyYWN0ZWQgcGVybWl0c1xuICAgIGZvciAoY29uc3QgcGVybWl0IG9mIHVuc3BlbnRQZXJtaXRzKSB7XG4gICAgICBpZiAoYWxsU3RvcmVkQm94SWRzLmluY2x1ZGVzKHBlcm1pdC5ib3hJZCkpIHtcbiAgICAgICAgYXdhaXQgdGhpcy5hY3Rpb25zLnVwZGF0ZVBlcm1pdChwZXJtaXQsIHRoaXMuZ2V0SWQoKSk7XG4gICAgICAgIHRoaXMubG9nZ2VyLmluZm8oXG4gICAgICAgICAgYFVwZGF0ZWQgdGhlIGV4aXN0aW5nIHVuc3BlbnQgcGVybWl0IHdpdGggYm94SWQsIFske3Blcm1pdC5ib3hJZH1dYCxcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoYFVwZGF0ZWQgcGVybWl0IFske0pTT04uc3RyaW5naWZ5KHBlcm1pdCl9XWApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYXdhaXQgdGhpcy5hY3Rpb25zLmluc2VydFBlcm1pdChwZXJtaXQsIHRoaXMuZ2V0SWQoKSk7XG4gICAgICAgIHRoaXMubG9nZ2VyLmluZm8oXG4gICAgICAgICAgYEluc2VydGVkIG5ldyB1bnNwZW50IHBlcm1pdCB3aXRoIGJveElkLCBbJHtwZXJtaXQuYm94SWR9XWAsXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKGBJbnNlcnRlZCBwZXJtaXQgWyR7SlNPTi5zdHJpbmdpZnkocGVybWl0KX1dYCk7XG4gICAgICB9XG4gICAgfVxuICAgIC8vIFJlbW92ZSB1cGRhdGVkIHBlcm1pdHMgZnJvbSBleGlzdGluZyBwZXJtaXRzIGluIGRhdGFiYXNlXG4gICAgYWxsU3RvcmVkQm94SWRzID0gZGlmZmVyZW5jZShhbGxTdG9yZWRCb3hJZHMsIHVuc3BlbnRCb3hJZHMpO1xuICAgIC8vIFZhbGlkYXRpbmcgcmVtYWluZWQgcGVybWl0c1xuICAgIC8vIFRPRE86IEZpeCB2YWxpZGF0aW9uIHByb2Nlc3NcbiAgICAvLyBhd2FpdCB0aGlzLnZhbGlkYXRlT2xkU3RvcmVkUGVybWl0cyhhbGxTdG9yZWRCb3hJZHMsIGluaXRpYWxIZWlnaHQpO1xuICB9O1xuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZSBhbGwgcmVtYWluaW5nIHBlcm1pdHMgaW4gdGhlIGRhdGFiYXNlXG4gICAqIHVwZGF0ZSB0aGUgY29ycmVjdCBvbmVzIGFuZCByZW1vdmUgdGhlIGludmFsaWQgb25lc1xuICAgKiBAcGFyYW0gdW5jaGFuZ2VkU3RvcmVkQm94SWRzXG4gICAqIEBwYXJhbSBpbml0aWFsSGVpZ2h0XG4gICAqL1xuICB2YWxpZGF0ZU9sZFN0b3JlZFBlcm1pdHMgPSBhc3luYyAoXG4gICAgdW5jaGFuZ2VkU3RvcmVkQm94SWRzOiBBcnJheTxzdHJpbmc+LFxuICAgIGluaXRpYWxIZWlnaHQ6IG51bWJlcixcbiAgKSA9PiB7XG4gICAgZm9yIChjb25zdCBib3hJZCBvZiB1bmNoYW5nZWRTdG9yZWRCb3hJZHMpIHtcbiAgICAgIGNvbnN0IHBlcm1pdCA9IGF3YWl0IHRoaXMuZ2V0UGVybWl0V2l0aEJveElkKGJveElkKTtcbiAgICAgIGlmIChwZXJtaXQgJiYgcGVybWl0LnNwZW5kQmxvY2sgJiYgcGVybWl0LnNwZW5kSGVpZ2h0KSB7XG4gICAgICAgIGlmIChwZXJtaXQuc3BlbmRIZWlnaHQgPCBpbml0aWFsSGVpZ2h0KVxuICAgICAgICAgIGF3YWl0IHRoaXMuYWN0aW9ucy51cGRhdGVTcGVuZEJsb2NrKFxuICAgICAgICAgICAgYm94SWQsXG4gICAgICAgICAgICB0aGlzLmdldElkKCksXG4gICAgICAgICAgICBwZXJtaXQuc3BlbmRCbG9jayxcbiAgICAgICAgICAgIHBlcm1pdC5zcGVuZEhlaWdodCxcbiAgICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYXdhaXQgdGhpcy5hY3Rpb25zLnJlbW92ZVBlcm1pdChib3hJZCwgdGhpcy5nZXRJZCgpKTtcbiAgICAgICAgdGhpcy5sb2dnZXIuaW5mbyhcbiAgICAgICAgICBgUmVtb3ZlZCBpbnZhbGlkIGJveCBbJHtib3hJZH1dIGluIGluaXRpYWxpemF0aW9uIHZhbGlkYXRpb25gLFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICAvKipcbiAgICogUmV0dXJuIGV4dHJhY3RlZCBwZXJtaXQgZnJvbSBhIGJveFxuICAgKiBAcGFyYW0gYm94SWRcbiAgICovXG4gIGdldFBlcm1pdFdpdGhCb3hJZCA9IGFzeW5jIChcbiAgICBib3hJZDogc3RyaW5nLFxuICApOiBQcm9taXNlPEV4dHJhY3RlZFBlcm1pdCB8IHVuZGVmaW5lZD4gPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBib3ggPSBhd2FpdCB0aGlzLmV4cGxvcmVyQXBpLnYxLmdldEFwaVYxQm94ZXNQMShib3hJZCk7XG4gICAgICByZXR1cm4gKGF3YWl0IHRoaXMuZXh0cmFjdFBlcm1pdERhdGEoW2JveF0pKVswXTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHRoaXMubG9nZ2VyLndhcm4oYFBlcm1pdCB3aXRoIGJveElkICR7Ym94SWR9IGRvZXMgbm90IGV4aXN0YCk7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgfTtcblxuICAvKipcbiAgICogUmV0dXJuIGFsbCB1bnNwZW50IHBlcm1pdHNcbiAgICogQHBhcmFtIGluaXRpYWxIZWlnaHRcbiAgICogQHJldHVybnNcbiAgICovXG4gIGdldEFsbFVuc3BlbnRQZXJtaXRzID0gYXN5bmMgKFxuICAgIGluaXRpYWxIZWlnaHQ6IG51bWJlcixcbiAgKTogUHJvbWlzZTxBcnJheTxFeHRyYWN0ZWRQZXJtaXQ+PiA9PiB7XG4gICAgbGV0IGV4dHJhY3RlZEJveGVzOiBBcnJheTxFeHRyYWN0ZWRQZXJtaXQ+ID0gW107XG4gICAgbGV0IG9mZnNldCA9IDAsXG4gICAgICB0b3RhbCA9IERlZmF1bHRBcGlMaW1pdDtcbiAgICB3aGlsZSAob2Zmc2V0IDwgdG90YWwpIHtcbiAgICAgIGNvbnN0IGJveGVzID0gYXdhaXQgdGhpcy5leHBsb3JlckFwaS52MS5nZXRBcGlWMUJveGVzVW5zcGVudEJ5ZXJnb3RyZWVQMShcbiAgICAgICAgdGhpcy5wZXJtaXRFcmdvVHJlZSxcbiAgICAgICAgeyBvZmZzZXQ6IG9mZnNldCwgbGltaXQ6IERlZmF1bHRBcGlMaW1pdCB9LFxuICAgICAgKTtcbiAgICAgIGlmICghYm94ZXMuaXRlbXMpIHtcbiAgICAgICAgdGhpcy5sb2dnZXIud2FybignRXhwbG9yZXIgYXBpIG91dHB1dCBpdGVtcyBzaG91bGQgbm90IGJlIHVuZGVmaW5lZC4nKTtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbmNvcnJlY3QgZXhwbG9yZXIgYXBpIG91dHB1dCcpO1xuICAgICAgfVxuICAgICAgY29uc3QgZmlsdGVyZWRCb3hlcyA9IGF3YWl0IHRoaXMuZXh0cmFjdFBlcm1pdERhdGEoXG4gICAgICAgIGJveGVzLml0ZW1zLmZpbHRlcihcbiAgICAgICAgICAoYm94KSA9PiBib3guY3JlYXRpb25IZWlnaHQgJiYgYm94LmNyZWF0aW9uSGVpZ2h0IDwgaW5pdGlhbEhlaWdodCxcbiAgICAgICAgKSxcbiAgICAgICk7XG4gICAgICBleHRyYWN0ZWRCb3hlcyA9IFsuLi5leHRyYWN0ZWRCb3hlcywgLi4uZmlsdGVyZWRCb3hlc107XG4gICAgICB0b3RhbCA9IGJveGVzLnRvdGFsO1xuICAgICAgb2Zmc2V0ICs9IERlZmF1bHRBcGlMaW1pdDtcbiAgICB9XG4gICAgcmV0dXJuIGV4dHJhY3RlZEJveGVzO1xuICB9O1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGJsb2NrIGluZm9ybWF0aW9uIG9mIHR4XG4gICAqIEBwYXJhbSB0eElkXG4gICAqL1xuICBnZXRUeEJsb2NrID0gYXN5bmMgKHR4SWQ6IHN0cmluZykgPT4ge1xuICAgIGNvbnN0IHR4ID0gYXdhaXQgdGhpcy5leHBsb3JlckFwaS52MS5nZXRBcGlWMVRyYW5zYWN0aW9uc1AxKHR4SWQpO1xuICAgIHJldHVybiB7XG4gICAgICBpZDogdHguYmxvY2tJZCxcbiAgICAgIGhlaWdodDogdHguaW5jbHVzaW9uSGVpZ2h0LFxuICAgIH07XG4gIH07XG5cbiAgLyoqXG4gICAqIEV4dHJhY3QgcGVybWl0IGRhdGEgZnJvbSBqc29uIGJveGVzXG4gICAqIGFuZCBmaWx0ZXIgdG8gZml0IGluIGEgc3BlY2lmaWVkIGhlaWdodCByYW5nZVxuICAgKiBAcGFyYW0gYm94ZXNcbiAgICogQHBhcmFtIHRvSGVpZ2h0XG4gICAqIEBwYXJhbSBoZWlnaHREaWZmZXJlbmNlXG4gICAqIEByZXR1cm5zIGV4dHJhY3RlZCBwZXJtaXRcbiAgICovXG4gIGV4dHJhY3RQZXJtaXREYXRhID0gYXN5bmMgKGJveGVzOiBBcnJheTxWMS5PdXRwdXRJbmZvPikgPT4ge1xuICAgIGNvbnN0IGV4dHJhY3RlZEJveGVzOiBBcnJheTxFeHRyYWN0ZWRQZXJtaXQ+ID0gW107XG4gICAgZm9yIChjb25zdCBib3hKc29uIG9mIGJveGVzKSB7XG4gICAgICBjb25zdCBib3ggPSBlcmdvTGliLkVyZ29Cb3guZnJvbV9qc29uKEpzb25CSS5zdHJpbmdpZnkoYm94SnNvbikpO1xuICAgICAgY29uc3QgcjQgPSBib3gucmVnaXN0ZXJfdmFsdWUoNCk7XG4gICAgICBpZiAocjQpIHtcbiAgICAgICAgY29uc3QgUjRTZXJpYWxpemVkID0gcjQudG9fYnl0ZV9hcnJheSgpO1xuICAgICAgICBsZXQgc3BlbmRCbG9jaywgc3BlbmRIZWlnaHQ7XG4gICAgICAgIGlmIChib3hKc29uLnNwZW50VHJhbnNhY3Rpb25JZCkge1xuICAgICAgICAgIGNvbnN0IGJsb2NrID0gYXdhaXQgdGhpcy5nZXRUeEJsb2NrKGJveEpzb24uc3BlbnRUcmFuc2FjdGlvbklkKTtcbiAgICAgICAgICBzcGVuZEJsb2NrID0gYmxvY2suaWQ7XG4gICAgICAgICAgc3BlbmRIZWlnaHQgPSBibG9jay5oZWlnaHQ7XG4gICAgICAgIH1cbiAgICAgICAgZXh0cmFjdGVkQm94ZXMucHVzaCh7XG4gICAgICAgICAgYm94SWQ6IGJveC5ib3hfaWQoKS50b19zdHIoKSxcbiAgICAgICAgICBib3hTZXJpYWxpemVkOiBCdWZmZXIuZnJvbShib3guc2lnbWFfc2VyaWFsaXplX2J5dGVzKCkpLnRvU3RyaW5nKFxuICAgICAgICAgICAgJ2Jhc2U2NCcsXG4gICAgICAgICAgKSxcbiAgICAgICAgICBibG9jazogYm94SnNvbi5ibG9ja0lkLFxuICAgICAgICAgIGhlaWdodDogYm94SnNvbi5zZXR0bGVtZW50SGVpZ2h0LFxuICAgICAgICAgIFdJRDogQnVmZmVyLmZyb20oUjRTZXJpYWxpemVkKS50b1N0cmluZygnaGV4JyksXG4gICAgICAgICAgdHhJZDogYm94LnR4X2lkKCkudG9fc3RyKCksXG4gICAgICAgICAgc3BlbmRCbG9jazogc3BlbmRCbG9jayxcbiAgICAgICAgICBzcGVuZEhlaWdodDogc3BlbmRIZWlnaHQsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZXh0cmFjdGVkQm94ZXM7XG4gIH07XG59XG5cbmV4cG9ydCBkZWZhdWx0IFBlcm1pdEV4dHJhY3RvcjtcbiJdfQ==
|
|
@@ -1,13 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { AbstractEntityData } from '@rosen-bridge/abstract-extractor';
|
|
2
|
+
export interface ExtractedCollateral extends AbstractEntityData {
|
|
3
|
+
txId: string;
|
|
4
4
|
wid: string;
|
|
5
5
|
rwtCount: bigint;
|
|
6
|
-
txId: string;
|
|
7
|
-
block: string;
|
|
8
|
-
height: number;
|
|
9
6
|
spendBlock?: string | null;
|
|
10
7
|
spendHeight?: number | null;
|
|
11
|
-
spendTxId?: string | null;
|
|
12
8
|
}
|
|
13
9
|
//# sourceMappingURL=extractedCollateral.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extractedCollateral.d.ts","sourceRoot":"","sources":["../../lib/interfaces/extractedCollateral.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"extractedCollateral.d.ts","sourceRoot":"","sources":["../../lib/interfaces/extractedCollateral.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAEtE,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB;IAC7D,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0cmFjdGVkQ29sbGF0ZXJhbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi9pbnRlcmZhY2VzL2V4dHJhY3RlZENvbGxhdGVyYWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0RW50aXR5RGF0YSB9IGZyb20gJ0Byb3Nlbi1icmlkZ2UvYWJzdHJhY3QtZXh0cmFjdG9yJztcblxuZXhwb3J0IGludGVyZmFjZSBFeHRyYWN0ZWRDb2xsYXRlcmFsIGV4dGVuZHMgQWJzdHJhY3RFbnRpdHlEYXRhIHtcbiAgdHhJZDogc3RyaW5nO1xuICB3aWQ6IHN0cmluZztcbiAgcnd0Q291bnQ6IGJpZ2ludDtcbiAgc3BlbmRCbG9jaz86IHN0cmluZyB8IG51bGw7XG4gIHNwZW5kSGVpZ2h0PzogbnVtYmVyIHwgbnVsbDtcbn1cbiJdfQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extractedEventTrigger.d.ts","sourceRoot":"","sources":["../../lib/interfaces/extractedEventTrigger.ts"],"names":[],"mappings":"AAAA,UAAU,qBAAqB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,
|
|
1
|
+
{"version":3,"file":"extractedEventTrigger.d.ts","sourceRoot":"","sources":["../../lib/interfaces/extractedEventTrigger.ts"],"names":[],"mappings":"AAAA,UAAU,qBAAqB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,OAAO,EAAE,qBAAqB,EAAE,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0cmFjdGVkRXZlbnRUcmlnZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbGliL2ludGVyZmFjZXMvZXh0cmFjdGVkRXZlbnRUcmlnZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbnRlcmZhY2UgRXh0cmFjdGVkRXZlbnRUcmlnZ2VyIHtcbiAgZXZlbnRJZDogc3RyaW5nO1xuICB0eElkOiBzdHJpbmc7XG4gIGlkZW50aWZpZXI6IHN0cmluZztcbiAgc2VyaWFsaXplZDogc3RyaW5nO1xuICBmcm9tQ2hhaW46IHN0cmluZztcbiAgdG9DaGFpbjogc3RyaW5nO1xuICBmcm9tQWRkcmVzczogc3RyaW5nO1xuICB0b0FkZHJlc3M6IHN0cmluZztcbiAgYW1vdW50OiBzdHJpbmc7XG4gIGJyaWRnZUZlZTogc3RyaW5nO1xuICBuZXR3b3JrRmVlOiBzdHJpbmc7XG4gIHNvdXJjZUNoYWluVG9rZW5JZDogc3RyaW5nO1xuICB0YXJnZXRDaGFpblRva2VuSWQ6IHN0cmluZztcbiAgc291cmNlQmxvY2tJZDogc3RyaW5nO1xuICBzb3VyY2VUeElkOiBzdHJpbmc7XG4gIFdJRHNDb3VudDogbnVtYmVyO1xuICBXSURzSGFzaDogc3RyaW5nO1xuICBzb3VyY2VDaGFpbkhlaWdodDogbnVtYmVyO1xufVxuXG5leHBvcnQgeyBFeHRyYWN0ZWRFdmVudFRyaWdnZXIgfTtcbiJdfQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/migrations/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/migrations/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAS5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAW1E,eAAO,MAAM,UAAU;;;CAwBtB,CAAC"}
|
package/dist/migrations/index.js
CHANGED
|
@@ -5,6 +5,8 @@ import { migration1706610773315 } from './postgres/1706610773315-migration';
|
|
|
5
5
|
import { Migration1709388482275 } from './postgres/1709388482275-migration';
|
|
6
6
|
import { Migration1737785036299 } from './postgres/1737785036299-migration';
|
|
7
7
|
import { migration1746354253000 } from './postgres/1746354253000-migration';
|
|
8
|
+
import { Migration1758958886549 } from './postgres/1758958886549-migration';
|
|
9
|
+
import { Migration1766843825000 } from './postgres/1766843825000-migration';
|
|
8
10
|
import { migration1688555766601 } from './sqlite/1688555766601-migration';
|
|
9
11
|
import { migration1689175103163 } from './sqlite/1689175103163-migration';
|
|
10
12
|
import { migration1699872205117 } from './sqlite/1699872205117-migration';
|
|
@@ -13,6 +15,8 @@ import { Migration1709388134975 } from './sqlite/1709388134975-migration';
|
|
|
13
15
|
import { Migration1737547743177 } from './sqlite/1737547743177-migration';
|
|
14
16
|
import { migration1746354254000 } from './sqlite/1746354254000-migration';
|
|
15
17
|
import { migration1761774736153 } from './sqlite/1761774736153-migration';
|
|
18
|
+
import { Migration1762768664031 } from './sqlite/1762768664031-migration';
|
|
19
|
+
import { Migration1766843824000 } from './sqlite/1766843824000-migration';
|
|
16
20
|
export const migrations = {
|
|
17
21
|
sqlite: [
|
|
18
22
|
migration1688555766601,
|
|
@@ -23,6 +27,8 @@ export const migrations = {
|
|
|
23
27
|
Migration1737547743177,
|
|
24
28
|
migration1746354254000,
|
|
25
29
|
migration1761774736153,
|
|
30
|
+
Migration1762768664031,
|
|
31
|
+
Migration1766843824000,
|
|
26
32
|
],
|
|
27
33
|
postgres: [
|
|
28
34
|
migration1688554842087,
|
|
@@ -32,6 +38,8 @@ export const migrations = {
|
|
|
32
38
|
Migration1709388482275,
|
|
33
39
|
Migration1737785036299,
|
|
34
40
|
migration1746354253000,
|
|
41
|
+
Migration1758958886549,
|
|
42
|
+
Migration1766843825000,
|
|
35
43
|
],
|
|
36
44
|
};
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvbWlncmF0aW9ucy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUUxRSxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUc7SUFDeEIsTUFBTSxFQUFFO1FBQ04sc0JBQXNCO1FBQ3RCLHNCQUFzQjtRQUN0QixzQkFBc0I7UUFDdEIsc0JBQXNCO1FBQ3RCLHNCQUFzQjtRQUN0QixzQkFBc0I7UUFDdEIsc0JBQXNCO1FBQ3RCLHNCQUFzQjtRQUN0QixzQkFBc0I7UUFDdEIsc0JBQXNCO0tBQ3ZCO0lBQ0QsUUFBUSxFQUFFO1FBQ1Isc0JBQXNCO1FBQ3RCLHNCQUFzQjtRQUN0QixzQkFBc0I7UUFDdEIsc0JBQXNCO1FBQ3RCLHNCQUFzQjtRQUN0QixzQkFBc0I7UUFDdEIsc0JBQXNCO1FBQ3RCLHNCQUFzQjtRQUN0QixzQkFBc0I7S0FDdkI7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbWlncmF0aW9uMTY4ODU1NDg0MjA4NyB9IGZyb20gJy4vcG9zdGdyZXMvMTY4ODU1NDg0MjA4Ny1taWdyYXRpb24nO1xuaW1wb3J0IHsgbWlncmF0aW9uMTY4OTE3NTk3NDI1NyB9IGZyb20gJy4vcG9zdGdyZXMvMTY4OTE3NTk3NDI1Ny1taWdyYXRpb24nO1xuaW1wb3J0IHsgbWlncmF0aW9uMTY5OTg3NDQ0NzkyOCB9IGZyb20gJy4vcG9zdGdyZXMvMTY5OTg3NDQ0NzkyOC1taWdyYXRpb24nO1xuaW1wb3J0IHsgbWlncmF0aW9uMTcwNjYxMDc3MzMxNSB9IGZyb20gJy4vcG9zdGdyZXMvMTcwNjYxMDc3MzMxNS1taWdyYXRpb24nO1xuaW1wb3J0IHsgTWlncmF0aW9uMTcwOTM4ODQ4MjI3NSB9IGZyb20gJy4vcG9zdGdyZXMvMTcwOTM4ODQ4MjI3NS1taWdyYXRpb24nO1xuaW1wb3J0IHsgTWlncmF0aW9uMTczNzc4NTAzNjI5OSB9IGZyb20gJy4vcG9zdGdyZXMvMTczNzc4NTAzNjI5OS1taWdyYXRpb24nO1xuaW1wb3J0IHsgbWlncmF0aW9uMTc0NjM1NDI1MzAwMCB9IGZyb20gJy4vcG9zdGdyZXMvMTc0NjM1NDI1MzAwMC1taWdyYXRpb24nO1xuaW1wb3J0IHsgTWlncmF0aW9uMTc1ODk1ODg4NjU0OSB9IGZyb20gJy4vcG9zdGdyZXMvMTc1ODk1ODg4NjU0OS1taWdyYXRpb24nO1xuaW1wb3J0IHsgTWlncmF0aW9uMTc2Njg0MzgyNTAwMCB9IGZyb20gJy4vcG9zdGdyZXMvMTc2Njg0MzgyNTAwMC1taWdyYXRpb24nO1xuaW1wb3J0IHsgbWlncmF0aW9uMTY4ODU1NTc2NjYwMSB9IGZyb20gJy4vc3FsaXRlLzE2ODg1NTU3NjY2MDEtbWlncmF0aW9uJztcbmltcG9ydCB7IG1pZ3JhdGlvbjE2ODkxNzUxMDMxNjMgfSBmcm9tICcuL3NxbGl0ZS8xNjg5MTc1MTAzMTYzLW1pZ3JhdGlvbic7XG5pbXBvcnQgeyBtaWdyYXRpb24xNjk5ODcyMjA1MTE3IH0gZnJvbSAnLi9zcWxpdGUvMTY5OTg3MjIwNTExNy1taWdyYXRpb24nO1xuaW1wb3J0IHsgbWlncmF0aW9uMTcwNjYxMDc3MzE3NiB9IGZyb20gJy4vc3FsaXRlLzE3MDY2MTA3NzMxNzYtbWlncmF0aW9uJztcbmltcG9ydCB7IE1pZ3JhdGlvbjE3MDkzODgxMzQ5NzUgfSBmcm9tICcuL3NxbGl0ZS8xNzA5Mzg4MTM0OTc1LW1pZ3JhdGlvbic7XG5pbXBvcnQgeyBNaWdyYXRpb24xNzM3NTQ3NzQzMTc3IH0gZnJvbSAnLi9zcWxpdGUvMTczNzU0Nzc0MzE3Ny1taWdyYXRpb24nO1xuaW1wb3J0IHsgbWlncmF0aW9uMTc0NjM1NDI1NDAwMCB9IGZyb20gJy4vc3FsaXRlLzE3NDYzNTQyNTQwMDAtbWlncmF0aW9uJztcbmltcG9ydCB7IG1pZ3JhdGlvbjE3NjE3NzQ3MzYxNTMgfSBmcm9tICcuL3NxbGl0ZS8xNzYxNzc0NzM2MTUzLW1pZ3JhdGlvbic7XG5pbXBvcnQgeyBNaWdyYXRpb24xNzYyNzY4NjY0MDMxIH0gZnJvbSAnLi9zcWxpdGUvMTc2Mjc2ODY2NDAzMS1taWdyYXRpb24nO1xuaW1wb3J0IHsgTWlncmF0aW9uMTc2Njg0MzgyNDAwMCB9IGZyb20gJy4vc3FsaXRlLzE3NjY4NDM4MjQwMDAtbWlncmF0aW9uJztcblxuZXhwb3J0IGNvbnN0IG1pZ3JhdGlvbnMgPSB7XG4gIHNxbGl0ZTogW1xuICAgIG1pZ3JhdGlvbjE2ODg1NTU3NjY2MDEsXG4gICAgbWlncmF0aW9uMTY4OTE3NTEwMzE2MyxcbiAgICBtaWdyYXRpb24xNjk5ODcyMjA1MTE3LFxuICAgIG1pZ3JhdGlvbjE3MDY2MTA3NzMxNzYsXG4gICAgTWlncmF0aW9uMTcwOTM4ODEzNDk3NSxcbiAgICBNaWdyYXRpb24xNzM3NTQ3NzQzMTc3LFxuICAgIG1pZ3JhdGlvbjE3NDYzNTQyNTQwMDAsXG4gICAgbWlncmF0aW9uMTc2MTc3NDczNjE1MyxcbiAgICBNaWdyYXRpb24xNzYyNzY4NjY0MDMxLFxuICAgIE1pZ3JhdGlvbjE3NjY4NDM4MjQwMDAsXG4gIF0sXG4gIHBvc3RncmVzOiBbXG4gICAgbWlncmF0aW9uMTY4ODU1NDg0MjA4NyxcbiAgICBtaWdyYXRpb24xNjg5MTc1OTc0MjU3LFxuICAgIG1pZ3JhdGlvbjE2OTk4NzQ0NDc5MjgsXG4gICAgbWlncmF0aW9uMTcwNjYxMDc3MzMxNSxcbiAgICBNaWdyYXRpb24xNzA5Mzg4NDgyMjc1LFxuICAgIE1pZ3JhdGlvbjE3Mzc3ODUwMzYyOTksXG4gICAgbWlncmF0aW9uMTc0NjM1NDI1MzAwMCxcbiAgICBNaWdyYXRpb24xNzU4OTU4ODg2NTQ5LFxuICAgIE1pZ3JhdGlvbjE3NjY4NDM4MjUwMDAsXG4gIF0sXG59O1xuIl19
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { MigrationInterface, QueryRunner } from '@rosen-bridge/extended-typeorm';
|
|
2
|
+
export declare class Migration1758958886549 implements MigrationInterface {
|
|
3
|
+
name: string;
|
|
4
|
+
up(queryRunner: QueryRunner): Promise<void>;
|
|
5
|
+
down(queryRunner: QueryRunner): Promise<void>;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=1758958886549-migration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"1758958886549-migration.d.ts","sourceRoot":"","sources":["../../../lib/migrations/postgres/1758958886549-migration.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,WAAW,EACZ,MAAM,gCAAgC,CAAC;AAExC,qBAAa,sBAAuB,YAAW,kBAAkB;IAC/D,IAAI,SAA4B;IAEnB,EAAE,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAc3C,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAa3D"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export class Migration1758958886549 {
|
|
2
|
+
name = 'Migration1758958886549';
|
|
3
|
+
async up(queryRunner) {
|
|
4
|
+
await queryRunner.query(`
|
|
5
|
+
ALTER TABLE "event_trigger_entity" DROP CONSTRAINT "UQ_c905f221a1b6271ca4405dbbe5f"
|
|
6
|
+
`);
|
|
7
|
+
await queryRunner.query(`
|
|
8
|
+
ALTER TABLE "event_trigger_entity"
|
|
9
|
+
RENAME COLUMN "boxId" TO "identifier"
|
|
10
|
+
`);
|
|
11
|
+
await queryRunner.query(`
|
|
12
|
+
ALTER TABLE "event_trigger_entity"
|
|
13
|
+
ADD CONSTRAINT "UQ_d88f2963a5dacea7b163f134100" UNIQUE ("identifier", "extractor")
|
|
14
|
+
`);
|
|
15
|
+
}
|
|
16
|
+
async down(queryRunner) {
|
|
17
|
+
await queryRunner.query(`
|
|
18
|
+
ALTER TABLE "event_trigger_entity" DROP CONSTRAINT "UQ_d88f2963a5dacea7b163f134100"
|
|
19
|
+
`);
|
|
20
|
+
await queryRunner.query(`
|
|
21
|
+
ALTER TABLE "event_trigger_entity"
|
|
22
|
+
RENAME COLUMN "identifier" TO "boxId"
|
|
23
|
+
`);
|
|
24
|
+
await queryRunner.query(`
|
|
25
|
+
ALTER TABLE "event_trigger_entity"
|
|
26
|
+
ADD CONSTRAINT "UQ_c905f221a1b6271ca4405dbbe5f" UNIQUE ("extractor", "boxId")
|
|
27
|
+
`);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMTc1ODk1ODg4NjU0OS1taWdyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvbWlncmF0aW9ucy9wb3N0Z3Jlcy8xNzU4OTU4ODg2NTQ5LW1pZ3JhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLElBQUksR0FBRyx3QkFBd0IsQ0FBQztJQUV6QixLQUFLLENBQUMsRUFBRSxDQUFDLFdBQXdCO1FBQ3RDLE1BQU0sV0FBVyxDQUFDLEtBQUssQ0FBQzs7U0FFbkIsQ0FBQyxDQUFDO1FBQ1AsTUFBTSxXQUFXLENBQUMsS0FBSyxDQUFDOzs7U0FHbkIsQ0FBQyxDQUFDO1FBQ1AsTUFBTSxXQUFXLENBQUMsS0FBSyxDQUFDOzs7U0FHbkIsQ0FBQyxDQUFDO0lBQ1QsQ0FBQztJQUVNLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBd0I7UUFDeEMsTUFBTSxXQUFXLENBQUMsS0FBSyxDQUFDOztTQUVuQixDQUFDLENBQUM7UUFDUCxNQUFNLFdBQVcsQ0FBQyxLQUFLLENBQUM7OztTQUduQixDQUFDLENBQUM7UUFDUCxNQUFNLFdBQVcsQ0FBQyxLQUFLLENBQUM7OztTQUduQixDQUFDLENBQUM7SUFDVCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBNaWdyYXRpb25JbnRlcmZhY2UsXG4gIFF1ZXJ5UnVubmVyLFxufSBmcm9tICdAcm9zZW4tYnJpZGdlL2V4dGVuZGVkLXR5cGVvcm0nO1xuXG5leHBvcnQgY2xhc3MgTWlncmF0aW9uMTc1ODk1ODg4NjU0OSBpbXBsZW1lbnRzIE1pZ3JhdGlvbkludGVyZmFjZSB7XG4gIG5hbWUgPSAnTWlncmF0aW9uMTc1ODk1ODg4NjU0OSc7XG5cbiAgcHVibGljIGFzeW5jIHVwKHF1ZXJ5UnVubmVyOiBRdWVyeVJ1bm5lcik6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHF1ZXJ5UnVubmVyLnF1ZXJ5KGBcbiAgICAgICAgICAgIEFMVEVSIFRBQkxFIFwiZXZlbnRfdHJpZ2dlcl9lbnRpdHlcIiBEUk9QIENPTlNUUkFJTlQgXCJVUV9jOTA1ZjIyMWExYjYyNzFjYTQ0MDVkYmJlNWZcIlxuICAgICAgICBgKTtcbiAgICBhd2FpdCBxdWVyeVJ1bm5lci5xdWVyeShgXG4gICAgICAgICAgICBBTFRFUiBUQUJMRSBcImV2ZW50X3RyaWdnZXJfZW50aXR5XCJcbiAgICAgICAgICAgICAgICBSRU5BTUUgQ09MVU1OIFwiYm94SWRcIiBUTyBcImlkZW50aWZpZXJcIlxuICAgICAgICBgKTtcbiAgICBhd2FpdCBxdWVyeVJ1bm5lci5xdWVyeShgXG4gICAgICAgICAgICBBTFRFUiBUQUJMRSBcImV2ZW50X3RyaWdnZXJfZW50aXR5XCJcbiAgICAgICAgICAgIEFERCBDT05TVFJBSU5UIFwiVVFfZDg4ZjI5NjNhNWRhY2VhN2IxNjNmMTM0MTAwXCIgVU5JUVVFIChcImlkZW50aWZpZXJcIiwgXCJleHRyYWN0b3JcIilcbiAgICAgICAgYCk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZG93bihxdWVyeVJ1bm5lcjogUXVlcnlSdW5uZXIpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCBxdWVyeVJ1bm5lci5xdWVyeShgXG4gICAgICAgICAgICBBTFRFUiBUQUJMRSBcImV2ZW50X3RyaWdnZXJfZW50aXR5XCIgRFJPUCBDT05TVFJBSU5UIFwiVVFfZDg4ZjI5NjNhNWRhY2VhN2IxNjNmMTM0MTAwXCJcbiAgICAgICAgYCk7XG4gICAgYXdhaXQgcXVlcnlSdW5uZXIucXVlcnkoYFxuICAgICAgICAgICAgQUxURVIgVEFCTEUgXCJldmVudF90cmlnZ2VyX2VudGl0eVwiXG4gICAgICAgICAgICAgICAgUkVOQU1FIENPTFVNTiBcImlkZW50aWZpZXJcIiBUTyBcImJveElkXCJcbiAgICAgICAgYCk7XG4gICAgYXdhaXQgcXVlcnlSdW5uZXIucXVlcnkoYFxuICAgICAgICAgICAgQUxURVIgVEFCTEUgXCJldmVudF90cmlnZ2VyX2VudGl0eVwiXG4gICAgICAgICAgICBBREQgQ09OU1RSQUlOVCBcIlVRX2M5MDVmMjIxYTFiNjI3MWNhNDQwNWRiYmU1ZlwiIFVOSVFVRSAoXCJleHRyYWN0b3JcIiwgXCJib3hJZFwiKVxuICAgICAgICBgKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { MigrationInterface, QueryRunner } from '@rosen-bridge/extended-typeorm';
|
|
2
|
+
export declare class Migration1766843825000 implements MigrationInterface {
|
|
3
|
+
name: string;
|
|
4
|
+
up(queryRunner: QueryRunner): Promise<void>;
|
|
5
|
+
down(queryRunner: QueryRunner): Promise<void>;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=1766843825000-migration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"1766843825000-migration.d.ts","sourceRoot":"","sources":["../../../lib/migrations/postgres/1766843825000-migration.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,WAAW,EACZ,MAAM,gCAAgC,CAAC;AAExC,qBAAa,sBAAuB,YAAW,kBAAkB;IAC/D,IAAI,SAA4B;IAEnB,EAAE,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB3C,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAmB3D"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export class Migration1766843825000 {
|
|
2
|
+
name = 'Migration1766843825000';
|
|
3
|
+
async up(queryRunner) {
|
|
4
|
+
await queryRunner.query(`
|
|
5
|
+
ALTER TABLE "collateral_entity" RENAME COLUMN "boxId" TO "identifier"
|
|
6
|
+
`);
|
|
7
|
+
await queryRunner.query(`
|
|
8
|
+
ALTER TABLE "collateral_entity" RENAME COLUMN "boxSerialized" TO "serialized"
|
|
9
|
+
`);
|
|
10
|
+
await queryRunner.query(`
|
|
11
|
+
ALTER TABLE "collateral_entity"
|
|
12
|
+
DROP CONSTRAINT "UQ_2d4abc2071df9a2300a5e1b4616"
|
|
13
|
+
`);
|
|
14
|
+
await queryRunner.query(`
|
|
15
|
+
ALTER TABLE "collateral_entity"
|
|
16
|
+
ADD CONSTRAINT "UQ_2c1e30eb6bd637e71efd9ca683e" UNIQUE ("identifier", "extractor")
|
|
17
|
+
`);
|
|
18
|
+
await queryRunner.query(`
|
|
19
|
+
ALTER TABLE "collateral_entity" DROP COLUMN "spendTxId"
|
|
20
|
+
`);
|
|
21
|
+
}
|
|
22
|
+
async down(queryRunner) {
|
|
23
|
+
await queryRunner.query(`
|
|
24
|
+
ALTER TABLE "collateral_entity" RENAME COLUMN "identifier" TO "boxId"
|
|
25
|
+
`);
|
|
26
|
+
await queryRunner.query(`
|
|
27
|
+
ALTER TABLE "collateral_entity" RENAME COLUMN "serialized" TO "boxSerialized"
|
|
28
|
+
`);
|
|
29
|
+
await queryRunner.query(`
|
|
30
|
+
ALTER TABLE "collateral_entity"
|
|
31
|
+
DROP CONSTRAINT "UQ_2c1e30eb6bd637e71efd9ca683e"
|
|
32
|
+
`);
|
|
33
|
+
await queryRunner.query(`
|
|
34
|
+
ALTER TABLE "collateral_entity"
|
|
35
|
+
ADD CONSTRAINT "UQ_2d4abc2071df9a2300a5e1b4616" UNIQUE ("boxId", "extractor")
|
|
36
|
+
`);
|
|
37
|
+
await queryRunner.query(`
|
|
38
|
+
ALTER TABLE "collateral_entity" ADD COLUMN "spendTxId" character varying
|
|
39
|
+
`);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMTc2Njg0MzgyNTAwMC1taWdyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvbWlncmF0aW9ucy9wb3N0Z3Jlcy8xNzY2ODQzODI1MDAwLW1pZ3JhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLElBQUksR0FBRyx3QkFBd0IsQ0FBQztJQUV6QixLQUFLLENBQUMsRUFBRSxDQUFDLFdBQXdCO1FBQ3RDLE1BQU0sV0FBVyxDQUFDLEtBQUssQ0FBQzs7U0FFbkIsQ0FBQyxDQUFDO1FBQ1AsTUFBTSxXQUFXLENBQUMsS0FBSyxDQUFDOztTQUVuQixDQUFDLENBQUM7UUFDUCxNQUFNLFdBQVcsQ0FBQyxLQUFLLENBQUM7OztTQUduQixDQUFDLENBQUM7UUFDUCxNQUFNLFdBQVcsQ0FBQyxLQUFLLENBQUM7OztTQUduQixDQUFDLENBQUM7UUFDUCxNQUFNLFdBQVcsQ0FBQyxLQUFLLENBQUM7O1NBRW5CLENBQUMsQ0FBQztJQUNULENBQUM7SUFFTSxLQUFLLENBQUMsSUFBSSxDQUFDLFdBQXdCO1FBQ3hDLE1BQU0sV0FBVyxDQUFDLEtBQUssQ0FBQzs7U0FFbkIsQ0FBQyxDQUFDO1FBQ1AsTUFBTSxXQUFXLENBQUMsS0FBSyxDQUFDOztTQUVuQixDQUFDLENBQUM7UUFDUCxNQUFNLFdBQVcsQ0FBQyxLQUFLLENBQUM7OztTQUduQixDQUFDLENBQUM7UUFDUCxNQUFNLFdBQVcsQ0FBQyxLQUFLLENBQUM7OztTQUduQixDQUFDLENBQUM7UUFDUCxNQUFNLFdBQVcsQ0FBQyxLQUFLLENBQUM7O1NBRW5CLENBQUMsQ0FBQztJQUNULENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIE1pZ3JhdGlvbkludGVyZmFjZSxcbiAgUXVlcnlSdW5uZXIsXG59IGZyb20gJ0Byb3Nlbi1icmlkZ2UvZXh0ZW5kZWQtdHlwZW9ybSc7XG5cbmV4cG9ydCBjbGFzcyBNaWdyYXRpb24xNzY2ODQzODI1MDAwIGltcGxlbWVudHMgTWlncmF0aW9uSW50ZXJmYWNlIHtcbiAgbmFtZSA9ICdNaWdyYXRpb24xNzY2ODQzODI1MDAwJztcblxuICBwdWJsaWMgYXN5bmMgdXAocXVlcnlSdW5uZXI6IFF1ZXJ5UnVubmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgcXVlcnlSdW5uZXIucXVlcnkoYFxuICAgICAgICAgICAgQUxURVIgVEFCTEUgXCJjb2xsYXRlcmFsX2VudGl0eVwiIFJFTkFNRSBDT0xVTU4gXCJib3hJZFwiIFRPIFwiaWRlbnRpZmllclwiXG4gICAgICAgIGApO1xuICAgIGF3YWl0IHF1ZXJ5UnVubmVyLnF1ZXJ5KGBcbiAgICAgICAgICAgIEFMVEVSIFRBQkxFIFwiY29sbGF0ZXJhbF9lbnRpdHlcIiBSRU5BTUUgQ09MVU1OIFwiYm94U2VyaWFsaXplZFwiIFRPIFwic2VyaWFsaXplZFwiXG4gICAgICAgIGApO1xuICAgIGF3YWl0IHF1ZXJ5UnVubmVyLnF1ZXJ5KGBcbiAgICAgICAgICAgIEFMVEVSIFRBQkxFIFwiY29sbGF0ZXJhbF9lbnRpdHlcIlxuICAgICAgICAgICAgRFJPUCBDT05TVFJBSU5UIFwiVVFfMmQ0YWJjMjA3MWRmOWEyMzAwYTVlMWI0NjE2XCJcbiAgICAgICAgYCk7XG4gICAgYXdhaXQgcXVlcnlSdW5uZXIucXVlcnkoYFxuICAgICAgICAgICAgQUxURVIgVEFCTEUgXCJjb2xsYXRlcmFsX2VudGl0eVwiXG4gICAgICAgICAgICBBREQgQ09OU1RSQUlOVCBcIlVRXzJjMWUzMGViNmJkNjM3ZTcxZWZkOWNhNjgzZVwiIFVOSVFVRSAoXCJpZGVudGlmaWVyXCIsIFwiZXh0cmFjdG9yXCIpXG4gICAgICAgIGApO1xuICAgIGF3YWl0IHF1ZXJ5UnVubmVyLnF1ZXJ5KGBcbiAgICAgICAgICAgIEFMVEVSIFRBQkxFIFwiY29sbGF0ZXJhbF9lbnRpdHlcIiBEUk9QIENPTFVNTiBcInNwZW5kVHhJZFwiXG4gICAgICAgIGApO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGRvd24ocXVlcnlSdW5uZXI6IFF1ZXJ5UnVubmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgcXVlcnlSdW5uZXIucXVlcnkoYFxuICAgICAgICAgICAgQUxURVIgVEFCTEUgXCJjb2xsYXRlcmFsX2VudGl0eVwiIFJFTkFNRSBDT0xVTU4gXCJpZGVudGlmaWVyXCIgVE8gXCJib3hJZFwiXG4gICAgICAgIGApO1xuICAgIGF3YWl0IHF1ZXJ5UnVubmVyLnF1ZXJ5KGBcbiAgICAgICAgICAgIEFMVEVSIFRBQkxFIFwiY29sbGF0ZXJhbF9lbnRpdHlcIiBSRU5BTUUgQ09MVU1OIFwic2VyaWFsaXplZFwiIFRPIFwiYm94U2VyaWFsaXplZFwiXG4gICAgICAgIGApO1xuICAgIGF3YWl0IHF1ZXJ5UnVubmVyLnF1ZXJ5KGBcbiAgICAgICAgICAgIEFMVEVSIFRBQkxFIFwiY29sbGF0ZXJhbF9lbnRpdHlcIlxuICAgICAgICAgICAgRFJPUCBDT05TVFJBSU5UIFwiVVFfMmMxZTMwZWI2YmQ2MzdlNzFlZmQ5Y2E2ODNlXCJcbiAgICAgICAgYCk7XG4gICAgYXdhaXQgcXVlcnlSdW5uZXIucXVlcnkoYFxuICAgICAgICAgICAgQUxURVIgVEFCTEUgXCJjb2xsYXRlcmFsX2VudGl0eVwiXG4gICAgICAgICAgICBBREQgQ09OU1RSQUlOVCBcIlVRXzJkNGFiYzIwNzFkZjlhMjMwMGE1ZTFiNDYxNlwiIFVOSVFVRSAoXCJib3hJZFwiLCBcImV4dHJhY3RvclwiKVxuICAgICAgICBgKTtcbiAgICBhd2FpdCBxdWVyeVJ1bm5lci5xdWVyeShgXG4gICAgICAgICAgICBBTFRFUiBUQUJMRSBcImNvbGxhdGVyYWxfZW50aXR5XCIgQUREIENPTFVNTiBcInNwZW5kVHhJZFwiIGNoYXJhY3RlciB2YXJ5aW5nXG4gICAgICAgIGApO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { MigrationInterface, QueryRunner } from '@rosen-bridge/extended-typeorm';
|
|
2
|
+
export declare class Migration1762768664031 implements MigrationInterface {
|
|
3
|
+
name: string;
|
|
4
|
+
up(queryRunner: QueryRunner): Promise<void>;
|
|
5
|
+
down(queryRunner: QueryRunner): Promise<void>;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=1762768664031-migration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"1762768664031-migration.d.ts","sourceRoot":"","sources":["../../../lib/migrations/sqlite/1762768664031-migration.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,WAAW,EACZ,MAAM,gCAAgC,CAAC;AAExC,qBAAa,sBAAuB,YAAW,kBAAkB;IAC/D,IAAI,SAA4B;IAEnB,EAAE,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAqG3C,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAoG3D"}
|