nsc-react-component 2.2.11 → 2.2.14
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/button/index.js +3 -2
- package/lib/base/editor/index.d.ts +15 -0
- package/lib/base/editor/index.js +187 -0
- package/lib/base/editor/index.less +18 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +2 -1
- package/lib/page/BasePage/index.d.ts +2 -1
- package/lib/page/BasePage/index.js +48 -24
- package/lib/page/BasePage/index.module.less +15 -5
- package/package.json +5 -1
package/lib/base/button/index.js
CHANGED
|
@@ -2,7 +2,7 @@ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "functi
|
|
|
2
2
|
|
|
3
3
|
import "antd/es/button/style/css";
|
|
4
4
|
import _Button from "antd/es/button";
|
|
5
|
-
var _excluded = ["children", "defaultStyle", "loading", "pageType", "debounce"];
|
|
5
|
+
var _excluded = ["children", "defaultStyle", "loading", "pageType", "debounce", "recordShow"];
|
|
6
6
|
|
|
7
7
|
function _extends() { _extends = Object.assign || 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); }
|
|
8
8
|
|
|
@@ -102,6 +102,7 @@ var NSCButton = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
102
102
|
pageType = _this$props2.pageType,
|
|
103
103
|
_this$props2$debounce = _this$props2.debounce,
|
|
104
104
|
debounce = _this$props2$debounce === void 0 ? true : _this$props2$debounce,
|
|
105
|
+
recordShow = _this$props2.recordShow,
|
|
105
106
|
params = _objectWithoutProperties(_this$props2, _excluded);
|
|
106
107
|
|
|
107
108
|
var _config = config(),
|
|
@@ -157,4 +158,4 @@ var NSCButton = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
157
158
|
}(React.PureComponent);
|
|
158
159
|
|
|
159
160
|
export { NSCButton as default };
|
|
160
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
161
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Jhc2UvYnV0dG9uL2luZGV4LnRzeCJdLCJuYW1lcyI6WyJSZWFjdCIsInN0eWxlcyIsImNscyIsImNvbmZpZyIsImxvZGFzaCIsIk5TQ0J1dHRvbiIsInByb3BzIiwiYnV0dG9uTG9hZGluZyIsInN0b3JlTG9hZGlvbmciLCJkZWJvdW5jZSIsIm9uQ2xpY2siLCJkZWxheSIsImxlYWRpbmciLCJ0cmFpbGluZyIsImxvYWRpbmciLCJzZXRTdGF0ZSIsImZ1biIsImNoaWxkcmVuIiwiZGVmYXVsdFN0eWxlIiwicGFnZVR5cGUiLCJyZWNvcmRTaG93IiwicGFyYW1zIiwiYW50ZFN0eWxlIiwiY29sb3JUeXBlIiwidHlwZSIsImNsYXNzbmFtZSIsInN0YXRlIiwiYmluZCIsIm5leHRQcm9wcyIsInByZXZTdGF0ZSIsIm5ld1N0YXRlIiwiUHVyZUNvbXBvbmVudCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVNBLE9BQU8sS0FBS0EsS0FBWixNQUF1QixPQUF2QjtBQUNBLE9BQU9DLE1BQVAsTUFBbUIsY0FBbkI7QUFDQSxPQUFPQyxHQUFQLE1BQWdCLFlBQWhCO0FBQ0EsT0FBT0MsTUFBUCxNQUFtQixjQUFuQjtBQUNBLE9BQU9DLE1BQVAsTUFBbUIsUUFBbkI7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztJQVdxQkMsUzs7Ozs7QUFnQm5CLHFCQUFZQyxLQUFaLEVBQW1CO0FBQUE7O0FBQUE7O0FBQ2pCLDhCQUFNQSxLQUFOOztBQURpQiw0REFmWDtBQUNOQyxNQUFBQSxhQUFhLEVBQUUsS0FEVDtBQUVOQyxNQUFBQSxhQUFhLEVBQUU7QUFGVCxLQWVXOztBQUFBLDBEQVhiSixNQUFNLENBQUNLLFFBQVAsQ0FDSixZQUFNO0FBQ0osVUFBUUMsT0FBUixHQUFvQixNQUFLSixLQUF6QixDQUFRSSxPQUFSO0FBQ0FBLE1BQUFBLE9BQU8sSUFBSUEsT0FBTyxFQUFsQjtBQUNE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QUNELGFBQU8sSUFBUDtBQUNEOzs7O0VBdENvQzlCLEtBQUssQ0FBQytCLGE7O1NBQXhCMUIsUyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIEBEZXNjcmlwdHRpb246IOaMiemSrue7hOS7tlxyXG4gKiBAdmVyc2lvbjpcclxuICogQEF1dGhvcjogcnh6aHVcclxuICogQERhdGU6IDIwMjEtMDMtMjIgMTA6Mzk6MjlcclxuICogQExhc3RFZGl0b3JzOiByeHpodVxyXG4gKiBATGFzdEVkaXRUaW1lOiAyMDIxLTA1LTA4IDE5OjA5OjI2XHJcbiAqL1xyXG5pbXBvcnQgeyBCdXR0b24sIEJ1dHRvblByb3BzIH0gZnJvbSBcImFudGRcIjtcclxuaW1wb3J0ICogYXMgUmVhY3QgZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCBzdHlsZXMgZnJvbSBcIi4vaW5kZXgubGVzc1wiO1xyXG5pbXBvcnQgY2xzIGZyb20gXCJjbGFzc25hbWVzXCI7XHJcbmltcG9ydCBjb25maWcgZnJvbSBcIi4uLy4uL2NvbmZpZ1wiO1xyXG5pbXBvcnQgbG9kYXNoIGZyb20gXCJsb2Rhc2hcIjtcclxuXHJcbi8qKlxyXG4gKiBAcGFyYW0ge3N0cmluZ30gZGVmYXVsdFN0eWxlIOaYr+WQpuaYvuekuum7mOiupOagt+W8jyzkvKDlhaXpu5jorqTmoLflvI8sXHJcbiAqICAgdHlwZSDpu5jorqTmoLflvI/liIbkuLrkuKTnp43mjInpkq7mqKHlvI/vvIzpk7rmu6HlkozluKbovrnmoYbkuKTnp40gIGRlZmF1bHQgLGJvcmRlciDpu5jorqRwcmltYXJ5XHJcbiAqICAgY29sb3JUeXBlIOaMiemSruiDjOaZr+minOiJsuexu+WeiyBzdWNjZXNzIHN0cmVzcyBub3JtYWwgZGFuZ2VyIHdoaXRlIOm7mOiupG5vcm1hbFxyXG4gKi9cclxuXHJcbmludGVyZmFjZSBJQnV0dG9uUHJvcCB7XHJcbiAgZGVmYXVsdFN0eWxlPzoge1xyXG4gICAgdHlwZT86IFwicHJpbWFyeVwiIHwgXCJib3JkZXJcIjtcclxuICAgIGNvbG9yVHlwZT86IFwic3VjY2Vzc1wiIHwgXCJzdHJlc3NcIiB8IFwid2hpdGVcIiB8IFwiZGFuZ2VyXCIgfCBcIm5vcm1hbFwiO1xyXG4gIH07XHJcbiAgaWNvblR5cGU/OiBzdHJpbmc7XHJcbiAgW3Byb3BOYW1lOiBzdHJpbmddOiBhbnk7XHJcbn1cclxuXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5TQ0J1dHRvbiBleHRlbmRzIFJlYWN0LlB1cmVDb21wb25lbnQ8SUJ1dHRvblByb3A+IHtcclxuICBzdGF0ZSA9IHtcclxuICAgIGJ1dHRvbkxvYWRpbmc6IGZhbHNlLFxyXG4gICAgc3RvcmVMb2FkaW9uZzogZmFsc2UsXHJcbiAgfTtcclxuICBmdW4gPSBsb2Rhc2guZGVib3VuY2UoXHJcbiAgICAoKSA9PiB7XHJcbiAgICAgIGNvbnN0IHsgb25DbGljayB9ID0gdGhpcy5wcm9wcztcclxuICAgICAgb25DbGljayAmJiBvbkNsaWNrKCk7XHJcbiAgICB9LFxyXG4gICAgdGhpcy5wcm9wcy5kZWxheSB8fCAxMDAwLFxyXG4gICAge1xyXG4gICAgICBsZWFkaW5nOiB0cnVlLFxyXG4gICAgICB0cmFpbGluZzogZmFsc2UsXHJcbiAgICB9XHJcbiAgKTtcclxuICBjb25zdHJ1Y3Rvcihwcm9wcykge1xyXG4gICAgc3VwZXIocHJvcHMpO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcyhuZXh0UHJvcHMsIHByZXZTdGF0ZSkge1xyXG4gICAgY29uc3QgeyBsb2FkaW5nIH0gPSBuZXh0UHJvcHM7XHJcbiAgICBjb25zdCB7IHN0b3JlTG9hZGlvbmcsIGJ1dHRvbkxvYWRpbmcgfSA9IHByZXZTdGF0ZTtcclxuICAgIGlmIChsb2FkaW5nICE9PSBzdG9yZUxvYWRpb25nKSB7XHJcbiAgICAgIGxldCBuZXdTdGF0ZSA9IHtcclxuICAgICAgICBidXR0b25Mb2FkaW5nOiBsb2FkaW5nLFxyXG4gICAgICAgIHN0b3JlTG9hZGlvbmc6IGxvYWRpbmcsXHJcbiAgICAgIH07XHJcbiAgICAgIHJldHVybiBuZXdTdGF0ZTtcclxuICAgIH1cclxuICAgIGlmIChsb2FkaW5nID09PSBzdG9yZUxvYWRpb25nICYmIGJ1dHRvbkxvYWRpbmcgIT09IHN0b3JlTG9hZGlvbmcpIHtcclxuICAgICAgbGV0IG5ld1N0YXRlID0ge1xyXG4gICAgICAgIGJ1dHRvbkxvYWRpbmc6IGJ1dHRvbkxvYWRpbmcsXHJcbiAgICAgICAgc3RvcmVMb2FkaW9uZzogYnV0dG9uTG9hZGluZyxcclxuICAgICAgfTtcclxuICAgICAgcmV0dXJuIG5ld1N0YXRlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICBzZXRMb2FkaW5nKGxvYWRpbmc6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICBidXR0b25Mb2FkaW5nOiBsb2FkaW5nLFxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIG9uQ2xpY2soKSB7XHJcbiAgICBjb25zdCB7IGRlYm91bmNlID0gdHJ1ZSwgb25DbGljayB9ID0gdGhpcy5wcm9wcztcclxuICAgIGlmIChkZWJvdW5jZSkge1xyXG4gICAgICB0aGlzLmZ1bigpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgb25DbGljayAmJiBvbkNsaWNrKCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IHtcclxuICAgICAgY2hpbGRyZW4sXHJcbiAgICAgIGRlZmF1bHRTdHlsZSxcclxuICAgICAgbG9hZGluZyxcclxuICAgICAgcGFnZVR5cGUsXHJcbiAgICAgIGRlYm91bmNlID0gdHJ1ZSxcclxuICAgICAgcmVjb3JkU2hvdyxcclxuICAgICAgLi4ucGFyYW1zXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGxldCB7IGFudGRTdHlsZSB9ID0gY29uZmlnKCk7XHJcbiAgICBpZiAoZGVmYXVsdFN0eWxlKSB7XHJcbiAgICAgIGNvbnN0IHsgY29sb3JUeXBlID0gXCJcIiwgdHlwZSA9IFwicHJpbWFyeVwiIH0gPSBkZWZhdWx0U3R5bGU7XHJcbiAgICAgIGxldCBjbGFzc25hbWUgPSBjb2xvclR5cGUgKyBcIl9cIiArIHR5cGU7XHJcbiAgICAgIHJldHVybiAoXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NscyhzdHlsZXNbXCJidXR0b25fYmFzZVwiXSwgc3R5bGVzW2NsYXNzbmFtZV0pfT5cclxuICAgICAgICAgIDxCdXR0b25cclxuICAgICAgICAgICAgey4uLnBhcmFtc31cclxuICAgICAgICAgICAgbG9hZGluZz17dGhpcy5zdGF0ZS5idXR0b25Mb2FkaW5nfVxyXG4gICAgICAgICAgICBvbkNsaWNrPXt0aGlzLm9uQ2xpY2suYmluZCh0aGlzKX1cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAge2NoaWxkcmVufVxyXG4gICAgICAgICAgPC9CdXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIDxCdXR0b25cclxuICAgICAgICAgIHsuLi5wYXJhbXN9XHJcbiAgICAgICAgICBsb2FkaW5nPXt0aGlzLnN0YXRlLmJ1dHRvbkxvYWRpbmd9XHJcbiAgICAgICAgICBvbkNsaWNrPXt0aGlzLm9uQ2xpY2suYmluZCh0aGlzKX1cclxuICAgICAgICA+XHJcbiAgICAgICAgICB7Y2hpbGRyZW59XHJcbiAgICAgICAgPC9CdXR0b24+XHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React, { Component } from "react";
|
|
2
|
+
import PropTypes from "prop-types";
|
|
3
|
+
import "react-draft-wysiwyg/dist/react-draft-wysiwyg.css";
|
|
4
|
+
export default class RichTextEditor extends Component<any, any> {
|
|
5
|
+
static propTypes: {
|
|
6
|
+
detail: PropTypes.Requireable<string>;
|
|
7
|
+
};
|
|
8
|
+
domEditor: React.RefObject<any>;
|
|
9
|
+
constructor(props: any);
|
|
10
|
+
componentDidUpdate(preProps: any): void;
|
|
11
|
+
getValue(): any;
|
|
12
|
+
onEditorStateChange: (editorState: any) => void;
|
|
13
|
+
uploadImageCallBack: (file: any) => void;
|
|
14
|
+
render(): JSX.Element;
|
|
15
|
+
}
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
2
|
+
|
|
3
|
+
var _excluded = ["disabled"];
|
|
4
|
+
|
|
5
|
+
function _extends() { _extends = Object.assign || 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); }
|
|
6
|
+
|
|
7
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
8
|
+
|
|
9
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
10
|
+
|
|
11
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
12
|
+
|
|
13
|
+
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); } }
|
|
14
|
+
|
|
15
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
16
|
+
|
|
17
|
+
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); }
|
|
18
|
+
|
|
19
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
20
|
+
|
|
21
|
+
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); }; }
|
|
22
|
+
|
|
23
|
+
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
|
|
24
|
+
|
|
25
|
+
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
26
|
+
|
|
27
|
+
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; } }
|
|
28
|
+
|
|
29
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
30
|
+
|
|
31
|
+
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; }
|
|
32
|
+
|
|
33
|
+
import React, { Component } from "react";
|
|
34
|
+
import PropTypes from "prop-types"; //@ts-ignore
|
|
35
|
+
|
|
36
|
+
import { EditorState, convertToRaw, ContentState } from "draft-js"; //@ts-ignore
|
|
37
|
+
|
|
38
|
+
import { Editor } from "react-draft-wysiwyg";
|
|
39
|
+
import draftToHtml from "draftjs-to-html";
|
|
40
|
+
import htmlToDraft from "html-to-draftjs";
|
|
41
|
+
import "react-draft-wysiwyg/dist/react-draft-wysiwyg.css"; // import file from 'nsc-file';
|
|
42
|
+
|
|
43
|
+
import styles from "./index.less";
|
|
44
|
+
import { getLess } from "../../utils";
|
|
45
|
+
|
|
46
|
+
// const { upload } = file;
|
|
47
|
+
var RichTextEditor = /*#__PURE__*/function (_Component) {
|
|
48
|
+
_inherits(RichTextEditor, _Component);
|
|
49
|
+
|
|
50
|
+
var _super = _createSuper(RichTextEditor);
|
|
51
|
+
|
|
52
|
+
// state = {
|
|
53
|
+
// editorState: EditorState.createEmpty(),
|
|
54
|
+
// editor: false,
|
|
55
|
+
// };
|
|
56
|
+
function RichTextEditor(props) {
|
|
57
|
+
var _this;
|
|
58
|
+
|
|
59
|
+
_classCallCheck(this, RichTextEditor);
|
|
60
|
+
|
|
61
|
+
_this = _super.call(this, props);
|
|
62
|
+
|
|
63
|
+
_defineProperty(_assertThisInitialized(_this), "domEditor", /*#__PURE__*/React.createRef());
|
|
64
|
+
|
|
65
|
+
_defineProperty(_assertThisInitialized(_this), "onEditorStateChange", function (editorState) {
|
|
66
|
+
var descrCount = draftToHtml(convertToRaw(editorState.getCurrentContent()));
|
|
67
|
+
|
|
68
|
+
_this.setState({
|
|
69
|
+
editorState: editorState
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
var onChange = _this.props.onChange;
|
|
73
|
+
onChange && onChange(descrCount);
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
_defineProperty(_assertThisInitialized(_this), "uploadImageCallBack", function (file) {// return new Promise(async (resolve, reject) => {
|
|
77
|
+
// const fileParams = {
|
|
78
|
+
// serviceName: 'eic-home-service',
|
|
79
|
+
// busiName: 'appuploadpicture',
|
|
80
|
+
// file: file,
|
|
81
|
+
// allowSuffixList: ['jpg', 'jpeg', 'png'],
|
|
82
|
+
// };
|
|
83
|
+
// const res: any = await upload(fileParams);
|
|
84
|
+
// resolve({
|
|
85
|
+
// data: {
|
|
86
|
+
// link: `/api/file/v1/files/image/${
|
|
87
|
+
// res.data.id
|
|
88
|
+
// }?token=${window.localStorage.getItem(
|
|
89
|
+
// 'token',
|
|
90
|
+
// )}&s=${window.localStorage.getItem('s')}`,
|
|
91
|
+
// },
|
|
92
|
+
// });
|
|
93
|
+
// });
|
|
94
|
+
});
|
|
95
|
+
|
|
96
|
+
var html = _this.props.value;
|
|
97
|
+
|
|
98
|
+
if (html) {
|
|
99
|
+
var contentBlock = htmlToDraft(html);
|
|
100
|
+
var contentState = ContentState.createFromBlockArray(contentBlock.contentBlocks);
|
|
101
|
+
var editorState = EditorState.createWithContent(contentState);
|
|
102
|
+
_this.state = {
|
|
103
|
+
editorState: editorState,
|
|
104
|
+
editor: false
|
|
105
|
+
};
|
|
106
|
+
} else {
|
|
107
|
+
_this.state = {
|
|
108
|
+
editorState: EditorState.createEmpty(),
|
|
109
|
+
editor: false
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
return _this;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
_createClass(RichTextEditor, [{
|
|
117
|
+
key: "componentDidUpdate",
|
|
118
|
+
value: function componentDidUpdate(preProps) {
|
|
119
|
+
if (preProps.value !== this.props.value) {
|
|
120
|
+
var html = this.props.value;
|
|
121
|
+
|
|
122
|
+
if (html) {
|
|
123
|
+
var contentBlock = htmlToDraft(html);
|
|
124
|
+
var contentState = ContentState.createFromBlockArray(contentBlock.contentBlocks);
|
|
125
|
+
var editorState = EditorState.createWithContent(contentState);
|
|
126
|
+
this.setState({
|
|
127
|
+
editorState: editorState
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
}, {
|
|
133
|
+
key: "getValue",
|
|
134
|
+
value: function getValue() {
|
|
135
|
+
var editorState = this.state.editorState;
|
|
136
|
+
return draftToHtml(convertToRaw(editorState.getCurrentContent()));
|
|
137
|
+
}
|
|
138
|
+
}, {
|
|
139
|
+
key: "render",
|
|
140
|
+
value: function render() {
|
|
141
|
+
var editorState = this.state.editorState;
|
|
142
|
+
|
|
143
|
+
var _this$props = this.props,
|
|
144
|
+
_this$props$disabled = _this$props.disabled,
|
|
145
|
+
disabled = _this$props$disabled === void 0 ? false : _this$props$disabled,
|
|
146
|
+
params = _objectWithoutProperties(_this$props, _excluded);
|
|
147
|
+
|
|
148
|
+
return /*#__PURE__*/React.createElement(Editor, _extends({
|
|
149
|
+
editorState: editorState,
|
|
150
|
+
editorStyle: {
|
|
151
|
+
border: "1px solid black",
|
|
152
|
+
minHeight: 200,
|
|
153
|
+
paddingLeft: 10
|
|
154
|
+
},
|
|
155
|
+
onEditorStateChange: this.onEditorStateChange,
|
|
156
|
+
wrapperClassName: getLess(styles, "wrapper"),
|
|
157
|
+
editorClassName: getLess(styles, "editor"),
|
|
158
|
+
ref: this.domEditor,
|
|
159
|
+
readOnly: disabled,
|
|
160
|
+
toolbar: {
|
|
161
|
+
options: ["inline", "blockType", "fontSize", "fontFamily", "list", "textAlign", "colorPicker", // 'link',
|
|
162
|
+
"emoji" // 'image',
|
|
163
|
+
// 'remove',
|
|
164
|
+
// 'history',
|
|
165
|
+
// 'embedded',
|
|
166
|
+
],
|
|
167
|
+
inline: {
|
|
168
|
+
inDropdown: true
|
|
169
|
+
} // image: {
|
|
170
|
+
// uploadCallback: uploadImageCallBack,
|
|
171
|
+
// alt: { present: true, mandatory: true },
|
|
172
|
+
// },
|
|
173
|
+
|
|
174
|
+
}
|
|
175
|
+
}, params));
|
|
176
|
+
}
|
|
177
|
+
}]);
|
|
178
|
+
|
|
179
|
+
return RichTextEditor;
|
|
180
|
+
}(Component);
|
|
181
|
+
|
|
182
|
+
_defineProperty(RichTextEditor, "propTypes", {
|
|
183
|
+
detail: PropTypes.string
|
|
184
|
+
});
|
|
185
|
+
|
|
186
|
+
export { RichTextEditor as default };
|
|
187
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Jhc2UvZWRpdG9yL2luZGV4LnRzeCJdLCJuYW1lcyI6WyJSZWFjdCIsIkNvbXBvbmVudCIsIlByb3BUeXBlcyIsIkVkaXRvclN0YXRlIiwiY29udmVydFRvUmF3IiwiQ29udGVudFN0YXRlIiwiRWRpdG9yIiwiZHJhZnRUb0h0bWwiLCJodG1sVG9EcmFmdCIsInN0eWxlcyIsImdldExlc3MiLCJSaWNoVGV4dEVkaXRvciIsInByb3BzIiwiY3JlYXRlUmVmIiwiZWRpdG9yU3RhdGUiLCJkZXNjckNvdW50IiwiZ2V0Q3VycmVudENvbnRlbnQiLCJzZXRTdGF0ZSIsIm9uQ2hhbmdlIiwiZmlsZSIsImh0bWwiLCJ2YWx1ZSIsImNvbnRlbnRCbG9jayIsImNvbnRlbnRTdGF0ZSIsImNyZWF0ZUZyb21CbG9ja0FycmF5IiwiY29udGVudEJsb2NrcyIsImNyZWF0ZVdpdGhDb250ZW50Iiwic3RhdGUiLCJlZGl0b3IiLCJjcmVhdGVFbXB0eSIsInByZVByb3BzIiwiZGlzYWJsZWQiLCJwYXJhbXMiLCJib3JkZXIiLCJtaW5IZWlnaHQiLCJwYWRkaW5nTGVmdCIsIm9uRWRpdG9yU3RhdGVDaGFuZ2UiLCJkb21FZGl0b3IiLCJvcHRpb25zIiwiaW5saW5lIiwiaW5Ecm9wZG93biIsImRldGFpbCIsInN0cmluZyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxPQUFPQSxLQUFQLElBQWdCQyxTQUFoQixRQUFpQyxPQUFqQztBQUNBLE9BQU9DLFNBQVAsTUFBc0IsWUFBdEIsQyxDQUNBOztBQUNBLFNBQVNDLFdBQVQsRUFBc0JDLFlBQXRCLEVBQW9DQyxZQUFwQyxRQUF3RCxVQUF4RCxDLENBQ0E7O0FBQ0EsU0FBU0MsTUFBVCxRQUF1QixxQkFBdkI7QUFDQSxPQUFPQyxXQUFQLE1BQXdCLGlCQUF4QjtBQUNBLE9BQU9DLFdBQVAsTUFBd0IsaUJBQXhCO0FBQ0EsT0FBTyxrREFBUCxD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LFVBQUFBLE1BQU0sRUFBRSxpQkFERztBQUVYQyxVQUFBQSxTQUFTLEVBQUUsR0FGQTtBQUdYQyxVQUFBQSxXQUFXLEVBQUU7QUFIRixTQUZmO0FBT0UsUUFBQSxtQkFBbUIsRUFBRSxLQUFLQyxtQkFQNUI7QUFRRSxRQUFBLGdCQUFnQixFQUFFMUIsT0FBTyxDQUFDRCxNQUFELEVBQVMsU0FBVCxDQVIzQjtBQVNFLFFBQUEsZUFBZSxFQUFFQyxPQUFPLENBQUNELE1BQUQsRUFBUyxRQUFULENBVDFCO0FBVUUsUUFBQSxHQUFHLEVBQUUsS0FBSzRCLFNBVlo7QUFXRSxRQUFBLFFBQVEsRUFBRU4sUUFYWjtBQVlFLFFBQUEsT0FBTyxFQUFFO0FBQ1BPLFVBQUFBLE9BQU8sRUFBRSxDQUNQLFFBRE8sRUFFUCxXQUZPLEVBR1AsVUFITyxFQUlQLFlBSk8sRUFLUCxNQUxPLEVBTVAsV0FOTyxFQU9QLGFBUE8sRUFRUDtBQUNBLGlCQVRPLENBVVA7QUFDQTtBQUNBO0FBQ0E7QUFiTyxXQURGO0FBZ0JQQyxVQUFBQSxNQUFNLEVBQUU7QUFBRUMsWUFBQUEsVUFBVSxFQUFFO0FBQWQsV0FoQkQsQ0FpQlA7QUFDQTtBQUNBO0FBQ0E7O0FBcEJPO0FBWlgsU0FrQ01SLE1BbENOLEVBREY7QUFzQ0Q7Ozs7RUEzSHlDL0IsUzs7Z0JBQXZCVSxjLGVBQ0E7QUFDakI4QixFQUFBQSxNQUFNLEVBQUV2QyxTQUFTLENBQUN3QztBQURELEM7O1NBREEvQixjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IENvbXBvbmVudCB9IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gXCJwcm9wLXR5cGVzXCI7XHJcbi8vQHRzLWlnbm9yZVxyXG5pbXBvcnQgeyBFZGl0b3JTdGF0ZSwgY29udmVydFRvUmF3LCBDb250ZW50U3RhdGUgfSBmcm9tIFwiZHJhZnQtanNcIjtcclxuLy9AdHMtaWdub3JlXHJcbmltcG9ydCB7IEVkaXRvciB9IGZyb20gXCJyZWFjdC1kcmFmdC13eXNpd3lnXCI7XHJcbmltcG9ydCBkcmFmdFRvSHRtbCBmcm9tIFwiZHJhZnRqcy10by1odG1sXCI7XHJcbmltcG9ydCBodG1sVG9EcmFmdCBmcm9tIFwiaHRtbC10by1kcmFmdGpzXCI7XHJcbmltcG9ydCBcInJlYWN0LWRyYWZ0LXd5c2l3eWcvZGlzdC9yZWFjdC1kcmFmdC13eXNpd3lnLmNzc1wiO1xyXG4vLyBpbXBvcnQgZmlsZSBmcm9tICduc2MtZmlsZSc7XHJcbmltcG9ydCBzdHlsZXMgZnJvbSBcIi4vaW5kZXgubGVzc1wiO1xyXG5pbXBvcnQgeyBnZXRMZXNzIH0gZnJvbSBcIi4uLy4uL3V0aWxzXCI7XHJcbmltcG9ydCBjbHMgZnJvbSBcImNsYXNzbmFtZXNcIjtcclxuXHJcbi8vIGNvbnN0IHsgdXBsb2FkIH0gPSBmaWxlO1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSaWNoVGV4dEVkaXRvciBleHRlbmRzIENvbXBvbmVudDxhbnksIGFueT4ge1xyXG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XHJcbiAgICBkZXRhaWw6IFByb3BUeXBlcy5zdHJpbmcsXHJcbiAgfTtcclxuICBkb21FZGl0b3IgPSBSZWFjdC5jcmVhdGVSZWY8YW55PigpO1xyXG5cclxuICAvLyBzdGF0ZSA9IHtcclxuICAvLyAgIGVkaXRvclN0YXRlOiBFZGl0b3JTdGF0ZS5jcmVhdGVFbXB0eSgpLFxyXG4gIC8vICAgZWRpdG9yOiBmYWxzZSxcclxuICAvLyB9O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcm9wczogYW55KSB7XHJcbiAgICBzdXBlcihwcm9wcyk7XHJcbiAgICBjb25zdCBodG1sID0gdGhpcy5wcm9wcy52YWx1ZTtcclxuICAgIGlmIChodG1sKSB7XHJcbiAgICAgIGNvbnN0IGNvbnRlbnRCbG9jayA9IGh0bWxUb0RyYWZ0KGh0bWwpO1xyXG4gICAgICBjb25zdCBjb250ZW50U3RhdGUgPSBDb250ZW50U3RhdGUuY3JlYXRlRnJvbUJsb2NrQXJyYXkoXHJcbiAgICAgICAgY29udGVudEJsb2NrLmNvbnRlbnRCbG9ja3NcclxuICAgICAgKTtcclxuICAgICAgY29uc3QgZWRpdG9yU3RhdGUgPSBFZGl0b3JTdGF0ZS5jcmVhdGVXaXRoQ29udGVudChjb250ZW50U3RhdGUpO1xyXG4gICAgICB0aGlzLnN0YXRlID0ge1xyXG4gICAgICAgIGVkaXRvclN0YXRlLFxyXG4gICAgICAgIGVkaXRvcjogZmFsc2UsXHJcbiAgICAgIH07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnN0YXRlID0ge1xyXG4gICAgICAgIGVkaXRvclN0YXRlOiBFZGl0b3JTdGF0ZS5jcmVhdGVFbXB0eSgpLFxyXG4gICAgICAgIGVkaXRvcjogZmFsc2UsXHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgfVxyXG4gIGNvbXBvbmVudERpZFVwZGF0ZShwcmVQcm9wczogYW55KSB7XHJcbiAgICBpZiAocHJlUHJvcHMudmFsdWUgIT09IHRoaXMucHJvcHMudmFsdWUpIHtcclxuICAgICAgY29uc3QgaHRtbCA9IHRoaXMucHJvcHMudmFsdWU7XHJcbiAgICAgIGlmIChodG1sKSB7XHJcbiAgICAgICAgY29uc3QgY29udGVudEJsb2NrID0gaHRtbFRvRHJhZnQoaHRtbCk7XHJcbiAgICAgICAgY29uc3QgY29udGVudFN0YXRlID0gQ29udGVudFN0YXRlLmNyZWF0ZUZyb21CbG9ja0FycmF5KFxyXG4gICAgICAgICAgY29udGVudEJsb2NrLmNvbnRlbnRCbG9ja3NcclxuICAgICAgICApO1xyXG4gICAgICAgIGNvbnN0IGVkaXRvclN0YXRlID0gRWRpdG9yU3RhdGUuY3JlYXRlV2l0aENvbnRlbnQoY29udGVudFN0YXRlKTtcclxuICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgIGVkaXRvclN0YXRlLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIGdldFZhbHVlKCkge1xyXG4gICAgY29uc3QgeyBlZGl0b3JTdGF0ZSB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIHJldHVybiBkcmFmdFRvSHRtbChjb252ZXJ0VG9SYXcoZWRpdG9yU3RhdGUuZ2V0Q3VycmVudENvbnRlbnQoKSkpO1xyXG4gIH1cclxuXHJcbiAgb25FZGl0b3JTdGF0ZUNoYW5nZSA9IChlZGl0b3JTdGF0ZTogYW55KSA9PiB7XHJcbiAgICBjb25zdCBkZXNjckNvdW50ID0gZHJhZnRUb0h0bWwoXHJcbiAgICAgIGNvbnZlcnRUb1JhdyhlZGl0b3JTdGF0ZS5nZXRDdXJyZW50Q29udGVudCgpKVxyXG4gICAgKTtcclxuXHJcbiAgICB0aGlzLnNldFN0YXRlKHsgZWRpdG9yU3RhdGUgfSk7XHJcbiAgICBjb25zdCB7IG9uQ2hhbmdlIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgb25DaGFuZ2UgJiYgb25DaGFuZ2UoZGVzY3JDb3VudCk7XHJcbiAgfTtcclxuXHJcbiAgdXBsb2FkSW1hZ2VDYWxsQmFjayA9IChmaWxlOiBhbnkpID0+IHtcclxuICAgIC8vIHJldHVybiBuZXcgUHJvbWlzZShhc3luYyAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAvLyAgIGNvbnN0IGZpbGVQYXJhbXMgPSB7XHJcbiAgICAvLyAgICAgc2VydmljZU5hbWU6ICdlaWMtaG9tZS1zZXJ2aWNlJyxcclxuICAgIC8vICAgICBidXNpTmFtZTogJ2FwcHVwbG9hZHBpY3R1cmUnLFxyXG4gICAgLy8gICAgIGZpbGU6IGZpbGUsXHJcbiAgICAvLyAgICAgYWxsb3dTdWZmaXhMaXN0OiBbJ2pwZycsICdqcGVnJywgJ3BuZyddLFxyXG4gICAgLy8gICB9O1xyXG4gICAgLy8gICBjb25zdCByZXM6IGFueSA9IGF3YWl0IHVwbG9hZChmaWxlUGFyYW1zKTtcclxuICAgIC8vICAgcmVzb2x2ZSh7XHJcbiAgICAvLyAgICAgZGF0YToge1xyXG4gICAgLy8gICAgICAgbGluazogYC9hcGkvZmlsZS92MS9maWxlcy9pbWFnZS8ke1xyXG4gICAgLy8gICAgICAgICByZXMuZGF0YS5pZFxyXG4gICAgLy8gICAgICAgfT90b2tlbj0ke3dpbmRvdy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShcclxuICAgIC8vICAgICAgICAgJ3Rva2VuJyxcclxuICAgIC8vICAgICAgICl9JnM9JHt3aW5kb3cubG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3MnKX1gLFxyXG4gICAgLy8gICAgIH0sXHJcbiAgICAvLyAgIH0pO1xyXG4gICAgLy8gfSk7XHJcbiAgfTtcclxuXHJcbiAgcmVuZGVyKCkge1xyXG4gICAgY29uc3QgeyBlZGl0b3JTdGF0ZSB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGNvbnN0IHsgZGlzYWJsZWQgPSBmYWxzZSwgLi4ucGFyYW1zIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgPEVkaXRvclxyXG4gICAgICAgIGVkaXRvclN0YXRlPXtlZGl0b3JTdGF0ZX1cclxuICAgICAgICBlZGl0b3JTdHlsZT17e1xyXG4gICAgICAgICAgYm9yZGVyOiBcIjFweCBzb2xpZCBibGFja1wiLFxyXG4gICAgICAgICAgbWluSGVpZ2h0OiAyMDAsXHJcbiAgICAgICAgICBwYWRkaW5nTGVmdDogMTAsXHJcbiAgICAgICAgfX1cclxuICAgICAgICBvbkVkaXRvclN0YXRlQ2hhbmdlPXt0aGlzLm9uRWRpdG9yU3RhdGVDaGFuZ2V9XHJcbiAgICAgICAgd3JhcHBlckNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwid3JhcHBlclwiKX1cclxuICAgICAgICBlZGl0b3JDbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImVkaXRvclwiKX1cclxuICAgICAgICByZWY9e3RoaXMuZG9tRWRpdG9yfVxyXG4gICAgICAgIHJlYWRPbmx5PXtkaXNhYmxlZH1cclxuICAgICAgICB0b29sYmFyPXt7XHJcbiAgICAgICAgICBvcHRpb25zOiBbXHJcbiAgICAgICAgICAgIFwiaW5saW5lXCIsXHJcbiAgICAgICAgICAgIFwiYmxvY2tUeXBlXCIsXHJcbiAgICAgICAgICAgIFwiZm9udFNpemVcIixcclxuICAgICAgICAgICAgXCJmb250RmFtaWx5XCIsXHJcbiAgICAgICAgICAgIFwibGlzdFwiLFxyXG4gICAgICAgICAgICBcInRleHRBbGlnblwiLFxyXG4gICAgICAgICAgICBcImNvbG9yUGlja2VyXCIsXHJcbiAgICAgICAgICAgIC8vICdsaW5rJyxcclxuICAgICAgICAgICAgXCJlbW9qaVwiLFxyXG4gICAgICAgICAgICAvLyAnaW1hZ2UnLFxyXG4gICAgICAgICAgICAvLyAncmVtb3ZlJyxcclxuICAgICAgICAgICAgLy8gJ2hpc3RvcnknLFxyXG4gICAgICAgICAgICAvLyAnZW1iZWRkZWQnLFxyXG4gICAgICAgICAgXSxcclxuICAgICAgICAgIGlubGluZTogeyBpbkRyb3Bkb3duOiB0cnVlIH0sXHJcbiAgICAgICAgICAvLyAgIGltYWdlOiB7XHJcbiAgICAgICAgICAvLyAgICAgdXBsb2FkQ2FsbGJhY2s6IHVwbG9hZEltYWdlQ2FsbEJhY2ssXHJcbiAgICAgICAgICAvLyAgICAgYWx0OiB7IHByZXNlbnQ6IHRydWUsIG1hbmRhdG9yeTogdHJ1ZSB9LFxyXG4gICAgICAgICAgLy8gICB9LFxyXG4gICAgICAgIH19XHJcbiAgICAgICAgey4uLnBhcmFtc31cclxuICAgICAgLz5cclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
.editor {
|
|
2
|
+
min-height: 275px !important;
|
|
3
|
+
border: 1px solid #f1f1f1 !important;
|
|
4
|
+
padding: 5px !important;
|
|
5
|
+
border-radius: 2px !important;
|
|
6
|
+
}
|
|
7
|
+
.wrapper {
|
|
8
|
+
background: #fff;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.editor-disable {
|
|
12
|
+
margin-top: 10px;
|
|
13
|
+
min-height: 275px !important;
|
|
14
|
+
border: 1px solid #f1f1f1 !important;
|
|
15
|
+
padding: 5px !important;
|
|
16
|
+
border-radius: 2px !important;
|
|
17
|
+
background: #fff;
|
|
18
|
+
}
|
package/lib/index.d.ts
CHANGED
|
@@ -65,3 +65,4 @@ export type { default as InputEamilInstance } from "./base/input/Email";
|
|
|
65
65
|
export { default as BasePage } from "./page/BasePage";
|
|
66
66
|
export { default as Iframe } from "./base/iframe";
|
|
67
67
|
export { default as ErrorBoundary } from "./base/errorboundary";
|
|
68
|
+
export { default as Editor } from './base/editor';
|
package/lib/index.js
CHANGED
|
@@ -73,4 +73,5 @@ export { default as Popover } from "./base/popover";
|
|
|
73
73
|
export { default as BasePage } from "./page/BasePage";
|
|
74
74
|
export { default as Iframe } from "./base/iframe";
|
|
75
75
|
export { default as ErrorBoundary } from "./base/errorboundary";
|
|
76
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21wb25lbnRzL2luZGV4LnRzeCJdLCJuYW1lcyI6WyJkZWZhdWx0IiwiQnV0dG9uIiwiQ2FzY2FkZXIiLCJDaGVja2JveCIsIkJvZHlSb3ciLCJJY29uIiwiVHJlZVBhbmVsIiwiRGF0ZVBpY2tlciIsIkZvcm0iLCJJbnB1dCIsIk1lbnUiLCJSYWRpbyIsIlNlbGVjdCIsIlRhYmxlIiwiRG5kQ29udGV4dFR5cGUiLCJJQm9keVJvd1Byb3BzIiwiSU5TQ1RhYmxlUHJvcHMiLCJUYWJzIiwiVHJlZSIsIk5zY1RyZWVQcm9wcyIsIlN0b3JlIiwiU3RvcmVDb25maWdUeXBlIiwiZ2V0RGVmYXVsdENvbmZpZyIsInNldENvbmZpZyIsIlRhZ1NlbGVjdCIsIk5vRGF0YSIsIk5vTWVzc2FnZSIsIk5vTmV0V29yayIsIlBhZ2U0MDQiLCJOb0F1dGhvcml0eSIsIlJhbmdlUGlja2VyIiwiTW9kYWwiLCJDaGFydCIsIm1lc3NhZ2UiLCJBZmZpeCIsIkFsZXJ0IiwiQW5jaG9yIiwiQXZhdGFyIiwiQmFja1RvcCIsIkJhZGdlIiwiQnJlYWRjcnVtYiIsIkNhbGVuZGFyIiwiQ2FyZCIsIkNvbGxhcHNlIiwiQ29tbWVudCIsIkNvbmZpZ1Byb3ZpZGVyIiwiRGVzY3JpcHRpb25zIiwiRGl2aWRlciIsIkRyYXdlciIsIkRyb3Bkb3duIiwiUm93IiwiQ29sIiwiSW1hZ2UiLCJMYXlvdXQiLCJMaXN0Iiwibm90aWZpY2F0aW9uIiwiUGFnZUhlYWRlciIsIlBhZ2luYXRpb24iLCJQb3Bjb25maXJtIiwiUHJvZ3Jlc3MiLCJSZXN1bHQiLCJTa2VsZXRvbiIsIlNwYWNlIiwiU3RhdGlzdGljIiwiU3RlcHMiLCJUaW1lbGluZSIsIlRvb2x0aXAiLCJUeXBvZ3JhcGh5IiwiUG9wb3ZlciIsIkJhc2VQYWdlIiwiSWZyYW1lIiwiRXJyb3JCb3VuZGFyeSJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUEsU0FB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QU8sSUFBSXFFLFFBQXBCLFFBQW9DLGlCQUFwQztBQUNBLFNBQVNyRSxPQUFPLElBQUlzRSxNQUFwQixRQUFrQyxlQUFsQztBQUNBLFNBQVN0RSxPQUFPLElBQUl1RSxhQUFwQixRQUF5QyxzQkFBekMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBARGVzY3JpcHR0aW9uOlxyXG4gKiBAdmVyc2lvbjpcclxuICogQEF1dGhvcjogcnh6aHVcclxuICogQERhdGU6IDIwMjEtMDMtMjIgMDk6MDQ6MTlcclxuICogQExhc3RFZGl0b3JzOiByeHpodVxyXG4gKiBATGFzdEVkaXRUaW1lOiAyMDIxLTA0LTE2IDE0OjQzOjE1XHJcbiAqL1xyXG4vLyBleHBvcnQgeyBGb3JtSW5zdGFuY2UgfSBmcm9tIFwiYW50ZC9saWIvZm9ybVwiO1xyXG5cclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBCdXR0b24gfSBmcm9tIFwiLi9iYXNlL2J1dHRvblwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIENhc2NhZGVyIH0gZnJvbSBcIi4vYmFzZS9jYXNjYWRlclwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIENoZWNrYm94IH0gZnJvbSBcIi4vYmFzZS9jaGVja2JveFwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIEJvZHlSb3cgfSBmcm9tIFwiLi9iYXNlL2NvbW1vbi9Cb2R5Um93XCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgSWNvbiB9IGZyb20gXCIuL2Jhc2UvY29tbW9uL0ljb25cIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBUcmVlUGFuZWwgfSBmcm9tIFwiLi9iYXNlL2NvbW1vbi9UcmVlUGFuZWxcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBEYXRlUGlja2VyIH0gZnJvbSBcIi4vYmFzZS9kYXRlcGlja1wiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIEZvcm0gfSBmcm9tIFwiLi9iYXNlL2Zvcm1cIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBJbnB1dCB9IGZyb20gXCIuL2Jhc2UvaW5wdXRcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBNZW51IH0gZnJvbSBcIi4vYmFzZS9tZW51XCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUmFkaW8gfSBmcm9tIFwiLi9iYXNlL3JhZGlvXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgU2VsZWN0IH0gZnJvbSBcIi4vYmFzZS9zZWxlY3RcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBUYWJsZSB9IGZyb20gXCIuL2Jhc2UvdGFibGVcIjtcclxuZXhwb3J0IHsgRG5kQ29udGV4dFR5cGUsIElCb2R5Um93UHJvcHMsIElOU0NUYWJsZVByb3BzIH0gZnJvbSBcIi4vYmFzZS90YWJsZVwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIFRhYnMgfSBmcm9tIFwiLi9iYXNlL3RhYnNcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBUcmVlIH0gZnJvbSBcIi4vYmFzZS90cmVlXCI7XHJcbmV4cG9ydCB7IE5zY1RyZWVQcm9wcywgU3RvcmUsIFN0b3JlQ29uZmlnVHlwZSB9IGZyb20gXCIuL2Jhc2UvdHJlZVwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIGdldERlZmF1bHRDb25maWcsIHNldENvbmZpZyB9IGZyb20gXCIuL2NvbmZpZ1wiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIFRhZ1NlbGVjdCB9IGZyb20gXCIuL2Jhc2UvdGFnU2VsZWN0XCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgTm9EYXRhIH0gZnJvbSBcIi4vYmFzZS9jb21tb24vTm9EYXRhXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgTm9NZXNzYWdlIH0gZnJvbSBcIi4vYmFzZS9jb21tb24vTm9NZXNzYWdlXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgTm9OZXRXb3JrIH0gZnJvbSBcIi4vYmFzZS9jb21tb24vTm9OZXRXb3JrXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUGFnZTQwNCB9IGZyb20gXCIuL2Jhc2UvY29tbW9uL1BhZ2U0MDRcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBOb0F1dGhvcml0eSB9IGZyb20gXCIuL2Jhc2UvY29tbW9uL05vQXV0aG9yaXR5XCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUmFuZ2VQaWNrZXIgfSBmcm9tIFwiLi9iYXNlL2RhdGVwaWNrL1JhbmdlcGlja2VyXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgTW9kYWwgfSBmcm9tIFwiLi9iYXNlL21vZGFsXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgQ2hhcnQgfSBmcm9tIFwiLi9iYXNlL2NoYXJ0XCI7XHJcblxyXG5leHBvcnQgeyBkZWZhdWx0IGFzIG1lc3NhZ2UgfSBmcm9tIFwiLi9iYXNlL21lc3NhZ2VcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBBZmZpeCB9IGZyb20gXCIuL2Jhc2UvYWZmaXhcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBBbGVydCB9IGZyb20gXCIuL2Jhc2UvYWxlcnRcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBBbmNob3IgfSBmcm9tIFwiLi9iYXNlL2FuY2hvclwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIEF2YXRhciB9IGZyb20gXCIuL2Jhc2UvYXZhdGFyXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgQmFja1RvcCB9IGZyb20gXCIuL2Jhc2UvYmFja1RvcFwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIEJhZGdlIH0gZnJvbSBcIi4vYmFzZS9iYWRnZVwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIEJyZWFkY3J1bWIgfSBmcm9tIFwiLi9iYXNlL2JyZWFkY3J1bWJcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBDYWxlbmRhciB9IGZyb20gXCIuL2Jhc2UvY2FsZW5kYXJcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBDYXJkIH0gZnJvbSBcIi4vYmFzZS9jYXJkXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgQ29sbGFwc2UgfSBmcm9tIFwiLi9iYXNlL2NvbGxhcHNlXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgQ29tbWVudCB9IGZyb20gXCIuL2Jhc2UvY29tbWVudFwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIENvbmZpZ1Byb3ZpZGVyIH0gZnJvbSBcIi4vYmFzZS9jb25maWdQcm92aWRlclwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIERlc2NyaXB0aW9ucyB9IGZyb20gXCIuL2Jhc2UvZGVzY3JpcHRpb25zXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRGl2aWRlciB9IGZyb20gXCIuL2Jhc2UvZGl2aWRlclwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIERyYXdlciB9IGZyb20gXCIuL2Jhc2UvZHJhd2VyXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRHJvcGRvd24gfSBmcm9tIFwiLi9iYXNlL2Ryb3Bkb3duXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUm93IH0gZnJvbSBcIi4vYmFzZS9ncmlkL1Jvd1wiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIENvbCB9IGZyb20gXCIuL2Jhc2UvZ3JpZC9Db2xcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBJbWFnZSB9IGZyb20gXCIuL2Jhc2UvaW1hZ2VcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBMYXlvdXQgfSBmcm9tIFwiLi9iYXNlL2xheW91dFwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIExpc3QgfSBmcm9tIFwiLi9iYXNlL2xpc3RcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBub3RpZmljYXRpb24gfSBmcm9tIFwiLi9iYXNlL25vdGlmaWNhdGlvblwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIFBhZ2VIZWFkZXIgfSBmcm9tIFwiLi9iYXNlL3BhZ2VIZWFkZXJcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBQYWdpbmF0aW9uIH0gZnJvbSBcIi4vYmFzZS9wYWdpbmF0aW9uXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUG9wY29uZmlybSB9IGZyb20gXCIuL2Jhc2UvcG9wY29uZmlybVwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIFByb2dyZXNzIH0gZnJvbSBcIi4vYmFzZS9wcm9ncmVzc1wiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIFJlc3VsdCB9IGZyb20gXCIuL2Jhc2UvcmVzdWx0XCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgU2tlbGV0b24gfSBmcm9tIFwiLi9iYXNlL3NrZWxldG9uXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgU3BhY2UgfSBmcm9tIFwiLi9iYXNlL3NwYWNlXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgU3RhdGlzdGljIH0gZnJvbSBcIi4vYmFzZS9zdGF0aXN0aWNcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBTdGVwcyB9IGZyb20gXCIuL2Jhc2Uvc3RlcHNcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBUaW1lbGluZSB9IGZyb20gXCIuL2Jhc2UvdGltZWxpbmVcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBUb29sdGlwIH0gZnJvbSBcIi4vYmFzZS90b29sdGlwXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgVHlwb2dyYXBoeSB9IGZyb20gXCIuL2Jhc2UvdHlwb2dyYXBoeVwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIFBvcG92ZXIgfSBmcm9tIFwiLi9iYXNlL3BvcG92ZXJcIjtcclxuXHJcbmV4cG9ydCB0eXBlIHsgZGVmYXVsdCBhcyBJbnB1dEVhbWlsSW5zdGFuY2UgfSBmcm9tIFwiLi9iYXNlL2lucHV0L0VtYWlsXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgQmFzZVBhZ2UgfSBmcm9tIFwiLi9wYWdlL0Jhc2VQYWdlXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgSWZyYW1lIH0gZnJvbSBcIi4vYmFzZS9pZnJhbWVcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBFcnJvckJvdW5kYXJ5IH0gZnJvbSBcIi4vYmFzZS9lcnJvcmJvdW5kYXJ5XCI7XHJcbiJdfQ==
|
|
76
|
+
export { default as Editor } from './base/editor';
|
|
77
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21wb25lbnRzL2luZGV4LnRzeCJdLCJuYW1lcyI6WyJkZWZhdWx0IiwiQnV0dG9uIiwiQ2FzY2FkZXIiLCJDaGVja2JveCIsIkJvZHlSb3ciLCJJY29uIiwiVHJlZVBhbmVsIiwiRGF0ZVBpY2tlciIsIkZvcm0iLCJJbnB1dCIsIk1lbnUiLCJSYWRpbyIsIlNlbGVjdCIsIlRhYmxlIiwiRG5kQ29udGV4dFR5cGUiLCJJQm9keVJvd1Byb3BzIiwiSU5TQ1RhYmxlUHJvcHMiLCJUYWJzIiwiVHJlZSIsIk5zY1RyZWVQcm9wcyIsIlN0b3JlIiwiU3RvcmVDb25maWdUeXBlIiwiZ2V0RGVmYXVsdENvbmZpZyIsInNldENvbmZpZyIsIlRhZ1NlbGVjdCIsIk5vRGF0YSIsIk5vTWVzc2FnZSIsIk5vTmV0V29yayIsIlBhZ2U0MDQiLCJOb0F1dGhvcml0eSIsIlJhbmdlUGlja2VyIiwiTW9kYWwiLCJDaGFydCIsIm1lc3NhZ2UiLCJBZmZpeCIsIkFsZXJ0IiwiQW5jaG9yIiwiQXZhdGFyIiwiQmFja1RvcCIsIkJhZGdlIiwiQnJlYWRjcnVtYiIsIkNhbGVuZGFyIiwiQ2FyZCIsIkNvbGxhcHNlIiwiQ29tbWVudCIsIkNvbmZpZ1Byb3ZpZGVyIiwiRGVzY3JpcHRpb25zIiwiRGl2aWRlciIsIkRyYXdlciIsIkRyb3Bkb3duIiwiUm93IiwiQ29sIiwiSW1hZ2UiLCJMYXlvdXQiLCJMaXN0Iiwibm90aWZpY2F0aW9uIiwiUGFnZUhlYWRlciIsIlBhZ2luYXRpb24iLCJQb3Bjb25maXJtIiwiUHJvZ3Jlc3MiLCJSZXN1bHQiLCJTa2VsZXRvbiIsIlNwYWNlIiwiU3RhdGlzdGljIiwiU3RlcHMiLCJUaW1lbGluZSIsIlRvb2x0aXAiLCJUeXBvZ3JhcGh5IiwiUG9wb3ZlciIsIkJhc2VQYWdlIiwiSWZyYW1lIiwiRXJyb3JCb3VuZGFyeSIsIkVkaXRvciJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNB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U0FBU3BFLE9BQU8sSUFBSXFFLFFBQXBCLFFBQW9DLGlCQUFwQztBQUNBLFNBQVNyRSxPQUFPLElBQUlzRSxNQUFwQixRQUFrQyxlQUFsQztBQUNBLFNBQVN0RSxPQUFPLElBQUl1RSxhQUFwQixRQUF5QyxzQkFBekM7QUFDQSxTQUFRdkUsT0FBTyxJQUFJd0UsTUFBbkIsUUFBZ0MsZUFBaEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBARGVzY3JpcHR0aW9uOlxyXG4gKiBAdmVyc2lvbjpcclxuICogQEF1dGhvcjogcnh6aHVcclxuICogQERhdGU6IDIwMjEtMDMtMjIgMDk6MDQ6MTlcclxuICogQExhc3RFZGl0b3JzOiByeHpodVxyXG4gKiBATGFzdEVkaXRUaW1lOiAyMDIxLTA0LTE2IDE0OjQzOjE1XHJcbiAqL1xyXG4vLyBleHBvcnQgeyBGb3JtSW5zdGFuY2UgfSBmcm9tIFwiYW50ZC9saWIvZm9ybVwiO1xyXG5cclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBCdXR0b24gfSBmcm9tIFwiLi9iYXNlL2J1dHRvblwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIENhc2NhZGVyIH0gZnJvbSBcIi4vYmFzZS9jYXNjYWRlclwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIENoZWNrYm94IH0gZnJvbSBcIi4vYmFzZS9jaGVja2JveFwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIEJvZHlSb3cgfSBmcm9tIFwiLi9iYXNlL2NvbW1vbi9Cb2R5Um93XCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgSWNvbiB9IGZyb20gXCIuL2Jhc2UvY29tbW9uL0ljb25cIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBUcmVlUGFuZWwgfSBmcm9tIFwiLi9iYXNlL2NvbW1vbi9UcmVlUGFuZWxcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBEYXRlUGlja2VyIH0gZnJvbSBcIi4vYmFzZS9kYXRlcGlja1wiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIEZvcm0gfSBmcm9tIFwiLi9iYXNlL2Zvcm1cIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBJbnB1dCB9IGZyb20gXCIuL2Jhc2UvaW5wdXRcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBNZW51IH0gZnJvbSBcIi4vYmFzZS9tZW51XCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUmFkaW8gfSBmcm9tIFwiLi9iYXNlL3JhZGlvXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgU2VsZWN0IH0gZnJvbSBcIi4vYmFzZS9zZWxlY3RcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBUYWJsZSB9IGZyb20gXCIuL2Jhc2UvdGFibGVcIjtcclxuZXhwb3J0IHsgRG5kQ29udGV4dFR5cGUsIElCb2R5Um93UHJvcHMsIElOU0NUYWJsZVByb3BzIH0gZnJvbSBcIi4vYmFzZS90YWJsZVwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIFRhYnMgfSBmcm9tIFwiLi9iYXNlL3RhYnNcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBUcmVlIH0gZnJvbSBcIi4vYmFzZS90cmVlXCI7XHJcbmV4cG9ydCB7IE5zY1RyZWVQcm9wcywgU3RvcmUsIFN0b3JlQ29uZmlnVHlwZSB9IGZyb20gXCIuL2Jhc2UvdHJlZVwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIGdldERlZmF1bHRDb25maWcsIHNldENvbmZpZyB9IGZyb20gXCIuL2NvbmZpZ1wiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIFRhZ1NlbGVjdCB9IGZyb20gXCIuL2Jhc2UvdGFnU2VsZWN0XCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgTm9EYXRhIH0gZnJvbSBcIi4vYmFzZS9jb21tb24vTm9EYXRhXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgTm9NZXNzYWdlIH0gZnJvbSBcIi4vYmFzZS9jb21tb24vTm9NZXNzYWdlXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgTm9OZXRXb3JrIH0gZnJvbSBcIi4vYmFzZS9jb21tb24vTm9OZXRXb3JrXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUGFnZTQwNCB9IGZyb20gXCIuL2Jhc2UvY29tbW9uL1BhZ2U0MDRcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBOb0F1dGhvcml0eSB9IGZyb20gXCIuL2Jhc2UvY29tbW9uL05vQXV0aG9yaXR5XCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUmFuZ2VQaWNrZXIgfSBmcm9tIFwiLi9iYXNlL2RhdGVwaWNrL1JhbmdlcGlja2VyXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgTW9kYWwgfSBmcm9tIFwiLi9iYXNlL21vZGFsXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgQ2hhcnQgfSBmcm9tIFwiLi9iYXNlL2NoYXJ0XCI7XHJcblxyXG5leHBvcnQgeyBkZWZhdWx0IGFzIG1lc3NhZ2UgfSBmcm9tIFwiLi9iYXNlL21lc3NhZ2VcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBBZmZpeCB9IGZyb20gXCIuL2Jhc2UvYWZmaXhcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBBbGVydCB9IGZyb20gXCIuL2Jhc2UvYWxlcnRcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBBbmNob3IgfSBmcm9tIFwiLi9iYXNlL2FuY2hvclwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIEF2YXRhciB9IGZyb20gXCIuL2Jhc2UvYXZhdGFyXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgQmFja1RvcCB9IGZyb20gXCIuL2Jhc2UvYmFja1RvcFwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIEJhZGdlIH0gZnJvbSBcIi4vYmFzZS9iYWRnZVwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIEJyZWFkY3J1bWIgfSBmcm9tIFwiLi9iYXNlL2JyZWFkY3J1bWJcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBDYWxlbmRhciB9IGZyb20gXCIuL2Jhc2UvY2FsZW5kYXJcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBDYXJkIH0gZnJvbSBcIi4vYmFzZS9jYXJkXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgQ29sbGFwc2UgfSBmcm9tIFwiLi9iYXNlL2NvbGxhcHNlXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgQ29tbWVudCB9IGZyb20gXCIuL2Jhc2UvY29tbWVudFwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIENvbmZpZ1Byb3ZpZGVyIH0gZnJvbSBcIi4vYmFzZS9jb25maWdQcm92aWRlclwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIERlc2NyaXB0aW9ucyB9IGZyb20gXCIuL2Jhc2UvZGVzY3JpcHRpb25zXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRGl2aWRlciB9IGZyb20gXCIuL2Jhc2UvZGl2aWRlclwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIERyYXdlciB9IGZyb20gXCIuL2Jhc2UvZHJhd2VyXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRHJvcGRvd24gfSBmcm9tIFwiLi9iYXNlL2Ryb3Bkb3duXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUm93IH0gZnJvbSBcIi4vYmFzZS9ncmlkL1Jvd1wiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIENvbCB9IGZyb20gXCIuL2Jhc2UvZ3JpZC9Db2xcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBJbWFnZSB9IGZyb20gXCIuL2Jhc2UvaW1hZ2VcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBMYXlvdXQgfSBmcm9tIFwiLi9iYXNlL2xheW91dFwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIExpc3QgfSBmcm9tIFwiLi9iYXNlL2xpc3RcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBub3RpZmljYXRpb24gfSBmcm9tIFwiLi9iYXNlL25vdGlmaWNhdGlvblwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIFBhZ2VIZWFkZXIgfSBmcm9tIFwiLi9iYXNlL3BhZ2VIZWFkZXJcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBQYWdpbmF0aW9uIH0gZnJvbSBcIi4vYmFzZS9wYWdpbmF0aW9uXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUG9wY29uZmlybSB9IGZyb20gXCIuL2Jhc2UvcG9wY29uZmlybVwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIFByb2dyZXNzIH0gZnJvbSBcIi4vYmFzZS9wcm9ncmVzc1wiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIFJlc3VsdCB9IGZyb20gXCIuL2Jhc2UvcmVzdWx0XCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgU2tlbGV0b24gfSBmcm9tIFwiLi9iYXNlL3NrZWxldG9uXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgU3BhY2UgfSBmcm9tIFwiLi9iYXNlL3NwYWNlXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgU3RhdGlzdGljIH0gZnJvbSBcIi4vYmFzZS9zdGF0aXN0aWNcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBTdGVwcyB9IGZyb20gXCIuL2Jhc2Uvc3RlcHNcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBUaW1lbGluZSB9IGZyb20gXCIuL2Jhc2UvdGltZWxpbmVcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBUb29sdGlwIH0gZnJvbSBcIi4vYmFzZS90b29sdGlwXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgVHlwb2dyYXBoeSB9IGZyb20gXCIuL2Jhc2UvdHlwb2dyYXBoeVwiO1xyXG5leHBvcnQgeyBkZWZhdWx0IGFzIFBvcG92ZXIgfSBmcm9tIFwiLi9iYXNlL3BvcG92ZXJcIjtcclxuXHJcbmV4cG9ydCB0eXBlIHsgZGVmYXVsdCBhcyBJbnB1dEVhbWlsSW5zdGFuY2UgfSBmcm9tIFwiLi9iYXNlL2lucHV0L0VtYWlsXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgQmFzZVBhZ2UgfSBmcm9tIFwiLi9wYWdlL0Jhc2VQYWdlXCI7XHJcbmV4cG9ydCB7IGRlZmF1bHQgYXMgSWZyYW1lIH0gZnJvbSBcIi4vYmFzZS9pZnJhbWVcIjtcclxuZXhwb3J0IHsgZGVmYXVsdCBhcyBFcnJvckJvdW5kYXJ5IH0gZnJvbSBcIi4vYmFzZS9lcnJvcmJvdW5kYXJ5XCI7XHJcbmV4cG9ydCB7ZGVmYXVsdCBhcyBFZGl0b3J9IGZyb20gJy4vYmFzZS9lZGl0b3InXHJcbiJdfQ==
|
|
@@ -42,6 +42,7 @@ interface NSCBaseBageProps {
|
|
|
42
42
|
formType?: "modal" | "drawer";
|
|
43
43
|
formChangeValid?: boolean;
|
|
44
44
|
className?: any;
|
|
45
|
+
actionColumns?: Array<any>;
|
|
45
46
|
}
|
|
46
47
|
declare class BasePage extends PureComponent<NSCBaseBageProps, any> {
|
|
47
48
|
tableRef: React.RefObject<any>;
|
|
@@ -64,7 +65,7 @@ declare class BasePage extends PureComponent<NSCBaseBageProps, any> {
|
|
|
64
65
|
getSearchValues(): any;
|
|
65
66
|
rowSelectionOnSelect(record: any, selected: any): void;
|
|
66
67
|
rowSelectionOnSelectAll(selected: any, selectedRows: any, changeRows: any): void;
|
|
67
|
-
renderCloumnButton(columnButtons: any, record: any):
|
|
68
|
+
renderCloumnButton(columnButtons: any, record: any): JSX.Element[];
|
|
68
69
|
treeSelect(selectedKeys: any, { selected, selectedNodes }: any): void;
|
|
69
70
|
resetSearch(): void;
|
|
70
71
|
getText(props: any, text: any): any;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
2
2
|
|
|
3
|
-
var _excluded = ["children", "pageType", "onClick", "icon"],
|
|
4
|
-
_excluded2 = ["children", "pageType", "onClick", "icon"],
|
|
5
|
-
_excluded3 = ["
|
|
6
|
-
_excluded4 = ["store", "
|
|
3
|
+
var _excluded = ["children", "pageType", "onClick", "icon", "recordShow"],
|
|
4
|
+
_excluded2 = ["children", "pageType", "onClick", "icon", "show"],
|
|
5
|
+
_excluded3 = ["children", "pageType", "onClick", "icon"],
|
|
6
|
+
_excluded4 = ["store", "filterColumn", "actionColumn", "showRowSelection", "columnOrder"],
|
|
7
|
+
_excluded5 = ["store", "showSearch", "titleAlias"];
|
|
7
8
|
|
|
8
9
|
function _extends() { _extends = Object.assign || 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); }
|
|
9
10
|
|
|
@@ -367,15 +368,34 @@ var BasePage = /*#__PURE__*/function (_PureComponent) {
|
|
|
367
368
|
editorForm = _this$props2$editorFo === void 0 ? true : _this$props2$editorFo,
|
|
368
369
|
_this$props2$buttons = _this$props2.buttons,
|
|
369
370
|
buttons = _this$props2$buttons === void 0 ? [] : _this$props2$buttons;
|
|
370
|
-
var
|
|
371
|
-
|
|
371
|
+
var newButtons = [];
|
|
372
|
+
columnButtons.map(function (item, index) {
|
|
372
373
|
var _item$props = item.props,
|
|
373
374
|
children = _item$props.children,
|
|
374
375
|
pageType = _item$props.pageType,
|
|
375
|
-
|
|
376
|
+
onClick = _item$props.onClick,
|
|
376
377
|
icon = _item$props.icon,
|
|
378
|
+
recordShow = _item$props.recordShow,
|
|
377
379
|
params = _objectWithoutProperties(_item$props, _excluded);
|
|
378
380
|
|
|
381
|
+
if (recordShow) {
|
|
382
|
+
if (eval(recordShow)) {
|
|
383
|
+
newButtons.push(item);
|
|
384
|
+
}
|
|
385
|
+
} else {
|
|
386
|
+
newButtons.push(item);
|
|
387
|
+
}
|
|
388
|
+
});
|
|
389
|
+
var flag = newButtons.length > 3;
|
|
390
|
+
var content = newButtons.map(function (item, index) {
|
|
391
|
+
var _item$props2 = item.props,
|
|
392
|
+
children = _item$props2.children,
|
|
393
|
+
pageType = _item$props2.pageType,
|
|
394
|
+
_onClick = _item$props2.onClick,
|
|
395
|
+
icon = _item$props2.icon,
|
|
396
|
+
show = _item$props2.show,
|
|
397
|
+
params = _objectWithoutProperties(_item$props2, _excluded2);
|
|
398
|
+
|
|
379
399
|
if (index > 1) {
|
|
380
400
|
return /*#__PURE__*/React.createElement("div", _extends({
|
|
381
401
|
className: cls(getLess(styles, "editor"), getLess(styles, "content-item")),
|
|
@@ -390,13 +410,13 @@ var BasePage = /*#__PURE__*/function (_PureComponent) {
|
|
|
390
410
|
}, children));
|
|
391
411
|
}
|
|
392
412
|
});
|
|
393
|
-
return
|
|
394
|
-
var _item$
|
|
395
|
-
children = _item$
|
|
396
|
-
pageType = _item$
|
|
397
|
-
_onClick2 = _item$
|
|
398
|
-
icon = _item$
|
|
399
|
-
params = _objectWithoutProperties(_item$
|
|
413
|
+
return newButtons.map(function (item, index) {
|
|
414
|
+
var _item$props3 = item.props,
|
|
415
|
+
children = _item$props3.children,
|
|
416
|
+
pageType = _item$props3.pageType,
|
|
417
|
+
_onClick2 = _item$props3.onClick,
|
|
418
|
+
icon = _item$props3.icon,
|
|
419
|
+
params = _objectWithoutProperties(_item$props3, _excluded3);
|
|
400
420
|
|
|
401
421
|
if (flag) {
|
|
402
422
|
if (index < 2) {
|
|
@@ -534,7 +554,9 @@ var BasePage = /*#__PURE__*/function (_PureComponent) {
|
|
|
534
554
|
onShowForm = _this$props3.onShowForm,
|
|
535
555
|
_this$props3$formChan = _this$props3.formChangeValid,
|
|
536
556
|
formChangeValid = _this$props3$formChan === void 0 ? true : _this$props3$formChan,
|
|
537
|
-
className = _this$props3.className
|
|
557
|
+
className = _this$props3.className,
|
|
558
|
+
_this$props3$actionCo = _this$props3.actionColumns,
|
|
559
|
+
actionColumns = _this$props3$actionCo === void 0 ? [] : _this$props3$actionCo;
|
|
538
560
|
|
|
539
561
|
var _tableProps$store = tableProps.store,
|
|
540
562
|
store = _tableProps$store === void 0 ? {} : _tableProps$store,
|
|
@@ -546,7 +568,7 @@ var BasePage = /*#__PURE__*/function (_PureComponent) {
|
|
|
546
568
|
showRowSelection = _tableProps$showRowSe === void 0 ? true : _tableProps$showRowSe,
|
|
547
569
|
_tableProps$columnOrd = tableProps.columnOrder,
|
|
548
570
|
columnOrder = _tableProps$columnOrd === void 0 ? true : _tableProps$columnOrd,
|
|
549
|
-
othertableParams = _objectWithoutProperties(tableProps,
|
|
571
|
+
othertableParams = _objectWithoutProperties(tableProps, _excluded4);
|
|
550
572
|
|
|
551
573
|
var _treeProps$store = treeProps.store,
|
|
552
574
|
treeStore = _treeProps$store === void 0 ? {} : _treeProps$store,
|
|
@@ -554,7 +576,7 @@ var BasePage = /*#__PURE__*/function (_PureComponent) {
|
|
|
554
576
|
treeSearch = _treeProps$showSearch === void 0 ? true : _treeProps$showSearch,
|
|
555
577
|
_treeProps$titleAlias = treeProps.titleAlias,
|
|
556
578
|
titleAlias = _treeProps$titleAlias === void 0 ? "title" : _treeProps$titleAlias,
|
|
557
|
-
othertreeParams = _objectWithoutProperties(treeProps,
|
|
579
|
+
othertreeParams = _objectWithoutProperties(treeProps, _excluded5);
|
|
558
580
|
|
|
559
581
|
var tableParams = _objectSpread({
|
|
560
582
|
filterColumn: filterColumn,
|
|
@@ -576,6 +598,7 @@ var BasePage = /*#__PURE__*/function (_PureComponent) {
|
|
|
576
598
|
var searchForms = [];
|
|
577
599
|
var editorForms = [];
|
|
578
600
|
var defaultValue = {};
|
|
601
|
+
var columnButtons = [];
|
|
579
602
|
columns.map(function (item) {
|
|
580
603
|
var _temp$props, _temp$props2, _temp;
|
|
581
604
|
|
|
@@ -630,7 +653,8 @@ var BasePage = /*#__PURE__*/function (_PureComponent) {
|
|
|
630
653
|
}, /*#__PURE__*/React.createElement("span", {
|
|
631
654
|
className: getLess(styles, "col-text")
|
|
632
655
|
}, _this3.getText(tempProp, text))));
|
|
633
|
-
}
|
|
656
|
+
},
|
|
657
|
+
ellipsis: true
|
|
634
658
|
}, temp);
|
|
635
659
|
} else {
|
|
636
660
|
temp = _objectSpread({
|
|
@@ -644,7 +668,6 @@ var BasePage = /*#__PURE__*/function (_PureComponent) {
|
|
|
644
668
|
if (((_temp = temp) === null || _temp === void 0 ? void 0 : _temp.columnShow) !== false) tableColumn.push(temp);
|
|
645
669
|
});
|
|
646
670
|
var selfButtons = [];
|
|
647
|
-
var columnButtons = [];
|
|
648
671
|
|
|
649
672
|
if (editorForm == true) {
|
|
650
673
|
if (buttons.indexOf("search") > -1) {
|
|
@@ -686,11 +709,11 @@ var BasePage = /*#__PURE__*/function (_PureComponent) {
|
|
|
686
709
|
|
|
687
710
|
if (Array.isArray(children)) {
|
|
688
711
|
children.map(function (item) {
|
|
689
|
-
var _item$
|
|
712
|
+
var _item$props4, _item$props5;
|
|
690
713
|
|
|
691
|
-
if ((item === null || item === void 0 ? void 0 : (_item$
|
|
714
|
+
if ((item === null || item === void 0 ? void 0 : (_item$props4 = item.props) === null || _item$props4 === void 0 ? void 0 : _item$props4.pageType) == "toolButton") {
|
|
692
715
|
selfButtons.push(item);
|
|
693
|
-
} else if ((item === null || item === void 0 ? void 0 : (_item$
|
|
716
|
+
} else if ((item === null || item === void 0 ? void 0 : (_item$props5 = item.props) === null || _item$props5 === void 0 ? void 0 : _item$props5.pageType) == "cloumnButton") {
|
|
694
717
|
columnButtons.push(item);
|
|
695
718
|
}
|
|
696
719
|
});
|
|
@@ -710,6 +733,7 @@ var BasePage = /*#__PURE__*/function (_PureComponent) {
|
|
|
710
733
|
align: "center",
|
|
711
734
|
width: 250,
|
|
712
735
|
fixed: "right",
|
|
736
|
+
ellipsis: true,
|
|
713
737
|
render: function render(text, record) {
|
|
714
738
|
return /*#__PURE__*/React.createElement("div", {
|
|
715
739
|
className: getLess(styles, "action")
|
|
@@ -822,7 +846,7 @@ var BasePage = /*#__PURE__*/function (_PureComponent) {
|
|
|
822
846
|
key: index
|
|
823
847
|
}, item);
|
|
824
848
|
})), /*#__PURE__*/React.createElement("div", {
|
|
825
|
-
className: getLess(styles, "table")
|
|
849
|
+
className: cls(getLess(styles, "table"), _defineProperty({}, getLess(styles, "table-page"), tableProps.pagination !== false))
|
|
826
850
|
}, /*#__PURE__*/React.createElement(Table, _extends({
|
|
827
851
|
ref: this.tableRef,
|
|
828
852
|
columns: tableColumn,
|
|
@@ -867,4 +891,4 @@ var BasePage = /*#__PURE__*/function (_PureComponent) {
|
|
|
867
891
|
}(PureComponent);
|
|
868
892
|
|
|
869
893
|
export default BasePage;
|
|
870
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3BhZ2UvQmFzZVBhZ2UvaW5kZXgudHN4Il0sIm5hbWVzIjpbIlJlYWN0IiwiUHVyZUNvbXBvbmVudCIsIlRhYmxlIiwiVHJlZSIsIkZvcm0iLCJCdXR0b24iLCJNb2RhbCIsIlBvcG92ZXIiLCJtZXNzYWdlIiwiSWNvbiIsImljb25UeXBlIiwiRWRpdG9yRm9ybSIsImNscyIsInN0eWxlcyIsIkRvd25PdXRsaW5lZCIsIlVwT3V0bGluZWQiLCJFeWVPdXRsaW5lZCIsIkVkaXRPdXRsaW5lZCIsIlJpZ2h0T3V0bGluZWQiLCJnZXRMZXNzIiwiZ2V0Tm9kZSIsInJlcXVlc3QiLCJvbWl0IiwiY29uZmlnIiwiZ2V0U3RvcmFnZSIsIkJhc2VQYWdlIiwicHJvcHMiLCJjcmVhdGVSZWYiLCJldiIsImRhdGEiLCJKU09OIiwicGFyc2UiLCJfdGhpcyIsImV2ZW50VHlwZSIsInBheWxvYWQiLCJ0eXBlIiwic2V0U3RhdGUiLCJmb3JtVHlwZSIsInNpemUiLCJ0YWJsZVNpemUiLCJjaGVja2VkVHJlZUtleXMiLCJzdGF0ZSIsIm5hbWUiLCJ1c2VyVHlwZSIsImFjY291bnQiLCJ2YWx1ZSIsImRlcHRJZCIsInRhYmxlTG9hZCIsInN0b3JlUHJlZml4IiwiY29udGVudCIsInNlbGVjdGVkUm93S2V5cyIsInNlbGVjdGVkUm93RGF0YXMiLCJ0cmVlU2VsZWN0ZWRLZXkiLCJleHBhbmQiLCJpbml0RGF0YSIsIndpbmRvdyIsImFkZEV2ZW50TGlzdGVuZXIiLCJsaXN0ZW5NZXNzYWdlIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsImVkaXRvcmZsYWciLCJlZGl0b3JSZWYiLCJjdXJyZW50Iiwic2hvdyIsImhpZGVGb3JtIiwiZGVsZXRlVXJsIiwib25EZWxldGUiLCJkZWxldGVQYXJhbXMiLCJsZW5ndGgiLCJ3YXJuaW5nIiwiRXJyb3IiLCJjb25maXJtIiwidGl0bGUiLCJva1RleHQiLCJjYW5jZWxUZXh0Iiwib25PayIsImRlZmF1bHRQYXJhbXMiLCJtZXRob2QiLCJwYXJhbXMiLCJpZHMiLCJqb2luIiwicmVxdWVzdFBhcmFtcyIsInRoZW4iLCJyZXMiLCJjb2RlIiwic3VjY2VzcyIsImVycm9yIiwiY2F0Y2giLCJjb25zb2xlIiwibG9nIiwidGFibGVSZWYiLCJzdG9yZSIsImxvYWQiLCJvblNlYXJjaCIsImZyb21WYWx1ZSIsInNlYXJjaFJlZiIsImdldEZpZWxkc1ZhbHVlIiwicmVsb2FkIiwicmVjb3JkIiwic2VsZWN0ZWQiLCJuZXdTZWxlY3RlZFJvd0tleXMiLCJuZXdTZWxlY3RlZFJvd0RhdGFzIiwiaWQiLCJtYXAiLCJpdGVtIiwiaW5kZXgiLCJzcGxpY2UiLCJzZWxlY3RlZFJvd3MiLCJjaGFuZ2VSb3dzIiwibmV3aWRzIiwibmV3ZGF0YXMiLCJjaGFuZ2VJZHMiLCJpbmRleE9mIiwicHVzaCIsImNvbHVtbkJ1dHRvbnMiLCJlZGl0b3JGb3JtIiwiYnV0dG9ucyIsImZsYWciLCJjaGlsZHJlbiIsInBhZ2VUeXBlIiwib25DbGljayIsImljb24iLCJzZWxlY3RlZEtleXMiLCJzZWxlY3RlZE5vZGVzIiwia2V5d29yZCIsInRyZWVQcm9wcyIsInNlYXJjaEtleSIsInNlYXJjaEZpZWxkIiwiaXNMZWFmIiwiZGF0YXJlZiIsImF0dHJpYnV0ZSIsInJlc2V0RmllbGRzIiwidGV4dCIsIm5ld1RleHQiLCJpIiwibGFiZWwiLCJjb2x1bW5zIiwic2hvd1NlYXJjaCIsInN1Ym1pdFVybCIsInRhYmxlUHJvcHMiLCJzaG93TGVmdCIsInN1Ym1pdFBhcmFtcyIsInNob3dUb29sQnV0dG9uIiwib25TaG93Rm9ybSIsImZvcm1DaGFuZ2VWYWxpZCIsImNsYXNzTmFtZSIsImZpbHRlckNvbHVtbiIsImFjdGlvbkNvbHVtbiIsInNob3dSb3dTZWxlY3Rpb24iLCJjb2x1bW5PcmRlciIsIm90aGVydGFibGVQYXJhbXMiLCJ0cmVlU3RvcmUiLCJ0cmVlU2VhcmNoIiwidGl0bGVBbGlhcyIsIm90aGVydHJlZVBhcmFtcyIsInRhYmxlUGFyYW1zIiwicm93U2VsZWN0aW9uIiwib25TZWxlY3QiLCJyb3dTZWxlY3Rpb25PblNlbGVjdCIsImJpbmQiLCJvblNlbGVjdEFsbCIsInJvd1NlbGVjdGlvbk9uU2VsZWN0QWxsIiwiY29sdW1uV2lkdGgiLCJ0YWJsZUNvbHVtbiIsInNlYXJjaEZvcm1zIiwiZWRpdG9yRm9ybXMiLCJkZWZhdWx0VmFsdWUiLCJ0ZW1wIiwic2VhcmNoIiwiZmllbGQiLCJkYXRhSW5kZXgiLCJlZGl0b3IiLCJydWxlcyIsInNwYW4iLCJkaWN0TmFtZSIsInVuZGVmaW5lZCIsImNvbHVtblNlYXJjaCIsImZpbHRlclByb3BzIiwidGVtcFByb3AiLCJzdHlsZSIsInJlbmRlciIsImdldFRleHQiLCJjb2x1bW5TaG93Iiwic2VsZkJ1dHRvbnMiLCJzaG93Rm9ybSIsIkFycmF5IiwiaXNBcnJheSIsImFsaWduIiwid2lkdGgiLCJmaXhlZCIsInJlbmRlckNsb3VtbkJ1dHRvbiIsImhlYWRlckNvdW50IiwicmVhY29yZCIsImRpc3BsYXkiLCJ0cmVlU2VsZWN0IiwicGxhY2Vob2xkZXIiLCJtYXJnaW5Ub3AiLCJyZXNldFNlYXJjaCIsInJlZnJlc2giLCJhX3N0eWxlIiwibWFyZ2luTGVmdCIsImFkZCIsImRlbGV0ZTMiLCJleHBhbmRJY29uIiwiZXhwYW5kZWQiLCJvbkV4cGFuZCIsImUiLCJjaGlsZE5vZGVzIiwidGFibGVSZWxvYWQiLCJvblN1Ym1pdCIsIm9uSGlkZUZvcm0iLCJvbkZvcm1DaGFuZ2UiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU9BLEtBQVAsSUFBZ0JDLGFBQWhCLFFBQXFDLE9BQXJDO0FBQ0EsT0FBT0MsS0FBUCxNQUFrQixrQkFBbEI7QUFDQSxPQUFPQyxJQUFQLE1BQWlCLGlCQUFqQjtBQUNBLE9BQU9DLElBQVAsTUFBaUIsaUJBQWpCO0FBQ0EsT0FBT0MsTUFBUCxNQUFtQixtQkFBbkI7QUFDQSxPQUFPQyxLQUFQ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O0FBeUJFLFFBQUEsUUFBUSxFQUFFLElBekJaO0FBMEJFLFFBQUEsSUFBSSxFQUFFLEtBQUs0QixLQUFMLENBQVdGO0FBMUJuQixTQTJCTW1ILFdBM0JOLEVBREYsQ0FyR0YsQ0FsQkYsRUF1Skd4QyxVQUFVLGlCQUNULG9CQUFDLFVBQUQ7QUFDRSxRQUFBLEdBQUcsRUFBRSxLQUFLdEQsU0FEWjtBQUVFLFFBQUEsUUFBUSxFQUFFLEtBQUttSixXQUFMLENBQWlCakQsSUFBakIsQ0FBc0IsSUFBdEIsQ0FGWjtBQUdFLFFBQUEsU0FBUyxFQUFFTSxXQUhiO0FBSUUsUUFBQSxTQUFTLEVBQUUzQixTQUpiO0FBS0UsUUFBQSxZQUFZLEVBQUVHLFlBTGhCO0FBTUUsUUFBQSxRQUFRLEVBQUUsS0FBS2xILEtBQUwsQ0FBV3NMLFFBTnZCO0FBT0UsUUFBQSxZQUFZLEVBQUUzQyxZQVBoQjtBQVFFLFFBQUEsVUFBVSxFQUFFLEtBQUszSSxLQUFMLENBQVd1TCxVQVJ6QjtBQVNFLFFBQUEsWUFBWSxFQUFFLEtBQUt2TCxLQUFMLENBQVd3TCxZQVQzQjtBQVVFLFFBQUEsUUFBUSxFQUFFLEtBQUt4TCxLQUFMLENBQVdXLFFBQVgsSUFBdUIsS0FBS0ksS0FBTCxDQUFXSixRQVY5QztBQVdFLFFBQUEsV0FBVyxFQUFFMEc7QUFYZixRQXhKSixDQURGO0FBeUtEOzs7O0VBeHJCb0I5SSxhOztBQTByQnZCLGVBQWV3QixRQUFmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IFB1cmVDb21wb25lbnQgfSBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IFRhYmxlIGZyb20gXCIuLi8uLi9iYXNlL3RhYmxlXCI7XHJcbmltcG9ydCBUcmVlIGZyb20gXCIuLi8uLi9iYXNlL3RyZWVcIjtcclxuaW1wb3J0IEZvcm0gZnJvbSBcIi4uLy4uL2Jhc2UvZm9ybVwiO1xyXG5pbXBvcnQgQnV0dG9uIGZyb20gXCIuLi8uLi9iYXNlL2J1dHRvblwiO1xyXG5pbXBvcnQgTW9kYWwgZnJvbSBcIi4uLy4uL2Jhc2UvbW9kYWxcIjtcclxuaW1wb3J0IFBvcG92ZXIgZnJvbSBcIi4uLy4uL2Jhc2UvcG9wb3ZlclwiO1xyXG5pbXBvcnQgbWVzc2FnZSBmcm9tIFwiLi4vLi4vYmFzZS9tZXNzYWdlXCI7XHJcbmltcG9ydCBJY29uIGZyb20gXCIuLi8uLi9iYXNlL2NvbW1vbi9JY29uRm9udFwiO1xyXG5pbXBvcnQgeyBpY29uVHlwZSB9IGZyb20gXCIuLi8uLi9jb25zdGFudHNcIjtcclxuaW1wb3J0IEVkaXRvckZvcm0gZnJvbSBcIi4vRm9ybVwiO1xyXG5pbXBvcnQgY2xzIGZyb20gXCJjbGFzc25hbWVzXCI7XHJcbmltcG9ydCBzdHlsZXMgZnJvbSBcIi4vaW5kZXgubW9kdWxlLmxlc3NcIjtcclxuaW1wb3J0IFN0b3JlLCB7IFBhZ2VTdG9yZSwgU3RvcmVQcm9wcyB9IGZyb20gXCJAYmotbnNjL21zblwiO1xyXG5pbXBvcnQge1xyXG4gIERvd25PdXRsaW5lZCxcclxuICBVcE91dGxpbmVkLFxyXG4gIEV5ZU91dGxpbmVkLFxyXG4gIEVkaXRPdXRsaW5lZCxcclxuICBSaWdodE91dGxpbmVkLFxyXG59IGZyb20gXCJAYW50LWRlc2lnbi9pY29uc1wiO1xyXG5pbXBvcnQgeyBnZXRMZXNzLCBnZXROb2RlIH0gZnJvbSBcIi4uLy4uL3V0aWxzXCI7XHJcbmltcG9ydCByZXF1ZXN0IGZyb20gXCJuc2MtcmVxdWVzdFwiO1xyXG5pbXBvcnQgb21pdCBmcm9tIFwib21pdC5qc1wiO1xyXG5pbXBvcnQgY29uZmlnIGZyb20gXCIuLi8uLi9jb25maWdcIjtcclxuaW1wb3J0IHsgZ2V0U3RvcmFnZSB9IGZyb20gXCJAYmotbnNjL2Z1bmN0aW9uc1wiO1xyXG5pbnRlcmZhY2UgVGFibGVQcm9wcyB7XHJcbiAgYWN0aW9uQ29sdW1uPzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLrmk43kvZzliJdcclxuICBzdG9yZT86IFN0b3JlUHJvcHM7XHJcbiAgZmlsdGVyQ29sdW1uPzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLrov4fmu6TmjInpkq5cclxuICBzaG93Um93U2VsZWN0aW9uPzogYm9vbGVhbjsgLy/mmK/lkKbooajmoLzli77pgInliJdcclxuICBwYWdpbmF0aW9uPzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLrliIbpobVcclxuICBjb2x1bW5PcmRlcj86IGJvb2xlYW47IC8v5piv5ZCm5pi+56S66KGo5qC85bqP5YiXXHJcbiAgW3Byb3BzTmFtZTogc3RyaW5nXTogYW55O1xyXG59XHJcbmludGVyZmFjZSBUcmVlUHJvcHMge1xyXG4gIHN0b3JlPzogU3RvcmVQcm9wcztcclxuICBzaG93U2VhcmNoPzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLrmkJzntKLmoYZcclxuICBzZWFyY2hLZXk/OiBzdHJpbmc7IC8v5pCc57SidmFsdWXlr7nlupTnmoRrZXlcclxuICBzZWFyY2hGaWVsZD86IHN0cmluZzsgLy/mn6Xor6Llr7nlupTnmoRrZXlcclxuICB0aXRsZUFsaWFzPzogc3RyaW5nOyAvL+agkXRpdGxl5a+55bqU55qEa2V5LOm7mOiupHRpdGxlXHJcbiAgbm9kZVBvcnBzPzogb2JqZWN0O1xyXG4gIFtwcm9wc05hbWU6IHN0cmluZ106IGFueTtcclxufVxyXG5pbnRlcmZhY2UgTlNDQmFzZUJhZ2VQcm9wcyB7XHJcbiAgc2hvd1NlYXJjaD86IGJvb2xlYW47IC8v5piv5ZCm5pi+56S65aS06YOo5pCc57Si5qCPXHJcbiAgdGFibGVQcm9wcz86IFRhYmxlUHJvcHM7IC8v6KGo5qC85Y+C5pWwXHJcbiAgdHJlZVByb3BzPzogVHJlZVByb3BzOyAvL+W3puS+p+agkeWPguaVsFxyXG4gIHN1Ym1pdFBhcmFtcz86IE9iamVjdDsgLy/mt7vliqDlj4LmlbDvvIzpu5jorqRtb3Rob2Q6cG9zdO+8jCDlj4LmlbDpgJrov4dkYXRh5Lyg6YCSXHJcbiAgc3VibWl0VXJsPzogc3RyaW5nO1xyXG4gIG9uU3VibWl0PzogKHZhbHVlPzogYW55LCBsYWJlbD86IGFueSkgPT4gdm9pZDtcclxuICBjb2x1bW5zOiBBcnJheTxPYmplY3Q+O1xyXG4gIHNob3dMZWZ0PzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLrlt6bkvqfnm67lvZXmoJFcclxuICBzaG93VG9vbEJ1dHRvbj86IGJvb2xlYW47IC8v5piv5ZCm5pi+56S65oyJ6ZKu5qCPXHJcbiAgZWRpdG9yRm9ybT86IGJvb2xlYW47IC8v5piv5ZCm6ZyA6KaB6KGo5Y2V5Yqf6IO9ICwg5Li6ZmFsc2Ug57yW6L6R77yM5p+l55yL77yM5paw5aKe5Yqf6IO95Z2H5LiN5Y+v55SoXHJcbiAgZGVsZXRlVXJsPzogc3RyaW5nOyAvL+WIoOmZpHVybFxyXG4gIG9uRGVsZXRlPzogKHNlbGVjdGVkS2V5cz86IEFycmF5PGFueT4pID0+IHZvaWQ7IC8v5Yig6Zmk5Y+C5pWw77yM6buY6K6kbW90aG9kOnBvc3TvvIwg5Y+C5pWw6YCa6L+HaWRz5ou85o6l5Lyg6YCS57uZ5ZCO5Y+wXHJcbiAgZGVsZXRlUGFyYW1zPzogT2JqZWN0O1xyXG4gIGNoaWxkcmVuPzogUmVhY3QuUmVhY3ROb2RlO1xyXG4gIG9uU2VhcmNoPzogKHZhbHVlPzogYW55KSA9PiB2b2lkO1xyXG4gIGluaXREYXRhPzogYW55OyAvL+WIneWni+WMluWbnuiwg+WHveaVsO+8jOWcqGNvbXBvbmVudERpZE1vdW505Lit6LCD55SoXHJcbiAgYnV0dG9ucz86IEFycmF5PHN0cmluZz47IC8v5oyJ6ZKu6ZuG5ZCIICBbJ2FkZCcsJ2RlbGV0ZScsJ3NlYXJjaCcsJ2VkaXRvciddXHJcbiAgb25TaG93Rm9ybT86ICh2YWx1ZT86IGFueSwgZWRpdG9yRmxhZz86IHN0cmluZykgPT4gdm9pZDsgLy/miZPlvIDooajljZXlm57osINcclxuICBvbkhpZGVGb3JtPzogKCkgPT4gdm9pZDsgLy/miZPlvIDooajljZXlm57osINcclxuICBvbkZvcm1DaGFuZ2U/OiAoY2hhbmdlZFZhbHVlcz86IGFueSwgYWxsVmFsdWVzPzogYW55KSA9PiB2b2lkOyAvL+ihqOWNlW9uQ2hhbmdl5Zue6LCDXHJcbiAgZm9ybVR5cGU/OiBcIm1vZGFsXCIgfCBcImRyYXdlclwiO1xyXG4gIGZvcm1DaGFuZ2VWYWxpZD86IGJvb2xlYW47IC8v6KGo5Y2V5qCh6aqMXHJcbiAgY2xhc3NOYW1lPzogYW55O1xyXG59XHJcblxyXG5jbGFzcyBCYXNlUGFnZSBleHRlbmRzIFB1cmVDb21wb25lbnQ8TlNDQmFzZUJhZ2VQcm9wcywgYW55PiB7XHJcbiAgdGFibGVSZWYgPSBSZWFjdC5jcmVhdGVSZWY8YW55PigpO1xyXG4gIHRyZWVSZWYgPSBSZWFjdC5jcmVhdGVSZWY8YW55PigpO1xyXG4gIHNlYXJjaFJlZiA9IFJlYWN0LmNyZWF0ZVJlZjxhbnk+KCk7XHJcbiAgZWRpdG9yUmVmID0gUmVhY3QuY3JlYXRlUmVmPGFueT4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJvcHM6IGFueSkge1xyXG4gICAgc3VwZXIocHJvcHMpO1xyXG4gICAgbGV0IHsgc3RvcmVQcmVmaXggfSA9IGNvbmZpZygpO1xyXG4gICAgbGV0IHR5cGUgPSBnZXRTdG9yYWdlKFxyXG4gICAgICBzdG9yZVByZWZpeCA/IHN0b3JlUHJlZml4ICsgXCItXCIgKyBcImZvcm1UeXBlXCIgOiBcImZvcm1UeXBlXCJcclxuICAgICk7XHJcbiAgICB0eXBlID0gdHlwZT8uY29udGVudDtcclxuICAgIGxldCBzaXplID0gZ2V0U3RvcmFnZShcclxuICAgICAgc3RvcmVQcmVmaXggPyBzdG9yZVByZWZpeCArIFwiLVwiICsgXCJ0YWJsZVNpemVcIiA6IFwidGFibGVTaXplXCJcclxuICAgICk7XHJcbiAgICB0eXBlID0gdHlwZT8uY29udGVudDtcclxuICAgIHNpemUgPSBzaXplPy5jb250ZW50O1xyXG4gICAgdGhpcy5zdGF0ZSA9IHtcclxuICAgICAgdHlwZTogXCJhZGRcIixcclxuICAgICAgc2VsZWN0ZWRSb3dLZXlzOiBbXSxcclxuICAgICAgc2VsZWN0ZWRSb3dEYXRhczogW10sXHJcbiAgICAgIHRyZWVTZWxlY3RlZEtleTogXCJcIixcclxuICAgICAgZXhwYW5kOiBmYWxzZSxcclxuICAgICAgZm9ybVR5cGU6IHR5cGUgfHwgXCJtb2RhbFwiLFxyXG4gICAgICB0YWJsZVNpemU6IHNpemUgfHwgXCJkZWZhdWx0XCIsXHJcbiAgICB9O1xyXG4gIH1cclxuICBjb21wb25lbnREaWRNb3VudCgpIHtcclxuICAgIGNvbnN0IHsgaW5pdERhdGEgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpbml0RGF0YSAmJiBpbml0RGF0YSgpO1xyXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoXCJtZXNzYWdlXCIsIHRoaXMubGlzdGVuTWVzc2FnZSk7XHJcbiAgfVxyXG5cclxuICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcclxuICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKFwibWVzc2FnZVwiLCB0aGlzLmxpc3Rlbk1lc3NhZ2UpO1xyXG4gIH1cclxuICBsaXN0ZW5NZXNzYWdlID0gKGV2KSA9PiB7XHJcbiAgICBjb25zdCBkYXRhID0gdHlwZW9mIGV2LmRhdGEgPT09IFwic3RyaW5nXCIgPyBKU09OLnBhcnNlKGV2LmRhdGEpIDogZXYuZGF0YTtcclxuICAgIGxldCBfdGhpcyA9IHRoaXM7XHJcbiAgICBpZiAoZGF0YS5ldmVudFR5cGUgPT0gXCJjaGFuZ2VGb3JtVHlwZVwiKSB7XHJcbiAgICAgIGNvbnN0IHsgcGF5bG9hZCB9ID0gZGF0YTtcclxuICAgICAgaWYgKHBheWxvYWQudHlwZSA9PSBcIm1vZGFsXCIgfHwgcGF5bG9hZC50eXBlID09IFwiZHJhd2VyXCIpIHtcclxuICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7IGZvcm1UeXBlOiBwYXlsb2FkLnR5cGUgfSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmIChkYXRhLmV2ZW50VHlwZSA9PSBcImNoYW5nZVRhYmxlU2l6ZVwiKSB7XHJcbiAgICAgIGNvbnN0IHsgcGF5bG9hZCB9ID0gZGF0YTtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIHBheWxvYWQuc2l6ZSA9PSBcImRlZmF1bHRcIiB8fFxyXG4gICAgICAgIHBheWxvYWQuc2l6ZSA9PSBcInNtYWxsXCIgfHxcclxuICAgICAgICBwYXlsb2FkLnNpemUgPT0gXCJtaWRkbGVcIlxyXG4gICAgICApIHtcclxuICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7IHRhYmxlU2l6ZTogcGF5bG9hZC5zaXplIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfTtcclxuICBvblNlbGVjdCA9IChjaGVja2VkVHJlZUtleXM6IGFueSkgPT4ge1xyXG4gICAgY29uc3QgeyBuYW1lLCB1c2VyVHlwZSwgYWNjb3VudCB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGNvbnN0IHZhbHVlID0geyBuYW1lLCB1c2VyVHlwZSwgYWNjb3VudCwgZGVwdElkOiBjaGVja2VkVHJlZUtleXNbMF0gfTtcclxuICAgIHRoaXMudGFibGVMb2FkKHZhbHVlKTtcclxuICB9O1xyXG5cclxuICAvL+aYvuekuuihqOWNlVxyXG4gIHNob3dGb3JtKHZhbHVlPzogYW55LCBlZGl0b3JmbGFnID0gXCJhZGRcIikge1xyXG4gICAgdGhpcy5lZGl0b3JSZWYuY3VycmVudD8uc2hvdyh2YWx1ZSwgZWRpdG9yZmxhZyk7XHJcbiAgfVxyXG5cclxuICAvL+WFs+mXreihqOWNlVxyXG4gIGhpZGVGb3JtKCkge1xyXG4gICAgdGhpcy5lZGl0b3JSZWYuY3VycmVudD8uaGlkZUZvcm0oKTtcclxuICB9XHJcblxyXG4gIC8v5om56YeP5Yig6ZmkXHJcbiAgb25EZWxldGUoKSB7XHJcbiAgICBjb25zdCB7IGRlbGV0ZVVybCwgb25EZWxldGUsIGRlbGV0ZVBhcmFtcyB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgc2VsZWN0ZWRSb3dLZXlzIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgaWYgKHNlbGVjdGVkUm93S2V5cy5sZW5ndGggPT0gMCkge1xyXG4gICAgICBtZXNzYWdlLndhcm5pbmcoXCLor7fpgInmi6nopoHliKDpmaTnmoTmlbDmja7vvIFcIik7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmIChvbkRlbGV0ZSkge1xyXG4gICAgICBvbkRlbGV0ZSAmJiBvbkRlbGV0ZShzZWxlY3RlZFJvd0tleXMpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAoIWRlbGV0ZVVybCkge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1cmzkuI3og73kuLrnqbrvvIFcIik7XHJcbiAgICB9XHJcbiAgICBNb2RhbC5jb25maXJtKHtcclxuICAgICAgdGl0bGU6IFwi5piv5ZCm56Gu6K6k5Yig6Zmk5omA6YCJ6aG577yfXCIsXHJcbiAgICAgIG9rVGV4dDogXCLnoa7orqRcIixcclxuICAgICAgY2FuY2VsVGV4dDogXCLlj5bmtohcIixcclxuICAgICAgb25PazogKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGRlZmF1bHRQYXJhbXMgPSB7XHJcbiAgICAgICAgICBtZXRob2Q6IFwicG9zdFwiLFxyXG4gICAgICAgICAgcGFyYW1zOiB7IGlkczogc2VsZWN0ZWRSb3dLZXlzLmpvaW4oKSB9LFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgbGV0IHJlcXVlc3RQYXJhbXMgPSB7fSBhcyBhbnk7XHJcbiAgICAgICAgaWYgKGRlZmF1bHRQYXJhbXMpIHtcclxuICAgICAgICAgIHJlcXVlc3RQYXJhbXMgPSB7IC4uLmRlbGV0ZVBhcmFtcyB9O1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXF1ZXN0UGFyYW1zID0geyAuLi5kZWZhdWx0UGFyYW1zIH07XHJcbiAgICAgICAgcmVxdWVzdChkZWxldGVVcmwsIHtcclxuICAgICAgICAgIC4uLnJlcXVlc3RQYXJhbXMsXHJcbiAgICAgICAgfSlcclxuICAgICAgICAgIC50aGVuKGZ1bmN0aW9uIChyZXM6IGFueSkge1xyXG4gICAgICAgICAgICBjb25zdCB7IGNvZGUgfSA9IHJlcztcclxuICAgICAgICAgICAgaWYgKGNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgIG1lc3NhZ2Uuc3VjY2VzcyhcIuWIoOmZpOaIkOWKn++8gVwiKTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBtZXNzYWdlLmVycm9yKFwi5Yig6Zmk5aSx6LSl77yBXCIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICAgLmNhdGNoKGZ1bmN0aW9uIChlcnJvcjogYW55KSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiZXJyb3JcIiwgZXJyb3IpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuICB9XHJcbiAgdGFibGVMb2FkKHBhcmFtczogYW55KSB7XHJcbiAgICB0aGlzLnRhYmxlUmVmLmN1cnJlbnQ/LnN0b3JlLmxvYWQoe1xyXG4gICAgICBwYXJhbXM6IHBhcmFtcyxcclxuICAgIH0pO1xyXG4gIH1cclxuICAvL+afpeivolxyXG4gIG9uU2VhcmNoKCkge1xyXG4gICAgY29uc3QgeyBvblNlYXJjaCB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IGZyb21WYWx1ZSA9IHRoaXMuc2VhcmNoUmVmLmN1cnJlbnQ/LmdldEZpZWxkc1ZhbHVlKCk7XHJcbiAgICBpZiAob25TZWFyY2gpIHtcclxuICAgICAgb25TZWFyY2goZnJvbVZhbHVlKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy50YWJsZUxvYWQoZnJvbVZhbHVlKTtcclxuICB9XHJcbiAgLy/ooajmoLzph43mlrDliqDovb1cclxuICB0YWJsZVJlbG9hZCgpIHtcclxuICAgIHRoaXMudGFibGVSZWYuY3VycmVudD8uc3RvcmUucmVsb2FkKCk7XHJcbiAgfVxyXG4gIGdldFNlbGVjdGVkUm93S2V5cygpIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXRlLnNlbGVjdGVkUm93S2V5cztcclxuICB9XHJcbiAgZ2V0U2VsZWN0ZWRSb3dEYXRhcygpIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXRlLnNlbGVjdGVkUm93RGF0YXM7XHJcbiAgfVxyXG4gIGdldFNlYXJjaFZhbHVlcygpIHtcclxuICAgIGNvbnN0IGZyb21WYWx1ZSA9IHRoaXMuc2VhcmNoUmVmLmN1cnJlbnQ/LmdldEZpZWxkc1ZhbHVlKCk7XHJcbiAgICByZXR1cm4gZnJvbVZhbHVlO1xyXG4gIH1cclxuICByb3dTZWxlY3Rpb25PblNlbGVjdChyZWNvcmQ6IGFueSwgc2VsZWN0ZWQ6IGFueSkge1xyXG4gICAgY29uc3QgeyBzZWxlY3RlZFJvd0tleXMsIHNlbGVjdGVkUm93RGF0YXMgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBsZXQgbmV3U2VsZWN0ZWRSb3dLZXlzID0gWy4uLnNlbGVjdGVkUm93S2V5c107XHJcbiAgICBsZXQgbmV3U2VsZWN0ZWRSb3dEYXRhcyA9IFsuLi5zZWxlY3RlZFJvd0RhdGFzXTtcclxuICAgIGlmIChzZWxlY3RlZCkge1xyXG4gICAgICBuZXdTZWxlY3RlZFJvd0tleXMgPSBbLi4ubmV3U2VsZWN0ZWRSb3dLZXlzLCByZWNvcmQuaWRdO1xyXG4gICAgICBuZXdTZWxlY3RlZFJvd0RhdGFzID0gWy4uLm5ld1NlbGVjdGVkUm93RGF0YXMsIHJlY29yZF07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBzZWxlY3RlZFJvd0tleXMubWFwKChpdGVtOiBhbnksIGluZGV4OiBhbnkpID0+IHtcclxuICAgICAgICBpZiAoaXRlbSA9PT0gcmVjb3JkLmlkKSB7XHJcbiAgICAgICAgICBuZXdTZWxlY3RlZFJvd0tleXMuc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICBzZWxlY3RlZFJvd0RhdGFzLm1hcCgoaXRlbTogYW55LCBpbmRleDogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKGl0ZW0uaWQgPT09IHJlY29yZC5pZCkge1xyXG4gICAgICAgICAgbmV3U2VsZWN0ZWRSb3dEYXRhcy5zcGxpY2UoaW5kZXgsIDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgc2VsZWN0ZWRSb3dLZXlzOiBuZXdTZWxlY3RlZFJvd0tleXMsXHJcbiAgICAgIHNlbGVjdGVkUm93RGF0YXM6IG5ld1NlbGVjdGVkUm93RGF0YXMsXHJcbiAgICB9KTtcclxuICB9XHJcbiAgcm93U2VsZWN0aW9uT25TZWxlY3RBbGwoc2VsZWN0ZWQ6IGFueSwgc2VsZWN0ZWRSb3dzOiBhbnksIGNoYW5nZVJvd3M6IGFueSkge1xyXG4gICAgY29uc3QgeyBzZWxlY3RlZFJvd0tleXMsIHNlbGVjdGVkUm93RGF0YXMgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBsZXQgbmV3aWRzOiBhbnkgPSBbXTtcclxuICAgIGxldCBuZXdkYXRhczogYW55ID0gW107XHJcbiAgICBpZiAoY2hhbmdlUm93cy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGxldCBjaGFuZ2VJZHMgPSBjaGFuZ2VSb3dzLm1hcCgoaXRlbTogYW55KSA9PiBpdGVtLmlkKTtcclxuICAgICAgaWYgKHNlbGVjdGVkKSB7XHJcbiAgICAgICAgbmV3aWRzID0gWy4uLnNlbGVjdGVkUm93S2V5cywgLi4uY2hhbmdlSWRzXTtcclxuICAgICAgICBuZXdkYXRhcyA9IFsuLi5zZWxlY3RlZFJvd0RhdGFzLCAuLi5jaGFuZ2VSb3dzXTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBzZWxlY3RlZFJvd0tleXMubWFwKChpdGVtOiBhbnksIGluZGV4OiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmIChjaGFuZ2VJZHMuaW5kZXhPZihpdGVtKSA9PSAtMSkge1xyXG4gICAgICAgICAgICBuZXdpZHMucHVzaChpdGVtKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgICBzZWxlY3RlZFJvd0RhdGFzLm1hcCgoaXRlbTogYW55LCBpbmRleDogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAoY2hhbmdlSWRzLmluZGV4T2YoaXRlbS5pZCkgPT0gLTEpIHtcclxuICAgICAgICAgICAgbmV3ZGF0YXMucHVzaChpdGVtKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbmV3aWRzID0gWy4uLnNlbGVjdGVkUm93S2V5c107XHJcbiAgICAgIG5ld2RhdGFzID0gWy4uLnNlbGVjdGVkUm93RGF0YXNdO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgIHNlbGVjdGVkUm93S2V5czogWy4uLm5ld2lkc10sXHJcbiAgICAgIHNlbGVjdGVkUm93RGF0YXM6IFsuLi5uZXdkYXRhc10sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHJlbmRlckNsb3VtbkJ1dHRvbihjb2x1bW5CdXR0b25zOiBhbnksIHJlY29yZDogYW55KSB7XHJcbiAgICBjb25zdCB7IGVkaXRvckZvcm0gPSB0cnVlLCBidXR0b25zID0gW10gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCBmbGFnID0gY29sdW1uQnV0dG9ucy5sZW5ndGggPiAzO1xyXG5cclxuICAgIGNvbnN0IGNvbnRlbnQgPSBjb2x1bW5CdXR0b25zLm1hcCgoaXRlbTogYW55LCBpbmRleDogYW55KSA9PiB7XHJcbiAgICAgIGNvbnN0IHsgY2hpbGRyZW4sIHBhZ2VUeXBlLCBvbkNsaWNrLCBpY29uLCAuLi5wYXJhbXMgfSA9IGl0ZW0ucHJvcHM7XHJcbiAgICAgIGlmIChpbmRleCA+IDEpIHtcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICBjbGFzc05hbWU9e2NscyhcclxuICAgICAgICAgICAgICBnZXRMZXNzKHN0eWxlcywgXCJlZGl0b3JcIiksXHJcbiAgICAgICAgICAgICAgZ2V0TGVzcyhzdHlsZXMsIFwiY29udGVudC1pdGVtXCIpXHJcbiAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgIGtleT17aW5kZXh9XHJcbiAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcclxuICAgICAgICAgICAgICBvbkNsaWNrICYmIG9uQ2xpY2socmVjb3JkKTtcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgey4uLnBhcmFtc31cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJpY29uXCIpfT57aWNvbn08L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwidGV4dFwiKX0+e2NoaWxkcmVufTwvc3Bhbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIGNvbHVtbkJ1dHRvbnMubWFwKChpdGVtOiBhbnksIGluZGV4OiBhbnkpID0+IHtcclxuICAgICAgY29uc3QgeyBjaGlsZHJlbiwgcGFnZVR5cGUsIG9uQ2xpY2ssIGljb24sIC4uLnBhcmFtcyB9ID0gaXRlbS5wcm9wcztcclxuICAgICAgaWYgKGZsYWcpIHtcclxuICAgICAgICBpZiAoaW5kZXggPCAyKSB7XHJcbiAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJlZGl0b3JcIil9XHJcbiAgICAgICAgICAgICAga2V5PXtpbmRleH1cclxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBvbkNsaWNrICYmIG9uQ2xpY2socmVjb3JkKTtcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIHsuLi5wYXJhbXN9XHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImljb25cIil9PntpY29ufTwvc3Bhbj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcInRleHRcIil9PntjaGlsZHJlbn08L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9IGVsc2UgaWYgKGluZGV4ID09IDIpIHtcclxuICAgICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgIDxQb3BvdmVyXHJcbiAgICAgICAgICAgICAgcGxhY2VtZW50PVwiYm90dG9tXCJcclxuICAgICAgICAgICAgICB0aXRsZT17bnVsbH1cclxuICAgICAgICAgICAgICBjb250ZW50PXtjb250ZW50fVxyXG4gICAgICAgICAgICAgIHRyaWdnZXI9e1tcImNsaWNrXCJdfVxyXG4gICAgICAgICAgICAgIGtleT17aW5kZXh9XHJcbiAgICAgICAgICAgICAgLy8gb3ZlcmxheUNsYXNzTmFtZT17c3R5bGVzWydwb3AnXX1cclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJlZGl0b3JcIil9PlxyXG4gICAgICAgICAgICAgICAgJm5ic3A7IOabtOWkmlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJpY29uXCIpfT5cclxuICAgICAgICAgICAgICAgICAgPERvd25PdXRsaW5lZCAvPlxyXG4gICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L1BvcG92ZXI+XHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJlZGl0b3JcIil9XHJcbiAgICAgICAgICAgIGtleT17aW5kZXh9XHJcbiAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcclxuICAgICAgICAgICAgICBvbkNsaWNrICYmIG9uQ2xpY2socmVjb3JkKTtcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgey4uLnBhcmFtc31cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJpY29uXCIpfT57aWNvbn08L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwidGV4dFwiKX0+e2NoaWxkcmVufTwvc3Bhbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgLy8gfVxyXG4gIH1cclxuICAvL+agkeeCueWHu+S6i+S7tlxyXG4gIHRyZWVTZWxlY3Qoc2VsZWN0ZWRLZXlzOiBhbnksIHsgc2VsZWN0ZWQsIHNlbGVjdGVkTm9kZXMgfTogYW55KSB7XHJcbiAgICBsZXQga2V5d29yZCA9IFwiXCI7XHJcbiAgICBjb25zdCB7IHNlYXJjaEtleSA9IFwia2V5XCIsIHNlYXJjaEZpZWxkID0gXCJcIiB9ID0gdGhpcy5wcm9wcy50cmVlUHJvcHM7XHJcbiAgICBjb25zdCB7IHRyZWVTZWxlY3RlZEtleSB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGlmIChzZWxlY3RlZCkge1xyXG4gICAgICBpZiAoc2VsZWN0ZWROb2Rlc1swXS5pc0xlYWYgfHwgIXNlbGVjdGVkTm9kZXNbMF0uY2hpbGRyZW4pIHtcclxuICAgICAgICBpZiAoc2VsZWN0ZWRLZXlzWzBdICE9PSB0cmVlU2VsZWN0ZWRLZXkpIHtcclxuICAgICAgICAgIC8vIGxldCBtYXBEYXRhID0gdGhpcy50cmVlUmVmLmN1cnJlbnQ/LnN0b3JlLmdldEZsYXR0ZW5EYXRhKCk7XHJcbiAgICAgICAgICBrZXl3b3JkID0gc2VsZWN0ZWROb2Rlc1swXS5kYXRhcmVmLmF0dHJpYnV0ZVtzZWFyY2hLZXldO1xyXG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgICAgICAgIHRyZWVTZWxlY3RlZEtleTogc2VsZWN0ZWRLZXlzWzBdLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICB0cmVlU2VsZWN0ZWRLZXk6IGtleXdvcmQsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgY29uc3QgZnJvbVZhbHVlID0gdGhpcy5zZWFyY2hSZWYuY3VycmVudD8uZ2V0RmllbGRzVmFsdWUoKTtcclxuICAgIHNlYXJjaEZpZWxkICYmIHRoaXMudGFibGVMb2FkKHsgLi4uZnJvbVZhbHVlLCBbc2VhcmNoRmllbGRdOiBrZXl3b3JkIH0pO1xyXG4gIH1cclxuICByZXNldFNlYXJjaCgpIHtcclxuICAgIHRoaXMuc2VhcmNoUmVmLmN1cnJlbnQ/LnJlc2V0RmllbGRzKCk7XHJcbiAgfVxyXG4gIGdldFRleHQocHJvcHMsIHRleHQpIHtcclxuICAgIGxldCBuZXdUZXh0ID0gdGV4dDtcclxuICAgIGlmIChwcm9wcz8uZGF0YSAmJiBwcm9wcz8uZGF0YT8ubGVuZ3RoID4gMCkge1xyXG4gICAgICBsZXQgZGF0YSA9IHByb3BzLmRhdGE7XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YT8ubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICBpZiAoZGF0YVtpXS52YWx1ZSA9PSB0ZXh0KSB7XHJcbiAgICAgICAgICBuZXdUZXh0ID0gZGF0YVtpXS5sYWJlbDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBuZXdUZXh0O1xyXG4gIH1cclxuICByZW5kZXIoKSB7XHJcbiAgICBjb25zdCB7IHNlbGVjdGVkUm93S2V5cyB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGNvbnN0IHtcclxuICAgICAgY29sdW1ucyA9IFtdLFxyXG4gICAgICBzaG93U2VhcmNoID0gdHJ1ZSxcclxuICAgICAgY2hpbGRyZW4sXHJcbiAgICAgIHN1Ym1pdFVybCA9IFwiXCIsXHJcbiAgICAgIHRhYmxlUHJvcHMgPSB7fSxcclxuICAgICAgdHJlZVByb3BzID0ge30sXHJcbiAgICAgIHNob3dMZWZ0ID0gZmFsc2UsXHJcbiAgICAgIHN1Ym1pdFBhcmFtcyA9IHt9LFxyXG4gICAgICBzaG93VG9vbEJ1dHRvbiA9IHRydWUsXHJcbiAgICAgIGJ1dHRvbnMgPSBbXSxcclxuICAgICAgZWRpdG9yRm9ybSA9IHRydWUsXHJcbiAgICAgIG9uU2hvd0Zvcm0sXHJcbiAgICAgIGZvcm1DaGFuZ2VWYWxpZCA9IHRydWUsXHJcbiAgICAgIGNsYXNzTmFtZSxcclxuICAgIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgY29uc3Qge1xyXG4gICAgICBzdG9yZSA9IHt9LFxyXG4gICAgICBmaWx0ZXJDb2x1bW4gPSB0cnVlLFxyXG4gICAgICBhY3Rpb25Db2x1bW4gPSB0cnVlLFxyXG4gICAgICBzaG93Um93U2VsZWN0aW9uID0gdHJ1ZSxcclxuICAgICAgY29sdW1uT3JkZXIgPSB0cnVlLFxyXG4gICAgICAuLi5vdGhlcnRhYmxlUGFyYW1zXHJcbiAgICB9ID0gdGFibGVQcm9wcztcclxuXHJcbiAgICBjb25zdCB7XHJcbiAgICAgIHN0b3JlOiB0cmVlU3RvcmUgPSB7fSxcclxuICAgICAgc2hvd1NlYXJjaDogdHJlZVNlYXJjaCA9IHRydWUsXHJcbiAgICAgIHRpdGxlQWxpYXMgPSBcInRpdGxlXCIsXHJcbiAgICAgIC4uLm90aGVydHJlZVBhcmFtc1xyXG4gICAgfSA9IHRyZWVQcm9wcztcclxuXHJcbiAgICBsZXQgdGFibGVQYXJhbXMgPSB7IGZpbHRlckNvbHVtbiwgc3RvcmUsIC4uLm90aGVydGFibGVQYXJhbXMgfSBhcyBhbnk7XHJcblxyXG4gICAgaWYgKHNob3dSb3dTZWxlY3Rpb24pIHtcclxuICAgICAgdGFibGVQYXJhbXMgPSB7XHJcbiAgICAgICAgLi4udGFibGVQYXJhbXMsXHJcbiAgICAgICAgcm93U2VsZWN0aW9uOiB7XHJcbiAgICAgICAgICBzZWxlY3RlZFJvd0tleXM6IHNlbGVjdGVkUm93S2V5cyxcclxuICAgICAgICAgIG9uU2VsZWN0OiB0aGlzLnJvd1NlbGVjdGlvbk9uU2VsZWN0LmJpbmQodGhpcyksXHJcbiAgICAgICAgICBvblNlbGVjdEFsbDogdGhpcy5yb3dTZWxlY3Rpb25PblNlbGVjdEFsbC5iaW5kKHRoaXMpLFxyXG4gICAgICAgICAgY29sdW1uV2lkdGg6IDQwLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgICBsZXQgdGFibGVDb2x1bW46IGFueVtdID0gW107XHJcbiAgICBjb25zdCBzZWFyY2hGb3JtczogYW55ID0gW107XHJcbiAgICBjb25zdCBlZGl0b3JGb3JtczogYW55ID0gW107XHJcbiAgICBjb25zdCBkZWZhdWx0VmFsdWU6IGFueSA9IHt9O1xyXG4gICAgY29sdW1ucy5tYXAoKGl0ZW06IGFueSkgPT4ge1xyXG4gICAgICBsZXQgdGVtcCA9IHsgLi4uaXRlbSB9O1xyXG4gICAgICBpZiAodGVtcC5zZWFyY2gpIHtcclxuICAgICAgICBzZWFyY2hGb3Jtcy5wdXNoKHtcclxuICAgICAgICAgIG5hbWU6IHRlbXAuZmllbGQgfHwgdGVtcC5kYXRhSW5kZXgsXHJcbiAgICAgICAgICBsYWJlbDogdGVtcC50aXRsZSxcclxuICAgICAgICAgIHR5cGU6IHRlbXAudHlwZSxcclxuICAgICAgICAgIHByb3BzOiB0ZW1wLnByb3BzLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIGRlbGV0ZSB0ZW1wLnNlYXJjaDtcclxuICAgICAgdGVtcC5lZGl0b3IgIT09IGZhbHNlICYmXHJcbiAgICAgICAgZWRpdG9yRm9ybXMucHVzaCh7XHJcbiAgICAgICAgICBuYW1lOiB0ZW1wLmZpZWxkIHx8IHRlbXAuZGF0YUluZGV4LFxyXG4gICAgICAgICAgbGFiZWw6IHRlbXAudGl0bGUsXHJcbiAgICAgICAgICBydWxlczogdGVtcC5ydWxlcyxcclxuICAgICAgICAgIHR5cGU6IHRlbXAudHlwZSxcclxuICAgICAgICAgIHNwYW46IHRlbXAuc3BhbixcclxuICAgICAgICAgIGRpY3ROYW1lOiB0ZW1wLmRpY3ROYW1lLFxyXG4gICAgICAgICAgcHJvcHM6IG9taXQoeyAuLi50ZW1wLnByb3BzIH0sIFtcImRlZmF1bHRWYWx1ZVwiLCBcInZhbHVlXCJdKSxcclxuICAgICAgICB9KTtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIHRlbXAucHJvcHM/LmRlZmF1bHRWYWx1ZSAhPT0gdW5kZWZpbmVkICYmXHJcbiAgICAgICAgdGVtcC5wcm9wcz8uZGVmYXVsdFZhbHVlICE9PSBudWxsXHJcbiAgICAgICkge1xyXG4gICAgICAgIGNvbnN0IG5hbWUgPSB0ZW1wLmZpZWxkIHx8IHRlbXAuZGF0YUluZGV4O1xyXG4gICAgICAgIGRlZmF1bHRWYWx1ZVtuYW1lXSA9IHRlbXAucHJvcHM/LmRlZmF1bHRWYWx1ZTtcclxuICAgICAgfVxyXG4gICAgICBkZWxldGUgdGVtcC5ydWxlcztcclxuICAgICAgZGVsZXRlIHRlbXAuc3BhbjtcclxuICAgICAgaWYgKHRlbXAuY29sdW1uU2VhcmNoKSB7XHJcbiAgICAgICAgdGVtcC5maWx0ZXJQcm9wcyA9IHtcclxuICAgICAgICAgIHR5cGU6IHRlbXAudHlwZSxcclxuICAgICAgICAgIHByb3BzOiB0ZW1wLnByb3BzLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgZGVsZXRlIHRlbXAudHlwZTtcclxuICAgICAgbGV0IHRlbXBQcm9wID0geyAuLi50ZW1wLnByb3BzIH07XHJcbiAgICAgIGlmICh0ZW1wLnN0eWxlKSB7XHJcbiAgICAgICAgdGVtcCA9IHtcclxuICAgICAgICAgIHJlbmRlcjogKHRleHQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICAgIDw+XHJcbiAgICAgICAgICAgICAgICB7dGV4dCAhPT0gXCJcIiAmJiB0ZXh0ICE9PSBudWxsICYmIHRleHQgIT09IHVuZGVmaW5lZCAmJiAoXHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiY29sLWJhY2tcIil9PlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiY29sLXRleHRcIil9PlxyXG4gICAgICAgICAgICAgICAgICAgICAge3RoaXMuZ2V0VGV4dCh0ZW1wUHJvcCwgdGV4dCl9XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICApfVxyXG4gICAgICAgICAgICAgIDwvPlxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIC4uLnRlbXAsXHJcbiAgICAgICAgfTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0ZW1wID0ge1xyXG4gICAgICAgICAgcmVuZGVyOiAodGV4dDogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiA8Pnt0aGlzLmdldFRleHQodGVtcFByb3AsIHRleHQpfTwvPjtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAuLi50ZW1wLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGRlbGV0ZSB0ZW1wLnByb3BzO1xyXG4gICAgICBpZiAodGVtcD8uY29sdW1uU2hvdyAhPT0gZmFsc2UpIHRhYmxlQ29sdW1uLnB1c2godGVtcCk7XHJcbiAgICB9KTtcclxuICAgIGNvbnN0IHNlbGZCdXR0b25zOiBhbnkgPSBbXTtcclxuXHJcbiAgICBjb25zdCBjb2x1bW5CdXR0b25zOiBhbnkgPSBbXTtcclxuICAgIGlmIChlZGl0b3JGb3JtID09IHRydWUpIHtcclxuICAgICAgaWYgKGJ1dHRvbnMuaW5kZXhPZihcInNlYXJjaFwiKSA+IC0xKSB7XHJcbiAgICAgICAgY29sdW1uQnV0dG9ucy5wdXNoKFxyXG4gICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImVkaXRvclwiKX1cclxuICAgICAgICAgICAgb25DbGljaz17KHJlY29yZDogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgaWYgKG9uU2hvd0Zvcm0pIHtcclxuICAgICAgICAgICAgICAgIG9uU2hvd0Zvcm0ocmVjb3JkLmF0dHJpYnV0ZSB8fCByZWNvcmQsIFwiZGV0YWlsXCIpO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB0aGlzLnNob3dGb3JtKHJlY29yZC5hdHRyaWJ1dGUgfHwgcmVjb3JkLCBcImRldGFpbFwiKTtcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJpY29uXCIpfT5cclxuICAgICAgICAgICAgICA8RXllT3V0bGluZWQgLz5cclxuICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcInRleHRcIil9Puafpeecizwvc3Bhbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGJ1dHRvbnMuaW5kZXhPZihcImVkaXRvclwiKSA+IC0xKSB7XHJcbiAgICAgICAgY29sdW1uQnV0dG9ucy5wdXNoKFxyXG4gICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImVkaXRvclwiKX1cclxuICAgICAgICAgICAgb25DbGljaz17KHJlY29yZDogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgaWYgKG9uU2hvd0Zvcm0pIHtcclxuICAgICAgICAgICAgICAgIG9uU2hvd0Zvcm0ocmVjb3JkLmF0dHJpYnV0ZSB8fCByZWNvcmQsIFwiZWRpdG9yXCIpO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB0aGlzLnNob3dGb3JtKHJlY29yZC5hdHRyaWJ1dGUgfHwgcmVjb3JkLCBcImVkaXRvclwiKTtcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJpY29uXCIpfT5cclxuICAgICAgICAgICAgICA8RWRpdE91dGxpbmVkIC8+XHJcbiAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJ0ZXh0XCIpfT7nvJbovpE8L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBpZiAoQXJyYXkuaXNBcnJheShjaGlsZHJlbikpIHtcclxuICAgICAgY2hpbGRyZW4ubWFwKChpdGVtOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAoaXRlbT8ucHJvcHM/LnBhZ2VUeXBlID09IFwidG9vbEJ1dHRvblwiKSB7XHJcbiAgICAgICAgICBzZWxmQnV0dG9ucy5wdXNoKGl0ZW0pO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoaXRlbT8ucHJvcHM/LnBhZ2VUeXBlID09IFwiY2xvdW1uQnV0dG9uXCIpIHtcclxuICAgICAgICAgIGNvbHVtbkJ1dHRvbnMucHVzaChpdGVtKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIGlmIChjaGlsZHJlbikge1xyXG4gICAgICBjb25zdCB7IHByb3BzIH06IGFueSA9IGNoaWxkcmVuO1xyXG4gICAgICBpZiAocHJvcHM/LnBhZ2VUeXBlID09IFwidG9vbEJ1dHRvblwiKSB7XHJcbiAgICAgICAgc2VsZkJ1dHRvbnMucHVzaChjaGlsZHJlbik7XHJcbiAgICAgIH0gZWxzZSBpZiAocHJvcHM/LnBhZ2VUeXBlID09IFwiY2xvdW1uQnV0dG9uXCIpIHtcclxuICAgICAgICBjb2x1bW5CdXR0b25zLnB1c2goY2hpbGRyZW4pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBhY3Rpb25Db2x1bW4gJiZcclxuICAgICAgdGFibGVDb2x1bW4ucHVzaCh7XHJcbiAgICAgICAgdGl0bGU6IFwi5pON5L2cXCIsXHJcbiAgICAgICAgZGF0YUluZGV4OiBcImFjdGlvblwiLFxyXG4gICAgICAgIGFsaWduOiBcImNlbnRlclwiLFxyXG4gICAgICAgIHdpZHRoOiAyNTAsXHJcbiAgICAgICAgZml4ZWQ6IFwicmlnaHRcIixcclxuICAgICAgICByZW5kZXI6ICh0ZXh0OiBhbnksIHJlY29yZDogYW55KSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiYWN0aW9uXCIpfT5cclxuICAgICAgICAgICAgICB7dGhpcy5yZW5kZXJDbG91bW5CdXR0b24oY29sdW1uQnV0dG9ucywgcmVjb3JkKX1cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH0sXHJcbiAgICAgIH0pO1xyXG4gICAgY29uc3QgaGVhZGVyQ291bnQgPSBzaG93TGVmdCA/IDIgOiAzO1xyXG4gICAgaWYgKGNvbHVtbk9yZGVyKVxyXG4gICAgICB0YWJsZUNvbHVtbiA9IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICB0aXRsZTogXCIjXCIsXHJcbiAgICAgICAgICB3aWR0aDogMzAsXHJcbiAgICAgICAgICBhbGlnbjogXCJjZW50ZXJcIixcclxuICAgICAgICAgIHJlbmRlcjogKHRleHQsIHJlYWNvcmQsIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiA8PntpbmRleCArIDF9PC8+O1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIC4uLnRhYmxlQ29sdW1uLFxyXG4gICAgICBdO1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgPGRpdlxyXG4gICAgICAgIGNsYXNzTmFtZT17Y2xzKGdldExlc3Moc3R5bGVzLCBcInBhZ2VcIiksIGNsYXNzTmFtZSl9XHJcbiAgICAgICAgc3R5bGU9e3sgZGlzcGxheTogXCJmbGV4XCIgfX1cclxuICAgICAgPlxyXG4gICAgICAgIHtzaG93TGVmdCAmJiAoXHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwibGVmdFwiKX0+XHJcbiAgICAgICAgICAgIDxUcmVlXHJcbiAgICAgICAgICAgICAgc3RvcmU9e3sgLi4udHJlZVN0b3JlIH19XHJcbiAgICAgICAgICAgICAgc2hvd0ljb249e2ZhbHNlfVxyXG4gICAgICAgICAgICAgIGNoZWNrYWJsZT17ZmFsc2V9XHJcbiAgICAgICAgICAgICAgc2VhcmNoYWJsZT17dHJlZVNlYXJjaH1cclxuICAgICAgICAgICAgICBvblNlbGVjdD17dGhpcy50cmVlU2VsZWN0LmJpbmQodGhpcyl9XHJcbiAgICAgICAgICAgICAgc2VsZWN0ZWRLZXlzPXtbdGhpcy5zdGF0ZS50cmVlU2VsZWN0ZWRLZXldfVxyXG4gICAgICAgICAgICAgIHRpdGxlQWxpYXM9e3RpdGxlQWxpYXN9XHJcbiAgICAgICAgICAgICAgey4uLm90aGVydHJlZVBhcmFtc31cclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICl9XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcInJpZ2h0XCIpfT5cclxuICAgICAgICAgIHtzaG93U2VhcmNoICYmIChcclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImhlYWRlclwiKX0+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2Nscyh7IFtnZXRMZXNzKHN0eWxlcywgXCJmb3JtXCIpXTogIXNob3dMZWZ0IH0pfT5cclxuICAgICAgICAgICAgICAgIDxGb3JtXHJcbiAgICAgICAgICAgICAgICAgIHJlZj17dGhpcy5zZWFyY2hSZWZ9XHJcbiAgICAgICAgICAgICAgICAgIGxhYmVsQ29sPXt7fX1cclxuICAgICAgICAgICAgICAgICAgd3JhcHBlckNvbD17e319XHJcbiAgICAgICAgICAgICAgICAgIGxheW91dD1cImlubGluZVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtzZWFyY2hGb3Jtcy5tYXAoKGl0ZW06IGFueSwgaW5kZXg6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChpbmRleCA+IGhlYWRlckNvdW50ICYmICF0aGlzLnN0YXRlLmV4cGFuZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD17aXRlbS5sYWJlbH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT17aXRlbS5uYW1lfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBydWxlcz17aXRlbS5ydWxlc31cclxuICAgICAgICAgICAgICAgICAgICAgICAga2V5PXtpbmRleH1cclxuICAgICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAge2dldE5vZGUoaXRlbS50eXBlLCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uaXRlbS5wcm9wcyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogYOivt+i+k+WFpSR7aXRlbS5sYWJlbH1gLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KX1cclxuICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxyXG4gICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgICAgICAgPC9Gb3JtPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwic2VhcmNoLWJ1dHRvbnNcIil9XHJcbiAgICAgICAgICAgICAgICBzdHlsZT17eyBtYXJnaW5Ub3A6IDAgfX1cclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8QnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgIHR5cGU9e1wicHJpbWFyeVwifVxyXG4gICAgICAgICAgICAgICAgICBvbkNsaWNrPXt0aGlzLm9uU2VhcmNoLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICAgICAgICAgIGljb249ezxJY29uIHR5cGU9e2ljb25UeXBlLnNlYXJjaH0gLz59XHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIOafpeivolxyXG4gICAgICAgICAgICAgICAgPC9CdXR0b24+XHJcbiAgICAgICAgICAgICAgICA8QnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgIHR5cGU9e1wicHJpbWFyeVwifVxyXG4gICAgICAgICAgICAgICAgICBvbkNsaWNrPXt0aGlzLnJlc2V0U2VhcmNoLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICAgICAgICAgIGljb249ezxJY29uIHR5cGU9e2ljb25UeXBlLnJlZnJlc2h9IC8+fVxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICDph43nva5cclxuICAgICAgICAgICAgICAgIDwvQnV0dG9uPlxyXG4gICAgICAgICAgICAgICAge3NlYXJjaEZvcm1zLmxlbmd0aCA+IDMgJiYgKFxyXG4gICAgICAgICAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17c3R5bGVzLmFfc3R5bGV9XHJcbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBleHBhbmQgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZXhwYW5kOiAhZXhwYW5kLFxyXG4gICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIHt0aGlzLnN0YXRlLmV4cGFuZCA/IFwi5pS26LW3XCIgOiBcIuWxleW8gFwifVxyXG4gICAgICAgICAgICAgICAgICAgIHt0aGlzLnN0YXRlLmV4cGFuZCA/IDxVcE91dGxpbmVkIC8+IDogPERvd25PdXRsaW5lZCAvPn1cclxuICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICApfVxyXG4gICAgICAgICAge3Nob3dUb29sQnV0dG9uICYmIChcclxuICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwidG9vbC1idXR0b25zXCIpfVxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7IG1hcmdpbkxlZnQ6IDAgfX1cclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIHtidXR0b25zLmluZGV4T2YoXCJhZGRcIikgPiAtMSAmJiBlZGl0b3JGb3JtID09IHRydWUgJiYgKFxyXG4gICAgICAgICAgICAgICAgPEJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICB0eXBlPXtcInByaW1hcnlcIn1cclxuICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgb25TaG93Rm9ybSB9ID0gdGhpcy5wcm9wcztcclxuICAgICAgICAgICAgICAgICAgICBpZiAob25TaG93Rm9ybSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgb25TaG93Rm9ybSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dGb3JtKCk7XHJcbiAgICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICAgIGljb249ezxJY29uIHR5cGU9e2ljb25UeXBlLmFkZH0gLz59XHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIOa3u+WKoFxyXG4gICAgICAgICAgICAgICAgPC9CdXR0b24+XHJcbiAgICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAgICB7YnV0dG9ucy5pbmRleE9mKFwiZGVsZXRlXCIpID4gLTEgJiYgKFxyXG4gICAgICAgICAgICAgICAgPEJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAvLyB0eXBlPXtcInByaW1hcnlcIn1cclxuICAgICAgICAgICAgICAgICAgb25DbGljaz17dGhpcy5vbkRlbGV0ZS5iaW5kKHRoaXMpfVxyXG4gICAgICAgICAgICAgICAgICBpY29uPXs8SWNvbiB0eXBlPXtpY29uVHlwZS5kZWxldGUzfSAvPn1cclxuICAgICAgICAgICAgICAgICAgZGFuZ2VyXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIOWIoOmZpFxyXG4gICAgICAgICAgICAgICAgPC9CdXR0b24+XHJcbiAgICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAgICB7c2VsZkJ1dHRvbnMubWFwKChpdGVtOiBhbnksIGluZGV4OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgIHJldHVybiA8ZGl2IGtleT17aW5kZXh9PntpdGVtfTwvZGl2PjtcclxuICAgICAgICAgICAgICB9KX1cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICApfVxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcInRhYmxlXCIpfT5cclxuICAgICAgICAgICAgPFRhYmxlXHJcbiAgICAgICAgICAgICAgcmVmPXt0aGlzLnRhYmxlUmVmfVxyXG4gICAgICAgICAgICAgIGNvbHVtbnM9e3RhYmxlQ29sdW1ufVxyXG4gICAgICAgICAgICAgIGV4cGFuZGFibGU9e3tcclxuICAgICAgICAgICAgICAgIGV4cGFuZEljb246ICh7IGV4cGFuZGVkLCBvbkV4cGFuZCwgcmVjb3JkIH0pID0+IHtcclxuICAgICAgICAgICAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgICAgICAgICA8PlxyXG4gICAgICAgICAgICAgICAgICAgICAge2V4cGFuZGVkID8gKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8RG93bk91dGxpbmVkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KGUpID0+IG9uRXhwYW5kKHJlY29yZCwgZSl9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJleHBhbmQtaWNvblwiKX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICkgOiAoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlY29yZC5jaGlsZE5vZGVzICYmIChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8UmlnaHRPdXRsaW5lZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KGUpID0+IG9uRXhwYW5kKHJlY29yZCwgZSl9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImV4cGFuZC1pY29uXCIpfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgICAgICAgICAgPC8+XHJcbiAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgY29sdW1uT3JkZXI9e3RydWV9XHJcbiAgICAgICAgICAgICAgYm9yZGVyZWQ9e3RydWV9XHJcbiAgICAgICAgICAgICAgc2l6ZT17dGhpcy5zdGF0ZS50YWJsZVNpemV9XHJcbiAgICAgICAgICAgICAgey4uLnRhYmxlUGFyYW1zfVxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAge2VkaXRvckZvcm0gJiYgKFxyXG4gICAgICAgICAgPEVkaXRvckZvcm1cclxuICAgICAgICAgICAgcmVmPXt0aGlzLmVkaXRvclJlZn1cclxuICAgICAgICAgICAgY2FsbEJhY2s9e3RoaXMudGFibGVSZWxvYWQuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgZm9ybVByb3BzPXtlZGl0b3JGb3Jtc31cclxuICAgICAgICAgICAgc3VibWl0VXJsPXtzdWJtaXRVcmx9XHJcbiAgICAgICAgICAgIHN1Ym1pdFBhcmFtcz17c3VibWl0UGFyYW1zfVxyXG4gICAgICAgICAgICBvblN1Ym1pdD17dGhpcy5wcm9wcy5vblN1Ym1pdH1cclxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlPXtkZWZhdWx0VmFsdWV9XHJcbiAgICAgICAgICAgIG9uSGlkZUZvcm09e3RoaXMucHJvcHMub25IaWRlRm9ybX1cclxuICAgICAgICAgICAgb25Gb3JtQ2hhbmdlPXt0aGlzLnByb3BzLm9uRm9ybUNoYW5nZX1cclxuICAgICAgICAgICAgZm9ybVR5cGU9e3RoaXMucHJvcHMuZm9ybVR5cGUgfHwgdGhpcy5zdGF0ZS5mb3JtVHlwZX1cclxuICAgICAgICAgICAgY2hhbmdlVmFsaWQ9e2Zvcm1DaGFuZ2VWYWxpZH1cclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgKX1cclxuICAgICAgPC9kaXY+XHJcbiAgICApO1xyXG4gIH1cclxufVxyXG5leHBvcnQgZGVmYXVsdCBCYXNlUGFnZTtcclxuIl19
|
|
894
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3BhZ2UvQmFzZVBhZ2UvaW5kZXgudHN4Il0sIm5hbWVzIjpbIlJlYWN0IiwiUHVyZUNvbXBvbmVudCIsIlRhYmxlIiwiVHJlZSIsIkZvcm0iLCJCdXR0b24iLCJNb2RhbCIsIlBvcG92ZXIiLCJtZXNzYWdlIiwiSWNvbiIsImljb25UeXBlIiwiRWRpdG9yRm9ybSIsImNscyIsInN0eWxlcyIsIkRvd25PdXRsaW5lZCIsIlVwT3V0bGluZWQiLCJFeWVPdXRsaW5lZCIsIkVkaXRPdXRsaW5lZCIsIlJpZ2h0T3V0bGluZWQiLCJnZXRMZXNzIiwiZ2V0Tm9kZSIsInJlcXVlc3QiLCJvbWl0IiwiY29uZmlnIiwiZ2V0U3RvcmFnZSIsIkJhc2VQYWdlIiwicHJvcHMiLCJjcmVhdGVSZWYiLCJldiIsImRhdGEiLCJKU09OIiwicGFyc2UiLCJfdGhpcyIsImV2ZW50VHlwZSIsInBheWxvYWQiLCJ0eXBlIiwic2V0U3RhdGUiLCJmb3JtVHlwZSIsInNpemUiLCJ0YWJsZVNpemUiLCJjaGVja2VkVHJlZUtleXMiLCJzdGF0ZSIsIm5hbWUiLCJ1c2VyVHlwZSIsImFjY291bnQiLCJ2YWx1ZSIsImRlcHRJZCIsInRhYmxlTG9hZCIsInN0b3JlUHJlZml4IiwiY29udGVudCIsInNlbGVjdGVkUm93S2V5cyIsInNlbGVjdGVkUm93RGF0YXMiLCJ0cmVlU2VsZWN0ZWRLZXkiLCJleHBhbmQiLCJpbml0RGF0YSIsIndpbmRvdyIsImFkZEV2ZW50TGlzdGVuZXIiLCJsaXN0ZW5NZXNzYWdlIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsImVkaXRvcmZsYWciLCJlZGl0b3JSZWYiLCJjdXJyZW50Iiwic2hvdyIsImhpZGVGb3JtIiwiZGVsZXRlVXJsIiwib25EZWxldGUiLCJkZWxldGVQYXJhbXMiLCJsZW5ndGgiLCJ3YXJuaW5nIiwiRXJyb3IiLCJjb25maXJtIiwidGl0bGUiLCJva1RleHQiLCJjYW5jZWxUZXh0Iiwib25PayIsImRlZmF1bHRQYXJhbXMiLCJtZXRob2QiLCJwYXJhbXMiLCJpZHMiLCJqb2luIiwicmVxdWVzdFBhcmFtcyIsInRoZW4iLCJyZXMiLCJjb2RlIiwic3VjY2VzcyIsImVycm9yIiwiY2F0Y2giLCJjb25zb2xlIiwibG9nIiwidGFibGVSZWYiLCJzdG9yZSIsImxvYWQiLCJvblNlYXJjaCIsImZyb21WYWx1ZSIsInNlYXJjaFJlZiIsImdldEZpZWxkc1ZhbHVlIiwicmVsb2FkIiwicmVjb3JkIiwic2VsZWN0ZWQiLCJuZXdTZWxlY3RlZFJvd0tleXMiLCJuZXdTZWxlY3RlZFJvd0RhdGFzIiwiaWQiLCJtYXAiLCJpdGVtIiwiaW5kZXgiLCJzcGxpY2UiLCJzZWxlY3RlZFJvd3MiLCJjaGFuZ2VSb3dzIiwibmV3aWRzIiwibmV3ZGF0YXMiLCJjaGFuZ2VJZHMiLCJpbmRleE9mIiwicHVzaCIsImNvbHVtbkJ1dHRvbnMiLCJlZGl0b3JGb3JtIiwiYnV0dG9ucyIsIm5ld0J1dHRvbnMiLCJjaGlsZHJlbiIsInBhZ2VUeXBlIiwib25DbGljayIsImljb24iLCJyZWNvcmRTaG93IiwiZXZhbCIsImZsYWciLCJzZWxlY3RlZEtleXMiLCJzZWxlY3RlZE5vZGVzIiwia2V5d29yZCIsInRyZWVQcm9wcyIsInNlYXJjaEtleSIsInNlYXJjaEZpZWxkIiwiaXNMZWFmIiwiZGF0YXJlZiIsImF0dHJpYnV0ZSIsInJlc2V0RmllbGRzIiwidGV4dCIsIm5ld1RleHQiLCJpIiwibGFiZWwiLCJjb2x1bW5zIiwic2hvd1NlYXJjaCIsInN1Ym1pdFVybCIsInRhYmxlUHJvcHMiLCJzaG93TGVmdCIsInN1Ym1pdFBhcmFtcyIsInNob3dUb29sQnV0dG9uIiwib25TaG93Rm9ybSIsImZvcm1DaGFuZ2VWYWxpZCIsImNsYXNzTmFtZSIsImFjdGlvbkNvbHVtbnMiLCJmaWx0ZXJDb2x1bW4iLCJhY3Rpb25Db2x1bW4iLCJzaG93Um93U2VsZWN0aW9uIiwiY29sdW1uT3JkZXIiLCJvdGhlcnRhYmxlUGFyYW1zIiwidHJlZVN0b3JlIiwidHJlZVNlYXJjaCIsInRpdGxlQWxpYXMiLCJvdGhlcnRyZWVQYXJhbXMiLCJ0YWJsZVBhcmFtcyIsInJvd1NlbGVjdGlvbiIsIm9uU2VsZWN0Iiwicm93U2VsZWN0aW9uT25TZWxlY3QiLCJiaW5kIiwib25TZWxlY3RBbGwiLCJyb3dTZWxlY3Rpb25PblNlbGVjdEFsbCIsImNvbHVtbldpZHRoIiwidGFibGVDb2x1bW4iLCJzZWFyY2hGb3JtcyIsImVkaXRvckZvcm1zIiwiZGVmYXVsdFZhbHVlIiwidGVtcCIsInNlYXJjaCIsImZpZWxkIiwiZGF0YUluZGV4IiwiZWRpdG9yIiwicnVsZXMiLCJzcGFuIiwiZGljdE5hbWUiLCJ1bmRlZmluZWQiLCJjb2x1bW5TZWFyY2giLCJmaWx0ZXJQcm9wcyIsInRlbXBQcm9wIiwic3R5bGUiLCJyZW5kZXIiLCJnZXRUZXh0IiwiZWxsaXBzaXMiLCJjb2x1bW5TaG93Iiwic2VsZkJ1dHRvbnMiLCJzaG93Rm9ybSIsIkFycmF5IiwiaXNBcnJheSIsImFsaWduIiwid2lkdGgiLCJmaXhlZCIsInJlbmRlckNsb3VtbkJ1dHRvbiIsImhlYWRlckNvdW50IiwicmVhY29yZCIsImRpc3BsYXkiLCJ0cmVlU2VsZWN0IiwicGxhY2Vob2xkZXIiLCJtYXJnaW5Ub3AiLCJyZXNldFNlYXJjaCIsInJlZnJlc2giLCJhX3N0eWxlIiwibWFyZ2luTGVmdCIsImFkZCIsImRlbGV0ZTMiLCJwYWdpbmF0aW9uIiwiZXhwYW5kSWNvbiIsImV4cGFuZGVkIiwib25FeHBhbmQiLCJlIiwiY2hpbGROb2RlcyIsInRhYmxlUmVsb2FkIiwib25TdWJtaXQiLCJvbkhpZGVGb3JtIiwib25Gb3JtQ2hhbmdlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBT0EsS0FBUCxJQUFnQkMsYUFBaEIsUUFBcUMsT0FBckM7QUFDQSxPQUFPQyxLQUFQLE1BQWtCLGtCQUFsQjtBQUNBLE9BQU9DLElBQVAsTUFBaUIsaUJBQWpC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LG9CQUFDLFVBQUQ7QUFDRSxRQUFBLEdBQUcsRUFBRSxLQUFLdEQsU0FEWjtBQUVFLFFBQUEsUUFBUSxFQUFFLEtBQUt5SixXQUFMLENBQWlCbkQsSUFBakIsQ0FBc0IsSUFBdEIsQ0FGWjtBQUdFLFFBQUEsU0FBUyxFQUFFTSxXQUhiO0FBSUUsUUFBQSxTQUFTLEVBQUU1QixTQUpiO0FBS0UsUUFBQSxZQUFZLEVBQUVHLFlBTGhCO0FBTUUsUUFBQSxRQUFRLEVBQUUsS0FBS3JILEtBQUwsQ0FBVzRMLFFBTnZCO0FBT0UsUUFBQSxZQUFZLEVBQUU3QyxZQVBoQjtBQVFFLFFBQUEsVUFBVSxFQUFFLEtBQUsvSSxLQUFMLENBQVc2TCxVQVJ6QjtBQVNFLFFBQUEsWUFBWSxFQUFFLEtBQUs3TCxLQUFMLENBQVc4TCxZQVQzQjtBQVVFLFFBQUEsUUFBUSxFQUFFLEtBQUs5TCxLQUFMLENBQVdXLFFBQVgsSUFBdUIsS0FBS0ksS0FBTCxDQUFXSixRQVY5QztBQVdFLFFBQUEsV0FBVyxFQUFFNkc7QUFYZixRQTVKSixDQURGO0FBNktEOzs7O0VBM3NCb0JqSixhOztBQTZzQnZCLGVBQWV3QixRQUFmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IFB1cmVDb21wb25lbnQgfSBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IFRhYmxlIGZyb20gXCIuLi8uLi9iYXNlL3RhYmxlXCI7XHJcbmltcG9ydCBUcmVlIGZyb20gXCIuLi8uLi9iYXNlL3RyZWVcIjtcclxuaW1wb3J0IEZvcm0gZnJvbSBcIi4uLy4uL2Jhc2UvZm9ybVwiO1xyXG5pbXBvcnQgQnV0dG9uIGZyb20gXCIuLi8uLi9iYXNlL2J1dHRvblwiO1xyXG5pbXBvcnQgTW9kYWwgZnJvbSBcIi4uLy4uL2Jhc2UvbW9kYWxcIjtcclxuaW1wb3J0IFBvcG92ZXIgZnJvbSBcIi4uLy4uL2Jhc2UvcG9wb3ZlclwiO1xyXG5pbXBvcnQgbWVzc2FnZSBmcm9tIFwiLi4vLi4vYmFzZS9tZXNzYWdlXCI7XHJcbmltcG9ydCBJY29uIGZyb20gXCIuLi8uLi9iYXNlL2NvbW1vbi9JY29uRm9udFwiO1xyXG5pbXBvcnQgeyBpY29uVHlwZSB9IGZyb20gXCIuLi8uLi9jb25zdGFudHNcIjtcclxuaW1wb3J0IEVkaXRvckZvcm0gZnJvbSBcIi4vRm9ybVwiO1xyXG5pbXBvcnQgY2xzIGZyb20gXCJjbGFzc25hbWVzXCI7XHJcbmltcG9ydCBzdHlsZXMgZnJvbSBcIi4vaW5kZXgubW9kdWxlLmxlc3NcIjtcclxuaW1wb3J0IFN0b3JlLCB7IFBhZ2VTdG9yZSwgU3RvcmVQcm9wcyB9IGZyb20gXCJAYmotbnNjL21zblwiO1xyXG5pbXBvcnQge1xyXG4gIERvd25PdXRsaW5lZCxcclxuICBVcE91dGxpbmVkLFxyXG4gIEV5ZU91dGxpbmVkLFxyXG4gIEVkaXRPdXRsaW5lZCxcclxuICBSaWdodE91dGxpbmVkLFxyXG59IGZyb20gXCJAYW50LWRlc2lnbi9pY29uc1wiO1xyXG5pbXBvcnQgeyBnZXRMZXNzLCBnZXROb2RlIH0gZnJvbSBcIi4uLy4uL3V0aWxzXCI7XHJcbmltcG9ydCByZXF1ZXN0IGZyb20gXCJuc2MtcmVxdWVzdFwiO1xyXG5pbXBvcnQgb21pdCBmcm9tIFwib21pdC5qc1wiO1xyXG5pbXBvcnQgY29uZmlnIGZyb20gXCIuLi8uLi9jb25maWdcIjtcclxuaW1wb3J0IHsgZ2V0U3RvcmFnZSB9IGZyb20gXCJAYmotbnNjL2Z1bmN0aW9uc1wiO1xyXG5pbnRlcmZhY2UgVGFibGVQcm9wcyB7XHJcbiAgYWN0aW9uQ29sdW1uPzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLrmk43kvZzliJdcclxuICBzdG9yZT86IFN0b3JlUHJvcHM7XHJcbiAgZmlsdGVyQ29sdW1uPzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLrov4fmu6TmjInpkq5cclxuICBzaG93Um93U2VsZWN0aW9uPzogYm9vbGVhbjsgLy/mmK/lkKbooajmoLzli77pgInliJdcclxuICBwYWdpbmF0aW9uPzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLrliIbpobVcclxuICBjb2x1bW5PcmRlcj86IGJvb2xlYW47IC8v5piv5ZCm5pi+56S66KGo5qC85bqP5YiXXHJcbiAgW3Byb3BzTmFtZTogc3RyaW5nXTogYW55O1xyXG59XHJcbmludGVyZmFjZSBUcmVlUHJvcHMge1xyXG4gIHN0b3JlPzogU3RvcmVQcm9wcztcclxuICBzaG93U2VhcmNoPzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLrmkJzntKLmoYZcclxuICBzZWFyY2hLZXk/OiBzdHJpbmc7IC8v5pCc57SidmFsdWXlr7nlupTnmoRrZXlcclxuICBzZWFyY2hGaWVsZD86IHN0cmluZzsgLy/mn6Xor6Llr7nlupTnmoRrZXlcclxuICB0aXRsZUFsaWFzPzogc3RyaW5nOyAvL+agkXRpdGxl5a+55bqU55qEa2V5LOm7mOiupHRpdGxlXHJcbiAgbm9kZVBvcnBzPzogb2JqZWN0O1xyXG4gIFtwcm9wc05hbWU6IHN0cmluZ106IGFueTtcclxufVxyXG5pbnRlcmZhY2UgTlNDQmFzZUJhZ2VQcm9wcyB7XHJcbiAgc2hvd1NlYXJjaD86IGJvb2xlYW47IC8v5piv5ZCm5pi+56S65aS06YOo5pCc57Si5qCPXHJcbiAgdGFibGVQcm9wcz86IFRhYmxlUHJvcHM7IC8v6KGo5qC85Y+C5pWwXHJcbiAgdHJlZVByb3BzPzogVHJlZVByb3BzOyAvL+W3puS+p+agkeWPguaVsFxyXG4gIHN1Ym1pdFBhcmFtcz86IE9iamVjdDsgLy/mt7vliqDlj4LmlbDvvIzpu5jorqRtb3Rob2Q6cG9zdO+8jCDlj4LmlbDpgJrov4dkYXRh5Lyg6YCSXHJcbiAgc3VibWl0VXJsPzogc3RyaW5nO1xyXG4gIG9uU3VibWl0PzogKHZhbHVlPzogYW55LCBsYWJlbD86IGFueSkgPT4gdm9pZDtcclxuICBjb2x1bW5zOiBBcnJheTxPYmplY3Q+O1xyXG4gIHNob3dMZWZ0PzogYm9vbGVhbjsgLy/mmK/lkKbmmL7npLrlt6bkvqfnm67lvZXmoJFcclxuICBzaG93VG9vbEJ1dHRvbj86IGJvb2xlYW47IC8v5piv5ZCm5pi+56S65oyJ6ZKu5qCPXHJcbiAgZWRpdG9yRm9ybT86IGJvb2xlYW47IC8v5piv5ZCm6ZyA6KaB6KGo5Y2V5Yqf6IO9ICwg5Li6ZmFsc2Ug57yW6L6R77yM5p+l55yL77yM5paw5aKe5Yqf6IO95Z2H5LiN5Y+v55SoXHJcbiAgZGVsZXRlVXJsPzogc3RyaW5nOyAvL+WIoOmZpHVybFxyXG4gIG9uRGVsZXRlPzogKHNlbGVjdGVkS2V5cz86IEFycmF5PGFueT4pID0+IHZvaWQ7IC8v5Yig6Zmk5Y+C5pWw77yM6buY6K6kbW90aG9kOnBvc3TvvIwg5Y+C5pWw6YCa6L+HaWRz5ou85o6l5Lyg6YCS57uZ5ZCO5Y+wXHJcbiAgZGVsZXRlUGFyYW1zPzogT2JqZWN0O1xyXG4gIGNoaWxkcmVuPzogUmVhY3QuUmVhY3ROb2RlO1xyXG4gIG9uU2VhcmNoPzogKHZhbHVlPzogYW55KSA9PiB2b2lkO1xyXG4gIGluaXREYXRhPzogYW55OyAvL+WIneWni+WMluWbnuiwg+WHveaVsO+8jOWcqGNvbXBvbmVudERpZE1vdW505Lit6LCD55SoXHJcbiAgYnV0dG9ucz86IEFycmF5PHN0cmluZz47IC8v5oyJ6ZKu6ZuG5ZCIICBbJ2FkZCcsJ2RlbGV0ZScsJ3NlYXJjaCcsJ2VkaXRvciddXHJcbiAgb25TaG93Rm9ybT86ICh2YWx1ZT86IGFueSwgZWRpdG9yRmxhZz86IHN0cmluZykgPT4gdm9pZDsgLy/miZPlvIDooajljZXlm57osINcclxuICBvbkhpZGVGb3JtPzogKCkgPT4gdm9pZDsgLy/miZPlvIDooajljZXlm57osINcclxuICBvbkZvcm1DaGFuZ2U/OiAoY2hhbmdlZFZhbHVlcz86IGFueSwgYWxsVmFsdWVzPzogYW55KSA9PiB2b2lkOyAvL+ihqOWNlW9uQ2hhbmdl5Zue6LCDXHJcbiAgZm9ybVR5cGU/OiBcIm1vZGFsXCIgfCBcImRyYXdlclwiO1xyXG4gIGZvcm1DaGFuZ2VWYWxpZD86IGJvb2xlYW47IC8v6KGo5Y2V5qCh6aqMXHJcbiAgY2xhc3NOYW1lPzogYW55O1xyXG4gIGFjdGlvbkNvbHVtbnM/OiBBcnJheTxhbnk+O1xyXG59XHJcblxyXG5jbGFzcyBCYXNlUGFnZSBleHRlbmRzIFB1cmVDb21wb25lbnQ8TlNDQmFzZUJhZ2VQcm9wcywgYW55PiB7XHJcbiAgdGFibGVSZWYgPSBSZWFjdC5jcmVhdGVSZWY8YW55PigpO1xyXG4gIHRyZWVSZWYgPSBSZWFjdC5jcmVhdGVSZWY8YW55PigpO1xyXG4gIHNlYXJjaFJlZiA9IFJlYWN0LmNyZWF0ZVJlZjxhbnk+KCk7XHJcbiAgZWRpdG9yUmVmID0gUmVhY3QuY3JlYXRlUmVmPGFueT4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJvcHM6IGFueSkge1xyXG4gICAgc3VwZXIocHJvcHMpO1xyXG4gICAgbGV0IHsgc3RvcmVQcmVmaXggfSA9IGNvbmZpZygpO1xyXG4gICAgbGV0IHR5cGUgPSBnZXRTdG9yYWdlKFxyXG4gICAgICBzdG9yZVByZWZpeCA/IHN0b3JlUHJlZml4ICsgXCItXCIgKyBcImZvcm1UeXBlXCIgOiBcImZvcm1UeXBlXCJcclxuICAgICk7XHJcbiAgICB0eXBlID0gdHlwZT8uY29udGVudDtcclxuICAgIGxldCBzaXplID0gZ2V0U3RvcmFnZShcclxuICAgICAgc3RvcmVQcmVmaXggPyBzdG9yZVByZWZpeCArIFwiLVwiICsgXCJ0YWJsZVNpemVcIiA6IFwidGFibGVTaXplXCJcclxuICAgICk7XHJcbiAgICB0eXBlID0gdHlwZT8uY29udGVudDtcclxuICAgIHNpemUgPSBzaXplPy5jb250ZW50O1xyXG4gICAgdGhpcy5zdGF0ZSA9IHtcclxuICAgICAgdHlwZTogXCJhZGRcIixcclxuICAgICAgc2VsZWN0ZWRSb3dLZXlzOiBbXSxcclxuICAgICAgc2VsZWN0ZWRSb3dEYXRhczogW10sXHJcbiAgICAgIHRyZWVTZWxlY3RlZEtleTogXCJcIixcclxuICAgICAgZXhwYW5kOiBmYWxzZSxcclxuICAgICAgZm9ybVR5cGU6IHR5cGUgfHwgXCJtb2RhbFwiLFxyXG4gICAgICB0YWJsZVNpemU6IHNpemUgfHwgXCJkZWZhdWx0XCIsXHJcbiAgICB9O1xyXG4gIH1cclxuICBjb21wb25lbnREaWRNb3VudCgpIHtcclxuICAgIGNvbnN0IHsgaW5pdERhdGEgfSA9IHRoaXMucHJvcHM7XHJcbiAgICBpbml0RGF0YSAmJiBpbml0RGF0YSgpO1xyXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoXCJtZXNzYWdlXCIsIHRoaXMubGlzdGVuTWVzc2FnZSk7XHJcbiAgfVxyXG5cclxuICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcclxuICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKFwibWVzc2FnZVwiLCB0aGlzLmxpc3Rlbk1lc3NhZ2UpO1xyXG4gIH1cclxuICBsaXN0ZW5NZXNzYWdlID0gKGV2KSA9PiB7XHJcbiAgICBjb25zdCBkYXRhID0gdHlwZW9mIGV2LmRhdGEgPT09IFwic3RyaW5nXCIgPyBKU09OLnBhcnNlKGV2LmRhdGEpIDogZXYuZGF0YTtcclxuICAgIGxldCBfdGhpcyA9IHRoaXM7XHJcbiAgICBpZiAoZGF0YS5ldmVudFR5cGUgPT0gXCJjaGFuZ2VGb3JtVHlwZVwiKSB7XHJcbiAgICAgIGNvbnN0IHsgcGF5bG9hZCB9ID0gZGF0YTtcclxuICAgICAgaWYgKHBheWxvYWQudHlwZSA9PSBcIm1vZGFsXCIgfHwgcGF5bG9hZC50eXBlID09IFwiZHJhd2VyXCIpIHtcclxuICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7IGZvcm1UeXBlOiBwYXlsb2FkLnR5cGUgfSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmIChkYXRhLmV2ZW50VHlwZSA9PSBcImNoYW5nZVRhYmxlU2l6ZVwiKSB7XHJcbiAgICAgIGNvbnN0IHsgcGF5bG9hZCB9ID0gZGF0YTtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIHBheWxvYWQuc2l6ZSA9PSBcImRlZmF1bHRcIiB8fFxyXG4gICAgICAgIHBheWxvYWQuc2l6ZSA9PSBcInNtYWxsXCIgfHxcclxuICAgICAgICBwYXlsb2FkLnNpemUgPT0gXCJtaWRkbGVcIlxyXG4gICAgICApIHtcclxuICAgICAgICBfdGhpcy5zZXRTdGF0ZSh7IHRhYmxlU2l6ZTogcGF5bG9hZC5zaXplIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfTtcclxuICBvblNlbGVjdCA9IChjaGVja2VkVHJlZUtleXM6IGFueSkgPT4ge1xyXG4gICAgY29uc3QgeyBuYW1lLCB1c2VyVHlwZSwgYWNjb3VudCB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIGNvbnN0IHZhbHVlID0geyBuYW1lLCB1c2VyVHlwZSwgYWNjb3VudCwgZGVwdElkOiBjaGVja2VkVHJlZUtleXNbMF0gfTtcclxuICAgIHRoaXMudGFibGVMb2FkKHZhbHVlKTtcclxuICB9O1xyXG5cclxuICAvL+aYvuekuuihqOWNlVxyXG4gIHNob3dGb3JtKHZhbHVlPzogYW55LCBlZGl0b3JmbGFnID0gXCJhZGRcIikge1xyXG4gICAgdGhpcy5lZGl0b3JSZWYuY3VycmVudD8uc2hvdyh2YWx1ZSwgZWRpdG9yZmxhZyk7XHJcbiAgfVxyXG5cclxuICAvL+WFs+mXreihqOWNlVxyXG4gIGhpZGVGb3JtKCkge1xyXG4gICAgdGhpcy5lZGl0b3JSZWYuY3VycmVudD8uaGlkZUZvcm0oKTtcclxuICB9XHJcblxyXG4gIC8v5om56YeP5Yig6ZmkXHJcbiAgb25EZWxldGUoKSB7XHJcbiAgICBjb25zdCB7IGRlbGV0ZVVybCwgb25EZWxldGUsIGRlbGV0ZVBhcmFtcyB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHsgc2VsZWN0ZWRSb3dLZXlzIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgaWYgKHNlbGVjdGVkUm93S2V5cy5sZW5ndGggPT0gMCkge1xyXG4gICAgICBtZXNzYWdlLndhcm5pbmcoXCLor7fpgInmi6nopoHliKDpmaTnmoTmlbDmja7vvIFcIik7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmIChvbkRlbGV0ZSkge1xyXG4gICAgICBvbkRlbGV0ZSAmJiBvbkRlbGV0ZShzZWxlY3RlZFJvd0tleXMpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAoIWRlbGV0ZVVybCkge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1cmzkuI3og73kuLrnqbrvvIFcIik7XHJcbiAgICB9XHJcbiAgICBNb2RhbC5jb25maXJtKHtcclxuICAgICAgdGl0bGU6IFwi5piv5ZCm56Gu6K6k5Yig6Zmk5omA6YCJ6aG577yfXCIsXHJcbiAgICAgIG9rVGV4dDogXCLnoa7orqRcIixcclxuICAgICAgY2FuY2VsVGV4dDogXCLlj5bmtohcIixcclxuICAgICAgb25PazogKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGRlZmF1bHRQYXJhbXMgPSB7XHJcbiAgICAgICAgICBtZXRob2Q6IFwicG9zdFwiLFxyXG4gICAgICAgICAgcGFyYW1zOiB7IGlkczogc2VsZWN0ZWRSb3dLZXlzLmpvaW4oKSB9LFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgbGV0IHJlcXVlc3RQYXJhbXMgPSB7fSBhcyBhbnk7XHJcbiAgICAgICAgaWYgKGRlZmF1bHRQYXJhbXMpIHtcclxuICAgICAgICAgIHJlcXVlc3RQYXJhbXMgPSB7IC4uLmRlbGV0ZVBhcmFtcyB9O1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXF1ZXN0UGFyYW1zID0geyAuLi5kZWZhdWx0UGFyYW1zIH07XHJcbiAgICAgICAgcmVxdWVzdChkZWxldGVVcmwsIHtcclxuICAgICAgICAgIC4uLnJlcXVlc3RQYXJhbXMsXHJcbiAgICAgICAgfSlcclxuICAgICAgICAgIC50aGVuKGZ1bmN0aW9uIChyZXM6IGFueSkge1xyXG4gICAgICAgICAgICBjb25zdCB7IGNvZGUgfSA9IHJlcztcclxuICAgICAgICAgICAgaWYgKGNvZGUgPT09IDIwMCkge1xyXG4gICAgICAgICAgICAgIG1lc3NhZ2Uuc3VjY2VzcyhcIuWIoOmZpOaIkOWKn++8gVwiKTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBtZXNzYWdlLmVycm9yKFwi5Yig6Zmk5aSx6LSl77yBXCIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICAgLmNhdGNoKGZ1bmN0aW9uIChlcnJvcjogYW55KSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiZXJyb3JcIiwgZXJyb3IpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuICB9XHJcbiAgdGFibGVMb2FkKHBhcmFtczogYW55KSB7XHJcbiAgICB0aGlzLnRhYmxlUmVmLmN1cnJlbnQ/LnN0b3JlLmxvYWQoe1xyXG4gICAgICBwYXJhbXM6IHBhcmFtcyxcclxuICAgIH0pO1xyXG4gIH1cclxuICAvL+afpeivolxyXG4gIG9uU2VhcmNoKCkge1xyXG4gICAgY29uc3QgeyBvblNlYXJjaCB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IGZyb21WYWx1ZSA9IHRoaXMuc2VhcmNoUmVmLmN1cnJlbnQ/LmdldEZpZWxkc1ZhbHVlKCk7XHJcbiAgICBpZiAob25TZWFyY2gpIHtcclxuICAgICAgb25TZWFyY2goZnJvbVZhbHVlKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy50YWJsZUxvYWQoZnJvbVZhbHVlKTtcclxuICB9XHJcbiAgLy/ooajmoLzph43mlrDliqDovb1cclxuICB0YWJsZVJlbG9hZCgpIHtcclxuICAgIHRoaXMudGFibGVSZWYuY3VycmVudD8uc3RvcmUucmVsb2FkKCk7XHJcbiAgfVxyXG4gIGdldFNlbGVjdGVkUm93S2V5cygpIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXRlLnNlbGVjdGVkUm93S2V5cztcclxuICB9XHJcbiAgZ2V0U2VsZWN0ZWRSb3dEYXRhcygpIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXRlLnNlbGVjdGVkUm93RGF0YXM7XHJcbiAgfVxyXG4gIGdldFNlYXJjaFZhbHVlcygpIHtcclxuICAgIGNvbnN0IGZyb21WYWx1ZSA9IHRoaXMuc2VhcmNoUmVmLmN1cnJlbnQ/LmdldEZpZWxkc1ZhbHVlKCk7XHJcbiAgICByZXR1cm4gZnJvbVZhbHVlO1xyXG4gIH1cclxuICByb3dTZWxlY3Rpb25PblNlbGVjdChyZWNvcmQ6IGFueSwgc2VsZWN0ZWQ6IGFueSkge1xyXG4gICAgY29uc3QgeyBzZWxlY3RlZFJvd0tleXMsIHNlbGVjdGVkUm93RGF0YXMgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBsZXQgbmV3U2VsZWN0ZWRSb3dLZXlzID0gWy4uLnNlbGVjdGVkUm93S2V5c107XHJcbiAgICBsZXQgbmV3U2VsZWN0ZWRSb3dEYXRhcyA9IFsuLi5zZWxlY3RlZFJvd0RhdGFzXTtcclxuICAgIGlmIChzZWxlY3RlZCkge1xyXG4gICAgICBuZXdTZWxlY3RlZFJvd0tleXMgPSBbLi4ubmV3U2VsZWN0ZWRSb3dLZXlzLCByZWNvcmQuaWRdO1xyXG4gICAgICBuZXdTZWxlY3RlZFJvd0RhdGFzID0gWy4uLm5ld1NlbGVjdGVkUm93RGF0YXMsIHJlY29yZF07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBzZWxlY3RlZFJvd0tleXMubWFwKChpdGVtOiBhbnksIGluZGV4OiBhbnkpID0+IHtcclxuICAgICAgICBpZiAoaXRlbSA9PT0gcmVjb3JkLmlkKSB7XHJcbiAgICAgICAgICBuZXdTZWxlY3RlZFJvd0tleXMuc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICBzZWxlY3RlZFJvd0RhdGFzLm1hcCgoaXRlbTogYW55LCBpbmRleDogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKGl0ZW0uaWQgPT09IHJlY29yZC5pZCkge1xyXG4gICAgICAgICAgbmV3U2VsZWN0ZWRSb3dEYXRhcy5zcGxpY2UoaW5kZXgsIDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgc2VsZWN0ZWRSb3dLZXlzOiBuZXdTZWxlY3RlZFJvd0tleXMsXHJcbiAgICAgIHNlbGVjdGVkUm93RGF0YXM6IG5ld1NlbGVjdGVkUm93RGF0YXMsXHJcbiAgICB9KTtcclxuICB9XHJcbiAgcm93U2VsZWN0aW9uT25TZWxlY3RBbGwoc2VsZWN0ZWQ6IGFueSwgc2VsZWN0ZWRSb3dzOiBhbnksIGNoYW5nZVJvd3M6IGFueSkge1xyXG4gICAgY29uc3QgeyBzZWxlY3RlZFJvd0tleXMsIHNlbGVjdGVkUm93RGF0YXMgfSA9IHRoaXMuc3RhdGU7XHJcbiAgICBsZXQgbmV3aWRzOiBhbnkgPSBbXTtcclxuICAgIGxldCBuZXdkYXRhczogYW55ID0gW107XHJcbiAgICBpZiAoY2hhbmdlUm93cy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGxldCBjaGFuZ2VJZHMgPSBjaGFuZ2VSb3dzLm1hcCgoaXRlbTogYW55KSA9PiBpdGVtLmlkKTtcclxuICAgICAgaWYgKHNlbGVjdGVkKSB7XHJcbiAgICAgICAgbmV3aWRzID0gWy4uLnNlbGVjdGVkUm93S2V5cywgLi4uY2hhbmdlSWRzXTtcclxuICAgICAgICBuZXdkYXRhcyA9IFsuLi5zZWxlY3RlZFJvd0RhdGFzLCAuLi5jaGFuZ2VSb3dzXTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBzZWxlY3RlZFJvd0tleXMubWFwKChpdGVtOiBhbnksIGluZGV4OiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmIChjaGFuZ2VJZHMuaW5kZXhPZihpdGVtKSA9PSAtMSkge1xyXG4gICAgICAgICAgICBuZXdpZHMucHVzaChpdGVtKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgICBzZWxlY3RlZFJvd0RhdGFzLm1hcCgoaXRlbTogYW55LCBpbmRleDogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAoY2hhbmdlSWRzLmluZGV4T2YoaXRlbS5pZCkgPT0gLTEpIHtcclxuICAgICAgICAgICAgbmV3ZGF0YXMucHVzaChpdGVtKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbmV3aWRzID0gWy4uLnNlbGVjdGVkUm93S2V5c107XHJcbiAgICAgIG5ld2RhdGFzID0gWy4uLnNlbGVjdGVkUm93RGF0YXNdO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zZXRTdGF0ZSh7XHJcbiAgICAgIHNlbGVjdGVkUm93S2V5czogWy4uLm5ld2lkc10sXHJcbiAgICAgIHNlbGVjdGVkUm93RGF0YXM6IFsuLi5uZXdkYXRhc10sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHJlbmRlckNsb3VtbkJ1dHRvbihjb2x1bW5CdXR0b25zOiBhbnksIHJlY29yZDogYW55KSB7XHJcbiAgICBjb25zdCB7IGVkaXRvckZvcm0gPSB0cnVlLCBidXR0b25zID0gW10gfSA9IHRoaXMucHJvcHM7XHJcbiAgICBjb25zdCBuZXdCdXR0b25zID0gW107XHJcbiAgICBjb2x1bW5CdXR0b25zLm1hcCgoaXRlbTogYW55LCBpbmRleDogYW55KSA9PiB7XHJcbiAgICAgIGNvbnN0IHsgY2hpbGRyZW4sIHBhZ2VUeXBlLCBvbkNsaWNrLCBpY29uLCByZWNvcmRTaG93LCAuLi5wYXJhbXMgfSA9XHJcbiAgICAgICAgaXRlbS5wcm9wcztcclxuICAgICAgaWYgKHJlY29yZFNob3cpIHtcclxuICAgICAgICBpZiAoZXZhbChyZWNvcmRTaG93KSkge1xyXG4gICAgICAgICAgbmV3QnV0dG9ucy5wdXNoKGl0ZW0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBuZXdCdXR0b25zLnB1c2goaXRlbSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgY29uc3QgZmxhZyA9IG5ld0J1dHRvbnMubGVuZ3RoID4gMztcclxuXHJcbiAgICBjb25zdCBjb250ZW50ID0gbmV3QnV0dG9ucy5tYXAoKGl0ZW06IGFueSwgaW5kZXg6IGFueSkgPT4ge1xyXG4gICAgICBjb25zdCB7IGNoaWxkcmVuLCBwYWdlVHlwZSwgb25DbGljaywgaWNvbiwgc2hvdywgLi4ucGFyYW1zIH0gPSBpdGVtLnByb3BzO1xyXG4gICAgICBpZiAoaW5kZXggPiAxKSB7XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgY2xhc3NOYW1lPXtjbHMoXHJcbiAgICAgICAgICAgICAgZ2V0TGVzcyhzdHlsZXMsIFwiZWRpdG9yXCIpLFxyXG4gICAgICAgICAgICAgIGdldExlc3Moc3R5bGVzLCBcImNvbnRlbnQtaXRlbVwiKVxyXG4gICAgICAgICAgICApfVxyXG4gICAgICAgICAgICBrZXk9e2luZGV4fVxyXG4gICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XHJcbiAgICAgICAgICAgICAgb25DbGljayAmJiBvbkNsaWNrKHJlY29yZCk7XHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgIHsuLi5wYXJhbXN9XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiaWNvblwiKX0+e2ljb259PC9zcGFuPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcInRleHRcIil9PntjaGlsZHJlbn08L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gbmV3QnV0dG9ucy5tYXAoKGl0ZW06IGFueSwgaW5kZXg6IGFueSkgPT4ge1xyXG4gICAgICBjb25zdCB7IGNoaWxkcmVuLCBwYWdlVHlwZSwgb25DbGljaywgaWNvbiwgLi4ucGFyYW1zIH0gPSBpdGVtLnByb3BzO1xyXG4gICAgICBpZiAoZmxhZykge1xyXG4gICAgICAgIGlmIChpbmRleCA8IDIpIHtcclxuICAgICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImVkaXRvclwiKX1cclxuICAgICAgICAgICAgICBrZXk9e2luZGV4fVxyXG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcclxuICAgICAgICAgICAgICAgIG9uQ2xpY2sgJiYgb25DbGljayhyZWNvcmQpO1xyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgey4uLnBhcmFtc31cclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiaWNvblwiKX0+e2ljb259PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwidGV4dFwiKX0+e2NoaWxkcmVufTwvc3Bhbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoaW5kZXggPT0gMikge1xyXG4gICAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgPFBvcG92ZXJcclxuICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJib3R0b21cIlxyXG4gICAgICAgICAgICAgIHRpdGxlPXtudWxsfVxyXG4gICAgICAgICAgICAgIGNvbnRlbnQ9e2NvbnRlbnR9XHJcbiAgICAgICAgICAgICAgdHJpZ2dlcj17W1wiY2xpY2tcIl19XHJcbiAgICAgICAgICAgICAga2V5PXtpbmRleH1cclxuICAgICAgICAgICAgICAvLyBvdmVybGF5Q2xhc3NOYW1lPXtzdHlsZXNbJ3BvcCddfVxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImVkaXRvclwiKX0+XHJcbiAgICAgICAgICAgICAgICAmbmJzcDsg5pu05aSaXHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImljb25cIil9PlxyXG4gICAgICAgICAgICAgICAgICA8RG93bk91dGxpbmVkIC8+XHJcbiAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvUG9wb3Zlcj5cclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImVkaXRvclwiKX1cclxuICAgICAgICAgICAga2V5PXtpbmRleH1cclxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xyXG4gICAgICAgICAgICAgIG9uQ2xpY2sgJiYgb25DbGljayhyZWNvcmQpO1xyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICB7Li4ucGFyYW1zfVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImljb25cIil9PntpY29ufTwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJ0ZXh0XCIpfT57Y2hpbGRyZW59PC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICAvLyB9XHJcbiAgfVxyXG4gIC8v5qCR54K55Ye75LqL5Lu2XHJcbiAgdHJlZVNlbGVjdChzZWxlY3RlZEtleXM6IGFueSwgeyBzZWxlY3RlZCwgc2VsZWN0ZWROb2RlcyB9OiBhbnkpIHtcclxuICAgIGxldCBrZXl3b3JkID0gXCJcIjtcclxuICAgIGNvbnN0IHsgc2VhcmNoS2V5ID0gXCJrZXlcIiwgc2VhcmNoRmllbGQgPSBcIlwiIH0gPSB0aGlzLnByb3BzLnRyZWVQcm9wcztcclxuICAgIGNvbnN0IHsgdHJlZVNlbGVjdGVkS2V5IH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgaWYgKHNlbGVjdGVkKSB7XHJcbiAgICAgIGlmIChzZWxlY3RlZE5vZGVzWzBdLmlzTGVhZiB8fCAhc2VsZWN0ZWROb2Rlc1swXS5jaGlsZHJlbikge1xyXG4gICAgICAgIGlmIChzZWxlY3RlZEtleXNbMF0gIT09IHRyZWVTZWxlY3RlZEtleSkge1xyXG4gICAgICAgICAgLy8gbGV0IG1hcERhdGEgPSB0aGlzLnRyZWVSZWYuY3VycmVudD8uc3RvcmUuZ2V0RmxhdHRlbkRhdGEoKTtcclxuICAgICAgICAgIGtleXdvcmQgPSBzZWxlY3RlZE5vZGVzWzBdLmRhdGFyZWYuYXR0cmlidXRlW3NlYXJjaEtleV07XHJcbiAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcclxuICAgICAgICAgICAgdHJlZVNlbGVjdGVkS2V5OiBzZWxlY3RlZEtleXNbMF0sXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgIHRyZWVTZWxlY3RlZEtleToga2V5d29yZCxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBjb25zdCBmcm9tVmFsdWUgPSB0aGlzLnNlYXJjaFJlZi5jdXJyZW50Py5nZXRGaWVsZHNWYWx1ZSgpO1xyXG4gICAgc2VhcmNoRmllbGQgJiYgdGhpcy50YWJsZUxvYWQoeyAuLi5mcm9tVmFsdWUsIFtzZWFyY2hGaWVsZF06IGtleXdvcmQgfSk7XHJcbiAgfVxyXG4gIHJlc2V0U2VhcmNoKCkge1xyXG4gICAgdGhpcy5zZWFyY2hSZWYuY3VycmVudD8ucmVzZXRGaWVsZHMoKTtcclxuICB9XHJcbiAgZ2V0VGV4dChwcm9wcywgdGV4dCkge1xyXG4gICAgbGV0IG5ld1RleHQgPSB0ZXh0O1xyXG4gICAgaWYgKHByb3BzPy5kYXRhICYmIHByb3BzPy5kYXRhPy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGxldCBkYXRhID0gcHJvcHMuZGF0YTtcclxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkYXRhPy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgIGlmIChkYXRhW2ldLnZhbHVlID09IHRleHQpIHtcclxuICAgICAgICAgIG5ld1RleHQgPSBkYXRhW2ldLmxhYmVsO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIG5ld1RleHQ7XHJcbiAgfVxyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IHsgc2VsZWN0ZWRSb3dLZXlzIH0gPSB0aGlzLnN0YXRlO1xyXG4gICAgY29uc3Qge1xyXG4gICAgICBjb2x1bW5zID0gW10sXHJcbiAgICAgIHNob3dTZWFyY2ggPSB0cnVlLFxyXG4gICAgICBjaGlsZHJlbixcclxuICAgICAgc3VibWl0VXJsID0gXCJcIixcclxuICAgICAgdGFibGVQcm9wcyA9IHt9LFxyXG4gICAgICB0cmVlUHJvcHMgPSB7fSxcclxuICAgICAgc2hvd0xlZnQgPSBmYWxzZSxcclxuICAgICAgc3VibWl0UGFyYW1zID0ge30sXHJcbiAgICAgIHNob3dUb29sQnV0dG9uID0gdHJ1ZSxcclxuICAgICAgYnV0dG9ucyA9IFtdLFxyXG4gICAgICBlZGl0b3JGb3JtID0gdHJ1ZSxcclxuICAgICAgb25TaG93Rm9ybSxcclxuICAgICAgZm9ybUNoYW5nZVZhbGlkID0gdHJ1ZSxcclxuICAgICAgY2xhc3NOYW1lLFxyXG4gICAgICBhY3Rpb25Db2x1bW5zID0gW10sXHJcbiAgICB9ID0gdGhpcy5wcm9wcztcclxuICAgIGNvbnN0IHtcclxuICAgICAgc3RvcmUgPSB7fSxcclxuICAgICAgZmlsdGVyQ29sdW1uID0gdHJ1ZSxcclxuICAgICAgYWN0aW9uQ29sdW1uID0gdHJ1ZSxcclxuICAgICAgc2hvd1Jvd1NlbGVjdGlvbiA9IHRydWUsXHJcbiAgICAgIGNvbHVtbk9yZGVyID0gdHJ1ZSxcclxuICAgICAgLi4ub3RoZXJ0YWJsZVBhcmFtc1xyXG4gICAgfSA9IHRhYmxlUHJvcHM7XHJcblxyXG4gICAgY29uc3Qge1xyXG4gICAgICBzdG9yZTogdHJlZVN0b3JlID0ge30sXHJcbiAgICAgIHNob3dTZWFyY2g6IHRyZWVTZWFyY2ggPSB0cnVlLFxyXG4gICAgICB0aXRsZUFsaWFzID0gXCJ0aXRsZVwiLFxyXG4gICAgICAuLi5vdGhlcnRyZWVQYXJhbXNcclxuICAgIH0gPSB0cmVlUHJvcHM7XHJcblxyXG4gICAgbGV0IHRhYmxlUGFyYW1zID0geyBmaWx0ZXJDb2x1bW4sIHN0b3JlLCAuLi5vdGhlcnRhYmxlUGFyYW1zIH0gYXMgYW55O1xyXG5cclxuICAgIGlmIChzaG93Um93U2VsZWN0aW9uKSB7XHJcbiAgICAgIHRhYmxlUGFyYW1zID0ge1xyXG4gICAgICAgIC4uLnRhYmxlUGFyYW1zLFxyXG4gICAgICAgIHJvd1NlbGVjdGlvbjoge1xyXG4gICAgICAgICAgc2VsZWN0ZWRSb3dLZXlzOiBzZWxlY3RlZFJvd0tleXMsXHJcbiAgICAgICAgICBvblNlbGVjdDogdGhpcy5yb3dTZWxlY3Rpb25PblNlbGVjdC5iaW5kKHRoaXMpLFxyXG4gICAgICAgICAgb25TZWxlY3RBbGw6IHRoaXMucm93U2VsZWN0aW9uT25TZWxlY3RBbGwuYmluZCh0aGlzKSxcclxuICAgICAgICAgIGNvbHVtbldpZHRoOiA0MCxcclxuICAgICAgICB9LFxyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgbGV0IHRhYmxlQ29sdW1uOiBhbnlbXSA9IFtdO1xyXG4gICAgY29uc3Qgc2VhcmNoRm9ybXM6IGFueSA9IFtdO1xyXG4gICAgY29uc3QgZWRpdG9yRm9ybXM6IGFueSA9IFtdO1xyXG4gICAgY29uc3QgZGVmYXVsdFZhbHVlOiBhbnkgPSB7fTtcclxuICAgIGNvbnN0IGNvbHVtbkJ1dHRvbnM6IGFueSA9IFtdO1xyXG4gICAgY29sdW1ucy5tYXAoKGl0ZW06IGFueSkgPT4ge1xyXG4gICAgICBsZXQgdGVtcCA9IHsgLi4uaXRlbSB9O1xyXG4gICAgICBpZiAodGVtcC5zZWFyY2gpIHtcclxuICAgICAgICBzZWFyY2hGb3Jtcy5wdXNoKHtcclxuICAgICAgICAgIG5hbWU6IHRlbXAuZmllbGQgfHwgdGVtcC5kYXRhSW5kZXgsXHJcbiAgICAgICAgICBsYWJlbDogdGVtcC50aXRsZSxcclxuICAgICAgICAgIHR5cGU6IHRlbXAudHlwZSxcclxuICAgICAgICAgIHByb3BzOiB0ZW1wLnByb3BzLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIGRlbGV0ZSB0ZW1wLnNlYXJjaDtcclxuICAgICAgdGVtcC5lZGl0b3IgIT09IGZhbHNlICYmXHJcbiAgICAgICAgZWRpdG9yRm9ybXMucHVzaCh7XHJcbiAgICAgICAgICBuYW1lOiB0ZW1wLmZpZWxkIHx8IHRlbXAuZGF0YUluZGV4LFxyXG4gICAgICAgICAgbGFiZWw6IHRlbXAudGl0bGUsXHJcbiAgICAgICAgICBydWxlczogdGVtcC5ydWxlcyxcclxuICAgICAgICAgIHR5cGU6IHRlbXAudHlwZSxcclxuICAgICAgICAgIHNwYW46IHRlbXAuc3BhbixcclxuICAgICAgICAgIGRpY3ROYW1lOiB0ZW1wLmRpY3ROYW1lLFxyXG4gICAgICAgICAgcHJvcHM6IG9taXQoeyAuLi50ZW1wLnByb3BzIH0sIFtcImRlZmF1bHRWYWx1ZVwiLCBcInZhbHVlXCJdKSxcclxuICAgICAgICB9KTtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIHRlbXAucHJvcHM/LmRlZmF1bHRWYWx1ZSAhPT0gdW5kZWZpbmVkICYmXHJcbiAgICAgICAgdGVtcC5wcm9wcz8uZGVmYXVsdFZhbHVlICE9PSBudWxsXHJcbiAgICAgICkge1xyXG4gICAgICAgIGNvbnN0IG5hbWUgPSB0ZW1wLmZpZWxkIHx8IHRlbXAuZGF0YUluZGV4O1xyXG4gICAgICAgIGRlZmF1bHRWYWx1ZVtuYW1lXSA9IHRlbXAucHJvcHM/LmRlZmF1bHRWYWx1ZTtcclxuICAgICAgfVxyXG4gICAgICBkZWxldGUgdGVtcC5ydWxlcztcclxuICAgICAgZGVsZXRlIHRlbXAuc3BhbjtcclxuICAgICAgaWYgKHRlbXAuY29sdW1uU2VhcmNoKSB7XHJcbiAgICAgICAgdGVtcC5maWx0ZXJQcm9wcyA9IHtcclxuICAgICAgICAgIHR5cGU6IHRlbXAudHlwZSxcclxuICAgICAgICAgIHByb3BzOiB0ZW1wLnByb3BzLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgZGVsZXRlIHRlbXAudHlwZTtcclxuICAgICAgbGV0IHRlbXBQcm9wID0geyAuLi50ZW1wLnByb3BzIH07XHJcbiAgICAgIGlmICh0ZW1wLnN0eWxlKSB7XHJcbiAgICAgICAgdGVtcCA9IHtcclxuICAgICAgICAgIHJlbmRlcjogKHRleHQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICAgIDw+XHJcbiAgICAgICAgICAgICAgICB7dGV4dCAhPT0gXCJcIiAmJiB0ZXh0ICE9PSBudWxsICYmIHRleHQgIT09IHVuZGVmaW5lZCAmJiAoXHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiY29sLWJhY2tcIil9PlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiY29sLXRleHRcIil9PlxyXG4gICAgICAgICAgICAgICAgICAgICAge3RoaXMuZ2V0VGV4dCh0ZW1wUHJvcCwgdGV4dCl9XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICApfVxyXG4gICAgICAgICAgICAgIDwvPlxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGVsbGlwc2lzOiB0cnVlLFxyXG4gICAgICAgICAgLi4udGVtcCxcclxuICAgICAgICB9O1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRlbXAgPSB7XHJcbiAgICAgICAgICByZW5kZXI6ICh0ZXh0OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIDw+e3RoaXMuZ2V0VGV4dCh0ZW1wUHJvcCwgdGV4dCl9PC8+O1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIC4uLnRlbXAsXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgICBkZWxldGUgdGVtcC5wcm9wcztcclxuICAgICAgaWYgKHRlbXA/LmNvbHVtblNob3cgIT09IGZhbHNlKSB0YWJsZUNvbHVtbi5wdXNoKHRlbXApO1xyXG4gICAgfSk7XHJcbiAgICBjb25zdCBzZWxmQnV0dG9uczogYW55ID0gW107XHJcblxyXG4gICAgaWYgKGVkaXRvckZvcm0gPT0gdHJ1ZSkge1xyXG4gICAgICBpZiAoYnV0dG9ucy5pbmRleE9mKFwic2VhcmNoXCIpID4gLTEpIHtcclxuICAgICAgICBjb2x1bW5CdXR0b25zLnB1c2goXHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiZWRpdG9yXCIpfVxyXG4gICAgICAgICAgICBvbkNsaWNrPXsocmVjb3JkOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICBpZiAob25TaG93Rm9ybSkge1xyXG4gICAgICAgICAgICAgICAgb25TaG93Rm9ybShyZWNvcmQuYXR0cmlidXRlIHx8IHJlY29yZCwgXCJkZXRhaWxcIik7XHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIHRoaXMuc2hvd0Zvcm0ocmVjb3JkLmF0dHJpYnV0ZSB8fCByZWNvcmQsIFwiZGV0YWlsXCIpO1xyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImljb25cIil9PlxyXG4gICAgICAgICAgICAgIDxFeWVPdXRsaW5lZCAvPlxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwidGV4dFwiKX0+5p+l55yLPC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoYnV0dG9ucy5pbmRleE9mKFwiZWRpdG9yXCIpID4gLTEpIHtcclxuICAgICAgICBjb2x1bW5CdXR0b25zLnB1c2goXHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiZWRpdG9yXCIpfVxyXG4gICAgICAgICAgICBvbkNsaWNrPXsocmVjb3JkOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICBpZiAob25TaG93Rm9ybSkge1xyXG4gICAgICAgICAgICAgICAgb25TaG93Rm9ybShyZWNvcmQuYXR0cmlidXRlIHx8IHJlY29yZCwgXCJlZGl0b3JcIik7XHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIHRoaXMuc2hvd0Zvcm0ocmVjb3JkLmF0dHJpYnV0ZSB8fCByZWNvcmQsIFwiZWRpdG9yXCIpO1xyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImljb25cIil9PlxyXG4gICAgICAgICAgICAgIDxFZGl0T3V0bGluZWQgLz5cclxuICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcInRleHRcIil9Pue8lui+kTwvc3Bhbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmIChBcnJheS5pc0FycmF5KGNoaWxkcmVuKSkge1xyXG4gICAgICBjaGlsZHJlbi5tYXAoKGl0ZW06IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChpdGVtPy5wcm9wcz8ucGFnZVR5cGUgPT0gXCJ0b29sQnV0dG9uXCIpIHtcclxuICAgICAgICAgIHNlbGZCdXR0b25zLnB1c2goaXRlbSk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChpdGVtPy5wcm9wcz8ucGFnZVR5cGUgPT0gXCJjbG91bW5CdXR0b25cIikge1xyXG4gICAgICAgICAgY29sdW1uQnV0dG9ucy5wdXNoKGl0ZW0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2UgaWYgKGNoaWxkcmVuKSB7XHJcbiAgICAgIGNvbnN0IHsgcHJvcHMgfTogYW55ID0gY2hpbGRyZW47XHJcbiAgICAgIGlmIChwcm9wcz8ucGFnZVR5cGUgPT0gXCJ0b29sQnV0dG9uXCIpIHtcclxuICAgICAgICBzZWxmQnV0dG9ucy5wdXNoKGNoaWxkcmVuKTtcclxuICAgICAgfSBlbHNlIGlmIChwcm9wcz8ucGFnZVR5cGUgPT0gXCJjbG91bW5CdXR0b25cIikge1xyXG4gICAgICAgIGNvbHVtbkJ1dHRvbnMucHVzaChjaGlsZHJlbik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGFjdGlvbkNvbHVtbiAmJlxyXG4gICAgICB0YWJsZUNvbHVtbi5wdXNoKHtcclxuICAgICAgICB0aXRsZTogXCLmk43kvZxcIixcclxuICAgICAgICBkYXRhSW5kZXg6IFwiYWN0aW9uXCIsXHJcbiAgICAgICAgYWxpZ246IFwiY2VudGVyXCIsXHJcbiAgICAgICAgd2lkdGg6IDI1MCxcclxuICAgICAgICBmaXhlZDogXCJyaWdodFwiLFxyXG4gICAgICAgIGVsbGlwc2lzOiB0cnVlLFxyXG4gICAgICAgIHJlbmRlcjogKHRleHQ6IGFueSwgcmVjb3JkOiBhbnkpID0+IHtcclxuICAgICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJhY3Rpb25cIil9PlxyXG4gICAgICAgICAgICAgIHt0aGlzLnJlbmRlckNsb3VtbkJ1dHRvbihjb2x1bW5CdXR0b25zLCByZWNvcmQpfVxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgICBjb25zdCBoZWFkZXJDb3VudCA9IHNob3dMZWZ0ID8gMiA6IDM7XHJcbiAgICBpZiAoY29sdW1uT3JkZXIpXHJcbiAgICAgIHRhYmxlQ29sdW1uID0gW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIHRpdGxlOiBcIiNcIixcclxuICAgICAgICAgIHdpZHRoOiAzMCxcclxuICAgICAgICAgIGFsaWduOiBcImNlbnRlclwiLFxyXG4gICAgICAgICAgcmVuZGVyOiAodGV4dCwgcmVhY29yZCwgaW5kZXgpID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIDw+e2luZGV4ICsgMX08Lz47XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgLi4udGFibGVDb2x1bW4sXHJcbiAgICAgIF07XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICA8ZGl2XHJcbiAgICAgICAgY2xhc3NOYW1lPXtjbHMoZ2V0TGVzcyhzdHlsZXMsIFwicGFnZVwiKSwgY2xhc3NOYW1lKX1cclxuICAgICAgICBzdHlsZT17eyBkaXNwbGF5OiBcImZsZXhcIiB9fVxyXG4gICAgICA+XHJcbiAgICAgICAge3Nob3dMZWZ0ICYmIChcclxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJsZWZ0XCIpfT5cclxuICAgICAgICAgICAgPFRyZWVcclxuICAgICAgICAgICAgICBzdG9yZT17eyAuLi50cmVlU3RvcmUgfX1cclxuICAgICAgICAgICAgICBzaG93SWNvbj17ZmFsc2V9XHJcbiAgICAgICAgICAgICAgY2hlY2thYmxlPXtmYWxzZX1cclxuICAgICAgICAgICAgICBzZWFyY2hhYmxlPXt0cmVlU2VhcmNofVxyXG4gICAgICAgICAgICAgIG9uU2VsZWN0PXt0aGlzLnRyZWVTZWxlY3QuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgICBzZWxlY3RlZEtleXM9e1t0aGlzLnN0YXRlLnRyZWVTZWxlY3RlZEtleV19XHJcbiAgICAgICAgICAgICAgdGl0bGVBbGlhcz17dGl0bGVBbGlhc31cclxuICAgICAgICAgICAgICB7Li4ub3RoZXJ0cmVlUGFyYW1zfVxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgKX1cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwicmlnaHRcIil9PlxyXG4gICAgICAgICAge3Nob3dTZWFyY2ggJiYgKFxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Z2V0TGVzcyhzdHlsZXMsIFwiaGVhZGVyXCIpfT5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xzKHsgW2dldExlc3Moc3R5bGVzLCBcImZvcm1cIildOiAhc2hvd0xlZnQgfSl9PlxyXG4gICAgICAgICAgICAgICAgPEZvcm1cclxuICAgICAgICAgICAgICAgICAgcmVmPXt0aGlzLnNlYXJjaFJlZn1cclxuICAgICAgICAgICAgICAgICAgbGFiZWxDb2w9e3t9fVxyXG4gICAgICAgICAgICAgICAgICB3cmFwcGVyQ29sPXt7fX1cclxuICAgICAgICAgICAgICAgICAgbGF5b3V0PVwiaW5saW5lXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge3NlYXJjaEZvcm1zLm1hcCgoaXRlbTogYW55LCBpbmRleDogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGluZGV4ID4gaGVhZGVyQ291bnQgJiYgIXRoaXMuc3RhdGUuZXhwYW5kKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPXtpdGVtLmxhYmVsfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lPXtpdGVtLm5hbWV9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHJ1bGVzPXtpdGVtLnJ1bGVzfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBrZXk9e2luZGV4fVxyXG4gICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7Z2V0Tm9kZShpdGVtLnR5cGUsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5pdGVtLnByb3BzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBg6K+36L6T5YWlJHtpdGVtLmxhYmVsfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XHJcbiAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgfSl9XHJcbiAgICAgICAgICAgICAgICA8L0Zvcm0+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJzZWFyY2gtYnV0dG9uc1wiKX1cclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7IG1hcmdpblRvcDogMCB9fVxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDxCdXR0b25cclxuICAgICAgICAgICAgICAgICAgdHlwZT17XCJwcmltYXJ5XCJ9XHJcbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e3RoaXMub25TZWFyY2guYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgICAgICAgaWNvbj17PEljb24gdHlwZT17aWNvblR5cGUuc2VhcmNofSAvPn1cclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAg5p+l6K+iXHJcbiAgICAgICAgICAgICAgICA8L0J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDxCdXR0b25cclxuICAgICAgICAgICAgICAgICAgdHlwZT17XCJwcmltYXJ5XCJ9XHJcbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e3RoaXMucmVzZXRTZWFyY2guYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgICAgICAgaWNvbj17PEljb24gdHlwZT17aWNvblR5cGUucmVmcmVzaH0gLz59XHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIOmHjee9rlxyXG4gICAgICAgICAgICAgICAgPC9CdXR0b24+XHJcbiAgICAgICAgICAgICAgICB7c2VhcmNoRm9ybXMubGVuZ3RoID4gMyAmJiAoXHJcbiAgICAgICAgICAgICAgICAgIDxhXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtzdHlsZXMuYV9zdHlsZX1cclxuICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICBjb25zdCB7IGV4cGFuZCB9ID0gdGhpcy5zdGF0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBleHBhbmQ6ICFleHBhbmQsXHJcbiAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAge3RoaXMuc3RhdGUuZXhwYW5kID8gXCLmlLbotbdcIiA6IFwi5bGV5byAXCJ9XHJcbiAgICAgICAgICAgICAgICAgICAge3RoaXMuc3RhdGUuZXhwYW5kID8gPFVwT3V0bGluZWQgLz4gOiA8RG93bk91dGxpbmVkIC8+fVxyXG4gICAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgICAgICApfVxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICl9XHJcbiAgICAgICAgICB7c2hvd1Rvb2xCdXR0b24gJiYgKFxyXG4gICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJ0b29sLWJ1dHRvbnNcIil9XHJcbiAgICAgICAgICAgICAgc3R5bGU9e3sgbWFyZ2luTGVmdDogMCB9fVxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAge2J1dHRvbnMuaW5kZXhPZihcImFkZFwiKSA+IC0xICYmIGVkaXRvckZvcm0gPT0gdHJ1ZSAmJiAoXHJcbiAgICAgICAgICAgICAgICA8QnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgIHR5cGU9e1wicHJpbWFyeVwifVxyXG4gICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBvblNob3dGb3JtIH0gPSB0aGlzLnByb3BzO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChvblNob3dGb3JtKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICBvblNob3dGb3JtKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2hvd0Zvcm0oKTtcclxuICAgICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgICAgaWNvbj17PEljb24gdHlwZT17aWNvblR5cGUuYWRkfSAvPn1cclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAg5re75YqgXHJcbiAgICAgICAgICAgICAgICA8L0J1dHRvbj5cclxuICAgICAgICAgICAgICApfVxyXG4gICAgICAgICAgICAgIHtidXR0b25zLmluZGV4T2YoXCJkZWxldGVcIikgPiAtMSAmJiAoXHJcbiAgICAgICAgICAgICAgICA8QnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgIC8vIHR5cGU9e1wicHJpbWFyeVwifVxyXG4gICAgICAgICAgICAgICAgICBvbkNsaWNrPXt0aGlzLm9uRGVsZXRlLmJpbmQodGhpcyl9XHJcbiAgICAgICAgICAgICAgICAgIGljb249ezxJY29uIHR5cGU9e2ljb25UeXBlLmRlbGV0ZTN9IC8+fVxyXG4gICAgICAgICAgICAgICAgICBkYW5nZXJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAg5Yig6ZmkXHJcbiAgICAgICAgICAgICAgICA8L0J1dHRvbj5cclxuICAgICAgICAgICAgICApfVxyXG4gICAgICAgICAgICAgIHtzZWxmQnV0dG9ucy5tYXAoKGl0ZW06IGFueSwgaW5kZXg6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIDxkaXYga2V5PXtpbmRleH0+e2l0ZW19PC9kaXY+O1xyXG4gICAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICl9XHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzTmFtZT17Y2xzKGdldExlc3Moc3R5bGVzLCBcInRhYmxlXCIpLCB7XHJcbiAgICAgICAgICAgICAgW2dldExlc3Moc3R5bGVzLCBcInRhYmxlLXBhZ2VcIildOiB0YWJsZVByb3BzLnBhZ2luYXRpb24gIT09IGZhbHNlLFxyXG4gICAgICAgICAgICB9KX1cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPFRhYmxlXHJcbiAgICAgICAgICAgICAgcmVmPXt0aGlzLnRhYmxlUmVmfVxyXG4gICAgICAgICAgICAgIGNvbHVtbnM9e3RhYmxlQ29sdW1ufVxyXG4gICAgICAgICAgICAgIGV4cGFuZGFibGU9e3tcclxuICAgICAgICAgICAgICAgIGV4cGFuZEljb246ICh7IGV4cGFuZGVkLCBvbkV4cGFuZCwgcmVjb3JkIH0pID0+IHtcclxuICAgICAgICAgICAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgICAgICAgICA8PlxyXG4gICAgICAgICAgICAgICAgICAgICAge2V4cGFuZGVkID8gKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8RG93bk91dGxpbmVkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KGUpID0+IG9uRXhwYW5kKHJlY29yZCwgZSl9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtnZXRMZXNzKHN0eWxlcywgXCJleHBhbmQtaWNvblwiKX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICkgOiAoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlY29yZC5jaGlsZE5vZGVzICYmIChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8UmlnaHRPdXRsaW5lZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KGUpID0+IG9uRXhwYW5kKHJlY29yZCwgZSl9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2dldExlc3Moc3R5bGVzLCBcImV4cGFuZC1pY29uXCIpfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgICAgICAgICAgPC8+XHJcbiAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgY29sdW1uT3JkZXI9e3RydWV9XHJcbiAgICAgICAgICAgICAgYm9yZGVyZWQ9e3RydWV9XHJcbiAgICAgICAgICAgICAgc2l6ZT17dGhpcy5zdGF0ZS50YWJsZVNpemV9XHJcbiAgICAgICAgICAgICAgey4uLnRhYmxlUGFyYW1zfVxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAge2VkaXRvckZvcm0gJiYgKFxyXG4gICAgICAgICAgPEVkaXRvckZvcm1cclxuICAgICAgICAgICAgcmVmPXt0aGlzLmVkaXRvclJlZn1cclxuICAgICAgICAgICAgY2FsbEJhY2s9e3RoaXMudGFibGVSZWxvYWQuYmluZCh0aGlzKX1cclxuICAgICAgICAgICAgZm9ybVByb3BzPXtlZGl0b3JGb3Jtc31cclxuICAgICAgICAgICAgc3VibWl0VXJsPXtzdWJtaXRVcmx9XHJcbiAgICAgICAgICAgIHN1Ym1pdFBhcmFtcz17c3VibWl0UGFyYW1zfVxyXG4gICAgICAgICAgICBvblN1Ym1pdD17dGhpcy5wcm9wcy5vblN1Ym1pdH1cclxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlPXtkZWZhdWx0VmFsdWV9XHJcbiAgICAgICAgICAgIG9uSGlkZUZvcm09e3RoaXMucHJvcHMub25IaWRlRm9ybX1cclxuICAgICAgICAgICAgb25Gb3JtQ2hhbmdlPXt0aGlzLnByb3BzLm9uRm9ybUNoYW5nZX1cclxuICAgICAgICAgICAgZm9ybVR5cGU9e3RoaXMucHJvcHMuZm9ybVR5cGUgfHwgdGhpcy5zdGF0ZS5mb3JtVHlwZX1cclxuICAgICAgICAgICAgY2hhbmdlVmFsaWQ9e2Zvcm1DaGFuZ2VWYWxpZH1cclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgKX1cclxuICAgICAgPC9kaXY+XHJcbiAgICApO1xyXG4gIH1cclxufVxyXG5leHBvcnQgZGVmYXVsdCBCYXNlUGFnZTtcclxuIl19
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
.page {
|
|
2
|
-
min-height:
|
|
2
|
+
min-height: 550px;
|
|
3
3
|
// height: 100%;
|
|
4
4
|
display: flex;
|
|
5
5
|
.left {
|
|
6
|
-
width:
|
|
6
|
+
width: 280px;
|
|
7
7
|
padding: 20px;
|
|
8
8
|
margin-right: 15px;
|
|
9
9
|
background: #fff;
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
.ant-form-inline .ant-form-item {
|
|
34
34
|
margin-right: 30px;
|
|
35
35
|
margin-bottom: 20px;
|
|
36
|
-
width:
|
|
36
|
+
width: 200px;
|
|
37
37
|
}
|
|
38
38
|
.ant-select {
|
|
39
39
|
width: 100% !important;
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
.tool-buttons {
|
|
55
55
|
display: flex;
|
|
56
56
|
// margin-top: 20px;
|
|
57
|
-
flex-wrap:
|
|
57
|
+
flex-wrap: wrap;
|
|
58
58
|
width: calc(100% - 200px);
|
|
59
59
|
button {
|
|
60
60
|
margin-right: 12px;
|
|
@@ -70,7 +70,17 @@
|
|
|
70
70
|
margin-top: 20px;
|
|
71
71
|
}
|
|
72
72
|
.ant-table {
|
|
73
|
-
|
|
73
|
+
color: #606266;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
.table-page {
|
|
78
|
+
:global {
|
|
79
|
+
.ant-table-wrapper {
|
|
80
|
+
margin-top: 20px;
|
|
81
|
+
}
|
|
82
|
+
.ant-table {
|
|
83
|
+
height: 30vw;
|
|
74
84
|
color: #606266;
|
|
75
85
|
overflow-y: auto;
|
|
76
86
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nsc-react-component",
|
|
3
|
-
"version": "2.2.
|
|
3
|
+
"version": "2.2.14",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -69,11 +69,15 @@
|
|
|
69
69
|
"classnames": "^2.2.6",
|
|
70
70
|
"clone-deep": "^4.0.1",
|
|
71
71
|
"core-js": "3",
|
|
72
|
+
"draft-js": "^0.11.7",
|
|
73
|
+
"draftjs-to-html": "^0.9.1",
|
|
72
74
|
"echarts": "^5.2.2",
|
|
75
|
+
"html-to-draftjs": "^1.5.0",
|
|
73
76
|
"omit.js": "^2.0.2",
|
|
74
77
|
"pinyin-match": "^1.2.2",
|
|
75
78
|
"react-dnd": "^14.0.2",
|
|
76
79
|
"react-dnd-html5-backend": "^14.0.0",
|
|
80
|
+
"react-draft-wysiwyg": "^1.15.0",
|
|
77
81
|
"react-resizable": "^3.0.4"
|
|
78
82
|
}
|
|
79
83
|
}
|