@carto/meridian-ds 2.1.0-alpha-copiable-input-text.3 → 2.1.1

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 (40) hide show
  1. package/CHANGELOG.md +4 -2
  2. package/dist/{Link-_lzRY1Ay.cjs → Alert-oGAW_syG.cjs} +129 -129
  3. package/dist/{Link-D5fKicEY.js → Alert-yL5uEg4Z.js} +129 -129
  4. package/dist/{MenuItem-CKrhDizf.js → MenuItem-C8x-GasJ.js} +1 -1
  5. package/dist/{MenuItem-BY6fuF5U.cjs → MenuItem-CyIdh2wX.cjs} +1 -1
  6. package/dist/{TablePaginationActions-CCDi-BO-.js → TablePaginationActions-BWer8cmX.js} +6 -6
  7. package/dist/{TablePaginationActions-D2K26kdR.cjs → TablePaginationActions-MwqZJoRm.cjs} +6 -6
  8. package/dist/components/index.cjs +794 -874
  9. package/dist/components/index.js +798 -878
  10. package/dist/theme/index.cjs +2 -2
  11. package/dist/theme/index.js +3 -3
  12. package/dist/types/components/atoms/index.d.ts +0 -2
  13. package/dist/types/components/atoms/index.d.ts.map +1 -1
  14. package/dist/types/components/{atoms/Copy/types.d.ts → molecules/Copy/CopiableComponent.d.ts} +5 -11
  15. package/dist/types/components/molecules/Copy/CopiableComponent.d.ts.map +1 -0
  16. package/dist/types/components/molecules/Copy/copyString.d.ts.map +1 -0
  17. package/dist/types/components/{atoms → molecules}/Copy/index.d.ts +1 -2
  18. package/dist/types/components/molecules/Copy/index.d.ts.map +1 -0
  19. package/dist/types/components/molecules/Copy/useCopyValue.d.ts.map +1 -0
  20. package/dist/types/components/molecules/MultipleSelectField/useMultipleSelectField.d.ts.map +1 -1
  21. package/dist/types/components/molecules/index.d.ts +2 -0
  22. package/dist/types/components/molecules/index.d.ts.map +1 -1
  23. package/dist/types/components/organisms/CodeArea/CodeAreaHeader.d.ts.map +1 -1
  24. package/dist/types/localization/en.d.ts +2 -2
  25. package/dist/types/localization/es.d.ts +2 -2
  26. package/dist/types/localization/id.d.ts +2 -2
  27. package/dist/types/localization/index.d.ts +6 -6
  28. package/dist/widgets/index.cjs +8 -8
  29. package/dist/widgets/index.js +2 -2
  30. package/package.json +1 -1
  31. package/dist/types/components/atoms/Copy/CopiableComponent.d.ts +0 -4
  32. package/dist/types/components/atoms/Copy/CopiableComponent.d.ts.map +0 -1
  33. package/dist/types/components/atoms/Copy/CopiableInputText.d.ts +0 -18
  34. package/dist/types/components/atoms/Copy/CopiableInputText.d.ts.map +0 -1
  35. package/dist/types/components/atoms/Copy/copyString.d.ts.map +0 -1
  36. package/dist/types/components/atoms/Copy/index.d.ts.map +0 -1
  37. package/dist/types/components/atoms/Copy/types.d.ts.map +0 -1
  38. package/dist/types/components/atoms/Copy/useCopyValue.d.ts.map +0 -1
  39. /package/dist/types/components/{atoms → molecules}/Copy/copyString.d.ts +0 -0
  40. /package/dist/types/components/{atoms → molecules}/Copy/useCopyValue.d.ts +0 -0
@@ -5,12 +5,12 @@ const React = require("react");
5
5
  const reactIntl = require("react-intl");
6
6
  const material = require("@mui/material");
7
7
  const iconsMaterial = require("@mui/icons-material");
8
- const TablePaginationActions = require("../TablePaginationActions-D2K26kdR.cjs");
9
- const Link = require("../Link-_lzRY1Ay.cjs");
8
+ const TablePaginationActions = require("../TablePaginationActions-MwqZJoRm.cjs");
9
+ const Alert$1 = require("../Alert-oGAW_syG.cjs");
10
10
  const ArrowDown = require("../ArrowDown-DJ0vhbsw.cjs");
11
11
  const OpenDiagonallyRight = require("../OpenDiagonallyRight-CpL4ROwg.cjs");
12
12
  require("cartocolor");
13
- const MenuItem = require("../MenuItem-BY6fuF5U.cjs");
13
+ const MenuItem = require("../MenuItem-CyIdh2wX.cjs");
14
14
  const reactWindow = require("react-window");
15
15
  const DatePicker$1 = require("@mui/x-date-pickers/DatePicker");
16
16
  const xDatePickers = require("@mui/x-date-pickers");
@@ -41,198 +41,310 @@ require("codemirror/addon/fold/indent-fold.js");
41
41
  require("codemirror/addon/fold/markdown-fold.js");
42
42
  require("codemirror/addon/fold/comment-fold.js");
43
43
  const ClickAwayListener = require("@mui/material/ClickAwayListener");
44
- const StyledMenu = material.styled(material.Menu, {
45
- shouldForwardProp: (prop) => !["extended", "width", "height"].includes(prop)
46
- })(({ extended, width, height }) => ({
47
- ...extended && {
48
- ".MuiMenuItem-root": {
49
- minHeight: TablePaginationActions.MENU_ITEM_SIZE_EXTENDED
44
+ const IndicatorIcon = material.styled(material.Box)({
45
+ position: "absolute",
46
+ top: 0,
47
+ left: 0,
48
+ right: 0,
49
+ bottom: 0,
50
+ display: "flex",
51
+ alignItems: "center",
52
+ justifyContent: "center"
53
+ });
54
+ const HiddenText = material.styled(material.Box)({
55
+ visibility: "hidden",
56
+ pointerEvents: "none"
57
+ });
58
+ function _Button({
59
+ children,
60
+ loading,
61
+ disabled,
62
+ startIcon,
63
+ endIcon,
64
+ loadingPosition,
65
+ external,
66
+ showExternalIcon = true,
67
+ "aria-describedby": ariaDescribedby,
68
+ ...otherProps
69
+ }, ref) {
70
+ const intl = reactIntl.useIntl();
71
+ const intlConfig = TablePaginationActions.useImperativeIntl(intl);
72
+ const defaultIconLoader = /* @__PURE__ */ jsxRuntime.jsx(material.CircularProgress, { size: 18, color: "inherit" });
73
+ const isDefaultLoading = loading && loadingPosition === void 0;
74
+ const isExternalLink = otherProps.href && external;
75
+ const renderContent = () => {
76
+ if (isDefaultLoading) {
77
+ return /* @__PURE__ */ jsxRuntime.jsxs(material.Box, { sx: { position: "relative" }, children: [
78
+ /* @__PURE__ */ jsxRuntime.jsx(IndicatorIcon, { children: defaultIconLoader }),
79
+ /* @__PURE__ */ jsxRuntime.jsx(HiddenText, { children })
80
+ ] });
50
81
  }
51
- },
52
- ...width && {
53
- ".MuiList-root": {
54
- width,
55
- minWidth: width
82
+ if (isExternalLink) {
83
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
84
+ children,
85
+ /* @__PURE__ */ jsxRuntime.jsx(Alert$1.ScreenReaderOnly, { id: "external-hint", children: `(${intlConfig.formatMessage({
86
+ id: "c4r.button.opensInNewTab"
87
+ })})` })
88
+ ] });
56
89
  }
57
- },
58
- ...height && {
59
- ".MuiMenu-paper": {
60
- overflow: "hidden"
61
- },
62
- ".MuiList-root": {
63
- maxHeight: height
90
+ return children;
91
+ };
92
+ const getIconForPosition = (position) => {
93
+ if (isDefaultLoading) {
94
+ return void 0;
64
95
  }
65
- }
66
- }));
67
- function _Menu({ extended, width, height, MenuListProps, ...otherProps }, ref) {
68
- return /* @__PURE__ */ jsxRuntime.jsx(
69
- StyledMenu,
70
- {
71
- ...otherProps,
72
- ref,
73
- "data-name": "menu",
74
- width,
75
- height,
76
- extended,
77
- MenuListProps: {
78
- ...MenuListProps,
79
- "data-width": width,
80
- "data-height": height,
81
- "data-extended": extended
96
+ if (loading && loadingPosition !== void 0) {
97
+ if (loadingPosition === position) {
98
+ return defaultIconLoader;
82
99
  }
100
+ return void 0;
83
101
  }
84
- );
85
- }
86
- const Menu$1 = React.forwardRef(_Menu);
87
- const StyledMenuList = material.styled(material.MenuList, {
88
- shouldForwardProp: (prop) => !["extended", "width", "height"].includes(prop)
89
- })(({ extended, width, height }) => ({
90
- ...extended && {
91
- ".MuiMenuItem-root": {
92
- minHeight: TablePaginationActions.MENU_ITEM_SIZE_EXTENDED
93
- }
94
- },
95
- "&.MuiList-root": {
96
- ...width && {
97
- width,
98
- minWidth: width
99
- },
100
- ...height && {
101
- maxHeight: height
102
+ if (position === "start") {
103
+ return startIcon;
104
+ } else {
105
+ return endIcon || (isExternalLink && showExternalIcon ? /* @__PURE__ */ jsxRuntime.jsx(iconsMaterial.OpenInNewOutlined, {}) : void 0);
102
106
  }
103
- }
104
- }));
105
- function _MenuList({ extended, width, height, ...otherProps }, ref) {
107
+ };
106
108
  return /* @__PURE__ */ jsxRuntime.jsx(
107
- StyledMenuList,
109
+ material.Button,
108
110
  {
111
+ disabled: loading || disabled,
112
+ startIcon: getIconForPosition("start"),
113
+ endIcon: getIconForPosition("end"),
109
114
  ...otherProps,
115
+ role: otherProps.href ? "link" : "button",
116
+ ...isExternalLink && {
117
+ target: "_blank",
118
+ rel: "noopener noreferrer"
119
+ },
110
120
  ref,
111
- width,
112
- height,
113
- extended,
114
- "data-name": "menu-list",
115
- "data-width": width,
116
- "data-height": height,
117
- "data-extended": extended
118
- }
119
- );
120
- }
121
- const MenuList = React.forwardRef(_MenuList);
122
- const StyledMenuItem$1 = material.styled(MenuItem.MenuItem)(() => ({
123
- marginTop: "0 !important",
124
- marginBottom: "0 !important"
125
- }));
126
- const LinkFilter = material.styled(material.Link)(
127
- ({ disabled, theme }) => ({
128
- display: "flex",
129
- alignItems: "center",
130
- gap: theme.spacing(1),
131
- width: "100%",
132
- textAlign: "initial",
133
- ...disabled && {
134
- pointerEvents: "none",
135
- color: theme.palette.text.disabled
136
- }
137
- })
138
- );
139
- function _MenuItemFilter({
140
- areAllSelected,
141
- areAnySelected,
142
- selectAll,
143
- selectAllDisabled,
144
- "aria-label": ariaLabel,
145
- "data-testid": dataTestId
146
- }, ref) {
147
- const intl = reactIntl.useIntl();
148
- const intlConfig = TablePaginationActions.useImperativeIntl(intl);
149
- return /* @__PURE__ */ jsxRuntime.jsx(
150
- StyledMenuItem$1,
151
- {
152
- ref,
153
- fixed: true,
154
- "data-name": "menu-filter",
155
- "aria-label": ariaLabel,
156
- "data-testid": dataTestId,
157
- children: /* @__PURE__ */ jsxRuntime.jsxs(
158
- LinkFilter,
159
- {
160
- variant: "body2",
161
- color: "textPrimary",
162
- component: "button",
163
- underline: "none",
164
- disabled: !!selectAllDisabled,
165
- onClick: selectAll,
166
- tabIndex: 0,
167
- children: [
168
- /* @__PURE__ */ jsxRuntime.jsx(
169
- material.Checkbox,
170
- {
171
- checked: areAllSelected,
172
- indeterminate: areAnySelected && !areAllSelected,
173
- disabled: selectAllDisabled
174
- }
175
- ),
176
- intlConfig.formatMessage({ id: "c4r.form.selectAll" })
177
- ]
178
- }
179
- )
121
+ "aria-describedby": isExternalLink ? "external-hint" : ariaDescribedby,
122
+ children: /* @__PURE__ */ jsxRuntime.jsx(TablePaginationActions.Typography, { variant: "inherit", color: "inherit", noWrap: true, component: "span", children: renderContent() })
180
123
  }
181
124
  );
182
125
  }
183
- const MenuItemFilter = React.forwardRef(_MenuItemFilter);
184
- const idCounter = {};
185
- function uniqueId(prefix = "$lodash$") {
186
- if (!idCounter[prefix]) {
187
- idCounter[prefix] = 0;
188
- }
189
- const id = ++idCounter[prefix];
190
- if (prefix === "$lodash$") {
191
- return `${id}`;
192
- }
193
- return `${prefix}${id}`;
194
- }
195
- const StyledSelect = material.styled(material.Select)(({ theme }) => ({
196
- "& .MuiInputAdornment-positionStart": {
197
- paddingLeft: theme.spacing(2),
198
- "&.MuiInputAdornment-sizeSmall": {
199
- paddingLeft: theme.spacing(1.5)
200
- }
201
- },
202
- "& .MuiInputBase-inputAdornedStart": {
203
- paddingLeft: "0px !important"
204
- },
205
- "& .MuiSelect-select .MuiMenuItem-root:hover": {
206
- backgroundColor: "transparent"
207
- },
208
- "&.MuiInputBase-root .MuiSelect-select.MuiSelect-multiple": {
209
- paddingRight: theme.spacing(7)
126
+ const Button = React.forwardRef(_Button);
127
+ const ButtonGroup = material.styled(material.ButtonGroup)(({ theme, size }) => ({
128
+ "& .MuiButton-root:last-child": {
129
+ padding: 0,
130
+ minWidth: size === "small" ? theme.spacing(3) : size === "large" ? theme.spacing(6) : theme.spacing(4)
210
131
  }
211
132
  }));
212
- const PlaceholderItem = material.styled(material.MenuItem)(() => ({
213
- display: "none"
214
- }));
215
- function _SelectField({
216
- children,
217
- placeholder,
218
- size = "small",
219
- displayEmpty,
220
- menuProps,
221
- inputProps,
222
- labelId,
223
- label,
224
- labelSecondary,
225
- helperText,
226
- name,
227
- error,
228
- focused,
133
+ function SplitButton({
134
+ options,
229
135
  disabled,
230
- fullWidth,
231
- required,
232
- "aria-label": ariaLabel,
136
+ loading,
137
+ loadingPosition,
138
+ onClick,
139
+ variant,
140
+ size,
141
+ color,
233
142
  ...otherProps
234
- }, ref) {
235
- const isSmall = size === "small";
143
+ }) {
144
+ var _a;
145
+ const [open, setOpen] = React.useState(false);
146
+ const anchorRef = React.useRef(null);
147
+ const [selectedIndex, setSelectedIndex] = React.useState(0);
148
+ const handleClick = () => {
149
+ onClick(options[selectedIndex]);
150
+ };
151
+ const handleMenuItemClick = (_, index) => {
152
+ setSelectedIndex(index);
153
+ setOpen(false);
154
+ };
155
+ const handleToggle = () => {
156
+ setOpen((prevOpen) => !prevOpen);
157
+ };
158
+ const handleClose = (event) => {
159
+ var _a2;
160
+ if ((_a2 = anchorRef.current) == null ? void 0 : _a2.contains(event.target)) {
161
+ return;
162
+ }
163
+ setOpen(false);
164
+ };
165
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
166
+ /* @__PURE__ */ jsxRuntime.jsxs(
167
+ ButtonGroup,
168
+ {
169
+ "data-name": "split-button",
170
+ ref: anchorRef,
171
+ variant,
172
+ size,
173
+ color,
174
+ ...otherProps,
175
+ children: [
176
+ /* @__PURE__ */ jsxRuntime.jsx(
177
+ Button,
178
+ {
179
+ disabled,
180
+ loading,
181
+ loadingPosition,
182
+ onClick: handleClick,
183
+ children: (_a = options[selectedIndex]) == null ? void 0 : _a.label
184
+ }
185
+ ),
186
+ /* @__PURE__ */ jsxRuntime.jsx(Button, { disabled: loading || disabled, onClick: handleToggle, children: open ? /* @__PURE__ */ jsxRuntime.jsx(OpenDiagonallyRight.ArrowUp, {}) : /* @__PURE__ */ jsxRuntime.jsx(ArrowDown.ArrowDown, {}) })
187
+ ]
188
+ }
189
+ ),
190
+ /* @__PURE__ */ jsxRuntime.jsx(
191
+ material.Popper,
192
+ {
193
+ sx: { zIndex: 1 },
194
+ open,
195
+ anchorEl: anchorRef.current,
196
+ role: void 0,
197
+ transition: true,
198
+ disablePortal: true,
199
+ placement: "bottom-end",
200
+ children: ({ TransitionProps, placement }) => /* @__PURE__ */ jsxRuntime.jsx(
201
+ material.Grow,
202
+ {
203
+ ...TransitionProps,
204
+ style: {
205
+ transformOrigin: placement === "bottom" ? "center top" : "center bottom"
206
+ },
207
+ children: /* @__PURE__ */ jsxRuntime.jsx(material.Paper, { elevation: 8, children: /* @__PURE__ */ jsxRuntime.jsx(material.ClickAwayListener, { onClickAway: handleClose, children: /* @__PURE__ */ jsxRuntime.jsx(material.MenuList, { autoFocusItem: true, sx: { paddingY: 1 }, children: options.map((option, index) => /* @__PURE__ */ jsxRuntime.jsx(
208
+ material.MenuItem,
209
+ {
210
+ disabled: option.disabled,
211
+ selected: index === selectedIndex,
212
+ onClick: (event) => handleMenuItemClick(event, index),
213
+ children: option.label
214
+ },
215
+ option.label
216
+ )) }) }) })
217
+ }
218
+ )
219
+ }
220
+ )
221
+ ] });
222
+ }
223
+ const Root$5 = material.styled(material.Box)(({ theme }) => ({
224
+ display: "flex",
225
+ alignItems: "center",
226
+ gap: theme.spacing(0.5)
227
+ }));
228
+ const Indicator = material.styled(TablePaginationActions.Typography)(({ theme }) => ({
229
+ ".Mui-disabled &": {
230
+ color: theme.palette.text.disabled
231
+ }
232
+ }));
233
+ const Icon = material.styled(material.Box)(({ theme }) => ({
234
+ display: "flex",
235
+ svg: {
236
+ width: TablePaginationActions.ICON_SIZE_SMALL,
237
+ height: TablePaginationActions.ICON_SIZE_SMALL,
238
+ fontSize: TablePaginationActions.ICON_SIZE_SMALL,
239
+ path: {
240
+ fill: theme.palette.text.secondary,
241
+ ".Mui-disabled &": {
242
+ fill: theme.palette.text.disabled
243
+ }
244
+ }
245
+ }
246
+ }));
247
+ function LabelWithIndicator({
248
+ label,
249
+ type,
250
+ icon,
251
+ inheritSize
252
+ }) {
253
+ return /* @__PURE__ */ jsxRuntime.jsxs(Root$5, { children: [
254
+ label,
255
+ type && /* @__PURE__ */ jsxRuntime.jsx(
256
+ Indicator,
257
+ {
258
+ component: "span",
259
+ variant: inheritSize ? "inherit" : "caption",
260
+ color: "textSecondary",
261
+ weight: "regular",
262
+ children: type === "required" ? "(required)" : "(optional)"
263
+ }
264
+ ),
265
+ icon && /* @__PURE__ */ jsxRuntime.jsx(Icon, { children: icon })
266
+ ] });
267
+ }
268
+ function _PasswordField({ InputProps, size = "small", ...otherProps }, ref) {
269
+ const intl = reactIntl.useIntl();
270
+ const intlConfig = TablePaginationActions.useImperativeIntl(intl);
271
+ const [showPassword, setShowPassword] = React.useState(false);
272
+ const handleClickShowPassword = () => setShowPassword(!showPassword);
273
+ return /* @__PURE__ */ jsxRuntime.jsx(
274
+ material.TextField,
275
+ {
276
+ ...otherProps,
277
+ ref,
278
+ type: showPassword ? "text" : "password",
279
+ size,
280
+ InputProps: {
281
+ ...InputProps,
282
+ endAdornment: /* @__PURE__ */ jsxRuntime.jsx(material.InputAdornment, { position: "end", children: /* @__PURE__ */ jsxRuntime.jsx(material.IconButton, { size, onClick: handleClickShowPassword, children: /* @__PURE__ */ jsxRuntime.jsx(
283
+ material.Tooltip,
284
+ {
285
+ title: intlConfig.formatMessage({
286
+ id: `c4r.form.${showPassword ? "hidePassword" : "showPassword"}`
287
+ }),
288
+ children: showPassword ? /* @__PURE__ */ jsxRuntime.jsx(iconsMaterial.VisibilityOffOutlined, {}) : /* @__PURE__ */ jsxRuntime.jsx(iconsMaterial.VisibilityOutlined, {})
289
+ }
290
+ ) }) })
291
+ }
292
+ }
293
+ );
294
+ }
295
+ const PasswordField = React.forwardRef(_PasswordField);
296
+ const idCounter = {};
297
+ function uniqueId(prefix = "$lodash$") {
298
+ if (!idCounter[prefix]) {
299
+ idCounter[prefix] = 0;
300
+ }
301
+ const id = ++idCounter[prefix];
302
+ if (prefix === "$lodash$") {
303
+ return `${id}`;
304
+ }
305
+ return `${prefix}${id}`;
306
+ }
307
+ const StyledSelect = material.styled(material.Select)(({ theme }) => ({
308
+ "& .MuiInputAdornment-positionStart": {
309
+ paddingLeft: theme.spacing(2),
310
+ "&.MuiInputAdornment-sizeSmall": {
311
+ paddingLeft: theme.spacing(1.5)
312
+ }
313
+ },
314
+ "& .MuiInputBase-inputAdornedStart": {
315
+ paddingLeft: "0px !important"
316
+ },
317
+ "& .MuiSelect-select .MuiMenuItem-root:hover": {
318
+ backgroundColor: "transparent"
319
+ },
320
+ "&.MuiInputBase-root .MuiSelect-select.MuiSelect-multiple": {
321
+ paddingRight: theme.spacing(7)
322
+ }
323
+ }));
324
+ const PlaceholderItem = material.styled(material.MenuItem)(() => ({
325
+ display: "none"
326
+ }));
327
+ function _SelectField({
328
+ children,
329
+ placeholder,
330
+ size = "small",
331
+ displayEmpty,
332
+ menuProps,
333
+ inputProps,
334
+ labelId,
335
+ label,
336
+ labelSecondary,
337
+ helperText,
338
+ name,
339
+ error,
340
+ focused,
341
+ disabled,
342
+ fullWidth,
343
+ required,
344
+ "aria-label": ariaLabel,
345
+ ...otherProps
346
+ }, ref) {
347
+ const isSmall = size === "small";
236
348
  const [defaultId] = React.useState(() => uniqueId("select-label-"));
237
349
  const ariaLabelledBy = label ? labelId ?? defaultId : void 0;
238
350
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -299,51 +411,293 @@ function _SelectField({
299
411
  );
300
412
  }
301
413
  const SelectField = React.forwardRef(_SelectField);
302
- function useMultipleSelectField({
303
- selectedOptions,
304
- options,
305
- onChange
306
- }) {
307
- const [currentOptions, setCurrentOptions] = React.useState(selectedOptions ?? []);
308
- const areAllSelected = options.length === currentOptions.length;
309
- const areAnySelected = currentOptions.length > 0;
310
- React.useEffect(() => {
311
- if (currentOptions !== selectedOptions) {
312
- setCurrentOptions(currentOptions);
313
- }
314
- }, [selectedOptions]);
315
- const handleChange = (event) => {
316
- const {
317
- target: { value }
318
- } = event;
319
- const options2 = typeof value === "string" ? value.split(",") : value.filter((v) => v !== void 0);
320
- setCurrentOptions(options2);
321
- onChange(options2);
322
- };
323
- const selectAll = () => {
324
- const optionsValues = options == null ? void 0 : options.filter(({ disabled }) => !disabled).map(({ value }) => value);
325
- if (optionsValues) {
326
- const allSelected = optionsValues.every(
327
- (value) => currentOptions.includes(value)
328
- );
329
- if (allSelected) {
330
- setCurrentOptions([]);
331
- onChange([]);
332
- } else {
333
- setCurrentOptions(optionsValues);
334
- onChange(optionsValues);
414
+ const StyledToggleButtonGroup = material.styled(material.ToggleButtonGroup, {
415
+ shouldForwardProp: (prop) => prop !== "variant" && prop !== "backgroundColor"
416
+ })(({ variant, backgroundColor, theme }) => ({
417
+ // Variants
418
+ ...variant === "contained" && {
419
+ boxShadow: "none"
420
+ },
421
+ ...variant === "unbounded" && {
422
+ boxShadow: "none",
423
+ borderRadius: theme.spacing(0.5),
424
+ "& .MuiDivider-root": {
425
+ height: theme.spacing(4),
426
+ "&.MuiToggleButtonGroup-groupedHorizontal": {
427
+ height: theme.spacing(4)
428
+ },
429
+ "&.MuiToggleButtonGroup-groupedVertical": {
430
+ height: "auto",
431
+ width: theme.spacing(4),
432
+ margin: `${theme.spacing(0.5, 0, 1)} !important`,
433
+ borderRadius: "0 !important"
335
434
  }
336
- }
337
- };
338
- const unselectAll = () => {
339
- setCurrentOptions([]);
340
- onChange([]);
341
- };
342
- return {
343
- areAllSelected,
344
- areAnySelected,
345
- currentOptions,
346
- handleChange,
435
+ },
436
+ "& .MuiToggleButton-sizeSmall": {
437
+ margin: 0,
438
+ "&.MuiToggleButtonGroup-grouped:not(.MuiDivider-root)": {
439
+ margin: 0
440
+ },
441
+ "& + .MuiDivider-root.MuiToggleButtonGroup-groupedHorizontal": {
442
+ height: theme.spacing(3)
443
+ },
444
+ "& + .MuiDivider-root.MuiToggleButtonGroup-groupedVertical": {
445
+ height: "auto",
446
+ width: theme.spacing(3)
447
+ }
448
+ },
449
+ ".MuiToggleButtonGroup-grouped:not(.MuiDivider-root)": {
450
+ margin: 0,
451
+ "&:first-of-type": {
452
+ marginLeft: 0
453
+ },
454
+ "&:not(:last-of-type)": {
455
+ marginRight: theme.spacing(0.5)
456
+ }
457
+ },
458
+ "&.MuiToggleButtonGroup-horizontal:not(.MuiDivider-root)": {
459
+ ".MuiToggleButtonGroup-grouped": {
460
+ margin: theme.spacing(0, 0.5)
461
+ }
462
+ },
463
+ "&.MuiToggleButtonGroup-vertical:not(.MuiDivider-root)": {
464
+ ".MuiToggleButtonGroup-grouped": {
465
+ margin: theme.spacing(0, 0, 0.5),
466
+ "&:not(:last-of-type)": {
467
+ marginRight: 0
468
+ },
469
+ "&:last-of-type": {
470
+ marginBottom: 0
471
+ }
472
+ }
473
+ }
474
+ },
475
+ // Colors
476
+ ...backgroundColor === "primary" && {
477
+ backgroundColor: theme.palette.background.paper
478
+ },
479
+ ...backgroundColor === "secondary" && {
480
+ backgroundColor: theme.palette.background.default
481
+ },
482
+ ...backgroundColor === "transparent" && {
483
+ backgroundColor: "transparent"
484
+ }
485
+ }));
486
+ function ToggleButtonGroup({
487
+ children,
488
+ variant = "floating",
489
+ backgroundColor,
490
+ ...rest
491
+ }) {
492
+ const isUnbounded = variant === "unbounded";
493
+ const defaultColor = isUnbounded ? "transparent" : "primary";
494
+ return /* @__PURE__ */ jsxRuntime.jsx(
495
+ StyledToggleButtonGroup,
496
+ {
497
+ ...rest,
498
+ variant,
499
+ backgroundColor: backgroundColor ?? defaultColor,
500
+ children
501
+ }
502
+ );
503
+ }
504
+ const StyledMenu = material.styled(material.Menu, {
505
+ shouldForwardProp: (prop) => !["extended", "width", "height"].includes(prop)
506
+ })(({ extended, width, height }) => ({
507
+ ...extended && {
508
+ ".MuiMenuItem-root": {
509
+ minHeight: TablePaginationActions.MENU_ITEM_SIZE_EXTENDED
510
+ }
511
+ },
512
+ ...width && {
513
+ ".MuiList-root": {
514
+ width,
515
+ minWidth: width
516
+ }
517
+ },
518
+ ...height && {
519
+ ".MuiMenu-paper": {
520
+ overflow: "hidden"
521
+ },
522
+ ".MuiList-root": {
523
+ maxHeight: height
524
+ }
525
+ }
526
+ }));
527
+ function _Menu({ extended, width, height, MenuListProps, ...otherProps }, ref) {
528
+ return /* @__PURE__ */ jsxRuntime.jsx(
529
+ StyledMenu,
530
+ {
531
+ ...otherProps,
532
+ ref,
533
+ "data-name": "menu",
534
+ width,
535
+ height,
536
+ extended,
537
+ MenuListProps: {
538
+ ...MenuListProps,
539
+ "data-width": width,
540
+ "data-height": height,
541
+ "data-extended": extended
542
+ }
543
+ }
544
+ );
545
+ }
546
+ const Menu$1 = React.forwardRef(_Menu);
547
+ const StyledMenuList = material.styled(material.MenuList, {
548
+ shouldForwardProp: (prop) => !["extended", "width", "height"].includes(prop)
549
+ })(({ extended, width, height }) => ({
550
+ ...extended && {
551
+ ".MuiMenuItem-root": {
552
+ minHeight: TablePaginationActions.MENU_ITEM_SIZE_EXTENDED
553
+ }
554
+ },
555
+ "&.MuiList-root": {
556
+ ...width && {
557
+ width,
558
+ minWidth: width
559
+ },
560
+ ...height && {
561
+ maxHeight: height
562
+ }
563
+ }
564
+ }));
565
+ function _MenuList({ extended, width, height, ...otherProps }, ref) {
566
+ return /* @__PURE__ */ jsxRuntime.jsx(
567
+ StyledMenuList,
568
+ {
569
+ ...otherProps,
570
+ ref,
571
+ width,
572
+ height,
573
+ extended,
574
+ "data-name": "menu-list",
575
+ "data-width": width,
576
+ "data-height": height,
577
+ "data-extended": extended
578
+ }
579
+ );
580
+ }
581
+ const MenuList = React.forwardRef(_MenuList);
582
+ const StyledMenuItem$1 = material.styled(MenuItem.MenuItem)(() => ({
583
+ marginTop: "0 !important",
584
+ marginBottom: "0 !important"
585
+ }));
586
+ const LinkFilter = material.styled(material.Link)(
587
+ ({ disabled, theme }) => ({
588
+ display: "flex",
589
+ alignItems: "center",
590
+ gap: theme.spacing(1),
591
+ width: "100%",
592
+ textAlign: "initial",
593
+ ...disabled && {
594
+ pointerEvents: "none",
595
+ color: theme.palette.text.disabled
596
+ }
597
+ })
598
+ );
599
+ function _MenuItemFilter({
600
+ areAllSelected,
601
+ areAnySelected,
602
+ selectAll,
603
+ selectAllDisabled,
604
+ "aria-label": ariaLabel,
605
+ "data-testid": dataTestId
606
+ }, ref) {
607
+ const intl = reactIntl.useIntl();
608
+ const intlConfig = TablePaginationActions.useImperativeIntl(intl);
609
+ return /* @__PURE__ */ jsxRuntime.jsx(
610
+ StyledMenuItem$1,
611
+ {
612
+ ref,
613
+ fixed: true,
614
+ "data-name": "menu-filter",
615
+ "aria-label": ariaLabel,
616
+ "data-testid": dataTestId,
617
+ children: /* @__PURE__ */ jsxRuntime.jsxs(
618
+ LinkFilter,
619
+ {
620
+ variant: "body2",
621
+ color: "textPrimary",
622
+ component: "button",
623
+ underline: "none",
624
+ disabled: !!selectAllDisabled,
625
+ onClick: selectAll,
626
+ tabIndex: 0,
627
+ children: [
628
+ /* @__PURE__ */ jsxRuntime.jsx(
629
+ material.Checkbox,
630
+ {
631
+ checked: areAllSelected,
632
+ indeterminate: areAnySelected && !areAllSelected,
633
+ disabled: selectAllDisabled
634
+ }
635
+ ),
636
+ intlConfig.formatMessage({ id: "c4r.form.selectAll" })
637
+ ]
638
+ }
639
+ )
640
+ }
641
+ );
642
+ }
643
+ const MenuItemFilter = React.forwardRef(_MenuItemFilter);
644
+ function useMultipleSelectField({
645
+ selectedOptions,
646
+ options,
647
+ onChange
648
+ }) {
649
+ const [currentOptions, setCurrentOptions] = React.useState(selectedOptions ?? []);
650
+ const isInternalUpdate = React.useRef(false);
651
+ React.useEffect(() => {
652
+ if (!isInternalUpdate.current) {
653
+ setCurrentOptions(selectedOptions ?? []);
654
+ }
655
+ isInternalUpdate.current = false;
656
+ }, [selectedOptions]);
657
+ const enabledOptions = React.useMemo(
658
+ () => options.filter(({ disabled }) => !disabled),
659
+ [options]
660
+ );
661
+ const enabledOptionValues = React.useMemo(
662
+ () => enabledOptions.map(({ value }) => value),
663
+ [enabledOptions]
664
+ );
665
+ const areAllSelected = enabledOptionValues.length > 0 && enabledOptionValues.every((value) => currentOptions.includes(value));
666
+ const areAnySelected = currentOptions.length > 0;
667
+ const handleChange = (event) => {
668
+ if (isInternalUpdate.current) {
669
+ return;
670
+ }
671
+ const {
672
+ target: { value }
673
+ } = event;
674
+ const newOptions = typeof value === "string" ? value.split(",") : value.filter((v) => v !== void 0);
675
+ setCurrentOptions(newOptions);
676
+ onChange(newOptions);
677
+ };
678
+ const selectAll = () => {
679
+ const optionsValues = options == null ? void 0 : options.filter(({ disabled }) => !disabled).map(({ value }) => value);
680
+ if (optionsValues) {
681
+ const allSelected = optionsValues.every(
682
+ (value) => currentOptions.includes(value)
683
+ );
684
+ const newValue = allSelected ? [] : optionsValues;
685
+ isInternalUpdate.current = true;
686
+ setCurrentOptions(newValue);
687
+ onChange(newValue);
688
+ }
689
+ };
690
+ const unselectAll = () => {
691
+ const newValue = [];
692
+ isInternalUpdate.current = true;
693
+ setCurrentOptions(newValue);
694
+ onChange(newValue);
695
+ };
696
+ return {
697
+ areAllSelected,
698
+ areAnySelected,
699
+ currentOptions,
700
+ handleChange,
347
701
  selectAll,
348
702
  unselectAll
349
703
  };
@@ -1517,19 +1871,109 @@ function useAutocomplete({
1517
1871
  getOptionLabel: internalGetOptionLabel
1518
1872
  };
1519
1873
  }
1520
- const AccordionContainer = material.styled("div", {
1521
- shouldForwardProp: (prop) => prop !== "variant"
1522
- })(({ variant, theme }) => ({
1523
- width: "100%",
1524
- borderRadius: theme.spacing(0.5),
1525
- ...variant === "outlined" && {
1526
- backgroundColor: theme.palette.background.paper,
1527
- boxShadow: `inset 0 0 0 1px ${theme.palette.divider}`
1528
- }
1529
- }));
1530
- function AccordionGroup({
1531
- variant = "standard",
1532
- items,
1874
+ const _CopiableComponent = ({
1875
+ children,
1876
+ disabled,
1877
+ value,
1878
+ onCopied,
1879
+ copyText = "c4r.button.copy",
1880
+ copiedText = "c4r.notifications.copiedToClipboard",
1881
+ button,
1882
+ buttonLabel,
1883
+ buttonProps,
1884
+ ariaLabel,
1885
+ dataTestId,
1886
+ tooltipPlacement = "top",
1887
+ ...props
1888
+ }, ref) => {
1889
+ const intl = reactIntl.useIntl();
1890
+ const intlConfig = TablePaginationActions.useImperativeIntl(intl);
1891
+ const [open, setOpen] = React.useState(false);
1892
+ const { copy } = useCopyValue(copyText, copiedText);
1893
+ const handleClick = (e) => {
1894
+ e.preventDefault();
1895
+ copy(value).then(() => {
1896
+ onCopied == null ? void 0 : onCopied();
1897
+ setOpen(true);
1898
+ }).catch(console.error);
1899
+ };
1900
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1901
+ /* @__PURE__ */ jsxRuntime.jsx(
1902
+ material.Tooltip,
1903
+ {
1904
+ title: intlConfig.formatMessage({ id: copyText }),
1905
+ leaveDelay: 0,
1906
+ placement: tooltipPlacement,
1907
+ children: /* @__PURE__ */ jsxRuntime.jsxs(
1908
+ material.Box,
1909
+ {
1910
+ ...props,
1911
+ sx: { cursor: disabled ? void 0 : "pointer" },
1912
+ onClick: handleClick,
1913
+ "data-name": "copiable",
1914
+ ref,
1915
+ children: [
1916
+ children,
1917
+ button && /* @__PURE__ */ jsxRuntime.jsx(
1918
+ Alert$1.IconButton,
1919
+ {
1920
+ ...buttonProps,
1921
+ disabled,
1922
+ icon: /* @__PURE__ */ jsxRuntime.jsx(iconsMaterial.ContentCopyOutlined, {}),
1923
+ "data-testid": dataTestId,
1924
+ "aria-label": ariaLabel || buttonLabel,
1925
+ sx: {
1926
+ display: "flex"
1927
+ }
1928
+ }
1929
+ )
1930
+ ]
1931
+ }
1932
+ )
1933
+ }
1934
+ ),
1935
+ /* @__PURE__ */ jsxRuntime.jsx(
1936
+ Snackbar,
1937
+ {
1938
+ open,
1939
+ autoWidth: true,
1940
+ closeable: false,
1941
+ autoHideDuration: 4e3,
1942
+ onClose: () => setOpen(false),
1943
+ children: intlConfig.formatMessage({ id: copiedText })
1944
+ }
1945
+ )
1946
+ ] });
1947
+ };
1948
+ const CopiableComponent = React.forwardRef(_CopiableComponent);
1949
+ async function copyString(value) {
1950
+ return await navigator.clipboard.writeText(value);
1951
+ }
1952
+ const useCopyValue = (msg = "c4r.button.copy", copiedMsg = "c4r.notifications.copiedToClipboard") => {
1953
+ const [message, setMessage] = React.useState(msg);
1954
+ const copy = async (text) => {
1955
+ await copyString(text);
1956
+ setMessage(copiedMsg);
1957
+ setTimeout(() => setMessage(msg), 1e3);
1958
+ };
1959
+ return {
1960
+ message,
1961
+ copy
1962
+ };
1963
+ };
1964
+ const AccordionContainer = material.styled("div", {
1965
+ shouldForwardProp: (prop) => prop !== "variant"
1966
+ })(({ variant, theme }) => ({
1967
+ width: "100%",
1968
+ borderRadius: theme.spacing(0.5),
1969
+ ...variant === "outlined" && {
1970
+ backgroundColor: theme.palette.background.paper,
1971
+ boxShadow: `inset 0 0 0 1px ${theme.palette.divider}`
1972
+ }
1973
+ }));
1974
+ function AccordionGroup({
1975
+ variant = "standard",
1976
+ items,
1533
1977
  ...otherProps
1534
1978
  }) {
1535
1979
  return /* @__PURE__ */ jsxRuntime.jsx(AccordionContainer, { ...otherProps, variant, children: items.map((item, index) => /* @__PURE__ */ jsxRuntime.jsxs(
@@ -1616,7 +2060,7 @@ const Content$4 = material.styled(material.Box, {
1616
2060
  }
1617
2061
  }
1618
2062
  }));
1619
- const Alert = material.styled(Link.Alert, {
2063
+ const Alert = material.styled(Alert$1.Alert, {
1620
2064
  shouldForwardProp: (prop) => !["hasActions", "closeable"].includes(prop)
1621
2065
  })(({ hasActions, closeable, icon, theme }) => ({
1622
2066
  position: "relative",
@@ -1730,7 +2174,7 @@ function Snackbar({
1730
2174
  }
1731
2175
  ),
1732
2176
  closeable && /* @__PURE__ */ jsxRuntime.jsx(CloseButtonWrapper, { children: /* @__PURE__ */ jsxRuntime.jsx(
1733
- Link.IconButton,
2177
+ Alert$1.IconButton,
1734
2178
  {
1735
2179
  color: "default",
1736
2180
  onClick: (e) => onClose(e, "timeout"),
@@ -1812,652 +2256,129 @@ function colorProps(color, variant, theme, disabled) {
1812
2256
  return {
1813
2257
  color: theme.palette.success.main,
1814
2258
  backgroundColor: theme.palette.success.relatedLight,
1815
- borderColor: "transparent"
1816
- };
1817
- case "warning":
1818
- if (variant === "outlined") {
1819
- return {
1820
- color: theme.palette.warning.main,
1821
- backgroundColor: theme.palette.warning.relatedLight,
1822
- borderColor: theme.palette.warning.main
1823
- };
1824
- }
1825
- return {
1826
- color: theme.palette.text.primary,
1827
- backgroundColor: theme.palette.warning.main,
1828
- borderColor: "transparent"
1829
- };
1830
- case "error":
1831
- if (variant === "outlined") {
1832
- return {
1833
- color: theme.palette.error.main,
1834
- backgroundColor: theme.palette.error.relatedLight,
1835
- borderColor: theme.palette.error.main
1836
- };
1837
- }
1838
- return {
1839
- color: theme.palette.primary.contrastText,
1840
- backgroundColor: theme.palette.error.main,
1841
- borderColor: "transparent"
1842
- };
1843
- }
1844
- }
1845
- const TagRoot = material.styled("div", {
1846
- shouldForwardProp: (prop) => !["color", "variant", "disabled"].includes(prop)
1847
- })(({
1848
- color,
1849
- variant,
1850
- disabled,
1851
- theme
1852
- }) => {
1853
- return {
1854
- display: "inline-flex",
1855
- flexDirection: "row",
1856
- flexWrap: "nowrap",
1857
- alignItems: "center",
1858
- padding: theme.spacing(0, 0.5),
1859
- borderRadius: theme.spacing(0.25),
1860
- gap: theme.spacing(0.5),
1861
- height: theme.spacing(2),
1862
- borderWidth: "1px",
1863
- borderStyle: "solid",
1864
- ...colorProps(color ?? "primary", variant ?? "filled", theme, disabled),
1865
- '.Mui-selected &, [aria-selected="true"] &': {
1866
- borderColor: theme.palette.primary.main,
1867
- backgroundColor: theme.palette.primary.background,
1868
- ".MuiTypography-root": {
1869
- color: theme.palette.primary.main
1870
- }
1871
- }
1872
- };
1873
- });
1874
- const TagIcon = material.styled("div")(({ theme }) => ({
1875
- display: "flex",
1876
- justifyContent: "center",
1877
- alignItems: "center",
1878
- "& svg": {
1879
- width: theme.spacing(TablePaginationActions.ICON_SIZE_SMALL),
1880
- height: theme.spacing(TablePaginationActions.ICON_SIZE_SMALL),
1881
- "& g": {
1882
- fill: "currentColor"
1883
- }
1884
- }
1885
- }));
1886
- const TagLabel = material.styled("div", {
1887
- shouldForwardProp: (prop) => !["type"].includes(prop)
1888
- })(({ type, theme }) => ({
1889
- display: "flex",
1890
- alignItems: "center",
1891
- paddingTop: type === "code" ? theme.spacing(0.25) : void 0
1892
- }));
1893
- function _Tag({
1894
- label,
1895
- color = "primary",
1896
- variant = "filled",
1897
- icon,
1898
- type = "default",
1899
- typographyProps,
1900
- noWrap = true,
1901
- disabled,
1902
- ...otherProps
1903
- }, ref) {
1904
- const typeCode = type === "code";
1905
- return /* @__PURE__ */ jsxRuntime.jsxs(
1906
- TagRoot,
1907
- {
1908
- ref,
1909
- className: "CartoTag-root",
1910
- color,
1911
- variant,
1912
- disabled,
1913
- "aria-disabled": disabled,
1914
- "data-color": color,
1915
- "data-variant": variant,
1916
- "data-type": type,
1917
- "data-name": "tag",
1918
- ...otherProps,
1919
- children: [
1920
- icon && /* @__PURE__ */ jsxRuntime.jsx(TagIcon, { children: icon }),
1921
- /* @__PURE__ */ jsxRuntime.jsx(TagLabel, { type, children: /* @__PURE__ */ jsxRuntime.jsx(
1922
- TablePaginationActions.Typography,
1923
- {
1924
- component: "span",
1925
- color: "inherit",
1926
- variant: typeCode ? "code3" : "caption",
1927
- weight: typeCode ? "strong" : "medium",
1928
- noWrap,
1929
- ...typographyProps,
1930
- children: label
1931
- }
1932
- ) })
1933
- ]
1934
- }
1935
- );
1936
- }
1937
- const Tag = React.forwardRef(_Tag);
1938
- const _CopiableComponent = ({
1939
- children,
1940
- disabled,
1941
- value,
1942
- onCopied,
1943
- copyText,
1944
- copiedText,
1945
- button,
1946
- buttonLabel,
1947
- buttonProps,
1948
- ariaLabel,
1949
- dataTestId,
1950
- tooltipPlacement = "top",
1951
- ...props
1952
- }, ref) => {
1953
- const [open, setOpen] = React.useState(false);
1954
- const intl = reactIntl.useIntl();
1955
- const intlConfig = TablePaginationActions.useImperativeIntl(intl);
1956
- const copyTooltipText = copyText || intlConfig.formatMessage({ id: "c4r.button.copy" });
1957
- const copySuccessMessage = copiedText || intlConfig.formatMessage({
1958
- id: "c4r.notifications.copiedToClipboard"
1959
- });
1960
- const { copy } = useCopyValue(copyTooltipText, copySuccessMessage);
1961
- const handleClick = (e) => {
1962
- e.preventDefault();
1963
- copy(value).then(() => {
1964
- onCopied == null ? void 0 : onCopied();
1965
- setOpen(true);
1966
- }).catch(console.error);
1967
- };
1968
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1969
- /* @__PURE__ */ jsxRuntime.jsx(
1970
- material.Tooltip,
1971
- {
1972
- title: copyTooltipText,
1973
- leaveDelay: 0,
1974
- placement: tooltipPlacement,
1975
- children: /* @__PURE__ */ jsxRuntime.jsxs(
1976
- material.Box,
1977
- {
1978
- ...props,
1979
- sx: { cursor: disabled ? void 0 : "pointer" },
1980
- onClick: handleClick,
1981
- "data-name": "copiable",
1982
- ref,
1983
- children: [
1984
- children,
1985
- button && /* @__PURE__ */ jsxRuntime.jsx(
1986
- Link.IconButton,
1987
- {
1988
- ...buttonProps,
1989
- disabled,
1990
- icon: /* @__PURE__ */ jsxRuntime.jsx(iconsMaterial.ContentCopyOutlined, {}),
1991
- "data-testid": dataTestId,
1992
- "aria-label": ariaLabel || buttonLabel || copyTooltipText,
1993
- sx: {
1994
- display: "flex"
1995
- }
1996
- }
1997
- )
1998
- ]
1999
- }
2000
- )
2001
- }
2002
- ),
2003
- /* @__PURE__ */ jsxRuntime.jsx(
2004
- Snackbar,
2005
- {
2006
- open,
2007
- autoWidth: true,
2008
- closeable: false,
2009
- autoHideDuration: 4e3,
2010
- onClose: () => setOpen(false),
2011
- children: copySuccessMessage
2012
- }
2013
- )
2014
- ] });
2015
- };
2016
- const CopiableComponent = React.forwardRef(_CopiableComponent);
2017
- const StyledTextField = material.styled(material.TextField)(() => ({
2018
- "& input": {
2019
- textOverflow: "unset"
2020
- // This is needed to avoid scrolling issues in the input
2021
- }
2022
- }));
2023
- const AdornmentWrapper = material.styled(material.Box, {
2024
- shouldForwardProp: (prop) => !["size", "variant"].includes(prop)
2025
- })(({ variant, size, theme }) => ({
2026
- width: theme.spacing(3),
2027
- ...variant === "standard" ? {
2028
- marginLeft: theme.spacing(-0.25)
2029
- } : {
2030
- marginRight: theme.spacing(-1)
2031
- },
2032
- ...size === "medium" && {
2033
- width: theme.spacing(4),
2034
- ...variant === "standard" ? {
2035
- marginLeft: theme.spacing(-0.5)
2036
- } : {
2037
- marginLeft: theme.spacing(1)
2038
- }
2039
- }
2040
- }));
2041
- function _CopiableInputText({
2042
- value,
2043
- variant,
2044
- InputProps,
2045
- extraEndAdornment,
2046
- onCopied,
2047
- password,
2048
- size = "small",
2049
- ...rest
2050
- }, ref) {
2051
- const intl = reactIntl.useIntl();
2052
- const intlConfig = TablePaginationActions.useImperativeIntl(intl);
2053
- const [showText, setShowText] = React.useState(false);
2054
- const inputType = !password ? "text" : showText ? "text" : "password";
2055
- const showTextLabel = intlConfig.formatMessage({
2056
- id: showText ? "c4r.button.hide" : "c4r.button.show"
2057
- });
2058
- const passwordAdornment = /* @__PURE__ */ jsxRuntime.jsx(material.InputAdornment, { position: "end", children: /* @__PURE__ */ jsxRuntime.jsx(
2059
- Link.IconButton,
2060
- {
2061
- edge: variant !== "standard" ? "end" : void 0,
2062
- onClick: () => setShowText(!showText),
2063
- size,
2064
- icon: showText ? /* @__PURE__ */ jsxRuntime.jsx(iconsMaterial.VisibilityOutlined, {}) : /* @__PURE__ */ jsxRuntime.jsx(iconsMaterial.VisibilityOffOutlined, {}),
2065
- tooltip: showTextLabel,
2066
- "aria-label": showTextLabel
2067
- }
2068
- ) });
2069
- return /* @__PURE__ */ jsxRuntime.jsx(
2070
- StyledTextField,
2071
- {
2072
- ...rest,
2073
- size,
2074
- value,
2075
- variant,
2076
- InputProps: {
2077
- readOnly: true,
2078
- endAdornment: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2079
- password ? passwordAdornment : extraEndAdornment,
2080
- /* @__PURE__ */ jsxRuntime.jsx(material.InputAdornment, { position: "end", children: /* @__PURE__ */ jsxRuntime.jsx(AdornmentWrapper, { size, variant, children: /* @__PURE__ */ jsxRuntime.jsx(
2081
- CopiableComponent,
2082
- {
2083
- value,
2084
- onCopied,
2085
- button: true,
2086
- buttonProps: {
2087
- size
2088
- }
2089
- }
2090
- ) }) })
2091
- ] }),
2092
- ...variant === "filled" && {
2093
- disableUnderline: true
2094
- },
2095
- ...InputProps
2096
- },
2097
- type: inputType,
2098
- "data-name": "copiable-input-text",
2099
- ref
2100
- }
2101
- );
2102
- }
2103
- const CopiableInputText = React.forwardRef(_CopiableInputText);
2104
- async function copyString(value) {
2105
- return await navigator.clipboard.writeText(value);
2106
- }
2107
- const useCopyValue = (msg = "c4r.button.copy", copiedMsg = "c4r.notifications.copiedToClipboard") => {
2108
- const [message, setMessage] = React.useState(msg);
2109
- const copy = async (text) => {
2110
- await copyString(text);
2111
- setMessage(copiedMsg);
2112
- setTimeout(() => setMessage(msg), 1e3);
2113
- };
2114
- return {
2115
- message,
2116
- copy
2117
- };
2118
- };
2119
- const IndicatorIcon = material.styled(material.Box)({
2120
- position: "absolute",
2121
- top: 0,
2122
- left: 0,
2123
- right: 0,
2124
- bottom: 0,
2125
- display: "flex",
2126
- alignItems: "center",
2127
- justifyContent: "center"
2128
- });
2129
- const HiddenText = material.styled(material.Box)({
2130
- visibility: "hidden",
2131
- pointerEvents: "none"
2132
- });
2133
- function _Button({
2134
- children,
2135
- loading,
2136
- disabled,
2137
- startIcon,
2138
- endIcon,
2139
- loadingPosition,
2140
- external,
2141
- showExternalIcon = true,
2142
- "aria-describedby": ariaDescribedby,
2143
- ...otherProps
2144
- }, ref) {
2145
- const intl = reactIntl.useIntl();
2146
- const intlConfig = TablePaginationActions.useImperativeIntl(intl);
2147
- const defaultIconLoader = /* @__PURE__ */ jsxRuntime.jsx(material.CircularProgress, { size: 18, color: "inherit" });
2148
- const isDefaultLoading = loading && loadingPosition === void 0;
2149
- const isExternalLink = otherProps.href && external;
2150
- const renderContent = () => {
2151
- if (isDefaultLoading) {
2152
- return /* @__PURE__ */ jsxRuntime.jsxs(material.Box, { sx: { position: "relative" }, children: [
2153
- /* @__PURE__ */ jsxRuntime.jsx(IndicatorIcon, { children: defaultIconLoader }),
2154
- /* @__PURE__ */ jsxRuntime.jsx(HiddenText, { children })
2155
- ] });
2156
- }
2157
- if (isExternalLink) {
2158
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2159
- children,
2160
- /* @__PURE__ */ jsxRuntime.jsx(Link.ScreenReaderOnly, { id: "external-hint", children: `(${intlConfig.formatMessage({
2161
- id: "c4r.button.opensInNewTab"
2162
- })})` })
2163
- ] });
2164
- }
2165
- return children;
2166
- };
2167
- const getIconForPosition = (position) => {
2168
- if (isDefaultLoading) {
2169
- return void 0;
2170
- }
2171
- if (loading && loadingPosition !== void 0) {
2172
- if (loadingPosition === position) {
2173
- return defaultIconLoader;
2174
- }
2175
- return void 0;
2176
- }
2177
- if (position === "start") {
2178
- return startIcon;
2179
- } else {
2180
- return endIcon || (isExternalLink && showExternalIcon ? /* @__PURE__ */ jsxRuntime.jsx(iconsMaterial.OpenInNewOutlined, {}) : void 0);
2181
- }
2182
- };
2183
- return /* @__PURE__ */ jsxRuntime.jsx(
2184
- material.Button,
2185
- {
2186
- disabled: loading || disabled,
2187
- startIcon: getIconForPosition("start"),
2188
- endIcon: getIconForPosition("end"),
2189
- ...otherProps,
2190
- role: otherProps.href ? "link" : "button",
2191
- ...isExternalLink && {
2192
- target: "_blank",
2193
- rel: "noopener noreferrer"
2194
- },
2195
- ref,
2196
- "aria-describedby": isExternalLink ? "external-hint" : ariaDescribedby,
2197
- children: /* @__PURE__ */ jsxRuntime.jsx(TablePaginationActions.Typography, { variant: "inherit", color: "inherit", noWrap: true, component: "span", children: renderContent() })
2198
- }
2199
- );
2200
- }
2201
- const Button = React.forwardRef(_Button);
2202
- const ButtonGroup = material.styled(material.ButtonGroup)(({ theme, size }) => ({
2203
- "& .MuiButton-root:last-child": {
2204
- padding: 0,
2205
- minWidth: size === "small" ? theme.spacing(3) : size === "large" ? theme.spacing(6) : theme.spacing(4)
2206
- }
2207
- }));
2208
- function SplitButton({
2209
- options,
2210
- disabled,
2211
- loading,
2212
- loadingPosition,
2213
- onClick,
2214
- variant,
2215
- size,
2216
- color,
2217
- ...otherProps
2218
- }) {
2219
- var _a;
2220
- const [open, setOpen] = React.useState(false);
2221
- const anchorRef = React.useRef(null);
2222
- const [selectedIndex, setSelectedIndex] = React.useState(0);
2223
- const handleClick = () => {
2224
- onClick(options[selectedIndex]);
2225
- };
2226
- const handleMenuItemClick = (_, index) => {
2227
- setSelectedIndex(index);
2228
- setOpen(false);
2229
- };
2230
- const handleToggle = () => {
2231
- setOpen((prevOpen) => !prevOpen);
2232
- };
2233
- const handleClose = (event) => {
2234
- var _a2;
2235
- if ((_a2 = anchorRef.current) == null ? void 0 : _a2.contains(event.target)) {
2236
- return;
2237
- }
2238
- setOpen(false);
2239
- };
2240
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2241
- /* @__PURE__ */ jsxRuntime.jsxs(
2242
- ButtonGroup,
2243
- {
2244
- "data-name": "split-button",
2245
- ref: anchorRef,
2246
- variant,
2247
- size,
2248
- color,
2249
- ...otherProps,
2250
- children: [
2251
- /* @__PURE__ */ jsxRuntime.jsx(
2252
- Button,
2253
- {
2254
- disabled,
2255
- loading,
2256
- loadingPosition,
2257
- onClick: handleClick,
2258
- children: (_a = options[selectedIndex]) == null ? void 0 : _a.label
2259
- }
2260
- ),
2261
- /* @__PURE__ */ jsxRuntime.jsx(Button, { disabled: loading || disabled, onClick: handleToggle, children: open ? /* @__PURE__ */ jsxRuntime.jsx(OpenDiagonallyRight.ArrowUp, {}) : /* @__PURE__ */ jsxRuntime.jsx(ArrowDown.ArrowDown, {}) })
2262
- ]
2263
- }
2264
- ),
2265
- /* @__PURE__ */ jsxRuntime.jsx(
2266
- material.Popper,
2267
- {
2268
- sx: { zIndex: 1 },
2269
- open,
2270
- anchorEl: anchorRef.current,
2271
- role: void 0,
2272
- transition: true,
2273
- disablePortal: true,
2274
- placement: "bottom-end",
2275
- children: ({ TransitionProps, placement }) => /* @__PURE__ */ jsxRuntime.jsx(
2276
- material.Grow,
2277
- {
2278
- ...TransitionProps,
2279
- style: {
2280
- transformOrigin: placement === "bottom" ? "center top" : "center bottom"
2281
- },
2282
- children: /* @__PURE__ */ jsxRuntime.jsx(material.Paper, { elevation: 8, children: /* @__PURE__ */ jsxRuntime.jsx(material.ClickAwayListener, { onClickAway: handleClose, children: /* @__PURE__ */ jsxRuntime.jsx(material.MenuList, { autoFocusItem: true, sx: { paddingY: 1 }, children: options.map((option, index) => /* @__PURE__ */ jsxRuntime.jsx(
2283
- material.MenuItem,
2284
- {
2285
- disabled: option.disabled,
2286
- selected: index === selectedIndex,
2287
- onClick: (event) => handleMenuItemClick(event, index),
2288
- children: option.label
2289
- },
2290
- option.label
2291
- )) }) }) })
2292
- }
2293
- )
2259
+ borderColor: "transparent"
2260
+ };
2261
+ case "warning":
2262
+ if (variant === "outlined") {
2263
+ return {
2264
+ color: theme.palette.warning.main,
2265
+ backgroundColor: theme.palette.warning.relatedLight,
2266
+ borderColor: theme.palette.warning.main
2267
+ };
2294
2268
  }
2295
- )
2296
- ] });
2269
+ return {
2270
+ color: theme.palette.text.primary,
2271
+ backgroundColor: theme.palette.warning.main,
2272
+ borderColor: "transparent"
2273
+ };
2274
+ case "error":
2275
+ if (variant === "outlined") {
2276
+ return {
2277
+ color: theme.palette.error.main,
2278
+ backgroundColor: theme.palette.error.relatedLight,
2279
+ borderColor: theme.palette.error.main
2280
+ };
2281
+ }
2282
+ return {
2283
+ color: theme.palette.primary.contrastText,
2284
+ backgroundColor: theme.palette.error.main,
2285
+ borderColor: "transparent"
2286
+ };
2287
+ }
2297
2288
  }
2298
- const Root$5 = material.styled(material.Box)(({ theme }) => ({
2289
+ const TagRoot = material.styled("div", {
2290
+ shouldForwardProp: (prop) => !["color", "variant", "disabled"].includes(prop)
2291
+ })(({
2292
+ color,
2293
+ variant,
2294
+ disabled,
2295
+ theme
2296
+ }) => {
2297
+ return {
2298
+ display: "inline-flex",
2299
+ flexDirection: "row",
2300
+ flexWrap: "nowrap",
2301
+ alignItems: "center",
2302
+ padding: theme.spacing(0, 0.5),
2303
+ borderRadius: theme.spacing(0.25),
2304
+ gap: theme.spacing(0.5),
2305
+ height: theme.spacing(2),
2306
+ borderWidth: "1px",
2307
+ borderStyle: "solid",
2308
+ ...colorProps(color ?? "primary", variant ?? "filled", theme, disabled),
2309
+ '.Mui-selected &, [aria-selected="true"] &': {
2310
+ borderColor: theme.palette.primary.main,
2311
+ backgroundColor: theme.palette.primary.background,
2312
+ ".MuiTypography-root": {
2313
+ color: theme.palette.primary.main
2314
+ }
2315
+ }
2316
+ };
2317
+ });
2318
+ const TagIcon = material.styled("div")(({ theme }) => ({
2299
2319
  display: "flex",
2320
+ justifyContent: "center",
2300
2321
  alignItems: "center",
2301
- gap: theme.spacing(0.5)
2302
- }));
2303
- const Indicator = material.styled(TablePaginationActions.Typography)(({ theme }) => ({
2304
- ".Mui-disabled &": {
2305
- color: theme.palette.text.disabled
2322
+ "& svg": {
2323
+ width: theme.spacing(TablePaginationActions.ICON_SIZE_SMALL),
2324
+ height: theme.spacing(TablePaginationActions.ICON_SIZE_SMALL),
2325
+ "& g": {
2326
+ fill: "currentColor"
2327
+ }
2306
2328
  }
2307
2329
  }));
2308
- const Icon = material.styled(material.Box)(({ theme }) => ({
2330
+ const TagLabel = material.styled("div", {
2331
+ shouldForwardProp: (prop) => !["type"].includes(prop)
2332
+ })(({ type, theme }) => ({
2309
2333
  display: "flex",
2310
- svg: {
2311
- width: TablePaginationActions.ICON_SIZE_SMALL,
2312
- height: TablePaginationActions.ICON_SIZE_SMALL,
2313
- fontSize: TablePaginationActions.ICON_SIZE_SMALL,
2314
- path: {
2315
- fill: theme.palette.text.secondary,
2316
- ".Mui-disabled &": {
2317
- fill: theme.palette.text.disabled
2318
- }
2319
- }
2320
- }
2334
+ alignItems: "center",
2335
+ paddingTop: type === "code" ? theme.spacing(0.25) : void 0
2321
2336
  }));
2322
- function LabelWithIndicator({
2337
+ function _Tag({
2323
2338
  label,
2324
- type,
2339
+ color = "primary",
2340
+ variant = "filled",
2325
2341
  icon,
2326
- inheritSize
2327
- }) {
2328
- return /* @__PURE__ */ jsxRuntime.jsxs(Root$5, { children: [
2329
- label,
2330
- type && /* @__PURE__ */ jsxRuntime.jsx(
2331
- Indicator,
2332
- {
2333
- component: "span",
2334
- variant: inheritSize ? "inherit" : "caption",
2335
- color: "textSecondary",
2336
- weight: "regular",
2337
- children: type === "required" ? "(required)" : "(optional)"
2338
- }
2339
- ),
2340
- icon && /* @__PURE__ */ jsxRuntime.jsx(Icon, { children: icon })
2341
- ] });
2342
- }
2343
- function _PasswordField({ InputProps, size = "small", ...otherProps }, ref) {
2344
- const intl = reactIntl.useIntl();
2345
- const intlConfig = TablePaginationActions.useImperativeIntl(intl);
2346
- const [showPassword, setShowPassword] = React.useState(false);
2347
- const handleClickShowPassword = () => setShowPassword(!showPassword);
2348
- return /* @__PURE__ */ jsxRuntime.jsx(
2349
- material.TextField,
2342
+ type = "default",
2343
+ typographyProps,
2344
+ noWrap = true,
2345
+ disabled,
2346
+ ...otherProps
2347
+ }, ref) {
2348
+ const typeCode = type === "code";
2349
+ return /* @__PURE__ */ jsxRuntime.jsxs(
2350
+ TagRoot,
2350
2351
  {
2351
- ...otherProps,
2352
2352
  ref,
2353
- type: showPassword ? "text" : "password",
2354
- size,
2355
- InputProps: {
2356
- ...InputProps,
2357
- endAdornment: /* @__PURE__ */ jsxRuntime.jsx(material.InputAdornment, { position: "end", children: /* @__PURE__ */ jsxRuntime.jsx(material.IconButton, { size, onClick: handleClickShowPassword, children: /* @__PURE__ */ jsxRuntime.jsx(
2358
- material.Tooltip,
2353
+ className: "CartoTag-root",
2354
+ color,
2355
+ variant,
2356
+ disabled,
2357
+ "aria-disabled": disabled,
2358
+ "data-color": color,
2359
+ "data-variant": variant,
2360
+ "data-type": type,
2361
+ "data-name": "tag",
2362
+ ...otherProps,
2363
+ children: [
2364
+ icon && /* @__PURE__ */ jsxRuntime.jsx(TagIcon, { children: icon }),
2365
+ /* @__PURE__ */ jsxRuntime.jsx(TagLabel, { type, children: /* @__PURE__ */ jsxRuntime.jsx(
2366
+ TablePaginationActions.Typography,
2359
2367
  {
2360
- title: intlConfig.formatMessage({
2361
- id: `c4r.form.${showPassword ? "hidePassword" : "showPassword"}`
2362
- }),
2363
- children: showPassword ? /* @__PURE__ */ jsxRuntime.jsx(iconsMaterial.VisibilityOffOutlined, {}) : /* @__PURE__ */ jsxRuntime.jsx(iconsMaterial.VisibilityOutlined, {})
2368
+ component: "span",
2369
+ color: "inherit",
2370
+ variant: typeCode ? "code3" : "caption",
2371
+ weight: typeCode ? "strong" : "medium",
2372
+ noWrap,
2373
+ ...typographyProps,
2374
+ children: label
2364
2375
  }
2365
- ) }) })
2366
- }
2367
- }
2368
- );
2369
- }
2370
- const PasswordField = React.forwardRef(_PasswordField);
2371
- const StyledToggleButtonGroup = material.styled(material.ToggleButtonGroup, {
2372
- shouldForwardProp: (prop) => prop !== "variant" && prop !== "backgroundColor"
2373
- })(({ variant, backgroundColor, theme }) => ({
2374
- // Variants
2375
- ...variant === "contained" && {
2376
- boxShadow: "none"
2377
- },
2378
- ...variant === "unbounded" && {
2379
- boxShadow: "none",
2380
- borderRadius: theme.spacing(0.5),
2381
- "& .MuiDivider-root": {
2382
- height: theme.spacing(4),
2383
- "&.MuiToggleButtonGroup-groupedHorizontal": {
2384
- height: theme.spacing(4)
2385
- },
2386
- "&.MuiToggleButtonGroup-groupedVertical": {
2387
- height: "auto",
2388
- width: theme.spacing(4),
2389
- margin: `${theme.spacing(0.5, 0, 1)} !important`,
2390
- borderRadius: "0 !important"
2391
- }
2392
- },
2393
- "& .MuiToggleButton-sizeSmall": {
2394
- margin: 0,
2395
- "&.MuiToggleButtonGroup-grouped:not(.MuiDivider-root)": {
2396
- margin: 0
2397
- },
2398
- "& + .MuiDivider-root.MuiToggleButtonGroup-groupedHorizontal": {
2399
- height: theme.spacing(3)
2400
- },
2401
- "& + .MuiDivider-root.MuiToggleButtonGroup-groupedVertical": {
2402
- height: "auto",
2403
- width: theme.spacing(3)
2404
- }
2405
- },
2406
- ".MuiToggleButtonGroup-grouped:not(.MuiDivider-root)": {
2407
- margin: 0,
2408
- "&:first-of-type": {
2409
- marginLeft: 0
2410
- },
2411
- "&:not(:last-of-type)": {
2412
- marginRight: theme.spacing(0.5)
2413
- }
2414
- },
2415
- "&.MuiToggleButtonGroup-horizontal:not(.MuiDivider-root)": {
2416
- ".MuiToggleButtonGroup-grouped": {
2417
- margin: theme.spacing(0, 0.5)
2418
- }
2419
- },
2420
- "&.MuiToggleButtonGroup-vertical:not(.MuiDivider-root)": {
2421
- ".MuiToggleButtonGroup-grouped": {
2422
- margin: theme.spacing(0, 0, 0.5),
2423
- "&:not(:last-of-type)": {
2424
- marginRight: 0
2425
- },
2426
- "&:last-of-type": {
2427
- marginBottom: 0
2428
- }
2429
- }
2430
- }
2431
- },
2432
- // Colors
2433
- ...backgroundColor === "primary" && {
2434
- backgroundColor: theme.palette.background.paper
2435
- },
2436
- ...backgroundColor === "secondary" && {
2437
- backgroundColor: theme.palette.background.default
2438
- },
2439
- ...backgroundColor === "transparent" && {
2440
- backgroundColor: "transparent"
2441
- }
2442
- }));
2443
- function ToggleButtonGroup({
2444
- children,
2445
- variant = "floating",
2446
- backgroundColor,
2447
- ...rest
2448
- }) {
2449
- const isUnbounded = variant === "unbounded";
2450
- const defaultColor = isUnbounded ? "transparent" : "primary";
2451
- return /* @__PURE__ */ jsxRuntime.jsx(
2452
- StyledToggleButtonGroup,
2453
- {
2454
- ...rest,
2455
- variant,
2456
- backgroundColor: backgroundColor ?? defaultColor,
2457
- children
2376
+ ) })
2377
+ ]
2458
2378
  }
2459
2379
  );
2460
2380
  }
2381
+ const Tag = React.forwardRef(_Tag);
2461
2382
  const Menu = material.styled("div")(({ theme }) => ({
2462
2383
  display: "flex",
2463
2384
  alignItems: "center",
@@ -3503,7 +3424,7 @@ function CodeAreaHeader({
3503
3424
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
3504
3425
  /* @__PURE__ */ jsxRuntime.jsxs(Header, { size, "data-size": size, "data-name": "code-area-header", children: [
3505
3426
  /* @__PURE__ */ jsxRuntime.jsx(
3506
- Link.IconButton,
3427
+ Alert$1.IconButton,
3507
3428
  {
3508
3429
  color: "default",
3509
3430
  size,
@@ -3567,7 +3488,7 @@ function CodeAreaHeader({
3567
3488
  }
3568
3489
  ),
3569
3490
  showExpandButton && /* @__PURE__ */ jsxRuntime.jsx(
3570
- Link.IconButton,
3491
+ Alert$1.IconButton,
3571
3492
  {
3572
3493
  color: "default",
3573
3494
  size,
@@ -4739,7 +4660,7 @@ const DialogContentPadded = material.styled(DialogContent, {
4739
4660
  paddingBottom: `${theme.spacing(3)} !important`
4740
4661
  }
4741
4662
  }));
4742
- const StyledAlert = material.styled(Link.Alert)(({ theme }) => ({
4663
+ const StyledAlert = material.styled(Alert$1.Alert)(({ theme }) => ({
4743
4664
  minHeight: "auto",
4744
4665
  padding: 0,
4745
4666
  backgroundColor: "transparent",
@@ -5171,10 +5092,10 @@ function CodeAreaDialog({
5171
5092
  }
5172
5093
  exports.TablePaginationActions = TablePaginationActions.TablePaginationActions;
5173
5094
  exports.Typography = TablePaginationActions.Typography;
5174
- exports.Alert = Link.Alert;
5175
- exports.IconButton = Link.IconButton;
5176
- exports.Link = Link.Link;
5177
- exports.ScreenReaderOnly = Link.ScreenReaderOnly;
5095
+ exports.Alert = Alert$1.Alert;
5096
+ exports.IconButton = Alert$1.IconButton;
5097
+ exports.Link = Alert$1.Link;
5098
+ exports.ScreenReaderOnly = Alert$1.ScreenReaderOnly;
5178
5099
  exports.MenuItem = MenuItem.MenuItem;
5179
5100
  exports.AUTOCOMPLETE_GROUP_HEADER_PROPERTY = AUTOCOMPLETE_GROUP_HEADER_PROPERTY;
5180
5101
  exports.AccordionGroup = AccordionGroup;
@@ -5193,7 +5114,6 @@ exports.CodeAreaHeader = CodeAreaHeader;
5193
5114
  exports.CodeAreaInput = CodeAreaInput;
5194
5115
  exports.CodeAreaMarkTextPattern = CodeAreaMarkTextPattern;
5195
5116
  exports.CopiableComponent = CopiableComponent;
5196
- exports.CopiableInputText = CopiableInputText;
5197
5117
  exports.CreatableAutocomplete = CreatableAutocomplete;
5198
5118
  exports.DatePicker = DatePicker;
5199
5119
  exports.DateRangePicker = DateRangePicker;