@flozy/editor 10.1.1 → 10.1.2

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 (146) hide show
  1. package/dist/Editor/ChatEditor.js +17 -16
  2. package/dist/Editor/CommonEditor.js +115 -15
  3. package/dist/Editor/DialogWrapper.js +31 -25
  4. package/dist/Editor/Editor.css +16 -8
  5. package/dist/Editor/Elements/AI/PopoverAIInput.js +11 -3
  6. package/dist/Editor/Elements/AppHeader/AppHeader.js +3 -3
  7. package/dist/Editor/Elements/Button/EditorButton.js +25 -9
  8. package/dist/Editor/Elements/Color Picker/ColorButtons.js +61 -14
  9. package/dist/Editor/Elements/Color Picker/ColorPicker.css +25 -1
  10. package/dist/Editor/Elements/Color Picker/ColorPicker.js +10 -7
  11. package/dist/Editor/Elements/Color Picker/Styles.js +15 -13
  12. package/dist/Editor/Elements/DataView/Layouts/ColumnView.js +4 -2
  13. package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/MultiSelect.js +454 -0
  14. package/dist/Editor/Elements/DataView/Layouts/DataTypes/MultiSelectType.js +21 -6
  15. package/dist/Editor/Elements/DataView/Layouts/Options/AddOptions.js +5 -1
  16. package/dist/Editor/Elements/DataView/Layouts/Options/EditOption.js +3 -2
  17. package/dist/Editor/Elements/DataView/Layouts/Options/index.js +11 -0
  18. package/dist/Editor/Elements/DataView/Layouts/ViewData.js +8 -4
  19. package/dist/Editor/Elements/Embed/Image.js +3 -2
  20. package/dist/Editor/Elements/Embed/Video.js +1 -1
  21. package/dist/Editor/Elements/EmbedScript/Code.js +14 -2
  22. package/dist/Editor/Elements/EmbedScript/EmbedScriptPopup.js +57 -28
  23. package/dist/Editor/Elements/EmbedScript/styles.js +89 -0
  24. package/dist/Editor/Elements/Form/Form.js +179 -168
  25. package/dist/Editor/Elements/Form/FormField.js +10 -4
  26. package/dist/Editor/Elements/Form/Workflow/Styles.js +24 -22
  27. package/dist/Editor/Elements/FreeGrid/FreeGrid.js +6 -24
  28. package/dist/Editor/Elements/FreeGrid/FreeGridBox.js +7 -4
  29. package/dist/Editor/Elements/FreeGrid/Options/More.js +8 -8
  30. package/dist/Editor/Elements/FreeGrid/styles.js +67 -7
  31. package/dist/Editor/Elements/Grid/GridItem.js +1 -1
  32. package/dist/Editor/Elements/List/CheckList.js +4 -1
  33. package/dist/Editor/Elements/Search/SearchAttachment.js +40 -9
  34. package/dist/Editor/Elements/Search/SearchButton.js +9 -8
  35. package/dist/Editor/Elements/Search/SearchList.js +9 -7
  36. package/dist/Editor/Elements/SimpleText/index.js +6 -1
  37. package/dist/Editor/Elements/SimpleText/style.js +2 -2
  38. package/dist/Editor/Elements/Table/Table.js +3 -3
  39. package/dist/Editor/Elements/Title/title.js +6 -6
  40. package/dist/Editor/Elements/Variables/VariableButton.js +10 -1
  41. package/dist/Editor/MiniEditor.js +2 -1
  42. package/dist/Editor/Styles/EditorStyles.js +5 -5
  43. package/dist/Editor/Toolbar/FormatTools/Dropdown.js +27 -3
  44. package/dist/Editor/Toolbar/FormatTools/FontFamilyAutocomplete.js +4 -3
  45. package/dist/Editor/Toolbar/FormatTools/MarkButton.js +2 -2
  46. package/dist/Editor/Toolbar/FormatTools/TextSize.js +10 -13
  47. package/dist/Editor/Toolbar/Mini/MiniToolbar.js +2 -1
  48. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/MiniColorPicker.js +4 -2
  49. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +6 -13
  50. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +167 -42
  51. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +7 -4
  52. package/dist/Editor/Toolbar/PopupTool/PopperHeader.js +2 -1
  53. package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +72 -12
  54. package/dist/Editor/Toolbar/PopupTool/TextFormat.js +100 -27
  55. package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +439 -0
  56. package/dist/Editor/Toolbar/PopupTool/index.js +1 -1
  57. package/dist/Editor/Toolbar/toolbarGroups.js +48 -6
  58. package/dist/Editor/assets/svg/BackIcon.js +18 -0
  59. package/dist/Editor/assets/svg/ClearAllRounded.js +31 -0
  60. package/dist/Editor/assets/svg/ResetIconNew.js +23 -0
  61. package/dist/Editor/assets/svg/SettingsIcon.js +1 -0
  62. package/dist/Editor/assets/svg/ThemeIcons.js +293 -0
  63. package/dist/Editor/common/ColorPickerButton.js +38 -16
  64. package/dist/Editor/common/CustomColorPicker/index.js +130 -0
  65. package/dist/Editor/common/CustomColorPicker/style.js +53 -0
  66. package/dist/Editor/common/CustomDialog2/index.js +94 -0
  67. package/dist/Editor/common/CustomDialog2/style.js +67 -0
  68. package/dist/Editor/common/CustomSelect.js +43 -0
  69. package/dist/Editor/common/DnD/DragHandleButton.js +1 -1
  70. package/dist/Editor/common/FontLoader/FontLoader.js +3 -0
  71. package/dist/Editor/common/Icon.js +31 -1
  72. package/dist/Editor/common/ImageSelector/Styles.js +3 -9
  73. package/dist/Editor/common/LinkSettings/NavComponents.js +34 -8
  74. package/dist/Editor/common/LinkSettings/index.js +84 -68
  75. package/dist/Editor/common/LinkSettings/style.js +245 -30
  76. package/dist/Editor/common/RnD/ElementOptions/Actions.js +13 -14
  77. package/dist/Editor/common/RnD/ElementOptions/Icons/LinkIcon.js +1 -0
  78. package/dist/Editor/common/RnD/ElementOptions/index.js +2 -2
  79. package/dist/Editor/common/RnD/ElementOptions/styles.js +28 -1
  80. package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Settings.js +6 -5
  81. package/dist/Editor/common/RnD/ElementSettings/Settings/AppHeaderSettings.js +3 -2
  82. package/dist/Editor/common/RnD/ElementSettings/Settings/BoxSettings.js +3 -2
  83. package/dist/Editor/common/RnD/ElementSettings/Settings/ButtonSettings.js +3 -2
  84. package/dist/Editor/common/RnD/ElementSettings/Settings/CodeSettings.js +3 -2
  85. package/dist/Editor/common/RnD/ElementSettings/Settings/FormSettings.js +4 -2
  86. package/dist/Editor/common/RnD/ElementSettings/Settings/ImageSettings.js +3 -2
  87. package/dist/Editor/common/RnD/ElementSettings/Settings/TableSettings.js +3 -2
  88. package/dist/Editor/common/RnD/ElementSettings/Settings/TextSettings.js +3 -1
  89. package/dist/Editor/common/RnD/ElementSettings/Settings/VideoSettings.js +3 -2
  90. package/dist/Editor/common/RnD/ElementSettings/styles.js +147 -12
  91. package/dist/Editor/common/RnD/OptionsPopup/index.js +8 -5
  92. package/dist/Editor/common/RnD/OptionsPopup/style.js +121 -19
  93. package/dist/Editor/common/RnD/SwitchViewport/SwitchViewport.js +8 -5
  94. package/dist/Editor/common/RnD/Theme/MainThemeProvider.js +17 -0
  95. package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +6 -3
  96. package/dist/Editor/common/RnD/Utils/gridDropItem.js +1 -2
  97. package/dist/Editor/common/RnD/index.js +6 -7
  98. package/dist/Editor/common/Select/index.js +2 -0
  99. package/dist/Editor/common/Shorthands/elements.js +54 -0
  100. package/dist/Editor/common/SnackBar/index.js +43 -0
  101. package/dist/Editor/common/StyleBuilder/buttonStyle.js +4 -2
  102. package/dist/Editor/common/StyleBuilder/fieldTypes/backgroundImage.js +5 -0
  103. package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +12 -2
  104. package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +15 -7
  105. package/dist/Editor/common/StyleBuilder/fieldTypes/card.js +16 -8
  106. package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +36 -10
  107. package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +16 -7
  108. package/dist/Editor/common/StyleBuilder/fieldTypes/lineSpacing.js +7 -6
  109. package/dist/Editor/common/StyleBuilder/fieldTypes/menusArray.js +13 -6
  110. package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +15 -7
  111. package/dist/Editor/common/StyleBuilder/pageSettingsStyle.js +5 -7
  112. package/dist/Editor/common/Uploader.js +8 -0
  113. package/dist/Editor/common/iconListV2.js +101 -6
  114. package/dist/Editor/common/iconslist.js +24 -0
  115. package/dist/Editor/commonStyle.js +174 -61
  116. package/dist/Editor/helper/textIndeces.js +58 -0
  117. package/dist/Editor/helper/theme.js +203 -2
  118. package/dist/Editor/hooks/useEditorTheme.js +153 -0
  119. package/dist/Editor/hooks/useMouseMove.js +8 -5
  120. package/dist/Editor/hooks/useThemeValues.js +63 -0
  121. package/dist/Editor/plugins/withEmbeds.js +1 -1
  122. package/dist/Editor/plugins/withHTML.js +3 -1
  123. package/dist/Editor/plugins/withTable.js +1 -1
  124. package/dist/Editor/theme/ThemeList.js +50 -173
  125. package/dist/Editor/theme/index.js +149 -0
  126. package/dist/Editor/themeSettings/ActiveTheme.js +72 -0
  127. package/dist/Editor/themeSettings/buttons/index.js +290 -0
  128. package/dist/Editor/themeSettings/buttons/style.js +23 -0
  129. package/dist/Editor/themeSettings/colorTheme/index.js +309 -0
  130. package/dist/Editor/themeSettings/colorTheme/style.js +81 -0
  131. package/dist/Editor/themeSettings/fonts/PreviewElement.js +121 -0
  132. package/dist/Editor/themeSettings/fonts/index.js +240 -0
  133. package/dist/Editor/themeSettings/fonts/style.js +62 -0
  134. package/dist/Editor/themeSettings/icons.js +60 -0
  135. package/dist/Editor/themeSettings/index.js +361 -0
  136. package/dist/Editor/themeSettings/style.js +292 -0
  137. package/dist/Editor/themeSettingsAI/icons.js +96 -0
  138. package/dist/Editor/themeSettingsAI/index.js +355 -0
  139. package/dist/Editor/themeSettingsAI/saveTheme.js +202 -0
  140. package/dist/Editor/themeSettingsAI/style.js +324 -0
  141. package/dist/Editor/utils/SlateUtilityFunctions.js +166 -43
  142. package/dist/Editor/utils/button.js +1 -17
  143. package/dist/Editor/utils/draftToSlate.js +3 -2
  144. package/dist/Editor/utils/font.js +40 -37
  145. package/dist/Editor/utils/helper.js +90 -19
  146. package/package.json +4 -4
@@ -1,11 +1,15 @@
1
1
  import React, { useState } from "react";
2
- import { Box, IconButton, Popover } from "@mui/material";
2
+ import { Box, IconButton, Popover, Typography, useTheme } from "@mui/material";
3
3
  import KeyboardArrowDownRoundedIcon from "@mui/icons-material/KeyboardArrowDownRounded";
4
4
  import Button from "../../common/Button";
5
5
  import { colors } from "./defaultColors";
6
6
  import ColorPicker from "./colorPicker.svg";
7
+ import { useSlateStatic } from "slate-react";
8
+ import { Transforms } from "slate";
9
+ import { useEditorContext } from "../../hooks/useMouseMove";
7
10
  import { jsx as _jsx } from "react/jsx-runtime";
8
11
  import { jsxs as _jsxs } from "react/jsx-runtime";
12
+ import { Fragment as _Fragment } from "react/jsx-runtime";
9
13
  let c = [];
10
14
  const ColorChunks = (recentColors = []) => [...recentColors, ...colors].reduce((a, b, i) => {
11
15
  if (i % 7 === 0) {
@@ -32,8 +36,8 @@ const SingleColorButton = ({
32
36
  width: "100%",
33
37
  display: "flex",
34
38
  alignItems: "center",
35
- padding: padding || "8px 0px",
36
- justifyContent: "center"
39
+ padding: padding || "8px 0px"
40
+ // justifyContent: "center",
37
41
  },
38
42
  children: [crs.map(m => /*#__PURE__*/_jsx(Button, {
39
43
  onClick: handleSelect(m),
@@ -110,12 +114,18 @@ const ColorButtons = props => {
110
114
  openColorTool,
111
115
  onClose,
112
116
  onColorPickerClick,
117
+ disableEditTheme,
113
118
  defaultColors = []
114
119
  } = props;
115
120
  const [row1, ...restRows] = ColorChunks([]);
116
121
  const [anchorEl, setAnchorEl] = useState(null);
117
122
  const open = Boolean(anchorEl);
118
123
  const firstRow = defaultColors?.length ? defaultColors : row1;
124
+ const theme = useTheme();
125
+ const editor = useSlateStatic();
126
+ const {
127
+ setOpenTheme
128
+ } = useEditorContext();
119
129
  const handleMore = e => {
120
130
  setAnchorEl(e.currentTarget);
121
131
  };
@@ -128,6 +138,7 @@ const ColorButtons = props => {
128
138
  const handleSelect = color => () => {
129
139
  onSelect(color);
130
140
  };
141
+ const colorVars = theme?.vars?.colors || {};
131
142
  return /*#__PURE__*/_jsxs(Box, {
132
143
  component: "span",
133
144
  sx: classes.colorButtons,
@@ -144,7 +155,7 @@ const ColorButtons = props => {
144
155
  activeColor: activeColor
145
156
  }, `si_btn_row1_${m}_${i}`);
146
157
  })
147
- }), /*#__PURE__*/_jsxs(Popover, {
158
+ }), /*#__PURE__*/_jsx(Popover, {
148
159
  open: open || openColorTool,
149
160
  anchorEl: anchorEl || openColorTool,
150
161
  onClose: handleClose,
@@ -158,9 +169,40 @@ const ColorButtons = props => {
158
169
  },
159
170
  sx: classes.colorPopper,
160
171
  className: "colorPopper",
161
- children: [/*#__PURE__*/_jsx(Box, {
172
+ children: /*#__PURE__*/_jsxs(Box, {
162
173
  sx: classes.colorButtonsInner,
163
- children: restRows.map((m, i) => {
174
+ children: [Object.values(colorVars)?.length ? /*#__PURE__*/_jsxs(_Fragment, {
175
+ children: [/*#__PURE__*/_jsxs(Box, {
176
+ component: "div",
177
+ className: "singleColorTitleWrapper",
178
+ children: [/*#__PURE__*/_jsx(Typography, {
179
+ variant: "subtitle2",
180
+ children: "Theme colours"
181
+ }), disableEditTheme ? null : /*#__PURE__*/_jsx("div", {
182
+ className: "editBtn",
183
+ onClick: () => {
184
+ Transforms.deselect(editor, {
185
+ at: editor.selection
186
+ });
187
+ handleClose();
188
+ setOpenTheme("editThemeColor");
189
+ },
190
+ children: "Edit"
191
+ })]
192
+ }), /*#__PURE__*/_jsx(SingleColorButton, {
193
+ crs: Object.values(colorVars),
194
+ handleSelect: handleSelect,
195
+ classes: classes,
196
+ activeColor: activeColor
197
+ })]
198
+ }) : null, /*#__PURE__*/_jsx(Box, {
199
+ component: "div",
200
+ className: "singleColorTitleWrapper",
201
+ children: /*#__PURE__*/_jsx(Typography, {
202
+ variant: "subtitle2",
203
+ children: "Custom colour"
204
+ })
205
+ }), restRows.map((m, i) => {
164
206
  return /*#__PURE__*/_jsx(SingleColorButton, {
165
207
  id: `p2_${id}`,
166
208
  crs: m,
@@ -169,14 +211,19 @@ const ColorButtons = props => {
169
211
  classes: classes,
170
212
  activeColor: activeColor
171
213
  }, `si_btn_${m}_${i}`);
172
- })
173
- }), forMiniTool ? /*#__PURE__*/_jsx(IconButton, {
174
- onClick: onColorPickerClick,
175
- children: /*#__PURE__*/_jsx("img", {
176
- src: ColorPicker,
177
- alt: "color wheel"
178
- })
179
- }) : null]
214
+ }), forMiniTool ? /*#__PURE__*/_jsx(IconButton, {
215
+ onClick: onColorPickerClick,
216
+ style: {
217
+ alignSelf: "start",
218
+ margin: "6px",
219
+ padding: "0px"
220
+ },
221
+ children: /*#__PURE__*/_jsx("img", {
222
+ src: ColorPicker,
223
+ alt: "color wheel"
224
+ })
225
+ }) : null]
226
+ })
180
227
  })]
181
228
  });
182
229
  };
@@ -60,4 +60,28 @@
60
60
  padding: 0 15px !important;
61
61
  width: 60px !important;
62
62
  flex-shrink: 0;
63
- }
63
+ }
64
+
65
+
66
+ .singleColorTitleWrapper {
67
+ display: flex;
68
+ justify-content: space-between;
69
+ align-items: center;
70
+ padding: 10px;
71
+ width: 100%;
72
+ border-bottom: 1px solid #DCE4EC;
73
+ }
74
+
75
+ .singleColorTitleWrapper .MuiTypography-root {
76
+ font-weight: 600;
77
+ }
78
+
79
+ .singleColorTitleWrapper .editBtn {
80
+ text-transform: none;
81
+ color: #2563EB;
82
+ text-decoration: underline;
83
+ padding: 0px;
84
+ min-width: unset;
85
+ cursor: pointer;
86
+ font-size: 14px;
87
+ }
@@ -1,13 +1,14 @@
1
1
  import React, { useState } from "react";
2
2
  import { ReactEditor } from "slate-react";
3
- import ColorPickerTool from "react-gcolor-picker";
4
- import { IconButton, Tooltip, Box, Popover } from "@mui/material";
3
+ import { IconButton, Tooltip, Box, Popover, useTheme } from "@mui/material";
5
4
  import { addMarkData, activeMark } from "../../utils/SlateUtilityFunctions";
6
5
  import ColorButtons from "./ColorButtons";
7
6
  import ColorPickerStyles from "./Styles";
8
7
  import colorWheel from "./colorWheel.png";
9
8
  import "./ColorPicker.css";
10
9
  import { useEditorContext } from "../../hooks/useMouseMove";
10
+ import CustomColorPicker from "../../common/CustomColorPicker";
11
+ import { getSelectedElementColor } from "../../utils/helper";
11
12
  import { jsx as _jsx } from "react/jsx-runtime";
12
13
  import { Fragment as _Fragment } from "react/jsx-runtime";
13
14
  import { jsxs as _jsxs } from "react/jsx-runtime";
@@ -25,7 +26,8 @@ const ColorPicker = props => {
25
26
  classes,
26
27
  forMiniTool,
27
28
  openColorTool,
28
- closeColorTool
29
+ closeColorTool,
30
+ type
29
31
  } = props;
30
32
  const {
31
33
  theme
@@ -34,6 +36,7 @@ const ColorPicker = props => {
34
36
  const [anchorEl, setAnchorEl] = useState(null);
35
37
  const open = Boolean(anchorEl);
36
38
  const pickerStyles = ColorPickerStyles(theme);
39
+ const muiTheme = useTheme();
37
40
  const onOpen = e => {
38
41
  e.preventDefault();
39
42
  setAnchorEl(e.currentTarget);
@@ -58,7 +61,7 @@ const ColorPicker = props => {
58
61
  setAnchorEl(null);
59
62
  setSelection(null);
60
63
  };
61
- const activeColor = activeMark(editor, format) || DEFAULT_COLOR[format];
64
+ const activeColor = type === "textColor" ? getSelectedElementColor(editor, format, muiTheme) : activeMark(editor, format) || DEFAULT_COLOR[format];
62
65
  return /*#__PURE__*/_jsxs(_Fragment, {
63
66
  children: [forMiniTool ? null : /*#__PURE__*/_jsx(Tooltip, {
64
67
  title: title,
@@ -96,10 +99,10 @@ const ColorPicker = props => {
96
99
  horizontal: "top"
97
100
  },
98
101
  sx: classes.colorPickerPopup,
99
- children: /*#__PURE__*/_jsx(ColorPickerTool, {
102
+ children: /*#__PURE__*/_jsx(CustomColorPicker, {
100
103
  gradient: true,
101
- value: activeColor,
102
- onChange: handleFormSubmit
104
+ onChange: handleFormSubmit,
105
+ color: activeColor
103
106
  })
104
107
  })]
105
108
  });
@@ -20,24 +20,26 @@ const ColorPickerStyles = theme => ({
20
20
  background: `${theme?.palette?.editor?.miniToolBarBackground}`,
21
21
  border: `1px solid ${theme?.palette?.editor?.miniToolBarBorder} !important`,
22
22
  borderRadius: "7px !important",
23
- padding: "0px 5px",
24
- '@media only screen and (max-width: 600px)': {
23
+ padding: "0px 10px",
24
+ "@media only screen and (max-width: 600px)": {
25
25
  marginTop: "-40px"
26
26
  }
27
27
  }
28
28
  },
29
29
  colorButtonSingle: {
30
+ border: "1.5px solid #DCE4EC !important",
30
31
  "&.active": {
31
- "&:before": {
32
- content: '" "',
33
- position: "absolute",
34
- top: "-4px",
35
- left: "-4px",
36
- width: "calc(100% + 8px)",
37
- height: "calc(100% + 8px)",
38
- border: "2px solid #2563EB",
39
- borderRadius: "50%"
40
- }
32
+ // "&:before": {
33
+ // content: '" "',
34
+ // position: "absolute",
35
+ // top: "-4px",
36
+ // left: "-4px",
37
+ // width: "calc(100% + 8px)",
38
+ // height: "calc(100% + 8px)",
39
+ // border: "2px solid #2563EB",
40
+ // borderRadius: "50%",
41
+ // },
42
+ outline: "2px solid #2563EB"
41
43
  }
42
44
  },
43
45
  colorButtonsInner: {
@@ -59,7 +61,7 @@ const ColorPickerStyles = theme => ({
59
61
  width: "24px",
60
62
  height: "24px",
61
63
  margin: "0px 4px",
62
- border: "unset"
64
+ border: "1.5px solid #DCE4EC"
63
65
  }
64
66
  },
65
67
  colorPickerIcon: {
@@ -14,7 +14,8 @@ const ColumnView = props => {
14
14
  property,
15
15
  onSelect,
16
16
  selected,
17
- readOnly
17
+ readOnly,
18
+ translation
18
19
  } = props;
19
20
  const {
20
21
  type
@@ -60,7 +61,8 @@ const ColumnView = props => {
60
61
  readOnly: readOnly,
61
62
  settings: {
62
63
  wrapColumn: property?.wrapColumn
63
- }
64
+ },
65
+ translation: translation
64
66
  }), needAnchor && !readOnly ? /*#__PURE__*/_jsx(Popper, {
65
67
  sx: classes.root,
66
68
  open: open,