@bitgo-beta/sdk-core 8.2.1-beta.1177 → 8.2.1-beta.1179
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/bitgo/config.d.ts +6 -0
- package/dist/src/bitgo/config.d.ts.map +1 -1
- package/dist/src/bitgo/walletUtil/signAccountBasedMidnightClaimMessages.d.ts.map +1 -1
- package/dist/src/bitgo/walletUtil/signAccountBasedMidnightClaimMessages.js +13 -6
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +9 -9
|
@@ -124,6 +124,9 @@ export declare const defaultConstants: (env: EnvironmentName) => {
|
|
|
124
124
|
cosmos: {
|
|
125
125
|
tokens: import("@bitgo-beta/statics").CosmosTokenConfig[];
|
|
126
126
|
};
|
|
127
|
+
ton: {
|
|
128
|
+
tokens: import("@bitgo-beta/statics").JettonTokenConfig[];
|
|
129
|
+
};
|
|
127
130
|
} | {
|
|
128
131
|
eth: {
|
|
129
132
|
tokens: import("@bitgo-beta/statics").Erc20TokenConfig[];
|
|
@@ -218,6 +221,9 @@ export declare const defaultConstants: (env: EnvironmentName) => {
|
|
|
218
221
|
cosmos: {
|
|
219
222
|
tokens: import("@bitgo-beta/statics").CosmosTokenConfig[];
|
|
220
223
|
};
|
|
224
|
+
ton: {
|
|
225
|
+
tokens: import("@bitgo-beta/statics").JettonTokenConfig[];
|
|
226
|
+
};
|
|
221
227
|
});
|
|
222
228
|
export type Config = {
|
|
223
229
|
krsProviders: Record<string, KrsProvider>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/bitgo/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAgB,MAAM,gBAAgB,CAAC;AAE/D,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvC,CAAC;AAGF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAgBpD,CAAC;AAEF,eAAO,MAAM,QAAQ;;;;;;;;CAQpB,CAAC;AAGF;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,QAAS,eAAe
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/bitgo/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAgB,MAAM,gBAAgB,CAAC;AAE/D,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvC,CAAC;AAGF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAgBpD,CAAC;AAEF,eAAO,MAAM,QAAQ;;;;;;;;CAQpB,CAAC;AAGF;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,QAAS,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOpD,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG;IACnB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;CAC3C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signAccountBasedMidnightClaimMessages.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/walletUtil/signAccountBasedMidnightClaimMessages.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"signAccountBasedMidnightClaimMessages.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/walletUtil/signAccountBasedMidnightClaimMessages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,OAAO,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAI/C,KAAK,+BAA+B,GAAG;IACrC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IACtC,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B,CAAC;AAEF,wBAAsB,yCAAyC,CAC7D,MAAM,EAAE,OAAO,EACf,mBAAmB,EAAE,mBAAmB,EACxC,kBAAkB,EAAE,MAAM,EAC1B,gBAAgB,CAAC,EAAE,MAAM,GACxB,OAAO,CAAC,+BAA+B,CAAC,CAG1C"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.bulkSignAccountBasedMidnightClaimMessages = bulkSignAccountBasedMidnightClaimMessages;
|
|
4
|
+
const wallet_1 = require("../wallet");
|
|
4
5
|
const midnightMessageProvider_1 = require("./midnightMessageProvider");
|
|
5
6
|
async function bulkSignAccountBasedMidnightClaimMessages(wallet, messageStandardType, destinationAddress, walletPassphrase) {
|
|
6
7
|
const provider = new midnightMessageProvider_1.MidnightMessageProvider(wallet, destinationAddress);
|
|
@@ -9,15 +10,21 @@ async function bulkSignAccountBasedMidnightClaimMessages(wallet, messageStandard
|
|
|
9
10
|
async function bulkSignAccountBasedMessagesWithProvider(provider, wallet, messageStandardType, walletPassphrase) {
|
|
10
11
|
const failedAddresses = [];
|
|
11
12
|
const txRequests = [];
|
|
13
|
+
// Gather all messages to process (flatten all batches)
|
|
14
|
+
let allMessages = [];
|
|
12
15
|
let messages = await provider.getMessagesAndAddressesToSign();
|
|
13
16
|
while (messages.length > 0) {
|
|
14
|
-
|
|
15
|
-
const results = await Promise.all(messages.map((messageInfo) => signOrBuildMessage(wallet, messageInfo, messageStandardType, walletPassphrase)));
|
|
16
|
-
// Process results and update counters
|
|
17
|
-
processResults(results, txRequests, failedAddresses);
|
|
18
|
-
// Get next batch of messages
|
|
17
|
+
allMessages = allMessages.concat(messages);
|
|
19
18
|
messages = await provider.getMessagesAndAddressesToSign();
|
|
20
19
|
}
|
|
20
|
+
// Extract wallet constructor params
|
|
21
|
+
const { bitgo, baseCoin, _wallet: walletData } = wallet;
|
|
22
|
+
// Process all messages in parallel, each with a new Wallet instance
|
|
23
|
+
const results = await Promise.all(allMessages.map(async (messageInfo) => {
|
|
24
|
+
const newWallet = new wallet_1.Wallet(bitgo, baseCoin, walletData);
|
|
25
|
+
return signOrBuildMessage(newWallet, messageInfo, messageStandardType, walletPassphrase);
|
|
26
|
+
}));
|
|
27
|
+
processResults(results, txRequests, failedAddresses);
|
|
21
28
|
return { failedAddresses, txRequests };
|
|
22
29
|
}
|
|
23
30
|
async function signOrBuildMessage(wallet, messageInfo, messageStandardType, walletPassphrase) {
|
|
@@ -60,4 +67,4 @@ function processResults(results, txRequests, failedAddresses) {
|
|
|
60
67
|
}
|
|
61
68
|
}
|
|
62
69
|
}
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbkFjY291bnRCYXNlZE1pZG5pZ2h0Q2xhaW1NZXNzYWdlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby93YWxsZXRVdGlsL3NpZ25BY2NvdW50QmFzZWRNaWRuaWdodENsYWltTWVzc2FnZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFVQSw4RkFRQztBQWxCRCxzQ0FBNEM7QUFFNUMsdUVBQW9FO0FBUTdELEtBQUssVUFBVSx5Q0FBeUMsQ0FDN0QsTUFBZSxFQUNmLG1CQUF3QyxFQUN4QyxrQkFBMEIsRUFDMUIsZ0JBQXlCO0lBRXpCLE1BQU0sUUFBUSxHQUFHLElBQUksaURBQXVCLENBQUMsTUFBTSxFQUFFLGtCQUFrQixDQUFDLENBQUM7SUFDekUsT0FBTyx3Q0FBd0MsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixDQUFDLENBQUM7QUFDM0csQ0FBQztBQUVELEtBQUssVUFBVSx3Q0FBd0MsQ0FDckQsUUFBMEIsRUFDMUIsTUFBZSxFQUNmLG1CQUF3QyxFQUN4QyxnQkFBeUI7SUFFekIsTUFBTSxlQUFlLEdBQWEsRUFBRSxDQUFDO0lBQ3JDLE1BQU0sVUFBVSxHQUE4QixFQUFFLENBQUM7SUFFakQsdURBQXVEO0lBQ3ZELElBQUksV0FBVyxHQUFrQixFQUFFLENBQUM7SUFDcEMsSUFBSSxRQUFRLEdBQWtCLE1BQU0sUUFBUSxDQUFDLDZCQUE2QixFQUFFLENBQUM7SUFDN0UsT0FBTyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQzNCLFdBQVcsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzNDLFFBQVEsR0FBRyxNQUFNLFFBQVEsQ0FBQyw2QkFBNkIsRUFBRSxDQUFDO0lBQzVELENBQUM7SUFFRCxvQ0FBb0M7SUFDcEMsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLE1BQWdCLENBQUM7SUFFbEUsb0VBQW9FO0lBQ3BFLE1BQU0sT0FBTyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDL0IsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsV0FBVyxFQUFFLEVBQUU7UUFDcEMsTUFBTSxTQUFTLEdBQUcsSUFBSSxlQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUMxRCxPQUFPLGtCQUFrQixDQUFDLFNBQVMsRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztJQUMzRixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0YsY0FBYyxDQUFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDckQsT0FBTyxFQUFFLGVBQWUsRUFBRSxVQUFVLEVBQUUsQ0FBQztBQUN6QyxDQUFDO0FBRUQsS0FBSyxVQUFVLGtCQUFrQixDQUMvQixNQUFlLEVBQ2YsV0FBd0IsRUFDeEIsbUJBQXdDLEVBQ3hDLGdCQUF5QjtJQUV6QixJQUFJLFdBQW1CLENBQUM7SUFDeEIsSUFBSSxnQkFBZ0IsS0FBSyxTQUFTLEVBQUUsQ0FBQztRQUNuQyxvQ0FBb0M7UUFDcEMsTUFBTSxhQUFhLEdBQUcsTUFBTSxNQUFNLENBQUMsV0FBVyxDQUFDO1lBQzdDLE9BQU8sRUFBRTtnQkFDUCxVQUFVLEVBQUUsV0FBVyxDQUFDLE9BQU87Z0JBQy9CLG1CQUFtQjtnQkFDbkIsYUFBYSxFQUFFLFdBQVcsQ0FBQyxPQUFPO2FBQ25DO1lBQ0QsZ0JBQWdCO1NBQ2pCLENBQUMsQ0FBQztRQUNILFdBQVcsR0FBRyxhQUFhLENBQUMsV0FBVyxDQUFDO0lBQzFDLENBQUM7U0FBTSxDQUFDO1FBQ04saUNBQWlDO1FBQ2pDLE1BQU0sU0FBUyxHQUFHLE1BQU0sTUFBTSxDQUFDLHVCQUF1QixDQUFDO1lBQ3JELE9BQU8sRUFBRTtnQkFDUCxVQUFVLEVBQUUsV0FBVyxDQUFDLE9BQU87Z0JBQy9CLG1CQUFtQjtnQkFDbkIsYUFBYSxFQUFFLFdBQVcsQ0FBQyxPQUFPO2FBQ25DO1NBQ0YsQ0FBQyxDQUFDO1FBQ0gsV0FBVyxHQUFHLFNBQVMsQ0FBQyxXQUFXLENBQUM7SUFDdEMsQ0FBQztJQUNELE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxXQUFXLENBQUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxDQUFDO0FBQ3RFLENBQUM7QUFFRCxTQUFTLGNBQWMsQ0FDckIsT0FBc0UsRUFDdEUsVUFBcUMsRUFDckMsZUFBeUI7SUFFekIsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUM3QixJQUFJLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNuQixVQUFVLENBQUMsSUFBSSxDQUFDO2dCQUNkLE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTztnQkFDdkIsV0FBVyxFQUFFLE1BQU0sQ0FBQyxXQUFXO2FBQ2hDLENBQUMsQ0FBQztRQUNMLENBQUM7YUFBTSxDQUFDO1lBQ04sZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkMsQ0FBQztJQUNILENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgV2FsbGV0LCBJV2FsbGV0IH0gZnJvbSAnLi4vd2FsbGV0JztcbmltcG9ydCB7IE1lc3NhZ2VTdGFuZGFyZFR5cGUgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBNaWRuaWdodE1lc3NhZ2VQcm92aWRlciB9IGZyb20gJy4vbWlkbmlnaHRNZXNzYWdlUHJvdmlkZXInO1xuaW1wb3J0IHsgSU1lc3NhZ2VQcm92aWRlciwgTWVzc2FnZUluZm8gfSBmcm9tICcuL2lNZXNzYWdlUHJvdmlkZXInO1xuXG50eXBlIEJ1bGtBY2NvdW50QmFzZWRNZXNzYWdlUmVzcG9uc2UgPSB7XG4gIHR4UmVxdWVzdHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+W107XG4gIGZhaWxlZEFkZHJlc3Nlczogc3RyaW5nW107XG59O1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gYnVsa1NpZ25BY2NvdW50QmFzZWRNaWRuaWdodENsYWltTWVzc2FnZXMoXG4gIHdhbGxldDogSVdhbGxldCxcbiAgbWVzc2FnZVN0YW5kYXJkVHlwZTogTWVzc2FnZVN0YW5kYXJkVHlwZSxcbiAgZGVzdGluYXRpb25BZGRyZXNzOiBzdHJpbmcsXG4gIHdhbGxldFBhc3NwaHJhc2U/OiBzdHJpbmdcbik6IFByb21pc2U8QnVsa0FjY291bnRCYXNlZE1lc3NhZ2VSZXNwb25zZT4ge1xuICBjb25zdCBwcm92aWRlciA9IG5ldyBNaWRuaWdodE1lc3NhZ2VQcm92aWRlcih3YWxsZXQsIGRlc3RpbmF0aW9uQWRkcmVzcyk7XG4gIHJldHVybiBidWxrU2lnbkFjY291bnRCYXNlZE1lc3NhZ2VzV2l0aFByb3ZpZGVyKHByb3ZpZGVyLCB3YWxsZXQsIG1lc3NhZ2VTdGFuZGFyZFR5cGUsIHdhbGxldFBhc3NwaHJhc2UpO1xufVxuXG5hc3luYyBmdW5jdGlvbiBidWxrU2lnbkFjY291bnRCYXNlZE1lc3NhZ2VzV2l0aFByb3ZpZGVyKFxuICBwcm92aWRlcjogSU1lc3NhZ2VQcm92aWRlcixcbiAgd2FsbGV0OiBJV2FsbGV0LFxuICBtZXNzYWdlU3RhbmRhcmRUeXBlOiBNZXNzYWdlU3RhbmRhcmRUeXBlLFxuICB3YWxsZXRQYXNzcGhyYXNlPzogc3RyaW5nXG4pOiBQcm9taXNlPEJ1bGtBY2NvdW50QmFzZWRNZXNzYWdlUmVzcG9uc2U+IHtcbiAgY29uc3QgZmFpbGVkQWRkcmVzc2VzOiBzdHJpbmdbXSA9IFtdO1xuICBjb25zdCB0eFJlcXVlc3RzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPltdID0gW107XG5cbiAgLy8gR2F0aGVyIGFsbCBtZXNzYWdlcyB0byBwcm9jZXNzIChmbGF0dGVuIGFsbCBiYXRjaGVzKVxuICBsZXQgYWxsTWVzc2FnZXM6IE1lc3NhZ2VJbmZvW10gPSBbXTtcbiAgbGV0IG1lc3NhZ2VzOiBNZXNzYWdlSW5mb1tdID0gYXdhaXQgcHJvdmlkZXIuZ2V0TWVzc2FnZXNBbmRBZGRyZXNzZXNUb1NpZ24oKTtcbiAgd2hpbGUgKG1lc3NhZ2VzLmxlbmd0aCA+IDApIHtcbiAgICBhbGxNZXNzYWdlcyA9IGFsbE1lc3NhZ2VzLmNvbmNhdChtZXNzYWdlcyk7XG4gICAgbWVzc2FnZXMgPSBhd2FpdCBwcm92aWRlci5nZXRNZXNzYWdlc0FuZEFkZHJlc3Nlc1RvU2lnbigpO1xuICB9XG5cbiAgLy8gRXh0cmFjdCB3YWxsZXQgY29uc3RydWN0b3IgcGFyYW1zXG4gIGNvbnN0IHsgYml0Z28sIGJhc2VDb2luLCBfd2FsbGV0OiB3YWxsZXREYXRhIH0gPSB3YWxsZXQgYXMgV2FsbGV0O1xuXG4gIC8vIFByb2Nlc3MgYWxsIG1lc3NhZ2VzIGluIHBhcmFsbGVsLCBlYWNoIHdpdGggYSBuZXcgV2FsbGV0IGluc3RhbmNlXG4gIGNvbnN0IHJlc3VsdHMgPSBhd2FpdCBQcm9taXNlLmFsbChcbiAgICBhbGxNZXNzYWdlcy5tYXAoYXN5bmMgKG1lc3NhZ2VJbmZvKSA9PiB7XG4gICAgICBjb25zdCBuZXdXYWxsZXQgPSBuZXcgV2FsbGV0KGJpdGdvLCBiYXNlQ29pbiwgd2FsbGV0RGF0YSk7XG4gICAgICByZXR1cm4gc2lnbk9yQnVpbGRNZXNzYWdlKG5ld1dhbGxldCwgbWVzc2FnZUluZm8sIG1lc3NhZ2VTdGFuZGFyZFR5cGUsIHdhbGxldFBhc3NwaHJhc2UpO1xuICAgIH0pXG4gICk7XG4gIHByb2Nlc3NSZXN1bHRzKHJlc3VsdHMsIHR4UmVxdWVzdHMsIGZhaWxlZEFkZHJlc3Nlcyk7XG4gIHJldHVybiB7IGZhaWxlZEFkZHJlc3NlcywgdHhSZXF1ZXN0cyB9O1xufVxuXG5hc3luYyBmdW5jdGlvbiBzaWduT3JCdWlsZE1lc3NhZ2UoXG4gIHdhbGxldDogSVdhbGxldCxcbiAgbWVzc2FnZUluZm86IE1lc3NhZ2VJbmZvLFxuICBtZXNzYWdlU3RhbmRhcmRUeXBlOiBNZXNzYWdlU3RhbmRhcmRUeXBlLFxuICB3YWxsZXRQYXNzcGhyYXNlPzogc3RyaW5nXG4pOiBQcm9taXNlPHsgc3VjY2VzczogYm9vbGVhbjsgYWRkcmVzczogc3RyaW5nOyB0eFJlcXVlc3RJZD86IHN0cmluZyB9PiB7XG4gIGxldCB0eFJlcXVlc3RJZDogc3RyaW5nO1xuICBpZiAod2FsbGV0UGFzc3BocmFzZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgLy8gU2lnbiB0aGUgbWVzc2FnZXMgd2l0aCB0aGUgd2FsbGV0XG4gICAgY29uc3Qgc2lnbmVkTWVzc2FnZSA9IGF3YWl0IHdhbGxldC5zaWduTWVzc2FnZSh7XG4gICAgICBtZXNzYWdlOiB7XG4gICAgICAgIG1lc3NhZ2VSYXc6IG1lc3NhZ2VJbmZvLm1lc3NhZ2UsXG4gICAgICAgIG1lc3NhZ2VTdGFuZGFyZFR5cGUsXG4gICAgICAgIHNpZ25lckFkZHJlc3M6IG1lc3NhZ2VJbmZvLmFkZHJlc3MsXG4gICAgICB9LFxuICAgICAgd2FsbGV0UGFzc3BocmFzZSxcbiAgICB9KTtcbiAgICB0eFJlcXVlc3RJZCA9IHNpZ25lZE1lc3NhZ2UudHhSZXF1ZXN0SWQ7XG4gIH0gZWxzZSB7XG4gICAgLy8gQnVpbGQgdGhlIHNpZ24gbWVzc2FnZSByZXF1ZXN0XG4gICAgY29uc3QgdHhSZXF1ZXN0ID0gYXdhaXQgd2FsbGV0LmJ1aWxkU2lnbk1lc3NhZ2VSZXF1ZXN0KHtcbiAgICAgIG1lc3NhZ2U6IHtcbiAgICAgICAgbWVzc2FnZVJhdzogbWVzc2FnZUluZm8ubWVzc2FnZSxcbiAgICAgICAgbWVzc2FnZVN0YW5kYXJkVHlwZSxcbiAgICAgICAgc2lnbmVyQWRkcmVzczogbWVzc2FnZUluZm8uYWRkcmVzcyxcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgdHhSZXF1ZXN0SWQgPSB0eFJlcXVlc3QudHhSZXF1ZXN0SWQ7XG4gIH1cbiAgcmV0dXJuIHsgc3VjY2VzczogdHJ1ZSwgYWRkcmVzczogbWVzc2FnZUluZm8uYWRkcmVzcywgdHhSZXF1ZXN0SWQgfTtcbn1cblxuZnVuY3Rpb24gcHJvY2Vzc1Jlc3VsdHMoXG4gIHJlc3VsdHM6IHsgc3VjY2VzczogYm9vbGVhbjsgYWRkcmVzczogc3RyaW5nOyB0eFJlcXVlc3RJZD86IHN0cmluZyB9W10sXG4gIHR4UmVxdWVzdHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+W10sXG4gIGZhaWxlZEFkZHJlc3Nlczogc3RyaW5nW11cbik6IHZvaWQge1xuICBmb3IgKGNvbnN0IHJlc3VsdCBvZiByZXN1bHRzKSB7XG4gICAgaWYgKHJlc3VsdC5zdWNjZXNzKSB7XG4gICAgICB0eFJlcXVlc3RzLnB1c2goe1xuICAgICAgICBhZGRyZXNzOiByZXN1bHQuYWRkcmVzcyxcbiAgICAgICAgdHhSZXF1ZXN0SWQ6IHJlc3VsdC50eFJlcXVlc3RJZCxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBmYWlsZWRBZGRyZXNzZXMucHVzaChyZXN1bHQuYWRkcmVzcyk7XG4gICAgfVxuICB9XG59XG4iXX0=
|