@flozy/editor 11.0.1 → 11.0.3
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 +16 -129
- package/dist/Editor/DialogWrapper.js +25 -31
- package/dist/Editor/Editor.css +8 -36
- 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/Embed/Embed.js +43 -36
- package/dist/Editor/Elements/Embed/Image.js +23 -236
- package/dist/Editor/Elements/Embed/Video.js +15 -245
- 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 +33 -39
- package/dist/Editor/Elements/FreeGrid/FreeGridBox.js +4 -7
- package/dist/Editor/Elements/FreeGrid/FreeGridItem.js +0 -1
- 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/SignatureOptions/TypeSignature.js +2 -3
- package/dist/Editor/Elements/Signature/SignaturePopup.js +1 -4
- package/dist/Editor/Elements/SimpleText/style.js +2 -2
- package/dist/Editor/Elements/Table/Table.js +3 -3
- package/dist/Editor/Elements/Title/title.js +6 -6
- 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 +7 -19
- 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 +2 -3
- 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/SwitchViewport/SwitchViewport.js +2 -11
- package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +3 -6
- package/dist/Editor/common/RnD/Utils/gridDropItem.js +18 -28
- package/dist/Editor/common/RnD/Utils/index.js +1 -3
- package/dist/Editor/common/RnD/VirtualElement/VirtualTextElement.js +58 -45
- 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 +13 -48
- 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/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/text.js +1 -0
- package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +7 -15
- 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 +45 -64
- 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/plugins/withEmbeds.js +1 -12
- package/dist/Editor/plugins/withHTML.js +1 -3
- 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 -189
- package/dist/Editor/utils/accordion.js +40 -68
- 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/formfield.js +2 -2
- package/dist/Editor/utils/helper.js +22 -98
- package/package.json +4 -4
- package/dist/Editor/Elements/Attachments/AttachmentStyles.js +0 -16
- package/dist/Editor/Elements/FreeGrid/helper.js +0 -115
- 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,6 +1,6 @@
|
|
1
1
|
import React, { useCallback, useMemo, useRef, useImperativeHandle, forwardRef, useState } from "react";
|
2
|
-
import { Editable, Slate, ReactEditor } from
|
3
|
-
import { createEditor, Transforms, Editor } from
|
2
|
+
import { Editable, Slate, ReactEditor } from 'slate-react';
|
3
|
+
import { createEditor, Transforms, Editor } from 'slate';
|
4
4
|
import withCommon from "./hooks/withCommon";
|
5
5
|
import { getBlock, getMarked, serializeMentions } from "./utils/chatEditor/SlateUtilityFunctions";
|
6
6
|
import MiniTextFormat from "./Toolbar/PopupTool/MiniTextFormat";
|
@@ -33,15 +33,15 @@ const ChatEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
33
33
|
isMobile = false,
|
34
34
|
debounceTimeOut = 10,
|
35
35
|
isMarkDown = false,
|
36
|
-
markDownContent =
|
36
|
+
markDownContent = '',
|
37
37
|
translation
|
38
38
|
} = props;
|
39
39
|
const classes = usePopupStyle(theme);
|
40
40
|
const convertedContent = draftToSlate({
|
41
41
|
data: content && content?.length > 0 ? content : [{
|
42
|
-
type:
|
42
|
+
type: 'paragraph',
|
43
43
|
children: [{
|
44
|
-
text:
|
44
|
+
text: ''
|
45
45
|
}]
|
46
46
|
}]
|
47
47
|
});
|
@@ -153,6 +153,14 @@ const ChatEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
153
153
|
// needLayout = true,
|
154
154
|
} = otherProps || {};
|
155
155
|
const mentionsRef = useRef();
|
156
|
+
const customProps = {
|
157
|
+
...(otherProps || {}),
|
158
|
+
hideTools: ["settings", "add_column", "drag", "resize"],
|
159
|
+
readOnly: isReadOnly,
|
160
|
+
editorPlaceholder: "Write Something",
|
161
|
+
page_id: 1,
|
162
|
+
translation: translation || translationMock
|
163
|
+
};
|
156
164
|
const [mentions, setMentions] = useMentions({
|
157
165
|
editor,
|
158
166
|
selection: editor?.selection
|
@@ -214,15 +222,6 @@ const ChatEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
214
222
|
debounced(newValue);
|
215
223
|
debouncedValue.current = newValue;
|
216
224
|
};
|
217
|
-
const dummyTranslation = () => {};
|
218
|
-
const customProps = {
|
219
|
-
...(otherProps || {}),
|
220
|
-
hideTools: ["settings", "add_column", "drag", "resize"],
|
221
|
-
readOnly: isReadOnly,
|
222
|
-
editorPlaceholder: "Write Something",
|
223
|
-
page_id: 1,
|
224
|
-
translation: translation || translationMock || dummyTranslation
|
225
|
-
};
|
226
225
|
const Element = props => {
|
227
226
|
return getBlock(props);
|
228
227
|
};
|
@@ -258,7 +257,7 @@ const ChatEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
258
257
|
editor
|
259
258
|
});
|
260
259
|
} else if (event.key === "Enter" && !isMobile) {
|
261
|
-
const isEmpty = debouncedValue?.current.length === 1 && debouncedValue?.current[0].type ===
|
260
|
+
const isEmpty = debouncedValue?.current.length === 1 && debouncedValue?.current[0].type === 'paragraph' && debouncedValue?.current[0].children.length === 1 && debouncedValue?.current[0].children[0].text === '';
|
262
261
|
if (isEmpty) {
|
263
262
|
event.preventDefault();
|
264
263
|
return;
|
@@ -298,10 +297,10 @@ const ChatEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
298
297
|
}
|
299
298
|
};
|
300
299
|
|
301
|
-
const html = isMarkDown ? convertMDToHTML(markDownContent) : null;
|
302
300
|
const handleFocus = () => {
|
303
301
|
setIsFocused(true);
|
304
302
|
};
|
303
|
+
const html = isMarkDown ? convertMDToHTML(markDownContent) : null;
|
305
304
|
return !isMarkDown ? /*#__PURE__*/_jsx(EditorProvider, {
|
306
305
|
theme: theme,
|
307
306
|
editor: editor,
|
@@ -315,13 +314,13 @@ const ChatEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
315
314
|
closeMainPopup: handleClose,
|
316
315
|
customProps: customProps
|
317
316
|
}), /*#__PURE__*/_jsx(Editable, {
|
317
|
+
onFocus: handleFocus,
|
318
318
|
className: "chatEditorRoot",
|
319
319
|
renderElement: renderElement,
|
320
320
|
renderLeaf: renderLeaf,
|
321
321
|
decorate: decorators,
|
322
322
|
placeholder: "Start typing ...",
|
323
323
|
spellCheck: true,
|
324
|
-
onFocus: handleFocus,
|
325
324
|
onBlur: handleBlur,
|
326
325
|
onKeyDown: onKeyDown,
|
327
326
|
onPaste: handlePaste,
|
@@ -1,7 +1,7 @@
|
|
1
1
|
/* eslint-disable no-unused-vars */
|
2
|
-
import React, { useRef, useCallback, useEffect, useMemo, useState, forwardRef, useImperativeHandle
|
2
|
+
import React, { useRef, useCallback, useEffect, useMemo, useState, forwardRef, useImperativeHandle } from "react";
|
3
3
|
import PropTypes from "prop-types";
|
4
|
-
import { createEditor,
|
4
|
+
import { createEditor, Range, Transforms } from "slate";
|
5
5
|
import { Slate, Editable, ReactEditor } from "slate-react";
|
6
6
|
import { useDebouncedCallback } from "use-debounce";
|
7
7
|
import { getMarked, getBlock } from "./utils/SlateUtilityFunctions";
|
@@ -17,7 +17,7 @@ import { serializeToText } from "./utils/serializeToText";
|
|
17
17
|
import { getPageSettings } from "./utils/pageSettings";
|
18
18
|
import { getThumbnailImage, invertColor, pageTextStyle } from "./helper";
|
19
19
|
import PopupTool from "./Toolbar/PopupTool";
|
20
|
-
import { Box, Typography, useTheme
|
20
|
+
import { Box, Typography, useTheme } from "@mui/material";
|
21
21
|
import Shorthands from "./common/Shorthands";
|
22
22
|
import MiniToolbar from "./Toolbar/Mini/MiniToolbar";
|
23
23
|
import { EditorProvider } from "./hooks/useMouseMove";
|
@@ -26,12 +26,9 @@ import editorStyles from "./Styles/EditorStyles";
|
|
26
26
|
import DragAndDrop from "./common/DnD";
|
27
27
|
import Section from "./common/Section";
|
28
28
|
import decorators from "./utils/Decorators";
|
29
|
-
import {
|
29
|
+
import { getBreakpointLineSpacing, getTRBLBreakPoints } from "./helper/theme";
|
30
30
|
import { getInitialValue, handleCopy, handleInsertLastElement, isEverythingSelected, isFreeGrid, isFreeGridFragment, isRestrictedNode, outsideEditorClickLabel } from "./utils/helper";
|
31
31
|
import useWindowResize from "./hooks/useWindowResize";
|
32
|
-
import { getTheme } from "./theme";
|
33
|
-
import ThemeSettings from "./themeSettings";
|
34
|
-
import ThemeSettingsAI from "./themeSettingsAI";
|
35
32
|
import PopoverAIInput from "./Elements/AI/PopoverAIInput";
|
36
33
|
import RnDCopy from "./common/RnD/RnDCopy";
|
37
34
|
import SwitchViewport from "./common/RnD/SwitchViewport/SwitchViewport";
|
@@ -40,12 +37,9 @@ import "./font.css";
|
|
40
37
|
import "./Editor.css";
|
41
38
|
import "animate.css";
|
42
39
|
import FontLoader from "./common/FontLoader/FontLoader";
|
43
|
-
import { ThemeAIIcon, ThemePaintIcon } from "./assets/svg/ThemeIcons";
|
44
40
|
import { CustomDialogComponent } from "./common/CustomDialog";
|
45
|
-
import { extractTextWithPath, replaceTextPath } from "./helper/textIndeces.js";
|
46
41
|
import { jsx as _jsx } from "react/jsx-runtime";
|
47
42
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
48
|
-
export const ThemeContext = /*#__PURE__*/createContext(null);
|
49
43
|
const Item = /*#__PURE__*/forwardRef(({
|
50
44
|
children,
|
51
45
|
...props
|
@@ -87,7 +81,6 @@ const updateTopBanner = (content = [], setTopBanner) => {
|
|
87
81
|
return firstNode?.type === "topbanner" ? firstNode : null;
|
88
82
|
});
|
89
83
|
};
|
90
|
-
const dummyTranslation = () => {};
|
91
84
|
const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
92
85
|
const {
|
93
86
|
id,
|
@@ -101,7 +94,6 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
101
94
|
otherProps,
|
102
95
|
isIframe,
|
103
96
|
theme,
|
104
|
-
showThemeButtons,
|
105
97
|
showViewport = false,
|
106
98
|
overrideWrapperStyles = {},
|
107
99
|
translation
|
@@ -109,8 +101,7 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
109
101
|
const editorWrapper = useRef();
|
110
102
|
const mentionsRef = useRef();
|
111
103
|
const convertedContent = draftToSlate({
|
112
|
-
data: content
|
113
|
-
needLayout: otherProps?.needLayout
|
104
|
+
data: content
|
114
105
|
});
|
115
106
|
const [value, setValue] = useState(convertedContent);
|
116
107
|
const [isInteracted, setIsInteracted] = useState(false);
|
@@ -136,11 +127,7 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
136
127
|
fixedWidth = "60%",
|
137
128
|
fullWidth = "80%",
|
138
129
|
hideTools = [],
|
139
|
-
translationMock
|
140
|
-
uploadFile,
|
141
|
-
resumeUploadState,
|
142
|
-
uploadTerminator,
|
143
|
-
isUploadInProgress = () => {}
|
130
|
+
translationMock
|
144
131
|
} = otherProps || {};
|
145
132
|
const translationFn = translation || translationMock || (() => {});
|
146
133
|
const getTitleSaveData = title => {
|
@@ -169,11 +156,10 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
169
156
|
const {
|
170
157
|
bannerSpacing,
|
171
158
|
pageBgImage,
|
172
|
-
pageColor
|
159
|
+
pageColor,
|
173
160
|
color: pageTextColor,
|
174
161
|
pageWidth,
|
175
162
|
maxWidth: pageMaxWidth,
|
176
|
-
theme: selectedTheme,
|
177
163
|
lineHeight
|
178
164
|
} = pageSt?.pageProps || {
|
179
165
|
bannerSpacing: {
|
@@ -185,17 +171,10 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
185
171
|
};
|
186
172
|
const classes = editorStyles({
|
187
173
|
padHeight: !fullScreen ? otherProps?.padHeight : 20,
|
188
|
-
placeHolderColor: invertColor(pageColor
|
174
|
+
placeHolderColor: invertColor(pageColor || "#FFF"),
|
189
175
|
theme,
|
190
176
|
overrideWrapperStyles
|
191
177
|
});
|
192
|
-
const [openTheme, setOpenTheme] = useState(false);
|
193
|
-
const [openAITheme, setOpenAITheme] = useState(false);
|
194
|
-
const [, setThemeUpdated] = useState(0);
|
195
|
-
const triggerRender = () => {
|
196
|
-
setThemeUpdated(prev => prev + 1); // Incrementing forces a re-render while updating theme
|
197
|
-
};
|
198
|
-
|
199
178
|
const isMobile = window.matchMedia("(max-width: 899px)")?.matches || false;
|
200
179
|
useEffect(() => {
|
201
180
|
setValue(draftToSlate({
|
@@ -220,11 +199,11 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
220
199
|
const debounced = useDebouncedCallback(
|
221
200
|
// function
|
222
201
|
value => {
|
223
|
-
debouncedValue.current = value;
|
224
202
|
const {
|
225
203
|
value: strVal,
|
226
204
|
...restVal
|
227
205
|
} = getOnSaveData(value);
|
206
|
+
debouncedValue.current = value;
|
228
207
|
onSave(strVal, restVal);
|
229
208
|
},
|
230
209
|
// delay in ms
|
@@ -235,18 +214,14 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
235
214
|
return {
|
236
215
|
value: JSON.stringify(val),
|
237
216
|
text: text,
|
238
|
-
title: serializeToText(title?.children) || ""
|
217
|
+
title: serializeToText(title?.children) || "Untitled"
|
239
218
|
};
|
240
219
|
};
|
241
220
|
const getPreviewImage = async (needBackground = false, options = {}) => {
|
242
221
|
ReactEditor.blur(editor);
|
243
222
|
const dom = needBackground ? editorWrapper?.current : editorWrapper?.current.getElementsByClassName("innert-editor-textbox")[0];
|
244
|
-
const pageBg = options?.fromBrains ? {
|
245
|
-
pageColor
|
246
|
-
} : {};
|
247
223
|
const c = await getThumbnailImage(dom, {
|
248
224
|
...options,
|
249
|
-
...pageBg,
|
250
225
|
proxy: `${otherProps?.PAGES_API_HOST}/page/2canvas`
|
251
226
|
});
|
252
227
|
return c;
|
@@ -341,12 +316,6 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
341
316
|
redo() {
|
342
317
|
editor?.redo();
|
343
318
|
},
|
344
|
-
toggleTheme() {
|
345
|
-
setOpenTheme(!openTheme);
|
346
|
-
},
|
347
|
-
toggleAITheme() {
|
348
|
-
setOpenAITheme(!openAITheme);
|
349
|
-
},
|
350
319
|
getPageSettings: {
|
351
320
|
background: pageBgImage && pageBgImage !== "none" ? `url(${pageBgImage})` : pageColor || ""
|
352
321
|
}
|
@@ -401,11 +370,7 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
401
370
|
ICON_API: "https://assets.agenciflow.com",
|
402
371
|
translation: translationFn,
|
403
372
|
getTitleSaveData,
|
404
|
-
customLineHeight: lineH
|
405
|
-
uploadFile,
|
406
|
-
resumeUploadState,
|
407
|
-
uploadTerminator,
|
408
|
-
isUploadInProgress
|
373
|
+
customLineHeight: lineH
|
409
374
|
};
|
410
375
|
const renderElement = useCallback(props => {
|
411
376
|
return /*#__PURE__*/_jsx(Element, {
|
@@ -554,7 +519,6 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
554
519
|
}
|
555
520
|
return style;
|
556
521
|
}, [pageBgImage, pageColor, pageTextColor]);
|
557
|
-
const themeProps = getTheme(selectedTheme);
|
558
522
|
|
559
523
|
// const handleContextMenu = (e) => {
|
560
524
|
// if (!readOnly) {
|
@@ -585,80 +549,19 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
585
549
|
console.log("handleCursorScroll", err);
|
586
550
|
}
|
587
551
|
};
|
588
|
-
window.getTextIndeces = () => {
|
589
|
-
try {
|
590
|
-
const textWithPaths = extractTextWithPath(editor.children, []);
|
591
|
-
return textWithPaths;
|
592
|
-
} catch (err) {
|
593
|
-
console.log(err);
|
594
|
-
}
|
595
|
-
};
|
596
|
-
window.replaceTextIndeces = (path_data = []) => {
|
597
|
-
try {
|
598
|
-
const replacedJson = replaceTextPath(JSON.parse(JSON.stringify(editor.children)), path_data);
|
599
|
-
|
600
|
-
// loop delete all
|
601
|
-
editor.children.forEach(() => {
|
602
|
-
Transforms.delete(editor, {
|
603
|
-
at: [0]
|
604
|
-
});
|
605
|
-
});
|
606
|
-
|
607
|
-
// Insert new nodes
|
608
|
-
Transforms.insertNodes(editor, replacedJson, {
|
609
|
-
at: [0]
|
610
|
-
});
|
611
|
-
} catch (err) {
|
612
|
-
console.log(err);
|
613
|
-
}
|
614
|
-
};
|
615
|
-
window.replaceEditorContent = (fragments = []) => {
|
616
|
-
try {
|
617
|
-
// loop delete all
|
618
|
-
editor.children.forEach(() => {
|
619
|
-
Transforms.delete(editor, {
|
620
|
-
at: [0]
|
621
|
-
});
|
622
|
-
});
|
623
|
-
|
624
|
-
// Insert new nodes
|
625
|
-
Transforms.insertNodes(editor, fragments, {
|
626
|
-
at: [0]
|
627
|
-
});
|
628
|
-
} catch (err) {
|
629
|
-
console.log(err);
|
630
|
-
}
|
631
|
-
};
|
632
552
|
return /*#__PURE__*/_jsxs(EditorProvider, {
|
633
553
|
theme: theme,
|
634
554
|
editor: editor,
|
635
|
-
openTheme: openTheme,
|
636
|
-
setOpenTheme: setOpenTheme,
|
637
|
-
triggerRender: triggerRender,
|
638
555
|
children: [/*#__PURE__*/_jsx(FontLoader, {
|
639
556
|
otherProps: {
|
640
557
|
services: otherProps?.services
|
641
558
|
},
|
642
559
|
readOnly: readOnly
|
643
|
-
}),
|
644
|
-
className: "theme-buttons",
|
645
|
-
children: [/*#__PURE__*/_jsx(IconButton, {
|
646
|
-
onClick: () => setOpenTheme(true),
|
647
|
-
className: "themePaintIcon",
|
648
|
-
children: /*#__PURE__*/_jsx(ThemePaintIcon, {})
|
649
|
-
}), /*#__PURE__*/_jsx(IconButton, {
|
650
|
-
onClick: () => setOpenAITheme(true),
|
651
|
-
style: {
|
652
|
-
marginTop: "4px"
|
653
|
-
},
|
654
|
-
children: /*#__PURE__*/_jsx(ThemeAIIcon, {})
|
655
|
-
})]
|
656
|
-
}) : null, /*#__PURE__*/_jsx(DialogWrapper, {
|
560
|
+
}), /*#__PURE__*/_jsx(DialogWrapper, {
|
657
561
|
classes: classes,
|
658
562
|
...props,
|
659
563
|
fullScreen: fullScreen,
|
660
564
|
footer: footer || "",
|
661
|
-
selectedTheme: selectedTheme,
|
662
565
|
children: /*#__PURE__*/_jsx(Box, {
|
663
566
|
component: "div",
|
664
567
|
className: `et-wrpr stimulate-${breakpoint} ${editorClass || ""} ${isIframe ? "iframe-editor" : ""}`,
|
@@ -686,16 +589,13 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
686
589
|
id: "slate-wrapper-scroll-container",
|
687
590
|
ref: editorWrapper,
|
688
591
|
onClick: e => {
|
689
|
-
|
690
|
-
handleInsertLastElement(e, editor);
|
691
|
-
}
|
592
|
+
handleInsertLastElement(e, editor);
|
692
593
|
},
|
693
594
|
onScroll: handleScroll,
|
694
595
|
style: editorWrapperStyle,
|
695
596
|
children: /*#__PURE__*/_jsxs(Box, {
|
696
597
|
component: "div",
|
697
598
|
className: "max-content",
|
698
|
-
sx: themeProps?.sxProps || {},
|
699
599
|
"data-info": outsideEditorClickLabel,
|
700
600
|
children: [renderTopBanner(), /*#__PURE__*/_jsx("div", {
|
701
601
|
className: "scroll-area",
|
@@ -741,8 +641,8 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
741
641
|
chars: chars,
|
742
642
|
type: type,
|
743
643
|
theme: theme,
|
744
|
-
|
745
|
-
|
644
|
+
otherProps: customProps,
|
645
|
+
customProps: customProps
|
746
646
|
}) : null, /*#__PURE__*/_jsx(RnDCopy, {
|
747
647
|
readOnly: readOnly
|
748
648
|
})]
|
@@ -765,18 +665,6 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
765
665
|
"data-info": outsideEditorClickLabel,
|
766
666
|
onClick: handleFooterClick,
|
767
667
|
children: footer
|
768
|
-
}), openTheme ? /*#__PURE__*/_jsx(ThemeSettings, {
|
769
|
-
open: openTheme,
|
770
|
-
setOpen: setOpenTheme,
|
771
|
-
editor: editor,
|
772
|
-
services: otherProps?.services,
|
773
|
-
appTheme: theme,
|
774
|
-
customProps: customProps
|
775
|
-
}) : null, /*#__PURE__*/_jsx(ThemeSettingsAI, {
|
776
|
-
openAITheme: openAITheme,
|
777
|
-
setOpenAITheme: setOpenAITheme,
|
778
|
-
onSaveTheme: otherProps?.onSaveTheme,
|
779
|
-
theme: theme
|
780
668
|
})]
|
781
669
|
})
|
782
670
|
}), !readOnly ? /*#__PURE__*/_jsx(PopupTool, {
|
@@ -785,9 +673,8 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
|
|
785
673
|
setIsTextSelected: setIsTextSelected,
|
786
674
|
customProps: customProps,
|
787
675
|
editorWrapper: editorWrapper
|
788
|
-
}) : null, !readOnly ? /*#__PURE__*/_jsx(SwitchViewport, {
|
676
|
+
}) : null, !readOnly && showViewport ? /*#__PURE__*/_jsx(SwitchViewport, {
|
789
677
|
breakpoint: breakpoint,
|
790
|
-
show: showViewport,
|
791
678
|
onChange: b => onSwitchBreakpoint(b),
|
792
679
|
translation: translationFn
|
793
680
|
}) : null]
|
@@ -2,7 +2,6 @@ import React from "react";
|
|
2
2
|
import { Dialog, DialogTitle, DialogContent, IconButton, Grid } from "@mui/material";
|
3
3
|
import CloseIcon from "@mui/icons-material/Close";
|
4
4
|
import ViewportStimulator from "./common/RnD/Theme/ViewportStimulator";
|
5
|
-
import MainThemeProvider from "./common/RnD/Theme/MainThemeProvider";
|
6
5
|
import { jsx as _jsx } from "react/jsx-runtime";
|
7
6
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
8
7
|
const DialogWrapper = props => {
|
@@ -10,45 +9,40 @@ const DialogWrapper = props => {
|
|
10
9
|
fullScreen,
|
11
10
|
onClose,
|
12
11
|
children,
|
13
|
-
classes
|
14
|
-
selectedTheme
|
12
|
+
classes
|
15
13
|
} = props;
|
16
|
-
return fullScreen ? /*#__PURE__*/
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
14
|
+
return fullScreen ? /*#__PURE__*/_jsxs(Dialog, {
|
15
|
+
className: `dialogComp`,
|
16
|
+
open: fullScreen,
|
17
|
+
fullScreen: fullScreen,
|
18
|
+
onClose: onClose,
|
19
|
+
style: {
|
20
|
+
zIndex: 1000
|
21
|
+
},
|
22
|
+
sx: classes.fullScreenWrapper,
|
23
|
+
children: [/*#__PURE__*/_jsx(DialogTitle, {
|
23
24
|
style: {
|
24
|
-
|
25
|
+
padding: "6px 8px"
|
25
26
|
},
|
26
|
-
|
27
|
-
children: [/*#__PURE__*/_jsx(DialogTitle, {
|
28
|
-
style: {
|
29
|
-
padding: "6px 8px"
|
30
|
-
},
|
27
|
+
children: /*#__PURE__*/_jsx(Grid, {
|
31
28
|
children: /*#__PURE__*/_jsx(Grid, {
|
32
|
-
|
29
|
+
style: {
|
30
|
+
display: "flex",
|
31
|
+
justifyContent: "end"
|
32
|
+
},
|
33
|
+
children: /*#__PURE__*/_jsx(IconButton, {
|
34
|
+
onClick: onClose,
|
33
35
|
style: {
|
34
|
-
|
35
|
-
justifyContent: "end"
|
36
|
+
background: "rgba(255,255,255,0.5)"
|
36
37
|
},
|
37
|
-
children: /*#__PURE__*/_jsx(
|
38
|
-
onClick: onClose,
|
39
|
-
style: {
|
40
|
-
background: "rgba(255,255,255,0.5)"
|
41
|
-
},
|
42
|
-
children: /*#__PURE__*/_jsx(CloseIcon, {})
|
43
|
-
})
|
38
|
+
children: /*#__PURE__*/_jsx(CloseIcon, {})
|
44
39
|
})
|
45
40
|
})
|
46
|
-
})
|
47
|
-
|
48
|
-
|
49
|
-
})
|
41
|
+
})
|
42
|
+
}), /*#__PURE__*/_jsx(DialogContent, {
|
43
|
+
children: children
|
44
|
+
})]
|
50
45
|
}) : /*#__PURE__*/_jsx(ViewportStimulator, {
|
51
|
-
selectedTheme: selectedTheme,
|
52
46
|
children: children
|
53
47
|
});
|
54
48
|
};
|
package/dist/Editor/Editor.css
CHANGED
@@ -1132,8 +1132,6 @@ blockquote {
|
|
1132
1132
|
margin: 0px;
|
1133
1133
|
}
|
1134
1134
|
|
1135
|
-
|
1136
|
-
|
1137
1135
|
.content-editable.empty {
|
1138
1136
|
position: relative;
|
1139
1137
|
}
|
@@ -1370,47 +1368,21 @@ code.markcode {
|
|
1370
1368
|
background-color: #f3f3f3;
|
1371
1369
|
font-family: 'Source Code Pro' !important;
|
1372
1370
|
}
|
1373
|
-
|
1374
1371
|
/* Hide the popper when the reference is hidden */
|
1375
1372
|
.hide-popper-on-overlap[data-popper-escaped],
|
1376
1373
|
.hide-popper-on-overlap[data-popper-reference-hidden] {
|
1377
1374
|
visibility: hidden;
|
1378
1375
|
pointer-events: none;
|
1379
1376
|
}
|
1380
|
-
|
1381
|
-
|
1382
|
-
|
1383
|
-
|
1384
|
-
|
1385
|
-
|
1386
|
-
|
1387
|
-
top: 60px;
|
1388
|
-
right: 20px;
|
1389
|
-
z-index: 1000;
|
1390
|
-
}
|
1391
|
-
|
1392
|
-
.themePaintIcon:hover .iconBorder {
|
1393
|
-
fill: #2563EB;
|
1394
|
-
}
|
1395
|
-
|
1396
|
-
.themePaintIcon:hover .iconStroke {
|
1397
|
-
stroke: #2563EB;
|
1377
|
+
code.markcode {
|
1378
|
+
border-radius: 4px;
|
1379
|
+
padding: 6px 8px;
|
1380
|
+
margin: 8px 0px;
|
1381
|
+
display: block;
|
1382
|
+
background-color: #f3f3f3;
|
1383
|
+
font-family: 'Source Code Pro' !important;
|
1398
1384
|
}
|
1399
1385
|
|
1400
1386
|
.hyperLink {
|
1401
1387
|
word-break: break-all;
|
1402
|
-
}
|
1403
|
-
|
1404
|
-
.truncateText {
|
1405
|
-
display: inline-block;
|
1406
|
-
width: 380px;
|
1407
|
-
white-space: nowrap;
|
1408
|
-
overflow: hidden;
|
1409
|
-
text-overflow: ellipsis;
|
1410
|
-
}
|
1411
|
-
|
1412
|
-
@media only screen and (max-width: 600px) {
|
1413
|
-
.truncateText {
|
1414
|
-
width: 180px;
|
1415
|
-
}
|
1416
|
-
}
|
1388
|
+
}
|
@@ -167,7 +167,6 @@ function PopoverAIInput({
|
|
167
167
|
const [generatedText, setGeneratedText] = useState("");
|
168
168
|
const [inputValue, setInputValue] = useState("");
|
169
169
|
const [selectedOption, setSelectedOption] = useState();
|
170
|
-
const [threadId, setThreadId] = useState("");
|
171
170
|
const selectedEleRef = useRef({});
|
172
171
|
const classes = Styles();
|
173
172
|
const editor = useSlate();
|
@@ -189,7 +188,6 @@ function PopoverAIInput({
|
|
189
188
|
useEffect(() => {
|
190
189
|
if (openAI) {
|
191
190
|
scrollToAIInput(editor);
|
192
|
-
setThreadId("");
|
193
191
|
}
|
194
192
|
}, [openAI]);
|
195
193
|
useEffect(() => {
|
@@ -198,12 +196,8 @@ function PopoverAIInput({
|
|
198
196
|
const framePayload = (type, option) => {
|
199
197
|
let payload = {
|
200
198
|
mode: option.mode || 0,
|
201
|
-
query: option?.inputValue || inputValue
|
202
|
-
useSession: true
|
199
|
+
query: option?.inputValue || inputValue
|
203
200
|
};
|
204
|
-
if (threadId) {
|
205
|
-
payload.threadId = threadId;
|
206
|
-
}
|
207
201
|
if (option.mode === MODES.translate || option.mode === MODES.rephraseTone) {
|
208
202
|
payload.textOptionInput = type;
|
209
203
|
}
|
@@ -263,14 +257,12 @@ function PopoverAIInput({
|
|
263
257
|
setLoading(false);
|
264
258
|
setInputValue("");
|
265
259
|
let {
|
266
|
-
|
267
|
-
|
268
|
-
} = result?.data || {};
|
260
|
+
data: text
|
261
|
+
} = result || {};
|
269
262
|
if (!text) {
|
270
263
|
onClickOutside();
|
271
264
|
return;
|
272
265
|
}
|
273
|
-
setThreadId(threadId || "");
|
274
266
|
|
275
267
|
// if (!option.replace) {
|
276
268
|
if (type === "continue_writing") {
|