@modusoperandi/licit 1.0.4 → 1.0.7
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/BlockquoteInsertNewLineCommand.js +16 -18
- package/BlockquoteInsertNewLineCommand.js.flow +76 -77
- package/BlockquoteNodeSpec.js +3 -4
- package/BlockquoteNodeSpec.js.flow +29 -30
- package/BlockquoteToggleCommand.js +16 -17
- package/BlockquoteToggleCommand.js.flow +56 -56
- package/BookmarkNodeSpec.js +2 -2
- package/BookmarkNodeSpec.js.flow +39 -39
- package/BulletListNodeSpec.js.flow +61 -61
- package/CZIProseMirror.js.flow +90 -90
- package/CodeBlockCommand.js +17 -18
- package/CodeBlockCommand.js.flow +65 -65
- package/CodeBlockNodeSpec.js.flow +24 -24
- package/CodeMarkSpec.js.flow +14 -14
- package/ContentPlaceholderPlugin.js +20 -21
- package/ContentPlaceholderPlugin.js.flow +185 -187
- package/CursorPlaceholderPlugin.js +11 -11
- package/CursorPlaceholderPlugin.js.flow +115 -115
- package/DocLayoutCommand.js +18 -21
- package/DocLayoutCommand.js.flow +97 -99
- package/DocNodeSpec.js.flow +64 -64
- package/EMMarkSpec.js.flow +14 -14
- package/EditorCommands.js.flow +126 -126
- package/EditorKeyMap.js +0 -1
- package/EditorKeyMap.js.flow +185 -187
- package/EditorMarks.js +2 -2
- package/EditorMarks.js.flow +71 -71
- package/EditorNodes.js +2 -3
- package/EditorNodes.js.flow +58 -59
- package/EditorPageLayoutPlugin.js +10 -10
- package/EditorPageLayoutPlugin.js.flow +67 -67
- package/EditorPlugins.js.flow +8 -8
- package/EditorSchema.js.flow +12 -12
- package/EditorState.js.flow +7 -7
- package/FontSizeMarkSpec.js.flow +49 -49
- package/FontTypeMarkSpec.js +1 -1
- package/FontTypeMarkSpec.js.flow +80 -80
- package/HTMLMutator.js +6 -7
- package/HTMLMutator.js.flow +59 -59
- package/HardBreakNodeSpec.js.flow +15 -15
- package/HeadingNodeSpec.js +3 -13
- package/HeadingNodeSpec.js.flow +42 -52
- package/HistoryRedoCommand.js +15 -16
- package/HistoryRedoCommand.js.flow +41 -41
- package/HistoryUndoCommand.js +15 -16
- package/HistoryUndoCommand.js.flow +41 -41
- package/HorizontalRuleCommand.js +15 -16
- package/HorizontalRuleCommand.js.flow +71 -71
- package/HorizontalRuleNodeSpec.js.flow +39 -39
- package/ImageUploadPlaceholderPlugin.js +15 -17
- package/ImageUploadPlaceholderPlugin.js.flow +190 -192
- package/LinkMarkSpec.js +6 -1
- package/LinkMarkSpec.js.flow +37 -32
- package/LinkSetURLCommand.js +130 -60
- package/LinkSetURLCommand.js.flow +141 -117
- package/LinkTooltipPlugin.js +122 -34
- package/LinkTooltipPlugin.js.flow +261 -190
- package/ListItemInsertNewLineCommand.js +16 -18
- package/ListItemInsertNewLineCommand.js.flow +76 -77
- package/ListItemMergeCommand.js +24 -24
- package/ListItemMergeCommand.js.flow +198 -199
- package/ListItemNodeSpec.js.flow +52 -52
- package/ListSplitCommand.js +15 -16
- package/ListSplitCommand.js.flow +54 -54
- package/ListToggleCommand.js +19 -20
- package/ListToggleCommand.js.flow +99 -99
- package/MarkNames.js.flow +18 -18
- package/MarksClearCommand.js +17 -18
- package/MarksClearCommand.js.flow +65 -65
- package/MathEditCommand.js +17 -19
- package/MathEditCommand.js.flow +119 -120
- package/MathNodeSpec.js.flow +46 -46
- package/NodeNames.js.flow +23 -23
- package/OrderedListNodeSpec.js +2 -2
- package/OrderedListNodeSpec.js.flow +132 -132
- package/ParagraphNodeSpec.js +11 -2
- package/ParagraphNodeSpec.js.flow +163 -156
- package/ParagraphSpacingCommand.js +21 -23
- package/ParagraphSpacingCommand.js.flow +139 -144
- package/PrintCommand.js +17 -18
- package/PrintCommand.js.flow +53 -53
- package/SelectionPlaceholderPlugin.js +11 -11
- package/SelectionPlaceholderPlugin.js.flow +131 -131
- package/SpacerMarkSpec.js +2 -2
- package/SpacerMarkSpec.js.flow +47 -47
- package/StrikeMarkSpec.js.flow +21 -21
- package/StrongMarkSpec.js.flow +25 -25
- package/StyleView.js +5 -7
- package/StyleView.js.flow +18 -19
- package/TableBackgroundColorCommand.js +34 -23
- package/TableBackgroundColorCommand.js.flow +80 -75
- package/TableBorderColorCommand.js +34 -23
- package/TableBorderColorCommand.js.flow +81 -75
- package/TableCellColorCommand.js +20 -21
- package/TableCellColorCommand.js.flow +74 -75
- package/TableCellMenuPlugin.js +19 -19
- package/TableCellMenuPlugin.js.flow +130 -132
- package/TableInsertCommand.js +19 -22
- package/TableInsertCommand.js.flow +118 -120
- package/TableMergeCellsCommand.js +19 -19
- package/TableMergeCellsCommand.js.flow +113 -112
- package/TableNodesSpecs.js +4 -2
- package/TableNodesSpecs.js.flow +80 -78
- package/TablePlugins.js.flow +14 -14
- package/TableResizePlugin.js +20 -20
- package/TableResizePlugin.js.flow +631 -631
- package/TextColorMarkSpec.js.flow +35 -35
- package/TextHighlightMarkSpec.js.flow +38 -38
- package/TextInsertTabSpaceCommand.js +15 -16
- package/TextInsertTabSpaceCommand.js.flow +106 -106
- package/TextNoWrapMarkSpec.js.flow +14 -14
- package/TextNodeSpec.js.flow +7 -7
- package/TextSelectionMarkSpec.js.flow +24 -24
- package/TextSubMarkSpec.js.flow +20 -20
- package/TextSuperMarkSpec.js.flow +20 -20
- package/TextUnderlineMarkSpec.js.flow +27 -27
- package/Types.js +6 -0
- package/Types.js.flow +77 -75
- package/WebFontLoader.js +6 -7
- package/WebFontLoader.js.flow +22 -22
- package/blockQuoteInputRule.js.flow +36 -36
- package/bom.xml +17223 -25722
- package/browser.js.flow +7 -7
- package/buildEditorPlugins.js +6 -7
- package/buildEditorPlugins.js.flow +49 -49
- package/buildInputRules.js +8 -4
- package/buildInputRules.js.flow +85 -81
- package/client/CollabConnector.js +20 -20
- package/client/CollabConnector.js.flow +90 -90
- package/client/EditorConnection.js +10 -9
- package/client/EditorConnection.js.flow +324 -323
- package/client/Licit.js +78 -115
- package/client/Licit.js.flow +611 -643
- package/client/Licit.test.js +49 -39
- package/client/Licit.test.js.flow +104 -98
- package/client/Reporter.js +5 -6
- package/client/Reporter.js.flow +37 -37
- package/client/SimpleConnector.js +5 -5
- package/client/SimpleConnector.js.flow +61 -61
- package/client/http.js +0 -6
- package/client/http.js.flow +62 -70
- package/client/licit.css +12 -12
- package/client/throttle.js +8 -2
- package/client/throttle.js.flow +27 -27
- package/convertFromDOMElement.js +2 -4
- package/convertFromDOMElement.js.flow +33 -36
- package/convertFromHTML.js +2 -3
- package/convertFromHTML.js.flow +15 -17
- package/convertFromJSON.js +1 -2
- package/convertFromJSON.js.flow +55 -56
- package/convertToCSSPTValue.js +6 -10
- package/convertToCSSPTValue.js.flow +19 -22
- package/convertToJSON.js.flow +7 -7
- package/createCommand.js +16 -17
- package/createCommand.js.flow +62 -62
- package/createEditorKeyMap.js +2 -2
- package/createEditorKeyMap.js.flow +94 -94
- package/createEmptyEditorState.js +2 -3
- package/createEmptyEditorState.js.flow +29 -31
- package/createTableResizingPlugin.js +6 -6
- package/createTableResizingPlugin.js.flow +86 -86
- package/findActionableCell.js.flow +74 -74
- package/findActiveMark.js +1 -1
- package/findActiveMark.js.flow +32 -32
- package/hyphenize.js.flow +17 -17
- package/index.d.ts +165 -165
- package/index.js.flow +10 -10
- package/insertTable.js +0 -3
- package/insertTable.js.flow +54 -56
- package/isEditorStateEmpty.js.flow +32 -32
- package/isTableNode.js.flow +15 -15
- package/joinDown.js +1 -3
- package/joinDown.js.flow +25 -27
- package/joinListNode.js.flow +55 -55
- package/joinUp.js +1 -3
- package/joinUp.js.flow +37 -39
- package/keymaps.js.flow +185 -185
- package/lookUpElement.js +2 -1
- package/lookUpElement.js.flow +14 -14
- package/nodeAt.js.flow +12 -12
- package/normalizeHTML.js +3 -1
- package/normalizeHTML.js.flow +80 -78
- package/package.json +162 -156
- package/patchAnchorElements.js +1 -1
- package/patchAnchorElements.js.flow +38 -38
- package/patchBreakElements.js +3 -2
- package/patchBreakElements.js.flow +22 -22
- package/patchElementInlineStyles.js +1 -1
- package/patchElementInlineStyles.js.flow +92 -92
- package/patchListElements.js +4 -4
- package/patchListElements.js.flow +276 -276
- package/patchMathElements.js +5 -7
- package/patchMathElements.js.flow +58 -60
- package/patchParagraphElements.js.flow +20 -20
- package/patchStyleElements.js +1 -1
- package/patchStyleElements.js.flow +197 -196
- package/patchTableElements.js +2 -3
- package/patchTableElements.js.flow +88 -89
- package/rebaseDocWithSteps.js.flow +42 -42
- package/sanitizeURL.js +1 -1
- package/sanitizeURL.js.flow +13 -13
- package/splitListItem.js +3 -3
- package/splitListItem.js.flow +191 -191
- package/styles.css +19 -19
- package/styles0.css +29 -29
- package/toClosestFontPtSize.js.flow +22 -22
- package/toSafeHTMLDocument.js.flow +9 -9
- package/toggleBlockquote.js +4 -5
- package/toggleBlockquote.js.flow +101 -108
- package/toggleCodeBlock.js +6 -6
- package/toggleCodeBlock.js.flow +102 -102
- package/ui/AlertInfo.js +15 -16
- package/ui/AlertInfo.js.flow +64 -64
- package/ui/BookmarkNodeView.js +20 -21
- package/ui/BookmarkNodeView.js.flow +66 -66
- package/ui/CommandButton.js +15 -16
- package/ui/CommandButton.js.flow +68 -68
- package/ui/CommandMenu.js +19 -20
- package/ui/CommandMenu.js.flow +75 -75
- package/ui/CommandMenuButton.js +23 -25
- package/ui/CommandMenuButton.js.flow +130 -131
- package/ui/CustomEditorView.js +20 -20
- package/ui/CustomEditorView.js.flow +29 -28
- package/ui/CustomMenu.js +11 -12
- package/ui/CustomMenu.js.flow +17 -17
- package/ui/CustomMenuItem.js +16 -18
- package/ui/CustomMenuItem.js.flow +36 -36
- package/ui/CustomNodeView.js +29 -19
- package/ui/CustomNodeView.js.flow +207 -200
- package/ui/CustomRadioButton.js +18 -21
- package/ui/CustomRadioButton.js.flow +64 -65
- package/ui/DocLayoutEditor.js +18 -20
- package/ui/DocLayoutEditor.js.flow +145 -146
- package/ui/Editor.js +30 -28
- package/ui/Editor.js.flow +287 -288
- package/ui/EditorFrameset.js +13 -14
- package/ui/EditorFrameset.js.flow +81 -81
- package/ui/EditorToolbar.js +36 -42
- package/ui/EditorToolbar.js.flow +199 -218
- package/ui/EditorToolbarConfig.js +5 -5
- package/ui/EditorToolbarConfig.js.flow +164 -164
- package/ui/FontSizeCommandMenuButton.js +14 -15
- package/ui/FontSizeCommandMenuButton.js.flow +66 -66
- package/ui/FontTypeCommandMenuButton.js +15 -17
- package/ui/FontTypeCommandMenuButton.js.flow +60 -61
- package/ui/Frag.js +11 -12
- package/ui/Frag.js.flow +13 -13
- package/ui/Icon.js +21 -24
- package/ui/Icon.js.flow +89 -89
- package/ui/ImageInlineEditor.js +14 -15
- package/ui/ImageInlineEditor.js.flow +67 -67
- package/ui/KeyCodes.js.flow +12 -12
- package/ui/LinkTooltip.js +68 -34
- package/ui/LinkTooltip.js.flow +118 -85
- package/ui/LinkURLEditor.js +160 -43
- package/ui/LinkURLEditor.js.flow +243 -117
- package/ui/ListItemNodeView.js +6 -7
- package/ui/ListItemNodeView.js.flow +98 -98
- package/ui/ListTypeButton.js +23 -27
- package/ui/ListTypeButton.js.flow +128 -131
- package/ui/ListTypeCommandButton.js +14 -15
- package/ui/ListTypeCommandButton.js.flow +85 -85
- package/ui/ListTypeMenu.js +21 -22
- package/ui/ListTypeMenu.js.flow +70 -70
- package/ui/LoadingIndicator.js +11 -12
- package/ui/LoadingIndicator.js.flow +20 -20
- package/ui/MathEditor.js +17 -22
- package/ui/MathEditor.js.flow +72 -78
- package/ui/MathInlineEditor.js +20 -21
- package/ui/MathInlineEditor.js.flow +101 -102
- package/ui/MathNodeView.js +29 -30
- package/ui/MathNodeView.js.flow +176 -186
- package/ui/PasteMenu.js +19 -23
- package/ui/PasteMenu.js.flow +53 -57
- package/ui/ResizeObserver.js +1 -1
- package/ui/ResizeObserver.js.flow +106 -106
- package/ui/RichTextEditor.js +17 -18
- package/ui/RichTextEditor.js.flow +133 -133
- package/ui/SelectionObserver.js +8 -9
- package/ui/SelectionObserver.js.flow +134 -134
- package/ui/TableCellMenu.js +14 -15
- package/ui/TableCellMenu.js.flow +51 -51
- package/ui/TableGridSizeEditor.js +30 -33
- package/ui/TableGridSizeEditor.js.flow +187 -184
- package/ui/TableNodeView.js +18 -17
- package/ui/TableNodeView.js.flow +25 -25
- package/ui/bindScrollHandler.js +2 -1
- package/ui/bindScrollHandler.js.flow +46 -46
- package/ui/canUseCSSFont.js +5 -4
- package/ui/canUseCSSFont.js.flow +42 -43
- package/ui/czi-body-layout-editor.css +16 -16
- package/ui/czi-bookmark-view.css +10 -10
- package/ui/czi-cursor-placeholder.css +36 -36
- package/ui/czi-custom-menu-button.css +18 -18
- package/ui/czi-custom-menu-item.css +30 -30
- package/ui/czi-custom-menu.css +8 -8
- package/ui/czi-custom-radio-button.css +80 -80
- package/ui/czi-custom-scrollbar.css +21 -21
- package/ui/czi-editor-frameset.css +81 -81
- package/ui/czi-editor-toolbar.css +122 -122
- package/ui/czi-editor.css +217 -220
- package/ui/czi-form.css +201 -107
- package/ui/czi-frag.css +3 -3
- package/ui/czi-heading.css +40 -40
- package/ui/czi-icon.css +72 -72
- package/ui/czi-image-resize-box.css +165 -165
- package/ui/czi-image-upload-editor.css +57 -57
- package/ui/czi-image-upload-placeholder.css +50 -50
- package/ui/czi-image-url-editor.css +38 -38
- package/ui/czi-image-view.css +121 -125
- package/ui/czi-indent.css +137 -137
- package/ui/czi-inline-editor.css +20 -20
- package/ui/czi-link-tooltip.css +112 -71
- package/ui/czi-list.css +406 -410
- package/ui/czi-loading-indicator.css +66 -111
- package/ui/czi-math-view.css +62 -62
- package/ui/czi-selection-placeholder.css +24 -24
- package/ui/czi-table-cell-menu.css +16 -14
- package/ui/czi-table-grid-size-editor.css +37 -37
- package/ui/czi-table.css +87 -87
- package/ui/czi-vars.css +2 -2
- package/ui/findActiveFontSize.js +2 -1
- package/ui/findActiveFontSize.js.flow +55 -58
- package/ui/findActiveFontType.js +4 -3
- package/ui/findActiveFontType.js.flow +35 -38
- package/ui/fonts.css +460 -460
- package/ui/handleEditorDrop.js +1 -1
- package/ui/handleEditorDrop.js.flow +28 -28
- package/ui/handleEditorKeyDown.js +1 -1
- package/ui/handleEditorKeyDown.js.flow +39 -39
- package/ui/handleEditorPaste.js +1 -1
- package/ui/handleEditorPaste.js.flow +33 -33
- package/ui/htmlElementToRect.js.flow +18 -18
- package/ui/icon-font.css +9 -9
- package/ui/injectStyleSheet.js +2 -2
- package/ui/injectStyleSheet.js.flow +40 -42
- package/ui/isElementFullyVisible.js +1 -10
- package/ui/isElementFullyVisible.js.flow +14 -26
- package/ui/isOffline.js.flow +8 -8
- package/ui/isReactClass.js.flow +12 -12
- package/ui/listType.css +21 -21
- package/ui/mathquill-editor/MathQuillEditor.js +27 -30
- package/ui/mathquill-editor/MathQuillEditor.js.flow +158 -159
- package/ui/mathquill-editor/MathQuillEditorSymbols.js.flow +483 -483
- package/ui/mathquill-editor/MathQuillEditorSymbolsPanel.js +14 -15
- package/ui/mathquill-editor/MathQuillEditorSymbolsPanel.js.flow +50 -50
- package/ui/mathquill-editor/czi-mathquill-editor-symbols-panel.css +39 -39
- package/ui/mathquill-editor/czi-mathquill-editor.css +50 -50
- package/ui/mathquill-editor/mathquill-import-kludge.js +1 -8
- package/ui/mathquill-editor/mathquill-import-kludge.js.flow +17 -24
- package/ui/renderLaTeXAsHTML.js +4 -4
- package/ui/renderLaTeXAsHTML.js.flow +46 -46
- package/ui/resolveImage.js +5 -6
- package/ui/resolveImage.js.flow +121 -123
- package/ui/toCSSColor.js.flow +51 -51
- package/ui/toCSSLineSpacing.js +2 -3
- package/ui/toCSSLineSpacing.js.flow +53 -55
- package/ui/toHexColor.js.flow +26 -26
- package/ui/uuid.js.flow +9 -9
- package/uuid.js.flow +9 -9
package/TableCellColorCommand.js
CHANGED
|
@@ -1,29 +1,27 @@
|
|
|
1
1
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
|
-
function _classCallCheck(
|
|
3
|
-
function _defineProperties(
|
|
4
|
-
function _createClass(
|
|
2
|
+
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
|
|
3
|
+
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
|
|
4
|
+
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
|
|
5
5
|
function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
|
|
6
|
-
function _possibleConstructorReturn(
|
|
6
|
+
function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); }
|
|
7
|
+
function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; }
|
|
7
8
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
8
|
-
function _getPrototypeOf(
|
|
9
|
-
function
|
|
10
|
-
function
|
|
11
|
-
function
|
|
12
|
-
function
|
|
13
|
-
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
9
|
+
function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); }
|
|
10
|
+
function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); }
|
|
11
|
+
function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
|
|
12
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
13
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
14
14
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
15
15
|
import nullthrows from 'nullthrows';
|
|
16
16
|
import { EditorState } from 'prosemirror-state';
|
|
17
17
|
import { setCellAttr } from 'prosemirror-tables';
|
|
18
18
|
import { Transform } from 'prosemirror-transform';
|
|
19
19
|
import { EditorView } from 'prosemirror-view';
|
|
20
|
-
import { ColorEditor } from '@modusoperandi/
|
|
21
|
-
import { atAnchorRight } from '@modusoperandi/licit-ui-commands';
|
|
20
|
+
import { ColorEditor } from '@modusoperandi/color-picker';
|
|
21
|
+
import { atAnchorRight, createPopUp } from '@modusoperandi/licit-ui-commands';
|
|
22
22
|
import { UICommand } from '@modusoperandi/licit-doc-attrs-step';
|
|
23
|
-
import { createPopUp } from '@modusoperandi/licit-ui-commands';
|
|
24
23
|
var setCellBackgroundBlack = setCellAttr('background', '#000000');
|
|
25
24
|
var TableCellColorCommand = /*#__PURE__*/function (_UICommand) {
|
|
26
|
-
_inherits(TableCellColorCommand, _UICommand);
|
|
27
25
|
function TableCellColorCommand() {
|
|
28
26
|
var _this;
|
|
29
27
|
_classCallCheck(this, TableCellColorCommand);
|
|
@@ -31,14 +29,14 @@ var TableCellColorCommand = /*#__PURE__*/function (_UICommand) {
|
|
|
31
29
|
args[_key] = arguments[_key];
|
|
32
30
|
}
|
|
33
31
|
_this = _callSuper(this, TableCellColorCommand, [].concat(args));
|
|
34
|
-
_defineProperty(
|
|
35
|
-
_defineProperty(
|
|
32
|
+
_defineProperty(_this, "_popUp", null);
|
|
33
|
+
_defineProperty(_this, "shouldRespondToUIEvent", function (e) {
|
|
36
34
|
return e.type === UICommand.EventType.MOUSEENTER;
|
|
37
35
|
});
|
|
38
|
-
_defineProperty(
|
|
36
|
+
_defineProperty(_this, "isEnabled", function (state) {
|
|
39
37
|
return setCellBackgroundBlack(state.tr);
|
|
40
38
|
});
|
|
41
|
-
_defineProperty(
|
|
39
|
+
_defineProperty(_this, "waitForUserInput", function (state, dispatch, view, event) {
|
|
42
40
|
if (_this._popUp) {
|
|
43
41
|
return Promise.resolve(undefined);
|
|
44
42
|
}
|
|
@@ -50,6 +48,7 @@ var TableCellColorCommand = /*#__PURE__*/function (_UICommand) {
|
|
|
50
48
|
return new Promise(function (resolve) {
|
|
51
49
|
_this._popUp = createPopUp(ColorEditor, null, {
|
|
52
50
|
anchor: anchor,
|
|
51
|
+
autoDismiss: false,
|
|
53
52
|
position: atAnchorRight,
|
|
54
53
|
onClose: function onClose(val) {
|
|
55
54
|
if (_this._popUp) {
|
|
@@ -60,7 +59,7 @@ var TableCellColorCommand = /*#__PURE__*/function (_UICommand) {
|
|
|
60
59
|
});
|
|
61
60
|
});
|
|
62
61
|
});
|
|
63
|
-
_defineProperty(
|
|
62
|
+
_defineProperty(_this, "executeWithUserInput", function (state, dispatch, view, hex) {
|
|
64
63
|
if (dispatch && hex !== undefined) {
|
|
65
64
|
var cmd = setCellAttr('background', hex);
|
|
66
65
|
cmd(state, dispatch, view);
|
|
@@ -70,12 +69,12 @@ var TableCellColorCommand = /*#__PURE__*/function (_UICommand) {
|
|
|
70
69
|
});
|
|
71
70
|
return _this;
|
|
72
71
|
}
|
|
73
|
-
|
|
72
|
+
_inherits(TableCellColorCommand, _UICommand);
|
|
73
|
+
return _createClass(TableCellColorCommand, [{
|
|
74
74
|
key: "cancel",
|
|
75
75
|
value: function cancel() {
|
|
76
76
|
return null;
|
|
77
77
|
}
|
|
78
78
|
}]);
|
|
79
|
-
return TableCellColorCommand;
|
|
80
79
|
}(UICommand);
|
|
81
80
|
export default TableCellColorCommand;
|
|
@@ -1,75 +1,74 @@
|
|
|
1
|
-
// @flow
|
|
2
|
-
|
|
3
|
-
import nullthrows from 'nullthrows';
|
|
4
|
-
import { EditorState } from 'prosemirror-state';
|
|
5
|
-
import { setCellAttr } from 'prosemirror-tables';
|
|
6
|
-
import { Transform } from 'prosemirror-transform';
|
|
7
|
-
import { EditorView } from 'prosemirror-view';
|
|
8
|
-
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
export default TableCellColorCommand;
|
|
1
|
+
// @flow
|
|
2
|
+
|
|
3
|
+
import nullthrows from 'nullthrows';
|
|
4
|
+
import { EditorState } from 'prosemirror-state';
|
|
5
|
+
import { setCellAttr } from 'prosemirror-tables';
|
|
6
|
+
import { Transform } from 'prosemirror-transform';
|
|
7
|
+
import { EditorView } from 'prosemirror-view';
|
|
8
|
+
import { ColorEditor } from '@modusoperandi/color-picker';
|
|
9
|
+
import { atAnchorRight, createPopUp } from '@modusoperandi/licit-ui-commands';
|
|
10
|
+
import { UICommand } from '@modusoperandi/licit-doc-attrs-step';
|
|
11
|
+
|
|
12
|
+
const setCellBackgroundBlack = setCellAttr('background', '#000000');
|
|
13
|
+
|
|
14
|
+
class TableCellColorCommand extends UICommand {
|
|
15
|
+
_popUp = null;
|
|
16
|
+
|
|
17
|
+
shouldRespondToUIEvent = (e: SyntheticEvent<> | MouseEvent): boolean => {
|
|
18
|
+
return e.type === UICommand.EventType.MOUSEENTER;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
isEnabled = (state: EditorState): boolean => {
|
|
22
|
+
return setCellBackgroundBlack(state.tr);
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
waitForUserInput = (
|
|
26
|
+
state: EditorState,
|
|
27
|
+
dispatch: ?(tr: Transform) => void,
|
|
28
|
+
view: ?EditorView,
|
|
29
|
+
event: ?SyntheticEvent<>
|
|
30
|
+
): Promise<any> => {
|
|
31
|
+
if (this._popUp) {
|
|
32
|
+
return Promise.resolve(undefined);
|
|
33
|
+
}
|
|
34
|
+
const target = nullthrows(event).currentTarget;
|
|
35
|
+
if (!(target instanceof HTMLElement)) {
|
|
36
|
+
return Promise.resolve(undefined);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
const anchor = event ? event.currentTarget : null;
|
|
40
|
+
return new Promise((resolve) => {
|
|
41
|
+
this._popUp = createPopUp(ColorEditor, null, {
|
|
42
|
+
anchor,
|
|
43
|
+
autoDismiss:false,
|
|
44
|
+
position: atAnchorRight,
|
|
45
|
+
onClose: (val) => {
|
|
46
|
+
if (this._popUp) {
|
|
47
|
+
this._popUp = null;
|
|
48
|
+
resolve(val);
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
});
|
|
52
|
+
});
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
executeWithUserInput = (
|
|
56
|
+
state: EditorState,
|
|
57
|
+
dispatch: ?(tr: Transform) => void,
|
|
58
|
+
view: ?EditorView,
|
|
59
|
+
hex: ?string
|
|
60
|
+
): boolean => {
|
|
61
|
+
if (dispatch && hex !== undefined) {
|
|
62
|
+
const cmd = setCellAttr('background', hex);
|
|
63
|
+
cmd(state, dispatch, view);
|
|
64
|
+
return true;
|
|
65
|
+
}
|
|
66
|
+
return false;
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
cancel(): void {
|
|
70
|
+
return null;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export default TableCellColorCommand;
|
package/TableCellMenuPlugin.js
CHANGED
|
@@ -1,26 +1,25 @@
|
|
|
1
1
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
2
|
function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
|
|
3
|
-
function _possibleConstructorReturn(
|
|
4
|
-
function _assertThisInitialized(
|
|
3
|
+
function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); }
|
|
4
|
+
function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; }
|
|
5
5
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
6
|
-
function _getPrototypeOf(
|
|
7
|
-
function _inherits(
|
|
8
|
-
function _setPrototypeOf(
|
|
9
|
-
function _classCallCheck(
|
|
10
|
-
function _defineProperties(
|
|
11
|
-
function _createClass(
|
|
12
|
-
function _defineProperty(
|
|
13
|
-
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i :
|
|
6
|
+
function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); }
|
|
7
|
+
function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); }
|
|
8
|
+
function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
|
|
9
|
+
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
|
|
10
|
+
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
|
|
11
|
+
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
|
|
12
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
13
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
14
14
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
15
15
|
import { EditorState, Plugin, PluginKey } from 'prosemirror-state';
|
|
16
16
|
import { EditorView } from 'prosemirror-view';
|
|
17
17
|
/* eslint-disable-next-line */
|
|
18
18
|
import * as React from 'react';
|
|
19
19
|
import findActionableCell from './findActionableCell.js';
|
|
20
|
-
import { atAnchorTopRight } from '@modusoperandi/licit-ui-commands';
|
|
20
|
+
import { atAnchorTopRight, createPopUp } from '@modusoperandi/licit-ui-commands';
|
|
21
21
|
import TableCellMenu from './ui/TableCellMenu.js';
|
|
22
22
|
import bindScrollHandler from './ui/bindScrollHandler.js';
|
|
23
|
-
import { createPopUp } from '@modusoperandi/licit-ui-commands';
|
|
24
23
|
import isElementFullyVisible from './ui/isElementFullyVisible.js';
|
|
25
24
|
import '@modusoperandi/licit-ui-commands/ui/czi-pop-up.css';
|
|
26
25
|
import { CellSelection } from 'prosemirror-tables';
|
|
@@ -32,7 +31,8 @@ var TableCellTooltipView = /*#__PURE__*/function () {
|
|
|
32
31
|
_defineProperty(this, "_popUp", null);
|
|
33
32
|
_defineProperty(this, "_scrollHandle", null);
|
|
34
33
|
_defineProperty(this, "destroy", function () {
|
|
35
|
-
|
|
34
|
+
var _this$_popUp;
|
|
35
|
+
(_this$_popUp = _this._popUp) === null || _this$_popUp === void 0 || _this$_popUp.close();
|
|
36
36
|
_this._popUp = null;
|
|
37
37
|
});
|
|
38
38
|
_defineProperty(this, "_onOpen", function () {
|
|
@@ -43,8 +43,9 @@ var TableCellTooltipView = /*#__PURE__*/function () {
|
|
|
43
43
|
_this._scrollHandle = bindScrollHandler(cellEl, _this._onScroll);
|
|
44
44
|
});
|
|
45
45
|
_defineProperty(this, "_onClose", function () {
|
|
46
|
+
var _this$_scrollHandle;
|
|
46
47
|
_this._popUp = null;
|
|
47
|
-
_this
|
|
48
|
+
(_this$_scrollHandle = _this._scrollHandle) === null || _this$_scrollHandle === void 0 || _this$_scrollHandle.dispose();
|
|
48
49
|
_this._scrollHandle = null;
|
|
49
50
|
});
|
|
50
51
|
_defineProperty(this, "_onScroll", function () {
|
|
@@ -59,7 +60,7 @@ var TableCellTooltipView = /*#__PURE__*/function () {
|
|
|
59
60
|
});
|
|
60
61
|
this.update(editorView, null);
|
|
61
62
|
}
|
|
62
|
-
_createClass(TableCellTooltipView, [{
|
|
63
|
+
return _createClass(TableCellTooltipView, [{
|
|
63
64
|
key: "update",
|
|
64
65
|
value: function update(view, lastState) {
|
|
65
66
|
var state = view.state,
|
|
@@ -93,14 +94,14 @@ var TableCellTooltipView = /*#__PURE__*/function () {
|
|
|
93
94
|
}
|
|
94
95
|
if (!cellEl) {
|
|
95
96
|
// Closes the popup.
|
|
96
|
-
popUp
|
|
97
|
+
popUp === null || popUp === void 0 || popUp.close();
|
|
97
98
|
this._cellElement = null;
|
|
98
99
|
} else if (popUp && cellEl === this._cellElement) {
|
|
99
100
|
// Updates the popup.
|
|
100
101
|
popUp.update(viewPops);
|
|
101
102
|
} else {
|
|
102
103
|
// Creates a new popup.
|
|
103
|
-
popUp
|
|
104
|
+
popUp === null || popUp === void 0 || popUp.close();
|
|
104
105
|
this._cellElement = cellEl;
|
|
105
106
|
// [FS] IRAD-1009 2020-07-16
|
|
106
107
|
// Does not allow Table Menu Popuup button in disable mode
|
|
@@ -116,7 +117,6 @@ var TableCellTooltipView = /*#__PURE__*/function () {
|
|
|
116
117
|
}
|
|
117
118
|
}
|
|
118
119
|
}]);
|
|
119
|
-
return TableCellTooltipView;
|
|
120
120
|
}(); // https://prosemirror.net/examples/tooltip/
|
|
121
121
|
var SPEC = {
|
|
122
122
|
// [FS] IRAD-1005 2020-07-07
|
|
@@ -127,11 +127,11 @@ var SPEC = {
|
|
|
127
127
|
}
|
|
128
128
|
};
|
|
129
129
|
var TableCellMenuPlugin = /*#__PURE__*/function (_Plugin) {
|
|
130
|
-
_inherits(TableCellMenuPlugin, _Plugin);
|
|
131
130
|
function TableCellMenuPlugin() {
|
|
132
131
|
_classCallCheck(this, TableCellMenuPlugin);
|
|
133
132
|
return _callSuper(this, TableCellMenuPlugin, [SPEC]);
|
|
134
133
|
}
|
|
134
|
+
_inherits(TableCellMenuPlugin, _Plugin);
|
|
135
135
|
return _createClass(TableCellMenuPlugin);
|
|
136
136
|
}(Plugin);
|
|
137
137
|
export default TableCellMenuPlugin;
|
|
@@ -1,132 +1,130 @@
|
|
|
1
|
-
// @flow
|
|
2
|
-
|
|
3
|
-
import { EditorState, Plugin, PluginKey } from 'prosemirror-state';
|
|
4
|
-
import { EditorView } from 'prosemirror-view';
|
|
5
|
-
/* eslint-disable-next-line */
|
|
6
|
-
import * as React from 'react';
|
|
7
|
-
|
|
8
|
-
import findActionableCell from './findActionableCell.js';
|
|
9
|
-
import { atAnchorTopRight } from '@modusoperandi/licit-ui-commands';
|
|
10
|
-
import TableCellMenu from './ui/TableCellMenu.js';
|
|
11
|
-
import bindScrollHandler from './ui/bindScrollHandler.js';
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
let
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
this.
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
//
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
export default TableCellMenuPlugin;
|
|
1
|
+
// @flow
|
|
2
|
+
|
|
3
|
+
import { EditorState, Plugin, PluginKey } from 'prosemirror-state';
|
|
4
|
+
import { EditorView } from 'prosemirror-view';
|
|
5
|
+
/* eslint-disable-next-line */
|
|
6
|
+
import * as React from 'react';
|
|
7
|
+
|
|
8
|
+
import findActionableCell from './findActionableCell.js';
|
|
9
|
+
import { atAnchorTopRight, createPopUp } from '@modusoperandi/licit-ui-commands';
|
|
10
|
+
import TableCellMenu from './ui/TableCellMenu.js';
|
|
11
|
+
import bindScrollHandler from './ui/bindScrollHandler.js';
|
|
12
|
+
import isElementFullyVisible from './ui/isElementFullyVisible.js';
|
|
13
|
+
import '@modusoperandi/licit-ui-commands/ui/czi-pop-up.css';
|
|
14
|
+
import { CellSelection } from 'prosemirror-tables';
|
|
15
|
+
|
|
16
|
+
class TableCellTooltipView {
|
|
17
|
+
_cellElement: null;
|
|
18
|
+
_popUp = null;
|
|
19
|
+
_scrollHandle = null;
|
|
20
|
+
|
|
21
|
+
constructor(editorView: EditorView) {
|
|
22
|
+
this.update(editorView, null);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
update(view: EditorView, lastState: EditorState): void {
|
|
26
|
+
const { state, readOnly } = view;
|
|
27
|
+
const result = findActionableCell(state);
|
|
28
|
+
|
|
29
|
+
if (!result || readOnly) {
|
|
30
|
+
this.destroy();
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
// These is screen coordinate.
|
|
35
|
+
const domFound = view.domAtPos(result.pos + 1);
|
|
36
|
+
if (!domFound) {
|
|
37
|
+
this.destroy();
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
let cellEl = domFound.node;
|
|
42
|
+
const popUp = this._popUp;
|
|
43
|
+
let actionNode = null;
|
|
44
|
+
if (result && state.selection instanceof CellSelection) {
|
|
45
|
+
actionNode = state.selection.$anchorCell.node(-1);
|
|
46
|
+
}
|
|
47
|
+
const viewPops = {
|
|
48
|
+
editorState: state,
|
|
49
|
+
editorView: view,
|
|
50
|
+
pluginView: this,
|
|
51
|
+
actionNode,
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
if (cellEl && !isElementFullyVisible(cellEl)) {
|
|
55
|
+
cellEl = null;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
if (!cellEl) {
|
|
59
|
+
// Closes the popup.
|
|
60
|
+
popUp?.close();
|
|
61
|
+
this._cellElement = null;
|
|
62
|
+
} else if (popUp && cellEl === this._cellElement) {
|
|
63
|
+
// Updates the popup.
|
|
64
|
+
popUp.update(viewPops);
|
|
65
|
+
} else {
|
|
66
|
+
// Creates a new popup.
|
|
67
|
+
popUp?.close();
|
|
68
|
+
this._cellElement = cellEl;
|
|
69
|
+
// [FS] IRAD-1009 2020-07-16
|
|
70
|
+
// Does not allow Table Menu Popuup button in disable mode
|
|
71
|
+
if (!view.disabled) {
|
|
72
|
+
this._popUp = createPopUp(TableCellMenu, viewPops, {
|
|
73
|
+
anchor: cellEl,
|
|
74
|
+
autoDismiss: false,
|
|
75
|
+
onClose: this._onClose,
|
|
76
|
+
position: atAnchorTopRight,
|
|
77
|
+
});
|
|
78
|
+
this._onOpen();
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
destroy = (): void => {
|
|
84
|
+
this._popUp?.close();
|
|
85
|
+
this._popUp = null;
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
_onOpen = (): void => {
|
|
89
|
+
const cellEl = this._cellElement;
|
|
90
|
+
if (!cellEl) {
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
this._scrollHandle = bindScrollHandler(cellEl, this._onScroll);
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
_onClose = (): void => {
|
|
97
|
+
this._popUp = null;
|
|
98
|
+
this._scrollHandle?.dispose();
|
|
99
|
+
this._scrollHandle = null;
|
|
100
|
+
};
|
|
101
|
+
|
|
102
|
+
_onScroll = (): void => {
|
|
103
|
+
const popUp = this._popUp;
|
|
104
|
+
const cellEl = this._cellElement;
|
|
105
|
+
if (!popUp || !cellEl) {
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
if (!isElementFullyVisible(cellEl)) {
|
|
109
|
+
popUp.close();
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
// https://prosemirror.net/examples/tooltip/
|
|
115
|
+
const SPEC = {
|
|
116
|
+
// [FS] IRAD-1005 2020-07-07
|
|
117
|
+
// Upgrade outdated packages.
|
|
118
|
+
key: new PluginKey('TableCellMenuPlugin'),
|
|
119
|
+
view(editorView: EditorView) {
|
|
120
|
+
return new TableCellTooltipView(editorView);
|
|
121
|
+
},
|
|
122
|
+
};
|
|
123
|
+
|
|
124
|
+
class TableCellMenuPlugin extends Plugin {
|
|
125
|
+
constructor() {
|
|
126
|
+
super(SPEC);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
export default TableCellMenuPlugin;
|