nsc-react-component 2.12.2 → 2.13.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/Interface.js +1 -1
- package/lib/Interface.js.map +1 -0
- package/lib/base/affix/index.js +5 -46
- package/lib/base/affix/index.js.map +1 -0
- package/lib/base/alert/index.js +5 -46
- package/lib/base/alert/index.js.map +1 -0
- package/lib/base/anchor/index.js +8 -49
- package/lib/base/anchor/index.js.map +1 -0
- package/lib/base/avatar/index.js +8 -49
- package/lib/base/avatar/index.js.map +1 -0
- package/lib/base/backTop/index.js +5 -46
- package/lib/base/backTop/index.js.map +1 -0
- package/lib/base/badge/index.js +8 -49
- package/lib/base/badge/index.js.map +1 -0
- package/lib/base/breadcrumb/index.js +5 -46
- package/lib/base/breadcrumb/index.js.map +1 -0
- package/lib/base/button/index.d.ts +1 -1
- package/lib/base/button/index.js +93 -134
- package/lib/base/button/index.js.map +1 -0
- package/lib/base/calendar/index.js +5 -46
- package/lib/base/calendar/index.js.map +1 -0
- package/lib/base/card/index.js +8 -50
- package/lib/base/card/index.js.map +1 -0
- package/lib/base/carousel/index.js +5 -46
- package/lib/base/carousel/index.js.map +1 -0
- package/lib/base/cascader/index.d.ts +3 -3
- package/lib/base/cascader/index.js +150 -221
- package/lib/base/cascader/index.js.map +1 -0
- package/lib/base/chart/index.d.ts +2 -2
- package/lib/base/chart/index.js +178 -287
- package/lib/base/chart/index.js.map +1 -0
- package/lib/base/checkbox/CheckboxGroup.d.ts +3 -3
- package/lib/base/checkbox/CheckboxGroup.js +165 -258
- package/lib/base/checkbox/CheckboxGroup.js.map +1 -0
- package/lib/base/checkbox/index.d.ts +2 -2
- package/lib/base/checkbox/index.js +8 -48
- package/lib/base/checkbox/index.js.map +1 -0
- package/lib/base/collapse/index.js +8 -49
- package/lib/base/collapse/index.js.map +1 -0
- package/lib/base/comment/index.js +5 -46
- package/lib/base/comment/index.js.map +1 -0
- package/lib/base/common/BodyRow/index.js +48 -102
- package/lib/base/common/BodyRow/index.js.map +1 -0
- package/lib/base/common/EllipseCell/index.d.ts +1 -1
- package/lib/base/common/EllipseCell/index.js +16 -57
- package/lib/base/common/EllipseCell/index.js.map +1 -0
- package/lib/base/common/FileIcon.d.ts +2 -2
- package/lib/base/common/FileIcon.js +86 -132
- package/lib/base/common/FileIcon.js.map +1 -0
- package/lib/base/common/Icon.d.ts +2 -2
- package/lib/base/common/Icon.js +42 -96
- package/lib/base/common/Icon.js.map +1 -0
- package/lib/base/common/IconData.js +2 -2
- package/lib/base/common/IconData.js.map +1 -0
- package/lib/base/common/IconFont.d.ts +2 -2
- package/lib/base/common/IconFont.js +6 -8
- package/lib/base/common/IconFont.js.map +1 -0
- package/lib/base/common/NoAuthority.d.ts +2 -2
- package/lib/base/common/NoAuthority.js +13 -53
- package/lib/base/common/NoAuthority.js.map +1 -0
- package/lib/base/common/NoData.d.ts +2 -2
- package/lib/base/common/NoData.js +34 -74
- package/lib/base/common/NoData.js.map +1 -0
- package/lib/base/common/NoMessage.d.ts +2 -2
- package/lib/base/common/NoMessage.js +30 -70
- package/lib/base/common/NoMessage.js.map +1 -0
- package/lib/base/common/NoNetWork.d.ts +2 -2
- package/lib/base/common/NoNetWork.js +30 -70
- package/lib/base/common/NoNetWork.js.map +1 -0
- package/lib/base/common/Page404.d.ts +2 -2
- package/lib/base/common/Page404.js +30 -70
- package/lib/base/common/Page404.js.map +1 -0
- package/lib/base/common/PageRequest.js +91 -154
- package/lib/base/common/PageRequest.js.map +1 -0
- package/lib/base/common/TreePanel.d.ts +1 -1
- package/lib/base/common/TreePanel.js +133 -212
- package/lib/base/common/TreePanel.js.map +1 -0
- package/lib/base/common/iconfontalibaba.js +15 -22
- package/lib/base/common/iconfontalibaba.js.map +1 -0
- package/lib/base/common/withZhLocale.d.ts +1 -1
- package/lib/base/common/withZhLocale.js +3 -7
- package/lib/base/common/withZhLocale.js.map +1 -0
- package/lib/base/configProvider/index.js +8 -49
- package/lib/base/configProvider/index.js.map +1 -0
- package/lib/base/datepick/Rangepicker.d.ts +3 -3
- package/lib/base/datepick/Rangepicker.js +229 -325
- package/lib/base/datepick/Rangepicker.js.map +1 -0
- package/lib/base/datepick/index.d.ts +2 -2
- package/lib/base/datepick/index.js +56 -113
- package/lib/base/datepick/index.js.map +1 -0
- package/lib/base/descriptions/index.js +8 -49
- package/lib/base/descriptions/index.js.map +1 -0
- package/lib/base/divider/index.js +5 -46
- package/lib/base/divider/index.js.map +1 -0
- package/lib/base/download/index.js +42 -84
- package/lib/base/download/index.js.map +1 -0
- package/lib/base/drawer/index.js +14 -57
- package/lib/base/drawer/index.js.map +1 -0
- package/lib/base/dropdown/index.js +19 -65
- package/lib/base/dropdown/index.js.map +1 -0
- package/lib/base/editor/index.d.ts +1 -1
- package/lib/base/editor/index.js +83 -128
- package/lib/base/editor/index.js.map +1 -0
- package/lib/base/errorboundary/index.js +19 -63
- package/lib/base/errorboundary/index.js.map +1 -0
- package/lib/base/form/Form.d.ts +2 -2
- package/lib/base/form/Form.js +314 -427
- package/lib/base/form/Form.js.map +1 -0
- package/lib/base/form/filed/Cascader.d.ts +2 -2
- package/lib/base/form/filed/Cascader.js +6 -45
- package/lib/base/form/filed/Cascader.js.map +1 -0
- package/lib/base/form/filed/Checkbox.d.ts +2 -2
- package/lib/base/form/filed/Checkbox.js +6 -45
- package/lib/base/form/filed/Checkbox.js.map +1 -0
- package/lib/base/form/filed/DatePicker.d.ts +2 -2
- package/lib/base/form/filed/DatePicker.js +6 -45
- package/lib/base/form/filed/DatePicker.js.map +1 -0
- package/lib/base/form/filed/FormItem.d.ts +2 -2
- package/lib/base/form/filed/FormItem.js +65 -127
- package/lib/base/form/filed/FormItem.js.map +1 -0
- package/lib/base/form/filed/Input.d.ts +2 -2
- package/lib/base/form/filed/Input.js +14 -51
- package/lib/base/form/filed/Input.js.map +1 -0
- package/lib/base/form/filed/InputEamil.d.ts +2 -2
- package/lib/base/form/filed/InputEamil.js +5 -44
- package/lib/base/form/filed/InputEamil.js.map +1 -0
- package/lib/base/form/filed/InputNumber.d.ts +2 -2
- package/lib/base/form/filed/InputNumber.js +5 -44
- package/lib/base/form/filed/InputNumber.js.map +1 -0
- package/lib/base/form/filed/InputPassword.d.ts +2 -2
- package/lib/base/form/filed/InputPassword.js +5 -44
- package/lib/base/form/filed/InputPassword.js.map +1 -0
- package/lib/base/form/filed/Item.d.ts +3 -3
- package/lib/base/form/filed/Item.js +91 -163
- package/lib/base/form/filed/Item.js.map +1 -0
- package/lib/base/form/filed/Radio.d.ts +2 -2
- package/lib/base/form/filed/Radio.js +7 -45
- package/lib/base/form/filed/Radio.js.map +1 -0
- package/lib/base/form/filed/RangerPicker.d.ts +2 -2
- package/lib/base/form/filed/RangerPicker.js +6 -45
- package/lib/base/form/filed/RangerPicker.js.map +1 -0
- package/lib/base/form/filed/Rate.d.ts +2 -2
- package/lib/base/form/filed/Rate.js +6 -46
- package/lib/base/form/filed/Rate.js.map +1 -0
- package/lib/base/form/filed/Select.d.ts +2 -2
- package/lib/base/form/filed/Select.js +9 -49
- package/lib/base/form/filed/Select.js.map +1 -0
- package/lib/base/form/filed/Slider.d.ts +2 -2
- package/lib/base/form/filed/Slider.js +6 -46
- package/lib/base/form/filed/Slider.js.map +1 -0
- package/lib/base/form/filed/Switch.d.ts +2 -2
- package/lib/base/form/filed/Switch.js +6 -46
- package/lib/base/form/filed/Switch.js.map +1 -0
- package/lib/base/form/filed/TagSelect.d.ts +2 -2
- package/lib/base/form/filed/TagSelect.js +6 -45
- package/lib/base/form/filed/TagSelect.js.map +1 -0
- package/lib/base/form/filed/TextArea.d.ts +2 -2
- package/lib/base/form/filed/TextArea.js +5 -44
- package/lib/base/form/filed/TextArea.js.map +1 -0
- package/lib/base/form/filed/Upload.d.ts +2 -2
- package/lib/base/form/filed/Upload.js +9 -45
- package/lib/base/form/filed/Upload.js.map +1 -0
- package/lib/base/form/index.js +17 -58
- package/lib/base/form/index.js.map +1 -0
- package/lib/base/grid/Col.js +5 -46
- package/lib/base/grid/Col.js.map +1 -0
- package/lib/base/grid/Row.js +5 -46
- package/lib/base/grid/Row.js.map +1 -0
- package/lib/base/grid/index.js +1 -1
- package/lib/base/grid/index.js.map +1 -0
- package/lib/base/iframe/index.d.ts +1 -1
- package/lib/base/iframe/index.js +44 -93
- package/lib/base/iframe/index.js.map +1 -0
- package/lib/base/image/index.js +163 -261
- package/lib/base/image/index.js.map +1 -0
- package/lib/base/input/Email.d.ts +2 -2
- package/lib/base/input/Email.js +55 -103
- package/lib/base/input/Email.js.map +1 -0
- package/lib/base/input/Number.d.ts +1 -1
- package/lib/base/input/Number.js +48 -104
- package/lib/base/input/Number.js.map +1 -0
- package/lib/base/input/Password.d.ts +1 -1
- package/lib/base/input/Password.js +48 -104
- package/lib/base/input/Password.js.map +1 -0
- package/lib/base/input/Search.d.ts +1 -1
- package/lib/base/input/Search.js +46 -102
- package/lib/base/input/Search.js.map +1 -0
- package/lib/base/input/TextArea.d.ts +1 -1
- package/lib/base/input/TextArea.js +64 -123
- package/lib/base/input/TextArea.js.map +1 -0
- package/lib/base/input/index.d.ts +2 -2
- package/lib/base/input/index.js +121 -195
- package/lib/base/input/index.js.map +1 -0
- package/lib/base/layout/index.js +14 -56
- package/lib/base/layout/index.js.map +1 -0
- package/lib/base/list/index.js +8 -49
- package/lib/base/list/index.js.map +1 -0
- package/lib/base/menu/index.d.ts +5 -5
- package/lib/base/menu/index.js +100 -164
- package/lib/base/menu/index.js.map +1 -0
- package/lib/base/message/index.js +5 -47
- package/lib/base/message/index.js.map +1 -0
- package/lib/base/modal/Confirm.js +14 -18
- package/lib/base/modal/Confirm.js.map +1 -0
- package/lib/base/modal/index.d.ts +1 -1
- package/lib/base/modal/index.js +274 -359
- package/lib/base/modal/index.js.map +1 -0
- package/lib/base/notification/index.js +5 -47
- package/lib/base/notification/index.js.map +1 -0
- package/lib/base/pageHeader/index.js +5 -46
- package/lib/base/pageHeader/index.js.map +1 -0
- package/lib/base/pagination/index.js +5 -46
- package/lib/base/pagination/index.js.map +1 -0
- package/lib/base/pdfviwer/index.d.ts +1 -1
- package/lib/base/pdfviwer/index.js +67 -92
- package/lib/base/pdfviwer/index.js.map +1 -0
- package/lib/base/popconfirm/index.js +5 -46
- package/lib/base/popconfirm/index.js.map +1 -0
- package/lib/base/popover/index.js +19 -65
- package/lib/base/popover/index.js.map +1 -0
- package/lib/base/progress/index.js +5 -46
- package/lib/base/progress/index.js.map +1 -0
- package/lib/base/radio/RadioGroup.d.ts +1 -1
- package/lib/base/radio/RadioGroup.js +198 -295
- package/lib/base/radio/RadioGroup.js.map +1 -0
- package/lib/base/radio/index.d.ts +1 -1
- package/lib/base/radio/index.js +8 -50
- package/lib/base/radio/index.js.map +1 -0
- package/lib/base/result/index.js +5 -46
- package/lib/base/result/index.js.map +1 -0
- package/lib/base/select/index.d.ts +4 -4
- package/lib/base/select/index.js +358 -475
- package/lib/base/select/index.js.map +1 -0
- package/lib/base/skeleton/index.js +5 -46
- package/lib/base/skeleton/index.js.map +1 -0
- package/lib/base/space/index.js +5 -46
- package/lib/base/space/index.js.map +1 -0
- package/lib/base/spin/index.js +5 -46
- package/lib/base/spin/index.js.map +1 -0
- package/lib/base/statistic/index.js +8 -49
- package/lib/base/statistic/index.js.map +1 -0
- package/lib/base/steps/index.js +8 -49
- package/lib/base/steps/index.js.map +1 -0
- package/lib/base/switch/index.js +5 -46
- package/lib/base/switch/index.js.map +1 -0
- package/lib/base/table/index.d.ts +8 -8
- package/lib/base/table/index.js +743 -927
- package/lib/base/table/index.js.map +1 -0
- package/lib/base/tabs/Tabpane.d.ts +1 -1
- package/lib/base/tabs/Tabpane.js +22 -58
- package/lib/base/tabs/Tabpane.js.map +1 -0
- package/lib/base/tabs/index.d.ts +1 -1
- package/lib/base/tabs/index.js +110 -156
- package/lib/base/tabs/index.js.map +1 -0
- package/lib/base/tagSelect/TagSelect.d.ts +3 -3
- package/lib/base/tagSelect/TagSelect.js +124 -213
- package/lib/base/tagSelect/TagSelect.js.map +1 -0
- package/lib/base/tagSelect/index.d.ts +3 -3
- package/lib/base/tagSelect/index.js +90 -145
- package/lib/base/tagSelect/index.js.map +1 -0
- package/lib/base/timeline/index.js +8 -49
- package/lib/base/timeline/index.js.map +1 -0
- package/lib/base/tooltip/index.js +19 -65
- package/lib/base/tooltip/index.js.map +1 -0
- package/lib/base/transfer/index.js +5 -46
- package/lib/base/transfer/index.js.map +1 -0
- package/lib/base/tree/TreeSearch.d.ts +3 -3
- package/lib/base/tree/TreeSearch.js +119 -186
- package/lib/base/tree/TreeSearch.js.map +1 -0
- package/lib/base/tree/index.d.ts +2 -2
- package/lib/base/tree/index.js +169 -241
- package/lib/base/tree/index.js.map +1 -0
- package/lib/base/treeselect/index.js +5 -46
- package/lib/base/treeselect/index.js.map +1 -0
- package/lib/base/typography/index.js +5 -46
- package/lib/base/typography/index.js.map +1 -0
- package/lib/base/upload/Dragger.js +370 -605
- package/lib/base/upload/Dragger.js.map +1 -0
- package/lib/base/upload/Upload.js +352 -529
- package/lib/base/upload/Upload.js.map +1 -0
- package/lib/base/upload/index copy.d.ts +1 -1
- package/lib/base/upload/index copy.js +315 -431
- package/lib/base/upload/index copy.js.map +1 -0
- package/lib/base/upload/index.js +366 -640
- package/lib/base/upload/index.js.map +1 -0
- package/lib/config.d.ts +2 -0
- package/lib/config.js +7 -9
- package/lib/config.js.map +1 -0
- package/lib/constants.js +2 -2
- package/lib/constants.js.map +1 -0
- package/lib/index.js +2 -1
- package/lib/index.js.map +1 -0
- package/lib/page/BasePage/Form.d.ts +1 -1
- package/lib/page/BasePage/Form.js +253 -360
- package/lib/page/BasePage/Form.js.map +1 -0
- package/lib/page/BasePage/index.d.ts +3 -3
- package/lib/page/BasePage/index.js +777 -959
- package/lib/page/BasePage/index.js.map +1 -0
- package/lib/page/BasePage/index.module.less +0 -6
- package/lib/page/HeaderSearch/index.d.ts +1 -1
- package/lib/page/HeaderSearch/index.js +196 -272
- package/lib/page/HeaderSearch/index.js.map +1 -0
- package/lib/page/PasswordCheck/index.d.ts +1 -1
- package/lib/page/PasswordCheck/index.js +53 -109
- package/lib/page/PasswordCheck/index.js.map +1 -0
- package/lib/treeUtils.js +45 -58
- package/lib/treeUtils.js.map +1 -0
- package/lib/utils.d.ts +2 -2
- package/lib/utils.js +48 -61
- package/lib/utils.js.map +1 -0
- package/package.json +1 -1
|
@@ -1,33 +1,9 @@
|
|
|
1
|
-
function
|
|
2
|
-
|
|
3
|
-
function
|
|
4
|
-
|
|
5
|
-
function
|
|
6
|
-
|
|
7
|
-
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; }
|
|
8
|
-
|
|
9
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
10
|
-
|
|
11
|
-
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); } }
|
|
12
|
-
|
|
13
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
14
|
-
|
|
15
|
-
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
16
|
-
|
|
17
|
-
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
18
|
-
|
|
19
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
20
|
-
|
|
21
|
-
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
|
|
22
|
-
|
|
23
|
-
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
24
|
-
|
|
25
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
26
|
-
|
|
27
|
-
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
28
|
-
|
|
29
|
-
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; }
|
|
30
|
-
|
|
1
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
3
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
4
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
5
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
6
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
31
7
|
import React, { PureComponent } from "react";
|
|
32
8
|
import Form from "../../base/form";
|
|
33
9
|
import { getLess, getNode } from "../../utils";
|
|
@@ -38,359 +14,276 @@ import { isEmptyObj } from "@bj-nsc/functions";
|
|
|
38
14
|
import moment from "moment";
|
|
39
15
|
import styles from "./index.module.less";
|
|
40
16
|
import lodash from "lodash";
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
function EditorForm() {
|
|
48
|
-
var _this;
|
|
49
|
-
|
|
50
|
-
_classCallCheck(this, EditorForm);
|
|
51
|
-
|
|
52
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
53
|
-
args[_key] = arguments[_key];
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
_this = _super.call.apply(_super, [this].concat(args));
|
|
57
|
-
|
|
58
|
-
_defineProperty(_assertThisInitialized(_this), "formRef", /*#__PURE__*/React.createRef());
|
|
59
|
-
|
|
60
|
-
_defineProperty(_assertThisInitialized(_this), "state", {
|
|
17
|
+
class EditorForm extends PureComponent {
|
|
18
|
+
constructor() {
|
|
19
|
+
super(...arguments);
|
|
20
|
+
_defineProperty(this, "formRef", /*#__PURE__*/React.createRef());
|
|
21
|
+
_defineProperty(this, "state", {
|
|
61
22
|
loading: false,
|
|
62
23
|
label: "",
|
|
63
24
|
editorFlag: true,
|
|
64
25
|
value: {},
|
|
65
26
|
dictNames: {}
|
|
66
27
|
});
|
|
67
|
-
|
|
68
|
-
_defineProperty(
|
|
69
|
-
|
|
70
|
-
_defineProperty(_assertThisInitialized(_this), "dateValueFormat", {});
|
|
71
|
-
|
|
72
|
-
_defineProperty(_assertThisInitialized(_this), "dateFormat", {});
|
|
73
|
-
|
|
74
|
-
return _this;
|
|
28
|
+
_defineProperty(this, "valid", []);
|
|
29
|
+
_defineProperty(this, "dateValueFormat", {});
|
|
30
|
+
_defineProperty(this, "dateFormat", {});
|
|
75
31
|
}
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
var label = "新增";
|
|
85
|
-
|
|
86
|
-
if (orgValue && editorflag == "editor") {
|
|
87
|
-
label = "编辑";
|
|
88
|
-
} else if (orgValue && editorflag == "detail") {
|
|
89
|
-
label = "查看";
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
if (orgValue) {
|
|
93
|
-
this.setState({
|
|
94
|
-
label: label,
|
|
95
|
-
value: orgValue
|
|
96
|
-
}, function () {
|
|
97
|
-
var _this2$formRef$curren;
|
|
98
|
-
|
|
99
|
-
var value = lodash.cloneDeep(orgValue);
|
|
100
|
-
|
|
101
|
-
if (!isEmptyObj(_this2.dateFormat)) {
|
|
102
|
-
for (var key in _this2.dateFormat) {
|
|
103
|
-
var olddata = value[key];
|
|
104
|
-
|
|
105
|
-
if (Array.isArray(olddata)) {
|
|
106
|
-
value[key] = [moment(olddata[0], _this2.dateFormat[key]), moment(olddata[1], _this2.dateFormat[key])];
|
|
107
|
-
} else {
|
|
108
|
-
value[key] = moment(olddata, _this2.dateFormat[key]);
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
(_this2$formRef$curren = _this2.formRef.current) === null || _this2$formRef$curren === void 0 ? void 0 : _this2$formRef$curren.showForm(value);
|
|
114
|
-
});
|
|
115
|
-
} else {
|
|
116
|
-
this.setState({
|
|
117
|
-
label: label
|
|
118
|
-
}, function () {
|
|
119
|
-
var _this2$formRef$curren2;
|
|
120
|
-
|
|
121
|
-
(_this2$formRef$curren2 = _this2.formRef.current) === null || _this2$formRef$curren2 === void 0 ? void 0 : _this2$formRef$curren2.showForm(_this2.props.defaultValue);
|
|
122
|
-
});
|
|
123
|
-
}
|
|
32
|
+
//表单显示
|
|
33
|
+
show(orgValue) {
|
|
34
|
+
let editorflag = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "add";
|
|
35
|
+
let label = "新增";
|
|
36
|
+
if (orgValue && editorflag == "editor") {
|
|
37
|
+
label = "编辑";
|
|
38
|
+
} else if (orgValue && editorflag == "detail") {
|
|
39
|
+
label = "查看";
|
|
124
40
|
}
|
|
125
|
-
|
|
126
|
-
key: "hide",
|
|
127
|
-
value: function hide() {
|
|
128
|
-
var _this$formRef$current;
|
|
129
|
-
|
|
130
|
-
var _hide = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
131
|
-
|
|
132
|
-
var onHideForm = this.props.onHideForm;
|
|
133
|
-
|
|
134
|
-
if (onHideForm) {
|
|
135
|
-
onHideForm && onHideForm();
|
|
136
|
-
return;
|
|
137
|
-
}
|
|
138
|
-
|
|
41
|
+
if (orgValue) {
|
|
139
42
|
this.setState({
|
|
140
|
-
|
|
43
|
+
label: label,
|
|
44
|
+
value: orgValue
|
|
45
|
+
}, () => {
|
|
46
|
+
var _this$formRef$current;
|
|
47
|
+
let value = lodash.cloneDeep(orgValue);
|
|
48
|
+
if (!isEmptyObj(this.dateFormat)) {
|
|
49
|
+
for (let key in this.dateFormat) {
|
|
50
|
+
let olddata = value[key];
|
|
51
|
+
if (Array.isArray(olddata)) {
|
|
52
|
+
value[key] = [moment(olddata[0], this.dateFormat[key]), moment(olddata[1], this.dateFormat[key])];
|
|
53
|
+
} else {
|
|
54
|
+
value[key] = moment(olddata, this.dateFormat[key]);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
(_this$formRef$current = this.formRef.current) === null || _this$formRef$current === void 0 || _this$formRef$current.showForm(value);
|
|
141
59
|
});
|
|
142
|
-
|
|
143
|
-
}
|
|
144
|
-
}, {
|
|
145
|
-
key: "hideForm",
|
|
146
|
-
value: function hideForm() {
|
|
147
|
-
var _this$formRef$current2;
|
|
148
|
-
|
|
60
|
+
} else {
|
|
149
61
|
this.setState({
|
|
150
|
-
|
|
62
|
+
label: label
|
|
63
|
+
}, () => {
|
|
64
|
+
var _this$formRef$current2;
|
|
65
|
+
(_this$formRef$current2 = this.formRef.current) === null || _this$formRef$current2 === void 0 || _this$formRef$current2.showForm(this.props.defaultValue);
|
|
151
66
|
});
|
|
152
|
-
(_this$formRef$current2 = this.formRef.current) === null || _this$formRef$current2 === void 0 ? void 0 : _this$formRef$current2.hideForm();
|
|
153
67
|
}
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
|
|
68
|
+
}
|
|
69
|
+
hide() {
|
|
70
|
+
var _this$formRef$current3;
|
|
71
|
+
let hide = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
72
|
+
const {
|
|
73
|
+
onHideForm
|
|
74
|
+
} = this.props;
|
|
75
|
+
if (onHideForm) {
|
|
76
|
+
onHideForm && onHideForm();
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
this.setState({
|
|
80
|
+
loading: false
|
|
81
|
+
});
|
|
82
|
+
hide && ((_this$formRef$current3 = this.formRef.current) === null || _this$formRef$current3 === void 0 ? void 0 : _this$formRef$current3.hideForm());
|
|
83
|
+
}
|
|
84
|
+
hideForm() {
|
|
85
|
+
var _this$formRef$current4;
|
|
86
|
+
this.setState({
|
|
87
|
+
loading: false
|
|
88
|
+
});
|
|
89
|
+
(_this$formRef$current4 = this.formRef.current) === null || _this$formRef$current4 === void 0 || _this$formRef$current4.hideForm();
|
|
90
|
+
}
|
|
91
|
+
setLoading(loading) {
|
|
92
|
+
this.setState({
|
|
93
|
+
loading: loading
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
setFieldsValue(values) {
|
|
97
|
+
var _this$formRef$current5;
|
|
98
|
+
(_this$formRef$current5 = this.formRef.current) === null || _this$formRef$current5 === void 0 || _this$formRef$current5.setFieldsValue(values);
|
|
99
|
+
}
|
|
100
|
+
getFieldsValue() {
|
|
101
|
+
var _this$formRef$current6;
|
|
102
|
+
return (_this$formRef$current6 = this.formRef.current) === null || _this$formRef$current6 === void 0 ? void 0 : _this$formRef$current6.getFieldsValue();
|
|
103
|
+
}
|
|
104
|
+
onSubmit() {
|
|
105
|
+
var _this$formRef$current7, _this$formRef$current8;
|
|
106
|
+
const {
|
|
107
|
+
submitUrl = "",
|
|
108
|
+
submitParams = {},
|
|
109
|
+
onSubmit,
|
|
110
|
+
callBack
|
|
111
|
+
} = this.props;
|
|
112
|
+
const {
|
|
113
|
+
label,
|
|
114
|
+
value,
|
|
115
|
+
dictNames
|
|
116
|
+
} = this.state;
|
|
117
|
+
const formValue = (_this$formRef$current7 = this.formRef.current) === null || _this$formRef$current7 === void 0 ? void 0 : _this$formRef$current7.getFieldsValue();
|
|
118
|
+
let valid = this.valid;
|
|
119
|
+
(_this$formRef$current8 = this.formRef.current) === null || _this$formRef$current8 === void 0 || _this$formRef$current8.validateFields(valid).then(() => {
|
|
120
|
+
var _this$formRef$current9;
|
|
157
121
|
this.setState({
|
|
158
|
-
loading:
|
|
122
|
+
loading: true
|
|
159
123
|
});
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
}, {
|
|
169
|
-
key: "getFieldsValue",
|
|
170
|
-
value: function getFieldsValue() {
|
|
171
|
-
var _this$formRef$current4;
|
|
172
|
-
|
|
173
|
-
return (_this$formRef$current4 = this.formRef.current) === null || _this$formRef$current4 === void 0 ? void 0 : _this$formRef$current4.getFieldsValue();
|
|
174
|
-
}
|
|
175
|
-
}, {
|
|
176
|
-
key: "onSubmit",
|
|
177
|
-
value: function onSubmit() {
|
|
178
|
-
var _this$formRef$current5,
|
|
179
|
-
_this$formRef$current6,
|
|
180
|
-
_this3 = this;
|
|
181
|
-
|
|
182
|
-
var _this$props = this.props,
|
|
183
|
-
_this$props$submitUrl = _this$props.submitUrl,
|
|
184
|
-
submitUrl = _this$props$submitUrl === void 0 ? "" : _this$props$submitUrl,
|
|
185
|
-
_this$props$submitPar = _this$props.submitParams,
|
|
186
|
-
submitParams = _this$props$submitPar === void 0 ? {} : _this$props$submitPar,
|
|
187
|
-
onSubmit = _this$props.onSubmit,
|
|
188
|
-
callBack = _this$props.callBack;
|
|
189
|
-
var _this$state = this.state,
|
|
190
|
-
label = _this$state.label,
|
|
191
|
-
value = _this$state.value,
|
|
192
|
-
dictNames = _this$state.dictNames;
|
|
193
|
-
var formValue = (_this$formRef$current5 = this.formRef.current) === null || _this$formRef$current5 === void 0 ? void 0 : _this$formRef$current5.getFieldsValue();
|
|
194
|
-
var valid = this.valid;
|
|
195
|
-
(_this$formRef$current6 = this.formRef.current) === null || _this$formRef$current6 === void 0 ? void 0 : _this$formRef$current6.validateFields(valid).then(function () {
|
|
196
|
-
var _this3$formRef$curren;
|
|
197
|
-
|
|
198
|
-
_this3.setState({
|
|
199
|
-
loading: true
|
|
200
|
-
});
|
|
201
|
-
|
|
202
|
-
var data = _objectSpread(_objectSpread({}, formValue), dictNames);
|
|
203
|
-
|
|
204
|
-
if (!isEmptyObj(_this3.dateValueFormat)) {
|
|
205
|
-
for (var key in _this3.dateValueFormat) {
|
|
206
|
-
var olddata = data[key];
|
|
207
|
-
|
|
208
|
-
if (Array.isArray(olddata)) {
|
|
209
|
-
data[key] = [moment(olddata[0]).format(_this3.dateValueFormat[key]), moment(olddata[1]).format(_this3.dateValueFormat[key])];
|
|
210
|
-
} else {
|
|
211
|
-
data[key] = moment(olddata).format(_this3.dateValueFormat[key]);
|
|
212
|
-
}
|
|
124
|
+
let data = _objectSpread(_objectSpread({}, formValue), dictNames);
|
|
125
|
+
if (!isEmptyObj(this.dateValueFormat)) {
|
|
126
|
+
for (let key in this.dateValueFormat) {
|
|
127
|
+
let olddata = data[key];
|
|
128
|
+
if (Array.isArray(olddata)) {
|
|
129
|
+
data[key] = [moment(olddata[0]).format(this.dateValueFormat[key]), moment(olddata[1]).format(this.dateValueFormat[key])];
|
|
130
|
+
} else {
|
|
131
|
+
data[key] = moment(olddata).format(this.dateValueFormat[key]);
|
|
213
132
|
}
|
|
214
133
|
}
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
134
|
+
}
|
|
135
|
+
if (label == "编辑") {
|
|
136
|
+
data = _objectSpread(_objectSpread({}, data), {}, {
|
|
137
|
+
id: value === null || value === void 0 ? void 0 : value.id
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
if (onSubmit) {
|
|
141
|
+
onSubmit && onSubmit(data, label);
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
if (!submitUrl) {
|
|
145
|
+
throw new Error("url不能为空!");
|
|
146
|
+
}
|
|
147
|
+
(_this$formRef$current9 = this.formRef.current) === null || _this$formRef$current9 === void 0 || _this$formRef$current9.onSubmit(submitUrl, {
|
|
148
|
+
data: _objectSpread({}, data),
|
|
149
|
+
noUndefined: label == "编辑",
|
|
150
|
+
submitParams
|
|
151
|
+
}, res => {
|
|
152
|
+
const {
|
|
153
|
+
code
|
|
154
|
+
} = res;
|
|
155
|
+
this.setState({
|
|
156
|
+
loading: false
|
|
157
|
+
});
|
|
158
|
+
if (code === 200) {
|
|
159
|
+
message.success(label + "成功");
|
|
160
|
+
this.hide(true);
|
|
161
|
+
callBack && callBack();
|
|
224
162
|
return;
|
|
225
163
|
}
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
_this3.hide(true);
|
|
246
|
-
|
|
247
|
-
callBack && callBack();
|
|
248
|
-
return;
|
|
249
|
-
}
|
|
250
|
-
|
|
251
|
-
_this3.hide(false);
|
|
164
|
+
this.hide(false);
|
|
165
|
+
});
|
|
166
|
+
}).catch(errorInfo => {});
|
|
167
|
+
}
|
|
168
|
+
valueChange(_ref, props, value, valueOption, data) {
|
|
169
|
+
let {
|
|
170
|
+
type,
|
|
171
|
+
dictName
|
|
172
|
+
} = _ref;
|
|
173
|
+
if (valueOption) {
|
|
174
|
+
if (dictName) {
|
|
175
|
+
const {
|
|
176
|
+
dictNames
|
|
177
|
+
} = this.state;
|
|
178
|
+
const newNames = _objectSpread({}, dictNames);
|
|
179
|
+
newNames[dictName] = valueOption.label;
|
|
180
|
+
this.setState({
|
|
181
|
+
dictNames: newNames
|
|
252
182
|
});
|
|
253
|
-
}
|
|
183
|
+
}
|
|
254
184
|
}
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
185
|
+
if (props.onChange) {
|
|
186
|
+
props.onChange(value, valueOption, data);
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
render() {
|
|
190
|
+
const {
|
|
191
|
+
formProps = [],
|
|
192
|
+
otherProps = {}
|
|
193
|
+
} = this.props;
|
|
194
|
+
const {
|
|
195
|
+
loading,
|
|
196
|
+
label
|
|
197
|
+
} = this.state;
|
|
198
|
+
let modalProps = {
|
|
199
|
+
title: label,
|
|
200
|
+
onOk: this.onSubmit.bind(this),
|
|
201
|
+
onCancel: this.hide.bind(this),
|
|
202
|
+
okButtonProps: {
|
|
203
|
+
loading: loading
|
|
204
|
+
},
|
|
205
|
+
centered: true,
|
|
206
|
+
width: "50vw"
|
|
207
|
+
};
|
|
208
|
+
const newValid = [];
|
|
209
|
+
let drawerProps = {
|
|
210
|
+
title: label,
|
|
211
|
+
onOk: this.onSubmit.bind(this),
|
|
212
|
+
onClose: this.hide.bind(this),
|
|
213
|
+
width: "50vw"
|
|
214
|
+
};
|
|
215
|
+
if (label == "查看") {
|
|
216
|
+
modalProps.footer = null;
|
|
217
|
+
drawerProps.footer = null;
|
|
218
|
+
}
|
|
219
|
+
this.dateValueFormat = {};
|
|
220
|
+
this.dateFormat = {};
|
|
221
|
+
return /*#__PURE__*/React.createElement(Form, _extends({
|
|
222
|
+
ref: this.formRef,
|
|
223
|
+
showModel: this.props.formType,
|
|
224
|
+
modalProps: _objectSpread({}, modalProps),
|
|
225
|
+
drawerProps: _objectSpread({}, drawerProps),
|
|
226
|
+
labelCol: {
|
|
227
|
+
flex: "100px"
|
|
228
|
+
},
|
|
229
|
+
wrapperCol: {
|
|
230
|
+
flex: "15vw"
|
|
231
|
+
},
|
|
232
|
+
onValuesChange: (changedValues, allValues) => {
|
|
233
|
+
const {
|
|
234
|
+
onFormChange
|
|
235
|
+
} = this.props;
|
|
236
|
+
onFormChange && onFormChange(changedValues, allValues);
|
|
237
|
+
},
|
|
238
|
+
changeValid: this.props.changeValid
|
|
239
|
+
}, otherProps), /*#__PURE__*/React.createElement("div", {
|
|
240
|
+
className: getLess(styles, "form")
|
|
241
|
+
}, /*#__PURE__*/React.createElement(Row, {
|
|
242
|
+
gutter: 24
|
|
243
|
+
}, formProps.map((item, index) => {
|
|
244
|
+
const itemProps = item.props || {};
|
|
245
|
+
if (itemProps.valueFormat) {
|
|
246
|
+
this.dateValueFormat[item.name] = itemProps.valueFormat;
|
|
272
247
|
}
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
props.onChange(value, valueOption, data);
|
|
248
|
+
if (itemProps.format) {
|
|
249
|
+
this.dateFormat[item.name] = itemProps.format;
|
|
276
250
|
}
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
title: label,
|
|
293
|
-
onOk: this.onSubmit.bind(this),
|
|
294
|
-
onCancel: this.hide.bind(this),
|
|
295
|
-
okButtonProps: {
|
|
296
|
-
loading: loading
|
|
297
|
-
},
|
|
298
|
-
centered: true,
|
|
299
|
-
width: "50vw"
|
|
300
|
-
};
|
|
301
|
-
var newValid = [];
|
|
302
|
-
var drawerProps = {
|
|
303
|
-
title: label,
|
|
304
|
-
onOk: this.onSubmit.bind(this),
|
|
305
|
-
onClose: this.hide.bind(this),
|
|
306
|
-
width: "50vw"
|
|
307
|
-
};
|
|
308
|
-
|
|
251
|
+
let allowChars = item.props.allowChars || false;
|
|
252
|
+
let props = _objectSpread(_objectSpread({
|
|
253
|
+
placeholder: "\u8BF7\u8F93\u5165".concat(item.label)
|
|
254
|
+
}, item.props), {}, {
|
|
255
|
+
onChange: this.valueChange.bind(this, {
|
|
256
|
+
type: item.type,
|
|
257
|
+
dictName: item.dictName
|
|
258
|
+
}, _objectSpread({}, item.props))
|
|
259
|
+
});
|
|
260
|
+
if (!item.type || item.type == "Input") {
|
|
261
|
+
props.allowChars = true;
|
|
262
|
+
props.showCount = true;
|
|
263
|
+
}
|
|
264
|
+
delete props.valueFormat;
|
|
265
|
+
delete props.format;
|
|
309
266
|
if (label == "查看") {
|
|
310
|
-
|
|
311
|
-
drawerProps.footer = null;
|
|
267
|
+
props.disabled = true;
|
|
312
268
|
}
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
}, otherProps), /*#__PURE__*/React.createElement("div", {
|
|
333
|
-
className: getLess(styles, "form")
|
|
334
|
-
}, /*#__PURE__*/React.createElement(Row, {
|
|
335
|
-
gutter: 24
|
|
336
|
-
}, formProps.map(function (item, index) {
|
|
337
|
-
var itemProps = item.props || {};
|
|
338
|
-
|
|
339
|
-
if (itemProps.valueFormat) {
|
|
340
|
-
_this4.dateValueFormat[item.name] = itemProps.valueFormat;
|
|
341
|
-
}
|
|
342
|
-
|
|
343
|
-
if (itemProps.format) {
|
|
344
|
-
_this4.dateFormat[item.name] = itemProps.format;
|
|
345
|
-
}
|
|
346
|
-
|
|
347
|
-
var allowChars = item.props.allowChars || false;
|
|
348
|
-
|
|
349
|
-
var props = _objectSpread(_objectSpread({
|
|
350
|
-
placeholder: "\u8BF7\u8F93\u5165".concat(item.label)
|
|
351
|
-
}, item.props), {}, {
|
|
352
|
-
onChange: _this4.valueChange.bind(_this4, {
|
|
353
|
-
type: item.type,
|
|
354
|
-
dictName: item.dictName
|
|
355
|
-
}, _objectSpread({}, item.props))
|
|
356
|
-
});
|
|
357
|
-
|
|
358
|
-
if (!item.type || item.type == "Input") {
|
|
359
|
-
props.allowChars = true;
|
|
360
|
-
props.showCount = true;
|
|
361
|
-
}
|
|
362
|
-
|
|
363
|
-
delete props.valueFormat;
|
|
364
|
-
delete props.format;
|
|
365
|
-
|
|
366
|
-
if (label == "查看") {
|
|
367
|
-
props.disabled = true;
|
|
368
|
-
}
|
|
369
|
-
|
|
370
|
-
if (item.rules && item.rules.length > 0) {
|
|
371
|
-
newValid.push(item.name);
|
|
372
|
-
}
|
|
373
|
-
|
|
374
|
-
if (index + 1 === formProps.length) {
|
|
375
|
-
_this4.valid = newValid;
|
|
376
|
-
}
|
|
377
|
-
|
|
378
|
-
return /*#__PURE__*/React.createElement(Col, {
|
|
379
|
-
span: item.span || 12,
|
|
380
|
-
key: index
|
|
381
|
-
}, /*#__PURE__*/React.createElement(Form.Item, {
|
|
382
|
-
label: item.label,
|
|
383
|
-
name: item.name,
|
|
384
|
-
rules: item.rules,
|
|
385
|
-
allowChars: allowChars,
|
|
386
|
-
componentName: item.type ? item.type : "Input"
|
|
387
|
-
}, getNode(item.type, _objectSpread({}, props))));
|
|
388
|
-
}))));
|
|
389
|
-
}
|
|
390
|
-
}]);
|
|
391
|
-
|
|
392
|
-
return EditorForm;
|
|
393
|
-
}(PureComponent);
|
|
394
|
-
|
|
269
|
+
if (item.rules && item.rules.length > 0) {
|
|
270
|
+
newValid.push(item.name);
|
|
271
|
+
}
|
|
272
|
+
if (index + 1 === formProps.length) {
|
|
273
|
+
this.valid = newValid;
|
|
274
|
+
}
|
|
275
|
+
return /*#__PURE__*/React.createElement(Col, {
|
|
276
|
+
span: item.span || 12,
|
|
277
|
+
key: index
|
|
278
|
+
}, /*#__PURE__*/React.createElement(Form.Item, {
|
|
279
|
+
label: item.label,
|
|
280
|
+
name: item.name,
|
|
281
|
+
rules: item.rules,
|
|
282
|
+
allowChars: allowChars,
|
|
283
|
+
componentName: item.type ? item.type : "Input"
|
|
284
|
+
}, getNode(item.type, _objectSpread({}, props))));
|
|
285
|
+
}))));
|
|
286
|
+
}
|
|
287
|
+
}
|
|
395
288
|
export default EditorForm;
|
|
396
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3BhZ2UvQmFzZVBhZ2UvRm9ybS50c3giXSwibmFtZXMiOlsiUmVhY3QiLCJQdXJlQ29tcG9uZW50IiwiRm9ybSIsImdldExlc3MiLCJnZXROb2RlIiwibWVzc2FnZSIsIkNvbCIsIlJvdyIsImlzRW1wdHlPYmoiLCJtb21lbnQiLCJzdHlsZXMiLCJsb2Rhc2giLCJFZGl0b3JGb3JtIiwiY3JlYXRlUmVmIiwibG9hZGluZyIsImxhYmVsIiwiZWRpdG9yRmxhZyIsInZhbHVlIiwiZGljdE5hbWVzIiwib3JnVmFsdWUiLCJlZGl0b3JmbGFnIiwic2V0U3RhdGUiLCJjbG9uZURlZXAiLCJkYXRlRm9ybWF0Iiwia2V5Iiwib2xkZGF0YSIsIkFycmF5IiwiaXNBcnJheSIsImZvcm1SZWYiLCJjdXJyZW50Iiwic2hvd0Zvcm0iLCJwcm9wcyIsImRlZmF1bHRWYWx1ZSIsImhpZGUiLCJvbkhpZGVGb3JtIiwiaGlkZUZvcm0iLCJ2YWx1ZXMiLCJzZXRGaWVsZHNWYWx1ZSIsImdldEZpZWxkc1ZhbHVlIiwic3VibWl0VXJsIiwic3VibWl0UGFyYW1zIiwib25TdWJtaXQiLCJjYWxsQmFjayIsInN0YXRlIiwiZm9ybVZhbHVlIiwidmFsaWQiLCJ2YWxpZGF0ZUZpZWxkcyIsInRoZW4iLCJkYXRhIiwiZGF0ZVZhbHVlRm9ybWF0IiwiZm9ybWF0IiwiaWQiLCJFcnJvciIsIm5vVW5kZWZpbmVkIiwicmVzIiwiY29kZSIsInN1Y2Nlc3MiLCJjYXRjaCIsImVycm9ySW5mbyIsInZhbHVlT3B0aW9uIiwidHlwZSIsImRpY3ROYW1lIiwibmV3TmFtZXMiLCJvbkNoYW5nZSIsImZvcm1Qcm9wcyIsIm90aGVyUHJvcHMiLCJtb2RhbFByb3BzIiwidGl0bGUiLCJvbk9rIiwiYmluZCIsIm9uQ2FuY2VsIiwib2tCdXR0b25Qcm9wcyIsImNlbnRlcmVkIiwid2lkdGgiLCJuZXdWYWxpZCIsImRyYXdlclByb3BzIiwib25DbG9zZSIsImZvb3RlciIsImZvcm1UeXBlIiwiZmxleCIsImNoYW5nZWRWYWx1ZXMiLCJhbGxWYWx1ZXMiLCJvbkZvcm1DaGFuZ2UiLCJjaGFuZ2VWYWxpZCIsIm1hcCIsIml0ZW0iLCJpbmRleCIsIml0ZW1Qcm9wcyIsInZhbHVlRm9ybWF0IiwibmFtZSIsImFsbG93Q2hhcnMiLCJwbGFjZWhvbGRlciIsInZhbHVlQ2hhbmdlIiwic2hvd0NvdW50IiwiZGlzYWJsZWQiLCJydWxlcyIsImxlbmd0aCIsInB1c2giLCJzcGFuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxPQUFPQSxLQUFQLElBQWdCQyxhQUFoQixRQUFxQyxPQUFyQztBQUNBLE9BQU9DLElBQVAsTUFBaUIsaUJBQWpCO0FBQ0EsU0FBU0MsT0FBVCxFQUFrQkMsT0FBbEIsUUFBaUMsYUFBakM7QUFDQSxPQUFPQyxPQUFQLE1BQW9CLG9CQUFwQjtBQUNBLE9BQU9DLEdBQVAsTUFBZ0IscUJBQWhCO0FBQ0EsT0FBT0MsR0FBUCxNQUFnQixxQkFBaEI7QUFDQSxTQUFTQyxVQUFULFFBQTJCLG1CQUEzQjtBQUNBLE9BQU9DLE1BQVAsTUFBbUIsUUFBbkI7QUFDQSxPQUFPQyxNQUFQLE1BQW1CLHFCQUFuQjtBQUVBLE9BQU9DLE1BQVAsTUFBbUIsUUFBbkI7O0lBQ01DLFU7Ozs7Ozs7Ozs7Ozs7Ozs7MkVBQ01aLEtBQUssQ0FBQ2EsU0FBTixFOzs0REFDRjtBQUNOQyxNQUFBQSxPQUFPLEVBQUUsS0FESDtBQUVOQyxNQUFBQSxLQUFLLEVBQUUsRUFGRDtBQUdOQyxNQUFBQSxVQUFVLEVBQUUsSUFITjtBQUlOQyxNQUFBQSxLQUFLLEVBQUUsRUFKRDtBQUtOQyxNQUFBQSxTQUFTLEVBQUU7QUFMTCxLOzs0REFPSyxFOztzRUFDSyxFOztpRUFDTCxFOzs7Ozs7O1dBQ2I7QUFDQSxrQkFBS0MsUUFBTCxFQUF5QztBQUFBOztBQUFBLFVBQXBCQyxVQUFvQix1RUFBUCxLQUFPO0FBQ3ZDLFVBQUlMLEtBQUssR0FBRyxJQUFaOztBQUNBLFVBQUlJLFFBQVEsSUFBSUMsVUFBVSxJQUFJLFFBQTlCLEVBQXdDO0FBQ3RDTCxRQUFBQSxLQUFLLEdBQUcsSUFBUjtBQUNELE9BRkQsTUFFTyxJQUFJSSxRQUFRLElBQUlDLFVBQVUsSUFBSSxRQUE5QixFQUF3QztBQUM3Q0wsUUFBQUEsS0FBSyxHQUFHLElBQVI7QUFDRDs7QUFDRCxVQUFJSSxRQUFKLEVBQWM7QUFDWixhQUFLRSxRQUFMLENBQ0U7QUFDRU4sVUFBQUEsS0FBSyxFQUFFQSxLQURUO0FBRUVFLFVBQUFBLEtBQUssRUFBRUU7QUFGVCxTQURGLEVBS0UsWUFBTTtBQUFBOztBQUNKLGNBQUlGLEtBQUssR0FBR04sTUFBTSxDQUFDVyxTQUFQLENBQWlCSCxRQUFqQixDQUFaOztBQUNBLGNBQUksQ0FBQ1gsVUFBVSxDQUFDLE1BQUksQ0FBQ2UsVUFBTixDQUFmLEVBQWtDO0FBQ2hDLGlCQUFLLElBQUlDLEdBQVQsSUFBZ0IsTUFBSSxDQUFDRCxVQUFyQixFQUFpQztBQUMvQixrQkFBSUUsT0FBTyxHQUFHUixLQUFLLENBQUNPLEdBQUQsQ0FBbkI7O0FBQ0Esa0JBQUlFLEtBQUssQ0FBQ0MsT0FBTixDQUFjRixPQUFkLENBQUosRUFBNEI7QUFDMUJSLGdCQUFBQSxLQUFLLENBQUNPLEdBQUQsQ0FBTCxHQUFhLENBQ1hmLE1BQU0sQ0FBQ2dCLE9BQU8sQ0FBQyxDQUFELENBQVIsRUFBYSxNQUFJLENBQUNGLFVBQUwsQ0FBZ0JDLEdBQWhCLENBQWIsQ0FESyxFQUVYZixNQUFNLENBQUNnQixPQUFPLENBQUMsQ0FBRCxDQUFSLEVBQWEsTUFBSSxDQUFDRixVQUFMLENBQWdCQyxHQUFoQixDQUFiLENBRkssQ0FBYjtBQUlELGVBTEQsTUFLTztBQUNMUCxnQkFBQUEsS0FBSyxDQUFDTyxHQUFELENBQUwsR0FBYWYsTUFBTSxDQUFDZ0IsT0FBRCxFQUFVLE1BQUksQ0FBQ0YsVUFBTCxDQUFnQkMsR0FBaEIsQ0FBVixDQUFuQjtBQUNEO0FBQ0Y7QUFDRjs7QUFDRCxtQ0FBQSxNQUFJLENBQUNJLE9BQUwsQ0FBYUMsT0FBYixnRkFBc0JDLFFBQXRCLENBQStCYixLQUEvQjtBQUNELFNBckJIO0FBdUJELE9BeEJELE1Bd0JPO0FBQ0wsYUFBS0ksUUFBTCxDQUNFO0FBQ0VOLFVBQUFBLEtBQUssRUFBRUE7QUFEVCxTQURGLEVBSUUsWUFBTTtBQUFBOztBQUNKLG9DQUFBLE1BQUksQ0FBQ2EsT0FBTCxDQUFhQyxPQUFiLGtGQUFzQkMsUUFBdEIsQ0FBK0IsTUFBSSxDQUFDQyxLQUFMLENBQVdDLFlBQTFDO0FBQ0QsU0FOSDtBQVFEO0FBQ0Y7OztXQUNELGdCQUFrQjtBQUFBOztBQUFBLFVBQWJDLEtBQWEsdUVBQU4sSUFBTTs7QUFDaEIsVUFBUUMsVUFBUixHQUF1QixLQUFLSCxLQUE1QixDQUFRRyxVQUFSOztBQUNBLFVBQUlBLFVBQUosRUFBZ0I7QUFDZEEsUUFBQUEsVUFBVSxJQUFJQSxVQUFVLEVBQXhCO0FBQ0E7QUFDRDs7QUFDRCxXQUFLYixRQUFMLENBQWM7QUFBRVAsUUFBQUEsT0FBTyxFQUFFO0FBQVgsT0FBZDtBQUNBbUIsTUFBQUEsS0FBSSw4QkFBSSxLQUFLTCxPQUFMLENBQWFDLE9BQWpCLDBEQUFJLHNCQUFzQk0sUUFBdEIsRUFBSixDQUFKO0FBQ0Q7OztXQUNELG9CQUFXO0FBQUE7O0FBQ1QsV0FBS2QsUUFBTCxDQUFjO0FBQUVQLFFBQUFBLE9BQU8sRUFBRTtBQUFYLE9BQWQ7QUFDQSxxQ0FBS2MsT0FBTCxDQUFhQyxPQUFiLGtGQUFzQk0sUUFBdEI7QUFDRDs7O1dBQ0Qsb0JBQVdyQixPQUFYLEVBQTZCO0FBQzNCLFdBQUtPLFFBQUwsQ0FBYztBQUFFUCxRQUFBQSxPQUFPLEVBQUVBO0FBQVgsT0FBZDtBQUNEOzs7V0FDRCx3QkFBZXNCLE1BQWYsRUFBdUI7QUFBQTs7QUFDckIscUNBQUtSLE9BQUwsQ0FBYUMsT0FBYixrRkFBc0JRLGNBQXRCLENBQXFDRCxNQUFyQztBQUNEOzs7V0FDRCwwQkFBaUI7QUFBQTs7QUFDZix1Q0FBTyxLQUFLUixPQUFMLENBQWFDLE9BQXBCLDJEQUFPLHVCQUFzQlMsY0FBdEIsRUFBUDtBQUNEOzs7V0FDRCxvQkFBVztBQUFBO0FBQUE7QUFBQTs7QUFDVCx3QkFLSSxLQUFLUCxLQUxUO0FBQUEsOENBQ0VRLFNBREY7QUFBQSxVQUNFQSxTQURGLHNDQUNjLEVBRGQ7QUFBQSw4Q0FFRUMsWUFGRjtBQUFBLFVBRUVBLFlBRkYsc0NBRWlCLEVBRmpCO0FBQUEsVUFHRUMsUUFIRixlQUdFQSxRQUhGO0FBQUEsVUFJRUMsUUFKRixlQUlFQSxRQUpGO0FBTUEsd0JBQW9DLEtBQUtDLEtBQXpDO0FBQUEsVUFBUTVCLEtBQVIsZUFBUUEsS0FBUjtBQUFBLFVBQWVFLEtBQWYsZUFBZUEsS0FBZjtBQUFBLFVBQXNCQyxTQUF0QixlQUFzQkEsU0FBdEI7QUFDQSxVQUFNMEIsU0FBUyw2QkFBRyxLQUFLaEIsT0FBTCxDQUFhQyxPQUFoQiwyREFBRyx1QkFBc0JTLGNBQXRCLEVBQWxCO0FBQ0EsVUFBSU8sS0FBSyxHQUFHLEtBQUtBLEtBQWpCO0FBQ0EscUNBQUtqQixPQUFMLENBQWFDLE9BQWIsa0ZBQ0lpQixjQURKLENBQ21CRCxLQURuQixFQUVHRSxJQUZILENBRVEsWUFBTTtBQUFBOztBQUNWLFFBQUEsTUFBSSxDQUFDMUIsUUFBTCxDQUFjO0FBQUVQLFVBQUFBLE9BQU8sRUFBRTtBQUFYLFNBQWQ7O0FBQ0EsWUFBSWtDLElBQUksbUNBQVFKLFNBQVIsR0FBc0IxQixTQUF0QixDQUFSOztBQUNBLFlBQUksQ0FBQ1YsVUFBVSxDQUFDLE1BQUksQ0FBQ3lDLGVBQU4sQ0FBZixFQUF1QztBQUNyQyxlQUFLLElBQUl6QixHQUFULElBQWdCLE1BQUksQ0FBQ3lCLGVBQXJCLEVBQXNDO0FBQ3BDLGdCQUFJeEIsT0FBTyxHQUFHdUIsSUFBSSxDQUFDeEIsR0FBRCxDQUFsQjs7QUFDQSxnQkFBSUUsS0FBSyxDQUFDQyxPQUFOLENBQWNGLE9BQWQsQ0FBSixFQUE0QjtBQUMxQnVCLGNBQUFBLElBQUksQ0FBQ3hCLEdBQUQsQ0FBSixHQUFZLENBQ1ZmLE1BQU0sQ0FBQ2dCLE9BQU8sQ0FBQyxDQUFELENBQVIsQ0FBTixDQUFtQnlCLE1BQW5CLENBQTBCLE1BQUksQ0FBQ0QsZUFBTCxDQUFxQnpCLEdBQXJCLENBQTFCLENBRFUsRUFFVmYsTUFBTSxDQUFDZ0IsT0FBTyxDQUFDLENBQUQsQ0FBUixDQUFOLENBQW1CeUIsTUFBbkIsQ0FBMEIsTUFBSSxDQUFDRCxlQUFMLENBQXFCekIsR0FBckIsQ0FBMUIsQ0FGVSxDQUFaO0FBSUQsYUFMRCxNQUtPO0FBQ0x3QixjQUFBQSxJQUFJLENBQUN4QixHQUFELENBQUosR0FBWWYsTUFBTSxDQUFDZ0IsT0FBRCxDQUFOLENBQWdCeUIsTUFBaEIsQ0FBdUIsTUFBSSxDQUFDRCxlQUFMLENBQXFCekIsR0FBckIsQ0FBdkIsQ0FBWjtBQUNEO0FBQ0Y7QUFDRjs7QUFDRCxZQUFJVCxLQUFLLElBQUksSUFBYixFQUFtQjtBQUNqQmlDLFVBQUFBLElBQUksbUNBQVFBLElBQVI7QUFBY0csWUFBQUEsRUFBRSxFQUFFbEMsS0FBRixhQUFFQSxLQUFGLHVCQUFFQSxLQUFLLENBQUVrQztBQUF6QixZQUFKO0FBQ0Q7O0FBQ0QsWUFBSVYsUUFBSixFQUFjO0FBQ1pBLFVBQUFBLFFBQVEsSUFBSUEsUUFBUSxDQUFDTyxJQUFELEVBQU9qQyxLQUFQLENBQXBCO0FBQ0E7QUFDRDs7QUFDRCxZQUFJLENBQUN3QixTQUFMLEVBQWdCO0FBQ2QsZ0JBQU0sSUFBSWEsS0FBSixDQUFVLFVBQVYsQ0FBTjtBQUNEOztBQUNELGlDQUFBLE1BQUksQ0FBQ3hCLE9BQUwsQ0FBYUMsT0FBYixnRkFBc0JZLFFBQXRCLENBQ0VGLFNBREYsRUFFRTtBQUNFUyxVQUFBQSxJQUFJLG9CQUFPQSxJQUFQLENBRE47QUFFRUssVUFBQUEsV0FBVyxFQUFFdEMsS0FBSyxJQUFJLElBRnhCO0FBR0V5QixVQUFBQSxZQUFZLEVBQVpBO0FBSEYsU0FGRixFQU9FLFVBQUNjLEdBQUQsRUFBYztBQUNaLGNBQVFDLElBQVIsR0FBaUJELEdBQWpCLENBQVFDLElBQVI7O0FBQ0EsVUFBQSxNQUFJLENBQUNsQyxRQUFMLENBQWM7QUFBRVAsWUFBQUEsT0FBTyxFQUFFO0FBQVgsV0FBZDs7QUFDQSxjQUFJeUMsSUFBSSxLQUFLLEdBQWIsRUFBa0I7QUFDaEJsRCxZQUFBQSxPQUFPLENBQUNtRCxPQUFSLENBQWdCekMsS0FBSyxHQUFHLElBQXhCOztBQUNBLFlBQUEsTUFBSSxDQUFDa0IsSUFBTCxDQUFVLElBQVY7O0FBQ0FTLFlBQUFBLFFBQVEsSUFBSUEsUUFBUSxFQUFwQjtBQUNBO0FBQ0Q7O0FBQ0QsVUFBQSxNQUFJLENBQUNULElBQUwsQ0FBVSxLQUFWO0FBQ0QsU0FqQkg7QUFtQkQsT0EvQ0gsRUFnREd3QixLQWhESCxDQWdEUyxVQUFDQyxTQUFELEVBQW9CLENBQUUsQ0FoRC9CO0FBaUREOzs7V0FDRCwyQkFBZ0MzQixLQUFoQyxFQUF1Q2QsS0FBdkMsRUFBOEMwQyxXQUE5QyxFQUEyRFgsSUFBM0QsRUFBaUU7QUFBQSxVQUFuRFksSUFBbUQsUUFBbkRBLElBQW1EO0FBQUEsVUFBN0NDLFFBQTZDLFFBQTdDQSxRQUE2Qzs7QUFDL0QsVUFBSUYsV0FBSixFQUFpQjtBQUNmLFlBQUlFLFFBQUosRUFBYztBQUNaLGNBQVEzQyxTQUFSLEdBQXNCLEtBQUt5QixLQUEzQixDQUFRekIsU0FBUjs7QUFDQSxjQUFNNEMsUUFBUSxxQkFBUTVDLFNBQVIsQ0FBZDs7QUFDQTRDLFVBQUFBLFFBQVEsQ0FBQ0QsUUFBRCxDQUFSLEdBQXFCRixXQUFXLENBQUM1QyxLQUFqQztBQUNBLGVBQUtNLFFBQUwsQ0FBYztBQUNaSCxZQUFBQSxTQUFTLEVBQUU0QztBQURDLFdBQWQ7QUFHRDtBQUNGOztBQUNELFVBQUkvQixLQUFLLENBQUNnQyxRQUFWLEVBQW9CO0FBQ2xCaEMsUUFBQUEsS0FBSyxDQUFDZ0MsUUFBTixDQUFlOUMsS0FBZixFQUFzQjBDLFdBQXRCLEVBQW1DWCxJQUFuQztBQUNEO0FBQ0Y7OztXQUVELGtCQUFTO0FBQUE7O0FBQ1AseUJBQTRDLEtBQUtqQixLQUFqRDtBQUFBLCtDQUFRaUMsU0FBUjtBQUFBLFVBQVFBLFNBQVIsc0NBQW9CLEVBQXBCO0FBQUEsK0NBQXdCQyxVQUF4QjtBQUFBLFVBQXdCQSxVQUF4QixzQ0FBcUMsRUFBckM7QUFDQSx5QkFBMkIsS0FBS3RCLEtBQWhDO0FBQUEsVUFBUTdCLE9BQVIsZ0JBQVFBLE9BQVI7QUFBQSxVQUFpQkMsS0FBakIsZ0JBQWlCQSxLQUFqQjtBQUNBLFVBQUltRCxVQUFVLEdBQUc7QUFDZkMsUUFBQUEsS0FBSyxFQUFFcEQsS0FEUTtBQUVmcUQsUUFBQUEsSUFBSSxFQUFFLEtBQUszQixRQUFMLENBQWM0QixJQUFkLENBQW1CLElBQW5CLENBRlM7QUFHZkMsUUFBQUEsUUFBUSxFQUFFLEtBQUtyQyxJQUFMLENBQVVvQyxJQUFWLENBQWUsSUFBZixDQUhLO0FBSWZFLFFBQUFBLGFBQWEsRUFBRTtBQUFFekQsVUFBQUEsT0FBTyxFQUFFQTtBQUFYLFNBSkE7QUFLZjBELFFBQUFBLFFBQVEsRUFBRSxJQUxLO0FBTWZDLFFBQUFBLEtBQUssRUFBRTtBQU5RLE9BQWpCO0FBU0EsVUFBTUMsUUFBZSxHQUFHLEVBQXhCO0FBQ0EsVUFBSUMsV0FBVyxHQUFHO0FBQ2hCUixRQUFBQSxLQUFLLEVBQUVwRCxLQURTO0FBRWhCcUQsUUFBQUEsSUFBSSxFQUFFLEtBQUszQixRQUFMLENBQWM0QixJQUFkLENBQW1CLElBQW5CLENBRlU7QUFHaEJPLFFBQUFBLE9BQU8sRUFBRSxLQUFLM0MsSUFBTCxDQUFVb0MsSUFBVixDQUFlLElBQWYsQ0FITztBQUloQkksUUFBQUEsS0FBSyxFQUFFO0FBSlMsT0FBbEI7O0FBTUEsVUFBSTFELEtBQUssSUFBSSxJQUFiLEVBQW1CO0FBQ2pCbUQsUUFBQUEsVUFBVSxDQUFDVyxNQUFYLEdBQW9CLElBQXBCO0FBQ0FGLFFBQUFBLFdBQVcsQ0FBQ0UsTUFBWixHQUFxQixJQUFyQjtBQUNEOztBQUNELFdBQUs1QixlQUFMLEdBQXVCLEVBQXZCO0FBQ0EsV0FBSzFCLFVBQUwsR0FBa0IsRUFBbEI7QUFFQSwwQkFDRSxvQkFBQyxJQUFEO0FBQ0UsUUFBQSxHQUFHLEVBQUUsS0FBS0ssT0FEWjtBQUVFLFFBQUEsU0FBUyxFQUFFLEtBQUtHLEtBQUwsQ0FBVytDLFFBRnhCO0FBR0UsUUFBQSxVQUFVLG9CQUFPWixVQUFQLENBSFo7QUFJRSxRQUFBLFdBQVcsb0JBQU9TLFdBQVAsQ0FKYjtBQUtFLFFBQUEsUUFBUSxFQUFFO0FBQUVJLFVBQUFBLElBQUksRUFBRTtBQUFSLFNBTFo7QUFNRSxRQUFBLFVBQVUsRUFBRTtBQUFFQSxVQUFBQSxJQUFJLEVBQUU7QUFBUixTQU5kO0FBT0UsUUFBQSxjQUFjLEVBQUUsd0JBQUNDLGFBQUQsRUFBZ0JDLFNBQWhCLEVBQThCO0FBQzVDLGNBQVFDLFlBQVIsR0FBeUIsTUFBSSxDQUFDbkQsS0FBOUIsQ0FBUW1ELFlBQVI7QUFDQUEsVUFBQUEsWUFBWSxJQUFJQSxZQUFZLENBQUNGLGFBQUQsRUFBZ0JDLFNBQWhCLENBQTVCO0FBQ0QsU0FWSDtBQVdFLFFBQUEsV0FBVyxFQUFFLEtBQUtsRCxLQUFMLENBQVdvRDtBQVgxQixTQVlNbEIsVUFaTixnQkFlRTtBQUFLLFFBQUEsU0FBUyxFQUFFOUQsT0FBTyxDQUFDTyxNQUFELEVBQVMsTUFBVDtBQUF2QixzQkFDRSxvQkFBQyxHQUFEO0FBQUssUUFBQSxNQUFNLEVBQUU7QUFBYixTQUNHc0QsU0FBUyxDQUFDb0IsR0FBVixDQUFjLFVBQUNDLElBQUQsRUFBWUMsS0FBWixFQUE4QjtBQUMzQyxZQUFNQyxTQUFTLEdBQUdGLElBQUksQ0FBQ3RELEtBQUwsSUFBYyxFQUFoQzs7QUFDQSxZQUFJd0QsU0FBUyxDQUFDQyxXQUFkLEVBQTJCO0FBQ3pCLFVBQUEsTUFBSSxDQUFDdkMsZUFBTCxDQUFxQm9DLElBQUksQ0FBQ0ksSUFBMUIsSUFBa0NGLFNBQVMsQ0FBQ0MsV0FBNUM7QUFDRDs7QUFDRCxZQUFJRCxTQUFTLENBQUNyQyxNQUFkLEVBQXNCO0FBQ3BCLFVBQUEsTUFBSSxDQUFDM0IsVUFBTCxDQUFnQjhELElBQUksQ0FBQ0ksSUFBckIsSUFBNkJGLFNBQVMsQ0FBQ3JDLE1BQXZDO0FBQ0Q7O0FBQ0QsWUFBSXdDLFVBQVUsR0FBR0wsSUFBSSxDQUFDdEQsS0FBTCxDQUFXMkQsVUFBWCxJQUF5QixLQUExQzs7QUFDQSxZQUFJM0QsS0FBSztBQUNQNEQsVUFBQUEsV0FBVyw4QkFBUU4sSUFBSSxDQUFDdEUsS0FBYjtBQURKLFdBR0pzRSxJQUFJLENBQUN0RCxLQUhEO0FBSVBnQyxVQUFBQSxRQUFRLEVBQUUsTUFBSSxDQUFDNkIsV0FBTCxDQUFpQnZCLElBQWpCLENBQ1IsTUFEUSxFQUVSO0FBQ0VULFlBQUFBLElBQUksRUFBRXlCLElBQUksQ0FBQ3pCLElBRGI7QUFFRUMsWUFBQUEsUUFBUSxFQUFFd0IsSUFBSSxDQUFDeEI7QUFGakIsV0FGUSxvQkFNSHdCLElBQUksQ0FBQ3RELEtBTkY7QUFKSCxVQUFUOztBQWFBLFlBQUksQ0FBQ3NELElBQUksQ0FBQ3pCLElBQU4sSUFBY3lCLElBQUksQ0FBQ3pCLElBQUwsSUFBYSxPQUEvQixFQUF3QztBQUN0QzdCLFVBQUFBLEtBQUssQ0FBQzJELFVBQU4sR0FBbUIsSUFBbkI7QUFDQTNELFVBQUFBLEtBQUssQ0FBQzhELFNBQU4sR0FBa0IsSUFBbEI7QUFDRDs7QUFDRCxlQUFPOUQsS0FBSyxDQUFDeUQsV0FBYjtBQUNBLGVBQU96RCxLQUFLLENBQUNtQixNQUFiOztBQUNBLFlBQUluQyxLQUFLLElBQUksSUFBYixFQUFtQjtBQUNqQmdCLFVBQUFBLEtBQUssQ0FBQytELFFBQU4sR0FBaUIsSUFBakI7QUFDRDs7QUFFRCxZQUFJVCxJQUFJLENBQUNVLEtBQUwsSUFBY1YsSUFBSSxDQUFDVSxLQUFMLENBQVdDLE1BQVgsR0FBb0IsQ0FBdEMsRUFBeUM7QUFDdkN0QixVQUFBQSxRQUFRLENBQUN1QixJQUFULENBQWNaLElBQUksQ0FBQ0ksSUFBbkI7QUFDRDs7QUFDRCxZQUFJSCxLQUFLLEdBQUcsQ0FBUixLQUFjdEIsU0FBUyxDQUFDZ0MsTUFBNUIsRUFBb0M7QUFDbEMsVUFBQSxNQUFJLENBQUNuRCxLQUFMLEdBQWE2QixRQUFiO0FBQ0Q7O0FBQ0QsNEJBQ0Usb0JBQUMsR0FBRDtBQUFLLFVBQUEsSUFBSSxFQUFFVyxJQUFJLENBQUNhLElBQUwsSUFBYSxFQUF4QjtBQUE0QixVQUFBLEdBQUcsRUFBRVo7QUFBakMsd0JBQ0Usb0JBQUMsSUFBRCxDQUFNLElBQU47QUFDRSxVQUFBLEtBQUssRUFBRUQsSUFBSSxDQUFDdEUsS0FEZDtBQUVFLFVBQUEsSUFBSSxFQUFFc0UsSUFBSSxDQUFDSSxJQUZiO0FBR0UsVUFBQSxLQUFLLEVBQUVKLElBQUksQ0FBQ1UsS0FIZDtBQUlFLFVBQUEsVUFBVSxFQUFFTCxVQUpkO0FBS0UsVUFBQSxhQUFhLEVBQUVMLElBQUksQ0FBQ3pCLElBQUwsR0FBWXlCLElBQUksQ0FBQ3pCLElBQWpCLEdBQXdCO0FBTHpDLFdBT0d4RCxPQUFPLENBQUNpRixJQUFJLENBQUN6QixJQUFOLG9CQUNIN0IsS0FERyxFQVBWLENBREYsQ0FERjtBQWVELE9BckRBLENBREgsQ0FERixDQWZGLENBREY7QUE0RUQ7Ozs7RUEvUHNCOUIsYTs7QUFrUXpCLGVBQWVXLFVBQWYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgUHVyZUNvbXBvbmVudCB9IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgRm9ybSBmcm9tIFwiLi4vLi4vYmFzZS9mb3JtXCI7XHJcbmltcG9ydCB7IGdldExlc3MsIGdldE5vZGUgfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcclxuaW1wb3J0IG1lc3NhZ2UgZnJvbSBcIi4uLy4uL2Jhc2UvbWVzc2FnZVwiO1xyXG5pbXBvcnQgQ29sIGZyb20gXCIuLi8uLi9iYXNlL2dyaWQvQ29sXCI7XHJcbmltcG9ydCBSb3cgZnJvbSBcIi4uLy4uL2Jhc2UvZ3JpZC9Sb3dcIjtcclxuaW1wb3J0IHsgaXNFbXB0eU9iaiB9IGZyb20gXCJAYmotbnNjL2Z1bmN0aW9uc1wiO1xyXG5pbXBvcnQgbW9tZW50IGZyb20gXCJtb21lbnRcIjtcclxuaW1wb3J0IHN0eWxlcyBmcm9tIFwiLi9pbmRleC5tb2R1bGUubGVzc1wiO1xyXG5pbXBvcnQgdXRpbHMgZnJvbSBcIi4uLy4uL3V0aWxzXCI7XHJcbmltcG9ydCBsb2Rhc2ggZnJvbSBcImxvZGFzaFwiO1xyXG5jbGFzcyBFZGl0b3JGb3JtIGV4dGVuZHMgUHVyZUNvbXBvbmVudDxhbnk+IHtcclxuICBmb3JtUmVmID0gUmVhY3QuY3JlYXRlUmVmPGFueT4oKTtcclxuICBzdGF0ZSA9IHtcclxuICAgIGxvYWRpbmc6IGZhbHNlLFxyXG4gICAgbGFiZWw6IFwiXCIsXHJcbiAgICBlZGl0b3JGbGFnOiB0cnVlLFxyXG4gICAgdmFsdWU6IHt9IGFzIGFueSxcclxuICAgIGRpY3ROYW1lczoge30gYXMgYW55LFxyXG4gIH07XHJcbiAgdmFsaWQ6IGFueSA9IFtdO1xyXG4gIGRhdGVWYWx1ZUZvcm1hdCA9IHt9IGFzIGFueTtcclxuICBkYXRlRm9ybWF0ID0ge30gYXMgYW55O1xyXG4gIC8v6KGo5Y2V5pi+56S6XHJcbiAgc2hvdyhvcmdWYWx1ZT86IGFueSwgZWRpdG9yZmxhZyA9IFwiYWRkXCIpIHtcclxuICAgIGxldCBsYWJlbCA9IFwi5paw5aKeXCI7XHJcbiAgICBpZiAob3JnVmFsdWUgJiYgZWRpdG9yZmxhZyA9PSBcImVkaXRvclwiKSB7XHJcbiAgICAgIGxhYmVsID0gXCLnvJbovpFcIjtcclxuICAgIH0gZWxzZSBpZiAob3JnVmFsdWUgJiYgZWRpdG9yZmxhZyA9PSBcImRldGFpbFwiKSB7XHJcbiAgICAgIGxhYmVsID0gXCLmn6XnnItcIjtcclxuICAgIH1cclxuICAgIGlmIChvcmdWYWx1ZSkge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIGxhYmVsOiBsYWJlbCxcclxuICAgICAgICAgIHZhbHVlOiBvcmdWYWx1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICAgICgpID0+IHtcclxuICAgICAgICAgIGxldCB2YWx1ZSA9IGxvZGFzaC5jbG9uZURlZXAob3JnVmFsdWUpO1xyXG4gICAgICAgICAgaWYgKCFpc0VtcHR5T2JqKHRoaXMuZGF0ZUZvcm1hdCkpIHtcclxuICAgICAgICAgICAgZm9yIChsZXQga2V5IGluIHRoaXMuZGF0ZUZvcm1hdCkge1xyXG4gICAgICAgICAgICAgIGxldCBvbGRkYXRhID0gdmFsdWVba2V5XTtcclxuICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShvbGRkYXRhKSkge1xyXG4gICAgICAgICAgICAgICAgdmFsdWVba2V5XSA9IFtcclxuICAgICAgICAgICAgICAgICAgbW9tZW50KG9sZGRhdGFbMF0sIHRoaXMuZGF0ZUZvcm1hdFtrZXldKSxcclxuICAgICAgICAgICAgICAgICAgbW9tZW50KG9sZGRhdGFbMV0sIHRoaXMuZGF0ZUZvcm1hdFtrZXldKSxcclxuICAgICAgICAgICAgICAgIF07XHJcbiAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHZhbHVlW2tleV0gPSBtb21lbnQob2xkZGF0YSwgdGhpcy5kYXRlRm9ybWF0W2tleV0pO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnNob3dGb3JtKHZhbHVlKTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIGxhYmVsOiBsYWJlbCxcclxuICAgICAgICB9LFxyXG4gICAgICAgICgpID0+IHtcclxuICAgICAgICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5zaG93Rm9ybSh0aGlzLnByb3BzLmRlZmF1bHRWYWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuICBoaWRlKGhpZGUgPSB0cnVlKSB7XHJcbiAgICBjb25zdCB7IG9uSGlkZUZvcm0gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpZiAob25IaWRlRm9ybSkge1xyXG4gICAgICBvbkhpZGVGb3JtICYmIG9uSGlkZUZvcm0oKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zZXRTdGF0ZSh7IGxvYWRpbmc6IGZhbHNlIH0pO1xyXG4gICAgaGlkZSAmJiB0aGlzLmZvcm1SZWYuY3VycmVudD8uaGlkZUZvcm0oKTtcclxuICB9XHJcbiAgaGlkZUZvcm0oKSB7XHJcbiAgICB0aGlzLnNldFN0YXRlKHsgbG9hZGluZzogZmFsc2UgfSk7XHJcbiAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8uaGlkZUZvcm0oKTtcclxuICB9XHJcbiAgc2V0TG9hZGluZyhsb2FkaW5nOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLnNldFN0YXRlKHsgbG9hZGluZzogbG9hZGluZyB9KTtcclxuICB9XHJcbiAgc2V0RmllbGRzVmFsdWUodmFsdWVzKSB7XHJcbiAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8uc2V0RmllbGRzVmFsdWUodmFsdWVzKTtcclxuICB9XHJcbiAgZ2V0RmllbGRzVmFsdWUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmdldEZpZWxkc1ZhbHVlKCk7XHJcbiAgfVxyXG4gIG9uU3VibWl0KCkge1xyXG4gICAgY29uc3Qge1xyXG4gICAgICBzdWJtaXRVcmwgPSBcIlwiLFxyXG4gICAgICBzdWJtaXRQYXJhbXMgPSB7fSxcclxuICAgICAgb25TdWJtaXQsXHJcbiAgICAgIGNhbGxCYWNrLFxyXG4gICAgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCB7IGxhYmVsLCB2YWx1ZSwgZGljdE5hbWVzIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgY29uc3QgZm9ybVZhbHVlID0gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmdldEZpZWxkc1ZhbHVlKCk7XHJcbiAgICBsZXQgdmFsaWQgPSB0aGlzLnZhbGlkO1xyXG4gICAgdGhpcy5mb3JtUmVmLmN1cnJlbnRcclxuICAgICAgPy52YWxpZGF0ZUZpZWxkcyh2YWxpZClcclxuICAgICAgLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuc2V0U3RhdGUoeyBsb2FkaW5nOiB0cnVlIH0pO1xyXG4gICAgICAgIGxldCBkYXRhID0geyAuLi5mb3JtVmFsdWUsIC4uLmRpY3ROYW1lcyB9O1xyXG4gICAgICAgIGlmICghaXNFbXB0eU9iaih0aGlzLmRhdGVWYWx1ZUZvcm1hdCkpIHtcclxuICAgICAgICAgIGZvciAobGV0IGtleSBpbiB0aGlzLmRhdGVWYWx1ZUZvcm1hdCkge1xyXG4gICAgICAgICAgICBsZXQgb2xkZGF0YSA9IGRhdGFba2V5XTtcclxuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkob2xkZGF0YSkpIHtcclxuICAgICAgICAgICAgICBkYXRhW2tleV0gPSBbXHJcbiAgICAgICAgICAgICAgICBtb21lbnQob2xkZGF0YVswXSkuZm9ybWF0KHRoaXMuZGF0ZVZhbHVlRm9ybWF0W2tleV0pLFxyXG4gICAgICAgICAgICAgICAgbW9tZW50KG9sZGRhdGFbMV0pLmZvcm1hdCh0aGlzLmRhdGVWYWx1ZUZvcm1hdFtrZXldKSxcclxuICAgICAgICAgICAgICBdO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIGRhdGFba2V5XSA9IG1vbWVudChvbGRkYXRhKS5mb3JtYXQodGhpcy5kYXRlVmFsdWVGb3JtYXRba2V5XSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGxhYmVsID09IFwi57yW6L6RXCIpIHtcclxuICAgICAgICAgIGRhdGEgPSB7IC4uLmRhdGEsIGlkOiB2YWx1ZT8uaWQgfTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKG9uU3VibWl0KSB7XHJcbiAgICAgICAgICBvblN1Ym1pdCAmJiBvblN1Ym1pdChkYXRhLCBsYWJlbCk7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICghc3VibWl0VXJsKSB7XHJcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1cmzkuI3og73kuLrnqbrvvIFcIik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5vblN1Ym1pdChcclxuICAgICAgICAgIHN1Ym1pdFVybCxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgZGF0YTogeyAuLi5kYXRhIH0sXHJcbiAgICAgICAgICAgIG5vVW5kZWZpbmVkOiBsYWJlbCA9PSBcIue8lui+kVwiLFxyXG4gICAgICAgICAgICBzdWJtaXRQYXJhbXMsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IHsgY29kZSB9ID0gcmVzO1xyXG4gICAgICAgICAgICB0aGlzLnNldFN0YXRlKHsgbG9hZGluZzogZmFsc2UgfSk7XHJcbiAgICAgICAgICAgIGlmIChjb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgICBtZXNzYWdlLnN1Y2Nlc3MobGFiZWwgKyBcIuaIkOWKn1wiKTtcclxuICAgICAgICAgICAgICB0aGlzLmhpZGUodHJ1ZSk7XHJcbiAgICAgICAgICAgICAgY2FsbEJhY2sgJiYgY2FsbEJhY2soKTtcclxuICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5oaWRlKGZhbHNlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG4gICAgICB9KVxyXG4gICAgICAuY2F0Y2goKGVycm9ySW5mbzogYW55KSA9PiB7fSk7XHJcbiAgfVxyXG4gIHZhbHVlQ2hhbmdlKHsgdHlwZSwgZGljdE5hbWUgfSwgcHJvcHMsIHZhbHVlLCB2YWx1ZU9wdGlvbiwgZGF0YSkge1xyXG4gICAgaWYgKHZhbHVlT3B0aW9uKSB7XHJcbiAgICAgIGlmIChkaWN0TmFtZSkge1xyXG4gICAgICAgIGNvbnN0IHsgZGljdE5hbWVzIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgICAgIGNvbnN0IG5ld05hbWVzID0geyAuLi5kaWN0TmFtZXMgfSBhcyBhbnk7XHJcbiAgICAgICAgbmV3TmFtZXNbZGljdE5hbWVdID0gdmFsdWVPcHRpb24ubGFiZWw7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICBkaWN0TmFtZXM6IG5ld05hbWVzLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBpZiAocHJvcHMub25DaGFuZ2UpIHtcclxuICAgICAgcHJvcHMub25DaGFuZ2UodmFsdWUsIHZhbHVlT3B0aW9uLCBkYXRhKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IHsgZm9ybVByb3BzID0gW10sIG90aGVyUHJvcHMgPSB7fSB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgbG9hZGluZywgbGFiZWwgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBsZXQgbW9kYWxQcm9wcyA9IHtcclxuICAgICAgdGl0bGU6IGxhYmVsLFxyXG4gICAgICBvbk9rOiB0aGlzLm9uU3VibWl0LmJpbmQodGhpcyksXHJcbiAgICAgIG9uQ2FuY2VsOiB0aGlzLmhpZGUuYmluZCh0aGlzKSxcclxuICAgICAgb2tCdXR0b25Qcm9wczogeyBsb2FkaW5nOiBsb2FkaW5nIH0sXHJcbiAgICAgIGNlbnRlcmVkOiB0cnVlLFxyXG4gICAgICB3aWR0aDogXCI1MHZ3XCIsXHJcbiAgICB9IGFzIGFueTtcclxuXHJcbiAgICBjb25zdCBuZXdWYWxpZDogYW55W10gPSBbXTtcclxuICAgIGxldCBkcmF3ZXJQcm9wcyA9IHtcclxuICAgICAgdGl0bGU6IGxhYmVsLFxyXG4gICAgICBvbk9rOiB0aGlzLm9uU3VibWl0LmJpbmQodGhpcyksXHJcbiAgICAgIG9uQ2xvc2U6IHRoaXMuaGlkZS5iaW5kKHRoaXMpLFxyXG4gICAgICB3aWR0aDogXCI1MHZ3XCIsXHJcbiAgICB9IGFzIGFueTtcclxuICAgIGlmIChsYWJlbCA9PSBcIuafpeeci1wiKSB7XHJcbiAgICAgIG1vZGFsUHJvcHMuZm9vdGVyID0gbnVsbDtcclxuICAgICAgZHJhd2VyUHJvcHMuZm9vdGVyID0gbnVsbDtcclxuICAgIH1cclxuICAgIHRoaXMuZGF0ZVZhbHVlRm9ybWF0ID0ge307XHJcbiAgICB0aGlzLmRhdGVGb3JtYXQgPSB7fTtcclxuXHJcbiAgICByZXR1cm4gKFxyXG4gICAgICA8Rm9ybVxyXG4gICAgICAgIHJlZj17dGhpcy5mb3JtUmVmfVxyXG4gICAgICAgIHNob3dNb2RlbD17dGhpcy5wcm9wcy5mb3JtVHlwZX1cclxuICAgICAgICBtb2RhbFByb3BzPXt7IC4uLm1vZGFsUHJvcHMgfX1cclxuICAgICAgICBkcmF3ZXJQcm9wcz17eyAuLi5kcmF3ZXJQcm9wcyB9fVxyXG4gICAgICAgIGxhYmVsQ29sPXt7IGZsZXg6IFwiMTAwcHhcIiB9fVxyXG4gICAgICAgIHdyYXBwZXJDb2w9e3sgZmxleDogXCIxNXZ3XCIgfX1cclxuICAgICAgICBvblZhbHVlc0NoYW5nZT17KGNoYW5nZWRWYWx1ZXMsIGFsbFZhbHVlcykgPT4ge1xyXG4gICAgICAgICAgY29uc3QgeyBvbkZvcm1DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XHJcbiAgICAgICAgICBvbkZvcm1DaGFuZ2UgJiYgb25Gb3JtQ2hhbmdlKGNoYW5nZWRWYWx1ZXMsIGFsbFZhbHVlcyk7XHJcbiAgICAgICAgfX1cclxuICAgICAgICBjaGFuZ2VWYWxpZD17dGhpcy5wcm9wcy5jaGFuZ2VWYWxpZH1cclxuICAgICAgICB7Li4ub3RoZXJQcm9wc31cclxuICAgICAgPlxyXG4gICAgICAgIHsvKiA8ZGl2PiAqL31cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiZm9ybVwiKX0+XHJcbiAgICAgICAgICA8Um93IGd1dHRlcj17MjR9PlxyXG4gICAgICAgICAgICB7Zm9ybVByb3BzLm1hcCgoaXRlbTogYW55LCBpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgICAgICAgY29uc3QgaXRlbVByb3BzID0gaXRlbS5wcm9wcyB8fCB7fTtcclxuICAgICAgICAgICAgICBpZiAoaXRlbVByb3BzLnZhbHVlRm9ybWF0KSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGVWYWx1ZUZvcm1hdFtpdGVtLm5hbWVdID0gaXRlbVByb3BzLnZhbHVlRm9ybWF0O1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBpZiAoaXRlbVByb3BzLmZvcm1hdCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5kYXRlRm9ybWF0W2l0ZW0ubmFtZV0gPSBpdGVtUHJvcHMuZm9ybWF0O1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBsZXQgYWxsb3dDaGFycyA9IGl0ZW0ucHJvcHMuYWxsb3dDaGFycyB8fCBmYWxzZTtcclxuICAgICAgICAgICAgICBsZXQgcHJvcHMgPSB7XHJcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogYOivt+i+k+WFpSR7aXRlbS5sYWJlbH1gLFxyXG5cclxuICAgICAgICAgICAgICAgIC4uLml0ZW0ucHJvcHMsXHJcbiAgICAgICAgICAgICAgICBvbkNoYW5nZTogdGhpcy52YWx1ZUNoYW5nZS5iaW5kKFxyXG4gICAgICAgICAgICAgICAgICB0aGlzLFxyXG4gICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogaXRlbS50eXBlLFxyXG4gICAgICAgICAgICAgICAgICAgIGRpY3ROYW1lOiBpdGVtLmRpY3ROYW1lLFxyXG4gICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICB7IC4uLml0ZW0ucHJvcHMgfVxyXG4gICAgICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgIGlmICghaXRlbS50eXBlIHx8IGl0ZW0udHlwZSA9PSBcIklucHV0XCIpIHtcclxuICAgICAgICAgICAgICAgIHByb3BzLmFsbG93Q2hhcnMgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgcHJvcHMuc2hvd0NvdW50ID0gdHJ1ZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgZGVsZXRlIHByb3BzLnZhbHVlRm9ybWF0O1xyXG4gICAgICAgICAgICAgIGRlbGV0ZSBwcm9wcy5mb3JtYXQ7XHJcbiAgICAgICAgICAgICAgaWYgKGxhYmVsID09IFwi5p+l55yLXCIpIHtcclxuICAgICAgICAgICAgICAgIHByb3BzLmRpc2FibGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgIGlmIChpdGVtLnJ1bGVzICYmIGl0ZW0ucnVsZXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgICAgbmV3VmFsaWQucHVzaChpdGVtLm5hbWUpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBpZiAoaW5kZXggKyAxID09PSBmb3JtUHJvcHMubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnZhbGlkID0gbmV3VmFsaWQ7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgICAgICA8Q29sIHNwYW49e2l0ZW0uc3BhbiB8fCAxMn0ga2V5PXtpbmRleH0+XHJcbiAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW1cclxuICAgICAgICAgICAgICAgICAgICBsYWJlbD17aXRlbS5sYWJlbH1cclxuICAgICAgICAgICAgICAgICAgICBuYW1lPXtpdGVtLm5hbWV9XHJcbiAgICAgICAgICAgICAgICAgICAgcnVsZXM9e2l0ZW0ucnVsZXN9XHJcbiAgICAgICAgICAgICAgICAgICAgYWxsb3dDaGFycz17YWxsb3dDaGFyc31cclxuICAgICAgICAgICAgICAgICAgICBjb21wb25lbnROYW1lPXtpdGVtLnR5cGUgPyBpdGVtLnR5cGUgOiBcIklucHV0XCJ9XHJcbiAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICB7Z2V0Tm9kZShpdGVtLnR5cGUsIHtcclxuICAgICAgICAgICAgICAgICAgICAgIC4uLnByb3BzLFxyXG4gICAgICAgICAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cclxuICAgICAgICAgICAgICAgIDwvQ29sPlxyXG4gICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgPC9Sb3c+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvRm9ybT5cclxuICAgICk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZGVmYXVsdCBFZGl0b3JGb3JtO1xyXG4iXX0=
|
|
289
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJGb3JtIiwiZ2V0TGVzcyIsImdldE5vZGUiLCJtZXNzYWdlIiwiQ29sIiwiUm93IiwiaXNFbXB0eU9iaiIsIm1vbWVudCIsInN0eWxlcyIsImxvZGFzaCIsIkVkaXRvckZvcm0iLCJjb25zdHJ1Y3RvciIsImFyZ3VtZW50cyIsIl9kZWZpbmVQcm9wZXJ0eSIsImNyZWF0ZVJlZiIsImxvYWRpbmciLCJsYWJlbCIsImVkaXRvckZsYWciLCJ2YWx1ZSIsImRpY3ROYW1lcyIsInNob3ciLCJvcmdWYWx1ZSIsImVkaXRvcmZsYWciLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJzZXRTdGF0ZSIsIl90aGlzJGZvcm1SZWYkY3VycmVudCIsImNsb25lRGVlcCIsImRhdGVGb3JtYXQiLCJrZXkiLCJvbGRkYXRhIiwiQXJyYXkiLCJpc0FycmF5IiwiZm9ybVJlZiIsImN1cnJlbnQiLCJzaG93Rm9ybSIsIl90aGlzJGZvcm1SZWYkY3VycmVudDIiLCJwcm9wcyIsImRlZmF1bHRWYWx1ZSIsImhpZGUiLCJfdGhpcyRmb3JtUmVmJGN1cnJlbnQzIiwib25IaWRlRm9ybSIsImhpZGVGb3JtIiwiX3RoaXMkZm9ybVJlZiRjdXJyZW50NCIsInNldExvYWRpbmciLCJzZXRGaWVsZHNWYWx1ZSIsInZhbHVlcyIsIl90aGlzJGZvcm1SZWYkY3VycmVudDUiLCJnZXRGaWVsZHNWYWx1ZSIsIl90aGlzJGZvcm1SZWYkY3VycmVudDYiLCJvblN1Ym1pdCIsIl90aGlzJGZvcm1SZWYkY3VycmVudDciLCJfdGhpcyRmb3JtUmVmJGN1cnJlbnQ4Iiwic3VibWl0VXJsIiwic3VibWl0UGFyYW1zIiwiY2FsbEJhY2siLCJzdGF0ZSIsImZvcm1WYWx1ZSIsInZhbGlkIiwidmFsaWRhdGVGaWVsZHMiLCJ0aGVuIiwiX3RoaXMkZm9ybVJlZiRjdXJyZW50OSIsImRhdGEiLCJfb2JqZWN0U3ByZWFkIiwiZGF0ZVZhbHVlRm9ybWF0IiwiZm9ybWF0IiwiaWQiLCJFcnJvciIsIm5vVW5kZWZpbmVkIiwicmVzIiwiY29kZSIsInN1Y2Nlc3MiLCJjYXRjaCIsImVycm9ySW5mbyIsInZhbHVlQ2hhbmdlIiwiX3JlZiIsInZhbHVlT3B0aW9uIiwidHlwZSIsImRpY3ROYW1lIiwibmV3TmFtZXMiLCJvbkNoYW5nZSIsInJlbmRlciIsImZvcm1Qcm9wcyIsIm90aGVyUHJvcHMiLCJtb2RhbFByb3BzIiwidGl0bGUiLCJvbk9rIiwiYmluZCIsIm9uQ2FuY2VsIiwib2tCdXR0b25Qcm9wcyIsImNlbnRlcmVkIiwid2lkdGgiLCJuZXdWYWxpZCIsImRyYXdlclByb3BzIiwib25DbG9zZSIsImZvb3RlciIsImNyZWF0ZUVsZW1lbnQiLCJfZXh0ZW5kcyIsInJlZiIsInNob3dNb2RlbCIsImZvcm1UeXBlIiwibGFiZWxDb2wiLCJmbGV4Iiwid3JhcHBlckNvbCIsIm9uVmFsdWVzQ2hhbmdlIiwiY2hhbmdlZFZhbHVlcyIsImFsbFZhbHVlcyIsIm9uRm9ybUNoYW5nZSIsImNoYW5nZVZhbGlkIiwiY2xhc3NOYW1lIiwiZ3V0dGVyIiwibWFwIiwiaXRlbSIsImluZGV4IiwiaXRlbVByb3BzIiwidmFsdWVGb3JtYXQiLCJuYW1lIiwiYWxsb3dDaGFycyIsInBsYWNlaG9sZGVyIiwiY29uY2F0Iiwic2hvd0NvdW50IiwiZGlzYWJsZWQiLCJydWxlcyIsInB1c2giLCJzcGFuIiwiSXRlbSIsImNvbXBvbmVudE5hbWUiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9wYWdlL0Jhc2VQYWdlL0Zvcm0udHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBQdXJlQ29tcG9uZW50IH0gZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCBGb3JtIGZyb20gXCIuLi8uLi9iYXNlL2Zvcm1cIjtcclxuaW1wb3J0IHsgZ2V0TGVzcywgZ2V0Tm9kZSB9IGZyb20gXCIuLi8uLi91dGlsc1wiO1xyXG5pbXBvcnQgbWVzc2FnZSBmcm9tIFwiLi4vLi4vYmFzZS9tZXNzYWdlXCI7XHJcbmltcG9ydCBDb2wgZnJvbSBcIi4uLy4uL2Jhc2UvZ3JpZC9Db2xcIjtcclxuaW1wb3J0IFJvdyBmcm9tIFwiLi4vLi4vYmFzZS9ncmlkL1Jvd1wiO1xyXG5pbXBvcnQgeyBpc0VtcHR5T2JqIH0gZnJvbSBcIkBiai1uc2MvZnVuY3Rpb25zXCI7XHJcbmltcG9ydCBtb21lbnQgZnJvbSBcIm1vbWVudFwiO1xyXG5pbXBvcnQgc3R5bGVzIGZyb20gXCIuL2luZGV4Lm1vZHVsZS5sZXNzXCI7XHJcbmltcG9ydCB1dGlscyBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcclxuaW1wb3J0IGxvZGFzaCBmcm9tIFwibG9kYXNoXCI7XHJcbmNsYXNzIEVkaXRvckZvcm0gZXh0ZW5kcyBQdXJlQ29tcG9uZW50PGFueT4ge1xyXG4gIGZvcm1SZWYgPSBSZWFjdC5jcmVhdGVSZWY8YW55PigpO1xyXG4gIHN0YXRlID0ge1xyXG4gICAgbG9hZGluZzogZmFsc2UsXHJcbiAgICBsYWJlbDogXCJcIixcclxuICAgIGVkaXRvckZsYWc6IHRydWUsXHJcbiAgICB2YWx1ZToge30gYXMgYW55LFxyXG4gICAgZGljdE5hbWVzOiB7fSBhcyBhbnksXHJcbiAgfTtcclxuICB2YWxpZDogYW55ID0gW107XHJcbiAgZGF0ZVZhbHVlRm9ybWF0ID0ge30gYXMgYW55O1xyXG4gIGRhdGVGb3JtYXQgPSB7fSBhcyBhbnk7XHJcbiAgLy/ooajljZXmmL7npLpcclxuICBzaG93KG9yZ1ZhbHVlPzogYW55LCBlZGl0b3JmbGFnID0gXCJhZGRcIikge1xyXG4gICAgbGV0IGxhYmVsID0gXCLmlrDlop5cIjtcclxuICAgIGlmIChvcmdWYWx1ZSAmJiBlZGl0b3JmbGFnID09IFwiZWRpdG9yXCIpIHtcclxuICAgICAgbGFiZWwgPSBcIue8lui+kVwiO1xyXG4gICAgfSBlbHNlIGlmIChvcmdWYWx1ZSAmJiBlZGl0b3JmbGFnID09IFwiZGV0YWlsXCIpIHtcclxuICAgICAgbGFiZWwgPSBcIuafpeeci1wiO1xyXG4gICAgfVxyXG4gICAgaWYgKG9yZ1ZhbHVlKSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbGFiZWw6IGxhYmVsLFxyXG4gICAgICAgICAgdmFsdWU6IG9yZ1ZhbHVlLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgKCkgPT4ge1xyXG4gICAgICAgICAgbGV0IHZhbHVlID0gbG9kYXNoLmNsb25lRGVlcChvcmdWYWx1ZSk7XHJcbiAgICAgICAgICBpZiAoIWlzRW1wdHlPYmoodGhpcy5kYXRlRm9ybWF0KSkge1xyXG4gICAgICAgICAgICBmb3IgKGxldCBrZXkgaW4gdGhpcy5kYXRlRm9ybWF0KSB7XHJcbiAgICAgICAgICAgICAgbGV0IG9sZGRhdGEgPSB2YWx1ZVtrZXldO1xyXG4gICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KG9sZGRhdGEpKSB7XHJcbiAgICAgICAgICAgICAgICB2YWx1ZVtrZXldID0gW1xyXG4gICAgICAgICAgICAgICAgICBtb21lbnQob2xkZGF0YVswXSwgdGhpcy5kYXRlRm9ybWF0W2tleV0pLFxyXG4gICAgICAgICAgICAgICAgICBtb21lbnQob2xkZGF0YVsxXSwgdGhpcy5kYXRlRm9ybWF0W2tleV0pLFxyXG4gICAgICAgICAgICAgICAgXTtcclxuICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdmFsdWVba2V5XSA9IG1vbWVudChvbGRkYXRhLCB0aGlzLmRhdGVGb3JtYXRba2V5XSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8uc2hvd0Zvcm0odmFsdWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbGFiZWw6IGxhYmVsLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnNob3dGb3JtKHRoaXMucHJvcHMuZGVmYXVsdFZhbHVlKTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGhpZGUoaGlkZSA9IHRydWUpIHtcclxuICAgIGNvbnN0IHsgb25IaWRlRm9ybSB9ID0gdGhpcy5wcm9wcztcclxuICAgIGlmIChvbkhpZGVGb3JtKSB7XHJcbiAgICAgIG9uSGlkZUZvcm0gJiYgb25IaWRlRm9ybSgpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLnNldFN0YXRlKHsgbG9hZGluZzogZmFsc2UgfSk7XHJcbiAgICBoaWRlICYmIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5oaWRlRm9ybSgpO1xyXG4gIH1cclxuICBoaWRlRm9ybSgpIHtcclxuICAgIHRoaXMuc2V0U3RhdGUoeyBsb2FkaW5nOiBmYWxzZSB9KTtcclxuICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5oaWRlRm9ybSgpO1xyXG4gIH1cclxuICBzZXRMb2FkaW5nKGxvYWRpbmc6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuc2V0U3RhdGUoeyBsb2FkaW5nOiBsb2FkaW5nIH0pO1xyXG4gIH1cclxuICBzZXRGaWVsZHNWYWx1ZSh2YWx1ZXMpIHtcclxuICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5zZXRGaWVsZHNWYWx1ZSh2YWx1ZXMpO1xyXG4gIH1cclxuICBnZXRGaWVsZHNWYWx1ZSgpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1SZWYuY3VycmVudD8uZ2V0RmllbGRzVmFsdWUoKTtcclxuICB9XHJcbiAgb25TdWJtaXQoKSB7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHN1Ym1pdFVybCA9IFwiXCIsXHJcbiAgICAgIHN1Ym1pdFBhcmFtcyA9IHt9LFxyXG4gICAgICBvblN1Ym1pdCxcclxuICAgICAgY2FsbEJhY2ssXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgbGFiZWwsIHZhbHVlLCBkaWN0TmFtZXMgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBjb25zdCBmb3JtVmFsdWUgPSB0aGlzLmZvcm1SZWYuY3VycmVudD8uZ2V0RmllbGRzVmFsdWUoKTtcclxuICAgIGxldCB2YWxpZCA9IHRoaXMudmFsaWQ7XHJcbiAgICB0aGlzLmZvcm1SZWYuY3VycmVudFxyXG4gICAgICA/LnZhbGlkYXRlRmllbGRzKHZhbGlkKVxyXG4gICAgICAudGhlbigoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7IGxvYWRpbmc6IHRydWUgfSk7XHJcbiAgICAgICAgbGV0IGRhdGEgPSB7IC4uLmZvcm1WYWx1ZSwgLi4uZGljdE5hbWVzIH07XHJcbiAgICAgICAgaWYgKCFpc0VtcHR5T2JqKHRoaXMuZGF0ZVZhbHVlRm9ybWF0KSkge1xyXG4gICAgICAgICAgZm9yIChsZXQga2V5IGluIHRoaXMuZGF0ZVZhbHVlRm9ybWF0KSB7XHJcbiAgICAgICAgICAgIGxldCBvbGRkYXRhID0gZGF0YVtrZXldO1xyXG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShvbGRkYXRhKSkge1xyXG4gICAgICAgICAgICAgIGRhdGFba2V5XSA9IFtcclxuICAgICAgICAgICAgICAgIG1vbWVudChvbGRkYXRhWzBdKS5mb3JtYXQodGhpcy5kYXRlVmFsdWVGb3JtYXRba2V5XSksXHJcbiAgICAgICAgICAgICAgICBtb21lbnQob2xkZGF0YVsxXSkuZm9ybWF0KHRoaXMuZGF0ZVZhbHVlRm9ybWF0W2tleV0pLFxyXG4gICAgICAgICAgICAgIF07XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgZGF0YVtrZXldID0gbW9tZW50KG9sZGRhdGEpLmZvcm1hdCh0aGlzLmRhdGVWYWx1ZUZvcm1hdFtrZXldKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAobGFiZWwgPT0gXCLnvJbovpFcIikge1xyXG4gICAgICAgICAgZGF0YSA9IHsgLi4uZGF0YSwgaWQ6IHZhbHVlPy5pZCB9O1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAob25TdWJtaXQpIHtcclxuICAgICAgICAgIG9uU3VibWl0ICYmIG9uU3VibWl0KGRhdGEsIGxhYmVsKTtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKCFzdWJtaXRVcmwpIHtcclxuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcInVybOS4jeiDveS4uuepuu+8gVwiKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/Lm9uU3VibWl0KFxyXG4gICAgICAgICAgc3VibWl0VXJsLFxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICBkYXRhOiB7IC4uLmRhdGEgfSxcclxuICAgICAgICAgICAgbm9VbmRlZmluZWQ6IGxhYmVsID09IFwi57yW6L6RXCIsXHJcbiAgICAgICAgICAgIHN1Ym1pdFBhcmFtcyxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgY29uc3QgeyBjb2RlIH0gPSByZXM7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0U3RhdGUoeyBsb2FkaW5nOiBmYWxzZSB9KTtcclxuICAgICAgICAgICAgaWYgKGNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgIG1lc3NhZ2Uuc3VjY2VzcyhsYWJlbCArIFwi5oiQ5YqfXCIpO1xyXG4gICAgICAgICAgICAgIHRoaXMuaGlkZSh0cnVlKTtcclxuICAgICAgICAgICAgICBjYWxsQmFjayAmJiBjYWxsQmFjaygpO1xyXG4gICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLmhpZGUoZmFsc2UpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcbiAgICAgIH0pXHJcbiAgICAgIC5jYXRjaCgoZXJyb3JJbmZvOiBhbnkpID0+IHt9KTtcclxuICB9XHJcbiAgdmFsdWVDaGFuZ2UoeyB0eXBlLCBkaWN0TmFtZSB9LCBwcm9wcywgdmFsdWUsIHZhbHVlT3B0aW9uLCBkYXRhKSB7XHJcbiAgICBpZiAodmFsdWVPcHRpb24pIHtcclxuICAgICAgaWYgKGRpY3ROYW1lKSB7XHJcbiAgICAgICAgY29uc3QgeyBkaWN0TmFtZXMgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICAgICAgY29uc3QgbmV3TmFtZXMgPSB7IC4uLmRpY3ROYW1lcyB9IGFzIGFueTtcclxuICAgICAgICBuZXdOYW1lc1tkaWN0TmFtZV0gPSB2YWx1ZU9wdGlvbi5sYWJlbDtcclxuICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgIGRpY3ROYW1lczogbmV3TmFtZXMsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmIChwcm9wcy5vbkNoYW5nZSkge1xyXG4gICAgICBwcm9wcy5vbkNoYW5nZSh2YWx1ZSwgdmFsdWVPcHRpb24sIGRhdGEpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVuZGVyKCkge1xyXG4gICAgY29uc3QgeyBmb3JtUHJvcHMgPSBbXSwgb3RoZXJQcm9wcyA9IHt9IH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyBsb2FkaW5nLCBsYWJlbCB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGxldCBtb2RhbFByb3BzID0ge1xyXG4gICAgICB0aXRsZTogbGFiZWwsXHJcbiAgICAgIG9uT2s6IHRoaXMub25TdWJtaXQuYmluZCh0aGlzKSxcclxuICAgICAgb25DYW5jZWw6IHRoaXMuaGlkZS5iaW5kKHRoaXMpLFxyXG4gICAgICBva0J1dHRvblByb3BzOiB7IGxvYWRpbmc6IGxvYWRpbmcgfSxcclxuICAgICAgY2VudGVyZWQ6IHRydWUsXHJcbiAgICAgIHdpZHRoOiBcIjUwdndcIixcclxuICAgIH0gYXMgYW55O1xyXG5cclxuICAgIGNvbnN0IG5ld1ZhbGlkOiBhbnlbXSA9IFtdO1xyXG4gICAgbGV0IGRyYXdlclByb3BzID0ge1xyXG4gICAgICB0aXRsZTogbGFiZWwsXHJcbiAgICAgIG9uT2s6IHRoaXMub25TdWJtaXQuYmluZCh0aGlzKSxcclxuICAgICAgb25DbG9zZTogdGhpcy5oaWRlLmJpbmQodGhpcyksXHJcbiAgICAgIHdpZHRoOiBcIjUwdndcIixcclxuICAgIH0gYXMgYW55O1xyXG4gICAgaWYgKGxhYmVsID09IFwi5p+l55yLXCIpIHtcclxuICAgICAgbW9kYWxQcm9wcy5mb290ZXIgPSBudWxsO1xyXG4gICAgICBkcmF3ZXJQcm9wcy5mb290ZXIgPSBudWxsO1xyXG4gICAgfVxyXG4gICAgdGhpcy5kYXRlVmFsdWVGb3JtYXQgPSB7fTtcclxuICAgIHRoaXMuZGF0ZUZvcm1hdCA9IHt9O1xyXG5cclxuICAgIHJldHVybiAoXHJcbiAgICAgIDxGb3JtXHJcbiAgICAgICAgcmVmPXt0aGlzLmZvcm1SZWZ9XHJcbiAgICAgICAgc2hvd01vZGVsPXt0aGlzLnByb3BzLmZvcm1UeXBlfVxyXG4gICAgICAgIG1vZGFsUHJvcHM9e3sgLi4ubW9kYWxQcm9wcyB9fVxyXG4gICAgICAgIGRyYXdlclByb3BzPXt7IC4uLmRyYXdlclByb3BzIH19XHJcbiAgICAgICAgbGFiZWxDb2w9e3sgZmxleDogXCIxMDBweFwiIH19XHJcbiAgICAgICAgd3JhcHBlckNvbD17eyBmbGV4OiBcIjE1dndcIiB9fVxyXG4gICAgICAgIG9uVmFsdWVzQ2hhbmdlPXsoY2hhbmdlZFZhbHVlcywgYWxsVmFsdWVzKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCB7IG9uRm9ybUNoYW5nZSB9ID0gdGhpcy5wcm9wcztcclxuICAgICAgICAgIG9uRm9ybUNoYW5nZSAmJiBvbkZvcm1DaGFuZ2UoY2hhbmdlZFZhbHVlcywgYWxsVmFsdWVzKTtcclxuICAgICAgICB9fVxyXG4gICAgICAgIGNoYW5nZVZhbGlkPXt0aGlzLnByb3BzLmNoYW5nZVZhbGlkfVxyXG4gICAgICAgIHsuLi5vdGhlclByb3BzfVxyXG4gICAgICA+XHJcbiAgICAgICAgey8qIDxkaXY+ICovfVxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJmb3JtXCIpfT5cclxuICAgICAgICAgIDxSb3cgZ3V0dGVyPXsyNH0+XHJcbiAgICAgICAgICAgIHtmb3JtUHJvcHMubWFwKChpdGVtOiBhbnksIGluZGV4OiBudW1iZXIpID0+IHtcclxuICAgICAgICAgICAgICBjb25zdCBpdGVtUHJvcHMgPSBpdGVtLnByb3BzIHx8IHt9O1xyXG4gICAgICAgICAgICAgIGlmIChpdGVtUHJvcHMudmFsdWVGb3JtYXQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZGF0ZVZhbHVlRm9ybWF0W2l0ZW0ubmFtZV0gPSBpdGVtUHJvcHMudmFsdWVGb3JtYXQ7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIGlmIChpdGVtUHJvcHMuZm9ybWF0KSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGVGb3JtYXRbaXRlbS5uYW1lXSA9IGl0ZW1Qcm9wcy5mb3JtYXQ7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIGxldCBhbGxvd0NoYXJzID0gaXRlbS5wcm9wcy5hbGxvd0NoYXJzIHx8IGZhbHNlO1xyXG4gICAgICAgICAgICAgIGxldCBwcm9wcyA9IHtcclxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBg6K+36L6T5YWlJHtpdGVtLmxhYmVsfWAsXHJcblxyXG4gICAgICAgICAgICAgICAgLi4uaXRlbS5wcm9wcyxcclxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlOiB0aGlzLnZhbHVlQ2hhbmdlLmJpbmQoXHJcbiAgICAgICAgICAgICAgICAgIHRoaXMsXHJcbiAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICB0eXBlOiBpdGVtLnR5cGUsXHJcbiAgICAgICAgICAgICAgICAgICAgZGljdE5hbWU6IGl0ZW0uZGljdE5hbWUsXHJcbiAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgIHsgLi4uaXRlbS5wcm9wcyB9XHJcbiAgICAgICAgICAgICAgICApLFxyXG4gICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgaWYgKCFpdGVtLnR5cGUgfHwgaXRlbS50eXBlID09IFwiSW5wdXRcIikge1xyXG4gICAgICAgICAgICAgICAgcHJvcHMuYWxsb3dDaGFycyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBwcm9wcy5zaG93Q291bnQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBkZWxldGUgcHJvcHMudmFsdWVGb3JtYXQ7XHJcbiAgICAgICAgICAgICAgZGVsZXRlIHByb3BzLmZvcm1hdDtcclxuICAgICAgICAgICAgICBpZiAobGFiZWwgPT0gXCLmn6XnnItcIikge1xyXG4gICAgICAgICAgICAgICAgcHJvcHMuZGlzYWJsZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgaWYgKGl0ZW0ucnVsZXMgJiYgaXRlbS5ydWxlcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICBuZXdWYWxpZC5wdXNoKGl0ZW0ubmFtZSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIGlmIChpbmRleCArIDEgPT09IGZvcm1Qcm9wcy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMudmFsaWQgPSBuZXdWYWxpZDtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgICAgIDxDb2wgc3Bhbj17aXRlbS5zcGFuIHx8IDEyfSBrZXk9e2luZGV4fT5cclxuICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbVxyXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpdGVtLmxhYmVsfVxyXG4gICAgICAgICAgICAgICAgICAgIG5hbWU9e2l0ZW0ubmFtZX1cclxuICAgICAgICAgICAgICAgICAgICBydWxlcz17aXRlbS5ydWxlc31cclxuICAgICAgICAgICAgICAgICAgICBhbGxvd0NoYXJzPXthbGxvd0NoYXJzfVxyXG4gICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudE5hbWU9e2l0ZW0udHlwZSA/IGl0ZW0udHlwZSA6IFwiSW5wdXRcIn1cclxuICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIHtnZXROb2RlKGl0ZW0udHlwZSwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgLi4ucHJvcHMsXHJcbiAgICAgICAgICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxyXG4gICAgICAgICAgICAgICAgPC9Db2w+XHJcbiAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICA8L1Jvdz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9Gb3JtPlxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBkZWZhdWx0IEVkaXRvckZvcm07XHJcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsT0FBT0EsS0FBSyxJQUFJQyxhQUFhLFFBQVEsT0FBTztBQUM1QyxPQUFPQyxJQUFJLE1BQU0saUJBQWlCO0FBQ2xDLFNBQVNDLE9BQU8sRUFBRUMsT0FBTyxRQUFRLGFBQWE7QUFDOUMsT0FBT0MsT0FBTyxNQUFNLG9CQUFvQjtBQUN4QyxPQUFPQyxHQUFHLE1BQU0scUJBQXFCO0FBQ3JDLE9BQU9DLEdBQUcsTUFBTSxxQkFBcUI7QUFDckMsU0FBU0MsVUFBVSxRQUFRLG1CQUFtQjtBQUM5QyxPQUFPQyxNQUFNLE1BQU0sUUFBUTtBQUMzQixPQUFPQyxNQUFNLE1BQU0scUJBQXFCO0FBRXhDLE9BQU9DLE1BQU0sTUFBTSxRQUFRO0FBQzNCLE1BQU1DLFVBQVUsU0FBU1gsYUFBYSxDQUFNO0VBQUFZLFlBQUE7SUFBQSxTQUFBQyxTQUFBO0lBQUFDLGVBQUEsK0JBQ2hDZixLQUFLLENBQUNn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
|