@flozy/editor 9.8.4 → 9.8.5

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