@flozy/editor 10.6.6 → 10.6.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 (133) hide show
  1. package/dist/Editor/ChatEditor.js +16 -17
  2. package/dist/Editor/CommonEditor.js +13 -116
  3. package/dist/Editor/DialogWrapper.js +25 -31
  4. package/dist/Editor/Editor.css +11 -31
  5. package/dist/Editor/Elements/AI/PopoverAIInput.js +3 -11
  6. package/dist/Editor/Elements/AI/Styles.js +0 -1
  7. package/dist/Editor/Elements/Accordion/Accordion.js +4 -3
  8. package/dist/Editor/Elements/Accordion/AccordionSummary.js +1 -2
  9. package/dist/Editor/Elements/AppHeader/AppHeader.js +3 -3
  10. package/dist/Editor/Elements/Button/EditorButton.js +9 -25
  11. package/dist/Editor/Elements/Color Picker/ColorButtons.js +14 -61
  12. package/dist/Editor/Elements/Color Picker/ColorPicker.css +1 -25
  13. package/dist/Editor/Elements/Color Picker/ColorPicker.js +7 -10
  14. package/dist/Editor/Elements/Color Picker/Styles.js +13 -15
  15. package/dist/Editor/Elements/DataView/Layouts/DataTypes/Components/MultiSelect.js +454 -0
  16. package/dist/Editor/Elements/DataView/Layouts/Options/EditOption.js +4 -4
  17. package/dist/Editor/Elements/Embed/Video.js +1 -1
  18. package/dist/Editor/Elements/Form/FormElements/FormTextArea.js +1 -1
  19. package/dist/Editor/Elements/Form/FormField.js +1 -1
  20. package/dist/Editor/Elements/Form/Workflow/Styles.js +22 -24
  21. package/dist/Editor/Elements/FreeGrid/FreeGrid.js +30 -31
  22. package/dist/Editor/Elements/FreeGrid/FreeGridBox.js +4 -7
  23. package/dist/Editor/Elements/FreeGrid/Options/More.js +7 -7
  24. package/dist/Editor/Elements/FreeGrid/Options/sectionItemOptions.js +1 -1
  25. package/dist/Editor/Elements/FreeGrid/styles.js +0 -9
  26. package/dist/Editor/Elements/Grid/GridItem.js +1 -1
  27. package/dist/Editor/Elements/SimpleText/style.js +2 -2
  28. package/dist/Editor/Elements/Table/Table.js +3 -3
  29. package/dist/Editor/Elements/Title/title.js +6 -6
  30. package/dist/Editor/Elements/Variables/VariableButton.js +1 -10
  31. package/dist/Editor/MiniEditor.js +1 -2
  32. package/dist/Editor/Styles/EditorStyles.js +4 -4
  33. package/dist/Editor/Toolbar/FormatTools/Dropdown.js +3 -27
  34. package/dist/Editor/Toolbar/FormatTools/FontFamilyAutocomplete.js +3 -4
  35. package/dist/Editor/Toolbar/FormatTools/MarkButton.js +2 -2
  36. package/dist/Editor/Toolbar/FormatTools/TextSize.js +13 -10
  37. package/dist/Editor/Toolbar/Mini/MiniToolbar.js +1 -2
  38. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/MiniColorPicker.js +2 -4
  39. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectFontSize.js +13 -6
  40. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/SelectTypography.js +42 -167
  41. package/dist/Editor/Toolbar/PopupTool/MiniTextFormat/index.js +4 -7
  42. package/dist/Editor/Toolbar/PopupTool/PopperHeader.js +1 -2
  43. package/dist/Editor/Toolbar/PopupTool/PopupToolStyle.js +9 -69
  44. package/dist/Editor/Toolbar/PopupTool/TextFormat.js +10 -58
  45. package/dist/Editor/Toolbar/PopupTool/index.js +2 -5
  46. package/dist/Editor/Toolbar/toolbarGroups.js +6 -48
  47. package/dist/Editor/common/ColorPickerButton.js +16 -38
  48. package/dist/Editor/common/DnD/DragHandleButton.js +1 -1
  49. package/dist/Editor/common/FontLoader/FontLoader.js +0 -3
  50. package/dist/Editor/common/Icon.js +0 -28
  51. package/dist/Editor/common/ImageSelector/ImageSelector.js +2 -2
  52. package/dist/Editor/common/ImageSelector/Styles.js +9 -3
  53. package/dist/Editor/common/LinkSettings/NavComponents.js +2 -6
  54. package/dist/Editor/common/RnD/ElementSettings/OtherSettings/Settings.js +1 -2
  55. package/dist/Editor/common/RnD/ElementSettings/Settings/AppHeaderSettings.js +2 -3
  56. package/dist/Editor/common/RnD/ElementSettings/Settings/BoxSettings.js +2 -3
  57. package/dist/Editor/common/RnD/ElementSettings/Settings/ButtonSettings.js +2 -3
  58. package/dist/Editor/common/RnD/ElementSettings/Settings/CodeSettings.js +2 -3
  59. package/dist/Editor/common/RnD/ElementSettings/Settings/FormSettings.js +2 -4
  60. package/dist/Editor/common/RnD/ElementSettings/Settings/ImageSettings.js +2 -3
  61. package/dist/Editor/common/RnD/ElementSettings/Settings/TableSettings.js +2 -3
  62. package/dist/Editor/common/RnD/ElementSettings/Settings/TextSettings.js +1 -3
  63. package/dist/Editor/common/RnD/ElementSettings/Settings/VideoSettings.js +2 -3
  64. package/dist/Editor/common/RnD/SwitchViewport/SwitchViewport.js +2 -11
  65. package/dist/Editor/common/RnD/Theme/ViewportStimulator.js +3 -6
  66. package/dist/Editor/common/RnD/Utils/gridDropItem.js +18 -28
  67. package/dist/Editor/common/RnD/Utils/index.js +1 -3
  68. package/dist/Editor/common/RnD/VirtualElement/VirtualTextElement.js +58 -45
  69. package/dist/Editor/common/RnD/VirtualElement/helper.js +130 -320
  70. package/dist/Editor/common/RnD/VirtualElement/styles.js +0 -22
  71. package/dist/Editor/common/RnD/index.js +11 -42
  72. package/dist/Editor/common/Shorthands/elements.js +0 -54
  73. package/dist/Editor/common/StyleBuilder/buttonStyle.js +2 -4
  74. package/dist/Editor/common/StyleBuilder/embedVideoStyle.js +0 -4
  75. package/dist/Editor/common/StyleBuilder/fieldTypes/backgroundImage.js +0 -5
  76. package/dist/Editor/common/StyleBuilder/fieldTypes/bannerSpacing.js +2 -12
  77. package/dist/Editor/common/StyleBuilder/fieldTypes/borderRadius.js +7 -15
  78. package/dist/Editor/common/StyleBuilder/fieldTypes/card.js +8 -16
  79. package/dist/Editor/common/StyleBuilder/fieldTypes/color.js +10 -36
  80. package/dist/Editor/common/StyleBuilder/fieldTypes/fontSize.js +7 -16
  81. package/dist/Editor/common/StyleBuilder/fieldTypes/index.js +1 -3
  82. package/dist/Editor/common/StyleBuilder/fieldTypes/menusArray.js +0 -2
  83. package/dist/Editor/common/StyleBuilder/fieldTypes/textOptions.js +7 -15
  84. package/dist/Editor/common/Uploader.js +0 -16
  85. package/dist/Editor/common/iconListV2.js +20 -20
  86. package/dist/Editor/common/iconslist.js +0 -21
  87. package/dist/Editor/commonStyle.js +64 -107
  88. package/dist/Editor/helper/index.js +2 -7
  89. package/dist/Editor/helper/theme.js +2 -203
  90. package/dist/Editor/hooks/useMouseMove.js +3 -9
  91. package/dist/Editor/plugins/withEmbeds.js +1 -1
  92. package/dist/Editor/plugins/withHTML.js +1 -3
  93. package/dist/Editor/plugins/withTable.js +1 -1
  94. package/dist/Editor/theme/ThemeList.js +173 -50
  95. package/dist/Editor/utils/SlateUtilityFunctions.js +18 -152
  96. package/dist/Editor/utils/accordion.js +24 -55
  97. package/dist/Editor/utils/button.js +17 -1
  98. package/dist/Editor/utils/draftToSlate.js +2 -3
  99. package/dist/Editor/utils/events.js +1 -1
  100. package/dist/Editor/utils/font.js +37 -40
  101. package/dist/Editor/utils/helper.js +24 -99
  102. package/dist/Editor/utils/insertAppHeader.js +4 -8
  103. package/package.json +4 -4
  104. package/dist/Editor/Elements/FreeGrid/helper.js +0 -115
  105. package/dist/Editor/Toolbar/PopupTool/ThemeTextFormat.js +0 -439
  106. package/dist/Editor/assets/svg/BackIcon.js +0 -18
  107. package/dist/Editor/assets/svg/ThemeIcons.js +0 -293
  108. package/dist/Editor/common/CustomColorPicker/index.js +0 -130
  109. package/dist/Editor/common/CustomColorPicker/style.js +0 -53
  110. package/dist/Editor/common/CustomDialog2/index.js +0 -94
  111. package/dist/Editor/common/CustomDialog2/style.js +0 -67
  112. package/dist/Editor/common/CustomSelect.js +0 -43
  113. package/dist/Editor/common/RnD/Theme/MainThemeProvider.js +0 -17
  114. package/dist/Editor/common/StyleBuilder/fieldTypes/embedUpload.js +0 -115
  115. package/dist/Editor/helper/textIndeces.js +0 -58
  116. package/dist/Editor/hooks/useEditorTheme.js +0 -153
  117. package/dist/Editor/hooks/useThemeValues.js +0 -63
  118. package/dist/Editor/theme/index.js +0 -149
  119. package/dist/Editor/themeSettings/ActiveTheme.js +0 -82
  120. package/dist/Editor/themeSettings/buttons/index.js +0 -300
  121. package/dist/Editor/themeSettings/buttons/style.js +0 -23
  122. package/dist/Editor/themeSettings/colorTheme/index.js +0 -310
  123. package/dist/Editor/themeSettings/colorTheme/style.js +0 -81
  124. package/dist/Editor/themeSettings/fonts/PreviewElement.js +0 -121
  125. package/dist/Editor/themeSettings/fonts/index.js +0 -240
  126. package/dist/Editor/themeSettings/fonts/style.js +0 -62
  127. package/dist/Editor/themeSettings/icons.js +0 -60
  128. package/dist/Editor/themeSettings/index.js +0 -380
  129. package/dist/Editor/themeSettings/style.js +0 -299
  130. package/dist/Editor/themeSettingsAI/icons.js +0 -96
  131. package/dist/Editor/themeSettingsAI/index.js +0 -355
  132. package/dist/Editor/themeSettingsAI/saveTheme.js +0 -202
  133. package/dist/Editor/themeSettingsAI/style.js +0 -332
@@ -0,0 +1,454 @@
1
+ import React, { useCallback, useEffect, useMemo, useState } from "react";
2
+ import Autocomplete from "@mui/material/Autocomplete";
3
+ import Box from "@mui/material/Box";
4
+ import Chip from "@mui/material/Chip";
5
+ import Divider from "@mui/material/Divider";
6
+ import Popover from "@mui/material/Popover";
7
+ import TextField from "@mui/material/TextField";
8
+ import Typography from "@mui/material/Typography";
9
+ import List from "@mui/material/List";
10
+ import ListItem from "@mui/material/ListItem";
11
+ import ListItemButton from "@mui/material/ListItemButton";
12
+ import IconButton from "@mui/material/IconButton";
13
+ import SwipeableDrawer from "@mui/material/SwipeableDrawer";
14
+ import Tooltip from "@mui/material/Tooltip";
15
+ import { CloseIcon } from "../../../../../common/iconslist";
16
+ import { useEditorContext } from "../../../../../hooks/useMouseMove";
17
+ import Icon from "../../../../../common/Icon";
18
+ import { colors } from "../../../../Color Picker/defaultColors";
19
+ import PropertySettings from "../../Options";
20
+ import SnackbarAlert from "../../../../../common/SnackBar";
21
+ import { jsx as _jsx } from "react/jsx-runtime";
22
+ import { jsxs as _jsxs } from "react/jsx-runtime";
23
+ const EXCLUDED_COLORS = new Set(["#000000", "#0F172A", "#2563EB", "#FFFFFF", "#64748B"]);
24
+ const DEFAULT_COLORS = colors?.filter(f => !f?.includes("linear") && !EXCLUDED_COLORS?.has(f));
25
+ const generateRandomColor = () => {
26
+ const randomIndex = Math.floor(Math.random() * DEFAULT_COLORS?.length);
27
+ return DEFAULT_COLORS[randomIndex];
28
+ };
29
+ const MultiSelectWithPopover = props => {
30
+ const {
31
+ options = [],
32
+ value,
33
+ onChange,
34
+ onUpdate,
35
+ property,
36
+ wrapColumn = false,
37
+ translation
38
+ } = props;
39
+ const [anchorEl, setAnchorEl] = useState(null);
40
+ const [anchorElOption, setAnchorElOption] = useState(null);
41
+ const [currentIndex, setCurrentIndex] = useState(null);
42
+ const [selectedOptions, setSelectedOptions] = useState(value);
43
+ const [availableOptions, setAvailableOptions] = useState(options);
44
+ const [showSnackBar, setShowSnackBar] = useState(false);
45
+ const [chipColor, setChipColor] = useState(generateRandomColor());
46
+ const [inputValue, setInputValue] = useState("");
47
+ const {
48
+ theme
49
+ } = useEditorContext();
50
+ const isMobile = window.matchMedia("(max-width: 899px)")?.matches || false;
51
+ const PopoverComponent = isMobile ? SwipeableDrawer : Popover;
52
+ const mode = useMemo(() => ({
53
+ type: "editOptionMulti",
54
+ edit: {
55
+ label: "Multi Select",
56
+ visible: true,
57
+ key: property,
58
+ type: "multi-select",
59
+ options: options || [],
60
+ optionIndex: currentIndex,
61
+ hideBackButton: true
62
+ }
63
+ }), [options, property, currentIndex]);
64
+ const customScrollStyles = {
65
+ scrollbarWidth: "thin",
66
+ scrollbarColor: `${theme?.palette?.editor?.brainPopupScroll} transparent`,
67
+ "&::-webkit-scrollbar": {
68
+ width: "6px"
69
+ },
70
+ "&::-webkit-scrollbar-thumb": {
71
+ backgroundColor: theme?.palette?.editor?.brainPopupScroll,
72
+ borderRadius: "3px"
73
+ },
74
+ "&::-webkit-scrollbar-track": {
75
+ display: "none"
76
+ }
77
+ };
78
+ useEffect(() => {
79
+ if (inputValue?.trim() && !chipColor) {
80
+ setChipColor(generateRandomColor());
81
+ }
82
+ }, [inputValue, chipColor]);
83
+ useEffect(() => {
84
+ if (JSON.stringify(options) !== JSON.stringify(availableOptions)) {
85
+ setAvailableOptions(options);
86
+ }
87
+ }, [options, availableOptions]);
88
+ const handleOpenPopover = useCallback(event => {
89
+ setAnchorEl(event.currentTarget);
90
+ }, []);
91
+ const handleClosePopover = useCallback(e => {
92
+ e?.stopPropagation();
93
+ setAnchorEl(null);
94
+ }, []);
95
+ const handleAddOption = newValue => {
96
+ const trimmedValue = newValue?.trim();
97
+ if (!trimmedValue) return;
98
+ const newOption = {
99
+ value: trimmedValue,
100
+ color: chipColor
101
+ };
102
+ if (!availableOptions?.some(opt => opt?.value === trimmedValue)) {
103
+ setAvailableOptions(prev => [...prev, newOption]);
104
+ setSelectedOptions(prev => [...prev, newOption]);
105
+ onUpdate([newOption, ...availableOptions]);
106
+ }
107
+ setInputValue("");
108
+ setChipColor("");
109
+ };
110
+ const onClose = () => {
111
+ setAnchorEl(anchorElOption);
112
+ setAnchorElOption(null);
113
+ };
114
+ const onEditOption = (type, data) => {
115
+ const updateData = data?.edit ? data?.edit?.options : data?.options;
116
+ onUpdate(updateData);
117
+ if (data?.edit?.options) {
118
+ const updatedSelectedOptions = selectedOptions?.filter(selOption => updateData?.some(availOption => availOption?.value === selOption?.value && availOption?.color === selOption?.color));
119
+ setSelectedOptions(updatedSelectedOptions);
120
+ onClose();
121
+ }
122
+ };
123
+ const handleEditOption = (e, index) => {
124
+ e.stopPropagation();
125
+ setCurrentIndex(index);
126
+ setAnchorElOption(anchorEl);
127
+ setAnchorEl(null);
128
+ };
129
+ const handleSelectOption = option => {
130
+ if (!selectedOptions?.some(opt => opt?.value === option?.value)) {
131
+ const updatedOptions = [...selectedOptions, option];
132
+ setSelectedOptions(updatedOptions);
133
+ onChange(updatedOptions);
134
+ } else {
135
+ setShowSnackBar(true);
136
+ }
137
+ };
138
+ const handleClearSelection = () => {
139
+ setSelectedOptions([]);
140
+ };
141
+ const handleDeleteChip = (event, option) => {
142
+ event.stopPropagation();
143
+ setSelectedOptions(prev => {
144
+ const updatedOptions = prev.filter(selected => selected?.value !== option?.value);
145
+ onChange(updatedOptions);
146
+ return updatedOptions;
147
+ });
148
+ };
149
+ const filteredOptions = availableOptions?.filter(option => option?.value?.toLowerCase()?.includes(inputValue?.toLowerCase()));
150
+ const isExactMatch = availableOptions?.some(opt => opt?.value?.toLowerCase() === inputValue?.toLowerCase());
151
+ const open = Boolean(anchorEl);
152
+ const openEditOption = Boolean(anchorElOption);
153
+ const id = open ? "autocomplete-popover" : undefined;
154
+ return /*#__PURE__*/_jsxs("div", {
155
+ children: [/*#__PURE__*/_jsx(Box, {
156
+ sx: {
157
+ display: "flex",
158
+ flexWrap: wrapColumn ? "wrap" : "nowrap",
159
+ overflowX: wrapColumn ? "hidden" : "auto",
160
+ gap: 0.5,
161
+ padding: "8px",
162
+ cursor: "pointer"
163
+ },
164
+ onClick: handleOpenPopover,
165
+ children: selectedOptions?.map((option, index) => /*#__PURE__*/_jsx(Chip, {
166
+ label: option?.value,
167
+ onDelete: event => {
168
+ handleDeleteChip(event, option);
169
+ },
170
+ deleteIcon: /*#__PURE__*/_jsx(CloseIcon, {}),
171
+ variant: "filled",
172
+ sx: {
173
+ backgroundColor: option?.color,
174
+ color: '#0F172A',
175
+ "& .MuiChip-deleteIcon": {
176
+ flexShrink: 0,
177
+ "& path": {
178
+ stroke: '#0F172A !important'
179
+ }
180
+ },
181
+ "&:hover": {
182
+ opacity: 0.8
183
+ }
184
+ }
185
+ }, index))
186
+ }), /*#__PURE__*/_jsx(PopoverComponent, {
187
+ id: id,
188
+ open: open,
189
+ anchorEl: anchorEl,
190
+ anchor: "bottom",
191
+ onClose: e => handleClosePopover(e),
192
+ anchorOrigin: {
193
+ vertical: "top",
194
+ horizontal: "left"
195
+ },
196
+ transformOrigin: {
197
+ vertical: "top",
198
+ horizontal: "left"
199
+ },
200
+ sx: {
201
+ "& .MuiPaper-root": {
202
+ borderRadius: "20px",
203
+ background: theme?.palette?.editor?.textFormatBgColor,
204
+ border: `1px solid ${theme?.palette?.editor?.popUpBorderColor}`,
205
+ boxShadow: "0px 4px 10px 0px #00000029"
206
+ }
207
+ },
208
+ disableAutoFocus: true,
209
+ disableEnforceFocus: true,
210
+ disableRestoreFocus: true,
211
+ children: /*#__PURE__*/_jsxs(Box, {
212
+ sx: {
213
+ width: isMobile ? "100%" : 300
214
+ },
215
+ children: [/*#__PURE__*/_jsx(Autocomplete, {
216
+ multiple: true,
217
+ freeSolo: true,
218
+ disablePortal: true,
219
+ PopperComponent: () => null,
220
+ sx: {
221
+ "& .MuiFormControl-root": {
222
+ maxHeight: "250px",
223
+ overflowY: "auto",
224
+ overflowX: "hidden",
225
+ pr: '12px',
226
+ pl: '12px',
227
+ marginTop: '12px',
228
+ ...customScrollStyles
229
+ }
230
+ },
231
+ disableClearable: true,
232
+ options: [],
233
+ getOptionLabel: option => options?.value || "",
234
+ value: selectedOptions,
235
+ onChange: (event, newValues) => {
236
+ const addedOptions = newValues?.filter(value => typeof value === "object" || typeof value === "string" && value?.trim() !== "")?.map(value => typeof value === "string" ? {
237
+ value,
238
+ color: chipColor
239
+ } : value);
240
+ const isDuplicate = addedOptions?.some(newOpt => (selectedOptions || [])?.some(opt => opt.value === newOpt.value));
241
+ if (!isDuplicate) {
242
+ setSelectedOptions([...selectedOptions, ...addedOptions]);
243
+ }
244
+ },
245
+ inputValue: inputValue,
246
+ onInputChange: (event, newInputValue) => setInputValue(newInputValue),
247
+ onKeyDown: event => {
248
+ if (event.key === "Enter" && inputValue.trim()) {
249
+ event.preventDefault();
250
+ handleAddOption(inputValue);
251
+ }
252
+ },
253
+ filterOptions: (options, params) => options?.filter(option => option?.value?.toLowerCase()?.includes(params?.inputValue?.toLowerCase())),
254
+ renderInput: params => /*#__PURE__*/_jsx(TextField, {
255
+ ...params,
256
+ variant: "standard",
257
+ InputProps: {
258
+ ...params.InputProps,
259
+ disableUnderline: true,
260
+ sx: {
261
+ display: "flex",
262
+ flexWrap: "wrap",
263
+ fontFamily: "Inter",
264
+ fontWeight: 400,
265
+ fontSize: "12px",
266
+ color: theme?.palette?.editor?.secondaryTextColor,
267
+ "&::placeholder": {
268
+ color: theme?.palette?.editor?.secondaryTextColor
269
+ },
270
+ "& .MuiAutocomplete-input": {
271
+ minWidth: "100px !important"
272
+ }
273
+ },
274
+ endAdornment: /*#__PURE__*/_jsx(Tooltip, {
275
+ arrow: true,
276
+ title: "Clear Selected",
277
+ children: /*#__PURE__*/_jsx(IconButton, {
278
+ onClick: handleClearSelection,
279
+ sx: {
280
+ padding: 0,
281
+ minWidth: "unset",
282
+ "& .MuiSvgIcon-root": {
283
+ fontSize: 20
284
+ },
285
+ '& rect': {
286
+ fill: theme?.palette?.editor?.closeButtonSvgStroke
287
+ },
288
+ '&:hover': {
289
+ backgroundColor: 'transparent'
290
+ }
291
+ },
292
+ children: /*#__PURE__*/_jsx(Icon, {
293
+ icon: "resetIconNew"
294
+ })
295
+ })
296
+ })
297
+ },
298
+ sx: {
299
+ backgroundColor: "transparent",
300
+ fontFamily: 'Inter',
301
+ fontWeight: 400,
302
+ fontSize: '12px'
303
+ },
304
+ placeholder: "Create new one..."
305
+ }),
306
+ renderTags: (tagValues, getTagProps) => tagValues.map((option, index) => /*#__PURE__*/_jsx(Chip, {
307
+ variant: "filled",
308
+ label: option?.value,
309
+ ...getTagProps({
310
+ index
311
+ }),
312
+ onDelete: event => {
313
+ handleDeleteChip(event, option);
314
+ },
315
+ deleteIcon: /*#__PURE__*/_jsx(CloseIcon, {}),
316
+ sx: {
317
+ backgroundColor: option?.color,
318
+ color: '#0F172A',
319
+ "& .MuiChip-deleteIcon": {
320
+ flexShrink: 0,
321
+ "& path": {
322
+ stroke: '#0F172A !important'
323
+ }
324
+ },
325
+ "&:hover": {
326
+ opacity: 0.8
327
+ }
328
+ }
329
+ }, index))
330
+ }), /*#__PURE__*/_jsx(Divider, {
331
+ sx: {
332
+ mt: '12px',
333
+ borderBottom: `1px solid ${theme?.palette?.editor?.popUpBorderColor}`,
334
+ boxShadow: theme?.palette?.editor?.dividerDropShadow
335
+ }
336
+ }), /*#__PURE__*/_jsx(Box, {
337
+ sx: {
338
+ pl: '4px'
339
+ },
340
+ children: /*#__PURE__*/_jsxs(List, {
341
+ sx: {
342
+ maxHeight: "250px",
343
+ overflowY: "auto",
344
+ ...customScrollStyles
345
+ },
346
+ children: [/*#__PURE__*/_jsx(Typography, {
347
+ sx: {
348
+ mb: 1,
349
+ pl: '8px',
350
+ color: theme?.palette?.editor?.secondaryTextColor,
351
+ fontFamily: 'Inter',
352
+ fontWeight: 400,
353
+ fontSize: '12px'
354
+ },
355
+ children: "Choose an option or create one"
356
+ }), filteredOptions?.map((option, index) => /*#__PURE__*/_jsx(ListItem, {
357
+ sx: {
358
+ padding: 0
359
+ },
360
+ disablePadding: true,
361
+ children: /*#__PURE__*/_jsxs(ListItemButton, {
362
+ onClick: () => handleSelectOption(option),
363
+ sx: {
364
+ paddingTop: "4px",
365
+ paddingBottom: "4px",
366
+ justifyContent: 'space-between',
367
+ '&:hover': {
368
+ '& path': {
369
+ stroke: theme?.palette?.editor?.activeColor
370
+ },
371
+ borderRadius: '12px'
372
+ }
373
+ },
374
+ children: [/*#__PURE__*/_jsx(Chip, {
375
+ label: option?.value,
376
+ sx: {
377
+ backgroundColor: option?.color,
378
+ color: '#0F172A',
379
+ fontWeight: 500,
380
+ fontSize: "12px",
381
+ fontFamily: "Inter",
382
+ padding: "4px 12px",
383
+ borderRadius: "16px",
384
+ maxWidth: "180px",
385
+ whiteSpace: "nowrap",
386
+ overflow: "hidden",
387
+ textOverflow: "ellipsis"
388
+ }
389
+ }), /*#__PURE__*/_jsx(IconButton, {
390
+ size: "small",
391
+ sx: {
392
+ '& path': {
393
+ stroke: theme?.palette?.editor?.closeButtonSvgStroke
394
+ },
395
+ '&:hover': {
396
+ backgroundColor: 'transparent'
397
+ }
398
+ },
399
+ onClick: e => handleEditOption(e, index),
400
+ children: /*#__PURE__*/_jsx(Icon, {
401
+ icon: "rightArrow"
402
+ })
403
+ })]
404
+ })
405
+ }, index)), inputValue?.trim() && !isExactMatch && /*#__PURE__*/_jsx(ListItem, {
406
+ disablePadding: true,
407
+ children: /*#__PURE__*/_jsxs(ListItemButton, {
408
+ onClick: () => handleAddOption(inputValue),
409
+ sx: {
410
+ display: "flex",
411
+ alignItems: "center"
412
+ },
413
+ children: [/*#__PURE__*/_jsx(Typography, {
414
+ sx: {
415
+ color: theme?.palette?.editor?.secondaryTextColor,
416
+ marginRight: "6px",
417
+ fontSize: "14px",
418
+ fontFamily: "Inter"
419
+ },
420
+ children: "Create"
421
+ }), /*#__PURE__*/_jsx(Chip, {
422
+ label: `${inputValue}`,
423
+ sx: {
424
+ backgroundColor: chipColor,
425
+ color: '#0F172A',
426
+ fontWeight: 500,
427
+ fontSize: "12px",
428
+ fontFamily: "Inter",
429
+ borderRadius: "16px",
430
+ maxWidth: "180px",
431
+ whiteSpace: "nowrap",
432
+ overflow: "hidden",
433
+ textOverflow: "ellipsis"
434
+ }
435
+ })]
436
+ })
437
+ })]
438
+ })
439
+ })]
440
+ })
441
+ }), openEditOption ? /*#__PURE__*/_jsx(PropertySettings, {
442
+ open: openEditOption,
443
+ anchorEl: anchorElOption,
444
+ mode: mode,
445
+ onClose: onClose,
446
+ onEvent: onEditOption,
447
+ translation: translation
448
+ }) : null, showSnackBar ? /*#__PURE__*/_jsx(SnackbarAlert, {
449
+ message: "Option already selected!",
450
+ setShowSnackBar: setShowSnackBar
451
+ }) : null]
452
+ });
453
+ };
454
+ export default MultiSelectWithPopover;
@@ -134,15 +134,15 @@ const EditOption = props => {
134
134
  size: "small",
135
135
  onClick: onBack,
136
136
  children: /*#__PURE__*/_jsx(Icon, {
137
- icon: 'leftArrow'
137
+ icon: "leftArrow"
138
138
  })
139
139
  }) : null, translation("Edit Option")]
140
140
  }), /*#__PURE__*/_jsx(IconButton, {
141
141
  className: "tv-act-ico bg br1",
142
142
  size: "small",
143
143
  sx: {
144
- '& svg': {
145
- '& path': {
144
+ "& svg": {
145
+ "& path": {
146
146
  strokeWidth: 0
147
147
  }
148
148
  }
@@ -187,7 +187,7 @@ const EditOption = props => {
187
187
  onClick: onDeleteOption,
188
188
  children: [/*#__PURE__*/_jsx(ListItemIcon, {
189
189
  children: /*#__PURE__*/_jsx(Icon, {
190
- icon: 'trashIcon'
190
+ icon: "trashIcon"
191
191
  })
192
192
  }), /*#__PURE__*/_jsx(ListItemText, {
193
193
  children: translation("Delete Option")
@@ -89,7 +89,7 @@ const VideoPlaceholder = props => {
89
89
  },
90
90
  children: [/*#__PURE__*/_jsx(Icon, {
91
91
  icon: "video"
92
- }), translation(TYPE_LABELS[type] || "Embed Video or Other")]
92
+ }), TYPE_LABELS[type] || translation("Embed Video or Other")]
93
93
  }) : /*#__PURE__*/_jsxs(Box, {
94
94
  sx: {
95
95
  color: "#64748B !important",
@@ -35,13 +35,13 @@ const FormTextArea = props => {
35
35
  onChange: onChange,
36
36
  sx: {
37
37
  width: "100%",
38
+ borderWidth: "1px",
38
39
  borderBlockStyle: "solid",
39
40
  padding: {
40
41
  ...getTRBLBreakPoints(bannerSpacing)
41
42
  },
42
43
  height: height || "150px",
43
44
  borderColor: borderColor && `${borderColor} !important`,
44
- borderWidth: borderWidth || "1px",
45
45
  borderRadius: {
46
46
  ...getBreakPointsValue(borderRadius || {}, null, "overrideBorderRadius", true)
47
47
  },
@@ -1,5 +1,5 @@
1
1
  import React, { useState } from "react";
2
- import { Transforms } from "slate";
2
+ import { Transforms, Node } from "slate";
3
3
  import { useSlateStatic, ReactEditor } from "slate-react";
4
4
  import { IconButton, Tooltip, Grid, useTheme } from "@mui/material";
5
5
  import FormElements from "./FormElements";
@@ -9,20 +9,20 @@ const FormStyles = theme => ({
9
9
  color: "#94A3B8"
10
10
  },
11
11
  bodyTextArea: {
12
- "& .mini-editor-cls": {
13
- padding: "12px",
14
- "&:focus-visible": {
15
- outline: "none",
16
- border: "none"
12
+ '& .mini-editor-cls': {
13
+ padding: '12px',
14
+ '&:focus-visible': {
15
+ outline: 'none',
16
+ border: 'none'
17
17
  }
18
18
  },
19
19
  "& .editorWorkflow": {
20
- minHeight: "130px",
21
- padding: "12px",
20
+ minHeight: '130px',
21
+ padding: '12px',
22
22
  paddingBottom: 0,
23
- "&:focus-visible": {
24
- outline: "none",
25
- border: "none"
23
+ '&:focus-visible': {
24
+ outline: 'none',
25
+ border: 'none'
26
26
  }
27
27
  }
28
28
  },
@@ -105,7 +105,7 @@ const FormStyles = theme => ({
105
105
  padding: "4px 22px",
106
106
  textTransform: "none",
107
107
  border: "1px solid #D8DDE1",
108
- minWidth: "126px",
108
+ minWidth: '126px',
109
109
  "& svg": {
110
110
  "& path": {
111
111
  stroke: "#64748B"
@@ -169,19 +169,17 @@ const FormStyles = theme => ({
169
169
  }
170
170
  },
171
171
  colorButtonSingle: {
172
- border: "1.5px solid #DCE4EC !important",
173
172
  "&.active": {
174
- // "&:before": {
175
- // content: '" "',
176
- // position: "absolute",
177
- // top: "-5px",
178
- // left: "-5px",
179
- // width: "calc(100% + 4px)",
180
- // height: "calc(100% + 4px)",
181
- // border: "3px solid blue",
182
- // borderRadius: "50%",
183
- // },
184
- outline: "2px solid #2563EB"
173
+ "&:before": {
174
+ content: '" "',
175
+ position: "absolute",
176
+ top: "-5px",
177
+ left: "-5px",
178
+ width: "calc(100% + 4px)",
179
+ height: "calc(100% + 4px)",
180
+ border: "3px solid blue",
181
+ borderRadius: "50%"
182
+ }
185
183
  }
186
184
  },
187
185
  colorButtonsInner: {
@@ -251,7 +249,7 @@ const FormStyles = theme => ({
251
249
  }
252
250
  },
253
251
  root: {
254
- padding: "10px"
252
+ padding: '10px'
255
253
  }
256
254
  });
257
255
  export default FormStyles;