@flozy/editor 1.8.8 → 1.9.0
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/CommonEditor.js +8 -3
- package/dist/Editor/Elements/Colorbox/ColorboxButton.js +31 -0
- package/dist/Editor/Elements/SimpleText.js +1 -1
- package/dist/Editor/Elements/Title/title.js +2 -1
- package/dist/Editor/Styles/EditorStyles.js +1 -1
- package/dist/Editor/Toolbar/Toolbar.js +7 -0
- package/dist/Editor/Toolbar/toolbarGroups.js +6 -0
- package/dist/Editor/common/DnD/DragHandleButton.js +11 -4
- package/dist/Editor/common/Section/index.js +3 -3
- package/dist/Editor/common/StyleBuilder/fieldTypes/saveAsTemplate.js +7 -5
- package/dist/Editor/common/StyleBuilder/pageSettingsStyle.js +9 -0
- package/dist/Editor/common/Uploader.js +0 -1
- package/dist/Editor/common/iconslist.js +15 -4
- package/package.json +1 -1
|
@@ -118,7 +118,8 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
118
118
|
pageBgImage,
|
|
119
119
|
pageColor,
|
|
120
120
|
color: pageTextColor,
|
|
121
|
-
pageWidth
|
|
121
|
+
pageWidth,
|
|
122
|
+
maxWidth: pageMaxWidth
|
|
122
123
|
} = pageSt?.pageProps || {
|
|
123
124
|
bannerSpacing: {
|
|
124
125
|
left: 0,
|
|
@@ -355,13 +356,16 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
355
356
|
className: `${hasTopBanner() ? "has-topbanner" : ""}`,
|
|
356
357
|
sx: classes.slateWrapper,
|
|
357
358
|
id: "slate-wrapper-scroll-container",
|
|
359
|
+
style: {
|
|
360
|
+
background: pageColor || "#FFF"
|
|
361
|
+
},
|
|
358
362
|
children: /*#__PURE__*/_jsxs(Box, {
|
|
359
363
|
component: "div",
|
|
360
364
|
className: "max-content",
|
|
361
365
|
children: [renderTopBanner(), /*#__PURE__*/_jsx("div", {
|
|
362
366
|
className: "scroll-area",
|
|
363
367
|
style: {
|
|
364
|
-
background: pageColor || "#FFF",
|
|
368
|
+
// background: pageColor || "#FFF",
|
|
365
369
|
color: pageTextColor || "#000000"
|
|
366
370
|
},
|
|
367
371
|
children: /*#__PURE__*/_jsxs(Box, {
|
|
@@ -378,7 +382,8 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
378
382
|
alignSelf: "center",
|
|
379
383
|
transformOrigin: "left top",
|
|
380
384
|
transition: "all 0.3s",
|
|
381
|
-
minHeight: "87%"
|
|
385
|
+
minHeight: "87%",
|
|
386
|
+
maxWidth: pageMaxWidth ? `${parseInt(pageMaxWidth)}px !important` : "auto"
|
|
382
387
|
},
|
|
383
388
|
children: [!readOnly ? /*#__PURE__*/_jsx(PopupTool, {
|
|
384
389
|
onDrawerOpen: onDrawerOpen
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import ToolbarIcon from "../../common/ToolbarIcon";
|
|
3
|
+
import Icon from "../../common/Icon";
|
|
4
|
+
import { toggleBlock } from "../../utils/SlateUtilityFunctions";
|
|
5
|
+
import { useSlateStatic } from "slate-react";
|
|
6
|
+
import insertNewLine from "../../utils/insertNewLine";
|
|
7
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
|
+
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
9
|
+
const ColorboxButton = props => {
|
|
10
|
+
const editor = useSlateStatic();
|
|
11
|
+
const {
|
|
12
|
+
icoBtnType
|
|
13
|
+
} = props;
|
|
14
|
+
const onClick = () => {
|
|
15
|
+
toggleBlock(editor, "blockquote", false, {
|
|
16
|
+
bgColor: "rgb(227, 236, 255)"
|
|
17
|
+
});
|
|
18
|
+
insertNewLine(editor);
|
|
19
|
+
};
|
|
20
|
+
return /*#__PURE__*/_jsx(_Fragment, {
|
|
21
|
+
children: /*#__PURE__*/_jsx(ToolbarIcon, {
|
|
22
|
+
title: "Colorbox",
|
|
23
|
+
onClick: onClick,
|
|
24
|
+
icon: /*#__PURE__*/_jsx(Icon, {
|
|
25
|
+
icon: "colorbox"
|
|
26
|
+
}),
|
|
27
|
+
icoBtnType: icoBtnType
|
|
28
|
+
})
|
|
29
|
+
});
|
|
30
|
+
};
|
|
31
|
+
export default ColorboxButton;
|
|
@@ -28,6 +28,7 @@ import EmojiButton from "../Elements/Emoji/EmojiButton.js";
|
|
|
28
28
|
import "./styles.css";
|
|
29
29
|
import TopBannerButton from "../Elements/TopBanner/TopBannerButton.js";
|
|
30
30
|
import AttachmentsButton from "../Elements/Attachments/AttachmentsButton";
|
|
31
|
+
import ColorboxButton from "../Elements/Colorbox/ColorboxButton.js";
|
|
31
32
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
32
33
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
33
34
|
export const RenderToolbarIcon = props => {
|
|
@@ -186,6 +187,12 @@ export const RenderToolbarIcon = props => {
|
|
|
186
187
|
customProps: customProps,
|
|
187
188
|
icoBtnType: icoBtnType
|
|
188
189
|
}, element.id);
|
|
190
|
+
case "colorbox":
|
|
191
|
+
return /*#__PURE__*/_jsx(ColorboxButton, {
|
|
192
|
+
editor: editor,
|
|
193
|
+
customProps: customProps,
|
|
194
|
+
icoBtnType: icoBtnType
|
|
195
|
+
}, element.id);
|
|
189
196
|
case "docsUpload":
|
|
190
197
|
return /*#__PURE__*/_jsx(AttachmentsButton, {
|
|
191
198
|
editor: editor,
|
|
@@ -170,6 +170,12 @@ export const toolbarGroups = [[{
|
|
|
170
170
|
format: "topbanner",
|
|
171
171
|
type: "topbanner",
|
|
172
172
|
group: "elements"
|
|
173
|
+
}, {
|
|
174
|
+
id: 47,
|
|
175
|
+
format: "colorbox",
|
|
176
|
+
type: "colorbox",
|
|
177
|
+
title: "Colorbox",
|
|
178
|
+
group: "elements"
|
|
173
179
|
}, {
|
|
174
180
|
id: 42,
|
|
175
181
|
type: "table",
|
|
@@ -7,13 +7,13 @@ 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", "
|
|
10
|
+
const DRAGGABLE_TYPES = ["paragraph", "headingOne", "headingTwo", "headingThree", "grid"];
|
|
11
11
|
const DragHandleStyle = () => ({
|
|
12
12
|
dragHandle: {
|
|
13
13
|
opacity: 0,
|
|
14
14
|
content: '" "',
|
|
15
15
|
position: "absolute",
|
|
16
|
-
top: "
|
|
16
|
+
top: "0px",
|
|
17
17
|
left: "-52px",
|
|
18
18
|
borderRadius: "0px",
|
|
19
19
|
padding: "0px",
|
|
@@ -24,7 +24,7 @@ const DragHandleStyle = () => ({
|
|
|
24
24
|
alignItems: "center",
|
|
25
25
|
justifyContent: "center",
|
|
26
26
|
cursor: "grab",
|
|
27
|
-
color: "
|
|
27
|
+
color: "#D7D7D6",
|
|
28
28
|
background: "rgb(221, 221, 221, 0.1)",
|
|
29
29
|
"& svg": {
|
|
30
30
|
width: "20px"
|
|
@@ -44,11 +44,17 @@ const DragHandleStyle = () => ({
|
|
|
44
44
|
top: 0,
|
|
45
45
|
width: "100%",
|
|
46
46
|
height: "100%",
|
|
47
|
+
pointerEvents: "none",
|
|
48
|
+
zIndex: -1,
|
|
47
49
|
"&.dragging": {
|
|
48
50
|
backgroundColor: "#def4ff"
|
|
49
51
|
}
|
|
50
52
|
},
|
|
51
53
|
dropAreaOver: {
|
|
54
|
+
position: "absolute",
|
|
55
|
+
left: 0,
|
|
56
|
+
top: 0,
|
|
57
|
+
width: "100%",
|
|
52
58
|
height: "4px"
|
|
53
59
|
}
|
|
54
60
|
});
|
|
@@ -84,8 +90,9 @@ const DragHandle = props => {
|
|
|
84
90
|
setDragging(isDragging);
|
|
85
91
|
};
|
|
86
92
|
return canDraggable ? /*#__PURE__*/_jsxs("div", {
|
|
93
|
+
contentEditable: false,
|
|
87
94
|
children: [/*#__PURE__*/_jsx(Box, {
|
|
88
|
-
className: dragging ? "dragging" : ""
|
|
95
|
+
className: `drag-alert ${dragging ? "dragging" : ""}`,
|
|
89
96
|
sx: classes.dropArea
|
|
90
97
|
}), /*#__PURE__*/_jsx(Droppable, {
|
|
91
98
|
id: id,
|
|
@@ -99,7 +99,7 @@ const Section = props => {
|
|
|
99
99
|
backgroundImage: `url(${sectionBackgroundImage})`
|
|
100
100
|
} : {};
|
|
101
101
|
return path.length === 1 ? /*#__PURE__*/_jsxs(Box, {
|
|
102
|
-
component: "
|
|
102
|
+
component: "div",
|
|
103
103
|
className: `ed-section-wrapper ${readOnly ? "" : "hselect"} ${needHover}`,
|
|
104
104
|
sx: {
|
|
105
105
|
...classes.root,
|
|
@@ -121,9 +121,9 @@ const Section = props => {
|
|
|
121
121
|
...getBreakPointsValue(sectionGridSize || 8, null, "overrideGridSize", true)
|
|
122
122
|
}
|
|
123
123
|
},
|
|
124
|
-
children: [/*#__PURE__*/_jsx(DragHandle, {
|
|
124
|
+
children: [!readOnly ? /*#__PURE__*/_jsx(DragHandle, {
|
|
125
125
|
...props
|
|
126
|
-
}), children, /*#__PURE__*/_jsx(Toolbar, {})]
|
|
126
|
+
}) : null, children, /*#__PURE__*/_jsx(Toolbar, {})]
|
|
127
127
|
}), openSetttings ? /*#__PURE__*/_jsx(SectionPopup, {
|
|
128
128
|
element: {
|
|
129
129
|
...element,
|
|
@@ -32,7 +32,7 @@ const SaveAsTemplate = props => {
|
|
|
32
32
|
const file = e.target.files[0];
|
|
33
33
|
const strImage = await convertBase64(file);
|
|
34
34
|
setBase64(strImage);
|
|
35
|
-
doUpload(
|
|
35
|
+
doUpload(e.target.files[0]);
|
|
36
36
|
};
|
|
37
37
|
const onChange = e => {
|
|
38
38
|
setTemplate({
|
|
@@ -40,11 +40,13 @@ const SaveAsTemplate = props => {
|
|
|
40
40
|
[e.target.name]: e.target.value
|
|
41
41
|
});
|
|
42
42
|
};
|
|
43
|
-
const doUpload = async
|
|
43
|
+
const doUpload = async file => {
|
|
44
44
|
setUploading(true);
|
|
45
|
-
const
|
|
46
|
-
|
|
47
|
-
|
|
45
|
+
const formData = new FormData();
|
|
46
|
+
formData.set("file", file);
|
|
47
|
+
formData.set("resource_type", "pages");
|
|
48
|
+
formData.set("resource_id", customProps?.page_id);
|
|
49
|
+
const result = await uploadFile(formData, customProps);
|
|
48
50
|
setUploading(false);
|
|
49
51
|
if (result && result?.imageURL) {
|
|
50
52
|
setTemplate({
|
|
@@ -26,5 +26,14 @@ const pageSettingsStyle = [{
|
|
|
26
26
|
key: "bannerSpacing",
|
|
27
27
|
type: "bannerSpacing"
|
|
28
28
|
}]
|
|
29
|
+
}, {
|
|
30
|
+
tab: "Max Width",
|
|
31
|
+
value: "maxWidth",
|
|
32
|
+
fields: [{
|
|
33
|
+
label: "Max Width",
|
|
34
|
+
key: "maxWidth",
|
|
35
|
+
type: "text",
|
|
36
|
+
placeholder: "Maximum width of page in px"
|
|
37
|
+
}]
|
|
29
38
|
}];
|
|
30
39
|
export default pageSettingsStyle;
|
|
@@ -28,7 +28,6 @@ const Uploader = props => {
|
|
|
28
28
|
const doUpload = async (strImage, file) => {
|
|
29
29
|
setUploading(true);
|
|
30
30
|
const formData = new FormData();
|
|
31
|
-
// formData.set("image", strImage);
|
|
32
31
|
formData.set("file", file);
|
|
33
32
|
formData.set("resource_type", "pages");
|
|
34
33
|
formData.set("resource_id", customProps?.page_id);
|
|
@@ -1586,8 +1586,8 @@ export const CheckListButton = () => /*#__PURE__*/_jsx("svg", {
|
|
|
1586
1586
|
width: "23",
|
|
1587
1587
|
height: "23",
|
|
1588
1588
|
rx: "11.5",
|
|
1589
|
-
fill: "
|
|
1590
|
-
stroke: "#
|
|
1589
|
+
fill: "none",
|
|
1590
|
+
stroke: "#CCCCCC"
|
|
1591
1591
|
})
|
|
1592
1592
|
});
|
|
1593
1593
|
export const CheckListButtonActive = () => /*#__PURE__*/_jsxs("svg", {
|
|
@@ -1596,13 +1596,24 @@ export const CheckListButtonActive = () => /*#__PURE__*/_jsxs("svg", {
|
|
|
1596
1596
|
viewBox: "0 0 24 24",
|
|
1597
1597
|
fill: "none",
|
|
1598
1598
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1599
|
-
children: [/*#__PURE__*/_jsx("
|
|
1599
|
+
children: [/*#__PURE__*/_jsx("defs", {
|
|
1600
|
+
children: /*#__PURE__*/_jsxs("linearGradient", {
|
|
1601
|
+
id: "Gradient1",
|
|
1602
|
+
children: [/*#__PURE__*/_jsx("stop", {
|
|
1603
|
+
offset: "0%",
|
|
1604
|
+
stopColor: "#5351FC"
|
|
1605
|
+
}), /*#__PURE__*/_jsx("stop", {
|
|
1606
|
+
offset: "50%",
|
|
1607
|
+
stopColor: "#19A9FC"
|
|
1608
|
+
})]
|
|
1609
|
+
})
|
|
1610
|
+
}), /*#__PURE__*/_jsx("rect", {
|
|
1600
1611
|
x: "0.5",
|
|
1601
1612
|
y: "0.5",
|
|
1602
1613
|
width: "23",
|
|
1603
1614
|
height: "23",
|
|
1604
1615
|
rx: "11.5",
|
|
1605
|
-
fill: "#
|
|
1616
|
+
fill: "url(#Gradient1)"
|
|
1606
1617
|
}), /*#__PURE__*/_jsx("path", {
|
|
1607
1618
|
d: "M7.0625 12.0896L10.6849 15.7105L17.9267 8.46875",
|
|
1608
1619
|
stroke: "white",
|