@furystack/shades-common-components 13.5.0 → 15.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +109 -0
- package/README.md +3 -3
- package/esm/components/accordion/accordion-item.d.ts.map +1 -1
- package/esm/components/accordion/accordion-item.js +7 -10
- package/esm/components/accordion/accordion-item.js.map +1 -1
- package/esm/components/accordion/accordion.d.ts +7 -0
- package/esm/components/accordion/accordion.d.ts.map +1 -1
- package/esm/components/accordion/accordion.js +5 -2
- package/esm/components/accordion/accordion.js.map +1 -1
- package/esm/components/accordion/accordion.spec.js +91 -50
- package/esm/components/accordion/accordion.spec.js.map +1 -1
- package/esm/components/alert.js +1 -1
- package/esm/components/alert.js.map +1 -1
- package/esm/components/app-bar-link.js +1 -1
- package/esm/components/app-bar-link.js.map +1 -1
- package/esm/components/app-bar.js +1 -1
- package/esm/components/app-bar.js.map +1 -1
- package/esm/components/avatar.js +1 -1
- package/esm/components/avatar.js.map +1 -1
- package/esm/components/badge.js +1 -1
- package/esm/components/badge.js.map +1 -1
- package/esm/components/breadcrumb.js +1 -1
- package/esm/components/breadcrumb.js.map +1 -1
- package/esm/components/breadcrumb.spec.js +3 -3
- package/esm/components/breadcrumb.spec.js.map +1 -1
- package/esm/components/button-group.js +4 -4
- package/esm/components/button-group.js.map +1 -1
- package/esm/components/button.js +1 -1
- package/esm/components/button.js.map +1 -1
- package/esm/components/button.spec.js +1 -1
- package/esm/components/button.spec.js.map +1 -1
- package/esm/components/cache-view.js +1 -1
- package/esm/components/cache-view.js.map +1 -1
- package/esm/components/cache-view.spec.js +2 -2
- package/esm/components/cache-view.spec.js.map +1 -1
- package/esm/components/card.js +5 -5
- package/esm/components/card.js.map +1 -1
- package/esm/components/carousel.js +2 -2
- package/esm/components/carousel.js.map +1 -1
- package/esm/components/chip.d.ts.map +1 -1
- package/esm/components/chip.js +5 -3
- package/esm/components/chip.js.map +1 -1
- package/esm/components/chip.spec.js +42 -0
- package/esm/components/chip.spec.js.map +1 -1
- package/esm/components/circular-progress.d.ts +2 -4
- package/esm/components/circular-progress.d.ts.map +1 -1
- package/esm/components/circular-progress.js +3 -6
- package/esm/components/circular-progress.js.map +1 -1
- package/esm/components/circular-progress.spec.js +19 -14
- package/esm/components/circular-progress.spec.js.map +1 -1
- package/esm/components/command-palette/command-palette-input.js +1 -1
- package/esm/components/command-palette/command-palette-input.js.map +1 -1
- package/esm/components/command-palette/command-palette-suggestion-list.js +1 -1
- package/esm/components/command-palette/command-palette-suggestion-list.js.map +1 -1
- package/esm/components/command-palette/command-palette-suggestion-list.spec.js +1 -1
- package/esm/components/command-palette/command-palette-suggestion-list.spec.js.map +1 -1
- package/esm/components/command-palette/index.d.ts.map +1 -1
- package/esm/components/command-palette/index.js +15 -2
- package/esm/components/command-palette/index.js.map +1 -1
- package/esm/components/command-palette/index.spec.js +78 -33
- package/esm/components/command-palette/index.spec.js.map +1 -1
- package/esm/components/context-menu/context-menu-item.js +1 -1
- package/esm/components/context-menu/context-menu-item.js.map +1 -1
- package/esm/components/context-menu/context-menu.js +1 -1
- package/esm/components/context-menu/context-menu.js.map +1 -1
- package/esm/components/data-grid/body.js +1 -1
- package/esm/components/data-grid/body.js.map +1 -1
- package/esm/components/data-grid/data-grid-row.d.ts.map +1 -1
- package/esm/components/data-grid/data-grid-row.js +19 -3
- package/esm/components/data-grid/data-grid-row.js.map +1 -1
- package/esm/components/data-grid/data-grid.d.ts +12 -2
- package/esm/components/data-grid/data-grid.d.ts.map +1 -1
- package/esm/components/data-grid/data-grid.js +33 -13
- package/esm/components/data-grid/data-grid.js.map +1 -1
- package/esm/components/data-grid/data-grid.spec.js +170 -90
- package/esm/components/data-grid/data-grid.spec.js.map +1 -1
- package/esm/components/data-grid/filters/boolean-filter.d.ts +2 -2
- package/esm/components/data-grid/filters/boolean-filter.d.ts.map +1 -1
- package/esm/components/data-grid/filters/boolean-filter.js +4 -4
- package/esm/components/data-grid/filters/boolean-filter.js.map +1 -1
- package/esm/components/data-grid/filters/boolean-filter.spec.js +18 -17
- package/esm/components/data-grid/filters/boolean-filter.spec.js.map +1 -1
- package/esm/components/data-grid/filters/date-filter.d.ts +2 -2
- package/esm/components/data-grid/filters/date-filter.d.ts.map +1 -1
- package/esm/components/data-grid/filters/date-filter.js +6 -6
- package/esm/components/data-grid/filters/date-filter.js.map +1 -1
- package/esm/components/data-grid/filters/date-filter.spec.js +26 -21
- package/esm/components/data-grid/filters/date-filter.spec.js.map +1 -1
- package/esm/components/data-grid/filters/enum-filter.d.ts +2 -2
- package/esm/components/data-grid/filters/enum-filter.d.ts.map +1 -1
- package/esm/components/data-grid/filters/enum-filter.js +5 -5
- package/esm/components/data-grid/filters/enum-filter.js.map +1 -1
- package/esm/components/data-grid/filters/enum-filter.spec.js +21 -19
- package/esm/components/data-grid/filters/enum-filter.spec.js.map +1 -1
- package/esm/components/data-grid/filters/filter-dropdown.js +1 -1
- package/esm/components/data-grid/filters/filter-dropdown.js.map +1 -1
- package/esm/components/data-grid/filters/number-filter.d.ts +2 -2
- package/esm/components/data-grid/filters/number-filter.d.ts.map +1 -1
- package/esm/components/data-grid/filters/number-filter.js +5 -5
- package/esm/components/data-grid/filters/number-filter.js.map +1 -1
- package/esm/components/data-grid/filters/number-filter.spec.js +23 -21
- package/esm/components/data-grid/filters/number-filter.spec.js.map +1 -1
- package/esm/components/data-grid/filters/string-filter.d.ts +2 -2
- package/esm/components/data-grid/filters/string-filter.d.ts.map +1 -1
- package/esm/components/data-grid/filters/string-filter.js +5 -5
- package/esm/components/data-grid/filters/string-filter.js.map +1 -1
- package/esm/components/data-grid/filters/string-filter.spec.js +21 -19
- package/esm/components/data-grid/filters/string-filter.spec.js.map +1 -1
- package/esm/components/data-grid/footer.d.ts +2 -2
- package/esm/components/data-grid/footer.d.ts.map +1 -1
- package/esm/components/data-grid/footer.js +8 -13
- package/esm/components/data-grid/footer.js.map +1 -1
- package/esm/components/data-grid/footer.spec.js +38 -27
- package/esm/components/data-grid/footer.spec.js.map +1 -1
- package/esm/components/data-grid/header.d.ts +6 -6
- package/esm/components/data-grid/header.d.ts.map +1 -1
- package/esm/components/data-grid/header.js +16 -17
- package/esm/components/data-grid/header.js.map +1 -1
- package/esm/components/data-grid/header.spec.js +66 -60
- package/esm/components/data-grid/header.spec.js.map +1 -1
- package/esm/components/data-grid/selection-cell.d.ts.map +1 -1
- package/esm/components/data-grid/selection-cell.js +2 -2
- package/esm/components/data-grid/selection-cell.js.map +1 -1
- package/esm/components/dialog.d.ts +11 -0
- package/esm/components/dialog.d.ts.map +1 -1
- package/esm/components/dialog.js +3 -3
- package/esm/components/dialog.js.map +1 -1
- package/esm/components/dialog.spec.js +54 -2
- package/esm/components/dialog.spec.js.map +1 -1
- package/esm/components/divider.js +1 -1
- package/esm/components/divider.js.map +1 -1
- package/esm/components/drawer/drawer-toggle-button.js +1 -1
- package/esm/components/drawer/drawer-toggle-button.js.map +1 -1
- package/esm/components/drawer/index.js +1 -1
- package/esm/components/drawer/index.js.map +1 -1
- package/esm/components/dropdown.d.ts.map +1 -1
- package/esm/components/dropdown.js +2 -2
- package/esm/components/dropdown.js.map +1 -1
- package/esm/components/dropdown.spec.js +8 -0
- package/esm/components/dropdown.spec.js.map +1 -1
- package/esm/components/fab.js +1 -1
- package/esm/components/fab.js.map +1 -1
- package/esm/components/form.js +1 -1
- package/esm/components/form.js.map +1 -1
- package/esm/components/grid.js +1 -1
- package/esm/components/grid.js.map +1 -1
- package/esm/components/icons/icon.js +1 -1
- package/esm/components/icons/icon.js.map +1 -1
- package/esm/components/image.d.ts.map +1 -1
- package/esm/components/image.js +17 -8
- package/esm/components/image.js.map +1 -1
- package/esm/components/image.spec.js +60 -0
- package/esm/components/image.spec.js.map +1 -1
- package/esm/components/inputs/autocomplete.js +1 -1
- package/esm/components/inputs/autocomplete.js.map +1 -1
- package/esm/components/inputs/checkbox.d.ts.map +1 -1
- package/esm/components/inputs/checkbox.js +2 -1
- package/esm/components/inputs/checkbox.js.map +1 -1
- package/esm/components/inputs/checkbox.spec.js +1 -1
- package/esm/components/inputs/checkbox.spec.js.map +1 -1
- package/esm/components/inputs/input-number.js +1 -1
- package/esm/components/inputs/input-number.js.map +1 -1
- package/esm/components/inputs/input-number.spec.js +1 -1
- package/esm/components/inputs/input-number.spec.js.map +1 -1
- package/esm/components/inputs/input.js +1 -1
- package/esm/components/inputs/input.js.map +1 -1
- package/esm/components/inputs/input.spec.js +1 -1
- package/esm/components/inputs/input.spec.js.map +1 -1
- package/esm/components/inputs/radio-group.js +1 -1
- package/esm/components/inputs/radio-group.js.map +1 -1
- package/esm/components/inputs/radio-group.spec.js +1 -1
- package/esm/components/inputs/radio-group.spec.js.map +1 -1
- package/esm/components/inputs/radio.d.ts.map +1 -1
- package/esm/components/inputs/radio.js +2 -1
- package/esm/components/inputs/radio.js.map +1 -1
- package/esm/components/inputs/radio.spec.js +1 -1
- package/esm/components/inputs/radio.spec.js.map +1 -1
- package/esm/components/inputs/select.js +1 -1
- package/esm/components/inputs/select.js.map +1 -1
- package/esm/components/inputs/slider.d.ts.map +1 -1
- package/esm/components/inputs/slider.js +2 -1
- package/esm/components/inputs/slider.js.map +1 -1
- package/esm/components/inputs/switch.d.ts.map +1 -1
- package/esm/components/inputs/switch.js +2 -1
- package/esm/components/inputs/switch.js.map +1 -1
- package/esm/components/inputs/switch.spec.js +1 -1
- package/esm/components/inputs/switch.spec.js.map +1 -1
- package/esm/components/inputs/text-area.js +1 -1
- package/esm/components/inputs/text-area.js.map +1 -1
- package/esm/components/inputs/text-area.spec.js +1 -1
- package/esm/components/inputs/text-area.spec.js.map +1 -1
- package/esm/components/linear-progress.d.ts +2 -4
- package/esm/components/linear-progress.d.ts.map +1 -1
- package/esm/components/linear-progress.js +3 -6
- package/esm/components/linear-progress.js.map +1 -1
- package/esm/components/linear-progress.spec.js +21 -18
- package/esm/components/linear-progress.spec.js.map +1 -1
- package/esm/components/list/list-item.d.ts.map +1 -1
- package/esm/components/list/list-item.js +22 -6
- package/esm/components/list/list-item.js.map +1 -1
- package/esm/components/list/list.d.ts +7 -0
- package/esm/components/list/list.d.ts.map +1 -1
- package/esm/components/list/list.js +29 -9
- package/esm/components/list/list.js.map +1 -1
- package/esm/components/list/list.spec.js +117 -23
- package/esm/components/list/list.spec.js.map +1 -1
- package/esm/components/loader.js +1 -1
- package/esm/components/loader.js.map +1 -1
- package/esm/components/loader.spec.js +1 -1
- package/esm/components/loader.spec.js.map +1 -1
- package/esm/components/markdown/markdown-display.d.ts.map +1 -1
- package/esm/components/markdown/markdown-display.js +12 -2
- package/esm/components/markdown/markdown-display.js.map +1 -1
- package/esm/components/markdown/markdown-display.spec.js +98 -1
- package/esm/components/markdown/markdown-display.spec.js.map +1 -1
- package/esm/components/markdown/markdown-editor.js +1 -1
- package/esm/components/markdown/markdown-editor.js.map +1 -1
- package/esm/components/markdown/markdown-editor.spec.js +88 -1
- package/esm/components/markdown/markdown-editor.spec.js.map +1 -1
- package/esm/components/markdown/markdown-input.js +1 -1
- package/esm/components/markdown/markdown-input.js.map +1 -1
- package/esm/components/markdown/markdown-input.spec.js +1 -1
- package/esm/components/markdown/markdown-input.spec.js.map +1 -1
- package/esm/components/menu/menu.js +2 -2
- package/esm/components/menu/menu.js.map +1 -1
- package/esm/components/modal.d.ts +10 -0
- package/esm/components/modal.d.ts.map +1 -1
- package/esm/components/modal.js +25 -5
- package/esm/components/modal.js.map +1 -1
- package/esm/components/modal.spec.js +89 -4
- package/esm/components/modal.spec.js.map +1 -1
- package/esm/components/noty-list.js +2 -2
- package/esm/components/noty-list.js.map +1 -1
- package/esm/components/page-container/index.js +1 -1
- package/esm/components/page-container/index.js.map +1 -1
- package/esm/components/page-container/page-header.js +1 -1
- package/esm/components/page-container/page-header.js.map +1 -1
- package/esm/components/page-layout/index.js +2 -2
- package/esm/components/page-layout/index.js.map +1 -1
- package/esm/components/page-layout/index.spec.js +14 -0
- package/esm/components/page-layout/index.spec.js.map +1 -1
- package/esm/components/pagination.js +1 -1
- package/esm/components/pagination.js.map +1 -1
- package/esm/components/paper.js +1 -1
- package/esm/components/paper.js.map +1 -1
- package/esm/components/rating.d.ts.map +1 -1
- package/esm/components/rating.js +29 -22
- package/esm/components/rating.js.map +1 -1
- package/esm/components/rating.spec.js +152 -5
- package/esm/components/rating.spec.js.map +1 -1
- package/esm/components/result.js +1 -1
- package/esm/components/result.js.map +1 -1
- package/esm/components/skeleton.js +1 -1
- package/esm/components/skeleton.js.map +1 -1
- package/esm/components/suggest/index.d.ts.map +1 -1
- package/esm/components/suggest/index.js +15 -2
- package/esm/components/suggest/index.js.map +1 -1
- package/esm/components/suggest/index.spec.js +99 -44
- package/esm/components/suggest/index.spec.js.map +1 -1
- package/esm/components/suggest/suggest-input.js +1 -1
- package/esm/components/suggest/suggest-input.js.map +1 -1
- package/esm/components/suggest/suggest-input.spec.js +1 -1
- package/esm/components/suggest/suggest-input.spec.js.map +1 -1
- package/esm/components/suggest/suggestion-list.js +1 -1
- package/esm/components/suggest/suggestion-list.js.map +1 -1
- package/esm/components/suggest/suggestion-list.spec.js +1 -1
- package/esm/components/suggest/suggestion-list.spec.js.map +1 -1
- package/esm/components/tabs.d.ts.map +1 -1
- package/esm/components/tabs.js +6 -2
- package/esm/components/tabs.js.map +1 -1
- package/esm/components/timeline.js +2 -2
- package/esm/components/timeline.js.map +1 -1
- package/esm/components/tooltip.js +1 -1
- package/esm/components/tooltip.js.map +1 -1
- package/esm/components/tree/tree-item.d.ts.map +1 -1
- package/esm/components/tree/tree-item.js +19 -6
- package/esm/components/tree/tree-item.js.map +1 -1
- package/esm/components/tree/tree.d.ts +7 -0
- package/esm/components/tree/tree.d.ts.map +1 -1
- package/esm/components/tree/tree.js +13 -4
- package/esm/components/tree/tree.js.map +1 -1
- package/esm/components/tree/tree.spec.js +64 -2
- package/esm/components/tree/tree.spec.js.map +1 -1
- package/esm/components/typography.js +1 -1
- package/esm/components/typography.js.map +1 -1
- package/esm/components/wizard/index.js +1 -1
- package/esm/components/wizard/index.js.map +1 -1
- package/esm/components/wizard/index.spec.js +3 -3
- package/esm/components/wizard/index.spec.js.map +1 -1
- package/esm/services/collection-service.d.ts +9 -0
- package/esm/services/collection-service.d.ts.map +1 -1
- package/esm/services/collection-service.js +33 -11
- package/esm/services/collection-service.js.map +1 -1
- package/esm/services/collection-service.spec.js +33 -24
- package/esm/services/collection-service.spec.js.map +1 -1
- package/esm/services/css-variable-theme.d.ts +7 -0
- package/esm/services/css-variable-theme.d.ts.map +1 -1
- package/esm/services/css-variable-theme.js +23 -0
- package/esm/services/css-variable-theme.js.map +1 -1
- package/esm/services/css-variable-theme.spec.js +1 -0
- package/esm/services/css-variable-theme.spec.js.map +1 -1
- package/esm/services/list-service.d.ts +9 -0
- package/esm/services/list-service.d.ts.map +1 -1
- package/esm/services/list-service.js +13 -13
- package/esm/services/list-service.js.map +1 -1
- package/esm/services/list-service.spec.js +13 -33
- package/esm/services/list-service.spec.js.map +1 -1
- package/esm/services/theme-provider-service.d.ts +3 -0
- package/esm/services/theme-provider-service.d.ts.map +1 -1
- package/esm/services/theme-provider-service.js.map +1 -1
- package/esm/services/tree-service.d.ts.map +1 -1
- package/esm/services/tree-service.js +5 -9
- package/esm/services/tree-service.js.map +1 -1
- package/esm/services/tree-service.spec.js +12 -9
- package/esm/services/tree-service.spec.js.map +1 -1
- package/esm/themes/architect-theme.d.ts +1 -0
- package/esm/themes/architect-theme.d.ts.map +1 -1
- package/esm/themes/architect-theme.js +1 -0
- package/esm/themes/architect-theme.js.map +1 -1
- package/esm/themes/auditore-theme.d.ts +1 -0
- package/esm/themes/auditore-theme.d.ts.map +1 -1
- package/esm/themes/auditore-theme.js +1 -0
- package/esm/themes/auditore-theme.js.map +1 -1
- package/esm/themes/black-mesa-theme.d.ts +1 -0
- package/esm/themes/black-mesa-theme.d.ts.map +1 -1
- package/esm/themes/black-mesa-theme.js +1 -0
- package/esm/themes/black-mesa-theme.js.map +1 -1
- package/esm/themes/chieftain-theme.d.ts +1 -0
- package/esm/themes/chieftain-theme.d.ts.map +1 -1
- package/esm/themes/chieftain-theme.js +1 -0
- package/esm/themes/chieftain-theme.js.map +1 -1
- package/esm/themes/default-dark-theme.d.ts +1 -0
- package/esm/themes/default-dark-theme.d.ts.map +1 -1
- package/esm/themes/default-dark-theme.js +1 -0
- package/esm/themes/default-dark-theme.js.map +1 -1
- package/esm/themes/default-light-theme.d.ts +1 -0
- package/esm/themes/default-light-theme.d.ts.map +1 -1
- package/esm/themes/default-light-theme.js +1 -0
- package/esm/themes/default-light-theme.js.map +1 -1
- package/esm/themes/dragonborn-theme.d.ts +1 -0
- package/esm/themes/dragonborn-theme.d.ts.map +1 -1
- package/esm/themes/dragonborn-theme.js +1 -0
- package/esm/themes/dragonborn-theme.js.map +1 -1
- package/esm/themes/hawkins-theme.d.ts +1 -0
- package/esm/themes/hawkins-theme.d.ts.map +1 -1
- package/esm/themes/hawkins-theme.js +1 -0
- package/esm/themes/hawkins-theme.js.map +1 -1
- package/esm/themes/jedi-theme.d.ts +1 -0
- package/esm/themes/jedi-theme.d.ts.map +1 -1
- package/esm/themes/jedi-theme.js +1 -0
- package/esm/themes/jedi-theme.js.map +1 -1
- package/esm/themes/neon-runner-theme.d.ts +1 -0
- package/esm/themes/neon-runner-theme.d.ts.map +1 -1
- package/esm/themes/neon-runner-theme.js +1 -0
- package/esm/themes/neon-runner-theme.js.map +1 -1
- package/esm/themes/paladin-theme.d.ts +1 -0
- package/esm/themes/paladin-theme.d.ts.map +1 -1
- package/esm/themes/paladin-theme.js +1 -0
- package/esm/themes/paladin-theme.js.map +1 -1
- package/esm/themes/plumber-theme.d.ts +1 -0
- package/esm/themes/plumber-theme.d.ts.map +1 -1
- package/esm/themes/plumber-theme.js +1 -0
- package/esm/themes/plumber-theme.js.map +1 -1
- package/esm/themes/replicant-theme.d.ts +1 -0
- package/esm/themes/replicant-theme.d.ts.map +1 -1
- package/esm/themes/replicant-theme.js +1 -0
- package/esm/themes/replicant-theme.js.map +1 -1
- package/esm/themes/sandworm-theme.d.ts +1 -0
- package/esm/themes/sandworm-theme.d.ts.map +1 -1
- package/esm/themes/sandworm-theme.js +1 -0
- package/esm/themes/sandworm-theme.js.map +1 -1
- package/esm/themes/shadow-broker-theme.d.ts +1 -0
- package/esm/themes/shadow-broker-theme.d.ts.map +1 -1
- package/esm/themes/shadow-broker-theme.js +1 -0
- package/esm/themes/shadow-broker-theme.js.map +1 -1
- package/esm/themes/sith-theme.d.ts +1 -0
- package/esm/themes/sith-theme.d.ts.map +1 -1
- package/esm/themes/sith-theme.js +1 -0
- package/esm/themes/sith-theme.js.map +1 -1
- package/esm/themes/vault-dweller-theme.d.ts +1 -0
- package/esm/themes/vault-dweller-theme.d.ts.map +1 -1
- package/esm/themes/vault-dweller-theme.js +1 -0
- package/esm/themes/vault-dweller-theme.js.map +1 -1
- package/esm/themes/wild-hunt-theme.d.ts +1 -0
- package/esm/themes/wild-hunt-theme.d.ts.map +1 -1
- package/esm/themes/wild-hunt-theme.js +1 -0
- package/esm/themes/wild-hunt-theme.js.map +1 -1
- package/esm/themes/xenomorph-theme.d.ts +1 -0
- package/esm/themes/xenomorph-theme.d.ts.map +1 -1
- package/esm/themes/xenomorph-theme.js +1 -0
- package/esm/themes/xenomorph-theme.js.map +1 -1
- package/package.json +3 -3
- package/src/components/accordion/accordion-item.tsx +10 -15
- package/src/components/accordion/accordion.spec.tsx +134 -79
- package/src/components/accordion/accordion.tsx +14 -2
- package/src/components/alert.tsx +1 -1
- package/src/components/app-bar-link.tsx +1 -1
- package/src/components/app-bar.tsx +1 -1
- package/src/components/avatar.tsx +1 -1
- package/src/components/badge.tsx +1 -1
- package/src/components/breadcrumb.spec.tsx +3 -3
- package/src/components/breadcrumb.tsx +1 -1
- package/src/components/button-group.tsx +4 -4
- package/src/components/button.spec.tsx +1 -1
- package/src/components/button.tsx +1 -1
- package/src/components/cache-view.spec.tsx +2 -2
- package/src/components/cache-view.tsx +3 -3
- package/src/components/card.tsx +5 -5
- package/src/components/carousel.tsx +2 -2
- package/src/components/chip.spec.tsx +64 -0
- package/src/components/chip.tsx +5 -2
- package/src/components/circular-progress.spec.tsx +20 -14
- package/src/components/circular-progress.tsx +5 -11
- package/src/components/command-palette/command-palette-input.tsx +1 -1
- package/src/components/command-palette/command-palette-suggestion-list.spec.tsx +1 -1
- package/src/components/command-palette/command-palette-suggestion-list.tsx +1 -1
- package/src/components/command-palette/index.spec.tsx +95 -33
- package/src/components/command-palette/index.tsx +16 -4
- package/src/components/context-menu/context-menu-item.tsx +1 -1
- package/src/components/context-menu/context-menu.tsx +1 -1
- package/src/components/data-grid/body.tsx +1 -1
- package/src/components/data-grid/data-grid-row.tsx +21 -3
- package/src/components/data-grid/data-grid.spec.tsx +246 -92
- package/src/components/data-grid/data-grid.tsx +52 -21
- package/src/components/data-grid/filters/boolean-filter.spec.tsx +29 -18
- package/src/components/data-grid/filters/boolean-filter.tsx +6 -6
- package/src/components/data-grid/filters/date-filter.spec.tsx +35 -22
- package/src/components/data-grid/filters/date-filter.tsx +8 -8
- package/src/components/data-grid/filters/enum-filter.spec.tsx +35 -20
- package/src/components/data-grid/filters/enum-filter.tsx +7 -7
- package/src/components/data-grid/filters/filter-dropdown.tsx +1 -1
- package/src/components/data-grid/filters/number-filter.spec.tsx +32 -22
- package/src/components/data-grid/filters/number-filter.tsx +7 -7
- package/src/components/data-grid/filters/string-filter.spec.tsx +32 -20
- package/src/components/data-grid/filters/string-filter.tsx +7 -7
- package/src/components/data-grid/footer.spec.tsx +79 -31
- package/src/components/data-grid/footer.tsx +10 -15
- package/src/components/data-grid/header.spec.tsx +152 -68
- package/src/components/data-grid/header.tsx +64 -27
- package/src/components/data-grid/selection-cell.tsx +2 -1
- package/src/components/dialog.spec.tsx +77 -2
- package/src/components/dialog.tsx +15 -2
- package/src/components/divider.tsx +1 -1
- package/src/components/drawer/drawer-toggle-button.tsx +1 -1
- package/src/components/drawer/index.tsx +1 -1
- package/src/components/dropdown.spec.tsx +9 -0
- package/src/components/dropdown.tsx +2 -1
- package/src/components/fab.tsx +1 -1
- package/src/components/form.tsx +1 -1
- package/src/components/grid.tsx +1 -1
- package/src/components/icons/icon.tsx +1 -1
- package/src/components/image.spec.tsx +82 -0
- package/src/components/image.tsx +18 -9
- package/src/components/inputs/autocomplete.tsx +1 -1
- package/src/components/inputs/checkbox.spec.tsx +1 -1
- package/src/components/inputs/checkbox.tsx +2 -1
- package/src/components/inputs/input-number.spec.tsx +1 -1
- package/src/components/inputs/input-number.tsx +1 -1
- package/src/components/inputs/input.spec.tsx +1 -1
- package/src/components/inputs/input.tsx +1 -1
- package/src/components/inputs/radio-group.spec.tsx +1 -1
- package/src/components/inputs/radio-group.tsx +1 -1
- package/src/components/inputs/radio.spec.tsx +1 -1
- package/src/components/inputs/radio.tsx +2 -1
- package/src/components/inputs/select.tsx +1 -1
- package/src/components/inputs/slider.tsx +2 -1
- package/src/components/inputs/switch.spec.tsx +1 -1
- package/src/components/inputs/switch.tsx +2 -1
- package/src/components/inputs/text-area.spec.tsx +1 -1
- package/src/components/inputs/text-area.tsx +1 -1
- package/src/components/linear-progress.spec.tsx +22 -18
- package/src/components/linear-progress.tsx +5 -11
- package/src/components/list/list-item.tsx +23 -5
- package/src/components/list/list.spec.tsx +165 -32
- package/src/components/list/list.tsx +38 -11
- package/src/components/loader.spec.tsx +1 -1
- package/src/components/loader.tsx +1 -1
- package/src/components/markdown/markdown-display.spec.tsx +133 -1
- package/src/components/markdown/markdown-display.tsx +13 -2
- package/src/components/markdown/markdown-editor.spec.tsx +124 -1
- package/src/components/markdown/markdown-editor.tsx +1 -1
- package/src/components/markdown/markdown-input.spec.tsx +1 -1
- package/src/components/markdown/markdown-input.tsx +1 -1
- package/src/components/menu/menu.tsx +2 -2
- package/src/components/modal.spec.tsx +127 -4
- package/src/components/modal.tsx +42 -4
- package/src/components/noty-list.tsx +2 -2
- package/src/components/page-container/index.tsx +1 -1
- package/src/components/page-container/page-header.tsx +1 -1
- package/src/components/page-layout/index.spec.tsx +20 -0
- package/src/components/page-layout/index.tsx +2 -2
- package/src/components/pagination.tsx +1 -1
- package/src/components/paper.tsx +1 -1
- package/src/components/rating.spec.tsx +200 -5
- package/src/components/rating.tsx +29 -23
- package/src/components/result.tsx +1 -1
- package/src/components/skeleton.tsx +1 -1
- package/src/components/suggest/index.spec.tsx +148 -44
- package/src/components/suggest/index.tsx +16 -3
- package/src/components/suggest/suggest-input.spec.tsx +1 -1
- package/src/components/suggest/suggest-input.tsx +1 -1
- package/src/components/suggest/suggestion-list.spec.tsx +1 -1
- package/src/components/suggest/suggestion-list.tsx +1 -1
- package/src/components/tabs.tsx +6 -2
- package/src/components/timeline.tsx +2 -2
- package/src/components/tooltip.tsx +1 -1
- package/src/components/tree/tree-item.tsx +20 -5
- package/src/components/tree/tree.spec.tsx +101 -2
- package/src/components/tree/tree.tsx +22 -4
- package/src/components/typography.tsx +1 -1
- package/src/components/wizard/index.spec.tsx +3 -3
- package/src/components/wizard/index.tsx +1 -1
- package/src/services/collection-service.spec.ts +33 -24
- package/src/services/collection-service.ts +35 -13
- package/src/services/css-variable-theme.spec.ts +1 -0
- package/src/services/css-variable-theme.ts +25 -0
- package/src/services/list-service.spec.ts +13 -42
- package/src/services/list-service.ts +15 -13
- package/src/services/theme-provider-service.ts +2 -0
- package/src/services/tree-service.spec.ts +12 -9
- package/src/services/tree-service.ts +5 -8
- package/src/themes/architect-theme.ts +1 -0
- package/src/themes/auditore-theme.ts +1 -0
- package/src/themes/black-mesa-theme.ts +1 -0
- package/src/themes/chieftain-theme.ts +1 -0
- package/src/themes/default-dark-theme.ts +1 -0
- package/src/themes/default-light-theme.ts +1 -0
- package/src/themes/dragonborn-theme.ts +1 -0
- package/src/themes/hawkins-theme.ts +1 -0
- package/src/themes/jedi-theme.ts +1 -0
- package/src/themes/neon-runner-theme.ts +1 -0
- package/src/themes/paladin-theme.ts +1 -0
- package/src/themes/plumber-theme.ts +1 -0
- package/src/themes/replicant-theme.ts +1 -0
- package/src/themes/sandworm-theme.ts +1 -0
- package/src/themes/shadow-broker-theme.ts +1 -0
- package/src/themes/sith-theme.ts +1 -0
- package/src/themes/vault-dweller-theme.ts +1 -0
- package/src/themes/wild-hunt-theme.ts +1 -0
- package/src/themes/xenomorph-theme.ts +1 -0
|
@@ -92,7 +92,7 @@ const DEFAULT_DRAWER_WIDTH = '240px'
|
|
|
92
92
|
* ```
|
|
93
93
|
*/
|
|
94
94
|
export const PageLayout = Shade<PageLayoutProps>({
|
|
95
|
-
|
|
95
|
+
customElementName: 'shade-page-layout',
|
|
96
96
|
css: {
|
|
97
97
|
display: 'block',
|
|
98
98
|
fontFamily: cssVariableTheme.typography.fontFamily,
|
|
@@ -407,7 +407,7 @@ export const PageLayout = Shade<PageLayoutProps>({
|
|
|
407
407
|
)}
|
|
408
408
|
|
|
409
409
|
{/* Main Content */}
|
|
410
|
-
<main className="page-layout-content" data-testid="page-layout-content">
|
|
410
|
+
<main className="page-layout-content" data-testid="page-layout-content" data-nav-section="content">
|
|
411
411
|
{children}
|
|
412
412
|
</main>
|
|
413
413
|
</div>
|
package/src/components/paper.tsx
CHANGED
|
@@ -2,7 +2,7 @@ import { Shade, createComponent } from '@furystack/shades'
|
|
|
2
2
|
import { cssVariableTheme } from '../services/css-variable-theme.js'
|
|
3
3
|
|
|
4
4
|
export const Paper = Shade<{ elevation?: 0 | 1 | 2 | 3 }>({
|
|
5
|
-
|
|
5
|
+
customElementName: 'shade-paper',
|
|
6
6
|
elementBase: HTMLDivElement,
|
|
7
7
|
elementBaseName: 'div',
|
|
8
8
|
css: {
|
|
@@ -15,7 +15,7 @@ describe('Rating', () => {
|
|
|
15
15
|
vi.restoreAllMocks()
|
|
16
16
|
})
|
|
17
17
|
|
|
18
|
-
it('should render
|
|
18
|
+
it('should render as custom element', async () => {
|
|
19
19
|
await usingAsync(new Injector(), async (injector) => {
|
|
20
20
|
const rootElement = document.getElementById('root') as HTMLDivElement
|
|
21
21
|
|
|
@@ -588,7 +588,7 @@ describe('Rating', () => {
|
|
|
588
588
|
})
|
|
589
589
|
})
|
|
590
590
|
|
|
591
|
-
it('should
|
|
591
|
+
it('should not change value with ArrowUp (reserved for spatial navigation)', async () => {
|
|
592
592
|
await usingAsync(new Injector(), async (injector) => {
|
|
593
593
|
const rootElement = document.getElementById('root') as HTMLDivElement
|
|
594
594
|
const onchange = vi.fn()
|
|
@@ -606,11 +606,11 @@ describe('Rating', () => {
|
|
|
606
606
|
|
|
607
607
|
await flushUpdates()
|
|
608
608
|
|
|
609
|
-
expect(onchange).
|
|
609
|
+
expect(onchange).not.toHaveBeenCalled()
|
|
610
610
|
})
|
|
611
611
|
})
|
|
612
612
|
|
|
613
|
-
it('should
|
|
613
|
+
it('should not change value with ArrowDown (reserved for spatial navigation)', async () => {
|
|
614
614
|
await usingAsync(new Injector(), async (injector) => {
|
|
615
615
|
const rootElement = document.getElementById('root') as HTMLDivElement
|
|
616
616
|
const onchange = vi.fn()
|
|
@@ -628,7 +628,7 @@ describe('Rating', () => {
|
|
|
628
628
|
|
|
629
629
|
await flushUpdates()
|
|
630
630
|
|
|
631
|
-
expect(onchange).
|
|
631
|
+
expect(onchange).not.toHaveBeenCalled()
|
|
632
632
|
})
|
|
633
633
|
})
|
|
634
634
|
|
|
@@ -863,4 +863,199 @@ describe('Rating', () => {
|
|
|
863
863
|
})
|
|
864
864
|
})
|
|
865
865
|
})
|
|
866
|
+
|
|
867
|
+
describe('spatial navigation integration', () => {
|
|
868
|
+
it('should set data-spatial-nav-target on the host element', async () => {
|
|
869
|
+
await usingAsync(new Injector(), async (injector) => {
|
|
870
|
+
const rootElement = document.getElementById('root') as HTMLDivElement
|
|
871
|
+
|
|
872
|
+
initializeShadeRoot({
|
|
873
|
+
injector,
|
|
874
|
+
rootElement,
|
|
875
|
+
jsxElement: <Rating value={3} />,
|
|
876
|
+
})
|
|
877
|
+
|
|
878
|
+
await flushUpdates()
|
|
879
|
+
|
|
880
|
+
const wrapper = document.querySelector('shade-rating') as HTMLElement
|
|
881
|
+
expect(wrapper.hasAttribute('data-spatial-nav-target')).toBe(true)
|
|
882
|
+
})
|
|
883
|
+
})
|
|
884
|
+
|
|
885
|
+
it('should not set data-spatial-nav-target when readOnly', async () => {
|
|
886
|
+
await usingAsync(new Injector(), async (injector) => {
|
|
887
|
+
const rootElement = document.getElementById('root') as HTMLDivElement
|
|
888
|
+
|
|
889
|
+
initializeShadeRoot({
|
|
890
|
+
injector,
|
|
891
|
+
rootElement,
|
|
892
|
+
jsxElement: <Rating value={3} readOnly />,
|
|
893
|
+
})
|
|
894
|
+
|
|
895
|
+
await flushUpdates()
|
|
896
|
+
|
|
897
|
+
const wrapper = document.querySelector('shade-rating') as HTMLElement
|
|
898
|
+
expect(wrapper.hasAttribute('data-spatial-nav-target')).toBe(false)
|
|
899
|
+
})
|
|
900
|
+
})
|
|
901
|
+
|
|
902
|
+
it('should not set data-spatial-nav-target when disabled', async () => {
|
|
903
|
+
await usingAsync(new Injector(), async (injector) => {
|
|
904
|
+
const rootElement = document.getElementById('root') as HTMLDivElement
|
|
905
|
+
|
|
906
|
+
initializeShadeRoot({
|
|
907
|
+
injector,
|
|
908
|
+
rootElement,
|
|
909
|
+
jsxElement: <Rating value={3} disabled />,
|
|
910
|
+
})
|
|
911
|
+
|
|
912
|
+
await flushUpdates()
|
|
913
|
+
|
|
914
|
+
const wrapper = document.querySelector('shade-rating') as HTMLElement
|
|
915
|
+
expect(wrapper.hasAttribute('data-spatial-nav-target')).toBe(false)
|
|
916
|
+
})
|
|
917
|
+
})
|
|
918
|
+
|
|
919
|
+
it('should set aria-orientation to horizontal', async () => {
|
|
920
|
+
await usingAsync(new Injector(), async (injector) => {
|
|
921
|
+
const rootElement = document.getElementById('root') as HTMLDivElement
|
|
922
|
+
|
|
923
|
+
initializeShadeRoot({
|
|
924
|
+
injector,
|
|
925
|
+
rootElement,
|
|
926
|
+
jsxElement: <Rating value={3} />,
|
|
927
|
+
})
|
|
928
|
+
|
|
929
|
+
await flushUpdates()
|
|
930
|
+
|
|
931
|
+
const wrapper = document.querySelector('shade-rating') as HTMLElement
|
|
932
|
+
expect(wrapper.getAttribute('aria-orientation')).toBe('horizontal')
|
|
933
|
+
})
|
|
934
|
+
})
|
|
935
|
+
|
|
936
|
+
it('should not preventDefault on ArrowRight when at max value', async () => {
|
|
937
|
+
await usingAsync(new Injector(), async (injector) => {
|
|
938
|
+
const rootElement = document.getElementById('root') as HTMLDivElement
|
|
939
|
+
const onchange = vi.fn()
|
|
940
|
+
|
|
941
|
+
initializeShadeRoot({
|
|
942
|
+
injector,
|
|
943
|
+
rootElement,
|
|
944
|
+
jsxElement: <Rating value={5} max={5} onValueChange={onchange} />,
|
|
945
|
+
})
|
|
946
|
+
|
|
947
|
+
await flushUpdates()
|
|
948
|
+
|
|
949
|
+
const ratingEl = document.querySelector('shade-rating') as HTMLElement
|
|
950
|
+
const event = new KeyboardEvent('keydown', { key: 'ArrowRight', bubbles: true, cancelable: true })
|
|
951
|
+
ratingEl.dispatchEvent(event)
|
|
952
|
+
|
|
953
|
+
await flushUpdates()
|
|
954
|
+
|
|
955
|
+
expect(onchange).not.toHaveBeenCalled()
|
|
956
|
+
expect(event.defaultPrevented).toBe(false)
|
|
957
|
+
})
|
|
958
|
+
})
|
|
959
|
+
|
|
960
|
+
it('should not preventDefault on ArrowLeft when at min value', async () => {
|
|
961
|
+
await usingAsync(new Injector(), async (injector) => {
|
|
962
|
+
const rootElement = document.getElementById('root') as HTMLDivElement
|
|
963
|
+
const onchange = vi.fn()
|
|
964
|
+
|
|
965
|
+
initializeShadeRoot({
|
|
966
|
+
injector,
|
|
967
|
+
rootElement,
|
|
968
|
+
jsxElement: <Rating value={0} onValueChange={onchange} />,
|
|
969
|
+
})
|
|
970
|
+
|
|
971
|
+
await flushUpdates()
|
|
972
|
+
|
|
973
|
+
const ratingEl = document.querySelector('shade-rating') as HTMLElement
|
|
974
|
+
const event = new KeyboardEvent('keydown', { key: 'ArrowLeft', bubbles: true, cancelable: true })
|
|
975
|
+
ratingEl.dispatchEvent(event)
|
|
976
|
+
|
|
977
|
+
await flushUpdates()
|
|
978
|
+
|
|
979
|
+
expect(onchange).not.toHaveBeenCalled()
|
|
980
|
+
expect(event.defaultPrevented).toBe(false)
|
|
981
|
+
})
|
|
982
|
+
})
|
|
983
|
+
|
|
984
|
+
it('should preventDefault on ArrowRight when value can increase', async () => {
|
|
985
|
+
await usingAsync(new Injector(), async (injector) => {
|
|
986
|
+
const rootElement = document.getElementById('root') as HTMLDivElement
|
|
987
|
+
const onchange = vi.fn()
|
|
988
|
+
|
|
989
|
+
initializeShadeRoot({
|
|
990
|
+
injector,
|
|
991
|
+
rootElement,
|
|
992
|
+
jsxElement: <Rating value={3} max={5} onValueChange={onchange} />,
|
|
993
|
+
})
|
|
994
|
+
|
|
995
|
+
await flushUpdates()
|
|
996
|
+
|
|
997
|
+
const ratingEl = document.querySelector('shade-rating') as HTMLElement
|
|
998
|
+
const event = new KeyboardEvent('keydown', { key: 'ArrowRight', bubbles: true, cancelable: true })
|
|
999
|
+
ratingEl.dispatchEvent(event)
|
|
1000
|
+
|
|
1001
|
+
await flushUpdates()
|
|
1002
|
+
|
|
1003
|
+
expect(onchange).toHaveBeenCalledWith(4)
|
|
1004
|
+
expect(event.defaultPrevented).toBe(true)
|
|
1005
|
+
})
|
|
1006
|
+
})
|
|
1007
|
+
|
|
1008
|
+
it('should preventDefault on ArrowLeft when value can decrease', async () => {
|
|
1009
|
+
await usingAsync(new Injector(), async (injector) => {
|
|
1010
|
+
const rootElement = document.getElementById('root') as HTMLDivElement
|
|
1011
|
+
const onchange = vi.fn()
|
|
1012
|
+
|
|
1013
|
+
initializeShadeRoot({
|
|
1014
|
+
injector,
|
|
1015
|
+
rootElement,
|
|
1016
|
+
jsxElement: <Rating value={3} onValueChange={onchange} />,
|
|
1017
|
+
})
|
|
1018
|
+
|
|
1019
|
+
await flushUpdates()
|
|
1020
|
+
|
|
1021
|
+
const ratingEl = document.querySelector('shade-rating') as HTMLElement
|
|
1022
|
+
const event = new KeyboardEvent('keydown', { key: 'ArrowLeft', bubbles: true, cancelable: true })
|
|
1023
|
+
ratingEl.dispatchEvent(event)
|
|
1024
|
+
|
|
1025
|
+
await flushUpdates()
|
|
1026
|
+
|
|
1027
|
+
expect(onchange).toHaveBeenCalledWith(2)
|
|
1028
|
+
expect(event.defaultPrevented).toBe(true)
|
|
1029
|
+
})
|
|
1030
|
+
})
|
|
1031
|
+
|
|
1032
|
+
it('should not preventDefault on ArrowUp or ArrowDown', async () => {
|
|
1033
|
+
await usingAsync(new Injector(), async (injector) => {
|
|
1034
|
+
const rootElement = document.getElementById('root') as HTMLDivElement
|
|
1035
|
+
const onchange = vi.fn()
|
|
1036
|
+
|
|
1037
|
+
initializeShadeRoot({
|
|
1038
|
+
injector,
|
|
1039
|
+
rootElement,
|
|
1040
|
+
jsxElement: <Rating value={3} onValueChange={onchange} />,
|
|
1041
|
+
})
|
|
1042
|
+
|
|
1043
|
+
await flushUpdates()
|
|
1044
|
+
|
|
1045
|
+
const ratingEl = document.querySelector('shade-rating') as HTMLElement
|
|
1046
|
+
|
|
1047
|
+
const upEvent = new KeyboardEvent('keydown', { key: 'ArrowUp', bubbles: true, cancelable: true })
|
|
1048
|
+
ratingEl.dispatchEvent(upEvent)
|
|
1049
|
+
|
|
1050
|
+
const downEvent = new KeyboardEvent('keydown', { key: 'ArrowDown', bubbles: true, cancelable: true })
|
|
1051
|
+
ratingEl.dispatchEvent(downEvent)
|
|
1052
|
+
|
|
1053
|
+
await flushUpdates()
|
|
1054
|
+
|
|
1055
|
+
expect(onchange).not.toHaveBeenCalled()
|
|
1056
|
+
expect(upEvent.defaultPrevented).toBe(false)
|
|
1057
|
+
expect(downEvent.defaultPrevented).toBe(false)
|
|
1058
|
+
})
|
|
1059
|
+
})
|
|
1060
|
+
})
|
|
866
1061
|
})
|
|
@@ -62,7 +62,7 @@ export type RatingProps = {
|
|
|
62
62
|
* keyboard navigation, and theme integration.
|
|
63
63
|
*/
|
|
64
64
|
export const Rating = Shade<RatingProps>({
|
|
65
|
-
|
|
65
|
+
customElementName: 'shade-rating',
|
|
66
66
|
css: {
|
|
67
67
|
display: 'inline-flex',
|
|
68
68
|
fontFamily: cssVariableTheme.typography.fontFamily,
|
|
@@ -114,8 +114,7 @@ export const Rating = Shade<RatingProps>({
|
|
|
114
114
|
|
|
115
115
|
'&:focus-visible': {
|
|
116
116
|
outline: 'none',
|
|
117
|
-
boxShadow: cssVariableTheme.
|
|
118
|
-
borderRadius: cssVariableTheme.shape.borderRadius.xs,
|
|
117
|
+
boxShadow: `0 0 0 2px ${cssVariableTheme.palette.primary.main} inset`,
|
|
119
118
|
},
|
|
120
119
|
|
|
121
120
|
'&[data-size="small"] .rating-star': {
|
|
@@ -159,46 +158,53 @@ export const Rating = Shade<RatingProps>({
|
|
|
159
158
|
useHostProps({
|
|
160
159
|
'data-size': props.size || 'medium',
|
|
161
160
|
style: { '--rating-color': color },
|
|
161
|
+
...(isInteractive ? { 'data-spatial-nav-target': '' } : {}),
|
|
162
162
|
...(props.disabled ? { 'data-disabled': '', 'aria-disabled': 'true' } : {}),
|
|
163
163
|
...(props.readOnly ? { 'data-readonly': '', 'aria-readonly': 'true' } : {}),
|
|
164
164
|
...(isInteractive
|
|
165
165
|
? {
|
|
166
166
|
role: 'slider',
|
|
167
|
-
|
|
167
|
+
tabIndex: 0,
|
|
168
168
|
'aria-valuenow': String(value),
|
|
169
169
|
'aria-valuemin': '0',
|
|
170
170
|
'aria-valuemax': String(max),
|
|
171
171
|
'aria-label': 'Rating',
|
|
172
|
+
'aria-orientation': 'horizontal',
|
|
172
173
|
onkeydown: (ev: KeyboardEvent) => {
|
|
173
174
|
const step = precision === 0.5 ? 0.5 : 1
|
|
174
|
-
let newValue: number
|
|
175
175
|
|
|
176
176
|
switch (ev.key) {
|
|
177
|
-
case 'ArrowRight':
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
177
|
+
case 'ArrowRight': {
|
|
178
|
+
const newValue = Math.min(value + step, max)
|
|
179
|
+
if (newValue !== value) {
|
|
180
|
+
ev.preventDefault()
|
|
181
|
+
props.onValueChange?.(newValue)
|
|
182
|
+
}
|
|
183
|
+
return
|
|
184
|
+
}
|
|
185
|
+
case 'ArrowLeft': {
|
|
186
|
+
const newValue = Math.max(value - step, 0)
|
|
187
|
+
if (newValue !== value) {
|
|
188
|
+
ev.preventDefault()
|
|
189
|
+
props.onValueChange?.(newValue)
|
|
190
|
+
}
|
|
191
|
+
return
|
|
192
|
+
}
|
|
187
193
|
case 'Home':
|
|
188
194
|
ev.preventDefault()
|
|
189
|
-
|
|
190
|
-
|
|
195
|
+
if (value !== 0) {
|
|
196
|
+
props.onValueChange?.(0)
|
|
197
|
+
}
|
|
198
|
+
return
|
|
191
199
|
case 'End':
|
|
192
200
|
ev.preventDefault()
|
|
193
|
-
|
|
194
|
-
|
|
201
|
+
if (value !== max) {
|
|
202
|
+
props.onValueChange?.(max)
|
|
203
|
+
}
|
|
204
|
+
return
|
|
195
205
|
default:
|
|
196
206
|
return
|
|
197
207
|
}
|
|
198
|
-
|
|
199
|
-
if (newValue !== value) {
|
|
200
|
-
props.onValueChange?.(newValue)
|
|
201
|
-
}
|
|
202
208
|
},
|
|
203
209
|
}
|
|
204
210
|
: {
|
|
@@ -68,7 +68,7 @@ const defaultTitles: Record<ResultStatus, string> = {
|
|
|
68
68
|
* Supports success, error, warning, info statuses and common HTTP error codes (403, 404, 500).
|
|
69
69
|
*/
|
|
70
70
|
export const Result = Shade<ResultProps>({
|
|
71
|
-
|
|
71
|
+
customElementName: 'shade-result',
|
|
72
72
|
css: {
|
|
73
73
|
display: 'flex',
|
|
74
74
|
flexDirection: 'column',
|
|
@@ -10,7 +10,7 @@ export type SkeletonProps = {
|
|
|
10
10
|
}
|
|
11
11
|
|
|
12
12
|
export const Skeleton = Shade<SkeletonProps>({
|
|
13
|
-
|
|
13
|
+
customElementName: 'shade-skeleton',
|
|
14
14
|
render: ({ props, useRef }) => {
|
|
15
15
|
const wrapperRef = useRef<HTMLDivElement>('wrapper')
|
|
16
16
|
const { delay = 1500 } = props
|