@flozy/editor 5.5.6 → 5.5.8

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.
Files changed (210) hide show
  1. package/dist/Editor/ChatEditor.js +34 -25
  2. package/dist/Editor/CommonEditor.js +16 -33
  3. package/dist/Editor/Editor.css +20 -105
  4. package/dist/Editor/Elements/AI/AIInput.js +1 -0
  5. package/dist/Editor/Elements/AI/CustomSelect.js +10 -17
  6. package/dist/Editor/Elements/AI/PopoverAIInput.js +53 -59
  7. package/dist/Editor/Elements/AI/Styles.js +6 -24
  8. package/dist/Editor/Elements/Accordion/Accordion.js +1 -8
  9. package/dist/Editor/Elements/AppHeader/AppHeader.js +6 -6
  10. package/dist/Editor/Elements/Button/EditorButton.js +2 -9
  11. package/dist/Editor/Elements/Carousel/CarouselItem.js +3 -11
  12. package/dist/Editor/Elements/Color Picker/ColorButtons.js +5 -7
  13. package/dist/Editor/Elements/Color Picker/Styles.js +3 -8
  14. package/dist/Editor/Elements/Color Picker/defaultColors.js +2 -2
  15. package/dist/Editor/Elements/Divider/Divider.js +20 -36
  16. package/dist/Editor/Elements/Embed/Image.js +16 -51
  17. package/dist/Editor/Elements/Embed/Video.js +3 -26
  18. package/dist/Editor/Elements/Form/Form.js +2 -39
  19. package/dist/Editor/Elements/Form/FormElements/FormCheckbox.js +1 -7
  20. package/dist/Editor/Elements/Form/FormElements/FormDate.js +1 -7
  21. package/dist/Editor/Elements/Form/FormElements/FormEmail.js +1 -7
  22. package/dist/Editor/Elements/Form/FormElements/FormNumbers.js +1 -7
  23. package/dist/Editor/Elements/Form/FormElements/FormRadioButton.js +1 -7
  24. package/dist/Editor/Elements/Form/FormElements/FormText.js +1 -7
  25. package/dist/Editor/Elements/Form/FormElements/FormTextArea.js +1 -6
  26. package/dist/Editor/Elements/Form/FormPopup.js +9 -12
  27. package/dist/Editor/Elements/Form/Workflow/Styles.js +0 -2
  28. package/dist/Editor/Elements/FreeGrid/FreeGrid.js +1 -1
  29. package/dist/Editor/Elements/FreeGrid/FreeGridBox.js +2 -4
  30. package/dist/Editor/Elements/FreeGrid/FreeGridItem.js +1 -20
  31. package/dist/Editor/Elements/FreeGrid/breakpointConstants.js +4 -4
  32. package/dist/Editor/Elements/FreeGrid/styles.js +1 -2
  33. package/dist/Editor/Elements/Grid/GridButton.js +2 -2
  34. package/dist/Editor/Elements/Grid/GridItem.js +36 -47
  35. package/dist/Editor/Elements/Grid/Styles.js +0 -50
  36. package/dist/Editor/Elements/Link/LinkButton.js +1 -1
  37. package/dist/Editor/Elements/List/CheckList.js +1 -2
  38. package/dist/Editor/Elements/Search/SearchAttachment.js +0 -1
  39. package/dist/Editor/Elements/Search/SearchButton.js +0 -1
  40. package/dist/Editor/Elements/Signature/Signature.css +1 -1
  41. package/dist/Editor/Elements/Signature/SignatureOptions/TypeSignature.js +2 -2
  42. package/dist/Editor/Elements/Signature/SignaturePopup.js +52 -17
  43. package/dist/Editor/Elements/SimpleText/index.js +3 -11
  44. package/dist/Editor/Elements/SimpleText/style.js +1 -20
  45. package/dist/Editor/Elements/Table/Styles.js +78 -88
  46. package/dist/Editor/Elements/Table/Table.js +140 -263
  47. package/dist/Editor/Elements/Table/TableCell.js +111 -365
  48. package/dist/Editor/Elements/Table/TablePopup.js +3 -9
  49. package/dist/Editor/Elements/Table/TableRow.js +2 -10
  50. package/dist/Editor/Elements/TopBanner/TopBanner.js +1 -2
  51. package/dist/Editor/MiniEditor.js +2 -21
  52. package/dist/Editor/Styles/EditorStyles.js +4 -13
  53. package/dist/Editor/Toolbar/FormatTools/BlockButton.js +0 -10
  54. package/dist/Editor/Toolbar/FormatTools/Dropdown.js +12 -7
  55. package/dist/Editor/Toolbar/FormatTools/FontFamilyAutocomplete.js +4 -26
  56. package/dist/Editor/Toolbar/FormatTools/MarkButton.js +0 -3
  57. package/dist/Editor/Toolbar/FormatTools/TextSize.js +5 -5
  58. package/dist/Editor/Toolbar/Mini/MiniToolbar.js +8 -8
  59. package/dist/Editor/Toolbar/Mini/Styles.js +1 -9
  60. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/InfinityAITool.js +3 -7
  61. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +4 -6
  62. package/dist/Editor/Toolbar/PopupTool/PopperHeader.js +15 -19
  63. package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +58 -557
  64. package/dist/Editor/Toolbar/PopupTool/TextFormat.js +16 -73
  65. package/dist/Editor/Toolbar/PopupTool/index.js +5 -3
  66. package/dist/Editor/Toolbar/Toolbar.js +0 -6
  67. package/dist/Editor/Toolbar/toolbarGroups.js +0 -4
  68. package/dist/Editor/assets/svg/BrainIcon.js +2 -2
  69. package/dist/Editor/assets/svg/SettingsIcon.js +4 -4
  70. package/dist/Editor/common/ColorPickerButton.js +45 -85
  71. package/dist/Editor/common/DnD/Draggable.js +1 -2
  72. package/dist/Editor/common/FontLoader/FontLoader.js +6 -12
  73. package/dist/Editor/common/Icon.js +21 -54
  74. package/dist/Editor/common/ImageSelector/Options/Upload.js +1 -2
  75. package/dist/Editor/common/ImageSelector/Styles.js +6 -47
  76. package/dist/Editor/common/ImageSelector/UploadStyles.js +6 -18
  77. package/dist/Editor/common/LinkSettings/NavComponents.js +1 -2
  78. package/dist/Editor/common/LinkSettings/index.js +1 -2
  79. package/dist/Editor/common/MentionsPopup/Styles.js +8 -143
  80. package/dist/Editor/common/MentionsPopup/index.js +1 -1
  81. package/dist/Editor/common/RnD/ElementSettings/Settings/FormSettings.js +12 -108
  82. package/dist/Editor/common/RnD/GuideLines/styles.js +3 -3
  83. package/dist/Editor/common/RnD/ShadowElement.js +1 -1
  84. package/dist/Editor/common/RnD/SwitchViewport/SwitchViewport.js +2 -14
  85. package/dist/Editor/common/RnD/Utils/gridDropItem.js +6 -9
  86. package/dist/Editor/common/RnD/VirtualElement/index.js +1 -5
  87. package/dist/Editor/common/RnD/index.js +3 -4
  88. package/dist/Editor/common/Section/index.js +3 -3
  89. package/dist/Editor/common/Section/styles.js +1 -5
  90. package/dist/Editor/common/Shorthands/elements.js +1 -13
  91. package/dist/Editor/common/StyleBuilder/fieldStyle.js +1 -2
  92. package/dist/Editor/common/StyleBuilder/fieldTypes/backgroundImage.js +3 -9
  93. package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +7 -35
  94. package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +2 -15
  95. package/dist/Editor/common/StyleBuilder/fieldTypes/card.js +2 -10
  96. package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +1 -2
  97. package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +1 -1
  98. package/dist/Editor/common/StyleBuilder/fieldTypes/icons.js +0 -2
  99. package/dist/Editor/common/StyleBuilder/fieldTypes/index.js +1 -3
  100. package/dist/Editor/common/StyleBuilder/fieldTypes/radiusStyle.js +11 -11
  101. package/dist/Editor/common/StyleBuilder/fieldTypes/saveAsTemplate.js +6 -22
  102. package/dist/Editor/common/StyleBuilder/fieldTypes/selectBox.js +2 -21
  103. package/dist/Editor/common/StyleBuilder/fieldTypes/text.js +4 -20
  104. package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +2 -12
  105. package/dist/Editor/common/StyleBuilder/formStyle.js +149 -268
  106. package/dist/Editor/common/StyleBuilder/index.js +20 -101
  107. package/dist/Editor/common/StyleBuilder/pageSettingsStyle.js +0 -4
  108. package/dist/Editor/common/StyleBuilder/tableStyle.js +25 -69
  109. package/dist/Editor/common/SwipeableDrawer/style.js +4 -15
  110. package/dist/Editor/common/ToolbarIcon.js +1 -1
  111. package/dist/Editor/common/Uploader.js +36 -46
  112. package/dist/Editor/common/iconListV2.js +74 -598
  113. package/dist/Editor/common/iconslist.js +19 -25
  114. package/dist/Editor/commonStyle.js +15 -421
  115. package/dist/Editor/helper/deserialize/index.js +2 -31
  116. package/dist/Editor/helper/index.js +4 -17
  117. package/dist/Editor/helper/theme.js +2 -39
  118. package/dist/Editor/hooks/useBreakpoints.js +1 -1
  119. package/dist/Editor/hooks/useMouseMove.js +2 -5
  120. package/dist/Editor/plugins/withCustomDeleteBackward.js +104 -100
  121. package/dist/Editor/plugins/withEmbeds.js +26 -30
  122. package/dist/Editor/plugins/withHTML.js +12 -100
  123. package/dist/Editor/plugins/withLayout.js +0 -1
  124. package/dist/Editor/utils/SlateUtilityFunctions.js +12 -39
  125. package/dist/Editor/utils/brains.js +1 -1
  126. package/dist/Editor/utils/button.js +4 -4
  127. package/dist/Editor/utils/chatEditor/SlateUtilityFunctions.js +6 -75
  128. package/dist/Editor/utils/customHooks/useResize.js +4 -7
  129. package/dist/Editor/utils/customHooks/useTableResize.js +2 -6
  130. package/dist/Editor/utils/embed.js +1 -2
  131. package/dist/Editor/utils/events.js +1 -0
  132. package/dist/Editor/utils/font.js +4 -11
  133. package/dist/Editor/utils/formfield.js +4 -8
  134. package/dist/Editor/utils/helper.js +2 -103
  135. package/dist/Editor/utils/insertNewLine.js +1 -19
  136. package/dist/Editor/utils/pageSettings.js +2 -14
  137. package/dist/Editor/utils/serializeToText.js +0 -2
  138. package/dist/Editor/utils/table.js +24 -228
  139. package/package.json +2 -2
  140. package/dist/Editor/Elements/DataView/DataView.js +0 -124
  141. package/dist/Editor/Elements/DataView/DataViewButton.js +0 -23
  142. package/dist/Editor/Elements/DataView/Layouts/ColumnView.js +0 -83
  143. package/dist/Editor/Elements/DataView/Layouts/DataTypes/CheckType.js +0 -33
  144. package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/Select.js +0 -180
  145. package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/SimpleSelect.js +0 -62
  146. package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/styles.js +0 -68
  147. package/dist/Editor/Elements/DataView/Layouts/DataTypes/DateType.js +0 -35
  148. package/dist/Editor/Elements/DataView/Layouts/DataTypes/MultiSelectType.js +0 -39
  149. package/dist/Editor/Elements/DataView/Layouts/DataTypes/NumberType.js +0 -30
  150. package/dist/Editor/Elements/DataView/Layouts/DataTypes/PersonType.js +0 -30
  151. package/dist/Editor/Elements/DataView/Layouts/DataTypes/SelectType.js +0 -35
  152. package/dist/Editor/Elements/DataView/Layouts/DataTypes/TextType.js +0 -36
  153. package/dist/Editor/Elements/DataView/Layouts/DataTypes/index.js +0 -17
  154. package/dist/Editor/Elements/DataView/Layouts/FilterSort/SortOptions/ChooseField.js +0 -29
  155. package/dist/Editor/Elements/DataView/Layouts/FilterSort/SortOptions/ChooseSort.js +0 -38
  156. package/dist/Editor/Elements/DataView/Layouts/FilterSort/SortOptions/index.js +0 -86
  157. package/dist/Editor/Elements/DataView/Layouts/FilterSort/index.js +0 -71
  158. package/dist/Editor/Elements/DataView/Layouts/FilterSort/styles.js +0 -138
  159. package/dist/Editor/Elements/DataView/Layouts/FilterView.js +0 -213
  160. package/dist/Editor/Elements/DataView/Layouts/Formula.js +0 -29
  161. package/dist/Editor/Elements/DataView/Layouts/Options/AddOptions.js +0 -113
  162. package/dist/Editor/Elements/DataView/Layouts/Options/AddProperty.js +0 -44
  163. package/dist/Editor/Elements/DataView/Layouts/Options/AllProperties.js +0 -146
  164. package/dist/Editor/Elements/DataView/Layouts/Options/ChangeProperty.js +0 -79
  165. package/dist/Editor/Elements/DataView/Layouts/Options/ColumnsList.js +0 -57
  166. package/dist/Editor/Elements/DataView/Layouts/Options/Constants.js +0 -101
  167. package/dist/Editor/Elements/DataView/Layouts/Options/EditOption.js +0 -174
  168. package/dist/Editor/Elements/DataView/Layouts/Options/EditProperty.js +0 -241
  169. package/dist/Editor/Elements/DataView/Layouts/Options/FilterProperty.js +0 -45
  170. package/dist/Editor/Elements/DataView/Layouts/Options/PropertyList.js +0 -32
  171. package/dist/Editor/Elements/DataView/Layouts/Options/index.js +0 -110
  172. package/dist/Editor/Elements/DataView/Layouts/Options/styles.js +0 -217
  173. package/dist/Editor/Elements/DataView/Layouts/TableStyles.js +0 -131
  174. package/dist/Editor/Elements/DataView/Layouts/TableView.js +0 -253
  175. package/dist/Editor/Elements/DataView/Layouts/ViewData.js +0 -85
  176. package/dist/Editor/Elements/DataView/Layouts/colStyles.js +0 -10
  177. package/dist/Editor/Elements/DataView/Layouts/index.js +0 -25
  178. package/dist/Editor/Elements/DataView/Providers/DataViewProvider.js +0 -277
  179. package/dist/Editor/Elements/DataView/Utils/globalSearch.js +0 -15
  180. package/dist/Editor/Elements/DataView/Utils/multiSortRows.js +0 -88
  181. package/dist/Editor/Elements/DataView/styles.js +0 -169
  182. package/dist/Editor/Elements/Table/AddRowCol.js +0 -77
  183. package/dist/Editor/Elements/Table/DragButton.js +0 -142
  184. package/dist/Editor/Elements/Table/DragStyles.js +0 -70
  185. package/dist/Editor/Elements/Table/Draggable.js +0 -25
  186. package/dist/Editor/Elements/Table/Droppable.js +0 -53
  187. package/dist/Editor/Elements/Table/TableTool.js +0 -101
  188. package/dist/Editor/Elements/Table/tableHelper.js +0 -71
  189. package/dist/Editor/assets/svg/ArrowDownIcon.js +0 -25
  190. package/dist/Editor/assets/svg/ArrowUpIcon.js +0 -25
  191. package/dist/Editor/assets/svg/CalenderIconTick.js +0 -64
  192. package/dist/Editor/assets/svg/ChervDown.js +0 -18
  193. package/dist/Editor/assets/svg/ChervUp.js +0 -18
  194. package/dist/Editor/assets/svg/DataTableIcon.js +0 -50
  195. package/dist/Editor/assets/svg/DuplicateIcon.js +0 -23
  196. package/dist/Editor/assets/svg/EyeIcon.js +0 -23
  197. package/dist/Editor/assets/svg/EyeSlash.js +0 -43
  198. package/dist/Editor/assets/svg/HashtagIcon.js +0 -33
  199. package/dist/Editor/assets/svg/PlusIcon.js +0 -23
  200. package/dist/Editor/assets/svg/SelectRoundedIcon.js +0 -24
  201. package/dist/Editor/assets/svg/SortByIcon.js +0 -33
  202. package/dist/Editor/assets/svg/TableIcons.js +0 -220
  203. package/dist/Editor/assets/svg/TickOutlined.js +0 -23
  204. package/dist/Editor/assets/svg/TrashCanIcon.js +0 -38
  205. package/dist/Editor/common/Select/index.js +0 -20
  206. package/dist/Editor/common/Select/styles.js +0 -17
  207. package/dist/Editor/common/StyleBuilder/fieldTypes/lineSpacing.js +0 -79
  208. package/dist/Editor/helper/enforceDateFormat.js +0 -41
  209. package/dist/Editor/hooks/useTable.js +0 -210
  210. package/dist/Editor/utils/dataView.js +0 -43
@@ -1,8 +1,9 @@
1
1
  import React, { useCallback, useMemo, useRef, useState, useEffect, useImperativeHandle, forwardRef } from "react";
2
2
  import { Editable, Slate, ReactEditor } from 'slate-react';
3
3
  import { createEditor, Transforms, Editor } from 'slate';
4
+ import { useDebounce } from "use-debounce";
4
5
  import withCommon from "./hooks/withCommon";
5
- import { getBlock, getMarked, serializeMentions } from "./utils/chatEditor/SlateUtilityFunctions";
6
+ import { getBlock, getMarked } from "./utils/chatEditor/SlateUtilityFunctions";
6
7
  import MiniTextFormat from "./Toolbar/PopupTool/MiniTextFormat";
7
8
  import { commands, mentionsEvent } from "./utils/events";
8
9
  import { insertEmoji } from "./utils/emoji";
@@ -14,7 +15,6 @@ import Shorthands from "./common/Shorthands";
14
15
  import usePopupStyle from "./Toolbar/PopupTool/PopupToolStyle";
15
16
  import { EditorProvider } from "./hooks/useMouseMove";
16
17
  import decorators from "./utils/Decorators";
17
- import { useDebouncedCallback } from "use-debounce";
18
18
  import { jsx as _jsx } from "react/jsx-runtime";
19
19
  import { jsxs as _jsxs } from "react/jsx-runtime";
20
20
  const ChatEditor = /*#__PURE__*/forwardRef((props, ref) => {
@@ -42,18 +42,8 @@ const ChatEditor = /*#__PURE__*/forwardRef((props, ref) => {
42
42
  });
43
43
  const [isInteracted, setIsInteracted] = useState(false);
44
44
  const [value, setValue] = useState(convertedContent);
45
- const debouncedValue = useRef(value);
46
- const debounced = useDebouncedCallback(
47
- // function
48
- value => {
49
- const {
50
- value: strVal,
51
- ...restVal
52
- } = getOnSaveData(value);
53
- onSave(strVal, restVal);
54
- },
55
- // delay in ms
56
- 500);
45
+ const [loadedValue] = useState(value);
46
+ const [deboundedValue] = useDebounce(value, 500);
57
47
  const editor = useMemo(() => {
58
48
  return withCommon(createEditor(), {
59
49
  needLayout,
@@ -73,7 +63,7 @@ const ChatEditor = /*#__PURE__*/forwardRef((props, ref) => {
73
63
  const {
74
64
  value: strVal,
75
65
  ...restVal
76
- } = getOnSaveData(debouncedValue?.current);
66
+ } = getOnSaveData(value);
77
67
  onsubmit(false, {
78
68
  strVal,
79
69
  restVal
@@ -109,8 +99,7 @@ const ChatEditor = /*#__PURE__*/forwardRef((props, ref) => {
109
99
  const newValue = draftToSlate({
110
100
  data: content
111
101
  });
112
- debounced(newValue);
113
-
102
+ setValue(newValue);
114
103
  // setTimeout(() => {
115
104
  if (editor.children.length === 0) {
116
105
  Transforms.insertNodes(editor, newValue);
@@ -123,14 +112,27 @@ const ChatEditor = /*#__PURE__*/forwardRef((props, ref) => {
123
112
  }
124
113
  }
125
114
  }));
115
+
116
+ // useEffect(() => {
117
+ // setIsExternalUpdate(true);
118
+ // setValue(draftToSlate({ data: content }));
119
+ // }, [content]);
120
+
121
+ useEffect(() => {
122
+ if (JSON.stringify(loadedValue) !== JSON.stringify(deboundedValue) && isInteracted && onSave) {
123
+ const {
124
+ value: strVal,
125
+ ...restVal
126
+ } = getOnSaveData(deboundedValue);
127
+ onSave(strVal, restVal);
128
+ }
129
+ }, [deboundedValue]);
126
130
  const getOnSaveData = val => {
127
131
  const text = serializeToText(val);
128
- const mentions = serializeMentions(val);
129
132
  const title = val?.find(f => f.type === "title");
130
133
  return {
131
134
  value: JSON.stringify(val),
132
135
  text: text,
133
- mentions: mentions,
134
136
  title: serializeToText(title?.children) || "Untitled"
135
137
  };
136
138
  };
@@ -178,8 +180,15 @@ const ChatEditor = /*#__PURE__*/forwardRef((props, ref) => {
178
180
  });
179
181
  };
180
182
  const handleEditorChange = newValue => {
181
- debounced(newValue);
182
- debouncedValue.current = newValue;
183
+ const value_txt = serializeToText(value);
184
+ if (!value_txt) {
185
+ const {
186
+ value: strVal,
187
+ ...restVal
188
+ } = getOnSaveData(newValue);
189
+ onSave(strVal, restVal);
190
+ }
191
+ setValue(newValue);
183
192
  if (!isInteracted) {
184
193
  setIsInteracted(true);
185
194
  }
@@ -219,7 +228,7 @@ const ChatEditor = /*#__PURE__*/forwardRef((props, ref) => {
219
228
  editor
220
229
  });
221
230
  } else if (event.key === "Enter" && !isMobile) {
222
- const isEmpty = debouncedValue?.current.length === 1 && debouncedValue?.current[0].type === 'paragraph' && debouncedValue?.current[0].children.length === 1 && debouncedValue?.current[0].children[0].text === '';
231
+ const isEmpty = value.length === 1 && value[0].type === 'paragraph' && value[0].children.length === 1 && value[0].children[0].text === '';
223
232
  if (isEmpty) {
224
233
  event.preventDefault();
225
234
  return;
@@ -228,7 +237,7 @@ const ChatEditor = /*#__PURE__*/forwardRef((props, ref) => {
228
237
  const {
229
238
  value: strVal,
230
239
  ...restVal
231
- } = getOnSaveData(debouncedValue?.current);
240
+ } = getOnSaveData(value);
232
241
  onsubmit(false, {
233
242
  strVal,
234
243
  restVal
@@ -242,7 +251,7 @@ const ChatEditor = /*#__PURE__*/forwardRef((props, ref) => {
242
251
  const {
243
252
  value: strVal,
244
253
  ...restVal
245
- } = getOnSaveData(debouncedValue?.current);
254
+ } = getOnSaveData(value);
246
255
  onBlur({
247
256
  strVal,
248
257
  restVal
@@ -263,7 +272,7 @@ const ChatEditor = /*#__PURE__*/forwardRef((props, ref) => {
263
272
  editor: editor,
264
273
  children: /*#__PURE__*/_jsxs(Slate, {
265
274
  editor: editor,
266
- initialValue: debouncedValue?.current,
275
+ initialValue: value,
267
276
  onChange: handleEditorChange,
268
277
  children: [toolBar && /*#__PURE__*/_jsx(MiniTextFormat, {
269
278
  classes: classes,
@@ -26,8 +26,8 @@ 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 { getBreakpointLineSpacing, getTRBLBreakPoints } from "./helper/theme";
30
- import { getInitialValue, handleInsertLastElement, isFreeGrid, isFreeGridFragment, isPageSettings, outsideEditorClickLabel } from "./utils/helper";
29
+ import { getTRBLBreakPoints } from "./helper/theme";
30
+ import { handleInsertLastElement, isFreeGrid, isFreeGridFragment, isPageSettings, outsideEditorClickLabel } from "./utils/helper";
31
31
  import useWindowResize from "./hooks/useWindowResize";
32
32
  import PopoverAIInput from "./Elements/AI/PopoverAIInput";
33
33
  import RnDCopy from "./common/RnD/RnDCopy";
@@ -72,12 +72,6 @@ const Leaf = ({
72
72
  children: children
73
73
  });
74
74
  };
75
- const updateTopBanner = (content = [], setTopBanner) => {
76
- setTopBanner(() => {
77
- const firstNode = content ? content[0] : {};
78
- return firstNode?.type === "topbanner" ? firstNode : null;
79
- });
80
- };
81
75
  const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
82
76
  const {
83
77
  id,
@@ -109,7 +103,6 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
109
103
  });
110
104
  const [isTextSelected, setIsTextSelected] = useState(false);
111
105
  const [breakpoint, setBreakpoint] = useState("");
112
- const [topBanner, setTopBanner] = useState();
113
106
  const debouncedValue = useRef(value);
114
107
  const [size] = useWindowResize();
115
108
  const {
@@ -124,9 +117,7 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
124
117
  } = otherProps || {};
125
118
  const editor = useMemo(() => {
126
119
  if (collaborativeEditor) return collaborativeEditor;
127
- const editor = createEditor();
128
- editor.needLayout = needLayout;
129
- return withCommon(editor, {
120
+ return withCommon(createEditor(), {
130
121
  needLayout
131
122
  });
132
123
  }, [collaborativeEditor]);
@@ -139,8 +130,7 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
139
130
  pageColor,
140
131
  color: pageTextColor,
141
132
  pageWidth,
142
- maxWidth: pageMaxWidth,
143
- lineHeight
133
+ maxWidth: pageMaxWidth
144
134
  } = pageSt?.pageProps || {
145
135
  bannerSpacing: {
146
136
  left: 0,
@@ -159,7 +149,6 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
159
149
  setValue(draftToSlate({
160
150
  data: content
161
151
  }));
162
- updateTopBanner(content, setTopBanner);
163
152
  if (!isMobile && !ReactEditor.isFocused(editor)) {
164
153
  ReactEditor.focus(editor);
165
154
  }
@@ -308,13 +297,10 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
308
297
  hideTools: updatedHideTools || []
309
298
  }) : [];
310
299
  const handleEditorChange = newValue => {
311
- if (!readOnly) {
312
- if (JSON.stringify(newValue) !== JSON.stringify(debouncedValue?.current)) {
313
- updateTopBanner(newValue, setTopBanner);
314
- debounced(newValue);
315
- if (!isInteracted) {
316
- setIsInteracted(true);
317
- }
300
+ if (JSON.stringify(newValue) !== JSON.stringify(debouncedValue?.current)) {
301
+ debounced(newValue);
302
+ if (!isInteracted) {
303
+ setIsInteracted(true);
318
304
  }
319
305
  }
320
306
  };
@@ -333,7 +319,6 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
333
319
  onDrawerOpen: onDrawerOpen,
334
320
  ICON_API: "https://assets.agenciflow.com"
335
321
  };
336
- const lineH = getBreakpointLineSpacing(lineHeight, breakpoint);
337
322
  const renderElement = useCallback(props => {
338
323
  return /*#__PURE__*/_jsx(Element, {
339
324
  ...props,
@@ -425,7 +410,10 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
425
410
  editorWrapper?.current?.classList.remove("hideScroll");
426
411
  handleScrollStop();
427
412
  };
428
- const hasTopBanner = () => topBanner;
413
+ const hasTopBanner = () => {
414
+ const tb = editor.children[0];
415
+ return tb?.type === "topbanner" ? tb : null;
416
+ };
429
417
  const renderTopBanner = () => {
430
418
  const tb = hasTopBanner();
431
419
  return tb ? /*#__PURE__*/_jsx(TopBanner, {
@@ -507,12 +495,12 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
507
495
  ,
508
496
  children: /*#__PURE__*/_jsxs(Slate, {
509
497
  editor: editor,
510
- initialValue: getInitialValue(debouncedValue?.current, readOnly),
498
+ initialValue: debouncedValue?.current,
511
499
  onChange: handleEditorChange,
512
500
  children: [/*#__PURE__*/_jsx(DragAndDrop, {
513
501
  children: /*#__PURE__*/_jsxs(Overlay, {
514
502
  children: [/*#__PURE__*/_jsx(Box, {
515
- className: `pc-${editorClass || ""} ${hasTopBanner() ? "has-topbanner" : ""} ${!pageColor ? "no-color" : ""} scrollable-content scrollSmooth ${readOnly ? "readOnlyContainer" : ""}`,
503
+ className: `pc-${editorClass || ""} ${hasTopBanner() ? "has-topbanner" : ""} ${!pageColor ? "no-color" : ""} scrollable-content scrollSmooth`,
516
504
  sx: classes.slateWrapper,
517
505
  id: "slate-wrapper-scroll-container",
518
506
  ref: editorWrapper,
@@ -536,7 +524,6 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
536
524
  padding: {
537
525
  ...getTRBLBreakPoints(bannerSpacing)
538
526
  },
539
- lineHeight: lineH,
540
527
  width: !pageWidth || pageWidth === "fixed" ? fixedWidth : fullWidth,
541
528
  height: viewport.h ? `${viewport.h}px` : `100%`,
542
529
  alignSelf: "center",
@@ -553,10 +540,7 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
553
540
  renderLeaf: renderLeaf,
554
541
  decorate: d => decorators(d, editor),
555
542
  onKeyDown: onKeyDown,
556
- onSelect: () => handleCursorScroll(editorWrapper.current),
557
- scrollSelectionIntoView: () => {
558
- // disable the scrollSelectionIntoView, to resolve editor auto scroll on free-grid
559
- }
543
+ onSelect: () => handleCursorScroll(editorWrapper.current)
560
544
  }), !readOnly ? /*#__PURE__*/_jsx(MentionsPopup, {
561
545
  ref: mentionsRef,
562
546
  mentions: mentions,
@@ -597,9 +581,8 @@ const CommonEditor = /*#__PURE__*/forwardRef((props, ref) => {
597
581
  setIsTextSelected: setIsTextSelected,
598
582
  customProps: customProps,
599
583
  editorWrapper: editorWrapper
600
- }) : null, !readOnly ? /*#__PURE__*/_jsx(SwitchViewport, {
584
+ }) : null, !readOnly && showViewport ? /*#__PURE__*/_jsx(SwitchViewport, {
601
585
  breakpoint: breakpoint,
602
- show: showViewport,
603
586
  onChange: b => onSwitchBreakpoint(b)
604
587
  }) : null]
605
588
  })
@@ -18,10 +18,7 @@
18
18
  .ml-1 {
19
19
  margin-left: 10px;
20
20
  }
21
- .m-0
22
- {
23
- margin: 0px
24
- }
21
+
25
22
  .dflex {
26
23
  display: flex;
27
24
  }
@@ -34,7 +31,7 @@ blockquote {
34
31
  border-left: 3px solid transparent;
35
32
  margin-left: 0;
36
33
  margin-right: 0;
37
- /* padding-left: 10px; */
34
+ padding-left: 10px;
38
35
  margin: 0px;
39
36
  }
40
37
 
@@ -45,7 +42,7 @@ blockquote {
45
42
  }
46
43
 
47
44
  .editor-wrapper table {
48
- border-collapse: collapse;
45
+ border-collapse: separate;
49
46
  }
50
47
 
51
48
  .editor-wrapper .editor-wrapperbutton {
@@ -152,7 +149,7 @@ blockquote {
152
149
  .grid-item-toolbar button,
153
150
  .element-toolbar button,
154
151
  .element-toolbar a {
155
- border-radius: 50%;
152
+ border-radius: 10px;
156
153
  border: 1px solid rgba(37, 99, 235, 0.32);
157
154
  background: #fff;
158
155
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.16);
@@ -228,13 +225,9 @@ blockquote {
228
225
  background-color: #0052cc;
229
226
  padding: 8px 12px;
230
227
  color: #ffffff;
231
- font-weight: 600;
232
- font-size: 14px;
228
+ font-weight: bold;
233
229
  opacity: 1;
234
230
  border-radius: 32px;
235
- text-transform: math-auto;
236
- height: 36px;
237
- padding: 0px 12px;
238
231
  }
239
232
 
240
233
  .signature-btn-container button:hover {
@@ -358,17 +351,13 @@ blockquote {
358
351
  height: 100%;
359
352
  width: 100%;
360
353
  border: 1px solid #2563EB;
361
- border-radius: 7px;
354
+ border-radius: 12px;
362
355
  }
363
356
 
364
357
  .activeBrush svg {
365
358
  stroke: #2563eb;
366
359
  }
367
360
 
368
- .brushIcon:hover {
369
- background: unset;
370
- }
371
-
372
361
  .react-datepicker__input-container {
373
362
  display: flex !important;
374
363
  align-items: center;
@@ -394,7 +383,7 @@ blockquote {
394
383
 
395
384
  .dialog-actions-si .MuiButtonBase-root {
396
385
  opacity: 1;
397
- padding: 0px 5px 0px 2px !important
386
+ padding: 6px 5px 0px 3px !important
398
387
  }
399
388
 
400
389
  .signature-tab {
@@ -408,9 +397,9 @@ blockquote {
408
397
  .signature-tab2 {
409
398
  /* display: flex; */
410
399
  align-items: center;
411
- border-width: 1px;
400
+ border-width: 0px, 0px, 0px, 0px;
412
401
  border-style: solid;
413
- border-color: #2563EB66;
402
+ border-color: #2563EB;
414
403
  justify-content: center;
415
404
  flex-direction: column;
416
405
  width: 100%;
@@ -502,19 +491,11 @@ blockquote {
502
491
  text-transform: none;
503
492
  }
504
493
 
505
- .MuiButton-root.primaryBtn:disabled {
494
+ .MuiButton-root.primaryBtn.disabled,
495
+ .MuiButton-root.secondaryBtn.disabled {
506
496
  background: #eee !important;
507
- box-shadow: none !important;
508
497
  color: #ccc !important;
509
498
  border: 1px solid #ccc !important;
510
- cursor: not-allowed;
511
- }
512
-
513
- .MuiButton-root.primaryBtn.disabled,
514
- .MuiButton-root.secondaryBtn.disabled {
515
- background: #eee;
516
- color: #ccc;
517
- border: 1px solid #ccc;
518
499
  }
519
500
 
520
501
  .MuiButton-root.secondaryBtn {
@@ -535,7 +516,7 @@ blockquote {
535
516
  }
536
517
 
537
518
  .deleteBtn {
538
- background: #d32f2f ;
519
+ background: #ffffff;
539
520
  border: 1px solid #d32f2f !important;
540
521
  box-shadow: 0px 8px 24px rgba(30, 64, 175, 0.08);
541
522
  border-radius: 8px !important;
@@ -545,7 +526,6 @@ blockquote {
545
526
  margin-right: 15px !important;
546
527
  color: #d32f2f;
547
528
  width: auto !important;
548
- text-transform: capitalize !important;
549
529
  }
550
530
 
551
531
  @media (max-width: 480px) {
@@ -643,7 +623,7 @@ blockquote {
643
623
  }
644
624
 
645
625
  .MuiIconButton-root.btnActive {
646
- color: #2563EB !important;
626
+ background-color: #ccc;
647
627
  }
648
628
 
649
629
  .embed .element-toolbar {
@@ -683,8 +663,7 @@ blockquote {
683
663
  }
684
664
 
685
665
  .resize-br.img-resizer {
686
- bottom: 10px;
687
- right: 5px;
666
+ bottom: 8px;
688
667
  }
689
668
 
690
669
  .visible-on-hover {
@@ -879,8 +858,8 @@ blockquote {
879
858
 
880
859
  .dialogComp .MuiInputBase-input {
881
860
  border-radius: 8px;
882
- /* box-shadow: 0px 4px 18px 0px rgba(0, 0, 0, 0.05); */
883
- font-size: 14px;
861
+ box-shadow: 0px 4px 18px 0px rgba(0, 0, 0, 0.05);
862
+ font-size: 12px;
884
863
  font-weight: 500;
885
864
  }
886
865
 
@@ -1044,11 +1023,11 @@ blockquote {
1044
1023
  width: 200px;
1045
1024
  cursor: pointer;
1046
1025
  color: #464646;
1047
- /* background-color: #fff; */
1026
+ background-color: #fff;
1048
1027
  padding: 4px 6px;
1049
1028
  border-radius: 12px;
1050
1029
  span {
1051
- text-transform: math-auto;
1030
+ text-transform: capitalize;
1052
1031
  }
1053
1032
  @media only screen and (max-width: 599px) {
1054
1033
  background-color: unset;
@@ -1070,7 +1049,7 @@ blockquote {
1070
1049
  }
1071
1050
 
1072
1051
  .textFontArrows .MuiIconButton-root {
1073
- padding: 0px;
1052
+ padding: 2px;
1074
1053
  }
1075
1054
 
1076
1055
  .tools-drawer .MuiTypography-root {
@@ -1094,10 +1073,6 @@ blockquote {
1094
1073
  font-size: 14px;
1095
1074
  }
1096
1075
 
1097
- .listItemMargin {
1098
- margin: 0px;
1099
- }
1100
-
1101
1076
  .content-editable.empty {
1102
1077
  position: relative;
1103
1078
  }
@@ -1251,10 +1226,8 @@ blockquote {
1251
1226
  position: absolute;
1252
1227
  }
1253
1228
 
1254
- .dividerComponent:hover .divider-settings,
1255
- .dividerComponent:hover .element-selector {
1229
+ .dividerComponent:hover .divider-settings {
1256
1230
  display: block;
1257
- pointer-events: auto;
1258
1231
  }
1259
1232
 
1260
1233
  @media (max-width: 899px) {
@@ -1265,61 +1238,3 @@ blockquote {
1265
1238
  max-width: 100% !important;
1266
1239
  }
1267
1240
  }
1268
-
1269
- .settingsHeader {
1270
- font-size: 14px !important;
1271
- font-weight: 500 !important;
1272
- }
1273
- .hideScroll {
1274
- overflow-anchor: none;
1275
- }
1276
-
1277
- .hideScroll::-webkit-scrollbar-track {
1278
- background: none !important;
1279
- }
1280
-
1281
- .hideScroll::-webkit-scrollbar-thumb {
1282
- background: none !important;
1283
- }
1284
-
1285
- .hideScroll::-webkit-scrollbar-thumb:hover {
1286
- background: none !important;
1287
- }
1288
-
1289
- .custom-scroll::-webkit-scrollbar {
1290
- height: .6rem;
1291
- }
1292
-
1293
- .custom-scroll::-webkit-scrollbar-thumb {
1294
- background: #888;
1295
- border-radius: 5px;
1296
- cursor: pointer;
1297
- }
1298
-
1299
- .custom-scroll::-webkit-scrollbar-track {
1300
- background: #f1f1f1;
1301
- }
1302
-
1303
- .custom-scroll:hover::-webkit-scrollbar-thumb {
1304
- background: #A7AEC1;
1305
- }
1306
-
1307
- ::selection {
1308
- color: inherit;
1309
- background: rgba(35, 131, 226, 0.35) !important;
1310
- }
1311
-
1312
- ::-moz-selection {
1313
- background: rgba(35, 131, 226, 0.35) !important;
1314
- color: inherit;
1315
- }
1316
-
1317
- ::-webkit-selection {
1318
- background: rgba(35, 131, 226, 0.35) !important;
1319
- color: inherit;
1320
- }
1321
-
1322
- .gradientFillBtn {
1323
- background: linear-gradient(112.61deg, #2C63ED 19.3%, #8360FD 88.14%) !important;
1324
- text-transform: math-auto !important;
1325
- }
@@ -71,6 +71,7 @@ function AIInput({
71
71
  }, [openAI]);
72
72
  const isSendBtnDisabled = !inputValue || loading;
73
73
  const props = getProps(openAI, generatedText) || {};
74
+ const fromToolBar = openAI === "fromToolBar";
74
75
  const handleSendBtnClick = () => {
75
76
  if (isSendBtnDisabled) {
76
77
  return;
@@ -8,14 +8,12 @@ function CustomSelect({
8
8
  classes,
9
9
  options,
10
10
  onSend,
11
- show,
12
- btnProps = {}
11
+ show
13
12
  }) {
14
13
  if (show) {
15
14
  return /*#__PURE__*/_jsx(Box, {
16
15
  component: "div",
17
16
  sx: classes.customSelectContainer,
18
- className: "customSelectContainer",
19
17
  children: options?.map((groupOption, index) => {
20
18
  const {
21
19
  options,
@@ -30,8 +28,7 @@ function CustomSelect({
30
28
  return /*#__PURE__*/_jsx(DisplayOption, {
31
29
  option: option,
32
30
  classes: classes,
33
- onSend: onSend,
34
- btnProps: btnProps
31
+ onSend: onSend
35
32
  }, i);
36
33
  })]
37
34
  }, index);
@@ -45,18 +42,15 @@ export default CustomSelect;
45
42
  function DisplayOption({
46
43
  option,
47
44
  classes,
48
- onSend,
49
- btnProps = {}
45
+ onSend
50
46
  }) {
51
47
  const {
52
- Icon,
53
- Component
48
+ Icon
54
49
  } = option;
55
50
  const [open, setOpen] = useState(false);
56
51
  const optionRef = useRef();
57
- const showChild = option.options?.length || Component;
58
52
  const openOptions = e => {
59
- if (showChild && !open) {
53
+ if (option.options?.length && !open) {
60
54
  setOpen(e.currentTarget);
61
55
  return;
62
56
  }
@@ -72,7 +66,7 @@ function DisplayOption({
72
66
  e.stopPropagation();
73
67
 
74
68
  // is having child options
75
- if (showChild) {
69
+ if (option.options?.length) {
76
70
  openOptions(e);
77
71
  return;
78
72
  }
@@ -81,19 +75,18 @@ function DisplayOption({
81
75
  },
82
76
  id: "infinity-select-popover",
83
77
  className: open ? "active" : "",
84
- ...btnProps,
85
78
  children: [/*#__PURE__*/_jsxs("div", {
86
79
  className: "option-label",
87
80
  id: "infinity-select-popover",
88
81
  children: [Icon && /*#__PURE__*/_jsx(Icon, {}), option.label]
89
- }), showChild ? /*#__PURE__*/_jsx(IconButton, {
82
+ }), option.options?.length && /*#__PURE__*/_jsx(IconButton, {
90
83
  children: /*#__PURE__*/_jsx(FaChevronRight, {
91
84
  color: "#94A3B8",
92
85
  size: 12
93
86
  })
94
- }) : null]
87
+ })]
95
88
  }), /*#__PURE__*/_jsx(Popper, {
96
- open: open && showChild,
89
+ open: open && option.options,
97
90
  anchorEl: open,
98
91
  sx: {
99
92
  zIndex: 9001,
@@ -103,7 +96,7 @@ function DisplayOption({
103
96
  setOpen(null);
104
97
  },
105
98
  placement: "right-start",
106
- children: Component ? /*#__PURE__*/_jsx(Component, {}) : /*#__PURE__*/_jsx(Box, {
99
+ children: /*#__PURE__*/_jsx(Box, {
107
100
  children: /*#__PURE__*/_jsx(CustomSelect, {
108
101
  options: option.options,
109
102
  onSend: onSend,