@flozy/editor 3.6.6 → 3.6.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (74) hide show
  1. package/dist/Editor/CommonEditor.js +166 -109
  2. package/dist/Editor/Elements/AppHeader/AppHeader.js +26 -4
  3. package/dist/Editor/Elements/Button/EditorButton.js +25 -14
  4. package/dist/Editor/Elements/Color Picker/ColorButtons.js +60 -17
  5. package/dist/Editor/Elements/Color Picker/ColorPicker.css +25 -1
  6. package/dist/Editor/Elements/Color Picker/ColorPicker.js +4 -4
  7. package/dist/Editor/Elements/Color Picker/Styles.js +2 -1
  8. package/dist/Editor/Elements/Embed/Frames/ImageFrame.js +1 -0
  9. package/dist/Editor/Elements/Form/Workflow/UserInputs.js +2 -1
  10. package/dist/Editor/Elements/Grid/Grid.js +2 -0
  11. package/dist/Editor/Elements/Grid/GridItem.js +3 -1
  12. package/dist/Editor/Elements/Link/Link.js +6 -1
  13. package/dist/Editor/Elements/Link/LinkButton.js +4 -2
  14. package/dist/Editor/Elements/Link/LinkPopup.js +11 -3
  15. package/dist/Editor/Elements/Link/LinkPopupStyles.js +28 -0
  16. package/dist/Editor/Elements/Table/TableCell.js +1 -1
  17. package/dist/Editor/MiniEditor.js +3 -1
  18. package/dist/Editor/Toolbar/Basic/index.js +4 -2
  19. package/dist/Editor/Toolbar/FormatTools/Dropdown.js +26 -2
  20. package/dist/Editor/Toolbar/FormatTools/MarkButton.js +2 -2
  21. package/dist/Editor/Toolbar/FormatTools/TextSize.js +5 -11
  22. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +4 -11
  23. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +213 -86
  24. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +2 -1
  25. package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +20 -13
  26. package/dist/Editor/Toolbar/PopupTool/TextFormat.js +52 -7
  27. package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +438 -0
  28. package/dist/Editor/Toolbar/PopupTool/index.js +4 -2
  29. package/dist/Editor/Toolbar/toolbarGroups.js +48 -6
  30. package/dist/Editor/assets/svg/ThemeIcons.js +291 -0
  31. package/dist/Editor/common/ColorPickerButton.js +25 -9
  32. package/dist/Editor/common/CustomColorPicker/index.js +106 -0
  33. package/dist/Editor/common/CustomColorPicker/style.js +53 -0
  34. package/dist/Editor/common/CustomDialog/index.js +94 -0
  35. package/dist/Editor/common/CustomDialog/style.js +67 -0
  36. package/dist/Editor/common/CustomSelect.js +33 -0
  37. package/dist/Editor/common/DnD/DragHandleButton.js +1 -1
  38. package/dist/Editor/common/Icon.js +30 -2
  39. package/dist/Editor/common/Shorthands/elements.js +54 -0
  40. package/dist/Editor/common/StyleBuilder/buttonStyle.js +4 -2
  41. package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +13 -3
  42. package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +15 -7
  43. package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +31 -7
  44. package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +13 -4
  45. package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +14 -4
  46. package/dist/Editor/common/StyleBuilder/index.js +1 -1
  47. package/dist/Editor/helper/theme.js +190 -4
  48. package/dist/Editor/hooks/useEditorTheme.js +139 -0
  49. package/dist/Editor/hooks/useMouseMove.js +4 -1
  50. package/dist/Editor/plugins/withEmbeds.js +1 -1
  51. package/dist/Editor/plugins/withHTML.js +47 -5
  52. package/dist/Editor/plugins/withTable.js +1 -1
  53. package/dist/Editor/theme/ThemeList.js +50 -173
  54. package/dist/Editor/theme/index.js +144 -0
  55. package/dist/Editor/themeSettings/ActiveTheme.js +72 -0
  56. package/dist/Editor/themeSettings/buttons/index.js +290 -0
  57. package/dist/Editor/themeSettings/buttons/style.js +21 -0
  58. package/dist/Editor/themeSettings/colorTheme/index.js +290 -0
  59. package/dist/Editor/themeSettings/colorTheme/style.js +77 -0
  60. package/dist/Editor/themeSettings/fonts/PreviewElement.js +123 -0
  61. package/dist/Editor/themeSettings/fonts/index.js +213 -0
  62. package/dist/Editor/themeSettings/fonts/style.js +44 -0
  63. package/dist/Editor/themeSettings/icons.js +60 -0
  64. package/dist/Editor/themeSettings/index.js +320 -0
  65. package/dist/Editor/themeSettings/style.js +152 -0
  66. package/dist/Editor/themeSettingsAI/icons.js +96 -0
  67. package/dist/Editor/themeSettingsAI/index.js +356 -0
  68. package/dist/Editor/themeSettingsAI/saveTheme.js +190 -0
  69. package/dist/Editor/themeSettingsAI/style.js +247 -0
  70. package/dist/Editor/utils/SlateUtilityFunctions.js +157 -25
  71. package/dist/Editor/utils/button.js +1 -17
  72. package/dist/Editor/utils/font.js +40 -37
  73. package/dist/Editor/utils/helper.js +50 -12
  74. package/package.json +1 -1
@@ -2,8 +2,11 @@ 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 } from "../../../helper/theme";
5
+ import { BREAKPOINTS_DEVICES, getBreakPointsValue, isTextCustomized as isCustomized, textThemeFields as themeFields } 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";
7
10
  import { jsx as _jsx } from "react/jsx-runtime";
8
11
  import { jsxs as _jsxs } from "react/jsx-runtime";
9
12
  function Label({
@@ -17,93 +20,194 @@ function Label({
17
20
  });
18
21
  }
19
22
  function DisplayHeaderLabel({
20
- type
23
+ type,
24
+ isCustomized,
25
+ isPara = false
21
26
  }) {
22
27
  return /*#__PURE__*/_jsxs("div", {
23
- children: ["H", /*#__PURE__*/_jsx("sub", {
28
+ children: [isCustomized ? "*" : "", isPara ? "P" : "H", /*#__PURE__*/_jsx("sub", {
24
29
  children: type
25
30
  })]
26
31
  });
27
32
  }
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, {
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
+ }),
72
171
  label: "L",
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, {
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
+ }),
83
182
  label: "M",
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, {
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
+ }),
94
193
  label: "S",
95
- type: "Small"
96
- }),
97
- label: "S",
98
- group: "typography",
99
- value: "small"
100
- }];
194
+ group: "typography",
195
+ value: "small"
196
+ }];
197
+ return typographyOptions;
198
+ }
101
199
  function SelectTypography({
102
200
  editor,
103
201
  classes,
104
- closeMainPopup
202
+ closeMainPopup,
203
+ type
105
204
  }) {
106
205
  const [size] = useWindowResize();
206
+ const {
207
+ theme
208
+ } = useEditorTheme();
209
+ const isTextCustomized = theme?.id ? isCustomized(editor) : false;
210
+ const typographyOptions = getTypographyOptions(isTextCustomized);
107
211
  const updateMarkData = newVal => {
108
212
  const val = activeMark(editor, "fontSize");
109
213
  let upData = {
@@ -148,26 +252,49 @@ function SelectTypography({
148
252
  });
149
253
  }, [typographyOptions, activeMark, isBlockActive, editor]);
150
254
  const onChange = (format, option) => {
151
- // add/reset block elements
152
- toggleBlock(editor, format);
153
255
  if (option.type === "block") {
154
- // reset old font size
155
- addMarkData(editor, {
156
- format: "fontSize",
157
- value: {}
256
+ themeFields.forEach(field => {
257
+ Editor.removeMark(editor, field);
158
258
  });
259
+
260
+ // add/reset block elements
261
+ toggleBlock(editor, format);
159
262
  } else if (option.type === "mark") {
160
263
  const size = sizeMap[option.value] || "";
161
264
  const [sizeInNumber] = size.split("px");
162
265
  updateMarkData(Number(sizeInNumber));
163
266
  }
164
267
  };
165
- return /*#__PURE__*/_jsx(CustomSelectTool, {
166
- options: typographyOptions,
167
- editor: editor,
168
- onChange: onChange,
169
- value: selectedBlock?.value || "headingOne",
170
- classes: classes
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))
171
298
  });
172
299
  }
173
300
  export default SelectTypography;
@@ -53,7 +53,8 @@ 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
56
+ closeMainPopup: closeMainPopup,
57
+ type: "miniToolBar"
57
58
  }), /*#__PURE__*/_jsx("div", {
58
59
  className: "verticalLine"
59
60
  }), /*#__PURE__*/_jsx(SelectList, {
@@ -19,7 +19,7 @@ const usePopupStyle = theme => ({
19
19
  backgroundColor: theme?.palette?.editor?.background
20
20
  },
21
21
  "&.textSettings": {
22
- '@media only screen and (max-width: 600px)': {
22
+ "@media only screen and (max-width: 600px)": {
23
23
  margin: "4px !important",
24
24
  marginBottom: "54px !important"
25
25
  }
@@ -78,7 +78,7 @@ const usePopupStyle = theme => ({
78
78
  paddingTop: "4px"
79
79
  },
80
80
  "@media only screen and (max-width: 599px)": {
81
- width: '330px'
81
+ width: "330px"
82
82
  }
83
83
  },
84
84
  "&.templates": {
@@ -89,7 +89,7 @@ const usePopupStyle = theme => ({
89
89
  maxHeight: "fit-content"
90
90
  },
91
91
  "@media only screen and (max-width: 599px)": {
92
- width: '330px'
92
+ width: "330px"
93
93
  }
94
94
  },
95
95
  "& .headerContainer": {},
@@ -144,7 +144,7 @@ const usePopupStyle = theme => ({
144
144
  }
145
145
  },
146
146
  "@media only screen and (max-width: 599px)": {
147
- width: '330px'
147
+ width: "330px"
148
148
  }
149
149
  },
150
150
  textFormatLabel: {
@@ -155,13 +155,13 @@ const usePopupStyle = theme => ({
155
155
  lineHeight: "25px",
156
156
  marginTop: "12px",
157
157
  marginBottom: "8px",
158
- '& .searchContainer': {
158
+ "& .searchContainer": {
159
159
  position: "absolute",
160
160
  right: 0,
161
161
  zIndex: 3
162
162
  },
163
- '& .MuiFormControl-root.MuiTextField-root input': {
164
- padding: '8px 35px 6px 12px'
163
+ "& .MuiFormControl-root.MuiTextField-root input": {
164
+ padding: "8px 35px 6px 12px"
165
165
  }
166
166
  },
167
167
  textFormatField: {
@@ -205,7 +205,8 @@ const usePopupStyle = theme => ({
205
205
  fontSize: "14px",
206
206
  marginBottom: "5px",
207
207
  paddingLeft: "5px",
208
- fontWeight: 500
208
+ fontWeight: 500,
209
+ color: "#000000"
209
210
  },
210
211
  templateCard: {
211
212
  borderRadius: "10px",
@@ -327,8 +328,13 @@ const usePopupStyle = theme => ({
327
328
  }
328
329
  },
329
330
  defaultBtn: {
330
- color: "#0F172A",
331
- textTransform: "none"
331
+ color: "#2563EB !important",
332
+ textTransform: "none",
333
+ textDecoration: "underline",
334
+ "&.Mui-disabled": {
335
+ color: "#A0AEC0 !important",
336
+ textDecoration: "none"
337
+ }
332
338
  },
333
339
  templateCardBtnGrp: {
334
340
  display: "none",
@@ -413,7 +419,8 @@ const usePopupStyle = theme => ({
413
419
  colorPopper: {
414
420
  "& .MuiPaper-root": {
415
421
  backgroundColor: theme?.palette?.editor?.background,
416
- '@media only screen and (max-width: 600px)': {
422
+ padding: "4px 14px",
423
+ "@media only screen and (max-width: 600px)": {
417
424
  marginTop: "-40px"
418
425
  }
419
426
  }
@@ -524,9 +531,9 @@ const usePopupStyle = theme => ({
524
531
  },
525
532
  customSelectPopoverWrapper: {
526
533
  "& .MuiPopover-paper": {
527
- maxHeight: '140px',
534
+ maxHeight: "140px",
528
535
  background: theme?.palette?.editor?.background,
529
- '@media only screen and (max-width: 600px)': {
536
+ "@media only screen and (max-width: 600px)": {
530
537
  marginTop: "-40px"
531
538
  }
532
539
  },
@@ -14,6 +14,9 @@ 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";
17
20
  import { jsx as _jsx } from "react/jsx-runtime";
18
21
  import { jsxs as _jsxs } from "react/jsx-runtime";
19
22
  const allTools = toolbarGroups.flat();
@@ -34,7 +37,6 @@ const TextFormat = props => {
34
37
  const fontAlign = allTools.filter(f => f.format?.indexOf("align") >= 0);
35
38
  const link = allTools.find(f => f.format?.indexOf("link") >= 0);
36
39
  const lists = allTools.filter(f => f.group?.indexOf("list") >= 0);
37
- const typo = allTools.filter(f => f.group?.indexOf("typography") >= 0);
38
40
  const {
39
41
  pageProps
40
42
  } = getPageSettings(editor)?.element || {};
@@ -52,6 +54,11 @@ const TextFormat = props => {
52
54
  color: "",
53
55
  bgColor: ""
54
56
  };
57
+ const {
58
+ theme,
59
+ updateTheme
60
+ } = useEditorTheme();
61
+ const customized = isTextCustomized(editor);
55
62
  const handlePageWidth = width => () => {
56
63
  updatePageSettings(editor, {
57
64
  ...(pageProps || {}),
@@ -101,6 +108,49 @@ const TextFormat = props => {
101
108
  container: true,
102
109
  sx: classes.textFormatWrapper,
103
110
  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, {
104
154
  item: true,
105
155
  xs: 12,
106
156
  children: [/*#__PURE__*/_jsxs(Grid, {
@@ -319,12 +369,7 @@ const TextFormat = props => {
319
369
  xs: 12,
320
370
  className: "typo-icons",
321
371
  sx: classes.evenSpace,
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) => {
372
+ children: [fontStyle?.map((m, i) => {
328
373
  return /*#__PURE__*/_jsx(MarkButton, {
329
374
  editor: editor,
330
375
  ...m