@flozy/editor 10.5.0 → 10.5.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.
Files changed (192) hide show
  1. package/dist/Editor/ChatEditor.js +16 -17
  2. package/dist/Editor/CommonEditor.js +18 -134
  3. package/dist/Editor/DialogWrapper.js +25 -31
  4. package/dist/Editor/Editor.css +8 -46
  5. package/dist/Editor/Elements/AI/PopoverAIInput.js +3 -11
  6. package/dist/Editor/Elements/Accordion/Accordion.js +9 -46
  7. package/dist/Editor/Elements/Accordion/AccordionSummary.js +23 -1
  8. package/dist/Editor/Elements/AppHeader/AppHeader.js +5 -10
  9. package/dist/Editor/Elements/Button/EditorButton.js +10 -26
  10. package/dist/Editor/Elements/Carousel/CarouselItem.js +1 -2
  11. package/dist/Editor/Elements/Color Picker/ColorButtons.js +14 -61
  12. package/dist/Editor/Elements/Color Picker/ColorPicker.css +1 -25
  13. package/dist/Editor/Elements/Color Picker/ColorPicker.js +7 -10
  14. package/dist/Editor/Elements/Color Picker/Styles.js +13 -15
  15. package/dist/Editor/Elements/DataView/Layouts/ColumnView.js +2 -4
  16. package/dist/Editor/Elements/DataView/Layouts/DataTypes/MultiSelectType.js +11 -26
  17. package/dist/Editor/Elements/DataView/Layouts/DataTypes/SelectType.js +9 -28
  18. package/dist/Editor/Elements/DataView/Layouts/Options/AddOptions.js +6 -17
  19. package/dist/Editor/Elements/DataView/Layouts/Options/EditOption.js +16 -43
  20. package/dist/Editor/Elements/DataView/Layouts/Options/index.js +0 -11
  21. package/dist/Editor/Elements/DataView/Layouts/ViewData.js +4 -8
  22. package/dist/Editor/Elements/Embed/Image.js +2 -3
  23. package/dist/Editor/Elements/Embed/Video.js +1 -1
  24. package/dist/Editor/Elements/EmbedScript/Code.js +2 -14
  25. package/dist/Editor/Elements/EmbedScript/EmbedScriptPopup.js +28 -57
  26. package/dist/Editor/Elements/Form/Form.js +171 -184
  27. package/dist/Editor/Elements/Form/FormElements/FormText.js +6 -23
  28. package/dist/Editor/Elements/Form/FormElements/FormTextArea.js +2 -2
  29. package/dist/Editor/Elements/Form/FormField.js +6 -13
  30. package/dist/Editor/Elements/Form/Workflow/Styles.js +22 -24
  31. package/dist/Editor/Elements/FreeGrid/FreeGrid.js +32 -40
  32. package/dist/Editor/Elements/FreeGrid/FreeGridBox.js +4 -7
  33. package/dist/Editor/Elements/FreeGrid/FreeGridItem.js +0 -1
  34. package/dist/Editor/Elements/FreeGrid/Options/More.js +8 -8
  35. package/dist/Editor/Elements/FreeGrid/styles.js +7 -75
  36. package/dist/Editor/Elements/Grid/Grid.js +2 -14
  37. package/dist/Editor/Elements/Grid/GridItem.js +1 -1
  38. package/dist/Editor/Elements/List/CheckList.js +2 -3
  39. package/dist/Editor/Elements/Search/SearchAttachment.js +9 -40
  40. package/dist/Editor/Elements/Search/SearchButton.js +8 -9
  41. package/dist/Editor/Elements/Search/SearchList.js +7 -9
  42. package/dist/Editor/Elements/Signature/Signature.css +1 -2
  43. package/dist/Editor/Elements/Signature/SignatureOptions/DrawSignature.js +5 -18
  44. package/dist/Editor/Elements/Signature/SignatureOptions/UploadSignature.js +3 -16
  45. package/dist/Editor/Elements/SimpleText/index.js +1 -6
  46. package/dist/Editor/Elements/SimpleText/style.js +2 -2
  47. package/dist/Editor/Elements/Table/AddRowCol.js +2 -8
  48. package/dist/Editor/Elements/Table/DragButton.js +1 -0
  49. package/dist/Editor/Elements/Table/Draggable.js +2 -6
  50. package/dist/Editor/Elements/Table/Styles.js +0 -7
  51. package/dist/Editor/Elements/Table/Table.js +3 -3
  52. package/dist/Editor/Elements/Table/TableCell.js +8 -31
  53. package/dist/Editor/Elements/Title/title.js +6 -6
  54. package/dist/Editor/Elements/Variables/VariableButton.js +1 -10
  55. package/dist/Editor/MiniEditor.js +1 -2
  56. package/dist/Editor/Styles/EditorStyles.js +5 -5
  57. package/dist/Editor/Toolbar/FormatTools/Dropdown.js +3 -27
  58. package/dist/Editor/Toolbar/FormatTools/FontFamilyAutocomplete.js +3 -4
  59. package/dist/Editor/Toolbar/FormatTools/MarkButton.js +2 -2
  60. package/dist/Editor/Toolbar/FormatTools/TextSize.js +13 -10
  61. package/dist/Editor/Toolbar/Mini/MiniToolbar.js +1 -2
  62. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/MiniColorPicker.js +2 -4
  63. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +13 -6
  64. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +42 -167
  65. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +4 -7
  66. package/dist/Editor/Toolbar/PopupTool/PopperHeader.js +1 -2
  67. package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +12 -72
  68. package/dist/Editor/Toolbar/PopupTool/TextFormat.js +27 -100
  69. package/dist/Editor/Toolbar/PopupTool/index.js +1 -1
  70. package/dist/Editor/Toolbar/toolbarGroups.js +6 -48
  71. package/dist/Editor/assets/svg/SettingsIcon.js +0 -1
  72. package/dist/Editor/common/ColorPickerButton.js +16 -41
  73. package/dist/Editor/common/DnD/DragHandleButton.js +1 -1
  74. package/dist/Editor/common/FontLoader/FontLoader.js +0 -3
  75. package/dist/Editor/common/Icon.js +1 -31
  76. package/dist/Editor/common/ImageSelector/ImageSelector.js +2 -2
  77. package/dist/Editor/common/ImageSelector/Styles.js +9 -3
  78. package/dist/Editor/common/LinkSettings/NavComponents.js +55 -61
  79. package/dist/Editor/common/LinkSettings/index.js +80 -82
  80. package/dist/Editor/common/LinkSettings/navOptions.js +2 -2
  81. package/dist/Editor/common/LinkSettings/style.js +74 -209
  82. package/dist/Editor/common/MentionsPopup/index.js +1 -4
  83. package/dist/Editor/common/RnD/ElementOptions/Actions.js +15 -13
  84. package/dist/Editor/common/RnD/ElementOptions/Icons/LinkIcon.js +0 -1
  85. package/dist/Editor/common/RnD/ElementOptions/index.js +2 -2
  86. package/dist/Editor/common/RnD/ElementOptions/styles.js +1 -28
  87. package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Settings.js +5 -6
  88. package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Signature.js +3 -4
  89. package/dist/Editor/common/RnD/ElementSettings/Settings/AppHeaderSettings.js +2 -3
  90. package/dist/Editor/common/RnD/ElementSettings/Settings/BoxSettings.js +2 -3
  91. package/dist/Editor/common/RnD/ElementSettings/Settings/ButtonSettings.js +2 -3
  92. package/dist/Editor/common/RnD/ElementSettings/Settings/CodeSettings.js +2 -3
  93. package/dist/Editor/common/RnD/ElementSettings/Settings/FormSettings.js +2 -4
  94. package/dist/Editor/common/RnD/ElementSettings/Settings/ImageSettings.js +2 -3
  95. package/dist/Editor/common/RnD/ElementSettings/Settings/TableSettings.js +2 -3
  96. package/dist/Editor/common/RnD/ElementSettings/Settings/TextSettings.js +1 -3
  97. package/dist/Editor/common/RnD/ElementSettings/Settings/VideoSettings.js +2 -3
  98. package/dist/Editor/common/RnD/ElementSettings/styles.js +12 -146
  99. package/dist/Editor/common/RnD/OptionsPopup/index.js +5 -8
  100. package/dist/Editor/common/RnD/OptionsPopup/style.js +19 -120
  101. package/dist/Editor/common/RnD/SwitchViewport/SwitchViewport.js +5 -8
  102. package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +3 -6
  103. package/dist/Editor/common/RnD/Utils/gridDropItem.js +19 -28
  104. package/dist/Editor/common/RnD/Utils/index.js +1 -3
  105. package/dist/Editor/common/RnD/VirtualElement/VirtualTextElement.js +58 -42
  106. package/dist/Editor/common/RnD/VirtualElement/helper.js +132 -323
  107. package/dist/Editor/common/RnD/VirtualElement/styles.js +0 -16
  108. package/dist/Editor/common/RnD/index.js +38 -67
  109. package/dist/Editor/common/Select/index.js +5 -44
  110. package/dist/Editor/common/Select/styles.js +2 -30
  111. package/dist/Editor/common/Shorthands/elements.js +11 -65
  112. package/dist/Editor/common/StyleBuilder/accordionTitleBtnStyle.js +2 -2
  113. package/dist/Editor/common/StyleBuilder/accordionTitleStyle.js +9 -12
  114. package/dist/Editor/common/StyleBuilder/buttonStyle.js +2 -4
  115. package/dist/Editor/common/StyleBuilder/embedVideoStyle.js +0 -4
  116. package/dist/Editor/common/StyleBuilder/fieldTypes/backgroundImage.js +0 -5
  117. package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +2 -12
  118. package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +7 -15
  119. package/dist/Editor/common/StyleBuilder/fieldTypes/card.js +8 -16
  120. package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +10 -36
  121. package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +7 -16
  122. package/dist/Editor/common/StyleBuilder/fieldTypes/index.js +1 -3
  123. package/dist/Editor/common/StyleBuilder/fieldTypes/lineSpacing.js +6 -7
  124. package/dist/Editor/common/StyleBuilder/fieldTypes/menusArray.js +6 -13
  125. package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +7 -15
  126. package/dist/Editor/common/StyleBuilder/pageSettingsStyle.js +7 -5
  127. package/dist/Editor/common/SwipeableDrawer/style.js +12 -14
  128. package/dist/Editor/common/Uploader.js +0 -16
  129. package/dist/Editor/common/iconListV2.js +6 -177
  130. package/dist/Editor/common/iconslist.js +0 -24
  131. package/dist/Editor/commonStyle.js +62 -186
  132. package/dist/Editor/helper/index.js +1 -5
  133. package/dist/Editor/helper/theme.js +2 -203
  134. package/dist/Editor/hooks/useMouseMove.js +5 -8
  135. package/dist/Editor/hooks/useTable.js +4 -5
  136. package/dist/Editor/plugins/withEmbeds.js +1 -1
  137. package/dist/Editor/plugins/withHTML.js +1 -3
  138. package/dist/Editor/plugins/withTable.js +1 -1
  139. package/dist/Editor/theme/ThemeList.js +173 -50
  140. package/dist/Editor/utils/SlateUtilityFunctions.js +46 -172
  141. package/dist/Editor/utils/accordion.js +4 -14
  142. package/dist/Editor/utils/button.js +17 -1
  143. package/dist/Editor/utils/customHooks/useTableResize.js +9 -49
  144. package/dist/Editor/utils/draftToSlate.js +2 -3
  145. package/dist/Editor/utils/events.js +6 -50
  146. package/dist/Editor/utils/font.js +37 -40
  147. package/dist/Editor/utils/form.js +4 -4
  148. package/dist/Editor/utils/formfield.js +2 -9
  149. package/dist/Editor/utils/helper.js +26 -215
  150. package/dist/Editor/utils/insertAppHeader.js +1 -1
  151. package/dist/Editor/utils/signature.js +9 -2
  152. package/package.json +4 -4
  153. package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/SelectV1.js +0 -510
  154. package/dist/Editor/Elements/EmbedScript/styles.js +0 -89
  155. package/dist/Editor/Elements/FreeGrid/helper.js +0 -115
  156. package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +0 -439
  157. package/dist/Editor/assets/svg/BackIcon.js +0 -18
  158. package/dist/Editor/assets/svg/ClearAllRounded.js +0 -31
  159. package/dist/Editor/assets/svg/ResetIconNew.js +0 -23
  160. package/dist/Editor/assets/svg/ThemeIcons.js +0 -293
  161. package/dist/Editor/common/Checkbox/index.js +0 -46
  162. package/dist/Editor/common/Checkbox/styles.js +0 -45
  163. package/dist/Editor/common/CustomColorPicker/index.js +0 -130
  164. package/dist/Editor/common/CustomColorPicker/style.js +0 -53
  165. package/dist/Editor/common/CustomDialog2/index.js +0 -94
  166. package/dist/Editor/common/CustomDialog2/style.js +0 -67
  167. package/dist/Editor/common/CustomSelect.js +0 -43
  168. package/dist/Editor/common/RadioGroup/index.js +0 -48
  169. package/dist/Editor/common/RadioGroup/styles.js +0 -29
  170. package/dist/Editor/common/RnD/Theme/MainThemeProvider.js +0 -17
  171. package/dist/Editor/common/SnackBar/index.js +0 -43
  172. package/dist/Editor/common/StyleBuilder/fieldTypes/embedUpload.js +0 -115
  173. package/dist/Editor/helper/textIndeces.js +0 -58
  174. package/dist/Editor/hooks/useEditorTheme.js +0 -153
  175. package/dist/Editor/hooks/useThemeValues.js +0 -63
  176. package/dist/Editor/theme/index.js +0 -149
  177. package/dist/Editor/themeSettings/ActiveTheme.js +0 -82
  178. package/dist/Editor/themeSettings/buttons/index.js +0 -300
  179. package/dist/Editor/themeSettings/buttons/style.js +0 -23
  180. package/dist/Editor/themeSettings/colorTheme/index.js +0 -310
  181. package/dist/Editor/themeSettings/colorTheme/style.js +0 -81
  182. package/dist/Editor/themeSettings/fonts/PreviewElement.js +0 -121
  183. package/dist/Editor/themeSettings/fonts/index.js +0 -240
  184. package/dist/Editor/themeSettings/fonts/style.js +0 -62
  185. package/dist/Editor/themeSettings/icons.js +0 -60
  186. package/dist/Editor/themeSettings/index.js +0 -380
  187. package/dist/Editor/themeSettings/style.js +0 -299
  188. package/dist/Editor/themeSettingsAI/icons.js +0 -96
  189. package/dist/Editor/themeSettingsAI/index.js +0 -355
  190. package/dist/Editor/themeSettingsAI/saveTheme.js +0 -202
  191. package/dist/Editor/themeSettingsAI/style.js +0 -332
  192. package/dist/Editor/utils/updateFormName.js +0 -22
@@ -34,12 +34,12 @@ import SimpleText from "../Elements/SimpleText";
34
34
  import CheckList from "../Elements/List/CheckList";
35
35
  import { getTextColor, isEmptyTextNode } from "../helper";
36
36
  import Attachments from "../Elements/Attachments/Attachments";
37
- import { getBreakpointLineSpacing, getBreakPointsValue, getDevice, getElementProperty, textThemeFields } from "../helper/theme";
37
+ import { getBreakPointsValue, groupByBreakpoint } from "../helper/theme";
38
38
  import Variables from "../Elements/Variables/Variable";
39
+ import insertNewLine from "./insertNewLine";
39
40
  import Divider from "../Elements/Divider/Divider";
40
41
  import { getBorderColor, getSlateDom } from "./helper";
41
42
  import Code from "../Elements/EmbedScript/Code";
42
- import { ReactEditor } from "slate-react";
43
43
  import FreeGrid from "../Elements/FreeGrid/FreeGrid";
44
44
  import FreeGridItem from "../Elements/FreeGrid/FreeGridItem";
45
45
  import FreeGridBox from "../Elements/FreeGrid/FreeGridBox";
@@ -47,7 +47,7 @@ import DataView from "../Elements/DataView/DataView";
47
47
  import ViewData from "../Elements/DataView/Layouts/ViewData";
48
48
  import ColumnView from "../Elements/DataView/Layouts/ColumnView";
49
49
  import SearchAttachment from "../Elements/Search/SearchAttachment";
50
- import { wrapThemeBreakpoints } from "../Elements/FreeGrid/breakpointConstants";
50
+ // import { wrapThemeBreakpoints } from "../Elements/FreeGrid/breakpointConstants";
51
51
  import { jsx as _jsx } from "react/jsx-runtime";
52
52
  import { jsxs as _jsxs } from "react/jsx-runtime";
53
53
  const alignment = ["alignLeft", "alignRight", "alignCenter", "alignJustify"];
@@ -56,17 +56,7 @@ const LIST_FORMAT_TYPE = {
56
56
  orderedList: "list-item",
57
57
  unorderedList: "list-item"
58
58
  };
59
-
60
- // const NEWLINESAFTER = [
61
- // "headingOne",
62
- // "headingTwo",
63
- // "headingThree",
64
- // "headingFour",
65
- // "headingFive",
66
- // "headingSix",
67
- // ];
68
-
69
- const THEME_BLOCK_FIELDS = ["headingOne", "headingTwo", "headingThree", "headingFour", "headingFive", "headingSix", "paragraphOne", "paragraphTwo", "paragraphThree"];
59
+ const NEWLINESAFTER = ["headingOne", "headingTwo", "headingThree", "headingFour", "headingFive", "headingSix"];
70
60
  export const toggleBlock = (editor, format, selection = true, attr = {}) => {
71
61
  const isActive = isBlockActive(editor, format);
72
62
  const isList = list_types.includes(format);
@@ -99,9 +89,8 @@ export const toggleBlock = (editor, format, selection = true, attr = {}) => {
99
89
  if (!selection) {
100
90
  Transforms.insertText(editor, "");
101
91
  }
102
- const forActiveType = THEME_BLOCK_FIELDS.some(f => f === format) ? format : "paragraph";
103
92
  Transforms.setNodes(editor, {
104
- type: isActive ? forActiveType : isList ? LIST_FORMAT_TYPE[format] : format,
93
+ type: isActive ? "paragraph" : isList ? LIST_FORMAT_TYPE[format] : format,
105
94
  ...attr
106
95
  });
107
96
  if (isList && !isActive) {
@@ -110,12 +99,10 @@ export const toggleBlock = (editor, format, selection = true, attr = {}) => {
110
99
  children: []
111
100
  });
112
101
  }
113
-
114
- // if (NEWLINESAFTER.indexOf(format) > -1) {
115
- // insertNewLine(editor);
116
- // }
102
+ if (NEWLINESAFTER.indexOf(format) > -1) {
103
+ insertNewLine(editor);
104
+ }
117
105
  };
118
-
119
106
  export const addMarkData = (editor, data) => {
120
107
  try {
121
108
  Editor.addMark(editor, data.format, data.value);
@@ -124,14 +111,9 @@ export const addMarkData = (editor, data) => {
124
111
  }
125
112
  };
126
113
  export const toggleMark = (editor, format) => {
127
- const isActive = isMarkBtnActive(editor, format);
114
+ const isActive = isMarkActive(editor, format);
128
115
  if (isActive) {
129
- const isThemeSupportedMark = textThemeFields.some(f => f === format);
130
- if (isThemeSupportedMark) {
131
- Editor.addMark(editor, format, false);
132
- } else {
133
- Editor.removeMark(editor, format);
134
- }
116
+ Editor.removeMark(editor, format);
135
117
  } else {
136
118
  Editor.addMark(editor, format, true);
137
119
  }
@@ -145,58 +127,6 @@ export const isMarkActive = (editor, format) => {
145
127
  return null;
146
128
  }
147
129
  };
148
- export const isMarkBtnActive = (editor, format) => {
149
- switch (format) {
150
- case "bold":
151
- {
152
- const style = getSelectedElementStyle("font-weight", editor);
153
- return style === "700";
154
- }
155
- case "italic":
156
- {
157
- const style = getSelectedElementStyle("font-style", editor);
158
- return style === format;
159
- }
160
- // case "underline": {
161
- // const style = getSelectedElementStyle("text-decoration");
162
-
163
- // return style?.includes(format);
164
- // }
165
- // case "strikethrough": {
166
- // const style = getSelectedElementStyle("text-decoration");
167
-
168
- // return style?.includes("line-through");
169
- // }
170
- default:
171
- return isMarkActive(editor, format);
172
- }
173
- };
174
- export const getSelectedElementStyle = (styleProperty, editor, format) => {
175
- try {
176
- if (!editor.selection) {
177
- return "";
178
- }
179
- if (Range.isCollapsed(editor.selection)) {
180
- return "";
181
- }
182
- if (format) {
183
- const value = activeMark(editor, format, true);
184
- if (value) {
185
- return value;
186
- }
187
- }
188
- const domRange = ReactEditor.toDOMRange(editor, editor.selection);
189
- const selectedDomNode = domRange.commonAncestorContainer;
190
-
191
- // If it's a text node, get its parent element
192
- const selectedElement = selectedDomNode.nodeType === 3 ? selectedDomNode.parentElement : selectedDomNode;
193
- if (selectedElement) {
194
- return getElementProperty(selectedElement, styleProperty);
195
- }
196
- } catch (err) {
197
- console.log(err);
198
- }
199
- };
200
130
  export const isBlockActive = (editor, format) => {
201
131
  const [match] = Editor.nodes(editor, {
202
132
  match: n => !Editor.isEditor(n) && SlateElement.isElement(n) && n.type === format
@@ -222,7 +152,7 @@ export const upateBlockActive = (editor, format, attr = {}) => {
222
152
  });
223
153
  }
224
154
  };
225
- export const activeMark = (editor, format, noDefaultValue) => {
155
+ export const activeMark = (editor, format) => {
226
156
  const defaultMarkData = {
227
157
  color: "#000000",
228
158
  bgColor: "#FFFFFF",
@@ -232,7 +162,7 @@ export const activeMark = (editor, format, noDefaultValue) => {
232
162
  };
233
163
  try {
234
164
  const marks = Editor.marks(editor);
235
- let defaultValue = noDefaultValue ? "" : defaultMarkData[format];
165
+ let defaultValue = defaultMarkData[format];
236
166
  const {
237
167
  selection
238
168
  } = editor || {};
@@ -249,36 +179,8 @@ export const activeMark = (editor, format, noDefaultValue) => {
249
179
  return null;
250
180
  }
251
181
  };
252
-
253
- // to avoid the styles, that automatically assign from themes
254
- const getThemeMarkedLeaf = (leaf, children) => {
255
- const {
256
- italic,
257
- bold
258
- } = leaf || {};
259
- const style = {};
260
- if (italic === false) {
261
- style.fontStyle = "normal";
262
- }
263
- if (bold === false) {
264
- style.fontWeight = "normal";
265
- }
266
- if (Object.keys(style).length) {
267
- children = /*#__PURE__*/_jsx(Box, {
268
- component: "span",
269
- sx: {
270
- "& span": style
271
- },
272
- children: children
273
- });
274
- }
275
- return children;
276
- };
277
182
  export const getMarked = (leaf, children, theme) => {
278
183
  const className = leaf?.doublequote ? "doublequote" : "";
279
- const lineH = leaf?.lineHeight;
280
- const breakpoint = getDevice(window.innerWidth);
281
- const lineHeight = getBreakpointLineSpacing(lineH, breakpoint);
282
184
  if (leaf.highlight) {
283
185
  children = /*#__PURE__*/_jsx("span", {
284
186
  style: {
@@ -303,7 +205,6 @@ export const getMarked = (leaf, children, theme) => {
303
205
  children: children
304
206
  });
305
207
  }
306
- children = getThemeMarkedLeaf(leaf, children);
307
208
  if (leaf.strikethrough) {
308
209
  children = /*#__PURE__*/_jsx("span", {
309
210
  style: {
@@ -328,18 +229,9 @@ export const getMarked = (leaf, children, theme) => {
328
229
  });
329
230
  }
330
231
  // cover under single span
331
- if (leaf.color || leaf.bgColor || leaf.fontSize || leaf.fontFamily || leaf.fontWeight || lineHeight || className) {
232
+ if (leaf.color || leaf.bgColor || leaf.fontSize || leaf.fontFamily || leaf.fontWeight || className) {
332
233
  const family = leaf?.fontFamily;
333
234
  const textStyles = getTextColor(leaf?.color);
334
- const fontSize = {
335
- lg: sizeMap[leaf.fontSize] || leaf.fontSize,
336
- ...getBreakPointsValue(leaf.fontSize, null, "overrideText")
337
- };
338
- const fontSizesImportant = {};
339
- Object.entries(fontSize).forEach(([key, value]) => {
340
- fontSizesImportant[key] = `${value} !important`;
341
- });
342
- const fontSizeWithBreakpoints = wrapThemeBreakpoints(fontSizesImportant, "fontSize", theme);
343
235
  children = /*#__PURE__*/_jsx("span", {
344
236
  style: {
345
237
  background: leaf.bgColor
@@ -348,13 +240,12 @@ export const getMarked = (leaf, children, theme) => {
348
240
  className: `${className} leaf-item`,
349
241
  component: "span",
350
242
  sx: {
351
- "& span": {
352
- // fontSize: fontSizesImportant,
353
- // ...groupByBreakpoint(fontSizesImportant, theme),
354
- background: leaf.bgColor,
355
- ...fontSizeWithBreakpoints
356
- },
357
- ...fontSizeWithBreakpoints,
243
+ ...groupByBreakpoint({
244
+ fontSize: {
245
+ lg: sizeMap[leaf.fontSize] || leaf.fontSize,
246
+ ...getBreakPointsValue(leaf.fontSize, null, "overrideText")
247
+ }
248
+ }, theme),
358
249
  // ...wrapThemeBreakpoints(
359
250
  // {
360
251
  // lg: sizeMap[leaf.fontSize] || leaf.fontSize,
@@ -406,23 +297,12 @@ export const getBlock = props => {
406
297
  const {
407
298
  translation
408
299
  } = customProps;
409
- const commonHeadingProps = () => ({
410
- ...attributes,
411
- ...element.attr,
412
- className: `edt-headings content-editable ${isEmpty ? "empty" : ""} theme-element`
413
- });
414
- const commonParaProps = paraType => ({
415
- ...attributes,
416
- ...element.attr,
417
- className: `edt-paragraphs content-editable ${isEmpty ? "empty" : ""} theme-element ${paraType}`
418
- });
419
- const breakpoint = getDevice(window.innerWidth);
420
- const lineH = element?.children[0]?.lineHeight;
421
- const selectedLineHeight = getBreakpointLineSpacing(lineH, breakpoint);
422
300
  switch (element.type) {
423
301
  case "headingOne":
424
302
  return /*#__PURE__*/_jsxs("h1", {
425
- ...commonHeadingProps(),
303
+ ...attributes,
304
+ ...element.attr,
305
+ className: `edt-headings content-editable ${isEmpty ? "empty" : ""}`,
426
306
  placeholder: translation("Heading 1"),
427
307
  children: [children, /*#__PURE__*/_jsx("span", {
428
308
  contentEditable: false
@@ -430,7 +310,9 @@ export const getBlock = props => {
430
310
  });
431
311
  case "headingTwo":
432
312
  return /*#__PURE__*/_jsxs("h2", {
433
- ...commonHeadingProps(),
313
+ ...attributes,
314
+ ...element.attr,
315
+ className: `edt-headings content-editable ${isEmpty ? "empty" : ""}`,
434
316
  placeholder: translation("Heading 2"),
435
317
  children: [children, /*#__PURE__*/_jsx("span", {
436
318
  contentEditable: false
@@ -438,7 +320,9 @@ export const getBlock = props => {
438
320
  });
439
321
  case "headingThree":
440
322
  return /*#__PURE__*/_jsxs("h3", {
441
- ...commonHeadingProps(),
323
+ ...attributes,
324
+ ...element.attr,
325
+ className: `edt-headings content-editable ${isEmpty ? "empty" : ""}`,
442
326
  placeholder: translation("Heading 3"),
443
327
  children: [children, /*#__PURE__*/_jsx("span", {
444
328
  contentEditable: false
@@ -446,7 +330,9 @@ export const getBlock = props => {
446
330
  });
447
331
  case "headingFour":
448
332
  return /*#__PURE__*/_jsxs("h4", {
449
- ...commonHeadingProps(),
333
+ ...attributes,
334
+ ...element.attr,
335
+ className: `edt-headings content-editable ${isEmpty ? "empty" : ""}`,
450
336
  placeholder: translation("Heading 4"),
451
337
  children: [children, /*#__PURE__*/_jsx("span", {
452
338
  contentEditable: false
@@ -454,7 +340,9 @@ export const getBlock = props => {
454
340
  });
455
341
  case "headingFive":
456
342
  return /*#__PURE__*/_jsxs("h5", {
457
- ...commonHeadingProps(),
343
+ ...attributes,
344
+ ...element.attr,
345
+ className: `edt-headings content-editable ${isEmpty ? "empty" : ""}`,
458
346
  placeholder: translation("Heading 5"),
459
347
  children: [children, /*#__PURE__*/_jsx("span", {
460
348
  contentEditable: false
@@ -462,30 +350,14 @@ export const getBlock = props => {
462
350
  });
463
351
  case "headingSix":
464
352
  return /*#__PURE__*/_jsxs("h6", {
465
- ...commonHeadingProps(),
353
+ ...attributes,
354
+ ...element.attr,
355
+ className: `edt-headings content-editable ${isEmpty ? "empty" : ""}`,
466
356
  placeholder: translation("Heading 6"),
467
357
  children: [children, /*#__PURE__*/_jsx("span", {
468
358
  contentEditable: false
469
359
  })]
470
360
  });
471
- case "paragraphOne":
472
- return /*#__PURE__*/_jsx("p", {
473
- ...commonParaProps("para1"),
474
- placeholder: "Paragraph 1",
475
- children: children
476
- });
477
- case "paragraphTwo":
478
- return /*#__PURE__*/_jsx("p", {
479
- ...commonParaProps("para2"),
480
- placeholder: "Paragraph 2",
481
- children: children
482
- });
483
- case "paragraphThree":
484
- return /*#__PURE__*/_jsx("p", {
485
- ...commonParaProps("para3"),
486
- placeholder: "Paragraph 3",
487
- children: children
488
- });
489
361
  case "blockquote":
490
362
  return /*#__PURE__*/_jsx("blockquote", {
491
363
  ...attributes,
@@ -499,7 +371,7 @@ export const getBlock = props => {
499
371
  margin: `${element?.bgColor ? "16px" : "0px"} 0px`,
500
372
  width: element?.bgColor ? "calc(100% - 16px)" : "100%",
501
373
  borderWidth: element?.color ? "0px 0px 0px 3px" : "0px",
502
- lineHeight: `${selectedLineHeight} !important`
374
+ lineHeight: 1.43
503
375
  },
504
376
  children: children
505
377
  });
@@ -553,13 +425,15 @@ export const getBlock = props => {
553
425
  className: `content-editable ${isEmpty ? "empty" : ""}`,
554
426
  placeholder: translation("List"),
555
427
  style: {
556
- color: firstChildren?.color,
557
- lineHeight: `${selectedLineHeight}`
428
+ color: firstChildren?.color
558
429
  },
559
430
  children: children
560
431
  });
561
432
  case "orderedList":
562
433
  return /*#__PURE__*/_jsx("ol", {
434
+ style: {
435
+ lineHeight: 1.43
436
+ },
563
437
  className: "listItemMargin",
564
438
  type: "1",
565
439
  ...attributes,
@@ -567,6 +441,9 @@ export const getBlock = props => {
567
441
  });
568
442
  case "unorderedList":
569
443
  return /*#__PURE__*/_jsx("ul", {
444
+ style: {
445
+ lineHeight: 1.43
446
+ },
570
447
  className: "listItemMargin",
571
448
  ...attributes,
572
449
  children: children
@@ -574,7 +451,6 @@ export const getBlock = props => {
574
451
  case "check-list-item":
575
452
  return /*#__PURE__*/_jsx(CheckList, {
576
453
  ...props,
577
- selectedLineHeight: selectedLineHeight,
578
454
  isEmpty: isEmpty
579
455
  });
580
456
  case "link":
@@ -794,10 +670,8 @@ export const getQueryStrings = urlString => {
794
670
  const newUrl = new URL(urlString);
795
671
  var youCode = newUrl.searchParams.get("v");
796
672
  if (!youCode) {
797
- const parts = newUrl.pathname.split("/");
798
- youCode = parts[parts.length - 1]; // video ID
673
+ youCode = newUrl.pathname.replace("/", "");
799
674
  }
800
-
801
675
  return `https://www.youtube.com/embed/${youCode}`;
802
676
  } else {
803
677
  return urlString;
@@ -1,13 +1,6 @@
1
1
  import { Transforms } from "slate";
2
2
  import insertNewLine from "./insertNewLine";
3
3
  import { getSelectedText } from "./helper";
4
- import { isMobileWindow } from "../helper";
5
- const focusAccordion = (editor, upPath) => {
6
- Transforms.select(editor, {
7
- path: upPath,
8
- offset: 0
9
- });
10
- };
11
4
  export const insertAccordion = (editor, path) => {
12
5
  try {
13
6
  const selectedText = getSelectedText(editor);
@@ -43,14 +36,11 @@ export const insertAccordion = (editor, path) => {
43
36
  // get title index
44
37
  const summaryIndex = upPath.length - 3;
45
38
  upPath[summaryIndex] = upPath[summaryIndex] === 0 ? 0 : upPath[summaryIndex] - 1;
46
-
47
39
  // select accordion title by default
48
- if (isMobileWindow()) {
49
- // timeout to resolve focus issue in mobile
50
- setTimeout(() => focusAccordion(editor, upPath), 0);
51
- } else {
52
- focusAccordion(editor, upPath);
53
- }
40
+ Transforms.select(editor, {
41
+ path: upPath,
42
+ offset: 0
43
+ });
54
44
  insertNewLine(editor);
55
45
  } catch (err) {
56
46
  console.log(err);
@@ -1,5 +1,6 @@
1
1
  import { Path, Transforms } from "slate";
2
2
  import insertNewLine from "./insertNewLine";
3
+ import { windowVar } from "./helper";
3
4
  import { getCurrentElementText } from "../plugins/withHTML";
4
5
  export const insertButton = editor => {
5
6
  const button = {
@@ -10,7 +11,22 @@ export const insertButton = editor => {
10
11
  buttonLink: {
11
12
  linkType: "webAddress"
12
13
  },
13
- iconPosition: "start"
14
+ iconPosition: "start",
15
+ bgColor: "#2563EB",
16
+ textColor: "#FFF",
17
+ borderRadius: {
18
+ topLeft: 30,
19
+ topRight: 30,
20
+ bottomLeft: 30,
21
+ bottomRight: 30
22
+ },
23
+ bannerSpacing: {
24
+ left: 16,
25
+ top: 8,
26
+ right: 16,
27
+ bottom: 8
28
+ },
29
+ ...(windowVar.lastButtonProps || {})
14
30
  };
15
31
  const hasText = getCurrentElementText(editor);
16
32
  const insertPath = hasText ? Path.next(Path.parent(editor?.selection.focus.path)) : editor?.selection.focus.path;
@@ -1,10 +1,9 @@
1
- import { useRef, useState } from "react";
1
+ import { useState } from "react";
2
2
  const useTableResize = ({
3
3
  parentDOM,
4
4
  size: defaultSize,
5
5
  onDone,
6
- minMaxProps = {},
7
- isMobile
6
+ minMaxProps = {}
8
7
  }) => {
9
8
  const {
10
9
  width
@@ -19,10 +18,6 @@ const useTableResize = ({
19
18
  });
20
19
  const [resizing, setResizing] = useState(false);
21
20
  const [isDone, setIsDone] = useState(0);
22
- const lastTouch = useRef({
23
- x: 0,
24
- y: 0
25
- });
26
21
  const onLoad = defaultSize => {
27
22
  setSize({
28
23
  widthInPercent: 100,
@@ -30,64 +25,29 @@ const useTableResize = ({
30
25
  ...defaultSize
31
26
  });
32
27
  };
33
- const handleEventListeners = type => {
34
- const listener = type === "add" ? document.addEventListener : document.removeEventListener;
35
- const onMoveListener = isMobile ? "touchmove" : "pointermove";
36
- const onEndListener = isMobile ? "touchend" : "pointerup";
37
- listener(onMoveListener, onMouseMove);
38
- listener(onEndListener, onMouseUp);
39
- };
40
- const updateLastTouch = ({
41
- clientX,
42
- clientY
43
- }) => {
44
- lastTouch.current.x = clientX;
45
- lastTouch.current.y = clientY;
46
- };
47
28
  const onMouseDown = e => {
48
- if (isMobile) {
49
- updateLastTouch(e.touches[0]);
50
- } else {
51
- e.preventDefault();
52
- }
53
- handleEventListeners("add");
29
+ e.preventDefault();
30
+ document.addEventListener("pointermove", onMouseMove);
31
+ document.addEventListener("pointerup", onMouseUp);
54
32
  setResizing(true);
55
33
  setIsDone(0);
56
34
  };
57
35
  const onMouseUp = () => {
58
- handleEventListeners("remove");
36
+ document.removeEventListener("pointermove", onMouseMove);
37
+ document.removeEventListener("pointerup", onMouseUp);
59
38
  setResizing(false);
60
39
  setIsDone(1);
61
40
  };
62
41
  const onMouseMove = e => {
63
- let {
64
- movementX,
65
- movementY
66
- } = e || {};
67
- if (e.type === "touchmove") {
68
- // for mobile
69
- const {
70
- x,
71
- y
72
- } = lastTouch.current || {};
73
- const touches = e.touches[0];
74
- const {
75
- clientX,
76
- clientY
77
- } = touches;
78
- movementX = clientX - x;
79
- movementY = clientY - y;
80
- updateLastTouch(touches);
81
- }
82
42
  const {
83
43
  minWidth
84
44
  } = minMaxProps || {};
85
45
  setSize(currentSize => {
86
46
  const width = currentSize?.width || parentDOM?.clientWidth;
87
- const calcWidth = width + movementX;
47
+ const calcWidth = width + e.movementX;
88
48
  return {
89
49
  width: minWidth && calcWidth < minWidth ? minWidth : calcWidth,
90
- height: currentSize.height + movementY,
50
+ height: currentSize.height + e.movementY,
91
51
  widthInPercent: calcWidth / width * 100
92
52
  };
93
53
  });
@@ -82,8 +82,7 @@ const splitInlineStyleRanges = (text, inlineStyleRanges, data) => {
82
82
  };
83
83
  export const draftToSlate = props => {
84
84
  const {
85
- data,
86
- needLayout
85
+ data
87
86
  } = props;
88
87
  if (data?.blocks && data?.blocks?.length > 0) {
89
88
  const converted = data?.blocks?.reduce((a, b) => {
@@ -105,7 +104,7 @@ export const draftToSlate = props => {
105
104
  return data;
106
105
  } else {
107
106
  return [{
108
- type: needLayout ? "title" : "paragraph",
107
+ type: "paragraph",
109
108
  children: [{
110
109
  text: ""
111
110
  }]
@@ -1,11 +1,10 @@
1
- import { Editor, Transforms, Element, Node, Path, Range, Point } from "slate";
1
+ import { Editor, Transforms, Element, Node, Path, Range } from "slate";
2
2
  import { toggleBlock } from "./SlateUtilityFunctions";
3
3
  import insertNewLine from "./insertNewLine";
4
4
  import { insertAccordion } from "./accordion";
5
- import { getNodeWithType, isListItem } from "./helper";
5
+ import { isListItem } from "./helper";
6
6
  import RnDCtrlCmds from "./RnD/RnDCtrlCmds";
7
7
  import EDITORCMDS from "../common/EditorCmds";
8
- import { ReactEditor } from "slate-react";
9
8
  const HOTKEYS = {
10
9
  b: "bold",
11
10
  i: "italic",
@@ -184,20 +183,6 @@ const checkListEnterEvent = (editor, type) => {
184
183
  insertNewLine(editor);
185
184
  }
186
185
  };
187
- const removeAccordion = (editor, accordionPath) => {
188
- Transforms.removeNodes(editor, {
189
- at: accordionPath
190
- });
191
- Transforms.insertNodes(editor, {
192
- type: "paragraph",
193
- children: [{
194
- text: ""
195
- }]
196
- }, {
197
- at: accordionPath,
198
- select: true
199
- });
200
- };
201
186
  export const enterEvent = (e, editor, isMobile) => {
202
187
  try {
203
188
  const ele = isListItem(editor);
@@ -240,7 +225,9 @@ export const enterEvent = (e, editor, isMobile) => {
240
225
  e.preventDefault();
241
226
  if (!text) {
242
227
  const accordionIndex = ele[1].slice(0, Math.max(ele[1].length - 1));
243
- removeAccordion(editor, accordionIndex);
228
+ Transforms.removeNodes(editor, {
229
+ at: accordionIndex
230
+ });
244
231
  } else {
245
232
  const nextPath = Path.next(Path.parent(ele[1]));
246
233
  insertAccordion(editor, nextPath);
@@ -342,37 +329,6 @@ export const enterEvent = (e, editor, isMobile) => {
342
329
  console.log(err);
343
330
  }
344
331
  };
345
- export const handleAccordionOnBackspace = (e, editor) => {
346
- try {
347
- let isAccordion = false;
348
- const [accordionDetails] = getNodeWithType(editor, "accordion-details");
349
- const [accordionDetailsNode] = accordionDetails || [];
350
- if (accordionDetailsNode) {
351
- const dom = ReactEditor.toDOMNode(editor, accordionDetailsNode);
352
- if (dom?.parentElement) {
353
- dom.parentElement.style.display = "block";
354
- }
355
- }
356
- const [accordionSummary] = getNodeWithType(editor, "accordion-summary");
357
- const [accordionTitle, accordionTitlePath] = accordionSummary || [];
358
- if (accordionTitle) {
359
- // no selection
360
- if (Range.isCollapsed(editor.selection)) {
361
- const start = Editor.start(editor, accordionTitlePath);
362
- const isCursorAtStart = Point.equals(editor.selection.focus, start);
363
- if (isCursorAtStart) {
364
- e.preventDefault();
365
- const parentPath = Path.parent(accordionTitlePath);
366
- removeAccordion(editor, parentPath);
367
- isAccordion = true;
368
- }
369
- }
370
- }
371
- return isAccordion;
372
- } catch (err) {
373
- console.log(err);
374
- }
375
- };
376
332
  export const upDownArrowKeyEvents = (e, editor) => {
377
333
  try {
378
334
  const {
@@ -392,7 +348,7 @@ export const upDownArrowKeyEvents = (e, editor) => {
392
348
  }
393
349
  Transforms.move(editor, {
394
350
  distance: 0,
395
- unit: "offset",
351
+ unit: 'offset',
396
352
  reverse: false
397
353
  });
398
354
  Transforms.select(editor, {