@pie-lib/editable-html-tip-tap 1.0.16 → 1.0.18
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 +1 -1
- package/lib/components/CharacterPicker.js.map +1 -0
- package/lib/components/EditableHtml.js +1 -3
- package/lib/components/EditableHtml.js.map +1 -0
- package/lib/components/MenuBar.js +1 -1
- package/lib/components/MenuBar.js.map +1 -0
- package/lib/components/TiptapContainer.js +1 -1
- package/lib/components/TiptapContainer.js.map +1 -0
- package/lib/components/characters/characterUtils.js +1 -1
- package/lib/components/characters/characterUtils.js.map +1 -0
- package/lib/components/characters/custom-popper.js +1 -1
- package/lib/components/characters/custom-popper.js.map +1 -0
- package/lib/components/common/done-button.js +1 -1
- package/lib/components/common/done-button.js.map +1 -0
- package/lib/components/common/toolbar-buttons.js +1 -1
- package/lib/components/common/toolbar-buttons.js.map +1 -0
- package/lib/components/icons/CssIcon.js +1 -1
- package/lib/components/icons/CssIcon.js.map +1 -0
- package/lib/components/icons/RespArea.js +1 -1
- package/lib/components/icons/RespArea.js.map +1 -0
- package/lib/components/icons/TableIcons.js +1 -1
- package/lib/components/icons/TableIcons.js.map +1 -0
- package/lib/components/icons/TextAlign.js +1 -1
- package/lib/components/icons/TextAlign.js.map +1 -0
- package/lib/components/image/AltDialog.js +1 -1
- package/lib/components/image/AltDialog.js.map +1 -0
- package/lib/components/image/ImageToolbar.js +1 -1
- package/lib/components/image/ImageToolbar.js.map +1 -0
- package/lib/components/image/InsertImageHandler.js +1 -1
- package/lib/components/image/InsertImageHandler.js.map +1 -0
- package/lib/components/media/MediaDialog.js +1 -1
- package/lib/components/media/MediaDialog.js.map +1 -0
- package/lib/components/media/MediaToolbar.js +1 -1
- package/lib/components/media/MediaToolbar.js.map +1 -0
- package/lib/components/media/MediaWrapper.js +1 -1
- package/lib/components/media/MediaWrapper.js.map +1 -0
- package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js +1 -1
- package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js.map +1 -0
- package/lib/components/respArea/DragInTheBlank/choice.js +1 -1
- package/lib/components/respArea/DragInTheBlank/choice.js.map +1 -0
- package/lib/components/respArea/ExplicitConstructedResponse.js +1 -1
- package/lib/components/respArea/ExplicitConstructedResponse.js.map +1 -0
- package/lib/components/respArea/InlineDropdown.js +1 -1
- package/lib/components/respArea/InlineDropdown.js.map +1 -0
- package/lib/components/respArea/ToolbarIcon.js +1 -1
- package/lib/components/respArea/ToolbarIcon.js.map +1 -0
- package/lib/constants.js +1 -1
- package/lib/constants.js.map +1 -0
- package/lib/extensions/component.js +1 -1
- package/lib/extensions/component.js.map +1 -0
- package/lib/extensions/css.js +1 -1
- package/lib/extensions/css.js.map +1 -0
- package/lib/extensions/custom-toolbar-wrapper.js +1 -1
- package/lib/extensions/custom-toolbar-wrapper.js.map +1 -0
- package/lib/extensions/extended-table.js +1 -1
- package/lib/extensions/extended-table.js.map +1 -0
- package/lib/extensions/image.js +1 -1
- package/lib/extensions/image.js.map +1 -0
- package/lib/extensions/index.js +1 -1
- package/lib/extensions/index.js.map +1 -0
- package/lib/extensions/math.js +1 -1
- package/lib/extensions/math.js.map +1 -0
- package/lib/extensions/media.js +1 -1
- package/lib/extensions/media.js.map +1 -0
- package/lib/extensions/responseArea.js +1 -1
- package/lib/extensions/responseArea.js.map +1 -0
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -0
- package/lib/styles/editorContainerStyles.js +1 -1
- package/lib/styles/editorContainerStyles.js.map +1 -0
- package/lib/theme.js +1 -1
- package/lib/theme.js.map +1 -0
- package/lib/utils/size.js +1 -1
- package/lib/utils/size.js.map +1 -0
- package/package.json +1 -1
- package/src/components/EditableHtml.jsx +0 -1
package/lib/extensions/css.js
CHANGED
|
@@ -249,4 +249,4 @@ var CSSMark = _core.Mark.create({
|
|
|
249
249
|
});
|
|
250
250
|
|
|
251
251
|
exports.CSSMark = CSSMark;
|
|
252
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHRlbnNpb25zL2Nzcy5qcyJdLCJuYW1lcyI6WyJyZW1vdmVEaWFsb2dzIiwicHJldkRpYWxvZ3MiLCJkb2N1bWVudCIsInF1ZXJ5U2VsZWN0b3JBbGwiLCJmb3JFYWNoIiwicyIsInJlbW92ZSIsImluc2VydERpYWxvZyIsImVkaXRvciIsImNhbGxiYWNrIiwib3B0cyIsInNlbGVjdGVkVGV4dCIsInBhcmVudE5vZGUiLCJlZGl0b3JET00iLCJvcHRpb25zIiwiZWxlbWVudCIsIm5ld0VsIiwiY3JlYXRlRWxlbWVudCIsInNlbGVjdGlvbiIsInN0YXRlIiwiY2xhc3NOYW1lIiwicG9wb3ZlckVsIiwiY2xvc2VQb3BPdmVyIiwiZmlyc3RDYWxsTWFkZSIsImxpc3RlbmVyIiwiZSIsImZvY3VzSXNJbk1vZGFscyIsImNvbnRhaW5zIiwidGFyZ2V0IiwiZm9jdXNJc0luRWRpdG9yIiwiaGFuZGxlQ2xvc2UiLCJ1bmRlZmluZWQiLCJib2R5IiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsImhhbmRsZUNoYW5nZSIsIm5hbWUiLCJwYXJlbnROb2RlQ2xhc3MiLCJhdHRycyIsImNyZWF0ZUhUTUwiLCJodG1sIiwidGFnIiwib2JqZWN0IiwidGV4dCIsInNsaWNlIiwiJGFuY2hvciIsInRleHRPZmZzZXQiLCIkaGVhZCIsImVsIiwiYmFja2dyb3VuZCIsImhlaWdodCIsInBhZGRpbmciLCJvdmVyZmxvdyIsImRpc3BsYXkiLCJmbGV4RmxvdyIsIm5hbWVzIiwibWFwIiwiaSIsIm1hcmdpblJpZ2h0IiwiX19odG1sIiwiUmVhY3RET00iLCJyZW5kZXIiLCJjdXJzb3JJdGVtIiwidmlldyIsIm5vZGVET00iLCJmcm9tIiwiY3Vyc29yTm9kZSIsImJvZHlSZWN0IiwicGFyZW50RWxlbWVudCIsImdldEJvdW5kaW5nQ2xpZW50UmVjdCIsImJvdW5kUmVjdCIsImFwcGVuZENoaWxkIiwic3R5bGUiLCJtYXhXaWR0aCIsInBvc2l0aW9uIiwidG9wIiwiekluZGV4IiwibGVmdFZhbHVlIiwibGVmdCIsIk1hdGgiLCJhYnMiLCJvZmZzZXRXaWR0aCIsInJpZ2h0VmFsdWUiLCJ4IiwibGVmdEFsaWduZWRXaWR0aCIsInJpZ2h0IiwicmlnaHRBbGlnbmVkV2lkdGgiLCJhZGRFdmVudExpc3RlbmVyIiwiQ1NTTWFyayIsIk1hcmsiLCJjcmVhdGUiLCJhZGRPcHRpb25zIiwiY2xhc3NlcyIsImFkZEF0dHJpYnV0ZXMiLCJwYXJzZUhUTUwiLCJnZXRBdHRyaWJ1dGUiLCJyZW5kZXJIVE1MIiwiYXR0cmlidXRlcyIsImdldEF0dHJzIiwiY2xzIiwibWF0Y2giLCJmaW5kIiwiaW5jbHVkZXMiLCJIVE1MQXR0cmlidXRlcyIsImFkZENvbW1hbmRzIiwic2V0Q1NTQ2xhc3MiLCJjb21tYW5kcyIsInNldE1hcmsiLCJ1bnNldENTU0NsYXNzIiwidW5zZXRNYXJrIiwib3BlbkNTU0NsYXNzRGlhbG9nIiwiZG9jIiwidGV4dEJldHdlZW4iLCJ0byIsIiRmcm9tIiwibm9kZUFmdGVyIiwiZXh0cmFDU1NSdWxlcyIsImNoYWluIiwiZm9jdXMiLCJydW4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUVPLElBQU1BLGFBQWEsR0FBRyxTQUFoQkEsYUFBZ0IsR0FBTTtBQUNqQyxNQUFNQyxXQUFXLEdBQUdDLFFBQVEsQ0FBQ0MsZ0JBQVQsQ0FBMEIsb0JBQTFCLENBQXBCO0FBRUFGLEVBQUFBLFdBQVcsQ0FBQ0csT0FBWixDQUFvQixVQUFDQyxDQUFEO0FBQUEsV0FBT0EsQ0FBQyxDQUFDQyxNQUFGLEVBQVA7QUFBQSxHQUFwQjtBQUNELENBSk07Ozs7QUFNUCxJQUFNQyxZQUFZLEdBQUcsU0FBZkEsWUFBZSxPQUEwRDtBQUFBLE1BQXZEQyxNQUF1RCxRQUF2REEsTUFBdUQ7QUFBQSxNQUEvQ0MsUUFBK0MsUUFBL0NBLFFBQStDO0FBQUEsTUFBckNDLElBQXFDLFFBQXJDQSxJQUFxQztBQUFBLE1BQS9CQyxZQUErQixRQUEvQkEs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RE9NIGZyb20gJ3JlYWN0LWRvbSc7XG5pbXBvcnQgeyBNYXJrLCBtZXJnZUF0dHJpYnV0ZXMgfSBmcm9tICdAdGlwdGFwL2NvcmUnO1xuaW1wb3J0IExpc3QgZnJvbSAnQG1hdGVyaWFsLXVpL2NvcmUvTGlzdCc7XG5pbXBvcnQgTGlzdEl0ZW0gZnJvbSAnQG1hdGVyaWFsLXVpL2NvcmUvTGlzdEl0ZW0nO1xuXG5leHBvcnQgY29uc3QgcmVtb3ZlRGlhbG9ncyA9ICgpID0+IHtcbiAgY29uc3QgcHJldkRpYWxvZ3MgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcuaW5zZXJ0LWNzcy1kaWFsb2cnKTtcblxuICBwcmV2RGlhbG9ncy5mb3JFYWNoKChzKSA9PiBzLnJlbW92ZSgpKTtcbn07XG5cbmNvbnN0IGluc2VydERpYWxvZyA9ICh7IGVkaXRvciwgY2FsbGJhY2ssIG9wdHMsIHNlbGVjdGVkVGV4dCwgcGFyZW50Tm9kZSB9KSA9PiB7XG4gIGNvbnN0IGVkaXRvckRPTSA9IGVkaXRvci5vcHRpb25zLmVsZW1lbnQ7XG4gIGNvbnN0IG5ld0VsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gIGNvbnN0IHsgc2VsZWN0aW9uIH0gPSBlZGl0b3Iuc3RhdGU7XG5cbiAgcmVtb3ZlRGlhbG9ncygpO1xuXG4gIG5ld0VsLmNsYXNzTmFtZSA9ICdpbnNlcnQtY3NzLWRpYWxvZyc7XG5cbiAgbGV0IHBvcG92ZXJFbDtcblxuICBjb25zdCBjbG9zZVBvcE92ZXIgPSAoKSA9PiB7XG4gICAgaWYgKHBvcG92ZXJFbCkge1xuICAgICAgcG9wb3ZlckVsLnJlbW92ZSgpO1xuICAgIH1cbiAgfTtcblxuICBsZXQgZmlyc3RDYWxsTWFkZSA9IGZhbHNlO1xuXG4gIGNvbnN0IGxpc3RlbmVyID0gKGUpID0+IHtcbiAgICAvLyB0aGlzIHdpbGwgYmUgdHJpZ2dlcmVkIHJpZ2h0IGFmdGVyIHNldHRpbmcgaXQgYmVjYXVzZVxuICAgIC8vIHRoaXMgdG9vbGJhciBpcyBhZGRlZCBvbiB0aGUgbW91c2Vkb3duIGV2ZW50XG4gICAgLy8gc28gcmlnaHQgYWZ0ZXIgbW91c2V1cCwgdGhlIGNsaWNrIHdpbGwgYmUgdHJpZ2dlcmVkXG4gICAgaWYgKGZpcnN0Q2FsbE1hZGUpIHtcbiAgICAgIGNvbnN0IGZvY3VzSXNJbk1vZGFscyA9IG5ld0VsLmNvbnRhaW5zKGUudGFyZ2V0KSB8fCAocG9wb3ZlckVsICYmIHBvcG92ZXJFbC5jb250YWlucyhlLnRhcmdldCkpO1xuICAgICAgY29uc3QgZm9jdXNJc0luRWRpdG9yID0gZWRpdG9yRE9NLmNvbnRhaW5zKGUudGFyZ2V0KTtcblxuICAgICAgaWYgKCEoZm9jdXNJc0luTW9kYWxzIHx8IGZvY3VzSXNJbkVkaXRvcikpIHtcbiAgICAgICAgaGFuZGxlQ2xvc2UoKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgZmlyc3RDYWxsTWFkZSA9IHRydWU7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gKCkgPT4ge1xuICAgIGNhbGxiYWNrKHVuZGVmaW5lZCwgdHJ1ZSk7XG4gICAgbmV3RWwucmVtb3ZlKCk7XG4gICAgY2xvc2VQb3BPdmVyKCk7XG4gICAgZG9jdW1lbnQuYm9keS5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIGxpc3RlbmVyKTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVDaGFuZ2UgPSAobmFtZSkgPT4ge1xuICAgIGNhbGxiYWNrKG5hbWUsIHRydWUpO1xuICAgIG5ld0VsLnJlbW92ZSgpO1xuICAgIGNsb3NlUG9wT3ZlcigpO1xuICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCBsaXN0ZW5lcik7XG4gIH07XG5cbiAgY29uc3QgcGFyZW50Tm9kZUNsYXNzID0gcGFyZW50Tm9kZT8uYXR0cnMuY2xhc3M7XG4gIGNvbnN0IGNyZWF0ZUhUTUwgPSAobmFtZSkgPT4ge1xuICAgIGxldCBodG1sID0gYDxzcGFuIGNsYXNzPVwiJHtuYW1lfVwiPiR7c2VsZWN0ZWRUZXh0fTwvc3Bhbj5gO1xuXG4gICAgaWYgKHBhcmVudE5vZGUpIHtcbiAgICAgIGxldCB0YWcgPSAnc3Bhbic7XG5cbiAgICAgIGlmIChwYXJlbnROb2RlPy5vYmplY3QgPT09ICdpbmxpbmUnKSB7XG4gICAgICAgIHRhZyA9ICdzcGFuJztcbiAgICAgIH1cblxuICAgICAgaWYgKHBhcmVudE5vZGU/Lm9iamVjdCA9PT0gJ2Jsb2NrJykge1xuICAgICAgICB0YWcgPSAnZGl2JztcbiAgICAgIH1cblxuICAgICAgaHRtbCA9IGA8JHt0YWd9IGNsYXNzPVwiJHtwYXJlbnROb2RlQ2xhc3N9XCI+JHtwYXJlbnROb2RlLnRleHQuc2xpY2UoMCwgc2VsZWN0aW9uLiRhbmNob3IudGV4dE9mZnNldCl9JHtodG1sfSR7cGFyZW50Tm9kZS50ZXh0LnNsaWNlKFxuICAgICAgICBzZWxlY3Rpb24uJGhlYWQudGV4dE9mZnNldCxcbiAgICAgICl9PC8ke3RhZ30+YDtcbiAgICB9XG5cbiAgICByZXR1cm4gaHRtbDtcbiAgfTtcblxuICBjb25zdCBlbCA9IChcbiAgICA8ZGl2XG4gICAgICBzdHlsZT17eyBiYWNrZ3JvdW5kOiAnd2hpdGUnLCBoZWlnaHQ6IDUwMCwgcGFkZGluZzogMjAsIG92ZXJmbG93OiAnaGlkZGVuJywgZGlzcGxheTogJ2ZsZXgnLCBmbGV4RmxvdzogJ2NvbHVtbicgfX1cbiAgICA+XG4gICAgICA8aDI+UGxlYXNlIGNob29zZSBhIGNzcyBjbGFzczwvaDI+XG4gICAgICB7cGFyZW50Tm9kZUNsYXNzICYmIDxkaXY+VGhlIGN1cnJlbnQgcGFyZW50IGhhcyB0aGlzIGNsYXNzIHtwYXJlbnROb2RlQ2xhc3N9PC9kaXY+fVxuICAgICAgPExpc3QgY29tcG9uZW50PVwibmF2XCIgc3R5bGU9e3sgb3ZlcmZsb3c6ICdzY3JvbGwnIH19PlxuICAgICAgICB7b3B0cy5uYW1lcy5tYXAoKG5hbWUsIGkpID0+IChcbiAgICAgICAgICA8TGlzdEl0ZW0ga2V5PXtgcnVsZS0ke2l9YH0gYnV0dG9uIG9uQ2xpY2s9eygpID0+IGhhbmRsZUNoYW5nZShuYW1lKX0+XG4gICAgICAgICAgICA8ZGl2IHN0eWxlPXt7IG1hcmdpblJpZ2h0OiAyMCB9fT57bmFtZX08L2Rpdj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUw9e3tcbiAgICAgICAgICAgICAgICBfX2h0bWw6IGNyZWF0ZUhUTUwobmFtZSksXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvTGlzdEl0ZW0+XG4gICAgICAgICkpfVxuICAgICAgPC9MaXN0PlxuICAgIDwvZGl2PlxuICApO1xuXG4gIFJlYWN0RE9NLnJlbmRlcihlbCwgbmV3RWwsICgpID0+IHtcbiAgICBjb25zdCBjdXJzb3JJdGVtID0gZWRpdG9yLnZpZXcubm9kZURPTShlZGl0b3Iuc3RhdGUuc2VsZWN0aW9uLmZyb20pO1xuICAgIGNvbnN0IGN1cnNvck5vZGUgPSBjdXJzb3JJdGVtPy5wYXJlbnROb2RlO1xuXG4gICAgaWYgKGN1cnNvck5vZGUpIHtcbiAgICAgIGNvbnN0IGJvZHlSZWN0ID0gZWRpdG9yRE9NLnBhcmVudEVsZW1lbnQucGFyZW50RWxlbWVudC5wYXJlbnRFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgY29uc3QgYm91bmRSZWN0ID0gY3Vyc29yTm9kZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgICAgZWRpdG9yRE9NLnBhcmVudEVsZW1lbnQucGFyZW50RWxlbWVudC5wYXJlbnRFbGVtZW50LmFwcGVuZENoaWxkKG5ld0VsKTtcblxuICAgICAgbmV3RWwuc3R5bGUubWF4V2lkdGggPSAnNTAwcHgnO1xuICAgICAgbmV3RWwuc3R5bGUucG9zaXRpb24gPSAnYWJzb2x1dGUnO1xuICAgICAgbmV3RWwuc3R5bGUudG9wID0gMDtcbiAgICAgIG5ld0VsLnN0eWxlLnpJbmRleCA9IDk5OTk5O1xuXG4gICAgICBjb25zdCBsZWZ0VmFsdWUgPSBgJHtib3VuZFJlY3QubGVmdCArIE1hdGguYWJzKGJvZHlSZWN0LmxlZnQpICsgY3Vyc29yTm9kZS5vZmZzZXRXaWR0aCArIDEwfXB4YDtcblxuICAgICAgY29uc3QgcmlnaHRWYWx1ZSA9IGAke2JvdW5kUmVjdC54fXB4YDtcblxuICAgICAgbmV3RWwuc3R5bGUubGVmdCA9IGxlZnRWYWx1ZTtcblxuICAgICAgY29uc3QgbGVmdEFsaWduZWRXaWR0aCA9IG5ld0VsLm9mZnNldFdpZHRoO1xuXG4gICAgICBuZXdFbC5zdHlsZS5sZWZ0ID0gJ3Vuc2V0JztcbiAgICAgIG5ld0VsLnN0eWxlLnJpZ2h0ID0gcmlnaHRWYWx1ZTtcblxuICAgICAgY29uc3QgcmlnaHRBbGlnbmVkV2lkdGggPSBuZXdFbC5vZmZzZXRXaWR0aDtcblxuICAgICAgbmV3RWwuc3R5bGUubGVmdCA9ICd1bnNldCc7XG4gICAgICBuZXdFbC5zdHlsZS5yaWdodCA9ICd1bnNldCc7XG5cbiAgICAgIGlmIChsZWZ0QWxpZ25lZFdpZHRoID49IHJpZ2h0QWxpZ25lZFdpZHRoKSB7XG4gICAgICAgIG5ld0VsLnN0eWxlLmxlZnQgPSBsZWZ0VmFsdWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZXdFbC5zdHlsZS5yaWdodCA9IHJpZ2h0VmFsdWU7XG4gICAgICB9XG5cbiAgICAgIGRvY3VtZW50LmJvZHkuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBsaXN0ZW5lcik7XG4gICAgfVxuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBDU1NNYXJrID0gTWFyay5jcmVhdGUoe1xuICBuYW1lOiAnY3NzbWFyaycsXG5cbiAgYWRkT3B0aW9ucygpIHtcbiAgICByZXR1cm4ge1xuICAgICAgY2xhc3NlczogW10sXG4gICAgfTtcbiAgfSxcblxuICBhZGRBdHRyaWJ1dGVzKCkge1xuICAgIHJldHVybiB7XG4gICAgICBjbGFzczoge1xuICAgICAgICBkZWZhdWx0OiBudWxsLFxuICAgICAgICBwYXJzZUhUTUw6IChlbCkgPT4gZWwuZ2V0QXR0cmlidXRlKCdjbGFzcycpLFxuICAgICAgICByZW5kZXJIVE1MOiAoYXR0cmlidXRlcykgPT4ge1xuICAgICAgICAgIGlmICghYXR0cmlidXRlcy5jbGFzcykgcmV0dXJuIHt9O1xuICAgICAgICAgIHJldHVybiB7IGNsYXNzOiBhdHRyaWJ1dGVzLmNsYXNzIH07XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG4gIH0sXG5cbiAgcGFyc2VIVE1MKCkge1xuICAgIC8vIEFueSBzcGFuIHdpdGggYSBjbGFzcyB0aGF0IG1hdGNoZXMgb25lIG9mIGFsbG93ZWQgY2xhc3Nlc1xuICAgIHJldHVybiBbXG4gICAgICB7XG4gICAgICAgIHRhZzogJ3NwYW5bY2xhc3NdJyxcbiAgICAgICAgZ2V0QXR0cnM6IChlbCkgPT4ge1xuICAgICAgICAgIGNvbnN0IGNscyA9IGVsLmdldEF0dHJpYnV0ZSgnY2xhc3MnKSB8fCAnJztcbiAgICAgICAgICBjb25zdCBtYXRjaCA9IHRoaXMub3B0aW9ucy5jbGFzc2VzLmZpbmQoKG5hbWUpID0+IGNscy5pbmNsdWRlcyhuYW1lKSk7XG4gICAgICAgICAgcmV0dXJuIG1hdGNoID8geyBjbGFzczogbWF0Y2ggfSA6IGZhbHNlO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICBdO1xuICB9LFxuXG4gIHJlbmRlckhUTUwoeyBIVE1MQXR0cmlidXRlcyB9KSB7XG4gICAgcmV0dXJuIFsnc3BhbicsIG1lcmdlQXR0cmlidXRlcyhIVE1MQXR0cmlidXRlcyksIDBdO1xuICB9LFxuXG4gIGFkZENvbW1hbmRzKCkge1xuICAgIHJldHVybiB7XG4gICAgICBzZXRDU1NDbGFzczogKGNsYXNzTmFtZSkgPT4gKHsgY29tbWFuZHMgfSkgPT4ge1xuICAgICAgICByZXR1cm4gY29tbWFuZHMuc2V0TWFyayh0aGlzLm5hbWUsIHsgY2xhc3M6IGNsYXNzTmFtZSB9KTtcbiAgICAgIH0sXG5cbiAgICAgIHVuc2V0Q1NTQ2xhc3M6ICgpID0+ICh7IGNvbW1hbmRzIH0pID0+IHtcbiAgICAgICAgcmV0dXJuIGNvbW1hbmRzLnVuc2V0TWFyayh0aGlzLm5hbWUpO1xuICAgICAgfSxcblxuICAgICAgb3BlbkNTU0NsYXNzRGlhbG9nOiAoKSA9PiAoeyBlZGl0b3IgfSkgPT4ge1xuICAgICAgICBpbnNlcnREaWFsb2coe1xuICAgICAgICAgIGVkaXRvcixcbiAgICAgICAgICBzZWxlY3RlZFRleHQ6IGVkaXRvci5zdGF0ZS5kb2MudGV4dEJldHdlZW4oZWRpdG9yLnN0YXRlLnNlbGVjdGlvbi5mcm9tLCBlZGl0b3Iuc3RhdGUuc2VsZWN0aW9uLnRvKSxcbiAgICAgICAgICBwYXJlbnROb2RlOiBlZGl0b3Iuc3RhdGUuc2VsZWN0aW9uLiRmcm9tLm5vZGVBZnRlcixcbiAgICAgICAgICBvcHRzOiB0aGlzLm9wdGlvbnMuZXh0cmFDU1NSdWxlcyxcbiAgICAgICAgICBjYWxsYmFjazogKGNsYXNzTmFtZSkgPT4ge1xuICAgICAgICAgICAgaWYgKGNsYXNzTmFtZSkge1xuICAgICAgICAgICAgICBlZGl0b3JcbiAgICAgICAgICAgICAgICAuY2hhaW4oKVxuICAgICAgICAgICAgICAgIC5mb2N1cygpXG4gICAgICAgICAgICAgICAgLnNldENTU0NsYXNzKGNsYXNzTmFtZSlcbiAgICAgICAgICAgICAgICAucnVuKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICB9LFxuICAgIH07XG4gIH0sXG59KTtcbiJdfQ==
|
|
252
|
+
//# sourceMappingURL=css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/extensions/css.js"],"names":["removeDialogs","prevDialogs","document","querySelectorAll","forEach","s","remove","insertDialog","editor","callback","opts","selectedText","parentNode","editorDOM","options","element","newEl","createElement","selection","state","className","popoverEl","closePopOver","firstCallMade","listener","e","focusIsInModals","contains","target","focusIsInEditor","handleClose","undefined","body","removeEventListener","handleChange","name","parentNodeClass","attrs","createHTML","html","tag","object","text","slice","$anchor","textOffset","$head","el","background","height","padding","overflow","display","flexFlow","names","map","i","marginRight","__html","ReactDOM","render","cursorItem","view","nodeDOM","from","cursorNode","bodyRect","parentElement","getBoundingClientRect","boundRect","appendChild","style","maxWidth","position","top","zIndex","leftValue","left","Math","abs","offsetWidth","rightValue","x","leftAlignedWidth","right","rightAlignedWidth","addEventListener","CSSMark","Mark","create","addOptions","classes","addAttributes","parseHTML","getAttribute","renderHTML","attributes","getAttrs","cls","match","find","includes","HTMLAttributes","addCommands","setCSSClass","commands","setMark","unsetCSSClass","unsetMark","openCSSClassDialog","doc","textBetween","to","$from","nodeAfter","extraCSSRules","chain","focus","run"],"mappings":"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","sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { Mark, mergeAttributes } from '@tiptap/core';\nimport List from '@material-ui/core/List';\nimport ListItem from '@material-ui/core/ListItem';\n\nexport const removeDialogs = () => {\n const prevDialogs = document.querySelectorAll('.insert-css-dialog');\n\n prevDialogs.forEach((s) => s.remove());\n};\n\nconst insertDialog = ({ editor, callback, opts, selectedText, parentNode }) => {\n const editorDOM = editor.options.element;\n const newEl = document.createElement('div');\n const { selection } = editor.state;\n\n removeDialogs();\n\n newEl.className = 'insert-css-dialog';\n\n let popoverEl;\n\n const closePopOver = () => {\n if (popoverEl) {\n popoverEl.remove();\n }\n };\n\n let firstCallMade = false;\n\n const listener = (e) => {\n // this will be triggered right after setting it because\n // this toolbar is added on the mousedown event\n // so right after mouseup, the click will be triggered\n if (firstCallMade) {\n const focusIsInModals = newEl.contains(e.target) || (popoverEl && popoverEl.contains(e.target));\n const focusIsInEditor = editorDOM.contains(e.target);\n\n if (!(focusIsInModals || focusIsInEditor)) {\n handleClose();\n }\n } else {\n firstCallMade = true;\n }\n };\n\n const handleClose = () => {\n callback(undefined, true);\n newEl.remove();\n closePopOver();\n document.body.removeEventListener('click', listener);\n };\n\n const handleChange = (name) => {\n callback(name, true);\n newEl.remove();\n closePopOver();\n document.body.removeEventListener('click', listener);\n };\n\n const parentNodeClass = parentNode?.attrs.class;\n const createHTML = (name) => {\n let html = `<span class=\"${name}\">${selectedText}</span>`;\n\n if (parentNode) {\n let tag = 'span';\n\n if (parentNode?.object === 'inline') {\n tag = 'span';\n }\n\n if (parentNode?.object === 'block') {\n tag = 'div';\n }\n\n html = `<${tag} class=\"${parentNodeClass}\">${parentNode.text.slice(0, selection.$anchor.textOffset)}${html}${parentNode.text.slice(\n selection.$head.textOffset,\n )}</${tag}>`;\n }\n\n return html;\n };\n\n const el = (\n <div\n style={{ background: 'white', height: 500, padding: 20, overflow: 'hidden', display: 'flex', flexFlow: 'column' }}\n >\n <h2>Please choose a css class</h2>\n {parentNodeClass && <div>The current parent has this class {parentNodeClass}</div>}\n <List component=\"nav\" style={{ overflow: 'scroll' }}>\n {opts.names.map((name, i) => (\n <ListItem key={`rule-${i}`} button onClick={() => handleChange(name)}>\n <div style={{ marginRight: 20 }}>{name}</div>\n <div\n dangerouslySetInnerHTML={{\n __html: createHTML(name),\n }}\n />\n </ListItem>\n ))}\n </List>\n </div>\n );\n\n ReactDOM.render(el, newEl, () => {\n const cursorItem = editor.view.nodeDOM(editor.state.selection.from);\n const cursorNode = cursorItem?.parentNode;\n\n if (cursorNode) {\n const bodyRect = editorDOM.parentElement.parentElement.parentElement.getBoundingClientRect();\n const boundRect = cursorNode.getBoundingClientRect();\n\n editorDOM.parentElement.parentElement.parentElement.appendChild(newEl);\n\n newEl.style.maxWidth = '500px';\n newEl.style.position = 'absolute';\n newEl.style.top = 0;\n newEl.style.zIndex = 99999;\n\n const leftValue = `${boundRect.left + Math.abs(bodyRect.left) + cursorNode.offsetWidth + 10}px`;\n\n const rightValue = `${boundRect.x}px`;\n\n newEl.style.left = leftValue;\n\n const leftAlignedWidth = newEl.offsetWidth;\n\n newEl.style.left = 'unset';\n newEl.style.right = rightValue;\n\n const rightAlignedWidth = newEl.offsetWidth;\n\n newEl.style.left = 'unset';\n newEl.style.right = 'unset';\n\n if (leftAlignedWidth >= rightAlignedWidth) {\n newEl.style.left = leftValue;\n } else {\n newEl.style.right = rightValue;\n }\n\n document.body.addEventListener('click', listener);\n }\n });\n};\n\nexport const CSSMark = Mark.create({\n name: 'cssmark',\n\n addOptions() {\n return {\n classes: [],\n };\n },\n\n addAttributes() {\n return {\n class: {\n default: null,\n parseHTML: (el) => el.getAttribute('class'),\n renderHTML: (attributes) => {\n if (!attributes.class) return {};\n return { class: attributes.class };\n },\n },\n };\n },\n\n parseHTML() {\n // Any span with a class that matches one of allowed classes\n return [\n {\n tag: 'span[class]',\n getAttrs: (el) => {\n const cls = el.getAttribute('class') || '';\n const match = this.options.classes.find((name) => cls.includes(name));\n return match ? { class: match } : false;\n },\n },\n ];\n },\n\n renderHTML({ HTMLAttributes }) {\n return ['span', mergeAttributes(HTMLAttributes), 0];\n },\n\n addCommands() {\n return {\n setCSSClass: (className) => ({ commands }) => {\n return commands.setMark(this.name, { class: className });\n },\n\n unsetCSSClass: () => ({ commands }) => {\n return commands.unsetMark(this.name);\n },\n\n openCSSClassDialog: () => ({ editor }) => {\n insertDialog({\n editor,\n selectedText: editor.state.doc.textBetween(editor.state.selection.from, editor.state.selection.to),\n parentNode: editor.state.selection.$from.nodeAfter,\n opts: this.options.extraCSSRules,\n callback: (className) => {\n if (className) {\n editor\n .chain()\n .focus()\n .setCSSClass(className)\n .run();\n }\n },\n });\n },\n };\n },\n});\n"],"file":"css.js"}
|
|
@@ -119,4 +119,4 @@ var _default = (0, _styles.withStyles)(style, {
|
|
|
119
119
|
})(CustomToolbarWrapper);
|
|
120
120
|
|
|
121
121
|
exports["default"] = _default;
|
|
122
|
-
//# sourceMappingURL=
|
|
122
|
+
//# sourceMappingURL=custom-toolbar-wrapper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/extensions/custom-toolbar-wrapper.jsx"],"names":["CustomToolbarWrapper","props","children","deletable","classes","toolbarOpts","autoWidth","isFocused","doneButtonRef","onDelete","showDone","onDone","names","toolbar","PIE_TOOLBAR__CLASS","toolbarWithNoDone","toolbarRight","alignment","focused","alwaysVisible","fullWidth","hidden","isHidden","customStyles","minWidth","undefined","shared","iconRoot","e","root","style","position","zIndex","cursor","justifyContent","background","margin","padding","boxShadow","boxSizing","display","opacity","right","width","visibility","height","verticalAlign","label","color","index"],"mappings":"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","sourcesContent":["import React, { useCallback } from 'react';\nimport IconButton from '@material-ui/core/IconButton';\nimport Delete from '@material-ui/icons/Delete';\nimport classNames from 'classnames';\nimport { PIE_TOOLBAR__CLASS } from '../constants';\nimport { withStyles } from '@material-ui/core/styles';\nimport { DoneButton } from '../components/common/done-button';\n\nfunction CustomToolbarWrapper(props) {\n const {\n children,\n deletable,\n classes,\n toolbarOpts,\n autoWidth,\n isFocused,\n doneButtonRef,\n onDelete,\n showDone,\n onDone,\n } = props;\n const names = classNames(classes.toolbar, PIE_TOOLBAR__CLASS, {\n [classes.toolbarWithNoDone]: !showDone,\n [classes.toolbarRight]: toolbarOpts.alignment === 'right',\n [classes.focused]: toolbarOpts.alwaysVisible || isFocused,\n [classes.autoWidth]: autoWidth,\n [classes.fullWidth]: !autoWidth,\n [classes.hidden]: toolbarOpts.isHidden === true,\n });\n const customStyles = toolbarOpts.minWidth !== undefined ? { minWidth: toolbarOpts.minWidth } : {};\n\n return (\n <div className={names} style={{ ...customStyles }}>\n {children}\n\n <div className={classes.shared}>\n {deletable && (\n <IconButton\n aria-label=\"Delete\"\n className={classes.iconRoot}\n onMouseDown={(e) => onDelete?.(e)}\n classes={{\n root: classes.iconRoot,\n }}\n >\n <Delete />\n </IconButton>\n )}\n {showDone && <DoneButton doneButtonRef={doneButtonRef} onClick={onDone} />}\n </div>\n </div>\n );\n}\n\nconst style = {\n toolbar: {\n position: 'absolute',\n zIndex: 10,\n cursor: 'pointer',\n justifyContent: 'space-between',\n background: 'var(--editable-html-toolbar-bg, #efefef)',\n minWidth: '280px',\n margin: '5px 0 0 0',\n padding: '2px',\n boxShadow:\n '0px 1px 5px 0px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 3px 1px -2px rgba(0, 0, 0, 0.12)',\n boxSizing: 'border-box',\n display: 'flex',\n opacity: 1,\n },\n toolbarWithNoDone: {\n minWidth: '265px',\n },\n toolbarRight: {\n right: 0,\n },\n fullWidth: {\n width: '100%',\n },\n hidden: {\n visibility: 'hidden',\n },\n autoWidth: {\n width: 'auto',\n },\n iconRoot: {\n width: '28px',\n height: '28px',\n padding: '4px',\n verticalAlign: 'top',\n },\n label: {\n color: 'var(--editable-html-toolbar-check, #00bb00)',\n },\n shared: {\n display: 'flex',\n },\n};\nexport default withStyles(style, { index: 1000 })(CustomToolbarWrapper);\n"],"file":"custom-toolbar-wrapper.js"}
|
|
@@ -27,4 +27,4 @@ var ExtendedTable = _extensionTable.Table.extend({
|
|
|
27
27
|
|
|
28
28
|
var _default = ExtendedTable;
|
|
29
29
|
exports["default"] = _default;
|
|
30
|
-
//# sourceMappingURL=
|
|
30
|
+
//# sourceMappingURL=extended-table.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/extensions/extended-table.js"],"names":["ExtendedTable","Table","extend","addAttributes","border","renderHTML","props","originalTable","parent","HTMLAttributes","previousStyle","style","match"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,aAAa,GAAGC,sBAAMC,MAAN,CAAa;AACjCC,EAAAA,aADiC,2BACjB;AACd,WAAO;AACLC,MAAAA,MAAM,EAAE;AAAE,mBAAS;AAAX;AADH,KAAP;AAGD,GALgC;AAMjCC,EAAAA,UANiC,sBAMtBC,KANsB,EAMf;AAChB,QAAMC,aAAa,GAAG,KAAKC,MAAL,CAAYF,KAAZ,CAAtB;AACA,QAAQF,MAAR,GAAmBE,KAAK,CAACG,cAAzB,CAAQL,MAAR;AAEA,QAAMM,aAAa,aAAMH,aAAa,CAAC,CAAD,CAAb,CAAiBI,KAAvB,SAA+BJ,aAAa,CAAC,CAAD,CAAb,CAAiBI,KAAjB,CAAuBC,KAAvB,CAA6B,OAA7B,IAAwC,EAAxC,GAA6C,GAA5E,CAAnB;AAEAL,IAAAA,aAAa,CAAC,CAAD,CAAb,CAAiBI,KAAjB,aAA4BD,aAA5B;AAMAH,IAAAA,aAAa,CAAC,CAAD,CAAb,CAAiBH,MAAjB,GAA0BA,MAAM,GAAGA,MAAH,GAAY,GAA5C;AAEA,WAAOG,aAAP;AACD;AArBgC,CAAb,CAAtB;;eAwBeP,a","sourcesContent":["import { Table } from '@tiptap/extension-table';\n\nconst ExtendedTable = Table.extend({\n addAttributes() {\n return {\n border: { default: '1' },\n };\n },\n renderHTML(props) {\n const originalTable = this.parent(props);\n const { border } = props.HTMLAttributes;\n\n const previousStyle = `${originalTable[1].style}${originalTable[1].style.match(/.*; */) ? '' : ';'}`;\n\n originalTable[1].style = `${previousStyle}\n width: 100%;\n color: var(--pie-text, black);\n table-layout: fixed;\n border-collapse: collapse;\n background-color: var(--pie-background, rgba(255, 255, 255))`;\n originalTable[1].border = border ? border : '1';\n\n return originalTable;\n },\n});\n\nexport default ExtendedTable;\n"],"file":"extended-table.js"}
|
package/lib/extensions/image.js
CHANGED
|
@@ -95,4 +95,4 @@ var ImageUploadNode = _core.Node.create({
|
|
|
95
95
|
});
|
|
96
96
|
|
|
97
97
|
exports.ImageUploadNode = ImageUploadNode;
|
|
98
|
-
//# sourceMappingURL=
|
|
98
|
+
//# sourceMappingURL=image.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/extensions/image.js"],"names":["ImageUploadNode","Node","create","name","group","atom","selectable","draggable","addAttributes","loaded","deleteStatus","alignment","percent","width","height","src","alt","parseHTML","tag","renderHTML","HTMLAttributes","addNodeView","props","options","addCommands","setImageUploadNode","commands","insertContent","type"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;AAEO,IAAMA,eAAe,GAAGC,WAAKC,MAAL,CAAY;AACzCC,EAAAA,IAAI,EAAE,iBADmC;AAGzCC,EAAAA,KAAK,EAAE,OAHkC;AAIzCC,EAAAA,IAAI,EAAE,IAJmC;AAI7B;AACZC,EAAAA,UAAU,EAAE,IAL6B;AAKvB;AAClBC,EAAAA,SAAS,EAAE,IAN8B;AAMxB;AAEjBC,EAAAA,aARyC,2BAQzB;AACd,WAAO;AACLC,MAAAA,MAAM,EAAE;AAAE,mBAAS;AAAX,OADH;AAELC,MAAAA,YAAY,EAAE;AAAE,mBAAS;AAAX,OAFT;AAGLC,MAAAA,SAAS,EAAE;AAAE,mBAAS;AAAX,OAHN;AAILC,MAAAA,OAAO,EAAE;AAAE,mBAAS;AAAX,OAJJ;AAKLC,MAAAA,KAAK,EAAE;AAAE,mBAAS;AAAX,OALF;AAMLC,MAAAA,MAAM,EAAE;AAAE,mBAAS;AAAX,OANH;AAOLC,MAAAA,GAAG,EAAE;AAAE,mBAAS;AAAX,OAPA;AAQLC,MAAAA,GAAG,EAAE;AAAE,mBAAS;AAAX;AARA,KAAP;AAUD,GAnBwC;AAqBzCC,EAAAA,SArByC,uBAqB7B;AACV,WAAO,CACL;AACEC,MAAAA,GAAG,EAAE;AADP,KADK,CAAP;AAKD,GA3BwC;AA6BzCC,EAAAA,UA7ByC,4BA6BV;AAAA,QAAlBC,cAAkB,QAAlBA,cAAkB;AAC7B,WAAO,CAAC,KAAD,EAAQ,2BAAgBA,cAAhB,EAAgC;AAAE,mBAAa;AAAf,KAAhC,CAAR,CAAP;AACD,GA/BwC;AAiCzCC,EAAAA,WAjCyC,yBAiC3B;AAAA;;AACZ,WAAO,kCAAsB,UAACC,KAAD;AAAA,0BAAW,iCAAC,qBAAD,kCAAyBA,KAAzB;AAAgCC,QAAAA,OAAO,EAAE,KAAI,CAACA;AAA9C,SAAX;AAAA,KAAtB,CAAP;AACD,GAnCwC;AAqCzCC,EAAAA,WArCyC,yBAqC3B;AAAA;;AACZ,WAAO;AACLC,MAAAA,kBAAkB,EAAE;AAAA,eAAM,iBAAkB;AAAA,cAAfC,QAAe,SAAfA,QAAe;AAC1C,iBAAOA,QAAQ,CAACC,aAAT,CAAuB;AAC5BC,YAAAA,IAAI,EAAE,MAAI,CAACzB;AADiB,WAAvB,CAAP;AAGD,SAJmB;AAAA;AADf,KAAP;AAOD;AA7CwC,CAAZ,CAAxB","sourcesContent":["import { Node, mergeAttributes } from '@tiptap/core';\nimport { ReactNodeViewRenderer } from '@tiptap/react';\nimport React from 'react';\nimport ImageComponent from './component';\n\nexport const ImageUploadNode = Node.create({\n name: 'imageUploadNode',\n\n group: 'block',\n atom: true, // ✅ prevents content holes\n selectable: true, // optional\n draggable: true, // optional\n\n addAttributes() {\n return {\n loaded: { default: false },\n deleteStatus: { default: null },\n alignment: { default: null },\n percent: { default: null },\n width: { default: null },\n height: { default: null },\n src: { default: null },\n alt: { default: null },\n };\n },\n\n parseHTML() {\n return [\n {\n tag: 'div[data-type=\"image-upload-node\"]',\n },\n ];\n },\n\n renderHTML({ HTMLAttributes }) {\n return ['img', mergeAttributes(HTMLAttributes, { 'data-type': 'image-upload-node' })];\n },\n\n addNodeView() {\n return ReactNodeViewRenderer((props) => <ImageComponent {...{ ...props, options: this.options }} />);\n },\n\n addCommands() {\n return {\n setImageUploadNode: () => ({ commands }) => {\n return commands.insertContent({\n type: this.name,\n });\n },\n };\n },\n});\n"],"file":"image.js"}
|
package/lib/extensions/index.js
CHANGED
|
@@ -49,4 +49,4 @@ var buildExtensions = function buildExtensions(activeExtensions, customExtension
|
|
|
49
49
|
};
|
|
50
50
|
|
|
51
51
|
exports.buildExtensions = buildExtensions;
|
|
52
|
-
//# sourceMappingURL=
|
|
52
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/extensions/index.js"],"names":["log","ALL_PLUGINS","DEFAULT_EXTENSIONS","filter","plug","includes","buildExtensions","activeExtensions","customExtensions","opts","addIf","key","shouldAdd","imagePlugin","image","onDelete","mathPlugin","math","respAreaPlugin","responseArea","type","cssPlugin","extraCSSRules","languageCharactersPlugins","languageCharacters","map","plugin","html"],"mappings":"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","sourcesContent":["import React from 'react';\nimport compact from 'lodash/compact';\nimport isEmpty from 'lodash/isEmpty';\nimport debug from 'debug';\n\nconst log = debug('@pie-lib:editable-html:plugins');\nexport const ALL_PLUGINS = [\n 'bold',\n // 'code',\n 'html',\n 'extraCSSRules',\n 'italic',\n 'underline',\n 'strikethrough',\n 'bulleted-list',\n 'numbered-list',\n 'image',\n 'math',\n 'languageCharacters',\n 'text-align',\n 'blockquote',\n 'h3',\n 'table',\n 'video',\n 'audio',\n 'responseArea',\n 'redo',\n 'undo',\n 'superscript',\n 'subscript',\n];\n\nexport const DEFAULT_EXTENSIONS = ALL_PLUGINS.filter((plug) => !['responseArea', 'h3', 'blockquote'].includes(plug));\n\nexport const buildExtensions = (activeExtensions, customExtensions, opts) => {\n log('[buildPlugins] opts: ', opts);\n\n activeExtensions = activeExtensions || DEFAULT_EXTENSIONS;\n\n const addIf = (key, shouldAdd = true) => activeExtensions.includes(key) && shouldAdd && key;\n\n const imagePlugin = opts.image && opts.image.onDelete;\n const mathPlugin = opts.math;\n const respAreaPlugin = opts.responseArea && opts.responseArea.type;\n const cssPlugin = !isEmpty(opts.extraCSSRules);\n\n const languageCharactersPlugins = opts?.languageCharacters || [];\n\n return compact([\n addIf('table'),\n addIf('bold'),\n // addIf('code', MarkHotkey({ key: '`', type: 'code', icon: <Code /> })),\n addIf('italic'),\n addIf('strikethrough'),\n addIf('underline'),\n // icon should be modifies accordingly\n addIf('superscript'),\n // icon should be modifies accordingly\n addIf('subscript'),\n addIf('image', !!imagePlugin),\n addIf('video'),\n addIf('audio'),\n addIf('math', !!mathPlugin),\n ...languageCharactersPlugins.map((plugin) => addIf('languageCharacters', plugin)),\n addIf('text-align'),\n addIf('blockquote'),\n addIf('h3'),\n addIf('bulleted-list'),\n addIf('numbered-list'),\n addIf('undo'),\n addIf('redo'),\n addIf('responseArea', !!respAreaPlugin),\n addIf('css', !!cssPlugin),\n addIf('html', !!opts.html),\n ]);\n};\n"],"file":"index.js"}
|
package/lib/extensions/math.js
CHANGED
|
@@ -347,4 +347,4 @@ var MathNodeView = function MathNodeView(props) {
|
|
|
347
347
|
};
|
|
348
348
|
|
|
349
349
|
exports.MathNodeView = MathNodeView;
|
|
350
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHRlbnNpb25zL21hdGguanMiXSwibmFtZXMiOlsiZW5zdXJlVGV4dEFmdGVyTWF0aFBsdWdpbktleSIsIlBsdWdpbktleSIsIkVuc3VyZVRleHRBZnRlck1hdGhQbHVnaW4iLCJtYXRoTm9kZU5hbWUiLCJQbHVnaW4iLCJrZXkiLCJhcHBlbmRUcmFuc2FjdGlvbiIsInRyYW5zYWN0aW9ucyIsIm9sZFN0YXRlIiwibmV3U3RhdGUiLCJzb21lIiwidHIiLCJkb2NDaGFuZ2VkIiwiY2hhbmdlZCIsImRvYyIsImRlc2NlbmRhbnRzIiwibm9kZSIsInBvcyIsInR5cGUiLCJuYW1lIiwibmV4dFBvcyIsIm5vZGVTaXplIiwibmV4dE5vZGUiLCJub2RlQXQiLCJpbnNlcnQiLCJzY2hlbWEiLCJ0ZXh0IiwiWmVyb1dpZHRoU3BhY2VIYW5kbGluZ1BsdWdpbiIsInByb3BzIiwiaGFuZGxlS2V5RG93biIsInZpZXciLCJldmVudCIsInN0YXRlIiwiZGlzcGF0Y2giLCJzZWxlY3Rpb24iLCJmcm9tIiwiZW1wdHkiLCJwcmV2Q2hhciIsInRleHRCZXR3ZWVuIiwicG9zQmVmb3JlIiwicmVzb2x2ZWQiLCJyZXNvbHZlIiwibWF5YmVOb2RlIiwibm9kZUFmdGVyIiwibm9kZUJlZm9yZSIsIm5vZGVQb3MiLCJub2RlUmVzb2x2ZWQiLCJzZXRTZWxlY3Rpb24iLCJOb2RlU2VsZWN0aW9uIiwiY3JlYXRlIiwiVGV4dFNlbGVjdGlvbiIsIk1hdGhOb2RlIiwiTm9kZSIsImdyb3VwIiwiaW5saW5lIiwiYXRvbSIsImFkZEF0dHJpYnV0ZXMiLCJsYXRleCIsIndyYXBwZXIiLCJodG1sIiwiYWRkUHJvc2VNaXJyb3JQbHVnaW5zIiwicGFyc2VIVE1MIiwidGFnIiwiZ2V0QXR0cnMiLCJlbCIsImdldEF0dHJpYnV0ZSIsInRleHRDb250ZW50IiwiaW5uZXJIVE1MIiwiYWRkQ29tbWFuZHMiLCJpbnNlcnRNYXRoIiwiZWRpdG9yIiwibm9kZXMiLCJtYXRoIiwiJGZyb20iLCJzZWwiLCJyZW5kZXJIVE1MIiwiSFRNTEF0dHJpYnV0ZXMiLCJkYW5nZXJvdXNseVNldElubmVySFRNTCIsIl9faHRtbCIsImFkZE5vZGVWaWV3Iiwib3B0aW9ucyIsIk1hdGhOb2RlVmlldyIsInVwZGF0ZUF0dHJpYnV0ZXMiLCJzZWxlY3RlZCIsInNob3dUb29sYmFyIiwic2V0U2hvd1Rvb2xiYXIiLCJ0b29sYmFyUmVmIiwidG9wIiwibGVmdCIsInBvc2l0aW9uIiwic2V0UG9zaXRpb24iLCJhdHRycyIsIl90b29sYmFyT3BlbmVkIiwiYm9keVJlY3QiLCJkb2N1bWVudCIsImJvZHkiLCJnZXRCb3VuZGluZ0NsaWVudFJlY3QiLCJzdGFydCIsImNvb3Jkc0F0UG9zIiwiTWF0aCIsImFicyIsImhhbmRsZUNsaWNrT3V0c2lkZSIsImN1cnJlbnQiLCJjb250YWlucyIsInRhcmdldCIsImNsb3Nlc3QiLCJhZGRFdmVudExpc3RlbmVyIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsImhhbmRsZUNoYW5nZSIsIm5ld0xhdGV4IiwiaGFuZGxlRG9uZSIsImNvbW1hbmRzIiwiZm9jdXMiLCJkaXNwbGF5IiwiY3Vyc29yIiwibWFyZ2luIiwiUmVhY3RET00iLCJjcmVhdGVQb3J0YWwiLCJ6SW5kZXgiLCJiYWNrZ3JvdW5kIiwiYm94U2hhZG93Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7OztBQUVBLElBQU1BLDRCQUE0QixHQUFHLElBQUlDLDJCQUFKLENBQWMscUJBQWQsQ0FBckM7O0FBRU8sSUFBTUMseUJBQXlCLEdBQUcsU0FBNUJBLHlCQUE0QixDQUFDQyxZQUFEO0FBQUEsU0FDdkMsSUFBSUMsd0JBQUosQ0FBVztBQUNUQyxJQUFBQSxHQUFHLEVBQUVMLDRCQURJO0FBRVRNLElBQUFBLGlCQUFpQixFQUFFLDJCQUFDQyxZQUFELEVBQWVDLFFBQWYsRUFBeUJDLFFBQXpCLEVBQXNDO0FBQ3ZEO0FBQ0Es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UUFBUSxDQUFDQyxJQWZYLENBYkosQ0FERjtBQWlDRCxDQW5HTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VTdGF0ZSwgdXNlRWZmZWN0LCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUmVhY3RET00gZnJvbSAncmVhY3QtZG9tJztcbmltcG9ydCB7IEV4dGVuc2lvbiwgTm9kZSwgbWVyZ2VBdHRyaWJ1dGVzIH0gZnJvbSAnQHRpcHRhcC9jb3JlJztcbmltcG9ydCB7IE5vZGVWaWV3V3JhcHBlciwgUmVhY3RSZW5kZXJlciwgUmVhY3ROb2RlVmlld1JlbmRlcmVyIH0gZnJvbSAnQHRpcHRhcC9yZWFjdCc7XG5pbXBvcnQgeyBQbHVnaW4sIFBsdWdpbktleSwgTm9kZVNlbGVjdGlvbiwgVGV4dFNlbGVjdGlvbiB9IGZyb20gJ3Byb3NlbWlycm9yLXN0YXRlJztcbmltcG9ydCB7IE1hdGhQcmV2aWV3LCBNYXRoVG9vbGJhciB9IGZyb20gJ0BwaWUtbGliL21hdGgtdG9vbGJhcic7XG5pbXBvcnQgeyB3cmFwTWF0aCwgbW1sVG9MYXRleCwgcmVuZGVyTWF0aCB9IGZyb20gJ0BwaWUtbGliL21hdGgtcmVuZGVyaW5nJztcblxuY29uc3QgZW5zdXJlVGV4dEFmdGVyTWF0aFBsdWdpbktleSA9IG5ldyBQbHVnaW5LZXkoJ2Vuc3VyZVRleHRBZnRlck1hdGgnKTtcblxuZXhwb3J0IGNvbnN0IEVuc3VyZVRleHRBZnRlck1hdGhQbHVnaW4gPSAobWF0aE5vZGVOYW1lKSA9PlxuICBuZXcgUGx1Z2luKHtcbiAgICBrZXk6IGVuc3VyZVRleHRBZnRlck1hdGhQbHVnaW5LZXksXG4gICAgYXBwZW5kVHJhbnNhY3Rpb246ICh0cmFuc2FjdGlvbnMsIG9sZFN0YXRlLCBuZXdTdGF0ZSkgPT4ge1xuICAgICAgLy8gT25seSBhY3Qgd2hlbiB0aGUgZG9jIGFjdHVhbGx5IGNoYW5nZWRcbiAgICAgIGlmICghdHJhbnNhY3Rpb25zLnNvbWUoKHRyKSA9PiB0ci5kb2NDaGFuZ2VkKSkgcmV0dXJuIG51bGw7XG5cbiAgICAgIGNvbnN0IHRyID0gbmV3U3RhdGUudHI7XG4gICAgICBsZXQgY2hhbmdlZCA9IGZhbHNlO1xuXG4gICAgICBuZXdTdGF0ZS5kb2MuZGVzY2VuZGFudHMoKG5vZGUsIHBvcykgPT4ge1xuICAgICAgICBpZiAobm9kZS50eXBlLm5hbWUgPT09IG1hdGhOb2RlTmFtZSkge1xuICAgICAgICAgIGNvbnN0IG5leHRQb3MgPSBwb3MgKyBub2RlLm5vZGVTaXplO1xuICAgICAgICAgIGNvbnN0IG5leHROb2RlID0gbmV3U3RhdGUuZG9jLm5vZGVBdChuZXh0UG9zKTtcblxuICAgICAgICAgIC8vIElmIHRoZXJlJ3Mgbm8gbm9kZSBhZnRlciwgb3IgdGhlIG5leHQgbm9kZSBpc24ndCB0ZXh0LCBpbnNlcnQgYSBzcGFjZVxuICAgICAgICAgIGlmICghbmV4dE5vZGUgfHwgbmV4dE5vZGUudHlwZS5uYW1lICE9PSAndGV4dCcpIHtcbiAgICAgICAgICAgIHRyLmluc2VydChuZXh0UG9zLCBuZXdTdGF0ZS5zY2hlbWEudGV4dCgnXFx1MjAwYicpKTtcbiAgICAgICAgICAgIGNoYW5nZWQgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIHJldHVybiBjaGFuZ2VkID8gdHIgOiBudWxsO1xuICAgIH0sXG4gIH0pO1xuXG5leHBvcnQgY29uc3QgWmVyb1dpZHRoU3BhY2VIYW5kbGluZ1BsdWdpbiA9IG5ldyBQbHVnaW4oe1xuICBrZXk6IG5ldyBQbHVnaW5LZXkoJ3plcm9XaWR0aFNwYWNlSGFuZGxpbmcnKSxcbiAgcHJvcHM6IHtcbiAgICBoYW5kbGVLZXlEb3duKHZpZXcsIGV2ZW50KSB7XG4gICAgICBjb25zdCB7IHN0YXRlLCBkaXNwYXRjaCB9ID0gdmlldztcbiAgICAgIGNvbnN0IHsgc2VsZWN0aW9uLCBkb2MgfSA9IHN0YXRlO1xuICAgICAgY29uc3QgeyBmcm9tLCBlbXB0eSB9ID0gc2VsZWN0aW9uO1xuXG4gICAgICBpZiAoZW1wdHkgJiYgZXZlbnQua2V5ID09PSAnQmFja3NwYWNlJyAmJiBmcm9tID4gMCkge1xuICAgICAgICBjb25zdCBwcmV2Q2hhciA9IGRvYy50ZXh0QmV0d2Vlbihmcm9tIC0gMSwgZnJvbSwgJ1xcdUZGRkMnLCAnXFx1RkZGQycpO1xuICAgICAgICBpZiAocHJldkNoYXIgPT09ICdcXHUyMDBiJykge1xuICAgICAgICAgIGNvbnN0IHRyID0gc3RhdGUudHIuZGVsZXRlKGZyb20gLSAyLCBmcm9tKTtcbiAgICAgICAgICBkaXNwYXRjaCh0cik7XG4gICAgICAgICAgcmV0dXJuIHRydWU7IC8vIGhhbmRsZWRcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoZW1wdHkgJiYgZXZlbnQua2V5ID09PSAnQXJyb3dMZWZ0JyAmJiBmcm9tID4gMCkge1xuICAgICAgICBjb25zdCBwcmV2Q2hhciA9IGRvYy50ZXh0QmV0d2Vlbihmcm9tIC0gMSwgZnJvbSwgJ1xcdUZGRkMnLCAnXFx1RkZGQycpO1xuICAgICAgICAvLyBJZiB0aGUgcHJldmlvdXMgY2hhcmFjdGVyIGlzIHRoZSB6ZXJvLXdpZHRoIHNwYWNlLi4uXG4gICAgICAgIGlmIChwcmV2Q2hhciA9PT0gJ1xcdTIwMGInKSB7XG4gICAgICAgICAgY29uc3QgcG9zQmVmb3JlID0gZnJvbSAtIDE7XG4gICAgICAgICAgY29uc3QgcmVzb2x2ZWQgPSBzdGF0ZS5kb2MucmVzb2x2ZShwb3NCZWZvcmUgLSAxKTsgLy8gbG9vayBqdXN0IGJlZm9yZSB0aGUgendzcFxuICAgICAgICAgIGNvbnN0IG1heWJlTm9kZSA9IHJlc29sdmVkLm5vZGVBZnRlciB8fCByZXNvbHZlZC5ub2RlQmVmb3JlO1xuXG4gICAgICAgICAgLy8gQ2hlY2sgaWYgdGhlcmUncyBhbiBpbmxpbmUgc2VsZWN0YWJsZSBub2RlIChlLmcuLCB5b3VyIG1hdGggbm9kZSlcbiAgICAgICAgICBpZiAobWF5YmVOb2RlKSB7XG4gICAgICAgICAgICBjb25zdCBub2RlUG9zID0gcG9zQmVmb3JlIC0gbWF5YmVOb2RlLm5vZGVTaXplO1xuICAgICAgICAgICAgY29uc3Qgbm9kZVJlc29sdmVkID0gc3RhdGUuZG9jLnJlc29sdmUobm9kZVBvcyk7XG4gICAgICAgICAgICBjb25zdCB0ciA9IHN0YXRlLnRyLnNldFNlbGVjdGlvbihOb2RlU2VsZWN0aW9uLmNyZWF0ZShzdGF0ZS5kb2MsIG5vZGVSZXNvbHZlZC5wb3MpKTtcbiAgICAgICAgICAgIGRpc3BhdGNoKHRyKTtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBKdXN0IG1vdmUgdGhlIHRleHQgY3Vyc29yIGJlZm9yZSB0aGUgendzcFxuICAgICAgICAgICAgY29uc3QgdHIgPSBzdGF0ZS50ci5zZXRTZWxlY3Rpb24oVGV4dFNlbGVjdGlvbi5jcmVhdGUoc3RhdGUuZG9jLCBmcm9tIC0gMikpO1xuICAgICAgICAgICAgZGlzcGF0Y2godHIpO1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9LFxuICB9LFxufSk7XG5cbmV4cG9ydCBjb25zdCBNYXRoTm9kZSA9IE5vZGUuY3JlYXRlKHtcbiAgbmFtZTogJ21hdGgnLFxuICBncm91cDogJ2lubGluZScsXG4gIGlubGluZTogdHJ1ZSxcbiAgYXRvbTogdHJ1ZSxcblxuICBhZGRBdHRyaWJ1dGVzKCkge1xuICAgIHJldHVybiB7XG4gICAgICBsYXRleDogeyBkZWZhdWx0OiAnJyB9LFxuICAgICAgd3JhcHBlcjogeyBkZWZhdWx0OiBudWxsIH0sXG4gICAgICBodG1sOiB7IGRlZmF1bHQ6IG51bGwgfSxcbiAgICB9O1xuICB9LFxuXG4gIGFkZFByb3NlTWlycm9yUGx1Z2lucygpIHtcbiAgICByZXR1cm4gW0Vuc3VyZVRleHRBZnRlck1hdGhQbHVnaW4odGhpcy5uYW1lKSwgWmVyb1dpZHRoU3BhY2VIYW5kbGluZ1BsdWdpbl07XG4gIH0sXG5cbiAgcGFyc2VIVE1MKCkge1xuICAgIHJldHVybiBbXG4gICAgICB7XG4gICAgICAgIHRhZzogJ3NwYW5bZGF0YS1sYXRleF0nLFxuICAgICAgICBnZXRBdHRyczogKGVsKSA9PiAoe1xuICAgICAgICAgIGxhdGV4OiBlbC5nZXRBdHRyaWJ1dGUoJ2RhdGEtcmF3JykgfHwgZWwudGV4dENvbnRlbnQsXG4gICAgICAgIH0pLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgdGFnOiAnc3BhbltkYXRhLXR5cGU9XCJtYXRobWxcIl0nLFxuICAgICAgICBnZXRBdHRyczogKGVsKSA9PiAoe1xuICAgICAgICAgIGh0bWw6IGVsLmlubmVySFRNTCxcbiAgICAgICAgfSksXG4gICAgICB9LFxuICAgIF07XG4gIH0sXG5cbiAgYWRkQ29tbWFuZHMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGluc2VydE1hdGg6IChsYXRleCA9ICcnKSA9PiAoeyB0ciwgZWRpdG9yLCBkaXNwYXRjaCB9KSA9PiB7XG4gICAgICAgIGNvbnN0IHsgc3RhdGUgfSA9IGVkaXRvci52aWV3O1xuICAgICAgICBjb25zdCBub2RlID0gc3RhdGUuc2NoZW1hLm5vZGVzLm1hdGguY3JlYXRlKHtcbiAgICAgICAgICBsYXRleCxcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IHsgc2VsZWN0aW9uIH0gPSBzdGF0ZTtcblxuICAgICAgICAvLyBUaGUgaW5zZXJ0ZWQgbm9kZSBpcyB0eXBpY2FsbHkganVzdCBiZWZvcmUgdGhlIGN1cnNvclxuICAgICAgICBjb25zdCBwb3MgPSBzZWxlY3Rpb24uJGZyb20ucG9zO1xuXG4gICAgICAgIHRyLmluc2VydChwb3MsIG5vZGUpO1xuXG4gICAgICAgIGlmIChub2RlPy50eXBlPy5uYW1lID09PSB0aGlzLm5hbWUpIHtcbiAgICAgICAgICAvLyBDcmVhdGUgYSBOb2RlU2VsZWN0aW9uIGZyb20gdGhlIGN1cnJlbnQgZG9jXG4gICAgICAgICAgY29uc3Qgc2VsID0gTm9kZVNlbGVjdGlvbi5jcmVhdGUodHIuZG9jLCBzZWxlY3Rpb24uJGZyb20ucG9zKTtcblxuICAgICAgICAgIC8vIEJ1aWxkIGEgZnJlc2ggdHJhbnNhY3Rpb24gZnJvbSB0aGUgY3VycmVudCBzdGF0ZSBhbmQgc2V0IHRoZSBzZWxlY3Rpb25cbiAgICAgICAgICB0ci5zZXRTZWxlY3Rpb24oc2VsKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGRpc3BhdGNoKHRyKTtcblxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH0sXG4gICAgICAvLyBpbnNlcnRNYXRoOiAobGF0ZXggPSAnJykgPT4gKHsgY29tbWFuZHMgfSkgPT4ge1xuICAgICAgLy8gICByZXR1cm4gY29tbWFuZHMuaW5zZXJ0Q29udGVudCh7XG4gICAgICAvLyAgICAgdHlwZTogdGhpcy5uYW1lLFxuICAgICAgLy8gICAgIGF0dHJzOiB7IGxhdGV4IH0sXG4gICAgICAvLyAgIH0pO1xuICAgICAgLy8gfSxcbiAgICB9O1xuICB9LFxuXG4gIHJlbmRlckhUTUwoeyBIVE1MQXR0cmlidXRlcyB9KSB7XG4gICAgaWYgKEhUTUxBdHRyaWJ1dGVzLmh0bWwpIHtcbiAgICAgIHJldHVybiBbJ3NwYW4nLCB7ICdkYXRhLXR5cGUnOiAnbWF0aG1sJywgZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUw6IHsgX19odG1sOiBIVE1MQXR0cmlidXRlcy5odG1sIH0gfV07XG4gICAgfVxuXG4gICAgcmV0dXJuIFtcbiAgICAgICdzcGFuJyxcbiAgICAgIHsgJ2RhdGEtbGF0ZXgnOiAnJywgJ2RhdGEtcmF3JzogSFRNTEF0dHJpYnV0ZXMubGF0ZXggfSxcbiAgICAgIHdyYXBNYXRoKEhUTUxBdHRyaWJ1dGVzLmxhdGV4LCBIVE1MQXR0cmlidXRlcy53cmFwcGVyKSxcbiAgICBdO1xuICB9LFxuXG4gIGFkZE5vZGVWaWV3KCkge1xuICAgIHJldHVybiBSZWFjdE5vZGVWaWV3UmVuZGVyZXIoKHByb3BzKSA9PiA8TWF0aE5vZGVWaWV3IHsuLi57IC4uLnByb3BzLCBvcHRpb25zOiB0aGlzLm9wdGlvbnMgfX0gLz4pO1xuICB9LFxufSk7XG5cbmV4cG9ydCBjb25zdCBNYXRoTm9kZVZpZXcgPSAocHJvcHMpID0+IHtcbiAgY29uc3QgeyBub2RlLCB1cGRhdGVBdHRyaWJ1dGVzLCBlZGl0b3IsIHNlbGVjdGVkLCBvcHRpb25zIH0gPSBwcm9wcztcbiAgY29uc3QgW3Nob3dUb29sYmFyLCBzZXRTaG93VG9vbGJhcl0gPSB1c2VTdGF0ZShzZWxlY3RlZCk7XG4gIGNvbnN0IHRvb2xiYXJSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IFtwb3NpdGlvbiwgc2V0UG9zaXRpb25dID0gdXNlU3RhdGUoeyB0b3A6IDAsIGxlZnQ6IDAgfSk7XG5cbiAgY29uc3QgbGF0ZXggPSBub2RlLmF0dHJzLmxhdGV4IHx8ICcnO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHNlbGVjdGVkKSB7XG4gICAgICBzZXRTaG93VG9vbGJhcih0cnVlKTtcbiAgICB9XG4gIH0sIFtzZWxlY3RlZF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZWRpdG9yLl90b29sYmFyT3BlbmVkID0gISFzaG93VG9vbGJhcjtcbiAgfSwgW3Nob3dUb29sYmFyXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAvLyBDYWxjdWxhdGUgcG9zaXRpb24gcmVsYXRpdmUgdG8gc2VsZWN0aW9uXG4gICAgY29uc3QgYm9keVJlY3QgPSBkb2N1bWVudC5ib2R5LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIGNvbnN0IHsgZnJvbSB9ID0gZWRpdG9yLnN0YXRlLnNlbGVjdGlvbjtcbiAgICBjb25zdCBzdGFydCA9IGVkaXRvci52aWV3LmNvb3Jkc0F0UG9zKGZyb20pO1xuICAgIHNldFBvc2l0aW9uKHtcbiAgICAgIHRvcDogc3RhcnQudG9wICsgTWF0aC5hYnMoYm9keVJlY3QudG9wKSArIDQwLCAvLyBzaGlmdCBhYm92ZVxuICAgICAgbGVmdDogc3RhcnQubGVmdCxcbiAgICB9KTtcblxuICAgIGNvbnN0IGhhbmRsZUNsaWNrT3V0c2lkZSA9IChldmVudCkgPT4ge1xuICAgICAgaWYgKFxuICAgICAgICB0b29sYmFyUmVmLmN1cnJlbnQgJiZcbiAgICAgICAgIXRvb2xiYXJSZWYuY3VycmVudC5jb250YWlucyhldmVudC50YXJnZXQpICYmXG4gICAgICAgICFldmVudC50YXJnZXQuY2xvc2VzdCgnW2RhdGEtaW5saW5lLW5vZGVdJylcbiAgICAgICkge1xuICAgICAgICBzZXRTaG93VG9vbGJhcihmYWxzZSk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIGlmIChzaG93VG9vbGJhcikge1xuICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgaGFuZGxlQ2xpY2tPdXRzaWRlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgaGFuZGxlQ2xpY2tPdXRzaWRlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gKCkgPT4gZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgaGFuZGxlQ2xpY2tPdXRzaWRlKTtcbiAgfSwgW2VkaXRvciwgc2hvd1Rvb2xiYXJdKTtcblxuICBjb25zdCBoYW5kbGVDaGFuZ2UgPSAobmV3TGF0ZXgpID0+IHtcbiAgICB1cGRhdGVBdHRyaWJ1dGVzKHsgbGF0ZXg6IG5ld0xhdGV4IH0pO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZURvbmUgPSAobmV3TGF0ZXgpID0+IHtcbiAgICB1cGRhdGVBdHRyaWJ1dGVzKHsgbGF0ZXg6IG5ld0xhdGV4IH0pO1xuICAgIHNldFNob3dUb29sYmFyKGZhbHNlKTtcblxuICAgIGVkaXRvci5fdG9vbGJhck9wZW5lZCA9IGZhbHNlO1xuXG4gICAgY29uc3QgeyBzZWxlY3Rpb24sIHRyLCBkb2MgfSA9IGVkaXRvci5zdGF0ZTtcbiAgICBjb25zdCBzZWwgPSBUZXh0U2VsZWN0aW9uLmNyZWF0ZShkb2MsIHNlbGVjdGlvbi5mcm9tICsgMSk7XG5cbiAgICAvLyBCdWlsZCBhIGZyZXNoIHRyYW5zYWN0aW9uIGZyb20gdGhlIGN1cnJlbnQgc3RhdGUgYW5kIHNldCB0aGUgc2VsZWN0aW9uXG4gICAgdHIuc2V0U2VsZWN0aW9uKHNlbCk7XG4gICAgZWRpdG9yLnZpZXcuZGlzcGF0Y2godHIpO1xuICAgIGVkaXRvci5jb21tYW5kcy5mb2N1cygpO1xuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPE5vZGVWaWV3V3JhcHBlclxuICAgICAgY2xhc3NOYW1lPVwibWF0aC1ub2RlXCJcbiAgICAgIHN0eWxlPXt7XG4gICAgICAgIGRpc3BsYXk6ICdpbmxpbmUtZmxleCcsXG4gICAgICAgIGN1cnNvcjogJ3BvaW50ZXInLFxuICAgICAgICBtYXJnaW46ICcwIDRweCcsXG4gICAgICB9fVxuICAgICAgZGF0YS1zZWxlY3RlZD17c2VsZWN0ZWR9XG4gICAgPlxuICAgICAgPGRpdiBvbkNsaWNrPXsoKSA9PiBzZXRTaG93VG9vbGJhcih0cnVlKX0gY29udGVudEVkaXRhYmxlPXtmYWxzZX0+XG4gICAgICAgIDxNYXRoUHJldmlldyBsYXRleD17bGF0ZXh9IC8+XG4gICAgICA8L2Rpdj5cbiAgICAgIHtzaG93VG9vbGJhciAmJlxuICAgICAgICBSZWFjdERPTS5jcmVhdGVQb3J0YWwoXG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgcmVmPXt0b29sYmFyUmVmfVxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgICAgICAgICAgIHRvcDogYCR7cG9zaXRpb24udG9wfXB4YCxcbiAgICAgICAgICAgICAgbGVmdDogYCR7cG9zaXRpb24ubGVmdH1weGAsXG4gICAgICAgICAgICAgIHpJbmRleDogMjAsXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICd2YXIoLS1lZGl0YWJsZS1odG1sLXRvb2xiYXItYmcsICNlZmVmZWYpJyxcbiAgICAgICAgICAgICAgYm94U2hhZG93OlxuICAgICAgICAgICAgICAgICcwcHggMXB4IDVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMnB4IDJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDNweCAxcHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMTIpJyxcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPE1hdGhUb29sYmFyIGxhdGV4PXtsYXRleH0gYXV0b0ZvY3VzIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9IG9uRG9uZT17aGFuZGxlRG9uZX0ga2V5cGFkTW9kZT1cImJhc2ljXCIgLz5cbiAgICAgICAgICA8L2Rpdj4sXG4gICAgICAgICAgZG9jdW1lbnQuYm9keSxcbiAgICAgICAgKX1cbiAgICA8L05vZGVWaWV3V3JhcHBlcj5cbiAgKTtcbn07XG4iXX0=
|
|
350
|
+
//# sourceMappingURL=math.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/extensions/math.js"],"names":["ensureTextAfterMathPluginKey","PluginKey","EnsureTextAfterMathPlugin","mathNodeName","Plugin","key","appendTransaction","transactions","oldState","newState","some","tr","docChanged","changed","doc","descendants","node","pos","type","name","nextPos","nodeSize","nextNode","nodeAt","insert","schema","text","ZeroWidthSpaceHandlingPlugin","props","handleKeyDown","view","event","state","dispatch","selection","from","empty","prevChar","textBetween","posBefore","resolved","resolve","maybeNode","nodeAfter","nodeBefore","nodePos","nodeResolved","setSelection","NodeSelection","create","TextSelection","MathNode","Node","group","inline","atom","addAttributes","latex","wrapper","html","addProseMirrorPlugins","parseHTML","tag","getAttrs","el","getAttribute","textContent","innerHTML","addCommands","insertMath","editor","nodes","math","$from","sel","renderHTML","HTMLAttributes","dangerouslySetInnerHTML","__html","addNodeView","options","MathNodeView","updateAttributes","selected","showToolbar","setShowToolbar","toolbarRef","top","left","position","setPosition","attrs","_toolbarOpened","bodyRect","document","body","getBoundingClientRect","start","coordsAtPos","Math","abs","handleClickOutside","current","contains","target","closest","addEventListener","removeEventListener","handleChange","newLatex","handleDone","commands","focus","display","cursor","margin","ReactDOM","createPortal","zIndex","background","boxShadow"],"mappings":"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","sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport ReactDOM from 'react-dom';\nimport { Extension, Node, mergeAttributes } from '@tiptap/core';\nimport { NodeViewWrapper, ReactRenderer, ReactNodeViewRenderer } from '@tiptap/react';\nimport { Plugin, PluginKey, NodeSelection, TextSelection } from 'prosemirror-state';\nimport { MathPreview, MathToolbar } from '@pie-lib/math-toolbar';\nimport { wrapMath, mmlToLatex, renderMath } from '@pie-lib/math-rendering';\n\nconst ensureTextAfterMathPluginKey = new PluginKey('ensureTextAfterMath');\n\nexport const EnsureTextAfterMathPlugin = (mathNodeName) =>\n new Plugin({\n key: ensureTextAfterMathPluginKey,\n appendTransaction: (transactions, oldState, newState) => {\n // Only act when the doc actually changed\n if (!transactions.some((tr) => tr.docChanged)) return null;\n\n const tr = newState.tr;\n let changed = false;\n\n newState.doc.descendants((node, pos) => {\n if (node.type.name === mathNodeName) {\n const nextPos = pos + node.nodeSize;\n const nextNode = newState.doc.nodeAt(nextPos);\n\n // If there's no node after, or the next node isn't text, insert a space\n if (!nextNode || nextNode.type.name !== 'text') {\n tr.insert(nextPos, newState.schema.text('\\u200b'));\n changed = true;\n }\n }\n });\n\n return changed ? tr : null;\n },\n });\n\nexport const ZeroWidthSpaceHandlingPlugin = new Plugin({\n key: new PluginKey('zeroWidthSpaceHandling'),\n props: {\n handleKeyDown(view, event) {\n const { state, dispatch } = view;\n const { selection, doc } = state;\n const { from, empty } = selection;\n\n if (empty && event.key === 'Backspace' && from > 0) {\n const prevChar = doc.textBetween(from - 1, from, '\\uFFFC', '\\uFFFC');\n if (prevChar === '\\u200b') {\n const tr = state.tr.delete(from - 2, from);\n dispatch(tr);\n return true; // handled\n }\n }\n\n if (empty && event.key === 'ArrowLeft' && from > 0) {\n const prevChar = doc.textBetween(from - 1, from, '\\uFFFC', '\\uFFFC');\n // If the previous character is the zero-width space...\n if (prevChar === '\\u200b') {\n const posBefore = from - 1;\n const resolved = state.doc.resolve(posBefore - 1); // look just before the zwsp\n const maybeNode = resolved.nodeAfter || resolved.nodeBefore;\n\n // Check if there's an inline selectable node (e.g., your math node)\n if (maybeNode) {\n const nodePos = posBefore - maybeNode.nodeSize;\n const nodeResolved = state.doc.resolve(nodePos);\n const tr = state.tr.setSelection(NodeSelection.create(state.doc, nodeResolved.pos));\n dispatch(tr);\n return true;\n } else {\n // Just move the text cursor before the zwsp\n const tr = state.tr.setSelection(TextSelection.create(state.doc, from - 2));\n dispatch(tr);\n return true;\n }\n }\n }\n\n return false;\n },\n },\n});\n\nexport const MathNode = Node.create({\n name: 'math',\n group: 'inline',\n inline: true,\n atom: true,\n\n addAttributes() {\n return {\n latex: { default: '' },\n wrapper: { default: null },\n html: { default: null },\n };\n },\n\n addProseMirrorPlugins() {\n return [EnsureTextAfterMathPlugin(this.name), ZeroWidthSpaceHandlingPlugin];\n },\n\n parseHTML() {\n return [\n {\n tag: 'span[data-latex]',\n getAttrs: (el) => ({\n latex: el.getAttribute('data-raw') || el.textContent,\n }),\n },\n {\n tag: 'span[data-type=\"mathml\"]',\n getAttrs: (el) => ({\n html: el.innerHTML,\n }),\n },\n ];\n },\n\n addCommands() {\n return {\n insertMath: (latex = '') => ({ tr, editor, dispatch }) => {\n const { state } = editor.view;\n const node = state.schema.nodes.math.create({\n latex,\n });\n const { selection } = state;\n\n // The inserted node is typically just before the cursor\n const pos = selection.$from.pos;\n\n tr.insert(pos, node);\n\n if (node?.type?.name === this.name) {\n // Create a NodeSelection from the current doc\n const sel = NodeSelection.create(tr.doc, selection.$from.pos);\n\n // Build a fresh transaction from the current state and set the selection\n tr.setSelection(sel);\n }\n\n dispatch(tr);\n\n return true;\n },\n // insertMath: (latex = '') => ({ commands }) => {\n // return commands.insertContent({\n // type: this.name,\n // attrs: { latex },\n // });\n // },\n };\n },\n\n renderHTML({ HTMLAttributes }) {\n if (HTMLAttributes.html) {\n return ['span', { 'data-type': 'mathml', dangerouslySetInnerHTML: { __html: HTMLAttributes.html } }];\n }\n\n return [\n 'span',\n { 'data-latex': '', 'data-raw': HTMLAttributes.latex },\n wrapMath(HTMLAttributes.latex, HTMLAttributes.wrapper),\n ];\n },\n\n addNodeView() {\n return ReactNodeViewRenderer((props) => <MathNodeView {...{ ...props, options: this.options }} />);\n },\n});\n\nexport const MathNodeView = (props) => {\n const { node, updateAttributes, editor, selected, options } = props;\n const [showToolbar, setShowToolbar] = useState(selected);\n const toolbarRef = useRef(null);\n const [position, setPosition] = useState({ top: 0, left: 0 });\n\n const latex = node.attrs.latex || '';\n\n useEffect(() => {\n if (selected) {\n setShowToolbar(true);\n }\n }, [selected]);\n\n useEffect(() => {\n editor._toolbarOpened = !!showToolbar;\n }, [showToolbar]);\n\n useEffect(() => {\n // Calculate position relative to selection\n const bodyRect = document.body.getBoundingClientRect();\n const { from } = editor.state.selection;\n const start = editor.view.coordsAtPos(from);\n setPosition({\n top: start.top + Math.abs(bodyRect.top) + 40, // shift above\n left: start.left,\n });\n\n const handleClickOutside = (event) => {\n if (\n toolbarRef.current &&\n !toolbarRef.current.contains(event.target) &&\n !event.target.closest('[data-inline-node]')\n ) {\n setShowToolbar(false);\n }\n };\n\n if (showToolbar) {\n document.addEventListener('mousedown', handleClickOutside);\n } else {\n document.removeEventListener('mousedown', handleClickOutside);\n }\n\n return () => document.removeEventListener('mousedown', handleClickOutside);\n }, [editor, showToolbar]);\n\n const handleChange = (newLatex) => {\n updateAttributes({ latex: newLatex });\n };\n\n const handleDone = (newLatex) => {\n updateAttributes({ latex: newLatex });\n setShowToolbar(false);\n\n editor._toolbarOpened = false;\n\n const { selection, tr, doc } = editor.state;\n const sel = TextSelection.create(doc, selection.from + 1);\n\n // Build a fresh transaction from the current state and set the selection\n tr.setSelection(sel);\n editor.view.dispatch(tr);\n editor.commands.focus();\n };\n\n return (\n <NodeViewWrapper\n className=\"math-node\"\n style={{\n display: 'inline-flex',\n cursor: 'pointer',\n margin: '0 4px',\n }}\n data-selected={selected}\n >\n <div onClick={() => setShowToolbar(true)} contentEditable={false}>\n <MathPreview latex={latex} />\n </div>\n {showToolbar &&\n ReactDOM.createPortal(\n <div\n ref={toolbarRef}\n style={{\n position: 'absolute',\n top: `${position.top}px`,\n left: `${position.left}px`,\n zIndex: 20,\n background: 'var(--editable-html-toolbar-bg, #efefef)',\n boxShadow:\n '0px 1px 5px 0px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 3px 1px -2px rgba(0, 0, 0, 0.12)',\n }}\n >\n <MathToolbar latex={latex} autoFocus onChange={handleChange} onDone={handleDone} keypadMode=\"basic\" />\n </div>,\n document.body,\n )}\n </NodeViewWrapper>\n );\n};\n"],"file":"math.js"}
|
package/lib/extensions/media.js
CHANGED
|
@@ -273,4 +273,4 @@ function MediaNodeView(_ref4) {
|
|
|
273
273
|
onRemove: deleteNode
|
|
274
274
|
}));
|
|
275
275
|
}
|
|
276
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHRlbnNpb25zL21lZGlhLmpzIl0sIm5hbWVzIjpbIk1lZGlhIiwiTm9kZSIsImNyZWF0ZSIsIm5hbWUiLCJncm91cCIsImlubGluZSIsImF0b20iLCJhZGRBdHRyaWJ1dGVzIiwidHlwZSIsInNyYyIsIndpZHRoIiwiaGVpZ2h0IiwidGl0bGUiLCJzdGFydHMiLCJlbmRzIiwiZWRpdGluZyIsInRhZyIsInVybCIsInBhcnNlSFRNTCIsImdldEF0dHJzIiwiZWwiLCJnZXRBdHRyaWJ1dGUiLCJkYXRhc2V0IiwicXVlcnlTZWxlY3RvciIsInJlbmRlckhUTUwiLCJIVE1MQXR0cmlidXRlcyIsImNvbnRyb2xzIiwiY29udHJvbHNMaXN0IiwiZnJhbWVib3JkZXIiLCJhbGxvdyIsImFsbG93ZnVsbHNjcmVlbiIsImFkZENvbW1hbmRzIiwiaW5zZXJ0TWVkaWEiLCJhdHRycyIsImNvbW1hbmRzIiwiaW5zZXJ0Q29udGVudCIsInVwZGF0ZU1lZGlhIiwidXBkYXRlQXR0cmlidXRlcyIsImFkZE5vZGVWaWV3IiwicHJvcHMiLCJvcHRpb25zIiwicmVtb3ZlRGlhbG9ncyIsInByZXZEaWFsb2dzIiwiZG9jdW1lbnQiLCJxdWVyeVNlbGVjdG9yQWxsIiwiZm9yRWFjaCIsInMiLCJyZW1vdmUiLCJpbnNlcnREaWFsb2ciLCJuZXdFbCIsImNyZWF0ZUVsZW1lbnQiLCJjYWxsYmFjayIsInJlc3QiLCJpbml0aWFsQm9keU92ZXJmbG93IiwiYm9keSIsInN0eWxlIiwib3ZlcmZsb3ciLCJjbGFzc05hbWUiLCJoYW5kbGVDbG9zZSIsInZhbCIsImRhdGEiLCJ1cGxvYWRTb3VuZFN1cHBvcnQiLCJSZWFjdERPTSIsInJlbmRlciIsImFwcGVuZENoaWxkIiwiTWVkaWFOb2RlVmlldyIsImVkaXRvciIsIm5vZGUiLCJkZWxldGVOb2RlIiwiaGFuZGxlRWRpdCIsImVkaXQiLCJjaGFpbiIsImZvY3VzIiwicnVuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7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QTlCLElBREYsQ0FERCxnQkFLQztBQUFRLElBQUEsR0FBRyxFQUFFQSxHQUFiO0FBQWtCLElBQUEsZUFBZSxNQUFqQztBQUFrQyxJQUFBLFdBQVcsRUFBQztBQUE5QyxJQU5KLGVBU0UsZ0NBQUMsd0JBQUQ7QUFBYyxJQUFBLE1BQU0sRUFBRTRELFVBQXRCO0FBQWtDLElBQUEsUUFBUSxFQUFFRDtBQUE1QyxJQVRGLENBREY7QUFhRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUmVhY3RET00gZnJvbSAncmVhY3QtZG9tJztcbmltcG9ydCB7IG1lcmdlQXR0cmlidXRlcywgTm9kZSB9IGZyb20gJ0B0aXB0YXAvY29yZSc7XG5pbXBvcnQgeyBOb2RlVmlld1dyYXBwZXIsIFJlYWN0Tm9kZVZpZXdSZW5kZXJlciB9IGZyb20gJ0B0aXB0YXAvcmVhY3QnO1xuaW1wb3J0IE1lZGlhRGlhbG9nIGZyb20gJy4uL2NvbXBvbmVudHMvbWVkaWEvTWVkaWFEaWFsb2cnO1xuaW1wb3J0IE1lZGlhVG9vbGJhciBmcm9tICcuLi9jb21wb25lbnRzL21lZGlhL01lZGlhVG9vbGJhcic7XG5cbmV4cG9ydCBjb25zdCBNZWRpYSA9IE5vZGUuY3JlYXRlKHtcbiAgbmFtZTogJ21lZGlhJyxcbiAgZ3JvdXA6ICdpbmxpbmUnLFxuICBpbmxpbmU6IHRydWUsXG4gIGF0b206IHRydWUsXG5cbiAgYWRkQXR0cmlidXRlcygpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogeyBkZWZhdWx0OiAndmlkZW8nIH0sXG4gICAgICBzcmM6IHsgZGVmYXVsdDogbnVsbCB9LFxuICAgICAgd2lkdGg6IHsgZGVmYXVsdDogbnVsbCB9LFxuICAgICAgaGVpZ2h0OiB7IGRlZmF1bHQ6IG51bGwgfSxcbiAgICAgIHRpdGxlOiB7IGRlZmF1bHQ6IG51bGwgfSxcbiAgICAgIHN0YXJ0czogeyBkZWZhdWx0OiBudWxsIH0sXG4gICAgICBlbmRzOiB7IGRlZmF1bHQ6IG51bGwgfSxcbiAgICAgIGVkaXRpbmc6IHsgZGVmYXVsdDogZmFsc2UgfSxcbiAgICAgIHRhZzogeyBkZWZhdWx0OiAnaWZyYW1lJyB9LCAvLyAnaWZyYW1lJyBvciAnYXVkaW8nXG4gICAgICB1cmw6IHsgZGVmYXVsdDogbnVsbCB9LFxuICAgIH07XG4gIH0sXG5cbiAgcGFyc2VIVE1MKCkge1xuICAgIHJldHVybiBbXG4gICAgICB7XG4gICAgICAgIHRhZzogJ2lmcmFtZVtkYXRhLXR5cGU9XCJ2aWRlb1wiXScsXG4gICAgICAgIGdldEF0dHJzOiAoZWwpID0+ICh7XG4gICAgICAgICAgdHlwZTogJ3ZpZGVvJyxcbiAgICAgICAgICB0YWc6ICdpZnJhbWUnLFxuICAgICAgICAgIHNyYzogZWwuZ2V0QXR0cmlidXRlKCdzcmMnKSxcbiAgICAgICAgICB3aWR0aDogZWwuZ2V0QXR0cmlidXRlKCd3aWR0aCcpLFxuICAgICAgICAgIGhlaWdodDogZWwuZ2V0QXR0cmlidXRlKCdoZWlnaHQnKSxcbiAgICAgICAgICB0aXRsZTogZWwuZGF0YXNldC50aXRsZSxcbiAgICAgICAgICBzdGFydHM6IGVsLmRhdGFzZXQuc3RhcnRzLFxuICAgICAgICAgIGVuZHM6IGVsLmRhdGFzZXQuZW5kcyxcbiAgICAgICAgICB1cmw6IGVsLmRhdGFzZXQudXJsLFxuICAgICAgICB9KSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHRhZzogJ2F1ZGlvJyxcbiAgICAgICAgZ2V0QXR0cnM6IChlbCkgPT4gKHtcbiAgICAgICAgICB0eXBlOiAnYXVkaW8nLFxuICAgICAgICAgIHRhZzogJ2F1ZGlvJyxcbiAgICAgICAgICBzcmM6IGVsLnF1ZXJ5U2VsZWN0b3IoJ3NvdXJjZScpPy5nZXRBdHRyaWJ1dGUoJ3NyYycpLFxuICAgICAgICB9KSxcbiAgICAgIH0sXG4gICAgXTtcbiAgfSxcblxuICByZW5kZXJIVE1MKHsgSFRNTEF0dHJpYnV0ZXMgfSkge1xuICAgIGNvbnN0IHsgdGFnLCBzcmMsIHdpZHRoLCBoZWlnaHQgfSA9IEhUTUxBdHRyaWJ1dGVzO1xuXG4gICAgaWYgKHRhZyA9PT0gJ2F1ZGlvJykge1xuICAgICAgcmV0dXJuIFsnYXVkaW8nLCB7IGNvbnRyb2xzOiAnY29udHJvbHMnLCBjb250cm9sc0xpc3Q6ICdub2Rvd25sb2FkJyB9LCBbJ3NvdXJjZScsIHsgc3JjLCB0eXBlOiAnYXVkaW8vbXAzJyB9XV07XG4gICAgfVxuXG4gICAgcmV0dXJuIFtcbiAgICAgICdpZnJhbWUnLFxuICAgICAgbWVyZ2VBdHRyaWJ1dGVzKFxuICAgICAgICB7XG4gICAgICAgICAgJ2RhdGEtdHlwZSc6ICd2aWRlbycsXG4gICAgICAgICAgZnJhbWVib3JkZXI6ICcwJyxcbiAgICAgICAgICBhbGxvdzogJ2FjY2VsZXJvbWV0ZXI7IGF1dG9wbGF5OyBjbGlwYm9hcmQtd3JpdGU7IGVuY3J5cHRlZC1tZWRpYTsgZ3lyb3Njb3BlOyBwaWN0dXJlLWluLXBpY3R1cmUnLFxuICAgICAgICAgIGFsbG93ZnVsbHNjcmVlbjogJycsXG4gICAgICAgICAgc3JjLFxuICAgICAgICB9LFxuICAgICAgICB3aWR0aCA/IHsgd2lkdGggfSA6IHt9LFxuICAgICAgICBoZWlnaHQgPyB7IGhlaWdodCB9IDoge30sXG4gICAgICApLFxuICAgIF07XG4gIH0sXG5cbiAgYWRkQ29tbWFuZHMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGluc2VydE1lZGlhOiAoYXR0cnMpID0+ICh7IGNvbW1hbmRzIH0pID0+IHtcbiAgICAgICAgcmV0dXJuIGNvbW1hbmRzLmluc2VydENvbnRlbnQoeyB0eXBlOiB0aGlzLm5hbWUsIGF0dHJzIH0pO1xuICAgICAgfSxcbiAgICAgIHVwZGF0ZU1lZGlhOiAoYXR0cnMpID0+ICh7IGNvbW1hbmRzIH0pID0+IHtcbiAgICAgICAgcmV0dXJuIGNvbW1hbmRzLnVwZGF0ZUF0dHJpYnV0ZXModGhpcy5uYW1lLCBhdHRycyk7XG4gICAgICB9LFxuICAgIH07XG4gIH0sXG5cbiAgYWRkTm9kZVZpZXcoKSB7XG4gICAgcmV0dXJuIFJlYWN0Tm9kZVZpZXdSZW5kZXJlcigocHJvcHMpID0+IDxNZWRpYU5vZGVWaWV3IHsuLi57IC4uLnByb3BzLCBvcHRpb25zOiB0aGlzLm9wdGlvbnMgfX0gLz4pO1xuICB9LFxufSk7XG5cbmNvbnN0IHJlbW92ZURpYWxvZ3MgPSAoKSA9PiB7XG4gIGNvbnN0IHByZXZEaWFsb2dzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLmluc2VydC1tZWRpYS1kaWFsb2cnKTtcblxuICBwcmV2RGlhbG9ncy5mb3JFYWNoKChzKSA9PiBzLnJlbW92ZSgpKTtcbn07XG5cbmV4cG9ydCBjb25zdCBpbnNlcnREaWFsb2cgPSAocHJvcHMpID0+IHtcbiAgY29uc3QgbmV3RWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgY29uc3QgeyB0eXBlLCBjYWxsYmFjaywgb3B0aW9ucywgLi4ucmVzdCB9ID0gcHJvcHM7XG4gIGNvbnN0IGluaXRpYWxCb2R5T3ZlcmZsb3cgPSBkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJmbG93O1xuXG4gIHJlbW92ZURpYWxvZ3MoKTtcblxuICBuZXdFbC5jbGFzc05hbWUgPSAnaW5zZXJ0LW1lZGlhLWRpYWxvZyc7XG4gIGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSAnaGlkZGVuJztcblxuICBjb25zdCBoYW5kbGVDbG9zZSA9ICh2YWwsIGRhdGEpID0+IHtcbiAgICBjYWxsYmFjayh2YWwsIGRhdGEpO1xuICAgIG5ld0VsLnJlbW92ZSgpO1xuICAgIGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSBpbml0aWFsQm9keU92ZXJmbG93O1xuICB9O1xuXG4gIGNvbnN0IGVsID0gKFxuICAgIDxNZWRpYURpYWxvZ1xuICAgICAgey4uLnJlc3R9XG4gICAgICB1cGxvYWRTb3VuZFN1cHBvcnQ9e29wdGlvbnMudXBsb2FkU291bmRTdXBwb3J0fVxuICAgICAgdHlwZT17dHlwZX1cbiAgICAgIGRpc2FibGVQb3J0YWw9e3RydWV9XG4gICAgICBvcGVuPXt0cnVlfVxuICAgICAgaGFuZGxlQ2xvc2U9e2hhbmRsZUNsb3NlfVxuICAgIC8+XG4gICk7XG5cbiAgUmVhY3RET00ucmVuZGVyKGVsLCBuZXdFbCk7XG5cbiAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChuZXdFbCk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBNZWRpYU5vZGVWaWV3KHsgZWRpdG9yLCBub2RlLCB1cGRhdGVBdHRyaWJ1dGVzLCBkZWxldGVOb2RlLCBvcHRpb25zIH0pIHtcbiAgY29uc3QgeyB0eXBlLCBzcmMsIHdpZHRoLCBoZWlnaHQsIHRhZyB9ID0gbm9kZS5hdHRycztcblxuICBjb25zdCBoYW5kbGVFZGl0ID0gKCkgPT4ge1xuICAgIGluc2VydERpYWxvZyh7XG4gICAgICAuLi5ub2RlLmF0dHJzLFxuICAgICAgb3B0aW9uczogb3B0aW9ucyxcbiAgICAgIGVkaXQ6IHRydWUsXG4gICAgICBjYWxsYmFjazogKHZhbCwgZGF0YSkgPT4ge1xuICAgICAgICBpZiAodmFsKSB7XG4gICAgICAgICAgdXBkYXRlQXR0cmlidXRlcyhkYXRhKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGVkaXRvclxuICAgICAgICAgIC5jaGFpbigpXG4gICAgICAgICAgLmZvY3VzKClcbiAgICAgICAgICAucnVuKCk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaW5zZXJ0RGlhbG9nKHtcbiAgICAgIC4uLm5vZGUuYXR0cnMsXG4gICAgICBvcHRpb25zOiBvcHRpb25zLFxuICAgICAgZWRpdDogdHJ1ZSxcbiAgICAgIGNhbGxiYWNrOiAodmFsLCBkYXRhKSA9PiB7XG4gICAgICAgIGlmICh2YWwpIHtcbiAgICAgICAgICB1cGRhdGVBdHRyaWJ1dGVzKGRhdGEpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGRlbGV0ZU5vZGUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGVkaXRvclxuICAgICAgICAgIC5jaGFpbigpXG4gICAgICAgICAgLmZvY3VzKClcbiAgICAgICAgICAucnVuKCk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9LCBbXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8Tm9kZVZpZXdXcmFwcGVyIGRhdGEtdHlwZT17dHlwZX0gc3R5bGU9e3sgd2lkdGgsIGhlaWdodCB9fT5cbiAgICAgIHt0YWcgPT09ICdhdWRpbycgPyAoXG4gICAgICAgIDxhdWRpbyBjb250cm9scyBjb250cm9sc0xpc3Q9XCJub2Rvd25sb2FkXCI+XG4gICAgICAgICAgPHNvdXJjZSB0eXBlPVwiYXVkaW8vbXAzXCIgc3JjPXtzcmN9IC8+XG4gICAgICAgIDwvYXVkaW8+XG4gICAgICApIDogKFxuICAgICAgICA8aWZyYW1lIHNyYz17c3JjfSBhbGxvd0Z1bGxTY3JlZW4gZnJhbWVCb3JkZXI9XCIwXCIgLz5cbiAgICAgICl9XG5cbiAgICAgIDxNZWRpYVRvb2xiYXIgb25FZGl0PXtoYW5kbGVFZGl0fSBvblJlbW92ZT17ZGVsZXRlTm9kZX0gLz5cbiAgICA8L05vZGVWaWV3V3JhcHBlcj5cbiAgKTtcbn1cbiJdfQ==
|
|
276
|
+
//# sourceMappingURL=media.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/extensions/media.js"],"names":["Media","Node","create","name","group","inline","atom","addAttributes","type","src","width","height","title","starts","ends","editing","tag","url","parseHTML","getAttrs","el","getAttribute","dataset","querySelector","renderHTML","HTMLAttributes","controls","controlsList","frameborder","allow","allowfullscreen","addCommands","insertMedia","attrs","commands","insertContent","updateMedia","updateAttributes","addNodeView","props","options","removeDialogs","prevDialogs","document","querySelectorAll","forEach","s","remove","insertDialog","newEl","createElement","callback","rest","initialBodyOverflow","body","style","overflow","className","handleClose","val","data","uploadSoundSupport","ReactDOM","render","appendChild","MediaNodeView","editor","node","deleteNode","handleEdit","edit","chain","focus","run"],"mappings":"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","sourcesContent":["import React, { useEffect } from 'react';\nimport ReactDOM from 'react-dom';\nimport { mergeAttributes, Node } from '@tiptap/core';\nimport { NodeViewWrapper, ReactNodeViewRenderer } from '@tiptap/react';\nimport MediaDialog from '../components/media/MediaDialog';\nimport MediaToolbar from '../components/media/MediaToolbar';\n\nexport const Media = Node.create({\n name: 'media',\n group: 'inline',\n inline: true,\n atom: true,\n\n addAttributes() {\n return {\n type: { default: 'video' },\n src: { default: null },\n width: { default: null },\n height: { default: null },\n title: { default: null },\n starts: { default: null },\n ends: { default: null },\n editing: { default: false },\n tag: { default: 'iframe' }, // 'iframe' or 'audio'\n url: { default: null },\n };\n },\n\n parseHTML() {\n return [\n {\n tag: 'iframe[data-type=\"video\"]',\n getAttrs: (el) => ({\n type: 'video',\n tag: 'iframe',\n src: el.getAttribute('src'),\n width: el.getAttribute('width'),\n height: el.getAttribute('height'),\n title: el.dataset.title,\n starts: el.dataset.starts,\n ends: el.dataset.ends,\n url: el.dataset.url,\n }),\n },\n {\n tag: 'audio',\n getAttrs: (el) => ({\n type: 'audio',\n tag: 'audio',\n src: el.querySelector('source')?.getAttribute('src'),\n }),\n },\n ];\n },\n\n renderHTML({ HTMLAttributes }) {\n const { tag, src, width, height } = HTMLAttributes;\n\n if (tag === 'audio') {\n return ['audio', { controls: 'controls', controlsList: 'nodownload' }, ['source', { src, type: 'audio/mp3' }]];\n }\n\n return [\n 'iframe',\n mergeAttributes(\n {\n 'data-type': 'video',\n frameborder: '0',\n allow: 'accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture',\n allowfullscreen: '',\n src,\n },\n width ? { width } : {},\n height ? { height } : {},\n ),\n ];\n },\n\n addCommands() {\n return {\n insertMedia: (attrs) => ({ commands }) => {\n return commands.insertContent({ type: this.name, attrs });\n },\n updateMedia: (attrs) => ({ commands }) => {\n return commands.updateAttributes(this.name, attrs);\n },\n };\n },\n\n addNodeView() {\n return ReactNodeViewRenderer((props) => <MediaNodeView {...{ ...props, options: this.options }} />);\n },\n});\n\nconst removeDialogs = () => {\n const prevDialogs = document.querySelectorAll('.insert-media-dialog');\n\n prevDialogs.forEach((s) => s.remove());\n};\n\nexport const insertDialog = (props) => {\n const newEl = document.createElement('div');\n const { type, callback, options, ...rest } = props;\n const initialBodyOverflow = document.body.style.overflow;\n\n removeDialogs();\n\n newEl.className = 'insert-media-dialog';\n document.body.style.overflow = 'hidden';\n\n const handleClose = (val, data) => {\n callback(val, data);\n newEl.remove();\n document.body.style.overflow = initialBodyOverflow;\n };\n\n const el = (\n <MediaDialog\n {...rest}\n uploadSoundSupport={options.uploadSoundSupport}\n type={type}\n disablePortal={true}\n open={true}\n handleClose={handleClose}\n />\n );\n\n ReactDOM.render(el, newEl);\n\n document.body.appendChild(newEl);\n};\n\nexport default function MediaNodeView({ editor, node, updateAttributes, deleteNode, options }) {\n const { type, src, width, height, tag } = node.attrs;\n\n const handleEdit = () => {\n insertDialog({\n ...node.attrs,\n options: options,\n edit: true,\n callback: (val, data) => {\n if (val) {\n updateAttributes(data);\n }\n\n editor\n .chain()\n .focus()\n .run();\n },\n });\n };\n\n useEffect(() => {\n insertDialog({\n ...node.attrs,\n options: options,\n edit: true,\n callback: (val, data) => {\n if (val) {\n updateAttributes(data);\n } else {\n deleteNode();\n }\n\n editor\n .chain()\n .focus()\n .run();\n },\n });\n }, []);\n\n return (\n <NodeViewWrapper data-type={type} style={{ width, height }}>\n {tag === 'audio' ? (\n <audio controls controlsList=\"nodownload\">\n <source type=\"audio/mp3\" src={src} />\n </audio>\n ) : (\n <iframe src={src} allowFullScreen frameBorder=\"0\" />\n )}\n\n <MediaToolbar onEdit={handleEdit} onRemove={deleteNode} />\n </NodeViewWrapper>\n );\n}\n"],"file":"media.js"}
|
|
@@ -481,4 +481,4 @@ var InlineDropdownNode = _react2.Node.create({
|
|
|
481
481
|
});
|
|
482
482
|
|
|
483
483
|
exports.InlineDropdownNode = InlineDropdownNode;
|
|
484
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHRlbnNpb25zL3Jlc3BvbnNlQXJlYS5qcyJdLCJuYW1lcyI6WyJsYXN0SW5kZXhNYXAiLCJub3JtYWxpemVUeXBlIiwidHlwZSIsIlN0cmluZyIsInJlcGxhY2UiLCJnZXRBdHRySW5kZXgiLCJub2RlIiwiYXR0cnMiLCJpbmRleCIsImNvbGxlY3ROb2Rlc09mVHlwZSIsImRvYyIsInR5cGVOYW1lIiwicmVzdWx0cyIsImRlc2NlbmRhbnRzIiwicG9zIiwibmFtZSIsInB1c2giLCJjb3VudE5vZGVzT2ZUeXBlIiwiY291bnQiLCJnZXREZWZhdWx0Tm9kZSIsInNjaGVtYSIsIm5vZGVUeXBlIiwibm9kZXMiLCJjcmVhdGUiLCJpZCIsInZhbHVlIiwic2VsZWN0aW9uQWZ0ZXJQb3MiLCIkcG9zIiwicmVzb2x2ZSIsIk1hdGgiLCJtaW4iLCJjb250ZW50Iiwic2l6ZSIsIlRleHRTZWxlY3Rpb24iLCJuZWFyIiwiUmVzcG9uc2VBcmVhRXh0ZW5zaW9uIiwiRXh0ZW5zaW9uIiwiYWRkT3B0aW9ucyIsIm1heFJlc3BvbnNlQXJlYXMiLCJlcnJvciIsIm9wdGlvbnMiLCJyZXNwQXJlYVRvb2xiYXIiLCJvbkhhbmRsZUFyZWFDaGFuZ2UiLCJhZGRQcm9zZU1pcnJvclBsdWdpbnMiLCJrZXkiLCJQbHVnaW5LZXkiLCJQbHVnaW4iLCJ2aWV3IiwidW5kZWZpbmVkIiwic3RhdGUiLCJpZHgiLCJuIiwicGFyc2VJbnQiLCJOdW1iZXIiLCJpc05hTiIsInVwZGF0ZSIsInByZXZTdGF0ZSIsImVxIiwiY3VycmVudExpc3QiLCJvbGRMaXN0IiwidG9vbGJhciIsImRpc2FibGVkIiwibGVuZ3RoIiwiY3VycmVudEluZGV4U2V0IiwiU2V0IiwibWFwIiwieCIsInJlbW92ZWQiLCJmaWx0ZXIiLCJoYXMiLCJhZGRDb21tYW5kcyIsImluc2VydFJlc3BvbnNlQXJlYSIsInRyIiwiZGlzcGF0Y2giLCJjb21tYW5kcyIsImN1cnJlbnRDb3VudCIsInByZXZJbmRleCIsIm5ld0luZGV4IiwibmV3SW5saW5lIiwic2VsZWN0aW9uIiwiaW5zZXJ0UG9zIiwiZnJvbSIsInRyeUluc2VydEF0IiwiaW5zZXJ0IiwiZSIsInVzZWRQb3MiLCJpbmNsdWRlcyIsInNldFNlbGVjdGlvbiIsIk5vZGVTZWxlY3Rpb24iLCJhZnRlciIsIm5vZGVTaXplIiwiZm9jdXMiLCJyZWZyZXNoUmVzcG9uc2VBcmVhIiwiJGZyb20iLCJub2RlQWZ0ZXIiLCJub2RlUG9zIiwic2V0Tm9kZU1hcmt1cCIsInVwZGF0ZWQiLCJEYXRlIiwibm93IiwiRXhwbGljaXRDb25zdHJ1Y3RlZFJlc3BvbnNlTm9kZSIsIk5vZGUiLCJncm91cCIsImlubGluZSIsImF0b20iLCJhZGRBdHRyaWJ1dGVzIiwicGFyc2VIVE1MIiwidGFnIiwiZ2V0QXR0cnMiLCJlbCIsImRhdGFzZXQiLCJyZW5kZXJIVE1MIiwiSFRNTEF0dHJpYnV0ZXMiLCJhZGROb2RlVmlldyIsInByb3BzIiwiTWF0aFRlbXBsYXRlZE5vZGUiLCJEcmFnSW5UaGVCbGFua05vZGUiLCJpblRhYmxlIiwiSW5saW5lRHJvcGRvd25Ob2RlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7QUFFQSxJQUFNQSxZQUFZLEdBQUcsRUFBckI7O0FBRUEsSUFBTUMsYUFBYSxHQUFHLFNBQWhCQSxhQUFnQixDQUFDQyxJQUFEO0FBQUEsU0FBVUMsTUFBTSxDQUFDRCxJQUFJLElBQUksRUFBVCxDQUFOLENBQW1CRSxPQUFuQixDQUEyQixJQUEzQixFQUFpQyxHQUFqQyxDQUFWO0FBQUEsQ0FBdEI7O0FBRUEsSUFBTUMsWUFBWSxHQUFHLFNBQWZBLFlBQWUsQ0FBQ0MsSUFBRDtBQUFBLFNBQVdBLElBQUksSUFBSUEsSUFBSSxDQUFDQyxLQUFiLElBQXNCRCxJQUFJLENBQUNDLEtBQUwsQ0FBV0MsS0FBWCxJQUFvQixJQUExQyxHQUFpREwsTUFBTSxDQUFDRyxJQUFJLENB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V0FBTyxDQUNMO0FBQ0VDLE1BQUFBLEdBQUcsRUFBRSxtQ0FEUDtBQUVFQyxNQUFBQSxRQUFRLEVBQUUsa0JBQUNDLEVBQUQ7QUFBQSxlQUFTO0FBQ2pCckcsVUFBQUEsS0FBSyxFQUFFcUcsRUFBRSxDQUFDQyxPQUFILENBQVd0RyxLQUREO0FBRWpCaUIsVUFBQUEsS0FBSyxFQUFFb0YsRUFBRSxDQUFDQyxPQUFILENBQVdyRjtBQUZELFNBQVQ7QUFBQTtBQUZaLEtBREssQ0FBUDtBQVNELEdBdEIyQztBQXVCNUNzRixFQUFBQSxVQXZCNEMsNkJBdUJiO0FBQUEsUUFBbEJDLGNBQWtCLFNBQWxCQSxjQUFrQjtBQUM3QixXQUFPLENBQ0wsTUFESyxFQUVMO0FBQ0UsbUJBQWEsaUJBRGY7QUFFRSxvQkFBY0EsY0FBYyxDQUFDeEcsS0FGL0I7QUFHRSxvQkFBY3dHLGNBQWMsQ0FBQ3ZGO0FBSC9CLEtBRkssQ0FBUDtBQVFELEdBaEMyQztBQWlDNUN3RixFQUFBQSxXQWpDNEMseUJBaUM5QjtBQUFBOztBQUNaLFdBQU8sbUNBQXNCLFVBQUNDLEtBQUQ7QUFBQSwwQkFBVyxnQ0FBQywwQkFBRCxrQ0FBeUJBLEtBQXpCO0FBQWdDMUUsUUFBQUEsT0FBTyxFQUFFLE1BQUksQ0FBQ0E7QUFBOUMsU0FBWDtBQUFBLEtBQXRCLENBQVA7QUFDRDtBQW5DMkMsQ0FBWixDQUEzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBQbHVnaW4sIFBsdWdpbktleSwgVGV4dFNlbGVjdGlvbiwgTm9kZVNlbGVjdGlvbiB9IGZyb20gJ3Byb3NlbWlycm9yLXN0YXRlJztcbmltcG9ydCB7IEV4dGVuc2lvbiB9IGZyb20gJ0B0aXB0YXAvY29yZSc7XG5pbXBvcnQgeyBOb2RlLCBSZWFjdE5vZGVWaWV3UmVuZGVyZXIgfSBmcm9tICdAdGlwdGFwL3JlYWN0JztcbmltcG9ydCBFeHBsaWNpdENvbnN0cnVjdGVkUmVzcG9uc2UgZnJvbSAnLi4vY29tcG9uZW50cy9yZXNwQXJlYS9FeHBsaWNpdENvbnN0cnVjdGVkUmVzcG9uc2UnO1xuaW1wb3J0IERyYWdJblRoZUJsYW5rIGZyb20gJy4uL2NvbXBvbmVudHMvcmVzcEFyZWEvRHJhZ0luVGhlQmxhbmsvRHJhZ0luVGhlQmxhbmsnO1xuaW1wb3J0IElubGluZURyb3Bkb3duIGZyb20gJy4uL2NvbXBvbmVudHMvcmVzcEFyZWEvSW5saW5lRHJvcGRvd24nO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcblxuY29uc3QgbGFzdEluZGV4TWFwID0ge307XG5cbmNvbnN0IG5vcm1hbGl6ZVR5cGUgPSAodHlwZSkgPT4gU3RyaW5nKHR5cGUgfHwgJycpLnJlcGxhY2UoLy0vZywgJ18nKTtcblxuY29uc3QgZ2V0QXR0ckluZGV4ID0gKG5vZGUpID0+IChub2RlICYmIG5vZGUuYXR0cnMgJiYgbm9kZS5hdHRycy5pbmRleCAhPSBudWxsID8gU3RyaW5nKG5vZGUuYXR0cnMuaW5kZXgpIDogbnVsbCk7XG5cbmNvbnN0IGNvbGxlY3ROb2Rlc09mVHlwZSA9IChkb2MsIHR5cGVOYW1lKSA9PiB7XG4gIGNvbnN0IHJlc3VsdHMgPSBbXTtcblxuICBkb2MuZGVzY2VuZGFudHMoKG5vZGUsIHBvcykgPT4ge1xuICAgIGlmIChub2RlLnR5cGUgJiYgbm9kZS50eXBlLm5hbWUgPT09IHR5cGVOYW1lKSB7XG4gICAgICBjb25zdCBpbmRleCA9IGdldEF0dHJJbmRleChub2RlKTtcbiAgICAgIGlmIChpbmRleCAhPSBudWxsKSByZXN1bHRzLnB1c2goeyBpbmRleCwgcG9zLCBub2RlIH0pO1xuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSk7XG5cbiAgcmV0dXJuIHJlc3VsdHM7XG59O1xuXG5jb25zdCBjb3VudE5vZGVzT2ZUeXBlID0gKGRvYywgdHlwZU5hbWUpID0+IHtcbiAgbGV0IGNvdW50ID0gMDtcbiAgZG9jLmRlc2NlbmRhbnRzKChub2RlKSA9PiB7XG4gICAgaWYgKG5vZGUudHlwZSAmJiBub2RlLnR5cGUubmFtZSA9PT0gdHlwZU5hbWUpIGNvdW50ICs9IDE7XG4gICAgcmV0dXJuIHRydWU7XG4gIH0pO1xuICByZXR1cm4gY291bnQ7XG59O1xuXG5jb25zdCBnZXREZWZhdWx0Tm9kZSA9ICh7IHNjaGVtYSwgdHlwZU5hbWUsIGluZGV4IH0pID0+IHtcbiAgY29uc3Qgbm9kZVR5cGUgPSBzY2hlbWEubm9kZXNbdHlwZU5hbWVdO1xuICBpZiAoIW5vZGVUeXBlKSByZXR1cm4gbnVsbDtcblxuICAvLyBtaXJyb3IgeW91ciBTbGF0ZSBcImdldERlZmF1bHRFbGVtZW50KG9wdHMsIG5ld0luZGV4KVwiXG4gIC8vIGN1c3RvbWl6ZSBhdHRycyBhcyBuZWVkZWQ6XG4gIHJldHVybiBub2RlVHlwZS5jcmVhdGUoe1xuICAgIGluZGV4OiBTdHJpbmcoaW5kZXgpLFxuICAgIGlkOiBTdHJpbmcoaW5kZXgpLFxuICAgIHZhbHVlOiAnJyxcbiAgfSk7XG59O1xuXG4vLyBGaW5kIGEgZ29vZCBjdXJzb3IgcG9zaXRpb24gKmFmdGVyKiBhbiBpbnNlcnRlZCBub2RlLlxuY29uc3Qgc2VsZWN0aW9uQWZ0ZXJQb3MgPSAoZG9jLCBwb3MpID0+IHtcbiAgY29uc3QgJHBvcyA9IGRvYy5yZXNvbHZlKE1hdGgubWluKHBvcywgZG9jLmNvbnRlbnQuc2l6ZSkpO1xuICByZXR1cm4gVGV4dFNlbGVjdGlvbi5uZWFyKCRwb3MsIDEpO1xufTtcblxuZXhwb3J0IGNvbnN0IFJlc3BvbnNlQXJlYUV4dGVuc2lvbiA9IEV4dGVuc2lvbi5jcmVhdGUoe1xuICBuYW1lOiAncmVzcG9uc2VBcmVhJyxcblxuICBhZGRPcHRpb25zKCkge1xuICAgIHJldHVybiB7XG4gICAgICBtYXhSZXNwb25zZUFyZWFzOiBudWxsLFxuICAgICAgZXJyb3I6IG51bGwsXG4gICAgICBvcHRpb25zOiBudWxsLFxuICAgICAgcmVzcEFyZWFUb29sYmFyOiBudWxsLFxuICAgICAgb25IYW5kbGVBcmVhQ2hhbmdlOiBudWxsLFxuICAgIH07XG4gIH0sXG5cbiAgYWRkUHJvc2VNaXJyb3JQbHVnaW5zKCkge1xuICAgIGlmICghdGhpcy5vcHRpb25zLnR5cGUpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICBjb25zdCB0eXBlTmFtZSA9IG5vcm1hbGl6ZVR5cGUodGhpcy5vcHRpb25zLnR5cGUpO1xuICAgIGNvbnN0IGtleSA9IG5ldyBQbHVnaW5LZXkoYHJlc3BvbnNlLWFyZWEtd2F0Y2hlcjoke3R5cGVOYW1lfWApO1xuXG4gICAgcmV0dXJuIFtcbiAgICAgIG5ldyBQbHVnaW4oe1xuICAgICAgICBrZXksXG5cbiAgICAgICAgdmlldzogKHZpZXcpID0+IHtcbiAgICAgICAgICAvLyBMYXp5IGluaXQgbGFzdEluZGV4TWFwW3R5cGVOYW1lXVxuICAgICAgICAgIGlmIChsYXN0SW5kZXhNYXBbdHlwZU5hbWVdID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGxhc3RJbmRleE1hcFt0eXBlTmFtZV0gPSAwO1xuXG4gICAgICAgICAgICB2aWV3LnN0YXRlLmRvYy5kZXNjZW5kYW50cygobm9kZSkgPT4ge1xuICAgICAgICAgICAgICBpZiAobm9kZS50eXBlICYmIG5vZGUudHlwZS5uYW1lID09PSB0eXBlTmFtZSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGlkeCA9IGdldEF0dHJJbmRleChub2RlKTtcbiAgICAgICAgICAgICAgICBpZiAoaWR4ICE9IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IG4gPSBwYXJzZUludChpZHgsIDEwKTtcbiAgICAgICAgICAgICAgICAgIGlmICghTnVtYmVyLmlzTmFOKG4pICYmIG4gPiBsYXN0SW5kZXhNYXBbdHlwZU5hbWVdKSB7XG4gICAgICAgICAgICAgICAgICAgIGxhc3RJbmRleE1hcFt0eXBlTmFtZV0gPSBuO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB1cGRhdGU6ICh2aWV3LCBwcmV2U3RhdGUpID0+IHtcbiAgICAgICAgICAgICAgY29uc3Qgc3RhdGUgPSB2aWV3LnN0YXRlO1xuICAgICAgICAgICAgICBpZiAocHJldlN0YXRlLmRvYy5lcShzdGF0ZS5kb2MpKSByZXR1cm47XG5cbiAgICAgICAgICAgICAgY29uc3QgY3VycmVudExpc3QgPSBjb2xsZWN0Tm9kZXNPZlR5cGUoc3RhdGUuZG9jLCB0eXBlTmFtZSk7XG4gICAgICAgICAgICAgIGNvbnN0IG9sZExpc3QgPSBjb2xsZWN0Tm9kZXNPZlR5cGUocHJldlN0YXRlLmRvYywgdHlwZU5hbWUpO1xuXG4gICAgICAgICAgICAgIGlmICh0aGlzLm9wdGlvbnMudG9vbGJhcikge1xuICAgICAgICAgICAgICAgIHRoaXMub3B0aW9ucy50b29sYmFyLmRpc2FibGVkID0gY3VycmVudExpc3QubGVuZ3RoID49IHRoaXMub3B0aW9ucy5tYXhSZXNwb25zZUFyZWFzO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLy8gUmVtb3ZlZCBlbGVtZW50cyAoc2FtZSBsb2dpYyBhcyBTbGF0ZSlcbiAgICAgICAgICAgICAgaWYgKG9sZExpc3QubGVuZ3RoID4gY3VycmVudExpc3QubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY3VycmVudEluZGV4U2V0ID0gbmV3IFNldChjdXJyZW50TGlzdC5tYXAoKHgpID0+IHguaW5kZXgpKTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IHJlbW92ZWQgPSBvbGRMaXN0LmZpbHRlcigoeCkgPT4gIWN1cnJlbnRJbmRleFNldC5oYXMoeC5pbmRleCkpO1xuXG4gICAgICAgICAgICAgICAgaWYgKHJlbW92ZWQubGVuZ3RoICYmIHR5cGVvZiB0aGlzLm9wdGlvbnMub25IYW5kbGVBcmVhQ2hhbmdlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICB0aGlzLm9wdGlvbnMub25IYW5kbGVBcmVhQ2hhbmdlKHJlbW92ZWQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9O1xuICAgICAgICB9LFxuICAgICAgfSksXG4gICAgXTtcbiAgfSxcblxuICBhZGRDb21tYW5kcygpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaW5zZXJ0UmVzcG9uc2VBcmVhOiAodHlwZSkgPT4gKHsgdHIsIHN0YXRlLCBkaXNwYXRjaCwgY29tbWFuZHMgfSkgPT4ge1xuICAgICAgICBjb25zdCB0eXBlTmFtZSA9IG5vcm1hbGl6ZVR5cGUodHlwZSk7XG5cbiAgICAgICAgLy8gLS0tIFNsYXRlOiBjdXJyZW50UmVzcEFyZWFMaXN0ICsgbWF4IGNoZWNrIC0tLVxuICAgICAgICBjb25zdCBjdXJyZW50Q291bnQgPSBjb3VudE5vZGVzT2ZUeXBlKHN0YXRlLmRvYywgdHlwZU5hbWUpO1xuICAgICAgICBpZiAoY3VycmVudENvdW50ID49IHRoaXMub3B0aW9ucy5tYXhSZXNwb25zZUFyZWFzKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gLS0tIFNsYXRlOiBpbmRleGluZyBsb2dpYyAoa2VwdCBpZGVudGljYWwpIC0tLVxuICAgICAgICBpZiAobGFzdEluZGV4TWFwW3R5cGVOYW1lXSA9PT0gdW5kZWZpbmVkKSBsYXN0SW5kZXhNYXBbdHlwZU5hbWVdID0gMDtcblxuICAgICAgICBjb25zdCBwcmV2SW5kZXggPSBsYXN0SW5kZXhNYXBbdHlwZU5hbWVdO1xuICAgICAgICBjb25zdCBuZXdJbmRleCA9IHByZXZJbmRleCA9PT0gMCA/IHByZXZJbmRleCA6IHByZXZJbmRleCArIDE7XG5cbiAgICAgICAgLy8gU2xhdGUgaW5jcmVtZW50cyBtYXAgZXZlbiBpZiBuZXdJbmRleCA9PT0gMFxuICAgICAgICBsYXN0SW5kZXhNYXBbdHlwZU5hbWVdICs9IDE7XG5cbiAgICAgICAgY29uc3QgbmV3SW5saW5lID0gZ2V0RGVmYXVsdE5vZGUoe1xuICAgICAgICAgIHNjaGVtYTogc3RhdGUuc2NoZW1hLFxuICAgICAgICAgIHR5cGVOYW1lLFxuICAgICAgICAgIGluZGV4OiBuZXdJbmRleCxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKCFuZXdJbmxpbmUpIHJldHVybiBmYWxzZTtcblxuICAgICAgICAvLyAtLS0gSW5zZXJ0IGxvZ2ljIC0tLVxuICAgICAgICBjb25zdCB7IHNlbGVjdGlvbiB9ID0gc3RhdGU7XG4gICAgICAgIGxldCBpbnNlcnRQb3MgPSBzZWxlY3Rpb24uZnJvbTtcblxuICAgICAgICAvLyBJZiB3ZSdyZSBpbiBhIE5vZGVTZWxlY3Rpb24sIGluc2VydCBiZWZvcmUvYWZ0ZXIgaXMgYW1iaWd1b3VzO1xuICAgICAgICAvLyBXZSdsbCBpbnNlcnQgYXQgaXRzIFwiZnJvbVwiIChsaWtlIHlvdXIgY3VycmVudCBjb2RlKS5cbiAgICAgICAgLy8gSWYgaW5zZXJ0aW9uIGZhaWxzLCB3ZSBmYWxsYmFjayB0byBlbmQgb2YgZG9jLlxuICAgICAgICBjb25zdCB0cnlJbnNlcnRBdCA9IChwb3MpID0+IHtcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgdHIuaW5zZXJ0KHBvcywgbmV3SW5saW5lKTtcbiAgICAgICAgICAgIHJldHVybiBwb3M7XG4gICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIGxldCB1c2VkUG9zID0gdHJ5SW5zZXJ0QXQoaW5zZXJ0UG9zKTtcblxuICAgICAgICAvLyBTbGF0ZSBicmFuY2g6IFwibWFya3VwIGVtcHR5IGFuZCB0aGVyZSdzIG5vIGZvY3VzXCJcbiAgICAgICAgLy8gUHJvc2VNaXJyb3IgZG9lc24ndCBleHBvc2UgXCJubyBmb2N1c1wiIHRoZSBzYW1lIHdheSwgc28gdGhlIGNsb3Nlc3RcbiAgICAgICAgLy8gZXF1aXZhbGVudCBmYWxsYmFjayBpcyBpbnNlcnRpbmcgYXQgZW5kIG9mIGRvY3VtZW50LlxuICAgICAgICBpZiAodXNlZFBvcyA9PSBudWxsKSB7XG4gICAgICAgICAgdXNlZFBvcyA9IHRyeUluc2VydEF0KHRyLmRvYy5jb250ZW50LnNpemUpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh1c2VkUG9zID09IG51bGwpIHJldHVybiBmYWxzZTtcblxuICAgICAgICAvLyBPcHRpb25hbGx5IHNlbGVjdCB0aGUgbm9kZSB5b3UganVzdCBpbnNlcnRlZCAobGlrZSB5b3VyIG9yaWdpbmFsIGNvbW1hbmQpXG4gICAgICAgIC8vIHRyLnNldFNlbGVjdGlvbihOb2RlU2VsZWN0aW9uLmNyZWF0ZSh0ci5kb2MsIHVzZWRQb3MpKVxuXG4gICAgICAgIC8vIC0tLSBDdXJzb3IgbW92ZSBiZWhhdmlvciBmb3IgY2VydGFpbiB0eXBlcyAoU2xhdGU6IG1vdmVGb2N1c1RvIG5leHQgdGV4dCkgLS0tXG4gICAgICAgIGlmIChcbiAgICAgICAgICBbJ21hdGhfdGVtcGxhdGVkJywgJ2lubGluZV9kcm9wZG93bicsICdkcmFnX2luX3RoZV9ibGFuaycsICdleHBsaWNpdF9jb25zdHJ1Y3RlZF9yZXNwb25zZSddLmluY2x1ZGVzKHR5cGVOYW1lKVxuICAgICAgICApIHtcbiAgICAgICAgICB0ci5zZXRTZWxlY3Rpb24oTm9kZVNlbGVjdGlvbi5jcmVhdGUodHIuZG9jLCB1c2VkUG9zKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8gRGVmYXVsdDogcHV0IGN1cnNvciBhZnRlciBpbnNlcnRlZCBub2RlXG4gICAgICAgICAgY29uc3QgYWZ0ZXIgPSB1c2VkUG9zICsgbmV3SW5saW5lLm5vZGVTaXplO1xuICAgICAgICAgIHRyLnNldFNlbGVjdGlvbihzZWxlY3Rpb25BZnRlclBvcyh0ci5kb2MsIGFmdGVyKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZGlzcGF0Y2gpIHtcbiAgICAgICAgICBjb21tYW5kcy5mb2N1cygpO1xuICAgICAgICAgIGRpc3BhdGNoKHRyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfSxcbiAgICAgIHJlZnJlc2hSZXNwb25zZUFyZWE6ICgpID0+ICh7IHRyLCBzdGF0ZSwgY29tbWFuZHMsIGRpc3BhdGNoIH0pID0+IHtcbiAgICAgICAgY29uc3QgeyBzZWxlY3Rpb24gfSA9IHN0YXRlO1xuICAgICAgICBjb25zdCBub2RlID0gc2VsZWN0aW9uLiRmcm9tLm5vZGVBZnRlcjtcbiAgICAgICAgY29uc3Qgbm9kZVBvcyA9IHNlbGVjdGlvbi5mcm9tO1xuXG4gICAgICAgIHRyLnNldE5vZGVNYXJrdXAobm9kZVBvcywgdW5kZWZpbmVkLCB7IC4uLm5vZGUuYXR0cnMsIHVwZGF0ZWQ6IGAke0RhdGUubm93KCl9YCB9KTtcbiAgICAgICAgdHIuc2V0U2VsZWN0aW9uKE5vZGVTZWxlY3Rpb24uY3JlYXRlKHRyLmRvYywgbm9kZVBvcykpO1xuXG4gICAgICAgIGlmIChkaXNwYXRjaCkge1xuICAgICAgICAgIGNvbW1hbmRzLmZvY3VzKCk7XG4gICAgICAgICAgZGlzcGF0Y2godHIpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9LFxuICAgIH07XG4gIH0sXG59KTtcblxuLyoqXG4gKiBFeHBsaWNpdENvbnN0cnVjdGVkUmVzcG9uc2UgTm9kZVxuICovXG5leHBvcnQgY29uc3QgRXhwbGljaXRDb25zdHJ1Y3RlZFJlc3BvbnNlTm9kZSA9IE5vZGUuY3JlYXRlKHtcbiAgbmFtZTogJ2V4cGxpY2l0X2NvbnN0cnVjdGVkX3Jlc3BvbnNlJyxcbiAgZ3JvdXA6ICdpbmxpbmUnLFxuICBpbmxpbmU6IHRydWUsXG4gIGF0b206IHRydWUsXG4gIGFkZEF0dHJpYnV0ZXMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGluZGV4OiB7IGRlZmF1bHQ6IG51bGwgfSxcbiAgICAgIHZhbHVlOiB7IGRlZmF1bHQ6ICcnIH0sXG4gICAgICB1cGRhdGVkOiB7IGRlZmF1bHQ6ICcnIH0sXG4gICAgfTtcbiAgfSxcbiAgcGFyc2VIVE1MKCkge1xuICAgIHJldHVybiBbXG4gICAgICB7XG4gICAgICAgIHRhZzogJ3NwYW5bZGF0YS10eXBlPVwiZXhwbGljaXRfY29uc3RydWN0ZWRfcmVzcG9uc2VcIl0nLFxuICAgICAgICBnZXRBdHRyczogKGVsKSA9PiAoe1xuICAgICAgICAgIGluZGV4OiBlbC5kYXRhc2V0LmluZGV4LFxuICAgICAgICAgIHZhbHVlOiBlbC5kYXRhc2V0LnZhbHVlLFxuICAgICAgICB9KSxcbiAgICAgIH0sXG4gICAgXTtcbiAgfSxcbiAgcmVuZGVySFRNTCh7IEhUTUxBdHRyaWJ1dGVzIH0pIHtcbiAgICByZXR1cm4gW1xuICAgICAgJ3NwYW4nLFxuICAgICAge1xuICAgICAgICAnZGF0YS10eXBlJzogJ2V4cGxpY2l0X2NvbnN0cnVjdGVkX3Jlc3BvbnNlJyxcbiAgICAgICAgJ2RhdGEtaW5kZXgnOiBIVE1MQXR0cmlidXRlcy5pbmRleCxcbiAgICAgICAgJ2RhdGEtdmFsdWUnOiBIVE1MQXR0cmlidXRlcy52YWx1ZSxcbiAgICAgIH0sXG4gICAgXTtcbiAgfSxcbiAgYWRkTm9kZVZpZXcoKSB7XG4gICAgcmV0dXJuIFJlYWN0Tm9kZVZpZXdSZW5kZXJlcigocHJvcHMpID0+IDxFeHBsaWNpdENvbnN0cnVjdGVkUmVzcG9uc2Ugey4uLnsgLi4ucHJvcHMsIG9wdGlvbnM6IHRoaXMub3B0aW9ucyB9fSAvPik7XG4gIH0sXG59KTtcblxuLyoqXG4gKiBNYXRoVGVtcGxhdGVkIE5vZGVcbiAqL1xuZXhwb3J0IGNvbnN0IE1hdGhUZW1wbGF0ZWROb2RlID0gTm9kZS5jcmVhdGUoe1xuICBuYW1lOiAnbWF0aF90ZW1wbGF0ZWQnLFxuICBncm91cDogJ2lubGluZScsXG4gIGlubGluZTogdHJ1ZSxcbiAgYXRvbTogdHJ1ZSxcbiAgYWRkQXR0cmlidXRlcygpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaW5kZXg6IHsgZGVmYXVsdDogbnVsbCB9LFxuICAgICAgdmFsdWU6IHsgZGVmYXVsdDogJycgfSxcbiAgICAgIHVwZGF0ZWQ6IHsgZGVmYXVsdDogJycgfSxcbiAgICB9O1xuICB9LFxuICBwYXJzZUhUTUwoKSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIHtcbiAgICAgICAgdGFnOiAnc3BhbltkYXRhLXR5cGU9XCJtYXRoX3RlbXBsYXRlZFwiXScsXG4gICAgICAgIGdldEF0dHJzOiAoZWwpID0+ICh7XG4gICAgICAgICAgaW5kZXg6IGVsLmRhdGFzZXQuaW5kZXgsXG4gICAgICAgICAgdmFsdWU6IGVsLmRhdGFzZXQudmFsdWUsXG4gICAgICAgIH0pLFxuICAgICAgfSxcbiAgICBdO1xuICB9LFxuICByZW5kZXJIVE1MKHsgSFRNTEF0dHJpYnV0ZXMgfSkge1xuICAgIHJldHVybiBbXG4gICAgICAnc3BhbicsXG4gICAgICB7XG4gICAgICAgICdkYXRhLXR5cGUnOiAnbWF0aF90ZW1wbGF0ZWQnLFxuICAgICAgICAnZGF0YS1pbmRleCc6IEhUTUxBdHRyaWJ1dGVzLmluZGV4LFxuICAgICAgICAnZGF0YS12YWx1ZSc6IEhUTUxBdHRyaWJ1dGVzLnZhbHVlLFxuICAgICAgfSxcbiAgICBdO1xuICB9LFxuICBhZGROb2RlVmlldygpIHtcbiAgICByZXR1cm4gUmVhY3ROb2RlVmlld1JlbmRlcmVyKCgpID0+IDxkaXY+PC9kaXY+KTtcbiAgfSxcbn0pO1xuXG4vKipcbiAqIERyYWdJblRoZUJsYW5rIE5vZGVcbiAqL1xuZXhwb3J0IGNvbnN0IERyYWdJblRoZUJsYW5rTm9kZSA9IE5vZGUuY3JlYXRlKHtcbiAgbmFtZTogJ2RyYWdfaW5fdGhlX2JsYW5rJyxcbiAgZ3JvdXA6ICdpbmxpbmUnLFxuICBpbmxpbmU6IHRydWUsXG4gIGF0b206IHRydWUsXG4gIGFkZEF0dHJpYnV0ZXMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGluZGV4OiB7IGRlZmF1bHQ6IG51bGwgfSxcbiAgICAgIGlkOiB7IGRlZmF1bHQ6IG51bGwgfSxcbiAgICAgIHZhbHVlOiB7IGRlZmF1bHQ6ICcnIH0sXG4gICAgICBpblRhYmxlOiB7IGRlZmF1bHQ6IG51bGwgfSxcbiAgICAgIHVwZGF0ZWQ6IHsgZGVmYXVsdDogJycgfSxcbiAgICB9O1xuICB9LFxuICBwYXJzZUhUTUwoKSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIHtcbiAgICAgICAgdGFnOiAnc3BhbltkYXRhLXR5cGU9XCJkcmFnX2luX3RoZV9ibGFua1wiXScsXG4gICAgICAgIGdldEF0dHJzOiAoZWwpID0+ICh7XG4gICAgICAgICAgaW5kZXg6IGVsLmRhdGFzZXQuaW5kZXgsXG4gICAgICAgICAgaWQ6IGVsLmRhdGFzZXQuaWQsXG4gICAgICAgICAgdmFsdWU6IGVsLmRhdGFzZXQudmFsdWUsXG4gICAgICAgICAgaW5UYWJsZTogZWwuZGF0YXNldC5pblRhYmxlLFxuICAgICAgICB9KSxcbiAgICAgIH0sXG4gICAgXTtcbiAgfSxcbiAgcmVuZGVySFRNTCh7IEhUTUxBdHRyaWJ1dGVzIH0pIHtcbiAgICByZXR1cm4gW1xuICAgICAgJ3NwYW4nLFxuICAgICAge1xuICAgICAgICAnZGF0YS10eXBlJzogJ2RyYWdfaW5fdGhlX2JsYW5rJyxcbiAgICAgICAgJ2RhdGEtaW5kZXgnOiBIVE1MQXR0cmlidXRlcy5pbmRleCxcbiAgICAgICAgJ2RhdGEtaWQnOiBIVE1MQXR0cmlidXRlcy5pZCxcbiAgICAgICAgJ2RhdGEtdmFsdWUnOiBIVE1MQXR0cmlidXRlcy52YWx1ZSxcbiAgICAgICAgJ2RhdGEtaW4tdGFibGUnOiBIVE1MQXR0cmlidXRlcy5pblRhYmxlLFxuICAgICAgfSxcbiAgICBdO1xuICB9LFxuICBhZGROb2RlVmlldygpIHtcbiAgICByZXR1cm4gUmVhY3ROb2RlVmlld1JlbmRlcmVyKChwcm9wcykgPT4gPERyYWdJblRoZUJsYW5rIHsuLi57IC4uLnByb3BzLCBvcHRpb25zOiB0aGlzLm9wdGlvbnMgfX0gLz4pO1xuICB9LFxufSk7XG5cbi8qKlxuICogSW5saW5lRHJvcGRvd24gTm9kZVxuICovXG5leHBvcnQgY29uc3QgSW5saW5lRHJvcGRvd25Ob2RlID0gTm9kZS5jcmVhdGUoe1xuICBuYW1lOiAnaW5saW5lX2Ryb3Bkb3duJyxcbiAgZ3JvdXA6ICdpbmxpbmUnLFxuICBpbmxpbmU6IHRydWUsXG4gIGF0b206IHRydWUsXG4gIGFkZEF0dHJpYnV0ZXMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGluZGV4OiB7IGRlZmF1bHQ6IG51bGwgfSxcbiAgICAgIHZhbHVlOiB7IGRlZmF1bHQ6ICcnIH0sXG4gICAgICB1cGRhdGVkOiB7IGRlZmF1bHQ6ICcnIH0sXG4gICAgfTtcbiAgfSxcbiAgcGFyc2VIVE1MKCkge1xuICAgIHJldHVybiBbXG4gICAgICB7XG4gICAgICAgIHRhZzogJ3NwYW5bZGF0YS10eXBlPVwiaW5saW5lX2Ryb3Bkb3duXCJdJyxcbiAgICAgICAgZ2V0QXR0cnM6IChlbCkgPT4gKHtcbiAgICAgICAgICBpbmRleDogZWwuZGF0YXNldC5pbmRleCxcbiAgICAgICAgICB2YWx1ZTogZWwuZGF0YXNldC52YWx1ZSxcbiAgICAgICAgfSksXG4gICAgICB9LFxuICAgIF07XG4gIH0sXG4gIHJlbmRlckhUTUwoeyBIVE1MQXR0cmlidXRlcyB9KSB7XG4gICAgcmV0dXJuIFtcbiAgICAgICdzcGFuJyxcbiAgICAgIHtcbiAgICAgICAgJ2RhdGEtdHlwZSc6ICdpbmxpbmVfZHJvcGRvd24nLFxuICAgICAgICAnZGF0YS1pbmRleCc6IEhUTUxBdHRyaWJ1dGVzLmluZGV4LFxuICAgICAgICAnZGF0YS12YWx1ZSc6IEhUTUxBdHRyaWJ1dGVzLnZhbHVlLFxuICAgICAgfSxcbiAgICBdO1xuICB9LFxuICBhZGROb2RlVmlldygpIHtcbiAgICByZXR1cm4gUmVhY3ROb2RlVmlld1JlbmRlcmVyKChwcm9wcykgPT4gPElubGluZURyb3Bkb3duIHsuLi57IC4uLnByb3BzLCBvcHRpb25zOiB0aGlzLm9wdGlvbnMgfX0gLz4pO1xuICB9LFxufSk7XG4iXX0=
|
|
484
|
+
//# sourceMappingURL=responseArea.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/extensions/responseArea.js"],"names":["lastIndexMap","normalizeType","type","String","replace","getAttrIndex","node","attrs","index","collectNodesOfType","doc","typeName","results","descendants","pos","name","push","countNodesOfType","count","getDefaultNode","schema","nodeType","nodes","create","id","value","selectionAfterPos","$pos","resolve","Math","min","content","size","TextSelection","near","ResponseAreaExtension","Extension","addOptions","maxResponseAreas","error","options","respAreaToolbar","onHandleAreaChange","addProseMirrorPlugins","key","PluginKey","Plugin","view","undefined","state","idx","n","parseInt","Number","isNaN","update","prevState","eq","currentList","oldList","toolbar","disabled","length","currentIndexSet","Set","map","x","removed","filter","has","addCommands","insertResponseArea","tr","dispatch","commands","currentCount","prevIndex","newIndex","newInline","selection","insertPos","from","tryInsertAt","insert","e","usedPos","includes","setSelection","NodeSelection","after","nodeSize","focus","refreshResponseArea","$from","nodeAfter","nodePos","setNodeMarkup","updated","Date","now","ExplicitConstructedResponseNode","Node","group","inline","atom","addAttributes","parseHTML","tag","getAttrs","el","dataset","renderHTML","HTMLAttributes","addNodeView","props","MathTemplatedNode","DragInTheBlankNode","inTable","InlineDropdownNode"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { Plugin, PluginKey, TextSelection, NodeSelection } from 'prosemirror-state';\nimport { Extension } from '@tiptap/core';\nimport { Node, ReactNodeViewRenderer } from '@tiptap/react';\nimport ExplicitConstructedResponse from '../components/respArea/ExplicitConstructedResponse';\nimport DragInTheBlank from '../components/respArea/DragInTheBlank/DragInTheBlank';\nimport InlineDropdown from '../components/respArea/InlineDropdown';\nimport PropTypes from 'prop-types';\n\nconst lastIndexMap = {};\n\nconst normalizeType = (type) => String(type || '').replace(/-/g, '_');\n\nconst getAttrIndex = (node) => (node && node.attrs && node.attrs.index != null ? String(node.attrs.index) : null);\n\nconst collectNodesOfType = (doc, typeName) => {\n const results = [];\n\n doc.descendants((node, pos) => {\n if (node.type && node.type.name === typeName) {\n const index = getAttrIndex(node);\n if (index != null) results.push({ index, pos, node });\n }\n return true;\n });\n\n return results;\n};\n\nconst countNodesOfType = (doc, typeName) => {\n let count = 0;\n doc.descendants((node) => {\n if (node.type && node.type.name === typeName) count += 1;\n return true;\n });\n return count;\n};\n\nconst getDefaultNode = ({ schema, typeName, index }) => {\n const nodeType = schema.nodes[typeName];\n if (!nodeType) return null;\n\n // mirror your Slate \"getDefaultElement(opts, newIndex)\"\n // customize attrs as needed:\n return nodeType.create({\n index: String(index),\n id: String(index),\n value: '',\n });\n};\n\n// Find a good cursor position *after* an inserted node.\nconst selectionAfterPos = (doc, pos) => {\n const $pos = doc.resolve(Math.min(pos, doc.content.size));\n return TextSelection.near($pos, 1);\n};\n\nexport const ResponseAreaExtension = Extension.create({\n name: 'responseArea',\n\n addOptions() {\n return {\n maxResponseAreas: null,\n error: null,\n options: null,\n respAreaToolbar: null,\n onHandleAreaChange: null,\n };\n },\n\n addProseMirrorPlugins() {\n if (!this.options.type) {\n return [];\n }\n\n const typeName = normalizeType(this.options.type);\n const key = new PluginKey(`response-area-watcher:${typeName}`);\n\n return [\n new Plugin({\n key,\n\n view: (view) => {\n // Lazy init lastIndexMap[typeName]\n if (lastIndexMap[typeName] === undefined) {\n lastIndexMap[typeName] = 0;\n\n view.state.doc.descendants((node) => {\n if (node.type && node.type.name === typeName) {\n const idx = getAttrIndex(node);\n if (idx != null) {\n const n = parseInt(idx, 10);\n if (!Number.isNaN(n) && n > lastIndexMap[typeName]) {\n lastIndexMap[typeName] = n;\n }\n }\n }\n return true;\n });\n }\n\n return {\n update: (view, prevState) => {\n const state = view.state;\n if (prevState.doc.eq(state.doc)) return;\n\n const currentList = collectNodesOfType(state.doc, typeName);\n const oldList = collectNodesOfType(prevState.doc, typeName);\n\n if (this.options.toolbar) {\n this.options.toolbar.disabled = currentList.length >= this.options.maxResponseAreas;\n }\n\n // Removed elements (same logic as Slate)\n if (oldList.length > currentList.length) {\n const currentIndexSet = new Set(currentList.map((x) => x.index));\n\n const removed = oldList.filter((x) => !currentIndexSet.has(x.index));\n\n if (removed.length && typeof this.options.onHandleAreaChange === 'function') {\n this.options.onHandleAreaChange(removed);\n }\n }\n },\n };\n },\n }),\n ];\n },\n\n addCommands() {\n return {\n insertResponseArea: (type) => ({ tr, state, dispatch, commands }) => {\n const typeName = normalizeType(type);\n\n // --- Slate: currentRespAreaList + max check ---\n const currentCount = countNodesOfType(state.doc, typeName);\n if (currentCount >= this.options.maxResponseAreas) {\n return false;\n }\n\n // --- Slate: indexing logic (kept identical) ---\n if (lastIndexMap[typeName] === undefined) lastIndexMap[typeName] = 0;\n\n const prevIndex = lastIndexMap[typeName];\n const newIndex = prevIndex === 0 ? prevIndex : prevIndex + 1;\n\n // Slate increments map even if newIndex === 0\n lastIndexMap[typeName] += 1;\n\n const newInline = getDefaultNode({\n schema: state.schema,\n typeName,\n index: newIndex,\n });\n\n if (!newInline) return false;\n\n // --- Insert logic ---\n const { selection } = state;\n let insertPos = selection.from;\n\n // If we're in a NodeSelection, insert before/after is ambiguous;\n // We'll insert at its \"from\" (like your current code).\n // If insertion fails, we fallback to end of doc.\n const tryInsertAt = (pos) => {\n try {\n tr.insert(pos, newInline);\n return pos;\n } catch (e) {\n return null;\n }\n };\n\n let usedPos = tryInsertAt(insertPos);\n\n // Slate branch: \"markup empty and there's no focus\"\n // ProseMirror doesn't expose \"no focus\" the same way, so the closest\n // equivalent fallback is inserting at end of document.\n if (usedPos == null) {\n usedPos = tryInsertAt(tr.doc.content.size);\n }\n if (usedPos == null) return false;\n\n // Optionally select the node you just inserted (like your original command)\n // tr.setSelection(NodeSelection.create(tr.doc, usedPos))\n\n // --- Cursor move behavior for certain types (Slate: moveFocusTo next text) ---\n if (\n ['math_templated', 'inline_dropdown', 'drag_in_the_blank', 'explicit_constructed_response'].includes(typeName)\n ) {\n tr.setSelection(NodeSelection.create(tr.doc, usedPos));\n } else {\n // Default: put cursor after inserted node\n const after = usedPos + newInline.nodeSize;\n tr.setSelection(selectionAfterPos(tr.doc, after));\n }\n\n if (dispatch) {\n commands.focus();\n dispatch(tr);\n }\n\n return true;\n },\n refreshResponseArea: () => ({ tr, state, commands, dispatch }) => {\n const { selection } = state;\n const node = selection.$from.nodeAfter;\n const nodePos = selection.from;\n\n tr.setNodeMarkup(nodePos, undefined, { ...node.attrs, updated: `${Date.now()}` });\n tr.setSelection(NodeSelection.create(tr.doc, nodePos));\n\n if (dispatch) {\n commands.focus();\n dispatch(tr);\n }\n\n return true;\n },\n };\n },\n});\n\n/**\n * ExplicitConstructedResponse Node\n */\nexport const ExplicitConstructedResponseNode = Node.create({\n name: 'explicit_constructed_response',\n group: 'inline',\n inline: true,\n atom: true,\n addAttributes() {\n return {\n index: { default: null },\n value: { default: '' },\n updated: { default: '' },\n };\n },\n parseHTML() {\n return [\n {\n tag: 'span[data-type=\"explicit_constructed_response\"]',\n getAttrs: (el) => ({\n index: el.dataset.index,\n value: el.dataset.value,\n }),\n },\n ];\n },\n renderHTML({ HTMLAttributes }) {\n return [\n 'span',\n {\n 'data-type': 'explicit_constructed_response',\n 'data-index': HTMLAttributes.index,\n 'data-value': HTMLAttributes.value,\n },\n ];\n },\n addNodeView() {\n return ReactNodeViewRenderer((props) => <ExplicitConstructedResponse {...{ ...props, options: this.options }} />);\n },\n});\n\n/**\n * MathTemplated Node\n */\nexport const MathTemplatedNode = Node.create({\n name: 'math_templated',\n group: 'inline',\n inline: true,\n atom: true,\n addAttributes() {\n return {\n index: { default: null },\n value: { default: '' },\n updated: { default: '' },\n };\n },\n parseHTML() {\n return [\n {\n tag: 'span[data-type=\"math_templated\"]',\n getAttrs: (el) => ({\n index: el.dataset.index,\n value: el.dataset.value,\n }),\n },\n ];\n },\n renderHTML({ HTMLAttributes }) {\n return [\n 'span',\n {\n 'data-type': 'math_templated',\n 'data-index': HTMLAttributes.index,\n 'data-value': HTMLAttributes.value,\n },\n ];\n },\n addNodeView() {\n return ReactNodeViewRenderer(() => <div></div>);\n },\n});\n\n/**\n * DragInTheBlank Node\n */\nexport const DragInTheBlankNode = Node.create({\n name: 'drag_in_the_blank',\n group: 'inline',\n inline: true,\n atom: true,\n addAttributes() {\n return {\n index: { default: null },\n id: { default: null },\n value: { default: '' },\n inTable: { default: null },\n updated: { default: '' },\n };\n },\n parseHTML() {\n return [\n {\n tag: 'span[data-type=\"drag_in_the_blank\"]',\n getAttrs: (el) => ({\n index: el.dataset.index,\n id: el.dataset.id,\n value: el.dataset.value,\n inTable: el.dataset.inTable,\n }),\n },\n ];\n },\n renderHTML({ HTMLAttributes }) {\n return [\n 'span',\n {\n 'data-type': 'drag_in_the_blank',\n 'data-index': HTMLAttributes.index,\n 'data-id': HTMLAttributes.id,\n 'data-value': HTMLAttributes.value,\n 'data-in-table': HTMLAttributes.inTable,\n },\n ];\n },\n addNodeView() {\n return ReactNodeViewRenderer((props) => <DragInTheBlank {...{ ...props, options: this.options }} />);\n },\n});\n\n/**\n * InlineDropdown Node\n */\nexport const InlineDropdownNode = Node.create({\n name: 'inline_dropdown',\n group: 'inline',\n inline: true,\n atom: true,\n addAttributes() {\n return {\n index: { default: null },\n value: { default: '' },\n updated: { default: '' },\n };\n },\n parseHTML() {\n return [\n {\n tag: 'span[data-type=\"inline_dropdown\"]',\n getAttrs: (el) => ({\n index: el.dataset.index,\n value: el.dataset.value,\n }),\n },\n ];\n },\n renderHTML({ HTMLAttributes }) {\n return [\n 'span',\n {\n 'data-type': 'inline_dropdown',\n 'data-index': HTMLAttributes.index,\n 'data-value': HTMLAttributes.value,\n },\n ];\n },\n addNodeView() {\n return ReactNodeViewRenderer((props) => <InlineDropdown {...{ ...props, options: this.options }} />);\n },\n});\n"],"file":"responseArea.js"}
|
package/lib/index.js
CHANGED
|
@@ -29,4 +29,4 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
29
29
|
|
|
30
30
|
var _default = _EditableHtml["default"];
|
|
31
31
|
exports["default"] = _default;
|
|
32
|
-
//# sourceMappingURL=
|
|
32
|
+
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/index.jsx"],"names":["StyledEditor"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;;;eAGeA,wB","sourcesContent":["import StyledEditor, { EditableHtml } from './components/EditableHtml';\nimport { ALL_PLUGINS } from './extensions';\n\nexport { EditableHtml, ALL_PLUGINS };\nexport default StyledEditor;\n"],"file":"index.js"}
|
|
@@ -139,4 +139,4 @@ var styles = function styles(theme) {
|
|
|
139
139
|
|
|
140
140
|
var _default = styles;
|
|
141
141
|
exports["default"] = _default;
|
|
142
|
-
//# sourceMappingURL=
|
|
142
|
+
//# sourceMappingURL=editorContainerStyles.js.map
|