@lumx/react 3.10.1-alpha.5 → 3.10.1-alpha.7

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 (115) hide show
  1. package/_internal/Falsy.d.ts +7 -0
  2. package/index.d.ts +291 -5
  3. package/index.js +167 -267
  4. package/index.js.map +1 -1
  5. package/package.json +3 -3
  6. package/src/components/alert-dialog/AlertDialog.tsx +3 -2
  7. package/src/components/autocomplete/Autocomplete.tsx +2 -2
  8. package/src/components/autocomplete/AutocompleteMultiple.tsx +2 -2
  9. package/src/components/avatar/Avatar.tsx +3 -3
  10. package/src/components/badge/Badge.tsx +3 -3
  11. package/src/components/badge/BadgeWrapper.tsx +2 -3
  12. package/src/components/button/Button.tsx +4 -4
  13. package/src/components/button/ButtonGroup.tsx +2 -3
  14. package/src/components/button/IconButton.tsx +2 -2
  15. package/src/components/checkbox/Checkbox.tsx +3 -3
  16. package/src/components/chip/Chip.tsx +3 -3
  17. package/src/components/chip/ChipGroup.tsx +2 -3
  18. package/src/components/comment-block/CommentBlock.tsx +3 -3
  19. package/src/components/date-picker/constants.ts +2 -2
  20. package/src/components/dialog/Dialog.tsx +5 -5
  21. package/src/components/divider/Divider.tsx +3 -3
  22. package/src/components/drag-handle/DragHandle.tsx +3 -3
  23. package/src/components/dropdown/Dropdown.tsx +3 -4
  24. package/src/components/expansion-panel/ExpansionPanel.tsx +6 -6
  25. package/src/components/flag/Flag.tsx +3 -3
  26. package/src/components/flex-box/FlexBox.tsx +3 -3
  27. package/src/components/generic-block/GenericBlock.tsx +2 -3
  28. package/src/components/grid/Grid.tsx +3 -3
  29. package/src/components/grid/GridItem.tsx +3 -3
  30. package/src/components/grid-column/GridColumn.tsx +2 -3
  31. package/src/components/heading/Heading.tsx +2 -3
  32. package/src/components/icon/Icon.tsx +3 -3
  33. package/src/components/image-block/ImageBlock.tsx +3 -3
  34. package/src/components/image-lightbox/constants.ts +2 -2
  35. package/src/components/inline-list/InlineList.tsx +3 -3
  36. package/src/components/input-helper/InputHelper.tsx +3 -3
  37. package/src/components/input-label/InputLabel.tsx +3 -3
  38. package/src/components/lightbox/Lightbox.tsx +3 -3
  39. package/src/components/link/Link.tsx +3 -3
  40. package/src/components/link-preview/LinkPreview.tsx +3 -3
  41. package/src/components/list/List.tsx +3 -3
  42. package/src/components/list/ListDivider.tsx +2 -3
  43. package/src/components/list/ListItem.tsx +3 -3
  44. package/src/components/list/ListSubheader.tsx +2 -3
  45. package/src/components/list/useInteractiveList.tsx +3 -3
  46. package/src/components/message/Message.tsx +3 -3
  47. package/src/components/mosaic/Mosaic.tsx +3 -3
  48. package/src/components/navigation/Navigation.tsx +3 -3
  49. package/src/components/navigation/NavigationItem.tsx +9 -3
  50. package/src/components/navigation/NavigationSection.tsx +3 -3
  51. package/src/components/notification/Notification.tsx +3 -3
  52. package/src/components/popover/Popover.tsx +3 -3
  53. package/src/components/popover-dialog/PopoverDialog.tsx +2 -3
  54. package/src/components/post-block/PostBlock.tsx +3 -3
  55. package/src/components/progress/Progress.tsx +3 -3
  56. package/src/components/progress/ProgressCircular.tsx +3 -3
  57. package/src/components/progress/ProgressLinear.tsx +3 -3
  58. package/src/components/progress-tracker/ProgressTracker.tsx +2 -3
  59. package/src/components/progress-tracker/ProgressTrackerStep.tsx +3 -3
  60. package/src/components/radio-button/RadioButton.tsx +3 -3
  61. package/src/components/radio-button/RadioGroup.tsx +2 -3
  62. package/src/components/select/Select.tsx +3 -2
  63. package/src/components/select/SelectMultiple.tsx +3 -2
  64. package/src/components/select/WithSelectContext.tsx +3 -2
  65. package/src/components/side-navigation/SideNavigation.tsx +3 -4
  66. package/src/components/side-navigation/SideNavigationItem.tsx +4 -4
  67. package/src/components/skeleton/SkeletonCircle.tsx +3 -3
  68. package/src/components/skeleton/SkeletonRectangle.tsx +3 -3
  69. package/src/components/skeleton/SkeletonTypography.tsx +3 -3
  70. package/src/components/slider/Slider.tsx +3 -3
  71. package/src/components/slideshow/Slides.tsx +3 -3
  72. package/src/components/slideshow/SlideshowControls.tsx +3 -3
  73. package/src/components/slideshow/SlideshowItem.tsx +2 -3
  74. package/src/components/slideshow/SlideshowItemGroup.tsx +2 -3
  75. package/src/components/switch/Switch.tsx +3 -3
  76. package/src/components/table/Table.tsx +3 -3
  77. package/src/components/table/TableBody.tsx +2 -3
  78. package/src/components/table/TableCell.tsx +3 -3
  79. package/src/components/table/TableHeader.tsx +2 -3
  80. package/src/components/table/TableRow.tsx +3 -3
  81. package/src/components/text/Text.tsx +4 -9
  82. package/src/components/text-field/TextField.tsx +3 -3
  83. package/src/components/thumbnail/Thumbnail.tsx +3 -3
  84. package/src/components/toolbar/Toolbar.tsx +3 -3
  85. package/src/components/tooltip/Tooltip.tsx +3 -3
  86. package/src/components/uploader/Uploader.tsx +3 -3
  87. package/src/components/user-block/UserBlock.tsx +3 -3
  88. package/src/utils/className/index.ts +0 -1
  89. package/src/utils/className.test.js +41 -0
  90. package/src/utils/type/Callback.ts +4 -0
  91. package/src/utils/type/Comp.ts +14 -0
  92. package/src/utils/type/ComponentClassName.ts +7 -0
  93. package/src/utils/type/ComponentRef.ts +16 -0
  94. package/src/utils/type/Falsy.ts +5 -0
  95. package/src/utils/type/GenericProps.ts +11 -0
  96. package/src/utils/type/HasAriaLabelOrLabelledBy.ts +19 -0
  97. package/src/utils/type/HasClassName.ts +6 -0
  98. package/src/utils/type/HasCloseMode.ts +7 -0
  99. package/src/utils/type/HasPolymorphicAs.ts +8 -0
  100. package/src/utils/type/HasTheme.ts +8 -0
  101. package/src/utils/type/HeadingElement.ts +2 -0
  102. package/src/utils/type/KebabCase.ts +6 -0
  103. package/src/utils/type/MaybeElementOrRef.ts +6 -0
  104. package/src/utils/type/Point.ts +4 -0
  105. package/src/utils/type/Predicate.ts +2 -0
  106. package/src/utils/type/RectSize.ts +4 -0
  107. package/src/utils/type/TextElement.ts +4 -0
  108. package/src/utils/type/ValueOf.ts +2 -0
  109. package/src/utils/type/index.ts +19 -0
  110. package/src/utils/type/isComponentType.ts +9 -0
  111. package/utils/index.d.ts +1 -1
  112. package/_internal/index.d.ts +0 -285
  113. package/src/utils/className/getRootClassName.test.ts +0 -11
  114. package/src/utils/className/getRootClassName.ts +0 -24
  115. package/src/utils/type.ts +0 -164
package/index.js CHANGED
@@ -1,11 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import React__default, { useState, useEffect, useMemo, useRef, Children, isValidElement, cloneElement, useLayoutEffect, useCallback, Fragment, createContext, useContext, useReducer } from 'react';
3
- import isBoolean from 'lodash/isBoolean';
4
- import isEmpty from 'lodash/isEmpty';
5
- import kebabCase from 'lodash/kebabCase';
6
3
  import ReactDOM, { createPortal } from 'react-dom';
7
- import get from 'lodash/get';
8
- import { C as ClickAwayProvider, i as isEmpty$1 } from './_internal/index.js';
4
+ import { C as ClickAwayProvider, i as isEmpty } from './_internal/index.js';
9
5
 
10
6
  function ownKeys(e, r) {
11
7
  var t = Object.keys(e);
@@ -318,19 +314,10 @@ var classNames = classnames.exports;
318
314
  const mdiAlert='M13 14h-2V9h2m0 9h-2v-2h2M1 21h22L12 2z';const mdiAlertCircle='M13 13h-2V7h2m0 10h-2v-2h2M12 2A10 10 0 0 0 2 12a10 10 0 0 0 10 10 10 10 0 0 0 10-10A10 10 0 0 0 12 2';const mdiArrowDown='M11 4h2v12l5.5-5.5 1.42 1.42L12 19.84l-7.92-7.92L5.5 10.5 11 16z';const mdiArrowUp='M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8z';const mdiCheck='M21 7 9 19l-5.5-5.5 1.41-1.41L9 16.17 19.59 5.59z';const mdiCheckCircle='M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10 10-4.5 10-10S17.5 2 12 2m-2 15-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8z';const mdiChevronDown='M7.41 8.58 12 13.17l4.59-4.59L18 10l-6 6-6-6z';const mdiChevronLeft='M15.41 16.58 10.83 12l4.58-4.59L14 6l-6 6 6 6z';const mdiChevronRight='M8.59 16.58 13.17 12 8.59 7.41 10 6l6 6-6 6z';const mdiChevronUp='M7.41 15.41 12 10.83l4.59 4.58L18 14l-6-6-6 6z';const mdiClose='M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z';const mdiCloseCircle='M12 2a10 10 0 1 1 0 20 10 10 0 1 1 0-20m3.59 5L12 10.59 8.41 7 7 8.41 10.59 12 7 15.59 8.41 17 12 13.41 15.59 17 17 15.59 13.41 12 17 8.41z';const mdiDragVertical='M9 3h2v2H9zm4 0h2v2h-2zM9 7h2v2H9zm4 0h2v2h-2zm-4 4h2v2H9zm4 0h2v2h-2zm-4 4h2v2H9zm4 0h2v2h-2zm-4 4h2v2H9zm4 0h2v2h-2z';const mdiImageBroken='M19 3a2 2 0 0 1 2 2v6h-2v2h-2v2h-2v2h-2v2h-2v2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2zm2 12v4a2 2 0 0 1-2 2h-4v-2h2v-2h2v-2zm-2-6.5a.5.5 0 0 0-.5-.5h-13a.5.5 0 0 0-.5.5v7a.5.5 0 0 0 .5.5H11v-1h2v-2h2v-2h2V9h2z';const mdiInformation='M13 9h-2V7h2m0 10h-2v-6h2m-1-9A10 10 0 0 0 2 12a10 10 0 0 0 10 10 10 10 0 0 0 10-10A10 10 0 0 0 12 2';const mdiMagnifyMinusOutline='M15.5 14h-.79l-.28-.27A6.5 6.5 0 0 0 16 9.5 6.5 6.5 0 0 0 9.5 3 6.5 6.5 0 0 0 3 9.5 6.5 6.5 0 0 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 5 1.5-1.5zm-6 0C7 14 5 12 5 9.5S7 5 9.5 5 14 7 14 9.5 12 14 9.5 14M7 9h5v1H7z';const mdiMagnifyPlusOutline='m15.5 14 5 5-1.5 1.5-5-5v-.79l-.27-.28A6.5 6.5 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3 6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.57 4.23l.28.27zm-6 0C12 14 14 12 14 9.5S12 5 9.5 5 5 7 5 9.5 7 14 9.5 14m2.5-4h-2v2H9v-2H7V9h2V7h1v2h2z';const mdiMenuDown='m7 10 5 5 5-5z';const mdiMinus='M19 13H5v-2h14z';const mdiPauseCircleOutline='M13 16V8h2v8zm-4 0V8h2v8zm3-14a10 10 0 0 1 10 10 10 10 0 0 1-10 10A10 10 0 0 1 2 12 10 10 0 0 1 12 2m0 2a8 8 0 0 0-8 8 8 8 0 0 0 8 8 8 8 0 0 0 8-8 8 8 0 0 0-8-8';const mdiPlayCircleOutline='M12 20a8.01 8.01 0 0 1 0-16 8.01 8.01 0 0 1 0 16m0-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 2m-2 14.5 6-4.5-6-4.5z';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 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 2';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';
319
315
 
320
316
  const _excluded$1t = ["prefix"];
321
-
322
- /**
323
- * Enhance isEmpty method to also works with numbers.
324
- *
325
- * @param value The value to check.
326
- * @return Whether the input value is empty or != 0.
327
- */
328
- const _isEmpty = value => {
329
- if (typeof value === 'number') {
330
- return value === 0;
331
- }
332
- return isEmpty(value);
333
- };
317
+ /** Transform camelCase to kebab-case */
318
+ function camelToKebabCase(str) {
319
+ return str.replace(/([a-z0-9])([A-Z])/g, '$1-$2').toLowerCase();
320
+ }
334
321
 
335
322
  /**
336
323
  * Get the basic CSS class for the given type.
@@ -346,18 +333,18 @@ function getBasicClass(_ref) {
346
333
  type,
347
334
  value
348
335
  } = _ref;
349
- if (isBoolean(value)) {
336
+ if (typeof value === 'boolean') {
350
337
  if (!value) {
351
338
  // False value should not return a class.
352
339
  return '';
353
340
  }
354
341
  const booleanPrefixes = ['has', 'is'];
355
342
  if (booleanPrefixes.some(booleanPrefix => type.toString().startsWith(booleanPrefix))) {
356
- return `${prefix}--${kebabCase(type)}`;
343
+ return `${prefix}--${camelToKebabCase(type)}`;
357
344
  }
358
- return `${prefix}--is-${kebabCase(type)}`;
345
+ return `${prefix}--is-${camelToKebabCase(type)}`;
359
346
  }
360
- return `${prefix}--${kebabCase(type)}-${value}`;
347
+ return `${prefix}--${camelToKebabCase(type)}-${value}`;
361
348
  }
362
349
 
363
350
  /**
@@ -377,14 +364,18 @@ function handleBasicClasses(_ref2) {
377
364
  } = _ref2,
378
365
  props = _objectWithoutProperties(_ref2, _excluded$1t);
379
366
  const otherClasses = {};
380
- if (!isEmpty(props)) {
381
- Object.keys(props).forEach(prop => {
382
- otherClasses[getBasicClass({
383
- prefix,
384
- type: prop,
385
- value: props[prop]
386
- })] = isBoolean(props[prop]) ? props[prop] : !_isEmpty(props[prop]);
387
- });
367
+ const propKeys = Object.keys(props);
368
+ if (propKeys.length > 1) {
369
+ for (const prop of propKeys) {
370
+ if (props[prop]) {
371
+ const className = getBasicClass({
372
+ prefix,
373
+ type: prop,
374
+ value: props[prop]
375
+ });
376
+ otherClasses[className] = true;
377
+ }
378
+ }
388
379
  }
389
380
  return classNames(prefix, otherClasses);
390
381
  }
@@ -514,58 +505,6 @@ function onButtonPressed(handler) {
514
505
  };
515
506
  }
516
507
 
517
- /**
518
- * The prefix to use for the CSS classes.
519
- */
520
- const CSS_PREFIX = 'lumx';
521
-
522
- /**
523
- * Animation duration constants. Take into consideration that if you change one of these variables,
524
- * you need to update their scss counterpart as well
525
- */
526
- const DIALOG_TRANSITION_DURATION = 400;
527
- const EXPANSION_PANEL_TRANSITION_DURATION = 400;
528
- const NOTIFICATION_TRANSITION_DURATION = 200;
529
-
530
- /**
531
- * Delay on hover after which we open or close the tooltip.
532
- * Only applies to devices supporting pointer hover.
533
- */
534
- const TOOLTIP_HOVER_DELAY = {
535
- open: 500,
536
- close: 500
537
- };
538
-
539
- /**
540
- * Delay on long press after which we open or close the tooltip.
541
- * Only applies to devices not supporting pointer hover.
542
- */
543
- const TOOLTIP_LONG_PRESS_DELAY = {
544
- open: 250,
545
- close: 3000
546
- };
547
-
548
- // See https://regex101.com/r/YjS1uI/3
549
- const LAST_PART_CLASSNAME = /^(.*)-(.+)$/gi;
550
-
551
- /**
552
- * Get the name of the root CSS class of a component based on its name.
553
- *
554
- * @param componentName The name of the component. This name should contains the component prefix and be
555
- * written in PascalCase.
556
- * @param subComponent Whether the current component is a sub component, if true, define the class according
557
- * to BEM standards.
558
- * @return The name of the root CSS class. This classname include the CSS classname prefix and is written in
559
- * lower-snake-case.
560
- */
561
- function getRootClassName(componentName, subComponent) {
562
- const formattedClassName = `${CSS_PREFIX}-${kebabCase(componentName)}`;
563
- if (subComponent) {
564
- return formattedClassName.replace(LAST_PART_CLASSNAME, '$1__$2');
565
- }
566
- return formattedClassName;
567
- }
568
-
569
508
  /**
570
509
  * Returns the classname associated to the given typography.
571
510
  * For example, for `Typography.title` it returns `lumx-typography-title`
@@ -630,12 +569,12 @@ const CONFIG$1 = {
630
569
  /**
631
570
  * Component display name.
632
571
  */
633
- const COMPONENT_NAME$1n = 'AlertDialog';
572
+ const COMPONENT_NAME$1l = 'AlertDialog';
634
573
 
635
574
  /**
636
575
  * Component default class name and class prefix.
637
576
  */
638
- const CLASSNAME$1k = getRootClassName(COMPONENT_NAME$1n);
577
+ const CLASSNAME$1k = 'lumx-alert-dialog';
639
578
 
640
579
  /**
641
580
  * Component default props.
@@ -735,7 +674,7 @@ const AlertDialog = forwardRef((props, ref) => {
735
674
  }), confirmLabel))
736
675
  })));
737
676
  });
738
- AlertDialog.displayName = COMPONENT_NAME$1n;
677
+ AlertDialog.displayName = COMPONENT_NAME$1l;
739
678
  AlertDialog.className = CLASSNAME$1k;
740
679
  AlertDialog.defaultProps = DEFAULT_PROPS$14;
741
680
 
@@ -809,12 +748,12 @@ const _excluded$1r = ["anchorToInput", "children", "chips", "className", "closeO
809
748
  /**
810
749
  * Component display name.
811
750
  */
812
- const COMPONENT_NAME$1m = 'Autocomplete';
751
+ const COMPONENT_NAME$1k = 'Autocomplete';
813
752
 
814
753
  /**
815
754
  * Component default class name and class prefix.
816
755
  */
817
- const CLASSNAME$1j = getRootClassName(COMPONENT_NAME$1m);
756
+ const CLASSNAME$1j = 'lumx-autocomplete';
818
757
 
819
758
  /**
820
759
  * Component default props.
@@ -916,7 +855,7 @@ const Autocomplete = forwardRef((props, ref) => {
916
855
  theme: theme
917
856
  }, children));
918
857
  });
919
- Autocomplete.displayName = COMPONENT_NAME$1m;
858
+ Autocomplete.displayName = COMPONENT_NAME$1k;
920
859
  Autocomplete.className = CLASSNAME$1j;
921
860
  Autocomplete.defaultProps = DEFAULT_PROPS$13;
922
861
 
@@ -929,12 +868,12 @@ const _excluded$1q = ["anchorToInput", "children", "chipsAlignment", "className"
929
868
  /**
930
869
  * Component display name.
931
870
  */
932
- const COMPONENT_NAME$1l = 'AutocompleteMultiple';
871
+ const COMPONENT_NAME$1j = 'AutocompleteMultiple';
933
872
 
934
873
  /**
935
874
  * Component default class name and class prefix.
936
875
  */
937
- const CLASSNAME$1i = getRootClassName(COMPONENT_NAME$1l);
876
+ const CLASSNAME$1i = 'lumx-autocomplete-multiple';
938
877
 
939
878
  /**
940
879
  * Component default props.
@@ -1043,7 +982,7 @@ const AutocompleteMultiple = forwardRef((props, ref) => {
1043
982
  onInfiniteScroll: onInfiniteScroll
1044
983
  }), children);
1045
984
  });
1046
- AutocompleteMultiple.displayName = COMPONENT_NAME$1l;
985
+ AutocompleteMultiple.displayName = COMPONENT_NAME$1j;
1047
986
  AutocompleteMultiple.className = CLASSNAME$1i;
1048
987
  AutocompleteMultiple.defaultProps = DEFAULT_PROPS$12;
1049
988
 
@@ -1060,12 +999,12 @@ const _excluded$1p = ["actions", "alt", "badge", "className", "image", "linkProp
1060
999
  /**
1061
1000
  * Component display name.
1062
1001
  */
1063
- const COMPONENT_NAME$1k = 'Avatar';
1002
+ const COMPONENT_NAME$1i = 'Avatar';
1064
1003
 
1065
1004
  /**
1066
1005
  * Component default class name and class prefix.
1067
1006
  */
1068
- const CLASSNAME$1h = getRootClassName(COMPONENT_NAME$1k);
1007
+ const CLASSNAME$1h = 'lumx-avatar';
1069
1008
 
1070
1009
  /**
1071
1010
  * Component default props.
@@ -1124,7 +1063,7 @@ const Avatar = forwardRef((props, ref) => {
1124
1063
  className: `${CLASSNAME$1h}__badge`
1125
1064
  }, badge));
1126
1065
  });
1127
- Avatar.displayName = COMPONENT_NAME$1k;
1066
+ Avatar.displayName = COMPONENT_NAME$1i;
1128
1067
  Avatar.className = CLASSNAME$1h;
1129
1068
  Avatar.defaultProps = DEFAULT_PROPS$11;
1130
1069
 
@@ -1137,12 +1076,12 @@ const _excluded$1o = ["children", "className", "color"];
1137
1076
  /**
1138
1077
  * Component display name.
1139
1078
  */
1140
- const COMPONENT_NAME$1j = 'Badge';
1079
+ const COMPONENT_NAME$1h = 'Badge';
1141
1080
 
1142
1081
  /**
1143
1082
  * Component default class name and class prefix.
1144
1083
  */
1145
- const CLASSNAME$1g = getRootClassName(COMPONENT_NAME$1j);
1084
+ const CLASSNAME$1g = 'lumx-badge';
1146
1085
 
1147
1086
  /**
1148
1087
  * Component default props.
@@ -1174,7 +1113,7 @@ const Badge = forwardRef((props, ref) => {
1174
1113
  }))
1175
1114
  }), children);
1176
1115
  });
1177
- Badge.displayName = COMPONENT_NAME$1j;
1116
+ Badge.displayName = COMPONENT_NAME$1h;
1178
1117
  Badge.className = CLASSNAME$1g;
1179
1118
  Badge.defaultProps = DEFAULT_PROPS$10;
1180
1119
 
@@ -1377,12 +1316,12 @@ const _excluded$1m = ["after", "before", "children", "className", "isHighlighted
1377
1316
  /**
1378
1317
  * Component display name.
1379
1318
  */
1380
- const COMPONENT_NAME$1i = 'ListItem';
1319
+ const COMPONENT_NAME$1g = 'ListItem';
1381
1320
 
1382
1321
  /**
1383
1322
  * Component default class name and class prefix.
1384
1323
  */
1385
- const CLASSNAME$1f = getRootClassName(COMPONENT_NAME$1i);
1324
+ const CLASSNAME$1f = 'lumx-list-item';
1386
1325
 
1387
1326
  /**
1388
1327
  * Component default props.
@@ -1473,78 +1412,15 @@ const ListItem = forwardRef((props, ref) => {
1473
1412
  className: `${CLASSNAME$1f}__wrapper`
1474
1413
  }, content));
1475
1414
  });
1476
- ListItem.displayName = COMPONENT_NAME$1i;
1415
+ ListItem.displayName = COMPONENT_NAME$1g;
1477
1416
  ListItem.className = CLASSNAME$1f;
1478
1417
  ListItem.defaultProps = DEFAULT_PROPS$$;
1479
1418
 
1480
- /** Get types of the values of a record. */
1481
-
1482
- /**
1483
- * Properties of a component to use to determine it's name.
1484
- * In the order of preference.
1485
- */
1486
- const NAME_PROPERTIES = ['type', 'type.displayName', 'displayName', 'name', 'type.name', 'props.mdxType', '_reactInternalFiber.elementType.name'];
1487
-
1488
- /** LumX Component Type. */
1489
-
1490
- /** Union type of all heading elements */
1491
-
1492
- /** Union type of all text elements */
1493
-
1494
- /**
1495
- * Define a generic props types.
1496
- */
1497
-
1498
- /**
1499
- * Callback function type alias (use for readability)
1500
- */
1501
-
1502
- /**
1503
- * Create a predicate function that checks if a ReactNode is a react element from the given component.
1504
- *
1505
- * @param component React function component or the component name
1506
- * @return predicate returning true if value is instance of the component
1507
- */
1508
- const isComponent = component => instance => {
1509
- const componentName = typeof component === 'string' ? component : component.displayName;
1510
- return !!get(instance, '$$typeof') && NAME_PROPERTIES.some(nameProperty => get(instance, nameProperty) === componentName);
1511
- };
1512
-
1513
1419
  /**
1514
1420
  * Similar to `isComponent` but more precise as it's not based on the component `displayName` but on the component function reference.
1515
1421
  */
1516
1422
  const isComponentType = type => node => /*#__PURE__*/React__default.isValidElement(node) && node.type === type;
1517
1423
 
1518
- /**
1519
- * JS falsy values.
1520
- * (excluding `NaN` as it can't be distinguished from `number`)
1521
- */
1522
-
1523
- /**
1524
- * Require either `aria-label` or `arial-labelledby` prop.
1525
- * If none are set, the order will prioritize `aria-labelledby` over `aria-label` as it
1526
- * needs a visible element.
1527
- */
1528
-
1529
- /**
1530
- * Extract ref type for a component or JSX intrinsic element
1531
- *
1532
- * @example ComponentRef<'div'> => React.Ref<HTMLDivElement>
1533
- * @example ComponentRef<Button> => React.Ref<HTMLButtonElement
1534
- */
1535
-
1536
- /**
1537
- * Rectangle size
1538
- */
1539
-
1540
- /**
1541
- * Maybe a HTMLElement or a React ref of a HTMLElement
1542
- */
1543
-
1544
- /**
1545
- * A point coordinate in 2D space
1546
- */
1547
-
1548
1424
  var reactIs = {exports: {}};
1549
1425
 
1550
1426
  var reactIs_production_min = {};
@@ -1848,7 +1724,7 @@ function onKeyboardFocus(props, handler) {
1848
1724
  };
1849
1725
  }
1850
1726
  const isNavigableItem = node => {
1851
- return isComponent('ListItem')(node) && isClickable(node.props) && !node.props.isDisabled;
1727
+ return isComponentType(ListItem)(node) && isClickable(node.props) && !node.props.isDisabled;
1852
1728
  };
1853
1729
 
1854
1730
  /**
@@ -1985,12 +1861,12 @@ const _excluded$1l = ["children", "className", "isClickable", "itemPadding", "on
1985
1861
  /**
1986
1862
  * Component display name.
1987
1863
  */
1988
- const COMPONENT_NAME$1h = 'List';
1864
+ const COMPONENT_NAME$1f = 'List';
1989
1865
 
1990
1866
  /**
1991
1867
  * Component default class name and class prefix.
1992
1868
  */
1993
- const CLASSNAME$1e = getRootClassName(COMPONENT_NAME$1h);
1869
+ const CLASSNAME$1e = 'lumx-list';
1994
1870
 
1995
1871
  /**
1996
1872
  * Component default props.
@@ -2036,13 +1912,44 @@ const InternalList = forwardRef((props, ref) => {
2036
1912
  ref: mergeRefs(ref, listElementRef)
2037
1913
  }), items);
2038
1914
  });
2039
- InternalList.displayName = COMPONENT_NAME$1h;
1915
+ InternalList.displayName = COMPONENT_NAME$1f;
2040
1916
  InternalList.className = CLASSNAME$1e;
2041
1917
  InternalList.defaultProps = DEFAULT_PROPS$_;
2042
1918
  const List = Object.assign(InternalList, {
2043
1919
  useKeyboardListNavigation
2044
1920
  });
2045
1921
 
1922
+ /**
1923
+ * The prefix to use for the CSS classes.
1924
+ */
1925
+ const CSS_PREFIX = 'lumx';
1926
+
1927
+ /**
1928
+ * Animation duration constants. Take into consideration that if you change one of these variables,
1929
+ * you need to update their scss counterpart as well
1930
+ */
1931
+ const DIALOG_TRANSITION_DURATION = 400;
1932
+ const EXPANSION_PANEL_TRANSITION_DURATION = 400;
1933
+ const NOTIFICATION_TRANSITION_DURATION = 200;
1934
+
1935
+ /**
1936
+ * Delay on hover after which we open or close the tooltip.
1937
+ * Only applies to devices supporting pointer hover.
1938
+ */
1939
+ const TOOLTIP_HOVER_DELAY = {
1940
+ open: 500,
1941
+ close: 500
1942
+ };
1943
+
1944
+ /**
1945
+ * Delay on long press after which we open or close the tooltip.
1946
+ * Only applies to devices not supporting pointer hover.
1947
+ */
1948
+ const TOOLTIP_LONG_PRESS_DELAY = {
1949
+ open: 250,
1950
+ close: 3000
1951
+ };
1952
+
2046
1953
  /**
2047
1954
  * Optional global `window` instance (not defined when running SSR).
2048
1955
  */
@@ -4670,12 +4577,12 @@ const _excluded$1k = ["anchorRef", "as", "children", "className", "closeOnClickA
4670
4577
  /**
4671
4578
  * Component display name.
4672
4579
  */
4673
- const COMPONENT_NAME$1g = 'Popover';
4580
+ const COMPONENT_NAME$1e = 'Popover';
4674
4581
 
4675
4582
  /**
4676
4583
  * Component default class name and class prefix.
4677
4584
  */
4678
- const CLASSNAME$1d = getRootClassName(COMPONENT_NAME$1g);
4585
+ const CLASSNAME$1d = 'lumx-popover';
4679
4586
 
4680
4587
  /**
4681
4588
  * Component default props.
@@ -4781,7 +4688,7 @@ const _InnerPopover = forwardRef((props, ref) => {
4781
4688
  value: undefined
4782
4689
  }, children))), usePortal) : null;
4783
4690
  });
4784
- _InnerPopover.displayName = COMPONENT_NAME$1g;
4691
+ _InnerPopover.displayName = COMPONENT_NAME$1e;
4785
4692
 
4786
4693
  /**
4787
4694
  * Popover component.
@@ -4793,7 +4700,7 @@ _InnerPopover.displayName = COMPONENT_NAME$1g;
4793
4700
  const Popover = skipRender(
4794
4701
  // Skip render in SSR
4795
4702
  () => Boolean(DOCUMENT), _InnerPopover);
4796
- Popover.displayName = COMPONENT_NAME$1g;
4703
+ Popover.displayName = COMPONENT_NAME$1e;
4797
4704
  Popover.className = CLASSNAME$1d;
4798
4705
  Popover.defaultProps = DEFAULT_PROPS$Z;
4799
4706
 
@@ -4849,12 +4756,12 @@ const _excluded$1j = ["anchorRef", "children", "className", "closeOnClick", "clo
4849
4756
  /**
4850
4757
  * Component display name.
4851
4758
  */
4852
- const COMPONENT_NAME$1f = 'Dropdown';
4759
+ const COMPONENT_NAME$1d = 'Dropdown';
4853
4760
 
4854
4761
  /**
4855
4762
  * Component default class name and class prefix.
4856
4763
  */
4857
- const CLASSNAME$1c = getRootClassName(COMPONENT_NAME$1f);
4764
+ const CLASSNAME$1c = 'lumx-dropdown';
4858
4765
 
4859
4766
  /**
4860
4767
  * Component default props.
@@ -4901,7 +4808,7 @@ const Dropdown = forwardRef((props, ref) => {
4901
4808
  const listElement = useRef(null);
4902
4809
  useInfiniteScroll(innerRef, onInfiniteScroll);
4903
4810
  const popperElement = useMemo(() => {
4904
- return !Array.isArray(children) && isComponent(List)(children) ? /*#__PURE__*/cloneElement(children, _objectSpread2(_objectSpread2({}, children.props), {}, {
4811
+ return !Array.isArray(children) && isComponentType(List)(children) ? /*#__PURE__*/cloneElement(children, _objectSpread2(_objectSpread2({}, children.props), {}, {
4905
4812
  ref: listElement,
4906
4813
  onClick(evt) {
4907
4814
  var _children$props$onCli, _children$props;
@@ -4935,7 +4842,7 @@ const Dropdown = forwardRef((props, ref) => {
4935
4842
  ref: innerRef
4936
4843
  }, popperElement)) : null;
4937
4844
  });
4938
- Dropdown.displayName = COMPONENT_NAME$1f;
4845
+ Dropdown.displayName = COMPONENT_NAME$1d;
4939
4846
  Dropdown.className = CLASSNAME$1c;
4940
4847
  Dropdown.defaultProps = DEFAULT_PROPS$Y;
4941
4848
 
@@ -4960,12 +4867,12 @@ const _excluded$1i = ["children", "className", "kind", "theme"];
4960
4867
  /**
4961
4868
  * Component display name.
4962
4869
  */
4963
- const COMPONENT_NAME$1e = 'InputHelper';
4870
+ const COMPONENT_NAME$1c = 'InputHelper';
4964
4871
 
4965
4872
  /**
4966
4873
  * Component default class name and class prefix.
4967
4874
  */
4968
- const CLASSNAME$1b = getRootClassName(COMPONENT_NAME$1e);
4875
+ const CLASSNAME$1b = 'lumx-input-helper';
4969
4876
 
4970
4877
  /**
4971
4878
  * Component default props.
@@ -5003,7 +4910,7 @@ const InputHelper = forwardRef((props, ref) => {
5003
4910
  }))
5004
4911
  }), children);
5005
4912
  });
5006
- InputHelper.displayName = COMPONENT_NAME$1e;
4913
+ InputHelper.displayName = COMPONENT_NAME$1c;
5007
4914
  InputHelper.className = CLASSNAME$1b;
5008
4915
  InputHelper.defaultProps = DEFAULT_PROPS$X;
5009
4916
 
@@ -5041,11 +4948,8 @@ const SelectVariant = {
5041
4948
 
5042
4949
  const _excluded$1h = ["children", "className", "focusElement", "isMultiple", "closeOnClick", "disabled", "error", "hasError", "helper", "id", "isDisabled", "isEmpty", "isOpen", "isRequired", "isValid", "label", "onClear", "onDropdownClose", "onInfiniteScroll", "onInputClick", "placeholder", "theme", "value", "variant"];
5043
4950
 
5044
- /** The display name of the component. */
5045
- const COMPONENT_NAME$1d = 'Select';
5046
-
5047
4951
  /** The default class name and classes prefix for this component. */
5048
- const CLASSNAME$1a = getRootClassName(COMPONENT_NAME$1d);
4952
+ const CLASSNAME$1a = 'lumx-select';
5049
4953
 
5050
4954
  /** The default value of props. */
5051
4955
  const DEFAULT_PROPS$W = {
@@ -5155,15 +5059,11 @@ const WithSelectContext = (SelectElement, props, ref) => {
5155
5059
  };
5156
5060
 
5157
5061
  const _excluded$1g = ["badge", "children", "className"];
5158
- /**
5159
- * Component display name.
5160
- */
5161
- const COMPONENT_NAME$1c = 'BadgeWrapper';
5162
5062
 
5163
5063
  /**
5164
5064
  * Component default class name and class prefix.
5165
5065
  */
5166
- const CLASSNAME$19 = getRootClassName(COMPONENT_NAME$1c);
5066
+ const CLASSNAME$19 = 'lumx-badge-wrapper';
5167
5067
  const BadgeWrapper = forwardRef((props, ref) => {
5168
5068
  const {
5169
5069
  badge,
@@ -5331,7 +5231,7 @@ const COMPONENT_NAME$1a = 'Button';
5331
5231
  /**
5332
5232
  * Component default class name and class prefix.
5333
5233
  */
5334
- const CLASSNAME$18 = getRootClassName(COMPONENT_NAME$1a);
5234
+ const CLASSNAME$18 = 'lumx-button';
5335
5235
 
5336
5236
  /**
5337
5237
  * Component default props.
@@ -5380,7 +5280,7 @@ const Button = forwardRef((props, ref) => {
5380
5280
  variant: "button"
5381
5281
  }), leftIcon && /*#__PURE__*/React__default.createElement(Icon, {
5382
5282
  icon: leftIcon
5383
- }), children && (isComponent(Text)(children) ? children : /*#__PURE__*/React__default.createElement("span", null, children)), rightIcon && /*#__PURE__*/React__default.createElement(Icon, {
5283
+ }), children && (isComponentType(Text)(children) ? children : /*#__PURE__*/React__default.createElement("span", null, children)), rightIcon && /*#__PURE__*/React__default.createElement(Icon, {
5384
5284
  icon: rightIcon
5385
5285
  }));
5386
5286
  });
@@ -5397,7 +5297,7 @@ const COMPONENT_NAME$19 = 'IconButton';
5397
5297
  /**
5398
5298
  * Component default class name and class prefix.
5399
5299
  */
5400
- const CLASSNAME$17 = getRootClassName(COMPONENT_NAME$19);
5300
+ const CLASSNAME$17 = 'lumx-icon-button';
5401
5301
 
5402
5302
  /**
5403
5303
  * Component default props.
@@ -5464,7 +5364,7 @@ const COMPONENT_NAME$18 = 'ButtonGroup';
5464
5364
  /**
5465
5365
  * Component default class name and class prefix.
5466
5366
  */
5467
- const CLASSNAME$16 = getRootClassName(COMPONENT_NAME$18);
5367
+ const CLASSNAME$16 = 'lumx-button-group';
5468
5368
 
5469
5369
  /**
5470
5370
  * Component default props.
@@ -5513,7 +5413,7 @@ const COMPONENT_NAME$17 = 'Checkbox';
5513
5413
  /**
5514
5414
  * Component default class name and class prefix.
5515
5415
  */
5516
- const CLASSNAME$15 = getRootClassName(COMPONENT_NAME$17);
5416
+ const CLASSNAME$15 = 'lumx-checkbox';
5517
5417
 
5518
5418
  /**
5519
5419
  * Component default props.
@@ -5643,7 +5543,7 @@ const COMPONENT_NAME$16 = 'Chip';
5643
5543
  /**
5644
5544
  * Component default class name and class prefix.
5645
5545
  */
5646
- const CLASSNAME$14 = getRootClassName(COMPONENT_NAME$16);
5546
+ const CLASSNAME$14 = 'lumx-chip';
5647
5547
 
5648
5548
  /**
5649
5549
  * Component default props.
@@ -5814,7 +5714,7 @@ const COMPONENT_NAME$15 = 'ChipGroup';
5814
5714
  /**
5815
5715
  * Component default class name and class prefix.
5816
5716
  */
5817
- const CLASSNAME$13 = getRootClassName(COMPONENT_NAME$15);
5717
+ const CLASSNAME$13 = 'lumx-chip-group';
5818
5718
 
5819
5719
  /**
5820
5720
  * ChipGroup component.
@@ -5864,7 +5764,7 @@ const COMPONENT_NAME$14 = 'CommentBlock';
5864
5764
  /**
5865
5765
  * Component default class name and class prefix.
5866
5766
  */
5867
- const CLASSNAME$12 = getRootClassName(COMPONENT_NAME$14);
5767
+ const CLASSNAME$12 = 'lumx-comment-block';
5868
5768
 
5869
5769
  /**
5870
5770
  * Component default props.
@@ -5978,7 +5878,7 @@ const COMPONENT_NAME$13 = 'DatePicker';
5978
5878
  /**
5979
5879
  * Component default class name and class prefix.
5980
5880
  */
5981
- const CLASSNAME$11 = getRootClassName(COMPONENT_NAME$13);
5881
+ const CLASSNAME$11 = 'lumx-date-picker';
5982
5882
 
5983
5883
  /** Get first day of week for locale from the browser API */
5984
5884
  const getFromBrowser = locale => {
@@ -6861,8 +6761,8 @@ const _excluded$15 = ["children", "className", "header", "focusElement", "forceF
6861
6761
  * Defines the props of the component.
6862
6762
  */
6863
6763
 
6864
- const isHeader$1 = isComponent('header');
6865
- const isFooter$1 = isComponent('footer');
6764
+ const isHeader$1 = isComponentType('header');
6765
+ const isFooter$1 = isComponentType('footer');
6866
6766
 
6867
6767
  /**
6868
6768
  * Component display name.
@@ -6872,7 +6772,7 @@ const COMPONENT_NAME$10 = 'Dialog';
6872
6772
  /**
6873
6773
  * Component default class name and class prefix.
6874
6774
  */
6875
- const CLASSNAME$10 = getRootClassName(COMPONENT_NAME$10);
6775
+ const CLASSNAME$10 = 'lumx-dialog';
6876
6776
 
6877
6777
  /**
6878
6778
  * Component default props.
@@ -7045,7 +6945,7 @@ const COMPONENT_NAME$$ = 'Divider';
7045
6945
  /**
7046
6946
  * Component default class name and class prefix.
7047
6947
  */
7048
- const CLASSNAME$$ = getRootClassName(COMPONENT_NAME$$);
6948
+ const CLASSNAME$$ = 'lumx-divider';
7049
6949
 
7050
6950
  /**
7051
6951
  * Component default props.
@@ -7093,7 +6993,7 @@ const COMPONENT_NAME$_ = 'DragHandle';
7093
6993
  /**
7094
6994
  * Component default class name and class prefix.
7095
6995
  */
7096
- const CLASSNAME$_ = getRootClassName(COMPONENT_NAME$_);
6996
+ const CLASSNAME$_ = 'lumx-drag-handle';
7097
6997
 
7098
6998
  /**
7099
6999
  * DragHandle component.
@@ -7139,15 +7039,15 @@ const COMPONENT_NAME$Z = 'ExpansionPanel';
7139
7039
  /**
7140
7040
  * Component default class name and class prefix.
7141
7041
  */
7142
- const CLASSNAME$Z = getRootClassName(COMPONENT_NAME$Z);
7042
+ const CLASSNAME$Z = 'lumx-expansion-panel';
7143
7043
 
7144
7044
  /**
7145
7045
  * Component default props.
7146
7046
  */
7147
7047
  const DEFAULT_PROPS$M = {};
7148
- const isDragHandle = isComponent(DragHandle);
7149
- const isHeader = isComponent('header');
7150
- const isFooter = isComponent('footer');
7048
+ const isDragHandle = isComponentType(DragHandle);
7049
+ const isHeader = isComponentType('header');
7050
+ const isFooter = isComponentType('footer');
7151
7051
 
7152
7052
  /**
7153
7053
  * ExpansionPanel component.
@@ -7195,7 +7095,7 @@ const ExpansionPanel = forwardRef((props, ref) => {
7195
7095
  const color = theme === Theme.dark ? ColorPalette.light : ColorPalette.dark;
7196
7096
  const rootClassName = classNames(className, handleBasicClasses({
7197
7097
  hasBackground,
7198
- hasHeader: Boolean(!isEmpty$1(headerProps.children)),
7098
+ hasHeader: Boolean(!isEmpty(headerProps.children)),
7199
7099
  hasHeaderDivider,
7200
7100
  isClose: !isOpen,
7201
7101
  isDraggable: Boolean(dragHandle),
@@ -7253,7 +7153,7 @@ ExpansionPanel.defaultProps = DEFAULT_PROPS$M;
7253
7153
 
7254
7154
  const _excluded$11 = ["label", "icon", "color", "className", "theme", "truncate"];
7255
7155
  const COMPONENT_NAME$Y = 'Flag';
7256
- const CLASSNAME$Y = getRootClassName(COMPONENT_NAME$Y);
7156
+ const CLASSNAME$Y = 'lumx-flag';
7257
7157
  const DEFAULT_PROPS$L = {};
7258
7158
 
7259
7159
  /**
@@ -7315,7 +7215,7 @@ const COMPONENT_NAME$X = 'FlexBox';
7315
7215
  /**
7316
7216
  * Component default class name and class prefix.
7317
7217
  */
7318
- const CLASSNAME$X = getRootClassName(COMPONENT_NAME$X);
7218
+ const CLASSNAME$X = 'lumx-flex-box';
7319
7219
 
7320
7220
  /**
7321
7221
  * FlexBox component.
@@ -7363,7 +7263,7 @@ const COMPONENT_NAME$W = 'GenericBlock';
7363
7263
  /**
7364
7264
  * Component default class name and class prefix.
7365
7265
  */
7366
- const CLASSNAME$W = getRootClassName(COMPONENT_NAME$W);
7266
+ const CLASSNAME$W = 'lumx-generic-block';
7367
7267
 
7368
7268
  /**
7369
7269
  * Component default props.
@@ -7523,7 +7423,7 @@ const COMPONENT_NAME$V = 'Text';
7523
7423
  /**
7524
7424
  * Component default class name and class prefix.
7525
7425
  */
7526
- const CLASSNAME$V = getRootClassName(COMPONENT_NAME$V);
7426
+ const CLASSNAME$V = 'lumx-text';
7527
7427
 
7528
7428
  /**
7529
7429
  * Component default props.
@@ -7584,7 +7484,7 @@ const Text = forwardRef((props, ref) => {
7584
7484
  style: _objectSpread2(_objectSpread2(_objectSpread2({}, truncateLinesStyle), whiteSpaceStyle), style)
7585
7485
  }, forwardedProps), children && Children.toArray(children).map((child, index) => {
7586
7486
  // Force wrap spaces around icons to make sure they are never stuck against text.
7587
- if (isComponent(Icon)(child)) {
7487
+ if (isComponentType(Icon)(child)) {
7588
7488
  return /*#__PURE__*/React__default.createElement(Fragment, {
7589
7489
  key: child.key || index
7590
7490
  }, " ", child, " ");
@@ -7642,7 +7542,7 @@ const COMPONENT_NAME$U = 'Heading';
7642
7542
  /**
7643
7543
  * Component default class name and class prefix.
7644
7544
  */
7645
- const CLASSNAME$U = getRootClassName(COMPONENT_NAME$U);
7545
+ const CLASSNAME$U = 'lumx-heading';
7646
7546
 
7647
7547
  /**
7648
7548
  * Component default props.
@@ -7713,7 +7613,7 @@ const COMPONENT_NAME$T = 'Grid';
7713
7613
  /**
7714
7614
  * Component default class name and class prefix.
7715
7615
  */
7716
- const CLASSNAME$T = getRootClassName(COMPONENT_NAME$T);
7616
+ const CLASSNAME$T = 'lumx-grid';
7717
7617
 
7718
7618
  /**
7719
7619
  * Component default props.
@@ -7774,7 +7674,7 @@ const COMPONENT_NAME$S = 'GridItem';
7774
7674
  /**
7775
7675
  * Component default class name and class prefix.
7776
7676
  */
7777
- const CLASSNAME$S = getRootClassName(COMPONENT_NAME$S);
7677
+ const CLASSNAME$S = 'lumx-grid-item';
7778
7678
 
7779
7679
  /**
7780
7680
  * GridItem component.
@@ -7820,7 +7720,7 @@ const COMPONENT_NAME$R = 'GridColumn';
7820
7720
  /**
7821
7721
  * Component default class name and class prefix.
7822
7722
  */
7823
- const CLASSNAME$R = getRootClassName(COMPONENT_NAME$R);
7723
+ const CLASSNAME$R = 'lumx-grid-column';
7824
7724
 
7825
7725
  /**
7826
7726
  * Component default props.
@@ -7875,7 +7775,7 @@ const COMPONENT_NAME$Q = 'Icon';
7875
7775
  /**
7876
7776
  * Component default class name and class prefix.
7877
7777
  */
7878
- const CLASSNAME$Q = getRootClassName(COMPONENT_NAME$Q);
7778
+ const CLASSNAME$Q = 'lumx-icon';
7879
7779
 
7880
7780
  /**
7881
7781
  * Component default props.
@@ -8040,7 +7940,7 @@ const COMPONENT_NAME$P = 'ImageBlock';
8040
7940
  /**
8041
7941
  * Component default class name and class prefix.
8042
7942
  */
8043
- const CLASSNAME$P = getRootClassName(COMPONENT_NAME$P);
7943
+ const CLASSNAME$P = 'lumx-image-block';
8044
7944
 
8045
7945
  /**
8046
7946
  * Component default props.
@@ -8124,7 +8024,7 @@ const COMPONENT_NAME$O = 'ImageLightbox';
8124
8024
  /**
8125
8025
  * Component default class name and class prefix.
8126
8026
  */
8127
- const CLASSNAME$O = getRootClassName(COMPONENT_NAME$O);
8027
+ const CLASSNAME$O = 'lumx-image-lightbox';
8128
8028
 
8129
8029
  /**
8130
8030
  * Observe element size (only works if it's size depends on the window size).
@@ -8874,7 +8774,7 @@ const COMPONENT_NAME$N = 'InlineList';
8874
8774
  /**
8875
8775
  * Component default class name and class prefix.
8876
8776
  */
8877
- const CLASSNAME$N = getRootClassName(COMPONENT_NAME$N);
8777
+ const CLASSNAME$N = 'lumx-inline-list';
8878
8778
 
8879
8779
  /**
8880
8780
  * Component default props.
@@ -8945,7 +8845,7 @@ const COMPONENT_NAME$M = 'InputLabel';
8945
8845
  /**
8946
8846
  * Component default class name and class prefix.
8947
8847
  */
8948
- const CLASSNAME$M = getRootClassName(COMPONENT_NAME$M);
8848
+ const CLASSNAME$M = 'lumx-input-label';
8949
8849
 
8950
8850
  /**
8951
8851
  * Component default props.
@@ -8998,7 +8898,7 @@ const COMPONENT_NAME$L = 'Lightbox';
8998
8898
  /**
8999
8899
  * Component default class name and class prefix.
9000
8900
  */
9001
- const CLASSNAME$L = getRootClassName(COMPONENT_NAME$L);
8901
+ const CLASSNAME$L = 'lumx-lightbox';
9002
8902
 
9003
8903
  /**
9004
8904
  * Lightbox component.
@@ -9131,7 +9031,7 @@ const COMPONENT_NAME$K = 'Link';
9131
9031
  /**
9132
9032
  * Component default class name and class prefix.
9133
9033
  */
9134
- const CLASSNAME$K = getRootClassName(COMPONENT_NAME$K);
9034
+ const CLASSNAME$K = 'lumx-link';
9135
9035
  const getIconSize = typography => {
9136
9036
  switch (typography) {
9137
9037
  case Typography.display1:
@@ -9242,7 +9142,7 @@ const COMPONENT_NAME$J = 'LinkPreview';
9242
9142
  /**
9243
9143
  * Component default class name and class prefix.
9244
9144
  */
9245
- const CLASSNAME$J = getRootClassName(COMPONENT_NAME$J);
9145
+ const CLASSNAME$J = 'lumx-link-preview';
9246
9146
 
9247
9147
  /**
9248
9148
  * Component default props.
@@ -9342,7 +9242,7 @@ const COMPONENT_NAME$I = 'ListDivider';
9342
9242
  /**
9343
9243
  * Component default class name and class prefix.
9344
9244
  */
9345
- const CLASSNAME$I = getRootClassName(COMPONENT_NAME$I);
9245
+ const CLASSNAME$I = 'lumx-list-divider';
9346
9246
 
9347
9247
  /**
9348
9248
  * ListDivider component.
@@ -9379,7 +9279,7 @@ const COMPONENT_NAME$H = 'ListSubheader';
9379
9279
  /**
9380
9280
  * Component default class name and class prefix.
9381
9281
  */
9382
- const CLASSNAME$H = getRootClassName(COMPONENT_NAME$H);
9282
+ const CLASSNAME$H = 'lumx-list-subheader';
9383
9283
 
9384
9284
  /**
9385
9285
  * ListSubheader component.
@@ -9417,7 +9317,7 @@ const COMPONENT_NAME$G = 'Message';
9417
9317
  /**
9418
9318
  * Component default class name and class prefix.
9419
9319
  */
9420
- const CLASSNAME$G = getRootClassName(COMPONENT_NAME$G);
9320
+ const CLASSNAME$G = 'lumx-message';
9421
9321
 
9422
9322
  /**
9423
9323
  * Associative map from message kind to color and icon.
@@ -9507,7 +9407,7 @@ const COMPONENT_NAME$F = 'Mosaic';
9507
9407
  /**
9508
9408
  * Component default class name and class prefix.
9509
9409
  */
9510
- const CLASSNAME$F = getRootClassName(COMPONENT_NAME$F);
9410
+ const CLASSNAME$F = 'lumx-mosaic';
9511
9411
 
9512
9412
  /**
9513
9413
  * Component default props.
@@ -9596,7 +9496,7 @@ const COMPONENT_NAME$E = 'NavigationItem';
9596
9496
  /**
9597
9497
  * Component default class name and class prefix.
9598
9498
  */
9599
- const CLASSNAME$E = getRootClassName(COMPONENT_NAME$E);
9499
+ const CLASSNAME$E = 'lumx-navigation-item';
9600
9500
  const NavigationItem = Object.assign(forwardRefPolymorphic((props, ref) => {
9601
9501
  const {
9602
9502
  className,
@@ -9658,7 +9558,7 @@ const COMPONENT_NAME$D = 'NavigationSection';
9658
9558
  /**
9659
9559
  * Component default class name and class prefix.
9660
9560
  */
9661
- const CLASSNAME$D = getRootClassName(COMPONENT_NAME$D);
9561
+ const CLASSNAME$D = 'lumx-navigation-section';
9662
9562
  const NavigationSection = forwardRef((props, ref) => {
9663
9563
  const {
9664
9564
  children,
@@ -9739,7 +9639,7 @@ const COMPONENT_NAME$C = 'Navigation';
9739
9639
  /**
9740
9640
  * Component default class name and class prefix.
9741
9641
  */
9742
- const CLASSNAME$C = getRootClassName(COMPONENT_NAME$C);
9642
+ const CLASSNAME$C = 'lumx-navigation';
9743
9643
 
9744
9644
  /**
9745
9645
  * Component default props
@@ -9817,7 +9717,7 @@ const COMPONENT_NAME$B = 'Notification';
9817
9717
  /**
9818
9718
  * Component default class name and class prefix.
9819
9719
  */
9820
- const CLASSNAME$B = getRootClassName(COMPONENT_NAME$B);
9720
+ const CLASSNAME$B = 'lumx-notification';
9821
9721
 
9822
9722
  /**
9823
9723
  * Component default props.
@@ -9921,7 +9821,7 @@ const COMPONENT_NAME$A = 'PopoverDialog';
9921
9821
  /**
9922
9822
  * Component default class name and class prefix.
9923
9823
  */
9924
- const CLASSNAME$A = getRootClassName(COMPONENT_NAME$A);
9824
+ const CLASSNAME$A = 'lumx-popover-dialog';
9925
9825
 
9926
9826
  /**
9927
9827
  * Component default props.
@@ -9980,7 +9880,7 @@ const COMPONENT_NAME$z = 'PostBlock';
9980
9880
  /**
9981
9881
  * Component default class name and class prefix.
9982
9882
  */
9983
- const CLASSNAME$z = getRootClassName(COMPONENT_NAME$z);
9883
+ const CLASSNAME$z = 'lumx-post-block';
9984
9884
 
9985
9885
  /**
9986
9886
  * Component default props.
@@ -10067,7 +9967,7 @@ const COMPONENT_NAME$y = 'ProgressLinear';
10067
9967
  /**
10068
9968
  * Component default class name and class prefix.
10069
9969
  */
10070
- const CLASSNAME$y = getRootClassName(COMPONENT_NAME$y);
9970
+ const CLASSNAME$y = 'lumx-progress-linear';
10071
9971
 
10072
9972
  /**
10073
9973
  * Component default props.
@@ -10123,7 +10023,7 @@ const COMPONENT_NAME$x = 'ProgressCircular';
10123
10023
  /**
10124
10024
  * Component default class name and class prefix.
10125
10025
  */
10126
- const CLASSNAME$x = getRootClassName(COMPONENT_NAME$x);
10026
+ const CLASSNAME$x = 'lumx-progress-circular';
10127
10027
 
10128
10028
  /**
10129
10029
  * Component default props.
@@ -10197,7 +10097,7 @@ const COMPONENT_NAME$w = 'Progress';
10197
10097
  /**
10198
10098
  * Component default class name and class prefix.
10199
10099
  */
10200
- const CLASSNAME$w = getRootClassName(COMPONENT_NAME$w);
10100
+ const CLASSNAME$w = 'lumx-progress';
10201
10101
 
10202
10102
  /**
10203
10103
  * Component default props.
@@ -10498,7 +10398,7 @@ const COMPONENT_NAME$v = 'ProgressTracker';
10498
10398
  /**
10499
10399
  * Component default class name and class prefix.
10500
10400
  */
10501
- const CLASSNAME$v = getRootClassName(COMPONENT_NAME$v);
10401
+ const CLASSNAME$v = 'lumx-progress-tracker';
10502
10402
 
10503
10403
  /**
10504
10404
  * Component default props.
@@ -10574,7 +10474,7 @@ const COMPONENT_NAME$u = 'ProgressTrackerStep';
10574
10474
  /**
10575
10475
  * Component default class name and class prefix.
10576
10476
  */
10577
- const CLASSNAME$u = getRootClassName(COMPONENT_NAME$u);
10477
+ const CLASSNAME$u = 'lumx-progress-tracker-step';
10578
10478
 
10579
10479
  /**
10580
10480
  * Component default props.
@@ -10743,7 +10643,7 @@ const COMPONENT_NAME$s = 'RadioButton';
10743
10643
  /**
10744
10644
  * Component default class name and class prefix.
10745
10645
  */
10746
- const CLASSNAME$s = getRootClassName(COMPONENT_NAME$s);
10646
+ const CLASSNAME$s = 'lumx-radio-button';
10747
10647
 
10748
10648
  /**
10749
10649
  * Component default props.
@@ -10843,7 +10743,7 @@ const COMPONENT_NAME$r = 'RadioGroup';
10843
10743
  /**
10844
10744
  * Component default class name and class prefix.
10845
10745
  */
10846
- const CLASSNAME$r = getRootClassName(COMPONENT_NAME$r);
10746
+ const CLASSNAME$r = 'lumx-radio-group';
10847
10747
 
10848
10748
  /**
10849
10749
  * RadioGroup component.
@@ -10873,7 +10773,7 @@ const _excluded$t = ["anchorRef", "clearButtonProps", "handleKeyboardNav", "hasE
10873
10773
  const COMPONENT_NAME$q = 'Select';
10874
10774
 
10875
10775
  /** The default class name and classes prefix for this component. */
10876
- const CLASSNAME$q = getRootClassName(COMPONENT_NAME$q);
10776
+ const CLASSNAME$q = 'lumx-select';
10877
10777
 
10878
10778
  /** The default value of props. */
10879
10779
  const DEFAULT_PROPS$n = {
@@ -10996,7 +10896,7 @@ const _excluded$s = ["anchorRef", "handleKeyboardNav", "hasError", "icon", "id",
10996
10896
  const COMPONENT_NAME$p = 'Select';
10997
10897
 
10998
10898
  /** The default class name and classes prefix for this component. */
10999
- const CLASSNAME$p = getRootClassName(COMPONENT_NAME$p);
10899
+ const CLASSNAME$p = 'lumx-select';
11000
10900
 
11001
10901
  /** The default value of props. */
11002
10902
  const DEFAULT_PROPS$m = {
@@ -11124,7 +11024,7 @@ const COMPONENT_NAME$o = 'SideNavigation';
11124
11024
  /**
11125
11025
  * Component default class name and class prefix.
11126
11026
  */
11127
- const CLASSNAME$o = getRootClassName(COMPONENT_NAME$o);
11027
+ const CLASSNAME$o = 'lumx-side-navigation';
11128
11028
 
11129
11029
  /**
11130
11030
  * SideNavigation component.
@@ -11141,7 +11041,7 @@ const SideNavigation = forwardRef((props, ref) => {
11141
11041
  theme = defaultTheme
11142
11042
  } = props,
11143
11043
  forwardedProps = _objectWithoutProperties(props, _excluded$r);
11144
- const content = Children.toArray(children).filter(isComponent(SideNavigationItem));
11044
+ const content = Children.toArray(children).filter(isComponentType(SideNavigationItem));
11145
11045
  return /*#__PURE__*/React__default.createElement("ul", _extends({
11146
11046
  ref: ref
11147
11047
  }, forwardedProps, {
@@ -11184,7 +11084,7 @@ const COMPONENT_NAME$n = 'SideNavigationItem';
11184
11084
  /**
11185
11085
  * Component default class name and class prefix.
11186
11086
  */
11187
- const CLASSNAME$n = getRootClassName(COMPONENT_NAME$n);
11087
+ const CLASSNAME$n = 'lumx-side-navigation-item';
11188
11088
 
11189
11089
  /**
11190
11090
  * Component default props.
@@ -11218,8 +11118,8 @@ const SideNavigationItem = forwardRef((props, ref) => {
11218
11118
  closeMode = 'unmount'
11219
11119
  } = props,
11220
11120
  forwardedProps = _objectWithoutProperties(props, _excluded$p);
11221
- const content = children && Children.toArray(children).filter(isComponent(SideNavigationItem));
11222
- const hasContent = !isEmpty$1(content);
11121
+ const content = children && Children.toArray(children).filter(isComponentType(SideNavigationItem));
11122
+ const hasContent = !isEmpty(content);
11223
11123
  const shouldSplitActions = Boolean(onActionClick);
11224
11124
  const showChildren = hasContent && isOpen;
11225
11125
  const contentId = useId();
@@ -11295,7 +11195,7 @@ const COMPONENT_NAME$m = 'SkeletonCircle';
11295
11195
  /**
11296
11196
  * Component default class name and class prefix.
11297
11197
  */
11298
- const CLASSNAME$m = getRootClassName(COMPONENT_NAME$m);
11198
+ const CLASSNAME$m = 'lumx-skeleton-circle';
11299
11199
 
11300
11200
  /**
11301
11201
  * SkeletonCircle component.
@@ -11355,7 +11255,7 @@ const COMPONENT_NAME$l = 'SkeletonRectangle';
11355
11255
  /**
11356
11256
  * Component default class name and class prefix.
11357
11257
  */
11358
- const CLASSNAME$l = getRootClassName(COMPONENT_NAME$l);
11258
+ const CLASSNAME$l = 'lumx-skeleton-rectangle';
11359
11259
 
11360
11260
  /**
11361
11261
  * SkeletonRectangle component.
@@ -11412,7 +11312,7 @@ const COMPONENT_NAME$k = 'SkeletonTypography';
11412
11312
  /**
11413
11313
  * Component default class name and class prefix.
11414
11314
  */
11415
- const CLASSNAME$k = getRootClassName(COMPONENT_NAME$k);
11315
+ const CLASSNAME$k = 'lumx-skeleton-typography';
11416
11316
 
11417
11317
  /**
11418
11318
  * SkeletonTypography component.
@@ -11499,7 +11399,7 @@ const COMPONENT_NAME$j = 'Slider';
11499
11399
  /**
11500
11400
  * Component default class name and class prefix.
11501
11401
  */
11502
- const CLASSNAME$j = getRootClassName(COMPONENT_NAME$j);
11402
+ const CLASSNAME$j = 'lumx-slider';
11503
11403
 
11504
11404
  /**
11505
11405
  * Component default props.
@@ -12082,7 +11982,7 @@ const COMPONENT_NAME$i = 'SlideshowItemGroup';
12082
11982
  /**
12083
11983
  * Component default class name and class prefix.
12084
11984
  */
12085
- const CLASSNAME$i = getRootClassName(COMPONENT_NAME$i);
11985
+ const CLASSNAME$i = 'lumx-slideshow-item-group';
12086
11986
  const buildSlideShowGroupId = (slidesId, index) => `${slidesId}-slide-${index}`;
12087
11987
 
12088
11988
  /**
@@ -12248,7 +12148,7 @@ const COMPONENT_NAME$h = 'SlideshowItem';
12248
12148
  /**
12249
12149
  * Component default class name and class prefix.
12250
12150
  */
12251
- const CLASSNAME$h = getRootClassName(COMPONENT_NAME$h);
12151
+ const CLASSNAME$h = 'lumx-slideshow-item';
12252
12152
 
12253
12153
  /**
12254
12154
  * SlideshowItem component.
@@ -12348,7 +12248,7 @@ const COMPONENT_NAME$g = 'SlideshowControls';
12348
12248
  /**
12349
12249
  * Component default class name and class prefix.
12350
12250
  */
12351
- const CLASSNAME$g = getRootClassName(COMPONENT_NAME$g);
12251
+ const CLASSNAME$g = 'lumx-slideshow-controls';
12352
12252
 
12353
12253
  /**
12354
12254
  * Component default props.
@@ -12501,7 +12401,7 @@ const COMPONENT_NAME$f = 'Slideshow';
12501
12401
  /**
12502
12402
  * Component default class name and class prefix.
12503
12403
  */
12504
- const CLASSNAME$f = getRootClassName(COMPONENT_NAME$f);
12404
+ const CLASSNAME$f = 'lumx-slideshow';
12505
12405
 
12506
12406
  /**
12507
12407
  * Slides component.
@@ -12587,7 +12487,7 @@ const COMPONENT_NAME$e = 'Switch';
12587
12487
  /**
12588
12488
  * Component default class name and class prefix.
12589
12489
  */
12590
- const CLASSNAME$e = getRootClassName(COMPONENT_NAME$e);
12490
+ const CLASSNAME$e = 'lumx-switch';
12591
12491
 
12592
12492
  /**
12593
12493
  * Component default props.
@@ -12691,7 +12591,7 @@ const COMPONENT_NAME$d = 'Table';
12691
12591
  /**
12692
12592
  * Component default class name and class prefix.
12693
12593
  */
12694
- const CLASSNAME$d = getRootClassName(COMPONENT_NAME$d);
12594
+ const CLASSNAME$d = 'lumx-table';
12695
12595
 
12696
12596
  /**
12697
12597
  * Component default props.
@@ -12744,7 +12644,7 @@ const COMPONENT_NAME$c = 'TableBody';
12744
12644
  /**
12745
12645
  * Component default class name and class prefix.
12746
12646
  */
12747
- const CLASSNAME$c = getRootClassName(COMPONENT_NAME$c, true);
12647
+ const CLASSNAME$c = 'lumx-table__body';
12748
12648
 
12749
12649
  /**
12750
12650
  * TableBody component.
@@ -12797,7 +12697,7 @@ const COMPONENT_NAME$b = 'TableCell';
12797
12697
  /**
12798
12698
  * Component default class name and class prefix.
12799
12699
  */
12800
- const CLASSNAME$b = getRootClassName(COMPONENT_NAME$b, true);
12700
+ const CLASSNAME$b = 'lumx-table__cell';
12801
12701
 
12802
12702
  /**
12803
12703
  * Component default props.
@@ -12888,7 +12788,7 @@ const COMPONENT_NAME$a = 'TableHeader';
12888
12788
  /**
12889
12789
  * Component default class name and class prefix.
12890
12790
  */
12891
- const CLASSNAME$a = getRootClassName(COMPONENT_NAME$a, true);
12791
+ const CLASSNAME$a = 'lumx-table__header';
12892
12792
 
12893
12793
  /**
12894
12794
  * Component default props.
@@ -12932,7 +12832,7 @@ const COMPONENT_NAME$9 = 'TableRow';
12932
12832
  /**
12933
12833
  * Component default class name and class prefix.
12934
12834
  */
12935
- const CLASSNAME$9 = getRootClassName(COMPONENT_NAME$9, true);
12835
+ const CLASSNAME$9 = 'lumx-table__row';
12936
12836
 
12937
12837
  /**
12938
12838
  * Component default props.
@@ -13264,7 +13164,7 @@ const COMPONENT_NAME$5 = 'TextField';
13264
13164
  /**
13265
13165
  * Component default class name and class prefix.
13266
13166
  */
13267
- const CLASSNAME$5 = getRootClassName(COMPONENT_NAME$5);
13167
+ const CLASSNAME$5 = 'lumx-text-field';
13268
13168
 
13269
13169
  /**
13270
13170
  * Default minimum number of rows in the multiline mode.
@@ -13733,7 +13633,7 @@ const COMPONENT_NAME$4 = 'Thumbnail';
13733
13633
  /**
13734
13634
  * Component default class name and class prefix.
13735
13635
  */
13736
- const CLASSNAME$4 = getRootClassName(COMPONENT_NAME$4);
13636
+ const CLASSNAME$4 = 'lumx-thumbnail';
13737
13637
 
13738
13638
  /**
13739
13639
  * Component default props.
@@ -13921,7 +13821,7 @@ const COMPONENT_NAME$3 = 'Toolbar';
13921
13821
  /**
13922
13822
  * Component default class name and class prefix.
13923
13823
  */
13924
- const CLASSNAME$3 = getRootClassName(COMPONENT_NAME$3);
13824
+ const CLASSNAME$3 = 'lumx-toolbar';
13925
13825
 
13926
13826
  /**
13927
13827
  * Component default props.
@@ -14168,7 +14068,7 @@ const COMPONENT_NAME$2 = 'Tooltip';
14168
14068
  /**
14169
14069
  * Component default class name and class prefix.
14170
14070
  */
14171
- const CLASSNAME$2 = getRootClassName(COMPONENT_NAME$2);
14071
+ const CLASSNAME$2 = 'lumx-tooltip';
14172
14072
 
14173
14073
  /**
14174
14074
  * Component default props.
@@ -14305,7 +14205,7 @@ const COMPONENT_NAME$1 = 'Uploader';
14305
14205
  /**
14306
14206
  * Component default class name and class prefix.
14307
14207
  */
14308
- const CLASSNAME$1 = getRootClassName(COMPONENT_NAME$1);
14208
+ const CLASSNAME$1 = 'lumx-uploader';
14309
14209
 
14310
14210
  /**
14311
14211
  * Component default props.
@@ -14414,7 +14314,7 @@ const COMPONENT_NAME = 'UserBlock';
14414
14314
  /**
14415
14315
  * Component default class name and class prefix.
14416
14316
  */
14417
- const CLASSNAME = getRootClassName(COMPONENT_NAME);
14317
+ const CLASSNAME = 'lumx-user-block';
14418
14318
 
14419
14319
  /**
14420
14320
  * Component default props.