@smwb/ui-react 2.0.0
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/AI_LESS_OVERRIDES.md +192 -0
- package/AI_THEMING.md +155 -0
- package/LICENSE +21 -0
- package/README.md +209 -0
- package/dist/assets/styles/less/components/accordion/accordion.entry.css +1 -0
- package/dist/assets/styles/less/components/appBar/appBar.entry.css +1 -0
- package/dist/assets/styles/less/components/appLayout/appLayout.entry.css +1 -0
- package/dist/assets/styles/less/components/avatar/avatar.entry.css +1 -0
- package/dist/assets/styles/less/components/badge/badge.entry.css +1 -0
- package/dist/assets/styles/less/components/bottomBar/bottomBar.entry.css +1 -0
- package/dist/assets/styles/less/components/breadcrumbs/breadcrumbs.entry.css +1 -0
- package/dist/assets/styles/less/components/button/button.entry.css +1 -0
- package/dist/assets/styles/less/components/buttonGroup/buttonGroup.entry.css +1 -0
- package/dist/assets/styles/less/components/card/card.entry.css +1 -0
- package/dist/assets/styles/less/components/carousel/carousel.entry.css +1 -0
- package/dist/assets/styles/less/components/chat/chat.entry.css +1 -0
- package/dist/assets/styles/less/components/checkbox/checkbox.entry.css +1 -0
- package/dist/assets/styles/less/components/chip/chip.entry.css +1 -0
- package/dist/assets/styles/less/components/datePicker/dataPicker.entry.css +1 -0
- package/dist/assets/styles/less/components/divider/divider.entry.css +1 -0
- package/dist/assets/styles/less/components/expansionPanel/expansionPanel.entry.css +1 -0
- package/dist/assets/styles/less/components/floatingButton/floatingButton.entry.css +1 -0
- package/dist/assets/styles/less/components/grid/grid.entry.css +1 -0
- package/dist/assets/styles/less/components/icon/icon.entry.css +1 -0
- package/dist/assets/styles/less/components/imagesList/imagesList.entry.css +1 -0
- package/dist/assets/styles/less/components/imagesList/imagesListItem/imagesListItem.entry.css +1 -0
- package/dist/assets/styles/less/components/list/list.entry.css +1 -0
- package/dist/assets/styles/less/components/menu/menu.entry.css +1 -0
- package/dist/assets/styles/less/components/message/message.entry.css +1 -0
- package/dist/assets/styles/less/components/modal/modal.entry.css +1 -0
- package/dist/assets/styles/less/components/page/page.entry.css +1 -0
- package/dist/assets/styles/less/components/pageHeader/pageHeader.entry.css +1 -0
- package/dist/assets/styles/less/components/pagination/pagination.entry.css +1 -0
- package/dist/assets/styles/less/components/progressIndicator/progressIndicator.entry.css +1 -0
- package/dist/assets/styles/less/components/radioButton/radioButton.entry.css +1 -0
- package/dist/assets/styles/less/components/rating/rating.entry.css +1 -0
- package/dist/assets/styles/less/components/ripple/ripple.entry.css +1 -0
- package/dist/assets/styles/less/components/screenDivider/screenDivider.entry.css +1 -0
- package/dist/assets/styles/less/components/selectField/selectField.entry.css +1 -0
- package/dist/assets/styles/less/components/sheet/sheet.entry.css +1 -0
- package/dist/assets/styles/less/components/sidebar/sidebar.entry.css +1 -0
- package/dist/assets/styles/less/components/skeleton/skeleton.entry.css +1 -0
- package/dist/assets/styles/less/components/slider/slider.entry.css +1 -0
- package/dist/assets/styles/less/components/snackbar/snackbar.entry.css +1 -0
- package/dist/assets/styles/less/components/stack/stack.entry.css +1 -0
- package/dist/assets/styles/less/components/stepper/stepper.entry.css +1 -0
- package/dist/assets/styles/less/components/table/table.entry.css +1 -0
- package/dist/assets/styles/less/components/table/tablePagination/tablePagination.entry.css +1 -0
- package/dist/assets/styles/less/components/tabs/tab/tab.entry.css +1 -0
- package/dist/assets/styles/less/components/tabs/tabs.entry.css +1 -0
- package/dist/assets/styles/less/components/textField/textField.entry.css +1 -0
- package/dist/assets/styles/less/components/timePicker/timePicker.entry.css +1 -0
- package/dist/assets/styles/less/components/toggle/toggle.entry.css +1 -0
- package/dist/assets/styles/less/components/tooltip/tooltip.entry.css +1 -0
- package/dist/assets/styles/less/components/treeView/treeView.entry.css +1 -0
- package/dist/assets/styles/less/components/typography/typography.entry.css +1 -0
- package/dist/components/base/animateHeight/animateHeight.d.ts +30 -0
- package/dist/components/base/animateHeight/animateHeight.js +118 -0
- package/dist/components/base/animateHeight/animateHeight.js.map +1 -0
- package/dist/components/base/animateHeight/index.d.ts +1 -0
- package/dist/components/base/icon/icon.d.ts +28 -0
- package/dist/components/base/icon/icon.js +27 -0
- package/dist/components/base/icon/icon.js.map +1 -0
- package/dist/components/base/icon/index.d.ts +2 -0
- package/dist/components/base/ripple/index.d.ts +2 -0
- package/dist/components/base/ripple/ripple.d.ts +21 -0
- package/dist/components/base/ripple/ripple.js +42 -0
- package/dist/components/base/ripple/ripple.js.map +1 -0
- package/dist/components/clickAwayListener/clickAwayListener.d.ts +14 -0
- package/dist/components/clickAwayListener/clickAwayListener.js +67 -0
- package/dist/components/clickAwayListener/clickAwayListener.js.map +1 -0
- package/dist/components/clickAwayListener/index.d.ts +2 -0
- package/dist/components/dataDisplay/accordion/accordion.d.ts +21 -0
- package/dist/components/dataDisplay/accordion/accordion.js +62 -0
- package/dist/components/dataDisplay/accordion/accordion.js.map +1 -0
- package/dist/components/dataDisplay/accordion/index.d.ts +2 -0
- package/dist/components/dataDisplay/avatar/avatar.d.ts +31 -0
- package/dist/components/dataDisplay/avatar/avatar.js +49 -0
- package/dist/components/dataDisplay/avatar/avatar.js.map +1 -0
- package/dist/components/dataDisplay/avatar/index.d.ts +2 -0
- package/dist/components/dataDisplay/badge/badge.d.ts +19 -0
- package/dist/components/dataDisplay/badge/badge.js +39 -0
- package/dist/components/dataDisplay/badge/badge.js.map +1 -0
- package/dist/components/dataDisplay/badge/index.d.ts +2 -0
- package/dist/components/dataDisplay/card/card.d.ts +15 -0
- package/dist/components/dataDisplay/card/card.js +36 -0
- package/dist/components/dataDisplay/card/card.js.map +1 -0
- package/dist/components/dataDisplay/card/index.d.ts +2 -0
- package/dist/components/dataDisplay/carousel/carousel.d.ts +22 -0
- package/dist/components/dataDisplay/carousel/carousel.js +179 -0
- package/dist/components/dataDisplay/carousel/carousel.js.map +1 -0
- package/dist/components/dataDisplay/carousel/index.d.ts +2 -0
- package/dist/components/dataDisplay/carousel/utils.d.ts +13 -0
- package/dist/components/dataDisplay/carousel/utils.js +57 -0
- package/dist/components/dataDisplay/carousel/utils.js.map +1 -0
- package/dist/components/dataDisplay/chat/chat.d.ts +50 -0
- package/dist/components/dataDisplay/chat/chat.js +183 -0
- package/dist/components/dataDisplay/chat/chat.js.map +1 -0
- package/dist/components/dataDisplay/chat/chatAttachmentImage.d.ts +7 -0
- package/dist/components/dataDisplay/chat/chatAttachmentImage.js +67 -0
- package/dist/components/dataDisplay/chat/chatAttachmentImage.js.map +1 -0
- package/dist/components/dataDisplay/chat/chatAttachments.d.ts +8 -0
- package/dist/components/dataDisplay/chat/chatAttachments.js +26 -0
- package/dist/components/dataDisplay/chat/chatAttachments.js.map +1 -0
- package/dist/components/dataDisplay/chat/chatComposer.d.ts +15 -0
- package/dist/components/dataDisplay/chat/chatComposer.js +154 -0
- package/dist/components/dataDisplay/chat/chatComposer.js.map +1 -0
- package/dist/components/dataDisplay/chat/chatHeader.d.ts +14 -0
- package/dist/components/dataDisplay/chat/chatHeader.js +52 -0
- package/dist/components/dataDisplay/chat/chatHeader.js.map +1 -0
- package/dist/components/dataDisplay/chat/chatIconButton.d.ts +8 -0
- package/dist/components/dataDisplay/chat/chatIconButton.js +47 -0
- package/dist/components/dataDisplay/chat/chatIconButton.js.map +1 -0
- package/dist/components/dataDisplay/chat/chatLayout.d.ts +20 -0
- package/dist/components/dataDisplay/chat/chatLayout.js +102 -0
- package/dist/components/dataDisplay/chat/chatLayout.js.map +1 -0
- package/dist/components/dataDisplay/chat/chatMessageAvatar.d.ts +8 -0
- package/dist/components/dataDisplay/chat/chatMessageAvatar.js +12 -0
- package/dist/components/dataDisplay/chat/chatMessageAvatar.js.map +1 -0
- package/dist/components/dataDisplay/chat/chatMessageBubble.d.ts +20 -0
- package/dist/components/dataDisplay/chat/chatMessageBubble.js +60 -0
- package/dist/components/dataDisplay/chat/chatMessageBubble.js.map +1 -0
- package/dist/components/dataDisplay/chat/chatMessageIncoming.d.ts +7 -0
- package/dist/components/dataDisplay/chat/chatMessageIncoming.js +24 -0
- package/dist/components/dataDisplay/chat/chatMessageIncoming.js.map +1 -0
- package/dist/components/dataDisplay/chat/chatMessageItem.d.ts +9 -0
- package/dist/components/dataDisplay/chat/chatMessageItem.js +62 -0
- package/dist/components/dataDisplay/chat/chatMessageItem.js.map +1 -0
- package/dist/components/dataDisplay/chat/chatMessageOutgoing.d.ts +7 -0
- package/dist/components/dataDisplay/chat/chatMessageOutgoing.js +36 -0
- package/dist/components/dataDisplay/chat/chatMessageOutgoing.js.map +1 -0
- package/dist/components/dataDisplay/chat/chatMessageSkeleton.d.ts +8 -0
- package/dist/components/dataDisplay/chat/chatMessageSkeleton.js +32 -0
- package/dist/components/dataDisplay/chat/chatMessageSkeleton.js.map +1 -0
- package/dist/components/dataDisplay/chat/chatMessageStatus.d.ts +11 -0
- package/dist/components/dataDisplay/chat/chatMessageStatus.js +37 -0
- package/dist/components/dataDisplay/chat/chatMessageStatus.js.map +1 -0
- package/dist/components/dataDisplay/chat/chatMessageSystem.d.ts +7 -0
- package/dist/components/dataDisplay/chat/chatMessageSystem.js +13 -0
- package/dist/components/dataDisplay/chat/chatMessageSystem.js.map +1 -0
- package/dist/components/dataDisplay/chat/chatMessages.d.ts +14 -0
- package/dist/components/dataDisplay/chat/chatMessages.js +73 -0
- package/dist/components/dataDisplay/chat/chatMessages.js.map +1 -0
- package/dist/components/dataDisplay/chat/chatOverlayLayout.d.ts +17 -0
- package/dist/components/dataDisplay/chat/chatShell.d.ts +16 -0
- package/dist/components/dataDisplay/chat/chatShell.js +63 -0
- package/dist/components/dataDisplay/chat/chatShell.js.map +1 -0
- package/dist/components/dataDisplay/chat/index.d.ts +44 -0
- package/dist/components/dataDisplay/chat/types.d.ts +53 -0
- package/dist/components/dataDisplay/chat/types.js +19 -0
- package/dist/components/dataDisplay/chat/types.js.map +1 -0
- package/dist/components/dataDisplay/chat/useChatFileUpload.d.ts +19 -0
- package/dist/components/dataDisplay/chat/useChatFileUpload.js +42 -0
- package/dist/components/dataDisplay/chat/useChatFileUpload.js.map +1 -0
- package/dist/components/dataDisplay/chat/useChatInfiniteScroll.d.ts +11 -0
- package/dist/components/dataDisplay/chat/useChatInfiniteScroll.js +26 -0
- package/dist/components/dataDisplay/chat/useChatInfiniteScroll.js.map +1 -0
- package/dist/components/dataDisplay/chat/useChatStickToBottom.d.ts +11 -0
- package/dist/components/dataDisplay/chat/useChatStickToBottom.js +38 -0
- package/dist/components/dataDisplay/chat/useChatStickToBottom.js.map +1 -0
- package/dist/components/dataDisplay/chat/utils.d.ts +26 -0
- package/dist/components/dataDisplay/chat/utils.js +61 -0
- package/dist/components/dataDisplay/chat/utils.js.map +1 -0
- package/dist/components/dataDisplay/chip/chip.d.ts +24 -0
- package/dist/components/dataDisplay/chip/chip.js +99 -0
- package/dist/components/dataDisplay/chip/chip.js.map +1 -0
- package/dist/components/dataDisplay/chip/index.d.ts +2 -0
- package/dist/components/dataDisplay/expansionPanel/expansionPanel.d.ts +56 -0
- package/dist/components/dataDisplay/expansionPanel/expansionPanel.js +174 -0
- package/dist/components/dataDisplay/expansionPanel/expansionPanel.js.map +1 -0
- package/dist/components/dataDisplay/expansionPanel/index.d.ts +2 -0
- package/dist/components/dataDisplay/imagesList/imagesList.d.ts +15 -0
- package/dist/components/dataDisplay/imagesList/imagesList.js +21 -0
- package/dist/components/dataDisplay/imagesList/imagesList.js.map +1 -0
- package/dist/components/dataDisplay/imagesList/imagesList.types.d.ts +6 -0
- package/dist/components/dataDisplay/imagesList/imagesListContext.d.ts +5 -0
- package/dist/components/dataDisplay/imagesList/imagesListContext.js +8 -0
- package/dist/components/dataDisplay/imagesList/imagesListContext.js.map +1 -0
- package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItem.d.ts +14 -0
- package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js +55 -0
- package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js.map +1 -0
- package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.d.ts +7 -0
- package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.js +29 -0
- package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.js.map +1 -0
- package/dist/components/dataDisplay/imagesList/index.d.ts +6 -0
- package/dist/components/dataDisplay/list/index.d.ts +4 -0
- package/dist/components/dataDisplay/list/list.d.ts +12 -0
- package/dist/components/dataDisplay/list/list.js +25 -0
- package/dist/components/dataDisplay/list/list.js.map +1 -0
- package/dist/components/dataDisplay/list/listItem.d.ts +17 -0
- package/dist/components/dataDisplay/list/listItem.js +37 -0
- package/dist/components/dataDisplay/list/listItem.js.map +1 -0
- package/dist/components/dataDisplay/table/index.d.ts +14 -0
- package/dist/components/dataDisplay/table/table.d.ts +17 -0
- package/dist/components/dataDisplay/table/table.js +38 -0
- package/dist/components/dataDisplay/table/table.js.map +1 -0
- package/dist/components/dataDisplay/table/tableBody.d.ts +6 -0
- package/dist/components/dataDisplay/table/tableBody.js +7 -0
- package/dist/components/dataDisplay/table/tableBody.js.map +1 -0
- package/dist/components/dataDisplay/table/tableCell.d.ts +7 -0
- package/dist/components/dataDisplay/table/tableCell.js +7 -0
- package/dist/components/dataDisplay/table/tableCell.js.map +1 -0
- package/dist/components/dataDisplay/table/tableHead.d.ts +6 -0
- package/dist/components/dataDisplay/table/tableHead.js +7 -0
- package/dist/components/dataDisplay/table/tableHead.js.map +1 -0
- package/dist/components/dataDisplay/table/tableHeadCell.d.ts +18 -0
- package/dist/components/dataDisplay/table/tableHeadCell.js +47 -0
- package/dist/components/dataDisplay/table/tableHeadCell.js.map +1 -0
- package/dist/components/dataDisplay/table/tablePagination/tablePagination.d.ts +19 -0
- package/dist/components/dataDisplay/table/tablePagination/tablePagination.js +41 -0
- package/dist/components/dataDisplay/table/tablePagination/tablePagination.js.map +1 -0
- package/dist/components/dataDisplay/table/tableRow.d.ts +10 -0
- package/dist/components/dataDisplay/table/tableRow.js +20 -0
- package/dist/components/dataDisplay/table/tableRow.js.map +1 -0
- package/dist/components/dataDisplay/treeView/index.d.ts +2 -0
- package/dist/components/dataDisplay/treeView/treeView.d.ts +39 -0
- package/dist/components/dataDisplay/treeView/treeView.js +116 -0
- package/dist/components/dataDisplay/treeView/treeView.js.map +1 -0
- package/dist/components/dataDisplay/typography/index.d.ts +2 -0
- package/dist/components/dataDisplay/typography/typography.d.ts +19 -0
- package/dist/components/dataDisplay/typography/typography.js +45 -0
- package/dist/components/dataDisplay/typography/typography.js.map +1 -0
- package/dist/components/feedBack/message/index.d.ts +2 -0
- package/dist/components/feedBack/message/message.d.ts +22 -0
- package/dist/components/feedBack/message/message.js +32 -0
- package/dist/components/feedBack/message/message.js.map +1 -0
- package/dist/components/feedBack/modal/index.d.ts +2 -0
- package/dist/components/feedBack/modal/modal.d.ts +39 -0
- package/dist/components/feedBack/modal/modal.js +107 -0
- package/dist/components/feedBack/modal/modal.js.map +1 -0
- package/dist/components/feedBack/progressIndicator/index.d.ts +2 -0
- package/dist/components/feedBack/progressIndicator/progressIndicator.d.ts +21 -0
- package/dist/components/feedBack/progressIndicator/progressIndicator.js +52 -0
- package/dist/components/feedBack/progressIndicator/progressIndicator.js.map +1 -0
- package/dist/components/feedBack/skeleton/index.d.ts +2 -0
- package/dist/components/feedBack/skeleton/skeleton.d.ts +20 -0
- package/dist/components/feedBack/skeleton/skeleton.js +48 -0
- package/dist/components/feedBack/skeleton/skeleton.js.map +1 -0
- package/dist/components/feedBack/snackbar/index.d.ts +2 -0
- package/dist/components/feedBack/snackbar/snackbar.d.ts +40 -0
- package/dist/components/feedBack/snackbar/snackbar.js +195 -0
- package/dist/components/feedBack/snackbar/snackbar.js.map +1 -0
- package/dist/components/feedBack/snackbar/useSnackbarsPortal.d.ts +3 -0
- package/dist/components/feedBack/snackbar/useSnackbarsPortal.js +16 -0
- package/dist/components/feedBack/snackbar/useSnackbarsPortal.js.map +1 -0
- package/dist/components/feedBack/tooltip/index.d.ts +2 -0
- package/dist/components/feedBack/tooltip/tooltip.d.ts +22 -0
- package/dist/components/feedBack/tooltip/tooltip.js +64 -0
- package/dist/components/feedBack/tooltip/tooltip.js.map +1 -0
- package/dist/components/inputs/button/button.d.ts +60 -0
- package/dist/components/inputs/button/button.js +83 -0
- package/dist/components/inputs/button/button.js.map +1 -0
- package/dist/components/inputs/button/index.d.ts +2 -0
- package/dist/components/inputs/buttonGroups/buttonGroup.d.ts +14 -0
- package/dist/components/inputs/buttonGroups/buttonGroup.js +53 -0
- package/dist/components/inputs/buttonGroups/buttonGroup.js.map +1 -0
- package/dist/components/inputs/buttonGroups/index.d.ts +2 -0
- package/dist/components/inputs/checkbox/checkbox.d.ts +21 -0
- package/dist/components/inputs/checkbox/checkbox.js +74 -0
- package/dist/components/inputs/checkbox/checkbox.js.map +1 -0
- package/dist/components/inputs/checkbox/index.d.ts +2 -0
- package/dist/components/inputs/datePicker/dataPickerDays.d.ts +9 -0
- package/dist/components/inputs/datePicker/dataPickerDays.js +59 -0
- package/dist/components/inputs/datePicker/dataPickerDays.js.map +1 -0
- package/dist/components/inputs/datePicker/dataPickerHeader.d.ts +11 -0
- package/dist/components/inputs/datePicker/dataPickerHeader.js +57 -0
- package/dist/components/inputs/datePicker/dataPickerHeader.js.map +1 -0
- package/dist/components/inputs/datePicker/dataPickerInput.d.ts +6 -0
- package/dist/components/inputs/datePicker/dataPickerInput.js +37 -0
- package/dist/components/inputs/datePicker/dataPickerInput.js.map +1 -0
- package/dist/components/inputs/datePicker/dateFormat.d.ts +3 -0
- package/dist/components/inputs/datePicker/dateFormat.js +58 -0
- package/dist/components/inputs/datePicker/dateFormat.js.map +1 -0
- package/dist/components/inputs/datePicker/datePicker.d.ts +42 -0
- package/dist/components/inputs/datePicker/datePicker.js +229 -0
- package/dist/components/inputs/datePicker/datePicker.js.map +1 -0
- package/dist/components/inputs/datePicker/datePickerActionLabel.d.ts +12 -0
- package/dist/components/inputs/datePicker/datePickerActionLabel.js +42 -0
- package/dist/components/inputs/datePicker/datePickerActionLabel.js.map +1 -0
- package/dist/components/inputs/datePicker/datePickerDay.d.ts +13 -0
- package/dist/components/inputs/datePicker/datePickerDay.js +62 -0
- package/dist/components/inputs/datePicker/datePickerDay.js.map +1 -0
- package/dist/components/inputs/datePicker/datePickerIconButton.d.ts +6 -0
- package/dist/components/inputs/datePicker/datePickerIconButton.js +44 -0
- package/dist/components/inputs/datePicker/datePickerIconButton.js.map +1 -0
- package/dist/components/inputs/datePicker/datePickerList.d.ts +11 -0
- package/dist/components/inputs/datePicker/datePickerList.js +38 -0
- package/dist/components/inputs/datePicker/datePickerList.js.map +1 -0
- package/dist/components/inputs/datePicker/index.d.ts +16 -0
- package/dist/components/inputs/datePicker/useDateInput.d.ts +14 -0
- package/dist/components/inputs/datePicker/useDateInput.js +35 -0
- package/dist/components/inputs/datePicker/useDateInput.js.map +1 -0
- package/dist/components/inputs/datePicker/utils.d.ts +37 -0
- package/dist/components/inputs/datePicker/utils.js +179 -0
- package/dist/components/inputs/datePicker/utils.js.map +1 -0
- package/dist/components/inputs/dateTimePicker/dateTimeFormat.d.ts +3 -0
- package/dist/components/inputs/dateTimePicker/dateTimeFormat.js +73 -0
- package/dist/components/inputs/dateTimePicker/dateTimeFormat.js.map +1 -0
- package/dist/components/inputs/dateTimePicker/dateTimePicker.d.ts +28 -0
- package/dist/components/inputs/dateTimePicker/dateTimePicker.js +194 -0
- package/dist/components/inputs/dateTimePicker/dateTimePicker.js.map +1 -0
- package/dist/components/inputs/dateTimePicker/dateTimePickerInput.d.ts +6 -0
- package/dist/components/inputs/dateTimePicker/dateTimePickerInput.js +37 -0
- package/dist/components/inputs/dateTimePicker/dateTimePickerInput.js.map +1 -0
- package/dist/components/inputs/dateTimePicker/index.d.ts +6 -0
- package/dist/components/inputs/dateTimePicker/useDateTimeInput.d.ts +15 -0
- package/dist/components/inputs/dateTimePicker/useDateTimeInput.js +60 -0
- package/dist/components/inputs/dateTimePicker/useDateTimeInput.js.map +1 -0
- package/dist/components/inputs/fileDrop/countPreview.d.ts +7 -0
- package/dist/components/inputs/fileDrop/fileDrop.d.ts +16 -0
- package/dist/components/inputs/fileDrop/preview.d.ts +8 -0
- package/dist/components/inputs/fileDrop/previewWrapper.d.ts +9 -0
- package/dist/components/inputs/fileDrop/utils.d.ts +1 -0
- package/dist/components/inputs/fileInput/fileInput.d.ts +16 -0
- package/dist/components/inputs/floatingButton/floatingButton.d.ts +11 -0
- package/dist/components/inputs/floatingButton/floatingButton.js +42 -0
- package/dist/components/inputs/floatingButton/floatingButton.js.map +1 -0
- package/dist/components/inputs/floatingButton/index.d.ts +2 -0
- package/dist/components/inputs/radioButton/index.d.ts +2 -0
- package/dist/components/inputs/radioButton/radioButton.d.ts +19 -0
- package/dist/components/inputs/radioButton/radioButton.js +69 -0
- package/dist/components/inputs/radioButton/radioButton.js.map +1 -0
- package/dist/components/inputs/rating/index.d.ts +2 -0
- package/dist/components/inputs/rating/rating.d.ts +31 -0
- package/dist/components/inputs/rating/rating.js +85 -0
- package/dist/components/inputs/rating/rating.js.map +1 -0
- package/dist/components/inputs/selectField/dropdownMenu.d.ts +40 -0
- package/dist/components/inputs/selectField/dropdownMenu.js +134 -0
- package/dist/components/inputs/selectField/dropdownMenu.js.map +1 -0
- package/dist/components/inputs/selectField/index.d.ts +2 -0
- package/dist/components/inputs/selectField/selectField.d.ts +50 -0
- package/dist/components/inputs/selectField/selectField.js +232 -0
- package/dist/components/inputs/selectField/selectField.js.map +1 -0
- package/dist/components/inputs/slider/index.d.ts +2 -0
- package/dist/components/inputs/slider/slider.d.ts +35 -0
- package/dist/components/inputs/slider/slider.js +314 -0
- package/dist/components/inputs/slider/slider.js.map +1 -0
- package/dist/components/inputs/slider/utils.d.ts +11 -0
- package/dist/components/inputs/slider/utils.js +40 -0
- package/dist/components/inputs/slider/utils.js.map +1 -0
- package/dist/components/inputs/textField/index.d.ts +6 -0
- package/dist/components/inputs/textField/textField.d.ts +26 -0
- package/dist/components/inputs/textField/textField.js +126 -0
- package/dist/components/inputs/textField/textField.js.map +1 -0
- package/dist/components/inputs/textField/textFieldAdornment.d.ts +8 -0
- package/dist/components/inputs/textField/textFieldAdornment.js +25 -0
- package/dist/components/inputs/textField/textFieldAdornment.js.map +1 -0
- package/dist/components/inputs/textField/textFieldWrapper.d.ts +20 -0
- package/dist/components/inputs/textField/textFieldWrapper.js +50 -0
- package/dist/components/inputs/textField/textFieldWrapper.js.map +1 -0
- package/dist/components/inputs/textField/utils.d.ts +7 -0
- package/dist/components/inputs/textField/utils.js +11 -0
- package/dist/components/inputs/textField/utils.js.map +1 -0
- package/dist/components/inputs/timePicker/index.d.ts +11 -0
- package/dist/components/inputs/timePicker/timeFormat.d.ts +4 -0
- package/dist/components/inputs/timePicker/timeFormat.js +61 -0
- package/dist/components/inputs/timePicker/timeFormat.js.map +1 -0
- package/dist/components/inputs/timePicker/timePicker.d.ts +18 -0
- package/dist/components/inputs/timePicker/timePicker.js +114 -0
- package/dist/components/inputs/timePicker/timePicker.js.map +1 -0
- package/dist/components/inputs/timePicker/timePickerColumns.d.ts +7 -0
- package/dist/components/inputs/timePicker/timePickerColumns.js +32 -0
- package/dist/components/inputs/timePicker/timePickerColumns.js.map +1 -0
- package/dist/components/inputs/timePicker/timePickerInput.d.ts +6 -0
- package/dist/components/inputs/timePicker/timePickerInput.js +37 -0
- package/dist/components/inputs/timePicker/timePickerInput.js.map +1 -0
- package/dist/components/inputs/timePicker/timePickerList.d.ts +11 -0
- package/dist/components/inputs/timePicker/timePickerList.js +43 -0
- package/dist/components/inputs/timePicker/timePickerList.js.map +1 -0
- package/dist/components/inputs/timePicker/timeUtils.d.ts +23 -0
- package/dist/components/inputs/timePicker/timeUtils.js +93 -0
- package/dist/components/inputs/timePicker/timeUtils.js.map +1 -0
- package/dist/components/inputs/timePicker/useTimeInput.d.ts +13 -0
- package/dist/components/inputs/timePicker/useTimeInput.js +37 -0
- package/dist/components/inputs/timePicker/useTimeInput.js.map +1 -0
- package/dist/components/inputs/toggle/index.d.ts +2 -0
- package/dist/components/inputs/toggle/toggle.d.ts +20 -0
- package/dist/components/inputs/toggle/toggle.js +70 -0
- package/dist/components/inputs/toggle/toggle.js.map +1 -0
- package/dist/components/layout/appLayout/appLayout.d.ts +32 -0
- package/dist/components/layout/appLayout/appLayout.js +75 -0
- package/dist/components/layout/appLayout/appLayout.js.map +1 -0
- package/dist/components/layout/appLayout/index.d.ts +2 -0
- package/dist/components/layout/divider/divider.d.ts +21 -0
- package/dist/components/layout/divider/divider.js +58 -0
- package/dist/components/layout/divider/divider.js.map +1 -0
- package/dist/components/layout/divider/index.d.ts +2 -0
- package/dist/components/layout/grid/grid.d.ts +61 -0
- package/dist/components/layout/grid/grid.js +59 -0
- package/dist/components/layout/grid/grid.js.map +1 -0
- package/dist/components/layout/grid/index.d.ts +2 -0
- package/dist/components/layout/page/index.d.ts +2 -0
- package/dist/components/layout/page/page.d.ts +15 -0
- package/dist/components/layout/page/page.js +22 -0
- package/dist/components/layout/page/page.js.map +1 -0
- package/dist/components/layout/pageHeader/index.d.ts +2 -0
- package/dist/components/layout/pageHeader/pageHeader.d.ts +14 -0
- package/dist/components/layout/pageHeader/pageHeader.js +31 -0
- package/dist/components/layout/pageHeader/pageHeader.js.map +1 -0
- package/dist/components/layout/screenDivider/index.d.ts +2 -0
- package/dist/components/layout/screenDivider/screenDivider.d.ts +17 -0
- package/dist/components/layout/screenDivider/screenDivider.js +89 -0
- package/dist/components/layout/screenDivider/screenDivider.js.map +1 -0
- package/dist/components/layout/sheet/index.d.ts +2 -0
- package/dist/components/layout/sheet/sheet.d.ts +36 -0
- package/dist/components/layout/sheet/sheet.js +218 -0
- package/dist/components/layout/sheet/sheet.js.map +1 -0
- package/dist/components/layout/stack/index.d.ts +2 -0
- package/dist/components/layout/stack/stack.d.ts +17 -0
- package/dist/components/layout/stack/stack.js +34 -0
- package/dist/components/layout/stack/stack.js.map +1 -0
- package/dist/components/navigation/appBar/appBar.d.ts +18 -0
- package/dist/components/navigation/appBar/appBar.js +48 -0
- package/dist/components/navigation/appBar/appBar.js.map +1 -0
- package/dist/components/navigation/appBar/index.d.ts +2 -0
- package/dist/components/navigation/bottomBar/bottomBar.d.ts +14 -0
- package/dist/components/navigation/bottomBar/bottomBar.js +106 -0
- package/dist/components/navigation/bottomBar/bottomBar.js.map +1 -0
- package/dist/components/navigation/bottomBar/index.d.ts +2 -0
- package/dist/components/navigation/breadcrumbs/breadcrumbs.d.ts +22 -0
- package/dist/components/navigation/breadcrumbs/breadcrumbs.js +53 -0
- package/dist/components/navigation/breadcrumbs/breadcrumbs.js.map +1 -0
- package/dist/components/navigation/breadcrumbs/index.d.ts +2 -0
- package/dist/components/navigation/menu/index.d.ts +6 -0
- package/dist/components/navigation/menu/menu.d.ts +10 -0
- package/dist/components/navigation/menu/menu.js +15 -0
- package/dist/components/navigation/menu/menu.js.map +1 -0
- package/dist/components/navigation/menu/menuComponent.d.ts +3 -0
- package/dist/components/navigation/menu/menuComponent.js +13 -0
- package/dist/components/navigation/menu/menuComponent.js.map +1 -0
- package/dist/components/navigation/menu/menuContext.d.ts +8 -0
- package/dist/components/navigation/menu/menuContext.js +14 -0
- package/dist/components/navigation/menu/menuContext.js.map +1 -0
- package/dist/components/navigation/menu/menuDivider.d.ts +3 -0
- package/dist/components/navigation/menu/menuDivider.js +19 -0
- package/dist/components/navigation/menu/menuDivider.js.map +1 -0
- package/dist/components/navigation/menu/menuFloating.d.ts +12 -0
- package/dist/components/navigation/menu/menuFloating.js +50 -0
- package/dist/components/navigation/menu/menuFloating.js.map +1 -0
- package/dist/components/navigation/menu/menuItem.d.ts +16 -0
- package/dist/components/navigation/menu/menuItem.js +68 -0
- package/dist/components/navigation/menu/menuItem.js.map +1 -0
- package/dist/components/navigation/menu/menuItemIcon.d.ts +5 -0
- package/dist/components/navigation/menu/menuItemIcon.js +16 -0
- package/dist/components/navigation/menu/menuItemIcon.js.map +1 -0
- package/dist/components/navigation/menu/menuItemText.d.ts +7 -0
- package/dist/components/navigation/menu/menuItemText.js +15 -0
- package/dist/components/navigation/menu/menuItemText.js.map +1 -0
- package/dist/components/navigation/menu/menuList.d.ts +3 -0
- package/dist/components/navigation/menu/menuList.js +30 -0
- package/dist/components/navigation/menu/menuList.js.map +1 -0
- package/dist/components/navigation/menu/menuSubmenu.d.ts +16 -0
- package/dist/components/navigation/menu/menuSubmenu.js +70 -0
- package/dist/components/navigation/menu/menuSubmenu.js.map +1 -0
- package/dist/components/navigation/pagination/index.d.ts +2 -0
- package/dist/components/navigation/pagination/pagination.d.ts +27 -0
- package/dist/components/navigation/pagination/pagination.js +107 -0
- package/dist/components/navigation/pagination/pagination.js.map +1 -0
- package/dist/components/navigation/sidebar/index.d.ts +2 -0
- package/dist/components/navigation/sidebar/sidebar.d.ts +33 -0
- package/dist/components/navigation/sidebar/sidebar.js +106 -0
- package/dist/components/navigation/sidebar/sidebar.js.map +1 -0
- package/dist/components/navigation/stepper/index.d.ts +2 -0
- package/dist/components/navigation/stepper/stepper.d.ts +25 -0
- package/dist/components/navigation/stepper/stepper.js +61 -0
- package/dist/components/navigation/stepper/stepper.js.map +1 -0
- package/dist/components/navigation/tabs/index.d.ts +4 -0
- package/dist/components/navigation/tabs/tab/tab.d.ts +11 -0
- package/dist/components/navigation/tabs/tab/tab.js +54 -0
- package/dist/components/navigation/tabs/tab/tab.js.map +1 -0
- package/dist/components/navigation/tabs/tabs.d.ts +15 -0
- package/dist/components/navigation/tabs/tabs.js +137 -0
- package/dist/components/navigation/tabs/tabs.js.map +1 -0
- package/dist/connects/rt/index.d.ts +2 -0
- package/dist/connects/rt/table/draggableHeader.d.ts +13 -0
- package/dist/connects/rt/table/headerCellRenderer.d.ts +8 -0
- package/dist/connects/rt/table/index.d.ts +3 -0
- package/dist/connects/rt/table/table.d.ts +39 -0
- package/dist/connects/rt/table/utils.d.ts +7 -0
- package/dist/headless/components/base/animateHeight/animateHeight.js +118 -0
- package/dist/headless/components/base/animateHeight/animateHeight.js.map +1 -0
- package/dist/headless/components/base/icon/icon.js +26 -0
- package/dist/headless/components/base/icon/icon.js.map +1 -0
- package/dist/headless/components/base/ripple/ripple.js +41 -0
- package/dist/headless/components/base/ripple/ripple.js.map +1 -0
- package/dist/headless/components/clickAwayListener/clickAwayListener.js +67 -0
- package/dist/headless/components/clickAwayListener/clickAwayListener.js.map +1 -0
- package/dist/headless/components/dataDisplay/accordion/accordion.js +61 -0
- package/dist/headless/components/dataDisplay/accordion/accordion.js.map +1 -0
- package/dist/headless/components/dataDisplay/avatar/avatar.js +48 -0
- package/dist/headless/components/dataDisplay/avatar/avatar.js.map +1 -0
- package/dist/headless/components/dataDisplay/badge/badge.js +38 -0
- package/dist/headless/components/dataDisplay/badge/badge.js.map +1 -0
- package/dist/headless/components/dataDisplay/card/card.js +35 -0
- package/dist/headless/components/dataDisplay/card/card.js.map +1 -0
- package/dist/headless/components/dataDisplay/carousel/carousel.js +178 -0
- package/dist/headless/components/dataDisplay/carousel/carousel.js.map +1 -0
- package/dist/headless/components/dataDisplay/carousel/utils.js +57 -0
- package/dist/headless/components/dataDisplay/carousel/utils.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/chat.js +182 -0
- package/dist/headless/components/dataDisplay/chat/chat.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/chatAttachmentImage.js +67 -0
- package/dist/headless/components/dataDisplay/chat/chatAttachmentImage.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/chatAttachments.js +26 -0
- package/dist/headless/components/dataDisplay/chat/chatAttachments.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/chatComposer.js +154 -0
- package/dist/headless/components/dataDisplay/chat/chatComposer.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/chatHeader.js +52 -0
- package/dist/headless/components/dataDisplay/chat/chatHeader.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/chatIconButton.js +47 -0
- package/dist/headless/components/dataDisplay/chat/chatIconButton.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/chatLayout.js +102 -0
- package/dist/headless/components/dataDisplay/chat/chatLayout.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/chatMessageAvatar.js +12 -0
- package/dist/headless/components/dataDisplay/chat/chatMessageAvatar.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/chatMessageBubble.js +60 -0
- package/dist/headless/components/dataDisplay/chat/chatMessageBubble.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/chatMessageIncoming.js +24 -0
- package/dist/headless/components/dataDisplay/chat/chatMessageIncoming.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/chatMessageItem.js +62 -0
- package/dist/headless/components/dataDisplay/chat/chatMessageItem.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/chatMessageOutgoing.js +36 -0
- package/dist/headless/components/dataDisplay/chat/chatMessageOutgoing.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/chatMessageSkeleton.js +32 -0
- package/dist/headless/components/dataDisplay/chat/chatMessageSkeleton.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/chatMessageStatus.js +37 -0
- package/dist/headless/components/dataDisplay/chat/chatMessageStatus.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/chatMessageSystem.js +13 -0
- package/dist/headless/components/dataDisplay/chat/chatMessageSystem.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/chatMessages.js +73 -0
- package/dist/headless/components/dataDisplay/chat/chatMessages.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/chatShell.js +63 -0
- package/dist/headless/components/dataDisplay/chat/chatShell.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/types.js +19 -0
- package/dist/headless/components/dataDisplay/chat/types.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/useChatFileUpload.js +42 -0
- package/dist/headless/components/dataDisplay/chat/useChatFileUpload.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/useChatInfiniteScroll.js +26 -0
- package/dist/headless/components/dataDisplay/chat/useChatInfiniteScroll.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/useChatStickToBottom.js +38 -0
- package/dist/headless/components/dataDisplay/chat/useChatStickToBottom.js.map +1 -0
- package/dist/headless/components/dataDisplay/chat/utils.js +61 -0
- package/dist/headless/components/dataDisplay/chat/utils.js.map +1 -0
- package/dist/headless/components/dataDisplay/chip/chip.js +98 -0
- package/dist/headless/components/dataDisplay/chip/chip.js.map +1 -0
- package/dist/headless/components/dataDisplay/expansionPanel/expansionPanel.js +173 -0
- package/dist/headless/components/dataDisplay/expansionPanel/expansionPanel.js.map +1 -0
- package/dist/headless/components/dataDisplay/imagesList/imagesList.js +20 -0
- package/dist/headless/components/dataDisplay/imagesList/imagesList.js.map +1 -0
- package/dist/headless/components/dataDisplay/imagesList/imagesListContext.js +8 -0
- package/dist/headless/components/dataDisplay/imagesList/imagesListContext.js.map +1 -0
- package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js +54 -0
- package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js.map +1 -0
- package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.js +29 -0
- package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.js.map +1 -0
- package/dist/headless/components/dataDisplay/list/list.js +24 -0
- package/dist/headless/components/dataDisplay/list/list.js.map +1 -0
- package/dist/headless/components/dataDisplay/list/listItem.js +37 -0
- package/dist/headless/components/dataDisplay/list/listItem.js.map +1 -0
- package/dist/headless/components/dataDisplay/table/table.js +37 -0
- package/dist/headless/components/dataDisplay/table/table.js.map +1 -0
- package/dist/headless/components/dataDisplay/table/tableBody.js +7 -0
- package/dist/headless/components/dataDisplay/table/tableBody.js.map +1 -0
- package/dist/headless/components/dataDisplay/table/tableCell.js +7 -0
- package/dist/headless/components/dataDisplay/table/tableCell.js.map +1 -0
- package/dist/headless/components/dataDisplay/table/tableHead.js +7 -0
- package/dist/headless/components/dataDisplay/table/tableHead.js.map +1 -0
- package/dist/headless/components/dataDisplay/table/tableHeadCell.js +47 -0
- package/dist/headless/components/dataDisplay/table/tableHeadCell.js.map +1 -0
- package/dist/headless/components/dataDisplay/table/tablePagination/tablePagination.js +40 -0
- package/dist/headless/components/dataDisplay/table/tablePagination/tablePagination.js.map +1 -0
- package/dist/headless/components/dataDisplay/table/tableRow.js +20 -0
- package/dist/headless/components/dataDisplay/table/tableRow.js.map +1 -0
- package/dist/headless/components/dataDisplay/treeView/treeView.js +115 -0
- package/dist/headless/components/dataDisplay/treeView/treeView.js.map +1 -0
- package/dist/headless/components/dataDisplay/typography/typography.js +44 -0
- package/dist/headless/components/dataDisplay/typography/typography.js.map +1 -0
- package/dist/headless/components/feedBack/message/message.js +31 -0
- package/dist/headless/components/feedBack/message/message.js.map +1 -0
- package/dist/headless/components/feedBack/modal/modal.js +106 -0
- package/dist/headless/components/feedBack/modal/modal.js.map +1 -0
- package/dist/headless/components/feedBack/progressIndicator/progressIndicator.js +51 -0
- package/dist/headless/components/feedBack/progressIndicator/progressIndicator.js.map +1 -0
- package/dist/headless/components/feedBack/skeleton/skeleton.js +47 -0
- package/dist/headless/components/feedBack/skeleton/skeleton.js.map +1 -0
- package/dist/headless/components/feedBack/snackbar/snackbar.js +194 -0
- package/dist/headless/components/feedBack/snackbar/snackbar.js.map +1 -0
- package/dist/headless/components/feedBack/snackbar/useSnackbarsPortal.js +16 -0
- package/dist/headless/components/feedBack/snackbar/useSnackbarsPortal.js.map +1 -0
- package/dist/headless/components/feedBack/tooltip/tooltip.js +63 -0
- package/dist/headless/components/feedBack/tooltip/tooltip.js.map +1 -0
- package/dist/headless/components/inputs/button/button.js +82 -0
- package/dist/headless/components/inputs/button/button.js.map +1 -0
- package/dist/headless/components/inputs/buttonGroups/buttonGroup.js +52 -0
- package/dist/headless/components/inputs/buttonGroups/buttonGroup.js.map +1 -0
- package/dist/headless/components/inputs/checkbox/checkbox.js +73 -0
- package/dist/headless/components/inputs/checkbox/checkbox.js.map +1 -0
- package/dist/headless/components/inputs/datePicker/dataPickerDays.js +59 -0
- package/dist/headless/components/inputs/datePicker/dataPickerDays.js.map +1 -0
- package/dist/headless/components/inputs/datePicker/dataPickerHeader.js +57 -0
- package/dist/headless/components/inputs/datePicker/dataPickerHeader.js.map +1 -0
- package/dist/headless/components/inputs/datePicker/dataPickerInput.js +37 -0
- package/dist/headless/components/inputs/datePicker/dataPickerInput.js.map +1 -0
- package/dist/headless/components/inputs/datePicker/dateFormat.js +58 -0
- package/dist/headless/components/inputs/datePicker/dateFormat.js.map +1 -0
- package/dist/headless/components/inputs/datePicker/datePicker.js +228 -0
- package/dist/headless/components/inputs/datePicker/datePicker.js.map +1 -0
- package/dist/headless/components/inputs/datePicker/datePickerActionLabel.js +42 -0
- package/dist/headless/components/inputs/datePicker/datePickerActionLabel.js.map +1 -0
- package/dist/headless/components/inputs/datePicker/datePickerDay.js +62 -0
- package/dist/headless/components/inputs/datePicker/datePickerDay.js.map +1 -0
- package/dist/headless/components/inputs/datePicker/datePickerIconButton.js +44 -0
- package/dist/headless/components/inputs/datePicker/datePickerIconButton.js.map +1 -0
- package/dist/headless/components/inputs/datePicker/datePickerList.js +38 -0
- package/dist/headless/components/inputs/datePicker/datePickerList.js.map +1 -0
- package/dist/headless/components/inputs/datePicker/useDateInput.js +35 -0
- package/dist/headless/components/inputs/datePicker/useDateInput.js.map +1 -0
- package/dist/headless/components/inputs/datePicker/utils.js +179 -0
- package/dist/headless/components/inputs/datePicker/utils.js.map +1 -0
- package/dist/headless/components/inputs/dateTimePicker/dateTimeFormat.js +73 -0
- package/dist/headless/components/inputs/dateTimePicker/dateTimeFormat.js.map +1 -0
- package/dist/headless/components/inputs/dateTimePicker/dateTimePicker.js +194 -0
- package/dist/headless/components/inputs/dateTimePicker/dateTimePicker.js.map +1 -0
- package/dist/headless/components/inputs/dateTimePicker/dateTimePickerInput.js +37 -0
- package/dist/headless/components/inputs/dateTimePicker/dateTimePickerInput.js.map +1 -0
- package/dist/headless/components/inputs/dateTimePicker/useDateTimeInput.js +60 -0
- package/dist/headless/components/inputs/dateTimePicker/useDateTimeInput.js.map +1 -0
- package/dist/headless/components/inputs/floatingButton/floatingButton.js +41 -0
- package/dist/headless/components/inputs/floatingButton/floatingButton.js.map +1 -0
- package/dist/headless/components/inputs/radioButton/radioButton.js +68 -0
- package/dist/headless/components/inputs/radioButton/radioButton.js.map +1 -0
- package/dist/headless/components/inputs/rating/rating.js +84 -0
- package/dist/headless/components/inputs/rating/rating.js.map +1 -0
- package/dist/headless/components/inputs/selectField/dropdownMenu.js +134 -0
- package/dist/headless/components/inputs/selectField/dropdownMenu.js.map +1 -0
- package/dist/headless/components/inputs/selectField/selectField.js +231 -0
- package/dist/headless/components/inputs/selectField/selectField.js.map +1 -0
- package/dist/headless/components/inputs/slider/slider.js +313 -0
- package/dist/headless/components/inputs/slider/slider.js.map +1 -0
- package/dist/headless/components/inputs/slider/utils.js +40 -0
- package/dist/headless/components/inputs/slider/utils.js.map +1 -0
- package/dist/headless/components/inputs/textField/textField.js +125 -0
- package/dist/headless/components/inputs/textField/textField.js.map +1 -0
- package/dist/headless/components/inputs/textField/textFieldAdornment.js +25 -0
- package/dist/headless/components/inputs/textField/textFieldAdornment.js.map +1 -0
- package/dist/headless/components/inputs/textField/textFieldWrapper.js +50 -0
- package/dist/headless/components/inputs/textField/textFieldWrapper.js.map +1 -0
- package/dist/headless/components/inputs/textField/utils.js +11 -0
- package/dist/headless/components/inputs/textField/utils.js.map +1 -0
- package/dist/headless/components/inputs/timePicker/timeFormat.js +61 -0
- package/dist/headless/components/inputs/timePicker/timeFormat.js.map +1 -0
- package/dist/headless/components/inputs/timePicker/timePicker.js +113 -0
- package/dist/headless/components/inputs/timePicker/timePicker.js.map +1 -0
- package/dist/headless/components/inputs/timePicker/timePickerColumns.js +32 -0
- package/dist/headless/components/inputs/timePicker/timePickerColumns.js.map +1 -0
- package/dist/headless/components/inputs/timePicker/timePickerInput.js +37 -0
- package/dist/headless/components/inputs/timePicker/timePickerInput.js.map +1 -0
- package/dist/headless/components/inputs/timePicker/timePickerList.js +43 -0
- package/dist/headless/components/inputs/timePicker/timePickerList.js.map +1 -0
- package/dist/headless/components/inputs/timePicker/timeUtils.js +93 -0
- package/dist/headless/components/inputs/timePicker/timeUtils.js.map +1 -0
- package/dist/headless/components/inputs/timePicker/useTimeInput.js +37 -0
- package/dist/headless/components/inputs/timePicker/useTimeInput.js.map +1 -0
- package/dist/headless/components/inputs/toggle/toggle.js +69 -0
- package/dist/headless/components/inputs/toggle/toggle.js.map +1 -0
- package/dist/headless/components/layout/appLayout/appLayout.js +74 -0
- package/dist/headless/components/layout/appLayout/appLayout.js.map +1 -0
- package/dist/headless/components/layout/divider/divider.js +57 -0
- package/dist/headless/components/layout/divider/divider.js.map +1 -0
- package/dist/headless/components/layout/grid/grid.js +58 -0
- package/dist/headless/components/layout/grid/grid.js.map +1 -0
- package/dist/headless/components/layout/page/page.js +21 -0
- package/dist/headless/components/layout/page/page.js.map +1 -0
- package/dist/headless/components/layout/pageHeader/pageHeader.js +30 -0
- package/dist/headless/components/layout/pageHeader/pageHeader.js.map +1 -0
- package/dist/headless/components/layout/screenDivider/screenDivider.js +88 -0
- package/dist/headless/components/layout/screenDivider/screenDivider.js.map +1 -0
- package/dist/headless/components/layout/sheet/sheet.js +217 -0
- package/dist/headless/components/layout/sheet/sheet.js.map +1 -0
- package/dist/headless/components/layout/stack/stack.js +33 -0
- package/dist/headless/components/layout/stack/stack.js.map +1 -0
- package/dist/headless/components/navigation/appBar/appBar.js +47 -0
- package/dist/headless/components/navigation/appBar/appBar.js.map +1 -0
- package/dist/headless/components/navigation/bottomBar/bottomBar.js +105 -0
- package/dist/headless/components/navigation/bottomBar/bottomBar.js.map +1 -0
- package/dist/headless/components/navigation/breadcrumbs/breadcrumbs.js +52 -0
- package/dist/headless/components/navigation/breadcrumbs/breadcrumbs.js.map +1 -0
- package/dist/headless/components/navigation/menu/menu.js +14 -0
- package/dist/headless/components/navigation/menu/menu.js.map +1 -0
- package/dist/headless/components/navigation/menu/menuComponent.js +13 -0
- package/dist/headless/components/navigation/menu/menuComponent.js.map +1 -0
- package/dist/headless/components/navigation/menu/menuContext.js +14 -0
- package/dist/headless/components/navigation/menu/menuContext.js.map +1 -0
- package/dist/headless/components/navigation/menu/menuDivider.js +19 -0
- package/dist/headless/components/navigation/menu/menuDivider.js.map +1 -0
- package/dist/headless/components/navigation/menu/menuFloating.js +50 -0
- package/dist/headless/components/navigation/menu/menuFloating.js.map +1 -0
- package/dist/headless/components/navigation/menu/menuItem.js +68 -0
- package/dist/headless/components/navigation/menu/menuItem.js.map +1 -0
- package/dist/headless/components/navigation/menu/menuItemIcon.js +16 -0
- package/dist/headless/components/navigation/menu/menuItemIcon.js.map +1 -0
- package/dist/headless/components/navigation/menu/menuItemText.js +15 -0
- package/dist/headless/components/navigation/menu/menuItemText.js.map +1 -0
- package/dist/headless/components/navigation/menu/menuList.js +30 -0
- package/dist/headless/components/navigation/menu/menuList.js.map +1 -0
- package/dist/headless/components/navigation/menu/menuSubmenu.js +70 -0
- package/dist/headless/components/navigation/menu/menuSubmenu.js.map +1 -0
- package/dist/headless/components/navigation/pagination/pagination.js +106 -0
- package/dist/headless/components/navigation/pagination/pagination.js.map +1 -0
- package/dist/headless/components/navigation/sidebar/sidebar.js +105 -0
- package/dist/headless/components/navigation/sidebar/sidebar.js.map +1 -0
- package/dist/headless/components/navigation/stepper/stepper.js +60 -0
- package/dist/headless/components/navigation/stepper/stepper.js.map +1 -0
- package/dist/headless/components/navigation/tabs/tab/tab.js +53 -0
- package/dist/headless/components/navigation/tabs/tab/tab.js.map +1 -0
- package/dist/headless/components/navigation/tabs/tabs.js +136 -0
- package/dist/headless/components/navigation/tabs/tabs.js.map +1 -0
- package/dist/headless/hooks/useControllableState.js +24 -0
- package/dist/headless/hooks/useControllableState.js.map +1 -0
- package/dist/headless/hooks/useEventCallback.js +11 -0
- package/dist/headless/hooks/useEventCallback.js.map +1 -0
- package/dist/headless/hooks/useFocusTrap.js +38 -0
- package/dist/headless/hooks/useFocusTrap.js.map +1 -0
- package/dist/headless/hooks/useForkRef.js +13 -0
- package/dist/headless/hooks/useForkRef.js.map +1 -0
- package/dist/headless/hooks/useId.js +9 -0
- package/dist/headless/hooks/useId.js.map +1 -0
- package/dist/headless/hooks/useModalState.js +13 -0
- package/dist/headless/hooks/useModalState.js.map +1 -0
- package/dist/headless/hooks/useObservable.js +9 -0
- package/dist/headless/hooks/useObservable.js.map +1 -0
- package/dist/headless/hooks/useRovingTabIndex.js +35 -0
- package/dist/headless/hooks/useRovingTabIndex.js.map +1 -0
- package/dist/headless/hooks/useSafeLayoutEffect.js +6 -0
- package/dist/headless/hooks/useSafeLayoutEffect.js.map +1 -0
- package/dist/headless/hooks/useTheme.js +37 -0
- package/dist/headless/hooks/useTheme.js.map +1 -0
- package/dist/headless/hooks/useVirtualList.js +25 -0
- package/dist/headless/hooks/useVirtualList.js.map +1 -0
- package/dist/headless/index.js +242 -0
- package/dist/headless/index.js.map +1 -0
- package/dist/headless/utils/animate.js +30 -0
- package/dist/headless/utils/animate.js.map +1 -0
- package/dist/headless/utils/debounce.js +15 -0
- package/dist/headless/utils/debounce.js.map +1 -0
- package/dist/headless/utils/floating.js +13 -0
- package/dist/headless/utils/floating.js.map +1 -0
- package/dist/headless/utils/observable.js +24 -0
- package/dist/headless/utils/observable.js.map +1 -0
- package/dist/headless/utils/setRef.js +7 -0
- package/dist/headless/utils/setRef.js.map +1 -0
- package/dist/headless/utils/throttle.js +18 -0
- package/dist/headless/utils/throttle.js.map +1 -0
- package/dist/hooks/useControllableState.d.ts +21 -0
- package/dist/hooks/useControllableState.js +24 -0
- package/dist/hooks/useControllableState.js.map +1 -0
- package/dist/hooks/useEventCallback.d.ts +4 -0
- package/dist/hooks/useEventCallback.js +11 -0
- package/dist/hooks/useEventCallback.js.map +1 -0
- package/dist/hooks/useFocusTrap.d.ts +15 -0
- package/dist/hooks/useFocusTrap.js +38 -0
- package/dist/hooks/useFocusTrap.js.map +1 -0
- package/dist/hooks/useForkRef.d.ts +2 -0
- package/dist/hooks/useForkRef.js +13 -0
- package/dist/hooks/useForkRef.js.map +1 -0
- package/dist/hooks/useId.d.ts +9 -0
- package/dist/hooks/useId.js +9 -0
- package/dist/hooks/useId.js.map +1 -0
- package/dist/hooks/useMediaQuery.d.ts +1 -0
- package/dist/hooks/useModalState.d.ts +5 -0
- package/dist/hooks/useModalState.js +13 -0
- package/dist/hooks/useModalState.js.map +1 -0
- package/dist/hooks/useObservable.d.ts +2 -0
- package/dist/hooks/useObservable.js +9 -0
- package/dist/hooks/useObservable.js.map +1 -0
- package/dist/hooks/useRovingTabIndex.d.ts +22 -0
- package/dist/hooks/useRovingTabIndex.js +35 -0
- package/dist/hooks/useRovingTabIndex.js.map +1 -0
- package/dist/hooks/useSafeLayoutEffect.d.ts +2 -0
- package/dist/hooks/useSafeLayoutEffect.js +6 -0
- package/dist/hooks/useSafeLayoutEffect.js.map +1 -0
- package/dist/hooks/useTheme.d.ts +9 -0
- package/dist/hooks/useTheme.js +37 -0
- package/dist/hooks/useTheme.js.map +1 -0
- package/dist/hooks/useThrottleCallback.d.ts +1 -0
- package/dist/hooks/useVirtualList.d.ts +34 -0
- package/dist/hooks/useVirtualList.js +25 -0
- package/dist/hooks/useVirtualList.js.map +1 -0
- package/dist/index.cjs +3 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +113 -0
- package/dist/index.js +242 -0
- package/dist/index.js.map +1 -0
- package/dist/react-table/components/base/icon/icon.js +26 -0
- package/dist/react-table/components/base/icon/icon.js.map +1 -0
- package/dist/react-table/components/dataDisplay/table/table.js +37 -0
- package/dist/react-table/components/dataDisplay/table/table.js.map +1 -0
- package/dist/react-table/components/dataDisplay/table/tableBody.js +7 -0
- package/dist/react-table/components/dataDisplay/table/tableBody.js.map +1 -0
- package/dist/react-table/components/dataDisplay/table/tableCell.js +7 -0
- package/dist/react-table/components/dataDisplay/table/tableCell.js.map +1 -0
- package/dist/react-table/components/dataDisplay/table/tableHead.js +7 -0
- package/dist/react-table/components/dataDisplay/table/tableHead.js.map +1 -0
- package/dist/react-table/components/dataDisplay/table/tableHeadCell.js +47 -0
- package/dist/react-table/components/dataDisplay/table/tableHeadCell.js.map +1 -0
- package/dist/react-table/components/dataDisplay/table/tablePagination/tablePagination.js +40 -0
- package/dist/react-table/components/dataDisplay/table/tablePagination/tablePagination.js.map +1 -0
- package/dist/react-table/components/dataDisplay/table/tableRow.js +20 -0
- package/dist/react-table/components/dataDisplay/table/tableRow.js.map +1 -0
- package/dist/react-table/components/feedBack/message/message.js +31 -0
- package/dist/react-table/components/feedBack/message/message.js.map +1 -0
- package/dist/react-table/components/feedBack/progressIndicator/progressIndicator.js +51 -0
- package/dist/react-table/components/feedBack/progressIndicator/progressIndicator.js.map +1 -0
- package/dist/react-table/components/inputs/textField/textField.js +125 -0
- package/dist/react-table/components/inputs/textField/textField.js.map +1 -0
- package/dist/react-table/components/inputs/textField/textFieldAdornment.js +25 -0
- package/dist/react-table/components/inputs/textField/textFieldAdornment.js.map +1 -0
- package/dist/react-table/components/inputs/textField/textFieldWrapper.js +50 -0
- package/dist/react-table/components/inputs/textField/textFieldWrapper.js.map +1 -0
- package/dist/react-table/components/inputs/textField/utils.js +11 -0
- package/dist/react-table/components/inputs/textField/utils.js.map +1 -0
- package/dist/react-table/connects/rt/table/draggableHeader.js +44 -0
- package/dist/react-table/connects/rt/table/draggableHeader.js.map +1 -0
- package/dist/react-table/connects/rt/table/headerCellRenderer.js +14 -0
- package/dist/react-table/connects/rt/table/headerCellRenderer.js.map +1 -0
- package/dist/react-table/connects/rt/table/table.js +180 -0
- package/dist/react-table/connects/rt/table/table.js.map +1 -0
- package/dist/react-table/connects/rt/table/utils.js +22 -0
- package/dist/react-table/connects/rt/table/utils.js.map +1 -0
- package/dist/react-table/hooks/useForkRef.js +13 -0
- package/dist/react-table/hooks/useForkRef.js.map +1 -0
- package/dist/react-table/hooks/useSafeLayoutEffect.js +6 -0
- package/dist/react-table/hooks/useSafeLayoutEffect.js.map +1 -0
- package/dist/react-table/react-table.js +7 -0
- package/dist/react-table/react-table.js.map +1 -0
- package/dist/react-table/utils/setRef.js +7 -0
- package/dist/react-table/utils/setRef.js.map +1 -0
- package/dist/react-table.d.ts +3 -0
- package/dist/storybook/storyPlay.d.ts +19 -0
- package/dist/templates/summer-ui/components/authCard/authCard.d.ts +8 -0
- package/dist/templates/summer-ui/components/authCard/index.d.ts +2 -0
- package/dist/templates/summer-ui/components/authLayout/authLayout.d.ts +3 -0
- package/dist/templates/summer-ui/components/authLayout/index.d.ts +2 -0
- package/dist/templates/summer-ui/components/authProvider/authProvider.d.ts +8 -0
- package/dist/templates/summer-ui/components/authProvider/index.d.ts +2 -0
- package/dist/templates/summer-ui/components/link/index.d.ts +2 -0
- package/dist/templates/summer-ui/components/link/link.d.ts +7 -0
- package/dist/templates/summer-ui/index.d.ts +1 -0
- package/dist/templates/summer-ui/messages/en.d.ts +30 -0
- package/dist/templates/summer-ui/messages/index.d.ts +31 -0
- package/dist/utils/animate.d.ts +8 -0
- package/dist/utils/animate.js +30 -0
- package/dist/utils/animate.js.map +1 -0
- package/dist/utils/debounce.d.ts +5 -0
- package/dist/utils/debounce.js +15 -0
- package/dist/utils/debounce.js.map +1 -0
- package/dist/utils/floating.d.ts +9 -0
- package/dist/utils/floating.js +13 -0
- package/dist/utils/floating.js.map +1 -0
- package/dist/utils/observable.d.ts +10 -0
- package/dist/utils/observable.js +24 -0
- package/dist/utils/observable.js.map +1 -0
- package/dist/utils/setRef.d.ts +2 -0
- package/dist/utils/setRef.js +7 -0
- package/dist/utils/setRef.js.map +1 -0
- package/dist/utils/throttle.d.ts +5 -0
- package/dist/utils/throttle.js +18 -0
- package/dist/utils/throttle.js.map +1 -0
- package/dist/utils/types/extractPropertyNamesByType.d.ts +3 -0
- package/dist/utils/types/ifEquals.d.ts +1 -0
- package/dist/utils/types/writableKeys.d.ts +8 -0
- package/package.json +146 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stepper.js","sources":["../../../../../src/components/navigation/stepper/stepper.tsx"],"sourcesContent":["import { forwardRef, Fragment, HTMLAttributes, KeyboardEvent, ReactNode } from \"react\";\nimport cn from \"clsx\";\nimport Icon from \"../../base/icon/icon\";\n\nexport interface StepItem {\n label: ReactNode;\n description?: ReactNode;\n optional?: ReactNode;\n /** Marks the step as errored. */\n error?: boolean;\n /** Disables interaction with the step. */\n disabled?: boolean;\n /** Custom icon overriding the default number/check. */\n icon?: ReactNode;\n}\n\nexport interface StepperProps extends HTMLAttributes<HTMLDivElement> {\n className?: string;\n steps: StepItem[];\n /** Index of the active (current) step. */\n activeStep: number;\n orientation?: \"horizontal\" | \"vertical\";\n /** Place the label under the icon (horizontal only). */\n alternativeLabel?: boolean;\n /** Makes steps clickable; receives the clicked step index. */\n onStepClick?: (index: number) => void;\n}\n\nexport const Stepper = forwardRef<HTMLDivElement, StepperProps>(function Stepper(\n { className, steps, activeStep, orientation = \"horizontal\", alternativeLabel = false, onStepClick, ...props },\n ref\n) {\n return (\n <div\n {...props}\n ref={ref}\n data-testid=\"stepper\"\n className={cn(\n \"smwb-stepper\",\n `smwb-stepper_${orientation}`,\n { \"smwb-stepper_alt-label\": alternativeLabel && orientation === \"horizontal\" },\n className\n )}\n >\n {steps.map((step, index) => {\n const completed = index < activeStep;\n const active = index === activeStep;\n const isLast = index === steps.length - 1;\n const clickable = Boolean(onStepClick) && !step.disabled;\n\n const onStepKeyDown = (event: KeyboardEvent<HTMLDivElement>) => {\n if (clickable && (event.key === \"Enter\" || event.key === \" \")) {\n event.preventDefault();\n onStepClick?.(index);\n }\n };\n\n return (\n <Fragment key={index}>\n <div\n className={cn(\"smwb-stepper__step\", {\n \"smwb-stepper__step_active\": active,\n \"smwb-stepper__step_completed\": completed,\n \"smwb-stepper__step_error\": step.error,\n \"smwb-stepper__step_disabled\": step.disabled,\n \"smwb-stepper__step_clickable\": clickable,\n })}\n aria-current={active ? \"step\" : undefined}\n aria-disabled={step.disabled || undefined}\n role={clickable ? \"button\" : undefined}\n tabIndex={clickable ? 0 : undefined}\n onClick={clickable ? () => onStepClick?.(index) : undefined}\n onKeyDown={clickable ? onStepKeyDown : undefined}\n >\n <div className=\"smwb-stepper__icon\" aria-hidden=\"true\">\n {step.icon ?? (completed ? <Icon name=\"check\" size={16} /> : <span>{index + 1}</span>)}\n </div>\n <div className=\"smwb-stepper__text\">\n <span className=\"smwb-stepper__label\">{step.label}</span>\n {step.optional ? <span className=\"smwb-stepper__optional\">{step.optional}</span> : null}\n {step.description && orientation === \"vertical\" ? (\n <span className=\"smwb-stepper__description\">{step.description}</span>\n ) : null}\n </div>\n </div>\n {!isLast ? <div className=\"smwb-stepper__connector\" aria-hidden=\"true\" /> : null}\n </Fragment>\n );\n })}\n </div>\n );\n});\n\nexport default Stepper;\n"],"names":["Stepper","forwardRef","className","steps","activeStep","orientation","alternativeLabel","onStepClick","props","ref","jsx","cn","step","index","completed","active","isLast","clickable","onStepKeyDown","event","Fragment","jsxs","_a","Icon"],"mappings":";;;;AA4BO,MAAMA,IAAUC,EAAyC,SAC9D,EAAE,WAAAC,GAAW,OAAAC,GAAO,YAAAC,GAAY,aAAAC,IAAc,cAAc,kBAAAC,IAAmB,IAAO,aAAAC,GAAa,GAAGC,EAAA,GACtGC,GACA;AACA,SACE,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACE,GAAGF;AAAA,MACJ,KAAAC;AAAA,MACA,eAAY;AAAA,MACZ,WAAWE;AAAA,QACT;AAAA,QACA,gBAAgBN,CAAW;AAAA,QAC3B,EAAE,0BAA0BC,KAAoBD,MAAgB,aAAA;AAAA,QAChEH;AAAA,MAAA;AAAA,MAGD,UAAAC,EAAM,IAAI,CAACS,GAAMC,MAAU;;AAC1B,cAAMC,IAAYD,IAAQT,GACpBW,IAASF,MAAUT,GACnBY,IAASH,MAAUV,EAAM,SAAS,GAClCc,IAAY,EAAQV,KAAgB,CAACK,EAAK,UAE1CM,IAAgB,CAACC,MAAyC;AAC9D,UAAIF,MAAcE,EAAM,QAAQ,WAAWA,EAAM,QAAQ,SACvDA,EAAM,eAAA,GACNZ,KAAA,QAAAA,EAAcM;AAAA,QAElB;AAEA,iCACGO,GAAA,EACC,UAAA;AAAA,UAAA,gBAAAC;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,WAAWV,EAAG,sBAAsB;AAAA,gBAClC,6BAA6BI;AAAA,gBAC7B,gCAAgCD;AAAA,gBAChC,4BAA4BF,EAAK;AAAA,gBACjC,+BAA+BA,EAAK;AAAA,gBACpC,gCAAgCK;AAAA,cAAA,CACjC;AAAA,cACD,gBAAcF,IAAS,SAAS;AAAA,cAChC,iBAAeH,EAAK,YAAY;AAAA,cAChC,MAAMK,IAAY,WAAW;AAAA,cAC7B,UAAUA,IAAY,IAAI;AAAA,cAC1B,SAASA,IAAY,MAAMV,KAAA,gBAAAA,EAAcM,KAAS;AAAA,cAClD,WAAWI,IAAYC,IAAgB;AAAA,cAEvC,UAAA;AAAA,gBAAA,gBAAAR,EAAC,SAAI,WAAU,sBAAqB,eAAY,QAC7C,WAAAY,IAAAV,EAAK,SAAL,OAAAU,IAAcR,IAAY,gBAAAJ,EAACa,KAAK,MAAK,SAAQ,MAAM,GAAA,CAAI,sBAAM,QAAA,EAAM,UAAAV,IAAQ,GAAE,EAAA,CAChF;AAAA,gBACA,gBAAAQ,EAAC,OAAA,EAAI,WAAU,sBACb,UAAA;AAAA,kBAAA,gBAAAX,EAAC,QAAA,EAAK,WAAU,uBAAuB,UAAAE,EAAK,OAAM;AAAA,kBACjDA,EAAK,WAAW,gBAAAF,EAAC,QAAA,EAAK,WAAU,0BAA0B,UAAAE,EAAK,UAAS,IAAU;AAAA,kBAClFA,EAAK,eAAeP,MAAgB,aACnC,gBAAAK,EAAC,UAAK,WAAU,6BAA6B,UAAAE,EAAK,YAAA,CAAY,IAC5D;AAAA,gBAAA,EAAA,CACN;AAAA,cAAA;AAAA,YAAA;AAAA,UAAA;AAAA,UAEAI,IAA0E,OAAjE,gBAAAN,EAAC,OAAA,EAAI,WAAU,2BAA0B,eAAY,QAAO;AAAA,QAAK,EAAA,GA3B/DG,CA4Bf;AAAA,MAEJ,CAAC;AAAA,IAAA;AAAA,EAAA;AAGP,CAAC;"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { jsxs as d, jsx as c } from "react/jsx-runtime";
|
|
2
|
+
import m from "react";
|
|
3
|
+
import v from "clsx";
|
|
4
|
+
import { Ripple as T } from "../../../base/ripple/ripple.js";
|
|
5
|
+
const M = m.forwardRef(function(p, f) {
|
|
6
|
+
const {
|
|
7
|
+
className: w,
|
|
8
|
+
label: o,
|
|
9
|
+
isActive: s = !1,
|
|
10
|
+
contentRef: u,
|
|
11
|
+
icon: l,
|
|
12
|
+
stacked: R = !1,
|
|
13
|
+
tag: e,
|
|
14
|
+
disabled: a,
|
|
15
|
+
onMouseDown: t,
|
|
16
|
+
..._
|
|
17
|
+
} = p, i = m.useRef(null), h = (n) => {
|
|
18
|
+
t == null || t(n);
|
|
19
|
+
}, x = (n) => {
|
|
20
|
+
var r;
|
|
21
|
+
(r = i.current) == null || r.onRipple(n);
|
|
22
|
+
}, b = e != null ? e : e || "button", N = v("smwb-tab", w, {
|
|
23
|
+
"smwb-tab--active": s,
|
|
24
|
+
"smwb-tab--stacked": R,
|
|
25
|
+
"smwb-tab--disabled": a
|
|
26
|
+
});
|
|
27
|
+
return /* @__PURE__ */ d(
|
|
28
|
+
b,
|
|
29
|
+
{
|
|
30
|
+
ref: f,
|
|
31
|
+
className: N,
|
|
32
|
+
onMouseDown: h,
|
|
33
|
+
onPointerDown: x,
|
|
34
|
+
role: "tab",
|
|
35
|
+
"aria-selected": s,
|
|
36
|
+
"aria-disabled": a || void 0,
|
|
37
|
+
tabIndex: s ? 0 : -1,
|
|
38
|
+
disabled: b === "button" ? a : void 0,
|
|
39
|
+
..._,
|
|
40
|
+
children: [
|
|
41
|
+
/* @__PURE__ */ d("span", { className: "smwb-tab__content", ref: u, children: [
|
|
42
|
+
l && /* @__PURE__ */ c("span", { className: "smwb-tab__icon", children: l }),
|
|
43
|
+
o && /* @__PURE__ */ c("span", { className: "smwb-tab__text-label", children: o })
|
|
44
|
+
] }),
|
|
45
|
+
/* @__PURE__ */ c(T, { actionRef: i, classes: { child: "tab__ripple-child" } })
|
|
46
|
+
]
|
|
47
|
+
}
|
|
48
|
+
);
|
|
49
|
+
});
|
|
50
|
+
export {
|
|
51
|
+
M as Tab
|
|
52
|
+
};
|
|
53
|
+
//# sourceMappingURL=tab.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tab.js","sources":["../../../../../../src/components/navigation/tabs/tab/tab.tsx"],"sourcesContent":["import React from \"react\";\nimport cn from \"clsx\";\nimport { Ripple, RippleActionsRef } from \"../../../base/ripple/ripple\";\n\nexport interface TabProps extends React.HTMLAttributes<HTMLButtonElement | HTMLAnchorElement> {\n label?: string | React.ReactNode;\n isActive?: boolean;\n contentRef?: React.Ref<unknown>;\n icon?: React.ReactNode;\n stacked?: boolean;\n tag?: React.ElementType;\n disabled?: boolean;\n}\n\nexport const Tab = React.forwardRef<HTMLButtonElement | HTMLAnchorElement, TabProps>(function Tab(props, ref) {\n const {\n className,\n label,\n isActive = false,\n contentRef,\n icon,\n stacked = false,\n tag,\n disabled,\n onMouseDown: onMouseDownProp,\n ...rest\n } = props;\n const rippleRef = React.useRef<RippleActionsRef>(null);\n\n const onMouseDown = (event: React.MouseEvent<HTMLButtonElement | HTMLAnchorElement>) => {\n onMouseDownProp?.(event);\n };\n\n // Ripple on pointerdown so it fires for touch and pen, not just mouse.\n const onPointerDown = (event: React.PointerEvent<HTMLButtonElement | HTMLAnchorElement>) => {\n rippleRef.current?.onRipple(event);\n };\n\n const Tag = tag ?? (tag || \"button\");\n const classes = cn(\"smwb-tab\", className, {\n \"smwb-tab--active\": isActive,\n \"smwb-tab--stacked\": stacked,\n \"smwb-tab--disabled\": disabled,\n });\n\n return (\n <Tag\n ref={ref}\n className={classes}\n onMouseDown={onMouseDown}\n onPointerDown={onPointerDown}\n role={\"tab\"}\n aria-selected={isActive}\n aria-disabled={disabled || undefined}\n tabIndex={isActive ? 0 : -1}\n disabled={Tag === \"button\" ? disabled : undefined}\n {...rest}\n >\n <span className=\"smwb-tab__content\" ref={contentRef as React.Ref<HTMLSpanElement>}>\n {icon && <span className=\"smwb-tab__icon\">{icon}</span>}\n {label && <span className=\"smwb-tab__text-label\">{label}</span>}\n </span>\n <Ripple actionRef={rippleRef} classes={{ child: \"tab__ripple-child\" }} />\n </Tag>\n );\n});\n"],"names":["Tab","React","props","ref","className","label","isActive","contentRef","icon","stacked","tag","disabled","onMouseDownProp","rest","rippleRef","onMouseDown","event","onPointerDown","_a","Tag","classes","cn","jsxs","jsx","Ripple"],"mappings":";;;;AAcO,MAAMA,IAAMC,EAAM,WAA4D,SAAaC,GAAOC,GAAK;AAC5G,QAAM;AAAA,IACJ,WAAAC;AAAA,IACA,OAAAC;AAAA,IACA,UAAAC,IAAW;AAAA,IACX,YAAAC;AAAA,IACA,MAAAC;AAAA,IACA,SAAAC,IAAU;AAAA,IACV,KAAAC;AAAA,IACA,UAAAC;AAAA,IACA,aAAaC;AAAA,IACb,GAAGC;AAAA,EAAA,IACDX,GACEY,IAAYb,EAAM,OAAyB,IAAI,GAE/Cc,IAAc,CAACC,MAAmE;AACtF,IAAAJ,KAAA,QAAAA,EAAkBI;AAAA,EACpB,GAGMC,IAAgB,CAACD,MAAqE;;AAC1F,KAAAE,IAAAJ,EAAU,YAAV,QAAAI,EAAmB,SAASF;AAAA,EAC9B,GAEMG,IAAMT,KAAA,OAAAA,IAAQA,KAAO,UACrBU,IAAUC,EAAG,YAAYjB,GAAW;AAAA,IACxC,oBAAoBE;AAAA,IACpB,qBAAqBG;AAAA,IACrB,sBAAsBE;AAAA,EAAA,CACvB;AAED,SACE,gBAAAW;AAAA,IAACH;AAAA,IAAA;AAAA,MACC,KAAAhB;AAAA,MACA,WAAWiB;AAAA,MACX,aAAAL;AAAA,MACA,eAAAE;AAAA,MACA,MAAM;AAAA,MACN,iBAAeX;AAAA,MACf,iBAAeK,KAAY;AAAA,MAC3B,UAAUL,IAAW,IAAI;AAAA,MACzB,UAAUa,MAAQ,WAAWR,IAAW;AAAA,MACvC,GAAGE;AAAA,MAEJ,UAAA;AAAA,QAAA,gBAAAS,EAAC,QAAA,EAAK,WAAU,qBAAoB,KAAKf,GACtC,UAAA;AAAA,UAAAC,KAAQ,gBAAAe,EAAC,QAAA,EAAK,WAAU,kBAAkB,UAAAf,GAAK;AAAA,UAC/CH,KAAS,gBAAAkB,EAAC,QAAA,EAAK,WAAU,wBAAwB,UAAAlB,EAAA,CAAM;AAAA,QAAA,GAC1D;AAAA,QACA,gBAAAkB,EAACC,KAAO,WAAWV,GAAW,SAAS,EAAE,OAAO,sBAAoB,CAAG;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAG7E,CAAC;"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { jsx as u, jsxs as B } from "react/jsx-runtime";
|
|
2
|
+
import s from "react";
|
|
3
|
+
import v from "clsx";
|
|
4
|
+
import { debounce as D } from "../../../utils/debounce.js";
|
|
5
|
+
import { useEventCallback as S } from "../../../hooks/useEventCallback.js";
|
|
6
|
+
import { setRef as O } from "../../../utils/setRef.js";
|
|
7
|
+
import { animate as j } from "../../../utils/animate.js";
|
|
8
|
+
const L = {
|
|
9
|
+
root: {},
|
|
10
|
+
content: {}
|
|
11
|
+
}, K = s.forwardRef(function(M, N) {
|
|
12
|
+
const {
|
|
13
|
+
className: C,
|
|
14
|
+
children: _,
|
|
15
|
+
onChange: E,
|
|
16
|
+
value: f,
|
|
17
|
+
indicatorContent: d = !1,
|
|
18
|
+
scrollable: y = !1,
|
|
19
|
+
"aria-label": z,
|
|
20
|
+
...T
|
|
21
|
+
} = M, [x, I] = s.useState(!1), [c, h] = s.useState(L), l = s.useRef(null), a = s.useRef(null), b = s.useRef([]), w = 40, p = () => {
|
|
22
|
+
const t = l.current;
|
|
23
|
+
let e;
|
|
24
|
+
if (t) {
|
|
25
|
+
const n = t.getBoundingClientRect();
|
|
26
|
+
e = {
|
|
27
|
+
clientWidth: t.clientWidth,
|
|
28
|
+
scrollLeft: t.scrollLeft,
|
|
29
|
+
scrollTop: t.scrollTop,
|
|
30
|
+
scrollWidth: t.scrollWidth,
|
|
31
|
+
top: n.top,
|
|
32
|
+
bottom: n.bottom,
|
|
33
|
+
left: n.left,
|
|
34
|
+
right: n.right
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
let r = null, o = null;
|
|
38
|
+
if (a.current || console.error("tabListRef.current is undefined"), t && a.current) {
|
|
39
|
+
const n = a.current.children;
|
|
40
|
+
if (n.length > 0) {
|
|
41
|
+
const i = n[f];
|
|
42
|
+
r = i ? i.getBoundingClientRect() : null, d && (o = b.current[f] ? b.current[f].getBoundingClientRect() : null);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return { tabsMeta: e, tabMeta: r, tabContentMeta: o };
|
|
46
|
+
}, m = S(() => {
|
|
47
|
+
const { tabsMeta: t, tabMeta: e, tabContentMeta: r } = p();
|
|
48
|
+
let o = 0;
|
|
49
|
+
e && t && (o = 1 * (e.left - t.left + t.scrollLeft));
|
|
50
|
+
const n = {
|
|
51
|
+
root: {
|
|
52
|
+
left: o,
|
|
53
|
+
width: e ? e.width : 0
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
if (d && r && (n.content = {
|
|
57
|
+
width: r.width
|
|
58
|
+
}), isNaN(c.root.left) || isNaN(c.root.width))
|
|
59
|
+
h(n);
|
|
60
|
+
else {
|
|
61
|
+
const i = Math.abs(c.root.left - n.root.left), W = Math.abs(c.root.width - n.root.width);
|
|
62
|
+
(i >= 1 || W >= 1) && h(n);
|
|
63
|
+
}
|
|
64
|
+
}), R = (t, { animation: e = !0 } = {}) => {
|
|
65
|
+
l.current && (e ? j(l.current, "scrollLeft", t, {
|
|
66
|
+
duration: 300
|
|
67
|
+
}) : l.current.scrollLeft = t);
|
|
68
|
+
}, g = S((t) => {
|
|
69
|
+
const { tabsMeta: e, tabMeta: r } = p();
|
|
70
|
+
if (!(!r || !e)) {
|
|
71
|
+
if (r.left < e.left) {
|
|
72
|
+
const o = e.scrollLeft + (r.left - e.left);
|
|
73
|
+
R(o - w, { animation: t });
|
|
74
|
+
} else if (r.right > e.right) {
|
|
75
|
+
const o = e.scrollLeft + (r.right - e.right);
|
|
76
|
+
R(o + w, { animation: t });
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
s.useEffect(() => {
|
|
81
|
+
I(!0);
|
|
82
|
+
}, []), s.useEffect(() => {
|
|
83
|
+
m();
|
|
84
|
+
}), s.useEffect(() => {
|
|
85
|
+
var o, n;
|
|
86
|
+
const t = D(() => {
|
|
87
|
+
l.current && m();
|
|
88
|
+
}, 166);
|
|
89
|
+
if (!l.current || !l.current.ownerDocument.defaultView) {
|
|
90
|
+
console.error("tabsRef.current.ownerDocument.defaultView is undefined");
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
const e = l.current.ownerDocument.defaultView;
|
|
94
|
+
e.addEventListener("resize", t);
|
|
95
|
+
let r;
|
|
96
|
+
return typeof ResizeObserver != "undefined" && (r = new ResizeObserver(t), Array.from((n = (o = a.current) == null ? void 0 : o.children) != null ? n : []).forEach((i) => {
|
|
97
|
+
r.observe(i);
|
|
98
|
+
})), () => {
|
|
99
|
+
t.cancel(), e.removeEventListener("resize", t), r && r.disconnect();
|
|
100
|
+
};
|
|
101
|
+
}, [m]), s.useEffect(() => {
|
|
102
|
+
g(L !== c);
|
|
103
|
+
}, [g, c]);
|
|
104
|
+
const V = s.Children.map(
|
|
105
|
+
_,
|
|
106
|
+
(t, e) => s.cloneElement(t, {
|
|
107
|
+
isActive: f === e,
|
|
108
|
+
onClick: (r) => {
|
|
109
|
+
E(r, e);
|
|
110
|
+
},
|
|
111
|
+
...d && {
|
|
112
|
+
contentRef: (r) => {
|
|
113
|
+
const { contentRef: o } = t.props;
|
|
114
|
+
b.current.push(r), o && O(o, r);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
})
|
|
118
|
+
);
|
|
119
|
+
return /* @__PURE__ */ u("div", { className: v("smwb-tabs", C), role: "tabpanel", ref: N, ...T, children: /* @__PURE__ */ B(
|
|
120
|
+
"div",
|
|
121
|
+
{
|
|
122
|
+
className: v("smwb-tabs__scroller", {
|
|
123
|
+
"smwb-tabs__scroller--scrollable": y
|
|
124
|
+
}),
|
|
125
|
+
ref: l,
|
|
126
|
+
children: [
|
|
127
|
+
/* @__PURE__ */ u("div", { className: "smwb-tabs__scroll-area", ref: a, role: "tablist", "aria-label": z, children: V }),
|
|
128
|
+
x && /* @__PURE__ */ u("span", { className: "smwb-tabs__indicator", style: c.root, children: /* @__PURE__ */ u("span", { className: "smwb-tabs__indicator-content", style: c.content }) })
|
|
129
|
+
]
|
|
130
|
+
}
|
|
131
|
+
) });
|
|
132
|
+
});
|
|
133
|
+
export {
|
|
134
|
+
K as Tabs
|
|
135
|
+
};
|
|
136
|
+
//# sourceMappingURL=tabs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tabs.js","sources":["../../../../../src/components/navigation/tabs/tabs.tsx"],"sourcesContent":["import React from \"react\";\nimport cn from \"clsx\";\nimport { debounce } from \"../../../utils/debounce\";\nimport { Tab, TabProps } from \"./tab/tab\";\nimport { useEventCallback } from \"../../../hooks/useEventCallback\";\nimport { setRef } from \"../../../utils/setRef\";\nimport { animate } from \"../../../utils/animate\";\n\nexport interface TabsProps {\n value: number;\n onChange: (e: React.MouseEvent<HTMLButtonElement>, index: number) => void;\n indicatorContent?: boolean;\n scrollable?: boolean;\n className?: string;\n children?: React.ReactNode;\n /** Accessible label for the tab list. */\n \"aria-label\"?: string;\n}\n\ninterface IndicatorStyle {\n root: {\n left: number;\n width: number;\n };\n content?: {\n width: number;\n };\n}\n\nconst defaultIndicatorStyle = {\n root: {},\n content: {},\n} as IndicatorStyle;\n\nexport const Tabs = React.forwardRef<HTMLDivElement, TabsProps>(function Tabs(props, ref) {\n const {\n className,\n children,\n onChange,\n value,\n indicatorContent = false,\n scrollable = false,\n \"aria-label\": ariaLabel,\n ...rest\n } = props;\n const [mounted, setMounted] = React.useState(false);\n const [indicatorStyle, setIndicatorStyle] = React.useState<IndicatorStyle>(defaultIndicatorStyle);\n\n const tabsRef = React.useRef<HTMLDivElement>(null);\n const tabListRef = React.useRef<HTMLDivElement>(null);\n const contentTabsRef = React.useRef<HTMLSpanElement[]>([]);\n\n // Видимость следующего таба в пикселях\n const viewNextTabInPixels = 40;\n\n const getTabsMeta = () => {\n const tabsNode = tabsRef.current;\n\n let tabsMeta;\n\n if (tabsNode) {\n const rect = tabsNode.getBoundingClientRect();\n\n tabsMeta = {\n clientWidth: tabsNode.clientWidth,\n scrollLeft: tabsNode.scrollLeft,\n scrollTop: tabsNode.scrollTop,\n scrollWidth: tabsNode.scrollWidth,\n top: rect.top,\n bottom: rect.bottom,\n left: rect.left,\n right: rect.right,\n };\n }\n\n let tabMeta: DOMRect | null = null;\n let tabContentMeta: DOMRect | null = null;\n\n if (!tabListRef.current) {\n console.error(\"tabListRef.current is undefined\");\n }\n if (tabsNode && tabListRef.current) {\n const children = tabListRef.current.children;\n\n if (children.length > 0) {\n const tab = children[value];\n\n tabMeta = tab ? tab.getBoundingClientRect() : null;\n\n if (indicatorContent) {\n tabContentMeta = contentTabsRef.current[value] ? contentTabsRef.current[value].getBoundingClientRect() : null;\n }\n }\n }\n return { tabsMeta, tabMeta, tabContentMeta };\n };\n\n const updateIndicatorState = useEventCallback(() => {\n const { tabsMeta, tabMeta, tabContentMeta } = getTabsMeta();\n let startValue = 0;\n\n if (tabMeta && tabsMeta) {\n startValue = 1 * (tabMeta.left - tabsMeta.left + tabsMeta.scrollLeft);\n }\n\n const newIndicatorStyle: IndicatorStyle = {\n root: {\n left: startValue,\n width: tabMeta ? tabMeta.width : 0,\n },\n };\n\n if (indicatorContent && tabContentMeta) {\n newIndicatorStyle.content = {\n width: tabContentMeta.width,\n };\n }\n\n if (isNaN(indicatorStyle.root.left) || isNaN(indicatorStyle.root.width)) {\n setIndicatorStyle(newIndicatorStyle);\n } else {\n const dStart = Math.abs(indicatorStyle.root.left - newIndicatorStyle.root.left);\n const dSize = Math.abs(indicatorStyle.root.width - newIndicatorStyle.root.width);\n\n if (dStart >= 1 || dSize >= 1) {\n setIndicatorStyle(newIndicatorStyle);\n }\n }\n });\n\n const scroll = (scrollValue: number, { animation = true } = {}) => {\n if (!tabsRef.current) {\n return;\n }\n if (animation) {\n animate(tabsRef.current, \"scrollLeft\", scrollValue, {\n duration: 300,\n });\n } else {\n tabsRef.current.scrollLeft = scrollValue;\n }\n };\n\n const scrollSelectedIntoView = useEventCallback((animation: boolean) => {\n const { tabsMeta, tabMeta } = getTabsMeta();\n\n if (!tabMeta || !tabsMeta) {\n return;\n }\n\n if (tabMeta.left < tabsMeta.left) {\n // Левая сторона таба не видна.\n const nextScrollStart = tabsMeta.scrollLeft + (tabMeta.left - tabsMeta.left);\n scroll(nextScrollStart - viewNextTabInPixels, { animation });\n } else if (tabMeta.right > tabsMeta.right) {\n // Правая сторона таба не видна.\n const nextScrollStart = tabsMeta.scrollLeft + (tabMeta.right - tabsMeta.right);\n scroll(nextScrollStart + viewNextTabInPixels, { animation });\n }\n });\n\n React.useEffect(() => {\n setMounted(true);\n }, []);\n\n React.useEffect(() => {\n updateIndicatorState();\n });\n\n React.useEffect(() => {\n const onResize = debounce(() => {\n if (tabsRef.current) {\n updateIndicatorState();\n }\n }, 166);\n if (!tabsRef.current || !tabsRef.current.ownerDocument.defaultView) {\n console.error(`tabsRef.current.ownerDocument.defaultView is undefined`);\n return;\n }\n const window: Window & typeof globalThis = tabsRef.current.ownerDocument.defaultView;\n\n window.addEventListener(\"resize\", onResize);\n\n let resizeObserver: ResizeObserver;\n\n if (typeof ResizeObserver !== \"undefined\") {\n resizeObserver = new ResizeObserver(onResize);\n\n Array.from(tabListRef.current?.children ?? []).forEach((child) => {\n resizeObserver.observe(child);\n });\n }\n\n return () => {\n onResize.cancel();\n\n window.removeEventListener(\"resize\", onResize);\n\n if (resizeObserver) {\n resizeObserver.disconnect();\n }\n };\n }, [updateIndicatorState]);\n\n React.useEffect(() => {\n // Не анимировать при первом рендере\n scrollSelectedIntoView(defaultIndicatorStyle !== indicatorStyle);\n }, [scrollSelectedIntoView, indicatorStyle]);\n\n const tabs = React.Children.map(\n children as React.ReactElement<TabProps>[],\n (child: React.ReactElement<TabProps>, index) =>\n React.cloneElement(child, {\n isActive: value === index,\n onClick: (event: React.MouseEvent<HTMLButtonElement>) => {\n onChange(event, index);\n },\n ...(indicatorContent && {\n contentRef: (ref: HTMLSpanElement) => {\n const { contentRef } = child.props;\n\n contentTabsRef.current.push(ref);\n\n if (contentRef) {\n setRef(contentRef as React.Ref<unknown>, ref);\n }\n },\n }),\n } as TabProps)\n );\n\n return (\n <div className={cn(\"smwb-tabs\", className)} role={\"tabpanel\"} ref={ref} {...rest}>\n <div\n className={cn(\"smwb-tabs__scroller\", {\n \"smwb-tabs__scroller--scrollable\": scrollable,\n })}\n ref={tabsRef}\n >\n <div className=\"smwb-tabs__scroll-area\" ref={tabListRef} role=\"tablist\" aria-label={ariaLabel}>\n {tabs}\n </div>\n {mounted && (\n <span className=\"smwb-tabs__indicator\" style={indicatorStyle.root}>\n <span className=\"smwb-tabs__indicator-content\" style={indicatorStyle.content} />\n </span>\n )}\n </div>\n </div>\n );\n});\n\nexport { Tab };\nexport type { TabProps };\n"],"names":["defaultIndicatorStyle","Tabs","React","props","ref","className","children","onChange","value","indicatorContent","scrollable","ariaLabel","rest","mounted","setMounted","indicatorStyle","setIndicatorStyle","tabsRef","tabListRef","contentTabsRef","viewNextTabInPixels","getTabsMeta","tabsNode","tabsMeta","rect","tabMeta","tabContentMeta","tab","updateIndicatorState","useEventCallback","startValue","newIndicatorStyle","dStart","dSize","scroll","scrollValue","animation","animate","scrollSelectedIntoView","nextScrollStart","onResize","debounce","window","resizeObserver","_b","_a","child","tabs","index","event","contentRef","setRef","jsx","cn","jsxs"],"mappings":";;;;;;;AA6BA,MAAMA,IAAwB;AAAA,EAC5B,MAAM,CAAA;AAAA,EACN,SAAS,CAAA;AACX,GAEaC,IAAOC,EAAM,WAAsC,SAAcC,GAAOC,GAAK;AACxF,QAAM;AAAA,IACJ,WAAAC;AAAA,IACA,UAAAC;AAAA,IACA,UAAAC;AAAA,IACA,OAAAC;AAAA,IACA,kBAAAC,IAAmB;AAAA,IACnB,YAAAC,IAAa;AAAA,IACb,cAAcC;AAAA,IACd,GAAGC;AAAA,EAAA,IACDT,GACE,CAACU,GAASC,CAAU,IAAIZ,EAAM,SAAS,EAAK,GAC5C,CAACa,GAAgBC,CAAiB,IAAId,EAAM,SAAyBF,CAAqB,GAE1FiB,IAAUf,EAAM,OAAuB,IAAI,GAC3CgB,IAAahB,EAAM,OAAuB,IAAI,GAC9CiB,IAAiBjB,EAAM,OAA0B,EAAE,GAGnDkB,IAAsB,IAEtBC,IAAc,MAAM;AACxB,UAAMC,IAAWL,EAAQ;AAEzB,QAAIM;AAEJ,QAAID,GAAU;AACZ,YAAME,IAAOF,EAAS,sBAAA;AAEtB,MAAAC,IAAW;AAAA,QACT,aAAaD,EAAS;AAAA,QACtB,YAAYA,EAAS;AAAA,QACrB,WAAWA,EAAS;AAAA,QACpB,aAAaA,EAAS;AAAA,QACtB,KAAKE,EAAK;AAAA,QACV,QAAQA,EAAK;AAAA,QACb,MAAMA,EAAK;AAAA,QACX,OAAOA,EAAK;AAAA,MAAA;AAAA,IAEhB;AAEA,QAAIC,IAA0B,MAC1BC,IAAiC;AAKrC,QAHKR,EAAW,WACd,QAAQ,MAAM,iCAAiC,GAE7CI,KAAYJ,EAAW,SAAS;AAClC,YAAMZ,IAAWY,EAAW,QAAQ;AAEpC,UAAIZ,EAAS,SAAS,GAAG;AACvB,cAAMqB,IAAMrB,EAASE,CAAK;AAE1B,QAAAiB,IAAUE,IAAMA,EAAI,sBAAA,IAA0B,MAE1ClB,MACFiB,IAAiBP,EAAe,QAAQX,CAAK,IAAIW,EAAe,QAAQX,CAAK,EAAE,sBAAA,IAA0B;AAAA,MAE7G;AAAA,IACF;AACA,WAAO,EAAE,UAAAe,GAAU,SAAAE,GAAS,gBAAAC,EAAA;AAAA,EAC9B,GAEME,IAAuBC,EAAiB,MAAM;AAClD,UAAM,EAAE,UAAAN,GAAU,SAAAE,GAAS,gBAAAC,EAAA,IAAmBL,EAAA;AAC9C,QAAIS,IAAa;AAEjB,IAAIL,KAAWF,MACbO,IAAa,KAAKL,EAAQ,OAAOF,EAAS,OAAOA,EAAS;AAG5D,UAAMQ,IAAoC;AAAA,MACxC,MAAM;AAAA,QACJ,MAAMD;AAAA,QACN,OAAOL,IAAUA,EAAQ,QAAQ;AAAA,MAAA;AAAA,IACnC;AASF,QANIhB,KAAoBiB,MACtBK,EAAkB,UAAU;AAAA,MAC1B,OAAOL,EAAe;AAAA,IAAA,IAItB,MAAMX,EAAe,KAAK,IAAI,KAAK,MAAMA,EAAe,KAAK,KAAK;AACpE,MAAAC,EAAkBe,CAAiB;AAAA,SAC9B;AACL,YAAMC,IAAS,KAAK,IAAIjB,EAAe,KAAK,OAAOgB,EAAkB,KAAK,IAAI,GACxEE,IAAQ,KAAK,IAAIlB,EAAe,KAAK,QAAQgB,EAAkB,KAAK,KAAK;AAE/E,OAAIC,KAAU,KAAKC,KAAS,MAC1BjB,EAAkBe,CAAiB;AAAA,IAEvC;AAAA,EACF,CAAC,GAEKG,IAAS,CAACC,GAAqB,EAAE,WAAAC,IAAY,GAAA,IAAS,OAAO;AACjE,IAAKnB,EAAQ,YAGTmB,IACFC,EAAQpB,EAAQ,SAAS,cAAckB,GAAa;AAAA,MAClD,UAAU;AAAA,IAAA,CACX,IAEDlB,EAAQ,QAAQ,aAAakB;AAAA,EAEjC,GAEMG,IAAyBT,EAAiB,CAACO,MAAuB;AACtE,UAAM,EAAE,UAAAb,GAAU,SAAAE,EAAA,IAAYJ,EAAA;AAE9B,QAAI,GAACI,KAAW,CAACF;AAIjB,UAAIE,EAAQ,OAAOF,EAAS,MAAM;AAEhC,cAAMgB,IAAkBhB,EAAS,cAAcE,EAAQ,OAAOF,EAAS;AACvE,QAAAW,EAAOK,IAAkBnB,GAAqB,EAAE,WAAAgB,EAAA,CAAW;AAAA,MAC7D,WAAWX,EAAQ,QAAQF,EAAS,OAAO;AAEzC,cAAMgB,IAAkBhB,EAAS,cAAcE,EAAQ,QAAQF,EAAS;AACxE,QAAAW,EAAOK,IAAkBnB,GAAqB,EAAE,WAAAgB,EAAA,CAAW;AAAA,MAC7D;AAAA;AAAA,EACF,CAAC;AAED,EAAAlC,EAAM,UAAU,MAAM;AACpB,IAAAY,EAAW,EAAI;AAAA,EACjB,GAAG,CAAA,CAAE,GAELZ,EAAM,UAAU,MAAM;AACpB,IAAA0B,EAAA;AAAA,EACF,CAAC,GAED1B,EAAM,UAAU,MAAM;;AACpB,UAAMsC,IAAWC,EAAS,MAAM;AAC9B,MAAIxB,EAAQ,WACVW,EAAA;AAAA,IAEJ,GAAG,GAAG;AACN,QAAI,CAACX,EAAQ,WAAW,CAACA,EAAQ,QAAQ,cAAc,aAAa;AAClE,cAAQ,MAAM,wDAAwD;AACtE;AAAA,IACF;AACA,UAAMyB,IAAqCzB,EAAQ,QAAQ,cAAc;AAEzE,IAAAyB,EAAO,iBAAiB,UAAUF,CAAQ;AAE1C,QAAIG;AAEJ,WAAI,OAAO,kBAAmB,gBAC5BA,IAAiB,IAAI,eAAeH,CAAQ,GAE5C,MAAM,MAAKI,KAAAC,IAAA3B,EAAW,YAAX,gBAAA2B,EAAoB,aAApB,OAAAD,IAAgC,EAAE,EAAE,QAAQ,CAACE,MAAU;AAChE,MAAAH,EAAe,QAAQG,CAAK;AAAA,IAC9B,CAAC,IAGI,MAAM;AACX,MAAAN,EAAS,OAAA,GAETE,EAAO,oBAAoB,UAAUF,CAAQ,GAEzCG,KACFA,EAAe,WAAA;AAAA,IAEnB;AAAA,EACF,GAAG,CAACf,CAAoB,CAAC,GAEzB1B,EAAM,UAAU,MAAM;AAEpB,IAAAoC,EAAuBtC,MAA0Be,CAAc;AAAA,EACjE,GAAG,CAACuB,GAAwBvB,CAAc,CAAC;AAE3C,QAAMgC,IAAO7C,EAAM,SAAS;AAAA,IAC1BI;AAAA,IACA,CAACwC,GAAqCE,MACpC9C,EAAM,aAAa4C,GAAO;AAAA,MACxB,UAAUtC,MAAUwC;AAAA,MACpB,SAAS,CAACC,MAA+C;AACvD,QAAA1C,EAAS0C,GAAOD,CAAK;AAAA,MACvB;AAAA,MACA,GAAIvC,KAAoB;AAAA,QACtB,YAAY,CAACL,MAAyB;AACpC,gBAAM,EAAE,YAAA8C,MAAeJ,EAAM;AAE7B,UAAA3B,EAAe,QAAQ,KAAKf,CAAG,GAE3B8C,KACFC,EAAOD,GAAkC9C,CAAG;AAAA,QAEhD;AAAA,MAAA;AAAA,IACF,CACW;AAAA,EAAA;AAGjB,SACE,gBAAAgD,EAAC,OAAA,EAAI,WAAWC,EAAG,aAAahD,CAAS,GAAG,MAAM,YAAY,KAAAD,GAAW,GAAGQ,GAC1E,UAAA,gBAAA0C;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWD,EAAG,uBAAuB;AAAA,QACnC,mCAAmC3C;AAAA,MAAA,CACpC;AAAA,MACD,KAAKO;AAAA,MAEL,UAAA;AAAA,QAAA,gBAAAmC,EAAC,OAAA,EAAI,WAAU,0BAAyB,KAAKlC,GAAY,MAAK,WAAU,cAAYP,GACjF,UAAAoC,EAAA,CACH;AAAA,QACClC,KACC,gBAAAuC,EAAC,QAAA,EAAK,WAAU,wBAAuB,OAAOrC,EAAe,MAC3D,UAAA,gBAAAqC,EAAC,UAAK,WAAU,gCAA+B,OAAOrC,EAAe,SAAS,EAAA,CAChF;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,GAGN;AAEJ,CAAC;"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { useState as m, useRef as i, useCallback as v } from "react";
|
|
2
|
+
function k({
|
|
3
|
+
value: o,
|
|
4
|
+
defaultValue: f,
|
|
5
|
+
onChange: c
|
|
6
|
+
}) {
|
|
7
|
+
const r = o !== void 0, [a, p] = m(f), e = r ? o : a, s = i(e);
|
|
8
|
+
s.current = e;
|
|
9
|
+
const t = i(c);
|
|
10
|
+
t.current = c;
|
|
11
|
+
const d = v(
|
|
12
|
+
(n) => {
|
|
13
|
+
var l;
|
|
14
|
+
const b = s.current, u = typeof n == "function" ? n(b) : n;
|
|
15
|
+
r || p(u), (l = t.current) == null || l.call(t, u);
|
|
16
|
+
},
|
|
17
|
+
[r]
|
|
18
|
+
);
|
|
19
|
+
return [e, d];
|
|
20
|
+
}
|
|
21
|
+
export {
|
|
22
|
+
k as useControllableState
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=useControllableState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useControllableState.js","sources":["../../../src/hooks/useControllableState.ts"],"sourcesContent":["import { useCallback, useRef, useState } from \"react\";\n\ntype Updater<T> = T | ((prev: T) => T);\n\nexport interface UseControllableStateParams<T> {\n /** Controlled value. When defined the hook is in controlled mode. */\n value?: T;\n /** Initial value for uncontrolled mode. */\n defaultValue: T;\n /** Called whenever the value should change (both modes). */\n onChange?: (next: T) => void;\n}\n\n/**\n * Controlled/uncontrolled state helper.\n *\n * - If `value` is provided the hook is controlled: it always returns `value`\n * and `setValue` only calls `onChange`.\n * - Otherwise it keeps internal state seeded from `defaultValue` and also\n * calls `onChange`.\n *\n * @returns `[value, setValue]`\n */\nexport function useControllableState<T>({\n value,\n defaultValue,\n onChange,\n}: UseControllableStateParams<T>): [T, (next: Updater<T>) => void] {\n const isControlled = value !== undefined;\n const [internal, setInternal] = useState<T>(defaultValue);\n\n const current = isControlled ? (value as T) : internal;\n\n // keep latest value / onChange without resubscribing consumers\n const currentRef = useRef(current);\n currentRef.current = current;\n const onChangeRef = useRef(onChange);\n onChangeRef.current = onChange;\n\n const setValue = useCallback(\n (next: Updater<T>) => {\n const prev = currentRef.current;\n const resolved = typeof next === \"function\" ? (next as (p: T) => T)(prev) : next;\n\n if (!isControlled) {\n setInternal(resolved);\n }\n onChangeRef.current?.(resolved);\n },\n [isControlled]\n );\n\n return [current, setValue];\n}\n\nexport default useControllableState;\n"],"names":["useControllableState","value","defaultValue","onChange","isControlled","internal","setInternal","useState","current","currentRef","useRef","onChangeRef","setValue","useCallback","next","prev","resolved","_a"],"mappings":";AAuBO,SAASA,EAAwB;AAAA,EACtC,OAAAC;AAAA,EACA,cAAAC;AAAA,EACA,UAAAC;AACF,GAAmE;AACjE,QAAMC,IAAeH,MAAU,QACzB,CAACI,GAAUC,CAAW,IAAIC,EAAYL,CAAY,GAElDM,IAAUJ,IAAgBH,IAAcI,GAGxCI,IAAaC,EAAOF,CAAO;AACjC,EAAAC,EAAW,UAAUD;AACrB,QAAMG,IAAcD,EAAOP,CAAQ;AACnC,EAAAQ,EAAY,UAAUR;AAEtB,QAAMS,IAAWC;AAAA,IACf,CAACC,MAAqB;;AACpB,YAAMC,IAAON,EAAW,SAClBO,IAAW,OAAOF,KAAS,aAAcA,EAAqBC,CAAI,IAAID;AAE5E,MAAKV,KACHE,EAAYU,CAAQ,IAEtBC,IAAAN,EAAY,YAAZ,QAAAM,EAAA,KAAAN,GAAsBK;AAAA,IACxB;AAAA,IACA,CAACZ,CAAY;AAAA,EAAA;AAGf,SAAO,CAACI,GAASI,CAAQ;AAC3B;"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import e from "react";
|
|
2
|
+
function a(t) {
|
|
3
|
+
const r = e.useRef(t);
|
|
4
|
+
return e.useLayoutEffect(() => {
|
|
5
|
+
r.current = t;
|
|
6
|
+
}), e.useCallback((...u) => (0, r.current)(...u), []);
|
|
7
|
+
}
|
|
8
|
+
export {
|
|
9
|
+
a as useEventCallback
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=useEventCallback.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useEventCallback.js","sources":["../../../src/hooks/useEventCallback.ts"],"sourcesContent":["import React from \"react\";\n\n/**\n * https://github.com/facebook/react/issues/14099#issuecomment-440013892\n */\nexport function useEventCallback<Args extends unknown[], Return>(\n fn: (...args: Args) => Return\n): (...args: Args) => Return {\n const ref = React.useRef(fn);\n\n React.useLayoutEffect(() => {\n ref.current = fn;\n });\n\n return React.useCallback((...args: Args) => (0, ref.current)(...args), []);\n}\n"],"names":["useEventCallback","fn","ref","React","args"],"mappings":";AAKO,SAASA,EACdC,GAC2B;AAC3B,QAAMC,IAAMC,EAAM,OAAOF,CAAE;AAE3B,SAAAE,EAAM,gBAAgB,MAAM;AAC1B,IAAAD,EAAI,UAAUD;AAAA,EAChB,CAAC,GAEME,EAAM,YAAY,IAAIC,UAAmBF,EAAI,SAAS,GAAGE,CAAI,GAAG,EAAE;AAC3E;"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { useRef as m, useEffect as p } from "react";
|
|
2
|
+
const b = 'a[href],button:not([disabled]),textarea:not([disabled]),input:not([disabled]),select:not([disabled]),[tabindex]:not([tabindex="-1"])';
|
|
3
|
+
function E(c, { active: s, restoreFocus: f = !0, autoFocus: l = !0 }) {
|
|
4
|
+
const r = m(null);
|
|
5
|
+
p(() => {
|
|
6
|
+
if (!s)
|
|
7
|
+
return;
|
|
8
|
+
const t = c.current;
|
|
9
|
+
if (!t)
|
|
10
|
+
return;
|
|
11
|
+
r.current = document.activeElement;
|
|
12
|
+
const i = () => Array.from(t.querySelectorAll(b)).filter(
|
|
13
|
+
(e) => e.offsetParent !== null || e === document.activeElement
|
|
14
|
+
);
|
|
15
|
+
if (l) {
|
|
16
|
+
const e = i()[0];
|
|
17
|
+
(e != null ? e : t).focus({ preventScroll: !0 });
|
|
18
|
+
}
|
|
19
|
+
const a = (e) => {
|
|
20
|
+
if (e.key !== "Tab")
|
|
21
|
+
return;
|
|
22
|
+
const n = i();
|
|
23
|
+
if (n.length === 0) {
|
|
24
|
+
e.preventDefault();
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
const o = n[0], d = n[n.length - 1], u = document.activeElement;
|
|
28
|
+
e.shiftKey && u === o ? (e.preventDefault(), d.focus()) : !e.shiftKey && u === d ? (e.preventDefault(), o.focus()) : t.contains(u) || (e.preventDefault(), o.focus());
|
|
29
|
+
};
|
|
30
|
+
return document.addEventListener("keydown", a, !0), () => {
|
|
31
|
+
document.removeEventListener("keydown", a, !0), f && r.current && r.current.focus({ preventScroll: !0 });
|
|
32
|
+
};
|
|
33
|
+
}, [s, l, f, c]);
|
|
34
|
+
}
|
|
35
|
+
export {
|
|
36
|
+
E as useFocusTrap
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=useFocusTrap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useFocusTrap.js","sources":["../../../src/hooks/useFocusTrap.ts"],"sourcesContent":["import { RefObject, useEffect, useRef } from \"react\";\n\nconst FOCUSABLE =\n 'a[href],button:not([disabled]),textarea:not([disabled]),input:not([disabled]),select:not([disabled]),[tabindex]:not([tabindex=\"-1\"])';\n\nexport interface UseFocusTrapOptions {\n /** Trap is active only while true. */\n active: boolean;\n /** Restore focus to the previously focused element on deactivate. */\n restoreFocus?: boolean;\n /** Focus the first focusable element on activate. */\n autoFocus?: boolean;\n}\n\n/**\n * Confines Tab/Shift+Tab focus within `containerRef` while `active`.\n * Restores focus to the previously focused element on teardown.\n */\nexport function useFocusTrap<T extends HTMLElement>(\n containerRef: RefObject<T>,\n { active, restoreFocus = true, autoFocus = true }: UseFocusTrapOptions\n): void {\n const prevFocused = useRef<HTMLElement | null>(null);\n\n useEffect(() => {\n if (!active) {\n return;\n }\n const container = containerRef.current;\n if (!container) {\n return;\n }\n\n prevFocused.current = document.activeElement as HTMLElement | null;\n\n const focusables = () =>\n Array.from(container.querySelectorAll<HTMLElement>(FOCUSABLE)).filter(\n (el) => el.offsetParent !== null || el === document.activeElement\n );\n\n if (autoFocus) {\n const first = focusables()[0];\n (first ?? container).focus({ preventScroll: true });\n }\n\n const onKeyDown = (event: KeyboardEvent) => {\n if (event.key !== \"Tab\") {\n return;\n }\n const items = focusables();\n if (items.length === 0) {\n event.preventDefault();\n return;\n }\n const first = items[0];\n const last = items[items.length - 1];\n const activeEl = document.activeElement;\n\n if (event.shiftKey && activeEl === first) {\n event.preventDefault();\n last.focus();\n } else if (!event.shiftKey && activeEl === last) {\n event.preventDefault();\n first.focus();\n } else if (!container.contains(activeEl)) {\n event.preventDefault();\n first.focus();\n }\n };\n\n document.addEventListener(\"keydown\", onKeyDown, true);\n return () => {\n document.removeEventListener(\"keydown\", onKeyDown, true);\n if (restoreFocus && prevFocused.current) {\n prevFocused.current.focus({ preventScroll: true });\n }\n };\n }, [active, autoFocus, restoreFocus, containerRef]);\n}\n\nexport default useFocusTrap;\n"],"names":["FOCUSABLE","useFocusTrap","containerRef","active","restoreFocus","autoFocus","prevFocused","useRef","useEffect","container","focusables","el","first","onKeyDown","event","items","last","activeEl"],"mappings":";AAEA,MAAMA,IACJ;AAeK,SAASC,EACdC,GACA,EAAE,QAAAC,GAAQ,cAAAC,IAAe,IAAM,WAAAC,IAAY,MACrC;AACN,QAAMC,IAAcC,EAA2B,IAAI;AAEnD,EAAAC,EAAU,MAAM;AACd,QAAI,CAACL;AACH;AAEF,UAAMM,IAAYP,EAAa;AAC/B,QAAI,CAACO;AACH;AAGF,IAAAH,EAAY,UAAU,SAAS;AAE/B,UAAMI,IAAa,MACjB,MAAM,KAAKD,EAAU,iBAA8BT,CAAS,CAAC,EAAE;AAAA,MAC7D,CAACW,MAAOA,EAAG,iBAAiB,QAAQA,MAAO,SAAS;AAAA,IAAA;AAGxD,QAAIN,GAAW;AACb,YAAMO,IAAQF,EAAA,EAAa,CAAC;AAC5B,OAACE,KAAA,OAAAA,IAASH,GAAW,MAAM,EAAE,eAAe,IAAM;AAAA,IACpD;AAEA,UAAMI,IAAY,CAACC,MAAyB;AAC1C,UAAIA,EAAM,QAAQ;AAChB;AAEF,YAAMC,IAAQL,EAAA;AACd,UAAIK,EAAM,WAAW,GAAG;AACtB,QAAAD,EAAM,eAAA;AACN;AAAA,MACF;AACA,YAAMF,IAAQG,EAAM,CAAC,GACfC,IAAOD,EAAMA,EAAM,SAAS,CAAC,GAC7BE,IAAW,SAAS;AAE1B,MAAIH,EAAM,YAAYG,MAAaL,KACjCE,EAAM,eAAA,GACNE,EAAK,MAAA,KACI,CAACF,EAAM,YAAYG,MAAaD,KACzCF,EAAM,eAAA,GACNF,EAAM,MAAA,KACIH,EAAU,SAASQ,CAAQ,MACrCH,EAAM,eAAA,GACNF,EAAM,MAAA;AAAA,IAEV;AAEA,oBAAS,iBAAiB,WAAWC,GAAW,EAAI,GAC7C,MAAM;AACX,eAAS,oBAAoB,WAAWA,GAAW,EAAI,GACnDT,KAAgBE,EAAY,WAC9BA,EAAY,QAAQ,MAAM,EAAE,eAAe,IAAM;AAAA,IAErD;AAAA,EACF,GAAG,CAACH,GAAQE,GAAWD,GAAcF,CAAY,CAAC;AACpD;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import t from "react";
|
|
2
|
+
import { setRef as u } from "../utils/setRef.js";
|
|
3
|
+
function m(...r) {
|
|
4
|
+
return t.useMemo(() => r.every((e) => e == null) ? null : (e) => {
|
|
5
|
+
r.forEach((o) => {
|
|
6
|
+
u(o, e);
|
|
7
|
+
});
|
|
8
|
+
}, r);
|
|
9
|
+
}
|
|
10
|
+
export {
|
|
11
|
+
m as useForkRef
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=useForkRef.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useForkRef.js","sources":["../../../src/hooks/useForkRef.ts"],"sourcesContent":["import React from \"react\";\nimport { setRef } from \"../utils/setRef\";\n\nexport function useForkRef<Instance>(\n ...refs: Array<React.Ref<Instance> | undefined>\n): React.RefCallback<Instance> | null {\n /**\n * This will create a new function if the refs passed to this hook change and are all defined.\n * This means react will call the old forkRef with `null` and the new forkRef\n * with the ref. Cleanup naturally emerges from this behavior.\n */\n return React.useMemo(() => {\n if (refs.every((ref) => ref == null)) {\n return null;\n }\n\n return (instance) => {\n refs.forEach((ref) => {\n setRef(ref, instance);\n });\n };\n // TODO need qualification\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, refs);\n}\n"],"names":["useForkRef","refs","React","ref","instance","setRef"],"mappings":";;AAGO,SAASA,KACXC,GACiC;AAMpC,SAAOC,EAAM,QAAQ,MACfD,EAAK,MAAM,CAACE,MAAQA,KAAO,IAAI,IAC1B,OAGF,CAACC,MAAa;AACnB,IAAAH,EAAK,QAAQ,CAACE,MAAQ;AACpB,MAAAE,EAAOF,GAAKC,CAAQ;AAAA,IACtB,CAAC;AAAA,EACH,GAGCH,CAAI;AACT;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useId.js","sources":["../../../src/hooks/useId.ts"],"sourcesContent":["import { useId as useReactId } from \"react\";\n\n/**\n * Stable unique id for ARIA wiring (label htmlFor, aria-describedby,\n * aria-controls, …). Wraps React 18's `useId` and:\n * - returns the caller-supplied `idProp` verbatim when provided, so an\n * explicit `id` always wins;\n * - otherwise produces a deterministic, SSR-safe id, optionally prefixed.\n */\nexport function useId(idProp?: string, prefix = \"smwb\"): string {\n const generated = useReactId();\n return idProp ?? `${prefix}-${generated.replace(/[:]/g, \"\")}`;\n}\n\nexport default useId;\n"],"names":["useId","idProp","prefix","generated","useReactId"],"mappings":";AASO,SAASA,EAAMC,GAAiBC,IAAS,QAAgB;AAC9D,QAAMC,IAAYC,EAAA;AAClB,SAAOH,KAAA,OAAAA,IAAU,GAAGC,CAAM,IAAIC,EAAU,QAAQ,QAAQ,EAAE,CAAC;AAC7D;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { useState as a, useCallback as s } from "react";
|
|
2
|
+
const r = () => {
|
|
3
|
+
const [t, e] = a(!1), o = s(() => {
|
|
4
|
+
e(!1);
|
|
5
|
+
}, []), n = s(() => {
|
|
6
|
+
e(!0);
|
|
7
|
+
}, []);
|
|
8
|
+
return { onClose: o, onOpen: n, isOpen: t };
|
|
9
|
+
};
|
|
10
|
+
export {
|
|
11
|
+
r as useModalState
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=useModalState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useModalState.js","sources":["../../../src/hooks/useModalState.ts"],"sourcesContent":["import { useCallback, useState } from \"react\";\n\nexport const useModalState = () => {\n const [isOpen, setIsOpen] = useState(false);\n\n const onClose = useCallback(() => {\n setIsOpen(false);\n }, []);\n\n const onOpen = useCallback(() => {\n setIsOpen(true);\n }, []);\n\n return { onClose, onOpen, isOpen };\n};\n"],"names":["useModalState","isOpen","setIsOpen","useState","onClose","useCallback","onOpen"],"mappings":";AAEO,MAAMA,IAAgB,MAAM;AACjC,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAAS,EAAK,GAEpCC,IAAUC,EAAY,MAAM;AAChC,IAAAH,EAAU,EAAK;AAAA,EACjB,GAAG,CAAA,CAAE,GAECI,IAASD,EAAY,MAAM;AAC/B,IAAAH,EAAU,EAAI;AAAA,EAChB,GAAG,CAAA,CAAE;AAEL,SAAO,EAAE,SAAAE,GAAS,QAAAE,GAAQ,QAAAL,EAAA;AAC5B;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useObservable.js","sources":["../../../src/hooks/useObservable.ts"],"sourcesContent":["import { useState, useEffect } from \"react\";\nimport { Observable } from \"../utils/observable\";\nexport function useObservable<T>(observable: Observable<T>): T {\n const [val, setVal] = useState<T>(observable.value);\n useEffect(() => {\n setVal(observable.value);\n return observable.subscribe(setVal);\n }, [observable]);\n return val;\n}\n"],"names":["useObservable","observable","val","setVal","useState","useEffect"],"mappings":";AAEO,SAASA,EAAiBC,GAA8B;AAC7D,QAAM,CAACC,GAAKC,CAAM,IAAIC,EAAYH,EAAW,KAAK;AAClD,SAAAI,EAAU,OACRF,EAAOF,EAAW,KAAK,GAChBA,EAAW,UAAUE,CAAM,IACjC,CAACF,CAAU,CAAC,GACRC;AACT;"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { useCallback as g } from "react";
|
|
2
|
+
function z({
|
|
3
|
+
count: f,
|
|
4
|
+
activeIndex: k,
|
|
5
|
+
onMove: m,
|
|
6
|
+
orientation: e = "horizontal",
|
|
7
|
+
loop: o = !0,
|
|
8
|
+
isDisabled: t
|
|
9
|
+
}) {
|
|
10
|
+
return g(
|
|
11
|
+
(l) => {
|
|
12
|
+
if (f === 0)
|
|
13
|
+
return;
|
|
14
|
+
const y = e === "horizontal" || e === "both", p = e === "vertical" || e === "both", s = y && l.key === "ArrowRight" || p && l.key === "ArrowDown", w = y && l.key === "ArrowLeft" || p && l.key === "ArrowUp";
|
|
15
|
+
let r = null;
|
|
16
|
+
if (s ? r = k + 1 : w ? r = k - 1 : l.key === "Home" ? r = 0 : l.key === "End" && (r = f - 1), r === null)
|
|
17
|
+
return;
|
|
18
|
+
const u = (h) => o ? (h + f) % f : Math.max(0, Math.min(f - 1, h));
|
|
19
|
+
if (r = u(r), t) {
|
|
20
|
+
let h = 0;
|
|
21
|
+
const a = s || l.key === "Home" ? 1 : -1;
|
|
22
|
+
for (; t(r) && h < f; )
|
|
23
|
+
r = u(r + a), h += 1;
|
|
24
|
+
if (t(r))
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
l.preventDefault(), m(r);
|
|
28
|
+
},
|
|
29
|
+
[f, k, m, e, o, t]
|
|
30
|
+
);
|
|
31
|
+
}
|
|
32
|
+
export {
|
|
33
|
+
z as useRovingTabIndex
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=useRovingTabIndex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRovingTabIndex.js","sources":["../../../src/hooks/useRovingTabIndex.ts"],"sourcesContent":["import { KeyboardEvent, useCallback } from \"react\";\n\nexport interface UseRovingTabIndexOptions {\n /** Number of focusable items. */\n count: number;\n /** Current active index. */\n activeIndex: number;\n /** Called with the next index when navigation keys are pressed. */\n onMove: (nextIndex: number) => void;\n /** Arrow-key axis. */\n orientation?: \"horizontal\" | \"vertical\" | \"both\";\n /** Wrap around the ends (default true). */\n loop?: boolean;\n /** Optional predicate to skip disabled items. */\n isDisabled?: (index: number) => boolean;\n}\n\n/**\n * Keyboard navigation for composite widgets (tabs, menus, trees, pagination).\n * Returns an `onKeyDown` handler implementing Arrow/Home/End with optional\n * looping and disabled-skipping. The consumer owns focus/activation.\n */\nexport function useRovingTabIndex({\n count,\n activeIndex,\n onMove,\n orientation = \"horizontal\",\n loop = true,\n isDisabled,\n}: UseRovingTabIndexOptions) {\n return useCallback(\n (event: KeyboardEvent) => {\n if (count === 0) {\n return;\n }\n const horiz = orientation === \"horizontal\" || orientation === \"both\";\n const vert = orientation === \"vertical\" || orientation === \"both\";\n const next = (horiz && event.key === \"ArrowRight\") || (vert && event.key === \"ArrowDown\");\n const prev = (horiz && event.key === \"ArrowLeft\") || (vert && event.key === \"ArrowUp\");\n\n let target: number | null = null;\n if (next) {\n target = activeIndex + 1;\n } else if (prev) {\n target = activeIndex - 1;\n } else if (event.key === \"Home\") {\n target = 0;\n } else if (event.key === \"End\") {\n target = count - 1;\n }\n if (target === null) {\n return;\n }\n\n const clamp = (i: number) => (loop ? (i + count) % count : Math.max(0, Math.min(count - 1, i)));\n target = clamp(target);\n\n if (isDisabled) {\n let guard = 0;\n const step = next || event.key === \"Home\" ? 1 : -1;\n while (isDisabled(target) && guard < count) {\n target = clamp(target + step);\n guard += 1;\n }\n if (isDisabled(target)) {\n return;\n }\n }\n\n event.preventDefault();\n onMove(target);\n },\n [count, activeIndex, onMove, orientation, loop, isDisabled]\n );\n}\n\nexport default useRovingTabIndex;\n"],"names":["useRovingTabIndex","count","activeIndex","onMove","orientation","loop","isDisabled","useCallback","event","horiz","vert","next","prev","target","clamp","i","guard","step"],"mappings":";AAsBO,SAASA,EAAkB;AAAA,EAChC,OAAAC;AAAA,EACA,aAAAC;AAAA,EACA,QAAAC;AAAA,EACA,aAAAC,IAAc;AAAA,EACd,MAAAC,IAAO;AAAA,EACP,YAAAC;AACF,GAA6B;AAC3B,SAAOC;AAAA,IACL,CAACC,MAAyB;AACxB,UAAIP,MAAU;AACZ;AAEF,YAAMQ,IAAQL,MAAgB,gBAAgBA,MAAgB,QACxDM,IAAON,MAAgB,cAAcA,MAAgB,QACrDO,IAAQF,KAASD,EAAM,QAAQ,gBAAkBE,KAAQF,EAAM,QAAQ,aACvEI,IAAQH,KAASD,EAAM,QAAQ,eAAiBE,KAAQF,EAAM,QAAQ;AAE5E,UAAIK,IAAwB;AAU5B,UATIF,IACFE,IAASX,IAAc,IACdU,IACTC,IAASX,IAAc,IACdM,EAAM,QAAQ,SACvBK,IAAS,IACAL,EAAM,QAAQ,UACvBK,IAASZ,IAAQ,IAEfY,MAAW;AACb;AAGF,YAAMC,IAAQ,CAACC,MAAeV,KAAQU,IAAId,KAASA,IAAQ,KAAK,IAAI,GAAG,KAAK,IAAIA,IAAQ,GAAGc,CAAC,CAAC;AAG7F,UAFAF,IAASC,EAAMD,CAAM,GAEjBP,GAAY;AACd,YAAIU,IAAQ;AACZ,cAAMC,IAAON,KAAQH,EAAM,QAAQ,SAAS,IAAI;AAChD,eAAOF,EAAWO,CAAM,KAAKG,IAAQf;AACnC,UAAAY,IAASC,EAAMD,IAASI,CAAI,GAC5BD,KAAS;AAEX,YAAIV,EAAWO,CAAM;AACnB;AAAA,MAEJ;AAEA,MAAAL,EAAM,eAAA,GACNL,EAAOU,CAAM;AAAA,IACf;AAAA,IACA,CAACZ,GAAOC,GAAaC,GAAQC,GAAaC,GAAMC,CAAU;AAAA,EAAA;AAE9D;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSafeLayoutEffect.js","sources":["../../../src/hooks/useSafeLayoutEffect.ts"],"sourcesContent":["import React from \"react\";\n\nexport const useSafeLayoutEffect = typeof window === \"undefined\" ? React.useEffect : React.useLayoutEffect;\n"],"names":["useSafeLayoutEffect","React"],"mappings":";AAEO,MAAMA,IAAsB,OAAO,UAAW,cAAcC,EAAM,YAAYA,EAAM;"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { useRef as n, useLayoutEffect as c, useEffect as l } from "react";
|
|
2
|
+
import { Observable as d } from "../utils/observable.js";
|
|
3
|
+
import { useObservable as u } from "./useObservable.js";
|
|
4
|
+
var i = /* @__PURE__ */ ((t) => (t.dark = "dark", t.light = "light", t))(i || {});
|
|
5
|
+
const s = "smui-theme", a = new d(
|
|
6
|
+
"light"
|
|
7
|
+
/* light */
|
|
8
|
+
), E = () => {
|
|
9
|
+
const t = u(a), r = n(!0);
|
|
10
|
+
c(() => {
|
|
11
|
+
const e = localStorage.getItem(s);
|
|
12
|
+
if (r.current)
|
|
13
|
+
if (r.current = !1, e)
|
|
14
|
+
a.setValue(e), document.documentElement.dataset.theme = e;
|
|
15
|
+
else {
|
|
16
|
+
const o = window.matchMedia("(prefers-color-scheme: light)").matches ? "light" : "dark";
|
|
17
|
+
e !== t && a.setValue(o), localStorage.setItem(s, o), document.documentElement.dataset.theme = o;
|
|
18
|
+
}
|
|
19
|
+
}, [t]);
|
|
20
|
+
const m = function(e) {
|
|
21
|
+
if (e.storageArea === localStorage) {
|
|
22
|
+
const o = localStorage.getItem(s);
|
|
23
|
+
document.documentElement.dataset.theme = o, a.setValue(o);
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
return l(() => (window.addEventListener("storage", m), () => window.removeEventListener("storage", m)), []), {
|
|
27
|
+
theme: t,
|
|
28
|
+
setTheme: (e) => {
|
|
29
|
+
localStorage.setItem(s, e), a.setValue.bind(a)(e), document.documentElement.dataset.theme = e;
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
export {
|
|
34
|
+
i as Theme,
|
|
35
|
+
E as default
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=useTheme.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTheme.js","sources":["../../../src/hooks/useTheme.ts"],"sourcesContent":["import { useEffect, useLayoutEffect, useRef } from \"react\";\nimport { Observable } from \"../utils/observable\";\nimport { useObservable } from \"./useObservable\";\n\nexport enum Theme {\n dark = \"dark\",\n light = \"light\",\n}\n\nconst themeStorageKey = \"smui-theme\";\n\nconst themeObservable = new Observable<Theme>(Theme.light);\n\nconst useTheme = () => {\n const theme = useObservable(themeObservable);\n // Начальная инициализация\n const firstUpdate = useRef(true);\n useLayoutEffect(() => {\n const savedTheme = localStorage.getItem(themeStorageKey) as Theme;\n if (firstUpdate.current) {\n firstUpdate.current = false;\n if (savedTheme) {\n themeObservable.setValue(savedTheme);\n document.documentElement.dataset.theme = savedTheme;\n } else {\n const defaultTheme: Theme = window.matchMedia(\"(prefers-color-scheme: light)\").matches\n ? Theme.light\n : Theme.dark;\n if (savedTheme !== theme) {\n themeObservable.setValue(defaultTheme);\n }\n localStorage.setItem(themeStorageKey, defaultTheme);\n document.documentElement.dataset.theme = defaultTheme;\n }\n }\n }, [theme]);\n\n const themeListener = function (event: StorageEvent) {\n if (event.storageArea === localStorage) {\n const savedTheme = localStorage.getItem(themeStorageKey) as Theme;\n document.documentElement.dataset.theme = savedTheme;\n themeObservable.setValue(savedTheme);\n }\n };\n\n useEffect(() => {\n window.addEventListener(\"storage\", themeListener);\n return () => window.removeEventListener(\"storage\", themeListener);\n }, []);\n\n return {\n theme,\n setTheme: (value: Theme) => {\n localStorage.setItem(themeStorageKey, value);\n themeObservable.setValue.bind(themeObservable)(value);\n document.documentElement.dataset.theme = value;\n },\n };\n};\n\nexport default useTheme;\n"],"names":["Theme","themeStorageKey","themeObservable","Observable","useTheme","theme","useObservable","firstUpdate","useRef","useLayoutEffect","savedTheme","defaultTheme","themeListener","event","useEffect","value"],"mappings":";;;AAIO,IAAKA,sBAAAA,OACVA,EAAA,OAAO,QACPA,EAAA,QAAQ,SAFEA,IAAAA,KAAA,CAAA,CAAA;AAKZ,MAAMC,IAAkB,cAElBC,IAAkB,IAAIC;AAAA,EAAkB;AAAA;AAAA,GAExCC,IAAW,MAAM;AACrB,QAAMC,IAAQC,EAAcJ,CAAe,GAErCK,IAAcC,EAAO,EAAI;AAC/B,EAAAC,EAAgB,MAAM;AACpB,UAAMC,IAAa,aAAa,QAAQT,CAAe;AACvD,QAAIM,EAAY;AAEd,UADAA,EAAY,UAAU,IAClBG;AACF,QAAAR,EAAgB,SAASQ,CAAU,GACnC,SAAS,gBAAgB,QAAQ,QAAQA;AAAA,WACpC;AACL,cAAMC,IAAsB,OAAO,WAAW,+BAA+B,EAAE,UAC3E,UACA;AACJ,QAAID,MAAeL,KACjBH,EAAgB,SAASS,CAAY,GAEvC,aAAa,QAAQV,GAAiBU,CAAY,GAClD,SAAS,gBAAgB,QAAQ,QAAQA;AAAA,MAC3C;AAAA,EAEJ,GAAG,CAACN,CAAK,CAAC;AAEV,QAAMO,IAAgB,SAAUC,GAAqB;AACnD,QAAIA,EAAM,gBAAgB,cAAc;AACtC,YAAMH,IAAa,aAAa,QAAQT,CAAe;AACvD,eAAS,gBAAgB,QAAQ,QAAQS,GACzCR,EAAgB,SAASQ,CAAU;AAAA,IACrC;AAAA,EACF;AAEA,SAAAI,EAAU,OACR,OAAO,iBAAiB,WAAWF,CAAa,GACzC,MAAM,OAAO,oBAAoB,WAAWA,CAAa,IAC/D,CAAA,CAAE,GAEE;AAAA,IACL,OAAAP;AAAA,IACA,UAAU,CAACU,MAAiB;AAC1B,mBAAa,QAAQd,GAAiBc,CAAK,GAC3Cb,EAAgB,SAAS,KAAKA,CAAe,EAAEa,CAAK,GACpD,SAAS,gBAAgB,QAAQ,QAAQA;AAAA,IAC3C;AAAA,EAAA;AAEJ;"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { useState as M, useCallback as p, useMemo as x } from "react";
|
|
2
|
+
function d({
|
|
3
|
+
itemCount: o,
|
|
4
|
+
itemHeight: s,
|
|
5
|
+
viewportHeight: n,
|
|
6
|
+
overscan: l = 4
|
|
7
|
+
}) {
|
|
8
|
+
const [c, a] = M(0), e = p((t) => {
|
|
9
|
+
a(t.currentTarget.scrollTop);
|
|
10
|
+
}, []);
|
|
11
|
+
return x(() => {
|
|
12
|
+
const t = s > 0 ? s : 1, u = Math.ceil(n / t), r = Math.max(0, Math.floor(c / t) - l), f = Math.min(o, r + u + l * 2);
|
|
13
|
+
return {
|
|
14
|
+
startIndex: r,
|
|
15
|
+
endIndex: f,
|
|
16
|
+
totalHeight: o * t,
|
|
17
|
+
offsetY: r * t,
|
|
18
|
+
onScroll: e
|
|
19
|
+
};
|
|
20
|
+
}, [o, s, n, l, c, e]);
|
|
21
|
+
}
|
|
22
|
+
export {
|
|
23
|
+
d as useVirtualList
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=useVirtualList.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useVirtualList.js","sources":["../../../src/hooks/useVirtualList.ts"],"sourcesContent":["import { useCallback, useMemo, useState } from \"react\";\n\nexport interface UseVirtualListParams {\n /** Total number of items. */\n itemCount: number;\n /** Fixed height (px) of a single item. */\n itemHeight: number;\n /** Visible viewport height (px). */\n viewportHeight: number;\n /** Extra rows rendered above/below the viewport. */\n overscan?: number;\n}\n\nexport interface UseVirtualListResult {\n /** First (inclusive) index to render. */\n startIndex: number;\n /** Last (exclusive) index to render. */\n endIndex: number;\n /** Total scrollable height (px) for the spacer. */\n totalHeight: number;\n /** Pixel offset of the first rendered item (translateY). */\n offsetY: number;\n /** Attach to the scroll container's `onScroll`. */\n onScroll: (event: { currentTarget: { scrollTop: number } }) => void;\n}\n\n/**\n * Minimal fixed-height windowing helper (no dependencies).\n *\n * Render only `[startIndex, endIndex)` inside a `position: relative`\n * container of `totalHeight`, translated by `offsetY`.\n */\nexport function useVirtualList({\n itemCount,\n itemHeight,\n viewportHeight,\n overscan = 4,\n}: UseVirtualListParams): UseVirtualListResult {\n const [scrollTop, setScrollTop] = useState(0);\n\n const onScroll = useCallback((event: { currentTarget: { scrollTop: number } }) => {\n setScrollTop(event.currentTarget.scrollTop);\n }, []);\n\n return useMemo(() => {\n const safeItemHeight = itemHeight > 0 ? itemHeight : 1;\n const visibleCount = Math.ceil(viewportHeight / safeItemHeight);\n const startIndex = Math.max(0, Math.floor(scrollTop / safeItemHeight) - overscan);\n const endIndex = Math.min(itemCount, startIndex + visibleCount + overscan * 2);\n\n return {\n startIndex,\n endIndex,\n totalHeight: itemCount * safeItemHeight,\n offsetY: startIndex * safeItemHeight,\n onScroll,\n };\n }, [itemCount, itemHeight, viewportHeight, overscan, scrollTop, onScroll]);\n}\n\nexport default useVirtualList;\n"],"names":["useVirtualList","itemCount","itemHeight","viewportHeight","overscan","scrollTop","setScrollTop","useState","onScroll","useCallback","event","useMemo","safeItemHeight","visibleCount","startIndex","endIndex"],"mappings":";AAgCO,SAASA,EAAe;AAAA,EAC7B,WAAAC;AAAA,EACA,YAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,UAAAC,IAAW;AACb,GAA+C;AAC7C,QAAM,CAACC,GAAWC,CAAY,IAAIC,EAAS,CAAC,GAEtCC,IAAWC,EAAY,CAACC,MAAoD;AAChF,IAAAJ,EAAaI,EAAM,cAAc,SAAS;AAAA,EAC5C,GAAG,CAAA,CAAE;AAEL,SAAOC,EAAQ,MAAM;AACnB,UAAMC,IAAiBV,IAAa,IAAIA,IAAa,GAC/CW,IAAe,KAAK,KAAKV,IAAiBS,CAAc,GACxDE,IAAa,KAAK,IAAI,GAAG,KAAK,MAAMT,IAAYO,CAAc,IAAIR,CAAQ,GAC1EW,IAAW,KAAK,IAAId,GAAWa,IAAaD,IAAeT,IAAW,CAAC;AAE7E,WAAO;AAAA,MACL,YAAAU;AAAA,MACA,UAAAC;AAAA,MACA,aAAad,IAAYW;AAAA,MACzB,SAASE,IAAaF;AAAA,MACtB,UAAAJ;AAAA,IAAA;AAAA,EAEJ,GAAG,CAACP,GAAWC,GAAYC,GAAgBC,GAAUC,GAAWG,CAAQ,CAAC;AAC3E;"}
|