@pie-lib/editable-html-tip-tap 1.0.5 → 1.0.6

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.
Files changed (112) hide show
  1. package/lib/constants.js +2 -5
  2. package/package.json +1 -1
  3. package/src/constants.js +0 -2
  4. package/lib/__tests__/editor.test.js +0 -470
  5. package/lib/__tests__/serialization.test.js +0 -246
  6. package/lib/block-tags.js +0 -25
  7. package/lib/components/CharacterPicker.js.map +0 -1
  8. package/lib/components/EditableHtml.js.map +0 -1
  9. package/lib/components/MenuBar.js.map +0 -1
  10. package/lib/components/TiptapContainer.js.map +0 -1
  11. package/lib/components/buttons/done-button.js +0 -53
  12. package/lib/components/characters/characterUtils.js.map +0 -1
  13. package/lib/components/characters/custom-popper.js.map +0 -1
  14. package/lib/components/common/done-button.js.map +0 -1
  15. package/lib/components/common/toolbar-buttons.js.map +0 -1
  16. package/lib/components/icons/CssIcon.js.map +0 -1
  17. package/lib/components/icons/RespArea.js.map +0 -1
  18. package/lib/components/icons/TableIcons.js.map +0 -1
  19. package/lib/components/icons/TextAlign.js.map +0 -1
  20. package/lib/components/icons/index.js +0 -194
  21. package/lib/components/image/AltDialog.js.map +0 -1
  22. package/lib/components/image/ImageToolbar.js.map +0 -1
  23. package/lib/components/image/InsertImageHandler.js.map +0 -1
  24. package/lib/components/image/alt-dialog.js +0 -2
  25. package/lib/components/media/MediaDialog.js.map +0 -1
  26. package/lib/components/media/MediaToolbar.js.map +0 -1
  27. package/lib/components/media/MediaWrapper.js.map +0 -1
  28. package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js.map +0 -1
  29. package/lib/components/respArea/DragInTheBlank/choice.js.map +0 -1
  30. package/lib/components/respArea/DragInTheBlank.js +0 -94
  31. package/lib/components/respArea/ExplicitConstructedResponse.js.map +0 -1
  32. package/lib/components/respArea/InlineDropdown.js.map +0 -1
  33. package/lib/components/respArea/ToolbarIcon.js.map +0 -1
  34. package/lib/components/respArea/choice.js +0 -2
  35. package/lib/constants.js.map +0 -1
  36. package/lib/editor.js +0 -1356
  37. package/lib/extensions/MediaView.js +0 -112
  38. package/lib/extensions/characters.js +0 -65
  39. package/lib/extensions/component.js.map +0 -1
  40. package/lib/extensions/css.js.map +0 -1
  41. package/lib/extensions/custom-toolbar-wrapper.js.map +0 -1
  42. package/lib/extensions/extended-table.js.map +0 -1
  43. package/lib/extensions/image.js.map +0 -1
  44. package/lib/extensions/index.js.map +0 -1
  45. package/lib/extensions/math.js.map +0 -1
  46. package/lib/extensions/media.js.map +0 -1
  47. package/lib/extensions/responseArea.js.map +0 -1
  48. package/lib/index.js.map +0 -1
  49. package/lib/old-index.js +0 -269
  50. package/lib/parse-html.js +0 -16
  51. package/lib/plugins/characters/custom-popper.js +0 -73
  52. package/lib/plugins/characters/index.js +0 -305
  53. package/lib/plugins/characters/utils.js +0 -381
  54. package/lib/plugins/css/icons/index.js +0 -37
  55. package/lib/plugins/css/index.js +0 -390
  56. package/lib/plugins/customPlugin/index.js +0 -114
  57. package/lib/plugins/html/icons/index.js +0 -38
  58. package/lib/plugins/html/index.js +0 -81
  59. package/lib/plugins/image/__tests__/component.test.js +0 -51
  60. package/lib/plugins/image/__tests__/image-toolbar-logic.test.js +0 -56
  61. package/lib/plugins/image/__tests__/image-toolbar.test.js +0 -26
  62. package/lib/plugins/image/__tests__/index.test.js +0 -98
  63. package/lib/plugins/image/__tests__/insert-image-handler.test.js +0 -125
  64. package/lib/plugins/image/__tests__/mock-change.js +0 -25
  65. package/lib/plugins/image/alt-dialog.js +0 -129
  66. package/lib/plugins/image/component.js +0 -419
  67. package/lib/plugins/image/image-toolbar.js +0 -177
  68. package/lib/plugins/image/index.js +0 -263
  69. package/lib/plugins/image/insert-image-handler.js +0 -117
  70. package/lib/plugins/index.js +0 -341
  71. package/lib/plugins/list/__tests__/index.test.js +0 -79
  72. package/lib/plugins/list/index.js +0 -334
  73. package/lib/plugins/math/__tests__/index.test.js +0 -300
  74. package/lib/plugins/math/index.js +0 -454
  75. package/lib/plugins/media/__tests__/index.test.js +0 -71
  76. package/lib/plugins/media/index.js +0 -387
  77. package/lib/plugins/media/media-dialog.js +0 -709
  78. package/lib/plugins/media/media-toolbar.js +0 -101
  79. package/lib/plugins/media/media-wrapper.js +0 -93
  80. package/lib/plugins/rendering/index.js +0 -46
  81. package/lib/plugins/respArea/drag-in-the-blank/choice.js +0 -289
  82. package/lib/plugins/respArea/drag-in-the-blank/index.js +0 -94
  83. package/lib/plugins/respArea/explicit-constructed-response/index.js +0 -120
  84. package/lib/plugins/respArea/icons/index.js +0 -95
  85. package/lib/plugins/respArea/index.js +0 -341
  86. package/lib/plugins/respArea/inline-dropdown/index.js +0 -126
  87. package/lib/plugins/respArea/math-templated/index.js +0 -130
  88. package/lib/plugins/respArea/utils.js +0 -125
  89. package/lib/plugins/table/CustomTablePlugin.js +0 -133
  90. package/lib/plugins/table/__tests__/index.test.js +0 -442
  91. package/lib/plugins/table/__tests__/table-toolbar.test.js +0 -54
  92. package/lib/plugins/table/icons/index.js +0 -69
  93. package/lib/plugins/table/index.js +0 -483
  94. package/lib/plugins/table/table-toolbar.js +0 -187
  95. package/lib/plugins/textAlign/icons/index.js +0 -194
  96. package/lib/plugins/textAlign/index.js +0 -34
  97. package/lib/plugins/toolbar/__tests__/default-toolbar.test.js +0 -128
  98. package/lib/plugins/toolbar/__tests__/editor-and-toolbar.test.js +0 -51
  99. package/lib/plugins/toolbar/__tests__/toolbar-buttons.test.js +0 -54
  100. package/lib/plugins/toolbar/__tests__/toolbar.test.js +0 -120
  101. package/lib/plugins/toolbar/default-toolbar.js +0 -229
  102. package/lib/plugins/toolbar/done-button.js +0 -53
  103. package/lib/plugins/toolbar/editor-and-toolbar.js +0 -286
  104. package/lib/plugins/toolbar/index.js +0 -34
  105. package/lib/plugins/toolbar/toolbar-buttons.js +0 -194
  106. package/lib/plugins/toolbar/toolbar.js +0 -376
  107. package/lib/plugins/utils.js +0 -62
  108. package/lib/serialization.js +0 -677
  109. package/lib/shared/alert-dialog.js +0 -75
  110. package/lib/styles/editorContainerStyles.js.map +0 -1
  111. package/lib/theme.js.map +0 -1
  112. package/lib/utils/size.js.map +0 -1
@@ -1,286 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = exports.EditorAndToolbar = void 0;
9
-
10
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
-
16
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
17
-
18
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
19
-
20
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
21
-
22
- var _react = _interopRequireDefault(require("react"));
23
-
24
- var _toolbar = _interopRequireDefault(require("./toolbar"));
25
-
26
- var _classnames = _interopRequireDefault(require("classnames"));
27
-
28
- var _debug = _interopRequireDefault(require("debug"));
29
-
30
- var _theme = require("../../theme");
31
-
32
- var _styles = require("@material-ui/core/styles");
33
-
34
- var _propTypes = _interopRequireDefault(require("prop-types"));
35
-
36
- var _slatePropTypes = _interopRequireDefault(require("slate-prop-types"));
37
-
38
- var _renderUi = require("@pie-lib/render-ui");
39
-
40
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
41
-
42
- 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; } }
43
-
44
- var log = (0, _debug["default"])('@pie-lib:editable-html:plugins:toolbar:editor-and-toolbar');
45
-
46
- var EditorAndToolbar = /*#__PURE__*/function (_React$Component) {
47
- (0, _inherits2["default"])(EditorAndToolbar, _React$Component);
48
-
49
- var _super = _createSuper(EditorAndToolbar);
50
-
51
- function EditorAndToolbar() {
52
- (0, _classCallCheck2["default"])(this, EditorAndToolbar);
53
- return _super.apply(this, arguments);
54
- }
55
-
56
- (0, _createClass2["default"])(EditorAndToolbar, [{
57
- key: "render",
58
- value: function render() {
59
- var _classNames,
60
- _this = this,
61
- _classNames2;
62
-
63
- var _this$props = this.props,
64
- classes = _this$props.classes,
65
- children = _this$props.children,
66
- value = _this$props.value,
67
- plugins = _this$props.plugins,
68
- onChange = _this$props.onChange,
69
- getFocusedValue = _this$props.getFocusedValue,
70
- onDone = _this$props.onDone,
71
- focusedNode = _this$props.focusedNode,
72
- autoWidth = _this$props.autoWidth,
73
- readOnly = _this$props.readOnly,
74
- disableScrollbar = _this$props.disableScrollbar,
75
- disableUnderline = _this$props.disableUnderline,
76
- pluginProps = _this$props.pluginProps,
77
- toolbarOpts = _this$props.toolbarOpts,
78
- onDataChange = _this$props.onDataChange,
79
- toolbarRef = _this$props.toolbarRef,
80
- doneButtonRef = _this$props.doneButtonRef,
81
- focusToolbar = _this$props.focusToolbar,
82
- onToolbarFocus = _this$props.onToolbarFocus,
83
- onToolbarBlur = _this$props.onToolbarBlur;
84
- var inFocus = value.isFocused || focusedNode !== null && focusedNode !== undefined || focusToolbar;
85
- var holderNames = (0, _classnames["default"])(classes.editorHolder, (_classNames = {}, (0, _defineProperty2["default"])(_classNames, classes.editorInFocus, inFocus), (0, _defineProperty2["default"])(_classNames, classes.readOnly, readOnly), (0, _defineProperty2["default"])(_classNames, classes.disabledUnderline, disableUnderline), (0, _defineProperty2["default"])(_classNames, classes.disabledScrollbar, disableScrollbar), _classNames));
86
- var clonedChildren = children;
87
-
88
- if (typeof children !== 'string') {
89
- clonedChildren = /*#__PURE__*/_react["default"].cloneElement(children, {
90
- ref: function ref(el) {
91
- return _this.editorRef = el;
92
- }
93
- });
94
- }
95
-
96
- log('[render] inFocus: ', inFocus, 'value.isFocused:', value.isFocused, 'focused node: ', focusedNode);
97
- return /*#__PURE__*/_react["default"].createElement("div", {
98
- className: (0, _classnames["default"])((_classNames2 = {}, (0, _defineProperty2["default"])(_classNames2, classes.noBorder, toolbarOpts && toolbarOpts.noBorder), (0, _defineProperty2["default"])(_classNames2, classes.error, toolbarOpts && toolbarOpts.error), _classNames2), classes.root)
99
- }, /*#__PURE__*/_react["default"].createElement("div", {
100
- className: holderNames
101
- }, /*#__PURE__*/_react["default"].createElement("div", {
102
- className: (0, _classnames["default"])((0, _defineProperty2["default"])({}, classes.noPadding, toolbarOpts && toolbarOpts.noPadding), classes.children)
103
- }, clonedChildren)), /*#__PURE__*/_react["default"].createElement(_toolbar["default"], {
104
- autoWidth: autoWidth,
105
- plugins: plugins,
106
- focusedNode: focusedNode,
107
- value: value,
108
- isFocused: inFocus,
109
- onBlur: onToolbarBlur,
110
- onFocus: onToolbarFocus,
111
- onChange: onChange,
112
- getFocusedValue: getFocusedValue,
113
- onDone: onDone,
114
- onDataChange: onDataChange,
115
- toolbarRef: toolbarRef,
116
- doneButtonRef: doneButtonRef,
117
- pluginProps: pluginProps,
118
- toolbarOpts: toolbarOpts
119
- }));
120
- }
121
- }]);
122
- return EditorAndToolbar;
123
- }(_react["default"].Component);
124
-
125
- exports.EditorAndToolbar = EditorAndToolbar;
126
- (0, _defineProperty2["default"])(EditorAndToolbar, "propTypes", {
127
- children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]).isRequired,
128
- value: _slatePropTypes["default"].value.isRequired,
129
- plugins: _propTypes["default"].array.isRequired,
130
- onChange: _propTypes["default"].func.isRequired,
131
- getFocusedValue: _propTypes["default"].func.isRequired,
132
- onDone: _propTypes["default"].func.isRequired,
133
- onDataChange: _propTypes["default"].func,
134
- toolbarRef: _propTypes["default"].func,
135
- focusedNode: _slatePropTypes["default"].node,
136
- readOnly: _propTypes["default"].bool,
137
- disableScrollbar: _propTypes["default"].bool,
138
- disableUnderline: _propTypes["default"].bool,
139
- autoWidth: _propTypes["default"].bool,
140
- classes: _propTypes["default"].object.isRequired,
141
- pluginProps: _propTypes["default"].object,
142
- toolbarOpts: _propTypes["default"].shape({
143
- position: _propTypes["default"].oneOf(['bottom', 'top']),
144
- alwaysVisible: _propTypes["default"].bool,
145
- error: _propTypes["default"].string,
146
- noBorder: _propTypes["default"].any,
147
- noPadding: _propTypes["default"].any
148
- }),
149
- focusToolbar: _propTypes["default"].bool.isRequired,
150
- onToolbarFocus: _propTypes["default"].func.isRequired,
151
- onToolbarBlur: _propTypes["default"].func.isRequired,
152
- doneButtonRef: _propTypes["default"].func
153
- });
154
-
155
- var style = function style(theme) {
156
- return {
157
- root: {
158
- position: 'relative',
159
- padding: '0px',
160
- border: '1px solid #ccc',
161
- borderRadius: '4px',
162
- cursor: 'text',
163
- '& [data-slate-editor="true"]': {
164
- wordBreak: 'break-word',
165
- overflow: 'visible',
166
- maxHeight: '500px',
167
- // needed in order to be able to put the focus before a void element when it is the first one in the editor
168
- padding: '5px'
169
- }
170
- },
171
- children: {
172
- padding: '10px 16px'
173
- },
174
- editorHolder: {
175
- position: 'relative',
176
- padding: '0px',
177
- overflowY: 'auto',
178
- color: _renderUi.color.text(),
179
- backgroundColor: _renderUi.color.background(),
180
- '&::before': {
181
- left: '0',
182
- right: '0',
183
- bottom: '0',
184
- height: '1px',
185
- content: '""',
186
- position: 'absolute',
187
- transition: 'background-color 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms',
188
- pointerEvents: 'none',
189
- backgroundColor: 'rgba(0, 0, 0, 0.42)'
190
- },
191
- '&::after': {
192
- left: '0',
193
- right: '0',
194
- bottom: '0',
195
- height: '1px',
196
- content: '""',
197
- position: 'absolute',
198
- transform: 'scaleX(0)',
199
- transition: 'transform 200ms cubic-bezier(0.0, 0.0, 0.2, 1) 0ms, background-color 200ms linear',
200
- backgroundColor: 'rgba(0, 0, 0, 0.42)'
201
- },
202
- '&:focus': {
203
- '&::after': {
204
- transform: 'scaleX(1)',
205
- backgroundColor: _theme.primary,
206
- height: '2px'
207
- }
208
- },
209
- '&:hover': {
210
- '&::after': {
211
- transform: 'scaleX(1)',
212
- backgroundColor: theme.palette.common.black,
213
- height: '2px'
214
- }
215
- }
216
- },
217
- disabledUnderline: {
218
- '&::before': {
219
- display: 'none'
220
- },
221
- '&::after': {
222
- display: 'none'
223
- }
224
- },
225
- disabledScrollbar: {
226
- '&::-webkit-scrollbar': {
227
- display: 'none'
228
- },
229
- scrollbarWidth: 'none',
230
- '-ms-overflow-style': 'none'
231
- },
232
- readOnly: {
233
- '&::before': {
234
- background: 'transparent',
235
- backgroundSize: '5px 1px',
236
- backgroundImage: 'linear-gradient(to right, rgba(0, 0, 0, 0.42) 33%, transparent 0%)',
237
- backgroundRepeat: 'repeat-x',
238
- backgroundPosition: 'left top'
239
- },
240
- '&::after': {
241
- left: '0',
242
- right: '0',
243
- bottom: '0',
244
- height: '1px',
245
- content: '""',
246
- position: 'absolute',
247
- transform: 'scaleX(0)',
248
- transition: 'transform 200ms cubic-bezier(0.0, 0.0, 0.2, 1) 0ms, background-color 0ms linear',
249
- backgroundColor: 'rgba(0, 0, 0, 0)'
250
- },
251
- '&:hover': {
252
- '&::after': {
253
- transform: 'scaleX(0)',
254
- backgroundColor: theme.palette.common.black,
255
- height: '2px'
256
- }
257
- }
258
- },
259
- editorInFocus: {
260
- '&::after': {
261
- transform: 'scaleX(1)',
262
- backgroundColor: _theme.primary,
263
- height: '2px'
264
- },
265
- '&:hover': {
266
- '&::after': {
267
- backgroundColor: _theme.primary
268
- }
269
- }
270
- },
271
- error: {
272
- border: "2px solid ".concat(theme.palette.error.main, " !important")
273
- },
274
- noBorder: {
275
- border: 'none'
276
- },
277
- noPadding: {
278
- padding: 0
279
- }
280
- };
281
- };
282
-
283
- var _default = (0, _styles.withStyles)(style)(EditorAndToolbar);
284
-
285
- exports["default"] = _default;
286
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wbHVnaW5zL3Rvb2xiYXIvZWRpdG9yLWFuZC10b29sYmFyLmpzeCJdLCJuYW1lcyI6WyJsb2ciLCJFZGl0b3JBbmRUb29sYmFyIiwicHJvcHMiLCJjbGFzc2VzIiwiY2hpbGRyZW4iLCJ2YWx1ZSIsInBsdWdpbnMiLCJvbkNoYW5nZSIsImdldEZvY3VzZWRWYWx1ZSIsIm9uRG9uZSIsImZvY3VzZWROb2RlIiwiYXV0b1dpZHRoIiwicmVhZE9ubHkiLCJkaXNhYmxlU2Nyb2xsYmFyIiwiZGlzYWJsZVVuZGVybGluZSIsInBsdWdpblByb3BzIiwidG9vbGJhck9wdHMiLCJvbkRhdGFDaGFuZ2UiLCJ0b29sYmFyUmVmIiwiZG9uZUJ1dHRvblJlZiIsImZvY3VzVG9vbGJhciIsIm9uVG9vbGJhckZvY3VzIiwib25Ub29sYmFyQmx1ciIsImluRm9jdXMiLCJpc0ZvY3VzZWQiLCJ1bmRlZmluZWQiLCJob2xkZXJOYW1lcyIsImVkaXRvckhvbGRlciIsImVkaXRvckluRm9jdXMiLCJkaXNhYmxlZFVuZGVybGluZSIsImRpc2FibGVkU2Nyb2xsYmFyIiwiY2xvbmVkQ2hpbGRyZW4iLCJSZWFjdCIsImNsb25lRWxlbWVudCIsInJlZiIsImVsIiwiZWRpdG9yUmVmIiwibm9Cb3JkZXIiLCJlcnJvciIsInJvb3QiLCJub1BhZGRpbmciLCJDb21wb25lbnQiLCJQcm9wVHlwZXMiLCJvbmVPZlR5cGUiLCJhcnJheU9mIiwibm9kZSIsImlzUmVxdWlyZWQiLCJTbGF0ZVByb3BUeXBlcyIsImFycmF5IiwiZnVuYyIsImJvb2wiLCJvYmplY3QiLCJzaGFwZSIsInBvc2l0aW9uIiwib25lT2YiLCJhbHdheXNWaXNpYmxlIiwic3RyaW5nIiwiYW55Iiwic3R5bGUiLCJ0aGVtZSIsInBhZGRpbmciLCJib3JkZXIiLCJib3JkZXJSYWRpdXMiLCJjdXJzb3IiLCJ3b3JkQnJlYWsiLCJvdmVyZmxvdyIsIm1heEhlaWdodCIsIm92ZXJmbG93WSIsImNvbG9yIiwidGV4dCIsImJhY2tncm91bmRDb2xvciIsImJhY2tncm91bmQiLCJsZWZ0IiwicmlnaHQiLCJib3R0b20iLCJoZWlnaHQiLCJjb250ZW50IiwidHJhbnNpdGlvbiIsInBvaW50ZXJFdmVudHMiLCJ0cmFuc2Zvcm0iLCJwcmltYXJ5IiwicGFsZXR0ZSIsImNvbW1vbiIsImJsYWNrIiwiZGlzcGxheSIsInNjcm9sbGJhcldpZHRoIiwiYmFja2dyb3VuZFNpemUiLCJiYWNrZ3JvdW5kSW1hZ2UiLCJiYWNrZ3JvdW5kUmVwZWF0IiwiYmFja2dyb3VuZFBvc2l0aW9uIiwibWFpbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7OztBQUVBLElBQU1BLEdBQUcsR0FBRyx1QkFBTSwyREFBTixDQUFaOztJQUVhQyxnQjs7Ozs7Ozs7Ozs7O1dBOEJYLGtCQUFTO0FBQUE7QUFBQTtBQUFBOztBQUNQLHdCQXFCSSxLQUFLQyxLQXJCVDtBQUFBLFVBQ0VDLE9BREYsZUFDRUEsT0FERjtBQUFBLFVBRUVDLFFBRkYsZUFFRUEsUUFGRjtBQUFBLFVBR0VDLEtBSEYsZUFHRUEsS0FIRjtBQUFBLFVBSUVDLE9BSkYsZUFJRUEsT0FKRjtBQUFBLFVBS0VDLFFBTEYsZUFLRUEsUUFMRjtBQUFBLFVBTUVDLGVBTkYsZUFNRUEsZUFORjtBQUFBLFVBT0VDLE1BUEYsZUFPRUEsTUFQRjtBQUFBLFVBUUVDLFdBUkYsZUFRRUEsV0FSRjtBQUFBLFVBU0VDLFNBVEYsZUFTRUEsU0FURjtBQUFBLFVBVUVDLFFBVkYsZUFVRUEsUUFWRjtBQUFBLFVBV0VDLGdCQVhGLGVBV0VBLGdCQVhGO0FBQUEsVUFZRUMsZ0JBWkYsZUFZRUEsZ0JBWkY7QUFBQSxVQWFFQyxXQWJGLGVBYUVBLFdBYkY7QUFBQSxVQWNFQyxXQWRGLGVBY0VBLFdBZEY7QUFBQSxVQWVFQyxZQWZGLGVBZUVBLFlBZkY7QUFBQSxVQWdCRUMsVUFoQkYsZUFn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QU0sRUFBRTtBQURBLEtBdEhjO0FBeUh4QnJCLElBQUFBLFNBQVMsRUFBRTtBQUNUb0IsTUFBQUEsT0FBTyxFQUFFO0FBREE7QUF6SGEsR0FBWjtBQUFBLENBQWQ7O2VBOEhlLHdCQUFXRixLQUFYLEVBQWtCekQsZ0JBQWxCLEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFRvb2xiYXIgZnJvbSAnLi90b29sYmFyJztcbmltcG9ydCBjbGFzc05hbWVzIGZyb20gJ2NsYXNzbmFtZXMnO1xuaW1wb3J0IGRlYnVnIGZyb20gJ2RlYnVnJztcbmltcG9ydCB7IHByaW1hcnkgfSBmcm9tICcuLi8uLi90aGVtZSc7XG5pbXBvcnQgeyB3aXRoU3R5bGVzIH0gZnJvbSAnQG1hdGVyaWFsLXVpL2NvcmUvc3R5bGVzJztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgU2xhdGVQcm9wVHlwZXMgZnJvbSAnc2xhdGUtcHJvcC10eXBlcyc7XG5pbXBvcnQgeyBjb2xvciB9IGZyb20gJ0BwaWUtbGliL3JlbmRlci11aSc7XG5cbmNvbnN0IGxvZyA9IGRlYnVnKCdAcGllLWxpYjplZGl0YWJsZS1odG1sOnBsdWdpbnM6dG9vbGJhcjplZGl0b3ItYW5kLXRvb2xiYXInKTtcblxuZXhwb3J0IGNsYXNzIEVkaXRvckFuZFRvb2xiYXIgZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQge1xuICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgIGNoaWxkcmVuOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMubm9kZSksIFByb3BUeXBlcy5ub2RlXSkuaXNSZXF1aXJlZCxcbiAgICB2YWx1ZTogU2xhdGVQcm9wVHlwZXMudmFsdWUuaXNSZXF1aXJlZCxcbiAgICBwbHVnaW5zOiBQcm9wVHlwZXMuYXJyYXkuaXNSZXF1aXJlZCxcbiAgICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBnZXRGb2N1c2VkVmFsdWU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgb25Eb25lOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIG9uRGF0YUNoYW5nZTogUHJvcFR5cGVzLmZ1bmMsXG4gICAgdG9vbGJhclJlZjogUHJvcFR5cGVzLmZ1bmMsXG4gICAgZm9jdXNlZE5vZGU6IFNsYXRlUHJvcFR5cGVzLm5vZGUsXG4gICAgcmVhZE9ubHk6IFByb3BUeXBlcy5ib29sLFxuICAgIGRpc2FibGVTY3JvbGxiYXI6IFByb3BUeXBlcy5ib29sLFxuICAgIGRpc2FibGVVbmRlcmxpbmU6IFByb3BUeXBlcy5ib29sLFxuICAgIGF1dG9XaWR0aDogUHJvcFR5cGVzLmJvb2wsXG4gICAgY2xhc3NlczogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkLFxuICAgIHBsdWdpblByb3BzOiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIHRvb2xiYXJPcHRzOiBQcm9wVHlwZXMuc2hhcGUoe1xuICAgICAgcG9zaXRpb246IFByb3BUeXBlcy5vbmVPZihbJ2JvdHRvbScsICd0b3AnXSksXG4gICAgICBhbHdheXNWaXNpYmxlOiBQcm9wVHlwZXMuYm9vbCxcbiAgICAgIGVycm9yOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgbm9Cb3JkZXI6IFByb3BUeXBlcy5hbnksXG4gICAgICBub1BhZGRpbmc6IFByb3BUeXBlcy5hbnksXG4gICAgfSksXG4gICAgZm9jdXNUb29sYmFyOiBQcm9wVHlwZXMuYm9vbC5pc1JlcXVpcmVkLFxuICAgIG9uVG9vbGJhckZvY3VzOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIG9uVG9vbGJhckJsdXI6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgZG9uZUJ1dHRvblJlZjogUHJvcFR5cGVzLmZ1bmMsXG4gIH07XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHtcbiAgICAgIGNsYXNzZXMsXG4gICAgICBjaGlsZHJlbixcbiAgICAgIHZhbHVlLFxuICAgICAgcGx1Z2lucyxcbiAgICAgIG9uQ2hhbmdlLFxuICAgICAgZ2V0Rm9jdXNlZFZhbHVlLFxuICAgICAgb25Eb25lLFxuICAgICAgZm9jdXNlZE5vZGUsXG4gICAgICBhdXRvV2lkdGgsXG4gICAgICByZWFkT25seSxcbiAgICAgIGRpc2FibGVTY3JvbGxiYXIsXG4gICAgICBkaXNhYmxlVW5kZXJsaW5lLFxuICAgICAgcGx1Z2luUHJvcHMsXG4gICAgICB0b29sYmFyT3B0cyxcbiAgICAgIG9uRGF0YUNoYW5nZSxcbiAgICAgIHRvb2xiYXJSZWYsXG4gICAgICBkb25lQnV0dG9uUmVmLFxuICAgICAgZm9jdXNUb29sYmFyLFxuICAgICAgb25Ub29sYmFyRm9jdXMsXG4gICAgICBvblRvb2xiYXJCbHVyLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgbGV0IGluRm9jdXMgPSB2YWx1ZS5pc0ZvY3VzZWQgfHwgKGZvY3VzZWROb2RlICE9PSBudWxsICYmIGZvY3VzZWROb2RlICE9PSB1bmRlZmluZWQpIHx8IGZvY3VzVG9vbGJhcjtcblxuICAgIGNvbnN0IGhvbGRlck5hbWVzID0gY2xhc3NOYW1lcyhjbGFzc2VzLmVkaXRvckhvbGRlciwge1xuICAgICAgW2NsYXNzZXMuZWRpdG9ySW5Gb2N1c106IGluRm9jdXMsXG4gICAgICBbY2xhc3Nlcy5yZWFkT25seV06IHJlYWRPbmx5LFxuICAgICAgW2NsYXNzZXMuZGlzYWJsZWRVbmRlcmxpbmVdOiBkaXNhYmxlVW5kZXJsaW5lLFxuICAgICAgW2NsYXNzZXMuZGlzYWJsZWRTY3JvbGxiYXJdOiBkaXNhYmxlU2Nyb2xsYmFyLFxuICAgIH0pO1xuXG4gICAgbGV0IGNsb25lZENoaWxkcmVuID0gY2hpbGRyZW47XG5cbiAgICBpZiAodHlwZW9mIGNoaWxkcmVuICE9PSAnc3RyaW5nJykge1xuICAgICAgY2xvbmVkQ2hpbGRyZW4gPSBSZWFjdC5jbG9uZUVsZW1lbnQoY2hpbGRyZW4sIHtcbiAgICAgICAgcmVmOiAoZWwpID0+ICh0aGlzLmVkaXRvclJlZiA9IGVsKSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGxvZygnW3JlbmRlcl0gaW5Gb2N1czogJywgaW5Gb2N1cywgJ3ZhbHVlLmlzRm9jdXNlZDonLCB2YWx1ZS5pc0ZvY3VzZWQsICdmb2N1c2VkIG5vZGU6ICcsIGZvY3VzZWROb2RlKTtcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lcyhcbiAgICAgICAgICB7XG4gICAgICAgICAgICBbY2xhc3Nlcy5ub0JvcmRlcl06IHRvb2xiYXJPcHRzICYmIHRvb2xiYXJPcHRzLm5vQm9yZGVyLFxuICAgICAgICAgICAgW2NsYXNzZXMuZXJyb3JdOiB0b29sYmFyT3B0cyAmJiB0b29sYmFyT3B0cy5lcnJvcixcbiAgICAgICAgICB9LFxuICAgICAgICAgIGNsYXNzZXMucm9vdCxcbiAgICAgICAgKX1cbiAgICAgID5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2hvbGRlck5hbWVzfT5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZXMoXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBbY2xhc3Nlcy5ub1BhZGRpbmddOiB0b29sYmFyT3B0cyAmJiB0b29sYmFyT3B0cy5ub1BhZGRpbmcsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIGNsYXNzZXMuY2hpbGRyZW4sXG4gICAgICAgICAgICApfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHtjbG9uZWRDaGlsZHJlbn1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPFRvb2xiYXJcbiAgICAgICAgICBhdXRvV2lkdGg9e2F1dG9XaWR0aH1cbiAgICAgICAgICBwbHVnaW5zPXtwbHVnaW5zfVxuICAgICAgICAgIGZvY3VzZWROb2RlPXtmb2N1c2VkTm9kZX1cbiAgICAgICAgICB2YWx1ZT17dmFsdWV9XG4gICAgICAgICAgaXNGb2N1c2VkPXtpbkZvY3VzfVxuICAgICAgICAgIG9uQmx1cj17b25Ub29sYmFyQmx1cn1cbiAgICAgICAgICBvbkZvY3VzPXtvblRvb2xiYXJGb2N1c31cbiAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICAgICAgZ2V0Rm9jdXNlZFZhbHVlPXtnZXRGb2N1c2VkVmFsdWV9XG4gICAgICAgICAgb25Eb25lPXtvbkRvbmV9XG4gICAgICAgICAgb25EYXRhQ2hhbmdlPXtvbkRhdGFDaGFuZ2V9XG4gICAgICAgICAgdG9vbGJhclJlZj17dG9vbGJhclJlZn1cbiAgICAgICAgICBkb25lQnV0dG9uUmVmPXtkb25lQnV0dG9uUmVmfVxuICAgICAgICAgIHBsdWdpblByb3BzPXtwbHVnaW5Qcm9wc31cbiAgICAgICAgICB0b29sYmFyT3B0cz17dG9vbGJhck9wdHN9XG4gICAgICAgIC8+XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9XG59XG5cbmNvbnN0IHN0eWxlID0gKHRoZW1lKSA9PiAoe1xuICByb290OiB7XG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXG4gICAgcGFkZGluZzogJzBweCcsXG4gICAgYm9yZGVyOiAnMXB4IHNvbGlkICNjY2MnLFxuICAgIGJvcmRlclJhZGl1czogJzRweCcsXG4gICAgY3Vyc29yOiAndGV4dCcsXG4gICAgJyYgW2RhdGEtc2xhdGUtZWRpdG9yPVwidHJ1ZVwiXSc6IHtcbiAgICAgIHdvcmRCcmVhazogJ2JyZWFrLXdvcmQnLFxuICAgICAgb3ZlcmZsb3c6ICd2aXNpYmxlJyxcbiAgICAgIG1heEhlaWdodDogJzUwMHB4JyxcbiAgICAgIC8vIG5lZWRlZCBpbiBvcmRlciB0byBiZSBhYmxlIHRvIHB1dCB0aGUgZm9jdXMgYmVmb3JlIGEgdm9pZCBlbGVtZW50IHdoZW4gaXQgaXMgdGhlIGZpcnN0IG9uZSBpbiB0aGUgZWRpdG9yXG4gICAgICBwYWRkaW5nOiAnNXB4JyxcbiAgICB9LFxuICB9LFxuICBjaGlsZHJlbjoge1xuICAgIHBhZGRpbmc6ICcxMHB4IDE2cHgnLFxuICB9LFxuICBlZGl0b3JIb2xkZXI6IHtcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcbiAgICBwYWRkaW5nOiAnMHB4JyxcbiAgICBvdmVyZmxvd1k6ICdhdXRvJyxcbiAgICBjb2xvcjogY29sb3IudGV4dCgpLFxuICAgIGJhY2tncm91bmRDb2xvcjogY29sb3IuYmFja2dyb3VuZCgpLFxuICAgICcmOjpiZWZvcmUnOiB7XG4gICAgICBsZWZ0OiAnMCcsXG4gICAgICByaWdodDogJzAnLFxuICAgICAgYm90dG9tOiAnMCcsXG4gICAgICBoZWlnaHQ6ICcxcHgnLFxuICAgICAgY29udGVudDogJ1wiXCInLFxuICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgICB0cmFuc2l0aW9uOiAnYmFja2dyb3VuZC1jb2xvciAyMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpIDBtcycsXG4gICAgICBwb2ludGVyRXZlbnRzOiAnbm9uZScsXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6ICdyZ2JhKDAsIDAsIDAsIDAuNDIpJyxcbiAgICB9LFxuICAgICcmOjphZnRlcic6IHtcbiAgICAgIGxlZnQ6ICcwJyxcbiAgICAgIHJpZ2h0OiAnMCcsXG4gICAgICBib3R0b206ICcwJyxcbiAgICAgIGhlaWdodDogJzFweCcsXG4gICAgICBjb250ZW50OiAnXCJcIicsXG4gICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICAgIHRyYW5zZm9ybTogJ3NjYWxlWCgwKScsXG4gICAgICB0cmFuc2l0aW9uOiAndHJhbnNmb3JtIDIwMG1zIGN1YmljLWJlemllcigwLjAsIDAuMCwgMC4yLCAxKSAwbXMsIGJhY2tncm91bmQtY29sb3IgMjAwbXMgbGluZWFyJyxcbiAgICAgIGJhY2tncm91bmRDb2xvcjogJ3JnYmEoMCwgMCwgMCwgMC40MiknLFxuICAgIH0sXG4gICAgJyY6Zm9jdXMnOiB7XG4gICAgICAnJjo6YWZ0ZXInOiB7XG4gICAgICAgIHRyYW5zZm9ybTogJ3NjYWxlWCgxKScsXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogcHJpbWFyeSxcbiAgICAgICAgaGVpZ2h0OiAnMnB4JyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICAnJjpob3Zlcic6IHtcbiAgICAgICcmOjphZnRlcic6IHtcbiAgICAgICAgdHJhbnNmb3JtOiAnc2NhbGVYKDEpJyxcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5wYWxldHRlLmNvbW1vbi5ibGFjayxcbiAgICAgICAgaGVpZ2h0OiAnMnB4JyxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSxcbiAgZGlzYWJsZWRVbmRlcmxpbmU6IHtcbiAgICAnJjo6YmVmb3JlJzoge1xuICAgICAgZGlzcGxheTogJ25vbmUnLFxuICAgIH0sXG4gICAgJyY6OmFmdGVyJzoge1xuICAgICAgZGlzcGxheTogJ25vbmUnLFxuICAgIH0sXG4gIH0sXG4gIGRpc2FibGVkU2Nyb2xsYmFyOiB7XG4gICAgJyY6Oi13ZWJraXQtc2Nyb2xsYmFyJzoge1xuICAgICAgZGlzcGxheTogJ25vbmUnLFxuICAgIH0sXG4gICAgc2Nyb2xsYmFyV2lkdGg6ICdub25lJyxcbiAgICAnLW1zLW92ZXJmbG93LXN0eWxlJzogJ25vbmUnLFxuICB9LFxuICByZWFkT25seToge1xuICAgICcmOjpiZWZvcmUnOiB7XG4gICAgICBiYWNrZ3JvdW5kOiAndHJhbnNwYXJlbnQnLFxuICAgICAgYmFja2dyb3VuZFNpemU6ICc1cHggMXB4JyxcbiAgICAgIGJhY2tncm91bmRJbWFnZTogJ2xpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAwLjQyKSAzMyUsIHRyYW5zcGFyZW50IDAlKScsXG4gICAgICBiYWNrZ3JvdW5kUmVwZWF0OiAncmVwZWF0LXgnLFxuICAgICAgYmFja2dyb3VuZFBvc2l0aW9uOiAnbGVmdCB0b3AnLFxuICAgIH0sXG4gICAgJyY6OmFmdGVyJzoge1xuICAgICAgbGVmdDogJzAnLFxuICAgICAgcmlnaHQ6ICcwJyxcbiAgICAgIGJvdHRvbTogJzAnLFxuICAgICAgaGVpZ2h0OiAnMXB4JyxcbiAgICAgIGNvbnRlbnQ6ICdcIlwiJyxcbiAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgdHJhbnNmb3JtOiAnc2NhbGVYKDApJyxcbiAgICAgIHRyYW5zaXRpb246ICd0cmFuc2Zvcm0gMjAwbXMgY3ViaWMtYmV6aWVyKDAuMCwgMC4wLCAwLjIsIDEpIDBtcywgYmFja2dyb3VuZC1jb2xvciAwbXMgbGluZWFyJyxcbiAgICAgIGJhY2tncm91bmRDb2xvcjogJ3JnYmEoMCwgMCwgMCwgMCknLFxuICAgIH0sXG4gICAgJyY6aG92ZXInOiB7XG4gICAgICAnJjo6YWZ0ZXInOiB7XG4gICAgICAgIHRyYW5zZm9ybTogJ3NjYWxlWCgwKScsXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogdGhlbWUucGFsZXR0ZS5jb21tb24uYmxhY2ssXG4gICAgICAgIGhlaWdodDogJzJweCcsXG4gICAgICB9LFxuICAgIH0sXG4gIH0sXG4gIGVkaXRvckluRm9jdXM6IHtcbiAgICAnJjo6YWZ0ZXInOiB7XG4gICAgICB0cmFuc2Zvcm06ICdzY2FsZVgoMSknLFxuICAgICAgYmFja2dyb3VuZENvbG9yOiBwcmltYXJ5LFxuICAgICAgaGVpZ2h0OiAnMnB4JyxcbiAgICB9LFxuICAgICcmOmhvdmVyJzoge1xuICAgICAgJyY6OmFmdGVyJzoge1xuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHByaW1hcnksXG4gICAgICB9LFxuICAgIH0sXG4gIH0sXG4gIGVycm9yOiB7XG4gICAgYm9yZGVyOiBgMnB4IHNvbGlkICR7dGhlbWUucGFsZXR0ZS5lcnJvci5tYWlufSAhaW1wb3J0YW50YCxcbiAgfSxcbiAgbm9Cb3JkZXI6IHtcbiAgICBib3JkZXI6ICdub25lJyxcbiAgfSxcbiAgbm9QYWRkaW5nOiB7XG4gICAgcGFkZGluZzogMCxcbiAgfSxcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCB3aXRoU3R5bGVzKHN0eWxlKShFZGl0b3JBbmRUb29sYmFyKTtcbiJdfQ==
@@ -1,34 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = ToolbarPlugin;
9
-
10
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
-
12
- var _react = _interopRequireDefault(require("react"));
13
-
14
- var _editorAndToolbar = _interopRequireDefault(require("./editor-and-toolbar"));
15
-
16
- /**
17
- * Adds a toolbar which is shown when the editor is focused.
18
- * @param {*} opts
19
- */
20
- function ToolbarPlugin(opts) {
21
- return {
22
- /* eslint-disable-next-line */
23
- renderEditor: function renderEditor(props) {
24
- return /*#__PURE__*/_react["default"].createElement(_editorAndToolbar["default"], (0, _extends2["default"])({}, props, {
25
- mainEditorRef: opts.mainEditorRef,
26
- disableScrollbar: opts.disableScrollbar,
27
- disableUnderline: opts.disableUnderline,
28
- autoWidth: opts.autoWidth,
29
- onDone: opts.onDone
30
- }));
31
- }
32
- };
33
- }
34
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wbHVnaW5zL3Rvb2xiYXIvaW5kZXguanN4Il0sIm5hbWVzIjpbIlRvb2xiYXJQbHVnaW4iLCJvcHRzIiwicmVuZGVyRWRpdG9yIiwicHJvcHMiLCJtYWluRWRpdG9yUmVmIiwiZGlzYWJsZVNjcm9sbGJhciIsImRpc2FibGVVbmRlcmxpbmUiLCJhdXRvV2lkdGgiLCJvbkRvbmUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDZSxTQUFTQSxhQUFULENBQXVCQyxJQUF2QixFQUE2QjtBQUMxQyxTQUFPO0FBQ0w7QUFDQUMsSUFBQUEsWUFBWSxFQUFFLHNCQUFDQyxLQUFEO0FBQUEsMEJBQ1osZ0NBQUMsNEJBQUQsZ0NBQ01BLEtBRE47QUFFRSxRQUFBLGFBQWEsRUFBRUYsSUFBSSxDQUFDRyxhQUZ0QjtBQUdFLFFBQUEsZ0JBQWdCLEVBQUVILElBQUksQ0FBQ0ksZ0JBSHpCO0FBSUUsUUFBQSxnQkFBZ0IsRUFBRUosSUFBSSxDQUFDSyxnQkFKekI7QUFLRSxRQUFBLFNBQVMsRUFBRUwsSUFBSSxDQUFDTSxTQUxsQjtBQU1FLFFBQUEsTUFBTSxFQUFFTixJQUFJLENBQUNPO0FBTmYsU0FEWTtBQUFBO0FBRlQsR0FBUDtBQWFEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IEVkaXRvckFuZFRvb2xiYXIgZnJvbSAnLi9lZGl0b3ItYW5kLXRvb2xiYXInO1xuXG4vKipcbiAqIEFkZHMgYSB0b29sYmFyIHdoaWNoIGlzIHNob3duIHdoZW4gdGhlIGVkaXRvciBpcyBmb2N1c2VkLlxuICogQHBhcmFtIHsqfSBvcHRzXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFRvb2xiYXJQbHVnaW4ob3B0cykge1xuICByZXR1cm4ge1xuICAgIC8qIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSAqL1xuICAgIHJlbmRlckVkaXRvcjogKHByb3BzKSA9PiAoXG4gICAgICA8RWRpdG9yQW5kVG9vbGJhclxuICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgIG1haW5FZGl0b3JSZWY9e29wdHMubWFpbkVkaXRvclJlZn1cbiAgICAgICAgZGlzYWJsZVNjcm9sbGJhcj17b3B0cy5kaXNhYmxlU2Nyb2xsYmFyfVxuICAgICAgICBkaXNhYmxlVW5kZXJsaW5lPXtvcHRzLmRpc2FibGVVbmRlcmxpbmV9XG4gICAgICAgIGF1dG9XaWR0aD17b3B0cy5hdXRvV2lkdGh9XG4gICAgICAgIG9uRG9uZT17b3B0cy5vbkRvbmV9XG4gICAgICAvPlxuICAgICksXG4gIH07XG59XG4iXX0=
@@ -1,194 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.RawMarkButton = exports.RawButton = exports.MarkButton = exports.Button = void 0;
9
-
10
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
-
16
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
-
18
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
-
20
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
-
22
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
-
24
- var _react = _interopRequireDefault(require("react"));
25
-
26
- var _debug = _interopRequireDefault(require("debug"));
27
-
28
- var _styles = require("@material-ui/core/styles");
29
-
30
- var _classnames = _interopRequireDefault(require("classnames"));
31
-
32
- var _propTypes = _interopRequireDefault(require("prop-types"));
33
-
34
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
35
-
36
- 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; } }
37
-
38
- var styles = function styles(theme) {
39
- return {
40
- button: {
41
- color: 'grey',
42
- display: 'inline-flex',
43
- padding: '2px',
44
- background: 'none',
45
- border: 'none',
46
- cursor: 'pointer',
47
- '&:hover': {
48
- color: 'black'
49
- },
50
- '&:focus': {
51
- outline: "2px solid ".concat(theme.palette.grey[700])
52
- }
53
- },
54
- active: {
55
- color: 'black'
56
- },
57
- disabled: {
58
- opacity: 0.7,
59
- cursor: 'not-allowed',
60
- '& :hover': {
61
- color: 'grey'
62
- }
63
- }
64
- };
65
- };
66
-
67
- var log = (0, _debug["default"])('pie-elements:editable-html:raw-button');
68
-
69
- var RawButton = /*#__PURE__*/function (_React$Component) {
70
- (0, _inherits2["default"])(RawButton, _React$Component);
71
-
72
- var _super = _createSuper(RawButton);
73
-
74
- function RawButton(props) {
75
- var _this;
76
-
77
- (0, _classCallCheck2["default"])(this, RawButton);
78
- _this = _super.call(this, props);
79
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onClick", function (e) {
80
- log('[onClick]');
81
- e.preventDefault();
82
- var onClick = _this.props.onClick;
83
- onClick(e);
84
- });
85
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onKeyDown", function (e) {
86
- if (e.key === 'Enter' || e.key === ' ') {
87
- log('[onKeyDown]');
88
- e.preventDefault();
89
- var onClick = _this.props.onClick;
90
- onClick(e);
91
- }
92
- });
93
- return _this;
94
- }
95
-
96
- (0, _createClass2["default"])(RawButton, [{
97
- key: "render",
98
- value: function render() {
99
- var _classNames;
100
-
101
- var _this$props = this.props,
102
- active = _this$props.active,
103
- classes = _this$props.classes,
104
- children = _this$props.children,
105
- disabled = _this$props.disabled,
106
- extraStyles = _this$props.extraStyles,
107
- ariaLabel = _this$props.ariaLabel;
108
- var names = (0, _classnames["default"])(classes.button, (_classNames = {}, (0, _defineProperty2["default"])(_classNames, classes.active, active), (0, _defineProperty2["default"])(_classNames, classes.disabled, disabled), _classNames));
109
- return /*#__PURE__*/_react["default"].createElement("button", {
110
- style: extraStyles,
111
- className: names,
112
- onMouseDown: this.onClick,
113
- onKeyDown: this.onKeyDown,
114
- disabled: disabled,
115
- "aria-label": ariaLabel,
116
- "aria-pressed": active,
117
- tabIndex: 0
118
- }, children);
119
- }
120
- }]);
121
- return RawButton;
122
- }(_react["default"].Component);
123
-
124
- exports.RawButton = RawButton;
125
- (0, _defineProperty2["default"])(RawButton, "propTypes", {
126
- onClick: _propTypes["default"].func.isRequired,
127
- classes: _propTypes["default"].object.isRequired,
128
- children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]).isRequired,
129
- active: _propTypes["default"].bool,
130
- disabled: _propTypes["default"].bool,
131
- extraStyles: _propTypes["default"].object
132
- });
133
- var Button = (0, _styles.withStyles)(styles)(RawButton);
134
- exports.Button = Button;
135
-
136
- var RawMarkButton = /*#__PURE__*/function (_React$Component2) {
137
- (0, _inherits2["default"])(RawMarkButton, _React$Component2);
138
-
139
- var _super2 = _createSuper(RawMarkButton);
140
-
141
- function RawMarkButton(props) {
142
- var _this2;
143
-
144
- (0, _classCallCheck2["default"])(this, RawMarkButton);
145
- _this2 = _super2.call(this, props);
146
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this2), "onToggle", function (e) {
147
- e.preventDefault();
148
-
149
- _this2.props.onToggle(_this2.props.mark);
150
- });
151
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this2), "onKeyDown", function (e) {
152
- if (e.key === 'Enter' || e.key === ' ') {
153
- e.preventDefault();
154
-
155
- _this2.props.onToggle(_this2.props.mark);
156
- }
157
- });
158
- return _this2;
159
- }
160
-
161
- (0, _createClass2["default"])(RawMarkButton, [{
162
- key: "render",
163
- value: function render() {
164
- var _this$props2 = this.props,
165
- classes = _this$props2.classes,
166
- children = _this$props2.children,
167
- active = _this$props2.active,
168
- label = _this$props2.label;
169
- var names = (0, _classnames["default"])(classes.button, active && classes.active);
170
- return /*#__PURE__*/_react["default"].createElement("button", {
171
- className: names,
172
- onMouseDown: this.onToggle,
173
- "aria-pressed": active,
174
- onKeyDown: this.onKeyDown,
175
- "aria-label": label,
176
- tabIndex: 0
177
- }, children);
178
- }
179
- }]);
180
- return RawMarkButton;
181
- }(_react["default"].Component);
182
-
183
- exports.RawMarkButton = RawMarkButton;
184
- (0, _defineProperty2["default"])(RawMarkButton, "propTypes", {
185
- onToggle: _propTypes["default"].func.isRequired,
186
- mark: _propTypes["default"].string,
187
- label: _propTypes["default"].string.isRequired,
188
- children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]).isRequired,
189
- classes: _propTypes["default"].object.isRequired,
190
- active: _propTypes["default"].bool
191
- });
192
- var MarkButton = (0, _styles.withStyles)(styles)(RawMarkButton);
193
- exports.MarkButton = MarkButton;
194
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wbHVnaW5zL3Rvb2xiYXIvdG9vbGJhci1idXR0b25zLmpzeCJdLCJuYW1lcyI6WyJzdHlsZXMiLCJ0aGVtZSIsImJ1dHRvbiIsImNvbG9yIiwiZGlzcGxheSIsInBhZGRpbmciLCJiYWNrZ3JvdW5kIiwiYm9yZGVyIiwiY3Vyc29yIiwib3V0bGluZSIsInBhbGV0dGUiLCJncmV5IiwiYWN0aXZlIiwiZGlzYWJsZWQiLCJvcGFjaXR5IiwibG9nIiwiUmF3QnV0dG9uIiwicHJvcHMiLCJlIiwicHJldmVudERlZmF1bHQiLCJvbkNsaWNrIiwia2V5IiwiY2xhc3NlcyIsImNoaWxkcmVuIiwiZXh0cmFTdHlsZXMiLCJhcmlhTGFiZWwiLCJuYW1lcyIsIm9uS2V5RG93biIsIlJlYWN0IiwiQ29tcG9uZW50IiwiUHJvcFR5cGVzIiwiZnVuYyIsImlzUmVxdWlyZWQiLCJvYmplY3QiLCJvbmVPZlR5cGUiLCJhcnJheU9mIiwibm9kZSIsImJvb2wiLCJCdXR0b24iLCJSYXdNYXJrQnV0dG9uIiwib25Ub2dnbGUiLCJtYXJrIiwibGFiZWwiLCJzdHJpbmciLCJNYXJrQnV0dG9uIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7QUFFQSxJQUFNQSxNQUFNLEdBQUcsU0FBVEEsTUFBUyxDQUFDQyxLQUFEO0FBQUEsU0FBWTtBQUN6QkMsSUFBQUEsTUFBTSxFQUFFO0FBQ05DLE1BQUFBLEtBQUssRUFBRSxNQUREO0FBRU5DLE1BQUFBLE9BQU8sRUFBRSxhQUZIO0FBR05DLE1BQUFBLE9BQU8sRUFBRSxLQUhIO0FBSU5DLE1BQUFBLFVBQVUsRUFBRSxNQUpOO0FBS05DLE1BQUFBLE1BQU0sRUFBRSxNQUxGO0FBTU5DLE1BQUFBLE1BQU0sRUFBRSxTQU5GO0FBT04saUJBQVc7QUFDVEwsUUFBQUEsS0FBSyxFQUFFO0FBREUsT0FQTDtBQVVOLGlCQUFXO0FBQ1RNLFFBQUFB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Uzs7O2lDQUE1QlUsYSxlQUNRO0FBQ2pCQyxFQUFBQSxRQUFRLEVBQUVWLHNCQUFVQyxJQUFWLENBQWVDLFVBRFI7QUFFakJTLEVBQUFBLElBQUksRUFBRVgsc0JBQVVhLE1BRkM7QUFHakJELEVBQUFBLEtBQUssRUFBRVosc0JBQVVhLE1BQVYsQ0FBaUJYLFVBSFA7QUFJakJULEVBQUFBLFFBQVEsRUFBRU8sc0JBQVVJLFNBQVYsQ0FBb0IsQ0FBQ0osc0JBQVVLLE9BQVYsQ0FBa0JMLHNCQUFVTSxJQUE1QixDQUFELEVBQW9DTixzQkFBVU0sSUFBOUMsQ0FBcEIsRUFBeUVKLFVBSmxFO0FBS2pCVixFQUFBQSxPQUFPLEVBQUVRLHNCQUFVRyxNQUFWLENBQWlCRCxVQUxUO0FBTWpCcEIsRUFBQUEsTUFBTSxFQUFFa0Isc0JBQVVPO0FBTkQsQztBQTRDZCxJQUFNTyxVQUFVLEdBQUcsd0JBQVc1QyxNQUFYLEVBQW1CdUMsYUFBbkIsQ0FBbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IGRlYnVnIGZyb20gJ2RlYnVnJztcbmltcG9ydCB7IHdpdGhTdHlsZXMgfSBmcm9tICdAbWF0ZXJpYWwtdWkvY29yZS9zdHlsZXMnO1xuaW1wb3J0IGNsYXNzTmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuXG5jb25zdCBzdHlsZXMgPSAodGhlbWUpID0+ICh7XG4gIGJ1dHRvbjoge1xuICAgIGNvbG9yOiAnZ3JleScsXG4gICAgZGlzcGxheTogJ2lubGluZS1mbGV4JyxcbiAgICBwYWRkaW5nOiAnMnB4JyxcbiAgICBiYWNrZ3JvdW5kOiAnbm9uZScsXG4gICAgYm9yZGVyOiAnbm9uZScsXG4gICAgY3Vyc29yOiAncG9pbnRlcicsXG4gICAgJyY6aG92ZXInOiB7XG4gICAgICBjb2xvcjogJ2JsYWNrJyxcbiAgICB9LFxuICAgICcmOmZvY3VzJzoge1xuICAgICAgb3V0bGluZTogYDJweCBzb2xpZCAke3RoZW1lLnBhbGV0dGUuZ3JleVs3MDBdfWAsXG4gICAgfSxcbiAgfSxcbiAgYWN0aXZlOiB7XG4gICAgY29sb3I6ICdibGFjaycsXG4gIH0sXG4gIGRpc2FibGVkOiB7XG4gICAgb3BhY2l0eTogMC43LFxuICAgIGN1cnNvcjogJ25vdC1hbGxvd2VkJyxcbiAgICAnJiA6aG92ZXInOiB7XG4gICAgICBjb2xvcjogJ2dyZXknLFxuICAgIH0sXG4gIH0sXG59KTtcblxuY29uc3QgbG9nID0gZGVidWcoJ3BpZS1lbGVtZW50czplZGl0YWJsZS1odG1sOnJhdy1idXR0b24nKTtcblxuZXhwb3J0IGNsYXNzIFJhd0J1dHRvbiBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgb25DbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBjbGFzc2VzOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gICAgY2hpbGRyZW46IFByb3BUeXBlcy5vbmVPZlR5cGUoW1Byb3BUeXBlcy5hcnJheU9mKFByb3BUeXBlcy5ub2RlKSwgUHJvcFR5cGVzLm5vZGVdKS5pc1JlcXVpcmVkLFxuICAgIGFjdGl2ZTogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGlzYWJsZWQ6IFByb3BUeXBlcy5ib29sLFxuICAgIGV4dHJhU3R5bGVzOiBQcm9wVHlwZXMub2JqZWN0LFxuICB9O1xuXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XG4gICAgc3VwZXIocHJvcHMpO1xuICB9XG5cbiAgb25DbGljayA9IChlKSA9PiB7XG4gICAgbG9nKCdbb25DbGlja10nKTtcbiAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgY29uc3QgeyBvbkNsaWNrIH0gPSB0aGlzLnByb3BzO1xuICAgIG9uQ2xpY2soZSk7XG4gIH07XG5cbiAgb25LZXlEb3duID0gKGUpID0+IHtcbiAgICBpZiAoZS5rZXkgPT09ICdFbnRlcicgfHwgZS5rZXkgPT09ICcgJykge1xuICAgICAgbG9nKCdbb25LZXlEb3duXScpO1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgY29uc3QgeyBvbkNsaWNrIH0gPSB0aGlzLnByb3BzO1xuICAgICAgb25DbGljayhlKTtcbiAgICB9XG4gIH07XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHsgYWN0aXZlLCBjbGFzc2VzLCBjaGlsZHJlbiwgZGlzYWJsZWQsIGV4dHJhU3R5bGVzLCBhcmlhTGFiZWwgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBuYW1lcyA9IGNsYXNzTmFtZXMoY2xhc3Nlcy5idXR0b24sIHtcbiAgICAgIFtjbGFzc2VzLmFjdGl2ZV06IGFjdGl2ZSxcbiAgICAgIFtjbGFzc2VzLmRpc2FibGVkXTogZGlzYWJsZWQsXG4gICAgfSk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPGJ1dHRvblxuICAgICAgICBzdHlsZT17ZXh0cmFTdHlsZXN9XG4gICAgICAgIGNsYXNzTmFtZT17bmFtZXN9XG4gICAgICAgIG9uTW91c2VEb3duPXt0aGlzLm9uQ2xpY2t9XG4gICAgICAgIG9uS2V5RG93bj17dGhpcy5vbktleURvd259XG4gICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgYXJpYS1sYWJlbD17YXJpYUxhYmVsfVxuICAgICAgICBhcmlhLXByZXNzZWQ9e2FjdGl2ZX1cbiAgICAgICAgdGFiSW5kZXg9ezB9XG4gICAgICA+XG4gICAgICAgIHtjaGlsZHJlbn1cbiAgICAgIDwvYnV0dG9uPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IEJ1dHRvbiA9IHdpdGhTdHlsZXMoc3R5bGVzKShSYXdCdXR0b24pO1xuXG5leHBvcnQgY2xhc3MgUmF3TWFya0J1dHRvbiBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgb25Ub2dnbGU6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgbWFyazogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBsYWJlbDogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICAgIGNoaWxkcmVuOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMubm9kZSksIFByb3BUeXBlcy5ub2RlXSkuaXNSZXF1aXJlZCxcbiAgICBjbGFzc2VzOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gICAgYWN0aXZlOiBQcm9wVHlwZXMuYm9vbCxcbiAgfTtcblxuICBjb25zdHJ1Y3Rvcihwcm9wcykge1xuICAgIHN1cGVyKHByb3BzKTtcbiAgfVxuXG4gIG9uVG9nZ2xlID0gKGUpID0+IHtcbiAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5wcm9wcy5vblRvZ2dsZSh0aGlzLnByb3BzLm1hcmspO1xuICB9O1xuXG4gIG9uS2V5RG93biA9IChlKSA9PiB7XG4gICAgaWYgKGUua2V5ID09PSAnRW50ZXInIHx8IGUua2V5ID09PSAnICcpIHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMucHJvcHMub25Ub2dnbGUodGhpcy5wcm9wcy5tYXJrKTtcbiAgICB9XG4gIH07XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHsgY2xhc3NlcywgY2hpbGRyZW4sIGFjdGl2ZSwgbGFiZWwgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBuYW1lcyA9IGNsYXNzTmFtZXMoY2xhc3Nlcy5idXR0b24sIGFjdGl2ZSAmJiBjbGFzc2VzLmFjdGl2ZSk7XG4gICAgcmV0dXJuIChcbiAgICAgIDxidXR0b25cbiAgICAgICAgY2xhc3NOYW1lPXtuYW1lc31cbiAgICAgICAgb25Nb3VzZURvd249e3RoaXMub25Ub2dnbGV9XG4gICAgICAgIGFyaWEtcHJlc3NlZD17YWN0aXZlfVxuICAgICAgICBvbktleURvd249e3RoaXMub25LZXlEb3dufVxuICAgICAgICBhcmlhLWxhYmVsPXtsYWJlbH1cbiAgICAgICAgdGFiSW5kZXg9ezB9XG4gICAgICA+XG4gICAgICAgIHtjaGlsZHJlbn1cbiAgICAgIDwvYnV0dG9uPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IE1hcmtCdXR0b24gPSB3aXRoU3R5bGVzKHN0eWxlcykoUmF3TWFya0J1dHRvbik7XG4iXX0=