@flozy/editor 10.9.6 → 10.9.8
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 +17 -16
- package/dist/Editor/CommonEditor.js +138 -27
- package/dist/Editor/DialogWrapper.js +31 -25
- package/dist/Editor/Editor.css +39 -11
- package/dist/Editor/Elements/AI/PopoverAIInput.js +11 -3
- package/dist/Editor/Elements/AI/Styles.js +1 -0
- package/dist/Editor/Elements/Accordion/Accordion.js +28 -22
- package/dist/Editor/Elements/Accordion/AccordionButton.js +12 -3
- package/dist/Editor/Elements/AppHeader/AppHeader.js +3 -3
- package/dist/Editor/Elements/Attachments/AttachmentStyles.js +16 -0
- package/dist/Editor/Elements/Attachments/Attachments.js +153 -11
- package/dist/Editor/Elements/Attachments/AttachmentsButton.js +8 -3
- package/dist/Editor/Elements/Button/EditorButton.js +23 -7
- package/dist/Editor/Elements/Color Picker/ColorButtons.js +61 -14
- package/dist/Editor/Elements/Color Picker/ColorPicker.css +25 -1
- package/dist/Editor/Elements/Color Picker/ColorPicker.js +10 -7
- package/dist/Editor/Elements/Color Picker/Styles.js +15 -13
- package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/Select.js +134 -55
- package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/SelectV1.js +7 -8
- package/dist/Editor/Elements/DataView/Layouts/DataTypes/PersonType.js +8 -3
- 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.css +5 -0
- package/dist/Editor/Elements/Embed/Embed.js +36 -43
- package/dist/Editor/Elements/Embed/Image.js +236 -23
- package/dist/Editor/Elements/Embed/Video.js +246 -15
- package/dist/Editor/Elements/Form/FormField.js +1 -1
- package/dist/Editor/Elements/Form/Workflow/Styles.js +24 -22
- package/dist/Editor/Elements/Form/Workflow/constant.js +25 -1
- package/dist/Editor/Elements/FreeGrid/FreeGrid.js +39 -33
- package/dist/Editor/Elements/FreeGrid/FreeGridBox.js +7 -4
- package/dist/Editor/Elements/FreeGrid/FreeGridItem.js +1 -0
- package/dist/Editor/Elements/FreeGrid/Options/More.js +7 -7
- package/dist/Editor/Elements/FreeGrid/helper.js +115 -0
- package/dist/Editor/Elements/FreeGrid/styles.js +15 -0
- package/dist/Editor/Elements/Grid/GridItem.js +1 -1
- package/dist/Editor/Elements/PageSettings/PageSettingsButton.js +2 -1
- package/dist/Editor/Elements/SimpleText/index.js +4 -1
- package/dist/Editor/Elements/SimpleText/style.js +2 -2
- package/dist/Editor/Elements/Table/Table.js +5 -4
- package/dist/Editor/Elements/Table/TableCell.js +10 -3
- package/dist/Editor/Elements/Title/title.js +10 -11
- package/dist/Editor/Elements/TopBanner/TopBanner.js +4 -2
- package/dist/Editor/Elements/TopBanner/TopBannerButton.js +5 -3
- package/dist/Editor/Elements/Variables/VariableButton.js +10 -1
- package/dist/Editor/MiniEditor.js +2 -1
- package/dist/Editor/Styles/EditorStyles.js +20 -8
- package/dist/Editor/Toolbar/FormatTools/Dropdown.js +27 -3
- package/dist/Editor/Toolbar/FormatTools/FontFamilyAutocomplete.js +4 -3
- package/dist/Editor/Toolbar/FormatTools/MarkButton.js +2 -2
- package/dist/Editor/Toolbar/FormatTools/TextSize.js +33 -29
- package/dist/Editor/Toolbar/Mini/MiniToolbar.js +2 -1
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/MiniColorPicker.js +4 -2
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +25 -23
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectList.js +25 -7
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +167 -42
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +24 -8
- package/dist/Editor/Toolbar/PopupTool/PopperHeader.js +2 -1
- package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +70 -10
- package/dist/Editor/Toolbar/PopupTool/TextFormat.js +73 -14
- package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +439 -0
- package/dist/Editor/Toolbar/PopupTool/index.js +7 -4
- package/dist/Editor/Toolbar/toolbarGroups.js +56 -10
- package/dist/Editor/assets/svg/BackIcon.js +18 -0
- package/dist/Editor/assets/svg/ThemeIcons.js +293 -0
- package/dist/Editor/common/ColorPickerButton.js +38 -16
- package/dist/Editor/common/CustomColorPicker/index.js +130 -0
- package/dist/Editor/common/CustomColorPicker/style.js +53 -0
- package/dist/Editor/common/CustomDialog2/index.js +94 -0
- package/dist/Editor/common/CustomDialog2/style.js +67 -0
- package/dist/Editor/common/CustomSelect.js +43 -0
- package/dist/Editor/common/DnD/DragHandleButton.js +1 -1
- package/dist/Editor/common/FontLoader/FontLoader.js +4 -0
- package/dist/Editor/common/Icon.js +28 -0
- package/dist/Editor/common/ImageSelector/ImageSelector.js +45 -7
- package/dist/Editor/common/ImageSelector/Options/Upload.js +26 -11
- package/dist/Editor/common/ImageSelector/Styles.js +3 -9
- package/dist/Editor/common/LinkSettings/NavComponents.js +6 -2
- package/dist/Editor/common/MentionsPopup/index.js +9 -1
- package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Settings.js +2 -1
- package/dist/Editor/common/RnD/ElementSettings/Settings/AppHeaderSettings.js +3 -2
- package/dist/Editor/common/RnD/ElementSettings/Settings/BoxSettings.js +3 -2
- package/dist/Editor/common/RnD/ElementSettings/Settings/ButtonSettings.js +3 -2
- package/dist/Editor/common/RnD/ElementSettings/Settings/CodeSettings.js +3 -2
- package/dist/Editor/common/RnD/ElementSettings/Settings/FormSettings.js +4 -2
- package/dist/Editor/common/RnD/ElementSettings/Settings/ImageSettings.js +20 -7
- package/dist/Editor/common/RnD/ElementSettings/Settings/TableSettings.js +3 -2
- package/dist/Editor/common/RnD/ElementSettings/Settings/TextSettings.js +9 -1
- package/dist/Editor/common/RnD/ElementSettings/Settings/VideoSettings.js +20 -7
- package/dist/Editor/common/RnD/GuideLines/styles.js +1 -1
- package/dist/Editor/common/RnD/SwitchViewport/SwitchViewport.js +11 -2
- package/dist/Editor/common/RnD/Theme/MainThemeProvider.js +17 -0
- package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +6 -3
- package/dist/Editor/common/RnD/Utils/gridDropItem.js +28 -18
- package/dist/Editor/common/RnD/Utils/index.js +3 -1
- package/dist/Editor/common/RnD/VirtualElement/VirtualTextElement.js +45 -58
- package/dist/Editor/common/RnD/VirtualElement/helper.js +320 -130
- package/dist/Editor/common/RnD/VirtualElement/styles.js +22 -0
- package/dist/Editor/common/RnD/index.js +48 -13
- package/dist/Editor/common/Shorthands/elements.js +62 -4
- package/dist/Editor/common/StyleBuilder/buttonStyle.js +4 -2
- package/dist/Editor/common/StyleBuilder/embedVideoStyle.js +4 -0
- package/dist/Editor/common/StyleBuilder/fieldStyle.js +1 -0
- package/dist/Editor/common/StyleBuilder/fieldTypes/backgroundImage.js +15 -2
- package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +12 -2
- package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +15 -7
- package/dist/Editor/common/StyleBuilder/fieldTypes/card.js +16 -8
- package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +36 -10
- package/dist/Editor/common/StyleBuilder/fieldTypes/embedUpload.js +115 -0
- package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +16 -7
- package/dist/Editor/common/StyleBuilder/fieldTypes/index.js +3 -1
- package/dist/Editor/common/StyleBuilder/fieldTypes/menusArray.js +2 -0
- package/dist/Editor/common/StyleBuilder/fieldTypes/text.js +0 -1
- package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +15 -7
- package/dist/Editor/common/StyleBuilder/formStyle.js +19 -13
- package/dist/Editor/common/StyleBuilder/index.js +8 -4
- package/dist/Editor/common/Uploader.js +125 -17
- package/dist/Editor/common/UploaderWithProgress.js +183 -0
- package/dist/Editor/common/iconslist.js +21 -0
- package/dist/Editor/commonStyle.js +64 -45
- package/dist/Editor/helper/index.js +10 -2
- package/dist/Editor/helper/textIndeces.js +58 -0
- package/dist/Editor/helper/theme.js +203 -2
- package/dist/Editor/hooks/useEditorTheme.js +153 -0
- package/dist/Editor/hooks/useMouseMove.js +9 -3
- package/dist/Editor/hooks/useTable.js +62 -1
- package/dist/Editor/hooks/useThemeValues.js +63 -0
- package/dist/Editor/plugins/withEmbeds.js +12 -1
- package/dist/Editor/plugins/withHTML.js +58 -3
- package/dist/Editor/plugins/withTable.js +1 -1
- package/dist/Editor/service/fileupload.js +70 -0
- package/dist/Editor/theme/ThemeList.js +50 -173
- package/dist/Editor/theme/index.js +149 -0
- package/dist/Editor/themeSettings/ActiveTheme.js +82 -0
- package/dist/Editor/themeSettings/buttons/index.js +300 -0
- package/dist/Editor/themeSettings/buttons/style.js +23 -0
- package/dist/Editor/themeSettings/colorTheme/index.js +310 -0
- package/dist/Editor/themeSettings/colorTheme/style.js +81 -0
- package/dist/Editor/themeSettings/fonts/PreviewElement.js +121 -0
- package/dist/Editor/themeSettings/fonts/index.js +240 -0
- package/dist/Editor/themeSettings/fonts/style.js +62 -0
- package/dist/Editor/themeSettings/icons.js +60 -0
- package/dist/Editor/themeSettings/index.js +380 -0
- package/dist/Editor/themeSettings/style.js +299 -0
- package/dist/Editor/themeSettingsAI/icons.js +96 -0
- package/dist/Editor/themeSettingsAI/index.js +355 -0
- package/dist/Editor/themeSettingsAI/saveTheme.js +202 -0
- package/dist/Editor/themeSettingsAI/style.js +332 -0
- package/dist/Editor/utils/SlateUtilityFunctions.js +189 -40
- package/dist/Editor/utils/accordion.js +68 -40
- package/dist/Editor/utils/button.js +1 -17
- package/dist/Editor/utils/draftToSlate.js +3 -2
- package/dist/Editor/utils/events.js +94 -89
- package/dist/Editor/utils/font.js +40 -37
- package/dist/Editor/utils/formfield.js +2 -2
- package/dist/Editor/utils/helper.js +98 -22
- package/dist/Editor/utils/insertAppHeader.js +8 -4
- package/package.json +4 -4
- package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/MultiSelect.js +0 -454
@@ -28,8 +28,9 @@ export const TopBannerToolbar = props => {
|
|
28
28
|
}
|
29
29
|
};
|
30
30
|
const onSelectImage = img => {
|
31
|
+
const embedURL = typeof img === "string" ? img : img?.embedURL ? img?.embedURL : null;
|
31
32
|
updateTopBanner(editor, {
|
32
|
-
url:
|
33
|
+
url: embedURL
|
33
34
|
});
|
34
35
|
handleClose();
|
35
36
|
};
|
@@ -56,7 +57,8 @@ export const TopBannerToolbar = props => {
|
|
56
57
|
open: open,
|
57
58
|
onClose: handleClose,
|
58
59
|
customProps: customProps,
|
59
|
-
onSelectImage: onSelectImage
|
60
|
+
onSelectImage: onSelectImage,
|
61
|
+
disableProgress: true
|
60
62
|
})]
|
61
63
|
});
|
62
64
|
};
|
@@ -17,9 +17,10 @@ const TopBannerButton = props => {
|
|
17
17
|
translation
|
18
18
|
} = customProps;
|
19
19
|
const onSelectImage = url => {
|
20
|
-
|
20
|
+
const embedURL = typeof url === "string" ? url : url?.embedURL ? url?.embedURL : null;
|
21
|
+
if (embedURL) {
|
21
22
|
insertTopBanner(editor, {
|
22
|
-
url
|
23
|
+
url: embedURL
|
23
24
|
});
|
24
25
|
}
|
25
26
|
setOpen(false);
|
@@ -42,7 +43,8 @@ const TopBannerButton = props => {
|
|
42
43
|
open: open,
|
43
44
|
onClose: handleClose,
|
44
45
|
customProps: customProps,
|
45
|
-
onSelectImage: onSelectImage
|
46
|
+
onSelectImage: onSelectImage,
|
47
|
+
disableProgress: true
|
46
48
|
})]
|
47
49
|
});
|
48
50
|
};
|
@@ -34,7 +34,8 @@ const VariableButton = props => {
|
|
34
34
|
PaperProps: {
|
35
35
|
style: {
|
36
36
|
maxHeight: 300,
|
37
|
-
overflowY: "auto"
|
37
|
+
overflowY: "auto",
|
38
|
+
transformOrigin: 'top left'
|
38
39
|
},
|
39
40
|
sx: {
|
40
41
|
"&::-webkit-scrollbar-track": {
|
@@ -44,6 +45,14 @@ const VariableButton = props => {
|
|
44
45
|
borderRadius: "16px"
|
45
46
|
}
|
46
47
|
}
|
48
|
+
},
|
49
|
+
anchorOrigin: {
|
50
|
+
vertical: 'bottom',
|
51
|
+
horizontal: 'right'
|
52
|
+
},
|
53
|
+
transformOrigin: {
|
54
|
+
vertical: 'top',
|
55
|
+
horizontal: 'right'
|
47
56
|
}
|
48
57
|
},
|
49
58
|
children: [/*#__PURE__*/_jsx(MenuItem, {
|
@@ -45,12 +45,13 @@ const MiniEditor = props => {
|
|
45
45
|
const {
|
46
46
|
translationMock
|
47
47
|
} = otherProps;
|
48
|
+
const dummyTranslation = () => {};
|
48
49
|
const customProps = {
|
49
50
|
...(otherProps || {}),
|
50
51
|
readOnly: isReadOnly,
|
51
52
|
editorPlaceholder: miniEditorPlaceholder,
|
52
53
|
page_id: id,
|
53
|
-
translation: translation || translationMock
|
54
|
+
translation: translation || translationMock || dummyTranslation
|
54
55
|
};
|
55
56
|
const [mentions, setMentions] = useMentions({
|
56
57
|
editor,
|
@@ -14,9 +14,6 @@ const editorStyles = ({
|
|
14
14
|
"*": {
|
15
15
|
boxSizing: "border-box"
|
16
16
|
},
|
17
|
-
"& .blockQuoteComp": {
|
18
|
-
backgroundColor: `${theme?.palette?.editor?.colorBoxBg} !important`
|
19
|
-
},
|
20
17
|
"&.iframe-editor": {
|
21
18
|
"& .mini-tool-wrpr-ei": {
|
22
19
|
display: "none"
|
@@ -136,7 +133,11 @@ const editorStyles = ({
|
|
136
133
|
},
|
137
134
|
"& .accordion-summary-collapse-btn": {
|
138
135
|
padding: "4px",
|
139
|
-
width:
|
136
|
+
width: "5px",
|
137
|
+
"& svg:hover": {
|
138
|
+
background: theme?.palette?.editor?.tv_hover_bg,
|
139
|
+
borderRadius: "4px"
|
140
|
+
}
|
140
141
|
},
|
141
142
|
"& .workflow-icon-btn": {
|
142
143
|
pointerEvents: "none",
|
@@ -218,6 +219,17 @@ const editorStyles = ({
|
|
218
219
|
borderRadius: "12px",
|
219
220
|
"& svg": {
|
220
221
|
marginRight: "8px"
|
222
|
+
},
|
223
|
+
"& .circularProgress-cls": {
|
224
|
+
"& svg": {
|
225
|
+
width: "15px !important",
|
226
|
+
height: "15px !important"
|
227
|
+
}
|
228
|
+
},
|
229
|
+
"& .uploadCancel": {
|
230
|
+
color: theme?.palette?.editor?.closeButtonSvgStroke,
|
231
|
+
width: "25px !important",
|
232
|
+
height: "25px !important"
|
221
233
|
}
|
222
234
|
},
|
223
235
|
"& .content-editable.empty": {
|
@@ -245,7 +257,7 @@ const editorStyles = ({
|
|
245
257
|
}
|
246
258
|
},
|
247
259
|
"& .section-tw": {
|
248
|
-
background:
|
260
|
+
background: "transparent !important",
|
249
261
|
"& button": {
|
250
262
|
padding: "2px",
|
251
263
|
borderRadius: "0px",
|
@@ -294,8 +306,8 @@ const editorStyles = ({
|
|
294
306
|
}
|
295
307
|
},
|
296
308
|
"& ::selection": {
|
297
|
-
background: 'rgba(35, 131, 226, 0.35)!important',
|
298
|
-
color:
|
309
|
+
// background: 'rgba(35, 131, 226, 0.35)!important',
|
310
|
+
color: "inherit"
|
299
311
|
},
|
300
312
|
"&.readOnlyContainer": {
|
301
313
|
"& .max-content": {
|
@@ -305,7 +317,7 @@ const editorStyles = ({
|
|
305
317
|
},
|
306
318
|
fullScreenWrapper: {
|
307
319
|
"& .editor-wrapper": {
|
308
|
-
paddingTop:
|
320
|
+
paddingTop: "20px"
|
309
321
|
},
|
310
322
|
"& .MuiDialog-paper, & .MuiPopover-paper": {
|
311
323
|
background: `${theme?.palette?.editor?.background} !important`
|
@@ -1,8 +1,32 @@
|
|
1
1
|
import React from "react";
|
2
2
|
import { Select, MenuItem } from "@mui/material";
|
3
|
-
import { addMarkData, activeMark } from "../../utils/SlateUtilityFunctions.js";
|
3
|
+
import { addMarkData, activeMark, getSelectedElementStyle } from "../../utils/SlateUtilityFunctions.js";
|
4
|
+
import { toolbarGroups } from "../toolbarGroups.js";
|
4
5
|
import KeyboardArrowDownRoundedIcon from "@mui/icons-material/KeyboardArrowDownRounded";
|
6
|
+
import { googleFontList as defaultFonts } from "../../common/FontLoader/FontList.js";
|
5
7
|
import { jsx as _jsx } from "react/jsx-runtime";
|
8
|
+
const allTools = toolbarGroups.flat();
|
9
|
+
const fontWeight = allTools.find(f => f.format === "fontWeight");
|
10
|
+
export const getValue = (editor, format) => {
|
11
|
+
switch (format) {
|
12
|
+
case "fontFamily":
|
13
|
+
{
|
14
|
+
const style = getSelectedElementStyle("font-family", editor, format);
|
15
|
+
return style || defaultFonts[0];
|
16
|
+
}
|
17
|
+
case "fontWeight":
|
18
|
+
{
|
19
|
+
const {
|
20
|
+
options
|
21
|
+
} = fontWeight || {};
|
22
|
+
const fontWeightStyle = getSelectedElementStyle("font-weight", editor, format);
|
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
|
+
};
|
6
30
|
const Dropdown = ({
|
7
31
|
classes,
|
8
32
|
editor,
|
@@ -10,7 +34,7 @@ const Dropdown = ({
|
|
10
34
|
options,
|
11
35
|
width
|
12
36
|
}) => {
|
13
|
-
const value = activeMark(editor, format);
|
37
|
+
const value = activeMark(editor, format, true) || getValue(editor, format);
|
14
38
|
const changeMarkData = (event, format) => {
|
15
39
|
event.preventDefault();
|
16
40
|
const value = event.target.value;
|
@@ -20,7 +44,7 @@ const Dropdown = ({
|
|
20
44
|
});
|
21
45
|
};
|
22
46
|
return /*#__PURE__*/_jsx(Select, {
|
23
|
-
value: value,
|
47
|
+
value: value || options?.[0]?.value,
|
24
48
|
className: "editor-dd",
|
25
49
|
onChange: e => changeMarkData(e, format),
|
26
50
|
MenuProps: {
|
@@ -1,9 +1,10 @@
|
|
1
1
|
import React from "react";
|
2
2
|
import { Autocomplete, TextField } from "@mui/material";
|
3
|
-
import {
|
3
|
+
import { addMarkData } from "../../utils/SlateUtilityFunctions.js";
|
4
4
|
import usePopupStyle from "../PopupTool/PopupToolStyle.js";
|
5
5
|
import { useEditorContext } from "../../hooks/useMouseMove.js";
|
6
|
-
import KeyboardArrowDownRoundedIcon from
|
6
|
+
import KeyboardArrowDownRoundedIcon from "@mui/icons-material/KeyboardArrowDownRounded";
|
7
|
+
import { getValue } from "./Dropdown.js";
|
7
8
|
import { jsx as _jsx } from "react/jsx-runtime";
|
8
9
|
const FontFamilyAutocomplete = ({
|
9
10
|
editor,
|
@@ -14,7 +15,7 @@ const FontFamilyAutocomplete = ({
|
|
14
15
|
val = "",
|
15
16
|
webFont = false
|
16
17
|
}) => {
|
17
|
-
const markValue =
|
18
|
+
const markValue = getValue(editor, format);
|
18
19
|
const value = !webFont ? markValue : val;
|
19
20
|
const changeMarkData = (event, newValue, format) => {
|
20
21
|
if (!webFont) {
|
@@ -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, isMarkBtnActive } from "../../utils/SlateUtilityFunctions.js";
|
5
5
|
import { jsx as _jsx } from "react/jsx-runtime";
|
6
6
|
const MarkButton = ({
|
7
7
|
editor,
|
@@ -13,7 +13,7 @@ const MarkButton = ({
|
|
13
13
|
translation
|
14
14
|
} = customProps;
|
15
15
|
return /*#__PURE__*/_jsx(Button, {
|
16
|
-
active:
|
16
|
+
active: isMarkBtnActive(editor, format),
|
17
17
|
format: format,
|
18
18
|
onMouseDown: e => {
|
19
19
|
e.preventDefault();
|
@@ -1,27 +1,36 @@
|
|
1
1
|
import React, { useEffect, useRef, useState } from "react";
|
2
2
|
import { TextField, IconButton } from "@mui/material";
|
3
|
-
import { addMarkData, activeMark
|
4
|
-
import {
|
5
|
-
import { getBreakPointsValue } from "../../helper/theme.js";
|
3
|
+
import { addMarkData, activeMark } from "../../utils/SlateUtilityFunctions.js";
|
4
|
+
import { getBreakPointsValue, getTextSizeVal } from "../../helper/theme.js";
|
6
5
|
import useWindowResize from "../../hooks/useWindowResize.js";
|
7
6
|
import { BREAKPOINTS_DEVICES } from "../../helper/theme.js";
|
8
7
|
import { TextSizeDownArrow, TextSizeUpArrow } from "../../common/iconListV2.js";
|
9
8
|
import { jsx as _jsx } from "react/jsx-runtime";
|
10
9
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
11
10
|
import { Fragment as _Fragment } from "react/jsx-runtime";
|
12
|
-
const TextSize =
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
11
|
+
const TextSize = props => {
|
12
|
+
const {
|
13
|
+
classes,
|
14
|
+
editor,
|
15
|
+
format,
|
16
|
+
fullWidth,
|
17
|
+
fromMiniTextFormat,
|
18
|
+
setResizedSize,
|
19
|
+
resizedSize
|
20
|
+
} = props;
|
21
21
|
const [fontSize, setFontSize] = useState();
|
22
|
+
const sizeValue = fromMiniTextFormat ? resizedSize : fontSize;
|
23
|
+
const setSizeValue = fromMiniTextFormat ? setResizedSize : setFontSize;
|
22
24
|
const timerRef = useRef();
|
25
|
+
const [size] = useWindowResize();
|
26
|
+
const val = activeMark(editor, format);
|
27
|
+
|
28
|
+
// const noFontSize =
|
29
|
+
// val === "normal" || (typeof val === "object" && !Object.keys(val)?.length);
|
30
|
+
|
31
|
+
const value = getTextSizeVal(editor);
|
23
32
|
useEffect(() => {
|
24
|
-
|
33
|
+
setSizeValue(getSizeVal());
|
25
34
|
}, [value]);
|
26
35
|
const updateMarkData = newVal => {
|
27
36
|
let upData = {
|
@@ -48,38 +57,33 @@ const TextSize = ({
|
|
48
57
|
if (value) {
|
49
58
|
let inc = parseInt(value);
|
50
59
|
inc = inc > 200 ? 200 : inc;
|
60
|
+
setSizeValue(inc);
|
51
61
|
updateMarkData(inc);
|
52
62
|
} else {
|
53
|
-
|
63
|
+
setSizeValue(null);
|
54
64
|
}
|
55
65
|
};
|
56
66
|
const getSizeVal = () => {
|
57
67
|
try {
|
58
|
-
|
59
|
-
Object.entries(headingMap).forEach(([format, value]) => {
|
60
|
-
if (isBlockActive(editor, format) && isNaN(parseInt(size))) {
|
61
|
-
size = value;
|
62
|
-
}
|
63
|
-
});
|
64
|
-
return parseInt(size);
|
68
|
+
return parseInt(value);
|
65
69
|
} catch (err) {
|
66
70
|
return "";
|
67
71
|
}
|
68
72
|
};
|
69
|
-
const combinedOldVal = getSizeVal();
|
70
73
|
const onIncreaseSize = () => {
|
71
|
-
|
72
|
-
|
73
|
-
updateMarkData(
|
74
|
+
const newValue = Math.min((sizeValue || 16) + 1, 200);
|
75
|
+
setSizeValue(newValue);
|
76
|
+
updateMarkData(newValue);
|
74
77
|
};
|
75
78
|
const onDecreaseSize = () => {
|
76
|
-
const
|
77
|
-
|
79
|
+
const newValue = sizeValue ? Math.max(sizeValue - 1, 1) : 16;
|
80
|
+
setSizeValue(newValue);
|
81
|
+
updateMarkData(newValue);
|
78
82
|
};
|
79
83
|
const onChange = e => {
|
80
84
|
clearTimeout(timerRef.current);
|
81
85
|
const value = e.target.value;
|
82
|
-
|
86
|
+
setSizeValue(value);
|
83
87
|
timerRef.current = setTimeout(() => {
|
84
88
|
onChangeSize(value);
|
85
89
|
}, 500);
|
@@ -87,7 +91,7 @@ const TextSize = ({
|
|
87
91
|
return /*#__PURE__*/_jsx(_Fragment, {
|
88
92
|
children: /*#__PURE__*/_jsx(TextField, {
|
89
93
|
sx: classes?.textSize,
|
90
|
-
value:
|
94
|
+
value: sizeValue || 16,
|
91
95
|
onChange: onChange,
|
92
96
|
size: "small",
|
93
97
|
inputProps: {
|
@@ -12,7 +12,8 @@ function MiniColorPicker(props) {
|
|
12
12
|
classes,
|
13
13
|
id,
|
14
14
|
editor,
|
15
|
-
customProps
|
15
|
+
customProps,
|
16
|
+
type
|
16
17
|
} = props;
|
17
18
|
const [openColorTool, setOpenColorTool] = useState(null);
|
18
19
|
const {
|
@@ -38,7 +39,8 @@ function MiniColorPicker(props) {
|
|
38
39
|
classes: classes,
|
39
40
|
forMiniTool: true,
|
40
41
|
openColorTool: openColorTool,
|
41
|
-
closeColorTool: () => setOpenColorTool(null)
|
42
|
+
closeColorTool: () => setOpenColorTool(null),
|
43
|
+
type: type
|
42
44
|
}, id)]
|
43
45
|
});
|
44
46
|
}
|
@@ -1,25 +1,30 @@
|
|
1
1
|
import { useEffect, useRef, useState } from "react";
|
2
|
-
import { activeMark, addMarkData
|
2
|
+
import { activeMark, addMarkData } 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 } from "../../../helper/theme";
|
7
|
-
import { headingMap, sizeMap } from "../../../utils/font";
|
6
|
+
import { BREAKPOINTS_DEVICES, getBreakPointsValue, getTextSizeVal } from "../../../helper/theme";
|
8
7
|
import { jsx as _jsx } from "react/jsx-runtime";
|
9
8
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
10
9
|
const fontSizeOptions = [8, 9, 10, 11, 12, 14, 16, 18, 20, 22, 26, 32, 36, 40, 48, 64, 96, 128];
|
11
|
-
function SelectFontSize({
|
12
|
-
|
13
|
-
|
14
|
-
|
10
|
+
function SelectFontSize(props) {
|
11
|
+
const {
|
12
|
+
editor,
|
13
|
+
classes,
|
14
|
+
fromMiniTextFormat,
|
15
|
+
setResizedSize,
|
16
|
+
resizedSize
|
17
|
+
} = props;
|
15
18
|
const format = "fontSize";
|
16
19
|
const [fontSize, setFontSize] = useState();
|
20
|
+
const sizeValue = fromMiniTextFormat ? resizedSize : fontSize;
|
21
|
+
const setSizeValue = fromMiniTextFormat ? setResizedSize : setFontSize;
|
17
22
|
const [anchorEl, setAnchorEl] = useState(null);
|
18
23
|
const open = Boolean(anchorEl);
|
19
24
|
const containerRef = useRef();
|
20
25
|
const [size] = useWindowResize();
|
21
26
|
const val = activeMark(editor, format);
|
22
|
-
const value =
|
27
|
+
const value = getTextSizeVal(editor);
|
23
28
|
const timerRef = useRef();
|
24
29
|
const updateMarkData = newVal => {
|
25
30
|
let upData = {
|
@@ -46,31 +51,28 @@ function SelectFontSize({
|
|
46
51
|
if (value) {
|
47
52
|
let inc = parseInt(value);
|
48
53
|
inc = inc > 200 ? 200 : inc;
|
54
|
+
setSizeValue(inc);
|
49
55
|
updateMarkData(inc);
|
50
56
|
} else {
|
51
|
-
|
57
|
+
setSizeValue(null);
|
52
58
|
}
|
53
59
|
};
|
54
60
|
const getSizeVal = () => {
|
55
61
|
try {
|
56
|
-
|
57
|
-
Object.entries(headingMap).forEach(([format, value]) => {
|
58
|
-
if (isBlockActive(editor, format) && isNaN(parseInt(size))) {
|
59
|
-
size = value;
|
60
|
-
}
|
61
|
-
});
|
62
|
-
return isNaN(parseInt(size)) ? 14 : parseInt(size);
|
62
|
+
return parseInt(value);
|
63
63
|
} catch (err) {
|
64
64
|
return "";
|
65
65
|
}
|
66
66
|
};
|
67
67
|
useEffect(() => {
|
68
|
-
|
68
|
+
if (value) {
|
69
|
+
setSizeValue(getSizeVal());
|
70
|
+
}
|
69
71
|
}, [value]);
|
70
72
|
const onChange = e => {
|
71
73
|
clearTimeout(timerRef.current);
|
72
74
|
const value = e.target.value;
|
73
|
-
|
75
|
+
setSizeValue(value);
|
74
76
|
timerRef.current = setTimeout(() => {
|
75
77
|
onChangeSize(value);
|
76
78
|
}, 500);
|
@@ -83,7 +85,7 @@ function SelectFontSize({
|
|
83
85
|
},
|
84
86
|
children: [/*#__PURE__*/_jsx(TextField, {
|
85
87
|
sx: classes?.miniFontSizeInput,
|
86
|
-
value:
|
88
|
+
value: sizeValue,
|
87
89
|
onChange: onChange,
|
88
90
|
size: "small"
|
89
91
|
}), /*#__PURE__*/_jsx(IconButton, {
|
@@ -97,16 +99,16 @@ function SelectFontSize({
|
|
97
99
|
anchorEl: anchorEl,
|
98
100
|
onClose: () => setAnchorEl(null),
|
99
101
|
anchorOrigin: {
|
100
|
-
vertical:
|
101
|
-
horizontal:
|
102
|
+
vertical: "bottom",
|
103
|
+
horizontal: "left"
|
102
104
|
},
|
103
105
|
sx: classes.customSelectPopoverWrapper,
|
104
106
|
children: fontSizeOptions.map((s, i) => {
|
105
107
|
return /*#__PURE__*/_jsx("div", {
|
106
108
|
children: /*#__PURE__*/_jsx(Button, {
|
107
|
-
className: `customSelectOptionLabel ${
|
109
|
+
className: `customSelectOptionLabel ${sizeValue === s ? "selected" : ""}`,
|
108
110
|
onClick: () => {
|
109
|
-
|
111
|
+
setSizeValue(s);
|
110
112
|
onChangeSize(s);
|
111
113
|
},
|
112
114
|
children: s
|
@@ -2,7 +2,7 @@ import { useMemo } from "react";
|
|
2
2
|
import { isBlockActive, toggleBlock } from "../../../utils/SlateUtilityFunctions";
|
3
3
|
import CustomSelectTool from "./CustomSelectTool";
|
4
4
|
import Icon from "../../../common/Icon";
|
5
|
-
import { insertAccordion } from "../../../utils/accordion";
|
5
|
+
import { insertAccordion, toggleAccordion } from "../../../utils/accordion";
|
6
6
|
import { jsx as _jsx } from "react/jsx-runtime";
|
7
7
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
8
8
|
function Label({
|
@@ -16,8 +16,8 @@ function Label({
|
|
16
16
|
}), " ", label]
|
17
17
|
});
|
18
18
|
}
|
19
|
-
function getListOptions(translation) {
|
20
|
-
|
19
|
+
function getListOptions(translation, listType) {
|
20
|
+
const list = [{
|
21
21
|
id: 15,
|
22
22
|
value: "orderedList",
|
23
23
|
type: "block",
|
@@ -53,7 +53,8 @@ function getListOptions(translation) {
|
|
53
53
|
icon: "check-list-item"
|
54
54
|
}),
|
55
55
|
group: "list"
|
56
|
-
}
|
56
|
+
}];
|
57
|
+
const accordion = [{
|
57
58
|
id: 30,
|
58
59
|
value: "accordion",
|
59
60
|
type: "accordion",
|
@@ -67,17 +68,30 @@ function getListOptions(translation) {
|
|
67
68
|
icon: "accordion"
|
68
69
|
})
|
69
70
|
}];
|
71
|
+
let options = [];
|
72
|
+
if (listType === "accordion-summary") {
|
73
|
+
options = [...accordion];
|
74
|
+
} else if (listType === "list-item") {
|
75
|
+
options = [...list];
|
76
|
+
} else {
|
77
|
+
options = [...list, ...accordion];
|
78
|
+
}
|
79
|
+
return options;
|
70
80
|
}
|
71
81
|
function SelectList({
|
72
82
|
editor,
|
73
83
|
classes,
|
74
84
|
closeMainPopup,
|
75
|
-
customProps
|
85
|
+
customProps,
|
86
|
+
commonProps
|
76
87
|
}) {
|
77
88
|
const {
|
78
89
|
translation
|
79
90
|
} = customProps;
|
80
|
-
const
|
91
|
+
const {
|
92
|
+
listType
|
93
|
+
} = commonProps || {};
|
94
|
+
const listOptions = getListOptions(translation, listType);
|
81
95
|
const selectedList = useMemo(() => {
|
82
96
|
return listOptions.find(t => isBlockActive(editor, t.value));
|
83
97
|
}, [listOptions, isBlockActive, editor]);
|
@@ -85,7 +99,11 @@ function SelectList({
|
|
85
99
|
if (option.type === "block") {
|
86
100
|
toggleBlock(editor, format);
|
87
101
|
} else if (option.type === "accordion") {
|
88
|
-
|
102
|
+
if (listType === "accordion-summary") {
|
103
|
+
toggleAccordion(editor);
|
104
|
+
} else {
|
105
|
+
insertAccordion(editor);
|
106
|
+
}
|
89
107
|
}
|
90
108
|
closeMainPopup();
|
91
109
|
};
|