@flozy/editor 11.1.9 → 11.2.2
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 +7 -7
- package/dist/Editor/CommonEditor.js +24 -86
- package/dist/Editor/DialogWrapper.js +25 -31
- package/dist/Editor/Editor.css +4 -37
- package/dist/Editor/Elements/AI/PopoverAIInput.js +3 -11
- package/dist/Editor/Elements/AppHeader/AppHeader.js +3 -3
- package/dist/Editor/Elements/Attachments/Attachments.js +11 -154
- package/dist/Editor/Elements/Attachments/AttachmentsButton.js +3 -8
- package/dist/Editor/Elements/Button/EditorButton.js +7 -22
- 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/Select.js +55 -134
- package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/SelectV1.js +8 -7
- package/dist/Editor/Elements/DataView/Layouts/DataTypes/PersonType.js +3 -8
- package/dist/Editor/Elements/DataView/Layouts/Options/EditProperty.js +1 -1
- package/dist/Editor/Elements/DataView/Layouts/TableStyles.js +1 -1
- package/dist/Editor/Elements/Embed/Embed.js +43 -37
- package/dist/Editor/Elements/Embed/Image.js +22 -242
- package/dist/Editor/Elements/Embed/Video.js +32 -277
- package/dist/Editor/Elements/EmbedScript/EmbedScriptPopup.js +6 -9
- package/dist/Editor/Elements/EmbedScript/styles.js +1 -17
- package/dist/Editor/Elements/Form/FormField.js +1 -1
- package/dist/Editor/Elements/Form/Workflow/Styles.js +22 -24
- package/dist/Editor/Elements/Form/Workflow/constant.js +1 -25
- package/dist/Editor/Elements/FreeGrid/FreeGrid.js +76 -37
- package/dist/Editor/Elements/FreeGrid/FreeGridBox.js +5 -9
- package/dist/Editor/Elements/FreeGrid/FreeGridItem.js +1 -3
- package/dist/Editor/Elements/FreeGrid/styles.js +0 -15
- package/dist/Editor/Elements/Grid/GridItem.js +1 -1
- package/dist/Editor/Elements/PageSettings/PageSettingsButton.js +1 -2
- package/dist/Editor/Elements/Table/Table.js +1 -2
- package/dist/Editor/Elements/Table/TableCell.js +3 -10
- package/dist/Editor/Elements/Title/title.js +5 -4
- package/dist/Editor/Elements/TopBanner/TopBanner.js +2 -4
- package/dist/Editor/Elements/TopBanner/TopBannerButton.js +3 -5
- package/dist/Editor/Styles/EditorStyles.js +5 -19
- 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 +29 -33
- package/dist/Editor/Toolbar/Mini/MiniToolbar.js +1 -2
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/MiniColorPicker.js +1 -3
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +23 -25
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +42 -167
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +5 -15
- package/dist/Editor/Toolbar/PopupTool/PopperHeader.js +1 -2
- package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +7 -65
- package/dist/Editor/Toolbar/PopupTool/TextFormat.js +12 -66
- package/dist/Editor/Toolbar/PopupTool/index.js +4 -6
- package/dist/Editor/Toolbar/toolbarGroups.js +6 -48
- package/dist/Editor/common/ColorPickerButton.js +19 -38
- package/dist/Editor/common/DnD/DragHandleButton.js +1 -1
- package/dist/Editor/common/FontLoader/FontLoader.js +0 -1
- package/dist/Editor/common/Icon.js +0 -28
- package/dist/Editor/common/ImageSelector/ImageSelector.js +7 -45
- package/dist/Editor/common/ImageSelector/Options/Upload.js +11 -26
- package/dist/Editor/common/ImageSelector/Styles.js +9 -3
- 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 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/ImageSettings.js +7 -20
- package/dist/Editor/common/RnD/ElementSettings/Settings/TableSettings.js +2 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/TextSettings.js +0 -2
- package/dist/Editor/common/RnD/ElementSettings/Settings/VideoSettings.js +7 -20
- package/dist/Editor/common/RnD/GuideLines/styles.js +1 -1
- package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +3 -6
- package/dist/Editor/common/RnD/Utils/gridDropItem.js +11 -28
- package/dist/Editor/common/RnD/Utils/index.js +1 -3
- package/dist/Editor/common/RnD/VirtualElement/VirtualTextElement.js +63 -52
- package/dist/Editor/common/RnD/VirtualElement/helper.js +68 -248
- package/dist/Editor/common/RnD/VirtualElement/styles.js +0 -22
- package/dist/Editor/common/RnD/index.js +14 -61
- 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/fieldStyle.js +0 -1
- package/dist/Editor/common/StyleBuilder/fieldTypes/backgroundImage.js +2 -10
- 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/color.js +10 -36
- package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +4 -13
- package/dist/Editor/common/StyleBuilder/fieldTypes/menusArray.js +0 -2
- package/dist/Editor/common/StyleBuilder/fieldTypes/text.js +4 -16
- package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +7 -15
- package/dist/Editor/common/StyleBuilder/formStyle.js +13 -19
- package/dist/Editor/common/StyleBuilder/index.js +4 -8
- package/dist/Editor/common/Uploader.js +17 -118
- package/dist/Editor/common/iconslist.js +0 -21
- package/dist/Editor/commonStyle.js +53 -111
- package/dist/Editor/helper/index.js +1 -4
- package/dist/Editor/helper/theme.js +2 -203
- package/dist/Editor/hooks/useMouseMove.js +3 -12
- package/dist/Editor/hooks/useTable.js +1 -62
- package/dist/Editor/plugins/withEmbeds.js +1 -1
- package/dist/Editor/plugins/withHTML.js +3 -56
- package/dist/Editor/plugins/withTable.js +1 -1
- package/dist/Editor/service/fileupload.js +0 -70
- package/dist/Editor/theme/ThemeList.js +173 -50
- package/dist/Editor/utils/SlateUtilityFunctions.js +38 -163
- package/dist/Editor/utils/accordion.js +1 -1
- package/dist/Editor/utils/button.js +17 -1
- package/dist/Editor/utils/font.js +37 -40
- package/dist/Editor/utils/formfield.js +2 -2
- package/dist/Editor/utils/helper.js +3 -101
- package/dist/Editor/utils/insertAppHeader.js +4 -8
- package/package.json +1 -1
- package/dist/Editor/Elements/Attachments/AttachmentStyles.js +0 -16
- package/dist/Editor/Elements/FreeGrid/helper.js +0 -194
- 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/UploaderWithProgress.js +0 -183
- 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
@@ -1,141 +1,33 @@
|
|
1
|
-
import React
|
2
|
-
import Box from
|
3
|
-
import Card from '@mui/material/Card';
|
4
|
-
import CardMedia from '@mui/material/CardMedia';
|
5
|
-
import CardContent from '@mui/material/CardContent';
|
6
|
-
import Typography from '@mui/material/Typography';
|
7
|
-
import CircularProgress from '@mui/material/CircularProgress';
|
8
|
-
import IconButton from '@mui/material/IconButton';
|
1
|
+
import React from "react";
|
2
|
+
import { Box, Card, CardMedia, CardContent, Typography } from "@mui/material";
|
9
3
|
import PictureAsPdfIcon from "@mui/icons-material/PictureAsPdf";
|
10
4
|
import TextSnippetIcon from "@mui/icons-material/TextSnippet";
|
11
|
-
import HighlightOffRoundedIcon from "@mui/icons-material/HighlightOffRounded";
|
12
|
-
import { Transforms } from "slate";
|
13
|
-
import { ReactEditor, useSlateStatic } from "slate-react";
|
14
5
|
import { formatDate } from "../../utils/helper";
|
15
6
|
import Icon from "../../common/Icon";
|
16
7
|
import { getEmbedURL } from "../../helper";
|
17
8
|
import Video from "../Embed/Video";
|
18
|
-
import { formatFileSize } from "../../service/fileupload";
|
19
|
-
import { useEditorContext } from "../../hooks/useMouseMove";
|
20
|
-
import useAttachmentStyle from "./AttachmentStyles";
|
21
9
|
import { jsx as _jsx } from "react/jsx-runtime";
|
22
|
-
import { Fragment as _Fragment } from "react/jsx-runtime";
|
23
10
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
24
11
|
const Attachments = props => {
|
25
12
|
const {
|
26
13
|
attributes,
|
27
14
|
element,
|
28
|
-
children
|
29
|
-
customProps
|
15
|
+
children
|
30
16
|
} = props;
|
31
17
|
const {
|
32
18
|
url,
|
33
19
|
type,
|
34
|
-
date
|
35
|
-
fileName,
|
36
|
-
isUploading,
|
37
|
-
file,
|
38
|
-
fileSize,
|
39
|
-
uniqueId
|
20
|
+
date
|
40
21
|
} = element;
|
41
|
-
const {
|
42
|
-
resumeUploadState,
|
43
|
-
services,
|
44
|
-
uploadFile,
|
45
|
-
uploadTerminator
|
46
|
-
} = customProps || {};
|
47
22
|
const {
|
48
23
|
isEmbed
|
49
24
|
} = getEmbedURL(element, true);
|
50
25
|
const getLastName = url?.split("/").pop();
|
51
|
-
const
|
52
|
-
const editor = useSlateStatic();
|
53
|
-
const {
|
54
|
-
theme
|
55
|
-
} = useEditorContext();
|
56
|
-
const classes = useAttachmentStyle(theme);
|
57
|
-
const path = ReactEditor.findPath(editor, element);
|
58
|
-
const [redirectURL, setRedirectURL] = useState(isUploading ? null : url);
|
59
|
-
const [uploadStatus, setUploadStatus] = useState({
|
60
|
-
isUploading: !!isUploading,
|
61
|
-
uploadPercentage: 0,
|
62
|
-
fileName: fileName || fileName2,
|
63
|
-
fileSize: fileSize
|
64
|
-
});
|
65
|
-
const xhrRef = useRef(null);
|
66
|
-
const cancelUpload = () => {
|
67
|
-
Transforms.removeNodes(editor, {
|
68
|
-
at: path
|
69
|
-
});
|
70
|
-
uploadTerminator(uniqueId, setUploadStatus);
|
71
|
-
};
|
72
|
-
const onSave = url => {
|
73
|
-
setRedirectURL(url);
|
74
|
-
Transforms.setNodes(editor, {
|
75
|
-
url: url,
|
76
|
-
isUploading: false
|
77
|
-
}, {
|
78
|
-
at: path
|
79
|
-
});
|
80
|
-
setUploadStatus({
|
81
|
-
isUploading: false,
|
82
|
-
uploadPercentage: 0,
|
83
|
-
fileName: null,
|
84
|
-
fileSize: null
|
85
|
-
});
|
86
|
-
};
|
87
|
-
const handleFileUpload = async () => {
|
88
|
-
if (!file) return;
|
89
|
-
try {
|
90
|
-
const id = !uniqueId ? crypto?.randomUUID() : uniqueId;
|
91
|
-
const result = await services("uploadFile", file);
|
92
|
-
const uploadUrl = result?.data?.[0];
|
93
|
-
const fileEntry = {
|
94
|
-
file: file,
|
95
|
-
xhrRef,
|
96
|
-
presidnedURL: uploadUrl,
|
97
|
-
status: "uploading"
|
98
|
-
};
|
99
|
-
uploadFile(id, fileEntry, setUploadStatus, onSave, "document");
|
100
|
-
Transforms.setNodes(editor, {
|
101
|
-
uniqueId: id,
|
102
|
-
isUploading: true
|
103
|
-
}, {
|
104
|
-
at: path
|
105
|
-
});
|
106
|
-
} catch (error) {
|
107
|
-
console.error("Upload failed:", error);
|
108
|
-
setUploadStatus(prev => ({
|
109
|
-
...prev,
|
110
|
-
isUploading: false,
|
111
|
-
uploadPercentage: 0
|
112
|
-
}));
|
113
|
-
}
|
114
|
-
};
|
115
|
-
const noUploadTracks = () => {
|
116
|
-
setUploadStatus({
|
117
|
-
isUploading: false,
|
118
|
-
uploadPercentage: 0,
|
119
|
-
fileName: null,
|
120
|
-
fileSize: null
|
121
|
-
});
|
122
|
-
setRedirectURL(null);
|
123
|
-
Transforms.removeNodes(editor, {
|
124
|
-
at: path
|
125
|
-
});
|
126
|
-
};
|
127
|
-
useEffect(() => {
|
128
|
-
if (uniqueId && isUploading) {
|
129
|
-
resumeUploadState(uniqueId, setUploadStatus, onSave, noUploadTracks, "document");
|
130
|
-
} else if (file && isUploading) {
|
131
|
-
handleFileUpload();
|
132
|
-
}
|
133
|
-
}, []);
|
26
|
+
const fileName = `${decodeURIComponent(getLastName)}`;
|
134
27
|
return !isEmbed ? /*#__PURE__*/_jsxs(Box, {
|
135
28
|
component: "div",
|
136
29
|
className: "attachment-wrpr-ev2",
|
137
30
|
...attributes,
|
138
|
-
sx: classes?.attachmentRoot,
|
139
31
|
contentEditable: false,
|
140
32
|
style: {
|
141
33
|
display: "block"
|
@@ -149,8 +41,7 @@ const Attachments = props => {
|
|
149
41
|
padding: "8px",
|
150
42
|
boxShadow: "none",
|
151
43
|
border: "1px solid #eae9e9",
|
152
|
-
backgroundColor: "#F7F7F7"
|
153
|
-
position: "relative"
|
44
|
+
backgroundColor: "#F7F7F7"
|
154
45
|
},
|
155
46
|
children: [/*#__PURE__*/_jsx(CardMedia, {
|
156
47
|
sx: {
|
@@ -176,7 +67,7 @@ const Attachments = props => {
|
|
176
67
|
})
|
177
68
|
}), /*#__PURE__*/_jsxs(CardContent, {
|
178
69
|
component: "a",
|
179
|
-
href:
|
70
|
+
href: url,
|
180
71
|
target: "_blank",
|
181
72
|
style: {
|
182
73
|
display: "flex",
|
@@ -185,9 +76,7 @@ const Attachments = props => {
|
|
185
76
|
padding: "8px",
|
186
77
|
textDecoration: "none",
|
187
78
|
flexDirection: "column",
|
188
|
-
color: "#0F172A"
|
189
|
-
flexGrow: uploadStatus?.isUploading && 1,
|
190
|
-
width: "80%"
|
79
|
+
color: "#0F172A"
|
191
80
|
},
|
192
81
|
children: [/*#__PURE__*/_jsx(Typography, {
|
193
82
|
style: {
|
@@ -196,48 +85,16 @@ const Attachments = props => {
|
|
196
85
|
fontSize: "14px"
|
197
86
|
},
|
198
87
|
component: "div",
|
199
|
-
|
200
|
-
|
201
|
-
}), /*#__PURE__*/_jsxs(Typography, {
|
88
|
+
children: fileName
|
89
|
+
}), /*#__PURE__*/_jsx(Typography, {
|
202
90
|
style: {
|
203
91
|
fontWeight: "normal",
|
204
92
|
color: "#64748b",
|
205
93
|
fontSize: "11px"
|
206
94
|
},
|
207
95
|
component: "div",
|
208
|
-
|
209
|
-
children: [uploadStatus?.isUploading && /*#__PURE__*/_jsxs(_Fragment, {
|
210
|
-
children: [/*#__PURE__*/_jsx(Typography, {
|
211
|
-
sx: {
|
212
|
-
fontSize: 12,
|
213
|
-
color: "#64748b"
|
214
|
-
},
|
215
|
-
children: `${formatFileSize(fileSize)}`
|
216
|
-
}), /*#__PURE__*/_jsx(CircularProgress, {
|
217
|
-
variant: "determinate",
|
218
|
-
value: uploadStatus?.uploadPercentage ?? 0,
|
219
|
-
size: 20,
|
220
|
-
thickness: 5
|
221
|
-
}), /*#__PURE__*/_jsx(Typography, {
|
222
|
-
sx: {
|
223
|
-
fontSize: 12,
|
224
|
-
color: "#64748b"
|
225
|
-
},
|
226
|
-
children: `${uploadStatus?.uploadPercentage?.toFixed(0) ?? 0}%`
|
227
|
-
})]
|
228
|
-
}), !uploadStatus?.isUploading && formatDate(date)]
|
96
|
+
children: formatDate(date)
|
229
97
|
})]
|
230
|
-
}), uploadStatus?.isUploading && /*#__PURE__*/_jsx(IconButton, {
|
231
|
-
onClick: cancelUpload,
|
232
|
-
sx: {
|
233
|
-
position: "absolute",
|
234
|
-
right: 4,
|
235
|
-
top: 4
|
236
|
-
},
|
237
|
-
"aria-label": "Cancel upload",
|
238
|
-
size: "small",
|
239
|
-
className: "cancelBtn",
|
240
|
-
children: /*#__PURE__*/_jsx(HighlightOffRoundedIcon, {})
|
241
98
|
})]
|
242
99
|
}), /*#__PURE__*/_jsx("span", {
|
243
100
|
contentEditable: false,
|
@@ -4,7 +4,6 @@ import ToolbarIcon from "../../common/ToolbarIcon";
|
|
4
4
|
import Icon from "../../common/Icon";
|
5
5
|
import ImageSelector from "../../common/ImageSelector/ImageSelector";
|
6
6
|
import { insertAttachments } from "../../utils/attachments";
|
7
|
-
import { insertUploadStatusNodeForAttachment } from "../../service/fileupload";
|
8
7
|
import { jsx as _jsx } from "react/jsx-runtime";
|
9
8
|
import { Fragment as _Fragment } from "react/jsx-runtime";
|
10
9
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
@@ -22,13 +21,9 @@ const AttachmentsButton = props => {
|
|
22
21
|
SetOpen(true);
|
23
22
|
};
|
24
23
|
const onSelectImage = url => {
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
});
|
29
|
-
} else {
|
30
|
-
insertUploadStatusNodeForAttachment(editor, url?.file);
|
31
|
-
}
|
24
|
+
insertAttachments(editor, {
|
25
|
+
url
|
26
|
+
});
|
32
27
|
handleClose();
|
33
28
|
};
|
34
29
|
const handleClose = () => {
|
@@ -9,8 +9,6 @@ import { WorkflowIcon } from "../../common/iconslist";
|
|
9
9
|
import { getTRBLBreakPoints, getBreakPointsValue, groupByBreakpoint } from "../../helper/theme";
|
10
10
|
import { handleLinkType, windowVar } from "../../utils/helper";
|
11
11
|
import LinkSettings from "../../common/LinkSettings";
|
12
|
-
import { useEditorTheme } from "../../hooks/useEditorTheme";
|
13
|
-
import { getTheme } from "../../theme";
|
14
12
|
import Icon from "../../common/Icon";
|
15
13
|
import { useEditorContext } from "../../hooks/useMouseMove";
|
16
14
|
import useCommonStyle from "../../commonStyle";
|
@@ -42,12 +40,6 @@ const EditorButton = props => {
|
|
42
40
|
const [openMoreOptions, setOpenMoreOptions] = useState(false);
|
43
41
|
const [, setIconLoaded] = useState(false);
|
44
42
|
const classes = useCommonStyle(appTheme);
|
45
|
-
const {
|
46
|
-
theme: selectedTheme
|
47
|
-
} = useEditorTheme();
|
48
|
-
const {
|
49
|
-
buttonTheme
|
50
|
-
} = getTheme(selectedTheme);
|
51
43
|
const {
|
52
44
|
label,
|
53
45
|
bgColor,
|
@@ -61,8 +53,8 @@ const EditorButton = props => {
|
|
61
53
|
fontFamily,
|
62
54
|
textColorHover,
|
63
55
|
bgColorHover,
|
64
|
-
// buttonIcon,
|
65
56
|
borderColorHover,
|
57
|
+
buttonIcon,
|
66
58
|
iconPosition = "start",
|
67
59
|
borderStyle,
|
68
60
|
borderWidth,
|
@@ -83,7 +75,6 @@ const EditorButton = props => {
|
|
83
75
|
};
|
84
76
|
const isTrigger = linkType === "nextTrigger" || linkType === "prevTrigger";
|
85
77
|
const refURl = isTrigger ? buttonLink?.url : url;
|
86
|
-
const buttonIcon = element?.buttonIcon || buttonTheme?.buttonIcon;
|
87
78
|
const BtnIcon = buttonIcon ? buttonIcon : null;
|
88
79
|
windowVar.lastButtonProps = element;
|
89
80
|
const handleTrigger = async () => {
|
@@ -274,14 +265,19 @@ const EditorButton = props => {
|
|
274
265
|
display: "inline-block"
|
275
266
|
},
|
276
267
|
children: [/*#__PURE__*/_jsxs(Box, {
|
277
|
-
className: `btn textAlign-${tAlign} button theme-element`,
|
278
268
|
ref: buttonRef,
|
269
|
+
className: `btn textAlign-${tAlign}`,
|
279
270
|
sx: {
|
280
271
|
textDecoration: "none",
|
272
|
+
background: bgColor || "rgb(30, 75, 122)",
|
281
273
|
borderBlockStyle: "solid",
|
274
|
+
borderColor: borderColor || "transparent",
|
282
275
|
borderWidth: borderWidth !== undefined ? borderWidth : borderColor || borderColorHover ? "1px" : "0px",
|
283
276
|
...btnSp,
|
284
277
|
borderStyle: borderStyle || "solid",
|
278
|
+
color: `${textColor || "#FFFFFF"}`,
|
279
|
+
fontSize: textSize || "inherit",
|
280
|
+
fontFamily: fontFamily || "PoppinsRegular",
|
285
281
|
display: "inline-flex",
|
286
282
|
alignItems: "center",
|
287
283
|
position: "relative",
|
@@ -296,17 +292,6 @@ const EditorButton = props => {
|
|
296
292
|
"& .element-toolbar": {
|
297
293
|
display: "flex"
|
298
294
|
}
|
299
|
-
},
|
300
|
-
color: textColor ? `${textColor} !important` : "#FFFFFF",
|
301
|
-
fontSize: textSize ? `${textSize}px !important` : "inherit",
|
302
|
-
fontFamily: fontFamily ? `${fontFamily} !important` : "PoppinsRegular",
|
303
|
-
background: `${bgColor} !important`,
|
304
|
-
borderColor: `${borderColor} !important`,
|
305
|
-
borderRadius: {
|
306
|
-
...getBreakPointsValue(borderRadius || buttonTheme?.borderRadius || {}, null, "overrideBorderRadius", true)
|
307
|
-
},
|
308
|
-
padding: {
|
309
|
-
...getTRBLBreakPoints(bannerSpacing || buttonTheme?.bannerSpacing || {})
|
310
295
|
}
|
311
296
|
},
|
312
297
|
...buttonProps,
|
@@ -1,15 +1,11 @@
|
|
1
1
|
import React, { useState } from "react";
|
2
|
-
import { Box, IconButton, Popover
|
2
|
+
import { Box, IconButton, Popover } from "@mui/material";
|
3
3
|
import KeyboardArrowDownRoundedIcon from "@mui/icons-material/KeyboardArrowDownRounded";
|
4
4
|
import Button from "../../common/Button";
|
5
5
|
import { colors } from "./defaultColors";
|
6
6
|
import ColorPicker from "./colorPicker.svg";
|
7
|
-
import { useSlateStatic } from "slate-react";
|
8
|
-
import { Transforms } from "slate";
|
9
|
-
import { useEditorContext } from "../../hooks/useMouseMove";
|
10
7
|
import { jsx as _jsx } from "react/jsx-runtime";
|
11
8
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
12
|
-
import { Fragment as _Fragment } from "react/jsx-runtime";
|
13
9
|
let c = [];
|
14
10
|
const ColorChunks = (recentColors = []) => [...recentColors, ...colors].reduce((a, b, i) => {
|
15
11
|
if (i % 7 === 0) {
|
@@ -36,8 +32,8 @@ const SingleColorButton = ({
|
|
36
32
|
width: "100%",
|
37
33
|
display: "flex",
|
38
34
|
alignItems: "center",
|
39
|
-
padding: padding || "8px 0px"
|
40
|
-
|
35
|
+
padding: padding || "8px 0px",
|
36
|
+
justifyContent: "center"
|
41
37
|
},
|
42
38
|
children: [crs.map(m => /*#__PURE__*/_jsx(Button, {
|
43
39
|
onClick: handleSelect(m),
|
@@ -114,18 +110,12 @@ const ColorButtons = props => {
|
|
114
110
|
openColorTool,
|
115
111
|
onClose,
|
116
112
|
onColorPickerClick,
|
117
|
-
disableEditTheme,
|
118
113
|
defaultColors = []
|
119
114
|
} = props;
|
120
115
|
const [row1, ...restRows] = ColorChunks([]);
|
121
116
|
const [anchorEl, setAnchorEl] = useState(null);
|
122
117
|
const open = Boolean(anchorEl);
|
123
118
|
const firstRow = defaultColors?.length ? defaultColors : row1;
|
124
|
-
const theme = useTheme();
|
125
|
-
const editor = useSlateStatic();
|
126
|
-
const {
|
127
|
-
setOpenTheme
|
128
|
-
} = useEditorContext();
|
129
119
|
const handleMore = e => {
|
130
120
|
setAnchorEl(e.currentTarget);
|
131
121
|
};
|
@@ -138,7 +128,6 @@ const ColorButtons = props => {
|
|
138
128
|
const handleSelect = color => () => {
|
139
129
|
onSelect(color);
|
140
130
|
};
|
141
|
-
const colorVars = theme?.vars?.colors || {};
|
142
131
|
return /*#__PURE__*/_jsxs(Box, {
|
143
132
|
component: "span",
|
144
133
|
sx: classes.colorButtons,
|
@@ -155,7 +144,7 @@ const ColorButtons = props => {
|
|
155
144
|
activeColor: activeColor
|
156
145
|
}, `si_btn_row1_${m}_${i}`);
|
157
146
|
})
|
158
|
-
}), /*#__PURE__*/
|
147
|
+
}), /*#__PURE__*/_jsxs(Popover, {
|
159
148
|
open: open || openColorTool,
|
160
149
|
anchorEl: anchorEl || openColorTool,
|
161
150
|
onClose: handleClose,
|
@@ -169,40 +158,9 @@ const ColorButtons = props => {
|
|
169
158
|
},
|
170
159
|
sx: classes.colorPopper,
|
171
160
|
className: "colorPopper",
|
172
|
-
children: /*#__PURE__*/
|
161
|
+
children: [/*#__PURE__*/_jsx(Box, {
|
173
162
|
sx: classes.colorButtonsInner,
|
174
|
-
children:
|
175
|
-
children: [/*#__PURE__*/_jsxs(Box, {
|
176
|
-
component: "div",
|
177
|
-
className: "singleColorTitleWrapper",
|
178
|
-
children: [/*#__PURE__*/_jsx(Typography, {
|
179
|
-
variant: "subtitle2",
|
180
|
-
children: "Theme colours"
|
181
|
-
}), disableEditTheme ? null : /*#__PURE__*/_jsx("div", {
|
182
|
-
className: "editBtn",
|
183
|
-
onClick: () => {
|
184
|
-
Transforms.deselect(editor, {
|
185
|
-
at: editor.selection
|
186
|
-
});
|
187
|
-
handleClose();
|
188
|
-
setOpenTheme("editThemeColor");
|
189
|
-
},
|
190
|
-
children: "Edit"
|
191
|
-
})]
|
192
|
-
}), /*#__PURE__*/_jsx(SingleColorButton, {
|
193
|
-
crs: Object.values(colorVars),
|
194
|
-
handleSelect: handleSelect,
|
195
|
-
classes: classes,
|
196
|
-
activeColor: activeColor
|
197
|
-
})]
|
198
|
-
}) : null, /*#__PURE__*/_jsx(Box, {
|
199
|
-
component: "div",
|
200
|
-
className: "singleColorTitleWrapper",
|
201
|
-
children: /*#__PURE__*/_jsx(Typography, {
|
202
|
-
variant: "subtitle2",
|
203
|
-
children: "Custom colour"
|
204
|
-
})
|
205
|
-
}), restRows.map((m, i) => {
|
163
|
+
children: restRows.map((m, i) => {
|
206
164
|
return /*#__PURE__*/_jsx(SingleColorButton, {
|
207
165
|
id: `p2_${id}`,
|
208
166
|
crs: m,
|
@@ -211,19 +169,14 @@ const ColorButtons = props => {
|
|
211
169
|
classes: classes,
|
212
170
|
activeColor: activeColor
|
213
171
|
}, `si_btn_${m}_${i}`);
|
214
|
-
})
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
|
221
|
-
|
222
|
-
src: ColorPicker,
|
223
|
-
alt: "color wheel"
|
224
|
-
})
|
225
|
-
}) : null]
|
226
|
-
})
|
172
|
+
})
|
173
|
+
}), forMiniTool ? /*#__PURE__*/_jsx(IconButton, {
|
174
|
+
onClick: onColorPickerClick,
|
175
|
+
children: /*#__PURE__*/_jsx("img", {
|
176
|
+
src: ColorPicker,
|
177
|
+
alt: "color wheel"
|
178
|
+
})
|
179
|
+
}) : null]
|
227
180
|
})]
|
228
181
|
});
|
229
182
|
};
|
@@ -60,28 +60,4 @@
|
|
60
60
|
padding: 0 15px !important;
|
61
61
|
width: 60px !important;
|
62
62
|
flex-shrink: 0;
|
63
|
-
}
|
64
|
-
|
65
|
-
|
66
|
-
.singleColorTitleWrapper {
|
67
|
-
display: flex;
|
68
|
-
justify-content: space-between;
|
69
|
-
align-items: center;
|
70
|
-
padding: 10px;
|
71
|
-
width: 100%;
|
72
|
-
border-bottom: 1px solid #DCE4EC;
|
73
|
-
}
|
74
|
-
|
75
|
-
.singleColorTitleWrapper .MuiTypography-root {
|
76
|
-
font-weight: 600;
|
77
|
-
}
|
78
|
-
|
79
|
-
.singleColorTitleWrapper .editBtn {
|
80
|
-
text-transform: none;
|
81
|
-
color: #2563EB;
|
82
|
-
text-decoration: underline;
|
83
|
-
padding: 0px;
|
84
|
-
min-width: unset;
|
85
|
-
cursor: pointer;
|
86
|
-
font-size: 14px;
|
87
|
-
}
|
63
|
+
}
|
@@ -1,14 +1,13 @@
|
|
1
1
|
import React, { useState } from "react";
|
2
2
|
import { ReactEditor } from "slate-react";
|
3
|
-
import
|
3
|
+
import ColorPickerTool from "react-gcolor-picker";
|
4
|
+
import { IconButton, Tooltip, Box, Popover } from "@mui/material";
|
4
5
|
import { addMarkData, activeMark } from "../../utils/SlateUtilityFunctions";
|
5
6
|
import ColorButtons from "./ColorButtons";
|
6
7
|
import ColorPickerStyles from "./Styles";
|
7
8
|
import colorWheel from "./colorWheel.png";
|
8
9
|
import "./ColorPicker.css";
|
9
10
|
import { useEditorContext } from "../../hooks/useMouseMove";
|
10
|
-
import CustomColorPicker from "../../common/CustomColorPicker";
|
11
|
-
import { getSelectedElementColor } from "../../utils/helper";
|
12
11
|
import { jsx as _jsx } from "react/jsx-runtime";
|
13
12
|
import { Fragment as _Fragment } from "react/jsx-runtime";
|
14
13
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
@@ -26,8 +25,7 @@ const ColorPicker = props => {
|
|
26
25
|
classes,
|
27
26
|
forMiniTool,
|
28
27
|
openColorTool,
|
29
|
-
closeColorTool
|
30
|
-
type
|
28
|
+
closeColorTool
|
31
29
|
} = props;
|
32
30
|
const {
|
33
31
|
theme
|
@@ -36,7 +34,6 @@ const ColorPicker = props => {
|
|
36
34
|
const [anchorEl, setAnchorEl] = useState(null);
|
37
35
|
const open = Boolean(anchorEl);
|
38
36
|
const pickerStyles = ColorPickerStyles(theme);
|
39
|
-
const muiTheme = useTheme();
|
40
37
|
const onOpen = e => {
|
41
38
|
e.preventDefault();
|
42
39
|
setAnchorEl(e.currentTarget);
|
@@ -61,7 +58,7 @@ const ColorPicker = props => {
|
|
61
58
|
setAnchorEl(null);
|
62
59
|
setSelection(null);
|
63
60
|
};
|
64
|
-
const activeColor =
|
61
|
+
const activeColor = activeMark(editor, format) || DEFAULT_COLOR[format];
|
65
62
|
return /*#__PURE__*/_jsxs(_Fragment, {
|
66
63
|
children: [forMiniTool ? null : /*#__PURE__*/_jsx(Tooltip, {
|
67
64
|
title: title,
|
@@ -99,10 +96,10 @@ const ColorPicker = props => {
|
|
99
96
|
horizontal: "top"
|
100
97
|
},
|
101
98
|
sx: classes.colorPickerPopup,
|
102
|
-
children: /*#__PURE__*/_jsx(
|
99
|
+
children: /*#__PURE__*/_jsx(ColorPickerTool, {
|
103
100
|
gradient: true,
|
104
|
-
|
105
|
-
|
101
|
+
value: activeColor,
|
102
|
+
onChange: handleFormSubmit
|
106
103
|
})
|
107
104
|
})]
|
108
105
|
});
|
@@ -20,26 +20,24 @@ const ColorPickerStyles = theme => ({
|
|
20
20
|
background: `${theme?.palette?.editor?.miniToolBarBackground}`,
|
21
21
|
border: `1px solid ${theme?.palette?.editor?.miniToolBarBorder} !important`,
|
22
22
|
borderRadius: "7px !important",
|
23
|
-
padding: "0px
|
24
|
-
|
23
|
+
padding: "0px 5px",
|
24
|
+
'@media only screen and (max-width: 600px)': {
|
25
25
|
marginTop: "-40px"
|
26
26
|
}
|
27
27
|
}
|
28
28
|
},
|
29
29
|
colorButtonSingle: {
|
30
|
-
border: "1.5px solid #DCE4EC !important",
|
31
30
|
"&.active": {
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
outline: "2px solid #2563EB"
|
31
|
+
"&:before": {
|
32
|
+
content: '" "',
|
33
|
+
position: "absolute",
|
34
|
+
top: "-4px",
|
35
|
+
left: "-4px",
|
36
|
+
width: "calc(100% + 8px)",
|
37
|
+
height: "calc(100% + 8px)",
|
38
|
+
border: "2px solid #2563EB",
|
39
|
+
borderRadius: "50%"
|
40
|
+
}
|
43
41
|
}
|
44
42
|
},
|
45
43
|
colorButtonsInner: {
|
@@ -61,7 +59,7 @@ const ColorPickerStyles = theme => ({
|
|
61
59
|
width: "24px",
|
62
60
|
height: "24px",
|
63
61
|
margin: "0px 4px",
|
64
|
-
border: "
|
62
|
+
border: "unset"
|
65
63
|
}
|
66
64
|
},
|
67
65
|
colorPickerIcon: {
|