@flozy/editor 11.0.9 → 11.1.1
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 +16 -17
- package/dist/Editor/CommonEditor.js +28 -141
- package/dist/Editor/DialogWrapper.js +25 -31
- package/dist/Editor/Editor.css +11 -39
- package/dist/Editor/Elements/AI/PopoverAIInput.js +3 -11
- package/dist/Editor/Elements/AI/Styles.js +0 -1
- package/dist/Editor/Elements/Accordion/Accordion.js +22 -28
- package/dist/Editor/Elements/Accordion/AccordionButton.js +3 -12
- package/dist/Editor/Elements/AppHeader/AppHeader.js +3 -3
- package/dist/Editor/Elements/Attachments/Attachments.js +11 -153
- package/dist/Editor/Elements/Attachments/AttachmentsButton.js +3 -8
- package/dist/Editor/Elements/Button/EditorButton.js +7 -23
- package/dist/Editor/Elements/Color Picker/ColorButtons.js +14 -61
- package/dist/Editor/Elements/Color Picker/ColorPicker.css +1 -25
- package/dist/Editor/Elements/Color Picker/ColorPicker.js +7 -10
- package/dist/Editor/Elements/Color Picker/Styles.js +13 -15
- package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/MultiSelect.js +454 -0
- package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/Select.js +55 -134
- package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/SelectV1.js +8 -7
- package/dist/Editor/Elements/DataView/Layouts/DataTypes/PersonType.js +3 -8
- package/dist/Editor/Elements/DataView/Layouts/Options/EditProperty.js +1 -1
- package/dist/Editor/Elements/DataView/Layouts/TableStyles.js +1 -1
- package/dist/Editor/Elements/Embed/Embed.css +0 -5
- package/dist/Editor/Elements/Embed/Embed.js +43 -36
- package/dist/Editor/Elements/Embed/Image.js +23 -242
- package/dist/Editor/Elements/Embed/Video.js +32 -277
- package/dist/Editor/Elements/Form/FormField.js +1 -1
- package/dist/Editor/Elements/Form/Workflow/Styles.js +22 -24
- package/dist/Editor/Elements/Form/Workflow/constant.js +1 -25
- package/dist/Editor/Elements/FreeGrid/FreeGrid.js +74 -31
- package/dist/Editor/Elements/FreeGrid/FreeGridBox.js +5 -9
- package/dist/Editor/Elements/FreeGrid/FreeGridItem.js +1 -3
- package/dist/Editor/Elements/FreeGrid/Options/More.js +7 -7
- package/dist/Editor/Elements/FreeGrid/styles.js +0 -15
- package/dist/Editor/Elements/Grid/GridItem.js +1 -1
- package/dist/Editor/Elements/PageSettings/PageSettingsButton.js +1 -2
- package/dist/Editor/Elements/Signature/SignaturePopup.js +6 -13
- package/dist/Editor/Elements/SimpleText/index.js +1 -4
- package/dist/Editor/Elements/SimpleText/style.js +2 -2
- package/dist/Editor/Elements/Table/Table.js +4 -5
- package/dist/Editor/Elements/Table/TableCell.js +3 -10
- package/dist/Editor/Elements/Title/title.js +11 -10
- package/dist/Editor/Elements/TopBanner/TopBanner.js +2 -4
- package/dist/Editor/Elements/TopBanner/TopBannerButton.js +3 -5
- package/dist/Editor/Elements/Variables/VariableButton.js +1 -10
- package/dist/Editor/MiniEditor.js +1 -2
- package/dist/Editor/Styles/EditorStyles.js +5 -20
- package/dist/Editor/Toolbar/FormatTools/Dropdown.js +3 -27
- package/dist/Editor/Toolbar/FormatTools/FontFamilyAutocomplete.js +3 -4
- package/dist/Editor/Toolbar/FormatTools/MarkButton.js +2 -2
- package/dist/Editor/Toolbar/FormatTools/TextSize.js +29 -33
- package/dist/Editor/Toolbar/Mini/MiniToolbar.js +1 -2
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/MiniColorPicker.js +2 -4
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +23 -25
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectList.js +7 -25
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +42 -167
- package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +8 -24
- package/dist/Editor/Toolbar/PopupTool/PopperHeader.js +1 -2
- package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +10 -70
- package/dist/Editor/Toolbar/PopupTool/TextFormat.js +14 -73
- package/dist/Editor/Toolbar/PopupTool/index.js +4 -7
- package/dist/Editor/Toolbar/toolbarGroups.js +10 -56
- package/dist/Editor/common/ColorPickerButton.js +16 -38
- package/dist/Editor/common/DnD/DragHandleButton.js +1 -1
- package/dist/Editor/common/FontLoader/FontLoader.js +0 -4
- package/dist/Editor/common/Icon.js +0 -28
- package/dist/Editor/common/ImageSelector/ImageSelector.js +7 -45
- package/dist/Editor/common/ImageSelector/Options/Upload.js +11 -26
- package/dist/Editor/common/ImageSelector/Styles.js +9 -3
- package/dist/Editor/common/LinkSettings/NavComponents.js +2 -6
- package/dist/Editor/common/MentionsPopup/index.js +1 -9
- package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Settings.js +1 -2
- package/dist/Editor/common/RnD/ElementSettings/Settings/AppHeaderSettings.js +2 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/BoxSettings.js +2 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/ButtonSettings.js +2 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/CodeSettings.js +2 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/FormSettings.js +2 -4
- package/dist/Editor/common/RnD/ElementSettings/Settings/ImageSettings.js +7 -20
- package/dist/Editor/common/RnD/ElementSettings/Settings/TableSettings.js +2 -3
- package/dist/Editor/common/RnD/ElementSettings/Settings/TextSettings.js +1 -9
- package/dist/Editor/common/RnD/ElementSettings/Settings/VideoSettings.js +7 -20
- package/dist/Editor/common/RnD/GuideLines/styles.js +1 -1
- package/dist/Editor/common/RnD/SwitchViewport/SwitchViewport.js +2 -11
- package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +3 -6
- package/dist/Editor/common/RnD/Utils/gridDropItem.js +11 -28
- package/dist/Editor/common/RnD/Utils/index.js +1 -3
- package/dist/Editor/common/RnD/VirtualElement/VirtualTextElement.js +63 -52
- package/dist/Editor/common/RnD/VirtualElement/helper.js +130 -320
- package/dist/Editor/common/RnD/VirtualElement/styles.js +0 -22
- package/dist/Editor/common/RnD/index.js +14 -61
- package/dist/Editor/common/Shorthands/elements.js +4 -62
- package/dist/Editor/common/StyleBuilder/buttonStyle.js +2 -4
- package/dist/Editor/common/StyleBuilder/embedVideoStyle.js +0 -4
- package/dist/Editor/common/StyleBuilder/fieldStyle.js +0 -1
- package/dist/Editor/common/StyleBuilder/fieldTypes/backgroundImage.js +2 -15
- package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +2 -12
- package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +7 -15
- package/dist/Editor/common/StyleBuilder/fieldTypes/card.js +8 -16
- package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +10 -36
- package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +7 -16
- package/dist/Editor/common/StyleBuilder/fieldTypes/index.js +1 -3
- package/dist/Editor/common/StyleBuilder/fieldTypes/menusArray.js +0 -2
- package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +7 -15
- package/dist/Editor/common/StyleBuilder/formStyle.js +13 -19
- package/dist/Editor/common/StyleBuilder/index.js +4 -8
- package/dist/Editor/common/Uploader.js +17 -125
- package/dist/Editor/common/iconslist.js +0 -21
- package/dist/Editor/commonStyle.js +18 -67
- package/dist/Editor/helper/index.js +2 -10
- package/dist/Editor/helper/theme.js +2 -203
- package/dist/Editor/hooks/useMouseMove.js +3 -9
- package/dist/Editor/hooks/useTable.js +1 -62
- package/dist/Editor/plugins/withEmbeds.js +1 -12
- package/dist/Editor/plugins/withHTML.js +3 -58
- package/dist/Editor/plugins/withTable.js +1 -1
- package/dist/Editor/service/fileupload.js +0 -70
- package/dist/Editor/theme/ThemeList.js +173 -50
- package/dist/Editor/utils/SlateUtilityFunctions.js +40 -191
- package/dist/Editor/utils/accordion.js +39 -67
- package/dist/Editor/utils/button.js +17 -1
- package/dist/Editor/utils/draftToSlate.js +2 -3
- package/dist/Editor/utils/events.js +89 -94
- package/dist/Editor/utils/font.js +37 -40
- package/dist/Editor/utils/helper.js +23 -100
- package/dist/Editor/utils/insertAppHeader.js +4 -8
- package/package.json +4 -4
- package/dist/Editor/Elements/Attachments/AttachmentStyles.js +0 -16
- package/dist/Editor/Elements/FreeGrid/helper.js +0 -194
- package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +0 -439
- package/dist/Editor/assets/svg/BackIcon.js +0 -18
- package/dist/Editor/assets/svg/ThemeIcons.js +0 -293
- package/dist/Editor/common/CustomColorPicker/index.js +0 -130
- package/dist/Editor/common/CustomColorPicker/style.js +0 -53
- package/dist/Editor/common/CustomDialog2/index.js +0 -94
- package/dist/Editor/common/CustomDialog2/style.js +0 -67
- package/dist/Editor/common/CustomSelect.js +0 -43
- package/dist/Editor/common/RnD/Theme/MainThemeProvider.js +0 -17
- package/dist/Editor/common/StyleBuilder/fieldTypes/embedUpload.js +0 -115
- package/dist/Editor/common/UploaderWithProgress.js +0 -183
- package/dist/Editor/helper/textIndeces.js +0 -58
- package/dist/Editor/hooks/useEditorTheme.js +0 -153
- package/dist/Editor/hooks/useThemeValues.js +0 -63
- package/dist/Editor/theme/index.js +0 -149
- package/dist/Editor/themeSettings/ActiveTheme.js +0 -82
- package/dist/Editor/themeSettings/buttons/index.js +0 -300
- package/dist/Editor/themeSettings/buttons/style.js +0 -23
- package/dist/Editor/themeSettings/colorTheme/index.js +0 -310
- package/dist/Editor/themeSettings/colorTheme/style.js +0 -81
- package/dist/Editor/themeSettings/fonts/PreviewElement.js +0 -121
- package/dist/Editor/themeSettings/fonts/index.js +0 -240
- package/dist/Editor/themeSettings/fonts/style.js +0 -62
- package/dist/Editor/themeSettings/icons.js +0 -60
- package/dist/Editor/themeSettings/index.js +0 -380
- package/dist/Editor/themeSettings/style.js +0 -299
- package/dist/Editor/themeSettingsAI/icons.js +0 -96
- package/dist/Editor/themeSettingsAI/index.js +0 -355
- package/dist/Editor/themeSettingsAI/saveTheme.js +0 -202
- package/dist/Editor/themeSettingsAI/style.js +0 -332
@@ -1,15 +1,9 @@
|
|
1
1
|
import React, { useState, useEffect, useRef } from "react";
|
2
2
|
import { useSlateStatic, ReactEditor } from "slate-react";
|
3
3
|
import { Node, Transforms } from "slate";
|
4
|
-
import IconButton from "@mui/material
|
5
|
-
import Tooltip from "@mui/material/Tooltip";
|
6
|
-
import Box from "@mui/material/Box";
|
7
|
-
import useTheme from "@mui/material/styles/useTheme";
|
8
|
-
import Grid from "@mui/material/Grid";
|
9
|
-
import CircularProgress from "@mui/material/CircularProgress";
|
4
|
+
import { IconButton, Tooltip, Box, useTheme } from "@mui/material";
|
10
5
|
import DeleteIcon from "@mui/icons-material/Delete";
|
11
6
|
import AspectRatioIcon from "@mui/icons-material/AspectRatio";
|
12
|
-
import HighlightOffRoundedIcon from "@mui/icons-material/HighlightOffRounded";
|
13
7
|
import Icon from "../../common/Icon";
|
14
8
|
import useResize from "../../utils/customHooks/useResize";
|
15
9
|
import EmbedPopup from "./EmbedPopup";
|
@@ -19,19 +13,13 @@ import { getEmbedURL } from "../../helper";
|
|
19
13
|
import { getBreakPointsValue, getTRBLBreakPoints, groupByBreakpoint } from "../../helper/theme";
|
20
14
|
import { useEditorContext } from "../../hooks/useMouseMove";
|
21
15
|
import useCommonStyle from "../../commonStyle";
|
22
|
-
import ImageSelector from "../../common/ImageSelector/ImageSelector";
|
23
16
|
import { jsx as _jsx } from "react/jsx-runtime";
|
24
17
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
25
|
-
import { Fragment as _Fragment } from "react/jsx-runtime";
|
26
18
|
const TYPE_LABELS = {
|
27
19
|
calendly: "Embed Calendly or Other",
|
28
20
|
video: "Embed Video or Other",
|
29
21
|
image: "Embed Image or Other"
|
30
22
|
};
|
31
|
-
const detectUrlType = url => {
|
32
|
-
if (typeof url !== "string") return "iframe";
|
33
|
-
return /\.(mp4|webm|ogg|mov|avi|mkv|flv|wmv)$/i.test(url.trim()) ? "video" : "iframe";
|
34
|
-
};
|
35
23
|
const VideoContent = props => {
|
36
24
|
const {
|
37
25
|
resizing,
|
@@ -44,26 +32,12 @@ const VideoContent = props => {
|
|
44
32
|
videoSX
|
45
33
|
} = props;
|
46
34
|
const iframeRef = useRef(null);
|
47
|
-
const mediaType = detectUrlType(embedURL);
|
48
35
|
useEffect(() => {
|
49
36
|
if (iframeRef.current) {
|
50
37
|
iframeRef.current.src = "about:blank"; // reloading the iframe
|
51
38
|
iframeRef.current.src = embedURL;
|
52
39
|
}
|
53
40
|
}, [embedURL, iframeRef.current]);
|
54
|
-
const commonSx = {
|
55
|
-
border: "none",
|
56
|
-
position: "absolute",
|
57
|
-
width: "100%",
|
58
|
-
height: "100%",
|
59
|
-
maxWidth: "100%",
|
60
|
-
left: 0,
|
61
|
-
...(gradientBorder(borderColor) || {}),
|
62
|
-
borderWidth: borderWidth || "1px",
|
63
|
-
borderStyle: borderStyle || "solid",
|
64
|
-
background: bgColor || "transparent",
|
65
|
-
...videoSX
|
66
|
-
};
|
67
41
|
return resizing ? /*#__PURE__*/_jsx("div", {
|
68
42
|
style: {
|
69
43
|
width: "100%",
|
@@ -77,14 +51,24 @@ const VideoContent = props => {
|
|
77
51
|
icon: "videoPlayer"
|
78
52
|
})
|
79
53
|
}) : /*#__PURE__*/_jsx(Box, {
|
80
|
-
|
81
|
-
|
82
|
-
src: embedURL,
|
83
|
-
controls: mediaType === "video",
|
84
|
-
allowFullScreen: mediaType === "iframe",
|
54
|
+
ref: iframeRef,
|
55
|
+
component: "iframe",
|
85
56
|
className: "embedd-iframe",
|
86
|
-
sx:
|
87
|
-
|
57
|
+
sx: {
|
58
|
+
border: "none",
|
59
|
+
position: "absolute",
|
60
|
+
width: "100%",
|
61
|
+
height: "100%",
|
62
|
+
maxWidth: "100%",
|
63
|
+
left: "0px",
|
64
|
+
...(gradientBorder(borderColor) || {}),
|
65
|
+
borderWidth: borderWidth || "1px",
|
66
|
+
borderStyle: borderStyle || "solid",
|
67
|
+
background: bgColor || "transparent",
|
68
|
+
...videoSX
|
69
|
+
},
|
70
|
+
title: alt,
|
71
|
+
allowFullScreen: true
|
88
72
|
});
|
89
73
|
};
|
90
74
|
const VideoPlaceholder = props => {
|
@@ -94,104 +78,18 @@ const VideoPlaceholder = props => {
|
|
94
78
|
onSettings,
|
95
79
|
classes,
|
96
80
|
type,
|
97
|
-
translation
|
98
|
-
uploadStatus,
|
99
|
-
setUploadStatus,
|
100
|
-
uploadTerminator,
|
101
|
-
uniqueId,
|
102
|
-
editor,
|
103
|
-
path,
|
104
|
-
embedURL
|
81
|
+
translation
|
105
82
|
} = props;
|
106
|
-
|
107
|
-
e.stopPropagation();
|
108
|
-
uploadTerminator(uniqueId, setUploadStatus);
|
109
|
-
Transforms.setNodes(editor, {
|
110
|
-
isUpload: false,
|
111
|
-
isUploading: false,
|
112
|
-
file: null
|
113
|
-
}, {
|
114
|
-
at: path
|
115
|
-
});
|
116
|
-
};
|
117
|
-
return !url ? !readOnly ? /*#__PURE__*/_jsx(Box, {
|
83
|
+
return !url ? !readOnly ? /*#__PURE__*/_jsxs(Box, {
|
118
84
|
component: "button",
|
119
85
|
className: "element-empty-btn",
|
120
|
-
onClick:
|
86
|
+
onClick: onSettings,
|
121
87
|
sx: {
|
122
88
|
...classes.emptyThumbBtn
|
123
89
|
},
|
124
|
-
children:
|
125
|
-
|
126
|
-
|
127
|
-
style: {
|
128
|
-
display: "flex",
|
129
|
-
justifyContent: "space-between"
|
130
|
-
},
|
131
|
-
children: [/*#__PURE__*/_jsx(Grid, {
|
132
|
-
style: {
|
133
|
-
width: "80%"
|
134
|
-
},
|
135
|
-
children: /*#__PURE__*/_jsxs(Grid, {
|
136
|
-
container: true,
|
137
|
-
direction: "row",
|
138
|
-
sx: {
|
139
|
-
justifyContent: "flex-start",
|
140
|
-
alignItems: "center"
|
141
|
-
// gap: 1,
|
142
|
-
},
|
143
|
-
children: [/*#__PURE__*/_jsx(Grid, {
|
144
|
-
children: /*#__PURE__*/_jsx(Icon, {
|
145
|
-
icon: "image"
|
146
|
-
})
|
147
|
-
}), /*#__PURE__*/_jsx(Grid, {
|
148
|
-
style: {
|
149
|
-
width: "80%"
|
150
|
-
},
|
151
|
-
children: /*#__PURE__*/_jsxs(Box, {
|
152
|
-
display: "flex",
|
153
|
-
flexDirection: "column",
|
154
|
-
alignItems: "flex-start",
|
155
|
-
justifyContent: "flex-start",
|
156
|
-
children: [/*#__PURE__*/_jsx(Box, {
|
157
|
-
className: "truncateText",
|
158
|
-
children: uploadStatus?.fileName
|
159
|
-
}), /*#__PURE__*/_jsxs(Box, {
|
160
|
-
display: "flex",
|
161
|
-
alignItems: "center",
|
162
|
-
gap: 1,
|
163
|
-
marginTop: 1,
|
164
|
-
children: [/*#__PURE__*/_jsx(Box, {
|
165
|
-
children: uploadStatus?.fileSize
|
166
|
-
}), /*#__PURE__*/_jsx(CircularProgress, {
|
167
|
-
variant: "determinate",
|
168
|
-
value: uploadStatus?.uploadPercentage ?? 0,
|
169
|
-
className: "circularProgress-cls",
|
170
|
-
size: 15,
|
171
|
-
thickness: 8
|
172
|
-
}), /*#__PURE__*/_jsx(Box, {
|
173
|
-
children: `${uploadStatus?.uploadPercentage?.toFixed(0) ?? 0}%`
|
174
|
-
})]
|
175
|
-
})]
|
176
|
-
})
|
177
|
-
})]
|
178
|
-
})
|
179
|
-
}), /*#__PURE__*/_jsx(Grid, {
|
180
|
-
children: /*#__PURE__*/_jsx(HighlightOffRoundedIcon, {
|
181
|
-
className: "uploadCancel",
|
182
|
-
sx: {
|
183
|
-
cursor: "pointer"
|
184
|
-
},
|
185
|
-
onClick: e => {
|
186
|
-
cancelUpload(e);
|
187
|
-
}
|
188
|
-
})
|
189
|
-
})]
|
190
|
-
}) : /*#__PURE__*/_jsxs(_Fragment, {
|
191
|
-
children: [/*#__PURE__*/_jsx(Icon, {
|
192
|
-
icon: "video"
|
193
|
-
}), TYPE_LABELS[type] || translation("Embed Video or Other")]
|
194
|
-
})
|
90
|
+
children: [/*#__PURE__*/_jsx(Icon, {
|
91
|
+
icon: "video"
|
92
|
+
}), TYPE_LABELS[type] || translation("Embed Video or Other")]
|
195
93
|
}) : /*#__PURE__*/_jsxs(Box, {
|
196
94
|
sx: {
|
197
95
|
color: "#64748B !important",
|
@@ -222,23 +120,14 @@ const Video = ({
|
|
222
120
|
xsHidden,
|
223
121
|
width: oldWidth,
|
224
122
|
bannerSpacing,
|
225
|
-
aspectRatio
|
226
|
-
file,
|
227
|
-
isUploading,
|
228
|
-
uniqueId,
|
229
|
-
fromFreeGrid
|
123
|
+
aspectRatio
|
230
124
|
} = element;
|
231
125
|
const editor = useSlateStatic();
|
232
126
|
const [openSetttings, setOpenSettings] = useState(false);
|
233
127
|
const [parentDOM, setParentDOM] = useState(null);
|
234
128
|
const {
|
235
129
|
readOnly,
|
236
|
-
translation
|
237
|
-
services,
|
238
|
-
uploadFile,
|
239
|
-
resumeUploadState,
|
240
|
-
uploadTerminator,
|
241
|
-
isUploadInProgress = () => false
|
130
|
+
translation
|
242
131
|
} = customProps;
|
243
132
|
const {
|
244
133
|
vertical,
|
@@ -259,63 +148,6 @@ const Video = ({
|
|
259
148
|
return element?.size || {};
|
260
149
|
}
|
261
150
|
};
|
262
|
-
const xhrRef = useRef(null);
|
263
|
-
const [openUploadPopup, setUploadPopupOpen] = useState(false);
|
264
|
-
const [uploadStatus, setUploadStatus] = useState({
|
265
|
-
isUploading: false,
|
266
|
-
uploadPercentage: 0
|
267
|
-
});
|
268
|
-
const onClickUpload = () => {
|
269
|
-
setUploadPopupOpen(true);
|
270
|
-
};
|
271
|
-
const onSelectVideo = async video => {
|
272
|
-
handleClose();
|
273
|
-
let finalURL = null;
|
274
|
-
try {
|
275
|
-
if (video?.isUpload === false) {
|
276
|
-
finalURL = video?.embedURL;
|
277
|
-
} else {
|
278
|
-
const id = !uniqueId ? crypto?.randomUUID() : uniqueId;
|
279
|
-
const result = await services("uploadFile", video?.file);
|
280
|
-
const uploadUrl = result?.data?.[0];
|
281
|
-
const fileEntry = {
|
282
|
-
...video,
|
283
|
-
xhrRef,
|
284
|
-
presidnedURL: uploadUrl,
|
285
|
-
status: "uploading"
|
286
|
-
};
|
287
|
-
uploadFile(id, fileEntry, setUploadStatus, onSave, "video");
|
288
|
-
if (!fromFreeGrid) {
|
289
|
-
Transforms.setNodes(editor, {
|
290
|
-
uniqueId: id,
|
291
|
-
isUploading: true
|
292
|
-
}, {
|
293
|
-
at: path
|
294
|
-
});
|
295
|
-
} else {
|
296
|
-
Transforms.setNodes(editor, {
|
297
|
-
isUploading: true
|
298
|
-
}, {
|
299
|
-
at: path
|
300
|
-
});
|
301
|
-
}
|
302
|
-
}
|
303
|
-
if (finalURL) {
|
304
|
-
const updateObject = {
|
305
|
-
...element,
|
306
|
-
url: finalURL
|
307
|
-
};
|
308
|
-
onSave(updateObject);
|
309
|
-
} else {
|
310
|
-
return;
|
311
|
-
}
|
312
|
-
} catch (error) {
|
313
|
-
console.log(error);
|
314
|
-
}
|
315
|
-
};
|
316
|
-
const handleClose = () => {
|
317
|
-
setUploadPopupOpen(false);
|
318
|
-
};
|
319
151
|
const [size, onMouseDown, resizing, onLoad] = useResize({
|
320
152
|
parentDOM,
|
321
153
|
size: getSize(),
|
@@ -329,49 +161,12 @@ const Video = ({
|
|
329
161
|
});
|
330
162
|
const arr = Array.from(Node.elements(editor));
|
331
163
|
const ele = arr.find(([elem]) => element === elem);
|
332
|
-
const noUploadTracks = () => {
|
333
|
-
setUploadStatus({
|
334
|
-
isUploading: false,
|
335
|
-
uploadPercentage: 0,
|
336
|
-
fileName: null,
|
337
|
-
fileSize: null
|
338
|
-
});
|
339
|
-
};
|
340
|
-
useEffect(() => {
|
341
|
-
const isUploading = isUploadInProgress(uniqueId);
|
342
|
-
if (fromFreeGrid) {
|
343
|
-
if (isUploading) {
|
344
|
-
resumeUploadState(uniqueId, setUploadStatus, onSave, noUploadTracks, "image");
|
345
|
-
} else {
|
346
|
-
if (!isUploading && file) {
|
347
|
-
onSelectVideo({
|
348
|
-
file: file
|
349
|
-
});
|
350
|
-
}
|
351
|
-
}
|
352
|
-
}
|
353
|
-
return () => {
|
354
|
-
// Transforms.setNodes(editor, { isUploading: false }, { at: path });
|
355
|
-
};
|
356
|
-
}, [uniqueId, isUploading, file]);
|
357
164
|
useEffect(() => {
|
358
165
|
if (editor && ele && ele[1] !== undefined) {
|
359
166
|
const dom = ReactEditor.toDOMNode(editor, Node.get(editor, ele[1]));
|
360
167
|
setParentDOM(dom);
|
361
168
|
onLoad(element?.size || {});
|
362
169
|
}
|
363
|
-
if (!fromFreeGrid) {
|
364
|
-
if (uniqueId && isUploading) {
|
365
|
-
resumeUploadState(uniqueId, setUploadStatus, onSave, noUploadTracks, "video");
|
366
|
-
} else if (file && isUploading) {
|
367
|
-
onSelectVideo({
|
368
|
-
file: file
|
369
|
-
});
|
370
|
-
}
|
371
|
-
}
|
372
|
-
return () => {
|
373
|
-
// xhrRef?.current?.abort();
|
374
|
-
};
|
375
170
|
}, []);
|
376
171
|
const ToolBar = () => {
|
377
172
|
return /*#__PURE__*/_jsxs("div", {
|
@@ -399,34 +194,12 @@ const Video = ({
|
|
399
194
|
};
|
400
195
|
const onSave = data => {
|
401
196
|
try {
|
402
|
-
|
403
|
-
|
404
|
-
|
405
|
-
url: data,
|
406
|
-
isUploading: false
|
407
|
-
};
|
408
|
-
} else if (typeof data?.url !== "string") {
|
409
|
-
updateData = {
|
410
|
-
...data,
|
411
|
-
url: ""
|
412
|
-
};
|
413
|
-
onSelectVideo({
|
414
|
-
file: data?.url?.file,
|
415
|
-
isUpload: true,
|
416
|
-
setUploadStatus,
|
417
|
-
services: customProps?.services
|
418
|
-
});
|
419
|
-
} else {
|
420
|
-
updateData = data;
|
421
|
-
}
|
197
|
+
const updateData = {
|
198
|
+
...data
|
199
|
+
};
|
422
200
|
delete updateData.children;
|
423
|
-
Transforms.select(editor, path);
|
424
|
-
ReactEditor.focus(editor);
|
425
201
|
Transforms.setNodes(editor, {
|
426
|
-
...updateData
|
427
|
-
isUpload: false,
|
428
|
-
isUploading: false,
|
429
|
-
file: null
|
202
|
+
...updateData
|
430
203
|
}, {
|
431
204
|
at: path
|
432
205
|
});
|
@@ -508,19 +281,13 @@ const Video = ({
|
|
508
281
|
children: [!readOnly && url && /*#__PURE__*/_jsx(ToolBar, {}), /*#__PURE__*/_jsx(VideoPlaceholder, {
|
509
282
|
...element,
|
510
283
|
embedURL: embedURL,
|
511
|
-
onSettings:
|
284
|
+
onSettings: onSettings,
|
512
285
|
videoSX: videoSX,
|
513
286
|
url: url,
|
514
287
|
readOnly: readOnly,
|
515
288
|
resizing: resizing,
|
516
289
|
classes: classes,
|
517
|
-
translation: translation
|
518
|
-
uploadStatus: uploadStatus,
|
519
|
-
setUploadStatus: setUploadStatus,
|
520
|
-
uploadTerminator: uploadTerminator,
|
521
|
-
uniqueId: uniqueId,
|
522
|
-
editor: editor,
|
523
|
-
path: path
|
290
|
+
translation: translation
|
524
291
|
}), !readOnly && url ? /*#__PURE__*/_jsx(IconButton, {
|
525
292
|
onPointerDown: onMouseDown,
|
526
293
|
style: {
|
@@ -528,18 +295,6 @@ const Video = ({
|
|
528
295
|
},
|
529
296
|
className: "resize-br visible-on-hover",
|
530
297
|
children: /*#__PURE__*/_jsx(AspectRatioIcon, {})
|
531
|
-
}) : null, openUploadPopup ? /*#__PURE__*/_jsx(ImageSelector, {
|
532
|
-
open: true,
|
533
|
-
Add: true,
|
534
|
-
commentMore: true,
|
535
|
-
actions: true,
|
536
|
-
title: "Video",
|
537
|
-
onClose: handleClose,
|
538
|
-
customProps: customProps,
|
539
|
-
onSelectImage: onSelectVideo,
|
540
|
-
setUploadPopupOpen: setUploadPopupOpen,
|
541
|
-
setUploadStatus: setUploadStatus,
|
542
|
-
xhrRef: xhrRef
|
543
298
|
}) : null]
|
544
299
|
}), children]
|
545
300
|
});
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import React, { useState } from "react";
|
2
|
-
import { Transforms } from "slate";
|
2
|
+
import { Transforms, Node } from "slate";
|
3
3
|
import { useSlateStatic, ReactEditor } from "slate-react";
|
4
4
|
import { IconButton, Tooltip, Grid, useTheme } from "@mui/material";
|
5
5
|
import FormElements from "./FormElements";
|
@@ -9,20 +9,20 @@ const FormStyles = theme => ({
|
|
9
9
|
color: "#94A3B8"
|
10
10
|
},
|
11
11
|
bodyTextArea: {
|
12
|
-
|
13
|
-
padding:
|
14
|
-
|
15
|
-
outline:
|
16
|
-
border:
|
12
|
+
'& .mini-editor-cls': {
|
13
|
+
padding: '12px',
|
14
|
+
'&:focus-visible': {
|
15
|
+
outline: 'none',
|
16
|
+
border: 'none'
|
17
17
|
}
|
18
18
|
},
|
19
19
|
"& .editorWorkflow": {
|
20
|
-
minHeight:
|
21
|
-
padding:
|
20
|
+
minHeight: '130px',
|
21
|
+
padding: '12px',
|
22
22
|
paddingBottom: 0,
|
23
|
-
|
24
|
-
outline:
|
25
|
-
border:
|
23
|
+
'&:focus-visible': {
|
24
|
+
outline: 'none',
|
25
|
+
border: 'none'
|
26
26
|
}
|
27
27
|
}
|
28
28
|
},
|
@@ -105,7 +105,7 @@ const FormStyles = theme => ({
|
|
105
105
|
padding: "4px 22px",
|
106
106
|
textTransform: "none",
|
107
107
|
border: "1px solid #D8DDE1",
|
108
|
-
minWidth:
|
108
|
+
minWidth: '126px',
|
109
109
|
"& svg": {
|
110
110
|
"& path": {
|
111
111
|
stroke: "#64748B"
|
@@ -169,19 +169,17 @@ const FormStyles = theme => ({
|
|
169
169
|
}
|
170
170
|
},
|
171
171
|
colorButtonSingle: {
|
172
|
-
border: "1.5px solid #DCE4EC !important",
|
173
172
|
"&.active": {
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
outline: "2px solid #2563EB"
|
173
|
+
"&:before": {
|
174
|
+
content: '" "',
|
175
|
+
position: "absolute",
|
176
|
+
top: "-5px",
|
177
|
+
left: "-5px",
|
178
|
+
width: "calc(100% + 4px)",
|
179
|
+
height: "calc(100% + 4px)",
|
180
|
+
border: "3px solid blue",
|
181
|
+
borderRadius: "50%"
|
182
|
+
}
|
185
183
|
}
|
186
184
|
},
|
187
185
|
colorButtonsInner: {
|
@@ -251,7 +249,7 @@ const FormStyles = theme => ({
|
|
251
249
|
}
|
252
250
|
},
|
253
251
|
root: {
|
254
|
-
padding:
|
252
|
+
padding: '10px'
|
255
253
|
}
|
256
254
|
});
|
257
255
|
export default FormStyles;
|
@@ -1,27 +1,3 @@
|
|
1
1
|
export const minutes = [30, 35, 40, 45, 50, 55];
|
2
2
|
export const hours = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23];
|
3
|
-
export const days = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31];
|
4
|
-
export const allowedFormat = {
|
5
|
-
Document: ".pdf,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.txt,.rtf",
|
6
|
-
Image: "image/*",
|
7
|
-
Video: ".mp4,.webm,.ogg,.mov,.avi,.mkv",
|
8
|
-
Embed: "*"
|
9
|
-
};
|
10
|
-
export const maxSizeMap = {
|
11
|
-
Image: 25 * 1024 * 1024,
|
12
|
-
// Test -> 5 * 1024 * 1024 -> 5MB
|
13
|
-
Video: 1024 * 1024 * 1024,
|
14
|
-
Document: 25 * 1024 * 1024,
|
15
|
-
Embed: Infinity
|
16
|
-
};
|
17
|
-
export const allowedTypes = {
|
18
|
-
Document: ["application/pdf", "application/msword", "application/vnd.openxmlformats-officedocument.wordprocessingml.document", "application/vnd.ms-excel", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "application/vnd.ms-powerpoint", "application/vnd.openxmlformats-officedocument.presentationml.presentation", "text/plain", "application/rtf"],
|
19
|
-
Image: ["image/jpeg", "image/png", "image/gif", "image/webp", "image/svg+xml"],
|
20
|
-
Video: ["video/mp4", "video/webm", "video/ogg", "video/quicktime", "video/x-msvideo", "video/x-matroska"],
|
21
|
-
Embed: ["*"]
|
22
|
-
};
|
23
|
-
export const extensionMap = {
|
24
|
-
Video: ["mp4", "webm", "ogg", "mov", "avi", "mkv"],
|
25
|
-
Image: ["jpg", "jpeg", "png", "gif", "webp", "svg"],
|
26
|
-
Document: ["pdf", "doc", "docx", "xls", "xlsx", "ppt", "pptx", "txt", "rtf"]
|
27
|
-
};
|
3
|
+
export const days = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31];
|