atom-ide-mocha-core
Advanced tools
Comparing version 2.5.0 to 2.6.0
@@ -6,2 +6,18 @@ # Change Log | ||
# [2.6.0](https://github.com/Dreamscapes/atom-ide-mocha-core/compare/atom-ide-mocha-core@2.5.0...atom-ide-mocha-core@2.6.0) (2019-04-11) | ||
### Bug Fixes | ||
* **ui:** remove ansi escape sequences from linter messages and console ([fa3aa14](https://github.com/Dreamscapes/atom-ide-mocha-core/commit/fa3aa14)) | ||
### Features | ||
* **ui:** use a prettier formatting in the Linter's detailed description ([cb2799c](https://github.com/Dreamscapes/atom-ide-mocha-core/commit/cb2799c)) | ||
# [2.5.0](https://github.com/Dreamscapes/atom-ide-mocha-core/compare/atom-ide-mocha-core@2.4.0...atom-ide-mocha-core@2.5.0) (2019-04-11) | ||
@@ -8,0 +24,0 @@ |
{ | ||
"name": "atom-ide-mocha-core", | ||
"description": "Code for IDE-Mocha Atom package", | ||
"version": "2.5.0", | ||
"version": "2.6.0", | ||
"author": { | ||
@@ -18,3 +18,4 @@ "name": "Robert Rossmann", | ||
"remote-event-emitter": "^1.2.0", | ||
"stack-utils": "^1.0.2" | ||
"stack-utils": "^1.0.2", | ||
"strip-ansi": "^5.2.0" | ||
}, | ||
@@ -40,3 +41,3 @@ "engines": { | ||
}, | ||
"gitHead": "e05f07961d068ee07058d0fcf219e341806a25c7" | ||
"gitHead": "4e05bc8a98b1747b42b136c733848106094b26b4" | ||
} |
@@ -14,2 +14,4 @@ "use strict"; | ||
var stripansi = require("strip-ansi"); | ||
var StackUtils = require("stack-utils"); | ||
@@ -217,3 +219,3 @@ | ||
_classPrivateFieldGet(this, _console).error(err.stack); | ||
_classPrivateFieldGet(this, _console).error(stripansi(err.stack)); | ||
@@ -310,3 +312,4 @@ if (showConsole) { | ||
} = callsite; | ||
const description = `${test.fullTitle}\n\n${err.stack}`; | ||
const excerpt = stripansi(err.message); | ||
const description = [`#### ${test.fullTitle}`, '\n\n', '```', `${stripansi(err.stack)}`, '```'].join('\n'); | ||
return { | ||
@@ -318,4 +321,4 @@ location: { | ||
severity: 'error', | ||
excerpt: err.message, | ||
description: ['```', description, '```'].join('\n') | ||
excerpt, | ||
description | ||
}; | ||
@@ -337,2 +340,2 @@ } | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNlc3Npb24ubWpzIl0sIm5hbWVzIjpbInN0YWNrdXRpbHMiLCJTdGFja1V0aWxzIiwiaW50ZXJuYWxzIiwibm9kZUludGVybmFscyIsImxvZ2xldmVscyIsInNwZWMiLCJzdWl0ZSIsIm1pbiIsInNpbGVudCIsIlNlc3Npb24iLCJFdmVudEVtaXR0ZXIiLCJjb25zdHJ1Y3RvciIsInJvb3QiLCJsaW50ZXIiLCJidXN5IiwiY29uc29sZSIsInNldHRpbmdzIiwiTWFwIiwidG90YWwiLCJjb21wbGV0ZWQiLCJwYXNzZXMiLCJmYWlsdXJlcyIsInBlbmRpbmciLCJkdXJhdGlvbiIsIkRhdGUiLCJub3ciLCJ2ZXJib3NpdHkiLCJkaWRTdGFydFJ1bm5pbmciLCJydW5uZXIiLCJjbGVhck1lc3NhZ2VzIiwicmVwb3J0QnVzeSIsIm9uRGlkQ2xpY2siLCJvcGVuQ29uc29sZSIsInJlcG9ydFByb2dyZXNzIiwic3RhdHMiLCJkaWRGaW5pc2hSdW5uaW5nIiwibG9nIiwiZGlkQ2xvc2UiLCJkaXNwb3NlIiwiZW1pdCIsImRpZFN0YXJ0U3VpdGUiLCJ0aXRsZVBhdGgiLCJsZW5ndGgiLCJqb2luIiwiZGlkRmluaXNoVGVzdCIsImRpZFBhc3NUZXN0IiwidGVzdCIsImlzU2xvdyIsInNwZWVkIiwiY29uc3RhbnRzIiwiU0xPVyIsIm1lc3NhZ2UiLCJ0aXRsZSIsImR1cmF0aW9ucyIsInVuaXRzIiwid2FybiIsInN1Y2Nlc3MiLCJkaWRGYWlsVGVzdCIsImVyciIsInNob3dDb25zb2xlIiwiZnVsbFRpdGxlIiwiZXJyb3IiLCJzdGFjayIsIm1rZGlhZ21lc3NhZ2UiLCJtZXNzYWdlcyIsImdldCIsImxvY2F0aW9uIiwiZmlsZSIsInB1c2giLCJzZXQiLCJzZXRNZXNzYWdlcyIsImRpZFNraXBUZXN0IiwicGVyY2VudCIsIm1rcGVyY2VudCIsInNldFRpdGxlIiwiRkFTVCIsImNhbGxzaXRlIiwibWtjYWxsc2l0ZSIsInBhdGgiLCJyZXNvbHZlIiwibGluZSIsImNvbHVtbiIsImRlc2NyaXB0aW9uIiwicG9zaXRpb24iLCJzZXZlcml0eSIsImV4Y2VycHQiLCJsaW5lcyIsImNsZWFuIiwidHJpbSIsInNwbGl0Iiwib3MiLCJFT0wiLCJ0cmFjZSIsImZpbHRlciIsImluY2x1ZGVzIiwibWFwIiwicGFyc2VMaW5lIiwic2hpZnQiLCJNYXRoIiwiZmxvb3IiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7QUFFQSxNQUFNQSxVQUFVLEdBQUcsSUFBSUMsVUFBSixDQUFlO0FBQ2hDQyxFQUFBQSxTQUFTLEVBQUVELFVBQVUsQ0FBQ0UsYUFBWDtBQURxQixDQUFmLENBQW5CO0FBSUEsTUFBTUMsU0FBUyxHQUFHO0FBQ2hCQyxFQUFBQSxJQUFJLEVBQUUsQ0FEVTtBQUVoQkMsRUFBQUEsS0FBSyxFQUFFLENBRlM7QUFHaEJDLEVBQUFBLEdBQUcsRUFBRSxDQUhXO0FBSWhCQyxFQUFBQSxNQUFNLEVBQUU7QUFKUSxDQUFsQjs7QUFPQSxNQUFNQyxPQUFOLFNBQXNCQyxvQkFBdEIsQ0FBbUM7QUE2QmpDQyxFQUFBQSxXQUFXLENBQUM7QUFBRUMsSUFBQUEsSUFBSSxFQUFKQSxNQUFGO0FBQVFDLElBQUFBLE1BQU0sRUFBTkEsUUFBUjtBQUFnQkMsSUFBQUEsSUFBSSxFQUFKQSxNQUFoQjtBQUFzQkMsSUFBQUEsT0FBTyxFQUFQQSxTQUF0QjtBQUErQkMsSUFBQUEsUUFBUSxFQUFSQTtBQUEvQixHQUFELEVBQTRDO0FBQ3JEOztBQURxRDtBQUFBO0FBQUEsYUFyQi9DO0FBcUIrQzs7QUFBQTtBQUFBO0FBQUEsYUFwQjdDO0FBb0I2Qzs7QUFBQTtBQUFBO0FBQUEsYUFuQjNDLElBQUlDLEdBQUo7QUFtQjJDOztBQUFBO0FBQUE7QUFBQSxhQWxCL0M7QUFrQitDOztBQUFBO0FBQUE7QUFBQSxhQWpCNUM7QUFpQjRDOztBQUFBO0FBQUE7QUFBQSxhQWhCNUM7QUFnQjRDOztBQUFBO0FBQUE7QUFBQSxhQWYzQztBQWUyQzs7QUFBQTtB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SFcsQ0FHUGYsSUFBSSxJQUFJaEYsVUFBVSxDQUFDZ0csU0FBWCxDQUFxQmhCLElBQXJCLENBSEQsRUFNWGEsTUFOVyxDQU1KYixJQUFJLElBQUlBLElBQUksSUFBSUEsSUFBSSxDQUFDYixJQU5qQixFQU9YOEIsS0FQVyxNQVVYakcsVUFBVSxDQUFDZ0csU0FBWCxDQUFxQlYsS0FBSyxDQUFDLENBQUQsQ0FBMUIsQ0FWSDtBQVlBLFNBQU9NLEtBQVA7QUFDRDs7QUFFRCxTQUFTbkIsU0FBVCxDQUFtQnZDLEtBQW5CLEVBQTBCO0FBQ3hCLFNBQU9nRSxJQUFJLENBQUNDLEtBQUwsQ0FBV2pFLEtBQUssQ0FBQ2YsU0FBTixHQUFrQmUsS0FBSyxDQUFDaEIsS0FBeEIsR0FBZ0MsR0FBM0MsQ0FBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgb3MgZnJvbSAnb3MnXG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnXG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICdldmVudHMnXG5pbXBvcnQgKiBhcyBTdGFja1V0aWxzIGZyb20gJ3N0YWNrLXV0aWxzJ1xuaW1wb3J0IHsgbWtzdGF0cywgb3BlbkNvbnNvbGUgfSBmcm9tICcuL3V0aWwnXG5cbmNvbnN0IHN0YWNrdXRpbHMgPSBuZXcgU3RhY2tVdGlscyh7XG4gIGludGVybmFsczogU3RhY2tVdGlscy5ub2RlSW50ZXJuYWxzKCksXG59KVxuXG5jb25zdCBsb2dsZXZlbHMgPSB7XG4gIHNwZWM6IDQsXG4gIHN1aXRlOiAzLFxuICBtaW46IDIsXG4gIHNpbGVudDogMSxcbn1cblxuY2xhc3MgU2Vzc2lvbiBleHRlbmRzIEV2ZW50RW1pdHRlciB7XG4gIHN0YXRpYyBjb25zdGFudHMgPSB7XG4gICAgc3BlZWQ6IHtcbiAgICAgIEZBU1Q6ICdmYXN0JyxcbiAgICAgIFNMT1c6ICdzbG93JyxcbiAgICB9LFxuICB9XG5cbiAgI3Jvb3QgPSBudWxsXG4gICNsaW50ZXIgPSBudWxsXG4gICNtZXNzYWdlcyA9IG5ldyBNYXAoKVxuICAjYnVzeSA9IG51bGxcbiAgI3NwaW5uZXIgPSBudWxsXG4gICNjb25zb2xlID0gbnVsbFxuICAjbG9nbGV2ZWwgPSBudWxsXG4gICNzZXR0aW5ncyA9IG51bGxcbiAgI3N0YXRzID0ge1xuICAgIHRvdGFsOiAwLFxuICAgIGNvbXBsZXRlZDogMCxcbiAgICBwYXNzZXM6IDAsXG4gICAgZmFpbHVyZXM6IDAsXG4gICAgcGVuZGluZzogMCxcbiAgICBkdXJhdGlvbjogMCxcbiAgfVxuXG4gICNzdGFydGVkQXQgPSBEYXRlLm5vdygpXG4gICNpc0ZpbmlzaGVkID0gZmFsc2VcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tc2hhZG93XG4gIGNvbnN0cnVjdG9yKHsgcm9vdCwgbGludGVyLCBidXN5LCBjb25zb2xlLCBzZXR0aW5ncyB9KSB7XG4gICAgc3VwZXIoKVxuXG4gICAgdGhpcy4jcm9vdCA9IHJvb3RcbiAgICB0aGlzLiNsaW50ZXIgPSBsaW50ZXJcbiAgICB0aGlzLiNidXN5ID0gYnVzeVxuICAgIHRoaXMuI2NvbnNvbGUgPSBjb25zb2xlXG4gICAgdGhpcy4jc2V0dGluZ3MgPSBzZXR0aW5nc1xuICAgIHRoaXMuI2xvZ2xldmVsID0gbG9nbGV2ZWxzW3NldHRpbmdzLnZlcmJvc2l0eV1cbiAgfVxuXG4gIGRpZFN0YXJ0UnVubmluZyh7IHJ1bm5lciB9KSB7XG4gICAgdGhpcy4jc3RhdHMudG90YWwgPSBydW5uZXIuc3VpdGUudG90YWxcblxuICAgIHRoaXMuI2xpbnRlci5jbGVhck1lc3NhZ2VzKClcbiAgICB0aGlzLiNzcGlubmVyID0gdGhpcy4jYnVzeS5yZXBvcnRCdXN5KG51bGwsIHtcbiAgICAgIG9uRGlkQ2xpY2s6IG9wZW5Db25zb2xlLFxuICAgIH0pXG4gICAgdGhpcy5yZXBvcnRQcm9ncmVzcyh7IHN0YXRzOiB0aGlzLiNzdGF0cyB9KVxuICB9XG5cbiAgZGlkRmluaXNoUnVubmluZyh7IHJ1bm5lciB9KSB7XG4gICAgY29uc3Qgc3RhdHMgPSB0aGlzLiNzdGF0cyA9IHtcbiAgICAgIC4uLnRoaXMuI3N0YXRzLFxuICAgICAgLi4ucnVubmVyLnN0YXRzLFxuICAgICAgdG90YWw6IHJ1bm5lci5zdWl0ZS50b3RhbCxcbiAgICB9XG5cbiAgICB0aGlzLiNpc0ZpbmlzaGVkID0gdHJ1ZVxuICAgIHRoaXMuI2xvZ2xldmVsID49IGxvZ2xldmVscy5taW4gJiYgdGhpcy4jY29uc29sZS5sb2cobWtzdGF0cyh7IHN0YXRzIH0pKVxuICB9XG5cbiAgZGlkQ2xvc2UoKSB7XG4gICAgLy8gSWYgdGhlIHNlc3Npb24gY2xvc2VkIGFicnVwdGx5IChpZS4gZHVlIHRvIHVzZXIgdGVybWluYXRpbmcgTW9jaGEgYmVmb3JlIGNvbXBsZXRpb24pXG4gICAgLy8gY2FsY3VsYXRlIHNvbWUgc3RhdGlzdGljcyBvbiBvdXIgZW5kLlxuICAgIGlmICghdGhpcy4jaXNGaW5pc2hlZCkge1xuICAgICAgdGhpcy4jc3RhdHMuZHVyYXRpb24gPSBEYXRlLm5vdygpIC0gdGhpcy4jc3RhcnRlZEF0XG4gICAgfVxuXG4gICAgdGhpcy4jc3Bpbm5lci5kaXNwb3NlKClcbiAgICB0aGlzLmVtaXQoJ2Nsb3NlJywgeyBzdGF0czogdGhpcy4jc3RhdHMgfSlcbiAgfVxuXG4gIGRpZFN0YXJ0U3VpdGUoeyBzdWl0ZSB9KSB7XG4gICAgLy8gQXZvaWQgcHJpbnRpbmcgZW1wdHkgbGluZXMgZHVlIHRvIHNvbWUgc3VpdGVzIG5vdCBoYXZpbmcgYSB0aXRsZSBwYXRoIChpZS4gdGhlIHJvb3Qgc3VpdGUpIOKYne+4j1xuICAgIGlmICghc3VpdGUudGl0bGVQYXRoIHx8ICFzdWl0ZS50aXRsZVBhdGgubGVuZ3RoKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB0aGlzLiNsb2dsZXZlbCA+PSBsb2dsZXZlbHMuc3VpdGUgJiYgdGhpcy4jY29uc29sZS5sb2coc3VpdGUudGl0bGVQYXRoLmpvaW4oJyDilrbvuI4gJykpXG4gIH1cblxuICBkaWRGaW5pc2hUZXN0KCkge1xuICAgIHRoaXMuI3N0YXRzLmNvbXBsZXRlZCsrXG4gICAgdGhpcy5yZXBvcnRQcm9ncmVzcyh7IHN0YXRzOiB0aGlzLiNzdGF0cyB9KVxuICB9XG5cbiAgZGlkUGFzc1Rlc3QoeyB0ZXN0IH0pIHtcbiAgICBjb25zdCBpc1Nsb3cgPSB0ZXN0LnNwZWVkID09PSBTZXNzaW9uLmNvbnN0YW50cy5zcGVlZC5TTE9XXG4gICAgbGV0IG1lc3NhZ2UgPSB0ZXN0LnRpdGxlXG5cbiAgICBpZiAodGhpcy4jc2V0dGluZ3MuZHVyYXRpb25zKSB7XG4gICAgICBjb25zdCB1bml0cyA9IGlzU2xvdyA/ICdtcyDwn5CMJyA6ICdtcydcbiAgICAgIG1lc3NhZ2UgKz0gYCAoJHt0ZXN0LmR1cmF0aW9ufSAke3VuaXRzfSlgXG4gICAgfVxuXG4gICAgdGhpcy4jc3RhdHMucGFzc2VzKytcblxuICAgIGlmICh0aGlzLiNsb2dsZXZlbCA+PSBsb2dsZXZlbHMuc3BlYykge1xuICAgICAgc3dpdGNoIChpc1Nsb3cpIHtcbiAgICAgICAgY2FzZSB0cnVlOlxuICAgICAgICAgIHRoaXMuI2NvbnNvbGUud2FybihtZXNzYWdlKVxuICAgICAgICAgIGJyZWFrXG4gICAgICAgIGNhc2UgZmFsc2U6XG4gICAgICAgICAgdGhpcy4jY29uc29sZS5zdWNjZXNzKG1lc3NhZ2UpXG4gICAgICAgIC8vIG5vIGRlZmF1bHRcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBhc3luYyBkaWRGYWlsVGVzdCh7IHRlc3QsIGVyciwgc2hvd0NvbnNvbGUgfSkge1xuICAgIC8vIFdoZW4gbm90IHVzaW5nIGF0IGxlYXN0IHRoZSBzdWl0ZSBsZXZlbCwgdGhlIGNvbnRleHQgYXJvdW5kIGEgdGVzdCBjYXNlIGlzIG5vdCB2aXNpYmxlIGluIHRoZVxuICAgIC8vIGNvbnNvbGUgd2hlbiBhbiBlcnJvciBvY2N1cnMgYmVjYXVzZSBpdCBpcyBub3QgbG9nZ2VkIHRvIGl0LiBTbywgd2hlbiB1c2luZyBhIGxlc3MgdmVyYm9zZVxuICAgIC8vIHJlcG9ydGVyIHByaW50IHRoZSBmdWxsIHRlc3QgdGl0bGUgaW5zdGVhZC5cbiAgICBjb25zdCB0aXRsZSA9IHRoaXMuI2xvZ2xldmVsIDwgbG9nbGV2ZWxzLnN1aXRlXG4gICAgICA/IHRlc3QuZnVsbFRpdGxlXG4gICAgICA6IHRlc3QudGl0bGVcblxuICAgIHRoaXMuI3N0YXRzLmZhaWx1cmVzKytcbiAgICB0aGlzLiNjb25zb2xlLmVycm9yKHRpdGxlKVxuICAgIHRoaXMuI2NvbnNvbGUuZXJyb3IoZXJyLnN0YWNrKVxuXG4gICAgaWYgKHNob3dDb25zb2xlKSB7XG4gICAgICBhd2FpdCBvcGVuQ29uc29sZSgpXG4gICAgfVxuXG4gICAgY29uc3QgbWVzc2FnZSA9IG1rZGlhZ21lc3NhZ2UoeyByb290OiB0aGlzLiNyb290LCB0ZXN0LCBlcnIgfSlcblxuICAgIC8vIFdlIGNvdWxkIG5vdCBnZW5lcmF0ZSBhIG1lYW5pbmdmdWwgZGlhZ25vc3RpYyBtZXNzYWdlIGZvciB0aGlzIGVycm9yIPCfmKJcbiAgICBpZiAoIW1lc3NhZ2UpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGNvbnN0IG1lc3NhZ2VzID0gdGhpcy4jbWVzc2FnZXMuZ2V0KG1lc3NhZ2UubG9jYXRpb24uZmlsZSkgfHwgW11cbiAgICBtZXNzYWdlcy5wdXNoKG1lc3NhZ2UpXG4gICAgdGhpcy4jbWVzc2FnZXMuc2V0KG1lc3NhZ2UubG9jYXRpb24uZmlsZSwgbWVzc2FnZXMpXG4gICAgdGhpcy4jbGludGVyLnNldE1lc3NhZ2VzKG1lc3NhZ2UubG9jYXRpb24uZmlsZSwgbWVzc2FnZXMpXG4gIH1cblxuICBkaWRTa2lwVGVzdCh7IHRlc3QgfSkge1xuICAgIHRoaXMuI3N0YXRzLnBlbmRpbmcrK1xuICAgIHRoaXMuI2xvZ2xldmVsID49IGxvZ2xldmVscy5zcGVjICYmIHRoaXMuI2NvbnNvbGUud2Fybih0ZXN0LnRpdGxlKVxuICB9XG5cbiAgcmVwb3J0UHJvZ3Jlc3MoeyBzdGF0cyB9KSB7XG4gICAgY29uc3QgY29tcGxldGVkID0gc3RhdHMuY29tcGxldGVkXG4gICAgY29uc3QgdG90YWwgPSBzdGF0cy50b3RhbFxuICAgIGNvbnN0IHBlcmNlbnQgPSBta3BlcmNlbnQoc3RhdHMpXG5cbiAgICB0aGlzLiNzcGlubmVyLnNldFRpdGxlKGBSdW5uaW5nIE1vY2hhIHRlc3RzOiAke2NvbXBsZXRlZH0gLyAke3RvdGFsfSAoJHtwZXJjZW50fSUpYClcbiAgfVxufVxuXG5mdW5jdGlvbiBta2RpYWdtZXNzYWdlKHsgcm9vdCwgdGVzdCwgZXJyIH0pIHtcbiAgY29uc3QgY2FsbHNpdGUgPSBta2NhbGxzaXRlKGVycilcblxuICAvLyBJZiB3ZSBoYXZlIG5vIHZpYWJsZSBlcnJvciBsb2NhdGlvbiBkbyBub3Qgc2hvdyB0aGUgZXJyb3IgaW4gZGlhZ25vc3RpY3Mg8J+kt+KAjeKZgu+4j1xuICBpZiAoIWNhbGxzaXRlKSB7XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIC8vIE5vcm1hbGlzZSBjYWxsc2l0ZSBpbmZvIHdpdGggaG93IExpbnRlciBleHBlY3RzIG1lc3NhZ2UgbG9jYXRpb25zIHRvIGJlIGRlZmluZWRcbiAgY2FsbHNpdGUuZmlsZSA9IHBhdGgucmVzb2x2ZShyb290LCBjYWxsc2l0ZS5maWxlKVxuICBjYWxsc2l0ZS5saW5lLS1cblxuICBjb25zdCB7IGZpbGUsIGxpbmUsIGNvbHVtbiB9ID0gY2FsbHNpdGVcbiAgY29uc3QgZGVzY3JpcHRpb24gPSBgJHt0ZXN0LmZ1bGxUaXRsZX1cXG5cXG4ke2Vyci5zdGFja31gXG5cbiAgcmV0dXJuIHtcbiAgICBsb2NhdGlvbjoge1xuICAgICAgZmlsZSxcbiAgICAgIHBvc2l0aW9uOiBbW2xpbmUsIGNvbHVtbl0sIFtsaW5lLCBjb2x1bW5dXSxcbiAgICB9LFxuICAgIHNldmVyaXR5OiAnZXJyb3InLFxuICAgIGV4Y2VycHQ6IGVyci5tZXNzYWdlLFxuICAgIGRlc2NyaXB0aW9uOiBbJ2BgYCcsIGRlc2NyaXB0aW9uLCAnYGBgJ10uam9pbignXFxuJyksXG4gIH1cbn1cblxuLyoqXG4gKiBEZXRlcm1pbmUgdGhlIG1vc3QgaWRlYWwgbG9jYXRpb24gaW4gY29kZSB3aGVyZSB0byBzaG93IHRoZSBzb3VyY2Ugb2YgdGhpcyBlcnJvciB0byB0aGUgdXNlclxuICpcbiAqIEBwYXJhbSAgICAge0Vycm9yfSAgICAgZXJyICAgICBUaGUgZXJyb3Igd2l0aCBzdGFjayB0cmFjZXNcbiAqIEByZXR1cm4gICAge09iamVjdH1cbiAqL1xuZnVuY3Rpb24gbWtjYWxsc2l0ZShlcnIpIHtcbiAgLy8gU29tZXRpbWVzIHdlIGNvdWxkIGdldCBhIHdlaXJkIFwiZXJyb3JcIiB3aGljaCBpcyBub3QgcmVhbGx5IGFuIGBFcnJvcmAgb2JqZWN0IGFuZCB0aGVyZWZvcmUgZG9lc1xuICAvLyBub3QgaGF2ZSB0aGUgYC5zdGFja2AgcHJvcGVydHkuIERvIG5vdCBhdHRlbXB0IHRvIHBhcnNlIHN1Y2ggdGhpbmdzLlxuICBpZiAoIWVyciB8fCAhZXJyLnN0YWNrKSB7XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIC8vIFByZXBhcmUgdGhlIHN0YWNrIHRyYWNlcyBieSBzcGxpdHRpbmcgdGhlIHN0YWNrIHN0cmluZyBpbnRvIGluZGl2aWR1YWwgbGluZSByZWNvcmRzXG4gIGNvbnN0IGxpbmVzID0gc3RhY2t1dGlsc1xuICAgIC5jbGVhbihlcnIuc3RhY2spXG4gICAgLnRyaW0oKVxuICAgIC5zcGxpdChvcy5FT0wpXG5cbiAgLy8gQXR0ZW1wdCB0byBmaWx0ZXIgb3V0IHRyYWNlcyBwb2ludGluZyB0byBzdHVmZiBpbiBub2RlX21vZHVsZXNcbiAgLy8gR2VuZXJhbGx5IHRoZSBhY3R1YWwgY2F1c2Ugb2YgYW4gZXJyb3IgaXMgZWl0aGVyIHRoZSB0b3AtbW9zdCB0cmFjZSBvciBzb21lIHRyYWNlIGEgZmV3IHN0ZXBzXG4gIC8vIGJlbG93IHNvbWV0aGluZyBpbnNpZGUgbm9kZV9tb2R1bGVzIGR1ZSB0byB1c2VybGFuZCBjb2RlIGNhbGxpbmcgaW50byBzb21lIGRlcGVuZGVuY3lcbiAgY29uc3QgdHJhY2UgPSBsaW5lc1xuICAgIC5maWx0ZXIobGluZSA9PiAhbGluZS5pbmNsdWRlcygnbm9kZV9tb2R1bGVzLycpKVxuICAgIC8vIFBhcnNlIHRoZSBsaW5lcyBpbnRvIHVzYWJsZSBkYXRhIHN0cnVjdHVyZXNcbiAgICAubWFwKGxpbmUgPT4gc3RhY2t1dGlscy5wYXJzZUxpbmUobGluZSkpXG4gICAgLy8gUmVtb3ZlIGxpbmVzIHdoaWNoIGRvIG5vdCBpbmNsdWRlIGZpbGUgbG9jYXRpb24gaW5mb3JtYXRpb24gKGFub255bW91cyBnZW5lcmF0ZWQgZnVuY3Rpb25zLFxuICAgIC8vIGV2YWxzLCBhbmQgdmFyaW91cyBvdGhlciBkeW5hbWljYWxseS1idWlsdCB0aGluZ3MpXG4gICAgLmZpbHRlcihsaW5lID0+IGxpbmUgJiYgbGluZS5maWxlKVxuICAgIC5zaGlmdCgpXG4gIC8vIElmIHdlIGRvIG5vdCBmaW5kIGFueXRoaW5nIHJlbGV2YW50IGFuZCBldmVyeSB0cmFjZSBwb2ludHMgdG8gc29tZXRoaW5nIGluc2lkZSBub2RlX21vZHVsZXMsXG4gIC8vIHdlbGwsIGp1c3QgdXNlIHRoZSB0b3AtbW9zdCB0cmFjZS5cbiAgfHwgc3RhY2t1dGlscy5wYXJzZUxpbmUobGluZXNbMF0pXG5cbiAgcmV0dXJuIHRyYWNlXG59XG5cbmZ1bmN0aW9uIG1rcGVyY2VudChzdGF0cykge1xuICByZXR1cm4gTWF0aC5mbG9vcihzdGF0cy5jb21wbGV0ZWQgLyBzdGF0cy50b3RhbCAqIDEwMClcbn1cblxuZXhwb3J0IHtcbiAgU2Vzc2lvbixcbn1cbiJdfQ== | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNlc3Npb24ubWpzIl0sIm5hbWVzIjpbInN0YWNrdXRpbHMiLCJTdGFja1V0aWxzIiwiaW50ZXJuYWxzIiwibm9kZUludGVybmFscyIsImxvZ2xldmVscyIsInNwZWMiLCJzdWl0ZSIsIm1pbiIsInNpbGVudCIsIlNlc3Npb24iLCJFdmVudEVtaXR0ZXIiLCJjb25zdHJ1Y3RvciIsInJvb3QiLCJsaW50ZXIiLCJidXN5IiwiY29uc29sZSIsInNldHRpbmdzIiwiTWFwIiwidG90YWwiLCJjb21wbGV0ZWQiLCJwYXNzZXMiLCJmYWlsdXJlcyIsInBlbmRpbmciLCJkdXJhdGlvbiIsIkRhdGUiLCJub3ciLCJ2ZXJib3NpdHkiLCJkaWRTdGFydFJ1bm5pbmciLCJydW5uZXIiLCJjbGVhck1lc3NhZ2VzIiwicmVwb3J0QnVzeSIsIm9uRGlkQ2xpY2siLCJvcGVuQ29uc29sZSIsInJlcG9ydFByb2dyZXNzIiwic3RhdHMiLCJkaWRGaW5pc2hSdW5uaW5nIiwibG9nIiwiZGlkQ2xvc2UiLCJkaXNwb3NlIiwiZW1pdCIsImRpZFN0YXJ0U3VpdGUiLCJ0aXRsZVBhdGgiLCJsZW5ndGgiLCJqb2luIiwiZGlkRmluaXNoVGVzdCIsImRpZFBhc3NUZXN0IiwidGVzdCIsImlzU2xvdyIsInNwZWVkIiwiY29uc3RhbnRzIiwiU0xPVyIsIm1lc3NhZ2UiLCJ0aXRsZSIsImR1cmF0aW9ucyIsInVuaXRzIiwid2FybiIsInN1Y2Nlc3MiLCJkaWRGYWlsVGVzdCIsImVyciIsInNob3dDb25zb2xlIiwiZnVsbFRpdGxlIiwiZXJyb3IiLCJzdHJpcGFuc2kiLCJzdGFjayIsIm1rZGlhZ21lc3NhZ2UiLCJtZXNzYWdlcyIsImdldCIsImxvY2F0aW9uIiwiZmlsZSIsInB1c2giLCJzZXQiLCJzZXRNZXNzYWdlcyIsImRpZFNraXBUZXN0IiwicGVyY2VudCIsIm1rcGVyY2VudCIsInNldFRpdGxlIiwiRkFTVCIsImNhbGxzaXRlIiwibWtjYWxsc2l0ZSIsInBhdGgiLCJyZXNvbHZlIiwibGluZSIsImNvbHVtbiIsImV4Y2VycHQiLCJkZXNjcmlwdGlvbiIsInBvc2l0aW9uIiwic2V2ZXJpdHkiLCJsaW5lcyIsImNsZWFuIiwidHJpbSIsInNwbGl0Iiwib3MiLCJFT0wiLCJ0cmFjZSIsImZpbHRlciIsImluY2x1ZGVzIiwibWFwIiwicGFyc2VMaW5lIiwic2hpZnQiLCJNYXRoIiwiZmxvb3IiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7QUFFQSxNQUFNQSxVQUFVLEdBQUcsSUFBSUMsVUFBSixDQUFlO0FBQ2hDQyxFQUFBQSxTQUFTLEVBQUVELFVBQVUsQ0FBQ0UsYUFBWDtBQURxQixDQUFmLENBQW5CO0FBSUEsTUFBTUMsU0FBUyxHQUFHO0FBQ2hCQyxFQUFBQSxJQUFJLEVBQUUsQ0FEVTtBQUVoQkMsRUFBQUEsS0FBSyxFQUFFLENBRlM7QUFHaEJDLEVBQUFBLEdBQUcsRUFBRSxDQUhXO0FBSWhCQyxFQUFBQSxNQUFNLEVBQUU7QUFKUSxDQUFsQjs7QUFPQSxNQUFNQyxPQUFOLFNBQXNCQyxvQkFBdEIsQ0FBbUM7QUE2QmpDQyxFQUFBQSxXQUFXLENBQUM7QUFBRUMsSUFBQUEsSUFBSSxFQUFKQSxNQUFGO0FBQVFDLElBQUFBLE1BQU0sRUFBTkEsUUFBUjtBQUFnQkMsSUFBQUEsSUFBSSxFQUFKQSxNQUFoQjtBQUFzQkMsSUFBQUEsT0FBTyxFQUFQQSxTQUF0QjtBQUErQkMsSUFBQUEsUUFBUSxFQUFSQTtBQUEvQixHQUFELEVBQTRDO0FBQ3JEOztBQURxRDtBQUFBO0FBQUEsYUFyQi9DO0FBcUIrQzs7QUFBQTtBQUFBO0FBQUEsYUFwQjdDO0FBb0I2Qzs7QUFBQTtBQUFBO0FBQUEsYUFuQjNDLElBQUlDLEdBQUo7QUFtQjJDOztBQUFBO0FBQUE7QUFBQSxhQWxCL0M7QUFrQitDOztBQUFBO0FBQUE7QUFBQSxhQWpCNUM7QUFpQjRDOztBQUFBO0FBQUE7QUFBQSxhQWhCNUM7QUFnQjRDOztBQUFBO0FBQUE7QUFBQSxh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QVFBLFFBQU1DLEtBQUssR0FBR04sS0FBSyxDQUNoQk8sTUFEVyxDQUNKYixJQUFJLElBQUksQ0FBQ0EsSUFBSSxDQUFDYyxRQUFMLENBQWMsZUFBZCxDQURMLEVBR1hDLEdBSFcsQ0FHUGYsSUFBSSxJQUFJakYsVUFBVSxDQUFDaUcsU0FBWCxDQUFxQmhCLElBQXJCLENBSEQsRUFNWGEsTUFOVyxDQU1KYixJQUFJLElBQUlBLElBQUksSUFBSUEsSUFBSSxDQUFDYixJQU5qQixFQU9YOEIsS0FQVyxNQVVYbEcsVUFBVSxDQUFDaUcsU0FBWCxDQUFxQlYsS0FBSyxDQUFDLENBQUQsQ0FBMUIsQ0FWSDtBQVlBLFNBQU9NLEtBQVA7QUFDRDs7QUFFRCxTQUFTbkIsU0FBVCxDQUFtQnhDLEtBQW5CLEVBQTBCO0FBQ3hCLFNBQU9pRSxJQUFJLENBQUNDLEtBQUwsQ0FBV2xFLEtBQUssQ0FBQ2YsU0FBTixHQUFrQmUsS0FBSyxDQUFDaEIsS0FBeEIsR0FBZ0MsR0FBM0MsQ0FBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgb3MgZnJvbSAnb3MnXG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnXG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICdldmVudHMnXG5pbXBvcnQgKiBhcyBzdHJpcGFuc2kgZnJvbSAnc3RyaXAtYW5zaSdcbmltcG9ydCAqIGFzIFN0YWNrVXRpbHMgZnJvbSAnc3RhY2stdXRpbHMnXG5pbXBvcnQgeyBta3N0YXRzLCBvcGVuQ29uc29sZSB9IGZyb20gJy4vdXRpbCdcblxuY29uc3Qgc3RhY2t1dGlscyA9IG5ldyBTdGFja1V0aWxzKHtcbiAgaW50ZXJuYWxzOiBTdGFja1V0aWxzLm5vZGVJbnRlcm5hbHMoKSxcbn0pXG5cbmNvbnN0IGxvZ2xldmVscyA9IHtcbiAgc3BlYzogNCxcbiAgc3VpdGU6IDMsXG4gIG1pbjogMixcbiAgc2lsZW50OiAxLFxufVxuXG5jbGFzcyBTZXNzaW9uIGV4dGVuZHMgRXZlbnRFbWl0dGVyIHtcbiAgc3RhdGljIGNvbnN0YW50cyA9IHtcbiAgICBzcGVlZDoge1xuICAgICAgRkFTVDogJ2Zhc3QnLFxuICAgICAgU0xPVzogJ3Nsb3cnLFxuICAgIH0sXG4gIH1cblxuICAjcm9vdCA9IG51bGxcbiAgI2xpbnRlciA9IG51bGxcbiAgI21lc3NhZ2VzID0gbmV3IE1hcCgpXG4gICNidXN5ID0gbnVsbFxuICAjc3Bpbm5lciA9IG51bGxcbiAgI2NvbnNvbGUgPSBudWxsXG4gICNsb2dsZXZlbCA9IG51bGxcbiAgI3NldHRpbmdzID0gbnVsbFxuICAjc3RhdHMgPSB7XG4gICAgdG90YWw6IDAsXG4gICAgY29tcGxldGVkOiAwLFxuICAgIHBhc3NlczogMCxcbiAgICBmYWlsdXJlczogMCxcbiAgICBwZW5kaW5nOiAwLFxuICAgIGR1cmF0aW9uOiAwLFxuICB9XG5cbiAgI3N0YXJ0ZWRBdCA9IERhdGUubm93KClcbiAgI2lzRmluaXNoZWQgPSBmYWxzZVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1zaGFkb3dcbiAgY29uc3RydWN0b3IoeyByb290LCBsaW50ZXIsIGJ1c3ksIGNvbnNvbGUsIHNldHRpbmdzIH0pIHtcbiAgICBzdXBlcigpXG5cbiAgICB0aGlzLiNyb290ID0gcm9vdFxuICAgIHRoaXMuI2xpbnRlciA9IGxpbnRlclxuICAgIHRoaXMuI2J1c3kgPSBidXN5XG4gICAgdGhpcy4jY29uc29sZSA9IGNvbnNvbGVcbiAgICB0aGlzLiNzZXR0aW5ncyA9IHNldHRpbmdzXG4gICAgdGhpcy4jbG9nbGV2ZWwgPSBsb2dsZXZlbHNbc2V0dGluZ3MudmVyYm9zaXR5XVxuICB9XG5cbiAgZGlkU3RhcnRSdW5uaW5nKHsgcnVubmVyIH0pIHtcbiAgICB0aGlzLiNzdGF0cy50b3RhbCA9IHJ1bm5lci5zdWl0ZS50b3RhbFxuXG4gICAgdGhpcy4jbGludGVyLmNsZWFyTWVzc2FnZXMoKVxuICAgIHRoaXMuI3NwaW5uZXIgPSB0aGlzLiNidXN5LnJlcG9ydEJ1c3kobnVsbCwge1xuICAgICAgb25EaWRDbGljazogb3BlbkNvbnNvbGUsXG4gICAgfSlcbiAgICB0aGlzLnJlcG9ydFByb2dyZXNzKHsgc3RhdHM6IHRoaXMuI3N0YXRzIH0pXG4gIH1cblxuICBkaWRGaW5pc2hSdW5uaW5nKHsgcnVubmVyIH0pIHtcbiAgICBjb25zdCBzdGF0cyA9IHRoaXMuI3N0YXRzID0ge1xuICAgICAgLi4udGhpcy4jc3RhdHMsXG4gICAgICAuLi5ydW5uZXIuc3RhdHMsXG4gICAgICB0b3RhbDogcnVubmVyLnN1aXRlLnRvdGFsLFxuICAgIH1cblxuICAgIHRoaXMuI2lzRmluaXNoZWQgPSB0cnVlXG4gICAgdGhpcy4jbG9nbGV2ZWwgPj0gbG9nbGV2ZWxzLm1pbiAmJiB0aGlzLiNjb25zb2xlLmxvZyhta3N0YXRzKHsgc3RhdHMgfSkpXG4gIH1cblxuICBkaWRDbG9zZSgpIHtcbiAgICAvLyBJZiB0aGUgc2Vzc2lvbiBjbG9zZWQgYWJydXB0bHkgKGllLiBkdWUgdG8gdXNlciB0ZXJtaW5hdGluZyBNb2NoYSBiZWZvcmUgY29tcGxldGlvbilcbiAgICAvLyBjYWxjdWxhdGUgc29tZSBzdGF0aXN0aWNzIG9uIG91ciBlbmQuXG4gICAgaWYgKCF0aGlzLiNpc0ZpbmlzaGVkKSB7XG4gICAgICB0aGlzLiNzdGF0cy5kdXJhdGlvbiA9IERhdGUubm93KCkgLSB0aGlzLiNzdGFydGVkQXRcbiAgICB9XG5cbiAgICB0aGlzLiNzcGlubmVyLmRpc3Bvc2UoKVxuICAgIHRoaXMuZW1pdCgnY2xvc2UnLCB7IHN0YXRzOiB0aGlzLiNzdGF0cyB9KVxuICB9XG5cbiAgZGlkU3RhcnRTdWl0ZSh7IHN1aXRlIH0pIHtcbiAgICAvLyBBdm9pZCBwcmludGluZyBlbXB0eSBsaW5lcyBkdWUgdG8gc29tZSBzdWl0ZXMgbm90IGhhdmluZyBhIHRpdGxlIHBhdGggKGllLiB0aGUgcm9vdCBzdWl0ZSkg4pid77iPXG4gICAgaWYgKCFzdWl0ZS50aXRsZVBhdGggfHwgIXN1aXRlLnRpdGxlUGF0aC5sZW5ndGgpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIHRoaXMuI2xvZ2xldmVsID49IGxvZ2xldmVscy5zdWl0ZSAmJiB0aGlzLiNjb25zb2xlLmxvZyhzdWl0ZS50aXRsZVBhdGguam9pbignIOKWtu+4jiAnKSlcbiAgfVxuXG4gIGRpZEZpbmlzaFRlc3QoKSB7XG4gICAgdGhpcy4jc3RhdHMuY29tcGxldGVkKytcbiAgICB0aGlzLnJlcG9ydFByb2dyZXNzKHsgc3RhdHM6IHRoaXMuI3N0YXRzIH0pXG4gIH1cblxuICBkaWRQYXNzVGVzdCh7IHRlc3QgfSkge1xuICAgIGNvbnN0IGlzU2xvdyA9IHRlc3Quc3BlZWQgPT09IFNlc3Npb24uY29uc3RhbnRzLnNwZWVkLlNMT1dcbiAgICBsZXQgbWVzc2FnZSA9IHRlc3QudGl0bGVcblxuICAgIGlmICh0aGlzLiNzZXR0aW5ncy5kdXJhdGlvbnMpIHtcbiAgICAgIGNvbnN0IHVuaXRzID0gaXNTbG93ID8gJ21zIPCfkIwnIDogJ21zJ1xuICAgICAgbWVzc2FnZSArPSBgICgke3Rlc3QuZHVyYXRpb259ICR7dW5pdHN9KWBcbiAgICB9XG5cbiAgICB0aGlzLiNzdGF0cy5wYXNzZXMrK1xuXG4gICAgaWYgKHRoaXMuI2xvZ2xldmVsID49IGxvZ2xldmVscy5zcGVjKSB7XG4gICAgICBzd2l0Y2ggKGlzU2xvdykge1xuICAgICAgICBjYXNlIHRydWU6XG4gICAgICAgICAgdGhpcy4jY29uc29sZS53YXJuKG1lc3NhZ2UpXG4gICAgICAgICAgYnJlYWtcbiAgICAgICAgY2FzZSBmYWxzZTpcbiAgICAgICAgICB0aGlzLiNjb25zb2xlLnN1Y2Nlc3MobWVzc2FnZSlcbiAgICAgICAgLy8gbm8gZGVmYXVsdFxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGRpZEZhaWxUZXN0KHsgdGVzdCwgZXJyLCBzaG93Q29uc29sZSB9KSB7XG4gICAgLy8gV2hlbiBub3QgdXNpbmcgYXQgbGVhc3QgdGhlIHN1aXRlIGxldmVsLCB0aGUgY29udGV4dCBhcm91bmQgYSB0ZXN0IGNhc2UgaXMgbm90IHZpc2libGUgaW4gdGhlXG4gICAgLy8gY29uc29sZSB3aGVuIGFuIGVycm9yIG9jY3VycyBiZWNhdXNlIGl0IGlzIG5vdCBsb2dnZWQgdG8gaXQuIFNvLCB3aGVuIHVzaW5nIGEgbGVzcyB2ZXJib3NlXG4gICAgLy8gcmVwb3J0ZXIgcHJpbnQgdGhlIGZ1bGwgdGVzdCB0aXRsZSBpbnN0ZWFkLlxuICAgIGNvbnN0IHRpdGxlID0gdGhpcy4jbG9nbGV2ZWwgPCBsb2dsZXZlbHMuc3VpdGVcbiAgICAgID8gdGVzdC5mdWxsVGl0bGVcbiAgICAgIDogdGVzdC50aXRsZVxuXG4gICAgdGhpcy4jc3RhdHMuZmFpbHVyZXMrK1xuICAgIHRoaXMuI2NvbnNvbGUuZXJyb3IodGl0bGUpXG4gICAgdGhpcy4jY29uc29sZS5lcnJvcihzdHJpcGFuc2koZXJyLnN0YWNrKSlcblxuICAgIGlmIChzaG93Q29uc29sZSkge1xuICAgICAgYXdhaXQgb3BlbkNvbnNvbGUoKVxuICAgIH1cblxuICAgIGNvbnN0IG1lc3NhZ2UgPSBta2RpYWdtZXNzYWdlKHsgcm9vdDogdGhpcy4jcm9vdCwgdGVzdCwgZXJyIH0pXG5cbiAgICAvLyBXZSBjb3VsZCBub3QgZ2VuZXJhdGUgYSBtZWFuaW5nZnVsIGRpYWdub3N0aWMgbWVzc2FnZSBmb3IgdGhpcyBlcnJvciDwn5iiXG4gICAgaWYgKCFtZXNzYWdlKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCBtZXNzYWdlcyA9IHRoaXMuI21lc3NhZ2VzLmdldChtZXNzYWdlLmxvY2F0aW9uLmZpbGUpIHx8IFtdXG4gICAgbWVzc2FnZXMucHVzaChtZXNzYWdlKVxuICAgIHRoaXMuI21lc3NhZ2VzLnNldChtZXNzYWdlLmxvY2F0aW9uLmZpbGUsIG1lc3NhZ2VzKVxuICAgIHRoaXMuI2xpbnRlci5zZXRNZXNzYWdlcyhtZXNzYWdlLmxvY2F0aW9uLmZpbGUsIG1lc3NhZ2VzKVxuICB9XG5cbiAgZGlkU2tpcFRlc3QoeyB0ZXN0IH0pIHtcbiAgICB0aGlzLiNzdGF0cy5wZW5kaW5nKytcbiAgICB0aGlzLiNsb2dsZXZlbCA+PSBsb2dsZXZlbHMuc3BlYyAmJiB0aGlzLiNjb25zb2xlLndhcm4odGVzdC50aXRsZSlcbiAgfVxuXG4gIHJlcG9ydFByb2dyZXNzKHsgc3RhdHMgfSkge1xuICAgIGNvbnN0IGNvbXBsZXRlZCA9IHN0YXRzLmNvbXBsZXRlZFxuICAgIGNvbnN0IHRvdGFsID0gc3RhdHMudG90YWxcbiAgICBjb25zdCBwZXJjZW50ID0gbWtwZXJjZW50KHN0YXRzKVxuXG4gICAgdGhpcy4jc3Bpbm5lci5zZXRUaXRsZShgUnVubmluZyBNb2NoYSB0ZXN0czogJHtjb21wbGV0ZWR9IC8gJHt0b3RhbH0gKCR7cGVyY2VudH0lKWApXG4gIH1cbn1cblxuZnVuY3Rpb24gbWtkaWFnbWVzc2FnZSh7IHJvb3QsIHRlc3QsIGVyciB9KSB7XG4gIGNvbnN0IGNhbGxzaXRlID0gbWtjYWxsc2l0ZShlcnIpXG5cbiAgLy8gSWYgd2UgaGF2ZSBubyB2aWFibGUgZXJyb3IgbG9jYXRpb24gZG8gbm90IHNob3cgdGhlIGVycm9yIGluIGRpYWdub3N0aWNzIPCfpLfigI3imYLvuI9cbiAgaWYgKCFjYWxsc2l0ZSkge1xuICAgIHJldHVybiBudWxsXG4gIH1cblxuICAvLyBOb3JtYWxpc2UgY2FsbHNpdGUgaW5mbyB3aXRoIGhvdyBMaW50ZXIgZXhwZWN0cyBtZXNzYWdlIGxvY2F0aW9ucyB0byBiZSBkZWZpbmVkXG4gIGNhbGxzaXRlLmZpbGUgPSBwYXRoLnJlc29sdmUocm9vdCwgY2FsbHNpdGUuZmlsZSlcbiAgY2FsbHNpdGUubGluZS0tXG5cbiAgY29uc3QgeyBmaWxlLCBsaW5lLCBjb2x1bW4gfSA9IGNhbGxzaXRlXG4gIGNvbnN0IGV4Y2VycHQgPSBzdHJpcGFuc2koZXJyLm1lc3NhZ2UpXG4gIGNvbnN0IGRlc2NyaXB0aW9uID0gW1xuICAgIGAjIyMjICR7dGVzdC5mdWxsVGl0bGV9YCxcbiAgICAnXFxuXFxuJyxcbiAgICAnYGBgJyxcbiAgICBgJHtzdHJpcGFuc2koZXJyLnN0YWNrKX1gLFxuICAgICdgYGAnLFxuICBdLmpvaW4oJ1xcbicpXG5cbiAgcmV0dXJuIHtcbiAgICBsb2NhdGlvbjoge1xuICAgICAgZmlsZSxcbiAgICAgIHBvc2l0aW9uOiBbW2xpbmUsIGNvbHVtbl0sIFtsaW5lLCBjb2x1bW5dXSxcbiAgICB9LFxuICAgIHNldmVyaXR5OiAnZXJyb3InLFxuICAgIGV4Y2VycHQsXG4gICAgZGVzY3JpcHRpb24sXG4gIH1cbn1cblxuLyoqXG4gKiBEZXRlcm1pbmUgdGhlIG1vc3QgaWRlYWwgbG9jYXRpb24gaW4gY29kZSB3aGVyZSB0byBzaG93IHRoZSBzb3VyY2Ugb2YgdGhpcyBlcnJvciB0byB0aGUgdXNlclxuICpcbiAqIEBwYXJhbSAgICAge0Vycm9yfSAgICAgZXJyICAgICBUaGUgZXJyb3Igd2l0aCBzdGFjayB0cmFjZXNcbiAqIEByZXR1cm4gICAge09iamVjdH1cbiAqL1xuZnVuY3Rpb24gbWtjYWxsc2l0ZShlcnIpIHtcbiAgLy8gU29tZXRpbWVzIHdlIGNvdWxkIGdldCBhIHdlaXJkIFwiZXJyb3JcIiB3aGljaCBpcyBub3QgcmVhbGx5IGFuIGBFcnJvcmAgb2JqZWN0IGFuZCB0aGVyZWZvcmUgZG9lc1xuICAvLyBub3QgaGF2ZSB0aGUgYC5zdGFja2AgcHJvcGVydHkuIERvIG5vdCBhdHRlbXB0IHRvIHBhcnNlIHN1Y2ggdGhpbmdzLlxuICBpZiAoIWVyciB8fCAhZXJyLnN0YWNrKSB7XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIC8vIFByZXBhcmUgdGhlIHN0YWNrIHRyYWNlcyBieSBzcGxpdHRpbmcgdGhlIHN0YWNrIHN0cmluZyBpbnRvIGluZGl2aWR1YWwgbGluZSByZWNvcmRzXG4gIGNvbnN0IGxpbmVzID0gc3RhY2t1dGlsc1xuICAgIC5jbGVhbihlcnIuc3RhY2spXG4gICAgLnRyaW0oKVxuICAgIC5zcGxpdChvcy5FT0wpXG5cbiAgLy8gQXR0ZW1wdCB0byBmaWx0ZXIgb3V0IHRyYWNlcyBwb2ludGluZyB0byBzdHVmZiBpbiBub2RlX21vZHVsZXNcbiAgLy8gR2VuZXJhbGx5IHRoZSBhY3R1YWwgY2F1c2Ugb2YgYW4gZXJyb3IgaXMgZWl0aGVyIHRoZSB0b3AtbW9zdCB0cmFjZSBvciBzb21lIHRyYWNlIGEgZmV3IHN0ZXBzXG4gIC8vIGJlbG93IHNvbWV0aGluZyBpbnNpZGUgbm9kZV9tb2R1bGVzIGR1ZSB0byB1c2VybGFuZCBjb2RlIGNhbGxpbmcgaW50byBzb21lIGRlcGVuZGVuY3lcbiAgY29uc3QgdHJhY2UgPSBsaW5lc1xuICAgIC5maWx0ZXIobGluZSA9PiAhbGluZS5pbmNsdWRlcygnbm9kZV9tb2R1bGVzLycpKVxuICAgIC8vIFBhcnNlIHRoZSBsaW5lcyBpbnRvIHVzYWJsZSBkYXRhIHN0cnVjdHVyZXNcbiAgICAubWFwKGxpbmUgPT4gc3RhY2t1dGlscy5wYXJzZUxpbmUobGluZSkpXG4gICAgLy8gUmVtb3ZlIGxpbmVzIHdoaWNoIGRvIG5vdCBpbmNsdWRlIGZpbGUgbG9jYXRpb24gaW5mb3JtYXRpb24gKGFub255bW91cyBnZW5lcmF0ZWQgZnVuY3Rpb25zLFxuICAgIC8vIGV2YWxzLCBhbmQgdmFyaW91cyBvdGhlciBkeW5hbWljYWxseS1idWlsdCB0aGluZ3MpXG4gICAgLmZpbHRlcihsaW5lID0+IGxpbmUgJiYgbGluZS5maWxlKVxuICAgIC5zaGlmdCgpXG4gIC8vIElmIHdlIGRvIG5vdCBmaW5kIGFueXRoaW5nIHJlbGV2YW50IGFuZCBldmVyeSB0cmFjZSBwb2ludHMgdG8gc29tZXRoaW5nIGluc2lkZSBub2RlX21vZHVsZXMsXG4gIC8vIHdlbGwsIGp1c3QgdXNlIHRoZSB0b3AtbW9zdCB0cmFjZS5cbiAgfHwgc3RhY2t1dGlscy5wYXJzZUxpbmUobGluZXNbMF0pXG5cbiAgcmV0dXJuIHRyYWNlXG59XG5cbmZ1bmN0aW9uIG1rcGVyY2VudChzdGF0cykge1xuICByZXR1cm4gTWF0aC5mbG9vcihzdGF0cy5jb21wbGV0ZWQgLyBzdGF0cy50b3RhbCAqIDEwMClcbn1cblxuZXhwb3J0IHtcbiAgU2Vzc2lvbixcbn1cbiJdfQ== |
Sorry, the diff of this file is not supported yet
134923
1645
5
+ Addedstrip-ansi@^5.2.0
+ Addedansi-regex@4.1.1(transitive)
+ Addedstrip-ansi@5.2.0(transitive)