@flozy/editor 5.5.9 → 5.6.0

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 (199) hide show
  1. package/dist/Editor/ChatEditor.js +25 -34
  2. package/dist/Editor/CommonEditor.js +26 -13
  3. package/dist/Editor/Editor.css +106 -20
  4. package/dist/Editor/Elements/AI/AIInput.js +0 -1
  5. package/dist/Editor/Elements/AI/CustomSelect.js +17 -10
  6. package/dist/Editor/Elements/AI/PopoverAIInput.js +59 -53
  7. package/dist/Editor/Elements/AI/Styles.js +24 -6
  8. package/dist/Editor/Elements/Accordion/Accordion.js +8 -1
  9. package/dist/Editor/Elements/AppHeader/AppHeader.js +6 -6
  10. package/dist/Editor/Elements/Button/EditorButton.js +6 -1
  11. package/dist/Editor/Elements/Carousel/CarouselItem.js +11 -3
  12. package/dist/Editor/Elements/Color Picker/ColorButtons.js +7 -5
  13. package/dist/Editor/Elements/Color Picker/Styles.js +8 -3
  14. package/dist/Editor/Elements/Color Picker/defaultColors.js +2 -2
  15. package/dist/Editor/Elements/DataView/DataView.js +124 -0
  16. package/dist/Editor/Elements/DataView/DataViewButton.js +23 -0
  17. package/dist/Editor/Elements/DataView/Layouts/ColumnView.js +83 -0
  18. package/dist/Editor/Elements/DataView/Layouts/DataTypes/CheckType.js +33 -0
  19. package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/Select.js +180 -0
  20. package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/SimpleSelect.js +62 -0
  21. package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/styles.js +68 -0
  22. package/dist/Editor/Elements/DataView/Layouts/DataTypes/DateType.js +35 -0
  23. package/dist/Editor/Elements/DataView/Layouts/DataTypes/MultiSelectType.js +39 -0
  24. package/dist/Editor/Elements/DataView/Layouts/DataTypes/NumberType.js +30 -0
  25. package/dist/Editor/Elements/DataView/Layouts/DataTypes/PersonType.js +30 -0
  26. package/dist/Editor/Elements/DataView/Layouts/DataTypes/SelectType.js +35 -0
  27. package/dist/Editor/Elements/DataView/Layouts/DataTypes/TextType.js +36 -0
  28. package/dist/Editor/Elements/DataView/Layouts/DataTypes/index.js +17 -0
  29. package/dist/Editor/Elements/DataView/Layouts/FilterSort/SortOptions/ChooseField.js +29 -0
  30. package/dist/Editor/Elements/DataView/Layouts/FilterSort/SortOptions/ChooseSort.js +38 -0
  31. package/dist/Editor/Elements/DataView/Layouts/FilterSort/SortOptions/index.js +86 -0
  32. package/dist/Editor/Elements/DataView/Layouts/FilterSort/index.js +71 -0
  33. package/dist/Editor/Elements/DataView/Layouts/FilterSort/styles.js +138 -0
  34. package/dist/Editor/Elements/DataView/Layouts/FilterView.js +213 -0
  35. package/dist/Editor/Elements/DataView/Layouts/Formula.js +29 -0
  36. package/dist/Editor/Elements/DataView/Layouts/Options/AddOptions.js +113 -0
  37. package/dist/Editor/Elements/DataView/Layouts/Options/AddProperty.js +44 -0
  38. package/dist/Editor/Elements/DataView/Layouts/Options/AllProperties.js +146 -0
  39. package/dist/Editor/Elements/DataView/Layouts/Options/ChangeProperty.js +79 -0
  40. package/dist/Editor/Elements/DataView/Layouts/Options/ColumnsList.js +57 -0
  41. package/dist/Editor/Elements/DataView/Layouts/Options/Constants.js +101 -0
  42. package/dist/Editor/Elements/DataView/Layouts/Options/EditOption.js +174 -0
  43. package/dist/Editor/Elements/DataView/Layouts/Options/EditProperty.js +241 -0
  44. package/dist/Editor/Elements/DataView/Layouts/Options/FilterProperty.js +45 -0
  45. package/dist/Editor/Elements/DataView/Layouts/Options/PropertyList.js +32 -0
  46. package/dist/Editor/Elements/DataView/Layouts/Options/index.js +110 -0
  47. package/dist/Editor/Elements/DataView/Layouts/Options/styles.js +217 -0
  48. package/dist/Editor/Elements/DataView/Layouts/TableStyles.js +131 -0
  49. package/dist/Editor/Elements/DataView/Layouts/TableView.js +253 -0
  50. package/dist/Editor/Elements/DataView/Layouts/ViewData.js +85 -0
  51. package/dist/Editor/Elements/DataView/Layouts/colStyles.js +10 -0
  52. package/dist/Editor/Elements/DataView/Layouts/index.js +25 -0
  53. package/dist/Editor/Elements/DataView/Providers/DataViewProvider.js +277 -0
  54. package/dist/Editor/Elements/DataView/Utils/globalSearch.js +15 -0
  55. package/dist/Editor/Elements/DataView/Utils/multiSortRows.js +88 -0
  56. package/dist/Editor/Elements/DataView/styles.js +169 -0
  57. package/dist/Editor/Elements/Divider/Divider.js +36 -20
  58. package/dist/Editor/Elements/Embed/Image.js +51 -16
  59. package/dist/Editor/Elements/Embed/Video.js +26 -3
  60. package/dist/Editor/Elements/Form/Form.js +38 -2
  61. package/dist/Editor/Elements/Form/FormElements/FormCheckbox.js +7 -1
  62. package/dist/Editor/Elements/Form/FormElements/FormDate.js +7 -1
  63. package/dist/Editor/Elements/Form/FormElements/FormEmail.js +7 -1
  64. package/dist/Editor/Elements/Form/FormElements/FormNumbers.js +7 -1
  65. package/dist/Editor/Elements/Form/FormElements/FormRadioButton.js +7 -1
  66. package/dist/Editor/Elements/Form/FormElements/FormText.js +7 -1
  67. package/dist/Editor/Elements/Form/FormElements/FormTextArea.js +6 -1
  68. package/dist/Editor/Elements/Form/FormPopup.js +12 -9
  69. package/dist/Editor/Elements/Form/Workflow/Styles.js +2 -0
  70. package/dist/Editor/Elements/FreeGrid/FreeGrid.js +1 -1
  71. package/dist/Editor/Elements/FreeGrid/FreeGridBox.js +4 -2
  72. package/dist/Editor/Elements/FreeGrid/FreeGridItem.js +20 -1
  73. package/dist/Editor/Elements/FreeGrid/breakpointConstants.js +4 -4
  74. package/dist/Editor/Elements/FreeGrid/styles.js +1 -1
  75. package/dist/Editor/Elements/Grid/GridButton.js +2 -2
  76. package/dist/Editor/Elements/Grid/GridItem.js +47 -36
  77. package/dist/Editor/Elements/Grid/Styles.js +50 -0
  78. package/dist/Editor/Elements/Link/LinkButton.js +1 -1
  79. package/dist/Editor/Elements/Search/SearchButton.js +1 -0
  80. package/dist/Editor/Elements/Signature/Signature.css +1 -1
  81. package/dist/Editor/Elements/Signature/SignatureOptions/TypeSignature.js +2 -2
  82. package/dist/Editor/Elements/Signature/SignaturePopup.js +17 -52
  83. package/dist/Editor/Elements/SimpleText/index.js +3 -2
  84. package/dist/Editor/Elements/SimpleText/style.js +15 -0
  85. package/dist/Editor/Elements/Table/AddRowCol.js +77 -0
  86. package/dist/Editor/Elements/Table/DragButton.js +142 -0
  87. package/dist/Editor/Elements/Table/DragStyles.js +70 -0
  88. package/dist/Editor/Elements/Table/Draggable.js +25 -0
  89. package/dist/Editor/Elements/Table/Droppable.js +53 -0
  90. package/dist/Editor/Elements/Table/Styles.js +88 -78
  91. package/dist/Editor/Elements/Table/Table.js +263 -140
  92. package/dist/Editor/Elements/Table/TableCell.js +365 -111
  93. package/dist/Editor/Elements/Table/TablePopup.js +9 -3
  94. package/dist/Editor/Elements/Table/TableRow.js +10 -2
  95. package/dist/Editor/Elements/Table/TableTool.js +101 -0
  96. package/dist/Editor/Elements/Table/tableHelper.js +71 -0
  97. package/dist/Editor/Elements/TopBanner/TopBanner.js +2 -1
  98. package/dist/Editor/MiniEditor.js +21 -2
  99. package/dist/Editor/Styles/EditorStyles.js +13 -4
  100. package/dist/Editor/Toolbar/FormatTools/BlockButton.js +10 -0
  101. package/dist/Editor/Toolbar/FormatTools/Dropdown.js +7 -12
  102. package/dist/Editor/Toolbar/FormatTools/FontFamilyAutocomplete.js +26 -4
  103. package/dist/Editor/Toolbar/FormatTools/MarkButton.js +3 -0
  104. package/dist/Editor/Toolbar/FormatTools/TextSize.js +5 -5
  105. package/dist/Editor/Toolbar/Mini/MiniToolbar.js +8 -8
  106. package/dist/Editor/Toolbar/Mini/Styles.js +9 -1
  107. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/InfinityAITool.js +7 -3
  108. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +6 -4
  109. package/dist/Editor/Toolbar/PopupTool/PopperHeader.js +19 -15
  110. package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +547 -58
  111. package/dist/Editor/Toolbar/PopupTool/TextFormat.js +28 -16
  112. package/dist/Editor/Toolbar/PopupTool/index.js +3 -5
  113. package/dist/Editor/Toolbar/Toolbar.js +6 -0
  114. package/dist/Editor/Toolbar/toolbarGroups.js +4 -0
  115. package/dist/Editor/assets/svg/ArrowDownIcon.js +25 -0
  116. package/dist/Editor/assets/svg/ArrowUpIcon.js +25 -0
  117. package/dist/Editor/assets/svg/BrainIcon.js +2 -2
  118. package/dist/Editor/assets/svg/CalenderIconTick.js +64 -0
  119. package/dist/Editor/assets/svg/ChervDown.js +18 -0
  120. package/dist/Editor/assets/svg/ChervUp.js +18 -0
  121. package/dist/Editor/assets/svg/DataTableIcon.js +50 -0
  122. package/dist/Editor/assets/svg/DuplicateIcon.js +23 -0
  123. package/dist/Editor/assets/svg/EyeIcon.js +23 -0
  124. package/dist/Editor/assets/svg/EyeSlash.js +43 -0
  125. package/dist/Editor/assets/svg/HashtagIcon.js +33 -0
  126. package/dist/Editor/assets/svg/PlusIcon.js +23 -0
  127. package/dist/Editor/assets/svg/SelectRoundedIcon.js +24 -0
  128. package/dist/Editor/assets/svg/SettingsIcon.js +4 -4
  129. package/dist/Editor/assets/svg/SortByIcon.js +33 -0
  130. package/dist/Editor/assets/svg/TableIcons.js +220 -0
  131. package/dist/Editor/assets/svg/TickOutlined.js +23 -0
  132. package/dist/Editor/assets/svg/TrashCanIcon.js +38 -0
  133. package/dist/Editor/common/ColorPickerButton.js +85 -45
  134. package/dist/Editor/common/DnD/Draggable.js +2 -1
  135. package/dist/Editor/common/FontLoader/FontLoader.js +2 -2
  136. package/dist/Editor/common/Icon.js +54 -21
  137. package/dist/Editor/common/ImageSelector/Options/Upload.js +2 -1
  138. package/dist/Editor/common/ImageSelector/Styles.js +47 -6
  139. package/dist/Editor/common/ImageSelector/UploadStyles.js +18 -6
  140. package/dist/Editor/common/LinkSettings/NavComponents.js +2 -1
  141. package/dist/Editor/common/LinkSettings/index.js +2 -1
  142. package/dist/Editor/common/MentionsPopup/Styles.js +142 -8
  143. package/dist/Editor/common/MentionsPopup/index.js +1 -1
  144. package/dist/Editor/common/RnD/ElementSettings/Settings/FormSettings.js +107 -12
  145. package/dist/Editor/common/RnD/GuideLines/styles.js +3 -3
  146. package/dist/Editor/common/RnD/ShadowElement.js +1 -1
  147. package/dist/Editor/common/RnD/VirtualElement/index.js +5 -1
  148. package/dist/Editor/common/RnD/index.js +4 -3
  149. package/dist/Editor/common/Section/index.js +3 -3
  150. package/dist/Editor/common/Section/styles.js +5 -1
  151. package/dist/Editor/common/Select/index.js +20 -0
  152. package/dist/Editor/common/Select/styles.js +17 -0
  153. package/dist/Editor/common/Shorthands/elements.js +13 -1
  154. package/dist/Editor/common/StyleBuilder/fieldStyle.js +2 -1
  155. package/dist/Editor/common/StyleBuilder/fieldTypes/backgroundImage.js +4 -3
  156. package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +35 -7
  157. package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +15 -2
  158. package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +2 -1
  159. package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +1 -1
  160. package/dist/Editor/common/StyleBuilder/fieldTypes/icons.js +2 -0
  161. package/dist/Editor/common/StyleBuilder/fieldTypes/radiusStyle.js +11 -11
  162. package/dist/Editor/common/StyleBuilder/fieldTypes/saveAsTemplate.js +22 -6
  163. package/dist/Editor/common/StyleBuilder/fieldTypes/selectBox.js +21 -2
  164. package/dist/Editor/common/StyleBuilder/fieldTypes/text.js +20 -4
  165. package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +12 -2
  166. package/dist/Editor/common/StyleBuilder/formStyle.js +268 -149
  167. package/dist/Editor/common/StyleBuilder/index.js +101 -20
  168. package/dist/Editor/common/StyleBuilder/tableStyle.js +69 -25
  169. package/dist/Editor/common/SwipeableDrawer/style.js +15 -4
  170. package/dist/Editor/common/ToolbarIcon.js +1 -1
  171. package/dist/Editor/common/Uploader.js +39 -37
  172. package/dist/Editor/common/iconListV2.js +598 -74
  173. package/dist/Editor/common/iconslist.js +25 -19
  174. package/dist/Editor/commonStyle.js +421 -15
  175. package/dist/Editor/helper/deserialize/index.js +31 -2
  176. package/dist/Editor/helper/enforceDateFormat.js +41 -0
  177. package/dist/Editor/helper/index.js +15 -2
  178. package/dist/Editor/helper/theme.js +15 -1
  179. package/dist/Editor/hooks/useBreakpoints.js +1 -1
  180. package/dist/Editor/hooks/useTable.js +210 -0
  181. package/dist/Editor/plugins/withCustomDeleteBackward.js +34 -3
  182. package/dist/Editor/plugins/withEmbeds.js +30 -26
  183. package/dist/Editor/plugins/withHTML.js +100 -12
  184. package/dist/Editor/plugins/withLayout.js +1 -0
  185. package/dist/Editor/utils/SlateUtilityFunctions.js +31 -11
  186. package/dist/Editor/utils/brains.js +1 -1
  187. package/dist/Editor/utils/chatEditor/SlateUtilityFunctions.js +75 -6
  188. package/dist/Editor/utils/customHooks/useResize.js +7 -4
  189. package/dist/Editor/utils/customHooks/useTableResize.js +6 -2
  190. package/dist/Editor/utils/dataView.js +43 -0
  191. package/dist/Editor/utils/embed.js +2 -1
  192. package/dist/Editor/utils/events.js +0 -1
  193. package/dist/Editor/utils/font.js +11 -4
  194. package/dist/Editor/utils/formfield.js +8 -4
  195. package/dist/Editor/utils/helper.js +100 -2
  196. package/dist/Editor/utils/insertNewLine.js +19 -1
  197. package/dist/Editor/utils/serializeToText.js +2 -0
  198. package/dist/Editor/utils/table.js +228 -24
  199. package/package.json +2 -2
@@ -22,7 +22,7 @@ const useGuideLineStyle = ({
22
22
  backgroundColor: "#FFF",
23
23
  pointerEvents: "none",
24
24
  zIndex: 1,
25
- [theme.breakpoints.between("xs", "md")]: {
25
+ [theme?.breakpoints?.between("xs", "md")]: {
26
26
  left: "calc(50% - 160px)"
27
27
  }
28
28
  },
@@ -35,13 +35,13 @@ const useGuideLineStyle = ({
35
35
  backgroundColor: "#FFF",
36
36
  pointerEvents: "none",
37
37
  zIndex: 1,
38
- [theme.breakpoints.between("xs", "md")]: {
38
+ [theme?.breakpoints?.between("xs", "md")]: {
39
39
  left: "calc(50% + 160px)"
40
40
  }
41
41
  },
42
42
  "& .white-wrapper": {
43
43
  overflowX: "hidden",
44
- [theme.breakpoints.between("xs", "md")]: {
44
+ [theme?.breakpoints?.between("xs", "md")]: {
45
45
  position: "absolute",
46
46
  width: "calc(50% - 162px)",
47
47
  height: "calc(100% - 2px)",
@@ -10,7 +10,7 @@ const useShadowElementStyles = ({
10
10
  position: "relative",
11
11
  backgroundColor: "rgba(0,0,0,0)",
12
12
  marginLeft: `calc((100% - 980px) * 0.5)`,
13
- [theme.breakpoints.between("xs", "md")]: {
13
+ [theme?.breakpoints?.between("xs", "md")]: {
14
14
  marginLeft: `calc((100% - 320px) * 0.5)`
15
15
  }
16
16
  }
@@ -141,7 +141,11 @@ const VirtualElement = props => {
141
141
  sx: classes.root,
142
142
  dangerouslySetInnerHTML: {
143
143
  __html: getItems()
144
- }
144
+ },
145
+ style: {
146
+ visibility: "hidden"
147
+ },
148
+ "aria-hidden": "true"
145
149
  });
146
150
  };
147
151
  export default VirtualElement;
@@ -18,7 +18,7 @@ import { selectText } from "../../utils/helper";
18
18
  import { removeSign } from "./ElementSettings/OtherSettings";
19
19
  import useDragging from "../../hooks/useDragging";
20
20
  import { dragOverOn } from "../../helper/RnD/focusNode";
21
- import { focusSelection, clearSelection } from "../../helper";
21
+ import { focusSelection, clearSelection, clearSelectionOnly } from "../../helper";
22
22
  import { jsx as _jsx } from "react/jsx-runtime";
23
23
  import { jsxs as _jsxs } from "react/jsx-runtime";
24
24
  import { Fragment as _Fragment } from "react/jsx-runtime";
@@ -163,6 +163,7 @@ const RnD = props => {
163
163
  }
164
164
  switch (e.detail) {
165
165
  case 1:
166
+ clearSelectionOnly(editor); //for selection removal on click outside
166
167
  if (!enable) {
167
168
  setSelectedElement({
168
169
  path: str_path,
@@ -366,7 +367,7 @@ const RnD = props => {
366
367
  // some cases
367
368
  if (dragOverEle?.dataset?.dragovertype === undefined) {
368
369
  // means check for parent element
369
- dragOverEle = e?.toElement?.parentElement;
370
+ dragOverEle = e?.toElement?.closest(".freegrid-container-parent");
370
371
  }
371
372
  if (dragOverEle?.dataset?.dragovertype !== "child") {
372
373
  const oldPath = dragging.dragOver;
@@ -533,7 +534,7 @@ const RnD = props => {
533
534
  children: [/*#__PURE__*/_jsx("div", {
534
535
  id: `opt_ref_${str_path}`,
535
536
  style: {
536
- display: "block",
537
+ display: readOnly ? "none" : "block",
537
538
  position: "absolute",
538
539
  left: "-8px",
539
540
  top: "-30px",
@@ -3,13 +3,13 @@ import { useTheme } from "@mui/material";
3
3
  import { Transforms } from "slate";
4
4
  import { ReactEditor, useSlateStatic } from "slate-react";
5
5
  import { Box, IconButton, Popper, Tooltip } from "@mui/material";
6
- import TuneIcon from "@mui/icons-material/Tune";
7
6
  import SectionPopup from "../../Elements/Grid/SectionPopup";
8
7
  import { getBreakPointsValue, getTRBLBreakPoints, groupByBreakpoint } from "../../helper/theme";
9
8
  import DragHandle from "../DnD/DragHandleButton";
10
9
  import { useEditorSelection } from "../../hooks/useMouseMove";
11
10
  import SectionStyle from "./styles";
12
11
  import useWindowResize from "../../hooks/useWindowResize";
12
+ import { SectionSettingIcon } from "../iconListV2";
13
13
  import { jsx as _jsx } from "react/jsx-runtime";
14
14
  import { jsxs as _jsxs } from "react/jsx-runtime";
15
15
  import { Fragment as _Fragment } from "react/jsx-runtime";
@@ -72,13 +72,13 @@ const Section = props => {
72
72
  height: "100%"
73
73
  } : {
74
74
  left: "-28px",
75
- top: "3px"
75
+ top: "1px"
76
76
  },
77
77
  children: /*#__PURE__*/_jsx(Tooltip, {
78
78
  title: "Section Settings",
79
79
  children: /*#__PURE__*/_jsx(IconButton, {
80
80
  onClick: onSettings,
81
- children: /*#__PURE__*/_jsx(TuneIcon, {})
81
+ children: /*#__PURE__*/_jsx(SectionSettingIcon, {})
82
82
  })
83
83
  })
84
84
  }) : null;
@@ -2,8 +2,12 @@ const SectionStyle = (themeReact, theme) => ({
2
2
  root: {
3
3
  "&:hover": {
4
4
  "& .dh-para": {
5
- opacity: 1
5
+ opacity: 1,
6
+ background: 'transparent',
7
+ width: '30px'
8
+ // top: '2px'
6
9
  },
10
+
7
11
  "& .sectionIcon": {
8
12
  opacity: 1
9
13
  },
@@ -0,0 +1,20 @@
1
+ import { Select as Core } from "@mui/material";
2
+ import SelectStyles from "./styles";
3
+ import { useEditorContext } from "../../hooks/useMouseMove";
4
+ import { jsx as _jsx } from "react/jsx-runtime";
5
+ function Select(props) {
6
+ const {
7
+ children,
8
+ ...rest
9
+ } = props;
10
+ const {
11
+ theme
12
+ } = useEditorContext();
13
+ const classes = SelectStyles(theme);
14
+ return /*#__PURE__*/_jsx(Core, {
15
+ MenuProps: classes.MenuProps,
16
+ ...rest,
17
+ children: children
18
+ });
19
+ }
20
+ export default Select;
@@ -0,0 +1,17 @@
1
+ const SelectStyles = (theme = {}) => {
2
+ const {
3
+ textColor,
4
+ background
5
+ } = theme?.palette?.editor || {};
6
+ return {
7
+ MenuProps: {
8
+ PaperProps: {
9
+ sx: {
10
+ color: textColor,
11
+ background
12
+ }
13
+ }
14
+ }
15
+ };
16
+ };
17
+ export default SelectStyles;
@@ -13,6 +13,7 @@ import { insertDivider } from "../../utils/divider";
13
13
  import { insertFreeGrid } from "../../utils/freegrid";
14
14
  import { Transforms } from "slate";
15
15
  import { insertInfinityAI } from "../../utils/infinityAI";
16
+ import { insertDataView } from "../../utils/dataView";
16
17
  import SearchButton from "../../Elements/Search/SearchButton";
17
18
  import { jsx as _jsx } from "react/jsx-runtime";
18
19
  const ELEMENTS_LIST = [{
@@ -158,7 +159,7 @@ const ELEMENTS_LIST = [{
158
159
  renderComponent: rest => /*#__PURE__*/_jsx(SearchButton, {
159
160
  ...rest,
160
161
  element: {
161
- name: 'Brain'
162
+ name: "Brain"
162
163
  },
163
164
  icoBtnType: "cmd"
164
165
  })
@@ -262,6 +263,17 @@ const ELEMENTS_LIST = [{
262
263
  onInsert: editor => {
263
264
  insertInfinityAI(editor);
264
265
  }
266
+ }, {
267
+ name: "Dynamic Table",
268
+ group: "Dynamic Table",
269
+ desc: "",
270
+ type: "dataView",
271
+ icon: /*#__PURE__*/_jsx(Icon, {
272
+ icon: "dataTable"
273
+ }),
274
+ onInsert: editor => {
275
+ insertDataView(editor);
276
+ }
265
277
  }];
266
278
  const elements = props => {
267
279
  const {
@@ -6,7 +6,8 @@ const fieldStyle = [{
6
6
  fields: [{
7
7
  label: "Field Name",
8
8
  key: "name",
9
- type: "text"
9
+ type: "text",
10
+ required: true
10
11
  }, {
11
12
  label: "Field Type",
12
13
  key: "element",
@@ -60,9 +60,10 @@ const BackgroundImage = props => {
60
60
  item: true,
61
61
  xs: 12,
62
62
  style: {
63
- backgroundImage: base64 ? `url(${base64})` : "none",
64
- height: "200px"
63
+ backgroundImage: base64 ? `url(${base64})` : "none"
64
+ // height: "200px",
65
65
  },
66
+
66
67
  sx: classes.uploadField,
67
68
  children: /*#__PURE__*/_jsx(Grid, {
68
69
  className: "uploadImageSection",
@@ -86,7 +87,7 @@ const BackgroundImage = props => {
86
87
  style: {
87
88
  paddingLeft: "8px"
88
89
  },
89
- children: "upload your image"
90
+ children: "Upload a image"
90
91
  })]
91
92
  })
92
93
  })
@@ -1,8 +1,9 @@
1
1
  import React, { useState } from "react";
2
- import { Checkbox, FormControlLabel, Grid, Slider, Typography, Box } from "@mui/material";
2
+ import { Checkbox, FormControlLabel, Grid, Slider, Typography, Box, IconButton } from "@mui/material";
3
3
  import { squreStyle } from "./radiusStyle";
4
4
  import { getBreakPointsValue } from "../../../helper/theme";
5
5
  import useWindowResize from "../../../hooks/useWindowResize";
6
+ import { CheckedBoxCheckIcon } from "../../iconListV2";
6
7
  import { jsx as _jsx } from "react/jsx-runtime";
7
8
  import { jsxs as _jsxs } from "react/jsx-runtime";
8
9
  const BANNER_SPACING_KEYS = ["top", "left", "right", "bottom"];
@@ -81,7 +82,18 @@ const BannerSpacing = props => {
81
82
  onChange: handleChange
82
83
  }), /*#__PURE__*/_jsx(Box, {
83
84
  component: "input",
84
- sx: classes.sapcingInput,
85
+ sx: {
86
+ ...classes.sapcingInput,
87
+ "::-webkit-outer-spin-button": {
88
+ WebkitAppearance: "none",
89
+ margin: 0
90
+ },
91
+ "::-webkit-inner-spin-button": {
92
+ WebkitAppearance: "none",
93
+ margin: 0
94
+ },
95
+ MozAppearance: "textfield"
96
+ },
85
97
  name: "top",
86
98
  value: !lockSpacing ? "" : pro_value?.top,
87
99
  className: "sliderInput",
@@ -92,10 +104,22 @@ const BannerSpacing = props => {
92
104
  })]
93
105
  }), /*#__PURE__*/_jsx(FormControlLabel, {
94
106
  className: "ccheckbox-primary",
107
+ sx: {
108
+ ...classes.customCheckBox
109
+ },
95
110
  control: /*#__PURE__*/_jsx(Checkbox, {
96
111
  value: !lockSpacing,
97
112
  checked: !lockSpacing,
98
- onChange: onLockSpacing
113
+ onChange: onLockSpacing,
114
+ variant: "outlined",
115
+ className: "checkBox",
116
+ checkedIcon: /*#__PURE__*/_jsx(IconButton, {
117
+ className: "checkedIcon",
118
+ children: /*#__PURE__*/_jsx(CheckedBoxCheckIcon, {})
119
+ }),
120
+ icon: /*#__PURE__*/_jsx(IconButton, {
121
+ className: "unCheckedIcon"
122
+ })
99
123
  }),
100
124
  label: /*#__PURE__*/_jsx(Typography, {
101
125
  variant: "body1",
@@ -135,7 +159,8 @@ const BannerSpacing = props => {
135
159
  value: pro_value?.top,
136
160
  className: "borderInput removeScroll",
137
161
  style: {
138
- ...squreStyle.topRight
162
+ ...squreStyle.topRight,
163
+ ...classes.customPaddingInput
139
164
  },
140
165
  onChange: handleChange,
141
166
  placeholder: "0"
@@ -148,7 +173,8 @@ const BannerSpacing = props => {
148
173
  value: pro_value?.right,
149
174
  className: "borderInput removeScroll",
150
175
  style: {
151
- ...squreStyle.bottomLeft
176
+ ...squreStyle.bottomLeft,
177
+ ...classes.customPaddingInput
152
178
  },
153
179
  onChange: handleChange,
154
180
  placeholder: "0"
@@ -161,7 +187,8 @@ const BannerSpacing = props => {
161
187
  value: pro_value?.bottom,
162
188
  className: "borderInput removeScroll",
163
189
  style: {
164
- ...squreStyle.bottomRight
190
+ ...squreStyle.bottomRight,
191
+ ...classes.customPaddingInput
165
192
  },
166
193
  onChange: handleChange,
167
194
  placeholder: "0"
@@ -174,7 +201,8 @@ const BannerSpacing = props => {
174
201
  value: pro_value?.left,
175
202
  className: "borderInput removeScroll",
176
203
  style: {
177
- ...squreStyle.topLeft
204
+ ...squreStyle.topLeft,
205
+ ...classes.customPaddingInput
178
206
  },
179
207
  onChange: handleChange,
180
208
  placeholder: "0"
@@ -1,8 +1,9 @@
1
1
  import React from "react";
2
- import { Grid, Typography, Slider, FormControlLabel, Checkbox, Box } from "@mui/material";
2
+ import { Grid, Typography, Slider, FormControlLabel, Checkbox, Box, IconButton } from "@mui/material";
3
3
  import { radiusStyle } from "./radiusStyle";
4
4
  import useWindowResize from "../../../hooks/useWindowResize";
5
5
  import { getBreakPointsValue, getCustomizationValue } from "../../../helper/theme";
6
+ import { CheckedBoxCheckIcon } from "../../iconListV2";
6
7
  import { jsx as _jsx } from "react/jsx-runtime";
7
8
  import { jsxs as _jsxs } from "react/jsx-runtime";
8
9
  const BORDER_RADIUS_KEYS = ["topLeft", "topRight", "bottomLeft", "bottomRight"];
@@ -90,10 +91,22 @@ const BorderRadius = props => {
90
91
  })]
91
92
  }), /*#__PURE__*/_jsx(FormControlLabel, {
92
93
  className: "ccheckbox-primary",
94
+ sx: {
95
+ ...classes.customCheckBox
96
+ },
93
97
  control: /*#__PURE__*/_jsx(Checkbox, {
94
98
  value: !lockRadius,
95
99
  checked: !lockRadius,
96
- onChange: onLockRadius
100
+ onChange: onLockRadius,
101
+ variant: "outlined",
102
+ className: "checkBox",
103
+ checkedIcon: /*#__PURE__*/_jsx(IconButton, {
104
+ className: "checkedIcon",
105
+ children: /*#__PURE__*/_jsx(CheckedBoxCheckIcon, {})
106
+ }),
107
+ icon: /*#__PURE__*/_jsx(IconButton, {
108
+ className: "unCheckedIcon"
109
+ })
97
110
  }),
98
111
  label: /*#__PURE__*/_jsx(Typography, {
99
112
  variant: "body1",
@@ -16,6 +16,7 @@ const Color = props => {
16
16
  hideGradient
17
17
  } = data;
18
18
  const [recentColors, setRecentColors] = useState({});
19
+ const getLable = label === 'Text' ? 'Select text color' : label === 'Background' ? 'Select background color' : label;
19
20
  useEffect(() => {
20
21
  const storedColors = JSON.parse(localStorage.getItem("recentColors"));
21
22
  if (storedColors) {
@@ -73,7 +74,7 @@ const Color = props => {
73
74
  }), /*#__PURE__*/_jsx(TextField, {
74
75
  fullWidth: true,
75
76
  value: value,
76
- placeholder: `${label} color code`,
77
+ placeholder: getLable || `${label} color code`,
77
78
  InputLabelProps: {
78
79
  shrink: true
79
80
  },
@@ -73,7 +73,7 @@ const FontSize = props => {
73
73
  size: "small",
74
74
  inputProps: {
75
75
  style: {
76
- textAlign: "center",
76
+ // textAlign: "center",
77
77
  padding: "11px"
78
78
  }
79
79
  },
@@ -91,12 +91,14 @@ const Icons = props => {
91
91
  overflowY: "auto",
92
92
  paddingTop: "5px"
93
93
  },
94
+ className: "muiIconsListParent",
94
95
  children: list.map(m => {
95
96
  return /*#__PURE__*/_jsx(Tooltip, {
96
97
  title: m,
97
98
  arrow: true,
98
99
  children: /*#__PURE__*/_jsx(IconButton, {
99
100
  onClick: onSelectIcon(m),
101
+ className: "muiIconsList",
100
102
  children: /*#__PURE__*/_jsx(MUIIcon, {
101
103
  iconName: m,
102
104
  props: customProps
@@ -53,7 +53,7 @@ export const radiusStyle = {
53
53
  export const squreStyle = {
54
54
  topLeft: {
55
55
  position: "absolute",
56
- left: "-35px",
56
+ left: "-37px",
57
57
  top: "50%",
58
58
  transform: "translateY(-50%)",
59
59
  width: "30px",
@@ -61,7 +61,7 @@ export const squreStyle = {
61
61
  margin: "auto",
62
62
  // borderTop: `2px solid #2563eb`,
63
63
  // borderLeft: `2px solid #2563eb`,
64
- border: `none`,
64
+ // border: `1px solid transparent`,
65
65
  // borderBottom: `none`,
66
66
  fontSize: "14px",
67
67
  textAlign: "center"
@@ -71,13 +71,13 @@ export const squreStyle = {
71
71
  // top: "-28px",
72
72
  left: "50%",
73
73
  transform: "translateX(-50%)",
74
- top: "-35px",
74
+ top: "-37px",
75
75
  width: "30px",
76
76
  height: "30px",
77
77
  // borderTop: `2px solid #2563eb`,
78
78
  // borderRight: `2px solid #2563eb`,
79
- border: `none`,
80
- borderLeft: `none`,
79
+ // border: `none`,
80
+ // borderLeft: `none`,
81
81
  fontSize: "14px"
82
82
  },
83
83
  bottomLeft: {
@@ -85,18 +85,18 @@ export const squreStyle = {
85
85
  // left: "-25px",
86
86
  top: "50%",
87
87
  transform: "translateY(-50%)",
88
- right: "-35px",
88
+ right: "-37px",
89
89
  width: "30px",
90
90
  height: "30px",
91
91
  // borderBottom: `2px solid #2563eb`,
92
92
  // borderLeft: `2px solid #2563eb`,
93
- border: `none`,
94
- borderTop: `none`,
93
+ // border: `none`,
94
+ // borderTop: `none`,
95
95
  fontSize: "14px"
96
96
  },
97
97
  bottomRight: {
98
98
  position: "absolute",
99
- bottom: "-35px",
99
+ bottom: "-37px",
100
100
  // right: "-25px",
101
101
  left: "50%",
102
102
  transform: "translateX(-50%)",
@@ -104,8 +104,8 @@ export const squreStyle = {
104
104
  height: "30px",
105
105
  // borderBottom: `2px solid #2563eb`,
106
106
  // borderRight: `2px solid #2563eb`,
107
- border: "none",
108
- borderLeft: "none",
107
+ // border: "none",
108
+ // borderLeft: "none",
109
109
  fontSize: "14px"
110
110
  }
111
111
  };
@@ -3,6 +3,8 @@ import { Grid, Button, Typography, Select, MenuItem, TextField } from "@mui/mate
3
3
  import CloudUploadIcon from "@mui/icons-material/CloudUpload";
4
4
  import { convertBase64 } from "../../../utils/helper";
5
5
  import { uploadFile } from "../../../service/fileupload";
6
+ import { useEditorContext } from "../../../hooks/useMouseMove";
7
+ import useCommonStyle from "../../../commonStyle";
6
8
  import { jsx as _jsx } from "react/jsx-runtime";
7
9
  import { jsxs as _jsxs } from "react/jsx-runtime";
8
10
  import { Fragment as _Fragment } from "react/jsx-runtime";
@@ -30,6 +32,10 @@ const SaveAsTemplate = props => {
30
32
  });
31
33
  const [base64, setBase64] = useState(value);
32
34
  const [uploading, setUploading] = useState(false);
35
+ const {
36
+ theme
37
+ } = useEditorContext();
38
+ const classes = useCommonStyle(theme);
33
39
  const handleChange = async e => {
34
40
  const file = e.target.files[0];
35
41
  const strImage = await convertBase64(file);
@@ -76,6 +82,9 @@ const SaveAsTemplate = props => {
76
82
  onSaveTemplate(formData, params);
77
83
  handleClose();
78
84
  };
85
+ if (!onSaveTemplate) {
86
+ return null;
87
+ }
79
88
  return /*#__PURE__*/_jsxs(_Fragment, {
80
89
  children: [/*#__PURE__*/_jsx(Grid, {
81
90
  item: true,
@@ -149,9 +158,14 @@ const SaveAsTemplate = props => {
149
158
  justifyContent: "space-between",
150
159
  alignItems: "center",
151
160
  children: [/*#__PURE__*/_jsxs(Button, {
152
- component: "label",
153
- variant: "contained",
161
+ component: "label"
162
+ // variant="contained"
163
+ ,
164
+ className: "gradientFillBtn",
154
165
  startIcon: /*#__PURE__*/_jsx(CloudUploadIcon, {}),
166
+ sx: {
167
+ ...classes.gradientFillBtn
168
+ },
155
169
  children: ["Upload file", /*#__PURE__*/_jsx("input", {
156
170
  type: "file",
157
171
  style: {
@@ -194,12 +208,14 @@ const SaveAsTemplate = props => {
194
208
  },
195
209
  className: "action-btn-wrpr",
196
210
  children: [/*#__PURE__*/_jsx(Button, {
197
- className: "savebtn",
211
+ className: "savebtn gradientFillBtn",
198
212
  onClick: handleSave,
199
213
  sx: {
200
- fontWeight: 700
201
- },
202
- variant: "contained",
214
+ fontWeight: 700,
215
+ ...classes.gradientFillBtn
216
+ }
217
+ // variant="contained"
218
+ ,
203
219
  children: saveText
204
220
  }), closeText ? /*#__PURE__*/_jsx(Button, {
205
221
  className: "closebtn",
@@ -1,5 +1,8 @@
1
1
  import React, { useEffect, useState, useRef } from "react";
2
- import { Grid, Checkbox, FormControlLabel, FormHelperText } from "@mui/material";
2
+ import { Grid, Checkbox, FormControlLabel, FormHelperText, IconButton } from "@mui/material";
3
+ import useCommonStyle from "../../../commonStyle";
4
+ import { useEditorContext } from "../../../hooks/useMouseMove";
5
+ import { CheckedBoxCheckIcon } from "../../iconListV2";
3
6
  import { jsx as _jsx } from "react/jsx-runtime";
4
7
  import { jsxs as _jsxs } from "react/jsx-runtime";
5
8
  const SelectBox = props => {
@@ -15,6 +18,10 @@ const SelectBox = props => {
15
18
  } = data;
16
19
  const [checkedValue, setCheckedValue] = useState(false);
17
20
  const isFirstRender = useRef(true);
21
+ const {
22
+ theme
23
+ } = useEditorContext();
24
+ const classes = useCommonStyle(theme);
18
25
  useEffect(() => {
19
26
  if (isFirstRender.current && elementProps.element === "email" && value === undefined) {
20
27
  setCheckedValue(true);
@@ -35,10 +42,22 @@ const SelectBox = props => {
35
42
  marginBottom: "12px"
36
43
  },
37
44
  children: [/*#__PURE__*/_jsx(FormControlLabel, {
45
+ className: "ccheckbox-primary",
46
+ sx: {
47
+ ...classes.customCheckBox
48
+ },
38
49
  control: /*#__PURE__*/_jsx(Checkbox, {
39
50
  value: value,
40
51
  checked: checkedValue,
41
- onChange: handleChange
52
+ onChange: handleChange,
53
+ className: "checkBox",
54
+ checkedIcon: /*#__PURE__*/_jsx(IconButton, {
55
+ className: "checkedIcon",
56
+ children: /*#__PURE__*/_jsx(CheckedBoxCheckIcon, {})
57
+ }),
58
+ icon: /*#__PURE__*/_jsx(IconButton, {
59
+ className: "unCheckedIcon"
60
+ })
42
61
  }),
43
62
  label: placeholder
44
63
  }), /*#__PURE__*/_jsx(FormHelperText, {
@@ -11,13 +11,21 @@ const Text = props => {
11
11
  const {
12
12
  key,
13
13
  placeholder,
14
- width
14
+ width,
15
+ required = false
15
16
  } = data;
16
17
  const [value, setValue] = useState(pro_value);
18
+ const [error, setError] = useState(false);
17
19
  const handleChange = e => {
18
- setValue(e.target.value);
20
+ const newValue = e.target.value;
21
+ setValue(newValue);
22
+ if (required && !newValue.trim()) {
23
+ setError(true);
24
+ } else {
25
+ setError(false);
26
+ }
19
27
  onChange({
20
- [key]: e.target.value
28
+ [key]: newValue
21
29
  });
22
30
  };
23
31
  return /*#__PURE__*/_jsxs(Grid, {
@@ -39,7 +47,15 @@ const Text = props => {
39
47
  value: value,
40
48
  onChange: handleChange,
41
49
  size: "small",
42
- fullWidth: true
50
+ fullWidth: true,
51
+ required: required,
52
+ error: error,
53
+ helperText: error ? 'This field is required' : '',
54
+ sx: {
55
+ '& .MuiFormHelperText-root': {
56
+ color: '#d32f2f !important'
57
+ }
58
+ }
43
59
  })]
44
60
  });
45
61
  };