@lumx/react 3.20.1-alpha.12 → 3.20.1-alpha.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_internal/Button-f19e18df.js +96 -0
- package/_internal/Button-f19e18df.js.map +1 -0
- package/_internal/{cdddaed8.js → ButtonRoot-ab633b1d.js} +19 -20
- package/_internal/ButtonRoot-ab633b1d.js.map +1 -0
- package/_internal/{85e3a5ca.js → Chip-4c572eec.js} +38 -34
- package/_internal/Chip-4c572eec.js.map +1 -0
- package/_internal/{7093ba23.js → ClickAwayProvider-bcce6ceb.js} +4 -6
- package/_internal/ClickAwayProvider-bcce6ceb.js.map +1 -0
- package/_internal/{ea04260d.js → DisabledStateContext-077b7bef.js} +6 -6
- package/_internal/DisabledStateContext-077b7bef.js.map +1 -0
- package/_internal/{370bdaed.js → HeadingLevelProvider-e4817816.js} +5 -7
- package/_internal/HeadingLevelProvider-e4817816.js.map +1 -0
- package/_internal/IconButton-10585058.js +72 -0
- package/_internal/IconButton-10585058.js.map +1 -0
- package/_internal/ImageCaption-4279b2b6.js +65 -0
- package/_internal/ImageCaption-4279b2b6.js.map +1 -0
- package/_internal/{f5508d3d.js → List-d5f5d465.js} +55 -56
- package/_internal/List-d5f5d465.js.map +1 -0
- package/_internal/{b1af5979.js → PopoverDialog-21e5c9dd.js} +165 -171
- package/_internal/PopoverDialog-21e5c9dd.js.map +1 -0
- package/_internal/{3f86608e.js → Portal-c43d098b.js} +2 -5
- package/_internal/Portal-c43d098b.js.map +1 -0
- package/_internal/{2c2b6a89.js → RawClickable-c76bbc4c.js} +7 -9
- package/_internal/RawClickable-c76bbc4c.js.map +1 -0
- package/_internal/{34c59f5b.js → Slides-01f513ce.js} +106 -112
- package/_internal/Slides-01f513ce.js.map +1 -0
- package/_internal/{3181f000.js → ThemeContext-3181f000.js} +1 -1
- package/_internal/ThemeContext-3181f000.js.map +1 -0
- package/_internal/{628468c4.js → Thumbnail-30d2a781.js} +50 -51
- package/_internal/Thumbnail-30d2a781.js.map +1 -0
- package/_internal/{3a4e4636.js → components/alert-dialog-8f1c163c.js} +39 -54
- package/_internal/components/alert-dialog-8f1c163c.js.map +1 -0
- package/_internal/{179a84d1.js → components/autocomplete-bfbdeb3c.js} +72 -67
- package/_internal/components/autocomplete-bfbdeb3c.js.map +1 -0
- package/_internal/components/avatar-6990e3e9.js +87 -0
- package/_internal/components/avatar-6990e3e9.js.map +1 -0
- package/_internal/{9c9df5f2.js → components/badge-81543bc7.js} +20 -19
- package/_internal/components/badge-81543bc7.js.map +1 -0
- package/_internal/{f93fe83e.js → components/button-927abe71.js} +14 -11
- package/_internal/components/button-927abe71.js.map +1 -0
- package/_internal/components/checkbox-dc4caec8.js +131 -0
- package/_internal/{f0900583.js.map → components/checkbox-dc4caec8.js.map} +1 -1
- package/_internal/{c0414b89.js → components/chip-fb3d0c76.js} +13 -10
- package/_internal/components/chip-fb3d0c76.js.map +1 -0
- package/_internal/components/comment-block-b84c4694.js +121 -0
- package/_internal/components/comment-block-b84c4694.js.map +1 -0
- package/_internal/components/date-picker-a425534c.js +2 -0
- package/_internal/components/date-picker-a425534c.js.map +1 -0
- package/_internal/{2f1716fa.js → components/dialog-7dbcb485.js} +69 -80
- package/_internal/components/dialog-7dbcb485.js.map +1 -0
- package/_internal/{3e653144.js → components/divider-12e9b6a0.js} +13 -9
- package/_internal/components/divider-12e9b6a0.js.map +1 -0
- package/_internal/components/drag-handle-a38ff757.js +53 -0
- package/_internal/components/drag-handle-a38ff757.js.map +1 -0
- package/_internal/{1ea72630.js → components/dropdown-38b0b6a0.js} +19 -17
- package/_internal/components/dropdown-38b0b6a0.js.map +1 -0
- package/_internal/{68c10f98.js → components/expansion-panel-c4b93653.js} +46 -54
- package/_internal/components/expansion-panel-c4b93653.js.map +1 -0
- package/_internal/{c2388b10.js → components/flag-c5e2f5f0.js} +19 -22
- package/_internal/components/flag-c5e2f5f0.js.map +1 -0
- package/_internal/{329b5f12.js → components/flex-box-c8701a85.js} +13 -10
- package/_internal/components/flex-box-c8701a85.js.map +1 -0
- package/_internal/{a84f4981.js → components/generic-block-0d6ad5a6.js} +30 -37
- package/_internal/components/generic-block-0d6ad5a6.js.map +1 -0
- package/_internal/{2f6c7f84.js → components/grid-3b194fe8.js} +22 -16
- package/_internal/components/grid-3b194fe8.js.map +1 -0
- package/_internal/{501f2f9f.js → components/grid-column-985b9327.js} +10 -8
- package/_internal/components/grid-column-985b9327.js.map +1 -0
- package/_internal/{193521fa.js → components/heading-5e954dfc.js} +13 -11
- package/_internal/components/heading-5e954dfc.js.map +1 -0
- package/_internal/{8ab42752.js → components/icon-2e7345ad.js} +29 -29
- package/_internal/components/icon-2e7345ad.js.map +1 -0
- package/_internal/components/image-block-8d21dd7e.js +109 -0
- package/_internal/components/image-block-8d21dd7e.js.map +1 -0
- package/_internal/{7f54e947.js → components/image-lightbox-4a5ab962.js} +105 -120
- package/_internal/components/image-lightbox-4a5ab962.js.map +1 -0
- package/_internal/{15eab19b.js → components/inline-list-4884f004.js} +25 -26
- package/_internal/components/inline-list-4884f004.js.map +1 -0
- package/_internal/{5f8f9454.js → components/input-helper-e644e05e.js} +14 -11
- package/_internal/components/input-helper-e644e05e.js.map +1 -0
- package/_internal/{b0a7a999.js → components/input-label-5e509a1b.js} +14 -12
- package/_internal/components/input-label-5e509a1b.js.map +1 -0
- package/_internal/{86aa4aa4.js → components/lightbox-bec1b95f.js} +59 -64
- package/_internal/components/lightbox-bec1b95f.js.map +1 -0
- package/_internal/components/link-9637b9e4.js +70 -0
- package/_internal/components/link-9637b9e4.js.map +1 -0
- package/_internal/components/link-preview-7a4a6e4b.js +108 -0
- package/_internal/components/link-preview-7a4a6e4b.js.map +1 -0
- package/_internal/{95cfd814.js → components/list-5c8f7122.js} +21 -14
- package/_internal/components/list-5c8f7122.js.map +1 -0
- package/_internal/{0be1006e.js → components/message-a67067d9.js} +27 -28
- package/_internal/components/message-a67067d9.js.map +1 -0
- package/_internal/components/mosaic-92b66c80.js +92 -0
- package/_internal/components/mosaic-92b66c80.js.map +1 -0
- package/_internal/components/navigation-4fd3917d.js +210 -0
- package/_internal/components/navigation-4fd3917d.js.map +1 -0
- package/_internal/{5ec059fe.js → components/notification-9063c963.js} +47 -52
- package/_internal/components/notification-9063c963.js.map +1 -0
- package/_internal/components/popover-3c4c54bd.js +3 -0
- package/_internal/components/popover-3c4c54bd.js.map +1 -0
- package/_internal/components/post-block-0cfc2206.js +99 -0
- package/_internal/components/post-block-0cfc2206.js.map +1 -0
- package/_internal/{f23cdf84.js → components/progress-eaf5b33d.js} +53 -46
- package/_internal/components/progress-eaf5b33d.js.map +1 -0
- package/_internal/{edab29ce.js → components/progress-tracker-4a65718d.js} +70 -69
- package/_internal/components/progress-tracker-4a65718d.js.map +1 -0
- package/_internal/components/radio-button-3ef8a325.js +148 -0
- package/_internal/components/radio-button-3ef8a325.js.map +1 -0
- package/_internal/components/select-d46cfe35.js +404 -0
- package/_internal/components/select-d46cfe35.js.map +1 -0
- package/_internal/{b477da26.js → components/side-navigation-75b22f19.js} +62 -67
- package/_internal/components/side-navigation-75b22f19.js.map +1 -0
- package/_internal/{6da19518.js → components/skeleton-361ce335.js} +34 -25
- package/_internal/components/skeleton-361ce335.js.map +1 -0
- package/_internal/{db4fdc7b.js → components/slider-8094cb5c.js} +60 -65
- package/_internal/components/slider-8094cb5c.js.map +1 -0
- package/_internal/{eaa8b1d8.js → components/slideshow-2e8cd372.js} +41 -41
- package/_internal/components/slideshow-2e8cd372.js.map +1 -0
- package/_internal/components/switch-5516949b.js +118 -0
- package/_internal/components/switch-5516949b.js.map +1 -0
- package/_internal/{be6da9b0.js → components/table-fa198ee6.js} +76 -73
- package/_internal/components/table-fa198ee6.js.map +1 -0
- package/_internal/{65f91970.js → components/tabs-bb9bc2a5.js} +48 -47
- package/_internal/components/tabs-bb9bc2a5.js.map +1 -0
- package/_internal/components/text-289c0526.js +2 -0
- package/_internal/components/text-289c0526.js.map +1 -0
- package/_internal/{b0b2e33d.js → components/text-field-82733568.js} +109 -122
- package/_internal/components/text-field-82733568.js.map +1 -0
- package/_internal/{76be70dd.js → components/thumbnail-e3acff82.js} +3 -3
- package/_internal/components/thumbnail-e3acff82.js.map +1 -0
- package/_internal/{bae266a9.js → components/toolbar-155562be.js} +18 -19
- package/_internal/components/toolbar-155562be.js.map +1 -0
- package/_internal/{9a4dfad0.js → components/tooltip-84ffb4f9.js} +42 -50
- package/_internal/components/tooltip-84ffb4f9.js.map +1 -0
- package/_internal/{9fdc715b.js → components/uploader-896a1d89.js} +38 -40
- package/_internal/components/uploader-896a1d89.js.map +1 -0
- package/_internal/{0d1a078c.js → components/user-block-8fd15895.js} +44 -45
- package/_internal/components/user-block-8fd15895.js.map +1 -0
- package/_internal/{4cd870a5.js → constants-b9e57936.js} +2 -2
- package/_internal/constants-b9e57936.js.map +1 -0
- package/_internal/{478b5c92.js → constants-d0e3f49e.js} +2 -2
- package/_internal/constants-d0e3f49e.js.map +1 -0
- package/_internal/{9d1336a1.js → context-21aeb1c7.js} +6 -6
- package/_internal/context-21aeb1c7.js.map +1 -0
- package/_internal/forwardRef-49d2bb84.js +80 -0
- package/_internal/forwardRef-49d2bb84.js.map +1 -0
- package/_internal/{230173a8.js → getFocusableElements-230173a8.js} +1 -1
- package/_internal/getFocusableElements-230173a8.js.map +1 -0
- package/_internal/{0420e67b.js → index-b4d256e7.js} +14 -15
- package/_internal/index-b4d256e7.js.map +1 -0
- package/_internal/{84dfe68f.js → index-f415b08e.js} +46 -52
- package/_internal/index-f415b08e.js.map +1 -0
- package/_internal/{78df9309.js → isComponent-78df9309.js} +1 -1
- package/_internal/isComponent-78df9309.js.map +1 -0
- package/_internal/{e806b848.js → isComponentType-e806b848.js} +1 -1
- package/_internal/isComponentType-e806b848.js.map +1 -0
- package/_internal/{f0d7d6ea.js → mergeRefs-f0d7d6ea.js} +1 -1
- package/_internal/mergeRefs-f0d7d6ea.js.map +1 -0
- package/_internal/{4daccdd5.js → partitionMulti-4daccdd5.js} +1 -1
- package/_internal/partitionMulti-4daccdd5.js.map +1 -0
- package/_internal/{825ac334.js → state-db358714.js} +2 -2
- package/_internal/state-db358714.js.map +1 -0
- package/_internal/{2a3d237c.js → useBooleanState-2a3d237c.js} +1 -1
- package/_internal/useBooleanState-2a3d237c.js.map +1 -0
- package/_internal/{d5f316cb.js → useCallbackOnEscape-ea4d9eb4.js} +3 -3
- package/_internal/useCallbackOnEscape-ea4d9eb4.js.map +1 -0
- package/_internal/{36bd7352.js → useDisableBodyScroll-36bd7352.js} +1 -1
- package/_internal/useDisableBodyScroll-36bd7352.js.map +1 -0
- package/_internal/{b8667090.js → useDisableStateProps-fffc365f.js} +2 -2
- package/_internal/useDisableStateProps-fffc365f.js.map +1 -0
- package/_internal/{5fe09341.js → useFocusTrap-c3c6378b.js} +4 -4
- package/_internal/useFocusTrap-c3c6378b.js.map +1 -0
- package/_internal/{3a1facc0.js → useId-3a1facc0.js} +1 -1
- package/_internal/useId-3a1facc0.js.map +1 -0
- package/_internal/{7daf0f24.js → useRovingTabIndex-7daf0f24.js} +1 -1
- package/_internal/useRovingTabIndex-7daf0f24.js.map +1 -0
- package/_internal/{e6dd117e.js → useTransitionVisibility-321fdbfa.js} +2 -2
- package/_internal/useTransitionVisibility-321fdbfa.js.map +1 -0
- package/_internal/{37b007a4.js → wrapChildrenIconWithSpaces-f86106ce.js} +3 -3
- package/_internal/wrapChildrenIconWithSpaces-f86106ce.js.map +1 -0
- package/index.d.ts +7 -352
- package/index.js +65 -111
- package/index.js.map +1 -1
- package/package.json +3 -3
- package/utils/index.d.ts +1 -1
- package/utils/index.js +3 -3
- package/_internal/0420e67b.js.map +0 -1
- package/_internal/0a490b07.js +0 -75
- package/_internal/0a490b07.js.map +0 -1
- package/_internal/0b9c76cb.js +0 -6
- package/_internal/0b9c76cb.js.map +0 -1
- package/_internal/0be1006e.js.map +0 -1
- package/_internal/0d1a078c.js.map +0 -1
- package/_internal/15eab19b.js.map +0 -1
- package/_internal/179a84d1.js.map +0 -1
- package/_internal/193521fa.js.map +0 -1
- package/_internal/1a90ea3d.js +0 -51
- package/_internal/1a90ea3d.js.map +0 -1
- package/_internal/1deba7d7.js +0 -224
- package/_internal/1deba7d7.js.map +0 -1
- package/_internal/1ea72630.js.map +0 -1
- package/_internal/21b83d16.js +0 -137
- package/_internal/21b83d16.js.map +0 -1
- package/_internal/230173a8.js.map +0 -1
- package/_internal/297bed8f.js +0 -457
- package/_internal/297bed8f.js.map +0 -1
- package/_internal/2a3d237c.js.map +0 -1
- package/_internal/2c2b6a89.js.map +0 -1
- package/_internal/2f1716fa.js.map +0 -1
- package/_internal/2f6c7f84.js.map +0 -1
- package/_internal/3181f000.js.map +0 -1
- package/_internal/329b5f12.js.map +0 -1
- package/_internal/332e9844.js +0 -2
- package/_internal/332e9844.js.map +0 -1
- package/_internal/34c59f5b.js.map +0 -1
- package/_internal/36bd7352.js.map +0 -1
- package/_internal/370bdaed.js.map +0 -1
- package/_internal/37b007a4.js.map +0 -1
- package/_internal/3a1facc0.js.map +0 -1
- package/_internal/3a4e4636.js.map +0 -1
- package/_internal/3e653144.js.map +0 -1
- package/_internal/3f86608e.js.map +0 -1
- package/_internal/478b5c92.js.map +0 -1
- package/_internal/4962be5b.js +0 -121
- package/_internal/4962be5b.js.map +0 -1
- package/_internal/49bbeed3.js +0 -6
- package/_internal/49bbeed3.js.map +0 -1
- package/_internal/4cd870a5.js.map +0 -1
- package/_internal/4daccdd5.js.map +0 -1
- package/_internal/501f2f9f.js.map +0 -1
- package/_internal/5e7b90e2.js +0 -2
- package/_internal/5e7b90e2.js.map +0 -1
- package/_internal/5ec059fe.js.map +0 -1
- package/_internal/5f8f9454.js.map +0 -1
- package/_internal/5fe09341.js.map +0 -1
- package/_internal/628468c4.js.map +0 -1
- package/_internal/6589b796.js +0 -280
- package/_internal/6589b796.js.map +0 -1
- package/_internal/65f91970.js.map +0 -1
- package/_internal/66f691d3.js +0 -74
- package/_internal/66f691d3.js.map +0 -1
- package/_internal/68c10f98.js.map +0 -1
- package/_internal/690ca33e.js +0 -109
- package/_internal/690ca33e.js.map +0 -1
- package/_internal/6ca04271.js +0 -108
- package/_internal/6ca04271.js.map +0 -1
- package/_internal/6da19518.js.map +0 -1
- package/_internal/7093ba23.js.map +0 -1
- package/_internal/74a4a214.js +0 -82
- package/_internal/74a4a214.js.map +0 -1
- package/_internal/76be70dd.js.map +0 -1
- package/_internal/78df9309.js.map +0 -1
- package/_internal/7b221b05.js +0 -9
- package/_internal/7b221b05.js.map +0 -1
- package/_internal/7daf0f24.js.map +0 -1
- package/_internal/7f54e947.js.map +0 -1
- package/_internal/825ac334.js.map +0 -1
- package/_internal/827b804a.js +0 -6
- package/_internal/827b804a.js.map +0 -1
- package/_internal/84dfe68f.js.map +0 -1
- package/_internal/85e3a5ca.js.map +0 -1
- package/_internal/86aa4aa4.js.map +0 -1
- package/_internal/88ec77c2.js +0 -130
- package/_internal/88ec77c2.js.map +0 -1
- package/_internal/8ab42752.js.map +0 -1
- package/_internal/95cfd814.js.map +0 -1
- package/_internal/9a4dfad0.js.map +0 -1
- package/_internal/9c9df5f2.js.map +0 -1
- package/_internal/9d1336a1.js.map +0 -1
- package/_internal/9fdc715b.js.map +0 -1
- package/_internal/a003602b.js +0 -116
- package/_internal/a003602b.js.map +0 -1
- package/_internal/a34639bd.js +0 -97
- package/_internal/a34639bd.js.map +0 -1
- package/_internal/a84f4981.js.map +0 -1
- package/_internal/b0a7a999.js.map +0 -1
- package/_internal/b0b2e33d.js.map +0 -1
- package/_internal/b1af5979.js.map +0 -1
- package/_internal/b477da26.js.map +0 -1
- package/_internal/b8667090.js.map +0 -1
- package/_internal/bae266a9.js.map +0 -1
- package/_internal/be6da9b0.js.map +0 -1
- package/_internal/c0414b89.js.map +0 -1
- package/_internal/c2388b10.js.map +0 -1
- package/_internal/c459a04d.js +0 -148
- package/_internal/c459a04d.js.map +0 -1
- package/_internal/c6ca7494.js +0 -2
- package/_internal/c6ca7494.js.map +0 -1
- package/_internal/cdddaed8.js.map +0 -1
- package/_internal/d0dd1815.js +0 -10
- package/_internal/d0dd1815.js.map +0 -1
- package/_internal/d45e3f16.js +0 -15
- package/_internal/d45e3f16.js.map +0 -1
- package/_internal/d5f316cb.js.map +0 -1
- package/_internal/d95844c1.d.ts +0 -7
- package/_internal/db4fdc7b.js.map +0 -1
- package/_internal/dbe0cf24.js +0 -75
- package/_internal/dbe0cf24.js.map +0 -1
- package/_internal/de24f857.js +0 -4
- package/_internal/de24f857.js.map +0 -1
- package/_internal/e2afb13f.js +0 -75
- package/_internal/e2afb13f.js.map +0 -1
- package/_internal/e52f0d3f.js +0 -94
- package/_internal/e52f0d3f.js.map +0 -1
- package/_internal/e6dd117e.js.map +0 -1
- package/_internal/e806b848.js.map +0 -1
- package/_internal/ea04260d.js.map +0 -1
- package/_internal/eaa8b1d8.js.map +0 -1
- package/_internal/eaf6c45a.js +0 -4
- package/_internal/eaf6c45a.js.map +0 -1
- package/_internal/edab29ce.js.map +0 -1
- package/_internal/ef5d1aac.js +0 -4
- package/_internal/ef5d1aac.js.map +0 -1
- package/_internal/f0900583.js +0 -142
- package/_internal/f0d7d6ea.js.map +0 -1
- package/_internal/f23cdf84.js.map +0 -1
- package/_internal/f52e979e.js +0 -3
- package/_internal/f52e979e.js.map +0 -1
- package/_internal/f5508d3d.js.map +0 -1
- package/_internal/f93fe83e.js.map +0 -1
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { f as forwardRef, _ as _extends, c as classNames } from '../forwardRef-49d2bb84.js';
|
|
2
|
+
import { Children } from 'react';
|
|
3
|
+
import isEmpty from 'lodash/isEmpty';
|
|
4
|
+
import { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';
|
|
5
|
+
import { u as useId } from '../useId-3a1facc0.js';
|
|
6
|
+
import { u as useTheme } from '../ThemeContext-3181f000.js';
|
|
7
|
+
import { u as useDisableStateProps } from '../useDisableStateProps-fffc365f.js';
|
|
8
|
+
import { Alignment, Theme } from '@lumx/core/js/constants';
|
|
9
|
+
import { InputLabel } from './input-label-5e509a1b.js';
|
|
10
|
+
import { InputHelper } from './input-helper-e644e05e.js';
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Defines the props of the component.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Component display name.
|
|
18
|
+
*/
|
|
19
|
+
const COMPONENT_NAME = 'Switch';
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Component default class name and class prefix.
|
|
23
|
+
*/
|
|
24
|
+
const CLASSNAME = getRootClassName(COMPONENT_NAME);
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Component default props.
|
|
28
|
+
*/
|
|
29
|
+
const DEFAULT_PROPS = {
|
|
30
|
+
position: Alignment.left
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Switch component.
|
|
35
|
+
*
|
|
36
|
+
* @param props Component props.
|
|
37
|
+
* @param ref Component ref.
|
|
38
|
+
* @return React element.
|
|
39
|
+
*/
|
|
40
|
+
const Switch = forwardRef((props, ref) => {
|
|
41
|
+
const {
|
|
42
|
+
isAnyDisabled,
|
|
43
|
+
disabledStateProps,
|
|
44
|
+
otherProps
|
|
45
|
+
} = useDisableStateProps(props);
|
|
46
|
+
const defaultTheme = useTheme() || Theme.light;
|
|
47
|
+
const {
|
|
48
|
+
checked,
|
|
49
|
+
children,
|
|
50
|
+
className,
|
|
51
|
+
helper,
|
|
52
|
+
id,
|
|
53
|
+
isChecked = checked,
|
|
54
|
+
name,
|
|
55
|
+
onChange,
|
|
56
|
+
position = DEFAULT_PROPS.position,
|
|
57
|
+
theme = defaultTheme,
|
|
58
|
+
value,
|
|
59
|
+
inputProps = {},
|
|
60
|
+
...forwardedProps
|
|
61
|
+
} = otherProps;
|
|
62
|
+
const generatedInputId = useId();
|
|
63
|
+
const inputId = id || generatedInputId;
|
|
64
|
+
const handleChange = event => {
|
|
65
|
+
if (onChange) {
|
|
66
|
+
onChange(!isChecked, value, name, event);
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
return /*#__PURE__*/React.createElement("div", _extends({
|
|
70
|
+
ref: ref
|
|
71
|
+
}, forwardedProps, {
|
|
72
|
+
className: classNames(className, handleBasicClasses({
|
|
73
|
+
prefix: CLASSNAME,
|
|
74
|
+
isChecked,
|
|
75
|
+
isDisabled: isAnyDisabled,
|
|
76
|
+
position,
|
|
77
|
+
theme,
|
|
78
|
+
isUnchecked: !isChecked
|
|
79
|
+
}))
|
|
80
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
81
|
+
className: `${CLASSNAME}__input-wrapper`
|
|
82
|
+
}, /*#__PURE__*/React.createElement("input", _extends({
|
|
83
|
+
type: "checkbox",
|
|
84
|
+
role: "switch",
|
|
85
|
+
id: inputId,
|
|
86
|
+
className: `${CLASSNAME}__input-native`,
|
|
87
|
+
name: name,
|
|
88
|
+
value: value
|
|
89
|
+
}, disabledStateProps, {
|
|
90
|
+
readOnly: inputProps.readOnly || isAnyDisabled,
|
|
91
|
+
checked: isChecked,
|
|
92
|
+
"aria-checked": Boolean(isChecked),
|
|
93
|
+
onChange: handleChange,
|
|
94
|
+
"aria-describedby": helper ? `${inputId}-helper` : undefined
|
|
95
|
+
}, inputProps)), /*#__PURE__*/React.createElement("div", {
|
|
96
|
+
className: `${CLASSNAME}__input-placeholder`
|
|
97
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
98
|
+
className: `${CLASSNAME}__input-background`
|
|
99
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
100
|
+
className: `${CLASSNAME}__input-indicator`
|
|
101
|
+
}))), Children.count(children) > 0 && /*#__PURE__*/React.createElement("div", {
|
|
102
|
+
className: `${CLASSNAME}__content`
|
|
103
|
+
}, /*#__PURE__*/React.createElement(InputLabel, {
|
|
104
|
+
htmlFor: inputId,
|
|
105
|
+
theme: theme,
|
|
106
|
+
className: `${CLASSNAME}__label`
|
|
107
|
+
}, children), !isEmpty(helper) && /*#__PURE__*/React.createElement(InputHelper, {
|
|
108
|
+
id: `${inputId}-helper`,
|
|
109
|
+
theme: theme,
|
|
110
|
+
className: `${CLASSNAME}__helper`
|
|
111
|
+
}, helper)));
|
|
112
|
+
});
|
|
113
|
+
Switch.displayName = COMPONENT_NAME;
|
|
114
|
+
Switch.className = CLASSNAME;
|
|
115
|
+
Switch.defaultProps = DEFAULT_PROPS;
|
|
116
|
+
|
|
117
|
+
export { Switch };
|
|
118
|
+
//# sourceMappingURL=switch-5516949b.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"switch-5516949b.js","sources":["../../../src/components/switch/Switch.tsx"],"sourcesContent":["import { Children, InputHTMLAttributes, SyntheticEvent } from 'react';\n\nimport classNames from 'classnames';\nimport isEmpty from 'lodash/isEmpty';\n\nimport { Alignment, InputHelper, InputLabel, Theme } from '@lumx/react';\nimport { GenericProps, HasTheme } from '@lumx/react/utils/type';\nimport { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';\nimport { useId } from '@lumx/react/hooks/useId';\nimport { useTheme } from '@lumx/react/utils/theme/ThemeContext';\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\nimport { useDisableStateProps } from '@lumx/react/utils/disabled/useDisableStateProps';\nimport { HasAriaDisabled } from '@lumx/react/utils/type/HasAriaDisabled';\n\n/**\n * Defines the props of the component.\n */\nexport interface SwitchProps extends GenericProps, HasTheme, HasAriaDisabled {\n /** Helper text. */\n helper?: string;\n /** Whether it is checked or not. */\n isChecked?: boolean;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Native input name property. */\n name?: string;\n /** Position of the switch relative to the label. */\n position?: Extract<Alignment, 'right' | 'left'>;\n /** Native input value property. */\n value?: string;\n /** On change callback. */\n onChange?(isChecked: boolean, value?: string, name?: string, event?: SyntheticEvent): void;\n /** optional props for input */\n inputProps?: InputHTMLAttributes<HTMLInputElement>;\n /** Children */\n children?: React.ReactNode;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'Switch';\n\n/**\n * Component default class name and class prefix.\n */\nconst CLASSNAME = getRootClassName(COMPONENT_NAME);\n\n/**\n * Component default props.\n */\nconst DEFAULT_PROPS: Partial<SwitchProps> = {\n position: Alignment.left,\n};\n\n/**\n * Switch component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const Switch = forwardRef<SwitchProps, HTMLDivElement>((props, ref) => {\n const { isAnyDisabled, disabledStateProps, otherProps } = useDisableStateProps(props);\n const defaultTheme = useTheme() || Theme.light;\n const {\n checked,\n children,\n className,\n helper,\n id,\n isChecked = checked,\n name,\n onChange,\n position = DEFAULT_PROPS.position,\n theme = defaultTheme,\n value,\n inputProps = {},\n ...forwardedProps\n } = otherProps;\n const generatedInputId = useId();\n const inputId = id || generatedInputId;\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (onChange) {\n onChange(!isChecked, value, name, event);\n }\n };\n\n return (\n <div\n ref={ref}\n {...forwardedProps}\n className={classNames(\n className,\n handleBasicClasses({\n prefix: CLASSNAME,\n isChecked,\n isDisabled: isAnyDisabled,\n position,\n theme,\n isUnchecked: !isChecked,\n }),\n )}\n >\n <div className={`${CLASSNAME}__input-wrapper`}>\n <input\n type=\"checkbox\"\n role=\"switch\"\n id={inputId}\n className={`${CLASSNAME}__input-native`}\n name={name}\n value={value}\n {...disabledStateProps}\n readOnly={inputProps.readOnly || isAnyDisabled}\n checked={isChecked}\n aria-checked={Boolean(isChecked)}\n onChange={handleChange}\n aria-describedby={helper ? `${inputId}-helper` : undefined}\n {...inputProps}\n />\n\n <div className={`${CLASSNAME}__input-placeholder`}>\n <div className={`${CLASSNAME}__input-background`} />\n <div className={`${CLASSNAME}__input-indicator`} />\n </div>\n </div>\n\n {Children.count(children) > 0 && (\n <div className={`${CLASSNAME}__content`}>\n <InputLabel htmlFor={inputId} theme={theme} className={`${CLASSNAME}__label`}>\n {children}\n </InputLabel>\n {!isEmpty(helper) && (\n <InputHelper id={`${inputId}-helper`} theme={theme} className={`${CLASSNAME}__helper`}>\n {helper}\n </InputHelper>\n )}\n </div>\n )}\n </div>\n );\n});\nSwitch.displayName = COMPONENT_NAME;\nSwitch.className = CLASSNAME;\nSwitch.defaultProps = DEFAULT_PROPS;\n"],"names":["COMPONENT_NAME","CLASSNAME","getRootClassName","DEFAULT_PROPS","position","Alignment","left","Switch","forwardRef","props","ref","isAnyDisabled","disabledStateProps","otherProps","useDisableStateProps","defaultTheme","useTheme","Theme","light","checked","children","className","helper","id","isChecked","name","onChange","theme","value","inputProps","forwardedProps","generatedInputId","useId","inputId","handleChange","event","React","createElement","_extends","classNames","handleBasicClasses","prefix","isDisabled","isUnchecked","type","role","readOnly","Boolean","undefined","Children","count","InputLabel","htmlFor","isEmpty","InputHelper","displayName","defaultProps"],"mappings":"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"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { u as useTheme } from '
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
1
|
+
import { f as forwardRef, _ as _extends, c as classNames } from '../forwardRef-49d2bb84.js';
|
|
2
|
+
import { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';
|
|
3
|
+
import { u as useTheme } from '../ThemeContext-3181f000.js';
|
|
4
|
+
import { Theme, Size } from '@lumx/core/js/constants';
|
|
5
|
+
import { mdiArrowUp, mdiArrowDown } from '@lumx/icons';
|
|
6
|
+
import { Icon } from './icon-2e7345ad.js';
|
|
7
|
+
import { u as useDisableStateProps } from '../useDisableStateProps-fffc365f.js';
|
|
7
8
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Defines the props of the component.
|
|
11
|
+
*/
|
|
11
12
|
|
|
12
13
|
/**
|
|
13
14
|
* Component display name.
|
|
@@ -41,22 +42,25 @@ const Table = forwardRef((props, ref) => {
|
|
|
41
42
|
theme = defaultTheme,
|
|
42
43
|
...forwardedProps
|
|
43
44
|
} = props;
|
|
44
|
-
return /*#__PURE__*/
|
|
45
|
-
ref: ref
|
|
46
|
-
|
|
45
|
+
return /*#__PURE__*/React.createElement("table", _extends({
|
|
46
|
+
ref: ref
|
|
47
|
+
}, forwardedProps, {
|
|
47
48
|
className: classNames(className, handleBasicClasses({
|
|
48
49
|
prefix: CLASSNAME$4,
|
|
49
50
|
hasBefore,
|
|
50
51
|
hasDividers,
|
|
51
52
|
theme
|
|
52
|
-
}))
|
|
53
|
-
|
|
54
|
-
});
|
|
53
|
+
}))
|
|
54
|
+
}), children);
|
|
55
55
|
});
|
|
56
56
|
Table.displayName = COMPONENT_NAME$4;
|
|
57
57
|
Table.className = CLASSNAME$4;
|
|
58
58
|
Table.defaultProps = DEFAULT_PROPS$3;
|
|
59
59
|
|
|
60
|
+
/**
|
|
61
|
+
* Defines the props of the component.
|
|
62
|
+
*/
|
|
63
|
+
|
|
60
64
|
/**
|
|
61
65
|
* Component display name.
|
|
62
66
|
*/
|
|
@@ -80,16 +84,18 @@ const TableBody = forwardRef((props, ref) => {
|
|
|
80
84
|
className,
|
|
81
85
|
...forwardedProps
|
|
82
86
|
} = props;
|
|
83
|
-
return /*#__PURE__*/
|
|
84
|
-
ref: ref
|
|
85
|
-
|
|
86
|
-
className: classNames(className, CLASSNAME$3)
|
|
87
|
-
|
|
88
|
-
});
|
|
87
|
+
return /*#__PURE__*/React.createElement("tbody", _extends({
|
|
88
|
+
ref: ref
|
|
89
|
+
}, forwardedProps, {
|
|
90
|
+
className: classNames(className, CLASSNAME$3)
|
|
91
|
+
}), children);
|
|
89
92
|
});
|
|
90
93
|
TableBody.displayName = COMPONENT_NAME$3;
|
|
91
94
|
TableBody.className = CLASSNAME$3;
|
|
92
95
|
|
|
96
|
+
/**
|
|
97
|
+
* Table head cell sort order.
|
|
98
|
+
*/
|
|
93
99
|
const ThOrder = {
|
|
94
100
|
asc: 'asc',
|
|
95
101
|
desc: 'desc'
|
|
@@ -156,50 +162,45 @@ const TableCell = forwardRef((props, ref) => {
|
|
|
156
162
|
if (sortOrder === ThOrder.asc) ariaSort = 'ascending';
|
|
157
163
|
if (sortOrder === ThOrder.desc) ariaSort = 'descending';
|
|
158
164
|
}
|
|
159
|
-
return /*#__PURE__*/
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
}), variant === TableCellVariant.body && /*#__PURE__*/jsx("td", {
|
|
190
|
-
...forwardedProps,
|
|
191
|
-
className: classNames(className, CLASSNAME$2, `${CLASSNAME$2}--body`),
|
|
192
|
-
children: /*#__PURE__*/jsx("div", {
|
|
193
|
-
className: `${CLASSNAME$2}-content`,
|
|
194
|
-
children: children
|
|
195
|
-
})
|
|
196
|
-
})]
|
|
197
|
-
});
|
|
165
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, variant === TableCellVariant.head && /*#__PURE__*/React.createElement("th", _extends({
|
|
166
|
+
ref: ref
|
|
167
|
+
}, forwardedProps, {
|
|
168
|
+
className: classNames(handleBasicClasses({
|
|
169
|
+
prefix: CLASSNAME$2,
|
|
170
|
+
isSortable,
|
|
171
|
+
isSorted: isSortable && !!sortOrder
|
|
172
|
+
}), className, `${CLASSNAME$2}--head`),
|
|
173
|
+
"aria-sort": ariaSort
|
|
174
|
+
}), /*#__PURE__*/React.createElement(Wrapper, _extends({
|
|
175
|
+
className: `${CLASSNAME$2}-wrapper`
|
|
176
|
+
}, wrapperProps), icon && !isSortable && /*#__PURE__*/React.createElement(Icon, {
|
|
177
|
+
className: `${CLASSNAME$2}-icon`,
|
|
178
|
+
icon: icon,
|
|
179
|
+
size: Size.xxs
|
|
180
|
+
}), isSortable && sortOrder === ThOrder.asc && /*#__PURE__*/React.createElement(Icon, {
|
|
181
|
+
className: `${CLASSNAME$2}-icon`,
|
|
182
|
+
icon: mdiArrowUp,
|
|
183
|
+
size: Size.xxs
|
|
184
|
+
}), isSortable && sortOrder === ThOrder.desc && /*#__PURE__*/React.createElement(Icon, {
|
|
185
|
+
className: `${CLASSNAME$2}-icon`,
|
|
186
|
+
icon: mdiArrowDown,
|
|
187
|
+
size: Size.xxs
|
|
188
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
189
|
+
className: `${CLASSNAME$2}-content`
|
|
190
|
+
}, children))), variant === TableCellVariant.body && /*#__PURE__*/React.createElement("td", _extends({}, forwardedProps, {
|
|
191
|
+
className: classNames(className, CLASSNAME$2, `${CLASSNAME$2}--body`)
|
|
192
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
193
|
+
className: `${CLASSNAME$2}-content`
|
|
194
|
+
}, children)));
|
|
198
195
|
});
|
|
199
196
|
TableCell.displayName = COMPONENT_NAME$2;
|
|
200
197
|
TableCell.className = CLASSNAME$2;
|
|
201
198
|
TableCell.defaultProps = DEFAULT_PROPS$2;
|
|
202
199
|
|
|
200
|
+
/**
|
|
201
|
+
* Defines the props of the component.
|
|
202
|
+
*/
|
|
203
|
+
|
|
203
204
|
/**
|
|
204
205
|
* Component display name.
|
|
205
206
|
*/
|
|
@@ -228,17 +229,20 @@ const TableHeader = forwardRef((props, ref) => {
|
|
|
228
229
|
className,
|
|
229
230
|
...forwardedProps
|
|
230
231
|
} = props;
|
|
231
|
-
return /*#__PURE__*/
|
|
232
|
-
ref: ref
|
|
233
|
-
|
|
234
|
-
className: classNames(className, CLASSNAME$1)
|
|
235
|
-
|
|
236
|
-
});
|
|
232
|
+
return /*#__PURE__*/React.createElement("thead", _extends({
|
|
233
|
+
ref: ref
|
|
234
|
+
}, forwardedProps, {
|
|
235
|
+
className: classNames(className, CLASSNAME$1)
|
|
236
|
+
}), children);
|
|
237
237
|
});
|
|
238
238
|
TableHeader.displayName = COMPONENT_NAME$1;
|
|
239
239
|
TableHeader.className = CLASSNAME$1;
|
|
240
240
|
TableHeader.defaultProps = DEFAULT_PROPS$1;
|
|
241
241
|
|
|
242
|
+
/**
|
|
243
|
+
* Defines the props of the component.
|
|
244
|
+
*/
|
|
245
|
+
|
|
242
246
|
/**
|
|
243
247
|
* Component display name.
|
|
244
248
|
*/
|
|
@@ -274,23 +278,22 @@ const TableRow = forwardRef((props, ref) => {
|
|
|
274
278
|
isSelected,
|
|
275
279
|
...forwardedProps
|
|
276
280
|
} = otherProps;
|
|
277
|
-
return /*#__PURE__*/
|
|
281
|
+
return /*#__PURE__*/React.createElement("tr", _extends({
|
|
278
282
|
ref: ref,
|
|
279
|
-
tabIndex: isClickable && !disabledStateProps.disabled ? 0 : -1
|
|
280
|
-
|
|
283
|
+
tabIndex: isClickable && !disabledStateProps.disabled ? 0 : -1
|
|
284
|
+
}, forwardedProps, {
|
|
281
285
|
className: classNames(className, handleBasicClasses({
|
|
282
286
|
isClickable: isClickable && !isAnyDisabled,
|
|
283
287
|
isDisabled: isAnyDisabled,
|
|
284
288
|
isSelected: isSelected && !isAnyDisabled,
|
|
285
289
|
prefix: CLASSNAME
|
|
286
290
|
})),
|
|
287
|
-
"aria-disabled": isAnyDisabled
|
|
288
|
-
|
|
289
|
-
});
|
|
291
|
+
"aria-disabled": isAnyDisabled
|
|
292
|
+
}), children);
|
|
290
293
|
});
|
|
291
294
|
TableRow.displayName = COMPONENT_NAME;
|
|
292
295
|
TableRow.className = CLASSNAME;
|
|
293
296
|
TableRow.defaultProps = DEFAULT_PROPS;
|
|
294
297
|
|
|
295
298
|
export { Table, TableBody, TableCell, TableCellVariant, TableHeader, TableRow, ThOrder };
|
|
296
|
-
//# sourceMappingURL=
|
|
299
|
+
//# sourceMappingURL=table-fa198ee6.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table-fa198ee6.js","sources":["../../../src/components/table/Table.tsx","../../../src/components/table/TableBody.tsx","../../../src/components/table/TableCell.tsx","../../../src/components/table/TableHeader.tsx","../../../src/components/table/TableRow.tsx"],"sourcesContent":["import classNames from 'classnames';\n\nimport { Theme } from '@lumx/react';\nimport { GenericProps, HasTheme } from '@lumx/react/utils/type';\nimport { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';\nimport { useTheme } from '@lumx/react/utils/theme/ThemeContext';\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\n\n/**\n * Defines the props of the component.\n */\nexport interface TableProps extends GenericProps, HasTheme {\n /** Whether the table has checkbox or thumbnail on first cell or not. */\n hasBefore?: boolean;\n /** Whether the table has dividers or not. */\n hasDividers?: boolean;\n /** Children */\n children?: React.ReactNode;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'Table';\n\n/**\n * Component default class name and class prefix.\n */\nconst CLASSNAME = getRootClassName(COMPONENT_NAME);\n\n/**\n * Component default props.\n */\nconst DEFAULT_PROPS: Partial<TableProps> = {};\n\n/**\n * Table component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const Table = forwardRef<TableProps, HTMLTableElement>((props, ref) => {\n const defaultTheme = useTheme() || Theme.light;\n const { children, className, hasBefore, hasDividers, theme = defaultTheme, ...forwardedProps } = props;\n\n return (\n <table\n ref={ref}\n {...forwardedProps}\n className={classNames(className, handleBasicClasses({ prefix: CLASSNAME, hasBefore, hasDividers, theme }))}\n >\n {children}\n </table>\n );\n});\nTable.displayName = COMPONENT_NAME;\nTable.className = CLASSNAME;\nTable.defaultProps = DEFAULT_PROPS;\n","import classNames from 'classnames';\n\nimport { GenericProps } from '@lumx/react/utils/type';\nimport { getRootClassName } from '@lumx/core/js/utils/className';\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\n\n/**\n * Defines the props of the component.\n */\nexport interface TableBodyProps extends GenericProps {\n /** Children */\n children?: React.ReactNode;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'TableBody';\n\n/**\n * Component default class name and class prefix.\n */\nconst CLASSNAME = getRootClassName(COMPONENT_NAME, true);\n\n/**\n * TableBody component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const TableBody = forwardRef<TableBodyProps, HTMLTableSectionElement>((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <tbody ref={ref} {...forwardedProps} className={classNames(className, CLASSNAME)}>\n {children}\n </tbody>\n );\n});\nTableBody.displayName = COMPONENT_NAME;\nTableBody.className = CLASSNAME;\n","import classNames from 'classnames';\n\nimport { mdiArrowDown, mdiArrowUp } from '@lumx/icons';\nimport { Icon, Size } from '@lumx/react';\nimport { GenericProps, ValueOf } from '@lumx/react/utils/type';\nimport { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\n\n/**\n * Table head cell sort order.\n */\nexport const ThOrder = { asc: 'asc', desc: 'desc' } as const;\nexport type ThOrder = ValueOf<typeof ThOrder>;\n\n/**\n * Table cell variants.\n */\nexport const TableCellVariant = { body: 'body', head: 'head' } as const;\nexport type TableCellVariant = ValueOf<typeof TableCellVariant>;\n\n/**\n * Defines the props of the component.\n */\nexport interface TableCellProps extends GenericProps {\n /** Icon (SVG path).(thead only). */\n icon?: string;\n /** Whether the column is sortable or not (thead only). */\n isSortable?: boolean;\n /** Sort order displayed as icon (sortable thead only). */\n sortOrder?: ThOrder;\n /** Variant. */\n variant?: TableCellVariant;\n /** On header cell click callback. */\n onHeaderClick?(): void;\n /** Children */\n children?: React.ReactNode;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'TableCell';\n\n/**\n * Component default class name and class prefix.\n */\nconst CLASSNAME = getRootClassName(COMPONENT_NAME, true);\n\n/**\n * Component default props.\n */\nconst DEFAULT_PROPS: Partial<TableCellProps> = {\n variant: TableCellVariant.body,\n};\n\n/**\n * TableCell component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const TableCell = forwardRef<TableCellProps, HTMLTableCellElement>((props, ref) => {\n const {\n children,\n className,\n icon,\n isSortable,\n onHeaderClick,\n sortOrder,\n variant = DEFAULT_PROPS.variant,\n ...forwardedProps\n } = props;\n\n // Use button if clickable\n const Wrapper = onHeaderClick ? 'button' : 'div';\n const wrapperProps = Wrapper === 'button' ? ({ type: 'button', onClick: onHeaderClick } as const) : undefined;\n\n // ARIA sort\n let ariaSort: 'ascending' | 'descending' | 'none' | undefined;\n if (isSortable) {\n ariaSort = 'none';\n if (sortOrder === ThOrder.asc) ariaSort = 'ascending';\n if (sortOrder === ThOrder.desc) ariaSort = 'descending';\n }\n\n return (\n <>\n {variant === TableCellVariant.head && (\n <th\n ref={ref}\n {...forwardedProps}\n className={classNames(\n handleBasicClasses({\n prefix: CLASSNAME,\n isSortable,\n isSorted: isSortable && !!sortOrder,\n }),\n className,\n `${CLASSNAME}--head`,\n )}\n aria-sort={ariaSort}\n >\n <Wrapper className={`${CLASSNAME}-wrapper`} {...wrapperProps}>\n {icon && !isSortable && <Icon className={`${CLASSNAME}-icon`} icon={icon} size={Size.xxs} />}\n\n {isSortable && sortOrder === ThOrder.asc && (\n <Icon className={`${CLASSNAME}-icon`} icon={mdiArrowUp} size={Size.xxs} />\n )}\n\n {isSortable && sortOrder === ThOrder.desc && (\n <Icon className={`${CLASSNAME}-icon`} icon={mdiArrowDown} size={Size.xxs} />\n )}\n\n <div className={`${CLASSNAME}-content`}>{children}</div>\n </Wrapper>\n </th>\n )}\n\n {variant === TableCellVariant.body && (\n <td {...forwardedProps} className={classNames(className, CLASSNAME, `${CLASSNAME}--body`)}>\n <div className={`${CLASSNAME}-content`}>{children}</div>\n </td>\n )}\n </>\n );\n});\nTableCell.displayName = COMPONENT_NAME;\nTableCell.className = CLASSNAME;\nTableCell.defaultProps = DEFAULT_PROPS;\n","import classNames from 'classnames';\n\nimport { GenericProps } from '@lumx/react/utils/type';\nimport { getRootClassName } from '@lumx/core/js/utils/className';\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\n\n/**\n * Defines the props of the component.\n */\nexport interface TableHeaderProps extends GenericProps {\n /** Children */\n children?: React.ReactNode;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'TableHeader';\n\n/**\n * Component default class name and class prefix.\n */\nconst CLASSNAME = getRootClassName(COMPONENT_NAME, true);\n\n/**\n * Component default props.\n */\nconst DEFAULT_PROPS: Partial<TableHeaderProps> = {};\n\n/**\n * TableHeader component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const TableHeader = forwardRef<TableHeaderProps, HTMLTableSectionElement>((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <thead ref={ref} {...forwardedProps} className={classNames(className, CLASSNAME)}>\n {children}\n </thead>\n );\n});\nTableHeader.displayName = COMPONENT_NAME;\nTableHeader.className = CLASSNAME;\nTableHeader.defaultProps = DEFAULT_PROPS;\n","import classNames from 'classnames';\n\nimport { GenericProps } from '@lumx/react/utils/type';\nimport { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\nimport { useDisableStateProps } from '@lumx/react/utils/disabled/useDisableStateProps';\n\n/**\n * Defines the props of the component.\n */\nexport interface TableRowProps extends GenericProps {\n /** Whether the component is clickable or not. */\n isClickable?: boolean;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the component is selected or not. */\n isSelected?: boolean;\n /** Children */\n children?: React.ReactNode;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'TableRow';\n\n/**\n * Component default class name and class prefix.\n */\nconst CLASSNAME = getRootClassName(COMPONENT_NAME, true);\n\n/**\n * Component default props.\n */\nconst DEFAULT_PROPS: Partial<TableRowProps> = {};\n\n/**\n * TableRow component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const TableRow = forwardRef<TableRowProps, HTMLTableRowElement>((props, ref) => {\n const { isAnyDisabled, disabledStateProps, otherProps } = useDisableStateProps(props);\n const { children, className, isClickable, isSelected, ...forwardedProps } = otherProps;\n\n return (\n <tr\n ref={ref}\n tabIndex={isClickable && !disabledStateProps.disabled ? 0 : -1}\n {...forwardedProps}\n className={classNames(\n className,\n handleBasicClasses({\n isClickable: isClickable && !isAnyDisabled,\n isDisabled: isAnyDisabled,\n isSelected: isSelected && !isAnyDisabled,\n prefix: CLASSNAME,\n }),\n )}\n aria-disabled={isAnyDisabled}\n >\n {children}\n </tr>\n );\n});\n\nTableRow.displayName = COMPONENT_NAME;\nTableRow.className = CLASSNAME;\nTableRow.defaultProps = DEFAULT_PROPS;\n"],"names":["COMPONENT_NAME","CLASSNAME","getRootClassName","DEFAULT_PROPS","Table","forwardRef","props","ref","defaultTheme","useTheme","Theme","light","children","className","hasBefore","hasDividers","theme","forwardedProps","React","createElement","_extends","classNames","handleBasicClasses","prefix","displayName","defaultProps","TableBody","ThOrder","asc","desc","TableCellVariant","body","head","variant","TableCell","icon","isSortable","onHeaderClick","sortOrder","Wrapper","wrapperProps","type","onClick","undefined","ariaSort","Fragment","isSorted","Icon","size","Size","xxs","mdiArrowUp","mdiArrowDown","TableHeader","TableRow","isAnyDisabled","disabledStateProps","otherProps","useDisableStateProps","isClickable","isSelected","tabIndex","disabled","isDisabled"],"mappings":";;;;;;;;AAQA;AACA;AACA;;AAUA;AACA;AACA;AACA,MAAMA,gBAAc,GAAG,OAAO,CAAA;;AAE9B;AACA;AACA;AACA,MAAMC,WAAS,GAAGC,gBAAgB,CAACF,gBAAc,CAAC,CAAA;;AAElD;AACA;AACA;AACA,MAAMG,eAAkC,GAAG,EAAE,CAAA;;AAE7C;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,KAAK,GAAGC,UAAU,CAA+B,CAACC,KAAK,EAAEC,GAAG,KAAK;EAC1E,MAAMC,YAAY,GAAGC,QAAQ,EAAE,IAAIC,KAAK,CAACC,KAAK,CAAA;EAC9C,MAAM;IAAEC,QAAQ;IAAEC,SAAS;IAAEC,SAAS;IAAEC,WAAW;AAAEC,IAAAA,KAAK,GAAGR,YAAY;IAAE,GAAGS,cAAAA;AAAe,GAAC,GAAGX,KAAK,CAAA;AAEtG,EAAA,oBACIY,KAAA,CAAAC,aAAA,CAAA,OAAA,EAAAC,QAAA,CAAA;AACIb,IAAAA,GAAG,EAAEA,GAAAA;AAAI,GAAA,EACLU,cAAc,EAAA;AAClBJ,IAAAA,SAAS,EAAEQ,UAAU,CAACR,SAAS,EAAES,kBAAkB,CAAC;AAAEC,MAAAA,MAAM,EAAEtB,WAAS;MAAEa,SAAS;MAAEC,WAAW;AAAEC,MAAAA,KAAAA;AAAM,KAAC,CAAC,CAAA;AAAE,GAAA,CAAA,EAE1GJ,QACE,CAAC,CAAA;AAEhB,CAAC,EAAC;AACFR,KAAK,CAACoB,WAAW,GAAGxB,gBAAc,CAAA;AAClCI,KAAK,CAACS,SAAS,GAAGZ,WAAS,CAAA;AAC3BG,KAAK,CAACqB,YAAY,GAAGtB,eAAa;;ACpDlC;AACA;AACA;;AAMA;AACA;AACA;AACA,MAAMH,gBAAc,GAAG,WAAW,CAAA;;AAElC;AACA;AACA;AACA,MAAMC,WAAS,GAAGC,gBAAgB,CAACF,gBAAc,EAAE,IAAI,CAAC,CAAA;;AAExD;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAM0B,SAAS,GAAGrB,UAAU,CAA0C,CAACC,KAAK,EAAEC,GAAG,KAAK;EACzF,MAAM;IAAEK,QAAQ;IAAEC,SAAS;IAAE,GAAGI,cAAAA;AAAe,GAAC,GAAGX,KAAK,CAAA;AAExD,EAAA,oBACIY,KAAA,CAAAC,aAAA,CAAA,OAAA,EAAAC,QAAA,CAAA;AAAOb,IAAAA,GAAG,EAAEA,GAAAA;AAAI,GAAA,EAAKU,cAAc,EAAA;AAAEJ,IAAAA,SAAS,EAAEQ,UAAU,CAACR,SAAS,EAAEZ,WAAS,CAAA;AAAE,GAAA,CAAA,EAC5EW,QACE,CAAC,CAAA;AAEhB,CAAC,EAAC;AACFc,SAAS,CAACF,WAAW,GAAGxB,gBAAc,CAAA;AACtC0B,SAAS,CAACb,SAAS,GAAGZ,WAAS;;ACjC/B;AACA;AACA;AACO,MAAM0B,OAAO,GAAG;AAAEC,EAAAA,GAAG,EAAE,KAAK;AAAEC,EAAAA,IAAI,EAAE,MAAA;AAAO,EAAU;AAG5D;AACA;AACA;AACO,MAAMC,gBAAgB,GAAG;AAAEC,EAAAA,IAAI,EAAE,MAAM;AAAEC,EAAAA,IAAI,EAAE,MAAA;AAAO,EAAU;;AAGvE;AACA;AACA;;AAgBA;AACA;AACA;AACA,MAAMhC,gBAAc,GAAG,WAAW,CAAA;;AAElC;AACA;AACA;AACA,MAAMC,WAAS,GAAGC,gBAAgB,CAACF,gBAAc,EAAE,IAAI,CAAC,CAAA;;AAExD;AACA;AACA;AACA,MAAMG,eAAsC,GAAG;EAC3C8B,OAAO,EAAEH,gBAAgB,CAACC,IAAAA;AAC9B,CAAC,CAAA;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMG,SAAS,GAAG7B,UAAU,CAAuC,CAACC,KAAK,EAAEC,GAAG,KAAK;EACtF,MAAM;IACFK,QAAQ;IACRC,SAAS;IACTsB,IAAI;IACJC,UAAU;IACVC,aAAa;IACbC,SAAS;IACTL,OAAO,GAAG9B,eAAa,CAAC8B,OAAO;IAC/B,GAAGhB,cAAAA;AACP,GAAC,GAAGX,KAAK,CAAA;;AAET;AACA,EAAA,MAAMiC,OAAO,GAAGF,aAAa,GAAG,QAAQ,GAAG,KAAK,CAAA;AAChD,EAAA,MAAMG,YAAY,GAAGD,OAAO,KAAK,QAAQ,GAAI;AAAEE,IAAAA,IAAI,EAAE,QAAQ;AAAEC,IAAAA,OAAO,EAAEL,aAAAA;AAAc,GAAC,GAAaM,SAAS,CAAA;;AAE7G;AACA,EAAA,IAAIC,QAAyD,CAAA;AAC7D,EAAA,IAAIR,UAAU,EAAE;AACZQ,IAAAA,QAAQ,GAAG,MAAM,CAAA;IACjB,IAAIN,SAAS,KAAKX,OAAO,CAACC,GAAG,EAAEgB,QAAQ,GAAG,WAAW,CAAA;IACrD,IAAIN,SAAS,KAAKX,OAAO,CAACE,IAAI,EAAEe,QAAQ,GAAG,YAAY,CAAA;AAC3D,GAAA;AAEA,EAAA,oBACI1B,KAAA,CAAAC,aAAA,CAAAD,KAAA,CAAA2B,QAAA,EACKZ,IAAAA,EAAAA,OAAO,KAAKH,gBAAgB,CAACE,IAAI,iBAC9Bd,KAAA,CAAAC,aAAA,OAAAC,QAAA,CAAA;AACIb,IAAAA,GAAG,EAAEA,GAAAA;AAAI,GAAA,EACLU,cAAc,EAAA;AAClBJ,IAAAA,SAAS,EAAEQ,UAAU,CACjBC,kBAAkB,CAAC;AACfC,MAAAA,MAAM,EAAEtB,WAAS;MACjBmC,UAAU;AACVU,MAAAA,QAAQ,EAAEV,UAAU,IAAI,CAAC,CAACE,SAAAA;AAC9B,KAAC,CAAC,EACFzB,SAAS,EACT,CAAGZ,EAAAA,WAAS,QAChB,CAAE;IACF,WAAW2C,EAAAA,QAAAA;AAAS,GAAA,CAAA,eAEpB1B,KAAA,CAAAC,aAAA,CAACoB,OAAO,EAAAnB,QAAA,CAAA;IAACP,SAAS,EAAE,GAAGZ,WAAS,CAAA,QAAA,CAAA;GAAgBuC,EAAAA,YAAY,CACvDL,EAAAA,IAAI,IAAI,CAACC,UAAU,iBAAIlB,KAAA,CAAAC,aAAA,CAAC4B,IAAI,EAAA;IAAClC,SAAS,EAAE,CAAGZ,EAAAA,WAAS,CAAQ,KAAA,CAAA;AAACkC,IAAAA,IAAI,EAAEA,IAAK;IAACa,IAAI,EAAEC,IAAI,CAACC,GAAAA;AAAI,GAAE,CAAC,EAE3Fd,UAAU,IAAIE,SAAS,KAAKX,OAAO,CAACC,GAAG,iBACpCV,KAAA,CAAAC,aAAA,CAAC4B,IAAI,EAAA;IAAClC,SAAS,EAAE,CAAGZ,EAAAA,WAAS,CAAQ,KAAA,CAAA;AAACkC,IAAAA,IAAI,EAAEgB,UAAW;IAACH,IAAI,EAAEC,IAAI,CAACC,GAAAA;AAAI,GAAE,CAC5E,EAEAd,UAAU,IAAIE,SAAS,KAAKX,OAAO,CAACE,IAAI,iBACrCX,KAAA,CAAAC,aAAA,CAAC4B,IAAI,EAAA;IAAClC,SAAS,EAAE,CAAGZ,EAAAA,WAAS,CAAQ,KAAA,CAAA;AAACkC,IAAAA,IAAI,EAAEiB,YAAa;IAACJ,IAAI,EAAEC,IAAI,CAACC,GAAAA;AAAI,GAAE,CAC9E,eAEDhC,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IAAKN,SAAS,EAAE,GAAGZ,WAAS,CAAA,QAAA,CAAA;AAAW,GAAA,EAAEW,QAAc,CAClD,CACT,CACP,EAEAqB,OAAO,KAAKH,gBAAgB,CAACC,IAAI,iBAC9Bb,KAAA,CAAAC,aAAA,CAAAC,IAAAA,EAAAA,QAAA,KAAQH,cAAc,EAAA;IAAEJ,SAAS,EAAEQ,UAAU,CAACR,SAAS,EAAEZ,WAAS,EAAE,CAAGA,EAAAA,WAAS,CAAQ,MAAA,CAAA,CAAA;GACpFiB,CAAAA,eAAAA,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IAAKN,SAAS,EAAE,GAAGZ,WAAS,CAAA,QAAA,CAAA;GAAaW,EAAAA,QAAc,CACvD,CAEV,CAAC,CAAA;AAEX,CAAC,EAAC;AACFsB,SAAS,CAACV,WAAW,GAAGxB,gBAAc,CAAA;AACtCkC,SAAS,CAACrB,SAAS,GAAGZ,WAAS,CAAA;AAC/BiC,SAAS,CAACT,YAAY,GAAGtB,eAAa;;AC3HtC;AACA;AACA;;AAMA;AACA;AACA;AACA,MAAMH,gBAAc,GAAG,aAAa,CAAA;;AAEpC;AACA;AACA;AACA,MAAMC,WAAS,GAAGC,gBAAgB,CAACF,gBAAc,EAAE,IAAI,CAAC,CAAA;;AAExD;AACA;AACA;AACA,MAAMG,eAAwC,GAAG,EAAE,CAAA;;AAEnD;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMkD,WAAW,GAAGhD,UAAU,CAA4C,CAACC,KAAK,EAAEC,GAAG,KAAK;EAC7F,MAAM;IAAEK,QAAQ;IAAEC,SAAS;IAAE,GAAGI,cAAAA;AAAe,GAAC,GAAGX,KAAK,CAAA;AAExD,EAAA,oBACIY,KAAA,CAAAC,aAAA,CAAA,OAAA,EAAAC,QAAA,CAAA;AAAOb,IAAAA,GAAG,EAAEA,GAAAA;AAAI,GAAA,EAAKU,cAAc,EAAA;AAAEJ,IAAAA,SAAS,EAAEQ,UAAU,CAACR,SAAS,EAAEZ,WAAS,CAAA;AAAE,GAAA,CAAA,EAC5EW,QACE,CAAC,CAAA;AAEhB,CAAC,EAAC;AACFyC,WAAW,CAAC7B,WAAW,GAAGxB,gBAAc,CAAA;AACxCqD,WAAW,CAACxC,SAAS,GAAGZ,WAAS,CAAA;AACjCoD,WAAW,CAAC5B,YAAY,GAAGtB,eAAa;;ACxCxC;AACA;AACA;;AAYA;AACA;AACA;AACA,MAAMH,cAAc,GAAG,UAAU,CAAA;;AAEjC;AACA;AACA;AACA,MAAMC,SAAS,GAAGC,gBAAgB,CAACF,cAAc,EAAE,IAAI,CAAC,CAAA;;AAExD;AACA;AACA;AACA,MAAMG,aAAqC,GAAG,EAAE,CAAA;;AAEhD;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMmD,QAAQ,GAAGjD,UAAU,CAAqC,CAACC,KAAK,EAAEC,GAAG,KAAK;EACnF,MAAM;IAAEgD,aAAa;IAAEC,kBAAkB;AAAEC,IAAAA,UAAAA;AAAW,GAAC,GAAGC,oBAAoB,CAACpD,KAAK,CAAC,CAAA;EACrF,MAAM;IAAEM,QAAQ;IAAEC,SAAS;IAAE8C,WAAW;IAAEC,UAAU;IAAE,GAAG3C,cAAAA;AAAe,GAAC,GAAGwC,UAAU,CAAA;AAEtF,EAAA,oBACIvC,KAAA,CAAAC,aAAA,CAAA,IAAA,EAAAC,QAAA,CAAA;AACIb,IAAAA,GAAG,EAAEA,GAAI;IACTsD,QAAQ,EAAEF,WAAW,IAAI,CAACH,kBAAkB,CAACM,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAA;AAAE,GAAA,EAC3D7C,cAAc,EAAA;AAClBJ,IAAAA,SAAS,EAAEQ,UAAU,CACjBR,SAAS,EACTS,kBAAkB,CAAC;AACfqC,MAAAA,WAAW,EAAEA,WAAW,IAAI,CAACJ,aAAa;AAC1CQ,MAAAA,UAAU,EAAER,aAAa;AACzBK,MAAAA,UAAU,EAAEA,UAAU,IAAI,CAACL,aAAa;AACxChC,MAAAA,MAAM,EAAEtB,SAAAA;AACZ,KAAC,CACL,CAAE;IACF,eAAesD,EAAAA,aAAAA;AAAc,GAAA,CAAA,EAE5B3C,QACD,CAAC,CAAA;AAEb,CAAC,EAAC;AAEF0C,QAAQ,CAAC9B,WAAW,GAAGxB,cAAc,CAAA;AACrCsD,QAAQ,CAACzC,SAAS,GAAGZ,SAAS,CAAA;AAC9BqD,QAAQ,CAAC7B,YAAY,GAAGtB,aAAa;;;;"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import ReactDOM from 'react-dom';
|
|
2
2
|
import React__default, { useReducer, useEffect, useCallback } from 'react';
|
|
3
|
-
import { I as INIT_STATE, r as reducer, T as TabProviderContext, a as useTabProviderContext } from '
|
|
4
|
-
import {
|
|
5
|
-
import
|
|
6
|
-
import '
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import { u as
|
|
10
|
-
import {
|
|
11
|
-
import { u as useDisableStateProps } from '
|
|
12
|
-
import {
|
|
13
|
-
import { T as Text } from '
|
|
3
|
+
import { I as INIT_STATE, r as reducer, T as TabProviderContext, a as useTabProviderContext } from '../state-db358714.js';
|
|
4
|
+
import { f as forwardRef, _ as _extends, c as classNames } from '../forwardRef-49d2bb84.js';
|
|
5
|
+
import '../constants-d0e3f49e.js';
|
|
6
|
+
import { handleBasicClasses } from '@lumx/core/js/utils/className';
|
|
7
|
+
import { m as mergeRefs } from '../mergeRefs-f0d7d6ea.js';
|
|
8
|
+
import { u as useTheme } from '../ThemeContext-3181f000.js';
|
|
9
|
+
import { u as useRovingTabIndex } from '../useRovingTabIndex-7daf0f24.js';
|
|
10
|
+
import { Alignment, Theme, CSS_PREFIX, Size } from '@lumx/core/js/constants';
|
|
11
|
+
import { u as useDisableStateProps } from '../useDisableStateProps-fffc365f.js';
|
|
12
|
+
import { Icon } from './icon-2e7345ad.js';
|
|
13
|
+
import { T as Text } from '../index-b4d256e7.js';
|
|
14
14
|
|
|
15
15
|
const DEFAULT_PROPS$3 = {
|
|
16
16
|
isLazy: INIT_STATE.isLazy,
|
|
@@ -63,10 +63,9 @@ const TabProvider = props => {
|
|
|
63
63
|
},
|
|
64
64
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
65
65
|
[onChange, state.activeTabIndex]);
|
|
66
|
-
return /*#__PURE__*/
|
|
67
|
-
value: [state, dispatch]
|
|
68
|
-
|
|
69
|
-
});
|
|
66
|
+
return /*#__PURE__*/React.createElement(TabProviderContext.Provider, {
|
|
67
|
+
value: [state, dispatch]
|
|
68
|
+
}, children);
|
|
70
69
|
};
|
|
71
70
|
TabProvider.defaultProps = DEFAULT_PROPS$3;
|
|
72
71
|
|
|
@@ -125,27 +124,29 @@ const TabList = forwardRef((props, ref) => {
|
|
|
125
124
|
keepTabIndex: false,
|
|
126
125
|
extraDependencies: [children]
|
|
127
126
|
});
|
|
128
|
-
return /*#__PURE__*/
|
|
129
|
-
ref: mergeRefs(ref, tabListRef)
|
|
130
|
-
|
|
127
|
+
return /*#__PURE__*/React__default.createElement("div", _extends({
|
|
128
|
+
ref: mergeRefs(ref, tabListRef)
|
|
129
|
+
}, forwardedProps, {
|
|
131
130
|
className: classNames(className, handleBasicClasses({
|
|
132
131
|
prefix: CLASSNAME$2,
|
|
133
132
|
layout,
|
|
134
133
|
position,
|
|
135
134
|
theme
|
|
136
|
-
}))
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
})
|
|
143
|
-
});
|
|
135
|
+
}))
|
|
136
|
+
}), /*#__PURE__*/React__default.createElement("div", {
|
|
137
|
+
className: `${CLASSNAME$2}__links`,
|
|
138
|
+
role: "tablist",
|
|
139
|
+
"aria-label": ariaLabel
|
|
140
|
+
}, children));
|
|
144
141
|
});
|
|
145
142
|
TabList.displayName = COMPONENT_NAME$2;
|
|
146
143
|
TabList.className = CLASSNAME$2;
|
|
147
144
|
TabList.defaultProps = DEFAULT_PROPS$2;
|
|
148
145
|
|
|
146
|
+
/**
|
|
147
|
+
* Defines the props of the component.
|
|
148
|
+
*/
|
|
149
|
+
|
|
149
150
|
/**
|
|
150
151
|
* Component display name.
|
|
151
152
|
*/
|
|
@@ -208,9 +209,9 @@ const Tab = forwardRef((props, ref) => {
|
|
|
208
209
|
}
|
|
209
210
|
changeToCurrentTab();
|
|
210
211
|
}, [changeToCurrentTab, isAnyDisabled, onKeyPress]);
|
|
211
|
-
return /*#__PURE__*/
|
|
212
|
-
ref: ref
|
|
213
|
-
|
|
212
|
+
return /*#__PURE__*/React.createElement("button", _extends({
|
|
213
|
+
ref: ref
|
|
214
|
+
}, forwardedProps, {
|
|
214
215
|
type: "button",
|
|
215
216
|
id: state?.tabId,
|
|
216
217
|
className: classNames(className, handleBasicClasses({
|
|
@@ -225,22 +226,23 @@ const Tab = forwardRef((props, ref) => {
|
|
|
225
226
|
tabIndex: isActive ? 0 : tabIndex,
|
|
226
227
|
"aria-disabled": isAnyDisabled,
|
|
227
228
|
"aria-selected": isActive,
|
|
228
|
-
"aria-controls": state?.tabPanelId
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
children: label
|
|
237
|
-
})]
|
|
238
|
-
});
|
|
229
|
+
"aria-controls": state?.tabPanelId
|
|
230
|
+
}), icon && /*#__PURE__*/React.createElement(Icon, _extends({
|
|
231
|
+
icon: icon,
|
|
232
|
+
size: Size.xs
|
|
233
|
+
}, iconProps)), label && /*#__PURE__*/React.createElement(Text, {
|
|
234
|
+
as: "span",
|
|
235
|
+
truncate: true
|
|
236
|
+
}, label));
|
|
239
237
|
});
|
|
240
238
|
Tab.displayName = COMPONENT_NAME$1;
|
|
241
239
|
Tab.className = CLASSNAME$1;
|
|
242
240
|
Tab.defaultProps = DEFAULT_PROPS$1;
|
|
243
241
|
|
|
242
|
+
/**
|
|
243
|
+
* Defines the props of the component.
|
|
244
|
+
*/
|
|
245
|
+
|
|
244
246
|
/**
|
|
245
247
|
* Component display name.
|
|
246
248
|
*/
|
|
@@ -275,9 +277,9 @@ const TabPanel = forwardRef((props, ref) => {
|
|
|
275
277
|
} = props;
|
|
276
278
|
const state = useTabProviderContext('tabPanel', id);
|
|
277
279
|
const isActive = propIsActive || state?.isActive;
|
|
278
|
-
return /*#__PURE__*/
|
|
279
|
-
ref: ref
|
|
280
|
-
|
|
280
|
+
return /*#__PURE__*/React.createElement("div", _extends({
|
|
281
|
+
ref: ref
|
|
282
|
+
}, forwardedProps, {
|
|
281
283
|
id: state?.tabPanelId,
|
|
282
284
|
className: classNames(className, handleBasicClasses({
|
|
283
285
|
prefix: CLASSNAME,
|
|
@@ -285,13 +287,12 @@ const TabPanel = forwardRef((props, ref) => {
|
|
|
285
287
|
})),
|
|
286
288
|
role: "tabpanel",
|
|
287
289
|
tabIndex: isActive ? 0 : -1,
|
|
288
|
-
"aria-labelledby": state?.tabId
|
|
289
|
-
|
|
290
|
-
});
|
|
290
|
+
"aria-labelledby": state?.tabId
|
|
291
|
+
}), (!state?.isLazy || isActive) && children);
|
|
291
292
|
});
|
|
292
293
|
TabPanel.displayName = COMPONENT_NAME;
|
|
293
294
|
TabPanel.className = CLASSNAME;
|
|
294
295
|
TabPanel.defaultProps = DEFAULT_PROPS;
|
|
295
296
|
|
|
296
297
|
export { Tab, TabList, TabListLayout, TabPanel, TabProvider };
|
|
297
|
-
//# sourceMappingURL=
|
|
298
|
+
//# sourceMappingURL=tabs-bb9bc2a5.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tabs-bb9bc2a5.js","sources":["../../../src/components/tabs/TabProvider.tsx","../../../src/components/tabs/TabList.tsx","../../../src/components/tabs/Tab.tsx","../../../src/components/tabs/TabPanel.tsx"],"sourcesContent":["import ReactDOM from 'react-dom';\nimport { ReactNode, useEffect, useReducer } from 'react';\nimport { INIT_STATE, TabProviderContext, reducer } from './state';\n\nexport interface TabProviderProps {\n /** Active tab index. */\n activeTabIndex?: number;\n /** Tab provider children. */\n children: ReactNode;\n /** Tab panel children should not render if the tab panel is hidden. */\n isLazy?: boolean;\n /** Activate tabs on focus. */\n shouldActivateOnFocus?: boolean;\n\n /** Tab change callback. */\n onChange?(index: number): void;\n}\n\nconst DEFAULT_PROPS: Partial<TabProviderProps> = {\n isLazy: INIT_STATE.isLazy,\n shouldActivateOnFocus: INIT_STATE.shouldActivateOnFocus,\n};\n\n/**\n * This component provides a context in which tabs can be defined and linked to their tab panel.\n *\n * It does not produce any markup so you can wrap it around any React elements and then split the TabList and TabPanel\n * components in the react tree.\n *\n * @param props React component props.\n * @return React element.\n */\nexport const TabProvider: React.FC<TabProviderProps> = (props) => {\n const { children, onChange, ...propState } = props;\n const [state, dispatch] = useReducer(reducer, INIT_STATE);\n\n // On prop state change => dispatch update.\n useEffect(\n () => {\n dispatch({ type: 'update', payload: { ...DEFAULT_PROPS, ...propState } });\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [dispatch, ...Object.values(propState)],\n );\n\n // On active tab index state change => send update to the onChange.\n useEffect(\n () => {\n if (state === INIT_STATE || !onChange || propState.activeTabIndex === state.activeTabIndex) {\n return;\n }\n\n // Escape rendering/useEffect context\n queueMicrotask(() => {\n // Wait for React to commit last state changes (avoid looping state update)\n ReactDOM.flushSync(() => {\n onChange(state.activeTabIndex);\n });\n });\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [onChange, state.activeTabIndex],\n );\n\n return <TabProviderContext.Provider value={[state, dispatch]}>{children}</TabProviderContext.Provider>;\n};\nTabProvider.defaultProps = DEFAULT_PROPS;\n","import React, { ReactNode } from 'react';\n\nimport classNames from 'classnames';\n\nimport { Alignment, Theme } from '@lumx/react';\nimport { CSS_PREFIX } from '@lumx/react/constants';\nimport { GenericProps, HasTheme } from '@lumx/react/utils/type';\nimport { handleBasicClasses } from '@lumx/core/js/utils/className';\nimport { mergeRefs } from '@lumx/react/utils/react/mergeRefs';\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\nimport { useTheme } from '@lumx/react/utils/theme/ThemeContext';\n\nimport { useRovingTabIndex } from '../../hooks/useRovingTabIndex';\n\nexport enum TabListLayout {\n clustered = 'clustered',\n fixed = 'fixed',\n}\n\n/**\n * Defines the props of the component.\n */\nexport interface TabListProps extends GenericProps, HasTheme {\n /** ARIA label (purpose of the set of tabs). */\n ['aria-label']: string;\n /** Tab list. */\n children: ReactNode;\n /** Layout of the tabs in the list. */\n layout?: TabListLayout;\n /** Position of the tabs in the list (requires 'clustered' layout). */\n position?: Alignment;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'TabList';\n\n/**\n * Component default class name and class prefix.\n */\nconst CLASSNAME = `${CSS_PREFIX}-tabs`;\n\n/**\n * Component default props.\n */\nconst DEFAULT_PROPS: Partial<TabListProps> = {\n layout: TabListLayout.fixed,\n position: Alignment.left,\n};\n\n/**\n * TabList component.\n *\n * Implements WAI-ARIA `tablist` role {@see https://www.w3.org/TR/wai-aria-practices-1.1/examples/tabs/tabs-1/tabs.html#rps_label}\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const TabList = forwardRef<TabListProps, HTMLDivElement>((props, ref) => {\n const defaultTheme = useTheme() || Theme.light;\n const {\n 'aria-label': ariaLabel,\n children,\n className,\n layout = DEFAULT_PROPS.layout,\n position = DEFAULT_PROPS.position,\n theme = defaultTheme,\n ...forwardedProps\n } = props;\n const tabListRef = React.useRef(null);\n useRovingTabIndex({\n parentRef: tabListRef,\n elementSelector: '[role=\"tab\"]',\n keepTabIndex: false,\n extraDependencies: [children],\n });\n\n return (\n <div\n ref={mergeRefs(ref, tabListRef)}\n {...forwardedProps}\n className={classNames(className, handleBasicClasses({ prefix: CLASSNAME, layout, position, theme }))}\n >\n <div className={`${CLASSNAME}__links`} role=\"tablist\" aria-label={ariaLabel}>\n {children}\n </div>\n </div>\n );\n});\nTabList.displayName = COMPONENT_NAME;\nTabList.className = CLASSNAME;\nTabList.defaultProps = DEFAULT_PROPS;\n","import { FocusEventHandler, KeyboardEventHandler, ReactNode, useCallback } from 'react';\n\nimport classNames from 'classnames';\n\nimport { Icon, IconProps, Size, Text } from '@lumx/react';\nimport { CSS_PREFIX } from '@lumx/react/constants';\nimport { GenericProps } from '@lumx/react/utils/type';\nimport { handleBasicClasses } from '@lumx/core/js/utils/className';\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\n\nimport { useDisableStateProps } from '@lumx/react/utils/disabled/useDisableStateProps';\nimport { useTabProviderContext } from './state';\n\n/**\n * Defines the props of the component.\n */\nexport interface TabProps extends GenericProps {\n /** Children are not supported. */\n children?: never;\n /** Icon (SVG path). */\n icon?: IconProps['icon'];\n /** Icon component properties. */\n iconProps?: Omit<IconProps, 'icon'>;\n /** Native id property. */\n id?: string;\n /** Whether the tab is active or not. */\n isActive?: boolean;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Label content. */\n label: string | ReactNode;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'Tab';\n\n/**\n * Component default class name and class prefix.\n */\nconst CLASSNAME = `${CSS_PREFIX}-tabs__link`;\n\n/**\n * Component default props.\n */\nconst DEFAULT_PROPS: Partial<TabProps> = {};\n\n/**\n * Tab component.\n *\n * Implements WAI-ARIA `tab` role {@see https://www.w3.org/TR/wai-aria-practices-1.1/examples/tabs/tabs-1/tabs.html#rps_label}\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const Tab = forwardRef<TabProps, HTMLButtonElement>((props, ref) => {\n const { isAnyDisabled, otherProps } = useDisableStateProps(props);\n const {\n className,\n icon,\n iconProps = {},\n id,\n isActive: propIsActive,\n label,\n onFocus,\n onKeyPress,\n tabIndex = -1,\n ...forwardedProps\n } = otherProps;\n const state = useTabProviderContext('tab', id);\n const isActive = propIsActive || state?.isActive;\n\n const changeToCurrentTab = useCallback(() => {\n if (isAnyDisabled) {\n return;\n }\n state?.changeToTab();\n }, [isAnyDisabled, state]);\n\n const handleFocus: FocusEventHandler = useCallback(\n (event) => {\n onFocus?.(event);\n if (state?.shouldActivateOnFocus) {\n changeToCurrentTab();\n }\n },\n [changeToCurrentTab, onFocus, state?.shouldActivateOnFocus],\n );\n\n const handleKeyPress: KeyboardEventHandler = useCallback(\n (event) => {\n onKeyPress?.(event);\n if (event.key !== 'Enter' || isAnyDisabled) {\n return;\n }\n changeToCurrentTab();\n },\n [changeToCurrentTab, isAnyDisabled, onKeyPress],\n );\n\n return (\n <button\n ref={ref}\n {...forwardedProps}\n type=\"button\"\n id={state?.tabId}\n className={classNames(\n className,\n handleBasicClasses({ prefix: CLASSNAME, isActive, isDisabled: isAnyDisabled }),\n )}\n onClick={changeToCurrentTab}\n onKeyPress={handleKeyPress}\n onFocus={handleFocus}\n role=\"tab\"\n tabIndex={isActive ? 0 : tabIndex}\n aria-disabled={isAnyDisabled}\n aria-selected={isActive}\n aria-controls={state?.tabPanelId}\n >\n {icon && <Icon icon={icon} size={Size.xs} {...iconProps} />}\n {label && (\n <Text as=\"span\" truncate>\n {label}\n </Text>\n )}\n </button>\n );\n});\nTab.displayName = COMPONENT_NAME;\nTab.className = CLASSNAME;\nTab.defaultProps = DEFAULT_PROPS;\n","import classNames from 'classnames';\n\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\nimport { useTabProviderContext } from '@lumx/react/components/tabs/state';\nimport { CSS_PREFIX } from '@lumx/react/constants';\nimport { GenericProps } from '@lumx/react/utils/type';\nimport { handleBasicClasses } from '@lumx/core/js/utils/className';\n\n/**\n * Defines the props of the component.\n */\nexport interface TabPanelProps extends GenericProps {\n /** Native id property */\n id?: string;\n /** Whether the tab is active or not. */\n isActive?: boolean;\n /** Children */\n children?: React.ReactNode;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'TabPanel';\n\n/**\n * Component default class name and class prefix.\n */\nconst CLASSNAME = `${CSS_PREFIX}-tab-panel`;\n\n/**\n * Component default props.\n */\nconst DEFAULT_PROPS: Partial<TabPanelProps> = {};\n\n/**\n * TabPanel component.\n *\n * Implements WAI-ARIA `tabpanel` role {@see https://www.w3.org/TR/wai-aria-practices-1.1/examples/tabs/tabs-1/tabs.html#rps_label}\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const TabPanel = forwardRef<TabPanelProps, HTMLDivElement>((props, ref) => {\n const { children, id, className, isActive: propIsActive, ...forwardedProps } = props;\n\n const state = useTabProviderContext('tabPanel', id);\n const isActive = propIsActive || state?.isActive;\n\n return (\n <div\n ref={ref}\n {...forwardedProps}\n id={state?.tabPanelId}\n className={classNames(className, handleBasicClasses({ prefix: CLASSNAME, isActive }))}\n role=\"tabpanel\"\n tabIndex={isActive ? 0 : -1}\n aria-labelledby={state?.tabId}\n >\n {(!state?.isLazy || isActive) && children}\n </div>\n );\n});\nTabPanel.displayName = COMPONENT_NAME;\nTabPanel.className = CLASSNAME;\nTabPanel.defaultProps = DEFAULT_PROPS;\n"],"names":["DEFAULT_PROPS","isLazy","INIT_STATE","shouldActivateOnFocus","TabProvider","props","children","onChange","propState","state","dispatch","useReducer","reducer","useEffect","type","payload","Object","values","activeTabIndex","queueMicrotask","ReactDOM","flushSync","React","createElement","TabProviderContext","Provider","value","defaultProps","TabListLayout","COMPONENT_NAME","CLASSNAME","CSS_PREFIX","layout","fixed","position","Alignment","left","TabList","forwardRef","ref","defaultTheme","useTheme","Theme","light","ariaLabel","className","theme","forwardedProps","tabListRef","useRef","useRovingTabIndex","parentRef","elementSelector","keepTabIndex","extraDependencies","_extends","mergeRefs","classNames","handleBasicClasses","prefix","role","displayName","Tab","isAnyDisabled","otherProps","useDisableStateProps","icon","iconProps","id","isActive","propIsActive","label","onFocus","onKeyPress","tabIndex","useTabProviderContext","changeToCurrentTab","useCallback","changeToTab","handleFocus","event","handleKeyPress","key","tabId","isDisabled","onClick","tabPanelId","Icon","size","Size","xs","Text","as","truncate","TabPanel"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text-289c0526.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|