@flozy/editor 7.0.8 → 7.0.9

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 (114) hide show
  1. package/dist/Editor/ChatEditor.js +7 -7
  2. package/dist/Editor/CommonEditor.js +25 -74
  3. package/dist/Editor/DialogWrapper.js +25 -31
  4. package/dist/Editor/Editor.css +16 -32
  5. package/dist/Editor/Elements/AppHeader/AppHeader.js +3 -3
  6. package/dist/Editor/Elements/Button/EditorButton.js +9 -25
  7. package/dist/Editor/Elements/Color Picker/ColorButtons.js +12 -57
  8. package/dist/Editor/Elements/Color Picker/ColorPicker.css +1 -25
  9. package/dist/Editor/Elements/Color Picker/ColorPicker.js +4 -4
  10. package/dist/Editor/Elements/Color Picker/Styles.js +1 -1
  11. package/dist/Editor/Elements/DataView/Providers/DataViewProvider.js +1 -1
  12. package/dist/Editor/Elements/Embed/Image.js +2 -2
  13. package/dist/Editor/Elements/FreeGrid/FreeGrid.js +14 -0
  14. package/dist/Editor/Elements/FreeGrid/styles.js +0 -3
  15. package/dist/Editor/Elements/Grid/GridItem.js +3 -2
  16. package/dist/Editor/Elements/Link/Link.js +43 -70
  17. package/dist/Editor/Elements/SimpleText/index.js +12 -7
  18. package/dist/Editor/Elements/SimpleText/style.js +2 -2
  19. package/dist/Editor/Elements/Table/Table.js +12 -12
  20. package/dist/Editor/Elements/Title/title.js +1 -13
  21. package/dist/Editor/Elements/Variables/Style.js +2 -28
  22. package/dist/Editor/Elements/Variables/VariableButton.js +4 -17
  23. package/dist/Editor/Styles/EditorStyles.js +291 -287
  24. package/dist/Editor/Toolbar/FormatTools/Dropdown.js +3 -27
  25. package/dist/Editor/Toolbar/FormatTools/FontFamilyAutocomplete.js +3 -4
  26. package/dist/Editor/Toolbar/FormatTools/MarkButton.js +2 -2
  27. package/dist/Editor/Toolbar/FormatTools/TextSize.js +15 -7
  28. package/dist/Editor/Toolbar/PopupTool/AddTemplates.js +8 -9
  29. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +13 -6
  30. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +85 -210
  31. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +1 -2
  32. package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +12 -16
  33. package/dist/Editor/Toolbar/PopupTool/TextFormat.js +9 -56
  34. package/dist/Editor/Toolbar/PopupTool/index.js +37 -29
  35. package/dist/Editor/Toolbar/toolbarGroups.js +6 -48
  36. package/dist/Editor/common/ColorPickerButton.js +9 -35
  37. package/dist/Editor/common/DnD/DragHandleButton.js +1 -1
  38. package/dist/Editor/common/DnD/Draggable.js +1 -0
  39. package/dist/Editor/common/FontLoader/FontList.js +11 -3
  40. package/dist/Editor/common/FontLoader/FontLoader.js +42 -74
  41. package/dist/Editor/common/Icon.js +0 -28
  42. package/dist/Editor/common/ImageSelector/Options/Upload.js +1 -1
  43. package/dist/Editor/common/ImageSelector/Styles.js +9 -3
  44. package/dist/Editor/common/ImageSelector/UploadStyles.js +2 -1
  45. package/dist/Editor/common/MentionsPopup/Styles.js +9 -3
  46. package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Settings.js +1 -2
  47. package/dist/Editor/common/RnD/ElementSettings/Settings/AppHeaderSettings.js +2 -3
  48. package/dist/Editor/common/RnD/ElementSettings/Settings/BoxSettings.js +2 -3
  49. package/dist/Editor/common/RnD/ElementSettings/Settings/ButtonSettings.js +2 -3
  50. package/dist/Editor/common/RnD/ElementSettings/Settings/CodeSettings.js +2 -3
  51. package/dist/Editor/common/RnD/ElementSettings/Settings/FormSettings.js +2 -4
  52. package/dist/Editor/common/RnD/ElementSettings/Settings/ImageSettings.js +2 -3
  53. package/dist/Editor/common/RnD/ElementSettings/Settings/TableSettings.js +2 -3
  54. package/dist/Editor/common/RnD/ElementSettings/Settings/VideoSettings.js +2 -3
  55. package/dist/Editor/common/RnD/ElementSettings/styles.js +1 -0
  56. package/dist/Editor/common/RnD/SwitchViewport/SwitchViewport.js +2 -8
  57. package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +3 -6
  58. package/dist/Editor/common/RnD/Utils/gridDropItem.js +4 -5
  59. package/dist/Editor/common/RnD/Utils/index.js +0 -40
  60. package/dist/Editor/common/RnD/index.js +3 -23
  61. package/dist/Editor/common/Section/index.js +89 -60
  62. package/dist/Editor/common/Shorthands/elements.js +0 -54
  63. package/dist/Editor/common/StyleBuilder/buttonStyle.js +2 -4
  64. package/dist/Editor/common/StyleBuilder/fieldTypes/backgroundImage.js +0 -5
  65. package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +2 -12
  66. package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +7 -15
  67. package/dist/Editor/common/StyleBuilder/fieldTypes/card.js +2 -10
  68. package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +11 -35
  69. package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +4 -13
  70. package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +7 -15
  71. package/dist/Editor/common/Uploader.js +0 -8
  72. package/dist/Editor/commonStyle.js +65 -55
  73. package/dist/Editor/helper/deserialize/index.js +1 -1
  74. package/dist/Editor/helper/index.js +2 -2
  75. package/dist/Editor/helper/theme.js +2 -200
  76. package/dist/Editor/hooks/useEditorScroll.js +1 -1
  77. package/dist/Editor/hooks/useMouseMove.js +3 -9
  78. package/dist/Editor/plugins/withEmbeds.js +1 -1
  79. package/dist/Editor/plugins/withHTML.js +9 -5
  80. package/dist/Editor/plugins/withLayout.js +1 -1
  81. package/dist/Editor/plugins/withTable.js +1 -1
  82. package/dist/Editor/theme/ThemeList.js +173 -50
  83. package/dist/Editor/utils/SlateUtilityFunctions.js +49 -157
  84. package/dist/Editor/utils/button.js +14 -0
  85. package/dist/Editor/utils/draftToSlate.js +2 -3
  86. package/dist/Editor/utils/font.js +37 -40
  87. package/dist/Editor/utils/helper.js +20 -48
  88. package/dist/Editor/utils/link.js +1 -1
  89. package/package.json +2 -5
  90. package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +0 -438
  91. package/dist/Editor/assets/svg/ThemeIcons.js +0 -291
  92. package/dist/Editor/common/CustomColorPicker/index.js +0 -106
  93. package/dist/Editor/common/CustomColorPicker/style.js +0 -53
  94. package/dist/Editor/common/CustomDialog/index.js +0 -94
  95. package/dist/Editor/common/CustomDialog/style.js +0 -67
  96. package/dist/Editor/common/CustomSelect.js +0 -33
  97. package/dist/Editor/common/RnD/Theme/MainThemeProvider.js +0 -17
  98. package/dist/Editor/hooks/useEditorTheme.js +0 -153
  99. package/dist/Editor/theme/index.js +0 -144
  100. package/dist/Editor/themeSettings/ActiveTheme.js +0 -72
  101. package/dist/Editor/themeSettings/buttons/index.js +0 -283
  102. package/dist/Editor/themeSettings/buttons/style.js +0 -21
  103. package/dist/Editor/themeSettings/colorTheme/index.js +0 -292
  104. package/dist/Editor/themeSettings/colorTheme/style.js +0 -77
  105. package/dist/Editor/themeSettings/fonts/PreviewElement.js +0 -121
  106. package/dist/Editor/themeSettings/fonts/index.js +0 -220
  107. package/dist/Editor/themeSettings/fonts/style.js +0 -44
  108. package/dist/Editor/themeSettings/icons.js +0 -60
  109. package/dist/Editor/themeSettings/index.js +0 -320
  110. package/dist/Editor/themeSettings/style.js +0 -152
  111. package/dist/Editor/themeSettingsAI/icons.js +0 -96
  112. package/dist/Editor/themeSettingsAI/index.js +0 -356
  113. package/dist/Editor/themeSettingsAI/saveTheme.js +0 -197
  114. package/dist/Editor/themeSettingsAI/style.js +0 -250
@@ -10,8 +10,6 @@ import { AllColors } from "../../Elements/Color Picker/ColorButtons";
10
10
  import { fontFamilyMap } from "../../utils/font";
11
11
  import { getBorderColor } from "../../utils/helper";
12
12
  import SelectTypography from "./MiniTextFormat/SelectTypography";
13
- import { isTextCustomized, saveToTheme } from "../../helper/theme";
14
- import { useEditorTheme } from "../../hooks/useEditorTheme";
15
13
  import SelectSuperSubscript from "./MiniTextFormat/SelectSuperSubscript";
16
14
  import { ColorResetIcon, TextDefaultStyleIcon } from "../../common/iconListV2";
17
15
  import FontFamilyAutocomplete from "../FormatTools/FontFamilyAutocomplete";
@@ -41,7 +39,7 @@ const TextFormat = props => {
41
39
  const pageSettingLine = pageSt?.pageProps?.lineHeight;
42
40
  const {
43
41
  fontFamilies,
44
- theme: appTheme
42
+ theme
45
43
  } = useEditorContext();
46
44
  const {
47
45
  activeBreakPoint
@@ -63,12 +61,7 @@ const TextFormat = props => {
63
61
  color: "",
64
62
  bgColor: ""
65
63
  };
66
- const {
67
- theme,
68
- updateTheme
69
- } = useEditorTheme();
70
- const customized = isTextCustomized(editor);
71
- let lineSpacingValue = activeMark(editor, "lineHeight");
64
+ let lineSpacingValue = activeMark(editor, 'lineHeight');
72
65
  lineSpacingValue = lineSpacingValue?.[breakpoint] !== undefined ? lineSpacingValue : pageSettingLine;
73
66
  const handleColorPicker = type => e => {
74
67
  setType(type);
@@ -122,50 +115,6 @@ const TextFormat = props => {
122
115
  sx: classes.textFormatWrapper,
123
116
  className: "text-formatter-popup",
124
117
  children: [/*#__PURE__*/_jsxs(Grid, {
125
- item: true,
126
- xs: 12,
127
- children: [/*#__PURE__*/_jsxs(Grid, {
128
- container: true,
129
- justifyContent: "space-between",
130
- alignItems: "center",
131
- children: [/*#__PURE__*/_jsx(Grid, {
132
- item: true,
133
- children: /*#__PURE__*/_jsx(Typography, {
134
- variant: "body1",
135
- color: "primary",
136
- sx: classes.typoLabel,
137
- children: "Style"
138
- })
139
- }), /*#__PURE__*/_jsx(Grid, {
140
- item: true,
141
- children: theme?.id ? /*#__PURE__*/_jsx(Button, {
142
- sx: classes.defaultBtn,
143
- onClick: () => {
144
- const {
145
- field,
146
- theme
147
- } = saveToTheme(editor) || {};
148
- updateTheme(theme, {
149
- action: "ELEMENT_PROPS_CHANGE",
150
- fieldName: field
151
- });
152
- },
153
- disabled: !customized,
154
- children: "Save to theme"
155
- }) : null
156
- })]
157
- }), /*#__PURE__*/_jsx(Grid, {
158
- item: true,
159
- xs: 12,
160
- sx: classes.textFormatField,
161
- children: /*#__PURE__*/_jsx(SelectTypography, {
162
- editor: editor,
163
- classes: classes,
164
- closeMainPopup: () => {},
165
- type: "fullWidth"
166
- })
167
- })]
168
- }), /*#__PURE__*/_jsxs(Grid, {
169
118
  item: true,
170
119
  xs: 12,
171
120
  children: [/*#__PURE__*/_jsxs(Grid, {
@@ -318,7 +267,7 @@ const TextFormat = props => {
318
267
  children: /*#__PURE__*/_jsx(Button, {
319
268
  sx: classes.defaultBtn2,
320
269
  startIcon: /*#__PURE__*/_jsx(ColorResetIcon, {
321
- stroke: appTheme?.palette?.type === "dark" ? "#505359" : "#A2B0B9"
270
+ stroke: theme?.palette?.type === "dark" ? "#505359" : "#A2B0B9"
322
271
  }),
323
272
  onClick: handleDefault({
324
273
  format: "bgColor"
@@ -406,7 +355,11 @@ const TextFormat = props => {
406
355
  xs: 12,
407
356
  className: "typo-icons",
408
357
  sx: classes.evenSpace,
409
- children: [fontStyle?.map((m, i) => {
358
+ children: [/*#__PURE__*/_jsx(SelectTypography, {
359
+ classes: classes,
360
+ editor: editor,
361
+ closeMainPopup: closeMainPopup || onClose
362
+ }), fontStyle?.map((m, i) => {
410
363
  return /*#__PURE__*/_jsx(MarkButton, {
411
364
  editor: editor,
412
365
  ...m
@@ -443,7 +396,7 @@ const TextFormat = props => {
443
396
  value: lineSpacingValue,
444
397
  onChange: handleLineSpacing,
445
398
  data: {
446
- key: "lineHeight"
399
+ key: 'lineHeight'
447
400
  }
448
401
  })
449
402
  })]
@@ -1,5 +1,5 @@
1
- import React, { useEffect, useState } from "react";
2
- import { Popper, Paper, ClickAwayListener } from "@mui/material";
1
+ import React, { useCallback, useEffect, useState } from "react";
2
+ import { Popper, Fade, Paper, ClickAwayListener } from "@mui/material";
3
3
  import { Editor, Range, Transforms } from "slate";
4
4
  import { ReactEditor, useSlate } from "slate-react";
5
5
  import useDrag from "../../hooks/useDrag";
@@ -21,8 +21,7 @@ const PopupTool = props => {
21
21
  const classes = usePopupStyles(theme);
22
22
  const {
23
23
  setPopupType,
24
- openAI,
25
- selectedElement
24
+ openAI
26
25
  } = useEditorContext();
27
26
  const [anchorEl, setAnchorEl] = useState(null);
28
27
  const [open, setOpen] = useState(false);
@@ -33,10 +32,13 @@ const PopupTool = props => {
33
32
  const [event] = useDrag(anchorEl);
34
33
  const id = open ? "popup-edit-tool" : "";
35
34
  const [size] = useWindowResize();
36
- const updateAnchorEl = isScroll => {
35
+ const {
36
+ selectedElement
37
+ } = useEditorContext();
38
+ const updateAnchorEl = useCallback(() => {
37
39
  try {
38
40
  const isHavingSelection = selection && !Range.isCollapsed(selection);
39
- if (isHavingSelection && event === "end") {
41
+ if (isHavingSelection) {
40
42
  const domRange = ReactEditor.toDOMRange(editor, editor.selection);
41
43
  const editorContainer = document.querySelector("#slate-wrapper-scroll-container")?.getBoundingClientRect();
42
44
  const rect = domRange.getBoundingClientRect();
@@ -45,21 +47,16 @@ const PopupTool = props => {
45
47
  rect.y = -500; // hide the popper
46
48
  }
47
49
 
48
- // Create a dummy anchor element to match Popper's requirements
49
- const anchor = document.createElement("div");
50
- anchor.style.position = "absolute";
51
- anchor.style.top = `${rect.top + window.scrollY}px`;
52
- anchor.style.left = `${rect.left + window.scrollX}px`;
53
- document.body.appendChild(anchor);
54
- if (!anchorEl || isScroll === "scroll") {
55
- setAnchorEl(anchor);
56
- setOpen(true);
57
- }
50
+ setAnchorEl({
51
+ clientWidth: rect.width,
52
+ clientHeight: rect.height,
53
+ getBoundingClientRect: () => rect
54
+ });
58
55
  }
59
56
  } catch (err) {
60
57
  console.log(err);
61
58
  }
62
- };
59
+ }, [selection]);
63
60
  useEditorScroll(editorWrapper, updateAnchorEl);
64
61
  useEffect(() => {
65
62
  const userStoppedSelection = size?.device === "xs" ? true : event === "end"; // for mobile, when user starts the selection, we are gonna show the popup tool
@@ -83,13 +80,18 @@ const PopupTool = props => {
83
80
  }
84
81
  }, [event, anchorEl]);
85
82
  useEffect(() => {
86
- if (!selection || Range.isCollapsed(selection) || Editor.string(editor, selection) === "" || selectedElement?.enable === 1) {
83
+ if (!selection || Range.isCollapsed(selection) || Editor.string(editor, selection) === "") {
87
84
  setAnchorEl(null);
88
85
  } else {
89
86
  updateAnchorEl();
90
87
  hideSlateSelection(); // removes slate selection background, when there is no selection
91
88
  }
92
- }, [selection, event, selectedElement?.enable]);
89
+ }, [selection]);
90
+ useEffect(() => {
91
+ if (selectedElement?.enable === 1) {
92
+ setAnchorEl(null);
93
+ }
94
+ }, [selection, selectedElement?.path, selectedElement?.enable]);
93
95
  const handleClose = () => {
94
96
  // setAnchorEl(null);
95
97
  setOpen(false);
@@ -115,18 +117,24 @@ const PopupTool = props => {
115
117
  id: id,
116
118
  open: open,
117
119
  anchorEl: anchorEl,
120
+ transition: true,
118
121
  sx: classes.popupWrapper,
119
122
  placement: "top-start",
120
- children: /*#__PURE__*/_jsx(Paper, {
121
- style: {
122
- borderRadius: "6px",
123
- border: "1px solid #8360FD"
124
- },
125
- children: /*#__PURE__*/_jsx(MiniTextFormat, {
126
- editor: editor,
127
- classes: classes,
128
- closeMainPopup: handleClose,
129
- customProps: customProps
123
+ children: ({
124
+ TransitionProps
125
+ }) => /*#__PURE__*/_jsx(Fade, {
126
+ ...TransitionProps,
127
+ children: /*#__PURE__*/_jsx(Paper, {
128
+ style: {
129
+ borderRadius: "6px",
130
+ border: "1px solid #8360FD"
131
+ },
132
+ children: /*#__PURE__*/_jsx(MiniTextFormat, {
133
+ editor: editor,
134
+ classes: classes,
135
+ closeMainPopup: handleClose,
136
+ customProps: customProps
137
+ })
130
138
  })
131
139
  })
132
140
  })
@@ -28,20 +28,16 @@ export const toolbarGroups = [[{
28
28
  type: "dropdown",
29
29
  options: [{
30
30
  text: "Normal",
31
- value: "normal",
32
- numVal: "400"
31
+ value: "normal"
33
32
  }, {
34
33
  text: "Bold",
35
- value: "bold",
36
- numVal: "700"
34
+ value: "bold"
37
35
  }, {
38
36
  text: "Bolder",
39
- value: "bolder",
40
- numVal: "700"
37
+ value: "bolder"
41
38
  }, {
42
39
  text: "Lighter",
43
- value: "lighter",
44
- numVal: "100"
40
+ value: "lighter"
45
41
  }],
46
42
  icon: FormatBoldIcon,
47
43
  width: "100px"
@@ -50,8 +46,7 @@ export const toolbarGroups = [[{
50
46
  format: "bold",
51
47
  type: "mark",
52
48
  title: "Bold",
53
- basic: true,
54
- themeEnabled: true
49
+ basic: true
55
50
  }, {
56
51
  id: 5,
57
52
  format: "underline",
@@ -62,8 +57,7 @@ export const toolbarGroups = [[{
62
57
  format: "italic",
63
58
  type: "mark",
64
59
  title: "Italic",
65
- basic: true,
66
- themeEnabled: true
60
+ basic: true
67
61
  }, {
68
62
  id: 6,
69
63
  format: "strikethrough",
@@ -107,42 +101,6 @@ export const toolbarGroups = [[{
107
101
  type: "block",
108
102
  title: "H3",
109
103
  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"
146
104
  }, {
147
105
  id: 14,
148
106
  format: "doublequote",
@@ -1,8 +1,8 @@
1
1
  import React, { useMemo, useState } from "react";
2
2
  import { Grid, Button, Popover } from "@mui/material";
3
+ import ColorPickerTool from "react-gcolor-picker";
3
4
  import { colors } from "../Elements/Color Picker/defaultColors";
4
5
  import SwipeableDrawerComponent from "./SwipeableDrawer";
5
- import CustomColorPicker from "./CustomColorPicker";
6
6
  import { jsx as _jsx } from "react/jsx-runtime";
7
7
  import { jsxs as _jsxs } from "react/jsx-runtime";
8
8
  import { Fragment as _Fragment } from "react/jsx-runtime";
@@ -12,10 +12,7 @@ const ColorPickerToolComponent = ({
12
12
  onSave = () => {},
13
13
  recentColors = [],
14
14
  hideGradient,
15
- handleClose,
16
- closeDrawer,
17
- hideThemeColors,
18
- disableEditTheme
15
+ handleClose
19
16
  }) => {
20
17
  const [color, setColor] = useState(value);
21
18
  const handleSave = () => {
@@ -36,15 +33,11 @@ const ColorPickerToolComponent = ({
36
33
  item: true,
37
34
  xs: 12,
38
35
  children: [/*#__PURE__*/_jsx("div", {
39
- children: /*#__PURE__*/_jsx(CustomColorPicker, {
36
+ children: /*#__PURE__*/_jsx(ColorPickerTool, {
40
37
  gradient: hideGradient ? false : true,
41
- color: color,
38
+ value: color,
42
39
  onChange: handleColorChange,
43
- recentColors: recentColors,
44
- defaultColors: initialColors,
45
- closeDrawer: closeDrawer,
46
- hideThemeColors: hideThemeColors,
47
- disableEditTheme: disableEditTheme
40
+ defaultColors: initialColors
48
41
  })
49
42
  }), /*#__PURE__*/_jsxs("div", {
50
43
  style: {
@@ -55,9 +48,6 @@ const ColorPickerToolComponent = ({
55
48
  children: [/*#__PURE__*/_jsx(Button, {
56
49
  onClick: handleClose,
57
50
  className: "secondaryBtn",
58
- style: {
59
- background: "none"
60
- },
61
51
  children: "Cancel"
62
52
  }), /*#__PURE__*/_jsx(Button, {
63
53
  onClick: handleSave,
@@ -74,11 +64,7 @@ const ColorPickerButton = props => {
74
64
  defaultColors = [],
75
65
  classes = {},
76
66
  recentColors = [],
77
- hideGradient,
78
- children,
79
- handleClose: closeDrawer,
80
- hideThemeColors,
81
- disableEditTheme
67
+ hideGradient
82
68
  } = props;
83
69
  const [anchorEl, setAnchorEl] = useState(null);
84
70
  const open = Boolean(anchorEl);
@@ -90,13 +76,7 @@ const ColorPickerButton = props => {
90
76
  setAnchorEl(null);
91
77
  };
92
78
  return /*#__PURE__*/_jsxs(_Fragment, {
93
- children: [children ? /*#__PURE__*/_jsx("div", {
94
- onClick: handleColorPicker,
95
- style: {
96
- cursor: "pointer"
97
- },
98
- children: children
99
- }) : /*#__PURE__*/_jsx(Button, {
79
+ children: [/*#__PURE__*/_jsx(Button, {
100
80
  style: {
101
81
  background: value,
102
82
  height: "22px",
@@ -123,10 +103,7 @@ const ColorPickerButton = props => {
123
103
  onSave: onSave,
124
104
  recentColors: recentColors,
125
105
  hideGradient: hideGradient,
126
- handleClose: handleClose,
127
- closeDrawer: closeDrawer,
128
- hideThemeColors: hideThemeColors,
129
- disableEditTheme: disableEditTheme
106
+ handleClose: handleClose
130
107
  })
131
108
  })
132
109
  }) : /*#__PURE__*/_jsx(Popover, {
@@ -152,10 +129,7 @@ const ColorPickerButton = props => {
152
129
  onSave: onSave,
153
130
  recentColors: recentColors,
154
131
  hideGradient: hideGradient,
155
- handleClose: handleClose,
156
- closeDrawer: closeDrawer,
157
- hideThemeColors: hideThemeColors,
158
- disableEditTheme: disableEditTheme
132
+ handleClose: handleClose
159
133
  })
160
134
  })
161
135
  })]
@@ -7,7 +7,7 @@ import { useEditorContext } from "../../hooks/useMouseMove";
7
7
  import { Transforms } from "slate";
8
8
  import { jsx as _jsx } from "react/jsx-runtime";
9
9
  import { jsxs as _jsxs } from "react/jsx-runtime";
10
- const DRAGGABLE_TYPES = ["paragraph", "headingOne", "headingTwo", "headingThree", "headingFour", "headingFive", "headingSix", "paragraphOne", "paragraphTwo", "paragraphThree", "grid"];
10
+ const DRAGGABLE_TYPES = ["paragraph", "headingOne", "headingTwo", "headingThree", "grid"];
11
11
  const DragHandleStyle = fromPopper => {
12
12
  const handleDragStyle = fromPopper ? {
13
13
  position: "absolute",
@@ -1,6 +1,7 @@
1
1
  import React, { useEffect } from "react";
2
2
  import { useDraggable } from "@dnd-kit/core";
3
3
  import { Box } from "@mui/material";
4
+ import DragIndicatorIcon from "@mui/icons-material/DragIndicator";
4
5
  import { SectionDragIcon } from "../iconListV2";
5
6
  import { jsx as _jsx } from "react/jsx-runtime";
6
7
  const Draggable = props => {
@@ -1,3 +1,11 @@
1
- const otherFonts = ["PoppinsRegular", "PoppinsBold", "Qwitcher Grypen", "Bulgarian Garamond", "Redacted Script", "Herr Von Muellerhoff", "Dawning of a New Day", "Coming Soon", "Engagement", "Ingrid Darling", "La Belle Aurore", "Mea Culpa", "The Girl Next Door"];
2
- const mostUsedGoogleFonts = ["Roboto", "Poppins", "Lato", "Inter", "Nunito", "Ubuntu", "Oswald", "Rubik", "Roboto Slab", "PT Sans", "Work Sans", "Lora", "Mulish", "DM Sans", "Fira Sans", "Quicksand", "Barlow", "Manrope", "IBM Plex Sans", "PT Serif", "Libre Franklin", "Bebas Neue", "Cabin", "Titillium Web", "Heebo", "Noto Serif", "Jost", "Source Code Pro", "Josefin Sans", "Dosis", "Fira Sans Condensed", "Archivo", "Noto Serif JP", "Crimson Text", "Cairo", "Pacifico", "Red Hat Display", "Assistant", "Comfortaa", "Lexend", "Fjalla One", "Caveat", "Arvo", "Lobster", "Schibsted Grotesk", "EB Garamond", "Sora", "Kalam", "Onest", "Space Grotesk", "Outfit", "Plus Jakarta Sans"];
3
- export const googleFontList = [...mostUsedGoogleFonts, ...otherFonts];
1
+ export const defaultFonts = [
2
+ // "EB Garamond",
3
+ "Anton", "DM Serif Text", "Libre Baskerville", "Montserrat", "Open Sans", "Public Sans", "Raleway", "Space Mono", "Great Vibes", "Zeyada", "Allura", "Pinyon Script", "Dancing Script", "Gaegu", "Kite One", "Merriweather"];
4
+ export const otherFonts = ["PoppinsRegular", "PoppinsBold", "Monaco", "Qwitcher Grypen", "Bulgarian Garamond", "Redacted Script", "Herr Von Muellerhoff", "Dawning of a New Day", "Coming Soon", "Engagement", "Ingrid Darling", "La Belle Aurore", "Mea Culpa", "The Girl Next Door", "Helvetica", "Georgia", "Times New Roman", "Courier New", "Impact"];
5
+ export const googleFontList = ["Roboto", "Noto Sans JP", "Poppins", "Lato", "Inter", "Roboto Condensed", "Roboto Mono", "Oswald", "Noto Sans", "Nunito", "Nunito Sans", "Ubuntu", "Rubik", "Playfair Display", "Noto Sans KR", "Roboto Slab", "PT Sans", "Kanit", "Work Sans", "Lora", "DM Sans", "Mulish", "Quicksand", "Fira Sans", "Noto Sans TC", "Inconsolata", "Barlow", "Manrope", "IBM Plex Sans", "PT Serif", "Karla", "Titillium Web", "Heebo", "Noto Serif", "Nanum Gothic", "Noto Color Emoji", "Agdasima", "Bebas Neue", "Libre Franklin", "Mukta", "Outfit", "Josefin Sans", "Source Code Pro", "Jost", "Space Grotesk", "Hind Siliguri", "Arimo", "Cabin", "Barlow Condensed", "Dosis", "Fira Sans Condensed", "Bitter", "Archivo", "Figtree", "Noto Serif JP", "PT Sans Narrow", "Abel", "Noto Sans SC",
6
+ // "Source Sans 3",
7
+ "Hind",
8
+ // "Exo 2",
9
+ "Teko", "Oxygen", "Cairo", "Crimson Text", "Plus Jakarta Sans", "Overpass", "Pacifico", "Prompt", "Red Hat Display", "Varela Round", "Cormorant Garamond", "Assistant", "Comfortaa", "Lexend", "Signika Negative",
10
+ // "M PLUS Rounded 1c",
11
+ "Fjalla One", "Caveat", "IBM Plex Mono", "Arvo", "Lobster", "Schibsted Grotesk", "Chakra Petch", "Maven Pro", "Sora", "Kalam", "Onest", "Space Grotesk", "Outfit", 'Titillium Web', ...defaultFonts];
@@ -1,11 +1,7 @@
1
- import { useEffect, useState } from "react";
1
+ import { useEffect } from "react";
2
2
  import WebFont from "webfontloader";
3
3
  import { useEditorContext } from "../../hooks/useMouseMove";
4
- import { googleFontList } from "./FontList";
5
- import CircularProgress from "@mui/material/CircularProgress";
6
- import Box from "@mui/material/Box";
7
- import { jsx as _jsx } from "react/jsx-runtime";
8
- import { Fragment as _Fragment } from "react/jsx-runtime";
4
+ import { defaultFonts, googleFontList, otherFonts } from "./FontList";
9
5
  const FontLoader = props => {
10
6
  const {
11
7
  otherProps,
@@ -14,72 +10,65 @@ const FontLoader = props => {
14
10
  const {
15
11
  setFontFamilies
16
12
  } = useEditorContext();
17
- const [loading, setLoading] = useState(true);
18
13
  const loadFontsInBatches = (families, batchSize = 5, maxRetries = 3) => {
19
14
  let currentIndex = 0;
20
15
  let retryCount = 0;
21
- let hideLoaderOn = 30;
22
- const loadNextBatch = () => {
23
- try {
24
- if (currentIndex >= families?.length) {
25
- // console.log("All fonts have been loaded");
26
- setLoading(false);
27
- return;
28
- }
29
- const batch = families?.slice(currentIndex, currentIndex + batchSize);
30
- const batchWithWeights = batch.map(font => `${font}:300,400,600,700`);
31
- WebFont.load({
32
- google: {
33
- families: [...batchWithWeights]
34
- },
35
- classes: false,
36
- timeout: 2000,
37
- active: () => {
38
- // console.log(`Fonts loaded successfully: ${batch}`);
16
+ function loadNextBatch() {
17
+ if (currentIndex >= families?.length) {
18
+ // console.log("All fonts have been loaded");
19
+ return;
20
+ }
21
+ const batch = families?.slice(currentIndex, currentIndex + batchSize);
22
+ const batchWithWeights = batch.map(font => `${font}:300,400,600,700`);
23
+ WebFont.load({
24
+ google: {
25
+ families: [...batchWithWeights]
26
+ },
27
+ classes: false,
28
+ timeout: 2000,
29
+ active: () => {
30
+ // console.log(`Fonts loaded successfully: ${batch}`);
31
+ currentIndex += batchSize;
32
+ retryCount = 0; // Reset retry count for the next batch
33
+ loadNextBatch();
34
+ },
35
+ inactive: () => {
36
+ // console.log(`Font loading failed for: ${batch}`);
37
+
38
+ if (retryCount < maxRetries) {
39
+ retryCount++;
40
+ // console.log(`Retrying batch (${retryCount}/${maxRetries})...`);
41
+ // Retry loading the same batch
42
+ loadNextBatch();
43
+ } else {
44
+ // console.log(
45
+ // `Max retries reached for batch: ${batch}. Moving to the next batch.`
46
+ // );
39
47
  currentIndex += batchSize;
40
48
  retryCount = 0; // Reset retry count for the next batch
41
49
  loadNextBatch();
42
- },
43
- inactive: () => {
44
- // console.log(`Font loading failed for: ${batch}`);
45
- if (retryCount < maxRetries) {
46
- retryCount++;
47
- // console.log(`Retrying batch (${retryCount}/${maxRetries})...`);
48
- // Retry loading the same batch
49
- loadNextBatch();
50
- } else {
51
- // console.log(
52
- // `Max retries reached for batch: ${batch}. Moving to the next batch.`
53
- // );
54
- currentIndex += batchSize;
55
- retryCount = 0;
56
- loadNextBatch();
57
- }
58
50
  }
59
- });
60
- } catch (err) {
61
- setLoading(false);
62
- }
63
- };
51
+ }
52
+ });
53
+ }
64
54
  loadNextBatch();
65
55
  };
66
56
  useEffect(() => {
67
- let families = [...googleFontList];
57
+ let families = [...otherFonts, ...defaultFonts];
68
58
  if (!readOnly) {
69
59
  otherProps?.services("listGoogleFont", []).then(data => {
70
- families = [...(data?.data || [])];
60
+ families = [...families, ...(data?.data || [])];
61
+ const filteredfamilies = families?.filter(font => !font?.includes("Material"));
71
62
  setFontFamilies({
72
63
  id: 1,
73
64
  format: "fontFamily",
74
65
  type: "fontfamilydropdown",
75
- options: families || []
66
+ options: filteredfamilies || []
76
67
  });
77
68
  loadFontsInBatches(families);
78
69
  }).catch(err => {
79
70
  // console.log(err);
80
- setLoading(false);
81
71
  });
82
- // setLoading(true);
83
72
  } else {
84
73
  function correctFontArray(fontString) {
85
74
  let fontsArray = fontString.split(",");
@@ -99,32 +88,11 @@ const FontLoader = props => {
99
88
  let families = Array.from(fontSet);
100
89
  families = correctFontArray(families.join(", "));
101
90
  families = families?.map(font => font?.replace(/\"/g, ""));
102
- families = families?.map(font => font?.replace(", sans-serif", ""));
91
+ families = families?.map(font => font?.replace(", sans-serif", "")); //This is temporary fix for patch
103
92
  families = families.filter(font => googleFontList.includes(font));
104
93
  loadFontsInBatches(families);
105
94
  }
106
-
107
- // Set timeout to hide loader after 5 seconds
108
- const timeoutId = setTimeout(() => {
109
- setLoading(false);
110
- }, 5000);
111
- return () => clearTimeout(timeoutId);
112
95
  }, []);
113
- return /*#__PURE__*/_jsx(_Fragment, {
114
- children: loading ? /*#__PURE__*/_jsx(Box, {
115
- sx: {
116
- position: "absolute",
117
- top: 0,
118
- left: 0,
119
- right: 0,
120
- bottom: 0,
121
- zIndex: 99999,
122
- display: "flex",
123
- justifyContent: "center",
124
- alignItems: "center"
125
- },
126
- children: /*#__PURE__*/_jsx(CircularProgress, {})
127
- }) : null
128
- });
96
+ return null;
129
97
  };
130
98
  export default FontLoader;
@@ -44,16 +44,6 @@ import ChervDown from "../assets/svg/ChervDown";
44
44
  import ChervUp from "../assets/svg/ChervUp";
45
45
  import { jsx as _jsx } from "react/jsx-runtime";
46
46
  import { jsxs as _jsxs } from "react/jsx-runtime";
47
- const HeadingIcon = ({
48
- variant
49
- }) => {
50
- return /*#__PURE__*/_jsx("div", {
51
- style: {
52
- color: "#64748B"
53
- },
54
- children: variant
55
- });
56
- };
57
47
  const iconList = {
58
48
  fontFamily: /*#__PURE__*/_jsx(FontFamilyIcon, {
59
49
  size: 20
@@ -86,24 +76,6 @@ const iconList = {
86
76
  size: 18,
87
77
  fill: "#64748B"
88
78
  }),
89
- headingFour: /*#__PURE__*/_jsx(HeadingIcon, {
90
- variant: "H4"
91
- }),
92
- headingFive: /*#__PURE__*/_jsx(HeadingIcon, {
93
- variant: "H5"
94
- }),
95
- headingSix: /*#__PURE__*/_jsx(HeadingIcon, {
96
- variant: "H6"
97
- }),
98
- paragraphOne: /*#__PURE__*/_jsx(HeadingIcon, {
99
- variant: "P1"
100
- }),
101
- paragraphTwo: /*#__PURE__*/_jsx(HeadingIcon, {
102
- variant: "P2"
103
- }),
104
- paragraphThree: /*#__PURE__*/_jsx(HeadingIcon, {
105
- variant: "P3"
106
- }),
107
79
  blockquote: /*#__PURE__*/_jsx(MdFormatQuote, {
108
80
  size: 20,
109
81
  fill: "#64748B",
@@ -18,7 +18,7 @@ const Upload = props => {
18
18
  item: true,
19
19
  xs: 12,
20
20
  sx: {
21
- padding: 0,
21
+ padding: "10px",
22
22
  height: '100%'
23
23
  },
24
24
  className: "ims-right",