nsc-react-component 2.1.18 → 2.2.0
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/datepick/index.js +6 -1
- package/lib/base/errorboundary/index.js +1 -2
- package/lib/base/form/Form.d.ts +8 -1
- package/lib/base/form/Form.js +166 -25
- package/lib/base/form/index.less +41 -0
- package/lib/base/input/Number.js +5 -2
- package/lib/base/table/index.js +1 -3
- package/lib/base/tree/index.js +1 -2
- package/lib/config.d.ts +2 -0
- package/lib/config.js +3 -2
- package/lib/page/BasePage/Form.d.ts +1 -1
- package/lib/page/BasePage/Form.js +61 -45
- package/lib/page/BasePage/index.d.ts +6 -2
- package/lib/page/BasePage/index.js +74 -38
- package/lib/utils.js +1 -3
- package/package.json +1 -1
|
@@ -73,10 +73,15 @@ var NSCDatePicker = /*#__PURE__*/function (_PureComponent) {
|
|
|
73
73
|
_createClass(NSCDatePicker, [{
|
|
74
74
|
key: "onChange",
|
|
75
75
|
value: function onChange(date, dateString) {
|
|
76
|
+
var onChange = this.props.onChange;
|
|
76
77
|
this.setState({
|
|
77
78
|
date: date,
|
|
78
79
|
dateString: dateString
|
|
79
80
|
});
|
|
81
|
+
|
|
82
|
+
if (onChange) {
|
|
83
|
+
onChange(date, dateString);
|
|
84
|
+
}
|
|
80
85
|
}
|
|
81
86
|
}, {
|
|
82
87
|
key: "getValue",
|
|
@@ -114,4 +119,4 @@ var NSCDatePicker = /*#__PURE__*/function (_PureComponent) {
|
|
|
114
119
|
_defineProperty(NSCDatePicker, "RangePicker", NscRangePicker);
|
|
115
120
|
|
|
116
121
|
export default NSCDatePicker;
|
|
117
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
122
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Jhc2UvZGF0ZXBpY2svaW5kZXgudHN4Il0sIm5hbWVzIjpbIlJlYWN0IiwiUHVyZUNvbXBvbmVudCIsIk5zY1JhbmdlUGlja2VyIiwibG9jYWxlIiwiTlNDRGF0ZVBpY2tlciIsImRhdGVTdHJpbmciLCJkYXRlIiwib25DaGFuZ2UiLCJwcm9wcyIsInNldFN0YXRlIiwic3RhdGUiLCJwaWNrZXIiLCJwYXJhbXMiLCJiaW5kIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBT0EsS0FBUCxJQUFnQkMsYUFBaEIsUUFBcUMsT0FBckM7QUFHQSxPQUFPQyxjQUFQLE1BQTJCLGVBQTNCO0FBQ0EsT0FBT0MsTUFBUCxNQUFtQixrQ0FBbkI7O0lBS01DLGE7Ozs7Ozs7Ozs7Ozs7Ozs7NERBRUk7QUFDTkMsTUFBQUEsVUFBVSxFQUFFLEVBRE47QUFFTkMsTUFBQUEsSUFBSSxFQUFFO0FBRkEsSzs7Ozs7OztXQUlSLGtCQUFTQSxJQUFULEVBQW9CRCxVQUFwQixFQUF3QztBQUN0QyxVQUFRRSxRQUFSLEdBQXFCLEtBQUtDLEtBQTFCLENBQVFELFFBQVI7QUFDQSxXQUFLRSxRQUFMLENBQWM7QUFDWkgsUUFBQUEsSUFBSSxFQUFFQSxJQURNO0FBRVpELFFBQUFBLFVBQVUsRUFBRUE7QUFGQSxPQUFkOztBQUlBLFVBQUlFLFFBQUosRUFBYztBQUNaQSxRQUFBQSxRQUFRLENBQUNELElBQUQsRUFBT0QsVUFBUCxDQUFSO0FBQ0Q7QUFDRjs7O1dBQ0Qsb0JBQVc7QUFDVCxhQUFPO0FBQ0xDLFFBQUFBLElBQUksRUFBRSxLQUFLSSxLQUFMLENBQVdKLElBRFo7QUFFTEQsUUFBQUEsVUFBVSxFQUFFLEtBQUtLLEtBQUwsQ0FBV0w7QUFGbEIsT0FBUDtBQUlEOzs7V0FDRCxrQkFBUztBQUNQLHdCQUF3QyxLQUFLRyxLQUE3QztBQUFBLFVBQVFHLE1BQVIsZUFBUUEsTUFBUjtBQUFBLFVBQWdCSixRQUFoQixlQUFnQkEsUUFBaEI7QUFBQSxVQUE2QkssTUFBN0I7O0FBQ0EsVUFBSUQsTUFBTSxJQUFJLE1BQWQsRUFBc0I7QUFDcEIsNEJBQU87QUFBWSxVQUFBLFFBQVEsRUFBRSxLQUFLSixRQUFMLENBQWNNLElBQWQsQ0FBbUIsSUFBbkI7QUFBdEIsV0FBb0RELE1BQXBELEVBQVA7QUFDRCxPQUZELE1BRU87QUFDTCw0QkFDRTtBQUNFLFVBQUEsTUFBTSxFQUFFRCxNQURWO0FBRUUsVUFBQSxRQUFRLEVBQUUsS0FBS0osUUFBTCxDQUFjTSxJQUFkLENBQW1CLElBQW5CLENBRlo7QUFHRSxVQUFBLE1BQU0sRUFBRVY7QUFIVixXQUlNUyxNQUpOLEVBREY7QUFRRDtBQUNGOzs7O0VBcEN5QlgsYTs7Z0JBQXRCRyxhLGlCQUNpQkYsYzs7QUFzQ3ZCLGVBQWVFLGFBQWYiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBARGVzY3JpcHR0aW9uOiDml6XmnJ/nu4Tku7ZcclxuICogQHZlcnNpb246XHJcbiAqIEBBdXRob3I6IHJ4emh1XHJcbiAqIEBEYXRlOiAyMDIxLTAzLTI2IDA4OjUyOjUyXHJcbiAqIEBMYXN0RWRpdG9yczogcnh6aHVcclxuICogQExhc3RFZGl0VGltZTogMjAyMS0wNC0xNCAyMTozOToyOVxyXG4gKi9cclxuaW1wb3J0IFJlYWN0LCB7IFB1cmVDb21wb25lbnQgfSBmcm9tIFwicmVhY3RcIjtcclxuXHJcbmltcG9ydCB7IERhdGVQaWNrZXIsIFRpbWVQaWNrZXIgfSBmcm9tIFwiYW50ZFwiO1xyXG5pbXBvcnQgTnNjUmFuZ2VQaWNrZXIgZnJvbSBcIi4vUmFuZ2VwaWNrZXJcIjtcclxuaW1wb3J0IGxvY2FsZSBmcm9tIFwiYW50ZC9lcy9kYXRlLXBpY2tlci9sb2NhbGUvemhfQ05cIjtcclxuaW50ZXJmYWNlIElEYXRlUGlja2VyUHJvcHMge1xyXG4gIFtwcm9wTmFtZTogc3RyaW5nXTogYW55O1xyXG59XHJcblxyXG5jbGFzcyBOU0NEYXRlUGlja2VyIGV4dGVuZHMgUHVyZUNvbXBvbmVudDxhbnk+IHtcclxuICBzdGF0aWMgUmFuZ2VQaWNrZXIgPSBOc2NSYW5nZVBpY2tlcjtcclxuICBzdGF0ZSA9IHtcclxuICAgIGRhdGVTdHJpbmc6IFwiXCIsXHJcbiAgICBkYXRlOiBudWxsLFxyXG4gIH07XHJcbiAgb25DaGFuZ2UoZGF0ZTogYW55LCBkYXRlU3RyaW5nOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IHsgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XHJcbiAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgZGF0ZTogZGF0ZSxcclxuICAgICAgZGF0ZVN0cmluZzogZGF0ZVN0cmluZyxcclxuICAgIH0pO1xyXG4gICAgaWYgKG9uQ2hhbmdlKSB7XHJcbiAgICAgIG9uQ2hhbmdlKGRhdGUsIGRhdGVTdHJpbmcpO1xyXG4gICAgfVxyXG4gIH1cclxuICBnZXRWYWx1ZSgpIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIGRhdGU6IHRoaXMuc3RhdGUuZGF0ZSxcclxuICAgICAgZGF0ZVN0cmluZzogdGhpcy5zdGF0ZS5kYXRlU3RyaW5nLFxyXG4gICAgfTtcclxuICB9XHJcbiAgcmVuZGVyKCkge1xyXG4gICAgY29uc3QgeyBwaWNrZXIsIG9uQ2hhbmdlLCAuLi5wYXJhbXMgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpZiAocGlja2VyID09IFwidGltZVwiKSB7XHJcbiAgICAgIHJldHVybiA8VGltZVBpY2tlciBvbkNoYW5nZT17dGhpcy5vbkNoYW5nZS5iaW5kKHRoaXMpfSB7Li4ucGFyYW1zfSAvPjtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgPERhdGVQaWNrZXJcclxuICAgICAgICAgIHBpY2tlcj17cGlja2VyfVxyXG4gICAgICAgICAgb25DaGFuZ2U9e3RoaXMub25DaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICAgIGxvY2FsZT17bG9jYWxlfVxyXG4gICAgICAgICAgey4uLnBhcmFtc31cclxuICAgICAgICAvPlxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGRlZmF1bHQgTlNDRGF0ZVBpY2tlcjtcclxuIl19
|
|
@@ -43,7 +43,6 @@ var ErrorBoundary = /*#__PURE__*/function (_Component) {
|
|
|
43
43
|
key: "componentDidCatch",
|
|
44
44
|
value: function componentDidCatch(error, errorInfo) {
|
|
45
45
|
// 上传至服务器
|
|
46
|
-
console.log("".concat(this.props.serviceName, "ErrorBoundary"), error);
|
|
47
46
|
this.setState({
|
|
48
47
|
hasError: true
|
|
49
48
|
});
|
|
@@ -66,4 +65,4 @@ var ErrorBoundary = /*#__PURE__*/function (_Component) {
|
|
|
66
65
|
}(Component);
|
|
67
66
|
|
|
68
67
|
export { ErrorBoundary as default };
|
|
69
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
68
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Jhc2UvZXJyb3Jib3VuZGFyeS9pbmRleC50c3giXSwibmFtZXMiOlsiUmVhY3QiLCJDb21wb25lbnQiLCJFcnJvckJvdW5kYXJ5IiwicHJvcHMiLCJzdGF0ZSIsImhhc0Vycm9yIiwiZXJyb3IiLCJlcnJvckluZm8iLCJzZXRTdGF0ZSIsImF1dG9Mb2dTZXJpY2UiLCJjaGlsZHJlbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU9BLEtBQVAsSUFBZ0JDLFNBQWhCLFFBQWlDLE9BQWpDOztJQU1xQkMsYTs7Ozs7QUFDbkIseUJBQVlDLEtBQVosRUFBd0I7QUFBQTs7QUFBQTs7QUFDdEIsOEJBQU1BLEtBQU47QUFDQSxVQUFLQyxLQUFMLEdBQWE7QUFBRUMsTUFBQUEsUUFBUSxFQUFFO0FBQVosS0FBYjtBQUZzQjtBQUd2Qjs7OztXQUNELDJCQUFrQkMsS0FBbEIsRUFBOEJDLFNBQTlCLEVBQThDO0FBQzVDO0FBQ0EsV0FBS0MsUUFBTCxDQUFjO0FBQ1pILFFBQUFBLFFBQVEsRUFBRTtBQURFLE9BQWQ7O0FBR0EsVUFBSSxLQUFLRixLQUFMLENBQVdNLGFBQWYsRUFBOEIsQ0FDN0I7QUFDRjs7O1dBRUQsa0JBQVM7QUFDUCxVQUFJLEtBQUtMLEtBQUwsQ0FBV0MsUUFBZixFQUF5QjtBQUN2QjtBQUNBLDRCQUFPLG1GQUFQO0FBQ0Q7O0FBQ0QsYUFBTyxLQUFLRixLQUFMLENBQVdPLFFBQWxCO0FBQ0Q7Ozs7RUFwQndDVCxTOztTQUF0QkMsYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBDb21wb25lbnQgfSBmcm9tIFwicmVhY3RcIjtcclxuaW50ZXJmYWNlIEVycm9yUHJvcHMge1xyXG4gIGF1dG9Mb2dTZXJpY2U/OiBib29sZWFuOyAvL+aYr+WQpuiHquWKqOS4iuS8oOacjeWKoeWZqFxyXG4gIHNlcnZpY2VOYW1lPzogc3RyaW5nOyAvL+acjeWKoeWQjeensFxyXG4gIHRlcm1pbmFsPzogc3RyaW5nOyAvL+WJjeerr+e7iOerr+exu+Wei1xyXG59XHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEVycm9yQm91bmRhcnkgZXh0ZW5kcyBDb21wb25lbnQ8RXJyb3JQcm9wcywgYW55PiB7XHJcbiAgY29uc3RydWN0b3IocHJvcHM6IGFueSkge1xyXG4gICAgc3VwZXIocHJvcHMpO1xyXG4gICAgdGhpcy5zdGF0ZSA9IHsgaGFzRXJyb3I6IGZhbHNlIH07XHJcbiAgfVxyXG4gIGNvbXBvbmVudERpZENhdGNoKGVycm9yOiBhbnksIGVycm9ySW5mbzogYW55KSB7XHJcbiAgICAvLyDkuIrkvKDoh7PmnI3liqHlmahcclxuICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICBoYXNFcnJvcjogdHJ1ZSxcclxuICAgIH0pO1xyXG4gICAgaWYgKHRoaXMucHJvcHMuYXV0b0xvZ1NlcmljZSkge1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVuZGVyKCkge1xyXG4gICAgaWYgKHRoaXMuc3RhdGUuaGFzRXJyb3IpIHtcclxuICAgICAgLy8g6Ieq5a6a5LmJ6ZmN57qn5ZCO55qEIFVJIOW5tua4suafk1xyXG4gICAgICByZXR1cm4gPGgxPumhtemdouWHuumUmeWVpu+8ge+8ge+8gTwvaDE+O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMucHJvcHMuY2hpbGRyZW47XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
package/lib/base/form/Form.d.ts
CHANGED
|
@@ -4,9 +4,12 @@ import { FormInstance } from "antd/lib/form";
|
|
|
4
4
|
interface IFormProps extends FormProps {
|
|
5
5
|
showModel?: "modal" | "drawer";
|
|
6
6
|
modalProps?: ModalProps;
|
|
7
|
-
drawerProps?: DrawerProps
|
|
7
|
+
drawerProps?: DrawerProps & {
|
|
8
|
+
onOk?: any;
|
|
9
|
+
};
|
|
8
10
|
url?: string;
|
|
9
11
|
encryptFields?: Array<String>;
|
|
12
|
+
changeValid?: boolean;
|
|
10
13
|
}
|
|
11
14
|
declare class NscForm extends PureComponent<IFormProps> {
|
|
12
15
|
formRef: React.RefObject<FormInstance<any>>;
|
|
@@ -14,6 +17,8 @@ declare class NscForm extends PureComponent<IFormProps> {
|
|
|
14
17
|
formVisible: boolean;
|
|
15
18
|
formModalProps: {};
|
|
16
19
|
formDrawerProps: {};
|
|
20
|
+
isChange: boolean;
|
|
21
|
+
expand: boolean;
|
|
17
22
|
};
|
|
18
23
|
constructor(props: any);
|
|
19
24
|
static getDerivedStateFromProps(nextProps: any, prevState: any): any;
|
|
@@ -32,12 +37,14 @@ declare class NscForm extends PureComponent<IFormProps> {
|
|
|
32
37
|
submit(): void;
|
|
33
38
|
onSubmit(url?: string, options?: any, callback?: (res?: any) => void, msg?: boolean): void;
|
|
34
39
|
validateFields(name: any): Promise<any>;
|
|
40
|
+
hide(e: any): void;
|
|
35
41
|
hideForm(resetValue?: boolean): void;
|
|
36
42
|
showForm(value?: any, resetValue?: boolean): void;
|
|
37
43
|
cloneElement(item: any, index?: number): string | React.DetailedReactHTMLElement<{
|
|
38
44
|
key: number;
|
|
39
45
|
children: any;
|
|
40
46
|
}, HTMLElement>;
|
|
47
|
+
onValuesChange(val: any, allVal: any): void;
|
|
41
48
|
renderPanel(newChildren: any, props: any): JSX.Element;
|
|
42
49
|
render(): JSX.Element;
|
|
43
50
|
}
|
package/lib/base/form/Form.js
CHANGED
|
@@ -2,10 +2,10 @@ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "functi
|
|
|
2
2
|
|
|
3
3
|
import "antd/es/drawer/style/css";
|
|
4
4
|
import _Drawer from "antd/es/drawer";
|
|
5
|
-
import "antd/es/modal/style/css";
|
|
6
|
-
import _Modal from "antd/es/modal";
|
|
7
5
|
import "antd/es/form/style/css";
|
|
8
6
|
import _Form from "antd/es/form";
|
|
7
|
+
import "antd/es/modal/style/css";
|
|
8
|
+
import _Modal from "antd/es/modal";
|
|
9
9
|
import "antd/es/message/style/css";
|
|
10
10
|
import _message from "antd/es/message";
|
|
11
11
|
var _excluded = ["data", "encryptFields"];
|
|
@@ -53,6 +53,10 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
|
|
|
53
53
|
import React, { PureComponent } from "react";
|
|
54
54
|
import { request } from "@bj-nsc/msn/lib/utils";
|
|
55
55
|
import omit from "omit.js";
|
|
56
|
+
import Button from "../button";
|
|
57
|
+
import styles from "./index.less";
|
|
58
|
+
import { getLess } from "../../utils";
|
|
59
|
+
import { PlusCircleOutlined, CloseCircleOutlined, CloseOutlined, ExpandOutlined, CompressOutlined } from "@ant-design/icons";
|
|
56
60
|
|
|
57
61
|
var NscForm = /*#__PURE__*/function (_PureComponent) {
|
|
58
62
|
_inherits(NscForm, _PureComponent);
|
|
@@ -71,7 +75,9 @@ var NscForm = /*#__PURE__*/function (_PureComponent) {
|
|
|
71
75
|
_defineProperty(_assertThisInitialized(_this2), "state", {
|
|
72
76
|
formVisible: false,
|
|
73
77
|
formModalProps: {},
|
|
74
|
-
formDrawerProps: {}
|
|
78
|
+
formDrawerProps: {},
|
|
79
|
+
isChange: false,
|
|
80
|
+
expand: false
|
|
75
81
|
});
|
|
76
82
|
|
|
77
83
|
return _this2;
|
|
@@ -248,6 +254,50 @@ var NscForm = /*#__PURE__*/function (_PureComponent) {
|
|
|
248
254
|
value: function validateFields(name) {
|
|
249
255
|
return this.formRef.current.validateFields(name);
|
|
250
256
|
}
|
|
257
|
+
}, {
|
|
258
|
+
key: "hide",
|
|
259
|
+
value: function hide(e) {
|
|
260
|
+
var isChange = this.state.isChange;
|
|
261
|
+
var _this$props2 = this.props,
|
|
262
|
+
_this$props2$changeVa = _this$props2.changeValid,
|
|
263
|
+
changeValid = _this$props2$changeVa === void 0 ? true : _this$props2$changeVa,
|
|
264
|
+
showModel = _this$props2.showModel,
|
|
265
|
+
_this$props2$modalPro = _this$props2.modalProps,
|
|
266
|
+
modalProps = _this$props2$modalPro === void 0 ? {} : _this$props2$modalPro,
|
|
267
|
+
_this$props2$drawerPr = _this$props2.drawerProps,
|
|
268
|
+
drawerProps = _this$props2$drawerPr === void 0 ? {} : _this$props2$drawerPr;
|
|
269
|
+
|
|
270
|
+
var _this = this;
|
|
271
|
+
|
|
272
|
+
var onCancel = modalProps.onCancel;
|
|
273
|
+
var onClose = drawerProps.onClose;
|
|
274
|
+
|
|
275
|
+
if (changeValid && isChange) {
|
|
276
|
+
_Modal.confirm({
|
|
277
|
+
title: "当前记录已修改尚未保存,确定要放弃修改吗?",
|
|
278
|
+
cancelText: "取消",
|
|
279
|
+
okText: "确定",
|
|
280
|
+
centered: true,
|
|
281
|
+
onOk: function onOk() {
|
|
282
|
+
if (showModel == "drawer" && onClose) {
|
|
283
|
+
onClose(e);
|
|
284
|
+
} else if (showModel == "modal" && onCancel) {
|
|
285
|
+
onCancel(e);
|
|
286
|
+
} else {
|
|
287
|
+
_this.hideForm();
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
});
|
|
291
|
+
} else {
|
|
292
|
+
if (showModel == "drawer" && onClose) {
|
|
293
|
+
onClose(e);
|
|
294
|
+
} else if (showModel == "modal" && onCancel) {
|
|
295
|
+
onCancel(e);
|
|
296
|
+
} else {
|
|
297
|
+
_this.hideForm();
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
}
|
|
251
301
|
}, {
|
|
252
302
|
key: "hideForm",
|
|
253
303
|
value: function hideForm() {
|
|
@@ -255,7 +305,8 @@ var NscForm = /*#__PURE__*/function (_PureComponent) {
|
|
|
255
305
|
|
|
256
306
|
var resetValue = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
257
307
|
this.setState({
|
|
258
|
-
formVisible: false
|
|
308
|
+
formVisible: false,
|
|
309
|
+
isChange: false
|
|
259
310
|
}, function () {
|
|
260
311
|
if (resetValue) {
|
|
261
312
|
var _this3$formRef$curren;
|
|
@@ -271,7 +322,8 @@ var NscForm = /*#__PURE__*/function (_PureComponent) {
|
|
|
271
322
|
|
|
272
323
|
var resetValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
273
324
|
this.setState({
|
|
274
|
-
formVisible: true
|
|
325
|
+
formVisible: true,
|
|
326
|
+
isChange: false
|
|
275
327
|
}, function () {
|
|
276
328
|
if (value) {
|
|
277
329
|
var _this4$formRef$curren;
|
|
@@ -311,13 +363,28 @@ var NscForm = /*#__PURE__*/function (_PureComponent) {
|
|
|
311
363
|
return null;
|
|
312
364
|
}
|
|
313
365
|
}
|
|
366
|
+
}, {
|
|
367
|
+
key: "onValuesChange",
|
|
368
|
+
value: function onValuesChange(val, allVal) {
|
|
369
|
+
var onValuesChange = this.props.onValuesChange;
|
|
370
|
+
this.setState({
|
|
371
|
+
isChange: true
|
|
372
|
+
});
|
|
373
|
+
onValuesChange && onValuesChange(val, allVal);
|
|
374
|
+
}
|
|
314
375
|
}, {
|
|
315
376
|
key: "renderPanel",
|
|
316
377
|
value: function renderPanel(newChildren, props) {
|
|
317
|
-
var
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
378
|
+
var _this5 = this;
|
|
379
|
+
|
|
380
|
+
var _this$props3 = this.props,
|
|
381
|
+
showModel = _this$props3.showModel,
|
|
382
|
+
_this$props3$drawerPr = _this$props3.drawerProps,
|
|
383
|
+
drawerProps = _this$props3$drawerPr === void 0 ? {} : _this$props3$drawerPr,
|
|
384
|
+
_this$props3$modalPro = _this$props3.modalProps,
|
|
385
|
+
modalProps = _this$props3$modalPro === void 0 ? {} : _this$props3$modalPro,
|
|
386
|
+
_this$props3$changeVa = _this$props3.changeValid,
|
|
387
|
+
changeValid = _this$props3$changeVa === void 0 ? true : _this$props3$changeVa;
|
|
321
388
|
var formVisible = this.state.formVisible;
|
|
322
389
|
var layout = {
|
|
323
390
|
labelCol: {
|
|
@@ -327,41 +394,113 @@ var NscForm = /*#__PURE__*/function (_PureComponent) {
|
|
|
327
394
|
span: 20
|
|
328
395
|
}
|
|
329
396
|
};
|
|
397
|
+
var orgtitle = showModel == "modal" ? modalProps.title : drawerProps.title;
|
|
398
|
+
var closable = showModel == "modal" ? modalProps.closable : drawerProps.closable;
|
|
399
|
+
var title = /*#__PURE__*/React.createElement("div", {
|
|
400
|
+
className: getLess(styles, "title")
|
|
401
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
402
|
+
className: getLess(styles, "icons")
|
|
403
|
+
}, !this.state.expand && /*#__PURE__*/React.createElement("div", {
|
|
404
|
+
onClick: function onClick() {
|
|
405
|
+
_this5.setState({
|
|
406
|
+
expand: true
|
|
407
|
+
});
|
|
408
|
+
},
|
|
409
|
+
className: getLess(styles, "icon")
|
|
410
|
+
}, /*#__PURE__*/React.createElement(ExpandOutlined, null)), this.state.expand && /*#__PURE__*/React.createElement("div", {
|
|
411
|
+
onClick: function onClick() {
|
|
412
|
+
_this5.setState({
|
|
413
|
+
expand: false
|
|
414
|
+
});
|
|
415
|
+
},
|
|
416
|
+
className: getLess(styles, "icon")
|
|
417
|
+
}, /*#__PURE__*/React.createElement(CompressOutlined, null)), closable !== false && /*#__PURE__*/React.createElement("div", {
|
|
418
|
+
onClick: this.hide.bind(this),
|
|
419
|
+
className: getLess(styles, "icon"),
|
|
420
|
+
style: {
|
|
421
|
+
marginRight: 0
|
|
422
|
+
}
|
|
423
|
+
}, /*#__PURE__*/React.createElement(CloseOutlined, null))), /*#__PURE__*/React.createElement("div", {
|
|
424
|
+
className: getLess(styles, "title-content")
|
|
425
|
+
}, orgtitle));
|
|
426
|
+
var footer = /*#__PURE__*/React.createElement("div", {
|
|
427
|
+
className: getLess(styles, "footer")
|
|
428
|
+
}, /*#__PURE__*/React.createElement(Button, {
|
|
429
|
+
type: "primary",
|
|
430
|
+
onClick: function onClick() {
|
|
431
|
+
var _this5$formRef$curren;
|
|
432
|
+
|
|
433
|
+
var formValue = (_this5$formRef$curren = _this5.formRef.current) === null || _this5$formRef$curren === void 0 ? void 0 : _this5$formRef$curren.getFieldsValue();
|
|
434
|
+
|
|
435
|
+
if (showModel == "modal") {
|
|
436
|
+
modalProps.onOk && modalProps.onOk(formValue);
|
|
437
|
+
} else {
|
|
438
|
+
drawerProps.onOk && drawerProps.onOk(formValue);
|
|
439
|
+
}
|
|
440
|
+
},
|
|
441
|
+
icon: /*#__PURE__*/React.createElement(PlusCircleOutlined, null)
|
|
442
|
+
}, "\u4FDD\u5B58"), /*#__PURE__*/React.createElement(Button, {
|
|
443
|
+
onClick: this.hide.bind(this),
|
|
444
|
+
className: getLess(styles, "button-margin"),
|
|
445
|
+
icon: /*#__PURE__*/React.createElement(CloseCircleOutlined, null)
|
|
446
|
+
}, "\u53D6\u6D88"));
|
|
330
447
|
|
|
331
448
|
if (showModel && showModel == "modal") {
|
|
332
449
|
var newModalProps = omit(modalProps, ["visible"]);
|
|
333
450
|
newModalProps = _objectSpread({
|
|
334
|
-
centered: true
|
|
451
|
+
centered: true,
|
|
452
|
+
footer: footer
|
|
335
453
|
}, newModalProps);
|
|
336
454
|
return /*#__PURE__*/React.createElement(_Modal, _extends({
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
}, newModalProps
|
|
455
|
+
visible: formVisible,
|
|
456
|
+
footer: footer
|
|
457
|
+
}, newModalProps, {
|
|
458
|
+
onCancel: this.hide.bind(this),
|
|
459
|
+
maskClosable: !this.state.isChange,
|
|
460
|
+
title: title,
|
|
461
|
+
closable: false,
|
|
462
|
+
className: this.state.expand ? getLess(styles, "allsreen") : "",
|
|
463
|
+
width: this.state.expand ? "100vw" : newModalProps.width,
|
|
464
|
+
style: {
|
|
465
|
+
maxWidth: "100vw"
|
|
466
|
+
}
|
|
467
|
+
}), /*#__PURE__*/React.createElement(_Form, _extends({
|
|
340
468
|
ref: this.formRef
|
|
341
469
|
}, layout, props, {
|
|
470
|
+
onValuesChange: this.onValuesChange.bind(this),
|
|
342
471
|
preserve: false
|
|
343
472
|
})));
|
|
344
473
|
} else if (showModel && showModel == "drawer") {
|
|
345
|
-
var newDrawerProps = omit(drawerProps, ["visible"]);
|
|
474
|
+
var newDrawerProps = omit(drawerProps, ["visible", "onOk"]);
|
|
346
475
|
return /*#__PURE__*/React.createElement(_Drawer, _extends({
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
}, newDrawerProps
|
|
476
|
+
visible: formVisible,
|
|
477
|
+
footer: footer
|
|
478
|
+
}, newDrawerProps, {
|
|
479
|
+
onClose: this.hide.bind(this),
|
|
480
|
+
maskClosable: !this.state.isChange,
|
|
481
|
+
title: title,
|
|
482
|
+
closable: false,
|
|
483
|
+
width: this.state.expand ? "100vw" : newDrawerProps.width
|
|
484
|
+
}), /*#__PURE__*/React.createElement(_Form, _extends({
|
|
350
485
|
ref: this.formRef
|
|
351
|
-
}, layout, props
|
|
486
|
+
}, layout, props, {
|
|
487
|
+
onValuesChange: this.onValuesChange.bind(this)
|
|
488
|
+
})));
|
|
352
489
|
} else {
|
|
353
490
|
return /*#__PURE__*/React.createElement(_Form, _extends({
|
|
354
491
|
ref: this.formRef
|
|
355
|
-
}, layout, props
|
|
492
|
+
}, layout, props, {
|
|
493
|
+
onValuesChange: this.onValuesChange.bind(this)
|
|
494
|
+
}));
|
|
356
495
|
}
|
|
357
496
|
}
|
|
358
497
|
}, {
|
|
359
498
|
key: "render",
|
|
360
499
|
value: function render() {
|
|
361
500
|
var _this = this,
|
|
362
|
-
_this$
|
|
363
|
-
children = _this$
|
|
364
|
-
showModel = _this$
|
|
501
|
+
_this$props4 = this.props,
|
|
502
|
+
children = _this$props4.children,
|
|
503
|
+
showModel = _this$props4.showModel; // const newChildren = React.Children.map(children, function (child, index) {
|
|
365
504
|
// return _this.cloneElement(child, index);
|
|
366
505
|
// });
|
|
367
506
|
|
|
@@ -379,7 +518,8 @@ var NscForm = /*#__PURE__*/function (_PureComponent) {
|
|
|
379
518
|
formDrawerProps = prevState.formDrawerProps;
|
|
380
519
|
|
|
381
520
|
if (showModel == "modal") {
|
|
382
|
-
|
|
521
|
+
// JSON.stringify(formModalProps) !== JSON.stringify(modalProps)
|
|
522
|
+
if (!Object.is(formModalProps, modalProps)) {
|
|
383
523
|
var newState = {
|
|
384
524
|
formDrawerProps: modalProps
|
|
385
525
|
};
|
|
@@ -391,7 +531,8 @@ var NscForm = /*#__PURE__*/function (_PureComponent) {
|
|
|
391
531
|
return newState;
|
|
392
532
|
}
|
|
393
533
|
} else if (showModel == "drawer") {
|
|
394
|
-
|
|
534
|
+
// JSON.stringify(formDrawerProps) !== JSON.stringify(drawerProps)
|
|
535
|
+
if (!Object.is(formDrawerProps, drawerProps)) {
|
|
395
536
|
var _newState = {
|
|
396
537
|
formDrawerProps: drawerProps
|
|
397
538
|
};
|
|
@@ -412,4 +553,4 @@ var NscForm = /*#__PURE__*/function (_PureComponent) {
|
|
|
412
553
|
}(PureComponent);
|
|
413
554
|
|
|
414
555
|
export default NscForm;
|
|
415
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Jhc2UvZm9ybS9Gb3JtLnRzeCJdLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJyZXF1ZXN0Iiwib21pdCIsIk5zY0Zvcm0iLCJwcm9wcyIsImNyZWF0ZVJlZiIsImZvcm1WaXNpYmxlIiwiZm9ybU1vZGFsUHJvcHMiLCJmb3JtRHJhd2VyUHJvcHMiLCJuYW1lIiwiZm9ybVJlZiIsImN1cnJlbnQiLCJnZXRGaWVsZEVycm9yIiwiZ2V0RmllbGRJbnN0YW5jZSIsImdldEZpZWxkc0Vycm9yIiwiZ2V0RmllbGRzVmFsdWUiLCJnZXRGaWVsZFZhbHVlIiwiaXNGaWVsZHNUb3VjaGVkIiwiaXNGaWVsZFRvdWNoZWQiLCJpc0ZpZWxkVmFsaWRhdGluZyIsInJlc2V0RmllbGRzIiwib3B0aW9ucyIsInNjcm9sbFRvRmllbGQiLCJmaWxkcyIsInNldEZpZWxkcyIsInZhbHVlcyIsInNldEZpZWxkc1ZhbHVlIiwic3VibWl0IiwidXJsIiwiY2FsbGJhY2siLCJtc2ciLCJwcm9wc1VybCIsImVuY3J5cHRGaWVsZHMiLCJlbmNyeXB0UHJvcHBzIiwiRXJyb3IiLCJtZXRob2QiLCJyZXF1ZXN0VXJsIiwicmVxdWVzdERhdGEiLCJyZXF1ZXN0RW5jcnlwdCIsInJlcXVlc3RQYXJhbSIsImRhdGEiLCJwYXJhbXMiLCJ0b0xvd2VyQ2FzZSIsInRoZW4iLCJyZXMiLCJjb2RlIiwic3VjY2VzcyIsImVycm9yIiwiY2F0Y2giLCJjb25zb2xlIiwibG9nIiwidmFsaWRhdGVGaWVsZHMiLCJyZXNldFZhbHVlIiwic2V0U3RhdGUiLCJ2YWx1ZSIsIml0ZW0iLCJpbmRleCIsIl90aGlzIiwia2V5IiwiY2hpbGRyZW4iLCJBcnJheSIsImlzQXJyYXkiLCJDaGlsZHJlbiIsIm1hcCIsImNoaWxkIiwiY2xvbmVFbGVtZW50IiwiZSIsIm5ld0NoaWxkcmVuIiwic2hvd01vZGVsIiwiZHJhd2VyUHJvcHMiLCJtb2RhbFByb3BzIiwic3RhdGUiLCJsYXlvdXQiLCJsYWJlbENvbCIsInNwYW4iLCJ3cmFwcGVyQ29sIiwibmV3TW9kYWxQcm9wcyIsImNlbnRlcmVkIiwiaGlkZUZvcm0iLCJiaW5kIiwibmV3RHJhd2VyUHJvcHMiLCJyZW5kZXJQYW5lbCIsIm5leHRQcm9wcyIsInByZXZTdGF0ZSIsIkpTT04iLCJzdHJpbmdpZnkiLCJuZXdTdGF0ZSIsInZpc2libGUiLCJ1bmRlZmluZWQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU9BLEtBQVAsSUFBZ0JDLGFBQWhCLFFBQXFDLE9BQXJDO0FBV0EsU0FBU0MsT0FBVCxRQUF3Qix1QkFBeEI7QUFDQSxPQUFPQyxJQUFQLE1BQWlCLFNBQWpCOztJQVVNQyxPOzs7OztBQVFKLG1CQUFZQyxLQUFaLEVBQW1CO0FBQUE7O0FBQUE7O0FBQ2pCLCtCQUFNQSxLQUFOOztBQURpQiw0RUFQVEwsS0FBSyxDQUFDTSxTQUFOLEVBT1M7O0FBQUEsNkRBTlg7QUFDTkMsTUFBQUEsV0FBVyxFQUFFLEtBRFA7QUFFTkMsTUFBQUEsY0FBYyxFQUFFLEVBRlY7QUFHTkMsTUFBQUEsZUFBZSxFQUFFO0FBSFgsS0FNVzs7QUFBQTtBQUVsQjs7OztXQWdDRDtBQUNBLDJCQUFjQyxJQUFkLEVBQW9CO0FBQUE7O0FBQ2xCLHNDQUFPLEtBQUtDLE9BQUwsQ0FBYUMsT0FBcEIsMERBQU8sc0JBQXNCQyxhQUF0QixDQUFvQ0gsSUFBcEMsQ0FBUDtBQUNELEssQ0FFRDs7OztXQUNBLDBCQUFpQkEsSUFBakIsRUFBdUI7QUFBQTs7QUFDckIsdUNBQU8sS0FBS0MsT0FBTCxDQUFhQyxPQUFwQiwyREFBTyx1QkFBc0JFLGdCQUF0QixDQUF1Q0osSUFBdkMsQ0FBUDtBQUNELEssQ0FFRDs7OztXQUNBLDBCQUFpQjtBQUFBOztBQUNmLHVDQUFPLEtBQUtDLE9BQUwsQ0FBYUMsT0FB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QUFlaEIsV0FBZixDQUF4QyxFQUFxRTtBQUNuRSxjQUFJaUIsU0FBUSxHQUFHO0FBQ2I5RSxZQUFBQSxlQUFlLEVBQUU2RDtBQURKLFdBQWY7O0FBR0EsY0FDRSxDQUFBQSxXQUFXLFNBQVgsSUFBQUEsV0FBVyxXQUFYLFlBQUFBLFdBQVcsQ0FBRWtCLE9BQWIsTUFBeUIsSUFBekIsSUFDQSxDQUFBbEIsV0FBVyxTQUFYLElBQUFBLFdBQVcsV0FBWCxZQUFBQSxXQUFXLENBQUVrQixPQUFiLE1BQXlCQyxTQUYzQixFQUdFO0FBQ0FGLFlBQUFBLFNBQVEsQ0FBQ2hGLFdBQVQsR0FBdUIrRCxXQUF2QixhQUF1QkEsV0FBdkIsdUJBQXVCQSxXQUFXLENBQUVrQixPQUFwQztBQUNEOztBQUNELGlCQUFPRCxTQUFQO0FBQ0Q7QUFDRjs7QUFDRCxhQUFPLElBQVA7QUFDRDs7OztFQXhDbUJ0RixhOztBQXFRdEIsZUFBZUcsT0FBZiIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIEBEZXNjcmlwdHRpb2466KGo5Y2V57uE5Lu2XHJcbiAqIEB2ZXJzaW9uOlxyXG4gKiBAQXV0aG9yOiByeHpodVxyXG4gKiBARGF0ZTogMjAyMS0wNC0wOSAwOToxODozNFxyXG4gKiBATGFzdEVkaXRvcnM6IHJ4emh1XHJcbiAqIEBMYXN0RWRpdFRpbWU6IDIwMjEtMDQtMjMgMTU6MjM6NTRcclxuICovXHJcbmltcG9ydCBSZWFjdCwgeyBQdXJlQ29tcG9uZW50IH0gZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCB7XHJcbiAgRm9ybSxcclxuICBGb3JtUHJvcHMsXHJcbiAgTW9kYWwsXHJcbiAgRHJhd2VyLFxyXG4gIE1vZGFsUHJvcHMsXHJcbiAgRHJhd2VyUHJvcHMsXHJcbiAgbWVzc2FnZSxcclxufSBmcm9tIFwiYW50ZFwiO1xyXG5pbXBvcnQgeyBGb3JtSW5zdGFuY2UgfSBmcm9tIFwiYW50ZC9saWIvZm9ybVwiO1xyXG5pbXBvcnQgeyByZXF1ZXN0IH0gZnJvbSBcIkBiai1uc2MvbXNuL2xpYi91dGlsc1wiO1xyXG5pbXBvcnQgb21pdCBmcm9tIFwib21pdC5qc1wiO1xyXG5cclxuaW50ZXJmYWNlIElGb3JtUHJvcHMgZXh0ZW5kcyBGb3JtUHJvcHMge1xyXG4gIHNob3dNb2RlbD86IFwibW9kYWxcIiB8IFwiZHJhd2VyXCI7XHJcbiAgbW9kYWxQcm9wcz86IE1vZGFsUHJvcHM7XHJcbiAgZHJhd2VyUHJvcHM/OiBEcmF3ZXJQcm9wcztcclxuICB1cmw/OiBzdHJpbmc7XHJcbiAgZW5jcnlwdEZpZWxkcz86IEFycmF5PFN0cmluZz47XHJcbn1cclxuXHJcbmNsYXNzIE5zY0Zvcm0gZXh0ZW5kcyBQdXJlQ29tcG9uZW50PElGb3JtUHJvcHM+IHtcclxuICBmb3JtUmVmID0gUmVhY3QuY3JlYXRlUmVmPEZvcm1JbnN0YW5jZT4oKTtcclxuICBzdGF0ZSA9IHtcclxuICAgIGZvcm1WaXNpYmxlOiBmYWxzZSxcclxuICAgIGZvcm1Nb2RhbFByb3BzOiB7fSxcclxuICAgIGZvcm1EcmF3ZXJQcm9wczoge30sXHJcbiAgfTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJvcHMpIHtcclxuICAgIHN1cGVyKHByb3BzKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBnZXREZXJpdmVkU3RhdGVGcm9tUHJvcHMobmV4dFByb3BzLCBwcmV2U3RhdGUpIHtcclxuICAgIGNvbnN0IHsgbW9kYWxQcm9wcywgZHJhd2VyUHJvcHMsIHNob3dNb2RlbCB9ID0gbmV4dFByb3BzO1xyXG4gICAgY29uc3QgeyBmb3JtTW9kYWxQcm9wcywgZm9ybURyYXdlclByb3BzIH0gPSBwcmV2U3RhdGU7XHJcbiAgICBpZiAoc2hvd01vZGVsID09IFwibW9kYWxcIikge1xyXG4gICAgICBpZiAoSlNPTi5zdHJpbmdpZnkoZm9ybU1vZGFsUHJvcHMpICE9PSBKU09OLnN0cmluZ2lmeShtb2RhbFByb3BzKSkge1xyXG4gICAgICAgIGxldCBuZXdTdGF0ZSA9IHtcclxuICAgICAgICAgIGZvcm1EcmF3ZXJQcm9wczogbW9kYWxQcm9wcyxcclxuICAgICAgICB9IGFzIGFueTtcclxuICAgICAgICBpZiAobW9kYWxQcm9wcz8udmlzaWJsZSAhPT0gbnVsbCAmJiBtb2RhbFByb3BzPy52aXNpYmxlICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgIG5ld1N0YXRlLmZvcm1WaXNpYmxlID0gbW9kYWxQcm9wcz8udmlzaWJsZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG5ld1N0YXRlO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKHNob3dNb2RlbCA9PSBcImRyYXdlclwiKSB7XHJcbiAgICAgIGlmIChKU09OLnN0cmluZ2lmeShmb3JtRHJhd2VyUHJvcHMpICE9PSBKU09OLnN0cmluZ2lmeShkcmF3ZXJQcm9wcykpIHtcclxuICAgICAgICBsZXQgbmV3U3RhdGUgPSB7XHJcbiAgICAgICAgICBmb3JtRHJhd2VyUHJvcHM6IGRyYXdlclByb3BzLFxyXG4gICAgICAgIH0gYXMgYW55O1xyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgIGRyYXdlclByb3BzPy52aXNpYmxlICE9PSBudWxsICYmXHJcbiAgICAgICAgICBkcmF3ZXJQcm9wcz8udmlzaWJsZSAhPT0gdW5kZWZpbmVkXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICBuZXdTdGF0ZS5mb3JtVmlzaWJsZSA9IGRyYXdlclByb3BzPy52aXNpYmxlO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbmV3U3RhdGU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgLy/ojrflj5blr7nlupTlrZfmrrXlkI3nmoTplJnor6/kv6Hmga9cclxuICBnZXRGaWVsZEVycm9yKG5hbWUpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1SZWYuY3VycmVudD8uZ2V0RmllbGRFcnJvcihuYW1lKTtcclxuICB9XHJcblxyXG4gIC8v6I635Y+W5a+55bqU5a2X5q615a6e5L6LXHJcbiAgZ2V0RmllbGRJbnN0YW5jZShuYW1lKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmdldEZpZWxkSW5zdGFuY2UobmFtZSk7XHJcbiAgfVxyXG5cclxuICAvL+iOt+WPluS4gOe7hOWtl+auteWQjeWvueW6lOeahOmUmeivr+S/oeaBr++8jOi/lOWbnuS4uuaVsOe7hOW9ouW8j1xyXG4gIGdldEZpZWxkc0Vycm9yKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5nZXRGaWVsZHNFcnJvcigpO1xyXG4gIH1cclxuXHJcbiAgLy/ojrflj5bkuIDnu4TlrZfmrrXlkI3lr7nlupTnmoTlgLzvvIzkvJrmjInnhaflr7nlupTnu5PmnoTov5Tlm55cclxuICBnZXRGaWVsZHNWYWx1ZSgpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1SZWYuY3VycmVudD8uZ2V0RmllbGRzVmFsdWUoKTtcclxuICB9XHJcblxyXG4gIC8v6I635Y+W5a+55bqU5a2X5q615ZCN55qE5YC8XHJcbiAgZ2V0RmllbGRWYWx1ZShuYW1lKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmdldEZpZWxkVmFsdWUobmFtZSk7XHJcbiAgfVxyXG5cclxuICAvL+ajgOafpeS4gOe7hOWtl+auteaYr+WQpuiiq+eUqOaIt+aTjeS9nOi/h1xyXG4gIGlzRmllbGRzVG91Y2hlZCgpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1SZWYuY3VycmVudD8uaXNGaWVsZHNUb3VjaGVkKCk7XHJcbiAgfVxyXG5cclxuICAvL+ajgOafpeWvueW6lOWtl+auteaYr+WQpuiiq+eUqOaIt+aTjeS9nOi/h1xyXG4gIGlzRmllbGRUb3VjaGVkKG5hbWUpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1SZWYuY3VycmVudD8uaXNGaWVsZFRvdWNoZWQobmFtZSk7XHJcbiAgfVxyXG5cclxuICAvL+ajgOafpeS4gOe7hOWtl+auteaYr+WQpuato+WcqOagoemqjFxyXG4gIGlzRmllbGRWYWxpZGF0aW5nKG5hbWUpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1SZWYuY3VycmVudD8uaXNGaWVsZFZhbGlkYXRpbmcobmFtZSk7XHJcbiAgfVxyXG5cclxuICAvL+mHjee9ruS4gOe7hOWtl+auteWIsFxyXG4gIHJlc2V0RmllbGRzKCkge1xyXG4gICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnJlc2V0RmllbGRzKCk7XHJcbiAgfVxyXG5cclxuICBzY3JvbGxUb0ZpZWxkKG5hbWUsIG9wdGlvbnMpIHtcclxuICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5zY3JvbGxUb0ZpZWxkKG5hbWUsIG9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgc2V0RmllbGRzKGZpbGRzKSB7XHJcbiAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8uc2V0RmllbGRzKGZpbGRzKTtcclxuICB9XHJcblxyXG4gIHNldEZpZWxkc1ZhbHVlKHZhbHVlcykge1xyXG4gICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnNldEZpZWxkc1ZhbHVlKHZhbHVlcyk7XHJcbiAgfVxyXG5cclxuICBzdWJtaXQoKSB7XHJcbiAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8uc3VibWl0KCk7XHJcbiAgfVxyXG5cclxuICBvblN1Ym1pdChcclxuICAgIHVybD86IHN0cmluZyxcclxuICAgIG9wdGlvbnM/OiBhbnksXHJcbiAgICBjYWxsYmFjaz86IChyZXM/OiBhbnkpID0+IHZvaWQsXHJcbiAgICBtc2c/OiBib29sZWFuXHJcbiAgKSB7XHJcbiAgICBjb25zdCB7IHVybDogcHJvcHNVcmwsIGVuY3J5cHRGaWVsZHM6IGVuY3J5cHRQcm9wcHMgPSBbXSB9ID0gdGhpcy5wcm9wcztcclxuICAgIGlmICghdXJsICYmICFwcm9wc1VybCkge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCLmsqHmnInkuIrkvKDnmoR1cmwhXCIpO1xyXG4gICAgfVxyXG4gICAgY29uc3QgeyBtZXRob2QgPSBcInBvc3RcIiB9ID0gb3B0aW9ucztcclxuICAgIGxldCByZXF1ZXN0VXJsID0gdXJsID8gdXJsIDogcHJvcHNVcmw7XHJcbiAgICBsZXQgcmVxdWVzdERhdGEgPSB0aGlzLmZvcm1SZWYuY3VycmVudC5nZXRGaWVsZHNWYWx1ZSgpO1xyXG4gICAgbGV0IHJlcXVlc3RFbmNyeXB0ID0gZW5jcnlwdFByb3BwcztcclxuICAgIGxldCByZXF1ZXN0UGFyYW0gPSB7IG1ldGhvZDogbWV0aG9kLCBkYXRhOiByZXF1ZXN0RGF0YSB9IGFzIHsgZGF0YTogYW55IH07XHJcbiAgICBpZiAob3B0aW9ucykge1xyXG4gICAgICBjb25zdCB7IGRhdGEsIGVuY3J5cHRGaWVsZHMsIC4uLnBhcmFtcyB9ID0gb3B0aW9ucztcclxuICAgICAgcmVxdWVzdFBhcmFtID0geyAuLi5yZXF1ZXN0UGFyYW0sIC4uLnBhcmFtcyB9O1xyXG4gICAgICBpZiAoZGF0YSkge1xyXG4gICAgICAgIGRlbGV0ZSByZXF1ZXN0UGFyYW0uZGF0YTtcclxuICAgICAgICBpZiAobWV0aG9kLnRvTG93ZXJDYXNlKCkgPT0gXCJnZXRcIikge1xyXG4gICAgICAgICAgcmVxdWVzdFBhcmFtID0geyAuLi5yZXF1ZXN0UGFyYW0sIC4uLnBhcmFtcywgcGFyYW1zOiBkYXRhIH07XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJlcXVlc3RQYXJhbSA9IHsgLi4ucmVxdWVzdFBhcmFtLCAuLi5wYXJhbXMsIGRhdGE6IGRhdGEgfTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGVuY3J5cHRGaWVsZHMpIHtcclxuICAgICAgICByZXF1ZXN0RW5jcnlwdCA9IGVuY3J5cHRGaWVsZHM7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXF1ZXN0KHJlcXVlc3RVcmwsIHtcclxuICAgICAgLi4ucmVxdWVzdFBhcmFtLFxyXG4gICAgICBlbmNyeXB0RmllbGRzOiByZXF1ZXN0RW5jcnlwdCxcclxuICAgIH0pXHJcbiAgICAgIC50aGVuKGZ1bmN0aW9uIChyZXM6IGFueSkge1xyXG4gICAgICAgIGNvbnN0IHsgY29kZSB9ID0gcmVzO1xyXG4gICAgICAgIGlmIChtc2cpIHtcclxuICAgICAgICAgIGlmIChjb2RlID09PSAyMDApIHtcclxuICAgICAgICAgICAgbWVzc2FnZS5zdWNjZXNzKFwi5o+Q5Lqk5oiQ5YqfXCIpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgbWVzc2FnZS5lcnJvcihcIuaPkOS6pOWksei0pVwiKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgY2FsbGJhY2sgJiYgY2FsbGJhY2socmVzKTtcclxuICAgICAgfSlcclxuICAgICAgLmNhdGNoKGZ1bmN0aW9uIChlcnJvcjogYW55KSB7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCJlcnJvclwiLCBlcnJvcik7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgdmFsaWRhdGVGaWVsZHMobmFtZSkge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybVJlZi5jdXJyZW50LnZhbGlkYXRlRmllbGRzKG5hbWUpO1xyXG4gIH1cclxuXHJcbiAgaGlkZUZvcm0ocmVzZXRWYWx1ZSA9IHRydWUpIHtcclxuICAgIHRoaXMuc2V0U3RhdGUoXHJcbiAgICAgIHtcclxuICAgICAgICBmb3JtVmlzaWJsZTogZmFsc2UsXHJcbiAgICAgIH0sXHJcbiAgICAgICgpID0+IHtcclxuICAgICAgICBpZiAocmVzZXRWYWx1ZSkge1xyXG4gICAgICAgICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnJlc2V0RmllbGRzKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgc2hvd0Zvcm0odmFsdWU/OiBhbnksIHJlc2V0VmFsdWUgPSB0cnVlKSB7XHJcbiAgICB0aGlzLnNldFN0YXRlKFxyXG4gICAgICB7XHJcbiAgICAgICAgZm9ybVZpc2libGU6IHRydWUsXHJcbiAgICAgIH0sXHJcbiAgICAgICgpID0+IHtcclxuICAgICAgICBpZiAodmFsdWUpIHtcclxuICAgICAgICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5zZXRGaWVsZHNWYWx1ZSh2YWx1ZSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGlmIChyZXNldFZhbHVlKSB0aGlzLmZvcm1SZWYuY3VycmVudD8ucmVzZXRGaWVsZHMoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBjbG9uZUVsZW1lbnQoaXRlbSwgaW5kZXggPSAwKSB7XHJcbiAgICBsZXQgX3RoaXMgPSB0aGlzO1xyXG4gICAgaWYgKHR5cGVvZiBpdGVtID09IFwic3RyaW5nXCIpIHJldHVybiBpdGVtO1xyXG4gICAgbGV0IHByb3BzID0ge30gYXMgeyBrZXk6IG51bWJlcjsgY2hpbGRyZW46IGFueSB9O1xyXG4gICAgcHJvcHMua2V5ID0gaW5kZXg7XHJcbiAgICB0cnkge1xyXG4gICAgICBpZiAoaXRlbS5wcm9wcyAmJiBpdGVtLnByb3BzLmNoaWxkcmVuKSB7XHJcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoaXRlbS5wcm9wcy5jaGlsZHJlbikpIHtcclxuICAgICAgICAgIHByb3BzLmNoaWxkcmVuID0gUmVhY3QuQ2hpbGRyZW4ubWFwKFxyXG4gICAgICAgICAgICBpdGVtLnByb3BzLmNoaWxkcmVuLFxyXG4gICAgICAgICAgICBmdW5jdGlvbiAoY2hpbGQsIGluZGV4KSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIF90aGlzLmNsb25lRWxlbWVudChjaGlsZCwgaW5kZXgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBwcm9wcy5jaGlsZHJlbiA9IHRoaXMuY2xvbmVFbGVtZW50KGl0ZW0ucHJvcHMuY2hpbGRyZW4sIDApO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gUmVhY3QuY2xvbmVFbGVtZW50KGl0ZW0sIHByb3BzKTtcclxuICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJlbmRlclBhbmVsKG5ld0NoaWxkcmVuLCBwcm9wcykge1xyXG4gICAgY29uc3QgeyBzaG93TW9kZWwsIGRyYXdlclByb3BzLCBtb2RhbFByb3BzIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3QgeyBmb3JtVmlzaWJsZSB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGNvbnN0IGxheW91dCA9IHtcclxuICAgICAgbGFiZWxDb2w6IHsgc3BhbjogNCB9LFxyXG4gICAgICB3cmFwcGVyQ29sOiB7IHNwYW46IDIwIH0sXHJcbiAgICB9O1xyXG4gICAgaWYgKHNob3dNb2RlbCAmJiBzaG93TW9kZWwgPT0gXCJtb2RhbFwiKSB7XHJcbiAgICAgIGxldCBuZXdNb2RhbFByb3BzID0gb21pdChtb2RhbFByb3BzLCBbXCJ2aXNpYmxlXCJdKTtcclxuICAgICAgbmV3TW9kYWxQcm9wcyA9IHsgY2VudGVyZWQ6IHRydWUsIC4uLm5ld01vZGFsUHJvcHMgfTtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICA8TW9kYWxcclxuICAgICAgICAgIG9uQ2FuY2VsPXt0aGlzLmhpZGVGb3JtLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICB2aXNpYmxlPXtmb3JtVmlzaWJsZX1cclxuICAgICAgICAgIHsuLi5uZXdNb2RhbFByb3BzfVxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxGb3JtIHJlZj17dGhpcy5mb3JtUmVmfSB7Li4ubGF5b3V0fSB7Li4ucHJvcHN9IHByZXNlcnZlPXtmYWxzZX0gLz5cclxuICAgICAgICA8L01vZGFsPlxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIGlmIChzaG93TW9kZWwgJiYgc2hvd01vZGVsID09IFwiZHJhd2VyXCIpIHtcclxuICAgICAgbGV0IG5ld0RyYXdlclByb3BzID0gb21pdChkcmF3ZXJQcm9wcywgW1widmlzaWJsZVwiXSk7XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgPERyYXdlclxyXG4gICAgICAgICAgb25DbG9zZT17dGhpcy5oaWRlRm9ybS5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgdmlzaWJsZT17Zm9ybVZpc2libGV9XHJcbiAgICAgICAgICB7Li4ubmV3RHJhd2VyUHJvcHN9XHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPEZvcm0gcmVmPXt0aGlzLmZvcm1SZWZ9IHsuLi5sYXlvdXR9IHsuLi5wcm9wc30gLz5cclxuICAgICAgICA8L0RyYXdlcj5cclxuICAgICAgKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiA8Rm9ybSByZWY9e3RoaXMuZm9ybVJlZn0gey4uLmxheW91dH0gey4uLnByb3BzfSAvPjtcclxuICAgIH1cclxuICB9XHJcbiAgcmVuZGVyKCkge1xyXG4gICAgY29uc3QgX3RoaXMgPSB0aGlzLFxyXG4gICAgICB7IGNoaWxkcmVuLCBzaG93TW9kZWwgfSA9IHRoaXMucHJvcHM7XHJcbiAgICAvLyBjb25zdCBuZXdDaGlsZHJlbiA9IFJlYWN0LkNoaWxkcmVuLm1hcChjaGlsZHJlbiwgZnVuY3Rpb24gKGNoaWxkLCBpbmRleCkge1xyXG4gICAgLy8gICByZXR1cm4gX3RoaXMuY2xvbmVFbGVtZW50KGNoaWxkLCBpbmRleCk7XHJcbiAgICAvLyB9KTtcclxuICAgIGNvbnN0IHByb3BzID0gb21pdCh0aGlzLnByb3BzLCBbXHJcbiAgICAgIFwiZm9ybVwiLFxyXG4gICAgICBcInNob3dNb2RlbFwiLFxyXG4gICAgICBcIm1vZGFsUHJvcHNcIixcclxuICAgICAgXCJkcmF3ZXJQcm9wc1wiLFxyXG4gICAgICBcInVybFwiLFxyXG4gICAgICBcImVuY3J5cHRGaWVsZHNcIixcclxuICAgIF0pO1xyXG5cclxuICAgIHJldHVybiA8Pnt0aGlzLnJlbmRlclBhbmVsKHByb3BzLmNoaWxkcmVuLCBwcm9wcyl9PC8+O1xyXG4gIH1cclxufVxyXG5leHBvcnQgZGVmYXVsdCBOc2NGb3JtO1xyXG4iXX0=
|
|
556
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Jhc2UvZm9ybS9Gb3JtLnRzeCJdLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJyZXF1ZXN0Iiwib21pdCIsIkJ1dHRvbiIsInN0eWxlcyIsImdldExlc3MiLCJQbHVzQ2lyY2xlT3V0bGluZWQiLCJDbG9zZUNpcmNsZU91dGxpbmVkIiwiQ2xvc2VPdXRsaW5lZCIsIkV4cGFuZE91dGxpbmVkIiwiQ29tcHJlc3NPdXRsaW5lZCIsIk5zY0Zvcm0iLCJwcm9wcyIsImNyZWF0ZVJlZiIsImZvcm1WaXNpYmxlIiwiZm9ybU1vZGFsUHJvcHMiLCJmb3JtRHJhd2VyUHJvcHMiLCJpc0NoYW5nZSIsImV4cGFuZCIsIm5hbWUiLCJmb3JtUmVmIiwiY3VycmVudCIsImdldEZpZWxkRXJyb3IiLCJnZXRGaWVsZEluc3RhbmNlIiwiZ2V0RmllbGRzRXJyb3IiLCJnZXRGaWVsZHNWYWx1ZSIsImdldEZpZWxkVmFsdWUiLCJpc0ZpZWxkc1RvdWNoZWQiLCJpc0ZpZWxkVG91Y2hlZCIsImlzRmllbGRWYWxpZGF0aW5nIiwicmVzZXRGaWVsZHMiLCJvcHRpb25zIiwic2Nyb2xsVG9GaWVsZCIsImZpbGRzIiwic2V0RmllbGRzIiwidmFsdWVzIiwic2V0RmllbGRzVmFsdWUiLCJzdWJtaXQiLCJ1cmwiLCJjYWxsYmFjayIsIm1zZyIsInByb3BzVXJsIiwiZW5jcnlwdEZpZWxkcyIsImVuY3J5cHRQcm9wcHMiLCJFcnJvciIsIm1ldGhvZCIsInJlcXVlc3RVcmwiLCJyZXF1ZXN0RGF0YSIsInJlcXVlc3RFbmNyeXB0IiwicmVxdWVzdFBhcmFtIiwiZGF0YSIsInBhcmFtcyIsInRvTG93ZXJDYXNlIiwidGhlbiIsInJlcyIsImNvZGUiLCJzdWNjZXNzIiwiZXJyb3IiLCJjYXRjaCIsImNvbnNvbGUiLCJsb2ciLCJ2YWxpZGF0ZUZpZWxkcyIsImUiLCJzdGF0ZSIsImNoYW5nZVZhbGlkIiwic2hvd01vZGVsIiwibW9kYWxQcm9wcyIsImRyYXdlclByb3BzIiwiX3RoaXMiLCJvbkNhbmNlbCIsIm9uQ2xvc2UiLCJjb25maXJtIiwidGl0bGUiLCJjYW5jZWxUZXh0Iiwib2tUZXh0IiwiY2VudGVyZWQiLCJvbk9rIiwiaGlkZUZvcm0iLCJyZXNldFZhbHVlIiwic2V0U3RhdGUiLCJ2YWx1ZSIsIml0ZW0iLCJpbmRleCIsImtleSIsImNoaWxkcmVuIiwiQXJyYXkiLCJpc0FycmF5IiwiQ2hpbGRyZW4iLCJtYXAiLCJjaGlsZCIsImNsb25lRWxlbWVudCIsInZhbCIsImFsbFZhbCIsIm9uVmFsdWVzQ2hhbmdlIiwibmV3Q2hpbGRyZW4iLCJsYXlvdXQiLCJsYWJlbENvbCIsInNwYW4iLCJ3cmFwcGVyQ29sIiwib3JndGl0bGUiLCJjbG9zYWJsZSIsImhpZGUiLCJiaW5kIiwibWFyZ2luUmlnaHQiLCJmb290ZXIiLCJmb3JtVmFsdWUiLCJuZXdNb2RhbFByb3BzIiwid2lkdGgiLCJtYXhXaWR0aCIsIm5ld0RyYXdlclByb3BzIiwicmVuZGVyUGFuZWwiLCJuZXh0UHJvcHMiLCJwcmV2U3RhdGUiLCJPYmplY3QiLCJpcyIsIm5ld1N0YXRlIiwidmlzaWJsZSIsInVuZGVmaW5lZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBT0EsS0FBUCxJQUFnQkMsYUFBaEIsUUFBcUMsT0FBckM7QUFXQSxTQUFTQyxPQUFULFFBQXdCLHVCQUF4QjtBQUNBLE9BQU9DLElBQVAsTUFBaUIsU0FBakI7QUFDQSxPQUFPQyxNQUFQLE1BQW1CLFdBQW5CO0FBQ0EsT0FBT0MsTUFBUCxNQUFtQixjQUFuQjtBQUNBLFNBQVNDLE9BQVQsUUFBd0IsYUFBeEI7QUFDQSxTQUNFQyxrQkFERixFQUVFQyxtQkFGRixFQUdFQyxhQUhGLEVBSUVDLGNBSkYsRUFLRUMsZ0JBTEYsUUFNTyxtQkFOUDs7SUFpQk1DLE87Ozs7O0FBVUosbUJBQVlDLEtBQVosRUFBbUI7QUFBQTs7QUFBQTs7QUFDakIsK0JBQU1BLEtBQU47O0FBRGlCLDRFQVRUYixLQUFLLENBQUNjLFNBQU4sRUFTUzs7QUFBQSw2REFSWDtBQUNOQyxNQUFBQSxXQUFXLEVBQUUsS0FEUDtBQUVOQyxNQUFBQSxjQUFjLEVBQUUsRUFGVjtBQUdOQyxNQUFBQSxlQUFlLEVBQUUsRUFIWDtBQUlOQyxNQUFBQSxRQUFRLEVBQUUsS0FKSjtBQUtOQyxNQUFBQSxNQUFNLEVBQUU7QUFMRixLQVFXOztBQUFBO0FBRWxCOzs7O1dBa0NEO0FBQ0EsMkJBQWNDLElBQWQsRUFBb0I7QUFBQTs7QUFDbEIsc0NBQU8sS0FBS0MsT0FBTCxDQUFhQyxPQUFwQiwwREFBTyxzQkFBc0JDLGFBQXRCLENBQW9DSCxJQUFwQyxDQUFQO0FBQ0QsSyxDQUVEOzs7O1dBQ0EsMEJBQWlCQSxJQUFqQixFQUF1QjtBQUFBOztBQUNyQix1Q0FBTyxLQUFLQyxPQUFMLENBQWFDLE9BQXBCLDJEQUFPLHVCQUFzQkUsZ0JBQXRCLENBQXVDSixJQUF2QyxDQUFQO0FBQ0QsSyxDQUVEOzs7O1dBQ0EsMEJBQWlCO0FBQUE7O0FBQ2YsdUNBQU8sS0FBS0MsT0FBTCxDQUFhQyxPQUFwQiwyREFBTyx1QkFBc0JHLGNBQXRCLEVBQVA7QUFDRCxLLENBRUQ7Ozs7V0FDQSwwQkFBaUI7QUFBQTs7QUFDZix1Q0FBTyxLQUFLSixPQUFMLENBQWFDLE9BQXBCLDJEQUFPLHVCQUFzQkksY0FBdEIsRUFBUDtBQUNELEssQ0FFRDs7OztXQUNBLHVCQUFjTixJQUFkLEVBQW9CO0FBQUE7O0FBQ2xCLHVDQUFPLEtBQUtDLE9BQUwsQ0FBYUMsT0FBcEIsMkRBQU8sdUJBQXNCSyxhQUF0QixDQUFvQ1AsSUFBcEMsQ0FBUDtBQUNELEssQ0FFRDs7OztXQUNBLDJCQUFrQjtBQUFBOztBQUNoQix1Q0FBTyxLQUFLQyxPQUFMLENBQWFDLE9BQXBCLDJEQUFPLHVCQUFzQk0sZUFBdEIsRUFBUDtBQUNELEssQ0FFRDs7OztXQUNBLHdCQUFlUixJQUFmLEVBQXFCO0FBQUE7O0FBQ25CLHVDQUFPLEtBQUtDLE9BQUwsQ0FBYUMsT0FBcEIsMkRBQU8sdUJBQXNCTyxjQUF0QixDQUFxQ1QsSUFBckMsQ0FBUDtBQUNELEssQ0FFRDs7OztXQUNBLDJCQUFrQkEsSUFBbEIsRUFBd0I7QUFBQTs7QUFDdEIsdUNBQU8sS0FBS0MsT0FBTCxDQUFhQyxPQUFwQiwyREFBTyx1QkFBc0JRLGlCQUF0QixDQUF3Q1YsSUFBeEMsQ0FBUDtBQUNELEssQ0FFRDs7OztXQUNBLHVCQUFjO0FBQUE7O0FBQ1oscUNBQUtDLE9BQUwsQ0FBYUMsT0FBYixrRkFBc0JTLFdBQXRCO0FBQ0Q7OztXQUVELHVCQUFjWCxJQUFkLEVBQW9CWSxPQUFwQixFQUE2QjtBQUFBOztBQUMzQixzQ0FBS1gsT0FBTCxDQUFhQyxPQUFiLG9GQUFzQlcsYUFBdEIsQ0FBb0NiLElBQXBDLEVBQTBDWSxPQUExQztBQUNEOzs7V0FFRCxtQkFBVUUsS0FBVixFQUFpQjtBQUFBOztBQUNmLHNDQUFLYixPQUFMLENBQWFDLE9BQWIsb0ZBQXNCYSxTQUF0QixDQUFnQ0QsS0FBaEM7QUFDRDs7O1dBRUQsd0JBQWVFLE1BQWYsRUFBdUI7QUFBQTs7QUFDckIsc0NBQUtmLE9BQUwsQ0FBYUMsT0FBYixvRkFBc0JlLGNBQXRCLENBQXFDRCxNQUFyQztBQUNEOzs7V0FFRCxrQkFBUztBQUFBOztBQUNQLHNDQUFLZixPQUFMLENBQWFDLE9BQWIsb0ZBQXNCZ0IsTUFBdEI7QUFDRDs7O1dBRUQsa0JBQ0VDLEdBREYsRUFFRVAsT0FGRixFQUdFUSxRQUhGLEVBSUVDLEdBSkYsRUFLRTtBQUNBLHdCQUE2RCxLQUFLNUIsS0FBbEU7QUFBQSxVQUFhNkIsUUFBYixlQUFRSCxHQUFSO0FBQUEsOENBQXVCSSxhQUF2QjtBQUFBLFVBQXNDQyxhQUF0QyxzQ0FBc0QsRUFBdEQ7O0FBQ0EsVUFBSSxDQUFDTCxHQUFELElBQVEsQ0FBQ0csUUFBYixFQUF1QjtBQUNyQixjQUFNLElBQUlHLEtBQUosQ0FBVSxXQUFWLENBQU47QUFDRDs7QUFDRCw0QkFBNEJiLE9BQTVCLENBQVFjLE1BQVI7QUFBQSxVQUFRQSxNQUFSLGdDQUFpQixNQUFqQjtBQUNBLFVBQUlDLFVBQVUsR0FBR1IsR0FBRyxHQUFHQSxHQUFILEdBQVNHLFFBQTdCO0FBQ0EsVUFBSU0sV0FBVyxHQUFHLEtBQUszQixPQUFMLENBQWFDLE9BQWIsQ0FBcUJJLGNBQXJCLEVBQWxCO0FBQ0EsVUFBSXVCLGNBQWMsR0FBR0wsYUFBckI7QUFDQSxVQUFJTSxZQUFZLEdBQUc7QUFBRUosUUFBQUEsTUFBTSxFQUFFQSxNQUFWO0FBQWtCSyxRQUFBQSxJQUFJLEVBQUVIO0FBQXhCLE9BQW5COztBQUNBLFVBQUloQixPQUFKLEVBQWE7QUFDWCxZQUFRbUIsSUFBUixHQUEyQ25CLE9BQTNDLENBQVFtQixJQUFSO0FBQUEsWUFBY1IsYUFBZCxHQUEyQ1gsT0FBM0MsQ0FBY1csYUFBZDtBQUFBLFlBQWdDUyxNQUFoQyw0QkFBMkNwQixPQUEzQzs7QUFDQWtCLFFBQUFBLFlBQVksbUNBQVFBLFlBQVIsR0FBeUJFLE1BQXpCLENBQVo7O0FBQ0EsWUFBSUQsSUFBSixFQUFVO0FBQ1IsaUJBQU9ELFlBQVksQ0FBQ0MsSUFBcEI7O0FBQ0EsY0FBSUwsTUFBTSxDQUFDTyxXQUFQLE1BQXdCLEtBQTVCLEVBQW1DO0FBQ2pDSCxZQUFBQSxZQUFZLGlEQUFRQSxZQUFSLEdBQXlCRSxNQUF6QjtBQUFpQ0EsY0FBQUEsTUFBTSxFQUFFRDtBQUF6QyxjQUFaO0FBQ0QsV0FGRCxNQUVPO0FBQ0xELFlBQUFBLFlBQVksaURBQVFBLFlBQVIsR0FBeUJFLE1BQXpCO0FBQWlDRCxjQUFBQSxJQUFJLEVBQUVBO0FBQXZDLGNBQVo7QUFDRDtBQUNGOztBQUNELFlBQUlSLGFBQUosRUFBbUI7QUFDakJNLFVBQUFBLGNBQWMsR0FBR04sYUFBakI7QUFDRDtBQUNGOztBQUVEekMsTUFBQUEsT0FBTyxDQUFDNkMsVUFBRCxrQ0FDRkcsWUFERTtBQUVMUCxRQUFBQSxhQUFhLEVBQUVNO0FBRlYsU0FBUCxDQUlHSyxJQUpILENBSVEsVUFBVUMsR0FBVixFQUFvQjtBQUN4QixZQUFRQyxJQUFSLEdBQWlCRCxHQUFqQixDQUFRQyxJQUFSOztBQUNBLFlBQUlmLEdBQUosRUFBUztBQUNQLGNBQUllLElBQUksS0FBSyxHQUFiLEVBQWtCO0FBQ2hCLHFCQUFRQyxPQUFSLENBQWdCLE1BQWhCO0FBQ0QsV0FGRCxNQUVPO0FBQ0wscUJBQVFDLEtBQVIsQ0FBYyxNQUFkO0FBQ0Q7QUFDRjs7QUFDRGxCLFFBQUFBLFFBQVEsSUFBSUEsUUFBUSxDQUFDZSxHQUFELENBQXBCO0FBQ0QsT0FkSCxFQWVHSSxLQWZILENBZVMsVUFBVUQsS0FBVixFQUFzQjtBQUMzQkUsUUFBQUEsT0FBTyxDQUFDQyxHQUFSLENBQVksT0FBWixFQUFxQkgsS0FBckI7QUFDRCxPQWpCSDtBQWtCRDs7O1dBRUQsd0JBQWV0QyxJQUFmLEVBQXFCO0FBQ25CLGFBQU8sS0FBS0MsT0FBTCxDQUFhQyxPQUFiLENBQXFCd0MsY0FBckIsQ0FBb0MxQyxJQUFwQyxDQUFQO0FBQ0Q7OztXQUVELGNBQUsyQyxDQUFMLEVBQVE7QUFDTixVQUFRN0MsUUFBUixHQUFxQixLQUFLOEMsS0FBMUIsQ0FBUTlDLFFBQVI7QUFDQSx5QkFLSSxLQUFLTCxLQUxUO0FBQUEsK0NBQ0VvRCxXQURGO0FBQUEsVUFDRUEsV0FERixzQ0FDZ0IsSUFEaEI7QUFBQSxVQUVFQyxTQUZGLGdCQUVFQSxTQUZGO0FBQUEsK0NBR0VDLFVBSEY7QUFBQSxVQUdFQSxVQUhGLHNDQUdlLEVBSGY7QUFBQSwrQ0FJRUMsV0FKRjtBQUFBLFVBSUVBLFdBSkYsc0NBSWdCLEVBSmhCOztBQU1BLFVBQUlDLEtBQUssR0FBRyxJQUFaOztBQUNBLFVBQVFDLFFBQVIsR0FBcUJILFVBQXJCLENBQVFHLFFBQVI7QUFDQSxVQUFRQyxPQUFSLEdBQW9CSCxXQUFwQixDQUFRRyxPQUFSOztBQUNBLFVBQUlOLFdBQVcsSUFBSS9DLFFBQW5CLEVBQTZCO0FBQzNCLGVBQU1zRCxPQUFOLENBQWM7QUFDWkMsVUFBQUEsS0FBSyxFQUFFLHVCQURLO0FBRVpDLFVBQUFBLFVBQVUsRUFBRSxJQUZBO0FBR1pDLFVBQUFBLE1BQU0sRUFBRSxJQUhJO0FBSVpDLFVBQUFBLFFBQVEsRUFBRSxJQUpFO0FBS1pDLFVBQUFBLElBTFksa0JBS0w7QUFDTCxnQkFBSVgsU0FBUyxJQUFJLFFBQWIsSUFBeUJLLE9BQTdCLEVBQXNDO0FBQ3BDQSxjQUFBQSxPQUFPLENBQUNSLENBQUQsQ0FBUDtBQUNELGFBRkQsTUFFTyxJQUFJRyxTQUFTLElBQUksT0FBYixJQUF3QkksUUFBNUIsRUFBc0M7QUFDM0NBLGNBQUFBLFFBQVEsQ0FBQ1AsQ0FBRCxDQUFSO0FBQ0QsYUFGTSxNQUVBO0FBQ0xNLGNBQUFBLEtBQUssQ0FBQ1MsUUFBTjtBQUNEO0FBQ0Y7QUFiVyxTQUFkO0FBZUQsT0FoQkQsTUFnQk87QUFDTCxZQUFJWixTQUFTLElBQUksUUFBYixJQUF5QkssT0FBN0IsRUFBc0M7QUFDcENBLFVBQUFBLE9BQU8sQ0FBQ1IsQ0FBRCxDQUFQO0FBQ0QsU0FGRCxNQUVPLElBQUlHLFNBQVMsSUFBSSxPQUFiLElBQXdCSSxRQUE1QixFQUFzQztBQUMzQ0EsVUFBQUEsUUFBUSxDQUFDUCxDQUFELENBQVI7QUFDRCxTQUZNLE1BRUE7QUFDTE0sVUFBQUEsS0FBSyxDQUFDUyxRQUFOO0FBQ0Q7QUFDRjtBQUNGOzs7V0FFRCxvQkFBNEI7QUFBQTs7QUFBQSxVQUFuQkMsVUFBbUIsdUVBQU4sSUFBTTtBQUMxQixXQUFLQyxRQUFMLENBQ0U7QUFDRWpFLFFBQUFBLFdBQVcsRUFBRSxLQURmO0FBRUVHLFFBQUFBLFFBQVEsRUFBRTtBQUZaLE9BREYsRUFLRSxZQUFNO0FBQ0osWUFBSTZELFVBQUosRUFBZ0I7QUFBQTs7QUFDZCxtQ0FBQSxNQUFJLENBQUMxRCxPQUFMLENBQWFDLE9BQWIsZ0ZBQXNCUyxXQUF0QjtBQUNEO0FBQ0YsT0FUSDtBQVdEOzs7V0FFRCxrQkFBU2tELEtBQVQsRUFBeUM7QUFBQTs7QUFBQSxVQUFuQkYsVUFBbUIsdUVBQU4sSUFBTTtBQUN2QyxXQUFLQyxRQUFMLENBQ0U7QUFDRWpFLFFBQUFBLFdBQVcsRUFBRSxJQURmO0FBRUVHLFFBQUFBLFFBQVEsRUFBRTtBQUZaLE9BREYsRUFLRSxZQUFNO0FBQ0osWUFBSStELEtBQUosRUFBVztBQUFBOztBQUNULG1DQUFBLE1BQUksQ0FBQzVELE9BQUwsQ0FBYUMsT0FBYixnRkFBc0JlLGNBQXRCLENBQXFDNEMsS0FBckM7QUFDRCxTQUZELE1BRU87QUFBQTs7QUFDTCxjQUFJRixVQUFKLEVBQWdCLDBCQUFBLE1BQUksQ0FBQzFELE9BQUwsQ0FBYUMsT0FBYixrRkFBc0JTLFdBQXRCO0FBQ2pCO0FBQ0YsT0FYSDtBQWFEOzs7V0FFRCxzQkFBYW1ELElBQWIsRUFBOEI7QUFBQSxVQUFYQyxLQUFXLHVFQUFILENBQUc7O0FBQzVCLFVBQUlkLEtBQUssR0FBRyxJQUFaOztBQUNBLFVBQUksT0FBT2EsSUFBUCxJQUFlLFFBQW5CLEVBQTZCLE9BQU9BLElBQVA7QUFDN0IsVUFBSXJFLEtBQUssR0FBRyxFQUFaO0FBQ0FBLE1BQUFBLEtBQUssQ0FBQ3VFLEdBQU4sR0FBWUQsS0FBWjs7QUFDQSxVQUFJO0FBQ0YsWUFBSUQsSUFBSSxDQUFDckUsS0FBTCxJQUFjcUUsSUFBSSxDQUFDckUsS0FBTCxDQUFXd0UsUUFBN0IsRUFBdUM7QUFDckMsY0FBSUMsS0FBSyxDQUFDQyxPQUFOLENBQWNMLElBQUksQ0FBQ3JFLEtBQUwsQ0FBV3dFLFFBQXpCLENBQUosRUFBd0M7QUFDdEN4RSxZQUFBQSxLQUFLLENBQUN3RSxRQUFOLEdBQWlCckYsS0FBSyxDQUFDd0YsUUFBTixDQUFlQyxHQUFmLENBQ2ZQLElBQUksQ0FBQ3JFLEtBQUwsQ0FBV3dFLFFBREksRUFFZixVQUFVSyxLQUFWLEVBQWlCUCxLQUFqQixFQUF3QjtBQUN0QixxQkFBT2QsS0FBSyxDQUFDc0IsWUFBTixDQUFtQkQsS0FBbkIsRUFBMEJQLEtBQTFCLENBQVA7QUFDRCxhQUpjLENBQWpCO0FBTUQsV0FQRCxNQU9PO0FBQ0x0RSxZQUFBQSxLQUFLLENBQUN3RSxRQUFOLEdBQWlCLEtBQUtNLFlBQUwsQ0FBa0JULElBQUksQ0FBQ3JFLEtBQUwsQ0FBV3dFLFFBQTdCLEVBQXVDLENBQXZDLENBQWpCO0FBQ0Q7QUFDRjs7QUFDRCw0QkFBT3JGLEtBQUssQ0FBQzJGLFlBQU4sQ0FBbUJULElBQW5CLEVBQXlCckUsS0FBekIsQ0FBUDtBQUNELE9BZEQsQ0FjRSxPQUFPa0QsQ0FBUCxFQUFVO0FBQ1YsZUFBTyxJQUFQO0FBQ0Q7QUFDRjs7O1dBQ0Qsd0JBQWU2QixHQUFmLEVBQW9CQyxNQUFwQixFQUE0QjtBQUMxQixVQUFRQyxjQUFSLEdBQTJCLEtBQUtqRixLQUFoQyxDQUFRaUYsY0FBUjtBQUNBLFdBQUtkLFFBQUwsQ0FBYztBQUNaOUQsUUFBQUEsUUFBUSxFQUFFO0FBREUsT0FBZDtBQUdBNEUsTUFBQUEsY0FBYyxJQUFJQSxjQUFjLENBQUNGLEdBQUQsRUFBTUMsTUFBTixDQUFoQztBQUNEOzs7V0FDRCxxQkFBWUUsV0FBWixFQUF5QmxGLEtBQXpCLEVBQWdDO0FBQUE7O0FBQzlCLHlCQUtJLEtBQUtBLEtBTFQ7QUFBQSxVQUNFcUQsU0FERixnQkFDRUEsU0FERjtBQUFBLCtDQUVFRSxXQUZGO0FBQUEsVUFFRUEsV0FGRixzQ0FFZ0IsRUFGaEI7QUFBQSwrQ0FHRUQsVUFIRjtBQUFBLFVBR0VBLFVBSEYsc0NBR2UsRUFIZjtBQUFBLCtDQUlFRixXQUpGO0FBQUEsVUFJRUEsV0FKRixzQ0FJZ0IsSUFKaEI7QUFNQSxVQUFRbEQsV0FBUixHQUF3QixLQUFLaUQsS0FBN0IsQ0FBUWpELFdBQVI7QUFDQSxVQUFNaUYsTUFBTSxHQUFHO0FBQ2JDLFFBQUFBLFFBQVEsRUFBRTtBQUFFQyxVQUFBQSxJQUFJLEVBQUU7QUFBUixTQURHO0FBRWJDLFFBQUFBLFVBQVUsRUFBRTtBQUFFRCxVQUFBQSxJQUFJLEVBQUU7QUFBUjtBQUZDLE9BQWY7QUFJQSxVQUFJRSxRQUFRLEdBQUdsQyxTQUFTLElBQUksT0FBYixHQUF1QkMsVUFBVSxDQUFDTSxLQUFsQyxHQUEwQ0wsV0FBVyxDQUFDSyxLQUFyRTtBQUNBLFVBQU00QixRQUFRLEdBQ1puQyxTQUFTLElBQUksT0FBYixHQUF1QkMsVUFBVSxDQUFDa0MsUUFBbEMsR0FBNkNqQyxXQUFXLENBQUNpQyxRQUQzRDtBQUVBLFVBQU01QixLQUFLLGdCQUNUO0FBQUssUUFBQSxTQUFTLEVBQUVuRSxPQUFPLENBQUNELE1BQUQsRUFBUyxPQUFUO0FBQXZCLHNCQUNFO0FBQUssUUFBQSxTQUFTLEVBQUVDLE9BQU8sQ0FBQ0QsTUFBRCxFQUFTLE9BQVQ7QUFBdkIsU0FDRyxDQUFDLEtBQUsyRCxLQUFMLENBQVc3QyxNQUFaLGlCQUNDO0FBQ0UsUUFBQSxPQUFPLEVBQUUsbUJBQU07QUFDYixVQUFBLE1BQUksQ0FBQzZELFFBQUwsQ0FBYztBQUFFN0QsWUFBQUEsTUFBTSxFQUFFO0FBQVYsV0FBZDtBQUNELFNBSEg7QUFJRSxRQUFBLFNBQVMsRUFBRWIsT0FBTyxDQUFDRCxNQUFELEVBQVMsTUFBVDtBQUpwQixzQkFNRSxvQkFBQyxjQUFELE9BTkYsQ0FGSixFQVdHLEtBQUsyRCxLQUFMLENBQVc3QyxNQUFYLGlCQUNDO0FBQ0UsUUFBQSxPQUFPLEVBQUUsbUJBQU07QUFDYixVQUFBLE1BQUksQ0FBQzZELFFBQUwsQ0FBYztBQUFFN0QsWUFBQUEsTUFBTSxFQUFFO0FBQVYsV0FBZDtBQUNELFNBSEg7QUFJRSxRQUFBLFNBQVMsRUFBRWIsT0FBTyxDQUFDRCxNQUFELEVBQVMsTUFBVDtBQUpwQixzQkFNRSxvQkFBQyxnQkFBRCxPQU5GLENBWkosRUFxQkdnRyxRQUFRLEtBQUssS0FBYixpQkFDQztBQUNFLFFBQUEsT0FBTyxFQUFFLEtBQUtDLElBQUwsQ0FBVUMsSUFBVixDQUFlLElBQWYsQ0FEWDtBQUVFLFFBQUEsU0FBUyxFQUFFakcsT0FBTyxDQUFDRCxNQUFELEVBQVMsTUFBVCxDQUZwQjtBQUdFLFFBQUEsS0FBSyxFQUFFO0FBQUVtRyxVQUFBQSxXQUFXLEVBQUU7QUFBZjtBQUhULHNCQUtFLG9CQUFDLGFBQUQsT0FMRixDQXRCSixDQURGLGVBZ0NFO0FBQUssUUFBQSxTQUFTLEVBQUVsRyxPQUFPLENBQUNELE1BQUQsRUFBUyxlQUFUO0FBQXZCLFNBQW1EK0YsUUFBbkQsQ0FoQ0YsQ0FERjtBQW9DQSxVQUFNSyxNQUFNLGdCQUNWO0FBQUssUUFBQSxTQUFTLEVBQUVuRyxPQUFPLENBQUNELE1BQUQsRUFBUyxRQUFUO0FBQXZCLHNCQUNFLG9CQUFDLE1BQUQ7QUFDRSxRQUFBLElBQUksRUFBQyxTQURQO0FBRUUsUUFBQSxPQUFPLEVBQUUsbUJBQU07QUFBQTs7QUFDYixjQUFNcUcsU0FBUyw0QkFBRyxNQUFJLENBQUNyRixPQUFMLENBQWFDLE9BQWhCLDBEQUFHLHNCQUFzQkksY0FBdEIsRUFBbEI7O0FBQ0EsY0FBSXdDLFNBQVMsSUFBSSxPQUFqQixFQUEwQjtBQUN4QkMsWUFBQUEsVUFBVSxDQUFDVSxJQUFYLElBQW1CVixVQUFVLENBQUNVLElBQVgsQ0FBZ0I2QixTQUFoQixDQUFuQjtBQUNELFdBRkQsTUFFTztBQUNMdEMsWUFBQUEsV0FBVyxDQUFDUyxJQUFaLElBQW9CVCxXQUFXLENBQUNTLElBQVosQ0FBaUI2QixTQUFqQixDQUFwQjtBQUNEO0FBQ0YsU0FUSDtBQVVFLFFBQUEsSUFBSSxlQUFFLG9CQUFDLGtCQUFEO0FBVlIsd0JBREYsZUFnQkUsb0JBQUMsTUFBRDtBQUNFLFFBQUEsT0FBTyxFQUFFLEtBQUtKLElBQUwsQ0FBVUMsSUFBVixDQUFlLElBQWYsQ0FEWDtBQUVFLFFBQUEsU0FBUyxFQUFFakcsT0FBTyxDQUFDRCxNQUFELEVBQVMsZUFBVCxDQUZwQjtBQUdFLFFBQUEsSUFBSSxlQUFFLG9CQUFDLG1CQUFEO0FBSFIsd0JBaEJGLENBREY7O0FBMEJBLFVBQUk2RCxTQUFTLElBQUlBLFNBQVMsSUFBSSxPQUE5QixFQUF1QztBQUNyQyxZQUFJeUMsYUFBYSxHQUFHeEcsSUFBSSxDQUFDZ0UsVUFBRCxFQUFhLENBQUMsU0FBRCxDQUFiLENBQXhCO0FBQ0F3QyxRQUFBQSxhQUFhO0FBQUsvQixVQUFBQSxRQUFRLEVBQUUsSUFBZjtBQUFxQjZCLFVBQUFBLE1BQU0sRUFBTkE7QUFBckIsV0FBZ0NFLGFBQWhDLENBQWI7QUFDQSw0QkFDRTtBQUNFLFVBQUEsT0FBTyxFQUFFNUYsV0FEWDtBQUVFLFVBQUEsTUFBTSxFQUFFMEY7QUFGVixXQUdNRSxhQUhOO0FBSUUsVUFBQSxRQUFRLEVBQUUsS0FBS0wsSUFBTCxDQUFVQyxJQUFWLENBQWUsSUFBZixDQUpaO0FBS0UsVUFBQSxZQUFZLEVBQUUsQ0FBQyxLQUFLdkMsS0FBTCxDQUFXOUMsUUFMNUI7QUFNRSxVQUFBLEtBQUssRUFBRXVELEtBTlQ7QUFPRSxVQUFBLFFBQVEsRUFBRSxLQVBaO0FBUUUsVUFBQSxTQUFTLEVBQUUsS0FBS1QsS0FBTCxDQUFXN0MsTUFBWCxHQUFvQmIsT0FBTyxDQUFDRCxNQUFELEVBQVMsVUFBVCxDQUEzQixHQUFrRCxFQVIvRDtBQVNFLFVBQUEsS0FBSyxFQUFFLEtBQUsyRCxLQUFMLENBQVc3QyxNQUFYLEdBQW9CLE9BQXBCLEdBQThCd0YsYUFBYSxDQUFDQyxLQVRyRDtBQVVFLFVBQUEsS0FBSyxFQUFFO0FBQUVDLFlBQUFBLFFBQVEsRUFBRTtBQUFaO0FBVlQseUJBWUU7QUFDRSxVQUFBLEdBQUcsRUFBRSxLQUFLeEY7QUFEWixXQUVNMkUsTUFGTixFQUdNbkYsS0FITjtBQUlFLFVBQUEsY0FBYyxFQUFFLEtBQUtpRixjQUFMLENBQW9CUyxJQUFwQixDQUF5QixJQUF6QixDQUpsQjtBQUtFLFVBQUEsUUFBUSxFQUFFO0FBTFosV0FaRixDQURGO0FBc0JELE9BekJELE1BeUJPLElBQUlyQyxTQUFTLElBQUlBLFNBQVMsSUFBSSxRQUE5QixFQUF3QztBQUM3QyxZQUFJNEMsY0FBYyxHQUFHM0csSUFBSSxDQUFDaUUsV0FBRCxFQUFjLENBQUMsU0FBRCxFQUFZLE1BQVosQ0FBZCxDQUF6QjtBQUNBLDRCQUNFO0FBQ0UsVUFBQSxPQUFPLEVBQUVyRCxXQURYO0FBRUUsVUFBQSxNQUFNLEVBQUUwRjtBQUZWLFdBR01LLGNBSE47QUFJRSxVQUFBLE9BQU8sRUFBRSxLQUFLUixJQUFMLENBQVVDLElBQVYsQ0FBZSxJQUFmLENBSlg7QUFLRSxVQUFBLFlBQVksRUFBRSxDQUFDLEtBQUt2QyxLQUFMLENBQVc5QyxRQUw1QjtBQU1FLFVBQUEsS0FBSyxFQUFFdUQsS0FOVDtBQU9FLFVBQUEsUUFBUSxFQUFFLEtBUFo7QUFRRSxVQUFBLEtBQUssRUFBRSxLQUFLVCxLQUFMLENBQVc3QyxNQUFYLEdBQW9CLE9BQXBCLEdBQThCMkYsY0FBYyxDQUFDRjtBQVJ0RCx5QkFVRTtBQUNFLFVBQUEsR0FBRyxFQUFFLEtBQUt2RjtBQURaLFdBRU0yRSxNQUZOLEVBR01uRixLQUhOO0FBSUUsVUFBQSxjQUFjLEVBQUUsS0FBS2lGLGNBQUwsQ0FBb0JTLElBQXBCLENBQXlCLElBQXpCO0FBSmxCLFdBVkYsQ0FERjtBQW1CRCxPQXJCTSxNQXFCQTtBQUNMLDRCQUNFO0FBQ0UsVUFBQSxHQUFHLEVBQUUsS0FBS2xGO0FBRFosV0FFTTJFLE1BRk4sRUFHTW5GLEtBSE47QUFJRSxVQUFBLGNBQWMsRUFBRSxLQUFLaUYsY0FBTCxDQUFvQlMsSUFBcEIsQ0FBeUIsSUFBekI7QUFKbEIsV0FERjtBQVFEO0FBQ0Y7OztXQUNELGtCQUFTO0FBQ0QsVUFBQWxDLEtBQUssR0FBRyxJQUFSO0FBQUEseUJBQ3NCLEtBQUt4RCxLQUQzQjtBQUFBLFVBQ0Z3RSxRQURFLGdCQUNGQSxRQURFO0FBQUEsVUFDUW5CLFNBRFIsZ0JBQ1FBLFNBRFIsQ0FEQyxDQUdQO0FBQ0E7QUFDQTs7O0FBQ0EsVUFBTXJELEtBQUssR0FBR1YsSUFBSSxDQUFDLEtBQUtVLEtBQU4sRUFBYSxDQUM3QixNQUQ2QixFQUU3QixXQUY2QixFQUc3QixZQUg2QixFQUk3QixhQUo2QixFQUs3QixLQUw2QixFQU03QixlQU42QixDQUFiLENBQWxCO0FBU0EsMEJBQU8sMENBQUcsS0FBS2tHLFdBQUwsQ0FBaUJsRyxLQUFLLENBQUN3RSxRQUF2QixFQUFpQ3hFLEtBQWpDLENBQUgsQ0FBUDtBQUNEOzs7V0E1WUQsa0NBQWdDbUcsU0FBaEMsRUFBMkNDLFNBQTNDLEVBQXNEO0FBQ3BELFVBQVE5QyxVQUFSLEdBQStDNkMsU0FBL0MsQ0FBUTdDLFVBQVI7QUFBQSxVQUFvQkMsV0FBcEIsR0FBK0M0QyxTQUEvQyxDQUFvQjVDLFdBQXBCO0FBQUEsVUFBaUNGLFNBQWpDLEdBQStDOEMsU0FBL0MsQ0FBaUM5QyxTQUFqQztBQUNBLFVBQVFsRCxjQUFSLEdBQTRDaUcsU0FBNUMsQ0FBUWpHLGNBQVI7QUFBQSxVQUF3QkMsZUFBeEIsR0FBNENnRyxTQUE1QyxDQUF3QmhHLGVBQXhCOztBQUNBLFVBQUlpRCxTQUFTLElBQUksT0FBakIsRUFBMEI7QUFDeEI7QUFDQSxZQUFJLENBQUNnRCxNQUFNLENBQUNDLEVBQVAsQ0FBVW5HLGNBQVYsRUFBMEJtRCxVQUExQixDQUFMLEVBQTRDO0FBQzFDLGNBQUlpRCxRQUFRLEdBQUc7QUFDYm5HLFlBQUFBLGVBQWUsRUFBRWtEO0FBREosV0FBZjs7QUFHQSxjQUFJLENBQUFBLFVBQVUsU0FBVixJQUFBQSxVQUFVLFdBQVYsWUFBQUEsVUFBVSxDQUFFa0QsT0FBWixNQUF3QixJQUF4QixJQUFnQyxDQUFBbEQsVUFBVSxTQUFWLElBQUFBLFVBQVUsV0FBVixZQUFBQSxVQUFVLENBQUVrRCxPQUFaLE1BQXdCQyxTQUE1RCxFQUF1RTtBQUNyRUYsWUFBQUEsUUFBUSxDQUFDckcsV0FBVCxHQUF1Qm9ELFVBQXZCLGFBQXVCQSxVQUF2Qix1QkFBdUJBLFVBQVUsQ0FBRWtELE9BQW5DO0FBQ0Q7O0FBQ0QsaUJBQU9ELFFBQVA7QUFDRDtBQUNGLE9BWEQsTUFXTyxJQUFJbEQsU0FBUyxJQUFJLFFBQWpCLEVBQTJCO0FBQ2hDO0FBQ0EsWUFBSSxDQUFDZ0QsTUFBTSxDQUFDQyxFQUFQLENBQVVsRyxlQUFWLEVBQTJCbUQsV0FBM0IsQ0FBTCxFQUE4QztBQUM1QyxjQUFJZ0QsU0FBUSxHQUFHO0FBQ2JuRyxZQUFBQSxlQUFlLEVBQUVtRDtBQURKLFdBQWY7O0FBR0EsY0FDRSxDQUFBQSxXQUFXLFNBQVgsSUFBQUEsV0FBVyxXQUFYLFlBQUFBLFdBQVcsQ0FBRWlELE9BQWIsTUFBeUIsSUFBekIsSUFDQSxDQUFBakQsV0FBVyxTQUFYLElBQUFBLFdBQVcsV0FBWCxZQUFBQSxXQUFXLENBQUVpRCxPQUFiLE1BQXlCQyxTQUYzQixFQUdFO0FBQ0FGLFlBQUFBLFNBQVEsQ0FBQ3JHLFdBQVQsR0FBdUJxRCxXQUF2QixhQUF1QkEsV0FBdkIsdUJBQXVCQSxXQUFXLENBQUVpRCxPQUFwQztBQUNEOztBQUNELGlCQUFPRCxTQUFQO0FBQ0Q7QUFDRjs7QUFDRCxhQUFPLElBQVA7QUFDRDs7OztFQTVDbUJuSCxhOztBQTRadEIsZUFBZVcsT0FBZiIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIEBEZXNjcmlwdHRpb2466KGo5Y2V57uE5Lu2XHJcbiAqIEB2ZXJzaW9uOlxyXG4gKiBAQXV0aG9yOiByeHpodVxyXG4gKiBARGF0ZTogMjAyMS0wNC0wOSAwOToxODozNFxyXG4gKiBATGFzdEVkaXRvcnM6IHJ4emh1XHJcbiAqIEBMYXN0RWRpdFRpbWU6IDIwMjEtMDQtMjMgMTU6MjM6NTRcclxuICovXHJcbmltcG9ydCBSZWFjdCwgeyBQdXJlQ29tcG9uZW50IH0gZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCB7XHJcbiAgRm9ybSxcclxuICBGb3JtUHJvcHMsXHJcbiAgTW9kYWwsXHJcbiAgRHJhd2VyLFxyXG4gIE1vZGFsUHJvcHMsXHJcbiAgRHJhd2VyUHJvcHMsXHJcbiAgbWVzc2FnZSxcclxufSBmcm9tIFwiYW50ZFwiO1xyXG5pbXBvcnQgeyBGb3JtSW5zdGFuY2UgfSBmcm9tIFwiYW50ZC9saWIvZm9ybVwiO1xyXG5pbXBvcnQgeyByZXF1ZXN0IH0gZnJvbSBcIkBiai1uc2MvbXNuL2xpYi91dGlsc1wiO1xyXG5pbXBvcnQgb21pdCBmcm9tIFwib21pdC5qc1wiO1xyXG5pbXBvcnQgQnV0dG9uIGZyb20gXCIuLi9idXR0b25cIjtcclxuaW1wb3J0IHN0eWxlcyBmcm9tIFwiLi9pbmRleC5sZXNzXCI7XHJcbmltcG9ydCB7IGdldExlc3MgfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcclxuaW1wb3J0IHtcclxuICBQbHVzQ2lyY2xlT3V0bGluZWQsXHJcbiAgQ2xvc2VDaXJjbGVPdXRsaW5lZCxcclxuICBDbG9zZU91dGxpbmVkLFxyXG4gIEV4cGFuZE91dGxpbmVkLFxyXG4gIENvbXByZXNzT3V0bGluZWQsXHJcbn0gZnJvbSBcIkBhbnQtZGVzaWduL2ljb25zXCI7XHJcbmltcG9ydCBQb3Bjb25maXJtIGZyb20gXCIuLi9wb3Bjb25maXJtXCI7XHJcbmludGVyZmFjZSBJRm9ybVByb3BzIGV4dGVuZHMgRm9ybVByb3BzIHtcclxuICBzaG93TW9kZWw/OiBcIm1vZGFsXCIgfCBcImRyYXdlclwiO1xyXG4gIG1vZGFsUHJvcHM/OiBNb2RhbFByb3BzO1xyXG4gIGRyYXdlclByb3BzPzogRHJhd2VyUHJvcHMgJiB7IG9uT2s/OiBhbnkgfTtcclxuICB1cmw/OiBzdHJpbmc7XHJcbiAgZW5jcnlwdEZpZWxkcz86IEFycmF5PFN0cmluZz47XHJcbiAgY2hhbmdlVmFsaWQ/OiBib29sZWFuOyAvL+aVsOaNruS/ruaUueWFs+mXreagoemqjFxyXG59XHJcblxyXG5jbGFzcyBOc2NGb3JtIGV4dGVuZHMgUHVyZUNvbXBvbmVudDxJRm9ybVByb3BzPiB7XHJcbiAgZm9ybVJlZiA9IFJlYWN0LmNyZWF0ZVJlZjxGb3JtSW5zdGFuY2U+KCk7XHJcbiAgc3RhdGUgPSB7XHJcbiAgICBmb3JtVmlzaWJsZTogZmFsc2UsXHJcbiAgICBmb3JtTW9kYWxQcm9wczoge30sXHJcbiAgICBmb3JtRHJhd2VyUHJvcHM6IHt9LFxyXG4gICAgaXNDaGFuZ2U6IGZhbHNlLFxyXG4gICAgZXhwYW5kOiBmYWxzZSxcclxuICB9O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcm9wcykge1xyXG4gICAgc3VwZXIocHJvcHMpO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcyhuZXh0UHJvcHMsIHByZXZTdGF0ZSkge1xyXG4gICAgY29uc3QgeyBtb2RhbFByb3BzLCBkcmF3ZXJQcm9wcywgc2hvd01vZGVsIH0gPSBuZXh0UHJvcHM7XHJcbiAgICBjb25zdCB7IGZvcm1Nb2RhbFByb3BzLCBmb3JtRHJhd2VyUHJvcHMgfSA9IHByZXZTdGF0ZTtcclxuICAgIGlmIChzaG93TW9kZWwgPT0gXCJtb2RhbFwiKSB7XHJcbiAgICAgIC8vIEpTT04uc3RyaW5naWZ5KGZvcm1Nb2RhbFByb3BzKSAhPT0gSlNPTi5zdHJpbmdpZnkobW9kYWxQcm9wcylcclxuICAgICAgaWYgKCFPYmplY3QuaXMoZm9ybU1vZGFsUHJvcHMsIG1vZGFsUHJvcHMpKSB7XHJcbiAgICAgICAgbGV0IG5ld1N0YXRlID0ge1xyXG4gICAgICAgICAgZm9ybURyYXdlclByb3BzOiBtb2RhbFByb3BzLFxyXG4gICAgICAgIH0gYXMgYW55O1xyXG4gICAgICAgIGlmIChtb2RhbFByb3BzPy52aXNpYmxlICE9PSBudWxsICYmIG1vZGFsUHJvcHM/LnZpc2libGUgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgbmV3U3RhdGUuZm9ybVZpc2libGUgPSBtb2RhbFByb3BzPy52aXNpYmxlO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbmV3U3RhdGU7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAoc2hvd01vZGVsID09IFwiZHJhd2VyXCIpIHtcclxuICAgICAgLy8gSlNPTi5zdHJpbmdpZnkoZm9ybURyYXdlclByb3BzKSAhPT0gSlNPTi5zdHJpbmdpZnkoZHJhd2VyUHJvcHMpXHJcbiAgICAgIGlmICghT2JqZWN0LmlzKGZvcm1EcmF3ZXJQcm9wcywgZHJhd2VyUHJvcHMpKSB7XHJcbiAgICAgICAgbGV0IG5ld1N0YXRlID0ge1xyXG4gICAgICAgICAgZm9ybURyYXdlclByb3BzOiBkcmF3ZXJQcm9wcyxcclxuICAgICAgICB9IGFzIGFueTtcclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICBkcmF3ZXJQcm9wcz8udmlzaWJsZSAhPT0gbnVsbCAmJlxyXG4gICAgICAgICAgZHJhd2VyUHJvcHM/LnZpc2libGUgIT09IHVuZGVmaW5lZFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgbmV3U3RhdGUuZm9ybVZpc2libGUgPSBkcmF3ZXJQcm9wcz8udmlzaWJsZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG5ld1N0YXRlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIC8v6I635Y+W5a+55bqU5a2X5q615ZCN55qE6ZSZ6K+v5L+h5oGvXHJcbiAgZ2V0RmllbGRFcnJvcihuYW1lKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmdldEZpZWxkRXJyb3IobmFtZSk7XHJcbiAgfVxyXG5cclxuICAvL+iOt+WPluWvueW6lOWtl+auteWunuS+i1xyXG4gIGdldEZpZWxkSW5zdGFuY2UobmFtZSkge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5nZXRGaWVsZEluc3RhbmNlKG5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLy/ojrflj5bkuIDnu4TlrZfmrrXlkI3lr7nlupTnmoTplJnor6/kv6Hmga/vvIzov5Tlm57kuLrmlbDnu4TlvaLlvI9cclxuICBnZXRGaWVsZHNFcnJvcigpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1SZWYuY3VycmVudD8uZ2V0RmllbGRzRXJyb3IoKTtcclxuICB9XHJcblxyXG4gIC8v6I635Y+W5LiA57uE5a2X5q615ZCN5a+55bqU55qE5YC877yM5Lya5oyJ54Wn5a+55bqU57uT5p6E6L+U5ZueXHJcbiAgZ2V0RmllbGRzVmFsdWUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmdldEZpZWxkc1ZhbHVlKCk7XHJcbiAgfVxyXG5cclxuICAvL+iOt+WPluWvueW6lOWtl+auteWQjeeahOWAvFxyXG4gIGdldEZpZWxkVmFsdWUobmFtZSkge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5nZXRGaWVsZFZhbHVlKG5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLy/mo4Dmn6XkuIDnu4TlrZfmrrXmmK/lkKbooqvnlKjmiLfmk43kvZzov4dcclxuICBpc0ZpZWxkc1RvdWNoZWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmlzRmllbGRzVG91Y2hlZCgpO1xyXG4gIH1cclxuXHJcbiAgLy/mo4Dmn6Xlr7nlupTlrZfmrrXmmK/lkKbooqvnlKjmiLfmk43kvZzov4dcclxuICBpc0ZpZWxkVG91Y2hlZChuYW1lKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmlzRmllbGRUb3VjaGVkKG5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLy/mo4Dmn6XkuIDnu4TlrZfmrrXmmK/lkKbmraPlnKjmoKHpqoxcclxuICBpc0ZpZWxkVmFsaWRhdGluZyhuYW1lKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LmlzRmllbGRWYWxpZGF0aW5nKG5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLy/ph43nva7kuIDnu4TlrZfmrrXliLBcclxuICByZXNldEZpZWxkcygpIHtcclxuICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5yZXNldEZpZWxkcygpO1xyXG4gIH1cclxuXHJcbiAgc2Nyb2xsVG9GaWVsZChuYW1lLCBvcHRpb25zKSB7XHJcbiAgICB0aGlzLmZvcm1SZWYuY3VycmVudD8uc2Nyb2xsVG9GaWVsZChuYW1lLCBvcHRpb25zKTtcclxuICB9XHJcblxyXG4gIHNldEZpZWxkcyhmaWxkcykge1xyXG4gICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnNldEZpZWxkcyhmaWxkcyk7XHJcbiAgfVxyXG5cclxuICBzZXRGaWVsZHNWYWx1ZSh2YWx1ZXMpIHtcclxuICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5zZXRGaWVsZHNWYWx1ZSh2YWx1ZXMpO1xyXG4gIH1cclxuXHJcbiAgc3VibWl0KCkge1xyXG4gICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnN1Ym1pdCgpO1xyXG4gIH1cclxuXHJcbiAgb25TdWJtaXQoXHJcbiAgICB1cmw/OiBzdHJpbmcsXHJcbiAgICBvcHRpb25zPzogYW55LFxyXG4gICAgY2FsbGJhY2s/OiAocmVzPzogYW55KSA9PiB2b2lkLFxyXG4gICAgbXNnPzogYm9vbGVhblxyXG4gICkge1xyXG4gICAgY29uc3QgeyB1cmw6IHByb3BzVXJsLCBlbmNyeXB0RmllbGRzOiBlbmNyeXB0UHJvcHBzID0gW10gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpZiAoIXVybCAmJiAhcHJvcHNVcmwpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKFwi5rKh5pyJ5LiK5Lyg55qEdXJsIVwiKTtcclxuICAgIH1cclxuICAgIGNvbnN0IHsgbWV0aG9kID0gXCJwb3N0XCIgfSA9IG9wdGlvbnM7XHJcbiAgICBsZXQgcmVxdWVzdFVybCA9IHVybCA/IHVybCA6IHByb3BzVXJsO1xyXG4gICAgbGV0IHJlcXVlc3REYXRhID0gdGhpcy5mb3JtUmVmLmN1cnJlbnQuZ2V0RmllbGRzVmFsdWUoKTtcclxuICAgIGxldCByZXF1ZXN0RW5jcnlwdCA9IGVuY3J5cHRQcm9wcHM7XHJcbiAgICBsZXQgcmVxdWVzdFBhcmFtID0geyBtZXRob2Q6IG1ldGhvZCwgZGF0YTogcmVxdWVzdERhdGEgfSBhcyB7IGRhdGE6IGFueSB9O1xyXG4gICAgaWYgKG9wdGlvbnMpIHtcclxuICAgICAgY29uc3QgeyBkYXRhLCBlbmNyeXB0RmllbGRzLCAuLi5wYXJhbXMgfSA9IG9wdGlvbnM7XHJcbiAgICAgIHJlcXVlc3RQYXJhbSA9IHsgLi4ucmVxdWVzdFBhcmFtLCAuLi5wYXJhbXMgfTtcclxuICAgICAgaWYgKGRhdGEpIHtcclxuICAgICAgICBkZWxldGUgcmVxdWVzdFBhcmFtLmRhdGE7XHJcbiAgICAgICAgaWYgKG1ldGhvZC50b0xvd2VyQ2FzZSgpID09IFwiZ2V0XCIpIHtcclxuICAgICAgICAgIHJlcXVlc3RQYXJhbSA9IHsgLi4ucmVxdWVzdFBhcmFtLCAuLi5wYXJhbXMsIHBhcmFtczogZGF0YSB9O1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXF1ZXN0UGFyYW0gPSB7IC4uLnJlcXVlc3RQYXJhbSwgLi4ucGFyYW1zLCBkYXRhOiBkYXRhIH07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmIChlbmNyeXB0RmllbGRzKSB7XHJcbiAgICAgICAgcmVxdWVzdEVuY3J5cHQgPSBlbmNyeXB0RmllbGRzO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmVxdWVzdChyZXF1ZXN0VXJsLCB7XHJcbiAgICAgIC4uLnJlcXVlc3RQYXJhbSxcclxuICAgICAgZW5jcnlwdEZpZWxkczogcmVxdWVzdEVuY3J5cHQsXHJcbiAgICB9KVxyXG4gICAgICAudGhlbihmdW5jdGlvbiAocmVzOiBhbnkpIHtcclxuICAgICAgICBjb25zdCB7IGNvZGUgfSA9IHJlcztcclxuICAgICAgICBpZiAobXNnKSB7XHJcbiAgICAgICAgICBpZiAoY29kZSA9PT0gMjAwKSB7XHJcbiAgICAgICAgICAgIG1lc3NhZ2Uuc3VjY2VzcyhcIuaPkOS6pOaIkOWKn1wiKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIG1lc3NhZ2UuZXJyb3IoXCLmj5DkuqTlpLHotKVcIik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNhbGxiYWNrICYmIGNhbGxiYWNrKHJlcyk7XHJcbiAgICAgIH0pXHJcbiAgICAgIC5jYXRjaChmdW5jdGlvbiAoZXJyb3I6IGFueSkge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiZXJyb3JcIiwgZXJyb3IpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHZhbGlkYXRlRmllbGRzKG5hbWUpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1SZWYuY3VycmVudC52YWxpZGF0ZUZpZWxkcyhuYW1lKTtcclxuICB9XHJcblxyXG4gIGhpZGUoZSkge1xyXG4gICAgY29uc3QgeyBpc0NoYW5nZSB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGNvbnN0IHtcclxuICAgICAgY2hhbmdlVmFsaWQgPSB0cnVlLFxyXG4gICAgICBzaG93TW9kZWwsXHJcbiAgICAgIG1vZGFsUHJvcHMgPSB7fSxcclxuICAgICAgZHJhd2VyUHJvcHMgPSB7fSxcclxuICAgIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgbGV0IF90aGlzID0gdGhpcztcclxuICAgIGNvbnN0IHsgb25DYW5jZWwgfSA9IG1vZGFsUHJvcHM7XHJcbiAgICBjb25zdCB7IG9uQ2xvc2UgfSA9IGRyYXdlclByb3BzO1xyXG4gICAgaWYgKGNoYW5nZVZhbGlkICYmIGlzQ2hhbmdlKSB7XHJcbiAgICAgIE1vZGFsLmNvbmZpcm0oe1xyXG4gICAgICAgIHRpdGxlOiBcIuW9k+WJjeiusOW9leW3suS/ruaUueWwmuacquS/neWtmO+8jOehruWumuimgeaUvuW8g+S/ruaUueWQl++8n1wiLFxyXG4gICAgICAgIGNhbmNlbFRleHQ6IFwi5Y+W5raIXCIsXHJcbiAgICAgICAgb2tUZXh0OiBcIuehruWumlwiLFxyXG4gICAgICAgIGNlbnRlcmVkOiB0cnVlLFxyXG4gICAgICAgIG9uT2soKSB7XHJcbiAgICAgICAgICBpZiAoc2hvd01vZGVsID09IFwiZHJhd2VyXCIgJiYgb25DbG9zZSkge1xyXG4gICAgICAgICAgICBvbkNsb3NlKGUpO1xyXG4gICAgICAgICAgfSBlbHNlIGlmIChzaG93TW9kZWwgPT0gXCJtb2RhbFwiICYmIG9uQ2FuY2VsKSB7XHJcbiAgICAgICAgICAgIG9uQ2FuY2VsKGUpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgX3RoaXMuaGlkZUZvcm0oKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChzaG93TW9kZWwgPT0gXCJkcmF3ZXJcIiAmJiBvbkNsb3NlKSB7XHJcbiAgICAgICAgb25DbG9zZShlKTtcclxuICAgICAgfSBlbHNlIGlmIChzaG93TW9kZWwgPT0gXCJtb2RhbFwiICYmIG9uQ2FuY2VsKSB7XHJcbiAgICAgICAgb25DYW5jZWwoZSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgX3RoaXMuaGlkZUZvcm0oKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaGlkZUZvcm0ocmVzZXRWYWx1ZSA9IHRydWUpIHtcclxuICAgIHRoaXMuc2V0U3RhdGUoXHJcbiAgICAgIHtcclxuICAgICAgICBmb3JtVmlzaWJsZTogZmFsc2UsXHJcbiAgICAgICAgaXNDaGFuZ2U6IGZhbHNlLFxyXG4gICAgICB9LFxyXG4gICAgICAoKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc2V0VmFsdWUpIHtcclxuICAgICAgICAgIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5yZXNldEZpZWxkcygpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHNob3dGb3JtKHZhbHVlPzogYW55LCByZXNldFZhbHVlID0gdHJ1ZSkge1xyXG4gICAgdGhpcy5zZXRTdGF0ZShcclxuICAgICAge1xyXG4gICAgICAgIGZvcm1WaXNpYmxlOiB0cnVlLFxyXG4gICAgICAgIGlzQ2hhbmdlOiBmYWxzZSxcclxuICAgICAgfSxcclxuICAgICAgKCkgPT4ge1xyXG4gICAgICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICAgICAgdGhpcy5mb3JtUmVmLmN1cnJlbnQ/LnNldEZpZWxkc1ZhbHVlKHZhbHVlKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgaWYgKHJlc2V0VmFsdWUpIHRoaXMuZm9ybVJlZi5jdXJyZW50Py5yZXNldEZpZWxkcygpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGNsb25lRWxlbWVudChpdGVtLCBpbmRleCA9IDApIHtcclxuICAgIGxldCBfdGhpcyA9IHRoaXM7XHJcbiAgICBpZiAodHlwZW9mIGl0ZW0gPT0gXCJzdHJpbmdcIikgcmV0dXJuIGl0ZW07XHJcbiAgICBsZXQgcHJvcHMgPSB7fSBhcyB7IGtleTogbnVtYmVyOyBjaGlsZHJlbjogYW55IH07XHJcbiAgICBwcm9wcy5rZXkgPSBpbmRleDtcclxuICAgIHRyeSB7XHJcbiAgICAgIGlmIChpdGVtLnByb3BzICYmIGl0ZW0ucHJvcHMuY2hpbGRyZW4pIHtcclxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShpdGVtLnByb3BzLmNoaWxkcmVuKSkge1xyXG4gICAgICAgICAgcHJvcHMuY2hpbGRyZW4gPSBSZWFjdC5DaGlsZHJlbi5tYXAoXHJcbiAgICAgICAgICAgIGl0ZW0ucHJvcHMuY2hpbGRyZW4sXHJcbiAgICAgICAgICAgIGZ1bmN0aW9uIChjaGlsZCwgaW5kZXgpIHtcclxuICAgICAgICAgICAgICByZXR1cm4gX3RoaXMuY2xvbmVFbGVtZW50KGNoaWxkLCBpbmRleCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHByb3BzLmNoaWxkcmVuID0gdGhpcy5jbG9uZUVsZW1lbnQoaXRlbS5wcm9wcy5jaGlsZHJlbiwgMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBSZWFjdC5jbG9uZUVsZW1lbnQoaXRlbSwgcHJvcHMpO1xyXG4gICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICB9XHJcbiAgb25WYWx1ZXNDaGFuZ2UodmFsLCBhbGxWYWwpIHtcclxuICAgIGNvbnN0IHsgb25WYWx1ZXNDaGFuZ2UgfSA9IHRoaXMucHJvcHM7XHJcbiAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgaXNDaGFuZ2U6IHRydWUsXHJcbiAgICB9KTtcclxuICAgIG9uVmFsdWVzQ2hhbmdlICYmIG9uVmFsdWVzQ2hhbmdlKHZhbCwgYWxsVmFsKTtcclxuICB9XHJcbiAgcmVuZGVyUGFuZWwobmV3Q2hpbGRyZW4sIHByb3BzKSB7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHNob3dNb2RlbCxcclxuICAgICAgZHJhd2VyUHJvcHMgPSB7fSxcclxuICAgICAgbW9kYWxQcm9wcyA9IHt9LFxyXG4gICAgICBjaGFuZ2VWYWxpZCA9IHRydWUsXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgZm9ybVZpc2libGUgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBjb25zdCBsYXlvdXQgPSB7XHJcbiAgICAgIGxhYmVsQ29sOiB7IHNwYW46IDQgfSxcclxuICAgICAgd3JhcHBlckNvbDogeyBzcGFuOiAyMCB9LFxyXG4gICAgfTtcclxuICAgIGxldCBvcmd0aXRsZSA9IHNob3dNb2RlbCA9PSBcIm1vZGFsXCIgPyBtb2RhbFByb3BzLnRpdGxlIDogZHJhd2VyUHJvcHMudGl0bGU7XHJcbiAgICBjb25zdCBjbG9zYWJsZSA9XHJcbiAgICAgIHNob3dNb2RlbCA9PSBcIm1vZGFsXCIgPyBtb2RhbFByb3BzLmNsb3NhYmxlIDogZHJhd2VyUHJvcHMuY2xvc2FibGU7XHJcbiAgICBjb25zdCB0aXRsZSA9IChcclxuICAgICAgPGRpdiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcInRpdGxlXCIpfT5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiaWNvbnNcIil9PlxyXG4gICAgICAgICAgeyF0aGlzLnN0YXRlLmV4cGFuZCAmJiAoXHJcbiAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldFN0YXRlKHsgZXhwYW5kOiB0cnVlIH0pO1xyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJpY29uXCIpfVxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPEV4cGFuZE91dGxpbmVkIC8+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgKX1cclxuICAgICAgICAgIHt0aGlzLnN0YXRlLmV4cGFuZCAmJiAoXHJcbiAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldFN0YXRlKHsgZXhwYW5kOiBmYWxzZSB9KTtcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiaWNvblwiKX1cclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDxDb21wcmVzc091dGxpbmVkIC8+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgKX1cclxuICAgICAgICAgIHtjbG9zYWJsZSAhPT0gZmFsc2UgJiYgKFxyXG4gICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgb25DbGljaz17dGhpcy5oaWRlLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJpY29uXCIpfVxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7IG1hcmdpblJpZ2h0OiAwIH19XHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICA8Q2xvc2VPdXRsaW5lZCAvPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICl9XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcInRpdGxlLWNvbnRlbnRcIil9Pntvcmd0aXRsZX08L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICApO1xyXG4gICAgY29uc3QgZm9vdGVyID0gKFxyXG4gICAgICA8ZGl2IGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiZm9vdGVyXCIpfT5cclxuICAgICAgICA8QnV0dG9uXHJcbiAgICAgICAgICB0eXBlPVwicHJpbWFyeVwiXHJcbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGZvcm1WYWx1ZSA9IHRoaXMuZm9ybVJlZi5jdXJyZW50Py5nZXRGaWVsZHNWYWx1ZSgpO1xyXG4gICAgICAgICAgICBpZiAoc2hvd01vZGVsID09IFwibW9kYWxcIikge1xyXG4gICAgICAgICAgICAgIG1vZGFsUHJvcHMub25PayAmJiBtb2RhbFByb3BzLm9uT2soZm9ybVZhbHVlKTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBkcmF3ZXJQcm9wcy5vbk9rICYmIGRyYXdlclByb3BzLm9uT2soZm9ybVZhbHVlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGljb249ezxQbHVzQ2lyY2xlT3V0bGluZWQgLz59XHJcbiAgICAgICAgPlxyXG4gICAgICAgICAg5L+d5a2YXHJcbiAgICAgICAgPC9CdXR0b24+XHJcblxyXG4gICAgICAgIDxCdXR0b25cclxuICAgICAgICAgIG9uQ2xpY2s9e3RoaXMuaGlkZS5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJidXR0b24tbWFyZ2luXCIpfVxyXG4gICAgICAgICAgaWNvbj17PENsb3NlQ2lyY2xlT3V0bGluZWQgLz59XHJcbiAgICAgICAgPlxyXG4gICAgICAgICAg5Y+W5raIXHJcbiAgICAgICAgPC9CdXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgKTtcclxuICAgIGlmIChzaG93TW9kZWwgJiYgc2hvd01vZGVsID09IFwibW9kYWxcIikge1xyXG4gICAgICBsZXQgbmV3TW9kYWxQcm9wcyA9IG9taXQobW9kYWxQcm9wcywgW1widmlzaWJsZVwiXSk7XHJcbiAgICAgIG5ld01vZGFsUHJvcHMgPSB7IGNlbnRlcmVkOiB0cnVlLCBmb290ZXIsIC4uLm5ld01vZGFsUHJvcHMgfTtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICA8TW9kYWxcclxuICAgICAgICAgIHZpc2libGU9e2Zvcm1WaXNpYmxlfVxyXG4gICAgICAgICAgZm9vdGVyPXtmb290ZXJ9XHJcbiAgICAgICAgICB7Li4ubmV3TW9kYWxQcm9wc31cclxuICAgICAgICAgIG9uQ2FuY2VsPXt0aGlzLmhpZGUuYmluZCh0aGlzKX1cclxuICAgICAgICAgIG1hc2tDbG9zYWJsZT17IXRoaXMuc3RhdGUuaXNDaGFuZ2V9XHJcbiAgICAgICAgICB0aXRsZT17dGl0bGV9XHJcbiAgICAgICAgICBjbG9zYWJsZT17ZmFsc2V9XHJcbiAgICAgICAgICBjbGFzc05hbWU9e3RoaXMuc3RhdGUuZXhwYW5kID8gZ2V0TGVzcyhzdHlsZXMsIFwiYWxsc3JlZW5cIikgOiBcIlwifVxyXG4gICAgICAgICAgd2lkdGg9e3RoaXMuc3RhdGUuZXhwYW5kID8gXCIxMDB2d1wiIDogbmV3TW9kYWxQcm9wcy53aWR0aH1cclxuICAgICAgICAgIHN0eWxlPXt7IG1heFdpZHRoOiBcIjEwMHZ3XCIgfX1cclxuICAgICAgICA+XHJcbiAgICAgICAgICA8Rm9ybVxyXG4gICAgICAgICAgICByZWY9e3RoaXMuZm9ybVJlZn1cclxuICAgICAgICAgICAgey4uLmxheW91dH1cclxuICAgICAgICAgICAgey4uLnByb3BzfVxyXG4gICAgICAgICAgICBvblZhbHVlc0NoYW5nZT17dGhpcy5vblZhbHVlc0NoYW5nZS5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgICBwcmVzZXJ2ZT17ZmFsc2V9XHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgIDwvTW9kYWw+XHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2UgaWYgKHNob3dNb2RlbCAmJiBzaG93TW9kZWwgPT0gXCJkcmF3ZXJcIikge1xyXG4gICAgICBsZXQgbmV3RHJhd2VyUHJvcHMgPSBvbWl0KGRyYXdlclByb3BzLCBbXCJ2aXNpYmxlXCIsIFwib25Pa1wiXSk7XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgPERyYXdlclxyXG4gICAgICAgICAgdmlzaWJsZT17Zm9ybVZpc2libGV9XHJcbiAgICAgICAgICBmb290ZXI9e2Zvb3Rlcn1cclxuICAgICAgICAgIHsuLi5uZXdEcmF3ZXJQcm9wc31cclxuICAgICAgICAgIG9uQ2xvc2U9e3RoaXMuaGlkZS5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgbWFza0Nsb3NhYmxlPXshdGhpcy5zdGF0ZS5pc0NoYW5nZX1cclxuICAgICAgICAgIHRpdGxlPXt0aXRsZX1cclxuICAgICAgICAgIGNsb3NhYmxlPXtmYWxzZX1cclxuICAgICAgICAgIHdpZHRoPXt0aGlzLnN0YXRlLmV4cGFuZCA/IFwiMTAwdndcIiA6IG5ld0RyYXdlclByb3BzLndpZHRofVxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxGb3JtXHJcbiAgICAgICAgICAgIHJlZj17dGhpcy5mb3JtUmVmfVxyXG4gICAgICAgICAgICB7Li4ubGF5b3V0fVxyXG4gICAgICAgICAgICB7Li4ucHJvcHN9XHJcbiAgICAgICAgICAgIG9uVmFsdWVzQ2hhbmdlPXt0aGlzLm9uVmFsdWVzQ2hhbmdlLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgIDwvRHJhd2VyPlxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIChcclxuICAgICAgICA8Rm9ybVxyXG4gICAgICAgICAgcmVmPXt0aGlzLmZvcm1SZWZ9XHJcbiAgICAgICAgICB7Li4ubGF5b3V0fVxyXG4gICAgICAgICAgey4uLnByb3BzfVxyXG4gICAgICAgICAgb25WYWx1ZXNDaGFuZ2U9e3RoaXMub25WYWx1ZXNDaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICAvPlxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuICByZW5kZXIoKSB7XHJcbiAgICBjb25zdCBfdGhpcyA9IHRoaXMsXHJcbiAgICAgIHsgY2hpbGRyZW4sIHNob3dNb2RlbCB9ID0gdGhpcy5wcm9wcztcclxuICAgIC8vIGNvbnN0IG5ld0NoaWxkcmVuID0gUmVhY3QuQ2hpbGRyZW4ubWFwKGNoaWxkcmVuLCBmdW5jdGlvbiAoY2hpbGQsIGluZGV4KSB7XHJcbiAgICAvLyAgIHJldHVybiBfdGhpcy5jbG9uZUVsZW1lbnQoY2hpbGQsIGluZGV4KTtcclxuICAgIC8vIH0pO1xyXG4gICAgY29uc3QgcHJvcHMgPSBvbWl0KHRoaXMucHJvcHMsIFtcclxuICAgICAgXCJmb3JtXCIsXHJcbiAgICAgIFwic2hvd01vZGVsXCIsXHJcbiAgICAgIFwibW9kYWxQcm9wc1wiLFxyXG4gICAgICBcImRyYXdlclByb3BzXCIsXHJcbiAgICAgIFwidXJsXCIsXHJcbiAgICAgIFwiZW5jcnlwdEZpZWxkc1wiLFxyXG4gICAgXSk7XHJcblxyXG4gICAgcmV0dXJuIDw+e3RoaXMucmVuZGVyUGFuZWwocHJvcHMuY2hpbGRyZW4sIHByb3BzKX08Lz47XHJcbiAgfVxyXG59XHJcbmV4cG9ydCBkZWZhdWx0IE5zY0Zvcm07XHJcbiJdfQ==
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
.footer {
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-direction: row-reverse;
|
|
4
|
+
.button-margin {
|
|
5
|
+
margin-right: 15px;
|
|
6
|
+
}
|
|
7
|
+
:global {
|
|
8
|
+
.ant-btn {
|
|
9
|
+
border-radius: 4px;
|
|
10
|
+
min-width: 80px;
|
|
11
|
+
min-height: 35px;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
.title {
|
|
16
|
+
display: flex;
|
|
17
|
+
flex-direction: row-reverse;
|
|
18
|
+
.icons {
|
|
19
|
+
display: flex;
|
|
20
|
+
margin-left: 15px;
|
|
21
|
+
.icon {
|
|
22
|
+
cursor: pointer;
|
|
23
|
+
margin-right: 10px;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
.title-content {
|
|
27
|
+
flex: 1;
|
|
28
|
+
display: flex;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.allsreen {
|
|
33
|
+
:global {
|
|
34
|
+
.ant-modal-content {
|
|
35
|
+
height: 100vh;
|
|
36
|
+
}
|
|
37
|
+
.ant-modal-body {
|
|
38
|
+
height: calc(100vh - 100px);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
package/lib/base/input/Number.js
CHANGED
|
@@ -106,7 +106,10 @@ var NSCInputNumber = /*#__PURE__*/function (_PureComponent) {
|
|
|
106
106
|
return /*#__PURE__*/React.createElement(_InputNumber, _extends({
|
|
107
107
|
value: this.state.value,
|
|
108
108
|
onChange: this.onChange.bind(this),
|
|
109
|
-
ref: this.ref
|
|
109
|
+
ref: this.ref,
|
|
110
|
+
style: {
|
|
111
|
+
width: "100%"
|
|
112
|
+
}
|
|
110
113
|
}, inputProps));
|
|
111
114
|
}
|
|
112
115
|
}]);
|
|
@@ -115,4 +118,4 @@ var NSCInputNumber = /*#__PURE__*/function (_PureComponent) {
|
|
|
115
118
|
}(PureComponent);
|
|
116
119
|
|
|
117
120
|
export { NSCInputNumber as default };
|
|
118
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
121
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Jhc2UvaW5wdXQvTnVtYmVyLnRzeCJdLCJuYW1lcyI6WyJSZWFjdCIsIlB1cmVDb21wb25lbnQiLCJvbWl0IiwiTlNDSW5wdXROdW1iZXIiLCJwcm9wcyIsImNyZWF0ZVJlZiIsInZhbHVlIiwib25DaGFuZ2UiLCJzZXRTdGF0ZSIsInN0YXRlIiwicmVmIiwiY3VycmVudCIsImZvY3VzIiwiYmx1ciIsImlucHV0UHJvcHMiLCJiaW5kIiwid2lkdGgiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU9BLEtBQVAsSUFBZ0JDLGFBQWhCLFFBQXFDLE9BQXJDO0FBR0EsT0FBT0MsSUFBUCxNQUFpQixTQUFqQjtBQUNBLE9BQU8sY0FBUDs7SUFHcUJDLGM7Ozs7O0FBRW5CLDBCQUFZQyxLQUFaLEVBQW1CO0FBQUE7O0FBQUE7O0FBQ2pCLDhCQUFNQSxLQUFOOztBQURpQix1RUFEYkosS0FBSyxDQUFDSyxTQUFOLEVBQ2E7O0FBQUEsNERBR1g7QUFDTkMsTUFBQUEsS0FBSyxFQUFFO0FBREQsS0FIVzs7QUFBQTtBQUVsQjs7OztXQUlELGtCQUFTQSxLQUFULEVBQWdCO0FBQ2QsVUFBUUMsUUFBUixHQUFxQixLQUFLSCxLQUExQixDQUFRRyxRQUFSOztBQUNBLFVBQUlBLFFBQUosRUFBYztBQUNaQSxRQUFBQSxRQUFRLENBQUNELEtBQUQsQ0FBUjtBQUNEOztBQUNELFdBQUtFLFFBQUwsQ0FBYztBQUNaRixRQUFBQSxLQUFLLEVBQUVBO0FBREssT0FBZDtBQUdEOzs7V0FDRCxvQkFBVztBQUNULGFBQU8sS0FBS0csS0FBTCxDQUFXSCxLQUFsQjtBQUNEOzs7V0FDRCxrQkFBU0EsS0FBVCxFQUFnQjtBQUNkLFdBQUtFLFFBQUwsQ0FBYztBQUNaRixRQUFBQSxLQUFLLEVBQUVBO0FBREssT0FBZDtBQUdEOzs7V0FDRCxpQkFBUTtBQUFBOztBQUNOLGdDQUFLSSxHQUFMLENBQVNDLE9BQVQsd0VBQWtCQyxLQUFsQjtBQUNEOzs7V0FDRCxnQkFBTztBQUFBOztBQUNMLGlDQUFLRixHQUFMLENBQVNDLE9BQVQsMEVBQWtCRSxJQUFsQjtBQUNEOzs7V0FDRCxrQkFBUztBQUNQLFVBQU1DLFVBQVUsR0FBR1osSUFBSSxDQUFDLEtBQUtFLEtBQU4sRUFBYSxDQUFDLFVBQUQsQ0FBYixDQUF2QjtBQUNBLDBCQUNFO0FBQ0UsUUFBQSxLQUFLLEVBQUUsS0FBS0ssS0FBTCxDQUFXSCxLQURwQjtBQUVFLFFBQUEsUUFBUSxFQUFFLEtBQUtDLFFBQUwsQ0FBY1EsSUFBZCxDQUFtQixJQUFuQixDQUZaO0FBR0UsUUFBQSxHQUFHLEVBQUUsS0FBS0wsR0FIWjtBQUlFLFFBQUEsS0FBSyxFQUFFO0FBQUVNLFVBQUFBLEtBQUssRUFBRTtBQUFUO0FBSlQsU0FLTUYsVUFMTixFQURGO0FBU0Q7Ozs7RUExQ3lDYixhOztTQUF2QkUsYyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIEBEZXNjcmlwdHRpb246XHJcbiAqIEB2ZXJzaW9uOlxyXG4gKiBAQXV0aG9yOiByeHpodVxyXG4gKiBARGF0ZTogMjAyMS0wNC0yMCAxNDo0MzowNVxyXG4gKiBATGFzdEVkaXRvcnM6IHJ4emh1XHJcbiAqIEBMYXN0RWRpdFRpbWU6IDIwMjEtMDQtMjMgMTY6MjE6MzlcclxuICovXHJcbmltcG9ydCBSZWFjdCwgeyBQdXJlQ29tcG9uZW50IH0gZnJvbSBcInJlYWN0XCI7XHJcblxyXG5pbXBvcnQgeyBJbnB1dE51bWJlciwgSW5wdXROdW1iZXJQcm9wcyB9IGZyb20gXCJhbnRkXCI7XHJcbmltcG9ydCBvbWl0IGZyb20gXCJvbWl0LmpzXCI7XHJcbmltcG9ydCBcIi4vaW5kZXgubGVzc1wiO1xyXG5pbnRlcmZhY2UgSUlucHV0TnVtYmVyUHJvcHMgZXh0ZW5kcyBJbnB1dE51bWJlclByb3BzIHt9XHJcblxyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBOU0NJbnB1dE51bWJlciBleHRlbmRzIFB1cmVDb21wb25lbnQ8SUlucHV0TnVtYmVyUHJvcHM+IHtcclxuICByZWYgPSBSZWFjdC5jcmVhdGVSZWY8YW55PigpO1xyXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgfVxyXG4gIHN0YXRlID0ge1xyXG4gICAgdmFsdWU6IFwiXCIsXHJcbiAgfTtcclxuICBvbkNoYW5nZSh2YWx1ZSkge1xyXG4gICAgY29uc3QgeyBvbkNoYW5nZSB9ID0gdGhpcy5wcm9wcztcclxuICAgIGlmIChvbkNoYW5nZSkge1xyXG4gICAgICBvbkNoYW5nZSh2YWx1ZSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgdmFsdWU6IHZhbHVlLFxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIGdldFZhbHVlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RhdGUudmFsdWU7XHJcbiAgfVxyXG4gIHNldFZhbHVlKHZhbHVlKSB7XHJcbiAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgdmFsdWU6IHZhbHVlLFxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIGZvY3VzKCkge1xyXG4gICAgdGhpcy5yZWYuY3VycmVudD8uZm9jdXMoKTtcclxuICB9XHJcbiAgYmx1cigpIHtcclxuICAgIHRoaXMucmVmLmN1cnJlbnQ/LmJsdXIoKTtcclxuICB9XHJcbiAgcmVuZGVyKCkge1xyXG4gICAgY29uc3QgaW5wdXRQcm9wcyA9IG9taXQodGhpcy5wcm9wcywgW1wib25DaGFuZ2VcIl0pO1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgPElucHV0TnVtYmVyXHJcbiAgICAgICAgdmFsdWU9e3RoaXMuc3RhdGUudmFsdWV9XHJcbiAgICAgICAgb25DaGFuZ2U9e3RoaXMub25DaGFuZ2UuYmluZCh0aGlzKX1cclxuICAgICAgICByZWY9e3RoaXMucmVmfVxyXG4gICAgICAgIHN0eWxlPXt7IHdpZHRoOiBcIjEwMCVcIiB9fVxyXG4gICAgICAgIHsuLi5pbnB1dFByb3BzfVxyXG4gICAgICAvPlxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIl19
|