@lumx/react 3.20.1-alpha.32 → 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/{check-circle-de24f857.js → packages/lumx-icons/dist/esm/check-circle-e47dacb8.js} +2 -2
- 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/{close-eaf6c45a.js → packages/lumx-icons/dist/esm/close-ad7c38b0.js} +2 -2
- package/_internal/packages/lumx-icons/dist/esm/close-ad7c38b0.js.map +1 -0
- package/_internal/{close-circle-ef5d1aac.js → packages/lumx-icons/dist/esm/close-circle-6f37d603.js} +2 -2
- 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-5326cf04.js → packages/lumx-react/src/components/alert-dialog/AlertDialog-9cbbc6b1.js} +11 -9
- 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-52bb217f.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-1b7d3b79.js → packages/lumx-react/src/components/button/Button-86d16087.js} +8 -8
- package/_internal/packages/lumx-react/src/components/button/Button-86d16087.js.map +1 -0
- package/_internal/{components/button-c4127e86.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-e11b5e74.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-f7751583.js → packages/lumx-react/src/components/checkbox/Checkbox-b7f3676e.js} +11 -13
- package/_internal/packages/lumx-react/src/components/checkbox/Checkbox-b7f3676e.js.map +1 -0
- package/_internal/{Chip-8fbedc93.js → packages/lumx-react/src/components/chip/Chip-f1a3942a.js} +6 -22
- 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-343e1922.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-d0e090b1.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-eec23fc2.js → packages/lumx-react/src/components/drag-handle/DragHandle-ce52ef0b.js} +5 -6
- package/_internal/packages/lumx-react/src/components/drag-handle/DragHandle-ce52ef0b.js.map +1 -0
- package/_internal/{components/dropdown-25170b7c.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-df812318.js → packages/lumx-react/src/components/expansion-panel/ExpansionPanel-b5b6cd76.js} +10 -9
- package/_internal/packages/lumx-react/src/components/expansion-panel/ExpansionPanel-b5b6cd76.js.map +1 -0
- package/_internal/{components/flag-c8d690bc.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-4eeba972.js → packages/lumx-react/src/components/flex-box/FlexBox-57fe8191.js} +2 -2
- package/_internal/packages/lumx-react/src/components/flex-box/FlexBox-57fe8191.js.map +1 -0
- package/_internal/{components/generic-block-964b2724.js → packages/lumx-react/src/components/generic-block/GenericBlock-4eaab530.js} +6 -12
- 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-99652545.js → packages/lumx-react/src/components/grid-column/GridColumn-7c04edfd.js} +2 -2
- package/_internal/packages/lumx-react/src/components/grid-column/GridColumn-7c04edfd.js.map +1 -0
- package/_internal/{components/heading-6cc0f178.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/{index-d3e86bd8.js → packages/lumx-react/src/components/icon/Icon-21a83e8c.js} +5 -6
- package/_internal/packages/lumx-react/src/components/icon/Icon-21a83e8c.js.map +1 -0
- package/_internal/{components/image-block-4f3fe64c.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-6f2f4131.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-10ff28f9.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-9d1bd2f6.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-9525e97f.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-edd6a28a.js → packages/lumx-react/src/components/message/Message-cfc1519a.js} +9 -7
- package/_internal/packages/lumx-react/src/components/message/Message-cfc1519a.js.map +1 -0
- package/_internal/{components/mosaic-c8084ee8.js → packages/lumx-react/src/components/mosaic/Mosaic-3af68efe.js} +4 -4
- 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-97a8a04a.js → packages/lumx-react/src/components/notification/Notification-de96c6ff.js} +10 -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-7e63c4f4.js → packages/lumx-react/src/components/post-block/PostBlock-91fd05ab.js} +5 -5
- 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-385825d4.js → packages/lumx-react/src/components/side-navigation/SideNavigationItem-2de35ba7.js} +13 -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-e0880d40.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-24fea8d7.js → packages/lumx-react/src/components/switch/Switch-22529b38.js} +7 -7
- 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-77f213b1.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-8597b7f7.js → packages/lumx-react/src/components/text-field/TextField-843f8e28.js} +13 -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-4928bba2.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-2e1b080e.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-5fd51607.js → packages/lumx-react/src/components/user-block/UserBlock-9b72469f.js} +5 -5
- 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-1ed080fb.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-c3c6378b.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-7093ba23.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/{partitionMulti-4daccdd5.js → packages/lumx-react/src/utils/partitionMulti-cb19eca6.js} +2 -2
- 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-fb85a743.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-78df9309.js → packages/lumx-react/src/utils/type/isComponent-ebe24fd7.js} +2 -2
- 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.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-1b7d3b79.js.map +0 -1
- package/_internal/ButtonRoot-a70baf82.js.map +0 -1
- package/_internal/Chip-8fbedc93.js.map +0 -1
- package/_internal/ClickAwayProvider-7093ba23.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-e11b5e74.js.map +0 -1
- package/_internal/ImageCaption-6f2f4131.js.map +0 -1
- package/_internal/List-4e95288a.js +0 -820
- package/_internal/List-4e95288a.js.map +0 -1
- package/_internal/PopoverDialog-d85ff977.js +0 -656
- package/_internal/PopoverDialog-d85ff977.js.map +0 -1
- package/_internal/Portal-3f86608e.js.map +0 -1
- package/_internal/RawClickable-2c2b6a89.js.map +0 -1
- package/_internal/Slides-68a7d0e6.js +0 -683
- package/_internal/Slides-68a7d0e6.js.map +0 -1
- package/_internal/ThemeContext-3181f000.js.map +0 -1
- package/_internal/Thumbnail-22bbea7e.js +0 -315
- package/_internal/Thumbnail-22bbea7e.js.map +0 -1
- package/_internal/check-circle-de24f857.js.map +0 -1
- package/_internal/chevron-right-827b804a.js +0 -6
- package/_internal/chevron-right-827b804a.js.map +0 -1
- package/_internal/chevron-up-0b9c76cb.js +0 -6
- package/_internal/chevron-up-0b9c76cb.js.map +0 -1
- package/_internal/close-circle-ef5d1aac.js.map +0 -1
- package/_internal/close-eaf6c45a.js.map +0 -1
- package/_internal/components/alert-dialog-5326cf04.js.map +0 -1
- package/_internal/components/autocomplete-7d9581e8.js +0 -262
- package/_internal/components/autocomplete-7d9581e8.js.map +0 -1
- package/_internal/components/avatar-52bb217f.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-c4127e86.js.map +0 -1
- package/_internal/components/checkbox-f7751583.js.map +0 -1
- package/_internal/components/chip-1ed080fb.js.map +0 -1
- package/_internal/components/comment-block-343e1922.js.map +0 -1
- package/_internal/components/date-picker-b6b3dc77.js +0 -2
- package/_internal/components/date-picker-b6b3dc77.js.map +0 -1
- package/_internal/components/dialog-d0e090b1.js.map +0 -1
- package/_internal/components/divider-0e93aa3d.js.map +0 -1
- package/_internal/components/drag-handle-eec23fc2.js.map +0 -1
- package/_internal/components/dropdown-25170b7c.js.map +0 -1
- package/_internal/components/expansion-panel-df812318.js.map +0 -1
- package/_internal/components/flag-c8d690bc.js.map +0 -1
- package/_internal/components/flex-box-4eeba972.js.map +0 -1
- package/_internal/components/generic-block-964b2724.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-99652545.js.map +0 -1
- package/_internal/components/heading-6cc0f178.js.map +0 -1
- package/_internal/components/icon-9cf785b1.js +0 -2
- package/_internal/components/icon-9cf785b1.js.map +0 -1
- package/_internal/components/image-block-4f3fe64c.js.map +0 -1
- package/_internal/components/image-lightbox-7b172571.js +0 -760
- package/_internal/components/image-lightbox-7b172571.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-10ff28f9.js.map +0 -1
- package/_internal/components/link-9d1bd2f6.js.map +0 -1
- package/_internal/components/link-preview-9525e97f.js.map +0 -1
- package/_internal/components/list-c8c7a6eb.js +0 -72
- package/_internal/components/list-c8c7a6eb.js.map +0 -1
- package/_internal/components/message-edd6a28a.js.map +0 -1
- package/_internal/components/mosaic-c8084ee8.js.map +0 -1
- package/_internal/components/navigation-c9121998.js +0 -226
- package/_internal/components/navigation-c9121998.js.map +0 -1
- package/_internal/components/notification-97a8a04a.js.map +0 -1
- package/_internal/components/popover-f93484cd.js +0 -3
- package/_internal/components/popover-f93484cd.js.map +0 -1
- package/_internal/components/post-block-7e63c4f4.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-c9758d83.js +0 -310
- package/_internal/components/progress-tracker-c9758d83.js.map +0 -1
- package/_internal/components/radio-button-929c7bee.js.map +0 -1
- package/_internal/components/select-bea40e77.js +0 -459
- package/_internal/components/select-bea40e77.js.map +0 -1
- package/_internal/components/side-navigation-385825d4.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-e0880d40.js.map +0 -1
- package/_internal/components/switch-24fea8d7.js.map +0 -1
- package/_internal/components/table-834af792.js +0 -298
- package/_internal/components/table-834af792.js.map +0 -1
- package/_internal/components/tabs-bebfe959.js +0 -299
- package/_internal/components/tabs-bebfe959.js.map +0 -1
- package/_internal/components/text-9074f440.js +0 -2
- package/_internal/components/text-9074f440.js.map +0 -1
- package/_internal/components/text-field-8597b7f7.js.map +0 -1
- package/_internal/components/thumbnail-4928bba2.js.map +0 -1
- package/_internal/components/toolbar-e7c984e6.js.map +0 -1
- package/_internal/components/tooltip-21018736.js +0 -328
- package/_internal/components/tooltip-21018736.js.map +0 -1
- package/_internal/components/uploader-2e1b080e.js.map +0 -1
- package/_internal/components/user-block-5fd51607.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-77f213b1.js.map +0 -1
- package/_internal/index-aa6d1d90.js +0 -437
- package/_internal/index-aa6d1d90.js.map +0 -1
- package/_internal/index-d3e86bd8.js.map +0 -1
- package/_internal/information-49bbeed3.js +0 -6
- package/_internal/information-49bbeed3.js.map +0 -1
- package/_internal/isComponent-78df9309.js.map +0 -1
- package/_internal/isComponentType-e806b848.js.map +0 -1
- package/_internal/mergeRefs-f0d7d6ea.js.map +0 -1
- package/_internal/partitionMulti-4daccdd5.js.map +0 -1
- package/_internal/state-db358714.js.map +0 -1
- package/_internal/useBooleanState-2a3d237c.js.map +0 -1
- package/_internal/useCallbackOnEscape-ea4d9eb4.js +0 -62
- package/_internal/useCallbackOnEscape-ea4d9eb4.js.map +0 -1
- package/_internal/useDisableBodyScroll-36bd7352.js.map +0 -1
- package/_internal/useDisableStateProps-69e16b7c.js.map +0 -1
- package/_internal/useFocusTrap-c3c6378b.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-fb85a743.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSlideshowControls-9c881480.js","sources":["../../../../../../src/hooks/useSlideshowControls.ts"],"sourcesContent":["import { useState, useCallback, useEffect } from 'react';\n\nimport { useInterval } from '@lumx/react/hooks/useInterval';\nimport { AUTOPLAY_DEFAULT_INTERVAL } from '@lumx/react/components/slideshow/constants';\nimport { useId } from '@lumx/react/hooks/useId';\n\nexport interface UseSlideshowControlsOptions {\n /** default active index to be displayed */\n defaultActiveIndex?: number;\n /** total slides to display */\n itemsCount: number;\n /** Index of the current slide. */\n activeIndex?: number;\n /** Whether the automatic rotation of the slideshow is enabled or not. */\n autoPlay?: boolean;\n /** Whether the image has to fill its container height or not. */\n fillHeight?: boolean;\n /** Number of slides to group together. */\n groupBy?: number;\n /** Interval between each slide when automatic rotation is enabled. */\n interval?: number;\n /** Callback when slide changes */\n onChange?(index: number): void;\n /** slideshow HTML id attribute */\n id?: string;\n /** slides wrapper HTML id attribute */\n slidesId?: string;\n}\n\nexport interface UseSlideshowControls {\n /** Index for the first visible slide, should be used when groupBy is passed in */\n startIndexVisible: number;\n /** Index for the last visible slide, should be used when groupBy is passed in */\n endIndexVisible: number;\n /** total slides to be displayed */\n slidesCount: number;\n /** callback to set */\n setSlideshow: (element: HTMLDivElement | null) => void;\n /** reference to the slideshow element */\n slideshow: HTMLDivElement | null;\n /** id to be used for the slideshow */\n slideshowId: string;\n /** id to be used for the wrapper that contains the slides */\n slideshowSlidesId: string;\n /** callback that triggers the previous slide while using the slideshow controls */\n onPreviousClick: (loopback: boolean) => void;\n /** callback that triggers the next slide while using the slideshow controls */\n onNextClick: (loopback: boolean) => void;\n /** callback that triggers a specific page while using the slideshow controls */\n onPaginationClick: (index: number) => void;\n /** whether the slideshow is autoplaying or not */\n isAutoPlaying: boolean;\n /** whether the slideshow was force paused or not */\n isForcePaused: boolean;\n /** callback to change whether the slideshow is autoplaying or not */\n toggleAutoPlay: () => void;\n /** calback to change whether the slideshow should be force paused or not */\n toggleForcePause: () => void;\n /** current active slide index */\n activeIndex: number;\n /** set the current index as the active one */\n setActiveIndex: (index: number) => void;\n /** callback that stops the auto play */\n stopAutoPlay: () => void;\n /** callback that starts the auto play */\n startAutoPlay: () => void;\n}\n\nexport const DEFAULT_OPTIONS = {\n activeIndex: 0,\n groupBy: 1,\n interval: AUTOPLAY_DEFAULT_INTERVAL,\n} as const;\n\nexport const useSlideshowControls = ({\n activeIndex = DEFAULT_OPTIONS.activeIndex,\n groupBy = DEFAULT_OPTIONS.groupBy,\n interval = DEFAULT_OPTIONS.interval,\n autoPlay,\n defaultActiveIndex,\n onChange,\n itemsCount,\n id,\n slidesId,\n}: UseSlideshowControlsOptions): UseSlideshowControls => {\n const [currentIndex, setCurrentIndex] = useState(activeIndex as number);\n // Use state instead of a ref to make the slideshow controls update directly when the element is set.\n const [element, setElement] = useState<HTMLDivElement | null>(null);\n\n // Number of slides when using groupBy prop.\n const slidesCount = Math.ceil(itemsCount / Math.min(groupBy as number, itemsCount));\n\n // Change current index to display next slide.\n const goToNextSlide = useCallback(\n (loopback = true) => {\n setCurrentIndex((index) => {\n if (loopback && index === slidesCount - 1) {\n // Loopback to the start.\n return 0;\n }\n if (index < slidesCount - 1) {\n // Next slide.\n return index + 1;\n }\n return index;\n });\n },\n [slidesCount, setCurrentIndex],\n );\n\n // Change current index to display previous slide.\n const goToPreviousSlide = useCallback(\n (loopback = true) => {\n setCurrentIndex((index) => {\n if (loopback && index === 0) {\n // Loopback to the end.\n return slidesCount - 1;\n }\n if (index > 0) {\n // Previous slide.\n return index - 1;\n }\n return index;\n });\n },\n [slidesCount, setCurrentIndex],\n );\n\n // Auto play\n const [isAutoPlaying, setIsAutoPlaying] = useState(Boolean(autoPlay));\n const [isForcePaused, setIsForcePaused] = useState(false);\n\n const isSlideshowAutoPlaying = isForcePaused ? false : isAutoPlaying;\n // Start\n useInterval(goToNextSlide, isSlideshowAutoPlaying && slidesCount > 1 ? (interval as number) : null);\n\n // Reset current index if it become invalid.\n useEffect(() => {\n if (currentIndex > slidesCount - 1) {\n setCurrentIndex(defaultActiveIndex as number);\n }\n }, [currentIndex, slidesCount, defaultActiveIndex]);\n\n const startAutoPlay = () => {\n setIsAutoPlaying(Boolean(autoPlay));\n };\n\n const stopAutoPlay = () => {\n setIsAutoPlaying(false);\n };\n\n // Handle click on a bullet to go to a specific slide.\n const onPaginationClick = useCallback(\n (index: number) => {\n stopAutoPlay();\n setIsForcePaused(true);\n\n if (index >= 0 && index < slidesCount) {\n setCurrentIndex(index);\n }\n },\n [slidesCount, setCurrentIndex],\n );\n\n // Handle click or keyboard event to go to next slide.\n const onNextClick = useCallback(\n (loopback = true) => {\n stopAutoPlay();\n setIsForcePaused(true);\n goToNextSlide(loopback);\n },\n [goToNextSlide],\n );\n\n // Handle click or keyboard event to go to previous slide.\n const onPreviousClick = useCallback(\n (loopback = true) => {\n stopAutoPlay();\n setIsForcePaused(true);\n goToPreviousSlide(loopback);\n },\n [goToPreviousSlide],\n );\n\n // If the activeIndex props changes, update the current slide\n useEffect(() => {\n setCurrentIndex(activeIndex as number);\n }, [activeIndex]);\n\n // If the slide changes, with autoplay for example, trigger \"onChange\"\n useEffect(() => {\n if (!onChange) return;\n onChange(currentIndex);\n }, [currentIndex, onChange]);\n\n const generatedSlideshowId = useId();\n const slideshowId = id || generatedSlideshowId;\n\n const generatedSlidesId = useId();\n const slideshowSlidesId = slidesId || generatedSlidesId;\n\n const toggleAutoPlay = () => {\n if (isSlideshowAutoPlaying) {\n stopAutoPlay();\n } else {\n startAutoPlay();\n }\n };\n\n const toggleForcePause = () => {\n const shouldBePaused = !isForcePaused;\n\n setIsForcePaused(shouldBePaused);\n\n if (!shouldBePaused) {\n startAutoPlay();\n } else {\n stopAutoPlay();\n }\n };\n\n // Start index and end index of visible slides.\n const startIndexVisible = currentIndex * (groupBy as number);\n const endIndexVisible = startIndexVisible + (groupBy as number);\n\n return {\n startIndexVisible,\n endIndexVisible,\n setSlideshow: setElement,\n slideshow: element,\n slideshowId,\n slideshowSlidesId,\n onPreviousClick,\n onNextClick,\n onPaginationClick,\n isAutoPlaying: isSlideshowAutoPlaying,\n toggleAutoPlay,\n activeIndex: currentIndex,\n slidesCount,\n setActiveIndex: setCurrentIndex,\n startAutoPlay,\n stopAutoPlay,\n isForcePaused,\n toggleForcePause,\n };\n};\n"],"names":["DEFAULT_OPTIONS","activeIndex","groupBy","interval","AUTOPLAY_DEFAULT_INTERVAL","useSlideshowControls","autoPlay","defaultActiveIndex","onChange","itemsCount","id","slidesId","currentIndex","setCurrentIndex","useState","element","setElement","slidesCount","Math","ceil","min","goToNextSlide","useCallback","loopback","index","goToPreviousSlide","isAutoPlaying","setIsAutoPlaying","Boolean","isForcePaused","setIsForcePaused","isSlideshowAutoPlaying","useInterval","useEffect","startAutoPlay","stopAutoPlay","onPaginationClick","onNextClick","onPreviousClick","generatedSlideshowId","useId","slideshowId","generatedSlidesId","slideshowSlidesId","toggleAutoPlay","toggleForcePause","shouldBePaused","startIndexVisible","endIndexVisible","setSlideshow","slideshow","setActiveIndex"],"mappings":";;;;;AAoEO,MAAMA,eAAe,GAAG;AAC3BC,EAAAA,WAAW,EAAE,CAAC;AACdC,EAAAA,OAAO,EAAE,CAAC;AACVC,EAAAA,QAAQ,EAAEC,yBAAAA;AACd,EAAU;AAEH,MAAMC,oBAAoB,GAAGA,CAAC;EACjCJ,WAAW,GAAGD,eAAe,CAACC,WAAW;EACzCC,OAAO,GAAGF,eAAe,CAACE,OAAO;EACjCC,QAAQ,GAAGH,eAAe,CAACG,QAAQ;EACnCG,QAAQ;EACRC,kBAAkB;EAClBC,QAAQ;EACRC,UAAU;EACVC,EAAE;AACFC,EAAAA,QAAAA;AACyB,CAAC,KAA2B;EACrD,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAGC,QAAQ,CAACb,WAAqB,CAAC,CAAA;AACvE;EACA,MAAM,CAACc,OAAO,EAAEC,UAAU,CAAC,GAAGF,QAAQ,CAAwB,IAAI,CAAC,CAAA;;AAEnE;AACA,EAAA,MAAMG,WAAW,GAAGC,IAAI,CAACC,IAAI,CAACV,UAAU,GAAGS,IAAI,CAACE,GAAG,CAAClB,OAAO,EAAYO,UAAU,CAAC,CAAC,CAAA;;AAEnF;EACA,MAAMY,aAAa,GAAGC,WAAW,CAC7B,CAACC,QAAQ,GAAG,IAAI,KAAK;IACjBV,eAAe,CAAEW,KAAK,IAAK;AACvB,MAAA,IAAID,QAAQ,IAAIC,KAAK,KAAKP,WAAW,GAAG,CAAC,EAAE;AACvC;AACA,QAAA,OAAO,CAAC,CAAA;AACZ,OAAA;AACA,MAAA,IAAIO,KAAK,GAAGP,WAAW,GAAG,CAAC,EAAE;AACzB;QACA,OAAOO,KAAK,GAAG,CAAC,CAAA;AACpB,OAAA;AACA,MAAA,OAAOA,KAAK,CAAA;AAChB,KAAC,CAAC,CAAA;AACN,GAAC,EACD,CAACP,WAAW,EAAEJ,eAAe,CACjC,CAAC,CAAA;;AAED;EACA,MAAMY,iBAAiB,GAAGH,WAAW,CACjC,CAACC,QAAQ,GAAG,IAAI,KAAK;IACjBV,eAAe,CAAEW,KAAK,IAAK;AACvB,MAAA,IAAID,QAAQ,IAAIC,KAAK,KAAK,CAAC,EAAE;AACzB;QACA,OAAOP,WAAW,GAAG,CAAC,CAAA;AAC1B,OAAA;MACA,IAAIO,KAAK,GAAG,CAAC,EAAE;AACX;QACA,OAAOA,KAAK,GAAG,CAAC,CAAA;AACpB,OAAA;AACA,MAAA,OAAOA,KAAK,CAAA;AAChB,KAAC,CAAC,CAAA;AACN,GAAC,EACD,CAACP,WAAW,EAAEJ,eAAe,CACjC,CAAC,CAAA;;AAED;AACA,EAAA,MAAM,CAACa,aAAa,EAAEC,gBAAgB,CAAC,GAAGb,QAAQ,CAACc,OAAO,CAACtB,QAAQ,CAAC,CAAC,CAAA;EACrE,MAAM,CAACuB,aAAa,EAAEC,gBAAgB,CAAC,GAAGhB,QAAQ,CAAC,KAAK,CAAC,CAAA;AAEzD,EAAA,MAAMiB,sBAAsB,GAAGF,aAAa,GAAG,KAAK,GAAGH,aAAa,CAAA;AACpE;AACAM,EAAAA,WAAW,CAACX,aAAa,EAAEU,sBAAsB,IAAId,WAAW,GAAG,CAAC,GAAId,QAAQ,GAAc,IAAI,CAAC,CAAA;;AAEnG;AACA8B,EAAAA,SAAS,CAAC,MAAM;AACZ,IAAA,IAAIrB,YAAY,GAAGK,WAAW,GAAG,CAAC,EAAE;MAChCJ,eAAe,CAACN,kBAA4B,CAAC,CAAA;AACjD,KAAA;GACH,EAAE,CAACK,YAAY,EAAEK,WAAW,EAAEV,kBAAkB,CAAC,CAAC,CAAA;EAEnD,MAAM2B,aAAa,GAAGA,MAAM;AACxBP,IAAAA,gBAAgB,CAACC,OAAO,CAACtB,QAAQ,CAAC,CAAC,CAAA;GACtC,CAAA;EAED,MAAM6B,YAAY,GAAGA,MAAM;IACvBR,gBAAgB,CAAC,KAAK,CAAC,CAAA;GAC1B,CAAA;;AAED;AACA,EAAA,MAAMS,iBAAiB,GAAGd,WAAW,CAChCE,KAAa,IAAK;AACfW,IAAAA,YAAY,EAAE,CAAA;IACdL,gBAAgB,CAAC,IAAI,CAAC,CAAA;AAEtB,IAAA,IAAIN,KAAK,IAAI,CAAC,IAAIA,KAAK,GAAGP,WAAW,EAAE;MACnCJ,eAAe,CAACW,KAAK,CAAC,CAAA;AAC1B,KAAA;AACJ,GAAC,EACD,CAACP,WAAW,EAAEJ,eAAe,CACjC,CAAC,CAAA;;AAED;EACA,MAAMwB,WAAW,GAAGf,WAAW,CAC3B,CAACC,QAAQ,GAAG,IAAI,KAAK;AACjBY,IAAAA,YAAY,EAAE,CAAA;IACdL,gBAAgB,CAAC,IAAI,CAAC,CAAA;IACtBT,aAAa,CAACE,QAAQ,CAAC,CAAA;AAC3B,GAAC,EACD,CAACF,aAAa,CAClB,CAAC,CAAA;;AAED;EACA,MAAMiB,eAAe,GAAGhB,WAAW,CAC/B,CAACC,QAAQ,GAAG,IAAI,KAAK;AACjBY,IAAAA,YAAY,EAAE,CAAA;IACdL,gBAAgB,CAAC,IAAI,CAAC,CAAA;IACtBL,iBAAiB,CAACF,QAAQ,CAAC,CAAA;AAC/B,GAAC,EACD,CAACE,iBAAiB,CACtB,CAAC,CAAA;;AAED;AACAQ,EAAAA,SAAS,CAAC,MAAM;IACZpB,eAAe,CAACZ,WAAqB,CAAC,CAAA;AAC1C,GAAC,EAAE,CAACA,WAAW,CAAC,CAAC,CAAA;;AAEjB;AACAgC,EAAAA,SAAS,CAAC,MAAM;IACZ,IAAI,CAACzB,QAAQ,EAAE,OAAA;IACfA,QAAQ,CAACI,YAAY,CAAC,CAAA;AAC1B,GAAC,EAAE,CAACA,YAAY,EAAEJ,QAAQ,CAAC,CAAC,CAAA;AAE5B,EAAA,MAAM+B,oBAAoB,GAAGC,KAAK,EAAE,CAAA;AACpC,EAAA,MAAMC,WAAW,GAAG/B,EAAE,IAAI6B,oBAAoB,CAAA;AAE9C,EAAA,MAAMG,iBAAiB,GAAGF,KAAK,EAAE,CAAA;AACjC,EAAA,MAAMG,iBAAiB,GAAGhC,QAAQ,IAAI+B,iBAAiB,CAAA;EAEvD,MAAME,cAAc,GAAGA,MAAM;AACzB,IAAA,IAAIb,sBAAsB,EAAE;AACxBI,MAAAA,YAAY,EAAE,CAAA;AAClB,KAAC,MAAM;AACHD,MAAAA,aAAa,EAAE,CAAA;AACnB,KAAA;GACH,CAAA;EAED,MAAMW,gBAAgB,GAAGA,MAAM;IAC3B,MAAMC,cAAc,GAAG,CAACjB,aAAa,CAAA;IAErCC,gBAAgB,CAACgB,cAAc,CAAC,CAAA;IAEhC,IAAI,CAACA,cAAc,EAAE;AACjBZ,MAAAA,aAAa,EAAE,CAAA;AACnB,KAAC,MAAM;AACHC,MAAAA,YAAY,EAAE,CAAA;AAClB,KAAA;GACH,CAAA;;AAED;AACA,EAAA,MAAMY,iBAAiB,GAAGnC,YAAY,GAAIV,OAAkB,CAAA;AAC5D,EAAA,MAAM8C,eAAe,GAAGD,iBAAiB,GAAI7C,OAAkB,CAAA;EAE/D,OAAO;IACH6C,iBAAiB;IACjBC,eAAe;AACfC,IAAAA,YAAY,EAAEjC,UAAU;AACxBkC,IAAAA,SAAS,EAAEnC,OAAO;IAClB0B,WAAW;IACXE,iBAAiB;IACjBL,eAAe;IACfD,WAAW;IACXD,iBAAiB;AACjBV,IAAAA,aAAa,EAAEK,sBAAsB;IACrCa,cAAc;AACd3C,IAAAA,WAAW,EAAEW,YAAY;IACzBK,WAAW;AACXkC,IAAAA,cAAc,EAAEtC,eAAe;IAC/BqB,aAAa;IACbC,YAAY;IACZN,aAAa;AACbgB,IAAAA,gBAAAA;GACH,CAAA;AACL;;;;"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import isFunction from 'lodash/isFunction';
|
|
2
|
+
import { useCallback } from 'react';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Wrap mouse event handler to stop event propagation.
|
|
6
|
+
*
|
|
7
|
+
* @param handler The mouse handler to wrap.
|
|
8
|
+
* @return Mouse handler stopping propagation.
|
|
9
|
+
*/
|
|
10
|
+
function useStopPropagation(handler) {
|
|
11
|
+
return useCallback(evt => {
|
|
12
|
+
if (!evt || !isFunction(handler)) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
handler(evt);
|
|
16
|
+
evt.stopPropagation();
|
|
17
|
+
}, [handler]);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export { useStopPropagation };
|
|
21
|
+
//# sourceMappingURL=useStopPropagation-eef5d63f.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useStopPropagation-eef5d63f.js","sources":["../../../../../../src/hooks/useStopPropagation.ts"],"sourcesContent":["import isFunction from 'lodash/isFunction';\nimport { MouseEventHandler, useCallback } from 'react';\n\n/**\n * Wrap mouse event handler to stop event propagation.\n *\n * @param handler The mouse handler to wrap.\n * @return Mouse handler stopping propagation.\n */\nexport function useStopPropagation(handler?: MouseEventHandler): MouseEventHandler {\n return useCallback(\n (evt) => {\n if (!evt || !isFunction(handler)) {\n return;\n }\n handler(evt);\n evt.stopPropagation();\n },\n [handler],\n );\n}\n"],"names":["useStopPropagation","handler","useCallback","evt","isFunction","stopPropagation"],"mappings":";;;AAGA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,kBAAkBA,CAACC,OAA2B,EAAqB;EAC/E,OAAOC,WAAW,CACbC,GAAG,IAAK;IACL,IAAI,CAACA,GAAG,IAAI,CAACC,UAAU,CAACH,OAAO,CAAC,EAAE;AAC9B,MAAA,OAAA;AACJ,KAAA;IACAA,OAAO,CAACE,GAAG,CAAC,CAAA;IACZA,GAAG,CAACE,eAAe,EAAE,CAAA;AACzB,GAAC,EACD,CAACJ,OAAO,CACZ,CAAC,CAAA;AACL;;;;"}
|
|
@@ -1,10 +1,5 @@
|
|
|
1
1
|
import { useState, useRef, useEffect } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
/** Check if user prefers reduced motion */
|
|
5
|
-
function isReducedMotion() {
|
|
6
|
-
return WINDOW?.matchMedia?.('(prefers-reduced-motion: reduce)').matches;
|
|
7
|
-
}
|
|
2
|
+
import { isReducedMotion } from '../utils/browser/isReducedMotion-aca1229c.js';
|
|
8
3
|
|
|
9
4
|
/**
|
|
10
5
|
* Returns true if the component is visible tracking the opacity transition.
|
|
@@ -46,5 +41,5 @@ const useTransitionVisibility = (ref, isComponentVisible, timeout, onVisibilityC
|
|
|
46
41
|
return isVisible || isComponentVisible;
|
|
47
42
|
};
|
|
48
43
|
|
|
49
|
-
export {
|
|
50
|
-
//# sourceMappingURL=useTransitionVisibility-
|
|
44
|
+
export { useTransitionVisibility };
|
|
45
|
+
//# sourceMappingURL=useTransitionVisibility-2beba0ac.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTransitionVisibility-2beba0ac.js","sources":["../../../../../../src/hooks/useTransitionVisibility.ts"],"sourcesContent":["import { RefObject, useEffect, useRef, useState } from 'react';\nimport { isReducedMotion } from '@lumx/react/utils/browser/isReducedMotion';\n\n/**\n * Returns true if the component is visible tracking the opacity transition.\n *\n * @param ref Element on which to listen the transition event.\n * @param isComponentVisible Whether the component intends to be visible or not.\n * @param onVisibilityChange Callback called when the visibility changes.\n * @return true if the component should be rendered\n */\nexport const useTransitionVisibility = (\n ref: RefObject<HTMLElement>,\n isComponentVisible: boolean,\n timeout: number,\n onVisibilityChange?: (isVisible: boolean) => void,\n) => {\n const [isVisible, setVisible] = useState(isComponentVisible);\n const previousVisibility = useRef(isVisible);\n\n // On component visibility change.\n useEffect(() => {\n if (isComponentVisible) {\n setVisible(true);\n return undefined;\n }\n const { current: element } = ref;\n\n // Transition event is not supported or the user prefers reduced motion.\n // => Skip and set visibility to false directly.\n if (!element || !window.TransitionEvent || isReducedMotion()) {\n setVisible(false);\n return undefined;\n }\n\n const timer = setTimeout(() => setVisible(false), timeout);\n return () => clearTimeout(timer);\n }, [isComponentVisible, ref, timeout]);\n\n useEffect(() => {\n if (onVisibilityChange && previousVisibility.current !== isVisible) {\n onVisibilityChange(isVisible);\n previousVisibility.current = isVisible;\n }\n }, [isVisible, onVisibilityChange]);\n\n return isVisible || isComponentVisible;\n};\n"],"names":["useTransitionVisibility","ref","isComponentVisible","timeout","onVisibilityChange","isVisible","setVisible","useState","previousVisibility","useRef","useEffect","undefined","current","element","window","TransitionEvent","isReducedMotion","timer","setTimeout","clearTimeout"],"mappings":";;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,uBAAuB,GAAGA,CACnCC,GAA2B,EAC3BC,kBAA2B,EAC3BC,OAAe,EACfC,kBAAiD,KAChD;EACD,MAAM,CAACC,SAAS,EAAEC,UAAU,CAAC,GAAGC,QAAQ,CAACL,kBAAkB,CAAC,CAAA;AAC5D,EAAA,MAAMM,kBAAkB,GAAGC,MAAM,CAACJ,SAAS,CAAC,CAAA;;AAE5C;AACAK,EAAAA,SAAS,CAAC,MAAM;AACZ,IAAA,IAAIR,kBAAkB,EAAE;MACpBI,UAAU,CAAC,IAAI,CAAC,CAAA;AAChB,MAAA,OAAOK,SAAS,CAAA;AACpB,KAAA;IACA,MAAM;AAAEC,MAAAA,OAAO,EAAEC,OAAAA;AAAQ,KAAC,GAAGZ,GAAG,CAAA;;AAEhC;AACA;IACA,IAAI,CAACY,OAAO,IAAI,CAACC,MAAM,CAACC,eAAe,IAAIC,eAAe,EAAE,EAAE;MAC1DV,UAAU,CAAC,KAAK,CAAC,CAAA;AACjB,MAAA,OAAOK,SAAS,CAAA;AACpB,KAAA;IAEA,MAAMM,KAAK,GAAGC,UAAU,CAAC,MAAMZ,UAAU,CAAC,KAAK,CAAC,EAAEH,OAAO,CAAC,CAAA;AAC1D,IAAA,OAAO,MAAMgB,YAAY,CAACF,KAAK,CAAC,CAAA;GACnC,EAAE,CAACf,kBAAkB,EAAED,GAAG,EAAEE,OAAO,CAAC,CAAC,CAAA;AAEtCO,EAAAA,SAAS,CAAC,MAAM;AACZ,IAAA,IAAIN,kBAAkB,IAAII,kBAAkB,CAACI,OAAO,KAAKP,SAAS,EAAE;MAChED,kBAAkB,CAACC,SAAS,CAAC,CAAA;MAC7BG,kBAAkB,CAACI,OAAO,GAAGP,SAAS,CAAA;AAC1C,KAAA;AACJ,GAAC,EAAE,CAACA,SAAS,EAAED,kBAAkB,CAAC,CAAC,CAAA;EAEnC,OAAOC,SAAS,IAAIH,kBAAkB,CAAA;AAC1C;;;;"}
|
|
@@ -1,41 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
1
|
+
import { useContext, useMemo, useEffect, useRef, createContext } from 'react';
|
|
2
|
+
import { useClickAway } from '../../hooks/useClickAway-ab3e5463.js';
|
|
3
3
|
import { jsx } from 'react/jsx-runtime';
|
|
4
4
|
|
|
5
|
-
const EVENT_TYPES = ['mousedown', 'touchstart'];
|
|
6
|
-
function isClickAway(targets, refs) {
|
|
7
|
-
// The targets elements are not contained in any of the listed element references.
|
|
8
|
-
return !refs.some(ref => targets.some(target => ref?.current?.contains(target)));
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* Listen to clicks away from the given elements and callback the passed in function.
|
|
12
|
-
*
|
|
13
|
-
* Warning: If you need to detect click away on nested React portals, please use the `ClickAwayProvider` component.
|
|
14
|
-
*/
|
|
15
|
-
function useClickAway({
|
|
16
|
-
callback,
|
|
17
|
-
childrenRefs
|
|
18
|
-
}) {
|
|
19
|
-
useEffect(() => {
|
|
20
|
-
const {
|
|
21
|
-
current: currentRefs
|
|
22
|
-
} = childrenRefs;
|
|
23
|
-
if (!callback || !currentRefs || isEmpty(currentRefs)) {
|
|
24
|
-
return undefined;
|
|
25
|
-
}
|
|
26
|
-
const listener = evt => {
|
|
27
|
-
const targets = [evt.composedPath?.()[0], evt.target];
|
|
28
|
-
if (isClickAway(targets, currentRefs)) {
|
|
29
|
-
callback(evt);
|
|
30
|
-
}
|
|
31
|
-
};
|
|
32
|
-
EVENT_TYPES.forEach(evtType => document.addEventListener(evtType, listener));
|
|
33
|
-
return () => {
|
|
34
|
-
EVENT_TYPES.forEach(evtType => document.removeEventListener(evtType, listener));
|
|
35
|
-
};
|
|
36
|
-
}, [callback, childrenRefs]);
|
|
37
|
-
}
|
|
38
|
-
|
|
39
5
|
const ClickAwayAncestorContext = /*#__PURE__*/createContext(null);
|
|
40
6
|
/**
|
|
41
7
|
* Component combining the `useClickAway` hook with a React context to hook into the React component tree and make sure
|
|
@@ -91,5 +57,5 @@ const ClickAwayProvider = ({
|
|
|
91
57
|
};
|
|
92
58
|
ClickAwayProvider.displayName = 'ClickAwayProvider';
|
|
93
59
|
|
|
94
|
-
export { ClickAwayProvider
|
|
95
|
-
//# sourceMappingURL=ClickAwayProvider-
|
|
60
|
+
export { ClickAwayProvider };
|
|
61
|
+
//# sourceMappingURL=ClickAwayProvider-ec55d284.js.map
|
package/_internal/packages/lumx-react/src/utils/ClickAwayProvider/ClickAwayProvider-ec55d284.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClickAwayProvider-ec55d284.js","sources":["../../../../../../../src/utils/ClickAwayProvider/ClickAwayProvider.tsx"],"sourcesContent":["import { createContext, RefObject, useContext, useEffect, useMemo, useRef } from 'react';\nimport { ClickAwayParameters, useClickAway } from '@lumx/react/hooks/useClickAway';\n\ninterface ContextValue {\n childrenRefs: Array<RefObject<HTMLElement>>;\n addRefs(...newChildrenRefs: Array<RefObject<HTMLElement>>): void;\n}\n\nconst ClickAwayAncestorContext = createContext<ContextValue | null>(null);\n\ninterface ClickAwayProviderProps extends ClickAwayParameters {\n /**\n * (Optional) Element that should be considered as part of the parent\n */\n parentRef?: RefObject<HTMLElement>;\n /**\n * Children\n */\n children?: React.ReactNode;\n}\n\n/**\n * Component combining the `useClickAway` hook with a React context to hook into the React component tree and make sure\n * we take into account both the DOM tree and the React tree to detect click away.\n *\n * @return the react component.\n */\nexport const ClickAwayProvider: React.FC<ClickAwayProviderProps> = ({\n children,\n callback,\n childrenRefs,\n parentRef,\n}) => {\n const parentContext = useContext(ClickAwayAncestorContext);\n const currentContext = useMemo(() => {\n const context: ContextValue = {\n childrenRefs: [],\n /**\n * Add element refs to the current context and propagate to the parent context.\n */\n addRefs(...newChildrenRefs) {\n // Add element refs that should be considered as inside the click away context.\n context.childrenRefs.push(...newChildrenRefs);\n\n if (parentContext) {\n // Also add then to the parent context\n parentContext.addRefs(...newChildrenRefs);\n if (parentRef) {\n // The parent element is also considered as inside the parent click away context but not inside the current context\n parentContext.addRefs(parentRef);\n }\n }\n },\n };\n return context;\n }, [parentContext, parentRef]);\n\n useEffect(() => {\n const { current: currentRefs } = childrenRefs;\n if (!currentRefs) {\n return;\n }\n currentContext.addRefs(...currentRefs);\n }, [currentContext, childrenRefs]);\n\n useClickAway({ callback, childrenRefs: useRef(currentContext.childrenRefs) });\n return <ClickAwayAncestorContext.Provider value={currentContext}>{children}</ClickAwayAncestorContext.Provider>;\n};\nClickAwayProvider.displayName = 'ClickAwayProvider';\n"],"names":["ClickAwayAncestorContext","createContext","ClickAwayProvider","children","callback","childrenRefs","parentRef","parentContext","useContext","currentContext","useMemo","context","addRefs","newChildrenRefs","push","useEffect","current","currentRefs","useClickAway","useRef","_jsx","Provider","value","displayName"],"mappings":";;;;AAQA,MAAMA,wBAAwB,gBAAGC,aAAa,CAAsB,IAAI,CAAC,CAAA;AAazE;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,iBAAmD,GAAGA,CAAC;EAChEC,QAAQ;EACRC,QAAQ;EACRC,YAAY;AACZC,EAAAA,SAAAA;AACJ,CAAC,KAAK;AACF,EAAA,MAAMC,aAAa,GAAGC,UAAU,CAACR,wBAAwB,CAAC,CAAA;AAC1D,EAAA,MAAMS,cAAc,GAAGC,OAAO,CAAC,MAAM;AACjC,IAAA,MAAMC,OAAqB,GAAG;AAC1BN,MAAAA,YAAY,EAAE,EAAE;AAChB;AACZ;AACA;MACYO,OAAOA,CAAC,GAAGC,eAAe,EAAE;AACxB;AACAF,QAAAA,OAAO,CAACN,YAAY,CAACS,IAAI,CAAC,GAAGD,eAAe,CAAC,CAAA;AAE7C,QAAA,IAAIN,aAAa,EAAE;AACf;AACAA,UAAAA,aAAa,CAACK,OAAO,CAAC,GAAGC,eAAe,CAAC,CAAA;AACzC,UAAA,IAAIP,SAAS,EAAE;AACX;AACAC,YAAAA,aAAa,CAACK,OAAO,CAACN,SAAS,CAAC,CAAA;AACpC,WAAA;AACJ,SAAA;AACJ,OAAA;KACH,CAAA;AACD,IAAA,OAAOK,OAAO,CAAA;AAClB,GAAC,EAAE,CAACJ,aAAa,EAAED,SAAS,CAAC,CAAC,CAAA;AAE9BS,EAAAA,SAAS,CAAC,MAAM;IACZ,MAAM;AAAEC,MAAAA,OAAO,EAAEC,WAAAA;AAAY,KAAC,GAAGZ,YAAY,CAAA;IAC7C,IAAI,CAACY,WAAW,EAAE;AACd,MAAA,OAAA;AACJ,KAAA;AACAR,IAAAA,cAAc,CAACG,OAAO,CAAC,GAAGK,WAAW,CAAC,CAAA;AAC1C,GAAC,EAAE,CAACR,cAAc,EAAEJ,YAAY,CAAC,CAAC,CAAA;AAElCa,EAAAA,YAAY,CAAC;IAAEd,QAAQ;AAAEC,IAAAA,YAAY,EAAEc,MAAM,CAACV,cAAc,CAACJ,YAAY,CAAA;AAAE,GAAC,CAAC,CAAA;AAC7E,EAAA,oBAAOe,GAAA,CAACpB,wBAAwB,CAACqB,QAAQ,EAAA;AAACC,IAAAA,KAAK,EAAEb,cAAe;AAAAN,IAAAA,QAAA,EAAEA,QAAAA;AAAQ,GAAoC,CAAC,CAAA;AACnH,EAAC;AACDD,iBAAiB,CAACqB,WAAW,GAAG,mBAAmB;;;;"}
|
package/_internal/{Portal-3f86608e.js → packages/lumx-react/src/utils/Portal/Portal-9e38cfd0.js}
RENAMED
|
@@ -1,20 +1,8 @@
|
|
|
1
1
|
import React__default from 'react';
|
|
2
2
|
import { createPortal } from 'react-dom';
|
|
3
|
+
import { PortalContext } from './PortalProvider-883321fd.js';
|
|
3
4
|
import { jsx, Fragment } from 'react/jsx-runtime';
|
|
4
5
|
|
|
5
|
-
/**
|
|
6
|
-
* Portal initializing function.
|
|
7
|
-
* If it does not provide a container, the Portal children will render in classic React tree and not in a portal.
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
const PortalContext = /*#__PURE__*/React__default.createContext(() => ({
|
|
11
|
-
container: document.body
|
|
12
|
-
}));
|
|
13
|
-
/**
|
|
14
|
-
* Customize where <Portal> wrapped elements render (tooltip, popover, dialog, etc.)
|
|
15
|
-
*/
|
|
16
|
-
const PortalProvider = PortalContext.Provider;
|
|
17
|
-
|
|
18
6
|
/**
|
|
19
7
|
* Render children in a portal outside the current DOM position
|
|
20
8
|
* (defaults to `document.body` but can be customized with the PortalContextProvider)
|
|
@@ -41,5 +29,5 @@ const Portal = ({
|
|
|
41
29
|
return /*#__PURE__*/createPortal(children, context.container);
|
|
42
30
|
};
|
|
43
31
|
|
|
44
|
-
export { Portal
|
|
45
|
-
//# sourceMappingURL=Portal-
|
|
32
|
+
export { Portal };
|
|
33
|
+
//# sourceMappingURL=Portal-9e38cfd0.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Portal-9e38cfd0.js","sources":["../../../../../../../src/utils/Portal/Portal.tsx"],"sourcesContent":["import React from 'react';\nimport { createPortal } from 'react-dom';\nimport { PortalContext } from './PortalProvider';\n\nexport interface PortalProps {\n enabled?: boolean;\n children: React.ReactNode;\n}\n\n/**\n * Render children in a portal outside the current DOM position\n * (defaults to `document.body` but can be customized with the PortalContextProvider)\n */\nexport const Portal: React.FC<PortalProps> = ({ children, enabled = true }) => {\n const init = React.useContext(PortalContext);\n const context = React.useMemo(\n () => {\n return enabled ? init() : null;\n },\n // Only update on 'enabled'\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [enabled],\n );\n\n React.useLayoutEffect(() => {\n return context?.teardown;\n }, [context?.teardown, enabled]);\n\n if (!context?.container) {\n return <>{children}</>;\n }\n return createPortal(children, context.container);\n};\n"],"names":["Portal","children","enabled","init","React","useContext","PortalContext","context","useMemo","useLayoutEffect","teardown","container","_jsx","_Fragment","createPortal"],"mappings":";;;;;AASA;AACA;AACA;AACA;AACO,MAAMA,MAA6B,GAAGA,CAAC;EAAEC,QAAQ;AAAEC,EAAAA,OAAO,GAAG,IAAA;AAAK,CAAC,KAAK;AAC3E,EAAA,MAAMC,IAAI,GAAGC,cAAK,CAACC,UAAU,CAACC,aAAa,CAAC,CAAA;AAC5C,EAAA,MAAMC,OAAO,GAAGH,cAAK,CAACI,OAAO,CACzB,MAAM;AACF,IAAA,OAAON,OAAO,GAAGC,IAAI,EAAE,GAAG,IAAI,CAAA;GACjC;AACD;AACA;EACA,CAACD,OAAO,CACZ,CAAC,CAAA;EAEDE,cAAK,CAACK,eAAe,CAAC,MAAM;IACxB,OAAOF,OAAO,EAAEG,QAAQ,CAAA;GAC3B,EAAE,CAACH,OAAO,EAAEG,QAAQ,EAAER,OAAO,CAAC,CAAC,CAAA;AAEhC,EAAA,IAAI,CAACK,OAAO,EAAEI,SAAS,EAAE;IACrB,oBAAOC,GAAA,CAAAC,QAAA,EAAA;AAAAZ,MAAAA,QAAA,EAAGA,QAAAA;AAAQ,KAAG,CAAC,CAAA;AAC1B,GAAA;AACA,EAAA,oBAAOa,YAAY,CAACb,QAAQ,EAAEM,OAAO,CAACI,SAAS,CAAC,CAAA;AACpD;;;;"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React__default from 'react';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Portal initializing function.
|
|
5
|
+
* If it does not provide a container, the Portal children will render in classic React tree and not in a portal.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
const PortalContext = /*#__PURE__*/React__default.createContext(() => ({
|
|
9
|
+
container: document.body
|
|
10
|
+
}));
|
|
11
|
+
/**
|
|
12
|
+
* Customize where <Portal> wrapped elements render (tooltip, popover, dialog, etc.)
|
|
13
|
+
*/
|
|
14
|
+
const PortalProvider = PortalContext.Provider;
|
|
15
|
+
|
|
16
|
+
export { PortalContext, PortalProvider };
|
|
17
|
+
//# sourceMappingURL=PortalProvider-883321fd.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PortalProvider-883321fd.js","sources":["../../../../../../../src/utils/Portal/PortalProvider.tsx"],"sourcesContent":["import React from 'react';\n\ntype Container = DocumentFragment | Element;\n\n/**\n * Portal initializing function.\n * If it does not provide a container, the Portal children will render in classic React tree and not in a portal.\n */\nexport type PortalInit = () => {\n container?: Container;\n teardown?: () => void;\n};\n\nexport const PortalContext = React.createContext<PortalInit>(() => ({ container: document.body }));\n\nexport interface PortalProviderProps {\n children?: React.ReactNode;\n value: PortalInit;\n}\n\n/**\n * Customize where <Portal> wrapped elements render (tooltip, popover, dialog, etc.)\n */\nexport const PortalProvider: React.FC<PortalProviderProps> = PortalContext.Provider;\n"],"names":["PortalContext","React","createContext","container","document","body","PortalProvider","Provider"],"mappings":";;AAIA;AACA;AACA;AACA;;MAMaA,aAAa,gBAAGC,cAAK,CAACC,aAAa,CAAa,OAAO;EAAEC,SAAS,EAAEC,QAAQ,CAACC,IAAAA;AAAK,CAAC,CAAC,EAAC;AAOlG;AACA;AACA;AACaC,MAAAA,cAA6C,GAAGN,aAAa,CAACO;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"findImage-b977b471.js","sources":["../../../../../../../../src/utils/browser/DOM/findImage.tsx"],"sourcesContent":["/** Find image in element including the element */\nexport const findImage = (element: HTMLElement | null): HTMLImageElement | null =>\n element?.matches('img') ? (element as HTMLImageElement) : element?.querySelector('img') || null;\n"],"names":["findImage","element","matches","querySelector"],"mappings":"AAAA;AACO,MAAMA,SAAS,GAAIC,OAA2B,IACjDA,OAAO,EAAEC,OAAO,CAAC,KAAK,CAAC,GAAID,OAAO,GAAwBA,OAAO,EAAEE,aAAa,CAAC,KAAK,CAAC,IAAI;;;;"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import ReactDOM from 'react-dom';
|
|
2
|
+
import { unref } from '../../react/unref-bc393aec.js';
|
|
3
|
+
import { isReducedMotion } from '../isReducedMotion-aca1229c.js';
|
|
4
|
+
|
|
5
|
+
function setupViewTransitionName(elementRef, name) {
|
|
6
|
+
let originalName = null;
|
|
7
|
+
return {
|
|
8
|
+
set() {
|
|
9
|
+
const element = unref(elementRef);
|
|
10
|
+
if (!element) return;
|
|
11
|
+
originalName = element.style.viewTransitionName;
|
|
12
|
+
element.style.viewTransitionName = name;
|
|
13
|
+
},
|
|
14
|
+
unset() {
|
|
15
|
+
const element = unref(elementRef);
|
|
16
|
+
if (!element || originalName === null) return;
|
|
17
|
+
element.style.viewTransitionName = originalName;
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Wrapper around the `document.startViewTransition` handling browser incompatibilities, react DOM flush and
|
|
24
|
+
* user preference.
|
|
25
|
+
*
|
|
26
|
+
* @param changes callback containing the changes to apply within the view transition.
|
|
27
|
+
* @param setViewTransitionName set the `viewTransitionName` style on a `source` & `target` to morph these elements.
|
|
28
|
+
*/
|
|
29
|
+
async function startViewTransition({
|
|
30
|
+
changes,
|
|
31
|
+
viewTransitionName
|
|
32
|
+
}) {
|
|
33
|
+
const start = document?.startViewTransition?.bind(document);
|
|
34
|
+
const prefersReducedMotion = isReducedMotion();
|
|
35
|
+
const {
|
|
36
|
+
flushSync
|
|
37
|
+
} = ReactDOM;
|
|
38
|
+
if (prefersReducedMotion || !start || !flushSync || !viewTransitionName?.source || !viewTransitionName?.target) {
|
|
39
|
+
// Skip, apply changes without a transition
|
|
40
|
+
changes();
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
// Setup set/unset transition name on source & target
|
|
45
|
+
const sourceTransitionName = setupViewTransitionName(viewTransitionName.source, viewTransitionName.name);
|
|
46
|
+
const targetTransitionName = setupViewTransitionName(viewTransitionName.target, viewTransitionName.name);
|
|
47
|
+
sourceTransitionName.set();
|
|
48
|
+
|
|
49
|
+
// Start view transition, apply changes & flush to DOM
|
|
50
|
+
await start(() => {
|
|
51
|
+
sourceTransitionName.unset();
|
|
52
|
+
flushSync(changes);
|
|
53
|
+
targetTransitionName.set();
|
|
54
|
+
}).updateCallbackDone;
|
|
55
|
+
targetTransitionName.unset();
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
export { startViewTransition };
|
|
59
|
+
//# sourceMappingURL=startViewTransition-5cbc03c1.js.map
|
package/_internal/packages/lumx-react/src/utils/browser/DOM/startViewTransition-5cbc03c1.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"startViewTransition-5cbc03c1.js","sources":["../../../../../../../../src/utils/browser/DOM/startViewTransition.ts"],"sourcesContent":["import ReactDOM from 'react-dom';\n\nimport { MaybeElementOrRef } from '@lumx/react/utils/type';\n\nimport { unref } from '../../react/unref';\nimport { isReducedMotion } from '../isReducedMotion';\n\nfunction setupViewTransitionName(elementRef: MaybeElementOrRef<HTMLElement>, name: string) {\n let originalName: string | null = null;\n return {\n set() {\n const element = unref(elementRef);\n if (!element) return;\n originalName = element.style.viewTransitionName;\n element.style.viewTransitionName = name;\n },\n unset() {\n const element = unref(elementRef);\n if (!element || originalName === null) return;\n element.style.viewTransitionName = originalName;\n },\n };\n}\n\n/**\n * Wrapper around the `document.startViewTransition` handling browser incompatibilities, react DOM flush and\n * user preference.\n *\n * @param changes callback containing the changes to apply within the view transition.\n * @param setViewTransitionName set the `viewTransitionName` style on a `source` & `target` to morph these elements.\n */\nexport async function startViewTransition({\n changes,\n viewTransitionName,\n}: {\n changes: () => void;\n viewTransitionName: {\n source: MaybeElementOrRef<HTMLElement>;\n target: MaybeElementOrRef<HTMLElement>;\n name: string;\n };\n}) {\n const start = (document as any)?.startViewTransition?.bind(document);\n const prefersReducedMotion = isReducedMotion();\n const { flushSync } = ReactDOM as any;\n if (prefersReducedMotion || !start || !flushSync || !viewTransitionName?.source || !viewTransitionName?.target) {\n // Skip, apply changes without a transition\n changes();\n return;\n }\n\n // Setup set/unset transition name on source & target\n const sourceTransitionName = setupViewTransitionName(viewTransitionName.source, viewTransitionName.name);\n const targetTransitionName = setupViewTransitionName(viewTransitionName.target, viewTransitionName.name);\n\n sourceTransitionName.set();\n\n // Start view transition, apply changes & flush to DOM\n await start(() => {\n sourceTransitionName.unset();\n\n flushSync(changes);\n\n targetTransitionName.set();\n }).updateCallbackDone;\n\n targetTransitionName.unset();\n}\n"],"names":["setupViewTransitionName","elementRef","name","originalName","set","element","unref","style","viewTransitionName","unset","startViewTransition","changes","start","document","bind","prefersReducedMotion","isReducedMotion","flushSync","ReactDOM","source","target","sourceTransitionName","targetTransitionName","updateCallbackDone"],"mappings":";;;;AAOA,SAASA,uBAAuBA,CAACC,UAA0C,EAAEC,IAAY,EAAE;EACvF,IAAIC,YAA2B,GAAG,IAAI,CAAA;EACtC,OAAO;AACHC,IAAAA,GAAGA,GAAG;AACF,MAAA,MAAMC,OAAO,GAAGC,KAAK,CAACL,UAAU,CAAC,CAAA;MACjC,IAAI,CAACI,OAAO,EAAE,OAAA;AACdF,MAAAA,YAAY,GAAGE,OAAO,CAACE,KAAK,CAACC,kBAAkB,CAAA;AAC/CH,MAAAA,OAAO,CAACE,KAAK,CAACC,kBAAkB,GAAGN,IAAI,CAAA;KAC1C;AACDO,IAAAA,KAAKA,GAAG;AACJ,MAAA,MAAMJ,OAAO,GAAGC,KAAK,CAACL,UAAU,CAAC,CAAA;AACjC,MAAA,IAAI,CAACI,OAAO,IAAIF,YAAY,KAAK,IAAI,EAAE,OAAA;AACvCE,MAAAA,OAAO,CAACE,KAAK,CAACC,kBAAkB,GAAGL,YAAY,CAAA;AACnD,KAAA;GACH,CAAA;AACL,CAAA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,eAAeO,mBAAmBA,CAAC;EACtCC,OAAO;AACPH,EAAAA,kBAAAA;AAQJ,CAAC,EAAE;EACC,MAAMI,KAAK,GAAIC,QAAQ,EAAUH,mBAAmB,EAAEI,IAAI,CAACD,QAAQ,CAAC,CAAA;AACpE,EAAA,MAAME,oBAAoB,GAAGC,eAAe,EAAE,CAAA;EAC9C,MAAM;AAAEC,IAAAA,SAAAA;AAAU,GAAC,GAAGC,QAAe,CAAA;AACrC,EAAA,IAAIH,oBAAoB,IAAI,CAACH,KAAK,IAAI,CAACK,SAAS,IAAI,CAACT,kBAAkB,EAAEW,MAAM,IAAI,CAACX,kBAAkB,EAAEY,MAAM,EAAE;AAC5G;AACAT,IAAAA,OAAO,EAAE,CAAA;AACT,IAAA,OAAA;AACJ,GAAA;;AAEA;EACA,MAAMU,oBAAoB,GAAGrB,uBAAuB,CAACQ,kBAAkB,CAACW,MAAM,EAAEX,kBAAkB,CAACN,IAAI,CAAC,CAAA;EACxG,MAAMoB,oBAAoB,GAAGtB,uBAAuB,CAACQ,kBAAkB,CAACY,MAAM,EAAEZ,kBAAkB,CAACN,IAAI,CAAC,CAAA;EAExGmB,oBAAoB,CAACjB,GAAG,EAAE,CAAA;;AAE1B;EACA,MAAMQ,KAAK,CAAC,MAAM;IACdS,oBAAoB,CAACZ,KAAK,EAAE,CAAA;IAE5BQ,SAAS,CAACN,OAAO,CAAC,CAAA;IAElBW,oBAAoB,CAAClB,GAAG,EAAE,CAAA;GAC7B,CAAC,CAACmB,kBAAkB,CAAA;EAErBD,oBAAoB,CAACb,KAAK,EAAE,CAAA;AAChC;;;;"}
|
|
@@ -4,10 +4,5 @@ const TABBABLE_ELEMENTS_SELECTOR = 'a[href], button, textarea, input:not([type="
|
|
|
4
4
|
/** CSS selector matching element that are disabled (should not receive focus). */
|
|
5
5
|
const DISABLED_SELECTOR = '[hidden], [tabindex="-1"], [disabled]:not([disabled="false"]), [aria-disabled]:not([aria-disabled="false"])';
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
return Array.from(element.querySelectorAll(TABBABLE_ELEMENTS_SELECTOR)).filter(isNotDisabled);
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export { getFocusableElements as g };
|
|
13
|
-
//# sourceMappingURL=getFocusableElements-230173a8.js.map
|
|
7
|
+
export { DISABLED_SELECTOR, TABBABLE_ELEMENTS_SELECTOR };
|
|
8
|
+
//# sourceMappingURL=constants-c0a6dba6.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants-c0a6dba6.js","sources":["../../../../../../../../src/utils/browser/focus/constants.ts"],"sourcesContent":["/** CSS selector listing all tabbable elements. */\nexport const TABBABLE_ELEMENTS_SELECTOR =\n 'a[href], button, textarea, input:not([type=\"hidden\"]):not([hidden]), [tabindex]';\n\n/** CSS selector matching element that are disabled (should not receive focus). */\nexport const DISABLED_SELECTOR =\n '[hidden], [tabindex=\"-1\"], [disabled]:not([disabled=\"false\"]), [aria-disabled]:not([aria-disabled=\"false\"])';\n"],"names":["TABBABLE_ELEMENTS_SELECTOR","DISABLED_SELECTOR"],"mappings":"AAAA;AACO,MAAMA,0BAA0B,GACnC,kFAAiF;;AAErF;AACO,MAAMC,iBAAiB,GAC1B;;;;"}
|
package/_internal/packages/lumx-react/src/utils/browser/focus/getFirstAndLastFocusable-394b48f4.js
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { getFocusableElements } from './getFocusableElements-14bf3ce5.js';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Get first and last elements focusable in an element.
|
|
5
|
+
*
|
|
6
|
+
* @param parentElement The element in which to search focusable elements.
|
|
7
|
+
* @return first and last focusable elements
|
|
8
|
+
*/
|
|
9
|
+
function getFirstAndLastFocusable(parentElement) {
|
|
10
|
+
const focusableElements = getFocusableElements(parentElement);
|
|
11
|
+
|
|
12
|
+
// First non disabled element.
|
|
13
|
+
const first = focusableElements[0];
|
|
14
|
+
// Last non disabled element.
|
|
15
|
+
const last = focusableElements[focusableElements.length - 1];
|
|
16
|
+
if (last && first) {
|
|
17
|
+
return {
|
|
18
|
+
first,
|
|
19
|
+
last
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
return {};
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export { getFirstAndLastFocusable };
|
|
26
|
+
//# sourceMappingURL=getFirstAndLastFocusable-394b48f4.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getFirstAndLastFocusable-394b48f4.js","sources":["../../../../../../../../src/utils/browser/focus/getFirstAndLastFocusable.ts"],"sourcesContent":["import { getFocusableElements } from './getFocusableElements';\n\n/**\n * Get first and last elements focusable in an element.\n *\n * @param parentElement The element in which to search focusable elements.\n * @return first and last focusable elements\n */\nexport function getFirstAndLastFocusable(parentElement: HTMLElement | ShadowRoot) {\n const focusableElements = getFocusableElements(parentElement);\n\n // First non disabled element.\n const first = focusableElements[0];\n // Last non disabled element.\n const last = focusableElements[focusableElements.length - 1];\n\n if (last && first) {\n return { first, last };\n }\n return {};\n}\n"],"names":["getFirstAndLastFocusable","parentElement","focusableElements","getFocusableElements","first","last","length"],"mappings":";;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,wBAAwBA,CAACC,aAAuC,EAAE;AAC9E,EAAA,MAAMC,iBAAiB,GAAGC,oBAAoB,CAACF,aAAa,CAAC,CAAA;;AAE7D;AACA,EAAA,MAAMG,KAAK,GAAGF,iBAAiB,CAAC,CAAC,CAAC,CAAA;AAClC;EACA,MAAMG,IAAI,GAAGH,iBAAiB,CAACA,iBAAiB,CAACI,MAAM,GAAG,CAAC,CAAC,CAAA;EAE5D,IAAID,IAAI,IAAID,KAAK,EAAE;IACf,OAAO;MAAEA,KAAK;AAAEC,MAAAA,IAAAA;KAAM,CAAA;AAC1B,GAAA;AACA,EAAA,OAAO,EAAE,CAAA;AACb;;;;"}
|
package/_internal/packages/lumx-react/src/utils/browser/focus/getFocusableElements-14bf3ce5.js
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { TABBABLE_ELEMENTS_SELECTOR, DISABLED_SELECTOR } from './constants-c0a6dba6.js';
|
|
2
|
+
|
|
3
|
+
const isNotDisabled = element => !element.matches(DISABLED_SELECTOR);
|
|
4
|
+
function getFocusableElements(element) {
|
|
5
|
+
return Array.from(element.querySelectorAll(TABBABLE_ELEMENTS_SELECTOR)).filter(isNotDisabled);
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export { getFocusableElements };
|
|
9
|
+
//# sourceMappingURL=getFocusableElements-14bf3ce5.js.map
|
package/_internal/packages/lumx-react/src/utils/browser/focus/getFocusableElements-14bf3ce5.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getFocusableElements-14bf3ce5.js","sources":["../../../../../../../../src/utils/browser/focus/getFocusableElements.ts"],"sourcesContent":["import { DISABLED_SELECTOR, TABBABLE_ELEMENTS_SELECTOR } from './constants';\n\nconst isNotDisabled = (element: HTMLElement) => !element.matches(DISABLED_SELECTOR);\n\nexport function getFocusableElements(element: HTMLElement | ShadowRoot): HTMLElement[] {\n return Array.from(element.querySelectorAll<HTMLElement>(TABBABLE_ELEMENTS_SELECTOR)).filter(isNotDisabled);\n}\n"],"names":["isNotDisabled","element","matches","DISABLED_SELECTOR","getFocusableElements","Array","from","querySelectorAll","TABBABLE_ELEMENTS_SELECTOR","filter"],"mappings":";;AAEA,MAAMA,aAAa,GAAIC,OAAoB,IAAK,CAACA,OAAO,CAACC,OAAO,CAACC,iBAAiB,CAAC,CAAA;AAE5E,SAASC,oBAAoBA,CAACH,OAAiC,EAAiB;AACnF,EAAA,OAAOI,KAAK,CAACC,IAAI,CAACL,OAAO,CAACM,gBAAgB,CAAcC,0BAA0B,CAAC,CAAC,CAACC,MAAM,CAACT,aAAa,CAAC,CAAA;AAC9G;;;;"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** Check if the focus is visible on the given element */
|
|
2
|
+
const isFocusVisible = element => {
|
|
3
|
+
try {
|
|
4
|
+
return element?.matches?.(':focus-visible, [data-focus-visible-added]');
|
|
5
|
+
} catch (_ignored) {
|
|
6
|
+
// Can fail on non browser env
|
|
7
|
+
return true;
|
|
8
|
+
}
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
export { isFocusVisible };
|
|
12
|
+
//# sourceMappingURL=isFocusVisible-5745f198.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isFocusVisible-5745f198.js","sources":["../../../../../../../src/utils/browser/isFocusVisible.ts"],"sourcesContent":["/** Check if the focus is visible on the given element */\nexport const isFocusVisible = (element?: HTMLElement) => {\n try {\n return element?.matches?.(':focus-visible, [data-focus-visible-added]');\n } catch (_ignored) {\n // Can fail on non browser env\n return true;\n }\n};\n"],"names":["isFocusVisible","element","matches","_ignored"],"mappings":"AAAA;AACaA,MAAAA,cAAc,GAAIC,OAAqB,IAAK;EACrD,IAAI;AACA,IAAA,OAAOA,OAAO,EAAEC,OAAO,GAAG,4CAA4C,CAAC,CAAA;GAC1E,CAAC,OAAOC,QAAQ,EAAE;AACf;AACA,IAAA,OAAO,IAAI,CAAA;AACf,GAAA;AACJ;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isHoverNotSupported-1ff933af.js","sources":["../../../../../../../src/utils/browser/isHoverNotSupported.ts"],"sourcesContent":["/** Return true if the browser does not support pointer hover */\nexport const isHoverNotSupported = (): boolean => !!window.matchMedia?.('(hover: none)').matches;\n"],"names":["isHoverNotSupported","window","matchMedia","matches"],"mappings":"AAAA;AACaA,MAAAA,mBAAmB,GAAGA,MAAe,CAAC,CAACC,MAAM,CAACC,UAAU,GAAG,eAAe,CAAC,CAACC;;;;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { WINDOW } from '../../constants-6af61e2f.js';
|
|
2
|
+
|
|
3
|
+
/** Check if user prefers reduced motion */
|
|
4
|
+
function isReducedMotion() {
|
|
5
|
+
return WINDOW?.matchMedia?.('(prefers-reduced-motion: reduce)').matches;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export { isReducedMotion };
|
|
9
|
+
//# sourceMappingURL=isReducedMotion-aca1229c.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isReducedMotion-aca1229c.js","sources":["../../../../../../../src/utils/browser/isReducedMotion.ts"],"sourcesContent":["import { WINDOW } from '@lumx/react/constants';\n\n/** Check if user prefers reduced motion */\nexport function isReducedMotion() {\n return WINDOW?.matchMedia?.('(prefers-reduced-motion: reduce)').matches;\n}\n"],"names":["isReducedMotion","WINDOW","matchMedia","matches"],"mappings":";;AAEA;AACO,SAASA,eAAeA,GAAG;AAC9B,EAAA,OAAOC,MAAM,EAAEC,UAAU,GAAG,kCAAkC,CAAC,CAACC,OAAO,CAAA;AAC3E;;;;"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Add a number of months from a date while resetting the day to prevent month length mismatches.
|
|
3
|
+
*/
|
|
4
|
+
function addMonthResetDay(date, monthOffset) {
|
|
5
|
+
const newDate = new Date(date.getTime());
|
|
6
|
+
newDate.setDate(1);
|
|
7
|
+
newDate.setMonth(date.getMonth() + monthOffset);
|
|
8
|
+
return newDate;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export { addMonthResetDay };
|
|
12
|
+
//# sourceMappingURL=addMonthResetDay-e429bd82.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addMonthResetDay-e429bd82.js","sources":["../../../../../../../src/utils/date/addMonthResetDay.ts"],"sourcesContent":["/**\n * Add a number of months from a date while resetting the day to prevent month length mismatches.\n */\nexport function addMonthResetDay(date: Date, monthOffset: number) {\n const newDate = new Date(date.getTime());\n newDate.setDate(1);\n newDate.setMonth(date.getMonth() + monthOffset);\n return newDate;\n}\n"],"names":["addMonthResetDay","date","monthOffset","newDate","Date","getTime","setDate","setMonth","getMonth"],"mappings":"AAAA;AACA;AACA;AACO,SAASA,gBAAgBA,CAACC,IAAU,EAAEC,WAAmB,EAAE;EAC9D,MAAMC,OAAO,GAAG,IAAIC,IAAI,CAACH,IAAI,CAACI,OAAO,EAAE,CAAC,CAAA;AACxCF,EAAAA,OAAO,CAACG,OAAO,CAAC,CAAC,CAAC,CAAA;EAClBH,OAAO,CAACI,QAAQ,CAACN,IAAI,CAACO,QAAQ,EAAE,GAAGN,WAAW,CAAC,CAAA;AAC/C,EAAA,OAAOC,OAAO,CAAA;AAClB;;;;"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
function formatDayNumber(locale, date) {
|
|
2
|
+
const formattedDate = date.toLocaleDateString(locale, {
|
|
3
|
+
day: 'numeric'
|
|
4
|
+
});
|
|
5
|
+
if (formattedDate.match(/\d/)) return formattedDate.replace(/\D*(\d+)\D*/g, '$1');
|
|
6
|
+
return formattedDate;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export { formatDayNumber };
|
|
10
|
+
//# sourceMappingURL=formatDayNumber-db88500d.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatDayNumber-db88500d.js","sources":["../../../../../../../src/utils/date/formatDayNumber.ts"],"sourcesContent":["export function formatDayNumber(locale: string, date: Date): string {\n const formattedDate = date.toLocaleDateString(locale, { day: 'numeric' });\n if (formattedDate.match(/\\d/)) return formattedDate.replace(/\\D*(\\d+)\\D*/g, '$1');\n return formattedDate;\n}\n"],"names":["formatDayNumber","locale","date","formattedDate","toLocaleDateString","day","match","replace"],"mappings":"AAAO,SAASA,eAAeA,CAACC,MAAc,EAAEC,IAAU,EAAU;AAChE,EAAA,MAAMC,aAAa,GAAGD,IAAI,CAACE,kBAAkB,CAACH,MAAM,EAAE;AAAEI,IAAAA,GAAG,EAAE,SAAA;AAAU,GAAC,CAAC,CAAA;AACzE,EAAA,IAAIF,aAAa,CAACG,KAAK,CAAC,IAAI,CAAC,EAAE,OAAOH,aAAa,CAACI,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,CAAA;AACjF,EAAA,OAAOJ,aAAa,CAAA;AACxB;;;;"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/** Get first day of week for locale from the browser API */
|
|
2
|
+
const getFromBrowser = locale => {
|
|
3
|
+
try {
|
|
4
|
+
const localeMetadata = new Intl.Locale(locale.code);
|
|
5
|
+
const {
|
|
6
|
+
firstDay
|
|
7
|
+
} = localeMetadata.getWeekInfo?.() || localeMetadata.weekInfo;
|
|
8
|
+
// Sunday is represented as `0` in Date.getDay()
|
|
9
|
+
if (firstDay === 7) return 0;
|
|
10
|
+
return firstDay;
|
|
11
|
+
} catch (e) {
|
|
12
|
+
return undefined;
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
/** List first day for each locale (could be removed when all browser implement Locale weekInfo) */
|
|
17
|
+
const FIRST_DAY_FOR_LOCALES = [{
|
|
18
|
+
// Locales with Sunday as the first day of the week
|
|
19
|
+
localeRX: /^(af|ar-(dz|eg|sa)|bn|cy|en-(ca|us|za)|fr-ca|gd|he|hi|ja|km|ko|pt-br|te|th|ug|zh-hk)$/i,
|
|
20
|
+
firstDay: 0
|
|
21
|
+
}, {
|
|
22
|
+
// Locales with Monday as the first day of the week
|
|
23
|
+
localeRX: /^(ar-(ma|tn)|az|be|bg|bs|ca|cs|da|de|el|en-(au|gb|ie|in|nz)|eo|es|et|eu|fi|fr|fy|gl|gu|hr|ht|hu|hy|id|is|it|ka|kk|kn|lb|lt|lv|mk|mn|ms|mt|nb|nl|nn|oc|pl|pt|ro|ru|sk|sl|sq|sr|sv|ta|tr|uk|uz|vi|zh-(cn|tw))$/i,
|
|
24
|
+
firstDay: 1
|
|
25
|
+
}, {
|
|
26
|
+
// Locales with Saturday as the first day of the week
|
|
27
|
+
localeRX: /^(ar|fa-ir)$/i,
|
|
28
|
+
firstDay: 6
|
|
29
|
+
}];
|
|
30
|
+
|
|
31
|
+
/** Find first day of week for locale from the constant */
|
|
32
|
+
const getFromConstant = (locale, searchBy = 'code') => {
|
|
33
|
+
// Search for locale (lang + region)
|
|
34
|
+
for (const {
|
|
35
|
+
localeRX,
|
|
36
|
+
firstDay
|
|
37
|
+
} of FIRST_DAY_FOR_LOCALES) {
|
|
38
|
+
if (localeRX.test(locale[searchBy])) return firstDay;
|
|
39
|
+
}
|
|
40
|
+
// Fallback search for locale lang
|
|
41
|
+
if (locale.code !== locale.language) {
|
|
42
|
+
return getFromConstant(locale, 'language');
|
|
43
|
+
}
|
|
44
|
+
return undefined;
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Get first day of the week for the given locale code (language + region).
|
|
49
|
+
*/
|
|
50
|
+
const getFirstDayOfWeek = locale => {
|
|
51
|
+
// Get from browser API
|
|
52
|
+
const firstDay = getFromBrowser(locale);
|
|
53
|
+
if (firstDay !== undefined) return firstDay;
|
|
54
|
+
|
|
55
|
+
// Get from constant
|
|
56
|
+
return getFromConstant(locale);
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
export { getFirstDayOfWeek, getFromBrowser };
|
|
60
|
+
//# sourceMappingURL=getFirstDayOfWeek-b0780b33.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getFirstDayOfWeek-b0780b33.js","sources":["../../../../../../../src/utils/date/getFirstDayOfWeek.ts"],"sourcesContent":["import { Locale } from '@lumx/react/utils/locale/types';\n\n/** Get first day of week for locale from the browser API */\nexport const getFromBrowser = (locale: Locale): number | undefined => {\n try {\n const localeMetadata = new Intl.Locale(locale.code) as any;\n const { firstDay } = localeMetadata.getWeekInfo?.() || localeMetadata.weekInfo;\n // Sunday is represented as `0` in Date.getDay()\n if (firstDay === 7) return 0;\n return firstDay;\n } catch (e) {\n return undefined;\n }\n};\n\n/** List first day for each locale (could be removed when all browser implement Locale weekInfo) */\nconst FIRST_DAY_FOR_LOCALES = [\n {\n // Locales with Sunday as the first day of the week\n localeRX: /^(af|ar-(dz|eg|sa)|bn|cy|en-(ca|us|za)|fr-ca|gd|he|hi|ja|km|ko|pt-br|te|th|ug|zh-hk)$/i,\n firstDay: 0,\n },\n {\n // Locales with Monday as the first day of the week\n localeRX:\n /^(ar-(ma|tn)|az|be|bg|bs|ca|cs|da|de|el|en-(au|gb|ie|in|nz)|eo|es|et|eu|fi|fr|fy|gl|gu|hr|ht|hu|hy|id|is|it|ka|kk|kn|lb|lt|lv|mk|mn|ms|mt|nb|nl|nn|oc|pl|pt|ro|ru|sk|sl|sq|sr|sv|ta|tr|uk|uz|vi|zh-(cn|tw))$/i,\n firstDay: 1,\n },\n {\n // Locales with Saturday as the first day of the week\n localeRX: /^(ar|fa-ir)$/i,\n firstDay: 6,\n },\n];\n\n/** Find first day of week for locale from the constant */\nconst getFromConstant = (locale: Locale, searchBy: keyof Locale = 'code'): number | undefined => {\n // Search for locale (lang + region)\n for (const { localeRX, firstDay } of FIRST_DAY_FOR_LOCALES) {\n if (localeRX.test(locale[searchBy] as string)) return firstDay;\n }\n // Fallback search for locale lang\n if (locale.code !== locale.language) {\n return getFromConstant(locale, 'language');\n }\n return undefined;\n};\n\n/**\n * Get first day of the week for the given locale code (language + region).\n */\nexport const getFirstDayOfWeek = (locale: Locale): number | undefined => {\n // Get from browser API\n const firstDay = getFromBrowser(locale);\n if (firstDay !== undefined) return firstDay;\n\n // Get from constant\n return getFromConstant(locale);\n};\n"],"names":["getFromBrowser","locale","localeMetadata","Intl","Locale","code","firstDay","getWeekInfo","weekInfo","e","undefined","FIRST_DAY_FOR_LOCALES","localeRX","getFromConstant","searchBy","test","language","getFirstDayOfWeek"],"mappings":"AAEA;AACaA,MAAAA,cAAc,GAAIC,MAAc,IAAyB;EAClE,IAAI;IACA,MAAMC,cAAc,GAAG,IAAIC,IAAI,CAACC,MAAM,CAACH,MAAM,CAACI,IAAI,CAAQ,CAAA;IAC1D,MAAM;AAAEC,MAAAA,QAAAA;KAAU,GAAGJ,cAAc,CAACK,WAAW,IAAI,IAAIL,cAAc,CAACM,QAAQ,CAAA;AAC9E;AACA,IAAA,IAAIF,QAAQ,KAAK,CAAC,EAAE,OAAO,CAAC,CAAA;AAC5B,IAAA,OAAOA,QAAQ,CAAA;GAClB,CAAC,OAAOG,CAAC,EAAE;AACR,IAAA,OAAOC,SAAS,CAAA;AACpB,GAAA;AACJ,EAAC;;AAED;AACA,MAAMC,qBAAqB,GAAG,CAC1B;AACI;AACAC,EAAAA,QAAQ,EAAE,wFAAwF;AAClGN,EAAAA,QAAQ,EAAE,CAAA;AACd,CAAC,EACD;AACI;AACAM,EAAAA,QAAQ,EACJ,+MAA+M;AACnNN,EAAAA,QAAQ,EAAE,CAAA;AACd,CAAC,EACD;AACI;AACAM,EAAAA,QAAQ,EAAE,eAAe;AACzBN,EAAAA,QAAQ,EAAE,CAAA;AACd,CAAC,CACJ,CAAA;;AAED;AACA,MAAMO,eAAe,GAAGA,CAACZ,MAAc,EAAEa,QAAsB,GAAG,MAAM,KAAyB;AAC7F;AACA,EAAA,KAAK,MAAM;IAAEF,QAAQ;AAAEN,IAAAA,QAAAA;GAAU,IAAIK,qBAAqB,EAAE;IACxD,IAAIC,QAAQ,CAACG,IAAI,CAACd,MAAM,CAACa,QAAQ,CAAW,CAAC,EAAE,OAAOR,QAAQ,CAAA;AAClE,GAAA;AACA;AACA,EAAA,IAAIL,MAAM,CAACI,IAAI,KAAKJ,MAAM,CAACe,QAAQ,EAAE;AACjC,IAAA,OAAOH,eAAe,CAACZ,MAAM,EAAE,UAAU,CAAC,CAAA;AAC9C,GAAA;AACA,EAAA,OAAOS,SAAS,CAAA;AACpB,CAAC,CAAA;;AAED;AACA;AACA;AACaO,MAAAA,iBAAiB,GAAIhB,MAAc,IAAyB;AACrE;AACA,EAAA,MAAMK,QAAQ,GAAGN,cAAc,CAACC,MAAM,CAAC,CAAA;AACvC,EAAA,IAAIK,QAAQ,KAAKI,SAAS,EAAE,OAAOJ,QAAQ,CAAA;;AAE3C;EACA,OAAOO,eAAe,CAACZ,MAAM,CAAC,CAAA;AAClC;;;;"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import last from 'lodash/last';
|
|
2
|
+
import { getWeekDays } from './getWeekDays-b4620c07.js';
|
|
3
|
+
|
|
4
|
+
/** Up to 6 rows can appear in a month calendar => 4 weeks + 1 start of month partial week + 1 send of month partial week */
|
|
5
|
+
const MONTH_ROW_COUNT = 6;
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Get month calendar.
|
|
9
|
+
* A list of weeks with days indexed by week day number
|
|
10
|
+
*/
|
|
11
|
+
const getMonthCalendar = (locale, referenceDate = new Date(), rangeMinDate, rangeMaxDate) => {
|
|
12
|
+
const month = referenceDate.getMonth();
|
|
13
|
+
const iterDate = new Date(referenceDate);
|
|
14
|
+
iterDate.setDate(1);
|
|
15
|
+
const minDate = rangeMinDate && new Date(rangeMinDate);
|
|
16
|
+
const maxDate = rangeMaxDate && new Date(rangeMaxDate);
|
|
17
|
+
// Reset time to compare dates only.
|
|
18
|
+
iterDate.setUTCHours(0, 0, 0, 0);
|
|
19
|
+
minDate?.setUTCHours(0, 0, 0, 0);
|
|
20
|
+
maxDate?.setUTCHours(0, 0, 0, 0);
|
|
21
|
+
const weekDays = getWeekDays(locale);
|
|
22
|
+
const lastDayOfWeek = last(weekDays);
|
|
23
|
+
const weeks = [];
|
|
24
|
+
let week = {};
|
|
25
|
+
let rowCount = 0;
|
|
26
|
+
while (rowCount < MONTH_ROW_COUNT) {
|
|
27
|
+
const weekDayNumber = iterDate.getDay();
|
|
28
|
+
const day = {
|
|
29
|
+
date: new Date(iterDate.getTime())
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
// If a range is specified, check if the day is out of range.
|
|
33
|
+
// min and max date are included within the valid range.
|
|
34
|
+
if (minDate && iterDate < minDate || maxDate && iterDate > maxDate) {
|
|
35
|
+
day.isOutOfRange = true;
|
|
36
|
+
}
|
|
37
|
+
if (iterDate.getMonth() === month) {
|
|
38
|
+
week[weekDayNumber] = day;
|
|
39
|
+
}
|
|
40
|
+
if (weekDayNumber === lastDayOfWeek.number) {
|
|
41
|
+
weeks.push(week);
|
|
42
|
+
rowCount += 1;
|
|
43
|
+
week = {};
|
|
44
|
+
}
|
|
45
|
+
iterDate.setDate(iterDate.getDate() + 1);
|
|
46
|
+
}
|
|
47
|
+
if (Object.keys(week).length) weeks.push(week);
|
|
48
|
+
return {
|
|
49
|
+
weeks,
|
|
50
|
+
weekDays
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
export { getMonthCalendar };
|
|
55
|
+
//# sourceMappingURL=getMonthCalendar-f0443cdb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getMonthCalendar-f0443cdb.js","sources":["../../../../../../../src/utils/date/getMonthCalendar.ts"],"sourcesContent":["import last from 'lodash/last';\n\nimport { getWeekDays, WeekDayInfo } from '@lumx/react/utils/date/getWeekDays';\nimport { Locale } from '@lumx/react/utils/locale/types';\n\ntype AnnotatedDay = { date: Date; isOutOfRange?: boolean };\ntype AnnotatedWeek = Partial<Record<number, AnnotatedDay>>;\n\ninterface MonthCalendar {\n weekDays: Array<WeekDayInfo>;\n weeks: Array<AnnotatedWeek>;\n}\n\n/** Up to 6 rows can appear in a month calendar => 4 weeks + 1 start of month partial week + 1 send of month partial week */\nconst MONTH_ROW_COUNT = 6;\n\n/**\n * Get month calendar.\n * A list of weeks with days indexed by week day number\n */\nexport const getMonthCalendar = (\n locale: Locale,\n referenceDate = new Date(),\n rangeMinDate?: Date,\n rangeMaxDate?: Date,\n): MonthCalendar => {\n const month = referenceDate.getMonth();\n const iterDate = new Date(referenceDate);\n iterDate.setDate(1);\n\n const minDate = rangeMinDate && new Date(rangeMinDate);\n const maxDate = rangeMaxDate && new Date(rangeMaxDate);\n // Reset time to compare dates only.\n iterDate.setUTCHours(0, 0, 0, 0);\n minDate?.setUTCHours(0, 0, 0, 0);\n maxDate?.setUTCHours(0, 0, 0, 0);\n\n const weekDays = getWeekDays(locale);\n const lastDayOfWeek = last(weekDays) as WeekDayInfo;\n\n const weeks: Array<AnnotatedWeek> = [];\n let week: AnnotatedWeek = {};\n let rowCount = 0;\n\n while (rowCount < MONTH_ROW_COUNT) {\n const weekDayNumber = iterDate.getDay();\n const day: AnnotatedDay = { date: new Date(iterDate.getTime()) };\n\n // If a range is specified, check if the day is out of range.\n // min and max date are included within the valid range.\n if ((minDate && iterDate < minDate) || (maxDate && iterDate > maxDate)) {\n day.isOutOfRange = true;\n }\n\n if (iterDate.getMonth() === month) {\n week[weekDayNumber] = day;\n }\n\n if (weekDayNumber === lastDayOfWeek.number) {\n weeks.push(week);\n rowCount += 1;\n week = {};\n }\n iterDate.setDate(iterDate.getDate() + 1);\n }\n if (Object.keys(week).length) weeks.push(week);\n\n return { weeks, weekDays };\n};\n"],"names":["MONTH_ROW_COUNT","getMonthCalendar","locale","referenceDate","Date","rangeMinDate","rangeMaxDate","month","getMonth","iterDate","setDate","minDate","maxDate","setUTCHours","weekDays","getWeekDays","lastDayOfWeek","last","weeks","week","rowCount","weekDayNumber","getDay","day","date","getTime","isOutOfRange","number","push","getDate","Object","keys","length"],"mappings":";;;AAaA;AACA,MAAMA,eAAe,GAAG,CAAC,CAAA;;AAEzB;AACA;AACA;AACA;MACaC,gBAAgB,GAAGA,CAC5BC,MAAc,EACdC,aAAa,GAAG,IAAIC,IAAI,EAAE,EAC1BC,YAAmB,EACnBC,YAAmB,KACH;AAChB,EAAA,MAAMC,KAAK,GAAGJ,aAAa,CAACK,QAAQ,EAAE,CAAA;AACtC,EAAA,MAAMC,QAAQ,GAAG,IAAIL,IAAI,CAACD,aAAa,CAAC,CAAA;AACxCM,EAAAA,QAAQ,CAACC,OAAO,CAAC,CAAC,CAAC,CAAA;EAEnB,MAAMC,OAAO,GAAGN,YAAY,IAAI,IAAID,IAAI,CAACC,YAAY,CAAC,CAAA;EACtD,MAAMO,OAAO,GAAGN,YAAY,IAAI,IAAIF,IAAI,CAACE,YAAY,CAAC,CAAA;AACtD;EACAG,QAAQ,CAACI,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;EAChCF,OAAO,EAAEE,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;EAChCD,OAAO,EAAEC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;AAEhC,EAAA,MAAMC,QAAQ,GAAGC,WAAW,CAACb,MAAM,CAAC,CAAA;AACpC,EAAA,MAAMc,aAAa,GAAGC,IAAI,CAACH,QAAQ,CAAgB,CAAA;EAEnD,MAAMI,KAA2B,GAAG,EAAE,CAAA;EACtC,IAAIC,IAAmB,GAAG,EAAE,CAAA;EAC5B,IAAIC,QAAQ,GAAG,CAAC,CAAA;EAEhB,OAAOA,QAAQ,GAAGpB,eAAe,EAAE;AAC/B,IAAA,MAAMqB,aAAa,GAAGZ,QAAQ,CAACa,MAAM,EAAE,CAAA;AACvC,IAAA,MAAMC,GAAiB,GAAG;MAAEC,IAAI,EAAE,IAAIpB,IAAI,CAACK,QAAQ,CAACgB,OAAO,EAAE,CAAA;KAAG,CAAA;;AAEhE;AACA;IACA,IAAKd,OAAO,IAAIF,QAAQ,GAAGE,OAAO,IAAMC,OAAO,IAAIH,QAAQ,GAAGG,OAAQ,EAAE;MACpEW,GAAG,CAACG,YAAY,GAAG,IAAI,CAAA;AAC3B,KAAA;AAEA,IAAA,IAAIjB,QAAQ,CAACD,QAAQ,EAAE,KAAKD,KAAK,EAAE;AAC/BY,MAAAA,IAAI,CAACE,aAAa,CAAC,GAAGE,GAAG,CAAA;AAC7B,KAAA;AAEA,IAAA,IAAIF,aAAa,KAAKL,aAAa,CAACW,MAAM,EAAE;AACxCT,MAAAA,KAAK,CAACU,IAAI,CAACT,IAAI,CAAC,CAAA;AAChBC,MAAAA,QAAQ,IAAI,CAAC,CAAA;MACbD,IAAI,GAAG,EAAE,CAAA;AACb,KAAA;IACAV,QAAQ,CAACC,OAAO,CAACD,QAAQ,CAACoB,OAAO,EAAE,GAAG,CAAC,CAAC,CAAA;AAC5C,GAAA;AACA,EAAA,IAAIC,MAAM,CAACC,IAAI,CAACZ,IAAI,CAAC,CAACa,MAAM,EAAEd,KAAK,CAACU,IAAI,CAACT,IAAI,CAAC,CAAA;EAE9C,OAAO;IAAED,KAAK;AAAEJ,IAAAA,QAAAA;GAAU,CAAA;AAC9B;;;;"}
|