@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 @@
|
|
|
1
|
+
{"version":3,"file":"badge-81543bc7.js","sources":["../../../src/components/badge/Badge.tsx","../../../src/components/badge/BadgeWrapper.tsx"],"sourcesContent":["import { ReactNode } from 'react';\n\nimport classNames from 'classnames';\n\nimport { ColorPalette } from '@lumx/react';\nimport { GenericProps } 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 * Defines the props of the component.\n */\nexport interface BadgeProps extends GenericProps {\n /** Badge content. */\n children?: ReactNode;\n /** Color variant. */\n color?: ColorPalette;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'Badge';\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<BadgeProps> = {\n color: ColorPalette.primary,\n};\n\n/**\n * Badge component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const Badge = forwardRef<BadgeProps, HTMLDivElement>((props, ref) => {\n const { children, className, color = DEFAULT_PROPS.color, ...forwardedProps } = props;\n return (\n <div\n ref={ref}\n {...forwardedProps}\n className={classNames(className, handleBasicClasses({ prefix: CLASSNAME, color }))}\n >\n {children}\n </div>\n );\n});\nBadge.displayName = COMPONENT_NAME;\nBadge.className = CLASSNAME;\nBadge.defaultProps = DEFAULT_PROPS;\n","import { ReactElement, ReactNode } from 'react';\n\nimport classNames from 'classnames';\n\nimport { getRootClassName } from '@lumx/core/js/utils/className';\nimport { GenericProps } from '@lumx/react/utils/type';\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\n\nexport interface BadgeWrapperProps extends GenericProps {\n /** Badge. */\n badge: ReactElement;\n /** Node to display the badge on */\n children: ReactNode;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'BadgeWrapper';\n\n/**\n * Component default class name and class prefix.\n */\nconst CLASSNAME = getRootClassName(COMPONENT_NAME);\n\nexport const BadgeWrapper = forwardRef<BadgeWrapperProps, HTMLDivElement>((props, ref) => {\n const { badge, children, className, ...forwardedProps } = props;\n\n return (\n <div ref={ref} {...forwardedProps} className={classNames(className, CLASSNAME)}>\n {children}\n {badge && <div className={`${CLASSNAME}__badge`}>{badge}</div>}\n </div>\n );\n});\nBadgeWrapper.displayName = 'BadgeWrapper';\nBadgeWrapper.className = CLASSNAME;\n"],"names":["COMPONENT_NAME","CLASSNAME","getRootClassName","DEFAULT_PROPS","color","ColorPalette","primary","Badge","forwardRef","props","ref","children","className","forwardedProps","React","createElement","_extends","classNames","handleBasicClasses","prefix","displayName","defaultProps","BadgeWrapper","badge"],"mappings":";;;;AASA;AACA;AACA;;AAQA;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,aAAkC,GAAG;EACvCC,KAAK,EAAEC,YAAY,CAACC,OAAAA;AACxB,CAAC,CAAA;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,KAAK,GAAGC,UAAU,CAA6B,CAACC,KAAK,EAAEC,GAAG,KAAK;EACxE,MAAM;IAAEC,QAAQ;IAAEC,SAAS;IAAER,KAAK,GAAGD,aAAa,CAACC,KAAK;IAAE,GAAGS,cAAAA;AAAe,GAAC,GAAGJ,KAAK,CAAA;AACrF,EAAA,oBACIK,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAAC,QAAA,CAAA;AACIN,IAAAA,GAAG,EAAEA,GAAAA;AAAI,GAAA,EACLG,cAAc,EAAA;AAClBD,IAAAA,SAAS,EAAEK,UAAU,CAACL,SAAS,EAAEM,kBAAkB,CAAC;AAAEC,MAAAA,MAAM,EAAElB,WAAS;AAAEG,MAAAA,KAAAA;AAAM,KAAC,CAAC,CAAA;AAAE,GAAA,CAAA,EAElFO,QACA,CAAC,CAAA;AAEd,CAAC,EAAC;AACFJ,KAAK,CAACa,WAAW,GAAGpB,gBAAc,CAAA;AAClCO,KAAK,CAACK,SAAS,GAAGX,WAAS,CAAA;AAC3BM,KAAK,CAACc,YAAY,GAAGlB,aAAa;;AC1ClC;AACA;AACA;AACA,MAAMH,cAAc,GAAG,cAAc,CAAA;;AAErC;AACA;AACA;AACA,MAAMC,SAAS,GAAGC,gBAAgB,CAACF,cAAc,CAAC,CAAA;AAE3C,MAAMsB,YAAY,GAAGd,UAAU,CAAoC,CAACC,KAAK,EAAEC,GAAG,KAAK;EACtF,MAAM;IAAEa,KAAK;IAAEZ,QAAQ;IAAEC,SAAS;IAAE,GAAGC,cAAAA;AAAe,GAAC,GAAGJ,KAAK,CAAA;AAE/D,EAAA,oBACIK,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAAC,QAAA,CAAA;AAAKN,IAAAA,GAAG,EAAEA,GAAAA;AAAI,GAAA,EAAKG,cAAc,EAAA;AAAED,IAAAA,SAAS,EAAEK,UAAU,CAACL,SAAS,EAAEX,SAAS,CAAA;AAAE,GAAA,CAAA,EAC1EU,QAAQ,EACRY,KAAK,iBAAIT,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IAAKH,SAAS,EAAE,GAAGX,SAAS,CAAA,OAAA,CAAA;GAAYsB,EAAAA,KAAW,CAC5D,CAAC,CAAA;AAEd,CAAC,EAAC;AACFD,YAAY,CAACF,WAAW,GAAG,cAAc,CAAA;AACzCE,YAAY,CAACV,SAAS,GAAGX,SAAS;;;;"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
|
-
export { a as Button, B as ButtonEmphasis } from '
|
|
2
|
-
export { I as IconButton } from '
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
1
|
+
export { a as Button, B as ButtonEmphasis } from '../Button-f19e18df.js';
|
|
2
|
+
export { I as IconButton } from '../IconButton-10585058.js';
|
|
3
|
+
import { f as forwardRef, _ as _extends, c as classNames } from '../forwardRef-49d2bb84.js';
|
|
4
|
+
import { getRootClassName } from '@lumx/core/js/utils/className';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Defines the props of the component
|
|
8
|
+
*/
|
|
5
9
|
|
|
6
10
|
/**
|
|
7
11
|
* Component display name.
|
|
@@ -31,16 +35,15 @@ const ButtonGroup = forwardRef((props, ref) => {
|
|
|
31
35
|
className,
|
|
32
36
|
...forwardedProps
|
|
33
37
|
} = props;
|
|
34
|
-
return /*#__PURE__*/
|
|
35
|
-
ref: ref
|
|
36
|
-
|
|
37
|
-
className: classNames(className, CLASSNAME)
|
|
38
|
-
|
|
39
|
-
});
|
|
38
|
+
return /*#__PURE__*/React.createElement("div", _extends({
|
|
39
|
+
ref: ref
|
|
40
|
+
}, forwardedProps, {
|
|
41
|
+
className: classNames(className, CLASSNAME)
|
|
42
|
+
}), children);
|
|
40
43
|
});
|
|
41
44
|
ButtonGroup.displayName = COMPONENT_NAME;
|
|
42
45
|
ButtonGroup.className = CLASSNAME;
|
|
43
46
|
ButtonGroup.defaultProps = DEFAULT_PROPS;
|
|
44
47
|
|
|
45
48
|
export { ButtonGroup };
|
|
46
|
-
//# sourceMappingURL=
|
|
49
|
+
//# sourceMappingURL=button-927abe71.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"button-927abe71.js","sources":["../../../src/components/button/ButtonGroup.tsx"],"sourcesContent":["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 ButtonGroupProps extends GenericProps {\n /**\n * Children\n */\n children?: React.ReactNode;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'ButtonGroup';\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<ButtonGroupProps> = {};\n\n/**\n * ButtonGroup component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const ButtonGroup = forwardRef<ButtonGroupProps, HTMLDivElement>((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <div ref={ref} {...forwardedProps} className={classNames(className, CLASSNAME)}>\n {children}\n </div>\n );\n});\nButtonGroup.displayName = COMPONENT_NAME;\nButtonGroup.className = CLASSNAME;\nButtonGroup.defaultProps = DEFAULT_PROPS;\n"],"names":["COMPONENT_NAME","CLASSNAME","getRootClassName","DEFAULT_PROPS","ButtonGroup","forwardRef","props","ref","children","className","forwardedProps","React","createElement","_extends","classNames","displayName","defaultProps"],"mappings":";;;;;AAMA;AACA;AACA;;AAQA;AACA;AACA;AACA,MAAMA,cAAc,GAAG,aAAa,CAAA;;AAEpC;AACA;AACA;AACA,MAAMC,SAAS,GAAGC,gBAAgB,CAACF,cAAc,CAAC,CAAA;;AAElD;AACA;AACA;AACA,MAAMG,aAAwC,GAAG,EAAE,CAAA;;AAEnD;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,WAAW,GAAGC,UAAU,CAAmC,CAACC,KAAK,EAAEC,GAAG,KAAK;EACpF,MAAM;IAAEC,QAAQ;IAAEC,SAAS;IAAE,GAAGC,cAAAA;AAAe,GAAC,GAAGJ,KAAK,CAAA;AAExD,EAAA,oBACIK,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAAC,QAAA,CAAA;AAAKN,IAAAA,GAAG,EAAEA,GAAAA;AAAI,GAAA,EAAKG,cAAc,EAAA;AAAED,IAAAA,SAAS,EAAEK,UAAU,CAACL,SAAS,EAAER,SAAS,CAAA;AAAE,GAAA,CAAA,EAC1EO,QACA,CAAC,CAAA;AAEd,CAAC,EAAC;AACFJ,WAAW,CAACW,WAAW,GAAGf,cAAc,CAAA;AACxCI,WAAW,CAACK,SAAS,GAAGR,SAAS,CAAA;AACjCG,WAAW,CAACY,YAAY,GAAGb,aAAa;;;;"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { f as forwardRef, _ as _extends, c as classNames } from '../forwardRef-49d2bb84.js';
|
|
2
|
+
import React__default from 'react';
|
|
3
|
+
import { mdiMinus, mdiCheck } from '@lumx/icons';
|
|
4
|
+
import { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';
|
|
5
|
+
import { u as useId } from '../useId-3a1facc0.js';
|
|
6
|
+
import { u as useMergeRefs } from '../mergeRefs-f0d7d6ea.js';
|
|
7
|
+
import { u as useTheme } from '../ThemeContext-3181f000.js';
|
|
8
|
+
import { u as useDisableStateProps } from '../useDisableStateProps-fffc365f.js';
|
|
9
|
+
import { InputLabel } from './input-label-5e509a1b.js';
|
|
10
|
+
import { InputHelper } from './input-helper-e644e05e.js';
|
|
11
|
+
import { Theme } from '@lumx/core/js/constants';
|
|
12
|
+
import { Icon } from './icon-2e7345ad.js';
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Intermediate state of checkbox.
|
|
16
|
+
*/
|
|
17
|
+
const INTERMEDIATE_STATE = 'intermediate';
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Defines the props of the component.
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Component display name.
|
|
25
|
+
*/
|
|
26
|
+
const COMPONENT_NAME = 'Checkbox';
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Component default class name and class prefix.
|
|
30
|
+
*/
|
|
31
|
+
const CLASSNAME = getRootClassName(COMPONENT_NAME);
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Component default props.
|
|
35
|
+
*/
|
|
36
|
+
const DEFAULT_PROPS = {};
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Checkbox component.
|
|
40
|
+
*
|
|
41
|
+
* @param props Component props.
|
|
42
|
+
* @param ref Component ref.
|
|
43
|
+
* @return React element.
|
|
44
|
+
*/
|
|
45
|
+
const Checkbox = forwardRef((props, ref) => {
|
|
46
|
+
const {
|
|
47
|
+
isAnyDisabled,
|
|
48
|
+
disabledStateProps,
|
|
49
|
+
otherProps
|
|
50
|
+
} = useDisableStateProps(props);
|
|
51
|
+
const defaultTheme = useTheme() || Theme.light;
|
|
52
|
+
const {
|
|
53
|
+
checked,
|
|
54
|
+
className,
|
|
55
|
+
helper,
|
|
56
|
+
id,
|
|
57
|
+
inputRef,
|
|
58
|
+
isChecked = checked,
|
|
59
|
+
label,
|
|
60
|
+
name,
|
|
61
|
+
onChange,
|
|
62
|
+
theme = defaultTheme,
|
|
63
|
+
value,
|
|
64
|
+
inputProps = {},
|
|
65
|
+
...forwardedProps
|
|
66
|
+
} = otherProps;
|
|
67
|
+
const localInputRef = React__default.useRef(null);
|
|
68
|
+
const generatedInputId = useId();
|
|
69
|
+
const inputId = id || generatedInputId;
|
|
70
|
+
const handleChange = event => {
|
|
71
|
+
if (onChange) {
|
|
72
|
+
onChange(!isChecked, value, name, event);
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
const intermediateState = isChecked === INTERMEDIATE_STATE;
|
|
76
|
+
React__default.useEffect(() => {
|
|
77
|
+
const input = localInputRef.current;
|
|
78
|
+
if (input) input.indeterminate = intermediateState;
|
|
79
|
+
}, [intermediateState]);
|
|
80
|
+
return /*#__PURE__*/React__default.createElement("div", _extends({
|
|
81
|
+
ref: ref
|
|
82
|
+
}, forwardedProps, {
|
|
83
|
+
className: classNames(className, handleBasicClasses({
|
|
84
|
+
// Whether state is intermediate class name will "-checked"
|
|
85
|
+
isChecked: intermediateState ? true : isChecked,
|
|
86
|
+
isDisabled: isAnyDisabled,
|
|
87
|
+
isUnchecked: !isChecked,
|
|
88
|
+
prefix: CLASSNAME,
|
|
89
|
+
theme
|
|
90
|
+
}))
|
|
91
|
+
}), /*#__PURE__*/React__default.createElement("div", {
|
|
92
|
+
className: `${CLASSNAME}__input-wrapper`
|
|
93
|
+
}, /*#__PURE__*/React__default.createElement("input", _extends({
|
|
94
|
+
ref: useMergeRefs(inputRef, localInputRef),
|
|
95
|
+
type: "checkbox",
|
|
96
|
+
id: inputId,
|
|
97
|
+
className: `${CLASSNAME}__input-native`
|
|
98
|
+
}, disabledStateProps, {
|
|
99
|
+
name: name,
|
|
100
|
+
value: value,
|
|
101
|
+
checked: isChecked,
|
|
102
|
+
onChange: handleChange,
|
|
103
|
+
"aria-describedby": helper ? `${inputId}-helper` : undefined,
|
|
104
|
+
"aria-checked": intermediateState ? 'mixed' : Boolean(isChecked),
|
|
105
|
+
readOnly: inputProps.readOnly || disabledStateProps['aria-disabled']
|
|
106
|
+
}, inputProps)), /*#__PURE__*/React__default.createElement("div", {
|
|
107
|
+
className: `${CLASSNAME}__input-placeholder`
|
|
108
|
+
}, /*#__PURE__*/React__default.createElement("div", {
|
|
109
|
+
className: `${CLASSNAME}__input-background`
|
|
110
|
+
}), /*#__PURE__*/React__default.createElement("div", {
|
|
111
|
+
className: `${CLASSNAME}__input-indicator`
|
|
112
|
+
}, /*#__PURE__*/React__default.createElement(Icon, {
|
|
113
|
+
icon: intermediateState ? mdiMinus : mdiCheck
|
|
114
|
+
})))), /*#__PURE__*/React__default.createElement("div", {
|
|
115
|
+
className: `${CLASSNAME}__content`
|
|
116
|
+
}, label && /*#__PURE__*/React__default.createElement(InputLabel, {
|
|
117
|
+
htmlFor: inputId,
|
|
118
|
+
className: `${CLASSNAME}__label`,
|
|
119
|
+
theme: theme
|
|
120
|
+
}, label), helper && /*#__PURE__*/React__default.createElement(InputHelper, {
|
|
121
|
+
id: `${inputId}-helper`,
|
|
122
|
+
className: `${CLASSNAME}__helper`,
|
|
123
|
+
theme: theme
|
|
124
|
+
}, helper)));
|
|
125
|
+
});
|
|
126
|
+
Checkbox.displayName = COMPONENT_NAME;
|
|
127
|
+
Checkbox.className = CLASSNAME;
|
|
128
|
+
Checkbox.defaultProps = DEFAULT_PROPS;
|
|
129
|
+
|
|
130
|
+
export { Checkbox };
|
|
131
|
+
//# sourceMappingURL=checkbox-dc4caec8.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"f0900583.js","sources":["../../../lumx-icons/dist/esm/check.js","../../../lumx-icons/dist/esm/minus.js","../../src/components/checkbox/Checkbox.tsx"],"sourcesContent":["export const mdiCheck = 'M21 7 9 19l-5.5-5.5 1.41-1.41L9 16.17 19.59 5.59z';","export const mdiMinus = 'M19 13H5v-2h14z';","import React, { InputHTMLAttributes, ReactNode, SyntheticEvent } from 'react';\n\nimport classNames from 'classnames';\n\nimport { mdiCheck, mdiMinus } from '@lumx/icons';\n\nimport { Icon, 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 { useMergeRefs } from '@lumx/react/utils/react/mergeRefs';\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 * Intermediate state of checkbox.\n */\nconst INTERMEDIATE_STATE = 'intermediate';\n\n/**\n * Defines the props of the component.\n */\nexport interface CheckboxProps extends GenericProps, HasTheme, HasAriaDisabled {\n /** Helper text. */\n helper?: string;\n /** Native input id property. */\n id?: string;\n /** Native input ref. */\n inputRef?: React.Ref<HTMLInputElement>;\n /** Whether it is checked or not or intermediate. */\n isChecked?: boolean | 'intermediate';\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Label text. */\n label?: ReactNode;\n /** Native input name property. */\n name?: string;\n /** Native input value property. */\n value?: string;\n /** optional props for input */\n inputProps?: InputHTMLAttributes<HTMLInputElement>;\n /** On change callback. */\n onChange?(isChecked: boolean, value?: string, name?: string, event?: SyntheticEvent): void;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'Checkbox';\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<CheckboxProps> = {};\n\n/**\n * Checkbox component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const Checkbox = forwardRef<CheckboxProps, HTMLDivElement>((props, ref) => {\n const { isAnyDisabled, disabledStateProps, otherProps } = useDisableStateProps(props);\n const defaultTheme = useTheme() || Theme.light;\n const {\n checked,\n className,\n helper,\n id,\n inputRef,\n isChecked = checked,\n label,\n name,\n onChange,\n theme = defaultTheme,\n value,\n inputProps = {},\n ...forwardedProps\n } = otherProps;\n const localInputRef = React.useRef<HTMLInputElement>(null);\n const generatedInputId = useId();\n const inputId = id || generatedInputId;\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (onChange) {\n onChange(!isChecked, value, name, event);\n }\n };\n\n const intermediateState = isChecked === INTERMEDIATE_STATE;\n\n React.useEffect(() => {\n const input = localInputRef.current;\n if (input) input.indeterminate = intermediateState;\n }, [intermediateState]);\n\n return (\n <div\n ref={ref}\n {...forwardedProps}\n className={classNames(\n className,\n handleBasicClasses({\n // Whether state is intermediate class name will \"-checked\"\n isChecked: intermediateState ? true : isChecked,\n isDisabled: isAnyDisabled,\n isUnchecked: !isChecked,\n prefix: CLASSNAME,\n theme,\n }),\n )}\n >\n <div className={`${CLASSNAME}__input-wrapper`}>\n <input\n ref={useMergeRefs(inputRef, localInputRef)}\n type=\"checkbox\"\n id={inputId}\n className={`${CLASSNAME}__input-native`}\n {...disabledStateProps}\n name={name}\n value={value}\n checked={isChecked}\n onChange={handleChange}\n aria-describedby={helper ? `${inputId}-helper` : undefined}\n aria-checked={intermediateState ? 'mixed' : Boolean(isChecked)}\n readOnly={inputProps.readOnly || disabledStateProps['aria-disabled']}\n {...inputProps}\n />\n\n <div className={`${CLASSNAME}__input-placeholder`}>\n <div className={`${CLASSNAME}__input-background`} />\n\n <div className={`${CLASSNAME}__input-indicator`}>\n <Icon icon={intermediateState ? mdiMinus : mdiCheck} />\n </div>\n </div>\n </div>\n\n <div className={`${CLASSNAME}__content`}>\n {label && (\n <InputLabel htmlFor={inputId} className={`${CLASSNAME}__label`} theme={theme}>\n {label}\n </InputLabel>\n )}\n {helper && (\n <InputHelper id={`${inputId}-helper`} className={`${CLASSNAME}__helper`} theme={theme}>\n {helper}\n </InputHelper>\n )}\n </div>\n </div>\n );\n});\nCheckbox.displayName = COMPONENT_NAME;\nCheckbox.className = CLASSNAME;\nCheckbox.defaultProps = DEFAULT_PROPS;\n"],"names":["mdiCheck","mdiMinus","INTERMEDIATE_STATE","COMPONENT_NAME","CLASSNAME","getRootClassName","DEFAULT_PROPS","Checkbox","forwardRef","props","ref","isAnyDisabled","disabledStateProps","otherProps","useDisableStateProps","defaultTheme","useTheme","Theme","light","checked","className","helper","id","inputRef","isChecked","label","name","onChange","theme","value","inputProps","forwardedProps","localInputRef","React","useRef","generatedInputId","useId","inputId","handleChange","event","intermediateState","useEffect","input","current","indeterminate","_jsxs","classNames","handleBasicClasses","isDisabled","isUnchecked","prefix","children","_jsx","useMergeRefs","type","undefined","Boolean","readOnly","Icon","icon","InputLabel","htmlFor","InputHelper","displayName","defaultProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"checkbox-dc4caec8.js","sources":["../../../src/components/checkbox/Checkbox.tsx"],"sourcesContent":["import React, { InputHTMLAttributes, ReactNode, SyntheticEvent } from 'react';\n\nimport classNames from 'classnames';\n\nimport { mdiCheck, mdiMinus } from '@lumx/icons';\n\nimport { Icon, 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 { useMergeRefs } from '@lumx/react/utils/react/mergeRefs';\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 * Intermediate state of checkbox.\n */\nconst INTERMEDIATE_STATE = 'intermediate';\n\n/**\n * Defines the props of the component.\n */\nexport interface CheckboxProps extends GenericProps, HasTheme, HasAriaDisabled {\n /** Helper text. */\n helper?: string;\n /** Native input id property. */\n id?: string;\n /** Native input ref. */\n inputRef?: React.Ref<HTMLInputElement>;\n /** Whether it is checked or not or intermediate. */\n isChecked?: boolean | 'intermediate';\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Label text. */\n label?: ReactNode;\n /** Native input name property. */\n name?: string;\n /** Native input value property. */\n value?: string;\n /** optional props for input */\n inputProps?: InputHTMLAttributes<HTMLInputElement>;\n /** On change callback. */\n onChange?(isChecked: boolean, value?: string, name?: string, event?: SyntheticEvent): void;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'Checkbox';\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<CheckboxProps> = {};\n\n/**\n * Checkbox component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const Checkbox = forwardRef<CheckboxProps, HTMLDivElement>((props, ref) => {\n const { isAnyDisabled, disabledStateProps, otherProps } = useDisableStateProps(props);\n const defaultTheme = useTheme() || Theme.light;\n const {\n checked,\n className,\n helper,\n id,\n inputRef,\n isChecked = checked,\n label,\n name,\n onChange,\n theme = defaultTheme,\n value,\n inputProps = {},\n ...forwardedProps\n } = otherProps;\n const localInputRef = React.useRef<HTMLInputElement>(null);\n const generatedInputId = useId();\n const inputId = id || generatedInputId;\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (onChange) {\n onChange(!isChecked, value, name, event);\n }\n };\n\n const intermediateState = isChecked === INTERMEDIATE_STATE;\n\n React.useEffect(() => {\n const input = localInputRef.current;\n if (input) input.indeterminate = intermediateState;\n }, [intermediateState]);\n\n return (\n <div\n ref={ref}\n {...forwardedProps}\n className={classNames(\n className,\n handleBasicClasses({\n // Whether state is intermediate class name will \"-checked\"\n isChecked: intermediateState ? true : isChecked,\n isDisabled: isAnyDisabled,\n isUnchecked: !isChecked,\n prefix: CLASSNAME,\n theme,\n }),\n )}\n >\n <div className={`${CLASSNAME}__input-wrapper`}>\n <input\n ref={useMergeRefs(inputRef, localInputRef)}\n type=\"checkbox\"\n id={inputId}\n className={`${CLASSNAME}__input-native`}\n {...disabledStateProps}\n name={name}\n value={value}\n checked={isChecked}\n onChange={handleChange}\n aria-describedby={helper ? `${inputId}-helper` : undefined}\n aria-checked={intermediateState ? 'mixed' : Boolean(isChecked)}\n readOnly={inputProps.readOnly || disabledStateProps['aria-disabled']}\n {...inputProps}\n />\n\n <div className={`${CLASSNAME}__input-placeholder`}>\n <div className={`${CLASSNAME}__input-background`} />\n\n <div className={`${CLASSNAME}__input-indicator`}>\n <Icon icon={intermediateState ? mdiMinus : mdiCheck} />\n </div>\n </div>\n </div>\n\n <div className={`${CLASSNAME}__content`}>\n {label && (\n <InputLabel htmlFor={inputId} className={`${CLASSNAME}__label`} theme={theme}>\n {label}\n </InputLabel>\n )}\n {helper && (\n <InputHelper id={`${inputId}-helper`} className={`${CLASSNAME}__helper`} theme={theme}>\n {helper}\n </InputHelper>\n )}\n </div>\n </div>\n );\n});\nCheckbox.displayName = COMPONENT_NAME;\nCheckbox.className = CLASSNAME;\nCheckbox.defaultProps = DEFAULT_PROPS;\n"],"names":["INTERMEDIATE_STATE","COMPONENT_NAME","CLASSNAME","getRootClassName","DEFAULT_PROPS","Checkbox","forwardRef","props","ref","isAnyDisabled","disabledStateProps","otherProps","useDisableStateProps","defaultTheme","useTheme","Theme","light","checked","className","helper","id","inputRef","isChecked","label","name","onChange","theme","value","inputProps","forwardedProps","localInputRef","React","useRef","generatedInputId","useId","inputId","handleChange","event","intermediateState","useEffect","input","current","indeterminate","createElement","_extends","classNames","handleBasicClasses","isDisabled","isUnchecked","prefix","useMergeRefs","type","undefined","Boolean","readOnly","Icon","icon","mdiMinus","mdiCheck","InputLabel","htmlFor","InputHelper","displayName","defaultProps"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { C as Chip } from '
|
|
2
|
-
import {
|
|
1
|
+
export { C as Chip } from '../Chip-4c572eec.js';
|
|
2
|
+
import { f as forwardRef, _ as _extends, c as classNames } from '../forwardRef-49d2bb84.js';
|
|
3
|
+
import { getRootClassName } from '@lumx/core/js/utils/className';
|
|
3
4
|
import { useState } from 'react';
|
|
4
|
-
import { jsx } from 'react/jsx-runtime';
|
|
5
5
|
|
|
6
6
|
const INITIAL_STATE_ACTIVE_CHIP = -1;
|
|
7
7
|
|
|
@@ -54,6 +54,10 @@ const useChipGroupNavigation = (chips, onChipDeleted, initialActiveChip = INITIA
|
|
|
54
54
|
};
|
|
55
55
|
};
|
|
56
56
|
|
|
57
|
+
/**
|
|
58
|
+
* Defines the props of the component.
|
|
59
|
+
*/
|
|
60
|
+
|
|
57
61
|
/**
|
|
58
62
|
* Component default props.
|
|
59
63
|
*/
|
|
@@ -83,12 +87,11 @@ const InternalChipGroup = forwardRef((props, ref) => {
|
|
|
83
87
|
className,
|
|
84
88
|
...forwardedProps
|
|
85
89
|
} = props;
|
|
86
|
-
return /*#__PURE__*/
|
|
87
|
-
ref: ref
|
|
88
|
-
|
|
89
|
-
className: classNames(className, CLASSNAME)
|
|
90
|
-
|
|
91
|
-
});
|
|
90
|
+
return /*#__PURE__*/React.createElement("div", _extends({
|
|
91
|
+
ref: ref
|
|
92
|
+
}, forwardedProps, {
|
|
93
|
+
className: classNames(className, CLASSNAME)
|
|
94
|
+
}), children);
|
|
92
95
|
});
|
|
93
96
|
InternalChipGroup.displayName = COMPONENT_NAME;
|
|
94
97
|
InternalChipGroup.className = CLASSNAME;
|
|
@@ -98,4 +101,4 @@ const ChipGroup = Object.assign(InternalChipGroup, {
|
|
|
98
101
|
});
|
|
99
102
|
|
|
100
103
|
export { ChipGroup };
|
|
101
|
-
//# sourceMappingURL=
|
|
104
|
+
//# sourceMappingURL=chip-fb3d0c76.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chip-fb3d0c76.js","sources":["../../../src/hooks/useChipGroupNavigation.tsx","../../../src/components/chip/ChipGroup.tsx"],"sourcesContent":["import { useState } from 'react';\n\ninterface UseChipGroupNavigation {\n /** the current active chip index */\n activeChip: number;\n\n /** callback to be executed when the backspace was pressed */\n onBackspacePressed(): void;\n\n /** function that allows to reset the navigation */\n resetChipNavigation(): void;\n}\n\nexport type useChipGroupNavigationType<C = any> = (\n chips: C[],\n onChipDeleted: (chip: C) => void,\n initialActiveChip?: number,\n) => UseChipGroupNavigation;\n\nconst INITIAL_STATE_ACTIVE_CHIP = -1;\n\n/**\n * Hook that provides the necessary information to manage chips navigation.\n * @param chips List of chips selected.\n * @param onChipDeleted Callback executed when a chip must be eliminated.\n * @param initialActiveChip Initial active chip index.\n *\n * @return chip navigation tools.\n */\nexport const useChipGroupNavigation: useChipGroupNavigationType = (\n chips,\n onChipDeleted,\n initialActiveChip = INITIAL_STATE_ACTIVE_CHIP,\n) => {\n const [wasBackspacePressed, setWasBackspacePressed] = useState(false);\n const [activeChip, setActiveChip] = useState(initialActiveChip);\n\n /**\n * Resets the active index and backspace control to their initial state\n */\n const resetChipNavigation = () => {\n setWasBackspacePressed(false);\n setActiveChip(initialActiveChip);\n };\n\n /**\n * Callback to be executed when the backspace was pressed. If there are no chips\n * selected, it will return immediately. If there are it will check if the\n * backspace was already pressed. if it was, it means that the user wants to eliminate\n * the chip, so we execute the `onChipDeleted` function and reset internal state.\n *\n * If it was not pressed before, we set the `wasBackspacePressed` flag to true and\n * highlight the last chip.\n */\n const onBackspacePressed = () => {\n if (chips.length === 0) {\n return;\n }\n\n if (wasBackspacePressed) {\n const chipDeleted: any = chips[chips.length - 1];\n onChipDeleted(chipDeleted);\n resetChipNavigation();\n } else {\n setActiveChip(chips.length - 1);\n setWasBackspacePressed(true);\n }\n };\n\n return {\n activeChip,\n onBackspacePressed,\n resetChipNavigation,\n };\n};\n","import { ReactNode } from 'react';\n\nimport classNames from 'classnames';\n\nimport { HorizontalAlignment } from '@lumx/core/js/constants';\nimport { GenericProps } from '@lumx/react/utils/type';\nimport { getRootClassName } from '@lumx/core/js/utils/className';\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\n\nimport { useChipGroupNavigation } from '@lumx/react/hooks/useChipGroupNavigation';\n\n/**\n * Defines the props of the component.\n */\nexport interface ChipGroupProps extends GenericProps {\n /**\n * Chip horizontal alignment.\n * @deprecated\n */\n align?: HorizontalAlignment;\n /** List of Chip. */\n children: ReactNode;\n}\n\n/**\n * Component default props.\n */\nconst DEFAULT_PROPS: Partial<ChipGroupProps> = {};\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'ChipGroup';\n\n/**\n * Component default class name and class prefix.\n */\nconst CLASSNAME = getRootClassName(COMPONENT_NAME);\n\n/**\n * ChipGroup component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nconst InternalChipGroup = forwardRef<ChipGroupProps, HTMLDivElement>((props, ref) => {\n const { align, children, className, ...forwardedProps } = props;\n\n return (\n <div ref={ref} {...forwardedProps} className={classNames(className, CLASSNAME)}>\n {children}\n </div>\n );\n});\nInternalChipGroup.displayName = COMPONENT_NAME;\nInternalChipGroup.className = CLASSNAME;\nInternalChipGroup.defaultProps = DEFAULT_PROPS;\n\nexport const ChipGroup = Object.assign(InternalChipGroup, { useChipGroupNavigation });\n"],"names":["INITIAL_STATE_ACTIVE_CHIP","useChipGroupNavigation","chips","onChipDeleted","initialActiveChip","wasBackspacePressed","setWasBackspacePressed","useState","activeChip","setActiveChip","resetChipNavigation","onBackspacePressed","length","chipDeleted","DEFAULT_PROPS","COMPONENT_NAME","CLASSNAME","getRootClassName","InternalChipGroup","forwardRef","props","ref","align","children","className","forwardedProps","React","createElement","_extends","classNames","displayName","defaultProps","ChipGroup","Object","assign"],"mappings":";;;;;AAmBA,MAAMA,yBAAyB,GAAG,CAAC,CAAC,CAAA;;AAEpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,sBAAkD,GAAGA,CAC9DC,KAAK,EACLC,aAAa,EACbC,iBAAiB,GAAGJ,yBAAyB,KAC5C;EACD,MAAM,CAACK,mBAAmB,EAAEC,sBAAsB,CAAC,GAAGC,QAAQ,CAAC,KAAK,CAAC,CAAA;EACrE,MAAM,CAACC,UAAU,EAAEC,aAAa,CAAC,GAAGF,QAAQ,CAACH,iBAAiB,CAAC,CAAA;;AAE/D;AACJ;AACA;EACI,MAAMM,mBAAmB,GAAGA,MAAM;IAC9BJ,sBAAsB,CAAC,KAAK,CAAC,CAAA;IAC7BG,aAAa,CAACL,iBAAiB,CAAC,CAAA;GACnC,CAAA;;AAED;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACI,MAAMO,kBAAkB,GAAGA,MAAM;AAC7B,IAAA,IAAIT,KAAK,CAACU,MAAM,KAAK,CAAC,EAAE;AACpB,MAAA,OAAA;AACJ,KAAA;AAEA,IAAA,IAAIP,mBAAmB,EAAE;MACrB,MAAMQ,WAAgB,GAAGX,KAAK,CAACA,KAAK,CAACU,MAAM,GAAG,CAAC,CAAC,CAAA;MAChDT,aAAa,CAACU,WAAW,CAAC,CAAA;AAC1BH,MAAAA,mBAAmB,EAAE,CAAA;AACzB,KAAC,MAAM;AACHD,MAAAA,aAAa,CAACP,KAAK,CAACU,MAAM,GAAG,CAAC,CAAC,CAAA;MAC/BN,sBAAsB,CAAC,IAAI,CAAC,CAAA;AAChC,KAAA;GACH,CAAA;EAED,OAAO;IACHE,UAAU;IACVG,kBAAkB;AAClBD,IAAAA,mBAAAA;GACH,CAAA;AACL,CAAC;;AC/DD;AACA;AACA;;AAWA;AACA;AACA;AACA,MAAMI,aAAsC,GAAG,EAAE,CAAA;;AAEjD;AACA;AACA;AACA,MAAMC,cAAc,GAAG,WAAW,CAAA;;AAElC;AACA;AACA;AACA,MAAMC,SAAS,GAAGC,gBAAgB,CAACF,cAAc,CAAC,CAAA;;AAElD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMG,iBAAiB,GAAGC,UAAU,CAAiC,CAACC,KAAK,EAAEC,GAAG,KAAK;EACjF,MAAM;IAAEC,KAAK;IAAEC,QAAQ;IAAEC,SAAS;IAAE,GAAGC,cAAAA;AAAe,GAAC,GAAGL,KAAK,CAAA;AAE/D,EAAA,oBACIM,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAAC,QAAA,CAAA;AAAKP,IAAAA,GAAG,EAAEA,GAAAA;AAAI,GAAA,EAAKI,cAAc,EAAA;AAAED,IAAAA,SAAS,EAAEK,UAAU,CAACL,SAAS,EAAER,SAAS,CAAA;AAAE,GAAA,CAAA,EAC1EO,QACA,CAAC,CAAA;AAEd,CAAC,CAAC,CAAA;AACFL,iBAAiB,CAACY,WAAW,GAAGf,cAAc,CAAA;AAC9CG,iBAAiB,CAACM,SAAS,GAAGR,SAAS,CAAA;AACvCE,iBAAiB,CAACa,YAAY,GAAGjB,aAAa,CAAA;AAEvC,MAAMkB,SAAS,GAAGC,MAAM,CAACC,MAAM,CAAChB,iBAAiB,EAAE;AAAEjB,EAAAA,sBAAAA;AAAuB,CAAC;;;;"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { f as forwardRef, _ as _extends, c as classNames } from '../forwardRef-49d2bb84.js';
|
|
2
|
+
import { Children } from 'react';
|
|
3
|
+
import { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';
|
|
4
|
+
import { u as useTheme } from '../ThemeContext-3181f000.js';
|
|
5
|
+
import { Avatar } from './avatar-6990e3e9.js';
|
|
6
|
+
import { Theme, Size } from '@lumx/core/js/constants';
|
|
7
|
+
import { Tooltip } from './tooltip-84ffb4f9.js';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Comment block variants.
|
|
11
|
+
*/
|
|
12
|
+
const CommentBlockVariant = {
|
|
13
|
+
indented: 'indented',
|
|
14
|
+
linear: 'linear'
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Defines the props of the component.
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Component display name.
|
|
23
|
+
*/
|
|
24
|
+
const COMPONENT_NAME = 'CommentBlock';
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Component default class name and class prefix.
|
|
28
|
+
*/
|
|
29
|
+
const CLASSNAME = getRootClassName(COMPONENT_NAME);
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Component default props.
|
|
33
|
+
*/
|
|
34
|
+
const DEFAULT_PROPS = {
|
|
35
|
+
variant: CommentBlockVariant.indented
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* CommentBlock component.
|
|
40
|
+
*
|
|
41
|
+
* @param props Component props.
|
|
42
|
+
* @param ref Component ref.
|
|
43
|
+
* @return React element.
|
|
44
|
+
*/
|
|
45
|
+
const CommentBlock = forwardRef((props, ref) => {
|
|
46
|
+
const defaultTheme = useTheme() || Theme.light;
|
|
47
|
+
const {
|
|
48
|
+
actions,
|
|
49
|
+
avatarProps,
|
|
50
|
+
children,
|
|
51
|
+
className,
|
|
52
|
+
date,
|
|
53
|
+
fullDate,
|
|
54
|
+
hasActions,
|
|
55
|
+
headerActions,
|
|
56
|
+
isOpen,
|
|
57
|
+
isRelevant,
|
|
58
|
+
name,
|
|
59
|
+
onClick,
|
|
60
|
+
onMouseEnter,
|
|
61
|
+
onMouseLeave,
|
|
62
|
+
text,
|
|
63
|
+
theme = defaultTheme,
|
|
64
|
+
variant = DEFAULT_PROPS.variant,
|
|
65
|
+
...forwardedProps
|
|
66
|
+
} = props;
|
|
67
|
+
const hasChildren = Children.count(children) > 0;
|
|
68
|
+
return /*#__PURE__*/React.createElement("div", _extends({
|
|
69
|
+
ref: ref,
|
|
70
|
+
className: classNames(className, handleBasicClasses({
|
|
71
|
+
hasChildren: hasChildren && isOpen,
|
|
72
|
+
hasIndentedChildren: hasChildren && variant === CommentBlockVariant.indented,
|
|
73
|
+
hasLinearChildren: hasChildren && variant === CommentBlockVariant.linear,
|
|
74
|
+
isRelevant,
|
|
75
|
+
prefix: CLASSNAME,
|
|
76
|
+
theme
|
|
77
|
+
}))
|
|
78
|
+
}, forwardedProps), /*#__PURE__*/React.createElement("div", {
|
|
79
|
+
className: `${CLASSNAME}__wrapper`
|
|
80
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
81
|
+
className: `${CLASSNAME}__avatar`
|
|
82
|
+
}, /*#__PURE__*/React.createElement(Avatar, _extends({}, avatarProps, {
|
|
83
|
+
size: Size.m,
|
|
84
|
+
onClick: onClick
|
|
85
|
+
}))), /*#__PURE__*/React.createElement("div", {
|
|
86
|
+
className: `${CLASSNAME}__container`
|
|
87
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
88
|
+
className: `${CLASSNAME}__content`
|
|
89
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
90
|
+
className: `${CLASSNAME}__meta`
|
|
91
|
+
}, name &&
|
|
92
|
+
/*#__PURE__*/
|
|
93
|
+
// eslint-disable-next-line jsx-a11y/click-events-have-key-events,jsx-a11y/no-static-element-interactions
|
|
94
|
+
React.createElement("span", {
|
|
95
|
+
className: `${CLASSNAME}__name`,
|
|
96
|
+
onClick: onClick,
|
|
97
|
+
onMouseEnter: onMouseEnter,
|
|
98
|
+
onMouseLeave: onMouseLeave
|
|
99
|
+
}, name), headerActions && /*#__PURE__*/React.createElement("span", {
|
|
100
|
+
className: `${CLASSNAME}__header-actions`
|
|
101
|
+
}, headerActions)), /*#__PURE__*/React.createElement("div", {
|
|
102
|
+
className: `${CLASSNAME}__text`
|
|
103
|
+
}, text), date && (fullDate ? /*#__PURE__*/React.createElement(Tooltip, {
|
|
104
|
+
label: fullDate,
|
|
105
|
+
placement: "top"
|
|
106
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
107
|
+
className: `${CLASSNAME}__date`
|
|
108
|
+
}, date)) : /*#__PURE__*/React.createElement("span", {
|
|
109
|
+
className: `${CLASSNAME}__date`
|
|
110
|
+
}, date))), hasActions && /*#__PURE__*/React.createElement("div", {
|
|
111
|
+
className: `${CLASSNAME}__actions`
|
|
112
|
+
}, actions))), hasChildren && isOpen && /*#__PURE__*/React.createElement("div", {
|
|
113
|
+
className: `${CLASSNAME}__children`
|
|
114
|
+
}, children));
|
|
115
|
+
});
|
|
116
|
+
CommentBlock.displayName = COMPONENT_NAME;
|
|
117
|
+
CommentBlock.className = CLASSNAME;
|
|
118
|
+
CommentBlock.defaultProps = DEFAULT_PROPS;
|
|
119
|
+
|
|
120
|
+
export { CommentBlock, CommentBlockVariant };
|
|
121
|
+
//# sourceMappingURL=comment-block-b84c4694.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comment-block-b84c4694.js","sources":["../../../src/components/comment-block/CommentBlock.tsx"],"sourcesContent":["import { Children, ReactNode } from 'react';\n\nimport classNames from 'classnames';\n\nimport { Avatar, Size, Theme, Tooltip } from '@lumx/react';\nimport { GenericProps, HasTheme, ValueOf } from '@lumx/react/utils/type';\nimport { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\n\nimport { useTheme } from '@lumx/react/utils/theme/ThemeContext';\nimport { AvatarProps } from '../avatar/Avatar';\n\n/**\n * Comment block variants.\n */\nexport const CommentBlockVariant = {\n indented: 'indented',\n linear: 'linear',\n} as const;\nexport type CommentBlockVariant = ValueOf<typeof CommentBlockVariant>;\n\n/**\n * Defines the props of the component.\n */\nexport interface CommentBlockProps extends GenericProps, HasTheme {\n /** Action toolbar content. */\n actions?: ReactNode;\n /** Props to pass to the avatar. */\n avatarProps: AvatarProps;\n /** Comment block replies. */\n children?: ReactNode;\n /** Comment date with the minimal timestamp information (xx minutes, x hours, yesterday, 6 days, Month Day, Month Day Year)*/\n date?: string;\n /** Comment date with the full timestamp information (day, month, year, time) */\n fullDate?: string;\n /** Whether the component has actions to display or not. */\n hasActions?: boolean;\n /** Action toolbar header content. */\n headerActions?: ReactNode;\n /** Whether the component is open or not. */\n isOpen?: boolean;\n /** Whether the comment is relevant or not. */\n isRelevant?: boolean;\n /** Comment author name. */\n name?: React.ReactNode;\n /**\n * On click callback.\n * @deprecated Use avatarProps instead and/or inject a clickable component in `name`\n */\n onClick?(): void;\n /**\n * On mouse enter callback.\n * @deprecated Use avatarProps instead and/or inject a clickable component in `name`\n */\n onMouseEnter?(): void;\n /**\n * On mouse leave callback.\n * @deprecated Use avatarProps instead and/or inject a clickable component in `name`\n */\n onMouseLeave?(): void;\n /** Comment content. */\n text: ReactNode | string;\n /** Comment variant. */\n variant?: CommentBlockVariant;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'CommentBlock';\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<CommentBlockProps> = {\n variant: CommentBlockVariant.indented,\n};\n\n/**\n * CommentBlock component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const CommentBlock = forwardRef<CommentBlockProps, HTMLDivElement>((props, ref) => {\n const defaultTheme = useTheme() || Theme.light;\n const {\n actions,\n avatarProps,\n children,\n className,\n date,\n fullDate,\n hasActions,\n headerActions,\n isOpen,\n isRelevant,\n name,\n onClick,\n onMouseEnter,\n onMouseLeave,\n text,\n theme = defaultTheme,\n variant = DEFAULT_PROPS.variant,\n ...forwardedProps\n } = props;\n const hasChildren = Children.count(children) > 0;\n\n return (\n <div\n ref={ref}\n className={classNames(\n className,\n handleBasicClasses({\n hasChildren: hasChildren && isOpen,\n hasIndentedChildren: hasChildren && variant === CommentBlockVariant.indented,\n hasLinearChildren: hasChildren && variant === CommentBlockVariant.linear,\n isRelevant,\n prefix: CLASSNAME,\n theme,\n }),\n )}\n {...forwardedProps}\n >\n <div className={`${CLASSNAME}__wrapper`}>\n <div className={`${CLASSNAME}__avatar`}>\n <Avatar {...avatarProps} size={Size.m} onClick={onClick} />\n </div>\n\n <div className={`${CLASSNAME}__container`}>\n <div className={`${CLASSNAME}__content`}>\n <div className={`${CLASSNAME}__meta`}>\n {name && (\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events,jsx-a11y/no-static-element-interactions\n <span\n className={`${CLASSNAME}__name`}\n onClick={onClick}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n >\n {name}\n </span>\n )}\n {headerActions && <span className={`${CLASSNAME}__header-actions`}>{headerActions}</span>}\n </div>\n\n <div className={`${CLASSNAME}__text`}>{text}</div>\n {date &&\n (fullDate ? (\n <Tooltip label={fullDate} placement=\"top\">\n <span className={`${CLASSNAME}__date`}>{date}</span>\n </Tooltip>\n ) : (\n <span className={`${CLASSNAME}__date`}>{date}</span>\n ))}\n </div>\n {hasActions && <div className={`${CLASSNAME}__actions`}>{actions}</div>}\n </div>\n </div>\n {hasChildren && isOpen && <div className={`${CLASSNAME}__children`}>{children}</div>}\n </div>\n );\n});\nCommentBlock.displayName = COMPONENT_NAME;\nCommentBlock.className = CLASSNAME;\nCommentBlock.defaultProps = DEFAULT_PROPS;\n"],"names":["CommentBlockVariant","indented","linear","COMPONENT_NAME","CLASSNAME","getRootClassName","DEFAULT_PROPS","variant","CommentBlock","forwardRef","props","ref","defaultTheme","useTheme","Theme","light","actions","avatarProps","children","className","date","fullDate","hasActions","headerActions","isOpen","isRelevant","name","onClick","onMouseEnter","onMouseLeave","text","theme","forwardedProps","hasChildren","Children","count","React","createElement","_extends","classNames","handleBasicClasses","hasIndentedChildren","hasLinearChildren","prefix","Avatar","size","Size","m","Tooltip","label","placement","displayName","defaultProps"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date-picker-a425534c.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
+
import { f as forwardRef, _ as _extends, c as classNames } from '../forwardRef-49d2bb84.js';
|
|
1
2
|
import React__default, { useState, useEffect, useRef, useMemo, Children } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { u as
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import { u as
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import { Progress, ProgressVariant } from './f23cdf84.js';
|
|
3
|
+
import { D as DOCUMENT } from '../constants-d0e3f49e.js';
|
|
4
|
+
import { u as useCallbackOnEscape } from '../useCallbackOnEscape-ea4d9eb4.js';
|
|
5
|
+
import { u as useFocusTrap } from '../useFocusTrap-c3c6378b.js';
|
|
6
|
+
import { i as isComponent } from '../isComponent-78df9309.js';
|
|
7
|
+
import { p as partitionMulti } from '../partitionMulti-4daccdd5.js';
|
|
8
|
+
import { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';
|
|
9
|
+
import { m as mergeRefs } from '../mergeRefs-f0d7d6ea.js';
|
|
10
|
+
import { u as useDisableBodyScroll } from '../useDisableBodyScroll-36bd7352.js';
|
|
11
|
+
import { u as useTransitionVisibility } from '../useTransitionVisibility-321fdbfa.js';
|
|
12
|
+
import { T as ThemeProvider } from '../ThemeContext-3181f000.js';
|
|
13
|
+
import { P as Portal } from '../Portal-c43d098b.js';
|
|
14
|
+
import { H as HeadingLevelProvider } from '../HeadingLevelProvider-e4817816.js';
|
|
15
|
+
import { C as ClickAwayProvider } from '../ClickAwayProvider-bcce6ceb.js';
|
|
16
|
+
import { Progress, ProgressVariant } from './progress-eaf5b33d.js';
|
|
17
|
+
import { Size, DIALOG_TRANSITION_DURATION } from '@lumx/core/js/constants';
|
|
18
18
|
|
|
19
19
|
/**
|
|
20
20
|
* Convenient hook to create interaction observers.
|
|
@@ -47,6 +47,10 @@ function useIntersectionObserver(elements, options) {
|
|
|
47
47
|
return intersections;
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
+
/**
|
|
51
|
+
* Defines the props of the component.
|
|
52
|
+
*/
|
|
53
|
+
|
|
50
54
|
const isHeader = isComponent('header');
|
|
51
55
|
const isFooter = isComponent('footer');
|
|
52
56
|
|
|
@@ -165,73 +169,58 @@ const Dialog = forwardRef((props, ref) => {
|
|
|
165
169
|
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
166
170
|
const isVisible = useTransitionVisibility(rootRef, Boolean(isOpen), DIALOG_TRANSITION_DURATION, onVisibilityChange);
|
|
167
171
|
const shouldPreventCloseOnClickAway = preventAutoClose || preventCloseOnClick;
|
|
168
|
-
return isOpen || isVisible ? /*#__PURE__*/
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
className: classNames(`${CLASSNAME}__footer`, (forceFooterDivider || hasBottomIntersection) && `${CLASSNAME}__footer--has-divider`, footerChildProps?.className),
|
|
217
|
-
children: [footer, footerChildContent]
|
|
218
|
-
}), isLoading && /*#__PURE__*/jsx("div", {
|
|
219
|
-
className: `${CLASSNAME}__progress-overlay`,
|
|
220
|
-
children: /*#__PURE__*/jsx(Progress, {
|
|
221
|
-
variant: ProgressVariant.circular
|
|
222
|
-
})
|
|
223
|
-
})]
|
|
224
|
-
})
|
|
225
|
-
})
|
|
226
|
-
})
|
|
227
|
-
})
|
|
228
|
-
})]
|
|
229
|
-
})
|
|
230
|
-
}) : null;
|
|
172
|
+
return isOpen || isVisible ? /*#__PURE__*/React__default.createElement(Portal, null, /*#__PURE__*/React__default.createElement("div", _extends({
|
|
173
|
+
ref: mergeRefs(rootRef, ref)
|
|
174
|
+
}, forwardedProps, {
|
|
175
|
+
className: classNames(className, handleBasicClasses({
|
|
176
|
+
isHidden: !isOpen,
|
|
177
|
+
isLoading,
|
|
178
|
+
isShown: isOpen || isVisible,
|
|
179
|
+
prefix: CLASSNAME,
|
|
180
|
+
size
|
|
181
|
+
})),
|
|
182
|
+
style: {
|
|
183
|
+
zIndex
|
|
184
|
+
}
|
|
185
|
+
}), /*#__PURE__*/React__default.createElement("div", {
|
|
186
|
+
className: `${CLASSNAME}__overlay`
|
|
187
|
+
}), /*#__PURE__*/React__default.createElement(HeadingLevelProvider, {
|
|
188
|
+
level: 2
|
|
189
|
+
}, /*#__PURE__*/React__default.createElement(ThemeProvider, {
|
|
190
|
+
value: undefined
|
|
191
|
+
}, /*#__PURE__*/React__default.createElement("div", _extends({
|
|
192
|
+
className: `${CLASSNAME}__container`,
|
|
193
|
+
role: "dialog",
|
|
194
|
+
"aria-modal": "true"
|
|
195
|
+
}, dialogProps), /*#__PURE__*/React__default.createElement(ClickAwayProvider, {
|
|
196
|
+
callback: !shouldPreventCloseOnClickAway && onClose,
|
|
197
|
+
childrenRefs: clickAwayRefs,
|
|
198
|
+
parentRef: rootRef
|
|
199
|
+
}, /*#__PURE__*/React__default.createElement("section", {
|
|
200
|
+
className: `${CLASSNAME}__wrapper`,
|
|
201
|
+
ref: wrapperRef
|
|
202
|
+
}, (header || headerChildContent) && /*#__PURE__*/React__default.createElement("header", _extends({}, headerChildProps, {
|
|
203
|
+
className: classNames(`${CLASSNAME}__header`, (forceHeaderDivider || hasTopIntersection) && `${CLASSNAME}__header--has-divider`, headerChildProps?.className)
|
|
204
|
+
}), header, headerChildContent), /*#__PURE__*/React__default.createElement("div", {
|
|
205
|
+
ref: mergeRefs(contentRef, localContentRef),
|
|
206
|
+
className: `${CLASSNAME}__content`
|
|
207
|
+
}, /*#__PURE__*/React__default.createElement("div", {
|
|
208
|
+
className: `${CLASSNAME}__sentinel ${CLASSNAME}__sentinel--top`,
|
|
209
|
+
ref: setSentinelTop
|
|
210
|
+
}), content, /*#__PURE__*/React__default.createElement("div", {
|
|
211
|
+
className: `${CLASSNAME}__sentinel ${CLASSNAME}__sentinel--bottom`,
|
|
212
|
+
ref: setSentinelBottom
|
|
213
|
+
})), (footer || footerChildContent) && /*#__PURE__*/React__default.createElement("footer", _extends({}, footerChildProps, {
|
|
214
|
+
className: classNames(`${CLASSNAME}__footer`, (forceFooterDivider || hasBottomIntersection) && `${CLASSNAME}__footer--has-divider`, footerChildProps?.className)
|
|
215
|
+
}), footer, footerChildContent), isLoading && /*#__PURE__*/React__default.createElement("div", {
|
|
216
|
+
className: `${CLASSNAME}__progress-overlay`
|
|
217
|
+
}, /*#__PURE__*/React__default.createElement(Progress, {
|
|
218
|
+
variant: ProgressVariant.circular
|
|
219
|
+
}))))))))) : null;
|
|
231
220
|
});
|
|
232
221
|
Dialog.displayName = COMPONENT_NAME;
|
|
233
222
|
Dialog.className = CLASSNAME;
|
|
234
223
|
Dialog.defaultProps = DEFAULT_PROPS;
|
|
235
224
|
|
|
236
225
|
export { Dialog };
|
|
237
|
-
//# sourceMappingURL=
|
|
226
|
+
//# sourceMappingURL=dialog-7dbcb485.js.map
|