@flozy/editor 10.6.7 → 10.6.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.
Files changed (128) hide show
  1. package/dist/Editor/ChatEditor.js +17 -16
  2. package/dist/Editor/CommonEditor.js +116 -13
  3. package/dist/Editor/DialogWrapper.js +31 -25
  4. package/dist/Editor/Editor.css +31 -11
  5. package/dist/Editor/Elements/AI/PopoverAIInput.js +11 -3
  6. package/dist/Editor/Elements/AI/Styles.js +1 -0
  7. package/dist/Editor/Elements/Accordion/Accordion.js +25 -17
  8. package/dist/Editor/Elements/AppHeader/AppHeader.js +3 -3
  9. package/dist/Editor/Elements/Button/EditorButton.js +23 -7
  10. package/dist/Editor/Elements/Color Picker/ColorButtons.js +61 -14
  11. package/dist/Editor/Elements/Color Picker/ColorPicker.css +25 -1
  12. package/dist/Editor/Elements/Color Picker/ColorPicker.js +10 -7
  13. package/dist/Editor/Elements/Color Picker/Styles.js +15 -13
  14. package/dist/Editor/Elements/Embed/Video.js +1 -1
  15. package/dist/Editor/Elements/Form/FormField.js +1 -1
  16. package/dist/Editor/Elements/Form/Workflow/Styles.js +24 -22
  17. package/dist/Editor/Elements/FreeGrid/FreeGrid.js +31 -30
  18. package/dist/Editor/Elements/FreeGrid/FreeGridBox.js +7 -4
  19. package/dist/Editor/Elements/FreeGrid/Options/More.js +7 -7
  20. package/dist/Editor/Elements/FreeGrid/helper.js +115 -0
  21. package/dist/Editor/Elements/FreeGrid/styles.js +9 -0
  22. package/dist/Editor/Elements/Grid/GridItem.js +1 -1
  23. package/dist/Editor/Elements/SimpleText/style.js +2 -2
  24. package/dist/Editor/Elements/Table/Table.js +3 -3
  25. package/dist/Editor/Elements/Title/title.js +6 -6
  26. package/dist/Editor/Elements/Variables/VariableButton.js +10 -1
  27. package/dist/Editor/MiniEditor.js +2 -1
  28. package/dist/Editor/Styles/EditorStyles.js +9 -5
  29. package/dist/Editor/Toolbar/FormatTools/Dropdown.js +27 -3
  30. package/dist/Editor/Toolbar/FormatTools/FontFamilyAutocomplete.js +4 -3
  31. package/dist/Editor/Toolbar/FormatTools/MarkButton.js +2 -2
  32. package/dist/Editor/Toolbar/FormatTools/TextSize.js +10 -13
  33. package/dist/Editor/Toolbar/Mini/MiniToolbar.js +2 -1
  34. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/MiniColorPicker.js +4 -2
  35. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +6 -13
  36. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectList.js +4 -2
  37. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +167 -42
  38. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +7 -4
  39. package/dist/Editor/Toolbar/PopupTool/PopperHeader.js +2 -1
  40. package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +69 -9
  41. package/dist/Editor/Toolbar/PopupTool/TextFormat.js +58 -10
  42. package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +439 -0
  43. package/dist/Editor/Toolbar/PopupTool/index.js +5 -2
  44. package/dist/Editor/Toolbar/toolbarGroups.js +48 -6
  45. package/dist/Editor/assets/svg/BackIcon.js +18 -0
  46. package/dist/Editor/assets/svg/ThemeIcons.js +293 -0
  47. package/dist/Editor/common/ColorPickerButton.js +38 -16
  48. package/dist/Editor/common/CustomColorPicker/index.js +130 -0
  49. package/dist/Editor/common/CustomColorPicker/style.js +53 -0
  50. package/dist/Editor/common/CustomDialog2/index.js +94 -0
  51. package/dist/Editor/common/CustomDialog2/style.js +67 -0
  52. package/dist/Editor/common/CustomSelect.js +43 -0
  53. package/dist/Editor/common/DnD/DragHandleButton.js +1 -1
  54. package/dist/Editor/common/FontLoader/FontLoader.js +3 -0
  55. package/dist/Editor/common/Icon.js +28 -0
  56. package/dist/Editor/common/ImageSelector/ImageSelector.js +2 -2
  57. package/dist/Editor/common/ImageSelector/Styles.js +3 -9
  58. package/dist/Editor/common/LinkSettings/NavComponents.js +6 -2
  59. package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Settings.js +2 -1
  60. package/dist/Editor/common/RnD/ElementSettings/Settings/AppHeaderSettings.js +3 -2
  61. package/dist/Editor/common/RnD/ElementSettings/Settings/BoxSettings.js +3 -2
  62. package/dist/Editor/common/RnD/ElementSettings/Settings/ButtonSettings.js +3 -2
  63. package/dist/Editor/common/RnD/ElementSettings/Settings/CodeSettings.js +3 -2
  64. package/dist/Editor/common/RnD/ElementSettings/Settings/FormSettings.js +4 -2
  65. package/dist/Editor/common/RnD/ElementSettings/Settings/ImageSettings.js +3 -2
  66. package/dist/Editor/common/RnD/ElementSettings/Settings/TableSettings.js +3 -2
  67. package/dist/Editor/common/RnD/ElementSettings/Settings/TextSettings.js +3 -1
  68. package/dist/Editor/common/RnD/ElementSettings/Settings/VideoSettings.js +3 -2
  69. package/dist/Editor/common/RnD/SwitchViewport/SwitchViewport.js +11 -2
  70. package/dist/Editor/common/RnD/Theme/MainThemeProvider.js +17 -0
  71. package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +6 -3
  72. package/dist/Editor/common/RnD/Utils/gridDropItem.js +28 -18
  73. package/dist/Editor/common/RnD/Utils/index.js +3 -1
  74. package/dist/Editor/common/RnD/VirtualElement/VirtualTextElement.js +45 -58
  75. package/dist/Editor/common/RnD/VirtualElement/helper.js +320 -130
  76. package/dist/Editor/common/RnD/VirtualElement/styles.js +22 -0
  77. package/dist/Editor/common/RnD/index.js +42 -11
  78. package/dist/Editor/common/Shorthands/elements.js +54 -0
  79. package/dist/Editor/common/StyleBuilder/buttonStyle.js +4 -2
  80. package/dist/Editor/common/StyleBuilder/embedVideoStyle.js +4 -0
  81. package/dist/Editor/common/StyleBuilder/fieldTypes/backgroundImage.js +5 -0
  82. package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +12 -2
  83. package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +15 -7
  84. package/dist/Editor/common/StyleBuilder/fieldTypes/card.js +16 -8
  85. package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +36 -10
  86. package/dist/Editor/common/StyleBuilder/fieldTypes/embedUpload.js +115 -0
  87. package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +16 -7
  88. package/dist/Editor/common/StyleBuilder/fieldTypes/index.js +3 -1
  89. package/dist/Editor/common/StyleBuilder/fieldTypes/menusArray.js +2 -0
  90. package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +15 -7
  91. package/dist/Editor/common/Uploader.js +16 -0
  92. package/dist/Editor/common/iconslist.js +21 -0
  93. package/dist/Editor/commonStyle.js +107 -64
  94. package/dist/Editor/helper/index.js +7 -2
  95. package/dist/Editor/helper/textIndeces.js +58 -0
  96. package/dist/Editor/helper/theme.js +203 -2
  97. package/dist/Editor/hooks/useEditorTheme.js +153 -0
  98. package/dist/Editor/hooks/useMouseMove.js +9 -3
  99. package/dist/Editor/hooks/useThemeValues.js +63 -0
  100. package/dist/Editor/plugins/withEmbeds.js +1 -1
  101. package/dist/Editor/plugins/withHTML.js +3 -1
  102. package/dist/Editor/plugins/withTable.js +1 -1
  103. package/dist/Editor/theme/ThemeList.js +50 -173
  104. package/dist/Editor/theme/index.js +149 -0
  105. package/dist/Editor/themeSettings/ActiveTheme.js +82 -0
  106. package/dist/Editor/themeSettings/buttons/index.js +300 -0
  107. package/dist/Editor/themeSettings/buttons/style.js +23 -0
  108. package/dist/Editor/themeSettings/colorTheme/index.js +310 -0
  109. package/dist/Editor/themeSettings/colorTheme/style.js +81 -0
  110. package/dist/Editor/themeSettings/fonts/PreviewElement.js +121 -0
  111. package/dist/Editor/themeSettings/fonts/index.js +240 -0
  112. package/dist/Editor/themeSettings/fonts/style.js +62 -0
  113. package/dist/Editor/themeSettings/icons.js +60 -0
  114. package/dist/Editor/themeSettings/index.js +380 -0
  115. package/dist/Editor/themeSettings/style.js +299 -0
  116. package/dist/Editor/themeSettingsAI/icons.js +96 -0
  117. package/dist/Editor/themeSettingsAI/index.js +355 -0
  118. package/dist/Editor/themeSettingsAI/saveTheme.js +202 -0
  119. package/dist/Editor/themeSettingsAI/style.js +332 -0
  120. package/dist/Editor/utils/SlateUtilityFunctions.js +229 -24
  121. package/dist/Editor/utils/accordion.js +50 -24
  122. package/dist/Editor/utils/button.js +1 -17
  123. package/dist/Editor/utils/draftToSlate.js +3 -2
  124. package/dist/Editor/utils/font.js +40 -37
  125. package/dist/Editor/utils/helper.js +97 -21
  126. package/dist/Editor/utils/insertAppHeader.js +8 -4
  127. package/package.json +4 -4
  128. package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/MultiSelect.js +0 -454
@@ -268,7 +268,7 @@ function AppHeader(props) {
268
268
  style: {
269
269
  display: "inline-flex",
270
270
  alignItems: "center",
271
- color: textColor,
271
+ color: textColor || "#000000",
272
272
  fontSize: logoFontSize,
273
273
  fontFamily: titleFontFamily,
274
274
  justifyContent: isLogoRight ? "end" : "start"
@@ -323,7 +323,7 @@ function AppHeader(props) {
323
323
  fontFamily: fontFamily,
324
324
  textTransform: "none",
325
325
  fontSize: fontSize || "16px",
326
- color: textColor || "#FFF",
326
+ color: textColor || "#000",
327
327
  background: bgColor || "none",
328
328
  border: borderColorHover ? `1px solid transparent` : "none",
329
329
  "& .m-settings": {
@@ -339,7 +339,7 @@ function AppHeader(props) {
339
339
  background: "#FFF"
340
340
  },
341
341
  "&:hover": {
342
- color: textColorHover || textColor || "#FFF",
342
+ color: textColorHover || textColor || "#000",
343
343
  background: bgColorHover || bgColor || "none",
344
344
  border: borderColorHover ? `1px solid ${borderColorHover}` : "none",
345
345
  "& .m-settings": {
@@ -9,6 +9,8 @@ import { WorkflowIcon } from "../../common/iconslist";
9
9
  import { getTRBLBreakPoints, getBreakPointsValue, groupByBreakpoint } from "../../helper/theme";
10
10
  import { handleLinkType, windowVar } from "../../utils/helper";
11
11
  import LinkSettings from "../../common/LinkSettings";
12
+ import { useEditorTheme } from "../../hooks/useEditorTheme";
13
+ import { getTheme } from "../../theme";
12
14
  import Icon from "../../common/Icon";
13
15
  import { useEditorContext } from "../../hooks/useMouseMove";
14
16
  import useCommonStyle from "../../commonStyle";
@@ -40,6 +42,12 @@ const EditorButton = props => {
40
42
  const [openMoreOptions, setOpenMoreOptions] = useState(false);
41
43
  const [, setIconLoaded] = useState(false);
42
44
  const classes = useCommonStyle(appTheme);
45
+ const {
46
+ theme: selectedTheme
47
+ } = useEditorTheme();
48
+ const {
49
+ buttonTheme
50
+ } = getTheme(selectedTheme);
43
51
  const {
44
52
  label,
45
53
  bgColor,
@@ -54,7 +62,7 @@ const EditorButton = props => {
54
62
  textColorHover,
55
63
  bgColorHover,
56
64
  borderColorHover,
57
- buttonIcon,
65
+ // buttonIcon,
58
66
  iconPosition = "start",
59
67
  borderStyle,
60
68
  borderWidth,
@@ -75,6 +83,7 @@ const EditorButton = props => {
75
83
  };
76
84
  const isTrigger = linkType === "nextTrigger" || linkType === "prevTrigger";
77
85
  const refURl = isTrigger ? buttonLink?.url : url;
86
+ const buttonIcon = element?.buttonIcon || buttonTheme?.buttonIcon;
78
87
  const BtnIcon = buttonIcon ? buttonIcon : null;
79
88
  windowVar.lastButtonProps = element;
80
89
  const handleTrigger = async () => {
@@ -165,6 +174,7 @@ const EditorButton = props => {
165
174
  display: "inline-flex",
166
175
  color: "rgba(0, 0, 0, 0.54)",
167
176
  marginBottom: "0px !important",
177
+ ...classes.buttonMoreOption,
168
178
  ...classes.buttonMoreOption3
169
179
  },
170
180
  ...btnProps,
@@ -265,19 +275,14 @@ const EditorButton = props => {
265
275
  display: "inline-block"
266
276
  },
267
277
  children: [/*#__PURE__*/_jsxs(Box, {
278
+ className: `btn textAlign-${tAlign} button theme-element`,
268
279
  ref: buttonRef,
269
- className: `btn textAlign-${tAlign}`,
270
280
  sx: {
271
281
  textDecoration: "none",
272
- background: bgColor || "rgb(30, 75, 122)",
273
282
  borderBlockStyle: "solid",
274
- borderColor: borderColor || "transparent",
275
283
  borderWidth: borderWidth !== undefined ? borderWidth : borderColor || borderColorHover ? "1px" : "0px",
276
284
  ...btnSp,
277
285
  borderStyle: borderStyle || "solid",
278
- color: `${textColor || "#FFFFFF"}`,
279
- fontSize: textSize || "inherit",
280
- fontFamily: fontFamily || "PoppinsRegular",
281
286
  display: "inline-flex",
282
287
  alignItems: "center",
283
288
  position: "relative",
@@ -292,6 +297,17 @@ const EditorButton = props => {
292
297
  "& .element-toolbar": {
293
298
  display: "flex"
294
299
  }
300
+ },
301
+ color: textColor ? `${textColor} !important` : "#FFFFFF",
302
+ fontSize: textSize ? `${textSize}px !important` : "inherit",
303
+ fontFamily: fontFamily ? `${fontFamily} !important` : "PoppinsRegular",
304
+ background: `${bgColor} !important`,
305
+ borderColor: `${borderColor} !important`,
306
+ borderRadius: {
307
+ ...getBreakPointsValue(borderRadius || buttonTheme?.borderRadius || {}, null, "overrideBorderRadius", true)
308
+ },
309
+ padding: {
310
+ ...getTRBLBreakPoints(bannerSpacing || buttonTheme?.bannerSpacing || {})
295
311
  }
296
312
  },
297
313
  ...buttonProps,
@@ -1,11 +1,15 @@
1
1
  import React, { useState } from "react";
2
- import { Box, IconButton, Popover } from "@mui/material";
2
+ import { Box, IconButton, Popover, Typography, useTheme } from "@mui/material";
3
3
  import KeyboardArrowDownRoundedIcon from "@mui/icons-material/KeyboardArrowDownRounded";
4
4
  import Button from "../../common/Button";
5
5
  import { colors } from "./defaultColors";
6
6
  import ColorPicker from "./colorPicker.svg";
7
+ import { useSlateStatic } from "slate-react";
8
+ import { Transforms } from "slate";
9
+ import { useEditorContext } from "../../hooks/useMouseMove";
7
10
  import { jsx as _jsx } from "react/jsx-runtime";
8
11
  import { jsxs as _jsxs } from "react/jsx-runtime";
12
+ import { Fragment as _Fragment } from "react/jsx-runtime";
9
13
  let c = [];
10
14
  const ColorChunks = (recentColors = []) => [...recentColors, ...colors].reduce((a, b, i) => {
11
15
  if (i % 7 === 0) {
@@ -32,8 +36,8 @@ const SingleColorButton = ({
32
36
  width: "100%",
33
37
  display: "flex",
34
38
  alignItems: "center",
35
- padding: padding || "8px 0px",
36
- justifyContent: "center"
39
+ padding: padding || "8px 0px"
40
+ // justifyContent: "center",
37
41
  },
38
42
  children: [crs.map(m => /*#__PURE__*/_jsx(Button, {
39
43
  onClick: handleSelect(m),
@@ -110,12 +114,18 @@ const ColorButtons = props => {
110
114
  openColorTool,
111
115
  onClose,
112
116
  onColorPickerClick,
117
+ disableEditTheme,
113
118
  defaultColors = []
114
119
  } = props;
115
120
  const [row1, ...restRows] = ColorChunks([]);
116
121
  const [anchorEl, setAnchorEl] = useState(null);
117
122
  const open = Boolean(anchorEl);
118
123
  const firstRow = defaultColors?.length ? defaultColors : row1;
124
+ const theme = useTheme();
125
+ const editor = useSlateStatic();
126
+ const {
127
+ setOpenTheme
128
+ } = useEditorContext();
119
129
  const handleMore = e => {
120
130
  setAnchorEl(e.currentTarget);
121
131
  };
@@ -128,6 +138,7 @@ const ColorButtons = props => {
128
138
  const handleSelect = color => () => {
129
139
  onSelect(color);
130
140
  };
141
+ const colorVars = theme?.vars?.colors || {};
131
142
  return /*#__PURE__*/_jsxs(Box, {
132
143
  component: "span",
133
144
  sx: classes.colorButtons,
@@ -144,7 +155,7 @@ const ColorButtons = props => {
144
155
  activeColor: activeColor
145
156
  }, `si_btn_row1_${m}_${i}`);
146
157
  })
147
- }), /*#__PURE__*/_jsxs(Popover, {
158
+ }), /*#__PURE__*/_jsx(Popover, {
148
159
  open: open || openColorTool,
149
160
  anchorEl: anchorEl || openColorTool,
150
161
  onClose: handleClose,
@@ -158,9 +169,40 @@ const ColorButtons = props => {
158
169
  },
159
170
  sx: classes.colorPopper,
160
171
  className: "colorPopper",
161
- children: [/*#__PURE__*/_jsx(Box, {
172
+ children: /*#__PURE__*/_jsxs(Box, {
162
173
  sx: classes.colorButtonsInner,
163
- children: restRows.map((m, i) => {
174
+ children: [Object.values(colorVars)?.length ? /*#__PURE__*/_jsxs(_Fragment, {
175
+ children: [/*#__PURE__*/_jsxs(Box, {
176
+ component: "div",
177
+ className: "singleColorTitleWrapper",
178
+ children: [/*#__PURE__*/_jsx(Typography, {
179
+ variant: "subtitle2",
180
+ children: "Theme colours"
181
+ }), disableEditTheme ? null : /*#__PURE__*/_jsx("div", {
182
+ className: "editBtn",
183
+ onClick: () => {
184
+ Transforms.deselect(editor, {
185
+ at: editor.selection
186
+ });
187
+ handleClose();
188
+ setOpenTheme("editThemeColor");
189
+ },
190
+ children: "Edit"
191
+ })]
192
+ }), /*#__PURE__*/_jsx(SingleColorButton, {
193
+ crs: Object.values(colorVars),
194
+ handleSelect: handleSelect,
195
+ classes: classes,
196
+ activeColor: activeColor
197
+ })]
198
+ }) : null, /*#__PURE__*/_jsx(Box, {
199
+ component: "div",
200
+ className: "singleColorTitleWrapper",
201
+ children: /*#__PURE__*/_jsx(Typography, {
202
+ variant: "subtitle2",
203
+ children: "Custom colour"
204
+ })
205
+ }), restRows.map((m, i) => {
164
206
  return /*#__PURE__*/_jsx(SingleColorButton, {
165
207
  id: `p2_${id}`,
166
208
  crs: m,
@@ -169,14 +211,19 @@ const ColorButtons = props => {
169
211
  classes: classes,
170
212
  activeColor: activeColor
171
213
  }, `si_btn_${m}_${i}`);
172
- })
173
- }), forMiniTool ? /*#__PURE__*/_jsx(IconButton, {
174
- onClick: onColorPickerClick,
175
- children: /*#__PURE__*/_jsx("img", {
176
- src: ColorPicker,
177
- alt: "color wheel"
178
- })
179
- }) : null]
214
+ }), forMiniTool ? /*#__PURE__*/_jsx(IconButton, {
215
+ onClick: onColorPickerClick,
216
+ style: {
217
+ alignSelf: "start",
218
+ margin: "6px",
219
+ padding: "0px"
220
+ },
221
+ children: /*#__PURE__*/_jsx("img", {
222
+ src: ColorPicker,
223
+ alt: "color wheel"
224
+ })
225
+ }) : null]
226
+ })
180
227
  })]
181
228
  });
182
229
  };
@@ -60,4 +60,28 @@
60
60
  padding: 0 15px !important;
61
61
  width: 60px !important;
62
62
  flex-shrink: 0;
63
- }
63
+ }
64
+
65
+
66
+ .singleColorTitleWrapper {
67
+ display: flex;
68
+ justify-content: space-between;
69
+ align-items: center;
70
+ padding: 10px;
71
+ width: 100%;
72
+ border-bottom: 1px solid #DCE4EC;
73
+ }
74
+
75
+ .singleColorTitleWrapper .MuiTypography-root {
76
+ font-weight: 600;
77
+ }
78
+
79
+ .singleColorTitleWrapper .editBtn {
80
+ text-transform: none;
81
+ color: #2563EB;
82
+ text-decoration: underline;
83
+ padding: 0px;
84
+ min-width: unset;
85
+ cursor: pointer;
86
+ font-size: 14px;
87
+ }
@@ -1,13 +1,14 @@
1
1
  import React, { useState } from "react";
2
2
  import { ReactEditor } from "slate-react";
3
- import ColorPickerTool from "react-gcolor-picker";
4
- import { IconButton, Tooltip, Box, Popover } from "@mui/material";
3
+ import { IconButton, Tooltip, Box, Popover, useTheme } from "@mui/material";
5
4
  import { addMarkData, activeMark } from "../../utils/SlateUtilityFunctions";
6
5
  import ColorButtons from "./ColorButtons";
7
6
  import ColorPickerStyles from "./Styles";
8
7
  import colorWheel from "./colorWheel.png";
9
8
  import "./ColorPicker.css";
10
9
  import { useEditorContext } from "../../hooks/useMouseMove";
10
+ import CustomColorPicker from "../../common/CustomColorPicker";
11
+ import { getSelectedElementColor } from "../../utils/helper";
11
12
  import { jsx as _jsx } from "react/jsx-runtime";
12
13
  import { Fragment as _Fragment } from "react/jsx-runtime";
13
14
  import { jsxs as _jsxs } from "react/jsx-runtime";
@@ -25,7 +26,8 @@ const ColorPicker = props => {
25
26
  classes,
26
27
  forMiniTool,
27
28
  openColorTool,
28
- closeColorTool
29
+ closeColorTool,
30
+ type
29
31
  } = props;
30
32
  const {
31
33
  theme
@@ -34,6 +36,7 @@ const ColorPicker = props => {
34
36
  const [anchorEl, setAnchorEl] = useState(null);
35
37
  const open = Boolean(anchorEl);
36
38
  const pickerStyles = ColorPickerStyles(theme);
39
+ const muiTheme = useTheme();
37
40
  const onOpen = e => {
38
41
  e.preventDefault();
39
42
  setAnchorEl(e.currentTarget);
@@ -58,7 +61,7 @@ const ColorPicker = props => {
58
61
  setAnchorEl(null);
59
62
  setSelection(null);
60
63
  };
61
- const activeColor = activeMark(editor, format) || DEFAULT_COLOR[format];
64
+ const activeColor = type === "textColor" ? getSelectedElementColor(editor, format, muiTheme) : activeMark(editor, format) || DEFAULT_COLOR[format];
62
65
  return /*#__PURE__*/_jsxs(_Fragment, {
63
66
  children: [forMiniTool ? null : /*#__PURE__*/_jsx(Tooltip, {
64
67
  title: title,
@@ -96,10 +99,10 @@ const ColorPicker = props => {
96
99
  horizontal: "top"
97
100
  },
98
101
  sx: classes.colorPickerPopup,
99
- children: /*#__PURE__*/_jsx(ColorPickerTool, {
102
+ children: /*#__PURE__*/_jsx(CustomColorPicker, {
100
103
  gradient: true,
101
- value: activeColor,
102
- onChange: handleFormSubmit
104
+ onChange: handleFormSubmit,
105
+ color: activeColor
103
106
  })
104
107
  })]
105
108
  });
@@ -20,24 +20,26 @@ const ColorPickerStyles = theme => ({
20
20
  background: `${theme?.palette?.editor?.miniToolBarBackground}`,
21
21
  border: `1px solid ${theme?.palette?.editor?.miniToolBarBorder} !important`,
22
22
  borderRadius: "7px !important",
23
- padding: "0px 5px",
24
- '@media only screen and (max-width: 600px)': {
23
+ padding: "0px 10px",
24
+ "@media only screen and (max-width: 600px)": {
25
25
  marginTop: "-40px"
26
26
  }
27
27
  }
28
28
  },
29
29
  colorButtonSingle: {
30
+ border: "1.5px solid #DCE4EC !important",
30
31
  "&.active": {
31
- "&:before": {
32
- content: '" "',
33
- position: "absolute",
34
- top: "-4px",
35
- left: "-4px",
36
- width: "calc(100% + 8px)",
37
- height: "calc(100% + 8px)",
38
- border: "2px solid #2563EB",
39
- borderRadius: "50%"
40
- }
32
+ // "&:before": {
33
+ // content: '" "',
34
+ // position: "absolute",
35
+ // top: "-4px",
36
+ // left: "-4px",
37
+ // width: "calc(100% + 8px)",
38
+ // height: "calc(100% + 8px)",
39
+ // border: "2px solid #2563EB",
40
+ // borderRadius: "50%",
41
+ // },
42
+ outline: "2px solid #2563EB"
41
43
  }
42
44
  },
43
45
  colorButtonsInner: {
@@ -59,7 +61,7 @@ const ColorPickerStyles = theme => ({
59
61
  width: "24px",
60
62
  height: "24px",
61
63
  margin: "0px 4px",
62
- border: "unset"
64
+ border: "1.5px solid #DCE4EC"
63
65
  }
64
66
  },
65
67
  colorPickerIcon: {
@@ -89,7 +89,7 @@ const VideoPlaceholder = props => {
89
89
  },
90
90
  children: [/*#__PURE__*/_jsx(Icon, {
91
91
  icon: "video"
92
- }), TYPE_LABELS[type] || translation("Embed Video or Other")]
92
+ }), translation(TYPE_LABELS[type] || "Embed Video or Other")]
93
93
  }) : /*#__PURE__*/_jsxs(Box, {
94
94
  sx: {
95
95
  color: "#64748B !important",
@@ -1,5 +1,5 @@
1
1
  import React, { useState } from "react";
2
- import { Transforms, Node } from "slate";
2
+ import { Transforms } from "slate";
3
3
  import { useSlateStatic, ReactEditor } from "slate-react";
4
4
  import { IconButton, Tooltip, Grid, useTheme } from "@mui/material";
5
5
  import FormElements from "./FormElements";
@@ -9,20 +9,20 @@ const FormStyles = theme => ({
9
9
  color: "#94A3B8"
10
10
  },
11
11
  bodyTextArea: {
12
- '& .mini-editor-cls': {
13
- padding: '12px',
14
- '&:focus-visible': {
15
- outline: 'none',
16
- border: 'none'
12
+ "& .mini-editor-cls": {
13
+ padding: "12px",
14
+ "&:focus-visible": {
15
+ outline: "none",
16
+ border: "none"
17
17
  }
18
18
  },
19
19
  "& .editorWorkflow": {
20
- minHeight: '130px',
21
- padding: '12px',
20
+ minHeight: "130px",
21
+ padding: "12px",
22
22
  paddingBottom: 0,
23
- '&:focus-visible': {
24
- outline: 'none',
25
- border: 'none'
23
+ "&:focus-visible": {
24
+ outline: "none",
25
+ border: "none"
26
26
  }
27
27
  }
28
28
  },
@@ -105,7 +105,7 @@ const FormStyles = theme => ({
105
105
  padding: "4px 22px",
106
106
  textTransform: "none",
107
107
  border: "1px solid #D8DDE1",
108
- minWidth: '126px',
108
+ minWidth: "126px",
109
109
  "& svg": {
110
110
  "& path": {
111
111
  stroke: "#64748B"
@@ -169,17 +169,19 @@ const FormStyles = theme => ({
169
169
  }
170
170
  },
171
171
  colorButtonSingle: {
172
+ border: "1.5px solid #DCE4EC !important",
172
173
  "&.active": {
173
- "&:before": {
174
- content: '" "',
175
- position: "absolute",
176
- top: "-5px",
177
- left: "-5px",
178
- width: "calc(100% + 4px)",
179
- height: "calc(100% + 4px)",
180
- border: "3px solid blue",
181
- borderRadius: "50%"
182
- }
174
+ // "&:before": {
175
+ // content: '" "',
176
+ // position: "absolute",
177
+ // top: "-5px",
178
+ // left: "-5px",
179
+ // width: "calc(100% + 4px)",
180
+ // height: "calc(100% + 4px)",
181
+ // border: "3px solid blue",
182
+ // borderRadius: "50%",
183
+ // },
184
+ outline: "2px solid #2563EB"
183
185
  }
184
186
  },
185
187
  colorButtonsInner: {
@@ -249,7 +251,7 @@ const FormStyles = theme => ({
249
251
  }
250
252
  },
251
253
  root: {
252
- padding: '10px'
254
+ padding: "10px"
253
255
  }
254
256
  });
255
257
  export default FormStyles;
@@ -22,6 +22,7 @@ import { DEFAULT_TABLE_NODE } from "../../utils/table";
22
22
  import itemOptions from "./Options/sectionItemOptions";
23
23
  import { getBreakPointsValue, groupByBreakpoint } from "../../helper/theme";
24
24
  import { useDebouncedCallback } from "use-debounce";
25
+ import { getNewElementXsValues } from "./helper";
25
26
  import updateFormName from "../../utils/updateFormName";
26
27
  import { jsx as _jsx } from "react/jsx-runtime";
27
28
  import { jsxs as _jsxs } from "react/jsx-runtime";
@@ -183,6 +184,10 @@ const FreeGrid = props => {
183
184
  const handleAddElementClick = type => () => {
184
185
  const isEmpty = isEmptySection();
185
186
  const insertAt = isEmpty ? [...path, 0] : [...path, childrenCountRef.current];
187
+ const {
188
+ xsVal,
189
+ sectionHeightXs
190
+ } = getNewElementXsValues(type, element?.children);
186
191
  switch (type) {
187
192
  case "addText":
188
193
  Transforms.insertNodes(editor, [{
@@ -199,7 +204,8 @@ const FreeGrid = props => {
199
204
  marginTop: 0,
200
205
  top: 0,
201
206
  width: 170,
202
- height: 30
207
+ height: 30,
208
+ ...(xsVal || {})
203
209
  }], {
204
210
  at: [...insertAt]
205
211
  });
@@ -217,20 +223,6 @@ const FreeGrid = props => {
217
223
  linkType: "webAddress"
218
224
  },
219
225
  iconPosition: "start",
220
- bgColor: "#2563EB",
221
- textColor: "#FFF",
222
- borderRadius: {
223
- topLeft: 30,
224
- topRight: 30,
225
- bottomLeft: 30,
226
- bottomRight: 30
227
- },
228
- bannerSpacing: {
229
- left: 12,
230
- top: 12,
231
- right: 12,
232
- bottom: 12
233
- },
234
226
  textAlign: "center",
235
227
  label: "Get Started"
236
228
  }],
@@ -239,7 +231,8 @@ const FreeGrid = props => {
239
231
  marginTop: 0,
240
232
  top: 0,
241
233
  width: 143,
242
- height: 50
234
+ height: 50,
235
+ ...(xsVal || {})
243
236
  }], {
244
237
  at: [...insertAt]
245
238
  });
@@ -265,8 +258,9 @@ const FreeGrid = props => {
265
258
  top: 0,
266
259
  width: 217,
267
260
  height: 173,
268
- width_xs: 217,
269
- height_xs: 173
261
+ // width_xs: 217,
262
+ // height_xs: 173,
263
+ ...(xsVal || {})
270
264
  }], {
271
265
  at: [...insertAt]
272
266
  });
@@ -289,7 +283,8 @@ const FreeGrid = props => {
289
283
  marginTop: 0,
290
284
  top: 0,
291
285
  width: 170,
292
- height: 80
286
+ height: 80,
287
+ ...(xsVal || {})
293
288
  }], {
294
289
  at: [...insertAt]
295
290
  });
@@ -302,7 +297,8 @@ const FreeGrid = props => {
302
297
  images: []
303
298
  }), {
304
299
  height: 370,
305
- width: 650
300
+ width: 650,
301
+ ...(xsVal || {})
306
302
  })
307
303
  }], {
308
304
  at: [...insertAt]
@@ -314,7 +310,8 @@ const FreeGrid = props => {
314
310
  ...DEFAULT_TABLE_NODE()
315
311
  }, {
316
312
  height: 150,
317
- width: 400
313
+ width: 400,
314
+ ...(xsVal || {})
318
315
  })
319
316
  }], {
320
317
  at: [...insertAt]
@@ -338,7 +335,8 @@ const FreeGrid = props => {
338
335
  marginTop: 0,
339
336
  top: 0,
340
337
  width: 400,
341
- height: 300
338
+ height: 300,
339
+ ...(xsVal || {})
342
340
  }], {
343
341
  at: [...insertAt]
344
342
  });
@@ -350,7 +348,9 @@ const FreeGrid = props => {
350
348
  children: [{
351
349
  text: ""
352
350
  }]
353
- }, {}, "freegridBox")
351
+ }, {
352
+ ...(xsVal || {})
353
+ }, "freegridBox")
354
354
  }], {
355
355
  at: [...insertAt]
356
356
  });
@@ -361,7 +361,8 @@ const FreeGrid = props => {
361
361
  ...FORM_NODE()
362
362
  }, {
363
363
  height: 92,
364
- width: 400
364
+ width: 400,
365
+ ...(xsVal || {})
365
366
  })
366
367
  }], {
367
368
  at: [...insertAt]
@@ -375,7 +376,8 @@ const FreeGrid = props => {
375
376
  })
376
377
  }, {
377
378
  height: 60,
378
- width: 400
379
+ width: 400,
380
+ ...(xsVal || {})
379
381
  })
380
382
  }], {
381
383
  at: [...insertAt]
@@ -396,19 +398,18 @@ const FreeGrid = props => {
396
398
  marginTop: 0,
397
399
  top: 0,
398
400
  width: 170,
399
- height: 30
401
+ height: 30,
402
+ ...(xsVal || {})
400
403
  }], {
401
404
  at: [...insertAt]
402
405
  });
403
406
  break;
404
407
  default:
405
408
  }
406
- if (breakpoint === "lg") {
409
+ if (xsVal) {
407
410
  setSelectedElement({});
408
-
409
- // auto align in mobile
410
411
  Transforms.setNodes(editor, {
411
- xs_updatedOn: null,
412
+ height_xs: sectionHeightXs,
412
413
  updated_at: new Date().getTime()
413
414
  }, {
414
415
  at: path
@@ -8,7 +8,7 @@ import { onDropItem, ROW_HEIGHT } from "../../common/RnD/Utils/gridDropItem";
8
8
  import useBreakpoints from "../../hooks/useBreakpoints";
9
9
  import { breakpointValues, formatBreakpointValues } from "./breakpointConstants";
10
10
  import { useEditorContext } from "../../hooks/useMouseMove";
11
- import { getBreakPointsValue } from "../../helper/theme";
11
+ import { getBreakPointsValue, groupByBreakpoint } from "../../helper/theme";
12
12
  import focusOnNewItem from "../../helper/RnD/focusOnNewItem";
13
13
  import { bringItemToFB } from "../../helper";
14
14
  import itemOptions from "./Options/sectionItemOptions";
@@ -160,6 +160,11 @@ const FreeGridBox = props => {
160
160
  const isBoxHeader = useMemo(() => {
161
161
  return element?.children?.some(c => c.childType === "appHeader" && !c.xs_updatedOn);
162
162
  }, [element]);
163
+ const boxSp = groupByBreakpoint({
164
+ borderRadius: {
165
+ ...getBreakPointsValue(sectionBorderRadius || {}, null, "overrideBorderRadius", true)
166
+ }
167
+ }, theme);
163
168
  return /*#__PURE__*/_jsx(RnD, {
164
169
  id: `freegrid_box_item_${path.join("|")}_${updated_at}_${breakpoint}`,
165
170
  className: `freegrid-item path-${path.length} breakpoint-${breakpoint} freegrid-box_${path.join("_")}`,
@@ -226,9 +231,7 @@ const FreeGridBox = props => {
226
231
  "--rows": `repeat(${repeatTimes}, ${ROW_HEIGHT}px)`
227
232
  },
228
233
  sx: {
229
- borderRadius: {
230
- ...getBreakPointsValue(sectionBorderRadius || {}, null, "overrideBorderRadius", true)
231
- },
234
+ ...boxSp,
232
235
  background: sectionBgColor,
233
236
  backgroundImage: sectionBackgroundImage ? `url('${sectionBackgroundImage}')` : "",
234
237
  borderColor: borderColor || "transparent",