@smwb/ui-react 2.6.2 → 2.7.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 +4 -2
- package/AI_THEMING.md +17 -1
- package/README.md +84 -35
- package/dist/assets/styles/less/components/accordion/accordion.entry.css +1 -1
- package/dist/assets/styles/less/components/avatar/avatar.entry.css +1 -1
- package/dist/assets/styles/less/components/chart/chart.entry.css +1 -0
- package/dist/assets/styles/less/components/chip/chip.entry.css +1 -1
- package/dist/assets/styles/less/components/descriptionList/descriptionList.entry.css +1 -0
- package/dist/assets/styles/less/components/emptyState/emptyState.entry.css +1 -0
- package/dist/assets/styles/less/components/kanban/kanban.entry.css +1 -0
- package/dist/assets/styles/less/components/meter/meter.entry.css +1 -0
- package/dist/assets/styles/less/components/modal/modal.entry.css +1 -1
- package/dist/assets/styles/less/components/overflowMenu/overflowMenu.entry.css +1 -1
- package/dist/assets/styles/less/components/personChip/personChip.entry.css +1 -0
- package/dist/assets/styles/less/components/progressIndicator/progressIndicator.entry.css +1 -1
- package/dist/assets/styles/less/components/sectionHeader/sectionHeader.entry.css +1 -0
- package/dist/assets/styles/less/components/selectField/selectField.entry.css +1 -1
- package/dist/assets/styles/less/components/stat/stat.entry.css +1 -0
- package/dist/assets/styles/less/components/stepper/stepper.entry.css +1 -1
- package/dist/assets/styles/less/components/table/table.entry.css +1 -1
- package/dist/assets/styles/less/components/tabs/tab/tab.entry.css +1 -1
- package/dist/assets/styles/less/components/tabs/tabs.entry.css +1 -1
- package/dist/assets/styles/less/components/textField/textField.entry.css +1 -1
- package/dist/assets/styles/less/components/timeline/timeline.entry.css +1 -0
- package/dist/assets/styles/less/components/tooltip/tooltip.entry.css +1 -1
- package/dist/assets/styles/less/components/typography/typography.entry.css +1 -1
- package/dist/assets/styles/less/connects/rt/table.entry.css +1 -0
- package/dist/assets/styles/less/tokens.entry.css +1 -0
- package/dist/chart.d.ts +2 -0
- package/dist/chart.js +8 -0
- package/dist/chart.js.map +1 -0
- package/dist/components/base/icon/icon.js +8 -7
- package/dist/components/base/icon/icon.js.map +1 -1
- package/dist/components/base/ripple/ripple.js +11 -10
- package/dist/components/base/ripple/ripple.js.map +1 -1
- package/dist/components/dataDisplay/accordion/accordion.d.ts +18 -1
- package/dist/components/dataDisplay/accordion/accordion.js +77 -54
- package/dist/components/dataDisplay/accordion/accordion.js.map +1 -1
- package/dist/components/dataDisplay/assetGrid/assetGrid.js +15 -14
- package/dist/components/dataDisplay/assetGrid/assetGrid.js.map +1 -1
- package/dist/components/dataDisplay/avatar/avatar.d.ts +4 -0
- package/dist/components/dataDisplay/avatar/avatar.js +45 -30
- package/dist/components/dataDisplay/avatar/avatar.js.map +1 -1
- package/dist/components/dataDisplay/badge/badge.js +11 -10
- package/dist/components/dataDisplay/badge/badge.js.map +1 -1
- package/dist/components/dataDisplay/card/card.js +16 -15
- package/dist/components/dataDisplay/card/card.js.map +1 -1
- package/dist/components/dataDisplay/carousel/carousel.js +23 -22
- package/dist/components/dataDisplay/carousel/carousel.js.map +1 -1
- package/dist/components/dataDisplay/chart/chart.d.ts +65 -0
- package/dist/components/dataDisplay/chart/chart.js +133 -0
- package/dist/components/dataDisplay/chart/chart.js.map +1 -0
- package/dist/components/dataDisplay/chart/chartTheme.d.ts +35 -0
- package/dist/components/dataDisplay/chart/chartTheme.js +74 -0
- package/dist/components/dataDisplay/chart/chartTheme.js.map +1 -0
- package/dist/components/dataDisplay/chart/index.d.ts +4 -0
- package/dist/components/dataDisplay/chat/chat.js +5 -4
- package/dist/components/dataDisplay/chat/chat.js.map +1 -1
- package/dist/components/dataDisplay/chip/chip.js +5 -4
- package/dist/components/dataDisplay/chip/chip.js.map +1 -1
- package/dist/components/dataDisplay/chipGroup/chipGroup.js +10 -9
- package/dist/components/dataDisplay/chipGroup/chipGroup.js.map +1 -1
- package/dist/components/dataDisplay/descriptionList/descriptionList.d.ts +37 -0
- package/dist/components/dataDisplay/descriptionList/descriptionList.js +43 -0
- package/dist/components/dataDisplay/descriptionList/descriptionList.js.map +1 -0
- package/dist/components/dataDisplay/descriptionList/index.d.ts +2 -0
- package/dist/components/dataDisplay/expansionPanel/expansionPanel.js +5 -4
- package/dist/components/dataDisplay/expansionPanel/expansionPanel.js.map +1 -1
- package/dist/components/dataDisplay/imagesList/imagesList.js +11 -10
- package/dist/components/dataDisplay/imagesList/imagesList.js.map +1 -1
- package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js +31 -24
- package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js.map +1 -1
- package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.d.ts +1 -1
- package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.js +16 -13
- package/dist/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.js.map +1 -1
- package/dist/components/dataDisplay/kanban/index.d.ts +2 -0
- package/dist/components/dataDisplay/kanban/kanban.d.ts +47 -0
- package/dist/components/dataDisplay/kanban/kanban.js +63 -0
- package/dist/components/dataDisplay/kanban/kanban.js.map +1 -0
- package/dist/components/dataDisplay/lazyImage/lazyImage.js +9 -8
- package/dist/components/dataDisplay/lazyImage/lazyImage.js.map +1 -1
- package/dist/components/dataDisplay/list/list.js +11 -10
- package/dist/components/dataDisplay/list/list.js.map +1 -1
- package/dist/components/dataDisplay/meter/index.d.ts +2 -0
- package/dist/components/dataDisplay/meter/meter.d.ts +33 -0
- package/dist/components/dataDisplay/meter/meter.js +62 -0
- package/dist/components/dataDisplay/meter/meter.js.map +1 -0
- package/dist/components/dataDisplay/personChip/index.d.ts +2 -0
- package/dist/components/dataDisplay/personChip/personChip.d.ts +31 -0
- package/dist/components/dataDisplay/personChip/personChip.js +61 -0
- package/dist/components/dataDisplay/personChip/personChip.js.map +1 -0
- package/dist/components/dataDisplay/stat/index.d.ts +2 -0
- package/dist/components/dataDisplay/stat/stat.d.ts +36 -0
- package/dist/components/dataDisplay/stat/stat.js +48 -0
- package/dist/components/dataDisplay/stat/stat.js.map +1 -0
- package/dist/components/dataDisplay/table/table.d.ts +7 -0
- package/dist/components/dataDisplay/table/table.js +21 -15
- package/dist/components/dataDisplay/table/table.js.map +1 -1
- package/dist/components/dataDisplay/table/tableCell.d.ts +3 -1
- package/dist/components/dataDisplay/table/tableCell.js +11 -2
- package/dist/components/dataDisplay/table/tableCell.js.map +1 -1
- package/dist/components/dataDisplay/table/tableHeadCell.d.ts +11 -1
- package/dist/components/dataDisplay/table/tableHeadCell.js +54 -24
- package/dist/components/dataDisplay/table/tableHeadCell.js.map +1 -1
- package/dist/components/dataDisplay/table/tablePagination/tablePagination.js +10 -9
- package/dist/components/dataDisplay/table/tablePagination/tablePagination.js.map +1 -1
- package/dist/components/dataDisplay/thumbCard/thumbCard.js +10 -9
- package/dist/components/dataDisplay/thumbCard/thumbCard.js.map +1 -1
- package/dist/components/dataDisplay/timeline/index.d.ts +2 -0
- package/dist/components/dataDisplay/timeline/timeline.d.ts +43 -0
- package/dist/components/dataDisplay/timeline/timeline.js +44 -0
- package/dist/components/dataDisplay/timeline/timeline.js.map +1 -0
- package/dist/components/dataDisplay/treeView/treeView.js +5 -4
- package/dist/components/dataDisplay/treeView/treeView.js.map +1 -1
- package/dist/components/dataDisplay/typography/typography.d.ts +4 -0
- package/dist/components/dataDisplay/typography/typography.js +41 -23
- package/dist/components/dataDisplay/typography/typography.js.map +1 -1
- package/dist/components/feedBack/confirmDialog/confirmDialog.js +14 -13
- package/dist/components/feedBack/confirmDialog/confirmDialog.js.map +1 -1
- package/dist/components/feedBack/emptyState/emptyState.d.ts +26 -0
- package/dist/components/feedBack/emptyState/emptyState.js +27 -0
- package/dist/components/feedBack/emptyState/emptyState.js.map +1 -0
- package/dist/components/feedBack/emptyState/index.d.ts +2 -0
- package/dist/components/feedBack/message/message.js +8 -7
- package/dist/components/feedBack/message/message.js.map +1 -1
- package/dist/components/feedBack/modal/modal.js +5 -4
- package/dist/components/feedBack/modal/modal.js.map +1 -1
- package/dist/components/feedBack/progressIndicator/progressIndicator.d.ts +14 -1
- package/dist/components/feedBack/progressIndicator/progressIndicator.js +72 -40
- package/dist/components/feedBack/progressIndicator/progressIndicator.js.map +1 -1
- package/dist/components/feedBack/saveAssetDialog/saveAssetDialog.js +31 -29
- package/dist/components/feedBack/saveAssetDialog/saveAssetDialog.js.map +1 -1
- package/dist/components/feedBack/skeleton/skeleton.js +17 -16
- package/dist/components/feedBack/skeleton/skeleton.js.map +1 -1
- package/dist/components/feedBack/snackbar/snackbar.js +6 -5
- package/dist/components/feedBack/snackbar/snackbar.js.map +1 -1
- package/dist/components/feedBack/tooltip/tooltip.js +57 -49
- package/dist/components/feedBack/tooltip/tooltip.js.map +1 -1
- package/dist/components/inputs/button/button.js +16 -15
- package/dist/components/inputs/button/button.js.map +1 -1
- package/dist/components/inputs/buttonGroups/buttonGroup.js +5 -4
- package/dist/components/inputs/buttonGroups/buttonGroup.js.map +1 -1
- package/dist/components/inputs/checkbox/checkbox.js +10 -9
- package/dist/components/inputs/checkbox/checkbox.js.map +1 -1
- package/dist/components/inputs/datePicker/datePicker.js +123 -120
- package/dist/components/inputs/datePicker/datePicker.js.map +1 -1
- package/dist/components/inputs/dateTimePicker/dateTimePicker.js +121 -119
- package/dist/components/inputs/dateTimePicker/dateTimePicker.js.map +1 -1
- package/dist/components/inputs/fileDrop/fileDrop.js +13 -12
- package/dist/components/inputs/fileDrop/fileDrop.js.map +1 -1
- package/dist/components/inputs/fileInput/fileInput.js +4 -3
- package/dist/components/inputs/fileInput/fileInput.js.map +1 -1
- package/dist/components/inputs/floatingButton/floatingButton.js +17 -16
- package/dist/components/inputs/floatingButton/floatingButton.js.map +1 -1
- package/dist/components/inputs/radioButton/radioButton.js +11 -10
- package/dist/components/inputs/radioButton/radioButton.js.map +1 -1
- package/dist/components/inputs/rating/rating.js +18 -17
- package/dist/components/inputs/rating/rating.js.map +1 -1
- package/dist/components/inputs/selectField/dropdownMenu.d.ts +1 -1
- package/dist/components/inputs/selectField/dropdownMenu.js +72 -69
- package/dist/components/inputs/selectField/dropdownMenu.js.map +1 -1
- package/dist/components/inputs/selectField/selectField.d.ts +2 -0
- package/dist/components/inputs/selectField/selectField.js +128 -117
- package/dist/components/inputs/selectField/selectField.js.map +1 -1
- package/dist/components/inputs/slider/slider.js +4 -3
- package/dist/components/inputs/slider/slider.js.map +1 -1
- package/dist/components/inputs/textField/textField.js +16 -15
- package/dist/components/inputs/textField/textField.js.map +1 -1
- package/dist/components/inputs/textField/utils.d.ts +1 -1
- package/dist/components/inputs/timePicker/timePicker.js +66 -63
- package/dist/components/inputs/timePicker/timePicker.js.map +1 -1
- package/dist/components/inputs/toggle/toggle.js +14 -13
- package/dist/components/inputs/toggle/toggle.js.map +1 -1
- package/dist/components/inputs/valueSlider/valueSlider.js +9 -8
- package/dist/components/inputs/valueSlider/valueSlider.js.map +1 -1
- package/dist/components/layout/appLayout/appLayout.js +20 -19
- package/dist/components/layout/appLayout/appLayout.js.map +1 -1
- package/dist/components/layout/divider/divider.js +9 -8
- package/dist/components/layout/divider/divider.js.map +1 -1
- package/dist/components/layout/floatingWindow/floatingWindow.js +4 -3
- package/dist/components/layout/floatingWindow/floatingWindow.js.map +1 -1
- package/dist/components/layout/grid/grid.js +17 -16
- package/dist/components/layout/grid/grid.js.map +1 -1
- package/dist/components/layout/page/page.js +9 -8
- package/dist/components/layout/page/page.js.map +1 -1
- package/dist/components/layout/pageHeader/pageHeader.js +10 -9
- package/dist/components/layout/pageHeader/pageHeader.js.map +1 -1
- package/dist/components/layout/screenDivider/screenDivider.js +19 -18
- package/dist/components/layout/screenDivider/screenDivider.js.map +1 -1
- package/dist/components/layout/sectionHeader/index.d.ts +2 -0
- package/dist/components/layout/sectionHeader/sectionHeader.d.ts +31 -0
- package/dist/components/layout/sectionHeader/sectionHeader.js +67 -0
- package/dist/components/layout/sectionHeader/sectionHeader.js.map +1 -0
- package/dist/components/layout/sheet/sheet.js +5 -4
- package/dist/components/layout/sheet/sheet.js.map +1 -1
- package/dist/components/layout/stack/stack.js +10 -9
- package/dist/components/layout/stack/stack.js.map +1 -1
- package/dist/components/navigation/appBar/appBar.js +18 -17
- package/dist/components/navigation/appBar/appBar.js.map +1 -1
- package/dist/components/navigation/bottomBar/bottomBar.js +5 -4
- package/dist/components/navigation/bottomBar/bottomBar.js.map +1 -1
- package/dist/components/navigation/breadcrumbs/breadcrumbs.js +5 -4
- package/dist/components/navigation/breadcrumbs/breadcrumbs.js.map +1 -1
- package/dist/components/navigation/menu/menu.js +6 -5
- package/dist/components/navigation/menu/menu.js.map +1 -1
- package/dist/components/navigation/overflowMenu/overflowMenu.js +16 -15
- package/dist/components/navigation/overflowMenu/overflowMenu.js.map +1 -1
- package/dist/components/navigation/pagination/pagination.js +5 -4
- package/dist/components/navigation/pagination/pagination.js.map +1 -1
- package/dist/components/navigation/sidebar/sidebar.js +13 -12
- package/dist/components/navigation/sidebar/sidebar.js.map +1 -1
- package/dist/components/navigation/stepper/stepper.d.ts +10 -2
- package/dist/components/navigation/stepper/stepper.js +33 -30
- package/dist/components/navigation/stepper/stepper.js.map +1 -1
- package/dist/components/navigation/tabs/tab/tab.d.ts +2 -0
- package/dist/components/navigation/tabs/tab/tab.js +14 -13
- package/dist/components/navigation/tabs/tab/tab.js.map +1 -1
- package/dist/components/navigation/tabs/tabs.d.ts +12 -0
- package/dist/components/navigation/tabs/tabs.js +138 -83
- package/dist/components/navigation/tabs/tabs.js.map +1 -1
- package/dist/connects/rt/table/draggableHeader.d.ts +1 -1
- package/dist/connects/rt/table/draggableHeader.js.map +1 -0
- package/dist/connects/rt/table/headerCellRenderer.d.ts +6 -0
- package/dist/connects/rt/table/headerCellRenderer.js +21 -0
- package/dist/connects/rt/table/headerCellRenderer.js.map +1 -0
- package/dist/connects/rt/table/table.d.ts +2 -0
- package/dist/connects/rt/table/table.js +200 -0
- package/dist/connects/rt/table/table.js.map +1 -0
- package/dist/connects/rt/table/utils.js.map +1 -0
- package/dist/headless/components/dataDisplay/accordion/accordion.js +76 -54
- package/dist/headless/components/dataDisplay/accordion/accordion.js.map +1 -1
- package/dist/headless/components/dataDisplay/avatar/avatar.js +45 -31
- package/dist/headless/components/dataDisplay/avatar/avatar.js.map +1 -1
- package/dist/headless/components/dataDisplay/descriptionList/descriptionList.js +41 -0
- package/dist/headless/components/dataDisplay/descriptionList/descriptionList.js.map +1 -0
- package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js +29 -23
- package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItem.js.map +1 -1
- package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.js +16 -13
- package/dist/headless/components/dataDisplay/imagesList/imagesListItem/imagesListItemModal.js.map +1 -1
- package/dist/headless/components/dataDisplay/kanban/kanban.js +61 -0
- package/dist/headless/components/dataDisplay/kanban/kanban.js.map +1 -0
- package/dist/headless/components/dataDisplay/meter/meter.js +60 -0
- package/dist/headless/components/dataDisplay/meter/meter.js.map +1 -0
- package/dist/headless/components/dataDisplay/personChip/personChip.js +59 -0
- package/dist/headless/components/dataDisplay/personChip/personChip.js.map +1 -0
- package/dist/headless/components/dataDisplay/stat/stat.js +46 -0
- package/dist/headless/components/dataDisplay/stat/stat.js.map +1 -0
- package/dist/headless/components/dataDisplay/table/table.js +16 -11
- package/dist/headless/components/dataDisplay/table/table.js.map +1 -1
- package/dist/headless/components/dataDisplay/table/tableCell.js +11 -2
- package/dist/headless/components/dataDisplay/table/tableCell.js.map +1 -1
- package/dist/headless/components/dataDisplay/table/tableHeadCell.js +54 -24
- package/dist/headless/components/dataDisplay/table/tableHeadCell.js.map +1 -1
- package/dist/headless/components/dataDisplay/timeline/timeline.js +42 -0
- package/dist/headless/components/dataDisplay/timeline/timeline.js.map +1 -0
- package/dist/headless/components/dataDisplay/typography/typography.js +39 -22
- package/dist/headless/components/dataDisplay/typography/typography.js.map +1 -1
- package/dist/headless/components/feedBack/confirmDialog/confirmDialog.js +9 -9
- package/dist/headless/components/feedBack/confirmDialog/confirmDialog.js.map +1 -1
- package/dist/headless/components/feedBack/emptyState/emptyState.js +25 -0
- package/dist/headless/components/feedBack/emptyState/emptyState.js.map +1 -0
- package/dist/headless/components/feedBack/progressIndicator/progressIndicator.js +70 -39
- package/dist/headless/components/feedBack/progressIndicator/progressIndicator.js.map +1 -1
- package/dist/headless/components/feedBack/saveAssetDialog/saveAssetDialog.js +27 -26
- package/dist/headless/components/feedBack/saveAssetDialog/saveAssetDialog.js.map +1 -1
- package/dist/headless/components/feedBack/tooltip/tooltip.js +53 -46
- package/dist/headless/components/feedBack/tooltip/tooltip.js.map +1 -1
- package/dist/headless/components/inputs/datePicker/datePicker.js +112 -110
- package/dist/headless/components/inputs/datePicker/datePicker.js.map +1 -1
- package/dist/headless/components/inputs/dateTimePicker/dateTimePicker.js +121 -119
- package/dist/headless/components/inputs/dateTimePicker/dateTimePicker.js.map +1 -1
- package/dist/headless/components/inputs/selectField/dropdownMenu.js +72 -69
- package/dist/headless/components/inputs/selectField/dropdownMenu.js.map +1 -1
- package/dist/headless/components/inputs/selectField/selectField.js +109 -99
- package/dist/headless/components/inputs/selectField/selectField.js.map +1 -1
- package/dist/headless/components/inputs/timePicker/timePicker.js +65 -63
- package/dist/headless/components/inputs/timePicker/timePicker.js.map +1 -1
- package/dist/headless/components/layout/sectionHeader/sectionHeader.js +65 -0
- package/dist/headless/components/layout/sectionHeader/sectionHeader.js.map +1 -0
- package/dist/headless/components/navigation/stepper/stepper.js +31 -29
- package/dist/headless/components/navigation/stepper/stepper.js.map +1 -1
- package/dist/headless/components/navigation/tabs/tab/tab.js.map +1 -1
- package/dist/headless/components/navigation/tabs/tabs.js +129 -75
- package/dist/headless/components/navigation/tabs/tabs.js.map +1 -1
- package/dist/headless/hooks/useSafeLayoutEffect.js +4 -2
- package/dist/headless/hooks/useSafeLayoutEffect.js.map +1 -1
- package/dist/headless/icons/catalog.js +78 -1
- package/dist/headless/icons/catalog.js.map +1 -1
- package/dist/headless/icons/index.js +596 -574
- package/dist/headless/icons/index.js.map +1 -1
- package/dist/headless/icons/svg/accountTree.js +9 -0
- package/dist/headless/icons/svg/accountTree.js.map +1 -0
- package/dist/headless/icons/svg/callSplit.js +9 -0
- package/dist/headless/icons/svg/callSplit.js.map +1 -0
- package/dist/headless/icons/svg/deviceHub.js +8 -0
- package/dist/headless/icons/svg/deviceHub.js.map +1 -0
- package/dist/headless/icons/svg/editNote.js +9 -0
- package/dist/headless/icons/svg/editNote.js.map +1 -0
- package/dist/headless/icons/svg/filterList.js +9 -0
- package/dist/headless/icons/svg/filterList.js.map +1 -0
- package/dist/headless/icons/svg/forkRight.js +8 -0
- package/dist/headless/icons/svg/forkRight.js.map +1 -0
- package/dist/headless/icons/svg/groups.js +9 -0
- package/dist/headless/icons/svg/groups.js.map +1 -0
- package/dist/headless/icons/svg/hub.js +8 -0
- package/dist/headless/icons/svg/hub.js.map +1 -0
- package/dist/headless/icons/svg/index.js +598 -576
- package/dist/headless/icons/svg/index.js.map +1 -1
- package/dist/headless/icons/svg/lan.js +9 -0
- package/dist/headless/icons/svg/lan.js.map +1 -0
- package/dist/headless/icons/svg/personOff.js +9 -0
- package/dist/headless/icons/svg/personOff.js.map +1 -0
- package/dist/headless/icons/svg/schema.js +9 -0
- package/dist/headless/icons/svg/schema.js.map +1 -0
- package/dist/headless/index.js +209 -183
- package/dist/headless/index.js.map +1 -1
- package/dist/hooks/useSafeLayoutEffect.d.ts +7 -1
- package/dist/hooks/useSafeLayoutEffect.js +4 -2
- package/dist/hooks/useSafeLayoutEffect.js.map +1 -1
- package/dist/icons/catalog.d.ts +1 -1
- package/dist/icons/catalog.js +78 -1
- package/dist/icons/catalog.js.map +1 -1
- package/dist/icons/index.js +596 -574
- package/dist/icons/index.js.map +1 -1
- package/dist/icons/svg/accountTree.d.ts +4 -0
- package/dist/icons/svg/accountTree.js +9 -0
- package/dist/icons/svg/accountTree.js.map +1 -0
- package/dist/icons/svg/callSplit.d.ts +4 -0
- package/dist/icons/svg/callSplit.js +9 -0
- package/dist/icons/svg/callSplit.js.map +1 -0
- package/dist/icons/svg/deviceHub.d.ts +4 -0
- package/dist/icons/svg/deviceHub.js +8 -0
- package/dist/icons/svg/deviceHub.js.map +1 -0
- package/dist/icons/svg/editNote.d.ts +4 -0
- package/dist/icons/svg/editNote.js +9 -0
- package/dist/icons/svg/editNote.js.map +1 -0
- package/dist/icons/svg/filterList.d.ts +4 -0
- package/dist/icons/svg/filterList.js +9 -0
- package/dist/icons/svg/filterList.js.map +1 -0
- package/dist/icons/svg/forkRight.d.ts +4 -0
- package/dist/icons/svg/forkRight.js +8 -0
- package/dist/icons/svg/forkRight.js.map +1 -0
- package/dist/icons/svg/groups.d.ts +4 -0
- package/dist/icons/svg/groups.js +9 -0
- package/dist/icons/svg/groups.js.map +1 -0
- package/dist/icons/svg/hub.d.ts +4 -0
- package/dist/icons/svg/hub.js +8 -0
- package/dist/icons/svg/hub.js.map +1 -0
- package/dist/icons/svg/index.d.ts +11 -0
- package/dist/icons/svg/index.js +598 -576
- package/dist/icons/svg/index.js.map +1 -1
- package/dist/icons/svg/lan.d.ts +4 -0
- package/dist/icons/svg/lan.js +9 -0
- package/dist/icons/svg/lan.js.map +1 -0
- package/dist/icons/svg/personOff.d.ts +4 -0
- package/dist/icons/svg/personOff.js +9 -0
- package/dist/icons/svg/personOff.js.map +1 -0
- package/dist/icons/svg/schema.d.ts +4 -0
- package/dist/icons/svg/schema.js +9 -0
- package/dist/icons/svg/schema.js.map +1 -0
- package/dist/icons.cjs +1 -1
- package/dist/icons.cjs.map +1 -1
- package/dist/index.cjs +2 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +16 -0
- package/dist/index.js +209 -183
- package/dist/index.js.map +1 -1
- package/package.json +18 -7
- package/dist/react-table/components/base/icon/icon.js +0 -60
- package/dist/react-table/components/base/icon/icon.js.map +0 -1
- package/dist/react-table/components/base/icon/iconProvider.js +0 -15
- package/dist/react-table/components/base/icon/iconProvider.js.map +0 -1
- package/dist/react-table/components/dataDisplay/table/table.js +0 -37
- package/dist/react-table/components/dataDisplay/table/table.js.map +0 -1
- package/dist/react-table/components/dataDisplay/table/tableBody.js +0 -7
- package/dist/react-table/components/dataDisplay/table/tableBody.js.map +0 -1
- package/dist/react-table/components/dataDisplay/table/tableCell.js +0 -7
- package/dist/react-table/components/dataDisplay/table/tableCell.js.map +0 -1
- package/dist/react-table/components/dataDisplay/table/tableHead.js +0 -7
- package/dist/react-table/components/dataDisplay/table/tableHead.js.map +0 -1
- package/dist/react-table/components/dataDisplay/table/tableHeadCell.js +0 -48
- package/dist/react-table/components/dataDisplay/table/tableHeadCell.js.map +0 -1
- package/dist/react-table/components/dataDisplay/table/tablePagination/tablePagination.js +0 -40
- package/dist/react-table/components/dataDisplay/table/tablePagination/tablePagination.js.map +0 -1
- package/dist/react-table/components/dataDisplay/table/tableRow.js +0 -20
- package/dist/react-table/components/dataDisplay/table/tableRow.js.map +0 -1
- package/dist/react-table/components/feedBack/message/message.js +0 -31
- package/dist/react-table/components/feedBack/message/message.js.map +0 -1
- package/dist/react-table/components/feedBack/progressIndicator/progressIndicator.js +0 -51
- package/dist/react-table/components/feedBack/progressIndicator/progressIndicator.js.map +0 -1
- package/dist/react-table/components/inputs/textField/textField.js +0 -125
- package/dist/react-table/components/inputs/textField/textField.js.map +0 -1
- package/dist/react-table/components/inputs/textField/textFieldAdornment.js +0 -25
- package/dist/react-table/components/inputs/textField/textFieldAdornment.js.map +0 -1
- package/dist/react-table/components/inputs/textField/textFieldWrapper.js +0 -50
- package/dist/react-table/components/inputs/textField/textFieldWrapper.js.map +0 -1
- package/dist/react-table/components/inputs/textField/utils.js +0 -11
- package/dist/react-table/components/inputs/textField/utils.js.map +0 -1
- package/dist/react-table/connects/rt/table/draggableHeader.js.map +0 -1
- package/dist/react-table/connects/rt/table/headerCellRenderer.js +0 -14
- package/dist/react-table/connects/rt/table/headerCellRenderer.js.map +0 -1
- package/dist/react-table/connects/rt/table/table.js +0 -180
- package/dist/react-table/connects/rt/table/table.js.map +0 -1
- package/dist/react-table/connects/rt/table/utils.js.map +0 -1
- package/dist/react-table/hooks/useForkRef.js +0 -13
- package/dist/react-table/hooks/useForkRef.js.map +0 -1
- package/dist/react-table/hooks/useSafeLayoutEffect.js +0 -6
- package/dist/react-table/hooks/useSafeLayoutEffect.js.map +0 -1
- package/dist/react-table/icons/config.js +0 -9
- package/dist/react-table/icons/config.js.map +0 -1
- package/dist/react-table/icons/registry.js +0 -12
- package/dist/react-table/icons/registry.js.map +0 -1
- package/dist/react-table/icons/store.js +0 -10
- package/dist/react-table/icons/store.js.map +0 -1
- package/dist/react-table/utils/setRef.js +0 -7
- package/dist/react-table/utils/setRef.js.map +0 -1
- package/dist/storybook/storyPlay.d.ts +0 -19
- /package/dist/{react-table/connects → connects}/rt/table/draggableHeader.js +0 -0
- /package/dist/{react-table/connects → connects}/rt/table/utils.js +0 -0
- /package/dist/{react-table/react-table.js → react-table.js} +0 -0
- /package/dist/{react-table/react-table.js.map → react-table.js.map} +0 -0
package/package.json
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@smwb/ui-react",
|
|
3
3
|
"main": "./dist/index.cjs",
|
|
4
|
-
"version": "2.
|
|
4
|
+
"version": "2.7.0",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"engines": {
|
|
7
7
|
"node": ">=20"
|
|
8
8
|
},
|
|
9
9
|
"scripts": {
|
|
10
|
-
"build": "npm run build:esm && npm run build:headless && npm run build:
|
|
10
|
+
"build": "npm run build:esm && npm run build:headless && npm run build:cjs && npm run build:types",
|
|
11
11
|
"build:headless": "vite build --config vite.config.headless.ts",
|
|
12
|
-
"build:react-table": "vite build --config vite.config.react-table.ts",
|
|
13
12
|
"build:prod": "tsc -p configs/ts/tsconfig.prod.json --noEmit",
|
|
14
13
|
"typecheck": "tsc -p configs/ts/tsconfig.full.json --noEmit",
|
|
15
14
|
"test": "npm run lint && npm run jest",
|
|
@@ -23,7 +22,7 @@
|
|
|
23
22
|
"storybook": "storybook dev -p 6006",
|
|
24
23
|
"build-storybook": "storybook build",
|
|
25
24
|
"build:types": "tsc -p configs/ts/tsconfig.prod.json --emitDeclarationOnly --declaration --outDir dist",
|
|
26
|
-
"build:esm": "vite build",
|
|
25
|
+
"build:esm": "vite build && node ../styles/scripts/check-token-layer.mjs dist",
|
|
27
26
|
"build:cjs": "vite build --config vite.config.cjs.ts && node scripts/clean-cjs-css.mjs"
|
|
28
27
|
},
|
|
29
28
|
"repository": {
|
|
@@ -53,7 +52,7 @@
|
|
|
53
52
|
"@babel/preset-typescript": "^7.28.5",
|
|
54
53
|
"@chromatic-com/storybook": "^5.2.1",
|
|
55
54
|
"@eslint/js": "^10.0.1",
|
|
56
|
-
"@smwb/ui-styles": "^1.
|
|
55
|
+
"@smwb/ui-styles": "^1.5.0",
|
|
57
56
|
"@storybook/addon-docs": "^10.4.0",
|
|
58
57
|
"@storybook/addon-links": "^10.4.0",
|
|
59
58
|
"@storybook/react": "^10.4.0",
|
|
@@ -70,6 +69,7 @@
|
|
|
70
69
|
"@types/react-transition-group": "^4.4.12",
|
|
71
70
|
"@vitejs/plugin-react": "^4.7.0",
|
|
72
71
|
"concurrently": "^9.2.1",
|
|
72
|
+
"echarts": "^6.1.0",
|
|
73
73
|
"eslint": "^10.4.0",
|
|
74
74
|
"eslint-config-prettier": "^10.1.8",
|
|
75
75
|
"eslint-plugin-prettier": "^5.5.5",
|
|
@@ -157,14 +157,25 @@
|
|
|
157
157
|
},
|
|
158
158
|
"./react-table": {
|
|
159
159
|
"types": "./dist/react-table.d.ts",
|
|
160
|
-
"import": "./dist/react-table
|
|
160
|
+
"import": "./dist/react-table.js"
|
|
161
|
+
},
|
|
162
|
+
"./chart": {
|
|
163
|
+
"types": "./dist/chart.d.ts",
|
|
164
|
+
"import": "./dist/chart.js",
|
|
165
|
+
"default": "./dist/chart.js"
|
|
161
166
|
},
|
|
162
167
|
"./dist/*": "./dist/*",
|
|
163
168
|
"./package.json": "./package.json"
|
|
164
169
|
},
|
|
165
170
|
"peerDependencies": {
|
|
166
171
|
"react": ">=18",
|
|
167
|
-
"react-dom": ">=18"
|
|
172
|
+
"react-dom": ">=18",
|
|
173
|
+
"echarts": "^5.4.0 || ^6.0.0"
|
|
174
|
+
},
|
|
175
|
+
"peerDependenciesMeta": {
|
|
176
|
+
"echarts": {
|
|
177
|
+
"optional": true
|
|
178
|
+
}
|
|
168
179
|
},
|
|
169
180
|
"homepage": "https://sourcecraft.dev/elfenmail/ui"
|
|
170
181
|
}
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { jsx as l } from "react/jsx-runtime";
|
|
2
|
-
import { forwardRef as L, useSyncExternalStore as C } from "react";
|
|
3
|
-
import N from "clsx";
|
|
4
|
-
import { getIcon as O } from "../../../icons/registry.js";
|
|
5
|
-
import { getIconConfig as R } from "../../../icons/config.js";
|
|
6
|
-
import { subscribeIcons as j } from "../../../icons/store.js";
|
|
7
|
-
import { useIconSource as B } from "./iconProvider.js";
|
|
8
|
-
const E = ["primary", "secondary", "error", "success", "warning", "info", "disabled"], y = /* @__PURE__ */ new Set();
|
|
9
|
-
function T(r) {
|
|
10
|
-
!R().warnOnMissing || y.has(r) || (y.add(r), console.warn(
|
|
11
|
-
`[smwb] Icon "${r}" is not registered. Register it (import { ${r} } from "@smwb/ui-react/icons") or use source="auto" to fall back to Material Symbols.`
|
|
12
|
-
));
|
|
13
|
-
}
|
|
14
|
-
const V = L(function({ className: S, weight: a = 400, fill: v = 0, size: n = 20, grade: I = 100, name: o, color: e = "inherit", title: i, source: _, ...u }, x) {
|
|
15
|
-
var w, b;
|
|
16
|
-
const d = B(_), g = typeof o == "string" ? o : null, m = () => {
|
|
17
|
-
var h;
|
|
18
|
-
return g === null ? null : (h = O(g)) != null ? h : null;
|
|
19
|
-
}, M = C(j, m, m), s = typeof o == "object" ? o : M, f = typeof o == "string" ? o : o.name, t = d === "google" ? "google" : s ? "smwb" : d === "smwb" ? "missing" : "google";
|
|
20
|
-
t === "missing" && T(f);
|
|
21
|
-
const p = i === void 0, $ = e && E.includes(e) ? `smwb-icon_color-${e}` : null, c = typeof n == "number" ? `${n}px` : n, k = Math.round(Math.min(3, Math.max(1, a / 200)) * 100) / 100;
|
|
22
|
-
return /* @__PURE__ */ l(
|
|
23
|
-
"span",
|
|
24
|
-
{
|
|
25
|
-
...u,
|
|
26
|
-
ref: x,
|
|
27
|
-
"data-testid": "icon",
|
|
28
|
-
"data-icon-source": t,
|
|
29
|
-
role: p ? void 0 : "img",
|
|
30
|
-
"aria-hidden": p ? !0 : void 0,
|
|
31
|
-
"aria-label": i,
|
|
32
|
-
title: i,
|
|
33
|
-
style: {
|
|
34
|
-
...u.style,
|
|
35
|
-
...t === "google" ? { fontVariationSettings: `'FILL' ${v}, 'wght' ${a}, 'GRAD' ${I}, 'opsz' 48` } : null
|
|
36
|
-
},
|
|
37
|
-
className: N("smwb-icon__wrapper", $, S),
|
|
38
|
-
children: t === "google" ? /* @__PURE__ */ l("span", { className: "material-symbols-outlined", style: { fontSize: c }, children: f }) : /* @__PURE__ */ l(
|
|
39
|
-
"svg",
|
|
40
|
-
{
|
|
41
|
-
className: "smwb-icon__svg",
|
|
42
|
-
viewBox: (w = s == null ? void 0 : s.viewBox) != null ? w : "0 0 24 24",
|
|
43
|
-
style: { width: c, height: c },
|
|
44
|
-
fill: "none",
|
|
45
|
-
stroke: "currentColor",
|
|
46
|
-
strokeWidth: k,
|
|
47
|
-
strokeLinecap: "round",
|
|
48
|
-
strokeLinejoin: "round",
|
|
49
|
-
"aria-hidden": "true",
|
|
50
|
-
dangerouslySetInnerHTML: { __html: (b = s == null ? void 0 : s.body) != null ? b : "" }
|
|
51
|
-
}
|
|
52
|
-
)
|
|
53
|
-
}
|
|
54
|
-
);
|
|
55
|
-
});
|
|
56
|
-
export {
|
|
57
|
-
V as Icon,
|
|
58
|
-
V as default
|
|
59
|
-
};
|
|
60
|
-
//# sourceMappingURL=icon.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"icon.js","sources":["../../../../../src/components/base/icon/icon.tsx"],"sourcesContent":["import { forwardRef, HTMLAttributes, useSyncExternalStore } from \"react\";\nimport cn from \"clsx\";\nimport { getIcon } from \"../../../icons/registry\";\nimport { getIconConfig } from \"../../../icons/config\";\nimport { subscribeIcons } from \"../../../icons/store\";\nimport type { IconDefinition, IconSource } from \"../../../icons/types\";\nimport { useIconSource } from \"./iconProvider\";\n\nexport type IconColor = \"inherit\" | \"primary\" | \"secondary\" | \"error\" | \"success\" | \"warning\" | \"info\" | \"disabled\";\n\nconst COLOR_TOKENS = [\"primary\", \"secondary\", \"error\", \"success\", \"warning\", \"info\", \"disabled\"];\n\nconst warned = new Set<string>();\n\nfunction warnMissing(name: string): void {\n if (!getIconConfig().warnOnMissing || warned.has(name)) return;\n warned.add(name);\n // eslint-disable-next-line no-console -- a missing icon is silent otherwise\n console.warn(\n `[smwb] Icon \"${name}\" is not registered. Register it (import { ${name} } from \"@smwb/ui-react/icons\") ` +\n `or use source=\"auto\" to fall back to Material Symbols.`\n );\n}\n\nexport interface IconProps extends HTMLAttributes<HTMLSpanElement> {\n /**\n * Icon name — the Google Material Symbols name, e.g. `\"arrow_right_alt\"`.\n * Lookup is forgiving: `arrowRightAlt` and `arrow-right-alt` resolve too, as\n * do an icon's aliases.\n *\n * An {@link IconDefinition} may be passed instead, which skips the registry\n * entirely and is the most bundle-friendly form:\n *\n * ```tsx\n * import { arrowRightAlt } from \"@smwb/ui-react/icons\";\n * <Icon name={arrowRightAlt} />\n * ```\n */\n name: string | IconDefinition;\n className?: string;\n /**\n * Material Symbols weight axis (100-700). For the smwb SVG set it maps to the\n * stroke width: 400 → 2px, 700 → 3px, 100 → 1px.\n */\n weight?: number;\n /** Material Symbols FILL axis. Not used by the smwb SVG set (it is a contour set). */\n fill?: 0 | 1;\n /** Pixel number or any CSS length (e.g. \"1.5rem\"). */\n size?: number | string;\n /** Material Symbols GRAD axis. Not used by the smwb SVG set. */\n grade?: number;\n /**\n * Semantic color token; `inherit` (default) keeps the text color.\n * Any string is accepted for backward compatibility, but only known\n * {@link IconColor} tokens emit a color class.\n */\n color?: IconColor | (string & {});\n /**\n * Accessible name. When provided the icon is exposed as\n * `role=\"img\"`; otherwise it is `aria-hidden` (decorative).\n */\n title?: string;\n /** Overrides the icon source for this icon only. See {@link IconSource}. */\n source?: IconSource;\n}\n\nexport const Icon = forwardRef<HTMLSpanElement, IconProps>(function Icon(\n { className, weight = 400, fill = 0, size = 20, grade = 100, name, color = \"inherit\", title, source, ...props },\n ref\n) {\n const resolvedSource = useIconSource(source);\n const lookup = typeof name === \"string\" ? name : null;\n // Subscribing keeps late registrations (lazy chunks, Storybook HMR) from\n // leaving a mounted icon blank. getIcon returns the same object for the same\n // registration, so the snapshot is stable.\n const getSnapshot = () => (lookup === null ? null : (getIcon(lookup) ?? null));\n const registered = useSyncExternalStore(subscribeIcons, getSnapshot, getSnapshot);\n const definition = typeof name === \"object\" ? name : registered;\n const glyph = typeof name === \"string\" ? name : name.name;\n\n const mode =\n resolvedSource === \"google\" ? \"google\" : definition ? \"smwb\" : resolvedSource === \"smwb\" ? \"missing\" : \"google\";\n if (mode === \"missing\") warnMissing(glyph);\n\n const decorative = title === undefined;\n const colorClass = color && COLOR_TOKENS.includes(color) ? `smwb-icon_color-${color}` : null;\n const cssSize = typeof size === \"number\" ? `${size}px` : size;\n const strokeWidth = Math.round(Math.min(3, Math.max(1, weight / 200)) * 100) / 100;\n\n return (\n <span\n {...props}\n ref={ref}\n data-testid=\"icon\"\n data-icon-source={mode}\n role={decorative ? undefined : \"img\"}\n aria-hidden={decorative ? true : undefined}\n aria-label={title}\n title={title}\n style={{\n ...props.style,\n ...(mode === \"google\"\n ? { fontVariationSettings: `'FILL' ${fill}, 'wght' ${weight}, 'GRAD' ${grade}, 'opsz' 48` }\n : null),\n }}\n className={cn(\"smwb-icon__wrapper\", colorClass, className)}\n >\n {mode === \"google\" ? (\n <span className=\"material-symbols-outlined\" style={{ fontSize: cssSize }}>\n {glyph}\n </span>\n ) : (\n <svg\n className=\"smwb-icon__svg\"\n viewBox={definition?.viewBox ?? \"0 0 24 24\"}\n style={{ width: cssSize, height: cssSize }}\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden=\"true\"\n dangerouslySetInnerHTML={{ __html: definition?.body ?? \"\" }}\n />\n )}\n </span>\n );\n});\n\nexport default Icon;\n"],"names":["COLOR_TOKENS","warned","warnMissing","name","getIconConfig","Icon","forwardRef","className","weight","fill","size","grade","color","title","source","props","ref","resolvedSource","useIconSource","lookup","getSnapshot","_a","getIcon","registered","useSyncExternalStore","subscribeIcons","definition","glyph","mode","decorative","colorClass","cssSize","strokeWidth","jsx","cn","_b"],"mappings":";;;;;;;AAUA,MAAMA,IAAe,CAAC,WAAW,aAAa,SAAS,WAAW,WAAW,QAAQ,UAAU,GAEzFC,wBAAa,IAAA;AAEnB,SAASC,EAAYC,GAAoB;AACvC,EAAI,CAACC,EAAA,EAAgB,iBAAiBH,EAAO,IAAIE,CAAI,MACrDF,EAAO,IAAIE,CAAI,GAEf,QAAQ;AAAA,IACN,gBAAgBA,CAAI,8CAA8CA,CAAI;AAAA,EAAA;AAG1E;AA4CO,MAAME,IAAOC,EAAuC,SACzD,EAAE,WAAAC,GAAW,QAAAC,IAAS,KAAK,MAAAC,IAAO,GAAG,MAAAC,IAAO,IAAI,OAAAC,IAAQ,KAAK,MAAAR,GAAM,OAAAS,IAAQ,WAAW,OAAAC,GAAO,QAAAC,GAAQ,GAAGC,EAAA,GACxGC,GACA;;AACA,QAAMC,IAAiBC,EAAcJ,CAAM,GACrCK,IAAS,OAAOhB,KAAS,WAAWA,IAAO,MAI3CiB,IAAc,MAAA;;AAAO,WAAAD,MAAW,OAAO,QAAQE,IAAAC,EAAQH,CAAM,MAAd,OAAAE,IAAmB;AAAA,KAClEE,IAAaC,EAAqBC,GAAgBL,GAAaA,CAAW,GAC1EM,IAAa,OAAOvB,KAAS,WAAWA,IAAOoB,GAC/CI,IAAQ,OAAOxB,KAAS,WAAWA,IAAOA,EAAK,MAE/CyB,IACJX,MAAmB,WAAW,WAAWS,IAAa,SAAST,MAAmB,SAAS,YAAY;AACzG,EAAIW,MAAS,aAAW1B,EAAYyB,CAAK;AAEzC,QAAME,IAAahB,MAAU,QACvBiB,IAAalB,KAASZ,EAAa,SAASY,CAAK,IAAI,mBAAmBA,CAAK,KAAK,MAClFmB,IAAU,OAAOrB,KAAS,WAAW,GAAGA,CAAI,OAAOA,GACnDsB,IAAc,KAAK,MAAM,KAAK,IAAI,GAAG,KAAK,IAAI,GAAGxB,IAAS,GAAG,CAAC,IAAI,GAAG,IAAI;AAE/E,SACE,gBAAAyB;AAAA,IAAC;AAAA,IAAA;AAAA,MACE,GAAGlB;AAAA,MACJ,KAAAC;AAAA,MACA,eAAY;AAAA,MACZ,oBAAkBY;AAAA,MAClB,MAAMC,IAAa,SAAY;AAAA,MAC/B,eAAaA,IAAa,KAAO;AAAA,MACjC,cAAYhB;AAAA,MACZ,OAAAA;AAAA,MACA,OAAO;AAAA,QACL,GAAGE,EAAM;AAAA,QACT,GAAIa,MAAS,WACT,EAAE,uBAAuB,UAAUnB,CAAI,YAAYD,CAAM,YAAYG,CAAK,cAAA,IAC1E;AAAA,MAAA;AAAA,MAEN,WAAWuB,EAAG,sBAAsBJ,GAAYvB,CAAS;AAAA,MAExD,UAAAqB,MAAS,WACR,gBAAAK,EAAC,QAAA,EAAK,WAAU,6BAA4B,OAAO,EAAE,UAAUF,EAAA,GAC5D,UAAAJ,EAAA,CACH,IAEA,gBAAAM;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,WAAU;AAAA,UACV,UAASZ,IAAAK,KAAA,gBAAAA,EAAY,YAAZ,OAAAL,IAAuB;AAAA,UAChC,OAAO,EAAE,OAAOU,GAAS,QAAQA,EAAA;AAAA,UACjC,MAAK;AAAA,UACL,QAAO;AAAA,UACP,aAAAC;AAAA,UACA,eAAc;AAAA,UACd,gBAAe;AAAA,UACf,eAAY;AAAA,UACZ,yBAAyB,EAAE,SAAQG,IAAAT,KAAA,gBAAAA,EAAY,SAAZ,OAAAS,IAAoB,GAAA;AAAA,QAAG;AAAA,MAAA;AAAA,IAC5D;AAAA,EAAA;AAIR,CAAC;"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import "react/jsx-runtime";
|
|
2
|
-
import { useContext as e, useSyncExternalStore as r, createContext as s } from "react";
|
|
3
|
-
import { getIconConfig as f } from "../../../icons/config.js";
|
|
4
|
-
import { subscribeIcons as m } from "../../../icons/store.js";
|
|
5
|
-
const g = s(null), c = () => f().source;
|
|
6
|
-
function I(o) {
|
|
7
|
-
var n;
|
|
8
|
-
const t = e(g), u = r(m, c, c);
|
|
9
|
-
return (n = o != null ? o : t == null ? void 0 : t.source) != null ? n : u;
|
|
10
|
-
}
|
|
11
|
-
export {
|
|
12
|
-
g as IconContext,
|
|
13
|
-
I as useIconSource
|
|
14
|
-
};
|
|
15
|
-
//# sourceMappingURL=iconProvider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"iconProvider.js","sources":["../../../../../src/components/base/icon/iconProvider.tsx"],"sourcesContent":["import { createContext, useContext, useMemo, useSyncExternalStore, type ReactNode } from \"react\";\nimport { registerIcons, type IconInput } from \"../../../icons/registry\";\nimport { getIconConfig } from \"../../../icons/config\";\nimport { subscribeIcons } from \"../../../icons/store\";\nimport type { IconSource } from \"../../../icons/types\";\n\nexport interface IconContextValue {\n /** Icon artwork for this subtree. Falls back to {@link configureIcons}. */\n source?: IconSource;\n}\n\nexport const IconContext = createContext<IconContextValue | null>(null);\n\nexport interface IconProviderProps extends IconContextValue {\n /**\n * Icons to make available to `<Icon name=\"...\">` inside this subtree.\n *\n * ```tsx\n * import { add, close, search } from \"@smwb/ui-react/icons\";\n *\n * <IconProvider source=\"smwb\" icons={[add, close, search]}>\n * <App />\n * </IconProvider>\n * ```\n *\n * Registration is process-wide (the registry is a module singleton), so the\n * prop is a convenience for apps that would otherwise call `registerIcons`\n * at startup — not a scoping mechanism.\n */\n icons?: IconInput;\n children?: ReactNode;\n}\n\n/**\n * Sets the icon source — and optionally registers icons — for a subtree.\n * `<Icon source>` still wins over the provider, and the provider wins over the\n * app-wide {@link configureIcons} default.\n */\nexport function IconProvider({ source, icons, children }: IconProviderProps) {\n // Icons have to be in the registry before the subtree's first paint, so this\n // cannot wait for an effect. registerIcons is idempotent, which keeps it safe\n // under StrictMode's double render.\n useMemo(() => {\n if (icons) registerIcons(icons);\n }, [icons]);\n\n const value = useMemo<IconContextValue>(() => ({ source }), [source]);\n return <IconContext.Provider value={value}>{children}</IconContext.Provider>;\n}\n\nconst getConfiguredSource = (): IconSource => getIconConfig().source;\n\n/**\n * Resolves the icon source the way `<Icon>` does: explicit prop, then the\n * nearest {@link IconProvider}, then the app-wide config (`\"auto\"` by default).\n */\nexport function useIconSource(override?: IconSource): IconSource {\n const context = useContext(IconContext);\n const configured = useSyncExternalStore(subscribeIcons, getConfiguredSource, getConfiguredSource);\n return override ?? context?.source ?? configured;\n}\n\nexport default IconProvider;\n"],"names":["IconContext","createContext","getConfiguredSource","getIconConfig","useIconSource","override","context","useContext","configured","useSyncExternalStore","subscribeIcons","_a"],"mappings":";;;;AAWO,MAAMA,IAAcC,EAAuC,IAAI,GAuChEC,IAAsB,MAAkBC,EAAA,EAAgB;AAMvD,SAASC,EAAcC,GAAmC;;AAC/D,QAAMC,IAAUC,EAAWP,CAAW,GAChCQ,IAAaC,EAAqBC,GAAgBR,GAAqBA,CAAmB;AAChG,UAAOS,IAAAN,KAAA,OAAAA,IAAYC,KAAA,gBAAAA,EAAS,WAArB,OAAAK,IAA+BH;AACxC;"}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { jsxs as l, jsx as a } from "react/jsx-runtime";
|
|
2
|
-
import { forwardRef as n } from "react";
|
|
3
|
-
import r from "clsx";
|
|
4
|
-
import _ from "./tablePagination/tablePagination.js";
|
|
5
|
-
const u = n(
|
|
6
|
-
({ className: m, dense: b, hovered: o, children: t, paginationSettings: e, isLoading: c, stickyHeader: i, caption: s, ...w }, d) => /* @__PURE__ */ l(
|
|
7
|
-
"div",
|
|
8
|
-
{
|
|
9
|
-
ref: d,
|
|
10
|
-
className: r("smwb-table__wrapper", m, {
|
|
11
|
-
"smwb-table__wrapper_loading": c
|
|
12
|
-
}),
|
|
13
|
-
...w,
|
|
14
|
-
children: [
|
|
15
|
-
/* @__PURE__ */ a("div", { className: r("smwb-table__container", { "smwb-withPagination": !!e }), children: /* @__PURE__ */ l(
|
|
16
|
-
"table",
|
|
17
|
-
{
|
|
18
|
-
className: r("smwb-table", {
|
|
19
|
-
"smwb-dense": b,
|
|
20
|
-
"smwb-hovered": o,
|
|
21
|
-
"smwb-table_sticky-header": i
|
|
22
|
-
}),
|
|
23
|
-
children: [
|
|
24
|
-
s != null && /* @__PURE__ */ a("caption", { className: "smwb-table__caption", children: s }),
|
|
25
|
-
t
|
|
26
|
-
]
|
|
27
|
-
}
|
|
28
|
-
) }),
|
|
29
|
-
!!e && /* @__PURE__ */ a(_, { ...e })
|
|
30
|
-
]
|
|
31
|
-
}
|
|
32
|
-
)
|
|
33
|
-
);
|
|
34
|
-
export {
|
|
35
|
-
u as default
|
|
36
|
-
};
|
|
37
|
-
//# sourceMappingURL=table.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"table.js","sources":["../../../../../src/components/dataDisplay/table/table.tsx"],"sourcesContent":["import { HTMLAttributes, PropsWithChildren, ReactNode, forwardRef } from \"react\";\nimport cn from \"clsx\";\nimport { TablePagination, TablePaginationProps } from \"./index\";\n\nexport interface TableProps extends HTMLAttributes<HTMLDivElement> {\n className?: string;\n dense?: boolean;\n isLoading?: boolean;\n hovered?: boolean;\n /** Pins the table header while the body scrolls. */\n stickyHeader?: boolean;\n /** Optional accessible caption rendered for screen readers. */\n caption?: ReactNode;\n paginationSettings?: TablePaginationProps;\n}\n\nconst Table = forwardRef<HTMLDivElement, PropsWithChildren<TableProps>>(\n ({ className, dense, hovered, children, paginationSettings, isLoading, stickyHeader, caption, ...props }, ref) => {\n return (\n <div\n ref={ref}\n className={cn(\"smwb-table__wrapper\", className, {\n [\"smwb-table__wrapper_loading\"]: isLoading,\n })}\n {...props}\n >\n <div className={cn(\"smwb-table__container\", { \"smwb-withPagination\": !!paginationSettings })}>\n <table\n className={cn(\"smwb-table\", {\n \"smwb-dense\": dense,\n [\"smwb-hovered\"]: hovered,\n \"smwb-table_sticky-header\": stickyHeader,\n })}\n >\n {caption != null && <caption className=\"smwb-table__caption\">{caption}</caption>}\n {children}\n </table>\n </div>\n {!!paginationSettings && <TablePagination {...paginationSettings} />}\n </div>\n );\n }\n);\n\nexport default Table;\n"],"names":["Table","forwardRef","className","dense","hovered","children","paginationSettings","isLoading","stickyHeader","caption","props","ref","jsxs","cn","jsx","TablePagination"],"mappings":";;;;AAgBA,MAAMA,IAAQC;AAAA,EACZ,CAAC,EAAE,WAAAC,GAAW,OAAAC,GAAO,SAAAC,GAAS,UAAAC,GAAU,oBAAAC,GAAoB,WAAAC,GAAW,cAAAC,GAAc,SAAAC,GAAS,GAAGC,EAAA,GAASC,MAEtG,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAD;AAAA,MACA,WAAWE,EAAG,uBAAuBX,GAAW;AAAA,QAC7C,+BAAgCK;AAAA,MAAA,CAClC;AAAA,MACA,GAAGG;AAAA,MAEJ,UAAA;AAAA,QAAA,gBAAAI,EAAC,OAAA,EAAI,WAAWD,EAAG,yBAAyB,EAAE,uBAAuB,CAAC,CAACP,GAAoB,GACzF,UAAA,gBAAAM;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,WAAWC,EAAG,cAAc;AAAA,cAC1B,cAAcV;AAAA,cACb,gBAAiBC;AAAA,cAClB,4BAA4BI;AAAA,YAAA,CAC7B;AAAA,YAEA,UAAA;AAAA,cAAAC,KAAW,QAAQ,gBAAAK,EAAC,WAAA,EAAQ,WAAU,uBAAuB,UAAAL,GAAQ;AAAA,cACrEJ;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA,GAEL;AAAA,QACC,CAAC,CAACC,KAAsB,gBAAAQ,EAACC,GAAA,EAAiB,GAAGT,EAAA,CAAoB;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAI1E;"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { jsx as a } from "react/jsx-runtime";
|
|
2
|
-
import e from "clsx";
|
|
3
|
-
const b = ({ children: o, className: t, ...r }) => /* @__PURE__ */ a("tbody", { ...r, className: e("smwb-table__body", t), children: o });
|
|
4
|
-
export {
|
|
5
|
-
b as default
|
|
6
|
-
};
|
|
7
|
-
//# sourceMappingURL=tableBody.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tableBody.js","sources":["../../../../../src/components/dataDisplay/table/tableBody.tsx"],"sourcesContent":["import React, { HTMLAttributes, PropsWithChildren } from \"react\";\nimport cn from \"clsx\";\n\nexport interface TableBodyProps extends HTMLAttributes<HTMLTableSectionElement> {\n className?: string;\n}\n\nconst TableBody = ({ children, className, ...props }: PropsWithChildren<TableBodyProps>) => {\n return (\n <tbody {...props} className={cn(\"smwb-table__body\", className)}>\n {children}\n </tbody>\n );\n};\n\nexport default TableBody;\n"],"names":["TableBody","children","className","props","jsx","cn"],"mappings":";;AAOA,MAAMA,IAAY,CAAC,EAAE,UAAAC,GAAU,WAAAC,GAAW,GAAGC,QAEzC,gBAAAC,EAAC,WAAO,GAAGD,GAAO,WAAWE,EAAG,oBAAoBH,CAAS,GAC1D,UAAAD,GACH;"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { jsx as r } from "react/jsx-runtime";
|
|
2
|
-
import m from "clsx";
|
|
3
|
-
const f = ({ children: l, cellAlign: e = "left", className: t, ...a }) => /* @__PURE__ */ r("td", { ...a, className: m("smwb-table__cell", t), align: e || "left", children: l });
|
|
4
|
-
export {
|
|
5
|
-
f as default
|
|
6
|
-
};
|
|
7
|
-
//# sourceMappingURL=tableCell.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tableCell.js","sources":["../../../../../src/components/dataDisplay/table/tableCell.tsx"],"sourcesContent":["import React, { PropsWithChildren, TdHTMLAttributes } from \"react\";\nimport cn from \"clsx\";\n\nexport interface TableCellProps extends TdHTMLAttributes<HTMLTableCellElement> {\n className?: string;\n cellAlign?: \"left\" | \"right\" | \"center\";\n}\n\nconst TableCell = ({ children, cellAlign = \"left\", className, ...props }: PropsWithChildren<TableCellProps>) => {\n return (\n <td {...props} className={cn(\"smwb-table__cell\", className)} align={cellAlign || \"left\"}>\n {children}\n </td>\n );\n};\n\nexport default TableCell;\n"],"names":["TableCell","children","cellAlign","className","props","jsx","cn"],"mappings":";;AAQA,MAAMA,IAAY,CAAC,EAAE,UAAAC,GAAU,WAAAC,IAAY,QAAQ,WAAAC,GAAW,GAAGC,QAE7D,gBAAAC,EAAC,MAAA,EAAI,GAAGD,GAAO,WAAWE,EAAG,oBAAoBH,CAAS,GAAG,OAAOD,KAAa,QAC9E,UAAAD,EAAA,CACH;"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { jsx as r } from "react/jsx-runtime";
|
|
2
|
-
import m from "clsx";
|
|
3
|
-
const d = ({ children: a, className: e, ...t }) => /* @__PURE__ */ r("thead", { ...t, className: m("smwb-table__head", e), children: a });
|
|
4
|
-
export {
|
|
5
|
-
d as default
|
|
6
|
-
};
|
|
7
|
-
//# sourceMappingURL=tableHead.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tableHead.js","sources":["../../../../../src/components/dataDisplay/table/tableHead.tsx"],"sourcesContent":["import { HTMLAttributes, PropsWithChildren } from \"react\";\nimport cn from \"clsx\";\n\nexport interface TableHeadProps extends HTMLAttributes<HTMLTableSectionElement> {\n className?: string;\n}\n\nconst TableHead = ({ children, className, ...props }: PropsWithChildren<TableHeadProps>) => {\n return (\n <thead {...props} className={cn(\"smwb-table__head\", className)}>\n {children}\n </thead>\n );\n};\n\nexport default TableHead;\n"],"names":["TableHead","children","className","props","jsx","cn"],"mappings":";;AAOA,MAAMA,IAAY,CAAC,EAAE,UAAAC,GAAU,WAAAC,GAAW,GAAGC,QAEzC,gBAAAC,EAAC,WAAO,GAAGD,GAAO,WAAWE,EAAG,oBAAoBH,CAAS,GAC1D,UAAAD,GACH;"}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { jsx as o, jsxs as h } from "react/jsx-runtime";
|
|
2
|
-
import p from "clsx";
|
|
3
|
-
import { Icon as x } from "../../base/icon/icon.js";
|
|
4
|
-
const y = ({
|
|
5
|
-
children: i,
|
|
6
|
-
className: l,
|
|
7
|
-
cellAlign: a = "left",
|
|
8
|
-
isSortedByAsc: m,
|
|
9
|
-
isSortedByDesc: t,
|
|
10
|
-
sortable: e,
|
|
11
|
-
sortDirection: d,
|
|
12
|
-
onSort: s,
|
|
13
|
-
..._
|
|
14
|
-
}) => {
|
|
15
|
-
const n = d !== void 0 ? d : m ? "asc" : t ? "desc" : !1, r = e ? n === "asc" ? "ascending" : n === "desc" ? "descending" : "none" : void 0, f = n === "asc" ? "expand_more" : n === "desc" ? "expand_less" : "unfold_more", w = (c) => {
|
|
16
|
-
e && s && (c.key === "Enter" || c.key === " ") && (c.preventDefault(), s());
|
|
17
|
-
};
|
|
18
|
-
return /* @__PURE__ */ o(
|
|
19
|
-
"th",
|
|
20
|
-
{
|
|
21
|
-
..._,
|
|
22
|
-
"aria-sort": r,
|
|
23
|
-
className: p("smwb-table__cell", "smwb-head-cell", l, {
|
|
24
|
-
[`smwb-align_${a}`]: !!a,
|
|
25
|
-
"smwb-head-cell_sortable": e,
|
|
26
|
-
"smwb-head-cell_sorted": !!e && n !== !1
|
|
27
|
-
}),
|
|
28
|
-
children: /* @__PURE__ */ h(
|
|
29
|
-
"span",
|
|
30
|
-
{
|
|
31
|
-
className: "smwb-head-cell__content",
|
|
32
|
-
onClick: e ? s : void 0,
|
|
33
|
-
onKeyDown: e ? w : void 0,
|
|
34
|
-
role: e ? "button" : void 0,
|
|
35
|
-
tabIndex: e ? 0 : void 0,
|
|
36
|
-
children: [
|
|
37
|
-
i,
|
|
38
|
-
e && /* @__PURE__ */ o(x, { className: "smwb-head-cell__icon", name: f, size: 18, weight: 800 })
|
|
39
|
-
]
|
|
40
|
-
}
|
|
41
|
-
)
|
|
42
|
-
}
|
|
43
|
-
);
|
|
44
|
-
};
|
|
45
|
-
export {
|
|
46
|
-
y as default
|
|
47
|
-
};
|
|
48
|
-
//# sourceMappingURL=tableHeadCell.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tableHeadCell.js","sources":["../../../../../src/components/dataDisplay/table/tableHeadCell.tsx"],"sourcesContent":["import React, { PropsWithChildren, ThHTMLAttributes } from \"react\";\nimport cn from \"clsx\";\nimport Icon from \"../../base/icon/icon\";\n\nexport type SortDirection = \"asc\" | \"desc\" | false;\n\nexport interface TableHeadCellProps extends ThHTMLAttributes<HTMLTableCellElement> {\n className?: string;\n cellAlign?: \"left\" | \"right\" | \"center\";\n /** @deprecated use `sortDirection=\"desc\"`. */\n isSortedByDesc?: boolean;\n /** @deprecated use `sortDirection=\"asc\"`. */\n isSortedByAsc?: boolean;\n /** Enables the interactive sort affordance with keyboard/aria support. */\n sortable?: boolean;\n /** Current sort direction for this column. */\n sortDirection?: SortDirection;\n /** Invoked when the user activates the sort control. */\n onSort?: () => void;\n}\n\nconst TableHeadCell = ({\n children,\n className,\n cellAlign = \"left\",\n isSortedByAsc,\n isSortedByDesc,\n sortable,\n sortDirection,\n onSort,\n ...props\n}: PropsWithChildren<TableHeadCellProps>) => {\n const direction: SortDirection =\n sortDirection !== undefined ? sortDirection : isSortedByAsc ? \"asc\" : isSortedByDesc ? \"desc\" : false;\n\n const ariaSort = sortable\n ? direction === \"asc\"\n ? \"ascending\"\n : direction === \"desc\"\n ? \"descending\"\n : \"none\"\n : undefined;\n\n /**\n * A sortable column always shows a marker: the current direction once sorted,\n * and `unfold_more` before that — otherwise nothing tells the reader the column\n * can be sorted at all. A cell that is not sortable shows nothing; it used to\n * render an `<Icon name=\"\">`, which reserved a gap and warned about a missing\n * icon under `source: \"smwb\"`.\n */\n const iconName = direction === \"asc\" ? \"expand_more\" : direction === \"desc\" ? \"expand_less\" : \"unfold_more\";\n\n const onKeyDown = (event: React.KeyboardEvent<HTMLSpanElement>) => {\n if (sortable && onSort && (event.key === \"Enter\" || event.key === \" \")) {\n event.preventDefault();\n onSort();\n }\n };\n\n return (\n <th\n {...props}\n aria-sort={ariaSort}\n className={cn(\"smwb-table__cell\", \"smwb-head-cell\", className, {\n [`smwb-align_${cellAlign}`]: !!cellAlign,\n \"smwb-head-cell_sortable\": sortable,\n \"smwb-head-cell_sorted\": !!sortable && direction !== false,\n })}\n >\n <span\n className=\"smwb-head-cell__content\"\n onClick={sortable ? onSort : undefined}\n onKeyDown={sortable ? onKeyDown : undefined}\n role={sortable ? \"button\" : undefined}\n tabIndex={sortable ? 0 : undefined}\n >\n {children}\n {sortable && <Icon className=\"smwb-head-cell__icon\" name={iconName} size={18} weight={800} />}\n </span>\n </th>\n );\n};\n\nexport default TableHeadCell;\n"],"names":["TableHeadCell","children","className","cellAlign","isSortedByAsc","isSortedByDesc","sortable","sortDirection","onSort","props","direction","ariaSort","iconName","onKeyDown","event","jsx","cn","jsxs","Icon"],"mappings":";;;AAqBA,MAAMA,IAAgB,CAAC;AAAA,EACrB,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,eAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,UAAAC;AAAA,EACA,eAAAC;AAAA,EACA,QAAAC;AAAA,EACA,GAAGC;AACL,MAA6C;AAC3C,QAAMC,IACJH,MAAkB,SAAYA,IAAgBH,IAAgB,QAAQC,IAAiB,SAAS,IAE5FM,IAAWL,IACbI,MAAc,QACZ,cACAA,MAAc,SACZ,eACA,SACJ,QASEE,IAAWF,MAAc,QAAQ,gBAAgBA,MAAc,SAAS,gBAAgB,eAExFG,IAAY,CAACC,MAAgD;AACjE,IAAIR,KAAYE,MAAWM,EAAM,QAAQ,WAAWA,EAAM,QAAQ,SAChEA,EAAM,eAAA,GACNN,EAAA;AAAA,EAEJ;AAEA,SACE,gBAAAO;AAAA,IAAC;AAAA,IAAA;AAAA,MACE,GAAGN;AAAA,MACJ,aAAWE;AAAA,MACX,WAAWK,EAAG,oBAAoB,kBAAkBd,GAAW;AAAA,QAC7D,CAAC,cAAcC,CAAS,EAAE,GAAG,CAAC,CAACA;AAAA,QAC/B,2BAA2BG;AAAA,QAC3B,yBAAyB,CAAC,CAACA,KAAYI,MAAc;AAAA,MAAA,CACtD;AAAA,MAED,UAAA,gBAAAO;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,WAAU;AAAA,UACV,SAASX,IAAWE,IAAS;AAAA,UAC7B,WAAWF,IAAWO,IAAY;AAAA,UAClC,MAAMP,IAAW,WAAW;AAAA,UAC5B,UAAUA,IAAW,IAAI;AAAA,UAExB,UAAA;AAAA,YAAAL;AAAA,YACAK,KAAY,gBAAAS,EAACG,GAAA,EAAK,WAAU,wBAAuB,MAAMN,GAAU,MAAM,IAAI,QAAQ,IAAA,CAAK;AAAA,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IAC7F;AAAA,EAAA;AAGN;"}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { jsx as e, jsxs as o } from "react/jsx-runtime";
|
|
2
|
-
import f from "clsx";
|
|
3
|
-
import { Icon as d } from "../../../base/icon/icon.js";
|
|
4
|
-
const j = ({
|
|
5
|
-
limit: n,
|
|
6
|
-
page: s,
|
|
7
|
-
totalCount: c,
|
|
8
|
-
onPrev: t,
|
|
9
|
-
onNext: l,
|
|
10
|
-
limitOptions: i,
|
|
11
|
-
onLimitChange: r,
|
|
12
|
-
hasNextPage: b
|
|
13
|
-
}) => {
|
|
14
|
-
const _ = typeof c == "undefined", m = _ ? !b : s === Math.ceil(c / n), h = (a) => {
|
|
15
|
-
r && r(+a.target.value);
|
|
16
|
-
}, w = () => {
|
|
17
|
-
t == null || t();
|
|
18
|
-
}, g = () => {
|
|
19
|
-
l == null || l();
|
|
20
|
-
}, p = () => {
|
|
21
|
-
const a = s * n - n, u = s * n;
|
|
22
|
-
return `${a}–${u}` + (_ ? "" : ` of ${c}`);
|
|
23
|
-
};
|
|
24
|
-
return /* @__PURE__ */ e("div", { className: "smwb-table__pagination", children: /* @__PURE__ */ o("div", { className: "smwb-table__pagination__controls", children: [
|
|
25
|
-
i && i.length > 1 && /* @__PURE__ */ o("div", { className: "smwb-table__pagination__rows", children: [
|
|
26
|
-
/* @__PURE__ */ e("span", { children: "Rows per page" }),
|
|
27
|
-
/* @__PURE__ */ e("select", { id: "rows", className: "smwb-table__pagination__select", onChange: h, value: n, children: i.map((a) => /* @__PURE__ */ e("option", { value: a, className: f("smwb-select-option", { selected: a === n }), children: a }, a)) })
|
|
28
|
-
] }),
|
|
29
|
-
/* @__PURE__ */ e("div", { className: "smwb-table__pagination__current-count", children: p() }),
|
|
30
|
-
/* @__PURE__ */ o("div", { className: "smwb-table__pagination__buttons", children: [
|
|
31
|
-
/* @__PURE__ */ e("button", { className: "smwb-table__pagination__control", onClick: w, disabled: s === 1, children: /* @__PURE__ */ e(d, { name: "chevron_left", size: 24, weight: 600 }) }),
|
|
32
|
-
/* @__PURE__ */ e("span", { className: "smwb-table__pagination__page", children: s }),
|
|
33
|
-
/* @__PURE__ */ e("button", { className: "smwb-table__pagination__control", onClick: g, disabled: m, children: /* @__PURE__ */ e(d, { name: "chevron_right", size: 24, weight: 600 }) })
|
|
34
|
-
] })
|
|
35
|
-
] }) });
|
|
36
|
-
};
|
|
37
|
-
export {
|
|
38
|
-
j as default
|
|
39
|
-
};
|
|
40
|
-
//# sourceMappingURL=tablePagination.js.map
|
package/dist/react-table/components/dataDisplay/table/tablePagination/tablePagination.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tablePagination.js","sources":["../../../../../../src/components/dataDisplay/table/tablePagination/tablePagination.tsx"],"sourcesContent":["import cn from \"clsx\";\nimport React from \"react\";\nimport Icon from \"../../../base/icon/icon\";\n\nexport interface BaseTablePaginationProps {\n page: number;\n limit: number;\n onPrev?: () => void;\n onNext?: () => void;\n limitOptions?: number[];\n onLimitChange?: (limit: number) => void;\n}\n\n// Вариант с известным количеством записей\ninterface WithTotalCount extends BaseTablePaginationProps {\n totalCount: number;\n hasNextPage?: never;\n}\n\n// Вариант с бесконечной пагинацией\ninterface WithHasNextPage extends BaseTablePaginationProps {\n totalCount?: never;\n hasNextPage: boolean;\n}\n\nexport type TablePaginationProps = WithTotalCount | WithHasNextPage;\n\nconst TablePagination = ({\n limit,\n page,\n totalCount,\n onPrev,\n onNext,\n limitOptions,\n onLimitChange,\n hasNextPage,\n}: TablePaginationProps) => {\n // Если totalCount не передан, считаем что пагинация \"бесконечная\"\n const isInfiniteMode = typeof totalCount === \"undefined\";\n\n const isDisabledNext = isInfiniteMode ? !hasNextPage : page === Math.ceil(totalCount / limit);\n\n const handleLimitChange = (e: React.ChangeEvent<HTMLSelectElement>) => {\n if (!onLimitChange) return;\n onLimitChange(+e.target.value);\n };\n\n const handlePrev = () => {\n onPrev?.();\n };\n\n const handleNext = () => {\n onNext?.();\n };\n\n const renderCountText = () => {\n const from = page * limit - limit;\n const to = page * limit;\n\n return `${from}–${to}` + (isInfiniteMode ? \"\" : ` of ${totalCount}`);\n };\n\n return (\n <div className=\"smwb-table__pagination\">\n <div className=\"smwb-table__pagination__controls\">\n {limitOptions && limitOptions.length > 1 && (\n <div className=\"smwb-table__pagination__rows\">\n <span>Rows per page</span>\n <select id=\"rows\" className=\"smwb-table__pagination__select\" onChange={handleLimitChange} value={limit}>\n {limitOptions.map((opt) => (\n <option value={opt} className={cn(\"smwb-select-option\", { selected: opt === limit })} key={opt}>\n {opt}\n </option>\n ))}\n </select>\n </div>\n )}\n <div className=\"smwb-table__pagination__current-count\">{renderCountText()}</div>\n <div className=\"smwb-table__pagination__buttons\">\n <button className=\"smwb-table__pagination__control\" onClick={handlePrev} disabled={page === 1}>\n <Icon name=\"chevron_left\" size={24} weight={600} />\n </button>\n <span className=\"smwb-table__pagination__page\">{page}</span>\n <button className=\"smwb-table__pagination__control\" onClick={handleNext} disabled={isDisabledNext}>\n <Icon name=\"chevron_right\" size={24} weight={600} />\n </button>\n </div>\n </div>\n </div>\n );\n};\n\nexport default TablePagination;\n"],"names":["TablePagination","limit","page","totalCount","onPrev","onNext","limitOptions","onLimitChange","hasNextPage","isInfiniteMode","isDisabledNext","handleLimitChange","e","handlePrev","handleNext","renderCountText","from","to","jsxs","jsx","opt","cn","Icon"],"mappings":";;;AA2BA,MAAMA,IAAkB,CAAC;AAAA,EACvB,OAAAC;AAAA,EACA,MAAAC;AAAA,EACA,YAAAC;AAAA,EACA,QAAAC;AAAA,EACA,QAAAC;AAAA,EACA,cAAAC;AAAA,EACA,eAAAC;AAAA,EACA,aAAAC;AACF,MAA4B;AAE1B,QAAMC,IAAiB,OAAON,KAAe,aAEvCO,IAAiBD,IAAiB,CAACD,IAAcN,MAAS,KAAK,KAAKC,IAAaF,CAAK,GAEtFU,IAAoB,CAACC,MAA4C;AACrE,IAAKL,KACLA,EAAc,CAACK,EAAE,OAAO,KAAK;AAAA,EAC/B,GAEMC,IAAa,MAAM;AACvB,IAAAT,KAAA,QAAAA;AAAA,EACF,GAEMU,IAAa,MAAM;AACvB,IAAAT,KAAA,QAAAA;AAAA,EACF,GAEMU,IAAkB,MAAM;AAC5B,UAAMC,IAAOd,IAAOD,IAAQA,GACtBgB,IAAKf,IAAOD;AAElB,WAAO,GAAGe,CAAI,IAAIC,CAAE,MAAMR,IAAiB,KAAK,OAAON,CAAU;AAAA,EACnE;AAEA,2BACG,OAAA,EAAI,WAAU,0BACb,UAAA,gBAAAe,EAAC,OAAA,EAAI,WAAU,oCACZ,UAAA;AAAA,IAAAZ,KAAgBA,EAAa,SAAS,KACrC,gBAAAY,EAAC,OAAA,EAAI,WAAU,gCACb,UAAA;AAAA,MAAA,gBAAAC,EAAC,UAAK,UAAA,gBAAA,CAAa;AAAA,MACnB,gBAAAA,EAAC,UAAA,EAAO,IAAG,QAAO,WAAU,kCAAiC,UAAUR,GAAmB,OAAOV,GAC9F,UAAAK,EAAa,IAAI,CAACc,MACjB,gBAAAD,EAAC,UAAA,EAAO,OAAOC,GAAK,WAAWC,EAAG,sBAAsB,EAAE,UAAUD,MAAQnB,EAAA,CAAO,GAChF,UAAAmB,EAAA,GADwFA,CAE3F,CACD,EAAA,CACH;AAAA,IAAA,GACF;AAAA,IAEF,gBAAAD,EAAC,OAAA,EAAI,WAAU,yCAAyC,eAAkB;AAAA,IAC1E,gBAAAD,EAAC,OAAA,EAAI,WAAU,mCACb,UAAA;AAAA,MAAA,gBAAAC,EAAC,YAAO,WAAU,mCAAkC,SAASN,GAAY,UAAUX,MAAS,GAC1F,UAAA,gBAAAiB,EAACG,GAAA,EAAK,MAAK,gBAAe,MAAM,IAAI,QAAQ,KAAK,GACnD;AAAA,MACA,gBAAAH,EAAC,QAAA,EAAK,WAAU,gCAAgC,UAAAjB,GAAK;AAAA,wBACpD,UAAA,EAAO,WAAU,mCAAkC,SAASY,GAAY,UAAUJ,GACjF,UAAA,gBAAAS,EAACG,GAAA,EAAK,MAAK,iBAAgB,MAAM,IAAI,QAAQ,KAAK,EAAA,CACpD;AAAA,IAAA,EAAA,CACF;AAAA,EAAA,EAAA,CACF,EAAA,CACF;AAEJ;"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { jsx as m } from "react/jsx-runtime";
|
|
2
|
-
import w from "clsx";
|
|
3
|
-
const s = ({ children: a, className: t, selected: r, expanded: o, ...b }) => /* @__PURE__ */ m(
|
|
4
|
-
"tr",
|
|
5
|
-
{
|
|
6
|
-
"data-testid": "table-row",
|
|
7
|
-
className: w("smwb-table__row", t, {
|
|
8
|
-
"smwb-table__row_selected": r,
|
|
9
|
-
"smwb-table__row_expanded": o
|
|
10
|
-
}),
|
|
11
|
-
"aria-selected": r != null ? r : void 0,
|
|
12
|
-
"aria-expanded": o != null ? o : void 0,
|
|
13
|
-
...b,
|
|
14
|
-
children: a
|
|
15
|
-
}
|
|
16
|
-
);
|
|
17
|
-
export {
|
|
18
|
-
s as default
|
|
19
|
-
};
|
|
20
|
-
//# sourceMappingURL=tableRow.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tableRow.js","sources":["../../../../../src/components/dataDisplay/table/tableRow.tsx"],"sourcesContent":["import React, { HTMLAttributes, PropsWithChildren } from \"react\";\nimport cn from \"clsx\";\n\nexport interface TableRowProps extends HTMLAttributes<HTMLTableRowElement> {\n className?: string;\n /** Marks the row as selected (adds aria-selected + styling). */\n selected?: boolean;\n /** Reflects expandable-row state (adds aria-expanded + styling). */\n expanded?: boolean;\n}\n\nconst TableRow = ({ children, className, selected, expanded, ...props }: PropsWithChildren<TableRowProps>) => {\n return (\n <tr\n data-testid=\"table-row\"\n className={cn(\"smwb-table__row\", className, {\n \"smwb-table__row_selected\": selected,\n \"smwb-table__row_expanded\": expanded,\n })}\n aria-selected={selected ?? undefined}\n aria-expanded={expanded ?? undefined}\n {...props}\n >\n {children}\n </tr>\n );\n};\nexport default TableRow;\n"],"names":["TableRow","children","className","selected","expanded","props","jsx","cn"],"mappings":";;AAWA,MAAMA,IAAW,CAAC,EAAE,UAAAC,GAAU,WAAAC,GAAW,UAAAC,GAAU,UAAAC,GAAU,GAAGC,QAE5D,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,eAAY;AAAA,IACZ,WAAWC,EAAG,mBAAmBL,GAAW;AAAA,MAC1C,4BAA4BC;AAAA,MAC5B,4BAA4BC;AAAA,IAAA,CAC7B;AAAA,IACD,iBAAeD,KAAA,OAAAA,IAAY;AAAA,IAC3B,iBAAeC,KAAA,OAAAA,IAAY;AAAA,IAC1B,GAAGC;AAAA,IAEH,UAAAJ;AAAA,EAAA;AAAA;"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { jsxs as g, jsx as o } from "react/jsx-runtime";
|
|
2
|
-
import { forwardRef as b } from "react";
|
|
3
|
-
import f from "clsx";
|
|
4
|
-
import { Icon as p } from "../../base/icon/icon.js";
|
|
5
|
-
const w = b(
|
|
6
|
-
({ className: e, children: m, type: t, severity: s, variant: l = "filled", onClose: r, closeAriaLabel: n = "Close", ...c }, i) => {
|
|
7
|
-
const a = s != null ? s : t, d = f("smwb-message", `smwb-message_${l}`, e, {
|
|
8
|
-
[`smwb-message_${a}`]: !!a
|
|
9
|
-
});
|
|
10
|
-
return /* @__PURE__ */ g(
|
|
11
|
-
"div",
|
|
12
|
-
{
|
|
13
|
-
"data-testid": "message",
|
|
14
|
-
role: "alert",
|
|
15
|
-
"aria-live": a === "error" ? "assertive" : "polite",
|
|
16
|
-
...c,
|
|
17
|
-
className: d,
|
|
18
|
-
ref: i,
|
|
19
|
-
children: [
|
|
20
|
-
m,
|
|
21
|
-
r && /* @__PURE__ */ o("button", { className: "smwb-message__close-btn", onClick: r, "aria-label": n, type: "button", children: /* @__PURE__ */ o(p, { name: "close", weight: 1e3 }) })
|
|
22
|
-
]
|
|
23
|
-
}
|
|
24
|
-
);
|
|
25
|
-
}
|
|
26
|
-
), _ = ({ children: e }) => /* @__PURE__ */ o("div", { className: "smwb-message__header", children: e }), C = Object.assign(w, { Header: _ });
|
|
27
|
-
export {
|
|
28
|
-
w as MessageContainer,
|
|
29
|
-
C as default
|
|
30
|
-
};
|
|
31
|
-
//# sourceMappingURL=message.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"message.js","sources":["../../../../../src/components/feedBack/message/message.tsx"],"sourcesContent":["import React, { forwardRef, PropsWithChildren } from \"react\";\nimport cn from \"clsx\";\nimport Icon from \"../../base/icon/icon\";\n\nexport type MessageSeverity = \"success\" | \"error\" | \"warning\" | \"info\";\n\nexport interface MessageProps extends React.HTMLAttributes<HTMLDivElement> {\n className?: string;\n variant?: \"outlined\" | \"filled\" | \"left-accent\";\n onClose?: () => void; // или с событием, если нужно\n /** @deprecated use `severity`. */\n type?: MessageSeverity;\n /** Semantic severity of the message. */\n severity?: MessageSeverity;\n /** Accessible label for the close button. */\n closeAriaLabel?: string;\n}\n\nexport const MessageContainer = forwardRef<HTMLDivElement, PropsWithChildren<MessageProps>>(\n ({ className, children, type, severity, variant = \"filled\", onClose, closeAriaLabel = \"Close\", ...props }, ref) => {\n const resolvedSeverity = severity ?? type;\n const messageClassnames = cn(\"smwb-message\", `smwb-message_${variant}`, className, {\n [`smwb-message_${resolvedSeverity}`]: Boolean(resolvedSeverity),\n });\n\n return (\n <div\n data-testid=\"message\"\n role=\"alert\"\n aria-live={resolvedSeverity === \"error\" ? \"assertive\" : \"polite\"}\n {...props}\n className={messageClassnames}\n ref={ref}\n >\n {children}\n {onClose && (\n <button className=\"smwb-message__close-btn\" onClick={onClose} aria-label={closeAriaLabel} type=\"button\">\n <Icon name=\"close\" weight={1000} />\n </button>\n )}\n </div>\n );\n }\n);\n\nconst Header = ({ children }: PropsWithChildren) => {\n return <div className=\"smwb-message__header\">{children}</div>;\n};\n\nconst Message = Object.assign(MessageContainer, { Header });\n\nexport default Message;\n"],"names":["MessageContainer","forwardRef","className","children","type","severity","variant","onClose","closeAriaLabel","props","ref","resolvedSeverity","messageClassnames","cn","jsxs","jsx","Icon","Header","Message"],"mappings":";;;;AAkBO,MAAMA,IAAmBC;AAAA,EAC9B,CAAC,EAAE,WAAAC,GAAW,UAAAC,GAAU,MAAAC,GAAM,UAAAC,GAAU,SAAAC,IAAU,UAAU,SAAAC,GAAS,gBAAAC,IAAiB,SAAS,GAAGC,EAAA,GAASC,MAAQ;AACjH,UAAMC,IAAmBN,KAAA,OAAAA,IAAYD,GAC/BQ,IAAoBC,EAAG,gBAAgB,gBAAgBP,CAAO,IAAIJ,GAAW;AAAA,MACjF,CAAC,gBAAgBS,CAAgB,EAAE,GAAG,EAAQA;AAAA,IAAgB,CAC/D;AAED,WACE,gBAAAG;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,eAAY;AAAA,QACZ,MAAK;AAAA,QACL,aAAWH,MAAqB,UAAU,cAAc;AAAA,QACvD,GAAGF;AAAA,QACJ,WAAWG;AAAA,QACX,KAAAF;AAAA,QAEC,UAAA;AAAA,UAAAP;AAAA,UACAI,KACC,gBAAAQ,EAAC,UAAA,EAAO,WAAU,2BAA0B,SAASR,GAAS,cAAYC,GAAgB,MAAK,UAC7F,UAAA,gBAAAO,EAACC,GAAA,EAAK,MAAK,SAAQ,QAAQ,KAAM,EAAA,CACnC;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAIR;AACF,GAEMC,IAAS,CAAC,EAAE,UAAAd,QACT,gBAAAY,EAAC,OAAA,EAAI,WAAU,wBAAwB,UAAAZ,EAAA,CAAS,GAGnDe,IAAU,OAAO,OAAOlB,GAAkB,EAAE,QAAAiB,GAAQ;"}
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { jsx as i, jsxs as b, Fragment as _ } from "react/jsx-runtime";
|
|
2
|
-
import { forwardRef as v, useRef as w, useEffect as h } from "react";
|
|
3
|
-
import m from "clsx";
|
|
4
|
-
const P = v(function({ type: r, variant: e, className: c, progressValue: a = 0, color: s = "primary", size: d = "medium", id: u, ...f }, n) {
|
|
5
|
-
const l = {
|
|
6
|
-
role: "progressbar",
|
|
7
|
-
"aria-label": f["aria-label"],
|
|
8
|
-
id: u,
|
|
9
|
-
...r === "determinate" ? { "aria-valuenow": a, "aria-valuemin": 0, "aria-valuemax": 100 } : {}
|
|
10
|
-
}, o = s !== "primary" ? `smwb-indicator_color-${s}` : null;
|
|
11
|
-
return e === "circular" ? /* @__PURE__ */ i(
|
|
12
|
-
"div",
|
|
13
|
-
{
|
|
14
|
-
ref: n,
|
|
15
|
-
className: m("smwb-indicator_circular", `smwb-${r}`, o, `smwb-indicator_size-${d}`, c),
|
|
16
|
-
...l,
|
|
17
|
-
children: r === "determinate" ? /* @__PURE__ */ i($, { progressValue: a }) : /* @__PURE__ */ b(_, { children: [
|
|
18
|
-
/* @__PURE__ */ i("div", { className: "smwb-indicator_circular__thumb" }),
|
|
19
|
-
/* @__PURE__ */ i("div", {}),
|
|
20
|
-
/* @__PURE__ */ i("div", {}),
|
|
21
|
-
/* @__PURE__ */ i("div", {})
|
|
22
|
-
] })
|
|
23
|
-
}
|
|
24
|
-
) : /* @__PURE__ */ i("div", { ref: n, className: m("smwb-indicator_linear", `smwb-${r}`, o, c), ...l, children: /* @__PURE__ */ i(
|
|
25
|
-
"div",
|
|
26
|
-
{
|
|
27
|
-
className: "smwb-indicator_linear__thumb",
|
|
28
|
-
style: r === "determinate" ? { width: `${a}%` } : {}
|
|
29
|
-
}
|
|
30
|
-
) });
|
|
31
|
-
});
|
|
32
|
-
function $({ progressValue: t = 0 }) {
|
|
33
|
-
const r = w(null);
|
|
34
|
-
return h(() => {
|
|
35
|
-
var c;
|
|
36
|
-
if (!r.current || !r.current.r) return;
|
|
37
|
-
const e = (c = r.current) == null ? void 0 : c.r.baseVal.value;
|
|
38
|
-
if (e && r.current) {
|
|
39
|
-
const a = 2 * Math.PI * e;
|
|
40
|
-
r.current.style.strokeDasharray = `${a} ${a}`, r.current.style.strokeDashoffset = `${a}`;
|
|
41
|
-
const s = a - t / 100 * a;
|
|
42
|
-
r.current.style.strokeDashoffset = `${s}`;
|
|
43
|
-
}
|
|
44
|
-
}, [r, t]), /* @__PURE__ */ i("svg", { className: "smwb-indicator_circular__svg", children: /* @__PURE__ */ i("circle", { className: "smwb-indicator_circular__circle", cx: "24", cy: "24", r: "22", ref: r }) });
|
|
45
|
-
}
|
|
46
|
-
export {
|
|
47
|
-
$ as CircularProgress,
|
|
48
|
-
P as ProgressIndicator,
|
|
49
|
-
P as default
|
|
50
|
-
};
|
|
51
|
-
//# sourceMappingURL=progressIndicator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"progressIndicator.js","sources":["../../../../../src/components/feedBack/progressIndicator/progressIndicator.tsx"],"sourcesContent":["import React, { forwardRef, useRef, useEffect } from \"react\";\nimport cn from \"clsx\";\n\nexport type ProgressColor = \"primary\" | \"secondary\" | \"error\" | \"success\" | \"warning\" | \"info\";\n\nexport interface ProgressIndicatorProps {\n className?: string;\n variant: \"circular\" | \"linear\";\n type: \"determinate\" | \"indeterminate\";\n progressValue?: number;\n /** Semantic color. */\n color?: ProgressColor;\n /** Circular size preset. */\n size?: \"small\" | \"medium\" | \"large\";\n /** Accessible name for the progress bar. */\n \"aria-label\"?: string;\n id?: string;\n}\n\nexport const ProgressIndicator = forwardRef<HTMLDivElement, ProgressIndicatorProps>(function ProgressIndicator(\n { type, variant, className, progressValue = 0, color = \"primary\", size = \"medium\", id, ...rest },\n ref\n) {\n const ariaProps = {\n role: \"progressbar\" as const,\n \"aria-label\": rest[\"aria-label\"],\n id,\n ...(type === \"determinate\" ? { \"aria-valuenow\": progressValue, \"aria-valuemin\": 0, \"aria-valuemax\": 100 } : {}),\n };\n const colorClass = color !== \"primary\" ? `smwb-indicator_color-${color}` : null;\n\n if (variant === \"circular\") {\n return (\n <div\n ref={ref}\n className={cn(\"smwb-indicator_circular\", `smwb-${type}`, colorClass, `smwb-indicator_size-${size}`, className)}\n {...ariaProps}\n >\n {type === \"determinate\" ? (\n <CircularProgress progressValue={progressValue} />\n ) : (\n <>\n <div className=\"smwb-indicator_circular__thumb\" />\n <div></div>\n <div></div>\n <div></div>\n </>\n )}\n </div>\n );\n }\n\n return (\n <div ref={ref} className={cn(\"smwb-indicator_linear\", `smwb-${type}`, colorClass, className)} {...ariaProps}>\n <div\n className=\"smwb-indicator_linear__thumb\"\n style={type === \"determinate\" ? { width: `${progressValue}%` } : {}}\n ></div>\n </div>\n );\n});\n\nexport interface CircularProgressProps {\n progressValue?: number;\n}\n\nexport function CircularProgress({ progressValue = 0 }: CircularProgressProps) {\n const circleRef = useRef<SVGCircleElement>(null);\n\n useEffect(() => {\n if (!circleRef.current || !circleRef.current.r) return;\n\n const circleRadius = circleRef.current?.r.baseVal.value;\n if (circleRadius && circleRef.current) {\n const circleLength = 2 * Math.PI * circleRadius;\n circleRef.current.style.strokeDasharray = `${circleLength} ${circleLength}`;\n circleRef.current.style.strokeDashoffset = `${circleLength}`;\n\n const offset = circleLength - (progressValue / 100) * circleLength;\n circleRef.current.style.strokeDashoffset = `${offset}`;\n }\n }, [circleRef, progressValue]);\n\n return (\n <svg className=\"smwb-indicator_circular__svg\">\n <circle className=\"smwb-indicator_circular__circle\" cx=\"24\" cy=\"24\" r=\"22\" ref={circleRef} />\n </svg>\n );\n}\n\nexport default ProgressIndicator;\n"],"names":["ProgressIndicator","forwardRef","type","variant","className","progressValue","color","size","id","rest","ref","ariaProps","colorClass","jsx","cn","CircularProgress","jsxs","Fragment","circleRef","useRef","useEffect","circleRadius","_a","circleLength","offset"],"mappings":";;;AAmBO,MAAMA,IAAoBC,EAAmD,SAClF,EAAE,MAAAC,GAAM,SAAAC,GAAS,WAAAC,GAAW,eAAAC,IAAgB,GAAG,OAAAC,IAAQ,WAAW,MAAAC,IAAO,UAAU,IAAAC,GAAI,GAAGC,EAAA,GAC1FC,GACA;AACA,QAAMC,IAAY;AAAA,IAChB,MAAM;AAAA,IACN,cAAcF,EAAK,YAAY;AAAA,IAC/B,IAAAD;AAAA,IACA,GAAIN,MAAS,gBAAgB,EAAE,iBAAiBG,GAAe,iBAAiB,GAAG,iBAAiB,QAAQ,CAAA;AAAA,EAAC,GAEzGO,IAAaN,MAAU,YAAY,wBAAwBA,CAAK,KAAK;AAE3E,SAAIH,MAAY,aAEZ,gBAAAU;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAAH;AAAA,MACA,WAAWI,EAAG,2BAA2B,QAAQZ,CAAI,IAAIU,GAAY,uBAAuBL,CAAI,IAAIH,CAAS;AAAA,MAC5G,GAAGO;AAAA,MAEH,gBAAS,gBACR,gBAAAE,EAACE,GAAA,EAAiB,eAAAV,EAAA,CAA8B,IAEhD,gBAAAW,EAAAC,GAAA,EACE,UAAA;AAAA,QAAA,gBAAAJ,EAAC,OAAA,EAAI,WAAU,iCAAA,CAAiC;AAAA,0BAC/C,OAAA,EAAI;AAAA,0BACJ,OAAA,EAAI;AAAA,0BACJ,OAAA,CAAA,CAAI;AAAA,MAAA,EAAA,CACP;AAAA,IAAA;AAAA,EAAA,IAON,gBAAAA,EAAC,OAAA,EAAI,KAAAH,GAAU,WAAWI,EAAG,yBAAyB,QAAQZ,CAAI,IAAIU,GAAYR,CAAS,GAAI,GAAGO,GAChG,UAAA,gBAAAE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAU;AAAA,MACV,OAAOX,MAAS,gBAAgB,EAAE,OAAO,GAAGG,CAAa,QAAQ,CAAA;AAAA,IAAC;AAAA,EAAA,GAEtE;AAEJ,CAAC;AAMM,SAASU,EAAiB,EAAE,eAAAV,IAAgB,KAA4B;AAC7E,QAAMa,IAAYC,EAAyB,IAAI;AAE/C,SAAAC,EAAU,MAAM;;AACd,QAAI,CAACF,EAAU,WAAW,CAACA,EAAU,QAAQ,EAAG;AAEhD,UAAMG,KAAeC,IAAAJ,EAAU,YAAV,gBAAAI,EAAmB,EAAE,QAAQ;AAClD,QAAID,KAAgBH,EAAU,SAAS;AACrC,YAAMK,IAAe,IAAI,KAAK,KAAKF;AACnC,MAAAH,EAAU,QAAQ,MAAM,kBAAkB,GAAGK,CAAY,IAAIA,CAAY,IACzEL,EAAU,QAAQ,MAAM,mBAAmB,GAAGK,CAAY;AAE1D,YAAMC,IAASD,IAAgBlB,IAAgB,MAAOkB;AACtD,MAAAL,EAAU,QAAQ,MAAM,mBAAmB,GAAGM,CAAM;AAAA,IACtD;AAAA,EACF,GAAG,CAACN,GAAWb,CAAa,CAAC,qBAG1B,OAAA,EAAI,WAAU,gCACb,UAAA,gBAAAQ,EAAC,YAAO,WAAU,mCAAkC,IAAG,MAAK,IAAG,MAAK,GAAE,MAAK,KAAKK,GAAW,GAC7F;AAEJ;"}
|