israeli-bank-scrapers-core 6.4.2 → 6.5.1
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/lib/helpers/fetch.d.ts +1 -1
- package/lib/helpers/fetch.js +1 -1
- package/lib/scrapers/base-beinleumi-group.js +20 -16
- package/lib/scrapers/base-isracard-amex.js +7 -4
- package/lib/scrapers/base-scraper-with-browser.d.ts +3 -1
- package/lib/scrapers/behatsdaa.js +8 -4
- package/lib/scrapers/beyahad-bishvilha.js +6 -3
- package/lib/scrapers/discount.js +9 -5
- package/lib/scrapers/hapoalim.js +8 -5
- package/lib/scrapers/interface.d.ts +5 -0
- package/lib/scrapers/interface.js +1 -1
- package/lib/scrapers/leumi.js +11 -8
- package/lib/scrapers/max.js +10 -6
- package/lib/scrapers/mizrahi.js +8 -4
- package/lib/scrapers/one-zero.js +6 -2
- package/lib/scrapers/union-bank.js +16 -12
- package/lib/scrapers/visa-cal.js +8 -5
- package/lib/scrapers/yahav.js +14 -10
- package/lib/transactions.d.ts +1 -0
- package/lib/transactions.js +1 -1
- package/package.json +1 -1
package/lib/scrapers/yahav.js
CHANGED
|
@@ -55,11 +55,11 @@ function getTxnAmount(txn) {
|
|
|
55
55
|
const debit = getAmountData(txn.debit);
|
|
56
56
|
return (Number.isNaN(credit) ? 0 : credit) - (Number.isNaN(debit) ? 0 : debit);
|
|
57
57
|
}
|
|
58
|
-
function convertTransactions(txns) {
|
|
58
|
+
function convertTransactions(txns, options) {
|
|
59
59
|
return txns.map(txn => {
|
|
60
60
|
const convertedDate = (0, _moment.default)(txn.date, DATE_FORMAT).toISOString();
|
|
61
61
|
const convertedAmount = getTxnAmount(txn);
|
|
62
|
-
|
|
62
|
+
const result = {
|
|
63
63
|
type: _transactions.TransactionTypes.Normal,
|
|
64
64
|
identifier: txn.reference ? parseInt(txn.reference, 10) : undefined,
|
|
65
65
|
date: convertedDate,
|
|
@@ -71,6 +71,10 @@ function convertTransactions(txns) {
|
|
|
71
71
|
description: txn.description,
|
|
72
72
|
memo: txn.memo
|
|
73
73
|
};
|
|
74
|
+
if (options?.includeRawTransaction) {
|
|
75
|
+
result.rawTransaction = txn;
|
|
76
|
+
}
|
|
77
|
+
return result;
|
|
74
78
|
});
|
|
75
79
|
}
|
|
76
80
|
function handleTransactionRow(txns, txnRow) {
|
|
@@ -89,7 +93,7 @@ function handleTransactionRow(txns, txnRow) {
|
|
|
89
93
|
};
|
|
90
94
|
txns.push(tx);
|
|
91
95
|
}
|
|
92
|
-
async function getAccountTransactions(page) {
|
|
96
|
+
async function getAccountTransactions(page, options) {
|
|
93
97
|
// Wait for transactions.
|
|
94
98
|
await (0, _elementsInteractions.waitUntilElementFound)(page, '.under-line-txn-table-header', true);
|
|
95
99
|
const txns = [];
|
|
@@ -102,7 +106,7 @@ async function getAccountTransactions(page) {
|
|
|
102
106
|
for (const txnRow of transactionsDivs) {
|
|
103
107
|
handleTransactionRow(txns, txnRow);
|
|
104
108
|
}
|
|
105
|
-
return convertTransactions(txns);
|
|
109
|
+
return convertTransactions(txns, options);
|
|
106
110
|
}
|
|
107
111
|
|
|
108
112
|
// Manipulate the calendar drop down to choose the txs start date.
|
|
@@ -165,22 +169,22 @@ async function searchByDates(page, startDate) {
|
|
|
165
169
|
}
|
|
166
170
|
}
|
|
167
171
|
}
|
|
168
|
-
async function fetchAccountData(page, startDate, accountID) {
|
|
172
|
+
async function fetchAccountData(page, startDate, accountID, options) {
|
|
169
173
|
await (0, _elementsInteractions.waitUntilElementDisappear)(page, '.loading-bar-spinner');
|
|
170
174
|
await searchByDates(page, startDate);
|
|
171
175
|
await (0, _elementsInteractions.waitUntilElementDisappear)(page, '.loading-bar-spinner');
|
|
172
|
-
const txns = await getAccountTransactions(page);
|
|
176
|
+
const txns = await getAccountTransactions(page, options);
|
|
173
177
|
return {
|
|
174
178
|
accountNumber: accountID,
|
|
175
179
|
txns
|
|
176
180
|
};
|
|
177
181
|
}
|
|
178
|
-
async function fetchAccounts(page, startDate) {
|
|
182
|
+
async function fetchAccounts(page, startDate, options) {
|
|
179
183
|
const accounts = [];
|
|
180
184
|
|
|
181
185
|
// TODO: get more accounts. Not sure is supported.
|
|
182
186
|
const accountID = await getAccountID(page);
|
|
183
|
-
const accountData = await fetchAccountData(page, startDate, accountID);
|
|
187
|
+
const accountData = await fetchAccountData(page, startDate, accountID, options);
|
|
184
188
|
accounts.push(accountData);
|
|
185
189
|
return accounts;
|
|
186
190
|
}
|
|
@@ -236,7 +240,7 @@ class YahavScraper extends _baseScraperWithBrowser.BaseScraperWithBrowser {
|
|
|
236
240
|
const defaultStartMoment = (0, _moment.default)().subtract(3, 'months').add(1, 'day');
|
|
237
241
|
const startDate = this.options.startDate || defaultStartMoment.toDate();
|
|
238
242
|
const startMoment = _moment.default.max(defaultStartMoment, (0, _moment.default)(startDate));
|
|
239
|
-
const accounts = await fetchAccounts(this.page, startMoment);
|
|
243
|
+
const accounts = await fetchAccounts(this.page, startMoment, this.options);
|
|
240
244
|
return {
|
|
241
245
|
success: true,
|
|
242
246
|
accounts
|
|
@@ -244,4 +248,4 @@ class YahavScraper extends _baseScraperWithBrowser.BaseScraperWithBrowser {
|
|
|
244
248
|
}
|
|
245
249
|
}
|
|
246
250
|
var _default = exports.default = YahavScraper;
|
|
247
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbW9tZW50IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfY29uc3RhbnRzIiwiX2VsZW1lbnRzSW50ZXJhY3Rpb25zIiwiX25hdmlnYXRpb24iLCJfdHJhbnNhY3Rpb25zIiwiX2Jhc2VTY3JhcGVyV2l0aEJyb3dzZXIiLCJlIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJMT0dJTl9VUkwiLCJCQVNFX1VSTCIsIklOVkFMSURfREVUQUlMU19TRUxFQ1RPUiIsIkNIQU5HRV9QQVNTV09SRF9PTERfUEFTUyIsIkJBU0VfV0VMQ09NRV9VUkwiLCJBQ0NPVU5UX0lEX1NFTEVDVE9SIiwiQUNDT1VOVF9ERVRBSUxTX1NFTEVDVE9SIiwiREFURV9GT1JNQVQiLCJVU0VSX0VMRU0iLCJQQVNTV0RfRUxFTSIsIk5BVElPTkFMSURfRUxFTSIsIlNVQk1JVF9MT0dJTl9TRUxFQ1RPUiIsImdldFBvc3NpYmxlTG9naW5SZXN1bHRzIiwicGFnZSIsInVybHMiLCJMb2dpblJlc3VsdHMiLCJTdWNjZXNzIiwiSW52YWxpZFBhc3N3b3JkIiwiZWxlbWVudFByZXNlbnRPblBhZ2UiLCJDaGFuZ2VQYXNzd29yZCIsImdldEFjY291bnRJRCIsInNlbGVjdGVkU25pZkFjY291bnQiLCIkZXZhbCIsImVsZW1lbnQiLCJ0ZXh0Q29udGVudCIsImVycm9yIiwiZXJyb3JNZXNzYWdlIiwiRXJyb3IiLCJtZXNzYWdlIiwiU3RyaW5nIiwiZ2V0QW1vdW50RGF0YSIsImFtb3VudFN0ciIsImFtb3VudFN0ckNvcHkiLCJyZXBsYWNlIiwicGFyc2VGbG9hdCIsImdldFR4bkFtb3VudCIsInR4biIsImNyZWRpdCIsImRlYml0IiwiTnVtYmVyIiwiaXNOYU4iLCJjb252ZXJ0VHJhbnNhY3Rpb25zIiwidHhucyIsIm1hcCIsImNvbnZlcnRlZERhdGUiLCJtb21lbnQiLCJkYXRlIiwidG9JU09TdHJpbmciLCJjb252ZXJ0ZWRBbW91bnQiLCJ0eXBlIiwiVHJhbnNhY3Rpb25UeXBlcyIsIk5vcm1hbCIsImlkZW50aWZpZXIiLCJyZWZlcmVuY2UiLCJwYXJzZUludCIsInVuZGVmaW5lZCIsInByb2Nlc3NlZERhdGUiLCJvcmlnaW5hbEFtb3VudCIsIm9yaWdpbmFsQ3VycmVuY3kiLCJTSEVLRUxfQ1VSUkVOQ1kiLCJjaGFyZ2VkQW1vdW50Iiwic3RhdHVzIiwiZGVzY3JpcHRpb24iLCJtZW1vIiwiaGFuZGxlVHJhbnNhY3Rpb25Sb3ciLCJ0eG5Sb3ciLCJkaXYiLCJpbm5lckRpdnMiLCJyZWdleCIsInR4IiwiVHJhbnNhY3Rpb25TdGF0dXNlcyIsIkNvbXBsZXRlZCIsInB1c2giLCJnZXRBY2NvdW50VHJhbnNhY3Rpb25zIiwid2FpdFVudGlsRWxlbWVudEZvdW5kIiwidHJhbnNhY3Rpb25zRGl2cyIsInBhZ2VFdmFsQWxsIiwiZGl2cyIsImlkIiwiZ2V0QXR0cmlidXRlIiwiQXJyYXkiLCJmcm9tIiwiZ2V0RWxlbWVudHNCeVRhZ05hbWUiLCJlbCIsImlubmVyVGV4dCIsInNlYXJjaEJ5RGF0ZXMiLCJzdGFydERhdGUiLCJzdGFydERhdGVEYXkiLCJmb3JtYXQiLCJzdGFydERhdGVNb250aCIsInN0YXJ0RGF0ZVllYXIiLCJkYXRlRnJvbVBpY2siLCJjbGlja0J1dHRvbiIsIm1vbnRoRnJvbVBpY2siLCJpIiwic2VsZWN0b3IiLCJ5ZWFyIiwieSIsIm1vbnRoU2VsZWN0b3IiLCJkYXkiLCJkIiwiZmV0Y2hBY2NvdW50RGF0YSIsImFjY291bnRJRCIsIndhaXRVbnRpbEVsZW1lbnREaXNhcHBlYXIiLCJhY2NvdW50TnVtYmVyIiwiZmV0Y2hBY2NvdW50cyIsImFjY291bnRzIiwiYWNjb3VudERhdGEiLCJ3YWl0UmVhZGluZXNzRm9yQWxsIiwicmVkaXJlY3RPckRpYWxvZyIsIndhaXRGb3JOYXZpZ2F0aW9uIiwiaGFzTWVzc2FnZSIsInByb21pc2UxIiwid2FpdEZvclNlbGVjdG9yIiwidGltZW91dCIsInByb21pc2UyIiwicHJvbWlzZXMiLCJQcm9taXNlIiwicmFjZSIsIllhaGF2U2NyYXBlciIsIkJhc2VTY3JhcGVyV2l0aEJyb3dzZXIiLCJnZXRMb2dpbk9wdGlvbnMiLCJjcmVkZW50aWFscyIsImxvZ2luVXJsIiwiZmllbGRzIiwidmFsdWUiLCJ1c2VybmFtZSIsInBhc3N3b3JkIiwibmF0aW9uYWxJRCIsInN1Ym1pdEJ1dHRvblNlbGVjdG9yIiwiY2hlY2tSZWFkaW5lc3MiLCJwb3N0QWN0aW9uIiwicG9zc2libGVSZXN1bHRzIiwiZmV0Y2hEYXRhIiwiZGVmYXVsdFN0YXJ0TW9tZW50Iiwic3VidHJhY3QiLCJhZGQiLCJvcHRpb25zIiwidG9EYXRlIiwic3RhcnRNb21lbnQiLCJtYXgiLCJzdWNjZXNzIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmFwZXJzL3lhaGF2LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBtb21lbnQsIHsgdHlwZSBNb21lbnQgfSBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHsgdHlwZSBQYWdlIH0gZnJvbSAncHVwcGV0ZWVyLWNvcmUnO1xuaW1wb3J0IHsgU0hFS0VMX0NVUlJFTkNZIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcbmltcG9ydCB7XG4gIGNsaWNrQnV0dG9uLFxuICBlbGVtZW50UHJlc2VudE9uUGFnZSxcbiAgcGFnZUV2YWxBbGwsXG4gIHdhaXRVbnRpbEVsZW1lbnREaXNhcHBlYXIsXG4gIHdhaXRVbnRpbEVsZW1lbnRGb3VuZCxcbn0gZnJvbSAnLi4vaGVscGVycy9lbGVtZW50cy1pbnRlcmFjdGlvbnMnO1xuaW1wb3J0IHsgd2FpdEZvck5hdmlnYXRpb24gfSBmcm9tICcuLi9oZWxwZXJzL25hdmlnYXRpb24nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25TdGF0dXNlcywgVHJhbnNhY3Rpb25UeXBlcywgdHlwZSBUcmFuc2FjdGlvbiwgdHlwZSBUcmFuc2FjdGlvbnNBY2NvdW50IH0gZnJvbSAnLi4vdHJhbnNhY3Rpb25zJztcbmltcG9ydCB7IEJhc2VTY3JhcGVyV2l0aEJyb3dzZXIsIExvZ2luUmVzdWx0cywgdHlwZSBQb3NzaWJsZUxvZ2luUmVzdWx0cyB9IGZyb20gJy4vYmFzZS1zY3JhcGVyLXdpdGgtYnJvd3Nlcic7XG5cbmNvbnN0IExPR0lOX1VSTCA9ICdodHRwczovL2xvZ2luLnlhaGF2LmNvLmlsL2xvZ2luLyc7XG5jb25zdCBCQVNFX1VSTCA9ICdodHRwczovL2RpZ2l0YWwueWFoYXYuY28uaWwvQmFOQ1NEaWdpdGFsVUkvYXBwL2luZGV4Lmh0bWwjLyc7XG5jb25zdCBJTlZBTElEX0RFVEFJTFNfU0VMRUNUT1IgPSAnLnVpLWRpYWxvZy1idXR0b25zJztcbmNvbnN0IENIQU5HRV9QQVNTV09SRF9PTERfUEFTUyA9ICdpbnB1dCNlZl9yZXFfcGFyYW1ldGVyX29sZF9jcmVkZW50aWFsJztcbmNvbnN0IEJBU0VfV0VMQ09NRV9VUkwgPSBgJHtCQVNFX1VSTH1tYWluL2hvbWVgO1xuXG5jb25zdCBBQ0NPVU5UX0lEX1NFTEVDVE9SID0gJ3NwYW4ucG9ydGZvbGlvLXZhbHVlW25nLWlmPVwibWFpbkNvbnRyb2xsZXIuZGF0YS5wb3J0Zm9saW9MaXN0Lmxlbmd0aCA9PT0gMVwiXSc7XG5jb25zdCBBQ0NPVU5UX0RFVEFJTFNfU0VMRUNUT1IgPSAnLmFjY291bnQtZGV0YWlscyc7XG5jb25zdCBEQVRFX0ZPUk1BVCA9ICdERC9NTS9ZWVlZJztcblxuY29uc3QgVVNFUl9FTEVNID0gJyN1c2VybmFtZSc7XG5jb25zdCBQQVNTV0RfRUxFTSA9ICcjcGFzc3dvcmQnO1xuY29uc3QgTkFUSU9OQUxJRF9FTEVNID0gJyNwaW5ubyc7XG5jb25zdCBTVUJNSVRfTE9HSU5fU0VMRUNUT1IgPSAnLmJ0bic7XG5cbmludGVyZmFjZSBTY3JhcGVkVHJhbnNhY3Rpb24ge1xuICBjcmVkaXQ6IHN0cmluZztcbiAgZGViaXQ6IHN0cmluZztcbiAgZGF0ZTogc3RyaW5nO1xuICByZWZlcmVuY2U/OiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gIG1lbW86IHN0cmluZztcbiAgc3RhdHVzOiBUcmFuc2FjdGlvblN0YXR1c2VzO1xufVxuXG5mdW5jdGlvbiBnZXRQb3NzaWJsZUxvZ2luUmVzdWx0cyhwYWdlOiBQYWdlKTogUG9zc2libGVMb2dpblJlc3VsdHMge1xuICAvLyBjaGVja291dCBmaWxlIGBiYXNlLXNjcmFwZXItd2l0aC1icm93c2VyLnRzYCBmb3IgYXZhaWxhYmxlIHJlc3VsdCB0eXBlc1xuICBjb25zdCB1cmxzOiBQb3NzaWJsZUxvZ2luUmVzdWx0cyA9IHt9O1xuICB1cmxzW0xvZ2luUmVzdWx0cy5TdWNjZXNzXSA9IFtgJHtCQVNFX1dFTENPTUVfVVJMfWBdO1xuICB1cmxzW0xvZ2luUmVzdWx0cy5JbnZhbGlkUGFzc3dvcmRdID0gW1xuICAgIGFzeW5jICgpID0+IHtcbiAgICAgIHJldHVybiBlbGVtZW50UHJlc2VudE9uUGFnZShwYWdlLCBgJHtJTlZBTElEX0RFVEFJTFNfU0VMRUNUT1J9YCk7XG4gICAgfSxcbiAgXTtcblxuICB1cmxzW0xvZ2luUmVzdWx0cy5DaGFuZ2VQYXNzd29yZF0gPSBbXG4gICAgYXN5bmMgKCkgPT4ge1xuICAgICAgcmV0dXJuIGVsZW1lbnRQcmVzZW50T25QYWdlKHBhZ2UsIGAke0NIQU5HRV9QQVNTV09SRF9PTERfUEFTU31gKTtcbiAgICB9LFxuICBdO1xuXG4gIHJldHVybiB1cmxzO1xufVxuXG5hc3luYyBmdW5jdGlvbiBnZXRBY2NvdW50SUQocGFnZTogUGFnZSk6IFByb21pc2U8c3RyaW5nPiB7XG4gIHRyeSB7XG4gICAgY29uc3Qgc2VsZWN0ZWRTbmlmQWNjb3VudCA9IGF3YWl0IHBhZ2UuJGV2YWwoQUNDT1VOVF9JRF9TRUxFQ1RPUiwgKGVsZW1lbnQ6IEVsZW1lbnQpID0+IHtcbiAgICAgIHJldHVybiBlbGVtZW50LnRleHRDb250ZW50IGFzIHN0cmluZztcbiAgICB9KTtcblxuICAgIHJldHVybiBzZWxlY3RlZFNuaWZBY2NvdW50O1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGNvbnN0IGVycm9yTWVzc2FnZSA9IGVycm9yIGluc3RhbmNlb2YgRXJyb3IgPyBlcnJvci5tZXNzYWdlIDogU3RyaW5nKGVycm9yKTtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBgRmFpbGVkIHRvIHJldHJpZXZlIGFjY291bnQgSUQuIFBvc3NpYmxlIG91dGRhdGVkIHNlbGVjdG9yICcke0FDQ09VTlRfSURfU0VMRUNUT1J9OiAke2Vycm9yTWVzc2FnZX1gLFxuICAgICk7XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0QW1vdW50RGF0YShhbW91bnRTdHI6IHN0cmluZykge1xuICBjb25zdCBhbW91bnRTdHJDb3B5ID0gYW1vdW50U3RyLnJlcGxhY2UoJywnLCAnJyk7XG4gIHJldHVybiBwYXJzZUZsb2F0KGFtb3VudFN0ckNvcHkpO1xufVxuXG5mdW5jdGlvbiBnZXRUeG5BbW91bnQodHhuOiBTY3JhcGVkVHJhbnNhY3Rpb24pIHtcbiAgY29uc3QgY3JlZGl0ID0gZ2V0QW1vdW50RGF0YSh0eG4uY3JlZGl0KTtcbiAgY29uc3QgZGViaXQgPSBnZXRBbW91bnREYXRhKHR4bi5kZWJpdCk7XG4gIHJldHVybiAoTnVtYmVyLmlzTmFOKGNyZWRpdCkgPyAwIDogY3JlZGl0KSAtIChOdW1iZXIuaXNOYU4oZGViaXQpID8gMCA6IGRlYml0KTtcbn1cblxudHlwZSBUcmFuc2FjdGlvbnNUciA9IHsgaWQ6IHN0cmluZzsgaW5uZXJEaXZzOiBzdHJpbmdbXSB9O1xuXG5mdW5jdGlvbiBjb252ZXJ0VHJhbnNhY3Rpb25zKHR4bnM6IFNjcmFwZWRUcmFuc2FjdGlvbltdKTogVHJhbnNhY3Rpb25bXSB7XG4gIHJldHVybiB0eG5zLm1hcCh0eG4gPT4ge1xuICAgIGNvbnN0IGNvbnZlcnRlZERhdGUgPSBtb21lbnQodHhuLmRhdGUsIERBVEVfRk9STUFUKS50b0lTT1N0cmluZygpO1xuICAgIGNvbnN0IGNvbnZlcnRlZEFtb3VudCA9IGdldFR4bkFtb3VudCh0eG4pO1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiBUcmFuc2FjdGlvblR5cGVzLk5vcm1hbCxcbiAgICAgIGlkZW50aWZpZXI6IHR4bi5yZWZlcmVuY2UgPyBwYXJzZUludCh0eG4ucmVmZXJlbmNlLCAxMCkgOiB1bmRlZmluZWQsXG4gICAgICBkYXRlOiBjb252ZXJ0ZWREYXRlLFxuICAgICAgcHJvY2Vzc2VkRGF0ZTogY29udmVydGVkRGF0ZSxcbiAgICAgIG9yaWdpbmFsQW1vdW50OiBjb252ZXJ0ZWRBbW91bnQsXG4gICAgICBvcmlnaW5hbEN1cnJlbmN5OiBTSEVLRUxfQ1VSUkVOQ1ksXG4gICAgICBjaGFyZ2VkQW1vdW50OiBjb252ZXJ0ZWRBbW91bnQsXG4gICAgICBzdGF0dXM6IHR4bi5zdGF0dXMsXG4gICAgICBkZXNjcmlwdGlvbjogdHhuLmRlc2NyaXB0aW9uLFxuICAgICAgbWVtbzogdHhuLm1lbW8sXG4gICAgfTtcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGhhbmRsZVRyYW5zYWN0aW9uUm93KHR4bnM6IFNjcmFwZWRUcmFuc2FjdGlvbltdLCB0eG5Sb3c6IFRyYW5zYWN0aW9uc1RyKSB7XG4gIGNvbnN0IGRpdiA9IHR4blJvdy5pbm5lckRpdnM7XG5cbiAgLy8gUmVtb3ZlIGFueXRoaW5nIGV4Y2VwdCBkaWdpdHMuXG4gIGNvbnN0IHJlZ2V4ID0gL1xcRCsvZ207XG5cbiAgY29uc3QgdHg6IFNjcmFwZWRUcmFuc2FjdGlvbiA9IHtcbiAgICBkYXRlOiBkaXZbMV0sXG4gICAgcmVmZXJlbmNlOiBkaXZbMl0ucmVwbGFjZShyZWdleCwgJycpLFxuICAgIG1lbW86ICcnLFxuICAgIGRlc2NyaXB0aW9uOiBkaXZbM10sXG4gICAgZGViaXQ6IGRpdls0XSxcbiAgICBjcmVkaXQ6IGRpdls1XSxcbiAgICBzdGF0dXM6IFRyYW5zYWN0aW9uU3RhdHVzZXMuQ29tcGxldGVkLFxuICB9O1xuXG4gIHR4bnMucHVzaCh0eCk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGdldEFjY291bnRUcmFuc2FjdGlvbnMocGFnZTogUGFnZSk6IFByb21pc2U8VHJhbnNhY3Rpb25bXT4ge1xuICAvLyBXYWl0IGZvciB0cmFuc2FjdGlvbnMuXG4gIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnRGb3VuZChwYWdlLCAnLnVuZGVyLWxpbmUtdHhuLXRhYmxlLWhlYWRlcicsIHRydWUpO1xuXG4gIGNvbnN0IHR4bnM6IFNjcmFwZWRUcmFuc2FjdGlvbltdID0gW107XG4gIGNvbnN0IHRyYW5zYWN0aW9uc0RpdnMgPSBhd2FpdCBwYWdlRXZhbEFsbDxUcmFuc2FjdGlvbnNUcltdPihcbiAgICBwYWdlLFxuICAgICcubGlzdC1pdGVtLWhvbGRlciAuZW50aXJlLWNvbnRlbnQtY3RyJyxcbiAgICBbXSxcbiAgICBkaXZzID0+IHtcbiAgICAgIHJldHVybiAoZGl2cyBhcyBIVE1MRWxlbWVudFtdKS5tYXAoZGl2ID0+ICh7XG4gICAgICAgIGlkOiBkaXYuZ2V0QXR0cmlidXRlKCdpZCcpIHx8ICcnLFxuICAgICAgICBpbm5lckRpdnM6IEFycmF5LmZyb20oZGl2LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdkaXYnKSkubWFwKGVsID0+IChlbCBhcyBIVE1MRWxlbWVudCkuaW5uZXJUZXh0KSxcbiAgICAgIH0pKTtcbiAgICB9LFxuICApO1xuXG4gIGZvciAoY29uc3QgdHhuUm93IG9mIHRyYW5zYWN0aW9uc0RpdnMpIHtcbiAgICBoYW5kbGVUcmFuc2FjdGlvblJvdyh0eG5zLCB0eG5Sb3cpO1xuICB9XG5cbiAgcmV0dXJuIGNvbnZlcnRUcmFuc2FjdGlvbnModHhucyk7XG59XG5cbi8vIE1hbmlwdWxhdGUgdGhlIGNhbGVuZGFyIGRyb3AgZG93biB0byBjaG9vc2UgdGhlIHR4cyBzdGFydCBkYXRlLlxuYXN5bmMgZnVuY3Rpb24gc2VhcmNoQnlEYXRlcyhwYWdlOiBQYWdlLCBzdGFydERhdGU6IE1vbWVudCkge1xuICAvLyBHZXQgdGhlIGRheSBudW1iZXIgZnJvbSBzdGFydERhdGUuIDEtMzEgKHVzdWFsbHkgMSlcbiAgY29uc3Qgc3RhcnREYXRlRGF5ID0gc3RhcnREYXRlLmZvcm1hdCgnRCcpO1xuICBjb25zdCBzdGFydERhdGVNb250aCA9IHN0YXJ0RGF0ZS5mb3JtYXQoJ00nKTtcbiAgY29uc3Qgc3RhcnREYXRlWWVhciA9IHN0YXJ0RGF0ZS5mb3JtYXQoJ1knKTtcblxuICAvLyBPcGVuIHRoZSBjYWxlbmRhciBkYXRlIHBpY2tlclxuICBjb25zdCBkYXRlRnJvbVBpY2sgPVxuICAgICdkaXYuZGF0ZS1vcHRpb25zLWNlbGw6bnRoLWNoaWxkKDcpID4gZGF0ZS1waWNrZXI6bnRoLWNoaWxkKDEpID4gZGl2Om50aC1jaGlsZCgxKSA+IHNwYW46bnRoLWNoaWxkKDIpJztcbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsIGRhdGVGcm9tUGljaywgdHJ1ZSk7XG4gIGF3YWl0IGNsaWNrQnV0dG9uKHBhZ2UsIGRhdGVGcm9tUGljayk7XG5cbiAgLy8gV2FpdCB1bnRpbCBmaXJzdCBkYXkgYXBwZWFyLlxuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgJy5wbXUtZGF5cyA+IGRpdjpudGgtY2hpbGQoMSknLCB0cnVlKTtcblxuICAvLyBPcGVuIE1vbnRocyBvcHRpb25zLlxuICBjb25zdCBtb250aEZyb21QaWNrID0gJy5wbXUtbW9udGgnO1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgbW9udGhGcm9tUGljaywgdHJ1ZSk7XG4gIGF3YWl0IGNsaWNrQnV0dG9uKHBhZ2UsIG1vbnRoRnJvbVBpY2spO1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgJy5wbXUtbW9udGhzID4gZGl2Om50aC1jaGlsZCgxKScsIHRydWUpO1xuXG4gIC8vIE9wZW4gWWVhciBvcHRpb25zLlxuICAvLyBVc2Ugc2FtZSBzZWxlY3Rvci4uLiBZYWhhdiBrbm93cyB3aHkuLi5cbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsIG1vbnRoRnJvbVBpY2ssIHRydWUpO1xuICBhd2FpdCBjbGlja0J1dHRvbihwYWdlLCBtb250aEZyb21QaWNrKTtcbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsICcucG11LXllYXJzID4gZGl2Om50aC1jaGlsZCgxKScsIHRydWUpO1xuXG4gIC8vIFNlbGVjdCB5ZWFyIGZyb20gYSAxMiB5ZWFyIGdyaWQuXG4gIGZvciAobGV0IGkgPSAxOyBpIDwgMTM7IGkgKz0gMSkge1xuICAgIGNvbnN0IHNlbGVjdG9yID0gYC5wbXUteWVhcnMgPiBkaXY6bnRoLWNoaWxkKCR7aX0pYDtcbiAgICBjb25zdCB5ZWFyID0gYXdhaXQgcGFnZS4kZXZhbChzZWxlY3RvciwgeSA9PiB7XG4gICAgICByZXR1cm4gKHkgYXMgSFRNTEVsZW1lbnQpLmlubmVyVGV4dDtcbiAgICB9KTtcbiAgICBpZiAoc3RhcnREYXRlWWVhciA9PT0geWVhcikge1xuICAgICAgYXdhaXQgY2xpY2tCdXR0b24ocGFnZSwgc2VsZWN0b3IpO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgLy8gU2VsZWN0IE1vbnRoLlxuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgJy5wbXUtbW9udGhzID4gZGl2Om50aC1jaGlsZCgxKScsIHRydWUpO1xuICAvLyBUaGUgZmlyc3QgZWxlbWVudCAoMSkgaXMgSmFudWFyeS5cbiAgY29uc3QgbW9udGhTZWxlY3RvciA9IGAucG11LW1vbnRocyA+IGRpdjpudGgtY2hpbGQoJHtzdGFydERhdGVNb250aH0pYDtcbiAgYXdhaXQgY2xpY2tCdXR0b24ocGFnZSwgbW9udGhTZWxlY3Rvcik7XG5cbiAgLy8gU2VsZWN0IERheS5cbiAgLy8gVGhlIGNhbGVuZGFyIGdyaWQgc2hvd3MgNyBkYXlzIGFuZCA2IHdlZWtzID0gNDIgZGF5cy5cbiAgLy8gSW4gdGhlb3J5LCB0aGUgZmlyc3QgZGF5IG9mIHRoZSBtb250aCB3aWxsIGJlIGluIHRoZSBmaXJzdCByb3cuXG4gIC8vIExldCdzIGNoZWNrIGV2ZXJ5dGhpbmcganVzdCBpbiBjYXNlLi4uXG4gIGZvciAobGV0IGkgPSAxOyBpIDwgNDI7IGkgKz0gMSkge1xuICAgIGNvbnN0IHNlbGVjdG9yID0gYC5wbXUtZGF5cyA+IGRpdjpudGgtY2hpbGQoJHtpfSlgO1xuICAgIGNvbnN0IGRheSA9IGF3YWl0IHBhZ2UuJGV2YWwoc2VsZWN0b3IsIGQgPT4ge1xuICAgICAgcmV0dXJuIChkIGFzIEhUTUxFbGVtZW50KS5pbm5lclRleHQ7XG4gICAgfSk7XG5cbiAgICBpZiAoc3RhcnREYXRlRGF5ID09PSBkYXkpIHtcbiAgICAgIGF3YWl0IGNsaWNrQnV0dG9uKHBhZ2UsIHNlbGVjdG9yKTtcbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxufVxuXG5hc3luYyBmdW5jdGlvbiBmZXRjaEFjY291bnREYXRhKHBhZ2U6IFBhZ2UsIHN0YXJ0RGF0ZTogTW9tZW50LCBhY2NvdW50SUQ6IHN0cmluZyk6IFByb21pc2U8VHJhbnNhY3Rpb25zQWNjb3VudD4ge1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50RGlzYXBwZWFyKHBhZ2UsICcubG9hZGluZy1iYXItc3Bpbm5lcicpO1xuICBhd2FpdCBzZWFyY2hCeURhdGVzKHBhZ2UsIHN0YXJ0RGF0ZSk7XG4gIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnREaXNhcHBlYXIocGFnZSwgJy5sb2FkaW5nLWJhci1zcGlubmVyJyk7XG4gIGNvbnN0IHR4bnMgPSBhd2FpdCBnZXRBY2NvdW50VHJhbnNhY3Rpb25zKHBhZ2UpO1xuXG4gIHJldHVybiB7XG4gICAgYWNjb3VudE51bWJlcjogYWNjb3VudElELFxuICAgIHR4bnMsXG4gIH07XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGZldGNoQWNjb3VudHMocGFnZTogUGFnZSwgc3RhcnREYXRlOiBNb21lbnQpOiBQcm9taXNlPFRyYW5zYWN0aW9uc0FjY291bnRbXT4ge1xuICBjb25zdCBhY2NvdW50czogVHJhbnNhY3Rpb25zQWNjb3VudFtdID0gW107XG5cbiAgLy8gVE9ETzogZ2V0IG1vcmUgYWNjb3VudHMuIE5vdCBzdXJlIGlzIHN1cHBvcnRlZC5cbiAgY29uc3QgYWNjb3VudElEID0gYXdhaXQgZ2V0QWNjb3VudElEKHBhZ2UpO1xuICBjb25zdCBhY2NvdW50RGF0YSA9IGF3YWl0IGZldGNoQWNjb3VudERhdGEocGFnZSwgc3RhcnREYXRlLCBhY2NvdW50SUQpO1xuICBhY2NvdW50cy5wdXNoKGFjY291bnREYXRhKTtcblxuICByZXR1cm4gYWNjb3VudHM7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHdhaXRSZWFkaW5lc3NGb3JBbGwocGFnZTogUGFnZSkge1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgYCR7VVNFUl9FTEVNfWAsIHRydWUpO1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgYCR7UEFTU1dEX0VMRU19YCwgdHJ1ZSk7XG4gIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnRGb3VuZChwYWdlLCBgJHtOQVRJT05BTElEX0VMRU19YCwgdHJ1ZSk7XG4gIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnRGb3VuZChwYWdlLCBgJHtTVUJNSVRfTE9HSU5fU0VMRUNUT1J9YCwgdHJ1ZSk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHJlZGlyZWN0T3JEaWFsb2cocGFnZTogUGFnZSkge1xuICAvLyBDbGljayBvbiBiYW5rIG1lc3NhZ2VzIGlmIGFueS5cbiAgYXdhaXQgd2FpdEZvck5hdmlnYXRpb24ocGFnZSk7XG4gIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnREaXNhcHBlYXIocGFnZSwgJy5sb2FkaW5nLWJhci1zcGlubmVyJyk7XG4gIGNvbnN0IGhhc01lc3NhZ2UgPSBhd2FpdCBlbGVtZW50UHJlc2VudE9uUGFnZShwYWdlLCAnLm1lc3NhZ2luZy1saW5rcy1jb250YWluZXInKTtcbiAgaWYgKGhhc01lc3NhZ2UpIHtcbiAgICBhd2FpdCBjbGlja0J1dHRvbihwYWdlLCAnLmxpbmstMScpO1xuICB9XG5cbiAgY29uc3QgcHJvbWlzZTEgPSBwYWdlLndhaXRGb3JTZWxlY3RvcihBQ0NPVU5UX0RFVEFJTFNfU0VMRUNUT1IsIHsgdGltZW91dDogMzAwMDAgfSk7XG4gIGNvbnN0IHByb21pc2UyID0gcGFnZS53YWl0Rm9yU2VsZWN0b3IoQ0hBTkdFX1BBU1NXT1JEX09MRF9QQVNTLCB7IHRpbWVvdXQ6IDMwMDAwIH0pO1xuICBjb25zdCBwcm9taXNlcyA9IFtwcm9taXNlMSwgcHJvbWlzZTJdO1xuXG4gIGF3YWl0IFByb21pc2UucmFjZShwcm9taXNlcyk7XG4gIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnREaXNhcHBlYXIocGFnZSwgJy5sb2FkaW5nLWJhci1zcGlubmVyJyk7XG59XG5cbnR5cGUgU2NyYXBlclNwZWNpZmljQ3JlZGVudGlhbHMgPSB7IHVzZXJuYW1lOiBzdHJpbmc7IHBhc3N3b3JkOiBzdHJpbmc7IG5hdGlvbmFsSUQ6IHN0cmluZyB9O1xuXG5jbGFzcyBZYWhhdlNjcmFwZXIgZXh0ZW5kcyBCYXNlU2NyYXBlcldpdGhCcm93c2VyPFNjcmFwZXJTcGVjaWZpY0NyZWRlbnRpYWxzPiB7XG4gIGdldExvZ2luT3B0aW9ucyhjcmVkZW50aWFsczogU2NyYXBlclNwZWNpZmljQ3JlZGVudGlhbHMpIHtcbiAgICByZXR1cm4ge1xuICAgICAgbG9naW5Vcmw6IGAke0xPR0lOX1VSTH1gLFxuICAgICAgZmllbGRzOiBbXG4gICAgICAgIHsgc2VsZWN0b3I6IGAke1VTRVJfRUxFTX1gLCB2YWx1ZTogY3JlZGVudGlhbHMudXNlcm5hbWUgfSxcbiAgICAgICAgeyBzZWxlY3RvcjogYCR7UEFTU1dEX0VMRU19YCwgdmFsdWU6IGNyZWRlbnRpYWxzLnBhc3N3b3JkIH0sXG4gICAgICAgIHsgc2VsZWN0b3I6IGAke05BVElPTkFMSURfRUxFTX1gLCB2YWx1ZTogY3JlZGVudGlhbHMubmF0aW9uYWxJRCB9LFxuICAgICAgXSxcbiAgICAgIHN1Ym1pdEJ1dHRvblNlbGVjdG9yOiBgJHtTVUJNSVRfTE9HSU5fU0VMRUNUT1J9YCxcbiAgICAgIGNoZWNrUmVhZGluZXNzOiBhc3luYyAoKSA9PiB3YWl0UmVhZGluZXNzRm9yQWxsKHRoaXMucGFnZSksXG4gICAgICBwb3N0QWN0aW9uOiBhc3luYyAoKSA9PiByZWRpcmVjdE9yRGlhbG9nKHRoaXMucGFnZSksXG4gICAgICBwb3NzaWJsZVJlc3VsdHM6IGdldFBvc3NpYmxlTG9naW5SZXN1bHRzKHRoaXMucGFnZSksXG4gICAgfTtcbiAgfVxuXG4gIGFzeW5jIGZldGNoRGF0YSgpIHtcbiAgICAvLyBHb3RvIHN0YXRlbWVudHMgcGFnZVxuICAgIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnRGb3VuZCh0aGlzLnBhZ2UsIEFDQ09VTlRfREVUQUlMU19TRUxFQ1RPUiwgdHJ1ZSk7XG4gICAgYXdhaXQgY2xpY2tCdXR0b24odGhpcy5wYWdlLCBBQ0NPVU5UX0RFVEFJTFNfU0VMRUNUT1IpO1xuICAgIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnRGb3VuZCh0aGlzLnBhZ2UsICcuc3RhdGVtZW50LW9wdGlvbnMgLnNlbGVjdGVkLWl0ZW0tdG9wJywgdHJ1ZSk7XG5cbiAgICBjb25zdCBkZWZhdWx0U3RhcnRNb21lbnQgPSBtb21lbnQoKS5zdWJ0cmFjdCgzLCAnbW9udGhzJykuYWRkKDEsICdkYXknKTtcbiAgICBjb25zdCBzdGFydERhdGUgPSB0aGlzLm9wdGlvbnMuc3RhcnREYXRlIHx8IGRlZmF1bHRTdGFydE1vbWVudC50b0RhdGUoKTtcbiAgICBjb25zdCBzdGFydE1vbWVudCA9IG1vbWVudC5tYXgoZGVmYXVsdFN0YXJ0TW9tZW50LCBtb21lbnQoc3RhcnREYXRlKSk7XG5cbiAgICBjb25zdCBhY2NvdW50cyA9IGF3YWl0IGZldGNoQWNjb3VudHModGhpcy5wYWdlLCBzdGFydE1vbWVudCk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgc3VjY2VzczogdHJ1ZSxcbiAgICAgIGFjY291bnRzLFxuICAgIH07XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgWWFoYXZTY3JhcGVyO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxPQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBQyxVQUFBLEdBQUFELE9BQUE7QUFD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
|
|
251
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbW9tZW50IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfY29uc3RhbnRzIiwiX2VsZW1lbnRzSW50ZXJhY3Rpb25zIiwiX25hdmlnYXRpb24iLCJfdHJhbnNhY3Rpb25zIiwiX2Jhc2VTY3JhcGVyV2l0aEJyb3dzZXIiLCJlIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJMT0dJTl9VUkwiLCJCQVNFX1VSTCIsIklOVkFMSURfREVUQUlMU19TRUxFQ1RPUiIsIkNIQU5HRV9QQVNTV09SRF9PTERfUEFTUyIsIkJBU0VfV0VMQ09NRV9VUkwiLCJBQ0NPVU5UX0lEX1NFTEVDVE9SIiwiQUNDT1VOVF9ERVRBSUxTX1NFTEVDVE9SIiwiREFURV9GT1JNQVQiLCJVU0VSX0VMRU0iLCJQQVNTV0RfRUxFTSIsIk5BVElPTkFMSURfRUxFTSIsIlNVQk1JVF9MT0dJTl9TRUxFQ1RPUiIsImdldFBvc3NpYmxlTG9naW5SZXN1bHRzIiwicGFnZSIsInVybHMiLCJMb2dpblJlc3VsdHMiLCJTdWNjZXNzIiwiSW52YWxpZFBhc3N3b3JkIiwiZWxlbWVudFByZXNlbnRPblBhZ2UiLCJDaGFuZ2VQYXNzd29yZCIsImdldEFjY291bnRJRCIsInNlbGVjdGVkU25pZkFjY291bnQiLCIkZXZhbCIsImVsZW1lbnQiLCJ0ZXh0Q29udGVudCIsImVycm9yIiwiZXJyb3JNZXNzYWdlIiwiRXJyb3IiLCJtZXNzYWdlIiwiU3RyaW5nIiwiZ2V0QW1vdW50RGF0YSIsImFtb3VudFN0ciIsImFtb3VudFN0ckNvcHkiLCJyZXBsYWNlIiwicGFyc2VGbG9hdCIsImdldFR4bkFtb3VudCIsInR4biIsImNyZWRpdCIsImRlYml0IiwiTnVtYmVyIiwiaXNOYU4iLCJjb252ZXJ0VHJhbnNhY3Rpb25zIiwidHhucyIsIm9wdGlvbnMiLCJtYXAiLCJjb252ZXJ0ZWREYXRlIiwibW9tZW50IiwiZGF0ZSIsInRvSVNPU3RyaW5nIiwiY29udmVydGVkQW1vdW50IiwicmVzdWx0IiwidHlwZSIsIlRyYW5zYWN0aW9uVHlwZXMiLCJOb3JtYWwiLCJpZGVudGlmaWVyIiwicmVmZXJlbmNlIiwicGFyc2VJbnQiLCJ1bmRlZmluZWQiLCJwcm9jZXNzZWREYXRlIiwib3JpZ2luYWxBbW91bnQiLCJvcmlnaW5hbEN1cnJlbmN5IiwiU0hFS0VMX0NVUlJFTkNZIiwiY2hhcmdlZEFtb3VudCIsInN0YXR1cyIsImRlc2NyaXB0aW9uIiwibWVtbyIsImluY2x1ZGVSYXdUcmFuc2FjdGlvbiIsInJhd1RyYW5zYWN0aW9uIiwiaGFuZGxlVHJhbnNhY3Rpb25Sb3ciLCJ0eG5Sb3ciLCJkaXYiLCJpbm5lckRpdnMiLCJyZWdleCIsInR4IiwiVHJhbnNhY3Rpb25TdGF0dXNlcyIsIkNvbXBsZXRlZCIsInB1c2giLCJnZXRBY2NvdW50VHJhbnNhY3Rpb25zIiwid2FpdFVudGlsRWxlbWVudEZvdW5kIiwidHJhbnNhY3Rpb25zRGl2cyIsInBhZ2VFdmFsQWxsIiwiZGl2cyIsImlkIiwiZ2V0QXR0cmlidXRlIiwiQXJyYXkiLCJmcm9tIiwiZ2V0RWxlbWVudHNCeVRhZ05hbWUiLCJlbCIsImlubmVyVGV4dCIsInNlYXJjaEJ5RGF0ZXMiLCJzdGFydERhdGUiLCJzdGFydERhdGVEYXkiLCJmb3JtYXQiLCJzdGFydERhdGVNb250aCIsInN0YXJ0RGF0ZVllYXIiLCJkYXRlRnJvbVBpY2siLCJjbGlja0J1dHRvbiIsIm1vbnRoRnJvbVBpY2siLCJpIiwic2VsZWN0b3IiLCJ5ZWFyIiwieSIsIm1vbnRoU2VsZWN0b3IiLCJkYXkiLCJkIiwiZmV0Y2hBY2NvdW50RGF0YSIsImFjY291bnRJRCIsIndhaXRVbnRpbEVsZW1lbnREaXNhcHBlYXIiLCJhY2NvdW50TnVtYmVyIiwiZmV0Y2hBY2NvdW50cyIsImFjY291bnRzIiwiYWNjb3VudERhdGEiLCJ3YWl0UmVhZGluZXNzRm9yQWxsIiwicmVkaXJlY3RPckRpYWxvZyIsIndhaXRGb3JOYXZpZ2F0aW9uIiwiaGFzTWVzc2FnZSIsInByb21pc2UxIiwid2FpdEZvclNlbGVjdG9yIiwidGltZW91dCIsInByb21pc2UyIiwicHJvbWlzZXMiLCJQcm9taXNlIiwicmFjZSIsIllhaGF2U2NyYXBlciIsIkJhc2VTY3JhcGVyV2l0aEJyb3dzZXIiLCJnZXRMb2dpbk9wdGlvbnMiLCJjcmVkZW50aWFscyIsImxvZ2luVXJsIiwiZmllbGRzIiwidmFsdWUiLCJ1c2VybmFtZSIsInBhc3N3b3JkIiwibmF0aW9uYWxJRCIsInN1Ym1pdEJ1dHRvblNlbGVjdG9yIiwiY2hlY2tSZWFkaW5lc3MiLCJwb3N0QWN0aW9uIiwicG9zc2libGVSZXN1bHRzIiwiZmV0Y2hEYXRhIiwiZGVmYXVsdFN0YXJ0TW9tZW50Iiwic3VidHJhY3QiLCJhZGQiLCJ0b0RhdGUiLCJzdGFydE1vbWVudCIsIm1heCIsInN1Y2Nlc3MiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc2NyYXBlcnMveWFoYXYudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IG1vbWVudCwgeyB0eXBlIE1vbWVudCB9IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyB0eXBlIFBhZ2UgfSBmcm9tICdwdXBwZXRlZXItY29yZSc7XG5pbXBvcnQgeyBTSEVLRUxfQ1VSUkVOQ1kgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHtcbiAgY2xpY2tCdXR0b24sXG4gIGVsZW1lbnRQcmVzZW50T25QYWdlLFxuICBwYWdlRXZhbEFsbCxcbiAgd2FpdFVudGlsRWxlbWVudERpc2FwcGVhcixcbiAgd2FpdFVudGlsRWxlbWVudEZvdW5kLFxufSBmcm9tICcuLi9oZWxwZXJzL2VsZW1lbnRzLWludGVyYWN0aW9ucyc7XG5pbXBvcnQgeyB3YWl0Rm9yTmF2aWdhdGlvbiB9IGZyb20gJy4uL2hlbHBlcnMvbmF2aWdhdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblN0YXR1c2VzLCBUcmFuc2FjdGlvblR5cGVzLCB0eXBlIFRyYW5zYWN0aW9uLCB0eXBlIFRyYW5zYWN0aW9uc0FjY291bnQgfSBmcm9tICcuLi90cmFuc2FjdGlvbnMnO1xuaW1wb3J0IHsgQmFzZVNjcmFwZXJXaXRoQnJvd3NlciwgTG9naW5SZXN1bHRzLCB0eXBlIFBvc3NpYmxlTG9naW5SZXN1bHRzIH0gZnJvbSAnLi9iYXNlLXNjcmFwZXItd2l0aC1icm93c2VyJztcbmltcG9ydCB7IHR5cGUgU2NyYXBlck9wdGlvbnMgfSBmcm9tICcuL2ludGVyZmFjZSc7XG5cbmNvbnN0IExPR0lOX1VSTCA9ICdodHRwczovL2xvZ2luLnlhaGF2LmNvLmlsL2xvZ2luLyc7XG5jb25zdCBCQVNFX1VSTCA9ICdodHRwczovL2RpZ2l0YWwueWFoYXYuY28uaWwvQmFOQ1NEaWdpdGFsVUkvYXBwL2luZGV4Lmh0bWwjLyc7XG5jb25zdCBJTlZBTElEX0RFVEFJTFNfU0VMRUNUT1IgPSAnLnVpLWRpYWxvZy1idXR0b25zJztcbmNvbnN0IENIQU5HRV9QQVNTV09SRF9PTERfUEFTUyA9ICdpbnB1dCNlZl9yZXFfcGFyYW1ldGVyX29sZF9jcmVkZW50aWFsJztcbmNvbnN0IEJBU0VfV0VMQ09NRV9VUkwgPSBgJHtCQVNFX1VSTH1tYWluL2hvbWVgO1xuXG5jb25zdCBBQ0NPVU5UX0lEX1NFTEVDVE9SID0gJ3NwYW4ucG9ydGZvbGlvLXZhbHVlW25nLWlmPVwibWFpbkNvbnRyb2xsZXIuZGF0YS5wb3J0Zm9saW9MaXN0Lmxlbmd0aCA9PT0gMVwiXSc7XG5jb25zdCBBQ0NPVU5UX0RFVEFJTFNfU0VMRUNUT1IgPSAnLmFjY291bnQtZGV0YWlscyc7XG5jb25zdCBEQVRFX0ZPUk1BVCA9ICdERC9NTS9ZWVlZJztcblxuY29uc3QgVVNFUl9FTEVNID0gJyN1c2VybmFtZSc7XG5jb25zdCBQQVNTV0RfRUxFTSA9ICcjcGFzc3dvcmQnO1xuY29uc3QgTkFUSU9OQUxJRF9FTEVNID0gJyNwaW5ubyc7XG5jb25zdCBTVUJNSVRfTE9HSU5fU0VMRUNUT1IgPSAnLmJ0bic7XG5cbmludGVyZmFjZSBTY3JhcGVkVHJhbnNhY3Rpb24ge1xuICBjcmVkaXQ6IHN0cmluZztcbiAgZGViaXQ6IHN0cmluZztcbiAgZGF0ZTogc3RyaW5nO1xuICByZWZlcmVuY2U/OiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gIG1lbW86IHN0cmluZztcbiAgc3RhdHVzOiBUcmFuc2FjdGlvblN0YXR1c2VzO1xufVxuXG5mdW5jdGlvbiBnZXRQb3NzaWJsZUxvZ2luUmVzdWx0cyhwYWdlOiBQYWdlKTogUG9zc2libGVMb2dpblJlc3VsdHMge1xuICAvLyBjaGVja291dCBmaWxlIGBiYXNlLXNjcmFwZXItd2l0aC1icm93c2VyLnRzYCBmb3IgYXZhaWxhYmxlIHJlc3VsdCB0eXBlc1xuICBjb25zdCB1cmxzOiBQb3NzaWJsZUxvZ2luUmVzdWx0cyA9IHt9O1xuICB1cmxzW0xvZ2luUmVzdWx0cy5TdWNjZXNzXSA9IFtgJHtCQVNFX1dFTENPTUVfVVJMfWBdO1xuICB1cmxzW0xvZ2luUmVzdWx0cy5JbnZhbGlkUGFzc3dvcmRdID0gW1xuICAgIGFzeW5jICgpID0+IHtcbiAgICAgIHJldHVybiBlbGVtZW50UHJlc2VudE9uUGFnZShwYWdlLCBgJHtJTlZBTElEX0RFVEFJTFNfU0VMRUNUT1J9YCk7XG4gICAgfSxcbiAgXTtcblxuICB1cmxzW0xvZ2luUmVzdWx0cy5DaGFuZ2VQYXNzd29yZF0gPSBbXG4gICAgYXN5bmMgKCkgPT4ge1xuICAgICAgcmV0dXJuIGVsZW1lbnRQcmVzZW50T25QYWdlKHBhZ2UsIGAke0NIQU5HRV9QQVNTV09SRF9PTERfUEFTU31gKTtcbiAgICB9LFxuICBdO1xuXG4gIHJldHVybiB1cmxzO1xufVxuXG5hc3luYyBmdW5jdGlvbiBnZXRBY2NvdW50SUQocGFnZTogUGFnZSk6IFByb21pc2U8c3RyaW5nPiB7XG4gIHRyeSB7XG4gICAgY29uc3Qgc2VsZWN0ZWRTbmlmQWNjb3VudCA9IGF3YWl0IHBhZ2UuJGV2YWwoQUNDT1VOVF9JRF9TRUxFQ1RPUiwgKGVsZW1lbnQ6IEVsZW1lbnQpID0+IHtcbiAgICAgIHJldHVybiBlbGVtZW50LnRleHRDb250ZW50IGFzIHN0cmluZztcbiAgICB9KTtcblxuICAgIHJldHVybiBzZWxlY3RlZFNuaWZBY2NvdW50O1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGNvbnN0IGVycm9yTWVzc2FnZSA9IGVycm9yIGluc3RhbmNlb2YgRXJyb3IgPyBlcnJvci5tZXNzYWdlIDogU3RyaW5nKGVycm9yKTtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBgRmFpbGVkIHRvIHJldHJpZXZlIGFjY291bnQgSUQuIFBvc3NpYmxlIG91dGRhdGVkIHNlbGVjdG9yICcke0FDQ09VTlRfSURfU0VMRUNUT1J9OiAke2Vycm9yTWVzc2FnZX1gLFxuICAgICk7XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0QW1vdW50RGF0YShhbW91bnRTdHI6IHN0cmluZykge1xuICBjb25zdCBhbW91bnRTdHJDb3B5ID0gYW1vdW50U3RyLnJlcGxhY2UoJywnLCAnJyk7XG4gIHJldHVybiBwYXJzZUZsb2F0KGFtb3VudFN0ckNvcHkpO1xufVxuXG5mdW5jdGlvbiBnZXRUeG5BbW91bnQodHhuOiBTY3JhcGVkVHJhbnNhY3Rpb24pIHtcbiAgY29uc3QgY3JlZGl0ID0gZ2V0QW1vdW50RGF0YSh0eG4uY3JlZGl0KTtcbiAgY29uc3QgZGViaXQgPSBnZXRBbW91bnREYXRhKHR4bi5kZWJpdCk7XG4gIHJldHVybiAoTnVtYmVyLmlzTmFOKGNyZWRpdCkgPyAwIDogY3JlZGl0KSAtIChOdW1iZXIuaXNOYU4oZGViaXQpID8gMCA6IGRlYml0KTtcbn1cblxudHlwZSBUcmFuc2FjdGlvbnNUciA9IHsgaWQ6IHN0cmluZzsgaW5uZXJEaXZzOiBzdHJpbmdbXSB9O1xuXG5mdW5jdGlvbiBjb252ZXJ0VHJhbnNhY3Rpb25zKHR4bnM6IFNjcmFwZWRUcmFuc2FjdGlvbltdLCBvcHRpb25zPzogU2NyYXBlck9wdGlvbnMpOiBUcmFuc2FjdGlvbltdIHtcbiAgcmV0dXJuIHR4bnMubWFwKHR4biA9PiB7XG4gICAgY29uc3QgY29udmVydGVkRGF0ZSA9IG1vbWVudCh0eG4uZGF0ZSwgREFURV9GT1JNQVQpLnRvSVNPU3RyaW5nKCk7XG4gICAgY29uc3QgY29udmVydGVkQW1vdW50ID0gZ2V0VHhuQW1vdW50KHR4bik7XG4gICAgY29uc3QgcmVzdWx0OiBUcmFuc2FjdGlvbiA9IHtcbiAgICAgIHR5cGU6IFRyYW5zYWN0aW9uVHlwZXMuTm9ybWFsLFxuICAgICAgaWRlbnRpZmllcjogdHhuLnJlZmVyZW5jZSA/IHBhcnNlSW50KHR4bi5yZWZlcmVuY2UsIDEwKSA6IHVuZGVmaW5lZCxcbiAgICAgIGRhdGU6IGNvbnZlcnRlZERhdGUsXG4gICAgICBwcm9jZXNzZWREYXRlOiBjb252ZXJ0ZWREYXRlLFxuICAgICAgb3JpZ2luYWxBbW91bnQ6IGNvbnZlcnRlZEFtb3VudCxcbiAgICAgIG9yaWdpbmFsQ3VycmVuY3k6IFNIRUtFTF9DVVJSRU5DWSxcbiAgICAgIGNoYXJnZWRBbW91bnQ6IGNvbnZlcnRlZEFtb3VudCxcbiAgICAgIHN0YXR1czogdHhuLnN0YXR1cyxcbiAgICAgIGRlc2NyaXB0aW9uOiB0eG4uZGVzY3JpcHRpb24sXG4gICAgICBtZW1vOiB0eG4ubWVtbyxcbiAgICB9O1xuXG4gICAgaWYgKG9wdGlvbnM/LmluY2x1ZGVSYXdUcmFuc2FjdGlvbikge1xuICAgICAgcmVzdWx0LnJhd1RyYW5zYWN0aW9uID0gdHhuO1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBoYW5kbGVUcmFuc2FjdGlvblJvdyh0eG5zOiBTY3JhcGVkVHJhbnNhY3Rpb25bXSwgdHhuUm93OiBUcmFuc2FjdGlvbnNUcikge1xuICBjb25zdCBkaXYgPSB0eG5Sb3cuaW5uZXJEaXZzO1xuXG4gIC8vIFJlbW92ZSBhbnl0aGluZyBleGNlcHQgZGlnaXRzLlxuICBjb25zdCByZWdleCA9IC9cXEQrL2dtO1xuXG4gIGNvbnN0IHR4OiBTY3JhcGVkVHJhbnNhY3Rpb24gPSB7XG4gICAgZGF0ZTogZGl2WzFdLFxuICAgIHJlZmVyZW5jZTogZGl2WzJdLnJlcGxhY2UocmVnZXgsICcnKSxcbiAgICBtZW1vOiAnJyxcbiAgICBkZXNjcmlwdGlvbjogZGl2WzNdLFxuICAgIGRlYml0OiBkaXZbNF0sXG4gICAgY3JlZGl0OiBkaXZbNV0sXG4gICAgc3RhdHVzOiBUcmFuc2FjdGlvblN0YXR1c2VzLkNvbXBsZXRlZCxcbiAgfTtcblxuICB0eG5zLnB1c2godHgpO1xufVxuXG5hc3luYyBmdW5jdGlvbiBnZXRBY2NvdW50VHJhbnNhY3Rpb25zKHBhZ2U6IFBhZ2UsIG9wdGlvbnM/OiBTY3JhcGVyT3B0aW9ucyk6IFByb21pc2U8VHJhbnNhY3Rpb25bXT4ge1xuICAvLyBXYWl0IGZvciB0cmFuc2FjdGlvbnMuXG4gIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnRGb3VuZChwYWdlLCAnLnVuZGVyLWxpbmUtdHhuLXRhYmxlLWhlYWRlcicsIHRydWUpO1xuXG4gIGNvbnN0IHR4bnM6IFNjcmFwZWRUcmFuc2FjdGlvbltdID0gW107XG4gIGNvbnN0IHRyYW5zYWN0aW9uc0RpdnMgPSBhd2FpdCBwYWdlRXZhbEFsbDxUcmFuc2FjdGlvbnNUcltdPihcbiAgICBwYWdlLFxuICAgICcubGlzdC1pdGVtLWhvbGRlciAuZW50aXJlLWNvbnRlbnQtY3RyJyxcbiAgICBbXSxcbiAgICBkaXZzID0+IHtcbiAgICAgIHJldHVybiAoZGl2cyBhcyBIVE1MRWxlbWVudFtdKS5tYXAoZGl2ID0+ICh7XG4gICAgICAgIGlkOiBkaXYuZ2V0QXR0cmlidXRlKCdpZCcpIHx8ICcnLFxuICAgICAgICBpbm5lckRpdnM6IEFycmF5LmZyb20oZGl2LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdkaXYnKSkubWFwKGVsID0+IChlbCBhcyBIVE1MRWxlbWVudCkuaW5uZXJUZXh0KSxcbiAgICAgIH0pKTtcbiAgICB9LFxuICApO1xuXG4gIGZvciAoY29uc3QgdHhuUm93IG9mIHRyYW5zYWN0aW9uc0RpdnMpIHtcbiAgICBoYW5kbGVUcmFuc2FjdGlvblJvdyh0eG5zLCB0eG5Sb3cpO1xuICB9XG5cbiAgcmV0dXJuIGNvbnZlcnRUcmFuc2FjdGlvbnModHhucywgb3B0aW9ucyk7XG59XG5cbi8vIE1hbmlwdWxhdGUgdGhlIGNhbGVuZGFyIGRyb3AgZG93biB0byBjaG9vc2UgdGhlIHR4cyBzdGFydCBkYXRlLlxuYXN5bmMgZnVuY3Rpb24gc2VhcmNoQnlEYXRlcyhwYWdlOiBQYWdlLCBzdGFydERhdGU6IE1vbWVudCkge1xuICAvLyBHZXQgdGhlIGRheSBudW1iZXIgZnJvbSBzdGFydERhdGUuIDEtMzEgKHVzdWFsbHkgMSlcbiAgY29uc3Qgc3RhcnREYXRlRGF5ID0gc3RhcnREYXRlLmZvcm1hdCgnRCcpO1xuICBjb25zdCBzdGFydERhdGVNb250aCA9IHN0YXJ0RGF0ZS5mb3JtYXQoJ00nKTtcbiAgY29uc3Qgc3RhcnREYXRlWWVhciA9IHN0YXJ0RGF0ZS5mb3JtYXQoJ1knKTtcblxuICAvLyBPcGVuIHRoZSBjYWxlbmRhciBkYXRlIHBpY2tlclxuICBjb25zdCBkYXRlRnJvbVBpY2sgPVxuICAgICdkaXYuZGF0ZS1vcHRpb25zLWNlbGw6bnRoLWNoaWxkKDcpID4gZGF0ZS1waWNrZXI6bnRoLWNoaWxkKDEpID4gZGl2Om50aC1jaGlsZCgxKSA+IHNwYW46bnRoLWNoaWxkKDIpJztcbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsIGRhdGVGcm9tUGljaywgdHJ1ZSk7XG4gIGF3YWl0IGNsaWNrQnV0dG9uKHBhZ2UsIGRhdGVGcm9tUGljayk7XG5cbiAgLy8gV2FpdCB1bnRpbCBmaXJzdCBkYXkgYXBwZWFyLlxuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgJy5wbXUtZGF5cyA+IGRpdjpudGgtY2hpbGQoMSknLCB0cnVlKTtcblxuICAvLyBPcGVuIE1vbnRocyBvcHRpb25zLlxuICBjb25zdCBtb250aEZyb21QaWNrID0gJy5wbXUtbW9udGgnO1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgbW9udGhGcm9tUGljaywgdHJ1ZSk7XG4gIGF3YWl0IGNsaWNrQnV0dG9uKHBhZ2UsIG1vbnRoRnJvbVBpY2spO1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgJy5wbXUtbW9udGhzID4gZGl2Om50aC1jaGlsZCgxKScsIHRydWUpO1xuXG4gIC8vIE9wZW4gWWVhciBvcHRpb25zLlxuICAvLyBVc2Ugc2FtZSBzZWxlY3Rvci4uLiBZYWhhdiBrbm93cyB3aHkuLi5cbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsIG1vbnRoRnJvbVBpY2ssIHRydWUpO1xuICBhd2FpdCBjbGlja0J1dHRvbihwYWdlLCBtb250aEZyb21QaWNrKTtcbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsICcucG11LXllYXJzID4gZGl2Om50aC1jaGlsZCgxKScsIHRydWUpO1xuXG4gIC8vIFNlbGVjdCB5ZWFyIGZyb20gYSAxMiB5ZWFyIGdyaWQuXG4gIGZvciAobGV0IGkgPSAxOyBpIDwgMTM7IGkgKz0gMSkge1xuICAgIGNvbnN0IHNlbGVjdG9yID0gYC5wbXUteWVhcnMgPiBkaXY6bnRoLWNoaWxkKCR7aX0pYDtcbiAgICBjb25zdCB5ZWFyID0gYXdhaXQgcGFnZS4kZXZhbChzZWxlY3RvciwgeSA9PiB7XG4gICAgICByZXR1cm4gKHkgYXMgSFRNTEVsZW1lbnQpLmlubmVyVGV4dDtcbiAgICB9KTtcbiAgICBpZiAoc3RhcnREYXRlWWVhciA9PT0geWVhcikge1xuICAgICAgYXdhaXQgY2xpY2tCdXR0b24ocGFnZSwgc2VsZWN0b3IpO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgLy8gU2VsZWN0IE1vbnRoLlxuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgJy5wbXUtbW9udGhzID4gZGl2Om50aC1jaGlsZCgxKScsIHRydWUpO1xuICAvLyBUaGUgZmlyc3QgZWxlbWVudCAoMSkgaXMgSmFudWFyeS5cbiAgY29uc3QgbW9udGhTZWxlY3RvciA9IGAucG11LW1vbnRocyA+IGRpdjpudGgtY2hpbGQoJHtzdGFydERhdGVNb250aH0pYDtcbiAgYXdhaXQgY2xpY2tCdXR0b24ocGFnZSwgbW9udGhTZWxlY3Rvcik7XG5cbiAgLy8gU2VsZWN0IERheS5cbiAgLy8gVGhlIGNhbGVuZGFyIGdyaWQgc2hvd3MgNyBkYXlzIGFuZCA2IHdlZWtzID0gNDIgZGF5cy5cbiAgLy8gSW4gdGhlb3J5LCB0aGUgZmlyc3QgZGF5IG9mIHRoZSBtb250aCB3aWxsIGJlIGluIHRoZSBmaXJzdCByb3cuXG4gIC8vIExldCdzIGNoZWNrIGV2ZXJ5dGhpbmcganVzdCBpbiBjYXNlLi4uXG4gIGZvciAobGV0IGkgPSAxOyBpIDwgNDI7IGkgKz0gMSkge1xuICAgIGNvbnN0IHNlbGVjdG9yID0gYC5wbXUtZGF5cyA+IGRpdjpudGgtY2hpbGQoJHtpfSlgO1xuICAgIGNvbnN0IGRheSA9IGF3YWl0IHBhZ2UuJGV2YWwoc2VsZWN0b3IsIGQgPT4ge1xuICAgICAgcmV0dXJuIChkIGFzIEhUTUxFbGVtZW50KS5pbm5lclRleHQ7XG4gICAgfSk7XG5cbiAgICBpZiAoc3RhcnREYXRlRGF5ID09PSBkYXkpIHtcbiAgICAgIGF3YWl0IGNsaWNrQnV0dG9uKHBhZ2UsIHNlbGVjdG9yKTtcbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxufVxuXG5hc3luYyBmdW5jdGlvbiBmZXRjaEFjY291bnREYXRhKFxuICBwYWdlOiBQYWdlLFxuICBzdGFydERhdGU6IE1vbWVudCxcbiAgYWNjb3VudElEOiBzdHJpbmcsXG4gIG9wdGlvbnM/OiBTY3JhcGVyT3B0aW9ucyxcbik6IFByb21pc2U8VHJhbnNhY3Rpb25zQWNjb3VudD4ge1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50RGlzYXBwZWFyKHBhZ2UsICcubG9hZGluZy1iYXItc3Bpbm5lcicpO1xuICBhd2FpdCBzZWFyY2hCeURhdGVzKHBhZ2UsIHN0YXJ0RGF0ZSk7XG4gIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnREaXNhcHBlYXIocGFnZSwgJy5sb2FkaW5nLWJhci1zcGlubmVyJyk7XG4gIGNvbnN0IHR4bnMgPSBhd2FpdCBnZXRBY2NvdW50VHJhbnNhY3Rpb25zKHBhZ2UsIG9wdGlvbnMpO1xuXG4gIHJldHVybiB7XG4gICAgYWNjb3VudE51bWJlcjogYWNjb3VudElELFxuICAgIHR4bnMsXG4gIH07XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGZldGNoQWNjb3VudHMocGFnZTogUGFnZSwgc3RhcnREYXRlOiBNb21lbnQsIG9wdGlvbnM/OiBTY3JhcGVyT3B0aW9ucyk6IFByb21pc2U8VHJhbnNhY3Rpb25zQWNjb3VudFtdPiB7XG4gIGNvbnN0IGFjY291bnRzOiBUcmFuc2FjdGlvbnNBY2NvdW50W10gPSBbXTtcblxuICAvLyBUT0RPOiBnZXQgbW9yZSBhY2NvdW50cy4gTm90IHN1cmUgaXMgc3VwcG9ydGVkLlxuICBjb25zdCBhY2NvdW50SUQgPSBhd2FpdCBnZXRBY2NvdW50SUQocGFnZSk7XG4gIGNvbnN0IGFjY291bnREYXRhID0gYXdhaXQgZmV0Y2hBY2NvdW50RGF0YShwYWdlLCBzdGFydERhdGUsIGFjY291bnRJRCwgb3B0aW9ucyk7XG4gIGFjY291bnRzLnB1c2goYWNjb3VudERhdGEpO1xuXG4gIHJldHVybiBhY2NvdW50cztcbn1cblxuYXN5bmMgZnVuY3Rpb24gd2FpdFJlYWRpbmVzc0ZvckFsbChwYWdlOiBQYWdlKSB7XG4gIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnRGb3VuZChwYWdlLCBgJHtVU0VSX0VMRU19YCwgdHJ1ZSk7XG4gIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnRGb3VuZChwYWdlLCBgJHtQQVNTV0RfRUxFTX1gLCB0cnVlKTtcbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsIGAke05BVElPTkFMSURfRUxFTX1gLCB0cnVlKTtcbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsIGAke1NVQk1JVF9MT0dJTl9TRUxFQ1RPUn1gLCB0cnVlKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gcmVkaXJlY3RPckRpYWxvZyhwYWdlOiBQYWdlKSB7XG4gIC8vIENsaWNrIG9uIGJhbmsgbWVzc2FnZXMgaWYgYW55LlxuICBhd2FpdCB3YWl0Rm9yTmF2aWdhdGlvbihwYWdlKTtcbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudERpc2FwcGVhcihwYWdlLCAnLmxvYWRpbmctYmFyLXNwaW5uZXInKTtcbiAgY29uc3QgaGFzTWVzc2FnZSA9IGF3YWl0IGVsZW1lbnRQcmVzZW50T25QYWdlKHBhZ2UsICcubWVzc2FnaW5nLWxpbmtzLWNvbnRhaW5lcicpO1xuICBpZiAoaGFzTWVzc2FnZSkge1xuICAgIGF3YWl0IGNsaWNrQnV0dG9uKHBhZ2UsICcubGluay0xJyk7XG4gIH1cblxuICBjb25zdCBwcm9taXNlMSA9IHBhZ2Uud2FpdEZvclNlbGVjdG9yKEFDQ09VTlRfREVUQUlMU19TRUxFQ1RPUiwgeyB0aW1lb3V0OiAzMDAwMCB9KTtcbiAgY29uc3QgcHJvbWlzZTIgPSBwYWdlLndhaXRGb3JTZWxlY3RvcihDSEFOR0VfUEFTU1dPUkRfT0xEX1BBU1MsIHsgdGltZW91dDogMzAwMDAgfSk7XG4gIGNvbnN0IHByb21pc2VzID0gW3Byb21pc2UxLCBwcm9taXNlMl07XG5cbiAgYXdhaXQgUHJvbWlzZS5yYWNlKHByb21pc2VzKTtcbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudERpc2FwcGVhcihwYWdlLCAnLmxvYWRpbmctYmFyLXNwaW5uZXInKTtcbn1cblxudHlwZSBTY3JhcGVyU3BlY2lmaWNDcmVkZW50aWFscyA9IHsgdXNlcm5hbWU6IHN0cmluZzsgcGFzc3dvcmQ6IHN0cmluZzsgbmF0aW9uYWxJRDogc3RyaW5nIH07XG5cbmNsYXNzIFlhaGF2U2NyYXBlciBleHRlbmRzIEJhc2VTY3JhcGVyV2l0aEJyb3dzZXI8U2NyYXBlclNwZWNpZmljQ3JlZGVudGlhbHM+IHtcbiAgZ2V0TG9naW5PcHRpb25zKGNyZWRlbnRpYWxzOiBTY3JhcGVyU3BlY2lmaWNDcmVkZW50aWFscykge1xuICAgIHJldHVybiB7XG4gICAgICBsb2dpblVybDogYCR7TE9HSU5fVVJMfWAsXG4gICAgICBmaWVsZHM6IFtcbiAgICAgICAgeyBzZWxlY3RvcjogYCR7VVNFUl9FTEVNfWAsIHZhbHVlOiBjcmVkZW50aWFscy51c2VybmFtZSB9LFxuICAgICAgICB7IHNlbGVjdG9yOiBgJHtQQVNTV0RfRUxFTX1gLCB2YWx1ZTogY3JlZGVudGlhbHMucGFzc3dvcmQgfSxcbiAgICAgICAgeyBzZWxlY3RvcjogYCR7TkFUSU9OQUxJRF9FTEVNfWAsIHZhbHVlOiBjcmVkZW50aWFscy5uYXRpb25hbElEIH0sXG4gICAgICBdLFxuICAgICAgc3VibWl0QnV0dG9uU2VsZWN0b3I6IGAke1NVQk1JVF9MT0dJTl9TRUxFQ1RPUn1gLFxuICAgICAgY2hlY2tSZWFkaW5lc3M6IGFzeW5jICgpID0+IHdhaXRSZWFkaW5lc3NGb3JBbGwodGhpcy5wYWdlKSxcbiAgICAgIHBvc3RBY3Rpb246IGFzeW5jICgpID0+IHJlZGlyZWN0T3JEaWFsb2codGhpcy5wYWdlKSxcbiAgICAgIHBvc3NpYmxlUmVzdWx0czogZ2V0UG9zc2libGVMb2dpblJlc3VsdHModGhpcy5wYWdlKSxcbiAgICB9O1xuICB9XG5cbiAgYXN5bmMgZmV0Y2hEYXRhKCkge1xuICAgIC8vIEdvdG8gc3RhdGVtZW50cyBwYWdlXG4gICAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHRoaXMucGFnZSwgQUNDT1VOVF9ERVRBSUxTX1NFTEVDVE9SLCB0cnVlKTtcbiAgICBhd2FpdCBjbGlja0J1dHRvbih0aGlzLnBhZ2UsIEFDQ09VTlRfREVUQUlMU19TRUxFQ1RPUik7XG4gICAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHRoaXMucGFnZSwgJy5zdGF0ZW1lbnQtb3B0aW9ucyAuc2VsZWN0ZWQtaXRlbS10b3AnLCB0cnVlKTtcblxuICAgIGNvbnN0IGRlZmF1bHRTdGFydE1vbWVudCA9IG1vbWVudCgpLnN1YnRyYWN0KDMsICdtb250aHMnKS5hZGQoMSwgJ2RheScpO1xuICAgIGNvbnN0IHN0YXJ0RGF0ZSA9IHRoaXMub3B0aW9ucy5zdGFydERhdGUgfHwgZGVmYXVsdFN0YXJ0TW9tZW50LnRvRGF0ZSgpO1xuICAgIGNvbnN0IHN0YXJ0TW9tZW50ID0gbW9tZW50Lm1heChkZWZhdWx0U3RhcnRNb21lbnQsIG1vbWVudChzdGFydERhdGUpKTtcblxuICAgIGNvbnN0IGFjY291bnRzID0gYXdhaXQgZmV0Y2hBY2NvdW50cyh0aGlzLnBhZ2UsIHN0YXJ0TW9tZW50LCB0aGlzLm9wdGlvbnMpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHN1Y2Nlc3M6IHRydWUsXG4gICAgICBhY2NvdW50cyxcbiAgICB9O1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFlhaGF2U2NyYXBlcjtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsT0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsVUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUscUJBQUEsR0FBQUYsT0FBQTtBQU9BLElBQUFHLFdBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLGFBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLHVCQUFBLEdBQUFMLE9BQUE7QUFBOEcsU0FBQUQsdUJBQUFPLENBQUEsV0FBQUEsQ0FBQSxJQUFBQSxDQUFBLENBQUFDLFVBQUEsR0FBQUQsQ0FBQSxLQUFBRSxPQUFBLEVBQUFGLENBQUE7QUFHOUcsTUFBTUcsU0FBUyxHQUFHLGtDQUFrQztBQUNwRCxNQUFNQyxRQUFRLEdBQUcsNkRBQTZEO0FBQzlFLE1BQU1DLHdCQUF3QixHQUFHLG9CQUFvQjtBQUNyRCxNQUFNQyx3QkFBd0IsR0FBRyx1Q0FBdUM7QUFDeEUsTUFBTUMsZ0JBQWdCLEdBQUcsR0FBR0gsUUFBUSxXQUFXO0FBRS9DLE1BQU1JLG1CQUFtQixHQUFHLDhFQUE4RTtBQUMxRyxNQUFNQyx3QkFBd0IsR0FBRyxrQkFBa0I7QUFDbkQsTUFBTUMsV0FBVyxHQUFHLFlBQVk7QUFFaEMsTUFBTUMsU0FBUyxHQUFHLFdBQVc7QUFDN0IsTUFBTUMsV0FBVyxHQUFHLFdBQVc7QUFDL0Is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
|
package/lib/transactions.d.ts
CHANGED
package/lib/transactions.js
CHANGED
|
@@ -14,4 +14,4 @@ let TransactionStatuses = exports.TransactionStatuses = /*#__PURE__*/function (T
|
|
|
14
14
|
TransactionStatuses["Pending"] = "pending";
|
|
15
15
|
return TransactionStatuses;
|
|
16
16
|
}({});
|
|
17
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUcmFuc2FjdGlvblR5cGVzIiwiZXhwb3J0cyIsIlRyYW5zYWN0aW9uU3RhdHVzZXMiXSwic291cmNlcyI6WyIuLi9zcmMvdHJhbnNhY3Rpb25zLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25zQWNjb3VudCB7XG4gIGFjY291bnROdW1iZXI6IHN0cmluZztcbiAgYmFsYW5jZT86IG51bWJlcjtcbiAgdHhuczogVHJhbnNhY3Rpb25bXTtcbn1cblxuZXhwb3J0IGVudW0gVHJhbnNhY3Rpb25UeXBlcyB7XG4gIE5vcm1hbCA9ICdub3JtYWwnLFxuICBJbnN0YWxsbWVudHMgPSAnaW5zdGFsbG1lbnRzJyxcbn1cblxuZXhwb3J0IGVudW0gVHJhbnNhY3Rpb25TdGF0dXNlcyB7XG4gIENvbXBsZXRlZCA9ICdjb21wbGV0ZWQnLFxuICBQZW5kaW5nID0gJ3BlbmRpbmcnLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zYWN0aW9uSW5zdGFsbG1lbnRzIHtcbiAgLyoqXG4gICAqIHRoZSBjdXJyZW50IGluc3RhbGxtZW50IG51bWJlclxuICAgKi9cbiAgbnVtYmVyOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIHRoZSB0b3RhbCBudW1iZXIgb2YgaW5zdGFsbG1lbnRzXG4gICAqL1xuICB0b3RhbDogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zYWN0aW9uIHtcbiAgdHlwZTogVHJhbnNhY3Rpb25UeXBlcztcbiAgLyoqXG4gICAqIHNvbWV0aW1lcyBjYWxsZWQgQXNtYWNodGFcbiAgICovXG4gIGlkZW50aWZpZXI/
|
|
17
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUcmFuc2FjdGlvblR5cGVzIiwiZXhwb3J0cyIsIlRyYW5zYWN0aW9uU3RhdHVzZXMiXSwic291cmNlcyI6WyIuLi9zcmMvdHJhbnNhY3Rpb25zLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25zQWNjb3VudCB7XG4gIGFjY291bnROdW1iZXI6IHN0cmluZztcbiAgYmFsYW5jZT86IG51bWJlcjtcbiAgdHhuczogVHJhbnNhY3Rpb25bXTtcbn1cblxuZXhwb3J0IGVudW0gVHJhbnNhY3Rpb25UeXBlcyB7XG4gIE5vcm1hbCA9ICdub3JtYWwnLFxuICBJbnN0YWxsbWVudHMgPSAnaW5zdGFsbG1lbnRzJyxcbn1cblxuZXhwb3J0IGVudW0gVHJhbnNhY3Rpb25TdGF0dXNlcyB7XG4gIENvbXBsZXRlZCA9ICdjb21wbGV0ZWQnLFxuICBQZW5kaW5nID0gJ3BlbmRpbmcnLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zYWN0aW9uSW5zdGFsbG1lbnRzIHtcbiAgLyoqXG4gICAqIHRoZSBjdXJyZW50IGluc3RhbGxtZW50IG51bWJlclxuICAgKi9cbiAgbnVtYmVyOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIHRoZSB0b3RhbCBudW1iZXIgb2YgaW5zdGFsbG1lbnRzXG4gICAqL1xuICB0b3RhbDogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zYWN0aW9uIHtcbiAgdHlwZTogVHJhbnNhY3Rpb25UeXBlcztcbiAgLyoqXG4gICAqIHNvbWV0aW1lcyBjYWxsZWQgQXNtYWNodGFcbiAgICovXG4gIGlkZW50aWZpZXI/OiBzdHJpbmcgfCBudW1iZXI7XG4gIC8qKlxuICAgKiBJU08gZGF0ZSBzdHJpbmdcbiAgICovXG4gIGRhdGU6IHN0cmluZztcbiAgLyoqXG4gICAqIElTTyBkYXRlIHN0cmluZ1xuICAgKi9cbiAgcHJvY2Vzc2VkRGF0ZTogc3RyaW5nO1xuICBvcmlnaW5hbEFtb3VudDogbnVtYmVyO1xuICBvcmlnaW5hbEN1cnJlbmN5OiBzdHJpbmc7XG4gIGNoYXJnZWRBbW91bnQ6IG51bWJlcjtcbiAgY2hhcmdlZEN1cnJlbmN5Pzogc3RyaW5nO1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICBtZW1vPzogc3RyaW5nO1xuICBzdGF0dXM6IFRyYW5zYWN0aW9uU3RhdHVzZXM7XG4gIGluc3RhbGxtZW50cz86IFRyYW5zYWN0aW9uSW5zdGFsbG1lbnRzO1xuICBjYXRlZ29yeT86IHN0cmluZztcbiAgcmF3VHJhbnNhY3Rpb24/OiB1bmtub3duO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7SUFNWUEsZ0JBQWdCLEdBQUFDLE9BQUEsQ0FBQUQsZ0JBQUEsMEJBQWhCQSxnQkFBZ0I7RUFBaEJBLGdCQUFnQjtFQUFoQkEsZ0JBQWdCO0VBQUEsT0FBaEJBLGdCQUFnQjtBQUFBO0FBQUEsSUFLaEJFLG1CQUFtQixHQUFBRCxPQUFBLENBQUFDLG1CQUFBLDBCQUFuQkEsbUJBQW1CO0VBQW5CQSxtQkFBbUI7RUFBbkJBLG1CQUFtQjtFQUFBLE9BQW5CQSxtQkFBbUI7QUFBQSIsImlnbm9yZUxpc3QiOltdfQ==
|