@flozy/editor 9.8.5 → 9.8.7

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 (137) hide show
  1. package/dist/Editor/ChatEditor.js +17 -16
  2. package/dist/Editor/CommonEditor.js +119 -17
  3. package/dist/Editor/DialogWrapper.js +31 -25
  4. package/dist/Editor/Editor.css +17 -9
  5. package/dist/Editor/Elements/AI/PopoverAIInput.js +11 -3
  6. package/dist/Editor/Elements/AppHeader/AppHeader.js +3 -3
  7. package/dist/Editor/Elements/Button/EditorButton.js +25 -9
  8. package/dist/Editor/Elements/Color Picker/ColorButtons.js +61 -14
  9. package/dist/Editor/Elements/Color Picker/ColorPicker.css +25 -1
  10. package/dist/Editor/Elements/Color Picker/ColorPicker.js +10 -7
  11. package/dist/Editor/Elements/Color Picker/Styles.js +15 -13
  12. package/dist/Editor/Elements/DataView/Layouts/ColumnView.js +4 -2
  13. package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/MultiSelect.js +448 -0
  14. package/dist/Editor/Elements/DataView/Layouts/DataTypes/MultiSelectType.js +21 -6
  15. package/dist/Editor/Elements/DataView/Layouts/Options/AddOptions.js +5 -1
  16. package/dist/Editor/Elements/DataView/Layouts/Options/EditOption.js +3 -2
  17. package/dist/Editor/Elements/DataView/Layouts/Options/index.js +11 -0
  18. package/dist/Editor/Elements/DataView/Layouts/ViewData.js +8 -4
  19. package/dist/Editor/Elements/Embed/Image.js +2 -2
  20. package/dist/Editor/Elements/Embed/Video.js +1 -1
  21. package/dist/Editor/Elements/Form/Workflow/Styles.js +24 -22
  22. package/dist/Editor/Elements/FreeGrid/FreeGrid.js +48 -22
  23. package/dist/Editor/Elements/FreeGrid/FreeGridBox.js +25 -4
  24. package/dist/Editor/Elements/FreeGrid/FreeGridItem.js +46 -3
  25. package/dist/Editor/Elements/FreeGrid/Options/More.js +7 -2
  26. package/dist/Editor/Elements/FreeGrid/styles.js +3 -0
  27. package/dist/Editor/Elements/Grid/GridItem.js +1 -1
  28. package/dist/Editor/Elements/List/CheckList.js +4 -1
  29. package/dist/Editor/Elements/SimpleText/index.js +9 -1
  30. package/dist/Editor/Elements/SimpleText/style.js +2 -2
  31. package/dist/Editor/Elements/Table/Table.js +3 -3
  32. package/dist/Editor/Elements/Title/title.js +6 -6
  33. package/dist/Editor/Elements/Variables/VariableButton.js +10 -1
  34. package/dist/Editor/MiniEditor.js +2 -1
  35. package/dist/Editor/Styles/EditorStyles.js +5 -5
  36. package/dist/Editor/Toolbar/FormatTools/Dropdown.js +27 -3
  37. package/dist/Editor/Toolbar/FormatTools/FontFamilyAutocomplete.js +4 -3
  38. package/dist/Editor/Toolbar/FormatTools/MarkButton.js +2 -2
  39. package/dist/Editor/Toolbar/FormatTools/TextSize.js +10 -13
  40. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/MiniColorPicker.js +4 -2
  41. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +6 -13
  42. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +167 -42
  43. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +7 -4
  44. package/dist/Editor/Toolbar/PopupTool/PopperHeader.js +2 -1
  45. package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +72 -12
  46. package/dist/Editor/Toolbar/PopupTool/TextFormat.js +95 -23
  47. package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +439 -0
  48. package/dist/Editor/Toolbar/PopupTool/index.js +1 -1
  49. package/dist/Editor/Toolbar/toolbarGroups.js +48 -6
  50. package/dist/Editor/assets/svg/BackIcon.js +18 -0
  51. package/dist/Editor/assets/svg/ClearAllRounded.js +31 -0
  52. package/dist/Editor/assets/svg/ResetIconNew.js +23 -0
  53. package/dist/Editor/assets/svg/ThemeIcons.js +293 -0
  54. package/dist/Editor/common/ColorPickerButton.js +38 -16
  55. package/dist/Editor/common/CustomColorPicker/index.js +131 -0
  56. package/dist/Editor/common/CustomColorPicker/style.js +53 -0
  57. package/dist/Editor/common/CustomDialog2/index.js +94 -0
  58. package/dist/Editor/common/CustomDialog2/style.js +67 -0
  59. package/dist/Editor/common/CustomSelect.js +43 -0
  60. package/dist/Editor/common/DnD/DragHandleButton.js +1 -1
  61. package/dist/Editor/common/FontLoader/FontLoader.js +3 -0
  62. package/dist/Editor/common/Icon.js +31 -1
  63. package/dist/Editor/common/ImageSelector/Styles.js +3 -9
  64. package/dist/Editor/common/RnD/ContextMenu/CMenus.js +24 -0
  65. package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Settings.js +2 -1
  66. package/dist/Editor/common/RnD/ElementSettings/Settings/AppHeaderSettings.js +3 -2
  67. package/dist/Editor/common/RnD/ElementSettings/Settings/BoxSettings.js +3 -2
  68. package/dist/Editor/common/RnD/ElementSettings/Settings/ButtonSettings.js +3 -2
  69. package/dist/Editor/common/RnD/ElementSettings/Settings/CodeSettings.js +3 -2
  70. package/dist/Editor/common/RnD/ElementSettings/Settings/FormSettings.js +4 -2
  71. package/dist/Editor/common/RnD/ElementSettings/Settings/ImageSettings.js +3 -2
  72. package/dist/Editor/common/RnD/ElementSettings/Settings/TableSettings.js +3 -2
  73. package/dist/Editor/common/RnD/ElementSettings/Settings/TextSettings.js +3 -1
  74. package/dist/Editor/common/RnD/ElementSettings/Settings/VideoSettings.js +3 -2
  75. package/dist/Editor/common/RnD/ShadowElement.js +2 -1
  76. package/dist/Editor/common/RnD/SwitchViewport/SwitchViewport.js +8 -2
  77. package/dist/Editor/common/RnD/Theme/MainThemeProvider.js +17 -0
  78. package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +6 -3
  79. package/dist/Editor/common/RnD/Utils/gridDropItem.js +73 -9
  80. package/dist/Editor/common/RnD/Utils/index.js +3 -0
  81. package/dist/Editor/common/RnD/VirtualElement/BoxHeaderAutoAlignment.js +43 -0
  82. package/dist/Editor/common/RnD/VirtualElement/ForceAutoAlignment.js +44 -0
  83. package/dist/Editor/common/RnD/VirtualElement/VirtualTextElement.js +134 -0
  84. package/dist/Editor/common/RnD/VirtualElement/helper.js +382 -0
  85. package/dist/Editor/common/RnD/VirtualElement/index.js +187 -103
  86. package/dist/Editor/common/RnD/VirtualElement/styles.js +155 -7
  87. package/dist/Editor/common/RnD/VirtualElement/updateAutoProps.js +5 -3
  88. package/dist/Editor/common/RnD/index.js +59 -3
  89. package/dist/Editor/common/Shorthands/elements.js +54 -0
  90. package/dist/Editor/common/SnackBar/index.js +43 -0
  91. package/dist/Editor/common/StyleBuilder/buttonStyle.js +4 -2
  92. package/dist/Editor/common/StyleBuilder/fieldTypes/backgroundImage.js +5 -0
  93. package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +12 -2
  94. package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +15 -7
  95. package/dist/Editor/common/StyleBuilder/fieldTypes/card.js +16 -8
  96. package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +36 -10
  97. package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +16 -7
  98. package/dist/Editor/common/StyleBuilder/fieldTypes/lineSpacing.js +7 -6
  99. package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +15 -7
  100. package/dist/Editor/common/StyleBuilder/pageSettingsStyle.js +5 -7
  101. package/dist/Editor/common/Uploader.js +8 -0
  102. package/dist/Editor/common/iconslist.js +7 -8
  103. package/dist/Editor/commonStyle.js +95 -60
  104. package/dist/Editor/helper/textIndeces.js +58 -0
  105. package/dist/Editor/helper/theme.js +202 -2
  106. package/dist/Editor/hooks/useAutoScroll.js +38 -0
  107. package/dist/Editor/hooks/useEditorTheme.js +153 -0
  108. package/dist/Editor/hooks/useMouseMove.js +9 -3
  109. package/dist/Editor/hooks/useThemeValues.js +63 -0
  110. package/dist/Editor/plugins/withEmbeds.js +1 -1
  111. package/dist/Editor/plugins/withHTML.js +10 -7
  112. package/dist/Editor/plugins/withLinks.js +9 -10
  113. package/dist/Editor/plugins/withTable.js +1 -1
  114. package/dist/Editor/theme/ThemeList.js +50 -173
  115. package/dist/Editor/theme/index.js +149 -0
  116. package/dist/Editor/themeSettings/ActiveTheme.js +72 -0
  117. package/dist/Editor/themeSettings/buttons/index.js +290 -0
  118. package/dist/Editor/themeSettings/buttons/style.js +23 -0
  119. package/dist/Editor/themeSettings/colorTheme/index.js +309 -0
  120. package/dist/Editor/themeSettings/colorTheme/style.js +81 -0
  121. package/dist/Editor/themeSettings/fonts/PreviewElement.js +121 -0
  122. package/dist/Editor/themeSettings/fonts/index.js +240 -0
  123. package/dist/Editor/themeSettings/fonts/style.js +62 -0
  124. package/dist/Editor/themeSettings/icons.js +60 -0
  125. package/dist/Editor/themeSettings/index.js +361 -0
  126. package/dist/Editor/themeSettings/style.js +292 -0
  127. package/dist/Editor/themeSettingsAI/icons.js +96 -0
  128. package/dist/Editor/themeSettingsAI/index.js +355 -0
  129. package/dist/Editor/themeSettingsAI/saveTheme.js +202 -0
  130. package/dist/Editor/themeSettingsAI/style.js +324 -0
  131. package/dist/Editor/utils/SlateUtilityFunctions.js +171 -45
  132. package/dist/Editor/utils/button.js +1 -17
  133. package/dist/Editor/utils/draftToSlate.js +3 -2
  134. package/dist/Editor/utils/font.js +40 -37
  135. package/dist/Editor/utils/freegrid.js +2 -3
  136. package/dist/Editor/utils/helper.js +90 -19
  137. package/package.json +4 -4
@@ -44,6 +44,60 @@ const ELEMENTS_LIST = [{
44
44
  icon: "headingThree"
45
45
  }),
46
46
  onInsert: editor => toggleBlock(editor, "headingThree", false)
47
+ }, {
48
+ name: "Heading 4",
49
+ desc: "",
50
+ group: "Text",
51
+ type: "headingFour",
52
+ icon: /*#__PURE__*/_jsx(Icon, {
53
+ icon: "headingFour"
54
+ }),
55
+ onInsert: editor => toggleBlock(editor, "headingFour", false)
56
+ }, {
57
+ name: "Heading 5",
58
+ desc: "",
59
+ group: "Text",
60
+ type: "headingFive",
61
+ icon: /*#__PURE__*/_jsx(Icon, {
62
+ icon: "headingFive"
63
+ }),
64
+ onInsert: editor => toggleBlock(editor, "headingFive", false)
65
+ }, {
66
+ name: "Heading 6",
67
+ desc: "",
68
+ group: "Text",
69
+ type: "headingSix",
70
+ icon: /*#__PURE__*/_jsx(Icon, {
71
+ icon: "headingSix"
72
+ }),
73
+ onInsert: editor => toggleBlock(editor, "headingSix", false)
74
+ }, {
75
+ name: "Paragraph 1",
76
+ desc: "",
77
+ group: "Text",
78
+ type: "paragraphOne",
79
+ icon: /*#__PURE__*/_jsx(Icon, {
80
+ icon: "paragraphOne"
81
+ }),
82
+ onInsert: editor => toggleBlock(editor, "paragraphOne", false)
83
+ }, {
84
+ name: "Paragraph 2",
85
+ desc: "",
86
+ group: "Text",
87
+ type: "paragraphTwo",
88
+ icon: /*#__PURE__*/_jsx(Icon, {
89
+ icon: "paragraphTwo"
90
+ }),
91
+ onInsert: editor => toggleBlock(editor, "paragraphTwo", false)
92
+ }, {
93
+ name: "Paragraph 3",
94
+ desc: "",
95
+ group: "Text",
96
+ type: "paragraphThree",
97
+ icon: /*#__PURE__*/_jsx(Icon, {
98
+ icon: "paragraphThree"
99
+ }),
100
+ onInsert: editor => toggleBlock(editor, "paragraphThree", false)
47
101
  }, {
48
102
  name: "Quote",
49
103
  desc: "",
@@ -0,0 +1,43 @@
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;
@@ -21,7 +21,8 @@ const buttonStyle = [{
21
21
  },
22
22
  children: option.text
23
23
  });
24
- }
24
+ },
25
+ themeEnabled: true
25
26
  }, {
26
27
  label: "Font Size",
27
28
  key: "textSize",
@@ -45,7 +46,8 @@ const buttonStyle = [{
45
46
  }, {
46
47
  label: "Button Color",
47
48
  key: "bgColor",
48
- type: "color"
49
+ type: "color",
50
+ themeEnabled: true
49
51
  }, {
50
52
  label: "Border Color",
51
53
  key: "borderColor",
@@ -76,6 +76,11 @@ const BackgroundImage = props => {
76
76
  children: translation("REMOVE")
77
77
  }) : /*#__PURE__*/_jsx(Grid, {
78
78
  className: "uploadImageText",
79
+ sx: {
80
+ padding: 0,
81
+ background: `${theme?.palette?.editor?.inputFieldBgColor}`,
82
+ border: `1px solid ${theme?.palette?.editor?.inputFieldBorder}`
83
+ },
79
84
  children: /*#__PURE__*/_jsxs(Button, {
80
85
  component: "label",
81
86
  variant: "text",
@@ -3,13 +3,13 @@ import { Checkbox, FormControlLabel, Grid, Slider, Typography, Box, IconButton }
3
3
  import { squreStyle } from "./radiusStyle";
4
4
  import { getBreakPointsValue } from "../../../helper/theme";
5
5
  import useWindowResize from "../../../hooks/useWindowResize";
6
+ import { useEditorTheme } from "../../../hooks/useEditorTheme";
6
7
  import { CheckedBoxCheckIcon } from "../../iconListV2";
7
8
  import { jsx as _jsx } from "react/jsx-runtime";
8
9
  import { jsxs as _jsxs } from "react/jsx-runtime";
9
10
  const BANNER_SPACING_KEYS = ["top", "left", "right", "bottom"];
10
11
  const BannerSpacing = props => {
11
12
  const {
12
- value: val,
13
13
  data,
14
14
  onChange,
15
15
  elementProps,
@@ -23,7 +23,17 @@ const BannerSpacing = props => {
23
23
  key
24
24
  } = data;
25
25
  const lockKeyVal = `lock${key}`;
26
- let lockSpacing = elementProps[lockKeyVal];
26
+ const {
27
+ selectedTheme
28
+ } = useEditorTheme();
29
+ const {
30
+ bannerSpacing,
31
+ lockbannerSpacing
32
+ } = selectedTheme?.elementProps?.button || {};
33
+ const isUserValue = Object.keys(props?.value || {})?.length;
34
+ const isUserLockedSpacing = typeof elementProps[lockKeyVal] === "boolean";
35
+ const val = isUserValue ? props?.value : bannerSpacing;
36
+ let lockSpacing = isUserLockedSpacing ? elementProps[lockKeyVal] : lockbannerSpacing;
27
37
  if (lockSpacing === undefined) {
28
38
  lockSpacing = true;
29
39
  }
@@ -3,13 +3,13 @@ import { Grid, Typography, Slider, FormControlLabel, Checkbox, Box, IconButton }
3
3
  import { radiusStyle } from "./radiusStyle";
4
4
  import useWindowResize from "../../../hooks/useWindowResize";
5
5
  import { getBreakPointsValue, getCustomizationValue } from "../../../helper/theme";
6
+ import { useEditorTheme } from "../../../hooks/useEditorTheme";
6
7
  import { CheckedBoxCheckIcon } from "../../iconListV2";
7
8
  import { jsx as _jsx } from "react/jsx-runtime";
8
9
  import { jsxs as _jsxs } from "react/jsx-runtime";
9
10
  const BORDER_RADIUS_KEYS = ["topLeft", "topRight", "bottomLeft", "bottomRight"];
10
11
  const BorderRadius = props => {
11
12
  const {
12
- value: val,
13
13
  data,
14
14
  onChange,
15
15
  elementProps,
@@ -19,16 +19,24 @@ const BorderRadius = props => {
19
19
  const {
20
20
  translation
21
21
  } = customProps;
22
- let {
23
- lockRadius
24
- } = elementProps;
25
- if (lockRadius === undefined) {
26
- lockRadius = true;
27
- }
28
22
  const {
29
23
  key
30
24
  } = data;
31
25
  const [size] = useWindowResize();
26
+ const {
27
+ selectedTheme
28
+ } = useEditorTheme();
29
+ const {
30
+ borderRadius,
31
+ lockRadius: themeLockRadius
32
+ } = selectedTheme?.elementProps?.button || {};
33
+ const isUserValue = Object.keys(props?.value || {})?.length;
34
+ const isUserLockedRadius = typeof elementProps?.lockRadius === "boolean";
35
+ const val = isUserValue ? props?.value : borderRadius;
36
+ let lockRadius = isUserLockedRadius ? elementProps?.lockRadius : themeLockRadius;
37
+ if (lockRadius === undefined) {
38
+ lockRadius = true;
39
+ }
32
40
  const value = getBreakPointsValue(val, size?.device);
33
41
  const handleChange = e => {
34
42
  let changeAll = {};
@@ -1,6 +1,7 @@
1
1
  import { Box, Card, Checkbox, FormControlLabel, Grid, Tooltip, Typography } from "@mui/material";
2
2
  import React from "react";
3
3
  import Icon from "../../Icon";
4
+ import { useEditorContext } from "../../../hooks/useMouseMove";
4
5
  import { jsx as _jsx } from "react/jsx-runtime";
5
6
  import { Fragment as _Fragment } from "react/jsx-runtime";
6
7
  import { jsxs as _jsxs } from "react/jsx-runtime";
@@ -15,14 +16,17 @@ const RenderCard = ({
15
16
  }) => {
16
17
  return /*#__PURE__*/_jsx(Card, {
17
18
  sx: {
18
- position: 'relative',
19
- padding: "10px"
19
+ position: "relative",
20
+ padding: "10px",
21
+ "& .MuiCheckbox-root svg": {
22
+ fill: "unset !important"
23
+ }
20
24
  },
21
25
  children: /*#__PURE__*/_jsx(FormControlLabel, {
22
26
  control: /*#__PURE__*/_jsx(Checkbox, {
23
27
  sx: {
24
28
  padding: 0,
25
- marginTop: '3px'
29
+ marginTop: "3px"
26
30
  },
27
31
  onChange: handleChange,
28
32
  checked: value,
@@ -58,10 +62,10 @@ const RenderCard = ({
58
62
  })
59
63
  }),
60
64
  sx: {
61
- width: '100%',
62
- display: 'flex',
63
- justifyContent: 'space-between',
64
- alignItems: 'flex-start',
65
+ width: "100%",
66
+ display: "flex",
67
+ justifyContent: "space-between",
68
+ alignItems: "flex-start",
65
69
  margin: 0
66
70
  },
67
71
  labelPlacement: "start"
@@ -83,6 +87,9 @@ const CardsMapping = props => {
83
87
  selectedCard,
84
88
  infoIcon
85
89
  } = data;
90
+ const {
91
+ theme
92
+ } = useEditorContext();
86
93
  const {
87
94
  translation
88
95
  } = customProps;
@@ -104,7 +111,8 @@ const CardsMapping = props => {
104
111
  sx: {
105
112
  marginBottom: "12px",
106
113
  "& .MuiPaper-root": {
107
- border: activeCard ? "1px solid #2563EB" : "1px solid #C8D8FA",
114
+ background: theme?.palette?.editor?.miniToolBarBackground,
115
+ border: activeCard ? "1px solid #2563EB" : `1px solid ${theme?.palette?.editor?.inputFieldBorder}`,
108
116
  borderRadius: "8px",
109
117
  boxShadow: activeCard ? "0px 4px 16px 0px #2563EB40" : "unset"
110
118
  }
@@ -1,14 +1,23 @@
1
- import React, { useEffect, useState } from "react";
1
+ import React, { useEffect, useMemo, useState } from "react";
2
2
  import { Grid, TextField, InputAdornment, Typography, Tooltip } from "@mui/material";
3
3
  import ColorPickerButton from "../../ColorPickerButton";
4
+ import { getVariableValue } from "../../../helper/theme";
5
+ import { useButtonStyle } from "../../../hooks/useThemeValues";
6
+
7
+ // const MAP_STYLE_PROPS = {
8
+ // bgColor: "background-color",
9
+ // textColor: "color",
10
+ // };
4
11
  import { jsx as _jsx } from "react/jsx-runtime";
5
12
  import { jsxs as _jsxs } from "react/jsx-runtime";
6
13
  const Color = props => {
7
14
  const {
8
- value,
15
+ value: val,
9
16
  data,
10
17
  onChange,
11
18
  classes,
19
+ elementProps,
20
+ handleClose,
12
21
  customProps
13
22
  } = props;
14
23
  const {
@@ -20,7 +29,22 @@ const Color = props => {
20
29
  translation
21
30
  } = customProps;
22
31
  const [recentColors, setRecentColors] = useState({});
23
- const getLable = label === 'Text' ? translation("selectTextColor") : label === 'Background' ? translation("selectBgColor") : translation(label);
32
+ const {
33
+ buttonStyle
34
+ } = useButtonStyle(val, key, elementProps);
35
+ const newValue = buttonStyle?.color;
36
+ const {
37
+ value,
38
+ inputValue
39
+ } = useMemo(() => {
40
+ const isVariable = newValue && newValue.startsWith("var");
41
+ const inputValue = isVariable ? getVariableValue(newValue) : newValue;
42
+ return {
43
+ value: newValue,
44
+ inputValue: inputValue
45
+ };
46
+ }, [buttonStyle?.color]);
47
+ const getLable = label === "Text" ? translation("selectTextColor") : label === "Background" ? translation("selectBgColor") : translation(label);
24
48
  useEffect(() => {
25
49
  const storedColors = JSON.parse(localStorage.getItem("recentColors"));
26
50
  if (storedColors) {
@@ -58,11 +82,11 @@ const Color = props => {
58
82
  fontSize: "14px",
59
83
  fontWeight: 500,
60
84
  marginBottom: "5px",
61
- display: 'flex',
62
- alignItems: 'center',
63
- '& svg': {
64
- width: '20px',
65
- height: '20px'
85
+ display: "flex",
86
+ alignItems: "center",
87
+ "& svg": {
88
+ width: "20px",
89
+ height: "20px"
66
90
  }
67
91
  },
68
92
  children: [translation(label), data?.infoIcon ? /*#__PURE__*/_jsx(Tooltip, {
@@ -70,14 +94,14 @@ const Color = props => {
70
94
  title: translation("noteText"),
71
95
  children: /*#__PURE__*/_jsx("span", {
72
96
  style: {
73
- display: 'inline-block'
97
+ display: "inline-block"
74
98
  },
75
99
  children: data?.infoIcon
76
100
  })
77
101
  }) : null]
78
102
  }), /*#__PURE__*/_jsx(TextField, {
79
103
  fullWidth: true,
80
- value: value,
104
+ value: inputValue,
81
105
  placeholder: getLable || `${label} ${translation("color code")}`,
82
106
  InputLabelProps: {
83
107
  shrink: true
@@ -90,6 +114,8 @@ const Color = props => {
90
114
  value: value,
91
115
  onSave: onSave,
92
116
  recentColors: recentColors[key],
117
+ handleClose: handleClose,
118
+ disableEditTheme: customProps?.disableEditTheme,
93
119
  hideGradient: hideGradient
94
120
  })
95
121
  })
@@ -1,23 +1,30 @@
1
- import React from "react";
1
+ import React, { useMemo } 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";
5
7
  import { jsx as _jsx } from "react/jsx-runtime";
6
8
  import { jsxs as _jsxs } from "react/jsx-runtime";
7
9
  const FontSize = props => {
8
10
  const {
9
- value,
11
+ value: val,
10
12
  data,
11
13
  onChange,
14
+ elementProps,
12
15
  customProps
13
16
  } = props;
14
- const {
15
- translation
16
- } = customProps;
17
17
  const {
18
18
  key,
19
19
  width
20
20
  } = data;
21
+ const editor = useSlateStatic();
22
+ const value = useMemo(() => {
23
+ return getElementStyle(editor, elementProps, "font-size") || val;
24
+ }, [editor, val]);
25
+ const {
26
+ translation
27
+ } = customProps;
21
28
  const handleChange = e => {
22
29
  let inc = parseInt(e.target.value) || 16;
23
30
  inc = inc > 200 ? 200 : inc;
@@ -28,7 +35,9 @@ const FontSize = props => {
28
35
  const getSizeVal = () => {
29
36
  try {
30
37
  const size = `${value}`?.indexOf("px") >= 0 ? value : sizeMap[value] || value;
31
- return parseInt(size || 16);
38
+ const defaultSize = 16;
39
+ const val = parseInt(size || defaultSize);
40
+ return isNaN(val) ? defaultSize : val;
32
41
  } catch (err) {
33
42
  return "";
34
43
  }
@@ -77,7 +86,7 @@ const FontSize = props => {
77
86
  size: "small",
78
87
  inputProps: {
79
88
  style: {
80
- // textAlign: "center",
89
+ // textAlign: "center",
81
90
  padding: "11px"
82
91
  }
83
92
  },
@@ -53,9 +53,9 @@ const LineSpacing = props => {
53
53
  defaultValue: value || 1.43,
54
54
  "aria-label": "Default",
55
55
  valueLabelDisplay: "auto",
56
- min: 0.5,
57
- max: 3.0,
58
- step: 0.1,
56
+ min: 0.50,
57
+ max: 3.00,
58
+ step: 0.01,
59
59
  name: "lineHeight",
60
60
  onChange: handleChange
61
61
  }), /*#__PURE__*/_jsx(Box, {
@@ -65,15 +65,16 @@ const LineSpacing = props => {
65
65
  color: theme?.palette?.editor?.textColor
66
66
  },
67
67
  name: "lineHeight",
68
- value: pro_value,
68
+ value: pro_value || 1.43,
69
69
  className: "sliderInput",
70
70
  onChange: handleChange,
71
71
  type: "number",
72
72
  placeholder: "0",
73
- disabled: true,
74
- defaultValue: pro_value || 1.43
73
+ disabled: true
74
+ // defaultValue={pro_value || 1.43}
75
75
  })]
76
76
  })]
77
77
  });
78
78
  };
79
+
79
80
  export default LineSpacing;
@@ -1,13 +1,13 @@
1
- import React from "react";
1
+ import React, { useMemo } from "react";
2
2
  import { FormControl, Grid, ListItemIcon, ListSubheader, MenuItem, Select, Typography } from "@mui/material";
3
- import { getBreakPointsValue } from "../../../helper/theme";
3
+ import { getBreakPointsValue, getElementStyle } 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";
@@ -31,14 +31,22 @@ const TextOptions = props => {
31
31
  renderOption,
32
32
  width,
33
33
  webFont = false,
34
- hideMetaDataOptions = false
34
+ hideMetaDataOptions = false,
35
+ themeEnabled
35
36
  } = data;
36
37
  const {
37
38
  fontFamilies
38
39
  } = useEditorContext();
39
- const editor = useSlate();
40
40
  const [size] = useWindowResize();
41
- const value = isBreakpoint ? getBreakPointsValue(val, size?.device) : val;
41
+ const editor = useSlate();
42
+ const value = useMemo(() => {
43
+ const userValue = isBreakpoint ? getBreakPointsValue(val, size?.device) : val;
44
+ if (themeEnabled) {
45
+ // editor takes a little amount of time to update the new style in element, in that case userValue will be returned
46
+ return getElementStyle(editor, elementProps, key) || userValue;
47
+ }
48
+ return userValue;
49
+ }, [editor, isBreakpoint, val, size?.device]);
42
50
  const metaDataMappingOptions = metaMappings?.boards || [];
43
51
  const updatedOption = !hideMetaDataOptions && elementProps?.metadatamapping ? [...options, ...metaDataMappingOptions] : webFont ? fontFamilies?.options : options;
44
52
  const handleChange = (e, d) => {
@@ -117,7 +125,7 @@ const TextOptions = props => {
117
125
  editor: editor,
118
126
  format: key,
119
127
  options: fontFamilies.options,
120
- width: '100%',
128
+ width: "100%",
121
129
  onChange: onChange,
122
130
  val: value,
123
131
  webFont: true
@@ -25,13 +25,11 @@ const pageSettingsStyle = [{
25
25
  label: "Padding",
26
26
  key: "bannerSpacing",
27
27
  type: "bannerSpacing"
28
- }
29
- // {
30
- // label: "Line Spacing",
31
- // key: "lineHeight",
32
- // type: "lineSpacing",
33
- // },
34
- ]
28
+ }, {
29
+ label: "Line Spacing",
30
+ key: "lineHeight",
31
+ type: "lineSpacing"
32
+ }]
35
33
  }, {
36
34
  tab: "Max Width",
37
35
  value: "maxWidth",
@@ -4,6 +4,7 @@ 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";
7
8
  import { jsx as _jsx } from "react/jsx-runtime";
8
9
  import { Fragment as _Fragment } from "react/jsx-runtime";
9
10
  import { jsxs as _jsxs } from "react/jsx-runtime";
@@ -18,6 +19,9 @@ const Uploader = props => {
18
19
  const [base64, setBase64] = useState(value?.url);
19
20
  const [fileName, setFileName] = useState("");
20
21
  const [uploading, setUploading] = useState(false);
22
+ const {
23
+ theme
24
+ } = useEditorContext();
21
25
  const handleChange = async e => {
22
26
  const uFile = e.target.files[0];
23
27
  const strImage = await convertBase64(uFile);
@@ -102,6 +106,10 @@ const Uploader = props => {
102
106
  className: "uploadImageSection",
103
107
  children: base64 ? renderThumb() : /*#__PURE__*/_jsx(Grid, {
104
108
  className: "uploadImageText",
109
+ sx: {
110
+ background: `${theme?.palette?.editor?.inputFieldBgColor}`,
111
+ border: `1px solid ${theme?.palette?.editor?.inputFieldBorder}`
112
+ },
105
113
  children: /*#__PURE__*/_jsxs(Button, {
106
114
  component: "label",
107
115
  variant: "text",
@@ -1655,21 +1655,20 @@ export const CsvIcon = () => /*#__PURE__*/_jsxs("svg", {
1655
1655
  })]
1656
1656
  });
1657
1657
  export const CloseIcon = props => /*#__PURE__*/_jsxs("svg", {
1658
- width: "20",
1659
- height: "20",
1660
- viewBox: "0 0 20 20",
1658
+ width: "10",
1659
+ height: "10",
1660
+ viewBox: "0 0 10 10",
1661
1661
  fill: "none",
1662
1662
  xmlns: "http://www.w3.org/2000/svg",
1663
- ...(props || {}),
1664
1663
  children: [/*#__PURE__*/_jsx("path", {
1665
- d: "M14.1245 5.875L5.87493 14.1246",
1666
- stroke: "#64748B",
1664
+ d: "M9.12476 0.875L0.875176 9.12458",
1665
+ stroke: "#8F9CAE",
1667
1666
  strokeWidth: "1.5",
1668
1667
  strokeLinecap: "round",
1669
1668
  strokeLinejoin: "round"
1670
1669
  }), /*#__PURE__*/_jsx("path", {
1671
- d: "M5.875 5.875L14.1246 14.1246",
1672
- stroke: "#64748B",
1670
+ d: "M0.875183 0.875L9.12476 9.12458",
1671
+ stroke: "#8F9CAE",
1673
1672
  strokeWidth: "1.5",
1674
1673
  strokeLinecap: "round",
1675
1674
  strokeLinejoin: "round"