@flozy/editor 3.8.9 → 3.9.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (194) hide show
  1. package/dist/Editor/ChatEditor.js +55 -45
  2. package/dist/Editor/CommonEditor.js +175 -168
  3. package/dist/Editor/DialogWrapper.js +3 -4
  4. package/dist/Editor/Editor.css +7 -4
  5. package/dist/Editor/Elements/AI/AIInput.js +17 -18
  6. package/dist/Editor/Elements/AI/CustomSelect.js +19 -12
  7. package/dist/Editor/Elements/AI/PopoverAIInput.js +58 -74
  8. package/dist/Editor/Elements/AI/Styles.js +2 -1
  9. package/dist/Editor/Elements/AI/VoiceToText/AudioWave.js +73 -0
  10. package/dist/Editor/Elements/AI/VoiceToText/index.js +177 -0
  11. package/dist/Editor/Elements/AI/VoiceToText/style.js +40 -0
  12. package/dist/Editor/Elements/AppHeader/AppHeader.js +49 -40
  13. package/dist/Editor/Elements/Button/EditorButton.js +38 -33
  14. package/dist/Editor/Elements/Color Picker/ColorButtons.js +60 -17
  15. package/dist/Editor/Elements/Color Picker/ColorPicker.css +25 -1
  16. package/dist/Editor/Elements/Color Picker/ColorPicker.js +4 -4
  17. package/dist/Editor/Elements/Color Picker/Styles.js +2 -1
  18. package/dist/Editor/Elements/Embed/Image.js +14 -15
  19. package/dist/Editor/Elements/Embed/Video.js +8 -12
  20. package/dist/Editor/Elements/Emoji/EmojiButton.js +7 -11
  21. package/dist/Editor/Elements/Emoji/EmojiPicker.js +4 -2
  22. package/dist/Editor/Elements/Form/Form.js +1 -1
  23. package/dist/Editor/Elements/Form/Workflow/FormWorkflow.js +12 -3
  24. package/dist/Editor/Elements/Form/Workflow/UserInputs.js +2 -1
  25. package/dist/Editor/Elements/Grid/Grid.js +34 -14
  26. package/dist/Editor/Elements/Grid/GridItem.js +23 -31
  27. package/dist/Editor/Elements/Link/Link.js +6 -1
  28. package/dist/Editor/Elements/Link/LinkButton.js +4 -2
  29. package/dist/Editor/Elements/Link/LinkPopup.js +10 -3
  30. package/dist/Editor/Elements/Link/LinkPopupStyles.js +28 -0
  31. package/dist/Editor/Elements/PageSettings/PageSettingsButton.js +8 -4
  32. package/dist/Editor/Elements/Redo/RedoButton.js +14 -0
  33. package/dist/Editor/Elements/Signature/SignaturePopup.js +14 -3
  34. package/dist/Editor/Elements/SimpleText/index.js +8 -9
  35. package/dist/Editor/Elements/SimpleText/style.js +0 -37
  36. package/dist/Editor/Elements/Table/Styles.js +23 -1
  37. package/dist/Editor/Elements/Table/Table.js +2 -1
  38. package/dist/Editor/Elements/Table/TableCell.js +69 -7
  39. package/dist/Editor/Elements/TableContextMenu/TableContextMenu.js +1 -0
  40. package/dist/Editor/Elements/Undo/UndoButton.js +14 -0
  41. package/dist/Editor/MiniEditor.js +3 -1
  42. package/dist/Editor/Styles/EditorStyles.js +1 -24
  43. package/dist/Editor/Toolbar/Basic/index.js +4 -2
  44. package/dist/Editor/Toolbar/FormatTools/Dropdown.js +26 -2
  45. package/dist/Editor/Toolbar/FormatTools/MarkButton.js +2 -2
  46. package/dist/Editor/Toolbar/FormatTools/TextSize.js +29 -18
  47. package/dist/Editor/Toolbar/Mini/MiniToolbar.js +29 -3
  48. package/dist/Editor/Toolbar/Mini/Options/Options.js +10 -0
  49. package/dist/Editor/Toolbar/Mini/Styles.js +7 -0
  50. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +4 -11
  51. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +213 -86
  52. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +2 -1
  53. package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +22 -16
  54. package/dist/Editor/Toolbar/PopupTool/TextFormat.js +52 -8
  55. package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +438 -0
  56. package/dist/Editor/Toolbar/PopupTool/index.js +7 -25
  57. package/dist/Editor/Toolbar/Toolbar.js +0 -7
  58. package/dist/Editor/Toolbar/toolbarGroups.js +48 -11
  59. package/dist/Editor/assets/svg/AIIcons.js +153 -1
  60. package/dist/Editor/assets/svg/AddTemplateIcon.js +13 -10
  61. package/dist/Editor/assets/svg/RedoIcon.js +27 -0
  62. package/dist/Editor/assets/svg/SettingsIcon.js +28 -0
  63. package/dist/Editor/assets/svg/TextIcon.js +8 -5
  64. package/dist/Editor/assets/svg/ThemeIcons.js +291 -0
  65. package/dist/Editor/assets/svg/UndoIcon.js +27 -0
  66. package/dist/Editor/common/ColorPickerButton.js +25 -9
  67. package/dist/Editor/common/CustomColorPicker/index.js +106 -0
  68. package/dist/Editor/common/CustomColorPicker/style.js +53 -0
  69. package/dist/Editor/common/CustomDialog/index.js +94 -0
  70. package/dist/Editor/common/CustomDialog/style.js +67 -0
  71. package/dist/Editor/common/CustomSelect.js +33 -0
  72. package/dist/Editor/common/DnD/DragHandleButton.js +56 -47
  73. package/dist/Editor/common/Icon.js +41 -8
  74. package/dist/Editor/common/LinkSettings/NavComponents.js +5 -2
  75. package/dist/Editor/common/LinkSettings/index.js +4 -2
  76. package/dist/Editor/common/LinkSettings/navOptions.js +7 -2
  77. package/dist/Editor/common/LinkSettings/style.js +11 -8
  78. package/dist/Editor/common/MentionsPopup/MentionsListCard.js +6 -1
  79. package/dist/Editor/common/MentionsPopup/index.js +8 -12
  80. package/dist/Editor/common/Section/index.js +69 -28
  81. package/dist/Editor/common/Section/styles.js +12 -6
  82. package/dist/Editor/common/Shorthands/elements.js +54 -12
  83. package/dist/Editor/common/StyleBuilder/buttonStyle.js +4 -2
  84. package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +19 -16
  85. package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +15 -7
  86. package/dist/Editor/common/StyleBuilder/fieldTypes/buttonLink.js +1 -1
  87. package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +31 -7
  88. package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +13 -4
  89. package/dist/Editor/common/StyleBuilder/fieldTypes/selectBox.js +14 -3
  90. package/dist/Editor/common/StyleBuilder/fieldTypes/text.js +2 -4
  91. package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +14 -4
  92. package/dist/Editor/common/StyleBuilder/index.js +1 -1
  93. package/dist/Editor/common/StyleBuilder/sectionStyle.js +2 -13
  94. package/dist/Editor/common/iconslist.js +0 -31
  95. package/dist/Editor/helper/index.js +0 -139
  96. package/dist/Editor/helper/theme.js +185 -48
  97. package/dist/Editor/hooks/useEditorTheme.js +139 -0
  98. package/dist/Editor/hooks/useMouseMove.js +12 -37
  99. package/dist/Editor/hooks/useWindowMessage.js +10 -7
  100. package/dist/Editor/hooks/withCommon.js +1 -2
  101. package/dist/Editor/plugins/withEmbeds.js +1 -1
  102. package/dist/Editor/plugins/withHTML.js +1 -1
  103. package/dist/Editor/plugins/withTable.js +1 -1
  104. package/dist/Editor/theme/ThemeList.js +50 -173
  105. package/dist/Editor/theme/index.js +144 -0
  106. package/dist/Editor/themeSettings/ActiveTheme.js +72 -0
  107. package/dist/Editor/themeSettings/buttons/index.js +290 -0
  108. package/dist/Editor/themeSettings/buttons/style.js +21 -0
  109. package/dist/Editor/themeSettings/colorTheme/index.js +290 -0
  110. package/dist/Editor/themeSettings/colorTheme/style.js +77 -0
  111. package/dist/Editor/themeSettings/fonts/PreviewElement.js +123 -0
  112. package/dist/Editor/themeSettings/fonts/index.js +213 -0
  113. package/dist/Editor/themeSettings/fonts/style.js +44 -0
  114. package/dist/Editor/themeSettings/icons.js +60 -0
  115. package/dist/Editor/themeSettings/index.js +320 -0
  116. package/dist/Editor/themeSettings/style.js +152 -0
  117. package/dist/Editor/themeSettingsAI/icons.js +96 -0
  118. package/dist/Editor/themeSettingsAI/index.js +356 -0
  119. package/dist/Editor/themeSettingsAI/saveTheme.js +190 -0
  120. package/dist/Editor/themeSettingsAI/style.js +247 -0
  121. package/dist/Editor/utils/SlateUtilityFunctions.js +163 -47
  122. package/dist/Editor/utils/button.js +1 -17
  123. package/dist/Editor/utils/draftToSlate.js +1 -1
  124. package/dist/Editor/utils/events.js +54 -7
  125. package/dist/Editor/utils/font.js +40 -37
  126. package/dist/Editor/utils/helper.js +31 -31
  127. package/dist/Editor/utils/table.js +51 -43
  128. package/package.json +4 -6
  129. package/dist/Editor/Elements/FreeGrid/FreeGrid.js +0 -391
  130. package/dist/Editor/Elements/FreeGrid/FreeGridBox.js +0 -193
  131. package/dist/Editor/Elements/FreeGrid/FreeGridButton.js +0 -23
  132. package/dist/Editor/Elements/FreeGrid/FreeGridItem.js +0 -184
  133. package/dist/Editor/Elements/FreeGrid/Options/AddElement.js +0 -36
  134. package/dist/Editor/Elements/FreeGrid/Options/More.js +0 -24
  135. package/dist/Editor/Elements/FreeGrid/Options/SectionSettings.js +0 -47
  136. package/dist/Editor/Elements/FreeGrid/Options/sectionItemOptions.js +0 -11
  137. package/dist/Editor/Elements/FreeGrid/breakpointConstants.js +0 -75
  138. package/dist/Editor/Elements/FreeGrid/styles.js +0 -159
  139. package/dist/Editor/ErrorBoundary.js +0 -30
  140. package/dist/Editor/common/RnD/ContextMenu/CMenus.js +0 -105
  141. package/dist/Editor/common/RnD/ContextMenu/index.js +0 -38
  142. package/dist/Editor/common/RnD/ContextMenu/styles.js +0 -21
  143. package/dist/Editor/common/RnD/DragInfo/index.js +0 -31
  144. package/dist/Editor/common/RnD/DragInfo/styles.js +0 -15
  145. package/dist/Editor/common/RnD/DragOver/index.js +0 -46
  146. package/dist/Editor/common/RnD/DragOver/styles.js +0 -23
  147. package/dist/Editor/common/RnD/ElementOptions/Actions.js +0 -82
  148. package/dist/Editor/common/RnD/ElementOptions/Icons/LinkIcon.js +0 -26
  149. package/dist/Editor/common/RnD/ElementOptions/index.js +0 -93
  150. package/dist/Editor/common/RnD/ElementOptions/styles.js +0 -41
  151. package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Link.js +0 -153
  152. package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Settings.js +0 -58
  153. package/dist/Editor/common/RnD/ElementSettings/OtherSettings/index.js +0 -7
  154. package/dist/Editor/common/RnD/ElementSettings/Settings/BoxSettings.js +0 -46
  155. package/dist/Editor/common/RnD/ElementSettings/Settings/ButtonSettings.js +0 -46
  156. package/dist/Editor/common/RnD/ElementSettings/Settings/ImageSettings.js +0 -46
  157. package/dist/Editor/common/RnD/ElementSettings/Settings/TextSettings.js +0 -30
  158. package/dist/Editor/common/RnD/ElementSettings/Settings/VideoSettings.js +0 -46
  159. package/dist/Editor/common/RnD/ElementSettings/Settings/index.js +0 -13
  160. package/dist/Editor/common/RnD/ElementSettings/index.js +0 -17
  161. package/dist/Editor/common/RnD/ElementSettings/settingsConstants.js +0 -14
  162. package/dist/Editor/common/RnD/ElementSettings/styles.js +0 -76
  163. package/dist/Editor/common/RnD/GuideLines/BoundaryLine.js +0 -52
  164. package/dist/Editor/common/RnD/GuideLines/index.js +0 -33
  165. package/dist/Editor/common/RnD/GuideLines/styles.js +0 -60
  166. package/dist/Editor/common/RnD/OptionsPopup/index.js +0 -50
  167. package/dist/Editor/common/RnD/OptionsPopup/style.js +0 -36
  168. package/dist/Editor/common/RnD/RnDCopy.js +0 -23
  169. package/dist/Editor/common/RnD/ShadowElement.js +0 -34
  170. package/dist/Editor/common/RnD/SwitchViewport/SwitchViewport.js +0 -40
  171. package/dist/Editor/common/RnD/SwitchViewport/styles.js +0 -24
  172. package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +0 -63
  173. package/dist/Editor/common/RnD/TransformHandles/CornerHandle.js +0 -19
  174. package/dist/Editor/common/RnD/TransformHandles/Icons/BottomRightIcon.js +0 -13
  175. package/dist/Editor/common/RnD/TransformHandles/SizeHandle.js +0 -18
  176. package/dist/Editor/common/RnD/TransformHandles/index.js +0 -62
  177. package/dist/Editor/common/RnD/Utils/alignmentDetection.js +0 -26
  178. package/dist/Editor/common/RnD/Utils/calculateDropItem.js +0 -98
  179. package/dist/Editor/common/RnD/Utils/collisionDetection.js +0 -52
  180. package/dist/Editor/common/RnD/Utils/gridDropItem.js +0 -148
  181. package/dist/Editor/common/RnD/Utils/index.js +0 -251
  182. package/dist/Editor/common/RnD/VirtualElement/index.js +0 -76
  183. package/dist/Editor/common/RnD/VirtualElement/styles.js +0 -27
  184. package/dist/Editor/common/RnD/VirtualElement/updateAutoProps.js +0 -28
  185. package/dist/Editor/common/RnD/index.js +0 -503
  186. package/dist/Editor/common/RnD/styles.js +0 -4
  187. package/dist/Editor/common/StyleBuilder/boxStyle.js +0 -30
  188. package/dist/Editor/helper/RnD/focusOnNewItem.js +0 -39
  189. package/dist/Editor/helper/RnD/scrollToNewSection.js +0 -24
  190. package/dist/Editor/helper/breakpoint.js +0 -5
  191. package/dist/Editor/hooks/useBreakpoints.js +0 -34
  192. package/dist/Editor/hooks/withErrorHandling.js +0 -14
  193. package/dist/Editor/utils/RnD/RnDCtrlCmds.js +0 -168
  194. package/dist/Editor/utils/freegrid.js +0 -49
@@ -1,7 +1,6 @@
1
1
  import React, { useRef, useState } from "react";
2
2
  import { useSlateStatic, ReactEditor } from "slate-react";
3
3
  import { Transforms, Editor, Element } from "slate";
4
- import { useTheme } from "@mui/material";
5
4
  import AppBar from "@mui/material/AppBar";
6
5
  import Box from "@mui/material/Box";
7
6
  import CssBaseline from "@mui/material/CssBaseline";
@@ -17,7 +16,7 @@ import Toolbar from "@mui/material/Toolbar";
17
16
  import Typography from "@mui/material/Typography";
18
17
  import Button from "@mui/material/Button";
19
18
  import AppHeaderPopup from "./AppHeaderPopup";
20
- import { getTRBLBreakPoints, groupByBreakpoint } from "../../helper/theme";
19
+ import { getTRBLBreakPoints } from "../../helper/theme";
21
20
  import { handleLinkType } from "../../utils/helper";
22
21
  import { jsx as _jsx } from "react/jsx-runtime";
23
22
  import { jsxs as _jsxs } from "react/jsx-runtime";
@@ -25,7 +24,6 @@ import { createElement as _createElement } from "react";
25
24
  import { Fragment as _Fragment } from "react/jsx-runtime";
26
25
  const drawerWidth = 240;
27
26
  function AppHeader(props) {
28
- const theme = useTheme();
29
27
  const navWrprRef = useRef(null);
30
28
  const [openSetttings, setOpenSettings] = useState(false);
31
29
  const {
@@ -64,6 +62,11 @@ function AppHeader(props) {
64
62
  const handleDrawerToggle = () => {
65
63
  setMobileOpen(prevState => !prevState);
66
64
  };
65
+ const closeDrawer = () => {
66
+ if (mobileOpen) {
67
+ handleDrawerToggle();
68
+ }
69
+ };
67
70
  const onSettings = e => {
68
71
  if (!readOnly) {
69
72
  e.stopPropagation();
@@ -123,6 +126,11 @@ function AppHeader(props) {
123
126
  }
124
127
  }
125
128
  };
129
+
130
+ // const onMenuSettings = (menuItem, i) => (event) => {
131
+ // event.preventDefault();
132
+ // };
133
+
126
134
  const drawer = /*#__PURE__*/_jsxs(Box, {
127
135
  onClick: handleDrawerToggle,
128
136
  sx: {
@@ -145,10 +153,27 @@ function AppHeader(props) {
145
153
  }), /*#__PURE__*/_jsx(Divider, {}), /*#__PURE__*/_jsx(List, {
146
154
  children: menus.map((item, i) => {
147
155
  const buttonProps = handleLinkType(item.url, item.linkType, true, item.target === "_blank");
156
+ const onTouchEnd = e => {
157
+ if (buttonProps?.onTouchEnd) {
158
+ buttonProps?.onTouchEnd(e);
159
+ closeDrawer();
160
+ }
161
+ };
162
+ const onClick = e => {
163
+ if (buttonProps?.onClick) {
164
+ buttonProps?.onClick(e);
165
+ closeDrawer();
166
+ }
167
+ };
168
+ const props = {
169
+ ...buttonProps,
170
+ onTouchEnd,
171
+ onClick
172
+ };
148
173
  return /*#__PURE__*/_jsx(ListItem, {
149
174
  disablePadding: true,
150
175
  children: /*#__PURE__*/_jsx(ListItemButton, {
151
- ...buttonProps,
176
+ ...props,
152
177
  sx: {
153
178
  textAlign: "center"
154
179
  },
@@ -161,20 +186,15 @@ function AppHeader(props) {
161
186
  })]
162
187
  });
163
188
  const container = window !== undefined ? () => window().document.body : undefined;
189
+ // const elevateStyle = useEleveateScroll({
190
+ // ...props,
191
+ // parentRef: navWrprRef,
192
+ // needElevation: readOnly,
193
+ // });
194
+
164
195
  const elevateStyle = {
165
196
  position: "relative"
166
197
  };
167
- const appbarSp = groupByBreakpoint({
168
- padding: {
169
- ...getTRBLBreakPoints(bannerSpacing)
170
- }
171
- }, theme);
172
- const toolbarSp = groupByBreakpoint({
173
- flexDirection: {
174
- xs: "row-reverse !important",
175
- lg: "unset"
176
- }
177
- }, theme);
178
198
  return /*#__PURE__*/_jsxs(_Fragment, {
179
199
  children: [/*#__PURE__*/_jsxs(Box, {
180
200
  sx: {
@@ -196,14 +216,13 @@ function AppHeader(props) {
196
216
  ...elevateStyle,
197
217
  background: bgColor,
198
218
  boxShadow: "none",
199
- ...appbarSp,
219
+ padding: {
220
+ ...getTRBLBreakPoints(bannerSpacing)
221
+ },
200
222
  zIndex: 999
201
223
  },
202
224
  onClick: onSettings,
203
225
  children: /*#__PURE__*/_jsxs(Toolbar, {
204
- sx: {
205
- ...toolbarSp
206
- },
207
226
  style: {
208
227
  flexDirection: isLogoRight ? "row-reverse" : "row",
209
228
  paddingLeft: "0px",
@@ -220,11 +239,8 @@ function AppHeader(props) {
220
239
  },
221
240
  sx: {
222
241
  mr: 2,
223
- [theme.breakpoints.up("sm")]: {
224
- display: "none"
225
- },
226
- [theme.breakpoints.between("xs", "md")]: {
227
- display: "block"
242
+ display: {
243
+ sm: "none"
228
244
  }
229
245
  },
230
246
  children: /*#__PURE__*/_jsx(MenuIcon, {})
@@ -235,21 +251,16 @@ function AppHeader(props) {
235
251
  style: {
236
252
  display: "inline-flex",
237
253
  alignItems: "center",
238
- color: textColor,
254
+ color: textColor || "#000000",
239
255
  fontSize: logoFontSize,
240
256
  fontFamily: titleFontFamily,
241
257
  justifyContent: isLogoRight ? "end" : "start"
242
258
  },
243
259
  sx: {
244
260
  flexGrow: 1,
245
- [theme.breakpoints.up("sm")]: {
246
- display: "block"
247
- },
248
- [theme.breakpoints.between("xs", "md")]: {
249
- display: "none"
250
- },
251
- "& img": {
252
- marginRight: "7px"
261
+ display: {
262
+ xs: "none",
263
+ sm: "block"
253
264
  }
254
265
  },
255
266
  className: "app-logo",
@@ -263,11 +274,9 @@ function AppHeader(props) {
263
274
  }) : null, appTitle]
264
275
  }), /*#__PURE__*/_jsxs(Box, {
265
276
  sx: {
266
- [theme.breakpoints.up("sm")]: {
267
- display: "block"
268
- },
269
- [theme.breakpoints.between("xs", "md")]: {
270
- display: "none"
277
+ display: {
278
+ xs: "none",
279
+ sm: "block"
271
280
  }
272
281
  },
273
282
  children: [isDrawer ? /*#__PURE__*/_jsx(IconButton, {
@@ -290,7 +299,7 @@ function AppHeader(props) {
290
299
  fontFamily: fontFamily,
291
300
  textTransform: "none",
292
301
  fontSize: fontSize || "16px",
293
- color: textColor || "#FFF",
302
+ color: textColor || "#000",
294
303
  background: bgColor || "none",
295
304
  "& .m-settings": {
296
305
  display: "none",
@@ -305,7 +314,7 @@ function AppHeader(props) {
305
314
  background: "#FFF"
306
315
  },
307
316
  "&:hover": {
308
- color: textColorHover || textColor || "#FFF",
317
+ color: textColorHover || textColor || "#000",
309
318
  background: bgColorHover || bgColor || "none",
310
319
  "& .m-settings": {
311
320
  display: "block"
@@ -1,7 +1,8 @@
1
1
  import React, { useState } from "react";
2
2
  import { Transforms } from "slate";
3
3
  import { ReactEditor, useSlateStatic } from "slate-react";
4
- import { IconButton, Tooltip, Box, useTheme } from "@mui/material";
4
+ import { IconButton, Tooltip, Box } from "@mui/material";
5
+ // import * as fIcons from "@mui/icons-material";
5
6
  import MUIIcon from "../../common/StyleBuilder/fieldTypes/loadIcon";
6
7
  import SettingsIcon from "@mui/icons-material/Settings";
7
8
  import OpenInNewIcon from "@mui/icons-material/OpenInNew";
@@ -9,13 +10,15 @@ import LinkIcon from "@mui/icons-material/Link";
9
10
  import ButtonPopup from "./ButtonPopup";
10
11
  import { actionButtonRedirect } from "../../service/actionTrigger";
11
12
  import { WorkflowIcon } from "../../common/iconslist";
12
- import { getTRBLBreakPoints, getBreakPointsValue, groupByBreakpoint } from "../../helper/theme";
13
+ import { getTRBLBreakPoints, getBreakPointsValue } from "../../helper/theme";
13
14
  import { handleLinkType, windowVar } from "../../utils/helper";
14
15
  import LinkSettings from "../../common/LinkSettings";
16
+ import { useEditorTheme } from "../../hooks/useEditorTheme";
17
+ import { getTheme } from "../../theme";
18
+ import { fontFamilyMap } from "../../utils/font";
15
19
  import { jsx as _jsx } from "react/jsx-runtime";
16
20
  import { jsxs as _jsxs } from "react/jsx-runtime";
17
21
  const EditorButton = props => {
18
- const theme = useTheme();
19
22
  const {
20
23
  attributes,
21
24
  element,
@@ -30,6 +33,12 @@ const EditorButton = props => {
30
33
  const path = ReactEditor.findPath(editor, element);
31
34
  const [edit, setEdit] = useState(false);
32
35
  const [openNav, setOpenNav] = useState(false);
36
+ const {
37
+ theme
38
+ } = useEditorTheme();
39
+ const {
40
+ buttonTheme
41
+ } = getTheme(theme);
33
42
  const {
34
43
  label,
35
44
  bgColor,
@@ -43,7 +52,7 @@ const EditorButton = props => {
43
52
  fontFamily,
44
53
  textColorHover,
45
54
  bgColorHover,
46
- buttonIcon,
55
+ // buttonIcon,
47
56
  iconPosition = "start",
48
57
  borderStyle,
49
58
  borderWidth,
@@ -62,13 +71,15 @@ const EditorButton = props => {
62
71
  } = actionTrigger || {
63
72
  options: []
64
73
  };
65
- const isTrigger = linkType === "actionTrigger";
74
+ const isTrigger = linkType === "nextTrigger" || linkType === "prevTrigger";
66
75
  const refURl = isTrigger ? buttonLink?.url : url;
76
+ const buttonIcon = element?.buttonIcon || buttonTheme?.buttonIcon;
67
77
  const BtnIcon = buttonIcon ? buttonIcon : null;
68
78
  windowVar.lastButtonProps = element;
69
79
  const handleTrigger = async () => {
70
80
  if (metadata?.buttonLink?.handler) {
71
- metadata.buttonLink.handler("click");
81
+ const response = isTrigger ? linkType : "click";
82
+ metadata.buttonLink.handler(response);
72
83
  } else if (redirectOnURLResult) {
73
84
  // call api and redirect based on api result
74
85
  const apiResult = await actionButtonRedirect({}, {
@@ -81,6 +92,7 @@ const EditorButton = props => {
81
92
  }
82
93
  };
83
94
  const buttonProps = handleLinkType(refURl, linkType, readOnly, openInNewTab, handleTrigger);
95
+ console.log(openInNewTab);
84
96
  const onMenuClick = val => () => {
85
97
  switch (val) {
86
98
  case "edit":
@@ -153,33 +165,21 @@ const EditorButton = props => {
153
165
  const onClose = () => {
154
166
  setEdit(false);
155
167
  };
156
- const tAlign = alignment || textAlign || "left";
157
- const btnSp = groupByBreakpoint({
158
- borderRadius: {
159
- ...getBreakPointsValue(borderRadius || {}, null, "overrideBorderRadius", true)
160
- },
161
- padding: {
162
- ...getTRBLBreakPoints(bannerSpacing)
163
- }
164
- }, theme);
165
- const pSp = groupByBreakpoint({
166
- display: {
167
- xs: xsHidden ? "none" : "inline-block",
168
- lg: "inline-block"
169
- }
170
- }, theme);
171
168
  return /*#__PURE__*/_jsxs("div", {
172
- className: `editor-btn-wrapper`,
169
+ className: "editor-btn-wrapper",
173
170
  ...attributes,
174
171
  style: {
175
- textAlign: tAlign
172
+ textAlign: alignment || textAlign || "left"
176
173
  },
177
174
  contentEditable: false,
178
175
  children: [/*#__PURE__*/_jsx(Box, {
179
176
  component: "div",
180
177
  className: "editor-btn-wrapper-inner",
181
178
  sx: {
182
- ...pSp,
179
+ display: {
180
+ lg: "inline-block",
181
+ xs: xsHidden ? "none" : "inline-block"
182
+ },
183
183
  "& .element-toolbar": {
184
184
  display: "none"
185
185
  },
@@ -195,18 +195,11 @@ const EditorButton = props => {
195
195
  display: "inline-block"
196
196
  },
197
197
  children: [/*#__PURE__*/_jsxs(Box, {
198
- className: `btn textAlign-${tAlign}`,
199
198
  sx: {
200
199
  textDecoration: "none",
201
- background: bgColor || "rgb(30, 75, 122)",
202
200
  borderBlockStyle: "solid",
203
- borderColor: borderColor || "transparent",
204
201
  borderWidth: borderWidth !== undefined ? borderWidth : borderColor ? "1px" : "0px",
205
- ...btnSp,
206
202
  borderStyle: borderStyle || "solid",
207
- color: `${textColor || "#FFFFFF"}`,
208
- fontSize: textSize || "inherit",
209
- fontFamily: fontFamily || "PoppinsRegular",
210
203
  display: "inline-flex",
211
204
  alignItems: "center",
212
205
  position: "relative",
@@ -214,14 +207,26 @@ const EditorButton = props => {
214
207
  display: "none"
215
208
  },
216
209
  "&:hover": {
217
- color: `${textColorHover || textColor || "#FFFFFF"}`,
218
- background: bgColorHover || bgColor || "rgb(30, 75, 122)",
210
+ color: `${textColorHover || textColor}`,
211
+ background: bgColorHover || bgColor,
219
212
  "& .element-toolbar": {
220
213
  display: "flex"
221
214
  }
215
+ },
216
+ color: `${textColor} !important`,
217
+ fontSize: `${textSize}px !important`,
218
+ fontFamily: `${fontFamilyMap[fontFamily] || ""} !important`,
219
+ background: `${bgColor} !important`,
220
+ borderColor: `${borderColor} !important`,
221
+ borderRadius: {
222
+ ...getBreakPointsValue(borderRadius || buttonTheme?.borderRadius || {}, null, "overrideBorderRadius", true)
223
+ },
224
+ padding: {
225
+ ...getTRBLBreakPoints(bannerSpacing || buttonTheme?.bannerSpacing || {})
222
226
  }
223
227
  },
224
228
  ...buttonProps,
229
+ className: "button theme-element",
225
230
  children: [BtnIcon && iconPosition === "start" && /*#__PURE__*/_jsx(MUIIcon, {
226
231
  iconName: buttonIcon,
227
232
  style: {
@@ -1,11 +1,15 @@
1
- import React, { useState } from "react";
2
- import { Box, IconButton, Popover } from "@mui/material";
1
+ import React, { useContext, useState } from "react";
2
+ import { Box, IconButton, Popover, Typography, useTheme } from "@mui/material";
3
3
  import ArrowDropDownIcon from "@mui/icons-material/ArrowDropDown";
4
4
  import Button from "../../common/Button";
5
5
  import { colors } from "./defaultColors";
6
6
  import ColorPicker from "./colorPicker.svg";
7
+ import { ThemeContext } from "../../CommonEditor";
8
+ import { useSlateStatic } from "slate-react";
9
+ import { Transforms } from "slate";
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) {
@@ -31,9 +35,7 @@ const SingleColorButton = ({
31
35
  style: {
32
36
  width: "100%",
33
37
  display: "flex",
34
- alignItems: "center",
35
- padding: padding || "8px",
36
- justifyContent: "center"
38
+ padding: padding || "8px"
37
39
  },
38
40
  children: [crs.map(m => /*#__PURE__*/_jsx(Button, {
39
41
  onClick: handleSelect(m),
@@ -109,11 +111,17 @@ const ColorButtons = props => {
109
111
  forMiniTool,
110
112
  openColorTool,
111
113
  onClose,
112
- onColorPickerClick
114
+ onColorPickerClick,
115
+ disableEditTheme
113
116
  } = props;
114
117
  const [row1, ...restRows] = ColorChunks([]);
115
118
  const [anchorEl, setAnchorEl] = useState(null);
116
119
  const open = Boolean(anchorEl);
120
+ const theme = useTheme();
121
+ const editor = useSlateStatic();
122
+ const {
123
+ setOpenTheme
124
+ } = useContext(ThemeContext);
117
125
  const handleMore = e => {
118
126
  setAnchorEl(e.currentTarget);
119
127
  };
@@ -126,6 +134,7 @@ const ColorButtons = props => {
126
134
  const handleSelect = color => () => {
127
135
  onSelect(color);
128
136
  };
137
+ const colorVars = theme?.vars?.colors || {};
129
138
  return /*#__PURE__*/_jsxs(Box, {
130
139
  component: "span",
131
140
  sx: classes.colorButtons,
@@ -142,7 +151,7 @@ const ColorButtons = props => {
142
151
  activeColor: activeColor
143
152
  }, `si_btn_row1_${m}_${i}`);
144
153
  })
145
- }), /*#__PURE__*/_jsxs(Popover, {
154
+ }), /*#__PURE__*/_jsx(Popover, {
146
155
  open: open || openColorTool,
147
156
  anchorEl: anchorEl || openColorTool,
148
157
  onClose: handleClose,
@@ -156,9 +165,39 @@ const ColorButtons = props => {
156
165
  },
157
166
  sx: classes.colorPopper,
158
167
  className: "colorPopper",
159
- children: [/*#__PURE__*/_jsx(Box, {
168
+ children: /*#__PURE__*/_jsxs(Box, {
160
169
  sx: classes.colorButtonsInner,
161
- children: restRows.map((m, i) => {
170
+ children: [Object.values(colorVars)?.length ? /*#__PURE__*/_jsxs(_Fragment, {
171
+ children: [/*#__PURE__*/_jsxs(Box, {
172
+ component: "div",
173
+ className: "singleColorTitleWrapper",
174
+ children: [/*#__PURE__*/_jsx(Typography, {
175
+ variant: "subtitle2",
176
+ children: "Theme colour"
177
+ }), disableEditTheme ? null : /*#__PURE__*/_jsx("div", {
178
+ className: "editBtn",
179
+ onClick: () => {
180
+ Transforms.deselect(editor, {
181
+ at: editor.selection
182
+ });
183
+ setOpenTheme("editThemeColor");
184
+ },
185
+ children: "Edit"
186
+ })]
187
+ }), /*#__PURE__*/_jsx(SingleColorButton, {
188
+ crs: Object.values(colorVars),
189
+ handleSelect: handleSelect,
190
+ classes: classes,
191
+ activeColor: activeColor
192
+ })]
193
+ }) : null, /*#__PURE__*/_jsx(Box, {
194
+ component: "div",
195
+ className: "singleColorTitleWrapper",
196
+ children: /*#__PURE__*/_jsx(Typography, {
197
+ variant: "subtitle2",
198
+ children: "Custom colour"
199
+ })
200
+ }), restRows.map((m, i) => {
162
201
  return /*#__PURE__*/_jsx(SingleColorButton, {
163
202
  id: `p2_${id}`,
164
203
  crs: m,
@@ -167,14 +206,18 @@ const ColorButtons = props => {
167
206
  classes: classes,
168
207
  activeColor: activeColor
169
208
  }, `si_btn_${m}_${i}`);
170
- })
171
- }), forMiniTool ? /*#__PURE__*/_jsx(IconButton, {
172
- onClick: onColorPickerClick,
173
- children: /*#__PURE__*/_jsx("img", {
174
- src: ColorPicker,
175
- alt: "color wheel"
176
- })
177
- }) : null]
209
+ }), forMiniTool ? /*#__PURE__*/_jsx(IconButton, {
210
+ onClick: onColorPickerClick,
211
+ style: {
212
+ alignSelf: "start",
213
+ margin: "6px"
214
+ },
215
+ children: /*#__PURE__*/_jsx("img", {
216
+ src: ColorPicker,
217
+ alt: "color wheel"
218
+ })
219
+ }) : null]
220
+ })
178
221
  })]
179
222
  });
180
223
  };
@@ -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,7 +1,6 @@
1
1
  import React, { useState } from "react";
2
2
  import { ReactEditor } from "slate-react";
3
3
  import { Transforms } from "slate";
4
- import ColorPickerTool from "react-gcolor-picker";
5
4
  import { IconButton, Tooltip, Box, Popover } from "@mui/material";
6
5
  import { addMarkData, activeMark } from "../../utils/SlateUtilityFunctions";
7
6
  import ColorButtons from "./ColorButtons";
@@ -9,6 +8,7 @@ import ColorPickerStyles from "./Styles";
9
8
  import colorWheel from "./colorWheel.png";
10
9
  import "./ColorPicker.css";
11
10
  import { useEditorContext } from "../../hooks/useMouseMove";
11
+ import CustomColorPicker from "../../common/CustomColorPicker";
12
12
  import { jsx as _jsx } from "react/jsx-runtime";
13
13
  import { Fragment as _Fragment } from "react/jsx-runtime";
14
14
  import { jsxs as _jsxs } from "react/jsx-runtime";
@@ -95,10 +95,10 @@ const ColorPicker = props => {
95
95
  horizontal: "top"
96
96
  },
97
97
  sx: classes.colorPickerPopup,
98
- children: /*#__PURE__*/_jsx(ColorPickerTool, {
98
+ children: /*#__PURE__*/_jsx(CustomColorPicker, {
99
99
  gradient: true,
100
- value: activeColor,
101
- onChange: handleFormSubmit
100
+ onChange: handleFormSubmit,
101
+ color: activeColor
102
102
  })
103
103
  })]
104
104
  });
@@ -15,7 +15,8 @@ const ColorPickerStyles = theme => ({
15
15
  colorPopper: {
16
16
  "& .MuiPaper-root": {
17
17
  backgroundColor: theme?.palette?.editor?.background,
18
- '@media only screen and (max-width: 600px)': {
18
+ padding: "4px 14px",
19
+ "@media only screen and (max-width: 600px)": {
19
20
  marginTop: "-40px"
20
21
  }
21
22
  }
@@ -4,16 +4,15 @@ import { Node, Transforms, Editor } from "slate";
4
4
  import AspectRatioIcon from "@mui/icons-material/AspectRatio";
5
5
  import useResize from "../../utils/customHooks/useResize";
6
6
  import EmbedPopup from "./EmbedPopup";
7
- import { IconButton, Tooltip, Box, useTheme } from "@mui/material";
7
+ import { IconButton, Tooltip, Box } from "@mui/material";
8
8
  import { GridSettingsIcon, LinkIcon } from "../../common/iconslist";
9
9
  import { useEditorContext } from "../../hooks/useMouseMove";
10
- import { getTRBLBreakPoints, getBreakPointsValue, groupByBreakpoint } from "../../helper/theme";
10
+ import { getTRBLBreakPoints, getBreakPointsValue } from "../../helper/theme";
11
11
  import Icon from "../../common/Icon";
12
12
  import frames from "./Frames";
13
13
  import ImageFrame from "./Frames/ImageFrame";
14
14
  import LinkSettings from "../../common/LinkSettings";
15
15
  import { handleLinkType } from "../../utils/helper";
16
- import { wrapThemeBreakpoints } from "../FreeGrid/breakpointConstants";
17
16
  import { jsx as _jsx } from "react/jsx-runtime";
18
17
  import { jsxs as _jsxs } from "react/jsx-runtime";
19
18
  const ToolBar = ({
@@ -66,7 +65,6 @@ const ImageContent = ({
66
65
  objectFit,
67
66
  webAddress
68
67
  } = element;
69
- const theme = useTheme();
70
68
  return !url && !readOnly ? /*#__PURE__*/_jsxs(Box, {
71
69
  component: "button",
72
70
  className: "element-empty-btn",
@@ -81,7 +79,9 @@ const ImageContent = ({
81
79
  component: "img",
82
80
  className: "emb-img",
83
81
  sx: {
84
- ...wrapThemeBreakpoints(getBreakPointsValue(borderRadius || {}, null, "overrideBorderRadius", true), "borderRadius", theme),
82
+ borderRadius: {
83
+ ...getBreakPointsValue(borderRadius || {}, null, "overrideBorderRadius", true)
84
+ },
85
85
  objectFit: "cover",
86
86
  boxShadow: boxShadow || "none",
87
87
  height: objectFit ? "100%" : "auto",
@@ -105,7 +105,6 @@ const Image = ({
105
105
  children,
106
106
  customProps
107
107
  }) => {
108
- const theme = useTheme();
109
108
  const {
110
109
  url,
111
110
  bannerSpacing,
@@ -228,14 +227,12 @@ const Image = ({
228
227
  };
229
228
  } else {
230
229
  return {
231
- ...groupByBreakpoint({
232
- width: url ? {
233
- ...getBreakPointsValue(getSize(), null, "overrideReSize", true)
234
- } : "100%",
235
- height: objectFit && url ? {
236
- ...getBreakPointsValue(getSize(), null, "overrideReSizeH", true)
237
- } : "auto"
238
- }, theme)
230
+ width: url ? {
231
+ ...getBreakPointsValue(getSize(), null, "overrideReSize", true)
232
+ } : "100%",
233
+ height: objectFit && url ? {
234
+ ...getBreakPointsValue(getSize(), null, "overrideReSizeH", true)
235
+ } : "auto"
239
236
  };
240
237
  }
241
238
  };
@@ -250,7 +247,9 @@ const Image = ({
250
247
  },
251
248
  width: `100%`,
252
249
  maxWidth: "100%",
253
- ...wrapThemeBreakpoints(getTRBLBreakPoints(bannerSpacing), "padding", theme),
250
+ padding: {
251
+ ...getTRBLBreakPoints(bannerSpacing)
252
+ },
254
253
  backgroundColor: bgColor,
255
254
  justifyContent: horizantal,
256
255
  alignContent: vertical