israeli-bank-scrapers 3.4.0 → 3.4.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.
|
@@ -8,7 +8,7 @@ declare class OtsarHahayalScraper extends BaseScraperWithBrowser {
|
|
|
8
8
|
selector: string;
|
|
9
9
|
value: string;
|
|
10
10
|
}[];
|
|
11
|
-
submitButtonSelector:
|
|
11
|
+
submitButtonSelector: () => Promise<void>;
|
|
12
12
|
postAction: () => Promise<void>;
|
|
13
13
|
possibleResults: PossibleLoginResults;
|
|
14
14
|
};
|
|
@@ -199,7 +199,10 @@ class OtsarHahayalScraper extends _baseScraperWithBrowser.BaseScraperWithBrowser
|
|
|
199
199
|
return {
|
|
200
200
|
loginUrl: `${BASE_URL}/MatafLoginService/MatafLoginServlet?bankId=OTSARPRTAL&site=Private&KODSAFA=HE`,
|
|
201
201
|
fields: createLoginFields(credentials),
|
|
202
|
-
submitButtonSelector:
|
|
202
|
+
submitButtonSelector: async () => {
|
|
203
|
+
await this.page.waitForTimeout(1000);
|
|
204
|
+
await (0, _elementsInteractions.clickButton)(this.page, '#continueBtn');
|
|
205
|
+
},
|
|
203
206
|
postAction: async () => waitForPostLogin(this.page),
|
|
204
207
|
possibleResults: getPossibleLoginResults(this.page)
|
|
205
208
|
};
|
|
@@ -224,4 +227,4 @@ class OtsarHahayalScraper extends _baseScraperWithBrowser.BaseScraperWithBrowser
|
|
|
224
227
|
|
|
225
228
|
var _default = OtsarHahayalScraper;
|
|
226
229
|
exports.default = _default;
|
|
227
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JhcGVycy9vdHNhci1oYWhheWFsLnRzIl0sIm5hbWVzIjpbIkJBU0VfVVJMIiwiTE9OR19EQVRFX0ZPUk1BVCIsIkRBVEVfRk9STUFUIiwiZ2V0UG9zc2libGVMb2dpblJlc3VsdHMiLCJwYWdlIiwidXJscyIsIkxvZ2luUmVzdWx0cyIsIlN1Y2Nlc3MiLCJJbnZhbGlkUGFzc3dvcmQiLCJnZXRUcmFuc2FjdGlvbnNVcmwiLCJjcmVhdGVMb2dpbkZpZWxkcyIsImNyZWRlbnRpYWxzIiwic2VsZWN0b3IiLCJ2YWx1ZSIsInVzZXJuYW1lIiwicGFzc3dvcmQiLCJnZXRBbW91bnREYXRhIiwiYW1vdW50U3RyIiwiaGFzQ3VycmVuY3kiLCJhbW91bnRTdHJDbG4iLCJyZXBsYWNlIiwiY3VycmVuY3kiLCJhbW91bnQiLCJwYXJzZUZsb2F0IiwiU0hFS0VMX0NVUlJFTkNZIiwiaW5jbHVkZXMiLCJTSEVLRUxfQ1VSUkVOQ1lfU1lNQk9MIiwicGFydHMiLCJzcGxpdCIsImNvbnZlcnRUcmFuc2FjdGlvbnMiLCJ0eG5zIiwibWFwIiwidHhuIiwiZGF0ZUZvcm1hdCIsImRhdGUiLCJsZW5ndGgiLCJFcnJvciIsInR4bkRhdGUiLCJ0b0lTT1N0cmluZyIsImNyZWRpdCIsImRlYml0IiwiTnVtYmVyIiwiaXNOYU4iLCJyZXN1bHQiLCJ0eXBlIiwiVHJhbnNhY3Rpb25UeXBlcyIsIk5vcm1hbCIsInN0YXR1cyIsIlRyYW5zYWN0aW9uU3RhdHVzZXMiLCJDb21wbGV0ZWQiLCJpZGVudGlmaWVyIiwicmVmZXJlbmNlIiwicGFyc2VJbnQiLCJ1bmRlZmluZWQiLCJwcm9jZXNzZWREYXRlIiwib3JpZ2luYWxBbW91bnQiLCJvcmlnaW5hbEN1cnJlbmN5IiwiY2hhcmdlZEFtb3VudCIsImRlc2NyaXB0aW9uIiwibWVtbyIsInBhcnNlVHJhbnNhY3Rpb25QYWdlIiwidGRzVmFsdWVzIiwidHJzIiwiZWwiLCJxdWVyeVNlbGVjdG9yIiwiaW5uZXJUZXh0IiwiYmFsYW5jZSIsImdldEFjY291bnRTdW1tYXJ5IiwiYmFsYW5jZUVsbSIsIiQiLCJiYWxhbmNlSW5uZXJUZXh0RWxtIiwiZ2V0UHJvcGVydHkiLCJiYWxhbmNlVGV4dCIsImpzb25WYWx1ZSIsImJhbGFuY2VWYWx1ZSIsImNyZWRpdExpbWl0IiwiY3JlZGl0VXRpbGl6YXRpb24iLCJiYWxhbmNlQ3VycmVuY3kiLCJmZXRjaFRyYW5zYWN0aW9uc0ZvckFjY291bnQiLCJzdGFydERhdGUiLCJzdW1tYXJ5IiwiYnJhbmNoTnVtIiwiJGV2YWwiLCJzcGFuIiwiYWNjb3VudE5tYnIiLCJhY2NvdW50TnVtYmVyIiwiZm9ybWF0IiwiaGFzTmV4dFBhZ2UiLCJub1RyYW5zYWN0aW9uRWxtIiwicGFnZVR4bnMiLCJjb25jYXQiLCJidXR0b24iLCJzbGljZSIsImZldGNoVHJhbnNhY3Rpb25zIiwid2FpdEZvclBvc3RMb2dpbiIsIlByb21pc2UiLCJyYWNlIiwiT3RzYXJIYWhheWFsU2NyYXBlciIsIkJhc2VTY3JhcGVyV2l0aEJyb3dzZXIiLCJnZXRMb2dpbk9wdGlvbnMiLCJsb2dpblVybCIsImZpZWxkcyIsInN1Ym1pdEJ1dHRvblNlbGVjdG9yIiwicG9zdEFjdGlvbiIsInBvc3NpYmxlUmVzdWx0cyIsImZldGNoRGF0YSIsImRlZmF1bHRTdGFydE1vbWVudCIsInN1YnRyYWN0IiwiYWRkIiwib3B0aW9ucyIsInRvRGF0ZSIsInN0YXJ0TW9tZW50IiwibW9tZW50IiwibWF4IiwidXJsIiwibmF2aWdhdGVUbyIsImFjY291bnRzIiwic3VjY2VzcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBT0E7O0FBQ0E7Ozs7QUFHQSxNQUFNQSxRQUFRLEdBQUcsZ0NBQWpCO0FBQ0EsTUFBTUMsZ0JBQWdCLEdBQUcsWUFBekI7QUFDQSxNQUFNQyxXQUFXLEdBQUcsVUFBcEI7O0FBYUEsU0FBU0MsdUJBQVQsQ0FBaUNDLElBQWpDLEVBQTZDO0FBQzNDLFFBQU1DLElBQTBC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LEVBQUUzRixpQkFBaUIsQ0FBQ0MsV0FBRCxDQUZwQjtBQUdMMkYsTUFBQUEsb0JBQW9CLEVBQUUsY0FIakI7QUFJTEMsTUFBQUEsVUFBVSxFQUFFLFlBQVlULGdCQUFnQixDQUFDLEtBQUsxRixJQUFOLENBSm5DO0FBS0xvRyxNQUFBQSxlQUFlLEVBQUVyRyx1QkFBdUIsQ0FBQyxLQUFLQyxJQUFOO0FBTG5DLEtBQVA7QUFPRDs7QUFFRCxRQUFNcUcsU0FBTixHQUFrQjtBQUNoQixVQUFNQyxrQkFBa0IsR0FBRyx1QkFBU0MsUUFBVCxDQUFrQixDQUFsQixFQUFxQixPQUFyQixFQUE4QkMsR0FBOUIsQ0FBa0MsQ0FBbEMsRUFBcUMsS0FBckMsQ0FBM0I7QUFDQSxVQUFNN0IsU0FBUyxHQUFHLEtBQUs4QixPQUFMLENBQWE5QixTQUFiLElBQTBCMkIsa0JBQWtCLENBQUNJLE1BQW5CLEVBQTVDOztBQUNBLFVBQU1DLFdBQVcsR0FBR0MsZ0JBQU9DLEdBQVAsQ0FBV1Asa0JBQVgsRUFBK0IscUJBQU8zQixTQUFQLENBQS9CLENBQXBCOztBQUVBLFVBQU1tQyxHQUFHLEdBQUd6RyxrQkFBa0IsRUFBOUI7QUFDQSxVQUFNLEtBQUswRyxVQUFMLENBQWdCRCxHQUFoQixDQUFOO0FBRUEsVUFBTUUsUUFBUSxHQUFHLE1BQU12QixpQkFBaUIsQ0FBQyxLQUFLekYsSUFBTixFQUFZMkcsV0FBWixDQUF4QztBQUVBLFdBQU87QUFDTE0sTUFBQUEsT0FBTyxFQUFFLElBREo7QUFFTEQsTUFBQUE7QUFGSyxLQUFQO0FBSUQ7O0FBekJzRDs7ZUE0QjFDbkIsbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbW9tZW50LCB7IE1vbWVudCB9IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBQYWdlIH0gZnJvbSAncHVwcGV0ZWVyJztcbmltcG9ydCB7IEJhc2VTY3JhcGVyV2l0aEJyb3dzZXIsIExvZ2luUmVzdWx0cywgUG9zc2libGVMb2dpblJlc3VsdHMgfSBmcm9tICcuL2Jhc2Utc2NyYXBlci13aXRoLWJyb3dzZXInO1xuaW1wb3J0IHsgd2FpdEZvck5hdmlnYXRpb24gfSBmcm9tICcuLi9oZWxwZXJzL25hdmlnYXRpb24nO1xuaW1wb3J0IHtcbiAgZmlsbElucHV0LFxuICBjbGlja0J1dHRvbixcbiAgd2FpdFVudGlsRWxlbWVudEZvdW5kLFxuICBwYWdlRXZhbEFsbCxcbiAgZWxlbWVudFByZXNlbnRPblBhZ2UsXG59IGZyb20gJy4uL2hlbHBlcnMvZWxlbWVudHMtaW50ZXJhY3Rpb25zJztcbmltcG9ydCB7IFNIRUtFTF9DVVJSRU5DWSwgU0hFS0VMX0NVUlJFTkNZX1NZTUJPTCB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiwgVHJhbnNhY3Rpb25TdGF0dXNlcywgVHJhbnNhY3Rpb25UeXBlcyB9IGZyb20gJy4uL3RyYW5zYWN0aW9ucyc7XG5pbXBvcnQgeyBTY3JhcGVyQ3JlZGVudGlhbHMgfSBmcm9tICcuL2Jhc2Utc2NyYXBlcic7XG5cbmNvbnN0IEJBU0VfVVJMID0gJ2h0dHBzOi8vb25saW5lLmJhbmtvdHNhci5jby5pbCc7XG5jb25zdCBMT05HX0RBVEVfRk9STUFUID0gJ0REL01NL1lZWVknO1xuY29uc3QgREFURV9GT1JNQVQgPSAnREQvTU0vWVknO1xuXG5pbnRlcmZhY2UgU2NyYXBlZFRyYW5zYWN0aW9uIHtcbiAgYmFsYW5jZT86IHN0cmluZztcbiAgZGViaXQ/OiBzdHJpbmc7XG4gIGNyZWRpdD86IHN0cmluZztcbiAgbWVtbz86IHN0cmluZztcbiAgc3RhdHVzPzogc3RyaW5nO1xuICByZWZlcmVuY2U/OiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICBkYXRlOiBzdHJpbmc7XG59XG5cbmZ1bmN0aW9uIGdldFBvc3NpYmxlTG9naW5SZXN1bHRzKHBhZ2U6IFBhZ2UpIHtcbiAgY29uc3QgdXJsczogUG9zc2libGVMb2dpblJlc3VsdHMgPSB7fTtcbiAgdXJsc1tMb2dpblJlc3VsdHMuU3VjY2Vzc10gPSBbYCR7QkFTRV9VUkx9L3dwcy9teXBvcnRhbC9GaWJpTWVudS9PbmxpbmVgXTtcbiAgdXJsc1tMb2dpblJlc3VsdHMuSW52YWxpZFBhc3N3b3JkXSA9IFsoKSA9PiBlbGVtZW50UHJlc2VudE9uUGFnZShwYWdlLCAnI3ZhbGlkYXRpb25Nc2cnKV07XG4gIC8vIFRPRE86IHN1cHBvcnQgY2hhbmdlIHBhc3N3b3JkXG4gIC8qIHVybHNbTE9HSU5fUkVTVUxULkNIQU5HRV9QQVNTV09SRF0gPSBbYGBdOyAqL1xuICByZXR1cm4gdXJscztcbn1cblxuZnVuY3Rpb24gZ2V0VHJhbnNhY3Rpb25zVXJsKCkge1xuICByZXR1cm4gYCR7QkFTRV9VUkx9L3dwcy9teXBvcnRhbC9GaWJpTWVudS9PbmxpbmUvT25BY2NvdW50TW5nbWVudC9PbkJhbGFuY2VUcmFucy9Qcml2YXRlQWNjb3VudEZsb3dgO1xufVxuXG5mdW5jdGlvbiBjcmVhdGVMb2dpbkZpZWxkcyhjcmVkZW50aWFsczogU2NyYXBlckNyZWRlbnRpYWxzKSB7XG4gIHJldHVybiBbXG4gICAgeyBzZWxlY3RvcjogJyN1c2VybmFtZScsIHZhbHVlOiBjcmVkZW50aWFscy51c2VybmFtZSB9LFxuICAgIHsgc2VsZWN0b3I6ICcjcGFzc3dvcmQnLCB2YWx1ZTogY3JlZGVudGlhbHMucGFzc3dvcmQgfSxcbiAgXTtcbn1cblxuZnVuY3Rpb24gZ2V0QW1vdW50RGF0YShhbW91bnRTdHI6IHN0cmluZywgaGFzQ3VycmVuY3kgPSBmYWxzZSkge1xuICBjb25zdCBhbW91bnRTdHJDbG4gPSBhbW91bnRTdHIucmVwbGFjZSgnLCcsICcnKTtcbiAgbGV0IGN1cnJlbmN5OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgbGV0IGFtb3VudDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG4gIGlmICghaGFzQ3VycmVuY3kpIHtcbiAgICBhbW91bnQgPSBwYXJzZUZsb2F0KGFtb3VudFN0ckNsbik7XG4gICAgY3VycmVuY3kgPSBTSEVLRUxfQ1VSUkVOQ1k7XG4gIH0gZWxzZSBpZiAoYW1vdW50U3RyQ2xuLmluY2x1ZGVzKFNIRUtFTF9DVVJSRU5DWV9TWU1CT0wpKSB7XG4gICAgYW1vdW50ID0gcGFyc2VGbG9hdChhbW91bnRTdHJDbG4ucmVwbGFjZShTSEVLRUxfQ1VSUkVOQ1lfU1lNQk9MLCAnJykpO1xuICAgIGN1cnJlbmN5ID0gU0hFS0VMX0NVUlJFTkNZO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IHBhcnRzID0gYW1vdW50U3RyQ2xuLnNwbGl0KCcgJyk7XG4gICAgYW1vdW50ID0gcGFyc2VGbG9hdChwYXJ0c1swXSk7XG4gICAgWywgY3VycmVuY3ldID0gcGFydHM7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIGFtb3VudCxcbiAgICBjdXJyZW5jeSxcbiAgfTtcbn1cblxuZnVuY3Rpb24gY29udmVydFRyYW5zYWN0aW9ucyh0eG5zOiBTY3JhcGVkVHJhbnNhY3Rpb25bXSk6IFRyYW5zYWN0aW9uW10ge1xuICByZXR1cm4gdHhucy5tYXAoKHR4bikgPT4ge1xuICAgIGNvbnN0IGRhdGVGb3JtYXQgPVxuICAgICAgICB0eG4uZGF0ZS5sZW5ndGggPT09IDggP1xuICAgICAgICAgIERBVEVfRk9STUFUIDpcbiAgICAgICAgICB0eG4uZGF0ZS5sZW5ndGggPT09IDEwID9cbiAgICAgICAgICAgIExPTkdfREFURV9GT1JNQVQgOlxuICAgICAgICAgICAgbnVsbDtcbiAgICBpZiAoIWRhdGVGb3JtYXQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCBkYXRlIGZvcm1hdCcpO1xuICAgIH1cbiAgICBjb25zdCB0eG5EYXRlID0gbW9tZW50KHR4bi5kYXRlLCBkYXRlRm9ybWF0KS50b0lTT1N0cmluZygpO1xuICAgIGNvbnN0IGNyZWRpdCA9IGdldEFtb3VudERhdGEodHhuLmNyZWRpdCB8fCAnJykuYW1vdW50O1xuICAgIGNvbnN0IGRlYml0ID0gZ2V0QW1vdW50RGF0YSh0eG4uZGViaXQgfHwgJycpLmFtb3VudDtcbiAgICBjb25zdCBhbW91bnQgPSAoTnVtYmVyLmlzTmFOKGNyZWRpdCkgPyAwIDogY3JlZGl0KSAtIChOdW1iZXIuaXNOYU4oZGViaXQpID8gMCA6IGRlYml0KTtcblxuICAgIGNvbnN0IHJlc3VsdDogVHJhbnNhY3Rpb24gPSB7XG4gICAgICB0eXBlOiBUcmFuc2FjdGlvblR5cGVzLk5vcm1hbCxcbiAgICAgIHN0YXR1czogVHJhbnNhY3Rpb25TdGF0dXNlcy5Db21wbGV0ZWQsXG4gICAgICBpZGVudGlmaWVyOiB0eG4ucmVmZXJlbmNlID8gcGFyc2VJbnQodHhuLnJlZmVyZW5jZSwgMTApIDogdW5kZWZpbmVkLFxuICAgICAgZGF0ZTogdHhuRGF0ZSxcbiAgICAgIHByb2Nlc3NlZERhdGU6IHR4bkRhdGUsXG4gICAgICBvcmlnaW5hbEFtb3VudDogYW1vdW50LFxuICAgICAgb3JpZ2luYWxDdXJyZW5jeTogU0hFS0VMX0NVUlJFTkNZLFxuICAgICAgY2hhcmdlZEFtb3VudDogYW1vdW50LFxuICAgICAgZGVzY3JpcHRpb246IHR4bi5kZXNjcmlwdGlvbiB8fCAnJyxcbiAgICAgIG1lbW86ICcnLFxuICAgIH07XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9KTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gcGFyc2VUcmFuc2FjdGlvblBhZ2UocGFnZTogUGFnZSk6IFByb21pc2U8U2NyYXBlZFRyYW5zYWN0aW9uW10+IHtcbiAgY29uc3QgdGRzVmFsdWVzID0gYXdhaXQgcGFnZUV2YWxBbGwocGFnZSwgJyNkYXRhVGFibGUwNzcgdGJvZHkgdHInLCBbXSwgKHRycykgPT4ge1xuICAgIHJldHVybiAodHJzKS5tYXAoKGVsKSA9PiAoe1xuICAgICAgZGF0ZTogKGVsLnF1ZXJ5U2VsZWN0b3IoJy5kYXRlJykgYXMgSFRNTEVsZW1lbnQpLmlubmVyVGV4dCxcbiAgICAgIC8vIHJlZmVyZW5jZSBhbmQgZGVzY3JpcHRpb24gaGF2ZSB2aWNlLXZlcnNhIGNsYXNzIG5hbWVcbiAgICAgIGRlc2NyaXB0aW9uOiAoZWwucXVlcnlTZWxlY3RvcignLnJlZmVyZW5jZScpIGFzIEhUTUxFbGVtZW50KS5pbm5lclRleHQsXG4gICAgICByZWZlcmVuY2U6IChlbC5xdWVyeVNlbGVjdG9yKCcuZGV0YWlscycpIGFzIEhUTUxFbGVtZW50KS5pbm5lclRleHQsXG4gICAgICBjcmVkaXQ6IChlbC5xdWVyeVNlbGVjdG9yKCcuY3JlZGl0JykgYXMgSFRNTEVsZW1lbnQpLmlubmVyVGV4dCxcbiAgICAgIGRlYml0OiAoZWwucXVlcnlTZWxlY3RvcignLmRlYml0JykgYXMgSFRNTEVsZW1lbnQpLmlubmVyVGV4dCxcbiAgICAgIGJhbGFuY2U6IChlbC5xdWVyeVNlbGVjdG9yKCcuYmFsYW5jZScpIGFzIEhUTUxFbGVtZW50KS5pbm5lclRleHQsXG4gICAgfSkpO1xuICB9KTtcblxuICByZXR1cm4gdGRzVmFsdWVzO1xufVxuXG5hc3luYyBmdW5jdGlvbiBnZXRBY2NvdW50U3VtbWFyeShwYWdlOiBQYWdlKSB7XG4gIGNvbnN0IGJhbGFuY2VFbG0gPSBhd2FpdCBwYWdlLiQoJy5jdXJyZW50X2JhbGFuY2UnKTtcbiAgY29uc3QgYmFsYW5jZUlubmVyVGV4dEVsbSA9IGF3YWl0IGJhbGFuY2VFbG0hLmdldFByb3BlcnR5KCdpbm5lclRleHQnKTtcbiAgY29uc3QgYmFsYW5jZVRleHQgPSBhd2FpdCBiYWxhbmNlSW5uZXJUZXh0RWxtLmpzb25WYWx1ZSgpO1xuICBjb25zdCBiYWxhbmNlVmFsdWUgPSBnZXRBbW91bnREYXRhKGJhbGFuY2VUZXh0IGFzIHN0cmluZywgdHJ1ZSk7XG4gIC8vIFRPRE86IEZpbmQgdGhlIGNyZWRpdCBmaWVsZCBpbiBiYW5rIHdlYnNpdGUgKGNvdWxkIHNlZSBpdCBpbiBteSBhY2NvdW50KVxuICByZXR1cm4ge1xuICAgIGJhbGFuY2U6IE51bWJlci5pc05hTihiYWxhbmNlVmFsdWUuYW1vdW50KSA/IDAgOiBiYWxhbmNlVmFsdWUuYW1vdW50LFxuICAgIGNyZWRpdExpbWl0OiAwLjAsXG4gICAgY3JlZGl0VXRpbGl6YXRpb246IDAuMCxcbiAgICBiYWxhbmNlQ3VycmVuY3k6IGJhbGFuY2VWYWx1ZS5jdXJyZW5jeSxcbiAgfTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZmV0Y2hUcmFuc2FjdGlvbnNGb3JBY2NvdW50KHBhZ2U6IFBhZ2UsIHN0YXJ0RGF0ZTogTW9tZW50KSB7XG4gIGNvbnN0IHN1bW1hcnkgPSBhd2FpdCBnZXRBY2NvdW50U3VtbWFyeShwYWdlKTtcbiAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsICdpbnB1dCNmcm9tRGF0ZScpO1xuICAvLyBHZXQgYWNjb3VudCBudW1iZXJcbiAgY29uc3QgYnJhbmNoTnVtID0gYXdhaXQgcGFnZS4kZXZhbCgnLmJyYW5jaF9udW0nLCAoc3BhbikgPT4ge1xuICAgIHJldHVybiAoc3BhbiBhcyBIVE1MRWxlbWVudCkuaW5uZXJUZXh0O1xuICB9KTtcblxuICBjb25zdCBhY2NvdW50Tm1iciA9IGF3YWl0IHBhZ2UuJGV2YWwoJy5hY2NfbnVtJywgKHNwYW4pID0+IHtcbiAgICByZXR1cm4gKHNwYW4gYXMgSFRNTEVsZW1lbnQpLmlubmVyVGV4dDtcbiAgfSk7XG4gIGNvbnN0IGFjY291bnROdW1iZXIgPSBgMTQtJHticmFuY2hOdW19LSR7YWNjb3VudE5tYnJ9YDtcbiAgLy8gU2VhcmNoIGZvciByZWxhdmFudCB0cmFuc2FjdGlvbiBmcm9tIHN0YXJ0RGF0ZVxuICBhd2FpdCBjbGlja0J1dHRvbihwYWdlLCAnI3RhYkhlYWRlcjQnKTtcbiAgYXdhaXQgZmlsbElucHV0KFxuICAgIHBhZ2UsXG4gICAgJ2lucHV0I2Zyb21EYXRlJyxcbiAgICBzdGFydERhdGUuZm9ybWF0KCdERC9NTS9ZWVlZJyksXG4gICk7XG5cbiAgYXdhaXQgY2xpY2tCdXR0b24ocGFnZSwgJyNmaWJpX3RhYl9kYXRlcyAuZmliaV9idG46bnRoLWNoaWxkKDIpJyk7XG4gIGF3YWl0IHdhaXRGb3JOYXZpZ2F0aW9uKHBhZ2UpO1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgJ3RhYmxlI2RhdGFUYWJsZTA3NywgI05PX0RBVEEwNzcnKTtcbiAgbGV0IGhhc05leHRQYWdlID0gdHJ1ZTtcbiAgbGV0IHR4bnM6IFNjcmFwZWRUcmFuc2FjdGlvbltdID0gW107XG5cbiAgY29uc3Qgbm9UcmFuc2FjdGlvbkVsbSA9IGF3YWl0IHBhZ2UuJCgnI05PX0RBVEEwNzcnKTtcbiAgaWYgKG5vVHJhbnNhY3Rpb25FbG0gPT0gbnVsbCkge1xuICAgIC8vIFNjYXBlIHRyYW5zYWN0aW9ucyAodGhpcyBtYXliZSBzcGFubmVkIG9uIG11bHRpcGxlIHBhZ2VzKVxuICAgIHdoaWxlIChoYXNOZXh0UGFnZSkge1xuICAgICAgY29uc3QgcGFnZVR4bnMgPSBhd2FpdCBwYXJzZVRyYW5zYWN0aW9uUGFnZShwYWdlKTtcbiAgICAgIHR4bnMgPSB0eG5zLmNvbmNhdChwYWdlVHhucyk7XG4gICAgICBjb25zdCBidXR0b24gPSBhd2FpdCBwYWdlLiQoJyNOcGFnZScpO1xuICAgICAgaGFzTmV4dFBhZ2UgPSBmYWxzZTtcbiAgICAgIGlmIChidXR0b24gIT0gbnVsbCkge1xuICAgICAgICBoYXNOZXh0UGFnZSA9IHRydWU7XG4gICAgICB9XG4gICAgICBpZiAoaGFzTmV4dFBhZ2UpIHtcbiAgICAgICAgYXdhaXQgY2xpY2tCdXR0b24ocGFnZSwgJyNOcGFnZScpO1xuICAgICAgICBhd2FpdCB3YWl0Rm9yTmF2aWdhdGlvbihwYWdlKTtcbiAgICAgICAgYXdhaXQgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsICd0YWJsZSNkYXRhVGFibGUwNzcnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4ge1xuICAgIGFjY291bnROdW1iZXIsXG4gICAgc3VtbWFyeSxcbiAgICB0eG5zOiBjb252ZXJ0VHJhbnNhY3Rpb25zKHR4bnMuc2xpY2UoMSkpLCAvLyBSZW1vdmUgZmlyc3QgbGluZSB3aGljaCBpcyBcIm9wZW5pbmcgYmFsYW5jZVwiXG4gIH07XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGZldGNoVHJhbnNhY3Rpb25zKHBhZ2U6IFBhZ2UsIHN0YXJ0RGF0ZTogTW9tZW50KSB7XG4gIC8vIFRPRE8gbmVlZCB0byBleHRlbmQgdG8gc3VwcG9ydCBtdWx0aXBsZSBhY2NvdW50cyBhbmQgZm9yZWlnbiBhY2NvdW50c1xuICByZXR1cm4gW2F3YWl0IGZldGNoVHJhbnNhY3Rpb25zRm9yQWNjb3VudChwYWdlLCBzdGFydERhdGUpXTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gd2FpdEZvclBvc3RMb2dpbihwYWdlOiBQYWdlKSB7XG4gIC8vIFRPRE8gY2hlY2sgZm9yIGNvbmRpdGlvbiB0byBwcm92aWRlIG5ldyBwYXNzd29yZFxuICByZXR1cm4gUHJvbWlzZS5yYWNlKFtcbiAgICB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgJ2Rpdi5sb3R1c0ZyYW1lJywgdHJ1ZSksXG4gICAgd2FpdFVudGlsRWxlbWVudEZvdW5kKHBhZ2UsICcjdmFsaWRhdGlvbk1zZycpLFxuICBdKTtcbn1cblxuY2xhc3MgT3RzYXJIYWhheWFsU2NyYXBlciBleHRlbmRzIEJhc2VTY3JhcGVyV2l0aEJyb3dzZXIge1xuICBnZXRMb2dpbk9wdGlvbnMoY3JlZGVudGlhbHM6IFNjcmFwZXJDcmVkZW50aWFscykge1xuICAgIHJldHVybiB7XG4gICAgICBsb2dpblVybDogYCR7QkFTRV9VUkx9L01hdGFmTG9naW5TZXJ2aWNlL01hdGFmTG9naW5TZXJ2bGV0P2JhbmtJZD1PVFNBUlBSVEFMJnNpdGU9UHJpdmF0ZSZLT0RTQUZBPUhFYCxcbiAgICAgIGZpZWxkczogY3JlYXRlTG9naW5GaWVsZHMoY3JlZGVudGlhbHMpLFxuICAgICAgc3VibWl0QnV0dG9uU2VsZWN0b3I6ICcjY29udGludWVCdG4nLFxuICAgICAgcG9zdEFjdGlvbjogYXN5bmMgKCkgPT4gd2FpdEZvclBvc3RMb2dpbih0aGlzLnBhZ2UpLFxuICAgICAgcG9zc2libGVSZXN1bHRzOiBnZXRQb3NzaWJsZUxvZ2luUmVzdWx0cyh0aGlzLnBhZ2UpLFxuICAgIH07XG4gIH1cblxuICBhc3luYyBmZXRjaERhdGEoKSB7XG4gICAgY29uc3QgZGVmYXVsdFN0YXJ0TW9tZW50ID0gbW9tZW50KCkuc3VidHJhY3QoMSwgJ3llYXJzJykuYWRkKDEsICdkYXknKTtcbiAgICBjb25zdCBzdGFydERhdGUgPSB0aGlzLm9wdGlvbnMuc3RhcnREYXRlIHx8IGRlZmF1bHRTdGFydE1vbWVudC50b0RhdGUoKTtcbiAgICBjb25zdCBzdGFydE1vbWVudCA9IG1vbWVudC5tYXgoZGVmYXVsdFN0YXJ0TW9tZW50LCBtb21lbnQoc3RhcnREYXRlKSk7XG5cbiAgICBjb25zdCB1cmwgPSBnZXRUcmFuc2FjdGlvbnNVcmwoKTtcbiAgICBhd2FpdCB0aGlzLm5hdmlnYXRlVG8odXJsKTtcblxuICAgIGNvbnN0IGFjY291bnRzID0gYXdhaXQgZmV0Y2hUcmFuc2FjdGlvbnModGhpcy5wYWdlLCBzdGFydE1vbWVudCk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgc3VjY2VzczogdHJ1ZSxcbiAgICAgIGFjY291bnRzLFxuICAgIH07XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgT3RzYXJIYWhheWFsU2NyYXBlcjtcbiJdfQ==
|
|
230
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JhcGVycy9vdHNhci1oYWhheWFsLnRzIl0sIm5hbWVzIjpbIkJBU0VfVVJMIiwiTE9OR19EQVRFX0ZPUk1BVCIsIkRBVEVfRk9STUFUIiwiZ2V0UG9zc2libGVMb2dpblJlc3VsdHMiLCJwYWdlIiwidXJscyIsIkxvZ2luUmVzdWx0cyIsIlN1Y2Nlc3MiLCJJbnZhbGlkUGFzc3dvcmQiLCJnZXRUcmFuc2FjdGlvbnNVcmwiLCJjcmVhdGVMb2dpbkZpZWxkcyIsImNyZWRlbnRpYWxzIiwic2VsZWN0b3IiLCJ2YWx1ZSIsInVzZXJuYW1lIiwicGFzc3dvcmQiLCJnZXRBbW91bnREYXRhIiwiYW1vdW50U3RyIiwiaGFzQ3VycmVuY3kiLCJhbW91bnRTdHJDbG4iLCJyZXBsYWNlIiwiY3VycmVuY3kiLCJhbW91bnQiLCJwYXJzZUZsb2F0IiwiU0hFS0VMX0NVUlJFTkNZIiwiaW5jbHVkZXMiLCJTSEVLRUxfQ1VSUkVOQ1lfU1lNQk9MIiwicGFydHMiLCJzcGxpdCIsImNvbnZlcnRUcmFuc2FjdGlvbnMiLCJ0eG5zIiwibWFwIiwidHhuIiwiZGF0ZUZvcm1hdCIsImRhdGUiLCJsZW5ndGgiLCJFcnJvciIsInR4bkRhdGUiLCJ0b0lTT1N0cmluZyIsImNyZWRpdCIsImRlYml0IiwiTnVtYmVyIiwiaXNOYU4iLCJyZXN1bHQiLCJ0eXBlIiwiVHJhbnNhY3Rpb25UeXBlcyIsIk5vcm1hbCIsInN0YXR1cyIsIlRyYW5zYWN0aW9uU3RhdHVzZXMiLCJDb21wbGV0ZWQiLCJpZGVudGlmaWVyIiwicmVmZXJlbmNlIiwicGFyc2VJbnQiLCJ1bmRlZmluZWQiLCJwcm9jZXNzZWREYXRlIiwib3JpZ2luYWxBbW91bnQiLCJvcmlnaW5hbEN1cnJlbmN5IiwiY2hhcmdlZEFtb3VudCIsImRlc2NyaXB0aW9uIiwibWVtbyIsInBhcnNlVHJhbnNhY3Rpb25QYWdlIiwidGRzVmFsdWVzIiwidHJzIiwiZWwiLCJxdWVyeVNlbGVjdG9yIiwiaW5uZXJUZXh0IiwiYmFsYW5jZSIsImdldEFjY291bnRTdW1tYXJ5IiwiYmFsYW5jZUVsbSIsIiQiLCJiYWxhbmNlSW5uZXJUZXh0RWxtIiwiZ2V0UHJvcGVydHkiLCJiYWxhbmNlVGV4dCIsImpzb25WYWx1ZSIsImJhbGFuY2VWYWx1ZSIsImNyZWRpdExpbWl0IiwiY3JlZGl0VXRpbGl6YXRpb24iLCJiYWxhbmNlQ3VycmVuY3kiLCJmZXRjaFRyYW5zYWN0aW9uc0ZvckFjY291bnQiLCJzdGFydERhdGUiLCJzdW1tYXJ5IiwiYnJhbmNoTnVtIiwiJGV2YWwiLCJzcGFuIiwiYWNjb3VudE5tYnIiLCJhY2NvdW50TnVtYmVyIiwiZm9ybWF0IiwiaGFzTmV4dFBhZ2UiLCJub1RyYW5zYWN0aW9uRWxtIiwicGFnZVR4bnMiLCJjb25jYXQiLCJidXR0b24iLCJzbGljZSIsImZldGNoVHJhbnNhY3Rpb25zIiwid2FpdEZvclBvc3RMb2dpbiIsIlByb21pc2UiLCJyYWNlIiwiT3RzYXJIYWhheWFsU2NyYXBlciIsIkJhc2VTY3JhcGVyV2l0aEJyb3dzZXIiLCJnZXRMb2dpbk9wdGlvbnMiLCJsb2dpblVybCIsImZpZWxkcyIsInN1Ym1pdEJ1dHRvblNlbGVjdG9yIiwid2FpdEZvclRpbWVvdXQiLCJwb3N0QWN0aW9uIiwicG9zc2libGVSZXN1bHRzIiwiZmV0Y2hEYXRhIiwiZGVmYXVsdFN0YXJ0TW9tZW50Iiwic3VidHJhY3QiLCJhZGQiLCJvcHRpb25zIiwidG9EYXRlIiwic3RhcnRNb21lbnQiLCJtb21lbnQiLCJtYXgiLCJ1cmwiLCJuYXZpZ2F0ZVRvIiwiYWNjb3VudHMiLCJzdWNjZXNzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFPQTs7QUFDQTs7OztBQUdBLE1BQU1BLFFBQVEsR0FBRyxnQ0FBakI7QUFDQSxNQUFNQyxnQkFBZ0IsR0FBRyxZQUF6QjtBQUNBLE1BQU1DLFdBQVcsR0FBRyxVQUFwQjs7QUFhQSxTQUFTQyx1QkFBVCxDQUFpQ0MsSUFBakMsRUFBNkM7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Z2UgfSBmcm9tICdwdXBwZXRlZXInO1xuaW1wb3J0IHsgQmFzZVNjcmFwZXJXaXRoQnJvd3NlciwgTG9naW5SZXN1bHRzLCBQb3NzaWJsZUxvZ2luUmVzdWx0cyB9IGZyb20gJy4vYmFzZS1zY3JhcGVyLXdpdGgtYnJvd3Nlcic7XG5pbXBvcnQgeyB3YWl0Rm9yTmF2aWdhdGlvbiB9IGZyb20gJy4uL2hlbHBlcnMvbmF2aWdhdGlvbic7XG5pbXBvcnQge1xuICBmaWxsSW5wdXQsXG4gIGNsaWNrQnV0dG9uLFxuICB3YWl0VW50aWxFbGVtZW50Rm91bmQsXG4gIHBhZ2VFdmFsQWxsLFxuICBlbGVtZW50UHJlc2VudE9uUGFnZSxcbn0gZnJvbSAnLi4vaGVscGVycy9lbGVtZW50cy1pbnRlcmFjdGlvbnMnO1xuaW1wb3J0IHsgU0hFS0VMX0NVUlJFTkNZLCBTSEVLRUxfQ1VSUkVOQ1lfU1lNQk9MIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uLCBUcmFuc2FjdGlvblN0YXR1c2VzLCBUcmFuc2FjdGlvblR5cGVzIH0gZnJvbSAnLi4vdHJhbnNhY3Rpb25zJztcbmltcG9ydCB7IFNjcmFwZXJDcmVkZW50aWFscyB9IGZyb20gJy4vYmFzZS1zY3JhcGVyJztcblxuY29uc3QgQkFTRV9VUkwgPSAnaHR0cHM6Ly9vbmxpbmUuYmFua290c2FyLmNvLmlsJztcbmNvbnN0IExPTkdfREFURV9GT1JNQVQgPSAnREQvTU0vWVlZWSc7XG5jb25zdCBEQVRFX0ZPUk1BVCA9ICdERC9NTS9ZWSc7XG5cbmludGVyZmFjZSBTY3JhcGVkVHJhbnNhY3Rpb24ge1xuICBiYWxhbmNlPzogc3RyaW5nO1xuICBkZWJpdD86IHN0cmluZztcbiAgY3JlZGl0Pzogc3RyaW5nO1xuICBtZW1vPzogc3RyaW5nO1xuICBzdGF0dXM/OiBzdHJpbmc7XG4gIHJlZmVyZW5jZT86IHN0cmluZztcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGRhdGU6IHN0cmluZztcbn1cblxuZnVuY3Rpb24gZ2V0UG9zc2libGVMb2dpblJlc3VsdHMocGFnZTogUGFnZSkge1xuICBjb25zdCB1cmxzOiBQb3NzaWJsZUxvZ2luUmVzdWx0cyA9IHt9O1xuICB1cmxzW0xvZ2luUmVzdWx0cy5TdWNjZXNzXSA9IFtgJHtCQVNFX1VSTH0vd3BzL215cG9ydGFsL0ZpYmlNZW51L09ubGluZWBdO1xuICB1cmxzW0xvZ2luUmVzdWx0cy5JbnZhbGlkUGFzc3dvcmRdID0gWygpID0+IGVsZW1lbnRQcmVzZW50T25QYWdlKHBhZ2UsICcjdmFsaWRhdGlvbk1zZycpXTtcbiAgLy8gVE9ETzogc3VwcG9ydCBjaGFuZ2UgcGFzc3dvcmRcbiAgLyogdXJsc1tMT0dJTl9SRVNVTFQuQ0hBTkdFX1BBU1NXT1JEXSA9IFtgYF07ICovXG4gIHJldHVybiB1cmxzO1xufVxuXG5mdW5jdGlvbiBnZXRUcmFuc2FjdGlvbnNVcmwoKSB7XG4gIHJldHVybiBgJHtCQVNFX1VSTH0vd3BzL215cG9ydGFsL0ZpYmlNZW51L09ubGluZS9PbkFjY291bnRNbmdtZW50L09uQmFsYW5jZVRyYW5zL1ByaXZhdGVBY2NvdW50Rmxvd2A7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZUxvZ2luRmllbGRzKGNyZWRlbnRpYWxzOiBTY3JhcGVyQ3JlZGVudGlhbHMpIHtcbiAgcmV0dXJuIFtcbiAgICB7IHNlbGVjdG9yOiAnI3VzZXJuYW1lJywgdmFsdWU6IGNyZWRlbnRpYWxzLnVzZXJuYW1lIH0sXG4gICAgeyBzZWxlY3RvcjogJyNwYXNzd29yZCcsIHZhbHVlOiBjcmVkZW50aWFscy5wYXNzd29yZCB9LFxuICBdO1xufVxuXG5mdW5jdGlvbiBnZXRBbW91bnREYXRhKGFtb3VudFN0cjogc3RyaW5nLCBoYXNDdXJyZW5jeSA9IGZhbHNlKSB7XG4gIGNvbnN0IGFtb3VudFN0ckNsbiA9IGFtb3VudFN0ci5yZXBsYWNlKCcsJywgJycpO1xuICBsZXQgY3VycmVuY3k6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICBsZXQgYW1vdW50OiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgaWYgKCFoYXNDdXJyZW5jeSkge1xuICAgIGFtb3VudCA9IHBhcnNlRmxvYXQoYW1vdW50U3RyQ2xuKTtcbiAgICBjdXJyZW5jeSA9IFNIRUtFTF9DVVJSRU5DWTtcbiAgfSBlbHNlIGlmIChhbW91bnRTdHJDbG4uaW5jbHVkZXMoU0hFS0VMX0NVUlJFTkNZX1NZTUJPTCkpIHtcbiAgICBhbW91bnQgPSBwYXJzZUZsb2F0KGFtb3VudFN0ckNsbi5yZXBsYWNlKFNIRUtFTF9DVVJSRU5DWV9TWU1CT0wsICcnKSk7XG4gICAgY3VycmVuY3kgPSBTSEVLRUxfQ1VSUkVOQ1k7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgcGFydHMgPSBhbW91bnRTdHJDbG4uc3BsaXQoJyAnKTtcbiAgICBhbW91bnQgPSBwYXJzZUZsb2F0KHBhcnRzWzBdKTtcbiAgICBbLCBjdXJyZW5jeV0gPSBwYXJ0cztcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgYW1vdW50LFxuICAgIGN1cnJlbmN5LFxuICB9O1xufVxuXG5mdW5jdGlvbiBjb252ZXJ0VHJhbnNhY3Rpb25zKHR4bnM6IFNjcmFwZWRUcmFuc2FjdGlvbltdKTogVHJhbnNhY3Rpb25bXSB7XG4gIHJldHVybiB0eG5zLm1hcCgodHhuKSA9PiB7XG4gICAgY29uc3QgZGF0ZUZvcm1hdCA9XG4gICAgICAgIHR4bi5kYXRlLmxlbmd0aCA9PT0gOCA/XG4gICAgICAgICAgREFURV9GT1JNQVQgOlxuICAgICAgICAgIHR4bi5kYXRlLmxlbmd0aCA9PT0gMTAgP1xuICAgICAgICAgICAgTE9OR19EQVRFX0ZPUk1BVCA6XG4gICAgICAgICAgICBudWxsO1xuICAgIGlmICghZGF0ZUZvcm1hdCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIGRhdGUgZm9ybWF0Jyk7XG4gICAgfVxuICAgIGNvbnN0IHR4bkRhdGUgPSBtb21lbnQodHhuLmRhdGUsIGRhdGVGb3JtYXQpLnRvSVNPU3RyaW5nKCk7XG4gICAgY29uc3QgY3JlZGl0ID0gZ2V0QW1vdW50RGF0YSh0eG4uY3JlZGl0IHx8ICcnKS5hbW91bnQ7XG4gICAgY29uc3QgZGViaXQgPSBnZXRBbW91bnREYXRhKHR4bi5kZWJpdCB8fCAnJykuYW1vdW50O1xuICAgIGNvbnN0IGFtb3VudCA9IChOdW1iZXIuaXNOYU4oY3JlZGl0KSA/IDAgOiBjcmVkaXQpIC0gKE51bWJlci5pc05hTihkZWJpdCkgPyAwIDogZGViaXQpO1xuXG4gICAgY29uc3QgcmVzdWx0OiBUcmFuc2FjdGlvbiA9IHtcbiAgICAgIHR5cGU6IFRyYW5zYWN0aW9uVHlwZXMuTm9ybWFsLFxuICAgICAgc3RhdHVzOiBUcmFuc2FjdGlvblN0YXR1c2VzLkNvbXBsZXRlZCxcbiAgICAgIGlkZW50aWZpZXI6IHR4bi5yZWZlcmVuY2UgPyBwYXJzZUludCh0eG4ucmVmZXJlbmNlLCAxMCkgOiB1bmRlZmluZWQsXG4gICAgICBkYXRlOiB0eG5EYXRlLFxuICAgICAgcHJvY2Vzc2VkRGF0ZTogdHhuRGF0ZSxcbiAgICAgIG9yaWdpbmFsQW1vdW50OiBhbW91bnQsXG4gICAgICBvcmlnaW5hbEN1cnJlbmN5OiBTSEVLRUxfQ1VSUkVOQ1ksXG4gICAgICBjaGFyZ2VkQW1vdW50OiBhbW91bnQsXG4gICAgICBkZXNjcmlwdGlvbjogdHhuLmRlc2NyaXB0aW9uIHx8ICcnLFxuICAgICAgbWVtbzogJycsXG4gICAgfTtcblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH0pO1xufVxuXG5hc3luYyBmdW5jdGlvbiBwYXJzZVRyYW5zYWN0aW9uUGFnZShwYWdlOiBQYWdlKTogUHJvbWlzZTxTY3JhcGVkVHJhbnNhY3Rpb25bXT4ge1xuICBjb25zdCB0ZHNWYWx1ZXMgPSBhd2FpdCBwYWdlRXZhbEFsbChwYWdlLCAnI2RhdGFUYWJsZTA3NyB0Ym9keSB0cicsIFtdLCAodHJzKSA9PiB7XG4gICAgcmV0dXJuICh0cnMpLm1hcCgoZWwpID0+ICh7XG4gICAgICBkYXRlOiAoZWwucXVlcnlTZWxlY3RvcignLmRhdGUnKSBhcyBIVE1MRWxlbWVudCkuaW5uZXJUZXh0LFxuICAgICAgLy8gcmVmZXJlbmNlIGFuZCBkZXNjcmlwdGlvbiBoYXZlIHZpY2UtdmVyc2EgY2xhc3MgbmFtZVxuICAgICAgZGVzY3JpcHRpb246IChlbC5xdWVyeVNlbGVjdG9yKCcucmVmZXJlbmNlJykgYXMgSFRNTEVsZW1lbnQpLmlubmVyVGV4dCxcbiAgICAgIHJlZmVyZW5jZTogKGVsLnF1ZXJ5U2VsZWN0b3IoJy5kZXRhaWxzJykgYXMgSFRNTEVsZW1lbnQpLmlubmVyVGV4dCxcbiAgICAgIGNyZWRpdDogKGVsLnF1ZXJ5U2VsZWN0b3IoJy5jcmVkaXQnKSBhcyBIVE1MRWxlbWVudCkuaW5uZXJUZXh0LFxuICAgICAgZGViaXQ6IChlbC5xdWVyeVNlbGVjdG9yKCcuZGViaXQnKSBhcyBIVE1MRWxlbWVudCkuaW5uZXJUZXh0LFxuICAgICAgYmFsYW5jZTogKGVsLnF1ZXJ5U2VsZWN0b3IoJy5iYWxhbmNlJykgYXMgSFRNTEVsZW1lbnQpLmlubmVyVGV4dCxcbiAgICB9KSk7XG4gIH0pO1xuXG4gIHJldHVybiB0ZHNWYWx1ZXM7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGdldEFjY291bnRTdW1tYXJ5KHBhZ2U6IFBhZ2UpIHtcbiAgY29uc3QgYmFsYW5jZUVsbSA9IGF3YWl0IHBhZ2UuJCgnLmN1cnJlbnRfYmFsYW5jZScpO1xuICBjb25zdCBiYWxhbmNlSW5uZXJUZXh0RWxtID0gYXdhaXQgYmFsYW5jZUVsbSEuZ2V0UHJvcGVydHkoJ2lubmVyVGV4dCcpO1xuICBjb25zdCBiYWxhbmNlVGV4dCA9IGF3YWl0IGJhbGFuY2VJbm5lclRleHRFbG0uanNvblZhbHVlKCk7XG4gIGNvbnN0IGJhbGFuY2VWYWx1ZSA9IGdldEFtb3VudERhdGEoYmFsYW5jZVRleHQgYXMgc3RyaW5nLCB0cnVlKTtcbiAgLy8gVE9ETzogRmluZCB0aGUgY3JlZGl0IGZpZWxkIGluIGJhbmsgd2Vic2l0ZSAoY291bGQgc2VlIGl0IGluIG15IGFjY291bnQpXG4gIHJldHVybiB7XG4gICAgYmFsYW5jZTogTnVtYmVyLmlzTmFOKGJhbGFuY2VWYWx1ZS5hbW91bnQpID8gMCA6IGJhbGFuY2VWYWx1ZS5hbW91bnQsXG4gICAgY3JlZGl0TGltaXQ6IDAuMCxcbiAgICBjcmVkaXRVdGlsaXphdGlvbjogMC4wLFxuICAgIGJhbGFuY2VDdXJyZW5jeTogYmFsYW5jZVZhbHVlLmN1cnJlbmN5LFxuICB9O1xufVxuXG5hc3luYyBmdW5jdGlvbiBmZXRjaFRyYW5zYWN0aW9uc0ZvckFjY291bnQocGFnZTogUGFnZSwgc3RhcnREYXRlOiBNb21lbnQpIHtcbiAgY29uc3Qgc3VtbWFyeSA9IGF3YWl0IGdldEFjY291bnRTdW1tYXJ5KHBhZ2UpO1xuICBhd2FpdCB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgJ2lucHV0I2Zyb21EYXRlJyk7XG4gIC8vIEdldCBhY2NvdW50IG51bWJlclxuICBjb25zdCBicmFuY2hOdW0gPSBhd2FpdCBwYWdlLiRldmFsKCcuYnJhbmNoX251bScsIChzcGFuKSA9PiB7XG4gICAgcmV0dXJuIChzcGFuIGFzIEhUTUxFbGVtZW50KS5pbm5lclRleHQ7XG4gIH0pO1xuXG4gIGNvbnN0IGFjY291bnRObWJyID0gYXdhaXQgcGFnZS4kZXZhbCgnLmFjY19udW0nLCAoc3BhbikgPT4ge1xuICAgIHJldHVybiAoc3BhbiBhcyBIVE1MRWxlbWVudCkuaW5uZXJUZXh0O1xuICB9KTtcbiAgY29uc3QgYWNjb3VudE51bWJlciA9IGAxNC0ke2JyYW5jaE51bX0tJHthY2NvdW50Tm1icn1gO1xuICAvLyBTZWFyY2ggZm9yIHJlbGF2YW50IHRyYW5zYWN0aW9uIGZyb20gc3RhcnREYXRlXG4gIGF3YWl0IGNsaWNrQnV0dG9uKHBhZ2UsICcjdGFiSGVhZGVyNCcpO1xuICBhd2FpdCBmaWxsSW5wdXQoXG4gICAgcGFnZSxcbiAgICAnaW5wdXQjZnJvbURhdGUnLFxuICAgIHN0YXJ0RGF0ZS5mb3JtYXQoJ0REL01NL1lZWVknKSxcbiAgKTtcblxuICBhd2FpdCBjbGlja0J1dHRvbihwYWdlLCAnI2ZpYmlfdGFiX2RhdGVzIC5maWJpX2J0bjpudGgtY2hpbGQoMiknKTtcbiAgYXdhaXQgd2FpdEZvck5hdmlnYXRpb24ocGFnZSk7XG4gIGF3YWl0IHdhaXRVbnRpbEVsZW1lbnRGb3VuZChwYWdlLCAndGFibGUjZGF0YVRhYmxlMDc3LCAjTk9fREFUQTA3NycpO1xuICBsZXQgaGFzTmV4dFBhZ2UgPSB0cnVlO1xuICBsZXQgdHhuczogU2NyYXBlZFRyYW5zYWN0aW9uW10gPSBbXTtcblxuICBjb25zdCBub1RyYW5zYWN0aW9uRWxtID0gYXdhaXQgcGFnZS4kKCcjTk9fREFUQTA3NycpO1xuICBpZiAobm9UcmFuc2FjdGlvbkVsbSA9PSBudWxsKSB7XG4gICAgLy8gU2NhcGUgdHJhbnNhY3Rpb25zICh0aGlzIG1heWJlIHNwYW5uZWQgb24gbXVsdGlwbGUgcGFnZXMpXG4gICAgd2hpbGUgKGhhc05leHRQYWdlKSB7XG4gICAgICBjb25zdCBwYWdlVHhucyA9IGF3YWl0IHBhcnNlVHJhbnNhY3Rpb25QYWdlKHBhZ2UpO1xuICAgICAgdHhucyA9IHR4bnMuY29uY2F0KHBhZ2VUeG5zKTtcbiAgICAgIGNvbnN0IGJ1dHRvbiA9IGF3YWl0IHBhZ2UuJCgnI05wYWdlJyk7XG4gICAgICBoYXNOZXh0UGFnZSA9IGZhbHNlO1xuICAgICAgaWYgKGJ1dHRvbiAhPSBudWxsKSB7XG4gICAgICAgIGhhc05leHRQYWdlID0gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIGlmIChoYXNOZXh0UGFnZSkge1xuICAgICAgICBhd2FpdCBjbGlja0J1dHRvbihwYWdlLCAnI05wYWdlJyk7XG4gICAgICAgIGF3YWl0IHdhaXRGb3JOYXZpZ2F0aW9uKHBhZ2UpO1xuICAgICAgICBhd2FpdCB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgJ3RhYmxlI2RhdGFUYWJsZTA3NycpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiB7XG4gICAgYWNjb3VudE51bWJlcixcbiAgICBzdW1tYXJ5LFxuICAgIHR4bnM6IGNvbnZlcnRUcmFuc2FjdGlvbnModHhucy5zbGljZSgxKSksIC8vIFJlbW92ZSBmaXJzdCBsaW5lIHdoaWNoIGlzIFwib3BlbmluZyBiYWxhbmNlXCJcbiAgfTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZmV0Y2hUcmFuc2FjdGlvbnMocGFnZTogUGFnZSwgc3RhcnREYXRlOiBNb21lbnQpIHtcbiAgLy8gVE9ETyBuZWVkIHRvIGV4dGVuZCB0byBzdXBwb3J0IG11bHRpcGxlIGFjY291bnRzIGFuZCBmb3JlaWduIGFjY291bnRzXG4gIHJldHVybiBbYXdhaXQgZmV0Y2hUcmFuc2FjdGlvbnNGb3JBY2NvdW50KHBhZ2UsIHN0YXJ0RGF0ZSldO1xufVxuXG5hc3luYyBmdW5jdGlvbiB3YWl0Rm9yUG9zdExvZ2luKHBhZ2U6IFBhZ2UpIHtcbiAgLy8gVE9ETyBjaGVjayBmb3IgY29uZGl0aW9uIHRvIHByb3ZpZGUgbmV3IHBhc3N3b3JkXG4gIHJldHVybiBQcm9taXNlLnJhY2UoW1xuICAgIHdhaXRVbnRpbEVsZW1lbnRGb3VuZChwYWdlLCAnZGl2LmxvdHVzRnJhbWUnLCB0cnVlKSxcbiAgICB3YWl0VW50aWxFbGVtZW50Rm91bmQocGFnZSwgJyN2YWxpZGF0aW9uTXNnJyksXG4gIF0pO1xufVxuXG5jbGFzcyBPdHNhckhhaGF5YWxTY3JhcGVyIGV4dGVuZHMgQmFzZVNjcmFwZXJXaXRoQnJvd3NlciB7XG4gIGdldExvZ2luT3B0aW9ucyhjcmVkZW50aWFsczogU2NyYXBlckNyZWRlbnRpYWxzKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGxvZ2luVXJsOiBgJHtCQVNFX1VSTH0vTWF0YWZMb2dpblNlcnZpY2UvTWF0YWZMb2dpblNlcnZsZXQ/YmFua0lkPU9UU0FSUFJUQUwmc2l0ZT1Qcml2YXRlJktPRFNBRkE9SEVgLFxuICAgICAgZmllbGRzOiBjcmVhdGVMb2dpbkZpZWxkcyhjcmVkZW50aWFscyksXG4gICAgICBzdWJtaXRCdXR0b25TZWxlY3RvcjogYXN5bmMgKCkgPT4ge1xuICAgICAgICBhd2FpdCB0aGlzLnBhZ2Uud2FpdEZvclRpbWVvdXQoMTAwMCk7XG4gICAgICAgIGF3YWl0IGNsaWNrQnV0dG9uKHRoaXMucGFnZSwgJyNjb250aW51ZUJ0bicpO1xuICAgICAgfSxcbiAgICAgIHBvc3RBY3Rpb246IGFzeW5jICgpID0+IHdhaXRGb3JQb3N0TG9naW4odGhpcy5wYWdlKSxcbiAgICAgIHBvc3NpYmxlUmVzdWx0czogZ2V0UG9zc2libGVMb2dpblJlc3VsdHModGhpcy5wYWdlKSxcbiAgICB9O1xuICB9XG5cbiAgYXN5bmMgZmV0Y2hEYXRhKCkge1xuICAgIGNvbnN0IGRlZmF1bHRTdGFydE1vbWVudCA9IG1vbWVudCgpLnN1YnRyYWN0KDEsICd5ZWFycycpLmFkZCgxLCAnZGF5Jyk7XG4gICAgY29uc3Qgc3RhcnREYXRlID0gdGhpcy5vcHRpb25zLnN0YXJ0RGF0ZSB8fCBkZWZhdWx0U3RhcnRNb21lbnQudG9EYXRlKCk7XG4gICAgY29uc3Qgc3RhcnRNb21lbnQgPSBtb21lbnQubWF4KGRlZmF1bHRTdGFydE1vbWVudCwgbW9tZW50KHN0YXJ0RGF0ZSkpO1xuXG4gICAgY29uc3QgdXJsID0gZ2V0VHJhbnNhY3Rpb25zVXJsKCk7XG4gICAgYXdhaXQgdGhpcy5uYXZpZ2F0ZVRvKHVybCk7XG5cbiAgICBjb25zdCBhY2NvdW50cyA9IGF3YWl0IGZldGNoVHJhbnNhY3Rpb25zKHRoaXMucGFnZSwgc3RhcnRNb21lbnQpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHN1Y2Nlc3M6IHRydWUsXG4gICAgICBhY2NvdW50cyxcbiAgICB9O1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IE90c2FySGFoYXlhbFNjcmFwZXI7XG4iXX0=
|