@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":"selectField.js","sources":["../../../../src/components/inputs/selectField/selectField.tsx"],"sourcesContent":["import type { HTMLAttributes, SyntheticEvent } from \"react\";\nimport React, { useState, useRef, useEffect, useMemo, forwardRef } from \"react\";\nimport cn from \"clsx\";\nimport { useSafeLayoutEffect } from \"../../../hooks/useSafeLayoutEffect\";\nimport { useForkRef } from \"../../../hooks/useForkRef\";\nimport { DropdownMenu, DropdownItem, DropdownItemProps } from \"./dropdownMenu\";\nimport Chip from \"../../dataDisplay/chip/chip\";\nimport { TextFieldWrapper } from \"../textField\";\nimport Icon from \"../../base/icon/icon\";\nimport { MenuItemProps } from \"../../navigation/menu\";\n\nconst SelectArrowIcon = (props: HTMLAttributes<HTMLSpanElement>) => <Icon name=\"arrow_drop_down\" {...props} />;\n\nconst ClearIcon = (props: HTMLAttributes<HTMLSpanElement>) => <Icon name=\"close\" size={20} {...props} />;\n\nfunction stopEvent(event: React.SyntheticEvent) {\n event.preventDefault();\n event.stopPropagation();\n}\n\nexport type OnSelectChange = (e: SyntheticEvent, data: SelectFieldProps) => void;\n\nexport interface SelectFieldProps {\n className?: string;\n value?: null | string | number | (string | number | undefined | null)[];\n defaultValue?: null | string | number | (string | number)[];\n onChange?: OnSelectChange;\n disabled?: boolean;\n readOnly?: boolean;\n name?: string;\n multiple?: boolean;\n menuMaxHeight?: number;\n menuMiddleware?: DropdownItemProps[\"menuMiddleware\"];\n menuNoItemsMessage?: React.ReactNode;\n menuContainer?: HTMLElement;\n search?: true | false | \"menu\";\n chips?: boolean;\n isFocused?: boolean;\n error?: boolean;\n items: DropdownItem[];\n label?: string;\n variant?: \"outlined\" | \"filled\";\n fullWidth?: boolean;\n helperText?: React.ReactNode;\n onSearch?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n isLoading?: boolean;\n resetSearch?: () => void;\n inline?: boolean;\n endAdornment?: React.ReactNode;\n hideSelectArrowIcon?: boolean;\n optionRenderer?: (args: MenuItemProps) => React.ReactNode;\n /** Shows a clear button to reset the selection. */\n clearable?: boolean;\n /** Allows creating a new option from the current search text. */\n creatable?: boolean;\n /** Invoked with the typed text when the user creates a new option. */\n onCreate?: (inputValue: string, event: React.SyntheticEvent) => void;\n /** Windows long option lists for performance (fixed row height). */\n virtualized?: boolean;\n /** Row height (px) used when `virtualized`. */\n itemHeight?: number;\n /** Accessible label for the combobox control. */\n \"aria-label\"?: string;\n id?: string;\n}\n\nexport const SelectField = forwardRef<HTMLSpanElement, SelectFieldProps>(function SelectField(props, ref) {\n const {\n className,\n value: valueProp,\n defaultValue,\n onChange,\n disabled,\n readOnly,\n name,\n multiple,\n menuMaxHeight,\n menuMiddleware,\n menuNoItemsMessage,\n menuContainer,\n search,\n chips,\n isFocused: isFocusedProp,\n error,\n items,\n label,\n variant = \"outlined\",\n fullWidth,\n helperText,\n onSearch,\n resetSearch,\n isLoading,\n inline,\n endAdornment,\n hideSelectArrowIcon,\n optionRenderer,\n clearable,\n creatable,\n onCreate,\n virtualized,\n itemHeight,\n \"aria-label\": ariaLabel,\n id,\n ...rest\n } = props;\n const [isOpen, setIsOpen] = useState<boolean>(false);\n const [valueState, setValueState] = useState<typeof valueProp>(defaultValue);\n const [selectedItems, setSelectedItems] = useState<typeof items>(() => {\n if (Array.isArray(valueProp)) {\n return items.filter((item) => valueProp.includes(item.value));\n }\n\n const item = items.find((i) => i.value === valueProp);\n\n return item ? [item] : [];\n });\n const [searchValue, setSearchValue] = useState(\"\");\n const { current: isControlled } = useRef(valueProp != null);\n const anchorElementRef = useRef<HTMLSpanElement>(null);\n const forkedAnchorRef = useForkRef<HTMLSpanElement>(ref, anchorElementRef);\n const searchWrapperRef = useRef<HTMLSpanElement>(null);\n const searchInputRef = useRef<HTMLInputElement>(null);\n const value = isControlled ? valueProp : valueState;\n\n const isFocused = useMemo(() => isFocusedProp || isOpen, [isFocusedProp, isOpen]);\n\n const onMouseDown = (event: React.MouseEvent<HTMLDivElement>) => {\n // Только для левой клавиши мышки.\n if (event.button !== 0) {\n return;\n }\n event.preventDefault();\n anchorElementRef.current?.focus();\n setIsOpen(!isOpen);\n };\n\n const onClose = () => {\n setIsOpen(false);\n anchorElementRef.current?.focus();\n };\n\n const onFocus = () => {\n if (search === true) {\n searchInputRef.current?.focus();\n }\n };\n\n const onKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (!readOnly) {\n const validKeys = [\" \", \"ArrowUp\", \"ArrowDown\", \"Enter\"];\n\n if (validKeys.includes(event.key)) {\n event.preventDefault();\n setIsOpen(!isOpen);\n }\n }\n };\n\n useEffect(() => {\n if (!isFocused || (search === \"menu\" && !isOpen)) {\n setSearchValue(\"\");\n resetSearch?.();\n }\n }, [isFocused, search, isOpen, resetSearch]);\n\n useEffect(() => {\n if (!value || (Array.isArray(value) && !value.length)) {\n setSelectedItems([]);\n }\n }, [value]);\n\n useEffect(() => {\n if (Array.isArray(valueProp)) {\n setSelectedItems(items.filter((item) => valueProp.includes(item.value)));\n } else {\n const item = valueProp == undefined ? undefined : items.find((item) => item.value === valueProp);\n\n if (item === undefined) {\n setSelectedItems([]);\n } else {\n setSelectedItems([item]);\n }\n }\n }, [valueProp, items]);\n\n useSafeLayoutEffect(() => {\n if (searchWrapperRef.current) {\n searchWrapperRef.current.scrollLeft = searchWrapperRef.current.scrollWidth;\n }\n }, [value]);\n\n const updateValue = (event: React.SyntheticEvent, value: typeof valueProp) => {\n onChange?.(event, { ...props, value, name: name || undefined });\n setValueState(value);\n };\n\n const onItemClick = (event: React.SyntheticEvent, item: DropdownItem) => {\n let newValue: typeof valueProp;\n let newSelectedItem: typeof selectedItems;\n if (multiple) {\n const valueArray = Array.isArray(value) ? value : [value].filter(Boolean);\n newValue = valueArray.slice();\n newSelectedItem = selectedItems.slice();\n const itemIndex = valueArray.findIndex((el) => el === item.value);\n\n if (itemIndex === -1) {\n newValue.push(item.value);\n newSelectedItem.push(item);\n } else {\n newValue.splice(itemIndex, 1);\n newSelectedItem.splice(itemIndex, 1);\n }\n } else {\n newValue = value === item.value ? \"\" : item.value;\n newSelectedItem = [item];\n }\n\n if (searchValue) {\n setSearchValue(\"\");\n }\n\n if (!multiple) {\n setIsOpen(false);\n anchorElementRef.current?.focus();\n }\n setSelectedItems(newSelectedItem);\n updateValue(event, newValue);\n };\n\n const onSearchInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n setSearchValue(event.target.value);\n onSearch?.(event);\n if (!isOpen) {\n setIsOpen(true);\n }\n };\n\n const onDeleteChip = (currentValue: typeof valueProp) => (event: React.SyntheticEvent) => {\n if (Array.isArray(value)) {\n const newValue = value.filter((value) => currentValue !== value);\n updateValue(event, newValue);\n const newSelectedItems = selectedItems.filter((el) => el.value !== currentValue);\n setSelectedItems(newSelectedItems);\n }\n };\n\n const onResetSelected = (event: React.MouseEvent) => {\n updateValue(event, []);\n setSelectedItems([]);\n };\n\n let displayValues: string | React.ReactNode[];\n\n const classes = cn(\"smwb-select-field\", className, {\n \"smwb-select-field--filled\": variant === \"filled\" && label,\n \"smwb-select-field--disabled\": disabled,\n \"smwb-select-field--search\": search,\n \"smwb-select-field--inline\": inline,\n });\n\n if (chips) {\n displayValues = selectedItems.map(({ key, value, text }) => (\n <Chip key={key || value} label={text} onDelete={onDeleteChip(value)} onDeleteMouseDown={stopEvent} />\n ));\n } else {\n displayValues = selectedItems.map((el) => el.text).join(\", \");\n }\n\n return (\n <>\n <TextFieldWrapper\n label={label}\n helperText={helperText}\n variant={variant}\n disabled={disabled}\n className={className}\n error={error}\n fullWidth={fullWidth}\n isFilledState={!!selectedItems.length || !!searchValue}\n isFocused={isFocused}\n inline={inline}\n {...rest}\n >\n <span\n ref={forkedAnchorRef}\n id={id}\n className={classes}\n tabIndex={disabled ? undefined : 0}\n role=\"button\"\n aria-haspopup=\"listbox\"\n aria-expanded={isOpen}\n aria-disabled={disabled || undefined}\n aria-label={ariaLabel}\n onMouseDown={disabled || readOnly ? undefined : onMouseDown}\n onFocus={onFocus}\n onKeyDown={onKeyDown}\n data-testid=\"select-field\"\n >\n <span className=\"smwb-select-field__search-wrapper\" ref={searchWrapperRef}>\n {displayValues && <span className=\"smwb-select-field__values\">{displayValues}</span>}\n {search && typeof search === \"boolean\" && !readOnly && (\n <span className=\"smwb-select-field__search\">\n <span className=\"smwb-select-field__search-text\">{searchValue}</span>\n <input\n className=\"smwb-select-field__search-input\"\n ref={searchInputRef}\n type=\"text\"\n value={searchValue}\n onChange={onSearchInputChange}\n onMouseDown={(event: React.MouseEvent<HTMLInputElement>) => {\n event.stopPropagation();\n setIsOpen(true);\n }}\n onKeyDown={(event) => {\n event.stopPropagation();\n }}\n data-testid=\"search-input\"\n />\n </span>\n )}\n </span>\n <span className=\"smwb-select-field__actions\">\n {((Array.isArray(value) && value.length > 0) || (clearable && selectedItems.length > 0)) && !disabled && (\n <ClearIcon\n onClick={onResetSelected}\n onMouseDown={stopEvent}\n className={cn(\"smwb-select-field__icon\", \"smwb-select-field__icon--close\")}\n aria-label=\"Clear selection\"\n role=\"button\"\n />\n )}\n {endAdornment}\n {!hideSelectArrowIcon && (\n <SelectArrowIcon\n className={cn(\"smwb-select-field__icon\", \"smwb-select-field__icon--arrow\", {\n \"smwb-select-field__icon--opened\": isOpen,\n \"smwb-select-field__icon--focused\": isFocused,\n \"smwb-select-field__icon--error\": error,\n })}\n />\n )}\n </span>\n </span>\n </TextFieldWrapper>\n <DropdownMenu\n anchorElementRef={anchorElementRef}\n menuMaxHeight={menuMaxHeight}\n menuMiddleware={menuMiddleware}\n search={search === \"menu\"}\n onSearchInputChange={onSearchInputChange}\n optionRenderer={optionRenderer}\n items={\n onSearch\n ? items\n : searchValue\n ? items.filter((el) => el.text.search(new RegExp(searchValue, \"i\")) !== -1)\n : items\n }\n searchValue={searchValue}\n isOpen={isOpen}\n onClose={onClose}\n onItemClick={onItemClick}\n value={value}\n isLoading={isLoading}\n menuNoItemsMessage={menuNoItemsMessage}\n container={menuContainer}\n virtualized={virtualized}\n itemHeight={itemHeight}\n createOption={\n creatable && searchValue && !items.some((i) => i.text.toLowerCase() === String(searchValue).toLowerCase())\n ? {\n text: `Создать \"${searchValue}\"`,\n onCreate: (event: React.SyntheticEvent) => {\n onCreate?.(String(searchValue), event);\n setSearchValue(\"\");\n setIsOpen(false);\n },\n }\n : undefined\n }\n />\n </>\n );\n});\n\nexport default SelectField;\n"],"names":["SelectArrowIcon","props","jsx","Icon","ClearIcon","stopEvent","event","SelectField","forwardRef","ref","className","valueProp","defaultValue","onChange","disabled","readOnly","name","multiple","menuMaxHeight","menuMiddleware","menuNoItemsMessage","menuContainer","search","chips","isFocusedProp","error","items","label","variant","fullWidth","helperText","onSearch","resetSearch","isLoading","inline","endAdornment","hideSelectArrowIcon","optionRenderer","clearable","creatable","onCreate","virtualized","itemHeight","ariaLabel","id","rest","isOpen","setIsOpen","useState","valueState","setValueState","selectedItems","setSelectedItems","item","i","searchValue","setSearchValue","isControlled","useRef","anchorElementRef","forkedAnchorRef","useForkRef","searchWrapperRef","searchInputRef","value","isFocused","useMemo","onMouseDown","_a","onClose","onFocus","onKeyDown","useEffect","useSafeLayoutEffect","updateValue","onItemClick","newValue","newSelectedItem","valueArray","itemIndex","el","onSearchInputChange","onDeleteChip","currentValue","newSelectedItems","onResetSelected","displayValues","classes","cn","key","text","Chip","jsxs","Fragment","TextFieldWrapper","DropdownMenu"],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export type SliderValue = number | [number, number];
|
|
3
|
+
export interface SliderMark {
|
|
4
|
+
value: number;
|
|
5
|
+
label?: React.ReactNode;
|
|
6
|
+
}
|
|
7
|
+
export interface SliderProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, "onChange" | "defaultValue"> {
|
|
8
|
+
value?: SliderValue;
|
|
9
|
+
onChange?: (event: Event | React.SyntheticEvent, value: SliderValue, data: SliderProps) => void;
|
|
10
|
+
min?: number;
|
|
11
|
+
max?: number;
|
|
12
|
+
step?: number;
|
|
13
|
+
name?: string;
|
|
14
|
+
defaultValue?: SliderValue;
|
|
15
|
+
disabled?: boolean;
|
|
16
|
+
variant?: "continuous" | "discrete";
|
|
17
|
+
valueField?: boolean;
|
|
18
|
+
withTicks?: boolean;
|
|
19
|
+
label?: string;
|
|
20
|
+
helperText?: React.ReactNode;
|
|
21
|
+
error?: boolean;
|
|
22
|
+
size?: "small" | "medium" | "large";
|
|
23
|
+
color?: "primary" | "secondary" | "error" | "success" | "warning" | "info";
|
|
24
|
+
/** Enables a two-thumb range slider (value becomes `[number, number]`). */
|
|
25
|
+
range?: boolean;
|
|
26
|
+
/** Slider direction. */
|
|
27
|
+
orientation?: "horizontal" | "vertical";
|
|
28
|
+
/** Show ticks/marks. `true` derives marks from `step`; an array gives explicit positions/labels. */
|
|
29
|
+
marks?: boolean | SliderMark[];
|
|
30
|
+
/** Accessible label applied to the slider control. */
|
|
31
|
+
"aria-label"?: string;
|
|
32
|
+
/** Maps the numeric value to a human-readable string for assistive tech. */
|
|
33
|
+
getAriaValueText?: (value: number) => string;
|
|
34
|
+
}
|
|
35
|
+
export declare const Slider: React.ForwardRefExoticComponent<SliderProps & React.RefAttributes<HTMLSpanElement>>;
|
|
@@ -0,0 +1,314 @@
|
|
|
1
|
+
import { jsx as i, jsxs as Q } from "react/jsx-runtime";
|
|
2
|
+
import '../../../assets/styles/less/components/slider/slider.entry.css';/* empty css */
|
|
3
|
+
import b from "react";
|
|
4
|
+
import Z from "clsx";
|
|
5
|
+
import { useForkRef as we } from "../../../hooks/useForkRef.js";
|
|
6
|
+
import { useSafeLayoutEffect as he } from "../../../hooks/useSafeLayoutEffect.js";
|
|
7
|
+
import { useEventCallback as ee } from "../../../hooks/useEventCallback.js";
|
|
8
|
+
import { toPercent as K, coordX as ge, coordY as _e, rescale as be } from "./utils.js";
|
|
9
|
+
import { TextFieldWrapper as ye } from "../textField/textFieldWrapper.js";
|
|
10
|
+
import { TextField as Le } from "../textField/textField.js";
|
|
11
|
+
function ke(T, m, _, y) {
|
|
12
|
+
if (!T)
|
|
13
|
+
return [];
|
|
14
|
+
if (Array.isArray(T))
|
|
15
|
+
return T;
|
|
16
|
+
const A = y && y > 0 ? y : (_ - m) / 10, w = [];
|
|
17
|
+
for (let s = m; s <= _ + 1e-9; s += A)
|
|
18
|
+
w.push({ value: Math.round(s * 1e6) / 1e6 });
|
|
19
|
+
return w;
|
|
20
|
+
}
|
|
21
|
+
const Me = b.forwardRef(function(m, _) {
|
|
22
|
+
const {
|
|
23
|
+
defaultValue: y,
|
|
24
|
+
value: A,
|
|
25
|
+
onChange: w,
|
|
26
|
+
min: s = 0,
|
|
27
|
+
max: a = 100,
|
|
28
|
+
name: W,
|
|
29
|
+
disabled: c = !1,
|
|
30
|
+
className: te,
|
|
31
|
+
step: d,
|
|
32
|
+
label: re,
|
|
33
|
+
helperText: se,
|
|
34
|
+
error: ne,
|
|
35
|
+
size: j = "medium",
|
|
36
|
+
color: U = "primary",
|
|
37
|
+
orientation: H = "horizontal",
|
|
38
|
+
marks: O,
|
|
39
|
+
getAriaValueText: F,
|
|
40
|
+
"aria-label": z,
|
|
41
|
+
// consumed by the dispatcher / not valid DOM attributes — keep them off the span
|
|
42
|
+
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
43
|
+
range: ve,
|
|
44
|
+
variant: Ee,
|
|
45
|
+
valueField: ae,
|
|
46
|
+
withTicks: pe,
|
|
47
|
+
/* eslint-enable @typescript-eslint/no-unused-vars */
|
|
48
|
+
...oe
|
|
49
|
+
} = m, g = H === "vertical", B = (e) => {
|
|
50
|
+
var t, n, o, N;
|
|
51
|
+
const r = Array.isArray(e) ? e : [s, a], p = Math.min((t = r[0]) != null ? t : s, (n = r[1]) != null ? n : a), l = Math.max((o = r[0]) != null ? o : s, (N = r[1]) != null ? N : a);
|
|
52
|
+
return [p, l];
|
|
53
|
+
}, h = A !== void 0, [ie, le] = b.useState(() => B(y)), u = h ? B(A) : ie, V = b.useRef(null), $ = we(_, V), R = b.useRef(0), D = b.useRef(!1), X = ke(O, s, a, d), v = (e) => {
|
|
54
|
+
var l;
|
|
55
|
+
const r = (l = V.current) == null ? void 0 : l.getBoundingClientRect();
|
|
56
|
+
if (!r)
|
|
57
|
+
return s;
|
|
58
|
+
if (g) {
|
|
59
|
+
const t = (typeof e.clientY == "number" ? e.clientY : _e(e)) - r.top;
|
|
60
|
+
return be(r.height - t, [0, r.height], [s, a], { step: d });
|
|
61
|
+
}
|
|
62
|
+
const p = (typeof e.clientX == "number" ? e.clientX : ge(e)) - r.left;
|
|
63
|
+
return be(p, [0, r.width], [s, a], { step: d });
|
|
64
|
+
}, ce = (e, r) => {
|
|
65
|
+
const p = Math.min(e[0], e[1]), l = Math.max(e[0], e[1]), t = [Math.max(s, p), Math.min(a, l)];
|
|
66
|
+
h || le(t), w == null || w(r, t, m);
|
|
67
|
+
}, k = (e, r) => {
|
|
68
|
+
const p = R.current, l = [u[0], u[1]];
|
|
69
|
+
l[p] = Math.max(s, Math.min(a, e)), ce(l, r);
|
|
70
|
+
}, Y = (e) => {
|
|
71
|
+
R.current = Math.abs(e - u[0]) <= Math.abs(e - u[1]) ? 0 : 1;
|
|
72
|
+
}, E = ee((e) => {
|
|
73
|
+
D.current && (e.preventDefault(), k(v(e), e));
|
|
74
|
+
}), f = ee(() => {
|
|
75
|
+
D.current = !1, document.removeEventListener("mousemove", E), document.removeEventListener("mouseup", f), document.removeEventListener("touchmove", E), document.removeEventListener("touchend", f);
|
|
76
|
+
}), S = (e) => {
|
|
77
|
+
if (c || e.button !== 0)
|
|
78
|
+
return;
|
|
79
|
+
const r = v(e);
|
|
80
|
+
Y(r), D.current = !0, k(r, e), document.addEventListener("mousemove", E), document.addEventListener("mouseup", f);
|
|
81
|
+
}, P = (e) => {
|
|
82
|
+
if (c)
|
|
83
|
+
return;
|
|
84
|
+
const r = v(e);
|
|
85
|
+
Y(r), D.current = !0, k(r, e), document.addEventListener("touchmove", E), document.addEventListener("touchend", f);
|
|
86
|
+
};
|
|
87
|
+
he(() => {
|
|
88
|
+
const e = V.current;
|
|
89
|
+
if (e)
|
|
90
|
+
return e.addEventListener("touchstart", P), () => e.removeEventListener("touchstart", P);
|
|
91
|
+
});
|
|
92
|
+
const ue = (e) => (r) => {
|
|
93
|
+
if (c)
|
|
94
|
+
return;
|
|
95
|
+
const p = d && d > 0 ? d : 1;
|
|
96
|
+
let l = null;
|
|
97
|
+
r.key === "ArrowLeft" || r.key === "ArrowDown" ? l = u[e] - p : r.key === "ArrowRight" || r.key === "ArrowUp" ? l = u[e] + p : r.key === "Home" ? l = s : r.key === "End" && (l = a), l !== null && (r.preventDefault(), R.current = e, k(l, r));
|
|
98
|
+
}, q = Z(
|
|
99
|
+
"smwb-slider",
|
|
100
|
+
"smwb-slider--range",
|
|
101
|
+
te,
|
|
102
|
+
{
|
|
103
|
+
"smwb-slider--disabled": c,
|
|
104
|
+
"smwb-slider--vertical": g
|
|
105
|
+
},
|
|
106
|
+
j !== "medium" && `smwb-slider_size-${j}`,
|
|
107
|
+
U !== "primary" && `smwb-slider_color-${U}`
|
|
108
|
+
), L = K(u[0], s, a), M = K(u[1], s, a), G = `${Math.min(L, M)}%`, I = `${Math.abs(M - L)}%`, me = g ? { bottom: `${L}%` } : { left: `${L}%` }, de = g ? { bottom: `${M}%` } : { left: `${M}%` }, x = g ? { bottom: G, height: I } : { left: G, width: I };
|
|
109
|
+
return /* @__PURE__ */ i(ye, { label: re, helperText: se, disabled: c, error: ne, fullWidth: !0, shrink: !0, children: /* @__PURE__ */ i("div", { className: "smwb-slider__container", children: /* @__PURE__ */ Q("span", { ref: $, onMouseDown: S, className: q, ...oe, children: [
|
|
110
|
+
X.length > 0 && /* @__PURE__ */ i("span", { className: "smwb-slider__marks", "aria-hidden": "true", children: X.map((e) => {
|
|
111
|
+
const r = `${K(e.value, s, a)}%`;
|
|
112
|
+
return /* @__PURE__ */ i("span", { className: "smwb-slider__mark", style: g ? { bottom: r } : { left: r }, children: e.label != null && /* @__PURE__ */ i("span", { className: "smwb-slider__mark-label", children: e.label }) }, e.value);
|
|
113
|
+
}) }),
|
|
114
|
+
/* @__PURE__ */ i("span", { className: "smwb-slider__rail" }),
|
|
115
|
+
/* @__PURE__ */ i("span", { className: "smwb-slider__track", style: x }),
|
|
116
|
+
[0, 1].map((e) => /* @__PURE__ */ i(
|
|
117
|
+
"span",
|
|
118
|
+
{
|
|
119
|
+
className: Z("smwb-slider__thumb", `smwb-slider__thumb--${e === 0 ? "start" : "end"}`),
|
|
120
|
+
style: e === 0 ? me : de,
|
|
121
|
+
children: /* @__PURE__ */ i(
|
|
122
|
+
"input",
|
|
123
|
+
{
|
|
124
|
+
"data-testid": `slider-input-${e}`,
|
|
125
|
+
className: "smwb-slider__input",
|
|
126
|
+
type: "range",
|
|
127
|
+
min: s,
|
|
128
|
+
max: a,
|
|
129
|
+
step: d,
|
|
130
|
+
name: W ? `${W}[${e}]` : void 0,
|
|
131
|
+
value: u[e],
|
|
132
|
+
disabled: c,
|
|
133
|
+
onChange: () => {
|
|
134
|
+
},
|
|
135
|
+
onKeyDown: ue(e),
|
|
136
|
+
tabIndex: c ? -1 : 0,
|
|
137
|
+
"aria-label": z ? `${z} ${e === 0 ? "minimum" : "maximum"}` : void 0,
|
|
138
|
+
"aria-orientation": H,
|
|
139
|
+
"aria-valuenow": u[e],
|
|
140
|
+
"aria-valuemin": e === 0 ? s : u[0],
|
|
141
|
+
"aria-valuemax": e === 0 ? u[1] : a,
|
|
142
|
+
"aria-valuetext": F ? F(u[e]) : void 0,
|
|
143
|
+
"aria-disabled": c || void 0
|
|
144
|
+
}
|
|
145
|
+
)
|
|
146
|
+
},
|
|
147
|
+
e
|
|
148
|
+
))
|
|
149
|
+
] }) }) });
|
|
150
|
+
}), Ne = b.forwardRef(function(m, _) {
|
|
151
|
+
const {
|
|
152
|
+
defaultValue: y,
|
|
153
|
+
value: A,
|
|
154
|
+
onChange: w,
|
|
155
|
+
min: s = 0,
|
|
156
|
+
max: a = 100,
|
|
157
|
+
name: W,
|
|
158
|
+
disabled: c = !1,
|
|
159
|
+
className: te,
|
|
160
|
+
step: d,
|
|
161
|
+
variant: re = "continuous",
|
|
162
|
+
valueField: se,
|
|
163
|
+
withTicks: ne,
|
|
164
|
+
label: j,
|
|
165
|
+
helperText: U,
|
|
166
|
+
error: H,
|
|
167
|
+
size: O = "medium",
|
|
168
|
+
color: F = "primary",
|
|
169
|
+
orientation: z = "horizontal",
|
|
170
|
+
marks: ve,
|
|
171
|
+
// `range` is handled by the Slider dispatcher; destructured here to keep it off the DOM
|
|
172
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
173
|
+
range: Ee,
|
|
174
|
+
getAriaValueText: ae,
|
|
175
|
+
"aria-label": pe,
|
|
176
|
+
...oe
|
|
177
|
+
} = m, g = typeof y == "number" ? y : void 0, B = typeof A == "number" ? A : void 0, h = z === "vertical", [ie, le] = b.useState(g != null ? g : s), [u, V] = b.useState(!1), [$, R] = b.useState(!1), [D, X] = b.useState(!1), v = b.useRef(null), ce = we(_, v), k = b.useRef(!1), Y = B !== void 0, E = re === "discrete", f = Y ? B : ie, S = (t, n) => {
|
|
178
|
+
t < s || t > a || (Y || le(t), w == null || w(n, t, m));
|
|
179
|
+
}, P = (t, n) => be(t, [0, n], [s, a], { step: d }), ue = (t) => {
|
|
180
|
+
if (c || t.button !== 0)
|
|
181
|
+
return;
|
|
182
|
+
k.current = !0;
|
|
183
|
+
const n = v.current, o = n == null ? void 0 : n.getBoundingClientRect();
|
|
184
|
+
if (o) {
|
|
185
|
+
const N = h ? o.height - (t.clientY - o.top) : t.clientX - o.left, C = P(N, h ? o.height : o.width);
|
|
186
|
+
$ || R(!0), S(C, t);
|
|
187
|
+
}
|
|
188
|
+
document.addEventListener("mousemove", L), document.addEventListener("mouseup", M);
|
|
189
|
+
}, q = (t) => {
|
|
190
|
+
var N;
|
|
191
|
+
if (c)
|
|
192
|
+
return;
|
|
193
|
+
k.current = !0;
|
|
194
|
+
const n = v.current, o = n == null ? void 0 : n.getBoundingClientRect();
|
|
195
|
+
if (o) {
|
|
196
|
+
const C = (N = t.changedTouches) == null ? void 0 : N[0], fe = h ? o.height - (C.clientY - o.top) : C.clientX - o.left, J = P(fe, h ? o.height : o.width);
|
|
197
|
+
$ || R(!0), S(J, t);
|
|
198
|
+
}
|
|
199
|
+
document.addEventListener("touchmove", L), document.addEventListener("touchend", M);
|
|
200
|
+
}, L = ee((t) => {
|
|
201
|
+
if (k.current) {
|
|
202
|
+
const n = v.current, o = n == null ? void 0 : n.getBoundingClientRect();
|
|
203
|
+
if (o) {
|
|
204
|
+
const N = ge(t), C = _e(t), fe = h ? o.height - (C - o.top) : N - o.left, J = P(fe, h ? o.height : o.width);
|
|
205
|
+
if ($ || R(!0), f === J)
|
|
206
|
+
return;
|
|
207
|
+
u || V(!0), S(J, t);
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
}), M = ee(() => {
|
|
211
|
+
k.current = !1, u && V(!1), $ && R(!1), G();
|
|
212
|
+
}), G = () => {
|
|
213
|
+
document.removeEventListener("mousemove", L), document.removeEventListener("mouseup", M), document.removeEventListener("touchmove", L), document.removeEventListener("touchend", M);
|
|
214
|
+
}, I = (t) => {
|
|
215
|
+
!D || c || ((t.key === "ArrowLeft" || t.key === "ArrowDown") && S(f - (d || 1), t), (t.key === "ArrowRight" || t.key === "ArrowUp") && S(f + (d || 1), t));
|
|
216
|
+
}, me = () => {
|
|
217
|
+
X(!1), document.removeEventListener("keydown", I);
|
|
218
|
+
};
|
|
219
|
+
he(() => {
|
|
220
|
+
if (v.current)
|
|
221
|
+
return v.current.addEventListener("touchstart", q), () => {
|
|
222
|
+
var t;
|
|
223
|
+
(t = v.current) == null || t.removeEventListener("touchstart", q);
|
|
224
|
+
};
|
|
225
|
+
}), he(() => {
|
|
226
|
+
var t, n;
|
|
227
|
+
c && ((t = v.current) != null && t.contains(document.activeElement)) && ((n = document.activeElement) == null || n.blur());
|
|
228
|
+
}, [c]);
|
|
229
|
+
const de = Z(
|
|
230
|
+
"smwb-slider",
|
|
231
|
+
te,
|
|
232
|
+
{
|
|
233
|
+
"smwb-slider--disabled": c,
|
|
234
|
+
"smwb-slider--dragging": u,
|
|
235
|
+
"smwb-slider--discrete": E,
|
|
236
|
+
"smwb-slider--vertical": h
|
|
237
|
+
},
|
|
238
|
+
O !== "medium" && `smwb-slider_size-${O}`,
|
|
239
|
+
F !== "primary" && `smwb-slider_color-${F}`
|
|
240
|
+
), x = `${K(f, s, a)}%`, e = h ? { height: x } : { width: x }, r = h ? { bottom: x } : { left: x }, p = () => Array(Math.round(a / (d || 1)) + 1).fill(1), l = ke(ve, s, a, d);
|
|
241
|
+
return /* @__PURE__ */ i(ye, { label: j, helperText: U, disabled: c, error: H, fullWidth: !0, shrink: !0, children: /* @__PURE__ */ Q("div", { className: "smwb-slider__container", children: [
|
|
242
|
+
/* @__PURE__ */ Q(
|
|
243
|
+
"span",
|
|
244
|
+
{
|
|
245
|
+
onKeyDown: I,
|
|
246
|
+
ref: ce,
|
|
247
|
+
onMouseDown: ue,
|
|
248
|
+
className: de,
|
|
249
|
+
tabIndex: c ? -1 : 0,
|
|
250
|
+
onFocus: () => X(!0),
|
|
251
|
+
onBlur: me,
|
|
252
|
+
...oe,
|
|
253
|
+
children: [
|
|
254
|
+
ne && /* @__PURE__ */ i("span", { className: "smwb-slider__ticks", style: { gap: `${d}` }, children: p().map((t, n) => /* @__PURE__ */ i("span", { className: "smwb-slider__tick" }, n)) }),
|
|
255
|
+
l.length > 0 && /* @__PURE__ */ i("span", { className: "smwb-slider__marks", "aria-hidden": "true", children: l.map((t) => {
|
|
256
|
+
const n = `${K(t.value, s, a)}%`;
|
|
257
|
+
return /* @__PURE__ */ i("span", { className: "smwb-slider__mark", style: h ? { bottom: n } : { left: n }, children: t.label != null && /* @__PURE__ */ i("span", { className: "smwb-slider__mark-label", children: t.label }) }, t.value);
|
|
258
|
+
}) }),
|
|
259
|
+
/* @__PURE__ */ i("span", { className: "smwb-slider__rail" }),
|
|
260
|
+
/* @__PURE__ */ i("span", { className: "smwb-slider__track", style: e }),
|
|
261
|
+
/* @__PURE__ */ Q(
|
|
262
|
+
"span",
|
|
263
|
+
{
|
|
264
|
+
className: Z("smwb-slider__thumb", {
|
|
265
|
+
"smwb-slider__thumb--active": $,
|
|
266
|
+
"smwb-slider__thumb--discrete": E
|
|
267
|
+
}),
|
|
268
|
+
style: r,
|
|
269
|
+
children: [
|
|
270
|
+
E && /* @__PURE__ */ i("span", { className: "smwb-slider__thumb-tooltip", children: Math.round(f) }),
|
|
271
|
+
/* @__PURE__ */ i(
|
|
272
|
+
"input",
|
|
273
|
+
{
|
|
274
|
+
"data-testid": "slider-input",
|
|
275
|
+
className: "smwb-slider__input",
|
|
276
|
+
type: "range",
|
|
277
|
+
min: s,
|
|
278
|
+
max: a,
|
|
279
|
+
name: W,
|
|
280
|
+
value: f,
|
|
281
|
+
readOnly: !0,
|
|
282
|
+
"aria-label": pe,
|
|
283
|
+
"aria-orientation": z,
|
|
284
|
+
"aria-valuenow": f,
|
|
285
|
+
"aria-valuemin": s,
|
|
286
|
+
"aria-valuemax": a,
|
|
287
|
+
"aria-valuetext": ae ? ae(f) : void 0,
|
|
288
|
+
"aria-disabled": c || void 0
|
|
289
|
+
}
|
|
290
|
+
)
|
|
291
|
+
]
|
|
292
|
+
}
|
|
293
|
+
)
|
|
294
|
+
]
|
|
295
|
+
}
|
|
296
|
+
),
|
|
297
|
+
se && E && /* @__PURE__ */ i(
|
|
298
|
+
Le,
|
|
299
|
+
{
|
|
300
|
+
type: "number",
|
|
301
|
+
value: f,
|
|
302
|
+
onChange: (t) => S(+t.target.value, t),
|
|
303
|
+
variant: "filled",
|
|
304
|
+
helperText: null
|
|
305
|
+
}
|
|
306
|
+
)
|
|
307
|
+
] }) });
|
|
308
|
+
}), Fe = b.forwardRef(function(m, _) {
|
|
309
|
+
return m.range === !0 || Array.isArray(m.value) || Array.isArray(m.defaultValue) ? /* @__PURE__ */ i(Me, { ref: _, ...m }) : /* @__PURE__ */ i(Ne, { ref: _, ...m });
|
|
310
|
+
});
|
|
311
|
+
export {
|
|
312
|
+
Fe as Slider
|
|
313
|
+
};
|
|
314
|
+
//# sourceMappingURL=slider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slider.js","sources":["../../../../src/components/inputs/slider/slider.tsx"],"sourcesContent":["import React from \"react\";\nimport cn from \"clsx\";\nimport { useForkRef } from \"../../../hooks/useForkRef\";\nimport { useSafeLayoutEffect } from \"../../../hooks/useSafeLayoutEffect\";\nimport { useEventCallback } from \"../../../hooks/useEventCallback\";\nimport { rescale, toPercent, coordX, coordY } from \"./utils\";\nimport { TextField, TextFieldWrapper } from \"../textField\";\n\nexport type SliderValue = number | [number, number];\n\nexport interface SliderMark {\n value: number;\n label?: React.ReactNode;\n}\n\nexport interface SliderProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, \"onChange\" | \"defaultValue\"> {\n value?: SliderValue;\n onChange?: (event: Event | React.SyntheticEvent, value: SliderValue, data: SliderProps) => void;\n min?: number;\n max?: number;\n step?: number;\n name?: string;\n defaultValue?: SliderValue;\n disabled?: boolean;\n variant?: \"continuous\" | \"discrete\";\n valueField?: boolean;\n withTicks?: boolean;\n label?: string;\n helperText?: React.ReactNode;\n error?: boolean;\n size?: \"small\" | \"medium\" | \"large\";\n color?: \"primary\" | \"secondary\" | \"error\" | \"success\" | \"warning\" | \"info\";\n /** Enables a two-thumb range slider (value becomes `[number, number]`). */\n range?: boolean;\n /** Slider direction. */\n orientation?: \"horizontal\" | \"vertical\";\n /** Show ticks/marks. `true` derives marks from `step`; an array gives explicit positions/labels. */\n marks?: boolean | SliderMark[];\n /** Accessible label applied to the slider control. */\n \"aria-label\"?: string;\n /** Maps the numeric value to a human-readable string for assistive tech. */\n getAriaValueText?: (value: number) => string;\n}\n\nfunction resolveMarks(\n marks: boolean | SliderMark[] | undefined,\n min: number,\n max: number,\n step?: number\n): SliderMark[] {\n if (!marks) {\n return [];\n }\n if (Array.isArray(marks)) {\n return marks;\n }\n const s = step && step > 0 ? step : (max - min) / 10;\n const result: SliderMark[] = [];\n for (let v = min; v <= max + 1e-9; v += s) {\n result.push({ value: Math.round(v * 1e6) / 1e6 });\n }\n return result;\n}\n\nconst RangeSlider = React.forwardRef<HTMLSpanElement, SliderProps>(function RangeSlider(props, ref) {\n const {\n defaultValue,\n value: valueProp,\n onChange,\n min = 0,\n max = 100,\n name,\n disabled = false,\n className,\n step,\n label,\n helperText,\n error,\n size = \"medium\",\n color = \"primary\",\n orientation = \"horizontal\",\n marks,\n getAriaValueText,\n \"aria-label\": ariaLabel,\n // consumed by the dispatcher / not valid DOM attributes — keep them off the span\n /* eslint-disable @typescript-eslint/no-unused-vars */\n range,\n variant,\n valueField,\n withTicks,\n /* eslint-enable @typescript-eslint/no-unused-vars */\n ...rest\n } = props;\n\n const isVertical = orientation === \"vertical\";\n const normalize = (v: SliderValue | undefined): [number, number] => {\n const arr = Array.isArray(v) ? v : [min, max];\n const lo = Math.min(arr[0] ?? min, arr[1] ?? max);\n const hi = Math.max(arr[0] ?? min, arr[1] ?? max);\n return [lo, hi];\n };\n\n const isControlled = valueProp !== undefined;\n const [valueState, setValueState] = React.useState<[number, number]>(() => normalize(defaultValue));\n const value = isControlled ? normalize(valueProp) : valueState;\n\n const containerRef = React.useRef<HTMLSpanElement>(null);\n const rootRef = useForkRef<HTMLSpanElement>(ref, containerRef);\n const activeThumb = React.useRef<0 | 1>(0);\n const isPressedRef = React.useRef<boolean>(false);\n\n const markList = resolveMarks(marks, min, max, step);\n\n const positionToValue = (event: MouseEvent | TouchEvent | React.MouseEvent | React.TouchEvent) => {\n const rect = containerRef.current?.getBoundingClientRect();\n if (!rect) {\n return min;\n }\n if (isVertical) {\n const y =\n (typeof (event as MouseEvent).clientY === \"number\"\n ? (event as MouseEvent).clientY\n : coordY(event as React.MouseEvent)) - rect.top;\n return rescale(rect.height - y, [0, rect.height], [min, max], { step });\n }\n const x =\n (typeof (event as MouseEvent).clientX === \"number\"\n ? (event as MouseEvent).clientX\n : coordX(event as React.MouseEvent)) - rect.left;\n return rescale(x, [0, rect.width], [min, max], { step });\n };\n\n const commit = (next: [number, number], event: Event | React.SyntheticEvent) => {\n const lo = Math.min(next[0], next[1]);\n const hi = Math.max(next[0], next[1]);\n const clamped: [number, number] = [Math.max(min, lo), Math.min(max, hi)];\n if (!isControlled) {\n setValueState(clamped);\n }\n onChange?.(event, clamped, props);\n };\n\n const moveThumb = (raw: number, event: Event | React.SyntheticEvent) => {\n const idx = activeThumb.current;\n const next: [number, number] = [value[0], value[1]];\n next[idx] = Math.max(min, Math.min(max, raw));\n commit(next, event);\n };\n\n const pickThumb = (raw: number) => {\n activeThumb.current = Math.abs(raw - value[0]) <= Math.abs(raw - value[1]) ? 0 : 1;\n };\n\n const onMouseMove = useEventCallback((event: MouseEvent | TouchEvent) => {\n if (!isPressedRef.current) {\n return;\n }\n event.preventDefault();\n moveThumb(positionToValue(event), event);\n });\n\n const onMouseEnd = useEventCallback(() => {\n isPressedRef.current = false;\n document.removeEventListener(\"mousemove\", onMouseMove);\n document.removeEventListener(\"mouseup\", onMouseEnd);\n document.removeEventListener(\"touchmove\", onMouseMove);\n document.removeEventListener(\"touchend\", onMouseEnd);\n });\n\n const onMouseDown = (event: React.MouseEvent<HTMLSpanElement>) => {\n if (disabled || event.button !== 0) {\n return;\n }\n const raw = positionToValue(event);\n pickThumb(raw);\n isPressedRef.current = true;\n moveThumb(raw, event);\n document.addEventListener(\"mousemove\", onMouseMove);\n document.addEventListener(\"mouseup\", onMouseEnd);\n };\n\n const onTouchStartNative = (event: TouchEvent) => {\n if (disabled) {\n return;\n }\n const raw = positionToValue(event);\n pickThumb(raw);\n isPressedRef.current = true;\n moveThumb(raw, event);\n document.addEventListener(\"touchmove\", onMouseMove);\n document.addEventListener(\"touchend\", onMouseEnd);\n };\n\n useSafeLayoutEffect(() => {\n const el = containerRef.current;\n if (!el) {\n return;\n }\n el.addEventListener(\"touchstart\", onTouchStartNative);\n return () => el.removeEventListener(\"touchstart\", onTouchStartNative);\n });\n\n const onThumbKeyDown = (idx: 0 | 1) => (event: React.KeyboardEvent) => {\n if (disabled) {\n return;\n }\n const delta = step && step > 0 ? step : 1;\n let next: number | null = null;\n if (event.key === \"ArrowLeft\" || event.key === \"ArrowDown\") {\n next = value[idx] - delta;\n } else if (event.key === \"ArrowRight\" || event.key === \"ArrowUp\") {\n next = value[idx] + delta;\n } else if (event.key === \"Home\") {\n next = min;\n } else if (event.key === \"End\") {\n next = max;\n }\n if (next !== null) {\n event.preventDefault();\n activeThumb.current = idx;\n moveThumb(next, event);\n }\n };\n\n const classNames = cn(\n \"smwb-slider\",\n \"smwb-slider--range\",\n className,\n {\n \"smwb-slider--disabled\": disabled,\n \"smwb-slider--vertical\": isVertical,\n },\n size !== \"medium\" && `smwb-slider_size-${size}`,\n color !== \"primary\" && `smwb-slider_color-${color}`\n );\n\n const p0 = toPercent(value[0], min, max);\n const p1 = toPercent(value[1], min, max);\n const startPct = `${Math.min(p0, p1)}%`;\n const spanPct = `${Math.abs(p1 - p0)}%`;\n const mainStart = isVertical ? { bottom: `${p0}%` } : { left: `${p0}%` };\n const mainEnd = isVertical ? { bottom: `${p1}%` } : { left: `${p1}%` };\n const trackStyle = isVertical ? { bottom: startPct, height: spanPct } : { left: startPct, width: spanPct };\n\n return (\n <TextFieldWrapper label={label} helperText={helperText} disabled={disabled} error={error} fullWidth shrink>\n <div className=\"smwb-slider__container\">\n <span ref={rootRef} onMouseDown={onMouseDown} className={classNames} {...rest}>\n {markList.length > 0 && (\n <span className=\"smwb-slider__marks\" aria-hidden=\"true\">\n {markList.map((m) => {\n const mp = `${toPercent(m.value, min, max)}%`;\n return (\n <span key={m.value} className=\"smwb-slider__mark\" style={isVertical ? { bottom: mp } : { left: mp }}>\n {m.label != null && <span className=\"smwb-slider__mark-label\">{m.label}</span>}\n </span>\n );\n })}\n </span>\n )}\n <span className=\"smwb-slider__rail\" />\n <span className=\"smwb-slider__track\" style={trackStyle} />\n {([0, 1] as const).map((idx) => (\n <span\n key={idx}\n className={cn(\"smwb-slider__thumb\", `smwb-slider__thumb--${idx === 0 ? \"start\" : \"end\"}`)}\n style={idx === 0 ? mainStart : mainEnd}\n >\n <input\n data-testid={`slider-input-${idx}`}\n className=\"smwb-slider__input\"\n type=\"range\"\n min={min}\n max={max}\n step={step}\n name={name ? `${name}[${idx}]` : undefined}\n value={value[idx]}\n disabled={disabled}\n onChange={() => undefined}\n onKeyDown={onThumbKeyDown(idx)}\n tabIndex={disabled ? -1 : 0}\n aria-label={ariaLabel ? `${ariaLabel} ${idx === 0 ? \"minimum\" : \"maximum\"}` : undefined}\n aria-orientation={orientation}\n aria-valuenow={value[idx]}\n aria-valuemin={idx === 0 ? min : value[0]}\n aria-valuemax={idx === 0 ? value[1] : max}\n aria-valuetext={getAriaValueText ? getAriaValueText(value[idx]) : undefined}\n aria-disabled={disabled || undefined}\n />\n </span>\n ))}\n </span>\n </div>\n </TextFieldWrapper>\n );\n});\n\nconst SingleSlider = React.forwardRef<HTMLSpanElement, SliderProps>(function SingleSlider(props, ref) {\n const {\n defaultValue,\n value: valueProp,\n onChange,\n min = 0,\n max = 100,\n name,\n disabled = false,\n className,\n step,\n variant = \"continuous\",\n valueField,\n withTicks,\n label,\n helperText,\n error,\n size = \"medium\",\n color = \"primary\",\n orientation = \"horizontal\",\n marks,\n // `range` is handled by the Slider dispatcher; destructured here to keep it off the DOM\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n range,\n getAriaValueText,\n \"aria-label\": ariaLabel,\n ...rest\n } = props;\n\n const singleDefault = typeof defaultValue === \"number\" ? defaultValue : undefined;\n const singleValueProp = typeof valueProp === \"number\" ? valueProp : undefined;\n const isVertical = orientation === \"vertical\";\n\n const [valueState, setValue] = React.useState<number>(singleDefault ?? min);\n const [isDragging, setIsDragging] = React.useState<boolean>(false);\n const [isActive, setIsActive] = React.useState<boolean>(false);\n const [isFocused, setIsFocused] = React.useState<boolean>(false);\n\n const containerRef = React.useRef<HTMLSpanElement>(null);\n const rootRef = useForkRef<HTMLSpanElement>(ref, containerRef);\n const isPressedRef = React.useRef<boolean>(false);\n\n const isControlled = singleValueProp !== undefined;\n const isDiscrete = variant === \"discrete\";\n const value = isControlled ? singleValueProp : valueState;\n\n const updateValue = (value: number, event: Event | React.SyntheticEvent) => {\n if (value < min || value > max) return;\n if (!isControlled) {\n setValue(value);\n }\n onChange?.(event, value, props);\n };\n\n const offsetToValue = (absolute: number, containerSize: number) => {\n return rescale(absolute, [0, containerSize], [min, max], { step });\n };\n\n const onMouseDown = (event: React.MouseEvent<HTMLSpanElement>) => {\n if (disabled) {\n return;\n }\n\n if (event.button !== 0) {\n return;\n }\n\n isPressedRef.current = true;\n\n const element = containerRef.current;\n const rect = element?.getBoundingClientRect();\n\n if (rect) {\n const absolutePosition = isVertical ? rect.height - (event.clientY - rect.top) : event.clientX - rect.left;\n const newValue = offsetToValue(absolutePosition, isVertical ? rect.height : rect.width);\n\n if (!isActive) {\n setIsActive(true);\n }\n\n updateValue(newValue, event);\n }\n\n document.addEventListener(\"mousemove\", onMouseMove);\n document.addEventListener(\"mouseup\", onMouseEnd);\n };\n\n const onTouchStart = (event: TouchEvent) => {\n if (disabled) {\n return;\n }\n\n isPressedRef.current = true;\n\n const element = containerRef.current;\n const rect = element?.getBoundingClientRect();\n\n if (rect) {\n const touch = event.changedTouches?.[0];\n const absolutePosition = isVertical ? rect.height - (touch.clientY - rect.top) : touch.clientX - rect.left;\n const newValue = offsetToValue(absolutePosition, isVertical ? rect.height : rect.width);\n\n if (!isActive) {\n setIsActive(true);\n }\n updateValue(newValue, event);\n }\n\n document.addEventListener(\"touchmove\", onMouseMove);\n document.addEventListener(\"touchend\", onMouseEnd);\n };\n\n const onMouseMove = useEventCallback((event: MouseEvent | TouchEvent) => {\n if (isPressedRef.current) {\n const element = containerRef.current;\n const rect = element?.getBoundingClientRect();\n\n if (rect) {\n // TODO need clarification обработка разных событий разных типов 1 функцией\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n const clientX = coordX(event);\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n const clientY = coordY(event);\n const absolutePosition = isVertical ? rect.height - (clientY - rect.top) : clientX - rect.left;\n const newValue = offsetToValue(absolutePosition, isVertical ? rect.height : rect.width);\n\n if (!isActive) {\n setIsActive(true);\n }\n\n if (value === newValue) {\n return;\n }\n\n if (!isDragging) {\n setIsDragging(true);\n }\n\n updateValue(newValue, event);\n }\n }\n });\n\n const onMouseEnd = useEventCallback(() => {\n isPressedRef.current = false;\n\n if (isDragging) {\n setIsDragging(false);\n }\n\n if (isActive) {\n setIsActive(false);\n }\n\n removeListeners();\n });\n\n const removeListeners = () => {\n document.removeEventListener(\"mousemove\", onMouseMove);\n document.removeEventListener(\"mouseup\", onMouseEnd);\n document.removeEventListener(\"touchmove\", onMouseMove);\n document.removeEventListener(\"touchend\", onMouseEnd);\n };\n\n const handleArrowsControls = (e: React.KeyboardEvent) => {\n if (!isFocused || disabled) return;\n if (e.key === \"ArrowLeft\" || e.key === \"ArrowDown\") {\n updateValue(value - (step || 1), e);\n }\n if (e.key === \"ArrowRight\" || e.key === \"ArrowUp\") {\n updateValue(value + (step || 1), e);\n }\n };\n\n const handleBlur = () => {\n setIsFocused(false);\n document.removeEventListener(\"keydown\", handleArrowsControls as (e: unknown) => void);\n };\n\n useSafeLayoutEffect(() => {\n if (containerRef.current) {\n containerRef.current.addEventListener(\"touchstart\", onTouchStart);\n\n return () => {\n containerRef.current?.removeEventListener(\"touchstart\", onTouchStart);\n };\n }\n });\n\n useSafeLayoutEffect(() => {\n if (disabled && containerRef.current?.contains(document.activeElement)) {\n (document.activeElement as HTMLElement)?.blur();\n }\n }, [disabled]);\n\n const classNames = cn(\n \"smwb-slider\",\n className,\n {\n \"smwb-slider--disabled\": disabled,\n \"smwb-slider--dragging\": isDragging,\n \"smwb-slider--discrete\": isDiscrete,\n \"smwb-slider--vertical\": isVertical,\n },\n size !== \"medium\" && `smwb-slider_size-${size}`,\n color !== \"primary\" && `smwb-slider_color-${color}`\n );\n\n const pct = `${toPercent(value, min, max)}%`;\n const trackStyle = isVertical ? { height: pct } : { width: pct };\n const thumbStyle = isVertical ? { bottom: pct } : { left: pct };\n\n const getTicks = () => Array(Math.round(max / (step || 1)) + 1).fill(1) as number[];\n const markList = resolveMarks(marks, min, max, step);\n\n return (\n <TextFieldWrapper label={label} helperText={helperText} disabled={disabled} error={error} fullWidth shrink>\n <div className=\"smwb-slider__container\">\n <span\n onKeyDown={handleArrowsControls}\n ref={rootRef}\n onMouseDown={onMouseDown}\n className={classNames}\n tabIndex={disabled ? -1 : 0}\n onFocus={() => setIsFocused(true)}\n onBlur={handleBlur}\n {...rest}\n >\n {withTicks && (\n <span className=\"smwb-slider__ticks\" style={{ gap: `${step}` }}>\n {getTicks().map((t, idx) => (\n <span className=\"smwb-slider__tick\" key={idx} />\n ))}\n </span>\n )}\n {markList.length > 0 && (\n <span className=\"smwb-slider__marks\" aria-hidden=\"true\">\n {markList.map((m) => {\n const mp = `${toPercent(m.value, min, max)}%`;\n return (\n <span key={m.value} className=\"smwb-slider__mark\" style={isVertical ? { bottom: mp } : { left: mp }}>\n {m.label != null && <span className=\"smwb-slider__mark-label\">{m.label}</span>}\n </span>\n );\n })}\n </span>\n )}\n <span className=\"smwb-slider__rail\" />\n <span className=\"smwb-slider__track\" style={trackStyle} />\n <span\n className={cn(\"smwb-slider__thumb\", {\n \"smwb-slider__thumb--active\": isActive,\n \"smwb-slider__thumb--discrete\": isDiscrete,\n })}\n style={thumbStyle}\n >\n {isDiscrete && <span className=\"smwb-slider__thumb-tooltip\">{Math.round(value)}</span>}\n <input\n data-testid=\"slider-input\"\n className=\"smwb-slider__input\"\n type=\"range\"\n min={min}\n max={max}\n name={name}\n value={value}\n readOnly\n aria-label={ariaLabel}\n aria-orientation={orientation}\n aria-valuenow={value}\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuetext={getAriaValueText ? getAriaValueText(value) : undefined}\n aria-disabled={disabled || undefined}\n />\n </span>\n </span>\n {valueField && isDiscrete && (\n <TextField\n type=\"number\"\n value={value}\n onChange={(e: React.ChangeEvent<HTMLInputElement>) => updateValue(+e.target.value, e)}\n variant=\"filled\"\n helperText={null}\n />\n )}\n </div>\n </TextFieldWrapper>\n );\n});\n\nexport const Slider = React.forwardRef<HTMLSpanElement, SliderProps>(function Slider(props, ref) {\n const isRangeMode = props.range === true || Array.isArray(props.value) || Array.isArray(props.defaultValue);\n\n return isRangeMode ? <RangeSlider ref={ref} {...props} /> : <SingleSlider ref={ref} {...props} />;\n});\n"],"names":["resolveMarks","marks","min","max","step","s","result","v","RangeSlider","React","props","ref","defaultValue","valueProp","onChange","name","disabled","className","label","helperText","error","size","color","orientation","getAriaValueText","ariaLabel","range","variant","valueField","withTicks","rest","isVertical","normalize","arr","lo","_a","_b","hi","_c","_d","isControlled","valueState","setValueState","value","containerRef","rootRef","useForkRef","activeThumb","isPressedRef","markList","positionToValue","event","rect","y","coordY","rescale","x","coordX","commit","next","clamped","moveThumb","raw","idx","pickThumb","onMouseMove","useEventCallback","onMouseEnd","onMouseDown","onTouchStartNative","useSafeLayoutEffect","el","onThumbKeyDown","delta","classNames","cn","p0","toPercent","p1","startPct","spanPct","mainStart","mainEnd","trackStyle","jsx","TextFieldWrapper","m","mp","SingleSlider","singleDefault","singleValueProp","setValue","isDragging","setIsDragging","isActive","setIsActive","isFocused","setIsFocused","isDiscrete","updateValue","offsetToValue","absolute","containerSize","element","absolutePosition","newValue","onTouchStart","touch","clientX","clientY","removeListeners","handleArrowsControls","e","handleBlur","pct","thumbStyle","getTicks","jsxs","TextField","Slider"],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export declare function toPercent(value: number, min: number, max: number): number;
|
|
3
|
+
export declare function precision(number: number): number;
|
|
4
|
+
export declare function clamp(value: number, min: number, max: number): number;
|
|
5
|
+
export declare function precisionRound(number: number, precision?: number): number;
|
|
6
|
+
export declare function decimatedClamp(val: number, min: number, max: number, step?: number): number;
|
|
7
|
+
export declare function rescale(value: number, from: [number, number], to: [number, number], options?: {
|
|
8
|
+
step?: number;
|
|
9
|
+
}): number;
|
|
10
|
+
export declare function coordX(event: React.MouseEvent | React.TouchEvent): number;
|
|
11
|
+
export declare function coordY(event: React.MouseEvent | React.TouchEvent): number;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
function s(n, c, t) {
|
|
2
|
+
return (n - c) / (t - c) * 100;
|
|
3
|
+
}
|
|
4
|
+
function f(n) {
|
|
5
|
+
return (`${n}`.split(".")[1] || "").length;
|
|
6
|
+
}
|
|
7
|
+
function o(n, c, t) {
|
|
8
|
+
return Math.max(c, Math.min(n, t));
|
|
9
|
+
}
|
|
10
|
+
function u(n, c = 1) {
|
|
11
|
+
const t = Math.pow(10, c);
|
|
12
|
+
return Math.round(n * t) / t;
|
|
13
|
+
}
|
|
14
|
+
function d(n, c, t, r) {
|
|
15
|
+
if (r == null || r <= 0)
|
|
16
|
+
return o(n, c, t);
|
|
17
|
+
const e = f(r), i = u(Math.round((n - c) / r) * r, e), a = u(Math.floor((t - c) / r) * r, e);
|
|
18
|
+
return c + o(i, 0, a);
|
|
19
|
+
}
|
|
20
|
+
function h(n, c, t, r = {}) {
|
|
21
|
+
const e = (n - c[0]) / (c[1] - c[0]) * (t[1] - t[0]) + t[0];
|
|
22
|
+
return d(e, t[0], t[1], r.step);
|
|
23
|
+
}
|
|
24
|
+
function l(n) {
|
|
25
|
+
return n instanceof MouseEvent ? n.clientX : n instanceof TouchEvent ? n.changedTouches[0].clientX : 0;
|
|
26
|
+
}
|
|
27
|
+
function M(n) {
|
|
28
|
+
return n instanceof MouseEvent ? n.clientY : n instanceof TouchEvent ? n.changedTouches[0].clientY : 0;
|
|
29
|
+
}
|
|
30
|
+
export {
|
|
31
|
+
o as clamp,
|
|
32
|
+
l as coordX,
|
|
33
|
+
M as coordY,
|
|
34
|
+
d as decimatedClamp,
|
|
35
|
+
f as precision,
|
|
36
|
+
u as precisionRound,
|
|
37
|
+
h as rescale,
|
|
38
|
+
s as toPercent
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../../src/components/inputs/slider/utils.ts"],"sourcesContent":["import React from \"react\";\n\nexport function toPercent(value: number, min: number, max: number) {\n return ((value - min) / (max - min)) * 100;\n}\n\nexport function precision(number: number) {\n return (`${number}`.split(\".\")[1] || \"\").length;\n}\n\nexport function clamp(value: number, min: number, max: number) {\n return Math.max(min, Math.min(value, max));\n}\n\nexport function precisionRound(number: number, precision = 1) {\n const factor = Math.pow(10, precision);\n\n return Math.round(number * factor) / factor;\n}\n\nexport function decimatedClamp(val: number, min: number, max: number, step?: number) {\n if (step == null || step <= 0) {\n return clamp(val, min, max);\n }\n\n const prec = precision(step);\n // Round value to nearest min + k1 * step\n const decimatedOffset = precisionRound(Math.round((val - min) / step) * step, prec);\n // Round range length _down_ to nearest min + k2 * step\n const decimatedRange = precisionRound(Math.floor((max - min) / step) * step, prec);\n\n return min + clamp(decimatedOffset, 0, decimatedRange);\n}\n\nexport function rescale(value: number, from: [number, number], to: [number, number], options: { step?: number } = {}) {\n const scaled = ((value - from[0]) / (from[1] - from[0])) * (to[1] - to[0]) + to[0];\n\n return decimatedClamp(scaled, to[0], to[1], options.step);\n}\n\nexport function coordX(event: React.MouseEvent | React.TouchEvent): number {\n if (event instanceof MouseEvent) {\n return event.clientX;\n }\n if (event instanceof TouchEvent) {\n return event.changedTouches[0].clientX;\n }\n return 0;\n}\n\nexport function coordY(event: React.MouseEvent | React.TouchEvent): number {\n if (event instanceof MouseEvent) {\n return event.clientY;\n }\n if (event instanceof TouchEvent) {\n return event.changedTouches[0].clientY;\n }\n return 0;\n}\n"],"names":["toPercent","value","min","max","precision","number","clamp","precisionRound","factor","decimatedClamp","val","step","prec","decimatedOffset","decimatedRange","rescale","from","to","options","scaled","coordX","event","coordY"],"mappings":"AAEO,SAASA,EAAUC,GAAeC,GAAaC,GAAa;AACjE,UAASF,IAAQC,MAAQC,IAAMD,KAAQ;AACzC;AAEO,SAASE,EAAUC,GAAgB;AACxC,UAAQ,GAAGA,CAAM,GAAG,MAAM,GAAG,EAAE,CAAC,KAAK,IAAI;AAC3C;AAEO,SAASC,EAAML,GAAeC,GAAaC,GAAa;AAC7D,SAAO,KAAK,IAAID,GAAK,KAAK,IAAID,GAAOE,CAAG,CAAC;AAC3C;AAEO,SAASI,EAAeF,GAAgBD,IAAY,GAAG;AAC5D,QAAMI,IAAS,KAAK,IAAI,IAAIJ,CAAS;AAErC,SAAO,KAAK,MAAMC,IAASG,CAAM,IAAIA;AACvC;AAEO,SAASC,EAAeC,GAAaR,GAAaC,GAAaQ,GAAe;AACnF,MAAIA,KAAQ,QAAQA,KAAQ;AAC1B,WAAOL,EAAMI,GAAKR,GAAKC,CAAG;AAG5B,QAAMS,IAAOR,EAAUO,CAAI,GAErBE,IAAkBN,EAAe,KAAK,OAAOG,IAAMR,KAAOS,CAAI,IAAIA,GAAMC,CAAI,GAE5EE,IAAiBP,EAAe,KAAK,OAAOJ,IAAMD,KAAOS,CAAI,IAAIA,GAAMC,CAAI;AAEjF,SAAOV,IAAMI,EAAMO,GAAiB,GAAGC,CAAc;AACvD;AAEO,SAASC,EAAQd,GAAee,GAAwBC,GAAsBC,IAA6B,CAAA,GAAI;AACpH,QAAMC,KAAWlB,IAAQe,EAAK,CAAC,MAAMA,EAAK,CAAC,IAAIA,EAAK,CAAC,MAAOC,EAAG,CAAC,IAAIA,EAAG,CAAC,KAAKA,EAAG,CAAC;AAEjF,SAAOR,EAAeU,GAAQF,EAAG,CAAC,GAAGA,EAAG,CAAC,GAAGC,EAAQ,IAAI;AAC1D;AAEO,SAASE,EAAOC,GAAoD;AACzE,SAAIA,aAAiB,aACZA,EAAM,UAEXA,aAAiB,aACZA,EAAM,eAAe,CAAC,EAAE,UAE1B;AACT;AAEO,SAASC,EAAOD,GAAoD;AACzE,SAAIA,aAAiB,aACZA,EAAM,UAEXA,aAAiB,aACZA,EAAM,eAAe,CAAC,EAAE,UAE1B;AACT;"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { TextField } from "./textField";
|
|
2
|
+
export type { TextFieldProps } from "./textField";
|
|
3
|
+
export { TextFieldAdornment } from "./textFieldAdornment";
|
|
4
|
+
export type { TextFieldAdornmentProps } from "./textFieldAdornment";
|
|
5
|
+
export { TextFieldWrapper } from "./textFieldWrapper";
|
|
6
|
+
export type { TextFieldWrapperProps } from "./textFieldWrapper";
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export interface TextFieldProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, "onChange" | "onBlur" | "size"> {
|
|
3
|
+
label?: string;
|
|
4
|
+
helperText?: React.ReactNode;
|
|
5
|
+
variant?: "outlined" | "filled";
|
|
6
|
+
size?: "small" | "medium" | "large";
|
|
7
|
+
required?: boolean;
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
value?: string | number;
|
|
10
|
+
className?: string;
|
|
11
|
+
placeholder?: string;
|
|
12
|
+
defaultValue?: string;
|
|
13
|
+
error?: boolean;
|
|
14
|
+
name?: string;
|
|
15
|
+
type?: string;
|
|
16
|
+
readOnly?: boolean;
|
|
17
|
+
fullWidth?: boolean;
|
|
18
|
+
onBlur?: (event: React.FocusEvent<HTMLInputElement>, data: TextFieldProps) => void;
|
|
19
|
+
onChange?: (event: React.ChangeEvent<HTMLInputElement>, data: TextFieldProps) => void;
|
|
20
|
+
startAdornment?: React.ReactNode;
|
|
21
|
+
endAdornment?: React.ReactNode;
|
|
22
|
+
id?: string;
|
|
23
|
+
inline?: boolean;
|
|
24
|
+
autoComplete?: string;
|
|
25
|
+
}
|
|
26
|
+
export declare const TextField: React.ForwardRefExoticComponent<TextFieldProps & React.RefAttributes<HTMLInputElement>>;
|