@lumx/react 3.19.0 → 3.19.1-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. package/index.d.ts +201 -117
  2. package/index.js +452 -464
  3. package/index.js.map +1 -1
  4. package/package.json +3 -3
  5. package/src/components/alert-dialog/AlertDialog.tsx +1 -1
  6. package/src/components/autocomplete/Autocomplete.tsx +1 -1
  7. package/src/components/autocomplete/AutocompleteMultiple.tsx +1 -1
  8. package/src/components/avatar/Avatar.tsx +1 -1
  9. package/src/components/badge/Badge.tsx +1 -1
  10. package/src/components/badge/BadgeWrapper.tsx +1 -1
  11. package/src/components/button/Button.test.tsx +5 -5
  12. package/src/components/button/Button.tsx +1 -1
  13. package/src/components/button/ButtonGroup.tsx +1 -1
  14. package/src/components/button/ButtonRoot.tsx +7 -37
  15. package/src/components/button/IconButton.tsx +1 -1
  16. package/src/components/checkbox/Checkbox.tsx +1 -1
  17. package/src/components/chip/Chip.tsx +2 -2
  18. package/src/components/chip/ChipGroup.tsx +2 -2
  19. package/src/components/comment-block/CommentBlock.tsx +1 -1
  20. package/src/components/date-picker/DatePickerControlled.tsx +1 -1
  21. package/src/components/date-picker/constants.ts +1 -1
  22. package/src/components/dialog/Dialog.tsx +1 -1
  23. package/src/components/divider/Divider.tsx +1 -1
  24. package/src/components/drag-handle/DragHandle.tsx +1 -1
  25. package/src/components/dropdown/Dropdown.tsx +1 -1
  26. package/src/components/expansion-panel/ExpansionPanel.tsx +1 -1
  27. package/src/components/flag/Flag.tsx +1 -1
  28. package/src/components/flex-box/FlexBox.tsx +2 -3
  29. package/src/components/generic-block/GenericBlock.tsx +1 -1
  30. package/src/components/grid/Grid.tsx +1 -1
  31. package/src/components/grid/GridItem.tsx +1 -1
  32. package/src/components/grid-column/GridColumn.tsx +1 -1
  33. package/src/components/heading/Heading.tsx +1 -1
  34. package/src/components/heading/constants.ts +1 -1
  35. package/src/components/icon/Icon.tsx +1 -1
  36. package/src/components/image-block/ImageBlock.tsx +1 -1
  37. package/src/components/image-lightbox/constants.ts +1 -1
  38. package/src/components/inline-list/InlineList.tsx +1 -1
  39. package/src/components/input-helper/InputHelper.tsx +1 -1
  40. package/src/components/input-label/InputLabel.test.tsx +1 -1
  41. package/src/components/input-label/InputLabel.tsx +1 -1
  42. package/src/components/lightbox/Lightbox.tsx +1 -1
  43. package/src/components/link/Link.test.tsx +8 -6
  44. package/src/components/link/Link.tsx +10 -21
  45. package/src/components/link-preview/LinkPreview.stories.tsx +1 -1
  46. package/src/components/link-preview/LinkPreview.test.tsx +1 -1
  47. package/src/components/link-preview/LinkPreview.tsx +1 -1
  48. package/src/components/list/List.tsx +1 -1
  49. package/src/components/list/ListDivider.tsx +1 -1
  50. package/src/components/list/ListItem.test.tsx +1 -3
  51. package/src/components/list/ListItem.tsx +20 -33
  52. package/src/components/list/ListSubheader.tsx +1 -1
  53. package/src/components/message/Message.tsx +1 -1
  54. package/src/components/mosaic/Mosaic.tsx +1 -1
  55. package/src/components/navigation/Navigation.test.tsx +1 -1
  56. package/src/components/navigation/Navigation.tsx +1 -1
  57. package/src/components/navigation/NavigationItem.tsx +7 -11
  58. package/src/components/navigation/NavigationSection.test.tsx +2 -1
  59. package/src/components/navigation/NavigationSection.tsx +5 -4
  60. package/src/components/navigation/context.tsx +2 -1
  61. package/src/components/notification/Notification.tsx +1 -1
  62. package/src/components/popover/Popover.tsx +1 -1
  63. package/src/components/popover-dialog/PopoverDialog.tsx +1 -1
  64. package/src/components/post-block/PostBlock.tsx +1 -1
  65. package/src/components/progress/Progress.tsx +1 -1
  66. package/src/components/progress/ProgressCircular.tsx +1 -1
  67. package/src/components/progress/ProgressLinear.tsx +1 -1
  68. package/src/components/progress-tracker/ProgressTracker.tsx +1 -1
  69. package/src/components/progress-tracker/ProgressTrackerStep.tsx +1 -1
  70. package/src/components/progress-tracker/ProgressTrackerStepPanel.tsx +1 -1
  71. package/src/components/radio-button/RadioButton.tsx +1 -1
  72. package/src/components/radio-button/RadioGroup.tsx +1 -1
  73. package/src/components/select/Select.test.tsx +1 -1
  74. package/src/components/select/Select.tsx +2 -2
  75. package/src/components/select/SelectMultiple.test.tsx +1 -1
  76. package/src/components/select/SelectMultiple.tsx +2 -2
  77. package/src/components/select/WithSelectContext.tsx +2 -2
  78. package/src/components/side-navigation/SideNavigation.tsx +1 -1
  79. package/src/components/side-navigation/SideNavigationItem.tsx +23 -28
  80. package/src/components/skeleton/SkeletonCircle.tsx +1 -1
  81. package/src/components/skeleton/SkeletonRectangle.tsx +1 -1
  82. package/src/components/skeleton/SkeletonTypography.tsx +1 -1
  83. package/src/components/slider/Slider.tsx +1 -1
  84. package/src/components/slideshow/Slides.tsx +1 -1
  85. package/src/components/slideshow/SlideshowControls.tsx +1 -1
  86. package/src/components/slideshow/SlideshowItem.tsx +1 -1
  87. package/src/components/slideshow/SlideshowItemGroup.tsx +1 -1
  88. package/src/components/switch/Switch.tsx +1 -1
  89. package/src/components/table/Table.tsx +1 -1
  90. package/src/components/table/TableBody.tsx +1 -1
  91. package/src/components/table/TableCell.tsx +1 -1
  92. package/src/components/table/TableHeader.tsx +1 -1
  93. package/src/components/table/TableRow.tsx +1 -1
  94. package/src/components/tabs/Tab.tsx +1 -1
  95. package/src/components/tabs/TabList.tsx +1 -1
  96. package/src/components/tabs/TabPanel.tsx +1 -1
  97. package/src/components/text/Text.tsx +1 -1
  98. package/src/components/text-field/TextField.test.tsx +1 -1
  99. package/src/components/text-field/TextField.tsx +1 -1
  100. package/src/components/thumbnail/Thumbnail.tsx +7 -12
  101. package/src/components/thumbnail/useFocusPointStyle.tsx +1 -1
  102. package/src/components/toolbar/Toolbar.tsx +1 -1
  103. package/src/components/tooltip/Tooltip.tsx +1 -1
  104. package/src/components/uploader/Uploader.tsx +1 -1
  105. package/src/components/user-block/UserBlock.tsx +1 -1
  106. package/src/hooks/useCallbackOnEscape.ts +1 -1
  107. package/src/index.ts +3 -1
  108. package/src/utils/partitionMulti.ts +2 -1
  109. package/src/utils/react/RawClickable.test.tsx +153 -0
  110. package/src/utils/react/RawClickable.tsx +65 -0
  111. package/src/utils/type/HasRequiredLinkHref.ts +1 -0
  112. package/src/utils/type/index.ts +3 -13
  113. package/src/components/index.ts +0 -160
  114. package/src/utils/browser/event.ts +0 -1
  115. package/src/utils/className/fontColorClass.test.ts +0 -15
  116. package/src/utils/className/fontColorClass.ts +0 -12
  117. package/src/utils/className/getBasicClass.test.ts +0 -20
  118. package/src/utils/className/getRootClassName.test.ts +0 -11
  119. package/src/utils/className/getRootClassName.ts +0 -24
  120. package/src/utils/className/getTypographyClassName.test.ts +0 -7
  121. package/src/utils/className/getTypographyClassName.ts +0 -9
  122. package/src/utils/className/handleBasicClasses.test.ts +0 -28
  123. package/src/utils/className/index.ts +0 -5
  124. package/src/utils/className/resolveColorWithVariants.test.ts +0 -33
  125. package/src/utils/className/resolveColorWithVariants.ts +0 -11
  126. package/src/utils/react/renderButtonOrLink.tsx +0 -16
  127. package/src/utils/react/renderLink.tsx +0 -17
  128. package/src/utils/type/Callback.ts +0 -4
  129. package/src/utils/type/Falsy.ts +0 -5
  130. package/src/utils/type/GenericProps.ts +0 -11
  131. package/src/utils/type/HasAriaLabelOrLabelledBy.ts +0 -19
  132. package/src/utils/type/HasClassName.ts +0 -6
  133. package/src/utils/type/HasCloseMode.ts +0 -7
  134. package/src/utils/type/HasTheme.ts +0 -8
  135. package/src/utils/type/HeadingElement.ts +0 -2
  136. package/src/utils/type/Point.ts +0 -4
  137. package/src/utils/type/Predicate.ts +0 -2
  138. package/src/utils/type/RectSize.ts +0 -4
  139. package/src/utils/type/TextElement.ts +0 -4
  140. package/src/utils/type/ValueOf.ts +0 -2
  141. package/src/utils/type/color/index.ts +0 -43
package/index.js CHANGED
@@ -26,35 +26,81 @@ import isObject from 'lodash/isObject';
26
26
  import set from 'lodash/set';
27
27
 
28
28
  /**
29
- * See SCSS variable $lumx-color-palette
29
+ * The down key code.
30
30
  */
31
- const ColorPalette = {
32
- primary: 'primary',
33
- secondary: 'secondary',
34
- blue: 'blue',
35
- dark: 'dark',
36
- green: 'green',
37
- yellow: 'yellow',
38
- red: 'red',
39
- light: 'light',
40
- grey: 'grey'
41
- };
31
+ const DOWN_KEY_CODE = 40;
32
+
42
33
  /**
43
- * See SCSS variable $lumx-color-variants
34
+ * The enter/return key code.
44
35
  */
45
- const ColorVariant = {
46
- D1: 'D1',
47
- D2: 'D2',
48
- L1: 'L1',
49
- L2: 'L2',
50
- L3: 'L3',
51
- L4: 'L4',
52
- L5: 'L5',
53
- L6: 'L6',
54
- N: 'N'
36
+ const ENTER_KEY_CODE = 13;
37
+
38
+ /**
39
+ * The space key code.
40
+ */
41
+ const SPACE_KEY_CODE = 32;
42
+
43
+ /**
44
+ * The escape key code.
45
+ */
46
+ const ESCAPE_KEY_CODE = 27;
47
+
48
+ /**
49
+ * The left key code.
50
+ */
51
+ const LEFT_KEY_CODE = 37;
52
+
53
+ /**
54
+ * The right key code.
55
+ */
56
+ const RIGHT_KEY_CODE = 39;
57
+
58
+ /**
59
+ * The tab key code.
60
+ */
61
+ const TAB_KEY_CODE = 9;
62
+
63
+ /**
64
+ * The up key code.
65
+ */
66
+ const UP_KEY_CODE = 38;
67
+
68
+ /**
69
+ * The up key code.
70
+ */
71
+ const BACKSPACE_KEY_CODE = 8;
72
+
73
+ /**
74
+ * The prefix to use for the CSS classes.
75
+ */
76
+ const CSS_PREFIX = 'lumx';
77
+
78
+ /**
79
+ * Animation duration constants. Take into consideration that if you change one of these variables,
80
+ * you need to update their scss counterpart as well
81
+ */
82
+ const DIALOG_TRANSITION_DURATION = 400;
83
+ const EXPANSION_PANEL_TRANSITION_DURATION = 400;
84
+ const NOTIFICATION_TRANSITION_DURATION = 200;
85
+ const SLIDESHOW_TRANSITION_DURATION = 5000;
86
+
87
+ /**
88
+ * Delay on hover after which we open or close the tooltip.
89
+ * Only applies to devices supporting pointer hover.
90
+ */
91
+ const TOOLTIP_HOVER_DELAY = {
92
+ open: 500,
93
+ close: 500
55
94
  };
56
95
 
57
- /** ColorPalette with all possible color variant combination */
96
+ /**
97
+ * Delay on long press after which we open or close the tooltip.
98
+ * Only applies to devices not supporting pointer hover.
99
+ */
100
+ const TOOLTIP_LONG_PRESS_DELAY = {
101
+ open: 250,
102
+ close: 3000
103
+ };
58
104
 
59
105
  /**
60
106
  * Alignments.
@@ -179,6 +225,36 @@ const WhiteSpace = {
179
225
  'pre-line': 'pre-line',
180
226
  'break-spaces': 'break-spaces'
181
227
  };
228
+ /**
229
+ * See SCSS variable $lumx-color-palette
230
+ */
231
+ const ColorPalette = {
232
+ primary: 'primary',
233
+ secondary: 'secondary',
234
+ blue: 'blue',
235
+ dark: 'dark',
236
+ green: 'green',
237
+ yellow: 'yellow',
238
+ red: 'red',
239
+ light: 'light',
240
+ grey: 'grey'
241
+ };
242
+ /**
243
+ * See SCSS variable $lumx-color-variants
244
+ */
245
+ const ColorVariant = {
246
+ D1: 'D1',
247
+ D2: 'D2',
248
+ L1: 'L1',
249
+ L2: 'L2',
250
+ L3: 'L3',
251
+ L4: 'L4',
252
+ L5: 'L5',
253
+ L6: 'L6',
254
+ N: 'N'
255
+ };
256
+
257
+ /** ColorPalette with all possible color variant combination */
182
258
 
183
259
  var classnames = {exports: {}};
184
260
 
@@ -287,21 +363,6 @@ const mdiRadioboxBlank = 'M12 20a8 8 0 0 1-8-8 8 8 0 0 1 8-8 8 8 0 0 1 8 8 8 8 0
287
363
 
288
364
  const mdiRadioboxMarked = 'M12 20a8 8 0 0 1-8-8 8 8 0 0 1 8-8 8 8 0 0 1 8 8 8 8 0 0 1-8 8m0-18A10 10 0 0 0 2 12a10 10 0 0 0 10 10 10 10 0 0 0 10-10A10 10 0 0 0 12 2m0 5a5 5 0 0 0-5 5 5 5 0 0 0 5 5 5 5 0 0 0 5-5 5 5 0 0 0-5-5';
289
365
 
290
- const _excluded$1u = ["prefix"];
291
-
292
- /**
293
- * Enhance isEmpty method to also works with numbers.
294
- *
295
- * @param value The value to check.
296
- * @return Whether the input value is empty or != 0.
297
- */
298
- const _isEmpty = value => {
299
- if (typeof value === 'number') {
300
- return value === 0;
301
- }
302
- return isEmpty(value);
303
- };
304
-
305
366
  /**
306
367
  * Get the basic CSS class for the given type.
307
368
  *
@@ -329,6 +390,21 @@ function getBasicClass({
329
390
  return `${prefix}--${kebabCase(type)}-${value}`;
330
391
  }
331
392
 
393
+ const _excluded$1t = ["prefix"];
394
+
395
+ /**
396
+ * Enhance isEmpty method to also works with numbers.
397
+ *
398
+ * @param value The value to check.
399
+ * @return Whether the input value is empty or != 0.
400
+ */
401
+ const _isEmpty = value => {
402
+ if (typeof value === 'number') {
403
+ return value === 0;
404
+ }
405
+ return isEmpty(value);
406
+ };
407
+
332
408
  /**
333
409
  * Return all basic LumX CSS classes which are available for every components.
334
410
  *
@@ -344,7 +420,7 @@ function handleBasicClasses(_ref) {
344
420
  let {
345
421
  prefix
346
422
  } = _ref,
347
- props = _objectWithoutProperties(_ref, _excluded$1u);
423
+ props = _objectWithoutProperties(_ref, _excluded$1t);
348
424
  const otherClasses = {};
349
425
  if (!isEmpty(props)) {
350
426
  Object.keys(props).forEach(prop => {
@@ -358,161 +434,6 @@ function handleBasicClasses(_ref) {
358
434
  return classNames(prefix, otherClasses);
359
435
  }
360
436
 
361
- /**
362
- * Checks whether or not the browser support passive events.
363
- * @see https://github.com/Modernizr/Modernizr/blob/6d56d814b9682843313b16060adb25a58d83a317/feature-detects/dom/passiveeventlisteners.js
364
- */
365
- function isPassiveEventAvailable() {
366
- let supportsPassiveOption = false;
367
- try {
368
- const opts = Object.defineProperty({}, 'passive', {
369
- get() {
370
- supportsPassiveOption = true;
371
- }
372
- });
373
- window.addEventListener('testPassiveEventSupport', noop, opts);
374
- window.removeEventListener('testPassiveEventSupport', noop, opts);
375
- } catch (e) {
376
- // ignored
377
- }
378
- return supportsPassiveOption;
379
- }
380
-
381
- /**
382
- * Detects horizontal swipe direction without blocking the browser scroll using passive event.
383
- * @see http://javascriptkit.com/javatutors/touchevents2.shtml
384
- * @see https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md
385
- */
386
- function detectHorizontalSwipe(touchSurface, handleSwipe) {
387
- let startX;
388
- let startY;
389
- // Required min distance traveled to be considered swipe.
390
- const threshold = 150;
391
- // Maximum distance allowed at the same time in perpendicular direction.
392
- const restraint = 150;
393
- // Maximum time allowed to travel that distance.
394
- const allowedTime = 300;
395
- let elapsedTime;
396
- let startTime;
397
- let finished;
398
- const onTouchStart = evt => {
399
- const [touch] = Array.from(evt.changedTouches);
400
- startX = touch.pageX;
401
- startY = touch.pageY;
402
- // Record time when finger first makes contact with surface.
403
- startTime = new Date().getTime();
404
- finished = false;
405
- };
406
- const onTouchMove = evt => {
407
- if (finished) {
408
- return;
409
- }
410
- elapsedTime = new Date().getTime() - startTime;
411
- if (elapsedTime > allowedTime) {
412
- // Touch swipe too long to be considered.
413
- return;
414
- }
415
- const [touch] = Array.from(evt.changedTouches);
416
- // Get horizontal dist traveled by finger while in contact with surface.
417
- const distX = touch.pageX - startX;
418
- // Get vertical dist traveled by finger while in contact with surface.
419
- const distY = touch.pageY - startY;
420
- if (!(Math.abs(distX) >= threshold && Math.abs(distY) <= restraint)) {
421
- // Swipe is not horizontal.
422
- return;
423
- }
424
- // Swipe direction.
425
- const direction = distX < 0 ? 'left' : 'right';
426
- handleSwipe(direction);
427
- finished = true;
428
- };
429
-
430
- // Activate passive event if possible for better scrolling performance.
431
- const eventOptions = isPassiveEventAvailable() ? {
432
- passive: true
433
- } : false;
434
- touchSurface.addEventListener('touchstart', onTouchStart, eventOptions);
435
- touchSurface.addEventListener('touchmove', onTouchMove, eventOptions);
436
- return () => {
437
- touchSurface.removeEventListener('touchstart', onTouchStart, eventOptions);
438
- touchSurface.removeEventListener('touchmove', onTouchMove, eventOptions);
439
- };
440
- }
441
- /**
442
- * Make sure the pressed key is the enter key before calling the callback.
443
- *
444
- * @param handler The handler to call on enter/return press.
445
- * @return The decorated function.
446
- */
447
- function onEnterPressed(handler) {
448
- return evt => {
449
- if (evt.key !== 'Enter') {
450
- return;
451
- }
452
- handler(evt);
453
- };
454
- }
455
-
456
- /**
457
- * Make sure the pressed key is the escape key before calling the callback.
458
- *
459
- * @param handler The handler to call on enter/return press.
460
- * @return The decorated function.
461
- */
462
- function onEscapePressed(handler) {
463
- return evt => {
464
- if (evt.key !== 'Escape') {
465
- return;
466
- }
467
- handler(evt);
468
- };
469
- }
470
-
471
- /**
472
- * Handle button key pressed (Enter + Space).
473
- *
474
- * @param handler The handler to call.
475
- * @return The decorated function.
476
- */
477
- function onButtonPressed(handler) {
478
- return evt => {
479
- if (evt.key !== 'Enter' && evt.key !== ' ') {
480
- return;
481
- }
482
- handler(evt);
483
- };
484
- }
485
-
486
- /**
487
- * The prefix to use for the CSS classes.
488
- */
489
- const CSS_PREFIX = 'lumx';
490
-
491
- /**
492
- * Animation duration constants. Take into consideration that if you change one of these variables,
493
- * you need to update their scss counterpart as well
494
- */
495
- const DIALOG_TRANSITION_DURATION = 400;
496
- const NOTIFICATION_TRANSITION_DURATION = 200;
497
-
498
- /**
499
- * Delay on hover after which we open or close the tooltip.
500
- * Only applies to devices supporting pointer hover.
501
- */
502
- const TOOLTIP_HOVER_DELAY = {
503
- open: 500,
504
- close: 500
505
- };
506
-
507
- /**
508
- * Delay on long press after which we open or close the tooltip.
509
- * Only applies to devices not supporting pointer hover.
510
- */
511
- const TOOLTIP_LONG_PRESS_DELAY = {
512
- open: 250,
513
- close: 3000
514
- };
515
-
516
437
  // See https://regex101.com/r/YjS1uI/3
517
438
  const LAST_PART_CLASSNAME = /^(.*)-(.+)$/gi;
518
439
 
@@ -542,6 +463,13 @@ const getTypographyClassName = typography => {
542
463
  return `lumx-typography-${typography}`;
543
464
  };
544
465
 
466
+ /** Resolve color & color variant from a `ColorWithVariants` and optionally a `ColorVariant`. */
467
+ function resolveColorWithVariants(colorWithVariants, colorVariant) {
468
+ if (!colorWithVariants) return [undefined, colorVariant];
469
+ const [color, baseColorVariant] = colorWithVariants.split('-');
470
+ return [color, colorVariant || baseColorVariant];
471
+ }
472
+
545
473
  /**
546
474
  * Returns the classname associated to the given color and variant.
547
475
  * For example, for 'dark' and 'L2' it returns `lumx-color-font-dark-L2`
@@ -552,13 +480,6 @@ function fontColorClass(propColor, propColorVariant) {
552
480
  return `lumx-color-font-${color}-${colorVariant}`;
553
481
  }
554
482
 
555
- /** Resolve color & color variant from a `ColorWithVariants` and optionally a `ColorVariant`. */
556
- function resolveColorWithVariants(colorWithVariants, colorVariant) {
557
- if (!colorWithVariants) return [undefined, colorVariant];
558
- const [color, baseColorVariant] = colorWithVariants.split('-');
559
- return [color, colorVariant || baseColorVariant];
560
- }
561
-
562
483
  let i = 0;
563
484
 
564
485
  /**
@@ -578,7 +499,7 @@ function useId() {
578
499
  */
579
500
  const forwardRef = React__default.forwardRef;
580
501
 
581
- const _excluded$1t = ["id", "title", "className", "cancelProps", "confirmProps", "kind", "size", "dialogProps", "children"],
502
+ const _excluded$1s = ["id", "title", "className", "cancelProps", "confirmProps", "kind", "size", "dialogProps", "children"],
582
503
  _excluded2$3 = ["label", "onClick"],
583
504
  _excluded3 = ["label", "onClick"];
584
505
  /**
@@ -642,7 +563,7 @@ const AlertDialog = forwardRef((props, ref) => {
642
563
  dialogProps,
643
564
  children
644
565
  } = props,
645
- forwardedProps = _objectWithoutProperties(props, _excluded$1t);
566
+ forwardedProps = _objectWithoutProperties(props, _excluded$1s);
646
567
  const cancelButtonRef = React__default.useRef(null);
647
568
  const confirmationButtonRef = React__default.useRef(null);
648
569
  const {
@@ -769,7 +690,7 @@ function useTheme() {
769
690
  return React__default.useContext(ThemeContext);
770
691
  }
771
692
 
772
- const _excluded$1s = ["disabled", "isDisabled", "aria-disabled", "onClick", "onChange"];
693
+ const _excluded$1r = ["disabled", "isDisabled", "aria-disabled", "onClick", "onChange"];
773
694
  /**
774
695
  * Resolve disabled state from props.
775
696
  * (handles `disabled`, `isDisabled` and `aria-disabled`)
@@ -784,7 +705,7 @@ function useDisableStateProps(props) {
784
705
  onClick,
785
706
  onChange
786
707
  } = props,
787
- otherProps = _objectWithoutProperties(props, _excluded$1s);
708
+ otherProps = _objectWithoutProperties(props, _excluded$1r);
788
709
  const disabledStateContext = useDisabledStateContext();
789
710
  const disabledStateProps = {
790
711
  disabled: (disabledStateContext === null || disabledStateContext === void 0 ? void 0 : disabledStateContext.state) === 'disabled' || isDisabled,
@@ -802,7 +723,7 @@ function useDisableStateProps(props) {
802
723
  };
803
724
  }
804
725
 
805
- const _excluded$1r = ["anchorToInput", "children", "chips", "className", "closeOnClick", "closeOnClickAway", "closeOnEscape", "error", "fitToAnchorWidth", "hasError", "helper", "icon", "inputRef", "clearButtonProps", "isRequired", "isOpen", "isValid", "label", "name", "offset", "onBlur", "onChange", "onClose", "onFocus", "onInfiniteScroll", "placeholder", "placement", "shouldFocusOnClose", "theme", "value", "textFieldProps", "focusAnchorOnClose"];
726
+ const _excluded$1q = ["anchorToInput", "children", "chips", "className", "closeOnClick", "closeOnClickAway", "closeOnEscape", "error", "fitToAnchorWidth", "hasError", "helper", "icon", "inputRef", "clearButtonProps", "isRequired", "isOpen", "isValid", "label", "name", "offset", "onBlur", "onChange", "onClose", "onFocus", "onInfiniteScroll", "placeholder", "placement", "shouldFocusOnClose", "theme", "value", "textFieldProps", "focusAnchorOnClose"];
806
727
 
807
728
  /**
808
729
  * Defines the props of the component.
@@ -876,7 +797,7 @@ const Autocomplete = forwardRef((props, ref) => {
876
797
  textFieldProps = {},
877
798
  focusAnchorOnClose
878
799
  } = otherProps,
879
- forwardedProps = _objectWithoutProperties(otherProps, _excluded$1r);
800
+ forwardedProps = _objectWithoutProperties(otherProps, _excluded$1q);
880
801
  const inputAnchorRef = useRef(null);
881
802
  const textFieldRef = useRef(null);
882
803
  useFocus(inputAnchorRef.current, !isOpen && shouldFocusOnClose);
@@ -924,7 +845,7 @@ Autocomplete.displayName = COMPONENT_NAME$1m;
924
845
  Autocomplete.className = CLASSNAME$1j;
925
846
  Autocomplete.defaultProps = DEFAULT_PROPS$12;
926
847
 
927
- const _excluded$1q = ["anchorToInput", "children", "chipsAlignment", "className", "closeOnClickAway", "closeOnEscape", "fitToAnchorWidth", "hasError", "helper", "icon", "inputRef", "clearButtonProps", "isRequired", "isOpen", "isValid", "label", "name", "offset", "onBlur", "onChange", "onClear", "onClose", "onFocus", "onInfiniteScroll", "onKeyDown", "placeholder", "placement", "selectedChipRender", "shouldFocusOnClose", "theme", "type", "value", "values"];
848
+ const _excluded$1p = ["anchorToInput", "children", "chipsAlignment", "className", "closeOnClickAway", "closeOnEscape", "fitToAnchorWidth", "hasError", "helper", "icon", "inputRef", "clearButtonProps", "isRequired", "isOpen", "isValid", "label", "name", "offset", "onBlur", "onChange", "onClear", "onClose", "onFocus", "onInfiniteScroll", "onKeyDown", "placeholder", "placement", "selectedChipRender", "shouldFocusOnClose", "theme", "type", "value", "values"];
928
849
 
929
850
  /**
930
851
  * Defines the props of the component.
@@ -1013,7 +934,7 @@ const AutocompleteMultiple = forwardRef((props, ref) => {
1013
934
  value,
1014
935
  values = DEFAULT_PROPS$11.values
1015
936
  } = otherProps,
1016
- forwardedProps = _objectWithoutProperties(otherProps, _excluded$1q);
937
+ forwardedProps = _objectWithoutProperties(otherProps, _excluded$1p);
1017
938
  return /*#__PURE__*/React__default.createElement(Autocomplete, _extends({
1018
939
  ref: ref
1019
940
  }, forwardedProps, {
@@ -1054,7 +975,7 @@ AutocompleteMultiple.displayName = COMPONENT_NAME$1l;
1054
975
  AutocompleteMultiple.className = CLASSNAME$1i;
1055
976
  AutocompleteMultiple.defaultProps = DEFAULT_PROPS$11;
1056
977
 
1057
- const _excluded$1p = ["actions", "alt", "badge", "className", "image", "linkProps", "linkAs", "onClick", "onKeyPress", "size", "theme", "thumbnailProps"];
978
+ const _excluded$1o = ["actions", "alt", "badge", "className", "image", "linkProps", "linkAs", "onClick", "onKeyPress", "size", "theme", "thumbnailProps"];
1058
979
 
1059
980
  /**
1060
981
  * Avatar sizes.
@@ -1104,7 +1025,7 @@ const Avatar = forwardRef((props, ref) => {
1104
1025
  theme = defaultTheme,
1105
1026
  thumbnailProps
1106
1027
  } = props,
1107
- forwardedProps = _objectWithoutProperties(props, _excluded$1p);
1028
+ forwardedProps = _objectWithoutProperties(props, _excluded$1o);
1108
1029
  return /*#__PURE__*/React__default.createElement("div", _extends({
1109
1030
  ref: ref
1110
1031
  }, forwardedProps, {
@@ -1135,7 +1056,7 @@ Avatar.displayName = COMPONENT_NAME$1k;
1135
1056
  Avatar.className = CLASSNAME$1h;
1136
1057
  Avatar.defaultProps = DEFAULT_PROPS$10;
1137
1058
 
1138
- const _excluded$1o = ["children", "className", "color"];
1059
+ const _excluded$1n = ["children", "className", "color"];
1139
1060
 
1140
1061
  /**
1141
1062
  * Defines the props of the component.
@@ -1171,7 +1092,7 @@ const Badge = forwardRef((props, ref) => {
1171
1092
  className,
1172
1093
  color = DEFAULT_PROPS$$.color
1173
1094
  } = props,
1174
- forwardedProps = _objectWithoutProperties(props, _excluded$1o);
1095
+ forwardedProps = _objectWithoutProperties(props, _excluded$1n);
1175
1096
  return /*#__PURE__*/React__default.createElement("div", _extends({
1176
1097
  ref: ref
1177
1098
  }, forwardedProps, {
@@ -1185,7 +1106,7 @@ Badge.displayName = COMPONENT_NAME$1j;
1185
1106
  Badge.className = CLASSNAME$1g;
1186
1107
  Badge.defaultProps = DEFAULT_PROPS$$;
1187
1108
 
1188
- const _excluded$1n = ["badge", "children", "className"];
1109
+ const _excluded$1m = ["badge", "children", "className"];
1189
1110
  /**
1190
1111
  * Component display name.
1191
1112
  */
@@ -1201,7 +1122,7 @@ const BadgeWrapper = forwardRef((props, ref) => {
1201
1122
  children,
1202
1123
  className
1203
1124
  } = props,
1204
- forwardedProps = _objectWithoutProperties(props, _excluded$1n);
1125
+ forwardedProps = _objectWithoutProperties(props, _excluded$1m);
1205
1126
  return /*#__PURE__*/React__default.createElement("div", _extends({
1206
1127
  ref: ref
1207
1128
  }, forwardedProps, {
@@ -1254,25 +1175,53 @@ const IS_BROWSER = typeof navigator !== 'undefined' && !navigator.userAgent.incl
1254
1175
  */
1255
1176
  const VISUALLY_HIDDEN = 'visually-hidden';
1256
1177
 
1257
- const _excluded$1m = ["linkAs"];
1178
+ /** Same as `React.forwardRef` but inferring Ref type from the `as` prop. */
1179
+ const forwardRefPolymorphic = React__default.forwardRef;
1180
+
1181
+ const _excluded$1l = ["children", "onClick", "disabled", "isDisabled", "aria-disabled", "as"];
1258
1182
  /**
1259
- * Render link with default <a> HTML component or a custom one provided by `linkAs`.
1260
- *
1261
- * Can be used to inject the `Link` component from `react-router` and provide better a11y on LumX components.
1262
- *
1263
- * @param linkAs Custom link component.
1264
- * @param children Link children.
1265
- * @return A link.
1183
+ * Render clickable element (link, button or custom element)
1184
+ * (also does some basic disabled state handling)
1266
1185
  */
1267
- const renderLink = (_ref, ...children) => {
1268
- let {
1269
- linkAs
1270
- } = _ref,
1271
- forwardedProps = _objectWithoutProperties(_ref, _excluded$1m);
1272
- return /*#__PURE__*/React__default.createElement(linkAs || 'a', forwardedProps, ...children);
1273
- };
1186
+ const RawClickable = forwardRefPolymorphic((props, ref) => {
1187
+ const {
1188
+ children,
1189
+ onClick,
1190
+ disabled,
1191
+ isDisabled = disabled,
1192
+ 'aria-disabled': ariaDisabled,
1193
+ as
1194
+ } = props,
1195
+ forwardedProps = _objectWithoutProperties(props, _excluded$1l);
1196
+ const isAnyDisabled = isDisabled || ariaDisabled === 'true' || ariaDisabled === true;
1197
+ const Component = as;
1198
+ let clickableProps;
1199
+ if (Component === 'button') {
1200
+ clickableProps = {
1201
+ type: forwardedProps.type || 'button',
1202
+ disabled: isDisabled
1203
+ };
1204
+ } else {
1205
+ clickableProps = {
1206
+ tabIndex: isDisabled ? '-1' : forwardedProps.tabIndex
1207
+ };
1208
+ }
1209
+ return /*#__PURE__*/React__default.createElement(Component, _extends({
1210
+ ref: ref,
1211
+ "aria-disabled": isAnyDisabled
1212
+ }, forwardedProps, clickableProps, {
1213
+ onClick: event => {
1214
+ if (isAnyDisabled) {
1215
+ event.stopPropagation();
1216
+ event.preventDefault();
1217
+ return;
1218
+ }
1219
+ onClick === null || onClick === void 0 ? void 0 : onClick(event);
1220
+ }
1221
+ }), children);
1222
+ });
1274
1223
 
1275
- const _excluded$1l = ["aria-label", "children", "className", "color", "emphasis", "hasBackground", "href", "isSelected", "isActive", "isFocused", "isHovered", "linkAs", "name", "size", "target", "theme", "variant", "type", "fullWidth"];
1224
+ const _excluded$1k = ["aria-label", "children", "className", "color", "emphasis", "hasBackground", "isSelected", "isActive", "isFocused", "isHovered", "linkAs", "size", "theme", "variant", "fullWidth"];
1276
1225
 
1277
1226
  /**
1278
1227
  * Button size definition.
@@ -1333,21 +1282,17 @@ const ButtonRoot = forwardRef((props, ref) => {
1333
1282
  color,
1334
1283
  emphasis,
1335
1284
  hasBackground,
1336
- href,
1337
1285
  isSelected,
1338
1286
  isActive,
1339
1287
  isFocused,
1340
1288
  isHovered,
1341
1289
  linkAs,
1342
- name,
1343
1290
  size,
1344
- target,
1345
1291
  theme,
1346
1292
  variant,
1347
- type = 'button',
1348
1293
  fullWidth
1349
1294
  } = otherProps,
1350
- forwardedProps = _objectWithoutProperties(otherProps, _excluded$1l);
1295
+ forwardedProps = _objectWithoutProperties(otherProps, _excluded$1k);
1351
1296
  const adaptedColor = color || emphasis !== Emphasis.high && theme === Theme.dark && ColorPalette.light || emphasis === Emphasis.high && ColorPalette.primary || ColorPalette.dark;
1352
1297
  if (hasBackground) {
1353
1298
  return renderButtonWrapper(_objectSpread2(_objectSpread2({}, props), {}, {
@@ -1360,7 +1305,7 @@ const ButtonRoot = forwardRef((props, ref) => {
1360
1305
  color: adaptedColor,
1361
1306
  emphasis,
1362
1307
  isSelected,
1363
- isDisabled: isAnyDisabled,
1308
+ isDisabled: props.isDisabled || props['aria-disabled'],
1364
1309
  isActive,
1365
1310
  isFocused,
1366
1311
  isHovered,
@@ -1370,39 +1315,19 @@ const ButtonRoot = forwardRef((props, ref) => {
1370
1315
  variant,
1371
1316
  fullWidth
1372
1317
  }));
1373
-
1374
- /**
1375
- * If the linkAs prop is used, we use the linkAs component instead of a <button>.
1376
- * If there is an href attribute, we display an <a> instead of a <button>.
1377
- *
1378
- * However, in any case, if the component is disabled, we returned a <button> since disabled is not compatible with <a>.
1379
- */
1380
- if ((linkAs || !isEmpty(props.href)) && !isAnyDisabled) {
1381
- return renderLink(_objectSpread2(_objectSpread2({
1382
- linkAs
1383
- }, forwardedProps), {}, {
1384
- 'aria-label': ariaLabel,
1385
- href,
1386
- target,
1387
- className: buttonClassName,
1388
- ref: ref
1389
- }), children);
1390
- }
1391
- return /*#__PURE__*/React__default.createElement("button", _extends({}, forwardedProps, disabledStateProps, {
1318
+ return /*#__PURE__*/React__default.createElement(RawClickable, _extends({
1319
+ as: linkAs || forwardedProps.href ? 'a' : 'button'
1320
+ }, forwardedProps, disabledStateProps, {
1392
1321
  "aria-disabled": isAnyDisabled,
1393
1322
  "aria-label": ariaLabel,
1394
1323
  ref: ref,
1395
- className: buttonClassName,
1396
- name: name,
1397
- type:
1398
- // eslint-disable-next-line react/button-has-type
1399
- type
1324
+ className: buttonClassName
1400
1325
  }), children);
1401
1326
  });
1402
1327
  ButtonRoot.displayName = COMPONENT_NAME$1h;
1403
1328
  ButtonRoot.defaultProps = {};
1404
1329
 
1405
- const _excluded$1k = ["children", "className", "emphasis", "leftIcon", "rightIcon", "size", "theme"];
1330
+ const _excluded$1j = ["children", "className", "emphasis", "leftIcon", "rightIcon", "size", "theme"];
1406
1331
 
1407
1332
  /**
1408
1333
  * Button emphasis definition.
@@ -1450,7 +1375,7 @@ const Button = forwardRef((props, ref) => {
1450
1375
  size = DEFAULT_PROPS$_.size,
1451
1376
  theme = defaultTheme
1452
1377
  } = props,
1453
- forwardedProps = _objectWithoutProperties(props, _excluded$1k);
1378
+ forwardedProps = _objectWithoutProperties(props, _excluded$1j);
1454
1379
  const buttonClassName = classNames(className, getBasicClass({
1455
1380
  prefix: CLASSNAME$1e,
1456
1381
  type: 'hasLeftIcon',
@@ -1489,7 +1414,7 @@ Button.displayName = COMPONENT_NAME$1g;
1489
1414
  Button.className = CLASSNAME$1e;
1490
1415
  Button.defaultProps = DEFAULT_PROPS$_;
1491
1416
 
1492
- const _excluded$1j = ["emphasis", "image", "icon", "label", "size", "theme", "tooltipProps", "hideTooltip"];
1417
+ const _excluded$1i = ["emphasis", "image", "icon", "label", "size", "theme", "tooltipProps", "hideTooltip"];
1493
1418
  /**
1494
1419
  * Component display name.
1495
1420
  */
@@ -1527,7 +1452,7 @@ const IconButton = forwardRef((props, ref) => {
1527
1452
  tooltipProps,
1528
1453
  hideTooltip
1529
1454
  } = props,
1530
- forwardedProps = _objectWithoutProperties(props, _excluded$1j);
1455
+ forwardedProps = _objectWithoutProperties(props, _excluded$1i);
1531
1456
  return /*#__PURE__*/React__default.createElement(Tooltip, _extends({
1532
1457
  label: hideTooltip ? '' : label
1533
1458
  }, tooltipProps), /*#__PURE__*/React__default.createElement(ButtonRoot, _extends({
@@ -1553,7 +1478,7 @@ IconButton.displayName = COMPONENT_NAME$1f;
1553
1478
  IconButton.className = CLASSNAME$1d;
1554
1479
  IconButton.defaultProps = DEFAULT_PROPS$Z;
1555
1480
 
1556
- const _excluded$1i = ["children", "className"];
1481
+ const _excluded$1h = ["children", "className"];
1557
1482
 
1558
1483
  /**
1559
1484
  * Defines the props of the component
@@ -1586,7 +1511,7 @@ const ButtonGroup = forwardRef((props, ref) => {
1586
1511
  children,
1587
1512
  className
1588
1513
  } = props,
1589
- forwardedProps = _objectWithoutProperties(props, _excluded$1i);
1514
+ forwardedProps = _objectWithoutProperties(props, _excluded$1h);
1590
1515
  return /*#__PURE__*/React__default.createElement("div", _extends({
1591
1516
  ref: ref
1592
1517
  }, forwardedProps, {
@@ -1597,7 +1522,7 @@ ButtonGroup.displayName = COMPONENT_NAME$1e;
1597
1522
  ButtonGroup.className = CLASSNAME$1c;
1598
1523
  ButtonGroup.defaultProps = DEFAULT_PROPS$Y;
1599
1524
 
1600
- const _excluded$1h = ["checked", "className", "helper", "id", "inputRef", "isChecked", "label", "name", "onChange", "theme", "value", "inputProps"];
1525
+ const _excluded$1g = ["checked", "className", "helper", "id", "inputRef", "isChecked", "label", "name", "onChange", "theme", "value", "inputProps"];
1601
1526
  /**
1602
1527
  * Intermediate state of checkbox.
1603
1528
  */
@@ -1650,7 +1575,7 @@ const Checkbox = forwardRef((props, ref) => {
1650
1575
  value,
1651
1576
  inputProps = {}
1652
1577
  } = otherProps,
1653
- forwardedProps = _objectWithoutProperties(otherProps, _excluded$1h);
1578
+ forwardedProps = _objectWithoutProperties(otherProps, _excluded$1g);
1654
1579
  const localInputRef = React__default.useRef(null);
1655
1580
  const generatedInputId = useId();
1656
1581
  const inputId = id || generatedInputId;
@@ -1730,7 +1655,118 @@ function useStopPropagation(handler) {
1730
1655
  }, [handler]);
1731
1656
  }
1732
1657
 
1733
- const _excluded$1g = ["after", "before", "children", "className", "color", "isClickable", "isHighlighted", "isSelected", "onAfterClick", "onBeforeClick", "onClick", "size", "theme", "href", "onKeyDown"];
1658
+ /**
1659
+ * Make sure the pressed key is the enter key before calling the callback.
1660
+ *
1661
+ * @param handler The handler to call on enter/return press.
1662
+ * @return The decorated function.
1663
+ */
1664
+ function onEnterPressed(handler) {
1665
+ return evt => {
1666
+ if (evt.key !== 'Enter') {
1667
+ return;
1668
+ }
1669
+ handler(evt);
1670
+ };
1671
+ }
1672
+
1673
+ /**
1674
+ * Make sure the pressed key is the escape key before calling the callback.
1675
+ *
1676
+ * @param handler The handler to call on enter/return press.
1677
+ * @return The decorated function.
1678
+ */
1679
+ function onEscapePressed(handler) {
1680
+ return evt => {
1681
+ if (evt.key !== 'Escape') {
1682
+ return;
1683
+ }
1684
+ handler(evt);
1685
+ };
1686
+ }
1687
+
1688
+ /**
1689
+ * Checks whether or not the browser support passive events.
1690
+ * @see https://github.com/Modernizr/Modernizr/blob/6d56d814b9682843313b16060adb25a58d83a317/feature-detects/dom/passiveeventlisteners.js
1691
+ */
1692
+ function isPassiveEventAvailable() {
1693
+ let supportsPassiveOption = false;
1694
+ try {
1695
+ const opts = Object.defineProperty({}, 'passive', {
1696
+ get() {
1697
+ supportsPassiveOption = true;
1698
+ }
1699
+ });
1700
+ window.addEventListener('testPassiveEventSupport', noop, opts);
1701
+ window.removeEventListener('testPassiveEventSupport', noop, opts);
1702
+ } catch (e) {
1703
+ // ignored
1704
+ }
1705
+ return supportsPassiveOption;
1706
+ }
1707
+
1708
+ /**
1709
+ * Detects horizontal swipe direction without blocking the browser scroll using passive event.
1710
+ * @see http://javascriptkit.com/javatutors/touchevents2.shtml
1711
+ * @see https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md
1712
+ */
1713
+ function detectHorizontalSwipe(touchSurface, handleSwipe) {
1714
+ let startX;
1715
+ let startY;
1716
+ // Required min distance traveled to be considered swipe.
1717
+ const threshold = 150;
1718
+ // Maximum distance allowed at the same time in perpendicular direction.
1719
+ const restraint = 150;
1720
+ // Maximum time allowed to travel that distance.
1721
+ const allowedTime = 300;
1722
+ let elapsedTime;
1723
+ let startTime;
1724
+ let finished;
1725
+ const onTouchStart = evt => {
1726
+ const [touch] = Array.from(evt.changedTouches);
1727
+ startX = touch.pageX;
1728
+ startY = touch.pageY;
1729
+ // Record time when finger first makes contact with surface.
1730
+ startTime = new Date().getTime();
1731
+ finished = false;
1732
+ };
1733
+ const onTouchMove = evt => {
1734
+ if (finished) {
1735
+ return;
1736
+ }
1737
+ elapsedTime = new Date().getTime() - startTime;
1738
+ if (elapsedTime > allowedTime) {
1739
+ // Touch swipe too long to be considered.
1740
+ return;
1741
+ }
1742
+ const [touch] = Array.from(evt.changedTouches);
1743
+ // Get horizontal dist traveled by finger while in contact with surface.
1744
+ const distX = touch.pageX - startX;
1745
+ // Get vertical dist traveled by finger while in contact with surface.
1746
+ const distY = touch.pageY - startY;
1747
+ if (!(Math.abs(distX) >= threshold && Math.abs(distY) <= restraint)) {
1748
+ // Swipe is not horizontal.
1749
+ return;
1750
+ }
1751
+ // Swipe direction.
1752
+ const direction = distX < 0 ? 'left' : 'right';
1753
+ handleSwipe(direction);
1754
+ finished = true;
1755
+ };
1756
+
1757
+ // Activate passive event if possible for better scrolling performance.
1758
+ const eventOptions = isPassiveEventAvailable() ? {
1759
+ passive: true
1760
+ } : false;
1761
+ touchSurface.addEventListener('touchstart', onTouchStart, eventOptions);
1762
+ touchSurface.addEventListener('touchmove', onTouchMove, eventOptions);
1763
+ return () => {
1764
+ touchSurface.removeEventListener('touchstart', onTouchStart, eventOptions);
1765
+ touchSurface.removeEventListener('touchmove', onTouchMove, eventOptions);
1766
+ };
1767
+ }
1768
+
1769
+ const _excluded$1f = ["after", "before", "children", "className", "color", "isClickable", "isHighlighted", "isSelected", "onAfterClick", "onBeforeClick", "onClick", "size", "theme", "href", "onKeyDown"];
1734
1770
 
1735
1771
  /**
1736
1772
  * Chip sizes.
@@ -1788,7 +1824,7 @@ const Chip = forwardRef((props, ref) => {
1788
1824
  href,
1789
1825
  onKeyDown
1790
1826
  } = otherProps,
1791
- forwardedProps = _objectWithoutProperties(otherProps, _excluded$1g);
1827
+ forwardedProps = _objectWithoutProperties(otherProps, _excluded$1f);
1792
1828
  const hasAfterClick = isFunction(onAfterClick);
1793
1829
  const hasBeforeClick = isFunction(onBeforeClick);
1794
1830
  const hasOnClick = isFunction(props.onClick);
@@ -1905,7 +1941,7 @@ const useChipGroupNavigation = (chips, onChipDeleted, initialActiveChip = INITIA
1905
1941
  };
1906
1942
  };
1907
1943
 
1908
- const _excluded$1f = ["align", "children", "className"];
1944
+ const _excluded$1e = ["align", "children", "className"];
1909
1945
 
1910
1946
  /**
1911
1947
  * Defines the props of the component.
@@ -1939,7 +1975,7 @@ const InternalChipGroup = forwardRef((props, ref) => {
1939
1975
  children,
1940
1976
  className
1941
1977
  } = props,
1942
- forwardedProps = _objectWithoutProperties(props, _excluded$1f);
1978
+ forwardedProps = _objectWithoutProperties(props, _excluded$1e);
1943
1979
  return /*#__PURE__*/React__default.createElement("div", _extends({
1944
1980
  ref: ref
1945
1981
  }, forwardedProps, {
@@ -1953,7 +1989,7 @@ const ChipGroup = Object.assign(InternalChipGroup, {
1953
1989
  useChipGroupNavigation
1954
1990
  });
1955
1991
 
1956
- const _excluded$1e = ["actions", "avatarProps", "children", "className", "date", "fullDate", "hasActions", "headerActions", "isOpen", "isRelevant", "name", "onClick", "onMouseEnter", "onMouseLeave", "text", "theme", "variant"];
1992
+ const _excluded$1d = ["actions", "avatarProps", "children", "className", "date", "fullDate", "hasActions", "headerActions", "isOpen", "isRelevant", "name", "onClick", "onMouseEnter", "onMouseLeave", "text", "theme", "variant"];
1957
1993
  /**
1958
1994
  * Comment block variants.
1959
1995
  */
@@ -2011,7 +2047,7 @@ const CommentBlock = forwardRef((props, ref) => {
2011
2047
  theme = defaultTheme,
2012
2048
  variant = DEFAULT_PROPS$U.variant
2013
2049
  } = props,
2014
- forwardedProps = _objectWithoutProperties(props, _excluded$1e);
2050
+ forwardedProps = _objectWithoutProperties(props, _excluded$1d);
2015
2051
  const hasChildren = Children.count(children) > 0;
2016
2052
  return /*#__PURE__*/React__default.createElement("div", _extends({
2017
2053
  ref: ref,
@@ -2499,7 +2535,7 @@ const DatePickerControlled = forwardRef((props, ref) => {
2499
2535
  DatePickerControlled.displayName = COMPONENT_NAME$18;
2500
2536
  DatePickerControlled.className = CLASSNAME$17;
2501
2537
 
2502
- const _excluded$1d = ["defaultMonth", "locale", "value", "onChange"];
2538
+ const _excluded$1c = ["defaultMonth", "locale", "value", "onChange"];
2503
2539
  /**
2504
2540
  * DatePicker component.
2505
2541
  *
@@ -2514,7 +2550,7 @@ const DatePicker = forwardRef((props, ref) => {
2514
2550
  value,
2515
2551
  onChange
2516
2552
  } = props,
2517
- forwardedProps = _objectWithoutProperties(props, _excluded$1d);
2553
+ forwardedProps = _objectWithoutProperties(props, _excluded$1c);
2518
2554
  let referenceDate = value || defaultMonth || new Date();
2519
2555
  if (!isDateValid(referenceDate)) {
2520
2556
  // eslint-disable-next-line no-console
@@ -2551,7 +2587,7 @@ const useBooleanState = defaultValue => {
2551
2587
  return [booleanValue, setToFalse, setToTrue, toggleBoolean];
2552
2588
  };
2553
2589
 
2554
- const _excluded$1c = ["defaultMonth", "locale", "maxDate", "minDate", "name", "nextButtonProps", "onChange", "previousButtonProps", "value"];
2590
+ const _excluded$1b = ["defaultMonth", "locale", "maxDate", "minDate", "name", "nextButtonProps", "onChange", "previousButtonProps", "value"];
2555
2591
 
2556
2592
  /**
2557
2593
  * Defines the props of the component.
@@ -2585,7 +2621,7 @@ const DatePickerField = forwardRef((props, ref) => {
2585
2621
  previousButtonProps,
2586
2622
  value
2587
2623
  } = otherProps,
2588
- forwardedProps = _objectWithoutProperties(otherProps, _excluded$1c);
2624
+ forwardedProps = _objectWithoutProperties(otherProps, _excluded$1b);
2589
2625
  const anchorRef = useRef(null);
2590
2626
  const [isOpen, close,, toggleOpen] = useBooleanState(false);
2591
2627
  const handleKeyboardNav = useCallback(evt => {
@@ -3130,7 +3166,7 @@ const useTransitionVisibility = (ref, isComponentVisible, timeout, onVisibilityC
3130
3166
  return isVisible || isComponentVisible;
3131
3167
  };
3132
3168
 
3133
- const _excluded$1b = ["children", "className", "header", "focusElement", "forceFooterDivider", "forceHeaderDivider", "footer", "isLoading", "isOpen", "onClose", "parentElement", "contentRef", "preventAutoClose", "size", "zIndex", "dialogProps", "onVisibilityChange", "disableBodyScroll", "preventCloseOnClick", "preventCloseOnEscape"];
3169
+ const _excluded$1a = ["children", "className", "header", "focusElement", "forceFooterDivider", "forceHeaderDivider", "footer", "isLoading", "isOpen", "onClose", "parentElement", "contentRef", "preventAutoClose", "size", "zIndex", "dialogProps", "onVisibilityChange", "disableBodyScroll", "preventCloseOnClick", "preventCloseOnEscape"];
3134
3170
 
3135
3171
  /**
3136
3172
  * Defines the props of the component.
@@ -3192,7 +3228,7 @@ const Dialog = forwardRef((props, ref) => {
3192
3228
  preventCloseOnClick,
3193
3229
  preventCloseOnEscape
3194
3230
  } = props,
3195
- forwardedProps = _objectWithoutProperties(props, _excluded$1b);
3231
+ forwardedProps = _objectWithoutProperties(props, _excluded$1a);
3196
3232
 
3197
3233
  // eslint-disable-next-line react-hooks/rules-of-hooks
3198
3234
  const previousOpen = React__default.useRef(isOpen);
@@ -3308,7 +3344,7 @@ Dialog.displayName = COMPONENT_NAME$16;
3308
3344
  Dialog.className = CLASSNAME$16;
3309
3345
  Dialog.defaultProps = DEFAULT_PROPS$T;
3310
3346
 
3311
- const _excluded$1a = ["className", "theme"];
3347
+ const _excluded$19 = ["className", "theme"];
3312
3348
 
3313
3349
  /**
3314
3350
  * Defines the props of the component.
@@ -3342,7 +3378,7 @@ const Divider = forwardRef((props, ref) => {
3342
3378
  className,
3343
3379
  theme = defaultTheme
3344
3380
  } = props,
3345
- forwardedProps = _objectWithoutProperties(props, _excluded$1a);
3381
+ forwardedProps = _objectWithoutProperties(props, _excluded$19);
3346
3382
  return /*#__PURE__*/React__default.createElement("hr", _extends({
3347
3383
  ref: ref
3348
3384
  }, forwardedProps, {
@@ -3356,7 +3392,7 @@ Divider.displayName = COMPONENT_NAME$15;
3356
3392
  Divider.className = CLASSNAME$15;
3357
3393
  Divider.defaultProps = DEFAULT_PROPS$S;
3358
3394
 
3359
- const _excluded$19 = ["className", "theme"];
3395
+ const _excluded$18 = ["className", "theme"];
3360
3396
 
3361
3397
  /**
3362
3398
  * Defines the props of the component.
@@ -3385,7 +3421,7 @@ const DragHandle = forwardRef((props, ref) => {
3385
3421
  className,
3386
3422
  theme = defaultTheme
3387
3423
  } = props,
3388
- forwardedProps = _objectWithoutProperties(props, _excluded$19);
3424
+ forwardedProps = _objectWithoutProperties(props, _excluded$18);
3389
3425
  return /*#__PURE__*/React__default.createElement("div", _extends({
3390
3426
  ref: ref
3391
3427
  }, forwardedProps, {
@@ -3566,7 +3602,7 @@ const useKeyboardListNavigation = (items, ref, onListItemSelected, onListItemNav
3566
3602
  };
3567
3603
  };
3568
3604
 
3569
- const _excluded$18 = ["after", "before", "children", "className", "isHighlighted", "isSelected", "linkAs", "linkProps", "linkRef", "onItemSelected", "size"];
3605
+ const _excluded$17 = ["after", "before", "children", "className", "isHighlighted", "isSelected", "linkAs", "linkProps", "linkRef", "onItemSelected", "size"];
3570
3606
 
3571
3607
  /**
3572
3608
  * Defines the props of the component.
@@ -3626,13 +3662,7 @@ const ListItem = forwardRef((props, ref) => {
3626
3662
  onItemSelected,
3627
3663
  size = DEFAULT_PROPS$R.size
3628
3664
  } = otherProps,
3629
- forwardedProps = _objectWithoutProperties(otherProps, _excluded$18);
3630
- const role = linkAs || linkProps.href ? 'link' : 'button';
3631
- const onKeyDown = useMemo(() => {
3632
- if (onItemSelected && role === 'link') return onEnterPressed(onItemSelected);
3633
- if (onItemSelected && role === 'button') return onButtonPressed(onItemSelected);
3634
- return undefined;
3635
- }, [role, onItemSelected]);
3665
+ forwardedProps = _objectWithoutProperties(otherProps, _excluded$17);
3636
3666
  const content = /*#__PURE__*/React__default.createElement(React__default.Fragment, null, before && /*#__PURE__*/React__default.createElement("div", {
3637
3667
  className: `${CLASSNAME$13}__before`
3638
3668
  }, before), /*#__PURE__*/React__default.createElement("div", {
@@ -3650,24 +3680,21 @@ const ListItem = forwardRef((props, ref) => {
3650
3680
  }), isClickable({
3651
3681
  linkProps,
3652
3682
  onItemSelected
3653
- }) ? (/* Clickable list item */
3654
- renderLink(_objectSpread2(_objectSpread2({
3655
- linkAs,
3656
- tabIndex: !disabledStateProps.disabled ? 0 : undefined,
3657
- role,
3658
- 'aria-disabled': isAnyDisabled
3659
- }, linkProps), {}, {
3660
- href: isAnyDisabled ? undefined : linkProps.href,
3683
+ }) ?
3684
+ /*#__PURE__*/
3685
+ /* Clickable list item */
3686
+ React__default.createElement(RawClickable, _extends({
3687
+ as: linkAs || linkProps.href ? 'a' : 'button'
3688
+ }, linkProps, disabledStateProps, {
3661
3689
  className: classNames(handleBasicClasses({
3662
3690
  prefix: `${CLASSNAME$13}__link`,
3663
3691
  isHighlighted,
3664
3692
  isSelected,
3665
3693
  isDisabled: isAnyDisabled
3666
3694
  })),
3667
- onClick: isAnyDisabled ? undefined : onItemSelected,
3668
- onKeyDown: isAnyDisabled ? undefined : onKeyDown,
3695
+ onClick: onItemSelected,
3669
3696
  ref: linkRef
3670
- }), content)) :
3697
+ }), content) :
3671
3698
  /*#__PURE__*/
3672
3699
  /* Non clickable list item */
3673
3700
  React__default.createElement("div", {
@@ -4107,7 +4134,7 @@ const useInteractiveList = options => {
4107
4134
  }, [items, activeItemIndex, onListItemSelected]);
4108
4135
  };
4109
4136
 
4110
- const _excluded$17 = ["children", "className", "isClickable", "itemPadding", "onListItemSelected", "tabIndex"];
4137
+ const _excluded$16 = ["children", "className", "isClickable", "itemPadding", "onListItemSelected", "tabIndex"];
4111
4138
 
4112
4139
  /**
4113
4140
  * Defines the props of the component.
@@ -4147,7 +4174,7 @@ const InternalList = forwardRef((props, ref) => {
4147
4174
  onListItemSelected,
4148
4175
  tabIndex = DEFAULT_PROPS$Q.tabIndex
4149
4176
  } = props,
4150
- forwardedProps = _objectWithoutProperties(props, _excluded$17);
4177
+ forwardedProps = _objectWithoutProperties(props, _excluded$16);
4151
4178
  const listElementRef = useRef(null);
4152
4179
  const {
4153
4180
  items,
@@ -6589,7 +6616,7 @@ function usePopoverStyle({
6589
6616
  };
6590
6617
  }
6591
6618
 
6592
- const _excluded$16 = ["anchorRef", "as", "children", "className", "closeOnClickAway", "closeOnEscape", "elevation", "focusElement", "hasArrow", "isOpen", "onClose", "parentElement", "usePortal", "focusAnchorOnClose", "withFocusTrap", "boundaryRef", "fitToAnchorWidth", "fitWithinViewportHeight", "focusTrapZoneElement", "offset", "placement", "style", "theme", "zIndex"];
6619
+ const _excluded$15 = ["anchorRef", "as", "children", "className", "closeOnClickAway", "closeOnEscape", "elevation", "focusElement", "hasArrow", "isOpen", "onClose", "parentElement", "usePortal", "focusAnchorOnClose", "withFocusTrap", "boundaryRef", "fitToAnchorWidth", "fitWithinViewportHeight", "focusTrapZoneElement", "offset", "placement", "style", "theme", "zIndex"];
6593
6620
 
6594
6621
  /**
6595
6622
  * Defines the props of the component.
@@ -6645,7 +6672,7 @@ const _InnerPopover = forwardRef((props, ref) => {
6645
6672
  theme,
6646
6673
  zIndex = DEFAULT_PROPS$P.zIndex
6647
6674
  } = props,
6648
- forwardedProps = _objectWithoutProperties(props, _excluded$16);
6675
+ forwardedProps = _objectWithoutProperties(props, _excluded$15);
6649
6676
  const popoverRef = useRef(null);
6650
6677
  const {
6651
6678
  styles,
@@ -6764,7 +6791,7 @@ const useInfiniteScroll = (ref, callback, callbackOnMount = false, scrollTrigger
6764
6791
  }, [callback, callbackOnMount]);
6765
6792
  };
6766
6793
 
6767
- const _excluded$15 = ["anchorRef", "children", "className", "closeOnClick", "closeOnClickAway", "closeOnEscape", "fitToAnchorWidth", "fitWithinViewportHeight", "isOpen", "offset", "focusAnchorOnClose", "onClose", "onInfiniteScroll", "placement", "shouldFocusOnOpen", "zIndex"];
6794
+ const _excluded$14 = ["anchorRef", "children", "className", "closeOnClick", "closeOnClickAway", "closeOnEscape", "fitToAnchorWidth", "fitWithinViewportHeight", "isOpen", "offset", "focusAnchorOnClose", "onClose", "onInfiniteScroll", "placement", "shouldFocusOnOpen", "zIndex"];
6768
6795
 
6769
6796
  /**
6770
6797
  * Defines the props of the component.
@@ -6820,7 +6847,7 @@ const Dropdown = forwardRef((props, ref) => {
6820
6847
  shouldFocusOnOpen = DEFAULT_PROPS$O.shouldFocusOnOpen,
6821
6848
  zIndex
6822
6849
  } = props,
6823
- forwardedProps = _objectWithoutProperties(props, _excluded$15);
6850
+ forwardedProps = _objectWithoutProperties(props, _excluded$14);
6824
6851
  const innerRef = useRef(null);
6825
6852
  const listElement = useRef(null);
6826
6853
  useInfiniteScroll(innerRef, onInfiniteScroll);
@@ -6863,7 +6890,7 @@ Dropdown.displayName = COMPONENT_NAME$10;
6863
6890
  Dropdown.className = CLASSNAME$10;
6864
6891
  Dropdown.defaultProps = DEFAULT_PROPS$O;
6865
6892
 
6866
- const _excluded$14 = ["className", "closeMode", "children", "hasBackground", "hasHeaderDivider", "isOpen", "label", "onClose", "onOpen", "onToggleOpen", "theme", "toggleButtonProps"];
6893
+ const _excluded$13 = ["className", "closeMode", "children", "hasBackground", "hasHeaderDivider", "isOpen", "label", "onClose", "onOpen", "onToggleOpen", "theme", "toggleButtonProps"];
6867
6894
 
6868
6895
  /**
6869
6896
  * Defines the props of the component.
@@ -6912,7 +6939,7 @@ const ExpansionPanel = forwardRef((props, ref) => {
6912
6939
  theme = defaultTheme,
6913
6940
  toggleButtonProps
6914
6941
  } = props,
6915
- forwardedProps = _objectWithoutProperties(props, _excluded$14);
6942
+ forwardedProps = _objectWithoutProperties(props, _excluded$13);
6916
6943
  const children = Children.toArray(anyChildren);
6917
6944
 
6918
6945
  // Partition children by types.
@@ -7008,7 +7035,7 @@ ExpansionPanel.displayName = COMPONENT_NAME$$;
7008
7035
  ExpansionPanel.className = CLASSNAME$$;
7009
7036
  ExpansionPanel.defaultProps = DEFAULT_PROPS$N;
7010
7037
 
7011
- const _excluded$13 = ["label", "icon", "color", "className", "theme", "truncate"];
7038
+ const _excluded$12 = ["label", "icon", "color", "className", "theme", "truncate"];
7012
7039
  const COMPONENT_NAME$_ = 'Flag';
7013
7040
  const CLASSNAME$_ = getRootClassName(COMPONENT_NAME$_);
7014
7041
  const DEFAULT_PROPS$M = {};
@@ -7030,7 +7057,7 @@ const Flag = forwardRef((props, ref) => {
7030
7057
  theme = defaultTheme,
7031
7058
  truncate
7032
7059
  } = props,
7033
- forwardedProps = _objectWithoutProperties(props, _excluded$13);
7060
+ forwardedProps = _objectWithoutProperties(props, _excluded$12);
7034
7061
  const flagColor = color || (theme === Theme.light ? ColorPalette.dark : ColorPalette.light);
7035
7062
  const isTruncated = !!truncate;
7036
7063
  return /*#__PURE__*/React__default.createElement("div", _extends({}, forwardedProps, {
@@ -7055,7 +7082,7 @@ Flag.displayName = COMPONENT_NAME$_;
7055
7082
  Flag.className = CLASSNAME$_;
7056
7083
  Flag.defaultProps = DEFAULT_PROPS$M;
7057
7084
 
7058
- const _excluded$12 = ["as", "children", "className", "fillSpace", "gap", "hAlign", "marginAuto", "noShrink", "orientation", "vAlign", "wrap"];
7085
+ const _excluded$11 = ["as", "children", "className", "fillSpace", "gap", "hAlign", "marginAuto", "noShrink", "orientation", "vAlign", "wrap"];
7059
7086
 
7060
7087
  /**
7061
7088
  * Defines the props of the component.
@@ -7092,7 +7119,7 @@ const FlexBox = forwardRef((props, ref) => {
7092
7119
  vAlign,
7093
7120
  wrap
7094
7121
  } = props,
7095
- forwardedProps = _objectWithoutProperties(props, _excluded$12);
7122
+ forwardedProps = _objectWithoutProperties(props, _excluded$11);
7096
7123
  return /*#__PURE__*/React__default.createElement(Component, _extends({
7097
7124
  ref: ref
7098
7125
  }, forwardedProps, {
@@ -7108,7 +7135,7 @@ const FlexBox = forwardRef((props, ref) => {
7108
7135
  FlexBox.displayName = COMPONENT_NAME$Z;
7109
7136
  FlexBox.className = CLASSNAME$Z;
7110
7137
 
7111
- const _excluded$11 = ["className", "figure", "figureProps", "children", "actions", "actionsProps", "gap", "orientation", "contentProps"];
7138
+ const _excluded$10 = ["className", "figure", "figureProps", "children", "actions", "actionsProps", "gap", "orientation", "contentProps"];
7112
7139
  /**
7113
7140
  * Component display name.
7114
7141
  */
@@ -7157,7 +7184,7 @@ const BaseGenericBlock = forwardRef((props, ref) => {
7157
7184
  orientation = DEFAULT_PROPS$L.orientation,
7158
7185
  contentProps
7159
7186
  } = props,
7160
- forwardedProps = _objectWithoutProperties(props, _excluded$11);
7187
+ forwardedProps = _objectWithoutProperties(props, _excluded$10);
7161
7188
  const sections = React__default.useMemo(() => {
7162
7189
  // Split children by section type
7163
7190
  const [[figureChild], [contentChild], [actionsChild], ...otherChildren] = partitionMulti(Children.toArray(children), [isFigure, isContent, isActions]);
@@ -7269,7 +7296,7 @@ function wrapChildrenIconWithSpaces(children) {
7269
7296
  });
7270
7297
  }
7271
7298
 
7272
- const _excluded$10 = ["as", "children", "className", "color", "colorVariant", "noWrap", "typography", "truncate", "whiteSpace", "style"];
7299
+ const _excluded$$ = ["as", "children", "className", "color", "colorVariant", "noWrap", "typography", "truncate", "whiteSpace", "style"];
7273
7300
 
7274
7301
  /**
7275
7302
  * Defines the props of the component.
@@ -7310,7 +7337,7 @@ const Text = forwardRef((props, ref) => {
7310
7337
  whiteSpace,
7311
7338
  style
7312
7339
  } = props,
7313
- forwardedProps = _objectWithoutProperties(props, _excluded$10);
7340
+ forwardedProps = _objectWithoutProperties(props, _excluded$$);
7314
7341
  const typographyClass = typography && getTypographyClassName(typography);
7315
7342
 
7316
7343
  // Truncate mode
@@ -7379,7 +7406,7 @@ const useHeadingLevel = () => {
7379
7406
  };
7380
7407
  };
7381
7408
 
7382
- const _excluded$$ = ["children", "as", "className"];
7409
+ const _excluded$_ = ["children", "as", "className"];
7383
7410
 
7384
7411
  /**
7385
7412
  * Defines the props of the component.
@@ -7411,7 +7438,7 @@ const Heading = forwardRef((props, ref) => {
7411
7438
  as,
7412
7439
  className
7413
7440
  } = props,
7414
- forwardedProps = _objectWithoutProperties(props, _excluded$$);
7441
+ forwardedProps = _objectWithoutProperties(props, _excluded$_);
7415
7442
  const {
7416
7443
  headingElement
7417
7444
  } = useHeadingLevel();
@@ -7449,7 +7476,7 @@ const HeadingLevelProvider = ({
7449
7476
  }, children);
7450
7477
  };
7451
7478
 
7452
- const _excluded$_ = ["children", "className", "gutter", "hAlign", "orientation", "vAlign", "wrap"];
7479
+ const _excluded$Z = ["children", "className", "gutter", "hAlign", "orientation", "vAlign", "wrap"];
7453
7480
 
7454
7481
  /**
7455
7482
  * Defines the props of the component.
@@ -7490,7 +7517,7 @@ const Grid = forwardRef((props, ref) => {
7490
7517
  vAlign,
7491
7518
  wrap = DEFAULT_PROPS$I.wrap
7492
7519
  } = props,
7493
- forwardedProps = _objectWithoutProperties(props, _excluded$_);
7520
+ forwardedProps = _objectWithoutProperties(props, _excluded$Z);
7494
7521
  return /*#__PURE__*/React__default.createElement("div", _extends({
7495
7522
  ref: ref
7496
7523
  }, forwardedProps, {
@@ -7510,7 +7537,7 @@ Grid.displayName = COMPONENT_NAME$V;
7510
7537
  Grid.className = CLASSNAME$V;
7511
7538
  Grid.defaultProps = DEFAULT_PROPS$I;
7512
7539
 
7513
- const _excluded$Z = ["children", "className", "width", "align", "order"];
7540
+ const _excluded$Y = ["children", "className", "width", "align", "order"];
7514
7541
 
7515
7542
  /**
7516
7543
  * Defines the props of the component.
@@ -7541,7 +7568,7 @@ const GridItem = forwardRef((props, ref) => {
7541
7568
  align,
7542
7569
  order
7543
7570
  } = props,
7544
- forwardedProps = _objectWithoutProperties(props, _excluded$Z);
7571
+ forwardedProps = _objectWithoutProperties(props, _excluded$Y);
7545
7572
  return /*#__PURE__*/React__default.createElement("div", _extends({
7546
7573
  ref: ref
7547
7574
  }, forwardedProps, {
@@ -7556,7 +7583,7 @@ const GridItem = forwardRef((props, ref) => {
7556
7583
  GridItem.displayName = COMPONENT_NAME$U;
7557
7584
  GridItem.className = CLASSNAME$U;
7558
7585
 
7559
- const _excluded$Y = ["as", "gap", "maxColumns", "itemMinWidth", "children", "className", "style"];
7586
+ const _excluded$X = ["as", "gap", "maxColumns", "itemMinWidth", "children", "className", "style"];
7560
7587
 
7561
7588
  /**
7562
7589
  * Defines the props of the component.
@@ -7596,7 +7623,7 @@ const GridColumn = forwardRef((props, ref) => {
7596
7623
  className,
7597
7624
  style = {}
7598
7625
  } = props,
7599
- forwardedProps = _objectWithoutProperties(props, _excluded$Y);
7626
+ forwardedProps = _objectWithoutProperties(props, _excluded$X);
7600
7627
  return /*#__PURE__*/React__default.createElement(Component, _extends({}, forwardedProps, {
7601
7628
  ref: ref,
7602
7629
  className: classNames(className, CLASSNAME$T),
@@ -7611,7 +7638,7 @@ GridColumn.displayName = COMPONENT_NAME$T;
7611
7638
  GridColumn.className = CLASSNAME$T;
7612
7639
  GridColumn.defaultProps = DEFAULT_PROPS$H;
7613
7640
 
7614
- const _excluded$X = ["className", "color", "colorVariant", "hasShape", "icon", "size", "theme", "alt"];
7641
+ const _excluded$W = ["className", "color", "colorVariant", "hasShape", "icon", "size", "theme", "alt"];
7615
7642
 
7616
7643
  /**
7617
7644
  * Defines the props of the component.
@@ -7651,7 +7678,7 @@ const Icon = forwardRef((props, ref) => {
7651
7678
  theme = defaultTheme,
7652
7679
  alt
7653
7680
  } = props,
7654
- forwardedProps = _objectWithoutProperties(props, _excluded$X);
7681
+ forwardedProps = _objectWithoutProperties(props, _excluded$W);
7655
7682
  const [color, colorVariant] = resolveColorWithVariants(propColor, propColorVariant);
7656
7683
 
7657
7684
  // Color
@@ -7766,7 +7793,7 @@ const ImageCaption = props => {
7766
7793
  }, tags));
7767
7794
  };
7768
7795
 
7769
- const _excluded$W = ["actions", "align", "alt", "captionPosition", "captionStyle", "className", "description", "descriptionProps", "fillHeight", "image", "size", "tags", "theme", "thumbnailProps", "title", "titleProps"];
7796
+ const _excluded$V = ["actions", "align", "alt", "captionPosition", "captionStyle", "className", "description", "descriptionProps", "fillHeight", "image", "size", "tags", "theme", "thumbnailProps", "title", "titleProps"];
7770
7797
 
7771
7798
  /**
7772
7799
  * Image block variants.
@@ -7829,7 +7856,7 @@ const ImageBlock = forwardRef((props, ref) => {
7829
7856
  title,
7830
7857
  titleProps
7831
7858
  } = props,
7832
- forwardedProps = _objectWithoutProperties(props, _excluded$W);
7859
+ forwardedProps = _objectWithoutProperties(props, _excluded$V);
7833
7860
  return /*#__PURE__*/React__default.createElement("figure", _extends({
7834
7861
  ref: ref
7835
7862
  }, forwardedProps, {
@@ -8207,7 +8234,7 @@ const ImageSlide = /*#__PURE__*/React__default.memo(props => {
8207
8234
  }));
8208
8235
  }, isEqual);
8209
8236
 
8210
- const _excluded$V = ["image", "imgRef"];
8237
+ const _excluded$U = ["image", "imgRef"];
8211
8238
  /** Internal image slideshow component for ImageLightbox */
8212
8239
  const ImageSlideshow = ({
8213
8240
  activeImageIndex,
@@ -8310,7 +8337,7 @@ const ImageSlideshow = ({
8310
8337
  image,
8311
8338
  imgRef
8312
8339
  } = _ref,
8313
- imageProps = _objectWithoutProperties(_ref, _excluded$V);
8340
+ imageProps = _objectWithoutProperties(_ref, _excluded$U);
8314
8341
  const isActive = index === activeIndex;
8315
8342
  return /*#__PURE__*/React__default.createElement(ImageSlide, {
8316
8343
  isActive: isActive,
@@ -8519,7 +8546,7 @@ function useImageLightbox(props) {
8519
8546
  };
8520
8547
  }
8521
8548
 
8522
- const _excluded$U = ["className", "isOpen", "closeButtonProps", "onClose", "parentElement", "activeImageIndex", "slideshowControlsProps", "slideGroupLabel", "images", "zoomOutButtonProps", "zoomInButtonProps", "activeImageRef"];
8549
+ const _excluded$T = ["className", "isOpen", "closeButtonProps", "onClose", "parentElement", "activeImageIndex", "slideshowControlsProps", "slideGroupLabel", "images", "zoomOutButtonProps", "zoomInButtonProps", "activeImageRef"];
8523
8550
  const Inner = forwardRef((props, ref) => {
8524
8551
  const {
8525
8552
  className,
@@ -8535,7 +8562,7 @@ const Inner = forwardRef((props, ref) => {
8535
8562
  zoomInButtonProps,
8536
8563
  activeImageRef: propImageRef
8537
8564
  } = props,
8538
- forwardedProps = _objectWithoutProperties(props, _excluded$U);
8565
+ forwardedProps = _objectWithoutProperties(props, _excluded$T);
8539
8566
  const currentPaginationItemRef = React__default.useRef(null);
8540
8567
  const footerRef = React__default.useRef(null);
8541
8568
  const imageRef = React__default.useRef(null);
@@ -8590,7 +8617,7 @@ const ImageLightbox = Object.assign(Inner, {
8590
8617
  useImageLightbox
8591
8618
  });
8592
8619
 
8593
- const _excluded$T = ["className", "color", "colorVariant", "typography", "children", "wrap"];
8620
+ const _excluded$S = ["className", "color", "colorVariant", "typography", "children", "wrap"];
8594
8621
 
8595
8622
  /**
8596
8623
  * Defines the props of the component.
@@ -8627,7 +8654,7 @@ const InlineList = forwardRef((props, ref) => {
8627
8654
  children,
8628
8655
  wrap
8629
8656
  } = props,
8630
- forwardedProps = _objectWithoutProperties(props, _excluded$T);
8657
+ forwardedProps = _objectWithoutProperties(props, _excluded$S);
8631
8658
  const typographyClassName = typography && getTypographyClassName(typography);
8632
8659
  return (
8633
8660
  /*#__PURE__*/
@@ -8672,7 +8699,7 @@ const INPUT_HELPER_CONFIGURATION = {
8672
8699
  }
8673
8700
  };
8674
8701
 
8675
- const _excluded$S = ["children", "className", "kind", "theme"];
8702
+ const _excluded$R = ["children", "className", "kind", "theme"];
8676
8703
 
8677
8704
  /**
8678
8705
  * Defines the props of the component.
@@ -8710,7 +8737,7 @@ const InputHelper = forwardRef((props, ref) => {
8710
8737
  kind = DEFAULT_PROPS$D.kind,
8711
8738
  theme = defaultTheme
8712
8739
  } = props,
8713
- forwardedProps = _objectWithoutProperties(props, _excluded$S);
8740
+ forwardedProps = _objectWithoutProperties(props, _excluded$R);
8714
8741
  const {
8715
8742
  color
8716
8743
  } = INPUT_HELPER_CONFIGURATION[kind] || {};
@@ -8728,7 +8755,7 @@ InputHelper.displayName = COMPONENT_NAME$O;
8728
8755
  InputHelper.className = CLASSNAME$O;
8729
8756
  InputHelper.defaultProps = DEFAULT_PROPS$D;
8730
8757
 
8731
- const _excluded$R = ["children", "className", "htmlFor", "isRequired", "theme", "typography"];
8758
+ const _excluded$Q = ["children", "className", "htmlFor", "isRequired", "theme", "typography"];
8732
8759
 
8733
8760
  /**
8734
8761
  * Defines the props of the component.
@@ -8766,7 +8793,7 @@ const InputLabel = forwardRef((props, ref) => {
8766
8793
  theme = defaultTheme,
8767
8794
  typography
8768
8795
  } = props,
8769
- forwardedProps = _objectWithoutProperties(props, _excluded$R);
8796
+ forwardedProps = _objectWithoutProperties(props, _excluded$Q);
8770
8797
  const typographyClass = typography && getTypographyClassName(typography);
8771
8798
  return /*#__PURE__*/React__default.createElement("label", _extends({
8772
8799
  ref: ref
@@ -8784,7 +8811,7 @@ InputLabel.displayName = COMPONENT_NAME$N;
8784
8811
  InputLabel.className = CLASSNAME$N;
8785
8812
  InputLabel.defaultProps = DEFAULT_PROPS$C;
8786
8813
 
8787
- const _excluded$Q = ["aria-labelledby", "ariaLabelledBy", "aria-label", "ariaLabel", "children", "className", "closeButtonProps", "isOpen", "onClose", "parentElement", "focusElement", "preventAutoClose", "theme", "zIndex"];
8814
+ const _excluded$P = ["aria-labelledby", "ariaLabelledBy", "aria-label", "ariaLabel", "children", "className", "closeButtonProps", "isOpen", "onClose", "parentElement", "focusElement", "preventAutoClose", "theme", "zIndex"];
8788
8815
 
8789
8816
  /**
8790
8817
  * Defines the props of the component.
@@ -8824,7 +8851,7 @@ const Lightbox = forwardRef((props, ref) => {
8824
8851
  theme,
8825
8852
  zIndex
8826
8853
  } = props,
8827
- forwardedProps = _objectWithoutProperties(props, _excluded$Q);
8854
+ forwardedProps = _objectWithoutProperties(props, _excluded$P);
8828
8855
  if (!DOCUMENT) {
8829
8856
  // Can't render in SSR.
8830
8857
  return null;
@@ -8916,7 +8943,7 @@ const Lightbox = forwardRef((props, ref) => {
8916
8943
  Lightbox.displayName = COMPONENT_NAME$M;
8917
8944
  Lightbox.className = CLASSNAME$M;
8918
8945
 
8919
- const _excluded$P = ["children", "className", "color", "colorVariant", "href", "leftIcon", "linkAs", "rightIcon", "target", "typography"];
8946
+ const _excluded$O = ["children", "className", "color", "colorVariant", "leftIcon", "rightIcon", "typography", "linkAs"];
8920
8947
 
8921
8948
  /**
8922
8949
  * Defines the props of the component.
@@ -8941,7 +8968,6 @@ const CLASSNAME$L = getRootClassName(COMPONENT_NAME$L);
8941
8968
  */
8942
8969
  const Link = forwardRef((props, ref) => {
8943
8970
  const {
8944
- isAnyDisabled,
8945
8971
  disabledStateProps,
8946
8972
  otherProps
8947
8973
  } = useDisableStateProps(props);
@@ -8950,28 +8976,17 @@ const Link = forwardRef((props, ref) => {
8950
8976
  className,
8951
8977
  color: propColor,
8952
8978
  colorVariant: propColorVariant,
8953
- href,
8954
8979
  leftIcon,
8955
- linkAs,
8956
8980
  rightIcon,
8957
- target,
8958
- typography
8981
+ typography,
8982
+ linkAs
8959
8983
  } = otherProps,
8960
- forwardedProps = _objectWithoutProperties(otherProps, _excluded$P);
8984
+ forwardedProps = _objectWithoutProperties(otherProps, _excluded$O);
8961
8985
  const [color, colorVariant] = resolveColorWithVariants(propColor, propColorVariant);
8962
- const isLink = linkAs || href;
8963
- const Component = isLink && !isAnyDisabled ? linkAs || 'a' : 'button';
8964
- const baseProps = {};
8965
- if (Component === 'button') {
8966
- baseProps.type = 'button';
8967
- Object.assign(baseProps, disabledStateProps);
8968
- } else if (isLink) {
8969
- baseProps.href = href;
8970
- baseProps.target = target;
8971
- }
8972
- return /*#__PURE__*/React__default.createElement(Component, _extends({
8973
- ref: ref
8974
- }, forwardedProps, baseProps, {
8986
+ return /*#__PURE__*/React__default.createElement(RawClickable, _extends({
8987
+ ref: ref,
8988
+ as: linkAs || forwardedProps.href ? 'a' : 'button'
8989
+ }, forwardedProps, disabledStateProps, {
8975
8990
  className: classNames(className, handleBasicClasses({
8976
8991
  prefix: CLASSNAME$L,
8977
8992
  color,
@@ -8991,7 +9006,7 @@ const Link = forwardRef((props, ref) => {
8991
9006
  Link.displayName = COMPONENT_NAME$L;
8992
9007
  Link.className = CLASSNAME$L;
8993
9008
 
8994
- const _excluded$O = ["className", "description", "link", "linkAs", "linkProps", "size", "theme", "thumbnailProps", "title", "titleHeading"];
9009
+ const _excluded$N = ["className", "description", "link", "linkAs", "linkProps", "size", "theme", "thumbnailProps", "title", "titleHeading"];
8995
9010
 
8996
9011
  /**
8997
9012
  * Defines the props of the component.
@@ -9036,7 +9051,7 @@ const LinkPreview = forwardRef((props, ref) => {
9036
9051
  title,
9037
9052
  titleHeading = DEFAULT_PROPS$B.titleHeading
9038
9053
  } = props,
9039
- forwardedProps = _objectWithoutProperties(props, _excluded$O);
9054
+ forwardedProps = _objectWithoutProperties(props, _excluded$N);
9040
9055
  // Use title heading as title wrapper (see DEFAULT_PROPS for the default value).
9041
9056
  const TitleHeading = titleHeading;
9042
9057
  return /*#__PURE__*/React__default.createElement("article", _extends({
@@ -9091,7 +9106,7 @@ LinkPreview.displayName = COMPONENT_NAME$K;
9091
9106
  LinkPreview.className = CLASSNAME$K;
9092
9107
  LinkPreview.defaultProps = DEFAULT_PROPS$B;
9093
9108
 
9094
- const _excluded$N = ["className"];
9109
+ const _excluded$M = ["className"];
9095
9110
 
9096
9111
  /**
9097
9112
  * Defines the props of the component.
@@ -9118,7 +9133,7 @@ const ListDivider = forwardRef((props, ref) => {
9118
9133
  const {
9119
9134
  className
9120
9135
  } = props,
9121
- forwardedProps = _objectWithoutProperties(props, _excluded$N);
9136
+ forwardedProps = _objectWithoutProperties(props, _excluded$M);
9122
9137
  return /*#__PURE__*/React__default.createElement("li", _extends({
9123
9138
  ref: ref
9124
9139
  }, forwardedProps, {
@@ -9128,7 +9143,7 @@ const ListDivider = forwardRef((props, ref) => {
9128
9143
  ListDivider.displayName = COMPONENT_NAME$J;
9129
9144
  ListDivider.className = CLASSNAME$J;
9130
9145
 
9131
- const _excluded$M = ["children", "className"];
9146
+ const _excluded$L = ["children", "className"];
9132
9147
 
9133
9148
  /**
9134
9149
  * Defines the props of the component.
@@ -9156,7 +9171,7 @@ const ListSubheader = forwardRef((props, ref) => {
9156
9171
  children,
9157
9172
  className
9158
9173
  } = props,
9159
- forwardedProps = _objectWithoutProperties(props, _excluded$M);
9174
+ forwardedProps = _objectWithoutProperties(props, _excluded$L);
9160
9175
  return /*#__PURE__*/React__default.createElement("li", _extends({
9161
9176
  ref: ref
9162
9177
  }, forwardedProps, {
@@ -9166,7 +9181,7 @@ const ListSubheader = forwardRef((props, ref) => {
9166
9181
  ListSubheader.displayName = COMPONENT_NAME$I;
9167
9182
  ListSubheader.className = CLASSNAME$I;
9168
9183
 
9169
- const _excluded$L = ["children", "className", "hasBackground", "kind", "icon", "closeButtonProps"];
9184
+ const _excluded$K = ["children", "className", "hasBackground", "kind", "icon", "closeButtonProps"];
9170
9185
 
9171
9186
  /**
9172
9187
  * Defines the props of the component.
@@ -9220,7 +9235,7 @@ const Message = forwardRef((props, ref) => {
9220
9235
  icon: customIcon,
9221
9236
  closeButtonProps
9222
9237
  } = props,
9223
- forwardedProps = _objectWithoutProperties(props, _excluded$L);
9238
+ forwardedProps = _objectWithoutProperties(props, _excluded$K);
9224
9239
  const {
9225
9240
  color,
9226
9241
  icon
@@ -9255,7 +9270,7 @@ const Message = forwardRef((props, ref) => {
9255
9270
  Message.displayName = COMPONENT_NAME$H;
9256
9271
  Message.className = CLASSNAME$H;
9257
9272
 
9258
- const _excluded$K = ["className", "theme", "thumbnails", "onImageClick"],
9273
+ const _excluded$J = ["className", "theme", "thumbnails", "onImageClick"],
9259
9274
  _excluded2$2 = ["image", "onClick", "align"];
9260
9275
 
9261
9276
  /**
@@ -9292,7 +9307,7 @@ const Mosaic = forwardRef((props, ref) => {
9292
9307
  thumbnails,
9293
9308
  onImageClick
9294
9309
  } = props,
9295
- forwardedProps = _objectWithoutProperties(props, _excluded$K);
9310
+ forwardedProps = _objectWithoutProperties(props, _excluded$J);
9296
9311
  const handleImageClick = useMemo(() => {
9297
9312
  if (!onImageClick) return undefined;
9298
9313
  return (index, onClick) => event => {
@@ -9340,12 +9355,7 @@ Mosaic.displayName = COMPONENT_NAME$G;
9340
9355
  Mosaic.className = CLASSNAME$G;
9341
9356
  Mosaic.defaultProps = DEFAULT_PROPS$A;
9342
9357
 
9343
- /** Same as `React.forwardRef` but inferring Ref type from the `as` prop. */
9344
- const forwardRefPolymorphic = React__default.forwardRef;
9345
-
9346
- const _excluded$J = ["className", "icon", "label", "isCurrentPage", "as"];
9347
-
9348
- /** Make `href` required when `as` is `a` */
9358
+ const _excluded$I = ["className", "icon", "label", "isCurrentPage", "as"];
9349
9359
 
9350
9360
  /**
9351
9361
  * Navigation item props
@@ -9368,15 +9378,12 @@ const NavigationItem = Object.assign(forwardRefPolymorphic((props, ref) => {
9368
9378
  isCurrentPage,
9369
9379
  as: Element = 'a'
9370
9380
  } = props,
9371
- forwardedProps = _objectWithoutProperties(props, _excluded$J);
9381
+ forwardedProps = _objectWithoutProperties(props, _excluded$I);
9372
9382
  const theme = useTheme();
9373
9383
  const {
9374
9384
  tooltipLabel,
9375
9385
  labelRef
9376
9386
  } = useOverflowTooltipLabel(label);
9377
- const buttonProps = Element === 'button' ? {
9378
- type: 'button'
9379
- } : {};
9380
9387
  return /*#__PURE__*/React__default.createElement("li", {
9381
9388
  className: classNames(className, handleBasicClasses({
9382
9389
  prefix: CLASSNAME$F,
@@ -9385,14 +9392,15 @@ const NavigationItem = Object.assign(forwardRefPolymorphic((props, ref) => {
9385
9392
  }, /*#__PURE__*/React__default.createElement(Tooltip, {
9386
9393
  label: tooltipLabel,
9387
9394
  placement: Placement.TOP
9388
- }, /*#__PURE__*/React__default.createElement(Element, _extends({
9395
+ }, /*#__PURE__*/React__default.createElement(RawClickable, _extends({
9396
+ as: Element,
9389
9397
  className: handleBasicClasses({
9390
9398
  prefix: `${CLASSNAME$F}__link`,
9391
9399
  isSelected: isCurrentPage
9392
9400
  }),
9393
9401
  ref: ref,
9394
9402
  "aria-current": isCurrentPage ? 'page' : undefined
9395
- }, buttonProps, forwardedProps), icon ? /*#__PURE__*/React__default.createElement(Icon, {
9403
+ }, forwardedProps), icon ? /*#__PURE__*/React__default.createElement(Icon, {
9396
9404
  className: `${CLASSNAME$F}__icon`,
9397
9405
  icon: icon,
9398
9406
  size: Size.xs,
@@ -9412,7 +9420,7 @@ const NavigationContext = /*#__PURE__*/createContext({
9412
9420
  orientation: Orientation.vertical
9413
9421
  });
9414
9422
 
9415
- const _excluded$I = ["children", "className", "label", "icon"];
9423
+ const _excluded$H = ["children", "className", "label", "icon"];
9416
9424
  /**
9417
9425
  * Component display name.
9418
9426
  */
@@ -9429,7 +9437,7 @@ const NavigationSection = forwardRef((props, ref) => {
9429
9437
  label,
9430
9438
  icon
9431
9439
  } = props,
9432
- forwardedProps = _objectWithoutProperties(props, _excluded$I);
9440
+ forwardedProps = _objectWithoutProperties(props, _excluded$H);
9433
9441
  const [isOpen, setIsOpen] = useState(false);
9434
9442
  const buttonRef = useRef(null);
9435
9443
  const sectionId = useId();
@@ -9444,7 +9452,9 @@ const NavigationSection = forwardRef((props, ref) => {
9444
9452
  theme
9445
9453
  })),
9446
9454
  ref: ref
9447
- }, /*#__PURE__*/React__default.createElement("button", _extends({}, forwardedProps, {
9455
+ }, /*#__PURE__*/React__default.createElement(RawClickable, _extends({
9456
+ as: "button"
9457
+ }, forwardedProps, {
9448
9458
  "aria-controls": sectionId,
9449
9459
  "aria-expanded": isOpen,
9450
9460
  className: classNames(`${CLASSNAME$F}__link`),
@@ -9452,8 +9462,7 @@ const NavigationSection = forwardRef((props, ref) => {
9452
9462
  onClick: event => {
9453
9463
  setIsOpen(!isOpen);
9454
9464
  event.stopPropagation();
9455
- },
9456
- type: "button"
9465
+ }
9457
9466
  }), icon ? /*#__PURE__*/React__default.createElement(Icon, {
9458
9467
  className: `${CLASSNAME$F}__icon`,
9459
9468
  icon: icon,
@@ -9493,7 +9502,7 @@ const NavigationSection = forwardRef((props, ref) => {
9493
9502
  NavigationSection.displayName = COMPONENT_NAME$E;
9494
9503
  NavigationSection.className = CLASSNAME$E;
9495
9504
 
9496
- const _excluded$H = ["children", "className", "theme", "orientation"];
9505
+ const _excluded$G = ["children", "className", "theme", "orientation"];
9497
9506
  /**
9498
9507
  * Component display name.
9499
9508
  */
@@ -9518,7 +9527,7 @@ const Navigation = forwardRef((props, ref) => {
9518
9527
  theme = defaultTheme,
9519
9528
  orientation = DEFAULT_PROPS$z.orientation
9520
9529
  } = props,
9521
- forwardedProps = _objectWithoutProperties(props, _excluded$H);
9530
+ forwardedProps = _objectWithoutProperties(props, _excluded$G);
9522
9531
  return /*#__PURE__*/React__default.createElement(ThemeProvider, {
9523
9532
  value: theme
9524
9533
  }, /*#__PURE__*/React__default.createElement("nav", _extends({
@@ -9566,7 +9575,7 @@ const NOTIFICATION_CONFIGURATION = {
9566
9575
  }
9567
9576
  };
9568
9577
 
9569
- const _excluded$G = ["actionLabel", "className", "content", "isOpen", "onActionClick", "onClick", "theme", "type", "zIndex", "usePortal", "style"];
9578
+ const _excluded$F = ["actionLabel", "className", "content", "isOpen", "onActionClick", "onClick", "theme", "type", "zIndex", "usePortal", "style"];
9570
9579
 
9571
9580
  /**
9572
9581
  * Defines the props of the component.
@@ -9613,7 +9622,7 @@ const Notification = forwardRef((props, ref) => {
9613
9622
  usePortal = DEFAULT_PROPS$y.usePortal,
9614
9623
  style
9615
9624
  } = props,
9616
- forwardedProps = _objectWithoutProperties(props, _excluded$G);
9625
+ forwardedProps = _objectWithoutProperties(props, _excluded$F);
9617
9626
  if (!DOCUMENT) {
9618
9627
  // Can't render in SSR.
9619
9628
  return null;
@@ -9669,7 +9678,7 @@ Notification.displayName = COMPONENT_NAME$C;
9669
9678
  Notification.className = CLASSNAME$C;
9670
9679
  Notification.defaultProps = DEFAULT_PROPS$y;
9671
9680
 
9672
- const _excluded$F = ["children", "isOpen", "focusElement", "aria-label", "label", "className"];
9681
+ const _excluded$E = ["children", "isOpen", "focusElement", "aria-label", "label", "className"];
9673
9682
 
9674
9683
  /**
9675
9684
  * PopoverDialog props.
@@ -9707,7 +9716,7 @@ const PopoverDialog = forwardRef((props, ref) => {
9707
9716
  label = ariaLabel,
9708
9717
  className
9709
9718
  } = props,
9710
- forwardedProps = _objectWithoutProperties(props, _excluded$F);
9719
+ forwardedProps = _objectWithoutProperties(props, _excluded$E);
9711
9720
  return /*#__PURE__*/React__default.createElement(Popover, _extends({}, forwardedProps, {
9712
9721
  ref: ref,
9713
9722
  className: classNames(className, CLASSNAME$B),
@@ -9731,7 +9740,7 @@ PopoverDialog.displayName = COMPONENT_NAME$B;
9731
9740
  PopoverDialog.className = CLASSNAME$B;
9732
9741
  PopoverDialog.defaultProps = DEFAULT_PROPS$x;
9733
9742
 
9734
- const _excluded$E = ["actions", "attachments", "author", "className", "meta", "onClick", "orientation", "tags", "text", "theme", "thumbnailProps", "title"];
9743
+ const _excluded$D = ["actions", "attachments", "author", "className", "meta", "onClick", "orientation", "tags", "text", "theme", "thumbnailProps", "title"];
9735
9744
 
9736
9745
  /**
9737
9746
  * Defines the props of the component.
@@ -9777,7 +9786,7 @@ const PostBlock = forwardRef((props, ref) => {
9777
9786
  thumbnailProps,
9778
9787
  title
9779
9788
  } = props,
9780
- forwardedProps = _objectWithoutProperties(props, _excluded$E);
9789
+ forwardedProps = _objectWithoutProperties(props, _excluded$D);
9781
9790
  return /*#__PURE__*/React__default.createElement("div", _extends({
9782
9791
  ref: ref,
9783
9792
  className: classNames(className, handleBasicClasses({
@@ -9822,7 +9831,7 @@ PostBlock.displayName = COMPONENT_NAME$A;
9822
9831
  PostBlock.className = CLASSNAME$A;
9823
9832
  PostBlock.defaultProps = DEFAULT_PROPS$w;
9824
9833
 
9825
- const _excluded$D = ["className", "theme"];
9834
+ const _excluded$C = ["className", "theme"];
9826
9835
  /**
9827
9836
  * Component display name.
9828
9837
  */
@@ -9851,7 +9860,7 @@ const ProgressLinear = forwardRef((props, ref) => {
9851
9860
  className,
9852
9861
  theme = defaultTheme
9853
9862
  } = props,
9854
- forwardedProps = _objectWithoutProperties(props, _excluded$D);
9863
+ forwardedProps = _objectWithoutProperties(props, _excluded$C);
9855
9864
  return /*#__PURE__*/React__default.createElement("div", _extends({
9856
9865
  ref: ref
9857
9866
  }, forwardedProps, {
@@ -9869,7 +9878,7 @@ ProgressLinear.displayName = COMPONENT_NAME$z;
9869
9878
  ProgressLinear.className = CLASSNAME$z;
9870
9879
  ProgressLinear.defaultProps = DEFAULT_PROPS$v;
9871
9880
 
9872
- const _excluded$C = ["className", "theme", "size", "display"];
9881
+ const _excluded$B = ["className", "theme", "size", "display"];
9873
9882
 
9874
9883
  /**
9875
9884
  * Progress sizes.
@@ -9912,7 +9921,7 @@ const ProgressCircular = forwardRef((props, ref) => {
9912
9921
  size = DEFAULT_PROPS$u.size,
9913
9922
  display = DEFAULT_PROPS$u.display
9914
9923
  } = props,
9915
- forwardedProps = _objectWithoutProperties(props, _excluded$C);
9924
+ forwardedProps = _objectWithoutProperties(props, _excluded$B);
9916
9925
  const Element = display === 'block' ? 'div' : 'span';
9917
9926
  return /*#__PURE__*/React__default.createElement(Element, _extends({
9918
9927
  ref: ref
@@ -9943,7 +9952,7 @@ ProgressCircular.displayName = COMPONENT_NAME$y;
9943
9952
  ProgressCircular.className = CLASSNAME$y;
9944
9953
  ProgressCircular.defaultProps = DEFAULT_PROPS$u;
9945
9954
 
9946
- const _excluded$B = ["className", "theme", "variant"];
9955
+ const _excluded$A = ["className", "theme", "variant"];
9947
9956
 
9948
9957
  /**
9949
9958
  * Progress variants.
@@ -9989,7 +9998,7 @@ const Progress = forwardRef((props, ref) => {
9989
9998
  theme = defaultTheme,
9990
9999
  variant = DEFAULT_PROPS$t.variant
9991
10000
  } = props,
9992
- forwardedProps = _objectWithoutProperties(props, _excluded$B);
10001
+ forwardedProps = _objectWithoutProperties(props, _excluded$A);
9993
10002
  return /*#__PURE__*/React__default.createElement("div", _extends({
9994
10003
  ref: ref
9995
10004
  }, forwardedProps, {
@@ -10126,7 +10135,7 @@ const useTabProviderContextState = () => {
10126
10135
  return context === null || context === void 0 ? void 0 : context[0];
10127
10136
  };
10128
10137
 
10129
- const _excluded$A = ["children", "onChange"];
10138
+ const _excluded$z = ["children", "onChange"];
10130
10139
  const DEFAULT_PROPS$s = {
10131
10140
  isLazy: INIT_STATE.isLazy,
10132
10141
  shouldActivateOnFocus: INIT_STATE.shouldActivateOnFocus
@@ -10148,7 +10157,7 @@ const ProgressTrackerProvider = props => {
10148
10157
  children,
10149
10158
  onChange
10150
10159
  } = props,
10151
- propState = _objectWithoutProperties(props, _excluded$A);
10160
+ propState = _objectWithoutProperties(props, _excluded$z);
10152
10161
  const [state, dispatch] = useReducer(reducer, INIT_STATE);
10153
10162
 
10154
10163
  // On prop state change => dispatch update.
@@ -10251,7 +10260,7 @@ const useRovingTabIndex = ({
10251
10260
  [parentRef, ...extraDependencies]);
10252
10261
  };
10253
10262
 
10254
- const _excluded$z = ["aria-label", "children", "className"];
10263
+ const _excluded$y = ["aria-label", "children", "className"];
10255
10264
 
10256
10265
  /**
10257
10266
  * Defines the props of the component.
@@ -10288,7 +10297,7 @@ const ProgressTracker = forwardRef((props, ref) => {
10288
10297
  children,
10289
10298
  className
10290
10299
  } = props,
10291
- forwardedProps = _objectWithoutProperties(props, _excluded$z);
10300
+ forwardedProps = _objectWithoutProperties(props, _excluded$y);
10292
10301
  const stepListRef = React__default.useRef(null);
10293
10302
  useRovingTabIndex({
10294
10303
  parentRef: stepListRef,
@@ -10327,7 +10336,7 @@ ProgressTracker.displayName = COMPONENT_NAME$w;
10327
10336
  ProgressTracker.className = CLASSNAME$w;
10328
10337
  ProgressTracker.defaultProps = DEFAULT_PROPS$r;
10329
10338
 
10330
- const _excluded$y = ["className", "hasError", "helper", "id", "isActive", "isComplete", "label", "onFocus", "onKeyPress", "tabIndex"];
10339
+ const _excluded$x = ["className", "hasError", "helper", "id", "isActive", "isComplete", "label", "onFocus", "onKeyPress", "tabIndex"];
10331
10340
 
10332
10341
  /**
10333
10342
  * Defines the props of the component.
@@ -10374,7 +10383,7 @@ const ProgressTrackerStep = forwardRef((props, ref) => {
10374
10383
  onKeyPress,
10375
10384
  tabIndex = -1
10376
10385
  } = otherProps,
10377
- forwardedProps = _objectWithoutProperties(otherProps, _excluded$y);
10386
+ forwardedProps = _objectWithoutProperties(otherProps, _excluded$x);
10378
10387
  const state = useTabProviderContext('tab', id);
10379
10388
  const isActive = propIsActive || (state === null || state === void 0 ? void 0 : state.isActive);
10380
10389
  const changeToCurrentTab = useCallback(() => {
@@ -10441,7 +10450,7 @@ ProgressTrackerStep.displayName = COMPONENT_NAME$v;
10441
10450
  ProgressTrackerStep.className = CLASSNAME$v;
10442
10451
  ProgressTrackerStep.defaultProps = DEFAULT_PROPS$q;
10443
10452
 
10444
- const _excluded$x = ["children", "id", "className", "isActive"];
10453
+ const _excluded$w = ["children", "id", "className", "isActive"];
10445
10454
 
10446
10455
  /**
10447
10456
  * Defines the props of the component.
@@ -10478,7 +10487,7 @@ const ProgressTrackerStepPanel = forwardRef((props, ref) => {
10478
10487
  className,
10479
10488
  isActive: propIsActive
10480
10489
  } = props,
10481
- forwardedProps = _objectWithoutProperties(props, _excluded$x);
10490
+ forwardedProps = _objectWithoutProperties(props, _excluded$w);
10482
10491
  const state = useTabProviderContext('tabPanel', id);
10483
10492
  const isActive = propIsActive || (state === null || state === void 0 ? void 0 : state.isActive);
10484
10493
  return /*#__PURE__*/React__default.createElement("div", _extends({
@@ -10498,7 +10507,7 @@ ProgressTrackerStepPanel.displayName = COMPONENT_NAME$u;
10498
10507
  ProgressTrackerStepPanel.className = CLASSNAME$u;
10499
10508
  ProgressTrackerStepPanel.defaultProps = DEFAULT_PROPS$p;
10500
10509
 
10501
- const _excluded$w = ["checked", "className", "helper", "id", "inputRef", "isChecked", "label", "name", "onChange", "theme", "value", "inputProps"];
10510
+ const _excluded$v = ["checked", "className", "helper", "id", "inputRef", "isChecked", "label", "name", "onChange", "theme", "value", "inputProps"];
10502
10511
 
10503
10512
  /**
10504
10513
  * Defines the props of the component.
@@ -10547,7 +10556,7 @@ const RadioButton = forwardRef((props, ref) => {
10547
10556
  value,
10548
10557
  inputProps
10549
10558
  } = otherProps,
10550
- forwardedProps = _objectWithoutProperties(otherProps, _excluded$w);
10559
+ forwardedProps = _objectWithoutProperties(otherProps, _excluded$v);
10551
10560
  const generatedInputId = useId();
10552
10561
  const inputId = id || generatedInputId;
10553
10562
  const handleChange = event => {
@@ -10601,7 +10610,7 @@ RadioButton.displayName = COMPONENT_NAME$t;
10601
10610
  RadioButton.className = CLASSNAME$t;
10602
10611
  RadioButton.defaultProps = DEFAULT_PROPS$o;
10603
10612
 
10604
- const _excluded$v = ["children", "className"];
10613
+ const _excluded$u = ["children", "className"];
10605
10614
 
10606
10615
  /**
10607
10616
  * Defines the props of the component.
@@ -10629,7 +10638,7 @@ const RadioGroup = forwardRef((props, ref) => {
10629
10638
  children,
10630
10639
  className
10631
10640
  } = props,
10632
- forwardedProps = _objectWithoutProperties(props, _excluded$v);
10641
+ forwardedProps = _objectWithoutProperties(props, _excluded$u);
10633
10642
  return /*#__PURE__*/React__default.createElement("div", _extends({
10634
10643
  ref: ref
10635
10644
  }, forwardedProps, {
@@ -10663,7 +10672,7 @@ function useListenFocus(ref) {
10663
10672
  return isFocus;
10664
10673
  }
10665
10674
 
10666
- const _excluded$u = ["children", "className", "focusElement", "isMultiple", "closeOnClick", "disabled", "error", "hasError", "helper", "id", "isDisabled", "isEmpty", "isOpen", "isRequired", "isValid", "label", "onClear", "onDropdownClose", "onInfiniteScroll", "onInputClick", "placeholder", "theme", "value", "variant"];
10675
+ const _excluded$t = ["children", "className", "focusElement", "isMultiple", "closeOnClick", "disabled", "error", "hasError", "helper", "id", "isDisabled", "isEmpty", "isOpen", "isRequired", "isValid", "label", "onClear", "onDropdownClose", "onInfiniteScroll", "onInputClick", "placeholder", "theme", "value", "variant"];
10667
10676
  /** The display name of the component. */
10668
10677
  const COMPONENT_NAME$r = 'Select';
10669
10678
 
@@ -10697,7 +10706,7 @@ const WithSelectContext = (SelectElement, props, ref) => {
10697
10706
  value,
10698
10707
  variant
10699
10708
  } = props,
10700
- forwardedProps = _objectWithoutProperties(props, _excluded$u);
10709
+ forwardedProps = _objectWithoutProperties(props, _excluded$t);
10701
10710
  const generatedSelectId = useId();
10702
10711
  const selectId = id || generatedSelectId;
10703
10712
  const anchorRef = useRef(null);
@@ -10780,7 +10789,7 @@ const SelectVariant = {
10780
10789
  chip: 'chip'
10781
10790
  };
10782
10791
 
10783
- const _excluded$t = ["anchorRef", "clearButtonProps", "handleKeyboardNav", "hasError", "hasInputClear", "icon", "id", "isDisabled", "isEmpty", "isRequired", "isValid", "label", "onClear", "onInputClick", "placeholder", "selectedValueRender", "theme", "value", "variant", "selectElementRef"];
10792
+ const _excluded$s = ["anchorRef", "clearButtonProps", "handleKeyboardNav", "hasError", "hasInputClear", "icon", "id", "isDisabled", "isEmpty", "isRequired", "isValid", "label", "onClear", "onInputClick", "placeholder", "selectedValueRender", "theme", "value", "variant", "selectElementRef"];
10784
10793
 
10785
10794
  /** The display name of the component. */
10786
10795
  const COMPONENT_NAME$q = 'Select';
@@ -10822,7 +10831,7 @@ const SelectField = props => {
10822
10831
  variant,
10823
10832
  selectElementRef
10824
10833
  } = props,
10825
- forwardedProps = _objectWithoutProperties(props, _excluded$t);
10834
+ forwardedProps = _objectWithoutProperties(props, _excluded$s);
10826
10835
  return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, variant === SelectVariant.input && /*#__PURE__*/React__default.createElement(React__default.Fragment, null, label && /*#__PURE__*/React__default.createElement("div", {
10827
10836
  className: `${CLASSNAME$q}__header`
10828
10837
  }, /*#__PURE__*/React__default.createElement(InputLabel, {
@@ -10902,7 +10911,7 @@ Select.className = CLASSNAME$q;
10902
10911
  Select.defaultProps = DEFAULT_PROPS$n;
10903
10912
  Select.className = CLASSNAME$q;
10904
10913
 
10905
- const _excluded$s = ["anchorRef", "handleKeyboardNav", "hasError", "icon", "id", "isDisabled", "isEmpty", "isRequired", "isValid", "label", "onClear", "onInputClick", "placeholder", "selectedChipRender", "selectedValueRender", "theme", "value", "variant", "selectElementRef"];
10914
+ const _excluded$r = ["anchorRef", "handleKeyboardNav", "hasError", "icon", "id", "isDisabled", "isEmpty", "isRequired", "isValid", "label", "onClear", "onInputClick", "placeholder", "selectedChipRender", "selectedValueRender", "theme", "value", "variant", "selectElementRef"];
10906
10915
 
10907
10916
  /** Defines the props of the component. */
10908
10917
 
@@ -10955,7 +10964,7 @@ const SelectMultipleField = props => {
10955
10964
  variant,
10956
10965
  selectElementRef
10957
10966
  } = props,
10958
- forwardedProps = _objectWithoutProperties(props, _excluded$s);
10967
+ forwardedProps = _objectWithoutProperties(props, _excluded$r);
10959
10968
  return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, variant === SelectVariant.input && /*#__PURE__*/React__default.createElement(React__default.Fragment, null, label && /*#__PURE__*/React__default.createElement("div", {
10960
10969
  className: `${CLASSNAME$p}__header`
10961
10970
  }, /*#__PURE__*/React__default.createElement(InputLabel, {
@@ -11025,7 +11034,7 @@ SelectMultiple.displayName = COMPONENT_NAME$p;
11025
11034
  SelectMultiple.className = CLASSNAME$p;
11026
11035
  SelectMultiple.defaultProps = DEFAULT_PROPS$m;
11027
11036
 
11028
- const _excluded$r = ["children", "className", "theme"];
11037
+ const _excluded$q = ["children", "className", "theme"];
11029
11038
 
11030
11039
  /**
11031
11040
  * Defines the props of the component.
@@ -11055,7 +11064,7 @@ const SideNavigation = forwardRef((props, ref) => {
11055
11064
  className,
11056
11065
  theme = defaultTheme
11057
11066
  } = props,
11058
- forwardedProps = _objectWithoutProperties(props, _excluded$r);
11067
+ forwardedProps = _objectWithoutProperties(props, _excluded$q);
11059
11068
  const content = Children.toArray(children).filter(isComponent(SideNavigationItem));
11060
11069
  return /*#__PURE__*/React__default.createElement("ul", _extends({
11061
11070
  ref: ref
@@ -11066,22 +11075,6 @@ const SideNavigation = forwardRef((props, ref) => {
11066
11075
  SideNavigation.displayName = COMPONENT_NAME$o;
11067
11076
  SideNavigation.className = CLASSNAME$o;
11068
11077
 
11069
- const _excluded$q = ["linkAs", "href"];
11070
- /**
11071
- * Render <button> HTML component, fallbacks to `<a>` when a `href` is provided or a custom component with `linkAs`.
11072
- */
11073
- const renderButtonOrLink = (props, ...children) => {
11074
- const {
11075
- linkAs,
11076
- href
11077
- } = props,
11078
- forwardedProps = _objectWithoutProperties(props, _excluded$q);
11079
- if (linkAs || href) return renderLink(props, ...children);
11080
- return /*#__PURE__*/React__default.createElement('button', _objectSpread2({
11081
- type: 'button'
11082
- }, forwardedProps), ...children);
11083
- };
11084
-
11085
11078
  const _excluded$p = ["children", "className", "emphasis", "icon", "isOpen", "isSelected", "label", "linkAs", "linkProps", "onActionClick", "onClick", "toggleButtonProps", "closeMode"];
11086
11079
 
11087
11080
  /**
@@ -11152,12 +11145,11 @@ const SideNavigationItem = forwardRef((props, ref) => {
11152
11145
  }))
11153
11146
  }), shouldSplitActions ? /*#__PURE__*/React__default.createElement("div", {
11154
11147
  className: `${CLASSNAME$n}__wrapper`
11155
- }, renderLink(_objectSpread2(_objectSpread2({
11156
- linkAs
11157
- }, linkProps), {}, {
11148
+ }, /*#__PURE__*/React__default.createElement(RawClickable, _extends({
11149
+ as: linkAs || linkProps !== null && linkProps !== void 0 && linkProps.href ? 'a' : 'button'
11150
+ }, linkProps, {
11158
11151
  className: `${CLASSNAME$n}__link`,
11159
- onClick,
11160
- tabIndex: 0
11152
+ onClick: onClick
11161
11153
  }), icon && /*#__PURE__*/React__default.createElement(Icon, {
11162
11154
  className: `${CLASSNAME$n}__icon`,
11163
11155
  icon: icon,
@@ -11168,12 +11160,11 @@ const SideNavigationItem = forwardRef((props, ref) => {
11168
11160
  size: Size.m,
11169
11161
  emphasis: Emphasis.low,
11170
11162
  onClick: onActionClick
11171
- }, ariaProps))) : renderButtonOrLink(_objectSpread2(_objectSpread2({
11172
- linkAs
11173
- }, linkProps), {}, {
11163
+ }, ariaProps))) : /*#__PURE__*/React__default.createElement(RawClickable, _extends({
11164
+ as: linkAs || linkProps !== null && linkProps !== void 0 && linkProps.href ? 'a' : 'button'
11165
+ }, linkProps, {
11174
11166
  className: `${CLASSNAME$n}__link`,
11175
- tabIndex: 0,
11176
- onClick
11167
+ onClick: onClick
11177
11168
  }, ariaProps), icon && /*#__PURE__*/React__default.createElement(Icon, {
11178
11169
  className: `${CLASSNAME$n}__icon`,
11179
11170
  icon: icon,
@@ -13656,7 +13647,8 @@ const Thumbnail = forwardRef((props, ref) => {
13656
13647
  var _loadingPlaceholderIm;
13657
13648
  const {
13658
13649
  isAnyDisabled,
13659
- otherProps
13650
+ otherProps,
13651
+ disabledStateProps
13660
13652
  } = useDisableStateProps(props);
13661
13653
  const defaultTheme = useTheme() || Theme.light;
13662
13654
  const {
@@ -13705,17 +13697,13 @@ const Thumbnail = forwardRef((props, ref) => {
13705
13697
  // Remove the image on custom fallback.
13706
13698
  imageErrorStyle.display = 'none';
13707
13699
  }
13708
- const isLink = Boolean((linkProps === null || linkProps === void 0 ? void 0 : linkProps.href) || linkAs);
13709
- const isButton = !!forwardedProps.onClick;
13710
- const isClickable = !isAnyDisabled && (isButton || isLink);
13711
- let Wrapper = 'div';
13700
+ const isClickable = !isAnyDisabled && ((linkProps === null || linkProps === void 0 ? void 0 : linkProps.href) || linkAs || forwardedProps.onClick);
13701
+ const Wrapper = isClickable ? RawClickable : 'div';
13712
13702
  const wrapperProps = _objectSpread2({}, forwardedProps);
13713
- if (!isAnyDisabled && isLink) {
13714
- Wrapper = linkAs || 'a';
13715
- Object.assign(wrapperProps, linkProps);
13716
- } else if (!isAnyDisabled && isButton) {
13717
- Wrapper = 'button';
13718
- wrapperProps.type = forwardedProps.type || 'button';
13703
+ if (isClickable) {
13704
+ Object.assign(wrapperProps, linkProps, {
13705
+ as: linkAs || linkProps !== null && linkProps !== void 0 && linkProps.href ? 'a' : 'button'
13706
+ }, disabledStateProps);
13719
13707
  wrapperProps['aria-label'] = forwardedProps['aria-label'] || alt;
13720
13708
  }
13721
13709
 
@@ -14448,5 +14436,5 @@ UserBlock.displayName = COMPONENT_NAME;
14448
14436
  UserBlock.className = CLASSNAME;
14449
14437
  UserBlock.defaultProps = DEFAULT_PROPS;
14450
14438
 
14451
- export { AlertDialog, Alignment, AspectRatio, Autocomplete, AutocompleteMultiple, Avatar, Badge, BadgeWrapper, Button, ButtonEmphasis, ButtonGroup, Checkbox, Chip, ChipGroup, ColorPalette, ColorVariant, CommentBlock, CommentBlockVariant, DatePicker, DatePickerControlled, DatePickerField, Dialog, Divider, DragHandle, Dropdown, Emphasis, ExpansionPanel, Flag, FlexBox, GenericBlock, GenericBlockGapSize, Grid, GridColumn, GridItem, Heading, HeadingLevelProvider, Icon, IconButton, ImageBlock, ImageBlockCaptionPosition, ImageLightbox, InlineList, InputHelper, InputLabel, Kind, Lightbox, Link, LinkPreview, List, ListDivider, ListItem, ListSubheader, Message, Mosaic, Navigation, Notification, Orientation, Placement, Popover, PopoverDialog, PostBlock, Progress, ProgressCircular, ProgressLinear, ProgressTracker, ProgressTrackerProvider, ProgressTrackerStep, ProgressTrackerStepPanel, ProgressVariant, RadioButton, RadioGroup, Select, SelectMultiple, SelectMultipleField, SelectVariant, SideNavigation, SideNavigationItem, Size, SkeletonCircle, SkeletonRectangle, SkeletonRectangleVariant, SkeletonTypography, Slider, Slides, Slideshow, SlideshowControls, SlideshowItem, Switch, Tab, TabList, TabListLayout, TabPanel, TabProvider, Table, TableBody, TableCell, TableCellVariant, TableHeader, TableRow, Text, TextField, ThOrder, Theme, ThemeProvider, Thumbnail, ThumbnailAspectRatio, ThumbnailObjectFit, ThumbnailVariant, Toolbar, Tooltip, Typography, TypographyCustom, TypographyInterface, TypographyTitleCustom, Uploader, UploaderVariant, UserBlock, WhiteSpace, clamp, isClickable, useFocusPointStyle, useHeadingLevel, useTheme };
14439
+ export { AlertDialog, Alignment, AspectRatio, Autocomplete, AutocompleteMultiple, Avatar, BACKSPACE_KEY_CODE, Badge, BadgeWrapper, Button, ButtonEmphasis, ButtonGroup, CSS_PREFIX, Checkbox, Chip, ChipGroup, ColorPalette, ColorVariant, CommentBlock, CommentBlockVariant, DIALOG_TRANSITION_DURATION, DOWN_KEY_CODE, DatePicker, DatePickerControlled, DatePickerField, Dialog, Divider, DragHandle, Dropdown, ENTER_KEY_CODE, ESCAPE_KEY_CODE, EXPANSION_PANEL_TRANSITION_DURATION, Emphasis, ExpansionPanel, Flag, FlexBox, GenericBlock, GenericBlockGapSize, Grid, GridColumn, GridItem, Heading, HeadingLevelProvider, Icon, IconButton, ImageBlock, ImageBlockCaptionPosition, ImageLightbox, InlineList, InputHelper, InputLabel, Kind, LEFT_KEY_CODE, Lightbox, Link, LinkPreview, List, ListDivider, ListItem, ListSubheader, Message, Mosaic, NOTIFICATION_TRANSITION_DURATION, Navigation, Notification, Orientation, Placement, Popover, PopoverDialog, PostBlock, Progress, ProgressCircular, ProgressLinear, ProgressTracker, ProgressTrackerProvider, ProgressTrackerStep, ProgressTrackerStepPanel, ProgressVariant, RIGHT_KEY_CODE, RadioButton, RadioGroup, SLIDESHOW_TRANSITION_DURATION, SPACE_KEY_CODE, Select, SelectMultiple, SelectMultipleField, SelectVariant, SideNavigation, SideNavigationItem, Size, SkeletonCircle, SkeletonRectangle, SkeletonRectangleVariant, SkeletonTypography, Slider, Slides, Slideshow, SlideshowControls, SlideshowItem, Switch, TAB_KEY_CODE, TOOLTIP_HOVER_DELAY, TOOLTIP_LONG_PRESS_DELAY, Tab, TabList, TabListLayout, TabPanel, TabProvider, Table, TableBody, TableCell, TableCellVariant, TableHeader, TableRow, Text, TextField, ThOrder, Theme, ThemeProvider, Thumbnail, ThumbnailAspectRatio, ThumbnailObjectFit, ThumbnailVariant, Toolbar, Tooltip, Typography, TypographyCustom, TypographyInterface, TypographyTitleCustom, UP_KEY_CODE, Uploader, UploaderVariant, UserBlock, WhiteSpace, clamp, isClickable, useFocusPointStyle, useHeadingLevel, useTheme };
14452
14440
  //# sourceMappingURL=index.js.map