@flozy/editor 3.8.7 → 3.8.9
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/dist/Editor/ChatEditor.js +2 -2
- package/dist/Editor/CommonEditor.js +170 -166
- package/dist/Editor/DialogWrapper.js +4 -3
- package/dist/Editor/Editor.css +4 -7
- package/dist/Editor/Elements/AI/AIInput.js +5 -16
- package/dist/Editor/Elements/AI/PopoverAIInput.js +64 -67
- package/dist/Editor/Elements/AI/Styles.js +1 -2
- package/dist/Editor/Elements/AppHeader/AppHeader.js +40 -49
- package/dist/Editor/Elements/Button/EditorButton.js +33 -38
- package/dist/Editor/Elements/Color Picker/ColorButtons.js +17 -60
- package/dist/Editor/Elements/Color Picker/ColorPicker.css +1 -25
- package/dist/Editor/Elements/Color Picker/ColorPicker.js +4 -4
- package/dist/Editor/Elements/Color Picker/Styles.js +1 -2
- package/dist/Editor/Elements/Embed/Image.js +15 -14
- package/dist/Editor/Elements/Embed/Video.js +12 -8
- package/dist/Editor/Elements/Emoji/EmojiButton.js +11 -7
- package/dist/Editor/Elements/Form/Workflow/FormWorkflow.js +3 -12
- package/dist/Editor/Elements/Form/Workflow/UserInputs.js +1 -2
- package/dist/Editor/Elements/FreeGrid/FreeGrid.js +391 -0
- package/dist/Editor/Elements/FreeGrid/FreeGridBox.js +193 -0
- package/dist/Editor/Elements/FreeGrid/FreeGridButton.js +23 -0
- package/dist/Editor/Elements/FreeGrid/FreeGridItem.js +184 -0
- package/dist/Editor/Elements/FreeGrid/Options/AddElement.js +36 -0
- package/dist/Editor/Elements/FreeGrid/Options/More.js +24 -0
- package/dist/Editor/Elements/FreeGrid/Options/SectionSettings.js +47 -0
- package/dist/Editor/Elements/FreeGrid/Options/sectionItemOptions.js +11 -0
- package/dist/Editor/Elements/FreeGrid/breakpointConstants.js +75 -0
- package/dist/Editor/Elements/FreeGrid/styles.js +159 -0
- package/dist/Editor/Elements/Grid/Grid.js +14 -34
- package/dist/Editor/Elements/Grid/GridItem.js +31 -23
- package/dist/Editor/Elements/Link/Link.js +1 -6
- package/dist/Editor/Elements/Link/LinkButton.js +2 -4
- package/dist/Editor/Elements/Link/LinkPopup.js +3 -10
- package/dist/Editor/Elements/PageSettings/PageSettingsButton.js +3 -3
- package/dist/Editor/Elements/Signature/SignaturePopup.js +3 -14
- package/dist/Editor/Elements/SimpleText/index.js +9 -8
- package/dist/Editor/Elements/SimpleText/style.js +37 -0
- package/dist/Editor/Elements/Table/Styles.js +1 -23
- package/dist/Editor/Elements/Table/Table.js +1 -2
- package/dist/Editor/Elements/Table/TableCell.js +7 -69
- package/dist/Editor/Elements/TableContextMenu/TableContextMenu.js +0 -1
- package/dist/Editor/ErrorBoundary.js +30 -0
- package/dist/Editor/MiniEditor.js +1 -3
- package/dist/Editor/Styles/EditorStyles.js +23 -0
- package/dist/Editor/Toolbar/Basic/index.js +2 -4
- package/dist/Editor/Toolbar/FormatTools/Dropdown.js +2 -26
- package/dist/Editor/Toolbar/FormatTools/MarkButton.js +2 -2
- package/dist/Editor/Toolbar/FormatTools/TextSize.js +18 -29
- package/dist/Editor/Toolbar/Mini/MiniToolbar.js +2 -4
- package/dist/Editor/Toolbar/Mini/Options/Options.js +0 -10
- package/dist/Editor/Toolbar/Mini/Styles.js +0 -7
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +11 -4
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +86 -213
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +1 -2
- package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +13 -20
- package/dist/Editor/Toolbar/PopupTool/TextFormat.js +8 -52
- package/dist/Editor/Toolbar/PopupTool/index.js +13 -6
- package/dist/Editor/Toolbar/Toolbar.js +7 -0
- package/dist/Editor/Toolbar/toolbarGroups.js +11 -48
- package/dist/Editor/assets/svg/AIIcons.js +1 -153
- package/dist/Editor/assets/svg/AddTemplateIcon.js +10 -13
- package/dist/Editor/assets/svg/TextIcon.js +5 -8
- package/dist/Editor/common/ColorPickerButton.js +9 -25
- package/dist/Editor/common/DnD/DragHandleButton.js +47 -56
- package/dist/Editor/common/Icon.js +8 -41
- package/dist/Editor/common/LinkSettings/NavComponents.js +2 -5
- package/dist/Editor/common/LinkSettings/index.js +2 -4
- package/dist/Editor/common/LinkSettings/navOptions.js +2 -7
- package/dist/Editor/common/LinkSettings/style.js +8 -11
- package/dist/Editor/common/MentionsPopup/index.js +12 -8
- package/dist/Editor/common/RnD/ContextMenu/CMenus.js +105 -0
- package/dist/Editor/common/RnD/ContextMenu/index.js +38 -0
- package/dist/Editor/common/RnD/ContextMenu/styles.js +21 -0
- package/dist/Editor/common/RnD/DragInfo/index.js +31 -0
- package/dist/Editor/common/RnD/DragInfo/styles.js +15 -0
- package/dist/Editor/common/RnD/DragOver/index.js +46 -0
- package/dist/Editor/common/RnD/DragOver/styles.js +23 -0
- package/dist/Editor/common/RnD/ElementOptions/Actions.js +82 -0
- package/dist/Editor/common/RnD/ElementOptions/Icons/LinkIcon.js +26 -0
- package/dist/Editor/common/RnD/ElementOptions/index.js +93 -0
- package/dist/Editor/common/RnD/ElementOptions/styles.js +41 -0
- package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Link.js +153 -0
- package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Settings.js +58 -0
- package/dist/Editor/common/RnD/ElementSettings/OtherSettings/index.js +7 -0
- package/dist/Editor/common/RnD/ElementSettings/Settings/BoxSettings.js +46 -0
- package/dist/Editor/common/RnD/ElementSettings/Settings/ButtonSettings.js +46 -0
- package/dist/Editor/common/RnD/ElementSettings/Settings/ImageSettings.js +46 -0
- package/dist/Editor/common/RnD/ElementSettings/Settings/TextSettings.js +30 -0
- package/dist/Editor/common/RnD/ElementSettings/Settings/VideoSettings.js +46 -0
- package/dist/Editor/common/RnD/ElementSettings/Settings/index.js +13 -0
- package/dist/Editor/common/RnD/ElementSettings/index.js +17 -0
- package/dist/Editor/common/RnD/ElementSettings/settingsConstants.js +14 -0
- package/dist/Editor/common/RnD/ElementSettings/styles.js +76 -0
- package/dist/Editor/common/RnD/GuideLines/BoundaryLine.js +52 -0
- package/dist/Editor/common/RnD/GuideLines/index.js +33 -0
- package/dist/Editor/common/RnD/GuideLines/styles.js +60 -0
- package/dist/Editor/common/RnD/OptionsPopup/index.js +50 -0
- package/dist/Editor/common/RnD/OptionsPopup/style.js +36 -0
- package/dist/Editor/common/RnD/RnDCopy.js +23 -0
- package/dist/Editor/common/RnD/ShadowElement.js +34 -0
- package/dist/Editor/common/RnD/SwitchViewport/SwitchViewport.js +40 -0
- package/dist/Editor/common/RnD/SwitchViewport/styles.js +24 -0
- package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +63 -0
- package/dist/Editor/common/RnD/TransformHandles/CornerHandle.js +19 -0
- package/dist/Editor/common/RnD/TransformHandles/Icons/BottomRightIcon.js +13 -0
- package/dist/Editor/common/RnD/TransformHandles/SizeHandle.js +18 -0
- package/dist/Editor/common/RnD/TransformHandles/index.js +62 -0
- package/dist/Editor/common/RnD/Utils/alignmentDetection.js +26 -0
- package/dist/Editor/common/RnD/Utils/calculateDropItem.js +98 -0
- package/dist/Editor/common/RnD/Utils/collisionDetection.js +52 -0
- package/dist/Editor/common/RnD/Utils/gridDropItem.js +148 -0
- package/dist/Editor/common/RnD/Utils/index.js +251 -0
- package/dist/Editor/common/RnD/VirtualElement/index.js +76 -0
- package/dist/Editor/common/RnD/VirtualElement/styles.js +27 -0
- package/dist/Editor/common/RnD/VirtualElement/updateAutoProps.js +28 -0
- package/dist/Editor/common/RnD/index.js +503 -0
- package/dist/Editor/common/RnD/styles.js +4 -0
- package/dist/Editor/common/Section/index.js +28 -69
- package/dist/Editor/common/Section/styles.js +6 -12
- package/dist/Editor/common/Shorthands/elements.js +12 -54
- package/dist/Editor/common/StyleBuilder/boxStyle.js +30 -0
- package/dist/Editor/common/StyleBuilder/buttonStyle.js +2 -4
- package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +16 -19
- package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +7 -15
- package/dist/Editor/common/StyleBuilder/fieldTypes/buttonLink.js +1 -1
- package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +7 -31
- package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +4 -13
- package/dist/Editor/common/StyleBuilder/fieldTypes/text.js +4 -2
- package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +4 -14
- package/dist/Editor/common/StyleBuilder/index.js +1 -1
- package/dist/Editor/common/StyleBuilder/sectionStyle.js +13 -2
- package/dist/Editor/common/iconslist.js +31 -0
- package/dist/Editor/helper/RnD/focusOnNewItem.js +39 -0
- package/dist/Editor/helper/RnD/scrollToNewSection.js +24 -0
- package/dist/Editor/helper/breakpoint.js +5 -0
- package/dist/Editor/helper/index.js +139 -0
- package/dist/Editor/helper/theme.js +48 -185
- package/dist/Editor/hooks/useBreakpoints.js +34 -0
- package/dist/Editor/hooks/useMouseMove.js +37 -12
- package/dist/Editor/hooks/useWindowMessage.js +7 -10
- package/dist/Editor/hooks/withCommon.js +2 -1
- package/dist/Editor/hooks/withErrorHandling.js +14 -0
- package/dist/Editor/plugins/withEmbeds.js +1 -1
- package/dist/Editor/plugins/withHTML.js +1 -1
- package/dist/Editor/plugins/withTable.js +1 -1
- package/dist/Editor/theme/ThemeList.js +173 -50
- package/dist/Editor/utils/RnD/RnDCtrlCmds.js +168 -0
- package/dist/Editor/utils/SlateUtilityFunctions.js +47 -163
- package/dist/Editor/utils/button.js +17 -1
- package/dist/Editor/utils/events.js +7 -54
- package/dist/Editor/utils/font.js +37 -40
- package/dist/Editor/utils/freegrid.js +49 -0
- package/dist/Editor/utils/helper.js +31 -31
- package/dist/Editor/utils/table.js +43 -51
- package/package.json +6 -4
- package/dist/Editor/Elements/AI/VoiceToText/AudioWave.js +0 -73
- package/dist/Editor/Elements/AI/VoiceToText/index.js +0 -167
- package/dist/Editor/Elements/AI/VoiceToText/style.js +0 -40
- package/dist/Editor/Elements/Link/LinkPopupStyles.js +0 -28
- package/dist/Editor/Elements/Redo/RedoButton.js +0 -14
- package/dist/Editor/Elements/Undo/UndoButton.js +0 -14
- package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +0 -438
- package/dist/Editor/assets/svg/RedoIcon.js +0 -27
- package/dist/Editor/assets/svg/SettingsIcon.js +0 -28
- package/dist/Editor/assets/svg/ThemeIcons.js +0 -291
- package/dist/Editor/assets/svg/UndoIcon.js +0 -27
- package/dist/Editor/common/CustomColorPicker/index.js +0 -106
- package/dist/Editor/common/CustomColorPicker/style.js +0 -53
- package/dist/Editor/common/CustomDialog/index.js +0 -94
- package/dist/Editor/common/CustomDialog/style.js +0 -67
- package/dist/Editor/common/CustomSelect.js +0 -33
- package/dist/Editor/hooks/useEditorTheme.js +0 -139
- package/dist/Editor/theme/index.js +0 -144
- package/dist/Editor/themeSettings/ActiveTheme.js +0 -72
- package/dist/Editor/themeSettings/buttons/index.js +0 -290
- package/dist/Editor/themeSettings/buttons/style.js +0 -21
- package/dist/Editor/themeSettings/colorTheme/index.js +0 -290
- package/dist/Editor/themeSettings/colorTheme/style.js +0 -77
- package/dist/Editor/themeSettings/fonts/PreviewElement.js +0 -123
- package/dist/Editor/themeSettings/fonts/index.js +0 -213
- package/dist/Editor/themeSettings/fonts/style.js +0 -44
- package/dist/Editor/themeSettings/icons.js +0 -60
- package/dist/Editor/themeSettings/index.js +0 -320
- package/dist/Editor/themeSettings/style.js +0 -152
- package/dist/Editor/themeSettingsAI/icons.js +0 -96
- package/dist/Editor/themeSettingsAI/index.js +0 -356
- package/dist/Editor/themeSettingsAI/saveTheme.js +0 -190
- package/dist/Editor/themeSettingsAI/style.js +0 -247
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import React, { useState, useEffect } from "react";
|
|
2
|
-
import { Editor, Element
|
|
3
|
-
import { Box
|
|
2
|
+
import { Editor, Element } from "slate";
|
|
3
|
+
import { Box } from "@mui/material";
|
|
4
4
|
import { useSlateStatic, ReactEditor } from "slate-react";
|
|
5
5
|
import useTableResize from "../../utils/customHooks/useTableResize";
|
|
6
6
|
import { TableUtil } from "../../utils/table";
|
|
7
7
|
import TableStyles from "./Styles";
|
|
8
8
|
import { useEditorSelection } from "../../hooks/useMouseMove";
|
|
9
|
-
import useClickOutside from "../../hooks/useClickOutside";
|
|
10
9
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
11
10
|
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
12
11
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
@@ -29,8 +28,7 @@ const Resizer = ({
|
|
|
29
28
|
});
|
|
30
29
|
};
|
|
31
30
|
const TableCell = props => {
|
|
32
|
-
const
|
|
33
|
-
const classes = TableStyles(themeType);
|
|
31
|
+
const classes = TableStyles();
|
|
34
32
|
const {
|
|
35
33
|
element,
|
|
36
34
|
attributes,
|
|
@@ -71,42 +69,6 @@ const TableCell = props => {
|
|
|
71
69
|
const tableDOM = table.getDOMNode(path, true);
|
|
72
70
|
const isCellSelected = table.isCellSelected(editor.selection);
|
|
73
71
|
const hasSelected = (isCellSelected || [])?.findIndex(f => f.join(",") === path.join(",")) > -1;
|
|
74
|
-
const [anchorEl, setAnchorEl] = useState(null);
|
|
75
|
-
const open = Boolean(anchorEl);
|
|
76
|
-
const popperOptions = [{
|
|
77
|
-
value: "Delete Row"
|
|
78
|
-
}, {
|
|
79
|
-
value: "Delete Column"
|
|
80
|
-
}];
|
|
81
|
-
const onRightClick = e => {
|
|
82
|
-
e.preventDefault();
|
|
83
|
-
if (hasSelected) {
|
|
84
|
-
setAnchorEl(e.currentTarget);
|
|
85
|
-
}
|
|
86
|
-
};
|
|
87
|
-
const closePoper = () => {
|
|
88
|
-
setAnchorEl(null);
|
|
89
|
-
};
|
|
90
|
-
const handleMenuItemClick = value => {
|
|
91
|
-
Transforms.select(editor, editor.selection);
|
|
92
|
-
switch (value) {
|
|
93
|
-
case "Delete Row":
|
|
94
|
-
table.deleteRow();
|
|
95
|
-
break;
|
|
96
|
-
case "Delete Column":
|
|
97
|
-
table.deleteColumn();
|
|
98
|
-
break;
|
|
99
|
-
default:
|
|
100
|
-
return;
|
|
101
|
-
}
|
|
102
|
-
// closePoper();
|
|
103
|
-
};
|
|
104
|
-
|
|
105
|
-
// Use the useClickOutside hook
|
|
106
|
-
const popperRef = useClickOutside({
|
|
107
|
-
onClickOutside: closePoper,
|
|
108
|
-
refCount: 1
|
|
109
|
-
})[0];
|
|
110
72
|
useEffect(() => {
|
|
111
73
|
if (tableDOM) {
|
|
112
74
|
const {
|
|
@@ -127,7 +89,7 @@ const TableCell = props => {
|
|
|
127
89
|
cellWidth: parentWidth / columns
|
|
128
90
|
});
|
|
129
91
|
}
|
|
130
|
-
}, [tableDOM
|
|
92
|
+
}, [tableDOM]);
|
|
131
93
|
useEffect(() => {
|
|
132
94
|
if (editor && element && tableSize) {
|
|
133
95
|
const dom = ReactEditor.toDOMNode(editor, element);
|
|
@@ -137,37 +99,14 @@ const TableCell = props => {
|
|
|
137
99
|
height: 100
|
|
138
100
|
});
|
|
139
101
|
}
|
|
140
|
-
}, [tableSize
|
|
102
|
+
}, [tableSize]);
|
|
141
103
|
useEffect(() => {
|
|
142
104
|
if (!resizing && tableProps) {
|
|
143
105
|
table.updateTableStyle({
|
|
144
106
|
"col.size": size
|
|
145
107
|
}, tableProps);
|
|
146
108
|
}
|
|
147
|
-
}, [resizing
|
|
148
|
-
const poperForDeltion = () => {
|
|
149
|
-
return /*#__PURE__*/_jsx(Popper, {
|
|
150
|
-
open: open,
|
|
151
|
-
anchorEl: anchorEl,
|
|
152
|
-
placement: "bottom-start",
|
|
153
|
-
disablePortal: true,
|
|
154
|
-
ref: popperRef,
|
|
155
|
-
sx: classes.deleteCellsPopUp,
|
|
156
|
-
children: popperOptions.map(option => /*#__PURE__*/_jsx(MenuItem, {
|
|
157
|
-
value: option.value,
|
|
158
|
-
onClick: () => handleMenuItemClick(option.value),
|
|
159
|
-
contentEditable: false,
|
|
160
|
-
sx: classes.menuItemPopUp,
|
|
161
|
-
children: /*#__PURE__*/_jsx(Typography, {
|
|
162
|
-
sx: {
|
|
163
|
-
fontSize: "12px",
|
|
164
|
-
userSelect: "none"
|
|
165
|
-
},
|
|
166
|
-
children: option.value
|
|
167
|
-
})
|
|
168
|
-
}, option.value))
|
|
169
|
-
});
|
|
170
|
-
};
|
|
109
|
+
}, [resizing]);
|
|
171
110
|
const sizeProps = isHeader ? {
|
|
172
111
|
width: size?.width || tableSize?.cellWidth
|
|
173
112
|
} : {};
|
|
@@ -182,7 +121,6 @@ const TableCell = props => {
|
|
|
182
121
|
border: `3px solid ${cellBorderColor}`,
|
|
183
122
|
...(sizeProps || {})
|
|
184
123
|
},
|
|
185
|
-
onContextMenu: onRightClick,
|
|
186
124
|
children: [children, isHeader && !readOnly && tableSize?.height && !showTool ? /*#__PURE__*/_jsx(Resizer, {
|
|
187
125
|
classes: classes,
|
|
188
126
|
onMouseDown: onMouseDown,
|
|
@@ -190,7 +128,7 @@ const TableCell = props => {
|
|
|
190
128
|
}) : null, hasSelected && !readOnly ? /*#__PURE__*/_jsx("div", {
|
|
191
129
|
className: "selection-area-tc",
|
|
192
130
|
contentEditable: false
|
|
193
|
-
}) : null
|
|
131
|
+
}) : null]
|
|
194
132
|
});
|
|
195
133
|
};
|
|
196
134
|
export default TableCell;
|
|
@@ -8,7 +8,6 @@ import { ReactEditor } from "slate-react";
|
|
|
8
8
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
9
9
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
10
10
|
const TableContextMenu = props => {
|
|
11
|
-
console.log("Table context menu :", props);
|
|
12
11
|
const {
|
|
13
12
|
editor
|
|
14
13
|
} = props;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import React, { Component } from "react";
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
class ErrorBoundary extends Component {
|
|
4
|
+
constructor(props) {
|
|
5
|
+
super(props);
|
|
6
|
+
this.state = {
|
|
7
|
+
hasError: false
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
static getDerivedStateFromError(error) {
|
|
11
|
+
// Update state so the next render will show the fallback UI.
|
|
12
|
+
return {
|
|
13
|
+
hasError: true
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
componentDidCatch(error, errorInfo) {
|
|
17
|
+
// You can also log the error to an error reporting service
|
|
18
|
+
console.error("Error caught in Error Boundary: ", error, errorInfo);
|
|
19
|
+
}
|
|
20
|
+
render() {
|
|
21
|
+
if (this.state.hasError) {
|
|
22
|
+
// You can render any custom fallback UI
|
|
23
|
+
return /*#__PURE__*/_jsx("h1", {
|
|
24
|
+
children: "Something went wrong."
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
return this.props.children;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
export default ErrorBoundary;
|
|
@@ -23,8 +23,7 @@ const MiniEditor = props => {
|
|
|
23
23
|
miniEditorPlaceholder,
|
|
24
24
|
className,
|
|
25
25
|
otherProps,
|
|
26
|
-
onSave
|
|
27
|
-
theme
|
|
26
|
+
onSave
|
|
28
27
|
} = props;
|
|
29
28
|
const {
|
|
30
29
|
CHARACTERS = []
|
|
@@ -133,7 +132,6 @@ const MiniEditor = props => {
|
|
|
133
132
|
editor: editor,
|
|
134
133
|
initialValue: content,
|
|
135
134
|
onChange: onChange,
|
|
136
|
-
theme: theme,
|
|
137
135
|
children: [/*#__PURE__*/_jsx(BasicToolbar, {
|
|
138
136
|
...props
|
|
139
137
|
}), /*#__PURE__*/_jsx(Editable, {
|
|
@@ -29,6 +29,28 @@ const editorStyles = ({
|
|
|
29
29
|
"& .MuiOutlinedInput-input": {
|
|
30
30
|
color: theme?.palette?.editor?.textColor || "black"
|
|
31
31
|
}
|
|
32
|
+
},
|
|
33
|
+
"&.stimulate-xs": {
|
|
34
|
+
":before": {
|
|
35
|
+
content: '" "',
|
|
36
|
+
position: "absolute",
|
|
37
|
+
top: 0,
|
|
38
|
+
left: 0,
|
|
39
|
+
width: "calc(50% - 162px)",
|
|
40
|
+
height: "100%",
|
|
41
|
+
pointerEvents: "none",
|
|
42
|
+
backgroundColor: "#FFF"
|
|
43
|
+
},
|
|
44
|
+
":after": {
|
|
45
|
+
content: '" "',
|
|
46
|
+
position: "absolute",
|
|
47
|
+
top: 0,
|
|
48
|
+
right: 0,
|
|
49
|
+
width: "calc(50% - 160px)",
|
|
50
|
+
height: "100%",
|
|
51
|
+
pointerEvents: "none",
|
|
52
|
+
backgroundColor: "#FFF"
|
|
53
|
+
}
|
|
32
54
|
}
|
|
33
55
|
},
|
|
34
56
|
slateWrapper: {
|
|
@@ -243,6 +265,7 @@ const editorStyles = ({
|
|
|
243
265
|
}
|
|
244
266
|
},
|
|
245
267
|
"&.hideScroll": {
|
|
268
|
+
overflowAnchor: "none",
|
|
246
269
|
"&::-webkit-scrollbar-track": {
|
|
247
270
|
background: "none !important"
|
|
248
271
|
},
|
|
@@ -25,8 +25,7 @@ const BasicToolbar = props => {
|
|
|
25
25
|
hideTextColor = false,
|
|
26
26
|
hideResetIcon = true,
|
|
27
27
|
onResetClick = () => {}
|
|
28
|
-
}
|
|
29
|
-
theme
|
|
28
|
+
}
|
|
30
29
|
} = props;
|
|
31
30
|
// state
|
|
32
31
|
const [activeColor, setActiveColor] = useState("#000000");
|
|
@@ -66,8 +65,7 @@ const BasicToolbar = props => {
|
|
|
66
65
|
item: true,
|
|
67
66
|
children: /*#__PURE__*/_jsx(LinkButton, {
|
|
68
67
|
active: isBlockActive(editor, link.format),
|
|
69
|
-
editor: editor
|
|
70
|
-
theme: theme
|
|
68
|
+
editor: editor
|
|
71
69
|
}, link.id)
|
|
72
70
|
}), !hideTextColor && /*#__PURE__*/_jsx(Grid, {
|
|
73
71
|
item: true,
|
|
@@ -1,32 +1,8 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { Select, MenuItem } from "@mui/material";
|
|
3
|
-
import { addMarkData, activeMark
|
|
3
|
+
import { addMarkData, activeMark } from "../../utils/SlateUtilityFunctions.js";
|
|
4
4
|
import { fontFamilyMap } from "../../utils/font";
|
|
5
|
-
import { toolbarGroups } from "../toolbarGroups.js";
|
|
6
5
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
|
-
const allTools = toolbarGroups.flat();
|
|
8
|
-
const fontWeight = allTools.find(f => f.format === "fontWeight");
|
|
9
|
-
const getValue = (editor, format) => {
|
|
10
|
-
switch (format) {
|
|
11
|
-
case "fontFamily":
|
|
12
|
-
{
|
|
13
|
-
const style = getSelectedElementStyle("font-family", editor);
|
|
14
|
-
const val = Object.entries(fontFamilyMap).find(([key, value]) => value === style)?.[0];
|
|
15
|
-
return val || fontFamilyMap.PoppinsRegular;
|
|
16
|
-
}
|
|
17
|
-
case "fontWeight":
|
|
18
|
-
{
|
|
19
|
-
const {
|
|
20
|
-
options
|
|
21
|
-
} = fontWeight || {};
|
|
22
|
-
const fontWeightStyle = getSelectedElementStyle("font-weight", editor);
|
|
23
|
-
const selected = options?.find(o => o.value === fontWeightStyle || o.numVal === fontWeightStyle);
|
|
24
|
-
return selected?.value;
|
|
25
|
-
}
|
|
26
|
-
default:
|
|
27
|
-
return activeMark(editor, format);
|
|
28
|
-
}
|
|
29
|
-
};
|
|
30
6
|
const Dropdown = ({
|
|
31
7
|
classes,
|
|
32
8
|
editor,
|
|
@@ -34,7 +10,7 @@ const Dropdown = ({
|
|
|
34
10
|
options,
|
|
35
11
|
width
|
|
36
12
|
}) => {
|
|
37
|
-
const value =
|
|
13
|
+
const value = activeMark(editor, format);
|
|
38
14
|
const changeMarkData = (event, format) => {
|
|
39
15
|
event.preventDefault();
|
|
40
16
|
const value = event.target.value;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import Icon from "../../common/Icon";
|
|
3
3
|
import Button from "../../common/Button";
|
|
4
|
-
import { toggleMark,
|
|
4
|
+
import { toggleMark, isMarkActive } from "../../utils/SlateUtilityFunctions.js";
|
|
5
5
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
6
|
const MarkButton = ({
|
|
7
7
|
editor,
|
|
@@ -9,7 +9,7 @@ const MarkButton = ({
|
|
|
9
9
|
title
|
|
10
10
|
}) => {
|
|
11
11
|
return /*#__PURE__*/_jsx(Button, {
|
|
12
|
-
active:
|
|
12
|
+
active: isMarkActive(editor, format),
|
|
13
13
|
format: format,
|
|
14
14
|
onMouseDown: e => {
|
|
15
15
|
e.preventDefault();
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import React
|
|
1
|
+
import React from "react";
|
|
2
2
|
import { TextField, IconButton } from "@mui/material";
|
|
3
|
-
import { addMarkData, activeMark } from "../../utils/SlateUtilityFunctions.js";
|
|
3
|
+
import { addMarkData, activeMark, isBlockActive } from "../../utils/SlateUtilityFunctions.js";
|
|
4
|
+
import { headingMap, sizeMap } from "../../utils/font.js";
|
|
4
5
|
import { TextMinusIcon, TextPlusIcon } from "../../common/iconslist.js";
|
|
5
|
-
import { getBreakPointsValue
|
|
6
|
+
import { getBreakPointsValue } from "../../helper/theme.js";
|
|
6
7
|
import useWindowResize from "../../hooks/useWindowResize.js";
|
|
7
8
|
import { BREAKPOINTS_DEVICES } from "../../helper/theme.js";
|
|
8
9
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -16,13 +17,7 @@ const TextSize = ({
|
|
|
16
17
|
}) => {
|
|
17
18
|
const [size] = useWindowResize();
|
|
18
19
|
const val = activeMark(editor, format);
|
|
19
|
-
const
|
|
20
|
-
const value = noFontSize ? getTextSizeVal(editor) : getBreakPointsValue(val, size?.device);
|
|
21
|
-
const [fontSize, setFontSize] = useState();
|
|
22
|
-
const timerRef = useRef();
|
|
23
|
-
useEffect(() => {
|
|
24
|
-
setFontSize(getSizeVal());
|
|
25
|
-
}, [value]);
|
|
20
|
+
const value = getBreakPointsValue(val, size?.device);
|
|
26
21
|
const updateMarkData = newVal => {
|
|
27
22
|
let upData = {
|
|
28
23
|
...getBreakPointsValue(val),
|
|
@@ -44,18 +39,20 @@ const TextSize = ({
|
|
|
44
39
|
}
|
|
45
40
|
});
|
|
46
41
|
};
|
|
47
|
-
const onChangeSize =
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
updateMarkData(inc);
|
|
52
|
-
} else {
|
|
53
|
-
setFontSize(null);
|
|
54
|
-
}
|
|
42
|
+
const onChangeSize = e => {
|
|
43
|
+
let inc = parseInt(e.target.value) || 8;
|
|
44
|
+
inc = inc > 200 ? 200 : inc;
|
|
45
|
+
updateMarkData(inc || 8);
|
|
55
46
|
};
|
|
56
47
|
const getSizeVal = () => {
|
|
57
48
|
try {
|
|
58
|
-
|
|
49
|
+
let size = `${value}`?.indexOf("px") >= 0 ? value : sizeMap[value] || value;
|
|
50
|
+
Object.entries(headingMap).forEach(([format, value]) => {
|
|
51
|
+
if (isBlockActive(editor, format) && isNaN(parseInt(size))) {
|
|
52
|
+
size = value;
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
return parseInt(size);
|
|
59
56
|
} catch (err) {
|
|
60
57
|
return "";
|
|
61
58
|
}
|
|
@@ -70,19 +67,11 @@ const TextSize = ({
|
|
|
70
67
|
const newVal = combinedOldVal - 1 < 0 ? 0 : combinedOldVal - 1;
|
|
71
68
|
updateMarkData(newVal);
|
|
72
69
|
};
|
|
73
|
-
const onChange = e => {
|
|
74
|
-
clearTimeout(timerRef.current);
|
|
75
|
-
const value = e.target.value;
|
|
76
|
-
setFontSize(value);
|
|
77
|
-
timerRef.current = setTimeout(() => {
|
|
78
|
-
onChangeSize(value);
|
|
79
|
-
}, 500);
|
|
80
|
-
};
|
|
81
70
|
return /*#__PURE__*/_jsx(_Fragment, {
|
|
82
71
|
children: /*#__PURE__*/_jsx(TextField, {
|
|
83
72
|
sx: classes?.textSize,
|
|
84
|
-
value:
|
|
85
|
-
onChange:
|
|
73
|
+
value: combinedOldVal,
|
|
74
|
+
onChange: onChangeSize,
|
|
86
75
|
size: "small",
|
|
87
76
|
inputProps: {
|
|
88
77
|
style: {
|
|
@@ -47,8 +47,6 @@ const MiniToolbar = props => {
|
|
|
47
47
|
const {
|
|
48
48
|
popupType
|
|
49
49
|
} = useEditorContext();
|
|
50
|
-
const canUndo = editor.history.undos.length > 0;
|
|
51
|
-
const canRedo = editor.history.redos.length > 0;
|
|
52
50
|
useEffect(() => {
|
|
53
51
|
if (popper) {
|
|
54
52
|
setPopper(null);
|
|
@@ -78,13 +76,13 @@ const MiniToolbar = props => {
|
|
|
78
76
|
label,
|
|
79
77
|
icon: Icon
|
|
80
78
|
}) => {
|
|
81
|
-
const isDisabled = popupType === type
|
|
79
|
+
const isDisabled = popupType === type; // for textFormat type
|
|
82
80
|
|
|
83
81
|
return /*#__PURE__*/_jsx(Tooltip, {
|
|
84
82
|
arrow: true,
|
|
85
83
|
title: label,
|
|
86
84
|
children: /*#__PURE__*/_jsx(IconButton, {
|
|
87
|
-
className:
|
|
85
|
+
className: type === popper ? "active" : "",
|
|
88
86
|
onClick: handleClick(type),
|
|
89
87
|
disabled: isDisabled,
|
|
90
88
|
children: /*#__PURE__*/_jsx(Icon, {
|
|
@@ -2,8 +2,6 @@ import TextIcon from "../../../assets/svg/TextIcon";
|
|
|
2
2
|
import AddElementIcon from "../../../assets/svg/AddElementIcon";
|
|
3
3
|
import AddTemplateIcon from "../../../assets/svg/AddTemplateIcon";
|
|
4
4
|
import PageSettingsButton from "../../../Elements/PageSettings/PageSettingsButton";
|
|
5
|
-
import UndoButton from "../../../Elements/Undo/UndoButton";
|
|
6
|
-
import RedoButton from "../../../Elements/Redo/RedoButton";
|
|
7
5
|
const MENU_OPTIONS = [{
|
|
8
6
|
type: "textFormat",
|
|
9
7
|
icon: TextIcon,
|
|
@@ -20,13 +18,5 @@ const MENU_OPTIONS = [{
|
|
|
20
18
|
type: "page-settings",
|
|
21
19
|
icon: PageSettingsButton,
|
|
22
20
|
label: "Page Settings"
|
|
23
|
-
}, {
|
|
24
|
-
type: "undo",
|
|
25
|
-
icon: UndoButton,
|
|
26
|
-
label: "Undo"
|
|
27
|
-
}, {
|
|
28
|
-
type: "redo",
|
|
29
|
-
icon: RedoButton,
|
|
30
|
-
label: "Redo"
|
|
31
21
|
}];
|
|
32
22
|
export default MENU_OPTIONS;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { useEffect, useRef, useState } from "react";
|
|
2
|
-
import { activeMark, addMarkData } from "../../../utils/SlateUtilityFunctions";
|
|
2
|
+
import { activeMark, addMarkData, isBlockActive } from "../../../utils/SlateUtilityFunctions";
|
|
3
3
|
import { Button, IconButton, Popover, TextField } from "@mui/material";
|
|
4
4
|
import DownArrowIcon from "../../../assets/svg/DownArrowIcon";
|
|
5
5
|
import useWindowResize from "../../../hooks/useWindowResize";
|
|
6
|
-
import { BREAKPOINTS_DEVICES, getBreakPointsValue
|
|
6
|
+
import { BREAKPOINTS_DEVICES, getBreakPointsValue } from "../../../helper/theme";
|
|
7
|
+
import { headingMap, sizeMap } from "../../../utils/font";
|
|
7
8
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
9
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
10
|
const fontSizeOptions = [8, 9, 10, 11, 12, 14, 16, 18, 20, 22, 26, 32, 36, 40, 48, 64, 96, 128];
|
|
@@ -18,7 +19,7 @@ function SelectFontSize({
|
|
|
18
19
|
const containerRef = useRef();
|
|
19
20
|
const [size] = useWindowResize();
|
|
20
21
|
const val = activeMark(editor, format);
|
|
21
|
-
const value =
|
|
22
|
+
const value = getBreakPointsValue(val, size?.device);
|
|
22
23
|
const timerRef = useRef();
|
|
23
24
|
const updateMarkData = newVal => {
|
|
24
25
|
let upData = {
|
|
@@ -52,7 +53,13 @@ function SelectFontSize({
|
|
|
52
53
|
};
|
|
53
54
|
const getSizeVal = () => {
|
|
54
55
|
try {
|
|
55
|
-
|
|
56
|
+
let size = `${value}`?.indexOf("px") >= 0 ? value : sizeMap[value] || value;
|
|
57
|
+
Object.entries(headingMap).forEach(([format, value]) => {
|
|
58
|
+
if (isBlockActive(editor, format) && isNaN(parseInt(size))) {
|
|
59
|
+
size = value;
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
return parseInt(size);
|
|
56
63
|
} catch (err) {
|
|
57
64
|
return "";
|
|
58
65
|
}
|