@lumx/react 3.20.1-alpha.44 → 3.20.1-alpha.46

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.
package/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { Kind, Size, ColorPalette, Emphasis, Theme, AspectRatio, VISUALLY_HIDDEN, DIALOG_TRANSITION_DURATION, Orientation, Typography, Alignment, ColorVariant, NOTIFICATION_TRANSITION_DURATION, TOOLTIP_LONG_PRESS_DELAY, TOOLTIP_HOVER_DELAY } from '@lumx/core/js/constants';
1
+ import { Kind, Size, ColorPalette, Emphasis, Theme, AspectRatio, DIALOG_TRANSITION_DURATION, Orientation, Typography, Alignment, ColorVariant, NOTIFICATION_TRANSITION_DURATION, TOOLTIP_LONG_PRESS_DELAY, TOOLTIP_HOVER_DELAY } from '@lumx/core/js/constants';
2
2
  export * from '@lumx/core/js/constants';
3
3
  export * from '@lumx/core/js/types';
4
4
  import * as React from 'react';
@@ -8,8 +8,8 @@ import { mdiAlertCircle } from '@lumx/icons/esm/alert-circle';
8
8
  import { mdiCheckCircle } from '@lumx/icons/esm/check-circle';
9
9
  import { mdiInformation } from '@lumx/icons/esm/information';
10
10
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
11
- import { u as useDisabledStateContext, b as useClassnames, P as Portal, C as ClickAwayProvider } from './_internal/useClassnames.js';
12
- import { cls, onEnterPressed, onEscapePressed, resolveColorWithVariants, onButtonPressed, detectHorizontalSwipe } from '@lumx/core/js/utils';
11
+ import { u as useDisabledStateContext, b as useClassnames, P as Portal, C as ClickAwayProvider } from './_internal/D-QVluBy.js';
12
+ import { cls, onEnterPressed, onEscapePressed, onButtonPressed, detectHorizontalSwipe } from '@lumx/core/js/utils';
13
13
  import last from 'lodash/last';
14
14
  import pull from 'lodash/pull';
15
15
  import get from 'lodash/get';
@@ -127,17 +127,17 @@ const CONFIG$1 = {
127
127
  /**
128
128
  * Component display name.
129
129
  */
130
- const COMPONENT_NAME$1l = 'AlertDialog';
130
+ const COMPONENT_NAME$1k = 'AlertDialog';
131
131
 
132
132
  /**
133
133
  * Component default class name and class prefix.
134
134
  */
135
- const CLASSNAME$1k = 'lumx-alert-dialog';
135
+ const CLASSNAME$1i = 'lumx-alert-dialog';
136
136
 
137
137
  /**
138
138
  * Component default props.
139
139
  */
140
- const DEFAULT_PROPS$13 = {
140
+ const DEFAULT_PROPS$15 = {
141
141
  size: Size.tiny,
142
142
  kind: Kind.info
143
143
  };
@@ -158,8 +158,8 @@ const AlertDialog = forwardRef((props, ref) => {
158
158
  className,
159
159
  cancelProps,
160
160
  confirmProps,
161
- kind = DEFAULT_PROPS$13.kind,
162
- size = DEFAULT_PROPS$13.size,
161
+ kind = DEFAULT_PROPS$15.kind,
162
+ size = DEFAULT_PROPS$15.size,
163
163
  dialogProps,
164
164
  children,
165
165
  ...forwardedProps
@@ -172,7 +172,7 @@ const AlertDialog = forwardRef((props, ref) => {
172
172
  } = CONFIG$1[kind] || {};
173
173
  const {
174
174
  block
175
- } = useClassnames(CLASSNAME$1k);
175
+ } = useClassnames(CLASSNAME$1i);
176
176
 
177
177
  // Define a unique ID to target title and description for aria attributes.
178
178
  const generatedId = useId();
@@ -248,9 +248,9 @@ const AlertDialog = forwardRef((props, ref) => {
248
248
  })]
249
249
  });
250
250
  });
251
- AlertDialog.displayName = COMPONENT_NAME$1l;
252
- AlertDialog.className = CLASSNAME$1k;
253
- AlertDialog.defaultProps = DEFAULT_PROPS$13;
251
+ AlertDialog.displayName = COMPONENT_NAME$1k;
252
+ AlertDialog.className = CLASSNAME$1i;
253
+ AlertDialog.defaultProps = DEFAULT_PROPS$15;
254
254
 
255
255
  /**
256
256
  * Hook focusing an element when defined and `focus` boolean `true`.
@@ -309,17 +309,17 @@ function useTheme() {
309
309
  /**
310
310
  * Component display name.
311
311
  */
312
- const COMPONENT_NAME$1k = 'Autocomplete';
312
+ const COMPONENT_NAME$1j = 'Autocomplete';
313
313
 
314
314
  /**
315
315
  * Component default class name and class prefix.
316
316
  */
317
- const CLASSNAME$1j = 'lumx-autocomplete';
317
+ const CLASSNAME$1h = 'lumx-autocomplete';
318
318
 
319
319
  /**
320
320
  * Component default props.
321
321
  */
322
- const DEFAULT_PROPS$12 = {
322
+ const DEFAULT_PROPS$14 = {
323
323
  anchorToInput: false,
324
324
  closeOnClick: false,
325
325
  closeOnClickAway: true,
@@ -341,13 +341,13 @@ const Autocomplete = forwardRef((props, ref) => {
341
341
  otherProps
342
342
  } = useDisableStateProps(props);
343
343
  const {
344
- anchorToInput = DEFAULT_PROPS$12.anchorToInput,
344
+ anchorToInput = DEFAULT_PROPS$14.anchorToInput,
345
345
  children,
346
346
  chips,
347
347
  className,
348
- closeOnClick = DEFAULT_PROPS$12.closeOnClick,
349
- closeOnClickAway = DEFAULT_PROPS$12.closeOnClickAway,
350
- closeOnEscape = DEFAULT_PROPS$12.closeOnEscape,
348
+ closeOnClick = DEFAULT_PROPS$14.closeOnClick,
349
+ closeOnClickAway = DEFAULT_PROPS$14.closeOnClickAway,
350
+ closeOnEscape = DEFAULT_PROPS$14.closeOnEscape,
351
351
  error,
352
352
  fitToAnchorWidth,
353
353
  hasError,
@@ -368,7 +368,7 @@ const Autocomplete = forwardRef((props, ref) => {
368
368
  onInfiniteScroll,
369
369
  placeholder,
370
370
  placement,
371
- shouldFocusOnClose = DEFAULT_PROPS$12.shouldFocusOnClose,
371
+ shouldFocusOnClose = DEFAULT_PROPS$14.shouldFocusOnClose,
372
372
  theme = defaultTheme,
373
373
  value,
374
374
  textFieldProps = {},
@@ -377,7 +377,7 @@ const Autocomplete = forwardRef((props, ref) => {
377
377
  } = otherProps;
378
378
  const {
379
379
  block
380
- } = useClassnames(CLASSNAME$1j);
380
+ } = useClassnames(CLASSNAME$1h);
381
381
  const inputAnchorRef = useRef(null);
382
382
  const textFieldRef = useRef(null);
383
383
  useFocus(inputAnchorRef.current, !isOpen && shouldFocusOnClose);
@@ -424,24 +424,24 @@ const Autocomplete = forwardRef((props, ref) => {
424
424
  })]
425
425
  });
426
426
  });
427
- Autocomplete.displayName = COMPONENT_NAME$1k;
428
- Autocomplete.className = CLASSNAME$1j;
429
- Autocomplete.defaultProps = DEFAULT_PROPS$12;
427
+ Autocomplete.displayName = COMPONENT_NAME$1j;
428
+ Autocomplete.className = CLASSNAME$1h;
429
+ Autocomplete.defaultProps = DEFAULT_PROPS$14;
430
430
 
431
431
  /**
432
432
  * Component display name.
433
433
  */
434
- const COMPONENT_NAME$1j = 'AutocompleteMultiple';
434
+ const COMPONENT_NAME$1i = 'AutocompleteMultiple';
435
435
 
436
436
  /**
437
437
  * Component default class name and class prefix.
438
438
  */
439
- const CLASSNAME$1i = 'lumx-autocomplete-multiple';
439
+ const CLASSNAME$1g = 'lumx-autocomplete-multiple';
440
440
 
441
441
  /**
442
442
  * Component default props.
443
443
  */
444
- const DEFAULT_PROPS$11 = {
444
+ const DEFAULT_PROPS$13 = {
445
445
  closeOnClickAway: true,
446
446
  closeOnEscape: true,
447
447
  selectedChipRender(choice, index, onClear, isDisabled) {
@@ -481,8 +481,8 @@ const AutocompleteMultiple = forwardRef((props, ref) => {
481
481
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
482
482
  chipsAlignment,
483
483
  className,
484
- closeOnClickAway = DEFAULT_PROPS$11.closeOnClickAway,
485
- closeOnEscape = DEFAULT_PROPS$11.closeOnEscape,
484
+ closeOnClickAway = DEFAULT_PROPS$13.closeOnClickAway,
485
+ closeOnEscape = DEFAULT_PROPS$13.closeOnEscape,
486
486
  fitToAnchorWidth,
487
487
  hasError,
488
488
  helper,
@@ -504,17 +504,17 @@ const AutocompleteMultiple = forwardRef((props, ref) => {
504
504
  onKeyDown,
505
505
  placeholder,
506
506
  placement,
507
- selectedChipRender = DEFAULT_PROPS$11.selectedChipRender,
507
+ selectedChipRender = DEFAULT_PROPS$13.selectedChipRender,
508
508
  shouldFocusOnClose,
509
509
  theme = defaultTheme,
510
510
  type,
511
511
  value,
512
- values = DEFAULT_PROPS$11.values,
512
+ values = DEFAULT_PROPS$13.values,
513
513
  ...forwardedProps
514
514
  } = otherProps;
515
515
  const {
516
516
  block
517
- } = useClassnames(CLASSNAME$1i);
517
+ } = useClassnames(CLASSNAME$1g);
518
518
  return /*#__PURE__*/jsx(Autocomplete, {
519
519
  ref: ref,
520
520
  ...forwardedProps,
@@ -552,24 +552,24 @@ const AutocompleteMultiple = forwardRef((props, ref) => {
552
552
  children: children
553
553
  });
554
554
  });
555
- AutocompleteMultiple.displayName = COMPONENT_NAME$1j;
556
- AutocompleteMultiple.className = CLASSNAME$1i;
557
- AutocompleteMultiple.defaultProps = DEFAULT_PROPS$11;
555
+ AutocompleteMultiple.displayName = COMPONENT_NAME$1i;
556
+ AutocompleteMultiple.className = CLASSNAME$1g;
557
+ AutocompleteMultiple.defaultProps = DEFAULT_PROPS$13;
558
558
 
559
559
  /**
560
560
  * Component display name.
561
561
  */
562
- const COMPONENT_NAME$1i = 'Avatar';
562
+ const COMPONENT_NAME$1h = 'Avatar';
563
563
 
564
564
  /**
565
565
  * Component default class name and class prefix.
566
566
  */
567
- const CLASSNAME$1h = 'lumx-avatar';
567
+ const CLASSNAME$1f = 'lumx-avatar';
568
568
 
569
569
  /**
570
570
  * Component default props.
571
571
  */
572
- const DEFAULT_PROPS$10 = {
572
+ const DEFAULT_PROPS$12 = {
573
573
  size: Size.m
574
574
  };
575
575
 
@@ -592,7 +592,7 @@ const Avatar = forwardRef((props, ref) => {
592
592
  linkAs,
593
593
  onClick,
594
594
  onKeyPress,
595
- size = DEFAULT_PROPS$10.size,
595
+ size = DEFAULT_PROPS$12.size,
596
596
  theme = defaultTheme,
597
597
  thumbnailProps,
598
598
  ...forwardedProps
@@ -600,7 +600,7 @@ const Avatar = forwardRef((props, ref) => {
600
600
  const {
601
601
  block,
602
602
  element
603
- } = useClassnames(CLASSNAME$1h);
603
+ } = useClassnames(CLASSNAME$1f);
604
604
  return /*#__PURE__*/jsxs("div", {
605
605
  ref: ref,
606
606
  ...forwardedProps,
@@ -629,24 +629,24 @@ const Avatar = forwardRef((props, ref) => {
629
629
  })]
630
630
  });
631
631
  });
632
- Avatar.displayName = COMPONENT_NAME$1i;
633
- Avatar.className = CLASSNAME$1h;
634
- Avatar.defaultProps = DEFAULT_PROPS$10;
632
+ Avatar.displayName = COMPONENT_NAME$1h;
633
+ Avatar.className = CLASSNAME$1f;
634
+ Avatar.defaultProps = DEFAULT_PROPS$12;
635
635
 
636
636
  /**
637
637
  * Component display name.
638
638
  */
639
- const COMPONENT_NAME$1h = 'Badge';
639
+ const COMPONENT_NAME$1g = 'Badge';
640
640
 
641
641
  /**
642
642
  * Component default class name and class prefix.
643
643
  */
644
- const CLASSNAME$1g = 'lumx-badge';
644
+ const CLASSNAME$1e = 'lumx-badge';
645
645
 
646
646
  /**
647
647
  * Component default props.
648
648
  */
649
- const DEFAULT_PROPS$$ = {
649
+ const DEFAULT_PROPS$11 = {
650
650
  color: ColorPalette.primary
651
651
  };
652
652
 
@@ -661,12 +661,12 @@ const Badge = forwardRef((props, ref) => {
661
661
  const {
662
662
  children,
663
663
  className,
664
- color = DEFAULT_PROPS$$.color,
664
+ color = DEFAULT_PROPS$11.color,
665
665
  ...forwardedProps
666
666
  } = props;
667
667
  const {
668
668
  block
669
- } = useClassnames(CLASSNAME$1g);
669
+ } = useClassnames(CLASSNAME$1e);
670
670
  return /*#__PURE__*/jsx("div", {
671
671
  ref: ref,
672
672
  ...forwardedProps,
@@ -676,14 +676,14 @@ const Badge = forwardRef((props, ref) => {
676
676
  children: children
677
677
  });
678
678
  });
679
- Badge.displayName = COMPONENT_NAME$1h;
680
- Badge.className = CLASSNAME$1g;
681
- Badge.defaultProps = DEFAULT_PROPS$$;
679
+ Badge.displayName = COMPONENT_NAME$1g;
680
+ Badge.className = CLASSNAME$1e;
681
+ Badge.defaultProps = DEFAULT_PROPS$11;
682
682
 
683
683
  /**
684
684
  * Component default class name and class prefix.
685
685
  */
686
- const CLASSNAME$1f = 'lumx-badge-wrapper';
686
+ const CLASSNAME$1d = 'lumx-badge-wrapper';
687
687
  const BadgeWrapper = forwardRef((props, ref) => {
688
688
  const {
689
689
  badge,
@@ -694,7 +694,7 @@ const BadgeWrapper = forwardRef((props, ref) => {
694
694
  const {
695
695
  block,
696
696
  element
697
- } = useClassnames(CLASSNAME$1f);
697
+ } = useClassnames(CLASSNAME$1d);
698
698
  return /*#__PURE__*/jsxs("div", {
699
699
  ref: ref,
700
700
  ...forwardedProps,
@@ -706,7 +706,7 @@ const BadgeWrapper = forwardRef((props, ref) => {
706
706
  });
707
707
  });
708
708
  BadgeWrapper.displayName = 'BadgeWrapper';
709
- BadgeWrapper.className = CLASSNAME$1f;
709
+ BadgeWrapper.className = CLASSNAME$1d;
710
710
 
711
711
  /**
712
712
  * Properties of a component to use to determine it's name.
@@ -779,7 +779,7 @@ const RawClickable = forwardRefPolymorphic((props, ref) => {
779
779
  /**
780
780
  * Component display name.
781
781
  */
782
- const COMPONENT_NAME$1g = 'ButtonRoot';
782
+ const COMPONENT_NAME$1f = 'ButtonRoot';
783
783
  const BUTTON_WRAPPER_CLASSNAME = `lumx-button-wrapper`;
784
784
  const BUTTON_CLASSNAME = `lumx-button`;
785
785
  const wrapperBlock = cls.bem.block(BUTTON_WRAPPER_CLASSNAME);
@@ -882,7 +882,7 @@ const ButtonRoot = forwardRef((props, ref) => {
882
882
  children: children
883
883
  });
884
884
  });
885
- ButtonRoot.displayName = COMPONENT_NAME$1g;
885
+ ButtonRoot.displayName = COMPONENT_NAME$1f;
886
886
  ButtonRoot.defaultProps = {};
887
887
 
888
888
  const ButtonEmphasis = Emphasis;
@@ -894,17 +894,17 @@ const ButtonEmphasis = Emphasis;
894
894
  /**
895
895
  * Component display name.
896
896
  */
897
- const COMPONENT_NAME$1f = 'Button';
897
+ const COMPONENT_NAME$1e = 'Button';
898
898
 
899
899
  /**
900
900
  * Component default class name and class prefix.
901
901
  */
902
- const CLASSNAME$1e = 'lumx-button';
902
+ const CLASSNAME$1c = 'lumx-button';
903
903
 
904
904
  /**
905
905
  * Component default props.
906
906
  */
907
- const DEFAULT_PROPS$_ = {
907
+ const DEFAULT_PROPS$10 = {
908
908
  emphasis: Emphasis.high,
909
909
  size: Size.m
910
910
  };
@@ -921,16 +921,16 @@ const Button = forwardRef((props, ref) => {
921
921
  const {
922
922
  children,
923
923
  className,
924
- emphasis = DEFAULT_PROPS$_.emphasis,
924
+ emphasis = DEFAULT_PROPS$10.emphasis,
925
925
  leftIcon,
926
926
  rightIcon,
927
- size = DEFAULT_PROPS$_.size,
927
+ size = DEFAULT_PROPS$10.size,
928
928
  theme = defaultTheme,
929
929
  ...forwardedProps
930
930
  } = props;
931
931
  const {
932
932
  block
933
- } = useClassnames(CLASSNAME$1e);
933
+ } = useClassnames(CLASSNAME$1c);
934
934
  const buttonClassName = block({
935
935
  'has-left-icon': Boolean(leftIcon),
936
936
  'has-right-icon': Boolean(rightIcon)
@@ -964,24 +964,24 @@ const Button = forwardRef((props, ref) => {
964
964
  })]
965
965
  });
966
966
  });
967
- Button.displayName = COMPONENT_NAME$1f;
968
- Button.className = CLASSNAME$1e;
969
- Button.defaultProps = DEFAULT_PROPS$_;
967
+ Button.displayName = COMPONENT_NAME$1e;
968
+ Button.className = CLASSNAME$1c;
969
+ Button.defaultProps = DEFAULT_PROPS$10;
970
970
 
971
971
  /**
972
972
  * Component display name.
973
973
  */
974
- const COMPONENT_NAME$1e = 'IconButton';
974
+ const COMPONENT_NAME$1d = 'IconButton';
975
975
 
976
976
  /**
977
977
  * Component default class name and class prefix.
978
978
  */
979
- const CLASSNAME$1d = 'lumx-icon-button';
979
+ const CLASSNAME$1b = 'lumx-icon-button';
980
980
 
981
981
  /**
982
982
  * Component default props.
983
983
  */
984
- const DEFAULT_PROPS$Z = {
984
+ const DEFAULT_PROPS$$ = {
985
985
  emphasis: Emphasis.high,
986
986
  size: Size.m
987
987
  };
@@ -996,11 +996,11 @@ const DEFAULT_PROPS$Z = {
996
996
  const IconButton = forwardRef((props, ref) => {
997
997
  const defaultTheme = useTheme() || Theme.light;
998
998
  const {
999
- emphasis = DEFAULT_PROPS$Z.emphasis,
999
+ emphasis = DEFAULT_PROPS$$.emphasis,
1000
1000
  image,
1001
1001
  icon,
1002
1002
  label,
1003
- size = DEFAULT_PROPS$Z.size,
1003
+ size = DEFAULT_PROPS$$.size,
1004
1004
  theme = defaultTheme,
1005
1005
  tooltipProps,
1006
1006
  hideTooltip,
@@ -1030,24 +1030,24 @@ const IconButton = forwardRef((props, ref) => {
1030
1030
  })
1031
1031
  });
1032
1032
  });
1033
- IconButton.displayName = COMPONENT_NAME$1e;
1034
- IconButton.className = CLASSNAME$1d;
1035
- IconButton.defaultProps = DEFAULT_PROPS$Z;
1033
+ IconButton.displayName = COMPONENT_NAME$1d;
1034
+ IconButton.className = CLASSNAME$1b;
1035
+ IconButton.defaultProps = DEFAULT_PROPS$$;
1036
1036
 
1037
1037
  /**
1038
1038
  * Component display name.
1039
1039
  */
1040
- const COMPONENT_NAME$1d = 'ButtonGroup';
1040
+ const COMPONENT_NAME$1c = 'ButtonGroup';
1041
1041
 
1042
1042
  /**
1043
1043
  * Component default class name and class prefix.
1044
1044
  */
1045
- const CLASSNAME$1c = 'lumx-button-group';
1045
+ const CLASSNAME$1a = 'lumx-button-group';
1046
1046
 
1047
1047
  /**
1048
1048
  * Component default props.
1049
1049
  */
1050
- const DEFAULT_PROPS$Y = {};
1050
+ const DEFAULT_PROPS$_ = {};
1051
1051
 
1052
1052
  /**
1053
1053
  * ButtonGroup component.
@@ -1064,7 +1064,7 @@ const ButtonGroup = forwardRef((props, ref) => {
1064
1064
  } = props;
1065
1065
  const {
1066
1066
  block
1067
- } = useClassnames(CLASSNAME$1c);
1067
+ } = useClassnames(CLASSNAME$1a);
1068
1068
  return /*#__PURE__*/jsx("div", {
1069
1069
  ref: ref,
1070
1070
  ...forwardedProps,
@@ -1072,9 +1072,9 @@ const ButtonGroup = forwardRef((props, ref) => {
1072
1072
  children: children
1073
1073
  });
1074
1074
  });
1075
- ButtonGroup.displayName = COMPONENT_NAME$1d;
1076
- ButtonGroup.className = CLASSNAME$1c;
1077
- ButtonGroup.defaultProps = DEFAULT_PROPS$Y;
1075
+ ButtonGroup.displayName = COMPONENT_NAME$1c;
1076
+ ButtonGroup.className = CLASSNAME$1a;
1077
+ ButtonGroup.defaultProps = DEFAULT_PROPS$_;
1078
1078
 
1079
1079
  const INTERMEDIATE_STATE = 'intermediate';
1080
1080
 
@@ -1085,17 +1085,17 @@ const INTERMEDIATE_STATE = 'intermediate';
1085
1085
  /**
1086
1086
  * Component display name.
1087
1087
  */
1088
- const COMPONENT_NAME$1c = 'Checkbox';
1088
+ const COMPONENT_NAME$1b = 'Checkbox';
1089
1089
 
1090
1090
  /**
1091
1091
  * Component default class name and class prefix.
1092
1092
  */
1093
- const CLASSNAME$1b = 'lumx-checkbox';
1093
+ const CLASSNAME$19 = 'lumx-checkbox';
1094
1094
 
1095
1095
  /**
1096
1096
  * Component default props.
1097
1097
  */
1098
- const DEFAULT_PROPS$X = {};
1098
+ const DEFAULT_PROPS$Z = {};
1099
1099
 
1100
1100
  /**
1101
1101
  * Checkbox component.
@@ -1129,7 +1129,7 @@ const Checkbox = forwardRef((props, ref) => {
1129
1129
  const {
1130
1130
  block,
1131
1131
  element
1132
- } = useClassnames(CLASSNAME$1b);
1132
+ } = useClassnames(CLASSNAME$19);
1133
1133
  const localInputRef = React__default.useRef(null);
1134
1134
  const generatedInputId = useId();
1135
1135
  const inputId = id || generatedInputId;
@@ -1196,9 +1196,9 @@ const Checkbox = forwardRef((props, ref) => {
1196
1196
  })]
1197
1197
  });
1198
1198
  });
1199
- Checkbox.displayName = COMPONENT_NAME$1c;
1200
- Checkbox.className = CLASSNAME$1b;
1201
- Checkbox.defaultProps = DEFAULT_PROPS$X;
1199
+ Checkbox.displayName = COMPONENT_NAME$1b;
1200
+ Checkbox.className = CLASSNAME$19;
1201
+ Checkbox.defaultProps = DEFAULT_PROPS$Z;
1202
1202
 
1203
1203
  /**
1204
1204
  * Wrap mouse event handler to stop event propagation.
@@ -1219,17 +1219,17 @@ function useStopPropagation(handler) {
1219
1219
  /**
1220
1220
  * Component display name.
1221
1221
  */
1222
- const COMPONENT_NAME$1b = 'Chip';
1222
+ const COMPONENT_NAME$1a = 'Chip';
1223
1223
 
1224
1224
  /**
1225
1225
  * Component default class name and class prefix.
1226
1226
  */
1227
- const CLASSNAME$1a = 'lumx-chip';
1227
+ const CLASSNAME$18 = 'lumx-chip';
1228
1228
 
1229
1229
  /**
1230
1230
  * Component default props.
1231
1231
  */
1232
- const DEFAULT_PROPS$W = {
1232
+ const DEFAULT_PROPS$Y = {
1233
1233
  size: Size.m
1234
1234
  };
1235
1235
 
@@ -1259,7 +1259,7 @@ const Chip = forwardRef((props, ref) => {
1259
1259
  onAfterClick,
1260
1260
  onBeforeClick,
1261
1261
  onClick,
1262
- size = DEFAULT_PROPS$W.size,
1262
+ size = DEFAULT_PROPS$Y.size,
1263
1263
  theme = defaultTheme,
1264
1264
  href,
1265
1265
  onKeyDown,
@@ -1268,7 +1268,7 @@ const Chip = forwardRef((props, ref) => {
1268
1268
  const {
1269
1269
  block,
1270
1270
  element
1271
- } = useClassnames(CLASSNAME$1a);
1271
+ } = useClassnames(CLASSNAME$18);
1272
1272
  const hasAfterClick = isFunction(onAfterClick);
1273
1273
  const hasBeforeClick = isFunction(onBeforeClick);
1274
1274
  const hasOnClick = isFunction(props.onClick);
@@ -1333,9 +1333,9 @@ const Chip = forwardRef((props, ref) => {
1333
1333
  })
1334
1334
  );
1335
1335
  });
1336
- Chip.displayName = COMPONENT_NAME$1b;
1337
- Chip.className = CLASSNAME$1a;
1338
- Chip.defaultProps = DEFAULT_PROPS$W;
1336
+ Chip.displayName = COMPONENT_NAME$1a;
1337
+ Chip.className = CLASSNAME$18;
1338
+ Chip.defaultProps = DEFAULT_PROPS$Y;
1339
1339
 
1340
1340
  const INITIAL_STATE_ACTIVE_CHIP = -1;
1341
1341
 
@@ -1391,17 +1391,17 @@ const useChipGroupNavigation = (chips, onChipDeleted, initialActiveChip = INITIA
1391
1391
  /**
1392
1392
  * Component default props.
1393
1393
  */
1394
- const DEFAULT_PROPS$V = {};
1394
+ const DEFAULT_PROPS$X = {};
1395
1395
 
1396
1396
  /**
1397
1397
  * Component display name.
1398
1398
  */
1399
- const COMPONENT_NAME$1a = 'ChipGroup';
1399
+ const COMPONENT_NAME$19 = 'ChipGroup';
1400
1400
 
1401
1401
  /**
1402
1402
  * Component default class name and class prefix.
1403
1403
  */
1404
- const CLASSNAME$19 = 'lumx-chip-group';
1404
+ const CLASSNAME$17 = 'lumx-chip-group';
1405
1405
 
1406
1406
  /**
1407
1407
  * ChipGroup component.
@@ -1419,7 +1419,7 @@ const InternalChipGroup = forwardRef((props, ref) => {
1419
1419
  } = props;
1420
1420
  const {
1421
1421
  block
1422
- } = useClassnames(CLASSNAME$19);
1422
+ } = useClassnames(CLASSNAME$17);
1423
1423
  return /*#__PURE__*/jsx("div", {
1424
1424
  ref: ref,
1425
1425
  ...forwardedProps,
@@ -1427,9 +1427,9 @@ const InternalChipGroup = forwardRef((props, ref) => {
1427
1427
  children: children
1428
1428
  });
1429
1429
  });
1430
- InternalChipGroup.displayName = COMPONENT_NAME$1a;
1431
- InternalChipGroup.className = CLASSNAME$19;
1432
- InternalChipGroup.defaultProps = DEFAULT_PROPS$V;
1430
+ InternalChipGroup.displayName = COMPONENT_NAME$19;
1431
+ InternalChipGroup.className = CLASSNAME$17;
1432
+ InternalChipGroup.defaultProps = DEFAULT_PROPS$X;
1433
1433
  const ChipGroup = Object.assign(InternalChipGroup, {
1434
1434
  useChipGroupNavigation
1435
1435
  });
@@ -1449,17 +1449,17 @@ const CommentBlockVariant = {
1449
1449
  /**
1450
1450
  * Component display name.
1451
1451
  */
1452
- const COMPONENT_NAME$19 = 'CommentBlock';
1452
+ const COMPONENT_NAME$18 = 'CommentBlock';
1453
1453
 
1454
1454
  /**
1455
1455
  * Component default class name and class prefix.
1456
1456
  */
1457
- const CLASSNAME$18 = 'lumx-comment-block';
1457
+ const CLASSNAME$16 = 'lumx-comment-block';
1458
1458
 
1459
1459
  /**
1460
1460
  * Component default props.
1461
1461
  */
1462
- const DEFAULT_PROPS$U = {
1462
+ const DEFAULT_PROPS$W = {
1463
1463
  variant: CommentBlockVariant.indented
1464
1464
  };
1465
1465
 
@@ -1489,14 +1489,14 @@ const CommentBlock = forwardRef((props, ref) => {
1489
1489
  onMouseLeave,
1490
1490
  text,
1491
1491
  theme = defaultTheme,
1492
- variant = DEFAULT_PROPS$U.variant,
1492
+ variant = DEFAULT_PROPS$W.variant,
1493
1493
  ...forwardedProps
1494
1494
  } = props;
1495
1495
  const hasChildren = Children.count(children) > 0;
1496
1496
  const {
1497
1497
  block,
1498
1498
  element
1499
- } = useClassnames(CLASSNAME$18);
1499
+ } = useClassnames(CLASSNAME$16);
1500
1500
  return /*#__PURE__*/jsxs("div", {
1501
1501
  ref: ref,
1502
1502
  className: block({
@@ -1560,9 +1560,9 @@ const CommentBlock = forwardRef((props, ref) => {
1560
1560
  })]
1561
1561
  });
1562
1562
  });
1563
- CommentBlock.displayName = COMPONENT_NAME$19;
1564
- CommentBlock.className = CLASSNAME$18;
1565
- CommentBlock.defaultProps = DEFAULT_PROPS$U;
1563
+ CommentBlock.displayName = COMPONENT_NAME$18;
1564
+ CommentBlock.className = CLASSNAME$16;
1565
+ CommentBlock.defaultProps = DEFAULT_PROPS$W;
1566
1566
 
1567
1567
  /**
1568
1568
  * Add a number of months from a date while resetting the day to prevent month length mismatches.
@@ -1582,12 +1582,12 @@ const isDateValid = date => date instanceof Date && !Number.isNaN(date.getTime()
1582
1582
  /**
1583
1583
  * Component display name.
1584
1584
  */
1585
- const COMPONENT_NAME$18 = 'DatePicker';
1585
+ const COMPONENT_NAME$17 = 'DatePicker';
1586
1586
 
1587
1587
  /**
1588
1588
  * Component default class name and class prefix.
1589
1589
  */
1590
- const CLASSNAME$17 = 'lumx-date-picker';
1590
+ const CLASSNAME$15 = 'lumx-date-picker';
1591
1591
 
1592
1592
  /** Get first day of week for locale from the browser API */
1593
1593
  const getFromBrowser = locale => {
@@ -1805,25 +1805,10 @@ function formatDayNumber(locale, date) {
1805
1805
  return formattedDate;
1806
1806
  }
1807
1807
 
1808
- /**
1809
- * Optional global `window` instance (not defined when running SSR).
1810
- */
1811
- const WINDOW = typeof window !== 'undefined' ? window : undefined;
1812
-
1813
- /**
1814
- * Optional global `document` instance (not defined when running SSR).
1815
- */
1816
- const DOCUMENT = typeof document !== 'undefined' ? document : undefined;
1817
-
1818
- /**
1819
- * Check if we are running in a true browser
1820
- */
1821
- const IS_BROWSER = typeof navigator !== 'undefined' && !navigator.userAgent.includes('jsdom');
1822
-
1823
1808
  /**
1824
1809
  * Component display name.
1825
1810
  */
1826
- const COMPONENT_NAME$17 = 'DatePickerControlled';
1811
+ const COMPONENT_NAME$16 = 'DatePickerControlled';
1827
1812
 
1828
1813
  /**
1829
1814
  * DatePickerControlled component.
@@ -1858,7 +1843,7 @@ const DatePickerControlled = forwardRef((props, ref) => {
1858
1843
  const {
1859
1844
  block,
1860
1845
  element
1861
- } = useClassnames(CLASSNAME$17);
1846
+ } = useClassnames(CLASSNAME$15);
1862
1847
  const selectedYear = selectedMonth.getFullYear();
1863
1848
  const formattedYear = selectedMonth.toLocaleDateString(locale, {
1864
1849
  year: 'numeric'
@@ -1931,7 +1916,7 @@ const DatePickerControlled = forwardRef((props, ref) => {
1931
1916
  label: /*#__PURE__*/jsxs(Fragment, {
1932
1917
  children: [/*#__PURE__*/jsx("span", {
1933
1918
  "aria-live": labelAriaLive,
1934
- className: onMonthChange ? VISUALLY_HIDDEN : '',
1919
+ className: onMonthChange ? cls.visuallyHidden() : undefined,
1935
1920
  dir: "auto",
1936
1921
  children: monthYear
1937
1922
  }), onMonthChange && /*#__PURE__*/jsx(FlexBox, {
@@ -1988,7 +1973,7 @@ const DatePickerControlled = forwardRef((props, ref) => {
1988
1973
  const isToday = !isOutOfRange && date && isSameDay(date, new Date());
1989
1974
  const isSelected = date && value && isSameDay(value, date);
1990
1975
  return /*#__PURE__*/jsx("div", {
1991
- className: element(`days-wrapper`),
1976
+ className: element(`day-wrapper`),
1992
1977
  children: date && /*#__PURE__*/jsxs(Button, {
1993
1978
  ref: isSelected || !value && isToday ? todayOrSelectedDateRef : null,
1994
1979
  className: element(`month-day`, {
@@ -2002,7 +1987,7 @@ const DatePickerControlled = forwardRef((props, ref) => {
2002
1987
  "aria-hidden": true,
2003
1988
  children: formatDayNumber(locale, date)
2004
1989
  }), /*#__PURE__*/jsx("span", {
2005
- className: VISUALLY_HIDDEN,
1990
+ className: cls.visuallyHidden(),
2006
1991
  children: date.toLocaleDateString(locale, {
2007
1992
  day: 'numeric',
2008
1993
  month: 'long',
@@ -2017,8 +2002,8 @@ const DatePickerControlled = forwardRef((props, ref) => {
2017
2002
  })]
2018
2003
  });
2019
2004
  });
2020
- DatePickerControlled.displayName = COMPONENT_NAME$17;
2021
- DatePickerControlled.className = CLASSNAME$17;
2005
+ DatePickerControlled.displayName = COMPONENT_NAME$16;
2006
+ DatePickerControlled.className = CLASSNAME$15;
2022
2007
 
2023
2008
  /**
2024
2009
  * DatePicker component.
@@ -2060,8 +2045,8 @@ const DatePicker = forwardRef((props, ref) => {
2060
2045
  onMonthChange: setSelectedMonth
2061
2046
  });
2062
2047
  });
2063
- DatePicker.displayName = COMPONENT_NAME$18;
2064
- DatePicker.className = CLASSNAME$17;
2048
+ DatePicker.displayName = COMPONENT_NAME$17;
2049
+ DatePicker.className = CLASSNAME$15;
2065
2050
 
2066
2051
  const useBooleanState = defaultValue => {
2067
2052
  const [booleanValue, setBoolean] = useState(defaultValue);
@@ -2074,7 +2059,7 @@ const useBooleanState = defaultValue => {
2074
2059
  /**
2075
2060
  * Component display name.
2076
2061
  */
2077
- const COMPONENT_NAME$16 = 'DatePickerField';
2062
+ const COMPONENT_NAME$15 = 'DatePickerField';
2078
2063
 
2079
2064
  /**
2080
2065
  * DatePickerField component.
@@ -2163,7 +2148,22 @@ const DatePickerField = forwardRef((props, ref) => {
2163
2148
  }) : null]
2164
2149
  });
2165
2150
  });
2166
- DatePickerField.displayName = COMPONENT_NAME$16;
2151
+ DatePickerField.displayName = COMPONENT_NAME$15;
2152
+
2153
+ /**
2154
+ * Optional global `window` instance (not defined when running SSR).
2155
+ */
2156
+ const WINDOW = typeof window !== 'undefined' ? window : undefined;
2157
+
2158
+ /**
2159
+ * Optional global `document` instance (not defined when running SSR).
2160
+ */
2161
+ const DOCUMENT = typeof document !== 'undefined' ? document : undefined;
2162
+
2163
+ /**
2164
+ * Check if we are running in a true browser
2165
+ */
2166
+ const IS_BROWSER = typeof navigator !== 'undefined' && !navigator.userAgent.includes('jsdom');
2167
2167
 
2168
2168
  /**
2169
2169
  * Keep track of listeners, only the last registered listener gets activated at any point (previously registered
@@ -2649,17 +2649,17 @@ const isFooter$1 = isComponent('footer');
2649
2649
  /**
2650
2650
  * Component display name.
2651
2651
  */
2652
- const COMPONENT_NAME$15 = 'Dialog';
2652
+ const COMPONENT_NAME$14 = 'Dialog';
2653
2653
 
2654
2654
  /**
2655
2655
  * Component default class name and class prefix.
2656
2656
  */
2657
- const CLASSNAME$16 = 'lumx-dialog';
2657
+ const CLASSNAME$14 = 'lumx-dialog';
2658
2658
 
2659
2659
  /**
2660
2660
  * Component default props.
2661
2661
  */
2662
- const DEFAULT_PROPS$T = {
2662
+ const DEFAULT_PROPS$V = {
2663
2663
  size: Size.big,
2664
2664
  disableBodyScroll: true
2665
2665
  };
@@ -2690,11 +2690,11 @@ const Dialog = forwardRef((props, ref) => {
2690
2690
  parentElement,
2691
2691
  contentRef,
2692
2692
  preventAutoClose,
2693
- size = DEFAULT_PROPS$T.size,
2693
+ size = DEFAULT_PROPS$V.size,
2694
2694
  zIndex,
2695
2695
  dialogProps,
2696
2696
  onVisibilityChange,
2697
- disableBodyScroll = DEFAULT_PROPS$T.disableBodyScroll,
2697
+ disableBodyScroll = DEFAULT_PROPS$V.disableBodyScroll,
2698
2698
  preventCloseOnClick,
2699
2699
  preventCloseOnEscape,
2700
2700
  ...forwardedProps
@@ -2703,7 +2703,7 @@ const Dialog = forwardRef((props, ref) => {
2703
2703
  const {
2704
2704
  block,
2705
2705
  element
2706
- } = useClassnames(CLASSNAME$16);
2706
+ } = useClassnames(CLASSNAME$14);
2707
2707
 
2708
2708
  // eslint-disable-next-line react-hooks/rules-of-hooks
2709
2709
  const previousOpen = React__default.useRef(isOpen);
@@ -2833,24 +2833,24 @@ const Dialog = forwardRef((props, ref) => {
2833
2833
  })
2834
2834
  }) : null;
2835
2835
  });
2836
- Dialog.displayName = COMPONENT_NAME$15;
2837
- Dialog.className = CLASSNAME$16;
2838
- Dialog.defaultProps = DEFAULT_PROPS$T;
2836
+ Dialog.displayName = COMPONENT_NAME$14;
2837
+ Dialog.className = CLASSNAME$14;
2838
+ Dialog.defaultProps = DEFAULT_PROPS$V;
2839
2839
 
2840
2840
  /**
2841
2841
  * Component display name.
2842
2842
  */
2843
- const COMPONENT_NAME$14 = 'Divider';
2843
+ const COMPONENT_NAME$13 = 'Divider';
2844
2844
 
2845
2845
  /**
2846
2846
  * Component default class name and class prefix.
2847
2847
  */
2848
- const CLASSNAME$15 = 'lumx-divider';
2848
+ const CLASSNAME$13 = 'lumx-divider';
2849
2849
 
2850
2850
  /**
2851
2851
  * Component default props.
2852
2852
  */
2853
- const DEFAULT_PROPS$S = {};
2853
+ const DEFAULT_PROPS$U = {};
2854
2854
 
2855
2855
  /**
2856
2856
  * Divider component.
@@ -2868,7 +2868,7 @@ const Divider = forwardRef((props, ref) => {
2868
2868
  } = props;
2869
2869
  const {
2870
2870
  block
2871
- } = useClassnames(CLASSNAME$15);
2871
+ } = useClassnames(CLASSNAME$13);
2872
2872
  return /*#__PURE__*/jsx("hr", {
2873
2873
  ref: ref,
2874
2874
  ...forwardedProps,
@@ -2877,19 +2877,19 @@ const Divider = forwardRef((props, ref) => {
2877
2877
  }, className)
2878
2878
  });
2879
2879
  });
2880
- Divider.displayName = COMPONENT_NAME$14;
2881
- Divider.className = CLASSNAME$15;
2882
- Divider.defaultProps = DEFAULT_PROPS$S;
2880
+ Divider.displayName = COMPONENT_NAME$13;
2881
+ Divider.className = CLASSNAME$13;
2882
+ Divider.defaultProps = DEFAULT_PROPS$U;
2883
2883
 
2884
2884
  /**
2885
2885
  * Component display name.
2886
2886
  */
2887
- const COMPONENT_NAME$13 = 'DragHandle';
2887
+ const COMPONENT_NAME$12 = 'DragHandle';
2888
2888
 
2889
2889
  /**
2890
2890
  * Component default class name and class prefix.
2891
2891
  */
2892
- const CLASSNAME$14 = 'lumx-drag-handle';
2892
+ const CLASSNAME$12 = 'lumx-drag-handle';
2893
2893
 
2894
2894
  /**
2895
2895
  * DragHandle component.
@@ -2907,7 +2907,7 @@ const DragHandle = forwardRef((props, ref) => {
2907
2907
  } = props;
2908
2908
  const {
2909
2909
  block
2910
- } = useClassnames(CLASSNAME$14);
2910
+ } = useClassnames(CLASSNAME$12);
2911
2911
  return /*#__PURE__*/jsx("div", {
2912
2912
  ref: ref,
2913
2913
  ...forwardedProps,
@@ -2921,8 +2921,8 @@ const DragHandle = forwardRef((props, ref) => {
2921
2921
  })
2922
2922
  });
2923
2923
  });
2924
- DragHandle.displayName = COMPONENT_NAME$13;
2925
- DragHandle.className = CLASSNAME$14;
2924
+ DragHandle.displayName = COMPONENT_NAME$12;
2925
+ DragHandle.className = CLASSNAME$12;
2926
2926
 
2927
2927
  const INITIAL_INDEX = -1;
2928
2928
 
@@ -3091,17 +3091,17 @@ const useKeyboardListNavigation = (items, ref, onListItemSelected, onListItemNav
3091
3091
  /**
3092
3092
  * Component display name.
3093
3093
  */
3094
- const COMPONENT_NAME$12 = 'List';
3094
+ const COMPONENT_NAME$11 = 'List';
3095
3095
 
3096
3096
  /**
3097
3097
  * Component default class name and class prefix.
3098
3098
  */
3099
- const CLASSNAME$13 = 'lumx-list';
3099
+ const CLASSNAME$11 = 'lumx-list';
3100
3100
 
3101
3101
  /**
3102
3102
  * Component default props.
3103
3103
  */
3104
- const DEFAULT_PROPS$R = {
3104
+ const DEFAULT_PROPS$T = {
3105
3105
  tabIndex: -1
3106
3106
  };
3107
3107
 
@@ -3120,12 +3120,12 @@ const InternalList = forwardRef((props, ref) => {
3120
3120
  isClickable,
3121
3121
  itemPadding,
3122
3122
  onListItemSelected,
3123
- tabIndex = DEFAULT_PROPS$R.tabIndex,
3123
+ tabIndex = DEFAULT_PROPS$T.tabIndex,
3124
3124
  ...forwardedProps
3125
3125
  } = props;
3126
3126
  const {
3127
3127
  block
3128
- } = useClassnames(CLASSNAME$13);
3128
+ } = useClassnames(CLASSNAME$11);
3129
3129
  const padding = itemPadding ?? (isClickable ? Size.big : undefined);
3130
3130
  return /*#__PURE__*/jsx("ul", {
3131
3131
  ...forwardedProps,
@@ -3137,9 +3137,9 @@ const InternalList = forwardRef((props, ref) => {
3137
3137
  children: children
3138
3138
  });
3139
3139
  });
3140
- InternalList.displayName = COMPONENT_NAME$12;
3141
- InternalList.className = CLASSNAME$13;
3142
- InternalList.defaultProps = DEFAULT_PROPS$R;
3140
+ InternalList.displayName = COMPONENT_NAME$11;
3141
+ InternalList.className = CLASSNAME$11;
3142
+ InternalList.defaultProps = DEFAULT_PROPS$T;
3143
3143
  const List = Object.assign(InternalList, {
3144
3144
  useKeyboardListNavigation
3145
3145
  });
@@ -5574,17 +5574,17 @@ function usePopoverStyle({
5574
5574
  /**
5575
5575
  * Component display name.
5576
5576
  */
5577
- const COMPONENT_NAME$11 = 'Popover';
5577
+ const COMPONENT_NAME$10 = 'Popover';
5578
5578
 
5579
5579
  /**
5580
5580
  * Component default class name and class prefix.
5581
5581
  */
5582
- const CLASSNAME$12 = 'lumx-popover';
5582
+ const CLASSNAME$10 = 'lumx-popover';
5583
5583
 
5584
5584
  /**
5585
5585
  * Component default props.
5586
5586
  */
5587
- const DEFAULT_PROPS$Q = {
5587
+ const DEFAULT_PROPS$S = {
5588
5588
  elevation: 3,
5589
5589
  placement: Placement.AUTO,
5590
5590
  focusAnchorOnClose: true,
@@ -5597,7 +5597,7 @@ const _InnerPopover = forwardRef((props, ref) => {
5597
5597
  const {
5598
5598
  block,
5599
5599
  element
5600
- } = useClassnames(CLASSNAME$12);
5600
+ } = useClassnames(CLASSNAME$10);
5601
5601
  const {
5602
5602
  anchorRef,
5603
5603
  as: Component = 'div',
@@ -5605,24 +5605,24 @@ const _InnerPopover = forwardRef((props, ref) => {
5605
5605
  className,
5606
5606
  closeOnClickAway,
5607
5607
  closeOnEscape,
5608
- elevation = DEFAULT_PROPS$Q.elevation,
5608
+ elevation = DEFAULT_PROPS$S.elevation,
5609
5609
  focusElement,
5610
5610
  hasArrow,
5611
5611
  isOpen,
5612
5612
  onClose,
5613
5613
  parentElement,
5614
- usePortal = DEFAULT_PROPS$Q.usePortal,
5615
- focusAnchorOnClose = DEFAULT_PROPS$Q.focusAnchorOnClose,
5614
+ usePortal = DEFAULT_PROPS$S.usePortal,
5615
+ focusAnchorOnClose = DEFAULT_PROPS$S.focusAnchorOnClose,
5616
5616
  withFocusTrap,
5617
5617
  boundaryRef,
5618
5618
  fitToAnchorWidth,
5619
5619
  fitWithinViewportHeight,
5620
5620
  focusTrapZoneElement,
5621
5621
  offset,
5622
- placement = DEFAULT_PROPS$Q.placement,
5622
+ placement = DEFAULT_PROPS$S.placement,
5623
5623
  style,
5624
5624
  theme,
5625
- zIndex = DEFAULT_PROPS$Q.zIndex,
5625
+ zIndex = DEFAULT_PROPS$S.zIndex,
5626
5626
  ...forwardedProps
5627
5627
  } = props;
5628
5628
  const popoverRef = useRef(null);
@@ -5693,7 +5693,7 @@ const _InnerPopover = forwardRef((props, ref) => {
5693
5693
  })
5694
5694
  }) : null;
5695
5695
  });
5696
- _InnerPopover.displayName = COMPONENT_NAME$11;
5696
+ _InnerPopover.displayName = COMPONENT_NAME$10;
5697
5697
 
5698
5698
  /**
5699
5699
  * Popover component.
@@ -5705,9 +5705,9 @@ _InnerPopover.displayName = COMPONENT_NAME$11;
5705
5705
  const Popover = skipRender(
5706
5706
  // Skip render in SSR
5707
5707
  () => Boolean(DOCUMENT), _InnerPopover);
5708
- Popover.displayName = COMPONENT_NAME$11;
5709
- Popover.className = CLASSNAME$12;
5710
- Popover.defaultProps = DEFAULT_PROPS$Q;
5708
+ Popover.displayName = COMPONENT_NAME$10;
5709
+ Popover.className = CLASSNAME$10;
5710
+ Popover.defaultProps = DEFAULT_PROPS$S;
5711
5711
 
5712
5712
  // The error margin in px we want to have for triggering infinite scroll
5713
5713
  const SCROLL_TRIGGER_MARGIN = 5;
@@ -5753,17 +5753,17 @@ const useInfiniteScroll = (ref, callback, callbackOnMount = false, scrollTrigger
5753
5753
  /**
5754
5754
  * Component display name.
5755
5755
  */
5756
- const COMPONENT_NAME$10 = 'Dropdown';
5756
+ const COMPONENT_NAME$$ = 'Dropdown';
5757
5757
 
5758
5758
  /**
5759
5759
  * Component default class name and class prefix.
5760
5760
  */
5761
- const CLASSNAME$11 = 'lumx-dropdown';
5761
+ const CLASSNAME$$ = 'lumx-dropdown';
5762
5762
 
5763
5763
  /**
5764
5764
  * Component default props.
5765
5765
  */
5766
- const DEFAULT_PROPS$P = {
5766
+ const DEFAULT_PROPS$R = {
5767
5767
  closeOnClick: true,
5768
5768
  closeOnClickAway: true,
5769
5769
  closeOnEscape: true,
@@ -5786,18 +5786,18 @@ const Dropdown = forwardRef((props, ref) => {
5786
5786
  anchorRef,
5787
5787
  children,
5788
5788
  className,
5789
- closeOnClick = DEFAULT_PROPS$P.closeOnClick,
5790
- closeOnClickAway = DEFAULT_PROPS$P.closeOnClickAway,
5791
- closeOnEscape = DEFAULT_PROPS$P.closeOnEscape,
5792
- fitToAnchorWidth = DEFAULT_PROPS$P.fitToAnchorWidth,
5793
- fitWithinViewportHeight = DEFAULT_PROPS$P.fitWithinViewportHeight,
5789
+ closeOnClick = DEFAULT_PROPS$R.closeOnClick,
5790
+ closeOnClickAway = DEFAULT_PROPS$R.closeOnClickAway,
5791
+ closeOnEscape = DEFAULT_PROPS$R.closeOnEscape,
5792
+ fitToAnchorWidth = DEFAULT_PROPS$R.fitToAnchorWidth,
5793
+ fitWithinViewportHeight = DEFAULT_PROPS$R.fitWithinViewportHeight,
5794
5794
  isOpen,
5795
5795
  offset,
5796
- focusAnchorOnClose = DEFAULT_PROPS$P.focusAnchorOnClose,
5796
+ focusAnchorOnClose = DEFAULT_PROPS$R.focusAnchorOnClose,
5797
5797
  onClose,
5798
5798
  onInfiniteScroll,
5799
- placement = DEFAULT_PROPS$P.placement,
5800
- shouldFocusOnOpen = DEFAULT_PROPS$P.shouldFocusOnOpen,
5799
+ placement = DEFAULT_PROPS$R.placement,
5800
+ shouldFocusOnOpen = DEFAULT_PROPS$R.shouldFocusOnOpen,
5801
5801
  zIndex,
5802
5802
  ...forwardedProps
5803
5803
  } = props;
@@ -5806,7 +5806,7 @@ const Dropdown = forwardRef((props, ref) => {
5806
5806
  const {
5807
5807
  block,
5808
5808
  element
5809
- } = useClassnames(CLASSNAME$11);
5809
+ } = useClassnames(CLASSNAME$$);
5810
5810
  useInfiniteScroll(innerRef, onInfiniteScroll);
5811
5811
  const popperElement = useMemo(() => {
5812
5812
  return !Array.isArray(children) && isComponent(List)(children) ? /*#__PURE__*/cloneElement(children, {
@@ -5845,24 +5845,24 @@ const Dropdown = forwardRef((props, ref) => {
5845
5845
  })
5846
5846
  }) : null;
5847
5847
  });
5848
- Dropdown.displayName = COMPONENT_NAME$10;
5849
- Dropdown.className = CLASSNAME$11;
5850
- Dropdown.defaultProps = DEFAULT_PROPS$P;
5848
+ Dropdown.displayName = COMPONENT_NAME$$;
5849
+ Dropdown.className = CLASSNAME$$;
5850
+ Dropdown.defaultProps = DEFAULT_PROPS$R;
5851
5851
 
5852
5852
  /**
5853
5853
  * Component display name.
5854
5854
  */
5855
- const COMPONENT_NAME$$ = 'ExpansionPanel';
5855
+ const COMPONENT_NAME$_ = 'ExpansionPanel';
5856
5856
 
5857
5857
  /**
5858
5858
  * Component default class name and class prefix.
5859
5859
  */
5860
- const CLASSNAME$10 = 'lumx-expansion-panel';
5860
+ const CLASSNAME$_ = 'lumx-expansion-panel';
5861
5861
 
5862
5862
  /**
5863
5863
  * Component default props.
5864
5864
  */
5865
- const DEFAULT_PROPS$O = {
5865
+ const DEFAULT_PROPS$Q = {
5866
5866
  closeMode: 'unmount'
5867
5867
  };
5868
5868
  const isDragHandle = isComponent(DragHandle);
@@ -5880,7 +5880,7 @@ const ExpansionPanel = forwardRef((props, ref) => {
5880
5880
  const defaultTheme = useTheme() || Theme.light;
5881
5881
  const {
5882
5882
  className,
5883
- closeMode = DEFAULT_PROPS$O.closeMode,
5883
+ closeMode = DEFAULT_PROPS$Q.closeMode,
5884
5884
  children: anyChildren,
5885
5885
  hasBackground,
5886
5886
  hasHeaderDivider,
@@ -5896,7 +5896,7 @@ const ExpansionPanel = forwardRef((props, ref) => {
5896
5896
  const {
5897
5897
  block,
5898
5898
  element
5899
- } = useClassnames(CLASSNAME$10);
5899
+ } = useClassnames(CLASSNAME$_);
5900
5900
  const children = Children.toArray(anyChildren);
5901
5901
 
5902
5902
  // Partition children by types.
@@ -6000,13 +6000,13 @@ const ExpansionPanel = forwardRef((props, ref) => {
6000
6000
  })]
6001
6001
  });
6002
6002
  });
6003
- ExpansionPanel.displayName = COMPONENT_NAME$$;
6004
- ExpansionPanel.className = CLASSNAME$10;
6005
- ExpansionPanel.defaultProps = DEFAULT_PROPS$O;
6003
+ ExpansionPanel.displayName = COMPONENT_NAME$_;
6004
+ ExpansionPanel.className = CLASSNAME$_;
6005
+ ExpansionPanel.defaultProps = DEFAULT_PROPS$Q;
6006
6006
 
6007
- const COMPONENT_NAME$_ = 'Flag';
6008
- const CLASSNAME$$ = 'lumx-flag';
6009
- const DEFAULT_PROPS$N = {};
6007
+ const COMPONENT_NAME$Z = 'Flag';
6008
+ const CLASSNAME$Z = 'lumx-flag';
6009
+ const DEFAULT_PROPS$P = {};
6010
6010
 
6011
6011
  /**
6012
6012
  * Flag component.
@@ -6031,7 +6031,7 @@ const Flag = forwardRef((props, ref) => {
6031
6031
  const {
6032
6032
  block,
6033
6033
  element
6034
- } = useClassnames(CLASSNAME$$);
6034
+ } = useClassnames(CLASSNAME$Z);
6035
6035
  return /*#__PURE__*/jsxs("div", {
6036
6036
  ...forwardedProps,
6037
6037
  className: block({
@@ -6052,19 +6052,19 @@ const Flag = forwardRef((props, ref) => {
6052
6052
  })]
6053
6053
  });
6054
6054
  });
6055
- Flag.displayName = COMPONENT_NAME$_;
6056
- Flag.className = CLASSNAME$$;
6057
- Flag.defaultProps = DEFAULT_PROPS$N;
6055
+ Flag.displayName = COMPONENT_NAME$Z;
6056
+ Flag.className = CLASSNAME$Z;
6057
+ Flag.defaultProps = DEFAULT_PROPS$P;
6058
6058
 
6059
6059
  /**
6060
6060
  * Component display name.
6061
6061
  */
6062
- const COMPONENT_NAME$Z = 'FlexBox';
6062
+ const COMPONENT_NAME$Y = 'FlexBox';
6063
6063
 
6064
6064
  /**
6065
6065
  * Component default class name and class prefix.
6066
6066
  */
6067
- const CLASSNAME$_ = 'lumx-flex-box';
6067
+ const CLASSNAME$Y = 'lumx-flex-box';
6068
6068
 
6069
6069
  /**
6070
6070
  * FlexBox component.
@@ -6090,7 +6090,7 @@ const FlexBox = forwardRef((props, ref) => {
6090
6090
  } = props;
6091
6091
  const {
6092
6092
  block
6093
- } = useClassnames(CLASSNAME$_);
6093
+ } = useClassnames(CLASSNAME$Y);
6094
6094
  const computedOrientation = orientation ?? (wrap || hAlign || vAlign ? Orientation.horizontal : null);
6095
6095
  const marginAutoModifiers = marginAuto && castArray(marginAuto).reduce((acc, align) => ({
6096
6096
  ...acc,
@@ -6112,23 +6112,23 @@ const FlexBox = forwardRef((props, ref) => {
6112
6112
  children: children
6113
6113
  });
6114
6114
  });
6115
- FlexBox.displayName = COMPONENT_NAME$Z;
6116
- FlexBox.className = CLASSNAME$_;
6115
+ FlexBox.displayName = COMPONENT_NAME$Y;
6116
+ FlexBox.className = CLASSNAME$Y;
6117
6117
 
6118
6118
  /**
6119
6119
  * Component display name.
6120
6120
  */
6121
- const COMPONENT_NAME$Y = 'GenericBlock';
6121
+ const COMPONENT_NAME$X = 'GenericBlock';
6122
6122
 
6123
6123
  /**
6124
6124
  * Component default class name and class prefix.
6125
6125
  */
6126
- const CLASSNAME$Z = 'lumx-generic-block';
6126
+ const CLASSNAME$X = 'lumx-generic-block';
6127
6127
 
6128
6128
  /**
6129
6129
  * Component default props.
6130
6130
  */
6131
- const DEFAULT_PROPS$M = {
6131
+ const DEFAULT_PROPS$O = {
6132
6132
  gap: Size.big,
6133
6133
  orientation: Orientation.horizontal
6134
6134
  };
@@ -6158,15 +6158,15 @@ const BaseGenericBlock = forwardRef((props, ref) => {
6158
6158
  children,
6159
6159
  actions,
6160
6160
  actionsProps,
6161
- gap = DEFAULT_PROPS$M.gap,
6162
- orientation = DEFAULT_PROPS$M.orientation,
6161
+ gap = DEFAULT_PROPS$O.gap,
6162
+ orientation = DEFAULT_PROPS$O.orientation,
6163
6163
  contentProps,
6164
6164
  ...forwardedProps
6165
6165
  } = props;
6166
6166
  const {
6167
6167
  block,
6168
6168
  element
6169
- } = useClassnames(CLASSNAME$Z);
6169
+ } = useClassnames(CLASSNAME$X);
6170
6170
  const sections = React__default.useMemo(() => {
6171
6171
  // Split children by section type
6172
6172
  const [[figureChild], [contentChild], [actionsChild], ...otherChildren] = partitionMulti(Children.toArray(children), [isFigure, isContent, isActions]);
@@ -6215,9 +6215,9 @@ const BaseGenericBlock = forwardRef((props, ref) => {
6215
6215
  })]
6216
6216
  });
6217
6217
  });
6218
- BaseGenericBlock.displayName = COMPONENT_NAME$Y;
6219
- BaseGenericBlock.className = CLASSNAME$Z;
6220
- BaseGenericBlock.defaultProps = DEFAULT_PROPS$M;
6218
+ BaseGenericBlock.displayName = COMPONENT_NAME$X;
6219
+ BaseGenericBlock.className = CLASSNAME$X;
6220
+ BaseGenericBlock.defaultProps = DEFAULT_PROPS$O;
6221
6221
  const GenericBlock = Object.assign(BaseGenericBlock, {
6222
6222
  Figure,
6223
6223
  Content,
@@ -6256,7 +6256,7 @@ const useOverflowTooltipLabel = content => {
6256
6256
  // Not inside a tooltip
6257
6257
  !parentTooltip && labelElement &&
6258
6258
  // Not inside a visually hidden
6259
- !labelElement?.closest(`.${VISUALLY_HIDDEN}`) &&
6259
+ !labelElement?.closest(`.${cls.visuallyHidden()}`) &&
6260
6260
  // Text overflows
6261
6261
  labelElement.offsetWidth < labelElement.scrollWidth) {
6262
6262
  // Set tooltip label
@@ -6288,17 +6288,17 @@ function wrapChildrenIconWithSpaces(children) {
6288
6288
  /**
6289
6289
  * Component display name.
6290
6290
  */
6291
- const COMPONENT_NAME$X = 'Text';
6291
+ const COMPONENT_NAME$W = 'Text';
6292
6292
 
6293
6293
  /**
6294
6294
  * Component default class name and class prefix.
6295
6295
  */
6296
- const CLASSNAME$Y = 'lumx-text';
6296
+ const CLASSNAME$W = 'lumx-text';
6297
6297
 
6298
6298
  /**
6299
6299
  * Component default props.
6300
6300
  */
6301
- const DEFAULT_PROPS$L = {};
6301
+ const DEFAULT_PROPS$N = {};
6302
6302
 
6303
6303
  /**
6304
6304
  * Text component.
@@ -6323,7 +6323,7 @@ const Text = forwardRef((props, ref) => {
6323
6323
  } = props;
6324
6324
  const {
6325
6325
  block
6326
- } = useClassnames(CLASSNAME$Y);
6326
+ } = useClassnames(CLASSNAME$W);
6327
6327
 
6328
6328
  // Truncate mode
6329
6329
  const truncateLinesStyle = typeof truncate === 'object' && truncate.lines > 1 && {
@@ -6361,9 +6361,9 @@ const Text = forwardRef((props, ref) => {
6361
6361
  children: wrapChildrenIconWithSpaces(children)
6362
6362
  });
6363
6363
  });
6364
- Text.displayName = COMPONENT_NAME$X;
6365
- Text.className = CLASSNAME$Y;
6366
- Text.defaultProps = DEFAULT_PROPS$L;
6364
+ Text.displayName = COMPONENT_NAME$W;
6365
+ Text.className = CLASSNAME$W;
6366
+ Text.defaultProps = DEFAULT_PROPS$N;
6367
6367
 
6368
6368
  /** The maximum authorized heading level. */
6369
6369
  const MAX_HEADING_LEVEL = 6;
@@ -6400,17 +6400,17 @@ const useHeadingLevel = () => {
6400
6400
  /**
6401
6401
  * Component display name.
6402
6402
  */
6403
- const COMPONENT_NAME$W = 'Heading';
6403
+ const COMPONENT_NAME$V = 'Heading';
6404
6404
 
6405
6405
  /**
6406
6406
  * Component default class name and class prefix.
6407
6407
  */
6408
- const CLASSNAME$X = 'lumx-heading';
6408
+ const CLASSNAME$V = 'lumx-heading';
6409
6409
 
6410
6410
  /**
6411
6411
  * Component default props.
6412
6412
  */
6413
- const DEFAULT_PROPS$K = {};
6413
+ const DEFAULT_PROPS$M = {};
6414
6414
 
6415
6415
  /**
6416
6416
  * Renders a heading component.
@@ -6429,7 +6429,7 @@ const Heading = forwardRef((props, ref) => {
6429
6429
  } = useHeadingLevel();
6430
6430
  const {
6431
6431
  block
6432
- } = useClassnames(CLASSNAME$X);
6432
+ } = useClassnames(CLASSNAME$V);
6433
6433
  const computedHeadingElement = as || headingElement;
6434
6434
  return /*#__PURE__*/jsx(Text, {
6435
6435
  ref: ref,
@@ -6440,9 +6440,9 @@ const Heading = forwardRef((props, ref) => {
6440
6440
  children: children
6441
6441
  });
6442
6442
  });
6443
- Heading.displayName = COMPONENT_NAME$W;
6444
- Heading.className = CLASSNAME$X;
6445
- Heading.defaultProps = DEFAULT_PROPS$K;
6443
+ Heading.displayName = COMPONENT_NAME$V;
6444
+ Heading.className = CLASSNAME$V;
6445
+ Heading.defaultProps = DEFAULT_PROPS$M;
6446
6446
 
6447
6447
  /**
6448
6448
  * Provide a new heading level context.
@@ -6470,17 +6470,17 @@ const HeadingLevelProvider = ({
6470
6470
  /**
6471
6471
  * Component display name.
6472
6472
  */
6473
- const COMPONENT_NAME$V = 'Grid';
6473
+ const COMPONENT_NAME$U = 'Grid';
6474
6474
 
6475
6475
  /**
6476
6476
  * Component default class name and class prefix.
6477
6477
  */
6478
- const CLASSNAME$W = 'lumx-grid';
6478
+ const CLASSNAME$U = 'lumx-grid';
6479
6479
 
6480
6480
  /**
6481
6481
  * Component default props.
6482
6482
  */
6483
- const DEFAULT_PROPS$J = {
6483
+ const DEFAULT_PROPS$L = {
6484
6484
  orientation: Orientation.horizontal,
6485
6485
  wrap: 'nowrap'
6486
6486
  };
@@ -6498,14 +6498,14 @@ const Grid = forwardRef((props, ref) => {
6498
6498
  className,
6499
6499
  gutter,
6500
6500
  hAlign,
6501
- orientation = DEFAULT_PROPS$J.orientation,
6501
+ orientation = DEFAULT_PROPS$L.orientation,
6502
6502
  vAlign,
6503
- wrap = DEFAULT_PROPS$J.wrap,
6503
+ wrap = DEFAULT_PROPS$L.wrap,
6504
6504
  ...forwardedProps
6505
6505
  } = props;
6506
6506
  const {
6507
6507
  block
6508
- } = useClassnames(CLASSNAME$W);
6508
+ } = useClassnames(CLASSNAME$U);
6509
6509
  return /*#__PURE__*/jsx("div", {
6510
6510
  ref: ref,
6511
6511
  ...forwardedProps,
@@ -6520,19 +6520,19 @@ const Grid = forwardRef((props, ref) => {
6520
6520
  children: children
6521
6521
  });
6522
6522
  });
6523
- Grid.displayName = COMPONENT_NAME$V;
6524
- Grid.className = CLASSNAME$W;
6525
- Grid.defaultProps = DEFAULT_PROPS$J;
6523
+ Grid.displayName = COMPONENT_NAME$U;
6524
+ Grid.className = CLASSNAME$U;
6525
+ Grid.defaultProps = DEFAULT_PROPS$L;
6526
6526
 
6527
6527
  /**
6528
6528
  * Component display name.
6529
6529
  */
6530
- const COMPONENT_NAME$U = 'GridItem';
6530
+ const COMPONENT_NAME$T = 'GridItem';
6531
6531
 
6532
6532
  /**
6533
6533
  * Component default class name and class prefix.
6534
6534
  */
6535
- const CLASSNAME$V = 'lumx-grid-item';
6535
+ const CLASSNAME$T = 'lumx-grid-item';
6536
6536
 
6537
6537
  /**
6538
6538
  * GridItem component.
@@ -6552,7 +6552,7 @@ const GridItem = forwardRef((props, ref) => {
6552
6552
  } = props;
6553
6553
  const {
6554
6554
  block
6555
- } = useClassnames(CLASSNAME$V);
6555
+ } = useClassnames(CLASSNAME$T);
6556
6556
  return /*#__PURE__*/jsx("div", {
6557
6557
  ref: ref,
6558
6558
  ...forwardedProps,
@@ -6564,23 +6564,23 @@ const GridItem = forwardRef((props, ref) => {
6564
6564
  children: children
6565
6565
  });
6566
6566
  });
6567
- GridItem.displayName = COMPONENT_NAME$U;
6568
- GridItem.className = CLASSNAME$V;
6567
+ GridItem.displayName = COMPONENT_NAME$T;
6568
+ GridItem.className = CLASSNAME$T;
6569
6569
 
6570
6570
  /**
6571
6571
  * Component display name.
6572
6572
  */
6573
- const COMPONENT_NAME$T = 'GridColumn';
6573
+ const COMPONENT_NAME$S = 'GridColumn';
6574
6574
 
6575
6575
  /**
6576
6576
  * Component default class name and class prefix.
6577
6577
  */
6578
- const CLASSNAME$U = 'lumx-grid-column';
6578
+ const CLASSNAME$S = 'lumx-grid-column';
6579
6579
 
6580
6580
  /**
6581
6581
  * Component default props.
6582
6582
  */
6583
- const DEFAULT_PROPS$I = {};
6583
+ const DEFAULT_PROPS$K = {};
6584
6584
 
6585
6585
  /**
6586
6586
  * The GridColumn is a layout component that can display children in a grid
@@ -6604,7 +6604,7 @@ const GridColumn = forwardRef((props, ref) => {
6604
6604
  } = props;
6605
6605
  const {
6606
6606
  block
6607
- } = useClassnames(CLASSNAME$U);
6607
+ } = useClassnames(CLASSNAME$S);
6608
6608
  return /*#__PURE__*/jsx(Component, {
6609
6609
  ...forwardedProps,
6610
6610
  ref: ref,
@@ -6618,24 +6618,31 @@ const GridColumn = forwardRef((props, ref) => {
6618
6618
  children: children
6619
6619
  });
6620
6620
  });
6621
- GridColumn.displayName = COMPONENT_NAME$T;
6622
- GridColumn.className = CLASSNAME$U;
6623
- GridColumn.defaultProps = DEFAULT_PROPS$I;
6621
+ GridColumn.displayName = COMPONENT_NAME$S;
6622
+ GridColumn.className = CLASSNAME$S;
6623
+ GridColumn.defaultProps = DEFAULT_PROPS$K;
6624
+
6625
+ /** Resolve color & color variant from a `ColorWithVariants` and optionally a `ColorVariant`. */
6626
+ function resolveColorWithVariants(colorWithVariants, colorVariant) {
6627
+ if (!colorWithVariants) return [undefined, colorVariant];
6628
+ const [color, baseColorVariant] = colorWithVariants.split('-');
6629
+ return [color, colorVariant || baseColorVariant];
6630
+ }
6624
6631
 
6625
6632
  /**
6626
6633
  * Component display name.
6627
6634
  */
6628
- const COMPONENT_NAME$S = 'Icon';
6635
+ const COMPONENT_NAME$R = 'Icon';
6629
6636
 
6630
6637
  /**
6631
6638
  * Component default class name and class prefix.
6632
6639
  */
6633
- const CLASSNAME$T = 'lumx-icon';
6640
+ const CLASSNAME$R = 'lumx-icon';
6634
6641
 
6635
6642
  /**
6636
6643
  * Component default props.
6637
6644
  */
6638
- const DEFAULT_PROPS$H = {};
6645
+ const DEFAULT_PROPS$J = {};
6639
6646
 
6640
6647
  /**
6641
6648
  * Icon component.
@@ -6659,7 +6666,7 @@ const Icon = forwardRef((props, ref) => {
6659
6666
  } = props;
6660
6667
  const {
6661
6668
  block
6662
- } = useClassnames(CLASSNAME$T);
6669
+ } = useClassnames(CLASSNAME$R);
6663
6670
  const [color, colorVariant] = resolveColorWithVariants(propColor, propColorVariant);
6664
6671
 
6665
6672
  // Color
@@ -6716,15 +6723,15 @@ const Icon = forwardRef((props, ref) => {
6716
6723
  })
6717
6724
  });
6718
6725
  });
6719
- Icon.displayName = COMPONENT_NAME$S;
6720
- Icon.className = CLASSNAME$T;
6721
- Icon.defaultProps = DEFAULT_PROPS$H;
6726
+ Icon.displayName = COMPONENT_NAME$R;
6727
+ Icon.className = CLASSNAME$R;
6728
+ Icon.defaultProps = DEFAULT_PROPS$J;
6722
6729
 
6723
6730
  /** Internal component used to render image captions */
6724
6731
  const ImageCaption = props => {
6725
6732
  const defaultTheme = useTheme();
6726
6733
  const {
6727
- baseClassName,
6734
+ className,
6728
6735
  theme = defaultTheme,
6729
6736
  as = 'figcaption',
6730
6737
  title,
@@ -6732,7 +6739,9 @@ const ImageCaption = props => {
6732
6739
  description,
6733
6740
  descriptionProps,
6734
6741
  tags,
6742
+ tagsProps,
6735
6743
  captionStyle,
6744
+ captionProps,
6736
6745
  align,
6737
6746
  truncate
6738
6747
  } = props;
@@ -6751,12 +6760,9 @@ const ImageCaption = props => {
6751
6760
  } : {
6752
6761
  dangerouslySetInnerHTML: description
6753
6762
  };
6754
-
6755
- // Create element class name generator if baseClassName is provided
6756
- const element = baseClassName ? cls.bem.element(baseClassName) : undefined;
6757
6763
  return /*#__PURE__*/jsxs(FlexBox, {
6758
6764
  as: as,
6759
- className: element?.('wrapper'),
6765
+ className: className,
6760
6766
  style: captionStyle,
6761
6767
  orientation: "vertical",
6762
6768
  vAlign: align,
@@ -6764,25 +6770,23 @@ const ImageCaption = props => {
6764
6770
  gap: "regular",
6765
6771
  children: [(title || description) && /*#__PURE__*/jsxs(Text, {
6766
6772
  as: "p",
6767
- className: element?.('caption'),
6773
+ ...captionProps,
6768
6774
  truncate: truncate,
6769
6775
  ...baseColor,
6770
6776
  children: [title && /*#__PURE__*/jsx(Text, {
6771
6777
  ...titleProps,
6772
6778
  as: "span",
6773
- className: element?.('title', undefined, titleProps?.className),
6774
6779
  typography: "subtitle1",
6775
6780
  ...titleColor,
6776
6781
  children: title
6777
6782
  }), ' ', description && /*#__PURE__*/jsx(Text, {
6778
6783
  ...descriptionProps,
6779
6784
  as: "span",
6780
- className: element?.('description', undefined, descriptionProps?.className),
6781
6785
  typography: "body1",
6782
6786
  ...descriptionContent
6783
6787
  })]
6784
6788
  }), tags && /*#__PURE__*/jsx(FlexBox, {
6785
- className: element?.('tags'),
6789
+ ...tagsProps,
6786
6790
  orientation: "horizontal",
6787
6791
  vAlign: align,
6788
6792
  children: tags
@@ -6806,17 +6810,17 @@ const ImageBlockCaptionPosition = {
6806
6810
  /**
6807
6811
  * Component display name.
6808
6812
  */
6809
- const COMPONENT_NAME$R = 'ImageBlock';
6813
+ const COMPONENT_NAME$Q = 'ImageBlock';
6810
6814
 
6811
6815
  /**
6812
6816
  * Component default class name and class prefix.
6813
6817
  */
6814
- const CLASSNAME$S = 'lumx-image-block';
6818
+ const CLASSNAME$Q = 'lumx-image-block';
6815
6819
 
6816
6820
  /**
6817
6821
  * Component default props.
6818
6822
  */
6819
- const DEFAULT_PROPS$G = {
6823
+ const DEFAULT_PROPS$I = {
6820
6824
  captionPosition: ImageBlockCaptionPosition.below,
6821
6825
  align: Alignment.left
6822
6826
  };
@@ -6832,9 +6836,9 @@ const ImageBlock = forwardRef((props, ref) => {
6832
6836
  const defaultTheme = useTheme() || Theme.light;
6833
6837
  const {
6834
6838
  actions,
6835
- align = DEFAULT_PROPS$G.align,
6839
+ align = DEFAULT_PROPS$I.align,
6836
6840
  alt,
6837
- captionPosition = DEFAULT_PROPS$G.captionPosition,
6841
+ captionPosition = DEFAULT_PROPS$I.captionPosition,
6838
6842
  captionStyle,
6839
6843
  className,
6840
6844
  description,
@@ -6852,7 +6856,7 @@ const ImageBlock = forwardRef((props, ref) => {
6852
6856
  const {
6853
6857
  block,
6854
6858
  element
6855
- } = useClassnames(CLASSNAME$S);
6859
+ } = useClassnames(CLASSNAME$Q);
6856
6860
  return /*#__PURE__*/jsxs("figure", {
6857
6861
  ref: ref,
6858
6862
  ...forwardedProps,
@@ -6874,14 +6878,26 @@ const ImageBlock = forwardRef((props, ref) => {
6874
6878
  alt: alt || title
6875
6879
  }), /*#__PURE__*/jsx(ImageCaption, {
6876
6880
  as: "figcaption",
6877
- baseClassName: CLASSNAME$S,
6881
+ className: element('wrapper'),
6878
6882
  theme: theme,
6879
6883
  title: title,
6880
- titleProps: titleProps,
6884
+ titleProps: {
6885
+ ...titleProps,
6886
+ className: element('title', [titleProps?.className])
6887
+ },
6881
6888
  description: description,
6882
- descriptionProps: descriptionProps,
6889
+ descriptionProps: {
6890
+ ...descriptionProps,
6891
+ className: element('description', [descriptionProps?.className])
6892
+ },
6883
6893
  tags: tags,
6894
+ tagsProps: {
6895
+ className: element('tags')
6896
+ },
6884
6897
  captionStyle: captionStyle,
6898
+ captionProps: {
6899
+ className: element('caption')
6900
+ },
6885
6901
  align: align,
6886
6902
  truncate: captionPosition === 'over'
6887
6903
  }), actions && /*#__PURE__*/jsx("div", {
@@ -6890,19 +6906,19 @@ const ImageBlock = forwardRef((props, ref) => {
6890
6906
  })]
6891
6907
  });
6892
6908
  });
6893
- ImageBlock.displayName = COMPONENT_NAME$R;
6894
- ImageBlock.className = CLASSNAME$S;
6895
- ImageBlock.defaultProps = DEFAULT_PROPS$G;
6909
+ ImageBlock.displayName = COMPONENT_NAME$Q;
6910
+ ImageBlock.className = CLASSNAME$Q;
6911
+ ImageBlock.defaultProps = DEFAULT_PROPS$I;
6896
6912
 
6897
6913
  /**
6898
6914
  * Component display name.
6899
6915
  */
6900
- const COMPONENT_NAME$Q = 'ImageLightbox';
6916
+ const COMPONENT_NAME$P = 'ImageLightbox';
6901
6917
 
6902
6918
  /**
6903
6919
  * Component default class name and class prefix.
6904
6920
  */
6905
- const CLASSNAME$R = 'lumx-image-lightbox';
6921
+ const CLASSNAME$P = 'lumx-image-lightbox';
6906
6922
 
6907
6923
  /**
6908
6924
  * Observe element size (only works if it's size depends on the window size).
@@ -7162,7 +7178,7 @@ const ImageSlide = /*#__PURE__*/React__default.memo(props => {
7162
7178
  } = props;
7163
7179
  const {
7164
7180
  element
7165
- } = useClassnames(CLASSNAME$R);
7181
+ } = useClassnames(CLASSNAME$P);
7166
7182
 
7167
7183
  // Get scroll area size
7168
7184
  const scrollAreaRef = React__default.useRef(null);
@@ -7266,7 +7282,7 @@ const ImageSlideshow = ({
7266
7282
  });
7267
7283
  const {
7268
7284
  element
7269
- } = useClassnames(CLASSNAME$R);
7285
+ } = useClassnames(CLASSNAME$P);
7270
7286
 
7271
7287
  // Image metadata (caption)
7272
7288
  const title = images[activeIndex]?.title;
@@ -7486,7 +7502,7 @@ function useImageLightbox(props) {
7486
7502
  viewTransitionName: {
7487
7503
  source: currentImageRef,
7488
7504
  target: triggerImageRefs[currentIndex],
7489
- name: CLASSNAME$R
7505
+ name: CLASSNAME$P
7490
7506
  }
7491
7507
  });
7492
7508
  }
@@ -7538,7 +7554,7 @@ function useImageLightbox(props) {
7538
7554
  viewTransitionName: {
7539
7555
  source: triggerImage,
7540
7556
  target: currentImageRef,
7541
- name: CLASSNAME$R
7557
+ name: CLASSNAME$P
7542
7558
  }
7543
7559
  });
7544
7560
  }
@@ -7580,7 +7596,7 @@ const Inner = forwardRef((props, ref) => {
7580
7596
  } = props;
7581
7597
  const {
7582
7598
  block
7583
- } = useClassnames(CLASSNAME$R);
7599
+ } = useClassnames(CLASSNAME$P);
7584
7600
  const currentPaginationItemRef = React__default.useRef(null);
7585
7601
  const footerRef = React__default.useRef(null);
7586
7602
  const imageRef = React__default.useRef(null);
@@ -7624,8 +7640,8 @@ const Inner = forwardRef((props, ref) => {
7624
7640
  })
7625
7641
  });
7626
7642
  });
7627
- Inner.displayName = COMPONENT_NAME$Q;
7628
- Inner.className = CLASSNAME$R;
7643
+ Inner.displayName = COMPONENT_NAME$P;
7644
+ Inner.className = CLASSNAME$P;
7629
7645
 
7630
7646
  /**
7631
7647
  * ImageLightbox component.
@@ -7641,17 +7657,17 @@ const ImageLightbox = Object.assign(Inner, {
7641
7657
  /**
7642
7658
  * Component display name.
7643
7659
  */
7644
- const COMPONENT_NAME$P = 'InlineList';
7660
+ const COMPONENT_NAME$O = 'InlineList';
7645
7661
 
7646
7662
  /**
7647
7663
  * Component default class name and class prefix.
7648
7664
  */
7649
- const CLASSNAME$Q = 'lumx-inline-list';
7665
+ const CLASSNAME$O = 'lumx-inline-list';
7650
7666
 
7651
7667
  /**
7652
7668
  * Component default props.
7653
7669
  */
7654
- const DEFAULT_PROPS$F = {};
7670
+ const DEFAULT_PROPS$H = {};
7655
7671
 
7656
7672
  /**
7657
7673
  * InlineList component.
@@ -7673,7 +7689,7 @@ const InlineList = forwardRef((props, ref) => {
7673
7689
  const {
7674
7690
  block,
7675
7691
  element
7676
- } = useClassnames(CLASSNAME$Q);
7692
+ } = useClassnames(CLASSNAME$O);
7677
7693
  return (
7678
7694
  /*#__PURE__*/
7679
7695
  // eslint-disable-next-line jsx-a11y/no-redundant-roles
@@ -7706,9 +7722,9 @@ const InlineList = forwardRef((props, ref) => {
7706
7722
  })
7707
7723
  );
7708
7724
  });
7709
- InlineList.displayName = COMPONENT_NAME$P;
7710
- InlineList.className = CLASSNAME$Q;
7711
- InlineList.defaultProps = DEFAULT_PROPS$F;
7725
+ InlineList.displayName = COMPONENT_NAME$O;
7726
+ InlineList.className = CLASSNAME$O;
7727
+ InlineList.defaultProps = DEFAULT_PROPS$H;
7712
7728
 
7713
7729
  const INPUT_HELPER_CONFIGURATION = {
7714
7730
  error: {
@@ -7725,17 +7741,17 @@ const INPUT_HELPER_CONFIGURATION = {
7725
7741
  /**
7726
7742
  * Component display name.
7727
7743
  */
7728
- const COMPONENT_NAME$O = 'InputHelper';
7744
+ const COMPONENT_NAME$N = 'InputHelper';
7729
7745
 
7730
7746
  /**
7731
7747
  * Component default class name and class prefix.
7732
7748
  */
7733
- const CLASSNAME$P = 'lumx-input-helper';
7749
+ const CLASSNAME$N = 'lumx-input-helper';
7734
7750
 
7735
7751
  /**
7736
7752
  * Component default props.
7737
7753
  */
7738
- const DEFAULT_PROPS$E = {
7754
+ const DEFAULT_PROPS$G = {
7739
7755
  kind: Kind.info
7740
7756
  };
7741
7757
 
@@ -7751,7 +7767,7 @@ const InputHelper = forwardRef((props, ref) => {
7751
7767
  const {
7752
7768
  children,
7753
7769
  className,
7754
- kind = DEFAULT_PROPS$E.kind,
7770
+ kind = DEFAULT_PROPS$G.kind,
7755
7771
  theme = defaultTheme,
7756
7772
  ...forwardedProps
7757
7773
  } = props;
@@ -7760,7 +7776,7 @@ const InputHelper = forwardRef((props, ref) => {
7760
7776
  } = INPUT_HELPER_CONFIGURATION[kind] || {};
7761
7777
  const {
7762
7778
  block
7763
- } = useClassnames(CLASSNAME$P);
7779
+ } = useClassnames(CLASSNAME$N);
7764
7780
  return /*#__PURE__*/jsx("p", {
7765
7781
  ref: ref,
7766
7782
  ...forwardedProps,
@@ -7771,24 +7787,24 @@ const InputHelper = forwardRef((props, ref) => {
7771
7787
  children: children
7772
7788
  });
7773
7789
  });
7774
- InputHelper.displayName = COMPONENT_NAME$O;
7775
- InputHelper.className = CLASSNAME$P;
7776
- InputHelper.defaultProps = DEFAULT_PROPS$E;
7790
+ InputHelper.displayName = COMPONENT_NAME$N;
7791
+ InputHelper.className = CLASSNAME$N;
7792
+ InputHelper.defaultProps = DEFAULT_PROPS$G;
7777
7793
 
7778
7794
  /**
7779
7795
  * Component display name.
7780
7796
  */
7781
- const COMPONENT_NAME$N = 'InputLabel';
7797
+ const COMPONENT_NAME$M = 'InputLabel';
7782
7798
 
7783
7799
  /**
7784
7800
  * Component default class name and class prefix.
7785
7801
  */
7786
- const CLASSNAME$O = 'lumx-input-label';
7802
+ const CLASSNAME$M = 'lumx-input-label';
7787
7803
 
7788
7804
  /**
7789
7805
  * Component default props.
7790
7806
  */
7791
- const DEFAULT_PROPS$D = {};
7807
+ const DEFAULT_PROPS$F = {};
7792
7808
 
7793
7809
  /**
7794
7810
  * InputLabel component.
@@ -7810,7 +7826,7 @@ const InputLabel = forwardRef((props, ref) => {
7810
7826
  } = props;
7811
7827
  const {
7812
7828
  block
7813
- } = useClassnames(CLASSNAME$O);
7829
+ } = useClassnames(CLASSNAME$M);
7814
7830
  return /*#__PURE__*/jsx("label", {
7815
7831
  ref: ref,
7816
7832
  ...forwardedProps,
@@ -7823,19 +7839,19 @@ const InputLabel = forwardRef((props, ref) => {
7823
7839
  children: children
7824
7840
  });
7825
7841
  });
7826
- InputLabel.displayName = COMPONENT_NAME$N;
7827
- InputLabel.className = CLASSNAME$O;
7828
- InputLabel.defaultProps = DEFAULT_PROPS$D;
7842
+ InputLabel.displayName = COMPONENT_NAME$M;
7843
+ InputLabel.className = CLASSNAME$M;
7844
+ InputLabel.defaultProps = DEFAULT_PROPS$F;
7829
7845
 
7830
7846
  /**
7831
7847
  * Component display name.
7832
7848
  */
7833
- const COMPONENT_NAME$M = 'Lightbox';
7849
+ const COMPONENT_NAME$L = 'Lightbox';
7834
7850
 
7835
7851
  /**
7836
7852
  * Component default class name and class prefix.
7837
7853
  */
7838
- const CLASSNAME$N = 'lumx-lightbox';
7854
+ const CLASSNAME$L = 'lumx-lightbox';
7839
7855
 
7840
7856
  /**
7841
7857
  * Lightbox component.
@@ -7871,7 +7887,7 @@ const Lightbox = forwardRef((props, ref) => {
7871
7887
  const {
7872
7888
  block,
7873
7889
  element
7874
- } = useClassnames(CLASSNAME$N);
7890
+ } = useClassnames(CLASSNAME$L);
7875
7891
 
7876
7892
  // eslint-disable-next-line react-hooks/rules-of-hooks
7877
7893
  const childrenRef = useRef(null);
@@ -7964,18 +7980,18 @@ const Lightbox = forwardRef((props, ref) => {
7964
7980
  })
7965
7981
  });
7966
7982
  });
7967
- Lightbox.displayName = COMPONENT_NAME$M;
7968
- Lightbox.className = CLASSNAME$N;
7983
+ Lightbox.displayName = COMPONENT_NAME$L;
7984
+ Lightbox.className = CLASSNAME$L;
7969
7985
 
7970
7986
  /**
7971
7987
  * Component display name.
7972
7988
  */
7973
- const COMPONENT_NAME$L = 'Link';
7989
+ const COMPONENT_NAME$K = 'Link';
7974
7990
 
7975
7991
  /**
7976
7992
  * Component default class name and class prefix.
7977
7993
  */
7978
- const CLASSNAME$M = 'lumx-link';
7994
+ const CLASSNAME$K = 'lumx-link';
7979
7995
 
7980
7996
  /**
7981
7997
  * Link component.
@@ -8004,7 +8020,7 @@ const Link = forwardRef((props, ref) => {
8004
8020
  const {
8005
8021
  block,
8006
8022
  element
8007
- } = useClassnames(CLASSNAME$M);
8023
+ } = useClassnames(CLASSNAME$K);
8008
8024
  return /*#__PURE__*/jsx(RawClickable, {
8009
8025
  ref: ref,
8010
8026
  as: linkAs || (forwardedProps.href ? 'a' : 'button'),
@@ -8029,23 +8045,23 @@ const Link = forwardRef((props, ref) => {
8029
8045
  }))
8030
8046
  });
8031
8047
  });
8032
- Link.displayName = COMPONENT_NAME$L;
8033
- Link.className = CLASSNAME$M;
8048
+ Link.displayName = COMPONENT_NAME$K;
8049
+ Link.className = CLASSNAME$K;
8034
8050
 
8035
8051
  /**
8036
8052
  * Component display name.
8037
8053
  */
8038
- const COMPONENT_NAME$K = 'LinkPreview';
8054
+ const COMPONENT_NAME$J = 'LinkPreview';
8039
8055
 
8040
8056
  /**
8041
8057
  * Component default class name and class prefix.
8042
8058
  */
8043
- const CLASSNAME$L = 'lumx-link-preview';
8059
+ const CLASSNAME$J = 'lumx-link-preview';
8044
8060
 
8045
8061
  /**
8046
8062
  * Component default props.
8047
8063
  */
8048
- const DEFAULT_PROPS$C = {
8064
+ const DEFAULT_PROPS$E = {
8049
8065
  size: Size.regular,
8050
8066
  titleHeading: 'h2'
8051
8067
  };
@@ -8065,11 +8081,11 @@ const LinkPreview = forwardRef((props, ref) => {
8065
8081
  link,
8066
8082
  linkAs,
8067
8083
  linkProps,
8068
- size = DEFAULT_PROPS$C.size,
8084
+ size = DEFAULT_PROPS$E.size,
8069
8085
  theme = defaultTheme,
8070
8086
  thumbnailProps,
8071
8087
  title,
8072
- titleHeading = DEFAULT_PROPS$C.titleHeading,
8088
+ titleHeading = DEFAULT_PROPS$E.titleHeading,
8073
8089
  ...forwardedProps
8074
8090
  } = props;
8075
8091
  // Use title heading as title wrapper (see DEFAULT_PROPS for the default value).
@@ -8077,7 +8093,7 @@ const LinkPreview = forwardRef((props, ref) => {
8077
8093
  const {
8078
8094
  block,
8079
8095
  element
8080
- } = useClassnames(CLASSNAME$L);
8096
+ } = useClassnames(CLASSNAME$J);
8081
8097
  return /*#__PURE__*/jsx("article", {
8082
8098
  ref: ref,
8083
8099
  ...forwardedProps,
@@ -8138,9 +8154,9 @@ const LinkPreview = forwardRef((props, ref) => {
8138
8154
  })
8139
8155
  });
8140
8156
  });
8141
- LinkPreview.displayName = COMPONENT_NAME$K;
8142
- LinkPreview.className = CLASSNAME$L;
8143
- LinkPreview.defaultProps = DEFAULT_PROPS$C;
8157
+ LinkPreview.displayName = COMPONENT_NAME$J;
8158
+ LinkPreview.className = CLASSNAME$J;
8159
+ LinkPreview.defaultProps = DEFAULT_PROPS$E;
8144
8160
 
8145
8161
  /**
8146
8162
  * Render link with default <a> HTML component or a custom one provided by `linkAs`.
@@ -8159,17 +8175,17 @@ const renderLink = ({
8159
8175
  /**
8160
8176
  * Component display name.
8161
8177
  */
8162
- const COMPONENT_NAME$J = 'ListItem';
8178
+ const COMPONENT_NAME$I = 'ListItem';
8163
8179
 
8164
8180
  /**
8165
8181
  * Component default class name and class prefix.
8166
8182
  */
8167
- const CLASSNAME$K = 'lumx-list-item';
8183
+ const CLASSNAME$I = 'lumx-list-item';
8168
8184
 
8169
8185
  /**
8170
8186
  * Component default props.
8171
8187
  */
8172
- const DEFAULT_PROPS$B = {
8188
+ const DEFAULT_PROPS$D = {
8173
8189
  size: Size.regular
8174
8190
  };
8175
8191
 
@@ -8208,13 +8224,13 @@ const ListItem = forwardRef((props, ref) => {
8208
8224
  linkProps = {},
8209
8225
  linkRef,
8210
8226
  onItemSelected,
8211
- size = DEFAULT_PROPS$B.size,
8227
+ size = DEFAULT_PROPS$D.size,
8212
8228
  ...forwardedProps
8213
8229
  } = otherProps;
8214
8230
  const {
8215
8231
  block,
8216
8232
  element
8217
- } = useClassnames(CLASSNAME$K);
8233
+ } = useClassnames(CLASSNAME$I);
8218
8234
  const role = linkAs || linkProps.href ? 'link' : 'button';
8219
8235
  const onKeyDown = useMemo(() => {
8220
8236
  if (onItemSelected && role === 'link') return onEnterPressed(onItemSelected);
@@ -8267,19 +8283,19 @@ const ListItem = forwardRef((props, ref) => {
8267
8283
  })
8268
8284
  });
8269
8285
  });
8270
- ListItem.displayName = COMPONENT_NAME$J;
8271
- ListItem.className = CLASSNAME$K;
8272
- ListItem.defaultProps = DEFAULT_PROPS$B;
8286
+ ListItem.displayName = COMPONENT_NAME$I;
8287
+ ListItem.className = CLASSNAME$I;
8288
+ ListItem.defaultProps = DEFAULT_PROPS$D;
8273
8289
 
8274
8290
  /**
8275
8291
  * Component display name.
8276
8292
  */
8277
- const COMPONENT_NAME$I = 'ListDivider';
8293
+ const COMPONENT_NAME$H = 'ListDivider';
8278
8294
 
8279
8295
  /**
8280
8296
  * Component default class name and class prefix.
8281
8297
  */
8282
- const CLASSNAME$J = 'lumx-list-divider';
8298
+ const CLASSNAME$H = 'lumx-list-divider';
8283
8299
 
8284
8300
  /**
8285
8301
  * ListDivider component.
@@ -8295,25 +8311,25 @@ const ListDivider = forwardRef((props, ref) => {
8295
8311
  } = props;
8296
8312
  const {
8297
8313
  block
8298
- } = useClassnames(CLASSNAME$J);
8314
+ } = useClassnames(CLASSNAME$H);
8299
8315
  return /*#__PURE__*/jsx("li", {
8300
8316
  ref: ref,
8301
8317
  ...forwardedProps,
8302
8318
  className: block([className])
8303
8319
  });
8304
8320
  });
8305
- ListDivider.displayName = COMPONENT_NAME$I;
8306
- ListDivider.className = CLASSNAME$J;
8321
+ ListDivider.displayName = COMPONENT_NAME$H;
8322
+ ListDivider.className = CLASSNAME$H;
8307
8323
 
8308
8324
  /**
8309
8325
  * Component display name.
8310
8326
  */
8311
- const COMPONENT_NAME$H = 'ListSubheader';
8327
+ const COMPONENT_NAME$G = 'ListSubheader';
8312
8328
 
8313
8329
  /**
8314
8330
  * Component default class name and class prefix.
8315
8331
  */
8316
- const CLASSNAME$I = 'lumx-list-subheader';
8332
+ const CLASSNAME$G = 'lumx-list-subheader';
8317
8333
 
8318
8334
  /**
8319
8335
  * ListSubheader component.
@@ -8330,7 +8346,7 @@ const ListSubheader = forwardRef((props, ref) => {
8330
8346
  } = props;
8331
8347
  const {
8332
8348
  block
8333
- } = useClassnames(CLASSNAME$I);
8349
+ } = useClassnames(CLASSNAME$G);
8334
8350
  return /*#__PURE__*/jsx("li", {
8335
8351
  ref: ref,
8336
8352
  ...forwardedProps,
@@ -8338,18 +8354,18 @@ const ListSubheader = forwardRef((props, ref) => {
8338
8354
  children: children
8339
8355
  });
8340
8356
  });
8341
- ListSubheader.displayName = COMPONENT_NAME$H;
8342
- ListSubheader.className = CLASSNAME$I;
8357
+ ListSubheader.displayName = COMPONENT_NAME$G;
8358
+ ListSubheader.className = CLASSNAME$G;
8343
8359
 
8344
8360
  /**
8345
8361
  * Component display name.
8346
8362
  */
8347
- const COMPONENT_NAME$G = 'Message';
8363
+ const COMPONENT_NAME$F = 'Message';
8348
8364
 
8349
8365
  /**
8350
8366
  * Component default class name and class prefix.
8351
8367
  */
8352
- const CLASSNAME$H = 'lumx-message';
8368
+ const CLASSNAME$F = 'lumx-message';
8353
8369
 
8354
8370
  /**
8355
8371
  * Associative map from message kind to color and icon.
@@ -8384,7 +8400,7 @@ const Message = forwardRef((props, ref) => {
8384
8400
  const {
8385
8401
  block,
8386
8402
  element
8387
- } = useClassnames(CLASSNAME$H);
8403
+ } = useClassnames(CLASSNAME$F);
8388
8404
  const {
8389
8405
  children,
8390
8406
  className,
@@ -8427,23 +8443,23 @@ const Message = forwardRef((props, ref) => {
8427
8443
  })]
8428
8444
  });
8429
8445
  });
8430
- Message.displayName = COMPONENT_NAME$G;
8431
- Message.className = CLASSNAME$H;
8446
+ Message.displayName = COMPONENT_NAME$F;
8447
+ Message.className = CLASSNAME$F;
8432
8448
 
8433
8449
  /**
8434
8450
  * Component display name.
8435
8451
  */
8436
- const COMPONENT_NAME$F = 'Mosaic';
8452
+ const COMPONENT_NAME$E = 'Mosaic';
8437
8453
 
8438
8454
  /**
8439
8455
  * Component default class name and class prefix.
8440
8456
  */
8441
- const CLASSNAME$G = 'lumx-mosaic';
8457
+ const CLASSNAME$E = 'lumx-mosaic';
8442
8458
 
8443
8459
  /**
8444
8460
  * Component default props.
8445
8461
  */
8446
- const DEFAULT_PROPS$A = {};
8462
+ const DEFAULT_PROPS$C = {};
8447
8463
 
8448
8464
  /**
8449
8465
  * Mosaic component.
@@ -8464,7 +8480,7 @@ const Mosaic = forwardRef((props, ref) => {
8464
8480
  const {
8465
8481
  block,
8466
8482
  element
8467
- } = useClassnames(CLASSNAME$G);
8483
+ } = useClassnames(CLASSNAME$E);
8468
8484
  const handleImageClick = useMemo(() => {
8469
8485
  if (!onImageClick) return undefined;
8470
8486
  return (index, onClick) => event => {
@@ -8512,75 +8528,23 @@ const Mosaic = forwardRef((props, ref) => {
8512
8528
  })
8513
8529
  });
8514
8530
  });
8515
- Mosaic.displayName = COMPONENT_NAME$F;
8516
- Mosaic.className = CLASSNAME$G;
8517
- Mosaic.defaultProps = DEFAULT_PROPS$A;
8531
+ Mosaic.displayName = COMPONENT_NAME$E;
8532
+ Mosaic.className = CLASSNAME$E;
8533
+ Mosaic.defaultProps = DEFAULT_PROPS$C;
8534
+
8535
+ const NavigationContext = /*#__PURE__*/createContext({
8536
+ orientation: Orientation.vertical
8537
+ });
8518
8538
 
8519
8539
  /**
8520
8540
  * Component display name.
8521
8541
  */
8522
- const COMPONENT_NAME$E = 'NavigationItem';
8542
+ const ITEM_COMPONENT_NAME = 'NavigationItem';
8523
8543
 
8524
8544
  /**
8525
8545
  * Component default class name and class prefix.
8526
8546
  */
8527
- const CLASSNAME$F = 'lumx-navigation-item';
8528
- const NavigationItem = Object.assign(forwardRefPolymorphic((props, ref) => {
8529
- const {
8530
- className,
8531
- icon,
8532
- label,
8533
- isCurrentPage,
8534
- as: Element = 'a',
8535
- ...forwardedProps
8536
- } = props;
8537
- const theme = useTheme();
8538
- const {
8539
- tooltipLabel,
8540
- labelRef
8541
- } = useOverflowTooltipLabel(label);
8542
- const {
8543
- block,
8544
- element
8545
- } = useClassnames(CLASSNAME$F);
8546
- return /*#__PURE__*/jsx("li", {
8547
- className: block({
8548
- [`theme-${theme}`]: Boolean(theme)
8549
- }, className),
8550
- children: /*#__PURE__*/jsx(Tooltip, {
8551
- label: tooltipLabel,
8552
- placement: Placement.TOP,
8553
- children: /*#__PURE__*/jsxs(RawClickable, {
8554
- as: Element,
8555
- className: element('link', {
8556
- 'is-selected': isCurrentPage
8557
- }),
8558
- ref: ref,
8559
- "aria-current": isCurrentPage ? 'page' : undefined,
8560
- ...forwardedProps,
8561
- children: [icon ? /*#__PURE__*/jsx(Icon, {
8562
- className: element('icon'),
8563
- icon: icon,
8564
- size: Size.xs,
8565
- theme: theme
8566
- }) : null, /*#__PURE__*/jsx(Text, {
8567
- as: "span",
8568
- truncate: true,
8569
- className: element('label'),
8570
- ref: labelRef,
8571
- children: label
8572
- })]
8573
- })
8574
- })
8575
- });
8576
- }), {
8577
- displayName: COMPONENT_NAME$E,
8578
- className: CLASSNAME$F
8579
- });
8580
-
8581
- const NavigationContext = /*#__PURE__*/createContext({
8582
- orientation: Orientation.vertical
8583
- });
8547
+ const ITEM_CLASSNAME = 'lumx-navigation-item';
8584
8548
 
8585
8549
  /**
8586
8550
  * Component display name.
@@ -8590,7 +8554,7 @@ const COMPONENT_NAME$D = 'NavigationSection';
8590
8554
  /**
8591
8555
  * Component default class name and class prefix.
8592
8556
  */
8593
- const CLASSNAME$E = 'lumx-navigation-section';
8557
+ const CLASSNAME$D = 'lumx-navigation-section';
8594
8558
  const NavigationSection = forwardRef((props, ref) => {
8595
8559
  const {
8596
8560
  children,
@@ -8607,16 +8571,13 @@ const NavigationSection = forwardRef((props, ref) => {
8607
8571
  } = useContext(NavigationContext) || {};
8608
8572
  const theme = useTheme();
8609
8573
  const isDropdown = orientation === Orientation.horizontal;
8610
- const {
8611
- block: itemBlock,
8612
- element: itemElement
8613
- } = useClassnames(CLASSNAME$F);
8574
+ const item = useClassnames(ITEM_CLASSNAME);
8614
8575
  const {
8615
8576
  block,
8616
8577
  element
8617
- } = useClassnames(CLASSNAME$E);
8578
+ } = useClassnames(CLASSNAME$D);
8618
8579
  return /*#__PURE__*/jsxs("li", {
8619
- className: block([className, itemBlock({
8580
+ className: block([className, item.block({
8620
8581
  [`theme-${theme}`]: Boolean(theme)
8621
8582
  })]),
8622
8583
  ref: ref,
@@ -8625,24 +8586,24 @@ const NavigationSection = forwardRef((props, ref) => {
8625
8586
  ...forwardedProps,
8626
8587
  "aria-controls": sectionId,
8627
8588
  "aria-expanded": isOpen,
8628
- className: itemElement('link'),
8589
+ className: item.element('link'),
8629
8590
  ref: buttonRef,
8630
8591
  onClick: event => {
8631
8592
  setIsOpen(!isOpen);
8632
8593
  event.stopPropagation();
8633
8594
  },
8634
8595
  children: [icon ? /*#__PURE__*/jsx(Icon, {
8635
- className: itemElement('icon'),
8596
+ className: item.element('icon'),
8636
8597
  icon: icon,
8637
8598
  size: Size.xs
8638
8599
  }) : null, /*#__PURE__*/jsx(Text, {
8639
8600
  as: "span",
8640
8601
  truncate: true,
8641
- className: itemElement('label'),
8602
+ className: item.element('label'),
8642
8603
  ref: ref,
8643
8604
  children: label
8644
8605
  }), /*#__PURE__*/jsx(Icon, {
8645
- className: element('chevron', [itemElement('icon')]),
8606
+ className: element('chevron', [item.element('icon')]),
8646
8607
  icon: isOpen ? mdiChevronUp : mdiChevronDown
8647
8608
  })]
8648
8609
  }), isOpen && (isDropdown ? /*#__PURE__*/jsx(Popover, {
@@ -8678,7 +8639,60 @@ const NavigationSection = forwardRef((props, ref) => {
8678
8639
  });
8679
8640
  });
8680
8641
  NavigationSection.displayName = COMPONENT_NAME$D;
8681
- NavigationSection.className = CLASSNAME$E;
8642
+ NavigationSection.className = CLASSNAME$D;
8643
+
8644
+ const NavigationItem = Object.assign(forwardRefPolymorphic((props, ref) => {
8645
+ const {
8646
+ className,
8647
+ icon,
8648
+ label,
8649
+ isCurrentPage,
8650
+ as: Element = 'a',
8651
+ ...forwardedProps
8652
+ } = props;
8653
+ const theme = useTheme();
8654
+ const {
8655
+ tooltipLabel,
8656
+ labelRef
8657
+ } = useOverflowTooltipLabel(label);
8658
+ const {
8659
+ block,
8660
+ element
8661
+ } = useClassnames(ITEM_CLASSNAME);
8662
+ return /*#__PURE__*/jsx("li", {
8663
+ className: block({
8664
+ [`theme-${theme}`]: Boolean(theme)
8665
+ }, className),
8666
+ children: /*#__PURE__*/jsx(Tooltip, {
8667
+ label: tooltipLabel,
8668
+ placement: Placement.TOP,
8669
+ children: /*#__PURE__*/jsxs(RawClickable, {
8670
+ as: Element,
8671
+ className: element('link', {
8672
+ 'is-selected': isCurrentPage
8673
+ }),
8674
+ ref: ref,
8675
+ "aria-current": isCurrentPage ? 'page' : undefined,
8676
+ ...forwardedProps,
8677
+ children: [icon ? /*#__PURE__*/jsx(Icon, {
8678
+ className: element('icon'),
8679
+ icon: icon,
8680
+ size: Size.xs,
8681
+ theme: theme
8682
+ }) : null, /*#__PURE__*/jsx(Text, {
8683
+ as: "span",
8684
+ truncate: true,
8685
+ className: element('label'),
8686
+ ref: labelRef,
8687
+ children: label
8688
+ })]
8689
+ })
8690
+ })
8691
+ });
8692
+ }), {
8693
+ displayName: ITEM_COMPONENT_NAME,
8694
+ className: ITEM_CLASSNAME
8695
+ });
8682
8696
 
8683
8697
  /**
8684
8698
  * Component display name.
@@ -8688,12 +8702,12 @@ const COMPONENT_NAME$C = 'Navigation';
8688
8702
  /**
8689
8703
  * Component default class name and class prefix.
8690
8704
  */
8691
- const CLASSNAME$D = 'lumx-navigation';
8705
+ const CLASSNAME$C = 'lumx-navigation';
8692
8706
 
8693
8707
  /**
8694
8708
  * Component default props
8695
8709
  */
8696
- const DEFAULT_PROPS$z = {
8710
+ const DEFAULT_PROPS$B = {
8697
8711
  orientation: Orientation.vertical
8698
8712
  };
8699
8713
  const Navigation = forwardRef((props, ref) => {
@@ -8702,13 +8716,13 @@ const Navigation = forwardRef((props, ref) => {
8702
8716
  children,
8703
8717
  className,
8704
8718
  theme = defaultTheme,
8705
- orientation = DEFAULT_PROPS$z.orientation,
8719
+ orientation = DEFAULT_PROPS$B.orientation,
8706
8720
  ...forwardedProps
8707
8721
  } = props;
8708
8722
  const {
8709
8723
  block,
8710
8724
  element
8711
- } = useClassnames(CLASSNAME$D);
8725
+ } = useClassnames(CLASSNAME$C);
8712
8726
  return /*#__PURE__*/jsx(ThemeProvider, {
8713
8727
  value: theme,
8714
8728
  children: /*#__PURE__*/jsx("nav", {
@@ -8731,8 +8745,8 @@ const Navigation = forwardRef((props, ref) => {
8731
8745
  });
8732
8746
  });
8733
8747
  Navigation.displayName = COMPONENT_NAME$C;
8734
- Navigation.className = CLASSNAME$D;
8735
- Navigation.defaultProps = DEFAULT_PROPS$z;
8748
+ Navigation.className = CLASSNAME$C;
8749
+ Navigation.defaultProps = DEFAULT_PROPS$B;
8736
8750
 
8737
8751
  // Sub components
8738
8752
  Navigation.Section = NavigationSection;
@@ -8768,12 +8782,12 @@ const COMPONENT_NAME$B = 'Notification';
8768
8782
  /**
8769
8783
  * Component default class name and class prefix.
8770
8784
  */
8771
- const CLASSNAME$C = 'lumx-notification';
8785
+ const CLASSNAME$B = 'lumx-notification';
8772
8786
 
8773
8787
  /**
8774
8788
  * Component default props.
8775
8789
  */
8776
- const DEFAULT_PROPS$y = {
8790
+ const DEFAULT_PROPS$A = {
8777
8791
  zIndex: 9999,
8778
8792
  usePortal: true
8779
8793
  };
@@ -8797,8 +8811,8 @@ const Notification = forwardRef((props, ref) => {
8797
8811
  onClick,
8798
8812
  theme = defaultTheme,
8799
8813
  type,
8800
- zIndex = DEFAULT_PROPS$y.zIndex,
8801
- usePortal = DEFAULT_PROPS$y.usePortal,
8814
+ zIndex = DEFAULT_PROPS$A.zIndex,
8815
+ usePortal = DEFAULT_PROPS$A.usePortal,
8802
8816
  style,
8803
8817
  ...forwardedProps
8804
8818
  } = props;
@@ -8816,7 +8830,7 @@ const Notification = forwardRef((props, ref) => {
8816
8830
  const {
8817
8831
  block,
8818
8832
  element
8819
- } = useClassnames(CLASSNAME$C);
8833
+ } = useClassnames(CLASSNAME$B);
8820
8834
  const handleCallback = evt => {
8821
8835
  if (isFunction(onActionClick)) {
8822
8836
  onActionClick();
@@ -8866,8 +8880,8 @@ const Notification = forwardRef((props, ref) => {
8866
8880
  });
8867
8881
  });
8868
8882
  Notification.displayName = COMPONENT_NAME$B;
8869
- Notification.className = CLASSNAME$C;
8870
- Notification.defaultProps = DEFAULT_PROPS$y;
8883
+ Notification.className = CLASSNAME$B;
8884
+ Notification.defaultProps = DEFAULT_PROPS$A;
8871
8885
 
8872
8886
  /**
8873
8887
  * Component display name.
@@ -8877,12 +8891,12 @@ const COMPONENT_NAME$A = 'PopoverDialog';
8877
8891
  /**
8878
8892
  * Component default class name and class prefix.
8879
8893
  */
8880
- const CLASSNAME$B = 'lumx-popover-dialog';
8894
+ const CLASSNAME$A = 'lumx-popover-dialog';
8881
8895
 
8882
8896
  /**
8883
8897
  * Component default props.
8884
8898
  */
8885
- const DEFAULT_PROPS$x = {};
8899
+ const DEFAULT_PROPS$z = {};
8886
8900
 
8887
8901
  /**
8888
8902
  * PopoverDialog component.
@@ -8903,7 +8917,7 @@ const PopoverDialog = forwardRef((props, ref) => {
8903
8917
  } = props;
8904
8918
  const {
8905
8919
  block
8906
- } = useClassnames(CLASSNAME$B);
8920
+ } = useClassnames(CLASSNAME$A);
8907
8921
  return /*#__PURE__*/jsx(Popover, {
8908
8922
  ...forwardedProps,
8909
8923
  ref: ref,
@@ -8927,8 +8941,8 @@ const PopoverDialog = forwardRef((props, ref) => {
8927
8941
  });
8928
8942
  });
8929
8943
  PopoverDialog.displayName = COMPONENT_NAME$A;
8930
- PopoverDialog.className = CLASSNAME$B;
8931
- PopoverDialog.defaultProps = DEFAULT_PROPS$x;
8944
+ PopoverDialog.className = CLASSNAME$A;
8945
+ PopoverDialog.defaultProps = DEFAULT_PROPS$z;
8932
8946
 
8933
8947
  /**
8934
8948
  * Component display name.
@@ -8938,12 +8952,12 @@ const COMPONENT_NAME$z = 'PostBlock';
8938
8952
  /**
8939
8953
  * Component default class name and class prefix.
8940
8954
  */
8941
- const CLASSNAME$A = 'lumx-post-block';
8955
+ const CLASSNAME$z = 'lumx-post-block';
8942
8956
 
8943
8957
  /**
8944
8958
  * Component default props.
8945
8959
  */
8946
- const DEFAULT_PROPS$w = {
8960
+ const DEFAULT_PROPS$y = {
8947
8961
  orientation: Orientation.horizontal
8948
8962
  };
8949
8963
 
@@ -8963,7 +8977,7 @@ const PostBlock = forwardRef((props, ref) => {
8963
8977
  className,
8964
8978
  meta,
8965
8979
  onClick,
8966
- orientation = DEFAULT_PROPS$w.orientation,
8980
+ orientation = DEFAULT_PROPS$y.orientation,
8967
8981
  tags,
8968
8982
  text,
8969
8983
  theme = defaultTheme,
@@ -8974,7 +8988,7 @@ const PostBlock = forwardRef((props, ref) => {
8974
8988
  const {
8975
8989
  block,
8976
8990
  element
8977
- } = useClassnames(CLASSNAME$A);
8991
+ } = useClassnames(CLASSNAME$z);
8978
8992
  return /*#__PURE__*/jsxs("div", {
8979
8993
  ref: ref,
8980
8994
  className: block({
@@ -9028,8 +9042,8 @@ const PostBlock = forwardRef((props, ref) => {
9028
9042
  });
9029
9043
  });
9030
9044
  PostBlock.displayName = COMPONENT_NAME$z;
9031
- PostBlock.className = CLASSNAME$A;
9032
- PostBlock.defaultProps = DEFAULT_PROPS$w;
9045
+ PostBlock.className = CLASSNAME$z;
9046
+ PostBlock.defaultProps = DEFAULT_PROPS$y;
9033
9047
 
9034
9048
  /**
9035
9049
  * Component display name.
@@ -9039,12 +9053,12 @@ const COMPONENT_NAME$y = 'ProgressLinear';
9039
9053
  /**
9040
9054
  * Component default class name and class prefix.
9041
9055
  */
9042
- const CLASSNAME$z = 'lumx-progress-linear';
9056
+ const CLASSNAME$y = 'lumx-progress-linear';
9043
9057
 
9044
9058
  /**
9045
9059
  * Component default props.
9046
9060
  */
9047
- const DEFAULT_PROPS$v = {};
9061
+ const DEFAULT_PROPS$x = {};
9048
9062
 
9049
9063
  /**
9050
9064
  * ProgressLinear component.
@@ -9063,7 +9077,7 @@ const ProgressLinear = forwardRef((props, ref) => {
9063
9077
  const {
9064
9078
  block,
9065
9079
  element
9066
- } = useClassnames(CLASSNAME$z);
9080
+ } = useClassnames(CLASSNAME$y);
9067
9081
  return /*#__PURE__*/jsxs("div", {
9068
9082
  ref: ref,
9069
9083
  ...forwardedProps,
@@ -9078,8 +9092,8 @@ const ProgressLinear = forwardRef((props, ref) => {
9078
9092
  });
9079
9093
  });
9080
9094
  ProgressLinear.displayName = COMPONENT_NAME$y;
9081
- ProgressLinear.className = CLASSNAME$z;
9082
- ProgressLinear.defaultProps = DEFAULT_PROPS$v;
9095
+ ProgressLinear.className = CLASSNAME$y;
9096
+ ProgressLinear.defaultProps = DEFAULT_PROPS$x;
9083
9097
 
9084
9098
  /**
9085
9099
  * Component display name.
@@ -9089,12 +9103,12 @@ const COMPONENT_NAME$x = 'ProgressCircular';
9089
9103
  /**
9090
9104
  * Component default class name and class prefix.
9091
9105
  */
9092
- const CLASSNAME$y = 'lumx-progress-circular';
9106
+ const CLASSNAME$x = 'lumx-progress-circular';
9093
9107
 
9094
9108
  /**
9095
9109
  * Component default props.
9096
9110
  */
9097
- const DEFAULT_PROPS$u = {
9111
+ const DEFAULT_PROPS$w = {
9098
9112
  size: Size.m,
9099
9113
  display: 'block'
9100
9114
  };
@@ -9111,15 +9125,15 @@ const ProgressCircular = forwardRef((props, ref) => {
9111
9125
  const {
9112
9126
  className,
9113
9127
  theme = defaultTheme,
9114
- size = DEFAULT_PROPS$u.size,
9115
- display = DEFAULT_PROPS$u.display,
9128
+ size = DEFAULT_PROPS$w.size,
9129
+ display = DEFAULT_PROPS$w.display,
9116
9130
  ...forwardedProps
9117
9131
  } = props;
9118
9132
  const Element = display === 'block' ? 'div' : 'span';
9119
9133
  const {
9120
9134
  block,
9121
9135
  element
9122
- } = useClassnames(CLASSNAME$y);
9136
+ } = useClassnames(CLASSNAME$x);
9123
9137
  return /*#__PURE__*/jsxs(Element, {
9124
9138
  ref: ref,
9125
9139
  ...forwardedProps,
@@ -9147,8 +9161,8 @@ const ProgressCircular = forwardRef((props, ref) => {
9147
9161
  });
9148
9162
  });
9149
9163
  ProgressCircular.displayName = COMPONENT_NAME$x;
9150
- ProgressCircular.className = CLASSNAME$y;
9151
- ProgressCircular.defaultProps = DEFAULT_PROPS$u;
9164
+ ProgressCircular.className = CLASSNAME$x;
9165
+ ProgressCircular.defaultProps = DEFAULT_PROPS$w;
9152
9166
 
9153
9167
  const ProgressVariant = {
9154
9168
  linear: 'linear',
@@ -9167,12 +9181,12 @@ const COMPONENT_NAME$w = 'Progress';
9167
9181
  /**
9168
9182
  * Component default class name and class prefix.
9169
9183
  */
9170
- const CLASSNAME$x = 'lumx-progress';
9184
+ const CLASSNAME$w = 'lumx-progress';
9171
9185
 
9172
9186
  /**
9173
9187
  * Component default props.
9174
9188
  */
9175
- const DEFAULT_PROPS$t = {
9189
+ const DEFAULT_PROPS$v = {
9176
9190
  variant: ProgressVariant.circular
9177
9191
  };
9178
9192
 
@@ -9189,12 +9203,12 @@ const Progress = forwardRef((props, ref) => {
9189
9203
  const {
9190
9204
  className,
9191
9205
  theme = defaultTheme,
9192
- variant = DEFAULT_PROPS$t.variant,
9206
+ variant = DEFAULT_PROPS$v.variant,
9193
9207
  ...forwardedProps
9194
9208
  } = props;
9195
9209
  const {
9196
9210
  block
9197
- } = useClassnames(CLASSNAME$x);
9211
+ } = useClassnames(CLASSNAME$w);
9198
9212
  return /*#__PURE__*/jsxs("div", {
9199
9213
  ref: ref,
9200
9214
  ...forwardedProps,
@@ -9210,8 +9224,8 @@ const Progress = forwardRef((props, ref) => {
9210
9224
  });
9211
9225
  });
9212
9226
  Progress.displayName = COMPONENT_NAME$w;
9213
- Progress.className = CLASSNAME$x;
9214
- Progress.defaultProps = DEFAULT_PROPS$t;
9227
+ Progress.className = CLASSNAME$w;
9228
+ Progress.defaultProps = DEFAULT_PROPS$v;
9215
9229
 
9216
9230
  const INIT_STATE = {
9217
9231
  isLazy: true,
@@ -9338,7 +9352,7 @@ const useTabProviderContextState = () => {
9338
9352
  return context?.[0];
9339
9353
  };
9340
9354
 
9341
- const DEFAULT_PROPS$s = {
9355
+ const DEFAULT_PROPS$u = {
9342
9356
  isLazy: INIT_STATE.isLazy,
9343
9357
  shouldActivateOnFocus: INIT_STATE.shouldActivateOnFocus
9344
9358
  };
@@ -9367,7 +9381,7 @@ const ProgressTrackerProvider = props => {
9367
9381
  dispatch({
9368
9382
  type: 'update',
9369
9383
  payload: {
9370
- ...DEFAULT_PROPS$s,
9384
+ ...DEFAULT_PROPS$u,
9371
9385
  ...propState,
9372
9386
  activeTabIndex: propState.activeStepIndex || INIT_STATE.activeTabIndex
9373
9387
  }
@@ -9390,7 +9404,7 @@ const ProgressTrackerProvider = props => {
9390
9404
  children: children
9391
9405
  });
9392
9406
  };
9393
- ProgressTrackerProvider.defaultProps = DEFAULT_PROPS$s;
9407
+ ProgressTrackerProvider.defaultProps = DEFAULT_PROPS$u;
9394
9408
 
9395
9409
  const useRovingTabIndex = ({
9396
9410
  parentRef,
@@ -9473,12 +9487,12 @@ const COMPONENT_NAME$v = 'ProgressTracker';
9473
9487
  /**
9474
9488
  * Component default class name and class prefix.
9475
9489
  */
9476
- const CLASSNAME$w = 'lumx-progress-tracker';
9490
+ const CLASSNAME$v = 'lumx-progress-tracker';
9477
9491
 
9478
9492
  /**
9479
9493
  * Component default props.
9480
9494
  */
9481
- const DEFAULT_PROPS$r = {};
9495
+ const DEFAULT_PROPS$t = {};
9482
9496
 
9483
9497
  /**
9484
9498
  * ProgressTracker component.
@@ -9499,7 +9513,7 @@ const ProgressTracker = forwardRef((props, ref) => {
9499
9513
  const {
9500
9514
  block,
9501
9515
  element
9502
- } = useClassnames(CLASSNAME$w);
9516
+ } = useClassnames(CLASSNAME$v);
9503
9517
  const stepListRef = React__default.useRef(null);
9504
9518
  useRovingTabIndex({
9505
9519
  parentRef: stepListRef,
@@ -9537,8 +9551,8 @@ const ProgressTracker = forwardRef((props, ref) => {
9537
9551
  });
9538
9552
  });
9539
9553
  ProgressTracker.displayName = COMPONENT_NAME$v;
9540
- ProgressTracker.className = CLASSNAME$w;
9541
- ProgressTracker.defaultProps = DEFAULT_PROPS$r;
9554
+ ProgressTracker.className = CLASSNAME$v;
9555
+ ProgressTracker.defaultProps = DEFAULT_PROPS$t;
9542
9556
 
9543
9557
  /**
9544
9558
  * Component display name.
@@ -9548,12 +9562,12 @@ const COMPONENT_NAME$u = 'ProgressTrackerStep';
9548
9562
  /**
9549
9563
  * Component default class name and class prefix.
9550
9564
  */
9551
- const CLASSNAME$v = 'lumx-progress-tracker-step';
9565
+ const CLASSNAME$u = 'lumx-progress-tracker-step';
9552
9566
 
9553
9567
  /**
9554
9568
  * Component default props.
9555
9569
  */
9556
- const DEFAULT_PROPS$q = {};
9570
+ const DEFAULT_PROPS$s = {};
9557
9571
 
9558
9572
  /**
9559
9573
  * ProgressTrackerStep component.
@@ -9587,7 +9601,7 @@ const ProgressTrackerStep = forwardRef((props, ref) => {
9587
9601
  const {
9588
9602
  block,
9589
9603
  element
9590
- } = useClassnames(CLASSNAME$v);
9604
+ } = useClassnames(CLASSNAME$u);
9591
9605
  const changeToCurrentTab = useCallback(() => {
9592
9606
  if (isAnyDisabled) {
9593
9607
  return;
@@ -9651,8 +9665,8 @@ const ProgressTrackerStep = forwardRef((props, ref) => {
9651
9665
  });
9652
9666
  });
9653
9667
  ProgressTrackerStep.displayName = COMPONENT_NAME$u;
9654
- ProgressTrackerStep.className = CLASSNAME$v;
9655
- ProgressTrackerStep.defaultProps = DEFAULT_PROPS$q;
9668
+ ProgressTrackerStep.className = CLASSNAME$u;
9669
+ ProgressTrackerStep.defaultProps = DEFAULT_PROPS$s;
9656
9670
 
9657
9671
  /**
9658
9672
  * Component display name.
@@ -9662,12 +9676,12 @@ const COMPONENT_NAME$t = 'ProgressTrackerStepPanel';
9662
9676
  /**
9663
9677
  * Component default class name and class prefix.
9664
9678
  */
9665
- const CLASSNAME$u = `lumx-step-panel`;
9679
+ const CLASSNAME$t = `lumx-step-panel`;
9666
9680
 
9667
9681
  /**
9668
9682
  * Component default props.
9669
9683
  */
9670
- const DEFAULT_PROPS$p = {};
9684
+ const DEFAULT_PROPS$r = {};
9671
9685
 
9672
9686
  /**
9673
9687
  * ProgressTrackerStepPanel component.
@@ -9690,7 +9704,7 @@ const ProgressTrackerStepPanel = forwardRef((props, ref) => {
9690
9704
  const isActive = propIsActive || state?.isActive;
9691
9705
  const {
9692
9706
  block
9693
- } = useClassnames(CLASSNAME$u);
9707
+ } = useClassnames(CLASSNAME$t);
9694
9708
  return /*#__PURE__*/jsx("div", {
9695
9709
  ref: ref,
9696
9710
  ...forwardedProps,
@@ -9705,8 +9719,8 @@ const ProgressTrackerStepPanel = forwardRef((props, ref) => {
9705
9719
  });
9706
9720
  });
9707
9721
  ProgressTrackerStepPanel.displayName = COMPONENT_NAME$t;
9708
- ProgressTrackerStepPanel.className = CLASSNAME$u;
9709
- ProgressTrackerStepPanel.defaultProps = DEFAULT_PROPS$p;
9722
+ ProgressTrackerStepPanel.className = CLASSNAME$t;
9723
+ ProgressTrackerStepPanel.defaultProps = DEFAULT_PROPS$r;
9710
9724
 
9711
9725
  /**
9712
9726
  * Component display name.
@@ -9716,12 +9730,12 @@ const COMPONENT_NAME$s = 'RadioButton';
9716
9730
  /**
9717
9731
  * Component default class name and class prefix.
9718
9732
  */
9719
- const CLASSNAME$t = 'lumx-radio-button';
9733
+ const CLASSNAME$s = 'lumx-radio-button';
9720
9734
 
9721
9735
  /**
9722
9736
  * Component default props.
9723
9737
  */
9724
- const DEFAULT_PROPS$o = {};
9738
+ const DEFAULT_PROPS$q = {};
9725
9739
 
9726
9740
  /**
9727
9741
  * RadioButton component.
@@ -9755,7 +9769,7 @@ const RadioButton = forwardRef((props, ref) => {
9755
9769
  const {
9756
9770
  block,
9757
9771
  element
9758
- } = useClassnames(CLASSNAME$t);
9772
+ } = useClassnames(CLASSNAME$s);
9759
9773
  const generatedInputId = useId();
9760
9774
  const inputId = id || generatedInputId;
9761
9775
  const handleChange = event => {
@@ -9812,8 +9826,8 @@ const RadioButton = forwardRef((props, ref) => {
9812
9826
  });
9813
9827
  });
9814
9828
  RadioButton.displayName = COMPONENT_NAME$s;
9815
- RadioButton.className = CLASSNAME$t;
9816
- RadioButton.defaultProps = DEFAULT_PROPS$o;
9829
+ RadioButton.className = CLASSNAME$s;
9830
+ RadioButton.defaultProps = DEFAULT_PROPS$q;
9817
9831
 
9818
9832
  /**
9819
9833
  * Component display name.
@@ -9823,7 +9837,7 @@ const COMPONENT_NAME$r = 'RadioGroup';
9823
9837
  /**
9824
9838
  * Component default class name and class prefix.
9825
9839
  */
9826
- const CLASSNAME$s = 'lumx-radio-group';
9840
+ const CLASSNAME$r = 'lumx-radio-group';
9827
9841
 
9828
9842
  /**
9829
9843
  * RadioGroup component.
@@ -9840,7 +9854,7 @@ const RadioGroup = forwardRef((props, ref) => {
9840
9854
  } = props;
9841
9855
  const {
9842
9856
  block
9843
- } = useClassnames(CLASSNAME$s);
9857
+ } = useClassnames(CLASSNAME$r);
9844
9858
  return /*#__PURE__*/jsx("div", {
9845
9859
  ref: ref,
9846
9860
  ...forwardedProps,
@@ -9849,7 +9863,7 @@ const RadioGroup = forwardRef((props, ref) => {
9849
9863
  });
9850
9864
  });
9851
9865
  RadioGroup.displayName = COMPONENT_NAME$r;
9852
- RadioGroup.className = CLASSNAME$s;
9866
+ RadioGroup.className = CLASSNAME$r;
9853
9867
 
9854
9868
  /**
9855
9869
  * Listen on element focus to store the focus status.
@@ -9876,13 +9890,13 @@ function useListenFocus(ref) {
9876
9890
  }
9877
9891
 
9878
9892
  /** The default class name and classes prefix for this component. */
9879
- const CLASSNAME$r = 'lumx-select';
9893
+ const CLASSNAME$q = 'lumx-select';
9880
9894
  const WithSelectContext = (SelectElement, props, ref) => {
9881
9895
  const defaultTheme = useTheme() || Theme.light;
9882
9896
  const {
9883
9897
  block,
9884
9898
  element
9885
- } = useClassnames(CLASSNAME$r);
9899
+ } = useClassnames(CLASSNAME$q);
9886
9900
  const {
9887
9901
  children,
9888
9902
  className,
@@ -9999,10 +10013,10 @@ const SelectVariant = {
9999
10013
  const COMPONENT_NAME$q = 'Select';
10000
10014
 
10001
10015
  /** The default class name and classes prefix for this component. */
10002
- const CLASSNAME$q = 'lumx-select';
10016
+ const CLASSNAME$p = 'lumx-select';
10003
10017
 
10004
10018
  /** The default value of props. */
10005
- const DEFAULT_PROPS$n = {
10019
+ const DEFAULT_PROPS$p = {
10006
10020
  selectedValueRender: choice => choice,
10007
10021
  variant: SelectVariant.input
10008
10022
  };
@@ -10038,7 +10052,7 @@ const SelectField = props => {
10038
10052
  } = props;
10039
10053
  const {
10040
10054
  element
10041
- } = useClassnames(CLASSNAME$q);
10055
+ } = useClassnames(CLASSNAME$p);
10042
10056
  return /*#__PURE__*/jsxs(Fragment, {
10043
10057
  children: [variant === SelectVariant.input && /*#__PURE__*/jsxs(Fragment, {
10044
10058
  children: [label && /*#__PURE__*/jsx("div", {
@@ -10065,7 +10079,9 @@ const SelectField = props => {
10065
10079
  icon: icon,
10066
10080
  size: Size.xs
10067
10081
  }), /*#__PURE__*/jsxs("div", {
10068
- className: element('input-native', [isEmpty && placeholder && element('input-native', 'placeholder')]),
10082
+ className: element('input-native', {
10083
+ placeholder: isEmpty && placeholder
10084
+ }),
10069
10085
  children: [!isEmpty && /*#__PURE__*/jsx("span", {
10070
10086
  children: selectedValueRender?.(value)
10071
10087
  }), isEmpty && placeholder && /*#__PURE__*/jsx("span", {
@@ -10125,9 +10141,11 @@ const SelectField = props => {
10125
10141
  const Select = forwardRef((props, ref) => {
10126
10142
  const isEmpty$1 = isEmpty(props.value);
10127
10143
  const hasInputClear = props.onClear && props.clearButtonProps && !isEmpty$1;
10128
- const block = cls.bem.block(CLASSNAME$q);
10144
+ const {
10145
+ block
10146
+ } = useClassnames(CLASSNAME$p);
10129
10147
  return WithSelectContext(SelectField, {
10130
- ...DEFAULT_PROPS$n,
10148
+ ...DEFAULT_PROPS$p,
10131
10149
  ...props,
10132
10150
  className: block({
10133
10151
  'has-input-clear': hasInputClear,
@@ -10138,18 +10156,18 @@ const Select = forwardRef((props, ref) => {
10138
10156
  }, ref);
10139
10157
  });
10140
10158
  Select.displayName = COMPONENT_NAME$q;
10141
- Select.className = CLASSNAME$q;
10142
- Select.defaultProps = DEFAULT_PROPS$n;
10143
- Select.className = CLASSNAME$q;
10159
+ Select.className = CLASSNAME$p;
10160
+ Select.defaultProps = DEFAULT_PROPS$p;
10161
+ Select.className = CLASSNAME$p;
10144
10162
 
10145
10163
  /** The display name of the component. */
10146
10164
  const COMPONENT_NAME$p = 'Select';
10147
10165
 
10148
10166
  /** The default class name and classes prefix for this component. */
10149
- const CLASSNAME$p = 'lumx-select';
10167
+ const CLASSNAME$o = 'lumx-select';
10150
10168
 
10151
10169
  /** The default value of props. */
10152
- const DEFAULT_PROPS$m = {
10170
+ const DEFAULT_PROPS$o = {
10153
10171
  selectedChipRender(choice, index, onClear, isDisabled, theme) {
10154
10172
  const onClick = event => onClear && onClear(event, choice);
10155
10173
  return /*#__PURE__*/jsx(Chip, {
@@ -10172,7 +10190,7 @@ const SelectMultipleField = props => {
10172
10190
  const defaultTheme = useTheme();
10173
10191
  const {
10174
10192
  element
10175
- } = useClassnames(CLASSNAME$p);
10193
+ } = useClassnames(CLASSNAME$o);
10176
10194
  const {
10177
10195
  anchorRef,
10178
10196
  handleKeyboardNav,
@@ -10279,9 +10297,9 @@ const SelectMultipleField = props => {
10279
10297
  const SelectMultiple = forwardRef((props, ref) => {
10280
10298
  const {
10281
10299
  block
10282
- } = useClassnames(CLASSNAME$p);
10300
+ } = useClassnames(CLASSNAME$o);
10283
10301
  return WithSelectContext(SelectMultipleField, {
10284
- ...DEFAULT_PROPS$m,
10302
+ ...DEFAULT_PROPS$o,
10285
10303
  ...props,
10286
10304
  className: block({
10287
10305
  'has-multiple': !props.isEmpty
@@ -10291,8 +10309,8 @@ const SelectMultiple = forwardRef((props, ref) => {
10291
10309
  }, ref);
10292
10310
  });
10293
10311
  SelectMultiple.displayName = COMPONENT_NAME$p;
10294
- SelectMultiple.className = CLASSNAME$p;
10295
- SelectMultiple.defaultProps = DEFAULT_PROPS$m;
10312
+ SelectMultiple.className = CLASSNAME$o;
10313
+ SelectMultiple.defaultProps = DEFAULT_PROPS$o;
10296
10314
 
10297
10315
  /**
10298
10316
  * Component display name.
@@ -10302,7 +10320,7 @@ const COMPONENT_NAME$o = 'SideNavigation';
10302
10320
  /**
10303
10321
  * Component default class name and class prefix.
10304
10322
  */
10305
- const CLASSNAME$o = 'lumx-side-navigation';
10323
+ const CLASSNAME$n = 'lumx-side-navigation';
10306
10324
 
10307
10325
  /**
10308
10326
  * SideNavigation component.
@@ -10321,7 +10339,7 @@ const SideNavigation = forwardRef((props, ref) => {
10321
10339
  } = props;
10322
10340
  const {
10323
10341
  block
10324
- } = useClassnames(CLASSNAME$o);
10342
+ } = useClassnames(CLASSNAME$n);
10325
10343
  const content = Children.toArray(children).filter(isComponent(SideNavigationItem));
10326
10344
  return /*#__PURE__*/jsx("ul", {
10327
10345
  ref: ref,
@@ -10331,7 +10349,7 @@ const SideNavigation = forwardRef((props, ref) => {
10331
10349
  });
10332
10350
  });
10333
10351
  SideNavigation.displayName = COMPONENT_NAME$o;
10334
- SideNavigation.className = CLASSNAME$o;
10352
+ SideNavigation.className = CLASSNAME$n;
10335
10353
 
10336
10354
  /**
10337
10355
  * Component display name.
@@ -10341,12 +10359,12 @@ const COMPONENT_NAME$n = 'SideNavigationItem';
10341
10359
  /**
10342
10360
  * Component default class name and class prefix.
10343
10361
  */
10344
- const CLASSNAME$n = 'lumx-side-navigation-item';
10362
+ const CLASSNAME$m = 'lumx-side-navigation-item';
10345
10363
 
10346
10364
  /**
10347
10365
  * Component default props.
10348
10366
  */
10349
- const DEFAULT_PROPS$l = {
10367
+ const DEFAULT_PROPS$n = {
10350
10368
  emphasis: Emphasis.high,
10351
10369
  closeMode: 'unmount'
10352
10370
  };
@@ -10362,7 +10380,7 @@ const SideNavigationItem = forwardRef((props, ref) => {
10362
10380
  const {
10363
10381
  children,
10364
10382
  className,
10365
- emphasis = DEFAULT_PROPS$l.emphasis,
10383
+ emphasis = DEFAULT_PROPS$n.emphasis,
10366
10384
  icon,
10367
10385
  isOpen,
10368
10386
  isSelected,
@@ -10372,7 +10390,7 @@ const SideNavigationItem = forwardRef((props, ref) => {
10372
10390
  onActionClick,
10373
10391
  onClick,
10374
10392
  toggleButtonProps,
10375
- closeMode = DEFAULT_PROPS$l.closeMode,
10393
+ closeMode = DEFAULT_PROPS$n.closeMode,
10376
10394
  ...forwardedProps
10377
10395
  } = props;
10378
10396
  const content = children && Children.toArray(children).filter(isComponent(SideNavigationItem));
@@ -10382,7 +10400,7 @@ const SideNavigationItem = forwardRef((props, ref) => {
10382
10400
  const {
10383
10401
  block,
10384
10402
  element
10385
- } = useClassnames(CLASSNAME$n);
10403
+ } = useClassnames(CLASSNAME$m);
10386
10404
  const contentId = useId();
10387
10405
  const ariaProps = {};
10388
10406
  if (hasContent) {
@@ -10446,10 +10464,10 @@ const SideNavigationItem = forwardRef((props, ref) => {
10446
10464
  });
10447
10465
  });
10448
10466
  SideNavigationItem.displayName = COMPONENT_NAME$n;
10449
- SideNavigationItem.className = CLASSNAME$n;
10450
- SideNavigationItem.defaultProps = DEFAULT_PROPS$l;
10467
+ SideNavigationItem.className = CLASSNAME$m;
10468
+ SideNavigationItem.defaultProps = DEFAULT_PROPS$n;
10451
10469
 
10452
- const DEFAULT_PROPS$k = {};
10470
+ const DEFAULT_PROPS$m = {};
10453
10471
 
10454
10472
  /**
10455
10473
  * Component display name.
@@ -10459,7 +10477,7 @@ const COMPONENT_NAME$m = 'SkeletonCircle';
10459
10477
  /**
10460
10478
  * Component default class name and class prefix.
10461
10479
  */
10462
- const CLASSNAME$m = 'lumx-skeleton-circle';
10480
+ const CLASSNAME$l = 'lumx-skeleton-circle';
10463
10481
 
10464
10482
  /**
10465
10483
  * SkeletonCircle component.
@@ -10479,7 +10497,7 @@ const SkeletonCircle = forwardRef((props, ref) => {
10479
10497
  } = props;
10480
10498
  const {
10481
10499
  block
10482
- } = useClassnames(CLASSNAME$m);
10500
+ } = useClassnames(CLASSNAME$l);
10483
10501
  return /*#__PURE__*/jsx("div", {
10484
10502
  ref: ref,
10485
10503
  ...forwardedProps,
@@ -10491,8 +10509,8 @@ const SkeletonCircle = forwardRef((props, ref) => {
10491
10509
  });
10492
10510
  });
10493
10511
  SkeletonCircle.displayName = COMPONENT_NAME$m;
10494
- SkeletonCircle.defaultProps = DEFAULT_PROPS$k;
10495
- SkeletonCircle.className = CLASSNAME$m;
10512
+ SkeletonCircle.defaultProps = DEFAULT_PROPS$m;
10513
+ SkeletonCircle.className = CLASSNAME$l;
10496
10514
 
10497
10515
  const SkeletonRectangleVariant = {
10498
10516
  squared: 'squared',
@@ -10504,7 +10522,7 @@ const SkeletonRectangleVariant = {
10504
10522
  * Defines the props of the component.
10505
10523
  */
10506
10524
 
10507
- const DEFAULT_PROPS$j = {
10525
+ const DEFAULT_PROPS$l = {
10508
10526
  variant: SkeletonRectangleVariant.squared
10509
10527
  };
10510
10528
 
@@ -10516,7 +10534,7 @@ const COMPONENT_NAME$l = 'SkeletonRectangle';
10516
10534
  /**
10517
10535
  * Component default class name and class prefix.
10518
10536
  */
10519
- const CLASSNAME$l = 'lumx-skeleton-rectangle';
10537
+ const CLASSNAME$k = 'lumx-skeleton-rectangle';
10520
10538
 
10521
10539
  /**
10522
10540
  * SkeletonRectangle component.
@@ -10532,7 +10550,7 @@ const SkeletonRectangle = forwardRef((props, ref) => {
10532
10550
  className,
10533
10551
  height,
10534
10552
  theme = defaultTheme,
10535
- variant = DEFAULT_PROPS$j.variant,
10553
+ variant = DEFAULT_PROPS$l.variant,
10536
10554
  width,
10537
10555
  color,
10538
10556
  ...forwardedProps
@@ -10540,7 +10558,7 @@ const SkeletonRectangle = forwardRef((props, ref) => {
10540
10558
  const {
10541
10559
  block,
10542
10560
  element
10543
- } = useClassnames(CLASSNAME$l);
10561
+ } = useClassnames(CLASSNAME$k);
10544
10562
  return /*#__PURE__*/jsx("div", {
10545
10563
  ref: ref,
10546
10564
  ...forwardedProps,
@@ -10558,10 +10576,10 @@ const SkeletonRectangle = forwardRef((props, ref) => {
10558
10576
  });
10559
10577
  });
10560
10578
  SkeletonRectangle.displayName = COMPONENT_NAME$l;
10561
- SkeletonRectangle.className = CLASSNAME$l;
10562
- SkeletonRectangle.defaultProps = DEFAULT_PROPS$j;
10579
+ SkeletonRectangle.className = CLASSNAME$k;
10580
+ SkeletonRectangle.defaultProps = DEFAULT_PROPS$l;
10563
10581
 
10564
- const DEFAULT_PROPS$i = {};
10582
+ const DEFAULT_PROPS$k = {};
10565
10583
 
10566
10584
  /**
10567
10585
  * Component display name.
@@ -10571,7 +10589,7 @@ const COMPONENT_NAME$k = 'SkeletonTypography';
10571
10589
  /**
10572
10590
  * Component default class name and class prefix.
10573
10591
  */
10574
- const CLASSNAME$k = 'lumx-skeleton-typography';
10592
+ const CLASSNAME$j = 'lumx-skeleton-typography';
10575
10593
 
10576
10594
  /**
10577
10595
  * SkeletonTypography component.
@@ -10593,7 +10611,7 @@ const SkeletonTypography = forwardRef((props, ref) => {
10593
10611
  const {
10594
10612
  block,
10595
10613
  element
10596
- } = useClassnames(CLASSNAME$k);
10614
+ } = useClassnames(CLASSNAME$j);
10597
10615
  return /*#__PURE__*/jsx("div", {
10598
10616
  ref: ref,
10599
10617
  ...forwardedProps,
@@ -10612,8 +10630,8 @@ const SkeletonTypography = forwardRef((props, ref) => {
10612
10630
  });
10613
10631
  });
10614
10632
  SkeletonTypography.displayName = COMPONENT_NAME$k;
10615
- SkeletonTypography.defaultProps = DEFAULT_PROPS$i;
10616
- SkeletonTypography.className = CLASSNAME$k;
10633
+ SkeletonTypography.defaultProps = DEFAULT_PROPS$k;
10634
+ SkeletonTypography.className = CLASSNAME$j;
10617
10635
 
10618
10636
  const useEnhancedEffect = typeof window !== 'undefined' ? React__default.useLayoutEffect : React__default.useEffect;
10619
10637
 
@@ -10658,12 +10676,12 @@ const COMPONENT_NAME$j = 'Slider';
10658
10676
  /**
10659
10677
  * Component default class name and class prefix.
10660
10678
  */
10661
- const CLASSNAME$j = 'lumx-slider';
10679
+ const CLASSNAME$i = 'lumx-slider';
10662
10680
 
10663
10681
  /**
10664
10682
  * Component default props.
10665
10683
  */
10666
- const DEFAULT_PROPS$h = {
10684
+ const DEFAULT_PROPS$j = {
10667
10685
  precision: 0,
10668
10686
  steps: 0
10669
10687
  };
@@ -10714,8 +10732,8 @@ const Slider = forwardRef((props, ref) => {
10714
10732
  name,
10715
10733
  onChange,
10716
10734
  onMouseDown,
10717
- precision = DEFAULT_PROPS$h.precision,
10718
- steps = DEFAULT_PROPS$h.steps,
10735
+ precision = DEFAULT_PROPS$j.precision,
10736
+ steps = DEFAULT_PROPS$j.steps,
10719
10737
  theme = defaultTheme,
10720
10738
  value,
10721
10739
  ...forwardedProps
@@ -10723,7 +10741,7 @@ const Slider = forwardRef((props, ref) => {
10723
10741
  const {
10724
10742
  block,
10725
10743
  element
10726
- } = useClassnames(CLASSNAME$j);
10744
+ } = useClassnames(CLASSNAME$i);
10727
10745
  const generatedId = useId();
10728
10746
  const sliderId = id || generatedId;
10729
10747
  const sliderLabelId = useMemo(() => `label-${sliderId}`, [sliderId]);
@@ -10913,8 +10931,8 @@ const Slider = forwardRef((props, ref) => {
10913
10931
  });
10914
10932
  });
10915
10933
  Slider.displayName = COMPONENT_NAME$j;
10916
- Slider.className = CLASSNAME$j;
10917
- Slider.defaultProps = DEFAULT_PROPS$h;
10934
+ Slider.className = CLASSNAME$i;
10935
+ Slider.defaultProps = DEFAULT_PROPS$j;
10918
10936
 
10919
10937
  /**
10920
10938
  * Making setInterval Declarative with React Hooks.
@@ -11237,7 +11255,7 @@ const COMPONENT_NAME$i = 'SlideshowItemGroup';
11237
11255
  /**
11238
11256
  * Component default class name and class prefix.
11239
11257
  */
11240
- const CLASSNAME$i = 'lumx-slideshow-item-group';
11258
+ const CLASSNAME$h = 'lumx-slideshow-item-group';
11241
11259
  const buildSlideShowGroupId = (slidesId, index) => `${slidesId}-slide-${index}`;
11242
11260
 
11243
11261
  /**
@@ -11258,7 +11276,7 @@ const SlideshowItemGroup = forwardRef((props, ref) => {
11258
11276
  } = props;
11259
11277
  const {
11260
11278
  block
11261
- } = useClassnames(CLASSNAME$i);
11279
+ } = useClassnames(CLASSNAME$h);
11262
11280
  const groupRef = React__default.useRef(null);
11263
11281
  useSlideFocusManagement({
11264
11282
  isSlideDisplayed: isDisplayed,
@@ -11275,12 +11293,12 @@ const SlideshowItemGroup = forwardRef((props, ref) => {
11275
11293
  });
11276
11294
  });
11277
11295
  SlideshowItemGroup.displayName = COMPONENT_NAME$i;
11278
- SlideshowItemGroup.className = CLASSNAME$i;
11296
+ SlideshowItemGroup.className = CLASSNAME$h;
11279
11297
 
11280
11298
  /**
11281
11299
  * Component default props.
11282
11300
  */
11283
- const DEFAULT_PROPS$g = DEFAULT_OPTIONS;
11301
+ const DEFAULT_PROPS$i = DEFAULT_OPTIONS;
11284
11302
 
11285
11303
  /**
11286
11304
  * Slideshow component.
@@ -11293,12 +11311,12 @@ const Slideshow = forwardRef((props, ref) => {
11293
11311
  const defaultTheme = useTheme() || Theme.light;
11294
11312
  const {
11295
11313
  activeIndex,
11296
- autoPlay = DEFAULT_PROPS$g.autoPlay,
11314
+ autoPlay = DEFAULT_PROPS$i.autoPlay,
11297
11315
  children,
11298
11316
  className,
11299
11317
  fillHeight,
11300
11318
  groupBy = DEFAULT_OPTIONS.groupBy,
11301
- interval = DEFAULT_PROPS$g.interval,
11319
+ interval = DEFAULT_PROPS$i.interval,
11302
11320
  onChange,
11303
11321
  slideshowControlsProps,
11304
11322
  theme = defaultTheme,
@@ -11326,7 +11344,7 @@ const Slideshow = forwardRef((props, ref) => {
11326
11344
  toggleForcePause
11327
11345
  } = SlideshowControls.useSlideshowControls({
11328
11346
  activeIndex,
11329
- defaultActiveIndex: DEFAULT_PROPS$g.activeIndex,
11347
+ defaultActiveIndex: DEFAULT_PROPS$i.activeIndex,
11330
11348
  autoPlay: Boolean(autoPlay),
11331
11349
  itemsCount,
11332
11350
  groupBy,
@@ -11391,7 +11409,7 @@ const Slideshow = forwardRef((props, ref) => {
11391
11409
  });
11392
11410
  });
11393
11411
  Slideshow.displayName = 'Slideshow';
11394
- Slideshow.defaultProps = DEFAULT_PROPS$g;
11412
+ Slideshow.defaultProps = DEFAULT_PROPS$i;
11395
11413
 
11396
11414
  /**
11397
11415
  * Component display name.
@@ -11401,7 +11419,7 @@ const COMPONENT_NAME$h = 'SlideshowItem';
11401
11419
  /**
11402
11420
  * Component default class name and class prefix.
11403
11421
  */
11404
- const CLASSNAME$h = 'lumx-slideshow-item';
11422
+ const CLASSNAME$g = 'lumx-slideshow-item';
11405
11423
 
11406
11424
  /**
11407
11425
  * SlideshowItem component.
@@ -11418,7 +11436,7 @@ const SlideshowItem = forwardRef((props, ref) => {
11418
11436
  } = props;
11419
11437
  const {
11420
11438
  block
11421
- } = useClassnames(CLASSNAME$h);
11439
+ } = useClassnames(CLASSNAME$g);
11422
11440
  return /*#__PURE__*/jsx("div", {
11423
11441
  ref: ref,
11424
11442
  className: block([className]),
@@ -11427,7 +11445,7 @@ const SlideshowItem = forwardRef((props, ref) => {
11427
11445
  });
11428
11446
  });
11429
11447
  SlideshowItem.displayName = COMPONENT_NAME$h;
11430
- SlideshowItem.className = CLASSNAME$h;
11448
+ SlideshowItem.className = CLASSNAME$g;
11431
11449
 
11432
11450
  const isTouchDevice = () => 'ontouchstart' in window;
11433
11451
 
@@ -11494,12 +11512,12 @@ const COMPONENT_NAME$g = 'SlideshowControls';
11494
11512
  /**
11495
11513
  * Component default class name and class prefix.
11496
11514
  */
11497
- const CLASSNAME$g = 'lumx-slideshow-controls';
11515
+ const CLASSNAME$f = 'lumx-slideshow-controls';
11498
11516
 
11499
11517
  /**
11500
11518
  * Component default props.
11501
11519
  */
11502
- const DEFAULT_PROPS$f = {
11520
+ const DEFAULT_PROPS$h = {
11503
11521
  activeIndex: 0
11504
11522
  };
11505
11523
 
@@ -11513,7 +11531,7 @@ const DEFAULT_PROPS$f = {
11513
11531
  const InternalSlideshowControls = forwardRef((props, ref) => {
11514
11532
  const defaultTheme = useTheme() || Theme.light;
11515
11533
  const {
11516
- activeIndex = DEFAULT_PROPS$f.activeIndex,
11534
+ activeIndex = DEFAULT_PROPS$h.activeIndex,
11517
11535
  className,
11518
11536
  nextButtonProps,
11519
11537
  onNextClick,
@@ -11539,7 +11557,7 @@ const InternalSlideshowControls = forwardRef((props, ref) => {
11539
11557
  const {
11540
11558
  block,
11541
11559
  element
11542
- } = useClassnames(CLASSNAME$g);
11560
+ } = useClassnames(CLASSNAME$f);
11543
11561
  // Listen to touch swipe navigate left & right.
11544
11562
  useSwipeNavigate(parent,
11545
11563
  // Go next without loopback.
@@ -11631,8 +11649,8 @@ const InternalSlideshowControls = forwardRef((props, ref) => {
11631
11649
  });
11632
11650
  });
11633
11651
  InternalSlideshowControls.displayName = COMPONENT_NAME$g;
11634
- InternalSlideshowControls.className = CLASSNAME$g;
11635
- InternalSlideshowControls.defaultProps = DEFAULT_PROPS$f;
11652
+ InternalSlideshowControls.className = CLASSNAME$f;
11653
+ InternalSlideshowControls.defaultProps = DEFAULT_PROPS$h;
11636
11654
  const SlideshowControls = Object.assign(InternalSlideshowControls, {
11637
11655
  useSlideshowControls,
11638
11656
  useSlideshowControlsDefaultOptions: DEFAULT_OPTIONS
@@ -11646,7 +11664,7 @@ const COMPONENT_NAME$f = 'Slideshow';
11646
11664
  /**
11647
11665
  * Component default class name and class prefix.
11648
11666
  */
11649
- const CLASSNAME$f = 'lumx-slideshow';
11667
+ const CLASSNAME$e = 'lumx-slideshow';
11650
11668
 
11651
11669
  /**
11652
11670
  * Slides component.
@@ -11679,7 +11697,7 @@ const Slides = forwardRef((props, ref) => {
11679
11697
  const {
11680
11698
  block,
11681
11699
  element
11682
- } = useClassnames(CLASSNAME$f);
11700
+ } = useClassnames(CLASSNAME$e);
11683
11701
 
11684
11702
  // Inline style of wrapper element.
11685
11703
  const wrapperStyle = {
@@ -11721,7 +11739,7 @@ const Slides = forwardRef((props, ref) => {
11721
11739
  });
11722
11740
  });
11723
11741
  Slides.displayName = COMPONENT_NAME$f;
11724
- Slides.className = CLASSNAME$f;
11742
+ Slides.className = CLASSNAME$e;
11725
11743
 
11726
11744
  /**
11727
11745
  * Component display name.
@@ -11731,12 +11749,12 @@ const COMPONENT_NAME$e = 'Switch';
11731
11749
  /**
11732
11750
  * Component default class name and class prefix.
11733
11751
  */
11734
- const CLASSNAME$e = 'lumx-switch';
11752
+ const CLASSNAME$d = 'lumx-switch';
11735
11753
 
11736
11754
  /**
11737
11755
  * Component default props.
11738
11756
  */
11739
- const DEFAULT_PROPS$e = {
11757
+ const DEFAULT_PROPS$g = {
11740
11758
  position: Alignment.left
11741
11759
  };
11742
11760
 
@@ -11763,7 +11781,7 @@ const Switch = forwardRef((props, ref) => {
11763
11781
  isChecked = checked,
11764
11782
  name,
11765
11783
  onChange,
11766
- position = DEFAULT_PROPS$e.position,
11784
+ position = DEFAULT_PROPS$g.position,
11767
11785
  theme = defaultTheme,
11768
11786
  value,
11769
11787
  inputProps = {},
@@ -11772,7 +11790,7 @@ const Switch = forwardRef((props, ref) => {
11772
11790
  const {
11773
11791
  block,
11774
11792
  element
11775
- } = useClassnames(CLASSNAME$e);
11793
+ } = useClassnames(CLASSNAME$d);
11776
11794
  const generatedInputId = useId();
11777
11795
  const inputId = id || generatedInputId;
11778
11796
  const handleChange = event => {
@@ -11831,8 +11849,8 @@ const Switch = forwardRef((props, ref) => {
11831
11849
  });
11832
11850
  });
11833
11851
  Switch.displayName = COMPONENT_NAME$e;
11834
- Switch.className = CLASSNAME$e;
11835
- Switch.defaultProps = DEFAULT_PROPS$e;
11852
+ Switch.className = CLASSNAME$d;
11853
+ Switch.defaultProps = DEFAULT_PROPS$g;
11836
11854
 
11837
11855
  /**
11838
11856
  * Component display name.
@@ -11842,12 +11860,12 @@ const COMPONENT_NAME$d = 'Table';
11842
11860
  /**
11843
11861
  * Component default class name and class prefix.
11844
11862
  */
11845
- const CLASSNAME$d = 'lumx-table';
11863
+ const CLASSNAME$c = 'lumx-table';
11846
11864
 
11847
11865
  /**
11848
11866
  * Component default props.
11849
11867
  */
11850
- const DEFAULT_PROPS$d = {};
11868
+ const DEFAULT_PROPS$f = {};
11851
11869
 
11852
11870
  /**
11853
11871
  * Table component.
@@ -11868,7 +11886,7 @@ const Table = forwardRef((props, ref) => {
11868
11886
  } = props;
11869
11887
  const {
11870
11888
  block
11871
- } = useClassnames(CLASSNAME$d);
11889
+ } = useClassnames(CLASSNAME$c);
11872
11890
  return /*#__PURE__*/jsx("table", {
11873
11891
  ref: ref,
11874
11892
  ...forwardedProps,
@@ -11881,8 +11899,8 @@ const Table = forwardRef((props, ref) => {
11881
11899
  });
11882
11900
  });
11883
11901
  Table.displayName = COMPONENT_NAME$d;
11884
- Table.className = CLASSNAME$d;
11885
- Table.defaultProps = DEFAULT_PROPS$d;
11902
+ Table.className = CLASSNAME$c;
11903
+ Table.defaultProps = DEFAULT_PROPS$f;
11886
11904
 
11887
11905
  /**
11888
11906
  * Component display name.
@@ -11892,7 +11910,7 @@ const COMPONENT_NAME$c = 'TableBody';
11892
11910
  /**
11893
11911
  * Component default class name and class prefix.
11894
11912
  */
11895
- const CLASSNAME$c = `${CLASSNAME$d}__body`;
11913
+ const CLASSNAME$b = `${CLASSNAME$c}__body`;
11896
11914
 
11897
11915
  /**
11898
11916
  * TableBody component.
@@ -11909,7 +11927,7 @@ const TableBody = forwardRef((props, ref) => {
11909
11927
  } = props;
11910
11928
  const {
11911
11929
  block
11912
- } = useClassnames(CLASSNAME$c);
11930
+ } = useClassnames(CLASSNAME$b);
11913
11931
  return /*#__PURE__*/jsx("tbody", {
11914
11932
  ref: ref,
11915
11933
  ...forwardedProps,
@@ -11918,7 +11936,7 @@ const TableBody = forwardRef((props, ref) => {
11918
11936
  });
11919
11937
  });
11920
11938
  TableBody.displayName = COMPONENT_NAME$c;
11921
- TableBody.className = CLASSNAME$c;
11939
+ TableBody.className = CLASSNAME$b;
11922
11940
 
11923
11941
  const ThOrder = {
11924
11942
  asc: 'asc',
@@ -11944,12 +11962,12 @@ const COMPONENT_NAME$b = 'TableCell';
11944
11962
  /**
11945
11963
  * Component default class name and class prefix.
11946
11964
  */
11947
- const CLASSNAME$b = `${CLASSNAME$d}__cell`;
11965
+ const CLASSNAME$a = `${CLASSNAME$c}__cell`;
11948
11966
 
11949
11967
  /**
11950
11968
  * Component default props.
11951
11969
  */
11952
- const DEFAULT_PROPS$c = {
11970
+ const DEFAULT_PROPS$e = {
11953
11971
  variant: TableCellVariant.body
11954
11972
  };
11955
11973
 
@@ -11968,12 +11986,12 @@ const TableCell = forwardRef((props, ref) => {
11968
11986
  isSortable,
11969
11987
  onHeaderClick,
11970
11988
  sortOrder,
11971
- variant = DEFAULT_PROPS$c.variant,
11989
+ variant = DEFAULT_PROPS$e.variant,
11972
11990
  ...forwardedProps
11973
11991
  } = props;
11974
11992
  const {
11975
11993
  block
11976
- } = useClassnames(CLASSNAME$b);
11994
+ } = useClassnames(CLASSNAME$a);
11977
11995
 
11978
11996
  // Use button if clickable
11979
11997
  const Wrapper = onHeaderClick ? 'button' : 'div';
@@ -12000,22 +12018,22 @@ const TableCell = forwardRef((props, ref) => {
12000
12018
  }, [className]),
12001
12019
  "aria-sort": ariaSort,
12002
12020
  children: /*#__PURE__*/jsxs(Wrapper, {
12003
- className: `${CLASSNAME$b}-wrapper`,
12021
+ className: `${CLASSNAME$a}-wrapper`,
12004
12022
  ...wrapperProps,
12005
12023
  children: [icon && !isSortable && /*#__PURE__*/jsx(Icon, {
12006
- className: `${CLASSNAME$b}-icon`,
12024
+ className: `${CLASSNAME$a}-icon`,
12007
12025
  icon: icon,
12008
12026
  size: Size.xxs
12009
12027
  }), isSortable && sortOrder === ThOrder.asc && /*#__PURE__*/jsx(Icon, {
12010
- className: `${CLASSNAME$b}-icon`,
12028
+ className: `${CLASSNAME$a}-icon`,
12011
12029
  icon: mdiArrowUp,
12012
12030
  size: Size.xxs
12013
12031
  }), isSortable && sortOrder === ThOrder.desc && /*#__PURE__*/jsx(Icon, {
12014
- className: `${CLASSNAME$b}-icon`,
12032
+ className: `${CLASSNAME$a}-icon`,
12015
12033
  icon: mdiArrowDown,
12016
12034
  size: Size.xxs
12017
12035
  }), /*#__PURE__*/jsx("div", {
12018
- className: `${CLASSNAME$b}-content`,
12036
+ className: `${CLASSNAME$a}-content`,
12019
12037
  children: children
12020
12038
  })]
12021
12039
  })
@@ -12025,15 +12043,15 @@ const TableCell = forwardRef((props, ref) => {
12025
12043
  body: true
12026
12044
  }, [className]),
12027
12045
  children: /*#__PURE__*/jsx("div", {
12028
- className: `${CLASSNAME$b}-content`,
12046
+ className: `${CLASSNAME$a}-content`,
12029
12047
  children: children
12030
12048
  })
12031
12049
  })]
12032
12050
  });
12033
12051
  });
12034
12052
  TableCell.displayName = COMPONENT_NAME$b;
12035
- TableCell.className = CLASSNAME$b;
12036
- TableCell.defaultProps = DEFAULT_PROPS$c;
12053
+ TableCell.className = CLASSNAME$a;
12054
+ TableCell.defaultProps = DEFAULT_PROPS$e;
12037
12055
 
12038
12056
  /**
12039
12057
  * Component display name.
@@ -12043,12 +12061,12 @@ const COMPONENT_NAME$a = 'TableHeader';
12043
12061
  /**
12044
12062
  * Component default class name and class prefix.
12045
12063
  */
12046
- const CLASSNAME$a = `${CLASSNAME$d}__header`;
12064
+ const CLASSNAME$9 = `${CLASSNAME$c}__header`;
12047
12065
 
12048
12066
  /**
12049
12067
  * Component default props.
12050
12068
  */
12051
- const DEFAULT_PROPS$b = {};
12069
+ const DEFAULT_PROPS$d = {};
12052
12070
 
12053
12071
  /**
12054
12072
  * TableHeader component.
@@ -12065,7 +12083,7 @@ const TableHeader = forwardRef((props, ref) => {
12065
12083
  } = props;
12066
12084
  const {
12067
12085
  block
12068
- } = useClassnames(CLASSNAME$a);
12086
+ } = useClassnames(CLASSNAME$9);
12069
12087
  return /*#__PURE__*/jsx("thead", {
12070
12088
  ref: ref,
12071
12089
  ...forwardedProps,
@@ -12074,8 +12092,8 @@ const TableHeader = forwardRef((props, ref) => {
12074
12092
  });
12075
12093
  });
12076
12094
  TableHeader.displayName = COMPONENT_NAME$a;
12077
- TableHeader.className = CLASSNAME$a;
12078
- TableHeader.defaultProps = DEFAULT_PROPS$b;
12095
+ TableHeader.className = CLASSNAME$9;
12096
+ TableHeader.defaultProps = DEFAULT_PROPS$d;
12079
12097
 
12080
12098
  /**
12081
12099
  * Component display name.
@@ -12085,12 +12103,12 @@ const COMPONENT_NAME$9 = 'TableRow';
12085
12103
  /**
12086
12104
  * Component default class name and class prefix.
12087
12105
  */
12088
- const CLASSNAME$9 = `${CLASSNAME$d}__row`;
12106
+ const CLASSNAME$8 = `${CLASSNAME$c}__row`;
12089
12107
 
12090
12108
  /**
12091
12109
  * Component default props.
12092
12110
  */
12093
- const DEFAULT_PROPS$a = {};
12111
+ const DEFAULT_PROPS$c = {};
12094
12112
 
12095
12113
  /**
12096
12114
  * TableRow component.
@@ -12114,7 +12132,7 @@ const TableRow = forwardRef((props, ref) => {
12114
12132
  } = otherProps;
12115
12133
  const {
12116
12134
  element
12117
- } = useClassnames(CLASSNAME$d);
12135
+ } = useClassnames(CLASSNAME$c);
12118
12136
  return /*#__PURE__*/jsx("tr", {
12119
12137
  ref: ref,
12120
12138
  tabIndex: isClickable && !disabledStateProps.disabled ? 0 : -1,
@@ -12129,10 +12147,10 @@ const TableRow = forwardRef((props, ref) => {
12129
12147
  });
12130
12148
  });
12131
12149
  TableRow.displayName = COMPONENT_NAME$9;
12132
- TableRow.className = CLASSNAME$9;
12133
- TableRow.defaultProps = DEFAULT_PROPS$a;
12150
+ TableRow.className = CLASSNAME$8;
12151
+ TableRow.defaultProps = DEFAULT_PROPS$c;
12134
12152
 
12135
- const DEFAULT_PROPS$9 = {
12153
+ const DEFAULT_PROPS$b = {
12136
12154
  isLazy: INIT_STATE.isLazy,
12137
12155
  shouldActivateOnFocus: INIT_STATE.shouldActivateOnFocus
12138
12156
  };
@@ -12159,7 +12177,7 @@ const TabProvider = props => {
12159
12177
  dispatch({
12160
12178
  type: 'update',
12161
12179
  payload: {
12162
- ...DEFAULT_PROPS$9,
12180
+ ...DEFAULT_PROPS$b,
12163
12181
  ...propState
12164
12182
  }
12165
12183
  });
@@ -12188,7 +12206,12 @@ const TabProvider = props => {
12188
12206
  children: children
12189
12207
  });
12190
12208
  };
12191
- TabProvider.defaultProps = DEFAULT_PROPS$9;
12209
+ TabProvider.defaultProps = DEFAULT_PROPS$b;
12210
+
12211
+ /**
12212
+ * Component default class name and class prefix.
12213
+ */
12214
+ const TABS_CLASSNAME = `lumx-tabs`;
12192
12215
 
12193
12216
  let TabListLayout = /*#__PURE__*/function (TabListLayout) {
12194
12217
  TabListLayout["clustered"] = "clustered";
@@ -12205,15 +12228,10 @@ let TabListLayout = /*#__PURE__*/function (TabListLayout) {
12205
12228
  */
12206
12229
  const COMPONENT_NAME$8 = 'TabList';
12207
12230
 
12208
- /**
12209
- * Component default class name and class prefix.
12210
- */
12211
- const CLASSNAME$8 = `lumx-tabs`;
12212
-
12213
12231
  /**
12214
12232
  * Component default props.
12215
12233
  */
12216
- const DEFAULT_PROPS$8 = {
12234
+ const DEFAULT_PROPS$a = {
12217
12235
  layout: TabListLayout.fixed,
12218
12236
  position: Alignment.left
12219
12237
  };
@@ -12233,8 +12251,8 @@ const TabList = forwardRef((props, ref) => {
12233
12251
  'aria-label': ariaLabel,
12234
12252
  children,
12235
12253
  className,
12236
- layout = DEFAULT_PROPS$8.layout,
12237
- position = DEFAULT_PROPS$8.position,
12254
+ layout = DEFAULT_PROPS$a.layout,
12255
+ position = DEFAULT_PROPS$a.position,
12238
12256
  theme = defaultTheme,
12239
12257
  ...forwardedProps
12240
12258
  } = props;
@@ -12242,7 +12260,7 @@ const TabList = forwardRef((props, ref) => {
12242
12260
  const {
12243
12261
  block,
12244
12262
  element
12245
- } = useClassnames(CLASSNAME$8);
12263
+ } = useClassnames(TABS_CLASSNAME);
12246
12264
  useRovingTabIndex({
12247
12265
  parentRef: tabListRef,
12248
12266
  elementSelector: '[role="tab"]',
@@ -12266,8 +12284,8 @@ const TabList = forwardRef((props, ref) => {
12266
12284
  });
12267
12285
  });
12268
12286
  TabList.displayName = COMPONENT_NAME$8;
12269
- TabList.className = CLASSNAME$8;
12270
- TabList.defaultProps = DEFAULT_PROPS$8;
12287
+ TabList.className = TABS_CLASSNAME;
12288
+ TabList.defaultProps = DEFAULT_PROPS$a;
12271
12289
 
12272
12290
  /**
12273
12291
  * Component display name.
@@ -12277,12 +12295,12 @@ const COMPONENT_NAME$7 = 'Tab';
12277
12295
  /**
12278
12296
  * Component default class name and class prefix.
12279
12297
  */
12280
- const CLASSNAME$7 = `lumx-tabs__link`;
12298
+ const CLASSNAME$7 = `${TABS_CLASSNAME}__link`;
12281
12299
 
12282
12300
  /**
12283
12301
  * Component default props.
12284
12302
  */
12285
- const DEFAULT_PROPS$7 = {};
12303
+ const DEFAULT_PROPS$9 = {};
12286
12304
 
12287
12305
  /**
12288
12306
  * Tab component.
@@ -12364,7 +12382,7 @@ const Tab = forwardRef((props, ref) => {
12364
12382
  });
12365
12383
  Tab.displayName = COMPONENT_NAME$7;
12366
12384
  Tab.className = CLASSNAME$7;
12367
- Tab.defaultProps = DEFAULT_PROPS$7;
12385
+ Tab.defaultProps = DEFAULT_PROPS$9;
12368
12386
 
12369
12387
  /**
12370
12388
  * Component display name.
@@ -12379,7 +12397,7 @@ const CLASSNAME$6 = `lumx-tab-panel`;
12379
12397
  /**
12380
12398
  * Component default props.
12381
12399
  */
12382
- const DEFAULT_PROPS$6 = {};
12400
+ const DEFAULT_PROPS$8 = {};
12383
12401
 
12384
12402
  /**
12385
12403
  * TabPanel component.
@@ -12418,7 +12436,7 @@ const TabPanel = forwardRef((props, ref) => {
12418
12436
  });
12419
12437
  TabPanel.displayName = COMPONENT_NAME$6;
12420
12438
  TabPanel.className = CLASSNAME$6;
12421
- TabPanel.defaultProps = DEFAULT_PROPS$6;
12439
+ TabPanel.defaultProps = DEFAULT_PROPS$8;
12422
12440
 
12423
12441
  /**
12424
12442
  * Component display name.
@@ -12431,119 +12449,137 @@ const COMPONENT_NAME$5 = 'TextField';
12431
12449
  const CLASSNAME$5 = 'lumx-text-field';
12432
12450
 
12433
12451
  /**
12434
- * Default minimum number of rows in the multiline mode.
12452
+ * Input native element class name.
12435
12453
  */
12436
- const DEFAULT_MIN_ROWS = 2;
12454
+ const INPUT_NATIVE_CLASSNAME = `${CLASSNAME$5}__input-native`;
12437
12455
 
12438
12456
  /**
12439
12457
  * Component default props.
12440
12458
  */
12441
- const DEFAULT_PROPS$5 = {
12459
+ const DEFAULT_PROPS$7 = {
12442
12460
  type: 'text'
12443
12461
  };
12444
12462
 
12445
12463
  /**
12446
- * Hook that allows to calculate the number of rows needed for a text area.
12447
- * @param minimumRows Minimum number of rows that we want to display.
12448
- * @return rows to be used and a callback to recalculate
12464
+ * Raw input text component
12465
+ * (input element without any decoration)
12449
12466
  */
12450
- const useComputeNumberOfRows = minimumRows => {
12451
- const [rows, setRows] = useState(minimumRows);
12452
- const recompute = target => {
12453
- /**
12454
- * HEAD's UP! This part is a little bit tricky. The idea here is to only
12455
- * display the necessary rows on the textarea. In order to dynamically adjust
12456
- * the height on that field, we need to:
12457
- * 1. Set the current amount of rows to the minimum. That will make the scroll appear.
12458
- * 2. With that, we will have the `scrollHeight`, meaning the height of the container adjusted to the current content
12459
- * 3. With the scroll height, we can figure out how many rows we need to use by dividing the scroll height
12460
- * by the line height.
12461
- * 4. With that number, we can readjust the number of rows on the text area. We need to do that here, if we leave that to
12462
- * the state change through React, there are some scenarios (resize, hitting ENTER or BACKSPACE which add or remove lines)
12463
- * when we will not see the update and the rows will be resized to the minimum.
12464
- * 5. In case there is any other update on the component that changes the UI, we need to keep the number of rows
12465
- * on the state in order to allow React to re-render. Therefore, we save them using `useState`
12466
- */
12467
- // eslint-disable-next-line no-param-reassign
12468
- target.rows = minimumRows;
12469
- let currentRows = target.scrollHeight / (target.clientHeight / minimumRows);
12470
- currentRows = currentRows >= minimumRows ? currentRows : minimumRows;
12471
- // eslint-disable-next-line no-param-reassign
12472
- target.rows = currentRows;
12473
- setRows(currentRows);
12474
- };
12475
- return {
12476
- recomputeNumberOfRows: recompute,
12477
- rows
12478
- };
12479
- };
12480
- const renderInputNative = props => {
12467
+ const RawInputText = forwardRef((props, ref) => {
12468
+ const defaultTheme = useTheme() || Theme.light;
12481
12469
  const {
12482
- id,
12483
- isRequired,
12484
- placeholder,
12485
- multiline,
12470
+ className,
12471
+ theme = defaultTheme,
12486
12472
  value,
12487
- setFocus,
12488
12473
  onChange,
12489
- onFocus,
12490
- onBlur,
12491
- inputRef,
12492
- rows,
12493
- recomputeNumberOfRows,
12494
- type,
12495
- name,
12496
- hasError,
12497
- describedById,
12498
- element,
12474
+ type = DEFAULT_PROPS$7.type,
12499
12475
  ...forwardedProps
12500
12476
  } = props;
12501
- // eslint-disable-next-line react-hooks/rules-of-hooks
12502
- const ref = useRef(null);
12477
+ const textareaRef = useRef(null);
12478
+ const {
12479
+ block
12480
+ } = useClassnames(INPUT_NATIVE_CLASSNAME);
12481
+ const handleChange = useCallback(evt => {
12482
+ onChange?.(evt.target.value, evt.target.name, evt);
12483
+ }, [onChange]);
12484
+ return /*#__PURE__*/jsx("input", {
12485
+ ...forwardedProps,
12486
+ type: type,
12487
+ ref: useMergeRefs(ref, textareaRef),
12488
+ className: block({
12489
+ [`theme-${theme}`]: Boolean(theme)
12490
+ }, [className]),
12491
+ onChange: handleChange,
12492
+ value: value
12493
+ });
12494
+ });
12503
12495
 
12504
- // eslint-disable-next-line react-hooks/rules-of-hooks
12505
- useEffect(() => {
12506
- // Recompute the number of rows for the first rendering
12507
- if (multiline && ref && ref.current) {
12508
- recomputeNumberOfRows(ref.current);
12496
+ /**
12497
+ * Fit textarea rows to its content
12498
+ */
12499
+ function useFitRowsToContent(minimumRows, textareaRef, value) {
12500
+ const [rows, setRows] = useState(minimumRows);
12501
+ React__default.useLayoutEffect(() => {
12502
+ const {
12503
+ current: textarea
12504
+ } = textareaRef;
12505
+ if (!textarea) {
12506
+ return;
12509
12507
  }
12510
- }, [ref, multiline, recomputeNumberOfRows, value]);
12511
- const onTextFieldFocus = event => {
12512
- onFocus?.(event);
12513
- setFocus(true);
12514
- };
12515
- const onTextFieldBlur = event => {
12516
- onBlur?.(event);
12517
- setFocus(false);
12518
- };
12519
- const handleChange = event => {
12520
- onChange(get(event, 'target.value'), name, event);
12521
- };
12522
- const Component = multiline ? 'textarea' : 'input';
12523
- const inputProps = {
12524
- ...forwardedProps,
12525
- id,
12526
- className: element('input-native', multiline ? 'textarea' : 'text'),
12527
- placeholder,
12508
+
12509
+ // Save the current number of rows to restore it later and avoid a flicker.
12510
+ const previousRows = textarea.rows;
12511
+
12512
+ // Set the rows to the minimum to get a baseline for row height.
12513
+ // This is necessary to get a consistent row height calculation.
12514
+ textarea.rows = minimumRows;
12515
+ const rowHeight = textarea.clientHeight / minimumRows;
12516
+
12517
+ // Set rows to 1 to get the smallest possible textarea, which forces
12518
+ // scrollHeight to be the actual content height.
12519
+ textarea.rows = 1;
12520
+ const {
12521
+ scrollHeight
12522
+ } = textarea;
12523
+
12524
+ // Restore the rows to the previous value.
12525
+ textarea.rows = previousRows;
12526
+
12527
+ // Calculate the number of rows required to display the content.
12528
+ // Fallback to `minimumRows` if `rowHeight` is 0.
12529
+ const requiredRows = rowHeight > 0 ? Math.ceil(scrollHeight / rowHeight) : minimumRows;
12530
+
12531
+ // Update the rows state with the new calculated value.
12532
+ setRows(Math.max(requiredRows, minimumRows));
12533
+ }, [value, minimumRows, textareaRef]);
12534
+ return rows;
12535
+ }
12536
+
12537
+ /**
12538
+ * Component default props.
12539
+ */
12540
+ const DEFAULT_PROPS$6 = {
12541
+ minimumRows: 2
12542
+ };
12543
+
12544
+ /**
12545
+ * Raw input text area component
12546
+ * (textarea element without any decoration)
12547
+ */
12548
+ const RawInputTextarea = forwardRef((props, ref) => {
12549
+ const defaultTheme = useTheme() || Theme.light;
12550
+ const {
12551
+ className,
12552
+ theme = defaultTheme,
12553
+ minimumRows = DEFAULT_PROPS$6.minimumRows,
12528
12554
  value,
12529
- name,
12530
- required: isRequired,
12531
- onFocus: onTextFieldFocus,
12532
- onBlur: onTextFieldBlur,
12555
+ onChange,
12556
+ ...forwardedProps
12557
+ } = props;
12558
+ const textareaRef = useRef(null);
12559
+ const rows = useFitRowsToContent(minimumRows, textareaRef, value);
12560
+ const {
12561
+ block
12562
+ } = useClassnames(INPUT_NATIVE_CLASSNAME);
12563
+ const handleChange = useCallback(evt => {
12564
+ onChange?.(evt.target.value, evt.target.name, evt);
12565
+ }, [onChange]);
12566
+ return /*#__PURE__*/jsx("textarea", {
12567
+ className: block({
12568
+ [`theme-${theme}`]: Boolean(theme)
12569
+ }, [className]),
12570
+ ref: useMergeRefs(ref, textareaRef),
12571
+ ...forwardedProps,
12533
12572
  onChange: handleChange,
12534
- 'aria-invalid': hasError ? 'true' : undefined,
12535
- 'aria-describedby': describedById,
12536
- readOnly: forwardedProps.readOnly || forwardedProps['aria-disabled'],
12537
- ref: mergeRefs(inputRef, ref)
12538
- };
12539
- if (multiline) {
12540
- inputProps.rows = rows;
12541
- } else {
12542
- inputProps.type = type;
12543
- }
12544
- return /*#__PURE__*/jsx(Component, {
12545
- ...inputProps
12573
+ value: value,
12574
+ rows: rows
12546
12575
  });
12576
+ });
12577
+
12578
+ /**
12579
+ * Component default props.
12580
+ */
12581
+ const DEFAULT_PROPS$5 = {
12582
+ type: 'text'
12547
12583
  };
12548
12584
 
12549
12585
  /**
@@ -12612,10 +12648,6 @@ const TextField = forwardRef((props, ref) => {
12612
12648
  const describedByIds = [errorId, helperId, forwardedProps['aria-describedby']].filter(Boolean);
12613
12649
  const describedById = describedByIds.length === 0 ? undefined : describedByIds.join(' ');
12614
12650
  const [isFocus, setFocus] = useState(false);
12615
- const {
12616
- rows,
12617
- recomputeNumberOfRows
12618
- } = useComputeNumberOfRows(multiline ? minimumRows || DEFAULT_MIN_ROWS : 0);
12619
12651
  const valueLength = (value || '').length;
12620
12652
  const isNotEmpty = valueLength > 0;
12621
12653
 
@@ -12640,6 +12672,37 @@ const TextField = forwardRef((props, ref) => {
12640
12672
  inputElement.current.focus();
12641
12673
  }
12642
12674
  };
12675
+ const inputProps = {
12676
+ id: textFieldId,
12677
+ ref: inputRef,
12678
+ ...disabledStateProps,
12679
+ ...forwardedProps,
12680
+ required: isRequired,
12681
+ maxLength,
12682
+ onBlur(evt) {
12683
+ setFocus(false);
12684
+ onBlur?.(evt);
12685
+ },
12686
+ onFocus(evt) {
12687
+ setFocus(true);
12688
+ onFocus?.(evt);
12689
+ },
12690
+ placeholder,
12691
+ value,
12692
+ onChange,
12693
+ name,
12694
+ 'aria-invalid': hasError || undefined,
12695
+ 'aria-describedby': describedById,
12696
+ readOnly: forwardedProps.readOnly || disabledStateProps['aria-disabled'],
12697
+ theme
12698
+ };
12699
+ const input = multiline ? /*#__PURE__*/jsx(RawInputTextarea, {
12700
+ ...inputProps,
12701
+ minimumRows: minimumRows
12702
+ }) : /*#__PURE__*/jsx(RawInputText, {
12703
+ type: type,
12704
+ ...inputProps
12705
+ });
12643
12706
  return /*#__PURE__*/jsxs("div", {
12644
12707
  ref: ref,
12645
12708
  className: block({
@@ -12683,54 +12746,12 @@ const TextField = forwardRef((props, ref) => {
12683
12746
  color: theme === Theme.dark ? 'light' : undefined,
12684
12747
  icon: icon,
12685
12748
  size: Size.xs
12686
- }), chips && /*#__PURE__*/jsxs("div", {
12749
+ }), chips ? /*#__PURE__*/jsxs("div", {
12687
12750
  className: element('chips'),
12688
- children: [chips, renderInputNative({
12689
- id: textFieldId,
12690
- inputRef,
12691
- ...disabledStateProps,
12692
- isRequired,
12693
- maxLength,
12694
- multiline,
12695
- onBlur,
12696
- onChange,
12697
- onFocus,
12698
- placeholder,
12699
- recomputeNumberOfRows,
12700
- rows,
12701
- setFocus,
12702
- type,
12703
- value,
12704
- name,
12705
- hasError,
12706
- describedById,
12707
- element,
12708
- ...forwardedProps
12709
- })]
12710
- }), !chips && /*#__PURE__*/jsx("div", {
12711
- className: element('input-wrapper'),
12712
- children: renderInputNative({
12713
- id: textFieldId,
12714
- inputRef,
12715
- ...disabledStateProps,
12716
- isRequired,
12717
- maxLength,
12718
- multiline,
12719
- onBlur,
12720
- onChange,
12721
- onFocus,
12722
- placeholder,
12723
- recomputeNumberOfRows,
12724
- rows,
12725
- setFocus,
12726
- type,
12727
- value,
12728
- name,
12729
- hasError,
12730
- describedById,
12731
- element,
12732
- ...forwardedProps
12733
- })
12751
+ children: [chips, input]
12752
+ }) : /*#__PURE__*/jsx("div", {
12753
+ className: element(`input-wrapper`),
12754
+ children: input
12734
12755
  }), (isValid || hasError) && /*#__PURE__*/jsx(Icon, {
12735
12756
  className: element('input-validity'),
12736
12757
  color: theme === Theme.dark ? 'light' : undefined,
@@ -13457,7 +13478,7 @@ const Tooltip = forwardRef((props, ref) => {
13457
13478
  className: block({
13458
13479
  [`position-${position}`]: Boolean(position),
13459
13480
  'is-initializing': !styles.popper?.transform
13460
- }, [className, isHidden && VISUALLY_HIDDEN]),
13481
+ }, [className, isHidden && cls.visuallyHidden()]),
13461
13482
  style: {
13462
13483
  ...(isHidden ? undefined : styles.popper),
13463
13484
  zIndex
@@ -13606,7 +13627,7 @@ const Uploader = forwardRef((props, ref) => {
13606
13627
  }), fileInputProps && /*#__PURE__*/jsx("input", {
13607
13628
  type: "file",
13608
13629
  id: inputId,
13609
- className: `${element('input')} ${VISUALLY_HIDDEN}`,
13630
+ className: element('input', [cls.visuallyHidden()]),
13610
13631
  ...disabledStateProps,
13611
13632
  ...fileInputProps,
13612
13633
  readOnly: isAnyDisabled,
@@ -13756,5 +13777,5 @@ UserBlock.displayName = COMPONENT_NAME;
13756
13777
  UserBlock.className = CLASSNAME;
13757
13778
  UserBlock.defaultProps = DEFAULT_PROPS;
13758
13779
 
13759
- export { AlertDialog, Autocomplete, AutocompleteMultiple, Avatar, Badge, BadgeWrapper, Button, ButtonEmphasis, ButtonGroup, CLASSNAME$d as CLASSNAME, Checkbox, Chip, ChipGroup, CommentBlock, CommentBlockVariant, DatePicker, DatePickerControlled, DatePickerField, Dialog, Divider, DragHandle, Dropdown, ExpansionPanel, Flag, FlexBox, GenericBlock, GenericBlockGapSize, Grid, GridColumn, GridItem, Heading, HeadingLevelProvider, Icon, IconButton, ImageBlock, ImageBlockCaptionPosition, ImageLightbox, InlineList, InputHelper, InputLabel, Lightbox, Link, LinkPreview, List, ListDivider, ListItem, ListSubheader, Message, Mosaic, Navigation, Notification, Placement, Popover, PopoverDialog, PostBlock, Progress, ProgressCircular, ProgressLinear, ProgressTracker, ProgressTrackerProvider, ProgressTrackerStep, ProgressTrackerStepPanel, ProgressVariant, RadioButton, RadioGroup, Select, SelectMultiple, SelectMultipleField, SelectVariant, SideNavigation, SideNavigationItem, SkeletonCircle, SkeletonRectangle, SkeletonRectangleVariant, SkeletonTypography, Slider, Slides, Slideshow, SlideshowControls, SlideshowItem, Switch, Tab, TabList, TabListLayout, TabPanel, TabProvider, Table, TableBody, TableCell, TableCellVariant, TableHeader, TableRow, Text, TextField, ThOrder, ThemeProvider, Thumbnail, ThumbnailAspectRatio, ThumbnailObjectFit, ThumbnailVariant, Toolbar, Tooltip, Uploader, UploaderVariant, UserBlock, clamp, isClickable, useFocusPointStyle, useHeadingLevel, useTheme };
13780
+ export { AlertDialog, Autocomplete, AutocompleteMultiple, Avatar, Badge, BadgeWrapper, Button, ButtonEmphasis, ButtonGroup, Checkbox, Chip, ChipGroup, CommentBlock, CommentBlockVariant, DatePicker, DatePickerControlled, DatePickerField, Dialog, Divider, DragHandle, Dropdown, ExpansionPanel, Flag, FlexBox, GenericBlock, GenericBlockGapSize, Grid, GridColumn, GridItem, Heading, HeadingLevelProvider, Icon, IconButton, ImageBlock, ImageBlockCaptionPosition, ImageLightbox, InlineList, InputHelper, InputLabel, Lightbox, Link, LinkPreview, List, ListDivider, ListItem, ListSubheader, Message, Mosaic, Navigation, Notification, Placement, Popover, PopoverDialog, PostBlock, Progress, ProgressCircular, ProgressLinear, ProgressTracker, ProgressTrackerProvider, ProgressTrackerStep, ProgressTrackerStepPanel, ProgressVariant, RadioButton, RadioGroup, RawInputText, RawInputTextarea, Select, SelectMultiple, SelectMultipleField, SelectVariant, SideNavigation, SideNavigationItem, SkeletonCircle, SkeletonRectangle, SkeletonRectangleVariant, SkeletonTypography, Slider, Slides, Slideshow, SlideshowControls, SlideshowItem, Switch, Tab, TabList, TabListLayout, TabPanel, TabProvider, Table, TableBody, TableCell, TableCellVariant, TableHeader, TableRow, Text, TextField, ThOrder, ThemeProvider, Thumbnail, ThumbnailAspectRatio, ThumbnailObjectFit, ThumbnailVariant, Toolbar, Tooltip, Uploader, UploaderVariant, UserBlock, clamp, isClickable, useFocusPointStyle, useHeadingLevel, useTheme };
13760
13781
  //# sourceMappingURL=index.js.map