@pie-lib/editable-html-tip-tap 1.0.10 → 1.0.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/CharacterPicker.js +11 -3
- package/lib/components/EditableHtml.js +65 -19
- package/lib/components/TiptapContainer.js +3 -4
- package/lib/components/characters/characterUtils.js +272 -3
- package/lib/components/respArea/ExplicitConstructedResponse.js +12 -3
- package/lib/components/respArea/InlineDropdown.js +12 -3
- package/lib/extensions/component.js +12 -3
- package/lib/extensions/image.js +1 -3
- package/lib/extensions/math.js +29 -7
- package/lib/extensions/responseArea.js +1 -5
- package/lib/styles/editorContainerStyles.js +3 -61
- package/package.json +2 -1
- package/src/components/CharacterPicker.jsx +11 -1
- package/src/components/EditableHtml.jsx +49 -3
- package/src/components/TiptapContainer.jsx +0 -3
- package/src/components/characters/characterUtils.js +321 -1
- package/src/components/respArea/ExplicitConstructedResponse.jsx +11 -2
- package/src/components/respArea/InlineDropdown.jsx +11 -2
- package/src/extensions/component.jsx +11 -2
- package/src/extensions/image.js +0 -3
- package/src/extensions/math.js +31 -19
- package/src/extensions/responseArea.js +0 -3
- package/src/styles/editorContainerStyles.js +1 -59
|
@@ -118,12 +118,20 @@ function CharacterPicker(_ref2) {
|
|
|
118
118
|
(0, _react.useEffect)(function () {
|
|
119
119
|
if (!editor) return; // Calculate position relative to selection
|
|
120
120
|
|
|
121
|
+
var editorDOM = editor.options.element;
|
|
122
|
+
var editorRect = editorDOM.getBoundingClientRect();
|
|
121
123
|
var bodyRect = document.body.getBoundingClientRect();
|
|
122
124
|
var from = editor.state.selection.from;
|
|
123
125
|
var start = editor.view.coordsAtPos(from);
|
|
126
|
+
var top = editorRect.top + Math.abs(bodyRect.top) + editorRect.height + 60;
|
|
127
|
+
|
|
128
|
+
if (top + containerRef.current.offsetHeight > window.outerHeight) {
|
|
129
|
+
top = top - (containerRef.current.offsetHeight + editorRect.height) - 80;
|
|
130
|
+
}
|
|
131
|
+
|
|
124
132
|
setPosition({
|
|
125
|
-
top: start.top + Math.abs(bodyRect.top) +
|
|
126
|
-
|
|
133
|
+
// top: start.top + Math.abs(bodyRect.top) - containerRef.current.offsetHeight - 10 + additionalTopOffset, // shift above
|
|
134
|
+
top: top,
|
|
127
135
|
left: start.left
|
|
128
136
|
});
|
|
129
137
|
|
|
@@ -218,4 +226,4 @@ CharacterPicker.propTypes = {
|
|
|
218
226
|
opts: _propTypes["default"].object,
|
|
219
227
|
onClose: _propTypes["default"].func.isRequired
|
|
220
228
|
};
|
|
221
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL0NoYXJhY3RlclBpY2tlci5qc3giXSwibmFtZXMiOlsiQ2hhcmFjdGVySWNvbiIsImxldHRlciIsImZvbnRTaXplIiwibGluZUhlaWdodCIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsInN0cmluZyIsIkNoYXJhY3RlclBpY2tlciIsImVkaXRvciIsIm9wdHMiLCJvbkNsb3NlIiwiY2hhcmFjdGVycyIsImxlbmd0aCIsImNvbnRhaW5lclJlZiIsInRvcCIsImxlZnQiLCJwb3NpdGlvbiIsInNldFBvc2l0aW9uIiwicG9wb3ZlciIsInNldFBvcG92ZXIiLCJjb25maWdUb1VzZSIsInNwYW5pc2hDb25maWciLCJsYW5ndWFnZSIsInNwZWNpYWxDb25maWciLCJsYXlvdXRGb3JDaGFyYWN0ZXJzIiwicmVkdWNlIiwib2JqIiwiYXJyIiwiY29sdW1ucyIsInJvd3MiLCJjbG9zZVBvcE92ZXIiLCJib2R5UmVjdCIsImRvY3VtZW50IiwiYm9keSIsImdldEJvdW5kaW5nQ2xpZW50UmVjdCIsImZyb20iLCJzdGF0ZSIsInNlbGVjdGlvbiIsInN0YXJ0IiwidmlldyIsImNvb3Jkc0F0UG9zIiwiTWF0aCIsImFicyIsImhhbmRsZUNsaWNrT3V0c2lkZSIsImUiLCJjdXJyZW50IiwiY29udGFpbnMiLCJ0YXJnZXQiLCJkb20iLCJhZGRFdmVudExpc3RlbmVyIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsInJlbmRlclBvcE92ZXIiLCJldmVudCIsImVsIiwiYW5jaG9yRWwiLCJjdXJyZW50VGFyZ2V0IiwiaGFuZGxlQ2hhbmdlIiwidmFsIiwiY2hhaW4iLCJmb2N1cyIsImluc2VydENvbnRlbnQiLCJydW4iLCJSZWFjdERPTSIsImNyZWF0ZVBvcnRhbCIsIm1heFdpZHRoIiwia2V5UGFkQ2hhcmFjdGVyUmVmIiwic2V0S2V5cGFkSW50ZXJhY3Rpb24iLCJuIiwibWFwIiwiayIsIm5hbWUiLCJ3cml0ZSIsImxhYmVsIiwiY2F0ZWdvcnkiLCJleHRyYUNsYXNzIiwiZXh0cmFQcm9wcyIsInN0eWxlIiwiYm9yZGVyIiwiaGFzUHJldmlldyIsImFjdGlvbnMiLCJvbk1vdXNlRW50ZXIiLCJldiIsIm9uTW91c2VMZWF2ZSIsImRlc2NyaXB0aW9uIiwidW5pY29kZSIsIm9iamVjdCIsImZ1bmMiLCJpc1JlcXVpcmVkIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFFQTs7QUFDQTs7Ozs7Ozs7OztBQUVBLElBQU1BLGFBQWEsR0FBRyxTQUFoQkEsYUFBZ0I7QUFBQSxNQUFHQyxNQUFILFFBQUdBLE1BQUg7QUFBQSxzQkFDcEI7QUFDRSxJQUFBLEtBQUssRUFBRTtBQUNMQyxNQUFBQSxRQUFRLEVBQUUsTUFETDtBQUVMQyxNQUFBQSxVQUFVLEVBQUU7QUFGUDtBQURULEtBTUdGLE1BTkgsQ0FEb0I7QUFBQSxDQUF0Qjs7O0FBV0FELGFBQWEsQ0FBQ0ksU0FBZCxHQUEwQjtBQUN4QkgsRUFBQUEsTUFBTSxFQUFFSSxzQkFBVUM7QUFETSxDQUExQjs7QUFJTyxTQUFTQyxlQUFULFFBQW9EO0FBQUE7O0FBQUEsTUFBekJDLE1BQXlCLFNBQXpCQSxNQUF5QjtBQUFBLE1BQWpCQyxJQUFpQixTQUFqQkEsSUFBaUI7QUFBQSxNQUFYQyxPQUFXLFNBQVhBLE9BQVc7O0FBQ3pELE1BQUksRUFBQ0QsSUFBRCxhQUFDQSxJQUFELG1DQUFDQSxJQUFJLENBQUVFLFVBQVAsNkNBQUMsaUJBQWtCQyxNQUFuQixDQUFKLEVBQStCO0FBQzdCLFdBQU8sSUFBUDtBQUNEOztBQUVELE1BQU1DLFlBQVksR0FBRyxtQkFBTyxJQUFQLENBQXJCOztBQUNBLGtCQUFnQyxxQkFBUztBQUFFQyxJQUFBQSxHQUFHLEVBQUUsQ0FBUDtBQUFVQyxJQUFBQSxJQUFJLEVBQUU7QUFBaEIsR0FBVCxDQUFoQztBQUFBO0FBQUEsTUFBT0MsUUFBUDtBQUFBLE1BQWlCQyxXQUFqQjs7QUFDQSxtQkFBOEIscUJBQVMsSUFB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QjtBQUFxQyxJQUFBLFFBQVEsRUFBRVosT0FBTyxDQUFDb0M7QUFBdkQsa0JBQ0UsNkNBQU1wQyxPQUFPLENBQUNtQyxFQUFSLENBQVdtQixLQUFqQixDQURGLGVBRUU7QUFBSyxJQUFBLEtBQUssRUFBRTtBQUFFdEUsTUFBQUEsUUFBUSxFQUFFLEVBQVo7QUFBZ0JDLE1BQUFBLFVBQVUsRUFBRTtBQUE1QjtBQUFaLEtBQW1EZSxPQUFPLENBQUNtQyxFQUFSLENBQVc4QixXQUE5RCxDQUZGLGVBR0U7QUFBSyxJQUFBLEtBQUssRUFBRTtBQUFFakYsTUFBQUEsUUFBUSxFQUFFLEVBQVo7QUFBZ0JDLE1BQUFBLFVBQVUsRUFBRTtBQUE1QjtBQUFaLEtBQW1EZSxPQUFPLENBQUNtQyxFQUFSLENBQVcrQixPQUE5RCxDQUhGLENBREYsRUFNRXBELFFBQVEsQ0FBQ0MsSUFOWCxDQTVESixDQURGO0FBdUVEOztBQUVEMUIsZUFBZSxDQUFDSCxTQUFoQixHQUE0QjtBQUMxQkksRUFBQUEsTUFBTSxFQUFFSCxzQkFBVWdGLE1BRFE7QUFFMUI1RSxFQUFBQSxJQUFJLEVBQUVKLHNCQUFVZ0YsTUFGVTtBQUcxQjNFLEVBQUFBLE9BQU8sRUFBRUwsc0JBQVVpRixJQUFWLENBQWVDO0FBSEUsQ0FBNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IFJlYWN0RE9NIGZyb20gJ3JlYWN0LWRvbSc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IGdldCBmcm9tICdsb2Rhc2gvZ2V0JztcblxuaW1wb3J0IHsgUHVyZVRvb2xiYXIgfSBmcm9tICdAcGllLWxpYi9tYXRoLXRvb2xiYXInO1xuXG5pbXBvcnQgQ3VzdG9tUG9wcGVyIGZyb20gJy4vY2hhcmFjdGVycy9jdXN0b20tcG9wcGVyJztcbmltcG9ydCB7IHNwYW5pc2hDb25maWcsIHNwZWNpYWxDb25maWcgfSBmcm9tICcuL2NoYXJhY3RlcnMvY2hhcmFjdGVyVXRpbHMnO1xuXG5jb25zdCBDaGFyYWN0ZXJJY29uID0gKHsgbGV0dGVyIH0pID0+IChcbiAgPGRpdlxuICAgIHN0eWxlPXt7XG4gICAgICBmb250U2l6ZTogJzI0cHgnLFxuICAgICAgbGluZUhlaWdodDogJzI0cHgnLFxuICAgIH19XG4gID5cbiAgICB7bGV0dGVyfVxuICA8L2Rpdj5cbik7XG5cbkNoYXJhY3Rlckljb24ucHJvcFR5cGVzID0ge1xuICBsZXR0ZXI6IFByb3BUeXBlcy5zdHJpbmcsXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gQ2hhcmFjdGVyUGlja2VyKHsgZWRpdG9yLCBvcHRzLCBvbkNsb3NlIH0pIHtcbiAgaWYgKCFvcHRzPy5jaGFyYWN0ZXJzPy5sZW5ndGgpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGNvbnN0IGNvbnRhaW5lclJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgW3Bvc2l0aW9uLCBzZXRQb3NpdGlvbl0gPSB1c2VTdGF0ZSh7IHRvcDogMCwgbGVmdDogMCB9KTtcbiAgY29uc3QgW3BvcG92ZXIsIHNldFBvcG92ZXJdID0gdXNlU3RhdGUobnVsbCk7XG5cbiAgY29uc3QgY29uZmlnVG9Vc2UgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoIW9wdHMpIHJldHVybiBzcGFuaXNoQ29uZmlnO1xuXG4gICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICBjYXNlIG9wdHMubGFuZ3VhZ2UgPT09ICdzcGFuaXNoJzpcbiAgICAgICAgcmV0dXJuIHNwYW5pc2hDb25maWc7XG4gICAgICBjYXNlIG9wdHMubGFuZ3VhZ2UgPT09ICdzcGVjaWFsJzpcbiAgICAgICAgcmV0dXJuIHNwZWNpYWxDb25maWc7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gb3B0cztcbiAgICB9XG4gIH0sIFtvcHRzXSk7XG5cbiAgY29uc3QgbGF5b3V0Rm9yQ2hhcmFjdGVycyA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGNvbmZpZ1RvVXNlLmNoYXJhY3RlcnMucmVkdWNlKFxuICAgICAgICAob2JqLCBhcnIpID0+IHtcbiAgICAgICAgICBpZiAoYXJyLmxlbmd0aCA+PSBvYmouY29sdW1ucykge1xuICAgICAgICAgICAgb2JqLmNvbHVtbnMgPSBhcnIubGVuZ3RoO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBvYmo7XG4gICAgICAgIH0sXG4gICAgICAgIHsgcm93czogY29uZmlnVG9Vc2UuY2hhcmFjdGVycy5sZW5ndGgsIGNvbHVtbnM6IDAgfSxcbiAgICAgICksXG4gICAgW2NvbmZpZ1RvVXNlXSxcbiAgKTtcblxuICBjb25zdCBjbG9zZVBvcE92ZXIgPSAoKSA9PiBzZXRQb3BvdmVyKG51bGwpO1xuXG4gIHVzZUVmZmVjdChcbiAgICAoKSA9PiAoKSA9PiB7XG4gICAgICBjbG9zZVBvcE92ZXIoKTtcbiAgICB9LFxuICAgIFtdLFxuICApO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFlZGl0b3IpIHJldHVybjtcblxuICAgIC8vIENhbGN1bGF0ZSBwb3NpdGlvbiByZWxhdGl2ZSB0byBzZWxlY3Rpb25cbiAgICBjb25zdCBib2R5UmVjdCA9IGRvY3VtZW50LmJvZHkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgY29uc3QgeyBmcm9tIH0gPSBlZGl0b3Iuc3RhdGUuc2VsZWN0aW9uO1xuICAgIGNvbnN0IHN0YXJ0ID0gZWRpdG9yLnZpZXcuY29vcmRzQXRQb3MoZnJvbSk7XG4gICAgc2V0UG9zaXRpb24oe1xuICAgICAgdG9wOiBzdGFydC50b3AgKyBNYXRoLmFicyhib2R5UmVjdC50b3ApICsgNDAsIC8vIHNoaWZ0IGFib3ZlXG4gICAgICBsZWZ0OiBzdGFydC5sZWZ0LFxuICAgIH0pO1xuXG4gICAgY29uc3QgaGFuZGxlQ2xpY2tPdXRzaWRlID0gKGUpID0+IHtcbiAgICAgIGlmIChjb250YWluZXJSZWYuY3VycmVudCAmJiAhY29udGFpbmVyUmVmLmN1cnJlbnQuY29udGFpbnMoZS50YXJnZXQpICYmICFlZGl0b3Iudmlldy5kb20uY29udGFpbnMoZS50YXJnZXQpKSB7XG4gICAgICAgIG9uQ2xvc2UoKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgaGFuZGxlQ2xpY2tPdXRzaWRlKTtcbiAgICByZXR1cm4gKCkgPT4gZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgaGFuZGxlQ2xpY2tPdXRzaWRlKTtcbiAgfSwgW2VkaXRvciwgb25DbG9zZV0pO1xuXG4gIGNvbnN0IHJlbmRlclBvcE92ZXIgPSAoZXZlbnQsIGVsKSA9PiBzZXRQb3BvdmVyKHsgYW5jaG9yRWw6IGV2ZW50LmN1cnJlbnRUYXJnZXQsIGVsIH0pO1xuXG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9ICh2YWwpID0+IHtcbiAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGVkaXRvclxuICAgICAgICAuY2hhaW4oKVxuICAgICAgICAuZm9jdXMoKVxuICAgICAgICAuaW5zZXJ0Q29udGVudCh2YWwpXG4gICAgICAgIC5ydW4oKTtcbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAge1JlYWN0RE9NLmNyZWF0ZVBvcnRhbChcbiAgICAgICAgPGRpdlxuICAgICAgICAgIHJlZj17Y29udGFpbmVyUmVmfVxuICAgICAgICAgIGNsYXNzTmFtZT1cImluc2VydC1jaGFyYWN0ZXItZGlhbG9nXCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgICAgICAgICB0b3A6IGAke3Bvc2l0aW9uLnRvcH1weGAsXG4gICAgICAgICAgICBsZWZ0OiBgJHtwb3NpdGlvbi5sZWZ0fXB4YCxcbiAgICAgICAgICAgIG1heFdpZHRoOiAnNTAwcHgnLFxuICAgICAgICAgIH19XG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPFB1cmVUb29sYmFyXG4gICAgICAgICAgICAgIGtleVBhZENoYXJhY3RlclJlZj17b3B0cy5rZXlQYWRDaGFyYWN0ZXJSZWZ9XG4gICAgICAgICAgICAgIHNldEtleXBhZEludGVyYWN0aW9uPXtvcHRzLnNldEtleXBhZEludGVyYWN0aW9ufVxuICAgICAgICAgICAgICBhdXRvRm9jdXNcbiAgICAgICAgICAgICAgbm9EZWNpbWFsXG4gICAgICAgICAgICAgIGhpZGVJbnB1dFxuICAgICAgICAgICAgICBub0xhdGV4SGFuZGxpbmdcbiAgICAgICAgICAgICAgaGlkZURvbmVCdXR0b25CYWNrZ3JvdW5kXG4gICAgICAgICAgICAgIGxheW91dEZvcktleVBhZD17bGF5b3V0Rm9yQ2hhcmFjdGVyc31cbiAgICAgICAgICAgICAgYWRkaXRpb25hbEtleXM9e2NvbmZpZ1RvVXNlLmNoYXJhY3RlcnMucmVkdWNlKChhcnIsIG4pID0+IHtcbiAgICAgICAgICAgICAgICBhcnIgPSBbXG4gICAgICAgICAgICAgICAgICAuLi5hcnIsXG4gICAgICAgICAgICAgICAgICAuLi5uLm1hcCgoaykgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogZ2V0KGssICduYW1lJykgfHwgayxcbiAgICAgICAgICAgICAgICAgICAgd3JpdGU6IGdldChrLCAnd3JpdGUnKSB8fCBrLFxuICAgICAgICAgICAgICAgICAgICBsYWJlbDogZ2V0KGssICdsYWJlbCcpIHx8IGssXG4gICAgICAgICAgICAgICAgICAgIGNhdGVnb3J5OiAnY2hhcmFjdGVyJyxcbiAgICAgICAgICAgICAgICAgICAgZXh0cmFDbGFzczogJ2NoYXJhY3RlcicsXG4gICAgICAgICAgICAgICAgICAgIGV4dHJhUHJvcHM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAuLi4oay5leHRyYVByb3BzIHx8IHt9KSxcbiAgICAgICAgICAgICAgICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgICAgICAgICAgICAgLi4uKGsuZXh0cmFQcm9wcyB8fCB7fSkuc3R5bGUsXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6ICcxcHggc29saWQgIzAwMCcsXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgLi4uKGNvbmZpZ1RvVXNlLmhhc1ByZXZpZXdcbiAgICAgICAgICAgICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uTW91c2VFbnRlcjogKGV2KSA9PiByZW5kZXJQb3BPdmVyKGV2LCBrKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbk1vdXNlTGVhdmU6IGNsb3NlUG9wT3ZlcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICA6IHt9KSxcbiAgICAgICAgICAgICAgICAgIH0pKSxcbiAgICAgICAgICAgICAgICBdO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIGFycjtcbiAgICAgICAgICAgICAgfSwgW10pfVxuICAgICAgICAgICAgICBrZXlwYWRNb2RlPVwibGFuZ3VhZ2VcIlxuICAgICAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfVxuICAgICAgICAgICAgICBvbkRvbmU9e29uQ2xvc2V9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj4sXG4gICAgICAgIGRvY3VtZW50LmJvZHksXG4gICAgICApfVxuICAgICAge3BvcG92ZXIgJiZcbiAgICAgICAgUmVhY3RET00uY3JlYXRlUG9ydGFsKFxuICAgICAgICAgIDxDdXN0b21Qb3BwZXIgb25DbG9zZT17Y2xvc2VQb3BPdmVyfSBhbmNob3JFbD17cG9wb3Zlci5hbmNob3JFbH0+XG4gICAgICAgICAgICA8ZGl2Pntwb3BvdmVyLmVsLmxhYmVsfTwvZGl2PlxuICAgICAgICAgICAgPGRpdiBzdHlsZT17eyBmb250U2l6ZTogMjAsIGxpbmVIZWlnaHQ6ICcyMHB4JyB9fT57cG9wb3Zlci5lbC5kZXNjcmlwdGlvbn08L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgc3R5bGU9e3sgZm9udFNpemU6IDIwLCBsaW5lSGVpZ2h0OiAnMjBweCcgfX0+e3BvcG92ZXIuZWwudW5pY29kZX08L2Rpdj5cbiAgICAgICAgICA8L0N1c3RvbVBvcHBlcj4sXG4gICAgICAgICAgZG9jdW1lbnQuYm9keSxcbiAgICAgICAgKX1cbiAgICA8Lz5cbiAgKTtcbn1cblxuQ2hhcmFjdGVyUGlja2VyLnByb3BUeXBlcyA9IHtcbiAgZWRpdG9yOiBQcm9wVHlwZXMub2JqZWN0LFxuICBvcHRzOiBQcm9wVHlwZXMub2JqZWN0LFxuICBvbkNsb3NlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxufTtcblxuZXhwb3J0IHsgQ2hhcmFjdGVySWNvbiB9O1xuIl19
|
|
229
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL0NoYXJhY3RlclBpY2tlci5qc3giXSwibmFtZXMiOlsiQ2hhcmFjdGVySWNvbiIsImxldHRlciIsImZvbnRTaXplIiwibGluZUhlaWdodCIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsInN0cmluZyIsIkNoYXJhY3RlclBpY2tlciIsImVkaXRvciIsIm9wdHMiLCJvbkNsb3NlIiwiY2hhcmFjdGVycyIsImxlbmd0aCIsImNvbnRhaW5lclJlZiIsInRvcCIsImxlZnQiLCJwb3NpdGlvbiIsInNldFBvc2l0aW9uIiwicG9wb3ZlciIsInNldFBvcG92ZXIiLCJjb25maWdUb1VzZSIsInNwYW5pc2hDb25maWciLCJsYW5ndWFnZSIsInNwZWNpYWxDb25maWciLCJsYXlvdXRGb3JDaGFyYWN0ZXJzIiwicmVkdWNlIiwib2JqIiwiYXJyIiwiY29sdW1ucyIsInJvd3MiLCJjbG9zZVBvcE92ZXIiLCJlZGl0b3JET00iLCJvcHRpb25zIiwiZWxlbWVudCIsImVkaXRvclJlY3QiLCJnZXRCb3VuZGluZ0NsaWVudFJlY3QiLCJib2R5UmVjdCIsImRvY3VtZW50IiwiYm9keSIsImZyb20iLCJzdGF0ZSIsInNlbGVjdGlvbiIsInN0YXJ0IiwidmlldyIsImNvb3Jkc0F0UG9zIiwiTWF0aCIsImFicyIsImhlaWdodCIsImN1cnJlbnQiLCJvZmZzZXRIZWlnaHQiLCJ3aW5kb3ciLCJvdXRlckhlaWdodCIsImhhbmRsZUNsaWNrT3V0c2lkZSIsImUiLCJjb250YWlucyIsInRhcmdldCIsImRvbSIsImFkZEV2ZW50TGlzdGVuZXIiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwicmVuZGVyUG9wT3ZlciIsImV2ZW50IiwiZWwiLCJhbmNob3JFbCIsImN1cnJlbnRUYXJnZXQiLCJoYW5kbGVDaGFuZ2UiLCJ2YWwiLCJjaGFpbiIsImZvY3VzIiwiaW5zZXJ0Q29udGVudCIsInJ1biIsIlJlYWN0RE9NIiwiY3JlYXRlUG9ydGFsIiwibWF4V2lkdGgiLCJrZXlQYWRDaGFyYWN0ZXJSZWYiLCJzZXRLZXlwYWRJbnRlcmFjdGlvbiIsIm4iLCJtYXAiLCJrIiwibmFtZSIsIndyaXRlIiwibGFiZWwiLCJjYXRlZ29yeSIsImV4dHJhQ2xhc3MiLCJleHRyYVByb3BzIiwic3R5bGUiLCJib3JkZXIiLCJoYXNQcmV2aWV3IiwiYWN0aW9ucyIsIm9uTW91c2VFbnRlciIsImV2Iiwib25Nb3VzZUxlYXZlIiwiZGVzY3JpcHRpb24iLCJ1bmljb2RlIiwib2JqZWN0IiwiZnVuYyIsImlzUmVxdWlyZWQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUVBOztBQUVBOztBQUNBOzs7Ozs7Ozs7O0FBRUEsSUFBTUEsYUFBYSxHQUFHLFNBQWhCQSxhQUFnQjtBQUFBLE1BQUdDLE1BQUgsUUFBR0EsTUFBSDtBQUFBLHNCQUNwQjtBQUNFLElBQUEsS0FBSyxFQUFFO0FBQ0xDLE1BQUFBLFFBQVEsRUFBRSxNQURMO0FBRUxDLE1BQUFBLFVBQVUsRUFBRTtBQUZQO0FBRFQsS0FNR0YsTUFOSCxDQURvQjtBQUFBLENBQXRCOzs7QUFXQUQsYUFBYSxDQUFDSSxTQUFkLEdBQTBCO0FBQ3hCSCxFQUFBQSxNQUFNLEVBQUVJLHNCQUFVQztBQURNLENBQTFCOztBQUlPLFNBQVNDLGVBQVQsUUFBb0Q7QUFBQTs7QUFBQSxNQUF6QkMsTUFBeUIsU0FBekJBLE1BQXlCO0FBQUEsTUFBakJDLElBQWlCLFNBQWpCQSxJQUFpQjtBQUFBLE1BQVhDLE9BQVcsU0FBWEEsT0FBVzs7QUFDekQsTUFBSSxFQUFDRCxJQUFELGFBQUNBLElBQUQsbUNBQUNBLElBQUksQ0FBRUUsVUFBUCw2Q0FBQyxpQkFBa0JDLE1BQW5CLENBQUosRUFBK0I7QUFDN0IsV0FBTyxJQUFQO0FBQ0Q7O0FBRUQsTUFBTUMsWUFBWSxHQUFHLG1CQUFPLElBQVAsQ0FBckI7O0FBQ0Esa0JBQWdDLHFCQUFTO0FBQUVDLElBQUFBLEdBQUcsRUFBRSxDQUFQO0FBQVVDLElB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UTtBQUUxQnBGLEVBQUFBLElBQUksRUFBRUosc0JBQVV3RixNQUZVO0FBRzFCbkYsRUFBQUEsT0FBTyxFQUFFTCxzQkFBVXlGLElBQVYsQ0FBZUM7QUFIRSxDQUE1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZU1lbW8sIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUmVhY3RET00gZnJvbSAncmVhY3QtZG9tJztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgZ2V0IGZyb20gJ2xvZGFzaC9nZXQnO1xuXG5pbXBvcnQgeyBQdXJlVG9vbGJhciB9IGZyb20gJ0BwaWUtbGliL21hdGgtdG9vbGJhcic7XG5cbmltcG9ydCBDdXN0b21Qb3BwZXIgZnJvbSAnLi9jaGFyYWN0ZXJzL2N1c3RvbS1wb3BwZXInO1xuaW1wb3J0IHsgc3BhbmlzaENvbmZpZywgc3BlY2lhbENvbmZpZyB9IGZyb20gJy4vY2hhcmFjdGVycy9jaGFyYWN0ZXJVdGlscyc7XG5cbmNvbnN0IENoYXJhY3Rlckljb24gPSAoeyBsZXR0ZXIgfSkgPT4gKFxuICA8ZGl2XG4gICAgc3R5bGU9e3tcbiAgICAgIGZvbnRTaXplOiAnMjRweCcsXG4gICAgICBsaW5lSGVpZ2h0OiAnMjRweCcsXG4gICAgfX1cbiAgPlxuICAgIHtsZXR0ZXJ9XG4gIDwvZGl2PlxuKTtcblxuQ2hhcmFjdGVySWNvbi5wcm9wVHlwZXMgPSB7XG4gIGxldHRlcjogUHJvcFR5cGVzLnN0cmluZyxcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBDaGFyYWN0ZXJQaWNrZXIoeyBlZGl0b3IsIG9wdHMsIG9uQ2xvc2UgfSkge1xuICBpZiAoIW9wdHM/LmNoYXJhY3RlcnM/Lmxlbmd0aCkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgY29uc3QgY29udGFpbmVyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBbcG9zaXRpb24sIHNldFBvc2l0aW9uXSA9IHVzZVN0YXRlKHsgdG9wOiAwLCBsZWZ0OiAwIH0pO1xuICBjb25zdCBbcG9wb3Zlciwgc2V0UG9wb3Zlcl0gPSB1c2VTdGF0ZShudWxsKTtcblxuICBjb25zdCBjb25maWdUb1VzZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghb3B0cykgcmV0dXJuIHNwYW5pc2hDb25maWc7XG5cbiAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgIGNhc2Ugb3B0cy5sYW5ndWFnZSA9PT0gJ3NwYW5pc2gnOlxuICAgICAgICByZXR1cm4gc3BhbmlzaENvbmZpZztcbiAgICAgIGNhc2Ugb3B0cy5sYW5ndWFnZSA9PT0gJ3NwZWNpYWwnOlxuICAgICAgICByZXR1cm4gc3BlY2lhbENvbmZpZztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBvcHRzO1xuICAgIH1cbiAgfSwgW29wdHNdKTtcblxuICBjb25zdCBsYXlvdXRGb3JDaGFyYWN0ZXJzID0gdXNlTWVtbyhcbiAgICAoKSA9PlxuICAgICAgY29uZmlnVG9Vc2UuY2hhcmFjdGVycy5yZWR1Y2UoXG4gICAgICAgIChvYmosIGFycikgPT4ge1xuICAgICAgICAgIGlmIChhcnIubGVuZ3RoID49IG9iai5jb2x1bW5zKSB7XG4gICAgICAgICAgICBvYmouY29sdW1ucyA9IGFyci5sZW5ndGg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIG9iajtcbiAgICAgICAgfSxcbiAgICAgICAgeyByb3dzOiBjb25maWdUb1VzZS5jaGFyYWN0ZXJzLmxlbmd0aCwgY29sdW1uczogMCB9LFxuICAgICAgKSxcbiAgICBbY29uZmlnVG9Vc2VdLFxuICApO1xuXG4gIGNvbnN0IGNsb3NlUG9wT3ZlciA9ICgpID0+IHNldFBvcG92ZXIobnVsbCk7XG5cbiAgdXNlRWZmZWN0KFxuICAgICgpID0+ICgpID0+IHtcbiAgICAgIGNsb3NlUG9wT3ZlcigpO1xuICAgIH0sXG4gICAgW10sXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIWVkaXRvcikgcmV0dXJuO1xuXG4gICAgLy8gQ2FsY3VsYXRlIHBvc2l0aW9uIHJlbGF0aXZlIHRvIHNlbGVjdGlvblxuICAgIGNvbnN0IGVkaXRvckRPTSA9IGVkaXRvci5vcHRpb25zLmVsZW1lbnQ7XG4gICAgY29uc3QgZWRpdG9yUmVjdCA9IGVkaXRvckRPTS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCBib2R5UmVjdCA9IGRvY3VtZW50LmJvZHkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgY29uc3QgeyBmcm9tIH0gPSBlZGl0b3Iuc3RhdGUuc2VsZWN0aW9uO1xuICAgIGNvbnN0IHN0YXJ0ID0gZWRpdG9yLnZpZXcuY29vcmRzQXRQb3MoZnJvbSk7XG5cbiAgICBsZXQgdG9wID0gZWRpdG9yUmVjdC50b3AgKyBNYXRoLmFicyhib2R5UmVjdC50b3ApICsgZWRpdG9yUmVjdC5oZWlnaHQgKyA2MDtcblxuICAgIGlmICh0b3AgKyBjb250YWluZXJSZWYuY3VycmVudC5vZmZzZXRIZWlnaHQgPiB3aW5kb3cub3V0ZXJIZWlnaHQpIHtcbiAgICAgIHRvcCA9IHRvcCAtIChjb250YWluZXJSZWYuY3VycmVudC5vZmZzZXRIZWlnaHQgKyBlZGl0b3JSZWN0LmhlaWdodCkgLSA4MDtcbiAgICB9XG5cbiAgICBzZXRQb3NpdGlvbih7XG4gICAgICAvLyB0b3A6IHN0YXJ0LnRvcCArIE1hdGguYWJzKGJvZHlSZWN0LnRvcCkgLSBjb250YWluZXJSZWYuY3VycmVudC5vZmZzZXRIZWlnaHQgLSAxMCArIGFkZGl0aW9uYWxUb3BPZmZzZXQsIC8vIHNoaWZ0IGFib3ZlXG4gICAgICB0b3A6IHRvcCxcbiAgICAgIGxlZnQ6IHN0YXJ0LmxlZnQsXG4gICAgfSk7XG5cbiAgICBjb25zdCBoYW5kbGVDbGlja091dHNpZGUgPSAoZSkgPT4ge1xuICAgICAgaWYgKGNvbnRhaW5lclJlZi5jdXJyZW50ICYmICFjb250YWluZXJSZWYuY3VycmVudC5jb250YWlucyhlLnRhcmdldCkgJiYgIWVkaXRvci52aWV3LmRvbS5jb250YWlucyhlLnRhcmdldCkpIHtcbiAgICAgICAgb25DbG9zZSgpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCBoYW5kbGVDbGlja091dHNpZGUpO1xuICAgIHJldHVybiAoKSA9PiBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCBoYW5kbGVDbGlja091dHNpZGUpO1xuICB9LCBbZWRpdG9yLCBvbkNsb3NlXSk7XG5cbiAgY29uc3QgcmVuZGVyUG9wT3ZlciA9IChldmVudCwgZWwpID0+IHNldFBvcG92ZXIoeyBhbmNob3JFbDogZXZlbnQuY3VycmVudFRhcmdldCwgZWwgfSk7XG5cbiAgY29uc3QgaGFuZGxlQ2hhbmdlID0gKHZhbCkgPT4ge1xuICAgIGlmICh0eXBlb2YgdmFsID09PSAnc3RyaW5nJykge1xuICAgICAgZWRpdG9yXG4gICAgICAgIC5jaGFpbigpXG4gICAgICAgIC5mb2N1cygpXG4gICAgICAgIC5pbnNlcnRDb250ZW50KHZhbClcbiAgICAgICAgLnJ1bigpO1xuICAgIH1cbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICB7UmVhY3RET00uY3JlYXRlUG9ydGFsKFxuICAgICAgICA8ZGl2XG4gICAgICAgICAgcmVmPXtjb250YWluZXJSZWZ9XG4gICAgICAgICAgY2xhc3NOYW1lPVwiaW5zZXJ0LWNoYXJhY3Rlci1kaWFsb2dcIlxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICAgICAgICAgIHRvcDogYCR7cG9zaXRpb24udG9wfXB4YCxcbiAgICAgICAgICAgIGxlZnQ6IGAke3Bvc2l0aW9uLmxlZnR9cHhgLFxuICAgICAgICAgICAgbWF4V2lkdGg6ICc1MDBweCcsXG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8UHVyZVRvb2xiYXJcbiAgICAgICAgICAgICAga2V5UGFkQ2hhcmFjdGVyUmVmPXtvcHRzLmtleVBhZENoYXJhY3RlclJlZn1cbiAgICAgICAgICAgICAgc2V0S2V5cGFkSW50ZXJhY3Rpb249e29wdHMuc2V0S2V5cGFkSW50ZXJhY3Rpb259XG4gICAgICAgICAgICAgIGF1dG9Gb2N1c1xuICAgICAgICAgICAgICBub0RlY2ltYWxcbiAgICAgICAgICAgICAgaGlkZUlucHV0XG4gICAgICAgICAgICAgIG5vTGF0ZXhIYW5kbGluZ1xuICAgICAgICAgICAgICBoaWRlRG9uZUJ1dHRvbkJhY2tncm91bmRcbiAgICAgICAgICAgICAgbGF5b3V0Rm9yS2V5UGFkPXtsYXlvdXRGb3JDaGFyYWN0ZXJzfVxuICAgICAgICAgICAgICBhZGRpdGlvbmFsS2V5cz17Y29uZmlnVG9Vc2UuY2hhcmFjdGVycy5yZWR1Y2UoKGFyciwgbikgPT4ge1xuICAgICAgICAgICAgICAgIGFyciA9IFtcbiAgICAgICAgICAgICAgICAgIC4uLmFycixcbiAgICAgICAgICAgICAgICAgIC4uLm4ubWFwKChrKSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBnZXQoaywgJ25hbWUnKSB8fCBrLFxuICAgICAgICAgICAgICAgICAgICB3cml0ZTogZ2V0KGssICd3cml0ZScpIHx8IGssXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsOiBnZXQoaywgJ2xhYmVsJykgfHwgayxcbiAgICAgICAgICAgICAgICAgICAgY2F0ZWdvcnk6ICdjaGFyYWN0ZXInLFxuICAgICAgICAgICAgICAgICAgICBleHRyYUNsYXNzOiAnY2hhcmFjdGVyJyxcbiAgICAgICAgICAgICAgICAgICAgZXh0cmFQcm9wczoge1xuICAgICAgICAgICAgICAgICAgICAgIC4uLihrLmV4dHJhUHJvcHMgfHwge30pLFxuICAgICAgICAgICAgICAgICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuLi4oay5leHRyYVByb3BzIHx8IHt9KS5zdHlsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogJzFweCBzb2xpZCAjMDAwJyxcbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAuLi4oY29uZmlnVG9Vc2UuaGFzUHJldmlld1xuICAgICAgICAgICAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhY3Rpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb25Nb3VzZUVudGVyOiAoZXYpID0+IHJlbmRlclBvcE92ZXIoZXYsIGspLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uTW91c2VMZWF2ZTogY2xvc2VQb3BPdmVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIDoge30pLFxuICAgICAgICAgICAgICAgICAgfSkpLFxuICAgICAgICAgICAgICAgIF07XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gYXJyO1xuICAgICAgICAgICAgICB9LCBbXSl9XG4gICAgICAgICAgICAgIGtleXBhZE1vZGU9XCJsYW5ndWFnZVwiXG4gICAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICAgIG9uRG9uZT17b25DbG9zZX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PixcbiAgICAgICAgZG9jdW1lbnQuYm9keSxcbiAgICAgICl9XG4gICAgICB7cG9wb3ZlciAmJlxuICAgICAgICBSZWFjdERPTS5jcmVhdGVQb3J0YWwoXG4gICAgICAgICAgPEN1c3RvbVBvcHBlciBvbkNsb3NlPXtjbG9zZVBvcE92ZXJ9IGFuY2hvckVsPXtwb3BvdmVyLmFuY2hvckVsfT5cbiAgICAgICAgICAgIDxkaXY+e3BvcG92ZXIuZWwubGFiZWx9PC9kaXY+XG4gICAgICAgICAgICA8ZGl2IHN0eWxlPXt7IGZvbnRTaXplOiAyMCwgbGluZUhlaWdodDogJzIwcHgnIH19Pntwb3BvdmVyLmVsLmRlc2NyaXB0aW9ufTwvZGl2PlxuICAgICAgICAgICAgPGRpdiBzdHlsZT17eyBmb250U2l6ZTogMjAsIGxpbmVIZWlnaHQ6ICcyMHB4JyB9fT57cG9wb3Zlci5lbC51bmljb2RlfTwvZGl2PlxuICAgICAgICAgIDwvQ3VzdG9tUG9wcGVyPixcbiAgICAgICAgICBkb2N1bWVudC5ib2R5LFxuICAgICAgICApfVxuICAgIDwvPlxuICApO1xufVxuXG5DaGFyYWN0ZXJQaWNrZXIucHJvcFR5cGVzID0ge1xuICBlZGl0b3I6IFByb3BUeXBlcy5vYmplY3QsXG4gIG9wdHM6IFByb3BUeXBlcy5vYmplY3QsXG4gIG9uQ2xvc2U6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG59O1xuXG5leHBvcnQgeyBDaGFyYWN0ZXJJY29uIH07XG4iXX0=
|
|
@@ -19,12 +19,16 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
|
|
|
19
19
|
|
|
20
20
|
var _react = _interopRequireWildcard(require("react"));
|
|
21
21
|
|
|
22
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
23
|
+
|
|
22
24
|
var _react2 = require("@tiptap/react");
|
|
23
25
|
|
|
24
26
|
var _starterKit = _interopRequireDefault(require("@tiptap/starter-kit"));
|
|
25
27
|
|
|
26
28
|
var _extensionTextStyle = require("@tiptap/extension-text-style");
|
|
27
29
|
|
|
30
|
+
var _extensionCharacterCount = require("@tiptap/extension-character-count");
|
|
31
|
+
|
|
28
32
|
var _extensionSuperscript = _interopRequireDefault(require("@tiptap/extension-superscript"));
|
|
29
33
|
|
|
30
34
|
var _extensionSubscript = _interopRequireDefault(require("@tiptap/extension-subscript"));
|
|
@@ -102,6 +106,12 @@ var cssVariables = {
|
|
|
102
106
|
};
|
|
103
107
|
|
|
104
108
|
var EditableHtml = function EditableHtml(props) {
|
|
109
|
+
var _classNames;
|
|
110
|
+
|
|
111
|
+
var _ref = props.pluginProps || {},
|
|
112
|
+
showParagraphs = _ref.showParagraphs,
|
|
113
|
+
separateParagraphs = _ref.separateParagraphs;
|
|
114
|
+
|
|
105
115
|
var _useState = (0, _react.useState)([]),
|
|
106
116
|
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
107
117
|
pendingImages = _useState2[0],
|
|
@@ -120,8 +130,8 @@ var EditableHtml = function EditableHtml(props) {
|
|
|
120
130
|
var activePluginsToUse = (0, _react.useMemo)(function () {
|
|
121
131
|
var _props$responseAreaPr;
|
|
122
132
|
|
|
123
|
-
var
|
|
124
|
-
customPlugins =
|
|
133
|
+
var _ref2 = props.pluginProps || {},
|
|
134
|
+
customPlugins = _ref2.customPlugins;
|
|
125
135
|
|
|
126
136
|
customPlugins = customPlugins || [];
|
|
127
137
|
return (0, _extensions.buildExtensions)(props.activePlugins, customPlugins, {
|
|
@@ -141,7 +151,9 @@ var EditableHtml = function EditableHtml(props) {
|
|
|
141
151
|
media: {}
|
|
142
152
|
});
|
|
143
153
|
}, [props]);
|
|
144
|
-
var extensions = [_extensionTextStyle.TextStyleKit,
|
|
154
|
+
var extensions = [_extensionTextStyle.TextStyleKit, _extensionCharacterCount.CharacterCount.configure({
|
|
155
|
+
limit: props.charactersLimit
|
|
156
|
+
}), _starterKit["default"], _extendedTable["default"], _extensionTableRow.TableRow, _extensionTableHeader.TableHeader, _extensionTableCell.TableCell, _responseArea.ResponseAreaExtension, _responseArea.ExplicitConstructedResponseNode.configure(props.responseAreaProps), _responseArea.DragInTheBlankNode.configure(props.responseAreaProps), _responseArea.InlineDropdownNode.configure(props.responseAreaProps), _math.MathNode.configure({
|
|
145
157
|
toolbarOpts: toolbarOptsToUse
|
|
146
158
|
}), _extensionSubscript["default"], _extensionSuperscript["default"], _extensionTextAlign["default"].configure({
|
|
147
159
|
types: ['heading', 'paragraph'],
|
|
@@ -221,26 +233,36 @@ var EditableHtml = function EditableHtml(props) {
|
|
|
221
233
|
var editor = (0, _react2.useEditor)({
|
|
222
234
|
extensions: extensions,
|
|
223
235
|
immediatelyRender: false,
|
|
236
|
+
editorProps: {
|
|
237
|
+
handleKeyDown: function handleKeyDown(view, event) {
|
|
238
|
+
if (props.onKeyDown) {
|
|
239
|
+
return props.onKeyDown(event);
|
|
240
|
+
} // Return false to let default behavior continue
|
|
241
|
+
|
|
242
|
+
|
|
243
|
+
return false;
|
|
244
|
+
}
|
|
245
|
+
},
|
|
224
246
|
editable: !props.disabled,
|
|
225
247
|
content: props.markup,
|
|
226
|
-
onUpdate: function onUpdate(
|
|
248
|
+
onUpdate: function onUpdate(_ref3) {
|
|
227
249
|
var _props$onChange;
|
|
228
250
|
|
|
229
|
-
var editor =
|
|
230
|
-
transaction =
|
|
251
|
+
var editor = _ref3.editor,
|
|
252
|
+
transaction = _ref3.transaction;
|
|
231
253
|
return transaction.isDone && ((_props$onChange = props.onChange) === null || _props$onChange === void 0 ? void 0 : _props$onChange.call(props, editor.getHTML()));
|
|
232
254
|
},
|
|
233
|
-
onBlur: function onBlur(
|
|
234
|
-
var editor =
|
|
255
|
+
onBlur: function onBlur(_ref4) {
|
|
256
|
+
var editor = _ref4.editor;
|
|
235
257
|
|
|
236
258
|
if (toolbarOptsToUse.doneOn === 'blur') {
|
|
237
|
-
var _props$onChange2;
|
|
238
|
-
|
|
239
|
-
(_props$onChange2 = props.onChange) === null || _props$onChange2 === void 0 ? void 0 : _props$onChange2.call(props, editor.getHTML());
|
|
240
|
-
} else {
|
|
241
259
|
var _props$onDone2;
|
|
242
260
|
|
|
243
261
|
(_props$onDone2 = props.onDone) === null || _props$onDone2 === void 0 ? void 0 : _props$onDone2.call(props, editor.getHTML());
|
|
262
|
+
} else {
|
|
263
|
+
var _props$onChange2;
|
|
264
|
+
|
|
265
|
+
(_props$onChange2 = props.onChange) === null || _props$onChange2 === void 0 ? void 0 : _props$onChange2.call(props, editor.getHTML());
|
|
244
266
|
}
|
|
245
267
|
}
|
|
246
268
|
});
|
|
@@ -257,10 +279,10 @@ var EditableHtml = function EditableHtml(props) {
|
|
|
257
279
|
}
|
|
258
280
|
}, [props.markup, editor]);
|
|
259
281
|
(0, _react.useEffect)(function () {
|
|
260
|
-
Object.entries(cssVariables).forEach(function (
|
|
261
|
-
var
|
|
262
|
-
key =
|
|
263
|
-
value =
|
|
282
|
+
Object.entries(cssVariables).forEach(function (_ref5) {
|
|
283
|
+
var _ref6 = (0, _slicedToArray2["default"])(_ref5, 2),
|
|
284
|
+
key = _ref6[0],
|
|
285
|
+
value = _ref6[1];
|
|
264
286
|
|
|
265
287
|
document.documentElement.style.setProperty(key, value);
|
|
266
288
|
});
|
|
@@ -303,7 +325,7 @@ var EditableHtml = function EditableHtml(props) {
|
|
|
303
325
|
height: sizeStyle.height,
|
|
304
326
|
maxHeight: sizeStyle.maxHeight
|
|
305
327
|
},
|
|
306
|
-
className: classes.root,
|
|
328
|
+
className: (0, _classnames["default"])((_classNames = {}, (0, _defineProperty2["default"])(_classNames, classes.showParagraph, showParagraphs && !showParagraphs.disabled), (0, _defineProperty2["default"])(_classNames, classes.separateParagraph, separateParagraphs && !separateParagraphs.disabled), _classNames), classes.root),
|
|
307
329
|
editor: editor
|
|
308
330
|
}));
|
|
309
331
|
};
|
|
@@ -313,11 +335,35 @@ var StyledEditor = (0, _styles.withStyles)({
|
|
|
313
335
|
root: {
|
|
314
336
|
outline: 'none !important',
|
|
315
337
|
'& .ProseMirror': {
|
|
338
|
+
padding: '5px',
|
|
339
|
+
maxHeight: '500px',
|
|
316
340
|
outline: 'none !important',
|
|
317
|
-
position: 'initial'
|
|
341
|
+
position: 'initial',
|
|
342
|
+
'& > p': {
|
|
343
|
+
margin: '0'
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
},
|
|
347
|
+
showParagraph: {
|
|
348
|
+
'& .ProseMirror': {
|
|
349
|
+
// a p that has a p after it
|
|
350
|
+
'& > p:has(+ p)::after': {
|
|
351
|
+
display: 'block',
|
|
352
|
+
content: '"¶"',
|
|
353
|
+
fontSize: '1em',
|
|
354
|
+
color: '#146EB3'
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
},
|
|
358
|
+
separateParagraph: {
|
|
359
|
+
'& .ProseMirror': {
|
|
360
|
+
// a p that has a p after it
|
|
361
|
+
'& > div:has(+ div)': {
|
|
362
|
+
marginBottom: '1em'
|
|
363
|
+
}
|
|
318
364
|
}
|
|
319
365
|
}
|
|
320
366
|
})(EditableHtml);
|
|
321
367
|
var _default = StyledEditor;
|
|
322
368
|
exports["default"] = _default;
|
|
323
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRhYmxlSHRtbC5qc3giXSwibmFtZXMiOlsiZGVmYXVsdFRvb2xiYXJPcHRzIiwicG9zaXRpb24iLCJhbGlnbm1lbnQiLCJhbHdheXNWaXNpYmxlIiwic2hvd0RvbmUiLCJkb25lT24iLCJkZWZhdWx0UmVzcG9uc2VBcmVhUHJvcHMiLCJvcHRpb25zIiwicmVzcEFyZWFUb29sYmFyIiwib25IYW5kbGVBcmVhQ2hhbmdlIiwiREVGQVVMVF9BQ1RJVkVfUExVR0lOUyIsImNzc1ZhcmlhYmxlcyIsIkVkaXRhYmxlSHRtbCIsInByb3BzIiwicGVuZGluZ0ltYWdlcyIsInNldFBlbmRpbmdJbWFnZXMiLCJzY2hlZHVsZWQiLCJzZXRTY2hlZHVsZWQiLCJjbGFzc2VzIiwidG9vbGJhck9wdHMiLCJ0b29sYmFyT3B0c1RvVXNlIiwiYWN0aXZlUGx1Z2luc1RvVXNlIiwicGx1Z2luUHJvcHMiLCJjdXN0b21QbHVnaW5zIiwiYWN0aXZlUGx1Z2lucyIsIm1hdGgiLCJ0ZXh0QWxpZ24iLCJodG1sIiwiZXh0cmFDU1NSdWxlcyIsImltYWdlIiwidG9vbGJhciIsInRhYmxlIiwicmVzcG9uc2VBcmVhIiwidHlwZSIsInJlc3BvbnNlQXJlYVByb3BzIiwibGFuZ3VhZ2VDaGFyYWN0ZXJzIiwibGFuZ3VhZ2VDaGFyYWN0ZXJzUHJvcHMiLCJrZXlQYWRDaGFyYWN0ZXJSZWYiLCJzZXRLZXlwYWRJbnRlcmFjdGlvbiIsIm1lZGlhIiwiZXh0ZW5zaW9ucyIsIlRleHRTdHlsZUtpdCIsIlN0YXJ0ZXJLaXQiLCJFeHRlbmRlZFRhYmxlIiwiVGFibGVSb3ciLCJUYWJsZUhlYWRlciIsIlRhYmxlQ2VsbCIsIlJlc3BvbnNlQXJlYUV4dGVuc2lvbiIsIkV4cGxpY2l0Q29uc3RydWN0ZWRSZXNwb25zZU5vZGUiLCJjb25maWd1cmUiLCJEcmFnSW5UaGVCbGFua05vZGUiLCJJbmxpbmVEcm9wZG93bk5vZGUiLCJNYXRoTm9kZSIsIlN1YlNjcmlwdCIsIlN1cGVyU2NyaXB0IiwiVGV4dEFsaWduIiwidHlwZXMiLCJhbGlnbm1lbnRzIiwiSW1hZ2UiLCJJbWFnZVVwbG9hZE5vZGUiLCJpbWFnZUhhbmRsaW5nIiwiZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9ucyIsIm9uRG9uZSIsImVkaXRvciIsImdldEhUTUwiLCJvbkRlbGV0ZSIsImltYWdlU3VwcG9ydCIsIm5vZGUiLCJkb25lIiwic3JjIiwiYXR0cnMiLCJlIiwibmV3UGVuZGluZ0ltYWdlcyIsImZpbHRlciIsImltZyIsImtleSIsIm5ld1N0YXRlIiwibGVuZ3RoIiwiaW5zZXJ0SW1hZ2VSZXF1ZXN0ZWQiLCJhZGRlZEltYWdlIiwiZ2V0SGFuZGxlciIsIm9uRmluaXNoIiwicmVzdWx0IiwiY2IiLCJvbkNoYW5nZSIsImNhbGxiYWNrIiwiaGFuZGxlciIsImFkZCIsIm1heEltYWdlV2lkdGgiLCJtYXhJbWFnZUhlaWdodCIsImxpbWl0IiwiTWVkaWEiLCJ1cGxvYWRTb3VuZFN1cHBvcnQiLCJDU1NNYXJrIiwiaW1tZWRpYXRlbHlSZW5kZXIiLCJlZGl0YWJsZSIsImRpc2FibGVkIiwiY29udGVudCIsIm1hcmt1cCIsIm9uVXBkYXRlIiwidHJhbnNhY3Rpb24iLCJpc0RvbmUiLCJvbkJsdXIiLCJzZXRFZGl0YWJsZSIsImNvbW1hbmRzIiwic2V0Q29udGVudCIsIk9iamVjdCIsImVudHJpZXMiLCJmb3JFYWNoIiwidmFsdWUiLCJkb2N1bWVudCIsImRvY3VtZW50RWxlbWVudCIsInN0eWxlIiwic2V0UHJvcGVydHkiLCJlZGl0b3JTdGF0ZSIsInNlbGVjdG9yIiwiY3R4IiwiaXNGb2N1c2VkIiwic2l6ZVN0eWxlIiwibWluV2lkdGgiLCJ3aWR0aCIsIm1heFdpZHRoIiwibWluSGVpZ2h0IiwiaGVpZ2h0IiwibWF4SGVpZ2h0Iiwicm9vdCIsIlN0eWxlZEVkaXRvciIsIm91dGxpbmUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFD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TEMsTUFBQUEsU0FBUyxFQUFFTixTQUFTLENBQUNNO0FBSGhCLEtBRFQ7QUFNRSxJQUFBLFNBQVMsRUFBRTFHLE9BQU8sQ0FBQzJHLElBTnJCO0FBT0UsSUFBQSxNQUFNLEVBQUU5RDtBQVBWLElBVkosQ0FERjtBQXVCRCxDQTVNTTs7O0FBOE1QLElBQU0rRCxZQUFZLEdBQUcsd0JBQVc7QUFDOUJELEVBQUFBLElBQUksRUFBRTtBQUNKRSxJQUFBQSxPQUFPLEVBQUUsaUJBREw7QUFFSixzQkFBa0I7QUFDaEJBLE1BQUFBLE9BQU8sRUFBRSxpQkFETztBQUVoQjlILE1BQUFBLFFBQVEsRUFBRTtBQUZNO0FBRmQ7QUFEd0IsQ0FBWCxFQVFsQlcsWUFSa0IsQ0FBckI7ZUFVZWtILFkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IEVkaXRvckNvbnRlbnQsIHVzZUVkaXRvciwgdXNlRWRpdG9yU3RhdGUgfSBmcm9tICdAdGlwdGFwL3JlYWN0JztcbmltcG9ydCBTdGFydGVyS2l0IGZyb20gJ0B0aXB0YXAvc3RhcnRlci1raXQnO1xuaW1wb3J0IHsgVGV4dFN0eWxlS2l0IH0gZnJvbSAnQHRpcHRhcC9leHRlbnNpb24tdGV4dC1zdHlsZSc7XG5pbXBvcnQgU3VwZXJTY3JpcHQgZnJvbSAnQHRpcHRhcC9leHRlbnNpb24tc3VwZXJzY3JpcHQnO1xuaW1wb3J0IFN1YlNjcmlwdCBmcm9tICdAdGlwdGFwL2V4dGVuc2lvbi1zdWJzY3JpcHQnO1xuaW1wb3J0IFRleHRBbGlnbiBmcm9tICdAdGlwdGFwL2V4dGVuc2lvbi10ZXh0LWFsaWduJztcbmltcG9ydCBJbWFnZSBmcm9tICdAdGlwdGFwL2V4dGVuc2lvbi1pbWFnZSc7XG5pbXBvcnQgeyB3aXRoU3R5bGVzIH0gZnJvbSAnQG1hdGVyaWFsLXVpL2NvcmUvc3R5bGVzJztcblxuaW1wb3J0IEV4dGVuZGVkVGFibGUgZnJvbSAnLi4vZXh0ZW5zaW9ucy9leHRlbmRlZC10YWJsZSc7XG5pbXBvcnQgeyBUYWJsZVJvdyB9IGZyb20gJ0B0aXB0YXAvZXh0ZW5zaW9uLXRhYmxlLXJvdyc7XG5pbXBvcnQgeyBUYWJsZUNlbGwgfSBmcm9tICdAdGlwdGFwL2V4dGVuc2lvbi10YWJsZS1jZWxsJztcbmltcG9ydCB7IFRhYmxlSGVhZGVyIH0gZnJvbSAnQHRpcHRhcC9leHRlbnNpb24tdGFibGUtaGVhZGVyJztcbmltcG9ydCB7XG4gIEV4cGxpY2l0Q29uc3RydWN0ZWRSZXNwb25zZU5vZGUsXG4gIERyYWdJblRoZUJsYW5rTm9kZSxcbiAgSW5saW5lRHJvcGRvd25Ob2RlLFxuICBSZXNwb25zZUFyZWFFeHRlbnNpb24sXG59IGZyb20gJy4uL2V4dGVuc2lvbnMvcmVzcG9uc2VBcmVhJztcbmltcG9ydCB7IE1hdGhOb2RlIH0gZnJvbSAnLi4vZXh0ZW5zaW9ucy9tYXRoJztcbmltcG9ydCB7IEltYWdlVXBsb2FkTm9kZSB9IGZyb20gJy4uL2V4dGVuc2lvbnMvaW1hZ2UnO1xuaW1wb3J0IHsgTWVkaWEgfSBmcm9tICcuLi9leHRlbnNpb25zL21lZGlhJztcbmltcG9ydCB7IENTU01hcmsgfSBmcm9tICcuLi9leHRlbnNpb25zL2Nzcyc7XG5cbmltcG9ydCBFZGl0b3JDb250YWluZXIgZnJvbSAnLi9UaXB0YXBDb250YWluZXInO1xuaW1wb3J0IHsgdmFsdWVUb1NpemUgfSBmcm9tICcuLi91dGlscy9zaXplJztcbmltcG9ydCB7IGJ1aWxkRXh0ZW5zaW9ucyB9IGZyb20gJy4uL2V4dGVuc2lvbnMnO1xuXG5jb25zdCBkZWZhdWx0VG9vbGJhck9wdHMgPSB7XG4gIHBvc2l0aW9uOiAnYm90dG9tJyxcbiAgYWxpZ25tZW50OiAnbGVmdCcsXG4gIGFsd2F5c1Zpc2libGU6IGZhbHNlLFxuICBzaG93RG9uZTogdHJ1ZSxcbiAgZG9uZU9uOiAnYmx1cicsXG59O1xuXG5jb25zdCBkZWZhdWx0UmVzcG9uc2VBcmVhUHJvcHMgPSB7XG4gIG9wdGlvbnM6IHt9LFxuICByZXNwQXJlYVRvb2xiYXI6ICgpID0+IHt9LFxuICBvbkhhbmRsZUFyZWFDaGFuZ2U6ICgpID0+IHt9LFxufTtcblxuY29uc3QgREVGQVVMVF9BQ1RJVkVfUExVR0lOUyA9IFtcbiAgJ2JvbGQnLFxuICAnaXRhbGljJyxcbiAgJ3VuZGVybGluZScsXG4gICdzdHJpa2V0aHJvdWdoJyxcbiAgJ2NvZGUnLFxuICAnYnVsbGV0ZWQtbGlzdCcsXG4gICdudW1iZXJlZC1saXN0JyxcbiAgJ2ltYWdlJyxcbiAgJ21hdGgnLFxuICAnbGFuZ3VhZ2VDaGFyYWN0ZXJzJyxcbiAgJ3RleHQtYWxpZ24nLFxuICAndGFibGUnLFxuICAndmlkZW8nLFxuICAnYXVkaW8nLFxuICAncmVzcG9uc2VBcmVhJyxcbiAgJ3N1cGVyc2NyaXB0JyxcbiAgJ3N1YnNjcmlwdCcsXG4gICdjc3MnLFxuICAnaDMnLFxuICAndW5kbycsXG4gICdyZWRvJyxcbl07XG5cbmNvbnN0IGNzc1ZhcmlhYmxlcyA9IHtcbiAgJy0td2hpdGUnOiAnI2ZmZicsXG4gICctLWJsYWNrJzogJyMyZTJiMjknLFxuICAnLS1ibGFjay1jb250cmFzdCc6ICcjMTEwZjBlJyxcbiAgJy0tZ3JheS0xJzogJ3JnYmEoNjEsIDM3LCAyMCwgLjA1KScsXG4gICctLWdyYXktMic6ICdyZ2JhKDYxLCAzNywgMjAsIC4wOCknLFxuICAnLS1ncmF5LTMnOiAncmdiYSg2MSwgMzcsIDIwLCAuMTIpJyxcbiAgJy0tZ3JheS00JzogJ3JnYmEoNTMsIDM4LCAyOCwgLjMpJyxcbiAgJy0tZ3JheS01JzogJ3JnYmEoMjgsIDI1LCAyMywgLjYpJyxcbiAgJy0tZ3JlZW4nOiAnIzIyYzU1ZScsXG4gICctLXB1cnBsZSc6ICcjNmEwMGY1JyxcbiAgJy0tcHVycGxlLWNvbnRyYXN0JzogJyM1ODAwY2MnLFxuICAnLS1wdXJwbGUtbGlnaHQnOiAncmdiYSg4OCwgNSwgMjU1LCAuMDUpJyxcbiAgJy0teWVsbG93LWNvbnRyYXN0JzogJyNmYWNjMTUnLFxuICAnLS15ZWxsb3cnOiAncmdiYSgyNTAsIDIwNCwgMjEsIC40KScsXG4gICctLXllbGxvdy1saWdodCc6ICcjZmZmYWU1JyxcbiAgJy0tcmVkJzogJyNmZjVjMzMnLFxuICAnLS1yZWQtbGlnaHQnOiAnI2ZmZWJlNScsXG4gICctLXNoYWRvdyc6IGAwcHggMTJweCAzM3B4IDBweCByZ2JhKDAsIDAsIDAsIC4wNiksXG4gICAgICAgICAgICAgICAwcHggMy42MThweCA5Ljk0OXB4IDBweCByZ2JhKDAsIDAsIDAsIC4wNClgLFxufTtcblxuZXhwb3J0IGNvbnN0IEVkaXRhYmxlSHRtbCA9IChwcm9wcykgPT4ge1xuICBjb25zdCBbcGVuZGluZ0ltYWdlcywgc2V0UGVuZGluZ0ltYWdlc10gPSB1c2VTdGF0ZShbXSk7XG4gIGNvbnN0IFtzY2hlZHVsZWQsIHNldFNjaGVkdWxlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IHsgY2xhc3NlcywgdG9vbGJhck9wdHMgfSA9IHByb3BzO1xuXG4gIGNvbnN0IHRvb2xiYXJPcHRzVG9Vc2UgPSB7XG4gICAgLi4uZGVmYXVsdFRvb2xiYXJPcHRzLFxuICAgIC4uLnRvb2xiYXJPcHRzLFxuICB9O1xuXG4gIGNvbnN0IGFjdGl2ZVBsdWdpbnNUb1VzZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGxldCB7IGN1c3RvbVBsdWdpbnMgfSA9IHByb3BzLnBsdWdpblByb3BzIHx8IHt9O1xuXG4gICAgY3VzdG9tUGx1Z2lucyA9IGN1c3RvbVBsdWdpbnMgfHwgW107XG5cbiAgICByZXR1cm4gYnVpbGRFeHRlbnNpb25zKHByb3BzLmFjdGl2ZVBsdWdpbnMsIGN1c3RvbVBsdWdpbnMsIHtcbiAgICAgIG1hdGg6IHt9LFxuICAgICAgdGV4dEFsaWduOiB7fSxcbiAgICAgIGh0bWw6IHt9LFxuICAgICAgZXh0cmFDU1NSdWxlczogcHJvcHMuZXh0cmFDU1NSdWxlcyB8fCB7fSxcbiAgICAgIGltYWdlOiB7fSxcbiAgICAgIHRvb2xiYXI6IHt9LFxuICAgICAgdGFibGU6IHt9LFxuICAgICAgcmVzcG9uc2VBcmVhOiB7XG4gICAgICAgIHR5cGU6IHByb3BzLnJlc3BvbnNlQXJlYVByb3BzPy50eXBlLFxuICAgICAgfSxcbiAgICAgIGxhbmd1YWdlQ2hhcmFjdGVyczogcHJvcHMubGFuZ3VhZ2VDaGFyYWN0ZXJzUHJvcHMsXG4gICAgICBrZXlQYWRDaGFyYWN0ZXJSZWY6IHt9LFxuICAgICAgc2V0S2V5cGFkSW50ZXJhY3Rpb246IHt9LFxuICAgICAgbWVkaWE6IHt9LFxuICAgIH0pO1xuICB9LCBbcHJvcHNdKTtcblxuICBjb25zdCBleHRlbnNpb25zID0gW1xuICAgIFRleHRTdHlsZUtpdCxcbiAgICBTdGFydGVyS2l0LFxuICAgIEV4dGVuZGVkVGFibGUsXG4gICAgVGFibGVSb3csXG4gICAgVGFibGVIZWFkZXIsXG4gICAgVGFibGVDZWxsLFxuICAgIFJlc3BvbnNlQXJlYUV4dGVuc2lvbixcbiAgICBFeHBsaWNpdENvbnN0cnVjdGVkUmVzcG9uc2VOb2RlLmNvbmZpZ3VyZShwcm9wcy5yZXNwb25zZUFyZWFQcm9wcyksXG4gICAgRHJhZ0luVGhlQmxhbmtOb2RlLmNvbmZpZ3VyZShwcm9wcy5yZXNwb25zZUFyZWFQcm9wcyksXG4gICAgSW5saW5lRHJvcGRvd25Ob2RlLmNvbmZpZ3VyZShwcm9wcy5yZXNwb25zZUFyZWFQcm9wcyksXG4gICAgTWF0aE5vZGUuY29uZmlndXJlKHtcbiAgICAgIHRvb2xiYXJPcHRzOiB0b29sYmFyT3B0c1RvVXNlLFxuICAgIH0pLFxuICAgIFN1YlNjcmlwdCxcbiAgICBTdXBlclNjcmlwdCxcbiAgICBUZXh0QWxpZ24uY29uZmlndXJlKHtcbiAgICAgIHR5cGVzOiBbJ2hlYWRpbmcnLCAncGFyYWdyYXBoJ10sXG4gICAgICBhbGlnbm1lbnRzOiBbJ2xlZnQnLCAncmlnaHQnLCAnY2VudGVyJ10sXG4gICAgfSksXG4gICAgSW1hZ2UsXG4gICAgSW1hZ2VVcGxvYWROb2RlLmNvbmZpZ3VyZSh7XG4gICAgICB0b29sYmFyT3B0czogdG9vbGJhck9wdHNUb1VzZSxcbiAgICAgIGltYWdlSGFuZGxpbmc6IHtcbiAgICAgICAgZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9uczogcHJvcHMuZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9ucyxcbiAgICAgICAgb25Eb25lOiAoKSA9PiBwcm9wcy5vbkRvbmU/LihlZGl0b3IuZ2V0SFRNTCgpKSxcbiAgICAgICAgb25EZWxldGU6XG4gICAgICAgICAgcHJvcHMuaW1hZ2VTdXBwb3J0ICYmXG4gICAgICAgICAgcHJvcHMuaW1hZ2VTdXBwb3J0LmRlbGV0ZSAmJlxuICAgICAgICAgICgobm9kZSwgZG9uZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyBzcmMgfSA9IG5vZGUuYXR0cnM7XG5cbiAgICAgICAgICAgIHByb3BzLmltYWdlU3VwcG9ydC5kZWxldGUoc3JjLCAoZSkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBuZXdQZW5kaW5nSW1hZ2VzID0gcGVuZGluZ0ltYWdlcy5maWx0ZXIoKGltZykgPT4gaW1nLmtleSAhPT0gbm9kZS5rZXkpO1xuICAgICAgICAgICAgICBjb25zdCBuZXdTdGF0ZSA9IHtcbiAgICAgICAgICAgICAgICBwZW5kaW5nSW1hZ2VzOiBuZXdQZW5kaW5nSW1hZ2VzLFxuICAgICAgICAgICAgICAgIHNjaGVkdWxlZDogc2NoZWR1bGVkICYmIG5ld1BlbmRpbmdJbWFnZXMubGVuZ3RoID09PSAwID8gZmFsc2UgOiBzY2hlZHVsZWQsXG4gICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgc2V0UGVuZGluZ0ltYWdlcyhuZXdTdGF0ZS5wZW5kaW5nSW1hZ2VzKTtcbiAgICAgICAgICAgICAgc2V0U2NoZWR1bGVkKG5ld1N0YXRlLnNjaGVkdWxlZCk7XG4gICAgICAgICAgICAgIGRvbmUoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0pLFxuICAgICAgICBpbnNlcnRJbWFnZVJlcXVlc3RlZDpcbiAgICAgICAgICBwcm9wcy5pbWFnZVN1cHBvcnQgJiZcbiAgICAgICAgICAoKGFkZGVkSW1hZ2UsIGdldEhhbmRsZXIpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG9uRmluaXNoID0gKHJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgICBsZXQgY2I7XG5cbiAgICAgICAgICAgICAgaWYgKHNjaGVkdWxlZCAmJiByZXN1bHQpIHtcbiAgICAgICAgICAgICAgICAvLyBmaW5pc2ggZWRpdGluZyBvbmx5IG9uIHN1Y2Nlc3NcbiAgICAgICAgICAgICAgICBjYiA9IHByb3BzLm9uQ2hhbmdlO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgY29uc3QgbmV3UGVuZGluZ0ltYWdlcyA9IHBlbmRpbmdJbWFnZXMuZmlsdGVyKChpbWcpID0+IGltZy5rZXkgIT09IGFkZGVkSW1hZ2Uua2V5KTtcbiAgICAgICAgICAgICAgY29uc3QgbmV3U3RhdGUgPSB7XG4gICAgICAgICAgICAgICAgcGVuZGluZ0ltYWdlczogbmV3UGVuZGluZ0ltYWdlcyxcbiAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICBpZiAobmV3UGVuZGluZ0ltYWdlcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgICAgICBuZXdTdGF0ZS5zY2hlZHVsZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIHNldFBlbmRpbmdJbWFnZXMobmV3U3RhdGUucGVuZGluZ0ltYWdlcyk7XG4gICAgICAgICAgICAgIHNldFNjaGVkdWxlZChuZXdTdGF0ZS5zY2hlZHVsZWQpO1xuICAgICAgICAgICAgICBjYj8uKGVkaXRvci5nZXRIVE1MKCkpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGNvbnN0IGNhbGxiYWNrID0gKCkgPT4ge1xuICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICogVGhlIGhhbmRsZXIgaXMgdGhlIG9iamVjdCB0aHJvdWdoIHdoaWNoIHRoZSBvdXRlciBjb250ZXh0XG4gICAgICAgICAgICAgICAqIGNvbW11bmljYXRlcyBmaWxlIHVwbG9hZCBldmVudHMgbGlrZTogZmlsZUNob3NlbiwgY2FuY2VsLCBwcm9ncmVzc1xuICAgICAgICAgICAgICAgKi9cbiAgICAgICAgICAgICAgY29uc3QgaGFuZGxlciA9IGdldEhhbmRsZXIob25GaW5pc2gpO1xuICAgICAgICAgICAgICBwcm9wcy5pbWFnZVN1cHBvcnQuYWRkKGhhbmRsZXIpO1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgc2V0UGVuZGluZ0ltYWdlcyhbLi4ucGVuZGluZ0ltYWdlcywgYWRkZWRJbWFnZV0pO1xuICAgICAgICAgICAgY2FsbGJhY2soKTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgbWF4SW1hZ2VXaWR0aDogcHJvcHMubWF4SW1hZ2VXaWR0aCxcbiAgICAgICAgbWF4SW1hZ2VIZWlnaHQ6IHByb3BzLm1heEltYWdlSGVpZ2h0LFxuICAgICAgfSxcbiAgICAgIGxpbWl0OiAzLFxuICAgIH0pLFxuICAgIE1lZGlhLmNvbmZpZ3VyZSh7XG4gICAgICB1cGxvYWRTb3VuZFN1cHBvcnQ6IHByb3BzLnVwbG9hZFNvdW5kU3VwcG9ydCxcbiAgICB9KSxcbiAgICBDU1NNYXJrLmNvbmZpZ3VyZSh7XG4gICAgICBleHRyYUNTU1J1bGVzOiBwcm9wcy5leHRyYUNTU1J1bGVzLFxuICAgIH0pLFxuICBdO1xuXG4gIGNvbnN0IGVkaXRvciA9IHVzZUVkaXRvcih7XG4gICAgZXh0ZW5zaW9ucyxcbiAgICBpbW1lZGlhdGVseVJlbmRlcjogZmFsc2UsXG4gICAgZWRpdGFibGU6ICFwcm9wcy5kaXNhYmxlZCxcbiAgICBjb250ZW50OiBwcm9wcy5tYXJrdXAsXG4gICAgb25VcGRhdGU6ICh7IGVkaXRvciwgdHJhbnNhY3Rpb24gfSkgPT4gdHJhbnNhY3Rpb24uaXNEb25lICYmIHByb3BzLm9uQ2hhbmdlPy4oZWRpdG9yLmdldEhUTUwoKSksXG4gICAgb25CbHVyOiAoeyBlZGl0b3IgfSkgPT4ge1xuICAgICAgaWYgKHRvb2xiYXJPcHRzVG9Vc2UuZG9uZU9uID09PSAnYmx1cicpIHtcbiAgICAgICAgcHJvcHMub25DaGFuZ2U/LihlZGl0b3IuZ2V0SFRNTCgpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHByb3BzLm9uRG9uZT8uKGVkaXRvci5nZXRIVE1MKCkpO1xuICAgICAgfVxuICAgIH0sXG4gIH0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZWRpdG9yPy5zZXRFZGl0YWJsZSghcHJvcHMuZGlzYWJsZWQpO1xuICB9LCBbcHJvcHMuZGlzYWJsZWQsIGVkaXRvcl0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFlZGl0b3IpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMubWFya3VwICE9PSBlZGl0b3IuZ2V0SFRNTCgpKSB7XG4gICAgICBlZGl0b3IuY29tbWFuZHMuc2V0Q29udGVudChwcm9wcy5tYXJrdXAsIGZhbHNlKTsgLy8gZmFsc2UgPSBkb27igJl0IGVtaXQgdXBkYXRlXG4gICAgfVxuICB9LCBbcHJvcHMubWFya3VwLCBlZGl0b3JdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIE9iamVjdC5lbnRyaWVzKGNzc1ZhcmlhYmxlcykuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoa2V5LCB2YWx1ZSk7XG4gICAgfSk7XG4gIH0sIFtdKTtcblxuICBjb25zdCBlZGl0b3JTdGF0ZSA9IHVzZUVkaXRvclN0YXRlKHtcbiAgICBlZGl0b3IsXG4gICAgc2VsZWN0b3I6IChjdHgpID0+ICh7XG4gICAgICBpc0ZvY3VzZWQ6IGN0eC5lZGl0b3I/LmlzRm9jdXNlZCxcbiAgICB9KSxcbiAgfSk7XG5cbiAgY29uc3Qgc2l6ZVN0eWxlID0gdXNlTWVtbygoKSA9PiB7XG4gICAgY29uc3QgeyBtaW5XaWR0aCwgd2lkdGgsIG1heFdpZHRoLCBtaW5IZWlnaHQsIGhlaWdodCwgbWF4SGVpZ2h0IH0gPSBwcm9wcztcblxuICAgIHJldHVybiB7XG4gICAgICB3aWR0aDogdmFsdWVUb1NpemUod2lkdGgpLFxuICAgICAgbWluV2lkdGg6IHZhbHVlVG9TaXplKG1pbldpZHRoKSxcbiAgICAgIG1heFdpZHRoOiB2YWx1ZVRvU2l6ZShtYXhXaWR0aCksXG4gICAgICBoZWlnaHQ6IHZhbHVlVG9TaXplKGhlaWdodCksXG4gICAgICBtaW5IZWlnaHQ6IHZhbHVlVG9TaXplKG1pbkhlaWdodCksXG4gICAgICBtYXhIZWlnaHQ6IHZhbHVlVG9TaXplKG1heEhlaWdodCksXG4gICAgfTtcbiAgfSwgW3Byb3BzXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8RWRpdG9yQ29udGFpbmVyXG4gICAgICB7Li4ue1xuICAgICAgICAuLi5wcm9wcyxcbiAgICAgICAgYWN0aXZlUGx1Z2luczogYWN0aXZlUGx1Z2luc1RvVXNlLFxuICAgICAgICB0b29sYmFyT3B0czogdG9vbGJhck9wdHNUb1VzZSxcbiAgICAgIH19XG4gICAgICBlZGl0b3JTdGF0ZT17ZWRpdG9yU3RhdGV9XG4gICAgICBlZGl0b3I9e2VkaXRvcn1cbiAgICA+XG4gICAgICB7ZWRpdG9yICYmIChcbiAgICAgICAgPEVkaXRvckNvbnRlbnRcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgbWluSGVpZ2h0OiBzaXplU3R5bGUubWluSGVpZ2h0LFxuICAgICAgICAgICAgaGVpZ2h0OiBzaXplU3R5bGUuaGVpZ2h0LFxuICAgICAgICAgICAgbWF4SGVpZ2h0OiBzaXplU3R5bGUubWF4SGVpZ2h0LFxuICAgICAgICAgIH19XG4gICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc2VzLnJvb3R9XG4gICAgICAgICAgZWRpdG9yPXtlZGl0b3J9XG4gICAgICAgIC8+XG4gICAgICApfVxuICAgIDwvRWRpdG9yQ29udGFpbmVyPlxuICApO1xufTtcblxuY29uc3QgU3R5bGVkRWRpdG9yID0gd2l0aFN0eWxlcyh7XG4gIHJvb3Q6IHtcbiAgICBvdXRsaW5lOiAnbm9uZSAhaW1wb3J0YW50JyxcbiAgICAnJiAuUHJvc2VNaXJyb3InOiB7XG4gICAgICBvdXRsaW5lOiAnbm9uZSAhaW1wb3J0YW50JyxcbiAgICAgIHBvc2l0aW9uOiAnaW5pdGlhbCcsXG4gICAgfSxcbiAgfSxcbn0pKEVkaXRhYmxlSHRtbCk7XG5cbmV4cG9ydCBkZWZhdWx0IFN0eWxlZEVkaXRvcjtcbiJdfQ==
|
|
369
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL0VkaXRhYmxlSHRtbC5qc3giXSwibmFtZXMiOlsiZGVmYXVsdFRvb2xiYXJPcHRzIiwicG9zaXRpb24iLCJhbGlnbm1lbnQiLCJhbHdheXNWaXNpYmxlIiwic2hvd0RvbmUiLCJkb25lT24iLCJkZWZhdWx0UmVzcG9uc2VBcmVhUHJvcHMiLCJvcHRpb25zIiwicmVzcEFyZWFUb29sYmFyIiwib25IYW5kbGVBcmVhQ2hhbmdlIiwiREVGQVVMVF9BQ1RJVkVfUExVR0lOUyIsImNzc1ZhcmlhYmxlcyIsIkVkaXRhYmxlSHRtbCIsInByb3BzIiwicGx1Z2luUHJvcHMiLCJzaG93UGFyYWdyYXBocyIsInNlcGFyYXRlUGFyYWdyYXBocyIsInBlbmRpbmdJbWFnZXMiLCJzZXRQZW5kaW5nSW1hZ2VzIiwic2NoZWR1bGVkIiwic2V0U2NoZWR1bGVkIiwiY2xhc3NlcyIsInRvb2xiYXJPcHRzIiwidG9vbGJhck9wdHNUb1VzZSIsImFjdGl2ZVBsdWdpbnNUb1VzZSIsImN1c3RvbVBsdWdpbnMiLCJhY3RpdmVQbHVnaW5zIiwibWF0aCIsInRleHRBbGlnbiIsImh0bWwiLCJleHRyYUNTU1J1bGVzIiwiaW1hZ2UiLCJ0b29sYmFyIiwidGFibGUiLCJyZXNwb25zZUFyZWEiLCJ0eXBlIiwicmVzcG9uc2VBcmVhUHJvcHMiLCJsYW5ndWFnZUNoYXJhY3RlcnMiLCJsYW5ndWFnZUNoYXJhY3RlcnNQcm9wcyIsImtleVBhZENoYXJhY3RlclJlZiIsInNldEtleXBhZEludGVyYWN0aW9uIiwibWVkaWEiLCJleHRlbnNpb25zIiwiVGV4dFN0eWxlS2l0IiwiQ2hhcmFjdGVyQ291bnQiLCJjb25maWd1cmUiLCJsaW1pdCIsImNoYXJhY3RlcnNMaW1pdCIsIlN0YXJ0ZXJLaXQiLCJFeHRlbmRlZFRhYmxlIiwiVGFibGVSb3ciLCJUYWJsZUhlYWRlciIsIlRhYmxlQ2VsbCIsIlJlc3BvbnNlQXJlYUV4dGVuc2lvbiIsIkV4cGxpY2l0Q29uc3RydWN0ZWRSZXNwb25zZU5vZGUiLCJEcmFnSW5UaGVCbGFua05vZGUiLCJJbmxpbmVEcm9wZG93bk5vZGUiLCJNYXRoTm9kZSIsIlN1YlNjcmlwdCIsIlN1cGVyU2NyaXB0IiwiVGV4dEFsaWduIiwidHlwZXMiLCJhbGlnbm1lbnRzIiwiSW1hZ2UiLCJJbWFnZVVwbG9hZE5vZGUiLCJpbWFnZUhhbmRsaW5nIiwiZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9ucyIsIm9uRG9uZSIsImVkaXRvciIsImdldEhUTUwiLCJvbkRlbGV0ZSIsImltYWdlU3VwcG9ydCIsIm5vZGUiLCJkb25lIiwic3JjIiwiYXR0cnMiLCJlIiwibmV3UGVuZGluZ0ltYWdlcyIsImZpbHRlciIsImltZyIsImtleSIsIm5ld1N0YXRlIiwibGVuZ3RoIiwiaW5zZXJ0SW1hZ2VSZXF1ZXN0ZWQiLCJhZGRlZEltYWdlIiwiZ2V0SGFuZGxlciIsIm9uRmluaXNoIiwicmVzdWx0IiwiY2IiLCJvbkNoYW5nZSIsImNhbGxiYWNrIiwiaGFuZGxlciIsImFkZCIsIm1heEltYWdlV2lkdGgiLCJtYXhJbWFnZUhlaWdodCIsIk1lZGlhIiwidXBsb2FkU291bmRTdXBwb3J0IiwiQ1NTTWFyayIsImltbWVkaWF0ZWx5UmVuZGVyIiwiZWRpdG9yUHJvcHMiLCJoYW5kbGVLZXlEb3duIiwidmlldyIsImV2ZW50Iiwib25LZXlEb3duIiwiZWRpdGFibGUiLCJkaXNhYmxlZCIsImNvbnRlbnQiLCJtYXJrdXAiLCJvblVwZGF0ZSIsInRyYW5zYWN0aW9uIiwiaXNEb25lIiwib25CbHVyIiwic2V0RWRpdGFibGUiLCJjb21tYW5kcyIsInNldENvbnRlbnQiLCJPYmplY3QiLCJlbnRyaWVzIiwiZm9yRWFjaCIsInZhbHVlIiwiZG9jdW1lbnQiLCJkb2N1bWVudEVsZW1lbnQiLCJzdHlsZSIsInNldFByb3BlcnR5IiwiZWRpdG9yU3RhdGUiLCJzZWxlY3RvciIsImN0eCIsImlzRm9jdXNlZCIsInNpemVTdHlsZSIsIm1pbldpZHRoIiwid2lkdGgiLCJtYXhXaWR0aCIsIm1pbkhlaWdodCIsImhlaWdodCIsIm1heEhlaWdodCIsInNob3dQYXJhZ3JhcGgiLCJzZXBhcmF0ZVBhcmFncmFwaCIsInJvb3QiLCJTdHlsZWRFZGl0b3IiLCJvdXRsaW5lIiwicGFkZGluZyIsIm1hcmdpbiIsImRpc3BsYXkiLCJmb250U2l6ZSIsImNvbG9yIiwibWFyZ2luQm90dG9tIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBTUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBQ0E7O0FBQ0E7Ozs7Ozs7Ozs7QUFFQSxJQUFNQSxrQkFBa0IsR0FBRztBQUN6QkMsRUFBQUEsUUFBUSxFQUFFLFFBRGU7QUFFekJDLEVBQUFBLFNBQVMsRUFBRSxNQUZjO0FBR3pCQyxFQUFBQSxhQUFhLEVBQUUsS0FIVTtBQUl6QkMsRUFBQUEsUUFBUSxFQUFFLElBSmU7QUFLekJDLEVBQUFBLE1BQU0sRUFBRTtBQUxpQixDQUEzQjtBQVFBLElBQU1DLHdCQUF3QixHQUFHO0FBQy9CQyxFQUFBQSxPQUFPLEVBQUUsRUFEc0I7QUFFL0JDLEVBQUFBLGVBQWUsRUFBRSwyQkFBTSxDQUFFLENBRk07QUFHL0JDLEVBQUFBLGtCQUFrQixFQUFFLDhCQUFNLENBQUU7QUFIRyxDQUFqQztBQU1BLElBQU1DLHNCQUFzQixHQUFHLENBQzdCLE1BRDZCLEVBRTdCLFFBRjZCLEVBRzdCLFdBSDZCLEVBSTdCLGVBSjZCLEVBSzdCLE1BTDZCLEVBTTdCLGVBTjZCLEVBTzdCLGVBUDZCLEVBUTdCLE9BUjZCLEVBUzdCLE1BVDZCLEVBVTdCLG9CQVY2QixFQVc3QixZQVg2QixFQVk3QixPQVo2QixFQWE3QixPQWI2QixFQWM3QixPQWQ2QixFQWU3QixjQWY2QixFQWdCN0IsYUFoQjZCLEVBaUI3QixXQWpCNkIsRUFrQjdCLEtBbEI2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QWJWLElBVkosQ0FERjtBQTZCRCxDQWhPTTs7O0FBa09QLElBQU1xRSxZQUFZLEdBQUcsd0JBQVc7QUFDOUJELEVBQUFBLElBQUksRUFBRTtBQUNKRSxJQUFBQSxPQUFPLEVBQUUsaUJBREw7QUFFSixzQkFBa0I7QUFDaEJDLE1BQUFBLE9BQU8sRUFBRSxLQURPO0FBRWhCTixNQUFBQSxTQUFTLEVBQUUsT0FGSztBQUdoQkssTUFBQUEsT0FBTyxFQUFFLGlCQUhPO0FBSWhCekksTUFBQUEsUUFBUSxFQUFFLFNBSk07QUFLaEIsZUFBUztBQUNQMkksUUFBQUEsTUFBTSxFQUFFO0FBREQ7QUFMTztBQUZkLEdBRHdCO0FBYTlCTixFQUFBQSxhQUFhLEVBQUU7QUFDYixzQkFBa0I7QUFDaEI7QUFDQSwrQkFBeUI7QUFDdkJPLFFBQUFBLE9BQU8sRUFBRSxPQURjO0FBRXZCbkMsUUFBQUEsT0FBTyxFQUFFLEtBRmM7QUFHdkJvQyxRQUFBQSxRQUFRLEVBQUUsS0FIYTtBQUl2QkMsUUFBQUEsS0FBSyxFQUFFO0FBSmdCO0FBRlQ7QUFETCxHQWJlO0FBd0I5QlIsRUFBQUEsaUJBQWlCLEVBQUU7QUFDakIsc0JBQWtCO0FBQ2hCO0FBQ0EsNEJBQXNCO0FBQ3BCUyxRQUFBQSxZQUFZLEVBQUU7QUFETTtBQUZOO0FBREQ7QUF4QlcsQ0FBWCxFQWdDbEJwSSxZQWhDa0IsQ0FBckI7ZUFrQ2U2SCxZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tICdjbGFzc25hbWVzJztcbmltcG9ydCB7IEVkaXRvckNvbnRlbnQsIHVzZUVkaXRvciwgdXNlRWRpdG9yU3RhdGUgfSBmcm9tICdAdGlwdGFwL3JlYWN0JztcbmltcG9ydCBTdGFydGVyS2l0IGZyb20gJ0B0aXB0YXAvc3RhcnRlci1raXQnO1xuaW1wb3J0IHsgVGV4dFN0eWxlS2l0IH0gZnJvbSAnQHRpcHRhcC9leHRlbnNpb24tdGV4dC1zdHlsZSc7XG5pbXBvcnQgeyBDaGFyYWN0ZXJDb3VudCB9IGZyb20gJ0B0aXB0YXAvZXh0ZW5zaW9uLWNoYXJhY3Rlci1jb3VudCc7XG5pbXBvcnQgU3VwZXJTY3JpcHQgZnJvbSAnQHRpcHRhcC9leHRlbnNpb24tc3VwZXJzY3JpcHQnO1xuaW1wb3J0IFN1YlNjcmlwdCBmcm9tICdAdGlwdGFwL2V4dGVuc2lvbi1zdWJzY3JpcHQnO1xuaW1wb3J0IFRleHRBbGlnbiBmcm9tICdAdGlwdGFwL2V4dGVuc2lvbi10ZXh0LWFsaWduJztcbmltcG9ydCBJbWFnZSBmcm9tICdAdGlwdGFwL2V4dGVuc2lvbi1pbWFnZSc7XG5pbXBvcnQgeyB3aXRoU3R5bGVzIH0gZnJvbSAnQG1hdGVyaWFsLXVpL2NvcmUvc3R5bGVzJztcblxuaW1wb3J0IEV4dGVuZGVkVGFibGUgZnJvbSAnLi4vZXh0ZW5zaW9ucy9leHRlbmRlZC10YWJsZSc7XG5pbXBvcnQgeyBUYWJsZVJvdyB9IGZyb20gJ0B0aXB0YXAvZXh0ZW5zaW9uLXRhYmxlLXJvdyc7XG5pbXBvcnQgeyBUYWJsZUNlbGwgfSBmcm9tICdAdGlwdGFwL2V4dGVuc2lvbi10YWJsZS1jZWxsJztcbmltcG9ydCB7IFRhYmxlSGVhZGVyIH0gZnJvbSAnQHRpcHRhcC9leHRlbnNpb24tdGFibGUtaGVhZGVyJztcbmltcG9ydCB7XG4gIEV4cGxpY2l0Q29uc3RydWN0ZWRSZXNwb25zZU5vZGUsXG4gIERyYWdJblRoZUJsYW5rTm9kZSxcbiAgSW5saW5lRHJvcGRvd25Ob2RlLFxuICBSZXNwb25zZUFyZWFFeHRlbnNpb24sXG59IGZyb20gJy4uL2V4dGVuc2lvbnMvcmVzcG9uc2VBcmVhJztcbmltcG9ydCB7IE1hdGhOb2RlIH0gZnJvbSAnLi4vZXh0ZW5zaW9ucy9tYXRoJztcbmltcG9ydCB7IEltYWdlVXBsb2FkTm9kZSB9IGZyb20gJy4uL2V4dGVuc2lvbnMvaW1hZ2UnO1xuaW1wb3J0IHsgTWVkaWEgfSBmcm9tICcuLi9leHRlbnNpb25zL21lZGlhJztcbmltcG9ydCB7IENTU01hcmsgfSBmcm9tICcuLi9leHRlbnNpb25zL2Nzcyc7XG5cbmltcG9ydCBFZGl0b3JDb250YWluZXIgZnJvbSAnLi9UaXB0YXBDb250YWluZXInO1xuaW1wb3J0IHsgdmFsdWVUb1NpemUgfSBmcm9tICcuLi91dGlscy9zaXplJztcbmltcG9ydCB7IGJ1aWxkRXh0ZW5zaW9ucyB9IGZyb20gJy4uL2V4dGVuc2lvbnMnO1xuXG5jb25zdCBkZWZhdWx0VG9vbGJhck9wdHMgPSB7XG4gIHBvc2l0aW9uOiAnYm90dG9tJyxcbiAgYWxpZ25tZW50OiAnbGVmdCcsXG4gIGFsd2F5c1Zpc2libGU6IGZhbHNlLFxuICBzaG93RG9uZTogdHJ1ZSxcbiAgZG9uZU9uOiAnYmx1cicsXG59O1xuXG5jb25zdCBkZWZhdWx0UmVzcG9uc2VBcmVhUHJvcHMgPSB7XG4gIG9wdGlvbnM6IHt9LFxuICByZXNwQXJlYVRvb2xiYXI6ICgpID0+IHt9LFxuICBvbkhhbmRsZUFyZWFDaGFuZ2U6ICgpID0+IHt9LFxufTtcblxuY29uc3QgREVGQVVMVF9BQ1RJVkVfUExVR0lOUyA9IFtcbiAgJ2JvbGQnLFxuICAnaXRhbGljJyxcbiAgJ3VuZGVybGluZScsXG4gICdzdHJpa2V0aHJvdWdoJyxcbiAgJ2NvZGUnLFxuICAnYnVsbGV0ZWQtbGlzdCcsXG4gICdudW1iZXJlZC1saXN0JyxcbiAgJ2ltYWdlJyxcbiAgJ21hdGgnLFxuICAnbGFuZ3VhZ2VDaGFyYWN0ZXJzJyxcbiAgJ3RleHQtYWxpZ24nLFxuICAndGFibGUnLFxuICAndmlkZW8nLFxuICAnYXVkaW8nLFxuICAncmVzcG9uc2VBcmVhJyxcbiAgJ3N1cGVyc2NyaXB0JyxcbiAgJ3N1YnNjcmlwdCcsXG4gICdjc3MnLFxuICAnaDMnLFxuICAndW5kbycsXG4gICdyZWRvJyxcbl07XG5cbmNvbnN0IGNzc1ZhcmlhYmxlcyA9IHtcbiAgJy0td2hpdGUnOiAnI2ZmZicsXG4gICctLWJsYWNrJzogJyMyZTJiMjknLFxuICAnLS1ibGFjay1jb250cmFzdCc6ICcjMTEwZjBlJyxcbiAgJy0tZ3JheS0xJzogJ3JnYmEoNjEsIDM3LCAyMCwgLjA1KScsXG4gICctLWdyYXktMic6ICdyZ2JhKDYxLCAzNywgMjAsIC4wOCknLFxuICAnLS1ncmF5LTMnOiAncmdiYSg2MSwgMzcsIDIwLCAuMTIpJyxcbiAgJy0tZ3JheS00JzogJ3JnYmEoNTMsIDM4LCAyOCwgLjMpJyxcbiAgJy0tZ3JheS01JzogJ3JnYmEoMjgsIDI1LCAyMywgLjYpJyxcbiAgJy0tZ3JlZW4nOiAnIzIyYzU1ZScsXG4gICctLXB1cnBsZSc6ICcjNmEwMGY1JyxcbiAgJy0tcHVycGxlLWNvbnRyYXN0JzogJyM1ODAwY2MnLFxuICAnLS1wdXJwbGUtbGlnaHQnOiAncmdiYSg4OCwgNSwgMjU1LCAuMDUpJyxcbiAgJy0teWVsbG93LWNvbnRyYXN0JzogJyNmYWNjMTUnLFxuICAnLS15ZWxsb3cnOiAncmdiYSgyNTAsIDIwNCwgMjEsIC40KScsXG4gICctLXllbGxvdy1saWdodCc6ICcjZmZmYWU1JyxcbiAgJy0tcmVkJzogJyNmZjVjMzMnLFxuICAnLS1yZWQtbGlnaHQnOiAnI2ZmZWJlNScsXG4gICctLXNoYWRvdyc6IGAwcHggMTJweCAzM3B4IDBweCByZ2JhKDAsIDAsIDAsIC4wNiksXG4gICAgICAgICAgICAgICAwcHggMy42MThweCA5Ljk0OXB4IDBweCByZ2JhKDAsIDAsIDAsIC4wNClgLFxufTtcblxuZXhwb3J0IGNvbnN0IEVkaXRhYmxlSHRtbCA9IChwcm9wcykgPT4ge1xuICBjb25zdCB7IHNob3dQYXJhZ3JhcGhzLCBzZXBhcmF0ZVBhcmFncmFwaHMgfSA9IHByb3BzLnBsdWdpblByb3BzIHx8IHt9O1xuICBjb25zdCBbcGVuZGluZ0ltYWdlcywgc2V0UGVuZGluZ0ltYWdlc10gPSB1c2VTdGF0ZShbXSk7XG4gIGNvbnN0IFtzY2hlZHVsZWQsIHNldFNjaGVkdWxlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IHsgY2xhc3NlcywgdG9vbGJhck9wdHMgfSA9IHByb3BzO1xuXG4gIGNvbnN0IHRvb2xiYXJPcHRzVG9Vc2UgPSB7XG4gICAgLi4uZGVmYXVsdFRvb2xiYXJPcHRzLFxuICAgIC4uLnRvb2xiYXJPcHRzLFxuICB9O1xuXG4gIGNvbnN0IGFjdGl2ZVBsdWdpbnNUb1VzZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGxldCB7IGN1c3RvbVBsdWdpbnMgfSA9IHByb3BzLnBsdWdpblByb3BzIHx8IHt9O1xuXG4gICAgY3VzdG9tUGx1Z2lucyA9IGN1c3RvbVBsdWdpbnMgfHwgW107XG5cbiAgICByZXR1cm4gYnVpbGRFeHRlbnNpb25zKHByb3BzLmFjdGl2ZVBsdWdpbnMsIGN1c3RvbVBsdWdpbnMsIHtcbiAgICAgIG1hdGg6IHt9LFxuICAgICAgdGV4dEFsaWduOiB7fSxcbiAgICAgIGh0bWw6IHt9LFxuICAgICAgZXh0cmFDU1NSdWxlczogcHJvcHMuZXh0cmFDU1NSdWxlcyB8fCB7fSxcbiAgICAgIGltYWdlOiB7fSxcbiAgICAgIHRvb2xiYXI6IHt9LFxuICAgICAgdGFibGU6IHt9LFxuICAgICAgcmVzcG9uc2VBcmVhOiB7XG4gICAgICAgIHR5cGU6IHByb3BzLnJlc3BvbnNlQXJlYVByb3BzPy50eXBlLFxuICAgICAgfSxcbiAgICAgIGxhbmd1YWdlQ2hhcmFjdGVyczogcHJvcHMubGFuZ3VhZ2VDaGFyYWN0ZXJzUHJvcHMsXG4gICAgICBrZXlQYWRDaGFyYWN0ZXJSZWY6IHt9LFxuICAgICAgc2V0S2V5cGFkSW50ZXJhY3Rpb246IHt9LFxuICAgICAgbWVkaWE6IHt9LFxuICAgIH0pO1xuICB9LCBbcHJvcHNdKTtcblxuICBjb25zdCBleHRlbnNpb25zID0gW1xuICAgIFRleHRTdHlsZUtpdCxcbiAgICBDaGFyYWN0ZXJDb3VudC5jb25maWd1cmUoe1xuICAgICAgbGltaXQ6IHByb3BzLmNoYXJhY3RlcnNMaW1pdCxcbiAgICB9KSxcbiAgICBTdGFydGVyS2l0LFxuICAgIEV4dGVuZGVkVGFibGUsXG4gICAgVGFibGVSb3csXG4gICAgVGFibGVIZWFkZXIsXG4gICAgVGFibGVDZWxsLFxuICAgIFJlc3BvbnNlQXJlYUV4dGVuc2lvbixcbiAgICBFeHBsaWNpdENvbnN0cnVjdGVkUmVzcG9uc2VOb2RlLmNvbmZpZ3VyZShwcm9wcy5yZXNwb25zZUFyZWFQcm9wcyksXG4gICAgRHJhZ0luVGhlQmxhbmtOb2RlLmNvbmZpZ3VyZShwcm9wcy5yZXNwb25zZUFyZWFQcm9wcyksXG4gICAgSW5saW5lRHJvcGRvd25Ob2RlLmNvbmZpZ3VyZShwcm9wcy5yZXNwb25zZUFyZWFQcm9wcyksXG4gICAgTWF0aE5vZGUuY29uZmlndXJlKHtcbiAgICAgIHRvb2xiYXJPcHRzOiB0b29sYmFyT3B0c1RvVXNlLFxuICAgIH0pLFxuICAgIFN1YlNjcmlwdCxcbiAgICBTdXBlclNjcmlwdCxcbiAgICBUZXh0QWxpZ24uY29uZmlndXJlKHtcbiAgICAgIHR5cGVzOiBbJ2hlYWRpbmcnLCAncGFyYWdyYXBoJ10sXG4gICAgICBhbGlnbm1lbnRzOiBbJ2xlZnQnLCAncmlnaHQnLCAnY2VudGVyJ10sXG4gICAgfSksXG4gICAgSW1hZ2UsXG4gICAgSW1hZ2VVcGxvYWROb2RlLmNvbmZpZ3VyZSh7XG4gICAgICB0b29sYmFyT3B0czogdG9vbGJhck9wdHNUb1VzZSxcbiAgICAgIGltYWdlSGFuZGxpbmc6IHtcbiAgICAgICAgZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9uczogcHJvcHMuZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9ucyxcbiAgICAgICAgb25Eb25lOiAoKSA9PiBwcm9wcy5vbkRvbmU/LihlZGl0b3IuZ2V0SFRNTCgpKSxcbiAgICAgICAgb25EZWxldGU6XG4gICAgICAgICAgcHJvcHMuaW1hZ2VTdXBwb3J0ICYmXG4gICAgICAgICAgcHJvcHMuaW1hZ2VTdXBwb3J0LmRlbGV0ZSAmJlxuICAgICAgICAgICgobm9kZSwgZG9uZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyBzcmMgfSA9IG5vZGUuYXR0cnM7XG5cbiAgICAgICAgICAgIHByb3BzLmltYWdlU3VwcG9ydC5kZWxldGUoc3JjLCAoZSkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBuZXdQZW5kaW5nSW1hZ2VzID0gcGVuZGluZ0ltYWdlcy5maWx0ZXIoKGltZykgPT4gaW1nLmtleSAhPT0gbm9kZS5rZXkpO1xuICAgICAgICAgICAgICBjb25zdCBuZXdTdGF0ZSA9IHtcbiAgICAgICAgICAgICAgICBwZW5kaW5nSW1hZ2VzOiBuZXdQZW5kaW5nSW1hZ2VzLFxuICAgICAgICAgICAgICAgIHNjaGVkdWxlZDogc2NoZWR1bGVkICYmIG5ld1BlbmRpbmdJbWFnZXMubGVuZ3RoID09PSAwID8gZmFsc2UgOiBzY2hlZHVsZWQsXG4gICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgc2V0UGVuZGluZ0ltYWdlcyhuZXdTdGF0ZS5wZW5kaW5nSW1hZ2VzKTtcbiAgICAgICAgICAgICAgc2V0U2NoZWR1bGVkKG5ld1N0YXRlLnNjaGVkdWxlZCk7XG4gICAgICAgICAgICAgIGRvbmUoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0pLFxuICAgICAgICBpbnNlcnRJbWFnZVJlcXVlc3RlZDpcbiAgICAgICAgICBwcm9wcy5pbWFnZVN1cHBvcnQgJiZcbiAgICAgICAgICAoKGFkZGVkSW1hZ2UsIGdldEhhbmRsZXIpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG9uRmluaXNoID0gKHJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgICBsZXQgY2I7XG5cbiAgICAgICAgICAgICAgaWYgKHNjaGVkdWxlZCAmJiByZXN1bHQpIHtcbiAgICAgICAgICAgICAgICAvLyBmaW5pc2ggZWRpdGluZyBvbmx5IG9uIHN1Y2Nlc3NcbiAgICAgICAgICAgICAgICBjYiA9IHByb3BzLm9uQ2hhbmdlO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgY29uc3QgbmV3UGVuZGluZ0ltYWdlcyA9IHBlbmRpbmdJbWFnZXMuZmlsdGVyKChpbWcpID0+IGltZy5rZXkgIT09IGFkZGVkSW1hZ2Uua2V5KTtcbiAgICAgICAgICAgICAgY29uc3QgbmV3U3RhdGUgPSB7XG4gICAgICAgICAgICAgICAgcGVuZGluZ0ltYWdlczogbmV3UGVuZGluZ0ltYWdlcyxcbiAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICBpZiAobmV3UGVuZGluZ0ltYWdlcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgICAgICBuZXdTdGF0ZS5zY2hlZHVsZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIHNldFBlbmRpbmdJbWFnZXMobmV3U3RhdGUucGVuZGluZ0ltYWdlcyk7XG4gICAgICAgICAgICAgIHNldFNjaGVkdWxlZChuZXdTdGF0ZS5zY2hlZHVsZWQpO1xuICAgICAgICAgICAgICBjYj8uKGVkaXRvci5nZXRIVE1MKCkpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGNvbnN0IGNhbGxiYWNrID0gKCkgPT4ge1xuICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICogVGhlIGhhbmRsZXIgaXMgdGhlIG9iamVjdCB0aHJvdWdoIHdoaWNoIHRoZSBvdXRlciBjb250ZXh0XG4gICAgICAgICAgICAgICAqIGNvbW11bmljYXRlcyBmaWxlIHVwbG9hZCBldmVudHMgbGlrZTogZmlsZUNob3NlbiwgY2FuY2VsLCBwcm9ncmVzc1xuICAgICAgICAgICAgICAgKi9cbiAgICAgICAgICAgICAgY29uc3QgaGFuZGxlciA9IGdldEhhbmRsZXIob25GaW5pc2gpO1xuICAgICAgICAgICAgICBwcm9wcy5pbWFnZVN1cHBvcnQuYWRkKGhhbmRsZXIpO1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgc2V0UGVuZGluZ0ltYWdlcyhbLi4ucGVuZGluZ0ltYWdlcywgYWRkZWRJbWFnZV0pO1xuICAgICAgICAgICAgY2FsbGJhY2soKTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgbWF4SW1hZ2VXaWR0aDogcHJvcHMubWF4SW1hZ2VXaWR0aCxcbiAgICAgICAgbWF4SW1hZ2VIZWlnaHQ6IHByb3BzLm1heEltYWdlSGVpZ2h0LFxuICAgICAgfSxcbiAgICAgIGxpbWl0OiAzLFxuICAgIH0pLFxuICAgIE1lZGlhLmNvbmZpZ3VyZSh7XG4gICAgICB1cGxvYWRTb3VuZFN1cHBvcnQ6IHByb3BzLnVwbG9hZFNvdW5kU3VwcG9ydCxcbiAgICB9KSxcbiAgICBDU1NNYXJrLmNvbmZpZ3VyZSh7XG4gICAgICBleHRyYUNTU1J1bGVzOiBwcm9wcy5leHRyYUNTU1J1bGVzLFxuICAgIH0pLFxuICBdO1xuXG4gIGNvbnN0IGVkaXRvciA9IHVzZUVkaXRvcih7XG4gICAgZXh0ZW5zaW9ucyxcbiAgICBpbW1lZGlhdGVseVJlbmRlcjogZmFsc2UsXG4gICAgZWRpdG9yUHJvcHM6IHtcbiAgICAgIGhhbmRsZUtleURvd24odmlldywgZXZlbnQpIHtcbiAgICAgICAgaWYgKHByb3BzLm9uS2V5RG93bikge1xuICAgICAgICAgIHJldHVybiBwcm9wcy5vbktleURvd24oZXZlbnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gUmV0dXJuIGZhbHNlIHRvIGxldCBkZWZhdWx0IGJlaGF2aW9yIGNvbnRpbnVlXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH0sXG4gICAgfSxcbiAgICBlZGl0YWJsZTogIXByb3BzLmRpc2FibGVkLFxuICAgIGNvbnRlbnQ6IHByb3BzLm1hcmt1cCxcbiAgICBvblVwZGF0ZTogKHsgZWRpdG9yLCB0cmFuc2FjdGlvbiB9KSA9PiB0cmFuc2FjdGlvbi5pc0RvbmUgJiYgcHJvcHMub25DaGFuZ2U/LihlZGl0b3IuZ2V0SFRNTCgpKSxcbiAgICBvbkJsdXI6ICh7IGVkaXRvciB9KSA9PiB7XG4gICAgICBpZiAodG9vbGJhck9wdHNUb1VzZS5kb25lT24gPT09ICdibHVyJykge1xuICAgICAgICBwcm9wcy5vbkRvbmU/LihlZGl0b3IuZ2V0SFRNTCgpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHByb3BzLm9uQ2hhbmdlPy4oZWRpdG9yLmdldEhUTUwoKSk7XG4gICAgICB9XG4gICAgfSxcbiAgfSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBlZGl0b3I/LnNldEVkaXRhYmxlKCFwcm9wcy5kaXNhYmxlZCk7XG4gIH0sIFtwcm9wcy5kaXNhYmxlZCwgZWRpdG9yXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIWVkaXRvcikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy5tYXJrdXAgIT09IGVkaXRvci5nZXRIVE1MKCkpIHtcbiAgICAgIGVkaXRvci5jb21tYW5kcy5zZXRDb250ZW50KHByb3BzLm1hcmt1cCwgZmFsc2UpOyAvLyBmYWxzZSA9IGRvbuKAmXQgZW1pdCB1cGRhdGVcbiAgICB9XG4gIH0sIFtwcm9wcy5tYXJrdXAsIGVkaXRvcl0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgT2JqZWN0LmVudHJpZXMoY3NzVmFyaWFibGVzKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShrZXksIHZhbHVlKTtcbiAgICB9KTtcbiAgfSwgW10pO1xuXG4gIGNvbnN0IGVkaXRvclN0YXRlID0gdXNlRWRpdG9yU3RhdGUoe1xuICAgIGVkaXRvcixcbiAgICBzZWxlY3RvcjogKGN0eCkgPT4gKHtcbiAgICAgIGlzRm9jdXNlZDogY3R4LmVkaXRvcj8uaXNGb2N1c2VkLFxuICAgIH0pLFxuICB9KTtcblxuICBjb25zdCBzaXplU3R5bGUgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCB7IG1pbldpZHRoLCB3aWR0aCwgbWF4V2lkdGgsIG1pbkhlaWdodCwgaGVpZ2h0LCBtYXhIZWlnaHQgfSA9IHByb3BzO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHdpZHRoOiB2YWx1ZVRvU2l6ZSh3aWR0aCksXG4gICAgICBtaW5XaWR0aDogdmFsdWVUb1NpemUobWluV2lkdGgpLFxuICAgICAgbWF4V2lkdGg6IHZhbHVlVG9TaXplKG1heFdpZHRoKSxcbiAgICAgIGhlaWdodDogdmFsdWVUb1NpemUoaGVpZ2h0KSxcbiAgICAgIG1pbkhlaWdodDogdmFsdWVUb1NpemUobWluSGVpZ2h0KSxcbiAgICAgIG1heEhlaWdodDogdmFsdWVUb1NpemUobWF4SGVpZ2h0KSxcbiAgICB9O1xuICB9LCBbcHJvcHNdKTtcblxuICByZXR1cm4gKFxuICAgIDxFZGl0b3JDb250YWluZXJcbiAgICAgIHsuLi57XG4gICAgICAgIC4uLnByb3BzLFxuICAgICAgICBhY3RpdmVQbHVnaW5zOiBhY3RpdmVQbHVnaW5zVG9Vc2UsXG4gICAgICAgIHRvb2xiYXJPcHRzOiB0b29sYmFyT3B0c1RvVXNlLFxuICAgICAgfX1cbiAgICAgIGVkaXRvclN0YXRlPXtlZGl0b3JTdGF0ZX1cbiAgICAgIGVkaXRvcj17ZWRpdG9yfVxuICAgID5cbiAgICAgIHtlZGl0b3IgJiYgKFxuICAgICAgICA8RWRpdG9yQ29udGVudFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBtaW5IZWlnaHQ6IHNpemVTdHlsZS5taW5IZWlnaHQsXG4gICAgICAgICAgICBoZWlnaHQ6IHNpemVTdHlsZS5oZWlnaHQsXG4gICAgICAgICAgICBtYXhIZWlnaHQ6IHNpemVTdHlsZS5tYXhIZWlnaHQsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZXMoXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIFtjbGFzc2VzLnNob3dQYXJhZ3JhcGhdOiBzaG93UGFyYWdyYXBocyAmJiAhc2hvd1BhcmFncmFwaHMuZGlzYWJsZWQsXG4gICAgICAgICAgICAgIFtjbGFzc2VzLnNlcGFyYXRlUGFyYWdyYXBoXTogc2VwYXJhdGVQYXJhZ3JhcGhzICYmICFzZXBhcmF0ZVBhcmFncmFwaHMuZGlzYWJsZWQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgY2xhc3Nlcy5yb290LFxuICAgICAgICAgICl9XG4gICAgICAgICAgZWRpdG9yPXtlZGl0b3J9XG4gICAgICAgIC8+XG4gICAgICApfVxuICAgIDwvRWRpdG9yQ29udGFpbmVyPlxuICApO1xufTtcblxuY29uc3QgU3R5bGVkRWRpdG9yID0gd2l0aFN0eWxlcyh7XG4gIHJvb3Q6IHtcbiAgICBvdXRsaW5lOiAnbm9uZSAhaW1wb3J0YW50JyxcbiAgICAnJiAuUHJvc2VNaXJyb3InOiB7XG4gICAgICBwYWRkaW5nOiAnNXB4JyxcbiAgICAgIG1heEhlaWdodDogJzUwMHB4JyxcbiAgICAgIG91dGxpbmU6ICdub25lICFpbXBvcnRhbnQnLFxuICAgICAgcG9zaXRpb246ICdpbml0aWFsJyxcbiAgICAgICcmID4gcCc6IHtcbiAgICAgICAgbWFyZ2luOiAnMCcsXG4gICAgICB9LFxuICAgIH0sXG4gIH0sXG4gIHNob3dQYXJhZ3JhcGg6IHtcbiAgICAnJiAuUHJvc2VNaXJyb3InOiB7XG4gICAgICAvLyBhIHAgdGhhdCBoYXMgYSBwIGFmdGVyIGl0XG4gICAgICAnJiA+IHA6aGFzKCsgcCk6OmFmdGVyJzoge1xuICAgICAgICBkaXNwbGF5OiAnYmxvY2snLFxuICAgICAgICBjb250ZW50OiAnXCLCtlwiJyxcbiAgICAgICAgZm9udFNpemU6ICcxZW0nLFxuICAgICAgICBjb2xvcjogJyMxNDZFQjMnLFxuICAgICAgfSxcbiAgICB9LFxuICB9LFxuICBzZXBhcmF0ZVBhcmFncmFwaDoge1xuICAgICcmIC5Qcm9zZU1pcnJvcic6IHtcbiAgICAgIC8vIGEgcCB0aGF0IGhhcyBhIHAgYWZ0ZXIgaXRcbiAgICAgICcmID4gZGl2OmhhcygrIGRpdiknOiB7XG4gICAgICAgIG1hcmdpbkJvdHRvbTogJzFlbScsXG4gICAgICB9LFxuICAgIH0sXG4gIH0sXG59KShFZGl0YWJsZUh0bWwpO1xuXG5leHBvcnQgZGVmYXVsdCBTdHlsZWRFZGl0b3I7XG4iXX0=
|
|
@@ -28,13 +28,12 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
28
28
|
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; }
|
|
29
29
|
|
|
30
30
|
function TiptapContainer(props) {
|
|
31
|
-
var
|
|
31
|
+
var _classNames2;
|
|
32
32
|
|
|
33
33
|
var editor = props.editor,
|
|
34
34
|
disabled = props.disabled,
|
|
35
35
|
classes = props.classes,
|
|
36
36
|
children = props.children,
|
|
37
|
-
disableUnderline = props.disableUnderline,
|
|
38
37
|
disableScrollbar = props.disableScrollbar,
|
|
39
38
|
activePlugins = props.activePlugins,
|
|
40
39
|
toolbarOpts = props.toolbarOpts,
|
|
@@ -46,7 +45,7 @@ function TiptapContainer(props) {
|
|
|
46
45
|
minHeight = props.minHeight,
|
|
47
46
|
height = props.height,
|
|
48
47
|
maxHeight = props.maxHeight;
|
|
49
|
-
var holderNames = (0, _classnames["default"])(classes.editorHolder, (
|
|
48
|
+
var holderNames = (0, _classnames["default"])(classes.editorHolder, (0, _defineProperty2["default"])({}, classes.disabledScrollbar, disableScrollbar));
|
|
50
49
|
(0, _react.useEffect)(function () {
|
|
51
50
|
if (editor && autoFocus) {
|
|
52
51
|
Promise.resolve().then(function () {
|
|
@@ -87,4 +86,4 @@ function TiptapContainer(props) {
|
|
|
87
86
|
var EditorContainer = (0, _styles.withStyles)(_editorContainerStyles["default"])(TiptapContainer);
|
|
88
87
|
var _default = EditorContainer;
|
|
89
88
|
exports["default"] = _default;
|
|
90
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL1RpcHRhcENvbnRhaW5lci5qc3giXSwibmFtZXMiOlsiVGlwdGFwQ29udGFpbmVyIiwicHJvcHMiLCJlZGl0b3IiLCJkaXNhYmxlZCIsImNsYXNzZXMiLCJjaGlsZHJlbiIsImRpc2FibGVTY3JvbGxiYXIiLCJhY3RpdmVQbHVnaW5zIiwidG9vbGJhck9wdHMiLCJyZXNwb25zZUFyZWFQcm9wcyIsImF1dG9Gb2N1cyIsIm1pbldpZHRoIiwid2lkdGgiLCJtYXhXaWR0aCIsIm1pbkhlaWdodCIsImhlaWdodCIsIm1heEhlaWdodCIsImhvbGRlck5hbWVzIiwiZWRpdG9ySG9sZGVyIiwiZGlzYWJsZWRTY3JvbGxiYXIiLCJQcm9taXNlIiwicmVzb2x2ZSIsInRoZW4iLCJjb21tYW5kcyIsImZvY3VzIiwic2l6ZVN0eWxlIiwibm9Cb3JkZXIiLCJlcnJvciIsInJvb3QiLCJjbGFzc05hbWUiLCJub1BhZGRpbmciLCJvbkNoYW5nZSIsIkVkaXRvckNvbnRhaW5lciIsInN0eWxlcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUVBOztBQUNBOztBQUVBOzs7Ozs7QUFFQSxTQUFTQSxlQUFULENBQXlCQyxLQUF6QixFQUFnQztBQUFBOztBQUM5QixNQUNFQyxNQURGLEdBZ0JJRCxLQWhCSixDQUNFQyxNQURGO0FBQUEsTUFFRUMsUUFGRixHQWdCSUYsS0FoQkosQ0FFRUUsUUFGRjtBQUFBLE1BR0VDLE9BSEYsR0FnQklILEtBaEJKLENBR0VHLE9BSEY7QUFBQSxNQUlFQyxRQUpGLEdBZ0JJSixLQWhCSixDQUlFSSxRQUpGO0FBQUEsTUFLRUMsZ0JBTEYsR0FnQklMLEtBaEJKLENBS0VLLGdCQUxGO0FBQUEsTUFNRUMsYUFORixHQWdCSU4sS0FoQkosQ0FNRU0sYUFORjtBQUFBLE1BT0VDLFdBUEYsR0FnQklQLEtBaEJKLENBT0VPLFdBUEY7QUFBQSxNQVFFQyxpQkFSRixHQWdCSVIsS0Fo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RWZmZWN0LCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IGNsYXNzTmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQgeyB3aXRoU3R5bGVzIH0gZnJvbSAnQG1hdGVyaWFsLXVpL2NvcmUvc3R5bGVzJztcblxuaW1wb3J0IHN0eWxlcyBmcm9tICcuLi9zdHlsZXMvZWRpdG9yQ29udGFpbmVyU3R5bGVzJztcbmltcG9ydCB7IHZhbHVlVG9TaXplIH0gZnJvbSAnLi4vdXRpbHMvc2l6ZSc7XG5cbmltcG9ydCBTdHlsZWRNZW51QmFyIGZyb20gJy4vTWVudUJhcic7XG5cbmZ1bmN0aW9uIFRpcHRhcENvbnRhaW5lcihwcm9wcykge1xuICBjb25zdCB7XG4gICAgZWRpdG9yLFxuICAgIGRpc2FibGVkLFxuICAgIGNsYXNzZXMsXG4gICAgY2hpbGRyZW4sXG4gICAgZGlzYWJsZVNjcm9sbGJhcixcbiAgICBhY3RpdmVQbHVnaW5zLFxuICAgIHRvb2xiYXJPcHRzLFxuICAgIHJlc3BvbnNlQXJlYVByb3BzLFxuICAgIGF1dG9Gb2N1cyxcbiAgICBtaW5XaWR0aCxcbiAgICB3aWR0aCxcbiAgICBtYXhXaWR0aCxcbiAgICBtaW5IZWlnaHQsXG4gICAgaGVpZ2h0LFxuICAgIG1heEhlaWdodCxcbiAgfSA9IHByb3BzO1xuXG4gIGNvbnN0IGhvbGRlck5hbWVzID0gY2xhc3NOYW1lcyhjbGFzc2VzLmVkaXRvckhvbGRlciwge1xuICAgIFtjbGFzc2VzLmRpc2FibGVkU2Nyb2xsYmFyXTogZGlzYWJsZVNjcm9sbGJhcixcbiAgfSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoZWRpdG9yICYmIGF1dG9Gb2N1cykge1xuICAgICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB7XG4gICAgICAgIGVkaXRvci5jb21tYW5kcy5mb2N1cygnZW5kJyk7XG4gICAgICB9KTtcbiAgICB9XG4gIH0sIFtlZGl0b3IsIGF1dG9Gb2N1c10pO1xuXG4gIGNvbnN0IHNpemVTdHlsZSA9IHVzZU1lbW8oXG4gICAgKCkgPT4gKHtcbiAgICAgIHdpZHRoOiB2YWx1ZVRvU2l6ZSh3aWR0aCksXG4gICAgICBtaW5XaWR0aDogdmFsdWVUb1NpemUobWluV2lkdGgpLFxuICAgICAgbWF4V2lkdGg6IHZhbHVlVG9TaXplKG1heFdpZHRoKSxcbiAgICAgIGhlaWdodDogdmFsdWVUb1NpemUoaGVpZ2h0KSxcbiAgICAgIG1pbkhlaWdodDogdmFsdWVUb1NpemUobWluSGVpZ2h0KSxcbiAgICAgIG1heEhlaWdodDogdmFsdWVUb1NpemUobWF4SGVpZ2h0KSxcbiAgICB9KSxcbiAgICBbbWluV2lkdGgsIHdpZHRoLCBtYXhXaWR0aCwgbWluSGVpZ2h0LCBoZWlnaHQsIG1heEhlaWdodF0sXG4gICk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZXMoXG4gICAgICAgIHtcbiAgICAgICAgICBbY2xhc3Nlcy5ub0JvcmRlcl06IHRvb2xiYXJPcHRzICYmIHRvb2xiYXJPcHRzLm5vQm9yZGVyLFxuICAgICAgICAgIFtjbGFzc2VzLmVycm9yXTogdG9vbGJhck9wdHMgJiYgdG9vbGJhck9wdHMuZXJyb3IsXG4gICAgICAgIH0sXG4gICAgICAgIGNsYXNzZXMucm9vdCxcbiAgICAgICAgcHJvcHMuY2xhc3NOYW1lLFxuICAgICAgKX1cbiAgICAgIHN0eWxlPXt7IHdpZHRoOiBzaXplU3R5bGUud2lkdGgsIG1pbldpZHRoOiBzaXplU3R5bGUubWluV2lkdGgsIG1heFdpZHRoOiBzaXplU3R5bGUubWF4V2lkdGggfX1cbiAgICA+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT17aG9sZGVyTmFtZXN9PlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWVzKFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBbY2xhc3Nlcy5ub1BhZGRpbmddOiB0b29sYmFyT3B0cyAmJiB0b29sYmFyT3B0cy5ub1BhZGRpbmcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgY2xhc3Nlcy5jaGlsZHJlbixcbiAgICAgICAgICApfVxuICAgICAgICA+XG4gICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICB7ZWRpdG9yICYmIChcbiAgICAgICAgPFN0eWxlZE1lbnVCYXJcbiAgICAgICAgICBlZGl0b3I9e2VkaXRvcn1cbiAgICAgICAgICByZXNwb25zZUFyZWFQcm9wcz17cmVzcG9uc2VBcmVhUHJvcHN9XG4gICAgICAgICAgdG9vbGJhck9wdHM9e3Rvb2xiYXJPcHRzfVxuICAgICAgICAgIGFjdGl2ZVBsdWdpbnM9e2FjdGl2ZVBsdWdpbnN9XG4gICAgICAgICAgb25DaGFuZ2U9e3Byb3BzLm9uQ2hhbmdlfVxuICAgICAgICAvPlxuICAgICAgKX1cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuY29uc3QgRWRpdG9yQ29udGFpbmVyID0gd2l0aFN0eWxlcyhzdHlsZXMpKFRpcHRhcENvbnRhaW5lcik7XG5cbmV4cG9ydCBkZWZhdWx0IEVkaXRvckNvbnRhaW5lcjtcbiJdfQ==
|