@smwb/ui-solid 0.12.0 → 0.13.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/README.md +74 -0
- package/dist/assets/styles/less/components/avatar/avatar.entry.css +1 -1
- package/dist/assets/styles/less/components/card/card.entry.css +1 -1
- package/dist/assets/styles/less/components/checkbox/checkbox.entry.css +1 -1
- package/dist/assets/styles/less/components/chip/chip.entry.css +1 -1
- package/dist/assets/styles/less/components/dagView/dagView.entry.css +1 -0
- package/dist/assets/styles/less/components/menu/menu.entry.css +1 -1
- package/dist/assets/styles/less/components/personChip/personChip.entry.css +1 -1
- package/dist/assets/styles/less/components/radioButton/radioButton.entry.css +1 -1
- package/dist/assets/styles/less/components/rating/rating.entry.css +1 -1
- package/dist/assets/styles/less/components/selectField/selectField.entry.css +1 -1
- package/dist/assets/styles/less/components/table/table.entry.css +1 -1
- package/dist/assets/styles/less/components/thumbCard/thumbCard.entry.css +1 -1
- package/dist/assets/styles/less/components/toggle/toggle.entry.css +1 -1
- package/dist/assets/styles/less/components/typography/typography.entry.css +1 -1
- package/dist/components/base/animateHeight/animateHeight.js +41 -42
- package/dist/components/base/animateHeight/animateHeight.js.map +1 -1
- package/dist/components/base/icon/icon.d.ts +6 -2
- package/dist/components/base/icon/icon.js +41 -41
- package/dist/components/base/icon/icon.js.map +1 -1
- package/dist/components/base/ripple/ripple.d.ts +3 -0
- package/dist/components/base/ripple/ripple.js +46 -34
- package/dist/components/base/ripple/ripple.js.map +1 -1
- package/dist/components/dataDisplay/avatar/avatar.d.ts +4 -0
- package/dist/components/dataDisplay/avatar/avatar.js +37 -33
- package/dist/components/dataDisplay/avatar/avatar.js.map +1 -1
- package/dist/components/dataDisplay/card/card.d.ts +32 -1
- package/dist/components/dataDisplay/card/card.js +47 -34
- package/dist/components/dataDisplay/card/card.js.map +1 -1
- package/dist/components/dataDisplay/carousel/carousel.js +92 -88
- package/dist/components/dataDisplay/carousel/carousel.js.map +1 -1
- package/dist/components/dataDisplay/chart/chart.d.ts +2 -0
- package/dist/components/dataDisplay/chat/chatIconButton.js +23 -13
- package/dist/components/dataDisplay/chat/chatIconButton.js.map +1 -1
- package/dist/components/dataDisplay/chat/chatLayout.d.ts +2 -0
- package/dist/components/dataDisplay/chat/chatLayout.js +33 -29
- package/dist/components/dataDisplay/chat/chatLayout.js.map +1 -1
- package/dist/components/dataDisplay/chat/chatOverlayLayout.d.ts +2 -0
- package/dist/components/dataDisplay/chat/chatOverlayLayout.js +19 -17
- package/dist/components/dataDisplay/chat/chatOverlayLayout.js.map +1 -1
- package/dist/components/dataDisplay/chip/chip.d.ts +32 -0
- package/dist/components/dataDisplay/chip/chip.js +104 -63
- package/dist/components/dataDisplay/chip/chip.js.map +1 -1
- package/dist/components/dataDisplay/chipGroup/chipGroup.js +44 -39
- package/dist/components/dataDisplay/chipGroup/chipGroup.js.map +1 -1
- package/dist/components/dataDisplay/dagView/dagLayout.d.ts +74 -0
- package/dist/components/dataDisplay/dagView/dagLayout.js +284 -0
- package/dist/components/dataDisplay/dagView/dagLayout.js.map +1 -0
- package/dist/components/dataDisplay/dagView/dagView.d.ts +151 -0
- package/dist/components/dataDisplay/dagView/dagView.js +488 -0
- package/dist/components/dataDisplay/dagView/dagView.js.map +1 -0
- package/dist/components/dataDisplay/dagView/index.d.ts +4 -0
- package/dist/components/dataDisplay/dagView/panZoom.d.ts +75 -0
- package/dist/components/dataDisplay/dagView/panZoom.js +161 -0
- package/dist/components/dataDisplay/dagView/panZoom.js.map +1 -0
- package/dist/components/dataDisplay/descriptionList/descriptionList.d.ts +11 -3
- package/dist/components/dataDisplay/descriptionList/descriptionList.js +20 -24
- package/dist/components/dataDisplay/descriptionList/descriptionList.js.map +1 -1
- package/dist/components/dataDisplay/expansionPanel/expansionPanel.js +114 -81
- package/dist/components/dataDisplay/expansionPanel/expansionPanel.js.map +1 -1
- package/dist/components/dataDisplay/kanban/kanban.d.ts +6 -0
- package/dist/components/dataDisplay/kanban/kanban.js +71 -61
- package/dist/components/dataDisplay/kanban/kanban.js.map +1 -1
- package/dist/components/dataDisplay/lazyImage/lazyImage.js +14 -12
- package/dist/components/dataDisplay/lazyImage/lazyImage.js.map +1 -1
- package/dist/components/dataDisplay/list/list.d.ts +2 -0
- package/dist/components/dataDisplay/list/list.js +16 -12
- package/dist/components/dataDisplay/list/list.js.map +1 -1
- package/dist/components/dataDisplay/list/listItem.js +20 -18
- package/dist/components/dataDisplay/list/listItem.js.map +1 -1
- package/dist/components/dataDisplay/meter/meter.d.ts +2 -0
- package/dist/components/dataDisplay/meter/meter.js +15 -13
- package/dist/components/dataDisplay/meter/meter.js.map +1 -1
- package/dist/components/dataDisplay/personChip/personChip.d.ts +2 -0
- package/dist/components/dataDisplay/personChip/personChip.js +12 -10
- package/dist/components/dataDisplay/personChip/personChip.js.map +1 -1
- package/dist/components/dataDisplay/stat/stat.d.ts +2 -0
- package/dist/components/dataDisplay/stat/stat.js +41 -43
- package/dist/components/dataDisplay/stat/stat.js.map +1 -1
- package/dist/components/dataDisplay/table/table.d.ts +10 -1
- package/dist/components/dataDisplay/table/table.js +46 -22
- package/dist/components/dataDisplay/table/table.js.map +1 -1
- package/dist/components/dataDisplay/table/tableBody.js +25 -12
- package/dist/components/dataDisplay/table/tableBody.js.map +1 -1
- package/dist/components/dataDisplay/table/tableCell.d.ts +10 -2
- package/dist/components/dataDisplay/table/tableCell.js +15 -14
- package/dist/components/dataDisplay/table/tableCell.js.map +1 -1
- package/dist/components/dataDisplay/table/tableColumns.d.ts +146 -0
- package/dist/components/dataDisplay/table/tableColumns.js +254 -0
- package/dist/components/dataDisplay/table/tableColumns.js.map +1 -0
- package/dist/components/dataDisplay/table/tableEntities.d.ts +4 -0
- package/dist/components/dataDisplay/table/tableEntities.js +6 -0
- package/dist/components/dataDisplay/table/tableEntities.js.map +1 -0
- package/dist/components/dataDisplay/table/tableHead.js +29 -11
- package/dist/components/dataDisplay/table/tableHead.js.map +1 -1
- package/dist/components/dataDisplay/table/tableHeadCell.d.ts +23 -1
- package/dist/components/dataDisplay/table/tableHeadCell.js +51 -26
- package/dist/components/dataDisplay/table/tableHeadCell.js.map +1 -1
- package/dist/components/dataDisplay/table/tableHtmlText.d.ts +8 -0
- package/dist/components/dataDisplay/table/tableHtmlText.js +121 -0
- package/dist/components/dataDisplay/table/tableHtmlText.js.map +1 -0
- package/dist/components/dataDisplay/table/tableRow.d.ts +2 -0
- package/dist/components/dataDisplay/table/tableRow.js +28 -13
- package/dist/components/dataDisplay/table/tableRow.js.map +1 -1
- package/dist/components/dataDisplay/thumbCard/thumbCard.d.ts +44 -3
- package/dist/components/dataDisplay/thumbCard/thumbCard.js +86 -58
- package/dist/components/dataDisplay/thumbCard/thumbCard.js.map +1 -1
- package/dist/components/dataDisplay/treeView/treeView.d.ts +2 -0
- package/dist/components/dataDisplay/treeView/treeView.js +4 -2
- package/dist/components/dataDisplay/treeView/treeView.js.map +1 -1
- package/dist/components/dataDisplay/typography/typography.js +22 -26
- package/dist/components/dataDisplay/typography/typography.js.map +1 -1
- package/dist/components/feedBack/emptyState/emptyState.d.ts +2 -0
- package/dist/components/feedBack/emptyState/emptyState.js +20 -16
- package/dist/components/feedBack/emptyState/emptyState.js.map +1 -1
- package/dist/components/feedBack/message/message.d.ts +2 -0
- package/dist/components/feedBack/message/message.js +17 -13
- package/dist/components/feedBack/message/message.js.map +1 -1
- package/dist/components/feedBack/modal/modal.js +20 -16
- package/dist/components/feedBack/modal/modal.js.map +1 -1
- package/dist/components/feedBack/skeleton/skeleton.d.ts +10 -2
- package/dist/components/feedBack/skeleton/skeleton.js +43 -35
- package/dist/components/feedBack/skeleton/skeleton.js.map +1 -1
- package/dist/components/feedBack/snackbar/snackbar.js +24 -20
- package/dist/components/feedBack/snackbar/snackbar.js.map +1 -1
- package/dist/components/feedBack/tooltip/tooltip.d.ts +9 -1
- package/dist/components/feedBack/tooltip/tooltip.js +65 -41
- package/dist/components/feedBack/tooltip/tooltip.js.map +1 -1
- package/dist/components/inputs/button/button.d.ts +2 -0
- package/dist/components/inputs/button/button.js +48 -20
- package/dist/components/inputs/button/button.js.map +1 -1
- package/dist/components/inputs/buttonGroups/buttonGroup.d.ts +2 -0
- package/dist/components/inputs/buttonGroups/buttonGroup.js +14 -10
- package/dist/components/inputs/buttonGroups/buttonGroup.js.map +1 -1
- package/dist/components/inputs/checkbox/checkbox.d.ts +10 -0
- package/dist/components/inputs/checkbox/checkbox.js +59 -36
- package/dist/components/inputs/checkbox/checkbox.js.map +1 -1
- package/dist/components/inputs/datePicker/datePicker.js +108 -97
- package/dist/components/inputs/datePicker/datePicker.js.map +1 -1
- package/dist/components/inputs/datePicker/datePickerActionLabel.js +19 -17
- package/dist/components/inputs/datePicker/datePickerActionLabel.js.map +1 -1
- package/dist/components/inputs/datePicker/datePickerDay.js +41 -25
- package/dist/components/inputs/datePicker/datePickerDay.js.map +1 -1
- package/dist/components/inputs/datePicker/datePickerIconButton.js +24 -14
- package/dist/components/inputs/datePicker/datePickerIconButton.js.map +1 -1
- package/dist/components/inputs/dateTimePicker/dateTimePicker.js +90 -79
- package/dist/components/inputs/dateTimePicker/dateTimePicker.js.map +1 -1
- package/dist/components/inputs/floatingButton/floatingButton.js +26 -16
- package/dist/components/inputs/floatingButton/floatingButton.js.map +1 -1
- package/dist/components/inputs/radioButton/radioButton.d.ts +9 -0
- package/dist/components/inputs/radioButton/radioButton.js +48 -34
- package/dist/components/inputs/radioButton/radioButton.js.map +1 -1
- package/dist/components/inputs/rating/rating.d.ts +9 -0
- package/dist/components/inputs/rating/rating.js +74 -53
- package/dist/components/inputs/rating/rating.js.map +1 -1
- package/dist/components/inputs/selectField/dropdownMenu.d.ts +21 -1
- package/dist/components/inputs/selectField/dropdownMenu.js +268 -143
- package/dist/components/inputs/selectField/dropdownMenu.js.map +1 -1
- package/dist/components/inputs/selectField/optionNavigation.d.ts +17 -0
- package/dist/components/inputs/selectField/optionNavigation.js +37 -0
- package/dist/components/inputs/selectField/optionNavigation.js.map +1 -0
- package/dist/components/inputs/selectField/selectField.d.ts +32 -1
- package/dist/components/inputs/selectField/selectField.js +297 -126
- package/dist/components/inputs/selectField/selectField.js.map +1 -1
- package/dist/components/inputs/slider/slider.d.ts +25 -3
- package/dist/components/inputs/slider/slider.js +320 -197
- package/dist/components/inputs/slider/slider.js.map +1 -1
- package/dist/components/inputs/textField/textField.d.ts +9 -1
- package/dist/components/inputs/textField/textField.js +104 -51
- package/dist/components/inputs/textField/textField.js.map +1 -1
- package/dist/components/inputs/textField/textFieldWrapper.d.ts +14 -0
- package/dist/components/inputs/textField/textFieldWrapper.js +52 -45
- package/dist/components/inputs/textField/textFieldWrapper.js.map +1 -1
- package/dist/components/inputs/timePicker/timePicker.js +73 -62
- package/dist/components/inputs/timePicker/timePicker.js.map +1 -1
- package/dist/components/inputs/toggle/toggle.d.ts +4 -0
- package/dist/components/inputs/toggle/toggle.js +43 -31
- package/dist/components/inputs/toggle/toggle.js.map +1 -1
- package/dist/components/inputs/valueSlider/valueSlider.d.ts +12 -0
- package/dist/components/inputs/valueSlider/valueSlider.js +32 -27
- package/dist/components/inputs/valueSlider/valueSlider.js.map +1 -1
- package/dist/components/layout/appLayout/appLayout.d.ts +2 -0
- package/dist/components/layout/appLayout/appLayout.js +32 -30
- package/dist/components/layout/appLayout/appLayout.js.map +1 -1
- package/dist/components/layout/divider/divider.d.ts +2 -0
- package/dist/components/layout/divider/divider.js +22 -20
- package/dist/components/layout/divider/divider.js.map +1 -1
- package/dist/components/layout/floatingWindow/floatingWindow.d.ts +2 -0
- package/dist/components/layout/floatingWindow/floatingWindow.js +171 -168
- package/dist/components/layout/floatingWindow/floatingWindow.js.map +1 -1
- package/dist/components/layout/grid/grid.d.ts +8 -0
- package/dist/components/layout/grid/grid.js +52 -44
- package/dist/components/layout/grid/grid.js.map +1 -1
- package/dist/components/layout/page/page.d.ts +2 -0
- package/dist/components/layout/page/page.js +14 -12
- package/dist/components/layout/page/page.js.map +1 -1
- package/dist/components/layout/pageHeader/pageHeader.d.ts +2 -0
- package/dist/components/layout/pageHeader/pageHeader.js +23 -21
- package/dist/components/layout/pageHeader/pageHeader.js.map +1 -1
- package/dist/components/layout/sectionHeader/sectionHeader.d.ts +2 -0
- package/dist/components/layout/sectionHeader/sectionHeader.js +38 -36
- package/dist/components/layout/sectionHeader/sectionHeader.js.map +1 -1
- package/dist/components/layout/sheet/sheet.d.ts +2 -0
- package/dist/components/layout/sheet/sheet.js +50 -48
- package/dist/components/layout/sheet/sheet.js.map +1 -1
- package/dist/components/layout/stack/stack.d.ts +2 -0
- package/dist/components/layout/stack/stack.js +26 -24
- package/dist/components/layout/stack/stack.js.map +1 -1
- package/dist/components/navigation/appBar/appBar.d.ts +2 -0
- package/dist/components/navigation/appBar/appBar.js +18 -16
- package/dist/components/navigation/appBar/appBar.js.map +1 -1
- package/dist/components/navigation/bottomBar/bottomBar.js +125 -120
- package/dist/components/navigation/bottomBar/bottomBar.js.map +1 -1
- package/dist/components/navigation/breadcrumbs/breadcrumbs.d.ts +2 -0
- package/dist/components/navigation/breadcrumbs/breadcrumbs.js +18 -14
- package/dist/components/navigation/breadcrumbs/breadcrumbs.js.map +1 -1
- package/dist/components/navigation/menu/menu.d.ts +6 -0
- package/dist/components/navigation/menu/menu.js.map +1 -1
- package/dist/components/navigation/menu/menuComponent.js +12 -23
- package/dist/components/navigation/menu/menuComponent.js.map +1 -1
- package/dist/components/navigation/menu/menuContext.d.ts +2 -0
- package/dist/components/navigation/menu/menuContext.js.map +1 -1
- package/dist/components/navigation/menu/menuFloating.js +54 -46
- package/dist/components/navigation/menu/menuFloating.js.map +1 -1
- package/dist/components/navigation/menu/menuItem.d.ts +4 -0
- package/dist/components/navigation/menu/menuItem.js +58 -33
- package/dist/components/navigation/menu/menuItem.js.map +1 -1
- package/dist/components/navigation/menu/menuList.d.ts +4 -0
- package/dist/components/navigation/menu/menuList.js +34 -16
- package/dist/components/navigation/menu/menuList.js.map +1 -1
- package/dist/components/navigation/menu/menuSubmenu.d.ts +8 -1
- package/dist/components/navigation/menu/menuSubmenu.js +58 -38
- package/dist/components/navigation/menu/menuSubmenu.js.map +1 -1
- package/dist/components/navigation/pagination/pagination.d.ts +2 -0
- package/dist/components/navigation/pagination/pagination.js +28 -24
- package/dist/components/navigation/pagination/pagination.js.map +1 -1
- package/dist/components/navigation/sidebar/sidebar.js +27 -25
- package/dist/components/navigation/sidebar/sidebar.js.map +1 -1
- package/dist/components/navigation/stepper/stepper.d.ts +2 -0
- package/dist/components/navigation/stepper/stepper.js +46 -42
- package/dist/components/navigation/stepper/stepper.js.map +1 -1
- package/dist/components/navigation/tabs/tab/tab.js +46 -35
- package/dist/components/navigation/tabs/tab/tab.js.map +1 -1
- package/dist/components/navigation/tabs/tabs.d.ts +7 -0
- package/dist/components/navigation/tabs/tabs.js +90 -75
- package/dist/components/navigation/tabs/tabs.js.map +1 -1
- package/dist/components/navigation/tabs/tabsContext.d.ts +6 -4
- package/dist/components/navigation/tabs/tabsContext.js.map +1 -1
- package/dist/connects/rt/table/table.d.ts +16 -1
- package/dist/headless/components/base/animateHeight/animateHeight.js +41 -42
- package/dist/headless/components/base/animateHeight/animateHeight.js.map +1 -1
- package/dist/headless/components/base/icon/icon.js +40 -40
- package/dist/headless/components/base/icon/icon.js.map +1 -1
- package/dist/headless/components/base/ripple/ripple.js +46 -34
- package/dist/headless/components/base/ripple/ripple.js.map +1 -1
- package/dist/headless/components/dataDisplay/avatar/avatar.js +37 -33
- package/dist/headless/components/dataDisplay/avatar/avatar.js.map +1 -1
- package/dist/headless/components/dataDisplay/card/card.js +44 -31
- package/dist/headless/components/dataDisplay/card/card.js.map +1 -1
- package/dist/headless/components/dataDisplay/carousel/carousel.js +102 -98
- package/dist/headless/components/dataDisplay/carousel/carousel.js.map +1 -1
- package/dist/headless/components/dataDisplay/chat/chatIconButton.js +23 -13
- package/dist/headless/components/dataDisplay/chat/chatIconButton.js.map +1 -1
- package/dist/headless/components/dataDisplay/chat/chatLayout.js +33 -29
- package/dist/headless/components/dataDisplay/chat/chatLayout.js.map +1 -1
- package/dist/headless/components/dataDisplay/chat/chatOverlayLayout.js +19 -17
- package/dist/headless/components/dataDisplay/chat/chatOverlayLayout.js.map +1 -1
- package/dist/headless/components/dataDisplay/chip/chip.js +104 -63
- package/dist/headless/components/dataDisplay/chip/chip.js.map +1 -1
- package/dist/headless/components/dataDisplay/chipGroup/chipGroup.js +44 -39
- package/dist/headless/components/dataDisplay/chipGroup/chipGroup.js.map +1 -1
- package/dist/headless/components/dataDisplay/dagView/dagLayout.js +284 -0
- package/dist/headless/components/dataDisplay/dagView/dagLayout.js.map +1 -0
- package/dist/headless/components/dataDisplay/dagView/dagView.js +486 -0
- package/dist/headless/components/dataDisplay/dagView/dagView.js.map +1 -0
- package/dist/headless/components/dataDisplay/dagView/panZoom.js +161 -0
- package/dist/headless/components/dataDisplay/dagView/panZoom.js.map +1 -0
- package/dist/headless/components/dataDisplay/descriptionList/descriptionList.js +15 -19
- package/dist/headless/components/dataDisplay/descriptionList/descriptionList.js.map +1 -1
- package/dist/headless/components/dataDisplay/expansionPanel/expansionPanel.js +114 -81
- package/dist/headless/components/dataDisplay/expansionPanel/expansionPanel.js.map +1 -1
- package/dist/headless/components/dataDisplay/kanban/kanban.js +71 -61
- package/dist/headless/components/dataDisplay/kanban/kanban.js.map +1 -1
- package/dist/headless/components/dataDisplay/lazyImage/lazyImage.js +14 -12
- package/dist/headless/components/dataDisplay/lazyImage/lazyImage.js.map +1 -1
- package/dist/headless/components/dataDisplay/list/list.js +16 -12
- package/dist/headless/components/dataDisplay/list/list.js.map +1 -1
- package/dist/headless/components/dataDisplay/list/listItem.js +20 -18
- package/dist/headless/components/dataDisplay/list/listItem.js.map +1 -1
- package/dist/headless/components/dataDisplay/meter/meter.js +14 -12
- package/dist/headless/components/dataDisplay/meter/meter.js.map +1 -1
- package/dist/headless/components/dataDisplay/personChip/personChip.js +12 -10
- package/dist/headless/components/dataDisplay/personChip/personChip.js.map +1 -1
- package/dist/headless/components/dataDisplay/stat/stat.js +43 -45
- package/dist/headless/components/dataDisplay/stat/stat.js.map +1 -1
- package/dist/headless/components/dataDisplay/table/table.js +47 -23
- package/dist/headless/components/dataDisplay/table/table.js.map +1 -1
- package/dist/headless/components/dataDisplay/table/tableBody.js +25 -12
- package/dist/headless/components/dataDisplay/table/tableBody.js.map +1 -1
- package/dist/headless/components/dataDisplay/table/tableCell.js +15 -14
- package/dist/headless/components/dataDisplay/table/tableCell.js.map +1 -1
- package/dist/headless/components/dataDisplay/table/tableColumns.js +254 -0
- package/dist/headless/components/dataDisplay/table/tableColumns.js.map +1 -0
- package/dist/headless/components/dataDisplay/table/tableEntities.js +6 -0
- package/dist/headless/components/dataDisplay/table/tableEntities.js.map +1 -0
- package/dist/headless/components/dataDisplay/table/tableHead.js +29 -11
- package/dist/headless/components/dataDisplay/table/tableHead.js.map +1 -1
- package/dist/headless/components/dataDisplay/table/tableHeadCell.js +51 -26
- package/dist/headless/components/dataDisplay/table/tableHeadCell.js.map +1 -1
- package/dist/headless/components/dataDisplay/table/tableHtmlText.js +121 -0
- package/dist/headless/components/dataDisplay/table/tableHtmlText.js.map +1 -0
- package/dist/headless/components/dataDisplay/table/tableRow.js +28 -13
- package/dist/headless/components/dataDisplay/table/tableRow.js.map +1 -1
- package/dist/headless/components/dataDisplay/thumbCard/thumbCard.js +86 -58
- package/dist/headless/components/dataDisplay/thumbCard/thumbCard.js.map +1 -1
- package/dist/headless/components/dataDisplay/treeView/treeView.js +4 -2
- package/dist/headless/components/dataDisplay/treeView/treeView.js.map +1 -1
- package/dist/headless/components/dataDisplay/typography/typography.js +21 -25
- package/dist/headless/components/dataDisplay/typography/typography.js.map +1 -1
- package/dist/headless/components/feedBack/emptyState/emptyState.js +9 -5
- package/dist/headless/components/feedBack/emptyState/emptyState.js.map +1 -1
- package/dist/headless/components/feedBack/message/message.js +17 -13
- package/dist/headless/components/feedBack/message/message.js.map +1 -1
- package/dist/headless/components/feedBack/modal/modal.js +20 -16
- package/dist/headless/components/feedBack/modal/modal.js.map +1 -1
- package/dist/headless/components/feedBack/skeleton/skeleton.js +43 -35
- package/dist/headless/components/feedBack/skeleton/skeleton.js.map +1 -1
- package/dist/headless/components/feedBack/snackbar/snackbar.js +30 -26
- package/dist/headless/components/feedBack/snackbar/snackbar.js.map +1 -1
- package/dist/headless/components/feedBack/tooltip/tooltip.js +63 -39
- package/dist/headless/components/feedBack/tooltip/tooltip.js.map +1 -1
- package/dist/headless/components/inputs/button/button.js +51 -23
- package/dist/headless/components/inputs/button/button.js.map +1 -1
- package/dist/headless/components/inputs/buttonGroups/buttonGroup.js +22 -18
- package/dist/headless/components/inputs/buttonGroups/buttonGroup.js.map +1 -1
- package/dist/headless/components/inputs/checkbox/checkbox.js +59 -36
- package/dist/headless/components/inputs/checkbox/checkbox.js.map +1 -1
- package/dist/headless/components/inputs/datePicker/datePicker.js +106 -95
- package/dist/headless/components/inputs/datePicker/datePicker.js.map +1 -1
- package/dist/headless/components/inputs/datePicker/datePickerActionLabel.js +19 -17
- package/dist/headless/components/inputs/datePicker/datePickerActionLabel.js.map +1 -1
- package/dist/headless/components/inputs/datePicker/datePickerDay.js +41 -25
- package/dist/headless/components/inputs/datePicker/datePickerDay.js.map +1 -1
- package/dist/headless/components/inputs/datePicker/datePickerIconButton.js +24 -14
- package/dist/headless/components/inputs/datePicker/datePickerIconButton.js.map +1 -1
- package/dist/headless/components/inputs/dateTimePicker/dateTimePicker.js +90 -79
- package/dist/headless/components/inputs/dateTimePicker/dateTimePicker.js.map +1 -1
- package/dist/headless/components/inputs/floatingButton/floatingButton.js +25 -15
- package/dist/headless/components/inputs/floatingButton/floatingButton.js.map +1 -1
- package/dist/headless/components/inputs/radioButton/radioButton.js +48 -34
- package/dist/headless/components/inputs/radioButton/radioButton.js.map +1 -1
- package/dist/headless/components/inputs/rating/rating.js +74 -53
- package/dist/headless/components/inputs/rating/rating.js.map +1 -1
- package/dist/headless/components/inputs/selectField/dropdownMenu.js +268 -143
- package/dist/headless/components/inputs/selectField/dropdownMenu.js.map +1 -1
- package/dist/headless/components/inputs/selectField/optionNavigation.js +37 -0
- package/dist/headless/components/inputs/selectField/optionNavigation.js.map +1 -0
- package/dist/headless/components/inputs/selectField/selectField.js +297 -126
- package/dist/headless/components/inputs/selectField/selectField.js.map +1 -1
- package/dist/headless/components/inputs/slider/slider.js +320 -197
- package/dist/headless/components/inputs/slider/slider.js.map +1 -1
- package/dist/headless/components/inputs/textField/textField.js +104 -51
- package/dist/headless/components/inputs/textField/textField.js.map +1 -1
- package/dist/headless/components/inputs/textField/textFieldWrapper.js +52 -45
- package/dist/headless/components/inputs/textField/textFieldWrapper.js.map +1 -1
- package/dist/headless/components/inputs/timePicker/timePicker.js +74 -63
- package/dist/headless/components/inputs/timePicker/timePicker.js.map +1 -1
- package/dist/headless/components/inputs/toggle/toggle.js +42 -30
- package/dist/headless/components/inputs/toggle/toggle.js.map +1 -1
- package/dist/headless/components/inputs/valueSlider/valueSlider.js +33 -28
- package/dist/headless/components/inputs/valueSlider/valueSlider.js.map +1 -1
- package/dist/headless/components/layout/appLayout/appLayout.js +29 -27
- package/dist/headless/components/layout/appLayout/appLayout.js.map +1 -1
- package/dist/headless/components/layout/divider/divider.js +19 -17
- package/dist/headless/components/layout/divider/divider.js.map +1 -1
- package/dist/headless/components/layout/floatingWindow/floatingWindow.js +185 -182
- package/dist/headless/components/layout/floatingWindow/floatingWindow.js.map +1 -1
- package/dist/headless/components/layout/grid/grid.js +54 -46
- package/dist/headless/components/layout/grid/grid.js.map +1 -1
- package/dist/headless/components/layout/page/page.js +12 -10
- package/dist/headless/components/layout/page/page.js.map +1 -1
- package/dist/headless/components/layout/pageHeader/pageHeader.js +22 -20
- package/dist/headless/components/layout/pageHeader/pageHeader.js.map +1 -1
- package/dist/headless/components/layout/sectionHeader/sectionHeader.js +39 -37
- package/dist/headless/components/layout/sectionHeader/sectionHeader.js.map +1 -1
- package/dist/headless/components/layout/sheet/sheet.js +50 -48
- package/dist/headless/components/layout/sheet/sheet.js.map +1 -1
- package/dist/headless/components/layout/stack/stack.js +23 -21
- package/dist/headless/components/layout/stack/stack.js.map +1 -1
- package/dist/headless/components/navigation/appBar/appBar.js +15 -13
- package/dist/headless/components/navigation/appBar/appBar.js.map +1 -1
- package/dist/headless/components/navigation/bottomBar/bottomBar.js +125 -120
- package/dist/headless/components/navigation/bottomBar/bottomBar.js.map +1 -1
- package/dist/headless/components/navigation/breadcrumbs/breadcrumbs.js +13 -9
- package/dist/headless/components/navigation/breadcrumbs/breadcrumbs.js.map +1 -1
- package/dist/headless/components/navigation/menu/menu.js.map +1 -1
- package/dist/headless/components/navigation/menu/menuComponent.js +12 -23
- package/dist/headless/components/navigation/menu/menuComponent.js.map +1 -1
- package/dist/headless/components/navigation/menu/menuContext.js.map +1 -1
- package/dist/headless/components/navigation/menu/menuFloating.js +54 -46
- package/dist/headless/components/navigation/menu/menuFloating.js.map +1 -1
- package/dist/headless/components/navigation/menu/menuItem.js +58 -33
- package/dist/headless/components/navigation/menu/menuItem.js.map +1 -1
- package/dist/headless/components/navigation/menu/menuList.js +34 -16
- package/dist/headless/components/navigation/menu/menuList.js.map +1 -1
- package/dist/headless/components/navigation/menu/menuSubmenu.js +58 -38
- package/dist/headless/components/navigation/menu/menuSubmenu.js.map +1 -1
- package/dist/headless/components/navigation/pagination/pagination.js +23 -19
- package/dist/headless/components/navigation/pagination/pagination.js.map +1 -1
- package/dist/headless/components/navigation/sidebar/sidebar.js +14 -12
- package/dist/headless/components/navigation/sidebar/sidebar.js.map +1 -1
- package/dist/headless/components/navigation/stepper/stepper.js +38 -34
- package/dist/headless/components/navigation/stepper/stepper.js.map +1 -1
- package/dist/headless/components/navigation/tabs/tab/tab.js +48 -37
- package/dist/headless/components/navigation/tabs/tab/tab.js.map +1 -1
- package/dist/headless/components/navigation/tabs/tabs.js +91 -76
- package/dist/headless/components/navigation/tabs/tabs.js.map +1 -1
- package/dist/headless/components/navigation/tabs/tabsContext.js.map +1 -1
- package/dist/headless/index.js +224 -220
- package/dist/headless/index.js.map +1 -1
- package/dist/headless/primitives/createCssTransition.js +31 -28
- package/dist/headless/primitives/createCssTransition.js.map +1 -1
- package/dist/headless/primitives/createDismissOnEscape.js +14 -0
- package/dist/headless/primitives/createDismissOnEscape.js.map +1 -0
- package/dist/headless/primitives/createFocusTrap.js +1 -0
- package/dist/headless/primitives/createFocusTrap.js.map +1 -1
- package/dist/headless/primitives/createHelperText.js +14 -0
- package/dist/headless/primitives/createHelperText.js.map +1 -0
- package/dist/headless/primitives/mergeStyle.js +9 -0
- package/dist/headless/primitives/mergeStyle.js.map +1 -0
- package/dist/headless/primitives/overlayLayer.js +14 -7
- package/dist/headless/primitives/overlayLayer.js.map +1 -1
- package/dist/headless/source/components/base/animateHeight/animateHeight.jsx +7 -11
- package/dist/headless/source/components/base/animateHeight/animateHeight.jsx.map +1 -1
- package/dist/headless/source/components/base/icon/icon.jsx +10 -12
- package/dist/headless/source/components/base/icon/icon.jsx.map +1 -1
- package/dist/headless/source/components/base/ripple/ripple.jsx +16 -4
- package/dist/headless/source/components/base/ripple/ripple.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/avatar/avatar.jsx +14 -7
- package/dist/headless/source/components/dataDisplay/avatar/avatar.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/card/card.jsx +31 -12
- package/dist/headless/source/components/dataDisplay/card/card.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/carousel/carousel.jsx +9 -3
- package/dist/headless/source/components/dataDisplay/carousel/carousel.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/chart/chart.jsx +5 -4
- package/dist/headless/source/components/dataDisplay/chart/chart.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/chat/chatIconButton.jsx +13 -3
- package/dist/headless/source/components/dataDisplay/chat/chatIconButton.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/chat/chatLayout.jsx +6 -7
- package/dist/headless/source/components/dataDisplay/chat/chatLayout.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/chat/chatOverlayLayout.jsx +5 -6
- package/dist/headless/source/components/dataDisplay/chat/chatOverlayLayout.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/chip/chip.jsx +55 -19
- package/dist/headless/source/components/dataDisplay/chip/chip.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/chipGroup/chipGroup.jsx +14 -11
- package/dist/headless/source/components/dataDisplay/chipGroup/chipGroup.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/dagView/dagLayout.js +383 -0
- package/dist/headless/source/components/dataDisplay/dagView/dagLayout.js.map +7 -0
- package/dist/headless/source/components/dataDisplay/dagView/dagView.jsx +639 -0
- package/dist/headless/source/components/dataDisplay/dagView/dagView.jsx.map +1 -0
- package/dist/headless/source/components/dataDisplay/dagView/index.js +10 -0
- package/dist/headless/source/components/dataDisplay/dagView/index.js.map +7 -0
- package/dist/headless/source/components/dataDisplay/dagView/panZoom.js +247 -0
- package/dist/headless/source/components/dataDisplay/dagView/panZoom.js.map +7 -0
- package/dist/headless/source/components/dataDisplay/descriptionList/descriptionList.jsx +4 -6
- package/dist/headless/source/components/dataDisplay/descriptionList/descriptionList.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/expansionPanel/expansionPanel.jsx +83 -9
- package/dist/headless/source/components/dataDisplay/expansionPanel/expansionPanel.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/kanban/kanban.jsx +20 -10
- package/dist/headless/source/components/dataDisplay/kanban/kanban.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/lazyImage/lazyImage.jsx +1 -1
- package/dist/headless/source/components/dataDisplay/lazyImage/lazyImage.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/list/list.jsx +3 -3
- package/dist/headless/source/components/dataDisplay/list/list.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/list/listItem.jsx +11 -10
- package/dist/headless/source/components/dataDisplay/list/listItem.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/meter/meter.jsx +3 -2
- package/dist/headless/source/components/dataDisplay/meter/meter.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/personChip/personChip.jsx +3 -2
- package/dist/headless/source/components/dataDisplay/personChip/personChip.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/stat/stat.jsx +7 -8
- package/dist/headless/source/components/dataDisplay/stat/stat.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/table/table.jsx +18 -1
- package/dist/headless/source/components/dataDisplay/table/table.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/table/tableBody.jsx +6 -1
- package/dist/headless/source/components/dataDisplay/table/tableBody.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/table/tableCell.jsx +13 -4
- package/dist/headless/source/components/dataDisplay/table/tableCell.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/table/tableColumns.jsx +311 -0
- package/dist/headless/source/components/dataDisplay/table/tableColumns.jsx.map +1 -0
- package/dist/headless/source/components/dataDisplay/table/tableEntities.js +7 -0
- package/dist/headless/source/components/dataDisplay/table/tableEntities.js.map +7 -0
- package/dist/headless/source/components/dataDisplay/table/tableHead.jsx +14 -1
- package/dist/headless/source/components/dataDisplay/table/tableHead.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/table/tableHeadCell.jsx +51 -33
- package/dist/headless/source/components/dataDisplay/table/tableHeadCell.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/table/tableHtmlText.js +140 -0
- package/dist/headless/source/components/dataDisplay/table/tableHtmlText.js.map +7 -0
- package/dist/headless/source/components/dataDisplay/table/tableRow.jsx +11 -5
- package/dist/headless/source/components/dataDisplay/table/tableRow.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/thumbCard/thumbCard.jsx +48 -19
- package/dist/headless/source/components/dataDisplay/thumbCard/thumbCard.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/treeView/treeView.jsx +9 -2
- package/dist/headless/source/components/dataDisplay/treeView/treeView.jsx.map +1 -1
- package/dist/headless/source/components/dataDisplay/typography/typography.jsx +2 -6
- package/dist/headless/source/components/dataDisplay/typography/typography.jsx.map +1 -1
- package/dist/headless/source/components/feedBack/emptyState/emptyState.jsx +12 -2
- package/dist/headless/source/components/feedBack/emptyState/emptyState.jsx.map +1 -1
- package/dist/headless/source/components/feedBack/message/message.jsx +5 -4
- package/dist/headless/source/components/feedBack/message/message.jsx.map +1 -1
- package/dist/headless/source/components/feedBack/modal/modal.jsx +5 -2
- package/dist/headless/source/components/feedBack/modal/modal.jsx.map +1 -1
- package/dist/headless/source/components/feedBack/skeleton/skeleton.jsx +12 -5
- package/dist/headless/source/components/feedBack/skeleton/skeleton.jsx.map +1 -1
- package/dist/headless/source/components/feedBack/snackbar/snackbar.jsx +3 -3
- package/dist/headless/source/components/feedBack/snackbar/snackbar.jsx.map +1 -1
- package/dist/headless/source/components/feedBack/tooltip/tooltip.jsx +52 -5
- package/dist/headless/source/components/feedBack/tooltip/tooltip.jsx.map +1 -1
- package/dist/headless/source/components/inputs/button/button.jsx +8 -3
- package/dist/headless/source/components/inputs/button/button.jsx.map +1 -1
- package/dist/headless/source/components/inputs/buttonGroups/buttonGroup.jsx +4 -3
- package/dist/headless/source/components/inputs/buttonGroups/buttonGroup.jsx.map +1 -1
- package/dist/headless/source/components/inputs/checkbox/checkbox.jsx +27 -4
- package/dist/headless/source/components/inputs/checkbox/checkbox.jsx.map +1 -1
- package/dist/headless/source/components/inputs/datePicker/datePicker.jsx +13 -0
- package/dist/headless/source/components/inputs/datePicker/datePicker.jsx.map +1 -1
- package/dist/headless/source/components/inputs/datePicker/datePickerActionLabel.jsx +4 -1
- package/dist/headless/source/components/inputs/datePicker/datePickerActionLabel.jsx.map +1 -1
- package/dist/headless/source/components/inputs/datePicker/datePickerDay.jsx +12 -12
- package/dist/headless/source/components/inputs/datePicker/datePickerDay.jsx.map +1 -1
- package/dist/headless/source/components/inputs/datePicker/datePickerIconButton.jsx +13 -3
- package/dist/headless/source/components/inputs/datePicker/datePickerIconButton.jsx.map +1 -1
- package/dist/headless/source/components/inputs/dateTimePicker/dateTimePicker.jsx +13 -0
- package/dist/headless/source/components/inputs/dateTimePicker/dateTimePicker.jsx.map +1 -1
- package/dist/headless/source/components/inputs/floatingButton/floatingButton.jsx +12 -1
- package/dist/headless/source/components/inputs/floatingButton/floatingButton.jsx.map +1 -1
- package/dist/headless/source/components/inputs/radioButton/radioButton.jsx +16 -4
- package/dist/headless/source/components/inputs/radioButton/radioButton.jsx.map +1 -1
- package/dist/headless/source/components/inputs/rating/rating.jsx +49 -20
- package/dist/headless/source/components/inputs/rating/rating.jsx.map +1 -1
- package/dist/headless/source/components/inputs/selectField/dropdownMenu.jsx +222 -61
- package/dist/headless/source/components/inputs/selectField/dropdownMenu.jsx.map +1 -1
- package/dist/headless/source/components/inputs/selectField/optionNavigation.js +51 -0
- package/dist/headless/source/components/inputs/selectField/optionNavigation.js.map +7 -0
- package/dist/headless/source/components/inputs/selectField/selectField.jsx +318 -92
- package/dist/headless/source/components/inputs/selectField/selectField.jsx.map +1 -1
- package/dist/headless/source/components/inputs/slider/slider.jsx +89 -18
- package/dist/headless/source/components/inputs/slider/slider.jsx.map +1 -1
- package/dist/headless/source/components/inputs/textField/textField.jsx +47 -9
- package/dist/headless/source/components/inputs/textField/textField.jsx.map +1 -1
- package/dist/headless/source/components/inputs/textField/textFieldWrapper.jsx +20 -6
- package/dist/headless/source/components/inputs/textField/textFieldWrapper.jsx.map +1 -1
- package/dist/headless/source/components/inputs/timePicker/timePicker.jsx +13 -0
- package/dist/headless/source/components/inputs/timePicker/timePicker.jsx.map +1 -1
- package/dist/headless/source/components/inputs/toggle/toggle.jsx +14 -2
- package/dist/headless/source/components/inputs/toggle/toggle.jsx.map +1 -1
- package/dist/headless/source/components/inputs/valueSlider/valueSlider.jsx +7 -2
- package/dist/headless/source/components/inputs/valueSlider/valueSlider.jsx.map +1 -1
- package/dist/headless/source/components/layout/appLayout/appLayout.jsx +8 -6
- package/dist/headless/source/components/layout/appLayout/appLayout.jsx.map +1 -1
- package/dist/headless/source/components/layout/divider/divider.jsx +6 -5
- package/dist/headless/source/components/layout/divider/divider.jsx.map +1 -1
- package/dist/headless/source/components/layout/floatingWindow/floatingWindow.jsx +17 -11
- package/dist/headless/source/components/layout/floatingWindow/floatingWindow.jsx.map +1 -1
- package/dist/headless/source/components/layout/grid/grid.jsx +20 -8
- package/dist/headless/source/components/layout/grid/grid.jsx.map +1 -1
- package/dist/headless/source/components/layout/page/page.jsx +10 -2
- package/dist/headless/source/components/layout/page/page.jsx.map +1 -1
- package/dist/headless/source/components/layout/pageHeader/pageHeader.jsx +3 -2
- package/dist/headless/source/components/layout/pageHeader/pageHeader.jsx.map +1 -1
- package/dist/headless/source/components/layout/sectionHeader/sectionHeader.jsx +5 -5
- package/dist/headless/source/components/layout/sectionHeader/sectionHeader.jsx.map +1 -1
- package/dist/headless/source/components/layout/sheet/sheet.jsx +6 -8
- package/dist/headless/source/components/layout/sheet/sheet.jsx.map +1 -1
- package/dist/headless/source/components/layout/stack/stack.jsx +15 -11
- package/dist/headless/source/components/layout/stack/stack.jsx.map +1 -1
- package/dist/headless/source/components/navigation/appBar/appBar.jsx +3 -2
- package/dist/headless/source/components/navigation/appBar/appBar.jsx.map +1 -1
- package/dist/headless/source/components/navigation/bottomBar/bottomBar.jsx +48 -40
- package/dist/headless/source/components/navigation/bottomBar/bottomBar.jsx.map +1 -1
- package/dist/headless/source/components/navigation/breadcrumbs/breadcrumbs.jsx +9 -2
- package/dist/headless/source/components/navigation/breadcrumbs/breadcrumbs.jsx.map +1 -1
- package/dist/headless/source/components/navigation/menu/menu.jsx.map +1 -1
- package/dist/headless/source/components/navigation/menu/menuComponent.jsx +3 -4
- package/dist/headless/source/components/navigation/menu/menuComponent.jsx.map +1 -1
- package/dist/headless/source/components/navigation/menu/menuContext.js.map +2 -2
- package/dist/headless/source/components/navigation/menu/menuFloating.jsx +26 -4
- package/dist/headless/source/components/navigation/menu/menuFloating.jsx.map +1 -1
- package/dist/headless/source/components/navigation/menu/menuItem.jsx +22 -2
- package/dist/headless/source/components/navigation/menu/menuItem.jsx.map +1 -1
- package/dist/headless/source/components/navigation/menu/menuList.jsx +19 -7
- package/dist/headless/source/components/navigation/menu/menuList.jsx.map +1 -1
- package/dist/headless/source/components/navigation/menu/menuSubmenu.jsx +36 -4
- package/dist/headless/source/components/navigation/menu/menuSubmenu.jsx.map +1 -1
- package/dist/headless/source/components/navigation/pagination/pagination.jsx +4 -3
- package/dist/headless/source/components/navigation/pagination/pagination.jsx.map +1 -1
- package/dist/headless/source/components/navigation/sidebar/sidebar.jsx +1 -1
- package/dist/headless/source/components/navigation/sidebar/sidebar.jsx.map +1 -1
- package/dist/headless/source/components/navigation/stepper/stepper.jsx +14 -9
- package/dist/headless/source/components/navigation/stepper/stepper.jsx.map +1 -1
- package/dist/headless/source/components/navigation/tabs/tab/tab.jsx +12 -16
- package/dist/headless/source/components/navigation/tabs/tab/tab.jsx.map +1 -1
- package/dist/headless/source/components/navigation/tabs/tabs.jsx +34 -10
- package/dist/headless/source/components/navigation/tabs/tabs.jsx.map +1 -1
- package/dist/headless/source/components/navigation/tabs/tabsContext.js.map +2 -2
- package/dist/headless/source/connects/rt/table/table.jsx +7 -2
- package/dist/headless/source/connects/rt/table/table.jsx.map +1 -1
- package/dist/headless/source/index.js +3 -0
- package/dist/headless/source/index.js.map +2 -2
- package/dist/headless/source/primitives/createCssTransition.js +10 -1
- package/dist/headless/source/primitives/createCssTransition.js.map +2 -2
- package/dist/headless/source/primitives/createDismissOnEscape.js +17 -0
- package/dist/headless/source/primitives/createDismissOnEscape.js.map +7 -0
- package/dist/headless/source/primitives/createFocusTrap.js +1 -0
- package/dist/headless/source/primitives/createFocusTrap.js.map +2 -2
- package/dist/headless/source/primitives/createHelperText.js +16 -0
- package/dist/headless/source/primitives/createHelperText.js.map +7 -0
- package/dist/headless/source/primitives/mergeStyle.js +15 -0
- package/dist/headless/source/primitives/mergeStyle.js.map +7 -0
- package/dist/headless/source/primitives/overlayLayer.js +10 -2
- package/dist/headless/source/primitives/overlayLayer.js.map +2 -2
- package/dist/headless/source/utils/controlProps.js +22 -0
- package/dist/headless/source/utils/controlProps.js.map +7 -0
- package/dist/headless/source/utils/ownClick.js +41 -0
- package/dist/headless/source/utils/ownClick.js.map +7 -0
- package/dist/headless/utils/controlProps.js +20 -0
- package/dist/headless/utils/controlProps.js.map +1 -0
- package/dist/headless/utils/ownClick.js +39 -0
- package/dist/headless/utils/ownClick.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +224 -220
- package/dist/index.js.map +1 -1
- package/dist/primitives/createCssTransition.d.ts +6 -0
- package/dist/primitives/createCssTransition.js +31 -28
- package/dist/primitives/createCssTransition.js.map +1 -1
- package/dist/primitives/createDismissOnEscape.d.ts +12 -0
- package/dist/primitives/createDismissOnEscape.js +14 -0
- package/dist/primitives/createDismissOnEscape.js.map +1 -0
- package/dist/primitives/createFocusTrap.d.ts +2 -0
- package/dist/primitives/createFocusTrap.js +1 -0
- package/dist/primitives/createFocusTrap.js.map +1 -1
- package/dist/primitives/createHelperText.d.ts +26 -0
- package/dist/primitives/createHelperText.js +14 -0
- package/dist/primitives/createHelperText.js.map +1 -0
- package/dist/primitives/mergeStyle.d.ts +19 -0
- package/dist/primitives/mergeStyle.js +9 -0
- package/dist/primitives/mergeStyle.js.map +1 -0
- package/dist/primitives/overlayLayer.d.ts +15 -3
- package/dist/primitives/overlayLayer.js +14 -7
- package/dist/primitives/overlayLayer.js.map +1 -1
- package/dist/source/components/base/animateHeight/animateHeight.jsx +7 -11
- package/dist/source/components/base/animateHeight/animateHeight.jsx.map +1 -1
- package/dist/source/components/base/icon/icon.jsx +10 -12
- package/dist/source/components/base/icon/icon.jsx.map +1 -1
- package/dist/source/components/base/ripple/ripple.jsx +16 -4
- package/dist/source/components/base/ripple/ripple.jsx.map +1 -1
- package/dist/source/components/dataDisplay/avatar/avatar.jsx +14 -7
- package/dist/source/components/dataDisplay/avatar/avatar.jsx.map +1 -1
- package/dist/source/components/dataDisplay/card/card.jsx +31 -12
- package/dist/source/components/dataDisplay/card/card.jsx.map +1 -1
- package/dist/source/components/dataDisplay/carousel/carousel.jsx +9 -3
- package/dist/source/components/dataDisplay/carousel/carousel.jsx.map +1 -1
- package/dist/source/components/dataDisplay/chart/chart.jsx +5 -4
- package/dist/source/components/dataDisplay/chart/chart.jsx.map +1 -1
- package/dist/source/components/dataDisplay/chat/chatIconButton.jsx +13 -3
- package/dist/source/components/dataDisplay/chat/chatIconButton.jsx.map +1 -1
- package/dist/source/components/dataDisplay/chat/chatLayout.jsx +6 -7
- package/dist/source/components/dataDisplay/chat/chatLayout.jsx.map +1 -1
- package/dist/source/components/dataDisplay/chat/chatOverlayLayout.jsx +5 -6
- package/dist/source/components/dataDisplay/chat/chatOverlayLayout.jsx.map +1 -1
- package/dist/source/components/dataDisplay/chip/chip.jsx +55 -19
- package/dist/source/components/dataDisplay/chip/chip.jsx.map +1 -1
- package/dist/source/components/dataDisplay/chipGroup/chipGroup.jsx +14 -11
- package/dist/source/components/dataDisplay/chipGroup/chipGroup.jsx.map +1 -1
- package/dist/source/components/dataDisplay/dagView/dagLayout.js +383 -0
- package/dist/source/components/dataDisplay/dagView/dagLayout.js.map +7 -0
- package/dist/source/components/dataDisplay/dagView/dagView.jsx +641 -0
- package/dist/source/components/dataDisplay/dagView/dagView.jsx.map +1 -0
- package/dist/source/components/dataDisplay/dagView/index.js +10 -0
- package/dist/source/components/dataDisplay/dagView/index.js.map +7 -0
- package/dist/source/components/dataDisplay/dagView/panZoom.js +247 -0
- package/dist/source/components/dataDisplay/dagView/panZoom.js.map +7 -0
- package/dist/source/components/dataDisplay/descriptionList/descriptionList.jsx +4 -6
- package/dist/source/components/dataDisplay/descriptionList/descriptionList.jsx.map +1 -1
- package/dist/source/components/dataDisplay/expansionPanel/expansionPanel.jsx +83 -9
- package/dist/source/components/dataDisplay/expansionPanel/expansionPanel.jsx.map +1 -1
- package/dist/source/components/dataDisplay/kanban/kanban.jsx +20 -10
- package/dist/source/components/dataDisplay/kanban/kanban.jsx.map +1 -1
- package/dist/source/components/dataDisplay/lazyImage/lazyImage.jsx +1 -1
- package/dist/source/components/dataDisplay/lazyImage/lazyImage.jsx.map +1 -1
- package/dist/source/components/dataDisplay/list/list.jsx +3 -3
- package/dist/source/components/dataDisplay/list/list.jsx.map +1 -1
- package/dist/source/components/dataDisplay/list/listItem.jsx +11 -10
- package/dist/source/components/dataDisplay/list/listItem.jsx.map +1 -1
- package/dist/source/components/dataDisplay/meter/meter.jsx +3 -2
- package/dist/source/components/dataDisplay/meter/meter.jsx.map +1 -1
- package/dist/source/components/dataDisplay/personChip/personChip.jsx +3 -2
- package/dist/source/components/dataDisplay/personChip/personChip.jsx.map +1 -1
- package/dist/source/components/dataDisplay/stat/stat.jsx +7 -8
- package/dist/source/components/dataDisplay/stat/stat.jsx.map +1 -1
- package/dist/source/components/dataDisplay/table/table.jsx +18 -1
- package/dist/source/components/dataDisplay/table/table.jsx.map +1 -1
- package/dist/source/components/dataDisplay/table/tableBody.jsx +6 -1
- package/dist/source/components/dataDisplay/table/tableBody.jsx.map +1 -1
- package/dist/source/components/dataDisplay/table/tableCell.jsx +13 -4
- package/dist/source/components/dataDisplay/table/tableCell.jsx.map +1 -1
- package/dist/source/components/dataDisplay/table/tableColumns.jsx +311 -0
- package/dist/source/components/dataDisplay/table/tableColumns.jsx.map +1 -0
- package/dist/source/components/dataDisplay/table/tableEntities.js +7 -0
- package/dist/source/components/dataDisplay/table/tableEntities.js.map +7 -0
- package/dist/source/components/dataDisplay/table/tableHead.jsx +14 -1
- package/dist/source/components/dataDisplay/table/tableHead.jsx.map +1 -1
- package/dist/source/components/dataDisplay/table/tableHeadCell.jsx +51 -33
- package/dist/source/components/dataDisplay/table/tableHeadCell.jsx.map +1 -1
- package/dist/source/components/dataDisplay/table/tableHtmlText.js +140 -0
- package/dist/source/components/dataDisplay/table/tableHtmlText.js.map +7 -0
- package/dist/source/components/dataDisplay/table/tableRow.jsx +11 -5
- package/dist/source/components/dataDisplay/table/tableRow.jsx.map +1 -1
- package/dist/source/components/dataDisplay/thumbCard/thumbCard.jsx +48 -19
- package/dist/source/components/dataDisplay/thumbCard/thumbCard.jsx.map +1 -1
- package/dist/source/components/dataDisplay/treeView/treeView.jsx +9 -2
- package/dist/source/components/dataDisplay/treeView/treeView.jsx.map +1 -1
- package/dist/source/components/dataDisplay/typography/typography.jsx +2 -6
- package/dist/source/components/dataDisplay/typography/typography.jsx.map +1 -1
- package/dist/source/components/feedBack/emptyState/emptyState.jsx +12 -2
- package/dist/source/components/feedBack/emptyState/emptyState.jsx.map +1 -1
- package/dist/source/components/feedBack/message/message.jsx +5 -4
- package/dist/source/components/feedBack/message/message.jsx.map +1 -1
- package/dist/source/components/feedBack/modal/modal.jsx +5 -2
- package/dist/source/components/feedBack/modal/modal.jsx.map +1 -1
- package/dist/source/components/feedBack/skeleton/skeleton.jsx +12 -5
- package/dist/source/components/feedBack/skeleton/skeleton.jsx.map +1 -1
- package/dist/source/components/feedBack/snackbar/snackbar.jsx +3 -3
- package/dist/source/components/feedBack/snackbar/snackbar.jsx.map +1 -1
- package/dist/source/components/feedBack/tooltip/tooltip.jsx +52 -5
- package/dist/source/components/feedBack/tooltip/tooltip.jsx.map +1 -1
- package/dist/source/components/inputs/button/button.jsx +8 -3
- package/dist/source/components/inputs/button/button.jsx.map +1 -1
- package/dist/source/components/inputs/buttonGroups/buttonGroup.jsx +4 -3
- package/dist/source/components/inputs/buttonGroups/buttonGroup.jsx.map +1 -1
- package/dist/source/components/inputs/checkbox/checkbox.jsx +27 -4
- package/dist/source/components/inputs/checkbox/checkbox.jsx.map +1 -1
- package/dist/source/components/inputs/datePicker/datePicker.jsx +13 -0
- package/dist/source/components/inputs/datePicker/datePicker.jsx.map +1 -1
- package/dist/source/components/inputs/datePicker/datePickerActionLabel.jsx +4 -1
- package/dist/source/components/inputs/datePicker/datePickerActionLabel.jsx.map +1 -1
- package/dist/source/components/inputs/datePicker/datePickerDay.jsx +12 -12
- package/dist/source/components/inputs/datePicker/datePickerDay.jsx.map +1 -1
- package/dist/source/components/inputs/datePicker/datePickerIconButton.jsx +13 -3
- package/dist/source/components/inputs/datePicker/datePickerIconButton.jsx.map +1 -1
- package/dist/source/components/inputs/dateTimePicker/dateTimePicker.jsx +13 -0
- package/dist/source/components/inputs/dateTimePicker/dateTimePicker.jsx.map +1 -1
- package/dist/source/components/inputs/floatingButton/floatingButton.jsx +12 -1
- package/dist/source/components/inputs/floatingButton/floatingButton.jsx.map +1 -1
- package/dist/source/components/inputs/radioButton/radioButton.jsx +16 -4
- package/dist/source/components/inputs/radioButton/radioButton.jsx.map +1 -1
- package/dist/source/components/inputs/rating/rating.jsx +49 -20
- package/dist/source/components/inputs/rating/rating.jsx.map +1 -1
- package/dist/source/components/inputs/selectField/dropdownMenu.jsx +222 -61
- package/dist/source/components/inputs/selectField/dropdownMenu.jsx.map +1 -1
- package/dist/source/components/inputs/selectField/optionNavigation.js +51 -0
- package/dist/source/components/inputs/selectField/optionNavigation.js.map +7 -0
- package/dist/source/components/inputs/selectField/selectField.jsx +318 -92
- package/dist/source/components/inputs/selectField/selectField.jsx.map +1 -1
- package/dist/source/components/inputs/slider/slider.jsx +89 -18
- package/dist/source/components/inputs/slider/slider.jsx.map +1 -1
- package/dist/source/components/inputs/textField/textField.jsx +47 -9
- package/dist/source/components/inputs/textField/textField.jsx.map +1 -1
- package/dist/source/components/inputs/textField/textFieldWrapper.jsx +20 -6
- package/dist/source/components/inputs/textField/textFieldWrapper.jsx.map +1 -1
- package/dist/source/components/inputs/timePicker/timePicker.jsx +13 -0
- package/dist/source/components/inputs/timePicker/timePicker.jsx.map +1 -1
- package/dist/source/components/inputs/toggle/toggle.jsx +14 -2
- package/dist/source/components/inputs/toggle/toggle.jsx.map +1 -1
- package/dist/source/components/inputs/valueSlider/valueSlider.jsx +7 -2
- package/dist/source/components/inputs/valueSlider/valueSlider.jsx.map +1 -1
- package/dist/source/components/layout/appLayout/appLayout.jsx +8 -6
- package/dist/source/components/layout/appLayout/appLayout.jsx.map +1 -1
- package/dist/source/components/layout/divider/divider.jsx +6 -5
- package/dist/source/components/layout/divider/divider.jsx.map +1 -1
- package/dist/source/components/layout/floatingWindow/floatingWindow.jsx +17 -11
- package/dist/source/components/layout/floatingWindow/floatingWindow.jsx.map +1 -1
- package/dist/source/components/layout/grid/grid.jsx +20 -8
- package/dist/source/components/layout/grid/grid.jsx.map +1 -1
- package/dist/source/components/layout/page/page.jsx +10 -2
- package/dist/source/components/layout/page/page.jsx.map +1 -1
- package/dist/source/components/layout/pageHeader/pageHeader.jsx +3 -2
- package/dist/source/components/layout/pageHeader/pageHeader.jsx.map +1 -1
- package/dist/source/components/layout/sectionHeader/sectionHeader.jsx +5 -5
- package/dist/source/components/layout/sectionHeader/sectionHeader.jsx.map +1 -1
- package/dist/source/components/layout/sheet/sheet.jsx +6 -8
- package/dist/source/components/layout/sheet/sheet.jsx.map +1 -1
- package/dist/source/components/layout/stack/stack.jsx +15 -11
- package/dist/source/components/layout/stack/stack.jsx.map +1 -1
- package/dist/source/components/navigation/appBar/appBar.jsx +3 -2
- package/dist/source/components/navigation/appBar/appBar.jsx.map +1 -1
- package/dist/source/components/navigation/bottomBar/bottomBar.jsx +48 -40
- package/dist/source/components/navigation/bottomBar/bottomBar.jsx.map +1 -1
- package/dist/source/components/navigation/breadcrumbs/breadcrumbs.jsx +9 -2
- package/dist/source/components/navigation/breadcrumbs/breadcrumbs.jsx.map +1 -1
- package/dist/source/components/navigation/menu/menu.jsx.map +1 -1
- package/dist/source/components/navigation/menu/menuComponent.jsx +3 -4
- package/dist/source/components/navigation/menu/menuComponent.jsx.map +1 -1
- package/dist/source/components/navigation/menu/menuContext.js.map +2 -2
- package/dist/source/components/navigation/menu/menuFloating.jsx +26 -4
- package/dist/source/components/navigation/menu/menuFloating.jsx.map +1 -1
- package/dist/source/components/navigation/menu/menuItem.jsx +22 -2
- package/dist/source/components/navigation/menu/menuItem.jsx.map +1 -1
- package/dist/source/components/navigation/menu/menuList.jsx +19 -7
- package/dist/source/components/navigation/menu/menuList.jsx.map +1 -1
- package/dist/source/components/navigation/menu/menuSubmenu.jsx +36 -4
- package/dist/source/components/navigation/menu/menuSubmenu.jsx.map +1 -1
- package/dist/source/components/navigation/pagination/pagination.jsx +4 -3
- package/dist/source/components/navigation/pagination/pagination.jsx.map +1 -1
- package/dist/source/components/navigation/sidebar/sidebar.jsx +1 -1
- package/dist/source/components/navigation/sidebar/sidebar.jsx.map +1 -1
- package/dist/source/components/navigation/stepper/stepper.jsx +14 -9
- package/dist/source/components/navigation/stepper/stepper.jsx.map +1 -1
- package/dist/source/components/navigation/tabs/tab/tab.jsx +12 -16
- package/dist/source/components/navigation/tabs/tab/tab.jsx.map +1 -1
- package/dist/source/components/navigation/tabs/tabs.jsx +34 -10
- package/dist/source/components/navigation/tabs/tabs.jsx.map +1 -1
- package/dist/source/components/navigation/tabs/tabsContext.js.map +2 -2
- package/dist/source/connects/rt/table/table.jsx +7 -2
- package/dist/source/connects/rt/table/table.jsx.map +1 -1
- package/dist/source/index.js +3 -0
- package/dist/source/index.js.map +2 -2
- package/dist/source/primitives/createCssTransition.js +10 -1
- package/dist/source/primitives/createCssTransition.js.map +2 -2
- package/dist/source/primitives/createDismissOnEscape.js +17 -0
- package/dist/source/primitives/createDismissOnEscape.js.map +7 -0
- package/dist/source/primitives/createFocusTrap.js +1 -0
- package/dist/source/primitives/createFocusTrap.js.map +2 -2
- package/dist/source/primitives/createHelperText.js +16 -0
- package/dist/source/primitives/createHelperText.js.map +7 -0
- package/dist/source/primitives/mergeStyle.js +15 -0
- package/dist/source/primitives/mergeStyle.js.map +7 -0
- package/dist/source/primitives/overlayLayer.js +10 -2
- package/dist/source/primitives/overlayLayer.js.map +2 -2
- package/dist/source/utils/controlProps.js +22 -0
- package/dist/source/utils/controlProps.js.map +7 -0
- package/dist/source/utils/ownClick.js +41 -0
- package/dist/source/utils/ownClick.js.map +7 -0
- package/dist/utils/controlProps.d.ts +17 -0
- package/dist/utils/controlProps.js +20 -0
- package/dist/utils/controlProps.js.map +1 -0
- package/dist/utils/ownClick.d.ts +16 -0
- package/dist/utils/ownClick.js +39 -0
- package/dist/utils/ownClick.js.map +1 -0
- package/package.json +9 -3
|
@@ -1,73 +1,81 @@
|
|
|
1
|
-
import { createComponent as
|
|
2
|
-
import { mergeProps as
|
|
3
|
-
import
|
|
4
|
-
import { mergeRefs as
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
import { createComponent as a, use as f, spread as h, mergeProps as l, insert as y, Dynamic as c, template as w } from "solid-js/web";
|
|
2
|
+
import { mergeProps as _, splitProps as k, Show as $, For as b } from "solid-js";
|
|
3
|
+
import v from "clsx";
|
|
4
|
+
import { mergeRefs as p } from "../../../primitives/mergeRefs.js";
|
|
5
|
+
import { mergeStyle as S } from "../../../primitives/mergeStyle.js";
|
|
6
|
+
var D = /* @__PURE__ */ w("<span>");
|
|
7
|
+
const d = (n) => typeof n == "number" ? `${n}px` : n;
|
|
8
|
+
function F(n) {
|
|
9
|
+
const u = _({
|
|
9
10
|
variant: "text",
|
|
10
11
|
animation: "pulse",
|
|
11
12
|
count: 1,
|
|
12
13
|
component: "span"
|
|
13
|
-
}, n), [
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
"animation-delay": `${t * e.animationDelay}ms`
|
|
14
|
+
}, n), [t, o] = k(u, ["class", "variant", "width", "height", "animation", "count", "animationDelay", "component", "style", "ref", "data-testid"]), s = () => v("smwb-skeleton", `smwb-skeleton_${t.variant}`, t.animation === !1 ? "smwb-skeleton_no-animation" : `smwb-skeleton_${t.animation}`, t.class), i = (e) => S(t.style, {
|
|
15
|
+
width: d(t.width),
|
|
16
|
+
height: d(t.height),
|
|
17
|
+
...t.animationDelay ? {
|
|
18
|
+
"animation-delay": `${e * t.animationDelay}ms`
|
|
19
19
|
} : {}
|
|
20
20
|
});
|
|
21
|
-
return
|
|
21
|
+
return a($, {
|
|
22
22
|
get when() {
|
|
23
|
-
return
|
|
23
|
+
return t.count > 1;
|
|
24
24
|
},
|
|
25
25
|
get fallback() {
|
|
26
|
-
return
|
|
26
|
+
return a(c, l({
|
|
27
27
|
get component() {
|
|
28
|
-
return
|
|
28
|
+
return t.component;
|
|
29
29
|
}
|
|
30
|
-
},
|
|
31
|
-
ref(
|
|
32
|
-
var r =
|
|
33
|
-
typeof r == "function" && r(
|
|
30
|
+
}, o, {
|
|
31
|
+
ref(e) {
|
|
32
|
+
var r = p(t.ref);
|
|
33
|
+
typeof r == "function" && r(e);
|
|
34
|
+
},
|
|
35
|
+
get "data-testid"() {
|
|
36
|
+
return t["data-testid"] ?? "skeleton";
|
|
34
37
|
},
|
|
35
|
-
"data-testid": "skeleton",
|
|
36
38
|
"aria-hidden": "true",
|
|
37
39
|
get class() {
|
|
38
|
-
return
|
|
40
|
+
return s();
|
|
39
41
|
},
|
|
40
42
|
get style() {
|
|
41
|
-
return
|
|
43
|
+
return i(0);
|
|
42
44
|
}
|
|
43
45
|
}));
|
|
44
46
|
},
|
|
45
47
|
get children() {
|
|
46
|
-
var
|
|
47
|
-
return typeof r == "function" &&
|
|
48
|
+
var e = D(), r = p(t.ref);
|
|
49
|
+
return typeof r == "function" && f(r, e), h(e, l(o, {
|
|
50
|
+
get "data-testid"() {
|
|
51
|
+
return t["data-testid"];
|
|
52
|
+
},
|
|
53
|
+
class: "smwb-skeleton__group",
|
|
54
|
+
"aria-hidden": "true"
|
|
55
|
+
}), !1, !0), y(e, a(b, {
|
|
48
56
|
get each() {
|
|
49
57
|
return Array.from({
|
|
50
|
-
length:
|
|
51
|
-
}, (
|
|
58
|
+
length: t.count
|
|
59
|
+
}, (m, g) => g);
|
|
52
60
|
},
|
|
53
|
-
children: (
|
|
61
|
+
children: (m) => a(c, {
|
|
54
62
|
get component() {
|
|
55
|
-
return
|
|
63
|
+
return t.component;
|
|
56
64
|
},
|
|
57
65
|
"data-testid": "skeleton",
|
|
58
66
|
"aria-hidden": "true",
|
|
59
67
|
get class() {
|
|
60
|
-
return
|
|
68
|
+
return s();
|
|
61
69
|
},
|
|
62
70
|
get style() {
|
|
63
|
-
return
|
|
71
|
+
return i(m);
|
|
64
72
|
}
|
|
65
73
|
})
|
|
66
|
-
})),
|
|
74
|
+
})), e;
|
|
67
75
|
}
|
|
68
76
|
});
|
|
69
77
|
}
|
|
70
78
|
export {
|
|
71
|
-
|
|
79
|
+
F as Skeleton
|
|
72
80
|
};
|
|
73
81
|
//# sourceMappingURL=skeleton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skeleton.js","sources":["../../../../../src/components/feedBack/skeleton/skeleton.tsx"],"sourcesContent":["import { type JSX, For, Show, mergeProps, splitProps } from \"solid-js\";\nimport { Dynamic } from \"solid-js/web\";\nimport cn from \"clsx\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\n\nexport interface SkeletonProps extends JSX.HTMLAttributes<HTMLElement> {\n /** Shape of the placeholder. */\n variant?: \"text\" | \"circular\" | \"rounded\" | \"rectangular\";\n /** Width — number (px) or any CSS length. */\n width?: number | string;\n /** Height — number (px) or any CSS length. */\n height?: number | string;\n /** Shimmer animation; pass false to disable. */\n animation?: \"pulse\" | \"wave\" | false;\n
|
|
1
|
+
{"version":3,"file":"skeleton.js","sources":["../../../../../src/components/feedBack/skeleton/skeleton.tsx"],"sourcesContent":["import { type JSX, For, Show, mergeProps, splitProps } from \"solid-js\";\nimport { Dynamic } from \"solid-js/web\";\nimport cn from \"clsx\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\nimport { mergeStyle } from \"../../../primitives/mergeStyle\";\n\nexport interface SkeletonProps extends JSX.HTMLAttributes<HTMLElement> {\n /** Shape of the placeholder. */\n variant?: \"text\" | \"circular\" | \"rounded\" | \"rectangular\";\n /** Width — number (px) or any CSS length. */\n width?: number | string;\n /** Height — number (px) or any CSS length. */\n height?: number | string;\n /** Shimmer animation; pass false to disable. */\n animation?: \"pulse\" | \"wave\" | false;\n /**\n * Render N stacked placeholders. With `count` > 1 they sit in a group `<span>`, which takes the `ref` and the\n * other HTML attributes; `class` and `style` go on each placeholder.\n */\n count?: number;\n /** Stagger consecutive items by N ms (with `count`). */\n animationDelay?: number;\n /** Element of each placeholder. */\n component?: \"span\" | \"div\";\n /**\n * Test id of the placeholder; `skeleton` unless given. With `count` > 1 it\n * marks the group, and each placeholder keeps `skeleton`.\n */\n \"data-testid\"?: string | undefined;\n ref?: Ref<HTMLElement>;\n}\n\nconst toCssSize = (value?: number | string): string | undefined => (typeof value === \"number\" ? `${value}px` : value);\n\nexport function Skeleton(props: SkeletonProps): JSX.Element {\n const merged = mergeProps(\n { variant: \"text\" as const, animation: \"pulse\" as const, count: 1, component: \"span\" as const },\n props\n );\n const [local, rest] = splitProps(merged, [\n \"class\",\n \"variant\",\n \"width\",\n \"height\",\n \"animation\",\n \"count\",\n \"animationDelay\",\n \"component\",\n \"style\",\n \"ref\",\n \"data-testid\",\n ]);\n\n const className = (): string =>\n cn(\n \"smwb-skeleton\",\n `smwb-skeleton_${local.variant}`,\n local.animation === false ? \"smwb-skeleton_no-animation\" : `smwb-skeleton_${local.animation}`,\n local.class\n );\n\n const itemStyle = (index: number): JSX.CSSProperties | string | undefined =>\n mergeStyle(local.style, {\n width: toCssSize(local.width),\n height: toCssSize(local.height),\n ...(local.animationDelay ? { \"animation-delay\": `${index * local.animationDelay}ms` } : {}),\n });\n\n return (\n <Show\n when={local.count > 1}\n fallback={\n <Dynamic\n component={local.component}\n {...rest}\n ref={mergeRefs(local.ref)}\n data-testid={local[\"data-testid\"] ?? \"skeleton\"}\n aria-hidden=\"true\"\n class={className()}\n style={itemStyle(0)}\n />\n }\n >\n <span\n {...rest}\n ref={mergeRefs(local.ref)}\n data-testid={local[\"data-testid\"]}\n class=\"smwb-skeleton__group\"\n aria-hidden=\"true\"\n >\n <For each={Array.from({ length: local.count }, (_, i) => i)}>\n {(index) => (\n <Dynamic\n component={local.component}\n data-testid=\"skeleton\"\n aria-hidden=\"true\"\n class={className()}\n style={itemStyle(index)}\n />\n )}\n </For>\n </span>\n </Show>\n );\n}\n\nexport default Skeleton;\n"],"names":["toCssSize","value","Skeleton","props","merged","mergeProps","variant","animation","count","component","local","rest","splitProps","className","cn","class","itemStyle","index","mergeStyle","style","width","height","animationDelay","_$createComponent","Show","when","fallback","Dynamic","_$mergeProps","ref","r$","_ref$2","mergeRefs","children","_el$","_tmpl$","_ref$","_$use","_$spread","_$insert","For","each","Array","from","length","_","i"],"mappings":";;;;;;AAgCA,MAAMA,IAAYA,CAACC,MAAiD,OAAOA,KAAU,WAAW,GAAGA,CAAK,OAAOA;AAExG,SAASC,EAASC,GAAmC;AAC1D,QAAMC,IAASC,EACb;AAAA,IAAEC,SAAS;AAAA,IAAiBC,WAAW;AAAA,IAAkBC,OAAO;AAAA,IAAGC,WAAW;AAAA,EAAA,GAC9EN,CACF,GACM,CAACO,GAAOC,CAAI,IAAIC,EAAWR,GAAQ,CACvC,SACA,WACA,SACA,UACA,aACA,SACA,kBACA,aACA,SACA,OACA,aAAa,CACd,GAEKS,IAAYA,MAChBC,EACE,iBACA,iBAAiBJ,EAAMJ,OAAO,IAC9BI,EAAMH,cAAc,KAAQ,+BAA+B,iBAAiBG,EAAMH,SAAS,IAC3FG,EAAMK,KACR,GAEIC,IAAYA,CAACC,MACjBC,EAAWR,EAAMS,OAAO;AAAA,IACtBC,OAAOpB,EAAUU,EAAMU,KAAK;AAAA,IAC5BC,QAAQrB,EAAUU,EAAMW,MAAM;AAAA,IAC9B,GAAIX,EAAMY,iBAAiB;AAAA,MAAE,mBAAmB,GAAGL,IAAQP,EAAMY,cAAc;AAAA,IAAA,IAAS,CAAA;AAAA,EAAC,CAC1F;AAEH,SAAAC,EACGC,GAAI;AAAA,IAAA,IACHC,OAAI;AAAA,aAAEf,EAAMF,QAAQ;AAAA,IAAC;AAAA,IAAA,IACrBkB,WAAQ;AAAA,aAAAH,EACLI,GAAOC,EAAA;AAAA,QAAA,IACNnB,YAAS;AAAA,iBAAEC,EAAMD;AAAAA,QAAS;AAAA,MAAA,GACtBE,GAAI;AAAA,QAAAkB,IAAAC,GAAA;AAAA,cAAAC,IACHC,EAAUtB,EAAMmB,GAAG;AAAC,iBAAAE,KAAA,cAAAA,EAAAD,CAAA;AAAA,QAAA;AAAA,QAAA,IAAA,gBAAA;AAAA,iBACZpB,EAAM,aAAa,KAAK;AAAA,QAAU;AAAA,QAAA,eAAA;AAAA,QAAA,IAAA,QAAA;AAAA,iBAExCG,EAAAA;AAAAA,QAAW;AAAA,QAAA,IAClBM,QAAK;AAAA,iBAAEH,EAAU,CAAC;AAAA,QAAC;AAAA,MAAA,CAAA,CAAA;AAAA,IAAA;AAAA,IAAA,IAAAiB,WAAA;AAAA,UAAAC,IAAAC,EAAAA,GAAAC,IAMhBJ,EAAUtB,EAAMmB,GAAG;AAAC,oBAAAO,KAAA,cAAAC,EAAAD,GAAAF,CAAA,GAAAI,EAAAJ,GAAAN,EADrBjB,GAAI;AAAA,QAAA,IAAA,gBAAA;AAAA,iBAEKD,EAAM,aAAa;AAAA,QAAC;AAAA,QAAA,OAC3B;AAAA,QAAsB,eAChB;AAAA,MAAA,CAAM,GAAA,IAAA,EAAA,GAAA6B,EAAAL,GAAAX,EAEjBiB,GAAG;AAAA,QAAA,IAACC,OAAI;AAAA,iBAAEC,MAAMC,KAAK;AAAA,YAAEC,QAAQlC,EAAMF;AAAAA,UAAAA,GAAS,CAACqC,GAAGC,MAAMA,CAAC;AAAA,QAAC;AAAA,QAAAb,UACvDhB,CAAAA,MAAKM,EACJI,GAAO;AAAA,UAAA,IACNlB,YAAS;AAAA,mBAAEC,EAAMD;AAAAA,UAAS;AAAA,UAAA,eAAA;AAAA,UAAA,eAAA;AAAA,UAAA,IAAA,QAAA;AAAA,mBAGnBI,EAAAA;AAAAA,UAAW;AAAA,UAAA,IAClBM,QAAK;AAAA,mBAAEH,EAAUC,CAAK;AAAA,UAAC;AAAA,QAAA,CAAA;AAAA,MAAA,CAE1B,CAAA,GAAAiB;AAAAA,IAAA;AAAA,EAAA,CAAA;AAKX;"}
|
|
@@ -27,11 +27,11 @@ const W = {
|
|
|
27
27
|
exitActive: "smwb-snackbar-exit-active"
|
|
28
28
|
};
|
|
29
29
|
function X(t) {
|
|
30
|
-
const
|
|
30
|
+
const l = S({
|
|
31
31
|
variant: "dark",
|
|
32
32
|
position: "top-right",
|
|
33
33
|
component: "div"
|
|
34
|
-
}, t), [e,
|
|
34
|
+
}, t), [e, c] = h(l, ["class", "message", "variant", "position", "onClick", "component", "isAutoClose", "autoCloseTime", "onClose", "action", "transitionClass", "ref"]);
|
|
35
35
|
let o;
|
|
36
36
|
return M(() => {
|
|
37
37
|
e.onClose && e.isAutoClose && e.autoCloseTime && (o = setTimeout(() => e.onClose?.(), e.autoCloseTime));
|
|
@@ -41,10 +41,10 @@ function X(t) {
|
|
|
41
41
|
get component() {
|
|
42
42
|
return e.component ?? "div";
|
|
43
43
|
}
|
|
44
|
-
},
|
|
44
|
+
}, c, {
|
|
45
45
|
ref(a) {
|
|
46
|
-
var
|
|
47
|
-
typeof
|
|
46
|
+
var m = H(e.ref);
|
|
47
|
+
typeof m == "function" && m(a);
|
|
48
48
|
},
|
|
49
49
|
get class() {
|
|
50
50
|
return A("smwb-snackbar", e.class, `smwb-${e.variant}`, `smwb-${e.position}`, e.transitionClass);
|
|
@@ -52,11 +52,15 @@ function X(t) {
|
|
|
52
52
|
get onClick() {
|
|
53
53
|
return e.onClick;
|
|
54
54
|
},
|
|
55
|
-
role
|
|
55
|
+
get role() {
|
|
56
|
+
return c.role ?? "alert";
|
|
57
|
+
},
|
|
56
58
|
get "aria-live"() {
|
|
57
|
-
return e.variant === "danger" ? "assertive" : "polite";
|
|
59
|
+
return c["aria-live"] ?? (e.variant === "danger" ? "assertive" : "polite");
|
|
60
|
+
},
|
|
61
|
+
get "aria-atomic"() {
|
|
62
|
+
return c["aria-atomic"] ?? "true";
|
|
58
63
|
},
|
|
59
|
-
"aria-atomic": "true",
|
|
60
64
|
get children() {
|
|
61
65
|
return [(() => {
|
|
62
66
|
var a = J();
|
|
@@ -74,7 +78,7 @@ function X(t) {
|
|
|
74
78
|
}));
|
|
75
79
|
}
|
|
76
80
|
function Y(t) {
|
|
77
|
-
const
|
|
81
|
+
const l = G({
|
|
78
82
|
in: () => !0,
|
|
79
83
|
appear: !0,
|
|
80
84
|
timeout: {
|
|
@@ -101,7 +105,7 @@ function Y(t) {
|
|
|
101
105
|
return t.snack.class;
|
|
102
106
|
},
|
|
103
107
|
get transitionClass() {
|
|
104
|
-
return
|
|
108
|
+
return l.classes();
|
|
105
109
|
},
|
|
106
110
|
get isAutoClose() {
|
|
107
111
|
return t.snack.autoClose ?? t.autoClose;
|
|
@@ -114,29 +118,29 @@ function Y(t) {
|
|
|
114
118
|
});
|
|
115
119
|
}
|
|
116
120
|
function oe(t) {
|
|
117
|
-
const
|
|
121
|
+
const l = S({
|
|
118
122
|
position: "top-right",
|
|
119
123
|
variant: "dark",
|
|
120
124
|
autoClose: !0,
|
|
121
125
|
autoCloseTime: 5e3,
|
|
122
126
|
closeOnClick: !0,
|
|
123
127
|
component: "div"
|
|
124
|
-
}, t), [e] = h(
|
|
128
|
+
}, t), [e] = h(l, ["position", "variant", "class", "autoClose", "autoCloseTime", "closeOnClick", "onClick", "component", "children"]), [c, o] = E([]), a = z(), m = (n) => {
|
|
125
129
|
const {
|
|
126
|
-
key:
|
|
130
|
+
key: i,
|
|
127
131
|
...r
|
|
128
|
-
} = n,
|
|
129
|
-
id:
|
|
132
|
+
} = n, u = i ?? `snack-${++V}`, g = {
|
|
133
|
+
id: u,
|
|
130
134
|
...r
|
|
131
135
|
};
|
|
132
136
|
return o((d) => {
|
|
133
|
-
const v = d.findIndex((R) => R.id ===
|
|
137
|
+
const v = d.findIndex((R) => R.id === u);
|
|
134
138
|
if (v === -1) return [...d, g];
|
|
135
139
|
const f = [...d];
|
|
136
140
|
return f[v] = g, f;
|
|
137
|
-
}),
|
|
141
|
+
}), u;
|
|
138
142
|
}, k = (n) => {
|
|
139
|
-
o((
|
|
143
|
+
o((i) => i.filter((r) => r.id !== n));
|
|
140
144
|
}, $ = () => {
|
|
141
145
|
o([]);
|
|
142
146
|
}, _ = () => {
|
|
@@ -147,15 +151,15 @@ function oe(t) {
|
|
|
147
151
|
e.closeOnClick && k(n);
|
|
148
152
|
}, y = () => {
|
|
149
153
|
const n = {};
|
|
150
|
-
for (const
|
|
151
|
-
const r =
|
|
152
|
-
(n[r] = n[r] ?? []).push(
|
|
154
|
+
for (const i of c()) {
|
|
155
|
+
const r = i.position ?? e.position;
|
|
156
|
+
(n[r] = n[r] ?? []).push(i);
|
|
153
157
|
}
|
|
154
158
|
return Object.entries(n);
|
|
155
159
|
};
|
|
156
160
|
return s(T.Provider, {
|
|
157
161
|
value: {
|
|
158
|
-
addSnackbar:
|
|
162
|
+
addSnackbar: m,
|
|
159
163
|
clearAllSnackbars: $,
|
|
160
164
|
clearFirstSnackbar: _,
|
|
161
165
|
clearLastSnackbar: x,
|
|
@@ -176,12 +180,12 @@ function oe(t) {
|
|
|
176
180
|
get each() {
|
|
177
181
|
return y();
|
|
178
182
|
},
|
|
179
|
-
children: ([n,
|
|
183
|
+
children: ([n, i]) => (() => {
|
|
180
184
|
var r = U();
|
|
181
185
|
return F(r, "data-testid", `snackbars-${n}`), C(r, s(p, {
|
|
182
|
-
each:
|
|
183
|
-
children: (
|
|
184
|
-
snack:
|
|
186
|
+
each: i,
|
|
187
|
+
children: (u) => s(Y, {
|
|
188
|
+
snack: u,
|
|
185
189
|
get position() {
|
|
186
190
|
return e.position;
|
|
187
191
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snackbar.js","sources":["../../../../../src/components/feedBack/snackbar/snackbar.tsx"],"sourcesContent":["import {\n type JSX,\n type ParentProps,\n For,\n Show,\n createContext,\n createSignal,\n mergeProps,\n onCleanup,\n onMount,\n splitProps,\n useContext,\n} from \"solid-js\";\nimport { Dynamic, Portal } from \"solid-js/web\";\nimport cn from \"clsx\";\nimport { createSnackbarsPortal } from \"./useSnackbarsPortal\";\nimport { createCssTransition } from \"../../../primitives/createCssTransition\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\n\nexport const variants = [\"dark\", \"light\", \"danger\", \"success\", \"warning\", \"info\"] as const;\nexport const positions = [\"top\", \"bottom\", \"top-left\", \"top-right\", \"bottom-right\", \"bottom-left\"] as const;\n\nexport type Variants = (typeof variants)[number];\nexport type Position = (typeof positions)[number];\n\nexport interface SnackbarsProviderProps extends JSX.HTMLAttributes<HTMLElement> {\n variant?: Variants;\n position?: Position;\n autoCloseTime?: number;\n closeOnClick?: boolean;\n autoClose?: boolean;\n component?: string;\n}\n\ninterface Snack {\n id: string;\n message: JSX.Element;\n variant?: Variants | undefined;\n position?: Position | undefined;\n autoClose?: boolean | undefined;\n autoCloseTime?: number | undefined;\n component?: string | undefined;\n class?: string | undefined;\n}\n\nexport interface AddSnackbarOptions {\n key?: string;\n message: JSX.Element;\n variant?: Variants | undefined;\n position?: Position | undefined;\n autoClose?: boolean | undefined;\n autoCloseTime?: number | undefined;\n component?: string | undefined;\n class?: string;\n}\n\nexport type AddSnackbar = (options: AddSnackbarOptions) => string;\n\nexport interface SnackbarOptions {\n addSnackbar: AddSnackbar;\n clearAllSnackbars: () => void;\n clearFirstSnackbar: () => void;\n clearLastSnackbar: () => void;\n clearByIdSnackbar: (id: string) => void;\n}\n\nconst SnackbarContext = createContext<SnackbarOptions>({\n addSnackbar: () => \"\",\n clearAllSnackbars: () => undefined,\n clearFirstSnackbar: () => undefined,\n clearLastSnackbar: () => undefined,\n clearByIdSnackbar: () => undefined,\n});\n\nlet snackCounter = 0;\n\nconst SNACKBAR_CLASSNAMES = {\n appear: \"smwb-snackbar-enter\",\n appearActive: \"smwb-snackbar-enter-active\",\n appearDone: \"smwb-snackbar-enter-done\",\n enter: \"smwb-snackbar-enter\",\n enterActive: \"smwb-snackbar-enter-active\",\n enterDone: \"smwb-snackbar-enter-done\",\n exitActive: \"smwb-snackbar-exit-active\",\n};\n\nexport interface SnackbarProps extends JSX.HTMLAttributes<HTMLElement> {\n message?: JSX.Element;\n variant?: Variants;\n position?: Position;\n component?: string;\n isAutoClose?: boolean;\n autoCloseTime?: number;\n onClose?: () => void;\n /** Optional action node rendered after the message (e.g. an Undo button). */\n action?: JSX.Element;\n /** Enter-transition classes for the appear animation. */\n transitionClass?: string;\n ref?: Ref<HTMLElement>;\n}\n\nexport function Snackbar(props: SnackbarProps): JSX.Element {\n const merged = mergeProps({ variant: \"dark\" as Variants, position: \"top-right\" as Position, component: \"div\" }, props);\n const [local, rest] = splitProps(merged, [\n \"class\",\n \"message\",\n \"variant\",\n \"position\",\n \"onClick\",\n \"component\",\n \"isAutoClose\",\n \"autoCloseTime\",\n \"onClose\",\n \"action\",\n \"transitionClass\",\n \"ref\",\n ]);\n\n let timer: ReturnType<typeof setTimeout> | undefined;\n onMount(() => {\n if (local.onClose && local.isAutoClose && local.autoCloseTime) {\n timer = setTimeout(() => local.onClose?.(), local.autoCloseTime);\n }\n });\n onCleanup(() => {\n if (timer !== undefined) clearTimeout(timer);\n });\n\n return (\n <Dynamic\n component={local.component ?? \"div\"}\n {...rest}\n ref={mergeRefs(local.ref)}\n class={cn(\"smwb-snackbar\", local.class, `smwb-${local.variant}`, `smwb-${local.position}`, local.transitionClass)}\n onClick={local.onClick}\n role=\"alert\"\n aria-live={local.variant === \"danger\" ? \"assertive\" : \"polite\"}\n aria-atomic=\"true\"\n >\n <div class=\"smwb-snackbar__body\">{local.message}</div>\n <Show when={local.action != null}>\n <div class=\"smwb-snackbar__action\">{local.action}</div>\n </Show>\n </Dynamic>\n );\n}\n\nfunction AnimatedSnack(props: {\n snack: Snack;\n position: Position;\n variant: Variants;\n component: string;\n autoClose: boolean;\n autoCloseTime: number;\n onRemove: (id: string) => void;\n onClose: (id: string) => void;\n}): JSX.Element {\n const transition = createCssTransition({\n in: () => true,\n appear: true,\n timeout: { appear: 125, enter: 125, exit: 125 },\n classNames: SNACKBAR_CLASSNAMES,\n });\n return (\n <Snackbar\n component={props.snack.component ?? props.component}\n message={props.snack.message}\n position={props.snack.position ?? props.position}\n variant={props.snack.variant ?? props.variant}\n class={props.snack.class}\n transitionClass={transition.classes()}\n isAutoClose={props.snack.autoClose ?? props.autoClose}\n autoCloseTime={props.snack.autoCloseTime ?? props.autoCloseTime}\n onClick={() => props.onRemove(props.snack.id)}\n onClose={() => props.onClose(props.snack.id)}\n />\n );\n}\n\nexport function SnackbarProvider(props: ParentProps<SnackbarsProviderProps>): JSX.Element {\n const merged = mergeProps(\n {\n position: \"top-right\" as Position,\n variant: \"dark\" as Variants,\n autoClose: true,\n autoCloseTime: 5000,\n closeOnClick: true,\n component: \"div\",\n },\n props\n );\n const [local] = splitProps(merged, [\n \"position\",\n \"variant\",\n \"class\",\n \"autoClose\",\n \"autoCloseTime\",\n \"closeOnClick\",\n \"onClick\",\n \"component\",\n \"children\",\n ]);\n\n const [snacks, setSnacks] = createSignal<Snack[]>([]);\n const portalRoot = createSnackbarsPortal();\n\n const addSnackbar: AddSnackbar = (options) => {\n const { key, ...optionRest } = options;\n const id = key ?? `snack-${++snackCounter}`;\n const snack: Snack = { id, ...optionRest };\n setSnacks((prev) => {\n const index = prev.findIndex((item) => item.id === id);\n if (index === -1) return [...prev, snack];\n const next = [...prev];\n next[index] = snack;\n return next;\n });\n return id;\n };\n\n const clearByIdSnackbar = (id: string): void => {\n setSnacks((prev) => prev.filter((item) => item.id !== id));\n };\n const clearAllSnackbars = (): void => {\n setSnacks([]);\n };\n const clearFirstSnackbar = (): void => {\n setSnacks((prev) => prev.slice(1));\n };\n const clearLastSnackbar = (): void => {\n setSnacks((prev) => prev.slice(0, -1));\n };\n\n const onRemove = (id: string): void => {\n if (local.closeOnClick) clearByIdSnackbar(id);\n };\n\n const grouped = (): Array<[Position, Snack[]]> => {\n const acc = {} as Record<Position, Snack[]>;\n for (const snack of snacks()) {\n const pos = snack.position ?? local.position;\n (acc[pos] = acc[pos] ?? []).push(snack);\n }\n return Object.entries(acc) as Array<[Position, Snack[]]>;\n };\n\n return (\n <SnackbarContext.Provider\n value={{ addSnackbar, clearAllSnackbars, clearFirstSnackbar, clearLastSnackbar, clearByIdSnackbar }}\n >\n {local.children}\n <Show when={portalRoot()}>\n <Portal mount={portalRoot()!}>\n <For each={grouped()}>\n {([pos, list]) => (\n <div class={cn(\"smwb-snackbars\", `smwb-${pos}`)} data-testid={`snackbars-${pos}`}>\n <For each={list}>\n {(snack) => (\n <AnimatedSnack\n snack={snack}\n position={local.position}\n variant={local.variant}\n component={local.component}\n autoClose={local.autoClose}\n autoCloseTime={local.autoCloseTime}\n onRemove={onRemove}\n onClose={clearByIdSnackbar}\n />\n )}\n </For>\n </div>\n )}\n </For>\n </Portal>\n </Show>\n </SnackbarContext.Provider>\n );\n}\n\nexport function useSnackbar(): SnackbarOptions {\n return useContext(SnackbarContext);\n}\n\nexport default SnackbarProvider;\n"],"names":["SnackbarContext","createContext","addSnackbar","clearAllSnackbars","clearFirstSnackbar","clearLastSnackbar","clearByIdSnackbar","snackCounter","SNACKBAR_CLASSNAMES","appear","appearActive","appearDone","enter","enterActive","enterDone","exitActive","Snackbar","props","merged","mergeProps","variant","position","component","local","rest","splitProps","timer","onMount","onClose","isAutoClose","autoCloseTime","setTimeout","onCleanup","undefined","clearTimeout","_$createComponent","Dynamic","_$mergeProps","ref","r$","_ref$","mergeRefs","cn","class","transitionClass","onClick","role","children","_el$","_tmpl$","_$insert","message","Show","when","action","_el$2","_tmpl$2","AnimatedSnack","transition","createCssTransition","in","timeout","exit","classNames","snack","classes","autoClose","onRemove","id","SnackbarProvider","closeOnClick","snacks","setSnacks","createSignal","portalRoot","createSnackbarsPortal","options","key","optionRest","prev","index","findIndex","item","next","filter","slice","grouped","acc","pos","push","Object","entries","Provider","value","_$memo","Portal","mount","For","each","list","_el$3","_tmpl$3","_$setAttribute","_$effect","_$className","useSnackbar","useContext"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"snackbar.js","sources":["../../../../../src/components/feedBack/snackbar/snackbar.tsx"],"sourcesContent":["import {\n type JSX,\n type ParentProps,\n For,\n Show,\n createContext,\n createSignal,\n mergeProps,\n onCleanup,\n onMount,\n splitProps,\n useContext,\n} from \"solid-js\";\nimport { Dynamic, Portal } from \"solid-js/web\";\nimport cn from \"clsx\";\nimport { createSnackbarsPortal } from \"./useSnackbarsPortal\";\nimport { createCssTransition } from \"../../../primitives/createCssTransition\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\n\nexport const variants = [\"dark\", \"light\", \"danger\", \"success\", \"warning\", \"info\"] as const;\nexport const positions = [\"top\", \"bottom\", \"top-left\", \"top-right\", \"bottom-right\", \"bottom-left\"] as const;\n\nexport type Variants = (typeof variants)[number];\nexport type Position = (typeof positions)[number];\n\nexport interface SnackbarsProviderProps extends JSX.HTMLAttributes<HTMLElement> {\n variant?: Variants;\n position?: Position;\n autoCloseTime?: number;\n closeOnClick?: boolean;\n autoClose?: boolean;\n component?: string;\n}\n\ninterface Snack {\n id: string;\n message: JSX.Element;\n variant?: Variants | undefined;\n position?: Position | undefined;\n autoClose?: boolean | undefined;\n autoCloseTime?: number | undefined;\n component?: string | undefined;\n class?: string | undefined;\n}\n\nexport interface AddSnackbarOptions {\n key?: string;\n message: JSX.Element;\n variant?: Variants | undefined;\n position?: Position | undefined;\n autoClose?: boolean | undefined;\n autoCloseTime?: number | undefined;\n component?: string | undefined;\n class?: string;\n}\n\nexport type AddSnackbar = (options: AddSnackbarOptions) => string;\n\nexport interface SnackbarOptions {\n addSnackbar: AddSnackbar;\n clearAllSnackbars: () => void;\n clearFirstSnackbar: () => void;\n clearLastSnackbar: () => void;\n clearByIdSnackbar: (id: string) => void;\n}\n\nconst SnackbarContext = createContext<SnackbarOptions>({\n addSnackbar: () => \"\",\n clearAllSnackbars: () => undefined,\n clearFirstSnackbar: () => undefined,\n clearLastSnackbar: () => undefined,\n clearByIdSnackbar: () => undefined,\n});\n\nlet snackCounter = 0;\n\nconst SNACKBAR_CLASSNAMES = {\n appear: \"smwb-snackbar-enter\",\n appearActive: \"smwb-snackbar-enter-active\",\n appearDone: \"smwb-snackbar-enter-done\",\n enter: \"smwb-snackbar-enter\",\n enterActive: \"smwb-snackbar-enter-active\",\n enterDone: \"smwb-snackbar-enter-done\",\n exitActive: \"smwb-snackbar-exit-active\",\n};\n\nexport interface SnackbarProps extends JSX.HTMLAttributes<HTMLElement> {\n message?: JSX.Element;\n variant?: Variants;\n position?: Position;\n component?: string;\n isAutoClose?: boolean;\n autoCloseTime?: number;\n onClose?: () => void;\n /** Optional action node rendered after the message (e.g. an Undo button). */\n action?: JSX.Element;\n /** Enter-transition classes for the appear animation. */\n transitionClass?: string;\n ref?: Ref<HTMLElement>;\n}\n\nexport function Snackbar(props: SnackbarProps): JSX.Element {\n const merged = mergeProps({ variant: \"dark\" as Variants, position: \"top-right\" as Position, component: \"div\" }, props);\n const [local, rest] = splitProps(merged, [\n \"class\",\n \"message\",\n \"variant\",\n \"position\",\n \"onClick\",\n \"component\",\n \"isAutoClose\",\n \"autoCloseTime\",\n \"onClose\",\n \"action\",\n \"transitionClass\",\n \"ref\",\n ]);\n\n let timer: ReturnType<typeof setTimeout> | undefined;\n onMount(() => {\n if (local.onClose && local.isAutoClose && local.autoCloseTime) {\n timer = setTimeout(() => local.onClose?.(), local.autoCloseTime);\n }\n });\n onCleanup(() => {\n if (timer !== undefined) clearTimeout(timer);\n });\n\n return (\n <Dynamic\n component={local.component ?? \"div\"}\n {...rest}\n ref={mergeRefs(local.ref)}\n class={cn(\"smwb-snackbar\", local.class, `smwb-${local.variant}`, `smwb-${local.position}`, local.transitionClass)}\n onClick={local.onClick}\n // Defaults: the caller's own role, aria-live and aria-atomic win, and an\n // explicit undefined keeps these.\n role={rest.role ?? \"alert\"}\n aria-live={rest[\"aria-live\"] ?? (local.variant === \"danger\" ? \"assertive\" : \"polite\")}\n aria-atomic={rest[\"aria-atomic\"] ?? \"true\"}\n >\n <div class=\"smwb-snackbar__body\">{local.message}</div>\n <Show when={local.action != null}>\n <div class=\"smwb-snackbar__action\">{local.action}</div>\n </Show>\n </Dynamic>\n );\n}\n\nfunction AnimatedSnack(props: {\n snack: Snack;\n position: Position;\n variant: Variants;\n component: string;\n autoClose: boolean;\n autoCloseTime: number;\n onRemove: (id: string) => void;\n onClose: (id: string) => void;\n}): JSX.Element {\n const transition = createCssTransition({\n in: () => true,\n appear: true,\n timeout: { appear: 125, enter: 125, exit: 125 },\n classNames: SNACKBAR_CLASSNAMES,\n });\n return (\n <Snackbar\n component={props.snack.component ?? props.component}\n message={props.snack.message}\n position={props.snack.position ?? props.position}\n variant={props.snack.variant ?? props.variant}\n class={props.snack.class}\n transitionClass={transition.classes()}\n isAutoClose={props.snack.autoClose ?? props.autoClose}\n autoCloseTime={props.snack.autoCloseTime ?? props.autoCloseTime}\n onClick={() => props.onRemove(props.snack.id)}\n onClose={() => props.onClose(props.snack.id)}\n />\n );\n}\n\nexport function SnackbarProvider(props: ParentProps<SnackbarsProviderProps>): JSX.Element {\n const merged = mergeProps(\n {\n position: \"top-right\" as Position,\n variant: \"dark\" as Variants,\n autoClose: true,\n autoCloseTime: 5000,\n closeOnClick: true,\n component: \"div\",\n },\n props\n );\n const [local] = splitProps(merged, [\n \"position\",\n \"variant\",\n \"class\",\n \"autoClose\",\n \"autoCloseTime\",\n \"closeOnClick\",\n \"onClick\",\n \"component\",\n \"children\",\n ]);\n\n const [snacks, setSnacks] = createSignal<Snack[]>([]);\n const portalRoot = createSnackbarsPortal();\n\n const addSnackbar: AddSnackbar = (options) => {\n const { key, ...optionRest } = options;\n const id = key ?? `snack-${++snackCounter}`;\n const snack: Snack = { id, ...optionRest };\n setSnacks((prev) => {\n const index = prev.findIndex((item) => item.id === id);\n if (index === -1) return [...prev, snack];\n const next = [...prev];\n next[index] = snack;\n return next;\n });\n return id;\n };\n\n const clearByIdSnackbar = (id: string): void => {\n setSnacks((prev) => prev.filter((item) => item.id !== id));\n };\n const clearAllSnackbars = (): void => {\n setSnacks([]);\n };\n const clearFirstSnackbar = (): void => {\n setSnacks((prev) => prev.slice(1));\n };\n const clearLastSnackbar = (): void => {\n setSnacks((prev) => prev.slice(0, -1));\n };\n\n const onRemove = (id: string): void => {\n if (local.closeOnClick) clearByIdSnackbar(id);\n };\n\n const grouped = (): Array<[Position, Snack[]]> => {\n const acc = {} as Record<Position, Snack[]>;\n for (const snack of snacks()) {\n const pos = snack.position ?? local.position;\n (acc[pos] = acc[pos] ?? []).push(snack);\n }\n return Object.entries(acc) as Array<[Position, Snack[]]>;\n };\n\n return (\n <SnackbarContext.Provider\n value={{ addSnackbar, clearAllSnackbars, clearFirstSnackbar, clearLastSnackbar, clearByIdSnackbar }}\n >\n {local.children}\n <Show when={portalRoot()}>\n <Portal mount={portalRoot()!}>\n <For each={grouped()}>\n {([pos, list]) => (\n <div class={cn(\"smwb-snackbars\", `smwb-${pos}`)} data-testid={`snackbars-${pos}`}>\n <For each={list}>\n {(snack) => (\n <AnimatedSnack\n snack={snack}\n position={local.position}\n variant={local.variant}\n component={local.component}\n autoClose={local.autoClose}\n autoCloseTime={local.autoCloseTime}\n onRemove={onRemove}\n onClose={clearByIdSnackbar}\n />\n )}\n </For>\n </div>\n )}\n </For>\n </Portal>\n </Show>\n </SnackbarContext.Provider>\n );\n}\n\nexport function useSnackbar(): SnackbarOptions {\n return useContext(SnackbarContext);\n}\n\nexport default SnackbarProvider;\n"],"names":["SnackbarContext","createContext","addSnackbar","clearAllSnackbars","clearFirstSnackbar","clearLastSnackbar","clearByIdSnackbar","snackCounter","SNACKBAR_CLASSNAMES","appear","appearActive","appearDone","enter","enterActive","enterDone","exitActive","Snackbar","props","merged","mergeProps","variant","position","component","local","rest","splitProps","timer","onMount","onClose","isAutoClose","autoCloseTime","setTimeout","onCleanup","undefined","clearTimeout","_$createComponent","Dynamic","_$mergeProps","ref","r$","_ref$","mergeRefs","cn","class","transitionClass","onClick","role","children","_el$","_tmpl$","_$insert","message","Show","when","action","_el$2","_tmpl$2","AnimatedSnack","transition","createCssTransition","in","timeout","exit","classNames","snack","classes","autoClose","onRemove","id","SnackbarProvider","closeOnClick","snacks","setSnacks","createSignal","portalRoot","createSnackbarsPortal","options","key","optionRest","prev","index","findIndex","item","next","filter","slice","grouped","acc","pos","push","Object","entries","Provider","value","_$memo","Portal","mount","For","each","list","_el$3","_tmpl$3","_$setAttribute","_$effect","_$className","useSnackbar","useContext"],"mappings":";;;;;;;AAkEA,MAAMA,IAAkBC,EAA+B;AAAA,EACrDC,aAAaA,MAAM;AAAA,EACnBC,mBAAmBA,MAAAA;AAAAA;AAAAA,EACnBC,oBAAoBA,MAAAA;AAAAA;AAAAA,EACpBC,mBAAmBA,MAAAA;AAAAA;AAAAA,EACnBC,mBAAmBA,MAAAA;AAAAA;AACrB,CAAC;AAED,IAAIC,IAAe;AAEnB,MAAMC,IAAsB;AAAA,EAC1BC,QAAQ;AAAA,EACRC,cAAc;AAAA,EACdC,YAAY;AAAA,EACZC,OAAO;AAAA,EACPC,aAAa;AAAA,EACbC,WAAW;AAAA,EACXC,YAAY;AACd;AAiBO,SAASC,EAASC,GAAmC;AAC1D,QAAMC,IAASC,EAAW;AAAA,IAAEC,SAAS;AAAA,IAAoBC,UAAU;AAAA,IAAyBC,WAAW;AAAA,EAAA,GAASL,CAAK,GAC/G,CAACM,GAAOC,CAAI,IAAIC,EAAWP,GAAQ,CACvC,SACA,WACA,WACA,YACA,WACA,aACA,eACA,iBACA,WACA,UACA,mBACA,KAAK,CACN;AAED,MAAIQ;AACJC,SAAAA,EAAQ,MAAM;AACZ,IAAIJ,EAAMK,WAAWL,EAAMM,eAAeN,EAAMO,kBAC9CJ,IAAQK,WAAW,MAAMR,EAAMK,UAAAA,GAAaL,EAAMO,aAAa;AAAA,EAEnE,CAAC,GACDE,EAAU,MAAM;AACd,IAAIN,MAAUO,UAAWC,aAAaR,CAAK;AAAA,EAC7C,CAAC,GAEDS,EACGC,GAAOC,EAAA;AAAA,IAAA,IACNf,YAAS;AAAA,aAAEC,EAAMD,aAAa;AAAA,IAAK;AAAA,EAAA,GAC/BE,GAAI;AAAA,IAAAc,IAAAC,GAAA;AAAA,UAAAC,IACHC,EAAUlB,EAAMe,GAAG;AAAC,aAAAE,KAAA,cAAAA,EAAAD,CAAA;AAAA,IAAA;AAAA,IAAA,IAAA,QAAA;AAAA,aAClBG,EAAG,iBAAiBnB,EAAMoB,OAAO,QAAQpB,EAAMH,OAAO,IAAI,QAAQG,EAAMF,QAAQ,IAAIE,EAAMqB,eAAe;AAAA,IAAC;AAAA,IAAA,IACjHC,UAAO;AAAA,aAAEtB,EAAMsB;AAAAA,IAAO;AAAA,IAAA,IAGtBC,OAAI;AAAA,aAAEtB,EAAKsB,QAAQ;AAAA,IAAO;AAAA,IAAA,IAAA,cAAA;AAAA,aACftB,EAAK,WAAW,MAAMD,EAAMH,YAAY,WAAW,cAAc;AAAA,IAAS;AAAA,IAAA,IAAA,gBAAA;AAAA,aACxEI,EAAK,aAAa,KAAK;AAAA,IAAM;AAAA,IAAA,IAAAuB,WAAA;AAAA,aAAA,EAAA,MAAA;AAAA,YAAAC,IAAAC,EAAAA;AAAAC,eAAAA,EAAAF,GAAA,MAERzB,EAAM4B,OAAO,GAAAH;AAAAA,MAAA,GAAA,GAAAb,EAC9CiB,GAAI;AAAA,QAAA,IAACC,OAAI;AAAA,iBAAE9B,EAAM+B,UAAU;AAAA,QAAI;AAAA,QAAA,IAAAP,WAAA;AAAA,cAAAQ,IAAAC,EAAAA;AAAAN,iBAAAA,EAAAK,GAAA,MACMhC,EAAM+B,MAAM,GAAAC;AAAAA,QAAA;AAAA,MAAA,CAAA,CAAA;AAAA,IAAA;AAAA,EAAA,CAAA,CAAA;AAIxD;AAEA,SAASE,EAAcxC,GASP;AACd,QAAMyC,IAAaC,EAAoB;AAAA,IACrCC,IAAIA,MAAM;AAAA,IACVnD,QAAQ;AAAA,IACRoD,SAAS;AAAA,MAAEpD,QAAQ;AAAA,MAAKG,OAAO;AAAA,MAAKkD,MAAM;AAAA,IAAA;AAAA,IAC1CC,YAAYvD;AAAAA,EAAAA,CACb;AACD,SAAA2B,EACGnB,GAAQ;AAAA,IAAA,IACPM,YAAS;AAAA,aAAEL,EAAM+C,MAAM1C,aAAaL,EAAMK;AAAAA,IAAS;AAAA,IAAA,IACnD6B,UAAO;AAAA,aAAElC,EAAM+C,MAAMb;AAAAA,IAAO;AAAA,IAAA,IAC5B9B,WAAQ;AAAA,aAAEJ,EAAM+C,MAAM3C,YAAYJ,EAAMI;AAAAA,IAAQ;AAAA,IAAA,IAChDD,UAAO;AAAA,aAAEH,EAAM+C,MAAM5C,WAAWH,EAAMG;AAAAA,IAAO;AAAA,IAAA,IAAA,QAAA;AAAA,aACtCH,EAAM+C,MAAMrB;AAAAA,IAAK;AAAA,IAAA,IACxBC,kBAAe;AAAA,aAAEc,EAAWO,QAAAA;AAAAA,IAAS;AAAA,IAAA,IACrCpC,cAAW;AAAA,aAAEZ,EAAM+C,MAAME,aAAajD,EAAMiD;AAAAA,IAAS;AAAA,IAAA,IACrDpC,gBAAa;AAAA,aAAEb,EAAM+C,MAAMlC,iBAAiBb,EAAMa;AAAAA,IAAa;AAAA,IAC/De,SAASA,MAAM5B,EAAMkD,SAASlD,EAAM+C,MAAMI,EAAE;AAAA,IAC5CxC,SAASA,MAAMX,EAAMW,QAAQX,EAAM+C,MAAMI,EAAE;AAAA,EAAA,CAAC;AAGlD;AAEO,SAASC,GAAiBpD,GAAyD;AACxF,QAAMC,IAASC,EACb;AAAA,IACEE,UAAU;AAAA,IACVD,SAAS;AAAA,IACT8C,WAAW;AAAA,IACXpC,eAAe;AAAA,IACfwC,cAAc;AAAA,IACdhD,WAAW;AAAA,EAAA,GAEbL,CACF,GACM,CAACM,CAAK,IAAIE,EAAWP,GAAQ,CACjC,YACA,WACA,SACA,aACA,iBACA,gBACA,WACA,aACA,UAAU,CACX,GAEK,CAACqD,GAAQC,CAAS,IAAIC,EAAsB,CAAA,CAAE,GAC9CC,IAAaC,EAAAA,GAEbzE,IAA4B0E,CAAAA,MAAY;AAC5C,UAAM;AAAA,MAAEC,KAAAA;AAAAA,MAAK,GAAGC;AAAAA,IAAAA,IAAeF,GACzBR,IAAKS,KAAO,SAAS,EAAEtE,CAAY,IACnCyD,IAAe;AAAA,MAAEI,IAAAA;AAAAA,MAAI,GAAGU;AAAAA,IAAAA;AAC9BN,WAAAA,EAAWO,CAAAA,MAAS;AAClB,YAAMC,IAAQD,EAAKE,UAAWC,CAAAA,MAASA,EAAKd,OAAOA,CAAE;AACrD,UAAIY,MAAU,GAAI,QAAO,CAAC,GAAGD,GAAMf,CAAK;AACxC,YAAMmB,IAAO,CAAC,GAAGJ,CAAI;AACrBI,aAAAA,EAAKH,CAAK,IAAIhB,GACPmB;AAAAA,IACT,CAAC,GACMf;AAAAA,EACT,GAEM9D,IAAoBA,CAAC8D,MAAqB;AAC9CI,IAAAA,EAAWO,OAASA,EAAKK,OAAQF,OAASA,EAAKd,OAAOA,CAAE,CAAC;AAAA,EAC3D,GACMjE,IAAoBA,MAAY;AACpCqE,IAAAA,EAAU,CAAA,CAAE;AAAA,EACd,GACMpE,IAAqBA,MAAY;AACrCoE,IAAAA,EAAWO,CAAAA,MAASA,EAAKM,MAAM,CAAC,CAAC;AAAA,EACnC,GACMhF,IAAoBA,MAAY;AACpCmE,IAAAA,EAAWO,CAAAA,MAASA,EAAKM,MAAM,GAAG,EAAE,CAAC;AAAA,EACvC,GAEMlB,IAAWA,CAACC,MAAqB;AACrC,IAAI7C,EAAM+C,gBAAchE,EAAkB8D,CAAE;AAAA,EAC9C,GAEMkB,IAAUA,MAAkC;AAChD,UAAMC,IAAM,CAAA;AACZ,eAAWvB,KAASO,KAAU;AAC5B,YAAMiB,IAAMxB,EAAM3C,YAAYE,EAAMF;AACpC,OAACkE,EAAIC,CAAG,IAAID,EAAIC,CAAG,KAAK,CAAA,GAAIC,KAAKzB,CAAK;AAAA,IACxC;AACA,WAAO0B,OAAOC,QAAQJ,CAAG;AAAA,EAC3B;AAEA,SAAApD,EACGnC,EAAgB4F,UAAQ;AAAA,IACvBC,OAAO;AAAA,MAAE3F,aAAAA;AAAAA,MAAaC,mBAAAA;AAAAA,MAAmBC,oBAAAA;AAAAA,MAAoBC,mBAAAA;AAAAA,MAAmBC,mBAAAA;AAAAA,IAAAA;AAAAA,IAAmB,IAAAyC,WAAA;AAAA,aAAA,CAAA+C,QAElGvE,EAAMwB,QAAQ,GAAAZ,EACdiB,GAAI;AAAA,QAAA,IAACC,OAAI;AAAA,iBAAEqB,EAAAA;AAAAA,QAAY;AAAA,QAAA,IAAA3B,WAAA;AAAA,iBAAAZ,EACrB4D,GAAM;AAAA,YAAA,IAACC,QAAK;AAAA,qBAAEtB,EAAAA;AAAAA,YAAa;AAAA,YAAA,IAAA3B,WAAA;AAAA,qBAAAZ,EACzB8D,GAAG;AAAA,gBAAA,IAACC,OAAI;AAAA,yBAAEZ,EAAAA;AAAAA,gBAAS;AAAA,gBAAAvC,UACjBA,CAAC,CAACyC,GAAKW,CAAI,OAAC,MAAA;AAAA,sBAAAC,IAAAC,EAAAA;AAAAC,yBAAAA,EAAAF,GAAA,eACmD,aAAaZ,CAAG,EAAE,GAAAtC,EAAAkD,GAAAjE,EAC7E8D,GAAG;AAAA,oBAACC,MAAMC;AAAAA,oBAAIpD,UACXiB,CAAAA,MAAK7B,EACJsB,GAAa;AAAA,sBACZO,OAAAA;AAAAA,sBAAY,IACZ3C,WAAQ;AAAA,+BAAEE,EAAMF;AAAAA,sBAAQ;AAAA,sBAAA,IACxBD,UAAO;AAAA,+BAAEG,EAAMH;AAAAA,sBAAO;AAAA,sBAAA,IACtBE,YAAS;AAAA,+BAAEC,EAAMD;AAAAA,sBAAS;AAAA,sBAAA,IAC1B4C,YAAS;AAAA,+BAAE3C,EAAM2C;AAAAA,sBAAS;AAAA,sBAAA,IAC1BpC,gBAAa;AAAA,+BAAEP,EAAMO;AAAAA,sBAAa;AAAA,sBAClCqC,UAAAA;AAAAA,sBACAvC,SAAStB;AAAAA,oBAAAA,CAAiB;AAAA,kBAAA,CAE7B,CAAA,GAAAiG,EAAA,MAAAC,EAAAJ,GAbO1D,EAAG,kBAAkB,QAAQ8C,CAAG,EAAE,CAAC,CAAA,GAAAY;AAAAA,gBAAA,GAAA;AAAA,cAAA,CAgBhD;AAAA,YAAA;AAAA,UAAA,CAAA;AAAA,QAAA;AAAA,MAAA,CAAA,CAAA;AAAA,IAAA;AAAA,EAAA,CAAA;AAMb;AAEO,SAASK,KAA+B;AAC7C,SAAOC,EAAW1G,CAAe;AACnC;"}
|
|
@@ -1,13 +1,21 @@
|
|
|
1
|
-
import { use as
|
|
2
|
-
import { mergeProps as
|
|
3
|
-
import
|
|
4
|
-
import { offset as
|
|
5
|
-
import { resolvePlacement as
|
|
6
|
-
import { createFloating as
|
|
7
|
-
import { mergeRefs as
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
import { use as g, insert as d, createComponent as N, effect as X, className as Y, style as H, memo as V, template as F, delegateEvents as j } from "solid-js/web";
|
|
2
|
+
import { mergeProps as q, splitProps as z, createSignal as v, onCleanup as B, onMount as G, Show as J } from "solid-js";
|
|
3
|
+
import K from "clsx";
|
|
4
|
+
import { offset as Q, flip as U, shift as W } from "@floating-ui/dom";
|
|
5
|
+
import { resolvePlacement as Z } from "../../../utils/floating.js";
|
|
6
|
+
import { createFloating as ee } from "../../../primitives/createFloating.js";
|
|
7
|
+
import { mergeRefs as te } from "../../../primitives/mergeRefs.js";
|
|
8
|
+
import { createDismissOnEscape as C } from "../../../primitives/createDismissOnEscape.js";
|
|
9
|
+
var re = /* @__PURE__ */ F("<div>"), oe = /* @__PURE__ */ F("<div class=smwb-tooltip__wrapper role=tooltip><div class=smwb-tooltip__ref>");
|
|
10
|
+
function ne(u) {
|
|
11
|
+
try {
|
|
12
|
+
return u.matches(":focus-visible");
|
|
13
|
+
} catch {
|
|
14
|
+
return !0;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
function pe(u) {
|
|
18
|
+
const b = q({
|
|
11
19
|
placement: "top",
|
|
12
20
|
offset: {
|
|
13
21
|
offsetX: 0,
|
|
@@ -16,61 +24,77 @@ function ee(w) {
|
|
|
16
24
|
trigger: "hover",
|
|
17
25
|
openDelay: 0,
|
|
18
26
|
closeDelay: 0
|
|
19
|
-
},
|
|
20
|
-
let
|
|
21
|
-
const
|
|
22
|
-
|
|
27
|
+
}, u), [e] = z(b, ["class", "children", "placement", "offset", "message", "open", "trigger", "openDelay", "closeDelay", "ref"]), [h, n] = v(!1), [y, T] = v(!1);
|
|
28
|
+
let a = null, c = null, m = !1, s = !1;
|
|
29
|
+
const f = () => {
|
|
30
|
+
a !== null && (clearTimeout(a), a = null), c !== null && (clearTimeout(c), c = null);
|
|
23
31
|
};
|
|
24
|
-
|
|
25
|
-
const
|
|
26
|
-
if (
|
|
32
|
+
B(f);
|
|
33
|
+
const $ = () => {
|
|
34
|
+
if (f(), e.openDelay <= 0) {
|
|
27
35
|
n(!0);
|
|
28
36
|
return;
|
|
29
37
|
}
|
|
30
|
-
|
|
31
|
-
},
|
|
32
|
-
if (
|
|
38
|
+
a = setTimeout(() => n(!0), e.openDelay);
|
|
39
|
+
}, _ = () => {
|
|
40
|
+
if (f(), e.closeDelay <= 0) {
|
|
33
41
|
n(!1);
|
|
34
42
|
return;
|
|
35
43
|
}
|
|
36
|
-
|
|
37
|
-
}
|
|
38
|
-
|
|
44
|
+
c = setTimeout(() => n(!1), e.closeDelay);
|
|
45
|
+
};
|
|
46
|
+
C(() => e.trigger === "hover" && h(), () => {
|
|
47
|
+
f(), s = !1, n(!1);
|
|
48
|
+
}), C(() => e.trigger === "click" && y(), () => T(!1));
|
|
49
|
+
const p = () => Z(e.placement), l = ee({
|
|
50
|
+
placement: () => p().placement,
|
|
39
51
|
middleware: () => [
|
|
40
|
-
|
|
52
|
+
Q({
|
|
41
53
|
mainAxis: e.offset?.offsetY ?? 0,
|
|
42
54
|
crossAxis: e.offset?.offsetX ?? 0
|
|
43
55
|
}),
|
|
44
56
|
// A fixed placement turns to the other side, and slides along it, when the
|
|
45
57
|
// viewport has no room for it.
|
|
46
|
-
...
|
|
58
|
+
...p().autoMiddleware ? [p().autoMiddleware] : [U(), W({
|
|
47
59
|
padding: 8
|
|
48
60
|
})]
|
|
49
61
|
]
|
|
50
|
-
}),
|
|
62
|
+
}), E = () => e.trigger === "manual" ? e.open === !0 : e.trigger === "click" ? y() : h(), [P, M] = v(!1);
|
|
63
|
+
G(() => M(!0));
|
|
64
|
+
const R = () => {
|
|
65
|
+
m = !0, e.trigger === "hover" && $();
|
|
66
|
+
}, x = () => {
|
|
67
|
+
m = !1, e.trigger === "hover" && !s && _();
|
|
68
|
+
}, I = (t) => {
|
|
69
|
+
t.currentTarget.contains(t.target) && (s = ne(t.target), e.trigger === "hover" && s && $());
|
|
70
|
+
}, L = (t) => {
|
|
71
|
+
t.relatedTarget instanceof Node && t.currentTarget.contains(t.relatedTarget) || (s = !1, e.trigger === "hover" && !m && _());
|
|
72
|
+
}, S = () => {
|
|
73
|
+
e.trigger === "click" && T((t) => !t);
|
|
74
|
+
};
|
|
51
75
|
return (() => {
|
|
52
|
-
var
|
|
53
|
-
typeof
|
|
54
|
-
var
|
|
55
|
-
return typeof
|
|
76
|
+
var t = oe(), r = t.firstChild, w = te(e.ref);
|
|
77
|
+
typeof w == "function" && g(w, t), r.$$click = S, r.$$focusout = L, r.$$focusin = I, r.addEventListener("pointerleave", x), r.addEventListener("pointerenter", R);
|
|
78
|
+
var D = l.setReference;
|
|
79
|
+
return typeof D == "function" ? g(D, r) : l.setReference = r, d(r, () => e.children), d(t, N(J, {
|
|
56
80
|
get when() {
|
|
57
|
-
return
|
|
81
|
+
return V(() => !!P())() && E();
|
|
58
82
|
},
|
|
59
83
|
get children() {
|
|
60
|
-
var
|
|
61
|
-
return typeof
|
|
62
|
-
var
|
|
63
|
-
return
|
|
84
|
+
var o = re(), k = l.setFloating;
|
|
85
|
+
return typeof k == "function" ? g(k, o) : l.setFloating = o, d(o, () => e.message), X((i) => {
|
|
86
|
+
var O = K("smwb-tooltip", e.class), A = l.floatingStyles();
|
|
87
|
+
return O !== i.e && Y(o, i.e = O), i.t = H(o, A, i.t), i;
|
|
64
88
|
}, {
|
|
65
89
|
e: void 0,
|
|
66
90
|
t: void 0
|
|
67
|
-
}),
|
|
91
|
+
}), o;
|
|
68
92
|
}
|
|
69
|
-
}), null),
|
|
93
|
+
}), null), t;
|
|
70
94
|
})();
|
|
71
95
|
}
|
|
72
|
-
|
|
96
|
+
j(["focusin", "focusout", "click"]);
|
|
73
97
|
export {
|
|
74
|
-
|
|
98
|
+
pe as Tooltip
|
|
75
99
|
};
|
|
76
100
|
//# sourceMappingURL=tooltip.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tooltip.js","sources":["../../../../../src/components/feedBack/tooltip/tooltip.tsx"],"sourcesContent":["import { type JSX, type ParentProps, Show, createSignal, mergeProps, onCleanup, splitProps } from \"solid-js\";\nimport cn from \"clsx\";\nimport { flip, offset as offsetMiddleware, shift } from \"@floating-ui/dom\";\nimport { type Placement, resolvePlacement } from \"../../../utils/floating\";\nimport { createFloating } from \"../../../primitives/createFloating\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\n\nexport type TooltipTrigger = \"hover\" | \"click\" | \"manual\";\n\nexport interface TooltipProps {\n class?: string;\n offset?: {\n offsetX?: number;\n offsetY?: number;\n };\n message: JSX.Element;\n placement?: Placement;\n /** Controls tooltip visibility when trigger is manual. */\n open?: boolean;\n /** hover (default): show on pointer enter; click: toggle; manual: use open only. */\n trigger?: TooltipTrigger;\n openDelay?: number;\n closeDelay?: number;\n ref?: Ref<HTMLDivElement>;\n}\n\nexport function Tooltip(props: ParentProps<TooltipProps>): JSX.Element {\n const merged = mergeProps(\n {\n placement: \"top\" as Placement,\n offset: { offsetX: 0, offsetY: 0 },\n trigger: \"hover\" as TooltipTrigger,\n openDelay: 0,\n closeDelay: 0,\n },\n props\n );\n const [local] = splitProps(merged, [\n \"class\",\n \"children\",\n \"placement\",\n \"offset\",\n \"message\",\n \"open\",\n \"trigger\",\n \"openDelay\",\n \"closeDelay\",\n \"ref\",\n ]);\n\n const [hoverOpen, setHoverOpen] = createSignal(false);\n const [clickOpen, setClickOpen] = createSignal(false);\n let openTimer: ReturnType<typeof setTimeout> | null = null;\n let closeTimer: ReturnType<typeof setTimeout> | null = null;\n\n const clearTimers = (): void => {\n if (openTimer !== null) {\n clearTimeout(openTimer);\n openTimer = null;\n }\n if (closeTimer !== null) {\n clearTimeout(closeTimer);\n closeTimer = null;\n }\n };\n onCleanup(clearTimers);\n\n const scheduleOpen = (): void => {\n clearTimers();\n if (local.openDelay <= 0) {\n setHoverOpen(true);\n return;\n }\n openTimer = setTimeout(() => setHoverOpen(true), local.openDelay);\n };\n const scheduleClose = (): void => {\n clearTimers();\n if (local.closeDelay <= 0) {\n setHoverOpen(false);\n return;\n }\n closeTimer = setTimeout(() => setHoverOpen(false), local.closeDelay);\n };\n\n const resolved = () => resolvePlacement(local.placement);\n const floating = createFloating({\n placement: () => resolved().placement,\n middleware: () => [\n offsetMiddleware({ mainAxis: local.offset?.offsetY ?? 0, crossAxis: local.offset?.offsetX ?? 0 }),\n // A fixed placement turns to the other side, and slides along it, when the\n // viewport has no room for it.\n ...(resolved().autoMiddleware ? [resolved().autoMiddleware] : [flip(), shift({ padding: 8 })]),\n ],\n });\n\n const isVisible = (): boolean =>\n local.trigger === \"manual\" ? local.open === true : local.trigger === \"click\" ? clickOpen() : hoverOpen();\n\n return (\n <div class=\"smwb-tooltip__wrapper\" role=\"tooltip\" ref={mergeRefs(local.ref)}>\n <div\n class=\"smwb-tooltip__ref\"\n ref={floating.setReference}\n onPointerEnter={local.trigger === \"hover\" ? scheduleOpen : undefined}\n onPointerLeave={local.trigger === \"hover\" ? scheduleClose : undefined}\n onClick={local.trigger === \"click\" ? () => setClickOpen((prev) => !prev) : undefined}\n >\n {local.children}\n </div>\n <Show when={isVisible()}>\n <div ref={floating.setFloating} class={cn(\"smwb-tooltip\", local.class)} style={floating.floatingStyles()}>\n {local.message}\n </div>\n </Show>\n </div>\n );\n}\n\nexport default Tooltip;\n"],"names":["Tooltip","props","merged","mergeProps","placement","offset","offsetX","offsetY","trigger","openDelay","closeDelay","local","splitProps","hoverOpen","setHoverOpen","createSignal","clickOpen","setClickOpen","openTimer","closeTimer","clearTimers","clearTimeout","onCleanup","scheduleOpen","setTimeout","scheduleClose","resolved","resolvePlacement","floating","createFloating","middleware","offsetMiddleware","mainAxis","crossAxis","autoMiddleware","flip","shift","padding","isVisible","open","_el$","_tmpl$2","_el$2","firstChild","_ref$","mergeRefs","ref","_$use","_$addEventListener","prev","undefined","_ref$2","setReference","_$insert","children","_$createComponent","Show","when","_el$3","_tmpl$","_ref$3","setFloating","message","_$effect","_p$","_v$","cn","class","_v$2","floatingStyles","e","_$className","t","_$style","_$delegateEvents"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tooltip.js","sources":["../../../../../src/components/feedBack/tooltip/tooltip.tsx"],"sourcesContent":["import { type JSX, type ParentProps, Show, createSignal, mergeProps, onCleanup, onMount, splitProps } from \"solid-js\";\nimport cn from \"clsx\";\nimport { flip, offset as offsetMiddleware, shift } from \"@floating-ui/dom\";\nimport { type Placement, resolvePlacement } from \"../../../utils/floating\";\nimport { createFloating } from \"../../../primitives/createFloating\";\nimport { mergeRefs, type Ref } from \"../../../primitives/mergeRefs\";\nimport { createDismissOnEscape } from \"../../../primitives/createDismissOnEscape\";\n\nexport type TooltipTrigger = \"hover\" | \"click\" | \"manual\";\n\nexport interface TooltipProps {\n class?: string;\n offset?: {\n offsetX?: number;\n offsetY?: number;\n };\n /** What the tip says: text or markup. */\n message: JSX.Element;\n placement?: Placement;\n /** Controls tooltip visibility when trigger is manual. */\n open?: boolean;\n /**\n * What shows the tooltip. `hover` (default): the pointer over the target or keyboard focus\n * in it, until both have left. Keyboard focus is focus with a focus ring (`:focus-visible`),\n * not the focus a mouse press gives a button. `click`: a click on the target shows or hides\n * it. `manual`: `open` alone. Escape hides a `hover` or `click` tooltip.\n */\n trigger?: TooltipTrigger;\n /** Milliseconds from the pointer entering the target, or keyboard focus moving into it, until a hover tooltip shows. */\n openDelay?: number;\n /** Milliseconds from the pointer and keyboard focus both leaving the target until a hover tooltip hides. */\n closeDelay?: number;\n ref?: Ref<HTMLDivElement>;\n}\n\n/**\n * Whether focus on `element` draws a focus ring (`:focus-visible`): focus from the keyboard,\n * not the focus a mouse press gives a button. An engine without the selector counts any focus.\n */\nfunction hasFocusRing(element: Element): boolean {\n try {\n return element.matches(\":focus-visible\");\n } catch {\n return true;\n }\n}\n\nexport function Tooltip(props: ParentProps<TooltipProps>): JSX.Element {\n const merged = mergeProps(\n {\n placement: \"top\" as Placement,\n offset: { offsetX: 0, offsetY: 0 },\n trigger: \"hover\" as TooltipTrigger,\n openDelay: 0,\n closeDelay: 0,\n },\n props\n );\n const [local] = splitProps(merged, [\n \"class\",\n \"children\",\n \"placement\",\n \"offset\",\n \"message\",\n \"open\",\n \"trigger\",\n \"openDelay\",\n \"closeDelay\",\n \"ref\",\n ]);\n\n const [hoverOpen, setHoverOpen] = createSignal(false);\n const [clickOpen, setClickOpen] = createSignal(false);\n let openTimer: ReturnType<typeof setTimeout> | null = null;\n let closeTimer: ReturnType<typeof setTimeout> | null = null;\n // The pointer over the target and keyboard focus in it each keep a hover tooltip shown.\n let pointerInside = false;\n let focusInside = false;\n\n const clearTimers = (): void => {\n if (openTimer !== null) {\n clearTimeout(openTimer);\n openTimer = null;\n }\n if (closeTimer !== null) {\n clearTimeout(closeTimer);\n closeTimer = null;\n }\n };\n onCleanup(clearTimers);\n\n const scheduleOpen = (): void => {\n clearTimers();\n if (local.openDelay <= 0) {\n setHoverOpen(true);\n return;\n }\n openTimer = setTimeout(() => setHoverOpen(true), local.openDelay);\n };\n const scheduleClose = (): void => {\n clearTimers();\n if (local.closeDelay <= 0) {\n setHoverOpen(false);\n return;\n }\n closeTimer = setTimeout(() => setHoverOpen(false), local.closeDelay);\n };\n\n // Escape hides a tooltip shown on hover or focus wherever focus is (WCAG 1.4.13), and the\n // window, panel, Modal or Sheet around it stays open until the next press. Focus left in\n // the target no longer keeps it: the pointer alone shows and hides it until focus moves.\n createDismissOnEscape(\n () => local.trigger === \"hover\" && hoverOpen(),\n () => {\n clearTimers();\n focusInside = false;\n setHoverOpen(false);\n }\n );\n // A click tooltip hides on Escape the same way.\n createDismissOnEscape(\n () => local.trigger === \"click\" && clickOpen(),\n () => setClickOpen(false)\n );\n\n const resolved = () => resolvePlacement(local.placement);\n const floating = createFloating({\n placement: () => resolved().placement,\n middleware: () => [\n offsetMiddleware({ mainAxis: local.offset?.offsetY ?? 0, crossAxis: local.offset?.offsetX ?? 0 }),\n // A fixed placement turns to the other side, and slides along it, when the\n // viewport has no room for it.\n ...(resolved().autoMiddleware ? [resolved().autoMiddleware] : [flip(), shift({ padding: 8 })]),\n ],\n });\n\n const isVisible = (): boolean =>\n local.trigger === \"manual\" ? local.open === true : local.trigger === \"click\" ? clickOpen() : hoverOpen();\n\n // The tip mounts in the browser, after hydration, as in React: its place is\n // measured there, and a tip drawn by the server would cover its trigger.\n const [mounted, setMounted] = createSignal(false);\n onMount(() => setMounted(true));\n\n // Solid binds event handlers once, so they are always attached and check\n // `trigger` themselves: it can change after the tooltip renders.\n const onPointerEnter = (): void => {\n pointerInside = true;\n if (local.trigger === \"hover\") scheduleOpen();\n };\n const onPointerLeave = (): void => {\n pointerInside = false;\n if (local.trigger === \"hover\" && !focusInside) scheduleClose();\n };\n // focusin/focusout, as Solid's onFocus/onBlur don't bubble from the controls inside. Focus\n // without a focus ring doesn't count: the focus a mouse press gives a button would keep the\n // tooltip shown after the pointer leaves.\n const onFocusIn: JSX.EventHandler<HTMLDivElement, FocusEvent> = (event) => {\n // Focus in a portal the target renders (a menu, a picker panel) reaches here through the\n // portal's host, but it is not in the target.\n if (!event.currentTarget.contains(event.target)) return;\n focusInside = hasFocusRing(event.target);\n if (local.trigger === \"hover\" && focusInside) scheduleOpen();\n };\n const onFocusOut: JSX.EventHandler<HTMLDivElement, FocusEvent> = (event) => {\n // Focus moving to another control in the target keeps the tooltip.\n if (event.relatedTarget instanceof Node && event.currentTarget.contains(event.relatedTarget)) return;\n focusInside = false;\n if (local.trigger === \"hover\" && !pointerInside) scheduleClose();\n };\n const onClick = (): void => {\n if (local.trigger === \"click\") setClickOpen((prev) => !prev);\n };\n\n return (\n <div class=\"smwb-tooltip__wrapper\" role=\"tooltip\" ref={mergeRefs(local.ref)}>\n <div\n class=\"smwb-tooltip__ref\"\n ref={floating.setReference}\n onPointerEnter={onPointerEnter}\n onPointerLeave={onPointerLeave}\n onFocusIn={onFocusIn}\n onFocusOut={onFocusOut}\n onClick={onClick}\n >\n {local.children}\n </div>\n <Show when={mounted() && isVisible()}>\n <div ref={floating.setFloating} class={cn(\"smwb-tooltip\", local.class)} style={floating.floatingStyles()}>\n {local.message}\n </div>\n </Show>\n </div>\n );\n}\n\nexport default Tooltip;\n"],"names":["hasFocusRing","element","matches","Tooltip","props","merged","mergeProps","placement","offset","offsetX","offsetY","trigger","openDelay","closeDelay","local","splitProps","hoverOpen","setHoverOpen","createSignal","clickOpen","setClickOpen","openTimer","closeTimer","pointerInside","focusInside","clearTimers","clearTimeout","onCleanup","scheduleOpen","setTimeout","scheduleClose","createDismissOnEscape","resolved","resolvePlacement","floating","createFloating","middleware","offsetMiddleware","mainAxis","crossAxis","autoMiddleware","flip","shift","padding","isVisible","open","mounted","setMounted","onMount","onPointerEnter","onPointerLeave","onFocusIn","event","currentTarget","contains","target","onFocusOut","relatedTarget","Node","onClick","prev","_el$","_tmpl$2","_el$2","firstChild","_ref$","mergeRefs","ref","_$use","$$click","$$focusout","$$focusin","addEventListener","_ref$2","setReference","_$insert","children","_$createComponent","Show","when","_$memo","_el$3","_tmpl$","_ref$3","setFloating","message","_$effect","_p$","_v$","cn","class","_v$2","floatingStyles","e","_$className","t","_$style","undefined","_$delegateEvents"],"mappings":"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"}
|