@cascivo/react 0.18.0 → 1.1.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 +9 -7
- package/dist/accordion/accordion.js +1 -114
- package/dist/accordion/accordion.module.js +1 -10
- package/dist/action-sheet/action-sheet.css +1 -1
- package/dist/action-sheet/action-sheet.js +1 -91
- package/dist/action-sheet/action-sheet.module.js +1 -12
- package/dist/alert/alert.js +1 -55
- package/dist/alert/alert.module.js +1 -11
- package/dist/alert-dialog/alert-dialog.css +1 -1
- package/dist/alert-dialog/alert-dialog.js +1 -66
- package/dist/alert-dialog/alert-dialog.module.js +1 -11
- package/dist/app-shell/app-shell.css +1 -1
- package/dist/app-shell/app-shell.js +1 -85
- package/dist/app-shell/app-shell.module.js +1 -12
- package/dist/aspect-ratio/aspect-ratio.js +1 -20
- package/dist/aspect-ratio/aspect-ratio.module.js +1 -6
- package/dist/avatar/avatar.js +1 -57
- package/dist/avatar/avatar.module.js +1 -8
- package/dist/avatar-group/avatar-group.js +1 -24
- package/dist/avatar-group/avatar-group.module.js +1 -6
- package/dist/badge/badge.js +1 -22
- package/dist/badge/badge.module.js +1 -3
- package/dist/blockquote/blockquote.js +1 -16
- package/dist/blockquote/blockquote.module.js +1 -6
- package/dist/bottom-sheet/bottom-sheet.js +1 -111
- package/dist/bottom-sheet/bottom-sheet.module.js +1 -14
- package/dist/brand/logo/logo.css +1 -0
- package/dist/brand/logo/logo.js +1 -0
- package/dist/brand/logo/logo.module.js +2 -0
- package/dist/breadcrumb/breadcrumb.js +1 -28
- package/dist/breadcrumb/breadcrumb.module.js +1 -3
- package/dist/button/button.css +1 -1
- package/dist/button/button.js +1 -35
- package/dist/button/button.module.js +1 -6
- package/dist/button-group/button-group.js +1 -39
- package/dist/button-group/button-group.module.js +1 -3
- package/dist/calendar/calendar-date.js +1 -0
- package/dist/calendar/calendar.css +1 -1
- package/dist/calendar/calendar.js +1 -199
- package/dist/calendar/calendar.module.js +1 -14
- package/dist/card/card.js +1 -53
- package/dist/card/card.module.js +1 -12
- package/dist/carousel/carousel.css +1 -1
- package/dist/carousel/carousel.js +1 -138
- package/dist/carousel/carousel.module.js +1 -13
- package/dist/chat-bubble/chat-bubble.js +1 -31
- package/dist/chat-bubble/chat-bubble.module.js +1 -11
- package/dist/checkbox/checkbox.js +1 -38
- package/dist/checkbox/checkbox.module.js +1 -8
- package/dist/checkbox-card/checkbox-card.css +1 -1
- package/dist/checkbox-card/checkbox-card.js +1 -50
- package/dist/checkbox-card/checkbox-card.module.js +1 -11
- package/dist/code/code.js +1 -14
- package/dist/code/code.module.js +1 -3
- package/dist/code-snippet/code-snippet.js +2 -121
- package/dist/code-snippet/code-snippet.module.js +1 -17
- package/dist/code-snippet/highlight.js +1 -67
- package/dist/collapsible/collapsible.js +1 -47
- package/dist/collapsible/collapsible.module.js +1 -7
- package/dist/color-picker/color-picker.css +1 -1
- package/dist/color-picker/color-picker.js +1 -268
- package/dist/color-picker/color-picker.module.js +1 -18
- package/dist/color-picker/color.js +1 -0
- package/dist/combobox/combobox.css +1 -1
- package/dist/combobox/combobox.js +1 -165
- package/dist/combobox/combobox.module.js +1 -19
- package/dist/combobox/list-nav.js +1 -0
- package/dist/combobox/option-list.js +1 -0
- package/dist/command-menu/command-menu.js +1 -421
- package/dist/command-menu/command-menu.module.js +1 -34
- package/dist/comparison/comparison.js +1 -69
- package/dist/comparison/comparison.module.js +1 -9
- package/dist/contained-list/contained-list.js +1 -41
- package/dist/contained-list/contained-list.module.js +1 -11
- package/dist/context-menu/context-menu.js +1 -93
- package/dist/context-menu/context-menu.module.js +1 -7
- package/dist/copy-button/copy-button.js +1 -60
- package/dist/copy-button/copy-button.module.js +1 -6
- package/dist/data-list/data-list.js +1 -25
- package/dist/data-list/data-list.module.js +1 -8
- package/dist/data-table/column-filter.js +1 -0
- package/dist/data-table/column-layout.js +1 -0
- package/dist/data-table/data-table.css +1 -1
- package/dist/data-table/data-table.js +1 -371
- package/dist/data-table/data-table.module.js +1 -33
- package/dist/data-table/grid-keys.js +1 -0
- package/dist/data-table/row-group.js +1 -0
- package/dist/data-table/row-search.js +1 -0
- package/dist/data-table/row-sort.js +1 -0
- package/dist/data-table/to-csv.js +3 -0
- package/dist/data-table/virtual-window.js +1 -0
- package/dist/date-picker/date-picker.css +1 -1
- package/dist/date-picker/date-picker.js +1 -219
- package/dist/date-picker/date-picker.module.js +1 -23
- package/dist/date-picker/parse-date.js +1 -0
- package/dist/date-range-picker/date-range-picker.js +1 -196
- package/dist/date-range-picker/date-range-picker.module.js +1 -18
- package/dist/dock/dock.css +1 -1
- package/dist/dock/dock.js +1 -34
- package/dist/dock/dock.module.js +1 -8
- package/dist/drawer/drawer.js +1 -96
- package/dist/drawer/drawer.module.js +1 -13
- package/dist/dropdown/dropdown.css +1 -1
- package/dist/dropdown/dropdown.js +1 -107
- package/dist/dropdown/dropdown.module.js +1 -9
- package/dist/editable/editable.js +1 -67
- package/dist/editable/editable.module.js +1 -11
- package/dist/empty-state/empty-state.js +1 -32
- package/dist/empty-state/empty-state.module.js +1 -9
- package/dist/fab/fab.css +1 -1
- package/dist/fab/fab.js +1 -93
- package/dist/fab/fab.module.js +1 -12
- package/dist/field/field.css +1 -1
- package/dist/field/field.js +1 -46
- package/dist/field/field.module.js +1 -7
- package/dist/file-uploader/file-uploader.css +1 -1
- package/dist/file-uploader/file-uploader.js +1 -122
- package/dist/file-uploader/file-uploader.module.js +1 -18
- package/dist/filter/filter.css +1 -1
- package/dist/filter/filter.js +1 -35
- package/dist/filter/filter.module.js +1 -6
- package/dist/form/form.js +1 -95
- package/dist/form/form.module.js +1 -3
- package/dist/header/header.js +1 -44
- package/dist/header/header.module.js +1 -11
- package/dist/header-panel/header-panel.js +1 -72
- package/dist/header-panel/header-panel.module.js +1 -9
- package/dist/heading/heading.css +1 -1
- package/dist/heading/heading.js +1 -22
- package/dist/heading/heading.module.js +1 -3
- package/dist/hover-card/hover-card.css +1 -1
- package/dist/hover-card/hover-card.js +1 -84
- package/dist/hover-card/hover-card.module.js +1 -6
- package/dist/icon-button/icon-button.js +1 -19
- package/dist/icon-button/icon-button.module.js +1 -3
- package/dist/image/image.css +1 -1
- package/dist/image/image.js +1 -64
- package/dist/image/image.module.js +1 -9
- package/dist/index.d.ts +2084 -120
- package/dist/indicator/indicator.js +1 -16
- package/dist/indicator/indicator.module.js +1 -6
- package/dist/infinite-scroll/infinite-scroll.js +1 -49
- package/dist/infinite-scroll/infinite-scroll.module.js +1 -7
- package/dist/inline-loading/inline-loading.js +1 -74
- package/dist/inline-loading/inline-loading.module.js +1 -9
- package/dist/input/input.css +1 -1
- package/dist/input/input.js +1 -55
- package/dist/input/input.module.js +1 -9
- package/dist/input-group/input-group.css +1 -1
- package/dist/input-group/input-group.js +1 -39
- package/dist/input-group/input-group.module.js +1 -9
- package/dist/item/item.js +1 -50
- package/dist/item/item.module.js +1 -10
- package/dist/join/join.js +1 -12
- package/dist/join/join.module.js +1 -3
- package/dist/kbd/kbd.js +1 -14
- package/dist/kbd/kbd.module.js +1 -3
- package/dist/label/label.js +1 -23
- package/dist/label/label.module.js +1 -7
- package/dist/large-title-header/large-title-header.js +1 -38
- package/dist/large-title-header/large-title-header.module.js +1 -12
- package/dist/layouts/src/auto-grid/auto-grid.js +1 -17
- package/dist/layouts/src/auto-grid/auto-grid.module.js +1 -4
- package/dist/layouts/src/center/center.js +1 -16
- package/dist/layouts/src/center/center.module.js +1 -3
- package/dist/layouts/src/columns/columns.js +1 -21
- package/dist/layouts/src/columns/columns.module.js +1 -6
- package/dist/layouts/src/flex/flex.js +1 -20
- package/dist/layouts/src/flex/flex.module.js +1 -3
- package/dist/layouts/src/grid/grid.css +1 -1
- package/dist/layouts/src/grid/grid.js +1 -55
- package/dist/layouts/src/grid/grid.module.js +1 -7
- package/dist/layouts/src/page-header/page-header.js +1 -31
- package/dist/layouts/src/page-header/page-header.module.js +1 -10
- package/dist/layouts/src/spacer/spacer.js +1 -17
- package/dist/layouts/src/spacer/spacer.module.js +1 -3
- package/dist/link/link.css +1 -1
- package/dist/link/link.js +1 -22
- package/dist/link/link.module.js +1 -3
- package/dist/list/list.js +1 -21
- package/dist/list/list.module.js +1 -6
- package/dist/log-viewer/log-viewer.css +1 -1
- package/dist/log-viewer/log-viewer.js +2 -184
- package/dist/log-viewer/log-viewer.module.js +1 -16
- package/dist/menu/menu.js +1 -126
- package/dist/menu/menu.module.js +1 -8
- package/dist/menu-button/menu-button.js +1 -92
- package/dist/menu-button/menu-button.module.js +1 -8
- package/dist/menubar/menubar.js +1 -103
- package/dist/menubar/menubar.module.js +1 -8
- package/dist/modal/modal.css +1 -1
- package/dist/modal/modal.js +1 -76
- package/dist/modal/modal.module.js +1 -12
- package/dist/multi-select/list-nav.js +1 -0
- package/dist/multi-select/multi-select.css +1 -1
- package/dist/multi-select/multi-select.js +1 -106
- package/dist/multi-select/multi-select.module.js +1 -15
- package/dist/multi-select/option-list.js +1 -0
- package/dist/native-select/native-select.css +1 -1
- package/dist/native-select/native-select.js +1 -37
- package/dist/native-select/native-select.module.js +1 -7
- package/dist/navigation-menu/navigation-menu.js +1 -99
- package/dist/navigation-menu/navigation-menu.module.js +1 -10
- package/dist/node/accordion/accordion.js +1 -114
- package/dist/node/accordion/accordion.module.js +1 -10
- package/dist/node/action-sheet/action-sheet.js +1 -91
- package/dist/node/action-sheet/action-sheet.module.js +1 -12
- package/dist/node/alert/alert.js +1 -55
- package/dist/node/alert/alert.module.js +1 -11
- package/dist/node/alert-dialog/alert-dialog.js +1 -66
- package/dist/node/alert-dialog/alert-dialog.module.js +1 -11
- package/dist/node/app-shell/app-shell.js +1 -85
- package/dist/node/app-shell/app-shell.module.js +1 -12
- package/dist/node/aspect-ratio/aspect-ratio.js +1 -20
- package/dist/node/aspect-ratio/aspect-ratio.module.js +1 -6
- package/dist/node/avatar/avatar.js +1 -57
- package/dist/node/avatar/avatar.module.js +1 -8
- package/dist/node/avatar-group/avatar-group.js +1 -24
- package/dist/node/avatar-group/avatar-group.module.js +1 -6
- package/dist/node/badge/badge.js +1 -22
- package/dist/node/badge/badge.module.js +1 -3
- package/dist/node/blockquote/blockquote.js +1 -16
- package/dist/node/blockquote/blockquote.module.js +1 -6
- package/dist/node/bottom-sheet/bottom-sheet.js +1 -111
- package/dist/node/bottom-sheet/bottom-sheet.module.js +1 -14
- package/dist/node/brand/logo/logo.js +1 -0
- package/dist/node/brand/logo/logo.module.js +1 -0
- package/dist/node/breadcrumb/breadcrumb.js +1 -28
- package/dist/node/breadcrumb/breadcrumb.module.js +1 -3
- package/dist/node/button/button.js +1 -35
- package/dist/node/button/button.module.js +1 -6
- package/dist/node/button-group/button-group.js +1 -39
- package/dist/node/button-group/button-group.module.js +1 -3
- package/dist/node/calendar/calendar-date.js +1 -0
- package/dist/node/calendar/calendar.js +1 -199
- package/dist/node/calendar/calendar.module.js +1 -14
- package/dist/node/card/card.js +1 -53
- package/dist/node/card/card.module.js +1 -12
- package/dist/node/carousel/carousel.js +1 -138
- package/dist/node/carousel/carousel.module.js +1 -13
- package/dist/node/chat-bubble/chat-bubble.js +1 -31
- package/dist/node/chat-bubble/chat-bubble.module.js +1 -11
- package/dist/node/checkbox/checkbox.js +1 -38
- package/dist/node/checkbox/checkbox.module.js +1 -8
- package/dist/node/checkbox-card/checkbox-card.js +1 -50
- package/dist/node/checkbox-card/checkbox-card.module.js +1 -11
- package/dist/node/code/code.js +1 -14
- package/dist/node/code/code.module.js +1 -3
- package/dist/node/code-snippet/code-snippet.js +2 -121
- package/dist/node/code-snippet/code-snippet.module.js +1 -17
- package/dist/node/code-snippet/highlight.js +1 -67
- package/dist/node/collapsible/collapsible.js +1 -47
- package/dist/node/collapsible/collapsible.module.js +1 -7
- package/dist/node/color-picker/color-picker.js +1 -268
- package/dist/node/color-picker/color-picker.module.js +1 -18
- package/dist/node/color-picker/color.js +1 -0
- package/dist/node/combobox/combobox.js +1 -165
- package/dist/node/combobox/combobox.module.js +1 -19
- package/dist/node/combobox/list-nav.js +1 -0
- package/dist/node/combobox/option-list.js +1 -0
- package/dist/node/command-menu/command-menu.js +1 -421
- package/dist/node/command-menu/command-menu.module.js +1 -34
- package/dist/node/comparison/comparison.js +1 -69
- package/dist/node/comparison/comparison.module.js +1 -9
- package/dist/node/contained-list/contained-list.js +1 -41
- package/dist/node/contained-list/contained-list.module.js +1 -11
- package/dist/node/context-menu/context-menu.js +1 -93
- package/dist/node/context-menu/context-menu.module.js +1 -7
- package/dist/node/copy-button/copy-button.js +1 -60
- package/dist/node/copy-button/copy-button.module.js +1 -6
- package/dist/node/data-list/data-list.js +1 -25
- package/dist/node/data-list/data-list.module.js +1 -8
- package/dist/node/data-table/column-filter.js +1 -0
- package/dist/node/data-table/column-layout.js +1 -0
- package/dist/node/data-table/data-table.js +1 -371
- package/dist/node/data-table/data-table.module.js +1 -33
- package/dist/node/data-table/grid-keys.js +1 -0
- package/dist/node/data-table/row-group.js +1 -0
- package/dist/node/data-table/row-search.js +1 -0
- package/dist/node/data-table/row-sort.js +1 -0
- package/dist/node/data-table/to-csv.js +3 -0
- package/dist/node/data-table/virtual-window.js +1 -0
- package/dist/node/date-picker/date-picker.js +1 -219
- package/dist/node/date-picker/date-picker.module.js +1 -23
- package/dist/node/date-picker/parse-date.js +1 -0
- package/dist/node/date-range-picker/date-range-picker.js +1 -196
- package/dist/node/date-range-picker/date-range-picker.module.js +1 -18
- package/dist/node/dock/dock.js +1 -34
- package/dist/node/dock/dock.module.js +1 -8
- package/dist/node/drawer/drawer.js +1 -96
- package/dist/node/drawer/drawer.module.js +1 -13
- package/dist/node/dropdown/dropdown.js +1 -107
- package/dist/node/dropdown/dropdown.module.js +1 -9
- package/dist/node/editable/editable.js +1 -67
- package/dist/node/editable/editable.module.js +1 -11
- package/dist/node/empty-state/empty-state.js +1 -32
- package/dist/node/empty-state/empty-state.module.js +1 -9
- package/dist/node/fab/fab.js +1 -93
- package/dist/node/fab/fab.module.js +1 -12
- package/dist/node/field/field.js +1 -46
- package/dist/node/field/field.module.js +1 -7
- package/dist/node/file-uploader/file-uploader.js +1 -122
- package/dist/node/file-uploader/file-uploader.module.js +1 -18
- package/dist/node/filter/filter.js +1 -35
- package/dist/node/filter/filter.module.js +1 -6
- package/dist/node/form/form.js +1 -95
- package/dist/node/form/form.module.js +1 -3
- package/dist/node/header/header.js +1 -44
- package/dist/node/header/header.module.js +1 -11
- package/dist/node/header-panel/header-panel.js +1 -72
- package/dist/node/header-panel/header-panel.module.js +1 -9
- package/dist/node/heading/heading.js +1 -22
- package/dist/node/heading/heading.module.js +1 -3
- package/dist/node/hover-card/hover-card.js +1 -84
- package/dist/node/hover-card/hover-card.module.js +1 -6
- package/dist/node/icon-button/icon-button.js +1 -19
- package/dist/node/icon-button/icon-button.module.js +1 -3
- package/dist/node/image/image.js +1 -64
- package/dist/node/image/image.module.js +1 -9
- package/dist/node/indicator/indicator.js +1 -16
- package/dist/node/indicator/indicator.module.js +1 -6
- package/dist/node/infinite-scroll/infinite-scroll.js +1 -49
- package/dist/node/infinite-scroll/infinite-scroll.module.js +1 -7
- package/dist/node/inline-loading/inline-loading.js +1 -74
- package/dist/node/inline-loading/inline-loading.module.js +1 -9
- package/dist/node/input/input.js +1 -55
- package/dist/node/input/input.module.js +1 -9
- package/dist/node/input-group/input-group.js +1 -39
- package/dist/node/input-group/input-group.module.js +1 -9
- package/dist/node/item/item.js +1 -50
- package/dist/node/item/item.module.js +1 -10
- package/dist/node/join/join.js +1 -12
- package/dist/node/join/join.module.js +1 -3
- package/dist/node/kbd/kbd.js +1 -14
- package/dist/node/kbd/kbd.module.js +1 -3
- package/dist/node/label/label.js +1 -23
- package/dist/node/label/label.module.js +1 -7
- package/dist/node/large-title-header/large-title-header.js +1 -38
- package/dist/node/large-title-header/large-title-header.module.js +1 -12
- package/dist/node/layouts/src/auto-grid/auto-grid.js +1 -17
- package/dist/node/layouts/src/auto-grid/auto-grid.module.js +1 -4
- package/dist/node/layouts/src/center/center.js +1 -16
- package/dist/node/layouts/src/center/center.module.js +1 -3
- package/dist/node/layouts/src/columns/columns.js +1 -21
- package/dist/node/layouts/src/columns/columns.module.js +1 -6
- package/dist/node/layouts/src/flex/flex.js +1 -20
- package/dist/node/layouts/src/flex/flex.module.js +1 -3
- package/dist/node/layouts/src/grid/grid.js +1 -55
- package/dist/node/layouts/src/grid/grid.module.js +1 -7
- package/dist/node/layouts/src/page-header/page-header.js +1 -31
- package/dist/node/layouts/src/page-header/page-header.module.js +1 -10
- package/dist/node/layouts/src/spacer/spacer.js +1 -17
- package/dist/node/layouts/src/spacer/spacer.module.js +1 -3
- package/dist/node/link/link.js +1 -22
- package/dist/node/link/link.module.js +1 -3
- package/dist/node/list/list.js +1 -21
- package/dist/node/list/list.module.js +1 -6
- package/dist/node/log-viewer/log-viewer.js +2 -184
- package/dist/node/log-viewer/log-viewer.module.js +1 -16
- package/dist/node/menu/menu.js +1 -126
- package/dist/node/menu/menu.module.js +1 -8
- package/dist/node/menu-button/menu-button.js +1 -92
- package/dist/node/menu-button/menu-button.module.js +1 -8
- package/dist/node/menubar/menubar.js +1 -103
- package/dist/node/menubar/menubar.module.js +1 -8
- package/dist/node/modal/modal.js +1 -76
- package/dist/node/modal/modal.module.js +1 -12
- package/dist/node/multi-select/list-nav.js +1 -0
- package/dist/node/multi-select/multi-select.js +1 -106
- package/dist/node/multi-select/multi-select.module.js +1 -15
- package/dist/node/multi-select/option-list.js +1 -0
- package/dist/node/native-select/native-select.js +1 -37
- package/dist/node/native-select/native-select.module.js +1 -7
- package/dist/node/navigation-menu/navigation-menu.js +1 -99
- package/dist/node/navigation-menu/navigation-menu.module.js +1 -10
- package/dist/node/notification/notification.js +1 -140
- package/dist/node/notification/notification.module.js +1 -11
- package/dist/node/number-input/number-input.js +1 -147
- package/dist/node/number-input/number-input.module.js +1 -12
- package/dist/node/otp-input/otp-input.js +1 -70
- package/dist/node/otp-input/otp-input.module.js +1 -6
- package/dist/node/overflow-menu/overflow-menu.js +1 -70
- package/dist/node/overflow-menu/overflow-menu.module.js +1 -7
- package/dist/node/pagination/pagination.js +1 -92
- package/dist/node/pagination/pagination.module.js +1 -11
- package/dist/node/password-input/password-input.js +1 -81
- package/dist/node/password-input/password-input.module.js +1 -11
- package/dist/node/popover/popover.js +1 -51
- package/dist/node/popover/popover.module.js +1 -6
- package/dist/node/popover/use-popover.js +1 -55
- package/dist/node/progress/progress.js +1 -16
- package/dist/node/progress/progress.module.js +1 -6
- package/dist/node/progress-bar/progress-bar.js +1 -42
- package/dist/node/progress-bar/progress-bar.module.js +1 -11
- package/dist/node/progress-circle/progress-circle.js +1 -46
- package/dist/node/progress-circle/progress-circle.module.js +1 -9
- package/dist/node/progress-indicator/progress-indicator.js +1 -34
- package/dist/node/progress-indicator/progress-indicator.module.js +1 -10
- package/dist/node/prose/prose.js +1 -13
- package/dist/node/prose/prose.module.js +1 -3
- package/dist/node/pull-to-refresh/pull-to-refresh.js +1 -82
- package/dist/node/pull-to-refresh/pull-to-refresh.module.js +1 -9
- package/dist/node/qr-code/encode.js +1 -583
- package/dist/node/qr-code/qr-code.js +1 -41
- package/dist/node/qr-code/qr-code.module.js +1 -6
- package/dist/node/radial-progress/radial-progress.js +1 -27
- package/dist/node/radial-progress/radial-progress.module.js +1 -6
- package/dist/node/radio/radio.js +1 -48
- package/dist/node/radio/radio.module.js +1 -9
- package/dist/node/radio-card/radio-card.js +1 -64
- package/dist/node/radio-card/radio-card.module.js +1 -11
- package/dist/node/rating-group/rating-group.js +1 -37
- package/dist/node/rating-group/rating-group.module.js +1 -6
- package/dist/node/react/src/index.js +1 -141
- package/dist/node/relative-time/relative-time.js +1 -66
- package/dist/node/relative-time/relative-time.module.js +1 -3
- package/dist/node/reorder-list/reorder-list.js +1 -143
- package/dist/node/reorder-list/reorder-list.module.js +1 -11
- package/dist/node/resizable/resizable.js +1 -80
- package/dist/node/resizable/resizable.module.js +1 -8
- package/dist/node/scroll-area/scroll-area.js +1 -38
- package/dist/node/scroll-area/scroll-area.module.js +1 -3
- package/dist/node/search/search.js +1 -92
- package/dist/node/search/search.module.js +1 -9
- package/dist/node/segmented-control/segmented-control.js +1 -43
- package/dist/node/segmented-control/segmented-control.module.js +1 -6
- package/dist/node/select/select.js +1 -72
- package/dist/node/select/select.module.js +1 -11
- package/dist/node/separator/separator.js +1 -19
- package/dist/node/separator/separator.module.js +1 -3
- package/dist/node/sheet/sheet.js +1 -49
- package/dist/node/sheet/sheet.module.js +1 -9
- package/dist/node/shell-header/shell-header.js +1 -169
- package/dist/node/shell-header/shell-header.module.js +1 -24
- package/dist/node/side-nav/side-nav.js +1 -334
- package/dist/node/side-nav/side-nav.module.js +1 -31
- package/dist/node/skeleton/skeleton.js +1 -23
- package/dist/node/skeleton/skeleton.module.js +1 -7
- package/dist/node/skip-nav/skip-nav.js +1 -28
- package/dist/node/skip-nav/skip-nav.module.js +1 -3
- package/dist/node/slider/slider.js +1 -29
- package/dist/node/slider/slider.module.js +1 -7
- package/dist/node/spinner/spinner.js +1 -18
- package/dist/node/spinner/spinner.module.js +1 -6
- package/dist/node/stack/stack.js +1 -17
- package/dist/node/stack/stack.module.js +1 -6
- package/dist/node/stat/stat.js +1 -41
- package/dist/node/stat/stat.module.js +1 -11
- package/dist/node/status/status.js +1 -25
- package/dist/node/status/status.module.js +1 -7
- package/dist/node/steps/steps.js +1 -35
- package/dist/node/steps/steps.module.js +1 -8
- package/dist/node/structured-list/structured-list.js +1 -102
- package/dist/node/structured-list/structured-list.module.js +1 -12
- package/dist/node/swap/swap.js +1 -36
- package/dist/node/swap/swap.module.js +1 -7
- package/dist/node/swipe-item/swipe-item.js +1 -62
- package/dist/node/swipe-item/swipe-item.module.js +1 -12
- package/dist/node/switcher/switcher.js +1 -32
- package/dist/node/switcher/switcher.module.js +1 -8
- package/dist/node/tabs/tabs.js +1 -98
- package/dist/node/tabs/tabs.module.js +1 -8
- package/dist/node/tag/tag.js +1 -33
- package/dist/node/tag/tag.module.js +1 -6
- package/dist/node/tags-input/tags-input.js +1 -64
- package/dist/node/tags-input/tags-input.module.js +1 -8
- package/dist/node/text/text.js +1 -16
- package/dist/node/text/text.module.js +1 -3
- package/dist/node/textarea/textarea.js +1 -57
- package/dist/node/textarea/textarea.module.js +1 -9
- package/dist/node/tile/tile.js +1 -39
- package/dist/node/tile/tile.module.js +1 -7
- package/dist/node/time-picker/time-picker.js +1 -63
- package/dist/node/time-picker/time-picker.module.js +1 -9
- package/dist/node/timeline/timeline.js +1 -55
- package/dist/node/timeline/timeline.module.js +1 -11
- package/dist/node/toast/toast.js +1 -85
- package/dist/node/toast/toast.module.js +1 -11
- package/dist/node/toc/toc.js +1 -43
- package/dist/node/toc/toc.module.js +1 -3
- package/dist/node/toc/use-toc-from-region.js +1 -18
- package/dist/node/toggle/toggle.js +1 -41
- package/dist/node/toggle/toggle.module.js +1 -8
- package/dist/node/toggle-group/toggle-group.js +1 -55
- package/dist/node/toggle-group/toggle-group.module.js +1 -6
- package/dist/node/toggletip/toggletip.js +1 -49
- package/dist/node/toggletip/toggletip.module.js +1 -7
- package/dist/node/tooltip/tooltip.js +1 -58
- package/dist/node/tooltip/tooltip.module.js +1 -6
- package/dist/node/tree-view/tree-view.js +1 -201
- package/dist/node/tree-view/tree-view.module.js +1 -13
- package/dist/node/user/user.js +1 -35
- package/dist/node/user/user.module.js +1 -9
- package/dist/node/virtual-list/virtual-list.js +1 -40
- package/dist/node/virtual-list/virtual-list.module.js +1 -7
- package/dist/node/visually-hidden/visually-hidden.js +1 -2
- package/dist/node/wheel-picker/wheel-picker.js +1 -84
- package/dist/node/wheel-picker/wheel-picker.module.js +1 -8
- package/dist/notification/notification.js +1 -140
- package/dist/notification/notification.module.js +1 -11
- package/dist/number-input/number-input.js +1 -147
- package/dist/number-input/number-input.module.js +1 -12
- package/dist/otp-input/otp-input.js +1 -70
- package/dist/otp-input/otp-input.module.js +1 -6
- package/dist/overflow-menu/overflow-menu.js +1 -70
- package/dist/overflow-menu/overflow-menu.module.js +1 -7
- package/dist/pagination/pagination.js +1 -92
- package/dist/pagination/pagination.module.js +1 -11
- package/dist/password-input/password-input.js +1 -81
- package/dist/password-input/password-input.module.js +1 -11
- package/dist/popover/popover.js +1 -51
- package/dist/popover/popover.module.js +1 -6
- package/dist/popover/use-popover.js +1 -55
- package/dist/progress/progress.css +1 -1
- package/dist/progress/progress.js +1 -16
- package/dist/progress/progress.module.js +1 -6
- package/dist/progress-bar/progress-bar.css +1 -1
- package/dist/progress-bar/progress-bar.js +1 -42
- package/dist/progress-bar/progress-bar.module.js +1 -11
- package/dist/progress-circle/progress-circle.js +1 -46
- package/dist/progress-circle/progress-circle.module.js +1 -9
- package/dist/progress-indicator/progress-indicator.css +1 -1
- package/dist/progress-indicator/progress-indicator.js +1 -34
- package/dist/progress-indicator/progress-indicator.module.js +1 -10
- package/dist/prose/prose.css +1 -1
- package/dist/prose/prose.js +1 -13
- package/dist/prose/prose.module.js +1 -3
- package/dist/pull-to-refresh/pull-to-refresh.js +1 -82
- package/dist/pull-to-refresh/pull-to-refresh.module.js +1 -9
- package/dist/qr-code/encode.js +1 -583
- package/dist/qr-code/qr-code.js +1 -41
- package/dist/qr-code/qr-code.module.js +1 -6
- package/dist/radial-progress/radial-progress.js +1 -27
- package/dist/radial-progress/radial-progress.module.js +1 -6
- package/dist/radio/radio.js +1 -48
- package/dist/radio/radio.module.js +1 -9
- package/dist/radio-card/radio-card.css +1 -1
- package/dist/radio-card/radio-card.js +1 -64
- package/dist/radio-card/radio-card.module.js +1 -11
- package/dist/rating-group/rating-group.js +1 -37
- package/dist/rating-group/rating-group.module.js +1 -6
- package/dist/react/src/index.js +1 -141
- package/dist/relative-time/relative-time.js +1 -66
- package/dist/relative-time/relative-time.module.js +1 -3
- package/dist/reorder-list/reorder-list.css +1 -1
- package/dist/reorder-list/reorder-list.js +1 -143
- package/dist/reorder-list/reorder-list.module.js +1 -11
- package/dist/resizable/resizable.js +1 -80
- package/dist/resizable/resizable.module.js +1 -8
- package/dist/scroll-area/scroll-area.css +1 -1
- package/dist/scroll-area/scroll-area.js +1 -38
- package/dist/scroll-area/scroll-area.module.js +1 -3
- package/dist/search/search.js +1 -92
- package/dist/search/search.module.js +1 -9
- package/dist/segmented-control/segmented-control.js +1 -43
- package/dist/segmented-control/segmented-control.module.js +1 -6
- package/dist/select/select.js +1 -72
- package/dist/select/select.module.js +1 -11
- package/dist/separator/separator.js +1 -19
- package/dist/separator/separator.module.js +1 -3
- package/dist/sheet/sheet.js +1 -49
- package/dist/sheet/sheet.module.js +1 -9
- package/dist/shell-header/shell-header.css +1 -1
- package/dist/shell-header/shell-header.js +1 -169
- package/dist/shell-header/shell-header.module.js +1 -24
- package/dist/side-nav/side-nav.css +1 -1
- package/dist/side-nav/side-nav.js +1 -334
- package/dist/side-nav/side-nav.module.js +1 -31
- package/dist/skeleton/skeleton.css +1 -1
- package/dist/skeleton/skeleton.js +1 -23
- package/dist/skeleton/skeleton.module.js +1 -7
- package/dist/skip-nav/skip-nav.js +1 -28
- package/dist/skip-nav/skip-nav.module.js +1 -3
- package/dist/slider/slider.js +1 -29
- package/dist/slider/slider.module.js +1 -7
- package/dist/spinner/spinner.css +1 -1
- package/dist/spinner/spinner.js +1 -18
- package/dist/spinner/spinner.module.js +1 -6
- package/dist/stack/stack.js +1 -17
- package/dist/stack/stack.module.js +1 -6
- package/dist/stat/stat.js +1 -41
- package/dist/stat/stat.module.js +1 -11
- package/dist/status/status.css +1 -1
- package/dist/status/status.js +1 -25
- package/dist/status/status.module.js +1 -7
- package/dist/steps/steps.css +1 -1
- package/dist/steps/steps.js +1 -35
- package/dist/steps/steps.module.js +1 -8
- package/dist/structured-list/structured-list.js +1 -102
- package/dist/structured-list/structured-list.module.js +1 -12
- package/dist/styles.css +395 -53
- package/dist/swap/swap.css +1 -1
- package/dist/swap/swap.js +1 -36
- package/dist/swap/swap.module.js +1 -7
- package/dist/swipe-item/swipe-item.js +1 -62
- package/dist/swipe-item/swipe-item.module.js +1 -12
- package/dist/switcher/switcher.js +1 -32
- package/dist/switcher/switcher.module.js +1 -8
- package/dist/tabs/tabs.js +1 -98
- package/dist/tabs/tabs.module.js +1 -8
- package/dist/tag/tag.js +1 -33
- package/dist/tag/tag.module.js +1 -6
- package/dist/tags-input/tags-input.js +1 -64
- package/dist/tags-input/tags-input.module.js +1 -8
- package/dist/text/text.css +1 -1
- package/dist/text/text.js +1 -16
- package/dist/text/text.module.js +1 -3
- package/dist/textarea/textarea.css +1 -1
- package/dist/textarea/textarea.js +1 -57
- package/dist/textarea/textarea.module.js +1 -9
- package/dist/tile/tile.css +1 -1
- package/dist/tile/tile.js +1 -39
- package/dist/tile/tile.module.js +1 -7
- package/dist/time-picker/time-picker.js +1 -63
- package/dist/time-picker/time-picker.module.js +1 -9
- package/dist/timeline/timeline.js +1 -55
- package/dist/timeline/timeline.module.js +1 -11
- package/dist/toast/toast.css +1 -1
- package/dist/toast/toast.js +1 -85
- package/dist/toast/toast.module.js +1 -11
- package/dist/toc/toc.css +1 -1
- package/dist/toc/toc.js +1 -43
- package/dist/toc/toc.module.js +1 -3
- package/dist/toc/use-toc-from-region.js +1 -18
- package/dist/toggle/toggle.js +1 -41
- package/dist/toggle/toggle.module.js +1 -8
- package/dist/toggle-group/toggle-group.js +1 -55
- package/dist/toggle-group/toggle-group.module.js +1 -6
- package/dist/toggletip/toggletip.js +1 -49
- package/dist/toggletip/toggletip.module.js +1 -7
- package/dist/tooltip/tooltip.css +1 -1
- package/dist/tooltip/tooltip.js +1 -58
- package/dist/tooltip/tooltip.module.js +1 -6
- package/dist/tree-view/tree-view.css +1 -1
- package/dist/tree-view/tree-view.js +1 -201
- package/dist/tree-view/tree-view.module.js +1 -13
- package/dist/user/user.js +1 -35
- package/dist/user/user.module.js +1 -9
- package/dist/virtual-list/virtual-list.js +1 -40
- package/dist/virtual-list/virtual-list.module.js +1 -7
- package/dist/visually-hidden/visually-hidden.js +1 -2
- package/dist/wheel-picker/wheel-picker.js +1 -84
- package/dist/wheel-picker/wheel-picker.module.js +1 -8
- package/package.json +4 -4
- package/readme.body.md +7 -5
|
@@ -1,201 +1 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
|
|
3
|
-
import e from "./tree-view.module.js";
|
|
4
|
-
import { useRef as t } from "react";
|
|
5
|
-
import { cn as n, useControllableSignal as r, useSignal as i, useSignals as a } from "@cascivo/core";
|
|
6
|
-
import { builtin as o, t as s } from "@cascivo/i18n";
|
|
7
|
-
import { jsx as c, jsxs as l } from "react/jsx-runtime";
|
|
8
|
-
//#region ../components/src/tree-view/tree-view.tsx
|
|
9
|
-
function u(e, t) {
|
|
10
|
-
let n = [], r = (e, i, a) => {
|
|
11
|
-
for (let o of e) {
|
|
12
|
-
let e = !!o.children && o.children.length > 0, s = t.has(o.id);
|
|
13
|
-
n.push({
|
|
14
|
-
id: o.id,
|
|
15
|
-
level: i,
|
|
16
|
-
parentId: a,
|
|
17
|
-
hasChildren: e,
|
|
18
|
-
expanded: s
|
|
19
|
-
}), e && s && r(o.children, i + 1, o.id);
|
|
20
|
-
}
|
|
21
|
-
};
|
|
22
|
-
return r(e, 1, null), n;
|
|
23
|
-
}
|
|
24
|
-
function d(e) {
|
|
25
|
-
return e === void 0 ? [] : Array.isArray(e) ? e : e === "" ? [] : [e];
|
|
26
|
-
}
|
|
27
|
-
function f({ items: o, selectionMode: s = "single", selected: l, defaultSelected: f, onSelectChange: h, expanded: g, defaultExpanded: _, onExpandedChange: v, className: y, "aria-label": b, ariaLabel: x }) {
|
|
28
|
-
a();
|
|
29
|
-
let [S, C] = r({
|
|
30
|
-
value: g,
|
|
31
|
-
defaultValue: _ ?? [],
|
|
32
|
-
onChange: v
|
|
33
|
-
}), [w, T] = r({
|
|
34
|
-
value: l,
|
|
35
|
-
defaultValue: f ?? (s === "multi" ? [] : ""),
|
|
36
|
-
onChange: h
|
|
37
|
-
}), E = i(null), D = t(/* @__PURE__ */ new Map()), O = new Set(S.value), k = u(o, O), A = new Map(k.map((e, t) => [e.id, t])), j = d(w.value), M = new Set(j), N = E.value ?? j[0] ?? k[0]?.id ?? null, P = (e) => C([...e]), F = (e) => {
|
|
38
|
-
if (O.has(e)) return;
|
|
39
|
-
let t = new Set(O);
|
|
40
|
-
t.add(e), P(t);
|
|
41
|
-
}, I = (e) => {
|
|
42
|
-
if (!O.has(e)) return;
|
|
43
|
-
let t = new Set(O);
|
|
44
|
-
t.delete(e), P(t);
|
|
45
|
-
}, L = (e) => {
|
|
46
|
-
E.value = e, D.current.get(e)?.focus();
|
|
47
|
-
}, R = (e) => {
|
|
48
|
-
if (s === "multi") {
|
|
49
|
-
let t = new Set(M);
|
|
50
|
-
t.has(e) ? t.delete(e) : t.add(e), T([...t]);
|
|
51
|
-
} else T(e);
|
|
52
|
-
}, z = t({
|
|
53
|
-
buffer: "",
|
|
54
|
-
at: 0
|
|
55
|
-
}), B = (e, t) => {
|
|
56
|
-
let n = A.get(t.id);
|
|
57
|
-
if (n === void 0) return;
|
|
58
|
-
let { hasChildren: r, level: i, parentId: a, expanded: s } = k[n];
|
|
59
|
-
switch (e.key) {
|
|
60
|
-
case "ArrowDown": {
|
|
61
|
-
e.preventDefault();
|
|
62
|
-
let t = k[n + 1];
|
|
63
|
-
t && L(t.id);
|
|
64
|
-
break;
|
|
65
|
-
}
|
|
66
|
-
case "ArrowUp": {
|
|
67
|
-
e.preventDefault();
|
|
68
|
-
let t = k[n - 1];
|
|
69
|
-
t && L(t.id);
|
|
70
|
-
break;
|
|
71
|
-
}
|
|
72
|
-
case "ArrowRight":
|
|
73
|
-
if (e.preventDefault(), r && !s) F(t.id);
|
|
74
|
-
else if (r && s) {
|
|
75
|
-
let e = k[n + 1];
|
|
76
|
-
e && e.level > i && L(e.id);
|
|
77
|
-
}
|
|
78
|
-
break;
|
|
79
|
-
case "ArrowLeft":
|
|
80
|
-
e.preventDefault(), r && s ? I(t.id) : a && L(a);
|
|
81
|
-
break;
|
|
82
|
-
case "Home":
|
|
83
|
-
e.preventDefault(), k[0] && L(k[0].id);
|
|
84
|
-
break;
|
|
85
|
-
case "End": {
|
|
86
|
-
e.preventDefault();
|
|
87
|
-
let t = k[k.length - 1];
|
|
88
|
-
t && L(t.id);
|
|
89
|
-
break;
|
|
90
|
-
}
|
|
91
|
-
case "Enter":
|
|
92
|
-
case " ":
|
|
93
|
-
e.preventDefault(), R(t.id);
|
|
94
|
-
break;
|
|
95
|
-
default:
|
|
96
|
-
if (e.key.length === 1 && !e.metaKey && !e.ctrlKey && !e.altKey) {
|
|
97
|
-
let t = z.current, r = Date.now();
|
|
98
|
-
t.buffer = r - t.at > 500 ? e.key : t.buffer + e.key, t.at = r;
|
|
99
|
-
let i = t.buffer.toLowerCase(), a = (e) => typeof e.label == "string" && e.label.toLowerCase().startsWith(i), s = p(o, O), c = [...k.slice(n + 1), ...k.slice(0, n + 1)].find((e) => {
|
|
100
|
-
let t = s.get(e.id);
|
|
101
|
-
return t ? a(t) : !1;
|
|
102
|
-
});
|
|
103
|
-
c && L(c.id);
|
|
104
|
-
}
|
|
105
|
-
break;
|
|
106
|
-
}
|
|
107
|
-
}, V = (e, t, n, r) => {
|
|
108
|
-
let i = !!e.children && e.children.length > 0, a = O.has(e.id), o = M.has(e.id), s = N === e.id, l = e.children?.length ?? 0;
|
|
109
|
-
return /* @__PURE__ */ c(m, {
|
|
110
|
-
node: e,
|
|
111
|
-
level: t,
|
|
112
|
-
posInSet: n,
|
|
113
|
-
setSize: r,
|
|
114
|
-
hasChildren: i,
|
|
115
|
-
isExpanded: a,
|
|
116
|
-
isSelected: o,
|
|
117
|
-
isTabbable: s,
|
|
118
|
-
itemRefs: D,
|
|
119
|
-
onFocusNode: () => E.value = e.id,
|
|
120
|
-
onKeyDown: (t) => B(t, e),
|
|
121
|
-
onActivate: () => {
|
|
122
|
-
L(e.id), i && (a ? I : F)(e.id), R(e.id);
|
|
123
|
-
},
|
|
124
|
-
children: i && e.children.map((e, n) => V(e, t + 1, n + 1, l))
|
|
125
|
-
}, e.id);
|
|
126
|
-
};
|
|
127
|
-
return /* @__PURE__ */ c("ul", {
|
|
128
|
-
role: "tree",
|
|
129
|
-
"aria-label": x ?? b,
|
|
130
|
-
className: n(e.tree, y),
|
|
131
|
-
children: o.map((e, t) => V(e, 1, t + 1, o.length))
|
|
132
|
-
});
|
|
133
|
-
}
|
|
134
|
-
function p(e, t) {
|
|
135
|
-
let n = /* @__PURE__ */ new Map(), r = (e) => {
|
|
136
|
-
for (let i of e) n.set(i.id, i), i.children && i.children.length > 0 && t.has(i.id) && r(i.children);
|
|
137
|
-
};
|
|
138
|
-
return r(e), n;
|
|
139
|
-
}
|
|
140
|
-
function m({ node: t, level: n, posInSet: r, setSize: i, hasChildren: a, isExpanded: o, isSelected: s, isTabbable: u, itemRefs: d, onFocusNode: f, onKeyDown: p, onActivate: m, children: h }) {
|
|
141
|
-
return /* @__PURE__ */ l("li", {
|
|
142
|
-
role: "treeitem",
|
|
143
|
-
"aria-level": n,
|
|
144
|
-
"aria-posinset": r,
|
|
145
|
-
"aria-setsize": i,
|
|
146
|
-
"aria-selected": s,
|
|
147
|
-
"aria-expanded": a ? o : void 0,
|
|
148
|
-
tabIndex: u ? 0 : -1,
|
|
149
|
-
"data-selected": s || void 0,
|
|
150
|
-
"data-state": a ? o ? "open" : "closed" : void 0,
|
|
151
|
-
style: { "--cascivo-tree-level": n },
|
|
152
|
-
className: e.item,
|
|
153
|
-
ref: (e) => {
|
|
154
|
-
e ? d.current.set(t.id, e) : d.current.delete(t.id);
|
|
155
|
-
},
|
|
156
|
-
onFocus: (e) => {
|
|
157
|
-
e.target === e.currentTarget && f();
|
|
158
|
-
},
|
|
159
|
-
onKeyDown: p,
|
|
160
|
-
onClick: (e) => {
|
|
161
|
-
e.stopPropagation(), m();
|
|
162
|
-
},
|
|
163
|
-
children: [/* @__PURE__ */ l("span", {
|
|
164
|
-
className: e.row,
|
|
165
|
-
children: [
|
|
166
|
-
a ? /* @__PURE__ */ c("span", {
|
|
167
|
-
className: e.twisty,
|
|
168
|
-
"aria-hidden": "true",
|
|
169
|
-
"data-state": o ? "open" : "closed"
|
|
170
|
-
}) : /* @__PURE__ */ c("span", {
|
|
171
|
-
className: e.twistySpacer,
|
|
172
|
-
"aria-hidden": "true"
|
|
173
|
-
}),
|
|
174
|
-
t.icon && /* @__PURE__ */ c("span", {
|
|
175
|
-
className: e.icon,
|
|
176
|
-
"aria-hidden": "true",
|
|
177
|
-
children: t.icon
|
|
178
|
-
}),
|
|
179
|
-
/* @__PURE__ */ c("span", {
|
|
180
|
-
className: e.label,
|
|
181
|
-
children: t.label
|
|
182
|
-
})
|
|
183
|
-
]
|
|
184
|
-
}), a && /* @__PURE__ */ c("div", {
|
|
185
|
-
className: e.groupWrap,
|
|
186
|
-
"data-state": o ? "open" : "closed",
|
|
187
|
-
children: /* @__PURE__ */ c("ul", {
|
|
188
|
-
role: "group",
|
|
189
|
-
className: e.group,
|
|
190
|
-
children: h
|
|
191
|
-
})
|
|
192
|
-
})]
|
|
193
|
-
});
|
|
194
|
-
}
|
|
195
|
-
var h = {
|
|
196
|
-
loading: () => s(o.treeView.loading),
|
|
197
|
-
expand: () => s(o.treeView.expand),
|
|
198
|
-
collapse: () => s(o.treeView.collapse)
|
|
199
|
-
};
|
|
200
|
-
//#endregion
|
|
201
|
-
export { f as TreeView, h as treeViewMessages };
|
|
1
|
+
"use client";import e from"./tree-view.module.js";import{useRef as t}from"react";import{cn as n,useControllableSignal as r,useId as i,useSignal as a,useSignals as o,useTypeahead as s}from"@cascivo/core";import{builtin as c,t as l}from"@cascivo/i18n";import{jsx as u,jsxs as d}from"react/jsx-runtime";function f(e,t){let n=[],r=(e,i,a)=>{for(let o of e){let e=!!o.children&&o.children.length>0,s=t.has(o.id);n.push({id:o.id,level:i,parentId:a,hasChildren:e,expanded:s}),e&&s&&r(o.children,i+1,o.id)}};return r(e,1,null),n}function p(e){return e===void 0?[]:Array.isArray(e)?e:e===``?[]:[e]}function m({items:i,selectionMode:c=`single`,selected:l,defaultSelected:d,onSelectChange:m,onValueChange:_,expanded:v,defaultExpanded:y,onExpandedChange:b,className:x,"aria-label":S,ariaLabel:C,label:w}){o();let[T,E]=r({value:v,defaultValue:y??[],onChange:b}),[D,O]=r({value:l,defaultValue:d??(c===`multi`?[]:``),onChange:e=>{_?.(e),m?.(e)}}),k=a(null),A=t(new Map),j=new Set(T.value),M=f(i,j),N=new Map(M.map((e,t)=>[e.id,t])),P=p(D.value),F=new Set(P),I=((...e)=>{for(let t of e)if(t&&N.has(t))return t;return M[0]?.id??null})(k.value,P[0]),L=e=>E([...e]),R=e=>{if(j.has(e))return;let t=new Set(j);t.add(e),L(t)},z=e=>{if(!j.has(e))return;let t=new Set(j);t.delete(e),L(t)},B=e=>{k.value=e,A.current.get(e)?.focus()},V=(e,t)=>{let n=h(i,j);for(let r=e+t;r>=0&&r<M.length;r+=t){let e=M[r];if(e&&!n.get(e.id)?.disabled)return e}},H=e=>e===`start`?V(-1,1):V(M.length,-1),U=e=>{if(!h(i,j).get(e)?.disabled)if(c===`multi`){let t=new Set(F);t.has(e)?t.delete(e):t.add(e),O([...t])}else O(e)},W=e=>e.textValue===void 0?typeof e.label==`string`?e.label:null:e.textValue,G=s({onMatch:e=>{let t=k.peek(),n=t===null?-1:N.get(t)??-1,r=h(i,j),a=[...M.slice(n+1),...M.slice(0,n+1)].find(t=>{let n=r.get(t.id);if(!n||n.disabled)return!1;let i=W(n);return i!==null&&i.toLowerCase().startsWith(e)});a&&B(a.id)}}),K=(e,t)=>{let n=N.get(t.id);if(n===void 0)return;let{hasChildren:r,level:i,parentId:a,expanded:o}=M[n];switch(e.key){case`ArrowDown`:{e.preventDefault();let t=V(n,1);t&&B(t.id);break}case`ArrowUp`:{e.preventDefault();let t=V(n,-1);t&&B(t.id);break}case`ArrowRight`:if(e.preventDefault(),r&&!o)R(t.id);else if(r&&o){let e=M[n+1];e&&e.level>i&&B(e.id)}break;case`ArrowLeft`:e.preventDefault(),r&&o?z(t.id):a&&B(a);break;case`Home`:{e.preventDefault();let t=H(`start`);t&&B(t.id);break}case`End`:{e.preventDefault();let t=H(`end`);t&&B(t.id);break}case`*`:{e.preventDefault();let t=new Set(j);for(let e of M)e.level===i&&e.parentId===a&&e.hasChildren&&t.add(e.id);L(t);break}case`Enter`:case` `:if(e.preventDefault(),t.disabled)break;r&&(o?z:R)(t.id),U(t.id);break;default:G.onKeyDown(e);break}},q=(e,t,n,r)=>{let i=!!e.children&&e.children.length>0,a=j.has(e.id),o=F.has(e.id),s=I===e.id,c=e.disabled??!1,l=e.children?.length??0;return u(g,{node:e,level:t,posInSet:n,setSize:r,hasChildren:i,isExpanded:a,isSelected:o,isTabbable:s,isDisabled:c,itemRefs:A,onFocusNode:()=>k.value=e.id,onKeyDown:t=>K(t,e),onActivate:()=>{c||(B(e.id),i&&(a?z:R)(e.id),U(e.id))},children:i&&a&&e.children.map((e,n)=>q(e,t+1,n+1,l))},e.id)};return u(`ul`,{role:`tree`,"aria-multiselectable":c===`multi`||void 0,"aria-label":C??S??w,className:n(e.tree,x),children:i.map((e,t)=>q(e,1,t+1,i.length))})}function h(e,t){let n=new Map,r=e=>{for(let i of e)n.set(i.id,i),i.children&&i.children.length>0&&t.has(i.id)&&r(i.children)};return r(e),n}function g({node:t,level:n,posInSet:r,setSize:a,hasChildren:o,isExpanded:s,isSelected:c,isTabbable:l,isDisabled:f,itemRefs:p,onFocusNode:m,onKeyDown:h,onActivate:g,children:_}){let v=i(`cascivo-tree-${t.id}`);return d(`li`,{role:`treeitem`,"aria-labelledby":v,"aria-level":n,"aria-posinset":r,"aria-setsize":a,"aria-selected":c,"aria-expanded":o?s:void 0,"aria-disabled":f||void 0,"data-disabled":f||void 0,tabIndex:l?0:-1,"data-selected":c||void 0,"data-state":o?s?`open`:`closed`:void 0,style:{"--cascivo-tree-level":n},className:e.item,ref:e=>{e?p.current.set(t.id,e):p.current.delete(t.id)},onFocus:e=>{e.target===e.currentTarget&&m()},onKeyDown:h,onClick:e=>{e.stopPropagation(),g()},children:[d(`span`,{className:e.row,children:[o?u(`span`,{className:e.twisty,"aria-hidden":`true`,"data-state":s?`open`:`closed`}):u(`span`,{className:e.twistySpacer,"aria-hidden":`true`}),t.icon&&u(`span`,{className:e.icon,"aria-hidden":`true`,children:t.icon}),u(`span`,{id:v,className:e.label,children:t.label})]}),o&&u(`div`,{role:`presentation`,className:e.groupWrap,"data-state":s?`open`:`closed`,children:u(`ul`,{role:`group`,className:e.group,children:_})})]})}var _={loading:()=>l(c.treeView.loading),expand:()=>l(c.treeView.expand),collapse:()=>l(c.treeView.collapse)};export{m as TreeView,_ as treeViewMessages};
|
|
@@ -1,14 +1,2 @@
|
|
|
1
1
|
import './tree-view.css';
|
|
2
|
-
var e
|
|
3
|
-
tree: "_tree_ufkml_2",
|
|
4
|
-
item: "_item_ufkml_12",
|
|
5
|
-
row: "_row_ufkml_16",
|
|
6
|
-
twisty: "_twisty_ufkml_47",
|
|
7
|
-
twistySpacer: "_twistySpacer_ufkml_61",
|
|
8
|
-
icon: "_icon_ufkml_67",
|
|
9
|
-
label: "_label_ufkml_75",
|
|
10
|
-
groupWrap: "_groupWrap_ufkml_83",
|
|
11
|
-
group: "_group_ufkml_83"
|
|
12
|
-
};
|
|
13
|
-
//#endregion
|
|
14
|
-
export { e as default };
|
|
2
|
+
var e={tree:`_tree_awpgc_2`,item:`_item_awpgc_12`,row:`_row_awpgc_16`,twisty:`_twisty_awpgc_47`,twistySpacer:`_twistySpacer_awpgc_61`,icon:`_icon_awpgc_67`,label:`_label_awpgc_75`,groupWrap:`_groupWrap_awpgc_83`,group:`_group_awpgc_83`};export{e as default};
|
package/dist/user/user.js
CHANGED
|
@@ -1,35 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
import t from "./user.module.js";
|
|
3
|
-
import { cn as n } from "@cascivo/core/pure";
|
|
4
|
-
import { jsx as r, jsxs as i } from "react/jsx-runtime";
|
|
5
|
-
//#region ../components/src/user/user.tsx
|
|
6
|
-
function a({ name: a, description: o, avatarProps: s, className: c, children: l, ...u }) {
|
|
7
|
-
let d = typeof a == "string" && s?.name === void 0 && s?.fallback === void 0 ? { name: a } : {};
|
|
8
|
-
return /* @__PURE__ */ i("div", {
|
|
9
|
-
role: "group",
|
|
10
|
-
className: n(t.user, c),
|
|
11
|
-
...u,
|
|
12
|
-
children: [
|
|
13
|
-
/* @__PURE__ */ r(e, {
|
|
14
|
-
...d,
|
|
15
|
-
...s
|
|
16
|
-
}),
|
|
17
|
-
/* @__PURE__ */ i("span", {
|
|
18
|
-
className: t.text,
|
|
19
|
-
children: [/* @__PURE__ */ r("span", {
|
|
20
|
-
className: t.name,
|
|
21
|
-
children: a
|
|
22
|
-
}), o != null && /* @__PURE__ */ r("span", {
|
|
23
|
-
className: t.description,
|
|
24
|
-
children: o
|
|
25
|
-
})]
|
|
26
|
-
}),
|
|
27
|
-
l != null && /* @__PURE__ */ r("span", {
|
|
28
|
-
className: t.action,
|
|
29
|
-
children: l
|
|
30
|
-
})
|
|
31
|
-
]
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
//#endregion
|
|
35
|
-
export { a as User };
|
|
1
|
+
import{Avatar as e}from"../avatar/avatar.js";import t from"./user.module.js";import{cn as n}from"@cascivo/core/pure";import{jsx as r,jsxs as i}from"react/jsx-runtime";function a({name:a,description:o,avatarProps:s,className:c,children:l,...u}){let d=typeof a==`string`&&s?.name===void 0&&s?.fallback===void 0?{name:a}:{};return i(`div`,{role:`group`,className:n(t.user,c),...u,children:[r(e,{...d,...s}),i(`span`,{className:t.text,children:[r(`span`,{className:t.name,children:a}),o!=null&&r(`span`,{className:t.description,children:o})]}),l!=null&&r(`span`,{className:t.action,children:l})]})}export{a as User};
|
package/dist/user/user.module.js
CHANGED
|
@@ -1,10 +1,2 @@
|
|
|
1
1
|
import './user.css';
|
|
2
|
-
var e
|
|
3
|
-
user: "_user_uuj1b_2",
|
|
4
|
-
text: "_text_uuj1b_10",
|
|
5
|
-
name: "_name_uuj1b_17",
|
|
6
|
-
description: "_description_uuj1b_26",
|
|
7
|
-
action: "_action_uuj1b_34"
|
|
8
|
-
};
|
|
9
|
-
//#endregion
|
|
10
|
-
export { e as default };
|
|
2
|
+
var e={user:`_user_uuj1b_2`,text:`_text_uuj1b_10`,name:`_name_uuj1b_17`,description:`_description_uuj1b_26`,action:`_action_uuj1b_34`};export{e as default};
|
|
@@ -1,40 +1 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
|
|
3
|
-
import e from "./virtual-list.module.js";
|
|
4
|
-
import { cn as t, useSignal as n, useSignals as r } from "@cascivo/core";
|
|
5
|
-
import { jsx as i } from "react/jsx-runtime";
|
|
6
|
-
//#region ../components/src/virtual-list/virtual-list.tsx
|
|
7
|
-
function a({ items: a, itemHeight: o, height: s, renderItem: c, overscan: l = 3, ariaLabel: u, className: d }) {
|
|
8
|
-
r();
|
|
9
|
-
let f = n(0), p = Math.ceil(s / o), m = Math.floor(f.value / o), h = Math.max(0, m - l), g = Math.min(a.length, m + p + l), _ = a.slice(h, g), v = (e) => {
|
|
10
|
-
f.value = e.currentTarget.scrollTop;
|
|
11
|
-
}, y = { blockSize: `${s}px` };
|
|
12
|
-
return /* @__PURE__ */ i("div", {
|
|
13
|
-
className: t(e.viewport, d),
|
|
14
|
-
style: y,
|
|
15
|
-
onScroll: v,
|
|
16
|
-
role: "list",
|
|
17
|
-
"aria-label": u,
|
|
18
|
-
tabIndex: 0,
|
|
19
|
-
children: /* @__PURE__ */ i("div", {
|
|
20
|
-
className: e.canvas,
|
|
21
|
-
style: { blockSize: `${a.length * o}px` },
|
|
22
|
-
children: _.map((t, n) => {
|
|
23
|
-
let r = h + n;
|
|
24
|
-
return /* @__PURE__ */ i("div", {
|
|
25
|
-
role: "listitem",
|
|
26
|
-
"aria-setsize": a.length,
|
|
27
|
-
"aria-posinset": r + 1,
|
|
28
|
-
className: e.row,
|
|
29
|
-
style: {
|
|
30
|
-
blockSize: `${o}px`,
|
|
31
|
-
transform: `translateY(${r * o}px)`
|
|
32
|
-
},
|
|
33
|
-
children: c(t, r)
|
|
34
|
-
}, r);
|
|
35
|
-
})
|
|
36
|
-
})
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
//#endregion
|
|
40
|
-
export { a as VirtualList };
|
|
1
|
+
"use client";import e from"./virtual-list.module.js";import{cn as t,useSignal as n,useSignals as r}from"@cascivo/core";import{jsx as i}from"react/jsx-runtime";function a({items:a,itemHeight:o,height:s,renderItem:c,overscan:l=3,ariaLabel:u,label:d,className:f}){r();let p=n(0),m=Math.ceil(s/o),h=Math.floor(p.value/o),g=Math.max(0,h-l),_=Math.min(a.length,h+m+l),v=a.slice(g,_),y=e=>{p.value=e.currentTarget.scrollTop},b={blockSize:`${s}px`};return i(`div`,{className:t(e.viewport,f),style:b,onScroll:y,role:`list`,"aria-label":u??d,tabIndex:0,children:i(`div`,{className:e.canvas,style:{blockSize:`${a.length*o}px`},children:v.map((t,n)=>{let r=g+n;return i(`div`,{role:`listitem`,"aria-setsize":a.length,"aria-posinset":r+1,className:e.row,style:{blockSize:`${o}px`,transform:`translateY(${r*o}px)`},children:c(t,r)},r)})})})}export{a as VirtualList};
|
|
@@ -1,8 +1,2 @@
|
|
|
1
1
|
import './virtual-list.css';
|
|
2
|
-
var e
|
|
3
|
-
viewport: "_viewport_1wmsq_2",
|
|
4
|
-
canvas: "_canvas_1wmsq_14",
|
|
5
|
-
row: "_row_1wmsq_19"
|
|
6
|
-
};
|
|
7
|
-
//#endregion
|
|
8
|
-
export { e as default };
|
|
2
|
+
var e={viewport:`_viewport_1wmsq_2`,canvas:`_canvas_1wmsq_14`,row:`_row_1wmsq_19`};export{e as default};
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
import "react/jsx-runtime";
|
|
1
|
+
import"@cascivo/core/pure";import"react/jsx-runtime";
|
|
@@ -1,84 +1 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
|
|
3
|
-
import e from "./wheel-picker.module.js";
|
|
4
|
-
import { useRef as t } from "react";
|
|
5
|
-
import { cn as n, useEffectPropSignal as r, useId as i, useSignalEffect as a } from "@cascivo/core";
|
|
6
|
-
import { jsx as o, jsxs as s } from "react/jsx-runtime";
|
|
7
|
-
//#region ../components/src/wheel-picker/wheel-picker.tsx
|
|
8
|
-
var c = 120;
|
|
9
|
-
function l({ options: l, value: u, onValueChange: d, visibleCount: f = 5, itemHeight: p = 36, ariaLabel: m, className: h }) {
|
|
10
|
-
let g = t(null), _ = i(), v = Math.max(0, l.findIndex((e) => e.value === u)), y = t(l);
|
|
11
|
-
y.current = l;
|
|
12
|
-
let b = t(d);
|
|
13
|
-
b.current = d;
|
|
14
|
-
let x = t(p);
|
|
15
|
-
x.current = p;
|
|
16
|
-
let S = t(u);
|
|
17
|
-
S.current = u;
|
|
18
|
-
let C = (e, t) => {
|
|
19
|
-
let n = g.current;
|
|
20
|
-
n && n.scrollTo({
|
|
21
|
-
top: e * x.current,
|
|
22
|
-
behavior: t ? "smooth" : "instant"
|
|
23
|
-
});
|
|
24
|
-
}, w = r(u);
|
|
25
|
-
a(() => {
|
|
26
|
-
let e = w.value, t = y.current.findIndex((t) => t.value === e);
|
|
27
|
-
t >= 0 && C(t, !1);
|
|
28
|
-
}), a(() => {
|
|
29
|
-
let e = g.current;
|
|
30
|
-
if (!e) return;
|
|
31
|
-
let t, n = () => {
|
|
32
|
-
clearTimeout(t), t = setTimeout(() => {
|
|
33
|
-
let t = Math.round(e.scrollTop / x.current), n = y.current[t];
|
|
34
|
-
n && n.value !== S.current && b.current(n.value);
|
|
35
|
-
}, c);
|
|
36
|
-
};
|
|
37
|
-
return e.addEventListener("scroll", n, { passive: !0 }), () => {
|
|
38
|
-
clearTimeout(t), e.removeEventListener("scroll", n);
|
|
39
|
-
};
|
|
40
|
-
});
|
|
41
|
-
let T = (e) => {
|
|
42
|
-
let t = Math.max(0, Math.min(l.length - 1, e)), n = l[t];
|
|
43
|
-
!n || n.value === u || (d(n.value), C(t, !0));
|
|
44
|
-
}, E = (e) => {
|
|
45
|
-
let t = {
|
|
46
|
-
ArrowDown: v + 1,
|
|
47
|
-
ArrowUp: v - 1,
|
|
48
|
-
Home: 0,
|
|
49
|
-
End: l.length - 1,
|
|
50
|
-
PageDown: v + f,
|
|
51
|
-
PageUp: v - f
|
|
52
|
-
}[e.key];
|
|
53
|
-
t !== void 0 && (e.preventDefault(), T(t));
|
|
54
|
-
}, D = (f - 1) / 2 * p, O = {
|
|
55
|
-
"--_item-height": `${p}px`,
|
|
56
|
-
"--_pad": `${D}px`,
|
|
57
|
-
"--_column-height": `${f * p}px`
|
|
58
|
-
};
|
|
59
|
-
return /* @__PURE__ */ s("div", {
|
|
60
|
-
className: n(e.root, h),
|
|
61
|
-
style: O,
|
|
62
|
-
children: [/* @__PURE__ */ o("div", {
|
|
63
|
-
ref: g,
|
|
64
|
-
role: "listbox",
|
|
65
|
-
tabIndex: 0,
|
|
66
|
-
"aria-label": m,
|
|
67
|
-
"aria-activedescendant": `${_}-${v}`,
|
|
68
|
-
className: e.column,
|
|
69
|
-
onKeyDown: E,
|
|
70
|
-
children: l.map((t, n) => /* @__PURE__ */ o("div", {
|
|
71
|
-
id: `${_}-${n}`,
|
|
72
|
-
role: "option",
|
|
73
|
-
"aria-selected": n === v,
|
|
74
|
-
className: e.option,
|
|
75
|
-
children: t.label
|
|
76
|
-
}, t.value))
|
|
77
|
-
}), /* @__PURE__ */ o("div", {
|
|
78
|
-
"aria-hidden": "true",
|
|
79
|
-
className: e.band
|
|
80
|
-
})]
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
//#endregion
|
|
84
|
-
export { l as WheelPicker };
|
|
1
|
+
"use client";import e from"./wheel-picker.module.js";import{useRef as t}from"react";import{cn as n,useEffectPropSignal as r,useId as i,useSignalEffect as a}from"@cascivo/core";import{jsx as o,jsxs as s}from"react/jsx-runtime";var c=120;function l({options:l,value:u,onValueChange:d,visibleCount:f=5,itemHeight:p=36,ariaLabel:m,label:h,className:g}){let _=t(null),v=i(),y=Math.max(0,l.findIndex(e=>e.value===u)),b=t(l);b.current=l;let x=t(d);x.current=d;let S=t(p);S.current=p;let C=t(u);C.current=u;let w=(e,t)=>{let n=_.current;n&&n.scrollTo({top:e*S.current,behavior:t?`smooth`:`instant`})},T=r(u);a(()=>{let e=T.value,t=b.current.findIndex(t=>t.value===e);t>=0&&w(t,!1)}),a(()=>{let e=_.current;if(!e)return;let t,n=()=>{clearTimeout(t),t=setTimeout(()=>{let t=Math.round(e.scrollTop/S.current),n=b.current[t];n&&n.value!==C.current&&x.current(n.value)},c)};return e.addEventListener(`scroll`,n,{passive:!0}),()=>{clearTimeout(t),e.removeEventListener(`scroll`,n)}});let E=e=>{let t=Math.max(0,Math.min(l.length-1,e)),n=l[t];!n||n.value===u||(d(n.value),w(t,!0))},D=e=>{let t={ArrowDown:y+1,ArrowUp:y-1,Home:0,End:l.length-1,PageDown:y+f,PageUp:y-f}[e.key];t!==void 0&&(e.preventDefault(),E(t))},O=(f-1)/2*p,k={"--_item-height":`${p}px`,"--_pad":`${O}px`,"--_column-height":`${f*p}px`};return s(`div`,{className:n(e.root,g),style:k,children:[o(`div`,{ref:_,role:`listbox`,tabIndex:0,"aria-label":m??h,"aria-activedescendant":`${v}-${y}`,className:e.column,onKeyDown:D,children:l.map((t,n)=>o(`div`,{id:`${v}-${n}`,role:`option`,"aria-selected":n===y,className:e.option,children:t.label},t.value))}),o(`div`,{"aria-hidden":`true`,className:e.band})]})}export{l as WheelPicker};
|
|
@@ -1,9 +1,2 @@
|
|
|
1
1
|
import './wheel-picker.css';
|
|
2
|
-
var e
|
|
3
|
-
root: "_root_11q00_2",
|
|
4
|
-
column: "_column_11q00_7",
|
|
5
|
-
option: "_option_11q00_29",
|
|
6
|
-
band: "_band_11q00_48"
|
|
7
|
-
};
|
|
8
|
-
//#endregion
|
|
9
|
-
export { e as default };
|
|
2
|
+
var e={root:`_root_11q00_2`,column:`_column_11q00_7`,option:`_option_11q00_29`,band:`_band_11q00_48`};export{e as default};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cascivo/react",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "1.1.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Prebuilt cascivo design system components — use without copying source. @cascivo/themes installs with it; pair with @cascivo/charts (data-viz) and @cascivo/icons. Docs offline: npx @cascivo/docs",
|
|
6
6
|
"keywords": [
|
|
@@ -51,9 +51,9 @@
|
|
|
51
51
|
"provenance": true
|
|
52
52
|
},
|
|
53
53
|
"dependencies": {
|
|
54
|
-
"@cascivo/core": "^
|
|
55
|
-
"@cascivo/i18n": "^
|
|
56
|
-
"@cascivo/themes": "^0.
|
|
54
|
+
"@cascivo/core": "^1.1.0",
|
|
55
|
+
"@cascivo/i18n": "^1.1.0",
|
|
56
|
+
"@cascivo/themes": "^1.0.0"
|
|
57
57
|
},
|
|
58
58
|
"devDependencies": {
|
|
59
59
|
"@testing-library/jest-dom": "^6.9.1",
|
package/readme.body.md
CHANGED
|
@@ -42,7 +42,7 @@ grayscale (`ThemeProvider` warns in dev when that happens).
|
|
|
42
42
|
In a Server Component file (e.g. `app/layout.tsx`), import the themes once:
|
|
43
43
|
|
|
44
44
|
```tsx
|
|
45
|
-
import '@cascivo/themes/
|
|
45
|
+
import '@cascivo/themes/light-dark.css'
|
|
46
46
|
```
|
|
47
47
|
|
|
48
48
|
Component CSS ships **per component** and is pulled in automatically when you
|
|
@@ -85,7 +85,8 @@ RSC without any extra wrapper.
|
|
|
85
85
|
|
|
86
86
|
```tsx
|
|
87
87
|
// once, in your entry file — themes are the only global import
|
|
88
|
-
import '@cascivo/themes/
|
|
88
|
+
import '@cascivo/themes/light-dark.css' // tokens (once) + base typography + light & dark
|
|
89
|
+
// swap for '@cascivo/themes/all.css' only if you ship a theme picker (all twelve, ~2x)
|
|
89
90
|
|
|
90
91
|
// anywhere — each component brings its own CSS along
|
|
91
92
|
import { Button, Card, CardContent, Toggle } from '@cascivo/react'
|
|
@@ -232,7 +233,7 @@ routing break after adding one of these, check that the import resolves to
|
|
|
232
233
|
|
|
233
234
|
## Component index
|
|
234
235
|
|
|
235
|
-
|
|
236
|
+
198 components, exported from `@cascivo/react`. Full props, examples, and live demos at [cascivo.com/docs](https://cascivo.com/docs).
|
|
236
237
|
|
|
237
238
|
### Inputs
|
|
238
239
|
|
|
@@ -257,7 +258,7 @@ routing break after adding one of these, check that the import resolves to
|
|
|
257
258
|
- **Input** — Text input field with optional label, hint, and error state
|
|
258
259
|
- **InputGroup** — Prefix/suffix addon wrapper for Input; InputGroupAddon renders inline icons/units inside the field border; ButtonGroup collapses adjacent button borders
|
|
259
260
|
- **Label** — Accessible caption for a form control
|
|
260
|
-
- **MultiSelect** — Searchable multi-value select with popover listbox
|
|
261
|
+
- **MultiSelect** — Searchable multi-value select with a popover listbox, chips and grouping
|
|
261
262
|
- **NativeSelect** — A styled native <select> that keeps platform form/keyboard behavior with a custom chevron and focus ring
|
|
262
263
|
- **NumberInput** — Numeric input with stepper buttons, clamping, precision, and locale formatting
|
|
263
264
|
- **OtpInput** — Segmented one-time code input
|
|
@@ -317,6 +318,7 @@ routing break after adding one of these, check that the import resolves to
|
|
|
317
318
|
- **Kbd** — Displays a keyboard key or shortcut
|
|
318
319
|
- **List** — Styled unordered or ordered list with ListItem
|
|
319
320
|
- **LoginPage** — Authentication login page with email and password form.
|
|
321
|
+
- **Logo** — The cascivo mark and its sanctioned lockups, as inline SVG
|
|
320
322
|
- **LogViewer** — Virtualized monospace console for high-frequency log and stream output
|
|
321
323
|
- **NotificationCenter** — A list of notification alerts with a mark-all-read action.
|
|
322
324
|
- **PageWithBreadcrumb** — A centered content page with a breadcrumb navigation and page header.
|
|
@@ -378,7 +380,7 @@ routing break after adding one of these, check that the import resolves to
|
|
|
378
380
|
- **SideNav** — Collapsible sidebar navigation with optional icons and one level of grouping
|
|
379
381
|
- **SkipNav** — Skip link that jumps keyboard users past the navigation to the main content
|
|
380
382
|
- **Steps** — Visual progress indicator for multi-step flows with horizontal and vertical orientations
|
|
381
|
-
- **Switcher** —
|
|
383
|
+
- **Switcher** — Always-visible app/product switcher LIST — every entry is rendered at once, it does not collapse. Lives inside HeaderPanel; renders links with an active indicator and optional dividers. For a collapsed trigger with a menu, use Dropdown.
|
|
382
384
|
- **Tabs** — Switch between related panels of content
|
|
383
385
|
- **Toc** — Table of contents with scroll-spy highlighting of the active section
|
|
384
386
|
|