@flozy/editor 9.1.4 → 9.1.6
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 -19
- package/dist/Editor/CommonEditor.js +37 -104
- package/dist/Editor/DialogWrapper.js +25 -31
- package/dist/Editor/Editor.css +3 -21
- package/dist/Editor/Elements/AppHeader/AppHeader.js +3 -3
- package/dist/Editor/Elements/Button/EditorButton.js +9 -25
- package/dist/Editor/Elements/Color Picker/ColorButtons.js +12 -57
- package/dist/Editor/Elements/Color Picker/ColorPicker.css +1 -25
- package/dist/Editor/Elements/Color Picker/ColorPicker.js +5 -5
- package/dist/Editor/Elements/Color Picker/Styles.js +1 -1
- package/dist/Editor/Elements/DataView/Layouts/ColumnView.js +1 -4
- package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/Select.js +4 -3
- package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/styles.js +1 -6
- package/dist/Editor/Elements/DataView/Layouts/DataTypes/DateType.js +9 -19
- package/dist/Editor/Elements/DataView/Layouts/TableStyles.js +2 -32
- package/dist/Editor/Elements/DataView/Layouts/TableView.js +29 -126
- package/dist/Editor/Elements/DataView/Layouts/ViewData.js +3 -3
- package/dist/Editor/Elements/DataView/Providers/DataViewProvider.js +1 -1
- package/dist/Editor/Elements/DataView/styles.js +8 -8
- package/dist/Editor/Elements/Embed/Image.js +2 -2
- package/dist/Editor/Elements/FreeGrid/FreeGrid.js +14 -0
- package/dist/Editor/Elements/FreeGrid/FreeGridBox.js +1 -2
- package/dist/Editor/Elements/FreeGrid/FreeGridItem.js +1 -2
- package/dist/Editor/Elements/FreeGrid/styles.js +0 -3
- package/dist/Editor/Elements/Grid/GridItem.js +3 -2
- package/dist/Editor/Elements/Link/Link.js +43 -70
- package/dist/Editor/Elements/SimpleText/index.js +1 -0
- package/dist/Editor/Elements/SimpleText/style.js +2 -2
- package/dist/Editor/Elements/Table/Table.js +27 -43
- package/dist/Editor/Elements/Table/TableCell.js +5 -5
- package/dist/Editor/Elements/Title/title.js +31 -13
- package/dist/Editor/Elements/Variables/Style.js +2 -28
- package/dist/Editor/Elements/Variables/VariableButton.js +4 -17
- package/dist/Editor/Styles/EditorStyles.js +5 -5
- 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 +15 -7
- package/dist/Editor/Toolbar/Mini/MiniToolbar.js +0 -1
- package/dist/Editor/Toolbar/PopupTool/AddTemplates.js +8 -9
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +13 -6
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +85 -210
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +1 -2
- package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +12 -16
- package/dist/Editor/Toolbar/PopupTool/TextFormat.js +7 -54
- package/dist/Editor/Toolbar/PopupTool/index.js +17 -6
- package/dist/Editor/Toolbar/toolbarGroups.js +6 -48
- package/dist/Editor/common/ColorPickerButton.js +9 -35
- package/dist/Editor/common/DnD/DragHandleButton.js +1 -1
- package/dist/Editor/common/DnD/Draggable.js +1 -0
- package/dist/Editor/common/FontLoader/FontLoader.js +0 -3
- package/dist/Editor/common/Icon.js +0 -28
- package/dist/Editor/common/ImageSelector/Options/Upload.js +1 -1
- package/dist/Editor/common/ImageSelector/Styles.js +9 -3
- package/dist/Editor/common/ImageSelector/UploadStyles.js +10 -9
- package/dist/Editor/common/MentionsPopup/Styles.js +12 -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/VideoSettings.js +2 -3
- package/dist/Editor/common/RnD/ElementSettings/styles.js +1 -0
- package/dist/Editor/common/RnD/SwitchViewport/SwitchViewport.js +2 -8
- package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +10 -31
- package/dist/Editor/common/RnD/Utils/gridDropItem.js +4 -5
- package/dist/Editor/common/RnD/Utils/index.js +0 -45
- package/dist/Editor/common/RnD/VirtualElement/index.js +2 -1
- package/dist/Editor/common/RnD/index.js +3 -23
- package/dist/Editor/common/Shorthands/elements.js +0 -54
- package/dist/Editor/common/StyleBuilder/buttonStyle.js +2 -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 +2 -10
- package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +11 -35
- package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +4 -13
- package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +7 -15
- package/dist/Editor/common/Uploader.js +0 -8
- package/dist/Editor/commonStyle.js +69 -114
- package/dist/Editor/helper/index.js +12 -8
- package/dist/Editor/helper/theme.js +2 -200
- package/dist/Editor/hooks/useDrag.js +11 -17
- package/dist/Editor/hooks/useEditorScroll.js +6 -10
- package/dist/Editor/hooks/useMouseMove.js +13 -25
- package/dist/Editor/hooks/useTable.js +1 -1
- package/dist/Editor/plugins/withEmbeds.js +1 -1
- package/dist/Editor/plugins/withHTML.js +16 -20
- package/dist/Editor/plugins/withLayout.js +1 -1
- package/dist/Editor/plugins/withTable.js +1 -1
- package/dist/Editor/theme/ThemeList.js +173 -50
- package/dist/Editor/utils/SlateUtilityFunctions.js +37 -150
- package/dist/Editor/utils/button.js +14 -0
- package/dist/Editor/utils/chatEditor/SlateUtilityFunctions.js +0 -23
- package/dist/Editor/utils/draftToSlate.js +2 -3
- package/dist/Editor/utils/font.js +37 -40
- package/dist/Editor/utils/helper.js +27 -59
- package/dist/Editor/utils/link.js +1 -1
- package/dist/Editor/utils/table.js +0 -8
- package/package.json +3 -6
- package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +0 -438
- package/dist/Editor/assets/svg/ThemeIcons.js +0 -291
- 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 -90
- package/dist/Editor/common/CustomDialog/styles.js +0 -80
- 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 -33
- package/dist/Editor/common/RnD/Theme/MainThemeProvider.js +0 -17
- package/dist/Editor/hooks/useEditorTheme.js +0 -153
- package/dist/Editor/theme/index.js +0 -144
- package/dist/Editor/themeSettings/ActiveTheme.js +0 -72
- package/dist/Editor/themeSettings/buttons/index.js +0 -283
- package/dist/Editor/themeSettings/buttons/style.js +0 -21
- package/dist/Editor/themeSettings/colorTheme/index.js +0 -292
- package/dist/Editor/themeSettings/colorTheme/style.js +0 -77
- package/dist/Editor/themeSettings/fonts/PreviewElement.js +0 -121
- package/dist/Editor/themeSettings/fonts/index.js +0 -220
- 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 -197
- package/dist/Editor/themeSettingsAI/style.js +0 -250
@@ -1,26 +1,19 @@
|
|
1
|
-
import React
|
1
|
+
import React from "react";
|
2
2
|
import { TextField, IconButton, Grid, Typography } from "@mui/material";
|
3
3
|
import { sizeMap } from "../../../utils/font.js";
|
4
4
|
import { TextMinusIcon, TextPlusIcon } from "../../../common/iconslist.js";
|
5
|
-
import { getElementStyle } from "../../../helper/theme.js";
|
6
|
-
import { useSlateStatic } from "slate-react";
|
7
5
|
import { jsx as _jsx } from "react/jsx-runtime";
|
8
6
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
9
7
|
const FontSize = props => {
|
10
8
|
const {
|
11
|
-
value
|
9
|
+
value,
|
12
10
|
data,
|
13
|
-
onChange
|
14
|
-
elementProps
|
11
|
+
onChange
|
15
12
|
} = props;
|
16
13
|
const {
|
17
14
|
key,
|
18
15
|
width
|
19
16
|
} = data;
|
20
|
-
const editor = useSlateStatic();
|
21
|
-
const value = useMemo(() => {
|
22
|
-
return getElementStyle(editor, elementProps, "font-size") || val;
|
23
|
-
}, [editor, val]);
|
24
17
|
const handleChange = e => {
|
25
18
|
let inc = parseInt(e.target.value) || 16;
|
26
19
|
inc = inc > 200 ? 200 : inc;
|
@@ -31,9 +24,7 @@ const FontSize = props => {
|
|
31
24
|
const getSizeVal = () => {
|
32
25
|
try {
|
33
26
|
const size = `${value}`?.indexOf("px") >= 0 ? value : sizeMap[value] || value;
|
34
|
-
|
35
|
-
const val = parseInt(size || defaultSize);
|
36
|
-
return isNaN(val) ? defaultSize : val;
|
27
|
+
return parseInt(size || 16);
|
37
28
|
} catch (err) {
|
38
29
|
return "";
|
39
30
|
}
|
@@ -1,13 +1,13 @@
|
|
1
|
-
import React
|
1
|
+
import React from "react";
|
2
2
|
import { FormControl, Grid, ListItemIcon, ListSubheader, MenuItem, Select, Typography } from "@mui/material";
|
3
|
-
import { getBreakPointsValue
|
3
|
+
import { getBreakPointsValue } from "../../../helper/theme";
|
4
4
|
import useWindowResize from "../../../hooks/useWindowResize";
|
5
5
|
import { useEditorContext } from "../../../hooks/useMouseMove";
|
6
6
|
import FontFamilyAutocomplete from "../../../Toolbar/FormatTools/FontFamilyAutocomplete";
|
7
7
|
import { useSlate } from "slate-react";
|
8
8
|
import KeyboardArrowDownRoundedIcon from "@mui/icons-material/KeyboardArrowDownRounded";
|
9
9
|
|
10
|
-
// hideMetaDataOptions -- pass true to hide metadata option in select field
|
10
|
+
// hideMetaDataOptions -- pass true to hide metadata option in select field
|
11
11
|
import { jsx as _jsx } from "react/jsx-runtime";
|
12
12
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
13
13
|
import { Fragment as _Fragment } from "react/jsx-runtime";
|
@@ -30,22 +30,14 @@ const TextOptions = props => {
|
|
30
30
|
renderOption,
|
31
31
|
width,
|
32
32
|
webFont = false,
|
33
|
-
hideMetaDataOptions = false
|
34
|
-
themeEnabled
|
33
|
+
hideMetaDataOptions = false
|
35
34
|
} = data;
|
36
35
|
const {
|
37
36
|
fontFamilies
|
38
37
|
} = useEditorContext();
|
39
|
-
const [size] = useWindowResize();
|
40
38
|
const editor = useSlate();
|
41
|
-
const
|
42
|
-
|
43
|
-
if (themeEnabled) {
|
44
|
-
// editor takes a little amount of time to update the new style in element, in that case userValue will be returned
|
45
|
-
return getElementStyle(editor, elementProps, key) || userValue;
|
46
|
-
}
|
47
|
-
return userValue;
|
48
|
-
}, [editor, isBreakpoint, val, size?.device]);
|
39
|
+
const [size] = useWindowResize();
|
40
|
+
const value = isBreakpoint ? getBreakPointsValue(val, size?.device) : val;
|
49
41
|
const metaDataMappingOptions = metaMappings?.boards || [];
|
50
42
|
const updatedOption = !hideMetaDataOptions && elementProps?.metadatamapping ? [...options, ...metaDataMappingOptions] : webFont ? fontFamilies?.options : options;
|
51
43
|
const handleChange = (e, d) => {
|
@@ -124,7 +116,7 @@ const TextOptions = props => {
|
|
124
116
|
editor: editor,
|
125
117
|
format: key,
|
126
118
|
options: fontFamilies.options,
|
127
|
-
width:
|
119
|
+
width: '100%',
|
128
120
|
onChange: onChange,
|
129
121
|
val: value,
|
130
122
|
webFont: true
|
@@ -4,7 +4,6 @@ import { convertBase64 } from "../utils/helper";
|
|
4
4
|
import { uploadFile } from "../service/fileupload";
|
5
5
|
import Icon from "./Icon";
|
6
6
|
import UploadStyles from "../common/ImageSelector/UploadStyles";
|
7
|
-
import { useEditorContext } from "../hooks/useMouseMove";
|
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";
|
@@ -19,9 +18,6 @@ const Uploader = props => {
|
|
19
18
|
const [base64, setBase64] = useState(value?.url);
|
20
19
|
const [fileName, setFileName] = useState("");
|
21
20
|
const [uploading, setUploading] = useState(false);
|
22
|
-
const {
|
23
|
-
theme
|
24
|
-
} = useEditorContext();
|
25
21
|
const handleChange = async e => {
|
26
22
|
const uFile = e.target.files[0];
|
27
23
|
const strImage = await convertBase64(uFile);
|
@@ -103,10 +99,6 @@ const Uploader = props => {
|
|
103
99
|
className: "uploadImageSection",
|
104
100
|
children: base64 ? renderThumb() : /*#__PURE__*/_jsx(Grid, {
|
105
101
|
className: "uploadImageText",
|
106
|
-
sx: {
|
107
|
-
background: `${theme?.palette?.editor?.inputFieldBgColor}`,
|
108
|
-
border: `1px solid ${theme?.palette?.editor?.inputFieldBorder}`
|
109
|
-
},
|
110
102
|
children: /*#__PURE__*/_jsxs(Button, {
|
111
103
|
component: "label",
|
112
104
|
variant: "text",
|
@@ -51,30 +51,40 @@ const useCommonStyle = theme => ({
|
|
51
51
|
},
|
52
52
|
"& .MuiPaper-root": {
|
53
53
|
border: `unset !important`,
|
54
|
-
borderRadius:
|
55
|
-
height:
|
56
|
-
padding: "2px"
|
54
|
+
borderRadius: '0px',
|
55
|
+
height: 'fit-content'
|
57
56
|
},
|
58
57
|
"& p": {
|
59
58
|
marginBottom: "7px",
|
60
59
|
marginTop: "4px"
|
61
60
|
},
|
62
|
-
"&
|
63
|
-
|
64
|
-
|
61
|
+
"& .MuiPaper-root": {
|
62
|
+
border: 'unset !important',
|
63
|
+
borderRadius: '0px',
|
64
|
+
height: 'fit-content',
|
65
|
+
padding: '2px'
|
65
66
|
},
|
66
67
|
"& .muiIconsListParent": {
|
67
68
|
"& svg": {
|
68
69
|
color: `${theme?.palette?.editor?.svgTextAlignStrokeColor} !important`
|
69
70
|
},
|
71
|
+
"&::-webkit-scrollbar-thumb": {
|
72
|
+
background: `none !important`
|
73
|
+
},
|
74
|
+
"&::-webkit-scrollbar-track": {
|
75
|
+
visibility: "hidden"
|
76
|
+
},
|
70
77
|
"&::-webkit-scrollbar-thumb": {
|
71
78
|
background: `${theme?.palette?.editor?.brainPopupScroll} !important`
|
79
|
+
},
|
80
|
+
"&::-webkit-scrollbar-track": {
|
81
|
+
visibility: "hidden"
|
72
82
|
}
|
73
83
|
},
|
74
84
|
"& .MuiGrid-root>.MuiGrid-item": {
|
75
85
|
paddingRight: "0px !important",
|
76
86
|
fontFamily: "Inter, sans-serif",
|
77
|
-
height:
|
87
|
+
height: 'fit-content'
|
78
88
|
},
|
79
89
|
"& .MuiInputBase-root": {
|
80
90
|
borderRadius: "10px",
|
@@ -135,11 +145,11 @@ const useCommonStyle = theme => ({
|
|
135
145
|
borderRadius: "10px",
|
136
146
|
width: "46px !important",
|
137
147
|
marginLeft: "10px",
|
138
|
-
height:
|
148
|
+
height: '36px !important'
|
139
149
|
}
|
140
150
|
},
|
141
|
-
|
142
|
-
margin:
|
151
|
+
'& .MuiFormHelperText-root': {
|
152
|
+
margin: '4px 0px 0px 0px',
|
143
153
|
color: theme?.palette?.editor?.closeButtonSvgStroke,
|
144
154
|
fontFamily: "Inter, sans-serif"
|
145
155
|
}
|
@@ -395,14 +405,14 @@ const useCommonStyle = theme => ({
|
|
395
405
|
padding: "8px 12px",
|
396
406
|
fontSize: "12px",
|
397
407
|
color: theme?.palette?.editor?.menuOptionTextColor,
|
398
|
-
fontWeight:
|
408
|
+
fontWeight: '500',
|
399
409
|
fontFamily: "Inter, sans-serif",
|
400
|
-
minHeight:
|
410
|
+
minHeight: '36px',
|
401
411
|
"&:hover": {
|
402
412
|
backgroundColor: theme?.palette?.editor?.menuOptionHoverBackground
|
403
413
|
}
|
404
414
|
},
|
405
|
-
|
415
|
+
'& .Mui-selected': {
|
406
416
|
background: `${theme?.palette?.editor?.menuOptionSelectedOption} !important`
|
407
417
|
},
|
408
418
|
"& .MuiListSubheader-root": {
|
@@ -411,16 +421,16 @@ const useCommonStyle = theme => ({
|
|
411
421
|
fontSize: "12px"
|
412
422
|
},
|
413
423
|
"& .MuiPaper-root": {
|
414
|
-
borderRadius:
|
415
|
-
padding:
|
424
|
+
borderRadius: '8px',
|
425
|
+
padding: '0px',
|
416
426
|
background: `${theme?.palette?.editor?.textWeightPopUpBackground} !important`
|
417
427
|
},
|
418
|
-
|
419
|
-
margin:
|
420
|
-
borderRadius:
|
428
|
+
'& .MuiButtonBase-root': {
|
429
|
+
margin: '4px',
|
430
|
+
borderRadius: '6px'
|
421
431
|
},
|
422
|
-
|
423
|
-
padding:
|
432
|
+
'& .MuiList-root': {
|
433
|
+
padding: '0px'
|
424
434
|
}
|
425
435
|
},
|
426
436
|
datePicker: {
|
@@ -428,71 +438,16 @@ const useCommonStyle = theme => ({
|
|
428
438
|
width: "100%",
|
429
439
|
"& .react-datepicker__input-container": {
|
430
440
|
"& .MuiInputBase-root": {
|
431
|
-
|
441
|
+
background: `${theme?.palette?.editor?.inputFieldBgColor} !important`,
|
432
442
|
"& .MuiInputBase-input": {
|
433
|
-
|
434
|
-
color: theme?.palette?.editor?.textColor
|
443
|
+
background: `${theme?.palette?.editor?.inputFieldBgColor} !important`,
|
444
|
+
color: `${theme?.palette?.editor?.textColor} !important`
|
435
445
|
},
|
436
446
|
"& .MuiOutlinedInput-notchedOutline": {
|
437
|
-
border: `1px solid ${theme?.palette?.editor?.signaturePopUpInputFieldBorder
|
438
|
-
borderRadius: "10px"
|
439
|
-
},
|
440
|
-
"&:hover .MuiOutlinedInput-notchedOutline": {
|
441
|
-
borderColor: theme?.palette?.primary?.main
|
442
|
-
},
|
443
|
-
"&.Mui-focused .MuiOutlinedInput-notchedOutline": {
|
444
|
-
borderColor: theme?.palette?.primary?.dark
|
447
|
+
border: `1px solid ${theme?.palette?.editor?.signaturePopUpInputFieldBorder} !important`
|
445
448
|
}
|
446
449
|
}
|
447
450
|
}
|
448
|
-
},
|
449
|
-
"& .react-datepicker": {
|
450
|
-
backgroundColor: theme?.palette?.editor?.inputFieldBgColor,
|
451
|
-
// borderRadius: "10px",
|
452
|
-
border: `1px solid ${theme?.palette?.divider || "#ccc"}`,
|
453
|
-
boxShadow: "2px 4px 8px rgba(0, 0, 0, 0.4)",
|
454
|
-
color: theme?.palette?.editor?.textColor + " !important"
|
455
|
-
},
|
456
|
-
"& .react-datepicker__header": {
|
457
|
-
backgroundColor: theme?.palette?.editor?.inputFieldBgColor,
|
458
|
-
borderBottom: `1px solid ${theme?.palette?.divider || "#ddd"}`,
|
459
|
-
color: theme?.palette?.editor?.textColor + " !important"
|
460
|
-
},
|
461
|
-
"& .react-datepicker__day": {
|
462
|
-
color: theme?.palette?.editor?.textColor,
|
463
|
-
"&:hover": {
|
464
|
-
backgroundColor: theme?.palette?.editor?.menuOptionHoverBackground,
|
465
|
-
color: theme?.palette?.editor?.textColor || "#fff"
|
466
|
-
}
|
467
|
-
},
|
468
|
-
"& .react-datepicker__current-month": {
|
469
|
-
color: theme?.palette?.editor?.textColor
|
470
|
-
},
|
471
|
-
"& .react-datepicker__day-name": {
|
472
|
-
color: theme?.palette?.editor?.textColor
|
473
|
-
},
|
474
|
-
"& .react-datepicker__day--selected": {
|
475
|
-
background: theme?.palette?.editor?.activeColor,
|
476
|
-
color: "#fff",
|
477
|
-
"&:hover": {
|
478
|
-
background: theme?.palette?.editor?.activeColor,
|
479
|
-
color: "#fff"
|
480
|
-
}
|
481
|
-
},
|
482
|
-
"& .react-datepicker__day--keyboard-selected": {
|
483
|
-
backgroundColor: "#bad9f1",
|
484
|
-
color: "#000",
|
485
|
-
"&:hover": {
|
486
|
-
backgroundColor: "#bad9f1",
|
487
|
-
color: "#000"
|
488
|
-
}
|
489
|
-
},
|
490
|
-
"& .react-datepicker__day--today": {
|
491
|
-
fontWeight: "bold",
|
492
|
-
borderBottom: `2px solid ${theme?.palette?.editor?.activeColor}`
|
493
|
-
},
|
494
|
-
"& .react-datepicker__triangle": {
|
495
|
-
display: "none"
|
496
451
|
}
|
497
452
|
},
|
498
453
|
signaturePopUpNameField: {
|
@@ -520,27 +475,27 @@ const useCommonStyle = theme => ({
|
|
520
475
|
}
|
521
476
|
}
|
522
477
|
},
|
478
|
+
pageSettingPopUpRoot: {
|
479
|
+
padding: "16px 8px 16px 10px!important",
|
480
|
+
height: "100%"
|
481
|
+
},
|
523
482
|
buttonMoreOption: {
|
524
483
|
background: `${theme?.palette?.editor?.aiInputBackground} !important`,
|
525
484
|
border: `1px solid ${theme?.palette?.editor?.buttonBorder1} !important`,
|
526
|
-
padding:
|
527
|
-
|
528
|
-
width:
|
529
|
-
height:
|
530
|
-
|
485
|
+
padding: '4px !important',
|
486
|
+
'& svg': {
|
487
|
+
width: '18px !important',
|
488
|
+
height: '18px !important',
|
489
|
+
'& path': {
|
531
490
|
stroke: `${theme?.palette?.editor?.closeButtonSvgStroke} !important`
|
532
491
|
}
|
533
492
|
}
|
534
493
|
},
|
535
|
-
pageSettingPopUpRoot: {
|
536
|
-
padding: "16px 8px 16px 10px!important",
|
537
|
-
height: "100%"
|
538
|
-
},
|
539
494
|
buttonMoreOption2: {
|
540
495
|
background: `${theme?.palette?.editor?.aiInputBackground} !important`,
|
541
496
|
border: `1px solid ${theme?.palette?.editor?.buttonBorder1} !important`,
|
542
|
-
|
543
|
-
|
497
|
+
'& svg': {
|
498
|
+
'& path': {
|
544
499
|
fill: `${theme?.palette?.editor?.closeButtonSvgStroke} !important`
|
545
500
|
}
|
546
501
|
}
|
@@ -548,11 +503,11 @@ const useCommonStyle = theme => ({
|
|
548
503
|
buttonMoreOption3: {
|
549
504
|
background: `${theme?.palette?.editor?.aiInputBackground} !important`,
|
550
505
|
border: `1px solid ${theme?.palette?.editor?.buttonBorder1} !important`,
|
551
|
-
padding:
|
552
|
-
|
553
|
-
width:
|
554
|
-
height:
|
555
|
-
|
506
|
+
padding: '5px !important',
|
507
|
+
'& svg': {
|
508
|
+
width: '16px !important',
|
509
|
+
height: '16px !important',
|
510
|
+
'& path': {
|
556
511
|
stroke: `${theme?.palette?.editor?.closeButtonSvgStroke} !important`
|
557
512
|
}
|
558
513
|
}
|
@@ -560,37 +515,37 @@ const useCommonStyle = theme => ({
|
|
560
515
|
resizeButton: {
|
561
516
|
background: theme?.palette?.editor?.aiInputBackground,
|
562
517
|
border: `1px solid ${theme?.palette?.editor?.buttonBorder1}`,
|
563
|
-
padding:
|
564
|
-
borderRadius:
|
565
|
-
|
566
|
-
width:
|
567
|
-
height:
|
568
|
-
|
518
|
+
padding: '5px !important',
|
519
|
+
borderRadius: '50% !important',
|
520
|
+
'& svg': {
|
521
|
+
width: '18px',
|
522
|
+
height: '18px',
|
523
|
+
'& path': {
|
569
524
|
fill: `${theme?.palette?.editor?.closeButtonSvgStroke}`
|
570
525
|
}
|
571
526
|
},
|
572
|
-
|
527
|
+
'&:hover': {
|
573
528
|
background: theme?.palette?.editor?.aiInputBackground
|
574
529
|
}
|
575
530
|
},
|
576
531
|
gradientFillBtn: {
|
577
532
|
background: `linear-gradient(112.61deg, #2C63ED 19.3%, #8360FD 88.14%) !important`,
|
578
|
-
textTransform:
|
579
|
-
color:
|
580
|
-
padding:
|
581
|
-
height:
|
582
|
-
borderRadius:
|
583
|
-
fontWeight:
|
584
|
-
fontSize:
|
533
|
+
textTransform: 'math-auto !important',
|
534
|
+
color: '#FFFFFF !important',
|
535
|
+
padding: '0px 12px !important',
|
536
|
+
height: '32px',
|
537
|
+
borderRadius: '8px',
|
538
|
+
fontWeight: '500',
|
539
|
+
fontSize: '14px'
|
585
540
|
},
|
586
541
|
emptyThumbBtn: {
|
587
542
|
background: `${theme?.palette?.editor?.sectionSettingIconHover} !important`,
|
588
543
|
color: `${theme?.palette?.editor?.textColor} !important`,
|
589
|
-
fontSize:
|
590
|
-
|
591
|
-
width:
|
592
|
-
height:
|
593
|
-
|
544
|
+
fontSize: '14px !important',
|
545
|
+
'& svg': {
|
546
|
+
width: '20px !important',
|
547
|
+
height: '20px !important',
|
548
|
+
'& path': {
|
594
549
|
stroke: `${theme?.palette?.editor?.closeButtonSvgStroke} !important`
|
595
550
|
}
|
596
551
|
}
|
@@ -287,18 +287,22 @@ export const bringItemToFB = (editor, {
|
|
287
287
|
};
|
288
288
|
export const debounce = function (func, wait, immediate) {
|
289
289
|
let timeout;
|
290
|
-
|
291
|
-
const context = this
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
callNow = immediate && !timeout;
|
290
|
+
function debounced(...args) {
|
291
|
+
const context = this;
|
292
|
+
const later = function () {
|
293
|
+
timeout = null;
|
294
|
+
if (!immediate) func.apply(context, args);
|
295
|
+
};
|
296
|
+
const callNow = immediate && !timeout;
|
298
297
|
clearTimeout(timeout);
|
299
298
|
timeout = setTimeout(later, wait);
|
300
299
|
if (callNow) func.apply(context, args);
|
300
|
+
}
|
301
|
+
debounced.cancel = function () {
|
302
|
+
clearTimeout(timeout);
|
303
|
+
timeout = null;
|
301
304
|
};
|
305
|
+
return debounced;
|
302
306
|
};
|
303
307
|
export const getTextColor = (color = "") => {
|
304
308
|
return color?.indexOf("gradient") >= 0 ? {
|
@@ -1,6 +1,4 @@
|
|
1
|
-
import { ReactEditor } from "slate-react";
|
2
1
|
import { sizeMap } from "../utils/font";
|
3
|
-
import { Editor, Node } from "slate";
|
4
2
|
export const breakpoints = {
|
5
3
|
small: 0,
|
6
4
|
mobile: 600,
|
@@ -35,7 +33,7 @@ const overrideValues = (value, ot) => {
|
|
35
33
|
return Object.keys(value).reduce((a, b) => {
|
36
34
|
return {
|
37
35
|
...a,
|
38
|
-
[b]: overrides[ot] ? overrides[ot](value[b]
|
36
|
+
[b]: overrides[ot] ? overrides[ot](value[b]) : value
|
39
37
|
};
|
40
38
|
}, {});
|
41
39
|
};
|
@@ -52,15 +50,7 @@ const overrides = {
|
|
52
50
|
overrideReSizeH: val => {
|
53
51
|
return val ? `${val?.height}px` : "auto";
|
54
52
|
},
|
55
|
-
overrideBorderRadius:
|
56
|
-
if (!val?.topLeft) {
|
57
|
-
Object.values(breakpointValues || {}).forEach(v => {
|
58
|
-
if (v) {
|
59
|
-
// Applying the values from breakpoints that exist to those that do not have
|
60
|
-
val = v;
|
61
|
-
}
|
62
|
-
});
|
63
|
-
}
|
53
|
+
overrideBorderRadius: val => {
|
64
54
|
return `${val?.topLeft}px ${val?.topRight}px ${val?.bottomLeft}px ${val?.bottomRight}px`;
|
65
55
|
}
|
66
56
|
};
|
@@ -128,194 +118,6 @@ export const getTRBLBreakPoints = (value, breakpoint) => {
|
|
128
118
|
console.log(err);
|
129
119
|
}
|
130
120
|
};
|
131
|
-
export function getElementStyle(editor, element, stylePropertyName) {
|
132
|
-
try {
|
133
|
-
const path = ReactEditor.findPath(editor, element);
|
134
|
-
if (path?.length) {
|
135
|
-
const currentEle = Node.get(editor, path);
|
136
|
-
const dom = ReactEditor.toDOMNode(editor, currentEle);
|
137
|
-
const editorBtn = dom?.querySelector(".button.theme-element");
|
138
|
-
return getElementProperty(editorBtn, stylePropertyName);
|
139
|
-
}
|
140
|
-
} catch (err) {
|
141
|
-
// console.log(err);
|
142
|
-
}
|
143
|
-
}
|
144
|
-
export function getTextSizeVal(editor) {
|
145
|
-
try {
|
146
|
-
const currentNode = Node.get(editor, editor.selection.anchor.path);
|
147
|
-
const currentElement = ReactEditor.toDOMNode(editor, currentNode);
|
148
|
-
if (currentElement) {
|
149
|
-
const element = currentElement.querySelector('span[data-slate-string="true"]');
|
150
|
-
return getElementProperty(element, "font-size");
|
151
|
-
}
|
152
|
-
} catch (err) {
|
153
|
-
// console.log(err);
|
154
|
-
}
|
155
|
-
}
|
156
|
-
export function getVariableValue(val) {
|
157
|
-
const bodyElement = document.body;
|
158
|
-
const computedStyle = getComputedStyle(bodyElement);
|
159
|
-
const [, variableName] = val?.match(/var\((--[^)]+)\)/) || [];
|
160
|
-
const varValue = computedStyle.getPropertyValue(variableName).trim();
|
161
|
-
return varValue;
|
162
|
-
}
|
163
|
-
const MAP_PROPERTY_KEYS = {
|
164
|
-
fontFamily: "font-family",
|
165
|
-
fontSize: "font-size",
|
166
|
-
textSize: "font-size",
|
167
|
-
fontWeight: "font-weight"
|
168
|
-
};
|
169
|
-
export function getElementProperty(element, styleProperty) {
|
170
|
-
if (!element) {
|
171
|
-
return "";
|
172
|
-
}
|
173
|
-
const computedStyle = window.getComputedStyle(element);
|
174
|
-
const property = MAP_PROPERTY_KEYS[styleProperty] || styleProperty;
|
175
|
-
let style = computedStyle.getPropertyValue(property);
|
176
|
-
if (property === "font-family") {
|
177
|
-
style = style.replace(/"/g, ""); // remove double quotes if exists e.g: '"Courier New"'
|
178
|
-
}
|
179
|
-
|
180
|
-
return style || "";
|
181
|
-
}
|
182
|
-
export const textThemeFields = ["fontFamily", "fontSize", "color", "bold", "italic"
|
183
|
-
// "underline",
|
184
|
-
// "strikethrough",
|
185
|
-
];
|
186
|
-
|
187
|
-
const themeElements = ["headingOne", "headingTwo", "headingThree", "headingFour", "headingFive", "headingSix", "paragraphOne", "paragraphTwo", "paragraphThree"];
|
188
|
-
export const isTextCustomized = editor => {
|
189
|
-
try {
|
190
|
-
if (editor.selection) {
|
191
|
-
const currentElement = Node.parent(editor, editor?.selection?.anchor?.path);
|
192
|
-
if (!currentElement) {
|
193
|
-
return false;
|
194
|
-
}
|
195
|
-
const {
|
196
|
-
children,
|
197
|
-
type
|
198
|
-
} = currentElement;
|
199
|
-
if (!themeElements.includes(type)) {
|
200
|
-
return false;
|
201
|
-
}
|
202
|
-
if (children?.length > 1) {
|
203
|
-
return true;
|
204
|
-
}
|
205
|
-
const customized = textThemeFields.some(field => {
|
206
|
-
const element = children[0] || {};
|
207
|
-
const value = element[field];
|
208
|
-
if (field === "fontSize") {
|
209
|
-
return Object.keys(value || {}).length;
|
210
|
-
} else {
|
211
|
-
return value;
|
212
|
-
}
|
213
|
-
});
|
214
|
-
return customized;
|
215
|
-
} else {
|
216
|
-
return null;
|
217
|
-
}
|
218
|
-
} catch (err) {
|
219
|
-
return null;
|
220
|
-
}
|
221
|
-
};
|
222
|
-
const addToTheme = (field, value, element) => {
|
223
|
-
switch (field) {
|
224
|
-
case "fontFamily":
|
225
|
-
return {
|
226
|
-
fontFamily: value
|
227
|
-
};
|
228
|
-
case "fontSize":
|
229
|
-
return {
|
230
|
-
fontSize: value?.lg
|
231
|
-
};
|
232
|
-
case "color":
|
233
|
-
return {
|
234
|
-
color: value
|
235
|
-
};
|
236
|
-
case "bold":
|
237
|
-
return {
|
238
|
-
fontWeight: "bold"
|
239
|
-
};
|
240
|
-
case "italic":
|
241
|
-
return {
|
242
|
-
fontStyle: "italic"
|
243
|
-
};
|
244
|
-
// case "underline":
|
245
|
-
// case "strikethrough":
|
246
|
-
// let textDecoration = "";
|
247
|
-
|
248
|
-
// if (element.underline) {
|
249
|
-
// textDecoration = "underline";
|
250
|
-
// }
|
251
|
-
|
252
|
-
// if (element.strikethrough) {
|
253
|
-
// textDecoration += " strikethrough";
|
254
|
-
// }
|
255
|
-
|
256
|
-
// return { textDecoration };
|
257
|
-
default:
|
258
|
-
return {};
|
259
|
-
}
|
260
|
-
};
|
261
|
-
const MAP_TEXT_THEME_FIELD = {
|
262
|
-
headingOne: "h1",
|
263
|
-
headingTwo: "h2",
|
264
|
-
headingThree: "h3",
|
265
|
-
headingFour: "h4",
|
266
|
-
headingFive: "h5",
|
267
|
-
headingSix: "h6",
|
268
|
-
paragraphOne: "para1",
|
269
|
-
paragraphTwo: "para2",
|
270
|
-
paragraphThree: "para3"
|
271
|
-
};
|
272
|
-
export const saveToTheme = editor => {
|
273
|
-
try {
|
274
|
-
if (editor.selection) {
|
275
|
-
const currentElement = Node.parent(editor, editor?.selection?.anchor?.path);
|
276
|
-
if (!currentElement) {
|
277
|
-
return false;
|
278
|
-
}
|
279
|
-
const {
|
280
|
-
children
|
281
|
-
} = currentElement;
|
282
|
-
if (children?.length > 1) {
|
283
|
-
return true;
|
284
|
-
}
|
285
|
-
let theme = {};
|
286
|
-
textThemeFields.forEach(field => {
|
287
|
-
const element = children[0] || {};
|
288
|
-
const value = element[field];
|
289
|
-
let style = {};
|
290
|
-
let isValueExist = false;
|
291
|
-
if (value) {
|
292
|
-
isValueExist = true;
|
293
|
-
if (field === "fontSize") {
|
294
|
-
isValueExist = !!Object.keys(value).length;
|
295
|
-
}
|
296
|
-
}
|
297
|
-
if (isValueExist) {
|
298
|
-
style = addToTheme(field, value, element);
|
299
|
-
}
|
300
|
-
theme = {
|
301
|
-
...theme,
|
302
|
-
...style
|
303
|
-
};
|
304
|
-
});
|
305
|
-
textThemeFields.forEach(field => {
|
306
|
-
Editor.removeMark(editor, field);
|
307
|
-
});
|
308
|
-
return {
|
309
|
-
field: MAP_TEXT_THEME_FIELD[currentElement?.type],
|
310
|
-
theme
|
311
|
-
};
|
312
|
-
}
|
313
|
-
} catch (err) {
|
314
|
-
return;
|
315
|
-
}
|
316
|
-
};
|
317
|
-
export const HEADING_THEME_FIELDS = ["h1", "h2", "h3", "h4", "h5", "h6"];
|
318
|
-
export const PARAGRAPH_THEME_FIELDS = ["para1", "para2", "para3"];
|
319
121
|
export const getBRValue = (props, rbr = "lg") => {
|
320
122
|
const {
|
321
123
|
value,
|