@modusoperandi/licit 1.0.3 → 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 +6 -6
- package/TableResizePlugin.js.flow +631 -632
- 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 +8533 -8895
- 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,131 +1,131 @@
|
|
|
1
|
-
// @flow
|
|
2
|
-
// [FS] IRAD-1039 2020-09-23
|
|
3
|
-
// Command button to handle different type of list types
|
|
4
|
-
// Need to add Icons instead of label
|
|
5
|
-
|
|
6
|
-
import cx from 'classnames';
|
|
7
|
-
import { EditorState } from 'prosemirror-state';
|
|
8
|
-
import { Transform } from 'prosemirror-transform';
|
|
9
|
-
import { EditorView } from 'prosemirror-view';
|
|
10
|
-
import * as React from 'react';
|
|
11
|
-
import { CustomButton } from '@modusoperandi/licit-ui-commands';
|
|
12
|
-
import { UICommand } from '@modusoperandi/licit-doc-attrs-step';
|
|
13
|
-
import { createPopUp } from '@modusoperandi/licit-ui-commands';
|
|
14
|
-
import uuid from './uuid.js';
|
|
15
|
-
import ListTypeMenu from './ListTypeMenu.js';
|
|
16
|
-
import './czi-custom-menu-button.css';
|
|
17
|
-
|
|
18
|
-
class ListTypeButton extends React.PureComponent<any, any> {
|
|
19
|
-
props: {
|
|
20
|
-
className?: ?string,
|
|
21
|
-
commandGroups: Array<{ [string]: UICommand }>,
|
|
22
|
-
disabled?: ?boolean,
|
|
23
|
-
dispatch: (tr: Transform) => void,
|
|
24
|
-
editorState: EditorState,
|
|
25
|
-
editorView: ?EditorView,
|
|
26
|
-
icon?: string | React.Element<any> | null,
|
|
27
|
-
label?: string | React.Element<any> | null,
|
|
28
|
-
title?: ?string,
|
|
29
|
-
};
|
|
30
|
-
|
|
31
|
-
_menu = null;
|
|
32
|
-
_id = uuid();
|
|
33
|
-
|
|
34
|
-
state = {
|
|
35
|
-
expanded: false,
|
|
36
|
-
};
|
|
37
|
-
|
|
38
|
-
render(): React.Element<any> {
|
|
39
|
-
// editorState,
|
|
40
|
-
// editorView,
|
|
41
|
-
const {
|
|
42
|
-
className,
|
|
43
|
-
label,
|
|
44
|
-
commandGroups,
|
|
45
|
-
icon,
|
|
46
|
-
disabled,
|
|
47
|
-
title,
|
|
48
|
-
} = this.props;
|
|
49
|
-
const enabled =
|
|
50
|
-
!disabled &&
|
|
51
|
-
commandGroups.some((group, ii) => {
|
|
52
|
-
return Object.keys(group).some((label) => {
|
|
53
|
-
// const command = group[label];
|
|
54
|
-
let disabledVal = true;
|
|
55
|
-
try {
|
|
56
|
-
disabledVal = false;
|
|
57
|
-
// !editorView || !command.isEnabled(editorState, editorView);
|
|
58
|
-
} catch (ex) {
|
|
59
|
-
disabledVal = false;
|
|
60
|
-
}
|
|
61
|
-
return !disabledVal;
|
|
62
|
-
});
|
|
63
|
-
});
|
|
64
|
-
|
|
65
|
-
const { expanded } = this.state;
|
|
66
|
-
const buttonClassName = cx(className, {
|
|
67
|
-
'czi-custom-menu-button': true,
|
|
68
|
-
expanded,
|
|
69
|
-
});
|
|
70
|
-
|
|
71
|
-
return (
|
|
72
|
-
<CustomButton
|
|
73
|
-
className={buttonClassName}
|
|
74
|
-
disabled={!enabled}
|
|
75
|
-
icon={icon}
|
|
76
|
-
id={this._id}
|
|
77
|
-
label={label}
|
|
78
|
-
onClick={this._onClick}
|
|
79
|
-
title={title}
|
|
80
|
-
/>
|
|
81
|
-
);
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
componentWillUnmount(): void {
|
|
85
|
-
this._hideMenu();
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
_onClick = (): void => {
|
|
89
|
-
const expanded = !this.state.expanded;
|
|
90
|
-
this.setState({
|
|
91
|
-
expanded,
|
|
92
|
-
});
|
|
93
|
-
expanded ? this._showMenu() : this._hideMenu();
|
|
94
|
-
};
|
|
95
|
-
|
|
96
|
-
_hideMenu = (): void => {
|
|
97
|
-
const menu = this._menu;
|
|
98
|
-
this._menu = null;
|
|
99
|
-
menu && menu.close();
|
|
100
|
-
};
|
|
101
|
-
|
|
102
|
-
_showMenu = (): void => {
|
|
103
|
-
const menu = this._menu;
|
|
104
|
-
const menuProps = {
|
|
105
|
-
...this.props,
|
|
106
|
-
onCommand: this._onCommand,
|
|
107
|
-
};
|
|
108
|
-
if (menu) {
|
|
109
|
-
menu.update(menuProps);
|
|
110
|
-
} else {
|
|
111
|
-
this._menu = createPopUp(ListTypeMenu, menuProps, {
|
|
112
|
-
anchor: document.getElementById(this._id),
|
|
113
|
-
onClose: this._onClose,
|
|
114
|
-
});
|
|
115
|
-
}
|
|
116
|
-
};
|
|
117
|
-
|
|
118
|
-
_onCommand = (): void => {
|
|
119
|
-
this.setState({ expanded: false });
|
|
120
|
-
this._hideMenu();
|
|
121
|
-
};
|
|
122
|
-
|
|
123
|
-
_onClose = (): void => {
|
|
124
|
-
if (this._menu) {
|
|
125
|
-
this.setState({ expanded: false });
|
|
126
|
-
this._menu = null;
|
|
127
|
-
}
|
|
128
|
-
};
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
export default ListTypeButton;
|
|
1
|
+
// @flow
|
|
2
|
+
// [FS] IRAD-1039 2020-09-23
|
|
3
|
+
// Command button to handle different type of list types
|
|
4
|
+
// Need to add Icons instead of label
|
|
5
|
+
|
|
6
|
+
import cx from 'classnames';
|
|
7
|
+
import { EditorState } from 'prosemirror-state';
|
|
8
|
+
import { Transform } from 'prosemirror-transform';
|
|
9
|
+
import { EditorView } from 'prosemirror-view';
|
|
10
|
+
import * as React from 'react';
|
|
11
|
+
import { CustomButton } from '@modusoperandi/licit-ui-commands';
|
|
12
|
+
import { UICommand } from '@modusoperandi/licit-doc-attrs-step';
|
|
13
|
+
import { createPopUp } from '@modusoperandi/licit-ui-commands';
|
|
14
|
+
import uuid from './uuid.js';
|
|
15
|
+
import ListTypeMenu from './ListTypeMenu.js';
|
|
16
|
+
import './czi-custom-menu-button.css';
|
|
17
|
+
|
|
18
|
+
class ListTypeButton extends React.PureComponent<any, any> {
|
|
19
|
+
props: {
|
|
20
|
+
className?: ?string,
|
|
21
|
+
commandGroups: Array<{ [string]: UICommand }>,
|
|
22
|
+
disabled?: ?boolean,
|
|
23
|
+
dispatch: (tr: Transform) => void,
|
|
24
|
+
editorState: EditorState,
|
|
25
|
+
editorView: ?EditorView,
|
|
26
|
+
icon?: string | React.Element<any> | null,
|
|
27
|
+
label?: string | React.Element<any> | null,
|
|
28
|
+
title?: ?string,
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
_menu = null;
|
|
32
|
+
_id = uuid();
|
|
33
|
+
|
|
34
|
+
state = {
|
|
35
|
+
expanded: false,
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
render(): React.Element<any> {
|
|
39
|
+
// editorState,
|
|
40
|
+
// editorView,
|
|
41
|
+
const {
|
|
42
|
+
className,
|
|
43
|
+
label,
|
|
44
|
+
commandGroups,
|
|
45
|
+
icon,
|
|
46
|
+
disabled,
|
|
47
|
+
title,
|
|
48
|
+
} = this.props;
|
|
49
|
+
const enabled =
|
|
50
|
+
!disabled &&
|
|
51
|
+
commandGroups.some((group, ii) => {
|
|
52
|
+
return Object.keys(group).some((label) => {
|
|
53
|
+
// const command = group[label];
|
|
54
|
+
let disabledVal = true;
|
|
55
|
+
try {
|
|
56
|
+
disabledVal = false;
|
|
57
|
+
// !editorView || !command.isEnabled(editorState, editorView);
|
|
58
|
+
} catch (ex) {
|
|
59
|
+
disabledVal = false;
|
|
60
|
+
}
|
|
61
|
+
return !disabledVal;
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
|
|
65
|
+
const { expanded } = this.state;
|
|
66
|
+
const buttonClassName = cx(className, {
|
|
67
|
+
'czi-custom-menu-button': true,
|
|
68
|
+
expanded,
|
|
69
|
+
});
|
|
70
|
+
|
|
71
|
+
return (
|
|
72
|
+
<CustomButton
|
|
73
|
+
className={buttonClassName}
|
|
74
|
+
disabled={!enabled}
|
|
75
|
+
icon={icon}
|
|
76
|
+
id={this._id}
|
|
77
|
+
label={label}
|
|
78
|
+
onClick={this._onClick}
|
|
79
|
+
title={title}
|
|
80
|
+
/>
|
|
81
|
+
);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
componentWillUnmount(): void {
|
|
85
|
+
this._hideMenu();
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
_onClick = (): void => {
|
|
89
|
+
const expanded = !this.state.expanded;
|
|
90
|
+
this.setState({
|
|
91
|
+
expanded,
|
|
92
|
+
});
|
|
93
|
+
expanded ? this._showMenu() : this._hideMenu();
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
_hideMenu = (): void => {
|
|
97
|
+
const menu = this._menu;
|
|
98
|
+
this._menu = null;
|
|
99
|
+
menu && menu.close();
|
|
100
|
+
};
|
|
101
|
+
|
|
102
|
+
_showMenu = (): void => {
|
|
103
|
+
const menu = this._menu;
|
|
104
|
+
const menuProps = {
|
|
105
|
+
...this.props,
|
|
106
|
+
onCommand: this._onCommand,
|
|
107
|
+
};
|
|
108
|
+
if (menu) {
|
|
109
|
+
menu.update(menuProps);
|
|
110
|
+
} else {
|
|
111
|
+
this._menu = createPopUp(ListTypeMenu, menuProps, {
|
|
112
|
+
anchor: document.getElementById(this._id),
|
|
113
|
+
onClose: this._onClose,
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
|
|
118
|
+
_onCommand = (): void => {
|
|
119
|
+
this.setState({ expanded: false });
|
|
120
|
+
this._hideMenu();
|
|
121
|
+
};
|
|
122
|
+
|
|
123
|
+
_onClose = (): void => {
|
|
124
|
+
if (this._menu) {
|
|
125
|
+
this.setState({ expanded: false });
|
|
126
|
+
this._menu = null;
|
|
127
|
+
}
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
export default ListTypeButton;
|
|
@@ -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
|
// [FS] IRAD-1039 2020-09-23
|
|
16
16
|
// Command button to handle different type of list types
|
|
@@ -50,7 +50,6 @@ LIST_TYPE_NAMES.forEach(function (obj) {
|
|
|
50
50
|
});
|
|
51
51
|
var COMMAND_GROUPS = [LIST_TYPE_COMMANDS];
|
|
52
52
|
var ListTypeCommandButton = /*#__PURE__*/function (_React$PureComponent) {
|
|
53
|
-
_inherits(ListTypeCommandButton, _React$PureComponent);
|
|
54
53
|
function ListTypeCommandButton() {
|
|
55
54
|
var _this;
|
|
56
55
|
_classCallCheck(this, ListTypeCommandButton);
|
|
@@ -58,10 +57,11 @@ var ListTypeCommandButton = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
58
57
|
args[_key] = arguments[_key];
|
|
59
58
|
}
|
|
60
59
|
_this = _callSuper(this, ListTypeCommandButton, [].concat(args));
|
|
61
|
-
_defineProperty(
|
|
60
|
+
_defineProperty(_this, "props", void 0);
|
|
62
61
|
return _this;
|
|
63
62
|
}
|
|
64
|
-
|
|
63
|
+
_inherits(ListTypeCommandButton, _React$PureComponent);
|
|
64
|
+
return _createClass(ListTypeCommandButton, [{
|
|
65
65
|
key: "render",
|
|
66
66
|
value: function render() {
|
|
67
67
|
var _this$props = this.props,
|
|
@@ -86,6 +86,5 @@ var ListTypeCommandButton = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
86
86
|
});
|
|
87
87
|
}
|
|
88
88
|
}]);
|
|
89
|
-
return ListTypeCommandButton;
|
|
90
89
|
}(React.PureComponent);
|
|
91
90
|
export default ListTypeCommandButton;
|
|
@@ -1,85 +1,85 @@
|
|
|
1
|
-
// [FS] IRAD-1039 2020-09-23
|
|
2
|
-
// Command button to handle different type of list types
|
|
3
|
-
// Need to add Icons instead of label
|
|
4
|
-
import * as React from 'react';
|
|
5
|
-
import { EditorState } from 'prosemirror-state';
|
|
6
|
-
import { Transform } from 'prosemirror-transform';
|
|
7
|
-
import { EditorView } from 'prosemirror-view';
|
|
8
|
-
import {
|
|
9
|
-
ListToggleCommand,
|
|
10
|
-
hasImageNode,
|
|
11
|
-
} from '../ListToggleCommand.js';
|
|
12
|
-
import ListTypeButton from './ListTypeButton.js';
|
|
13
|
-
|
|
14
|
-
const LIST_TYPE_NAMES = [
|
|
15
|
-
{
|
|
16
|
-
name: 'decimal',
|
|
17
|
-
label: '1.',
|
|
18
|
-
},
|
|
19
|
-
{
|
|
20
|
-
name: 'x.x.x',
|
|
21
|
-
label: '1.1.1',
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
name: 'num_bracket',
|
|
25
|
-
label: '1)',
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
name: 'num_bracket_closed',
|
|
29
|
-
label: '(1)',
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
name: 'upper_alpha_bracket',
|
|
33
|
-
label: 'A)',
|
|
34
|
-
},
|
|
35
|
-
{
|
|
36
|
-
name: 'lower_alpha_bracket',
|
|
37
|
-
label: 'a)',
|
|
38
|
-
},
|
|
39
|
-
{
|
|
40
|
-
name: 'lower_alpha_bracket_closed',
|
|
41
|
-
label: '(a)',
|
|
42
|
-
},
|
|
43
|
-
];
|
|
44
|
-
const LIST_TYPE_COMMANDS: Object = {
|
|
45
|
-
['decimal']: new ListToggleCommand(true, 'decimal'),
|
|
46
|
-
};
|
|
47
|
-
LIST_TYPE_NAMES.forEach((obj) => {
|
|
48
|
-
LIST_TYPE_COMMANDS[obj.name] = new ListToggleCommand(true, obj.name);
|
|
49
|
-
LIST_TYPE_COMMANDS[obj.name].label = obj.label;
|
|
50
|
-
});
|
|
51
|
-
|
|
52
|
-
const COMMAND_GROUPS = [LIST_TYPE_COMMANDS];
|
|
53
|
-
|
|
54
|
-
class ListTypeCommandButton extends React.PureComponent<any, any> {
|
|
55
|
-
props: {
|
|
56
|
-
dispatch: (tr: Transform) => void,
|
|
57
|
-
editorState: EditorState,
|
|
58
|
-
editorView: ?EditorView,
|
|
59
|
-
};
|
|
60
|
-
|
|
61
|
-
render(): React.Element<any> {
|
|
62
|
-
const { dispatch, editorState, editorView } = this.props;
|
|
63
|
-
let disabled = false;
|
|
64
|
-
if (editorState && editorView) {
|
|
65
|
-
// [FS] IRAD-1317 2021-05-06
|
|
66
|
-
// To disable the list menu when select an image
|
|
67
|
-
disabled =
|
|
68
|
-
hasImageNode(editorState);
|
|
69
|
-
disabled = editorView.disabled || disabled ? true : false;
|
|
70
|
-
}
|
|
71
|
-
return (
|
|
72
|
-
<ListTypeButton
|
|
73
|
-
className="width-50 czi-icon format_list_numbered"
|
|
74
|
-
commandGroups={COMMAND_GROUPS}
|
|
75
|
-
disabled={disabled}
|
|
76
|
-
dispatch={dispatch}
|
|
77
|
-
editorState={editorState}
|
|
78
|
-
editorView={editorView}
|
|
79
|
-
icon={'format_list_numbered'}
|
|
80
|
-
/>
|
|
81
|
-
);
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
export default ListTypeCommandButton;
|
|
1
|
+
// [FS] IRAD-1039 2020-09-23
|
|
2
|
+
// Command button to handle different type of list types
|
|
3
|
+
// Need to add Icons instead of label
|
|
4
|
+
import * as React from 'react';
|
|
5
|
+
import { EditorState } from 'prosemirror-state';
|
|
6
|
+
import { Transform } from 'prosemirror-transform';
|
|
7
|
+
import { EditorView } from 'prosemirror-view';
|
|
8
|
+
import {
|
|
9
|
+
ListToggleCommand,
|
|
10
|
+
hasImageNode,
|
|
11
|
+
} from '../ListToggleCommand.js';
|
|
12
|
+
import ListTypeButton from './ListTypeButton.js';
|
|
13
|
+
|
|
14
|
+
const LIST_TYPE_NAMES = [
|
|
15
|
+
{
|
|
16
|
+
name: 'decimal',
|
|
17
|
+
label: '1.',
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
name: 'x.x.x',
|
|
21
|
+
label: '1.1.1',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
name: 'num_bracket',
|
|
25
|
+
label: '1)',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
name: 'num_bracket_closed',
|
|
29
|
+
label: '(1)',
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
name: 'upper_alpha_bracket',
|
|
33
|
+
label: 'A)',
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
name: 'lower_alpha_bracket',
|
|
37
|
+
label: 'a)',
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
name: 'lower_alpha_bracket_closed',
|
|
41
|
+
label: '(a)',
|
|
42
|
+
},
|
|
43
|
+
];
|
|
44
|
+
const LIST_TYPE_COMMANDS: Object = {
|
|
45
|
+
['decimal']: new ListToggleCommand(true, 'decimal'),
|
|
46
|
+
};
|
|
47
|
+
LIST_TYPE_NAMES.forEach((obj) => {
|
|
48
|
+
LIST_TYPE_COMMANDS[obj.name] = new ListToggleCommand(true, obj.name);
|
|
49
|
+
LIST_TYPE_COMMANDS[obj.name].label = obj.label;
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
const COMMAND_GROUPS = [LIST_TYPE_COMMANDS];
|
|
53
|
+
|
|
54
|
+
class ListTypeCommandButton extends React.PureComponent<any, any> {
|
|
55
|
+
props: {
|
|
56
|
+
dispatch: (tr: Transform) => void,
|
|
57
|
+
editorState: EditorState,
|
|
58
|
+
editorView: ?EditorView,
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
render(): React.Element<any> {
|
|
62
|
+
const { dispatch, editorState, editorView } = this.props;
|
|
63
|
+
let disabled = false;
|
|
64
|
+
if (editorState && editorView) {
|
|
65
|
+
// [FS] IRAD-1317 2021-05-06
|
|
66
|
+
// To disable the list menu when select an image
|
|
67
|
+
disabled =
|
|
68
|
+
hasImageNode(editorState);
|
|
69
|
+
disabled = editorView.disabled || disabled ? true : false;
|
|
70
|
+
}
|
|
71
|
+
return (
|
|
72
|
+
<ListTypeButton
|
|
73
|
+
className="width-50 czi-icon format_list_numbered"
|
|
74
|
+
commandGroups={COMMAND_GROUPS}
|
|
75
|
+
disabled={disabled}
|
|
76
|
+
dispatch={dispatch}
|
|
77
|
+
editorState={editorState}
|
|
78
|
+
editorView={editorView}
|
|
79
|
+
icon={'format_list_numbered'}
|
|
80
|
+
/>
|
|
81
|
+
);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
export default ListTypeCommandButton;
|
package/ui/ListTypeMenu.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 * as React from 'react';
|
|
16
16
|
import { UICommand } from '@modusoperandi/licit-doc-attrs-step';
|
|
@@ -23,7 +23,6 @@ import './listType.css';
|
|
|
23
23
|
// [FS] IRAD-1039 2020-09-24
|
|
24
24
|
// UI to show the list buttons
|
|
25
25
|
var ListTypeMenu = /*#__PURE__*/function (_React$PureComponent) {
|
|
26
|
-
_inherits(ListTypeMenu, _React$PureComponent);
|
|
27
26
|
function ListTypeMenu() {
|
|
28
27
|
var _this;
|
|
29
28
|
_classCallCheck(this, ListTypeMenu);
|
|
@@ -31,19 +30,19 @@ var ListTypeMenu = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
31
30
|
args[_key] = arguments[_key];
|
|
32
31
|
}
|
|
33
32
|
_this = _callSuper(this, ListTypeMenu, [].concat(args));
|
|
34
|
-
_defineProperty(
|
|
35
|
-
_defineProperty(
|
|
36
|
-
_defineProperty(
|
|
37
|
-
_defineProperty(
|
|
38
|
-
_defineProperty(
|
|
33
|
+
_defineProperty(_this, "_activeCommand", null);
|
|
34
|
+
_defineProperty(_this, "props", void 0);
|
|
35
|
+
_defineProperty(_this, "_menu", null);
|
|
36
|
+
_defineProperty(_this, "_id", uuid());
|
|
37
|
+
_defineProperty(_this, "state", {
|
|
39
38
|
expanded: false
|
|
40
39
|
});
|
|
41
|
-
_defineProperty(
|
|
40
|
+
_defineProperty(_this, "_onUIEnter", function (command, event) {
|
|
42
41
|
_this._activeCommand && _this._activeCommand.cancel();
|
|
43
42
|
_this._activeCommand = command;
|
|
44
43
|
_this._execute(command, event);
|
|
45
44
|
});
|
|
46
|
-
_defineProperty(
|
|
45
|
+
_defineProperty(_this, "_execute", function (command, e) {
|
|
47
46
|
var _this$props = _this.props,
|
|
48
47
|
dispatch = _this$props.dispatch,
|
|
49
48
|
editorState = _this$props.editorState,
|
|
@@ -55,7 +54,8 @@ var ListTypeMenu = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
55
54
|
});
|
|
56
55
|
return _this;
|
|
57
56
|
}
|
|
58
|
-
|
|
57
|
+
_inherits(ListTypeMenu, _React$PureComponent);
|
|
58
|
+
return _createClass(ListTypeMenu, [{
|
|
59
59
|
key: "render",
|
|
60
60
|
value: function render() {
|
|
61
61
|
var _this2 = this;
|
|
@@ -80,6 +80,5 @@ var ListTypeMenu = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
80
80
|
}, children);
|
|
81
81
|
}
|
|
82
82
|
}]);
|
|
83
|
-
return ListTypeMenu;
|
|
84
83
|
}(React.PureComponent);
|
|
85
84
|
export default ListTypeMenu;
|