@flozy/editor 10.5.0 → 10.5.1

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.
Files changed (192) hide show
  1. package/dist/Editor/ChatEditor.js +16 -17
  2. package/dist/Editor/CommonEditor.js +18 -134
  3. package/dist/Editor/DialogWrapper.js +25 -31
  4. package/dist/Editor/Editor.css +8 -46
  5. package/dist/Editor/Elements/AI/PopoverAIInput.js +3 -11
  6. package/dist/Editor/Elements/Accordion/Accordion.js +9 -46
  7. package/dist/Editor/Elements/Accordion/AccordionSummary.js +23 -1
  8. package/dist/Editor/Elements/AppHeader/AppHeader.js +5 -10
  9. package/dist/Editor/Elements/Button/EditorButton.js +10 -26
  10. package/dist/Editor/Elements/Carousel/CarouselItem.js +1 -2
  11. package/dist/Editor/Elements/Color Picker/ColorButtons.js +14 -61
  12. package/dist/Editor/Elements/Color Picker/ColorPicker.css +1 -25
  13. package/dist/Editor/Elements/Color Picker/ColorPicker.js +7 -10
  14. package/dist/Editor/Elements/Color Picker/Styles.js +13 -15
  15. package/dist/Editor/Elements/DataView/Layouts/ColumnView.js +2 -4
  16. package/dist/Editor/Elements/DataView/Layouts/DataTypes/MultiSelectType.js +11 -26
  17. package/dist/Editor/Elements/DataView/Layouts/DataTypes/SelectType.js +9 -28
  18. package/dist/Editor/Elements/DataView/Layouts/Options/AddOptions.js +6 -17
  19. package/dist/Editor/Elements/DataView/Layouts/Options/EditOption.js +16 -43
  20. package/dist/Editor/Elements/DataView/Layouts/Options/index.js +0 -11
  21. package/dist/Editor/Elements/DataView/Layouts/ViewData.js +4 -8
  22. package/dist/Editor/Elements/Embed/Image.js +2 -3
  23. package/dist/Editor/Elements/Embed/Video.js +1 -1
  24. package/dist/Editor/Elements/EmbedScript/Code.js +2 -14
  25. package/dist/Editor/Elements/EmbedScript/EmbedScriptPopup.js +28 -57
  26. package/dist/Editor/Elements/Form/Form.js +171 -184
  27. package/dist/Editor/Elements/Form/FormElements/FormText.js +6 -23
  28. package/dist/Editor/Elements/Form/FormElements/FormTextArea.js +2 -2
  29. package/dist/Editor/Elements/Form/FormField.js +6 -13
  30. package/dist/Editor/Elements/Form/Workflow/Styles.js +22 -24
  31. package/dist/Editor/Elements/FreeGrid/FreeGrid.js +32 -40
  32. package/dist/Editor/Elements/FreeGrid/FreeGridBox.js +4 -7
  33. package/dist/Editor/Elements/FreeGrid/FreeGridItem.js +0 -1
  34. package/dist/Editor/Elements/FreeGrid/Options/More.js +8 -8
  35. package/dist/Editor/Elements/FreeGrid/styles.js +7 -75
  36. package/dist/Editor/Elements/Grid/Grid.js +2 -14
  37. package/dist/Editor/Elements/Grid/GridItem.js +1 -1
  38. package/dist/Editor/Elements/List/CheckList.js +2 -3
  39. package/dist/Editor/Elements/Search/SearchAttachment.js +9 -40
  40. package/dist/Editor/Elements/Search/SearchButton.js +8 -9
  41. package/dist/Editor/Elements/Search/SearchList.js +7 -9
  42. package/dist/Editor/Elements/Signature/Signature.css +1 -2
  43. package/dist/Editor/Elements/Signature/SignatureOptions/DrawSignature.js +5 -18
  44. package/dist/Editor/Elements/Signature/SignatureOptions/UploadSignature.js +3 -16
  45. package/dist/Editor/Elements/SimpleText/index.js +1 -6
  46. package/dist/Editor/Elements/SimpleText/style.js +2 -2
  47. package/dist/Editor/Elements/Table/AddRowCol.js +2 -8
  48. package/dist/Editor/Elements/Table/DragButton.js +1 -0
  49. package/dist/Editor/Elements/Table/Draggable.js +2 -6
  50. package/dist/Editor/Elements/Table/Styles.js +0 -7
  51. package/dist/Editor/Elements/Table/Table.js +3 -3
  52. package/dist/Editor/Elements/Table/TableCell.js +8 -31
  53. package/dist/Editor/Elements/Title/title.js +6 -6
  54. package/dist/Editor/Elements/Variables/VariableButton.js +1 -10
  55. package/dist/Editor/MiniEditor.js +1 -2
  56. package/dist/Editor/Styles/EditorStyles.js +5 -5
  57. package/dist/Editor/Toolbar/FormatTools/Dropdown.js +3 -27
  58. package/dist/Editor/Toolbar/FormatTools/FontFamilyAutocomplete.js +3 -4
  59. package/dist/Editor/Toolbar/FormatTools/MarkButton.js +2 -2
  60. package/dist/Editor/Toolbar/FormatTools/TextSize.js +13 -10
  61. package/dist/Editor/Toolbar/Mini/MiniToolbar.js +1 -2
  62. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/MiniColorPicker.js +2 -4
  63. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +13 -6
  64. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +42 -167
  65. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +4 -7
  66. package/dist/Editor/Toolbar/PopupTool/PopperHeader.js +1 -2
  67. package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +12 -72
  68. package/dist/Editor/Toolbar/PopupTool/TextFormat.js +27 -100
  69. package/dist/Editor/Toolbar/PopupTool/index.js +1 -1
  70. package/dist/Editor/Toolbar/toolbarGroups.js +6 -48
  71. package/dist/Editor/assets/svg/SettingsIcon.js +0 -1
  72. package/dist/Editor/common/ColorPickerButton.js +16 -41
  73. package/dist/Editor/common/DnD/DragHandleButton.js +1 -1
  74. package/dist/Editor/common/FontLoader/FontLoader.js +0 -3
  75. package/dist/Editor/common/Icon.js +1 -31
  76. package/dist/Editor/common/ImageSelector/ImageSelector.js +2 -2
  77. package/dist/Editor/common/ImageSelector/Styles.js +9 -3
  78. package/dist/Editor/common/LinkSettings/NavComponents.js +55 -61
  79. package/dist/Editor/common/LinkSettings/index.js +80 -82
  80. package/dist/Editor/common/LinkSettings/navOptions.js +2 -2
  81. package/dist/Editor/common/LinkSettings/style.js +74 -209
  82. package/dist/Editor/common/MentionsPopup/index.js +1 -4
  83. package/dist/Editor/common/RnD/ElementOptions/Actions.js +15 -13
  84. package/dist/Editor/common/RnD/ElementOptions/Icons/LinkIcon.js +0 -1
  85. package/dist/Editor/common/RnD/ElementOptions/index.js +2 -2
  86. package/dist/Editor/common/RnD/ElementOptions/styles.js +1 -28
  87. package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Settings.js +5 -6
  88. package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Signature.js +3 -4
  89. package/dist/Editor/common/RnD/ElementSettings/Settings/AppHeaderSettings.js +2 -3
  90. package/dist/Editor/common/RnD/ElementSettings/Settings/BoxSettings.js +2 -3
  91. package/dist/Editor/common/RnD/ElementSettings/Settings/ButtonSettings.js +2 -3
  92. package/dist/Editor/common/RnD/ElementSettings/Settings/CodeSettings.js +2 -3
  93. package/dist/Editor/common/RnD/ElementSettings/Settings/FormSettings.js +2 -4
  94. package/dist/Editor/common/RnD/ElementSettings/Settings/ImageSettings.js +2 -3
  95. package/dist/Editor/common/RnD/ElementSettings/Settings/TableSettings.js +2 -3
  96. package/dist/Editor/common/RnD/ElementSettings/Settings/TextSettings.js +1 -3
  97. package/dist/Editor/common/RnD/ElementSettings/Settings/VideoSettings.js +2 -3
  98. package/dist/Editor/common/RnD/ElementSettings/styles.js +12 -146
  99. package/dist/Editor/common/RnD/OptionsPopup/index.js +5 -8
  100. package/dist/Editor/common/RnD/OptionsPopup/style.js +19 -120
  101. package/dist/Editor/common/RnD/SwitchViewport/SwitchViewport.js +5 -8
  102. package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +3 -6
  103. package/dist/Editor/common/RnD/Utils/gridDropItem.js +19 -28
  104. package/dist/Editor/common/RnD/Utils/index.js +1 -3
  105. package/dist/Editor/common/RnD/VirtualElement/VirtualTextElement.js +58 -42
  106. package/dist/Editor/common/RnD/VirtualElement/helper.js +132 -323
  107. package/dist/Editor/common/RnD/VirtualElement/styles.js +0 -16
  108. package/dist/Editor/common/RnD/index.js +38 -67
  109. package/dist/Editor/common/Select/index.js +5 -44
  110. package/dist/Editor/common/Select/styles.js +2 -30
  111. package/dist/Editor/common/Shorthands/elements.js +11 -65
  112. package/dist/Editor/common/StyleBuilder/accordionTitleBtnStyle.js +2 -2
  113. package/dist/Editor/common/StyleBuilder/accordionTitleStyle.js +9 -12
  114. package/dist/Editor/common/StyleBuilder/buttonStyle.js +2 -4
  115. package/dist/Editor/common/StyleBuilder/embedVideoStyle.js +0 -4
  116. package/dist/Editor/common/StyleBuilder/fieldTypes/backgroundImage.js +0 -5
  117. package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +2 -12
  118. package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +7 -15
  119. package/dist/Editor/common/StyleBuilder/fieldTypes/card.js +8 -16
  120. package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +10 -36
  121. package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +7 -16
  122. package/dist/Editor/common/StyleBuilder/fieldTypes/index.js +1 -3
  123. package/dist/Editor/common/StyleBuilder/fieldTypes/lineSpacing.js +6 -7
  124. package/dist/Editor/common/StyleBuilder/fieldTypes/menusArray.js +6 -13
  125. package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +7 -15
  126. package/dist/Editor/common/StyleBuilder/pageSettingsStyle.js +7 -5
  127. package/dist/Editor/common/SwipeableDrawer/style.js +12 -14
  128. package/dist/Editor/common/Uploader.js +0 -16
  129. package/dist/Editor/common/iconListV2.js +6 -177
  130. package/dist/Editor/common/iconslist.js +0 -24
  131. package/dist/Editor/commonStyle.js +62 -186
  132. package/dist/Editor/helper/index.js +1 -5
  133. package/dist/Editor/helper/theme.js +2 -203
  134. package/dist/Editor/hooks/useMouseMove.js +5 -8
  135. package/dist/Editor/hooks/useTable.js +4 -5
  136. package/dist/Editor/plugins/withEmbeds.js +1 -1
  137. package/dist/Editor/plugins/withHTML.js +1 -3
  138. package/dist/Editor/plugins/withTable.js +1 -1
  139. package/dist/Editor/theme/ThemeList.js +173 -50
  140. package/dist/Editor/utils/SlateUtilityFunctions.js +46 -172
  141. package/dist/Editor/utils/accordion.js +4 -14
  142. package/dist/Editor/utils/button.js +17 -1
  143. package/dist/Editor/utils/customHooks/useTableResize.js +9 -49
  144. package/dist/Editor/utils/draftToSlate.js +2 -3
  145. package/dist/Editor/utils/events.js +6 -50
  146. package/dist/Editor/utils/font.js +37 -40
  147. package/dist/Editor/utils/form.js +4 -4
  148. package/dist/Editor/utils/formfield.js +2 -9
  149. package/dist/Editor/utils/helper.js +26 -215
  150. package/dist/Editor/utils/insertAppHeader.js +1 -1
  151. package/dist/Editor/utils/signature.js +9 -2
  152. package/package.json +4 -4
  153. package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/SelectV1.js +0 -510
  154. package/dist/Editor/Elements/EmbedScript/styles.js +0 -89
  155. package/dist/Editor/Elements/FreeGrid/helper.js +0 -115
  156. package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +0 -439
  157. package/dist/Editor/assets/svg/BackIcon.js +0 -18
  158. package/dist/Editor/assets/svg/ClearAllRounded.js +0 -31
  159. package/dist/Editor/assets/svg/ResetIconNew.js +0 -23
  160. package/dist/Editor/assets/svg/ThemeIcons.js +0 -293
  161. package/dist/Editor/common/Checkbox/index.js +0 -46
  162. package/dist/Editor/common/Checkbox/styles.js +0 -45
  163. package/dist/Editor/common/CustomColorPicker/index.js +0 -130
  164. package/dist/Editor/common/CustomColorPicker/style.js +0 -53
  165. package/dist/Editor/common/CustomDialog2/index.js +0 -94
  166. package/dist/Editor/common/CustomDialog2/style.js +0 -67
  167. package/dist/Editor/common/CustomSelect.js +0 -43
  168. package/dist/Editor/common/RadioGroup/index.js +0 -48
  169. package/dist/Editor/common/RadioGroup/styles.js +0 -29
  170. package/dist/Editor/common/RnD/Theme/MainThemeProvider.js +0 -17
  171. package/dist/Editor/common/SnackBar/index.js +0 -43
  172. package/dist/Editor/common/StyleBuilder/fieldTypes/embedUpload.js +0 -115
  173. package/dist/Editor/helper/textIndeces.js +0 -58
  174. package/dist/Editor/hooks/useEditorTheme.js +0 -153
  175. package/dist/Editor/hooks/useThemeValues.js +0 -63
  176. package/dist/Editor/theme/index.js +0 -149
  177. package/dist/Editor/themeSettings/ActiveTheme.js +0 -82
  178. package/dist/Editor/themeSettings/buttons/index.js +0 -300
  179. package/dist/Editor/themeSettings/buttons/style.js +0 -23
  180. package/dist/Editor/themeSettings/colorTheme/index.js +0 -310
  181. package/dist/Editor/themeSettings/colorTheme/style.js +0 -81
  182. package/dist/Editor/themeSettings/fonts/PreviewElement.js +0 -121
  183. package/dist/Editor/themeSettings/fonts/index.js +0 -240
  184. package/dist/Editor/themeSettings/fonts/style.js +0 -62
  185. package/dist/Editor/themeSettings/icons.js +0 -60
  186. package/dist/Editor/themeSettings/index.js +0 -380
  187. package/dist/Editor/themeSettings/style.js +0 -299
  188. package/dist/Editor/themeSettingsAI/icons.js +0 -96
  189. package/dist/Editor/themeSettingsAI/index.js +0 -355
  190. package/dist/Editor/themeSettingsAI/saveTheme.js +0 -202
  191. package/dist/Editor/themeSettingsAI/style.js +0 -332
  192. package/dist/Editor/utils/updateFormName.js +0 -22
@@ -1,67 +0,0 @@
1
- const styles = () => ({
2
- dialogContainer: {
3
- "& .MuiDialogContent-root": {
4
- padding: "0px 20px"
5
- },
6
- "& .MuiDialogActions-root": {
7
- padding: "10px"
8
- },
9
- "& .MuiTypography-h6": {
10
- fontWeight: 600,
11
- fontSize: "16px",
12
- paddingRight: "20px"
13
- },
14
- "& .MuiGrid-container": {
15
- marginTop: "0px"
16
- },
17
- "& .MuiGrid-item": {
18
- padding: "14px"
19
- }
20
- },
21
- saveBtn: {
22
- color: "#fff",
23
- background: "#2563EB",
24
- fontSize: "14px",
25
- fontWeight: 500,
26
- padding: "4px 24px",
27
- textTransform: "none",
28
- "&:hover": {
29
- color: "#fff",
30
- background: "#2563EB"
31
- }
32
- },
33
- closeBtn: {
34
- backgroundColor: "#F4F6F9",
35
- color: "#64748B",
36
- fontSize: "14px",
37
- fontWeight: 500,
38
- padding: "4px 22px",
39
- textTransform: "none",
40
- border: "1px solid #D8DDE1",
41
- "&:hover": {
42
- border: "1px solid #64748B"
43
- }
44
- },
45
- closeIcon: {
46
- position: "absolute",
47
- right: 8,
48
- top: 8,
49
- color: theme => theme.palette.grey[500]
50
- },
51
- gridDivider: {
52
- borderRight: "1px solid rgba(0, 0, 0, 0.12)"
53
- },
54
- mobileActionBtns: {
55
- display: "flex",
56
- justifyContent: "flex-end",
57
- gap: "8px",
58
- paddingTop: "14px",
59
- marginTop: "14px",
60
- borderTop: theme => `1px solid ${theme.palette.grey[300]}`
61
- },
62
- mobileDialogContent: {
63
- borderTop: theme => `1px solid ${theme.palette.grey[300]}`,
64
- paddingTop: "14px"
65
- }
66
- });
67
- export default styles;
@@ -1,43 +0,0 @@
1
- import { MenuItem, Select } from "@mui/material";
2
- import { fontFamilyMap } from "../utils/font";
3
- import KeyboardArrowDownRoundedIcon from "@mui/icons-material/KeyboardArrowDownRounded";
4
- import { jsx as _jsx } from "react/jsx-runtime";
5
- function CustomSelect(props) {
6
- const {
7
- classes,
8
- onChange,
9
- options = [],
10
- value
11
- } = props;
12
- return /*#__PURE__*/_jsx(Select, {
13
- fullWidth: true,
14
- value: value,
15
- onChange: onChange,
16
- className: "editor-dd",
17
- style: {
18
- fontFamily: fontFamilyMap[value],
19
- width: "100%",
20
- height: "36px",
21
- borderRadius: "10px",
22
- fontSize: "14px"
23
- },
24
- MenuProps: {
25
- PaperProps: {
26
- sx: classes?.textOptions
27
- }
28
- },
29
- sx: classes.textFormatSelect,
30
- IconComponent: KeyboardArrowDownRoundedIcon,
31
- children: options.map((option, i) => {
32
- return /*#__PURE__*/_jsx(MenuItem, {
33
- value: option.value,
34
- style: {
35
- fontFamily: option.text || "inherit"
36
- },
37
- sx: classes.textFormatSelectOptions,
38
- children: option?.label || option?.text
39
- }, i);
40
- })
41
- });
42
- }
43
- export default CustomSelect;
@@ -1,48 +0,0 @@
1
- import { RadioGroup as Core, Radio, FormControl, FormControlLabel, IconButton, Typography } from "@mui/material";
2
- import RadioGroupStyles from "./styles";
3
- import { useEditorContext } from "../../hooks/useMouseMove";
4
- import { CheckedRadioIcon } from "../iconListV2";
5
- import { jsx as _jsx } from "react/jsx-runtime";
6
- function RadioGroup(props) {
7
- const {
8
- value,
9
- options,
10
- onChange,
11
- label,
12
- labelProps,
13
- radioProps,
14
- translation,
15
- ...rest
16
- } = props;
17
- const {
18
- theme
19
- } = useEditorContext();
20
- const classes = RadioGroupStyles(theme);
21
- return /*#__PURE__*/_jsx(FormControl, {
22
- children: /*#__PURE__*/_jsx(Core, {
23
- value: value,
24
- sx: classes.customRadioGroup,
25
- ...rest,
26
- children: options?.map((option, i) => {
27
- return /*#__PURE__*/_jsx(FormControlLabel, {
28
- value: option.value,
29
- control: /*#__PURE__*/_jsx(Radio, {
30
- checkedIcon: /*#__PURE__*/_jsx(CheckedRadioIcon, {}),
31
- icon: /*#__PURE__*/_jsx(IconButton, {
32
- className: "unCheckedIcon"
33
- }),
34
- ...(radioProps || {})
35
- }),
36
- label: /*#__PURE__*/_jsx(Typography, {
37
- variant: "body1",
38
- sx: classes.label,
39
- ...(labelProps || {}),
40
- children: translation(option.label)
41
- }),
42
- onChange: () => onChange(option)
43
- }, i);
44
- })
45
- })
46
- });
47
- }
48
- export default RadioGroup;
@@ -1,29 +0,0 @@
1
- const SelectStyles = (theme = {}) => {
2
- const {
3
- buttonBorder3,
4
- checkedIconBg,
5
- tv_text,
6
- inputFieldBgColor
7
- } = theme?.palette?.editor || {};
8
- return {
9
- customRadioGroup: {
10
- gap: "4px",
11
- "& button": {
12
- border: `1px solid ${buttonBorder3}`
13
- },
14
- "& .unCheckedIcon": {
15
- background: checkedIconBg,
16
- width: "17px",
17
- height: "17px",
18
- padding: "0px"
19
- },
20
- "& .radio-icon-path": {
21
- fill: inputFieldBgColor
22
- }
23
- },
24
- label: {
25
- color: `${tv_text} !important`
26
- }
27
- };
28
- };
29
- export default SelectStyles;
@@ -1,17 +0,0 @@
1
- import { Experimental_CssVarsProvider as CssVarsProvider, experimental_extendTheme as extendTheme } from "@mui/material/styles";
2
- import { jsx as _jsx } from "react/jsx-runtime";
3
- function MainThemeProvider({
4
- children,
5
- userSelectedTheme,
6
- theme = {}
7
- }) {
8
- const themeVars = extendTheme(userSelectedTheme?.theme?.cssVars || {});
9
- return /*#__PURE__*/_jsx(CssVarsProvider, {
10
- theme: {
11
- ...themeVars,
12
- ...theme
13
- },
14
- children: children
15
- });
16
- }
17
- export default MainThemeProvider;
@@ -1,43 +0,0 @@
1
- import Snackbar from "@mui/material/Snackbar";
2
- import Alert from "@mui/material/Alert";
3
- import { useState } from "react";
4
- import { useEditorContext } from "../../hooks/useMouseMove";
5
- import { jsx as _jsx } from "react/jsx-runtime";
6
- const SnackbarAlert = ({
7
- message,
8
- setShowSnackBar,
9
- severity = "info"
10
- }) => {
11
- const [open, setOpen] = useState(!!message);
12
- const {
13
- theme
14
- } = useEditorContext();
15
- return /*#__PURE__*/_jsx(Snackbar, {
16
- open: open,
17
- autoHideDuration: 3000,
18
- onClose: () => {
19
- setOpen(false);
20
- setShowSnackBar(false);
21
- },
22
- anchorOrigin: {
23
- vertical: "top",
24
- horizontal: "right"
25
- },
26
- children: /*#__PURE__*/_jsx(Alert, {
27
- severity: severity,
28
- onClose: () => {
29
- setOpen(false);
30
- setShowSnackBar(false);
31
- },
32
- sx: {
33
- background: theme?.palette?.primary?.gradientBtn,
34
- color: "#FFFFFF",
35
- "& .MuiAlert-icon": {
36
- color: "#FFFFFF"
37
- }
38
- },
39
- children: message
40
- })
41
- });
42
- };
43
- export default SnackbarAlert;
@@ -1,115 +0,0 @@
1
- import React, { useState } from "react";
2
- import { Grid, Button, Typography } from "@mui/material";
3
- import ImageSelector from "../../ImageSelector/ImageSelector";
4
- import UploadStyles from "../../ImageSelector/UploadStyles";
5
- import Icon from "../../Icon";
6
- import { useEditorContext } from "../../../hooks/useMouseMove";
7
- import { jsx as _jsx } from "react/jsx-runtime";
8
- import { jsxs as _jsxs } from "react/jsx-runtime";
9
- const EmbedUpload = props => {
10
- const {
11
- value,
12
- data,
13
- customProps,
14
- onChange
15
- } = props;
16
- const {
17
- translation
18
- } = customProps;
19
- const {
20
- key
21
- } = data;
22
- const [base64, setBase64] = useState(value);
23
- const [open, setOpen] = useState(false);
24
- const {
25
- theme
26
- } = useEditorContext();
27
- const classes = UploadStyles(theme);
28
- const onRemoveBG = () => {
29
- setBase64(null);
30
- onChange({
31
- [key]: "none"
32
- });
33
- };
34
- const handleClick = () => {
35
- setOpen(true);
36
- };
37
- const handleClose = () => {
38
- setOpen(false);
39
- };
40
- const onSelectImage = img => {
41
- setBase64(img);
42
- onChange({
43
- [key]: img
44
- });
45
- handleClose();
46
- };
47
- return /*#__PURE__*/_jsxs(Grid, {
48
- item: true,
49
- xs: 12,
50
- children: [/*#__PURE__*/_jsx(Typography, {
51
- variant: "body1",
52
- color: "primary",
53
- sx: {
54
- fontSize: "14px",
55
- fontWeight: "500",
56
- marginBottom: "8px"
57
- },
58
- children: translation("Upload Video")
59
- }), /*#__PURE__*/_jsx(Grid, {
60
- container: true,
61
- sx: classes.uploadContainer,
62
- children: /*#__PURE__*/_jsx(Grid, {
63
- item: true,
64
- xs: 12,
65
- sx: classes.uploadField,
66
- children: /*#__PURE__*/_jsx(Grid, {
67
- className: "uploadImageSection",
68
- children: base64 ? /*#__PURE__*/_jsxs(Grid, {
69
- justifyItems: "center",
70
- alignItems: "center",
71
- children: [/*#__PURE__*/_jsx(Typography, {
72
- style: {
73
- padding: "8px",
74
- fontSize: "8px",
75
- color: theme?.palette?.editor?.textColor,
76
- textAlign: "center"
77
- },
78
- children: base64
79
- }), /*#__PURE__*/_jsx(Grid, {
80
- className: "removeImageText",
81
- onClick: onRemoveBG,
82
- children: translation("REMOVE")
83
- })]
84
- }) : /*#__PURE__*/_jsx(Grid, {
85
- className: "uploadImageText",
86
- children: /*#__PURE__*/_jsxs(Button, {
87
- component: "label",
88
- variant: "text",
89
- style: {
90
- background: "none"
91
- },
92
- onClick: handleClick,
93
- sx: classes.uploadIcon,
94
- children: [/*#__PURE__*/_jsx(Icon, {
95
- icon: "fileUpload"
96
- }), /*#__PURE__*/_jsx("span", {
97
- style: {
98
- paddingLeft: "8px"
99
- },
100
- children: translation("Upload a Video")
101
- })]
102
- })
103
- })
104
- })
105
- })
106
- }), /*#__PURE__*/_jsx(ImageSelector, {
107
- open: open,
108
- title: "Video",
109
- onClose: handleClose,
110
- customProps: customProps,
111
- onSelectImage: onSelectImage
112
- })]
113
- });
114
- };
115
- export default EmbedUpload;
@@ -1,58 +0,0 @@
1
- export function extractTextWithPath(data, path = []) {
2
- let result = [];
3
- data.forEach((item, index) => {
4
- const currentPath = [...path, index];
5
- if (item.text) {
6
- result.push({
7
- path_id: currentPath.join(","),
8
- text: item.text
9
- });
10
- }
11
- if (item.children) {
12
- result = result.concat(extractTextWithPath(item.children, currentPath));
13
- }
14
- });
15
- return result;
16
- }
17
- export function replaceTextPath(nestedJson, pathIdJson) {
18
- // Create a map from path_id JSON for quick lookup
19
- const pathIdMap = new Map(pathIdJson.map(item => [item.path_id, item.text]));
20
- console.log(pathIdMap);
21
- function extractTextWithPath(data, path = []) {
22
- data.forEach((item, index) => {
23
- const currentPath = [...path, index];
24
- if (item.text) {
25
- if (pathIdMap.has(currentPath?.join(","))) {
26
- item.text = pathIdMap.get(currentPath?.join(","));
27
- }
28
- }
29
- if (item.children) {
30
- extractTextWithPath(item.children, currentPath);
31
- }
32
- });
33
- }
34
- extractTextWithPath(nestedJson, []);
35
- return nestedJson;
36
- }
37
-
38
- // export function replaceTextPath(nestedJson, pathIdJson) {
39
- // // Create a map from path_id JSON for quick lookup
40
- // const pathIdMap = new Map(
41
- // pathIdJson.map((item) => [item.path_id, item.text])
42
- // );
43
-
44
- // function traverseAndReplace(node) {
45
- // if (Array.isArray(node)) {
46
- // node.forEach(traverseAndReplace);
47
- // } else if (typeof node === "object" && node !== null) {
48
- // console.log(node);
49
- // if (node.text && pathIdMap.has(node.text)) {
50
- // node.text = pathIdMap.get(node.path_id);
51
- // }
52
- // Object.values(node).forEach(traverseAndReplace);
53
- // }
54
- // }
55
-
56
- // traverseAndReplace(nestedJson);
57
- // return nestedJson;
58
- // }
@@ -1,153 +0,0 @@
1
- import { useSlate } from "slate-react";
2
- import { defaultTheme } from "../theme";
3
- import { getPageSettings, updatePageSettings } from "../utils/pageSettings";
4
- import { HEADING_THEME_FIELDS, PARAGRAPH_THEME_FIELDS } from "../helper/theme";
5
- import { useEditorContext } from "./useMouseMove";
6
- const MAP_FIELDS = {
7
- HEADING: HEADING_THEME_FIELDS,
8
- PARAGRAPH: PARAGRAPH_THEME_FIELDS
9
- };
10
- const MAP_FONT_FIELD_KEYS = {
11
- HEADING: "headingFontFamily",
12
- PARAGRAPH: "paragraphFontFamily"
13
- };
14
- function getUpdatePayload(prevTheme = {}, update, actionData) {
15
- const {
16
- action,
17
- fieldName
18
- } = actionData || {};
19
- const {
20
- theme: prev
21
- } = prevTheme;
22
- let theme = {};
23
- let themeProps = {};
24
- switch (action) {
25
- case "THEME_CHANGE":
26
- theme = update;
27
- break;
28
- case "CSS_VAR_CHANGE":
29
- const prevCssVars = prev?.cssVars || {};
30
- const prevValue = prevCssVars[fieldName] || {};
31
- themeProps = {
32
- ...(prev || {}),
33
- cssVars: {
34
- ...prevCssVars,
35
- [fieldName]: {
36
- ...prevValue,
37
- ...update
38
- }
39
- }
40
- };
41
- theme = {
42
- ...prevTheme,
43
- theme: themeProps
44
- };
45
- break;
46
- case "ELEMENT_PROPS_CHANGE":
47
- const prevEleProps = prev?.elementProps || {};
48
- const prevEleValue = prevEleProps[fieldName] || {};
49
- themeProps = {
50
- ...(prev || {}),
51
- elementProps: {
52
- ...prevEleProps,
53
- [fieldName]: {
54
- ...prevEleValue,
55
- ...update
56
- }
57
- }
58
- };
59
- theme = {
60
- ...prevTheme,
61
- theme: themeProps
62
- };
63
- break;
64
- case "OTHER_PROPS_CHANGE":
65
- themeProps = {
66
- ...(prev || {}),
67
- otherProps: {
68
- ...(prev.otherProps || {}),
69
- ...update
70
- }
71
- };
72
- theme = {
73
- ...prevTheme,
74
- theme: themeProps
75
- };
76
- break;
77
- case "FONT_CHANGE":
78
- const {
79
- elementProps = {},
80
- otherProps = {}
81
- } = prev;
82
- const {
83
- fieldType
84
- } = actionData || {};
85
- const fields = MAP_FIELDS[fieldType];
86
- const fontFieldsUpdate = {};
87
- fields?.forEach(field => {
88
- const prevFieldData = elementProps[field];
89
- fontFieldsUpdate[field] = {
90
- ...prevFieldData,
91
- ...update
92
- };
93
- });
94
- const FONT_KEY_FOR_FIELD = MAP_FONT_FIELD_KEYS[fieldType];
95
- themeProps = {
96
- ...(prev || {}),
97
- elementProps: {
98
- ...elementProps,
99
- ...fontFieldsUpdate
100
- },
101
- otherProps: {
102
- ...otherProps,
103
- [FONT_KEY_FOR_FIELD]: update?.fontFamily
104
- }
105
- };
106
- theme = {
107
- ...prevTheme,
108
- theme: themeProps
109
- };
110
- break;
111
- default:
112
- theme = {
113
- ...prevTheme,
114
- ...(update || {})
115
- };
116
- break;
117
- }
118
- return theme;
119
- }
120
- const updateTheme = (editor, pageSt, update, actionData, triggerRender) => {
121
- const {
122
- pageProps
123
- } = pageSt || {};
124
- const {
125
- theme
126
- } = pageProps || {};
127
- const updatedTheme = getUpdatePayload(theme, update, actionData);
128
- updatePageSettings(editor, {
129
- ...(pageProps || {}),
130
- theme: updatedTheme
131
- });
132
- triggerRender();
133
- };
134
- export const useEditorTheme = () => {
135
- const editor = useSlate();
136
- const {
137
- triggerRender
138
- } = useEditorContext();
139
- const {
140
- element: pageSt
141
- } = getPageSettings(editor) || {};
142
- const {
143
- pageProps
144
- } = pageSt || {};
145
- const {
146
- theme
147
- } = pageProps || {};
148
- return {
149
- selectedTheme: theme?.theme || defaultTheme?.theme,
150
- updateTheme: (update, actionData) => updateTheme(editor, pageSt, update, actionData, triggerRender),
151
- theme
152
- };
153
- };
@@ -1,63 +0,0 @@
1
- import { useEffect, useState } from "react";
2
- import { getElementProperty } from "../helper/theme";
3
- import { ReactEditor } from "slate-react";
4
- import { Node } from "slate";
5
- import { useEditorTheme } from "./useEditorTheme";
6
- function useThemeValues() {
7
- return {};
8
- }
9
- export default useThemeValues;
10
- export function useButtonStyle(value, key, element) {
11
- const [buttonStyle, setButtonStyle] = useState(value);
12
- const {
13
- selectedTheme
14
- } = useEditorTheme();
15
- const themeBtnProps = selectedTheme?.elementProps?.button || {};
16
- useEffect(() => {
17
- const color = getColorValue(value, key, element, themeBtnProps);
18
- setButtonStyle({
19
- color
20
- });
21
- }, [value, key, element]);
22
- return {
23
- buttonStyle
24
- };
25
- }
26
- const DEFAULT_MAP_THEMES = {
27
- textColor: "color",
28
- bgColor: "backgroundColor"
29
- };
30
- const hoverMap = (theme, format) => {
31
- const hover = theme?.hover || {};
32
- const key = DEFAULT_MAP_THEMES[format];
33
- return hover[key];
34
- };
35
- const MAP_THEME_KEYS = {
36
- ...DEFAULT_MAP_THEMES,
37
- textColorHover: hoverMap,
38
- bgColorHover: hoverMap
39
- };
40
- const getColorValue = (val, key, elementProps, themeBtnProps) => {
41
- const themeKey = MAP_THEME_KEYS[key];
42
- if (elementProps?.type === "button" && !val && themeKey) {
43
- if (typeof themeKey === "string") {
44
- return themeBtnProps[themeKey];
45
- } else {
46
- return themeKey(themeBtnProps, key);
47
- }
48
- }
49
- return val;
50
- };
51
- export function getButtonElementStyle(editor, element, stylePropertyName) {
52
- try {
53
- const path = ReactEditor.findPath(editor, element);
54
- if (path?.length) {
55
- const currentEle = Node.get(editor, path);
56
- const dom = ReactEditor.toDOMNode(editor, currentEle);
57
- const editorBtn = dom?.querySelector(".button.theme-element");
58
- return getElementProperty(editorBtn, stylePropertyName);
59
- }
60
- } catch (err) {
61
- // console.log(err);
62
- }
63
- }