@flozy/editor 3.6.5 → 3.6.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Editor/ChatEditor.js +202 -0
- package/dist/Editor/CommonEditor.js +166 -109
- package/dist/Editor/Elements/AppHeader/AppHeader.js +39 -15
- package/dist/Editor/Elements/Button/EditorButton.js +25 -14
- package/dist/Editor/Elements/Color Picker/ColorButtons.js +60 -17
- package/dist/Editor/Elements/Color Picker/ColorPicker.css +25 -1
- package/dist/Editor/Elements/Color Picker/ColorPicker.js +4 -4
- package/dist/Editor/Elements/Color Picker/Styles.js +2 -1
- package/dist/Editor/Elements/Embed/Frames/ImageFrame.js +1 -0
- package/dist/Editor/Elements/Emoji/EmojiButton.js +2 -2
- package/dist/Editor/Elements/Emoji/EmojiPicker.js +16 -0
- package/dist/Editor/Elements/Form/Workflow/UserInputs.js +2 -1
- package/dist/Editor/Elements/Grid/Grid.js +2 -0
- package/dist/Editor/Elements/Grid/GridItem.js +3 -1
- package/dist/Editor/Elements/Link/Link.js +6 -1
- package/dist/Editor/Elements/Link/LinkButton.js +4 -2
- package/dist/Editor/Elements/Link/LinkPopup.js +11 -3
- package/dist/Editor/Elements/Link/LinkPopupStyles.js +28 -0
- package/dist/Editor/Elements/Table/TableCell.js +1 -1
- package/dist/Editor/MiniEditor.js +3 -1
- package/dist/Editor/Toolbar/Basic/index.js +4 -2
- package/dist/Editor/Toolbar/FormatTools/Dropdown.js +26 -2
- package/dist/Editor/Toolbar/FormatTools/MarkButton.js +2 -2
- package/dist/Editor/Toolbar/FormatTools/TextSize.js +5 -11
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +4 -11
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +213 -86
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +2 -1
- package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +20 -13
- package/dist/Editor/Toolbar/PopupTool/TextFormat.js +52 -7
- package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +438 -0
- package/dist/Editor/Toolbar/PopupTool/index.js +9 -2
- package/dist/Editor/Toolbar/toolbarGroups.js +48 -6
- package/dist/Editor/assets/svg/ThemeIcons.js +291 -0
- package/dist/Editor/common/ColorPickerButton.js +25 -9
- package/dist/Editor/common/CustomColorPicker/index.js +106 -0
- package/dist/Editor/common/CustomColorPicker/style.js +53 -0
- package/dist/Editor/common/CustomDialog/index.js +94 -0
- package/dist/Editor/common/CustomDialog/style.js +67 -0
- package/dist/Editor/common/CustomSelect.js +33 -0
- package/dist/Editor/common/DnD/DragHandleButton.js +1 -1
- package/dist/Editor/common/Icon.js +30 -2
- package/dist/Editor/common/LinkSettings/NavComponents.js +54 -20
- package/dist/Editor/common/Shorthands/elements.js +54 -0
- package/dist/Editor/common/StyleBuilder/buttonStyle.js +4 -2
- package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +13 -3
- package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +15 -7
- package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +31 -7
- package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +13 -4
- package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +14 -4
- package/dist/Editor/common/StyleBuilder/index.js +1 -1
- package/dist/Editor/helper/theme.js +190 -4
- package/dist/Editor/hooks/useEditorTheme.js +139 -0
- package/dist/Editor/hooks/useMouseMove.js +4 -1
- package/dist/Editor/plugins/withEmbeds.js +1 -1
- package/dist/Editor/plugins/withHTML.js +47 -5
- package/dist/Editor/plugins/withTable.js +1 -1
- package/dist/Editor/theme/ThemeList.js +50 -173
- package/dist/Editor/theme/index.js +144 -0
- package/dist/Editor/themeSettings/ActiveTheme.js +72 -0
- package/dist/Editor/themeSettings/buttons/index.js +290 -0
- package/dist/Editor/themeSettings/buttons/style.js +21 -0
- package/dist/Editor/themeSettings/colorTheme/index.js +290 -0
- package/dist/Editor/themeSettings/colorTheme/style.js +77 -0
- package/dist/Editor/themeSettings/fonts/PreviewElement.js +123 -0
- package/dist/Editor/themeSettings/fonts/index.js +213 -0
- package/dist/Editor/themeSettings/fonts/style.js +44 -0
- package/dist/Editor/themeSettings/icons.js +60 -0
- package/dist/Editor/themeSettings/index.js +320 -0
- package/dist/Editor/themeSettings/style.js +152 -0
- package/dist/Editor/themeSettingsAI/icons.js +96 -0
- package/dist/Editor/themeSettingsAI/index.js +356 -0
- package/dist/Editor/themeSettingsAI/saveTheme.js +190 -0
- package/dist/Editor/themeSettingsAI/style.js +247 -0
- package/dist/Editor/utils/SlateUtilityFunctions.js +157 -25
- package/dist/Editor/utils/button.js +1 -17
- package/dist/Editor/utils/chatEditor/SlateUtilityFunctions.js +361 -0
- package/dist/Editor/utils/font.js +40 -37
- package/dist/Editor/utils/helper.js +83 -22
- package/dist/Editor/utils/serializeToHTML.js +25 -13
- package/dist/index.js +5 -1
- package/package.json +1 -1
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { useEffect, useRef, useState } from "react";
|
|
2
|
-
import { activeMark, addMarkData
|
|
2
|
+
import { activeMark, addMarkData } 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 } from "../../../helper/theme";
|
|
7
|
-
import { headingMap, sizeMap } from "../../../utils/font";
|
|
6
|
+
import { BREAKPOINTS_DEVICES, getBreakPointsValue, getTextSizeVal } from "../../../helper/theme";
|
|
8
7
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
9
8
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
10
9
|
const fontSizeOptions = [8, 9, 10, 11, 12, 14, 16, 18, 20, 22, 26, 32, 36, 40, 48, 64, 96, 128];
|
|
@@ -19,7 +18,7 @@ function SelectFontSize({
|
|
|
19
18
|
const containerRef = useRef();
|
|
20
19
|
const [size] = useWindowResize();
|
|
21
20
|
const val = activeMark(editor, format);
|
|
22
|
-
const value =
|
|
21
|
+
const value = getTextSizeVal(editor);
|
|
23
22
|
const timerRef = useRef();
|
|
24
23
|
const updateMarkData = newVal => {
|
|
25
24
|
let upData = {
|
|
@@ -53,13 +52,7 @@ function SelectFontSize({
|
|
|
53
52
|
};
|
|
54
53
|
const getSizeVal = () => {
|
|
55
54
|
try {
|
|
56
|
-
|
|
57
|
-
Object.entries(headingMap).forEach(([format, value]) => {
|
|
58
|
-
if (isBlockActive(editor, format) && isNaN(parseInt(size))) {
|
|
59
|
-
size = value;
|
|
60
|
-
}
|
|
61
|
-
});
|
|
62
|
-
return parseInt(size);
|
|
55
|
+
return parseInt(value);
|
|
63
56
|
} catch (err) {
|
|
64
57
|
return "";
|
|
65
58
|
}
|
|
@@ -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
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
},
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
type: "
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
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
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
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
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
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
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
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
|
-
|
|
155
|
-
|
|
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
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
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
|
-
|
|
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:
|
|
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:
|
|
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:
|
|
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
|
-
|
|
158
|
+
"& .searchContainer": {
|
|
159
159
|
position: "absolute",
|
|
160
160
|
right: 0,
|
|
161
161
|
zIndex: 3
|
|
162
162
|
},
|
|
163
|
-
|
|
164
|
-
padding:
|
|
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: "#
|
|
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
|
-
|
|
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:
|
|
534
|
+
maxHeight: "140px",
|
|
528
535
|
background: theme?.palette?.editor?.background,
|
|
529
|
-
|
|
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: [
|
|
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
|