@modusoperandi/licit 1.0.4 → 1.0.5
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 +7 -8
- package/BlockquoteInsertNewLineCommand.js.flow +77 -77
- package/BlockquoteNodeSpec.js +1 -1
- package/BlockquoteNodeSpec.js.flow +30 -30
- package/BlockquoteToggleCommand.js +8 -9
- package/BlockquoteToggleCommand.js.flow +56 -56
- package/BookmarkNodeSpec.js +1 -1
- package/BookmarkNodeSpec.js.flow +39 -39
- package/BulletListNodeSpec.js.flow +61 -61
- package/CZIProseMirror.js.flow +90 -90
- package/CodeBlockCommand.js +8 -9
- package/CodeBlockCommand.js.flow +65 -65
- package/CodeBlockNodeSpec.js.flow +24 -24
- package/CodeMarkSpec.js.flow +14 -14
- package/ContentPlaceholderPlugin.js +3 -4
- package/ContentPlaceholderPlugin.js.flow +187 -187
- package/CursorPlaceholderPlugin.js +4 -4
- package/CursorPlaceholderPlugin.js.flow +115 -115
- package/DocLayoutCommand.js +9 -10
- package/DocLayoutCommand.js.flow +99 -99
- package/DocNodeSpec.js.flow +64 -64
- package/EMMarkSpec.js.flow +14 -14
- package/EditorCommands.js.flow +126 -126
- package/EditorKeyMap.js.flow +187 -187
- package/EditorMarks.js +1 -1
- package/EditorMarks.js.flow +71 -71
- package/EditorNodes.js +1 -1
- package/EditorNodes.js.flow +59 -59
- package/EditorPageLayoutPlugin.js +2 -2
- 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.flow +80 -80
- package/HTMLMutator.js +2 -3
- package/HTMLMutator.js.flow +59 -59
- package/HardBreakNodeSpec.js.flow +15 -15
- package/HeadingNodeSpec.js +1 -1
- package/HeadingNodeSpec.js.flow +52 -52
- package/HistoryRedoCommand.js +7 -8
- package/HistoryRedoCommand.js.flow +41 -41
- package/HistoryUndoCommand.js +7 -8
- package/HistoryUndoCommand.js.flow +41 -41
- package/HorizontalRuleCommand.js +7 -8
- package/HorizontalRuleCommand.js.flow +71 -71
- package/HorizontalRuleNodeSpec.js.flow +39 -39
- package/ImageUploadPlaceholderPlugin.js +2 -2
- package/ImageUploadPlaceholderPlugin.js.flow +192 -192
- package/LinkMarkSpec.js.flow +32 -32
- package/LinkSetURLCommand.js +8 -9
- package/LinkSetURLCommand.js.flow +117 -117
- package/LinkTooltipPlugin.js +3 -4
- package/LinkTooltipPlugin.js.flow +190 -190
- package/ListItemInsertNewLineCommand.js +7 -8
- package/ListItemInsertNewLineCommand.js.flow +77 -77
- package/ListItemMergeCommand.js +9 -10
- package/ListItemMergeCommand.js.flow +199 -199
- package/ListItemNodeSpec.js.flow +52 -52
- package/ListSplitCommand.js +7 -8
- package/ListSplitCommand.js.flow +54 -54
- package/ListToggleCommand.js +11 -12
- package/ListToggleCommand.js.flow +99 -99
- package/MarkNames.js.flow +18 -18
- package/MarksClearCommand.js +9 -10
- package/MarksClearCommand.js.flow +65 -65
- package/MathEditCommand.js +8 -9
- package/MathEditCommand.js.flow +120 -120
- package/MathNodeSpec.js.flow +46 -46
- package/NodeNames.js.flow +23 -23
- package/OrderedListNodeSpec.js +1 -1
- package/OrderedListNodeSpec.js.flow +132 -132
- package/ParagraphNodeSpec.js.flow +156 -156
- package/ParagraphSpacingCommand.js +9 -10
- package/ParagraphSpacingCommand.js.flow +144 -144
- package/PrintCommand.js +9 -10
- package/PrintCommand.js.flow +53 -53
- package/SelectionPlaceholderPlugin.js +4 -4
- package/SelectionPlaceholderPlugin.js.flow +131 -131
- package/SpacerMarkSpec.js +1 -1
- package/SpacerMarkSpec.js.flow +47 -47
- package/StrikeMarkSpec.js.flow +21 -21
- package/StrongMarkSpec.js.flow +25 -25
- package/StyleView.js +2 -3
- package/StyleView.js.flow +19 -19
- package/TableBackgroundColorCommand.js +25 -12
- package/TableBackgroundColorCommand.js.flow +83 -75
- package/TableBorderColorCommand.js +25 -12
- package/TableBorderColorCommand.js.flow +86 -75
- package/TableCellColorCommand.js +11 -11
- package/TableCellColorCommand.js.flow +75 -75
- package/TableCellMenuPlugin.js +3 -4
- package/TableCellMenuPlugin.js.flow +132 -132
- package/TableInsertCommand.js +9 -10
- package/TableInsertCommand.js.flow +120 -120
- package/TableMergeCellsCommand.js +7 -8
- package/TableMergeCellsCommand.js.flow +112 -112
- package/TableNodesSpecs.js.flow +78 -78
- package/TablePlugins.js.flow +14 -14
- package/TableResizePlugin.js +3 -4
- package/TableResizePlugin.js.flow +631 -631
- package/TextColorMarkSpec.js.flow +35 -35
- package/TextHighlightMarkSpec.js.flow +38 -38
- package/TextInsertTabSpaceCommand.js +7 -8
- 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 +5 -0
- package/Types.js.flow +80 -75
- package/WebFontLoader.js +2 -3
- package/WebFontLoader.js.flow +22 -22
- package/blockQuoteInputRule.js.flow +36 -36
- package/bom.xml +21569 -23179
- package/browser.js.flow +7 -7
- package/buildEditorPlugins.js +2 -3
- package/buildEditorPlugins.js.flow +49 -49
- package/buildInputRules.js.flow +81 -81
- package/client/CollabConnector.js +12 -12
- package/client/CollabConnector.js.flow +90 -90
- package/client/EditorConnection.js +2 -3
- package/client/EditorConnection.js.flow +323 -323
- package/client/Licit.js +59 -60
- package/client/Licit.js.flow +643 -643
- package/client/Licit.test.js +2 -2
- package/client/Licit.test.js.flow +98 -98
- package/client/Reporter.js +2 -3
- package/client/Reporter.js.flow +37 -37
- package/client/SimpleConnector.js +1 -1
- package/client/SimpleConnector.js.flow +61 -61
- package/client/http.js.flow +70 -70
- package/client/licit.css +12 -12
- package/client/throttle.js.flow +27 -27
- package/convertFromDOMElement.js.flow +36 -36
- package/convertFromHTML.js.flow +17 -17
- package/convertFromJSON.js.flow +56 -56
- package/convertToCSSPTValue.js.flow +22 -22
- package/convertToJSON.js.flow +7 -7
- package/createCommand.js +8 -9
- package/createCommand.js.flow +62 -62
- package/createEditorKeyMap.js +1 -1
- package/createEditorKeyMap.js.flow +94 -94
- package/createEmptyEditorState.js.flow +31 -31
- package/createTableResizingPlugin.js.flow +86 -86
- package/findActionableCell.js.flow +74 -74
- 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.flow +56 -56
- package/isEditorStateEmpty.js.flow +32 -32
- package/isTableNode.js.flow +15 -15
- package/joinDown.js.flow +27 -27
- package/joinListNode.js.flow +55 -55
- package/joinUp.js.flow +39 -39
- package/keymaps.js.flow +185 -185
- package/lookUpElement.js.flow +14 -14
- package/nodeAt.js.flow +12 -12
- package/normalizeHTML.js.flow +78 -78
- package/package.json +156 -155
- package/patchAnchorElements.js.flow +38 -38
- package/patchBreakElements.js.flow +22 -22
- package/patchElementInlineStyles.js.flow +92 -92
- package/patchListElements.js.flow +276 -276
- package/patchMathElements.js.flow +60 -60
- package/patchParagraphElements.js.flow +20 -20
- package/patchStyleElements.js.flow +196 -196
- package/patchTableElements.js.flow +89 -89
- package/rebaseDocWithSteps.js.flow +42 -42
- package/sanitizeURL.js.flow +13 -13
- package/splitListItem.js +1 -1
- 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.flow +108 -108
- package/toggleCodeBlock.js.flow +102 -102
- package/ui/AlertInfo.js +7 -8
- package/ui/AlertInfo.js.flow +64 -64
- package/ui/BookmarkNodeView.js +8 -10
- package/ui/BookmarkNodeView.js.flow +66 -66
- package/ui/CommandButton.js +7 -8
- package/ui/CommandButton.js.flow +68 -68
- package/ui/CommandMenu.js +8 -9
- package/ui/CommandMenu.js.flow +75 -75
- package/ui/CommandMenuButton.js +13 -14
- package/ui/CommandMenuButton.js.flow +131 -131
- package/ui/CustomEditorView.js +8 -9
- package/ui/CustomEditorView.js.flow +28 -28
- package/ui/CustomMenu.js +3 -4
- package/ui/CustomMenu.js.flow +17 -17
- package/ui/CustomMenuItem.js +6 -8
- package/ui/CustomMenuItem.js.flow +36 -36
- package/ui/CustomNodeView.js +2 -3
- package/ui/CustomNodeView.js.flow +200 -200
- package/ui/CustomRadioButton.js +6 -7
- package/ui/CustomRadioButton.js.flow +65 -65
- package/ui/DocLayoutEditor.js +9 -10
- package/ui/DocLayoutEditor.js.flow +146 -146
- package/ui/Editor.js +15 -16
- package/ui/Editor.js.flow +288 -288
- package/ui/EditorFrameset.js +5 -6
- package/ui/EditorFrameset.js.flow +81 -81
- package/ui/EditorToolbar.js +13 -14
- package/ui/EditorToolbar.js.flow +218 -218
- package/ui/EditorToolbarConfig.js.flow +164 -164
- package/ui/FontSizeCommandMenuButton.js +5 -6
- package/ui/FontSizeCommandMenuButton.js.flow +66 -66
- package/ui/FontTypeCommandMenuButton.js +5 -6
- package/ui/FontTypeCommandMenuButton.js.flow +61 -61
- package/ui/Frag.js +3 -4
- package/ui/Frag.js.flow +13 -13
- package/ui/Icon.js +9 -12
- package/ui/Icon.js.flow +89 -89
- package/ui/ImageInlineEditor.js +6 -7
- package/ui/ImageInlineEditor.js.flow +67 -67
- package/ui/KeyCodes.js.flow +12 -12
- package/ui/LinkTooltip.js +9 -10
- package/ui/LinkTooltip.js.flow +85 -85
- package/ui/LinkURLEditor.js +9 -10
- package/ui/LinkURLEditor.js.flow +117 -117
- package/ui/ListItemNodeView.js +2 -3
- package/ui/ListItemNodeView.js.flow +98 -98
- package/ui/ListTypeButton.js +13 -14
- package/ui/ListTypeButton.js.flow +131 -131
- package/ui/ListTypeCommandButton.js +5 -6
- package/ui/ListTypeCommandButton.js.flow +85 -85
- package/ui/ListTypeMenu.js +11 -12
- package/ui/ListTypeMenu.js.flow +70 -70
- package/ui/LoadingIndicator.js +3 -4
- package/ui/LoadingIndicator.js.flow +20 -20
- package/ui/MathEditor.js +10 -11
- package/ui/MathEditor.js.flow +78 -78
- package/ui/MathInlineEditor.js +8 -9
- package/ui/MathInlineEditor.js.flow +102 -102
- package/ui/MathNodeView.js +14 -16
- package/ui/MathNodeView.js.flow +186 -186
- package/ui/PasteMenu.js +10 -11
- package/ui/PasteMenu.js.flow +57 -57
- package/ui/ResizeObserver.js.flow +106 -106
- package/ui/RichTextEditor.js +9 -10
- package/ui/RichTextEditor.js.flow +133 -133
- package/ui/SelectionObserver.js +2 -3
- package/ui/SelectionObserver.js.flow +134 -134
- package/ui/TableCellMenu.js +6 -7
- package/ui/TableCellMenu.js.flow +51 -51
- package/ui/TableGridSizeEditor.js +19 -21
- package/ui/TableGridSizeEditor.js.flow +184 -184
- package/ui/TableNodeView.js +3 -4
- package/ui/TableNodeView.js.flow +25 -25
- package/ui/bindScrollHandler.js.flow +46 -46
- package/ui/canUseCSSFont.js.flow +43 -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 +220 -220
- package/ui/czi-form.css +107 -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 +125 -125
- package/ui/czi-indent.css +137 -137
- package/ui/czi-inline-editor.css +20 -20
- package/ui/czi-link-tooltip.css +71 -71
- package/ui/czi-list.css +410 -410
- package/ui/czi-loading-indicator.css +111 -111
- package/ui/czi-math-view.css +62 -62
- package/ui/czi-selection-placeholder.css +24 -24
- package/ui/czi-table-cell-menu.css +14 -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.flow +58 -58
- package/ui/findActiveFontType.js.flow +38 -38
- package/ui/fonts.css +460 -460
- package/ui/handleEditorDrop.js.flow +28 -28
- package/ui/handleEditorKeyDown.js.flow +39 -39
- 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.flow +42 -42
- package/ui/isElementFullyVisible.js.flow +26 -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 +15 -17
- package/ui/mathquill-editor/MathQuillEditor.js.flow +159 -159
- package/ui/mathquill-editor/MathQuillEditorSymbols.js.flow +483 -483
- package/ui/mathquill-editor/MathQuillEditorSymbolsPanel.js +6 -7
- 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.flow +24 -24
- package/ui/renderLaTeXAsHTML.js +1 -1
- package/ui/renderLaTeXAsHTML.js.flow +46 -46
- package/ui/resolveImage.js +1 -1
- package/ui/resolveImage.js.flow +123 -123
- package/ui/toCSSColor.js.flow +51 -51
- package/ui/toCSSLineSpacing.js.flow +55 -55
- package/ui/toHexColor.js.flow +26 -26
- package/ui/uuid.js.flow +9 -9
- package/uuid.js.flow +9 -9
|
@@ -1,61 +1,61 @@
|
|
|
1
|
-
// @flow
|
|
2
|
-
|
|
3
|
-
import { Node } from 'prosemirror-model';
|
|
4
|
-
|
|
5
|
-
import { ATTRIBUTE_LIST_STYLE_TYPE } from './ListItemNodeSpec.js';
|
|
6
|
-
import { LIST_ITEM } from './NodeNames.js';
|
|
7
|
-
import { ATTRIBUTE_INDENT, MIN_INDENT_LEVEL } from './ParagraphNodeSpec.js';
|
|
8
|
-
|
|
9
|
-
import type { NodeSpec } from './Types.js';
|
|
10
|
-
|
|
11
|
-
const AUTO_LIST_STYLE_TYPES = ['disc', 'square', 'circle'];
|
|
12
|
-
|
|
13
|
-
const BulletListNodeSpec: NodeSpec = {
|
|
14
|
-
attrs: {
|
|
15
|
-
id: { default: null },
|
|
16
|
-
indent: { default: 0 },
|
|
17
|
-
listStyleType: { default: null },
|
|
18
|
-
},
|
|
19
|
-
group: 'block',
|
|
20
|
-
content: LIST_ITEM + '+',
|
|
21
|
-
parseDOM: [
|
|
22
|
-
{
|
|
23
|
-
tag: 'ul',
|
|
24
|
-
getAttrs(dom: HTMLElement) {
|
|
25
|
-
const listStyleType =
|
|
26
|
-
dom.getAttribute(ATTRIBUTE_LIST_STYLE_TYPE) || null;
|
|
27
|
-
|
|
28
|
-
const indent = dom.hasAttribute(ATTRIBUTE_INDENT)
|
|
29
|
-
? parseInt(dom.getAttribute(ATTRIBUTE_INDENT), 10)
|
|
30
|
-
: MIN_INDENT_LEVEL;
|
|
31
|
-
return {
|
|
32
|
-
indent,
|
|
33
|
-
listStyleType,
|
|
34
|
-
};
|
|
35
|
-
},
|
|
36
|
-
},
|
|
37
|
-
],
|
|
38
|
-
|
|
39
|
-
toDOM(node: Node) {
|
|
40
|
-
const { indent, listStyleType } = node.attrs;
|
|
41
|
-
const attrs = {};
|
|
42
|
-
// [FS] IRAD-947 2020-05-26
|
|
43
|
-
// Bullet list type changing fix
|
|
44
|
-
attrs[ATTRIBUTE_INDENT] = indent;
|
|
45
|
-
if (listStyleType) {
|
|
46
|
-
attrs[ATTRIBUTE_LIST_STYLE_TYPE] = listStyleType;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
let htmlListStyleType = listStyleType;
|
|
50
|
-
|
|
51
|
-
if (!htmlListStyleType || htmlListStyleType === 'disc') {
|
|
52
|
-
htmlListStyleType =
|
|
53
|
-
AUTO_LIST_STYLE_TYPES[indent % AUTO_LIST_STYLE_TYPES.length];
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
attrs.type = htmlListStyleType;
|
|
57
|
-
return ['ul', attrs, 0];
|
|
58
|
-
},
|
|
59
|
-
};
|
|
60
|
-
|
|
61
|
-
export default BulletListNodeSpec;
|
|
1
|
+
// @flow
|
|
2
|
+
|
|
3
|
+
import { Node } from 'prosemirror-model';
|
|
4
|
+
|
|
5
|
+
import { ATTRIBUTE_LIST_STYLE_TYPE } from './ListItemNodeSpec.js';
|
|
6
|
+
import { LIST_ITEM } from './NodeNames.js';
|
|
7
|
+
import { ATTRIBUTE_INDENT, MIN_INDENT_LEVEL } from './ParagraphNodeSpec.js';
|
|
8
|
+
|
|
9
|
+
import type { NodeSpec } from './Types.js';
|
|
10
|
+
|
|
11
|
+
const AUTO_LIST_STYLE_TYPES = ['disc', 'square', 'circle'];
|
|
12
|
+
|
|
13
|
+
const BulletListNodeSpec: NodeSpec = {
|
|
14
|
+
attrs: {
|
|
15
|
+
id: { default: null },
|
|
16
|
+
indent: { default: 0 },
|
|
17
|
+
listStyleType: { default: null },
|
|
18
|
+
},
|
|
19
|
+
group: 'block',
|
|
20
|
+
content: LIST_ITEM + '+',
|
|
21
|
+
parseDOM: [
|
|
22
|
+
{
|
|
23
|
+
tag: 'ul',
|
|
24
|
+
getAttrs(dom: HTMLElement) {
|
|
25
|
+
const listStyleType =
|
|
26
|
+
dom.getAttribute(ATTRIBUTE_LIST_STYLE_TYPE) || null;
|
|
27
|
+
|
|
28
|
+
const indent = dom.hasAttribute(ATTRIBUTE_INDENT)
|
|
29
|
+
? parseInt(dom.getAttribute(ATTRIBUTE_INDENT), 10)
|
|
30
|
+
: MIN_INDENT_LEVEL;
|
|
31
|
+
return {
|
|
32
|
+
indent,
|
|
33
|
+
listStyleType,
|
|
34
|
+
};
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
],
|
|
38
|
+
|
|
39
|
+
toDOM(node: Node) {
|
|
40
|
+
const { indent, listStyleType } = node.attrs;
|
|
41
|
+
const attrs = {};
|
|
42
|
+
// [FS] IRAD-947 2020-05-26
|
|
43
|
+
// Bullet list type changing fix
|
|
44
|
+
attrs[ATTRIBUTE_INDENT] = indent;
|
|
45
|
+
if (listStyleType) {
|
|
46
|
+
attrs[ATTRIBUTE_LIST_STYLE_TYPE] = listStyleType;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
let htmlListStyleType = listStyleType;
|
|
50
|
+
|
|
51
|
+
if (!htmlListStyleType || htmlListStyleType === 'disc') {
|
|
52
|
+
htmlListStyleType =
|
|
53
|
+
AUTO_LIST_STYLE_TYPES[indent % AUTO_LIST_STYLE_TYPES.length];
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
attrs.type = htmlListStyleType;
|
|
57
|
+
return ['ul', attrs, 0];
|
|
58
|
+
},
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
export default BulletListNodeSpec;
|
package/CZIProseMirror.js.flow
CHANGED
|
@@ -1,90 +1,90 @@
|
|
|
1
|
-
// @flow
|
|
2
|
-
|
|
3
|
-
import { EditorView } from 'prosemirror-view';
|
|
4
|
-
|
|
5
|
-
import convertToJSON from './convertToJSON.js';
|
|
6
|
-
import CustomEditorView from './ui/CustomEditorView.js';
|
|
7
|
-
import { UICommand } from '@modusoperandi/licit-doc-attrs-step';
|
|
8
|
-
|
|
9
|
-
const commandsRegistery = new Map();
|
|
10
|
-
const viewsRegistery = new Map();
|
|
11
|
-
|
|
12
|
-
// This file exports methods to help developer to debug editor from web
|
|
13
|
-
// inspector. To use this, add the following lines to export the utility.
|
|
14
|
-
//
|
|
15
|
-
// import * as CZIProseMirror from 'czi-prosemirror/dist/CZIProseMirror';
|
|
16
|
-
// window.CZIProseMirror = CZIProseMirror;
|
|
17
|
-
|
|
18
|
-
export function registeryKeys(): Array<string> {
|
|
19
|
-
return Array.from(viewsRegistery.keys());
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
export function exportJSON(id: ?string): Object {
|
|
23
|
-
if (!id && viewsRegistery.size) {
|
|
24
|
-
id = registeryKeys()[0];
|
|
25
|
-
console.log(`use default editor id "${id}"`);
|
|
26
|
-
}
|
|
27
|
-
const view = viewsRegistery.get(String(id));
|
|
28
|
-
if (!view) {
|
|
29
|
-
if (!id) {
|
|
30
|
-
id = '';
|
|
31
|
-
}
|
|
32
|
-
throw new Error(`view ${id} does not exist`);
|
|
33
|
-
}
|
|
34
|
-
return convertToJSON(view.state);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
export function registerEditorView(id: string, view: EditorView): void {
|
|
38
|
-
if (viewsRegistery.has(id)) {
|
|
39
|
-
throw new Error(`view ${id} already registered`);
|
|
40
|
-
}
|
|
41
|
-
if (!(view instanceof CustomEditorView)) {
|
|
42
|
-
throw new Error(`invalid view ${id}`);
|
|
43
|
-
}
|
|
44
|
-
if (!id) {
|
|
45
|
-
throw new Error('id is required');
|
|
46
|
-
}
|
|
47
|
-
viewsRegistery.set(id, view);
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
export function releaseEditorView(id: string): void {
|
|
51
|
-
if (!viewsRegistery.has(id)) {
|
|
52
|
-
throw new Error(`view ${id} was released`);
|
|
53
|
-
}
|
|
54
|
-
viewsRegistery.delete(id);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
export function findEditorView(id: string): ?EditorView {
|
|
58
|
-
return viewsRegistery.get(id) || null;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
export function executeCommand(name: string, viewID: ?string): boolean {
|
|
62
|
-
const command = commandsRegistery.get(name);
|
|
63
|
-
if (command) {
|
|
64
|
-
const view = viewID
|
|
65
|
-
? viewsRegistery.get(viewID)
|
|
66
|
-
: Array.from(viewsRegistery.values())[0];
|
|
67
|
-
if (view) {
|
|
68
|
-
try {
|
|
69
|
-
return command.execute(view.state, view.dispatch, view, null);
|
|
70
|
-
} catch (ex) {
|
|
71
|
-
console.warn(ex);
|
|
72
|
-
return false;
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
return false;
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
export function registerCommand(name: string, command: UICommand): void {
|
|
80
|
-
if (!(command instanceof UICommand)) {
|
|
81
|
-
throw new Error(`invalid command ${name}`);
|
|
82
|
-
}
|
|
83
|
-
if (!name) {
|
|
84
|
-
throw new Error('invalid command name');
|
|
85
|
-
}
|
|
86
|
-
if (commandsRegistery.has(name)) {
|
|
87
|
-
throw new Error(`command ${name} already registered`);
|
|
88
|
-
}
|
|
89
|
-
commandsRegistery.set(name, command);
|
|
90
|
-
}
|
|
1
|
+
// @flow
|
|
2
|
+
|
|
3
|
+
import { EditorView } from 'prosemirror-view';
|
|
4
|
+
|
|
5
|
+
import convertToJSON from './convertToJSON.js';
|
|
6
|
+
import CustomEditorView from './ui/CustomEditorView.js';
|
|
7
|
+
import { UICommand } from '@modusoperandi/licit-doc-attrs-step';
|
|
8
|
+
|
|
9
|
+
const commandsRegistery = new Map();
|
|
10
|
+
const viewsRegistery = new Map();
|
|
11
|
+
|
|
12
|
+
// This file exports methods to help developer to debug editor from web
|
|
13
|
+
// inspector. To use this, add the following lines to export the utility.
|
|
14
|
+
//
|
|
15
|
+
// import * as CZIProseMirror from 'czi-prosemirror/dist/CZIProseMirror';
|
|
16
|
+
// window.CZIProseMirror = CZIProseMirror;
|
|
17
|
+
|
|
18
|
+
export function registeryKeys(): Array<string> {
|
|
19
|
+
return Array.from(viewsRegistery.keys());
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export function exportJSON(id: ?string): Object {
|
|
23
|
+
if (!id && viewsRegistery.size) {
|
|
24
|
+
id = registeryKeys()[0];
|
|
25
|
+
console.log(`use default editor id "${id}"`);
|
|
26
|
+
}
|
|
27
|
+
const view = viewsRegistery.get(String(id));
|
|
28
|
+
if (!view) {
|
|
29
|
+
if (!id) {
|
|
30
|
+
id = '';
|
|
31
|
+
}
|
|
32
|
+
throw new Error(`view ${id} does not exist`);
|
|
33
|
+
}
|
|
34
|
+
return convertToJSON(view.state);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export function registerEditorView(id: string, view: EditorView): void {
|
|
38
|
+
if (viewsRegistery.has(id)) {
|
|
39
|
+
throw new Error(`view ${id} already registered`);
|
|
40
|
+
}
|
|
41
|
+
if (!(view instanceof CustomEditorView)) {
|
|
42
|
+
throw new Error(`invalid view ${id}`);
|
|
43
|
+
}
|
|
44
|
+
if (!id) {
|
|
45
|
+
throw new Error('id is required');
|
|
46
|
+
}
|
|
47
|
+
viewsRegistery.set(id, view);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export function releaseEditorView(id: string): void {
|
|
51
|
+
if (!viewsRegistery.has(id)) {
|
|
52
|
+
throw new Error(`view ${id} was released`);
|
|
53
|
+
}
|
|
54
|
+
viewsRegistery.delete(id);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export function findEditorView(id: string): ?EditorView {
|
|
58
|
+
return viewsRegistery.get(id) || null;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
export function executeCommand(name: string, viewID: ?string): boolean {
|
|
62
|
+
const command = commandsRegistery.get(name);
|
|
63
|
+
if (command) {
|
|
64
|
+
const view = viewID
|
|
65
|
+
? viewsRegistery.get(viewID)
|
|
66
|
+
: Array.from(viewsRegistery.values())[0];
|
|
67
|
+
if (view) {
|
|
68
|
+
try {
|
|
69
|
+
return command.execute(view.state, view.dispatch, view, null);
|
|
70
|
+
} catch (ex) {
|
|
71
|
+
console.warn(ex);
|
|
72
|
+
return false;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
return false;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
export function registerCommand(name: string, command: UICommand): void {
|
|
80
|
+
if (!(command instanceof UICommand)) {
|
|
81
|
+
throw new Error(`invalid command ${name}`);
|
|
82
|
+
}
|
|
83
|
+
if (!name) {
|
|
84
|
+
throw new Error('invalid command name');
|
|
85
|
+
}
|
|
86
|
+
if (commandsRegistery.has(name)) {
|
|
87
|
+
throw new Error(`command ${name} already registered`);
|
|
88
|
+
}
|
|
89
|
+
commandsRegistery.set(name, command);
|
|
90
|
+
}
|
package/CodeBlockCommand.js
CHANGED
|
@@ -4,13 +4,13 @@ function _defineProperties(target, props) { for (var i = 0; i < props.length; i+
|
|
|
4
4
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
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
6
|
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
|
7
|
+
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
7
8
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
8
9
|
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
9
|
-
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
10
10
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
11
11
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
12
12
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
13
|
-
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i :
|
|
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 } from 'prosemirror-state';
|
|
16
16
|
import { Transform } from 'prosemirror-transform';
|
|
@@ -22,7 +22,6 @@ import { noop } from '@modusoperandi/licit-ui-commands';
|
|
|
22
22
|
import toggleCodeBlock from './toggleCodeBlock';
|
|
23
23
|
import { UICommand } from '@modusoperandi/licit-doc-attrs-step';
|
|
24
24
|
var CodeBlockCommand = /*#__PURE__*/function (_UICommand) {
|
|
25
|
-
_inherits(CodeBlockCommand, _UICommand);
|
|
26
25
|
function CodeBlockCommand() {
|
|
27
26
|
var _this;
|
|
28
27
|
_classCallCheck(this, CodeBlockCommand);
|
|
@@ -30,11 +29,11 @@ var CodeBlockCommand = /*#__PURE__*/function (_UICommand) {
|
|
|
30
29
|
args[_key] = arguments[_key];
|
|
31
30
|
}
|
|
32
31
|
_this = _callSuper(this, CodeBlockCommand, [].concat(args));
|
|
33
|
-
_defineProperty(
|
|
32
|
+
_defineProperty(_this, "isActive", function (state) {
|
|
34
33
|
var result = _this._findCodeBlock(state);
|
|
35
34
|
return !!(result && result.node);
|
|
36
35
|
});
|
|
37
|
-
_defineProperty(
|
|
36
|
+
_defineProperty(_this, "execute", function (state, dispatch, view) {
|
|
38
37
|
var selection = state.selection,
|
|
39
38
|
schema = state.schema;
|
|
40
39
|
var tr = state.tr;
|
|
@@ -47,15 +46,16 @@ var CodeBlockCommand = /*#__PURE__*/function (_UICommand) {
|
|
|
47
46
|
return false;
|
|
48
47
|
}
|
|
49
48
|
});
|
|
50
|
-
_defineProperty(
|
|
49
|
+
_defineProperty(_this, "waitForUserInput", function (_state, _dispatch, _view, _event) {
|
|
51
50
|
return Promise.resolve(undefined);
|
|
52
51
|
});
|
|
53
|
-
_defineProperty(
|
|
52
|
+
_defineProperty(_this, "executeWithUserInput", function (_state, _dispatch, _view, _inputs) {
|
|
54
53
|
return false;
|
|
55
54
|
});
|
|
56
55
|
return _this;
|
|
57
56
|
}
|
|
58
|
-
|
|
57
|
+
_inherits(CodeBlockCommand, _UICommand);
|
|
58
|
+
return _createClass(CodeBlockCommand, [{
|
|
59
59
|
key: "_findCodeBlock",
|
|
60
60
|
value: function _findCodeBlock(state) {
|
|
61
61
|
var codeBlock = state.schema.nodes[CODE_BLOCK];
|
|
@@ -68,6 +68,5 @@ var CodeBlockCommand = /*#__PURE__*/function (_UICommand) {
|
|
|
68
68
|
return null;
|
|
69
69
|
}
|
|
70
70
|
}]);
|
|
71
|
-
return CodeBlockCommand;
|
|
72
71
|
}(UICommand);
|
|
73
72
|
export default CodeBlockCommand;
|
package/CodeBlockCommand.js.flow
CHANGED
|
@@ -1,65 +1,65 @@
|
|
|
1
|
-
// @flow
|
|
2
|
-
|
|
3
|
-
import { EditorState } from 'prosemirror-state';
|
|
4
|
-
import { Transform } from 'prosemirror-transform';
|
|
5
|
-
import { findParentNodeOfType } from 'prosemirror-utils';
|
|
6
|
-
import { EditorView } from 'prosemirror-view';
|
|
7
|
-
import * as React from 'react';
|
|
8
|
-
import { CODE_BLOCK } from './NodeNames';
|
|
9
|
-
import { noop } from '@modusoperandi/licit-ui-commands';
|
|
10
|
-
import toggleCodeBlock from './toggleCodeBlock';
|
|
11
|
-
import { UICommand } from '@modusoperandi/licit-doc-attrs-step';
|
|
12
|
-
|
|
13
|
-
class CodeBlockCommand extends UICommand {
|
|
14
|
-
isActive = (state: EditorState): boolean => {
|
|
15
|
-
const result = this._findCodeBlock(state);
|
|
16
|
-
return !!(result && result.node);
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
execute = (
|
|
20
|
-
state: EditorState,
|
|
21
|
-
dispatch: ?(tr: Transform) => void,
|
|
22
|
-
view: ?EditorView
|
|
23
|
-
): boolean => {
|
|
24
|
-
const { selection, schema } = state;
|
|
25
|
-
let { tr } = state;
|
|
26
|
-
tr = tr.setSelection(selection);
|
|
27
|
-
tr = toggleCodeBlock(tr, schema);
|
|
28
|
-
if (tr.docChanged) {
|
|
29
|
-
dispatch && dispatch(tr);
|
|
30
|
-
return true;
|
|
31
|
-
} else {
|
|
32
|
-
return false;
|
|
33
|
-
}
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
_findCodeBlock(state: EditorState): ?Object {
|
|
37
|
-
const codeBlock = state.schema.nodes[CODE_BLOCK];
|
|
38
|
-
const findCodeBlock = codeBlock ? findParentNodeOfType(codeBlock) : noop;
|
|
39
|
-
return findCodeBlock(state.selection);
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
waitForUserInput = (
|
|
43
|
-
_state: EditorState,
|
|
44
|
-
_dispatch: ?(tr: Transform) => void,
|
|
45
|
-
_view: ?EditorView,
|
|
46
|
-
_event: ?React.SyntheticEvent
|
|
47
|
-
): Promise<undefined> => {
|
|
48
|
-
return Promise.resolve(undefined);
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
executeWithUserInput = (
|
|
52
|
-
_state: EditorState,
|
|
53
|
-
_dispatch: ?(tr: Transform) => void,
|
|
54
|
-
_view: ?EditorView,
|
|
55
|
-
_inputs: ?string
|
|
56
|
-
): boolean => {
|
|
57
|
-
return false;
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
cancel(): void {
|
|
61
|
-
return null;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
export default CodeBlockCommand;
|
|
1
|
+
// @flow
|
|
2
|
+
|
|
3
|
+
import { EditorState } from 'prosemirror-state';
|
|
4
|
+
import { Transform } from 'prosemirror-transform';
|
|
5
|
+
import { findParentNodeOfType } from 'prosemirror-utils';
|
|
6
|
+
import { EditorView } from 'prosemirror-view';
|
|
7
|
+
import * as React from 'react';
|
|
8
|
+
import { CODE_BLOCK } from './NodeNames';
|
|
9
|
+
import { noop } from '@modusoperandi/licit-ui-commands';
|
|
10
|
+
import toggleCodeBlock from './toggleCodeBlock';
|
|
11
|
+
import { UICommand } from '@modusoperandi/licit-doc-attrs-step';
|
|
12
|
+
|
|
13
|
+
class CodeBlockCommand extends UICommand {
|
|
14
|
+
isActive = (state: EditorState): boolean => {
|
|
15
|
+
const result = this._findCodeBlock(state);
|
|
16
|
+
return !!(result && result.node);
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
execute = (
|
|
20
|
+
state: EditorState,
|
|
21
|
+
dispatch: ?(tr: Transform) => void,
|
|
22
|
+
view: ?EditorView
|
|
23
|
+
): boolean => {
|
|
24
|
+
const { selection, schema } = state;
|
|
25
|
+
let { tr } = state;
|
|
26
|
+
tr = tr.setSelection(selection);
|
|
27
|
+
tr = toggleCodeBlock(tr, schema);
|
|
28
|
+
if (tr.docChanged) {
|
|
29
|
+
dispatch && dispatch(tr);
|
|
30
|
+
return true;
|
|
31
|
+
} else {
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
_findCodeBlock(state: EditorState): ?Object {
|
|
37
|
+
const codeBlock = state.schema.nodes[CODE_BLOCK];
|
|
38
|
+
const findCodeBlock = codeBlock ? findParentNodeOfType(codeBlock) : noop;
|
|
39
|
+
return findCodeBlock(state.selection);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
waitForUserInput = (
|
|
43
|
+
_state: EditorState,
|
|
44
|
+
_dispatch: ?(tr: Transform) => void,
|
|
45
|
+
_view: ?EditorView,
|
|
46
|
+
_event: ?React.SyntheticEvent
|
|
47
|
+
): Promise<undefined> => {
|
|
48
|
+
return Promise.resolve(undefined);
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
executeWithUserInput = (
|
|
52
|
+
_state: EditorState,
|
|
53
|
+
_dispatch: ?(tr: Transform) => void,
|
|
54
|
+
_view: ?EditorView,
|
|
55
|
+
_inputs: ?string
|
|
56
|
+
): boolean => {
|
|
57
|
+
return false;
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
cancel(): void {
|
|
61
|
+
return null;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export default CodeBlockCommand;
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
// @flow
|
|
2
|
-
|
|
3
|
-
const PRE_DOM = ['pre', ['code', 0]];
|
|
4
|
-
|
|
5
|
-
// https://github.com/ProseMirror/prosemirror-schema-basic/blob/master/src/schema-basic.js
|
|
6
|
-
// :: NodeSpec A code listing. Disallows marks or non-text inline
|
|
7
|
-
// nodes by default. Represented as a `<pre>` element with a
|
|
8
|
-
// `<code>` element inside of it.
|
|
9
|
-
const CodeBlockNodeSpec = {
|
|
10
|
-
attrs: {
|
|
11
|
-
id: { default: null },
|
|
12
|
-
},
|
|
13
|
-
content: 'inline*',
|
|
14
|
-
group: 'block',
|
|
15
|
-
marks: '_',
|
|
16
|
-
code: true,
|
|
17
|
-
defining: true,
|
|
18
|
-
parseDOM: [{ tag: 'pre', preserveWhitespace: 'full' }],
|
|
19
|
-
toDOM() {
|
|
20
|
-
return PRE_DOM;
|
|
21
|
-
},
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
export default CodeBlockNodeSpec;
|
|
1
|
+
// @flow
|
|
2
|
+
|
|
3
|
+
const PRE_DOM = ['pre', ['code', 0]];
|
|
4
|
+
|
|
5
|
+
// https://github.com/ProseMirror/prosemirror-schema-basic/blob/master/src/schema-basic.js
|
|
6
|
+
// :: NodeSpec A code listing. Disallows marks or non-text inline
|
|
7
|
+
// nodes by default. Represented as a `<pre>` element with a
|
|
8
|
+
// `<code>` element inside of it.
|
|
9
|
+
const CodeBlockNodeSpec = {
|
|
10
|
+
attrs: {
|
|
11
|
+
id: { default: null },
|
|
12
|
+
},
|
|
13
|
+
content: 'inline*',
|
|
14
|
+
group: 'block',
|
|
15
|
+
marks: '_',
|
|
16
|
+
code: true,
|
|
17
|
+
defining: true,
|
|
18
|
+
parseDOM: [{ tag: 'pre', preserveWhitespace: 'full' }],
|
|
19
|
+
toDOM() {
|
|
20
|
+
return PRE_DOM;
|
|
21
|
+
},
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
export default CodeBlockNodeSpec;
|
package/CodeMarkSpec.js.flow
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
// @flow
|
|
2
|
-
|
|
3
|
-
import type { MarkSpec } from './Types.js';
|
|
4
|
-
|
|
5
|
-
const CODE_DOM = ['code', 0];
|
|
6
|
-
|
|
7
|
-
const CodeMarkSpec: MarkSpec = {
|
|
8
|
-
parseDOM: [{ tag: 'code' }],
|
|
9
|
-
toDOM() {
|
|
10
|
-
return CODE_DOM;
|
|
11
|
-
},
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
export default CodeMarkSpec;
|
|
1
|
+
// @flow
|
|
2
|
+
|
|
3
|
+
import type { MarkSpec } from './Types.js';
|
|
4
|
+
|
|
5
|
+
const CODE_DOM = ['code', 0];
|
|
6
|
+
|
|
7
|
+
const CodeMarkSpec: MarkSpec = {
|
|
8
|
+
parseDOM: [{ tag: 'code' }],
|
|
9
|
+
toDOM() {
|
|
10
|
+
return CODE_DOM;
|
|
11
|
+
},
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
export default CodeMarkSpec;
|
|
@@ -10,7 +10,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
|
|
|
10
10
|
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); } }
|
|
11
11
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
12
12
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
13
|
-
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i :
|
|
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 { Plugin, PluginKey } from 'prosemirror-state';
|
|
16
16
|
import { EditorView } from 'prosemirror-view';
|
|
@@ -59,7 +59,7 @@ var ContentPlaceholderView = /*#__PURE__*/function () {
|
|
|
59
59
|
// calls `this._checkFocus` which will set `_focused` accordingly.
|
|
60
60
|
this._checkFocus();
|
|
61
61
|
}
|
|
62
|
-
_createClass(ContentPlaceholderView, [{
|
|
62
|
+
return _createClass(ContentPlaceholderView, [{
|
|
63
63
|
key: "update",
|
|
64
64
|
value: function update(view) {
|
|
65
65
|
this._view = view;
|
|
@@ -166,10 +166,8 @@ var ContentPlaceholderView = /*#__PURE__*/function () {
|
|
|
166
166
|
}
|
|
167
167
|
}
|
|
168
168
|
}]);
|
|
169
|
-
return ContentPlaceholderView;
|
|
170
169
|
}();
|
|
171
170
|
var ContentPlaceholderPlugin = /*#__PURE__*/function (_Plugin) {
|
|
172
|
-
_inherits(ContentPlaceholderPlugin, _Plugin);
|
|
173
171
|
function ContentPlaceholderPlugin() {
|
|
174
172
|
_classCallCheck(this, ContentPlaceholderPlugin);
|
|
175
173
|
return _callSuper(this, ContentPlaceholderPlugin, [{
|
|
@@ -181,6 +179,7 @@ var ContentPlaceholderPlugin = /*#__PURE__*/function (_Plugin) {
|
|
|
181
179
|
}
|
|
182
180
|
}]);
|
|
183
181
|
}
|
|
182
|
+
_inherits(ContentPlaceholderPlugin, _Plugin);
|
|
184
183
|
return _createClass(ContentPlaceholderPlugin);
|
|
185
184
|
}(Plugin);
|
|
186
185
|
export default ContentPlaceholderPlugin;
|