@flozy/editor 10.6.8 → 10.7.0
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 +16 -17
- package/dist/Editor/CommonEditor.js +13 -116
- package/dist/Editor/DialogWrapper.js +25 -31
- package/dist/Editor/Editor.css +11 -31
- package/dist/Editor/Elements/AI/PopoverAIInput.js +3 -11
- package/dist/Editor/Elements/AI/Styles.js +0 -1
- package/dist/Editor/Elements/Accordion/Accordion.js +17 -25
- package/dist/Editor/Elements/AppHeader/AppHeader.js +3 -3
- package/dist/Editor/Elements/Button/EditorButton.js +7 -23
- package/dist/Editor/Elements/Color Picker/ColorButtons.js +14 -61
- package/dist/Editor/Elements/Color Picker/ColorPicker.css +1 -25
- package/dist/Editor/Elements/Color Picker/ColorPicker.js +7 -10
- package/dist/Editor/Elements/Color Picker/Styles.js +13 -15
- package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/MultiSelect.js +454 -0
- package/dist/Editor/Elements/Embed/Video.js +1 -1
- package/dist/Editor/Elements/Form/FormField.js +1 -1
- package/dist/Editor/Elements/Form/Workflow/Styles.js +22 -24
- package/dist/Editor/Elements/FreeGrid/FreeGrid.js +30 -31
- package/dist/Editor/Elements/FreeGrid/FreeGridBox.js +4 -7
- package/dist/Editor/Elements/FreeGrid/Options/More.js +7 -7
- package/dist/Editor/Elements/FreeGrid/styles.js +0 -9
- package/dist/Editor/Elements/Grid/GridItem.js +1 -1
- package/dist/Editor/Elements/SimpleText/style.js +2 -2
- package/dist/Editor/Elements/Table/Table.js +3 -3
- package/dist/Editor/Elements/Title/title.js +6 -6
- package/dist/Editor/Elements/Variables/VariableButton.js +1 -10
- package/dist/Editor/MiniEditor.js +1 -2
- package/dist/Editor/Styles/EditorStyles.js +5 -9
- package/dist/Editor/Toolbar/FormatTools/Dropdown.js +3 -27
- package/dist/Editor/Toolbar/FormatTools/FontFamilyAutocomplete.js +3 -4
- package/dist/Editor/Toolbar/FormatTools/MarkButton.js +2 -2
- package/dist/Editor/Toolbar/FormatTools/TextSize.js +13 -10
- package/dist/Editor/Toolbar/Mini/MiniToolbar.js +1 -2
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/MiniColorPicker.js +2 -4
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +13 -6
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectList.js +2 -4
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +42 -167
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +4 -7
- package/dist/Editor/Toolbar/PopupTool/PopperHeader.js +1 -2
- package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +9 -69
- package/dist/Editor/Toolbar/PopupTool/TextFormat.js +10 -58
- package/dist/Editor/Toolbar/PopupTool/index.js +2 -5
- package/dist/Editor/Toolbar/toolbarGroups.js +6 -48
- package/dist/Editor/common/ColorPickerButton.js +16 -38
- package/dist/Editor/common/DnD/DragHandleButton.js +1 -1
- package/dist/Editor/common/FontLoader/FontLoader.js +0 -3
- package/dist/Editor/common/Icon.js +0 -28
- package/dist/Editor/common/ImageSelector/ImageSelector.js +2 -2
- package/dist/Editor/common/ImageSelector/Styles.js +9 -3
- package/dist/Editor/common/LinkSettings/NavComponents.js +2 -6
- package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Settings.js +1 -2
- package/dist/Editor/common/RnD/ElementSettings/Settings/AppHeaderSettings.js +2 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/BoxSettings.js +2 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/ButtonSettings.js +2 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/CodeSettings.js +2 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/FormSettings.js +2 -4
- package/dist/Editor/common/RnD/ElementSettings/Settings/ImageSettings.js +2 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/TableSettings.js +2 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/TextSettings.js +1 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/VideoSettings.js +2 -3
- package/dist/Editor/common/RnD/SwitchViewport/SwitchViewport.js +2 -11
- package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +3 -6
- package/dist/Editor/common/RnD/Utils/gridDropItem.js +18 -28
- package/dist/Editor/common/RnD/Utils/index.js +1 -3
- package/dist/Editor/common/RnD/VirtualElement/VirtualTextElement.js +58 -45
- package/dist/Editor/common/RnD/VirtualElement/helper.js +130 -320
- package/dist/Editor/common/RnD/VirtualElement/styles.js +0 -22
- package/dist/Editor/common/RnD/index.js +11 -42
- package/dist/Editor/common/Shorthands/elements.js +0 -54
- package/dist/Editor/common/StyleBuilder/buttonStyle.js +2 -4
- package/dist/Editor/common/StyleBuilder/embedVideoStyle.js +0 -4
- package/dist/Editor/common/StyleBuilder/fieldTypes/backgroundImage.js +0 -5
- package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +2 -12
- package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +7 -15
- package/dist/Editor/common/StyleBuilder/fieldTypes/card.js +8 -16
- package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +10 -36
- package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +7 -16
- package/dist/Editor/common/StyleBuilder/fieldTypes/index.js +1 -3
- package/dist/Editor/common/StyleBuilder/fieldTypes/menusArray.js +0 -2
- package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +7 -15
- package/dist/Editor/common/Uploader.js +0 -16
- package/dist/Editor/common/iconslist.js +0 -21
- package/dist/Editor/commonStyle.js +64 -107
- package/dist/Editor/helper/index.js +2 -7
- package/dist/Editor/helper/theme.js +2 -203
- package/dist/Editor/hooks/useMouseMove.js +3 -9
- package/dist/Editor/plugins/withEmbeds.js +1 -1
- package/dist/Editor/plugins/withHTML.js +1 -3
- package/dist/Editor/plugins/withTable.js +1 -1
- package/dist/Editor/theme/ThemeList.js +173 -50
- package/dist/Editor/utils/SlateUtilityFunctions.js +24 -229
- package/dist/Editor/utils/accordion.js +34 -62
- package/dist/Editor/utils/button.js +17 -1
- package/dist/Editor/utils/draftToSlate.js +2 -3
- package/dist/Editor/utils/font.js +37 -40
- package/dist/Editor/utils/helper.js +21 -97
- package/dist/Editor/utils/insertAppHeader.js +4 -8
- package/package.json +4 -4
- package/dist/Editor/Elements/FreeGrid/helper.js +0 -115
- package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +0 -439
- package/dist/Editor/assets/svg/BackIcon.js +0 -18
- package/dist/Editor/assets/svg/ThemeIcons.js +0 -293
- package/dist/Editor/common/CustomColorPicker/index.js +0 -130
- package/dist/Editor/common/CustomColorPicker/style.js +0 -53
- package/dist/Editor/common/CustomDialog2/index.js +0 -94
- package/dist/Editor/common/CustomDialog2/style.js +0 -67
- package/dist/Editor/common/CustomSelect.js +0 -43
- package/dist/Editor/common/RnD/Theme/MainThemeProvider.js +0 -17
- package/dist/Editor/common/StyleBuilder/fieldTypes/embedUpload.js +0 -115
- package/dist/Editor/helper/textIndeces.js +0 -58
- package/dist/Editor/hooks/useEditorTheme.js +0 -153
- package/dist/Editor/hooks/useThemeValues.js +0 -63
- package/dist/Editor/theme/index.js +0 -149
- package/dist/Editor/themeSettings/ActiveTheme.js +0 -82
- package/dist/Editor/themeSettings/buttons/index.js +0 -300
- package/dist/Editor/themeSettings/buttons/style.js +0 -23
- package/dist/Editor/themeSettings/colorTheme/index.js +0 -310
- package/dist/Editor/themeSettings/colorTheme/style.js +0 -81
- package/dist/Editor/themeSettings/fonts/PreviewElement.js +0 -121
- package/dist/Editor/themeSettings/fonts/index.js +0 -240
- package/dist/Editor/themeSettings/fonts/style.js +0 -62
- package/dist/Editor/themeSettings/icons.js +0 -60
- package/dist/Editor/themeSettings/index.js +0 -380
- package/dist/Editor/themeSettings/style.js +0 -299
- package/dist/Editor/themeSettingsAI/icons.js +0 -96
- package/dist/Editor/themeSettingsAI/index.js +0 -355
- package/dist/Editor/themeSettingsAI/saveTheme.js +0 -202
- package/dist/Editor/themeSettingsAI/style.js +0 -332
@@ -2,7 +2,6 @@ import { Transforms, Node, Path, Editor } from "slate";
|
|
2
2
|
import { ReactEditor } from "slate-react";
|
3
3
|
import { getNode, handleNegativeInteger } from "../../../utils/helper";
|
4
4
|
import { handleBoxAlignment } from "../VirtualElement/helper";
|
5
|
-
import { convertToGridArea, findMaxYValue } from "../../../Elements/FreeGrid/helper";
|
6
5
|
export const ROW_HEIGHT = 50;
|
7
6
|
|
8
7
|
// const MARGIN_OF = {
|
@@ -23,27 +22,18 @@ export function updateRows() {}
|
|
23
22
|
export function updateCols() {}
|
24
23
|
const handleMoveNode = (editor, path, newPath, {
|
25
24
|
isEmpty
|
26
|
-
}, autoAlign
|
25
|
+
}, autoAlign) => {
|
27
26
|
try {
|
28
27
|
let replaceNode = Node.get(editor, path);
|
29
|
-
let heightDiff = 0;
|
30
28
|
if (autoAlign) {
|
31
|
-
|
32
|
-
const {
|
33
|
-
gridArea,
|
34
|
-
marginTop
|
35
|
-
} = convertToGridArea(y);
|
29
|
+
// reset node for auto alignment in mobile
|
36
30
|
replaceNode = {
|
37
31
|
...replaceNode,
|
38
|
-
gridArea_xs:
|
39
|
-
|
40
|
-
|
32
|
+
gridArea_xs: null,
|
33
|
+
xs_updatedOn: null,
|
34
|
+
marginTop_xs: null
|
41
35
|
};
|
42
|
-
const newHeight = y + replaceNode?.height_xs + 12;
|
43
|
-
const diffH = newHeight - moveToNode?.height_xs;
|
44
|
-
heightDiff = diffH >= 0 ? diffH : 0;
|
45
36
|
}
|
46
|
-
let rPath;
|
47
37
|
if (isEmpty) {
|
48
38
|
const toPath = [...newPath, 0];
|
49
39
|
Transforms.insertNodes(editor, [{
|
@@ -54,7 +44,7 @@ const handleMoveNode = (editor, path, newPath, {
|
|
54
44
|
Transforms.removeNodes(editor, {
|
55
45
|
at: path
|
56
46
|
});
|
57
|
-
|
47
|
+
return toPath;
|
58
48
|
} else {
|
59
49
|
Transforms.insertNodes(editor, [{
|
60
50
|
...replaceNode
|
@@ -64,12 +54,8 @@ const handleMoveNode = (editor, path, newPath, {
|
|
64
54
|
Transforms.removeNodes(editor, {
|
65
55
|
at: path
|
66
56
|
});
|
67
|
-
|
57
|
+
return newPath;
|
68
58
|
}
|
69
|
-
return {
|
70
|
-
rPath,
|
71
|
-
heightDiff
|
72
|
-
};
|
73
59
|
} catch (err) {
|
74
60
|
console.log(err);
|
75
61
|
console.log("Drop Node error");
|
@@ -224,7 +210,7 @@ export function onDropItem(props, parentClass) {
|
|
224
210
|
at: moveTo,
|
225
211
|
match: n => n.type === "freegrid"
|
226
212
|
});
|
227
|
-
const [, sectionPath] = sectionData || [];
|
213
|
+
const [sectionNode, sectionPath] = sectionData || [];
|
228
214
|
if (needMove && isInsidePath(from, moveTo)) {
|
229
215
|
reRenderSectionPath = sectionPath;
|
230
216
|
} else {
|
@@ -243,6 +229,13 @@ export function onDropItem(props, parentClass) {
|
|
243
229
|
const isBoxHeader = currentNode?.childType === "appHeader" && moveTo?.length > 2;
|
244
230
|
if (isBoxHeader) {
|
245
231
|
// will handle on <BoxHeaderAutoAlignment />
|
232
|
+
} else if (moveTo?.length === 2 && autoAlign) {
|
233
|
+
// auto align in mobile
|
234
|
+
Transforms.setNodes(editor, {
|
235
|
+
xs_updatedOn: new Date().getTime()
|
236
|
+
}, {
|
237
|
+
at: moveTo
|
238
|
+
});
|
246
239
|
} else if (autoAlign) {
|
247
240
|
Transforms.setNodes(editor, {
|
248
241
|
autoAlign: true,
|
@@ -251,15 +244,12 @@ export function onDropItem(props, parentClass) {
|
|
251
244
|
at: moveTo
|
252
245
|
});
|
253
246
|
}
|
254
|
-
const {
|
255
|
-
rPath,
|
256
|
-
heightDiff
|
257
|
-
} = handleMoveNode(editor, path, newPath, {
|
247
|
+
const rPath = handleMoveNode(editor, path, newPath, {
|
258
248
|
isEmpty
|
259
|
-
}, autoAlign
|
249
|
+
}, autoAlign);
|
260
250
|
reRenderChildNodes(editor, reRenderSectionPath || moveTo);
|
261
251
|
if (autoAlign && !isBoxHeader) {
|
262
|
-
handleBoxAlignment(editor,
|
252
|
+
handleBoxAlignment(editor, sectionNode, sectionPath);
|
263
253
|
}
|
264
254
|
return {
|
265
255
|
updated_at: rPath
|
@@ -87,9 +87,7 @@ export function updatePositions(props, closestClass) {
|
|
87
87
|
newPath = [...newPath, toSectionNode?.children?.length];
|
88
88
|
}
|
89
89
|
newPath = newPath.map(m => parseInt(m));
|
90
|
-
const {
|
91
|
-
rPath
|
92
|
-
} = handleMoveNode(editor, path, newPath, {
|
90
|
+
const rPath = handleMoveNode(editor, path, newPath, {
|
93
91
|
isEmpty
|
94
92
|
});
|
95
93
|
// to update path index need to re-render items in parent sections
|
@@ -1,45 +1,69 @@
|
|
1
1
|
import { useEffect, useRef } from "react";
|
2
|
+
import { Path, Transforms } from "slate";
|
2
3
|
import { getNode } from "../../../utils/helper";
|
3
4
|
import { ROW_HEIGHT } from "../Utils/gridDropItem";
|
4
|
-
import { getGridArea,
|
5
|
+
import { findFirstRowOverlap, getGridArea, handleContainers, moveOverlappedItems } from "./helper";
|
5
6
|
import { Box } from "@mui/material";
|
6
7
|
import { jsx as _jsx } from "react/jsx-runtime";
|
7
|
-
|
8
|
-
|
9
|
-
height,
|
10
|
-
gridArea,
|
11
|
-
marginTop
|
12
|
-
} = getNodeValues(element, breakpoint);
|
13
|
-
const [startRow] = getGridArea(gridArea);
|
14
|
-
const top = (startRow - 1) * ROW_HEIGHT + marginTop;
|
15
|
-
const bottom = top + height;
|
16
|
-
return {
|
17
|
-
top,
|
18
|
-
bottom
|
19
|
-
};
|
20
|
-
};
|
21
|
-
export const updateTextHeight = (editor, path, currHeight, updateBreakpoint) => {
|
22
|
-
if (!currHeight) {
|
8
|
+
const updateTextHeight = (editor, path, height) => {
|
9
|
+
if (!height) {
|
23
10
|
return;
|
24
11
|
}
|
25
|
-
const
|
26
|
-
|
12
|
+
const parentPath = Path.parent(path);
|
13
|
+
const currentNode = getNode(editor, parentPath);
|
14
|
+
const gridItems = currentNode?.children || [];
|
15
|
+
const isNewlyAddedElement = gridItems.some(gridItem => !gridItem.gridArea_xs && gridItem.type !== "paragraph");
|
16
|
+
if (isNewlyAddedElement) {
|
27
17
|
return;
|
28
18
|
}
|
19
|
+
const textItemIndex = path[parentPath.length];
|
20
|
+
const textItem = gridItems.find((_, index) => textItemIndex === index);
|
29
21
|
const {
|
30
|
-
|
31
|
-
gridArea,
|
32
|
-
|
33
|
-
} =
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
const
|
42
|
-
|
22
|
+
marginTop_xs: marginTop,
|
23
|
+
gridArea_xs: gridArea,
|
24
|
+
height_xs
|
25
|
+
} = textItem;
|
26
|
+
const oldHeight = height_xs + marginTop;
|
27
|
+
const newHeight = height + marginTop;
|
28
|
+
const extraHeight = newHeight - oldHeight;
|
29
|
+
let containerExtraHeight = extraHeight;
|
30
|
+
if (extraHeight > 0) {
|
31
|
+
const [startRow] = getGridArea(gridArea);
|
32
|
+
const newRows = Math.floor(newHeight / ROW_HEIGHT) + 1;
|
33
|
+
const endRow = startRow + newRows;
|
34
|
+
const firstOverlappedRow = findFirstRowOverlap(gridItems, startRow, endRow, textItemIndex);
|
35
|
+
if (firstOverlappedRow) {
|
36
|
+
const moveRows = endRow - firstOverlappedRow;
|
37
|
+
moveOverlappedItems(editor, moveRows, gridItems, parentPath, textItemIndex, startRow);
|
38
|
+
containerExtraHeight += moveRows * ROW_HEIGHT;
|
39
|
+
}
|
40
|
+
|
41
|
+
// handle containers (box and section)
|
42
|
+
const containerData = handleContainers(editor, parentPath, containerExtraHeight);
|
43
|
+
containerData.forEach(container => {
|
44
|
+
const {
|
45
|
+
moveRows,
|
46
|
+
containerNode,
|
47
|
+
containerPath,
|
48
|
+
newHeight,
|
49
|
+
childIndex,
|
50
|
+
lastChildStartRow
|
51
|
+
} = container;
|
52
|
+
if (moveRows) {
|
53
|
+
moveOverlappedItems(editor, moveRows, containerNode?.children, containerPath, childIndex, lastChildStartRow);
|
54
|
+
}
|
55
|
+
Transforms.setNodes(editor, {
|
56
|
+
height_xs: newHeight,
|
57
|
+
xs_updatedOn: new Date().getTime()
|
58
|
+
}, {
|
59
|
+
at: containerPath
|
60
|
+
});
|
61
|
+
});
|
62
|
+
Transforms.setNodes(editor, {
|
63
|
+
height_xs: height
|
64
|
+
}, {
|
65
|
+
at: path
|
66
|
+
});
|
43
67
|
}
|
44
68
|
};
|
45
69
|
function VirtualTextElement(props) {
|
@@ -59,9 +83,9 @@ function VirtualTextElement(props) {
|
|
59
83
|
height
|
60
84
|
} = entry.contentRect;
|
61
85
|
const currentText = currElement?.innerText;
|
62
|
-
const prevText = prevTextRef
|
86
|
+
const prevText = prevTextRef.current;
|
63
87
|
if (currentText && currentText !== prevText) {
|
64
|
-
updateTextHeight(editor, path, height
|
88
|
+
updateTextHeight(editor, path, height);
|
65
89
|
}
|
66
90
|
prevTextRef.current = currentText;
|
67
91
|
}
|
@@ -98,17 +122,6 @@ function VirtualTextElement(props) {
|
|
98
122
|
},
|
99
123
|
"& .editor-blocker": {
|
100
124
|
display: "none"
|
101
|
-
},
|
102
|
-
"& .fgi_type_text": {
|
103
|
-
"& .edt-headings": {
|
104
|
-
margin: "0px"
|
105
|
-
},
|
106
|
-
"& .edt-paragraphs": {
|
107
|
-
margin: "0px"
|
108
|
-
},
|
109
|
-
"& blockquote": {
|
110
|
-
margin: "0px !important"
|
111
|
-
}
|
112
125
|
}
|
113
126
|
},
|
114
127
|
dangerouslySetInnerHTML: {
|