@lumx/react 4.1.1-alpha.1 → 4.1.1-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.js CHANGED
@@ -19,7 +19,7 @@ import concat from 'lodash/concat';
19
19
  import dropRight from 'lodash/dropRight';
20
20
  import partition from 'lodash/partition';
21
21
  import reduce from 'lodash/reduce';
22
- import { u as useDisabledStateContext, P as Portal, C as ClickAwayProvider } from './_internal/ClSM3-wl.js';
22
+ import { u as useDisabledStateContext, P as Portal, C as ClickAwayProvider } from './_internal/DpdvhbTO.js';
23
23
  import { mdiCloseCircle } from '@lumx/icons/esm/close-circle';
24
24
  import memoize from 'lodash/memoize';
25
25
  import { mdiClose } from '@lumx/icons/esm/close';
@@ -33,8 +33,8 @@ import castArray from 'lodash/castArray';
33
33
  import { mdiDragVertical } from '@lumx/icons/esm/drag-vertical';
34
34
  import { mdiChevronDown } from '@lumx/icons/esm/chevron-down';
35
35
  import { mdiChevronUp } from '@lumx/icons/esm/chevron-up';
36
- import pick from 'lodash/pick';
37
36
  import noop from 'lodash/noop';
37
+ import pick from 'lodash/pick';
38
38
  import isInteger from 'lodash/isInteger';
39
39
  import { mdiMagnifyMinusOutline } from '@lumx/icons/esm/magnify-minus-outline';
40
40
  import { mdiMagnifyPlusOutline } from '@lumx/icons/esm/magnify-plus-outline';
@@ -247,7 +247,7 @@ const CLASSNAME$1i = 'lumx-alert-dialog';
247
247
  /**
248
248
  * Component default props.
249
249
  */
250
- const DEFAULT_PROPS$15 = {
250
+ const DEFAULT_PROPS$16 = {
251
251
  size: Size$1.tiny,
252
252
  kind: Kind$1.info
253
253
  };
@@ -268,8 +268,8 @@ const AlertDialog = forwardRef((props, ref) => {
268
268
  className,
269
269
  cancelProps,
270
270
  confirmProps,
271
- kind = DEFAULT_PROPS$15.kind,
272
- size = DEFAULT_PROPS$15.size,
271
+ kind = DEFAULT_PROPS$16.kind,
272
+ size = DEFAULT_PROPS$16.size,
273
273
  dialogProps,
274
274
  children,
275
275
  ...forwardedProps
@@ -358,7 +358,7 @@ const AlertDialog = forwardRef((props, ref) => {
358
358
  });
359
359
  AlertDialog.displayName = COMPONENT_NAME$1k;
360
360
  AlertDialog.className = CLASSNAME$1i;
361
- AlertDialog.defaultProps = DEFAULT_PROPS$15;
361
+ AlertDialog.defaultProps = DEFAULT_PROPS$16;
362
362
 
363
363
  /**
364
364
  * Hook focusing an element when defined and `focus` boolean `true`.
@@ -459,7 +459,7 @@ const CLASSNAME$1h = 'lumx-autocomplete';
459
459
  /**
460
460
  * Component default props.
461
461
  */
462
- const DEFAULT_PROPS$14 = {
462
+ const DEFAULT_PROPS$15 = {
463
463
  anchorToInput: false,
464
464
  closeOnClick: false,
465
465
  closeOnClickAway: true,
@@ -481,13 +481,13 @@ const Autocomplete = forwardRef((props, ref) => {
481
481
  otherProps
482
482
  } = useDisableStateProps(props);
483
483
  const {
484
- anchorToInput = DEFAULT_PROPS$14.anchorToInput,
484
+ anchorToInput = DEFAULT_PROPS$15.anchorToInput,
485
485
  children,
486
486
  chips,
487
487
  className,
488
- closeOnClick = DEFAULT_PROPS$14.closeOnClick,
489
- closeOnClickAway = DEFAULT_PROPS$14.closeOnClickAway,
490
- closeOnEscape = DEFAULT_PROPS$14.closeOnEscape,
488
+ closeOnClick = DEFAULT_PROPS$15.closeOnClick,
489
+ closeOnClickAway = DEFAULT_PROPS$15.closeOnClickAway,
490
+ closeOnEscape = DEFAULT_PROPS$15.closeOnEscape,
491
491
  error,
492
492
  fitToAnchorWidth,
493
493
  hasError,
@@ -508,7 +508,7 @@ const Autocomplete = forwardRef((props, ref) => {
508
508
  onInfiniteScroll,
509
509
  placeholder,
510
510
  placement,
511
- shouldFocusOnClose = DEFAULT_PROPS$14.shouldFocusOnClose,
511
+ shouldFocusOnClose = DEFAULT_PROPS$15.shouldFocusOnClose,
512
512
  theme = defaultTheme,
513
513
  value,
514
514
  textFieldProps = {},
@@ -563,7 +563,7 @@ const Autocomplete = forwardRef((props, ref) => {
563
563
  });
564
564
  Autocomplete.displayName = COMPONENT_NAME$1j;
565
565
  Autocomplete.className = CLASSNAME$1h;
566
- Autocomplete.defaultProps = DEFAULT_PROPS$14;
566
+ Autocomplete.defaultProps = DEFAULT_PROPS$15;
567
567
 
568
568
  /**
569
569
  * Component display name.
@@ -578,7 +578,7 @@ const CLASSNAME$1g = 'lumx-autocomplete-multiple';
578
578
  /**
579
579
  * Component default props.
580
580
  */
581
- const DEFAULT_PROPS$13 = {
581
+ const DEFAULT_PROPS$14 = {
582
582
  closeOnClickAway: true,
583
583
  closeOnEscape: true,
584
584
  selectedChipRender(choice, index, onClear, isDisabled) {
@@ -618,8 +618,8 @@ const AutocompleteMultiple = forwardRef((props, ref) => {
618
618
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
619
619
  chipsAlignment,
620
620
  className,
621
- closeOnClickAway = DEFAULT_PROPS$13.closeOnClickAway,
622
- closeOnEscape = DEFAULT_PROPS$13.closeOnEscape,
621
+ closeOnClickAway = DEFAULT_PROPS$14.closeOnClickAway,
622
+ closeOnEscape = DEFAULT_PROPS$14.closeOnEscape,
623
623
  fitToAnchorWidth,
624
624
  hasError,
625
625
  helper,
@@ -641,12 +641,12 @@ const AutocompleteMultiple = forwardRef((props, ref) => {
641
641
  onKeyDown,
642
642
  placeholder,
643
643
  placement,
644
- selectedChipRender = DEFAULT_PROPS$13.selectedChipRender,
644
+ selectedChipRender = DEFAULT_PROPS$14.selectedChipRender,
645
645
  shouldFocusOnClose,
646
646
  theme = defaultTheme,
647
647
  type,
648
648
  value,
649
- values = DEFAULT_PROPS$13.values,
649
+ values = DEFAULT_PROPS$14.values,
650
650
  ...forwardedProps
651
651
  } = otherProps;
652
652
  return /*#__PURE__*/jsx(Autocomplete, {
@@ -688,7 +688,7 @@ const AutocompleteMultiple = forwardRef((props, ref) => {
688
688
  });
689
689
  AutocompleteMultiple.displayName = COMPONENT_NAME$1i;
690
690
  AutocompleteMultiple.className = CLASSNAME$1g;
691
- AutocompleteMultiple.defaultProps = DEFAULT_PROPS$13;
691
+ AutocompleteMultiple.defaultProps = DEFAULT_PROPS$14;
692
692
 
693
693
  /**
694
694
  * Component display name.
@@ -703,7 +703,7 @@ const CLASSNAME$1f = 'lumx-avatar';
703
703
  /**
704
704
  * Component default props.
705
705
  */
706
- const DEFAULT_PROPS$12 = {
706
+ const DEFAULT_PROPS$13 = {
707
707
  size: Size$1.m
708
708
  };
709
709
 
@@ -726,7 +726,7 @@ const Avatar = forwardRef((props, ref) => {
726
726
  linkAs,
727
727
  onClick,
728
728
  onKeyPress,
729
- size = DEFAULT_PROPS$12.size,
729
+ size = DEFAULT_PROPS$13.size,
730
730
  theme = defaultTheme,
731
731
  thumbnailProps,
732
732
  ...forwardedProps
@@ -762,7 +762,7 @@ const Avatar = forwardRef((props, ref) => {
762
762
  });
763
763
  Avatar.displayName = COMPONENT_NAME$1h;
764
764
  Avatar.className = CLASSNAME$1f;
765
- Avatar.defaultProps = DEFAULT_PROPS$12;
765
+ Avatar.defaultProps = DEFAULT_PROPS$13;
766
766
 
767
767
  /**
768
768
  * Component display name.
@@ -777,7 +777,7 @@ const CLASSNAME$1e = 'lumx-badge';
777
777
  /**
778
778
  * Component default props.
779
779
  */
780
- const DEFAULT_PROPS$11 = {
780
+ const DEFAULT_PROPS$12 = {
781
781
  color: ColorPalette$1.primary
782
782
  };
783
783
 
@@ -792,7 +792,7 @@ const Badge = forwardRef((props, ref) => {
792
792
  const {
793
793
  children,
794
794
  className,
795
- color = DEFAULT_PROPS$11.color,
795
+ color = DEFAULT_PROPS$12.color,
796
796
  ...forwardedProps
797
797
  } = props;
798
798
  return /*#__PURE__*/jsx("div", {
@@ -807,7 +807,7 @@ const Badge = forwardRef((props, ref) => {
807
807
  });
808
808
  Badge.displayName = COMPONENT_NAME$1g;
809
809
  Badge.className = CLASSNAME$1e;
810
- Badge.defaultProps = DEFAULT_PROPS$11;
810
+ Badge.defaultProps = DEFAULT_PROPS$12;
811
811
 
812
812
  /**
813
813
  * Component default class name and class prefix.
@@ -837,6 +837,7 @@ BadgeWrapper.className = CLASSNAME$1d;
837
837
  * Alignments.
838
838
  */
839
839
  const Theme = {
840
+ light: 'light',
840
841
  dark: 'dark'
841
842
  };
842
843
  const Size = {
@@ -986,7 +987,7 @@ const ButtonRoot = props => {
986
987
  isHovered,
987
988
  linkAs,
988
989
  size,
989
- theme,
990
+ theme = Theme.light,
990
991
  variant,
991
992
  fullWidth,
992
993
  ref,
@@ -1045,7 +1046,7 @@ const CLASSNAME$1c = 'lumx-button';
1045
1046
  /**
1046
1047
  * Component default props.
1047
1048
  */
1048
- const DEFAULT_PROPS$10 = {
1049
+ const DEFAULT_PROPS$11 = {
1049
1050
  emphasis: Emphasis.high,
1050
1051
  size: Size.m
1051
1052
  };
@@ -1059,10 +1060,10 @@ const DEFAULT_PROPS$10 = {
1059
1060
  const Button$1 = props => {
1060
1061
  const {
1061
1062
  className,
1062
- emphasis = DEFAULT_PROPS$10.emphasis,
1063
+ emphasis = DEFAULT_PROPS$11.emphasis,
1063
1064
  leftIcon,
1064
1065
  rightIcon,
1065
- size = DEFAULT_PROPS$10.size,
1066
+ size = DEFAULT_PROPS$11.size,
1066
1067
  ...forwardedProps
1067
1068
  } = props;
1068
1069
  const buttonClassName = classnames(className, getBasicClass({
@@ -1084,7 +1085,7 @@ const Button$1 = props => {
1084
1085
  };
1085
1086
  Button$1.displayName = COMPONENT_NAME$1e;
1086
1087
  Button$1.className = CLASSNAME$1c;
1087
- Button$1.defaultProps = DEFAULT_PROPS$10;
1088
+ Button$1.defaultProps = DEFAULT_PROPS$11;
1088
1089
 
1089
1090
  /**
1090
1091
  * Properties of a component to use to determine it's name.
@@ -1152,7 +1153,7 @@ const Button = forwardRef((props, ref) => {
1152
1153
  });
1153
1154
  Button.displayName = COMPONENT_NAME$1e;
1154
1155
  Button.className = CLASSNAME$1c;
1155
- Button.defaultProps = DEFAULT_PROPS$10;
1156
+ Button.defaultProps = DEFAULT_PROPS$11;
1156
1157
 
1157
1158
  const COMPONENT_NAME$1d = 'Icon';
1158
1159
  const IconClassName = 'lumx-icon';
@@ -1166,7 +1167,7 @@ const CLASSNAME$1b = IconClassName;
1166
1167
  /**
1167
1168
  * Component default props.
1168
1169
  */
1169
- const DEFAULT_PROPS$$ = {};
1170
+ const DEFAULT_PROPS$10 = {};
1170
1171
 
1171
1172
  /**
1172
1173
  * Icon component.
@@ -1242,7 +1243,7 @@ const Icon$1 = props => {
1242
1243
  };
1243
1244
  Icon$1.displayName = COMPONENT_NAME$1d;
1244
1245
  Icon$1.className = CLASSNAME$1b;
1245
- Icon$1.defaultProps = DEFAULT_PROPS$$;
1246
+ Icon$1.defaultProps = DEFAULT_PROPS$10;
1246
1247
 
1247
1248
  /**
1248
1249
  * Component display name.
@@ -1257,7 +1258,7 @@ const CLASSNAME$1a = 'lumx-icon-button';
1257
1258
  /**
1258
1259
  * Component default props.
1259
1260
  */
1260
- const DEFAULT_PROPS$_ = {
1261
+ const DEFAULT_PROPS$$ = {
1261
1262
  emphasis: Emphasis.high,
1262
1263
  size: Size.m
1263
1264
  };
@@ -1270,11 +1271,11 @@ const DEFAULT_PROPS$_ = {
1270
1271
  */
1271
1272
  const IconButton$1 = props => {
1272
1273
  const {
1273
- emphasis = DEFAULT_PROPS$_.emphasis,
1274
+ emphasis = DEFAULT_PROPS$$.emphasis,
1274
1275
  image,
1275
1276
  icon,
1276
1277
  label,
1277
- size = DEFAULT_PROPS$_.size,
1278
+ size = DEFAULT_PROPS$$.size,
1278
1279
  ...forwardedProps
1279
1280
  } = props;
1280
1281
  const defaultChildren = image ? /*#__PURE__*/jsx("img", {
@@ -1295,7 +1296,7 @@ const IconButton$1 = props => {
1295
1296
  };
1296
1297
  IconButton$1.displayName = COMPONENT_NAME$1c;
1297
1298
  IconButton$1.className = CLASSNAME$1a;
1298
- IconButton$1.defaultProps = DEFAULT_PROPS$_;
1299
+ IconButton$1.defaultProps = DEFAULT_PROPS$$;
1299
1300
 
1300
1301
  /**
1301
1302
  * IconButton component.
@@ -1332,7 +1333,7 @@ const IconButton = forwardRef((props, ref) => {
1332
1333
  });
1333
1334
  IconButton.displayName = COMPONENT_NAME$1c;
1334
1335
  IconButton.className = CLASSNAME$1a;
1335
- IconButton.defaultProps = DEFAULT_PROPS$_;
1336
+ IconButton.defaultProps = DEFAULT_PROPS$$;
1336
1337
 
1337
1338
  /**
1338
1339
  * Component display name.
@@ -1347,7 +1348,7 @@ const CLASSNAME$19 = 'lumx-button-group';
1347
1348
  /**
1348
1349
  * Component default props.
1349
1350
  */
1350
- const DEFAULT_PROPS$Z = {};
1351
+ const DEFAULT_PROPS$_ = {};
1351
1352
 
1352
1353
  /**
1353
1354
  * ButtonGroup component.
@@ -1370,7 +1371,7 @@ const ButtonGroup$1 = props => {
1370
1371
  };
1371
1372
  ButtonGroup$1.displayName = COMPONENT_NAME$1b;
1372
1373
  ButtonGroup$1.className = CLASSNAME$19;
1373
- ButtonGroup$1.defaultProps = DEFAULT_PROPS$Z;
1374
+ ButtonGroup$1.defaultProps = DEFAULT_PROPS$_;
1374
1375
 
1375
1376
  /**
1376
1377
  * ButtonGroup component.
@@ -1387,7 +1388,7 @@ const ButtonGroup = forwardRef((props, ref) => {
1387
1388
  });
1388
1389
  ButtonGroup.displayName = COMPONENT_NAME$1b;
1389
1390
  ButtonGroup.className = CLASSNAME$19;
1390
- ButtonGroup.defaultProps = DEFAULT_PROPS$Z;
1391
+ ButtonGroup.defaultProps = DEFAULT_PROPS$_;
1391
1392
 
1392
1393
  const INTERMEDIATE_STATE = 'intermediate';
1393
1394
 
@@ -1408,7 +1409,7 @@ const CLASSNAME$18 = 'lumx-checkbox';
1408
1409
  /**
1409
1410
  * Component default props.
1410
1411
  */
1411
- const DEFAULT_PROPS$Y = {};
1412
+ const DEFAULT_PROPS$Z = {};
1412
1413
 
1413
1414
  /**
1414
1415
  * Checkbox component.
@@ -1508,7 +1509,7 @@ const Checkbox = forwardRef((props, ref) => {
1508
1509
  });
1509
1510
  Checkbox.displayName = COMPONENT_NAME$1a;
1510
1511
  Checkbox.className = CLASSNAME$18;
1511
- Checkbox.defaultProps = DEFAULT_PROPS$Y;
1512
+ Checkbox.defaultProps = DEFAULT_PROPS$Z;
1512
1513
 
1513
1514
  /**
1514
1515
  * Wrap mouse event handler to stop event propagation.
@@ -1539,7 +1540,7 @@ const CLASSNAME$17 = 'lumx-chip';
1539
1540
  /**
1540
1541
  * Component default props.
1541
1542
  */
1542
- const DEFAULT_PROPS$X = {
1543
+ const DEFAULT_PROPS$Y = {
1543
1544
  size: Size$1.m
1544
1545
  };
1545
1546
 
@@ -1569,7 +1570,7 @@ const Chip = forwardRef((props, ref) => {
1569
1570
  onAfterClick,
1570
1571
  onBeforeClick,
1571
1572
  onClick,
1572
- size = DEFAULT_PROPS$X.size,
1573
+ size = DEFAULT_PROPS$Y.size,
1573
1574
  theme = defaultTheme,
1574
1575
  href,
1575
1576
  onKeyDown,
@@ -1642,7 +1643,7 @@ const Chip = forwardRef((props, ref) => {
1642
1643
  });
1643
1644
  Chip.displayName = COMPONENT_NAME$19;
1644
1645
  Chip.className = CLASSNAME$17;
1645
- Chip.defaultProps = DEFAULT_PROPS$X;
1646
+ Chip.defaultProps = DEFAULT_PROPS$Y;
1646
1647
 
1647
1648
  const INITIAL_STATE_ACTIVE_CHIP = -1;
1648
1649
 
@@ -1698,7 +1699,7 @@ const useChipGroupNavigation = (chips, onChipDeleted, initialActiveChip = INITIA
1698
1699
  /**
1699
1700
  * Component default props.
1700
1701
  */
1701
- const DEFAULT_PROPS$W = {};
1702
+ const DEFAULT_PROPS$X = {};
1702
1703
 
1703
1704
  /**
1704
1705
  * Component display name.
@@ -1733,7 +1734,7 @@ const InternalChipGroup = forwardRef((props, ref) => {
1733
1734
  });
1734
1735
  InternalChipGroup.displayName = COMPONENT_NAME$18;
1735
1736
  InternalChipGroup.className = CLASSNAME$16;
1736
- InternalChipGroup.defaultProps = DEFAULT_PROPS$W;
1737
+ InternalChipGroup.defaultProps = DEFAULT_PROPS$X;
1737
1738
  const ChipGroup = Object.assign(InternalChipGroup, {
1738
1739
  useChipGroupNavigation
1739
1740
  });
@@ -1763,7 +1764,7 @@ const CLASSNAME$15 = 'lumx-comment-block';
1763
1764
  /**
1764
1765
  * Component default props.
1765
1766
  */
1766
- const DEFAULT_PROPS$V = {
1767
+ const DEFAULT_PROPS$W = {
1767
1768
  variant: CommentBlockVariant.indented
1768
1769
  };
1769
1770
 
@@ -1793,7 +1794,7 @@ const CommentBlock = forwardRef((props, ref) => {
1793
1794
  onMouseLeave,
1794
1795
  text,
1795
1796
  theme = defaultTheme,
1796
- variant = DEFAULT_PROPS$V.variant,
1797
+ variant = DEFAULT_PROPS$W.variant,
1797
1798
  ...forwardedProps
1798
1799
  } = props;
1799
1800
  const hasChildren = Children.count(children) > 0;
@@ -1863,7 +1864,7 @@ const CommentBlock = forwardRef((props, ref) => {
1863
1864
  });
1864
1865
  CommentBlock.displayName = COMPONENT_NAME$17;
1865
1866
  CommentBlock.className = CLASSNAME$15;
1866
- CommentBlock.defaultProps = DEFAULT_PROPS$V;
1867
+ CommentBlock.defaultProps = DEFAULT_PROPS$W;
1867
1868
 
1868
1869
  /**
1869
1870
  * Add a number of months from a date while resetting the day to prevent month length mismatches.
@@ -2961,7 +2962,7 @@ const CLASSNAME$13 = 'lumx-dialog';
2961
2962
  /**
2962
2963
  * Component default props.
2963
2964
  */
2964
- const DEFAULT_PROPS$U = {
2965
+ const DEFAULT_PROPS$V = {
2965
2966
  size: Size$1.big,
2966
2967
  disableBodyScroll: true
2967
2968
  };
@@ -2992,11 +2993,11 @@ const Dialog = forwardRef((props, ref) => {
2992
2993
  parentElement,
2993
2994
  contentRef,
2994
2995
  preventAutoClose,
2995
- size = DEFAULT_PROPS$U.size,
2996
+ size = DEFAULT_PROPS$V.size,
2996
2997
  zIndex,
2997
2998
  dialogProps,
2998
2999
  onVisibilityChange,
2999
- disableBodyScroll = DEFAULT_PROPS$U.disableBodyScroll,
3000
+ disableBodyScroll = DEFAULT_PROPS$V.disableBodyScroll,
3000
3001
  preventCloseOnClick,
3001
3002
  preventCloseOnEscape,
3002
3003
  ...forwardedProps
@@ -3129,7 +3130,7 @@ const Dialog = forwardRef((props, ref) => {
3129
3130
  });
3130
3131
  Dialog.displayName = COMPONENT_NAME$13;
3131
3132
  Dialog.className = CLASSNAME$13;
3132
- Dialog.defaultProps = DEFAULT_PROPS$U;
3133
+ Dialog.defaultProps = DEFAULT_PROPS$V;
3133
3134
 
3134
3135
  /**
3135
3136
  * Component display name.
@@ -3144,7 +3145,7 @@ const CLASSNAME$12 = 'lumx-divider';
3144
3145
  /**
3145
3146
  * Component default props.
3146
3147
  */
3147
- const DEFAULT_PROPS$T = {};
3148
+ const DEFAULT_PROPS$U = {};
3148
3149
 
3149
3150
  /**
3150
3151
  * Divider component.
@@ -3171,7 +3172,7 @@ const Divider = forwardRef((props, ref) => {
3171
3172
  });
3172
3173
  Divider.displayName = COMPONENT_NAME$12;
3173
3174
  Divider.className = CLASSNAME$12;
3174
- Divider.defaultProps = DEFAULT_PROPS$T;
3175
+ Divider.defaultProps = DEFAULT_PROPS$U;
3175
3176
 
3176
3177
  /**
3177
3178
  * Component display name.
@@ -3391,7 +3392,7 @@ const CLASSNAME$10 = 'lumx-list';
3391
3392
  /**
3392
3393
  * Component default props.
3393
3394
  */
3394
- const DEFAULT_PROPS$S = {
3395
+ const DEFAULT_PROPS$T = {
3395
3396
  tabIndex: -1
3396
3397
  };
3397
3398
 
@@ -3410,7 +3411,7 @@ const InternalList = forwardRef((props, ref) => {
3410
3411
  isClickable,
3411
3412
  itemPadding,
3412
3413
  onListItemSelected,
3413
- tabIndex = DEFAULT_PROPS$S.tabIndex,
3414
+ tabIndex = DEFAULT_PROPS$T.tabIndex,
3414
3415
  ...forwardedProps
3415
3416
  } = props;
3416
3417
  return /*#__PURE__*/jsx("ul", {
@@ -3426,7 +3427,7 @@ const InternalList = forwardRef((props, ref) => {
3426
3427
  });
3427
3428
  InternalList.displayName = COMPONENT_NAME$10;
3428
3429
  InternalList.className = CLASSNAME$10;
3429
- InternalList.defaultProps = DEFAULT_PROPS$S;
3430
+ InternalList.defaultProps = DEFAULT_PROPS$T;
3430
3431
  const List = Object.assign(InternalList, {
3431
3432
  useKeyboardListNavigation
3432
3433
  });
@@ -5867,7 +5868,7 @@ const CLASSNAME$$ = 'lumx-popover';
5867
5868
  /**
5868
5869
  * Component default props.
5869
5870
  */
5870
- const DEFAULT_PROPS$R = {
5871
+ const DEFAULT_PROPS$S = {
5871
5872
  elevation: 3,
5872
5873
  placement: Placement.AUTO,
5873
5874
  focusAnchorOnClose: true,
@@ -5884,24 +5885,24 @@ const _InnerPopover = forwardRef((props, ref) => {
5884
5885
  className,
5885
5886
  closeOnClickAway,
5886
5887
  closeOnEscape,
5887
- elevation = DEFAULT_PROPS$R.elevation,
5888
+ elevation = DEFAULT_PROPS$S.elevation,
5888
5889
  focusElement,
5889
5890
  hasArrow,
5890
5891
  isOpen,
5891
5892
  onClose,
5892
5893
  parentElement,
5893
- usePortal = DEFAULT_PROPS$R.usePortal,
5894
- focusAnchorOnClose = DEFAULT_PROPS$R.focusAnchorOnClose,
5894
+ usePortal = DEFAULT_PROPS$S.usePortal,
5895
+ focusAnchorOnClose = DEFAULT_PROPS$S.focusAnchorOnClose,
5895
5896
  withFocusTrap,
5896
5897
  boundaryRef,
5897
5898
  fitToAnchorWidth,
5898
5899
  fitWithinViewportHeight,
5899
5900
  focusTrapZoneElement,
5900
5901
  offset,
5901
- placement = DEFAULT_PROPS$R.placement,
5902
+ placement = DEFAULT_PROPS$S.placement,
5902
5903
  style,
5903
5904
  theme,
5904
- zIndex = DEFAULT_PROPS$R.zIndex,
5905
+ zIndex = DEFAULT_PROPS$S.zIndex,
5905
5906
  ...forwardedProps
5906
5907
  } = props;
5907
5908
  const popoverRef = useRef(null);
@@ -5987,7 +5988,7 @@ const Popover = skipRender(
5987
5988
  () => Boolean(DOCUMENT), _InnerPopover);
5988
5989
  Popover.displayName = COMPONENT_NAME$$;
5989
5990
  Popover.className = CLASSNAME$$;
5990
- Popover.defaultProps = DEFAULT_PROPS$R;
5991
+ Popover.defaultProps = DEFAULT_PROPS$S;
5991
5992
 
5992
5993
  // The error margin in px we want to have for triggering infinite scroll
5993
5994
  const SCROLL_TRIGGER_MARGIN = 5;
@@ -6043,7 +6044,7 @@ const CLASSNAME$_ = 'lumx-dropdown';
6043
6044
  /**
6044
6045
  * Component default props.
6045
6046
  */
6046
- const DEFAULT_PROPS$Q = {
6047
+ const DEFAULT_PROPS$R = {
6047
6048
  closeOnClick: true,
6048
6049
  closeOnClickAway: true,
6049
6050
  closeOnEscape: true,
@@ -6066,18 +6067,18 @@ const Dropdown = forwardRef((props, ref) => {
6066
6067
  anchorRef,
6067
6068
  children,
6068
6069
  className,
6069
- closeOnClick = DEFAULT_PROPS$Q.closeOnClick,
6070
- closeOnClickAway = DEFAULT_PROPS$Q.closeOnClickAway,
6071
- closeOnEscape = DEFAULT_PROPS$Q.closeOnEscape,
6072
- fitToAnchorWidth = DEFAULT_PROPS$Q.fitToAnchorWidth,
6073
- fitWithinViewportHeight = DEFAULT_PROPS$Q.fitWithinViewportHeight,
6070
+ closeOnClick = DEFAULT_PROPS$R.closeOnClick,
6071
+ closeOnClickAway = DEFAULT_PROPS$R.closeOnClickAway,
6072
+ closeOnEscape = DEFAULT_PROPS$R.closeOnEscape,
6073
+ fitToAnchorWidth = DEFAULT_PROPS$R.fitToAnchorWidth,
6074
+ fitWithinViewportHeight = DEFAULT_PROPS$R.fitWithinViewportHeight,
6074
6075
  isOpen,
6075
6076
  offset,
6076
- focusAnchorOnClose = DEFAULT_PROPS$Q.focusAnchorOnClose,
6077
+ focusAnchorOnClose = DEFAULT_PROPS$R.focusAnchorOnClose,
6077
6078
  onClose,
6078
6079
  onInfiniteScroll,
6079
- placement = DEFAULT_PROPS$Q.placement,
6080
- shouldFocusOnOpen = DEFAULT_PROPS$Q.shouldFocusOnOpen,
6080
+ placement = DEFAULT_PROPS$R.placement,
6081
+ shouldFocusOnOpen = DEFAULT_PROPS$R.shouldFocusOnOpen,
6081
6082
  zIndex,
6082
6083
  ...forwardedProps
6083
6084
  } = props;
@@ -6123,7 +6124,7 @@ const Dropdown = forwardRef((props, ref) => {
6123
6124
  });
6124
6125
  Dropdown.displayName = COMPONENT_NAME$_;
6125
6126
  Dropdown.className = CLASSNAME$_;
6126
- Dropdown.defaultProps = DEFAULT_PROPS$Q;
6127
+ Dropdown.defaultProps = DEFAULT_PROPS$R;
6127
6128
 
6128
6129
  /**
6129
6130
  * Component display name.
@@ -6138,7 +6139,7 @@ const CLASSNAME$Z = 'lumx-expansion-panel';
6138
6139
  /**
6139
6140
  * Component default props.
6140
6141
  */
6141
- const DEFAULT_PROPS$P = {
6142
+ const DEFAULT_PROPS$Q = {
6142
6143
  closeMode: 'unmount'
6143
6144
  };
6144
6145
  const isDragHandle = isComponent(DragHandle);
@@ -6156,7 +6157,7 @@ const ExpansionPanel = forwardRef((props, ref) => {
6156
6157
  const defaultTheme = useTheme() || Theme$1.light;
6157
6158
  const {
6158
6159
  className,
6159
- closeMode = DEFAULT_PROPS$P.closeMode,
6160
+ closeMode = DEFAULT_PROPS$Q.closeMode,
6160
6161
  children: anyChildren,
6161
6162
  hasBackground,
6162
6163
  hasHeaderDivider,
@@ -6274,11 +6275,11 @@ const ExpansionPanel = forwardRef((props, ref) => {
6274
6275
  });
6275
6276
  ExpansionPanel.displayName = COMPONENT_NAME$Z;
6276
6277
  ExpansionPanel.className = CLASSNAME$Z;
6277
- ExpansionPanel.defaultProps = DEFAULT_PROPS$P;
6278
+ ExpansionPanel.defaultProps = DEFAULT_PROPS$Q;
6278
6279
 
6279
6280
  const COMPONENT_NAME$Y = 'Flag';
6280
6281
  const CLASSNAME$Y = 'lumx-flag';
6281
- const DEFAULT_PROPS$O = {};
6282
+ const DEFAULT_PROPS$P = {};
6282
6283
 
6283
6284
  /**
6284
6285
  * Flag component.
@@ -6323,7 +6324,7 @@ const Flag = forwardRef((props, ref) => {
6323
6324
  });
6324
6325
  Flag.displayName = COMPONENT_NAME$Y;
6325
6326
  Flag.className = CLASSNAME$Y;
6326
- Flag.defaultProps = DEFAULT_PROPS$O;
6327
+ Flag.defaultProps = DEFAULT_PROPS$P;
6327
6328
 
6328
6329
  /**
6329
6330
  * Component display name.
@@ -6386,7 +6387,7 @@ const CLASSNAME$W = 'lumx-generic-block';
6386
6387
  /**
6387
6388
  * Component default props.
6388
6389
  */
6389
- const DEFAULT_PROPS$N = {
6390
+ const DEFAULT_PROPS$O = {
6390
6391
  gap: Size$1.big,
6391
6392
  orientation: Orientation.horizontal
6392
6393
  };
@@ -6416,8 +6417,8 @@ const BaseGenericBlock = forwardRef((props, ref) => {
6416
6417
  children,
6417
6418
  actions,
6418
6419
  actionsProps,
6419
- gap = DEFAULT_PROPS$N.gap,
6420
- orientation = DEFAULT_PROPS$N.orientation,
6420
+ gap = DEFAULT_PROPS$O.gap,
6421
+ orientation = DEFAULT_PROPS$O.orientation,
6421
6422
  contentProps,
6422
6423
  ...forwardedProps
6423
6424
  } = props;
@@ -6471,7 +6472,7 @@ const BaseGenericBlock = forwardRef((props, ref) => {
6471
6472
  });
6472
6473
  BaseGenericBlock.displayName = COMPONENT_NAME$W;
6473
6474
  BaseGenericBlock.className = CLASSNAME$W;
6474
- BaseGenericBlock.defaultProps = DEFAULT_PROPS$N;
6475
+ BaseGenericBlock.defaultProps = DEFAULT_PROPS$O;
6475
6476
  const GenericBlock = Object.assign(BaseGenericBlock, {
6476
6477
  Figure,
6477
6478
  Content,
@@ -6552,7 +6553,7 @@ const CLASSNAME$V = 'lumx-text';
6552
6553
  /**
6553
6554
  * Component default props.
6554
6555
  */
6555
- const DEFAULT_PROPS$M = {};
6556
+ const DEFAULT_PROPS$N = {};
6556
6557
 
6557
6558
  /**
6558
6559
  * Text component.
@@ -6614,7 +6615,7 @@ const Text = forwardRef((props, ref) => {
6614
6615
  });
6615
6616
  Text.displayName = COMPONENT_NAME$V;
6616
6617
  Text.className = CLASSNAME$V;
6617
- Text.defaultProps = DEFAULT_PROPS$M;
6618
+ Text.defaultProps = DEFAULT_PROPS$N;
6618
6619
 
6619
6620
  /** The maximum authorized heading level. */
6620
6621
  const MAX_HEADING_LEVEL = 6;
@@ -6661,7 +6662,7 @@ const CLASSNAME$U = 'lumx-heading';
6661
6662
  /**
6662
6663
  * Component default props.
6663
6664
  */
6664
- const DEFAULT_PROPS$L = {};
6665
+ const DEFAULT_PROPS$M = {};
6665
6666
 
6666
6667
  /**
6667
6668
  * Renders a heading component.
@@ -6690,7 +6691,7 @@ const Heading = forwardRef((props, ref) => {
6690
6691
  });
6691
6692
  Heading.displayName = COMPONENT_NAME$U;
6692
6693
  Heading.className = CLASSNAME$U;
6693
- Heading.defaultProps = DEFAULT_PROPS$L;
6694
+ Heading.defaultProps = DEFAULT_PROPS$M;
6694
6695
 
6695
6696
  /**
6696
6697
  * Provide a new heading level context.
@@ -6728,7 +6729,7 @@ const CLASSNAME$T = 'lumx-grid';
6728
6729
  /**
6729
6730
  * Component default props.
6730
6731
  */
6731
- const DEFAULT_PROPS$K = {
6732
+ const DEFAULT_PROPS$L = {
6732
6733
  orientation: Orientation.horizontal,
6733
6734
  wrap: 'nowrap'
6734
6735
  };
@@ -6746,9 +6747,9 @@ const Grid = forwardRef((props, ref) => {
6746
6747
  className,
6747
6748
  gutter,
6748
6749
  hAlign,
6749
- orientation = DEFAULT_PROPS$K.orientation,
6750
+ orientation = DEFAULT_PROPS$L.orientation,
6750
6751
  vAlign,
6751
- wrap = DEFAULT_PROPS$K.wrap,
6752
+ wrap = DEFAULT_PROPS$L.wrap,
6752
6753
  ...forwardedProps
6753
6754
  } = props;
6754
6755
  return /*#__PURE__*/jsx("div", {
@@ -6769,7 +6770,7 @@ const Grid = forwardRef((props, ref) => {
6769
6770
  });
6770
6771
  Grid.displayName = COMPONENT_NAME$T;
6771
6772
  Grid.className = CLASSNAME$T;
6772
- Grid.defaultProps = DEFAULT_PROPS$K;
6773
+ Grid.defaultProps = DEFAULT_PROPS$L;
6773
6774
 
6774
6775
  /**
6775
6776
  * Component display name.
@@ -6825,7 +6826,7 @@ const CLASSNAME$R = 'lumx-grid-column';
6825
6826
  /**
6826
6827
  * Component default props.
6827
6828
  */
6828
- const DEFAULT_PROPS$J = {};
6829
+ const DEFAULT_PROPS$K = {};
6829
6830
 
6830
6831
  /**
6831
6832
  * The GridColumn is a layout component that can display children in a grid
@@ -6862,7 +6863,7 @@ const GridColumn = forwardRef((props, ref) => {
6862
6863
  });
6863
6864
  GridColumn.displayName = COMPONENT_NAME$R;
6864
6865
  GridColumn.className = CLASSNAME$R;
6865
- GridColumn.defaultProps = DEFAULT_PROPS$J;
6866
+ GridColumn.defaultProps = DEFAULT_PROPS$K;
6866
6867
 
6867
6868
  /**
6868
6869
  * Icon component.
@@ -6976,7 +6977,7 @@ const CLASSNAME$Q = 'lumx-image-block';
6976
6977
  /**
6977
6978
  * Component default props.
6978
6979
  */
6979
- const DEFAULT_PROPS$I = {
6980
+ const DEFAULT_PROPS$J = {
6980
6981
  captionPosition: ImageBlockCaptionPosition.below,
6981
6982
  align: Alignment.left
6982
6983
  };
@@ -6992,9 +6993,9 @@ const ImageBlock = forwardRef((props, ref) => {
6992
6993
  const defaultTheme = useTheme() || Theme$1.light;
6993
6994
  const {
6994
6995
  actions,
6995
- align = DEFAULT_PROPS$I.align,
6996
+ align = DEFAULT_PROPS$J.align,
6996
6997
  alt,
6997
- captionPosition = DEFAULT_PROPS$I.captionPosition,
6998
+ captionPosition = DEFAULT_PROPS$J.captionPosition,
6998
6999
  captionStyle,
6999
7000
  className,
7000
7001
  description,
@@ -7048,7 +7049,7 @@ const ImageBlock = forwardRef((props, ref) => {
7048
7049
  });
7049
7050
  ImageBlock.displayName = COMPONENT_NAME$Q;
7050
7051
  ImageBlock.className = CLASSNAME$Q;
7051
- ImageBlock.defaultProps = DEFAULT_PROPS$I;
7052
+ ImageBlock.defaultProps = DEFAULT_PROPS$J;
7052
7053
 
7053
7054
  /**
7054
7055
  * Component display name.
@@ -7798,7 +7799,7 @@ const CLASSNAME$O = 'lumx-inline-list';
7798
7799
  /**
7799
7800
  * Component default props.
7800
7801
  */
7801
- const DEFAULT_PROPS$H = {};
7802
+ const DEFAULT_PROPS$I = {};
7802
7803
 
7803
7804
  /**
7804
7805
  * InlineList component.
@@ -7849,7 +7850,7 @@ const InlineList = forwardRef((props, ref) => {
7849
7850
  });
7850
7851
  InlineList.displayName = COMPONENT_NAME$O;
7851
7852
  InlineList.className = CLASSNAME$O;
7852
- InlineList.defaultProps = DEFAULT_PROPS$H;
7853
+ InlineList.defaultProps = DEFAULT_PROPS$I;
7853
7854
 
7854
7855
  const INPUT_HELPER_CONFIGURATION = {
7855
7856
  [Kind.error]: {
@@ -7875,7 +7876,7 @@ const CLASSNAME$N = InputHelperClassName;
7875
7876
  /**
7876
7877
  * Component default props.
7877
7878
  */
7878
- const DEFAULT_PROPS$G = {
7879
+ const DEFAULT_PROPS$H = {
7879
7880
  kind: Kind.info
7880
7881
  };
7881
7882
 
@@ -7886,7 +7887,7 @@ function InputHelper$1(props) {
7886
7887
  const {
7887
7888
  children,
7888
7889
  className,
7889
- kind = DEFAULT_PROPS$G.kind,
7890
+ kind = DEFAULT_PROPS$H.kind,
7890
7891
  theme,
7891
7892
  ref,
7892
7893
  ...forwardedProps
@@ -7907,7 +7908,7 @@ function InputHelper$1(props) {
7907
7908
  }
7908
7909
  InputHelper$1.displayName = COMPONENT_NAME$N;
7909
7910
  InputHelper$1.className = CLASSNAME$N;
7910
- InputHelper$1.defaultProps = DEFAULT_PROPS$G;
7911
+ InputHelper$1.defaultProps = DEFAULT_PROPS$H;
7911
7912
 
7912
7913
  /**
7913
7914
  * InputHelper component.
@@ -7931,7 +7932,7 @@ InputHelper.defaultProps = InputHelper$1.defaultProps;
7931
7932
  const COMPONENT_NAME$M = 'InputLabel';
7932
7933
  const InputLabelClassName = 'lumx-input-label';
7933
7934
  const CLASSNAME$M = InputLabelClassName;
7934
- const DEFAULT_PROPS$F = {};
7935
+ const DEFAULT_PROPS$G = {};
7935
7936
 
7936
7937
  /**
7937
7938
  * InputLabel component.
@@ -7962,7 +7963,7 @@ function InputLabel$1(props) {
7962
7963
  }
7963
7964
  InputLabel$1.displayName = COMPONENT_NAME$M;
7964
7965
  InputLabel$1.className = CLASSNAME$M;
7965
- InputLabel$1.defaultProps = DEFAULT_PROPS$F;
7966
+ InputLabel$1.defaultProps = DEFAULT_PROPS$G;
7966
7967
 
7967
7968
  /**
7968
7969
  * InputLabel component.
@@ -8207,7 +8208,7 @@ const CLASSNAME$J = 'lumx-link-preview';
8207
8208
  /**
8208
8209
  * Component default props.
8209
8210
  */
8210
- const DEFAULT_PROPS$E = {
8211
+ const DEFAULT_PROPS$F = {
8211
8212
  size: Size$1.regular,
8212
8213
  titleHeading: 'h2'
8213
8214
  };
@@ -8227,11 +8228,11 @@ const LinkPreview = forwardRef((props, ref) => {
8227
8228
  link,
8228
8229
  linkAs,
8229
8230
  linkProps,
8230
- size = DEFAULT_PROPS$E.size,
8231
+ size = DEFAULT_PROPS$F.size,
8231
8232
  theme = defaultTheme,
8232
8233
  thumbnailProps,
8233
8234
  title,
8234
- titleHeading = DEFAULT_PROPS$E.titleHeading,
8235
+ titleHeading = DEFAULT_PROPS$F.titleHeading,
8235
8236
  ...forwardedProps
8236
8237
  } = props;
8237
8238
  // Use title heading as title wrapper (see DEFAULT_PROPS for the default value).
@@ -8299,7 +8300,7 @@ const LinkPreview = forwardRef((props, ref) => {
8299
8300
  });
8300
8301
  LinkPreview.displayName = COMPONENT_NAME$J;
8301
8302
  LinkPreview.className = CLASSNAME$J;
8302
- LinkPreview.defaultProps = DEFAULT_PROPS$E;
8303
+ LinkPreview.defaultProps = DEFAULT_PROPS$F;
8303
8304
 
8304
8305
  /**
8305
8306
  * Render link with default <a> HTML component or a custom one provided by `linkAs`.
@@ -8328,7 +8329,7 @@ const CLASSNAME$I = 'lumx-list-item';
8328
8329
  /**
8329
8330
  * Component default props.
8330
8331
  */
8331
- const DEFAULT_PROPS$D = {
8332
+ const DEFAULT_PROPS$E = {
8332
8333
  size: Size$1.regular
8333
8334
  };
8334
8335
 
@@ -8367,7 +8368,7 @@ const ListItem = forwardRef((props, ref) => {
8367
8368
  linkProps = {},
8368
8369
  linkRef,
8369
8370
  onItemSelected,
8370
- size = DEFAULT_PROPS$D.size,
8371
+ size = DEFAULT_PROPS$E.size,
8371
8372
  ...forwardedProps
8372
8373
  } = otherProps;
8373
8374
  const role = linkAs || linkProps.href ? 'link' : 'button';
@@ -8426,7 +8427,7 @@ const ListItem = forwardRef((props, ref) => {
8426
8427
  });
8427
8428
  ListItem.displayName = COMPONENT_NAME$I;
8428
8429
  ListItem.className = CLASSNAME$I;
8429
- ListItem.defaultProps = DEFAULT_PROPS$D;
8430
+ ListItem.defaultProps = DEFAULT_PROPS$E;
8430
8431
 
8431
8432
  /**
8432
8433
  * Component display name.
@@ -8591,7 +8592,7 @@ const CLASSNAME$E = 'lumx-mosaic';
8591
8592
  /**
8592
8593
  * Component default props.
8593
8594
  */
8594
- const DEFAULT_PROPS$C = {};
8595
+ const DEFAULT_PROPS$D = {};
8595
8596
 
8596
8597
  /**
8597
8598
  * Mosaic component.
@@ -8660,7 +8661,7 @@ const Mosaic = forwardRef((props, ref) => {
8660
8661
  });
8661
8662
  Mosaic.displayName = COMPONENT_NAME$E;
8662
8663
  Mosaic.className = CLASSNAME$E;
8663
- Mosaic.defaultProps = DEFAULT_PROPS$C;
8664
+ Mosaic.defaultProps = DEFAULT_PROPS$D;
8664
8665
 
8665
8666
  const NavigationContext = /*#__PURE__*/createContext({
8666
8667
  orientation: Orientation.vertical
@@ -8829,7 +8830,7 @@ const CLASSNAME$C = 'lumx-navigation';
8829
8830
  /**
8830
8831
  * Component default props
8831
8832
  */
8832
- const DEFAULT_PROPS$B = {
8833
+ const DEFAULT_PROPS$C = {
8833
8834
  orientation: Orientation.vertical
8834
8835
  };
8835
8836
  const Navigation = forwardRef((props, ref) => {
@@ -8838,7 +8839,7 @@ const Navigation = forwardRef((props, ref) => {
8838
8839
  children,
8839
8840
  className,
8840
8841
  theme = defaultTheme,
8841
- orientation = DEFAULT_PROPS$B.orientation,
8842
+ orientation = DEFAULT_PROPS$C.orientation,
8842
8843
  ...forwardedProps
8843
8844
  } = props;
8844
8845
  return /*#__PURE__*/jsx(ThemeProvider, {
@@ -8865,7 +8866,7 @@ const Navigation = forwardRef((props, ref) => {
8865
8866
  });
8866
8867
  Navigation.displayName = COMPONENT_NAME$C;
8867
8868
  Navigation.className = CLASSNAME$C;
8868
- Navigation.defaultProps = DEFAULT_PROPS$B;
8869
+ Navigation.defaultProps = DEFAULT_PROPS$C;
8869
8870
 
8870
8871
  // Sub components
8871
8872
  Navigation.Section = NavigationSection;
@@ -8906,7 +8907,7 @@ const CLASSNAME$B = 'lumx-notification';
8906
8907
  /**
8907
8908
  * Component default props.
8908
8909
  */
8909
- const DEFAULT_PROPS$A = {
8910
+ const DEFAULT_PROPS$B = {
8910
8911
  zIndex: 9999,
8911
8912
  usePortal: true
8912
8913
  };
@@ -8930,8 +8931,8 @@ const Notification = forwardRef((props, ref) => {
8930
8931
  onClick,
8931
8932
  theme = defaultTheme,
8932
8933
  type,
8933
- zIndex = DEFAULT_PROPS$A.zIndex,
8934
- usePortal = DEFAULT_PROPS$A.usePortal,
8934
+ zIndex = DEFAULT_PROPS$B.zIndex,
8935
+ usePortal = DEFAULT_PROPS$B.usePortal,
8935
8936
  style,
8936
8937
  ...forwardedProps
8937
8938
  } = props;
@@ -8997,7 +8998,7 @@ const Notification = forwardRef((props, ref) => {
8997
8998
  });
8998
8999
  Notification.displayName = COMPONENT_NAME$B;
8999
9000
  Notification.className = CLASSNAME$B;
9000
- Notification.defaultProps = DEFAULT_PROPS$A;
9001
+ Notification.defaultProps = DEFAULT_PROPS$B;
9001
9002
 
9002
9003
  /**
9003
9004
  * Component display name.
@@ -9012,7 +9013,7 @@ const CLASSNAME$A = 'lumx-popover-dialog';
9012
9013
  /**
9013
9014
  * Component default props.
9014
9015
  */
9015
- const DEFAULT_PROPS$z = {};
9016
+ const DEFAULT_PROPS$A = {};
9016
9017
 
9017
9018
  /**
9018
9019
  * PopoverDialog component.
@@ -9055,7 +9056,7 @@ const PopoverDialog = forwardRef((props, ref) => {
9055
9056
  });
9056
9057
  PopoverDialog.displayName = COMPONENT_NAME$A;
9057
9058
  PopoverDialog.className = CLASSNAME$A;
9058
- PopoverDialog.defaultProps = DEFAULT_PROPS$z;
9059
+ PopoverDialog.defaultProps = DEFAULT_PROPS$A;
9059
9060
 
9060
9061
  /**
9061
9062
  * Component display name.
@@ -9070,7 +9071,7 @@ const CLASSNAME$z = 'lumx-post-block';
9070
9071
  /**
9071
9072
  * Component default props.
9072
9073
  */
9073
- const DEFAULT_PROPS$y = {
9074
+ const DEFAULT_PROPS$z = {
9074
9075
  orientation: Orientation.horizontal
9075
9076
  };
9076
9077
 
@@ -9090,7 +9091,7 @@ const PostBlock = forwardRef((props, ref) => {
9090
9091
  className,
9091
9092
  meta,
9092
9093
  onClick,
9093
- orientation = DEFAULT_PROPS$y.orientation,
9094
+ orientation = DEFAULT_PROPS$z.orientation,
9094
9095
  tags,
9095
9096
  text,
9096
9097
  theme = defaultTheme,
@@ -9153,7 +9154,7 @@ const PostBlock = forwardRef((props, ref) => {
9153
9154
  });
9154
9155
  PostBlock.displayName = COMPONENT_NAME$z;
9155
9156
  PostBlock.className = CLASSNAME$z;
9156
- PostBlock.defaultProps = DEFAULT_PROPS$y;
9157
+ PostBlock.defaultProps = DEFAULT_PROPS$z;
9157
9158
 
9158
9159
  /**
9159
9160
  * Component display name.
@@ -9168,7 +9169,7 @@ const CLASSNAME$y = 'lumx-progress-linear';
9168
9169
  /**
9169
9170
  * Component default props.
9170
9171
  */
9171
- const DEFAULT_PROPS$x = {};
9172
+ const DEFAULT_PROPS$y = {};
9172
9173
 
9173
9174
  /**
9174
9175
  * ProgressLinear component.
@@ -9200,7 +9201,7 @@ const ProgressLinear = forwardRef((props, ref) => {
9200
9201
  });
9201
9202
  ProgressLinear.displayName = COMPONENT_NAME$y;
9202
9203
  ProgressLinear.className = CLASSNAME$y;
9203
- ProgressLinear.defaultProps = DEFAULT_PROPS$x;
9204
+ ProgressLinear.defaultProps = DEFAULT_PROPS$y;
9204
9205
 
9205
9206
  /**
9206
9207
  * Component display name.
@@ -9215,7 +9216,7 @@ const CLASSNAME$x = 'lumx-progress-circular';
9215
9216
  /**
9216
9217
  * Component default props.
9217
9218
  */
9218
- const DEFAULT_PROPS$w = {
9219
+ const DEFAULT_PROPS$x = {
9219
9220
  size: Size$1.m,
9220
9221
  display: 'block'
9221
9222
  };
@@ -9232,8 +9233,8 @@ const ProgressCircular = forwardRef((props, ref) => {
9232
9233
  const {
9233
9234
  className,
9234
9235
  theme = defaultTheme,
9235
- size = DEFAULT_PROPS$w.size,
9236
- display = DEFAULT_PROPS$w.display,
9236
+ size = DEFAULT_PROPS$x.size,
9237
+ display = DEFAULT_PROPS$x.display,
9237
9238
  ...forwardedProps
9238
9239
  } = props;
9239
9240
  const Element = display === 'block' ? 'div' : 'span';
@@ -9266,7 +9267,7 @@ const ProgressCircular = forwardRef((props, ref) => {
9266
9267
  });
9267
9268
  ProgressCircular.displayName = COMPONENT_NAME$x;
9268
9269
  ProgressCircular.className = CLASSNAME$x;
9269
- ProgressCircular.defaultProps = DEFAULT_PROPS$w;
9270
+ ProgressCircular.defaultProps = DEFAULT_PROPS$x;
9270
9271
 
9271
9272
  const ProgressVariant = {
9272
9273
  linear: 'linear',
@@ -9290,7 +9291,7 @@ const CLASSNAME$w = 'lumx-progress';
9290
9291
  /**
9291
9292
  * Component default props.
9292
9293
  */
9293
- const DEFAULT_PROPS$v = {
9294
+ const DEFAULT_PROPS$w = {
9294
9295
  variant: ProgressVariant.circular
9295
9296
  };
9296
9297
 
@@ -9307,7 +9308,7 @@ const Progress = forwardRef((props, ref) => {
9307
9308
  const {
9308
9309
  className,
9309
9310
  theme = defaultTheme,
9310
- variant = DEFAULT_PROPS$v.variant,
9311
+ variant = DEFAULT_PROPS$w.variant,
9311
9312
  ...forwardedProps
9312
9313
  } = props;
9313
9314
  return /*#__PURE__*/jsxs("div", {
@@ -9327,7 +9328,7 @@ const Progress = forwardRef((props, ref) => {
9327
9328
  });
9328
9329
  Progress.displayName = COMPONENT_NAME$w;
9329
9330
  Progress.className = CLASSNAME$w;
9330
- Progress.defaultProps = DEFAULT_PROPS$v;
9331
+ Progress.defaultProps = DEFAULT_PROPS$w;
9331
9332
 
9332
9333
  const INIT_STATE = {
9333
9334
  isLazy: true,
@@ -9454,7 +9455,7 @@ const useTabProviderContextState = () => {
9454
9455
  return context?.[0];
9455
9456
  };
9456
9457
 
9457
- const DEFAULT_PROPS$u = {
9458
+ const DEFAULT_PROPS$v = {
9458
9459
  isLazy: INIT_STATE.isLazy,
9459
9460
  shouldActivateOnFocus: INIT_STATE.shouldActivateOnFocus
9460
9461
  };
@@ -9483,7 +9484,7 @@ const ProgressTrackerProvider = props => {
9483
9484
  dispatch({
9484
9485
  type: 'update',
9485
9486
  payload: {
9486
- ...DEFAULT_PROPS$u,
9487
+ ...DEFAULT_PROPS$v,
9487
9488
  ...propState,
9488
9489
  activeTabIndex: propState.activeStepIndex || INIT_STATE.activeTabIndex
9489
9490
  }
@@ -9506,7 +9507,7 @@ const ProgressTrackerProvider = props => {
9506
9507
  children: children
9507
9508
  });
9508
9509
  };
9509
- ProgressTrackerProvider.defaultProps = DEFAULT_PROPS$u;
9510
+ ProgressTrackerProvider.defaultProps = DEFAULT_PROPS$v;
9510
9511
 
9511
9512
  const useRovingTabIndex = ({
9512
9513
  parentRef,
@@ -9594,7 +9595,7 @@ const CLASSNAME$v = 'lumx-progress-tracker';
9594
9595
  /**
9595
9596
  * Component default props.
9596
9597
  */
9597
- const DEFAULT_PROPS$t = {};
9598
+ const DEFAULT_PROPS$u = {};
9598
9599
 
9599
9600
  /**
9600
9601
  * ProgressTracker component.
@@ -9650,7 +9651,7 @@ const ProgressTracker = forwardRef((props, ref) => {
9650
9651
  });
9651
9652
  ProgressTracker.displayName = COMPONENT_NAME$v;
9652
9653
  ProgressTracker.className = CLASSNAME$v;
9653
- ProgressTracker.defaultProps = DEFAULT_PROPS$t;
9654
+ ProgressTracker.defaultProps = DEFAULT_PROPS$u;
9654
9655
 
9655
9656
  /**
9656
9657
  * Component display name.
@@ -9665,7 +9666,7 @@ const CLASSNAME$u = 'lumx-progress-tracker-step';
9665
9666
  /**
9666
9667
  * Component default props.
9667
9668
  */
9668
- const DEFAULT_PROPS$s = {};
9669
+ const DEFAULT_PROPS$t = {};
9669
9670
 
9670
9671
  /**
9671
9672
  * ProgressTrackerStep component.
@@ -9761,7 +9762,7 @@ const ProgressTrackerStep = forwardRef((props, ref) => {
9761
9762
  });
9762
9763
  ProgressTrackerStep.displayName = COMPONENT_NAME$u;
9763
9764
  ProgressTrackerStep.className = CLASSNAME$u;
9764
- ProgressTrackerStep.defaultProps = DEFAULT_PROPS$s;
9765
+ ProgressTrackerStep.defaultProps = DEFAULT_PROPS$t;
9765
9766
 
9766
9767
  /**
9767
9768
  * Component display name.
@@ -9776,7 +9777,7 @@ const CLASSNAME$t = `lumx-step-panel`;
9776
9777
  /**
9777
9778
  * Component default props.
9778
9779
  */
9779
- const DEFAULT_PROPS$r = {};
9780
+ const DEFAULT_PROPS$s = {};
9780
9781
 
9781
9782
  /**
9782
9783
  * ProgressTrackerStepPanel component.
@@ -9813,7 +9814,7 @@ const ProgressTrackerStepPanel = forwardRef((props, ref) => {
9813
9814
  });
9814
9815
  ProgressTrackerStepPanel.displayName = COMPONENT_NAME$t;
9815
9816
  ProgressTrackerStepPanel.className = CLASSNAME$t;
9816
- ProgressTrackerStepPanel.defaultProps = DEFAULT_PROPS$r;
9817
+ ProgressTrackerStepPanel.defaultProps = DEFAULT_PROPS$s;
9817
9818
 
9818
9819
  /**
9819
9820
  * Component display name.
@@ -9828,7 +9829,7 @@ const CLASSNAME$s = 'lumx-radio-button';
9828
9829
  /**
9829
9830
  * Component default props.
9830
9831
  */
9831
- const DEFAULT_PROPS$q = {};
9832
+ const DEFAULT_PROPS$r = {};
9832
9833
 
9833
9834
  /**
9834
9835
  * RadioButton component.
@@ -9917,7 +9918,7 @@ const RadioButton = forwardRef((props, ref) => {
9917
9918
  });
9918
9919
  RadioButton.displayName = COMPONENT_NAME$s;
9919
9920
  RadioButton.className = CLASSNAME$s;
9920
- RadioButton.defaultProps = DEFAULT_PROPS$q;
9921
+ RadioButton.defaultProps = DEFAULT_PROPS$r;
9921
9922
 
9922
9923
  /**
9923
9924
  * Component display name.
@@ -10100,7 +10101,7 @@ const COMPONENT_NAME$q = 'Select';
10100
10101
  const CLASSNAME$p = 'lumx-select';
10101
10102
 
10102
10103
  /** The default value of props. */
10103
- const DEFAULT_PROPS$p = {
10104
+ const DEFAULT_PROPS$q = {
10104
10105
  selectedValueRender: choice => choice,
10105
10106
  variant: SelectVariant.input
10106
10107
  };
@@ -10221,7 +10222,7 @@ const Select = forwardRef((props, ref) => {
10221
10222
  const isEmpty$1 = isEmpty(props.value);
10222
10223
  const hasInputClear = props.onClear && props.clearButtonProps && !isEmpty$1;
10223
10224
  return WithSelectContext(SelectField, {
10224
- ...DEFAULT_PROPS$p,
10225
+ ...DEFAULT_PROPS$q,
10225
10226
  ...props,
10226
10227
  className: classNames.join(props.className, handleBasicClasses({
10227
10228
  hasInputClear,
@@ -10234,7 +10235,7 @@ const Select = forwardRef((props, ref) => {
10234
10235
  });
10235
10236
  Select.displayName = COMPONENT_NAME$q;
10236
10237
  Select.className = CLASSNAME$p;
10237
- Select.defaultProps = DEFAULT_PROPS$p;
10238
+ Select.defaultProps = DEFAULT_PROPS$q;
10238
10239
  Select.className = CLASSNAME$p;
10239
10240
 
10240
10241
  /** The display name of the component. */
@@ -10244,7 +10245,7 @@ const COMPONENT_NAME$p = 'Select';
10244
10245
  const CLASSNAME$o = 'lumx-select';
10245
10246
 
10246
10247
  /** The default value of props. */
10247
- const DEFAULT_PROPS$o = {
10248
+ const DEFAULT_PROPS$p = {
10248
10249
  selectedChipRender(choice, index, onClear, isDisabled, theme) {
10249
10250
  const onClick = event => onClear && onClear(event, choice);
10250
10251
  return /*#__PURE__*/jsx(Chip, {
@@ -10368,7 +10369,7 @@ const SelectMultipleField = props => {
10368
10369
  */
10369
10370
  const SelectMultiple = forwardRef((props, ref) => {
10370
10371
  return WithSelectContext(SelectMultipleField, {
10371
- ...DEFAULT_PROPS$o,
10372
+ ...DEFAULT_PROPS$p,
10372
10373
  ...props,
10373
10374
  className: classNames.join(props.className, handleBasicClasses({
10374
10375
  hasMultiple: !props.isEmpty,
@@ -10380,7 +10381,7 @@ const SelectMultiple = forwardRef((props, ref) => {
10380
10381
  });
10381
10382
  SelectMultiple.displayName = COMPONENT_NAME$p;
10382
10383
  SelectMultiple.className = CLASSNAME$o;
10383
- SelectMultiple.defaultProps = DEFAULT_PROPS$o;
10384
+ SelectMultiple.defaultProps = DEFAULT_PROPS$p;
10384
10385
 
10385
10386
  /**
10386
10387
  * Component display name.
@@ -10431,7 +10432,7 @@ const CLASSNAME$m = 'lumx-side-navigation-item';
10431
10432
  /**
10432
10433
  * Component default props.
10433
10434
  */
10434
- const DEFAULT_PROPS$n = {
10435
+ const DEFAULT_PROPS$o = {
10435
10436
  emphasis: Emphasis$1.high,
10436
10437
  closeMode: 'unmount'
10437
10438
  };
@@ -10447,7 +10448,7 @@ const SideNavigationItem = forwardRef((props, ref) => {
10447
10448
  const {
10448
10449
  children,
10449
10450
  className,
10450
- emphasis = DEFAULT_PROPS$n.emphasis,
10451
+ emphasis = DEFAULT_PROPS$o.emphasis,
10451
10452
  icon,
10452
10453
  isOpen,
10453
10454
  isSelected,
@@ -10457,7 +10458,7 @@ const SideNavigationItem = forwardRef((props, ref) => {
10457
10458
  onActionClick,
10458
10459
  onClick,
10459
10460
  toggleButtonProps,
10460
- closeMode = DEFAULT_PROPS$n.closeMode,
10461
+ closeMode = DEFAULT_PROPS$o.closeMode,
10461
10462
  ...forwardedProps
10462
10463
  } = props;
10463
10464
  const content = children && Children.toArray(children).filter(isComponent(SideNavigationItem));
@@ -10529,9 +10530,9 @@ const SideNavigationItem = forwardRef((props, ref) => {
10529
10530
  });
10530
10531
  SideNavigationItem.displayName = COMPONENT_NAME$n;
10531
10532
  SideNavigationItem.className = CLASSNAME$m;
10532
- SideNavigationItem.defaultProps = DEFAULT_PROPS$n;
10533
+ SideNavigationItem.defaultProps = DEFAULT_PROPS$o;
10533
10534
 
10534
- const DEFAULT_PROPS$m = {};
10535
+ const DEFAULT_PROPS$n = {};
10535
10536
 
10536
10537
  /**
10537
10538
  * Component display name.
@@ -10571,7 +10572,7 @@ const SkeletonCircle = forwardRef((props, ref) => {
10571
10572
  });
10572
10573
  });
10573
10574
  SkeletonCircle.displayName = COMPONENT_NAME$m;
10574
- SkeletonCircle.defaultProps = DEFAULT_PROPS$m;
10575
+ SkeletonCircle.defaultProps = DEFAULT_PROPS$n;
10575
10576
  SkeletonCircle.className = CLASSNAME$l;
10576
10577
 
10577
10578
  const SkeletonRectangleVariant = {
@@ -10584,7 +10585,7 @@ const SkeletonRectangleVariant = {
10584
10585
  * Defines the props of the component.
10585
10586
  */
10586
10587
 
10587
- const DEFAULT_PROPS$l = {
10588
+ const DEFAULT_PROPS$m = {
10588
10589
  variant: SkeletonRectangleVariant.squared
10589
10590
  };
10590
10591
 
@@ -10612,7 +10613,7 @@ const SkeletonRectangle = forwardRef((props, ref) => {
10612
10613
  className,
10613
10614
  height,
10614
10615
  theme = defaultTheme,
10615
- variant = DEFAULT_PROPS$l.variant,
10616
+ variant = DEFAULT_PROPS$m.variant,
10616
10617
  width,
10617
10618
  color,
10618
10619
  ...forwardedProps
@@ -10636,9 +10637,9 @@ const SkeletonRectangle = forwardRef((props, ref) => {
10636
10637
  });
10637
10638
  SkeletonRectangle.displayName = COMPONENT_NAME$l;
10638
10639
  SkeletonRectangle.className = CLASSNAME$k;
10639
- SkeletonRectangle.defaultProps = DEFAULT_PROPS$l;
10640
+ SkeletonRectangle.defaultProps = DEFAULT_PROPS$m;
10640
10641
 
10641
- const DEFAULT_PROPS$k = {};
10642
+ const DEFAULT_PROPS$l = {};
10642
10643
 
10643
10644
  /**
10644
10645
  * Component display name.
@@ -10686,7 +10687,7 @@ const SkeletonTypography = forwardRef((props, ref) => {
10686
10687
  });
10687
10688
  });
10688
10689
  SkeletonTypography.displayName = COMPONENT_NAME$k;
10689
- SkeletonTypography.defaultProps = DEFAULT_PROPS$k;
10690
+ SkeletonTypography.defaultProps = DEFAULT_PROPS$l;
10690
10691
  SkeletonTypography.className = CLASSNAME$j;
10691
10692
 
10692
10693
  const useEnhancedEffect = typeof window !== 'undefined' ? React__default.useLayoutEffect : React__default.useEffect;
@@ -10737,7 +10738,7 @@ const CLASSNAME$i = 'lumx-slider';
10737
10738
  /**
10738
10739
  * Component default props.
10739
10740
  */
10740
- const DEFAULT_PROPS$j = {
10741
+ const DEFAULT_PROPS$k = {
10741
10742
  precision: 0,
10742
10743
  steps: 0
10743
10744
  };
@@ -10788,8 +10789,8 @@ const Slider = forwardRef((props, ref) => {
10788
10789
  name,
10789
10790
  onChange,
10790
10791
  onMouseDown,
10791
- precision = DEFAULT_PROPS$j.precision,
10792
- steps = DEFAULT_PROPS$j.steps,
10792
+ precision = DEFAULT_PROPS$k.precision,
10793
+ steps = DEFAULT_PROPS$k.steps,
10793
10794
  theme = defaultTheme,
10794
10795
  value,
10795
10796
  ...forwardedProps
@@ -10985,7 +10986,7 @@ const Slider = forwardRef((props, ref) => {
10985
10986
  });
10986
10987
  Slider.displayName = COMPONENT_NAME$j;
10987
10988
  Slider.className = CLASSNAME$i;
10988
- Slider.defaultProps = DEFAULT_PROPS$j;
10989
+ Slider.defaultProps = DEFAULT_PROPS$k;
10989
10990
 
10990
10991
  /**
10991
10992
  * Making setInterval Declarative with React Hooks.
@@ -11348,7 +11349,10 @@ SlideshowItemGroup.className = CLASSNAME$h;
11348
11349
  /**
11349
11350
  * Component default props.
11350
11351
  */
11351
- const DEFAULT_PROPS$i = DEFAULT_OPTIONS;
11352
+ const DEFAULT_PROPS$j = {
11353
+ ...DEFAULT_OPTIONS,
11354
+ mode: 'transform'
11355
+ };
11352
11356
 
11353
11357
  /**
11354
11358
  * Slideshow component.
@@ -11361,18 +11365,19 @@ const Slideshow = forwardRef((props, ref) => {
11361
11365
  const defaultTheme = useTheme() || Theme$1.light;
11362
11366
  const {
11363
11367
  activeIndex,
11364
- autoPlay = DEFAULT_PROPS$i.autoPlay,
11368
+ autoPlay = DEFAULT_PROPS$j.autoPlay,
11365
11369
  children,
11366
11370
  className,
11367
11371
  fillHeight,
11368
11372
  groupBy = DEFAULT_OPTIONS.groupBy,
11369
- interval = DEFAULT_PROPS$i.interval,
11373
+ interval = DEFAULT_PROPS$j.interval,
11370
11374
  onChange,
11371
11375
  slideshowControlsProps,
11372
11376
  theme = defaultTheme,
11373
11377
  id,
11374
11378
  slidesId,
11375
11379
  slideGroupLabel,
11380
+ mode = DEFAULT_PROPS$j.mode,
11376
11381
  ...forwardedProps
11377
11382
  } = props;
11378
11383
  // Number of slideshow items.
@@ -11394,7 +11399,7 @@ const Slideshow = forwardRef((props, ref) => {
11394
11399
  toggleForcePause
11395
11400
  } = SlideshowControls.useSlideshowControls({
11396
11401
  activeIndex,
11397
- defaultActiveIndex: DEFAULT_PROPS$i.activeIndex,
11402
+ defaultActiveIndex: DEFAULT_PROPS$j.activeIndex,
11398
11403
  autoPlay: Boolean(autoPlay),
11399
11404
  itemsCount,
11400
11405
  groupBy,
@@ -11410,6 +11415,8 @@ const Slideshow = forwardRef((props, ref) => {
11410
11415
  });
11411
11416
  const showControls = slideshowControlsProps && slidesCount > 1;
11412
11417
  return /*#__PURE__*/jsx(Slides, {
11418
+ mode: mode,
11419
+ onChange: mode === 'scroll-snap' ? onPaginationClick : undefined,
11413
11420
  activeIndex: currentIndex,
11414
11421
  id: slideshowId,
11415
11422
  className: className,
@@ -11459,7 +11466,7 @@ const Slideshow = forwardRef((props, ref) => {
11459
11466
  });
11460
11467
  });
11461
11468
  Slideshow.displayName = 'Slideshow';
11462
- Slideshow.defaultProps = DEFAULT_PROPS$i;
11469
+ Slideshow.defaultProps = DEFAULT_PROPS$j;
11463
11470
 
11464
11471
  /**
11465
11472
  * Component display name.
@@ -11564,7 +11571,7 @@ const CLASSNAME$f = 'lumx-slideshow-controls';
11564
11571
  /**
11565
11572
  * Component default props.
11566
11573
  */
11567
- const DEFAULT_PROPS$h = {
11574
+ const DEFAULT_PROPS$i = {
11568
11575
  activeIndex: 0
11569
11576
  };
11570
11577
 
@@ -11578,7 +11585,7 @@ const DEFAULT_PROPS$h = {
11578
11585
  const InternalSlideshowControls = forwardRef((props, ref) => {
11579
11586
  const defaultTheme = useTheme() || Theme$1.light;
11580
11587
  const {
11581
- activeIndex = DEFAULT_PROPS$h.activeIndex,
11588
+ activeIndex = DEFAULT_PROPS$i.activeIndex,
11582
11589
  className,
11583
11590
  nextButtonProps,
11584
11591
  onNextClick,
@@ -11696,12 +11703,121 @@ const InternalSlideshowControls = forwardRef((props, ref) => {
11696
11703
  });
11697
11704
  InternalSlideshowControls.displayName = COMPONENT_NAME$g;
11698
11705
  InternalSlideshowControls.className = CLASSNAME$f;
11699
- InternalSlideshowControls.defaultProps = DEFAULT_PROPS$h;
11706
+ InternalSlideshowControls.defaultProps = DEFAULT_PROPS$i;
11700
11707
  const SlideshowControls = Object.assign(InternalSlideshowControls, {
11701
11708
  useSlideshowControls,
11702
11709
  useSlideshowControlsDefaultOptions: DEFAULT_OPTIONS
11703
11710
  });
11704
11711
 
11712
+ /**
11713
+ * Polyfill-like helper for the scrollend event.
11714
+ * Uses native scrollend if available, otherwise falls back to a timeout.
11715
+ *
11716
+ * @param element The element to listen to.
11717
+ * @param callback The callback to execute when scrolling ends.
11718
+ * @param options Options for the listener (timeout and AbortSignal).
11719
+ */
11720
+ function onScrollEnd(element, callback, options = {}) {
11721
+ const {
11722
+ timeout = 150,
11723
+ signal
11724
+ } = options;
11725
+
11726
+ // Native scrollend
11727
+ if ('onscrollend' in window) {
11728
+ element.addEventListener('scrollend', callback, {
11729
+ signal
11730
+ });
11731
+ return;
11732
+ }
11733
+
11734
+ // Fallback for browsers that don't support scrollend
11735
+ let timer;
11736
+ const handleScroll = () => {
11737
+ clearTimeout(timer);
11738
+ timer = setTimeout(callback, timeout);
11739
+ };
11740
+ element.addEventListener('scroll', handleScroll, {
11741
+ signal
11742
+ });
11743
+ signal?.addEventListener('abort', () => clearTimeout(timer));
11744
+ }
11745
+
11746
+ /**
11747
+ * Hook to handle scroll synchronization for the Slideshow component.
11748
+ * It syncs the scroll position with the active index and vice versa.
11749
+ */
11750
+ const useSlideScroll = ({
11751
+ enabled,
11752
+ activeIndex,
11753
+ wrapperRef,
11754
+ onChange
11755
+ }) => {
11756
+ const isAutoScrollRef = React__default.useRef(false);
11757
+ const isFromScrollRef = React__default.useRef(false);
11758
+
11759
+ // Sync State -> DOM (Programmatic Navigation)
11760
+ React__default.useEffect(() => {
11761
+ const wrapper = wrapperRef.current;
11762
+ if (!enabled || !wrapper) {
11763
+ return;
11764
+ }
11765
+
11766
+ // Skip if currently scrolling
11767
+ if (isFromScrollRef.current) {
11768
+ return;
11769
+ }
11770
+ const targetElement = wrapper.children[activeIndex];
11771
+ if (!targetElement) return;
11772
+ let newScrollLeft = targetElement.offsetLeft;
11773
+ if (targetElement.offsetParent !== wrapper) {
11774
+ newScrollLeft -= wrapper.offsetLeft + wrapper.clientLeft;
11775
+ }
11776
+ if (Math.abs(wrapper.scrollLeft - newScrollLeft) < 1) {
11777
+ return;
11778
+ }
11779
+ isAutoScrollRef.current = true;
11780
+ wrapper.scrollTo({
11781
+ left: newScrollLeft,
11782
+ behavior: !isReducedMotion() ? 'smooth' : undefined
11783
+ });
11784
+ }, [activeIndex, enabled, wrapperRef]);
11785
+
11786
+ // Sync DOM -> State (User Interaction)
11787
+ React__default.useEffect(() => {
11788
+ const wrapper = wrapperRef.current;
11789
+ if (!enabled || !wrapper) return undefined;
11790
+ const controller = new AbortController();
11791
+ const {
11792
+ signal
11793
+ } = controller;
11794
+ const handleScroll = () => {
11795
+ // Skip if currently scrolling programmatically
11796
+ if (isAutoScrollRef.current) {
11797
+ return;
11798
+ }
11799
+ const {
11800
+ scrollLeft,
11801
+ clientWidth
11802
+ } = wrapper;
11803
+ const newIndex = Math.round(scrollLeft / clientWidth);
11804
+ isFromScrollRef.current = true;
11805
+ onChange?.(newIndex);
11806
+ };
11807
+ const reset = () => {
11808
+ isAutoScrollRef.current = false;
11809
+ isFromScrollRef.current = false;
11810
+ };
11811
+ wrapper.addEventListener('scroll', handleScroll, {
11812
+ signal
11813
+ });
11814
+ onScrollEnd(wrapper, reset, {
11815
+ signal
11816
+ });
11817
+ return () => controller.abort();
11818
+ }, [enabled, onChange, wrapperRef]);
11819
+ };
11820
+
11705
11821
  /**
11706
11822
  * Component display name.
11707
11823
  */
@@ -11712,6 +11828,13 @@ const COMPONENT_NAME$f = 'Slideshow';
11712
11828
  */
11713
11829
  const CLASSNAME$e = 'lumx-slideshow';
11714
11830
 
11831
+ /**
11832
+ * Component default props.
11833
+ */
11834
+ const DEFAULT_PROPS$h = {
11835
+ mode: 'transform'
11836
+ };
11837
+
11715
11838
  /**
11716
11839
  * Slides component.
11717
11840
  *
@@ -11735,16 +11858,24 @@ const Slides = forwardRef((props, ref) => {
11735
11858
  afterSlides,
11736
11859
  hasControls,
11737
11860
  slideGroupLabel,
11861
+ mode = DEFAULT_PROPS$h.mode,
11862
+ onChange,
11738
11863
  ...forwardedProps
11739
11864
  } = props;
11740
11865
  const wrapperRef = React__default.useRef(null);
11741
11866
  const startIndexVisible = activeIndex;
11742
11867
  const endIndexVisible = startIndexVisible + 1;
11868
+ useSlideScroll({
11869
+ activeIndex,
11870
+ enabled: mode === 'scroll-snap',
11871
+ wrapperRef,
11872
+ onChange
11873
+ });
11743
11874
 
11744
11875
  // Inline style of wrapper element.
11745
- const wrapperStyle = {
11876
+ const wrapperStyle = mode === 'transform' ? {
11746
11877
  transform: `translateX(-${FULL_WIDTH_PERCENT * activeIndex}%)`
11747
- };
11878
+ } : undefined;
11748
11879
  const groups = React__default.useMemo(() => {
11749
11880
  const childrenArray = Children.toArray(children);
11750
11881
  return groupBy && groupBy > 1 ? chunk(childrenArray, groupBy) : childrenArray;
@@ -11769,7 +11900,7 @@ const Slides = forwardRef((props, ref) => {
11769
11900
  "aria-live": isAutoPlaying ? 'off' : 'polite',
11770
11901
  children: /*#__PURE__*/jsx("div", {
11771
11902
  ref: wrapperRef,
11772
- className: `${CLASSNAME$e}__wrapper`,
11903
+ className: `${CLASSNAME$e}__wrapper ${CLASSNAME$e}__wrapper--mode-${mode}`,
11773
11904
  style: wrapperStyle,
11774
11905
  children: groups.map((group, index) => /*#__PURE__*/jsx(SlideshowItemGroup, {
11775
11906
  id: slidesId && buildSlideShowGroupId(slidesId, index),
@@ -13735,8 +13866,9 @@ const UserBlock = forwardRef((props, ref) => {
13735
13866
  });
13736
13867
  }, [avatarProps, isClickable, linkAs, linkProps, name, nameProps, onClick]);
13737
13868
  const shouldDisplayFields = componentSize !== Size$1.s && componentSize !== Size$1.xs;
13738
- const fieldsBlock = fields && shouldDisplayFields && /*#__PURE__*/jsx("div", {
13869
+ const fieldsBlock = fields && shouldDisplayFields && /*#__PURE__*/jsx(InlineList, {
13739
13870
  className: `${CLASSNAME}__fields`,
13871
+ wrap: true,
13740
13872
  children: fields.map((field, idx) => /*#__PURE__*/jsx(Text, {
13741
13873
  as: "span",
13742
13874
  truncate: true,
@@ -13784,5 +13916,5 @@ UserBlock.displayName = COMPONENT_NAME;
13784
13916
  UserBlock.className = CLASSNAME;
13785
13917
  UserBlock.defaultProps = DEFAULT_PROPS;
13786
13918
 
13787
- export { AlertDialog, Autocomplete, AutocompleteMultiple, Avatar, Badge, BadgeWrapper, Button, ButtonGroup, CLASSNAME$1c as CLASSNAME, COMPONENT_NAME$1e as COMPONENT_NAME, Checkbox, Chip, ChipGroup, CommentBlock, CommentBlockVariant, DEFAULT_PROPS$10 as DEFAULT_PROPS, 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 };
13919
+ export { AlertDialog, Autocomplete, AutocompleteMultiple, Avatar, Badge, BadgeWrapper, Button, ButtonGroup, CLASSNAME$1c as CLASSNAME, COMPONENT_NAME$1e as COMPONENT_NAME, Checkbox, Chip, ChipGroup, CommentBlock, CommentBlockVariant, DEFAULT_PROPS$11 as DEFAULT_PROPS, 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 };
13788
13920
  //# sourceMappingURL=index.js.map