@flozy/editor 9.8.5 → 9.8.6

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 (142) hide show
  1. package/dist/Editor/ChatEditor.js +17 -16
  2. package/dist/Editor/CommonEditor.js +119 -18
  3. package/dist/Editor/DialogWrapper.js +31 -25
  4. package/dist/Editor/Editor.css +16 -8
  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 +37 -25
  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/Search/SearchButton.js +1 -1
  30. package/dist/Editor/Elements/Search/SearchList.js +3 -2
  31. package/dist/Editor/Elements/Signature/SignatureOptions/DrawSignature.js +2 -8
  32. package/dist/Editor/Elements/SimpleText/index.js +9 -1
  33. package/dist/Editor/Elements/SimpleText/style.js +2 -2
  34. package/dist/Editor/Elements/Table/Table.js +3 -3
  35. package/dist/Editor/Elements/Title/title.js +9 -8
  36. package/dist/Editor/Elements/Variables/VariableButton.js +10 -1
  37. package/dist/Editor/MiniEditor.js +2 -1
  38. package/dist/Editor/Styles/EditorStyles.js +5 -5
  39. package/dist/Editor/Toolbar/FormatTools/Dropdown.js +27 -3
  40. package/dist/Editor/Toolbar/FormatTools/FontFamilyAutocomplete.js +4 -3
  41. package/dist/Editor/Toolbar/FormatTools/MarkButton.js +2 -2
  42. package/dist/Editor/Toolbar/FormatTools/TextSize.js +10 -13
  43. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/MiniColorPicker.js +4 -2
  44. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +6 -13
  45. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +167 -42
  46. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +7 -4
  47. package/dist/Editor/Toolbar/PopupTool/PopperHeader.js +2 -1
  48. package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +72 -12
  49. package/dist/Editor/Toolbar/PopupTool/TextFormat.js +95 -23
  50. package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +439 -0
  51. package/dist/Editor/Toolbar/PopupTool/index.js +1 -1
  52. package/dist/Editor/Toolbar/toolbarGroups.js +48 -6
  53. package/dist/Editor/assets/svg/BackIcon.js +18 -0
  54. package/dist/Editor/assets/svg/ClearAllRounded.js +31 -0
  55. package/dist/Editor/assets/svg/ResetIconNew.js +23 -0
  56. package/dist/Editor/assets/svg/ThemeIcons.js +293 -0
  57. package/dist/Editor/common/ColorPickerButton.js +38 -16
  58. package/dist/Editor/common/CustomColorPicker/index.js +131 -0
  59. package/dist/Editor/common/CustomColorPicker/style.js +53 -0
  60. package/dist/Editor/common/CustomDialog2/index.js +94 -0
  61. package/dist/Editor/common/CustomDialog2/style.js +67 -0
  62. package/dist/Editor/common/CustomSelect.js +43 -0
  63. package/dist/Editor/common/DnD/DragHandleButton.js +1 -1
  64. package/dist/Editor/common/FontLoader/FontLoader.js +3 -0
  65. package/dist/Editor/common/Icon.js +31 -1
  66. package/dist/Editor/common/ImageSelector/Styles.js +3 -9
  67. package/dist/Editor/common/MUIIcon/index.js +0 -3
  68. package/dist/Editor/common/RnD/ContextMenu/CMenus.js +24 -0
  69. package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Settings.js +2 -1
  70. package/dist/Editor/common/RnD/ElementSettings/Settings/AppHeaderSettings.js +3 -2
  71. package/dist/Editor/common/RnD/ElementSettings/Settings/BoxSettings.js +3 -2
  72. package/dist/Editor/common/RnD/ElementSettings/Settings/ButtonSettings.js +3 -2
  73. package/dist/Editor/common/RnD/ElementSettings/Settings/CodeSettings.js +3 -2
  74. package/dist/Editor/common/RnD/ElementSettings/Settings/FormSettings.js +4 -2
  75. package/dist/Editor/common/RnD/ElementSettings/Settings/ImageSettings.js +3 -2
  76. package/dist/Editor/common/RnD/ElementSettings/Settings/TableSettings.js +3 -2
  77. package/dist/Editor/common/RnD/ElementSettings/Settings/TextSettings.js +3 -1
  78. package/dist/Editor/common/RnD/ElementSettings/Settings/VideoSettings.js +3 -2
  79. package/dist/Editor/common/RnD/ShadowElement.js +2 -1
  80. package/dist/Editor/common/RnD/SwitchViewport/SwitchViewport.js +8 -2
  81. package/dist/Editor/common/RnD/Theme/MainThemeProvider.js +17 -0
  82. package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +6 -3
  83. package/dist/Editor/common/RnD/Utils/gridDropItem.js +73 -9
  84. package/dist/Editor/common/RnD/Utils/index.js +3 -0
  85. package/dist/Editor/common/RnD/VirtualElement/BoxHeaderAutoAlignment.js +43 -0
  86. package/dist/Editor/common/RnD/VirtualElement/ForceAutoAlignment.js +44 -0
  87. package/dist/Editor/common/RnD/VirtualElement/VirtualTextElement.js +134 -0
  88. package/dist/Editor/common/RnD/VirtualElement/helper.js +382 -0
  89. package/dist/Editor/common/RnD/VirtualElement/index.js +187 -103
  90. package/dist/Editor/common/RnD/VirtualElement/styles.js +155 -7
  91. package/dist/Editor/common/RnD/VirtualElement/updateAutoProps.js +5 -3
  92. package/dist/Editor/common/RnD/index.js +59 -10
  93. package/dist/Editor/common/Shorthands/elements.js +54 -0
  94. package/dist/Editor/common/SnackBar/index.js +43 -0
  95. package/dist/Editor/common/StyleBuilder/buttonStyle.js +4 -2
  96. package/dist/Editor/common/StyleBuilder/fieldTypes/backgroundImage.js +5 -0
  97. package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +12 -2
  98. package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +15 -7
  99. package/dist/Editor/common/StyleBuilder/fieldTypes/card.js +16 -8
  100. package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +36 -10
  101. package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +16 -7
  102. package/dist/Editor/common/StyleBuilder/fieldTypes/lineSpacing.js +7 -6
  103. package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +15 -7
  104. package/dist/Editor/common/StyleBuilder/pageSettingsStyle.js +5 -7
  105. package/dist/Editor/common/SwipeableDrawer/index.js +1 -1
  106. package/dist/Editor/common/Uploader.js +8 -0
  107. package/dist/Editor/common/iconslist.js +7 -8
  108. package/dist/Editor/commonStyle.js +95 -60
  109. package/dist/Editor/helper/textIndeces.js +58 -0
  110. package/dist/Editor/helper/theme.js +202 -2
  111. package/dist/Editor/hooks/useAutoScroll.js +38 -0
  112. package/dist/Editor/hooks/useEditorTheme.js +153 -0
  113. package/dist/Editor/hooks/useMouseMove.js +9 -3
  114. package/dist/Editor/hooks/useThemeValues.js +63 -0
  115. package/dist/Editor/plugins/withEmbeds.js +1 -1
  116. package/dist/Editor/plugins/withHTML.js +11 -9
  117. package/dist/Editor/plugins/withLinks.js +9 -10
  118. package/dist/Editor/plugins/withTable.js +1 -1
  119. package/dist/Editor/theme/ThemeList.js +50 -173
  120. package/dist/Editor/theme/index.js +149 -0
  121. package/dist/Editor/themeSettings/ActiveTheme.js +72 -0
  122. package/dist/Editor/themeSettings/buttons/index.js +290 -0
  123. package/dist/Editor/themeSettings/buttons/style.js +23 -0
  124. package/dist/Editor/themeSettings/colorTheme/index.js +309 -0
  125. package/dist/Editor/themeSettings/colorTheme/style.js +81 -0
  126. package/dist/Editor/themeSettings/fonts/PreviewElement.js +121 -0
  127. package/dist/Editor/themeSettings/fonts/index.js +240 -0
  128. package/dist/Editor/themeSettings/fonts/style.js +62 -0
  129. package/dist/Editor/themeSettings/icons.js +60 -0
  130. package/dist/Editor/themeSettings/index.js +361 -0
  131. package/dist/Editor/themeSettings/style.js +292 -0
  132. package/dist/Editor/themeSettingsAI/icons.js +96 -0
  133. package/dist/Editor/themeSettingsAI/index.js +355 -0
  134. package/dist/Editor/themeSettingsAI/saveTheme.js +202 -0
  135. package/dist/Editor/themeSettingsAI/style.js +324 -0
  136. package/dist/Editor/utils/SlateUtilityFunctions.js +171 -45
  137. package/dist/Editor/utils/button.js +1 -17
  138. package/dist/Editor/utils/draftToSlate.js +3 -2
  139. package/dist/Editor/utils/font.js +40 -37
  140. package/dist/Editor/utils/freegrid.js +2 -3
  141. package/dist/Editor/utils/helper.js +90 -19
  142. package/package.json +4 -4
@@ -0,0 +1,439 @@
1
+ import { Box, Button, Divider, 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 { ColorResetIcon, TextDefaultStyleIcon } from "../../common/iconListV2";
21
+ import { fontFamilyMap } from "../../utils/font";
22
+ import { jsx as _jsx } from "react/jsx-runtime";
23
+ import { jsxs as _jsxs } from "react/jsx-runtime";
24
+ import { Fragment as _Fragment } from "react/jsx-runtime";
25
+ function getFontStyleProps(settings = {}, format) {
26
+ const {
27
+ fontWeight,
28
+ fontStyle
29
+ } = settings;
30
+ let isActive;
31
+ let onClick;
32
+ switch (format) {
33
+ case "bold":
34
+ isActive = fontWeight === "bold" || fontWeight === "700";
35
+ onClick = () => {
36
+ return {
37
+ fontWeight: isActive ? "normal" : "bold"
38
+ };
39
+ };
40
+ break;
41
+ case "italic":
42
+ isActive = fontStyle === "italic";
43
+ onClick = () => {
44
+ return {
45
+ fontStyle: isActive ? "unset" : "italic"
46
+ };
47
+ };
48
+ break;
49
+
50
+ // case "underline":
51
+ // isActive = textDecoration.includes("underline");
52
+ // onClick = () => {
53
+ // let otherTextDecoration = textDecoration?.includes("line-through")
54
+ // ? "line-through"
55
+ // : "";
56
+
57
+ // otherTextDecoration += isActive ? "" : " underline";
58
+
59
+ // return { textDecoration: otherTextDecoration };
60
+ // };
61
+ // break;
62
+ // case "strikethrough":
63
+ // isActive = textDecoration.includes("line-through");
64
+ // onClick = () => {
65
+ // let otherTextDecoration = textDecoration?.includes("underline")
66
+ // ? "underline"
67
+ // : "";
68
+
69
+ // otherTextDecoration += isActive ? "" : " line-through";
70
+
71
+ // return { textDecoration: otherTextDecoration };
72
+ // };
73
+ // break;
74
+
75
+ default:
76
+ isActive = false;
77
+ onClick = () => {};
78
+ break;
79
+ }
80
+ return {
81
+ isActive,
82
+ onClick
83
+ };
84
+ }
85
+ const allTools = toolbarGroups.flat();
86
+ function ThemeTextFormat(props) {
87
+ const {
88
+ settings,
89
+ updateSettings,
90
+ onSaveTextSettings,
91
+ onClose
92
+ } = props;
93
+ const {
94
+ theme,
95
+ fontFamilies
96
+ } = useEditorContext();
97
+ const classes = usePopupStyles(theme);
98
+ const pickerStyles = ColorPickerStyles(theme);
99
+ const fontStyle = allTools.filter(f => f.type === "mark" && f.themeEnabled);
100
+ const fontWeight = allTools.find(f => f.format === "fontWeight");
101
+ const fontFamilyVal = useMemo(() => {
102
+ const {
103
+ fontFamily = ""
104
+ } = settings;
105
+ let font = fontFamily.startsWith("var") ? getVariableValue(fontFamily) : fontFamily;
106
+ return font;
107
+ }, [settings]);
108
+ const fontWeightVal = useMemo(() => {
109
+ const {
110
+ options
111
+ } = fontWeight || {};
112
+ const selected = options?.find(o => o.value === settings?.fontWeight || o.numVal === settings?.fontWeight);
113
+ return selected?.value;
114
+ }, [settings?.fontWeight]);
115
+ return /*#__PURE__*/_jsxs(Box, {
116
+ sx: classes.textFormatContainer,
117
+ children: [/*#__PURE__*/_jsxs(Grid, {
118
+ container: true,
119
+ sx: classes.textFormatWrapper,
120
+ children: [/*#__PURE__*/_jsxs(Grid, {
121
+ item: true,
122
+ xs: 12,
123
+ children: [/*#__PURE__*/_jsxs(Grid, {
124
+ container: true,
125
+ justifyContent: "space-between",
126
+ alignItems: "center",
127
+ children: [/*#__PURE__*/_jsx(Grid, {
128
+ item: true,
129
+ children: /*#__PURE__*/_jsx(Typography, {
130
+ variant: "body1",
131
+ color: "primary",
132
+ sx: classes.typoLabel,
133
+ children: "Font Family"
134
+ })
135
+ }), /*#__PURE__*/_jsx(Grid, {
136
+ item: true,
137
+ children: /*#__PURE__*/_jsx(Button, {
138
+ sx: classes.defaultBtn1,
139
+ startIcon: /*#__PURE__*/_jsx(TextDefaultStyleIcon, {}),
140
+ onClick: () => updateSettings({
141
+ fontFamily: Object.values(fontFamilyMap)[0]
142
+ }),
143
+ className: "npr-0",
144
+ children: "Default Text"
145
+ })
146
+ })]
147
+ }), /*#__PURE__*/_jsx(Grid, {
148
+ item: true,
149
+ xs: 12,
150
+ sx: classes.textFormatField,
151
+ children: /*#__PURE__*/_jsx(FontFamilyAutocomplete, {
152
+ editor: {},
153
+ format: "fontFamily",
154
+ options: fontFamilies?.options,
155
+ width: "100%",
156
+ onChange: updateSettings,
157
+ val: fontFamilyVal || defaultFonts[0],
158
+ webFont: true
159
+ })
160
+ })]
161
+ }), /*#__PURE__*/_jsxs(Grid, {
162
+ container: true,
163
+ spacing: 2,
164
+ children: [/*#__PURE__*/_jsxs(Grid, {
165
+ item: true,
166
+ xs: 6,
167
+ children: [/*#__PURE__*/_jsx(Typography, {
168
+ variant: "body1",
169
+ color: "primary",
170
+ sx: classes.typoLabel,
171
+ children: "Font Weight"
172
+ }), /*#__PURE__*/_jsx(Grid, {
173
+ item: true,
174
+ xs: 12,
175
+ sx: classes.textFormatField,
176
+ children: /*#__PURE__*/_jsx(CustomSelect, {
177
+ options: fontWeight?.options || [],
178
+ classes: classes,
179
+ onChange: e => {
180
+ updateSettings({
181
+ fontWeight: e.target.value
182
+ });
183
+ },
184
+ value: fontWeightVal
185
+ })
186
+ })]
187
+ }), /*#__PURE__*/_jsxs(Grid, {
188
+ item: true,
189
+ xs: 6,
190
+ children: [/*#__PURE__*/_jsx(Typography, {
191
+ variant: "body1",
192
+ color: "primary",
193
+ sx: classes.typoLabel,
194
+ children: "Font Size"
195
+ }), /*#__PURE__*/_jsx(Grid, {
196
+ item: true,
197
+ xs: 12,
198
+ sx: classes.textFormatCG,
199
+ children: /*#__PURE__*/_jsx(TextSize, {
200
+ classes: classes,
201
+ value: settings?.fontSize || 16,
202
+ onChange: fontSize => updateSettings({
203
+ fontSize
204
+ }),
205
+ fullWidth: true
206
+ })
207
+ })]
208
+ })]
209
+ }), /*#__PURE__*/_jsx(Grid, {
210
+ item: true,
211
+ xs: 12,
212
+ sx: classes.dividerGrid,
213
+ children: /*#__PURE__*/_jsx(Divider, {})
214
+ }), /*#__PURE__*/_jsxs(Grid, {
215
+ item: true,
216
+ xs: 12,
217
+ children: [/*#__PURE__*/_jsxs(Grid, {
218
+ container: true,
219
+ justifyContent: "space-between",
220
+ alignItems: "center",
221
+ children: [/*#__PURE__*/_jsx(Grid, {
222
+ item: true,
223
+ children: /*#__PURE__*/_jsx(Typography, {
224
+ variant: "body1",
225
+ color: "primary",
226
+ sx: classes.typoLabel,
227
+ children: "Text Color"
228
+ })
229
+ }), /*#__PURE__*/_jsx(Grid, {
230
+ item: true,
231
+ children: /*#__PURE__*/_jsx(Button, {
232
+ sx: classes.defaultBtn1,
233
+ startIcon: /*#__PURE__*/_jsx(ColorResetIcon, {}),
234
+ onClick: () => updateSettings({
235
+ color: "#ddd"
236
+ }),
237
+ children: "Default Color"
238
+ })
239
+ })]
240
+ }), /*#__PURE__*/_jsx(Grid, {
241
+ sx: classes.textFormatColorWrpr,
242
+ children: /*#__PURE__*/_jsx(ColorPicker, {
243
+ classes: classes,
244
+ pickerStyles: pickerStyles,
245
+ onChange: color => updateSettings({
246
+ color
247
+ }),
248
+ color: settings?.color,
249
+ disableEditTheme: true
250
+ })
251
+ })]
252
+ }), /*#__PURE__*/_jsx(Grid, {
253
+ item: true,
254
+ xs: 12,
255
+ sx: classes.dividerGrid,
256
+ children: /*#__PURE__*/_jsx(Divider, {})
257
+ }), /*#__PURE__*/_jsxs(Grid, {
258
+ item: true,
259
+ xs: 12,
260
+ children: [/*#__PURE__*/_jsx(Typography, {
261
+ variant: "body1",
262
+ color: "primary",
263
+ sx: classes.typoLabel,
264
+ children: "Typography"
265
+ }), /*#__PURE__*/_jsx(Grid, {
266
+ item: true,
267
+ xs: 12,
268
+ className: "typo-icons",
269
+ sx: classes.evenSpace,
270
+ children: fontStyle?.map((m, i) => {
271
+ const {
272
+ isActive,
273
+ onClick
274
+ } = getFontStyleProps(settings, m.format) || {};
275
+ return /*#__PURE__*/_jsx(CommonButton, {
276
+ active: isActive,
277
+ onClick: () => {
278
+ const style = onClick();
279
+ updateSettings(style);
280
+ },
281
+ children: /*#__PURE__*/_jsx(Icon, {
282
+ icon: m.format
283
+ })
284
+ }, i);
285
+ })
286
+ })]
287
+ })]
288
+ }), /*#__PURE__*/_jsxs("div", {
289
+ className: "saveThemeBtnsWrapper",
290
+ children: [/*#__PURE__*/_jsx(Button, {
291
+ onClick: onClose,
292
+ className: "closeBtn",
293
+ style: {
294
+ background: "none"
295
+ },
296
+ children: "Cancel"
297
+ }), /*#__PURE__*/_jsx(Button, {
298
+ onClick: onSaveTextSettings,
299
+ className: "confirmBtn",
300
+ children: "Save"
301
+ })]
302
+ })]
303
+ });
304
+ }
305
+ export default ThemeTextFormat;
306
+ function TextSize(props) {
307
+ const {
308
+ classes,
309
+ value: val,
310
+ onChange,
311
+ fullWidth
312
+ } = props;
313
+ const [size] = useWindowResize();
314
+ const value = getBreakPointsValue(val, size?.device);
315
+ const updateMarkData = newVal => {
316
+ let upData = {
317
+ ...getBreakPointsValue(val),
318
+ [size?.device]: `${newVal}px`
319
+ };
320
+
321
+ // if desktop update to all other devices
322
+ // to avoid default normal size
323
+ if (size?.device === "lg") {
324
+ upData = BREAKPOINTS_DEVICES.reduce((a, b) => {
325
+ a[b] = `${newVal}px`;
326
+ return a;
327
+ }, {});
328
+ }
329
+ onChange(upData);
330
+ };
331
+ const onChangeSize = e => {
332
+ let inc = parseInt(e.target.value) || 8;
333
+ inc = inc > 200 ? 200 : inc;
334
+ updateMarkData(inc || 8);
335
+ };
336
+ const getSizeVal = () => {
337
+ try {
338
+ return parseInt(value);
339
+ } catch (err) {
340
+ return "";
341
+ }
342
+ };
343
+ const combinedOldVal = getSizeVal();
344
+ const onIncreaseSize = () => {
345
+ let inc = (combinedOldVal || 0) + 1;
346
+ inc = inc > 200 ? 200 : inc;
347
+ updateMarkData(inc);
348
+ };
349
+ const onDecreaseSize = () => {
350
+ const newVal = combinedOldVal - 1 < 0 ? 0 : combinedOldVal - 1;
351
+ updateMarkData(newVal);
352
+ };
353
+ return /*#__PURE__*/_jsx(TextField, {
354
+ sx: classes?.textSize,
355
+ value: combinedOldVal,
356
+ onChange: onChangeSize,
357
+ size: "small",
358
+ inputProps: {
359
+ style: {
360
+ width: fullWidth ? "100%" : "30px",
361
+ textAlign: "center",
362
+ height: "19px",
363
+ fontSize: "14px"
364
+ }
365
+ },
366
+ fullWidth: fullWidth,
367
+ InputProps: {
368
+ style: {
369
+ borderRadius: "8px"
370
+ },
371
+ endAdornment: /*#__PURE__*/_jsxs("div", {
372
+ className: "textFontArrows",
373
+ children: [/*#__PURE__*/_jsx(IconButton, {
374
+ onClick: onIncreaseSize,
375
+ size: "small",
376
+ children: /*#__PURE__*/_jsx(TextPlusIcon, {})
377
+ }), /*#__PURE__*/_jsx(IconButton, {
378
+ onClick: onDecreaseSize,
379
+ size: "small",
380
+ children: /*#__PURE__*/_jsx(TextMinusIcon, {})
381
+ })]
382
+ })
383
+ }
384
+ });
385
+ }
386
+ function ColorPicker(props) {
387
+ const {
388
+ classes,
389
+ pickerStyles,
390
+ onChange,
391
+ color,
392
+ disableEditTheme
393
+ } = props;
394
+ const [anchorEl, setAnchorEl] = useState(null);
395
+ const open = Boolean(anchorEl);
396
+ const handleClose = () => {
397
+ setAnchorEl(null);
398
+ };
399
+ return /*#__PURE__*/_jsxs(_Fragment, {
400
+ children: [/*#__PURE__*/_jsx(Tooltip, {
401
+ title: "",
402
+ arrow: true,
403
+ children: /*#__PURE__*/_jsx(IconButton, {
404
+ sx: pickerStyles.colorPickerIcon,
405
+ onClick: e => {
406
+ setAnchorEl(e.currentTarget);
407
+ },
408
+ children: /*#__PURE__*/_jsx("img", {
409
+ src: colorWheel,
410
+ alt: "color wheel"
411
+ })
412
+ })
413
+ }), /*#__PURE__*/_jsx(ColorButtons, {
414
+ classes: pickerStyles,
415
+ onSelect: onChange,
416
+ activeColor: color,
417
+ disableEditTheme: disableEditTheme
418
+ }), /*#__PURE__*/_jsx(Popover, {
419
+ open: open,
420
+ anchorEl: anchorEl,
421
+ onClose: handleClose,
422
+ anchorOrigin: {
423
+ vertical: "top",
424
+ horizontal: "center"
425
+ },
426
+ transformOrigin: {
427
+ vertical: "bottom",
428
+ horizontal: "top"
429
+ },
430
+ sx: classes.colorPickerPopup,
431
+ children: /*#__PURE__*/_jsx(CustomColorPicker, {
432
+ gradient: true,
433
+ onChange: onChange,
434
+ color: color,
435
+ disableEditTheme: disableEditTheme
436
+ })
437
+ })]
438
+ });
439
+ }
@@ -95,9 +95,9 @@ const PopupTool = props => {
95
95
  const isFreeGridEnabled = enable === 1 && isFreeGridElement;
96
96
  if (!selection || Range.isCollapsed(selection) || Editor.string(editor, selection) === "" || isFreeGridEnabled) {
97
97
  setAnchorEl(null);
98
+ hideSlateSelection(); // removes slate selection background, when there is no selection
98
99
  } else {
99
100
  updateAnchorEl();
100
- hideSlateSelection(); // removes slate selection background, when there is no selection
101
101
  }
102
102
  }, [selection, event, selectedElement?.enable]);
103
103
  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",
@@ -0,0 +1,18 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ function BackIcon() {
3
+ return /*#__PURE__*/_jsx("svg", {
4
+ width: "8",
5
+ height: "12",
6
+ viewBox: "0 0 6 10",
7
+ fill: "none",
8
+ xmlns: "http://www.w3.org/2000/svg",
9
+ children: /*#__PURE__*/_jsx("path", {
10
+ d: "M4.75 1.5L1.25 5L4.75 8.5",
11
+ stroke: "#94A3B8",
12
+ strokeWidth: "1.5",
13
+ strokeLinecap: "round",
14
+ strokeLinejoin: "round"
15
+ })
16
+ });
17
+ }
18
+ export default BackIcon;
@@ -0,0 +1,31 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { jsxs as _jsxs } from "react/jsx-runtime";
3
+ const ClearAllIcon = () => /*#__PURE__*/_jsxs("svg", {
4
+ xmlns: "http://www.w3.org/2000/svg",
5
+ width: "20",
6
+ height: "20",
7
+ viewBox: "0 0 20 20",
8
+ children: [/*#__PURE__*/_jsx("rect", {
9
+ x: "4",
10
+ y: "5",
11
+ width: "12",
12
+ height: "2",
13
+ rx: "1",
14
+ fill: "currentColor"
15
+ }), /*#__PURE__*/_jsx("rect", {
16
+ x: "4",
17
+ y: "9",
18
+ width: "10",
19
+ height: "2",
20
+ rx: "1",
21
+ fill: "currentColor"
22
+ }), /*#__PURE__*/_jsx("rect", {
23
+ x: "4",
24
+ y: "13",
25
+ width: "12",
26
+ height: "2",
27
+ rx: "1",
28
+ fill: "currentColor"
29
+ })]
30
+ });
31
+ export default ClearAllIcon;
@@ -0,0 +1,23 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { jsxs as _jsxs } from "react/jsx-runtime";
3
+ const ResetIconNew = () => {
4
+ return /*#__PURE__*/_jsxs("svg", {
5
+ width: "17",
6
+ height: "17",
7
+ viewBox: "0 0 17 17",
8
+ fill: "none",
9
+ xmlns: "http://www.w3.org/2000/svg",
10
+ children: [/*#__PURE__*/_jsx("circle", {
11
+ cx: "8.10105",
12
+ cy: "8.10234",
13
+ r: "8",
14
+ transform: "rotate(-89.2717 8.10105 8.10234)",
15
+ fill: "#2563EB",
16
+ fillOpacity: "0.16"
17
+ }), /*#__PURE__*/_jsx("path", {
18
+ d: "M12.7169 8.22222V8.22222C12.7168 8.2323 12.7289 8.23752 12.7361 8.2305L13.3823 7.6035C13.6597 7.33434 14.0843 7.33974 14.3547 7.61586C14.6252 7.89199 14.6198 8.31458 14.3424 8.58375L12.6992 10.1595C12.3035 10.5389 11.6762 10.5291 11.2926 10.1375L9.71318 8.5249C9.57796 8.38683 9.51173 8.20874 9.51381 8.04516C9.51606 7.86794 9.58679 7.69159 9.72531 7.57064C10.0027 7.30148 10.4273 7.30688 10.6977 7.583L11.3182 8.21649C11.3288 8.22729 11.3471 8.21993 11.3473 8.20481V8.20481C11.374 6.10545 9.67017 4.36586 7.56099 4.33905C5.45182 4.31224 3.70429 6.00795 3.6776 8.10731C3.65091 10.2067 5.35477 11.9463 7.46394 11.9731C7.84743 11.9779 8.14493 12.2817 8.14007 12.6634C8.13522 13.0451 7.8301 13.3412 7.44661 13.3363C4.57046 13.2997 2.27161 10.9527 2.30801 8.0899C2.3444 5.22714 4.70217 2.93927 7.57832 2.97583C10.4408 3.01222 12.7533 5.35946 12.7169 8.22222Z",
19
+ fill: "#2563EB"
20
+ })]
21
+ });
22
+ };
23
+ export default ResetIconNew;