@flozy/editor 3.9.1 → 3.9.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (116) hide show
  1. package/dist/Editor/ChatEditor.js +16 -0
  2. package/dist/Editor/CommonEditor.js +109 -177
  3. package/dist/Editor/Editor.css +12 -8
  4. package/dist/Editor/Elements/AI/AIInput.js +18 -17
  5. package/dist/Editor/Elements/AI/CustomSelect.js +12 -19
  6. package/dist/Editor/Elements/AI/PopoverAIInput.js +28 -23
  7. package/dist/Editor/Elements/AI/Styles.js +1 -2
  8. package/dist/Editor/Elements/Accordion/Accordion.js +1 -1
  9. package/dist/Editor/Elements/Accordion/AccordionSummary.js +21 -5
  10. package/dist/Editor/Elements/AppHeader/AppHeader.js +4 -26
  11. package/dist/Editor/Elements/Button/EditorButton.js +16 -28
  12. package/dist/Editor/Elements/Color Picker/ColorButtons.js +17 -60
  13. package/dist/Editor/Elements/Color Picker/ColorPicker.css +1 -25
  14. package/dist/Editor/Elements/Color Picker/ColorPicker.js +4 -4
  15. package/dist/Editor/Elements/Color Picker/Styles.js +1 -2
  16. package/dist/Editor/Elements/Form/Workflow/FormWorkflow.js +3 -12
  17. package/dist/Editor/Elements/Form/Workflow/UserInputs.js +1 -2
  18. package/dist/Editor/Elements/Grid/Grid.js +3 -27
  19. package/dist/Editor/Elements/Grid/GridItem.js +1 -3
  20. package/dist/Editor/Elements/Link/Link.js +1 -6
  21. package/dist/Editor/Elements/Link/LinkButton.js +2 -4
  22. package/dist/Editor/Elements/Link/LinkPopup.js +3 -10
  23. package/dist/Editor/Elements/List/CheckList.js +2 -1
  24. package/dist/Editor/Elements/PageSettings/PageSettingsButton.js +3 -3
  25. package/dist/Editor/Elements/Signature/SignaturePopup.js +3 -14
  26. package/dist/Editor/Elements/Table/Styles.js +1 -23
  27. package/dist/Editor/Elements/Table/Table.js +1 -2
  28. package/dist/Editor/Elements/Table/TableCell.js +7 -69
  29. package/dist/Editor/Elements/TableContextMenu/TableContextMenu.js +0 -1
  30. package/dist/Editor/MiniEditor.js +1 -3
  31. package/dist/Editor/Styles/EditorStyles.js +1 -1
  32. package/dist/Editor/Toolbar/Basic/index.js +2 -4
  33. package/dist/Editor/Toolbar/FormatTools/Dropdown.js +2 -26
  34. package/dist/Editor/Toolbar/FormatTools/MarkButton.js +2 -2
  35. package/dist/Editor/Toolbar/FormatTools/TextSize.js +18 -29
  36. package/dist/Editor/Toolbar/Mini/MiniToolbar.js +2 -4
  37. package/dist/Editor/Toolbar/Mini/Options/Options.js +0 -10
  38. package/dist/Editor/Toolbar/Mini/Styles.js +0 -7
  39. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +11 -4
  40. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +86 -213
  41. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +1 -2
  42. package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +16 -22
  43. package/dist/Editor/Toolbar/PopupTool/TextFormat.js +7 -52
  44. package/dist/Editor/Toolbar/PopupTool/index.js +17 -7
  45. package/dist/Editor/Toolbar/toolbarGroups.js +6 -48
  46. package/dist/Editor/assets/svg/AIIcons.js +1 -153
  47. package/dist/Editor/assets/svg/AddTemplateIcon.js +10 -13
  48. package/dist/Editor/assets/svg/TextIcon.js +5 -8
  49. package/dist/Editor/common/ColorPickerButton.js +18 -26
  50. package/dist/Editor/common/DnD/DragHandleButton.js +47 -56
  51. package/dist/Editor/common/Icon.js +3 -43
  52. package/dist/Editor/common/LinkSettings/NavComponents.js +2 -5
  53. package/dist/Editor/common/LinkSettings/index.js +2 -4
  54. package/dist/Editor/common/LinkSettings/navOptions.js +2 -7
  55. package/dist/Editor/common/LinkSettings/style.js +8 -11
  56. package/dist/Editor/common/Section/index.js +7 -57
  57. package/dist/Editor/common/Section/styles.js +0 -11
  58. package/dist/Editor/common/Shorthands/elements.js +0 -54
  59. package/dist/Editor/common/StyleBuilder/accordionTitleBtnStyle.js +2 -1
  60. package/dist/Editor/common/StyleBuilder/buttonStyle.js +2 -4
  61. package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +29 -33
  62. package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +25 -31
  63. package/dist/Editor/common/StyleBuilder/fieldTypes/buttonLink.js +1 -1
  64. package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +7 -29
  65. package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +4 -13
  66. package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +4 -14
  67. package/dist/Editor/common/StyleBuilder/index.js +1 -1
  68. package/dist/Editor/common/iconslist.js +31 -0
  69. package/dist/Editor/helper/index.js +22 -0
  70. package/dist/Editor/helper/theme.js +4 -189
  71. package/dist/Editor/hooks/useMouseMove.js +1 -4
  72. package/dist/Editor/hooks/useWindowMessage.js +7 -10
  73. package/dist/Editor/plugins/withEmbeds.js +1 -1
  74. package/dist/Editor/plugins/withHTML.js +1 -1
  75. package/dist/Editor/plugins/withTable.js +1 -1
  76. package/dist/Editor/theme/ThemeList.js +173 -50
  77. package/dist/Editor/utils/SlateUtilityFunctions.js +27 -169
  78. package/dist/Editor/utils/button.js +17 -1
  79. package/dist/Editor/utils/events.js +2 -54
  80. package/dist/Editor/utils/font.js +37 -40
  81. package/dist/Editor/utils/helper.js +2 -31
  82. package/dist/Editor/utils/table.js +43 -51
  83. package/package.json +3 -4
  84. package/dist/Editor/Elements/AI/VoiceToText/AudioWave.js +0 -73
  85. package/dist/Editor/Elements/AI/VoiceToText/index.js +0 -177
  86. package/dist/Editor/Elements/AI/VoiceToText/style.js +0 -40
  87. package/dist/Editor/Elements/Link/LinkPopupStyles.js +0 -28
  88. package/dist/Editor/Elements/Redo/RedoButton.js +0 -14
  89. package/dist/Editor/Elements/Undo/UndoButton.js +0 -14
  90. package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +0 -438
  91. package/dist/Editor/assets/svg/RedoIcon.js +0 -27
  92. package/dist/Editor/assets/svg/SettingsIcon.js +0 -28
  93. package/dist/Editor/assets/svg/ThemeIcons.js +0 -291
  94. package/dist/Editor/assets/svg/UndoIcon.js +0 -27
  95. package/dist/Editor/common/CustomColorPicker/index.js +0 -106
  96. package/dist/Editor/common/CustomColorPicker/style.js +0 -53
  97. package/dist/Editor/common/CustomDialog/index.js +0 -94
  98. package/dist/Editor/common/CustomDialog/style.js +0 -67
  99. package/dist/Editor/common/CustomSelect.js +0 -33
  100. package/dist/Editor/hooks/useEditorTheme.js +0 -139
  101. package/dist/Editor/theme/index.js +0 -144
  102. package/dist/Editor/themeSettings/ActiveTheme.js +0 -72
  103. package/dist/Editor/themeSettings/buttons/index.js +0 -290
  104. package/dist/Editor/themeSettings/buttons/style.js +0 -21
  105. package/dist/Editor/themeSettings/colorTheme/index.js +0 -290
  106. package/dist/Editor/themeSettings/colorTheme/style.js +0 -77
  107. package/dist/Editor/themeSettings/fonts/PreviewElement.js +0 -123
  108. package/dist/Editor/themeSettings/fonts/index.js +0 -213
  109. package/dist/Editor/themeSettings/fonts/style.js +0 -44
  110. package/dist/Editor/themeSettings/icons.js +0 -60
  111. package/dist/Editor/themeSettings/index.js +0 -320
  112. package/dist/Editor/themeSettings/style.js +0 -152
  113. package/dist/Editor/themeSettingsAI/icons.js +0 -96
  114. package/dist/Editor/themeSettingsAI/index.js +0 -356
  115. package/dist/Editor/themeSettingsAI/saveTheme.js +0 -190
  116. package/dist/Editor/themeSettingsAI/style.js +0 -247
@@ -1,9 +1,10 @@
1
1
  import { useEffect, useRef, useState } from "react";
2
- import { activeMark, addMarkData } from "../../../utils/SlateUtilityFunctions";
2
+ import { activeMark, addMarkData, isBlockActive } from "../../../utils/SlateUtilityFunctions";
3
3
  import { Button, IconButton, Popover, TextField } from "@mui/material";
4
4
  import DownArrowIcon from "../../../assets/svg/DownArrowIcon";
5
5
  import useWindowResize from "../../../hooks/useWindowResize";
6
- import { BREAKPOINTS_DEVICES, getBreakPointsValue, getTextSizeVal } from "../../../helper/theme";
6
+ import { BREAKPOINTS_DEVICES, getBreakPointsValue } from "../../../helper/theme";
7
+ import { headingMap, sizeMap } from "../../../utils/font";
7
8
  import { jsx as _jsx } from "react/jsx-runtime";
8
9
  import { jsxs as _jsxs } from "react/jsx-runtime";
9
10
  const fontSizeOptions = [8, 9, 10, 11, 12, 14, 16, 18, 20, 22, 26, 32, 36, 40, 48, 64, 96, 128];
@@ -18,7 +19,7 @@ function SelectFontSize({
18
19
  const containerRef = useRef();
19
20
  const [size] = useWindowResize();
20
21
  const val = activeMark(editor, format);
21
- const value = getTextSizeVal(editor);
22
+ const value = getBreakPointsValue(val, size?.device);
22
23
  const timerRef = useRef();
23
24
  const updateMarkData = newVal => {
24
25
  let upData = {
@@ -52,7 +53,13 @@ function SelectFontSize({
52
53
  };
53
54
  const getSizeVal = () => {
54
55
  try {
55
- return parseInt(value);
56
+ let size = `${value}`?.indexOf("px") >= 0 ? value : sizeMap[value] || value;
57
+ Object.entries(headingMap).forEach(([format, value]) => {
58
+ if (isBlockActive(editor, format) && isNaN(parseInt(size))) {
59
+ size = value;
60
+ }
61
+ });
62
+ return parseInt(size);
56
63
  } catch (err) {
57
64
  return "";
58
65
  }
@@ -2,11 +2,8 @@ import { useMemo } from "react";
2
2
  import { activeMark, addMarkData, isBlockActive, toggleBlock } from "../../../utils/SlateUtilityFunctions";
3
3
  import CustomSelectTool from "./CustomSelectTool";
4
4
  import useWindowResize from "../../../hooks/useWindowResize";
5
- import { BREAKPOINTS_DEVICES, getBreakPointsValue, isTextCustomized as isCustomized, textThemeFields as themeFields } from "../../../helper/theme";
5
+ import { BREAKPOINTS_DEVICES, getBreakPointsValue } from "../../../helper/theme";
6
6
  import { sizeMap } from "../../../utils/font";
7
- import { Editor } from "slate";
8
- import { MenuItem, Select } from "@mui/material";
9
- import { useEditorTheme } from "../../../hooks/useEditorTheme";
10
7
  import { jsx as _jsx } from "react/jsx-runtime";
11
8
  import { jsxs as _jsxs } from "react/jsx-runtime";
12
9
  function Label({
@@ -20,194 +17,93 @@ function Label({
20
17
  });
21
18
  }
22
19
  function DisplayHeaderLabel({
23
- type,
24
- isCustomized,
25
- isPara = false
20
+ type
26
21
  }) {
27
22
  return /*#__PURE__*/_jsxs("div", {
28
- children: [isCustomized ? "*" : "", isPara ? "P" : "H", /*#__PURE__*/_jsx("sub", {
23
+ children: ["H", /*#__PURE__*/_jsx("sub", {
29
24
  children: type
30
25
  })]
31
26
  });
32
27
  }
33
- function getTypographyOptions(isCustomized) {
34
- const typographyOptions = [{
35
- id: 11,
36
- format: "headingOne",
37
- type: "block",
38
- title: /*#__PURE__*/_jsx(Label, {
39
- label: "H1",
40
- type: "Heading"
41
- }),
42
- label: /*#__PURE__*/_jsx(DisplayHeaderLabel, {
43
- type: 1,
44
- isCustomized: isCustomized
45
- }),
46
- group: "typography",
47
- value: "headingOne"
48
- }, {
49
- id: 12,
50
- format: "headingTwo",
51
- type: "block",
52
- title: /*#__PURE__*/_jsx(Label, {
53
- label: "H2",
54
- type: "Heading"
55
- }),
56
- label: /*#__PURE__*/_jsx(DisplayHeaderLabel, {
57
- type: 2,
58
- isCustomized: isCustomized
59
- }),
60
- group: "typography",
61
- value: "headingTwo"
62
- }, {
63
- id: 13,
64
- format: "headingThree",
65
- type: "block",
66
- title: /*#__PURE__*/_jsx(Label, {
67
- label: "H3",
68
- type: "Heading"
69
- }),
70
- label: /*#__PURE__*/_jsx(DisplayHeaderLabel, {
71
- type: 3,
72
- isCustomized: isCustomized
73
- }),
74
- group: "typography",
75
- value: "headingThree"
76
- }, {
77
- id: 17,
78
- format: "headingFour",
79
- type: "block",
80
- title: /*#__PURE__*/_jsx(Label, {
81
- label: "H4",
82
- type: "Heading"
83
- }),
84
- label: /*#__PURE__*/_jsx(DisplayHeaderLabel, {
85
- type: 4,
86
- isCustomized: isCustomized
87
- }),
88
- group: "typography",
89
- value: "headingFour"
90
- }, {
91
- id: 18,
92
- format: "headingFive",
93
- type: "block",
94
- title: /*#__PURE__*/_jsx(Label, {
95
- label: "H5",
96
- type: "Heading"
97
- }),
98
- label: /*#__PURE__*/_jsx(DisplayHeaderLabel, {
99
- type: 5,
100
- isCustomized: isCustomized
101
- }),
102
- group: "typography",
103
- value: "headingFive"
104
- }, {
105
- id: 19,
106
- format: "headingSix",
107
- type: "block",
108
- title: /*#__PURE__*/_jsx(Label, {
109
- label: "H6",
110
- type: "Heading"
111
- }),
112
- label: /*#__PURE__*/_jsx(DisplayHeaderLabel, {
113
- type: 6,
114
- isCustomized: isCustomized
115
- }),
116
- group: "typography",
117
- value: "headingSix"
118
- }, {
119
- id: 20,
120
- format: "paragraphOne",
121
- type: "block",
122
- title: /*#__PURE__*/_jsx(Label, {
123
- label: "P1",
124
- type: "Paragraph"
125
- }),
126
- label: /*#__PURE__*/_jsx(DisplayHeaderLabel, {
127
- type: 1,
128
- isCustomized: isCustomized,
129
- isPara: true
130
- }),
131
- group: "typography",
132
- value: "paragraphOne"
133
- }, {
134
- id: 21,
135
- format: "paragraphTwo",
136
- type: "block",
137
- title: /*#__PURE__*/_jsx(Label, {
138
- label: "P2",
139
- type: "Paragraph"
140
- }),
141
- label: /*#__PURE__*/_jsx(DisplayHeaderLabel, {
142
- type: 2,
143
- isCustomized: isCustomized,
144
- isPara: true
145
- }),
146
- group: "typography",
147
- value: "paragraphTwo"
148
- }, {
149
- id: 22,
150
- format: "paragraphThree",
151
- type: "block",
152
- title: /*#__PURE__*/_jsx(Label, {
153
- label: "P3",
154
- type: "Paragraph"
155
- }),
156
- label: /*#__PURE__*/_jsx(DisplayHeaderLabel, {
157
- type: 3,
158
- isCustomized: isCustomized,
159
- isPara: true
160
- }),
161
- group: "typography",
162
- value: "paragraphThree"
163
- }, {
164
- id: 14,
165
- format: "fontSize",
166
- type: "mark",
167
- title: /*#__PURE__*/_jsx(Label, {
168
- label: "L",
169
- type: "Large"
170
- }),
28
+ const typographyOptions = [{
29
+ id: 11,
30
+ format: "headingOne",
31
+ type: "block",
32
+ title: /*#__PURE__*/_jsx(Label, {
33
+ label: "H1",
34
+ type: "Header"
35
+ }),
36
+ label: /*#__PURE__*/_jsx(DisplayHeaderLabel, {
37
+ type: 1
38
+ }),
39
+ group: "typography",
40
+ value: "headingOne"
41
+ }, {
42
+ id: 12,
43
+ format: "headingTwo",
44
+ type: "block",
45
+ title: /*#__PURE__*/_jsx(Label, {
46
+ label: "H2",
47
+ type: "Header"
48
+ }),
49
+ label: /*#__PURE__*/_jsx(DisplayHeaderLabel, {
50
+ type: 2
51
+ }),
52
+ group: "typography",
53
+ value: "headingTwo"
54
+ }, {
55
+ id: 13,
56
+ format: "headingThree",
57
+ type: "block",
58
+ title: /*#__PURE__*/_jsx(Label, {
59
+ label: "H3",
60
+ type: "Header"
61
+ }),
62
+ label: /*#__PURE__*/_jsx(DisplayHeaderLabel, {
63
+ type: 3
64
+ }),
65
+ group: "typography",
66
+ value: "headingThree"
67
+ }, {
68
+ id: 14,
69
+ format: "fontSize",
70
+ type: "mark",
71
+ title: /*#__PURE__*/_jsx(Label, {
171
72
  label: "L",
172
- group: "typography",
173
- value: "huge"
174
- }, {
175
- id: 15,
176
- format: "fontSize",
177
- type: "mark",
178
- title: /*#__PURE__*/_jsx(Label, {
179
- label: "M",
180
- type: "Medium"
181
- }),
73
+ type: "Large"
74
+ }),
75
+ label: "L",
76
+ group: "typography",
77
+ value: "huge"
78
+ }, {
79
+ id: 15,
80
+ format: "fontSize",
81
+ type: "mark",
82
+ title: /*#__PURE__*/_jsx(Label, {
182
83
  label: "M",
183
- group: "typography",
184
- value: "medium"
185
- }, {
186
- id: 16,
187
- format: "fontSize",
188
- type: "mark",
189
- title: /*#__PURE__*/_jsx(Label, {
190
- label: "S",
191
- type: "Small"
192
- }),
84
+ type: "Medium"
85
+ }),
86
+ label: "M",
87
+ group: "typography",
88
+ value: "medium"
89
+ }, {
90
+ id: 16,
91
+ format: "fontSize",
92
+ type: "mark",
93
+ title: /*#__PURE__*/_jsx(Label, {
193
94
  label: "S",
194
- group: "typography",
195
- value: "small"
196
- }];
197
- return typographyOptions;
198
- }
95
+ type: "Small"
96
+ }),
97
+ label: "S",
98
+ group: "typography",
99
+ value: "small"
100
+ }];
199
101
  function SelectTypography({
200
102
  editor,
201
103
  classes,
202
- closeMainPopup,
203
- type
104
+ closeMainPopup
204
105
  }) {
205
106
  const [size] = useWindowResize();
206
- const {
207
- theme
208
- } = useEditorTheme();
209
- const isTextCustomized = theme?.id ? isCustomized(editor) : false;
210
- const typographyOptions = getTypographyOptions(isTextCustomized);
211
107
  const updateMarkData = newVal => {
212
108
  const val = activeMark(editor, "fontSize");
213
109
  let upData = {
@@ -252,49 +148,26 @@ function SelectTypography({
252
148
  });
253
149
  }, [typographyOptions, activeMark, isBlockActive, editor]);
254
150
  const onChange = (format, option) => {
151
+ // add/reset block elements
152
+ toggleBlock(editor, format);
255
153
  if (option.type === "block") {
256
- themeFields.forEach(field => {
257
- Editor.removeMark(editor, field);
154
+ // reset old font size
155
+ addMarkData(editor, {
156
+ format: "fontSize",
157
+ value: {}
258
158
  });
259
-
260
- // add/reset block elements
261
- toggleBlock(editor, format);
262
159
  } else if (option.type === "mark") {
263
160
  const size = sizeMap[option.value] || "";
264
161
  const [sizeInNumber] = size.split("px");
265
162
  updateMarkData(Number(sizeInNumber));
266
163
  }
267
164
  };
268
- const typographyValue = selectedBlock?.value || "headingOne";
269
- if (type === "miniToolBar") {
270
- return /*#__PURE__*/_jsx(CustomSelectTool, {
271
- options: typographyOptions,
272
- editor: editor,
273
- onChange: onChange,
274
- value: typographyValue,
275
- classes: classes
276
- });
277
- }
278
- return /*#__PURE__*/_jsx(Select, {
279
- value: typographyValue,
280
- className: "editor-dd",
281
- onChange: e => {
282
- const {
283
- value
284
- } = e.target;
285
- const option = typographyOptions?.find(o => o.value === value);
286
- onChange(value, option);
287
- },
288
- style: {
289
- width: "100%",
290
- height: "36px",
291
- borderRadius: "10px",
292
- fontSize: "14px"
293
- },
294
- children: typographyOptions.map((item, index) => /*#__PURE__*/_jsxs(MenuItem, {
295
- value: item.value,
296
- children: [item.title, " ", isTextCustomized && item.value === typographyValue ? " *" : ""]
297
- }, index))
165
+ return /*#__PURE__*/_jsx(CustomSelectTool, {
166
+ options: typographyOptions,
167
+ editor: editor,
168
+ onChange: onChange,
169
+ value: selectedBlock?.value || "headingOne",
170
+ classes: classes
298
171
  });
299
172
  }
300
173
  export default SelectTypography;
@@ -53,8 +53,7 @@ const MiniTextFormat = props => {
53
53
  children: [customProps?.hideTools?.includes("infinityAI") ? null : /*#__PURE__*/_jsx(InfinityAITool, {}), /*#__PURE__*/_jsx(SelectTypography, {
54
54
  classes: classes,
55
55
  editor: editor,
56
- closeMainPopup: closeMainPopup,
57
- type: "miniToolBar"
56
+ closeMainPopup: closeMainPopup
58
57
  }), /*#__PURE__*/_jsx("div", {
59
58
  className: "verticalLine"
60
59
  }), /*#__PURE__*/_jsx(SelectList, {
@@ -3,8 +3,9 @@ const usePopupStyle = theme => ({
3
3
  boxShadow: "0px 4px 10px 0px rgba(0, 0, 0, 0.16)",
4
4
  zIndex: 1300,
5
5
  marginBottom: "12px !important",
6
- borderRadius: "6px",
7
- maxWidth: "96%",
6
+ border: "1px solid #E0E0E0",
7
+ borderRadius: "10px",
8
+ maxWidth: "100%",
8
9
  "&.fullscreen": {
9
10
  marginBottom: "0px !important",
10
11
  "& .papper-wrpr": {
@@ -18,7 +19,7 @@ const usePopupStyle = theme => ({
18
19
  backgroundColor: theme?.palette?.editor?.background
19
20
  },
20
21
  "&.textSettings": {
21
- "@media only screen and (max-width: 600px)": {
22
+ '@media only screen and (max-width: 600px)': {
22
23
  margin: "4px !important",
23
24
  marginBottom: "54px !important"
24
25
  }
@@ -77,7 +78,7 @@ const usePopupStyle = theme => ({
77
78
  paddingTop: "4px"
78
79
  },
79
80
  "@media only screen and (max-width: 599px)": {
80
- width: "330px"
81
+ width: '330px'
81
82
  }
82
83
  },
83
84
  "&.templates": {
@@ -88,7 +89,7 @@ const usePopupStyle = theme => ({
88
89
  maxHeight: "fit-content"
89
90
  },
90
91
  "@media only screen and (max-width: 599px)": {
91
- width: "330px"
92
+ width: '330px'
92
93
  }
93
94
  },
94
95
  "& .headerContainer": {},
@@ -143,7 +144,7 @@ const usePopupStyle = theme => ({
143
144
  }
144
145
  },
145
146
  "@media only screen and (max-width: 599px)": {
146
- width: "330px"
147
+ width: '330px'
147
148
  }
148
149
  },
149
150
  textFormatLabel: {
@@ -154,13 +155,13 @@ const usePopupStyle = theme => ({
154
155
  lineHeight: "25px",
155
156
  marginTop: "12px",
156
157
  marginBottom: "8px",
157
- "& .searchContainer": {
158
+ '& .searchContainer': {
158
159
  position: "absolute",
159
160
  right: 0,
160
161
  zIndex: 3
161
162
  },
162
- "& .MuiFormControl-root.MuiTextField-root input": {
163
- padding: "8px 35px 6px 12px"
163
+ '& .MuiFormControl-root.MuiTextField-root input': {
164
+ padding: '8px 35px 6px 12px'
164
165
  }
165
166
  },
166
167
  textFormatField: {
@@ -204,8 +205,7 @@ const usePopupStyle = theme => ({
204
205
  fontSize: "14px",
205
206
  marginBottom: "5px",
206
207
  paddingLeft: "5px",
207
- fontWeight: 500,
208
- color: "#000000"
208
+ fontWeight: 500
209
209
  },
210
210
  templateCard: {
211
211
  borderRadius: "10px",
@@ -327,13 +327,8 @@ const usePopupStyle = theme => ({
327
327
  }
328
328
  },
329
329
  defaultBtn: {
330
- color: "#2563EB !important",
331
- textTransform: "none",
332
- textDecoration: "underline",
333
- "&.Mui-disabled": {
334
- color: "#A0AEC0 !important",
335
- textDecoration: "none"
336
- }
330
+ color: "#0F172A",
331
+ textTransform: "none"
337
332
  },
338
333
  templateCardBtnGrp: {
339
334
  display: "none",
@@ -418,8 +413,7 @@ const usePopupStyle = theme => ({
418
413
  colorPopper: {
419
414
  "& .MuiPaper-root": {
420
415
  backgroundColor: theme?.palette?.editor?.background,
421
- padding: "4px 14px",
422
- "@media only screen and (max-width: 600px)": {
416
+ '@media only screen and (max-width: 600px)': {
423
417
  marginTop: "-40px"
424
418
  }
425
419
  }
@@ -530,9 +524,9 @@ const usePopupStyle = theme => ({
530
524
  },
531
525
  customSelectPopoverWrapper: {
532
526
  "& .MuiPopover-paper": {
533
- maxHeight: "140px",
527
+ maxHeight: '140px',
534
528
  background: theme?.palette?.editor?.background,
535
- "@media only screen and (max-width: 600px)": {
529
+ '@media only screen and (max-width: 600px)': {
536
530
  marginTop: "-40px"
537
531
  }
538
532
  },
@@ -14,9 +14,6 @@ import { getPageSettings, updatePageSettings } from "../../utils/pageSettings";
14
14
  import { AllColors } from "../../Elements/Color Picker/ColorButtons";
15
15
  import { fontFamilyMap } from "../../utils/font";
16
16
  import { getBorderColor } from "../../utils/helper";
17
- import SelectTypography from "./MiniTextFormat/SelectTypography";
18
- import { isTextCustomized, saveToTheme } from "../../helper/theme";
19
- import { useEditorTheme } from "../../hooks/useEditorTheme";
20
17
  import { jsx as _jsx } from "react/jsx-runtime";
21
18
  import { jsxs as _jsxs } from "react/jsx-runtime";
22
19
  const allTools = toolbarGroups.flat();
@@ -37,6 +34,7 @@ const TextFormat = props => {
37
34
  const fontAlign = allTools.filter(f => f.format?.indexOf("align") >= 0);
38
35
  const link = allTools.find(f => f.format?.indexOf("link") >= 0);
39
36
  const lists = allTools.filter(f => f.group?.indexOf("list") >= 0);
37
+ const typo = allTools.filter(f => f.group?.indexOf("typography") >= 0);
40
38
  const {
41
39
  pageProps
42
40
  } = getPageSettings(editor)?.element || {};
@@ -54,11 +52,6 @@ const TextFormat = props => {
54
52
  color: "",
55
53
  bgColor: ""
56
54
  };
57
- const {
58
- theme,
59
- updateTheme
60
- } = useEditorTheme();
61
- const customized = isTextCustomized(editor);
62
55
  const handlePageWidth = width => () => {
63
56
  updatePageSettings(editor, {
64
57
  ...(pageProps || {}),
@@ -108,49 +101,6 @@ const TextFormat = props => {
108
101
  container: true,
109
102
  sx: classes.textFormatWrapper,
110
103
  children: [/*#__PURE__*/_jsxs(Grid, {
111
- item: true,
112
- xs: 12,
113
- children: [/*#__PURE__*/_jsxs(Grid, {
114
- container: true,
115
- justifyContent: "space-between",
116
- alignItems: "center",
117
- children: [/*#__PURE__*/_jsx(Grid, {
118
- item: true,
119
- children: /*#__PURE__*/_jsx(Typography, {
120
- variant: "body1",
121
- color: "primary",
122
- sx: classes.typoLabel,
123
- children: "Theme Style"
124
- })
125
- }), /*#__PURE__*/_jsx(Grid, {
126
- item: true,
127
- children: theme?.id ? /*#__PURE__*/_jsx(Button, {
128
- sx: classes.defaultBtn,
129
- onClick: () => {
130
- const {
131
- field,
132
- theme
133
- } = saveToTheme(editor) || {};
134
- updateTheme(theme, {
135
- action: "ELEMENT_PROPS_CHANGE",
136
- fieldName: field
137
- });
138
- },
139
- disabled: !customized,
140
- children: "Save to theme"
141
- }) : null
142
- })]
143
- }), /*#__PURE__*/_jsx(Grid, {
144
- item: true,
145
- xs: 12,
146
- sx: classes.textFormatField,
147
- children: /*#__PURE__*/_jsx(SelectTypography, {
148
- editor: editor,
149
- classes: classes,
150
- closeMainPopup: () => {}
151
- })
152
- })]
153
- }), /*#__PURE__*/_jsxs(Grid, {
154
104
  item: true,
155
105
  xs: 12,
156
106
  children: [/*#__PURE__*/_jsxs(Grid, {
@@ -369,7 +319,12 @@ const TextFormat = props => {
369
319
  xs: 12,
370
320
  className: "typo-icons",
371
321
  sx: classes.evenSpace,
372
- children: [fontStyle?.map((m, i) => {
322
+ children: [typo?.map((m, i) => {
323
+ return /*#__PURE__*/_jsx(BlockButton, {
324
+ editor: editor,
325
+ ...m
326
+ }, `pptool_mark_${i}_${m.id}`);
327
+ }), fontStyle?.map((m, i) => {
373
328
  return /*#__PURE__*/_jsx(MarkButton, {
374
329
  editor: editor,
375
330
  ...m
@@ -1,9 +1,10 @@
1
1
  import React, { useEffect, useState } from "react";
2
2
  import { Popper, Fade, Paper, ClickAwayListener } from "@mui/material";
3
3
  import { Editor, Range } from "slate";
4
- import { useSlate } from "slate-react";
4
+ import { useSlate, useFocused } from "slate-react";
5
5
  import useDrag from "../../hooks/useDrag";
6
6
  import { TableUtil } from "../../utils/table";
7
+ import useWindowResize from "../../hooks/useWindowResize";
7
8
  import MiniTextFormat from "./MiniTextFormat";
8
9
  import { useEditorContext } from "../../hooks/useMouseMove";
9
10
  import usePopupStyles from "../PopupTool/PopupToolStyle";
@@ -22,12 +23,14 @@ const PopupTool = props => {
22
23
  const [anchorEl, setAnchorEl] = useState(null);
23
24
  const [open, setOpen] = useState(false);
24
25
  const editor = useSlate();
26
+ const inFocus = useFocused();
25
27
  const {
26
28
  selection
27
29
  } = editor;
28
30
  const [event] = useDrag(anchorEl);
29
31
  const id = open ? "popup-edit-tool" : "";
30
32
  const table = new TableUtil(editor);
33
+ const [size] = useWindowResize();
31
34
  useEffect(() => {
32
35
  if (event === "end" && anchorEl && !open) {
33
36
  // for table cell selection
@@ -44,7 +47,7 @@ const PopupTool = props => {
44
47
  }
45
48
  }, [event, anchorEl]);
46
49
  useEffect(() => {
47
- if (!selection || Range.isCollapsed(selection) || Editor.string(editor, selection) === "") {
50
+ if (!selection || !inFocus || Range.isCollapsed(selection) || Editor.string(editor, selection) === "") {
48
51
  setAnchorEl(null);
49
52
  } else {
50
53
  updateAnchorEl();
@@ -83,28 +86,35 @@ const PopupTool = props => {
83
86
  handleClose();
84
87
  }
85
88
  },
86
- children: /*#__PURE__*/_jsx(Popper, {
89
+ children: size.device === "xs" ? /*#__PURE__*/_jsx("div", {
90
+ className: "mobileMiniTextWrapper",
91
+ children: /*#__PURE__*/_jsx(MiniTextFormat, {
92
+ editor: editor,
93
+ classes: classes,
94
+ closeMainPopup: handleClose,
95
+ customProps: customProps
96
+ })
97
+ }) : /*#__PURE__*/_jsx(Popper, {
87
98
  id: id,
88
99
  open: open,
89
100
  anchorEl: anchorEl,
90
101
  transition: true,
91
102
  placement: "auto-end",
92
103
  sx: classes.popupWrapper,
104
+ className: `tools-drawer ${size?.device}`,
93
105
  children: ({
94
106
  TransitionProps
95
107
  }) => /*#__PURE__*/_jsx(Fade, {
96
108
  ...TransitionProps,
97
109
  children: /*#__PURE__*/_jsx(Paper, {
98
110
  style: {
99
- borderRadius: "6px",
100
- border: "1px solid #8360FD"
111
+ borderRadius: "10px"
101
112
  },
102
113
  children: /*#__PURE__*/_jsx(MiniTextFormat, {
103
114
  editor: editor,
104
115
  classes: classes,
105
116
  closeMainPopup: handleClose,
106
- customProps: customProps,
107
- theme: theme
117
+ customProps: customProps
108
118
  })
109
119
  })
110
120
  })