nsc-react-component 2.2.0 → 2.2.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/base/form/Form.js
CHANGED
|
@@ -462,7 +462,7 @@ var NscForm = /*#__PURE__*/function (_PureComponent) {
|
|
|
462
462
|
className: this.state.expand ? getLess(styles, "allsreen") : "",
|
|
463
463
|
width: this.state.expand ? "100vw" : newModalProps.width,
|
|
464
464
|
style: {
|
|
465
|
-
maxWidth: "
|
|
465
|
+
maxWidth: "100%"
|
|
466
466
|
}
|
|
467
467
|
}), /*#__PURE__*/React.createElement(_Form, _extends({
|
|
468
468
|
ref: this.formRef
|
|
@@ -553,4 +553,4 @@ var NscForm = /*#__PURE__*/function (_PureComponent) {
|
|
|
553
553
|
}(PureComponent);
|
|
554
554
|
|
|
555
555
|
export default NscForm;
|
|
556
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Jhc2UvZm9ybS9Gb3JtLnRzeCJdLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJyZXF1ZXN0Iiwib21pdCIsIkJ1dHRvbiIsInN0eWxlcyIsImdldExlc3MiLCJQbHVzQ2lyY2xlT3V0bGluZWQiLCJDbG9zZUNpcmNsZU91dGxpbmVkIiwiQ2xvc2VPdXRsaW5lZCIsIkV4cGFuZE91dGxpbmVkIiwiQ29tcHJlc3NPdXRsaW5lZCIsIk5zY0Zvcm0iLCJwcm9wcyIsImNyZWF0ZVJlZiIsImZvcm1WaXNpYmxlIiwiZm9ybU1vZGFsUHJvcHMiLCJmb3JtRHJhd2VyUHJvcHMiLCJpc0NoYW5nZSIsImV4cGFuZCIsIm5hbWUiLCJmb3JtUmVmIiwiY3VycmVudCIsImdldEZpZWxkRXJyb3IiLCJnZXRGaWVsZEluc3RhbmNlIiwiZ2V0RmllbGRzRXJyb3IiLCJnZXRGaWVsZHNWYWx1ZSIsImdldEZpZWxkVmFsdWUiLCJpc0ZpZWxkc1RvdWNoZWQiLCJpc0ZpZWxkVG91Y2hlZCIsImlzRmllbGRWYWxpZGF0aW5nIiwicmVzZXRGaWVsZHMiLCJvcHRpb25zIiwic2Nyb2xsVG9GaWVsZCIsImZpbGRzIiwic2V0RmllbGRzIiwidmFsdWVzIiwic2V0RmllbGRzVmFsdWUiLCJzdWJtaXQiLCJ1cmwiLCJjYWxsYmFjayIsIm1zZyIsInByb3BzVXJsIiwiZW5jcnlwdEZpZWxkcyIsImVuY3J5cHRQcm9wcHMiLCJFcnJvciIsIm1ldGhvZCIsInJlcXVlc3RVcmwiLCJyZXF1ZXN0RGF0YSIsInJlcXVlc3RFbmNyeXB0IiwicmVxdWVzdFBhcmFtIiwiZGF0YSIsInBhcmFtcyIsInRvTG93ZXJDYXNlIiwidGhlbiIsInJlcyIsImNvZGUiLCJzdWNjZXNzIiwiZXJyb3IiLCJjYXRjaCIsImNvbnNvbGUiLCJsb2ciLCJ2YWxpZGF0ZUZpZWxkcyIsImUiLCJzdGF0ZSIsImNoYW5nZVZhbGlkIiwic2hvd01vZGVsIiwibW9kYWxQcm9wcyIsImRyYXdlclByb3BzIiwiX3RoaXMiLCJvbkNhbmNlbCIsIm9uQ2xvc2UiLCJjb25maXJtIiwidGl0bGUiLCJjYW5jZWxUZXh0Iiwib2tUZXh0IiwiY2VudGVyZWQiLCJvbk9rIiwiaGlkZUZvcm0iLCJyZXNldFZhbHVlIiwic2V0U3RhdGUiLCJ2YWx1ZSIsIml0ZW0iLCJpbmRleCIsImtleSIsImNoaWxkcmVuIiwiQXJyYXkiLCJpc0FycmF5IiwiQ2hpbGRyZW4iLCJtYXAiLCJjaGlsZCIsImNsb25lRWxlbWVudCIsInZhbCIsImFsbFZhbCIsIm9uVmFsdWVzQ2hhbmdlIiwibmV3Q2hpbGRyZW4iLCJsYXlvdXQiLCJsYWJlbENvbCIsInNwYW4iLCJ3cmFwcGVyQ29sIiwib3JndGl0bGUiLCJjbG9zYWJsZSIsImhpZGUiLCJiaW5kIiwibWFyZ2luUmlnaHQiLCJmb290ZXIiLCJmb3JtVmFsdWUiLCJuZXdNb2RhbFByb3BzIiwid2lkdGgiLCJtYXhXaWR0aCIsIm5ld0RyYXdlclByb3BzIiwicmVuZGVyUGFuZWwiLCJuZXh0UHJvcHMiLCJwcmV2U3RhdGUiLCJPYmplY3QiLCJpcyIsIm5ld1N0YXRlIiwidmlzaWJsZSIsInVuZGVmaW5lZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBT0EsS0FBUCxJQUFnQkMsYUFBaEIsUUFBcUMsT0FBckM7QUFXQSxTQUFTQyxPQUFULFFBQXdCLHVCQUF4QjtBQUNBLE9BQU9DLElBQVAsTUFBaUIsU0FBakI7QUFDQSxPQUFPQyxNQUFQLE1BQW1CLFdBQW5CO0FBQ0EsT0FBT0MsTUFBUCxNQUFtQixjQUFuQjtBQUNBLFNBQVNDLE9BQVQsUUFBd0IsYUFBeEI7QUFDQSxTQUNFQyxrQkFERixFQUVFQyxtQkFGRixFQUdFQyxhQUhGLEVBSUVDLGNBSkYsRUFLRUMsZ0JBTEYsUUFNTyxtQkFOUDs7SUFpQk1DLE87Ozs7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QUFXLFNBQVgsSUFBQUEsV0FBVyxXQUFYLFlBQUFBLFdBQVcsQ0FBRWlELE9BQWIsTUFBeUIsSUFBekIsSUFDQSxDQUFBakQsV0FBVyxTQUFYLElBQUFBLFdBQVcsV0FBWCxZQUFBQSxXQUFXLENBQUVpRCxPQUFiLE1BQXlCQyxTQUYzQixFQUdFO0FBQ0FGLFlBQUFBLFNBQVEsQ0FBQ3JHLFdBQVQsR0FBdUJxRCxXQUF2QixhQUF1QkEsV0FBdkIsdUJBQXVCQSxXQUFXLENBQUVpRCxPQUFwQztBQUNEOztBQUNELGlCQUFPRCxTQUFQO0FBQ0Q7QUFDRjs7QUFDRCxhQUFPLElBQVA7QUFDRDs7OztFQTVDbUJuSCxhOztBQTRadEIsZUFBZVcsT0FBZiIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIEBEZXNjcmlwdHRpb2466KGo5Y2V57uE5Lu2XHJcbiAqIEB2ZXJzaW9uOlxyXG4gKiBAQXV0aG9yOiByeHpodVxyXG4gKiBARGF0ZTogMjAyMS0wNC0wOSAwOToxODozNFxyXG4gKiBATGFzdEVkaXRvcnM6IHJ4emh1XHJcbiAqIEBMYXN0RWRpdFRpbWU6IDIwMjEtMDQtMjMgMTU6MjM6NTRcclxuICovXHJcbmltcG9ydCBSZWFjdCwgeyBQdXJlQ29tcG9uZW50IH0gZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCB7XHJcbiAgRm9ybSxcclxuICBGb3JtUHJvcHMsXHJcbiAgTW9kYWwsXHJcbiAgRHJhd2VyLFxyXG4gIE1vZGFsUHJvcHMsXHJcbiAgRHJhd2VyUHJvcHMsXHJcbiAgbWVzc2FnZSxcclxufSBmcm9tIFwiYW50ZFwiO1xyXG5pbXBvcnQgeyBGb3JtSW5zdGFuY2UgfSBmcm9tIFwiYW50ZC9saWIvZm9ybVwiO1xyXG5pbXBvcnQgeyByZXF1ZXN0IH0gZnJvbSBcIkBiai1uc2MvbXNuL2xpYi91dGlsc1wiO1xyXG5pbXBvcnQgb21pdCBmcm9tIFwib21pdC5qc1wiO1xyXG5pbXBvcnQgQnV0dG9uIGZyb20gXCIuLi9idXR0b25cIjtcclxuaW1wb3J0IHN0eWxlcyBmcm9tIFwiLi9pbmRleC5sZXNzXCI7XHJcbmltcG9ydCB7IGdldExlc3MgfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcclxuaW1wb3J0IHtcclxuICBQbHVzQ2lyY2xlT3V0bGluZWQsXHJcbiAgQ2xvc2VDaXJjbGVPdXRsaW5lZCxcclxuICBDbG9zZU91dGxpbmVkLFxyXG4gIEV4cGFuZE91dGxpbmVkLFxyXG4gIENvbXByZXNzT3V0bGluZWQsXHJcbn0gZnJvbSBcIkBhbnQtZGVzaWduL2ljb25zXCI7XHJcbmltcG9ydCBQb3Bjb25maXJtIGZyb20gXCIuLi9wb3Bjb25maXJtXCI7XHJcbmludGVyZmFjZSBJRm9ybVByb3BzIGV4dGVuZHMgRm9ybVByb3BzIHtcclxuICBzaG93TW9kZWw/OiBcIm1vZGFsXCIgfCBcImRyYXdlclwiO1xyXG4gIG1vZGFsUHJvcHM/OiBNb2RhbFByb3BzO1xyXG4gIGRyYXdlclByb3BzPzogRHJhd2VyUHJvcHMgJiB7IG9uT2s/OiBhbnkgfTtcclxuICB1cmw/OiBzdHJpbmc7XHJcbiAgZW5jcnlwdEZpZWxkcz86IEFycmF5PFN0cmluZz47XHJcbiAgY2hhbmdlVmFsaWQ/OiBib29sZWFuOyAvL+aVsOaNruS/ruaUueWFs+mXreagoemqjFxyXG59XHJcblxyXG5jbGFzcyBOc2NGb3JtIGV4dGVuZHMgUHVyZUNvbXBvbmVudDxJRm9ybVByb3BzPiB7XHJcbiAgZm9ybVJlZiA9IFJlYWN0LmNyZWF0ZVJlZjxGb3JtSW5zdGFuY2U+KCk7XHJcbiAgc3RhdGUgPSB7XHJcbiAgICBmb3JtVmlzaWJsZTogZmFsc2UsXHJcbiAgICBmb3JtTW9kYWxQcm9wczoge30sXHJcbiAgICBmb3JtRHJhd2VyUHJvcHM6IHt9LFxyXG4gICAgaXNDaGFuZ2U6IGZhbHNlLFxyXG4gICAgZXhwYW5kOiBmYWxzZSxcclxuICB9O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcm9wcykge1xyXG4gICAgc3VwZXIocHJvcHMpO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcyhuZXh0UHJvcHMsIHByZXZTdGF0ZSkge1xyXG4gICAgY29uc3QgeyBtb2RhbFByb3BzLCBkcmF3ZXJQcm9wcywgc2hvd01vZGVsIH0gPSBuZXh0UHJvcHM7XHJcbiAgICBjb25zdCB7IGZvcm1Nb2RhbFByb3BzLCBmb3JtRHJhd2VyUHJvcHMgfSA9IHByZXZTdGF0ZTtcclxuICAgIGlmIChzaG93TW9kZWwgPT0gXCJtb2RhbFwiKSB7XHJcbiAgICAgIC8vIEpTT04uc3RyaW5naWZ5KGZvcm1Nb2RhbFByb3BzKSAhPT0gSlNPTi5zdHJpbmdpZnkobW9kYWxQcm9wcylcclxuICAgICAgaWYgKCFPYmplY3QuaXMoZm9ybU1vZGFsUHJvcHMsIG1vZGFsUHJvcHMpKSB7XHJcbiAgICAgICAgbGV0IG5ld1N0YXRlID0ge1xyXG4gICAgICAgICAgZm9ybURyYXdlclByb3BzOiBtb2RhbFByb3BzLFxyXG4gICAgICAgIH0gYXMgYW55O1xyXG4gICAgICAgIGlmIChtb2RhbFByb3BzPy52aXNpYmxlICE9PSBudWxsICYmIG1vZGFsUHJvcHM/LnZpc2libGUgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgbmV3U3RhdGUuZm9ybVZpc2libGUgPSBtb2RhbFByb3BzPy52aXNpYmxlO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbmV3U3RhdGU7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAoc2hvd01vZGVsID09IFwiZHJhd2VyXCIpIHtcclxuICAgICAgLy8gSlNPTi5zdHJpbmdpZnkoZm9ybURyYXdlclByb3BzKSAhPT0gSlNPTi5zdHJpbmdpZnkoZHJhd2VyUHJvcHMpXHJcbiAgICAgIGlmICghT2JqZWN0LmlzKGZvcm1EcmF3ZXJQcm9wcywgZHJhd2VyUHJvcHMpKSB7XHJcbiAgICAgICAgbGV0IG5ld1N0YXRlID0ge1xyXG4gICAgICAgICAgZm9ybURyYXdlclByb3BzOiBkcmF3ZXJQcm9wcyxcclxuICAgICAgICB9IGFzIGFueTtcclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICBkcmF3ZXJQcm9wcz8udmlzaWJsZSAhPT0gbnVsbCAmJlxyXG4gICAgICAgICAgZHJhd2VyUHJvcHM/LnZpc2libGUgIT09IHVuZGVmaW5lZFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgbmV3U3RhdGUuZm9ybVZpc2libGUgPSBkcmF3ZXJQcm9wcz8udmlzaWJsZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG5ld1N0YXRlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIC8v6I635Y+W5a+55bqU5a2X5q615ZCN55qE6ZSZ6K+v5L+h5oGvXHJcbiAgZ2V0RmllbGRFcnJvcihuYW1lKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmdldEZpZWxkRXJyb3IobmFtZSk7XHJcbiAgfVxyXG5cclxuICAvL+iOt+WPluWvueW6lOWtl+auteWunuS+i1xyXG4gIGdldEZpZWxkSW5zdGFuY2UobmFtZSkge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5nZXRGaWVsZEluc3RhbmNlKG5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLy/ojrflj5bkuIDnu4TlrZfmrrXlkI3lr7nlupTnmoTplJnor6/kv6Hmga/vvIzov5Tlm57kuLrmlbDnu4TlvaLlvI9cclxuICBnZXRGaWVsZHNFcnJvcigpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1SZWYuY3VycmVudD8uZ2V0RmllbGRzRXJyb3IoKTtcclxuICB9XHJcblxyXG4gIC8v6I635Y+W5LiA57uE5a2X5q615ZCN5a+55bqU55qE5YC877yM5Lya5oyJ54Wn5a+55bqU57uT5p6E6L+U5ZueXHJcbiAgZ2V0RmllbGRzVmFsdWUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmdldEZpZWxkc1ZhbHVlKCk7XHJcbiAgfVxyXG5cclxuICAvL+iOt+WPluWvueW6lOWtl+auteWQjeeahOWAvFxyXG4gIGdldEZpZWxkVmFsdWUobmFtZSkge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5nZXRGaWVsZFZhbHVlKG5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLy/mo4Dmn6XkuIDnu4TlrZfmrrXmmK/lkKbooqvnlKjmiLfmk43kvZzov4dcclxuICBpc0ZpZWxkc1RvdWNoZWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmlzRmllbGRzVG91Y2hlZCgpO1xyXG4gIH1cclxuXHJcbiAgLy/mo4Dmn6Xlr7nlupTlrZfmrrXmmK/lkKbooqvnlKjmiLfmk43kvZzov4dcclxuICBpc0ZpZWxkVG91Y2hlZChuYW1lKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmlzRmllbGRUb3VjaGVkKG5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLy/mo4Dmn6XkuIDnu4TlrZfmrrXmmK/lkKbmraPlnKjmoKHpqoxcclxuICBpc0ZpZWxkVmFsaWRhdGluZyhuYW1lKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmlzRmllbGRWYWxpZGF0aW5nKG5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLy/ph43nva7kuIDnu4TlrZfmrrXliLBcclxuICByZXNldEZpZWxkcygpIHtcclxuICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5yZXNldEZpZWxkcygpO1xyXG4gIH1cclxuXHJcbiAgc2Nyb2xsVG9GaWVsZChuYW1lLCBvcHRpb25zKSB7XHJcbiAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8uc2Nyb2xsVG9GaWVsZChuYW1lLCBvcHRpb25zKTtcclxuICB9XHJcblxyXG4gIHNldEZpZWxkcyhmaWxkcykge1xyXG4gICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnNldEZpZWxkcyhmaWxkcyk7XHJcbiAgfVxyXG5cclxuICBzZXRGaWVsZHNWYWx1ZSh2YWx1ZXMpIHtcclxuICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5zZXRGaWVsZHNWYWx1ZSh2YWx1ZXMpO1xyXG4gIH1cclxuXHJcbiAgc3VibWl0KCkge1xyXG4gICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnN1Ym1pdCgpO1xyXG4gIH1cclxuXHJcbiAgb25TdWJtaXQoXHJcbiAgICB1cmw/OiBzdHJpbmcsXHJcbiAgICBvcHRpb25zPzogYW55LFxyXG4gICAgY2FsbGJhY2s/OiAocmVzPzogYW55KSA9PiB2b2lkLFxyXG4gICAgbXNnPzogYm9vbGVhblxyXG4gICkge1xyXG4gICAgY29uc3QgeyB1cmw6IHByb3BzVXJsLCBlbmNyeXB0RmllbGRzOiBlbmNyeXB0UHJvcHBzID0gW10gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpZiAoIXVybCAmJiAhcHJvcHNVcmwpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKFwi5rKh5pyJ5LiK5Lyg55qEdXJsIVwiKTtcclxuICAgIH1cclxuICAgIGNvbnN0IHsgbWV0aG9kID0gXCJwb3N0XCIgfSA9IG9wdGlvbnM7XHJcbiAgICBsZXQgcmVxdWVzdFVybCA9IHVybCA/IHVybCA6IHByb3BzVXJsO1xyXG4gICAgbGV0IHJlcXVlc3REYXRhID0gdGhpcy5mb3JtUmVmLmN1cnJlbnQuZ2V0RmllbGRzVmFsdWUoKTtcclxuICAgIGxldCByZXF1ZXN0RW5jcnlwdCA9IGVuY3J5cHRQcm9wcHM7XHJcbiAgICBsZXQgcmVxdWVzdFBhcmFtID0geyBtZXRob2Q6IG1ldGhvZCwgZGF0YTogcmVxdWVzdERhdGEgfSBhcyB7IGRhdGE6IGFueSB9O1xyXG4gICAgaWYgKG9wdGlvbnMpIHtcclxuICAgICAgY29uc3QgeyBkYXRhLCBlbmNyeXB0RmllbGRzLCAuLi5wYXJhbXMgfSA9IG9wdGlvbnM7XHJcbiAgICAgIHJlcXVlc3RQYXJhbSA9IHsgLi4ucmVxdWVzdFBhcmFtLCAuLi5wYXJhbXMgfTtcclxuICAgICAgaWYgKGRhdGEpIHtcclxuICAgICAgICBkZWxldGUgcmVxdWVzdFBhcmFtLmRhdGE7XHJcbiAgICAgICAgaWYgKG1ldGhvZC50b0xvd2VyQ2FzZSgpID09IFwiZ2V0XCIpIHtcclxuICAgICAgICAgIHJlcXVlc3RQYXJhbSA9IHsgLi4ucmVxdWVzdFBhcmFtLCAuLi5wYXJhbXMsIHBhcmFtczogZGF0YSB9O1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXF1ZXN0UGFyYW0gPSB7IC4uLnJlcXVlc3RQYXJhbSwgLi4ucGFyYW1zLCBkYXRhOiBkYXRhIH07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChlbmNyeXB0RmllbGRzKSB7XHJcbiAgICAgICAgcmVxdWVzdEVuY3J5cHQgPSBlbmNyeXB0RmllbGRzO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmVxdWVzdChyZXF1ZXN0VXJsLCB7XHJcbiAgICAgIC4uLnJlcXVlc3RQYXJhbSxcclxuICAgICAgZW5jcnlwdEZpZWxkczogcmVxdWVzdEVuY3J5cHQsXHJcbiAgICB9KVxyXG4gICAgICAudGhlbihmdW5jdGlvbiAocmVzOiBhbnkpIHtcclxuICAgICAgICBjb25zdCB7IGNvZGUgfSA9IHJlcztcclxuICAgICAgICBpZiAobXNnKSB7XHJcbiAgICAgICAgICBpZiAoY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgIG1lc3NhZ2Uuc3VjY2VzcyhcIuaPkOS6pOaIkOWKn1wiKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIG1lc3NhZ2UuZXJyb3IoXCLmj5DkuqTlpLHotKVcIik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNhbGxiYWNrICYmIGNhbGxiYWNrKHJlcyk7XHJcbiAgICAgIH0pXHJcbiAgICAgIC5jYXRjaChmdW5jdGlvbiAoZXJyb3I6IGFueSkge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiZXJyb3JcIiwgZXJyb3IpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHZhbGlkYXRlRmllbGRzKG5hbWUpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1SZWYuY3VycmVudC52YWxpZGF0ZUZpZWxkcyhuYW1lKTtcclxuICB9XHJcblxyXG4gIGhpZGUoZSkge1xyXG4gICAgY29uc3QgeyBpc0NoYW5nZSB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGNvbnN0IHtcclxuICAgICAgY2hhbmdlVmFsaWQgPSB0cnVlLFxyXG4gICAgICBzaG93TW9kZWwsXHJcbiAgICAgIG1vZGFsUHJvcHMgPSB7fSxcclxuICAgICAgZHJhd2VyUHJvcHMgPSB7fSxcclxuICAgIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgbGV0IF90aGlzID0gdGhpcztcclxuICAgIGNvbnN0IHsgb25DYW5jZWwgfSA9IG1vZGFsUHJvcHM7XHJcbiAgICBjb25zdCB7IG9uQ2xvc2UgfSA9IGRyYXdlclByb3BzO1xyXG4gICAgaWYgKGNoYW5nZVZhbGlkICYmIGlzQ2hhbmdlKSB7XHJcbiAgICAgIE1vZGFsLmNvbmZpcm0oe1xyXG4gICAgICAgIHRpdGxlOiBcIuW9k+WJjeiusOW9leW3suS/ruaUueWwmuacquS/neWtmO+8jOehruWumuimgeaUvuW8g+S/ruaUueWQl++8n1wiLFxyXG4gICAgICAgIGNhbmNlbFRleHQ6IFwi5Y+W5raIXCIsXHJcbiAgICAgICAgb2tUZXh0OiBcIuehruWumlwiLFxyXG4gICAgICAgIGNlbnRlcmVkOiB0cnVlLFxyXG4gICAgICAgIG9uT2soKSB7XHJcbiAgICAgICAgICBpZiAoc2hvd01vZGVsID09IFwiZHJhd2VyXCIgJiYgb25DbG9zZSkge1xyXG4gICAgICAgICAgICBvbkNsb3NlKGUpO1xyXG4gICAgICAgICAgfSBlbHNlIGlmIChzaG93TW9kZWwgPT0gXCJtb2RhbFwiICYmIG9uQ2FuY2VsKSB7XHJcbiAgICAgICAgICAgIG9uQ2FuY2VsKGUpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgX3RoaXMuaGlkZUZvcm0oKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChzaG93TW9kZWwgPT0gXCJkcmF3ZXJcIiAmJiBvbkNsb3NlKSB7XHJcbiAgICAgICAgb25DbG9zZShlKTtcclxuICAgICAgfSBlbHNlIGlmIChzaG93TW9kZWwgPT0gXCJtb2RhbFwiICYmIG9uQ2FuY2VsKSB7XHJcbiAgICAgICAgb25DYW5jZWwoZSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgX3RoaXMuaGlkZUZvcm0oKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaGlkZUZvcm0ocmVzZXRWYWx1ZSA9IHRydWUpIHtcclxuICAgIHRoaXMuc2V0U3RhdGUoXHJcbiAgICAgIHtcclxuICAgICAgICBmb3JtVmlzaWJsZTogZmFsc2UsXHJcbiAgICAgICAgaXNDaGFuZ2U6IGZhbHNlLFxyXG4gICAgICB9LFxyXG4gICAgICAoKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc2V0VmFsdWUpIHtcclxuICAgICAgICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5yZXNldEZpZWxkcygpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHNob3dGb3JtKHZhbHVlPzogYW55LCByZXNldFZhbHVlID0gdHJ1ZSkge1xyXG4gICAgdGhpcy5zZXRTdGF0ZShcclxuICAgICAge1xyXG4gICAgICAgIGZvcm1WaXNpYmxlOiB0cnVlLFxyXG4gICAgICAgIGlzQ2hhbmdlOiBmYWxzZSxcclxuICAgICAgfSxcclxuICAgICAgKCkgPT4ge1xyXG4gICAgICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICAgICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnNldEZpZWxkc1ZhbHVlKHZhbHVlKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgaWYgKHJlc2V0VmFsdWUpIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5yZXNldEZpZWxkcygpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGNsb25lRWxlbWVudChpdGVtLCBpbmRleCA9IDApIHtcclxuICAgIGxldCBfdGhpcyA9IHRoaXM7XHJcbiAgICBpZiAodHlwZW9mIGl0ZW0gPT0gXCJzdHJpbmdcIikgcmV0dXJuIGl0ZW07XHJcbiAgICBsZXQgcHJvcHMgPSB7fSBhcyB7IGtleTogbnVtYmVyOyBjaGlsZHJlbjogYW55IH07XHJcbiAgICBwcm9wcy5rZXkgPSBpbmRleDtcclxuICAgIHRyeSB7XHJcbiAgICAgIGlmIChpdGVtLnByb3BzICYmIGl0ZW0ucHJvcHMuY2hpbGRyZW4pIHtcclxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShpdGVtLnByb3BzLmNoaWxkcmVuKSkge1xyXG4gICAgICAgICAgcHJvcHMuY2hpbGRyZW4gPSBSZWFjdC5DaGlsZHJlbi5tYXAoXHJcbiAgICAgICAgICAgIGl0ZW0ucHJvcHMuY2hpbGRyZW4sXHJcbiAgICAgICAgICAgIGZ1bmN0aW9uIChjaGlsZCwgaW5kZXgpIHtcclxuICAgICAgICAgICAgICByZXR1cm4gX3RoaXMuY2xvbmVFbGVtZW50KGNoaWxkLCBpbmRleCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHByb3BzLmNoaWxkcmVuID0gdGhpcy5jbG9uZUVsZW1lbnQoaXRlbS5wcm9wcy5jaGlsZHJlbiwgMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBSZWFjdC5jbG9uZUVsZW1lbnQoaXRlbSwgcHJvcHMpO1xyXG4gICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICB9XHJcbiAgb25WYWx1ZXNDaGFuZ2UodmFsLCBhbGxWYWwpIHtcclxuICAgIGNvbnN0IHsgb25WYWx1ZXNDaGFuZ2UgfSA9IHRoaXMucHJvcHM7XHJcbiAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgaXNDaGFuZ2U6IHRydWUsXHJcbiAgICB9KTtcclxuICAgIG9uVmFsdWVzQ2hhbmdlICYmIG9uVmFsdWVzQ2hhbmdlKHZhbCwgYWxsVmFsKTtcclxuICB9XHJcbiAgcmVuZGVyUGFuZWwobmV3Q2hpbGRyZW4sIHByb3BzKSB7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHNob3dNb2RlbCxcclxuICAgICAgZHJhd2VyUHJvcHMgPSB7fSxcclxuICAgICAgbW9kYWxQcm9wcyA9IHt9LFxyXG4gICAgICBjaGFuZ2VWYWxpZCA9IHRydWUsXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgZm9ybVZpc2libGUgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBjb25zdCBsYXlvdXQgPSB7XHJcbiAgICAgIGxhYmVsQ29sOiB7IHNwYW46IDQgfSxcclxuICAgICAgd3JhcHBlckNvbDogeyBzcGFuOiAyMCB9LFxyXG4gICAgfTtcclxuICAgIGxldCBvcmd0aXRsZSA9IHNob3dNb2RlbCA9PSBcIm1vZGFsXCIgPyBtb2RhbFByb3BzLnRpdGxlIDogZHJhd2VyUHJvcHMudGl0bGU7XHJcbiAgICBjb25zdCBjbG9zYWJsZSA9XHJcbiAgICAgIHNob3dNb2RlbCA9PSBcIm1vZGFsXCIgPyBtb2RhbFByb3BzLmNsb3NhYmxlIDogZHJhd2VyUHJvcHMuY2xvc2FibGU7XHJcbiAgICBjb25zdCB0aXRsZSA9IChcclxuICAgICAgPGRpdiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcInRpdGxlXCIpfT5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiaWNvbnNcIil9PlxyXG4gICAgICAgICAgeyF0aGlzLnN0YXRlLmV4cGFuZCAmJiAoXHJcbiAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldFN0YXRlKHsgZXhwYW5kOiB0cnVlIH0pO1xyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJpY29uXCIpfVxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPEV4cGFuZE91dGxpbmVkIC8+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgKX1cclxuICAgICAgICAgIHt0aGlzLnN0YXRlLmV4cGFuZCAmJiAoXHJcbiAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldFN0YXRlKHsgZXhwYW5kOiBmYWxzZSB9KTtcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiaWNvblwiKX1cclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDxDb21wcmVzc091dGxpbmVkIC8+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgKX1cclxuICAgICAgICAgIHtjbG9zYWJsZSAhPT0gZmFsc2UgJiYgKFxyXG4gICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgb25DbGljaz17dGhpcy5oaWRlLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJpY29uXCIpfVxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7IG1hcmdpblJpZ2h0OiAwIH19XHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICA8Q2xvc2VPdXRsaW5lZCAvPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICl9XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcInRpdGxlLWNvbnRlbnRcIil9Pntvcmd0aXRsZX08L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICApO1xyXG4gICAgY29uc3QgZm9vdGVyID0gKFxyXG4gICAgICA8ZGl2IGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiZm9vdGVyXCIpfT5cclxuICAgICAgICA8QnV0dG9uXHJcbiAgICAgICAgICB0eXBlPVwicHJpbWFyeVwiXHJcbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGZvcm1WYWx1ZSA9IHRoaXMuZm9ybVJlZi5jdXJyZW50Py5nZXRGaWVsZHNWYWx1ZSgpO1xyXG4gICAgICAgICAgICBpZiAoc2hvd01vZGVsID09IFwibW9kYWxcIikge1xyXG4gICAgICAgICAgICAgIG1vZGFsUHJvcHMub25PayAmJiBtb2RhbFByb3BzLm9uT2soZm9ybVZhbHVlKTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBkcmF3ZXJQcm9wcy5vbk9rICYmIGRyYXdlclByb3BzLm9uT2soZm9ybVZhbHVlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGljb249ezxQbHVzQ2lyY2xlT3V0bGluZWQgLz59XHJcbiAgICAgICAgPlxyXG4gICAgICAgICAg5L+d5a2YXHJcbiAgICAgICAgPC9CdXR0b24+XHJcblxyXG4gICAgICAgIDxCdXR0b25cclxuICAgICAgICAgIG9uQ2xpY2s9e3RoaXMuaGlkZS5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJidXR0b24tbWFyZ2luXCIpfVxyXG4gICAgICAgICAgaWNvbj17PENsb3NlQ2lyY2xlT3V0bGluZWQgLz59XHJcbiAgICAgICAgPlxyXG4gICAgICAgICAg5Y+W5raIXHJcbiAgICAgICAgPC9CdXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgKTtcclxuICAgIGlmIChzaG93TW9kZWwgJiYgc2hvd01vZGVsID09IFwibW9kYWxcIikge1xyXG4gICAgICBsZXQgbmV3TW9kYWxQcm9wcyA9IG9taXQobW9kYWxQcm9wcywgW1widmlzaWJsZVwiXSk7XHJcbiAgICAgIG5ld01vZGFsUHJvcHMgPSB7IGNlbnRlcmVkOiB0cnVlLCBmb290ZXIsIC4uLm5ld01vZGFsUHJvcHMgfTtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICA8TW9kYWxcclxuICAgICAgICAgIHZpc2libGU9e2Zvcm1WaXNpYmxlfVxyXG4gICAgICAgICAgZm9vdGVyPXtmb290ZXJ9XHJcbiAgICAgICAgICB7Li4ubmV3TW9kYWxQcm9wc31cclxuICAgICAgICAgIG9uQ2FuY2VsPXt0aGlzLmhpZGUuYmluZCh0aGlzKX1cclxuICAgICAgICAgIG1hc2tDbG9zYWJsZT17IXRoaXMuc3RhdGUuaXNDaGFuZ2V9XHJcbiAgICAgICAgICB0aXRsZT17dGl0bGV9XHJcbiAgICAgICAgICBjbG9zYWJsZT17ZmFsc2V9XHJcbiAgICAgICAgICBjbGFzc05hbWU9e3RoaXMuc3RhdGUuZXhwYW5kID8gZ2V0TGVzcyhzdHlsZXMsIFwiYWxsc3JlZW5cIikgOiBcIlwifVxyXG4gICAgICAgICAgd2lkdGg9e3RoaXMuc3RhdGUuZXhwYW5kID8gXCIxMDB2d1wiIDogbmV3TW9kYWxQcm9wcy53aWR0aH1cclxuICAgICAgICAgIHN0eWxlPXt7IG1heFdpZHRoOiBcIjEwMHZ3XCIgfX1cclxuICAgICAgICA+XHJcbiAgICAgICAgICA8Rm9ybVxyXG4gICAgICAgICAgICByZWY9e3RoaXMuZm9ybVJlZn1cclxuICAgICAgICAgICAgey4uLmxheW91dH1cclxuICAgICAgICAgICAgey4uLnByb3BzfVxyXG4gICAgICAgICAgICBvblZhbHVlc0NoYW5nZT17dGhpcy5vblZhbHVlc0NoYW5nZS5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgICBwcmVzZXJ2ZT17ZmFsc2V9XHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgIDwvTW9kYWw+XHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2UgaWYgKHNob3dNb2RlbCAmJiBzaG93TW9kZWwgPT0gXCJkcmF3ZXJcIikge1xyXG4gICAgICBsZXQgbmV3RHJhd2VyUHJvcHMgPSBvbWl0KGRyYXdlclByb3BzLCBbXCJ2aXNpYmxlXCIsIFwib25Pa1wiXSk7XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgPERyYXdlclxyXG4gICAgICAgICAgdmlzaWJsZT17Zm9ybVZpc2libGV9XHJcbiAgICAgICAgICBmb290ZXI9e2Zvb3Rlcn1cclxuICAgICAgICAgIHsuLi5uZXdEcmF3ZXJQcm9wc31cclxuICAgICAgICAgIG9uQ2xvc2U9e3RoaXMuaGlkZS5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgbWFza0Nsb3NhYmxlPXshdGhpcy5zdGF0ZS5pc0NoYW5nZX1cclxuICAgICAgICAgIHRpdGxlPXt0aXRsZX1cclxuICAgICAgICAgIGNsb3NhYmxlPXtmYWxzZX1cclxuICAgICAgICAgIHdpZHRoPXt0aGlzLnN0YXRlLmV4cGFuZCA/IFwiMTAwdndcIiA6IG5ld0RyYXdlclByb3BzLndpZHRofVxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxGb3JtXHJcbiAgICAgICAgICAgIHJlZj17dGhpcy5mb3JtUmVmfVxyXG4gICAgICAgICAgICB7Li4ubGF5b3V0fVxyXG4gICAgICAgICAgICB7Li4ucHJvcHN9XHJcbiAgICAgICAgICAgIG9uVmFsdWVzQ2hhbmdlPXt0aGlzLm9uVmFsdWVzQ2hhbmdlLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgIDwvRHJhd2VyPlxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICA8Rm9ybVxyXG4gICAgICAgICAgcmVmPXt0aGlzLmZvcm1SZWZ9XHJcbiAgICAgICAgICB7Li4ubGF5b3V0fVxyXG4gICAgICAgICAgey4uLnByb3BzfVxyXG4gICAgICAgICAgb25WYWx1ZXNDaGFuZ2U9e3RoaXMub25WYWx1ZXNDaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICAvPlxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuICByZW5kZXIoKSB7XHJcbiAgICBjb25zdCBfdGhpcyA9IHRoaXMsXHJcbiAgICAgIHsgY2hpbGRyZW4sIHNob3dNb2RlbCB9ID0gdGhpcy5wcm9wcztcclxuICAgIC8vIGNvbnN0IG5ld0NoaWxkcmVuID0gUmVhY3QuQ2hpbGRyZW4ubWFwKGNoaWxkcmVuLCBmdW5jdGlvbiAoY2hpbGQsIGluZGV4KSB7XHJcbiAgICAvLyAgIHJldHVybiBfdGhpcy5jbG9uZUVsZW1lbnQoY2hpbGQsIGluZGV4KTtcclxuICAgIC8vIH0pO1xyXG4gICAgY29uc3QgcHJvcHMgPSBvbWl0KHRoaXMucHJvcHMsIFtcclxuICAgICAgXCJmb3JtXCIsXHJcbiAgICAgIFwic2hvd01vZGVsXCIsXHJcbiAgICAgIFwibW9kYWxQcm9wc1wiLFxyXG4gICAgICBcImRyYXdlclByb3BzXCIsXHJcbiAgICAgIFwidXJsXCIsXHJcbiAgICAgIFwiZW5jcnlwdEZpZWxkc1wiLFxyXG4gICAgXSk7XHJcblxyXG4gICAgcmV0dXJuIDw+e3RoaXMucmVuZGVyUGFuZWwocHJvcHMuY2hpbGRyZW4sIHByb3BzKX08Lz47XHJcbiAgfVxyXG59XHJcbmV4cG9ydCBkZWZhdWx0IE5zY0Zvcm07XHJcbiJdfQ==
|
|
556
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Jhc2UvZm9ybS9Gb3JtLnRzeCJdLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJyZXF1ZXN0Iiwib21pdCIsIkJ1dHRvbiIsInN0eWxlcyIsImdldExlc3MiLCJQbHVzQ2lyY2xlT3V0bGluZWQiLCJDbG9zZUNpcmNsZU91dGxpbmVkIiwiQ2xvc2VPdXRsaW5lZCIsIkV4cGFuZE91dGxpbmVkIiwiQ29tcHJlc3NPdXRsaW5lZCIsIk5zY0Zvcm0iLCJwcm9wcyIsImNyZWF0ZVJlZiIsImZvcm1WaXNpYmxlIiwiZm9ybU1vZGFsUHJvcHMiLCJmb3JtRHJhd2VyUHJvcHMiLCJpc0NoYW5nZSIsImV4cGFuZCIsIm5hbWUiLCJmb3JtUmVmIiwiY3VycmVudCIsImdldEZpZWxkRXJyb3IiLCJnZXRGaWVsZEluc3RhbmNlIiwiZ2V0RmllbGRzRXJyb3IiLCJnZXRGaWVsZHNWYWx1ZSIsImdldEZpZWxkVmFsdWUiLCJpc0ZpZWxkc1RvdWNoZWQiLCJpc0ZpZWxkVG91Y2hlZCIsImlzRmllbGRWYWxpZGF0aW5nIiwicmVzZXRGaWVsZHMiLCJvcHRpb25zIiwic2Nyb2xsVG9GaWVsZCIsImZpbGRzIiwic2V0RmllbGRzIiwidmFsdWVzIiwic2V0RmllbGRzVmFsdWUiLCJzdWJtaXQiLCJ1cmwiLCJjYWxsYmFjayIsIm1zZyIsInByb3BzVXJsIiwiZW5jcnlwdEZpZWxkcyIsImVuY3J5cHRQcm9wcHMiLCJFcnJvciIsIm1ldGhvZCIsInJlcXVlc3RVcmwiLCJyZXF1ZXN0RGF0YSIsInJlcXVlc3RFbmNyeXB0IiwicmVxdWVzdFBhcmFtIiwiZGF0YSIsInBhcmFtcyIsInRvTG93ZXJDYXNlIiwidGhlbiIsInJlcyIsImNvZGUiLCJzdWNjZXNzIiwiZXJyb3IiLCJjYXRjaCIsImNvbnNvbGUiLCJsb2ciLCJ2YWxpZGF0ZUZpZWxkcyIsImUiLCJzdGF0ZSIsImNoYW5nZVZhbGlkIiwic2hvd01vZGVsIiwibW9kYWxQcm9wcyIsImRyYXdlclByb3BzIiwiX3RoaXMiLCJvbkNhbmNlbCIsIm9uQ2xvc2UiLCJjb25maXJtIiwidGl0bGUiLCJjYW5jZWxUZXh0Iiwib2tUZXh0IiwiY2VudGVyZWQiLCJvbk9rIiwiaGlkZUZvcm0iLCJyZXNldFZhbHVlIiwic2V0U3RhdGUiLCJ2YWx1ZSIsIml0ZW0iLCJpbmRleCIsImtleSIsImNoaWxkcmVuIiwiQXJyYXkiLCJpc0FycmF5IiwiQ2hpbGRyZW4iLCJtYXAiLCJjaGlsZCIsImNsb25lRWxlbWVudCIsInZhbCIsImFsbFZhbCIsIm9uVmFsdWVzQ2hhbmdlIiwibmV3Q2hpbGRyZW4iLCJsYXlvdXQiLCJsYWJlbENvbCIsInNwYW4iLCJ3cmFwcGVyQ29sIiwib3JndGl0bGUiLCJjbG9zYWJsZSIsImhpZGUiLCJiaW5kIiwibWFyZ2luUmlnaHQiLCJmb290ZXIiLCJmb3JtVmFsdWUiLCJuZXdNb2RhbFByb3BzIiwid2lkdGgiLCJtYXhXaWR0aCIsIm5ld0RyYXdlclByb3BzIiwicmVuZGVyUGFuZWwiLCJuZXh0UHJvcHMiLCJwcmV2U3RhdGUiLCJPYmplY3QiLCJpcyIsIm5ld1N0YXRlIiwidmlzaWJsZSIsInVuZGVmaW5lZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBT0EsS0FBUCxJQUFnQkMsYUFBaEIsUUFBcUMsT0FBckM7QUFXQSxTQUFTQyxPQUFULFFBQXdCLHVCQUF4QjtBQUNBLE9BQU9DLElBQVAsTUFBaUIsU0FBakI7QUFDQSxPQUFPQyxNQUFQLE1BQW1CLFdBQW5CO0FBQ0EsT0FBT0MsTUFBUCxNQUFtQixjQUFuQjtBQUNBLFNBQVNDLE9BQVQsUUFBd0IsYUFBeEI7QUFDQSxTQUNFQyxrQkFERixFQUVFQyxtQkFGRixFQUdFQyxhQUhGLEVBSUVDLGNBSkYsRUFLRUMsZ0JBTEYsUUFNTyxtQkFOUDs7SUFpQk1DLE87Ozs7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QUFXLFNBQVgsSUFBQUEsV0FBVyxXQUFYLFlBQUFBLFdBQVcsQ0FBRWlELE9BQWIsTUFBeUIsSUFBekIsSUFDQSxDQUFBakQsV0FBVyxTQUFYLElBQUFBLFdBQVcsV0FBWCxZQUFBQSxXQUFXLENBQUVpRCxPQUFiLE1BQXlCQyxTQUYzQixFQUdFO0FBQ0FGLFlBQUFBLFNBQVEsQ0FBQ3JHLFdBQVQsR0FBdUJxRCxXQUF2QixhQUF1QkEsV0FBdkIsdUJBQXVCQSxXQUFXLENBQUVpRCxPQUFwQztBQUNEOztBQUNELGlCQUFPRCxTQUFQO0FBQ0Q7QUFDRjs7QUFDRCxhQUFPLElBQVA7QUFDRDs7OztFQTVDbUJuSCxhOztBQTRadEIsZUFBZVcsT0FBZiIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIEBEZXNjcmlwdHRpb2466KGo5Y2V57uE5Lu2XHJcbiAqIEB2ZXJzaW9uOlxyXG4gKiBAQXV0aG9yOiByeHpodVxyXG4gKiBARGF0ZTogMjAyMS0wNC0wOSAwOToxODozNFxyXG4gKiBATGFzdEVkaXRvcnM6IHJ4emh1XHJcbiAqIEBMYXN0RWRpdFRpbWU6IDIwMjEtMDQtMjMgMTU6MjM6NTRcclxuICovXHJcbmltcG9ydCBSZWFjdCwgeyBQdXJlQ29tcG9uZW50IH0gZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCB7XHJcbiAgRm9ybSxcclxuICBGb3JtUHJvcHMsXHJcbiAgTW9kYWwsXHJcbiAgRHJhd2VyLFxyXG4gIE1vZGFsUHJvcHMsXHJcbiAgRHJhd2VyUHJvcHMsXHJcbiAgbWVzc2FnZSxcclxufSBmcm9tIFwiYW50ZFwiO1xyXG5pbXBvcnQgeyBGb3JtSW5zdGFuY2UgfSBmcm9tIFwiYW50ZC9saWIvZm9ybVwiO1xyXG5pbXBvcnQgeyByZXF1ZXN0IH0gZnJvbSBcIkBiai1uc2MvbXNuL2xpYi91dGlsc1wiO1xyXG5pbXBvcnQgb21pdCBmcm9tIFwib21pdC5qc1wiO1xyXG5pbXBvcnQgQnV0dG9uIGZyb20gXCIuLi9idXR0b25cIjtcclxuaW1wb3J0IHN0eWxlcyBmcm9tIFwiLi9pbmRleC5sZXNzXCI7XHJcbmltcG9ydCB7IGdldExlc3MgfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcclxuaW1wb3J0IHtcclxuICBQbHVzQ2lyY2xlT3V0bGluZWQsXHJcbiAgQ2xvc2VDaXJjbGVPdXRsaW5lZCxcclxuICBDbG9zZU91dGxpbmVkLFxyXG4gIEV4cGFuZE91dGxpbmVkLFxyXG4gIENvbXByZXNzT3V0bGluZWQsXHJcbn0gZnJvbSBcIkBhbnQtZGVzaWduL2ljb25zXCI7XHJcbmltcG9ydCBQb3Bjb25maXJtIGZyb20gXCIuLi9wb3Bjb25maXJtXCI7XHJcbmludGVyZmFjZSBJRm9ybVByb3BzIGV4dGVuZHMgRm9ybVByb3BzIHtcclxuICBzaG93TW9kZWw/OiBcIm1vZGFsXCIgfCBcImRyYXdlclwiO1xyXG4gIG1vZGFsUHJvcHM/OiBNb2RhbFByb3BzO1xyXG4gIGRyYXdlclByb3BzPzogRHJhd2VyUHJvcHMgJiB7IG9uT2s/OiBhbnkgfTtcclxuICB1cmw/OiBzdHJpbmc7XHJcbiAgZW5jcnlwdEZpZWxkcz86IEFycmF5PFN0cmluZz47XHJcbiAgY2hhbmdlVmFsaWQ/OiBib29sZWFuOyAvL+aVsOaNruS/ruaUueWFs+mXreagoemqjFxyXG59XHJcblxyXG5jbGFzcyBOc2NGb3JtIGV4dGVuZHMgUHVyZUNvbXBvbmVudDxJRm9ybVByb3BzPiB7XHJcbiAgZm9ybVJlZiA9IFJlYWN0LmNyZWF0ZVJlZjxGb3JtSW5zdGFuY2U+KCk7XHJcbiAgc3RhdGUgPSB7XHJcbiAgICBmb3JtVmlzaWJsZTogZmFsc2UsXHJcbiAgICBmb3JtTW9kYWxQcm9wczoge30sXHJcbiAgICBmb3JtRHJhd2VyUHJvcHM6IHt9LFxyXG4gICAgaXNDaGFuZ2U6IGZhbHNlLFxyXG4gICAgZXhwYW5kOiBmYWxzZSxcclxuICB9O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcm9wcykge1xyXG4gICAgc3VwZXIocHJvcHMpO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcyhuZXh0UHJvcHMsIHByZXZTdGF0ZSkge1xyXG4gICAgY29uc3QgeyBtb2RhbFByb3BzLCBkcmF3ZXJQcm9wcywgc2hvd01vZGVsIH0gPSBuZXh0UHJvcHM7XHJcbiAgICBjb25zdCB7IGZvcm1Nb2RhbFByb3BzLCBmb3JtRHJhd2VyUHJvcHMgfSA9IHByZXZTdGF0ZTtcclxuICAgIGlmIChzaG93TW9kZWwgPT0gXCJtb2RhbFwiKSB7XHJcbiAgICAgIC8vIEpTT04uc3RyaW5naWZ5KGZvcm1Nb2RhbFByb3BzKSAhPT0gSlNPTi5zdHJpbmdpZnkobW9kYWxQcm9wcylcclxuICAgICAgaWYgKCFPYmplY3QuaXMoZm9ybU1vZGFsUHJvcHMsIG1vZGFsUHJvcHMpKSB7XHJcbiAgICAgICAgbGV0IG5ld1N0YXRlID0ge1xyXG4gICAgICAgICAgZm9ybURyYXdlclByb3BzOiBtb2RhbFByb3BzLFxyXG4gICAgICAgIH0gYXMgYW55O1xyXG4gICAgICAgIGlmIChtb2RhbFByb3BzPy52aXNpYmxlICE9PSBudWxsICYmIG1vZGFsUHJvcHM/LnZpc2libGUgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgbmV3U3RhdGUuZm9ybVZpc2libGUgPSBtb2RhbFByb3BzPy52aXNpYmxlO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbmV3U3RhdGU7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAoc2hvd01vZGVsID09IFwiZHJhd2VyXCIpIHtcclxuICAgICAgLy8gSlNPTi5zdHJpbmdpZnkoZm9ybURyYXdlclByb3BzKSAhPT0gSlNPTi5zdHJpbmdpZnkoZHJhd2VyUHJvcHMpXHJcbiAgICAgIGlmICghT2JqZWN0LmlzKGZvcm1EcmF3ZXJQcm9wcywgZHJhd2VyUHJvcHMpKSB7XHJcbiAgICAgICAgbGV0IG5ld1N0YXRlID0ge1xyXG4gICAgICAgICAgZm9ybURyYXdlclByb3BzOiBkcmF3ZXJQcm9wcyxcclxuICAgICAgICB9IGFzIGFueTtcclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICBkcmF3ZXJQcm9wcz8udmlzaWJsZSAhPT0gbnVsbCAmJlxyXG4gICAgICAgICAgZHJhd2VyUHJvcHM/LnZpc2libGUgIT09IHVuZGVmaW5lZFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgbmV3U3RhdGUuZm9ybVZpc2libGUgPSBkcmF3ZXJQcm9wcz8udmlzaWJsZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG5ld1N0YXRlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIC8v6I635Y+W5a+55bqU5a2X5q615ZCN55qE6ZSZ6K+v5L+h5oGvXHJcbiAgZ2V0RmllbGRFcnJvcihuYW1lKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmdldEZpZWxkRXJyb3IobmFtZSk7XHJcbiAgfVxyXG5cclxuICAvL+iOt+WPluWvueW6lOWtl+auteWunuS+i1xyXG4gIGdldEZpZWxkSW5zdGFuY2UobmFtZSkge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5nZXRGaWVsZEluc3RhbmNlKG5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLy/ojrflj5bkuIDnu4TlrZfmrrXlkI3lr7nlupTnmoTplJnor6/kv6Hmga/vvIzov5Tlm57kuLrmlbDnu4TlvaLlvI9cclxuICBnZXRGaWVsZHNFcnJvcigpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1SZWYuY3VycmVudD8uZ2V0RmllbGRzRXJyb3IoKTtcclxuICB9XHJcblxyXG4gIC8v6I635Y+W5LiA57uE5a2X5q615ZCN5a+55bqU55qE5YC877yM5Lya5oyJ54Wn5a+55bqU57uT5p6E6L+U5ZueXHJcbiAgZ2V0RmllbGRzVmFsdWUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmdldEZpZWxkc1ZhbHVlKCk7XHJcbiAgfVxyXG5cclxuICAvL+iOt+WPluWvueW6lOWtl+auteWQjeeahOWAvFxyXG4gIGdldEZpZWxkVmFsdWUobmFtZSkge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5nZXRGaWVsZFZhbHVlKG5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLy/mo4Dmn6XkuIDnu4TlrZfmrrXmmK/lkKbooqvnlKjmiLfmk43kvZzov4dcclxuICBpc0ZpZWxkc1RvdWNoZWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmlzRmllbGRzVG91Y2hlZCgpO1xyXG4gIH1cclxuXHJcbiAgLy/mo4Dmn6Xlr7nlupTlrZfmrrXmmK/lkKbooqvnlKjmiLfmk43kvZzov4dcclxuICBpc0ZpZWxkVG91Y2hlZChuYW1lKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmlzRmllbGRUb3VjaGVkKG5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLy/mo4Dmn6XkuIDnu4TlrZfmrrXmmK/lkKbmraPlnKjmoKHpqoxcclxuICBpc0ZpZWxkVmFsaWRhdGluZyhuYW1lKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmlzRmllbGRWYWxpZGF0aW5nKG5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLy/ph43nva7kuIDnu4TlrZfmrrXliLBcclxuICByZXNldEZpZWxkcygpIHtcclxuICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5yZXNldEZpZWxkcygpO1xyXG4gIH1cclxuXHJcbiAgc2Nyb2xsVG9GaWVsZChuYW1lLCBvcHRpb25zKSB7XHJcbiAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8uc2Nyb2xsVG9GaWVsZChuYW1lLCBvcHRpb25zKTtcclxuICB9XHJcblxyXG4gIHNldEZpZWxkcyhmaWxkcykge1xyXG4gICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnNldEZpZWxkcyhmaWxkcyk7XHJcbiAgfVxyXG5cclxuICBzZXRGaWVsZHNWYWx1ZSh2YWx1ZXMpIHtcclxuICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5zZXRGaWVsZHNWYWx1ZSh2YWx1ZXMpO1xyXG4gIH1cclxuXHJcbiAgc3VibWl0KCkge1xyXG4gICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnN1Ym1pdCgpO1xyXG4gIH1cclxuXHJcbiAgb25TdWJtaXQoXHJcbiAgICB1cmw/OiBzdHJpbmcsXHJcbiAgICBvcHRpb25zPzogYW55LFxyXG4gICAgY2FsbGJhY2s/OiAocmVzPzogYW55KSA9PiB2b2lkLFxyXG4gICAgbXNnPzogYm9vbGVhblxyXG4gICkge1xyXG4gICAgY29uc3QgeyB1cmw6IHByb3BzVXJsLCBlbmNyeXB0RmllbGRzOiBlbmNyeXB0UHJvcHBzID0gW10gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpZiAoIXVybCAmJiAhcHJvcHNVcmwpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKFwi5rKh5pyJ5LiK5Lyg55qEdXJsIVwiKTtcclxuICAgIH1cclxuICAgIGNvbnN0IHsgbWV0aG9kID0gXCJwb3N0XCIgfSA9IG9wdGlvbnM7XHJcbiAgICBsZXQgcmVxdWVzdFVybCA9IHVybCA/IHVybCA6IHByb3BzVXJsO1xyXG4gICAgbGV0IHJlcXVlc3REYXRhID0gdGhpcy5mb3JtUmVmLmN1cnJlbnQuZ2V0RmllbGRzVmFsdWUoKTtcclxuICAgIGxldCByZXF1ZXN0RW5jcnlwdCA9IGVuY3J5cHRQcm9wcHM7XHJcbiAgICBsZXQgcmVxdWVzdFBhcmFtID0geyBtZXRob2Q6IG1ldGhvZCwgZGF0YTogcmVxdWVzdERhdGEgfSBhcyB7IGRhdGE6IGFueSB9O1xyXG4gICAgaWYgKG9wdGlvbnMpIHtcclxuICAgICAgY29uc3QgeyBkYXRhLCBlbmNyeXB0RmllbGRzLCAuLi5wYXJhbXMgfSA9IG9wdGlvbnM7XHJcbiAgICAgIHJlcXVlc3RQYXJhbSA9IHsgLi4ucmVxdWVzdFBhcmFtLCAuLi5wYXJhbXMgfTtcclxuICAgICAgaWYgKGRhdGEpIHtcclxuICAgICAgICBkZWxldGUgcmVxdWVzdFBhcmFtLmRhdGE7XHJcbiAgICAgICAgaWYgKG1ldGhvZC50b0xvd2VyQ2FzZSgpID09IFwiZ2V0XCIpIHtcclxuICAgICAgICAgIHJlcXVlc3RQYXJhbSA9IHsgLi4ucmVxdWVzdFBhcmFtLCAuLi5wYXJhbXMsIHBhcmFtczogZGF0YSB9O1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXF1ZXN0UGFyYW0gPSB7IC4uLnJlcXVlc3RQYXJhbSwgLi4ucGFyYW1zLCBkYXRhOiBkYXRhIH07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChlbmNyeXB0RmllbGRzKSB7XHJcbiAgICAgICAgcmVxdWVzdEVuY3J5cHQgPSBlbmNyeXB0RmllbGRzO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmVxdWVzdChyZXF1ZXN0VXJsLCB7XHJcbiAgICAgIC4uLnJlcXVlc3RQYXJhbSxcclxuICAgICAgZW5jcnlwdEZpZWxkczogcmVxdWVzdEVuY3J5cHQsXHJcbiAgICB9KVxyXG4gICAgICAudGhlbihmdW5jdGlvbiAocmVzOiBhbnkpIHtcclxuICAgICAgICBjb25zdCB7IGNvZGUgfSA9IHJlcztcclxuICAgICAgICBpZiAobXNnKSB7XHJcbiAgICAgICAgICBpZiAoY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgIG1lc3NhZ2Uuc3VjY2VzcyhcIuaPkOS6pOaIkOWKn1wiKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIG1lc3NhZ2UuZXJyb3IoXCLmj5DkuqTlpLHotKVcIik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNhbGxiYWNrICYmIGNhbGxiYWNrKHJlcyk7XHJcbiAgICAgIH0pXHJcbiAgICAgIC5jYXRjaChmdW5jdGlvbiAoZXJyb3I6IGFueSkge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiZXJyb3JcIiwgZXJyb3IpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHZhbGlkYXRlRmllbGRzKG5hbWUpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1SZWYuY3VycmVudC52YWxpZGF0ZUZpZWxkcyhuYW1lKTtcclxuICB9XHJcblxyXG4gIGhpZGUoZSkge1xyXG4gICAgY29uc3QgeyBpc0NoYW5nZSB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGNvbnN0IHtcclxuICAgICAgY2hhbmdlVmFsaWQgPSB0cnVlLFxyXG4gICAgICBzaG93TW9kZWwsXHJcbiAgICAgIG1vZGFsUHJvcHMgPSB7fSxcclxuICAgICAgZHJhd2VyUHJvcHMgPSB7fSxcclxuICAgIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgbGV0IF90aGlzID0gdGhpcztcclxuICAgIGNvbnN0IHsgb25DYW5jZWwgfSA9IG1vZGFsUHJvcHM7XHJcbiAgICBjb25zdCB7IG9uQ2xvc2UgfSA9IGRyYXdlclByb3BzO1xyXG4gICAgaWYgKGNoYW5nZVZhbGlkICYmIGlzQ2hhbmdlKSB7XHJcbiAgICAgIE1vZGFsLmNvbmZpcm0oe1xyXG4gICAgICAgIHRpdGxlOiBcIuW9k+WJjeiusOW9leW3suS/ruaUueWwmuacquS/neWtmO+8jOehruWumuimgeaUvuW8g+S/ruaUueWQl++8n1wiLFxyXG4gICAgICAgIGNhbmNlbFRleHQ6IFwi5Y+W5raIXCIsXHJcbiAgICAgICAgb2tUZXh0OiBcIuehruWumlwiLFxyXG4gICAgICAgIGNlbnRlcmVkOiB0cnVlLFxyXG4gICAgICAgIG9uT2soKSB7XHJcbiAgICAgICAgICBpZiAoc2hvd01vZGVsID09IFwiZHJhd2VyXCIgJiYgb25DbG9zZSkge1xyXG4gICAgICAgICAgICBvbkNsb3NlKGUpO1xyXG4gICAgICAgICAgfSBlbHNlIGlmIChzaG93TW9kZWwgPT0gXCJtb2RhbFwiICYmIG9uQ2FuY2VsKSB7XHJcbiAgICAgICAgICAgIG9uQ2FuY2VsKGUpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgX3RoaXMuaGlkZUZvcm0oKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChzaG93TW9kZWwgPT0gXCJkcmF3ZXJcIiAmJiBvbkNsb3NlKSB7XHJcbiAgICAgICAgb25DbG9zZShlKTtcclxuICAgICAgfSBlbHNlIGlmIChzaG93TW9kZWwgPT0gXCJtb2RhbFwiICYmIG9uQ2FuY2VsKSB7XHJcbiAgICAgICAgb25DYW5jZWwoZSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgX3RoaXMuaGlkZUZvcm0oKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaGlkZUZvcm0ocmVzZXRWYWx1ZSA9IHRydWUpIHtcclxuICAgIHRoaXMuc2V0U3RhdGUoXHJcbiAgICAgIHtcclxuICAgICAgICBmb3JtVmlzaWJsZTogZmFsc2UsXHJcbiAgICAgICAgaXNDaGFuZ2U6IGZhbHNlLFxyXG4gICAgICB9LFxyXG4gICAgICAoKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc2V0VmFsdWUpIHtcclxuICAgICAgICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5yZXNldEZpZWxkcygpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHNob3dGb3JtKHZhbHVlPzogYW55LCByZXNldFZhbHVlID0gdHJ1ZSkge1xyXG4gICAgdGhpcy5zZXRTdGF0ZShcclxuICAgICAge1xyXG4gICAgICAgIGZvcm1WaXNpYmxlOiB0cnVlLFxyXG4gICAgICAgIGlzQ2hhbmdlOiBmYWxzZSxcclxuICAgICAgfSxcclxuICAgICAgKCkgPT4ge1xyXG4gICAgICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICAgICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnNldEZpZWxkc1ZhbHVlKHZhbHVlKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgaWYgKHJlc2V0VmFsdWUpIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5yZXNldEZpZWxkcygpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGNsb25lRWxlbWVudChpdGVtLCBpbmRleCA9IDApIHtcclxuICAgIGxldCBfdGhpcyA9IHRoaXM7XHJcbiAgICBpZiAodHlwZW9mIGl0ZW0gPT0gXCJzdHJpbmdcIikgcmV0dXJuIGl0ZW07XHJcbiAgICBsZXQgcHJvcHMgPSB7fSBhcyB7IGtleTogbnVtYmVyOyBjaGlsZHJlbjogYW55IH07XHJcbiAgICBwcm9wcy5rZXkgPSBpbmRleDtcclxuICAgIHRyeSB7XHJcbiAgICAgIGlmIChpdGVtLnByb3BzICYmIGl0ZW0ucHJvcHMuY2hpbGRyZW4pIHtcclxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShpdGVtLnByb3BzLmNoaWxkcmVuKSkge1xyXG4gICAgICAgICAgcHJvcHMuY2hpbGRyZW4gPSBSZWFjdC5DaGlsZHJlbi5tYXAoXHJcbiAgICAgICAgICAgIGl0ZW0ucHJvcHMuY2hpbGRyZW4sXHJcbiAgICAgICAgICAgIGZ1bmN0aW9uIChjaGlsZCwgaW5kZXgpIHtcclxuICAgICAgICAgICAgICByZXR1cm4gX3RoaXMuY2xvbmVFbGVtZW50KGNoaWxkLCBpbmRleCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHByb3BzLmNoaWxkcmVuID0gdGhpcy5jbG9uZUVsZW1lbnQoaXRlbS5wcm9wcy5jaGlsZHJlbiwgMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBSZWFjdC5jbG9uZUVsZW1lbnQoaXRlbSwgcHJvcHMpO1xyXG4gICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICB9XHJcbiAgb25WYWx1ZXNDaGFuZ2UodmFsLCBhbGxWYWwpIHtcclxuICAgIGNvbnN0IHsgb25WYWx1ZXNDaGFuZ2UgfSA9IHRoaXMucHJvcHM7XHJcbiAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgaXNDaGFuZ2U6IHRydWUsXHJcbiAgICB9KTtcclxuICAgIG9uVmFsdWVzQ2hhbmdlICYmIG9uVmFsdWVzQ2hhbmdlKHZhbCwgYWxsVmFsKTtcclxuICB9XHJcbiAgcmVuZGVyUGFuZWwobmV3Q2hpbGRyZW4sIHByb3BzKSB7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHNob3dNb2RlbCxcclxuICAgICAgZHJhd2VyUHJvcHMgPSB7fSxcclxuICAgICAgbW9kYWxQcm9wcyA9IHt9LFxyXG4gICAgICBjaGFuZ2VWYWxpZCA9IHRydWUsXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgZm9ybVZpc2libGUgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBjb25zdCBsYXlvdXQgPSB7XHJcbiAgICAgIGxhYmVsQ29sOiB7IHNwYW46IDQgfSxcclxuICAgICAgd3JhcHBlckNvbDogeyBzcGFuOiAyMCB9LFxyXG4gICAgfTtcclxuICAgIGxldCBvcmd0aXRsZSA9IHNob3dNb2RlbCA9PSBcIm1vZGFsXCIgPyBtb2RhbFByb3BzLnRpdGxlIDogZHJhd2VyUHJvcHMudGl0bGU7XHJcbiAgICBjb25zdCBjbG9zYWJsZSA9XHJcbiAgICAgIHNob3dNb2RlbCA9PSBcIm1vZGFsXCIgPyBtb2RhbFByb3BzLmNsb3NhYmxlIDogZHJhd2VyUHJvcHMuY2xvc2FibGU7XHJcbiAgICBjb25zdCB0aXRsZSA9IChcclxuICAgICAgPGRpdiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcInRpdGxlXCIpfT5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiaWNvbnNcIil9PlxyXG4gICAgICAgICAgeyF0aGlzLnN0YXRlLmV4cGFuZCAmJiAoXHJcbiAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldFN0YXRlKHsgZXhwYW5kOiB0cnVlIH0pO1xyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJpY29uXCIpfVxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPEV4cGFuZE91dGxpbmVkIC8+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgKX1cclxuICAgICAgICAgIHt0aGlzLnN0YXRlLmV4cGFuZCAmJiAoXHJcbiAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldFN0YXRlKHsgZXhwYW5kOiBmYWxzZSB9KTtcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiaWNvblwiKX1cclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDxDb21wcmVzc091dGxpbmVkIC8+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgKX1cclxuICAgICAgICAgIHtjbG9zYWJsZSAhPT0gZmFsc2UgJiYgKFxyXG4gICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgb25DbGljaz17dGhpcy5oaWRlLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJpY29uXCIpfVxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7IG1hcmdpblJpZ2h0OiAwIH19XHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICA8Q2xvc2VPdXRsaW5lZCAvPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICl9XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcInRpdGxlLWNvbnRlbnRcIil9Pntvcmd0aXRsZX08L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICApO1xyXG4gICAgY29uc3QgZm9vdGVyID0gKFxyXG4gICAgICA8ZGl2IGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiZm9vdGVyXCIpfT5cclxuICAgICAgICA8QnV0dG9uXHJcbiAgICAgICAgICB0eXBlPVwicHJpbWFyeVwiXHJcbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGZvcm1WYWx1ZSA9IHRoaXMuZm9ybVJlZi5jdXJyZW50Py5nZXRGaWVsZHNWYWx1ZSgpO1xyXG4gICAgICAgICAgICBpZiAoc2hvd01vZGVsID09IFwibW9kYWxcIikge1xyXG4gICAgICAgICAgICAgIG1vZGFsUHJvcHMub25PayAmJiBtb2RhbFByb3BzLm9uT2soZm9ybVZhbHVlKTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBkcmF3ZXJQcm9wcy5vbk9rICYmIGRyYXdlclByb3BzLm9uT2soZm9ybVZhbHVlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGljb249ezxQbHVzQ2lyY2xlT3V0bGluZWQgLz59XHJcbiAgICAgICAgPlxyXG4gICAgICAgICAg5L+d5a2YXHJcbiAgICAgICAgPC9CdXR0b24+XHJcblxyXG4gICAgICAgIDxCdXR0b25cclxuICAgICAgICAgIG9uQ2xpY2s9e3RoaXMuaGlkZS5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJidXR0b24tbWFyZ2luXCIpfVxyXG4gICAgICAgICAgaWNvbj17PENsb3NlQ2lyY2xlT3V0bGluZWQgLz59XHJcbiAgICAgICAgPlxyXG4gICAgICAgICAg5Y+W5raIXHJcbiAgICAgICAgPC9CdXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgKTtcclxuICAgIGlmIChzaG93TW9kZWwgJiYgc2hvd01vZGVsID09IFwibW9kYWxcIikge1xyXG4gICAgICBsZXQgbmV3TW9kYWxQcm9wcyA9IG9taXQobW9kYWxQcm9wcywgW1widmlzaWJsZVwiXSk7XHJcbiAgICAgIG5ld01vZGFsUHJvcHMgPSB7IGNlbnRlcmVkOiB0cnVlLCBmb290ZXIsIC4uLm5ld01vZGFsUHJvcHMgfTtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICA8TW9kYWxcclxuICAgICAgICAgIHZpc2libGU9e2Zvcm1WaXNpYmxlfVxyXG4gICAgICAgICAgZm9vdGVyPXtmb290ZXJ9XHJcbiAgICAgICAgICB7Li4ubmV3TW9kYWxQcm9wc31cclxuICAgICAgICAgIG9uQ2FuY2VsPXt0aGlzLmhpZGUuYmluZCh0aGlzKX1cclxuICAgICAgICAgIG1hc2tDbG9zYWJsZT17IXRoaXMuc3RhdGUuaXNDaGFuZ2V9XHJcbiAgICAgICAgICB0aXRsZT17dGl0bGV9XHJcbiAgICAgICAgICBjbG9zYWJsZT17ZmFsc2V9XHJcbiAgICAgICAgICBjbGFzc05hbWU9e3RoaXMuc3RhdGUuZXhwYW5kID8gZ2V0TGVzcyhzdHlsZXMsIFwiYWxsc3JlZW5cIikgOiBcIlwifVxyXG4gICAgICAgICAgd2lkdGg9e3RoaXMuc3RhdGUuZXhwYW5kID8gXCIxMDB2d1wiIDogbmV3TW9kYWxQcm9wcy53aWR0aH1cclxuICAgICAgICAgIHN0eWxlPXt7IG1heFdpZHRoOiBcIjEwMCVcIiB9fVxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxGb3JtXHJcbiAgICAgICAgICAgIHJlZj17dGhpcy5mb3JtUmVmfVxyXG4gICAgICAgICAgICB7Li4ubGF5b3V0fVxyXG4gICAgICAgICAgICB7Li4ucHJvcHN9XHJcbiAgICAgICAgICAgIG9uVmFsdWVzQ2hhbmdlPXt0aGlzLm9uVmFsdWVzQ2hhbmdlLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICAgIHByZXNlcnZlPXtmYWxzZX1cclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgPC9Nb2RhbD5cclxuICAgICAgKTtcclxuICAgIH0gZWxzZSBpZiAoc2hvd01vZGVsICYmIHNob3dNb2RlbCA9PSBcImRyYXdlclwiKSB7XHJcbiAgICAgIGxldCBuZXdEcmF3ZXJQcm9wcyA9IG9taXQoZHJhd2VyUHJvcHMsIFtcInZpc2libGVcIiwgXCJvbk9rXCJdKTtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICA8RHJhd2VyXHJcbiAgICAgICAgICB2aXNpYmxlPXtmb3JtVmlzaWJsZX1cclxuICAgICAgICAgIGZvb3Rlcj17Zm9vdGVyfVxyXG4gICAgICAgICAgey4uLm5ld0RyYXdlclByb3BzfVxyXG4gICAgICAgICAgb25DbG9zZT17dGhpcy5oaWRlLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICBtYXNrQ2xvc2FibGU9eyF0aGlzLnN0YXRlLmlzQ2hhbmdlfVxyXG4gICAgICAgICAgdGl0bGU9e3RpdGxlfVxyXG4gICAgICAgICAgY2xvc2FibGU9e2ZhbHNlfVxyXG4gICAgICAgICAgd2lkdGg9e3RoaXMuc3RhdGUuZXhwYW5kID8gXCIxMDB2d1wiIDogbmV3RHJhd2VyUHJvcHMud2lkdGh9XHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPEZvcm1cclxuICAgICAgICAgICAgcmVmPXt0aGlzLmZvcm1SZWZ9XHJcbiAgICAgICAgICAgIHsuLi5sYXlvdXR9XHJcbiAgICAgICAgICAgIHsuLi5wcm9wc31cclxuICAgICAgICAgICAgb25WYWx1ZXNDaGFuZ2U9e3RoaXMub25WYWx1ZXNDaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgPC9EcmF3ZXI+XHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxGb3JtXHJcbiAgICAgICAgICByZWY9e3RoaXMuZm9ybVJlZn1cclxuICAgICAgICAgIHsuLi5sYXlvdXR9XHJcbiAgICAgICAgICB7Li4ucHJvcHN9XHJcbiAgICAgICAgICBvblZhbHVlc0NoYW5nZT17dGhpcy5vblZhbHVlc0NoYW5nZS5iaW5kKHRoaXMpfVxyXG4gICAgICAgIC8+XHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IF90aGlzID0gdGhpcyxcclxuICAgICAgeyBjaGlsZHJlbiwgc2hvd01vZGVsIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgLy8gY29uc3QgbmV3Q2hpbGRyZW4gPSBSZWFjdC5DaGlsZHJlbi5tYXAoY2hpbGRyZW4sIGZ1bmN0aW9uIChjaGlsZCwgaW5kZXgpIHtcclxuICAgIC8vICAgcmV0dXJuIF90aGlzLmNsb25lRWxlbWVudChjaGlsZCwgaW5kZXgpO1xyXG4gICAgLy8gfSk7XHJcbiAgICBjb25zdCBwcm9wcyA9IG9taXQodGhpcy5wcm9wcywgW1xyXG4gICAgICBcImZvcm1cIixcclxuICAgICAgXCJzaG93TW9kZWxcIixcclxuICAgICAgXCJtb2RhbFByb3BzXCIsXHJcbiAgICAgIFwiZHJhd2VyUHJvcHNcIixcclxuICAgICAgXCJ1cmxcIixcclxuICAgICAgXCJlbmNyeXB0RmllbGRzXCIsXHJcbiAgICBdKTtcclxuXHJcbiAgICByZXR1cm4gPD57dGhpcy5yZW5kZXJQYW5lbChwcm9wcy5jaGlsZHJlbiwgcHJvcHMpfTwvPjtcclxuICB9XHJcbn1cclxuZXhwb3J0IGRlZmF1bHQgTnNjRm9ybTtcclxuIl19
|
package/lib/base/form/index.less
CHANGED