@pie-lib/editable-html-tip-tap 1.0.19 → 1.0.21-next.6053
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/CHANGELOG.md +7 -73
- package/LICENSE.md +5 -0
- package/NEXT.CHANGELOG.json +1 -0
- package/lib/components/CharacterPicker.js +22 -61
- package/lib/components/CharacterPicker.js.map +1 -1
- package/lib/components/EditableHtml.js +50 -121
- package/lib/components/EditableHtml.js.map +1 -1
- package/lib/components/MenuBar.js +96 -128
- package/lib/components/MenuBar.js.map +1 -1
- package/lib/components/TiptapContainer.js +162 -45
- package/lib/components/TiptapContainer.js.map +1 -1
- package/lib/components/characters/characterUtils.js +4 -7
- package/lib/components/characters/characterUtils.js.map +1 -1
- package/lib/components/characters/custom-popper.js +22 -51
- package/lib/components/characters/custom-popper.js.map +1 -1
- package/lib/components/common/done-button.js +17 -36
- package/lib/components/common/done-button.js.map +1 -1
- package/lib/components/common/toolbar-buttons.js +57 -107
- package/lib/components/common/toolbar-buttons.js.map +1 -1
- package/lib/components/icons/CssIcon.js +14 -26
- package/lib/components/icons/CssIcon.js.map +1 -1
- package/lib/components/icons/RespArea.js +23 -46
- package/lib/components/icons/RespArea.js.map +1 -1
- package/lib/components/icons/TableIcons.js +20 -36
- package/lib/components/icons/TableIcons.js.map +1 -1
- package/lib/components/icons/TextAlign.js +16 -53
- package/lib/components/icons/TextAlign.js.map +1 -1
- package/lib/components/image/AltDialog.js +18 -49
- package/lib/components/image/AltDialog.js.map +1 -1
- package/lib/components/image/ImageToolbar.js +50 -90
- package/lib/components/image/ImageToolbar.js.map +1 -1
- package/lib/components/image/InsertImageHandler.js +17 -35
- package/lib/components/image/InsertImageHandler.js.map +1 -1
- package/lib/components/media/MediaDialog.js +195 -309
- package/lib/components/media/MediaDialog.js.map +1 -1
- package/lib/components/media/MediaToolbar.js +39 -66
- package/lib/components/media/MediaToolbar.js.map +1 -1
- package/lib/components/media/MediaWrapper.js +30 -56
- package/lib/components/media/MediaWrapper.js.map +1 -1
- package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js +21 -36
- package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js.map +1 -1
- package/lib/components/respArea/DragInTheBlank/choice.js +215 -262
- package/lib/components/respArea/DragInTheBlank/choice.js.map +1 -1
- package/lib/components/respArea/ExplicitConstructedResponse.js +11 -33
- package/lib/components/respArea/ExplicitConstructedResponse.js.map +1 -1
- package/lib/components/respArea/InlineDropdown.js +19 -41
- package/lib/components/respArea/InlineDropdown.js.map +1 -1
- package/lib/components/respArea/ToolbarIcon.js +21 -45
- package/lib/components/respArea/ToolbarIcon.js.map +1 -1
- package/lib/constants.js +3 -5
- package/lib/constants.js.map +1 -1
- package/lib/extensions/component.js +94 -148
- package/lib/extensions/component.js.map +1 -1
- package/lib/extensions/css.js +9 -44
- package/lib/extensions/css.js.map +1 -1
- package/lib/extensions/custom-toolbar-wrapper.js +66 -94
- package/lib/extensions/custom-toolbar-wrapper.js.map +1 -1
- package/lib/extensions/extended-table.js +2 -6
- package/lib/extensions/extended-table.js.map +1 -1
- package/lib/extensions/image.js +4 -17
- package/lib/extensions/image.js.map +1 -1
- package/lib/extensions/index.js +11 -21
- package/lib/extensions/index.js.map +1 -1
- package/lib/extensions/math.js +45 -96
- package/lib/extensions/math.js.map +1 -1
- package/lib/extensions/media.js +21 -59
- package/lib/extensions/media.js.map +1 -1
- package/lib/extensions/responseArea.js +43 -89
- package/lib/extensions/responseArea.js.map +1 -1
- package/lib/index.js +3 -11
- package/lib/index.js.map +1 -1
- package/lib/styles/editorContainerStyles.js +2 -7
- package/lib/styles/editorContainerStyles.js.map +1 -1
- package/lib/theme.js +2 -3
- package/lib/theme.js.map +1 -1
- package/lib/utils/size.js +2 -10
- package/lib/utils/size.js.map +1 -1
- package/package.json +15 -13
- package/src/components/CharacterPicker.jsx +1 -0
- package/src/components/EditableHtml.jsx +21 -33
- package/src/components/MenuBar.jsx +66 -37
- package/src/components/TiptapContainer.jsx +133 -34
- package/src/components/characters/custom-popper.js +18 -28
- package/src/components/common/done-button.jsx +15 -26
- package/src/components/common/toolbar-buttons.jsx +28 -44
- package/src/components/icons/CssIcon.jsx +11 -13
- package/src/components/icons/RespArea.jsx +16 -16
- package/src/components/icons/TableIcons.jsx +15 -16
- package/src/components/icons/TextAlign.jsx +3 -3
- package/src/components/image/AltDialog.jsx +6 -6
- package/src/components/image/ImageToolbar.jsx +28 -29
- package/src/components/media/MediaDialog.js +61 -78
- package/src/components/media/MediaToolbar.jsx +30 -37
- package/src/components/media/MediaWrapper.jsx +12 -16
- package/src/components/respArea/DragInTheBlank/DragInTheBlank.jsx +5 -4
- package/src/components/respArea/DragInTheBlank/choice.jsx +191 -185
- package/src/components/respArea/ToolbarIcon.jsx +13 -15
- package/src/extensions/component.jsx +61 -89
- package/src/extensions/css.js +6 -5
- package/src/extensions/custom-toolbar-wrapper.jsx +61 -81
- package/lib/__tests__/utils.js +0 -106
- package/src/__tests__/utils.js +0 -36
|
@@ -1,82 +1,45 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports["default"] = void 0;
|
|
11
|
-
|
|
9
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
12
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
-
|
|
14
11
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
15
|
-
|
|
16
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
17
|
-
|
|
18
13
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
19
|
-
|
|
20
|
-
var _styles = require("@material-ui/core/styles");
|
|
21
|
-
|
|
14
|
+
var _styles = require("@mui/material/styles");
|
|
22
15
|
var _prosemirrorState = require("prosemirror-state");
|
|
23
|
-
|
|
24
|
-
var
|
|
25
|
-
|
|
26
|
-
var
|
|
27
|
-
|
|
28
|
-
var
|
|
29
|
-
|
|
30
|
-
var
|
|
31
|
-
|
|
32
|
-
var
|
|
33
|
-
|
|
34
|
-
var
|
|
35
|
-
|
|
36
|
-
var
|
|
37
|
-
|
|
38
|
-
var _FormatUnderlined = _interopRequireDefault(require("@material-ui/icons/FormatUnderlined"));
|
|
39
|
-
|
|
40
|
-
var _Functions = _interopRequireDefault(require("@material-ui/icons/Functions"));
|
|
41
|
-
|
|
42
|
-
var _Image = _interopRequireDefault(require("@material-ui/icons/Image"));
|
|
43
|
-
|
|
44
|
-
var _Redo = _interopRequireDefault(require("@material-ui/icons/Redo"));
|
|
45
|
-
|
|
46
|
-
var _Undo = _interopRequireDefault(require("@material-ui/icons/Undo"));
|
|
47
|
-
|
|
48
|
-
var _Theaters = _interopRequireDefault(require("@material-ui/icons/Theaters"));
|
|
49
|
-
|
|
50
|
-
var _VolumeUp = _interopRequireDefault(require("@material-ui/icons/VolumeUp"));
|
|
51
|
-
|
|
52
|
-
var _BorderAll = _interopRequireDefault(require("@material-ui/icons/BorderAll"));
|
|
53
|
-
|
|
16
|
+
var _FormatBold = _interopRequireDefault(require("@mui/icons-material/FormatBold"));
|
|
17
|
+
var _FormatItalic = _interopRequireDefault(require("@mui/icons-material/FormatItalic"));
|
|
18
|
+
var _FormatStrikethrough = _interopRequireDefault(require("@mui/icons-material/FormatStrikethrough"));
|
|
19
|
+
var _Code = _interopRequireDefault(require("@mui/icons-material/Code"));
|
|
20
|
+
var _GridOn = _interopRequireDefault(require("@mui/icons-material/GridOn"));
|
|
21
|
+
var _FormatListBulleted = _interopRequireDefault(require("@mui/icons-material/FormatListBulleted"));
|
|
22
|
+
var _FormatListNumbered = _interopRequireDefault(require("@mui/icons-material/FormatListNumbered"));
|
|
23
|
+
var _FormatUnderlined = _interopRequireDefault(require("@mui/icons-material/FormatUnderlined"));
|
|
24
|
+
var _Functions = _interopRequireDefault(require("@mui/icons-material/Functions"));
|
|
25
|
+
var _Image = _interopRequireDefault(require("@mui/icons-material/Image"));
|
|
26
|
+
var _Redo = _interopRequireDefault(require("@mui/icons-material/Redo"));
|
|
27
|
+
var _Undo = _interopRequireDefault(require("@mui/icons-material/Undo"));
|
|
28
|
+
var _Theaters = _interopRequireDefault(require("@mui/icons-material/Theaters"));
|
|
29
|
+
var _VolumeUp = _interopRequireDefault(require("@mui/icons-material/VolumeUp"));
|
|
30
|
+
var _BorderAll = _interopRequireDefault(require("@mui/icons-material/BorderAll"));
|
|
54
31
|
var _react2 = require("@tiptap/react");
|
|
55
|
-
|
|
56
32
|
var _constants = require("../constants");
|
|
57
|
-
|
|
58
33
|
var _ToolbarIcon = require("./respArea/ToolbarIcon");
|
|
59
|
-
|
|
60
34
|
var _characterUtils = require("./characters/characterUtils");
|
|
61
|
-
|
|
62
35
|
var _TextAlign = _interopRequireDefault(require("./icons/TextAlign"));
|
|
63
|
-
|
|
64
36
|
var _CssIcon = _interopRequireDefault(require("./icons/CssIcon"));
|
|
65
|
-
|
|
66
37
|
var _TableIcons = require("./icons/TableIcons");
|
|
67
|
-
|
|
68
38
|
var _CharacterPicker = require("./CharacterPicker");
|
|
69
|
-
|
|
70
39
|
var _doneButton = require("./common/done-button");
|
|
71
|
-
|
|
72
|
-
function
|
|
73
|
-
|
|
74
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
75
|
-
|
|
76
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
77
|
-
|
|
78
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
79
|
-
|
|
40
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
41
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
42
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
80
43
|
var SuperscriptIcon = function SuperscriptIcon() {
|
|
81
44
|
return /*#__PURE__*/_react["default"].createElement("svg", {
|
|
82
45
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -89,7 +52,6 @@ var SuperscriptIcon = function SuperscriptIcon() {
|
|
|
89
52
|
fill: "currentColor"
|
|
90
53
|
}));
|
|
91
54
|
};
|
|
92
|
-
|
|
93
55
|
var SubscriptIcon = function SubscriptIcon() {
|
|
94
56
|
return /*#__PURE__*/_react["default"].createElement("svg", {
|
|
95
57
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -102,7 +64,6 @@ var SubscriptIcon = function SubscriptIcon() {
|
|
|
102
64
|
fill: "currentColor"
|
|
103
65
|
}));
|
|
104
66
|
};
|
|
105
|
-
|
|
106
67
|
var HeadingIcon = function HeadingIcon() {
|
|
107
68
|
return /*#__PURE__*/_react["default"].createElement("svg", {
|
|
108
69
|
width: "30",
|
|
@@ -119,37 +80,28 @@ var HeadingIcon = function HeadingIcon() {
|
|
|
119
80
|
fill: "currentColor"
|
|
120
81
|
}));
|
|
121
82
|
};
|
|
122
|
-
|
|
123
83
|
function MenuBar(_ref) {
|
|
124
|
-
var _classNames;
|
|
125
|
-
|
|
126
84
|
var editor = _ref.editor,
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
85
|
+
classes = _ref.classes,
|
|
86
|
+
activePlugins = _ref.activePlugins,
|
|
87
|
+
toolOpts = _ref.toolbarOpts,
|
|
88
|
+
responseAreaProps = _ref.responseAreaProps,
|
|
89
|
+
onChange = _ref.onChange;
|
|
133
90
|
var _useState = (0, _react.useState)(false),
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
91
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
92
|
+
showPicker = _useState2[0],
|
|
93
|
+
setShowPicker = _useState2[1];
|
|
138
94
|
var toolbarOpts = toolOpts !== null && toolOpts !== void 0 ? toolOpts : {};
|
|
139
95
|
var editorState = (0, _react2.useEditorState)({
|
|
140
96
|
editor: editor,
|
|
141
97
|
selector: function selector(ctx) {
|
|
142
|
-
var _ctx$editor, _ctx$editor2, _ctx$editor3, _ctx$editor4, _ctx$editor5, _ctx$editor$isActive, _ctx$editor$can$chain, _ctx$editor$isActive2, _ref3, _ctx$editor$getAttrib, _ctx$editor$can$chain2, _ctx$editor$isActive3, _ctx$editor$can$chain3, _ctx$editor$isActive4, _ctx$editor$can$chain4, _ctx$editor$isActive5, _ctx$editor$can$chain5, _ctx$editor$can$chain6, _ctx$editor$isActive6, _ctx$editor$isActive7, _ctx$editor$isActive8, _ctx$editor$isActive9, _ctx$editor$
|
|
143
|
-
|
|
98
|
+
var _ctx$editor, _ctx$editor2, _ctx$editor3, _ctx$editor4, _ctx$editor5, _ctx$editor$isActive, _ctx$editor$can$chain, _ctx$editor$isActive2, _ref3, _ctx$editor$getAttrib, _ctx$editor$can$chain2, _ctx$editor$isActive3, _ctx$editor$can$chain3, _ctx$editor$isActive4, _ctx$editor$can$chain4, _ctx$editor$isActive5, _ctx$editor$can$chain5, _ctx$editor$can$chain6, _ctx$editor$isActive6, _ctx$editor$isActive7, _ctx$editor$isActive8, _ctx$editor$isActive9, _ctx$editor$isActive0, _ctx$editor$isActive1, _ctx$editor$isActive10, _ctx$editor$isActive11, _ctx$editor$isActive12, _ctx$editor$isActive13, _ctx$editor$isActive14, _ctx$editor$isActive15, _ctx$editor$isActive16, _ctx$editor$isActive17, _ctx$editor$can$chain7, _ctx$editor$can$chain8;
|
|
144
99
|
var _ref2 = ((_ctx$editor = ctx.editor) === null || _ctx$editor === void 0 ? void 0 : _ctx$editor.state) || {},
|
|
145
|
-
|
|
146
|
-
|
|
100
|
+
selection = _ref2.selection;
|
|
147
101
|
var currentNode;
|
|
148
|
-
|
|
149
102
|
if (selection instanceof _prosemirrorState.NodeSelection) {
|
|
150
103
|
currentNode = selection.node; // the selected node
|
|
151
104
|
}
|
|
152
|
-
|
|
153
105
|
var hideDefaultToolbar = ((_ctx$editor2 = ctx.editor) === null || _ctx$editor2 === void 0 ? void 0 : _ctx$editor2.isActive('math')) || ((_ctx$editor3 = ctx.editor) === null || _ctx$editor3 === void 0 ? void 0 : _ctx$editor3.isActive('explicit_constructed_response')) || ((_ctx$editor4 = ctx.editor) === null || _ctx$editor4 === void 0 ? void 0 : _ctx$editor4.isActive('imageUploadNode'));
|
|
154
106
|
return {
|
|
155
107
|
currentNode: currentNode,
|
|
@@ -171,28 +123,28 @@ function MenuBar(_ref) {
|
|
|
171
123
|
isSubScript: (_ctx$editor$isActive7 = ctx.editor.isActive('subscript')) !== null && _ctx$editor$isActive7 !== void 0 ? _ctx$editor$isActive7 : false,
|
|
172
124
|
isSuperScript: (_ctx$editor$isActive8 = ctx.editor.isActive('superscript')) !== null && _ctx$editor$isActive8 !== void 0 ? _ctx$editor$isActive8 : false,
|
|
173
125
|
isParagraph: (_ctx$editor$isActive9 = ctx.editor.isActive('paragraph')) !== null && _ctx$editor$isActive9 !== void 0 ? _ctx$editor$isActive9 : false,
|
|
174
|
-
isHeading1: (_ctx$editor$
|
|
126
|
+
isHeading1: (_ctx$editor$isActive0 = ctx.editor.isActive('heading', {
|
|
175
127
|
level: 1
|
|
176
|
-
})) !== null && _ctx$editor$
|
|
177
|
-
isHeading2: (_ctx$editor$
|
|
128
|
+
})) !== null && _ctx$editor$isActive0 !== void 0 ? _ctx$editor$isActive0 : false,
|
|
129
|
+
isHeading2: (_ctx$editor$isActive1 = ctx.editor.isActive('heading', {
|
|
178
130
|
level: 2
|
|
179
|
-
})) !== null && _ctx$editor$
|
|
180
|
-
isHeading3: (_ctx$editor$
|
|
131
|
+
})) !== null && _ctx$editor$isActive1 !== void 0 ? _ctx$editor$isActive1 : false,
|
|
132
|
+
isHeading3: (_ctx$editor$isActive10 = ctx.editor.isActive('heading', {
|
|
181
133
|
level: 3
|
|
182
|
-
})) !== null && _ctx$editor$
|
|
183
|
-
isHeading4: (_ctx$editor$
|
|
134
|
+
})) !== null && _ctx$editor$isActive10 !== void 0 ? _ctx$editor$isActive10 : false,
|
|
135
|
+
isHeading4: (_ctx$editor$isActive11 = ctx.editor.isActive('heading', {
|
|
184
136
|
level: 4
|
|
185
|
-
})) !== null && _ctx$editor$
|
|
186
|
-
isHeading5: (_ctx$editor$
|
|
137
|
+
})) !== null && _ctx$editor$isActive11 !== void 0 ? _ctx$editor$isActive11 : false,
|
|
138
|
+
isHeading5: (_ctx$editor$isActive12 = ctx.editor.isActive('heading', {
|
|
187
139
|
level: 5
|
|
188
|
-
})) !== null && _ctx$editor$
|
|
189
|
-
isHeading6: (_ctx$editor$
|
|
140
|
+
})) !== null && _ctx$editor$isActive12 !== void 0 ? _ctx$editor$isActive12 : false,
|
|
141
|
+
isHeading6: (_ctx$editor$isActive13 = ctx.editor.isActive('heading', {
|
|
190
142
|
level: 6
|
|
191
|
-
})) !== null && _ctx$editor$
|
|
192
|
-
isBulletList: (_ctx$editor$
|
|
193
|
-
isOrderedList: (_ctx$editor$
|
|
194
|
-
isCodeBlock: (_ctx$editor$
|
|
195
|
-
isBlockquote: (_ctx$editor$
|
|
143
|
+
})) !== null && _ctx$editor$isActive13 !== void 0 ? _ctx$editor$isActive13 : false,
|
|
144
|
+
isBulletList: (_ctx$editor$isActive14 = ctx.editor.isActive('bulletList')) !== null && _ctx$editor$isActive14 !== void 0 ? _ctx$editor$isActive14 : false,
|
|
145
|
+
isOrderedList: (_ctx$editor$isActive15 = ctx.editor.isActive('orderedList')) !== null && _ctx$editor$isActive15 !== void 0 ? _ctx$editor$isActive15 : false,
|
|
146
|
+
isCodeBlock: (_ctx$editor$isActive16 = ctx.editor.isActive('codeBlock')) !== null && _ctx$editor$isActive16 !== void 0 ? _ctx$editor$isActive16 : false,
|
|
147
|
+
isBlockquote: (_ctx$editor$isActive17 = ctx.editor.isActive('blockquote')) !== null && _ctx$editor$isActive17 !== void 0 ? _ctx$editor$isActive17 : false,
|
|
196
148
|
canUndo: (_ctx$editor$can$chain7 = ctx.editor.can().chain().undo().run()) !== null && _ctx$editor$can$chain7 !== void 0 ? _ctx$editor$can$chain7 : false,
|
|
197
149
|
canRedo: (_ctx$editor$can$chain8 = ctx.editor.can().chain().redo().run()) !== null && _ctx$editor$can$chain8 !== void 0 ? _ctx$editor$can$chain8 : false
|
|
198
150
|
};
|
|
@@ -200,15 +152,13 @@ function MenuBar(_ref) {
|
|
|
200
152
|
});
|
|
201
153
|
var hasDoneButton = false;
|
|
202
154
|
var autoWidth = false;
|
|
203
|
-
var names = (0, _classnames["default"])(classes.toolbar, _constants.PIE_TOOLBAR__CLASS, (
|
|
155
|
+
var names = (0, _classnames["default"])(classes.toolbar, _constants.PIE_TOOLBAR__CLASS, (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, classes.toolbarWithNoDone, !hasDoneButton), classes.toolbarTop, toolbarOpts.position === 'top'), classes.toolbarRight, toolbarOpts.alignment === 'right'), classes.focused, toolbarOpts.alwaysVisible || editorState.isFocused && !editor._toolbarOpened), classes.autoWidth, autoWidth), classes.fullWidth, !autoWidth), classes.hidden, toolbarOpts.isHidden === true));
|
|
204
156
|
var customStyles = toolbarOpts.minWidth !== undefined ? {
|
|
205
157
|
minWidth: toolbarOpts.minWidth
|
|
206
158
|
} : {};
|
|
207
|
-
|
|
208
159
|
var handleMouseDown = function handleMouseDown(e) {
|
|
209
160
|
e.preventDefault();
|
|
210
161
|
};
|
|
211
|
-
|
|
212
162
|
var toolbarButtons = (0, _react.useMemo)(function () {
|
|
213
163
|
return [{
|
|
214
164
|
icon: /*#__PURE__*/_react["default"].createElement(_GridOn["default"], null),
|
|
@@ -302,11 +252,9 @@ function MenuBar(_ref) {
|
|
|
302
252
|
icon: /*#__PURE__*/_react["default"].createElement(_BorderAll["default"], null),
|
|
303
253
|
onClick: function onClick(editor) {
|
|
304
254
|
var tableAttrs = editor.getAttributes('table');
|
|
305
|
-
|
|
306
255
|
var update = _objectSpread(_objectSpread({}, tableAttrs), {}, {
|
|
307
256
|
border: tableAttrs.border !== '0' ? '0' : '1'
|
|
308
257
|
});
|
|
309
|
-
|
|
310
258
|
editor.commands.updateAttributes('table', update);
|
|
311
259
|
},
|
|
312
260
|
hidden: function hidden(state) {
|
|
@@ -552,11 +500,9 @@ function MenuBar(_ref) {
|
|
|
552
500
|
className: classes.buttonsContainer
|
|
553
501
|
}, toolbarButtons.filter(function (btn) {
|
|
554
502
|
var _btn$hidden;
|
|
555
|
-
|
|
556
503
|
return !((_btn$hidden = btn.hidden) !== null && _btn$hidden !== void 0 && _btn$hidden.call(btn, editorState));
|
|
557
504
|
}).map(function (btn, index) {
|
|
558
505
|
var _btn$isDisabled, _btn$isActive;
|
|
559
|
-
|
|
560
506
|
var disabled = (_btn$isDisabled = btn.isDisabled) === null || _btn$isDisabled === void 0 ? void 0 : _btn$isDisabled.call(btn, editorState);
|
|
561
507
|
var active = (_btn$isActive = btn.isActive) === null || _btn$isActive === void 0 ? void 0 : _btn$isActive.call(btn, editorState);
|
|
562
508
|
return /*#__PURE__*/_react["default"].createElement("button", {
|
|
@@ -575,7 +521,7 @@ function MenuBar(_ref) {
|
|
|
575
521
|
className: classes.button
|
|
576
522
|
}, /*#__PURE__*/_react["default"].createElement(_ToolbarIcon.ToolbarIcon, null)), toolbarOpts.showDone && /*#__PURE__*/_react["default"].createElement(_doneButton.DoneButton, {
|
|
577
523
|
onClick: function onClick() {
|
|
578
|
-
onChange === null || onChange === void 0
|
|
524
|
+
onChange === null || onChange === void 0 || onChange(editor.getHTML());
|
|
579
525
|
editor.commands.blur();
|
|
580
526
|
}
|
|
581
527
|
})), showPicker && /*#__PURE__*/_react["default"].createElement(_CharacterPicker.CharacterPicker, {
|
|
@@ -594,19 +540,46 @@ function MenuBar(_ref) {
|
|
|
594
540
|
}));
|
|
595
541
|
}
|
|
596
542
|
|
|
597
|
-
|
|
543
|
+
// Wrapper component that provides classes object using styled API
|
|
544
|
+
var StyledMenuBar = function StyledMenuBar(props) {
|
|
545
|
+
var theme = (0, _styles.useTheme)();
|
|
546
|
+
var classes = {
|
|
547
|
+
defaultToolbar: 'defaultToolbar',
|
|
548
|
+
buttonsContainer: 'buttonsContainer',
|
|
549
|
+
button: 'button',
|
|
550
|
+
active: 'active',
|
|
551
|
+
disabled: 'disabled',
|
|
552
|
+
isActive: 'isActive',
|
|
553
|
+
toolbar: 'toolbar',
|
|
554
|
+
toolbarWithNoDone: 'toolbarWithNoDone',
|
|
555
|
+
toolbarTop: 'toolbarTop',
|
|
556
|
+
toolbarRight: 'toolbarRight',
|
|
557
|
+
fullWidth: 'fullWidth',
|
|
558
|
+
hidden: 'hidden',
|
|
559
|
+
autoWidth: 'autoWidth',
|
|
560
|
+
focused: 'focused',
|
|
561
|
+
iconRoot: 'iconRoot',
|
|
562
|
+
label: 'label',
|
|
563
|
+
shared: 'shared'
|
|
564
|
+
};
|
|
565
|
+
return /*#__PURE__*/_react["default"].createElement(StyledMenuBarRoot, null, /*#__PURE__*/_react["default"].createElement(MenuBar, (0, _extends2["default"])({}, props, {
|
|
566
|
+
classes: classes
|
|
567
|
+
})));
|
|
568
|
+
};
|
|
569
|
+
var StyledMenuBarRoot = (0, _styles.styled)('div')(function (_ref4) {
|
|
570
|
+
var theme = _ref4.theme;
|
|
598
571
|
return {
|
|
599
|
-
defaultToolbar: {
|
|
572
|
+
'& .defaultToolbar': {
|
|
600
573
|
display: 'flex',
|
|
601
574
|
width: '100%',
|
|
602
575
|
justifyContent: 'space-between'
|
|
603
576
|
},
|
|
604
|
-
buttonsContainer: {
|
|
577
|
+
'& .buttonsContainer': {
|
|
605
578
|
alignItems: 'center',
|
|
606
579
|
display: 'flex',
|
|
607
580
|
width: '100%'
|
|
608
581
|
},
|
|
609
|
-
button: {
|
|
582
|
+
'& .button': {
|
|
610
583
|
color: 'grey',
|
|
611
584
|
display: 'inline-flex',
|
|
612
585
|
padding: '2px',
|
|
@@ -620,21 +593,21 @@ var style = function style(theme) {
|
|
|
620
593
|
outline: "2px solid ".concat(theme.palette.grey[700])
|
|
621
594
|
}
|
|
622
595
|
},
|
|
623
|
-
active: {
|
|
596
|
+
'& .active': {
|
|
624
597
|
color: 'black'
|
|
625
598
|
},
|
|
626
|
-
disabled: {
|
|
599
|
+
'& .disabled': {
|
|
627
600
|
opacity: 0.7,
|
|
628
601
|
cursor: 'not-allowed',
|
|
629
602
|
'& :hover': {
|
|
630
603
|
color: 'grey'
|
|
631
604
|
}
|
|
632
605
|
},
|
|
633
|
-
isActive: {
|
|
606
|
+
'& .isActive': {
|
|
634
607
|
background: 'var(--purple)',
|
|
635
608
|
color: 'var(--white)'
|
|
636
609
|
},
|
|
637
|
-
toolbar: {
|
|
610
|
+
'& .toolbar': {
|
|
638
611
|
position: 'absolute',
|
|
639
612
|
zIndex: 20,
|
|
640
613
|
cursor: 'pointer',
|
|
@@ -649,46 +622,41 @@ var style = function style(theme) {
|
|
|
649
622
|
opacity: 0,
|
|
650
623
|
pointerEvents: 'none'
|
|
651
624
|
},
|
|
652
|
-
toolbarWithNoDone: {
|
|
625
|
+
'& .toolbarWithNoDone': {
|
|
653
626
|
minWidth: '265px'
|
|
654
627
|
},
|
|
655
|
-
toolbarTop: {
|
|
628
|
+
'& .toolbarTop': {
|
|
656
629
|
top: '-45px'
|
|
657
630
|
},
|
|
658
|
-
toolbarRight: {
|
|
631
|
+
'& .toolbarRight': {
|
|
659
632
|
right: 0
|
|
660
633
|
},
|
|
661
|
-
fullWidth: {
|
|
634
|
+
'& .fullWidth': {
|
|
662
635
|
width: '100%'
|
|
663
636
|
},
|
|
664
|
-
hidden: {
|
|
637
|
+
'& .hidden': {
|
|
665
638
|
visibility: 'hidden'
|
|
666
639
|
},
|
|
667
|
-
autoWidth: {
|
|
640
|
+
'& .autoWidth': {
|
|
668
641
|
width: 'auto'
|
|
669
642
|
},
|
|
670
|
-
focused: {
|
|
643
|
+
'& .focused': {
|
|
671
644
|
opacity: 1,
|
|
672
645
|
pointerEvents: 'auto'
|
|
673
646
|
},
|
|
674
|
-
iconRoot: {
|
|
647
|
+
'& .iconRoot': {
|
|
675
648
|
width: '28px',
|
|
676
649
|
height: '28px',
|
|
677
650
|
padding: '4px',
|
|
678
651
|
verticalAlign: 'top'
|
|
679
652
|
},
|
|
680
|
-
label: {
|
|
653
|
+
'& .label': {
|
|
681
654
|
color: 'var(--editable-html-toolbar-check, #00bb00)'
|
|
682
655
|
},
|
|
683
|
-
shared: {
|
|
656
|
+
'& .shared': {
|
|
684
657
|
display: 'flex'
|
|
685
658
|
}
|
|
686
659
|
};
|
|
687
|
-
};
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
index: 1000
|
|
691
|
-
})(MenuBar);
|
|
692
|
-
var _default = StyledMenuBar;
|
|
693
|
-
exports["default"] = _default;
|
|
694
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL01lbnVCYXIuanN4Il0sIm5hbWVzIjpbIlN1cGVyc2NyaXB0SWNvbiIsIlN1YnNjcmlwdEljb24iLCJIZWFkaW5nSWNvbiIsIndpZHRoIiwiaGVpZ2h0IiwiTWVudUJhciIsImVkaXRvciIsImNsYXNzZXMiLCJhY3RpdmVQbHVnaW5zIiwidG9vbE9wdHMiLCJ0b29sYmFyT3B0cyIsInJlc3BvbnNlQXJlYVByb3BzIiwib25DaGFuZ2UiLCJzaG93UGlja2VyIiwic2V0U2hvd1BpY2tlciIsImVkaXRvclN0YXRlIiwic2VsZWN0b3IiLCJjdHgiLCJzdGF0ZSIsInNlbGVjdGlvbiIsImN1cnJlbnROb2RlIiwiTm9kZVNlbGVjdGlvbiIsIm5vZGUiLCJoaWRlRGVmYXVsdFRvb2xiYXIiLCJpc0FjdGl2ZSIsImlzRm9jdXNlZCIsImlzQm9sZCIsImNhbkJvbGQiLCJjYW4iLCJjaGFpbiIsInRvZ2dsZUJvbGQiLCJydW4iLCJpc1RhYmxlIiwidGFibGVIYXNCb3JkZXIiLCJnZXRBdHRyaWJ1dGVzIiwiYm9yZGVyIiwiY2FuVGFibGUiLCJpbnNlcnRUYWJsZSIsImlzSXRhbGljIiwiY2FuSXRhbGljIiwidG9nZ2xlSXRhbGljIiwiaXNTdHJpa2UiLCJjYW5TdHJpa2UiLCJ0b2dnbGVTdHJpa2UiLCJpc0NvZGUiLCJjYW5Db2RlIiwidG9nZ2xlQ29kZSIsImNhbkNsZWFyTWFya3MiLCJ1bnNldEFsbE1hcmtzIiwiaXNVbmRlcmxpbmUiLCJpc1N1YlNjcmlwdCIsImlzU3VwZXJTY3JpcHQiLCJpc1BhcmFncmFwaCIsImlzSGVhZGluZzEiLCJsZXZlbCIsImlzSGVhZGluZzIiLCJpc0hlYWRpbmczIiwiaXNIZWFkaW5nNCIsImlzSGVhZGluZzUiLCJpc0hlYWRpbmc2IiwiaXNCdWxsZXRMaXN0IiwiaXNPcmRlcmVkTGlzdCIsImlzQ29kZUJsb2NrIiwiaXNCbG9ja3F1b3RlIiwiY2FuVW5kbyIsInVuZG8iLCJjYW5SZWRvIiwicmVkbyIsImhhc0RvbmVCdXR0b24iLCJhdXRvV2lkdGgiLCJuYW1lcyIsInRvb2xiYXIiLCJQSUVfVE9PTEJBUl9fQ0xBU1MiLCJ0b29sYmFyV2l0aE5vRG9uZSIsInRvb2xiYXJUb3AiLCJwb3NpdGlvbiIsInRvb2xiYXJSaWdodCIsImFsaWdubWVudCIsImZvY3VzZWQiLCJhbHdheXNWaXNpYmxlIiwiX3Rvb2xiYXJPcGVuZWQiLCJmdWxsV2lkdGgiLCJoaWRkZW4iLCJpc0hpZGRlbiIsImN1c3RvbVN0eWxlcyIsIm1pbldpZHRoIiwidW5kZWZpbmVkIiwiaGFuZGxlTW91c2VEb3duIiwiZSIsInByZXZlbnREZWZhdWx0IiwidG9vbGJhckJ1dHRvbnMiLCJpY29uIiwib25DbGljayIsImZvY3VzIiwicm93cyIsImNvbHMiLCJ3aXRoSGVhZGVyUm93IiwiaW5jbHVkZXMiLCJpc0Rpc2FibGVkIiwiYWRkUm93QWZ0ZXIiLCJkZWxldGVSb3ciLCJhZGRDb2x1bW5BZnRlciIsImRlbGV0ZUNvbHVtbiIsImRlbGV0ZVRhYmxlIiwidGFibGVBdHRycyIsInVwZGF0ZSIsImNvbW1hbmRzIiwidXBkYXRlQXR0cmlidXRlcyIsInRvZ2dsZVVuZGVybGluZSIsInRvZ2dsZVN1YnNjcmlwdCIsInRvZ2dsZVN1cGVyc2NyaXB0Iiwic2V0SW1hZ2VVcGxvYWROb2RlIiwiaW5zZXJ0TWVkaWEiLCJ0eXBlIiwidGFnIiwib3BlbkNTU0NsYXNzRGlhbG9nIiwidG9nZ2xlSGVhZGluZyIsImluc2VydE1hdGgiLCJzcGFuaXNoQ29uZmlnIiwiZmlsdGVyIiwicCIsImxlbmd0aCIsInNwZWNpYWxDb25maWciLCJ0b2dnbGVCdWxsZXRMaXN0IiwidG9nZ2xlT3JkZXJlZExpc3QiLCJkZWZhdWx0VG9vbGJhciIsImJ1dHRvbnNDb250YWluZXIiLCJidG4iLCJtYXAiLCJpbmRleCIsImRpc2FibGVkIiwiYWN0aXZlIiwiYnV0dG9uIiwiaW5zZXJ0UmVzcG9uc2VBcmVhIiwic2hvd0RvbmUiLCJnZXRIVE1MIiwiYmx1ciIsInJlbmRlclBvcE92ZXIiLCJldiIsImNoIiwiY29uc29sZSIsImxvZyIsImNsb3NlUG9wT3ZlciIsInN0eWxlIiwidGhlbWUiLCJkaXNwbGF5IiwianVzdGlmeUNvbnRlbnQiLCJhbGlnbkl0ZW1zIiwiY29sb3IiLCJwYWRkaW5nIiwiYmFja2dyb3VuZCIsImN1cnNvciIsIm91dGxpbmUiLCJwYWxldHRlIiwiZ3JleSIsIm9wYWNpdHkiLCJ6SW5kZXgiLCJtYXJnaW4iLCJib3hTaGFkb3ciLCJib3hTaXppbmciLCJwb2ludGVyRXZlbnRzIiwidG9wIiwicmlnaHQiLCJ2aXNpYmlsaXR5IiwiaWNvblJvb3QiLCJ2ZXJ0aWNhbEFsaWduIiwibGFiZWwiLCJzaGFyZWQiLCJTdHlsZWRNZW51QmFyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7Ozs7Ozs7OztBQUVBLElBQU1BLGVBQWUsR0FBRyxTQUFsQkEsZUFBa0I7QUFBQSxzQkFDdEI7QUFBSyxJQUFBLEtBQUssRUFBQyw0QkFBWDtBQUF3QyxJQUFBLE1BQU0sRUFBQyxNQUEvQztBQUFzRCxJQUFBLE9BQU8sRUFBQyxXQUE5RDtBQUEwRSxJQUFBLEtBQUssRUFBQyxNQUFoRjtBQUF1RixJQUFBLElBQUksRUFBQztBQUE1RixrQkFDRTtBQUNFLElBQUEsQ0FBQyxFQUFDLGdOQURKO0FBRUUsSUFBQSxJQUFJLEVBQUM7QUFGUCxJQURGLENBRHNCO0FBQUEsQ0FBeEI7O0FBU0EsSUFBTUMsYUFBYSxHQUFHLFNBQWhCQSxhQUFnQjtBQUFBLHNCQUNwQjtBQUFLLElBQUEsS0FBSyxFQUFDLDRCQUFYO0FBQXdDLElBQUEsTUFBTSxFQUFDLE1BQS9DO0FBQXNELElB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SyxFQUFFO0FBREssS0E3RFU7QUFnRXhCakYsSUFBQUEsU0FBUyxFQUFFO0FBQ1Q5RSxNQUFBQSxLQUFLLEVBQUU7QUFERSxLQWhFYTtBQW1FeEIrRSxJQUFBQSxNQUFNLEVBQUU7QUFDTmlGLE1BQUFBLFVBQVUsRUFBRTtBQUROLEtBbkVnQjtBQXNFeEI5RixJQUFBQSxTQUFTLEVBQUU7QUFDVGxFLE1BQUFBLEtBQUssRUFBRTtBQURFLEtBdEVhO0FBeUV4QjJFLElBQUFBLE9BQU8sRUFBRTtBQUNQNkUsTUFBQUEsT0FBTyxFQUFFLENBREY7QUFFUEssTUFBQUEsYUFBYSxFQUFFO0FBRlIsS0F6RWU7QUE2RXhCSSxJQUFBQSxRQUFRLEVBQUU7QUFDUmpLLE1BQUFBLEtBQUssRUFBRSxNQURDO0FBRVJDLE1BQUFBLE1BQU0sRUFBRSxNQUZBO0FBR1JpSixNQUFBQSxPQUFPLEVBQUUsS0FIRDtBQUlSZ0IsTUFBQUEsYUFBYSxFQUFFO0FBSlAsS0E3RWM7QUFtRnhCQyxJQUFBQSxLQUFLLEVBQUU7QUFDTGxCLE1BQUFBLEtBQUssRUFBRTtBQURGLEtBbkZpQjtBQXNGeEJtQixJQUFBQSxNQUFNLEVBQUU7QUFDTnRCLE1BQUFBLE9BQU8sRUFBRTtBQURIO0FBdEZnQixHQUFaO0FBQUEsQ0FBZDs7QUEyRkEsSUFBTXVCLGFBQWEsR0FBRyx3QkFBV3pCLEtBQVgsRUFBa0I7QUFBRWQsRUFBQUEsS0FBSyxFQUFFO0FBQVQsQ0FBbEIsRUFBbUM1SCxPQUFuQyxDQUF0QjtlQUVlbUssYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VNZW1vLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBjbGFzc05hbWVzIGZyb20gJ2NsYXNzbmFtZXMnO1xuaW1wb3J0IHsgd2l0aFN0eWxlcyB9IGZyb20gJ0BtYXRlcmlhbC11aS9jb3JlL3N0eWxlcyc7XG5pbXBvcnQgeyBOb2RlU2VsZWN0aW9uIH0gZnJvbSAncHJvc2VtaXJyb3Itc3RhdGUnO1xuXG5pbXBvcnQgQm9sZCBmcm9tICdAbWF0ZXJpYWwtdWkvaWNvbnMvRm9ybWF0Qm9sZCc7XG5pbXBvcnQgSXRhbGljIGZyb20gJ0BtYXRlcmlhbC11aS9pY29ucy9Gb3JtYXRJdGFsaWMnO1xuaW1wb3J0IFN0cmlrZXRocm91Z2ggZnJvbSAnQG1hdGVyaWFsLXVpL2ljb25zL0Zvcm1hdFN0cmlrZXRocm91Z2gnO1xuaW1wb3J0IENvZGUgZnJvbSAnQG1hdGVyaWFsLXVpL2ljb25zL0NvZGUnO1xuaW1wb3J0IEdyaWRPbiBmcm9tICdAbWF0ZXJpYWwtdWkvaWNvbnMvR3JpZE9uJztcbmltcG9ydCBCdWxsZXRlZExpc3RJY29uIGZyb20gJ0BtYXRlcmlhbC11aS9pY29ucy9Gb3JtYXRMaXN0QnVsbGV0ZWQnO1xuaW1wb3J0IE51bWJlcmVkTGlzdEljb24gZnJvbSAnQG1hdGVyaWFsLXVpL2ljb25zL0Zvcm1hdExpc3ROdW1iZXJlZCc7XG5pbXBvcnQgVW5kZXJsaW5lIGZyb20gJ0BtYXRlcmlhbC11aS9pY29ucy9Gb3JtYXRVbmRlcmxpbmVkJztcbmltcG9ydCBGdW5jdGlvbnMgZnJvbSAnQG1hdGVyaWFsLXVpL2ljb25zL0Z1bmN0aW9ucyc7XG5pbXBvcnQgSW1hZ2VJY29uIGZyb20gJ0BtYXRlcmlhbC11aS9pY29ucy9JbWFnZSc7XG5pbXBvcnQgUmVkbyBmcm9tICdAbWF0ZXJpYWwtdWkvaWNvbnMvUmVkbyc7XG5pbXBvcnQgVW5kbyBmcm9tICdAbWF0ZXJpYWwtdWkvaWNvbnMvVW5kbyc7XG5pbXBvcnQgVGhlYXRlcnNJY29uIGZyb20gJ0BtYXRlcmlhbC11aS9pY29ucy9UaGVhdGVycyc7XG5pbXBvcnQgVm9sdW1lVXBJY29uIGZyb20gJ0BtYXRlcmlhbC11aS9pY29ucy9Wb2x1bWVVcCc7XG5pbXBvcnQgQm9yZGVyQWxsIGZyb20gJ0BtYXRlcmlhbC11aS9pY29ucy9Cb3JkZXJBbGwnO1xuXG5pbXBvcnQgeyBFZGl0b3JDb250ZW50LCB1c2VFZGl0b3JTdGF0ZSB9IGZyb20gJ0B0aXB0YXAvcmVhY3QnO1xuXG5pbXBvcnQgeyBQSUVfVE9PTEJBUl9fQ0xBU1MgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgVG9vbGJhckljb24gfSBmcm9tICcuL3Jlc3BBcmVhL1Rvb2xiYXJJY29uJztcbmltcG9ydCB7IHNwYW5pc2hDb25maWcsIHNwZWNpYWxDb25maWcgfSBmcm9tICcuL2NoYXJhY3RlcnMvY2hhcmFjdGVyVXRpbHMnO1xuaW1wb3J0IFRleHRBbGlnbkljb24gZnJvbSAnLi9pY29ucy9UZXh0QWxpZ24nO1xuaW1wb3J0IENTU0ljb24gZnJvbSAnLi9pY29ucy9Dc3NJY29uJztcbmltcG9ydCB7IEFkZENvbHVtbiwgQWRkUm93LCBSZW1vdmVDb2x1bW4sIFJlbW92ZVJvdywgUmVtb3ZlVGFibGUgfSBmcm9tICcuL2ljb25zL1RhYmxlSWNvbnMnO1xuXG5pbXBvcnQgeyBDaGFyYWN0ZXJJY29uLCBDaGFyYWN0ZXJQaWNrZXIgfSBmcm9tICcuL0NoYXJhY3RlclBpY2tlcic7XG5pbXBvcnQgeyBEb25lQnV0dG9uIH0gZnJvbSAnLi9jb21tb24vZG9uZS1idXR0b24nO1xuXG5jb25zdCBTdXBlcnNjcmlwdEljb24gPSAoKSA9PiAoXG4gIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIGhlaWdodD1cIjI0cHhcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgd2lkdGg9XCIyNHB4XCIgZmlsbD1cIm5vbmVcIj5cbiAgICA8cGF0aFxuICAgICAgZD1cIk0yMiw3aC0ydjFoM3YxaC00VjdjMC0wLjU1LDAuNDUtMSwxLTFoMlY1aC0zVjRoM2MwLjU1LDAsMSwwLjQ1LDEsMXYxQzIzLDYuNTUsMjIuNTUsNywyMiw3eiBNNS44OCwyMGgyLjY2bDMuNC01LjQyaDAuMTIgbDMuNCw1LjQyaDIuNjZsLTQuNjUtNy4yN0wxNy44MSw2aC0yLjY4bC0zLjA3LDQuOTloLTAuMTJMOC44NSw2SDYuMTlsNC4zMiw2LjczTDUuODgsMjB6XCJcbiAgICAgIGZpbGw9XCJjdXJyZW50Q29sb3JcIlxuICAgIC8+XG4gIDwvc3ZnPlxuKTtcblxuY29uc3QgU3Vic2NyaXB0SWNvbiA9ICgpID0+IChcbiAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgaGVpZ2h0PVwiMjRweFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiB3aWR0aD1cIjI0cHhcIiBmaWxsPVwibm9uZVwiPlxuICAgIDxwYXRoXG4gICAgICBkPVwiTTIyLDE4aC0ydjFoM3YxaC00di0yYzAtMC41NSwwLjQ1LTEsMS0xaDJ2LTFoLTN2LTFoM2MwLjU1LDAsMSwwLjQ1LDEsMXYxQzIzLDE3LjU1LDIyLjU1LDE4LDIyLDE4eiBNNS44OCwxOGgyLjY2IGwzLjQtNS40MmgwLjEybDMuNCw1LjQyaDIuNjZsLTQuNjUtNy4yN0wxNy44MSw0aC0yLjY4bC0zLjA3LDQuOTloLTAuMTJMOC44NSw0SDYuMTlsNC4zMiw2LjczTDUuODgsMTh6XCJcbiAgICAgIGZpbGw9XCJjdXJyZW50Q29sb3JcIlxuICAgIC8+XG4gIDwvc3ZnPlxuKTtcblxuY29uc3QgSGVhZGluZ0ljb24gPSAoKSA9PiAoXG4gIDxzdmdcbiAgICB3aWR0aD1cIjMwXCJcbiAgICBoZWlnaHQ9XCIyOFwiXG4gICAgdmlld0JveD1cIjAgMCAzMCAyOFwiXG4gICAgZmlsbD1cIm5vbmVcIlxuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgIHN0eWxlPXt7IHdpZHRoOiAnMjBweCcsIGhlaWdodDogJzE4cHgnIH19XG4gID5cbiAgICA8cGF0aFxuICAgICAgZD1cIk0yNyA0VjI0SDI5QzI5LjUgMjQgMzAgMjQuNSAzMCAyNVYyN0MzMCAyNy41NjI1IDI5LjUgMjggMjkgMjhIMTlDMTguNDM3NSAyOCAxOCAyNy41NjI1IDE4IDI3VjI1QzE4IDI0LjUgMTguNDM3NSAyNCAxOSAyNEgyMVYxNkg5VjI0SDExQzExLjUgMjQgMTIgMjQuNSAxMiAyNVYyN0MxMiAyNy41NjI1IDExLjUgMjggMTEgMjhIMUMwLjQzNzUgMjggMCAyNy41NjI1IDAgMjdWMjVDMCAyNC41IDAuNDM3NSAyNCAxIDI0SDNWNEgxQzAuNDM3NSA0IDAgMy41NjI1IDAgM1YxQzAgMC41IDAuNDM3NSAwIDEgMEgxMUMxMS41IDAgMTIgMC41IDEyIDFWM0MxMiAzLjU2MjUgMTEuNSA0IDExIDRIOVYxMkgyMVY0SDE5QzE4LjQzNzUgNCAxOCAzLjU2MjUgMTggM1YxQzE4IDAuNSAxOC40Mzc1IDAgMTkgMEgyOUMyOS41IDAgMzAgMC41IDMwIDFWM0MzMCAzLjU2MjUgMjkuNSA0IDI5IDRIMjdaXCJcbiAgICAgIGZpbGw9XCJjdXJyZW50Q29sb3JcIlxuICAgIC8+XG4gIDwvc3ZnPlxuKTtcblxuZnVuY3Rpb24gTWVudUJhcih7IGVkaXRvciwgY2xhc3NlcywgYWN0aXZlUGx1Z2lucywgdG9vbGJhck9wdHM6IHRvb2xPcHRzLCByZXNwb25zZUFyZWFQcm9wcywgb25DaGFuZ2UgfSkge1xuICBjb25zdCBbc2hvd1BpY2tlciwgc2V0U2hvd1BpY2tlcl0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IHRvb2xiYXJPcHRzID0gdG9vbE9wdHMgPz8ge307XG5cbiAgY29uc3QgZWRpdG9yU3RhdGUgPSB1c2VFZGl0b3JTdGF0ZSh7XG4gICAgZWRpdG9yLFxuICAgIHNlbGVjdG9yOiAoY3R4KSA9PiB7XG4gICAgICBjb25zdCB7IHNlbGVjdGlvbiB9ID0gY3R4LmVkaXRvcj8uc3RhdGUgfHwge307XG5cbiAgICAgIGxldCBjdXJyZW50Tm9kZTtcblxuICAgICAgaWYgKHNlbGVjdGlvbiBpbnN0YW5jZW9mIE5vZGVTZWxlY3Rpb24pIHtcbiAgICAgICAgY3VycmVudE5vZGUgPSBzZWxlY3Rpb24ubm9kZTsgLy8gdGhlIHNlbGVjdGVkIG5vZGVcbiAgICAgIH1cblxuICAgICAgY29uc3QgaGlkZURlZmF1bHRUb29sYmFyID1cbiAgICAgICAgY3R4LmVkaXRvcj8uaXNBY3RpdmUoJ21hdGgnKSB8fFxuICAgICAgICBjdHguZWRpdG9yPy5pc0FjdGl2ZSgnZXhwbGljaXRfY29uc3RydWN0ZWRfcmVzcG9uc2UnKSB8fFxuICAgICAgICBjdHguZWRpdG9yPy5pc0FjdGl2ZSgnaW1hZ2VVcGxvYWROb2RlJyk7XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIGN1cnJlbnROb2RlLFxuICAgICAgICBoaWRlRGVmYXVsdFRvb2xiYXIsXG4gICAgICAgIGlzRm9jdXNlZDogY3R4LmVkaXRvcj8uaXNGb2N1c2VkLFxuICAgICAgICBpc0JvbGQ6IGN0eC5lZGl0b3IuaXNBY3RpdmUoJ2JvbGQnKSA/PyBmYWxzZSxcbiAgICAgICAgY2FuQm9sZDpcbiAgICAgICAgICBjdHguZWRpdG9yXG4gICAgICAgICAgICAuY2FuKClcbiAgICAgICAgICAgIC5jaGFpbigpXG4gICAgICAgICAgICAudG9nZ2xlQm9sZCgpXG4gICAgICAgICAgICAucnVuKCkgPz8gZmFsc2UsXG4gICAgICAgIGlzVGFibGU6IGN0eC5lZGl0b3IuaXNBY3RpdmUoJ3RhYmxlJykgPz8gZmFsc2UsXG4gICAgICAgIHRhYmxlSGFzQm9yZGVyOiBjdHguZWRpdG9yLmdldEF0dHJpYnV0ZXMoJ3RhYmxlJyk/LmJvcmRlciA9PT0gJzEnID8/IGZhbHNlLFxuICAgICAgICBjYW5UYWJsZTpcbiAgICAgICAgICBjdHguZWRpdG9yXG4gICAgICAgICAgICAuY2FuKClcbiAgICAgICAgICAgIC5jaGFpbigpXG4gICAgICAgICAgICAuaW5zZXJ0VGFibGUoKVxuICAgICAgICAgICAgLnJ1bigpID8/IGZhbHNlLFxuICAgICAgICBpc0l0YWxpYzogY3R4LmVkaXRvci5pc0FjdGl2ZSgnaXRhbGljJykgPz8gZmFsc2UsXG4gICAgICAgIGNhbkl0YWxpYzpcbiAgICAgICAgICBjdHguZWRpdG9yXG4gICAgICAgICAgICAuY2FuKClcbiAgICAgICAgICAgIC5jaGFpbigpXG4gICAgICAgICAgICAudG9nZ2xlSXRhbGljKClcbiAgICAgICAgICAgIC5ydW4oKSA/PyBmYWxzZSxcbiAgICAgICAgaXNTdHJpa2U6IGN0eC5lZGl0b3IuaXNBY3RpdmUoJ3N0cmlrZScpID8/IGZhbHNlLFxuICAgICAgICBjYW5TdHJpa2U6XG4gICAgICAgICAgY3R4LmVkaXRvclxuICAgICAgICAgICAgLmNhbigpXG4gICAgICAgICAgICAuY2hhaW4oKVxuICAgICAgICAgICAgLnRvZ2dsZVN0cmlrZSgpXG4gICAgICAgICAgICAucnVuKCkgPz8gZmFsc2UsXG4gICAgICAgIGlzQ29kZTogY3R4LmVkaXRvci5pc0FjdGl2ZSgnY29kZScpID8/IGZhbHNlLFxuICAgICAgICBjYW5Db2RlOlxuICAgICAgICAgIGN0eC5lZGl0b3JcbiAgICAgICAgICAgIC5jYW4oKVxuICAgICAgICAgICAgLmNoYWluKClcbiAgICAgICAgICAgIC50b2dnbGVDb2RlKClcbiAgICAgICAgICAgIC5ydW4oKSA/PyBmYWxzZSxcbiAgICAgICAgY2FuQ2xlYXJNYXJrczpcbiAgICAgICAgICBjdHguZWRpdG9yXG4gICAgICAgICAgICAuY2FuKClcbiAgICAgICAgICAgIC5jaGFpbigpXG4gICAgICAgICAgICAudW5zZXRBbGxNYXJrcygpXG4gICAgICAgICAgICAucnVuKCkgPz8gZmFsc2UsXG4gICAgICAgIGlzVW5kZXJsaW5lOiBjdHguZWRpdG9yLmlzQWN0aXZlKCd1bmRlcmxpbmUnKSA/PyBmYWxzZSxcbiAgICAgICAgaXNTdWJTY3JpcHQ6IGN0eC5lZGl0b3IuaXNBY3RpdmUoJ3N1YnNjcmlwdCcpID8/IGZhbHNlLFxuICAgICAgICBpc1N1cGVyU2NyaXB0OiBjdHguZWRpdG9yLmlzQWN0aXZlKCdzdXBlcnNjcmlwdCcpID8/IGZhbHNlLFxuICAgICAgICBpc1BhcmFncmFwaDogY3R4LmVkaXRvci5pc0FjdGl2ZSgncGFyYWdyYXBoJykgPz8gZmFsc2UsXG4gICAgICAgIGlzSGVhZGluZzE6IGN0eC5lZGl0b3IuaXNBY3RpdmUoJ2hlYWRpbmcnLCB7IGxldmVsOiAxIH0pID8/IGZhbHNlLFxuICAgICAgICBpc0hlYWRpbmcyOiBjdHguZWRpdG9yLmlzQWN0aXZlKCdoZWFkaW5nJywgeyBsZXZlbDogMiB9KSA/PyBmYWxzZSxcbiAgICAgICAgaXNIZWFkaW5nMzogY3R4LmVkaXRvci5pc0FjdGl2ZSgnaGVhZGluZycsIHsgbGV2ZWw6IDMgfSkgPz8gZmFsc2UsXG4gICAgICAgIGlzSGVhZGluZzQ6IGN0eC5lZGl0b3IuaXNBY3RpdmUoJ2hlYWRpbmcnLCB7IGxldmVsOiA0IH0pID8/IGZhbHNlLFxuICAgICAgICBpc0hlYWRpbmc1OiBjdHguZWRpdG9yLmlzQWN0aXZlKCdoZWFkaW5nJywgeyBsZXZlbDogNSB9KSA/PyBmYWxzZSxcbiAgICAgICAgaXNIZWFkaW5nNjogY3R4LmVkaXRvci5pc0FjdGl2ZSgnaGVhZGluZycsIHsgbGV2ZWw6IDYgfSkgPz8gZmFsc2UsXG4gICAgICAgIGlzQnVsbGV0TGlzdDogY3R4LmVkaXRvci5pc0FjdGl2ZSgnYnVsbGV0TGlzdCcpID8/IGZhbHNlLFxuICAgICAgICBpc09yZGVyZWRMaXN0OiBjdHguZWRpdG9yLmlzQWN0aXZlKCdvcmRlcmVkTGlzdCcpID8/IGZhbHNlLFxuICAgICAgICBpc0NvZGVCbG9jazogY3R4LmVkaXRvci5pc0FjdGl2ZSgnY29kZUJsb2NrJykgPz8gZmFsc2UsXG4gICAgICAgIGlzQmxvY2txdW90ZTogY3R4LmVkaXRvci5pc0FjdGl2ZSgnYmxvY2txdW90ZScpID8/IGZhbHNlLFxuICAgICAgICBjYW5VbmRvOlxuICAgICAgICAgIGN0eC5lZGl0b3JcbiAgICAgICAgICAgIC5jYW4oKVxuICAgICAgICAgICAgLmNoYWluKClcbiAgICAgICAgICAgIC51bmRvKClcbiAgICAgICAgICAgIC5ydW4oKSA/PyBmYWxzZSxcbiAgICAgICAgY2FuUmVkbzpcbiAgICAgICAgICBjdHguZWRpdG9yXG4gICAgICAgICAgICAuY2FuKClcbiAgICAgICAgICAgIC5jaGFpbigpXG4gICAgICAgICAgICAucmVkbygpXG4gICAgICAgICAgICAucnVuKCkgPz8gZmFsc2UsXG4gICAgICB9O1xuICAgIH0sXG4gIH0pO1xuXG4gIGNvbnN0IGhhc0RvbmVCdXR0b24gPSBmYWxzZTtcbiAgY29uc3QgYXV0b1dpZHRoID0gZmFsc2U7XG5cbiAgY29uc3QgbmFtZXMgPSBjbGFzc05hbWVzKGNsYXNzZXMudG9vbGJhciwgUElFX1RPT0xCQVJfX0NMQVNTLCB7XG4gICAgW2NsYXNzZXMudG9vbGJhcldpdGhOb0RvbmVdOiAhaGFzRG9uZUJ1dHRvbixcbiAgICBbY2xhc3Nlcy50b29sYmFyVG9wXTogdG9vbGJhck9wdHMucG9zaXRpb24gPT09ICd0b3AnLFxuICAgIFtjbGFzc2VzLnRvb2xiYXJSaWdodF06IHRvb2xiYXJPcHRzLmFsaWdubWVudCA9PT0gJ3JpZ2h0JyxcbiAgICBbY2xhc3Nlcy5mb2N1c2VkXTogdG9vbGJhck9wdHMuYWx3YXlzVmlzaWJsZSB8fCAoZWRpdG9yU3RhdGUuaXNGb2N1c2VkICYmICFlZGl0b3IuX3Rvb2xiYXJPcGVuZWQpLFxuICAgIFtjbGFzc2VzLmF1dG9XaWR0aF06IGF1dG9XaWR0aCxcbiAgICBbY2xhc3Nlcy5mdWxsV2lkdGhdOiAhYXV0b1dpZHRoLFxuICAgIFtjbGFzc2VzLmhpZGRlbl06IHRvb2xiYXJPcHRzLmlzSGlkZGVuID09PSB0cnVlLFxuICB9KTtcblxuICBjb25zdCBjdXN0b21TdHlsZXMgPSB0b29sYmFyT3B0cy5taW5XaWR0aCAhPT0gdW5kZWZpbmVkID8geyBtaW5XaWR0aDogdG9vbGJhck9wdHMubWluV2lkdGggfSA6IHt9O1xuXG4gIGNvbnN0IGhhbmRsZU1vdXNlRG93biA9IChlKSA9PiB7XG4gICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICB9O1xuXG4gIGNvbnN0IHRvb2xiYXJCdXR0b25zID0gdXNlTWVtbyhcbiAgICAoKSA9PiBbXG4gICAgICB7XG4gICAgICAgIGljb246IDxHcmlkT24gLz4sXG4gICAgICAgIG9uQ2xpY2s6IChlZGl0b3IpID0+XG4gICAgICAgICAgZWRpdG9yXG4gICAgICAgICAgICAuY2hhaW4oKVxuICAgICAgICAgICAgLmZvY3VzKClcbiAgICAgICAgICAgIC5pbnNlcnRUYWJsZSh7IHJvd3M6IDIsIGNvbHM6IDIsIHdpdGhIZWFkZXJSb3c6IGZhbHNlIH0pXG4gICAgICAgICAgICAucnVuKCksXG4gICAgICAgIGhpZGRlbjogKHN0YXRlKSA9PiAhYWN0aXZlUGx1Z2lucz8uaW5jbHVkZXMoJ3RhYmxlJykgfHwgc3RhdGUuaXNUYWJsZSxcbiAgICAgICAgaXNBY3RpdmU6IChzdGF0ZSkgPT4gc3RhdGUuaXNUYWJsZSxcbiAgICAgICAgaXNEaXNhYmxlZDogKHN0YXRlKSA9PiAhc3RhdGUuY2FuVGFibGUsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpY29uOiA8QWRkUm93IC8+LFxuICAgICAgICBvbkNsaWNrOiAoZWRpdG9yKSA9PlxuICAgICAgICAgIGVkaXRvclxuICAgICAgICAgICAgLmNoYWluKClcbiAgICAgICAgICAgIC5mb2N1cygpXG4gICAgICAgICAgICAuYWRkUm93QWZ0ZXIoKVxuICAgICAgICAgICAgLnJ1bigpLFxuICAgICAgICBoaWRkZW46IChzdGF0ZSkgPT4gIXN0YXRlLmlzVGFibGUsXG4gICAgICAgIGlzQWN0aXZlOiAoc3RhdGUpID0+IHN0YXRlLmlzVGFibGUsXG4gICAgICAgIGlzRGlzYWJsZWQ6IChzdGF0ZSkgPT4gIXN0YXRlLmNhblRhYmxlLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWNvbjogPFJlbW92ZVJvdyAvPixcbiAgICAgICAgb25DbGljazogKGVkaXRvcikgPT5cbiAgICAgICAgICBlZGl0b3JcbiAgICAgICAgICAgIC5jaGFpbigpXG4gICAgICAgICAgICAuZm9jdXMoKVxuICAgICAgICAgICAgLmRlbGV0ZVJvdygpXG4gICAgICAgICAgICAucnVuKCksXG4gICAgICAgIGhpZGRlbjogKHN0YXRlKSA9PiAhc3RhdGUuaXNUYWJsZSxcbiAgICAgICAgaXNBY3RpdmU6IChzdGF0ZSkgPT4gc3RhdGUuaXNUYWJsZSxcbiAgICAgICAgaXNEaXNhYmxlZDogKHN0YXRlKSA9PiAhc3RhdGUuY2FuVGFibGUsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpY29uOiA8QWRkQ29sdW1uIC8+LFxuICAgICAgICBvbkNsaWNrOiAoZWRpdG9yKSA9PlxuICAgICAgICAgIGVkaXRvclxuICAgICAgICAgICAgLmNoYWluKClcbiAgICAgICAgICAgIC5mb2N1cygpXG4gICAgICAgICAgICAuYWRkQ29sdW1uQWZ0ZXIoKVxuICAgICAgICAgICAgLnJ1bigpLFxuICAgICAgICBoaWRkZW46IChzdGF0ZSkgPT4gIXN0YXRlLmlzVGFibGUsXG4gICAgICAgIGlzQWN0aXZlOiAoc3RhdGUpID0+IHN0YXRlLmlzVGFibGUsXG4gICAgICAgIGlzRGlzYWJsZWQ6IChzdGF0ZSkgPT4gIXN0YXRlLmNhblRhYmxlLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWNvbjogPFJlbW92ZUNvbHVtbiAvPixcbiAgICAgICAgb25DbGljazogKGVkaXRvcikgPT5cbiAgICAgICAgICBlZGl0b3JcbiAgICAgICAgICAgIC5jaGFpbigpXG4gICAgICAgICAgICAuZm9jdXMoKVxuICAgICAgICAgICAgLmRlbGV0ZUNvbHVtbigpXG4gICAgICAgICAgICAucnVuKCksXG4gICAgICAgIGhpZGRlbjogKHN0YXRlKSA9PiAhc3RhdGUuaXNUYWJsZSxcbiAgICAgICAgaXNBY3RpdmU6IChzdGF0ZSkgPT4gc3RhdGUuaXNUYWJsZSxcbiAgICAgICAgaXNEaXNhYmxlZDogKHN0YXRlKSA9PiAhc3RhdGUuY2FuVGFibGUsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpY29uOiA8UmVtb3ZlVGFibGUgLz4sXG4gICAgICAgIG9uQ2xpY2s6IChlZGl0b3IpID0+XG4gICAgICAgICAgZWRpdG9yXG4gICAgICAgICAgICAuY2hhaW4oKVxuICAgICAgICAgICAgLmZvY3VzKClcbiAgICAgICAgICAgIC5kZWxldGVUYWJsZSgpXG4gICAgICAgICAgICAucnVuKCksXG4gICAgICAgIGhpZGRlbjogKHN0YXRlKSA9PiAhc3RhdGUuaXNUYWJsZSxcbiAgICAgICAgaXNBY3RpdmU6IChzdGF0ZSkgPT4gc3RhdGUuaXNUYWJsZSxcbiAgICAgICAgaXNEaXNhYmxlZDogKHN0YXRlKSA9PiAhc3RhdGUuY2FuVGFibGUsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpY29uOiA8Qm9yZGVyQWxsIC8+LFxuICAgICAgICBvbkNsaWNrOiAoZWRpdG9yKSA9PiB7XG4gICAgICAgICAgY29uc3QgdGFibGVBdHRycyA9IGVkaXRvci5nZXRBdHRyaWJ1dGVzKCd0YWJsZScpO1xuXG4gICAgICAgICAgY29uc3QgdXBkYXRlID0ge1xuICAgICAgICAgICAgLi4udGFibGVBdHRycyxcbiAgICAgICAgICAgIGJvcmRlcjogdGFibGVBdHRycy5ib3JkZXIgIT09ICcwJyA/ICcwJyA6ICcxJyxcbiAgICAgICAgICB9O1xuXG4gICAgICAgICAgZWRpdG9yLmNvbW1hbmRzLnVwZGF0ZUF0dHJpYnV0ZXMoJ3RhYmxlJywgdXBkYXRlKTtcbiAgICAgICAgfSxcbiAgICAgICAgaGlkZGVuOiAoc3RhdGUpID0+ICFzdGF0ZS5pc1RhYmxlLFxuICAgICAgICBpc0FjdGl2ZTogKHN0YXRlKSA9PiBzdGF0ZS50YWJsZUhhc0JvcmRlcixcbiAgICAgICAgaXNEaXNhYmxlZDogKHN0YXRlKSA9PiAhc3RhdGUuY2FuVGFibGUsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpY29uOiA8Qm9sZCAvPixcbiAgICAgICAgb25DbGljazogKGVkaXRvcikgPT5cbiAgICAgICAgICBlZGl0b3JcbiAgICAgICAgICAgIC5jaGFpbigpXG4gICAgICAgICAgICAuZm9jdXMoKVxuICAgICAgICAgICAgLnRvZ2dsZUJvbGQoKVxuICAgICAgICAgICAgLnJ1bigpLFxuICAgICAgICBoaWRkZW46IChzdGF0ZSkgPT4gIWFjdGl2ZVBsdWdpbnM/LmluY2x1ZGVzKCdib2xkJykgfHwgc3RhdGUuaXNUYWJsZSxcbiAgICAgICAgaXNBY3RpdmU6IChzdGF0ZSkgPT4gc3RhdGUuaXNCb2xkLFxuICAgICAgICBpc0Rpc2FibGVkOiAoc3RhdGUpID0+ICFzdGF0ZS5jYW5Cb2xkLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWNvbjogPEl0YWxpYyAvPixcbiAgICAgICAgb25DbGljazogKGVkaXRvcikgPT5cbiAgICAgICAgICBlZGl0b3JcbiAgICAgICAgICAgIC5jaGFpbigpXG4gICAgICAgICAgICAuZm9jdXMoKVxuICAgICAgICAgICAgLnRvZ2dsZUl0YWxpYygpXG4gICAgICAgICAgICAucnVuKCksXG4gICAgICAgIGhpZGRlbjogKHN0YXRlKSA9PiAhYWN0aXZlUGx1Z2lucz8uaW5jbHVkZXMoJ2l0YWxpYycpIHx8IHN0YXRlLmlzVGFibGUsXG4gICAgICAgIGlzQWN0aXZlOiAoc3RhdGUpID0+IHN0YXRlLmlzSXRhbGljLFxuICAgICAgICBpc0Rpc2FibGVkOiAoc3RhdGUpID0+ICFzdGF0ZS5jYW5JdGFsaWMsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpY29uOiA8U3RyaWtldGhyb3VnaCAvPixcbiAgICAgICAgb25DbGljazogKGVkaXRvcikgPT5cbiAgICAgICAgICBlZGl0b3JcbiAgICAgICAgICAgIC5jaGFpbigpXG4gICAgICAgICAgICAuZm9jdXMoKVxuICAgICAgICAgICAgLnRvZ2dsZVN0cmlrZSgpXG4gICAgICAgICAgICAucnVuKCksXG4gICAgICAgIGhpZGRlbjogKHN0YXRlKSA9PiAhYWN0aXZlUGx1Z2lucz8uaW5jbHVkZXMoJ3N0cmlrZXRocm91Z2gnKSB8fCBzdGF0ZS5pc1RhYmxlLFxuICAgICAgICBpc0FjdGl2ZTogKHN0YXRlKSA9PiBzdGF0ZS5pc1N0cmlrZSxcbiAgICAgICAgaXNEaXNhYmxlZDogKHN0YXRlKSA9PiAhc3RhdGUuY2FuU3RyaWtlLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWNvbjogPENvZGUgLz4sXG4gICAgICAgIG9uQ2xpY2s6IChlZGl0b3IpID0+XG4gICAgICAgICAgZWRpdG9yXG4gICAgICAgICAgICAuY2hhaW4oKVxuICAgICAgICAgICAgLmZvY3VzKClcbiAgICAgICAgICAgIC50b2dnbGVDb2RlKClcbiAgICAgICAgICAgIC5ydW4oKSxcbiAgICAgICAgaGlkZGVuOiAoc3RhdGUpID0+ICFhY3RpdmVQbHVnaW5zPy5pbmNsdWRlcygnY29kZScpIHx8IHN0YXRlLmlzVGFibGUsXG4gICAgICAgIGlzQWN0aXZlOiAoc3RhdGUpID0+IHN0YXRlLmlzQ29kZSxcbiAgICAgICAgaXNEaXNhYmxlZDogKHN0YXRlKSA9PiAhc3RhdGUuY2FuQ29kZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGljb246IDxVbmRlcmxpbmUgLz4sXG4gICAgICAgIG9uQ2xpY2s6IChlZGl0b3IpID0+XG4gICAgICAgICAgZWRpdG9yXG4gICAgICAgICAgICAuY2hhaW4oKVxuICAgICAgICAgICAgLmZvY3VzKClcbiAgICAgICAgICAgIC50b2dnbGVVbmRlcmxpbmUoKVxuICAgICAgICAgICAgLnJ1bigpLFxuICAgICAgICBoaWRkZW46IChzdGF0ZSkgPT4gIWFjdGl2ZVBsdWdpbnM/LmluY2x1ZGVzKCd1bmRlcmxpbmUnKSB8fCBzdGF0ZS5pc1RhYmxlLFxuICAgICAgICBpc0FjdGl2ZTogKHN0YXRlKSA9PiBzdGF0ZS5pc1VuZGVybGluZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGljb246IDxTdWJzY3JpcHRJY29uIC8+LFxuICAgICAgICBvbkNsaWNrOiAoZWRpdG9yKSA9PlxuICAgICAgICAgIGVkaXRvclxuICAgICAgICAgICAgLmNoYWluKClcbiAgICAgICAgICAgIC5mb2N1cygpXG4gICAgICAgICAgICAudG9nZ2xlU3Vic2NyaXB0KClcbiAgICAgICAgICAgIC5ydW4oKSxcbiAgICAgICAgaGlkZGVuOiAoc3RhdGUpID0+ICFhY3RpdmVQbHVnaW5zPy5pbmNsdWRlcygnc3Vic2NyaXB0JykgfHwgc3RhdGUuaXNUYWJsZSxcbiAgICAgICAgaXNBY3RpdmU6IChzdGF0ZSkgPT4gc3RhdGUuaXNTdWJTY3JpcHQsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpY29uOiA8U3VwZXJzY3JpcHRJY29uIC8+LFxuICAgICAgICBvbkNsaWNrOiAoZWRpdG9yKSA9PlxuICAgICAgICAgIGVkaXRvclxuICAgICAgICAgICAgLmNoYWluKClcbiAgICAgICAgICAgIC5mb2N1cygpXG4gICAgICAgICAgICAudG9nZ2xlU3VwZXJzY3JpcHQoKVxuICAgICAgICAgICAgLnJ1bigpLFxuICAgICAgICBoaWRkZW46IChzdGF0ZSkgPT4gIWFjdGl2ZVBsdWdpbnM/LmluY2x1ZGVzKCdzdXBlcnNjcmlwdCcpIHx8IHN0YXRlLmlzVGFibGUsXG4gICAgICAgIGlzQWN0aXZlOiAoc3RhdGUpID0+IHN0YXRlLmlzU3VwZXJTY3JpcHQsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpY29uOiA8SW1hZ2VJY29uIC8+LFxuICAgICAgICBoaWRkZW46IChzdGF0ZSkgPT4gIWFjdGl2ZVBsdWdpbnM/LmluY2x1ZGVzKCdpbWFnZScpIHx8IHN0YXRlLmlzVGFibGUsXG4gICAgICAgIG9uQ2xpY2s6IChlZGl0b3IpID0+XG4gICAgICAgICAgZWRpdG9yXG4gICAgICAgICAgICAuY2hhaW4oKVxuICAgICAgICAgICAgLmZvY3VzKClcbiAgICAgICAgICAgIC5zZXRJbWFnZVVwbG9hZE5vZGUoKVxuICAgICAgICAgICAgLnJ1bigpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWNvbjogPFRoZWF0ZXJzSWNvbiAvPixcbiAgICAgICAgaGlkZGVuOiAoc3RhdGUpID0+ICFhY3RpdmVQbHVnaW5zPy5pbmNsdWRlcygndmlkZW8nKSB8fCBzdGF0ZS5pc1RhYmxlLFxuICAgICAgICBvbkNsaWNrOiAoZWRpdG9yKSA9PlxuICAgICAgICAgIGVkaXRvclxuICAgICAgICAgICAgLmNoYWluKClcbiAgICAgICAgICAgIC5mb2N1cygpXG4gICAgICAgICAgICAuaW5zZXJ0TWVkaWEoeyB0eXBlOiAndmlkZW8nIH0pXG4gICAgICAgICAgICAucnVuKCksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpY29uOiA8Vm9sdW1lVXBJY29uIC8+LFxuICAgICAgICBoaWRkZW46IChzdGF0ZSkgPT4gIWFjdGl2ZVBsdWdpbnM/LmluY2x1ZGVzKCdhdWRpbycpIHx8IHN0YXRlLmlzVGFibGUsXG4gICAgICAgIG9uQ2xpY2s6IChlZGl0b3IpID0+XG4gICAgICAgICAgZWRpdG9yXG4gICAgICAgICAgICAuY2hhaW4oKVxuICAgICAgICAgICAgLmZvY3VzKClcbiAgICAgICAgICAgIC5pbnNlcnRNZWRpYSh7IHR5cGU6ICdhdWRpbycsIHRhZzogJ2F1ZGlvJyB9KVxuICAgICAgICAgICAgLnJ1bigpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWNvbjogPENTU0ljb24gLz4sXG4gICAgICAgIGhpZGRlbjogKHN0YXRlKSA9PiAhYWN0aXZlUGx1Z2lucz8uaW5jbHVkZXMoJ2NzcycpIHx8IHN0YXRlLmlzVGFibGUsXG4gICAgICAgIG9uQ2xpY2s6IChlZGl0b3IpID0+IGVkaXRvci5jb21tYW5kcy5vcGVuQ1NTQ2xhc3NEaWFsb2coKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGljb246IDxIZWFkaW5nSWNvbiAvPixcbiAgICAgICAgaGlkZGVuOiAoc3RhdGUpID0+ICFhY3RpdmVQbHVnaW5zPy5pbmNsdWRlcygnaDMnKSB8fCBzdGF0ZS5pc1RhYmxlLFxuICAgICAgICBvbkNsaWNrOiAoZWRpdG9yKSA9PlxuICAgICAgICAgIGVkaXRvclxuICAgICAgICAgICAgLmNoYWluKClcbiAgICAgICAgICAgIC5mb2N1cygpXG4gICAgICAgICAgICAudG9nZ2xlSGVhZGluZyh7IGxldmVsOiAzIH0pXG4gICAgICAgICAgICAucnVuKCksXG4gICAgICAgIGlzQWN0aXZlOiAoc3RhdGUpID0+IHN0YXRlLmlzSGVhZGluZzMsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpY29uOiA8RnVuY3Rpb25zIC8+LFxuICAgICAgICBoaWRkZW46ICgpID0+ICFhY3RpdmVQbHVnaW5zPy5pbmNsdWRlcygnbWF0aCcpLFxuICAgICAgICBvbkNsaWNrOiAoZWRpdG9yKSA9PlxuICAgICAgICAgIGVkaXRvclxuICAgICAgICAgICAgLmNoYWluKClcbiAgICAgICAgICAgIC5mb2N1cygpXG4gICAgICAgICAgICAuaW5zZXJ0TWF0aCgnJylcbiAgICAgICAgICAgIC5ydW4oKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGljb246IDxDaGFyYWN0ZXJJY29uIGxldHRlcj1cIsOxXCIgLz4sXG4gICAgICAgIGhpZGRlbjogKHN0YXRlKSA9PiAhYWN0aXZlUGx1Z2lucz8uaW5jbHVkZXMoJ2xhbmd1YWdlQ2hhcmFjdGVycycpIHx8IHN0YXRlLmlzVGFibGUsXG4gICAgICAgIG9uQ2xpY2s6ICgpID0+IHNldFNob3dQaWNrZXIoc3BhbmlzaENvbmZpZyksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpY29uOiA8Q2hhcmFjdGVySWNvbiBsZXR0ZXI9XCLigqxcIiAvPixcbiAgICAgICAgaGlkZGVuOiAoc3RhdGUpID0+IGFjdGl2ZVBsdWdpbnM/LmZpbHRlcigocCkgPT4gcCA9PT0gJ2xhbmd1YWdlQ2hhcmFjdGVycycpLmxlbmd0aCAhPT0gMiB8fCBzdGF0ZS5pc1RhYmxlLFxuICAgICAgICBvbkNsaWNrOiAoKSA9PiBzZXRTaG93UGlja2VyKHNwZWNpYWxDb25maWcpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWNvbjogPFRleHRBbGlnbkljb24gZWRpdG9yPXtlZGl0b3J9IC8+LFxuICAgICAgICBoaWRkZW46IChzdGF0ZSkgPT4gIWFjdGl2ZVBsdWdpbnM/LmluY2x1ZGVzKCd0ZXh0LWFsaWduJykgfHwgc3RhdGUuaXNUYWJsZSxcbiAgICAgICAgb25DbGljazogKCkgPT4ge30sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpY29uOiA8QnVsbGV0ZWRMaXN0SWNvbiAvPixcbiAgICAgICAgaGlkZGVuOiAoc3RhdGUpID0+ICFhY3RpdmVQbHVnaW5zPy5pbmNsdWRlcygnYnVsbGV0ZWQtbGlzdCcpIHx8IHN0YXRlLmlzVGFibGUsXG4gICAgICAgIG9uQ2xpY2s6IChlZGl0b3IpID0+XG4gICAgICAgICAgZWRpdG9yXG4gICAgICAgICAgICAuY2hhaW4oKVxuICAgICAgICAgICAgLmZvY3VzKClcbiAgICAgICAgICAgIC50b2dnbGVCdWxsZXRMaXN0KClcbiAgICAgICAgICAgIC5ydW4oKSxcbiAgICAgICAgaXNBY3RpdmU6IChzdGF0ZSkgPT4gc3RhdGUuaXNCdWxsZXRMaXN0LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWNvbjogPE51bWJlcmVkTGlzdEljb24gLz4sXG4gICAgICAgIGhpZGRlbjogKHN0YXRlKSA9PiAhYWN0aXZlUGx1Z2lucz8uaW5jbHVkZXMoJ251bWJlcmVkLWxpc3QnKSB8fCBzdGF0ZS5pc1RhYmxlLFxuICAgICAgICBvbkNsaWNrOiAoZWRpdG9yKSA9PlxuICAgICAgICAgIGVkaXRvclxuICAgICAgICAgICAgLmNoYWluKClcbiAgICAgICAgICAgIC5mb2N1cygpXG4gICAgICAgICAgICAudG9nZ2xlT3JkZXJlZExpc3QoKVxuICAgICAgICAgICAgLnJ1bigpLFxuICAgICAgICBpc0FjdGl2ZTogKHN0YXRlKSA9PiBzdGF0ZS5pc09yZGVyZWRMaXN0LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWNvbjogPFVuZG8gLz4sXG4gICAgICAgIGhpZGRlbjogKHN0YXRlKSA9PiAhYWN0aXZlUGx1Z2lucz8uaW5jbHVkZXMoJ3VuZG8nKSB8fCBzdGF0ZS5pc1RhYmxlLFxuICAgICAgICBvbkNsaWNrOiAoZWRpdG9yKSA9PlxuICAgICAgICAgIGVkaXRvclxuICAgICAgICAgICAgLmNoYWluKClcbiAgICAgICAgICAgIC5mb2N1cygpXG4gICAgICAgICAgICAudW5kbygpXG4gICAgICAgICAgICAucnVuKCksXG4gICAgICAgIGlzRGlzYWJsZWQ6IChzdGF0ZSkgPT4gIXN0YXRlLmNhblVuZG8sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpY29uOiA8UmVkbyAvPixcbiAgICAgICAgaGlkZGVuOiAoc3RhdGUpID0+ICFhY3RpdmVQbHVnaW5zPy5pbmNsdWRlcygncmVkbycpIHx8IHN0YXRlLmlzVGFibGUsXG4gICAgICAgIG9uQ2xpY2s6IChlZGl0b3IpID0+XG4gICAgICAgICAgZWRpdG9yXG4gICAgICAgICAgICAuY2hhaW4oKVxuICAgICAgICAgICAgLmZvY3VzKClcbiAgICAgICAgICAgIC5yZWRvKClcbiAgICAgICAgICAgIC5ydW4oKSxcbiAgICAgICAgaXNEaXNhYmxlZDogKHN0YXRlKSA9PiAhc3RhdGUuY2FuUmVkbyxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBbYWN0aXZlUGx1Z2lucywgZWRpdG9yXSxcbiAgKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXtuYW1lc30gc3R5bGU9e3sgLi4uY3VzdG9tU3R5bGVzIH19IG9uTW91c2VEb3duPXtoYW5kbGVNb3VzZURvd259PlxuICAgICAgeyFlZGl0b3JTdGF0ZS5oaWRlRGVmYXVsdFRvb2xiYXIgJiYgKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3Nlcy5kZWZhdWx0VG9vbGJhcn0gdGFiSW5kZXg9XCIxXCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzZXMuYnV0dG9uc0NvbnRhaW5lcn0+XG4gICAgICAgICAgICB7dG9vbGJhckJ1dHRvbnNcbiAgICAgICAgICAgICAgLmZpbHRlcigoYnRuKSA9PiAhYnRuLmhpZGRlbj8uKGVkaXRvclN0YXRlKSlcbiAgICAgICAgICAgICAgLm1hcCgoYnRuLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGRpc2FibGVkID0gYnRuLmlzRGlzYWJsZWQ/LihlZGl0b3JTdGF0ZSk7XG4gICAgICAgICAgICAgICAgY29uc3QgYWN0aXZlID0gYnRuLmlzQWN0aXZlPy4oZWRpdG9yU3RhdGUpO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAga2V5PXtpbmRleH1cbiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgICBidG4ub25DbGljayhlZGl0b3IpO1xuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZXMoY2xhc3Nlcy5idXR0b24sIHsgW2NsYXNzZXMuYWN0aXZlXTogYWN0aXZlIH0pfVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7YnRuLmljb259XG4gICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB7YWN0aXZlUGx1Z2lucz8uaW5jbHVkZXMoJ3Jlc3BvbnNlQXJlYScpICYmIChcbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgIGVkaXRvclxuICAgICAgICAgICAgICAgICAgLmNoYWluKClcbiAgICAgICAgICAgICAgICAgIC5mb2N1cygpXG4gICAgICAgICAgICAgICAgICAuaW5zZXJ0UmVzcG9uc2VBcmVhKHJlc3BvbnNlQXJlYVByb3BzLnR5cGUpXG4gICAgICAgICAgICAgICAgICAucnVuKCk7XG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgIGNsYXNzTmFtZT17Y2xhc3Nlcy5idXR0b259XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxUb29sYmFySWNvbiAvPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgKX1cblxuICAgICAgICAgIHt0b29sYmFyT3B0cy5zaG93RG9uZSAmJiAoXG4gICAgICAgICAgICA8RG9uZUJ1dHRvblxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U/LihlZGl0b3IuZ2V0SFRNTCgpKTtcbiAgICAgICAgICAgICAgICBlZGl0b3IuY29tbWFuZHMuYmx1cigpO1xuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICl9XG4gICAgICB7c2hvd1BpY2tlciAmJiAoXG4gICAgICAgIDxDaGFyYWN0ZXJQaWNrZXJcbiAgICAgICAgICBlZGl0b3I9e2VkaXRvcn1cbiAgICAgICAgICBvcHRzPXt7XG4gICAgICAgICAgICAuLi5zaG93UGlja2VyLFxuICAgICAgICAgICAgcmVuZGVyUG9wT3ZlcjogKGV2LCBjaCkgPT4gY29uc29sZS5sb2coJ1Nob3cgcG9wb3ZlcicsIGNoKSxcbiAgICAgICAgICAgIGNsb3NlUG9wT3ZlcjogKCkgPT4gY29uc29sZS5sb2coJ0Nsb3NlIHBvcG92ZXInKSxcbiAgICAgICAgICB9fVxuICAgICAgICAgIG9uQ2xvc2U9eygpID0+IHNldFNob3dQaWNrZXIoZmFsc2UpfVxuICAgICAgICAvPlxuICAgICAgKX1cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuY29uc3Qgc3R5bGUgPSAodGhlbWUpID0+ICh7XG4gIGRlZmF1bHRUb29sYmFyOiB7XG4gICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgIHdpZHRoOiAnMTAwJScsXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcbiAgfSxcbiAgYnV0dG9uc0NvbnRhaW5lcjoge1xuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICB3aWR0aDogJzEwMCUnLFxuICB9LFxuICBidXR0b246IHtcbiAgICBjb2xvcjogJ2dyZXknLFxuICAgIGRpc3BsYXk6ICdpbmxpbmUtZmxleCcsXG4gICAgcGFkZGluZzogJzJweCcsXG4gICAgYmFja2dyb3VuZDogJ25vbmUnLFxuICAgIGJvcmRlcjogJ25vbmUnLFxuICAgIGN1cnNvcjogJ3BvaW50ZXInLFxuICAgICcmOmhvdmVyJzoge1xuICAgICAgY29sb3I6ICdibGFjaycsXG4gICAgfSxcbiAgICAnJjpmb2N1cyc6IHtcbiAgICAgIG91dGxpbmU6IGAycHggc29saWQgJHt0aGVtZS5wYWxldHRlLmdyZXlbNzAwXX1gLFxuICAgIH0sXG4gIH0sXG4gIGFjdGl2ZToge1xuICAgIGNvbG9yOiAnYmxhY2snLFxuICB9LFxuICBkaXNhYmxlZDoge1xuICAgIG9wYWNpdHk6IDAuNyxcbiAgICBjdXJzb3I6ICdub3QtYWxsb3dlZCcsXG4gICAgJyYgOmhvdmVyJzoge1xuICAgICAgY29sb3I6ICdncmV5JyxcbiAgICB9LFxuICB9LFxuICBpc0FjdGl2ZToge1xuICAgIGJhY2tncm91bmQ6ICd2YXIoLS1wdXJwbGUpJyxcbiAgICBjb2xvcjogJ3ZhcigtLXdoaXRlKScsXG4gIH0sXG4gIHRvb2xiYXI6IHtcbiAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICB6SW5kZXg6IDIwLFxuICAgIGN1cnNvcjogJ3BvaW50ZXInLFxuICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXG4gICAgYmFja2dyb3VuZDogJ3ZhcigtLWVkaXRhYmxlLWh0bWwtdG9vbGJhci1iZywgI2VmZWZlZiknLFxuICAgIG1pbldpZHRoOiAnMjgwcHgnLFxuICAgIG1hcmdpbjogJzVweCAwIDAgMCcsXG4gICAgcGFkZGluZzogJzJweCcsXG4gICAgYm94U2hhZG93OlxuICAgICAgJzBweCAxcHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMiksIDBweCAycHggMnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwcHggM3B4IDFweCAtMnB4IHJnYmEoMCwgMCwgMCwgMC4xMiknLFxuICAgIGJveFNpemluZzogJ2JvcmRlci1ib3gnLFxuICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICBvcGFjaXR5OiAwLFxuICAgIHBvaW50ZXJFdmVudHM6ICdub25lJyxcbiAgfSxcbiAgdG9vbGJhcldpdGhOb0RvbmU6IHtcbiAgICBtaW5XaWR0aDogJzI2NXB4JyxcbiAgfSxcbiAgdG9vbGJhclRvcDoge1xuICAgIHRvcDogJy00NXB4JyxcbiAgfSxcbiAgdG9vbGJhclJpZ2h0OiB7XG4gICAgcmlnaHQ6IDAsXG4gIH0sXG4gIGZ1bGxXaWR0aDoge1xuICAgIHdpZHRoOiAnMTAwJScsXG4gIH0sXG4gIGhpZGRlbjoge1xuICAgIHZpc2liaWxpdHk6ICdoaWRkZW4nLFxuICB9LFxuICBhdXRvV2lkdGg6IHtcbiAgICB3aWR0aDogJ2F1dG8nLFxuICB9LFxuICBmb2N1c2VkOiB7XG4gICAgb3BhY2l0eTogMSxcbiAgICBwb2ludGVyRXZlbnRzOiAnYXV0bycsXG4gIH0sXG4gIGljb25Sb290OiB7XG4gICAgd2lkdGg6ICcyOHB4JyxcbiAgICBoZWlnaHQ6ICcyOHB4JyxcbiAgICBwYWRkaW5nOiAnNHB4JyxcbiAgICB2ZXJ0aWNhbEFsaWduOiAndG9wJyxcbiAgfSxcbiAgbGFiZWw6IHtcbiAgICBjb2xvcjogJ3ZhcigtLWVkaXRhYmxlLWh0bWwtdG9vbGJhci1jaGVjaywgIzAwYmIwMCknLFxuICB9LFxuICBzaGFyZWQ6IHtcbiAgICBkaXNwbGF5OiAnZmxleCcsXG4gIH0sXG59KTtcblxuY29uc3QgU3R5bGVkTWVudUJhciA9IHdpdGhTdHlsZXMoc3R5bGUsIHsgaW5kZXg6IDEwMDAgfSkoTWVudUJhcik7XG5cbmV4cG9ydCBkZWZhdWx0IFN0eWxlZE1lbnVCYXI7XG4iXX0=
|
|
660
|
+
});
|
|
661
|
+
var _default = exports["default"] = StyledMenuBar;
|
|
662
|
+
//# sourceMappingURL=MenuBar.js.map
|