nsc-react-component 2.2.19 → 2.2.21
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/filed/FormItem.js +36 -5
- package/lib/base/form/filed/Input.js +1 -1
- package/lib/base/form/filed/Item.js +20 -6
- package/lib/base/input/index.d.ts +0 -1
- package/lib/base/input/index.js +1 -10
- package/lib/page/BasePage/Form.js +9 -2
- package/lib/page/BasePage/index.js +59 -13
- package/lib/page/BasePage/index.module.less +7 -5
- package/lib/utils.js +1 -17
- package/package.json +1 -1
|
@@ -2,7 +2,7 @@ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "functi
|
|
|
2
2
|
|
|
3
3
|
import "antd/es/form/style/css";
|
|
4
4
|
import _Form from "antd/es/form";
|
|
5
|
-
var _excluded = ["label", "required", "message", "type", "rules"];
|
|
5
|
+
var _excluded = ["label", "required", "message", "type", "rules", "validateTrigger", "allowChars"];
|
|
6
6
|
|
|
7
7
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
8
8
|
|
|
@@ -10,6 +10,18 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
|
10
10
|
|
|
11
11
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
12
12
|
|
|
13
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
14
|
+
|
|
15
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
16
|
+
|
|
17
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
18
|
+
|
|
19
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
20
|
+
|
|
21
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
22
|
+
|
|
23
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
24
|
+
|
|
13
25
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
14
26
|
|
|
15
27
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
@@ -43,7 +55,7 @@ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.g
|
|
|
43
55
|
* @LastEditTime: 2021-04-22 16:54:01
|
|
44
56
|
*/
|
|
45
57
|
import React, { PureComponent } from "react";
|
|
46
|
-
|
|
58
|
+
import utils from "../../../utils";
|
|
47
59
|
|
|
48
60
|
var NSCFormItem = /*#__PURE__*/function (_PureComponent) {
|
|
49
61
|
_inherits(NSCFormItem, _PureComponent);
|
|
@@ -67,17 +79,36 @@ var NSCFormItem = /*#__PURE__*/function (_PureComponent) {
|
|
|
67
79
|
type = _this$props$type === void 0 ? "string" : _this$props$type,
|
|
68
80
|
_this$props$rules = _this$props.rules,
|
|
69
81
|
rules = _this$props$rules === void 0 ? [] : _this$props$rules,
|
|
82
|
+
validateTrigger = _this$props.validateTrigger,
|
|
83
|
+
_this$props$allowChar = _this$props.allowChars,
|
|
84
|
+
allowChars = _this$props$allowChar === void 0 ? false : _this$props$allowChar,
|
|
70
85
|
params = _objectWithoutProperties(_this$props, _excluded);
|
|
71
86
|
|
|
87
|
+
var newRules = _toConsumableArray(rules);
|
|
88
|
+
|
|
72
89
|
if (required) {
|
|
73
|
-
|
|
90
|
+
newRules.push({
|
|
74
91
|
required: required,
|
|
75
92
|
message: message || label + "不能为空!"
|
|
76
93
|
});
|
|
77
94
|
}
|
|
78
95
|
|
|
96
|
+
if (!allowChars) {
|
|
97
|
+
validateTrigger = validateTrigger ? validateTrigger : "onChange";
|
|
98
|
+
newRules.push({
|
|
99
|
+
validator: function validator(_, value) {
|
|
100
|
+
if (!value || utils.checkChars(value)) {
|
|
101
|
+
return Promise.resolve();
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
return Promise.reject(new Error("\u4E0D\u80FD\u8F93\u5165\u7279\u6B8A\u5B57\u7B26\uFF01"));
|
|
105
|
+
},
|
|
106
|
+
validateTrigger: validateTrigger
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
|
|
79
110
|
var itemProps = _objectSpread(_objectSpread({}, {
|
|
80
|
-
rules:
|
|
111
|
+
rules: newRules,
|
|
81
112
|
label: label
|
|
82
113
|
}), params);
|
|
83
114
|
|
|
@@ -89,4 +120,4 @@ var NSCFormItem = /*#__PURE__*/function (_PureComponent) {
|
|
|
89
120
|
}(PureComponent);
|
|
90
121
|
|
|
91
122
|
export { NSCFormItem as default };
|
|
92
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
123
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Jhc2UvZm9ybS9maWxlZC9Gb3JtSXRlbS50c3giXSwibmFtZXMiOlsiUmVhY3QiLCJQdXJlQ29tcG9uZW50IiwidXRpbHMiLCJOU0NGb3JtSXRlbSIsInByb3BzIiwibGFiZWwiLCJyZXF1aXJlZCIsIm1lc3NhZ2UiLCJ0eXBlIiwicnVsZXMiLCJ2YWxpZGF0ZVRyaWdnZXIiLCJhbGxvd0NoYXJzIiwicGFyYW1zIiwibmV3UnVsZXMiLCJwdXNoIiwidmFsaWRhdG9yIiwiXyIsInZhbHVlIiwiY2hlY2tDaGFycyIsIlByb21pc2UiLCJyZXNvbHZlIiwicmVqZWN0IiwiRXJyb3IiLCJpdGVtUHJvcHMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPQSxLQUFQLElBQWdCQyxhQUFoQixRQUFxQyxPQUFyQztBQUtBLE9BQU9DLEtBQVAsTUFBa0IsZ0JBQWxCOztJQU9xQkMsVzs7Ozs7Ozs7Ozs7OztXQUNuQixrQkFBUztBQUNQLHdCQVlJLEtBQUtDLEtBWlQ7QUFBQSxVQUNFQyxLQURGLGVBQ0VBLEtBREY7QUFBQSxVQUdFQyxRQUhGLGVBR0VBLFFBSEY7QUFBQSxVQUtFQyxPQUxGLGVBS0VBLE9BTEY7QUFBQSx5Q0FPRUMsSUFQRjtBQUFBLFVBT0VBLElBUEYsaUNBT1MsUUFQVDtBQUFBLDBDQVFFQyxLQVJGO0FBQUEsVUFRRUEsS0FSRixrQ0FRVSxFQVJWO0FBQUEsVUFTRUMsZUFURixlQVNFQSxlQVRGO0FBQUEsOENBVUVDLFVBVkY7QUFBQSxVQVVFQSxVQVZGLHNDQVVlLEtBVmY7QUFBQSxVQVdLQyxNQVhMOztBQWFBLFVBQU1DLFFBQVEsc0JBQU9KLEtBQVAsQ0FBZDs7QUFDQSxVQUFJSCxRQUFKLEVBQWM7QUFDWk8sUUFBQUEsUUFBUSxDQUFDQyxJQUFULENBQWM7QUFDWlIsVUFBQUEsUUFBUSxFQUFFQSxRQURFO0FBRVpDLFVBQUFBLE9BQU8sRUFBRUEsT0FBTyxJQUFJRixLQUFLLEdBQUc7QUFGaEIsU0FBZDtBQUlEOztBQUNELFVBQUksQ0FBQ00sVUFBTCxFQUFpQjtBQUNmRCxRQUFBQSxlQUFlLEdBQUdBLGVBQWUsR0FBR0EsZUFBSCxHQUFxQixVQUF0RDtBQUNBRyxRQUFBQSxRQUFRLENBQUNDLElBQVQsQ0FBYztBQUNaQyxVQUFBQSxTQUFTLEVBQUUsbUJBQUNDLENBQUQsRUFBSUMsS0FBSixFQUFjO0FBQ3ZCLGdCQUFJLENBQUNBLEtBQUQsSUFBVWYsS0FBSyxDQUFDZ0IsVUFBTixDQUFpQkQsS0FBakIsQ0FBZCxFQUF1QztBQUNyQyxxQkFBT0UsT0FBTyxDQUFDQyxPQUFSLEVBQVA7QUFDRDs7QUFDRCxtQkFBT0QsT0FBTyxDQUFDRSxNQUFSLENBQWUsSUFBSUMsS0FBSiwwREFBZixDQUFQO0FBQ0QsV0FOVztBQU9aWixVQUFBQSxlQUFlLEVBQUVBO0FBUEwsU0FBZDtBQVNEOztBQUNELFVBQUlhLFNBQVMsbUNBQ1I7QUFDRGQsUUFBQUEsS0FBSyxFQUFFSSxRQUROO0FBRURSLFFBQUFBLEtBQUssRUFBTEE7QUFGQyxPQURRLEdBS1JPLE1BTFEsQ0FBYjs7QUFPQSwwQkFBTywwQkFBTSxJQUFOLEVBQWVXLFNBQWYsQ0FBUDtBQUNEOzs7O0VBMUNzQ3RCLGE7O1NBQXBCRSxXIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogQERlc2NyaXB0dGlvbjogRm9ybUl0ZW0g5a6e546wXHJcbiAqIEB2ZXJzaW9uOlxyXG4gKiBAQXV0aG9yOiByeHpodVxyXG4gKiBARGF0ZTogMjAyMS0wNC0wOCAxNToyNzo0OFxyXG4gKiBATGFzdEVkaXRvcnM6IHJ4emh1XHJcbiAqIEBMYXN0RWRpdFRpbWU6IDIwMjEtMDQtMjIgMTY6NTQ6MDFcclxuICovXHJcbmltcG9ydCBSZWFjdCwgeyBQdXJlQ29tcG9uZW50IH0gZnJvbSBcInJlYWN0XCI7XHJcblxyXG5pbXBvcnQgeyBGb3JtLCBGb3JtSXRlbVByb3BzLCBGb3JtUHJvcHMgfSBmcm9tIFwiYW50ZFwiO1xyXG5cclxuaW1wb3J0IG9taXQgZnJvbSBcIm9taXQuanNcIjtcclxuaW1wb3J0IHV0aWxzIGZyb20gXCIuLi8uLi8uLi91dGlsc1wiO1xyXG5cclxuaW50ZXJmYWNlIElGb3JtUHJvcHMgZXh0ZW5kcyBGb3JtSXRlbVByb3BzIHtcclxuICBtZXNzYWdlPzogc3RyaW5nOyAvL+S4uuepuuaPkOekuuaWh+Wtl1xyXG4gIHR5cGU/OiBzdHJpbmc7XHJcbiAgW3Byb3BOYW1lOiBzdHJpbmddOiBhbnk7XHJcbn1cclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTlNDRm9ybUl0ZW0gZXh0ZW5kcyBQdXJlQ29tcG9uZW50PElGb3JtUHJvcHM+IHtcclxuICByZW5kZXIoKSB7XHJcbiAgICBsZXQge1xyXG4gICAgICBsYWJlbCxcclxuICAgICAgLy/mmK/lkKblv4XloavvvIzkuI3orr7nva7kvJrmoLnmja5ydWxlc+eUn+aIkFxyXG4gICAgICByZXF1aXJlZCxcclxuICAgICAgLy/lpoLmnpzkuI3loavmj5DnpLrmloflrZdcclxuICAgICAgbWVzc2FnZSxcclxuICAgICAgLy/moKHpqozop4TliJnvvIznvLrnnIFzdHJpbmcgaHR0cHM6Ly9naXRodWIuY29tL3lpbWluZ2hlL2FzeW5jLXZhbGlkYXRvciN0eXBlXHJcbiAgICAgIHR5cGUgPSBcInN0cmluZ1wiLFxyXG4gICAgICBydWxlcyA9IFtdLFxyXG4gICAgICB2YWxpZGF0ZVRyaWdnZXIsXHJcbiAgICAgIGFsbG93Q2hhcnMgPSBmYWxzZSxcclxuICAgICAgLi4ucGFyYW1zXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IG5ld1J1bGVzID0gWy4uLnJ1bGVzXTtcclxuICAgIGlmIChyZXF1aXJlZCkge1xyXG4gICAgICBuZXdSdWxlcy5wdXNoKHtcclxuICAgICAgICByZXF1aXJlZDogcmVxdWlyZWQsXHJcbiAgICAgICAgbWVzc2FnZTogbWVzc2FnZSB8fCBsYWJlbCArIFwi5LiN6IO95Li656m677yBXCIsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgaWYgKCFhbGxvd0NoYXJzKSB7XHJcbiAgICAgIHZhbGlkYXRlVHJpZ2dlciA9IHZhbGlkYXRlVHJpZ2dlciA/IHZhbGlkYXRlVHJpZ2dlciA6IFwib25DaGFuZ2VcIjtcclxuICAgICAgbmV3UnVsZXMucHVzaCh7XHJcbiAgICAgICAgdmFsaWRhdG9yOiAoXywgdmFsdWUpID0+IHtcclxuICAgICAgICAgIGlmICghdmFsdWUgfHwgdXRpbHMuY2hlY2tDaGFycyh2YWx1ZSkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBFcnJvcihg5LiN6IO96L6T5YWl54m55q6K5a2X56ym77yBYCkpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgdmFsaWRhdGVUcmlnZ2VyOiB2YWxpZGF0ZVRyaWdnZXIsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgbGV0IGl0ZW1Qcm9wcyA9IHtcclxuICAgICAgLi4ue1xyXG4gICAgICAgIHJ1bGVzOiBuZXdSdWxlcyxcclxuICAgICAgICBsYWJlbCxcclxuICAgICAgfSxcclxuICAgICAgLi4ucGFyYW1zLFxyXG4gICAgfTtcclxuICAgIHJldHVybiA8Rm9ybS5JdGVtIHsuLi5pdGVtUHJvcHN9IC8+O1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -61,4 +61,4 @@ var NscFormInput = /*#__PURE__*/function (_NscFormItem) {
|
|
|
61
61
|
}(NscFormItem);
|
|
62
62
|
|
|
63
63
|
export default NscFormInput;
|
|
64
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Jhc2UvZm9ybS9maWxlZC9JbnB1dC50c3giXSwibmFtZXMiOlsiUmVhY3QiLCJJbnB1dCIsIk5zY0Zvcm1JdGVtIiwib21pdCIsIk5zY0Zvcm1JbnB1dCIsInByb3BzIiwiZmllbGRQcm9wcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU9BLEtBQVAsTUFBa0IsT0FBbEI7QUFDQSxPQUFPQyxLQUFQLE1BQWtCLGFBQWxCO0FBQ0EsT0FBT0MsV0FBUCxNQUF3QixRQUF4QjtBQUNBLE9BQU9DLElBQVAsTUFBaUIsU0FBakI7O0lBQ01DLFk7Ozs7O0FBQ0osd0JBQVlDLEtBQVosRUFBbUI7QUFBQTs7QUFBQSw2QkFDWEEsS0FEVyxFQUNKLFVBREk7QUFFbEI7Ozs7V0FDRCwyQkFBa0JDLFVBQWxCLEVBQThCO0FBQzVCQSxNQUFBQSxVQUFVLEdBQUdILElBQUksQ0FBQ0csVUFBRCxFQUFhLENBQUMsWUFBRCxDQUFiLENBQWpCO0FBQ0EsMEJBQU8sb0JBQUMsS0FBRDtBQUFPLFFBQUEsWUFBWSxFQUFFLEtBQXJCO0FBQTRCLFFBQUEsVUFBVSxFQUFFO0FBQXhDLFNBQWtEQSxVQUFsRCxFQUFQO0FBQ0Q7Ozs7RUFQd0JKLFc7O0FBVTNCLGVBQWVFLFlBQWYiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBARGVzY3JpcHR0aW9uOlxyXG4gKiBAdmVyc2lvbjpcclxuICogQEF1dGhvcjogcnh6aHVcclxuICogQERhdGU6IDIwMjEtMDQtMDkgMDk6MTU6MTBcclxuICogQExhc3RFZGl0b3JzOiByeHpodVxyXG4gKiBATGFzdEVkaXRUaW1lOiAyMDIxLTA0LTEyIDE3OjA1OjI1XHJcbiAqL1xyXG5pbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCBJbnB1dCBmcm9tIFwiLi4vLi4vaW5wdXRcIjtcclxuaW1wb3J0IE5zY0Zvcm1JdGVtIGZyb20gXCIuL0l0ZW1cIjtcclxuaW1wb3J0IG9taXQgZnJvbSBcIm9taXQuanNcIjtcclxuY2xhc3MgTnNjRm9ybUlucHV0IGV4dGVuZHMgTnNjRm9ybUl0ZW0ge1xyXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XHJcbiAgICBzdXBlcihwcm9wcywgXCJOc2NJbnB1dFwiKTtcclxuICB9XHJcbiAgZ2V0RmllbGRDb21wb25lbnQoZmllbGRQcm9wcykge1xyXG4gICAgZmllbGRQcm9wcyA9IG9taXQoZmllbGRQcm9wcywgW1wiYWxsb3dDaGFyc1wiXSk7XHJcbiAgICByZXR1cm4gPElucHV0IGRlZmF1bHRTdHlsZT17ZmFsc2V9IGFsbG93Q2hhcnM9e3RydWV9IHsuLi5maWVsZFByb3BzfSAvPjtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBkZWZhdWx0IE5zY0Zvcm1JbnB1dDtcclxuIl19
|
|
@@ -7,6 +7,18 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
7
7
|
|
|
8
8
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
9
9
|
|
|
10
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
11
|
+
|
|
12
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
13
|
+
|
|
14
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
15
|
+
|
|
16
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
17
|
+
|
|
18
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
19
|
+
|
|
20
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
21
|
+
|
|
10
22
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
11
23
|
|
|
12
24
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
@@ -91,8 +103,10 @@ var NSCFormItem = /*#__PURE__*/function (_PureComponent) {
|
|
|
91
103
|
_this$props$allowChar = _this$props.allowChars,
|
|
92
104
|
allowChars = _this$props$allowChar === void 0 ? false : _this$props$allowChar;
|
|
93
105
|
|
|
106
|
+
var newRules = _toConsumableArray(rules);
|
|
107
|
+
|
|
94
108
|
if (required) {
|
|
95
|
-
|
|
109
|
+
newRules.push({
|
|
96
110
|
required: required,
|
|
97
111
|
message: message || label + "不能为空!"
|
|
98
112
|
});
|
|
@@ -101,7 +115,7 @@ var NSCFormItem = /*#__PURE__*/function (_PureComponent) {
|
|
|
101
115
|
if (type && typeMessage[type]) {
|
|
102
116
|
// hasFeedback = hasFeedback ? hasFeedback : true;
|
|
103
117
|
// validateTrigger = validateTrigger ? validateTrigger : "onChange";
|
|
104
|
-
|
|
118
|
+
newRules.push({
|
|
105
119
|
validator: function validator(_, value) {
|
|
106
120
|
if (!value || utils.checkModel(type, value)) {
|
|
107
121
|
return Promise.resolve();
|
|
@@ -112,7 +126,7 @@ var NSCFormItem = /*#__PURE__*/function (_PureComponent) {
|
|
|
112
126
|
|
|
113
127
|
});
|
|
114
128
|
} else if (type) {
|
|
115
|
-
|
|
129
|
+
newRules.push({
|
|
116
130
|
type: type
|
|
117
131
|
});
|
|
118
132
|
}
|
|
@@ -130,7 +144,7 @@ var NSCFormItem = /*#__PURE__*/function (_PureComponent) {
|
|
|
130
144
|
if (this.componentName === "NscInput") {
|
|
131
145
|
if (!allowChars) {
|
|
132
146
|
validateTrigger = validateTrigger ? validateTrigger : "onChange";
|
|
133
|
-
|
|
147
|
+
newRules.push({
|
|
134
148
|
validator: function validator(_, value) {
|
|
135
149
|
if (!value || utils.checkChars(value)) {
|
|
136
150
|
return Promise.resolve();
|
|
@@ -146,7 +160,7 @@ var NSCFormItem = /*#__PURE__*/function (_PureComponent) {
|
|
|
146
160
|
var itemProps = omit(this.props, fieldPropsKey);
|
|
147
161
|
itemProps = _objectSpread(_objectSpread({}, {
|
|
148
162
|
label: label,
|
|
149
|
-
rules:
|
|
163
|
+
rules: newRules,
|
|
150
164
|
hasFeedback: hasFeedback,
|
|
151
165
|
validateTrigger: validateTrigger
|
|
152
166
|
}), itemProps);
|
|
@@ -158,4 +172,4 @@ var NSCFormItem = /*#__PURE__*/function (_PureComponent) {
|
|
|
158
172
|
}(PureComponent);
|
|
159
173
|
|
|
160
174
|
export { NSCFormItem as default };
|
|
161
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Jhc2UvZm9ybS9maWxlZC9JdGVtLnRzeCJdLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJvbWl0IiwidXRpbHMiLCJGb3JtSXRlbSIsIkl0ZW0iLCJ0eXBlTWVzc2FnZSIsIm1vYmlsZSIsInRlbGUiLCJpZGNhcmQiLCJlbWFpbCIsImJhbmtjYXJkIiwiTlNDRm9ybUl0ZW0iLCJwcm9wcyIsIm5hbWUiLCJjb21wb25lbnROYW1lIiwiaXRlbVByb3BzIiwibGFiZWwiLCJyZXF1aXJlZCIsIm1lc3NhZ2UiLCJoYXNGZWVkYmFjayIsInJ1bGVzIiwidmFsaWRhdGVUcmlnZ2VyIiwidHlwZSIsImFsbG93Q2hhcnMiLCJwdXNoIiwidmFsaWRhdG9yIiwiXyIsInZhbHVlIiwiY2hlY2tNb2RlbCIsIlByb21pc2UiLCJyZXNvbHZlIiwicmVqZWN0IiwiRXJyb3IiLCJmaWVsZFByb3BzIiwiZmllbGRQcm9wc0tleSIsImtleSIsIkNoaWxkIiwiZ2V0RmllbGRDb21wb25lbnQiLCJjaGVja0NoYXJzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU9BLEtBQVAsSUFBZ0JDLGFBQWhCLFFBQXFDLE9BQXJDO0FBSUEsT0FBT0MsSUFBUCxNQUFpQixTQUFqQjtBQUVBLE9BQU9DLEtBQVAsTUFBa0IsZ0JBQWxCO0FBRUEsSUFBTUMsUUFBUSxHQUFHLE1BQUtDLElBQXRCO0FBRUEsSUFBTUMsV0FBVyxHQUFHO0FBQ2xCQyxFQUFBQSxNQUFNLEVBQUUsS0FEVTtBQUVsQkMsRUFBQUEsSUFBSSxFQUFFLE1BRlk7QUFHbEJDLEVBQUFBLE1BQU0sRUFBRSxPQUhVO0FBSWxCQyxFQUFBQSxLQUFLLEVBQUUsSUFKVztBQUtsQkMsRUFBQUEsUUFBUSxFQUFFO0FBTFEsQ0FBcEI7O0lBZ0JxQkMsVzs7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QHZlcnNpb246XHJcbiAqIEBBdXRob3I6IHJ4emh1XHJcbiAqIEBEYXRlOiAyMDIxLTA0LTA4IDE1OjI3OjQ4XHJcbiAqIEBMYXN0RWRpdG9yczogcnh6aHVcclxuICogQExhc3RFZGl0VGltZTogMjAyMS0wNC0yMiAxNjo1NToxOFxyXG4gKi9cclxuaW1wb3J0IFJlYWN0LCB7IFB1cmVDb21wb25lbnQgfSBmcm9tIFwicmVhY3RcIjtcclxuXHJcbmltcG9ydCB7IEZvcm0sIEZvcm1JdGVtUHJvcHMsIEZvcm1Qcm9wcyB9IGZyb20gXCJhbnRkXCI7XHJcblxyXG5pbXBvcnQgb21pdCBmcm9tIFwib21pdC5qc1wiO1xyXG5cclxuaW1wb3J0IHV0aWxzIGZyb20gXCIuLi8uLi8uLi91dGlsc1wiO1xyXG5cclxuY29uc3QgRm9ybUl0ZW0gPSBGb3JtLkl0ZW07XHJcblxyXG5jb25zdCB0eXBlTWVzc2FnZSA9IHtcclxuICBtb2JpbGU6IFwi5omL5py65Y+3XCIsXHJcbiAgdGVsZTogXCLnlLXor53lj7fnoIFcIixcclxuICBpZGNhcmQ6IFwi6Lqr5Lu96K+B5Y+356CBXCIsXHJcbiAgZW1haWw6IFwi6YKu566xXCIsXHJcbiAgYmFua2NhcmQ6IFwi6ZO26KGM5Y2h5Y+3XCIsXHJcbn07XHJcbmludGVyZmFjZSBlbmN0cnkge1xyXG4gIHR5cGU/OiBcInNtMlwiIHwgXCJzbTRcIiB8IFwiYmFzZTY0XCIgfCBcIm1kNVwiO1xyXG4gIGtleT86IHN0cmluZztcclxufVxyXG5pbnRlcmZhY2UgSUZvcm1Qcm9wcyBleHRlbmRzIEZvcm1JdGVtUHJvcHMge1xyXG4gIG1lc3NhZ2U/OiBzdHJpbmc7IC8v5Li656m65o+Q56S65paH5a2XXHJcbiAgdHlwZT86IGFueTtcclxuICBbcHJvcE5hbWU6IHN0cmluZ106IGFueTtcclxufVxyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBOU0NGb3JtSXRlbSBleHRlbmRzIFB1cmVDb21wb25lbnQ8SUZvcm1Qcm9wcz4ge1xyXG4gIGNvbXBvbmVudE5hbWUgPSBcIlwiO1xyXG4gIC8qKlxyXG4gICAqIOiHquWumuS5iea4suafk+e7hOS7tlxyXG4gICAqL1xyXG4gIGdldEZpZWxkQ29tcG9uZW50KGl0ZW1Qcm9wcywgcHJvcHMpIHtcclxuICAgIHJldHVybiA8PjwvPjtcclxuICB9XHJcbiAgY29uc3RydWN0b3IocHJvcHMsIG5hbWUpIHtcclxuICAgIHN1cGVyKHByb3BzKTtcclxuICAgIHRoaXMuY29tcG9uZW50TmFtZSA9IG5hbWU7XHJcbiAgfVxyXG4gIHJlbmRlcigpIHtcclxuICAgIGxldCB7XHJcbiAgICAgIGxhYmVsLFxyXG4gICAgICByZXF1aXJlZCxcclxuICAgICAgbWVzc2FnZSxcclxuICAgICAgaGFzRmVlZGJhY2ssXHJcbiAgICAgIHJ1bGVzID0gW10sXHJcbiAgICAgIHZhbGlkYXRlVHJpZ2dlcixcclxuICAgICAgdHlwZSxcclxuICAgICAgYWxsb3dDaGFycyA9IGZhbHNlLFxyXG4gICAgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpZiAocmVxdWlyZWQpIHtcclxuICAgICAgcnVsZXMucHVzaCh7XHJcbiAgICAgICAgcmVxdWlyZWQ6IHJlcXVpcmVkLFxyXG4gICAgICAgIG1lc3NhZ2U6IG1lc3NhZ2UgfHwgbGFiZWwgKyBcIuS4jeiDveS4uuepuu+8gVwiLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodHlwZSAmJiB0eXBlTWVzc2FnZVt0eXBlXSkge1xyXG4gICAgICAvLyBoYXNGZWVkYmFjayA9IGhhc0ZlZWRiYWNrID8gaGFzRmVlZGJhY2sgOiB0cnVlO1xyXG4gICAgICAvLyB2YWxpZGF0ZVRyaWdnZXIgPSB2YWxpZGF0ZVRyaWdnZXIgPyB2YWxpZGF0ZVRyaWdnZXIgOiBcIm9uQ2hhbmdlXCI7XHJcbiAgICAgIHJ1bGVzLnB1c2goe1xyXG4gICAgICAgIHZhbGlkYXRvcjogKF8sIHZhbHVlKSA9PiB7XHJcbiAgICAgICAgICBpZiAoIXZhbHVlIHx8IHV0aWxzLmNoZWNrTW9kZWwodHlwZSwgdmFsdWUpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChcclxuICAgICAgICAgICAgbmV3IEVycm9yKGDor7fovpPlhaXmraPnoa7nmoQke3R5cGVNZXNzYWdlW3R5cGVdfe+8gWApXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgLy8gdmFsaWRhdGVUcmlnZ2VyOiB2YWxpZGF0ZVRyaWdnZXIsXHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIGlmICh0eXBlKSB7XHJcbiAgICAgIHJ1bGVzLnB1c2goe1xyXG4gICAgICAgIHR5cGU6IHR5cGUsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCBmaWVsZFByb3BzID0gb21pdCh0aGlzLnByb3BzLCBbXHJcbiAgICAgIFwibGFiZWxcIixcclxuICAgICAgXCJyZXF1aXJlZFwiLFxyXG4gICAgICBcIm1lc3NhZ2VcIixcclxuICAgICAgXCJ0eXBlXCIsXHJcbiAgICAgIFwibmFtZVwiLFxyXG4gICAgICBcImluaXRpYWxWYWx1ZVwiLFxyXG4gICAgICBcInZhbHVlUHJvcE5hbWVcIixcclxuICAgICAgXCJwcmVmaXhDbHNcIixcclxuICAgICAgXCJub1N0eWxlXCIsXHJcbiAgICAgIFwic3R5bGVcIixcclxuICAgICAgXCJpZFwiLFxyXG4gICAgICBcImhpZGRlblwiLFxyXG4gICAgICBcIm1lc3NhZ2VWYXJpYWJsZXNcIixcclxuICAgICAgXCJ0b29sdGlwXCIsXHJcbiAgICAgIFwiY29sb25cIixcclxuICAgICAgXCJkZXBlbmRlbmNpZXNcIixcclxuICAgICAgXCJleHRyYVwiLFxyXG4gICAgICBcImdldFZhbHVlRnJvbUV2ZW50XCIsXHJcbiAgICAgIFwiZ2V0VmFsdWVQcm9wc1wiLFxyXG4gICAgICBcImhhc0ZlZWRiYWNrXCIsXHJcbiAgICAgIFwiZmllbGRLZXlcIixcclxuICAgICAgXCJoZWxwXCIsXHJcbiAgICAgIFwiaHRtbEZvclwiLFxyXG4gICAgICBcImlzTGlzdFwiLFxyXG4gICAgICBcImlzTGlzdEZpZWxkXCIsXHJcbiAgICAgIFwibGFiZWxBbGlnblwiLFxyXG4gICAgICBcImxhYmVsQ29sXCIsXHJcbiAgICAgIFwibm9ybWFsaXplXCIsXHJcbiAgICAgIFwib25SZXNldFwiLFxyXG4gICAgICBcInByZXNlcnZlXCIsXHJcbiAgICAgIFwidmFsaWRhdGVGaXJzdFwiLFxyXG4gICAgICBcInZhbGlkYXRlU3RhdHVzXCIsXHJcbiAgICAgIFwidmFsaWRhdGVUcmlnZ2VyXCIsXHJcbiAgICAgIFwidmFsdWVQcm9wTmFtZVwiLFxyXG4gICAgICBcIndyYXBwZXJDb2xcIixcclxuICAgIF0pO1xyXG4gICAgbGV0IGZpZWxkUHJvcHNLZXkgPSBbXTtcclxuICAgIGZvciAobGV0IGtleSBpbiBmaWVsZFByb3BzKSB7XHJcbiAgICAgIGZpZWxkUHJvcHNLZXkucHVzaChrZXkpO1xyXG4gICAgfVxyXG4gICAgZmllbGRQcm9wc0tleS5wdXNoKFtcInJ1bGVzXCIsIFwibWVzc2FnZVwiLCBcInJlcXVpcmVkXCJdKTtcclxuICAgIGNvbnN0IENoaWxkID0gdGhpcy5nZXRGaWVsZENvbXBvbmVudChmaWVsZFByb3BzLCB0aGlzLnByb3BzKTtcclxuICAgIGlmICh0aGlzLmNvbXBvbmVudE5hbWUgPT09IFwiTnNjSW5wdXRcIikge1xyXG4gICAgICBpZiAoIWFsbG93Q2hhcnMpIHtcclxuICAgICAgICB2YWxpZGF0ZVRyaWdnZXIgPSB2YWxpZGF0ZVRyaWdnZXIgPyB2YWxpZGF0ZVRyaWdnZXIgOiBcIm9uQ2hhbmdlXCI7XHJcbiAgICAgICAgcnVsZXMucHVzaCh7XHJcbiAgICAgICAgICB2YWxpZGF0b3I6IChfLCB2YWx1ZSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoIXZhbHVlIHx8IHV0aWxzLmNoZWNrQ2hhcnModmFsdWUpKSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoYOS4jeiDvei+k+WFpeeJueauiuWtl+espu+8gWApKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB2YWxpZGF0ZVRyaWdnZXI6IHZhbGlkYXRlVHJpZ2dlcixcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgbGV0IGl0ZW1Qcm9wcyA9IG9taXQodGhpcy5wcm9wcywgZmllbGRQcm9wc0tleSk7XHJcbiAgICBpdGVtUHJvcHMgPSB7XHJcbiAgICAgIC4uLnsgbGFiZWwsIHJ1bGVzLCBoYXNGZWVkYmFjaywgdmFsaWRhdGVUcmlnZ2VyIH0sXHJcbiAgICAgIC4uLml0ZW1Qcm9wcyxcclxuICAgIH07XHJcblxyXG4gICAgcmV0dXJuIDxGb3JtLkl0ZW0gey4uLml0ZW1Qcm9wc30+e0NoaWxkfTwvRm9ybS5JdGVtPjtcclxuICB9XHJcbn1cclxuIl19
|
|
175
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Jhc2UvZm9ybS9maWxlZC9JdGVtLnRzeCJdLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJvbWl0IiwidXRpbHMiLCJGb3JtSXRlbSIsIkl0ZW0iLCJ0eXBlTWVzc2FnZSIsIm1vYmlsZSIsInRlbGUiLCJpZGNhcmQiLCJlbWFpbCIsImJhbmtjYXJkIiwiTlNDRm9ybUl0ZW0iLCJwcm9wcyIsIm5hbWUiLCJjb21wb25lbnROYW1lIiwiaXRlbVByb3BzIiwibGFiZWwiLCJyZXF1aXJlZCIsIm1lc3NhZ2UiLCJoYXNGZWVkYmFjayIsInJ1bGVzIiwidmFsaWRhdGVUcmlnZ2VyIiwidHlwZSIsImFsbG93Q2hhcnMiLCJuZXdSdWxlcyIsInB1c2giLCJ2YWxpZGF0b3IiLCJfIiwidmFsdWUiLCJjaGVja01vZGVsIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJFcnJvciIsImZpZWxkUHJvcHMiLCJmaWVsZFByb3BzS2V5Iiwia2V5IiwiQ2hpbGQiLCJnZXRGaWVsZENvbXBvbmVudCIsImNoZWNrQ2hhcnMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBT0EsS0FBUCxJQUFnQkMsYUFBaEIsUUFBcUMsT0FBckM7QUFJQSxPQUFPQyxJQUFQLE1BQWlCLFNBQWpCO0FBRUEsT0FBT0MsS0FBUCxNQUFrQixnQkFBbEI7QUFFQSxJQUFNQyxRQUFRLEdBQUcsTUFBS0MsSUFBdEI7QUFFQSxJQUFNQyxXQUFXLEdBQUc7QUFDbEJDLEVBQUFBLE1BQU0sRUFBRSxLQURVO0FBRWxCQyxFQUFBQSxJQUFJLEVBQUUsTUFGWTtBQUdsQkMsRUFBQUEsTUFBTSxFQUFFLE9BSFU7QUFJbEJDLEVBQUFBLEtBQUssRUFBRSxJQUpXO0FBS2xCQyxFQUFBQSxRQUFRLEVBQUU7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b250ZW50IjpbIi8qXHJcbiAqIEBEZXNjcmlwdHRpb246IEZvcm1JdGVtIOWunueOsFxyXG4gKiBAdmVyc2lvbjpcclxuICogQEF1dGhvcjogcnh6aHVcclxuICogQERhdGU6IDIwMjEtMDQtMDggMTU6Mjc6NDhcclxuICogQExhc3RFZGl0b3JzOiByeHpodVxyXG4gKiBATGFzdEVkaXRUaW1lOiAyMDIxLTA0LTIyIDE2OjU1OjE4XHJcbiAqL1xyXG5pbXBvcnQgUmVhY3QsIHsgUHVyZUNvbXBvbmVudCB9IGZyb20gXCJyZWFjdFwiO1xyXG5cclxuaW1wb3J0IHsgRm9ybSwgRm9ybUl0ZW1Qcm9wcywgRm9ybVByb3BzIH0gZnJvbSBcImFudGRcIjtcclxuXHJcbmltcG9ydCBvbWl0IGZyb20gXCJvbWl0LmpzXCI7XHJcblxyXG5pbXBvcnQgdXRpbHMgZnJvbSBcIi4uLy4uLy4uL3V0aWxzXCI7XHJcblxyXG5jb25zdCBGb3JtSXRlbSA9IEZvcm0uSXRlbTtcclxuXHJcbmNvbnN0IHR5cGVNZXNzYWdlID0ge1xyXG4gIG1vYmlsZTogXCLmiYvmnLrlj7dcIixcclxuICB0ZWxlOiBcIueUteivneWPt+eggVwiLFxyXG4gIGlkY2FyZDogXCLouqvku73or4Hlj7fnoIFcIixcclxuICBlbWFpbDogXCLpgq7nrrFcIixcclxuICBiYW5rY2FyZDogXCLpk7booYzljaHlj7dcIixcclxufTtcclxuaW50ZXJmYWNlIElGb3JtUHJvcHMgZXh0ZW5kcyBGb3JtSXRlbVByb3BzIHtcclxuICBtZXNzYWdlPzogc3RyaW5nOyAvL+S4uuepuuaPkOekuuaWh+Wtl1xyXG4gIHR5cGU/OiBhbnk7XHJcbiAgW3Byb3BOYW1lOiBzdHJpbmddOiBhbnk7XHJcbn1cclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTlNDRm9ybUl0ZW0gZXh0ZW5kcyBQdXJlQ29tcG9uZW50PElGb3JtUHJvcHM+IHtcclxuICBjb21wb25lbnROYW1lID0gXCJcIjtcclxuICAvKipcclxuICAgKiDoh6rlrprkuYnmuLLmn5Pnu4Tku7ZcclxuICAgKi9cclxuICBnZXRGaWVsZENvbXBvbmVudChpdGVtUHJvcHMsIHByb3BzKSB7XHJcbiAgICByZXR1cm4gPD48Lz47XHJcbiAgfVxyXG4gIGNvbnN0cnVjdG9yKHByb3BzLCBuYW1lKSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgICB0aGlzLmNvbXBvbmVudE5hbWUgPSBuYW1lO1xyXG4gIH1cclxuICByZW5kZXIoKSB7XHJcbiAgICBsZXQge1xyXG4gICAgICBsYWJlbCxcclxuICAgICAgcmVxdWlyZWQsXHJcbiAgICAgIG1lc3NhZ2UsXHJcbiAgICAgIGhhc0ZlZWRiYWNrLFxyXG4gICAgICBydWxlcyA9IFtdLFxyXG4gICAgICB2YWxpZGF0ZVRyaWdnZXIsXHJcbiAgICAgIHR5cGUsXHJcbiAgICAgIGFsbG93Q2hhcnMgPSBmYWxzZSxcclxuICAgIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgbmV3UnVsZXMgPSBbLi4ucnVsZXNdXHJcbiAgICBpZiAocmVxdWlyZWQpIHtcclxuICAgICAgbmV3UnVsZXMucHVzaCh7XHJcbiAgICAgICAgcmVxdWlyZWQ6IHJlcXVpcmVkLFxyXG4gICAgICAgIG1lc3NhZ2U6IG1lc3NhZ2UgfHwgbGFiZWwgKyBcIuS4jeiDveS4uuepuu+8gVwiLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgaWYgKHR5cGUgJiYgdHlwZU1lc3NhZ2VbdHlwZV0pIHtcclxuICAgICAgLy8gaGFzRmVlZGJhY2sgPSBoYXNGZWVkYmFjayA/IGhhc0ZlZWRiYWNrIDogdHJ1ZTtcclxuICAgICAgLy8gdmFsaWRhdGVUcmlnZ2VyID0gdmFsaWRhdGVUcmlnZ2VyID8gdmFsaWRhdGVUcmlnZ2VyIDogXCJvbkNoYW5nZVwiO1xyXG4gICAgICBuZXdSdWxlcy5wdXNoKHtcclxuICAgICAgICB2YWxpZGF0b3I6IChfLCB2YWx1ZSkgPT4ge1xyXG4gICAgICAgICAgaWYgKCF2YWx1ZSB8fCB1dGlscy5jaGVja01vZGVsKHR5cGUsIHZhbHVlKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoXHJcbiAgICAgICAgICAgIG5ldyBFcnJvcihg6K+36L6T5YWl5q2j56Gu55qEJHt0eXBlTWVzc2FnZVt0eXBlXX3vvIFgKVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIC8vIHZhbGlkYXRlVHJpZ2dlcjogdmFsaWRhdGVUcmlnZ2VyLFxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSBpZiAodHlwZSkge1xyXG4gICAgICBuZXdSdWxlcy5wdXNoKHtcclxuICAgICAgICB0eXBlOiB0eXBlLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBsZXQgZmllbGRQcm9wcyA9IG9taXQodGhpcy5wcm9wcywgW1xyXG4gICAgICBcImxhYmVsXCIsXHJcbiAgICAgIFwicmVxdWlyZWRcIixcclxuICAgICAgXCJtZXNzYWdlXCIsXHJcbiAgICAgIFwidHlwZVwiLFxyXG4gICAgICBcIm5hbWVcIixcclxuICAgICAgXCJpbml0aWFsVmFsdWVcIixcclxuICAgICAgXCJ2YWx1ZVByb3BOYW1lXCIsXHJcbiAgICAgIFwicHJlZml4Q2xzXCIsXHJcbiAgICAgIFwibm9TdHlsZVwiLFxyXG4gICAgICBcInN0eWxlXCIsXHJcbiAgICAgIFwiaWRcIixcclxuICAgICAgXCJoaWRkZW5cIixcclxuICAgICAgXCJtZXNzYWdlVmFyaWFibGVzXCIsXHJcbiAgICAgIFwidG9vbHRpcFwiLFxyXG4gICAgICBcImNvbG9uXCIsXHJcbiAgICAgIFwiZGVwZW5kZW5jaWVzXCIsXHJcbiAgICAgIFwiZXh0cmFcIixcclxuICAgICAgXCJnZXRWYWx1ZUZyb21FdmVudFwiLFxyXG4gICAgICBcImdldFZhbHVlUHJvcHNcIixcclxuICAgICAgXCJoYXNGZWVkYmFja1wiLFxyXG4gICAgICBcImZpZWxkS2V5XCIsXHJcbiAgICAgIFwiaGVscFwiLFxyXG4gICAgICBcImh0bWxGb3JcIixcclxuICAgICAgXCJpc0xpc3RcIixcclxuICAgICAgXCJpc0xpc3RGaWVsZFwiLFxyXG4gICAgICBcImxhYmVsQWxpZ25cIixcclxuICAgICAgXCJsYWJlbENvbFwiLFxyXG4gICAgICBcIm5vcm1hbGl6ZVwiLFxyXG4gICAgICBcIm9uUmVzZXRcIixcclxuICAgICAgXCJwcmVzZXJ2ZVwiLFxyXG4gICAgICBcInZhbGlkYXRlRmlyc3RcIixcclxuICAgICAgXCJ2YWxpZGF0ZVN0YXR1c1wiLFxyXG4gICAgICBcInZhbGlkYXRlVHJpZ2dlclwiLFxyXG4gICAgICBcInZhbHVlUHJvcE5hbWVcIixcclxuICAgICAgXCJ3cmFwcGVyQ29sXCIsXHJcbiAgICBdKTtcclxuICAgIGxldCBmaWVsZFByb3BzS2V5ID0gW107XHJcbiAgICBmb3IgKGxldCBrZXkgaW4gZmllbGRQcm9wcykge1xyXG4gICAgICBmaWVsZFByb3BzS2V5LnB1c2goa2V5KTtcclxuICAgIH1cclxuICAgIGZpZWxkUHJvcHNLZXkucHVzaChbXCJydWxlc1wiLCBcIm1lc3NhZ2VcIiwgXCJyZXF1aXJlZFwiXSk7XHJcbiAgICBjb25zdCBDaGlsZCA9IHRoaXMuZ2V0RmllbGRDb21wb25lbnQoZmllbGRQcm9wcywgdGhpcy5wcm9wcyk7XHJcbiAgICBpZiAodGhpcy5jb21wb25lbnROYW1lID09PSBcIk5zY0lucHV0XCIpIHtcclxuICAgICAgaWYgKCFhbGxvd0NoYXJzKSB7XHJcbiAgICAgICAgdmFsaWRhdGVUcmlnZ2VyID0gdmFsaWRhdGVUcmlnZ2VyID8gdmFsaWRhdGVUcmlnZ2VyIDogXCJvbkNoYW5nZVwiO1xyXG4gICAgICAgIG5ld1J1bGVzLnB1c2goe1xyXG4gICAgICAgICAgdmFsaWRhdG9yOiAoXywgdmFsdWUpID0+IHtcclxuICAgICAgICAgICAgaWYgKCF2YWx1ZSB8fCB1dGlscy5jaGVja0NoYXJzKHZhbHVlKSkge1xyXG4gICAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKGDkuI3og73ovpPlhaXnibnmrorlrZfnrKbvvIFgKSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgdmFsaWRhdGVUcmlnZ2VyOiB2YWxpZGF0ZVRyaWdnZXIsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGxldCBpdGVtUHJvcHMgPSBvbWl0KHRoaXMucHJvcHMsIGZpZWxkUHJvcHNLZXkpO1xyXG4gICAgaXRlbVByb3BzID0ge1xyXG4gICAgICAuLi57IGxhYmVsLCBydWxlczpuZXdSdWxlcywgaGFzRmVlZGJhY2ssIHZhbGlkYXRlVHJpZ2dlciB9LFxyXG4gICAgICAuLi5pdGVtUHJvcHMsXHJcbiAgICB9O1xyXG5cclxuICAgIHJldHVybiA8Rm9ybS5JdGVtIHsuLi5pdGVtUHJvcHN9PntDaGlsZH08L0Zvcm0uSXRlbT47XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
package/lib/base/input/index.js
CHANGED
|
@@ -77,15 +77,6 @@ var NscInput = /*#__PURE__*/function (_PureComponent) {
|
|
|
77
77
|
}
|
|
78
78
|
|
|
79
79
|
_createClass(NscInput, [{
|
|
80
|
-
key: "componentDidUpdate",
|
|
81
|
-
value: function componentDidUpdate(prevProps, prevState) {
|
|
82
|
-
if (this.props.value !== this.state.value) {
|
|
83
|
-
this.setState({
|
|
84
|
-
value: this.props.value
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
}, {
|
|
89
80
|
key: "onChange",
|
|
90
81
|
value: function onChange(e) {
|
|
91
82
|
var _this$props = this.props,
|
|
@@ -248,4 +239,4 @@ _defineProperty(NscInput, "Group", _Input.Group);
|
|
|
248
239
|
_defineProperty(NscInput, "Search", Search);
|
|
249
240
|
|
|
250
241
|
export { NscInput as default };
|
|
251
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Jhc2UvaW5wdXQvaW5kZXgudHN4Il0sIm5hbWVzIjpbIlJlYWN0IiwiUHVyZUNvbXBvbmVudCIsIklucHV0RW1haWwiLCJQYXNzd29yZCIsIlRleHRBcmVhIiwiU2VhcmNoIiwiSW5wdXROdW1iZXIiLCJvbWl0IiwiY2xzIiwic3R5bGVzIiwiY29uZmlnIiwiTnNjSW5wdXQiLCJwcm9wcyIsImNyZWF0ZVJlZiIsInZhbHVlIiwicHJldlByb3BzIiwicHJldlN0YXRlIiwic3RhdGUiLCJzZXRTdGF0ZSIsImUiLCJvbkNoYW5nZSIsImFsbG93Q2hhcnMiLCJyZWciLCJyZWcyIiwicmVnMyIsInRhcmdldCIsInRlc3QiLCJyZWYiLCJjdXJyZW50IiwiZm9jdXMiLCJibHVyIiwidHlwZSIsImRlZmF1bHRTdHlsZSIsIm1heExlbmd0aCIsInBhcmFtcyIsIm51bWJlclByb3BzIiwiZW1haWxQcm9wcyIsInRleHRQcm9wcyIsInBhc3N3b3JkUHJvcHMiLCJpbnB1dFByb3BzIiwiYW50ZFN0eWxlIiwiY2xhc3NOYW1lIiwiYmluZCIsInJldHVybkNoaWxkcmVuIiwiR3JvdXAiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU9BLEtBQVAsSUFBZ0JDLGFBQWhCLFFBQXFDLE9BQXJDO0FBR0EsT0FBT0MsVUFBUCxNQUF1QixTQUF2QjtBQUNBLE9BQU9DLFFBQVAsTUFBcUIsWUFBckI7QUFDQSxPQUFPQyxRQUFQLE1BQXFCLFlBQXJCO0FBQ0EsT0FBT0MsTUFBUCxNQUFtQixVQUFuQjtBQUNBLE9BQU9DLFdBQVAsTUFBd0IsVUFBeEI7QUFDQSxPQUFPQyxJQUFQLE1BQWlCLFNBQWpCO0FBQ0EsT0FBT0MsR0FBUCxNQUFnQixZQUFoQjtBQUVBLE9BQU9DLE1BQVAsTUFBbUIsY0FBbkI7QUFFQSxPQUFPQyxNQUFQLE1BQW1CLGNBQW5COztJQVNxQkMsUTs7Ozs7QUFRbkIsb0JBQVlDLEtBQVosRUFBbUI7QUFBQTs7QUFBQTs7QUFDakIsOEJBQU1BLEtBQU47O0FBRGlCLHVFQURiWixLQUFLLENBQUNhLFNBQU4sRUFDYTs7QUFBQSw0REFHWDtBQUNOQyxNQUFBQSxLQUFLLEVBQUU7QUFERCxLQUhXOztBQUFBO0FBRWxCOzs7O1dBSUQsNEJBQW1CQyxTQUFuQixFQUE4QkMsU0FBOUIsRUFBeUM7QUFDdkMsVUFBSSxLQUFLSixLQUFMLENBQVdFLEtBQVgsS0FBcUIsS0FBS0csS0FBTCxDQUFXSCxLQUFwQyxFQUEyQztBQUN6QyxhQUFLSSxRQUFMLENBQWM7QUFDWkosVUFBQUEsS0FBSyxFQUFFLEtBQUtGLEtBQUwsQ0FBV0U7QUFETixTQUFkO0FBR0Q7QUFDRjs7O1dBQ0Qsa0JBQVNLLENBQVQsRUFBWTtBQUNWLHdCQUF5QyxLQUFLUCxLQUE5QztBQUFBLFVBQVFRLFFBQVIsZUFBUUEsUUFBUjtBQUFBLDhDQUFrQkMsVUFBbEI7QUFBQSxVQUFrQkEsVUFBbEIsc0NBQStCLEtBQS9CO0FBQ0EsVUFBTUMsR0FBRyxHQUFHLDBDQUFaO0FBQ0EsVUFBTUMsSUFBSSxHQUFHLG9CQUFiO0FBQ0EsVUFBTUMsSUFBSSxHQUFHLHFCQUFiOztBQUNBLFVBQUlKLFFBQUosRUFBYztBQUNaLFlBQUlDLFVBQUosRUFBZ0I7QUFDZCxlQUFLSCxRQUFMLENBQWM7QUFDWkosWUFBQUEsS0FBSyxFQUFFSyxDQUFDLENBQUNNLE1BQUYsQ0FBU1g7QUFESixXQUFkO0FBR0FNLFVBQUFBLFFBQVEsQ0FBQ0QsQ0FBQyxDQUFDTSxNQUFGLENBQVNYLEtBQVYsRUFBaUJLLENBQWpCLENBQVI7QUFDRCxTQUxELE1BS087QUFDTCxjQUFNTCxNQUFLLEdBQUdLLENBQUMsQ0FBQ00sTUFBRixDQUFTWCxLQUF2Qjs7QUFDQSxjQUFJUSxHQUFHLENBQUNJLElBQUosQ0FBU1osTUFBVCxLQUFtQlMsSUFBSSxDQUFDRyxJQUFMLENBQVVaLE1BQVYsQ0FBbkIsSUFBdUNVLElBQUksQ0FBQ0UsSUFBTCxDQUFVWixNQUFWLENBQTNDLEVBQTZEO0FBQzNELGlCQUFLSSxRQUFMLENBQWM7QUFDWkosY0FBQUEsS0FBSyxFQUFFSyxDQUFDLENBQUNNLE1BQUYsQ0FBU1g7QUFESixhQUFkO0FBR0FNLFlBQUFBLFFBQVEsQ0FBQ0QsQ0FBQyxDQUFDTSxNQUFGLENBQVNYLEtBQVYsRUFBaUJLLENBQWpCLENBQVI7QUFDRDtBQUNGO0FBQ0YsT0FmRCxNQWVPO0FBQ0wsWUFBSUUsVUFBSixFQUFnQjtBQUNkLGVBQUtILFFBQUwsQ0FBYztBQUNaSixZQUFBQSxLQUFLLEVBQUVLLENBQUMsQ0FBQ00sTUFBRixDQUFTWDtBQURKLFdBQWQ7QUFHRCxTQUpELE1BSU87QUFDTCxjQUFNQSxPQUFLLEdBQUdLLENBQUMsQ0FBQ00sTUFBRixDQUFTWCxLQUF2Qjs7QUFDQSxjQUFJUSxHQUFHLENBQUNJLElBQUosQ0FBU1osT0FBVCxLQUFtQlMsSUFBSSxDQUFDRyxJQUFMLENBQVVaLE9BQVYsQ0FBbkIsSUFBdUNVLElBQUksQ0FBQ0UsSUFBTCxDQUFVWixPQUFWLENBQTNDLEVBQTZEO0FBQzNELGlCQUFLSSxRQUFMLENBQWM7QUFDWkosY0FBQUEsS0FBSyxFQUFFSyxDQUFDLENBQUNNLE1BQUYsQ0FBU1g7QUFESixhQUFkO0FBR0Q7QUFDRjtBQUNGO0FBQ0Y7OztXQUNELG9CQUFXO0FBQ1QsYUFBTyxLQUFLRyxLQUFMLENBQVdILEtBQWxCO0FBQ0Q7OztXQUNELGtCQUFTQSxLQUFULEVBQWdCO0FBQ2QsV0FBS0ksUUFBTCxDQUFjO0FBQ1pKLFFBQUFBLEtBQUssRUFBRUE7QUFESyxPQUFkO0FBR0Q7OztXQUVELGlCQUFRO0FBQUE7O0FBQ04sZ0NBQUthLEdBQUwsQ0FBU0MsT0FBVCx3RUFBa0JDLEtBQWxCO0FBQ0Q7OztXQUVELGdCQUFPO0FBQUE7O0FBQ0wsaUNBQUtGLEdBQUwsQ0FBU0MsT0FBVCwwRUFBa0JFLElBQWxCO0FBQ0Q7OztXQUVELDBCQUFpQjtBQUNmLHlCQUErRCxLQUFLbEIsS0FBcEU7QUFBQSxVQUFRbUIsSUFBUixnQkFBUUEsSUFBUjtBQUFBLFVBQWNYLFFBQWQsZ0JBQWNBLFFBQWQ7QUFBQSxVQUF3QlksWUFBeEIsZ0JBQXdCQSxZQUF4QjtBQUFBLFVBQXNDQyxTQUF0QyxnQkFBc0NBLFNBQXRDO0FBQUEsVUFBb0RDLE1BQXBEOztBQUVBLFVBQUlILElBQUksSUFBSSxRQUFaLEVBQXNCO0FBQ3BCLFlBQU1JLFdBQVcsR0FBRzVCLElBQUksQ0FBQyxLQUFLSyxLQUFOLEVBQWEsQ0FBQyxNQUFELEVBQVMsY0FBVCxDQUFiLENBQXhCO0FBQ0EsNEJBQU8sb0JBQUMsV0FBRCxlQUFpQnVCLFdBQWpCO0FBQThCLFVBQUEsR0FBRyxFQUFFLEtBQUtSO0FBQXhDLFdBQVA7QUFDRCxPQUhELE1BR08sSUFBSUksSUFBSSxJQUFJLE9BQVosRUFBcUI7QUFDMUIsWUFBTUssVUFBVSxHQUFHN0IsSUFBSSxDQUFDLEtBQUtLLEtBQU4sRUFBYSxDQUFDLE1BQUQsRUFBUyxjQUFULENBQWIsQ0FBdkI7QUFDQSw0QkFBTyxvQkFBQyxVQUFELGVBQWdCd0IsVUFBaEI7QUFBNEIsVUFBQSxHQUFHLEVBQUUsS0FBS1Q7QUFBdEMsV0FBUDtBQUNELE9BSE0sTUFHQSxJQUFJSSxJQUFJLElBQUksVUFBWixFQUF3QjtBQUM3QixZQUFNTSxTQUFTLEdBQUc5QixJQUFJLENBQUMsS0FBS0ssS0FBTixFQUFhLENBQUMsTUFBRCxFQUFTLGNBQVQsQ0FBYixDQUF0QjtBQUNBLDRCQUFPLG9CQUFDLFFBQUQsZUFBY3lCLFNBQWQ7QUFBeUIsVUFBQSxHQUFHLEVBQUUsS0FBS1Y7QUFBbkMsV0FBUDtBQUNELE9BSE0sTUFHQSxJQUFJSSxJQUFJLElBQUksVUFBWixFQUF3QjtBQUM3QixZQUFJTyxhQUFhLEdBQUcvQixJQUFJLENBQUMsS0FBS0ssS0FBTixFQUFhLENBQ25DLE1BRG1DLEVBRW5DLFdBRm1DLEVBR25DLGNBSG1DLEVBSW5DLFlBSm1DLENBQWIsQ0FBeEI7O0FBTUEsWUFBSSxFQUFFcUIsU0FBUyxLQUFLLEtBQWhCLENBQUosRUFBNEI7QUFDMUJLLFVBQUFBLGFBQWE7QUFDWEwsWUFBQUEsU0FBUyxFQUFFQSxTQUFTLEdBQUdBLFNBQUgsR0FBZTtBQUR4QixhQUVSSyxhQUZRLENBQWI7QUFJRDs7QUFDRCw0QkFBTyxvQkFBQyxRQUFELGVBQWNBLGFBQWQ7QUFBNkIsVUFBQSxHQUFHLEVBQUUsS0FBS1g7QUFBdkMsV0FBUDtBQUNELE9BZE0sTUFjQTtBQUNMLFlBQUlZLFVBQVUsR0FBR2hDLElBQUksQ0FBQyxLQUFLSyxLQUFOLEVBQWEsQ0FDaEMsVUFEZ0MsRUFFaEMsY0FGZ0MsRUFHaEMsWUFIZ0MsRUFJaEMsV0FKZ0MsQ0FBYixDQUFyQjs7QUFNQSxZQUFJLEVBQUVxQixTQUFTLEtBQUssS0FBaEIsQ0FBSixFQUE0QjtBQUMxQk0sVUFBQUEsVUFBVTtBQUFLTixZQUFBQSxTQUFTLEVBQUVBLFNBQVMsR0FBR0EsU0FBSCxHQUFlO0FBQXhDLGFBQStDTSxVQUEvQyxDQUFWO0FBQ0Q7O0FBQ0Qsc0JBQW9CN0IsTUFBTSxFQUExQjtBQUFBLFlBQU04QixTQUFOLFdBQU1BLFNBQU47O0FBQ0EsWUFBSSxDQUFDUixZQUFZLElBQUlRLFNBQWpCLEtBQStCUixZQUFZLEtBQUssSUFBcEQsRUFBMEQ7QUFDeEQsOEJBQ0U7QUFBSyxZQUFBLFNBQVMsRUFBRXhCLEdBQUcsQ0FBQ0MsTUFBTSxDQUFDLFdBQUQsQ0FBUCxFQUFzQixLQUFLRyxLQUFMLENBQVc2QixTQUFqQztBQUFuQiwwQkFDRTtBQUNFLFlBQUEsV0FBVyxFQUFDLG9CQURkO0FBRUUsWUFBQSxRQUFRLEVBQUUsS0FBS3JCLFFBQUwsQ0FBY3NCLElBQWQsQ0FBbUIsSUFBbkIsQ0FGWjtBQUdFLFlBQUEsVUFBVSxFQUFFLElBSGQ7QUFJRSxZQUFBLEtBQUssRUFBRSxLQUFLekIsS0FBTCxDQUFXSDtBQUpwQixhQUtNeUIsVUFMTjtBQU1FLFlBQUEsR0FBRyxFQUFFLEtBQUtaO0FBTlosYUFERixDQURGO0FBWUQsU0FiRCxNQWFPO0FBQ0wsOEJBQ0U7QUFDRSxZQUFBLFdBQVcsRUFBQyxvQkFEZDtBQUVFLFlBQUEsUUFBUSxFQUFFLEtBQUtQLFFBQUwsQ0FBY3NCLElBQWQsQ0FBbUIsSUFBbkIsQ0FGWjtBQUdFLFlBQUEsVUFBVSxFQUFFLElBSGQ7QUFJRSxZQUFBLEtBQUssRUFBRSxLQUFLekIsS0FBTCxDQUFXSCxLQUpwQjtBQUtFLFlBQUEsR0FBRyxFQUFFLEtBQUthO0FBTFosYUFNTVksVUFOTixFQURGO0FBVUQ7QUFDRjtBQUNGOzs7V0FDRCxrQkFBUztBQUNQLDBCQUFPLDBDQUFHLEtBQUtJLGNBQUwsRUFBSCxDQUFQO0FBQ0Q7Ozs7RUEzSW1DMUMsYTs7Z0JBQWpCVSxRLFlBQ0hMLFc7O2dCQURHSyxRLFdBRUpULFU7O2dCQUZJUyxRLGNBR0RSLFE7O2dCQUhDUSxRLGNBSURQLFE7O2dCQUpDTyxRLFdBS0osT0FBTWlDLEs7O2dCQUxGakMsUSxZQU1ITixNOztTQU5HTSxRIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogQERlc2NyaXB0dGlvbjogaW5wdXTnu4Tku7bvvIznm7TmjqXov5Tlm552YWx1ZSzliqDlr4blkI7nmoR2YWx1ZeS7peWPiuagoemqjOeahOWAvFxyXG4gKiBAdmVyc2lvbjpcclxuICogQEF1dGhvcjogcnh6aHVcclxuICogQERhdGU6IDIwMjEtMDMtMjQgMTc6MTU6NDdcclxuICogQExhc3RFZGl0b3JzOiByeHpodVxyXG4gKiBATGFzdEVkaXRUaW1lOiAyMDIxLTA0LTIyIDE0OjIwOjA5XHJcbiAqL1xyXG5pbXBvcnQgUmVhY3QsIHsgUHVyZUNvbXBvbmVudCB9IGZyb20gXCJyZWFjdFwiO1xyXG5cclxuaW1wb3J0IHsgSW5wdXQsIElucHV0UHJvcHMgfSBmcm9tIFwiYW50ZFwiO1xyXG5pbXBvcnQgSW5wdXRFbWFpbCBmcm9tIFwiLi9FbWFpbFwiO1xyXG5pbXBvcnQgUGFzc3dvcmQgZnJvbSBcIi4vUGFzc3dvcmRcIjtcclxuaW1wb3J0IFRleHRBcmVhIGZyb20gXCIuL1RleHRBcmVhXCI7XHJcbmltcG9ydCBTZWFyY2ggZnJvbSBcIi4vU2VhcmNoXCI7XHJcbmltcG9ydCBJbnB1dE51bWJlciBmcm9tIFwiLi9OdW1iZXJcIjtcclxuaW1wb3J0IG9taXQgZnJvbSBcIm9taXQuanNcIjtcclxuaW1wb3J0IGNscyBmcm9tIFwiY2xhc3NuYW1lc1wiO1xyXG5cclxuaW1wb3J0IHN0eWxlcyBmcm9tIFwiLi9pbmRleC5sZXNzXCI7XHJcbmltcG9ydCB7IEZhc3RGb3J3YXJkRmlsbGVkIH0gZnJvbSBcIkBhbnQtZGVzaWduL2ljb25zXCI7XHJcbmltcG9ydCBjb25maWcgZnJvbSBcIi4uLy4uL2NvbmZpZ1wiO1xyXG5pbnRlcmZhY2UgSUlucHV0UHJvcHMge1xyXG4gIHR5cGU/OiBcIm51bWJlclwiIHwgXCJlbWFpbFwiIHwgXCJwYXNzd29yZFwiIHwgXCJ0ZXh0YXJlYVwiIHwgXCJ0ZXh0XCI7XHJcbiAgb25DaGFuZ2U/OiAodmFsdWU6IGFueSwgdGFyZ2V0PzogYW55KSA9PiB2b2lkO1xyXG4gIGRlZmF1bHRTdHlsZT86IGJvb2xlYW47XHJcbiAgYWxsb3dDaGFycz86IGJvb2xlYW47XHJcbiAgbWF4TGVuZ3RoPzogbnVtYmVyIHwgYm9vbGVhbjtcclxuICBbcHJvTmFtZTogc3RyaW5nXTogYW55O1xyXG59XHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5zY0lucHV0IGV4dGVuZHMgUHVyZUNvbXBvbmVudDxJSW5wdXRQcm9wcywgYW55PiB7XHJcbiAgc3RhdGljIE51bWJlciA9IElucHV0TnVtYmVyO1xyXG4gIHN0YXRpYyBFbWFpbCA9IElucHV0RW1haWw7XHJcbiAgc3RhdGljIFBhc3N3b3JkID0gUGFzc3dvcmQ7XHJcbiAgc3RhdGljIFRleHRBcmVhID0gVGV4dEFyZWE7XHJcbiAgc3RhdGljIEdyb3VwID0gSW5wdXQuR3JvdXA7XHJcbiAgc3RhdGljIFNlYXJjaCA9IFNlYXJjaDtcclxuICByZWYgPSBSZWFjdC5jcmVhdGVSZWY8YW55PigpO1xyXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgfVxyXG4gIHN0YXRlID0ge1xyXG4gICAgdmFsdWU6IFwiXCIsXHJcbiAgfTtcclxuICBjb21wb25lbnREaWRVcGRhdGUocHJldlByb3BzLCBwcmV2U3RhdGUpIHtcclxuICAgIGlmICh0aGlzLnByb3BzLnZhbHVlICE9PSB0aGlzLnN0YXRlLnZhbHVlKSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgIHZhbHVlOiB0aGlzLnByb3BzLnZhbHVlLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbiAgb25DaGFuZ2UoZSkge1xyXG4gICAgY29uc3QgeyBvbkNoYW5nZSwgYWxsb3dDaGFycyA9IGZhbHNlIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgcmVnID0gL15bMC05YS16QS1aXFx1NEUwMC1cXHU5RkE1XFx1RjkwMC1cXHVGQTJEXSokLztcclxuICAgIGNvbnN0IHJlZzIgPSAvW2EtekEtWl0nW2EtekEtWl0vZztcclxuICAgIGNvbnN0IHJlZzMgPSAvW2EtekEtWl1cXHNbYS16QS1aXS9nO1xyXG4gICAgaWYgKG9uQ2hhbmdlKSB7XHJcbiAgICAgIGlmIChhbGxvd0NoYXJzKSB7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICB2YWx1ZTogZS50YXJnZXQudmFsdWUsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgb25DaGFuZ2UoZS50YXJnZXQudmFsdWUsIGUpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGNvbnN0IHZhbHVlID0gZS50YXJnZXQudmFsdWU7XHJcbiAgICAgICAgaWYgKHJlZy50ZXN0KHZhbHVlKSB8fCByZWcyLnRlc3QodmFsdWUpIHx8IHJlZzMudGVzdCh2YWx1ZSkpIHtcclxuICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICB2YWx1ZTogZS50YXJnZXQudmFsdWUsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIG9uQ2hhbmdlKGUudGFyZ2V0LnZhbHVlLCBlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChhbGxvd0NoYXJzKSB7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICB2YWx1ZTogZS50YXJnZXQudmFsdWUsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgY29uc3QgdmFsdWUgPSBlLnRhcmdldC52YWx1ZTtcclxuICAgICAgICBpZiAocmVnLnRlc3QodmFsdWUpIHx8IHJlZzIudGVzdCh2YWx1ZSkgfHwgcmVnMy50ZXN0KHZhbHVlKSkge1xyXG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgIHZhbHVlOiBlLnRhcmdldC52YWx1ZSxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBnZXRWYWx1ZSgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXRlLnZhbHVlO1xyXG4gIH1cclxuICBzZXRWYWx1ZSh2YWx1ZSkge1xyXG4gICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgIHZhbHVlOiB2YWx1ZSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZm9jdXMoKSB7XHJcbiAgICB0aGlzLnJlZi5jdXJyZW50Py5mb2N1cygpO1xyXG4gIH1cclxuXHJcbiAgYmx1cigpIHtcclxuICAgIHRoaXMucmVmLmN1cnJlbnQ/LmJsdXIoKTtcclxuICB9XHJcblxyXG4gIHJldHVybkNoaWxkcmVuKCkge1xyXG4gICAgY29uc3QgeyB0eXBlLCBvbkNoYW5nZSwgZGVmYXVsdFN0eWxlLCBtYXhMZW5ndGgsIC4uLnBhcmFtcyB9ID0gdGhpcy5wcm9wcztcclxuXHJcbiAgICBpZiAodHlwZSA9PSBcIm51bWJlclwiKSB7XHJcbiAgICAgIGNvbnN0IG51bWJlclByb3BzID0gb21pdCh0aGlzLnByb3BzLCBbXCJ0eXBlXCIsIFwiZGVmYXVsdFN0eWxlXCJdKTtcclxuICAgICAgcmV0dXJuIDxJbnB1dE51bWJlciB7Li4ubnVtYmVyUHJvcHN9IHJlZj17dGhpcy5yZWZ9IC8+O1xyXG4gICAgfSBlbHNlIGlmICh0eXBlID09IFwiZW1haWxcIikge1xyXG4gICAgICBjb25zdCBlbWFpbFByb3BzID0gb21pdCh0aGlzLnByb3BzLCBbXCJ0eXBlXCIsIFwiZGVmYXVsdFN0eWxlXCJdKTtcclxuICAgICAgcmV0dXJuIDxJbnB1dEVtYWlsIHsuLi5lbWFpbFByb3BzfSByZWY9e3RoaXMucmVmfSAvPjtcclxuICAgIH0gZWxzZSBpZiAodHlwZSA9PSBcInRleHRhcmVhXCIpIHtcclxuICAgICAgY29uc3QgdGV4dFByb3BzID0gb21pdCh0aGlzLnByb3BzLCBbXCJ0eXBlXCIsIFwiZGVmYXVsdFN0eWxlXCJdKTtcclxuICAgICAgcmV0dXJuIDxUZXh0QXJlYSB7Li4udGV4dFByb3BzfSByZWY9e3RoaXMucmVmfSAvPjtcclxuICAgIH0gZWxzZSBpZiAodHlwZSA9PSBcInBhc3N3b3JkXCIpIHtcclxuICAgICAgbGV0IHBhc3N3b3JkUHJvcHMgPSBvbWl0KHRoaXMucHJvcHMsIFtcclxuICAgICAgICBcInR5cGVcIixcclxuICAgICAgICBcIm1heExlbmd0aFwiLFxyXG4gICAgICAgIFwiZGVmYXVsdFN0eWxlXCIsXHJcbiAgICAgICAgXCJhbGxvd0NoYXJzXCIsXHJcbiAgICAgIF0pO1xyXG4gICAgICBpZiAoIShtYXhMZW5ndGggPT09IGZhbHNlKSkge1xyXG4gICAgICAgIHBhc3N3b3JkUHJvcHMgPSB7XHJcbiAgICAgICAgICBtYXhMZW5ndGg6IG1heExlbmd0aCA/IG1heExlbmd0aCA6IDUwLFxyXG4gICAgICAgICAgLi4ucGFzc3dvcmRQcm9wcyxcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiA8UGFzc3dvcmQgey4uLnBhc3N3b3JkUHJvcHN9IHJlZj17dGhpcy5yZWZ9IC8+O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbGV0IGlucHV0UHJvcHMgPSBvbWl0KHRoaXMucHJvcHMsIFtcclxuICAgICAgICBcIm9uQ2hhbmdlXCIsXHJcbiAgICAgICAgXCJkZWZhdWx0U3R5bGVcIixcclxuICAgICAgICBcImFsbG93Q2hhcnNcIixcclxuICAgICAgICBcIm1heExlbmd0aFwiLFxyXG4gICAgICBdKTtcclxuICAgICAgaWYgKCEobWF4TGVuZ3RoID09PSBmYWxzZSkpIHtcclxuICAgICAgICBpbnB1dFByb3BzID0geyBtYXhMZW5ndGg6IG1heExlbmd0aCA/IG1heExlbmd0aCA6IDUwLCAuLi5pbnB1dFByb3BzIH07XHJcbiAgICAgIH1cclxuICAgICAgbGV0IHsgYW50ZFN0eWxlIH0gPSBjb25maWcoKTtcclxuICAgICAgaWYgKChkZWZhdWx0U3R5bGUgfHwgYW50ZFN0eWxlKSAmJiBkZWZhdWx0U3R5bGUgPT09IHRydWUpIHtcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NscyhzdHlsZXNbXCJuc2NfaW5wdXRcIl0sIHRoaXMucHJvcHMuY2xhc3NOYW1lKX0+XHJcbiAgICAgICAgICAgIDxJbnB1dFxyXG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwi6K+36L6T5YWlXCJcclxuICAgICAgICAgICAgICBvbkNoYW5nZT17dGhpcy5vbkNoYW5nZS5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgICAgIGFsbG93Q2xlYXI9e3RydWV9XHJcbiAgICAgICAgICAgICAgdmFsdWU9e3RoaXMuc3RhdGUudmFsdWV9XHJcbiAgICAgICAgICAgICAgey4uLmlucHV0UHJvcHN9XHJcbiAgICAgICAgICAgICAgcmVmPXt0aGlzLnJlZn1cclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgIDxJbnB1dFxyXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpVwiXHJcbiAgICAgICAgICAgIG9uQ2hhbmdlPXt0aGlzLm9uQ2hhbmdlLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICAgIGFsbG93Q2xlYXI9e3RydWV9XHJcbiAgICAgICAgICAgIHZhbHVlPXt0aGlzLnN0YXRlLnZhbHVlfVxyXG4gICAgICAgICAgICByZWY9e3RoaXMucmVmfVxyXG4gICAgICAgICAgICB7Li4uaW5wdXRQcm9wc31cclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICByZW5kZXIoKSB7XHJcbiAgICByZXR1cm4gPD57dGhpcy5yZXR1cm5DaGlsZHJlbigpfTwvPjtcclxuICB9XHJcbn1cclxuIl19
|
|
242
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Jhc2UvaW5wdXQvaW5kZXgudHN4Il0sIm5hbWVzIjpbIlJlYWN0IiwiUHVyZUNvbXBvbmVudCIsIklucHV0RW1haWwiLCJQYXNzd29yZCIsIlRleHRBcmVhIiwiU2VhcmNoIiwiSW5wdXROdW1iZXIiLCJvbWl0IiwiY2xzIiwic3R5bGVzIiwiY29uZmlnIiwiTnNjSW5wdXQiLCJwcm9wcyIsImNyZWF0ZVJlZiIsInZhbHVlIiwiZSIsIm9uQ2hhbmdlIiwiYWxsb3dDaGFycyIsInJlZyIsInJlZzIiLCJyZWczIiwic2V0U3RhdGUiLCJ0YXJnZXQiLCJ0ZXN0Iiwic3RhdGUiLCJyZWYiLCJjdXJyZW50IiwiZm9jdXMiLCJibHVyIiwidHlwZSIsImRlZmF1bHRTdHlsZSIsIm1heExlbmd0aCIsInBhcmFtcyIsIm51bWJlclByb3BzIiwiZW1haWxQcm9wcyIsInRleHRQcm9wcyIsInBhc3N3b3JkUHJvcHMiLCJpbnB1dFByb3BzIiwiYW50ZFN0eWxlIiwiY2xhc3NOYW1lIiwiYmluZCIsInJldHVybkNoaWxkcmVuIiwiR3JvdXAiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU9BLEtBQVAsSUFBZ0JDLGFBQWhCLFFBQXFDLE9BQXJDO0FBR0EsT0FBT0MsVUFBUCxNQUF1QixTQUF2QjtBQUNBLE9BQU9DLFFBQVAsTUFBcUIsWUFBckI7QUFDQSxPQUFPQyxRQUFQLE1BQXFCLFlBQXJCO0FBQ0EsT0FBT0MsTUFBUCxNQUFtQixVQUFuQjtBQUNBLE9BQU9DLFdBQVAsTUFBd0IsVUFBeEI7QUFDQSxPQUFPQyxJQUFQLE1BQWlCLFNBQWpCO0FBQ0EsT0FBT0MsR0FBUCxNQUFnQixZQUFoQjtBQUVBLE9BQU9DLE1BQVAsTUFBbUIsY0FBbkI7QUFFQSxPQUFPQyxNQUFQLE1BQW1CLGNBQW5COztJ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O0FBVUQ7QUFDRjtBQUNGOzs7V0FDRCxrQkFBUztBQUNQLDBCQUFPLDBDQUFHLEtBQUtJLGNBQUwsRUFBSCxDQUFQO0FBQ0Q7Ozs7RUFwSW1DeEMsYTs7Z0JBQWpCVSxRLFlBQ0hMLFc7O2dCQURHSyxRLFdBRUpULFU7O2dCQUZJUyxRLGNBR0RSLFE7O2dCQUhDUSxRLGNBSURQLFE7O2dCQUpDTyxRLFdBS0osT0FBTStCLEs7O2dCQUxGL0IsUSxZQU1ITixNOztTQU5HTSxRIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogQERlc2NyaXB0dGlvbjogaW5wdXTnu4Tku7bvvIznm7TmjqXov5Tlm552YWx1ZSzliqDlr4blkI7nmoR2YWx1ZeS7peWPiuagoemqjOeahOWAvFxyXG4gKiBAdmVyc2lvbjpcclxuICogQEF1dGhvcjogcnh6aHVcclxuICogQERhdGU6IDIwMjEtMDMtMjQgMTc6MTU6NDdcclxuICogQExhc3RFZGl0b3JzOiByeHpodVxyXG4gKiBATGFzdEVkaXRUaW1lOiAyMDIxLTA0LTIyIDE0OjIwOjA5XHJcbiAqL1xyXG5pbXBvcnQgUmVhY3QsIHsgUHVyZUNvbXBvbmVudCB9IGZyb20gXCJyZWFjdFwiO1xyXG5cclxuaW1wb3J0IHsgSW5wdXQsIElucHV0UHJvcHMgfSBmcm9tIFwiYW50ZFwiO1xyXG5pbXBvcnQgSW5wdXRFbWFpbCBmcm9tIFwiLi9FbWFpbFwiO1xyXG5pbXBvcnQgUGFzc3dvcmQgZnJvbSBcIi4vUGFzc3dvcmRcIjtcclxuaW1wb3J0IFRleHRBcmVhIGZyb20gXCIuL1RleHRBcmVhXCI7XHJcbmltcG9ydCBTZWFyY2ggZnJvbSBcIi4vU2VhcmNoXCI7XHJcbmltcG9ydCBJbnB1dE51bWJlciBmcm9tIFwiLi9OdW1iZXJcIjtcclxuaW1wb3J0IG9taXQgZnJvbSBcIm9taXQuanNcIjtcclxuaW1wb3J0IGNscyBmcm9tIFwiY2xhc3NuYW1lc1wiO1xyXG5cclxuaW1wb3J0IHN0eWxlcyBmcm9tIFwiLi9pbmRleC5sZXNzXCI7XHJcbmltcG9ydCB7IEZhc3RGb3J3YXJkRmlsbGVkIH0gZnJvbSBcIkBhbnQtZGVzaWduL2ljb25zXCI7XHJcbmltcG9ydCBjb25maWcgZnJvbSBcIi4uLy4uL2NvbmZpZ1wiO1xyXG5pbnRlcmZhY2UgSUlucHV0UHJvcHMge1xyXG4gIHR5cGU/OiBcIm51bWJlclwiIHwgXCJlbWFpbFwiIHwgXCJwYXNzd29yZFwiIHwgXCJ0ZXh0YXJlYVwiIHwgXCJ0ZXh0XCI7XHJcbiAgb25DaGFuZ2U/OiAodmFsdWU6IGFueSwgdGFyZ2V0PzogYW55KSA9PiB2b2lkO1xyXG4gIGRlZmF1bHRTdHlsZT86IGJvb2xlYW47XHJcbiAgYWxsb3dDaGFycz86IGJvb2xlYW47XHJcbiAgbWF4TGVuZ3RoPzogbnVtYmVyIHwgYm9vbGVhbjtcclxuICBbcHJvTmFtZTogc3RyaW5nXTogYW55O1xyXG59XHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5zY0lucHV0IGV4dGVuZHMgUHVyZUNvbXBvbmVudDxJSW5wdXRQcm9wcywgYW55PiB7XHJcbiAgc3RhdGljIE51bWJlciA9IElucHV0TnVtYmVyO1xyXG4gIHN0YXRpYyBFbWFpbCA9IElucHV0RW1haWw7XHJcbiAgc3RhdGljIFBhc3N3b3JkID0gUGFzc3dvcmQ7XHJcbiAgc3RhdGljIFRleHRBcmVhID0gVGV4dEFyZWE7XHJcbiAgc3RhdGljIEdyb3VwID0gSW5wdXQuR3JvdXA7XHJcbiAgc3RhdGljIFNlYXJjaCA9IFNlYXJjaDtcclxuICByZWYgPSBSZWFjdC5jcmVhdGVSZWY8YW55PigpO1xyXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgfVxyXG4gIHN0YXRlID0ge1xyXG4gICAgdmFsdWU6IFwiXCIsXHJcbiAgfTtcclxuICBvbkNoYW5nZShlKSB7XHJcbiAgICBjb25zdCB7IG9uQ2hhbmdlLCBhbGxvd0NoYXJzID0gZmFsc2UgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCByZWcgPSAvXlswLTlhLXpBLVpcXHU0RTAwLVxcdTlGQTVcXHVGOTAwLVxcdUZBMkRdKiQvO1xyXG4gICAgY29uc3QgcmVnMiA9IC9bYS16QS1aXSdbYS16QS1aXS9nO1xyXG4gICAgY29uc3QgcmVnMyA9IC9bYS16QS1aXVxcc1thLXpBLVpdL2c7XHJcbiAgICBpZiAob25DaGFuZ2UpIHtcclxuICAgICAgaWYgKGFsbG93Q2hhcnMpIHtcclxuICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgIHZhbHVlOiBlLnRhcmdldC52YWx1ZSxcclxuICAgICAgICB9KTtcclxuICAgICAgICBvbkNoYW5nZShlLnRhcmdldC52YWx1ZSwgZSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgY29uc3QgdmFsdWUgPSBlLnRhcmdldC52YWx1ZTtcclxuICAgICAgICBpZiAocmVnLnRlc3QodmFsdWUpIHx8IHJlZzIudGVzdCh2YWx1ZSkgfHwgcmVnMy50ZXN0KHZhbHVlKSkge1xyXG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgIHZhbHVlOiBlLnRhcmdldC52YWx1ZSxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgb25DaGFuZ2UoZS50YXJnZXQudmFsdWUsIGUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKGFsbG93Q2hhcnMpIHtcclxuICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgIHZhbHVlOiBlLnRhcmdldC52YWx1ZSxcclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb25zdCB2YWx1ZSA9IGUudGFyZ2V0LnZhbHVlO1xyXG4gICAgICAgIGlmIChyZWcudGVzdCh2YWx1ZSkgfHwgcmVnMi50ZXN0KHZhbHVlKSB8fCByZWczLnRlc3QodmFsdWUpKSB7XHJcbiAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgICAgdmFsdWU6IGUudGFyZ2V0LnZhbHVlLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIGdldFZhbHVlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RhdGUudmFsdWU7XHJcbiAgfVxyXG4gIHNldFZhbHVlKHZhbHVlKSB7XHJcbiAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgdmFsdWU6IHZhbHVlLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBmb2N1cygpIHtcclxuICAgIHRoaXMucmVmLmN1cnJlbnQ/LmZvY3VzKCk7XHJcbiAgfVxyXG5cclxuICBibHVyKCkge1xyXG4gICAgdGhpcy5yZWYuY3VycmVudD8uYmx1cigpO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuQ2hpbGRyZW4oKSB7XHJcbiAgICBjb25zdCB7IHR5cGUsIG9uQ2hhbmdlLCBkZWZhdWx0U3R5bGUsIG1heExlbmd0aCwgLi4ucGFyYW1zIH0gPSB0aGlzLnByb3BzO1xyXG5cclxuICAgIGlmICh0eXBlID09IFwibnVtYmVyXCIpIHtcclxuICAgICAgY29uc3QgbnVtYmVyUHJvcHMgPSBvbWl0KHRoaXMucHJvcHMsIFtcInR5cGVcIiwgXCJkZWZhdWx0U3R5bGVcIl0pO1xyXG4gICAgICByZXR1cm4gPElucHV0TnVtYmVyIHsuLi5udW1iZXJQcm9wc30gcmVmPXt0aGlzLnJlZn0gLz47XHJcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJlbWFpbFwiKSB7XHJcbiAgICAgIGNvbnN0IGVtYWlsUHJvcHMgPSBvbWl0KHRoaXMucHJvcHMsIFtcInR5cGVcIiwgXCJkZWZhdWx0U3R5bGVcIl0pO1xyXG4gICAgICByZXR1cm4gPElucHV0RW1haWwgey4uLmVtYWlsUHJvcHN9IHJlZj17dGhpcy5yZWZ9IC8+O1xyXG4gICAgfSBlbHNlIGlmICh0eXBlID09IFwidGV4dGFyZWFcIikge1xyXG4gICAgICBjb25zdCB0ZXh0UHJvcHMgPSBvbWl0KHRoaXMucHJvcHMsIFtcInR5cGVcIiwgXCJkZWZhdWx0U3R5bGVcIl0pO1xyXG4gICAgICByZXR1cm4gPFRleHRBcmVhIHsuLi50ZXh0UHJvcHN9IHJlZj17dGhpcy5yZWZ9IC8+O1xyXG4gICAgfSBlbHNlIGlmICh0eXBlID09IFwicGFzc3dvcmRcIikge1xyXG4gICAgICBsZXQgcGFzc3dvcmRQcm9wcyA9IG9taXQodGhpcy5wcm9wcywgW1xyXG4gICAgICAgIFwidHlwZVwiLFxyXG4gICAgICAgIFwibWF4TGVuZ3RoXCIsXHJcbiAgICAgICAgXCJkZWZhdWx0U3R5bGVcIixcclxuICAgICAgICBcImFsbG93Q2hhcnNcIixcclxuICAgICAgXSk7XHJcbiAgICAgIGlmICghKG1heExlbmd0aCA9PT0gZmFsc2UpKSB7XHJcbiAgICAgICAgcGFzc3dvcmRQcm9wcyA9IHtcclxuICAgICAgICAgIG1heExlbmd0aDogbWF4TGVuZ3RoID8gbWF4TGVuZ3RoIDogNTAsXHJcbiAgICAgICAgICAuLi5wYXNzd29yZFByb3BzLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIDxQYXNzd29yZCB7Li4ucGFzc3dvcmRQcm9wc30gcmVmPXt0aGlzLnJlZn0gLz47XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBsZXQgaW5wdXRQcm9wcyA9IG9taXQodGhpcy5wcm9wcywgW1xyXG4gICAgICAgIFwib25DaGFuZ2VcIixcclxuICAgICAgICBcImRlZmF1bHRTdHlsZVwiLFxyXG4gICAgICAgIFwiYWxsb3dDaGFyc1wiLFxyXG4gICAgICAgIFwibWF4TGVuZ3RoXCIsXHJcbiAgICAgIF0pO1xyXG4gICAgICBpZiAoIShtYXhMZW5ndGggPT09IGZhbHNlKSkge1xyXG4gICAgICAgIGlucHV0UHJvcHMgPSB7IG1heExlbmd0aDogbWF4TGVuZ3RoID8gbWF4TGVuZ3RoIDogNTAsIC4uLmlucHV0UHJvcHMgfTtcclxuICAgICAgfVxyXG4gICAgICBsZXQgeyBhbnRkU3R5bGUgfSA9IGNvbmZpZygpO1xyXG4gICAgICBpZiAoKGRlZmF1bHRTdHlsZSB8fCBhbnRkU3R5bGUpICYmIGRlZmF1bHRTdHlsZSA9PT0gdHJ1ZSkge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xzKHN0eWxlc1tcIm5zY19pbnB1dFwiXSwgdGhpcy5wcm9wcy5jbGFzc05hbWUpfT5cclxuICAgICAgICAgICAgPElucHV0XHJcbiAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCLor7fovpPlhaVcIlxyXG4gICAgICAgICAgICAgIG9uQ2hhbmdlPXt0aGlzLm9uQ2hhbmdlLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICAgICAgYWxsb3dDbGVhcj17dHJ1ZX1cclxuICAgICAgICAgICAgICB2YWx1ZT17dGhpcy5zdGF0ZS52YWx1ZX1cclxuICAgICAgICAgICAgICB7Li4uaW5wdXRQcm9wc31cclxuICAgICAgICAgICAgICByZWY9e3RoaXMucmVmfVxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgPElucHV0XHJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwi6K+36L6T5YWlXCJcclxuICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMub25DaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgYWxsb3dDbGVhcj17dHJ1ZX1cclxuICAgICAgICAgICAgdmFsdWU9e3RoaXMuc3RhdGUudmFsdWV9XHJcbiAgICAgICAgICAgIHJlZj17dGhpcy5yZWZ9XHJcbiAgICAgICAgICAgIHsuLi5pbnB1dFByb3BzfVxyXG4gICAgICAgICAgLz5cclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJlbmRlcigpIHtcclxuICAgIHJldHVybiA8Pnt0aGlzLnJldHVybkNoaWxkcmVuKCl9PC8+O1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -311,6 +311,8 @@ var EditorForm = /*#__PURE__*/function (_PureComponent) {
|
|
|
311
311
|
_this4.dateFormat[item.name] = itemProps.format;
|
|
312
312
|
}
|
|
313
313
|
|
|
314
|
+
var allowChars = item.props.allowChars || false;
|
|
315
|
+
|
|
314
316
|
var props = _objectSpread(_objectSpread({
|
|
315
317
|
placeholder: "\u8BF7\u8F93\u5165".concat(item.label)
|
|
316
318
|
}, item.props), {}, {
|
|
@@ -320,6 +322,10 @@ var EditorForm = /*#__PURE__*/function (_PureComponent) {
|
|
|
320
322
|
})
|
|
321
323
|
});
|
|
322
324
|
|
|
325
|
+
if (!item.type || item.type == "Input") {
|
|
326
|
+
props.allowChars = true;
|
|
327
|
+
}
|
|
328
|
+
|
|
323
329
|
delete props.valueFormat;
|
|
324
330
|
delete props.format;
|
|
325
331
|
|
|
@@ -341,7 +347,8 @@ var EditorForm = /*#__PURE__*/function (_PureComponent) {
|
|
|
341
347
|
}, /*#__PURE__*/React.createElement(Form.Item, {
|
|
342
348
|
label: item.label,
|
|
343
349
|
name: item.name,
|
|
344
|
-
rules: item.rules
|
|
350
|
+
rules: item.rules,
|
|
351
|
+
allowChars: allowChars
|
|
345
352
|
}, getNode(item.type, _objectSpread({}, props))));
|
|
346
353
|
}))));
|
|
347
354
|
}
|
|
@@ -351,4 +358,4 @@ var EditorForm = /*#__PURE__*/function (_PureComponent) {
|
|
|
351
358
|
}(PureComponent);
|
|
352
359
|
|
|
353
360
|
export default EditorForm;
|
|
354
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3BhZ2UvQmFzZVBhZ2UvRm9ybS50c3giXSwibmFtZXMiOlsiUmVhY3QiLCJQdXJlQ29tcG9uZW50IiwiRm9ybSIsImdldExlc3MiLCJnZXROb2RlIiwibWVzc2FnZSIsIkNvbCIsIlJvdyIsImlzRW1wdHlPYmoiLCJtb21lbnQiLCJzdHlsZXMiLCJFZGl0b3JGb3JtIiwiY3JlYXRlUmVmIiwibG9hZGluZyIsImxhYmVsIiwiZWRpdG9yRmxhZyIsInZhbHVlIiwiZGljdE5hbWVzIiwiZWRpdG9yZmxhZyIsInNldFN0YXRlIiwiZGF0ZUZvcm1hdCIsImtleSIsIm9sZGRhdGEiLCJBcnJheSIsImlzQXJyYXkiLCJmb3JtUmVmIiwiY3VycmVudCIsInNob3dGb3JtIiwicHJvcHMiLCJkZWZhdWx0VmFsdWUiLCJoaWRlIiwib25IaWRlRm9ybSIsImhpZGVGb3JtIiwic3VibWl0VXJsIiwic3VibWl0UGFyYW1zIiwib25TdWJtaXQiLCJjYWxsQmFjayIsInN0YXRlIiwiZm9ybVZhbHVlIiwiZ2V0RmllbGRzVmFsdWUiLCJ2YWxpZCIsInZhbGlkYXRlRmllbGRzIiwidGhlbiIsImRhdGEiLCJkYXRlVmFsdWVGb3JtYXQiLCJmb3JtYXQiLCJpZCIsIkVycm9yIiwibm9VbmRlZmluZWQiLCJyZXMiLCJjb2RlIiwic3VjY2VzcyIsImNhdGNoIiwiZXJyb3JJbmZvIiwidmFsdWVPcHRpb24iLCJ0eXBlIiwiZGljdE5hbWUiLCJuZXdOYW1lcyIsImZvcm1Qcm9wcyIsIm1vZGFsUHJvcHMiLCJ0aXRsZSIsIm9uT2siLCJiaW5kIiwib25DYW5jZWwiLCJva0J1dHRvblByb3BzIiwiY2VudGVyZWQiLCJ3aWR0aCIsIm5ld1ZhbGlkIiwiZHJhd2VyUHJvcHMiLCJvbkNsb3NlIiwiZm9vdGVyIiwiZm9ybVR5cGUiLCJmbGV4IiwiY2hhbmdlZFZhbHVlcyIsImFsbFZhbHVlcyIsIm9uRm9ybUNoYW5nZSIsImNoYW5nZVZhbGlkIiwibWFwIiwiaXRlbSIsImluZGV4IiwiaXRlbVByb3BzIiwidmFsdWVGb3JtYXQiLCJuYW1lIiwicGxhY2Vob2xkZXIiLCJvbkNoYW5nZSIsInZhbHVlQ2hhbmdlIiwiZGlzYWJsZWQiLCJydWxlcyIsImxlbmd0aCIsInB1c2giLCJzcGFuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBT0EsS0FBUCxJQUFnQkMsYUFBaEIsUUFBcUMsT0FBckM7QUFDQSxPQUFPQyxJQUFQLE1BQWlCLGlCQUFqQjtBQUNBLFNBQVNDLE9BQVQsRUFBa0JDLE9BQWxCLFFBQWlDLGFBQWpDO0FBQ0EsT0FBT0MsT0FBUCxNQUFvQixvQkFBcEI7QUFDQSxPQUFPQyxHQUFQLE1BQWdCLHFCQUFoQjtBQUNBLE9BQU9DLEdBQVAsTUFBZ0IscUJBQWhCO0FBQ0EsU0FBU0MsVUFBVCxRQUEyQixtQkFBM0I7QUFDQSxPQUFPQyxNQUFQLE1BQW1CLFFBQW5CO0FBQ0EsT0FBT0MsTUFBUCxNQUFtQixxQkFBbkI7O0lBQ01DLFU7Ozs7Ozs7Ozs7Ozs7Ozs7MkVBQ01YLEtBQUssQ0FBQ1ksU0FBTixFOzs0REFDRjtBQUNOQyxNQUFBQSxPQUFPLEVBQUUsS0FESDtBQUVOQyxNQUFBQSxLQUFLLEVBQUUsRUFGRDtBQUdOQyxNQUFBQSxVQUFVLEVBQUUsSUFITjtBQUlOQyxNQUFBQSxLQUFLLEVBQUUsRUFKRDtBQUtOQyxNQUFBQSxTQUFTLEVBQUU7QUFMTCxLOzs0REFPSyxFOztzRUFDSyxFOztpRUFDTCxFOzs7Ozs7O1dBQ2I7QUFDQSxrQkFBS0QsS0FBTCxFQUFzQztBQUFBOztBQUFBLFVBQXBCRSxVQUFvQix1RUFBUCxLQUFPO0FBQ3BDLFVBQUlKLEtBQUssR0FBRyxJQUFaOztBQUNBLFVBQUlFLEtBQUssSUFBSUUsVUFBVSxJQUFJLFFBQTNCLEVBQXFDO0FBQ25DSixRQUFBQSxLQUFLLEdBQUcsSUFBUjtBQUNELE9BRkQsTUFFTyxJQUFJRSxLQUFLLElBQUlFLFVBQVUsSUFBSSxRQUEzQixFQUFxQztB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Q0Usb0JBQUMsR0FBRDtBQUFLLFVBQUEsSUFBSSxFQUFFVyxJQUFJLENBQUNZLElBQUwsSUFBYSxFQUF4QjtBQUE0QixVQUFBLEdBQUcsRUFBRVg7QUFBakMsd0JBQ0Usb0JBQUMsSUFBRCxDQUFNLElBQU47QUFDRSxVQUFBLEtBQUssRUFBRUQsSUFBSSxDQUFDaEUsS0FEZDtBQUVFLFVBQUEsSUFBSSxFQUFFZ0UsSUFBSSxDQUFDSSxJQUZiO0FBR0UsVUFBQSxLQUFLLEVBQUVKLElBQUksQ0FBQ1M7QUFIZCxXQUtHbkYsT0FBTyxDQUFDMEUsSUFBSSxDQUFDdkIsSUFBTixvQkFDSDNCLEtBREcsRUFMVixDQURGLENBREY7QUFhRCxPQTFDQSxDQURILENBREYsQ0FkRixDQURGO0FBZ0VEOzs7O0VBdk9zQjNCLGE7O0FBME96QixlQUFlVSxVQUFmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IFB1cmVDb21wb25lbnQgfSBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IEZvcm0gZnJvbSBcIi4uLy4uL2Jhc2UvZm9ybVwiO1xyXG5pbXBvcnQgeyBnZXRMZXNzLCBnZXROb2RlIH0gZnJvbSBcIi4uLy4uL3V0aWxzXCI7XHJcbmltcG9ydCBtZXNzYWdlIGZyb20gXCIuLi8uLi9iYXNlL21lc3NhZ2VcIjtcclxuaW1wb3J0IENvbCBmcm9tIFwiLi4vLi4vYmFzZS9ncmlkL0NvbFwiO1xyXG5pbXBvcnQgUm93IGZyb20gXCIuLi8uLi9iYXNlL2dyaWQvUm93XCI7XHJcbmltcG9ydCB7IGlzRW1wdHlPYmogfSBmcm9tIFwiQGJqLW5zYy9mdW5jdGlvbnNcIjtcclxuaW1wb3J0IG1vbWVudCBmcm9tIFwibW9tZW50XCI7XHJcbmltcG9ydCBzdHlsZXMgZnJvbSBcIi4vaW5kZXgubW9kdWxlLmxlc3NcIjtcclxuY2xhc3MgRWRpdG9yRm9ybSBleHRlbmRzIFB1cmVDb21wb25lbnQ8YW55PiB7XHJcbiAgZm9ybVJlZiA9IFJlYWN0LmNyZWF0ZVJlZjxhbnk+KCk7XHJcbiAgc3RhdGUgPSB7XHJcbiAgICBsb2FkaW5nOiBmYWxzZSxcclxuICAgIGxhYmVsOiBcIlwiLFxyXG4gICAgZWRpdG9yRmxhZzogdHJ1ZSxcclxuICAgIHZhbHVlOiB7fSBhcyBhbnksXHJcbiAgICBkaWN0TmFtZXM6IHt9IGFzIGFueSxcclxuICB9O1xyXG4gIHZhbGlkOiBhbnkgPSBbXTtcclxuICBkYXRlVmFsdWVGb3JtYXQgPSB7fSBhcyBhbnk7XHJcbiAgZGF0ZUZvcm1hdCA9IHt9IGFzIGFueTtcclxuICAvL+ihqOWNleaYvuekulxyXG4gIHNob3codmFsdWU/OiBhbnksIGVkaXRvcmZsYWcgPSBcImFkZFwiKSB7XHJcbiAgICBsZXQgbGFiZWwgPSBcIuaWsOWinlwiO1xyXG4gICAgaWYgKHZhbHVlICYmIGVkaXRvcmZsYWcgPT0gXCJlZGl0b3JcIikge1xyXG4gICAgICBsYWJlbCA9IFwi57yW6L6RXCI7XHJcbiAgICB9IGVsc2UgaWYgKHZhbHVlICYmIGVkaXRvcmZsYWcgPT0gXCJkZXRhaWxcIikge1xyXG4gICAgICBsYWJlbCA9IFwi5p+l55yLXCI7XHJcbiAgICB9XHJcbiAgICBpZiAodmFsdWUpIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZShcclxuICAgICAgICB7XHJcbiAgICAgICAgICBsYWJlbDogbGFiZWwsXHJcbiAgICAgICAgICB2YWx1ZTogdmFsdWUsXHJcbiAgICAgICAgfSxcclxuICAgICAgICAoKSA9PiB7XHJcbiAgICAgICAgICBpZiAoIWlzRW1wdHlPYmoodGhpcy5kYXRlRm9ybWF0KSkge1xyXG4gICAgICAgICAgICBmb3IgKGxldCBrZXkgaW4gdGhpcy5kYXRlRm9ybWF0KSB7XHJcbiAgICAgICAgICAgICAgbGV0IG9sZGRhdGEgPSB2YWx1ZVtrZXldO1xyXG4gICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KG9sZGRhdGEpKSB7XHJcbiAgICAgICAgICAgICAgICB2YWx1ZVtrZXldID0gW1xyXG4gICAgICAgICAgICAgICAgICBtb21lbnQob2xkZGF0YVswXSwgdGhpcy5kYXRlRm9ybWF0W2tleV0pLFxyXG4gICAgICAgICAgICAgICAgICBtb21lbnQob2xkZGF0YVsxXSwgdGhpcy5kYXRlRm9ybWF0W2tleV0pLFxyXG4gICAgICAgICAgICAgICAgXTtcclxuICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdmFsdWVba2V5XSA9IG1vbWVudChvbGRkYXRhLCB0aGlzLmRhdGVGb3JtYXRba2V5XSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnNob3dGb3JtKHZhbHVlKTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIGxhYmVsOiBsYWJlbCxcclxuICAgICAgICB9LFxyXG4gICAgICAgICgpID0+IHtcclxuICAgICAgICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5zaG93Rm9ybSh0aGlzLnByb3BzLmRlZmF1bHRWYWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuICBoaWRlKGhpZGUgPSB0cnVlKSB7XHJcbiAgICBjb25zdCB7IG9uSGlkZUZvcm0gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpZiAob25IaWRlRm9ybSkge1xyXG4gICAgICBvbkhpZGVGb3JtICYmIG9uSGlkZUZvcm0oKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zZXRTdGF0ZSh7IGxvYWRpbmc6IGZhbHNlIH0pO1xyXG4gICAgaGlkZSAmJiB0aGlzLmZvcm1SZWYuY3VycmVudD8uaGlkZUZvcm0oKTtcclxuICB9XHJcbiAgaGlkZUZvcm0oKSB7XHJcbiAgICB0aGlzLnNldFN0YXRlKHsgbG9hZGluZzogZmFsc2UgfSk7XHJcbiAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8uaGlkZUZvcm0oKTtcclxuICB9XHJcbiAgb25TdWJtaXQoKSB7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHN1Ym1pdFVybCA9IFwiXCIsXHJcbiAgICAgIHN1Ym1pdFBhcmFtcyA9IHt9LFxyXG4gICAgICBvblN1Ym1pdCxcclxuICAgICAgY2FsbEJhY2ssXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgbGFiZWwsIHZhbHVlLCBkaWN0TmFtZXMgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBjb25zdCBmb3JtVmFsdWUgPSB0aGlzLmZvcm1SZWYuY3VycmVudD8uZ2V0RmllbGRzVmFsdWUoKTtcclxuICAgIGxldCB2YWxpZCA9IHRoaXMudmFsaWQ7XHJcbiAgICB0aGlzLmZvcm1SZWYuY3VycmVudFxyXG4gICAgICA/LnZhbGlkYXRlRmllbGRzKHZhbGlkKVxyXG4gICAgICAudGhlbigoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7IGxvYWRpbmc6IHRydWUgfSk7XHJcbiAgICAgICAgbGV0IGRhdGEgPSB7IC4uLmZvcm1WYWx1ZSwgLi4uZGljdE5hbWVzIH07XHJcbiAgICAgICAgaWYgKCFpc0VtcHR5T2JqKHRoaXMuZGF0ZVZhbHVlRm9ybWF0KSkge1xyXG4gICAgICAgICAgZm9yIChsZXQga2V5IGluIHRoaXMuZGF0ZVZhbHVlRm9ybWF0KSB7XHJcbiAgICAgICAgICAgIGxldCBvbGRkYXRhID0gZGF0YVtrZXldO1xyXG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShvbGRkYXRhKSkge1xyXG4gICAgICAgICAgICAgIGRhdGFba2V5XSA9IFtcclxuICAgICAgICAgICAgICAgIG1vbWVudChvbGRkYXRhWzBdKS5mb3JtYXQodGhpcy5kYXRlVmFsdWVGb3JtYXRba2V5XSksXHJcbiAgICAgICAgICAgICAgICBtb21lbnQob2xkZGF0YVsxXSkuZm9ybWF0KHRoaXMuZGF0ZVZhbHVlRm9ybWF0W2tleV0pLFxyXG4gICAgICAgICAgICAgIF07XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgZGF0YVtrZXldID0gbW9tZW50KG9sZGRhdGEpLmZvcm1hdCh0aGlzLmRhdGVWYWx1ZUZvcm1hdFtrZXldKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAobGFiZWwgPT0gXCLnvJbovpFcIikge1xyXG4gICAgICAgICAgZGF0YSA9IHsgLi4uZGF0YSwgaWQ6IHZhbHVlPy5pZCB9O1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAob25TdWJtaXQpIHtcclxuICAgICAgICAgIG9uU3VibWl0ICYmIG9uU3VibWl0KGRhdGEsIGxhYmVsKTtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKCFzdWJtaXRVcmwpIHtcclxuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcInVybOS4jeiDveS4uuepuu+8gVwiKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/Lm9uU3VibWl0KFxyXG4gICAgICAgICAgc3VibWl0VXJsLFxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICBkYXRhOiB7IC4uLmRhdGEgfSxcclxuICAgICAgICAgICAgbm9VbmRlZmluZWQ6IGxhYmVsID09IFwi57yW6L6RXCIsXHJcbiAgICAgICAgICAgIHN1Ym1pdFBhcmFtcyxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgY29uc3QgeyBjb2RlIH0gPSByZXM7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0U3RhdGUoeyBsb2FkaW5nOiBmYWxzZSB9KTtcclxuICAgICAgICAgICAgaWYgKGNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgIG1lc3NhZ2Uuc3VjY2VzcyhsYWJlbCArIFwi5oiQ5YqfXCIpO1xyXG4gICAgICAgICAgICAgIHRoaXMuaGlkZSh0cnVlKTtcclxuICAgICAgICAgICAgICBjYWxsQmFjayAmJiBjYWxsQmFjaygpO1xyXG4gICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLmhpZGUoZmFsc2UpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcbiAgICAgIH0pXHJcbiAgICAgIC5jYXRjaCgoZXJyb3JJbmZvOiBhbnkpID0+IHt9KTtcclxuICB9XHJcbiAgdmFsdWVDaGFuZ2UoeyB0eXBlLCBkaWN0TmFtZSB9LCB2YWx1ZSwgdmFsdWVPcHRpb24pIHtcclxuICAgIGlmICh2YWx1ZU9wdGlvbikge1xyXG4gICAgICBpZiAoZGljdE5hbWUpIHtcclxuICAgICAgICBjb25zdCB7IGRpY3ROYW1lcyB9ID0gdGhpcy5zdGF0ZTtcclxuICAgICAgICBjb25zdCBuZXdOYW1lcyA9IHsgLi4uZGljdE5hbWVzIH0gYXMgYW55O1xyXG4gICAgICAgIG5ld05hbWVzW2RpY3ROYW1lXSA9IHZhbHVlT3B0aW9uLmxhYmVsO1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgZGljdE5hbWVzOiBuZXdOYW1lcyxcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVuZGVyKCkge1xyXG4gICAgY29uc3QgeyBmb3JtUHJvcHMgPSBbXSB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgbG9hZGluZywgbGFiZWwgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBsZXQgbW9kYWxQcm9wcyA9IHtcclxuICAgICAgdGl0bGU6IGxhYmVsLFxyXG4gICAgICBvbk9rOiB0aGlzLm9uU3VibWl0LmJpbmQodGhpcyksXHJcbiAgICAgIG9uQ2FuY2VsOiB0aGlzLmhpZGUuYmluZCh0aGlzKSxcclxuICAgICAgb2tCdXR0b25Qcm9wczogeyBsb2FkaW5nOiBsb2FkaW5nIH0sXHJcbiAgICAgIGNlbnRlcmVkOiB0cnVlLFxyXG4gICAgICB3aWR0aDogXCI1MHZ3XCIsXHJcbiAgICB9IGFzIGFueTtcclxuXHJcbiAgICBjb25zdCBuZXdWYWxpZDogYW55W10gPSBbXTtcclxuICAgIGxldCBkcmF3ZXJQcm9wcyA9IHtcclxuICAgICAgdGl0bGU6IGxhYmVsLFxyXG4gICAgICBvbk9rOiB0aGlzLm9uU3VibWl0LmJpbmQodGhpcyksXHJcbiAgICAgIG9uQ2xvc2U6IHRoaXMuaGlkZS5iaW5kKHRoaXMpLFxyXG4gICAgICB3aWR0aDogXCI1MHZ3XCIsXHJcbiAgICB9IGFzIGFueTtcclxuICAgIGlmIChsYWJlbCA9PSBcIuafpeeci1wiKSB7XHJcbiAgICAgIG1vZGFsUHJvcHMuZm9vdGVyID0gbnVsbDtcclxuICAgICAgZHJhd2VyUHJvcHMuZm9vdGVyID0gbnVsbDtcclxuICAgIH1cclxuICAgIHRoaXMuZGF0ZVZhbHVlRm9ybWF0ID0ge307XHJcbiAgICB0aGlzLmRhdGVGb3JtYXQgPSB7fTtcclxuXHJcbiAgICByZXR1cm4gKFxyXG4gICAgICA8Rm9ybVxyXG4gICAgICAgIHJlZj17dGhpcy5mb3JtUmVmfVxyXG4gICAgICAgIHNob3dNb2RlbD17dGhpcy5wcm9wcy5mb3JtVHlwZX1cclxuICAgICAgICBtb2RhbFByb3BzPXt7IC4uLm1vZGFsUHJvcHMgfX1cclxuICAgICAgICBkcmF3ZXJQcm9wcz17eyAuLi5kcmF3ZXJQcm9wcyB9fVxyXG4gICAgICAgIGxhYmVsQ29sPXt7IGZsZXg6IFwiMTAwcHhcIiB9fVxyXG4gICAgICAgIHdyYXBwZXJDb2w9e3sgZmxleDogXCIxNXZ3XCIgfX1cclxuICAgICAgICBvblZhbHVlc0NoYW5nZT17KGNoYW5nZWRWYWx1ZXMsIGFsbFZhbHVlcykgPT4ge1xyXG4gICAgICAgICAgY29uc3QgeyBvbkZvcm1DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XHJcbiAgICAgICAgICBvbkZvcm1DaGFuZ2UgJiYgb25Gb3JtQ2hhbmdlKGNoYW5nZWRWYWx1ZXMsIGFsbFZhbHVlcyk7XHJcbiAgICAgICAgfX1cclxuICAgICAgICBjaGFuZ2VWYWxpZD17dGhpcy5wcm9wcy5jaGFuZ2VWYWxpZH1cclxuICAgICAgPlxyXG4gICAgICAgIHsvKiA8ZGl2PiAqL31cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiZm9ybVwiKX0+XHJcbiAgICAgICAgICA8Um93IGd1dHRlcj17MjR9PlxyXG4gICAgICAgICAgICB7Zm9ybVByb3BzLm1hcCgoaXRlbTogYW55LCBpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgICAgICAgY29uc3QgaXRlbVByb3BzID0gaXRlbS5wcm9wcztcclxuICAgICAgICAgICAgICBpZiAoaXRlbVByb3BzLnZhbHVlRm9ybWF0KSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGVWYWx1ZUZvcm1hdFtpdGVtLm5hbWVdID0gaXRlbVByb3BzLnZhbHVlRm9ybWF0O1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBpZiAoaXRlbVByb3BzLmZvcm1hdCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5kYXRlRm9ybWF0W2l0ZW0ubmFtZV0gPSBpdGVtUHJvcHMuZm9ybWF0O1xyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgbGV0IHByb3BzID0ge1xyXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IGDor7fovpPlhaUke2l0ZW0ubGFiZWx9YCxcclxuICAgICAgICAgICAgICAgIC4uLml0ZW0ucHJvcHMsXHJcbiAgICAgICAgICAgICAgICBvbkNoYW5nZTogdGhpcy52YWx1ZUNoYW5nZS5iaW5kKHRoaXMsIHtcclxuICAgICAgICAgICAgICAgICAgdHlwZTogaXRlbS50eXBlLFxyXG4gICAgICAgICAgICAgICAgICBkaWN0TmFtZTogaXRlbS5kaWN0TmFtZSxcclxuICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgZGVsZXRlIHByb3BzLnZhbHVlRm9ybWF0O1xyXG4gICAgICAgICAgICAgIGRlbGV0ZSBwcm9wcy5mb3JtYXQ7XHJcbiAgICAgICAgICAgICAgaWYgKGxhYmVsID09IFwi5p+l55yLXCIpIHtcclxuICAgICAgICAgICAgICAgIHByb3BzLmRpc2FibGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgIGlmIChpdGVtLnJ1bGVzICYmIGl0ZW0ucnVsZXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgICAgbmV3VmFsaWQucHVzaChpdGVtLm5hbWUpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBpZiAoaW5kZXggKyAxID09PSBmb3JtUHJvcHMubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnZhbGlkID0gbmV3VmFsaWQ7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgICAgICA8Q29sIHNwYW49e2l0ZW0uc3BhbiB8fCAxMn0ga2V5PXtpbmRleH0+XHJcbiAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW1cclxuICAgICAgICAgICAgICAgICAgICBsYWJlbD17aXRlbS5sYWJlbH1cclxuICAgICAgICAgICAgICAgICAgICBuYW1lPXtpdGVtLm5hbWV9XHJcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM9e2l0ZW0ucnVsZXN9XHJcbiAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICB7Z2V0Tm9kZShpdGVtLnR5cGUsIHtcclxuICAgICAgICAgICAgICAgICAgICAgIC4uLnByb3BzLFxyXG4gICAgICAgICAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cclxuICAgICAgICAgICAgICAgIDwvQ29sPlxyXG4gICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgPC9Sb3c+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvRm9ybT5cclxuICAgICk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZGVmYXVsdCBFZGl0b3JGb3JtO1xyXG4iXX0=
|
|
361
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3BhZ2UvQmFzZVBhZ2UvRm9ybS50c3giXSwibmFtZXMiOlsiUmVhY3QiLCJQdXJlQ29tcG9uZW50IiwiRm9ybSIsImdldExlc3MiLCJnZXROb2RlIiwibWVzc2FnZSIsIkNvbCIsIlJvdyIsImlzRW1wdHlPYmoiLCJtb21lbnQiLCJzdHlsZXMiLCJFZGl0b3JGb3JtIiwiY3JlYXRlUmVmIiwibG9hZGluZyIsImxhYmVsIiwiZWRpdG9yRmxhZyIsInZhbHVlIiwiZGljdE5hbWVzIiwiZWRpdG9yZmxhZyIsInNldFN0YXRlIiwiZGF0ZUZvcm1hdCIsImtleSIsIm9sZGRhdGEiLCJBcnJheSIsImlzQXJyYXkiLCJmb3JtUmVmIiwiY3VycmVudCIsInNob3dGb3JtIiwicHJvcHMiLCJkZWZhdWx0VmFsdWUiLCJoaWRlIiwib25IaWRlRm9ybSIsImhpZGVGb3JtIiwic3VibWl0VXJsIiwic3VibWl0UGFyYW1zIiwib25TdWJtaXQiLCJjYWxsQmFjayIsInN0YXRlIiwiZm9ybVZhbHVlIiwiZ2V0RmllbGRzVmFsdWUiLCJ2YWxpZCIsInZhbGlkYXRlRmllbGRzIiwidGhlbiIsImRhdGEiLCJkYXRlVmFsdWVGb3JtYXQiLCJmb3JtYXQiLCJpZCIsIkVycm9yIiwibm9VbmRlZmluZWQiLCJyZXMiLCJjb2RlIiwic3VjY2VzcyIsImNhdGNoIiwiZXJyb3JJbmZvIiwidmFsdWVPcHRpb24iLCJ0eXBlIiwiZGljdE5hbWUiLCJuZXdOYW1lcyIsImZvcm1Qcm9wcyIsIm1vZGFsUHJvcHMiLCJ0aXRsZSIsIm9uT2siLCJiaW5kIiwib25DYW5jZWwiLCJva0J1dHRvblByb3BzIiwiY2VudGVyZWQiLCJ3aWR0aCIsIm5ld1ZhbGlkIiwiZHJhd2VyUHJvcHMiLCJvbkNsb3NlIiwiZm9vdGVyIiwiZm9ybVR5cGUiLCJmbGV4IiwiY2hhbmdlZFZhbHVlcyIsImFsbFZhbHVlcyIsIm9uRm9ybUNoYW5nZSIsImNoYW5nZVZhbGlkIiwibWFwIiwiaXRlbSIsImluZGV4IiwiaXRlbVByb3BzIiwidmFsdWVGb3JtYXQiLCJuYW1lIiwiYWxsb3dDaGFycyIsInBsYWNlaG9sZGVyIiwib25DaGFuZ2UiLCJ2YWx1ZUNoYW5nZSIsImRpc2FibGVkIiwicnVsZXMiLCJsZW5ndGgiLCJwdXNoIiwic3BhbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU9BLEtBQVAsSUFBZ0JDLGFBQWhCLFFBQXFDLE9BQXJDO0FBQ0EsT0FBT0MsSUFBUCxNQUFpQixpQkFBakI7QUFDQSxTQUFTQyxPQUFULEVBQWtCQyxPQUFsQixRQUFpQyxhQUFqQztBQUNBLE9BQU9DLE9BQVAsTUFBb0Isb0JBQXBCO0FBQ0EsT0FBT0MsR0FBUCxNQUFnQixxQkFBaEI7QUFDQSxPQUFPQyxHQUFQLE1BQWdCLHFCQUFoQjtBQUNBLFNBQVNDLFVBQVQsUUFBMkIsbUJBQTNCO0FBQ0EsT0FBT0MsTUFBUCxNQUFtQixRQUFuQjtBQUNBLE9BQU9DLE1BQVAsTUFBbUIscUJBQW5COztJQUVNQyxVOzs7Ozs7Ozs7Ozs7Ozs7OzJFQUNNWCxLQUFLLENBQUNZLFNBQU4sRTs7NERBQ0Y7QUFDTkMsTUFBQUEsT0FBTyxFQUFFLEtBREg7QUFFTkMsTUFBQUEsS0FBSyxFQUFFLEVBRkQ7QUFHTkMsTUFBQUEsVUFBVSxFQUFFLElBSE47QUFJTkMsTUFBQUEsS0FBSyxFQUFFLEVBSkQ7QUFLTkMsTUFBQUEsU0FBUyxFQUFFO0FBTEwsSzs7NERBT0ssRTs7c0VBQ0ssRTs7aUVBQ0wsRTs7Ozs7OztXQUNiO0FBQ0Esa0JBQUtELEtBQUwsRUFBc0M7QUFBQTs7QUFBQSxVQUFwQkUsVUFBb0IsdUVBQVAsS0FBTztBQUNwQyxVQUFJSixLQUFLLEdBQUcsSUFBWjs7QUFDQSxVQUFJRSxLQUFLLElBQUlFLFVBQVUsSUFBSSxRQUEzQixFQUFxQztBQUNuQ0osUUFBQUEsS0FBSyxHQUFHLElBQVI7QUFDRCxPQUZELE1BRU8sSUFBSUUsS0FBSyxJQUFJRSxVQUFVLElBQUks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TCxDQUFXQyxNQUFYLEdBQW9CLENBQXRDLEVBQXlDO0FBQ3ZDdEIsVUFBQUEsUUFBUSxDQUFDdUIsSUFBVCxDQUFjWixJQUFJLENBQUNJLElBQW5CO0FBQ0Q7O0FBQ0QsWUFBSUgsS0FBSyxHQUFHLENBQVIsS0FBY3JCLFNBQVMsQ0FBQytCLE1BQTVCLEVBQW9DO0FBQ2xDLFVBQUEsTUFBSSxDQUFDakQsS0FBTCxHQUFhMkIsUUFBYjtBQUNEOztBQUNELDRCQUNFLG9CQUFDLEdBQUQ7QUFBSyxVQUFBLElBQUksRUFBRVcsSUFBSSxDQUFDYSxJQUFMLElBQWEsRUFBeEI7QUFBNEIsVUFBQSxHQUFHLEVBQUVaO0FBQWpDLHdCQUNFLG9CQUFDLElBQUQsQ0FBTSxJQUFOO0FBQ0UsVUFBQSxLQUFLLEVBQUVELElBQUksQ0FBQ2hFLEtBRGQ7QUFFRSxVQUFBLElBQUksRUFBRWdFLElBQUksQ0FBQ0ksSUFGYjtBQUdFLFVBQUEsS0FBSyxFQUFFSixJQUFJLENBQUNVLEtBSGQ7QUFJRSxVQUFBLFVBQVUsRUFBRUw7QUFKZCxXQU1HL0UsT0FBTyxDQUFDMEUsSUFBSSxDQUFDdkIsSUFBTixvQkFDSDNCLEtBREcsRUFOVixDQURGLENBREY7QUFjRCxPQTlDQSxDQURILENBREYsQ0FkRixDQURGO0FBb0VEOzs7O0VBM09zQjNCLGE7O0FBOE96QixlQUFlVSxVQUFmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IFB1cmVDb21wb25lbnQgfSBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IEZvcm0gZnJvbSBcIi4uLy4uL2Jhc2UvZm9ybVwiO1xyXG5pbXBvcnQgeyBnZXRMZXNzLCBnZXROb2RlIH0gZnJvbSBcIi4uLy4uL3V0aWxzXCI7XHJcbmltcG9ydCBtZXNzYWdlIGZyb20gXCIuLi8uLi9iYXNlL21lc3NhZ2VcIjtcclxuaW1wb3J0IENvbCBmcm9tIFwiLi4vLi4vYmFzZS9ncmlkL0NvbFwiO1xyXG5pbXBvcnQgUm93IGZyb20gXCIuLi8uLi9iYXNlL2dyaWQvUm93XCI7XHJcbmltcG9ydCB7IGlzRW1wdHlPYmogfSBmcm9tIFwiQGJqLW5zYy9mdW5jdGlvbnNcIjtcclxuaW1wb3J0IG1vbWVudCBmcm9tIFwibW9tZW50XCI7XHJcbmltcG9ydCBzdHlsZXMgZnJvbSBcIi4vaW5kZXgubW9kdWxlLmxlc3NcIjtcclxuaW1wb3J0IHV0aWxzIGZyb20gXCIuLi8uLi91dGlsc1wiO1xyXG5jbGFzcyBFZGl0b3JGb3JtIGV4dGVuZHMgUHVyZUNvbXBvbmVudDxhbnk+IHtcclxuICBmb3JtUmVmID0gUmVhY3QuY3JlYXRlUmVmPGFueT4oKTtcclxuICBzdGF0ZSA9IHtcclxuICAgIGxvYWRpbmc6IGZhbHNlLFxyXG4gICAgbGFiZWw6IFwiXCIsXHJcbiAgICBlZGl0b3JGbGFnOiB0cnVlLFxyXG4gICAgdmFsdWU6IHt9IGFzIGFueSxcclxuICAgIGRpY3ROYW1lczoge30gYXMgYW55LFxyXG4gIH07XHJcbiAgdmFsaWQ6IGFueSA9IFtdO1xyXG4gIGRhdGVWYWx1ZUZvcm1hdCA9IHt9IGFzIGFueTtcclxuICBkYXRlRm9ybWF0ID0ge30gYXMgYW55O1xyXG4gIC8v6KGo5Y2V5pi+56S6XHJcbiAgc2hvdyh2YWx1ZT86IGFueSwgZWRpdG9yZmxhZyA9IFwiYWRkXCIpIHtcclxuICAgIGxldCBsYWJlbCA9IFwi5paw5aKeXCI7XHJcbiAgICBpZiAodmFsdWUgJiYgZWRpdG9yZmxhZyA9PSBcImVkaXRvclwiKSB7XHJcbiAgICAgIGxhYmVsID0gXCLnvJbovpFcIjtcclxuICAgIH0gZWxzZSBpZiAodmFsdWUgJiYgZWRpdG9yZmxhZyA9PSBcImRldGFpbFwiKSB7XHJcbiAgICAgIGxhYmVsID0gXCLmn6XnnItcIjtcclxuICAgIH1cclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIGxhYmVsOiBsYWJlbCxcclxuICAgICAgICAgIHZhbHVlOiB2YWx1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICAgICgpID0+IHtcclxuICAgICAgICAgIGlmICghaXNFbXB0eU9iaih0aGlzLmRhdGVGb3JtYXQpKSB7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGtleSBpbiB0aGlzLmRhdGVGb3JtYXQpIHtcclxuICAgICAgICAgICAgICBsZXQgb2xkZGF0YSA9IHZhbHVlW2tleV07XHJcbiAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkob2xkZGF0YSkpIHtcclxuICAgICAgICAgICAgICAgIHZhbHVlW2tleV0gPSBbXHJcbiAgICAgICAgICAgICAgICAgIG1vbWVudChvbGRkYXRhWzBdLCB0aGlzLmRhdGVGb3JtYXRba2V5XSksXHJcbiAgICAgICAgICAgICAgICAgIG1vbWVudChvbGRkYXRhWzFdLCB0aGlzLmRhdGVGb3JtYXRba2V5XSksXHJcbiAgICAgICAgICAgICAgICBdO1xyXG4gICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB2YWx1ZVtrZXldID0gbW9tZW50KG9sZGRhdGEsIHRoaXMuZGF0ZUZvcm1hdFtrZXldKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8uc2hvd0Zvcm0odmFsdWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbGFiZWw6IGxhYmVsLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnNob3dGb3JtKHRoaXMucHJvcHMuZGVmYXVsdFZhbHVlKTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGhpZGUoaGlkZSA9IHRydWUpIHtcclxuICAgIGNvbnN0IHsgb25IaWRlRm9ybSB9ID0gdGhpcy5wcm9wcztcclxuICAgIGlmIChvbkhpZGVGb3JtKSB7XHJcbiAgICAgIG9uSGlkZUZvcm0gJiYgb25IaWRlRm9ybSgpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLnNldFN0YXRlKHsgbG9hZGluZzogZmFsc2UgfSk7XHJcbiAgICBoaWRlICYmIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5oaWRlRm9ybSgpO1xyXG4gIH1cclxuICBoaWRlRm9ybSgpIHtcclxuICAgIHRoaXMuc2V0U3RhdGUoeyBsb2FkaW5nOiBmYWxzZSB9KTtcclxuICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5oaWRlRm9ybSgpO1xyXG4gIH1cclxuICBvblN1Ym1pdCgpIHtcclxuICAgIGNvbnN0IHtcclxuICAgICAgc3VibWl0VXJsID0gXCJcIixcclxuICAgICAgc3VibWl0UGFyYW1zID0ge30sXHJcbiAgICAgIG9uU3VibWl0LFxyXG4gICAgICBjYWxsQmFjayxcclxuICAgIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyBsYWJlbCwgdmFsdWUsIGRpY3ROYW1lcyB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGNvbnN0IGZvcm1WYWx1ZSA9IHRoaXMuZm9ybVJlZi5jdXJyZW50Py5nZXRGaWVsZHNWYWx1ZSgpO1xyXG4gICAgbGV0IHZhbGlkID0gdGhpcy52YWxpZDtcclxuICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50XHJcbiAgICAgID8udmFsaWRhdGVGaWVsZHModmFsaWQpXHJcbiAgICAgIC50aGVuKCgpID0+IHtcclxuICAgICAgICB0aGlzLnNldFN0YXRlKHsgbG9hZGluZzogdHJ1ZSB9KTtcclxuICAgICAgICBsZXQgZGF0YSA9IHsgLi4uZm9ybVZhbHVlLCAuLi5kaWN0TmFtZXMgfTtcclxuICAgICAgICBpZiAoIWlzRW1wdHlPYmoodGhpcy5kYXRlVmFsdWVGb3JtYXQpKSB7XHJcbiAgICAgICAgICBmb3IgKGxldCBrZXkgaW4gdGhpcy5kYXRlVmFsdWVGb3JtYXQpIHtcclxuICAgICAgICAgICAgbGV0IG9sZGRhdGEgPSBkYXRhW2tleV07XHJcbiAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KG9sZGRhdGEpKSB7XHJcbiAgICAgICAgICAgICAgZGF0YVtrZXldID0gW1xyXG4gICAgICAgICAgICAgICAgbW9tZW50KG9sZGRhdGFbMF0pLmZvcm1hdCh0aGlzLmRhdGVWYWx1ZUZvcm1hdFtrZXldKSxcclxuICAgICAgICAgICAgICAgIG1vbWVudChvbGRkYXRhWzFdKS5mb3JtYXQodGhpcy5kYXRlVmFsdWVGb3JtYXRba2V5XSksXHJcbiAgICAgICAgICAgICAgXTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBkYXRhW2tleV0gPSBtb21lbnQob2xkZGF0YSkuZm9ybWF0KHRoaXMuZGF0ZVZhbHVlRm9ybWF0W2tleV0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChsYWJlbCA9PSBcIue8lui+kVwiKSB7XHJcbiAgICAgICAgICBkYXRhID0geyAuLi5kYXRhLCBpZDogdmFsdWU/LmlkIH07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChvblN1Ym1pdCkge1xyXG4gICAgICAgICAgb25TdWJtaXQgJiYgb25TdWJtaXQoZGF0YSwgbGFiZWwpO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoIXN1Ym1pdFVybCkge1xyXG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwidXJs5LiN6IO95Li656m677yBXCIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8ub25TdWJtaXQoXHJcbiAgICAgICAgICBzdWJtaXRVcmwsXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGRhdGE6IHsgLi4uZGF0YSB9LFxyXG4gICAgICAgICAgICBub1VuZGVmaW5lZDogbGFiZWwgPT0gXCLnvJbovpFcIixcclxuICAgICAgICAgICAgc3VibWl0UGFyYW1zLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCB7IGNvZGUgfSA9IHJlcztcclxuICAgICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7IGxvYWRpbmc6IGZhbHNlIH0pO1xyXG4gICAgICAgICAgICBpZiAoY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgICAgbWVzc2FnZS5zdWNjZXNzKGxhYmVsICsgXCLmiJDlip9cIik7XHJcbiAgICAgICAgICAgICAgdGhpcy5oaWRlKHRydWUpO1xyXG4gICAgICAgICAgICAgIGNhbGxCYWNrICYmIGNhbGxCYWNrKCk7XHJcbiAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuaGlkZShmYWxzZSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuICAgICAgfSlcclxuICAgICAgLmNhdGNoKChlcnJvckluZm86IGFueSkgPT4ge30pO1xyXG4gIH1cclxuICB2YWx1ZUNoYW5nZSh7IHR5cGUsIGRpY3ROYW1lIH0sIHZhbHVlLCB2YWx1ZU9wdGlvbikge1xyXG4gICAgaWYgKHZhbHVlT3B0aW9uKSB7XHJcbiAgICAgIGlmIChkaWN0TmFtZSkge1xyXG4gICAgICAgIGNvbnN0IHsgZGljdE5hbWVzIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgICAgIGNvbnN0IG5ld05hbWVzID0geyAuLi5kaWN0TmFtZXMgfSBhcyBhbnk7XHJcbiAgICAgICAgbmV3TmFtZXNbZGljdE5hbWVdID0gdmFsdWVPcHRpb24ubGFiZWw7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICBkaWN0TmFtZXM6IG5ld05hbWVzLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZW5kZXIoKSB7XHJcbiAgICBjb25zdCB7IGZvcm1Qcm9wcyA9IFtdIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyBsb2FkaW5nLCBsYWJlbCB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGxldCBtb2RhbFByb3BzID0ge1xyXG4gICAgICB0aXRsZTogbGFiZWwsXHJcbiAgICAgIG9uT2s6IHRoaXMub25TdWJtaXQuYmluZCh0aGlzKSxcclxuICAgICAgb25DYW5jZWw6IHRoaXMuaGlkZS5iaW5kKHRoaXMpLFxyXG4gICAgICBva0J1dHRvblByb3BzOiB7IGxvYWRpbmc6IGxvYWRpbmcgfSxcclxuICAgICAgY2VudGVyZWQ6IHRydWUsXHJcbiAgICAgIHdpZHRoOiBcIjUwdndcIixcclxuICAgIH0gYXMgYW55O1xyXG5cclxuICAgIGNvbnN0IG5ld1ZhbGlkOiBhbnlbXSA9IFtdO1xyXG4gICAgbGV0IGRyYXdlclByb3BzID0ge1xyXG4gICAgICB0aXRsZTogbGFiZWwsXHJcbiAgICAgIG9uT2s6IHRoaXMub25TdWJtaXQuYmluZCh0aGlzKSxcclxuICAgICAgb25DbG9zZTogdGhpcy5oaWRlLmJpbmQodGhpcyksXHJcbiAgICAgIHdpZHRoOiBcIjUwdndcIixcclxuICAgIH0gYXMgYW55O1xyXG4gICAgaWYgKGxhYmVsID09IFwi5p+l55yLXCIpIHtcclxuICAgICAgbW9kYWxQcm9wcy5mb290ZXIgPSBudWxsO1xyXG4gICAgICBkcmF3ZXJQcm9wcy5mb290ZXIgPSBudWxsO1xyXG4gICAgfVxyXG4gICAgdGhpcy5kYXRlVmFsdWVGb3JtYXQgPSB7fTtcclxuICAgIHRoaXMuZGF0ZUZvcm1hdCA9IHt9O1xyXG5cclxuICAgIHJldHVybiAoXHJcbiAgICAgIDxGb3JtXHJcbiAgICAgICAgcmVmPXt0aGlzLmZvcm1SZWZ9XHJcbiAgICAgICAgc2hvd01vZGVsPXt0aGlzLnByb3BzLmZvcm1UeXBlfVxyXG4gICAgICAgIG1vZGFsUHJvcHM9e3sgLi4ubW9kYWxQcm9wcyB9fVxyXG4gICAgICAgIGRyYXdlclByb3BzPXt7IC4uLmRyYXdlclByb3BzIH19XHJcbiAgICAgICAgbGFiZWxDb2w9e3sgZmxleDogXCIxMDBweFwiIH19XHJcbiAgICAgICAgd3JhcHBlckNvbD17eyBmbGV4OiBcIjE1dndcIiB9fVxyXG4gICAgICAgIG9uVmFsdWVzQ2hhbmdlPXsoY2hhbmdlZFZhbHVlcywgYWxsVmFsdWVzKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCB7IG9uRm9ybUNoYW5nZSB9ID0gdGhpcy5wcm9wcztcclxuICAgICAgICAgIG9uRm9ybUNoYW5nZSAmJiBvbkZvcm1DaGFuZ2UoY2hhbmdlZFZhbHVlcywgYWxsVmFsdWVzKTtcclxuICAgICAgICB9fVxyXG4gICAgICAgIGNoYW5nZVZhbGlkPXt0aGlzLnByb3BzLmNoYW5nZVZhbGlkfVxyXG4gICAgICA+XHJcbiAgICAgICAgey8qIDxkaXY+ICovfVxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJmb3JtXCIpfT5cclxuICAgICAgICAgIDxSb3cgZ3V0dGVyPXsyNH0+XHJcbiAgICAgICAgICAgIHtmb3JtUHJvcHMubWFwKChpdGVtOiBhbnksIGluZGV4OiBudW1iZXIpID0+IHtcclxuICAgICAgICAgICAgICBjb25zdCBpdGVtUHJvcHMgPSBpdGVtLnByb3BzO1xyXG4gICAgICAgICAgICAgIGlmIChpdGVtUHJvcHMudmFsdWVGb3JtYXQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZGF0ZVZhbHVlRm9ybWF0W2l0ZW0ubmFtZV0gPSBpdGVtUHJvcHMudmFsdWVGb3JtYXQ7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIGlmIChpdGVtUHJvcHMuZm9ybWF0KSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGVGb3JtYXRbaXRlbS5uYW1lXSA9IGl0ZW1Qcm9wcy5mb3JtYXQ7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIGxldCBhbGxvd0NoYXJzID0gaXRlbS5wcm9wcy5hbGxvd0NoYXJzIHx8IGZhbHNlO1xyXG4gICAgICAgICAgICAgIGxldCBwcm9wcyA9IHtcclxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBg6K+36L6T5YWlJHtpdGVtLmxhYmVsfWAsXHJcbiAgICAgICAgICAgICAgICAuLi5pdGVtLnByb3BzLFxyXG4gICAgICAgICAgICAgICAgb25DaGFuZ2U6IHRoaXMudmFsdWVDaGFuZ2UuYmluZCh0aGlzLCB7XHJcbiAgICAgICAgICAgICAgICAgIHR5cGU6IGl0ZW0udHlwZSxcclxuICAgICAgICAgICAgICAgICAgZGljdE5hbWU6IGl0ZW0uZGljdE5hbWUsXHJcbiAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgIGlmICghaXRlbS50eXBlIHx8IGl0ZW0udHlwZSA9PSBcIklucHV0XCIpIHtcclxuICAgICAgICAgICAgICAgIHByb3BzLmFsbG93Q2hhcnMgPSB0cnVlO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBkZWxldGUgcHJvcHMudmFsdWVGb3JtYXQ7XHJcbiAgICAgICAgICAgICAgZGVsZXRlIHByb3BzLmZvcm1hdDtcclxuICAgICAgICAgICAgICBpZiAobGFiZWwgPT0gXCLmn6XnnItcIikge1xyXG4gICAgICAgICAgICAgICAgcHJvcHMuZGlzYWJsZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgaWYgKGl0ZW0ucnVsZXMgJiYgaXRlbS5ydWxlcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICBuZXdWYWxpZC5wdXNoKGl0ZW0ubmFtZSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIGlmIChpbmRleCArIDEgPT09IGZvcm1Qcm9wcy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMudmFsaWQgPSBuZXdWYWxpZDtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgICAgIDxDb2wgc3Bhbj17aXRlbS5zcGFuIHx8IDEyfSBrZXk9e2luZGV4fT5cclxuICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbVxyXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpdGVtLmxhYmVsfVxyXG4gICAgICAgICAgICAgICAgICAgIG5hbWU9e2l0ZW0ubmFtZX1cclxuICAgICAgICAgICAgICAgICAgICBydWxlcz17aXRlbS5ydWxlc31cclxuICAgICAgICAgICAgICAgICAgICBhbGxvd0NoYXJzPXthbGxvd0NoYXJzfVxyXG4gICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAge2dldE5vZGUoaXRlbS50eXBlLCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAuLi5wcm9wcyxcclxuICAgICAgICAgICAgICAgICAgICB9KX1cclxuICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XHJcbiAgICAgICAgICAgICAgICA8L0NvbD5cclxuICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9KX1cclxuICAgICAgICAgIDwvUm93PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L0Zvcm0+XHJcbiAgICApO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGRlZmF1bHQgRWRpdG9yRm9ybTtcclxuIl19
|
|
@@ -64,6 +64,8 @@ import { iconType } from "../../constants";
|
|
|
64
64
|
import EditorForm from "./Form";
|
|
65
65
|
import cls from "classnames";
|
|
66
66
|
import styles from "./index.module.less";
|
|
67
|
+
import Col from "../../base/grid/Col";
|
|
68
|
+
import Row from "../../base/grid/Row";
|
|
67
69
|
import { DownOutlined, UpOutlined, EyeOutlined, EditOutlined, RightOutlined } from "@ant-design/icons";
|
|
68
70
|
import { getLess, getNode } from "../../utils";
|
|
69
71
|
import request from "nsc-request";
|
|
@@ -677,7 +679,7 @@ var BasePage = /*#__PURE__*/function (_PureComponent) {
|
|
|
677
679
|
temp.editor !== false && editorForms.push({
|
|
678
680
|
name: temp.field || temp.dataIndex,
|
|
679
681
|
label: temp.title,
|
|
680
|
-
rules: temp.rules,
|
|
682
|
+
rules: temp.rules ? temp.rules : [],
|
|
681
683
|
type: temp.type,
|
|
682
684
|
span: temp.span,
|
|
683
685
|
dictName: temp.dictName,
|
|
@@ -867,29 +869,73 @@ var BasePage = /*#__PURE__*/function (_PureComponent) {
|
|
|
867
869
|
titleAlias: titleAlias
|
|
868
870
|
}, othertreeParams))), /*#__PURE__*/React.createElement("div", {
|
|
869
871
|
className: getLess(styles, "right")
|
|
870
|
-
}, showSearch && /*#__PURE__*/React.createElement(
|
|
872
|
+
}, showSearch && /*#__PURE__*/React.createElement(Row, {
|
|
873
|
+
gutter: 24,
|
|
874
|
+
wrap: true
|
|
875
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
871
876
|
className: getLess(styles, "header")
|
|
877
|
+
}, /*#__PURE__*/React.createElement(Col, {
|
|
878
|
+
md: {
|
|
879
|
+
span: 12
|
|
880
|
+
},
|
|
881
|
+
sm: {
|
|
882
|
+
span: 12
|
|
883
|
+
},
|
|
884
|
+
lg: {
|
|
885
|
+
span: 18
|
|
886
|
+
}
|
|
872
887
|
}, /*#__PURE__*/React.createElement("div", {
|
|
873
888
|
className: cls(_defineProperty({}, getLess(styles, "form"), !showLeft))
|
|
889
|
+
}, /*#__PURE__*/React.createElement(Row, {
|
|
890
|
+
gutter: 24,
|
|
891
|
+
wrap: true
|
|
874
892
|
}, /*#__PURE__*/React.createElement(Form, {
|
|
875
893
|
ref: this.searchRef,
|
|
876
894
|
labelCol: {},
|
|
877
895
|
wrapperCol: {},
|
|
878
|
-
layout: "inline"
|
|
896
|
+
layout: "inline",
|
|
897
|
+
style: {
|
|
898
|
+
width: "100%"
|
|
899
|
+
}
|
|
879
900
|
}, searchForms.map(function (item, index) {
|
|
880
901
|
if (index > headerCount && !_this3.state.expand) {
|
|
881
902
|
return;
|
|
882
903
|
}
|
|
883
904
|
|
|
884
|
-
return /*#__PURE__*/React.createElement(
|
|
905
|
+
return /*#__PURE__*/React.createElement(Col, {
|
|
906
|
+
md: {
|
|
907
|
+
span: 12
|
|
908
|
+
},
|
|
909
|
+
sm: {
|
|
910
|
+
span: 24
|
|
911
|
+
},
|
|
912
|
+
lg: {
|
|
913
|
+
span: 8
|
|
914
|
+
},
|
|
915
|
+
key: index,
|
|
916
|
+
style: {
|
|
917
|
+
paddingRight: 0
|
|
918
|
+
}
|
|
919
|
+
}, /*#__PURE__*/React.createElement(Form.Item, {
|
|
885
920
|
label: item.label,
|
|
886
|
-
name: item.name
|
|
887
|
-
,
|
|
888
|
-
key: index
|
|
921
|
+
name: item.name
|
|
889
922
|
}, getNode(item.type, _objectSpread(_objectSpread({}, item.props), {}, {
|
|
890
923
|
placeholder: "\u8BF7\u8F93\u5165".concat(item.label)
|
|
891
|
-
})));
|
|
892
|
-
}))), /*#__PURE__*/React.createElement(
|
|
924
|
+
}))));
|
|
925
|
+
}))))), /*#__PURE__*/React.createElement(Col, {
|
|
926
|
+
md: {
|
|
927
|
+
span: 12
|
|
928
|
+
},
|
|
929
|
+
sm: {
|
|
930
|
+
span: 12
|
|
931
|
+
},
|
|
932
|
+
lg: {
|
|
933
|
+
span: 6
|
|
934
|
+
},
|
|
935
|
+
style: {
|
|
936
|
+
padding: 0
|
|
937
|
+
}
|
|
938
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
893
939
|
className: getLess(styles, "search-buttons"),
|
|
894
940
|
style: {
|
|
895
941
|
marginTop: 0
|
|
@@ -906,8 +952,8 @@ var BasePage = /*#__PURE__*/function (_PureComponent) {
|
|
|
906
952
|
icon: /*#__PURE__*/React.createElement(Icon, {
|
|
907
953
|
type: iconType.refresh
|
|
908
954
|
})
|
|
909
|
-
}, "\u91CD\u7F6E"), searchForms.length > 3 && /*#__PURE__*/React.createElement("
|
|
910
|
-
className: styles
|
|
955
|
+
}, "\u91CD\u7F6E"), searchForms.length > 3 && /*#__PURE__*/React.createElement("div", {
|
|
956
|
+
className: getLess(styles, 'a_style'),
|
|
911
957
|
onClick: function onClick() {
|
|
912
958
|
var expand = _this3.state.expand;
|
|
913
959
|
|
|
@@ -915,7 +961,7 @@ var BasePage = /*#__PURE__*/function (_PureComponent) {
|
|
|
915
961
|
expand: !expand
|
|
916
962
|
});
|
|
917
963
|
}
|
|
918
|
-
}, this.state.expand ? "收起" : "展开", this.state.expand ? /*#__PURE__*/React.createElement(UpOutlined, null) : /*#__PURE__*/React.createElement(DownOutlined, null)))), showToolButton && this.renderToolButtons(selfButtons), /*#__PURE__*/React.createElement("div", {
|
|
964
|
+
}, this.state.expand ? "收起" : "展开", this.state.expand ? /*#__PURE__*/React.createElement(UpOutlined, null) : /*#__PURE__*/React.createElement(DownOutlined, null)))))), showToolButton && this.renderToolButtons(selfButtons), /*#__PURE__*/React.createElement("div", {
|
|
919
965
|
className: cls(getLess(styles, "table"))
|
|
920
966
|
}, /*#__PURE__*/React.createElement(Table, _extends({
|
|
921
967
|
ref: this.tableRef,
|
|
@@ -961,4 +1007,4 @@ var BasePage = /*#__PURE__*/function (_PureComponent) {
|
|
|
961
1007
|
}(PureComponent);
|
|
962
1008
|
|
|
963
1009
|
export default BasePage;
|
|
964
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3BhZ2UvQmFzZVBhZ2UvaW5kZXgudHN4Il0sIm5hbWVzIjpbIlJlYWN0IiwiUHVyZUNvbXBvbmVudCIsIlRhYmxlIiwiVHJlZSIsIkZvcm0iLCJCdXR0b24iLCJNb2RhbCIsIlBvcG92ZXIiLCJtZXNzYWdlIiwiSWNvbiIsImljb25UeXBlIiwiRWRpdG9yRm9ybSIsImNscyIsInN0eWxlcyIsIkRvd25PdXRsaW5lZCIsIlVwT3V0bGluZWQiLCJFeWVPdXRsaW5lZCIsIkVkaXRPdXRsaW5lZCIsIlJpZ2h0T3V0bGluZWQiLCJnZXRMZXNzIiwiZ2V0Tm9kZSIsInJlcXVlc3QiLCJvbWl0IiwiY29uZmlnIiwiZ2V0U3RvcmFnZSIsIkJhc2VQYWdlIiwicHJvcHMiLCJjcmVhdGVSZWYiLCJldiIsImRhdGEiLCJKU09OIiwicGFyc2UiLCJfdGhpcyIsImV2ZW50VHlwZSIsInBheWxvYWQiLCJ0eXBlIiwic2V0U3RhdGUiLCJmb3JtVHlwZSIsInNpemUiLCJ0YWJsZVNpemUiLCJjaGVja2VkVHJlZUtleXMiLCJzdGF0ZSIsIm5hbWUiLCJ1c2VyVHlwZSIsImFjY291bnQiLCJ2YWx1ZSIsImRlcHRJZCIsInRhYmxlTG9hZCIsInN0b3JlUHJlZml4IiwiY29udGVudCIsInNlbGVjdGVkUm93S2V5cyIsInNlbGVjdGVkUm93RGF0YXMiLCJ0cmVlU2VsZWN0ZWRLZXkiLCJleHBhbmQiLCJpbml0RGF0YSIsIndpbmRvdyIsImFkZEV2ZW50TGlzdGVuZXIiLCJsaXN0ZW5NZXNzYWdlIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsImVkaXRvcmZsYWciLCJlZGl0b3JSZWYiLCJjdXJyZW50Iiwic2hvdyIsImhpZGVGb3JtIiwiZGVsZXRlVXJsIiwib25EZWxldGUiLCJkZWxldGVQYXJhbXMiLCJsZW5ndGgiLCJ3YXJuaW5nIiwiRXJyb3IiLCJjb25maXJtIiwidGl0bGUiLCJva1RleHQiLCJjYW5jZWxUZXh0Iiwib25PayIsImRlZmF1bHRQYXJhbXMiLCJtZXRob2QiLCJwYXJhbXMiLCJpZHMiLCJqb2luIiwicmVxdWVzdFBhcmFtcyIsInRoZW4iLCJyZXMiLCJjb2RlIiwic3VjY2VzcyIsImVycm9yIiwiY2F0Y2giLCJjb25zb2xlIiwibG9nIiwidGFibGVSZWYiLCJzdG9yZSIsImxvYWQiLCJvblNlYXJjaCIsImZyb21WYWx1ZSIsInNlYXJjaFJlZiIsImdldEZpZWxkc1ZhbHVlIiwicmVsb2FkIiwicmVjb3JkIiwic2VsZWN0ZWQiLCJuZXdTZWxlY3RlZFJvd0tleXMiLCJuZXdTZWxlY3RlZFJvd0RhdGFzIiwiaWQiLCJtYXAiLCJpdGVtIiwiaW5kZXgiLCJzcGxpY2UiLCJzZWxlY3RlZFJvd3MiLCJjaGFuZ2VSb3dzIiwibmV3aWRzIiwibmV3ZGF0YXMiLCJjaGFuZ2VJZHMiLCJpbmRleE9mIiwicHVzaCIsInRvb2xidXR0b25zIiwiZmxhZyIsImNoaWxkcmVuIiwicGFnZVR5cGUiLCJvbkNsaWNrIiwiaWNvbiIsIm1hcmdpbkxlZnQiLCJjb2x1bW5CdXR0b25zIiwiZWRpdG9yRm9ybSIsImJ1dHRvbnMiLCJuZXdCdXR0b25zIiwicmVjb3JkU2hvdyIsImV2YWwiLCJzZWxlY3RlZEtleXMiLCJzZWxlY3RlZE5vZGVzIiwia2V5d29yZCIsInRyZWVQcm9wcyIsInNlYXJjaEtleSIsInNlYXJjaEZpZWxkIiwiaXNMZWFmIiwiZGF0YXJlZiIsImF0dHJpYnV0ZSIsInJlc2V0RmllbGRzIiwidGV4dCIsIm5ld1RleHQiLCJpIiwibGFiZWwiLCJjb2x1bW5zIiwic2hvd1NlYXJjaCIsInN1Ym1pdFVybCIsInRhYmxlUHJvcHMiLCJzaG93TGVmdCIsInN1Ym1pdFBhcmFtcyIsInNob3dUb29sQnV0dG9uIiwib25TaG93Rm9ybSIsImZvcm1DaGFuZ2VWYWxpZCIsImNsYXNzTmFtZSIsImFjdGlvbkNvbHVtbnMiLCJmaWx0ZXJDb2x1bW4iLCJhY3Rpb25Db2x1bW4iLCJzaG93Um93U2VsZWN0aW9uIiwiY29sdW1uT3JkZXIiLCJvdGhlcnRhYmxlUGFyYW1zIiwidHJlZVN0b3JlIiwidHJlZVNlYXJjaCIsInRpdGxlQWxpYXMiLCJvdGhlcnRyZWVQYXJhbXMiLCJ0YWJsZVBhcmFtcyIsInJvd1NlbGVjdGlvbiIsIm9uU2VsZWN0Iiwicm93U2VsZWN0aW9uT25TZWxlY3QiLCJiaW5kIiwib25TZWxlY3RBbGwiLCJyb3dTZWxlY3Rpb25PblNlbGVjdEFsbCIsImNvbHVtbldpZHRoIiwidGFibGVDb2x1bW4iLCJzZWFyY2hGb3JtcyIsImVkaXRvckZvcm1zIiwiZGVmYXVsdFZhbHVlIiwidGVtcCIsInNlYXJjaCIsImZpZWxkIiwiZGF0YUluZGV4IiwiZWRpdG9yIiwicnVsZXMiLCJzcGFuIiwiZGljdE5hbWUiLCJ1bmRlZmluZWQiLCJjb2x1bW5TZWFyY2giLCJmaWx0ZXJQcm9wcyIsInRlbXBQcm9wIiwic3R5bGUiLCJyZW5kZXIiLCJnZXRUZXh0IiwiZWxsaXBzaXMiLCJjb2x1bW5TaG93Iiwic2VsZkJ1dHRvbnMiLCJzaG93Rm9ybSIsImFkZCIsImRlbGV0ZTMiLCJBcnJheSIsImlzQXJyYXkiLCJhbGlnbiIsIndpZHRoIiwiZml4ZWQiLCJyZW5kZXJDbG91bW5CdXR0b24iLCJoZWFkZXJDb3VudCIsInJlYWNvcmQiLCJwYWdpbmF0aW9uIiwic2Nyb2xsIiwieCIsInkiLCJkaXNwbGF5IiwidHJlZVNlbGVjdCIsInBsYWNlaG9sZGVyIiwibWFyZ2luVG9wIiwicmVzZXRTZWFyY2giLCJyZWZyZXNoIiwiYV9zdHlsZSIsInJlbmRlclRvb2xCdXR0b25zIiwiZXhwYW5kSWNvbiIsImV4cGFuZGVkIiwib25FeHBhbmQiLCJlIiwiY2hpbGROb2RlcyIsInRhYmxlUmVsb2FkIiwib25TdWJtaXQiLCJvbkhpZGVGb3JtIiwib25Gb3JtQ2hhbmdlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU9BLEtBQVAsSUFBZ0JDLGFBQWhCLFFBQXFDLE9BQXJDO0FBQ0Es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QVFFLFFBQUEsVUFBVSxFQUFFLEtBQUtqSixLQUFMLENBQVdrTSxVQVJ6QjtBQVNFLFFBQUEsWUFBWSxFQUFFLEtBQUtsTSxLQUFMLENBQVdtTSxZQVQzQjtBQVVFLFFBQUEsUUFBUSxFQUFFLEtBQUtuTSxLQUFMLENBQVdXLFFBQVgsSUFBdUIsS0FBS0ksS0FBTCxDQUFXSixRQVY5QztBQVdFLFFBQUEsV0FBVyxFQUFFK0c7QUFYZixRQXJISixDQURGO0FBc0lEOzs7O0VBaHdCb0JuSixhOztBQWt3QnZCLGVBQWV3QixRQUFmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IFB1cmVDb21wb25lbnQgfSBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IFRhYmxlIGZyb20gXCIuLi8uLi9iYXNlL3RhYmxlXCI7XHJcbmltcG9ydCBUcmVlIGZyb20gXCIuLi8uLi9iYXNlL3RyZWVcIjtcclxuaW1wb3J0IEZvcm0gZnJvbSBcIi4uLy4uL2Jhc2UvZm9ybVwiO1xyXG5pbXBvcnQgQnV0dG9uIGZyb20gXCIuLi8uLi9iYXNlL2J1dHRvblwiO1xyXG5pbXBvcnQgTW9kYWwgZnJvbSBcIi4uLy4uL2Jhc2UvbW9kYWxcIjtcclxuaW1wb3J0IFBvcG92ZXIgZnJvbSBcIi4uLy4uL2Jhc2UvcG9wb3ZlclwiO1xyXG5pbXBvcnQgbWVzc2FnZSBmcm9tIFwiLi4vLi4vYmFzZS9tZXNzYWdlXCI7XHJcbmltcG9ydCBJY29uIGZyb20gXCIuLi8uLi9iYXNlL2NvbW1vbi9JY29uRm9udFwiO1xyXG5pbXBvcnQgeyBpY29uVHlwZSB9IGZyb20gXCIuLi8uLi9jb25zdGFudHNcIjtcclxuaW1wb3J0IEVkaXRvckZvcm0gZnJvbSBcIi4vRm9ybVwiO1xyXG5pbXBvcnQgY2xzIGZyb20gXCJjbGFzc25hbWVzXCI7XHJcbmltcG9ydCBzdHlsZXMgZnJvbSBcIi4vaW5kZXgubW9kdWxlLmxlc3NcIjtcclxuaW1wb3J0IFN0b3JlLCB7IFBhZ2VTdG9yZSwgU3RvcmVQcm9wcyB9IGZyb20gXCJAYmotbnNjL21zblwiO1xyXG5pbXBvcnQge1xyXG4gIERvd25PdXRsaW5lZCxcclxuICBVcE91dGxpbmVkLFxyXG4gIEV5ZU91dGxpbmVkLFxyXG4gIEVkaXRPdXRsaW5lZCxcclxuICBSaWdodE91dGxpbmVkLFxyXG59IGZyb20gXCJAYW50LWRlc2lnbi9pY29uc1wiO1xyXG5pbXBvcnQgeyBnZXRMZXNzLCBnZXROb2RlIH0gZnJvbSBcIi4uLy4uL3V0aWxzXCI7XHJcbmltcG9ydCByZXF1ZXN0IGZyb20gXCJuc2MtcmVxdWVzdFwiO1xyXG5pbXBvcnQgb21pdCBmcm9tIFwib21pdC5qc1wiO1xyXG5pbXBvcnQgY29uZmlnIGZyb20gXCIuLi8uLi9jb25maWdcIjtcclxuaW1wb3J0IHsgZ2V0U3RvcmFnZSB9IGZyb20gXCJAYmotbnNjL2Z1bmN0aW9uc1wiO1xyXG5pbnRlcmZhY2UgVGFibGVQcm9wcyB7XHJcbiAgYWN0aW9uQ29sdW1uPzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLrmk43kvZzliJdcclxuICBzdG9yZT86IFN0b3JlUHJvcHM7XHJcbiAgZmlsdGVyQ29sdW1uPzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLrov4fmu6TmjInpkq5cclxuICBzaG93Um93U2VsZWN0aW9uPzogYm9vbGVhbjsgLy/mmK/lkKbooajmoLzli77pgInliJdcclxuICBwYWdpbmF0aW9uPzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLrliIbpobVcclxuICBjb2x1bW5PcmRlcj86IGJvb2xlYW47IC8v5piv5ZCm5pi+56S66KGo5qC85bqP5YiXXHJcbiAgW3Byb3BzTmFtZTogc3RyaW5nXTogYW55O1xyXG59XHJcbmludGVyZmFjZSBUcmVlUHJvcHMge1xyXG4gIHN0b3JlPzogU3RvcmVQcm9wcztcclxuICBzaG93U2VhcmNoPzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLrmkJzntKLmoYZcclxuICBzZWFyY2hLZXk/OiBzdHJpbmc7IC8v5pCc57SidmFsdWXlr7nlupTnmoRrZXlcclxuICBzZWFyY2hGaWVsZD86IHN0cmluZzsgLy/mn6Xor6Llr7nlupTnmoRrZXlcclxuICB0aXRsZUFsaWFzPzogc3RyaW5nOyAvL+agkXRpdGxl5a+55bqU55qEa2V5LOm7mOiupHRpdGxlXHJcbiAgbm9kZVBvcnBzPzogb2JqZWN0O1xyXG4gIFtwcm9wc05hbWU6IHN0cmluZ106IGFueTtcclxufVxyXG5pbnRlcmZhY2UgTlNDQmFzZUJhZ2VQcm9wcyB7XHJcbiAgc2hvd1NlYXJjaD86IGJvb2xlYW47IC8v5piv5ZCm5pi+56S65aS06YOo5pCc57Si5qCPXHJcbiAgdGFibGVQcm9wcz86IFRhYmxlUHJvcHM7IC8v6KGo5qC85Y+C5pWwXHJcbiAgdHJlZVByb3BzPzogVHJlZVByb3BzOyAvL+W3puS+p+agkeWPguaVsFxyXG4gIHN1Ym1pdFBhcmFtcz86IE9iamVjdDsgLy/mt7vliqDlj4LmlbDvvIzpu5jorqRtb3Rob2Q6cG9zdO+8jCDlj4LmlbDpgJrov4dkYXRh5Lyg6YCSXHJcbiAgc3VibWl0VXJsPzogc3RyaW5nO1xyXG4gIG9uU3VibWl0PzogKHZhbHVlPzogYW55LCBsYWJlbD86IGFueSkgPT4gdm9pZDtcclxuICBjb2x1bW5zOiBBcnJheTxPYmplY3Q+O1xyXG4gIHNob3dMZWZ0PzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLrlt6bkvqfnm67lvZXmoJFcclxuICBzaG93VG9vbEJ1dHRvbj86IGJvb2xlYW47IC8v5piv5ZCm5pi+56S65oyJ6ZKu5qCPXHJcbiAgZWRpdG9yRm9ybT86IGJvb2xlYW47IC8v5piv5ZCm6ZyA6KaB6KGo5Y2V5Yqf6IO9ICwg5Li6ZmFsc2Ug57yW6L6R77yM5p+l55yL77yM5paw5aKe5Yqf6IO95Z2H5LiN5Y+v55SoXHJcbiAgZGVsZXRlVXJsPzogc3RyaW5nOyAvL+WIoOmZpHVybFxyXG4gIG9uRGVsZXRlPzogKHNlbGVjdGVkS2V5cz86IEFycmF5PGFueT4pID0+IHZvaWQ7IC8v5Yig6Zmk5Y+C5pWw77yM6buY6K6kbW90aG9kOnBvc3TvvIwg5Y+C5pWw6YCa6L+HaWRz5ou85o6l5Lyg6YCS57uZ5ZCO5Y+wXHJcbiAgZGVsZXRlUGFyYW1zPzogT2JqZWN0O1xyXG4gIGNoaWxkcmVuPzogUmVhY3QuUmVhY3ROb2RlO1xyXG4gIG9uU2VhcmNoPzogKHZhbHVlPzogYW55KSA9PiB2b2lkO1xyXG4gIGluaXREYXRhPzogYW55OyAvL+WIneWni+WMluWbnuiwg+WHveaVsO+8jOWcqGNvbXBvbmVudERpZE1vdW505Lit6LCD55SoXHJcbiAgYnV0dG9ucz86IEFycmF5PHN0cmluZz47IC8v5oyJ6ZKu6ZuG5ZCIICBbJ2FkZCcsJ2RlbGV0ZScsJ3NlYXJjaCcsJ2VkaXRvciddXHJcbiAgb25TaG93Rm9ybT86ICh2YWx1ZT86IGFueSwgZWRpdG9yRmxhZz86IHN0cmluZykgPT4gdm9pZDsgLy/miZPlvIDooajljZXlm57osINcclxuICBvbkhpZGVGb3JtPzogKCkgPT4gdm9pZDsgLy/miZPlvIDooajljZXlm57osINcclxuICBvbkZvcm1DaGFuZ2U/OiAoY2hhbmdlZFZhbHVlcz86IGFueSwgYWxsVmFsdWVzPzogYW55KSA9PiB2b2lkOyAvL+ihqOWNlW9uQ2hhbmdl5Zue6LCDXHJcbiAgZm9ybVR5cGU/OiBcIm1vZGFsXCIgfCBcImRyYXdlclwiO1xyXG4gIGZvcm1DaGFuZ2VWYWxpZD86IGJvb2xlYW47IC8v6KGo5Y2V5qCh6aqMXHJcbiAgY2xhc3NOYW1lPzogYW55O1xyXG4gIGFjdGlvbkNvbHVtbnM/OiBBcnJheTxhbnk+O1xyXG59XHJcblxyXG5jbGFzcyBCYXNlUGFnZSBleHRlbmRzIFB1cmVDb21wb25lbnQ8TlNDQmFzZUJhZ2VQcm9wcywgYW55PiB7XHJcbiAgdGFibGVSZWYgPSBSZWFjdC5jcmVhdGVSZWY8YW55PigpO1xyXG4gIHRyZWVSZWYgPSBSZWFjdC5jcmVhdGVSZWY8YW55PigpO1xyXG4gIHNlYXJjaFJlZiA9IFJlYWN0LmNyZWF0ZVJlZjxhbnk+KCk7XHJcbiAgZWRpdG9yUmVmID0gUmVhY3QuY3JlYXRlUmVmPGFueT4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJvcHM6IGFueSkge1xyXG4gICAgc3VwZXIocHJvcHMpO1xyXG4gICAgbGV0IHsgc3RvcmVQcmVmaXggfSA9IGNvbmZpZygpO1xyXG4gICAgbGV0IHR5cGUgPSBnZXRTdG9yYWdlKFxyXG4gICAgICBzdG9yZVByZWZpeCA/IHN0b3JlUHJlZml4ICsgXCItXCIgKyBcImZvcm1UeXBlXCIgOiBcImZvcm1UeXBlXCJcclxuICAgICk7XHJcbiAgICB0eXBlID0gdHlwZT8uY29udGVudDtcclxuICAgIGxldCBzaXplID0gZ2V0U3RvcmFnZShcclxuICAgICAgc3RvcmVQcmVmaXggPyBzdG9yZVByZWZpeCArIFwiLVwiICsgXCJ0YWJsZVNpemVcIiA6IFwidGFibGVTaXplXCJcclxuICAgICk7XHJcbiAgICB0eXBlID0gdHlwZT8uY29udGVudDtcclxuICAgIHNpemUgPSBzaXplPy5jb250ZW50O1xyXG4gICAgdGhpcy5zdGF0ZSA9IHtcclxuICAgICAgdHlwZTogXCJhZGRcIixcclxuICAgICAgc2VsZWN0ZWRSb3dLZXlzOiBbXSxcclxuICAgICAgc2VsZWN0ZWRSb3dEYXRhczogW10sXHJcbiAgICAgIHRyZWVTZWxlY3RlZEtleTogXCJcIixcclxuICAgICAgZXhwYW5kOiBmYWxzZSxcclxuICAgICAgZm9ybVR5cGU6IHR5cGUgfHwgXCJtb2RhbFwiLFxyXG4gICAgICB0YWJsZVNpemU6IHNpemUgfHwgXCJkZWZhdWx0XCIsXHJcbiAgICB9O1xyXG4gIH1cclxuICBjb21wb25lbnREaWRNb3VudCgpIHtcclxuICAgIGNvbnN0IHsgaW5pdERhdGEgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpbml0RGF0YSAmJiBpbml0RGF0YSgpO1xyXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoXCJtZXNzYWdlXCIsIHRoaXMubGlzdGVuTWVzc2FnZSk7XHJcbiAgfVxyXG5cclxuICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcclxuICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKFwibWVzc2FnZVwiLCB0aGlzLmxpc3Rlbk1lc3NhZ2UpO1xyXG4gIH1cclxuICBsaXN0ZW5NZXNzYWdlID0gKGV2KSA9PiB7XHJcbiAgICBjb25zdCBkYXRhID0gdHlwZW9mIGV2LmRhdGEgPT09IFwic3RyaW5nXCIgPyBKU09OLnBhcnNlKGV2LmRhdGEpIDogZXYuZGF0YTtcclxuICAgIGxldCBfdGhpcyA9IHRoaXM7XHJcbiAgICBpZiAoZGF0YS5ldmVudFR5cGUgPT0gXCJjaGFuZ2VGb3JtVHlwZVwiKSB7XHJcbiAgICAgIGNvbnN0IHsgcGF5bG9hZCB9ID0gZGF0YTtcclxuICAgICAgaWYgKHBheWxvYWQudHlwZSA9PSBcIm1vZGFsXCIgfHwgcGF5bG9hZC50eXBlID09IFwiZHJhd2VyXCIpIHtcclxuICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7IGZvcm1UeXBlOiBwYXlsb2FkLnR5cGUgfSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmIChkYXRhLmV2ZW50VHlwZSA9PSBcImNoYW5nZVRhYmxlU2l6ZVwiKSB7XHJcbiAgICAgIGNvbnN0IHsgcGF5bG9hZCB9ID0gZGF0YTtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIHBheWxvYWQuc2l6ZSA9PSBcImRlZmF1bHRcIiB8fFxyXG4gICAgICAgIHBheWxvYWQuc2l6ZSA9PSBcInNtYWxsXCIgfHxcclxuICAgICAgICBwYXlsb2FkLnNpemUgPT0gXCJtaWRkbGVcIlxyXG4gICAgICApIHtcclxuICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7IHRhYmxlU2l6ZTogcGF5bG9hZC5zaXplIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfTtcclxuICBvblNlbGVjdCA9IChjaGVja2VkVHJlZUtleXM6IGFueSkgPT4ge1xyXG4gICAgY29uc3QgeyBuYW1lLCB1c2VyVHlwZSwgYWNjb3VudCB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGNvbnN0IHZhbHVlID0geyBuYW1lLCB1c2VyVHlwZSwgYWNjb3VudCwgZGVwdElkOiBjaGVja2VkVHJlZUtleXNbMF0gfTtcclxuICAgIHRoaXMudGFibGVMb2FkKHZhbHVlKTtcclxuICB9O1xyXG5cclxuICAvL+aYvuekuuihqOWNlVxyXG4gIHNob3dGb3JtKHZhbHVlPzogYW55LCBlZGl0b3JmbGFnID0gXCJhZGRcIikge1xyXG4gICAgdGhpcy5lZGl0b3JSZWYuY3VycmVudD8uc2hvdyh2YWx1ZSwgZWRpdG9yZmxhZyk7XHJcbiAgfVxyXG5cclxuICAvL+WFs+mXreihqOWNlVxyXG4gIGhpZGVGb3JtKCkge1xyXG4gICAgdGhpcy5lZGl0b3JSZWYuY3VycmVudD8uaGlkZUZvcm0oKTtcclxuICB9XHJcblxyXG4gIC8v5om56YeP5Yig6ZmkXHJcbiAgb25EZWxldGUoKSB7XHJcbiAgICBjb25zdCB7IGRlbGV0ZVVybCwgb25EZWxldGUsIGRlbGV0ZVBhcmFtcyB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgc2VsZWN0ZWRSb3dLZXlzIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgaWYgKHNlbGVjdGVkUm93S2V5cy5sZW5ndGggPT0gMCkge1xyXG4gICAgICBtZXNzYWdlLndhcm5pbmcoXCLor7fpgInmi6nopoHliKDpmaTnmoTmlbDmja7vvIFcIik7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmIChvbkRlbGV0ZSkge1xyXG4gICAgICBvbkRlbGV0ZSAmJiBvbkRlbGV0ZShzZWxlY3RlZFJvd0tleXMpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAoIWRlbGV0ZVVybCkge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1cmzkuI3og73kuLrnqbrvvIFcIik7XHJcbiAgICB9XHJcbiAgICBNb2RhbC5jb25maXJtKHtcclxuICAgICAgdGl0bGU6IFwi5piv5ZCm56Gu6K6k5Yig6Zmk5omA6YCJ6aG577yfXCIsXHJcbiAgICAgIG9rVGV4dDogXCLnoa7orqRcIixcclxuICAgICAgY2FuY2VsVGV4dDogXCLlj5bmtohcIixcclxuICAgICAgb25PazogKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGRlZmF1bHRQYXJhbXMgPSB7XHJcbiAgICAgICAgICBtZXRob2Q6IFwicG9zdFwiLFxyXG4gICAgICAgICAgcGFyYW1zOiB7IGlkczogc2VsZWN0ZWRSb3dLZXlzLmpvaW4oKSB9LFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgbGV0IHJlcXVlc3RQYXJhbXMgPSB7fSBhcyBhbnk7XHJcbiAgICAgICAgaWYgKGRlZmF1bHRQYXJhbXMpIHtcclxuICAgICAgICAgIHJlcXVlc3RQYXJhbXMgPSB7IC4uLmRlbGV0ZVBhcmFtcyB9O1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXF1ZXN0UGFyYW1zID0geyAuLi5kZWZhdWx0UGFyYW1zIH07XHJcbiAgICAgICAgcmVxdWVzdChkZWxldGVVcmwsIHtcclxuICAgICAgICAgIC4uLnJlcXVlc3RQYXJhbXMsXHJcbiAgICAgICAgfSlcclxuICAgICAgICAgIC50aGVuKGZ1bmN0aW9uIChyZXM6IGFueSkge1xyXG4gICAgICAgICAgICBjb25zdCB7IGNvZGUgfSA9IHJlcztcclxuICAgICAgICAgICAgaWYgKGNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgIG1lc3NhZ2Uuc3VjY2VzcyhcIuWIoOmZpOaIkOWKn++8gVwiKTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBtZXNzYWdlLmVycm9yKFwi5Yig6Zmk5aSx6LSl77yBXCIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICAgLmNhdGNoKGZ1bmN0aW9uIChlcnJvcjogYW55KSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiZXJyb3JcIiwgZXJyb3IpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuICB9XHJcbiAgdGFibGVMb2FkKHBhcmFtczogYW55KSB7XHJcbiAgICB0aGlzLnRhYmxlUmVmLmN1cnJlbnQ/LnN0b3JlLmxvYWQoe1xyXG4gICAgICBwYXJhbXM6IHBhcmFtcyxcclxuICAgIH0pO1xyXG4gIH1cclxuICAvL+afpeivolxyXG4gIG9uU2VhcmNoKCkge1xyXG4gICAgY29uc3QgeyBvblNlYXJjaCB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IGZyb21WYWx1ZSA9IHRoaXMuc2VhcmNoUmVmLmN1cnJlbnQ/LmdldEZpZWxkc1ZhbHVlKCk7XHJcbiAgICBpZiAob25TZWFyY2gpIHtcclxuICAgICAgb25TZWFyY2goZnJvbVZhbHVlKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy50YWJsZUxvYWQoZnJvbVZhbHVlKTtcclxuICB9XHJcbiAgLy/ooajmoLzph43mlrDliqDovb1cclxuICB0YWJsZVJlbG9hZCgpIHtcclxuICAgIHRoaXMudGFibGVSZWYuY3VycmVudD8uc3RvcmUucmVsb2FkKCk7XHJcbiAgfVxyXG4gIGdldFNlbGVjdGVkUm93S2V5cygpIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXRlLnNlbGVjdGVkUm93S2V5cztcclxuICB9XHJcbiAgZ2V0U2VsZWN0ZWRSb3dEYXRhcygpIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXRlLnNlbGVjdGVkUm93RGF0YXM7XHJcbiAgfVxyXG4gIGdldFNlYXJjaFZhbHVlcygpIHtcclxuICAgIGNvbnN0IGZyb21WYWx1ZSA9IHRoaXMuc2VhcmNoUmVmLmN1cnJlbnQ/LmdldEZpZWxkc1ZhbHVlKCk7XHJcbiAgICByZXR1cm4gZnJvbVZhbHVlO1xyXG4gIH1cclxuICByb3dTZWxlY3Rpb25PblNlbGVjdChyZWNvcmQ6IGFueSwgc2VsZWN0ZWQ6IGFueSkge1xyXG4gICAgY29uc3QgeyBzZWxlY3RlZFJvd0tleXMsIHNlbGVjdGVkUm93RGF0YXMgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBsZXQgbmV3U2VsZWN0ZWRSb3dLZXlzID0gWy4uLnNlbGVjdGVkUm93S2V5c107XHJcbiAgICBsZXQgbmV3U2VsZWN0ZWRSb3dEYXRhcyA9IFsuLi5zZWxlY3RlZFJvd0RhdGFzXTtcclxuICAgIGlmIChzZWxlY3RlZCkge1xyXG4gICAgICBuZXdTZWxlY3RlZFJvd0tleXMgPSBbLi4ubmV3U2VsZWN0ZWRSb3dLZXlzLCByZWNvcmQuaWRdO1xyXG4gICAgICBuZXdTZWxlY3RlZFJvd0RhdGFzID0gWy4uLm5ld1NlbGVjdGVkUm93RGF0YXMsIHJlY29yZF07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBzZWxlY3RlZFJvd0tleXMubWFwKChpdGVtOiBhbnksIGluZGV4OiBhbnkpID0+IHtcclxuICAgICAgICBpZiAoaXRlbSA9PT0gcmVjb3JkLmlkKSB7XHJcbiAgICAgICAgICBuZXdTZWxlY3RlZFJvd0tleXMuc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICBzZWxlY3RlZFJvd0RhdGFzLm1hcCgoaXRlbTogYW55LCBpbmRleDogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKGl0ZW0uaWQgPT09IHJlY29yZC5pZCkge1xyXG4gICAgICAgICAgbmV3U2VsZWN0ZWRSb3dEYXRhcy5zcGxpY2UoaW5kZXgsIDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgc2VsZWN0ZWRSb3dLZXlzOiBuZXdTZWxlY3RlZFJvd0tleXMsXHJcbiAgICAgIHNlbGVjdGVkUm93RGF0YXM6IG5ld1NlbGVjdGVkUm93RGF0YXMsXHJcbiAgICB9KTtcclxuICB9XHJcbiAgcm93U2VsZWN0aW9uT25TZWxlY3RBbGwoc2VsZWN0ZWQ6IGFueSwgc2VsZWN0ZWRSb3dzOiBhbnksIGNoYW5nZVJvd3M6IGFueSkge1xyXG4gICAgY29uc3QgeyBzZWxlY3RlZFJvd0tleXMsIHNlbGVjdGVkUm93RGF0YXMgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBsZXQgbmV3aWRzOiBhbnkgPSBbXTtcclxuICAgIGxldCBuZXdkYXRhczogYW55ID0gW107XHJcbiAgICBpZiAoY2hhbmdlUm93cy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGxldCBjaGFuZ2VJZHMgPSBjaGFuZ2VSb3dzLm1hcCgoaXRlbTogYW55KSA9PiBpdGVtLmlkKTtcclxuICAgICAgaWYgKHNlbGVjdGVkKSB7XHJcbiAgICAgICAgbmV3aWRzID0gWy4uLnNlbGVjdGVkUm93S2V5cywgLi4uY2hhbmdlSWRzXTtcclxuICAgICAgICBuZXdkYXRhcyA9IFsuLi5zZWxlY3RlZFJvd0RhdGFzLCAuLi5jaGFuZ2VSb3dzXTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBzZWxlY3RlZFJvd0tleXMubWFwKChpdGVtOiBhbnksIGluZGV4OiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmIChjaGFuZ2VJZHMuaW5kZXhPZihpdGVtKSA9PSAtMSkge1xyXG4gICAgICAgICAgICBuZXdpZHMucHVzaChpdGVtKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgICBzZWxlY3RlZFJvd0RhdGFzLm1hcCgoaXRlbTogYW55LCBpbmRleDogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAoY2hhbmdlSWRzLmluZGV4T2YoaXRlbS5pZCkgPT0gLTEpIHtcclxuICAgICAgICAgICAgbmV3ZGF0YXMucHVzaChpdGVtKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbmV3aWRzID0gWy4uLnNlbGVjdGVkUm93S2V5c107XHJcbiAgICAgIG5ld2RhdGFzID0gWy4uLnNlbGVjdGVkUm93RGF0YXNdO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgIHNlbGVjdGVkUm93S2V5czogWy4uLm5ld2lkc10sXHJcbiAgICAgIHNlbGVjdGVkUm93RGF0YXM6IFsuLi5uZXdkYXRhc10sXHJcbiAgICB9KTtcclxuICB9XHJcbiAgcmVuZGVyVG9vbEJ1dHRvbnModG9vbGJ1dHRvbnM6IGFueSkge1xyXG4gICAgY29uc3QgZmxhZyA9IHRvb2xidXR0b25zLmxlbmd0aCA+IDU7XHJcbiAgICBjb25zdCBjb250ZW50ID0gdG9vbGJ1dHRvbnMubWFwKChpdGVtOiBhbnksIGluZGV4OiBhbnkpID0+IHtcclxuICAgICAgY29uc3QgeyBjaGlsZHJlbiwgcGFnZVR5cGUsIG9uQ2xpY2ssIGljb24sIHNob3csIC4uLnBhcmFtcyB9ID0gaXRlbS5wcm9wcztcclxuICAgICAgaWYgKGluZGV4ID4gNCkge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzTmFtZT17Y2xzKFxyXG4gICAgICAgICAgICAgIGdldExlc3Moc3R5bGVzLCBcImVkaXRvclwiKSxcclxuICAgICAgICAgICAgICBnZXRMZXNzKHN0eWxlcywgXCJjb250ZW50LWl0ZW1cIilcclxuICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAga2V5PXtpbmRleH1cclxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xyXG4gICAgICAgICAgICAgIG9uQ2xpY2sgJiYgb25DbGljaygpO1xyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICB7Li4ucGFyYW1zfVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImljb25cIil9PntpY29ufTwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJ0ZXh0XCIpfT57Y2hpbGRyZW59PC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICA8ZGl2XHJcbiAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJ0b29sLWJ1dHRvbnNcIil9XHJcbiAgICAgICAgc3R5bGU9e3sgbWFyZ2luTGVmdDogMCB9fVxyXG4gICAgICA+XHJcbiAgICAgICAge3Rvb2xidXR0b25zLm1hcCgoaXRlbTogYW55LCBpbmRleDogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAoZmxhZykge1xyXG4gICAgICAgICAgICBpZiAoaW5kZXggPCA0KSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIDxkaXYga2V5PXtpbmRleH0+e2l0ZW19PC9kaXY+O1xyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGluZGV4ID09IDQpIHtcclxuICAgICAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICAgICAgPFBvcG92ZXJcclxuICAgICAgICAgICAgICAgICAgY29udGVudD17Y29udGVudH1cclxuICAgICAgICAgICAgICAgICAgdGl0bGU9e251bGx9XHJcbiAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbVwiXHJcbiAgICAgICAgICAgICAgICAgIHRyaWdnZXI9e1tcImNsaWNrXCJdfVxyXG4gICAgICAgICAgICAgICAgICBrZXk9e2luZGV4fVxyXG4gICAgICAgICAgICAgICAgICAvLyBvdmVybGF5Q2xhc3NOYW1lPXtzdHlsZXNbJ3BvcC1ib3gnXX1cclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgPEJ1dHRvbiB0eXBlPVwicHJpbWFyeVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIOabtOWkmiA8RG93bk91dGxpbmVkIC8+XHJcbiAgICAgICAgICAgICAgICAgIDwvQnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPC9Qb3BvdmVyPlxyXG4gICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJldHVybiA8ZGl2IGtleT17aW5kZXh9PntpdGVtfTwvZGl2PjtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KX1cclxuICAgICAgPC9kaXY+XHJcbiAgICApO1xyXG4gIH1cclxuICByZW5kZXJDbG91bW5CdXR0b24oY29sdW1uQnV0dG9uczogYW55LCByZWNvcmQ6IGFueSkge1xyXG4gICAgY29uc3QgeyBlZGl0b3JGb3JtID0gdHJ1ZSwgYnV0dG9ucyA9IFtdIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgbmV3QnV0dG9ucyA9IFtdO1xyXG4gICAgY29sdW1uQnV0dG9ucy5tYXAoKGl0ZW06IGFueSwgaW5kZXg6IGFueSkgPT4ge1xyXG4gICAgICBjb25zdCB7IGNoaWxkcmVuLCBwYWdlVHlwZSwgb25DbGljaywgaWNvbiwgcmVjb3JkU2hvdywgLi4ucGFyYW1zIH0gPVxyXG4gICAgICAgIGl0ZW0ucHJvcHM7XHJcbiAgICAgIGlmIChyZWNvcmRTaG93KSB7XHJcbiAgICAgICAgaWYgKGV2YWwocmVjb3JkU2hvdykpIHtcclxuICAgICAgICAgIG5ld0J1dHRvbnMucHVzaChpdGVtKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbmV3QnV0dG9ucy5wdXNoKGl0ZW0pO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIGNvbnN0IGZsYWcgPSBuZXdCdXR0b25zLmxlbmd0aCA+IDM7XHJcblxyXG4gICAgY29uc3QgY29udGVudCA9IG5ld0J1dHRvbnMubWFwKChpdGVtOiBhbnksIGluZGV4OiBhbnkpID0+IHtcclxuICAgICAgY29uc3QgeyBjaGlsZHJlbiwgcGFnZVR5cGUsIG9uQ2xpY2ssIGljb24sIHNob3csIC4uLnBhcmFtcyB9ID0gaXRlbS5wcm9wcztcclxuICAgICAgaWYgKGluZGV4ID4gMSkge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzTmFtZT17Y2xzKFxyXG4gICAgICAgICAgICAgIGdldExlc3Moc3R5bGVzLCBcImVkaXRvclwiKSxcclxuICAgICAgICAgICAgICBnZXRMZXNzKHN0eWxlcywgXCJjb250ZW50LWl0ZW1cIilcclxuICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAga2V5PXtpbmRleH1cclxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xyXG4gICAgICAgICAgICAgIG9uQ2xpY2sgJiYgb25DbGljayhyZWNvcmQpO1xyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICB7Li4ucGFyYW1zfVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImljb25cIil9PntpY29ufTwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJ0ZXh0XCIpfT57Y2hpbGRyZW59PC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIG5ld0J1dHRvbnMubWFwKChpdGVtOiBhbnksIGluZGV4OiBhbnkpID0+IHtcclxuICAgICAgY29uc3QgeyBjaGlsZHJlbiwgcGFnZVR5cGUsIG9uQ2xpY2ssIGljb24sIC4uLnBhcmFtcyB9ID0gaXRlbS5wcm9wcztcclxuICAgICAgaWYgKGZsYWcpIHtcclxuICAgICAgICBpZiAoaW5kZXggPCAyKSB7XHJcbiAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJlZGl0b3JcIil9XHJcbiAgICAgICAgICAgICAga2V5PXtpbmRleH1cclxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBvbkNsaWNrICYmIG9uQ2xpY2socmVjb3JkKTtcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIHsuLi5wYXJhbXN9XHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImljb25cIil9PntpY29ufTwvc3Bhbj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcInRleHRcIil9PntjaGlsZHJlbn08L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9IGVsc2UgaWYgKGluZGV4ID09IDIpIHtcclxuICAgICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgIDxQb3BvdmVyXHJcbiAgICAgICAgICAgICAgcGxhY2VtZW50PVwiYm90dG9tXCJcclxuICAgICAgICAgICAgICB0aXRsZT17bnVsbH1cclxuICAgICAgICAgICAgICBjb250ZW50PXtjb250ZW50fVxyXG4gICAgICAgICAgICAgIHRyaWdnZXI9e1tcImNsaWNrXCJdfVxyXG4gICAgICAgICAgICAgIGtleT17aW5kZXh9XHJcbiAgICAgICAgICAgICAgLy8gb3ZlcmxheUNsYXNzTmFtZT17c3R5bGVzWydwb3AnXX1cclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJlZGl0b3JcIil9PlxyXG4gICAgICAgICAgICAgICAgJm5ic3A7IOabtOWkmlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJpY29uXCIpfT5cclxuICAgICAgICAgICAgICAgICAgPERvd25PdXRsaW5lZCAvPlxyXG4gICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L1BvcG92ZXI+XHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJlZGl0b3JcIil9XHJcbiAgICAgICAgICAgIGtleT17aW5kZXh9XHJcbiAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcclxuICAgICAgICAgICAgICBvbkNsaWNrICYmIG9uQ2xpY2socmVjb3JkKTtcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgey4uLnBhcmFtc31cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJpY29uXCIpfT57aWNvbn08L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwidGV4dFwiKX0+e2NoaWxkcmVufTwvc3Bhbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgLy8gfVxyXG4gIH1cclxuICAvL+agkeeCueWHu+S6i+S7tlxyXG4gIHRyZWVTZWxlY3Qoc2VsZWN0ZWRLZXlzOiBhbnksIHsgc2VsZWN0ZWQsIHNlbGVjdGVkTm9kZXMgfTogYW55KSB7XHJcbiAgICBsZXQga2V5d29yZCA9IFwiXCI7XHJcbiAgICBjb25zdCB7IHNlYXJjaEtleSA9IFwia2V5XCIsIHNlYXJjaEZpZWxkID0gXCJcIiB9ID0gdGhpcy5wcm9wcy50cmVlUHJvcHM7XHJcbiAgICBjb25zdCB7IHRyZWVTZWxlY3RlZEtleSB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGlmIChzZWxlY3RlZCkge1xyXG4gICAgICBpZiAoc2VsZWN0ZWROb2Rlc1swXS5pc0xlYWYgfHwgIXNlbGVjdGVkTm9kZXNbMF0uY2hpbGRyZW4pIHtcclxuICAgICAgICBpZiAoc2VsZWN0ZWRLZXlzWzBdICE9PSB0cmVlU2VsZWN0ZWRLZXkpIHtcclxuICAgICAgICAgIC8vIGxldCBtYXBEYXRhID0gdGhpcy50cmVlUmVmLmN1cnJlbnQ/LnN0b3JlLmdldEZsYXR0ZW5EYXRhKCk7XHJcbiAgICAgICAgICBrZXl3b3JkID0gc2VsZWN0ZWROb2Rlc1swXS5kYXRhcmVmLmF0dHJpYnV0ZVtzZWFyY2hLZXldO1xyXG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgIHRyZWVTZWxlY3RlZEtleTogc2VsZWN0ZWRLZXlzWzBdLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICB0cmVlU2VsZWN0ZWRLZXk6IGtleXdvcmQsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgY29uc3QgZnJvbVZhbHVlID0gdGhpcy5zZWFyY2hSZWYuY3VycmVudD8uZ2V0RmllbGRzVmFsdWUoKTtcclxuICAgIHNlYXJjaEZpZWxkICYmIHRoaXMudGFibGVMb2FkKHsgLi4uZnJvbVZhbHVlLCBbc2VhcmNoRmllbGRdOiBrZXl3b3JkIH0pO1xyXG4gIH1cclxuICByZXNldFNlYXJjaCgpIHtcclxuICAgIHRoaXMuc2VhcmNoUmVmLmN1cnJlbnQ/LnJlc2V0RmllbGRzKCk7XHJcbiAgfVxyXG4gIGdldFRleHQocHJvcHMsIHRleHQpIHtcclxuICAgIGxldCBuZXdUZXh0ID0gdGV4dDtcclxuICAgIGlmIChwcm9wcz8uZGF0YSAmJiBwcm9wcz8uZGF0YT8ubGVuZ3RoID4gMCkge1xyXG4gICAgICBsZXQgZGF0YSA9IHByb3BzLmRhdGE7XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YT8ubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICBpZiAoZGF0YVtpXS52YWx1ZSA9PSB0ZXh0KSB7XHJcbiAgICAgICAgICBuZXdUZXh0ID0gZGF0YVtpXS5sYWJlbDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBuZXdUZXh0O1xyXG4gIH1cclxuXHJcbiAgcmVuZGVyKCkge1xyXG4gICAgY29uc3QgeyBzZWxlY3RlZFJvd0tleXMgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIGNvbHVtbnMgPSBbXSxcclxuICAgICAgc2hvd1NlYXJjaCA9IHRydWUsXHJcbiAgICAgIGNoaWxkcmVuLFxyXG4gICAgICBzdWJtaXRVcmwgPSBcIlwiLFxyXG4gICAgICB0YWJsZVByb3BzID0ge30sXHJcbiAgICAgIHRyZWVQcm9wcyA9IHt9LFxyXG4gICAgICBzaG93TGVmdCA9IGZhbHNlLFxyXG4gICAgICBzdWJtaXRQYXJhbXMgPSB7fSxcclxuICAgICAgc2hvd1Rvb2xCdXR0b24gPSB0cnVlLFxyXG4gICAgICBidXR0b25zID0gW10sXHJcbiAgICAgIGVkaXRvckZvcm0gPSB0cnVlLFxyXG4gICAgICBvblNob3dGb3JtLFxyXG4gICAgICBmb3JtQ2hhbmdlVmFsaWQgPSB0cnVlLFxyXG4gICAgICBjbGFzc05hbWUsXHJcbiAgICAgIGFjdGlvbkNvbHVtbnMgPSBbXSxcclxuICAgIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3Qge1xyXG4gICAgICBzdG9yZSA9IHt9LFxyXG4gICAgICBmaWx0ZXJDb2x1bW4gPSB0cnVlLFxyXG4gICAgICBhY3Rpb25Db2x1bW4gPSB0cnVlLFxyXG4gICAgICBzaG93Um93U2VsZWN0aW9uID0gdHJ1ZSxcclxuICAgICAgY29sdW1uT3JkZXIgPSB0cnVlLFxyXG4gICAgICAuLi5vdGhlcnRhYmxlUGFyYW1zXHJcbiAgICB9ID0gdGFibGVQcm9wcztcclxuXHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHN0b3JlOiB0cmVlU3RvcmUgPSB7fSxcclxuICAgICAgc2hvd1NlYXJjaDogdHJlZVNlYXJjaCA9IHRydWUsXHJcbiAgICAgIHRpdGxlQWxpYXMgPSBcInRpdGxlXCIsXHJcbiAgICAgIC4uLm90aGVydHJlZVBhcmFtc1xyXG4gICAgfSA9IHRyZWVQcm9wcztcclxuXHJcbiAgICBsZXQgdGFibGVQYXJhbXMgPSB7IGZpbHRlckNvbHVtbiwgc3RvcmUsIC4uLm90aGVydGFibGVQYXJhbXMgfSBhcyBhbnk7XHJcblxyXG4gICAgaWYgKHNob3dSb3dTZWxlY3Rpb24pIHtcclxuICAgICAgdGFibGVQYXJhbXMgPSB7XHJcbiAgICAgICAgLi4udGFibGVQYXJhbXMsXHJcbiAgICAgICAgcm93U2VsZWN0aW9uOiB7XHJcbiAgICAgICAgICBzZWxlY3RlZFJvd0tleXM6IHNlbGVjdGVkUm93S2V5cyxcclxuICAgICAgICAgIG9uU2VsZWN0OiB0aGlzLnJvd1NlbGVjdGlvbk9uU2VsZWN0LmJpbmQodGhpcyksXHJcbiAgICAgICAgICBvblNlbGVjdEFsbDogdGhpcy5yb3dTZWxlY3Rpb25PblNlbGVjdEFsbC5iaW5kKHRoaXMpLFxyXG4gICAgICAgICAgY29sdW1uV2lkdGg6IDQwLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgICBsZXQgdGFibGVDb2x1bW46IGFueVtdID0gW107XHJcbiAgICBjb25zdCBzZWFyY2hGb3JtczogYW55ID0gW107XHJcbiAgICBjb25zdCBlZGl0b3JGb3JtczogYW55ID0gW107XHJcbiAgICBjb25zdCBkZWZhdWx0VmFsdWU6IGFueSA9IHt9O1xyXG4gICAgY29uc3QgY29sdW1uQnV0dG9uczogYW55ID0gW107XHJcbiAgICBjb2x1bW5zLm1hcCgoaXRlbTogYW55KSA9PiB7XHJcbiAgICAgIGxldCB0ZW1wID0geyAuLi5pdGVtIH07XHJcbiAgICAgIGlmICh0ZW1wLnNlYXJjaCkge1xyXG4gICAgICAgIHNlYXJjaEZvcm1zLnB1c2goe1xyXG4gICAgICAgICAgbmFtZTogdGVtcC5maWVsZCB8fCB0ZW1wLmRhdGFJbmRleCxcclxuICAgICAgICAgIGxhYmVsOiB0ZW1wLnRpdGxlLFxyXG4gICAgICAgICAgdHlwZTogdGVtcC50eXBlLFxyXG4gICAgICAgICAgcHJvcHM6IHRlbXAucHJvcHMsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgZGVsZXRlIHRlbXAuc2VhcmNoO1xyXG4gICAgICB0ZW1wLmVkaXRvciAhPT0gZmFsc2UgJiZcclxuICAgICAgICBlZGl0b3JGb3Jtcy5wdXNoKHtcclxuICAgICAgICAgIG5hbWU6IHRlbXAuZmllbGQgfHwgdGVtcC5kYXRhSW5kZXgsXHJcbiAgICAgICAgICBsYWJlbDogdGVtcC50aXRsZSxcclxuICAgICAgICAgIHJ1bGVzOiB0ZW1wLnJ1bGVzLFxyXG4gICAgICAgICAgdHlwZTogdGVtcC50eXBlLFxyXG4gICAgICAgICAgc3BhbjogdGVtcC5zcGFuLFxyXG4gICAgICAgICAgZGljdE5hbWU6IHRlbXAuZGljdE5hbWUsXHJcbiAgICAgICAgICBwcm9wczogb21pdCh7IC4uLnRlbXAucHJvcHMgfSwgW1wiZGVmYXVsdFZhbHVlXCIsIFwidmFsdWVcIl0pLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICBpZiAoXHJcbiAgICAgICAgdGVtcC5wcm9wcz8uZGVmYXVsdFZhbHVlICE9PSB1bmRlZmluZWQgJiZcclxuICAgICAgICB0ZW1wLnByb3BzPy5kZWZhdWx0VmFsdWUgIT09IG51bGxcclxuICAgICAgKSB7XHJcbiAgICAgICAgY29uc3QgbmFtZSA9IHRlbXAuZmllbGQgfHwgdGVtcC5kYXRhSW5kZXg7XHJcbiAgICAgICAgZGVmYXVsdFZhbHVlW25hbWVdID0gdGVtcC5wcm9wcz8uZGVmYXVsdFZhbHVlO1xyXG4gICAgICB9XHJcbiAgICAgIGRlbGV0ZSB0ZW1wLnJ1bGVzO1xyXG4gICAgICBkZWxldGUgdGVtcC5zcGFuO1xyXG4gICAgICBpZiAodGVtcC5jb2x1bW5TZWFyY2gpIHtcclxuICAgICAgICB0ZW1wLmZpbHRlclByb3BzID0ge1xyXG4gICAgICAgICAgdHlwZTogdGVtcC50eXBlLFxyXG4gICAgICAgICAgcHJvcHM6IHRlbXAucHJvcHMsXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICBkZWxldGUgdGVtcC50eXBlO1xyXG4gICAgICBsZXQgdGVtcFByb3AgPSB7IC4uLnRlbXAucHJvcHMgfTtcclxuICAgICAgaWYgKHRlbXAuc3R5bGUpIHtcclxuICAgICAgICB0ZW1wID0ge1xyXG4gICAgICAgICAgcmVuZGVyOiAodGV4dDogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgICAgPD5cclxuICAgICAgICAgICAgICAgIHt0ZXh0ICE9PSBcIlwiICYmIHRleHQgIT09IG51bGwgJiYgdGV4dCAhPT0gdW5kZWZpbmVkICYmIChcclxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJjb2wtYmFja1wiKX0+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJjb2wtdGV4dFwiKX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICB7dGhpcy5nZXRUZXh0KHRlbXBQcm9wLCB0ZXh0KX1cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgICAgPC8+XHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgZWxsaXBzaXM6IHRydWUsXHJcbiAgICAgICAgICAuLi50ZW1wLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGVtcCA9IHtcclxuICAgICAgICAgIHJlbmRlcjogKHRleHQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gPD57dGhpcy5nZXRUZXh0KHRlbXBQcm9wLCB0ZXh0KX08Lz47XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgLi4udGVtcCxcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIGRlbGV0ZSB0ZW1wLnByb3BzO1xyXG4gICAgICBpZiAodGVtcD8uY29sdW1uU2hvdyAhPT0gZmFsc2UpIHRhYmxlQ29sdW1uLnB1c2godGVtcCk7XHJcbiAgICB9KTtcclxuICAgIGNvbnN0IHNlbGZCdXR0b25zOiBhbnkgPSBbXTtcclxuXHJcbiAgICBpZiAoZWRpdG9yRm9ybSA9PSB0cnVlKSB7XHJcbiAgICAgIGlmIChidXR0b25zLmluZGV4T2YoXCJzZWFyY2hcIikgPiAtMSkge1xyXG4gICAgICAgIGNvbHVtbkJ1dHRvbnMucHVzaChcclxuICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJlZGl0b3JcIil9XHJcbiAgICAgICAgICAgIG9uQ2xpY2s9eyhyZWNvcmQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgIGlmIChvblNob3dGb3JtKSB7XHJcbiAgICAgICAgICAgICAgICBvblNob3dGb3JtKHJlY29yZC5hdHRyaWJ1dGUgfHwgcmVjb3JkLCBcImRldGFpbFwiKTtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgdGhpcy5zaG93Rm9ybShyZWNvcmQuYXR0cmlidXRlIHx8IHJlY29yZCwgXCJkZXRhaWxcIik7XHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiaWNvblwiKX0+XHJcbiAgICAgICAgICAgICAgPEV5ZU91dGxpbmVkIC8+XHJcbiAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJ0ZXh0XCIpfT7mn6XnnIs8L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChidXR0b25zLmluZGV4T2YoXCJlZGl0b3JcIikgPiAtMSkge1xyXG4gICAgICAgIGNvbHVtbkJ1dHRvbnMucHVzaChcclxuICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJlZGl0b3JcIil9XHJcbiAgICAgICAgICAgIG9uQ2xpY2s9eyhyZWNvcmQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgIGlmIChvblNob3dGb3JtKSB7XHJcbiAgICAgICAgICAgICAgICBvblNob3dGb3JtKHJlY29yZC5hdHRyaWJ1dGUgfHwgcmVjb3JkLCBcImVkaXRvclwiKTtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgdGhpcy5zaG93Rm9ybShyZWNvcmQuYXR0cmlidXRlIHx8IHJlY29yZCwgXCJlZGl0b3JcIik7XHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiaWNvblwiKX0+XHJcbiAgICAgICAgICAgICAgPEVkaXRPdXRsaW5lZCAvPlxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwidGV4dFwiKX0+57yW6L6RPC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKGJ1dHRvbnMuaW5kZXhPZihcImFkZFwiKSA+IC0xKSB7XHJcbiAgICAgIHNlbGZCdXR0b25zLnB1c2goXHJcbiAgICAgICAgPEJ1dHRvblxyXG4gICAgICAgICAgdHlwZT17XCJwcmltYXJ5XCJ9XHJcbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IHsgb25TaG93Rm9ybSB9ID0gdGhpcy5wcm9wcztcclxuICAgICAgICAgICAgaWYgKG9uU2hvd0Zvcm0pIHtcclxuICAgICAgICAgICAgICBvblNob3dGb3JtKCk7XHJcbiAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuc2hvd0Zvcm0oKTtcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpY29uPXs8SWNvbiB0eXBlPXtpY29uVHlwZS5hZGR9IC8+fVxyXG4gICAgICAgID5cclxuICAgICAgICAgIOa3u+WKoFxyXG4gICAgICAgIDwvQnV0dG9uPlxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gICAgaWYgKGJ1dHRvbnMuaW5kZXhPZihcImRlbGV0ZVwiKSA+IC0xKSB7XHJcbiAgICAgIHNlbGZCdXR0b25zLnB1c2goXHJcbiAgICAgICAgPEJ1dHRvblxyXG4gICAgICAgICAgLy8gdHlwZT17XCJwcmltYXJ5XCJ9XHJcbiAgICAgICAgICBvbkNsaWNrPXt0aGlzLm9uRGVsZXRlLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICBpY29uPXs8SWNvbiB0eXBlPXtpY29uVHlwZS5kZWxldGUzfSAvPn1cclxuICAgICAgICAgIGRhbmdlclxyXG4gICAgICAgID5cclxuICAgICAgICAgIOWIoOmZpFxyXG4gICAgICAgIDwvQnV0dG9uPlxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoY2hpbGRyZW4pKSB7XHJcbiAgICAgIGNoaWxkcmVuLm1hcCgoaXRlbTogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKGl0ZW0/LnByb3BzPy5wYWdlVHlwZSA9PSBcInRvb2xCdXR0b25cIikge1xyXG4gICAgICAgICAgc2VsZkJ1dHRvbnMucHVzaChpdGVtKTtcclxuICAgICAgICB9IGVsc2UgaWYgKGl0ZW0/LnByb3BzPy5wYWdlVHlwZSA9PSBcImNsb3VtbkJ1dHRvblwiKSB7XHJcbiAgICAgICAgICBjb2x1bW5CdXR0b25zLnB1c2goaXRlbSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSBpZiAoY2hpbGRyZW4pIHtcclxuICAgICAgY29uc3QgeyBwcm9wcyB9OiBhbnkgPSBjaGlsZHJlbjtcclxuICAgICAgaWYgKHByb3BzPy5wYWdlVHlwZSA9PSBcInRvb2xCdXR0b25cIikge1xyXG4gICAgICAgIHNlbGZCdXR0b25zLnB1c2goY2hpbGRyZW4pO1xyXG4gICAgICB9IGVsc2UgaWYgKHByb3BzPy5wYWdlVHlwZSA9PSBcImNsb3VtbkJ1dHRvblwiKSB7XHJcbiAgICAgICAgY29sdW1uQnV0dG9ucy5wdXNoKGNoaWxkcmVuKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGFjdGlvbkNvbHVtbiAmJlxyXG4gICAgICB0YWJsZUNvbHVtbi5wdXNoKHtcclxuICAgICAgICB0aXRsZTogXCLmk43kvZxcIixcclxuICAgICAgICBkYXRhSW5kZXg6IFwiYWN0aW9uXCIsXHJcbiAgICAgICAgYWxpZ246IFwiY2VudGVyXCIsXHJcbiAgICAgICAgd2lkdGg6IDI1MCxcclxuICAgICAgICBmaXhlZDogXCJyaWdodFwiLFxyXG4gICAgICAgIGVsbGlwc2lzOiB0cnVlLFxyXG4gICAgICAgIHJlbmRlcjogKHRleHQ6IGFueSwgcmVjb3JkOiBhbnkpID0+IHtcclxuICAgICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJhY3Rpb25cIil9PlxyXG4gICAgICAgICAgICAgIHt0aGlzLnJlbmRlckNsb3VtbkJ1dHRvbihjb2x1bW5CdXR0b25zLCByZWNvcmQpfVxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgICBjb25zdCBoZWFkZXJDb3VudCA9IHNob3dMZWZ0ID8gMiA6IDM7XHJcbiAgICBpZiAoY29sdW1uT3JkZXIpXHJcbiAgICAgIHRhYmxlQ29sdW1uID0gW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIHRpdGxlOiBcIiNcIixcclxuICAgICAgICAgIHdpZHRoOiAzMCxcclxuICAgICAgICAgIGFsaWduOiBcImNlbnRlclwiLFxyXG4gICAgICAgICAgcmVuZGVyOiAodGV4dCwgcmVhY29yZCwgaW5kZXgpID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIDw+e2luZGV4ICsgMX08Lz47XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgLi4udGFibGVDb2x1bW4sXHJcbiAgICAgIF07XHJcbiAgICBpZiAodGFibGVQcm9wcy5wYWdpbmF0aW9uICE9PSBmYWxzZSkge1xyXG4gICAgICAvLyBzY3JvbGw9e3sgeDogXCJtYXgtY29udGVudFwiLCB5OiBcIjI1dndcIiB9fVxyXG4gICAgICB0YWJsZVBhcmFtcyA9IHsgc2Nyb2xsOiB7IHg6IFwibWF4LWNvbnRlbnRcIiwgeTogXCIyNXZ3XCIgfSwgLi4udGFibGVQYXJhbXMgfTtcclxuICAgIH1cclxuICAgIHJldHVybiAoXHJcbiAgICAgIDxkaXZcclxuICAgICAgICBjbGFzc05hbWU9e2NscyhnZXRMZXNzKHN0eWxlcywgXCJwYWdlXCIpLCBjbGFzc05hbWUpfVxyXG4gICAgICAgIHN0eWxlPXt7IGRpc3BsYXk6IFwiZmxleFwiIH19XHJcbiAgICAgID5cclxuICAgICAgICB7c2hvd0xlZnQgJiYgKFxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImxlZnRcIil9PlxyXG4gICAgICAgICAgICA8VHJlZVxyXG4gICAgICAgICAgICAgIHN0b3JlPXt7IC4uLnRyZWVTdG9yZSB9fVxyXG4gICAgICAgICAgICAgIHNob3dJY29uPXtmYWxzZX1cclxuICAgICAgICAgICAgICBjaGVja2FibGU9e2ZhbHNlfVxyXG4gICAgICAgICAgICAgIHNlYXJjaGFibGU9e3RyZWVTZWFyY2h9XHJcbiAgICAgICAgICAgICAgb25TZWxlY3Q9e3RoaXMudHJlZVNlbGVjdC5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgICAgIHNlbGVjdGVkS2V5cz17W3RoaXMuc3RhdGUudHJlZVNlbGVjdGVkS2V5XX1cclxuICAgICAgICAgICAgICB0aXRsZUFsaWFzPXt0aXRsZUFsaWFzfVxyXG4gICAgICAgICAgICAgIHsuLi5vdGhlcnRyZWVQYXJhbXN9XHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICApfVxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJyaWdodFwiKX0+XHJcbiAgICAgICAgICB7c2hvd1NlYXJjaCAmJiAoXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJoZWFkZXJcIil9PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbHMoeyBbZ2V0TGVzcyhzdHlsZXMsIFwiZm9ybVwiKV06ICFzaG93TGVmdCB9KX0+XHJcbiAgICAgICAgICAgICAgICA8Rm9ybVxyXG4gICAgICAgICAgICAgICAgICByZWY9e3RoaXMuc2VhcmNoUmVmfVxyXG4gICAgICAgICAgICAgICAgICBsYWJlbENvbD17e319XHJcbiAgICAgICAgICAgICAgICAgIHdyYXBwZXJDb2w9e3t9fVxyXG4gICAgICAgICAgICAgICAgICBsYXlvdXQ9XCJpbmxpbmVcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7c2VhcmNoRm9ybXMubWFwKChpdGVtOiBhbnksIGluZGV4OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoaW5kZXggPiBoZWFkZXJDb3VudCAmJiAhdGhpcy5zdGF0ZS5leHBhbmQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW1cclxuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e2l0ZW0ubGFiZWx9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9e2l0ZW0ubmFtZX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gcnVsZXM9e2l0ZW0ucnVsZXN9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleT17aW5kZXh9XHJcbiAgICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtnZXROb2RlKGl0ZW0udHlwZSwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC4uLml0ZW0ucHJvcHMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IGDor7fovpPlhaUke2l0ZW0ubGFiZWx9YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cclxuICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICB9KX1cclxuICAgICAgICAgICAgICAgIDwvRm9ybT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcInNlYXJjaC1idXR0b25zXCIpfVxyXG4gICAgICAgICAgICAgICAgc3R5bGU9e3sgbWFyZ2luVG9wOiAwIH19XHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPEJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICB0eXBlPXtcInByaW1hcnlcIn1cclxuICAgICAgICAgICAgICAgICAgb25DbGljaz17dGhpcy5vblNlYXJjaC5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgICAgICAgICBpY29uPXs8SWNvbiB0eXBlPXtpY29uVHlwZS5zZWFyY2h9IC8+fVxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICDmn6Xor6JcclxuICAgICAgICAgICAgICAgIDwvQnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPEJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICB0eXBlPXtcInByaW1hcnlcIn1cclxuICAgICAgICAgICAgICAgICAgb25DbGljaz17dGhpcy5yZXNldFNlYXJjaC5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgICAgICAgICBpY29uPXs8SWNvbiB0eXBlPXtpY29uVHlwZS5yZWZyZXNofSAvPn1cclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAg6YeN572uXHJcbiAgICAgICAgICAgICAgICA8L0J1dHRvbj5cclxuICAgICAgICAgICAgICAgIHtzZWFyY2hGb3Jtcy5sZW5ndGggPiAzICYmIChcclxuICAgICAgICAgICAgICAgICAgPGFcclxuICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e3N0eWxlcy5hX3N0eWxlfVxyXG4gICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZXhwYW5kIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGV4cGFuZDogIWV4cGFuZCxcclxuICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICB7dGhpcy5zdGF0ZS5leHBhbmQgPyBcIuaUtui1t1wiIDogXCLlsZXlvIBcIn1cclxuICAgICAgICAgICAgICAgICAgICB7dGhpcy5zdGF0ZS5leHBhbmQgPyA8VXBPdXRsaW5lZCAvPiA6IDxEb3duT3V0bGluZWQgLz59XHJcbiAgICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgKX1cclxuICAgICAgICAgIHtzaG93VG9vbEJ1dHRvbiAmJiB0aGlzLnJlbmRlclRvb2xCdXR0b25zKHNlbGZCdXR0b25zKX1cclxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbHMoZ2V0TGVzcyhzdHlsZXMsIFwidGFibGVcIikpfT5cclxuICAgICAgICAgICAgPFRhYmxlXHJcbiAgICAgICAgICAgICAgcmVmPXt0aGlzLnRhYmxlUmVmfVxyXG4gICAgICAgICAgICAgIGNvbHVtbnM9e3RhYmxlQ29sdW1ufVxyXG4gICAgICAgICAgICAgIGV4cGFuZGFibGU9e3tcclxuICAgICAgICAgICAgICAgIGV4cGFuZEljb246ICh7IGV4cGFuZGVkLCBvbkV4cGFuZCwgcmVjb3JkIH0pID0+IHtcclxuICAgICAgICAgICAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgICAgICAgICA8PlxyXG4gICAgICAgICAgICAgICAgICAgICAge2V4cGFuZGVkID8gKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8RG93bk91dGxpbmVkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KGUpID0+IG9uRXhwYW5kKHJlY29yZCwgZSl9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJleHBhbmQtaWNvblwiKX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICkgOiAoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlY29yZC5jaGlsZE5vZGVzICYmIChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8UmlnaHRPdXRsaW5lZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KGUpID0+IG9uRXhwYW5kKHJlY29yZCwgZSl9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImV4cGFuZC1pY29uXCIpfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgICAgICAgICAgPC8+XHJcbiAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgY29sdW1uT3JkZXI9e3RydWV9XHJcbiAgICAgICAgICAgICAgYm9yZGVyZWQ9e3RydWV9XHJcbiAgICAgICAgICAgICAgc2l6ZT17dGhpcy5zdGF0ZS50YWJsZVNpemV9XHJcbiAgICAgICAgICAgICAgey4uLnRhYmxlUGFyYW1zfVxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAge2VkaXRvckZvcm0gJiYgKFxyXG4gICAgICAgICAgPEVkaXRvckZvcm1cclxuICAgICAgICAgICAgcmVmPXt0aGlzLmVkaXRvclJlZn1cclxuICAgICAgICAgICAgY2FsbEJhY2s9e3RoaXMudGFibGVSZWxvYWQuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgZm9ybVByb3BzPXtlZGl0b3JGb3Jtc31cclxuICAgICAgICAgICAgc3VibWl0VXJsPXtzdWJtaXRVcmx9XHJcbiAgICAgICAgICAgIHN1Ym1pdFBhcmFtcz17c3VibWl0UGFyYW1zfVxyXG4gICAgICAgICAgICBvblN1Ym1pdD17dGhpcy5wcm9wcy5vblN1Ym1pdH1cclxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlPXtkZWZhdWx0VmFsdWV9XHJcbiAgICAgICAgICAgIG9uSGlkZUZvcm09e3RoaXMucHJvcHMub25IaWRlRm9ybX1cclxuICAgICAgICAgICAgb25Gb3JtQ2hhbmdlPXt0aGlzLnByb3BzLm9uRm9ybUNoYW5nZX1cclxuICAgICAgICAgICAgZm9ybVR5cGU9e3RoaXMucHJvcHMuZm9ybVR5cGUgfHwgdGhpcy5zdGF0ZS5mb3JtVHlwZX1cclxuICAgICAgICAgICAgY2hhbmdlVmFsaWQ9e2Zvcm1DaGFuZ2VWYWxpZH1cclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgKX1cclxuICAgICAgPC9kaXY+XHJcbiAgICApO1xyXG4gIH1cclxufVxyXG5leHBvcnQgZGVmYXVsdCBCYXNlUGFnZTtcclxuIl19
|
|
1010
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3BhZ2UvQmFzZVBhZ2UvaW5kZXgudHN4Il0sIm5hbWVzIjpbIlJlYWN0IiwiUHVyZUNvbXBvbmVudCIsIlRhYmxlIiwiVHJlZSIsIkZvcm0iLCJCdXR0b24iLCJNb2RhbCIsIlBvcG92ZXIiLCJtZXNzYWdlIiwiSWNvbiIsImljb25UeXBlIiwiRWRpdG9yRm9ybSIsImNscyIsInN0eWxlcyIsIkNvbCIsIlJvdyIsIkRvd25PdXRsaW5lZCIsIlVwT3V0bGluZWQiLCJFeWVPdXRsaW5lZCIsIkVkaXRPdXRsaW5lZCIsIlJpZ2h0T3V0bGluZWQiLCJnZXRMZXNzIiwiZ2V0Tm9kZSIsInJlcXVlc3QiLCJvbWl0IiwiY29uZmlnIiwiZ2V0U3RvcmFnZSIsIkJhc2VQYWdlIiwicHJvcHMiLCJjcmVhdGVSZWYiLCJldiIsImRhdGEiLCJKU09OIiwicGFyc2UiLCJfdGhpcyIsImV2ZW50VHlwZSIsInBheWxvYWQiLCJ0eXBlIiwic2V0U3RhdGUiLCJmb3JtVHlwZSIsInNpemUiLCJ0YWJsZVNpemUiLCJjaGVja2VkVHJlZUtleXMiLCJzdGF0ZSIsIm5hbWUiLCJ1c2VyVHlwZSIsImFjY291bnQiLCJ2YWx1ZSIsImRlcHRJZCIsInRhYmxlTG9hZCIsInN0b3JlUHJlZml4IiwiY29udGVudCIsInNlbGVjdGVkUm93S2V5cyIsInNlbGVjdGVkUm93RGF0YXMiLCJ0cmVlU2VsZWN0ZWRLZXkiLCJleHBhbmQiLCJpbml0RGF0YSIsIndpbmRvdyIsImFkZEV2ZW50TGlzdGVuZXIiLCJsaXN0ZW5NZXNzYWdlIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsImVkaXRvcmZsYWciLCJlZGl0b3JSZWYiLCJjdXJyZW50Iiwic2hvdyIsImhpZGVGb3JtIiwiZGVsZXRlVXJsIiwib25EZWxldGUiLCJkZWxldGVQYXJhbXMiLCJsZW5ndGgiLCJ3YXJuaW5nIiwiRXJyb3IiLCJjb25maXJtIiwidGl0bGUiLCJva1RleHQiLCJjYW5jZWxUZXh0Iiwib25PayIsImRlZmF1bHRQYXJhbXMiLCJtZXRob2QiLCJwYXJhbXMiLCJpZHMiLCJqb2luIiwicmVxdWVzdFBhcmFtcyIsInRoZW4iLCJyZXMiLCJjb2RlIiwic3VjY2VzcyIsImVycm9yIiwiY2F0Y2giLCJjb25zb2xlIiwibG9nIiwidGFibGVSZWYiLCJzdG9yZSIsImxvYWQiLCJvblNlYXJjaCIsImZyb21WYWx1ZSIsInNlYXJjaFJlZiIsImdldEZpZWxkc1ZhbHVlIiwicmVsb2FkIiwicmVjb3JkIiwic2VsZWN0ZWQiLCJuZXdTZWxlY3RlZFJvd0tleXMiLCJuZXdTZWxlY3RlZFJvd0RhdGFzIiwiaWQiLCJtYXAiLCJpdGVtIiwiaW5kZXgiLCJzcGxpY2UiLCJzZWxlY3RlZFJvd3MiLCJjaGFuZ2VSb3dzIiwibmV3aWRzIiwibmV3ZGF0YXMiLCJjaGFuZ2VJZHMiLCJpbmRleE9mIiwicHVzaCIsInRvb2xidXR0b25zIiwiZmxhZyIsImNoaWxkcmVuIiwicGFnZVR5cGUiLCJvbkNsaWNrIiwiaWNvbiIsIm1hcmdpbkxlZnQiLCJjb2x1bW5CdXR0b25zIiwiZWRpdG9yRm9ybSIsImJ1dHRvbnMiLCJuZXdCdXR0b25zIiwicmVjb3JkU2hvdyIsImV2YWwiLCJzZWxlY3RlZEtleXMiLCJzZWxlY3RlZE5vZGVzIiwia2V5d29yZCIsInRyZWVQcm9wcyIsInNlYXJjaEtleSIsInNlYXJjaEZpZWxkIiwiaXNMZWFmIiwiZGF0YXJlZiIsImF0dHJpYnV0ZSIsInJlc2V0RmllbGRzIiwidGV4dCIsIm5ld1RleHQiLCJpIiwibGFiZWwiLCJjb2x1bW5zIiwic2hvd1NlYXJjaCIsInN1Ym1pdFVybCIsInRhYmxlUHJvcHMiLCJzaG93TGVmdCIsInN1Ym1pdFBhcmFtcyIsInNob3dUb29sQnV0dG9uIiwib25TaG93Rm9ybSIsImZvcm1DaGFuZ2VWYWxpZCIsImNsYXNzTmFtZSIsImFjdGlvbkNvbHVtbnMiLCJmaWx0ZXJDb2x1bW4iLCJhY3Rpb25Db2x1bW4iLCJzaG93Um93U2VsZWN0aW9uIiwiY29sdW1uT3JkZXIiLCJvdGhlcnRhYmxlUGFyYW1zIiwidHJlZVN0b3JlIiwidHJlZVNlYXJjaCIsInRpdGxlQWxpYXMiLCJvdGhlcnRyZWVQYXJhbXMiLCJ0YWJsZVBhcmFtcyIsInJvd1NlbGVjdGlvbiIsIm9uU2VsZWN0Iiwicm93U2VsZWN0aW9uT25TZWxlY3QiLCJiaW5kIiwib25TZWxlY3RBbGwiLCJyb3dTZWxlY3Rpb25PblNlbGVjdEFsbCIsImNvbHVtbldpZHRoIiwidGFibGVDb2x1bW4iLCJzZWFyY2hGb3JtcyIsImVkaXRvckZvcm1zIiwiZGVmYXVsdFZhbHVlIiwidGVtcCIsInNlYXJjaCIsImZpZWxkIiwiZGF0YUluZGV4IiwiZWRpdG9yIiwicnVsZXMiLCJzcGFuIiwiZGljdE5hbWUiLCJ1bmRlZmluZWQiLCJjb2x1bW5TZWFyY2giLCJmaWx0ZXJQcm9wcyIsInRlbXBQcm9wIiwic3R5bGUiLCJyZW5kZXIiLCJnZXRUZXh0IiwiZWxsaXBzaXMiLCJjb2x1bW5TaG93Iiwic2VsZkJ1dHRvbnMiLCJzaG93Rm9ybSIsImFkZCIsImRlbGV0ZTMiLCJBcnJheSIsImlzQXJyYXkiLCJhbGlnbiIsIndpZHRoIiwiZml4ZWQiLCJyZW5kZXJDbG91bW5CdXR0b24iLCJoZWFkZXJDb3VudCIsInJlYWNvcmQiLCJwYWdpbmF0aW9uIiwic2Nyb2xsIiwieCIsInkiLCJkaXNwbGF5IiwidHJlZVNlbGVjdCIsInBhZGRpbmdSaWdodCIsInBsYWNlaG9sZGVyIiwicGFkZGluZyIsIm1hcmdpblRvcCIsInJlc2V0U2VhcmNoIiwicmVmcmVzaCIsInJlbmRlclRvb2xCdXR0b25zIiwiZXhwYW5kSWNvbiIsImV4cGFuZGVkIiwib25FeHBhbmQiLCJlIiwiY2hpbGROb2RlcyIsInRhYmxlUmVsb2FkIiwib25TdWJtaXQiLCJvbkhpZGVGb3JtIiwib25Gb3JtQ2hhbmdlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU9BLEtBQVAsSUFB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QUFRLEVBQUUsS0FBS3ZILEtBQUwsQ0FBV2tNLFFBTnZCO0FBT0UsUUFBQSxZQUFZLEVBQUVqRCxZQVBoQjtBQVFFLFFBQUEsVUFBVSxFQUFFLEtBQUtqSixLQUFMLENBQVdtTSxVQVJ6QjtBQVNFLFFBQUEsWUFBWSxFQUFFLEtBQUtuTSxLQUFMLENBQVdvTSxZQVQzQjtBQVVFLFFBQUEsUUFBUSxFQUFFLEtBQUtwTSxLQUFMLENBQVdXLFFBQVgsSUFBdUIsS0FBS0ksS0FBTCxDQUFXSixRQVY5QztBQVdFLFFBQUEsV0FBVyxFQUFFK0c7QUFYZixRQTlJSixDQURGO0FBK0pEOzs7O0VBenhCb0JySixhOztBQTJ4QnZCLGVBQWUwQixRQUFmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IFB1cmVDb21wb25lbnQgfSBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IFRhYmxlIGZyb20gXCIuLi8uLi9iYXNlL3RhYmxlXCI7XHJcbmltcG9ydCBUcmVlIGZyb20gXCIuLi8uLi9iYXNlL3RyZWVcIjtcclxuaW1wb3J0IEZvcm0gZnJvbSBcIi4uLy4uL2Jhc2UvZm9ybVwiO1xyXG5pbXBvcnQgQnV0dG9uIGZyb20gXCIuLi8uLi9iYXNlL2J1dHRvblwiO1xyXG5pbXBvcnQgTW9kYWwgZnJvbSBcIi4uLy4uL2Jhc2UvbW9kYWxcIjtcclxuaW1wb3J0IFBvcG92ZXIgZnJvbSBcIi4uLy4uL2Jhc2UvcG9wb3ZlclwiO1xyXG5pbXBvcnQgbWVzc2FnZSBmcm9tIFwiLi4vLi4vYmFzZS9tZXNzYWdlXCI7XHJcbmltcG9ydCBJY29uIGZyb20gXCIuLi8uLi9iYXNlL2NvbW1vbi9JY29uRm9udFwiO1xyXG5pbXBvcnQgeyBpY29uVHlwZSB9IGZyb20gXCIuLi8uLi9jb25zdGFudHNcIjtcclxuaW1wb3J0IEVkaXRvckZvcm0gZnJvbSBcIi4vRm9ybVwiO1xyXG5pbXBvcnQgY2xzIGZyb20gXCJjbGFzc25hbWVzXCI7XHJcbmltcG9ydCBzdHlsZXMgZnJvbSBcIi4vaW5kZXgubW9kdWxlLmxlc3NcIjtcclxuaW1wb3J0IFN0b3JlLCB7IFBhZ2VTdG9yZSwgU3RvcmVQcm9wcyB9IGZyb20gXCJAYmotbnNjL21zblwiO1xyXG5pbXBvcnQgQ29sIGZyb20gXCIuLi8uLi9iYXNlL2dyaWQvQ29sXCI7XHJcbmltcG9ydCBSb3cgZnJvbSBcIi4uLy4uL2Jhc2UvZ3JpZC9Sb3dcIjtcclxuaW1wb3J0IHtcclxuICBEb3duT3V0bGluZWQsXHJcbiAgVXBPdXRsaW5lZCxcclxuICBFeWVPdXRsaW5lZCxcclxuICBFZGl0T3V0bGluZWQsXHJcbiAgUmlnaHRPdXRsaW5lZCxcclxufSBmcm9tIFwiQGFudC1kZXNpZ24vaWNvbnNcIjtcclxuaW1wb3J0IHsgZ2V0TGVzcywgZ2V0Tm9kZSB9IGZyb20gXCIuLi8uLi91dGlsc1wiO1xyXG5pbXBvcnQgcmVxdWVzdCBmcm9tIFwibnNjLXJlcXVlc3RcIjtcclxuaW1wb3J0IG9taXQgZnJvbSBcIm9taXQuanNcIjtcclxuaW1wb3J0IGNvbmZpZyBmcm9tIFwiLi4vLi4vY29uZmlnXCI7XHJcbmltcG9ydCB7IGdldFN0b3JhZ2UgfSBmcm9tIFwiQGJqLW5zYy9mdW5jdGlvbnNcIjtcclxuaW50ZXJmYWNlIFRhYmxlUHJvcHMge1xyXG4gIGFjdGlvbkNvbHVtbj86IGJvb2xlYW47IC8v5piv5ZCm5pi+56S65pON5L2c5YiXXHJcbiAgc3RvcmU/OiBTdG9yZVByb3BzO1xyXG4gIGZpbHRlckNvbHVtbj86IGJvb2xlYW47IC8v5piv5ZCm5pi+56S66L+H5ruk5oyJ6ZKuXHJcbiAgc2hvd1Jvd1NlbGVjdGlvbj86IGJvb2xlYW47IC8v5piv5ZCm6KGo5qC85Yu+6YCJ5YiXXHJcbiAgcGFnaW5hdGlvbj86IGJvb2xlYW47IC8v5piv5ZCm5pi+56S65YiG6aG1XHJcbiAgY29sdW1uT3JkZXI/OiBib29sZWFuOyAvL+aYr+WQpuaYvuekuuihqOagvOW6j+WIl1xyXG4gIFtwcm9wc05hbWU6IHN0cmluZ106IGFueTtcclxufVxyXG5pbnRlcmZhY2UgVHJlZVByb3BzIHtcclxuICBzdG9yZT86IFN0b3JlUHJvcHM7XHJcbiAgc2hvd1NlYXJjaD86IGJvb2xlYW47IC8v5piv5ZCm5pi+56S65pCc57Si5qGGXHJcbiAgc2VhcmNoS2V5Pzogc3RyaW5nOyAvL+aQnOe0onZhbHVl5a+55bqU55qEa2V5XHJcbiAgc2VhcmNoRmllbGQ/OiBzdHJpbmc7IC8v5p+l6K+i5a+55bqU55qEa2V5XHJcbiAgdGl0bGVBbGlhcz86IHN0cmluZzsgLy/moJF0aXRsZeWvueW6lOeahGtleSzpu5jorqR0aXRsZVxyXG4gIG5vZGVQb3Jwcz86IG9iamVjdDtcclxuICBbcHJvcHNOYW1lOiBzdHJpbmddOiBhbnk7XHJcbn1cclxuaW50ZXJmYWNlIE5TQ0Jhc2VCYWdlUHJvcHMge1xyXG4gIHNob3dTZWFyY2g/OiBib29sZWFuOyAvL+aYr+WQpuaYvuekuuWktOmDqOaQnOe0ouagj1xyXG4gIHRhYmxlUHJvcHM/OiBUYWJsZVByb3BzOyAvL+ihqOagvOWPguaVsFxyXG4gIHRyZWVQcm9wcz86IFRyZWVQcm9wczsgLy/lt6bkvqfmoJHlj4LmlbBcclxuICBzdWJtaXRQYXJhbXM/OiBPYmplY3Q7IC8v5re75Yqg5Y+C5pWw77yM6buY6K6kbW90aG9kOnBvc3TvvIwg5Y+C5pWw6YCa6L+HZGF0YeS8oOmAklxyXG4gIHN1Ym1pdFVybD86IHN0cmluZztcclxuICBvblN1Ym1pdD86ICh2YWx1ZT86IGFueSwgbGFiZWw/OiBhbnkpID0+IHZvaWQ7XHJcbiAgY29sdW1uczogQXJyYXk8T2JqZWN0PjtcclxuICBzaG93TGVmdD86IGJvb2xlYW47IC8v5piv5ZCm5pi+56S65bem5L6n55uu5b2V5qCRXHJcbiAgc2hvd1Rvb2xCdXR0b24/OiBib29sZWFuOyAvL+aYr+WQpuaYvuekuuaMiemSruagj1xyXG4gIGVkaXRvckZvcm0/OiBib29sZWFuOyAvL+aYr+WQpumcgOimgeihqOWNleWKn+iDvSAsIOS4umZhbHNlIOe8lui+ke+8jOafpeeci++8jOaWsOWinuWKn+iDveWdh+S4jeWPr+eUqFxyXG4gIGRlbGV0ZVVybD86IHN0cmluZzsgLy/liKDpmaR1cmxcclxuICBvbkRlbGV0ZT86IChzZWxlY3RlZEtleXM/OiBBcnJheTxhbnk+KSA9PiB2b2lkOyAvL+WIoOmZpOWPguaVsO+8jOm7mOiupG1vdGhvZDpwb3N077yMIOWPguaVsOmAmui/h2lkc+aLvOaOpeS8oOmAkue7meWQjuWPsFxyXG4gIGRlbGV0ZVBhcmFtcz86IE9iamVjdDtcclxuICBjaGlsZHJlbj86IFJlYWN0LlJlYWN0Tm9kZTtcclxuICBvblNlYXJjaD86ICh2YWx1ZT86IGFueSkgPT4gdm9pZDtcclxuICBpbml0RGF0YT86IGFueTsgLy/liJ3lp4vljJblm57osIPlh73mlbDvvIzlnKhjb21wb25lbnREaWRNb3VudOS4reiwg+eUqFxyXG4gIGJ1dHRvbnM/OiBBcnJheTxzdHJpbmc+OyAvL+aMiemSrumbhuWQiCAgWydhZGQnLCdkZWxldGUnLCdzZWFyY2gnLCdlZGl0b3InXVxyXG4gIG9uU2hvd0Zvcm0/OiAodmFsdWU/OiBhbnksIGVkaXRvckZsYWc/OiBzdHJpbmcpID0+IHZvaWQ7IC8v5omT5byA6KGo5Y2V5Zue6LCDXHJcbiAgb25IaWRlRm9ybT86ICgpID0+IHZvaWQ7IC8v5omT5byA6KGo5Y2V5Zue6LCDXHJcbiAgb25Gb3JtQ2hhbmdlPzogKGNoYW5nZWRWYWx1ZXM/OiBhbnksIGFsbFZhbHVlcz86IGFueSkgPT4gdm9pZDsgLy/ooajljZVvbkNoYW5nZeWbnuiwg1xyXG4gIGZvcm1UeXBlPzogXCJtb2RhbFwiIHwgXCJkcmF3ZXJcIjtcclxuICBmb3JtQ2hhbmdlVmFsaWQ/OiBib29sZWFuOyAvL+ihqOWNleagoemqjFxyXG4gIGNsYXNzTmFtZT86IGFueTtcclxuICBhY3Rpb25Db2x1bW5zPzogQXJyYXk8YW55PjtcclxufVxyXG5cclxuY2xhc3MgQmFzZVBhZ2UgZXh0ZW5kcyBQdXJlQ29tcG9uZW50PE5TQ0Jhc2VCYWdlUHJvcHMsIGFueT4ge1xyXG4gIHRhYmxlUmVmID0gUmVhY3QuY3JlYXRlUmVmPGFueT4oKTtcclxuICB0cmVlUmVmID0gUmVhY3QuY3JlYXRlUmVmPGFueT4oKTtcclxuICBzZWFyY2hSZWYgPSBSZWFjdC5jcmVhdGVSZWY8YW55PigpO1xyXG4gIGVkaXRvclJlZiA9IFJlYWN0LmNyZWF0ZVJlZjxhbnk+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByb3BzOiBhbnkpIHtcclxuICAgIHN1cGVyKHByb3BzKTtcclxuICAgIGxldCB7IHN0b3JlUHJlZml4IH0gPSBjb25maWcoKTtcclxuICAgIGxldCB0eXBlID0gZ2V0U3RvcmFnZShcclxuICAgICAgc3RvcmVQcmVmaXggPyBzdG9yZVByZWZpeCArIFwiLVwiICsgXCJmb3JtVHlwZVwiIDogXCJmb3JtVHlwZVwiXHJcbiAgICApO1xyXG4gICAgdHlwZSA9IHR5cGU/LmNvbnRlbnQ7XHJcbiAgICBsZXQgc2l6ZSA9IGdldFN0b3JhZ2UoXHJcbiAgICAgIHN0b3JlUHJlZml4ID8gc3RvcmVQcmVmaXggKyBcIi1cIiArIFwidGFibGVTaXplXCIgOiBcInRhYmxlU2l6ZVwiXHJcbiAgICApO1xyXG4gICAgdHlwZSA9IHR5cGU/LmNvbnRlbnQ7XHJcbiAgICBzaXplID0gc2l6ZT8uY29udGVudDtcclxuICAgIHRoaXMuc3RhdGUgPSB7XHJcbiAgICAgIHR5cGU6IFwiYWRkXCIsXHJcbiAgICAgIHNlbGVjdGVkUm93S2V5czogW10sXHJcbiAgICAgIHNlbGVjdGVkUm93RGF0YXM6IFtdLFxyXG4gICAgICB0cmVlU2VsZWN0ZWRLZXk6IFwiXCIsXHJcbiAgICAgIGV4cGFuZDogZmFsc2UsXHJcbiAgICAgIGZvcm1UeXBlOiB0eXBlIHx8IFwibW9kYWxcIixcclxuICAgICAgdGFibGVTaXplOiBzaXplIHx8IFwiZGVmYXVsdFwiLFxyXG4gICAgfTtcclxuICB9XHJcbiAgY29tcG9uZW50RGlkTW91bnQoKSB7XHJcbiAgICBjb25zdCB7IGluaXREYXRhIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgaW5pdERhdGEgJiYgaW5pdERhdGEoKTtcclxuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKFwibWVzc2FnZVwiLCB0aGlzLmxpc3Rlbk1lc3NhZ2UpO1xyXG4gIH1cclxuXHJcbiAgY29tcG9uZW50V2lsbFVubW91bnQoKSB7XHJcbiAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcihcIm1lc3NhZ2VcIiwgdGhpcy5saXN0ZW5NZXNzYWdlKTtcclxuICB9XHJcbiAgbGlzdGVuTWVzc2FnZSA9IChldikgPT4ge1xyXG4gICAgY29uc3QgZGF0YSA9IHR5cGVvZiBldi5kYXRhID09PSBcInN0cmluZ1wiID8gSlNPTi5wYXJzZShldi5kYXRhKSA6IGV2LmRhdGE7XHJcbiAgICBsZXQgX3RoaXMgPSB0aGlzO1xyXG4gICAgaWYgKGRhdGEuZXZlbnRUeXBlID09IFwiY2hhbmdlRm9ybVR5cGVcIikge1xyXG4gICAgICBjb25zdCB7IHBheWxvYWQgfSA9IGRhdGE7XHJcbiAgICAgIGlmIChwYXlsb2FkLnR5cGUgPT0gXCJtb2RhbFwiIHx8IHBheWxvYWQudHlwZSA9PSBcImRyYXdlclwiKSB7XHJcbiAgICAgICAgX3RoaXMuc2V0U3RhdGUoeyBmb3JtVHlwZTogcGF5bG9hZC50eXBlIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBpZiAoZGF0YS5ldmVudFR5cGUgPT0gXCJjaGFuZ2VUYWJsZVNpemVcIikge1xyXG4gICAgICBjb25zdCB7IHBheWxvYWQgfSA9IGRhdGE7XHJcbiAgICAgIGlmIChcclxuICAgICAgICBwYXlsb2FkLnNpemUgPT0gXCJkZWZhdWx0XCIgfHxcclxuICAgICAgICBwYXlsb2FkLnNpemUgPT0gXCJzbWFsbFwiIHx8XHJcbiAgICAgICAgcGF5bG9hZC5zaXplID09IFwibWlkZGxlXCJcclxuICAgICAgKSB7XHJcbiAgICAgICAgX3RoaXMuc2V0U3RhdGUoeyB0YWJsZVNpemU6IHBheWxvYWQuc2l6ZSB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH07XHJcbiAgb25TZWxlY3QgPSAoY2hlY2tlZFRyZWVLZXlzOiBhbnkpID0+IHtcclxuICAgIGNvbnN0IHsgbmFtZSwgdXNlclR5cGUsIGFjY291bnQgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBjb25zdCB2YWx1ZSA9IHsgbmFtZSwgdXNlclR5cGUsIGFjY291bnQsIGRlcHRJZDogY2hlY2tlZFRyZWVLZXlzWzBdIH07XHJcbiAgICB0aGlzLnRhYmxlTG9hZCh2YWx1ZSk7XHJcbiAgfTtcclxuXHJcbiAgLy/mmL7npLrooajljZVcclxuICBzaG93Rm9ybSh2YWx1ZT86IGFueSwgZWRpdG9yZmxhZyA9IFwiYWRkXCIpIHtcclxuICAgIHRoaXMuZWRpdG9yUmVmLmN1cnJlbnQ/LnNob3codmFsdWUsIGVkaXRvcmZsYWcpO1xyXG4gIH1cclxuXHJcbiAgLy/lhbPpl63ooajljZVcclxuICBoaWRlRm9ybSgpIHtcclxuICAgIHRoaXMuZWRpdG9yUmVmLmN1cnJlbnQ/LmhpZGVGb3JtKCk7XHJcbiAgfVxyXG5cclxuICAvL+aJuemHj+WIoOmZpFxyXG4gIG9uRGVsZXRlKCkge1xyXG4gICAgY29uc3QgeyBkZWxldGVVcmwsIG9uRGVsZXRlLCBkZWxldGVQYXJhbXMgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCB7IHNlbGVjdGVkUm93S2V5cyB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGlmIChzZWxlY3RlZFJvd0tleXMubGVuZ3RoID09IDApIHtcclxuICAgICAgbWVzc2FnZS53YXJuaW5nKFwi6K+36YCJ5oup6KaB5Yig6Zmk55qE5pWw5o2u77yBXCIpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAob25EZWxldGUpIHtcclxuICAgICAgb25EZWxldGUgJiYgb25EZWxldGUoc2VsZWN0ZWRSb3dLZXlzKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgaWYgKCFkZWxldGVVcmwpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKFwidXJs5LiN6IO95Li656m677yBXCIpO1xyXG4gICAgfVxyXG4gICAgTW9kYWwuY29uZmlybSh7XHJcbiAgICAgIHRpdGxlOiBcIuaYr+WQpuehruiupOWIoOmZpOaJgOmAiemhue+8n1wiLFxyXG4gICAgICBva1RleHQ6IFwi56Gu6K6kXCIsXHJcbiAgICAgIGNhbmNlbFRleHQ6IFwi5Y+W5raIXCIsXHJcbiAgICAgIG9uT2s6ICgpID0+IHtcclxuICAgICAgICBjb25zdCBkZWZhdWx0UGFyYW1zID0ge1xyXG4gICAgICAgICAgbWV0aG9kOiBcInBvc3RcIixcclxuICAgICAgICAgIHBhcmFtczogeyBpZHM6IHNlbGVjdGVkUm93S2V5cy5qb2luKCkgfSxcclxuICAgICAgICB9O1xyXG4gICAgICAgIGxldCByZXF1ZXN0UGFyYW1zID0ge30gYXMgYW55O1xyXG4gICAgICAgIGlmIChkZWZhdWx0UGFyYW1zKSB7XHJcbiAgICAgICAgICByZXF1ZXN0UGFyYW1zID0geyAuLi5kZWxldGVQYXJhbXMgfTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmVxdWVzdFBhcmFtcyA9IHsgLi4uZGVmYXVsdFBhcmFtcyB9O1xyXG4gICAgICAgIHJlcXVlc3QoZGVsZXRlVXJsLCB7XHJcbiAgICAgICAgICAuLi5yZXF1ZXN0UGFyYW1zLFxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgICAudGhlbihmdW5jdGlvbiAocmVzOiBhbnkpIHtcclxuICAgICAgICAgICAgY29uc3QgeyBjb2RlIH0gPSByZXM7XHJcbiAgICAgICAgICAgIGlmIChjb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgICBtZXNzYWdlLnN1Y2Nlc3MoXCLliKDpmaTmiJDlip/vvIFcIik7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgbWVzc2FnZS5lcnJvcihcIuWIoOmZpOWksei0pe+8gVwiKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSlcclxuICAgICAgICAgIC5jYXRjaChmdW5jdGlvbiAoZXJyb3I6IGFueSkge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcImVycm9yXCIsIGVycm9yKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9LFxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIHRhYmxlTG9hZChwYXJhbXM6IGFueSkge1xyXG4gICAgdGhpcy50YWJsZVJlZi5jdXJyZW50Py5zdG9yZS5sb2FkKHtcclxuICAgICAgcGFyYW1zOiBwYXJhbXMsXHJcbiAgICB9KTtcclxuICB9XHJcbiAgLy/mn6Xor6JcclxuICBvblNlYXJjaCgpIHtcclxuICAgIGNvbnN0IHsgb25TZWFyY2ggfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCBmcm9tVmFsdWUgPSB0aGlzLnNlYXJjaFJlZi5jdXJyZW50Py5nZXRGaWVsZHNWYWx1ZSgpO1xyXG4gICAgaWYgKG9uU2VhcmNoKSB7XHJcbiAgICAgIG9uU2VhcmNoKGZyb21WYWx1ZSk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMudGFibGVMb2FkKGZyb21WYWx1ZSk7XHJcbiAgfVxyXG4gIC8v6KGo5qC86YeN5paw5Yqg6L29XHJcbiAgdGFibGVSZWxvYWQoKSB7XHJcbiAgICB0aGlzLnRhYmxlUmVmLmN1cnJlbnQ/LnN0b3JlLnJlbG9hZCgpO1xyXG4gIH1cclxuICBnZXRTZWxlY3RlZFJvd0tleXMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5zZWxlY3RlZFJvd0tleXM7XHJcbiAgfVxyXG4gIGdldFNlbGVjdGVkUm93RGF0YXMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5zZWxlY3RlZFJvd0RhdGFzO1xyXG4gIH1cclxuICBnZXRTZWFyY2hWYWx1ZXMoKSB7XHJcbiAgICBjb25zdCBmcm9tVmFsdWUgPSB0aGlzLnNlYXJjaFJlZi5jdXJyZW50Py5nZXRGaWVsZHNWYWx1ZSgpO1xyXG4gICAgcmV0dXJuIGZyb21WYWx1ZTtcclxuICB9XHJcbiAgcm93U2VsZWN0aW9uT25TZWxlY3QocmVjb3JkOiBhbnksIHNlbGVjdGVkOiBhbnkpIHtcclxuICAgIGNvbnN0IHsgc2VsZWN0ZWRSb3dLZXlzLCBzZWxlY3RlZFJvd0RhdGFzIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgbGV0IG5ld1NlbGVjdGVkUm93S2V5cyA9IFsuLi5zZWxlY3RlZFJvd0tleXNdO1xyXG4gICAgbGV0IG5ld1NlbGVjdGVkUm93RGF0YXMgPSBbLi4uc2VsZWN0ZWRSb3dEYXRhc107XHJcbiAgICBpZiAoc2VsZWN0ZWQpIHtcclxuICAgICAgbmV3U2VsZWN0ZWRSb3dLZXlzID0gWy4uLm5ld1NlbGVjdGVkUm93S2V5cywgcmVjb3JkLmlkXTtcclxuICAgICAgbmV3U2VsZWN0ZWRSb3dEYXRhcyA9IFsuLi5uZXdTZWxlY3RlZFJvd0RhdGFzLCByZWNvcmRdO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgc2VsZWN0ZWRSb3dLZXlzLm1hcCgoaXRlbTogYW55LCBpbmRleDogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKGl0ZW0gPT09IHJlY29yZC5pZCkge1xyXG4gICAgICAgICAgbmV3U2VsZWN0ZWRSb3dLZXlzLnNwbGljZShpbmRleCwgMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgc2VsZWN0ZWRSb3dEYXRhcy5tYXAoKGl0ZW06IGFueSwgaW5kZXg6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChpdGVtLmlkID09PSByZWNvcmQuaWQpIHtcclxuICAgICAgICAgIG5ld1NlbGVjdGVkUm93RGF0YXMuc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgIHNlbGVjdGVkUm93S2V5czogbmV3U2VsZWN0ZWRSb3dLZXlzLFxyXG4gICAgICBzZWxlY3RlZFJvd0RhdGFzOiBuZXdTZWxlY3RlZFJvd0RhdGFzLFxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIHJvd1NlbGVjdGlvbk9uU2VsZWN0QWxsKHNlbGVjdGVkOiBhbnksIHNlbGVjdGVkUm93czogYW55LCBjaGFuZ2VSb3dzOiBhbnkpIHtcclxuICAgIGNvbnN0IHsgc2VsZWN0ZWRSb3dLZXlzLCBzZWxlY3RlZFJvd0RhdGFzIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgbGV0IG5ld2lkczogYW55ID0gW107XHJcbiAgICBsZXQgbmV3ZGF0YXM6IGFueSA9IFtdO1xyXG4gICAgaWYgKGNoYW5nZVJvd3MubGVuZ3RoID4gMCkge1xyXG4gICAgICBsZXQgY2hhbmdlSWRzID0gY2hhbmdlUm93cy5tYXAoKGl0ZW06IGFueSkgPT4gaXRlbS5pZCk7XHJcbiAgICAgIGlmIChzZWxlY3RlZCkge1xyXG4gICAgICAgIG5ld2lkcyA9IFsuLi5zZWxlY3RlZFJvd0tleXMsIC4uLmNoYW5nZUlkc107XHJcbiAgICAgICAgbmV3ZGF0YXMgPSBbLi4uc2VsZWN0ZWRSb3dEYXRhcywgLi4uY2hhbmdlUm93c107XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgc2VsZWN0ZWRSb3dLZXlzLm1hcCgoaXRlbTogYW55LCBpbmRleDogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAoY2hhbmdlSWRzLmluZGV4T2YoaXRlbSkgPT0gLTEpIHtcclxuICAgICAgICAgICAgbmV3aWRzLnB1c2goaXRlbSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgc2VsZWN0ZWRSb3dEYXRhcy5tYXAoKGl0ZW06IGFueSwgaW5kZXg6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKGNoYW5nZUlkcy5pbmRleE9mKGl0ZW0uaWQpID09IC0xKSB7XHJcbiAgICAgICAgICAgIG5ld2RhdGFzLnB1c2goaXRlbSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIG5ld2lkcyA9IFsuLi5zZWxlY3RlZFJvd0tleXNdO1xyXG4gICAgICBuZXdkYXRhcyA9IFsuLi5zZWxlY3RlZFJvd0RhdGFzXTtcclxuICAgIH1cclxuICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICBzZWxlY3RlZFJvd0tleXM6IFsuLi5uZXdpZHNdLFxyXG4gICAgICBzZWxlY3RlZFJvd0RhdGFzOiBbLi4ubmV3ZGF0YXNdLFxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIHJlbmRlclRvb2xCdXR0b25zKHRvb2xidXR0b25zOiBhbnkpIHtcclxuICAgIGNvbnN0IGZsYWcgPSB0b29sYnV0dG9ucy5sZW5ndGggPiA1O1xyXG4gICAgY29uc3QgY29udGVudCA9IHRvb2xidXR0b25zLm1hcCgoaXRlbTogYW55LCBpbmRleDogYW55KSA9PiB7XHJcbiAgICAgIGNvbnN0IHsgY2hpbGRyZW4sIHBhZ2VUeXBlLCBvbkNsaWNrLCBpY29uLCBzaG93LCAuLi5wYXJhbXMgfSA9IGl0ZW0ucHJvcHM7XHJcbiAgICAgIGlmIChpbmRleCA+IDQpIHtcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICBjbGFzc05hbWU9e2NscyhcclxuICAgICAgICAgICAgICBnZXRMZXNzKHN0eWxlcywgXCJlZGl0b3JcIiksXHJcbiAgICAgICAgICAgICAgZ2V0TGVzcyhzdHlsZXMsIFwiY29udGVudC1pdGVtXCIpXHJcbiAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgIGtleT17aW5kZXh9XHJcbiAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcclxuICAgICAgICAgICAgICBvbkNsaWNrICYmIG9uQ2xpY2soKTtcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgey4uLnBhcmFtc31cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJpY29uXCIpfT57aWNvbn08L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwidGV4dFwiKX0+e2NoaWxkcmVufTwvc3Bhbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgPGRpdlxyXG4gICAgICAgIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwidG9vbC1idXR0b25zXCIpfVxyXG4gICAgICAgIHN0eWxlPXt7IG1hcmdpbkxlZnQ6IDAgfX1cclxuICAgICAgPlxyXG4gICAgICAgIHt0b29sYnV0dG9ucy5tYXAoKGl0ZW06IGFueSwgaW5kZXg6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKGZsYWcpIHtcclxuICAgICAgICAgICAgaWYgKGluZGV4IDwgNCkge1xyXG4gICAgICAgICAgICAgIHJldHVybiA8ZGl2IGtleT17aW5kZXh9PntpdGVtfTwvZGl2PjtcclxuICAgICAgICAgICAgfSBlbHNlIGlmIChpbmRleCA9PSA0KSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgICAgIDxQb3BvdmVyXHJcbiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ9e2NvbnRlbnR9XHJcbiAgICAgICAgICAgICAgICAgIHRpdGxlPXtudWxsfVxyXG4gICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJib3R0b21cIlxyXG4gICAgICAgICAgICAgICAgICB0cmlnZ2VyPXtbXCJjbGlja1wiXX1cclxuICAgICAgICAgICAgICAgICAga2V5PXtpbmRleH1cclxuICAgICAgICAgICAgICAgICAgLy8gb3ZlcmxheUNsYXNzTmFtZT17c3R5bGVzWydwb3AtYm94J119XHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIDxCdXR0b24gdHlwZT1cInByaW1hcnlcIj5cclxuICAgICAgICAgICAgICAgICAgICDmm7TlpJogPERvd25PdXRsaW5lZCAvPlxyXG4gICAgICAgICAgICAgICAgICA8L0J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvUG9wb3Zlcj5cclxuICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXR1cm4gPGRpdiBrZXk9e2luZGV4fT57aXRlbX08L2Rpdj47XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSl9XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgKTtcclxuICB9XHJcbiAgcmVuZGVyQ2xvdW1uQnV0dG9uKGNvbHVtbkJ1dHRvbnM6IGFueSwgcmVjb3JkOiBhbnkpIHtcclxuICAgIGNvbnN0IHsgZWRpdG9yRm9ybSA9IHRydWUsIGJ1dHRvbnMgPSBbXSB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IG5ld0J1dHRvbnMgPSBbXTtcclxuICAgIGNvbHVtbkJ1dHRvbnMubWFwKChpdGVtOiBhbnksIGluZGV4OiBhbnkpID0+IHtcclxuICAgICAgY29uc3QgeyBjaGlsZHJlbiwgcGFnZVR5cGUsIG9uQ2xpY2ssIGljb24sIHJlY29yZFNob3csIC4uLnBhcmFtcyB9ID1cclxuICAgICAgICBpdGVtLnByb3BzO1xyXG4gICAgICBpZiAocmVjb3JkU2hvdykge1xyXG4gICAgICAgIGlmIChldmFsKHJlY29yZFNob3cpKSB7XHJcbiAgICAgICAgICBuZXdCdXR0b25zLnB1c2goaXRlbSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIG5ld0J1dHRvbnMucHVzaChpdGVtKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICBjb25zdCBmbGFnID0gbmV3QnV0dG9ucy5sZW5ndGggPiAzO1xyXG5cclxuICAgIGNvbnN0IGNvbnRlbnQgPSBuZXdCdXR0b25zLm1hcCgoaXRlbTogYW55LCBpbmRleDogYW55KSA9PiB7XHJcbiAgICAgIGNvbnN0IHsgY2hpbGRyZW4sIHBhZ2VUeXBlLCBvbkNsaWNrLCBpY29uLCBzaG93LCAuLi5wYXJhbXMgfSA9IGl0ZW0ucHJvcHM7XHJcbiAgICAgIGlmIChpbmRleCA+IDEpIHtcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICBjbGFzc05hbWU9e2NscyhcclxuICAgICAgICAgICAgICBnZXRMZXNzKHN0eWxlcywgXCJlZGl0b3JcIiksXHJcbiAgICAgICAgICAgICAgZ2V0TGVzcyhzdHlsZXMsIFwiY29udGVudC1pdGVtXCIpXHJcbiAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgIGtleT17aW5kZXh9XHJcbiAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcclxuICAgICAgICAgICAgICBvbkNsaWNrICYmIG9uQ2xpY2socmVjb3JkKTtcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgey4uLnBhcmFtc31cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJpY29uXCIpfT57aWNvbn08L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwidGV4dFwiKX0+e2NoaWxkcmVufTwvc3Bhbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiBuZXdCdXR0b25zLm1hcCgoaXRlbTogYW55LCBpbmRleDogYW55KSA9PiB7XHJcbiAgICAgIGNvbnN0IHsgY2hpbGRyZW4sIHBhZ2VUeXBlLCBvbkNsaWNrLCBpY29uLCAuLi5wYXJhbXMgfSA9IGl0ZW0ucHJvcHM7XHJcbiAgICAgIGlmIChmbGFnKSB7XHJcbiAgICAgICAgaWYgKGluZGV4IDwgMikge1xyXG4gICAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiZWRpdG9yXCIpfVxyXG4gICAgICAgICAgICAgIGtleT17aW5kZXh9XHJcbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgb25DbGljayAmJiBvbkNsaWNrKHJlY29yZCk7XHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICB7Li4ucGFyYW1zfVxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJpY29uXCIpfT57aWNvbn08L3NwYW4+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJ0ZXh0XCIpfT57Y2hpbGRyZW59PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChpbmRleCA9PSAyKSB7XHJcbiAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICA8UG9wb3ZlclxyXG4gICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbVwiXHJcbiAgICAgICAgICAgICAgdGl0bGU9e251bGx9XHJcbiAgICAgICAgICAgICAgY29udGVudD17Y29udGVudH1cclxuICAgICAgICAgICAgICB0cmlnZ2VyPXtbXCJjbGlja1wiXX1cclxuICAgICAgICAgICAgICBrZXk9e2luZGV4fVxyXG4gICAgICAgICAgICAgIC8vIG92ZXJsYXlDbGFzc05hbWU9e3N0eWxlc1sncG9wJ119XHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiZWRpdG9yXCIpfT5cclxuICAgICAgICAgICAgICAgICZuYnNwOyDmm7TlpJpcclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiaWNvblwiKX0+XHJcbiAgICAgICAgICAgICAgICAgIDxEb3duT3V0bGluZWQgLz5cclxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9Qb3BvdmVyPlxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiZWRpdG9yXCIpfVxyXG4gICAgICAgICAgICBrZXk9e2luZGV4fVxyXG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XHJcbiAgICAgICAgICAgICAgb25DbGljayAmJiBvbkNsaWNrKHJlY29yZCk7XHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgIHsuLi5wYXJhbXN9XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiaWNvblwiKX0+e2ljb259PC9zcGFuPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcInRleHRcIil9PntjaGlsZHJlbn08L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIC8vIH1cclxuICB9XHJcbiAgLy/moJHngrnlh7vkuovku7ZcclxuICB0cmVlU2VsZWN0KHNlbGVjdGVkS2V5czogYW55LCB7IHNlbGVjdGVkLCBzZWxlY3RlZE5vZGVzIH06IGFueSkge1xyXG4gICAgbGV0IGtleXdvcmQgPSBcIlwiO1xyXG4gICAgY29uc3QgeyBzZWFyY2hLZXkgPSBcImtleVwiLCBzZWFyY2hGaWVsZCA9IFwiXCIgfSA9IHRoaXMucHJvcHMudHJlZVByb3BzO1xyXG4gICAgY29uc3QgeyB0cmVlU2VsZWN0ZWRLZXkgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBpZiAoc2VsZWN0ZWQpIHtcclxuICAgICAgaWYgKHNlbGVjdGVkTm9kZXNbMF0uaXNMZWFmIHx8ICFzZWxlY3RlZE5vZGVzWzBdLmNoaWxkcmVuKSB7XHJcbiAgICAgICAgaWYgKHNlbGVjdGVkS2V5c1swXSAhPT0gdHJlZVNlbGVjdGVkS2V5KSB7XHJcbiAgICAgICAgICAvLyBsZXQgbWFwRGF0YSA9IHRoaXMudHJlZVJlZi5jdXJyZW50Py5zdG9yZS5nZXRGbGF0dGVuRGF0YSgpO1xyXG4gICAgICAgICAga2V5d29yZCA9IHNlbGVjdGVkTm9kZXNbMF0uZGF0YXJlZi5hdHRyaWJ1dGVbc2VhcmNoS2V5XTtcclxuICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICB0cmVlU2VsZWN0ZWRLZXk6IHNlbGVjdGVkS2V5c1swXSxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgdHJlZVNlbGVjdGVkS2V5OiBrZXl3b3JkLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIGNvbnN0IGZyb21WYWx1ZSA9IHRoaXMuc2VhcmNoUmVmLmN1cnJlbnQ/LmdldEZpZWxkc1ZhbHVlKCk7XHJcbiAgICBzZWFyY2hGaWVsZCAmJiB0aGlzLnRhYmxlTG9hZCh7IC4uLmZyb21WYWx1ZSwgW3NlYXJjaEZpZWxkXToga2V5d29yZCB9KTtcclxuICB9XHJcbiAgcmVzZXRTZWFyY2goKSB7XHJcbiAgICB0aGlzLnNlYXJjaFJlZi5jdXJyZW50Py5yZXNldEZpZWxkcygpO1xyXG4gIH1cclxuICBnZXRUZXh0KHByb3BzLCB0ZXh0KSB7XHJcbiAgICBsZXQgbmV3VGV4dCA9IHRleHQ7XHJcbiAgICBpZiAocHJvcHM/LmRhdGEgJiYgcHJvcHM/LmRhdGE/Lmxlbmd0aCA+IDApIHtcclxuICAgICAgbGV0IGRhdGEgPSBwcm9wcy5kYXRhO1xyXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGE/Lmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgaWYgKGRhdGFbaV0udmFsdWUgPT0gdGV4dCkge1xyXG4gICAgICAgICAgbmV3VGV4dCA9IGRhdGFbaV0ubGFiZWw7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbmV3VGV4dDtcclxuICB9XHJcblxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IHsgc2VsZWN0ZWRSb3dLZXlzIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgY29uc3Qge1xyXG4gICAgICBjb2x1bW5zID0gW10sXHJcbiAgICAgIHNob3dTZWFyY2ggPSB0cnVlLFxyXG4gICAgICBjaGlsZHJlbixcclxuICAgICAgc3VibWl0VXJsID0gXCJcIixcclxuICAgICAgdGFibGVQcm9wcyA9IHt9LFxyXG4gICAgICB0cmVlUHJvcHMgPSB7fSxcclxuICAgICAgc2hvd0xlZnQgPSBmYWxzZSxcclxuICAgICAgc3VibWl0UGFyYW1zID0ge30sXHJcbiAgICAgIHNob3dUb29sQnV0dG9uID0gdHJ1ZSxcclxuICAgICAgYnV0dG9ucyA9IFtdLFxyXG4gICAgICBlZGl0b3JGb3JtID0gdHJ1ZSxcclxuICAgICAgb25TaG93Rm9ybSxcclxuICAgICAgZm9ybUNoYW5nZVZhbGlkID0gdHJ1ZSxcclxuICAgICAgY2xhc3NOYW1lLFxyXG4gICAgICBhY3Rpb25Db2x1bW5zID0gW10sXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHtcclxuICAgICAgc3RvcmUgPSB7fSxcclxuICAgICAgZmlsdGVyQ29sdW1uID0gdHJ1ZSxcclxuICAgICAgYWN0aW9uQ29sdW1uID0gdHJ1ZSxcclxuICAgICAgc2hvd1Jvd1NlbGVjdGlvbiA9IHRydWUsXHJcbiAgICAgIGNvbHVtbk9yZGVyID0gdHJ1ZSxcclxuICAgICAgLi4ub3RoZXJ0YWJsZVBhcmFtc1xyXG4gICAgfSA9IHRhYmxlUHJvcHM7XHJcblxyXG4gICAgY29uc3Qge1xyXG4gICAgICBzdG9yZTogdHJlZVN0b3JlID0ge30sXHJcbiAgICAgIHNob3dTZWFyY2g6IHRyZWVTZWFyY2ggPSB0cnVlLFxyXG4gICAgICB0aXRsZUFsaWFzID0gXCJ0aXRsZVwiLFxyXG4gICAgICAuLi5vdGhlcnRyZWVQYXJhbXNcclxuICAgIH0gPSB0cmVlUHJvcHM7XHJcblxyXG4gICAgbGV0IHRhYmxlUGFyYW1zID0geyBmaWx0ZXJDb2x1bW4sIHN0b3JlLCAuLi5vdGhlcnRhYmxlUGFyYW1zIH0gYXMgYW55O1xyXG5cclxuICAgIGlmIChzaG93Um93U2VsZWN0aW9uKSB7XHJcbiAgICAgIHRhYmxlUGFyYW1zID0ge1xyXG4gICAgICAgIC4uLnRhYmxlUGFyYW1zLFxyXG4gICAgICAgIHJvd1NlbGVjdGlvbjoge1xyXG4gICAgICAgICAgc2VsZWN0ZWRSb3dLZXlzOiBzZWxlY3RlZFJvd0tleXMsXHJcbiAgICAgICAgICBvblNlbGVjdDogdGhpcy5yb3dTZWxlY3Rpb25PblNlbGVjdC5iaW5kKHRoaXMpLFxyXG4gICAgICAgICAgb25TZWxlY3RBbGw6IHRoaXMucm93U2VsZWN0aW9uT25TZWxlY3RBbGwuYmluZCh0aGlzKSxcclxuICAgICAgICAgIGNvbHVtbldpZHRoOiA0MCxcclxuICAgICAgICB9LFxyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgbGV0IHRhYmxlQ29sdW1uOiBhbnlbXSA9IFtdO1xyXG4gICAgY29uc3Qgc2VhcmNoRm9ybXM6IGFueSA9IFtdO1xyXG4gICAgY29uc3QgZWRpdG9yRm9ybXM6IGFueSA9IFtdO1xyXG4gICAgY29uc3QgZGVmYXVsdFZhbHVlOiBhbnkgPSB7fTtcclxuICAgIGNvbnN0IGNvbHVtbkJ1dHRvbnM6IGFueSA9IFtdO1xyXG4gICAgY29sdW1ucy5tYXAoKGl0ZW06IGFueSkgPT4ge1xyXG4gICAgICBsZXQgdGVtcCA9IHsgLi4uaXRlbSB9O1xyXG4gICAgICBpZiAodGVtcC5zZWFyY2gpIHtcclxuICAgICAgICBzZWFyY2hGb3Jtcy5wdXNoKHtcclxuICAgICAgICAgIG5hbWU6IHRlbXAuZmllbGQgfHwgdGVtcC5kYXRhSW5kZXgsXHJcbiAgICAgICAgICBsYWJlbDogdGVtcC50aXRsZSxcclxuICAgICAgICAgIHR5cGU6IHRlbXAudHlwZSxcclxuICAgICAgICAgIHByb3BzOiB0ZW1wLnByb3BzLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIGRlbGV0ZSB0ZW1wLnNlYXJjaDtcclxuICAgICAgdGVtcC5lZGl0b3IgIT09IGZhbHNlICYmXHJcbiAgICAgICAgZWRpdG9yRm9ybXMucHVzaCh7XHJcbiAgICAgICAgICBuYW1lOiB0ZW1wLmZpZWxkIHx8IHRlbXAuZGF0YUluZGV4LFxyXG4gICAgICAgICAgbGFiZWw6IHRlbXAudGl0bGUsXHJcbiAgICAgICAgICBydWxlczogdGVtcC5ydWxlcyA/IHRlbXAucnVsZXMgOiBbXSxcclxuICAgICAgICAgIHR5cGU6IHRlbXAudHlwZSxcclxuICAgICAgICAgIHNwYW46IHRlbXAuc3BhbixcclxuICAgICAgICAgIGRpY3ROYW1lOiB0ZW1wLmRpY3ROYW1lLFxyXG4gICAgICAgICAgcHJvcHM6IG9taXQoeyAuLi50ZW1wLnByb3BzIH0sIFtcImRlZmF1bHRWYWx1ZVwiLCBcInZhbHVlXCJdKSxcclxuICAgICAgICB9KTtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIHRlbXAucHJvcHM/LmRlZmF1bHRWYWx1ZSAhPT0gdW5kZWZpbmVkICYmXHJcbiAgICAgICAgdGVtcC5wcm9wcz8uZGVmYXVsdFZhbHVlICE9PSBudWxsXHJcbiAgICAgICkge1xyXG4gICAgICAgIGNvbnN0IG5hbWUgPSB0ZW1wLmZpZWxkIHx8IHRlbXAuZGF0YUluZGV4O1xyXG4gICAgICAgIGRlZmF1bHRWYWx1ZVtuYW1lXSA9IHRlbXAucHJvcHM/LmRlZmF1bHRWYWx1ZTtcclxuICAgICAgfVxyXG4gICAgICBkZWxldGUgdGVtcC5ydWxlcztcclxuICAgICAgZGVsZXRlIHRlbXAuc3BhbjtcclxuICAgICAgaWYgKHRlbXAuY29sdW1uU2VhcmNoKSB7XHJcbiAgICAgICAgdGVtcC5maWx0ZXJQcm9wcyA9IHtcclxuICAgICAgICAgIHR5cGU6IHRlbXAudHlwZSxcclxuICAgICAgICAgIHByb3BzOiB0ZW1wLnByb3BzLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgZGVsZXRlIHRlbXAudHlwZTtcclxuICAgICAgbGV0IHRlbXBQcm9wID0geyAuLi50ZW1wLnByb3BzIH07XHJcbiAgICAgIGlmICh0ZW1wLnN0eWxlKSB7XHJcbiAgICAgICAgdGVtcCA9IHtcclxuICAgICAgICAgIHJlbmRlcjogKHRleHQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICAgIDw+XHJcbiAgICAgICAgICAgICAgICB7dGV4dCAhPT0gXCJcIiAmJiB0ZXh0ICE9PSBudWxsICYmIHRleHQgIT09IHVuZGVmaW5lZCAmJiAoXHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiY29sLWJhY2tcIil9PlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiY29sLXRleHRcIil9PlxyXG4gICAgICAgICAgICAgICAgICAgICAge3RoaXMuZ2V0VGV4dCh0ZW1wUHJvcCwgdGV4dCl9XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICApfVxyXG4gICAgICAgICAgICAgIDwvPlxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGVsbGlwc2lzOiB0cnVlLFxyXG4gICAgICAgICAgLi4udGVtcCxcclxuICAgICAgICB9O1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRlbXAgPSB7XHJcbiAgICAgICAgICByZW5kZXI6ICh0ZXh0OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIDw+e3RoaXMuZ2V0VGV4dCh0ZW1wUHJvcCwgdGV4dCl9PC8+O1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIC4uLnRlbXAsXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICBkZWxldGUgdGVtcC5wcm9wcztcclxuICAgICAgaWYgKHRlbXA/LmNvbHVtblNob3cgIT09IGZhbHNlKSB0YWJsZUNvbHVtbi5wdXNoKHRlbXApO1xyXG4gICAgfSk7XHJcbiAgICBjb25zdCBzZWxmQnV0dG9uczogYW55ID0gW107XHJcblxyXG4gICAgaWYgKGVkaXRvckZvcm0gPT0gdHJ1ZSkge1xyXG4gICAgICBpZiAoYnV0dG9ucy5pbmRleE9mKFwic2VhcmNoXCIpID4gLTEpIHtcclxuICAgICAgICBjb2x1bW5CdXR0b25zLnB1c2goXHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiZWRpdG9yXCIpfVxyXG4gICAgICAgICAgICBvbkNsaWNrPXsocmVjb3JkOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICBpZiAob25TaG93Rm9ybSkge1xyXG4gICAgICAgICAgICAgICAgb25TaG93Rm9ybShyZWNvcmQuYXR0cmlidXRlIHx8IHJlY29yZCwgXCJkZXRhaWxcIik7XHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIHRoaXMuc2hvd0Zvcm0ocmVjb3JkLmF0dHJpYnV0ZSB8fCByZWNvcmQsIFwiZGV0YWlsXCIpO1xyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImljb25cIil9PlxyXG4gICAgICAgICAgICAgIDxFeWVPdXRsaW5lZCAvPlxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwidGV4dFwiKX0+5p+l55yLPC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoYnV0dG9ucy5pbmRleE9mKFwiZWRpdG9yXCIpID4gLTEpIHtcclxuICAgICAgICBjb2x1bW5CdXR0b25zLnB1c2goXHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiZWRpdG9yXCIpfVxyXG4gICAgICAgICAgICBvbkNsaWNrPXsocmVjb3JkOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICBpZiAob25TaG93Rm9ybSkge1xyXG4gICAgICAgICAgICAgICAgb25TaG93Rm9ybShyZWNvcmQuYXR0cmlidXRlIHx8IHJlY29yZCwgXCJlZGl0b3JcIik7XHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIHRoaXMuc2hvd0Zvcm0ocmVjb3JkLmF0dHJpYnV0ZSB8fCByZWNvcmQsIFwiZWRpdG9yXCIpO1xyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImljb25cIil9PlxyXG4gICAgICAgICAgICAgIDxFZGl0T3V0bGluZWQgLz5cclxuICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcInRleHRcIil9Pue8lui+kTwvc3Bhbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmIChidXR0b25zLmluZGV4T2YoXCJhZGRcIikgPiAtMSkge1xyXG4gICAgICBzZWxmQnV0dG9ucy5wdXNoKFxyXG4gICAgICAgIDxCdXR0b25cclxuICAgICAgICAgIHR5cGU9e1wicHJpbWFyeVwifVxyXG4gICAgICAgICAgb25DbGljaz17KCkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCB7IG9uU2hvd0Zvcm0gfSA9IHRoaXMucHJvcHM7XHJcbiAgICAgICAgICAgIGlmIChvblNob3dGb3JtKSB7XHJcbiAgICAgICAgICAgICAgb25TaG93Rm9ybSgpO1xyXG4gICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLnNob3dGb3JtKCk7XHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWNvbj17PEljb24gdHlwZT17aWNvblR5cGUuYWRkfSAvPn1cclxuICAgICAgICA+XHJcbiAgICAgICAgICDmt7vliqBcclxuICAgICAgICA8L0J1dHRvbj5cclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIGlmIChidXR0b25zLmluZGV4T2YoXCJkZWxldGVcIikgPiAtMSkge1xyXG4gICAgICBzZWxmQnV0dG9ucy5wdXNoKFxyXG4gICAgICAgIDxCdXR0b25cclxuICAgICAgICAgIC8vIHR5cGU9e1wicHJpbWFyeVwifVxyXG4gICAgICAgICAgb25DbGljaz17dGhpcy5vbkRlbGV0ZS5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgaWNvbj17PEljb24gdHlwZT17aWNvblR5cGUuZGVsZXRlM30gLz59XHJcbiAgICAgICAgICBkYW5nZXJcclxuICAgICAgICA+XHJcbiAgICAgICAgICDliKDpmaRcclxuICAgICAgICA8L0J1dHRvbj5cclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIGlmIChBcnJheS5pc0FycmF5KGNoaWxkcmVuKSkge1xyXG4gICAgICBjaGlsZHJlbi5tYXAoKGl0ZW06IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChpdGVtPy5wcm9wcz8ucGFnZVR5cGUgPT0gXCJ0b29sQnV0dG9uXCIpIHtcclxuICAgICAgICAgIHNlbGZCdXR0b25zLnB1c2goaXRlbSk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChpdGVtPy5wcm9wcz8ucGFnZVR5cGUgPT0gXCJjbG91bW5CdXR0b25cIikge1xyXG4gICAgICAgICAgY29sdW1uQnV0dG9ucy5wdXNoKGl0ZW0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2UgaWYgKGNoaWxkcmVuKSB7XHJcbiAgICAgIGNvbnN0IHsgcHJvcHMgfTogYW55ID0gY2hpbGRyZW47XHJcbiAgICAgIGlmIChwcm9wcz8ucGFnZVR5cGUgPT0gXCJ0b29sQnV0dG9uXCIpIHtcclxuICAgICAgICBzZWxmQnV0dG9ucy5wdXNoKGNoaWxkcmVuKTtcclxuICAgICAgfSBlbHNlIGlmIChwcm9wcz8ucGFnZVR5cGUgPT0gXCJjbG91bW5CdXR0b25cIikge1xyXG4gICAgICAgIGNvbHVtbkJ1dHRvbnMucHVzaChjaGlsZHJlbik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhY3Rpb25Db2x1bW4gJiZcclxuICAgICAgdGFibGVDb2x1bW4ucHVzaCh7XHJcbiAgICAgICAgdGl0bGU6IFwi5pON5L2cXCIsXHJcbiAgICAgICAgZGF0YUluZGV4OiBcImFjdGlvblwiLFxyXG4gICAgICAgIGFsaWduOiBcImNlbnRlclwiLFxyXG4gICAgICAgIHdpZHRoOiAyNTAsXHJcbiAgICAgICAgZml4ZWQ6IFwicmlnaHRcIixcclxuICAgICAgICBlbGxpcHNpczogdHJ1ZSxcclxuICAgICAgICByZW5kZXI6ICh0ZXh0OiBhbnksIHJlY29yZDogYW55KSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiYWN0aW9uXCIpfT5cclxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJDbG91bW5CdXR0b24oY29sdW1uQnV0dG9ucywgcmVjb3JkKX1cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH0sXHJcbiAgICAgIH0pO1xyXG4gICAgY29uc3QgaGVhZGVyQ291bnQgPSBzaG93TGVmdCA/IDIgOiAzO1xyXG4gICAgaWYgKGNvbHVtbk9yZGVyKVxyXG4gICAgICB0YWJsZUNvbHVtbiA9IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICB0aXRsZTogXCIjXCIsXHJcbiAgICAgICAgICB3aWR0aDogMzAsXHJcbiAgICAgICAgICBhbGlnbjogXCJjZW50ZXJcIixcclxuICAgICAgICAgIHJlbmRlcjogKHRleHQsIHJlYWNvcmQsIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiA8PntpbmRleCArIDF9PC8+O1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIC4uLnRhYmxlQ29sdW1uLFxyXG4gICAgICBdO1xyXG4gICAgaWYgKHRhYmxlUHJvcHMucGFnaW5hdGlvbiAhPT0gZmFsc2UpIHtcclxuICAgICAgLy8gc2Nyb2xsPXt7IHg6IFwibWF4LWNvbnRlbnRcIiwgeTogXCIyNXZ3XCIgfX1cclxuICAgICAgdGFibGVQYXJhbXMgPSB7IHNjcm9sbDogeyB4OiBcIm1heC1jb250ZW50XCIsIHk6IFwiMjV2d1wiIH0sIC4uLnRhYmxlUGFyYW1zIH07XHJcbiAgICB9XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICA8ZGl2XHJcbiAgICAgICAgY2xhc3NOYW1lPXtjbHMoZ2V0TGVzcyhzdHlsZXMsIFwicGFnZVwiKSwgY2xhc3NOYW1lKX1cclxuICAgICAgICBzdHlsZT17eyBkaXNwbGF5OiBcImZsZXhcIiB9fVxyXG4gICAgICA+XHJcbiAgICAgICAge3Nob3dMZWZ0ICYmIChcclxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJsZWZ0XCIpfT5cclxuICAgICAgICAgICAgPFRyZWVcclxuICAgICAgICAgICAgICBzdG9yZT17eyAuLi50cmVlU3RvcmUgfX1cclxuICAgICAgICAgICAgICBzaG93SWNvbj17ZmFsc2V9XHJcbiAgICAgICAgICAgICAgY2hlY2thYmxlPXtmYWxzZX1cclxuICAgICAgICAgICAgICBzZWFyY2hhYmxlPXt0cmVlU2VhcmNofVxyXG4gICAgICAgICAgICAgIG9uU2VsZWN0PXt0aGlzLnRyZWVTZWxlY3QuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgICBzZWxlY3RlZEtleXM9e1t0aGlzLnN0YXRlLnRyZWVTZWxlY3RlZEtleV19XHJcbiAgICAgICAgICAgICAgdGl0bGVBbGlhcz17dGl0bGVBbGlhc31cclxuICAgICAgICAgICAgICB7Li4ub3RoZXJ0cmVlUGFyYW1zfVxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgKX1cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwicmlnaHRcIil9PlxyXG4gICAgICAgICAge3Nob3dTZWFyY2ggJiYgKFxyXG4gICAgICAgICAgICA8Um93IGd1dHRlcj17MjR9IHdyYXA+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImhlYWRlclwiKX0+XHJcbiAgICAgICAgICAgICAgICA8Q29sXHJcbiAgICAgICAgICAgICAgICAgIG1kPXt7IHNwYW46IDEyIH19XHJcbiAgICAgICAgICAgICAgICAgIHNtPXt7IHNwYW46IDEyIH19XHJcbiAgICAgICAgICAgICAgICAgIGxnPXt7IHNwYW46IDE4IH19XHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2Nscyh7IFtnZXRMZXNzKHN0eWxlcywgXCJmb3JtXCIpXTogIXNob3dMZWZ0IH0pfVxyXG4gICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgPFJvdyBndXR0ZXI9ezI0fSB3cmFwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPEZvcm1cclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXt0aGlzLnNlYXJjaFJlZn1cclxuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWxDb2w9e3t9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB3cmFwcGVyQ29sPXt7fX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgbGF5b3V0PVwiaW5saW5lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3sgd2lkdGg6IFwiMTAwJVwiIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtzZWFyY2hGb3Jtcy5tYXAoKGl0ZW06IGFueSwgaW5kZXg6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpbmRleCA+IGhlYWRlckNvdW50ICYmICF0aGlzLnN0YXRlLmV4cGFuZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZD17eyBzcGFuOiAxMiB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzbT17eyBzcGFuOiAyNCB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZz17eyBzcGFuOiA4IH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleT17aW5kZXh9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7cGFkZGluZ1JpZ2h0OjB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtIGxhYmVsPXtpdGVtLmxhYmVsfSBuYW1lPXtpdGVtLm5hbWV9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtnZXROb2RlKGl0ZW0udHlwZSwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uaXRlbS5wcm9wcyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBg6K+36L6T5YWlJHtpdGVtLmxhYmVsfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2w+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9Gb3JtPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvUm93PlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvQ29sPlxyXG4gICAgICAgICAgICAgICAgPENvbFxyXG4gICAgICAgICAgICAgICAgICBtZD17eyBzcGFuOiAxMiB9fVxyXG4gICAgICAgICAgICAgICAgICBzbT17eyBzcGFuOiAxMiB9fVxyXG4gICAgICAgICAgICAgICAgICBsZz17eyBzcGFuOiA2IH19XHJcbiAgICAgICAgICAgICAgICAgIHN0eWxlPXt7cGFkZGluZzowfX1cclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwic2VhcmNoLWJ1dHRvbnNcIil9XHJcbiAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3sgbWFyZ2luVG9wOiAwIH19XHJcbiAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICA8QnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgICB0eXBlPXtcInByaW1hcnlcIn1cclxuICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e3RoaXMub25TZWFyY2guYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgICAgICAgICAgIGljb249ezxJY29uIHR5cGU9e2ljb25UeXBlLnNlYXJjaH0gLz59XHJcbiAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAg5p+l6K+iXHJcbiAgICAgICAgICAgICAgICAgICAgPC9CdXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgdHlwZT17XCJwcmltYXJ5XCJ9XHJcbiAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXt0aGlzLnJlc2V0U2VhcmNoLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICAgICAgICAgICAgICBpY29uPXs8SWNvbiB0eXBlPXtpY29uVHlwZS5yZWZyZXNofSAvPn1cclxuICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICDph43nva5cclxuICAgICAgICAgICAgICAgICAgICA8L0J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICB7c2VhcmNoRm9ybXMubGVuZ3RoID4gMyAmJiAoXHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsJ2Ffc3R5bGUnKX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZXhwYW5kIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwYW5kOiAhZXhwYW5kLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7dGhpcy5zdGF0ZS5leHBhbmQgPyBcIuaUtui1t1wiIDogXCLlsZXlvIBcIn1cclxuICAgICAgICAgICAgICAgICAgICAgICAge3RoaXMuc3RhdGUuZXhwYW5kID8gPFVwT3V0bGluZWQgLz4gOiA8RG93bk91dGxpbmVkIC8+fVxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L0NvbD5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9Sb3c+XHJcbiAgICAgICAgICApfVxyXG5cclxuICAgICAgICAgIHtzaG93VG9vbEJ1dHRvbiAmJiB0aGlzLnJlbmRlclRvb2xCdXR0b25zKHNlbGZCdXR0b25zKX1cclxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbHMoZ2V0TGVzcyhzdHlsZXMsIFwidGFibGVcIikpfT5cclxuICAgICAgICAgICAgPFRhYmxlXHJcbiAgICAgICAgICAgICAgcmVmPXt0aGlzLnRhYmxlUmVmfVxyXG4gICAgICAgICAgICAgIGNvbHVtbnM9e3RhYmxlQ29sdW1ufVxyXG4gICAgICAgICAgICAgIGV4cGFuZGFibGU9e3tcclxuICAgICAgICAgICAgICAgIGV4cGFuZEljb246ICh7IGV4cGFuZGVkLCBvbkV4cGFuZCwgcmVjb3JkIH0pID0+IHtcclxuICAgICAgICAgICAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgICAgICAgICA8PlxyXG4gICAgICAgICAgICAgICAgICAgICAge2V4cGFuZGVkID8gKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8RG93bk91dGxpbmVkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KGUpID0+IG9uRXhwYW5kKHJlY29yZCwgZSl9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJleHBhbmQtaWNvblwiKX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICkgOiAoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlY29yZC5jaGlsZE5vZGVzICYmIChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8UmlnaHRPdXRsaW5lZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KGUpID0+IG9uRXhwYW5kKHJlY29yZCwgZSl9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImV4cGFuZC1pY29uXCIpfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgICAgICAgICAgPC8+XHJcbiAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgY29sdW1uT3JkZXI9e3RydWV9XHJcbiAgICAgICAgICAgICAgYm9yZGVyZWQ9e3RydWV9XHJcbiAgICAgICAgICAgICAgc2l6ZT17dGhpcy5zdGF0ZS50YWJsZVNpemV9XHJcbiAgICAgICAgICAgICAgey4uLnRhYmxlUGFyYW1zfVxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAge2VkaXRvckZvcm0gJiYgKFxyXG4gICAgICAgICAgPEVkaXRvckZvcm1cclxuICAgICAgICAgICAgcmVmPXt0aGlzLmVkaXRvclJlZn1cclxuICAgICAgICAgICAgY2FsbEJhY2s9e3RoaXMudGFibGVSZWxvYWQuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgZm9ybVByb3BzPXtlZGl0b3JGb3Jtc31cclxuICAgICAgICAgICAgc3VibWl0VXJsPXtzdWJtaXRVcmx9XHJcbiAgICAgICAgICAgIHN1Ym1pdFBhcmFtcz17c3VibWl0UGFyYW1zfVxyXG4gICAgICAgICAgICBvblN1Ym1pdD17dGhpcy5wcm9wcy5vblN1Ym1pdH1cclxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlPXtkZWZhdWx0VmFsdWV9XHJcbiAgICAgICAgICAgIG9uSGlkZUZvcm09e3RoaXMucHJvcHMub25IaWRlRm9ybX1cclxuICAgICAgICAgICAgb25Gb3JtQ2hhbmdlPXt0aGlzLnByb3BzLm9uRm9ybUNoYW5nZX1cclxuICAgICAgICAgICAgZm9ybVR5cGU9e3RoaXMucHJvcHMuZm9ybVR5cGUgfHwgdGhpcy5zdGF0ZS5mb3JtVHlwZX1cclxuICAgICAgICAgICAgY2hhbmdlVmFsaWQ9e2Zvcm1DaGFuZ2VWYWxpZH1cclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgKX1cclxuICAgICAgPC9kaXY+XHJcbiAgICApO1xyXG4gIH1cclxufVxyXG5leHBvcnQgZGVmYXVsdCBCYXNlUGFnZTtcclxuIl19
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
.header {
|
|
20
20
|
display: flex;
|
|
21
21
|
margin-top: 20px;
|
|
22
|
+
width:100%;
|
|
22
23
|
.form {
|
|
23
24
|
:global {
|
|
24
25
|
.ant-form-inline {
|
|
@@ -27,13 +28,13 @@
|
|
|
27
28
|
}
|
|
28
29
|
}
|
|
29
30
|
:global {
|
|
30
|
-
.ant-form-inline {
|
|
31
|
-
|
|
32
|
-
}
|
|
31
|
+
// .ant-form-inline {
|
|
32
|
+
// max-width: 46vw;
|
|
33
|
+
// }
|
|
33
34
|
.ant-form-inline .ant-form-item {
|
|
34
|
-
margin-right:
|
|
35
|
+
margin-right: 0px;
|
|
35
36
|
margin-bottom: 18px;
|
|
36
|
-
width: 200px;
|
|
37
|
+
// width: 200px;
|
|
37
38
|
}
|
|
38
39
|
.ant-select {
|
|
39
40
|
width: 100% !important;
|
|
@@ -124,6 +125,7 @@
|
|
|
124
125
|
|
|
125
126
|
.a_style {
|
|
126
127
|
line-height: 35px;
|
|
128
|
+
color: var(--ant-primary-color);
|
|
127
129
|
}
|
|
128
130
|
|
|
129
131
|
.col-back {
|
package/lib/utils.js
CHANGED
|
@@ -1,18 +1,6 @@
|
|
|
1
1
|
import "antd/es/upload/style/css";
|
|
2
2
|
import _Upload from "antd/es/upload";
|
|
3
3
|
|
|
4
|
-
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
5
|
-
|
|
6
|
-
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
7
|
-
|
|
8
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
9
|
-
|
|
10
|
-
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
11
|
-
|
|
12
|
-
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
13
|
-
|
|
14
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
15
|
-
|
|
16
4
|
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
17
5
|
|
|
18
6
|
/*
|
|
@@ -117,10 +105,6 @@ export function getNode(type, props) {
|
|
|
117
105
|
var DIV = /*#__PURE__*/React.createElement(Input, props);
|
|
118
106
|
|
|
119
107
|
if (type == "Input") {
|
|
120
|
-
var _console;
|
|
121
|
-
|
|
122
|
-
(_console = console).log.apply(_console, ['...props'].concat(_toConsumableArray(props)));
|
|
123
|
-
|
|
124
108
|
DIV = /*#__PURE__*/React.createElement(Input, props);
|
|
125
109
|
} else if (type == "Select") {
|
|
126
110
|
DIV = /*#__PURE__*/React.createElement(Select, props);
|
|
@@ -202,4 +186,4 @@ export default {
|
|
|
202
186
|
checkChars: checkChars,
|
|
203
187
|
px2vw: px2vw
|
|
204
188
|
};
|
|
205
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21wb25lbnRzL3V0aWxzLnRzeCJdLCJuYW1lcyI6WyJzbTJFbmNyeXB0VmFsdWUiLCJzbTRFbmNyeXB0IiwiYmFzZTY0RW5jcnlwdCIsIm1kNUVuY3J5cHQiLCJjaGVja1ZhbHVlIiwic20yRGVjcnlwdFZhbHVlIiwic200RGVjcnlwdCIsImJhc2U2NERlY3J5cHQiLCJpc0VtcHR5T2JqIiwiaXNFbXB0eSIsIkljb25Gb250IiwiUmVhY3QiLCJSYWRpbyIsIklucHV0IiwiU2VsZWN0IiwiQ2FzY2FkZXIiLCJDaGVja2JveCIsIkRhdGVQaWNrZXIiLCJSYW5nZVBpY2tlciIsIlBhc3N3b3JkIiwiVGV4dEFyZWEiLCJJbnB1dE51bWJlciIsImVuY3J5cHRWYWx1ZSIsImVuY3J5cHQiLCJ2YWx1ZSIsInR5cGUiLCJrZXkiLCJkZWNyeXB0VmFsdWUiLCJkZWNyeXB0IiwiY2hlY2tNb2RlbCIsImNoZWNrdHlwZSIsImdldENhY2hlS2V5Iiwic290cmUiLCJ2aWV3bmFtZSIsInJlcXVlc3RDb25maWciLCJ1cmwiLCJKU09OIiwic3RyaW5naWZ5IiwiY2hlY2tDaGFycyIsInJlZyIsInRlc3QiLCJweDJ2dyIsInB4VmFsdWUiLCJiYXNlVmFsdWUiLCJiYXNlV2lkdGgiLCJ0b0ZpeGVkIiwiZ2V0SWNvbiIsImljb24iLCJkZWZhdWx0SWNvbiIsImdldE5vZGUiLCJwcm9wcyIsIkRJViIsImNvbnNvbGUiLCJsb2ciLCJkZWJvdW5jZSIsImZuIiwibXMiLCJ0aW1lcklkIiwiY2xlYXJUaW1lb3V0Iiwic2V0VGltZW91dCIsImFwcGx5IiwiYXJndW1lbnRzIiwidGhyb3R0bGUiLCJnZXRMZXNzIiwic3R5bGVzIiwibmFtZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FDRUEsZUFERixFQUVFQyxVQUZGLEVBR0VDLGFBSEYsRUFJRUMsVUFKRixFQUtFQyxVQUxG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LE9BQUosQ0FEK0IsQ0FDbEI7O0FBQ2IsU0FBTyxZQUFZO0FBQUE7QUFBQTs7QUFDakI7QUFDQSxRQUFJLENBQUNBLE9BQUwsRUFBYztBQUNaQSxNQUFBQSxPQUFPLEdBQUdFLFVBQVUsQ0FBQyxZQUFNO0FBQ3pCO0FBQ0FGLFFBQUFBLE9BQU8sR0FBRyxJQUFWO0FBQ0FGLFFBQUFBLEVBQUUsQ0FBQ0ssS0FBSCxDQUFTLE1BQVQsRUFBZUMsV0FBZjtBQUNELE9BSm1CLEVBSWpCTCxFQUppQixDQUFwQjtBQUtEO0FBQ0YsR0FURDtBQVVEO0FBQ0QsT0FBTyxJQUFNTyxPQUFPLEdBQUcsU0FBVkEsT0FBVSxDQUFDQyxNQUFELEVBQWlCQyxJQUFqQixFQUFrQztBQUN2RCxNQUFJekQsVUFBVSxDQUFDd0QsTUFBRCxDQUFkLEVBQXdCO0FBQ3RCLFdBQU9DLElBQVA7QUFDRCxHQUZELE1BRU87QUFDTCxXQUFPRCxNQUFNLENBQUNDLElBQUQsQ0FBYjtBQUNEO0FBQ0YsQ0FOTTtBQU9QLGVBQWU7QUFDYjNDLEVBQUFBLFlBQVksRUFBWkEsWUFEYTtBQUViTyxFQUFBQSxVQUFVLEVBQVZBLFVBRmE7QUFHYkYsRUFBQUEsWUFBWSxFQUFaQSxZQUhhO0FBSWJJLEVBQUFBLFdBQVcsRUFBWEEsV0FKYTtBQUtiTyxFQUFBQSxVQUFVLEVBQVZBLFVBTGE7QUFNYkcsRUFBQUEsS0FBSyxFQUFMQTtBQU5hLENBQWYiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBARGVzY3JpcHR0aW9uOlxyXG4gKiBAdmVyc2lvbjpcclxuICogQEF1dGhvcjogcnh6aHVcclxuICogQERhdGU6IDIwMjEtMDQtMTIgMTc6MzI6NTNcclxuICogQExhc3RFZGl0b3JzOiByeHpodVxyXG4gKiBATGFzdEVkaXRUaW1lOiAyMDIxLTA0LTIyIDE3OjE0OjA0XHJcbiAqL1xyXG5pbXBvcnQge1xyXG4gIHNtMkVuY3J5cHRWYWx1ZSxcclxuICBzbTRFbmNyeXB0LFxyXG4gIGJhc2U2NEVuY3J5cHQsXHJcbiAgbWQ1RW5jcnlwdCxcclxuICBjaGVja1ZhbHVlLFxyXG4gIHNtMkRlY3J5cHRWYWx1ZSxcclxuICBzbTREZWNyeXB0LFxyXG4gIGJhc2U2NERlY3J5cHQsXHJcbiAgaXNFbXB0eU9iaixcclxufSBmcm9tIFwiQGJqLW5zYy9mdW5jdGlvbnNcIjtcclxuaW1wb3J0IHsgZW5jcnlwdCB9IGZyb20gXCIuL0ludGVyZmFjZVwiO1xyXG5pbXBvcnQgeyBpc0VtcHR5IH0gZnJvbSBcImxvZGFzaFwiO1xyXG5pbXBvcnQgSWNvbkZvbnQgZnJvbSBcIi4vYmFzZS9jb21tb24vSWNvbkZvbnRcIjtcclxuaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQge1xyXG4gIFJhZGlvLFxyXG4gIElucHV0LFxyXG4gIFNlbGVjdCxcclxuICBDYXNjYWRlcixcclxuICBDaGVja2JveCxcclxuICBEYXRlUGlja2VyLFxyXG4gIFJhbmdlUGlja2VyLFxyXG59IGZyb20gXCIuXCI7XHJcbmltcG9ydCBQYXNzd29yZCBmcm9tIFwiLi9iYXNlL2lucHV0L1Bhc3N3b3JkXCI7XHJcbmltcG9ydCBUZXh0QXJlYSBmcm9tIFwiLi9iYXNlL2lucHV0L1RleHRBcmVhXCI7XHJcbmltcG9ydCBJbnB1dE51bWJlciBmcm9tIFwiLi9iYXNlL2lucHV0L051bWJlclwiO1xyXG5pbXBvcnQgeyBVcGxvYWQgfSBmcm9tIFwiYW50ZFwiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGVuY3J5cHRWYWx1ZShlbmNyeXB0OiBlbmNyeXB0IHwgYm9vbGVhbiwgdmFsdWUpIHtcclxuICBsZXQgZW5jcnlwdFZhbHVlID0gdmFsdWU7XHJcbiAgaWYgKGVuY3J5cHQgJiYgdHlwZW9mIGVuY3J5cHQgPT09IFwib2JqZWN0XCIpIHtcclxuICAgIGNvbnN0IHsgdHlwZSwga2V5IH0gPSBlbmNyeXB0O1xyXG4gICAgaWYgKHR5cGUgPT0gXCJzbTJcIikge1xyXG4gICAgICBlbmNyeXB0VmFsdWUgPSBrZXkgPyBzbTJFbmNyeXB0VmFsdWUodmFsdWUsIGtleSkgOiBzbTJFbmNyeXB0VmFsdWUodmFsdWUpO1xyXG4gICAgfSBlbHNlIGlmICh0eXBlID09IFwic200XCIpIHtcclxuICAgICAgZW5jcnlwdFZhbHVlID0gc200RW5jcnlwdCh2YWx1ZSk7XHJcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJiYXNlNjRcIikge1xyXG4gICAgICBlbmNyeXB0VmFsdWUgPSBiYXNlNjRFbmNyeXB0KHZhbHVlKTtcclxuICAgIH0gZWxzZSBpZiAodHlwZSA9PSBcIm1kNVwiKSB7XHJcbiAgICAgIGVuY3J5cHRWYWx1ZSA9IG1kNUVuY3J5cHQodmFsdWUpO1xyXG4gICAgfVxyXG4gIH0gZWxzZSBpZiAoZW5jcnlwdCAmJiB0eXBlb2YgZW5jcnlwdCA9PT0gXCJib29sZWFuXCIpIHtcclxuICAgIGVuY3J5cHRWYWx1ZSA9IHNtMkVuY3J5cHRWYWx1ZSh2YWx1ZSk7XHJcbiAgfVxyXG4gIHJldHVybiBlbmNyeXB0VmFsdWU7XHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIGRlY3J5cHRWYWx1ZShkZWNyeXB0OiBlbmNyeXB0IHwgYm9vbGVhbiwgdmFsdWUpIHtcclxuICBsZXQgZGVjcnlwdFZhbHVlID0gdmFsdWU7XHJcbiAgaWYgKGRlY3J5cHQgJiYgdHlwZW9mIGRlY3J5cHQgPT09IFwib2JqZWN0XCIpIHtcclxuICAgIGNvbnN0IHsgdHlwZSwga2V5IH0gPSBkZWNyeXB0O1xyXG4gICAgaWYgKHR5cGUgPT0gXCJzbTJcIikge1xyXG4gICAgICBkZWNyeXB0VmFsdWUgPSBrZXkgPyBzbTJEZWNyeXB0VmFsdWUodmFsdWUsIGtleSkgOiBzbTJEZWNyeXB0VmFsdWUodmFsdWUpO1xyXG4gICAgfSBlbHNlIGlmICh0eXBlID09IFwic200XCIpIHtcclxuICAgICAgZGVjcnlwdFZhbHVlID0gc200RGVjcnlwdCh2YWx1ZSk7XHJcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJiYXNlNjRcIikge1xyXG4gICAgICBkZWNyeXB0VmFsdWUgPSBiYXNlNjREZWNyeXB0KHZhbHVlKTtcclxuICAgIH1cclxuICB9IGVsc2UgaWYgKGRlY3J5cHQgJiYgdHlwZW9mIGRlY3J5cHQgPT09IFwiYm9vbGVhblwiKSB7XHJcbiAgICBkZWNyeXB0VmFsdWUgPSBzbTJEZWNyeXB0VmFsdWUodmFsdWUpO1xyXG4gIH1cclxuICByZXR1cm4gZGVjcnlwdFZhbHVlO1xyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBjaGVja01vZGVsKGNoZWNrdHlwZSwgdmFsdWUpIHtcclxuICByZXR1cm4gY2hlY2tWYWx1ZSh2YWx1ZSwgY2hlY2t0eXBlKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldENhY2hlS2V5KHNvdHJlKSB7XHJcbiAgY29uc3QgeyB2aWV3bmFtZSwgcmVxdWVzdENvbmZpZywgdXJsIH0gPSBzb3RyZTtcclxuICBsZXQga2V5O1xyXG4gIGlmICh2aWV3bmFtZSkge1xyXG4gICAga2V5ID0gdmlld25hbWU7XHJcbiAgfSBlbHNlIHtcclxuICAgIGtleSA9IHJlcXVlc3RDb25maWcgPyB1cmwgKyBKU09OLnN0cmluZ2lmeShyZXF1ZXN0Q29uZmlnKSA6IHVybDtcclxuICB9XHJcbiAgcmV0dXJuIGtleTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrQ2hhcnModmFsdWU6IHN0cmluZykge1xyXG4gIGNvbnN0IHJlZyA9IC9eWzAtOWEtekEtWlxcdTRFMDAtXFx1OUZBNVxcdUY5MDAtXFx1RkEyRF0qJC87XHJcbiAgcmV0dXJuIHJlZy50ZXN0KHZhbHVlKTtcclxufVxyXG5cclxuLy8g6L2s5o2icHjliLB2d1xyXG5leHBvcnQgZnVuY3Rpb24gcHgydncocHhWYWx1ZTogbnVtYmVyLCBiYXNlVmFsdWU/OiBudW1iZXIpOiBzdHJpbmcge1xyXG4gIGNvbnN0IGJhc2VXaWR0aCA9IGJhc2VWYWx1ZSB8fCAxOTIwO1xyXG4gIHJldHVybiAoKHB4VmFsdWUgKiAxMDApIC8gYmFzZVdpZHRoKS50b0ZpeGVkKDQpICsgXCJ2d1wiO1xyXG59XHJcblxyXG4vL+iOt+WPlkljb25cclxuZXhwb3J0IGZ1bmN0aW9uIGdldEljb24oaWNvbiwgZGVmYXVsdEljb24/OiBhbnkpIHtcclxuICBpZiAoIWlzRW1wdHkoaWNvbikgJiYgdHlwZW9mIGljb24gPT09IFwic3RyaW5nXCIpIHtcclxuICAgIHJldHVybiA8SWNvbkZvbnQgdHlwZT17aWNvbn0gLz47XHJcbiAgfSBlbHNlIGlmIChkZWZhdWx0SWNvbikge1xyXG4gICAgcmV0dXJuIDxJY29uRm9udCB0eXBlPXtcImljb254aWFuZ211c2hlem9uZ2d1YW5saVwifSAvPjtcclxuICB9XHJcbiAgcmV0dXJuIGljb247XHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIGdldE5vZGUodHlwZSwgcHJvcHMpIHtcclxuICBsZXQgRElWID0gPElucHV0IHsuLi5wcm9wc30gLz47XHJcbiAgaWYgKHR5cGUgPT0gXCJJbnB1dFwiKSB7XHJcbiAgICBjb25zb2xlLmxvZygnLi4ucHJvcHMnLC4uLnByb3BzKVxyXG4gICAgRElWID0gPElucHV0IHsuLi5wcm9wc30gLz47XHJcbiAgfSBlbHNlIGlmICh0eXBlID09IFwiU2VsZWN0XCIpIHtcclxuICAgIERJViA9IDxTZWxlY3Qgey4uLnByb3BzfSAvPjtcclxuICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJSYWRpb1wiKSB7XHJcbiAgICBESVYgPSA8UmFkaW8uR3JvdXAgey4uLnByb3BzfSAvPjtcclxuICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJDYXNjYWRlclwiKSB7XHJcbiAgICBESVYgPSA8Q2FzY2FkZXIgey4uLnByb3BzfSAvPjtcclxuICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJQYXNzd29yZFwiKSB7XHJcbiAgICBESVYgPSA8UGFzc3dvcmQgey4uLnByb3BzfSAvPjtcclxuICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJUZXh0QXJlYVwiKSB7XHJcbiAgICBESVYgPSA8VGV4dEFyZWEgey4uLnByb3BzfSAvPjtcclxuICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJDaGVja2JveFwiKSB7XHJcbiAgICBESVYgPSA8Q2hlY2tib3guR3JvdXAgey4uLnByb3BzfSAvPjtcclxuICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJEYXRlUGlja2VyXCIpIHtcclxuICAgIERJViA9IDxEYXRlUGlja2VyIHsuLi5wcm9wc30gLz47XHJcbiAgfSBlbHNlIGlmICh0eXBlID09IFwiTnVtYmVyXCIpIHtcclxuICAgIERJViA9IDxJbnB1dE51bWJlciB7Li4ucHJvcHN9IC8+O1xyXG4gIH0gZWxzZSBpZiAodHlwZSA9PSBcIlVwbG9hZFwiKSB7XHJcbiAgICBESVYgPSA8VXBsb2FkIHsuLi5wcm9wc30gLz47XHJcbiAgfSBlbHNlIGlmICh0eXBlID09IFwiUmFuZ2VQaWNrZXJcIikge1xyXG4gICAgRElWID0gPFJhbmdlUGlja2VyIHsuLi5wcm9wc30gLz47XHJcbiAgfVxyXG4gIHJldHVybiBESVY7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBkZWJvdW5jZShmbiwgbXMpIHtcclxuICAvL2ZuOuimgemYsuaKlueahOWHveaVsCBtczrml7bpl7RcclxuICBsZXQgdGltZXJJZDsgLy8g5Yib5bu65LiA5Liq5qCH6K6w55So5p2l5a2Y5pS+5a6a5pe25Zmo55qE6L+U5Zue5YC8XHJcbiAgcmV0dXJuIGZ1bmN0aW9uICgpIHtcclxuICAgIHRpbWVySWQgJiYgY2xlYXJUaW1lb3V0KHRpbWVySWQpOyAvLyDmr4/lvZPnlKjmiLfovpPlhaXnmoTml7blgJnmiorliY3kuIDkuKogc2V0VGltZW91dCBjbGVhciDmjolcclxuICAgIC8vIOeEtuWQjuWPiOWIm+W7uuS4gOS4quaWsOeahCBzZXRUaW1lb3V0LCDov5nmoLflsLHog73kv53or4HovpPlhaXlrZfnrKblkI7nmoQgaW50ZXJ2YWwg6Ze06ZqU5YaF5aaC5p6c6L+Y5pyJ5a2X56ym6L6T5YWl55qE6K+d77yM5bCx5LiN5Lya5omn6KGMIGZuIOWHveaVsFxyXG4gICAgdGltZXJJZCA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICBmbi5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xyXG4gICAgfSwgbXMpO1xyXG4gIH07XHJcblxyXG4gIC8vIHZhciB0aW1lciA9IG51bGw7XHJcbiAgLy8gcmV0dXJuIGZ1bmN0aW9uICgpIHtcclxuICAvLyAgIHZhciBhcmdzID0gYXJndW1lbnRzOyAvL+WPguaVsOmbhuWQiFxyXG4gIC8vICAgY29uc29sZS5sb2coJ2FyZ3MnLGFyZ3MpXHJcbiAgLy8gICBjbGVhclRpbWVvdXQodGltZXIpO1xyXG4gIC8vICAgdGltZXIgPSBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcclxuICAvLyAgICAgZm4uYXBwbHkodGhpcywgYXJncyk7XHJcbiAgLy8gICB9LCBtcyk7XHJcbiAgLy8gfTtcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gdGhyb3R0bGUoZm4sIG1zKSB7XHJcbiAgbGV0IHRpbWVySWQ7IC8vIOWIm+W7uuS4gOS4quagh+iusOeUqOadpeWtmOaUvuWumuaXtuWZqOeahGlkXHJcbiAgcmV0dXJuIGZ1bmN0aW9uICgpIHtcclxuICAgIC8vIOayoeacieWumuaXtuWZqOetieW+heaJp+ihjO+8jOWImeihqOekuuWPr+S7peWIm+W7uuaWsOeahOWumuaXtuWZqOadpeaJp+ihjOWHveaVsFxyXG4gICAgaWYgKCF0aW1lcklkKSB7XHJcbiAgICAgIHRpbWVySWQgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAvLyDlrprml7blmahpZOa4heepuu+8jOihqOekuuWPr+S7peaJp+ihjOS4i+S4gOasoeiwg+eUqOS6hlxyXG4gICAgICAgIHRpbWVySWQgPSBudWxsO1xyXG4gICAgICAgIGZuLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7XHJcbiAgICAgIH0sIG1zKTtcclxuICAgIH1cclxuICB9O1xyXG59XHJcbmV4cG9ydCBjb25zdCBnZXRMZXNzID0gKHN0eWxlczogT2JqZWN0LCBuYW1lOiBzdHJpbmcpID0+IHtcclxuICBpZiAoaXNFbXB0eU9iaihzdHlsZXMpKSB7XHJcbiAgICByZXR1cm4gbmFtZTtcclxuICB9IGVsc2Uge1xyXG4gICAgcmV0dXJuIHN0eWxlc1tuYW1lXTtcclxuICB9XHJcbn07XHJcbmV4cG9ydCBkZWZhdWx0IHtcclxuICBlbmNyeXB0VmFsdWUsXHJcbiAgY2hlY2tNb2RlbCxcclxuICBkZWNyeXB0VmFsdWUsXHJcbiAgZ2V0Q2FjaGVLZXksXHJcbiAgY2hlY2tDaGFycyxcclxuICBweDJ2dyxcclxufTtcclxuIl19
|
|
189
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21wb25lbnRzL3V0aWxzLnRzeCJdLCJuYW1lcyI6WyJzbTJFbmNyeXB0VmFsdWUiLCJzbTRFbmNyeXB0IiwiYmFzZTY0RW5jcnlwdCIsIm1kNUVuY3J5cHQiLCJjaGVja1ZhbHVlIiwic20yRGVjcnlwdFZhbHVlIiwic200RGVjcnlwdCIsImJhc2U2NERlY3J5cHQiLCJpc0VtcHR5T2JqIiwiaXNFbXB0eSIsIkljb25Gb250IiwiUmVhY3QiLCJSYWRpbyIsIklucHV0IiwiU2VsZWN0IiwiQ2FzY2FkZXIiLCJDaGVja2JveCIsIkRhdGVQaWNrZXIiLCJSYW5nZVBpY2tlciIsIlBhc3N3b3JkIiwiVGV4dEFyZWEiLCJJbnB1dE51bWJlciIsImVuY3J5cHRWYWx1ZSIsImVuY3J5cHQiLCJ2YWx1ZSIsInR5cGUiLCJrZXkiLCJkZWNyeXB0VmFsdWUiLCJkZWNyeXB0IiwiY2hlY2tNb2RlbCIsImNoZWNrdHlwZSIsImdldENhY2hlS2V5Iiwic290cmUiLCJ2aWV3bmFtZSIsInJlcXVlc3RDb25maWciLCJ1cmwiLCJKU09OIiwic3RyaW5naWZ5IiwiY2hlY2tDaGFycyIsInJlZyIsInRlc3QiLCJweDJ2dyIsInB4VmFsdWUiLCJiYXNlVmFsdWUiLCJiYXNlV2lkdGgiLCJ0b0ZpeGVkIiwiZ2V0SWNvbiIsImljb24iLCJkZWZhdWx0SWNvbiIsImdldE5vZGUiLCJwcm9wcyIsIkRJViIsImRlYm91bmNlIiwiZm4iLCJtcyIsInRpbWVySWQiLCJjbGVhclRpbWVvdXQiLCJzZXRUaW1lb3V0IiwiYXBwbHkiLCJhcmd1bWVudHMiLCJ0aHJvdHRsZSIsImdldExlc3MiLCJzdHlsZXMiLCJuYW1lIl0sIm1hcHBpbmdzIjoiOzs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUNFQSxlQURGLEVBRUVDLFVBRkYsRUFHRUMsYUFIRixFQUlFQyxVQUpGLEVBS0VDLFVBTEYsRUFNRUMsZUFORixFQU9FQyxVQVBGLEVBUUVD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LE9BQU8sR0FBR0UsVUFBVSxDQUFDLFlBQU07QUFDekI7QUFDQUYsUUFBQUEsT0FBTyxHQUFHLElBQVY7QUFDQUYsUUFBQUEsRUFBRSxDQUFDSyxLQUFILENBQVMsTUFBVCxFQUFlQyxXQUFmO0FBQ0QsT0FKbUIsRUFJakJMLEVBSmlCLENBQXBCO0FBS0Q7QUFDRixHQVREO0FBVUQ7QUFDRCxPQUFPLElBQU1PLE9BQU8sR0FBRyxTQUFWQSxPQUFVLENBQUNDLE1BQUQsRUFBaUJDLElBQWpCLEVBQWtDO0FBQ3ZELE1BQUl2RCxVQUFVLENBQUNzRCxNQUFELENBQWQsRUFBd0I7QUFDdEIsV0FBT0MsSUFBUDtBQUNELEdBRkQsTUFFTztBQUNMLFdBQU9ELE1BQU0sQ0FBQ0MsSUFBRCxDQUFiO0FBQ0Q7QUFDRixDQU5NO0FBT1AsZUFBZTtBQUNiekMsRUFBQUEsWUFBWSxFQUFaQSxZQURhO0FBRWJPLEVBQUFBLFVBQVUsRUFBVkEsVUFGYTtBQUdiRixFQUFBQSxZQUFZLEVBQVpBLFlBSGE7QUFJYkksRUFBQUEsV0FBVyxFQUFYQSxXQUphO0FBS2JPLEVBQUFBLFVBQVUsRUFBVkEsVUFMYTtBQU1iRyxFQUFBQSxLQUFLLEVBQUxBO0FBTmEsQ0FBZiIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIEBEZXNjcmlwdHRpb246XHJcbiAqIEB2ZXJzaW9uOlxyXG4gKiBAQXV0aG9yOiByeHpodVxyXG4gKiBARGF0ZTogMjAyMS0wNC0xMiAxNzozMjo1M1xyXG4gKiBATGFzdEVkaXRvcnM6IHJ4emh1XHJcbiAqIEBMYXN0RWRpdFRpbWU6IDIwMjEtMDQtMjIgMTc6MTQ6MDRcclxuICovXHJcbmltcG9ydCB7XHJcbiAgc20yRW5jcnlwdFZhbHVlLFxyXG4gIHNtNEVuY3J5cHQsXHJcbiAgYmFzZTY0RW5jcnlwdCxcclxuICBtZDVFbmNyeXB0LFxyXG4gIGNoZWNrVmFsdWUsXHJcbiAgc20yRGVjcnlwdFZhbHVlLFxyXG4gIHNtNERlY3J5cHQsXHJcbiAgYmFzZTY0RGVjcnlwdCxcclxuICBpc0VtcHR5T2JqLFxyXG59IGZyb20gXCJAYmotbnNjL2Z1bmN0aW9uc1wiO1xyXG5pbXBvcnQgeyBlbmNyeXB0IH0gZnJvbSBcIi4vSW50ZXJmYWNlXCI7XHJcbmltcG9ydCB7IGlzRW1wdHkgfSBmcm9tIFwibG9kYXNoXCI7XHJcbmltcG9ydCBJY29uRm9udCBmcm9tIFwiLi9iYXNlL2NvbW1vbi9JY29uRm9udFwiO1xyXG5pbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCB7XHJcbiAgUmFkaW8sXHJcbiAgSW5wdXQsXHJcbiAgU2VsZWN0LFxyXG4gIENhc2NhZGVyLFxyXG4gIENoZWNrYm94LFxyXG4gIERhdGVQaWNrZXIsXHJcbiAgUmFuZ2VQaWNrZXIsXHJcbn0gZnJvbSBcIi5cIjtcclxuaW1wb3J0IFBhc3N3b3JkIGZyb20gXCIuL2Jhc2UvaW5wdXQvUGFzc3dvcmRcIjtcclxuaW1wb3J0IFRleHRBcmVhIGZyb20gXCIuL2Jhc2UvaW5wdXQvVGV4dEFyZWFcIjtcclxuaW1wb3J0IElucHV0TnVtYmVyIGZyb20gXCIuL2Jhc2UvaW5wdXQvTnVtYmVyXCI7XHJcbmltcG9ydCB7IFVwbG9hZCB9IGZyb20gXCJhbnRkXCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZW5jcnlwdFZhbHVlKGVuY3J5cHQ6IGVuY3J5cHQgfCBib29sZWFuLCB2YWx1ZSkge1xyXG4gIGxldCBlbmNyeXB0VmFsdWUgPSB2YWx1ZTtcclxuICBpZiAoZW5jcnlwdCAmJiB0eXBlb2YgZW5jcnlwdCA9PT0gXCJvYmplY3RcIikge1xyXG4gICAgY29uc3QgeyB0eXBlLCBrZXkgfSA9IGVuY3J5cHQ7XHJcbiAgICBpZiAodHlwZSA9PSBcInNtMlwiKSB7XHJcbiAgICAgIGVuY3J5cHRWYWx1ZSA9IGtleSA/IHNtMkVuY3J5cHRWYWx1ZSh2YWx1ZSwga2V5KSA6IHNtMkVuY3J5cHRWYWx1ZSh2YWx1ZSk7XHJcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJzbTRcIikge1xyXG4gICAgICBlbmNyeXB0VmFsdWUgPSBzbTRFbmNyeXB0KHZhbHVlKTtcclxuICAgIH0gZWxzZSBpZiAodHlwZSA9PSBcImJhc2U2NFwiKSB7XHJcbiAgICAgIGVuY3J5cHRWYWx1ZSA9IGJhc2U2NEVuY3J5cHQodmFsdWUpO1xyXG4gICAgfSBlbHNlIGlmICh0eXBlID09IFwibWQ1XCIpIHtcclxuICAgICAgZW5jcnlwdFZhbHVlID0gbWQ1RW5jcnlwdCh2YWx1ZSk7XHJcbiAgICB9XHJcbiAgfSBlbHNlIGlmIChlbmNyeXB0ICYmIHR5cGVvZiBlbmNyeXB0ID09PSBcImJvb2xlYW5cIikge1xyXG4gICAgZW5jcnlwdFZhbHVlID0gc20yRW5jcnlwdFZhbHVlKHZhbHVlKTtcclxuICB9XHJcbiAgcmV0dXJuIGVuY3J5cHRWYWx1ZTtcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gZGVjcnlwdFZhbHVlKGRlY3J5cHQ6IGVuY3J5cHQgfCBib29sZWFuLCB2YWx1ZSkge1xyXG4gIGxldCBkZWNyeXB0VmFsdWUgPSB2YWx1ZTtcclxuICBpZiAoZGVjcnlwdCAmJiB0eXBlb2YgZGVjcnlwdCA9PT0gXCJvYmplY3RcIikge1xyXG4gICAgY29uc3QgeyB0eXBlLCBrZXkgfSA9IGRlY3J5cHQ7XHJcbiAgICBpZiAodHlwZSA9PSBcInNtMlwiKSB7XHJcbiAgICAgIGRlY3J5cHRWYWx1ZSA9IGtleSA/IHNtMkRlY3J5cHRWYWx1ZSh2YWx1ZSwga2V5KSA6IHNtMkRlY3J5cHRWYWx1ZSh2YWx1ZSk7XHJcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJzbTRcIikge1xyXG4gICAgICBkZWNyeXB0VmFsdWUgPSBzbTREZWNyeXB0KHZhbHVlKTtcclxuICAgIH0gZWxzZSBpZiAodHlwZSA9PSBcImJhc2U2NFwiKSB7XHJcbiAgICAgIGRlY3J5cHRWYWx1ZSA9IGJhc2U2NERlY3J5cHQodmFsdWUpO1xyXG4gICAgfVxyXG4gIH0gZWxzZSBpZiAoZGVjcnlwdCAmJiB0eXBlb2YgZGVjcnlwdCA9PT0gXCJib29sZWFuXCIpIHtcclxuICAgIGRlY3J5cHRWYWx1ZSA9IHNtMkRlY3J5cHRWYWx1ZSh2YWx1ZSk7XHJcbiAgfVxyXG4gIHJldHVybiBkZWNyeXB0VmFsdWU7XHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrTW9kZWwoY2hlY2t0eXBlLCB2YWx1ZSkge1xyXG4gIHJldHVybiBjaGVja1ZhbHVlKHZhbHVlLCBjaGVja3R5cGUpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2FjaGVLZXkoc290cmUpIHtcclxuICBjb25zdCB7IHZpZXduYW1lLCByZXF1ZXN0Q29uZmlnLCB1cmwgfSA9IHNvdHJlO1xyXG4gIGxldCBrZXk7XHJcbiAgaWYgKHZpZXduYW1lKSB7XHJcbiAgICBrZXkgPSB2aWV3bmFtZTtcclxuICB9IGVsc2Uge1xyXG4gICAga2V5ID0gcmVxdWVzdENvbmZpZyA/IHVybCArIEpTT04uc3RyaW5naWZ5KHJlcXVlc3RDb25maWcpIDogdXJsO1xyXG4gIH1cclxuICByZXR1cm4ga2V5O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY2hlY2tDaGFycyh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgY29uc3QgcmVnID0gL15bMC05YS16QS1aXFx1NEUwMC1cXHU5RkE1XFx1RjkwMC1cXHVGQTJEXSokLztcclxuICByZXR1cm4gcmVnLnRlc3QodmFsdWUpO1xyXG59XHJcblxyXG4vLyDovazmjaJweOWIsHZ3XHJcbmV4cG9ydCBmdW5jdGlvbiBweDJ2dyhweFZhbHVlOiBudW1iZXIsIGJhc2VWYWx1ZT86IG51bWJlcik6IHN0cmluZyB7XHJcbiAgY29uc3QgYmFzZVdpZHRoID0gYmFzZVZhbHVlIHx8IDE5MjA7XHJcbiAgcmV0dXJuICgocHhWYWx1ZSAqIDEwMCkgLyBiYXNlV2lkdGgpLnRvRml4ZWQoNCkgKyBcInZ3XCI7XHJcbn1cclxuXHJcbi8v6I635Y+WSWNvblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0SWNvbihpY29uLCBkZWZhdWx0SWNvbj86IGFueSkge1xyXG4gIGlmICghaXNFbXB0eShpY29uKSAmJiB0eXBlb2YgaWNvbiA9PT0gXCJzdHJpbmdcIikge1xyXG4gICAgcmV0dXJuIDxJY29uRm9udCB0eXBlPXtpY29ufSAvPjtcclxuICB9IGVsc2UgaWYgKGRlZmF1bHRJY29uKSB7XHJcbiAgICByZXR1cm4gPEljb25Gb250IHR5cGU9e1wiaWNvbnhpYW5nbXVzaGV6b25nZ3VhbmxpXCJ9IC8+O1xyXG4gIH1cclxuICByZXR1cm4gaWNvbjtcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0Tm9kZSh0eXBlLCBwcm9wcykge1xyXG4gIGxldCBESVYgPSA8SW5wdXQgey4uLnByb3BzfSAvPjtcclxuICBpZiAodHlwZSA9PSBcIklucHV0XCIpIHtcclxuICAgIERJViA9IDxJbnB1dCB7Li4ucHJvcHN9IC8+O1xyXG4gIH0gZWxzZSBpZiAodHlwZSA9PSBcIlNlbGVjdFwiKSB7XHJcbiAgICBESVYgPSA8U2VsZWN0IHsuLi5wcm9wc30gLz47XHJcbiAgfSBlbHNlIGlmICh0eXBlID09IFwiUmFkaW9cIikge1xyXG4gICAgRElWID0gPFJhZGlvLkdyb3VwIHsuLi5wcm9wc30gLz47XHJcbiAgfSBlbHNlIGlmICh0eXBlID09IFwiQ2FzY2FkZXJcIikge1xyXG4gICAgRElWID0gPENhc2NhZGVyIHsuLi5wcm9wc30gLz47XHJcbiAgfSBlbHNlIGlmICh0eXBlID09IFwiUGFzc3dvcmRcIikge1xyXG4gICAgRElWID0gPFBhc3N3b3JkIHsuLi5wcm9wc30gLz47XHJcbiAgfSBlbHNlIGlmICh0eXBlID09IFwiVGV4dEFyZWFcIikge1xyXG4gICAgRElWID0gPFRleHRBcmVhIHsuLi5wcm9wc30gLz47XHJcbiAgfSBlbHNlIGlmICh0eXBlID09IFwiQ2hlY2tib3hcIikge1xyXG4gICAgRElWID0gPENoZWNrYm94Lkdyb3VwIHsuLi5wcm9wc30gLz47XHJcbiAgfSBlbHNlIGlmICh0eXBlID09IFwiRGF0ZVBpY2tlclwiKSB7XHJcbiAgICBESVYgPSA8RGF0ZVBpY2tlciB7Li4ucHJvcHN9IC8+O1xyXG4gIH0gZWxzZSBpZiAodHlwZSA9PSBcIk51bWJlclwiKSB7XHJcbiAgICBESVYgPSA8SW5wdXROdW1iZXIgey4uLnByb3BzfSAvPjtcclxuICB9IGVsc2UgaWYgKHR5cGUgPT0gXCJVcGxvYWRcIikge1xyXG4gICAgRElWID0gPFVwbG9hZCB7Li4ucHJvcHN9IC8+O1xyXG4gIH0gZWxzZSBpZiAodHlwZSA9PSBcIlJhbmdlUGlja2VyXCIpIHtcclxuICAgIERJViA9IDxSYW5nZVBpY2tlciB7Li4ucHJvcHN9IC8+O1xyXG4gIH1cclxuICByZXR1cm4gRElWO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZGVib3VuY2UoZm4sIG1zKSB7XHJcbiAgLy9mbjropoHpmLLmipbnmoTlh73mlbAgbXM65pe26Ze0XHJcbiAgbGV0IHRpbWVySWQ7IC8vIOWIm+W7uuS4gOS4quagh+iusOeUqOadpeWtmOaUvuWumuaXtuWZqOeahOi/lOWbnuWAvFxyXG4gIHJldHVybiBmdW5jdGlvbiAoKSB7XHJcbiAgICB0aW1lcklkICYmIGNsZWFyVGltZW91dCh0aW1lcklkKTsgLy8g5q+P5b2T55So5oi36L6T5YWl55qE5pe25YCZ5oqK5YmN5LiA5LiqIHNldFRpbWVvdXQgY2xlYXIg5o6JXHJcbiAgICAvLyDnhLblkI7lj4jliJvlu7rkuIDkuKrmlrDnmoQgc2V0VGltZW91dCwg6L+Z5qC35bCx6IO95L+d6K+B6L6T5YWl5a2X56ym5ZCO55qEIGludGVydmFsIOmXtOmalOWGheWmguaenOi/mOacieWtl+espui+k+WFpeeahOivne+8jOWwseS4jeS8muaJp+ihjCBmbiDlh73mlbBcclxuICAgIHRpbWVySWQgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgZm4uYXBwbHkodGhpcywgYXJndW1lbnRzKTtcclxuICAgIH0sIG1zKTtcclxuICB9O1xyXG5cclxuICAvLyB2YXIgdGltZXIgPSBudWxsO1xyXG4gIC8vIHJldHVybiBmdW5jdGlvbiAoKSB7XHJcbiAgLy8gICB2YXIgYXJncyA9IGFyZ3VtZW50czsgLy/lj4LmlbDpm4blkIhcclxuICAvLyAgIGNvbnNvbGUubG9nKCdhcmdzJyxhcmdzKVxyXG4gIC8vICAgY2xlYXJUaW1lb3V0KHRpbWVyKTtcclxuICAvLyAgIHRpbWVyID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XHJcbiAgLy8gICAgIGZuLmFwcGx5KHRoaXMsIGFyZ3MpO1xyXG4gIC8vICAgfSwgbXMpO1xyXG4gIC8vIH07XHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIHRocm90dGxlKGZuLCBtcykge1xyXG4gIGxldCB0aW1lcklkOyAvLyDliJvlu7rkuIDkuKrmoIforrDnlKjmnaXlrZjmlL7lrprml7blmajnmoRpZFxyXG4gIHJldHVybiBmdW5jdGlvbiAoKSB7XHJcbiAgICAvLyDmsqHmnInlrprml7blmajnrYnlvoXmiafooYzvvIzliJnooajnpLrlj6/ku6XliJvlu7rmlrDnmoTlrprml7blmajmnaXmiafooYzlh73mlbBcclxuICAgIGlmICghdGltZXJJZCkge1xyXG4gICAgICB0aW1lcklkID0gc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgLy8g5a6a5pe25ZmoaWTmuIXnqbrvvIzooajnpLrlj6/ku6XmiafooYzkuIvkuIDmrKHosIPnlKjkuoZcclxuICAgICAgICB0aW1lcklkID0gbnVsbDtcclxuICAgICAgICBmbi5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xyXG4gICAgICB9LCBtcyk7XHJcbiAgICB9XHJcbiAgfTtcclxufVxyXG5leHBvcnQgY29uc3QgZ2V0TGVzcyA9IChzdHlsZXM6IE9iamVjdCwgbmFtZTogc3RyaW5nKSA9PiB7XHJcbiAgaWYgKGlzRW1wdHlPYmooc3R5bGVzKSkge1xyXG4gICAgcmV0dXJuIG5hbWU7XHJcbiAgfSBlbHNlIHtcclxuICAgIHJldHVybiBzdHlsZXNbbmFtZV07XHJcbiAgfVxyXG59O1xyXG5leHBvcnQgZGVmYXVsdCB7XHJcbiAgZW5jcnlwdFZhbHVlLFxyXG4gIGNoZWNrTW9kZWwsXHJcbiAgZGVjcnlwdFZhbHVlLFxyXG4gIGdldENhY2hlS2V5LFxyXG4gIGNoZWNrQ2hhcnMsXHJcbiAgcHgydncsXHJcbn07XHJcbiJdfQ==
|