@lumx/react 3.20.1-alpha.31 → 3.20.1-alpha.33
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/_virtual/_commonjsHelpers-d57d3fc6.js +6 -0
- package/_internal/_virtual/_commonjsHelpers-d57d3fc6.js.map +1 -0
- package/_internal/_virtual/index-0d23cc6a.js +8 -0
- package/_internal/_virtual/index-0d23cc6a.js.map +1 -0
- package/_internal/_virtual/index-3f54fe9e.js +4 -0
- package/_internal/_virtual/index-3f54fe9e.js.map +1 -0
- package/_internal/_virtual/index-4b633603.js +6 -0
- package/_internal/_virtual/index-4b633603.js.map +1 -0
- package/_internal/_virtual/react-is.development-0f849025.js +4 -0
- package/_internal/_virtual/react-is.development-0f849025.js.map +1 -0
- package/_internal/_virtual/react-is.production.min-42b26576.js +4 -0
- package/_internal/_virtual/react-is.production.min-42b26576.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/createPopper-53c3ecaa.js +258 -0
- package/_internal/node_modules/@popperjs/core/lib/createPopper-53c3ecaa.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/contains-814049c5.js +27 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/contains-814049c5.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect-07f6dc7c.js +16 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect-07f6dc7c.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getClippingRect-ce686041.js +72 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getClippingRect-ce686041.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getCompositeRect-1c7842bd.js +52 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getCompositeRect-1c7842bd.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getComputedStyle-368dcd7b.js +8 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getComputedStyle-368dcd7b.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getDocumentElement-7a1e1a70.js +9 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getDocumentElement-7a1e1a70.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getDocumentRect-77338b42.js +30 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getDocumentRect-77338b42.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll-30ecdee3.js +9 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll-30ecdee3.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getLayoutRect-e7aa44d1.js +13 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getLayoutRect-e7aa44d1.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getNodeName-879fa64d.js +6 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getNodeName-879fa64d.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getNodeScroll-b32b4fa3.js +15 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getNodeScroll-b32b4fa3.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getOffsetParent-4b7b3db4.js +65 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getOffsetParent-4b7b3db4.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getParentNode-a8800612.js +21 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getParentNode-a8800612.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getScrollParent-ce447857.js +20 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getScrollParent-ce447857.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getViewportRect-b03adce5.js +44 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getViewportRect-b03adce5.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getWindow-a0a42aca.js +14 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getWindow-a0a42aca.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getWindowScroll-3206cb97.js +14 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getWindowScroll-3206cb97.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX-8be98570.js +17 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX-8be98570.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/instanceOf-d54ebfaa.js +28 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/instanceOf-d54ebfaa.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/isScrollParent-d888d2df.js +14 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/isScrollParent-d888d2df.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/isTableElement-e97ecc33.js +8 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/isTableElement-e97ecc33.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/listScrollParents-7ac31122.js +29 -0
- package/_internal/node_modules/@popperjs/core/lib/dom-utils/listScrollParents-7ac31122.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/enums-f4baa1da.js +34 -0
- package/_internal/node_modules/@popperjs/core/lib/enums-f4baa1da.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/modifiers/applyStyles-e5cd080b.js +90 -0
- package/_internal/node_modules/@popperjs/core/lib/modifiers/applyStyles-e5cd080b.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/modifiers/arrow-f15e8999.js +102 -0
- package/_internal/node_modules/@popperjs/core/lib/modifiers/arrow-f15e8999.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/modifiers/computeStyles-fce107d1.js +141 -0
- package/_internal/node_modules/@popperjs/core/lib/modifiers/computeStyles-fce107d1.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/modifiers/eventListeners-a7214f2f.js +52 -0
- package/_internal/node_modules/@popperjs/core/lib/modifiers/eventListeners-a7214f2f.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/modifiers/flip-e3fed99a.js +150 -0
- package/_internal/node_modules/@popperjs/core/lib/modifiers/flip-e3fed99a.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/modifiers/hide-415890f0.js +64 -0
- package/_internal/node_modules/@popperjs/core/lib/modifiers/hide-415890f0.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/modifiers/offset-cde1ce5c.js +57 -0
- package/_internal/node_modules/@popperjs/core/lib/modifiers/offset-cde1ce5c.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/modifiers/popperOffsets-1f0d11fe.js +28 -0
- package/_internal/node_modules/@popperjs/core/lib/modifiers/popperOffsets-1f0d11fe.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/modifiers/preventOverflow-698df0f8.js +122 -0
- package/_internal/node_modules/@popperjs/core/lib/modifiers/preventOverflow-698df0f8.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/popper-e7d46b35.js +18 -0
- package/_internal/node_modules/@popperjs/core/lib/popper-e7d46b35.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/computeAutoPlacement-b8f3134e.js +55 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/computeAutoPlacement-b8f3134e.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/computeOffsets-00ceeb21.js +72 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/computeOffsets-00ceeb21.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/debounce-d5f5f3f5.js +18 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/debounce-d5f5f3f5.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/detectOverflow-70184010.js +67 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/detectOverflow-70184010.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/expandToHashMap-722ea461.js +9 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/expandToHashMap-722ea461.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/format-c01c3bec.js +12 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/format-c01c3bec.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/getAltAxis-c9a3b27f.js +6 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/getAltAxis-c9a3b27f.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/getBasePlacement-215781b4.js +6 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/getBasePlacement-215781b4.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/getFreshSideObject-b402784b.js +11 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/getFreshSideObject-b402784b.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement-728684f6.js +6 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement-728684f6.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/getOppositePlacement-20f07616.js +14 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/getOppositePlacement-20f07616.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement-37f5ba95.js +12 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement-37f5ba95.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/getVariation-9a5db774.js +6 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/getVariation-9a5db774.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/mergeByName-200c2ce1.js +17 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/mergeByName-200c2ce1.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/mergePaddingObject-6e22c702.js +8 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/mergePaddingObject-6e22c702.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/orderModifiers-14404061.js +47 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/orderModifiers-14404061.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/rectToClientRect-00560d40.js +11 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/rectToClientRect-00560d40.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/uniqueBy-c625d242.js +14 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/uniqueBy-c625d242.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/validateModifiers-4c621f83.js +80 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/validateModifiers-4c621f83.js.map +1 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/within-9361ef65.js +6 -0
- package/_internal/node_modules/@popperjs/core/lib/utils/within-9361ef65.js.map +1 -0
- package/_internal/{useDisableBodyScroll-36bd7352.js → node_modules/body-scroll-lock/lib/bodyScrollLock.esm-8e8c5ab6.js} +2 -29
- package/_internal/node_modules/body-scroll-lock/lib/bodyScrollLock.esm-8e8c5ab6.js.map +1 -0
- package/_internal/node_modules/react-fast-compare/index-99513933.js +145 -0
- package/_internal/node_modules/react-fast-compare/index-99513933.js.map +1 -0
- package/_internal/node_modules/react-is/cjs/react-is.development-14e01ef0.js +231 -0
- package/_internal/node_modules/react-is/cjs/react-is.development-14e01ef0.js.map +1 -0
- package/_internal/node_modules/react-is/cjs/react-is.production.min-e9383e8b.js +27 -0
- package/_internal/node_modules/react-is/cjs/react-is.production.min-e9383e8b.js.map +1 -0
- package/_internal/node_modules/react-is/index-9764fb9f.js +20 -0
- package/_internal/node_modules/react-is/index-9764fb9f.js.map +1 -0
- package/_internal/node_modules/react-popper/lib/esm/usePopper-83c4b46f.js +100 -0
- package/_internal/node_modules/react-popper/lib/esm/usePopper-83c4b46f.js.map +1 -0
- package/_internal/node_modules/react-popper/lib/esm/utils-e142a98d.js +22 -0
- package/_internal/node_modules/react-popper/lib/esm/utils-e142a98d.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/alert-circle-893eb653.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/alert-circle-893eb653.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/alert-f419ecef.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/alert-f419ecef.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/arrow-down-a32628a1.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/arrow-down-a32628a1.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/arrow-up-78a9c3cd.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/arrow-up-78a9c3cd.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/check-1c3b349b.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/check-1c3b349b.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/check-circle-e47dacb8.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/check-circle-e47dacb8.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/chevron-down-256f8eff.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/chevron-down-256f8eff.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/chevron-left-e9c3b1e0.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/chevron-left-e9c3b1e0.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/chevron-right-aeba575c.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/chevron-right-aeba575c.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/chevron-up-0846b7f3.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/chevron-up-0846b7f3.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/close-ad7c38b0.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/close-ad7c38b0.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/close-circle-6f37d603.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/close-circle-6f37d603.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/drag-vertical-c72d4f8b.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/drag-vertical-c72d4f8b.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/image-broken-1060c47e.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/image-broken-1060c47e.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/information-68f13c1c.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/information-68f13c1c.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/magnify-minus-outline-2d69d0f5.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/magnify-minus-outline-2d69d0f5.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/magnify-plus-outline-341ceaa9.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/magnify-plus-outline-341ceaa9.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/menu-down-b0846836.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/menu-down-b0846836.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/minus-b9ed1f7a.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/minus-b9ed1f7a.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/pause-circle-outline-4bb19934.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/pause-circle-outline-4bb19934.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/play-circle-outline-185778b8.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/play-circle-outline-185778b8.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/radiobox-blank-4f71fd36.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/radiobox-blank-4f71fd36.js.map +1 -0
- package/_internal/packages/lumx-icons/dist/esm/radiobox-marked-a2c7c463.js +4 -0
- package/_internal/packages/lumx-icons/dist/esm/radiobox-marked-a2c7c463.js.map +1 -0
- package/_internal/{components/alert-dialog-bd1b2532.js → packages/lumx-react/src/components/alert-dialog/AlertDialog-9cbbc6b1.js} +11 -8
- package/_internal/packages/lumx-react/src/components/alert-dialog/AlertDialog-9cbbc6b1.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/autocomplete/Autocomplete-d2b59692.js +133 -0
- package/_internal/packages/lumx-react/src/components/autocomplete/Autocomplete-d2b59692.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/autocomplete/AutocompleteMultiple-3ea98830.js +139 -0
- package/_internal/packages/lumx-react/src/components/autocomplete/AutocompleteMultiple-3ea98830.js.map +1 -0
- package/_internal/{components/avatar-778d7df6.js → packages/lumx-react/src/components/avatar/Avatar-a875f5a5.js} +4 -4
- package/_internal/packages/lumx-react/src/components/avatar/Avatar-a875f5a5.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/badge/Badge-2a365bd5.js +53 -0
- package/_internal/packages/lumx-react/src/components/badge/Badge-2a365bd5.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/badge/BadgeWrapper-884b7745.js +36 -0
- package/_internal/packages/lumx-react/src/components/badge/BadgeWrapper-884b7745.js.map +1 -0
- package/_internal/{Button-f382ee1c.js → packages/lumx-react/src/components/button/Button-86d16087.js} +13 -12
- package/_internal/packages/lumx-react/src/components/button/Button-86d16087.js.map +1 -0
- package/_internal/{components/button-4aff084a.js → packages/lumx-react/src/components/button/ButtonGroup-637b48c7.js} +2 -4
- package/_internal/packages/lumx-react/src/components/button/ButtonGroup-637b48c7.js.map +1 -0
- package/_internal/{ButtonRoot-a70baf82.js → packages/lumx-react/src/components/button/ButtonRoot-c88195b6.js} +6 -6
- package/_internal/packages/lumx-react/src/components/button/ButtonRoot-c88195b6.js.map +1 -0
- package/_internal/{IconButton-1790b47e.js → packages/lumx-react/src/components/button/IconButton-a740ce59.js} +7 -7
- package/_internal/packages/lumx-react/src/components/button/IconButton-a740ce59.js.map +1 -0
- package/_internal/{components/checkbox-a448ca6c.js → packages/lumx-react/src/components/checkbox/Checkbox-b7f3676e.js} +11 -10
- package/_internal/packages/lumx-react/src/components/checkbox/Checkbox-b7f3676e.js.map +1 -0
- package/_internal/{Chip-70af04b4.js → packages/lumx-react/src/components/chip/Chip-f1a3942a.js} +14 -27
- package/_internal/packages/lumx-react/src/components/chip/Chip-f1a3942a.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/chip/ChipGroup-1e9b0941.js +51 -0
- package/_internal/packages/lumx-react/src/components/chip/ChipGroup-1e9b0941.js.map +1 -0
- package/_internal/{components/comment-block-bcbedf3c.js → packages/lumx-react/src/components/comment-block/CommentBlock-998d4a27.js} +5 -5
- package/_internal/packages/lumx-react/src/components/comment-block/CommentBlock-998d4a27.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/date-picker/DatePicker-f7f5c82d.js +53 -0
- package/_internal/packages/lumx-react/src/components/date-picker/DatePicker-f7f5c82d.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/date-picker/DatePickerControlled-4af66187.js +223 -0
- package/_internal/packages/lumx-react/src/components/date-picker/DatePickerControlled-4af66187.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/date-picker/DatePickerField-3c9c1ba5.js +107 -0
- package/_internal/packages/lumx-react/src/components/date-picker/DatePickerField-3c9c1ba5.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/date-picker/constants-f8c49b24.js +14 -0
- package/_internal/packages/lumx-react/src/components/date-picker/constants-f8c49b24.js.map +1 -0
- package/_internal/{components/dialog-30336ccb.js → packages/lumx-react/src/components/dialog/Dialog-c1d85c51.js} +17 -47
- package/_internal/packages/lumx-react/src/components/dialog/Dialog-c1d85c51.js.map +1 -0
- package/_internal/{components/divider-0e93aa3d.js → packages/lumx-react/src/components/divider/Divider-450f85bf.js} +3 -3
- package/_internal/packages/lumx-react/src/components/divider/Divider-450f85bf.js.map +1 -0
- package/_internal/{components/drag-handle-137f71b6.js → packages/lumx-react/src/components/drag-handle/DragHandle-ce52ef0b.js} +5 -5
- package/_internal/packages/lumx-react/src/components/drag-handle/DragHandle-ce52ef0b.js.map +1 -0
- package/_internal/{components/dropdown-d18122d7.js → packages/lumx-react/src/components/dropdown/Dropdown-ae2605cb.js} +8 -48
- package/_internal/packages/lumx-react/src/components/dropdown/Dropdown-ae2605cb.js.map +1 -0
- package/_internal/{components/expansion-panel-38ed3d9f.js → packages/lumx-react/src/components/expansion-panel/ExpansionPanel-b5b6cd76.js} +13 -12
- package/_internal/packages/lumx-react/src/components/expansion-panel/ExpansionPanel-b5b6cd76.js.map +1 -0
- package/_internal/{components/flag-c2e41e8d.js → packages/lumx-react/src/components/flag/Flag-636dab49.js} +5 -5
- package/_internal/packages/lumx-react/src/components/flag/Flag-636dab49.js.map +1 -0
- package/_internal/{components/flex-box-15be92f6.js → packages/lumx-react/src/components/flex-box/FlexBox-57fe8191.js} +3 -3
- package/_internal/packages/lumx-react/src/components/flex-box/FlexBox-57fe8191.js.map +1 -0
- package/_internal/{components/generic-block-5d843f1e.js → packages/lumx-react/src/components/generic-block/GenericBlock-4eaab530.js} +12 -21
- package/_internal/packages/lumx-react/src/components/generic-block/GenericBlock-4eaab530.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/generic-block/constants-57f2079b.js +10 -0
- package/_internal/packages/lumx-react/src/components/generic-block/constants-57f2079b.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/grid/Grid-4bff53d3.js +64 -0
- package/_internal/packages/lumx-react/src/components/grid/Grid-4bff53d3.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/grid/GridItem-643ce4f2.js +48 -0
- package/_internal/packages/lumx-react/src/components/grid/GridItem-643ce4f2.js.map +1 -0
- package/_internal/{components/grid-column-85e305e7.js → packages/lumx-react/src/components/grid-column/GridColumn-7c04edfd.js} +4 -3
- package/_internal/packages/lumx-react/src/components/grid-column/GridColumn-7c04edfd.js.map +1 -0
- package/_internal/{components/heading-28520e1c.js → packages/lumx-react/src/components/heading/Heading-8a472527.js} +6 -6
- package/_internal/packages/lumx-react/src/components/heading/Heading-8a472527.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/heading/HeadingLevelProvider-7bd8f886.js +30 -0
- package/_internal/packages/lumx-react/src/components/heading/HeadingLevelProvider-7bd8f886.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/heading/constants-82c6852b.js +19 -0
- package/_internal/packages/lumx-react/src/components/heading/constants-82c6852b.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/heading/context-0aa9027f.js +10 -0
- package/_internal/packages/lumx-react/src/components/heading/context-0aa9027f.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/heading/useHeadingLevel-953ba707.js +16 -0
- package/_internal/packages/lumx-react/src/components/heading/useHeadingLevel-953ba707.js.map +1 -0
- package/_internal/{components/icon-a00d698b.js → packages/lumx-react/src/components/icon/Icon-21a83e8c.js} +4 -4
- package/_internal/packages/lumx-react/src/components/icon/Icon-21a83e8c.js.map +1 -0
- package/_internal/{components/image-block-10976174.js → packages/lumx-react/src/components/image-block/ImageBlock-403e75e0.js} +5 -5
- package/_internal/packages/lumx-react/src/components/image-block/ImageBlock-403e75e0.js.map +1 -0
- package/_internal/{ImageCaption-16bf224b.js → packages/lumx-react/src/components/image-block/ImageCaption-f59f00d0.js} +5 -5
- package/_internal/packages/lumx-react/src/components/image-block/ImageCaption-f59f00d0.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/image-lightbox/ImageLightbox-5986e26a.js +87 -0
- package/_internal/packages/lumx-react/src/components/image-lightbox/ImageLightbox-5986e26a.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/image-lightbox/constants-31b6784b.js +14 -0
- package/_internal/packages/lumx-react/src/components/image-lightbox/constants-31b6784b.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/image-lightbox/internal/ImageSlide-9cfe18c6.js +104 -0
- package/_internal/packages/lumx-react/src/components/image-lightbox/internal/ImageSlide-9cfe18c6.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/image-lightbox/internal/ImageSlideshow-a185b234.js +150 -0
- package/_internal/packages/lumx-react/src/components/image-lightbox/internal/ImageSlideshow-a185b234.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/image-lightbox/internal/useAnimateScroll-0db022d6.js +58 -0
- package/_internal/packages/lumx-react/src/components/image-lightbox/internal/useAnimateScroll-0db022d6.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/image-lightbox/internal/usePointerZoom-8d318b2b.js +138 -0
- package/_internal/packages/lumx-react/src/components/image-lightbox/internal/usePointerZoom-8d318b2b.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/image-lightbox/useImageLightbox-4a785dc6.js +133 -0
- package/_internal/packages/lumx-react/src/components/image-lightbox/useImageLightbox-4a785dc6.js.map +1 -0
- package/_internal/{components/inline-list-5ba8bb0f.js → packages/lumx-react/src/components/inline-list/InlineList-c2daf1d2.js} +2 -2
- package/_internal/packages/lumx-react/src/components/inline-list/InlineList-c2daf1d2.js.map +1 -0
- package/_internal/{components/input-helper-2e4e49fd.js → packages/lumx-react/src/components/input-helper/InputHelper-a6c7ec2d.js} +4 -15
- package/_internal/packages/lumx-react/src/components/input-helper/InputHelper-a6c7ec2d.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/input-helper/constants-08b0de35.js +14 -0
- package/_internal/packages/lumx-react/src/components/input-helper/constants-08b0de35.js.map +1 -0
- package/_internal/{components/input-label-30d199c3.js → packages/lumx-react/src/components/input-label/InputLabel-7ce8e604.js} +3 -3
- package/_internal/packages/lumx-react/src/components/input-label/InputLabel-7ce8e604.js.map +1 -0
- package/_internal/{components/lightbox-c618a33b.js → packages/lumx-react/src/components/lightbox/Lightbox-198bb478.js} +14 -14
- package/_internal/packages/lumx-react/src/components/lightbox/Lightbox-198bb478.js.map +1 -0
- package/_internal/{components/link-9c3feb34.js → packages/lumx-react/src/components/link/Link-f8b5025c.js} +6 -6
- package/_internal/packages/lumx-react/src/components/link/Link-f8b5025c.js.map +1 -0
- package/_internal/{components/link-preview-79500604.js → packages/lumx-react/src/components/link-preview/LinkPreview-777017cb.js} +5 -5
- package/_internal/packages/lumx-react/src/components/link-preview/LinkPreview-777017cb.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/list/List-83b50e25.js +75 -0
- package/_internal/packages/lumx-react/src/components/list/List-83b50e25.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/list/ListDivider-0cf94491.js +38 -0
- package/_internal/packages/lumx-react/src/components/list/ListDivider-0cf94491.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/list/ListItem-6278e6a0.js +126 -0
- package/_internal/packages/lumx-react/src/components/list/ListItem-6278e6a0.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/list/ListSubheader-8600d84d.js +40 -0
- package/_internal/packages/lumx-react/src/components/list/ListSubheader-8600d84d.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/list/useInteractiveList-2c23640c.js +157 -0
- package/_internal/packages/lumx-react/src/components/list/useInteractiveList-2c23640c.js.map +1 -0
- package/_internal/{components/message-a3806f51.js → packages/lumx-react/src/components/message/Message-cfc1519a.js} +9 -5
- package/_internal/packages/lumx-react/src/components/message/Message-cfc1519a.js.map +1 -0
- package/_internal/{components/mosaic-e6581097.js → packages/lumx-react/src/components/mosaic/Mosaic-3af68efe.js} +6 -5
- package/_internal/packages/lumx-react/src/components/mosaic/Mosaic-3af68efe.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/navigation/Navigation-8455772e.js +67 -0
- package/_internal/packages/lumx-react/src/components/navigation/Navigation-8455772e.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/navigation/NavigationItem-66855e7e.js +75 -0
- package/_internal/packages/lumx-react/src/components/navigation/NavigationItem-66855e7e.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/navigation/NavigationSection-3f8ca10e.js +109 -0
- package/_internal/packages/lumx-react/src/components/navigation/NavigationSection-3f8ca10e.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/navigation/context-6b61b268.js +9 -0
- package/_internal/packages/lumx-react/src/components/navigation/context-6b61b268.js.map +1 -0
- package/_internal/{components/notification-49837625.js → packages/lumx-react/src/components/notification/Notification-de96c6ff.js} +14 -33
- package/_internal/packages/lumx-react/src/components/notification/Notification-de96c6ff.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/notification/constants-363d85b8.js +29 -0
- package/_internal/packages/lumx-react/src/components/notification/constants-363d85b8.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/popover/Popover-341f65fb.js +155 -0
- package/_internal/packages/lumx-react/src/components/popover/Popover-341f65fb.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/popover/constants-9d063548.js +49 -0
- package/_internal/packages/lumx-react/src/components/popover/constants-9d063548.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/popover/usePopoverStyle-e067fbfc.js +198 -0
- package/_internal/packages/lumx-react/src/components/popover/usePopoverStyle-e067fbfc.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/popover/useRestoreFocusOnClose-36ed4d2a.js +47 -0
- package/_internal/packages/lumx-react/src/components/popover/useRestoreFocusOnClose-36ed4d2a.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/popover-dialog/PopoverDialog-ffd6c5a1.js +67 -0
- package/_internal/packages/lumx-react/src/components/popover-dialog/PopoverDialog-ffd6c5a1.js.map +1 -0
- package/_internal/{components/post-block-478bc3b8.js → packages/lumx-react/src/components/post-block/PostBlock-91fd05ab.js} +14 -14
- package/_internal/packages/lumx-react/src/components/post-block/PostBlock-91fd05ab.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/progress/Progress-73bac34d.js +72 -0
- package/_internal/packages/lumx-react/src/components/progress/Progress-73bac34d.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/progress/ProgressCircular-e997908d.js +75 -0
- package/_internal/packages/lumx-react/src/components/progress/ProgressCircular-e997908d.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/progress/ProgressLinear-db03319f.js +56 -0
- package/_internal/packages/lumx-react/src/components/progress/ProgressLinear-db03319f.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/progress-tracker/ProgressTracker-78a62175.js +82 -0
- package/_internal/packages/lumx-react/src/components/progress-tracker/ProgressTracker-78a62175.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/progress-tracker/ProgressTrackerProvider-31e02258.js +60 -0
- package/_internal/packages/lumx-react/src/components/progress-tracker/ProgressTrackerProvider-31e02258.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/progress-tracker/ProgressTrackerStep-c80756f3.js +129 -0
- package/_internal/packages/lumx-react/src/components/progress-tracker/ProgressTrackerStep-c80756f3.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/progress-tracker/ProgressTrackerStepPanel-6f2d394e.js +62 -0
- package/_internal/packages/lumx-react/src/components/progress-tracker/ProgressTrackerStepPanel-6f2d394e.js.map +1 -0
- package/_internal/{components/radio-button-929c7bee.js → packages/lumx-react/src/components/radio-button/RadioButton-0a59ffbf.js} +21 -54
- package/_internal/packages/lumx-react/src/components/radio-button/RadioButton-0a59ffbf.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/radio-button/RadioGroup-7957765c.js +40 -0
- package/_internal/packages/lumx-react/src/components/radio-button/RadioGroup-7957765c.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/select/Select-530565a4.js +165 -0
- package/_internal/packages/lumx-react/src/components/select/Select-530565a4.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/select/SelectMultiple-d7fa1cf7.js +165 -0
- package/_internal/packages/lumx-react/src/components/select/SelectMultiple-d7fa1cf7.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/select/WithSelectContext-864d6be2.js +128 -0
- package/_internal/packages/lumx-react/src/components/select/WithSelectContext-864d6be2.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/select/constants-5178b7ba.js +10 -0
- package/_internal/packages/lumx-react/src/components/select/constants-5178b7ba.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/side-navigation/SideNavigation-b3267a19.js +48 -0
- package/_internal/packages/lumx-react/src/components/side-navigation/SideNavigation-b3267a19.js.map +1 -0
- package/_internal/{components/side-navigation-b99d6022.js → packages/lumx-react/src/components/side-navigation/SideNavigationItem-2de35ba7.js} +14 -49
- package/_internal/packages/lumx-react/src/components/side-navigation/SideNavigationItem-2de35ba7.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/skeleton/SkeletonCircle-9ff29a07.js +52 -0
- package/_internal/packages/lumx-react/src/components/skeleton/SkeletonCircle-9ff29a07.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/skeleton/SkeletonRectangle-4d602e83.js +73 -0
- package/_internal/packages/lumx-react/src/components/skeleton/SkeletonRectangle-4d602e83.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/skeleton/SkeletonTypography-2b402be3.js +60 -0
- package/_internal/packages/lumx-react/src/components/skeleton/SkeletonTypography-2b402be3.js.map +1 -0
- package/_internal/{components/slider-78cfaa67.js → packages/lumx-react/src/components/slider/Slider-59996a75.js} +11 -43
- package/_internal/packages/lumx-react/src/components/slider/Slider-59996a75.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/slideshow/Slides-c8517dcb.js +95 -0
- package/_internal/packages/lumx-react/src/components/slideshow/Slides-c8517dcb.js.map +1 -0
- package/_internal/{components/slideshow-b78ac3d6.js → packages/lumx-react/src/components/slideshow/Slideshow-a21bfd66.js} +11 -32
- package/_internal/packages/lumx-react/src/components/slideshow/Slideshow-a21bfd66.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/slideshow/SlideshowControls-ecca54c4.js +173 -0
- package/_internal/packages/lumx-react/src/components/slideshow/SlideshowControls-ecca54c4.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/slideshow/SlideshowItem-59ca2aee.js +40 -0
- package/_internal/packages/lumx-react/src/components/slideshow/SlideshowItem-59ca2aee.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/slideshow/SlideshowItemGroup-ce6a30cd.js +55 -0
- package/_internal/packages/lumx-react/src/components/slideshow/SlideshowItemGroup-ce6a30cd.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/slideshow/constants-e50f2a75.js +27 -0
- package/_internal/packages/lumx-react/src/components/slideshow/constants-e50f2a75.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/slideshow/usePaginationVisibleRange-afe733eb.js +47 -0
- package/_internal/packages/lumx-react/src/components/slideshow/usePaginationVisibleRange-afe733eb.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/slideshow/useSlideFocusManagement-6380f9c4.js +93 -0
- package/_internal/packages/lumx-react/src/components/slideshow/useSlideFocusManagement-6380f9c4.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/slideshow/useSwipeNavigate-de52a4b9.js +20 -0
- package/_internal/packages/lumx-react/src/components/slideshow/useSwipeNavigate-de52a4b9.js.map +1 -0
- package/_internal/{components/switch-25b65051.js → packages/lumx-react/src/components/switch/Switch-22529b38.js} +9 -8
- package/_internal/packages/lumx-react/src/components/switch/Switch-22529b38.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/table/Table-ad4f6991.js +57 -0
- package/_internal/packages/lumx-react/src/components/table/Table-ad4f6991.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/table/TableBody-c6d71a78.js +40 -0
- package/_internal/packages/lumx-react/src/components/table/TableBody-c6d71a78.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/table/TableCell-8b038969.js +121 -0
- package/_internal/packages/lumx-react/src/components/table/TableCell-8b038969.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/table/TableHeader-50745c5b.js +46 -0
- package/_internal/packages/lumx-react/src/components/table/TableHeader-50745c5b.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/table/TableRow-1194f809.js +61 -0
- package/_internal/packages/lumx-react/src/components/table/TableRow-1194f809.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/tabs/Tab-24093fe0.js +109 -0
- package/_internal/packages/lumx-react/src/components/tabs/Tab-24093fe0.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/tabs/TabList-f0a286a1.js +89 -0
- package/_internal/packages/lumx-react/src/components/tabs/TabList-f0a286a1.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/tabs/TabPanel-18b761f5.js +62 -0
- package/_internal/packages/lumx-react/src/components/tabs/TabPanel-18b761f5.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/tabs/TabProvider-5349e230.js +65 -0
- package/_internal/packages/lumx-react/src/components/tabs/TabProvider-5349e230.js.map +1 -0
- package/_internal/{state-db358714.js → packages/lumx-react/src/components/tabs/state-af53c50e.js} +3 -3
- package/_internal/packages/lumx-react/src/components/tabs/state-af53c50e.js.map +1 -0
- package/_internal/{index-151e2652.js → packages/lumx-react/src/components/text/Text-d8efb3ca.js} +6 -36
- package/_internal/packages/lumx-react/src/components/text/Text-d8efb3ca.js.map +1 -0
- package/_internal/{components/text-field-c26582c5.js → packages/lumx-react/src/components/text-field/TextField-843f8e28.js} +15 -12
- package/_internal/packages/lumx-react/src/components/text-field/TextField-843f8e28.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/thumbnail/Thumbnail-49bab66c.js +179 -0
- package/_internal/packages/lumx-react/src/components/thumbnail/Thumbnail-49bab66c.js.map +1 -0
- package/_internal/{components/thumbnail-cb55b26c.js → packages/lumx-react/src/components/thumbnail/types-58418448.js} +1 -2
- package/_internal/packages/lumx-react/src/components/thumbnail/types-58418448.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/thumbnail/useFocusPointStyle-b4018f8d.js +107 -0
- package/_internal/packages/lumx-react/src/components/thumbnail/useFocusPointStyle-b4018f8d.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/thumbnail/useImageLoad-7af4a428.js +39 -0
- package/_internal/packages/lumx-react/src/components/thumbnail/useImageLoad-7af4a428.js.map +1 -0
- package/_internal/{components/toolbar-e7c984e6.js → packages/lumx-react/src/components/toolbar/Toolbar-b30ac67a.js} +2 -2
- package/_internal/packages/lumx-react/src/components/toolbar/Toolbar-b30ac67a.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/tooltip/Tooltip-aabcaa4a.js +144 -0
- package/_internal/packages/lumx-react/src/components/tooltip/Tooltip-aabcaa4a.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/tooltip/constants-e5b346fd.js +9 -0
- package/_internal/packages/lumx-react/src/components/tooltip/constants-e5b346fd.js.map +1 -0
- package/_internal/{context-9d1336a1.js → packages/lumx-react/src/components/tooltip/context-841c2303.js} +2 -2
- package/_internal/packages/lumx-react/src/components/tooltip/context-841c2303.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/tooltip/useInjectTooltipRef-d245b414.js +52 -0
- package/_internal/packages/lumx-react/src/components/tooltip/useInjectTooltipRef-d245b414.js.map +1 -0
- package/_internal/packages/lumx-react/src/components/tooltip/useTooltipOpen-e3bae967.js +131 -0
- package/_internal/packages/lumx-react/src/components/tooltip/useTooltipOpen-e3bae967.js.map +1 -0
- package/_internal/{components/uploader-873b9bc1.js → packages/lumx-react/src/components/uploader/Uploader-6489c1ae.js} +8 -8
- package/_internal/packages/lumx-react/src/components/uploader/Uploader-6489c1ae.js.map +1 -0
- package/_internal/{components/user-block-7cbaffe0.js → packages/lumx-react/src/components/user-block/UserBlock-9b72469f.js} +14 -13
- package/_internal/packages/lumx-react/src/components/user-block/UserBlock-9b72469f.js.map +1 -0
- package/_internal/{constants-d0e3f49e.js → packages/lumx-react/src/constants-6af61e2f.js} +3 -3
- package/_internal/packages/lumx-react/src/constants-6af61e2f.js.map +1 -0
- package/_internal/{useBooleanState-2a3d237c.js → packages/lumx-react/src/hooks/useBooleanState-3e2f0517.js} +2 -2
- package/_internal/packages/lumx-react/src/hooks/useBooleanState-3e2f0517.js.map +1 -0
- package/_internal/packages/lumx-react/src/hooks/useCallbackOnEscape-80f4407b.js +34 -0
- package/_internal/packages/lumx-react/src/hooks/useCallbackOnEscape-80f4407b.js.map +1 -0
- package/_internal/{components/chip-19e40755.js → packages/lumx-react/src/hooks/useChipGroupNavigation-7d9c0855.js} +2 -50
- package/_internal/packages/lumx-react/src/hooks/useChipGroupNavigation-7d9c0855.js.map +1 -0
- package/_internal/packages/lumx-react/src/hooks/useClickAway-ab3e5463.js +39 -0
- package/_internal/packages/lumx-react/src/hooks/useClickAway-ab3e5463.js.map +1 -0
- package/_internal/packages/lumx-react/src/hooks/useDisableBodyScroll-5d576cdc.js +30 -0
- package/_internal/packages/lumx-react/src/hooks/useDisableBodyScroll-5d576cdc.js.map +1 -0
- package/_internal/packages/lumx-react/src/hooks/useEventCallback-a7abe967.js +20 -0
- package/_internal/packages/lumx-react/src/hooks/useEventCallback-a7abe967.js.map +1 -0
- package/_internal/packages/lumx-react/src/hooks/useFocus-89ee5eb2.js +22 -0
- package/_internal/packages/lumx-react/src/hooks/useFocus-89ee5eb2.js.map +1 -0
- package/_internal/{useFocusTrap-2dbae79e.js → packages/lumx-react/src/hooks/useFocusTrap-3a8a959d.js} +5 -27
- package/_internal/packages/lumx-react/src/hooks/useFocusTrap-3a8a959d.js.map +1 -0
- package/_internal/packages/lumx-react/src/hooks/useFocusWithin-9976fe9a.js +28 -0
- package/_internal/packages/lumx-react/src/hooks/useFocusWithin-9976fe9a.js.map +1 -0
- package/_internal/{useId-3a1facc0.js → packages/lumx-react/src/hooks/useId-11687649.js} +2 -2
- package/_internal/packages/lumx-react/src/hooks/useId-11687649.js.map +1 -0
- package/_internal/packages/lumx-react/src/hooks/useImageSize-d672fc0e.js +24 -0
- package/_internal/packages/lumx-react/src/hooks/useImageSize-d672fc0e.js.map +1 -0
- package/_internal/packages/lumx-react/src/hooks/useInfiniteScroll-dbc379f8.js +45 -0
- package/_internal/packages/lumx-react/src/hooks/useInfiniteScroll-dbc379f8.js.map +1 -0
- package/_internal/packages/lumx-react/src/hooks/useIntersectionObserver-dfa00cf7.js +35 -0
- package/_internal/packages/lumx-react/src/hooks/useIntersectionObserver-dfa00cf7.js.map +1 -0
- package/_internal/packages/lumx-react/src/hooks/useInterval-45ef51db.js +29 -0
- package/_internal/packages/lumx-react/src/hooks/useInterval-45ef51db.js.map +1 -0
- package/_internal/packages/lumx-react/src/hooks/useKeyboardListNavigation-2040beb8.js +169 -0
- package/_internal/packages/lumx-react/src/hooks/useKeyboardListNavigation-2040beb8.js.map +1 -0
- package/_internal/packages/lumx-react/src/hooks/useListenFocus-bb5fb0f9.js +28 -0
- package/_internal/packages/lumx-react/src/hooks/useListenFocus-bb5fb0f9.js.map +1 -0
- package/_internal/packages/lumx-react/src/hooks/useOverflowTooltipLabel-251ac3e6.js +34 -0
- package/_internal/packages/lumx-react/src/hooks/useOverflowTooltipLabel-251ac3e6.js.map +1 -0
- package/_internal/packages/lumx-react/src/hooks/usePopper-3e9a7aa1.js +24 -0
- package/_internal/packages/lumx-react/src/hooks/usePopper-3e9a7aa1.js.map +1 -0
- package/_internal/packages/lumx-react/src/hooks/usePreviousValue-6f3bb7d6.js +16 -0
- package/_internal/packages/lumx-react/src/hooks/usePreviousValue-6f3bb7d6.js.map +1 -0
- package/_internal/{useRovingTabIndex-7daf0f24.js → packages/lumx-react/src/hooks/useRovingTabIndex-bb8088e1.js} +2 -2
- package/_internal/packages/lumx-react/src/hooks/useRovingTabIndex-bb8088e1.js.map +1 -0
- package/_internal/packages/lumx-react/src/hooks/useSizeOnWindowResize-1ee5415f.js +27 -0
- package/_internal/packages/lumx-react/src/hooks/useSizeOnWindowResize-1ee5415f.js.map +1 -0
- package/_internal/packages/lumx-react/src/hooks/useSlideshowControls-9c881480.js +159 -0
- package/_internal/packages/lumx-react/src/hooks/useSlideshowControls-9c881480.js.map +1 -0
- package/_internal/packages/lumx-react/src/hooks/useStopPropagation-eef5d63f.js +21 -0
- package/_internal/packages/lumx-react/src/hooks/useStopPropagation-eef5d63f.js.map +1 -0
- package/_internal/{useTransitionVisibility-321fdbfa.js → packages/lumx-react/src/hooks/useTransitionVisibility-2beba0ac.js} +3 -8
- package/_internal/packages/lumx-react/src/hooks/useTransitionVisibility-2beba0ac.js.map +1 -0
- package/_internal/{ClickAwayProvider-1204f237.js → packages/lumx-react/src/utils/ClickAwayProvider/ClickAwayProvider-ec55d284.js} +4 -38
- package/_internal/packages/lumx-react/src/utils/ClickAwayProvider/ClickAwayProvider-ec55d284.js.map +1 -0
- package/_internal/{Portal-3f86608e.js → packages/lumx-react/src/utils/Portal/Portal-9e38cfd0.js} +3 -15
- package/_internal/packages/lumx-react/src/utils/Portal/Portal-9e38cfd0.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/Portal/PortalProvider-883321fd.js +17 -0
- package/_internal/packages/lumx-react/src/utils/Portal/PortalProvider-883321fd.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/browser/DOM/findImage-b977b471.js +5 -0
- package/_internal/packages/lumx-react/src/utils/browser/DOM/findImage-b977b471.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/browser/DOM/startViewTransition-5cbc03c1.js +59 -0
- package/_internal/packages/lumx-react/src/utils/browser/DOM/startViewTransition-5cbc03c1.js.map +1 -0
- package/_internal/{getFocusableElements-230173a8.js → packages/lumx-react/src/utils/browser/focus/constants-c0a6dba6.js} +2 -7
- package/_internal/packages/lumx-react/src/utils/browser/focus/constants-c0a6dba6.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/browser/focus/getFirstAndLastFocusable-394b48f4.js +26 -0
- package/_internal/packages/lumx-react/src/utils/browser/focus/getFirstAndLastFocusable-394b48f4.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/browser/focus/getFocusableElements-14bf3ce5.js +9 -0
- package/_internal/packages/lumx-react/src/utils/browser/focus/getFocusableElements-14bf3ce5.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/browser/isFocusVisible-5745f198.js +12 -0
- package/_internal/packages/lumx-react/src/utils/browser/isFocusVisible-5745f198.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/browser/isHoverNotSupported-1ff933af.js +5 -0
- package/_internal/packages/lumx-react/src/utils/browser/isHoverNotSupported-1ff933af.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/browser/isReducedMotion-aca1229c.js +9 -0
- package/_internal/packages/lumx-react/src/utils/browser/isReducedMotion-aca1229c.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/date/addMonthResetDay-e429bd82.js +12 -0
- package/_internal/packages/lumx-react/src/utils/date/addMonthResetDay-e429bd82.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/date/formatDayNumber-db88500d.js +10 -0
- package/_internal/packages/lumx-react/src/utils/date/formatDayNumber-db88500d.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/date/getFirstDayOfWeek-b0780b33.js +60 -0
- package/_internal/packages/lumx-react/src/utils/date/getFirstDayOfWeek-b0780b33.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/date/getMonthCalendar-f0443cdb.js +55 -0
- package/_internal/packages/lumx-react/src/utils/date/getMonthCalendar-f0443cdb.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/date/getWeekDays-b4620c07.js +41 -0
- package/_internal/packages/lumx-react/src/utils/date/getWeekDays-b4620c07.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/date/getYearDisplayName-ed03c692.js +17 -0
- package/_internal/packages/lumx-react/src/utils/date/getYearDisplayName-ed03c692.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/date/isDateValid-658e09de.js +7 -0
- package/_internal/packages/lumx-react/src/utils/date/isDateValid-658e09de.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/date/isSameDay-487527e8.js +9 -0
- package/_internal/packages/lumx-react/src/utils/date/isSameDay-487527e8.js.map +1 -0
- package/_internal/{DisabledStateContext-ea04260d.js → packages/lumx-react/src/utils/disabled/DisabledStateContext-536517c5.js} +2 -2
- package/_internal/packages/lumx-react/src/utils/disabled/DisabledStateContext-536517c5.js.map +1 -0
- package/_internal/{useDisableStateProps-69e16b7c.js → packages/lumx-react/src/utils/disabled/useDisableStateProps-2391c02d.js} +3 -3
- package/_internal/packages/lumx-react/src/utils/disabled/useDisableStateProps-2391c02d.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/function/makeListenerTowerContext-b4dfa648.js +32 -0
- package/_internal/packages/lumx-react/src/utils/function/makeListenerTowerContext-b4dfa648.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/locale/getCurrentLocale-14390eeb.js +7 -0
- package/_internal/packages/lumx-react/src/utils/locale/getCurrentLocale-14390eeb.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/locale/parseLocale-7eca7fcd.js +28 -0
- package/_internal/packages/lumx-react/src/utils/locale/parseLocale-7eca7fcd.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/number/clamp-c3ccd387.js +20 -0
- package/_internal/packages/lumx-react/src/utils/number/clamp-c3ccd387.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/object/isEqual-b1154f4b.js +14 -0
- package/_internal/packages/lumx-react/src/utils/object/isEqual-b1154f4b.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/partitionMulti-cb19eca6.js +25 -0
- package/_internal/packages/lumx-react/src/utils/partitionMulti-cb19eca6.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/react/OnBeforeUnmount-6417ddb1.js +24 -0
- package/_internal/packages/lumx-react/src/utils/react/OnBeforeUnmount-6417ddb1.js.map +1 -0
- package/_internal/{RawClickable-2c2b6a89.js → packages/lumx-react/src/utils/react/RawClickable-e5e3e5c6.js} +3 -6
- package/_internal/packages/lumx-react/src/utils/react/RawClickable-e5e3e5c6.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/react/flattenChildren-f25e4a2f.js +37 -0
- package/_internal/packages/lumx-react/src/utils/react/flattenChildren-f25e4a2f.js.map +1 -0
- package/_internal/{forwardRef-8bce732e.js → packages/lumx-react/src/utils/react/forwardRef-bd8b3ec8.js} +2 -2
- package/_internal/packages/lumx-react/src/utils/react/forwardRef-bd8b3ec8.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/react/forwardRefPolymorphic-ebd44733.js +7 -0
- package/_internal/packages/lumx-react/src/utils/react/forwardRefPolymorphic-ebd44733.js.map +1 -0
- package/_internal/{mergeRefs-f0d7d6ea.js → packages/lumx-react/src/utils/react/mergeRefs-27df0cb6.js} +2 -2
- package/_internal/packages/lumx-react/src/utils/react/mergeRefs-27df0cb6.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/react/renderLink-09d97180.js +18 -0
- package/_internal/packages/lumx-react/src/utils/react/renderLink-09d97180.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/react/skipRender-9ed13067.js +24 -0
- package/_internal/packages/lumx-react/src/utils/react/skipRender-9ed13067.js.map +1 -0
- package/_internal/packages/lumx-react/src/utils/react/unref-bc393aec.js +8 -0
- package/_internal/packages/lumx-react/src/utils/react/unref-bc393aec.js.map +1 -0
- package/_internal/{wrapChildrenIconWithSpaces-ef2a6772.js → packages/lumx-react/src/utils/react/wrapChildrenIconWithSpaces-5de82619.js} +4 -4
- package/_internal/packages/lumx-react/src/utils/react/wrapChildrenIconWithSpaces-5de82619.js.map +1 -0
- package/_internal/{ThemeContext-3181f000.js → packages/lumx-react/src/utils/theme/ThemeContext-d8ee966d.js} +2 -2
- package/_internal/packages/lumx-react/src/utils/theme/ThemeContext-d8ee966d.js.map +1 -0
- package/_internal/{isComponent-b9762ff1.js → packages/lumx-react/src/utils/type/isComponent-ebe24fd7.js} +6 -4
- package/_internal/packages/lumx-react/src/utils/type/isComponent-ebe24fd7.js.map +1 -0
- package/_internal/{isComponentType-e806b848.js → packages/lumx-react/src/utils/type/isComponentType-111e65e5.js} +2 -2
- package/_internal/packages/lumx-react/src/utils/type/isComponentType-111e65e5.js.map +1 -0
- package/index.d.ts +15 -4
- package/index.js +95 -63
- package/index.js.map +1 -1
- package/package.json +3 -3
- package/utils/index.js +4 -3
- package/utils/index.js.map +1 -1
- package/_internal/Button-f382ee1c.js.map +0 -1
- package/_internal/ButtonRoot-a70baf82.js.map +0 -1
- package/_internal/Chip-70af04b4.js.map +0 -1
- package/_internal/ClickAwayProvider-1204f237.js.map +0 -1
- package/_internal/DisabledStateContext-ea04260d.js.map +0 -1
- package/_internal/HeadingLevelProvider-ebdcb0c7.js +0 -61
- package/_internal/HeadingLevelProvider-ebdcb0c7.js.map +0 -1
- package/_internal/IconButton-1790b47e.js.map +0 -1
- package/_internal/ImageCaption-16bf224b.js.map +0 -1
- package/_internal/List-c75646f2.js +0 -818
- package/_internal/List-c75646f2.js.map +0 -1
- package/_internal/PopoverDialog-3b63f140.js +0 -656
- package/_internal/PopoverDialog-3b63f140.js.map +0 -1
- package/_internal/Portal-3f86608e.js.map +0 -1
- package/_internal/RawClickable-2c2b6a89.js.map +0 -1
- package/_internal/Slides-2a427c44.js +0 -676
- package/_internal/Slides-2a427c44.js.map +0 -1
- package/_internal/ThemeContext-3181f000.js.map +0 -1
- package/_internal/Thumbnail-d2001ccb.js +0 -314
- package/_internal/Thumbnail-d2001ccb.js.map +0 -1
- package/_internal/components/alert-dialog-bd1b2532.js.map +0 -1
- package/_internal/components/autocomplete-8ae2c4f9.js +0 -262
- package/_internal/components/autocomplete-8ae2c4f9.js.map +0 -1
- package/_internal/components/avatar-778d7df6.js.map +0 -1
- package/_internal/components/badge-ccf47147.js +0 -82
- package/_internal/components/badge-ccf47147.js.map +0 -1
- package/_internal/components/button-4aff084a.js.map +0 -1
- package/_internal/components/checkbox-a448ca6c.js.map +0 -1
- package/_internal/components/chip-19e40755.js.map +0 -1
- package/_internal/components/comment-block-bcbedf3c.js.map +0 -1
- package/_internal/components/date-picker-b6d4048e.js +0 -2
- package/_internal/components/date-picker-b6d4048e.js.map +0 -1
- package/_internal/components/dialog-30336ccb.js.map +0 -1
- package/_internal/components/divider-0e93aa3d.js.map +0 -1
- package/_internal/components/drag-handle-137f71b6.js.map +0 -1
- package/_internal/components/dropdown-d18122d7.js.map +0 -1
- package/_internal/components/expansion-panel-38ed3d9f.js.map +0 -1
- package/_internal/components/flag-c2e41e8d.js.map +0 -1
- package/_internal/components/flex-box-15be92f6.js.map +0 -1
- package/_internal/components/generic-block-5d843f1e.js.map +0 -1
- package/_internal/components/grid-8c08dc4b.js +0 -105
- package/_internal/components/grid-8c08dc4b.js.map +0 -1
- package/_internal/components/grid-column-85e305e7.js.map +0 -1
- package/_internal/components/heading-28520e1c.js.map +0 -1
- package/_internal/components/icon-a00d698b.js.map +0 -1
- package/_internal/components/image-block-10976174.js.map +0 -1
- package/_internal/components/image-lightbox-86f1e1fb.js +0 -757
- package/_internal/components/image-lightbox-86f1e1fb.js.map +0 -1
- package/_internal/components/inline-list-5ba8bb0f.js.map +0 -1
- package/_internal/components/input-helper-2e4e49fd.js.map +0 -1
- package/_internal/components/input-label-30d199c3.js.map +0 -1
- package/_internal/components/lightbox-c618a33b.js.map +0 -1
- package/_internal/components/link-9c3feb34.js.map +0 -1
- package/_internal/components/link-preview-79500604.js.map +0 -1
- package/_internal/components/list-2f256244.js +0 -72
- package/_internal/components/list-2f256244.js.map +0 -1
- package/_internal/components/message-a3806f51.js.map +0 -1
- package/_internal/components/mosaic-e6581097.js.map +0 -1
- package/_internal/components/navigation-5378f128.js +0 -226
- package/_internal/components/navigation-5378f128.js.map +0 -1
- package/_internal/components/notification-49837625.js.map +0 -1
- package/_internal/components/popover-dfcddda4.js +0 -3
- package/_internal/components/popover-dfcddda4.js.map +0 -1
- package/_internal/components/post-block-478bc3b8.js.map +0 -1
- package/_internal/components/progress-44bb0301.js +0 -183
- package/_internal/components/progress-44bb0301.js.map +0 -1
- package/_internal/components/progress-tracker-0fd35bea.js +0 -306
- package/_internal/components/progress-tracker-0fd35bea.js.map +0 -1
- package/_internal/components/radio-button-929c7bee.js.map +0 -1
- package/_internal/components/select-a145edbb.js +0 -454
- package/_internal/components/select-a145edbb.js.map +0 -1
- package/_internal/components/side-navigation-b99d6022.js.map +0 -1
- package/_internal/components/skeleton-1ea8c82a.js +0 -167
- package/_internal/components/skeleton-1ea8c82a.js.map +0 -1
- package/_internal/components/slider-78cfaa67.js.map +0 -1
- package/_internal/components/slideshow-b78ac3d6.js.map +0 -1
- package/_internal/components/switch-25b65051.js.map +0 -1
- package/_internal/components/table-3cbee034.js +0 -295
- package/_internal/components/table-3cbee034.js.map +0 -1
- package/_internal/components/tabs-5d8ea1a5.js +0 -299
- package/_internal/components/tabs-5d8ea1a5.js.map +0 -1
- package/_internal/components/text-f84a5417.js +0 -2
- package/_internal/components/text-f84a5417.js.map +0 -1
- package/_internal/components/text-field-c26582c5.js.map +0 -1
- package/_internal/components/thumbnail-cb55b26c.js.map +0 -1
- package/_internal/components/toolbar-e7c984e6.js.map +0 -1
- package/_internal/components/tooltip-dcb43bbe.js +0 -328
- package/_internal/components/tooltip-dcb43bbe.js.map +0 -1
- package/_internal/components/uploader-873b9bc1.js.map +0 -1
- package/_internal/components/user-block-7cbaffe0.js.map +0 -1
- package/_internal/constants-43721918.js +0 -2170
- package/_internal/constants-43721918.js.map +0 -1
- package/_internal/constants-d0e3f49e.js.map +0 -1
- package/_internal/context-9d1336a1.js.map +0 -1
- package/_internal/forwardRef-8bce732e.js.map +0 -1
- package/_internal/getFocusableElements-230173a8.js.map +0 -1
- package/_internal/index-151e2652.js.map +0 -1
- package/_internal/index-25d2a45e.js +0 -437
- package/_internal/index-25d2a45e.js.map +0 -1
- package/_internal/isComponent-b9762ff1.js.map +0 -1
- package/_internal/isComponentType-e806b848.js.map +0 -1
- package/_internal/mergeRefs-f0d7d6ea.js.map +0 -1
- package/_internal/state-db358714.js.map +0 -1
- package/_internal/useBooleanState-2a3d237c.js.map +0 -1
- package/_internal/useCallbackOnEscape-b956a85d.js +0 -64
- package/_internal/useCallbackOnEscape-b956a85d.js.map +0 -1
- package/_internal/useDisableBodyScroll-36bd7352.js.map +0 -1
- package/_internal/useDisableStateProps-69e16b7c.js.map +0 -1
- package/_internal/useFocusTrap-2dbae79e.js.map +0 -1
- package/_internal/useId-3a1facc0.js.map +0 -1
- package/_internal/useRovingTabIndex-7daf0f24.js.map +0 -1
- package/_internal/useTransitionVisibility-321fdbfa.js.map +0 -1
- package/_internal/wrapChildrenIconWithSpaces-ef2a6772.js.map +0 -1
|
@@ -1,437 +0,0 @@
|
|
|
1
|
-
import React__default, { useState, useEffect, useLayoutEffect, useMemo, useRef } from 'react';
|
|
2
|
-
import classNames from 'classnames';
|
|
3
|
-
import { u as useCallbackOnEscape } from './useCallbackOnEscape-b956a85d.js';
|
|
4
|
-
import { C as ClickAwayProvider } from './ClickAwayProvider-1204f237.js';
|
|
5
|
-
import { D as DOCUMENT, W as WINDOW } from './constants-d0e3f49e.js';
|
|
6
|
-
import { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';
|
|
7
|
-
import { u as useMergeRefs } from './mergeRefs-f0d7d6ea.js';
|
|
8
|
-
import { g as getFirstAndLastFocusable, u as useFocusTrap } from './useFocusTrap-2dbae79e.js';
|
|
9
|
-
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
10
|
-
import { f as forwardRef } from './forwardRef-8bce732e.js';
|
|
11
|
-
import { T as ThemeProvider } from './ThemeContext-3181f000.js';
|
|
12
|
-
import memoize from 'lodash/memoize';
|
|
13
|
-
import { A as ARROW_SIZE, u as usePopper, d as detectOverflow, F as FitAnchorWidth, P as Placement, a as POPOVER_ZINDEX } from './constants-43721918.js';
|
|
14
|
-
import { P as Portal } from './Portal-3f86608e.js';
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* Hook focusing an element when defined and `focus` boolean `true`.
|
|
18
|
-
*
|
|
19
|
-
* @param element Element to focus.
|
|
20
|
-
* @param shouldFocus Boolean flag to trigger the focus
|
|
21
|
-
*/
|
|
22
|
-
function useFocus(element, shouldFocus = true) {
|
|
23
|
-
const [wasFocus, setWasFocus] = useState(false);
|
|
24
|
-
useEffect(() => {
|
|
25
|
-
if (shouldFocus && wasFocus !== shouldFocus && element) {
|
|
26
|
-
element.focus();
|
|
27
|
-
setWasFocus(shouldFocus);
|
|
28
|
-
}
|
|
29
|
-
},
|
|
30
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
31
|
-
[element, shouldFocus]);
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* HOC component wrapping a component to skip render if predicate return falsy
|
|
36
|
-
*/
|
|
37
|
-
const skipRender = (predicate, Component) => {
|
|
38
|
-
const Wrapper = /*#__PURE__*/React__default.forwardRef((props, ref) => {
|
|
39
|
-
if (!DOCUMENT) {
|
|
40
|
-
// Can't render in SSR.
|
|
41
|
-
return null;
|
|
42
|
-
}
|
|
43
|
-
return /*#__PURE__*/jsx(Component, {
|
|
44
|
-
ref: ref,
|
|
45
|
-
...props
|
|
46
|
-
});
|
|
47
|
-
});
|
|
48
|
-
Wrapper.displayName = Component.displayName;
|
|
49
|
-
return Wrapper;
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
/**
|
|
53
|
-
* Helper component using useLayoutEffect to trigger a callback on before unmount.
|
|
54
|
-
*
|
|
55
|
-
* The callback must be wrapped in a React ref to avoid updating the `useLayoutEffect` before the un-mount
|
|
56
|
-
*/
|
|
57
|
-
const OnBeforeUnmount = ({
|
|
58
|
-
callbackRef
|
|
59
|
-
}) => {
|
|
60
|
-
useLayoutEffect(() => {
|
|
61
|
-
return () => {
|
|
62
|
-
// On unmount
|
|
63
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
64
|
-
callbackRef.current?.();
|
|
65
|
-
};
|
|
66
|
-
},
|
|
67
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
68
|
-
[]);
|
|
69
|
-
return null;
|
|
70
|
-
};
|
|
71
|
-
|
|
72
|
-
/**
|
|
73
|
-
* Provides an unmount sentinel to inject in the popover to detect when it closes and restore the focus to the
|
|
74
|
-
* anchor if needed.
|
|
75
|
-
*/
|
|
76
|
-
function useRestoreFocusOnClose({
|
|
77
|
-
focusAnchorOnClose,
|
|
78
|
-
anchorRef,
|
|
79
|
-
parentElement
|
|
80
|
-
}, popoverElement) {
|
|
81
|
-
const onBeforeUnmountRef = React__default.useRef();
|
|
82
|
-
React__default.useEffect(() => {
|
|
83
|
-
if (!popoverElement || !focusAnchorOnClose) {
|
|
84
|
-
onBeforeUnmountRef.current = undefined;
|
|
85
|
-
return;
|
|
86
|
-
}
|
|
87
|
-
onBeforeUnmountRef.current = () => {
|
|
88
|
-
const isFocusWithin = popoverElement?.contains(document.activeElement);
|
|
89
|
-
if (!isFocusWithin) return;
|
|
90
|
-
|
|
91
|
-
// On next render
|
|
92
|
-
setTimeout(() => {
|
|
93
|
-
const anchor = anchorRef.current;
|
|
94
|
-
const elementToFocus =
|
|
95
|
-
// Provided parent element
|
|
96
|
-
parentElement?.current || (
|
|
97
|
-
// Or first focusable element in anchor
|
|
98
|
-
anchor ? getFirstAndLastFocusable(anchor).first : undefined) ||
|
|
99
|
-
// Fallback to anchor
|
|
100
|
-
anchor;
|
|
101
|
-
elementToFocus?.focus({
|
|
102
|
-
preventScroll: true
|
|
103
|
-
});
|
|
104
|
-
}, 0);
|
|
105
|
-
};
|
|
106
|
-
}, [anchorRef, focusAnchorOnClose, parentElement, popoverElement]);
|
|
107
|
-
return /*#__PURE__*/jsx(OnBeforeUnmount, {
|
|
108
|
-
callbackRef: onBeforeUnmountRef
|
|
109
|
-
});
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
/**
|
|
113
|
-
* Popper js modifier to fit popover min width to the anchor width.
|
|
114
|
-
*/
|
|
115
|
-
const sameWidth = memoize(anchorWidthOption => ({
|
|
116
|
-
name: 'sameWidth',
|
|
117
|
-
enabled: true,
|
|
118
|
-
phase: 'beforeWrite',
|
|
119
|
-
requires: ['computeStyles'],
|
|
120
|
-
fn({
|
|
121
|
-
state
|
|
122
|
-
}) {
|
|
123
|
-
// eslint-disable-next-line no-param-reassign
|
|
124
|
-
state.styles.popper[anchorWidthOption] = `${state.rects.reference.width}px`;
|
|
125
|
-
},
|
|
126
|
-
effect({
|
|
127
|
-
state
|
|
128
|
-
}) {
|
|
129
|
-
// eslint-disable-next-line no-param-reassign
|
|
130
|
-
state.elements.popper.style[anchorWidthOption] = `${state.elements.reference.offsetWidth}px`;
|
|
131
|
-
}
|
|
132
|
-
}));
|
|
133
|
-
|
|
134
|
-
/**
|
|
135
|
-
* Popper js modifier to compute max size of the popover.
|
|
136
|
-
*/
|
|
137
|
-
const maxSize = {
|
|
138
|
-
name: 'maxSize',
|
|
139
|
-
enabled: true,
|
|
140
|
-
phase: 'main',
|
|
141
|
-
requiresIfExists: ['offset', 'preventOverflow', 'flip'],
|
|
142
|
-
fn({
|
|
143
|
-
state,
|
|
144
|
-
name,
|
|
145
|
-
options
|
|
146
|
-
}) {
|
|
147
|
-
const overflow = detectOverflow(state, options);
|
|
148
|
-
const {
|
|
149
|
-
y = 0,
|
|
150
|
-
x = 0
|
|
151
|
-
} = state.modifiersData.preventOverflow;
|
|
152
|
-
const {
|
|
153
|
-
width,
|
|
154
|
-
height
|
|
155
|
-
} = state.rects.popper;
|
|
156
|
-
const [basePlacement] = state.placement.split('-');
|
|
157
|
-
const widthProp = basePlacement === 'left' ? 'left' : 'right';
|
|
158
|
-
const heightProp = basePlacement === 'top' ? 'top' : 'bottom';
|
|
159
|
-
// eslint-disable-next-line no-param-reassign
|
|
160
|
-
state.modifiersData[name] = {
|
|
161
|
-
width: width - overflow[widthProp] - x,
|
|
162
|
-
height: height - overflow[heightProp] - y
|
|
163
|
-
};
|
|
164
|
-
}
|
|
165
|
-
};
|
|
166
|
-
|
|
167
|
-
/**
|
|
168
|
-
* Popper js modifier to apply the max height.
|
|
169
|
-
*/
|
|
170
|
-
const applyMaxHeight = {
|
|
171
|
-
name: 'applyMaxHeight',
|
|
172
|
-
enabled: true,
|
|
173
|
-
phase: 'beforeWrite',
|
|
174
|
-
requires: ['maxSize'],
|
|
175
|
-
fn({
|
|
176
|
-
state
|
|
177
|
-
}) {
|
|
178
|
-
const {
|
|
179
|
-
height
|
|
180
|
-
} = state.modifiersData.maxSize;
|
|
181
|
-
// eslint-disable-next-line no-param-reassign
|
|
182
|
-
state.elements.popper.style.maxHeight = `${height - ARROW_SIZE}px`;
|
|
183
|
-
}
|
|
184
|
-
};
|
|
185
|
-
function usePopoverStyle({
|
|
186
|
-
offset,
|
|
187
|
-
hasArrow,
|
|
188
|
-
fitToAnchorWidth,
|
|
189
|
-
fitWithinViewportHeight,
|
|
190
|
-
boundaryRef,
|
|
191
|
-
anchorRef,
|
|
192
|
-
placement,
|
|
193
|
-
style,
|
|
194
|
-
zIndex
|
|
195
|
-
}) {
|
|
196
|
-
const [popperElement, setPopperElement] = useState(null);
|
|
197
|
-
const [arrowElement, setArrowElement] = useState(null);
|
|
198
|
-
const actualOffset = [offset?.along ?? 0, (offset?.away ?? 0) + (hasArrow ? ARROW_SIZE : 0)];
|
|
199
|
-
const modifiers = [{
|
|
200
|
-
name: 'offset',
|
|
201
|
-
options: {
|
|
202
|
-
offset: actualOffset
|
|
203
|
-
}
|
|
204
|
-
}];
|
|
205
|
-
if (hasArrow && arrowElement) {
|
|
206
|
-
modifiers.push({
|
|
207
|
-
name: 'arrow',
|
|
208
|
-
options: {
|
|
209
|
-
element: arrowElement,
|
|
210
|
-
padding: ARROW_SIZE / 2
|
|
211
|
-
}
|
|
212
|
-
});
|
|
213
|
-
}
|
|
214
|
-
if (fitToAnchorWidth) {
|
|
215
|
-
const fitWidth = typeof fitToAnchorWidth === 'string' ? fitToAnchorWidth : FitAnchorWidth.MIN_WIDTH;
|
|
216
|
-
modifiers.push(sameWidth(fitWidth));
|
|
217
|
-
}
|
|
218
|
-
if (fitWithinViewportHeight) {
|
|
219
|
-
modifiers.push({
|
|
220
|
-
...maxSize,
|
|
221
|
-
options: {
|
|
222
|
-
boundary: boundaryRef?.current
|
|
223
|
-
}
|
|
224
|
-
}, applyMaxHeight);
|
|
225
|
-
}
|
|
226
|
-
if (boundaryRef) {
|
|
227
|
-
modifiers.push({
|
|
228
|
-
name: 'flip',
|
|
229
|
-
options: {
|
|
230
|
-
boundary: boundaryRef.current
|
|
231
|
-
}
|
|
232
|
-
}, {
|
|
233
|
-
name: 'preventOverflow',
|
|
234
|
-
options: {
|
|
235
|
-
boundary: boundaryRef.current
|
|
236
|
-
}
|
|
237
|
-
});
|
|
238
|
-
}
|
|
239
|
-
const {
|
|
240
|
-
styles,
|
|
241
|
-
attributes,
|
|
242
|
-
state,
|
|
243
|
-
update
|
|
244
|
-
} = usePopper(anchorRef.current, popperElement, {
|
|
245
|
-
placement,
|
|
246
|
-
modifiers
|
|
247
|
-
});
|
|
248
|
-
|
|
249
|
-
// Auto update popover
|
|
250
|
-
useEffect(() => {
|
|
251
|
-
const {
|
|
252
|
-
current: anchorElement
|
|
253
|
-
} = anchorRef;
|
|
254
|
-
if (!update || !popperElement || !anchorElement || !WINDOW?.ResizeObserver) {
|
|
255
|
-
return undefined;
|
|
256
|
-
}
|
|
257
|
-
let running;
|
|
258
|
-
function updateRateLimited() {
|
|
259
|
-
if (running) return;
|
|
260
|
-
update?.();
|
|
261
|
-
running = setTimeout(() => {
|
|
262
|
-
running = undefined;
|
|
263
|
-
}, 100);
|
|
264
|
-
}
|
|
265
|
-
updateRateLimited();
|
|
266
|
-
|
|
267
|
-
// On anchor or popover resize
|
|
268
|
-
const resizeObserver = new ResizeObserver(updateRateLimited);
|
|
269
|
-
resizeObserver.observe(anchorElement);
|
|
270
|
-
resizeObserver.observe(popperElement);
|
|
271
|
-
return () => {
|
|
272
|
-
resizeObserver.disconnect();
|
|
273
|
-
};
|
|
274
|
-
}, [anchorRef, popperElement, update]);
|
|
275
|
-
const position = state?.placement ?? placement;
|
|
276
|
-
const popoverStyle = useMemo(() => {
|
|
277
|
-
const newStyles = {
|
|
278
|
-
...style,
|
|
279
|
-
...styles.popper,
|
|
280
|
-
zIndex
|
|
281
|
-
};
|
|
282
|
-
if (fitWithinViewportHeight && !newStyles.maxHeight) {
|
|
283
|
-
newStyles.maxHeight = WINDOW?.innerHeight || DOCUMENT?.documentElement.clientHeight;
|
|
284
|
-
}
|
|
285
|
-
return newStyles;
|
|
286
|
-
}, [style, styles.popper, zIndex, fitWithinViewportHeight]);
|
|
287
|
-
return {
|
|
288
|
-
styles: {
|
|
289
|
-
arrow: styles.arrow,
|
|
290
|
-
popover: popoverStyle
|
|
291
|
-
},
|
|
292
|
-
attributes,
|
|
293
|
-
isPositioned: (state?.rects?.popper?.y ?? -1) >= 0,
|
|
294
|
-
position,
|
|
295
|
-
setArrowElement,
|
|
296
|
-
setPopperElement,
|
|
297
|
-
popperElement
|
|
298
|
-
};
|
|
299
|
-
}
|
|
300
|
-
|
|
301
|
-
/**
|
|
302
|
-
* Component display name.
|
|
303
|
-
*/
|
|
304
|
-
const COMPONENT_NAME = 'Popover';
|
|
305
|
-
|
|
306
|
-
/**
|
|
307
|
-
* Component default class name and class prefix.
|
|
308
|
-
*/
|
|
309
|
-
const CLASSNAME = getRootClassName(COMPONENT_NAME);
|
|
310
|
-
|
|
311
|
-
/**
|
|
312
|
-
* Component default props.
|
|
313
|
-
*/
|
|
314
|
-
const DEFAULT_PROPS = {
|
|
315
|
-
elevation: 3,
|
|
316
|
-
placement: Placement.AUTO,
|
|
317
|
-
focusAnchorOnClose: true,
|
|
318
|
-
usePortal: true,
|
|
319
|
-
zIndex: POPOVER_ZINDEX
|
|
320
|
-
};
|
|
321
|
-
|
|
322
|
-
// Inner component (must be wrapped before export)
|
|
323
|
-
const _InnerPopover = forwardRef((props, ref) => {
|
|
324
|
-
const {
|
|
325
|
-
anchorRef,
|
|
326
|
-
as: Component = 'div',
|
|
327
|
-
children,
|
|
328
|
-
className,
|
|
329
|
-
closeOnClickAway,
|
|
330
|
-
closeOnEscape,
|
|
331
|
-
elevation = DEFAULT_PROPS.elevation,
|
|
332
|
-
focusElement,
|
|
333
|
-
hasArrow,
|
|
334
|
-
isOpen,
|
|
335
|
-
onClose,
|
|
336
|
-
parentElement,
|
|
337
|
-
usePortal = DEFAULT_PROPS.usePortal,
|
|
338
|
-
focusAnchorOnClose = DEFAULT_PROPS.focusAnchorOnClose,
|
|
339
|
-
withFocusTrap,
|
|
340
|
-
boundaryRef,
|
|
341
|
-
fitToAnchorWidth,
|
|
342
|
-
fitWithinViewportHeight,
|
|
343
|
-
focusTrapZoneElement,
|
|
344
|
-
offset,
|
|
345
|
-
placement = DEFAULT_PROPS.placement,
|
|
346
|
-
style,
|
|
347
|
-
theme,
|
|
348
|
-
zIndex = DEFAULT_PROPS.zIndex,
|
|
349
|
-
...forwardedProps
|
|
350
|
-
} = props;
|
|
351
|
-
const popoverRef = useRef(null);
|
|
352
|
-
const {
|
|
353
|
-
styles,
|
|
354
|
-
attributes,
|
|
355
|
-
isPositioned,
|
|
356
|
-
position,
|
|
357
|
-
setArrowElement,
|
|
358
|
-
setPopperElement,
|
|
359
|
-
popperElement
|
|
360
|
-
} = usePopoverStyle({
|
|
361
|
-
offset,
|
|
362
|
-
hasArrow,
|
|
363
|
-
fitToAnchorWidth,
|
|
364
|
-
fitWithinViewportHeight,
|
|
365
|
-
boundaryRef,
|
|
366
|
-
anchorRef,
|
|
367
|
-
placement,
|
|
368
|
-
style,
|
|
369
|
-
zIndex
|
|
370
|
-
});
|
|
371
|
-
const unmountSentinel = useRestoreFocusOnClose({
|
|
372
|
-
focusAnchorOnClose,
|
|
373
|
-
anchorRef,
|
|
374
|
-
parentElement
|
|
375
|
-
}, popperElement);
|
|
376
|
-
const focusZoneElement = focusTrapZoneElement?.current || popoverRef?.current;
|
|
377
|
-
useCallbackOnEscape(onClose, isOpen && closeOnEscape);
|
|
378
|
-
|
|
379
|
-
/** Only set focus within if the focus trap is disabled as they interfere with one another. */
|
|
380
|
-
useFocus(focusElement?.current, !withFocusTrap && isOpen && isPositioned);
|
|
381
|
-
useFocusTrap(withFocusTrap && isOpen && focusZoneElement, focusElement?.current);
|
|
382
|
-
const clickAwayRefs = useRef([popoverRef, anchorRef]);
|
|
383
|
-
const mergedRefs = useMergeRefs(setPopperElement, ref, popoverRef);
|
|
384
|
-
return isOpen ? /*#__PURE__*/jsx(Portal, {
|
|
385
|
-
enabled: usePortal,
|
|
386
|
-
children: /*#__PURE__*/jsxs(Component, {
|
|
387
|
-
...forwardedProps,
|
|
388
|
-
ref: mergedRefs,
|
|
389
|
-
className: classNames(className, handleBasicClasses({
|
|
390
|
-
prefix: CLASSNAME,
|
|
391
|
-
theme,
|
|
392
|
-
elevation: Math.min(elevation || 0, 5),
|
|
393
|
-
position,
|
|
394
|
-
isInitializing: !styles.popover?.transform
|
|
395
|
-
})),
|
|
396
|
-
style: styles.popover,
|
|
397
|
-
...attributes.popper,
|
|
398
|
-
children: [unmountSentinel, /*#__PURE__*/jsxs(ClickAwayProvider, {
|
|
399
|
-
callback: closeOnClickAway && onClose,
|
|
400
|
-
childrenRefs: clickAwayRefs,
|
|
401
|
-
children: [hasArrow && /*#__PURE__*/jsx("div", {
|
|
402
|
-
ref: setArrowElement,
|
|
403
|
-
className: `${CLASSNAME}__arrow`,
|
|
404
|
-
style: styles.arrow,
|
|
405
|
-
children: /*#__PURE__*/jsx("svg", {
|
|
406
|
-
viewBox: "0 0 14 14",
|
|
407
|
-
"aria-hidden": true,
|
|
408
|
-
children: /*#__PURE__*/jsx("path", {
|
|
409
|
-
d: "M8 3.49C7.62 2.82 6.66 2.82 6.27 3.48L.04 14 14.04 14 8 3.49Z"
|
|
410
|
-
})
|
|
411
|
-
})
|
|
412
|
-
}), /*#__PURE__*/jsx(ThemeProvider, {
|
|
413
|
-
value: theme,
|
|
414
|
-
children: children
|
|
415
|
-
})]
|
|
416
|
-
})]
|
|
417
|
-
})
|
|
418
|
-
}) : null;
|
|
419
|
-
});
|
|
420
|
-
_InnerPopover.displayName = COMPONENT_NAME;
|
|
421
|
-
|
|
422
|
-
/**
|
|
423
|
-
* Popover component.
|
|
424
|
-
*
|
|
425
|
-
* @param props Component props.
|
|
426
|
-
* @param ref Component ref.
|
|
427
|
-
* @return React element.
|
|
428
|
-
*/
|
|
429
|
-
const Popover = skipRender(
|
|
430
|
-
// Skip render in SSR
|
|
431
|
-
() => Boolean(DOCUMENT), _InnerPopover);
|
|
432
|
-
Popover.displayName = COMPONENT_NAME;
|
|
433
|
-
Popover.className = CLASSNAME;
|
|
434
|
-
Popover.defaultProps = DEFAULT_PROPS;
|
|
435
|
-
|
|
436
|
-
export { Popover as P, useFocus as u };
|
|
437
|
-
//# sourceMappingURL=index-25d2a45e.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-25d2a45e.js","sources":["../../src/hooks/useFocus.tsx","../../src/utils/react/skipRender.tsx","../../src/utils/react/OnBeforeUnmount.tsx","../../src/components/popover/useRestoreFocusOnClose.tsx","../../src/components/popover/usePopoverStyle.tsx","../../src/components/popover/Popover.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\n\n/**\n * Hook focusing an element when defined and `focus` boolean `true`.\n *\n * @param element Element to focus.\n * @param shouldFocus Boolean flag to trigger the focus\n */\nexport function useFocus(element: HTMLElement | null | undefined, shouldFocus = true): void {\n const [wasFocus, setWasFocus] = useState(false);\n useEffect(\n () => {\n if (shouldFocus && wasFocus !== shouldFocus && element) {\n element.focus();\n setWasFocus(shouldFocus);\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [element, shouldFocus],\n );\n}\n","import React from 'react';\n\nimport { DOCUMENT } from '@lumx/react/constants';\nimport type { Comp } from '@lumx/react/utils/type';\n/**\n * HOC component wrapping a component to skip render if predicate return falsy\n */\nexport const skipRender = <P, T>(predicate: (props: P) => any, Component: Comp<P, T>) => {\n const Wrapper = React.forwardRef<T, P>((props, ref) => {\n if (!DOCUMENT) {\n // Can't render in SSR.\n return null;\n }\n return <Component ref={ref} {...props} />;\n });\n Wrapper.displayName = Component.displayName;\n return Wrapper;\n};\n","import { useLayoutEffect } from 'react';\n\n/**\n * Helper component using useLayoutEffect to trigger a callback on before unmount.\n *\n * The callback must be wrapped in a React ref to avoid updating the `useLayoutEffect` before the un-mount\n */\nexport const OnBeforeUnmount = ({ callbackRef }: { callbackRef: React.RefObject<(() => void) | undefined> }) => {\n useLayoutEffect(\n () => {\n return () => {\n // On unmount\n // eslint-disable-next-line react-hooks/exhaustive-deps\n callbackRef.current?.();\n };\n }, // eslint-disable-next-line react-hooks/exhaustive-deps\n [],\n );\n return null;\n};\n","import React from 'react';\nimport { getFirstAndLastFocusable } from '@lumx/react/utils/browser/focus/getFirstAndLastFocusable';\nimport { OnBeforeUnmount } from '@lumx/react/utils/react/OnBeforeUnmount';\nimport type { PopoverProps } from './Popover';\n\n/**\n * Provides an unmount sentinel to inject in the popover to detect when it closes and restore the focus to the\n * anchor if needed.\n */\nexport function useRestoreFocusOnClose(\n {\n focusAnchorOnClose,\n anchorRef,\n parentElement,\n }: Pick<PopoverProps, 'focusAnchorOnClose' | 'anchorRef' | 'parentElement'>,\n popoverElement?: HTMLElement | null,\n) {\n const onBeforeUnmountRef = React.useRef<(() => void) | undefined>();\n\n React.useEffect(() => {\n if (!popoverElement || !focusAnchorOnClose) {\n onBeforeUnmountRef.current = undefined;\n return;\n }\n\n onBeforeUnmountRef.current = () => {\n const isFocusWithin = popoverElement?.contains(document.activeElement);\n if (!isFocusWithin) return;\n\n // On next render\n setTimeout(() => {\n const anchor = anchorRef.current;\n const elementToFocus =\n // Provided parent element\n parentElement?.current ||\n // Or first focusable element in anchor\n (anchor ? getFirstAndLastFocusable(anchor).first : undefined) ||\n // Fallback to anchor\n anchor;\n\n elementToFocus?.focus({ preventScroll: true });\n }, 0);\n };\n }, [anchorRef, focusAnchorOnClose, parentElement, popoverElement]);\n\n return <OnBeforeUnmount callbackRef={onBeforeUnmountRef} />;\n}\n","import { useEffect, useMemo, useState } from 'react';\nimport memoize from 'lodash/memoize';\nimport { detectOverflow } from '@popperjs/core';\n\nimport { DOCUMENT, WINDOW } from '@lumx/react/constants';\nimport { PopoverProps } from '@lumx/react/components/popover/Popover';\nimport { usePopper } from '@lumx/react/hooks/usePopper';\nimport { ARROW_SIZE, FitAnchorWidth, Placement } from './constants';\n\n/**\n * Popper js modifier to fit popover min width to the anchor width.\n */\nconst sameWidth = memoize((anchorWidthOption: FitAnchorWidth) => ({\n name: 'sameWidth',\n enabled: true,\n phase: 'beforeWrite',\n requires: ['computeStyles'],\n fn({ state }: any) {\n // eslint-disable-next-line no-param-reassign\n state.styles.popper[anchorWidthOption] = `${state.rects.reference.width}px`;\n },\n effect({ state }: any) {\n // eslint-disable-next-line no-param-reassign\n state.elements.popper.style[anchorWidthOption] = `${state.elements.reference.offsetWidth}px`;\n },\n}));\n\n/**\n * Popper js modifier to compute max size of the popover.\n */\nconst maxSize = {\n name: 'maxSize',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['offset', 'preventOverflow', 'flip'],\n fn({ state, name, options }: any) {\n const overflow = detectOverflow(state, options);\n\n const { y = 0, x = 0 } = state.modifiersData.preventOverflow;\n const { width, height } = state.rects.popper;\n\n const [basePlacement] = state.placement.split('-');\n\n const widthProp = basePlacement === 'left' ? 'left' : 'right';\n const heightProp = basePlacement === 'top' ? 'top' : 'bottom';\n // eslint-disable-next-line no-param-reassign\n state.modifiersData[name] = {\n width: width - overflow[widthProp] - x,\n height: height - overflow[heightProp] - y,\n };\n },\n};\n\n/**\n * Popper js modifier to apply the max height.\n */\nconst applyMaxHeight = {\n name: 'applyMaxHeight',\n enabled: true,\n phase: 'beforeWrite',\n requires: ['maxSize'],\n fn({ state }: any) {\n const { height } = state.modifiersData.maxSize;\n // eslint-disable-next-line no-param-reassign\n state.elements.popper.style.maxHeight = `${height - ARROW_SIZE}px`;\n },\n};\n\ntype Options = Pick<\n PopoverProps,\n | 'offset'\n | 'hasArrow'\n | 'fitToAnchorWidth'\n | 'fitWithinViewportHeight'\n | 'boundaryRef'\n | 'anchorRef'\n | 'placement'\n | 'style'\n | 'zIndex'\n>;\n\ninterface Output {\n styles: { arrow?: React.CSSProperties; popover?: React.CSSProperties };\n attributes: any;\n isPositioned: boolean;\n position?: Placement;\n setArrowElement?: React.Ref<HTMLDivElement>;\n setPopperElement?: React.Ref<HTMLDivElement>;\n popperElement: HTMLElement | null;\n}\n\nexport function usePopoverStyle({\n offset,\n hasArrow,\n fitToAnchorWidth,\n fitWithinViewportHeight,\n boundaryRef,\n anchorRef,\n placement,\n style,\n zIndex,\n}: Options): Output {\n const [popperElement, setPopperElement] = useState<null | HTMLElement>(null);\n const [arrowElement, setArrowElement] = useState<null | HTMLElement>(null);\n\n const actualOffset: [number, number] = [offset?.along ?? 0, (offset?.away ?? 0) + (hasArrow ? ARROW_SIZE : 0)];\n const modifiers: any = [\n {\n name: 'offset',\n options: { offset: actualOffset },\n },\n ];\n if (hasArrow && arrowElement) {\n modifiers.push({\n name: 'arrow',\n options: {\n element: arrowElement,\n padding: ARROW_SIZE / 2,\n },\n });\n }\n if (fitToAnchorWidth) {\n const fitWidth = typeof fitToAnchorWidth === 'string' ? fitToAnchorWidth : FitAnchorWidth.MIN_WIDTH;\n modifiers.push(sameWidth(fitWidth));\n }\n if (fitWithinViewportHeight) {\n modifiers.push({ ...maxSize, options: { boundary: boundaryRef?.current } }, applyMaxHeight);\n }\n if (boundaryRef) {\n modifiers.push(\n { name: 'flip', options: { boundary: boundaryRef.current } },\n { name: 'preventOverflow', options: { boundary: boundaryRef.current } },\n );\n }\n\n const { styles, attributes, state, update } = usePopper(anchorRef.current, popperElement, { placement, modifiers });\n\n // Auto update popover\n useEffect(() => {\n const { current: anchorElement } = anchorRef;\n if (!update || !popperElement || !anchorElement || !WINDOW?.ResizeObserver) {\n return undefined;\n }\n let running: ReturnType<typeof setTimeout> | undefined;\n function updateRateLimited() {\n if (running) return;\n update?.();\n running = setTimeout(() => {\n running = undefined;\n }, 100);\n }\n updateRateLimited();\n\n // On anchor or popover resize\n const resizeObserver = new ResizeObserver(updateRateLimited);\n resizeObserver.observe(anchorElement);\n resizeObserver.observe(popperElement);\n return () => {\n resizeObserver.disconnect();\n };\n }, [anchorRef, popperElement, update]);\n\n const position = state?.placement ?? placement;\n\n const popoverStyle = useMemo(() => {\n const newStyles = { ...style, ...styles.popper, zIndex };\n\n if (fitWithinViewportHeight && !newStyles.maxHeight) {\n newStyles.maxHeight = WINDOW?.innerHeight || DOCUMENT?.documentElement.clientHeight;\n }\n\n return newStyles;\n }, [style, styles.popper, zIndex, fitWithinViewportHeight]);\n\n return {\n styles: { arrow: styles.arrow, popover: popoverStyle },\n attributes,\n isPositioned: (state?.rects?.popper?.y ?? -1) >= 0,\n position,\n setArrowElement,\n setPopperElement,\n popperElement,\n };\n}\n","import { ReactNode, RefObject, useRef } from 'react';\n\nimport classNames from 'classnames';\n\nimport { useCallbackOnEscape } from '@lumx/react/hooks/useCallbackOnEscape';\nimport { useFocus } from '@lumx/react/hooks/useFocus';\nimport { ClickAwayProvider } from '@lumx/react/utils/ClickAwayProvider';\nimport { DOCUMENT } from '@lumx/react/constants';\nimport { Comp, GenericProps, HasTheme } from '@lumx/react/utils/type';\nimport { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';\nimport { useMergeRefs } from '@lumx/react/utils/react/mergeRefs';\nimport { useFocusTrap } from '@lumx/react/hooks/useFocusTrap';\nimport { skipRender } from '@lumx/react/utils/react/skipRender';\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\n\nimport { ThemeProvider } from '@lumx/react/utils/theme/ThemeContext';\nimport { Portal } from '@lumx/react/utils';\nimport { useRestoreFocusOnClose } from './useRestoreFocusOnClose';\nimport { usePopoverStyle } from './usePopoverStyle';\nimport { Elevation, FitAnchorWidth, Offset, Placement, POPOVER_ZINDEX } from './constants';\n\n/**\n * Defines the props of the component.\n */\nexport interface PopoverProps extends GenericProps, HasTheme {\n /** Reference to the DOM element used to set the position of the popover. */\n anchorRef: React.RefObject<HTMLElement>;\n /** Customize the root element. (Must accept ref forwarding and props forwarding!). */\n as?: React.ElementType;\n /** Element which will act as boundary when opening the popover. */\n boundaryRef?: RefObject<HTMLElement>;\n /** Content. */\n children: ReactNode;\n /** Whether a click anywhere out of the popover would close it. */\n closeOnClickAway?: boolean;\n /** Whether an escape key press would close the popover. */\n closeOnEscape?: boolean;\n /** Shadow elevation. */\n elevation?: Elevation;\n /**\n * Manage popover width:\n * - `maxWidth`: popover not bigger than anchor\n * - `minWidth` or `true`: popover not smaller than anchor\n * - `width`: popover equal to the anchor.\n */\n fitToAnchorWidth?: FitAnchorWidth | boolean;\n /** Shrink popover if even after flipping there is not enough space. */\n fitWithinViewportHeight?: boolean;\n /** Element to focus when opening the popover. */\n focusElement?: RefObject<HTMLElement>;\n /** Whether the focus should go back on the anchor when popover closes and focus is within. */\n focusAnchorOnClose?: boolean;\n /** Whether we put an arrow or not. */\n hasArrow?: boolean;\n /** Whether the popover is open or not. */\n isOpen: boolean;\n /** Offset placement relative to anchor. */\n offset?: Offset;\n /** Reference to the parent element that triggered the popover (will get back focus on close or else fallback on the anchor element). */\n parentElement?: RefObject<HTMLElement>;\n /** Placement relative to anchor. */\n placement?: Placement;\n /** Whether the popover should be rendered into a DOM node that exists outside the DOM hierarchy of the parent component. */\n usePortal?: boolean;\n /** The element in which the focus trap should be set. Default to popover. */\n focusTrapZoneElement?: RefObject<HTMLElement>;\n /** Z-axis position. */\n zIndex?: number;\n /** On close callback (on click away or Escape pressed). */\n onClose?(): void;\n /** Whether the popover should trap the focus within itself. Default to false. */\n withFocusTrap?: boolean;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'Popover';\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<PopoverProps> = {\n elevation: 3,\n placement: Placement.AUTO,\n focusAnchorOnClose: true,\n usePortal: true,\n zIndex: POPOVER_ZINDEX,\n};\n\n// Inner component (must be wrapped before export)\nconst _InnerPopover = forwardRef<PopoverProps, HTMLDivElement>((props, ref) => {\n const {\n anchorRef,\n as: Component = 'div',\n children,\n className,\n closeOnClickAway,\n closeOnEscape,\n elevation = DEFAULT_PROPS.elevation,\n focusElement,\n hasArrow,\n isOpen,\n onClose,\n parentElement,\n usePortal = DEFAULT_PROPS.usePortal,\n focusAnchorOnClose = DEFAULT_PROPS.focusAnchorOnClose,\n withFocusTrap,\n boundaryRef,\n fitToAnchorWidth,\n fitWithinViewportHeight,\n focusTrapZoneElement,\n offset,\n placement = DEFAULT_PROPS.placement,\n style,\n theme,\n zIndex = DEFAULT_PROPS.zIndex,\n ...forwardedProps\n } = props;\n const popoverRef = useRef<HTMLDivElement>(null);\n\n const { styles, attributes, isPositioned, position, setArrowElement, setPopperElement, popperElement } =\n usePopoverStyle({\n offset,\n hasArrow,\n fitToAnchorWidth,\n fitWithinViewportHeight,\n boundaryRef,\n anchorRef,\n placement,\n style,\n zIndex,\n });\n\n const unmountSentinel = useRestoreFocusOnClose({ focusAnchorOnClose, anchorRef, parentElement }, popperElement);\n const focusZoneElement = focusTrapZoneElement?.current || popoverRef?.current;\n\n useCallbackOnEscape(onClose, isOpen && closeOnEscape);\n\n /** Only set focus within if the focus trap is disabled as they interfere with one another. */\n useFocus(focusElement?.current, !withFocusTrap && isOpen && isPositioned);\n useFocusTrap(withFocusTrap && isOpen && focusZoneElement, focusElement?.current);\n\n const clickAwayRefs = useRef([popoverRef, anchorRef]);\n const mergedRefs = useMergeRefs<HTMLDivElement>(setPopperElement, ref, popoverRef);\n\n return isOpen ? (\n <Portal enabled={usePortal}>\n <Component\n {...forwardedProps}\n ref={mergedRefs}\n className={classNames(\n className,\n handleBasicClasses({\n prefix: CLASSNAME,\n theme,\n elevation: Math.min(elevation || 0, 5),\n position,\n isInitializing: !styles.popover?.transform,\n }),\n )}\n style={styles.popover}\n {...attributes.popper}\n >\n {unmountSentinel}\n <ClickAwayProvider callback={closeOnClickAway && onClose} childrenRefs={clickAwayRefs}>\n {hasArrow && (\n <div ref={setArrowElement} className={`${CLASSNAME}__arrow`} style={styles.arrow}>\n <svg viewBox=\"0 0 14 14\" aria-hidden>\n <path d=\"M8 3.49C7.62 2.82 6.66 2.82 6.27 3.48L.04 14 14.04 14 8 3.49Z\" />\n </svg>\n </div>\n )}\n <ThemeProvider value={theme}>{children}</ThemeProvider>\n </ClickAwayProvider>\n </Component>\n </Portal>\n ) : null;\n});\n_InnerPopover.displayName = COMPONENT_NAME;\n\n/**\n * Popover component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const Popover: Comp<PopoverProps, HTMLDivElement> = skipRender(\n // Skip render in SSR\n () => Boolean(DOCUMENT),\n _InnerPopover,\n);\nPopover.displayName = COMPONENT_NAME;\nPopover.className = CLASSNAME;\nPopover.defaultProps = DEFAULT_PROPS;\n"],"names":["useFocus","element","shouldFocus","wasFocus","setWasFocus","useState","useEffect","focus","skipRender","predicate","Component","Wrapper","React","forwardRef","props","ref","DOCUMENT","_jsx","displayName","OnBeforeUnmount","callbackRef","useLayoutEffect","current","useRestoreFocusOnClose","focusAnchorOnClose","anchorRef","parentElement","popoverElement","onBeforeUnmountRef","useRef","undefined","isFocusWithin","contains","document","activeElement","setTimeout","anchor","elementToFocus","getFirstAndLastFocusable","first","preventScroll","sameWidth","memoize","anchorWidthOption","name","enabled","phase","requires","fn","state","styles","popper","rects","reference","width","effect","elements","style","offsetWidth","maxSize","requiresIfExists","options","overflow","detectOverflow","y","x","modifiersData","preventOverflow","height","basePlacement","placement","split","widthProp","heightProp","applyMaxHeight","maxHeight","ARROW_SIZE","usePopoverStyle","offset","hasArrow","fitToAnchorWidth","fitWithinViewportHeight","boundaryRef","zIndex","popperElement","setPopperElement","arrowElement","setArrowElement","actualOffset","along","away","modifiers","push","padding","fitWidth","FitAnchorWidth","MIN_WIDTH","boundary","attributes","update","usePopper","anchorElement","WINDOW","ResizeObserver","running","updateRateLimited","resizeObserver","observe","disconnect","position","popoverStyle","useMemo","newStyles","innerHeight","documentElement","clientHeight","arrow","popover","isPositioned","COMPONENT_NAME","CLASSNAME","getRootClassName","DEFAULT_PROPS","elevation","Placement","AUTO","usePortal","POPOVER_ZINDEX","_InnerPopover","as","children","className","closeOnClickAway","closeOnEscape","focusElement","isOpen","onClose","withFocusTrap","focusTrapZoneElement","theme","forwardedProps","popoverRef","unmountSentinel","focusZoneElement","useCallbackOnEscape","useFocusTrap","clickAwayRefs","mergedRefs","useMergeRefs","Portal","_jsxs","classNames","handleBasicClasses","prefix","Math","min","isInitializing","transform","ClickAwayProvider","callback","childrenRefs","viewBox","d","ThemeProvider","value","Popover","Boolean","defaultProps"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"isComponent-b9762ff1.js","sources":["../../src/utils/type/isComponent.ts"],"sourcesContent":["import type { ReactElement, ReactNode } from 'react';\nimport type { Comp } from './Comp';\n\n/**\n * Properties of a component to use to determine its name.\n * In the order of preference.\n */\nconst NAME_PROPERTIES: string[] = [\n 'type',\n 'type.displayName',\n 'displayName',\n 'name',\n 'type.name',\n 'props.mdxType',\n '_reactInternalFiber.elementType.name',\n];\n/**\n * Create a predicate function that checks if a ReactNode is a react element from the given component.\n *\n * @param component React function component or the component name\n * @return predicate returning true if value is instance of the component\n */\nexport const isComponent =\n <C>(component: Comp<C, any> | string) =>\n (instance: ReactNode): instance is ReactElement => {\n const componentName = typeof component === 'string' ? component : component.displayName;\n\n return (\n !!(instance as any).$$typeof &&\n NAME_PROPERTIES.some((nameProperty: string): boolean => (instance as any)[nameProperty] === componentName)\n );\n };\n"],"names":["NAME_PROPERTIES","isComponent","component","instance","componentName","displayName","$$typeof","some","nameProperty"],"mappings":"AAGA;AACA;AACA;AACA;AACA,MAAMA,eAAyB,GAAG,CAC9B,MAAM,EACN,kBAAkB,EAClB,aAAa,EACb,MAAM,EACN,WAAW,EACX,eAAe,EACf,sCAAsC,CACzC,CAAA;AACD;AACA;AACA;AACA;AACA;AACA;MACaC,WAAW,GAChBC,SAAgC,IACnCC,QAAmB,IAA+B;EAC/C,MAAMC,aAAa,GAAG,OAAOF,SAAS,KAAK,QAAQ,GAAGA,SAAS,GAAGA,SAAS,CAACG,WAAW,CAAA;AAEvF,EAAA,OACI,CAAC,CAAEF,QAAQ,CAASG,QAAQ,IAC5BN,eAAe,CAACO,IAAI,CAAEC,YAAoB,IAAeL,QAAQ,CAASK,YAAY,CAAC,KAAKJ,aAAa,CAAC,CAAA;AAElH;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"isComponentType-e806b848.js","sources":["../../src/utils/type/isComponentType.ts"],"sourcesContent":["import React, { ReactElement, ReactNode } from 'react';\n\n/**\n * Similar to `isComponent` but more precise as it's not based on the component `displayName` but on the component function reference.\n */\nexport const isComponentType =\n (type: ReactElement['type']) =>\n (node: ReactNode): node is ReactElement =>\n React.isValidElement(node) && node.type === type;\n"],"names":["isComponentType","type","node","React","isValidElement"],"mappings":";;AAEA;AACA;AACA;MACaA,eAAe,GACvBC,IAA0B,IAC1BC,IAAe,iBACZC,cAAK,CAACC,cAAc,CAACF,IAAI,CAAC,IAAIA,IAAI,CAACD,IAAI,KAAKA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mergeRefs-f0d7d6ea.js","sources":["../../src/utils/react/mergeRefs.ts"],"sourcesContent":["import { Falsy } from '@lumx/react/utils/type';\nimport { MutableRefObject, useMemo } from 'react';\n\ntype FnRef<T> = (value: T) => void;\n\n/**\n * Merge refs into a single function ref.\n *\n * @param refs React references to merge.\n * @return the merged ref.\n */\nexport function mergeRefs<T>(...refs: Array<MutableRefObject<T | null> | FnRef<T> | Falsy>): FnRef<T> {\n return (value) =>\n refs.forEach((ref) => {\n if (typeof ref === 'function') {\n ref(value);\n } else if (ref) {\n // eslint-disable-next-line no-param-reassign\n (ref as MutableRefObject<T>).current = value;\n }\n });\n}\n\n/**\n * Same as `mergeRefs` but memoized\n */\nexport const useMergeRefs = <T>(...refs: Array<MutableRefObject<T | null> | FnRef<T> | Falsy>) => {\n return useMemo(\n () => mergeRefs(...refs),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n refs,\n );\n};\n"],"names":["mergeRefs","refs","value","forEach","ref","current","useMergeRefs","useMemo"],"mappings":";;AAKA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,SAASA,CAAI,GAAGC,IAA0D,EAAY;AAClG,EAAA,OAAQC,KAAK,IACTD,IAAI,CAACE,OAAO,CAAEC,GAAG,IAAK;AAClB,IAAA,IAAI,OAAOA,GAAG,KAAK,UAAU,EAAE;MAC3BA,GAAG,CAACF,KAAK,CAAC,CAAA;KACb,MAAM,IAAIE,GAAG,EAAE;AACZ;MACCA,GAAG,CAAyBC,OAAO,GAAGH,KAAK,CAAA;AAChD,KAAA;AACJ,GAAC,CAAC,CAAA;AACV,CAAA;;AAEA;AACA;AACA;MACaI,YAAY,GAAGA,CAAI,GAAGL,IAA0D,KAAK;AAC9F,EAAA,OAAOM,OAAO,CACV,MAAMP,SAAS,CAAC,GAAGC,IAAI,CAAC;AACxB;AACAA,EAAAA,IACJ,CAAC,CAAA;AACL;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"state-db358714.js","sources":["../../src/components/tabs/state.ts"],"sourcesContent":["import { Dispatch, createContext, useCallback, useContext, useEffect, useMemo } from 'react';\nimport { useId } from '@lumx/react/hooks/useId';\n\ntype TabType = 'tab' | 'tabPanel';\n\nexport interface State {\n isLazy: boolean;\n shouldActivateOnFocus: boolean;\n activeTabIndex: number;\n ids: Record<TabType, string[]>;\n}\n\nexport const INIT_STATE: State = {\n isLazy: true,\n shouldActivateOnFocus: false,\n activeTabIndex: 0,\n ids: { tab: [], tabPanel: [] },\n};\n\nexport type Action =\n | { type: 'update'; payload: Partial<State> }\n | { type: 'setActiveTabIndex'; payload: number }\n | { type: 'register'; payload: { type: TabType; id: string } }\n | { type: 'unregister'; payload: { type: TabType; id: string } };\n\nexport const reducer = (state: State, action: Action): State => {\n switch (action.type) {\n case 'update':\n return { ...state, ...action.payload };\n case 'setActiveTabIndex': {\n if (state.activeTabIndex === action.payload) {\n return state;\n }\n // Change active tab index.\n return { ...state, activeTabIndex: action.payload };\n }\n case 'register': {\n const { type, id } = action.payload;\n // Append tab/tabPanel id in state.\n return { ...state, ids: { ...state.ids, [type]: [...state.ids[type], id] } };\n }\n case 'unregister': {\n const { type, id } = action.payload;\n const index = state.ids[type].indexOf(id);\n if (index === -1) return state;\n // Remove tab & tab panel at index.\n const tabIds = [...state.ids.tab];\n tabIds.splice(index, 1);\n const tabPanelIds = [...state.ids.tabPanel];\n tabPanelIds.splice(index, 1);\n return {\n ...state,\n ids: { tab: tabIds, tabPanel: tabPanelIds },\n };\n }\n default:\n return state;\n }\n};\n\nexport const TabProviderContext = createContext<[State, Dispatch<Action>] | null>(null);\n\nexport type TabState = Pick<Required<State>, 'isLazy' | 'shouldActivateOnFocus'> & {\n isActive: boolean;\n tabId: string;\n tabPanelId: string;\n changeToTab(): void;\n};\n\n/* eslint-disable react-hooks/rules-of-hooks */\nexport const useTabProviderContext = (type: TabType, originalId?: string): undefined | TabState => {\n const context = useContext(TabProviderContext);\n if (!context) {\n return undefined;\n }\n const [state, dispatch] = context;\n\n // Current tab or tab panel id.\n const generatedId = useId();\n const id = originalId || generatedId;\n\n useEffect(\n () => {\n // On mount: register tab or tab panel id.\n dispatch({ type: 'register', payload: { type, id } });\n return () => {\n // On unmount: unregister tab or tab panel id.\n dispatch({ type: 'unregister', payload: { type, id } });\n };\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [],\n );\n\n // Find tab/tabPanel index using it's id.\n const index = useMemo(() => state.ids[type].indexOf(id), [state.ids, type, id]);\n const tabId = useMemo(() => state.ids.tab[index] || '', [state, index]);\n const tabPanelId = useMemo(() => state.ids.tabPanel[index] || '', [state, index]);\n const isActive = useMemo(() => state.activeTabIndex === index, [state, index]);\n const changeToTab = useCallback(() => dispatch({ type: 'setActiveTabIndex', payload: index }), [dispatch, index]);\n return {\n isLazy: state.isLazy,\n shouldActivateOnFocus: state.shouldActivateOnFocus,\n tabId,\n tabPanelId,\n isActive,\n changeToTab,\n };\n};\n\nexport const useTabProviderContextState = (): State | undefined => {\n const context = useContext(TabProviderContext);\n return context?.[0];\n};\n"],"names":["INIT_STATE","isLazy","shouldActivateOnFocus","activeTabIndex","ids","tab","tabPanel","reducer","state","action","type","payload","id","index","indexOf","tabIds","splice","tabPanelIds","TabProviderContext","createContext","useTabProviderContext","originalId","context","useContext","undefined","dispatch","generatedId","useId","useEffect","useMemo","tabId","tabPanelId","isActive","changeToTab","useCallback","useTabProviderContextState"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useBooleanState-2a3d237c.js","sources":["../../src/hooks/useBooleanState.tsx"],"sourcesContent":["import { useCallback, useState } from 'react';\n\nexport const useBooleanState = (defaultValue: boolean): [boolean, () => void, () => void, () => void] => {\n const [booleanValue, setBoolean] = useState<boolean>(defaultValue);\n\n const setToFalse = useCallback(() => setBoolean(false), []);\n\n const setToTrue = useCallback(() => setBoolean(true), []);\n\n const toggleBoolean = useCallback(() => setBoolean((previousValue) => !previousValue), []);\n\n return [booleanValue, setToFalse, setToTrue, toggleBoolean];\n};\n"],"names":["useBooleanState","defaultValue","booleanValue","setBoolean","useState","setToFalse","useCallback","setToTrue","toggleBoolean","previousValue"],"mappings":";;AAEaA,MAAAA,eAAe,GAAIC,YAAqB,IAAoD;EACrG,MAAM,CAACC,YAAY,EAAEC,UAAU,CAAC,GAAGC,QAAQ,CAAUH,YAAY,CAAC,CAAA;EAElE,MAAMI,UAAU,GAAGC,WAAW,CAAC,MAAMH,UAAU,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAA;EAE3D,MAAMI,SAAS,GAAGD,WAAW,CAAC,MAAMH,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;AAEzD,EAAA,MAAMK,aAAa,GAAGF,WAAW,CAAC,MAAMH,UAAU,CAAEM,aAAa,IAAK,CAACA,aAAa,CAAC,EAAE,EAAE,CAAC,CAAA;EAE1F,OAAO,CAACP,YAAY,EAAEG,UAAU,EAAEE,SAAS,EAAEC,aAAa,CAAC,CAAA;AAC/D;;;;"}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import { D as DOCUMENT } from './constants-d0e3f49e.js';
|
|
2
|
-
import { onEscapePressed } from '@lumx/core/js/utils';
|
|
3
|
-
import { useEffect } from 'react';
|
|
4
|
-
import { last } from '@lumx/core/js/utils/collection/last';
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* Keep track of listeners, only the last registered listener gets activated at any point (previously registered
|
|
8
|
-
* listener are disabled).
|
|
9
|
-
* When a listener gets unregistered, the previously registered listener gets enabled again.
|
|
10
|
-
*/
|
|
11
|
-
function makeListenerTowerContext() {
|
|
12
|
-
const LISTENERS = [];
|
|
13
|
-
return {
|
|
14
|
-
register(listener) {
|
|
15
|
-
// Disable previous listener.
|
|
16
|
-
last(LISTENERS)?.disable();
|
|
17
|
-
// Keep track of current listener.
|
|
18
|
-
LISTENERS.push(listener);
|
|
19
|
-
// Enable current listener.
|
|
20
|
-
listener.enable();
|
|
21
|
-
},
|
|
22
|
-
unregister(listener) {
|
|
23
|
-
// Disable current listener.
|
|
24
|
-
listener.disable();
|
|
25
|
-
// Remove current listener.
|
|
26
|
-
const index = LISTENERS.indexOf(listener);
|
|
27
|
-
if (index > -1) {
|
|
28
|
-
LISTENERS.splice(index, 1);
|
|
29
|
-
}
|
|
30
|
-
// Enable previous listener.
|
|
31
|
-
last(LISTENERS)?.enable();
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
const LISTENERS = makeListenerTowerContext();
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
* Register a global listener on 'Escape' key pressed.
|
|
40
|
-
*
|
|
41
|
-
* If multiple listener are registered, only the last one is maintained. When a listener is unregistered, the previous
|
|
42
|
-
* one gets activated again.
|
|
43
|
-
*
|
|
44
|
-
* @param callback Callback
|
|
45
|
-
* @param closeOnEscape Disables the hook when false
|
|
46
|
-
*/
|
|
47
|
-
function useCallbackOnEscape(callback, closeOnEscape = true) {
|
|
48
|
-
useEffect(() => {
|
|
49
|
-
const rootElement = DOCUMENT?.body;
|
|
50
|
-
if (!closeOnEscape || !callback || !rootElement) {
|
|
51
|
-
return undefined;
|
|
52
|
-
}
|
|
53
|
-
const onKeyDown = onEscapePressed(callback);
|
|
54
|
-
const listener = {
|
|
55
|
-
enable: () => rootElement.addEventListener('keydown', onKeyDown),
|
|
56
|
-
disable: () => rootElement.removeEventListener('keydown', onKeyDown)
|
|
57
|
-
};
|
|
58
|
-
LISTENERS.register(listener);
|
|
59
|
-
return () => LISTENERS.unregister(listener);
|
|
60
|
-
}, [callback, closeOnEscape]);
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
export { makeListenerTowerContext as m, useCallbackOnEscape as u };
|
|
64
|
-
//# sourceMappingURL=useCallbackOnEscape-b956a85d.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useCallbackOnEscape-b956a85d.js","sources":["../../src/utils/function/makeListenerTowerContext.ts","../../src/hooks/useCallbackOnEscape.ts"],"sourcesContent":["import { last } from '@lumx/core/js/utils/collection/last';\n\nexport type Listener = { enable(): void; disable(): void };\n\n/**\n * Keep track of listeners, only the last registered listener gets activated at any point (previously registered\n * listener are disabled).\n * When a listener gets unregistered, the previously registered listener gets enabled again.\n */\nexport function makeListenerTowerContext() {\n const LISTENERS: Listener[] = [];\n\n return {\n register(listener: Listener) {\n // Disable previous listener.\n last(LISTENERS)?.disable();\n // Keep track of current listener.\n LISTENERS.push(listener);\n // Enable current listener.\n listener.enable();\n },\n unregister(listener: Listener) {\n // Disable current listener.\n listener.disable();\n // Remove current listener.\n const index = LISTENERS.indexOf(listener);\n if (index > -1) {\n LISTENERS.splice(index, 1);\n }\n // Enable previous listener.\n last(LISTENERS)?.enable();\n },\n };\n}\n","import { DOCUMENT } from '@lumx/react/constants';\nimport { Callback } from '@lumx/react/utils/type';\nimport { onEscapePressed } from '@lumx/core/js/utils';\nimport { useEffect } from 'react';\nimport { Listener, makeListenerTowerContext } from '@lumx/react/utils/function/makeListenerTowerContext';\n\nconst LISTENERS = makeListenerTowerContext();\n\n/**\n * Register a global listener on 'Escape' key pressed.\n *\n * If multiple listener are registered, only the last one is maintained. When a listener is unregistered, the previous\n * one gets activated again.\n *\n * @param callback Callback\n * @param closeOnEscape Disables the hook when false\n */\nexport function useCallbackOnEscape(callback: Callback | undefined, closeOnEscape = true) {\n useEffect(() => {\n const rootElement = DOCUMENT?.body;\n if (!closeOnEscape || !callback || !rootElement) {\n return undefined;\n }\n const onKeyDown = onEscapePressed(callback);\n\n const listener: Listener = {\n enable: () => rootElement.addEventListener('keydown', onKeyDown),\n disable: () => rootElement.removeEventListener('keydown', onKeyDown),\n };\n\n LISTENERS.register(listener);\n return () => LISTENERS.unregister(listener);\n }, [callback, closeOnEscape]);\n}\n"],"names":["makeListenerTowerContext","LISTENERS","register","listener","last","disable","push","enable","unregister","index","indexOf","splice","useCallbackOnEscape","callback","closeOnEscape","useEffect","rootElement","DOCUMENT","body","undefined","onKeyDown","onEscapePressed","addEventListener","removeEventListener"],"mappings":";;;;;AAIA;AACA;AACA;AACA;AACA;AACO,SAASA,wBAAwBA,GAAG;EACvC,MAAMC,SAAqB,GAAG,EAAE,CAAA;EAEhC,OAAO;IACHC,QAAQA,CAACC,QAAkB,EAAE;AACzB;AACAC,MAAAA,IAAI,CAACH,SAAS,CAAC,EAAEI,OAAO,EAAE,CAAA;AAC1B;AACAJ,MAAAA,SAAS,CAACK,IAAI,CAACH,QAAQ,CAAC,CAAA;AACxB;MACAA,QAAQ,CAACI,MAAM,EAAE,CAAA;KACpB;IACDC,UAAUA,CAACL,QAAkB,EAAE;AAC3B;MACAA,QAAQ,CAACE,OAAO,EAAE,CAAA;AAClB;AACA,MAAA,MAAMI,KAAK,GAAGR,SAAS,CAACS,OAAO,CAACP,QAAQ,CAAC,CAAA;AACzC,MAAA,IAAIM,KAAK,GAAG,CAAC,CAAC,EAAE;AACZR,QAAAA,SAAS,CAACU,MAAM,CAACF,KAAK,EAAE,CAAC,CAAC,CAAA;AAC9B,OAAA;AACA;AACAL,MAAAA,IAAI,CAACH,SAAS,CAAC,EAAEM,MAAM,EAAE,CAAA;AAC7B,KAAA;GACH,CAAA;AACL;;AC3BA,MAAMN,SAAS,GAAGD,wBAAwB,EAAE,CAAA;;AAE5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASY,mBAAmBA,CAACC,QAA8B,EAAEC,aAAa,GAAG,IAAI,EAAE;AACtFC,EAAAA,SAAS,CAAC,MAAM;AACZ,IAAA,MAAMC,WAAW,GAAGC,QAAQ,EAAEC,IAAI,CAAA;IAClC,IAAI,CAACJ,aAAa,IAAI,CAACD,QAAQ,IAAI,CAACG,WAAW,EAAE;AAC7C,MAAA,OAAOG,SAAS,CAAA;AACpB,KAAA;AACA,IAAA,MAAMC,SAAS,GAAGC,eAAe,CAACR,QAAQ,CAAC,CAAA;AAE3C,IAAA,MAAMV,QAAkB,GAAG;MACvBI,MAAM,EAAEA,MAAMS,WAAW,CAACM,gBAAgB,CAAC,SAAS,EAAEF,SAAS,CAAC;MAChEf,OAAO,EAAEA,MAAMW,WAAW,CAACO,mBAAmB,CAAC,SAAS,EAAEH,SAAS,CAAA;KACtE,CAAA;AAEDnB,IAAAA,SAAS,CAACC,QAAQ,CAACC,QAAQ,CAAC,CAAA;AAC5B,IAAA,OAAO,MAAMF,SAAS,CAACO,UAAU,CAACL,QAAQ,CAAC,CAAA;AAC/C,GAAC,EAAE,CAACU,QAAQ,EAAEC,aAAa,CAAC,CAAC,CAAA;AACjC;;;;"}
|