@flozy/editor 9.2.5 → 9.2.7

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 (253) hide show
  1. package/dist/Editor/ChatEditor.js +33 -9
  2. package/dist/Editor/CommonEditor.js +117 -27
  3. package/dist/Editor/DialogWrapper.js +31 -25
  4. package/dist/Editor/Editor.css +19 -1
  5. package/dist/Editor/Elements/AI/AIInput.js +5 -3
  6. package/dist/Editor/Elements/AI/CustomSelect.js +9 -5
  7. package/dist/Editor/Elements/AI/PopoverAIInput.js +4 -2
  8. package/dist/Editor/Elements/Accordion/Accordion.js +4 -3
  9. package/dist/Editor/Elements/Accordion/AccordionBtnPopup.js +4 -1
  10. package/dist/Editor/Elements/Accordion/AccordionButton.js +6 -2
  11. package/dist/Editor/Elements/Accordion/AccordionTitlePopup.js +4 -1
  12. package/dist/Editor/Elements/AppHeader/AppHeader.js +3 -3
  13. package/dist/Editor/Elements/AppHeader/AppHeaderButton.js +6 -2
  14. package/dist/Editor/Elements/AppHeader/AppHeaderPopup.js +4 -1
  15. package/dist/Editor/Elements/Attachments/AttachmentsButton.js +4 -1
  16. package/dist/Editor/Elements/Button/ButtonPopup.js +4 -1
  17. package/dist/Editor/Elements/Button/ButtonToolIcon.js +6 -2
  18. package/dist/Editor/Elements/Button/EditorButton.js +31 -14
  19. package/dist/Editor/Elements/Carousel/Carousel.js +5 -4
  20. package/dist/Editor/Elements/Carousel/CarouselButton.js +6 -2
  21. package/dist/Editor/Elements/Carousel/CarouselItem.js +3 -2
  22. package/dist/Editor/Elements/ChipText/ChipTextPopup.js +4 -1
  23. package/dist/Editor/Elements/CodeToText/CodeToText.js +5 -4
  24. package/dist/Editor/Elements/CodeToText/HtmlContextMenu.js +6 -2
  25. package/dist/Editor/Elements/Color Picker/ColorButtons.js +57 -12
  26. package/dist/Editor/Elements/Color Picker/ColorPicker.css +25 -1
  27. package/dist/Editor/Elements/Color Picker/ColorPicker.js +5 -5
  28. package/dist/Editor/Elements/Color Picker/Styles.js +1 -1
  29. package/dist/Editor/Elements/Colorbox/ColorboxButton.js +6 -2
  30. package/dist/Editor/Elements/DataView/DataView.js +5 -2
  31. package/dist/Editor/Elements/DataView/DataViewButton.js +6 -2
  32. package/dist/Editor/Elements/DataView/Layouts/ColumnView.js +4 -1
  33. package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/Select.js +3 -4
  34. package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/styles.js +6 -1
  35. package/dist/Editor/Elements/DataView/Layouts/DataTypes/DateType.js +19 -9
  36. package/dist/Editor/Elements/DataView/Layouts/FilterSort/SortOptions/ChooseSort.js +13 -12
  37. package/dist/Editor/Elements/DataView/Layouts/FilterSort/SortOptions/index.js +7 -4
  38. package/dist/Editor/Elements/DataView/Layouts/FilterSort/index.js +7 -5
  39. package/dist/Editor/Elements/DataView/Layouts/FilterView.js +9 -7
  40. package/dist/Editor/Elements/DataView/Layouts/Options/AddOptions.js +3 -2
  41. package/dist/Editor/Elements/DataView/Layouts/Options/AddProperty.js +5 -3
  42. package/dist/Editor/Elements/DataView/Layouts/Options/AllProperties.js +6 -5
  43. package/dist/Editor/Elements/DataView/Layouts/Options/ChangeProperty.js +5 -3
  44. package/dist/Editor/Elements/DataView/Layouts/Options/EditOption.js +7 -6
  45. package/dist/Editor/Elements/DataView/Layouts/Options/EditProperty.js +15 -12
  46. package/dist/Editor/Elements/DataView/Layouts/Options/FilterProperty.js +3 -2
  47. package/dist/Editor/Elements/DataView/Layouts/Options/PropertyList.js +3 -2
  48. package/dist/Editor/Elements/DataView/Layouts/Options/index.js +12 -6
  49. package/dist/Editor/Elements/DataView/Layouts/TableStyles.js +32 -2
  50. package/dist/Editor/Elements/DataView/Layouts/TableView.js +132 -33
  51. package/dist/Editor/Elements/DataView/Layouts/ViewData.js +3 -3
  52. package/dist/Editor/Elements/DataView/Layouts/index.js +3 -1
  53. package/dist/Editor/Elements/DataView/Providers/DataViewProvider.js +6 -3
  54. package/dist/Editor/Elements/DataView/styles.js +8 -8
  55. package/dist/Editor/Elements/Divider/Divider.js +5 -3
  56. package/dist/Editor/Elements/Divider/DividerButton.js +6 -2
  57. package/dist/Editor/Elements/Divider/DividerPopup.js +3 -2
  58. package/dist/Editor/Elements/Embed/Embed.js +4 -1
  59. package/dist/Editor/Elements/Embed/EmbedPopup.js +4 -1
  60. package/dist/Editor/Elements/Embed/Image.js +16 -11
  61. package/dist/Editor/Elements/Embed/Video.js +10 -7
  62. package/dist/Editor/Elements/EmbedScript/Code.js +7 -4
  63. package/dist/Editor/Elements/EmbedScript/EmbedScript.js +6 -2
  64. package/dist/Editor/Elements/EmbedScript/EmbedScriptPopup.js +8 -5
  65. package/dist/Editor/Elements/Emoji/EmojiButton.js +6 -2
  66. package/dist/Editor/Elements/Form/FieldPopup.js +4 -1
  67. package/dist/Editor/Elements/Form/Form.js +12 -9
  68. package/dist/Editor/Elements/Form/FormButton.js +6 -2
  69. package/dist/Editor/Elements/Form/FormPopup.js +3 -2
  70. package/dist/Editor/Elements/Form/Workflow/FormWorkflow.js +18 -12
  71. package/dist/Editor/Elements/Form/Workflow/ListWorkflow.js +13 -8
  72. package/dist/Editor/Elements/Form/Workflow/MoreOptions.js +3 -2
  73. package/dist/Editor/Elements/Form/Workflow/UserInputs.js +4 -2
  74. package/dist/Editor/Elements/Form/Workflow/index.js +15 -9
  75. package/dist/Editor/Elements/FreeGrid/FreeGrid.js +21 -18
  76. package/dist/Editor/Elements/FreeGrid/FreeGridBox.js +6 -2
  77. package/dist/Editor/Elements/FreeGrid/FreeGridButton.js +6 -2
  78. package/dist/Editor/Elements/FreeGrid/FreeGridItem.js +8 -3
  79. package/dist/Editor/Elements/FreeGrid/Options/AddElement.js +3 -2
  80. package/dist/Editor/Elements/FreeGrid/Options/More.js +4 -3
  81. package/dist/Editor/Elements/FreeGrid/styles.js +3 -0
  82. package/dist/Editor/Elements/Grid/Grid.js +13 -10
  83. package/dist/Editor/Elements/Grid/GridButton.js +9 -5
  84. package/dist/Editor/Elements/Grid/GridItem.js +15 -10
  85. package/dist/Editor/Elements/Grid/GridItemPopup.js +4 -1
  86. package/dist/Editor/Elements/Grid/GridPopup.js +4 -1
  87. package/dist/Editor/Elements/Grid/SectionPopup.js +4 -1
  88. package/dist/Editor/Elements/Link/Link.js +74 -44
  89. package/dist/Editor/Elements/Link/LinkButton.js +4 -1
  90. package/dist/Editor/Elements/List/CheckList.js +14 -9
  91. package/dist/Editor/Elements/NewLine/NewLineButton.js +6 -2
  92. package/dist/Editor/Elements/PageSettings/PageSettingsButton.js +16 -5
  93. package/dist/Editor/Elements/PageSettings/PageSettingsPopup.js +4 -1
  94. package/dist/Editor/Elements/Search/SearchButton.js +6 -3
  95. package/dist/Editor/Elements/Search/SearchList.js +7 -3
  96. package/dist/Editor/Elements/Signature/SignatureButton.js +6 -2
  97. package/dist/Editor/Elements/Signature/SignatureOptions/TypeSignature.js +6 -2
  98. package/dist/Editor/Elements/Signature/SignatureOptions/UploadSignature.js +4 -1
  99. package/dist/Editor/Elements/Signature/SignaturePopup.js +17 -16
  100. package/dist/Editor/Elements/SimpleText/index.js +5 -5
  101. package/dist/Editor/Elements/SimpleText/style.js +2 -2
  102. package/dist/Editor/Elements/Table/DragButton.js +4 -2
  103. package/dist/Editor/Elements/Table/Table.js +56 -32
  104. package/dist/Editor/Elements/Table/TableCell.js +12 -29
  105. package/dist/Editor/Elements/Table/TablePopup.js +4 -1
  106. package/dist/Editor/Elements/Table/TableSelector.js +10 -6
  107. package/dist/Editor/Elements/Table/TableTool.js +8 -4
  108. package/dist/Editor/Elements/Title/title.js +10 -0
  109. package/dist/Editor/Elements/TopBanner/TopBannerButton.js +4 -1
  110. package/dist/Editor/Elements/Variables/Style.js +28 -2
  111. package/dist/Editor/Elements/Variables/VariableButton.js +17 -4
  112. package/dist/Editor/MiniEditor.js +9 -3
  113. package/dist/Editor/Styles/EditorStyles.js +5 -5
  114. package/dist/Editor/Toolbar/Basic/index.js +2 -1
  115. package/dist/Editor/Toolbar/FormatTools/BlockButton.js +6 -2
  116. package/dist/Editor/Toolbar/FormatTools/Dropdown.js +27 -3
  117. package/dist/Editor/Toolbar/FormatTools/FontFamilyAutocomplete.js +4 -3
  118. package/dist/Editor/Toolbar/FormatTools/MarkButton.js +8 -4
  119. package/dist/Editor/Toolbar/FormatTools/TextSize.js +7 -15
  120. package/dist/Editor/Toolbar/Mini/MiniToolbar.js +20 -15
  121. package/dist/Editor/Toolbar/PopupTool/AddTemplates.js +19 -13
  122. package/dist/Editor/Toolbar/PopupTool/ButtonTemplatesCard.js +10 -4
  123. package/dist/Editor/Toolbar/PopupTool/FullViewCard.js +10 -4
  124. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/MiniColorPicker.js +6 -2
  125. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectAlignment.js +42 -35
  126. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +6 -13
  127. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectList.js +58 -51
  128. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectSuperSubscript.js +29 -22
  129. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +226 -87
  130. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +15 -7
  131. package/dist/Editor/Toolbar/PopupTool/PopperHeader.js +8 -4
  132. package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +16 -12
  133. package/dist/Editor/Toolbar/PopupTool/TemplateCard.js +11 -5
  134. package/dist/Editor/Toolbar/PopupTool/TextFormat.js +84 -32
  135. package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +438 -0
  136. package/dist/Editor/Toolbar/PopupTool/index.js +3 -8
  137. package/dist/Editor/Toolbar/Toolbar.js +20 -10
  138. package/dist/Editor/Toolbar/toolbarGroups.js +48 -6
  139. package/dist/Editor/assets/svg/CalenderIconTick.js +1 -0
  140. package/dist/Editor/assets/svg/ThemeIcons.js +291 -0
  141. package/dist/Editor/common/ColorPickerButton.js +35 -9
  142. package/dist/Editor/common/CustomColorPicker/index.js +106 -0
  143. package/dist/Editor/common/CustomColorPicker/style.js +53 -0
  144. package/dist/Editor/common/CustomDialog/index.js +88 -0
  145. package/dist/Editor/common/CustomDialog/styles.js +80 -0
  146. package/dist/Editor/common/CustomDialog2/index.js +94 -0
  147. package/dist/Editor/common/CustomDialog2/style.js +67 -0
  148. package/dist/Editor/common/CustomSelect.js +33 -0
  149. package/dist/Editor/common/DnD/DragHandleButton.js +1 -1
  150. package/dist/Editor/common/DnD/Draggable.js +0 -1
  151. package/dist/Editor/common/FontLoader/FontLoader.js +3 -0
  152. package/dist/Editor/common/Icon.js +28 -0
  153. package/dist/Editor/common/ImageSelector/ImageSelector.js +10 -8
  154. package/dist/Editor/common/ImageSelector/Options/AddLink.js +6 -4
  155. package/dist/Editor/common/ImageSelector/Styles.js +3 -9
  156. package/dist/Editor/common/ImageSelector/UploadStyles.js +0 -1
  157. package/dist/Editor/common/LinkSettings/NavComponents.js +14 -10
  158. package/dist/Editor/common/LinkSettings/index.js +20 -14
  159. package/dist/Editor/common/LinkSettings/navOptions.js +1 -1
  160. package/dist/Editor/common/MentionsPopup/Styles.js +109 -71
  161. package/dist/Editor/common/MentionsPopup/index.js +8 -4
  162. package/dist/Editor/common/RnD/ContextMenu/CMenus.js +22 -22
  163. package/dist/Editor/common/RnD/ContextMenu/index.js +3 -2
  164. package/dist/Editor/common/RnD/ElementOptions/index.js +7 -2
  165. package/dist/Editor/common/RnD/ElementSettings/OtherSettings/SaveAsTemplate.js +8 -3
  166. package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Settings.js +7 -3
  167. package/dist/Editor/common/RnD/ElementSettings/Settings/AppHeaderSettings.js +3 -2
  168. package/dist/Editor/common/RnD/ElementSettings/Settings/BoxSettings.js +3 -2
  169. package/dist/Editor/common/RnD/ElementSettings/Settings/ButtonSettings.js +3 -2
  170. package/dist/Editor/common/RnD/ElementSettings/Settings/CodeSettings.js +3 -2
  171. package/dist/Editor/common/RnD/ElementSettings/Settings/FormSettings.js +7 -4
  172. package/dist/Editor/common/RnD/ElementSettings/Settings/ImageSettings.js +3 -2
  173. package/dist/Editor/common/RnD/ElementSettings/Settings/TableSettings.js +3 -2
  174. package/dist/Editor/common/RnD/ElementSettings/Settings/TextSettings.js +4 -2
  175. package/dist/Editor/common/RnD/ElementSettings/Settings/VideoSettings.js +3 -2
  176. package/dist/Editor/common/RnD/OptionsPopup/index.js +4 -3
  177. package/dist/Editor/common/RnD/SwitchViewport/SwitchViewport.js +11 -4
  178. package/dist/Editor/common/RnD/Theme/MainThemeProvider.js +17 -0
  179. package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +20 -8
  180. package/dist/Editor/common/RnD/Utils/gridDropItem.js +5 -4
  181. package/dist/Editor/common/RnD/Utils/index.js +45 -0
  182. package/dist/Editor/common/RnD/VirtualElement/index.js +1 -2
  183. package/dist/Editor/common/RnD/index.js +34 -7
  184. package/dist/Editor/common/Section/index.js +7 -4
  185. package/dist/Editor/common/Shorthands/elements.js +75 -4
  186. package/dist/Editor/common/StyleBuilder/appHeaderStyle.js +4 -4
  187. package/dist/Editor/common/StyleBuilder/boxStyle.js +2 -2
  188. package/dist/Editor/common/StyleBuilder/buttonStyle.js +6 -4
  189. package/dist/Editor/common/StyleBuilder/dividerStyles.js +2 -2
  190. package/dist/Editor/common/StyleBuilder/embedVideoStyle.js +6 -6
  191. package/dist/Editor/common/StyleBuilder/fieldStyle.js +2 -2
  192. package/dist/Editor/common/StyleBuilder/fieldTypes/alignment.js +13 -9
  193. package/dist/Editor/common/StyleBuilder/fieldTypes/backgroundImage.js +11 -3
  194. package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +19 -5
  195. package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +22 -10
  196. package/dist/Editor/common/StyleBuilder/fieldTypes/buttonLink.js +6 -3
  197. package/dist/Editor/common/StyleBuilder/fieldTypes/card.js +27 -13
  198. package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +41 -14
  199. package/dist/Editor/common/StyleBuilder/fieldTypes/elementSize.js +10 -6
  200. package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +19 -6
  201. package/dist/Editor/common/StyleBuilder/fieldTypes/gridSize.js +6 -2
  202. package/dist/Editor/common/StyleBuilder/fieldTypes/icons.js +5 -2
  203. package/dist/Editor/common/StyleBuilder/fieldTypes/menusArray.js +9 -6
  204. package/dist/Editor/common/StyleBuilder/fieldTypes/metaDataMapping.js +8 -2
  205. package/dist/Editor/common/StyleBuilder/fieldTypes/saveAsTemplate.js +12 -11
  206. package/dist/Editor/common/StyleBuilder/fieldTypes/selectBox.js +6 -2
  207. package/dist/Editor/common/StyleBuilder/fieldTypes/text.js +8 -4
  208. package/dist/Editor/common/StyleBuilder/fieldTypes/textAlign.js +6 -2
  209. package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +21 -12
  210. package/dist/Editor/common/StyleBuilder/formStyle.js +7 -7
  211. package/dist/Editor/common/StyleBuilder/gridItemStyle.js +6 -6
  212. package/dist/Editor/common/StyleBuilder/gridStyle.js +5 -5
  213. package/dist/Editor/common/StyleBuilder/index.js +8 -5
  214. package/dist/Editor/common/Uploader.js +16 -5
  215. package/dist/Editor/commonStyle.js +114 -69
  216. package/dist/Editor/helper/index.js +8 -12
  217. package/dist/Editor/helper/theme.js +200 -2
  218. package/dist/Editor/hooks/useDrag.js +16 -10
  219. package/dist/Editor/hooks/useEditorScroll.js +10 -5
  220. package/dist/Editor/hooks/useEditorTheme.js +153 -0
  221. package/dist/Editor/hooks/useMouseMove.js +25 -13
  222. package/dist/Editor/hooks/useTable.js +1 -1
  223. package/dist/Editor/plugins/withEmbeds.js +1 -1
  224. package/dist/Editor/plugins/withHTML.js +19 -14
  225. package/dist/Editor/plugins/withLayout.js +3 -2
  226. package/dist/Editor/plugins/withTable.js +1 -1
  227. package/dist/Editor/theme/ThemeList.js +50 -173
  228. package/dist/Editor/theme/index.js +144 -0
  229. package/dist/Editor/themeSettings/ActiveTheme.js +72 -0
  230. package/dist/Editor/themeSettings/buttons/index.js +283 -0
  231. package/dist/Editor/themeSettings/buttons/style.js +21 -0
  232. package/dist/Editor/themeSettings/colorTheme/index.js +292 -0
  233. package/dist/Editor/themeSettings/colorTheme/style.js +77 -0
  234. package/dist/Editor/themeSettings/fonts/PreviewElement.js +121 -0
  235. package/dist/Editor/themeSettings/fonts/index.js +220 -0
  236. package/dist/Editor/themeSettings/fonts/style.js +44 -0
  237. package/dist/Editor/themeSettings/icons.js +60 -0
  238. package/dist/Editor/themeSettings/index.js +320 -0
  239. package/dist/Editor/themeSettings/style.js +152 -0
  240. package/dist/Editor/themeSettingsAI/icons.js +96 -0
  241. package/dist/Editor/themeSettingsAI/index.js +356 -0
  242. package/dist/Editor/themeSettingsAI/saveTheme.js +197 -0
  243. package/dist/Editor/themeSettingsAI/style.js +250 -0
  244. package/dist/Editor/utils/SlateUtilityFunctions.js +162 -45
  245. package/dist/Editor/utils/button.js +0 -14
  246. package/dist/Editor/utils/chatEditor/SlateUtilityFunctions.js +23 -0
  247. package/dist/Editor/utils/divider.js +8 -0
  248. package/dist/Editor/utils/draftToSlate.js +3 -2
  249. package/dist/Editor/utils/font.js +40 -37
  250. package/dist/Editor/utils/helper.js +77 -19
  251. package/dist/Editor/utils/link.js +1 -1
  252. package/dist/Editor/utils/table.js +17 -6
  253. package/package.json +5 -2
@@ -4,6 +4,7 @@ import { convertBase64 } from "../utils/helper";
4
4
  import { uploadFile } from "../service/fileupload";
5
5
  import Icon from "./Icon";
6
6
  import UploadStyles from "../common/ImageSelector/UploadStyles";
7
+ import { useEditorContext } from "../hooks/useMouseMove";
7
8
  import { jsx as _jsx } from "react/jsx-runtime";
8
9
  import { Fragment as _Fragment } from "react/jsx-runtime";
9
10
  import { jsxs as _jsxs } from "react/jsx-runtime";
@@ -18,6 +19,9 @@ const Uploader = props => {
18
19
  const [base64, setBase64] = useState(value?.url);
19
20
  const [fileName, setFileName] = useState("");
20
21
  const [uploading, setUploading] = useState(false);
22
+ const {
23
+ theme
24
+ } = useEditorContext();
21
25
  const handleChange = async e => {
22
26
  const uFile = e.target.files[0];
23
27
  const strImage = await convertBase64(uFile);
@@ -37,6 +41,9 @@ const Uploader = props => {
37
41
  onUploaded(result?.imageURL[0]);
38
42
  }
39
43
  };
44
+ const {
45
+ translation
46
+ } = customProps;
40
47
  const onRemoveBG = () => {
41
48
  setBase64(null);
42
49
  onUploaded("none");
@@ -68,14 +75,14 @@ const Uploader = props => {
68
75
  }), /*#__PURE__*/_jsx(Grid, {
69
76
  className: "removeImageText",
70
77
  onClick: onRemoveBG,
71
- children: "REMOVE"
78
+ children: translation("Remove")
72
79
  })]
73
80
  });
74
81
  default:
75
82
  return /*#__PURE__*/_jsx(Grid, {
76
83
  className: "removeImageText",
77
84
  onClick: onRemoveBG,
78
- children: "REMOVE"
85
+ children: translation("Remove")
79
86
  });
80
87
  }
81
88
  };
@@ -83,7 +90,7 @@ const Uploader = props => {
83
90
  children: [/*#__PURE__*/_jsx(Grid, {
84
91
  item: true,
85
92
  xs: 12,
86
- children: uploading ? "Uploading..." : ""
93
+ children: uploading ? translation("uploadingText") : ""
87
94
  }), /*#__PURE__*/_jsx(Grid, {
88
95
  container: true,
89
96
  sx: classes.uploadContainer,
@@ -99,6 +106,10 @@ const Uploader = props => {
99
106
  className: "uploadImageSection",
100
107
  children: base64 ? renderThumb() : /*#__PURE__*/_jsx(Grid, {
101
108
  className: "uploadImageText",
109
+ sx: {
110
+ background: `${theme?.palette?.editor?.inputFieldBgColor}`,
111
+ border: `1px solid ${theme?.palette?.editor?.inputFieldBorder}`
112
+ },
102
113
  children: /*#__PURE__*/_jsxs(Button, {
103
114
  component: "label",
104
115
  variant: "text",
@@ -116,11 +127,11 @@ const Uploader = props => {
116
127
  onChange: handleChange
117
128
  }), /*#__PURE__*/_jsx(Icon, {
118
129
  icon: "fileUpload"
119
- }), /*#__PURE__*/_jsxs("span", {
130
+ }), /*#__PURE__*/_jsx("span", {
120
131
  style: {
121
132
  paddingLeft: "8px"
122
133
  },
123
- children: ["upload ", title || "image"]
134
+ children: `${translation("upload")} ${translation(title) || translation("image")}`
124
135
  })]
125
136
  })
126
137
  })
@@ -51,40 +51,30 @@ const useCommonStyle = theme => ({
51
51
  },
52
52
  "& .MuiPaper-root": {
53
53
  border: `unset !important`,
54
- borderRadius: '0px',
55
- height: 'fit-content'
54
+ borderRadius: "0px",
55
+ height: "fit-content",
56
+ padding: "2px"
56
57
  },
57
58
  "& p": {
58
59
  marginBottom: "7px",
59
60
  marginTop: "4px"
60
61
  },
61
- "& .MuiPaper-root": {
62
- border: 'unset !important',
63
- borderRadius: '0px',
64
- height: 'fit-content',
65
- padding: '2px'
62
+ "& p": {
63
+ marginBottom: "7px",
64
+ marginTop: "4px"
66
65
  },
67
66
  "& .muiIconsListParent": {
68
67
  "& svg": {
69
68
  color: `${theme?.palette?.editor?.svgTextAlignStrokeColor} !important`
70
69
  },
71
- "&::-webkit-scrollbar-thumb": {
72
- background: `none !important`
73
- },
74
- "&::-webkit-scrollbar-track": {
75
- visibility: "hidden"
76
- },
77
70
  "&::-webkit-scrollbar-thumb": {
78
71
  background: `${theme?.palette?.editor?.brainPopupScroll} !important`
79
- },
80
- "&::-webkit-scrollbar-track": {
81
- visibility: "hidden"
82
72
  }
83
73
  },
84
74
  "& .MuiGrid-root>.MuiGrid-item": {
85
75
  paddingRight: "0px !important",
86
76
  fontFamily: "Inter, sans-serif",
87
- height: 'fit-content'
77
+ height: "fit-content"
88
78
  },
89
79
  "& .MuiInputBase-root": {
90
80
  borderRadius: "10px",
@@ -145,11 +135,11 @@ const useCommonStyle = theme => ({
145
135
  borderRadius: "10px",
146
136
  width: "46px !important",
147
137
  marginLeft: "10px",
148
- height: '36px !important'
138
+ height: "36px !important"
149
139
  }
150
140
  },
151
- '& .MuiFormHelperText-root': {
152
- margin: '4px 0px 0px 0px',
141
+ "& .MuiFormHelperText-root": {
142
+ margin: "4px 0px 0px 0px",
153
143
  color: theme?.palette?.editor?.closeButtonSvgStroke,
154
144
  fontFamily: "Inter, sans-serif"
155
145
  }
@@ -405,14 +395,14 @@ const useCommonStyle = theme => ({
405
395
  padding: "8px 12px",
406
396
  fontSize: "12px",
407
397
  color: theme?.palette?.editor?.menuOptionTextColor,
408
- fontWeight: '500',
398
+ fontWeight: "500",
409
399
  fontFamily: "Inter, sans-serif",
410
- minHeight: '36px',
400
+ minHeight: "36px",
411
401
  "&:hover": {
412
402
  backgroundColor: theme?.palette?.editor?.menuOptionHoverBackground
413
403
  }
414
404
  },
415
- '& .Mui-selected': {
405
+ "& .Mui-selected": {
416
406
  background: `${theme?.palette?.editor?.menuOptionSelectedOption} !important`
417
407
  },
418
408
  "& .MuiListSubheader-root": {
@@ -421,16 +411,16 @@ const useCommonStyle = theme => ({
421
411
  fontSize: "12px"
422
412
  },
423
413
  "& .MuiPaper-root": {
424
- borderRadius: '8px',
425
- padding: '0px',
414
+ borderRadius: "8px",
415
+ padding: "0px",
426
416
  background: `${theme?.palette?.editor?.textWeightPopUpBackground} !important`
427
417
  },
428
- '& .MuiButtonBase-root': {
429
- margin: '4px',
430
- borderRadius: '6px'
418
+ "& .MuiButtonBase-root": {
419
+ margin: "4px",
420
+ borderRadius: "6px"
431
421
  },
432
- '& .MuiList-root': {
433
- padding: '0px'
422
+ "& .MuiList-root": {
423
+ padding: "0px"
434
424
  }
435
425
  },
436
426
  datePicker: {
@@ -438,16 +428,71 @@ const useCommonStyle = theme => ({
438
428
  width: "100%",
439
429
  "& .react-datepicker__input-container": {
440
430
  "& .MuiInputBase-root": {
441
- background: `${theme?.palette?.editor?.inputFieldBgColor} !important`,
431
+ backgroundColor: theme?.palette?.editor?.inputFieldBgColor,
442
432
  "& .MuiInputBase-input": {
443
- background: `${theme?.palette?.editor?.inputFieldBgColor} !important`,
444
- color: `${theme?.palette?.editor?.textColor} !important`
433
+ backgroundColor: theme?.palette?.editor?.inputFieldBgColor,
434
+ color: theme?.palette?.editor?.textColor + " !important"
445
435
  },
446
436
  "& .MuiOutlinedInput-notchedOutline": {
447
- border: `1px solid ${theme?.palette?.editor?.signaturePopUpInputFieldBorder} !important`
437
+ border: `1px solid ${theme?.palette?.editor?.signaturePopUpInputFieldBorder || theme?.palette?.divider} !important`,
438
+ borderRadius: "10px"
439
+ },
440
+ "&:hover .MuiOutlinedInput-notchedOutline": {
441
+ borderColor: theme?.palette?.primary?.main
442
+ },
443
+ "&.Mui-focused .MuiOutlinedInput-notchedOutline": {
444
+ borderColor: theme?.palette?.primary?.dark
448
445
  }
449
446
  }
450
447
  }
448
+ },
449
+ "& .react-datepicker": {
450
+ backgroundColor: theme?.palette?.editor?.inputFieldBgColor,
451
+ // borderRadius: "10px",
452
+ border: `1px solid ${theme?.palette?.divider || "#ccc"}`,
453
+ boxShadow: "2px 4px 8px rgba(0, 0, 0, 0.4)",
454
+ color: theme?.palette?.editor?.textColor + " !important"
455
+ },
456
+ "& .react-datepicker__header": {
457
+ backgroundColor: theme?.palette?.editor?.inputFieldBgColor,
458
+ borderBottom: `1px solid ${theme?.palette?.divider || "#ddd"}`,
459
+ color: theme?.palette?.editor?.textColor + " !important"
460
+ },
461
+ "& .react-datepicker__day": {
462
+ color: theme?.palette?.editor?.textColor,
463
+ "&:hover": {
464
+ backgroundColor: theme?.palette?.editor?.menuOptionHoverBackground,
465
+ color: theme?.palette?.editor?.textColor || "#fff"
466
+ }
467
+ },
468
+ "& .react-datepicker__current-month": {
469
+ color: theme?.palette?.editor?.textColor
470
+ },
471
+ "& .react-datepicker__day-name": {
472
+ color: theme?.palette?.editor?.textColor
473
+ },
474
+ "& .react-datepicker__day--selected": {
475
+ background: theme?.palette?.editor?.activeColor,
476
+ color: "#fff",
477
+ "&:hover": {
478
+ background: theme?.palette?.editor?.activeColor,
479
+ color: "#fff"
480
+ }
481
+ },
482
+ "& .react-datepicker__day--keyboard-selected": {
483
+ backgroundColor: "#bad9f1",
484
+ color: "#000",
485
+ "&:hover": {
486
+ backgroundColor: "#bad9f1",
487
+ color: "#000"
488
+ }
489
+ },
490
+ "& .react-datepicker__day--today": {
491
+ fontWeight: "bold",
492
+ borderBottom: `2px solid ${theme?.palette?.editor?.activeColor}`
493
+ },
494
+ "& .react-datepicker__triangle": {
495
+ display: "none"
451
496
  }
452
497
  },
453
498
  signaturePopUpNameField: {
@@ -475,27 +520,27 @@ const useCommonStyle = theme => ({
475
520
  }
476
521
  }
477
522
  },
478
- pageSettingPopUpRoot: {
479
- padding: "16px 8px 16px 10px!important",
480
- height: "100%"
481
- },
482
523
  buttonMoreOption: {
483
524
  background: `${theme?.palette?.editor?.aiInputBackground} !important`,
484
525
  border: `1px solid ${theme?.palette?.editor?.buttonBorder1} !important`,
485
- padding: '4px !important',
486
- '& svg': {
487
- width: '18px !important',
488
- height: '18px !important',
489
- '& path': {
526
+ padding: "4px !important",
527
+ "& svg": {
528
+ width: "18px !important",
529
+ height: "18px !important",
530
+ "& path": {
490
531
  stroke: `${theme?.palette?.editor?.closeButtonSvgStroke} !important`
491
532
  }
492
533
  }
493
534
  },
535
+ pageSettingPopUpRoot: {
536
+ padding: "16px 8px 16px 10px!important",
537
+ height: "100%"
538
+ },
494
539
  buttonMoreOption2: {
495
540
  background: `${theme?.palette?.editor?.aiInputBackground} !important`,
496
541
  border: `1px solid ${theme?.palette?.editor?.buttonBorder1} !important`,
497
- '& svg': {
498
- '& path': {
542
+ "& svg": {
543
+ "& path": {
499
544
  fill: `${theme?.palette?.editor?.closeButtonSvgStroke} !important`
500
545
  }
501
546
  }
@@ -503,11 +548,11 @@ const useCommonStyle = theme => ({
503
548
  buttonMoreOption3: {
504
549
  background: `${theme?.palette?.editor?.aiInputBackground} !important`,
505
550
  border: `1px solid ${theme?.palette?.editor?.buttonBorder1} !important`,
506
- padding: '5px !important',
507
- '& svg': {
508
- width: '16px !important',
509
- height: '16px !important',
510
- '& path': {
551
+ padding: "5px !important",
552
+ "& svg": {
553
+ width: "16px !important",
554
+ height: "16px !important",
555
+ "& path": {
511
556
  stroke: `${theme?.palette?.editor?.closeButtonSvgStroke} !important`
512
557
  }
513
558
  }
@@ -515,37 +560,37 @@ const useCommonStyle = theme => ({
515
560
  resizeButton: {
516
561
  background: theme?.palette?.editor?.aiInputBackground,
517
562
  border: `1px solid ${theme?.palette?.editor?.buttonBorder1}`,
518
- padding: '5px !important',
519
- borderRadius: '50% !important',
520
- '& svg': {
521
- width: '18px',
522
- height: '18px',
523
- '& path': {
563
+ padding: "5px !important",
564
+ borderRadius: "50% !important",
565
+ "& svg": {
566
+ width: "18px",
567
+ height: "18px",
568
+ "& path": {
524
569
  fill: `${theme?.palette?.editor?.closeButtonSvgStroke}`
525
570
  }
526
571
  },
527
- '&:hover': {
572
+ "&:hover": {
528
573
  background: theme?.palette?.editor?.aiInputBackground
529
574
  }
530
575
  },
531
576
  gradientFillBtn: {
532
577
  background: `linear-gradient(112.61deg, #2C63ED 19.3%, #8360FD 88.14%) !important`,
533
- textTransform: 'math-auto !important',
534
- color: '#FFFFFF !important',
535
- padding: '0px 12px !important',
536
- height: '32px',
537
- borderRadius: '8px',
538
- fontWeight: '500',
539
- fontSize: '14px'
578
+ textTransform: "math-auto !important",
579
+ color: "#FFFFFF !important",
580
+ padding: "0px 12px !important",
581
+ height: "32px",
582
+ borderRadius: "8px",
583
+ fontWeight: "500",
584
+ fontSize: "14px"
540
585
  },
541
586
  emptyThumbBtn: {
542
587
  background: `${theme?.palette?.editor?.sectionSettingIconHover} !important`,
543
588
  color: `${theme?.palette?.editor?.textColor} !important`,
544
- fontSize: '14px !important',
545
- '& svg': {
546
- width: '20px !important',
547
- height: '20px !important',
548
- '& path': {
589
+ fontSize: "14px !important",
590
+ "& svg": {
591
+ width: "20px !important",
592
+ height: "20px !important",
593
+ "& path": {
549
594
  stroke: `${theme?.palette?.editor?.closeButtonSvgStroke} !important`
550
595
  }
551
596
  }
@@ -287,22 +287,18 @@ export const bringItemToFB = (editor, {
287
287
  };
288
288
  export const debounce = function (func, wait, immediate) {
289
289
  let timeout;
290
- function debounced(...args) {
291
- const context = this;
292
- const later = function () {
293
- timeout = null;
294
- if (!immediate) func.apply(context, args);
295
- };
296
- const callNow = immediate && !timeout;
290
+ return function () {
291
+ const context = this,
292
+ args = arguments,
293
+ later = function () {
294
+ timeout = null;
295
+ if (!immediate) func.apply(context, args);
296
+ },
297
+ callNow = immediate && !timeout;
297
298
  clearTimeout(timeout);
298
299
  timeout = setTimeout(later, wait);
299
300
  if (callNow) func.apply(context, args);
300
- }
301
- debounced.cancel = function () {
302
- clearTimeout(timeout);
303
- timeout = null;
304
301
  };
305
- return debounced;
306
302
  };
307
303
  export const getTextColor = (color = "") => {
308
304
  return color?.indexOf("gradient") >= 0 ? {
@@ -1,4 +1,6 @@
1
+ import { ReactEditor } from "slate-react";
1
2
  import { sizeMap } from "../utils/font";
3
+ import { Editor, Node } from "slate";
2
4
  export const breakpoints = {
3
5
  small: 0,
4
6
  mobile: 600,
@@ -33,7 +35,7 @@ const overrideValues = (value, ot) => {
33
35
  return Object.keys(value).reduce((a, b) => {
34
36
  return {
35
37
  ...a,
36
- [b]: overrides[ot] ? overrides[ot](value[b]) : value
38
+ [b]: overrides[ot] ? overrides[ot](value[b], value) : value
37
39
  };
38
40
  }, {});
39
41
  };
@@ -50,7 +52,15 @@ const overrides = {
50
52
  overrideReSizeH: val => {
51
53
  return val ? `${val?.height}px` : "auto";
52
54
  },
53
- overrideBorderRadius: val => {
55
+ overrideBorderRadius: (val, breakpointValues) => {
56
+ if (!val?.topLeft) {
57
+ Object.values(breakpointValues || {}).forEach(v => {
58
+ if (v) {
59
+ // Applying the values from breakpoints that exist to those that do not have
60
+ val = v;
61
+ }
62
+ });
63
+ }
54
64
  return `${val?.topLeft}px ${val?.topRight}px ${val?.bottomLeft}px ${val?.bottomRight}px`;
55
65
  }
56
66
  };
@@ -118,6 +128,194 @@ export const getTRBLBreakPoints = (value, breakpoint) => {
118
128
  console.log(err);
119
129
  }
120
130
  };
131
+ export function getElementStyle(editor, element, stylePropertyName) {
132
+ try {
133
+ const path = ReactEditor.findPath(editor, element);
134
+ if (path?.length) {
135
+ const currentEle = Node.get(editor, path);
136
+ const dom = ReactEditor.toDOMNode(editor, currentEle);
137
+ const editorBtn = dom?.querySelector(".button.theme-element");
138
+ return getElementProperty(editorBtn, stylePropertyName);
139
+ }
140
+ } catch (err) {
141
+ // console.log(err);
142
+ }
143
+ }
144
+ export function getTextSizeVal(editor) {
145
+ try {
146
+ const currentNode = Node.get(editor, editor.selection.anchor.path);
147
+ const currentElement = ReactEditor.toDOMNode(editor, currentNode);
148
+ if (currentElement) {
149
+ const element = currentElement.querySelector('span[data-slate-string="true"]');
150
+ return getElementProperty(element, "font-size");
151
+ }
152
+ } catch (err) {
153
+ // console.log(err);
154
+ }
155
+ }
156
+ export function getVariableValue(val) {
157
+ const bodyElement = document.body;
158
+ const computedStyle = getComputedStyle(bodyElement);
159
+ const [, variableName] = val?.match(/var\((--[^)]+)\)/) || [];
160
+ const varValue = computedStyle.getPropertyValue(variableName).trim();
161
+ return varValue;
162
+ }
163
+ const MAP_PROPERTY_KEYS = {
164
+ fontFamily: "font-family",
165
+ fontSize: "font-size",
166
+ textSize: "font-size",
167
+ fontWeight: "font-weight"
168
+ };
169
+ export function getElementProperty(element, styleProperty) {
170
+ if (!element) {
171
+ return "";
172
+ }
173
+ const computedStyle = window.getComputedStyle(element);
174
+ const property = MAP_PROPERTY_KEYS[styleProperty] || styleProperty;
175
+ let style = computedStyle.getPropertyValue(property);
176
+ if (property === "font-family") {
177
+ style = style.replace(/"/g, ""); // remove double quotes if exists e.g: '"Courier New"'
178
+ }
179
+
180
+ return style || "";
181
+ }
182
+ export const textThemeFields = ["fontFamily", "fontSize", "color", "bold", "italic"
183
+ // "underline",
184
+ // "strikethrough",
185
+ ];
186
+
187
+ const themeElements = ["headingOne", "headingTwo", "headingThree", "headingFour", "headingFive", "headingSix", "paragraphOne", "paragraphTwo", "paragraphThree"];
188
+ export const isTextCustomized = editor => {
189
+ try {
190
+ if (editor.selection) {
191
+ const currentElement = Node.parent(editor, editor?.selection?.anchor?.path);
192
+ if (!currentElement) {
193
+ return false;
194
+ }
195
+ const {
196
+ children,
197
+ type
198
+ } = currentElement;
199
+ if (!themeElements.includes(type)) {
200
+ return false;
201
+ }
202
+ if (children?.length > 1) {
203
+ return true;
204
+ }
205
+ const customized = textThemeFields.some(field => {
206
+ const element = children[0] || {};
207
+ const value = element[field];
208
+ if (field === "fontSize") {
209
+ return Object.keys(value || {}).length;
210
+ } else {
211
+ return value;
212
+ }
213
+ });
214
+ return customized;
215
+ } else {
216
+ return null;
217
+ }
218
+ } catch (err) {
219
+ return null;
220
+ }
221
+ };
222
+ const addToTheme = (field, value, element) => {
223
+ switch (field) {
224
+ case "fontFamily":
225
+ return {
226
+ fontFamily: value
227
+ };
228
+ case "fontSize":
229
+ return {
230
+ fontSize: value?.lg
231
+ };
232
+ case "color":
233
+ return {
234
+ color: value
235
+ };
236
+ case "bold":
237
+ return {
238
+ fontWeight: "bold"
239
+ };
240
+ case "italic":
241
+ return {
242
+ fontStyle: "italic"
243
+ };
244
+ // case "underline":
245
+ // case "strikethrough":
246
+ // let textDecoration = "";
247
+
248
+ // if (element.underline) {
249
+ // textDecoration = "underline";
250
+ // }
251
+
252
+ // if (element.strikethrough) {
253
+ // textDecoration += " strikethrough";
254
+ // }
255
+
256
+ // return { textDecoration };
257
+ default:
258
+ return {};
259
+ }
260
+ };
261
+ const MAP_TEXT_THEME_FIELD = {
262
+ headingOne: "h1",
263
+ headingTwo: "h2",
264
+ headingThree: "h3",
265
+ headingFour: "h4",
266
+ headingFive: "h5",
267
+ headingSix: "h6",
268
+ paragraphOne: "para1",
269
+ paragraphTwo: "para2",
270
+ paragraphThree: "para3"
271
+ };
272
+ export const saveToTheme = editor => {
273
+ try {
274
+ if (editor.selection) {
275
+ const currentElement = Node.parent(editor, editor?.selection?.anchor?.path);
276
+ if (!currentElement) {
277
+ return false;
278
+ }
279
+ const {
280
+ children
281
+ } = currentElement;
282
+ if (children?.length > 1) {
283
+ return true;
284
+ }
285
+ let theme = {};
286
+ textThemeFields.forEach(field => {
287
+ const element = children[0] || {};
288
+ const value = element[field];
289
+ let style = {};
290
+ let isValueExist = false;
291
+ if (value) {
292
+ isValueExist = true;
293
+ if (field === "fontSize") {
294
+ isValueExist = !!Object.keys(value).length;
295
+ }
296
+ }
297
+ if (isValueExist) {
298
+ style = addToTheme(field, value, element);
299
+ }
300
+ theme = {
301
+ ...theme,
302
+ ...style
303
+ };
304
+ });
305
+ textThemeFields.forEach(field => {
306
+ Editor.removeMark(editor, field);
307
+ });
308
+ return {
309
+ field: MAP_TEXT_THEME_FIELD[currentElement?.type],
310
+ theme
311
+ };
312
+ }
313
+ } catch (err) {
314
+ return;
315
+ }
316
+ };
317
+ export const HEADING_THEME_FIELDS = ["h1", "h2", "h3", "h4", "h5", "h6"];
318
+ export const PARAGRAPH_THEME_FIELDS = ["para1", "para2", "para3"];
121
319
  export const getBRValue = (props, rbr = "lg") => {
122
320
  const {
123
321
  value,
@@ -2,19 +2,25 @@ import { useEffect, useState } from "react";
2
2
  const useDrag = () => {
3
3
  const [event, setEvent] = useState("");
4
4
  useEffect(() => {
5
- const onMouseDown = () => {
6
- setEvent("start");
7
- };
8
- const onMouseUp = () => {
9
- setEvent("end");
10
- };
11
- document.addEventListener("pointerdown", onMouseDown);
12
- document.addEventListener("pointerup", onMouseUp);
5
+ addListener();
13
6
  return () => {
14
- document.removeEventListener("pointerdown", onMouseDown);
15
- document.removeEventListener("pointerup", onMouseUp);
7
+ removeListener();
16
8
  };
17
9
  }, []);
10
+ const onMouseDown = () => {
11
+ setEvent("start");
12
+ };
13
+ const onMouseUp = () => {
14
+ setEvent("end");
15
+ };
16
+ const addListener = () => {
17
+ document.addEventListener("pointerdown", onMouseDown);
18
+ document.addEventListener("pointerup", onMouseUp);
19
+ };
20
+ const removeListener = () => {
21
+ document.removeEventListener("pointerdown", onMouseDown);
22
+ document.removeEventListener("pointerup", onMouseUp);
23
+ };
18
24
  return [event];
19
25
  };
20
26
  export default useDrag;