@flozy/editor 6.0.5 → 6.0.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 (129) hide show
  1. package/dist/Editor/ChatEditor.js +7 -7
  2. package/dist/Editor/CommonEditor.js +81 -25
  3. package/dist/Editor/DialogWrapper.js +31 -25
  4. package/dist/Editor/Editor.css +22 -16
  5. package/dist/Editor/Elements/AI/PopoverAIInput.js +2 -12
  6. package/dist/Editor/Elements/AppHeader/AppHeader.js +3 -3
  7. package/dist/Editor/Elements/Button/EditorButton.js +26 -9
  8. package/dist/Editor/Elements/Color Picker/ColorButtons.js +57 -12
  9. package/dist/Editor/Elements/Color Picker/ColorPicker.css +25 -1
  10. package/dist/Editor/Elements/Color Picker/ColorPicker.js +4 -4
  11. package/dist/Editor/Elements/Color Picker/Styles.js +1 -1
  12. package/dist/Editor/Elements/DataView/DataView.js +4 -3
  13. package/dist/Editor/Elements/DataView/Layouts/DataTypes/NumberType.js +5 -1
  14. package/dist/Editor/Elements/DataView/Layouts/DataTypes/TextType.js +5 -1
  15. package/dist/Editor/Elements/DataView/Layouts/FilterView.js +23 -19
  16. package/dist/Editor/Elements/DataView/Providers/DataViewProvider.js +1 -1
  17. package/dist/Editor/Elements/Embed/Image.js +2 -2
  18. package/dist/Editor/Elements/Form/Form.js +1 -0
  19. package/dist/Editor/Elements/FreeGrid/FreeGrid.js +0 -14
  20. package/dist/Editor/Elements/FreeGrid/styles.js +4 -0
  21. package/dist/Editor/Elements/Grid/GridItem.js +2 -3
  22. package/dist/Editor/Elements/Link/Link.js +70 -43
  23. package/dist/Editor/Elements/List/CheckList.js +2 -1
  24. package/dist/Editor/Elements/Search/SearchAttachment.js +1 -0
  25. package/dist/Editor/Elements/Search/SearchList.js +8 -1
  26. package/dist/Editor/Elements/SimpleText/index.js +8 -1
  27. package/dist/Editor/Elements/SimpleText/style.js +5 -1
  28. package/dist/Editor/Elements/Table/Table.js +3 -3
  29. package/dist/Editor/Elements/Table/TableCell.js +14 -9
  30. package/dist/Editor/Elements/Title/title.js +13 -1
  31. package/dist/Editor/Elements/Variables/Style.js +28 -2
  32. package/dist/Editor/Elements/Variables/VariableButton.js +17 -4
  33. package/dist/Editor/MiniEditor.js +4 -2
  34. package/dist/Editor/Toolbar/FormatTools/Dropdown.js +27 -3
  35. package/dist/Editor/Toolbar/FormatTools/FontFamilyAutocomplete.js +4 -3
  36. package/dist/Editor/Toolbar/FormatTools/MarkButton.js +2 -2
  37. package/dist/Editor/Toolbar/FormatTools/TextSize.js +7 -15
  38. package/dist/Editor/Toolbar/PopupTool/AddTemplates.js +46 -36
  39. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectAlignment.js +3 -1
  40. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +6 -13
  41. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectList.js +3 -1
  42. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +211 -91
  43. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +11 -4
  44. package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +16 -12
  45. package/dist/Editor/Toolbar/PopupTool/TemplateCard.js +1 -1
  46. package/dist/Editor/Toolbar/PopupTool/TextFormat.js +99 -7
  47. package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +438 -0
  48. package/dist/Editor/Toolbar/PopupTool/index.js +2 -0
  49. package/dist/Editor/Toolbar/toolbarGroups.js +48 -6
  50. package/dist/Editor/assets/svg/ThemeIcons.js +291 -0
  51. package/dist/Editor/common/ColorPickerButton.js +32 -9
  52. package/dist/Editor/common/CustomColorPicker/index.js +106 -0
  53. package/dist/Editor/common/CustomColorPicker/style.js +53 -0
  54. package/dist/Editor/common/CustomDialog/index.js +94 -0
  55. package/dist/Editor/common/CustomDialog/style.js +67 -0
  56. package/dist/Editor/common/CustomSelect.js +33 -0
  57. package/dist/Editor/common/DnD/DragHandleButton.js +1 -1
  58. package/dist/Editor/common/DnD/Draggable.js +0 -1
  59. package/dist/Editor/common/FontLoader/FontList.js +1 -9
  60. package/dist/Editor/common/FontLoader/FontLoader.js +6 -4
  61. package/dist/Editor/common/Icon.js +28 -0
  62. package/dist/Editor/common/ImageSelector/Styles.js +3 -9
  63. package/dist/Editor/common/MentionsPopup/Styles.js +3 -9
  64. package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Settings.js +2 -1
  65. package/dist/Editor/common/RnD/ElementSettings/Settings/AppHeaderSettings.js +3 -2
  66. package/dist/Editor/common/RnD/ElementSettings/Settings/BoxSettings.js +3 -2
  67. package/dist/Editor/common/RnD/ElementSettings/Settings/ButtonSettings.js +3 -2
  68. package/dist/Editor/common/RnD/ElementSettings/Settings/CodeSettings.js +3 -2
  69. package/dist/Editor/common/RnD/ElementSettings/Settings/FormSettings.js +4 -2
  70. package/dist/Editor/common/RnD/ElementSettings/Settings/ImageSettings.js +3 -2
  71. package/dist/Editor/common/RnD/ElementSettings/Settings/TableSettings.js +3 -2
  72. package/dist/Editor/common/RnD/ElementSettings/Settings/VideoSettings.js +3 -2
  73. package/dist/Editor/common/RnD/SwitchViewport/SwitchViewport.js +14 -2
  74. package/dist/Editor/common/RnD/Theme/MainThemeProvider.js +17 -0
  75. package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +6 -3
  76. package/dist/Editor/common/RnD/Utils/gridDropItem.js +5 -4
  77. package/dist/Editor/common/RnD/Utils/index.js +40 -0
  78. package/dist/Editor/common/RnD/index.js +23 -3
  79. package/dist/Editor/common/Shorthands/elements.js +54 -0
  80. package/dist/Editor/common/StyleBuilder/buttonStyle.js +4 -2
  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 +10 -2
  85. package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +35 -11
  86. package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +13 -4
  87. package/dist/Editor/common/StyleBuilder/fieldTypes/index.js +3 -1
  88. package/dist/Editor/common/StyleBuilder/fieldTypes/lineSpacing.js +79 -0
  89. package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +15 -7
  90. package/dist/Editor/common/StyleBuilder/pageSettingsStyle.js +4 -0
  91. package/dist/Editor/common/Uploader.js +8 -0
  92. package/dist/Editor/commonStyle.js +58 -63
  93. package/dist/Editor/helper/deserialize/index.js +1 -1
  94. package/dist/Editor/helper/ensureWrappedVariables.js +28 -0
  95. package/dist/Editor/helper/index.js +2 -2
  96. package/dist/Editor/helper/theme.js +224 -3
  97. package/dist/Editor/hooks/useEditorTheme.js +153 -0
  98. package/dist/Editor/hooks/useMouseMove.js +13 -5
  99. package/dist/Editor/plugins/withEmbeds.js +1 -1
  100. package/dist/Editor/plugins/withHTML.js +2 -2
  101. package/dist/Editor/plugins/withLayout.js +1 -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 +144 -0
  105. package/dist/Editor/themeSettings/ActiveTheme.js +72 -0
  106. package/dist/Editor/themeSettings/buttons/index.js +283 -0
  107. package/dist/Editor/themeSettings/buttons/style.js +21 -0
  108. package/dist/Editor/themeSettings/colorTheme/index.js +292 -0
  109. package/dist/Editor/themeSettings/colorTheme/style.js +77 -0
  110. package/dist/Editor/themeSettings/fonts/PreviewElement.js +121 -0
  111. package/dist/Editor/themeSettings/fonts/index.js +220 -0
  112. package/dist/Editor/themeSettings/fonts/style.js +44 -0
  113. package/dist/Editor/themeSettings/icons.js +60 -0
  114. package/dist/Editor/themeSettings/index.js +320 -0
  115. package/dist/Editor/themeSettings/style.js +152 -0
  116. package/dist/Editor/themeSettingsAI/icons.js +96 -0
  117. package/dist/Editor/themeSettingsAI/index.js +356 -0
  118. package/dist/Editor/themeSettingsAI/saveTheme.js +197 -0
  119. package/dist/Editor/themeSettingsAI/style.js +250 -0
  120. package/dist/Editor/utils/SlateUtilityFunctions.js +161 -42
  121. package/dist/Editor/utils/button.js +0 -14
  122. package/dist/Editor/utils/customHooks/useTableResize.js +2 -1
  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 +88 -19
  126. package/dist/Editor/utils/link.js +1 -1
  127. package/dist/Editor/utils/pageSettings.js +14 -2
  128. package/dist/Editor/utils/table.js +21 -0
  129. package/package.json +5 -2
@@ -0,0 +1,438 @@
1
+ import { Button, Grid, IconButton, Popover, TextField, Tooltip, Typography } from "@mui/material";
2
+ import { useEditorContext } from "../../hooks/useMouseMove";
3
+ import FormatClearIcon from "@mui/icons-material/FormatClear";
4
+ import usePopupStyles from "../PopupTool/PopupToolStyle";
5
+ import { TextMinusIcon, TextPlusIcon } from "../../common/iconslist";
6
+ import { BREAKPOINTS_DEVICES, getBreakPointsValue, getVariableValue } from "../../helper/theme";
7
+ import useWindowResize from "../../hooks/useWindowResize";
8
+ import { toolbarGroups } from "../toolbarGroups";
9
+ import Icon from "../../common/Icon";
10
+ import { useMemo, useState } from "react";
11
+ import CommonButton from "../../common/Button";
12
+ import CustomSelect from "../../common/CustomSelect";
13
+ import ColorButtons from "../../Elements/Color Picker/ColorButtons";
14
+ import FormatColorResetIcon from "@mui/icons-material/FormatColorReset";
15
+ import ColorPickerStyles from "../../Elements/Color Picker/Styles";
16
+ import colorWheel from "../../Elements/Color Picker/colorWheel.png";
17
+ import CustomColorPicker from "../../common/CustomColorPicker";
18
+ import FontFamilyAutocomplete from "../FormatTools/FontFamilyAutocomplete";
19
+ import { googleFontList as defaultFonts } from "../../common/FontLoader/FontList";
20
+ import { jsx as _jsx } from "react/jsx-runtime";
21
+ import { jsxs as _jsxs } from "react/jsx-runtime";
22
+ import { Fragment as _Fragment } from "react/jsx-runtime";
23
+ function getFontStyleProps(settings = {}, format) {
24
+ const {
25
+ fontWeight,
26
+ fontStyle
27
+ } = settings;
28
+ let isActive;
29
+ let onClick;
30
+ switch (format) {
31
+ case "bold":
32
+ isActive = fontWeight === "bold" || fontWeight === "700";
33
+ onClick = () => {
34
+ return {
35
+ fontWeight: isActive ? "normal" : "bold"
36
+ };
37
+ };
38
+ break;
39
+ case "italic":
40
+ isActive = fontStyle === "italic";
41
+ onClick = () => {
42
+ return {
43
+ fontStyle: isActive ? "unset" : "italic"
44
+ };
45
+ };
46
+ break;
47
+
48
+ // case "underline":
49
+ // isActive = textDecoration.includes("underline");
50
+ // onClick = () => {
51
+ // let otherTextDecoration = textDecoration?.includes("line-through")
52
+ // ? "line-through"
53
+ // : "";
54
+
55
+ // otherTextDecoration += isActive ? "" : " underline";
56
+
57
+ // return { textDecoration: otherTextDecoration };
58
+ // };
59
+ // break;
60
+ // case "strikethrough":
61
+ // isActive = textDecoration.includes("line-through");
62
+ // onClick = () => {
63
+ // let otherTextDecoration = textDecoration?.includes("underline")
64
+ // ? "underline"
65
+ // : "";
66
+
67
+ // otherTextDecoration += isActive ? "" : " line-through";
68
+
69
+ // return { textDecoration: otherTextDecoration };
70
+ // };
71
+ // break;
72
+
73
+ default:
74
+ isActive = false;
75
+ onClick = () => {};
76
+ break;
77
+ }
78
+ return {
79
+ isActive,
80
+ onClick
81
+ };
82
+ }
83
+ const allTools = toolbarGroups.flat();
84
+ function ThemeTextFormat(props) {
85
+ const {
86
+ settings,
87
+ updateSettings,
88
+ onSaveTextSettings,
89
+ onClose
90
+ } = props;
91
+ const {
92
+ theme,
93
+ fontFamilies
94
+ } = useEditorContext();
95
+ const classes = usePopupStyles(theme);
96
+ const pickerStyles = ColorPickerStyles(theme);
97
+ const fontStyle = allTools.filter(f => f.type === "mark" && f.themeEnabled);
98
+ const fontWeight = allTools.find(f => f.format === "fontWeight");
99
+ const fontFamilyVal = useMemo(() => {
100
+ const {
101
+ fontFamily = ""
102
+ } = settings;
103
+ let font = fontFamily.startsWith("var") ? getVariableValue(fontFamily) : fontFamily;
104
+ return font;
105
+ }, [settings]);
106
+ const fontWeightVal = useMemo(() => {
107
+ const {
108
+ options
109
+ } = fontWeight || {};
110
+ const selected = options?.find(o => o.value === settings?.fontWeight || o.numVal === settings?.fontWeight);
111
+ return selected?.value;
112
+ }, [settings?.fontWeight]);
113
+ return /*#__PURE__*/_jsxs(Grid, {
114
+ container: true,
115
+ sx: classes.textFormatWrapper,
116
+ children: [/*#__PURE__*/_jsxs(Grid, {
117
+ item: true,
118
+ xs: 12,
119
+ children: [/*#__PURE__*/_jsxs(Grid, {
120
+ container: true,
121
+ justifyContent: "space-between",
122
+ alignItems: "center",
123
+ children: [/*#__PURE__*/_jsx(Grid, {
124
+ item: true,
125
+ children: /*#__PURE__*/_jsx(Typography, {
126
+ variant: "body1",
127
+ color: "primary",
128
+ sx: classes.typoLabel,
129
+ children: "Font Family"
130
+ })
131
+ }), /*#__PURE__*/_jsx(Grid, {
132
+ item: true,
133
+ children: /*#__PURE__*/_jsx(Button, {
134
+ sx: classes.defaultBtn,
135
+ startIcon: /*#__PURE__*/_jsx(FormatClearIcon, {}),
136
+ onClick: () => updateSettings({
137
+ fontFamily: defaultFonts[0]
138
+ }),
139
+ children: "Default"
140
+ })
141
+ })]
142
+ }), /*#__PURE__*/_jsx(Grid, {
143
+ item: true,
144
+ xs: 12,
145
+ sx: classes.textFormatField,
146
+ children: /*#__PURE__*/_jsx(FontFamilyAutocomplete, {
147
+ editor: {},
148
+ format: "fontFamily",
149
+ options: fontFamilies?.options,
150
+ width: "100%",
151
+ onChange: updateSettings,
152
+ val: fontFamilyVal || defaultFonts[0],
153
+ webFont: true
154
+ })
155
+ })]
156
+ }), /*#__PURE__*/_jsxs(Grid, {
157
+ container: true,
158
+ spacing: 2,
159
+ children: [/*#__PURE__*/_jsxs(Grid, {
160
+ item: true,
161
+ xs: 6,
162
+ children: [/*#__PURE__*/_jsx(Typography, {
163
+ variant: "body1",
164
+ color: "primary",
165
+ sx: classes.typoLabel,
166
+ children: "Font Weight"
167
+ }), /*#__PURE__*/_jsx(Grid, {
168
+ item: true,
169
+ xs: 12,
170
+ sx: classes.textFormatField,
171
+ children: /*#__PURE__*/_jsx(CustomSelect, {
172
+ options: fontWeight?.options || [],
173
+ classes: classes,
174
+ onChange: e => {
175
+ updateSettings({
176
+ fontWeight: e.target.value
177
+ });
178
+ },
179
+ value: fontWeightVal
180
+ })
181
+ })]
182
+ }), /*#__PURE__*/_jsxs(Grid, {
183
+ item: true,
184
+ xs: 6,
185
+ children: [/*#__PURE__*/_jsx(Typography, {
186
+ variant: "body1",
187
+ color: "primary",
188
+ sx: classes.typoLabel,
189
+ children: "Font Size"
190
+ }), /*#__PURE__*/_jsx(Grid, {
191
+ item: true,
192
+ xs: 12,
193
+ sx: classes.textFormatCG,
194
+ children: /*#__PURE__*/_jsx(TextSize, {
195
+ classes: classes,
196
+ value: settings?.fontSize || 16,
197
+ onChange: fontSize => updateSettings({
198
+ fontSize
199
+ }),
200
+ fullWidth: true
201
+ })
202
+ })]
203
+ })]
204
+ }), /*#__PURE__*/_jsxs(Grid, {
205
+ item: true,
206
+ xs: 12,
207
+ sx: classes.textFormatField,
208
+ style: {
209
+ marginTop: "14px"
210
+ },
211
+ children: [/*#__PURE__*/_jsxs(Grid, {
212
+ container: true,
213
+ justifyContent: "space-between",
214
+ alignItems: "center",
215
+ children: [/*#__PURE__*/_jsx(Grid, {
216
+ item: true,
217
+ children: /*#__PURE__*/_jsx(Typography, {
218
+ variant: "body1",
219
+ color: "primary",
220
+ sx: classes.typoLabel,
221
+ children: "Text Color"
222
+ })
223
+ }), /*#__PURE__*/_jsx(Grid, {
224
+ item: true,
225
+ children: /*#__PURE__*/_jsx(Button, {
226
+ sx: classes.defaultBtn,
227
+ startIcon: /*#__PURE__*/_jsx(FormatColorResetIcon, {}),
228
+ onClick: () => updateSettings({
229
+ color: "#ddd"
230
+ }),
231
+ children: "Default"
232
+ })
233
+ })]
234
+ }), /*#__PURE__*/_jsx(Grid, {
235
+ sx: classes.textFormatColorWrpr,
236
+ children: /*#__PURE__*/_jsx(ColorPicker, {
237
+ classes: classes,
238
+ pickerStyles: pickerStyles,
239
+ onChange: color => updateSettings({
240
+ color
241
+ }),
242
+ color: settings?.color,
243
+ disableEditTheme: true
244
+ })
245
+ })]
246
+ }), /*#__PURE__*/_jsxs(Grid, {
247
+ item: true,
248
+ xs: 12,
249
+ children: [/*#__PURE__*/_jsx(Typography, {
250
+ variant: "body1",
251
+ color: "primary",
252
+ sx: classes.typoLabel,
253
+ children: "Typography"
254
+ }), /*#__PURE__*/_jsx(Grid, {
255
+ item: true,
256
+ xs: 12,
257
+ className: "typo-icons",
258
+ sx: classes.evenSpace,
259
+ children: fontStyle?.map((m, i) => {
260
+ const {
261
+ isActive,
262
+ onClick
263
+ } = getFontStyleProps(settings, m.format) || {};
264
+ return /*#__PURE__*/_jsx(CommonButton, {
265
+ active: isActive,
266
+ onClick: () => {
267
+ const style = onClick();
268
+ updateSettings(style);
269
+ },
270
+ children: /*#__PURE__*/_jsx(Icon, {
271
+ icon: m.format
272
+ })
273
+ }, i);
274
+ })
275
+ })]
276
+ }), /*#__PURE__*/_jsx(Grid, {
277
+ item: true,
278
+ xs: 12,
279
+ sx: {
280
+ mt: 2
281
+ },
282
+ children: /*#__PURE__*/_jsxs("div", {
283
+ style: {
284
+ display: "flex",
285
+ justifyContent: "end",
286
+ margin: "8px",
287
+ position: "absolute",
288
+ bottom: 0,
289
+ right: 0
290
+ },
291
+ children: [/*#__PURE__*/_jsx(Button, {
292
+ onClick: onClose,
293
+ className: "secondaryBtn",
294
+ children: "Cancel"
295
+ }), /*#__PURE__*/_jsx(Button, {
296
+ onClick: onSaveTextSettings,
297
+ className: "primaryBtn",
298
+ children: "Save"
299
+ })]
300
+ })
301
+ })]
302
+ });
303
+ }
304
+ export default ThemeTextFormat;
305
+ function TextSize(props) {
306
+ const {
307
+ classes,
308
+ value: val,
309
+ onChange,
310
+ fullWidth
311
+ } = props;
312
+ const [size] = useWindowResize();
313
+ const value = getBreakPointsValue(val, size?.device);
314
+ const updateMarkData = newVal => {
315
+ let upData = {
316
+ ...getBreakPointsValue(val),
317
+ [size?.device]: `${newVal}px`
318
+ };
319
+
320
+ // if desktop update to all other devices
321
+ // to avoid default normal size
322
+ if (size?.device === "lg") {
323
+ upData = BREAKPOINTS_DEVICES.reduce((a, b) => {
324
+ a[b] = `${newVal}px`;
325
+ return a;
326
+ }, {});
327
+ }
328
+ onChange(upData);
329
+ };
330
+ const onChangeSize = e => {
331
+ let inc = parseInt(e.target.value) || 8;
332
+ inc = inc > 200 ? 200 : inc;
333
+ updateMarkData(inc || 8);
334
+ };
335
+ const getSizeVal = () => {
336
+ try {
337
+ return parseInt(value);
338
+ } catch (err) {
339
+ return "";
340
+ }
341
+ };
342
+ const combinedOldVal = getSizeVal();
343
+ const onIncreaseSize = () => {
344
+ let inc = (combinedOldVal || 0) + 1;
345
+ inc = inc > 200 ? 200 : inc;
346
+ updateMarkData(inc);
347
+ };
348
+ const onDecreaseSize = () => {
349
+ const newVal = combinedOldVal - 1 < 0 ? 0 : combinedOldVal - 1;
350
+ updateMarkData(newVal);
351
+ };
352
+ return /*#__PURE__*/_jsx(TextField, {
353
+ sx: classes?.textSize,
354
+ value: combinedOldVal,
355
+ onChange: onChangeSize,
356
+ size: "small",
357
+ inputProps: {
358
+ style: {
359
+ width: fullWidth ? "100%" : "30px",
360
+ textAlign: "center",
361
+ height: "19px",
362
+ fontSize: "14px"
363
+ }
364
+ },
365
+ fullWidth: fullWidth,
366
+ InputProps: {
367
+ style: {
368
+ borderRadius: "8px"
369
+ },
370
+ endAdornment: /*#__PURE__*/_jsxs("div", {
371
+ className: "textFontArrows",
372
+ children: [/*#__PURE__*/_jsx(IconButton, {
373
+ onClick: onIncreaseSize,
374
+ size: "small",
375
+ children: /*#__PURE__*/_jsx(TextPlusIcon, {})
376
+ }), /*#__PURE__*/_jsx(IconButton, {
377
+ onClick: onDecreaseSize,
378
+ size: "small",
379
+ children: /*#__PURE__*/_jsx(TextMinusIcon, {})
380
+ })]
381
+ })
382
+ }
383
+ });
384
+ }
385
+ function ColorPicker(props) {
386
+ const {
387
+ classes,
388
+ pickerStyles,
389
+ onChange,
390
+ color,
391
+ disableEditTheme
392
+ } = props;
393
+ const [anchorEl, setAnchorEl] = useState(null);
394
+ const open = Boolean(anchorEl);
395
+ const handleClose = () => {
396
+ setAnchorEl(null);
397
+ };
398
+ return /*#__PURE__*/_jsxs(_Fragment, {
399
+ children: [/*#__PURE__*/_jsx(Tooltip, {
400
+ title: "",
401
+ arrow: true,
402
+ children: /*#__PURE__*/_jsx(IconButton, {
403
+ sx: pickerStyles.colorPickerIcon,
404
+ onClick: e => {
405
+ setAnchorEl(e.currentTarget);
406
+ },
407
+ children: /*#__PURE__*/_jsx("img", {
408
+ src: colorWheel,
409
+ alt: "color wheel"
410
+ })
411
+ })
412
+ }), /*#__PURE__*/_jsx(ColorButtons, {
413
+ classes: pickerStyles,
414
+ onSelect: onChange,
415
+ activeColor: color,
416
+ disableEditTheme: disableEditTheme
417
+ }), /*#__PURE__*/_jsx(Popover, {
418
+ open: open,
419
+ anchorEl: anchorEl,
420
+ onClose: handleClose,
421
+ anchorOrigin: {
422
+ vertical: "top",
423
+ horizontal: "center"
424
+ },
425
+ transformOrigin: {
426
+ vertical: "bottom",
427
+ horizontal: "top"
428
+ },
429
+ sx: classes.colorPickerPopup,
430
+ children: /*#__PURE__*/_jsx(CustomColorPicker, {
431
+ gradient: true,
432
+ onChange: onChange,
433
+ color: color,
434
+ disableEditTheme: disableEditTheme
435
+ })
436
+ })]
437
+ });
438
+ }
@@ -9,6 +9,7 @@ import { useEditorContext } from "../../hooks/useMouseMove";
9
9
  import usePopupStyles from "../PopupTool/PopupToolStyle";
10
10
  import useEditorScroll from "../../hooks/useEditorScroll";
11
11
  import { isCarouselSelected } from "../../helper";
12
+ import { hideSlateSelection } from "../../utils/helper";
12
13
  import { jsx as _jsx } from "react/jsx-runtime";
13
14
  const PopupTool = props => {
14
15
  const {
@@ -86,6 +87,7 @@ const PopupTool = props => {
86
87
  setAnchorEl(null);
87
88
  } else {
88
89
  updateAnchorEl();
90
+ hideSlateSelection(); // removes slate selection background, when there is no selection
89
91
  }
90
92
  }, [selection, event, selectedElement?.enable]);
91
93
  const handleClose = () => {
@@ -28,16 +28,20 @@ export const toolbarGroups = [[{
28
28
  type: "dropdown",
29
29
  options: [{
30
30
  text: "Normal",
31
- value: "normal"
31
+ value: "normal",
32
+ numVal: "400"
32
33
  }, {
33
34
  text: "Bold",
34
- value: "bold"
35
+ value: "bold",
36
+ numVal: "700"
35
37
  }, {
36
38
  text: "Bolder",
37
- value: "bolder"
39
+ value: "bolder",
40
+ numVal: "700"
38
41
  }, {
39
42
  text: "Lighter",
40
- value: "lighter"
43
+ value: "lighter",
44
+ numVal: "100"
41
45
  }],
42
46
  icon: FormatBoldIcon,
43
47
  width: "100px"
@@ -46,7 +50,8 @@ export const toolbarGroups = [[{
46
50
  format: "bold",
47
51
  type: "mark",
48
52
  title: "Bold",
49
- basic: true
53
+ basic: true,
54
+ themeEnabled: true
50
55
  }, {
51
56
  id: 5,
52
57
  format: "underline",
@@ -57,7 +62,8 @@ export const toolbarGroups = [[{
57
62
  format: "italic",
58
63
  type: "mark",
59
64
  title: "Italic",
60
- basic: true
65
+ basic: true,
66
+ themeEnabled: true
61
67
  }, {
62
68
  id: 6,
63
69
  format: "strikethrough",
@@ -101,6 +107,42 @@ export const toolbarGroups = [[{
101
107
  type: "block",
102
108
  title: "H3",
103
109
  group: "typography"
110
+ }, {
111
+ id: 39,
112
+ format: "headingFour",
113
+ type: "block",
114
+ title: "H4",
115
+ group: "typography"
116
+ }, {
117
+ id: 40,
118
+ format: "headingFive",
119
+ type: "block",
120
+ title: "H5",
121
+ group: "typography"
122
+ }, {
123
+ id: 41,
124
+ format: "headingSix",
125
+ type: "block",
126
+ title: "H6",
127
+ group: "typography"
128
+ }, {
129
+ id: 42,
130
+ format: "paragraphOne",
131
+ type: "block",
132
+ title: "Paragraph 1",
133
+ group: "typography"
134
+ }, {
135
+ id: 43,
136
+ format: "paragraphTwo",
137
+ type: "block",
138
+ title: "Paragraph 2",
139
+ group: "typography"
140
+ }, {
141
+ id: 44,
142
+ format: "paragraphThree",
143
+ type: "block",
144
+ title: "Paragraph 3",
145
+ group: "typography"
104
146
  }, {
105
147
  id: 14,
106
148
  format: "doublequote",