@modusoperandi/licit 1.0.5 → 1.0.8
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 +10 -11
- package/BlockquoteInsertNewLineCommand.js.flow +1 -2
- package/BlockquoteNodeSpec.js +2 -3
- package/BlockquoteNodeSpec.js.flow +1 -2
- package/BlockquoteToggleCommand.js +9 -9
- package/BookmarkNodeSpec.js +1 -1
- package/CodeBlockCommand.js +10 -10
- package/CodeBlockCommand.js.flow +1 -1
- package/ContentPlaceholderPlugin.js +17 -18
- package/ContentPlaceholderPlugin.js.flow +10 -14
- package/CursorPlaceholderPlugin.js +8 -9
- package/CursorPlaceholderPlugin.js.flow +0 -2
- package/DocLayoutCommand.js +10 -12
- package/DocLayoutCommand.js.flow +1 -3
- package/EditorKeyMap.js +0 -1
- package/EditorKeyMap.js.flow +0 -2
- package/EditorMarks.js +1 -1
- package/EditorNodes.js +1 -2
- package/EditorNodes.js.flow +0 -1
- package/EditorPageLayoutPlugin.js +8 -8
- package/FontTypeMarkSpec.js +1 -1
- package/FontTypeMarkSpec.js.flow +1 -1
- package/HTMLMutator.js +6 -7
- package/HTMLMutator.js.flow +2 -3
- package/HeadingNodeSpec.js +2 -12
- package/HeadingNodeSpec.js.flow +4 -14
- package/HistoryRedoCommand.js +9 -9
- package/HistoryUndoCommand.js +9 -9
- package/HorizontalRuleCommand.js +9 -9
- package/ImageUploadPlaceholderPlugin.js +14 -18
- package/ImageUploadPlaceholderPlugin.js.flow +6 -11
- package/LinkMarkSpec.js +6 -1
- package/LinkMarkSpec.js.flow +5 -0
- package/LinkSetURLCommand.js +126 -55
- package/LinkSetURLCommand.js.flow +61 -37
- package/LinkTooltipPlugin.js +119 -31
- package/LinkTooltipPlugin.js.flow +91 -22
- package/ListItemInsertNewLineCommand.js +10 -11
- package/ListItemInsertNewLineCommand.js.flow +1 -2
- package/ListItemMergeCommand.js +17 -16
- package/ListItemMergeCommand.js.flow +4 -6
- package/ListSplitCommand.js +9 -9
- package/ListToggleCommand.js +9 -9
- package/MarksClearCommand.js +9 -9
- package/MathEditCommand.js +10 -11
- package/MathEditCommand.js.flow +1 -2
- package/OrderedListNodeSpec.js +1 -1
- package/ParagraphNodeSpec.js +11 -2
- package/ParagraphNodeSpec.js.flow +9 -2
- package/ParagraphSpacingCommand.js +13 -14
- package/ParagraphSpacingCommand.js.flow +4 -9
- package/PrintCommand.js +9 -9
- package/SelectionPlaceholderPlugin.js +8 -9
- package/SelectionPlaceholderPlugin.js.flow +0 -2
- package/SpacerMarkSpec.js +1 -1
- package/StyleView.js +3 -4
- package/StyleView.js.flow +0 -1
- package/TableBackgroundColorCommand.js +13 -16
- package/TableBackgroundColorCommand.js.flow +14 -18
- package/TableBorderColorCommand.js +13 -16
- package/TableBorderColorCommand.js.flow +14 -20
- package/TableCellColorCommand.js +11 -13
- package/TableCellColorCommand.js.flow +2 -4
- package/TableCellMenuPlugin.js +16 -16
- package/TableCellMenuPlugin.js.flow +5 -8
- package/TableInsertCommand.js +12 -15
- package/TableInsertCommand.js.flow +3 -6
- package/TableMergeCellsCommand.js +13 -12
- package/TableMergeCellsCommand.js.flow +4 -3
- package/TableNodesSpecs.js +4 -2
- package/TableNodesSpecs.js.flow +4 -2
- package/TableResizePlugin.js +18 -18
- package/TableResizePlugin.js.flow +2 -3
- package/TextInsertTabSpaceCommand.js +9 -9
- package/Types.js +1 -0
- package/Types.js.flow +2 -5
- package/WebFontLoader.js +4 -4
- package/bom.xml +20047 -28206
- package/buildEditorPlugins.js +4 -4
- package/buildInputRules.js +8 -4
- package/buildInputRules.js.flow +8 -4
- package/client/CollabConnector.js +9 -9
- package/client/EditorConnection.js +8 -6
- package/client/EditorConnection.js.flow +3 -2
- package/client/Licit.js +22 -59
- package/client/Licit.js.flow +12 -45
- package/client/Licit.test.js +49 -39
- package/client/Licit.test.js.flow +40 -34
- package/client/Reporter.js +3 -3
- package/client/SimpleConnector.js +4 -4
- package/client/http.js +0 -6
- package/client/http.js.flow +0 -8
- package/client/throttle.js +8 -2
- package/client/throttle.js.flow +2 -2
- package/convertFromDOMElement.js +2 -4
- package/convertFromDOMElement.js.flow +2 -5
- package/convertFromHTML.js +2 -3
- package/convertFromHTML.js.flow +2 -4
- package/convertFromJSON.js +1 -2
- package/convertFromJSON.js.flow +1 -2
- package/convertToCSSPTValue.js +6 -10
- package/convertToCSSPTValue.js.flow +8 -11
- package/createCommand.js +9 -9
- package/createEditorKeyMap.js +1 -1
- package/createEmptyEditorState.js +2 -3
- package/createEmptyEditorState.js.flow +2 -4
- package/createTableResizingPlugin.js +6 -6
- package/createTableResizingPlugin.js.flow +1 -1
- package/findActiveMark.js +1 -1
- package/findActiveMark.js.flow +1 -1
- package/insertTable.js +0 -3
- package/insertTable.js.flow +0 -2
- package/joinDown.js +1 -3
- package/joinDown.js.flow +1 -3
- package/joinUp.js +1 -3
- package/joinUp.js.flow +1 -3
- package/lookUpElement.js +2 -1
- package/lookUpElement.js.flow +1 -1
- package/normalizeHTML.js +3 -1
- package/normalizeHTML.js.flow +3 -1
- package/package.json +23 -17
- package/patchAnchorElements.js +1 -1
- package/patchAnchorElements.js.flow +1 -1
- package/patchBreakElements.js +3 -2
- package/patchBreakElements.js.flow +2 -2
- package/patchElementInlineStyles.js +1 -1
- package/patchElementInlineStyles.js.flow +1 -1
- package/patchListElements.js +6 -7
- package/patchListElements.js.flow +7 -8
- package/patchMathElements.js +5 -7
- package/patchMathElements.js.flow +2 -4
- package/patchStyleElements.js +1 -1
- package/patchStyleElements.js.flow +7 -6
- package/patchTableElements.js +2 -3
- package/patchTableElements.js.flow +2 -3
- package/sanitizeURL.js +1 -1
- package/sanitizeURL.js.flow +1 -1
- package/splitListItem.js +2 -2
- package/splitListItem.js.flow +1 -1
- package/styles.css +32 -3
- package/toggleBlockquote.js +4 -5
- package/toggleBlockquote.js.flow +5 -12
- package/toggleCodeBlock.js +6 -6
- package/toggleCodeBlock.js.flow +10 -10
- package/ui/AlertInfo.js +9 -10
- package/ui/AlertInfo.js.flow +0 -1
- package/ui/BookmarkNodeView.js +13 -13
- package/ui/BookmarkNodeView.js.flow +0 -2
- package/ui/CommandButton.js +9 -9
- package/ui/CommandMenu.js +12 -12
- package/ui/CommandMenu.js.flow +1 -1
- package/ui/CommandMenuButton.js +11 -13
- package/ui/CommandMenuButton.js.flow +2 -5
- package/ui/CustomEditorView.js +13 -12
- package/ui/CustomEditorView.js.flow +1 -0
- package/ui/CustomMenu.js +8 -10
- package/ui/CustomMenu.js.flow +0 -3
- package/ui/CustomMenuItem.js +10 -11
- package/ui/CustomMenuItem.js.flow +0 -1
- package/ui/CustomNodeView.js +27 -16
- package/ui/CustomNodeView.js.flow +16 -9
- package/ui/CustomRadioButton.js +13 -16
- package/ui/CustomRadioButton.js.flow +2 -4
- package/ui/DocLayoutEditor.js +10 -13
- package/ui/DocLayoutEditor.js.flow +1 -5
- package/ui/Editor.js +16 -16
- package/ui/Editor.js.flow +7 -12
- package/ui/EditorFrameset.js +9 -10
- package/ui/EditorFrameset.js.flow +0 -2
- package/ui/EditorToolbar.js +24 -30
- package/ui/EditorToolbar.js.flow +22 -43
- package/ui/EditorToolbarConfig.js +5 -5
- package/ui/EditorToolbarConfig.js.flow +1 -1
- package/ui/FontSizeCommandMenuButton.js +10 -10
- package/ui/FontSizeCommandMenuButton.js.flow +1 -1
- package/ui/FontTypeCommandMenuButton.js +11 -12
- package/ui/FontTypeCommandMenuButton.js.flow +4 -5
- package/ui/Frag.js +8 -9
- package/ui/Frag.js.flow +0 -2
- package/ui/Icon.js +12 -18
- package/ui/Icon.js.flow +0 -7
- package/ui/ImageInlineEditor.js +9 -10
- package/ui/ImageInlineEditor.js.flow +0 -1
- package/ui/LinkTooltip.js +62 -28
- package/ui/LinkTooltip.js.flow +55 -24
- package/ui/LinkURLEditor.js +151 -36
- package/ui/LinkURLEditor.js.flow +176 -54
- package/ui/ListItemNodeView.js +4 -4
- package/ui/ListTypeButton.js +11 -15
- package/ui/ListTypeButton.js.flow +2 -6
- package/ui/ListTypeCommandButton.js +10 -10
- package/ui/ListTypeCommandButton.js.flow +1 -1
- package/ui/ListTypeMenu.js +11 -12
- package/ui/ListTypeMenu.js.flow +1 -2
- package/ui/LoadingIndicator.js +8 -9
- package/ui/LoadingIndicator.js.flow +0 -1
- package/ui/MathEditor.js +10 -15
- package/ui/MathEditor.js.flow +1 -9
- package/ui/MathInlineEditor.js +13 -14
- package/ui/MathInlineEditor.js.flow +3 -5
- package/ui/MathNodeView.js +16 -16
- package/ui/MathNodeView.js.flow +10 -21
- package/ui/PasteMenu.js +11 -15
- package/ui/PasteMenu.js.flow +0 -5
- package/ui/ResizeObserver.js +4 -4
- package/ui/ResizeObserver.js.flow +3 -4
- package/ui/RichTextEditor.js +9 -9
- package/ui/SelectionObserver.js +6 -6
- package/ui/SelectionObserver.js.flow +2 -2
- package/ui/TableCellMenu.js +9 -10
- package/ui/TableCellMenu.js.flow +0 -2
- package/ui/TableGridSizeEditor.js +12 -15
- package/ui/TableGridSizeEditor.js.flow +7 -6
- package/ui/TableNodeView.js +15 -13
- package/ui/TableNodeView.js.flow +3 -3
- package/ui/bindScrollHandler.js +2 -1
- package/ui/bindScrollHandler.js.flow +1 -1
- package/ui/canUseCSSFont.js +5 -4
- package/ui/canUseCSSFont.js.flow +4 -5
- package/ui/czi-editor.css +1 -4
- package/ui/czi-form.css +102 -8
- package/ui/czi-image-view.css +1 -5
- package/ui/czi-link-tooltip.css +41 -0
- package/ui/czi-list.css +0 -4
- package/ui/czi-loading-indicator.css +1 -46
- package/ui/czi-table-cell-menu.css +3 -1
- package/ui/findActiveFontSize.js +2 -1
- package/ui/findActiveFontSize.js.flow +1 -4
- package/ui/findActiveFontType.js +4 -3
- package/ui/findActiveFontType.js.flow +3 -6
- package/ui/handleEditorDrop.js +1 -1
- package/ui/handleEditorDrop.js.flow +1 -1
- package/ui/handleEditorKeyDown.js +1 -1
- package/ui/handleEditorKeyDown.js.flow +1 -1
- package/ui/handleEditorPaste.js +1 -1
- package/ui/handleEditorPaste.js.flow +1 -1
- package/ui/injectStyleSheet.js +2 -2
- package/ui/injectStyleSheet.js.flow +2 -4
- package/ui/isElementFullyVisible.js +1 -10
- package/ui/isElementFullyVisible.js.flow +1 -13
- package/ui/mathquill-editor/MathQuillEditor.js +12 -14
- package/ui/mathquill-editor/MathQuillEditor.js.flow +0 -2
- package/ui/mathquill-editor/MathQuillEditorSymbolsPanel.js +9 -10
- package/ui/mathquill-editor/MathQuillEditorSymbolsPanel.js.flow +0 -1
- package/ui/mathquill-editor/mathquill-import-kludge.js +1 -9
- package/ui/mathquill-editor/mathquill-import-kludge.js.flow +0 -9
- package/ui/renderLaTeXAsHTML.js +3 -7
- package/ui/renderLaTeXAsHTML.js.flow +0 -4
- package/ui/resolveImage.js +4 -5
- package/ui/resolveImage.js.flow +3 -5
- package/ui/toCSSLineSpacing.js +2 -3
- package/ui/toCSSLineSpacing.js.flow +2 -4
- package/styles0.css +0 -29
package/buildEditorPlugins.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
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(
|
|
5
|
-
function _defineProperty(
|
|
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
|
+
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; }
|
|
6
6
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
7
7
|
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); }
|
|
8
8
|
import { baseKeymap } from 'prosemirror-commands';
|
package/buildInputRules.js
CHANGED
|
@@ -55,16 +55,20 @@ export default function buildInputRules(schema) {
|
|
|
55
55
|
if (schema.nodes.blockquote) {
|
|
56
56
|
rules.push(blockQuoteInputRule());
|
|
57
57
|
}
|
|
58
|
-
|
|
58
|
+
type = schema.nodes.ordered_list;
|
|
59
|
+
if (type) {
|
|
59
60
|
rules.push(orderedListRule(type));
|
|
60
61
|
}
|
|
61
|
-
|
|
62
|
+
type = schema.nodes.bullet_list;
|
|
63
|
+
if (type) {
|
|
62
64
|
rules.push(bulletListRule(type));
|
|
63
65
|
}
|
|
64
|
-
|
|
66
|
+
type = schema.nodes.code_block;
|
|
67
|
+
if (type) {
|
|
65
68
|
rules.push(codeBlockRule(type));
|
|
66
69
|
}
|
|
67
|
-
|
|
70
|
+
type = schema.nodes.heading;
|
|
71
|
+
if (type) {
|
|
68
72
|
rules.push(headingRule(type, 6));
|
|
69
73
|
}
|
|
70
74
|
return inputRules({
|
package/buildInputRules.js.flow
CHANGED
|
@@ -65,16 +65,20 @@ export default function buildInputRules(schema: Schema) {
|
|
|
65
65
|
if (schema.nodes.blockquote) {
|
|
66
66
|
rules.push(blockQuoteInputRule());
|
|
67
67
|
}
|
|
68
|
-
|
|
68
|
+
type = schema.nodes.ordered_list;
|
|
69
|
+
if (type) {
|
|
69
70
|
rules.push(orderedListRule(type));
|
|
70
71
|
}
|
|
71
|
-
|
|
72
|
+
type = schema.nodes.bullet_list;
|
|
73
|
+
if (type) {
|
|
72
74
|
rules.push(bulletListRule(type));
|
|
73
75
|
}
|
|
74
|
-
|
|
76
|
+
type = schema.nodes.code_block;
|
|
77
|
+
if (type) {
|
|
75
78
|
rules.push(codeBlockRule(type));
|
|
76
79
|
}
|
|
77
|
-
|
|
80
|
+
type = schema.nodes.heading;
|
|
81
|
+
if (type) {
|
|
78
82
|
rules.push(headingRule(type, 6));
|
|
79
83
|
}
|
|
80
84
|
return inputRules({ rules });
|
|
@@ -1,15 +1,15 @@
|
|
|
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 _defineProperties(
|
|
3
|
-
function _createClass(
|
|
4
|
-
function _classCallCheck(
|
|
2
|
+
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); } }
|
|
3
|
+
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
|
|
4
|
+
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
|
|
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(
|
|
7
|
-
function _assertThisInitialized(
|
|
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; }
|
|
8
8
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
9
|
-
function _getPrototypeOf(
|
|
10
|
-
function _inherits(
|
|
11
|
-
function _setPrototypeOf(
|
|
12
|
-
function _defineProperty(
|
|
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
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 { Transform } from 'prosemirror-transform';
|
|
@@ -1,8 +1,8 @@
|
|
|
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 _defineProperties(
|
|
3
|
-
function _createClass(
|
|
4
|
-
function _classCallCheck(
|
|
5
|
-
function _defineProperty(
|
|
2
|
+
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); } }
|
|
3
|
+
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
|
|
4
|
+
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
|
|
5
|
+
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; }
|
|
6
6
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
7
7
|
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); }
|
|
8
8
|
import { collab, getVersion, receiveTransaction, sendableSteps } from 'prosemirror-collab';
|
|
@@ -159,10 +159,11 @@ var EditorConnection = /*#__PURE__*/function () {
|
|
|
159
159
|
var _this3 = this;
|
|
160
160
|
var query = 'version=' + getVersion(this.state.edit);
|
|
161
161
|
this.run(GET(this.url + '/events?' + query)).then(function (data) {
|
|
162
|
+
var _data$steps;
|
|
162
163
|
_this3.report.success();
|
|
163
164
|
data = JSON.parse(data);
|
|
164
165
|
_this3.backOff = 0;
|
|
165
|
-
if (data.steps &&
|
|
166
|
+
if ((_data$steps = data.steps) !== null && _data$steps !== void 0 && _data$steps.length) {
|
|
166
167
|
var tr = receiveTransaction(_this3.state.edit, data.steps.map(function (j) {
|
|
167
168
|
return Step.fromJSON(_this3.getEffectiveSchema(), j);
|
|
168
169
|
}), data.clientIDs);
|
|
@@ -292,7 +293,8 @@ var EditorConnection = /*#__PURE__*/function () {
|
|
|
292
293
|
}, {
|
|
293
294
|
key: "run",
|
|
294
295
|
value: function run(request) {
|
|
295
|
-
|
|
296
|
+
this.request = request;
|
|
297
|
+
return this.request;
|
|
296
298
|
}
|
|
297
299
|
}, {
|
|
298
300
|
key: "close",
|
|
@@ -179,7 +179,7 @@ class EditorConnection {
|
|
|
179
179
|
this.report.success();
|
|
180
180
|
data = JSON.parse(data);
|
|
181
181
|
this.backOff = 0;
|
|
182
|
-
if (data.steps
|
|
182
|
+
if (data.steps?.length) {
|
|
183
183
|
const tr = receiveTransaction(
|
|
184
184
|
this.state.edit,
|
|
185
185
|
data.steps.map((j) => Step.fromJSON(this.getEffectiveSchema(), j)),
|
|
@@ -296,7 +296,8 @@ class EditorConnection {
|
|
|
296
296
|
}
|
|
297
297
|
|
|
298
298
|
run(request: any): Promise<any> {
|
|
299
|
-
|
|
299
|
+
this.request = request;
|
|
300
|
+
return this.request;
|
|
300
301
|
}
|
|
301
302
|
|
|
302
303
|
close(): void {
|
package/client/Licit.js
CHANGED
|
@@ -1,21 +1,18 @@
|
|
|
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 _createForOfIteratorHelper(
|
|
3
|
-
function _unsupportedIterableToArray(
|
|
4
|
-
function _arrayLikeToArray(
|
|
5
|
-
function
|
|
6
|
-
function
|
|
7
|
-
function
|
|
8
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
9
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
10
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
2
|
+
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
3
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
4
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
5
|
+
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
|
|
6
|
+
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); } }
|
|
7
|
+
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
|
|
11
8
|
function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
|
|
12
|
-
function _possibleConstructorReturn(
|
|
13
|
-
function _assertThisInitialized(
|
|
9
|
+
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); }
|
|
10
|
+
function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; }
|
|
14
11
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
15
|
-
function _getPrototypeOf(
|
|
16
|
-
function _inherits(
|
|
17
|
-
function _setPrototypeOf(
|
|
18
|
-
function _defineProperty(
|
|
12
|
+
function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); }
|
|
13
|
+
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); }
|
|
14
|
+
function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
|
|
15
|
+
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; }
|
|
19
16
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
20
17
|
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); }
|
|
21
18
|
import { EditorState, TextSelection, Plugin } from 'prosemirror-state';
|
|
@@ -33,7 +30,6 @@ import { EMPTY_DOC_JSON } from '../createEmptyEditorState.js';
|
|
|
33
30
|
import { createPopUp, atViewportCenter } from '@modusoperandi/licit-ui-commands';
|
|
34
31
|
import AlertInfo from '../ui/AlertInfo.js';
|
|
35
32
|
import { SetDocAttrStep } from '@modusoperandi/licit-doc-attrs-step';
|
|
36
|
-
import './licit.css';
|
|
37
33
|
import DefaultEditorPlugins from '../buildEditorPlugins.js';
|
|
38
34
|
import EditorMarks from '../EditorMarks.js';
|
|
39
35
|
import EditorNodes from '../EditorNodes.js';
|
|
@@ -78,7 +74,8 @@ var Licit = /*#__PURE__*/function (_React$Component) {
|
|
|
78
74
|
_defineProperty(_this, "_pasteJSONPlugin", void 0);
|
|
79
75
|
_defineProperty(_this, "_popUp", null);
|
|
80
76
|
_defineProperty(_this, "insertJSON", function (json) {
|
|
81
|
-
|
|
77
|
+
var _this$_pasteJSONPlugi;
|
|
78
|
+
if ((_this$_pasteJSONPlugi = _this._pasteJSONPlugin) !== null && _this$_pasteJSONPlugi !== void 0 && _this$_pasteJSONPlugi.insert) {
|
|
82
79
|
_this._pasteJSONPlugin.insert(json, _this._editorView);
|
|
83
80
|
}
|
|
84
81
|
});
|
|
@@ -89,7 +86,6 @@ var Licit = /*#__PURE__*/function (_React$Component) {
|
|
|
89
86
|
// [FS] IRAD-1571 2021-09-27
|
|
90
87
|
// dispatch a transaction that MUST start from the views current state;
|
|
91
88
|
var editorState = _this._editorView.state;
|
|
92
|
-
var doc = editorState.doc;
|
|
93
89
|
var tr = editorState.tr;
|
|
94
90
|
var document = _this.getDocument(content, editorState, dataType);
|
|
95
91
|
_this.skipDataTypeCheck = true;
|
|
@@ -97,8 +93,7 @@ var Licit = /*#__PURE__*/function (_React$Component) {
|
|
|
97
93
|
// [FS] IRAD-1593 2021-10-12
|
|
98
94
|
// Reset lastKeyCode since the content is set dynamically and so lastKeyCode is invalid now.
|
|
99
95
|
_this._editorView.lastKeyCode = null;
|
|
100
|
-
|
|
101
|
-
tr = tr.setSelection(selection).replaceSelectionWith(document, false);
|
|
96
|
+
|
|
102
97
|
// [FS] IRAD-1092 2020-12-03
|
|
103
98
|
// set the value for object metadata and objectId
|
|
104
99
|
// Should update all document attributes.
|
|
@@ -139,7 +134,8 @@ var Licit = /*#__PURE__*/function (_React$Component) {
|
|
|
139
134
|
var docJson = transaction.doc.toJSON();
|
|
140
135
|
var isEmpty = false;
|
|
141
136
|
if (docJson.content && docJson.content.length === 1) {
|
|
142
|
-
|
|
137
|
+
var _docJson$content, _docJson$content2;
|
|
138
|
+
if (!docJson.content[0].content || (_docJson$content = docJson.content) !== null && _docJson$content !== void 0 && (_docJson$content = _docJson$content[0]) !== null && _docJson$content !== void 0 && (_docJson$content = _docJson$content.content) !== null && _docJson$content !== void 0 && (_docJson$content = _docJson$content[0]) !== null && _docJson$content !== void 0 && _docJson$content.text && '' === ((_docJson$content2 = docJson.content) === null || _docJson$content2 === void 0 || (_docJson$content2 = _docJson$content2[0]) === null || _docJson$content2 === void 0 || (_docJson$content2 = _docJson$content2.content) === null || _docJson$content2 === void 0 || (_docJson$content2 = _docJson$content2[0]) === null || _docJson$content2 === void 0 ? void 0 : _docJson$content2.text.trim())) {
|
|
143
139
|
isEmpty = true;
|
|
144
140
|
}
|
|
145
141
|
}
|
|
@@ -208,40 +204,6 @@ var Licit = /*#__PURE__*/function (_React$Component) {
|
|
|
208
204
|
_this._skipSCU = false;
|
|
209
205
|
_this.setState(props);
|
|
210
206
|
});
|
|
211
|
-
_defineProperty(_this, "exportPDF", function () {
|
|
212
|
-
new Promise( /*#__PURE__*/function () {
|
|
213
|
-
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(resolve, reject) {
|
|
214
|
-
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
215
|
-
while (1) switch (_context.prev = _context.next) {
|
|
216
|
-
case 0:
|
|
217
|
-
try {
|
|
218
|
-
//
|
|
219
|
-
if (Array.isArray(_this.props.plugins)) {
|
|
220
|
-
_this.props.plugins.forEach(function (plugin) {
|
|
221
|
-
if (plugin['key'].startsWith('exportPDF$')) {
|
|
222
|
-
// got the exportPDF instance.
|
|
223
|
-
resolve(plugin);
|
|
224
|
-
}
|
|
225
|
-
});
|
|
226
|
-
}
|
|
227
|
-
} catch (error) {
|
|
228
|
-
reject();
|
|
229
|
-
}
|
|
230
|
-
case 1:
|
|
231
|
-
case "end":
|
|
232
|
-
return _context.stop();
|
|
233
|
-
}
|
|
234
|
-
}, _callee);
|
|
235
|
-
}));
|
|
236
|
-
return function (_x, _x2) {
|
|
237
|
-
return _ref.apply(this, arguments);
|
|
238
|
-
};
|
|
239
|
-
}()).then(function (exportPDF) {
|
|
240
|
-
if (exportPDF.perform) {
|
|
241
|
-
exportPDF.perform(_this._editorView);
|
|
242
|
-
}
|
|
243
|
-
});
|
|
244
|
-
});
|
|
245
207
|
_defineProperty(_this, "goToEnd", function () {
|
|
246
208
|
// Return focus to the editor with cursor at end of document.
|
|
247
209
|
var view = _this.editorView;
|
|
@@ -487,7 +449,8 @@ var Licit = /*#__PURE__*/function (_React$Component) {
|
|
|
487
449
|
}, {
|
|
488
450
|
key: "isNodeHasAttribute",
|
|
489
451
|
value: function isNodeHasAttribute(node, attrName) {
|
|
490
|
-
|
|
452
|
+
var _node$attrs;
|
|
453
|
+
return (_node$attrs = node.attrs) === null || _node$attrs === void 0 ? void 0 : _node$attrs[attrName];
|
|
491
454
|
}
|
|
492
455
|
}, {
|
|
493
456
|
key: "getDocument",
|
|
@@ -495,9 +458,9 @@ var Licit = /*#__PURE__*/function (_React$Component) {
|
|
|
495
458
|
var document = null;
|
|
496
459
|
var schema = editorState.schema;
|
|
497
460
|
if (DataType.JSON === dataType || this.skipDataTypeCheck) {
|
|
498
|
-
document = schema.nodeFromJSON(content
|
|
461
|
+
document = schema.nodeFromJSON(content || EMPTY_DOC_JSON);
|
|
499
462
|
} else {
|
|
500
|
-
var tempEState = convertFromHTML(content
|
|
463
|
+
var tempEState = convertFromHTML(content || '', schema, editorState.plugins);
|
|
501
464
|
document = tempEState.doc;
|
|
502
465
|
}
|
|
503
466
|
return document;
|
|
@@ -602,7 +565,7 @@ var Licit = /*#__PURE__*/function (_React$Component) {
|
|
|
602
565
|
// Bug fix: Transaction mismatch error when a dialog is opened and keep typing.
|
|
603
566
|
function closeOpenedPopupModels() {
|
|
604
567
|
var element = document.getElementsByClassName('czi-pop-up-element')[0];
|
|
605
|
-
if (element && element.parentElement) {
|
|
568
|
+
if (element !== null && element !== void 0 && element.parentElement) {
|
|
606
569
|
element.parentElement.removeChild(element);
|
|
607
570
|
}
|
|
608
571
|
}
|
package/client/Licit.js.flow
CHANGED
|
@@ -11,19 +11,14 @@ import RichTextEditor from '../ui/RichTextEditor.js';
|
|
|
11
11
|
import uuid from '../uuid.js';
|
|
12
12
|
import SimpleConnector from './SimpleConnector.js';
|
|
13
13
|
import CollabConnector from './CollabConnector.js';
|
|
14
|
-
import {
|
|
15
|
-
|
|
16
|
-
} from '../createEmptyEditorState.js';
|
|
17
|
-
import type {
|
|
18
|
-
EditorRuntime
|
|
19
|
-
} from '../Types.js';
|
|
14
|
+
import { EMPTY_DOC_JSON } from '../createEmptyEditorState.js';
|
|
15
|
+
import type { EditorRuntime } from '../Types.js';
|
|
20
16
|
import {
|
|
21
17
|
createPopUp,
|
|
22
18
|
atViewportCenter,
|
|
23
19
|
} from '@modusoperandi/licit-ui-commands';
|
|
24
20
|
import AlertInfo from '../ui/AlertInfo.js';
|
|
25
21
|
import { SetDocAttrStep } from '@modusoperandi/licit-doc-attrs-step';
|
|
26
|
-
import './licit.css';
|
|
27
22
|
import DefaultEditorPlugins from '../buildEditorPlugins.js';
|
|
28
23
|
import EditorMarks from '../EditorMarks.js';
|
|
29
24
|
import EditorNodes from '../EditorNodes.js';
|
|
@@ -325,7 +320,7 @@ class Licit extends React.Component<any, any> {
|
|
|
325
320
|
}
|
|
326
321
|
|
|
327
322
|
isNodeHasAttribute(node: Node, attrName: string) {
|
|
328
|
-
return node.attrs
|
|
323
|
+
return node.attrs?.[attrName];
|
|
329
324
|
}
|
|
330
325
|
|
|
331
326
|
getDocument(content: any, editorState: EditorState, dataType: DataType) {
|
|
@@ -333,10 +328,10 @@ class Licit extends React.Component<any, any> {
|
|
|
333
328
|
const { schema } = editorState;
|
|
334
329
|
|
|
335
330
|
if (DataType.JSON === dataType || this.skipDataTypeCheck) {
|
|
336
|
-
document = schema.nodeFromJSON(content
|
|
331
|
+
document = schema.nodeFromJSON(content || EMPTY_DOC_JSON);
|
|
337
332
|
} else {
|
|
338
333
|
const tempEState = convertFromHTML(
|
|
339
|
-
content
|
|
334
|
+
content || '',
|
|
340
335
|
schema,
|
|
341
336
|
editorState.plugins
|
|
342
337
|
);
|
|
@@ -347,7 +342,7 @@ class Licit extends React.Component<any, any> {
|
|
|
347
342
|
}
|
|
348
343
|
|
|
349
344
|
insertJSON = (json: { [key: string]: any }): void => {
|
|
350
|
-
if (this._pasteJSONPlugin
|
|
345
|
+
if (this._pasteJSONPlugin?.insert) {
|
|
351
346
|
this._pasteJSONPlugin.insert(json, this._editorView);
|
|
352
347
|
}
|
|
353
348
|
};
|
|
@@ -357,7 +352,6 @@ class Licit extends React.Component<any, any> {
|
|
|
357
352
|
// [FS] IRAD-1571 2021-09-27
|
|
358
353
|
// dispatch a transaction that MUST start from the views current state;
|
|
359
354
|
const editorState = this._editorView.state;
|
|
360
|
-
const { doc } = editorState;
|
|
361
355
|
let { tr } = editorState;
|
|
362
356
|
const document = this.getDocument(content, editorState, dataType);
|
|
363
357
|
this.skipDataTypeCheck = true;
|
|
@@ -366,9 +360,6 @@ class Licit extends React.Component<any, any> {
|
|
|
366
360
|
// Reset lastKeyCode since the content is set dynamically and so lastKeyCode is invalid now.
|
|
367
361
|
this._editorView.lastKeyCode = null;
|
|
368
362
|
|
|
369
|
-
const selection = TextSelection.create(doc, 0, doc.content.size);
|
|
370
|
-
|
|
371
|
-
tr = tr.setSelection(selection).replaceSelectionWith(document, false);
|
|
372
363
|
// [FS] IRAD-1092 2020-12-03
|
|
373
364
|
// set the value for object metadata and objectId
|
|
374
365
|
// Should update all document attributes.
|
|
@@ -523,9 +514,8 @@ class Licit extends React.Component<any, any> {
|
|
|
523
514
|
if (docJson.content && docJson.content.length === 1) {
|
|
524
515
|
if (
|
|
525
516
|
!docJson.content[0].content ||
|
|
526
|
-
(docJson.content[0]
|
|
527
|
-
docJson.content[0]
|
|
528
|
-
'' === docJson.content[0].content[0].text.trim())
|
|
517
|
+
(docJson.content?.[0]?.content?.[0]?.text &&
|
|
518
|
+
'' === docJson.content?.[0]?.content?.[0]?.text.trim())
|
|
529
519
|
) {
|
|
530
520
|
isEmpty = true;
|
|
531
521
|
}
|
|
@@ -551,7 +541,7 @@ class Licit extends React.Component<any, any> {
|
|
|
551
541
|
// Bug fix: Transaction mismatch error when a dialog is opened and keep typing.
|
|
552
542
|
closeOpenedPopupModels() {
|
|
553
543
|
const element = document.getElementsByClassName('czi-pop-up-element')[0];
|
|
554
|
-
if (element
|
|
544
|
+
if (element?.parentElement) {
|
|
555
545
|
element.parentElement.removeChild(element);
|
|
556
546
|
}
|
|
557
547
|
}
|
|
@@ -572,8 +562,6 @@ class Licit extends React.Component<any, any> {
|
|
|
572
562
|
}
|
|
573
563
|
};
|
|
574
564
|
|
|
575
|
-
|
|
576
|
-
|
|
577
565
|
/**
|
|
578
566
|
* LICIT properties:
|
|
579
567
|
* docID {number} [0] Collaborative Doument ID
|
|
@@ -608,36 +596,15 @@ class Licit extends React.Component<any, any> {
|
|
|
608
596
|
this.setState(props);
|
|
609
597
|
};
|
|
610
598
|
|
|
611
|
-
exportPDF = () => {
|
|
612
|
-
new Promise(async (resolve, reject) => {
|
|
613
|
-
try {
|
|
614
|
-
//
|
|
615
|
-
if (Array.isArray(this.props.plugins)) {
|
|
616
|
-
this.props.plugins.forEach((plugin) => {
|
|
617
|
-
if (plugin['key'].startsWith('exportPDF$')) {
|
|
618
|
-
// got the exportPDF instance.
|
|
619
|
-
resolve(plugin);
|
|
620
|
-
}
|
|
621
|
-
});
|
|
622
|
-
}
|
|
623
|
-
} catch (error) {
|
|
624
|
-
reject();
|
|
625
|
-
}
|
|
626
|
-
}).then((exportPDF) => {
|
|
627
|
-
if (exportPDF.perform) {
|
|
628
|
-
exportPDF.perform(this._editorView);
|
|
629
|
-
}
|
|
630
|
-
});
|
|
631
|
-
};
|
|
632
|
-
|
|
633
599
|
goToEnd = (): void => {
|
|
634
600
|
// Return focus to the editor with cursor at end of document.
|
|
635
601
|
const view: EditorView = this.editorView;
|
|
636
602
|
const tr = view.state.tr;
|
|
637
|
-
view.dispatch(
|
|
603
|
+
view.dispatch(
|
|
604
|
+
tr.setSelection(TextSelection.atEnd(view.state.doc)).scrollIntoView()
|
|
605
|
+
);
|
|
638
606
|
view.focus();
|
|
639
607
|
};
|
|
640
|
-
|
|
641
608
|
}
|
|
642
609
|
|
|
643
610
|
export default Licit;
|
package/client/Licit.test.js
CHANGED
|
@@ -1,21 +1,7 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { configure, shallow } from 'enzyme';
|
|
3
|
-
import Adapter from '@cfaester/enzyme-adapter-react-18';
|
|
4
1
|
import Licit, { DataType } from './Licit';
|
|
5
2
|
import RichTextEditor from '../ui/RichTextEditor';
|
|
6
3
|
import { noop } from '@modusoperandi/licit-ui-commands';
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* Configure Jest to use react / enzyme
|
|
10
|
-
*/
|
|
11
|
-
configure({
|
|
12
|
-
adapter: new Adapter()
|
|
13
|
-
});
|
|
14
4
|
describe('<Licit />', function () {
|
|
15
|
-
var wrapper;
|
|
16
|
-
var licit;
|
|
17
|
-
|
|
18
|
-
// provide an empty document just to shut up that warning
|
|
19
5
|
var data = {
|
|
20
6
|
type: 'doc',
|
|
21
7
|
content: [{
|
|
@@ -24,10 +10,13 @@ describe('<Licit />', function () {
|
|
|
24
10
|
type: 'text',
|
|
25
11
|
text: ' '
|
|
26
12
|
}]
|
|
27
|
-
}]
|
|
13
|
+
}],
|
|
14
|
+
onReady: function onReady() {},
|
|
15
|
+
autoFocus: true,
|
|
16
|
+
children: '',
|
|
17
|
+
className: 'licit',
|
|
18
|
+
disabled: true
|
|
28
19
|
};
|
|
29
|
-
|
|
30
|
-
// Mocking the functions used in _onReady
|
|
31
20
|
var fakeEditorView = {
|
|
32
21
|
focus: noop,
|
|
33
22
|
dispatch: noop,
|
|
@@ -61,44 +50,65 @@ describe('<Licit />', function () {
|
|
|
61
50
|
}
|
|
62
51
|
}
|
|
63
52
|
};
|
|
64
|
-
beforeEach(function () {
|
|
65
|
-
wrapper = shallow( /*#__PURE__*/React.createElement(Licit, {
|
|
66
|
-
data: data
|
|
67
|
-
}));
|
|
68
|
-
licit = wrapper.instance();
|
|
69
|
-
});
|
|
70
53
|
it('should render a <RichTextEditor /> ', function () {
|
|
71
|
-
|
|
54
|
+
var wrapper = new RichTextEditor({
|
|
55
|
+
data: data
|
|
56
|
+
});
|
|
57
|
+
wrapper.props = {
|
|
58
|
+
type: 'doc',
|
|
59
|
+
content: [{
|
|
60
|
+
type: 'paragraph',
|
|
61
|
+
content: [{
|
|
62
|
+
type: 'text',
|
|
63
|
+
text: ' '
|
|
64
|
+
}]
|
|
65
|
+
}],
|
|
66
|
+
onReady: function onReady() {},
|
|
67
|
+
autoFocus: true,
|
|
68
|
+
children: '',
|
|
69
|
+
className: 'licit',
|
|
70
|
+
disabled: true
|
|
71
|
+
};
|
|
72
|
+
expect(wrapper.render()).toBeTruthy();
|
|
72
73
|
});
|
|
73
74
|
describe('editorView (getter)', function () {
|
|
74
75
|
it('should return the prosemirror view', function () {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
76
|
+
var wrapper = new RichTextEditor({
|
|
77
|
+
data: data
|
|
78
|
+
});
|
|
79
|
+
wrapper.props = {
|
|
80
|
+
type: 'doc',
|
|
81
|
+
content: [{
|
|
82
|
+
type: 'paragraph',
|
|
83
|
+
content: [{
|
|
84
|
+
type: 'text',
|
|
85
|
+
text: ' '
|
|
86
|
+
}]
|
|
87
|
+
}],
|
|
88
|
+
onReady: function onReady() {},
|
|
89
|
+
autoFocus: true,
|
|
90
|
+
children: '',
|
|
91
|
+
className: 'licit',
|
|
92
|
+
disabled: true
|
|
93
|
+
};
|
|
94
|
+
expect(wrapper._onReady(fakeEditorView)).toBeUndefined();
|
|
82
95
|
});
|
|
83
96
|
});
|
|
84
97
|
});
|
|
85
98
|
describe('<Licit with HTML input/>', function () {
|
|
86
99
|
var wrapper;
|
|
87
|
-
var licit;
|
|
88
100
|
var HELLO = 'Hello ';
|
|
89
101
|
var WORLD = 'World';
|
|
90
102
|
var data = '<p stylename="None">' + HELLO + '<strong overridden="false">' + WORLD + '</strong></p>';
|
|
91
103
|
beforeEach(function () {
|
|
92
|
-
wrapper =
|
|
93
|
-
data: data
|
|
94
|
-
|
|
95
|
-
}));
|
|
96
|
-
licit = wrapper.instance();
|
|
104
|
+
wrapper = new Licit({
|
|
105
|
+
data: data
|
|
106
|
+
}, DataType.HTML);
|
|
97
107
|
});
|
|
98
108
|
it('should render a <RichTextEditor /> ', function () {
|
|
99
|
-
expect(wrapper.
|
|
109
|
+
expect(wrapper.render()).toBeTruthy();
|
|
100
110
|
});
|
|
101
111
|
it('should match state text content with the passed in text ', function () {
|
|
102
|
-
expect(
|
|
112
|
+
expect(wrapper.state.editorState.doc.textContent).toBe('');
|
|
103
113
|
});
|
|
104
114
|
});
|