material 3.2.6 → 3.2.7
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/dist/components/badge/badge.d.ts +0 -59
- package/dist/components/badge/constants.d.ts +0 -15
- package/dist/components/badge/index.d.ts +0 -6
- package/dist/components/badge/types.d.ts +0 -244
- package/dist/components/bottom-app-bar/bottom-app-bar.d.ts +0 -10
- package/dist/components/bottom-app-bar/constants.d.ts +0 -9
- package/dist/components/bottom-app-bar/index.d.ts +0 -4
- package/dist/components/bottom-app-bar/types.d.ts +0 -76
- package/dist/components/bottom-sheet/bottom-sheet.d.ts +0 -21
- package/dist/components/bottom-sheet/constants.d.ts +0 -29
- package/dist/components/bottom-sheet/types.d.ts +0 -89
- package/dist/components/button/button.d.ts +0 -62
- package/dist/components/button/constants.d.ts +0 -41
- package/dist/components/button/index.d.ts +0 -4
- package/dist/components/button/types.d.ts +0 -347
- package/dist/components/button-group/button-group.d.ts +0 -51
- package/dist/components/button-group/constants.d.ts +0 -83
- package/dist/components/button-group/index.d.ts +0 -10
- package/dist/components/button-group/types.d.ts +0 -234
- package/dist/components/card/card.d.ts +0 -64
- package/dist/components/card/constants.d.ts +0 -33
- package/dist/components/card/content.d.ts +0 -86
- package/dist/components/card/index.d.ts +0 -66
- package/dist/components/card/types.d.ts +0 -366
- package/dist/components/carousel/carousel.d.ts +0 -22
- package/dist/components/carousel/constants.d.ts +0 -16
- package/dist/components/carousel/types.d.ts +0 -29
- package/dist/components/checkbox/checkbox.d.ts +0 -61
- package/dist/components/checkbox/constants.d.ts +0 -33
- package/dist/components/checkbox/index.d.ts +0 -25
- package/dist/components/checkbox/types.d.ts +0 -206
- package/dist/components/chips/chips.d.ts +0 -14
- package/dist/components/chips/constants.d.ts +0 -1
- package/dist/components/chips/factories.d.ts +0 -4
- package/dist/components/chips/types.d.ts +0 -278
- package/dist/components/datepicker/constants.d.ts +0 -56
- package/dist/components/datepicker/datepicker.d.ts +0 -5
- package/dist/components/datepicker/types.d.ts +12 -257
- package/dist/components/dialog/constants.d.ts +0 -65
- package/dist/components/dialog/dialog.d.ts +0 -86
- package/dist/components/dialog/index.d.ts +0 -12
- package/dist/components/dialog/types.d.ts +0 -511
- package/dist/components/divider/config.d.ts +0 -130
- package/dist/components/divider/constants.d.ts +0 -27
- package/dist/components/divider/divider.d.ts +0 -36
- package/dist/components/divider/index.d.ts +0 -29
- package/dist/components/divider/types.d.ts +0 -126
- package/dist/components/drawer/constants.d.ts +0 -53
- package/dist/components/drawer/drawer.d.ts +0 -56
- package/dist/components/drawer/index.d.ts +0 -4
- package/dist/components/drawer/types.d.ts +0 -200
- package/dist/components/extended-fab/constants.d.ts +0 -46
- package/dist/components/extended-fab/extended-fab.d.ts +0 -58
- package/dist/components/extended-fab/index.d.ts +0 -34
- package/dist/components/extended-fab/types.d.ts +0 -654
- package/dist/components/fab/constants.d.ts +0 -40
- package/dist/components/fab/fab.d.ts +0 -42
- package/dist/components/fab/index.d.ts +0 -33
- package/dist/components/fab/types.d.ts +0 -543
- package/dist/components/fab-menu/constants.d.ts +0 -22
- package/dist/components/fab-menu/fab-menu.d.ts +0 -36
- package/dist/components/fab-menu/types.d.ts +0 -80
- package/dist/components/icon-button/constants.d.ts +0 -90
- package/dist/components/icon-button/icon-button.d.ts +0 -83
- package/dist/components/icon-button/index.d.ts +0 -44
- package/dist/components/icon-button/types.d.ts +0 -314
- package/dist/components/index.d.ts +0 -9
- package/dist/components/list/constants.d.ts +0 -47
- package/dist/components/list/index.d.ts +0 -1
- package/dist/components/list/list.d.ts +0 -26
- package/dist/components/list/types.d.ts +0 -263
- package/dist/components/loading-indicator/constants.d.ts +0 -35
- package/dist/components/loading-indicator/features/renderer.d.ts +0 -14
- package/dist/components/loading-indicator/loading-indicator.d.ts +0 -6
- package/dist/components/loading-indicator/types.d.ts +0 -35
- package/dist/components/menu/constants.d.ts +0 -79
- package/dist/components/menu/index.d.ts +0 -25
- package/dist/components/menu/inner.d.ts +0 -3
- package/dist/components/menu/menu.d.ts +0 -26
- package/dist/components/menu/types.d.ts +0 -423
- package/dist/components/navigation-bar/navigation-bar.d.ts +0 -7
- package/dist/components/navigation-bar/types.d.ts +0 -25
- package/dist/components/navigation-rail/constants.d.ts +0 -2
- package/dist/components/navigation-rail/navigation-rail.d.ts +0 -5
- package/dist/components/navigation-rail/types.d.ts +0 -22
- package/dist/components/progress/constants.d.ts +24 -56
- package/dist/components/progress/progress.d.ts +0 -21
- package/dist/components/progress/types.d.ts +0 -251
- package/dist/components/radios/constants.d.ts +0 -22
- package/dist/components/radios/radios.d.ts +0 -5
- package/dist/components/radios/types.d.ts +0 -142
- package/dist/components/search/constants.d.ts +0 -59
- package/dist/components/search/search.d.ts +0 -32
- package/dist/components/search/types.d.ts +0 -159
- package/dist/components/select/constants.d.ts +0 -60
- package/dist/components/select/index.d.ts +0 -22
- package/dist/components/select/select.d.ts +0 -33
- package/dist/components/select/types.d.ts +0 -241
- package/dist/components/side-sheet/constants.d.ts +0 -28
- package/dist/components/side-sheet/side-sheet.d.ts +0 -21
- package/dist/components/side-sheet/types.d.ts +0 -82
- package/dist/components/slider/constants.d.ts +0 -86
- package/dist/components/slider/slider.d.ts +0 -16
- package/dist/components/slider/types.d.ts +0 -184
- package/dist/components/snackbar/constants.d.ts +0 -73
- package/dist/components/snackbar/snackbar.d.ts +0 -13
- package/dist/components/snackbar/types.d.ts +0 -147
- package/dist/components/split-button/constants.d.ts +0 -33
- package/dist/components/split-button/split-button.d.ts +0 -21
- package/dist/components/split-button/types.d.ts +0 -81
- package/dist/components/switch/constants.d.ts +0 -49
- package/dist/components/switch/switch.d.ts +0 -5
- package/dist/components/switch/types.d.ts +0 -80
- package/dist/components/tabs/constants.d.ts +0 -76
- package/dist/components/tabs/indicator.d.ts +0 -27
- package/dist/components/tabs/responsive.d.ts +0 -30
- package/dist/components/tabs/tab.d.ts +0 -13
- package/dist/components/tabs/tabs.d.ts +0 -24
- package/dist/components/tabs/types.d.ts +0 -335
- package/dist/components/tabs/utils.d.ts +0 -66
- package/dist/components/text-field/constants.d.ts +0 -82
- package/dist/components/text-field/features/trailing-icon.d.ts +0 -61
- package/dist/components/text-field/text-field.d.ts +0 -33
- package/dist/components/text-field/types.d.ts +0 -123
- package/dist/components/timepicker/constants.d.ts +0 -88
- package/dist/components/timepicker/types.d.ts +0 -268
- package/dist/components/toolbar/constants.d.ts +0 -27
- package/dist/components/toolbar/toolbar.d.ts +0 -25
- package/dist/components/toolbar/types.d.ts +0 -102
- package/dist/components/tooltip/constants.d.ts +0 -58
- package/dist/components/tooltip/tooltip.d.ts +0 -5
- package/dist/components/tooltip/types.d.ts +0 -140
- package/dist/components/top-app-bar/constants.d.ts +0 -41
- package/dist/components/top-app-bar/index.d.ts +0 -4
- package/dist/components/top-app-bar/top-app-bar.d.ts +0 -10
- package/dist/components/top-app-bar/types.d.ts +0 -94
- package/dist/core/canvas/animation.d.ts +0 -13
- package/dist/core/canvas/drawing.d.ts +18 -55
- package/dist/core/canvas/index.d.ts +0 -4
- package/dist/core/canvas/resize.d.ts +0 -13
- package/dist/core/canvas/utils.d.ts +0 -62
- package/dist/core/compose/base.d.ts +0 -22
- package/dist/core/compose/cleanup.d.ts +0 -2
- package/dist/core/compose/component.d.ts +0 -31
- package/dist/core/compose/features/badge.d.ts +0 -25
- package/dist/core/compose/features/checkable.d.ts +0 -36
- package/dist/core/compose/features/debounce.d.ts +0 -57
- package/dist/core/compose/features/disabled.d.ts +0 -31
- package/dist/core/compose/features/events.d.ts +0 -38
- package/dist/core/compose/features/icon.d.ts +0 -49
- package/dist/core/compose/features/input.d.ts +0 -82
- package/dist/core/compose/features/lifecycle.d.ts +0 -36
- package/dist/core/compose/features/position.d.ts +0 -27
- package/dist/core/compose/features/ripple.d.ts +0 -29
- package/dist/core/compose/features/size.d.ts +0 -9
- package/dist/core/compose/features/style.d.ts +0 -9
- package/dist/core/compose/features/text.d.ts +0 -45
- package/dist/core/compose/features/textinput.d.ts +0 -88
- package/dist/core/compose/features/textlabel.d.ts +0 -44
- package/dist/core/compose/features/throttle.d.ts +0 -54
- package/dist/core/compose/features/track.d.ts +0 -34
- package/dist/core/compose/features/variant.d.ts +0 -9
- package/dist/core/compose/features/withEvents.d.ts +0 -30
- package/dist/core/compose/index.d.ts +0 -4
- package/dist/core/compose/pipe.d.ts +0 -55
- package/dist/core/compose/utils/type-guards.d.ts +0 -15
- package/dist/core/config/component.d.ts +0 -45
- package/dist/core/config/global.d.ts +0 -43
- package/dist/core/config.d.ts +0 -59
- package/dist/core/dom/attributes.d.ts +0 -41
- package/dist/core/dom/classes.d.ts +0 -49
- package/dist/core/dom/create.d.ts +0 -98
- package/dist/core/dom/events.d.ts +0 -52
- package/dist/core/dom/focus.d.ts +0 -32
- package/dist/core/dom/html.d.ts +0 -24
- package/dist/core/dom/layer.d.ts +0 -98
- package/dist/core/dom/roving.d.ts +0 -19
- package/dist/core/index.d.ts +0 -9
- package/dist/core/navigation/destinations.d.ts +0 -23
- package/dist/core/shapes/cubic.d.ts +24 -19
- package/dist/core/shapes/material.d.ts +0 -64
- package/dist/core/shapes/polygon.d.ts +6 -16
- package/dist/core/state/emitter.d.ts +0 -36
- package/dist/core/state/events.d.ts +0 -29
- package/dist/core/state/store.d.ts +0 -70
- package/dist/core/theme/index.d.ts +0 -3
- package/dist/core/theme/shape.d.ts +0 -7
- package/dist/core/theme/tokens.d.ts +48 -32
- package/dist/core/utils/background.d.ts +0 -29
- package/dist/core/utils/color.d.ts +0 -13
- package/dist/core/utils/index.d.ts +0 -11
- package/dist/core/utils/mobile.d.ts +0 -31
- package/dist/core/utils/object.d.ts +0 -11
- package/dist/core/utils/performance.d.ts +0 -70
- package/dist/core/utils/theme.d.ts +0 -36
- package/dist/core/utils/url.d.ts +0 -17
- package/dist/elements/adapter.d.ts +13 -62
- package/dist/elements/badge.d.ts +0 -17
- package/dist/elements/bottom-app-bar.d.ts +7 -17
- package/dist/elements/bottom-sheet.d.ts +9 -38
- package/dist/elements/button-group.d.ts +0 -31
- package/dist/elements/button.d.ts +0 -18
- package/dist/elements/card.d.ts +8 -24
- package/dist/elements/carousel.d.ts +5 -29
- package/dist/elements/checkbox.d.ts +5 -15
- package/dist/elements/chips.d.ts +0 -33
- package/dist/elements/datepicker.d.ts +4 -48
- package/dist/elements/define.d.ts +3 -161
- package/dist/elements/dialog.d.ts +8 -39
- package/dist/elements/divider.d.ts +0 -14
- package/dist/elements/drawer.d.ts +0 -35
- package/dist/elements/extended-fab.d.ts +6 -18
- package/dist/elements/fab-menu.d.ts +5 -30
- package/dist/elements/fab.d.ts +4 -17
- package/dist/elements/icon-button.d.ts +5 -26
- package/dist/elements/index.d.ts +0 -16
- package/dist/elements/list.d.ts +0 -34
- package/dist/elements/loading-indicator.d.ts +4 -13
- package/dist/elements/menu.d.ts +5 -51
- package/dist/elements/navigation-bar.d.ts +4 -29
- package/dist/elements/navigation-rail.d.ts +8 -49
- package/dist/elements/preupgrade/badge.css +1 -1
- package/dist/elements/preupgrade/bottom-app-bar.css +1 -1
- package/dist/elements/preupgrade/bottom-sheet.css +1 -1
- package/dist/elements/preupgrade/button-group.css +1 -1
- package/dist/elements/preupgrade/button.css +1 -1
- package/dist/elements/preupgrade/card.css +1 -1
- package/dist/elements/preupgrade/carousel.css +1 -1
- package/dist/elements/preupgrade/checkbox.css +1 -1
- package/dist/elements/preupgrade/chips.css +1 -1
- package/dist/elements/preupgrade/datepicker.css +1 -1
- package/dist/elements/preupgrade/dialog.css +1 -1
- package/dist/elements/preupgrade/divider.css +1 -1
- package/dist/elements/preupgrade/drawer.css +1 -1
- package/dist/elements/preupgrade/extended-fab.css +1 -1
- package/dist/elements/preupgrade/fab-menu.css +1 -1
- package/dist/elements/preupgrade/fab.css +1 -1
- package/dist/elements/preupgrade/icon-button.css +1 -1
- package/dist/elements/preupgrade/list.css +1 -1
- package/dist/elements/preupgrade/loading-indicator.css +1 -1
- package/dist/elements/preupgrade/menu.css +1 -1
- package/dist/elements/preupgrade/navigation-bar.css +1 -1
- package/dist/elements/preupgrade/navigation-rail.css +1 -1
- package/dist/elements/preupgrade/progress.css +1 -1
- package/dist/elements/preupgrade/radios.css +1 -1
- package/dist/elements/preupgrade/search.css +1 -1
- package/dist/elements/preupgrade/select.css +1 -1
- package/dist/elements/preupgrade/side-sheet.css +1 -1
- package/dist/elements/preupgrade/slider.css +1 -1
- package/dist/elements/preupgrade/snackbar.css +1 -1
- package/dist/elements/preupgrade/split-button.css +1 -1
- package/dist/elements/preupgrade/switch.css +1 -1
- package/dist/elements/preupgrade/tabs.css +1 -1
- package/dist/elements/preupgrade/text-field.css +1 -1
- package/dist/elements/preupgrade/timepicker.css +1 -1
- package/dist/elements/preupgrade/toolbar.css +1 -1
- package/dist/elements/preupgrade/tooltip.css +1 -1
- package/dist/elements/preupgrade/top-app-bar.css +1 -1
- package/dist/elements/preupgrade.css +1 -1
- package/dist/elements/preupgrade.d.ts +0 -1
- package/dist/elements/progress.d.ts +0 -15
- package/dist/elements/radios.d.ts +0 -22
- package/dist/elements/search.d.ts +5 -53
- package/dist/elements/select.d.ts +0 -31
- package/dist/elements/side-sheet.d.ts +7 -29
- package/dist/elements/slider.d.ts +3 -22
- package/dist/elements/snackbar.d.ts +4 -28
- package/dist/elements/split-button.d.ts +0 -30
- package/dist/elements/styles.d.ts +0 -63
- package/dist/elements/switch.d.ts +5 -17
- package/dist/elements/tabs.d.ts +0 -22
- package/dist/elements/text-field.d.ts +4 -38
- package/dist/elements/timepicker.d.ts +4 -44
- package/dist/elements/toolbar.d.ts +8 -25
- package/dist/elements/tooltip.d.ts +4 -30
- package/dist/elements/top-app-bar.d.ts +7 -23
- package/dist/index.d.ts +0 -11
- package/dist/package.json +1 -1
- package/dist/react/create.d.ts +0 -42
- package/dist/react/index.d.ts +0 -6
- package/dist/react/jsx.d.ts +0 -13
- package/dist/solid/create.d.ts +0 -48
- package/dist/solid/index.d.ts +0 -6
- package/dist/solid/jsx.d.ts +0 -9
- package/dist/ssr/index.d.ts +0 -49
- package/dist/ssr/solid.d.ts +0 -4
- package/dist/ssr/svelte.d.ts +0 -4
- package/dist/ssr/vue.d.ts +0 -4
- package/dist/styles/badge.css +1 -1
- package/dist/styles/base.css +1 -1
- package/dist/styles/bottom-app-bar.css +1 -1
- package/dist/styles/bottom-sheet.css +1 -1
- package/dist/styles/button-group.css +1 -1
- package/dist/styles/button.css +1 -1
- package/dist/styles/card.css +1 -1
- package/dist/styles/carousel.css +1 -1
- package/dist/styles/checkbox.css +1 -1
- package/dist/styles/chips.css +1 -1
- package/dist/styles/contrast.css +1 -1
- package/dist/styles/datepicker.css +1 -1
- package/dist/styles/dialog.css +1 -1
- package/dist/styles/divider.css +1 -1
- package/dist/styles/drawer.css +1 -1
- package/dist/styles/extended-fab.css +1 -1
- package/dist/styles/fab-menu.css +1 -1
- package/dist/styles/fab.css +1 -1
- package/dist/styles/icon-button.css +1 -1
- package/dist/styles/list.css +1 -1
- package/dist/styles/loading-indicator.css +1 -1
- package/dist/styles/menu.css +1 -1
- package/dist/styles/navigation-bar.css +1 -1
- package/dist/styles/navigation-rail.css +1 -1
- package/dist/styles/progress.css +1 -1
- package/dist/styles/radios.css +1 -1
- package/dist/styles/search.css +1 -1
- package/dist/styles/select.css +1 -1
- package/dist/styles/side-sheet.css +1 -1
- package/dist/styles/slider.css +1 -1
- package/dist/styles/snackbar.css +1 -1
- package/dist/styles/split-button.css +1 -1
- package/dist/styles/switch.css +1 -1
- package/dist/styles/tabs.css +1 -1
- package/dist/styles/text-field.css +1 -1
- package/dist/styles/timepicker.css +1 -1
- package/dist/styles/toolbar.css +1 -1
- package/dist/styles/tooltip.css +1 -1
- package/dist/styles/top-app-bar.css +1 -1
- package/dist/styles/typography.css +1 -1
- package/dist/styles/utilities.css +1 -1
- package/dist/styles.css +1 -1
- package/dist/svelte/runtime.d.ts +8 -62
- package/dist/themes/autumn-contrast.css +1 -1
- package/dist/themes/autumn.css +1 -1
- package/dist/themes/baseline-contrast.css +1 -1
- package/dist/themes/baseline.css +1 -1
- package/dist/themes/brownbeige-contrast.css +1 -1
- package/dist/themes/brownbeige.css +1 -1
- package/dist/themes/content-contrast.css +1 -1
- package/dist/themes/content.css +1 -1
- package/dist/themes/desert-contrast.css +1 -1
- package/dist/themes/desert.css +1 -1
- package/dist/themes/expressive-contrast.css +1 -1
- package/dist/themes/expressive.css +1 -1
- package/dist/themes/fidelity-contrast.css +1 -1
- package/dist/themes/fidelity.css +1 -1
- package/dist/themes/forest-contrast.css +1 -1
- package/dist/themes/forest.css +1 -1
- package/dist/themes/fruit-salad-contrast.css +1 -1
- package/dist/themes/fruit-salad.css +1 -1
- package/dist/themes/highcontrast-contrast.css +1 -1
- package/dist/themes/highcontrast.css +1 -1
- package/dist/themes/monochrome-contrast.css +1 -1
- package/dist/themes/monochrome.css +1 -1
- package/dist/themes/neutral-contrast.css +1 -1
- package/dist/themes/neutral.css +1 -1
- package/dist/themes/ocean-contrast.css +1 -1
- package/dist/themes/ocean.css +1 -1
- package/dist/themes/rainbow-contrast.css +1 -1
- package/dist/themes/rainbow.css +1 -1
- package/dist/themes/sageivory-contrast.css +1 -1
- package/dist/themes/sageivory.css +1 -1
- package/dist/themes/spring-contrast.css +1 -1
- package/dist/themes/spring.css +1 -1
- package/dist/themes/summer-contrast.css +1 -1
- package/dist/themes/summer.css +1 -1
- package/dist/themes/sunset-contrast.css +1 -1
- package/dist/themes/sunset.css +1 -1
- package/dist/themes/tealcaramel-contrast.css +1 -1
- package/dist/themes/tealcaramel.css +1 -1
- package/dist/themes/vibrant-contrast.css +1 -1
- package/dist/themes/vibrant.css +1 -1
- package/dist/vue/create.d.ts +15 -58
- package/dist/vue/index.d.ts +0 -6
- package/package.json +1 -1
- package/dist/components/badge/api.d.ts +0 -41
- package/dist/components/badge/config.d.ts +0 -631
- package/dist/components/badge/features.d.ts +0 -38
- package/dist/components/bottom-app-bar/config.d.ts +0 -16
- package/dist/components/bottom-sheet/api.d.ts +0 -44
- package/dist/components/bottom-sheet/config.d.ts +0 -547
- package/dist/components/bottom-sheet/features/drag.d.ts +0 -35
- package/dist/components/bottom-sheet/features/index.d.ts +0 -3
- package/dist/components/bottom-sheet/features/state.d.ts +0 -31
- package/dist/components/bottom-sheet/features/structure.d.ts +0 -26
- package/dist/components/button/api.d.ts +0 -68
- package/dist/components/button/config.d.ts +0 -594
- package/dist/components/button/features/progress.d.ts +0 -43
- package/dist/components/button/features/toggle.d.ts +0 -43
- package/dist/components/button-group/config.d.ts +0 -147
- package/dist/components/card/api.d.ts +0 -24
- package/dist/components/card/config.d.ts +0 -635
- package/dist/components/card/features.d.ts +0 -124
- package/dist/components/carousel/api.d.ts +0 -20
- package/dist/components/carousel/arrangement.d.ts +0 -23
- package/dist/components/carousel/config.d.ts +0 -540
- package/dist/components/carousel/features/index.d.ts +0 -2
- package/dist/components/carousel/features/scroll.d.ts +0 -20
- package/dist/components/carousel/features/slides.d.ts +0 -18
- package/dist/components/carousel/keylines.d.ts +0 -68
- package/dist/components/carousel/strategy.d.ts +0 -36
- package/dist/components/checkbox/api.d.ts +0 -7
- package/dist/components/checkbox/config.d.ts +0 -568
- package/dist/components/chips/api.d.ts +0 -62
- package/dist/components/chips/chip/chip.d.ts +0 -4
- package/dist/components/chips/chip/constants.d.ts +0 -38
- package/dist/components/chips/chip/index.d.ts +0 -1
- package/dist/components/chips/config.d.ts +0 -583
- package/dist/components/chips/features/chip-items.d.ts +0 -39
- package/dist/components/chips/features/container.d.ts +0 -75
- package/dist/components/chips/features/controller.d.ts +0 -61
- package/dist/components/chips/features/dom.d.ts +0 -24
- package/dist/components/chips/features/index.d.ts +0 -4
- package/dist/components/chips/schema.d.ts +0 -35
- package/dist/components/datepicker/api.d.ts +0 -7
- package/dist/components/datepicker/config.d.ts +0 -542
- package/dist/components/datepicker/render.d.ts +0 -3
- package/dist/components/datepicker/utils.d.ts +0 -84
- package/dist/components/dialog/api.d.ts +0 -66
- package/dist/components/dialog/config.d.ts +0 -583
- package/dist/components/dialog/features.d.ts +0 -42
- package/dist/components/divider/features.d.ts +0 -6
- package/dist/components/drawer/api.d.ts +0 -55
- package/dist/components/drawer/config.d.ts +0 -620
- package/dist/components/drawer/features/headline.d.ts +0 -27
- package/dist/components/drawer/features/index.d.ts +0 -3
- package/dist/components/drawer/features/items.d.ts +0 -32
- package/dist/components/drawer/features/state.d.ts +0 -22
- package/dist/components/extended-fab/api.d.ts +0 -96
- package/dist/components/extended-fab/config.d.ts +0 -600
- package/dist/components/fab/api.d.ts +0 -74
- package/dist/components/fab/config.d.ts +0 -596
- package/dist/components/fab-menu/config.d.ts +0 -11
- package/dist/components/fab-menu/stagger.d.ts +0 -10
- package/dist/components/icon-button/api.d.ts +0 -84
- package/dist/components/icon-button/config.d.ts +0 -624
- package/dist/components/icon-button/features/toggle.d.ts +0 -133
- package/dist/components/list/api.d.ts +0 -156
- package/dist/components/list/config.d.ts +0 -625
- package/dist/components/list/features/anatomy.d.ts +0 -6
- package/dist/components/list/features/index.d.ts +0 -2
- package/dist/components/list/features/renderer.d.ts +0 -8
- package/dist/components/list/features/selection.d.ts +0 -3
- package/dist/components/loading-indicator/api.d.ts +0 -14
- package/dist/components/loading-indicator/config.d.ts +0 -557
- package/dist/components/loading-indicator/features/motion.d.ts +0 -22
- package/dist/components/menu/api.d.ts +0 -63
- package/dist/components/menu/config.d.ts +0 -576
- package/dist/components/menu/features/controller.d.ts +0 -15
- package/dist/components/menu/features/index.d.ts +0 -5
- package/dist/components/menu/features/keyboard.d.ts +0 -23
- package/dist/components/menu/features/layer.d.ts +0 -15
- package/dist/components/menu/features/loader.d.ts +0 -35
- package/dist/components/menu/features/opener.d.ts +0 -16
- package/dist/components/menu/features/position.d.ts +0 -18
- package/dist/components/menu/features/registry.d.ts +0 -37
- package/dist/components/menu/features/submenu.d.ts +0 -28
- package/dist/components/menu/features/tasks.d.ts +0 -9
- package/dist/components/navigation-bar/config.d.ts +0 -2
- package/dist/components/navigation-rail/config.d.ts +0 -2
- package/dist/components/progress/api.d.ts +0 -81
- package/dist/components/progress/config.d.ts +0 -620
- package/dist/components/progress/features/canvas.d.ts +0 -60
- package/dist/components/progress/features/circular.d.ts +0 -19
- package/dist/components/progress/features/colors.d.ts +0 -17
- package/dist/components/progress/features/index.d.ts +0 -8
- package/dist/components/progress/features/linear.d.ts +0 -25
- package/dist/components/progress/features/motion.d.ts +0 -43
- package/dist/components/progress/features/resize-observer.d.ts +0 -5
- package/dist/components/progress/features/state.d.ts +0 -44
- package/dist/components/radios/api.d.ts +0 -37
- package/dist/components/radios/config.d.ts +0 -568
- package/dist/components/radios/radio.d.ts +0 -26
- package/dist/components/search/api.d.ts +0 -63
- package/dist/components/search/config.d.ts +0 -657
- package/dist/components/search/features/index.d.ts +0 -4
- package/dist/components/search/features/input.d.ts +0 -93
- package/dist/components/search/features/states.d.ts +0 -111
- package/dist/components/search/features/structure.d.ts +0 -16
- package/dist/components/search/features/suggestions.d.ts +0 -60
- package/dist/components/select/api.d.ts +0 -8
- package/dist/components/select/config.d.ts +0 -18
- package/dist/components/select/features.d.ts +0 -14
- package/dist/components/side-sheet/api.d.ts +0 -34
- package/dist/components/side-sheet/config.d.ts +0 -547
- package/dist/components/side-sheet/features/index.d.ts +0 -2
- package/dist/components/side-sheet/features/state.d.ts +0 -28
- package/dist/components/side-sheet/features/structure.d.ts +0 -21
- package/dist/components/slider/api.d.ts +0 -65
- package/dist/components/slider/config.d.ts +0 -605
- package/dist/components/slider/features/axis.d.ts +0 -42
- package/dist/components/slider/features/controller.d.ts +0 -528
- package/dist/components/slider/features/dom.d.ts +0 -22
- package/dist/components/slider/features/handlers.d.ts +0 -16
- package/dist/components/slider/features/index.d.ts +0 -5
- package/dist/components/slider/features/range.d.ts +0 -14
- package/dist/components/slider/features/states.d.ts +0 -76
- package/dist/components/slider/features/tracks.d.ts +0 -50
- package/dist/components/snackbar/api.d.ts +0 -7
- package/dist/components/snackbar/config.d.ts +0 -596
- package/dist/components/snackbar/features.d.ts +0 -26
- package/dist/components/snackbar/layer.d.ts +0 -23
- package/dist/components/snackbar/position.d.ts +0 -16
- package/dist/components/snackbar/queue.d.ts +0 -15
- package/dist/components/split-button/api.d.ts +0 -14
- package/dist/components/split-button/config.d.ts +0 -553
- package/dist/components/split-button/features/buttons.d.ts +0 -8
- package/dist/components/split-button/features/menu.d.ts +0 -10
- package/dist/components/switch/api.d.ts +0 -7
- package/dist/components/switch/config.d.ts +0 -558
- package/dist/components/switch/features.d.ts +0 -63
- package/dist/components/tabs/api.d.ts +0 -54
- package/dist/components/tabs/config.d.ts +0 -31
- package/dist/components/tabs/features.d.ts +0 -131
- package/dist/components/tabs/scroll-indicators.d.ts +0 -18
- package/dist/components/tabs/state.d.ts +0 -48
- package/dist/components/text-field/api.d.ts +0 -29
- package/dist/components/text-field/config.d.ts +0 -560
- package/dist/components/text-field/features/counter.d.ts +0 -29
- package/dist/components/text-field/features/density.d.ts +0 -28
- package/dist/components/text-field/features/error.d.ts +0 -55
- package/dist/components/text-field/features/field.d.ts +0 -37
- package/dist/components/text-field/features/index.d.ts +0 -20
- package/dist/components/text-field/features/leading-icon.d.ts +0 -68
- package/dist/components/text-field/features/placement.d.ts +0 -30
- package/dist/components/text-field/features/prefix-text.d.ts +0 -67
- package/dist/components/text-field/features/required.d.ts +0 -33
- package/dist/components/text-field/features/suffix-text.d.ts +0 -67
- package/dist/components/text-field/features/supporting-text.d.ts +0 -59
- package/dist/components/timepicker/api.d.ts +0 -26
- package/dist/components/timepicker/config.d.ts +0 -570
- package/dist/components/timepicker/dial.d.ts +0 -35
- package/dist/components/timepicker/render.d.ts +0 -9
- package/dist/components/timepicker/utils.d.ts +0 -55
- package/dist/components/toolbar/config.d.ts +0 -19
- package/dist/components/tooltip/api.d.ts +0 -18
- package/dist/components/tooltip/config.d.ts +0 -563
- package/dist/components/top-app-bar/config.d.ts +0 -16
- package/dist/core/compose/features/constants.d.ts +0 -8
- package/dist/core/dom/direction.d.ts +0 -16
- package/dist/core/dom/form-value.d.ts +0 -24
- package/dist/core/dom/utils.d.ts +0 -33
- package/dist/core/navigation/ripple.d.ts +0 -2
- package/dist/core/utils/attributes.d.ts +0 -29
- package/dist/core/utils/validate.d.ts +0 -73
- package/dist/core/utils/warn.d.ts +0 -16
- package/dist/elements/form-button.d.ts +0 -29
- package/dist/elements/lifecycle.d.ts +0 -4
- package/dist/elements/sheet.d.ts +0 -44
- package/dist/react/shadow.d.ts +0 -2
- package/dist/solid/shadow.d.ts +0 -3
- package/dist/vue/shadow.d.ts +0 -7
|
@@ -1,120 +1,38 @@
|
|
|
1
1
|
import { SIDE_SHEET_VARIANTS, SIDE_SHEET_POSITIONS } from "./constants.js";
|
|
2
|
-
/** Docked or floating over a scrim */
|
|
3
2
|
export type SideSheetVariant = (typeof SIDE_SHEET_VARIANTS)[keyof typeof SIDE_SHEET_VARIANTS];
|
|
4
|
-
/** Which edge it docks to, in logical terms */
|
|
5
3
|
export type SideSheetPosition = (typeof SIDE_SHEET_POSITIONS)[keyof typeof SIDE_SHEET_POSITIONS];
|
|
6
|
-
/** Handlers accepted at creation, one per event name */
|
|
7
4
|
export interface SideSheetEventHandlers {
|
|
8
5
|
open?: () => void;
|
|
9
6
|
close?: () => void;
|
|
10
7
|
}
|
|
11
|
-
/**
|
|
12
|
-
* Configuration for the side sheet.
|
|
13
|
-
*
|
|
14
|
-
* @category Components
|
|
15
|
-
*/
|
|
16
8
|
export interface SideSheetConfig {
|
|
17
|
-
/**
|
|
18
|
-
* Standard sheets dock beside the page and leave it usable; modal sheets
|
|
19
|
-
* float over it behind a scrim and take focus.
|
|
20
|
-
* @default 'modal'
|
|
21
|
-
*/
|
|
22
9
|
variant?: SideSheetVariant;
|
|
23
|
-
/**
|
|
24
|
-
* Which edge to dock to. Logical, so `end` follows the writing direction.
|
|
25
|
-
* @default 'end'
|
|
26
|
-
*/
|
|
27
10
|
position?: SideSheetPosition;
|
|
28
|
-
/**
|
|
29
|
-
* Headline in the header. Also names the sheet for assistive technology,
|
|
30
|
-
* through `aria-labelledby`.
|
|
31
|
-
*/
|
|
32
11
|
title?: string;
|
|
33
|
-
/** Body of the sheet, as markup or an element */
|
|
34
12
|
content?: string | HTMLElement;
|
|
35
|
-
/**
|
|
36
|
-
* Width in pixels. Capped by `maxWidth`.
|
|
37
|
-
* @default 256
|
|
38
|
-
*/
|
|
39
13
|
width?: number;
|
|
40
|
-
/**
|
|
41
|
-
* The sheet never grows past this, so it does not take over a wide window.
|
|
42
|
-
* @default 400
|
|
43
|
-
*/
|
|
44
14
|
maxWidth?: number;
|
|
45
|
-
/**
|
|
46
|
-
* Whether the header carries a close button.
|
|
47
|
-
* @default true
|
|
48
|
-
*/
|
|
49
15
|
closeButton?: boolean;
|
|
50
|
-
/**
|
|
51
|
-
* Whether a click on the scrim closes a modal sheet. Standard sheets have no
|
|
52
|
-
* scrim, so this does nothing for them.
|
|
53
|
-
* @default true
|
|
54
|
-
*/
|
|
55
16
|
closeOnScrimClick?: boolean;
|
|
56
|
-
/**
|
|
57
|
-
* Whether Escape closes it.
|
|
58
|
-
*
|
|
59
|
-
* For a modal sheet Escape is a key press, handled by the topmost open
|
|
60
|
-
* modal only, after whatever is open inside it has had the key: `false`
|
|
61
|
-
* holds for any number of presses. The remaining limit, with
|
|
62
|
-
* `layer: "top"`: a close request that is not a key press (a back gesture)
|
|
63
|
-
* is the browser's `cancel`, which it forces on the third refusal in a row.
|
|
64
|
-
* @default true
|
|
65
|
-
*/
|
|
66
17
|
closeOnEscape?: boolean;
|
|
67
|
-
/** Whether the sheet starts open */
|
|
68
18
|
open?: boolean;
|
|
69
|
-
/** Where to mount the sheet. Defaults to `document.body` */
|
|
70
19
|
container?: HTMLElement;
|
|
71
|
-
/**
|
|
72
|
-
* `"top"` makes a modal sheet's root a `<dialog>` element, rendered in
|
|
73
|
-
* `container` like any sheet, and opens it with `showModal()`: in the
|
|
74
|
-
* browser's top layer, above every z-index and outside any clipping
|
|
75
|
-
* ancestor, with the rest of the page inert. The scrim is its `::backdrop`,
|
|
76
|
-
* and Escape reaches the sheet as the dialog's `cancel` event. The sheet
|
|
77
|
-
* slides as without it.
|
|
78
|
-
*
|
|
79
|
-
* A standard sheet stays in the page, and where the browser has no
|
|
80
|
-
* `showModal()` the sheet behaves as without it.
|
|
81
|
-
*/
|
|
82
20
|
layer?: "top";
|
|
83
|
-
/** Handlers registered at creation, equivalent to calling `on` for each */
|
|
84
21
|
on?: SideSheetEventHandlers;
|
|
85
|
-
/** Extra classes for the root element */
|
|
86
22
|
class?: string;
|
|
87
|
-
/** @internal */
|
|
88
23
|
prefix?: string;
|
|
89
|
-
/** @internal */
|
|
90
24
|
componentName?: string;
|
|
91
25
|
}
|
|
92
|
-
/**
|
|
93
|
-
* A side sheet instance.
|
|
94
|
-
*
|
|
95
|
-
* @category Components
|
|
96
|
-
*/
|
|
97
26
|
export interface SideSheetComponent {
|
|
98
|
-
/** The root element, which holds the scrim and the container */
|
|
99
27
|
element: HTMLElement;
|
|
100
|
-
/** Opens the sheet */
|
|
101
28
|
open: () => SideSheetComponent;
|
|
102
|
-
/** Closes the sheet */
|
|
103
29
|
close: () => SideSheetComponent;
|
|
104
|
-
/** Opens it if closed, closes it if open */
|
|
105
30
|
toggle: () => SideSheetComponent;
|
|
106
|
-
/** Whether the sheet is showing */
|
|
107
31
|
isOpen: () => boolean;
|
|
108
|
-
/** Replaces the body */
|
|
109
32
|
setContent: (content: string | HTMLElement) => SideSheetComponent;
|
|
110
|
-
/** Replaces the headline */
|
|
111
33
|
setTitle: (title: string) => SideSheetComponent;
|
|
112
|
-
/** Adds an event listener */
|
|
113
34
|
on: <T extends keyof SideSheetEventHandlers>(event: T, handler: NonNullable<SideSheetEventHandlers[T]>) => SideSheetComponent;
|
|
114
|
-
/** Removes an event listener */
|
|
115
35
|
off: <T extends keyof SideSheetEventHandlers>(event: T, handler: NonNullable<SideSheetEventHandlers[T]>) => SideSheetComponent;
|
|
116
|
-
/** Removes the sheet from the page and releases its listeners */
|
|
117
36
|
destroy: () => void;
|
|
118
|
-
/** Prefixes a class name, for styling hooks */
|
|
119
37
|
getClass: (name: string) => string;
|
|
120
38
|
}
|
|
@@ -1,155 +1,69 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Available slider color variants
|
|
3
|
-
* @category Components
|
|
4
|
-
*/
|
|
5
1
|
export declare const SLIDER_COLORS: {
|
|
6
|
-
/** Primary color variant */
|
|
7
2
|
readonly PRIMARY: "primary";
|
|
8
|
-
/** Secondary color variant */
|
|
9
3
|
readonly SECONDARY: "secondary";
|
|
10
|
-
/** Tertiary color variant */
|
|
11
4
|
readonly TERTIARY: "tertiary";
|
|
12
|
-
/** Error color variant */
|
|
13
5
|
readonly ERROR: "error";
|
|
14
6
|
};
|
|
15
|
-
/**
|
|
16
|
-
* Available slider size variants
|
|
17
|
-
* @category Components
|
|
18
|
-
*/
|
|
19
7
|
export declare const SLIDER_SIZES: {
|
|
20
|
-
/** Extra small size (default) - 16px track height */
|
|
21
8
|
readonly XS: 16;
|
|
22
|
-
/** Small size - 24px track height */
|
|
23
9
|
readonly S: 24;
|
|
24
|
-
/** Medium size - 40px track height */
|
|
25
10
|
readonly M: 40;
|
|
26
|
-
/** Large size - 56px track height */
|
|
27
11
|
readonly L: 56;
|
|
28
|
-
/** Extra large size - 96px track height */
|
|
29
12
|
readonly XL: 96;
|
|
30
13
|
};
|
|
31
|
-
/**
|
|
32
|
-
* Slider component size type
|
|
33
|
-
* @category Components
|
|
34
|
-
*/
|
|
35
14
|
export type SliderSize = keyof typeof SLIDER_SIZES | number;
|
|
36
|
-
/**
|
|
37
|
-
* Slider component measurements
|
|
38
|
-
* @category Components
|
|
39
|
-
*/
|
|
40
15
|
export declare const SLIDER_MEASUREMENTS: {
|
|
41
|
-
/** Handle size in pixels */
|
|
42
16
|
readonly HANDLE_SIZE: 16;
|
|
43
|
-
/** Handle height for XS and S sizes in pixels (M3: 44dp) */
|
|
44
17
|
readonly SMALL_HANDLE_HEIGHT: 44;
|
|
45
|
-
/** Handle height offset for M, L, XL sizes (added to track height: 52, 68, 108dp) */
|
|
46
18
|
readonly HANDLE_HEIGHT_OFFSET: 12;
|
|
47
|
-
/** Minimum container height in pixels (M3 minimum touch target) */
|
|
48
19
|
readonly MIN_HEIGHT: 48;
|
|
49
|
-
/** Tick size in pixels */
|
|
50
20
|
readonly TICK_SIZE: 4;
|
|
51
|
-
/** Dot size in pixels */
|
|
52
21
|
readonly DOT_SIZE: 4;
|
|
53
|
-
/** Handle gap pixels */
|
|
54
22
|
readonly HANDLE_GAP: 6;
|
|
55
23
|
};
|
|
56
|
-
/**
|
|
57
|
-
* Available slider events
|
|
58
|
-
* @category Components
|
|
59
|
-
*/
|
|
60
24
|
export declare const SLIDER_EVENTS: {
|
|
61
|
-
/** Fired when slider value changes and interaction completes */
|
|
62
25
|
readonly CHANGE: "change";
|
|
63
|
-
/** Fired during dragging as value changes */
|
|
64
26
|
readonly INPUT: "input";
|
|
65
|
-
/** Fired when slider receives focus */
|
|
66
27
|
readonly FOCUS: "focus";
|
|
67
|
-
/** Fired when slider loses focus */
|
|
68
28
|
readonly BLUR: "blur";
|
|
69
|
-
/** Fired when interaction starts */
|
|
70
29
|
readonly START: "start";
|
|
71
|
-
/** Fired when interaction ends */
|
|
72
30
|
readonly END: "end";
|
|
73
31
|
};
|
|
74
|
-
/**
|
|
75
|
-
* Position options for slider label and icon
|
|
76
|
-
* @category Components
|
|
77
|
-
*/
|
|
78
32
|
export declare const SLIDER_POSITIONS: {
|
|
79
|
-
/** Position at the start */
|
|
80
33
|
readonly START: "start";
|
|
81
|
-
/** Position at the end */
|
|
82
34
|
readonly END: "end";
|
|
83
35
|
};
|
|
84
|
-
/**
|
|
85
|
-
* Default slider configuration values
|
|
86
|
-
* @category Components
|
|
87
|
-
*/
|
|
88
36
|
export declare const SLIDER_DEFAULTS: {
|
|
89
|
-
/** Minimum value */
|
|
90
37
|
readonly MIN: 0;
|
|
91
|
-
/** Maximum value */
|
|
92
38
|
readonly MAX: 100;
|
|
93
|
-
/** Starting value */
|
|
94
39
|
readonly VALUE: 0;
|
|
95
|
-
/** Step increment size */
|
|
96
40
|
readonly STEP: 1;
|
|
97
|
-
/** Whether slider is disabled */
|
|
98
41
|
readonly DISABLED: false;
|
|
99
|
-
/** Default color variant */
|
|
100
42
|
readonly COLOR: "primary";
|
|
101
|
-
/** Default size variant */
|
|
102
43
|
readonly SIZE: "XS";
|
|
103
|
-
/** Whether to show tick marks */
|
|
104
44
|
readonly TICKS: false;
|
|
105
|
-
/** Whether to show value while dragging */
|
|
106
45
|
readonly SHOW_VALUE: true;
|
|
107
|
-
/** Whether to snap to steps during dragging */
|
|
108
46
|
readonly SNAP_TO_STEPS: true;
|
|
109
|
-
/** Whether slider is a range slider (two handles) */
|
|
110
47
|
readonly RANGE: false;
|
|
111
|
-
/** Whether slider is a centered slider (active track from center) */
|
|
112
48
|
readonly CENTERED: false;
|
|
113
|
-
/** Default icon position */
|
|
114
49
|
readonly ICON_POSITION: "start";
|
|
115
|
-
/** Default label position */
|
|
116
50
|
readonly LABEL_POSITION: "start";
|
|
117
51
|
};
|
|
118
|
-
/**
|
|
119
|
-
* CSS class names used by the slider component
|
|
120
|
-
* @category Components
|
|
121
|
-
*/
|
|
122
52
|
export declare const SLIDER_CLASSES: {
|
|
123
|
-
/** Root element class */
|
|
124
53
|
readonly ROOT: "slider";
|
|
125
|
-
/** Container for slider track and handles */
|
|
126
54
|
readonly CONTAINER: "slider__container";
|
|
127
|
-
/** Filled track portion class */
|
|
128
55
|
readonly FILL: "slider__fill";
|
|
129
|
-
/** Handle element class */
|
|
130
56
|
readonly HANDLE: "slider__handle";
|
|
131
|
-
/** Second handle element class (for range slider) */
|
|
132
57
|
readonly HANDLE_SECOND: "slider__handle--second";
|
|
133
|
-
/** Tick marks container class */
|
|
134
58
|
readonly LABEL: "slider__label";
|
|
135
|
-
/** Value display class */
|
|
136
59
|
readonly VALUE: "slider__value";
|
|
137
|
-
/** Icon container class */
|
|
138
60
|
readonly ICON: "slider__icon";
|
|
139
|
-
/** Disabled state class */
|
|
140
61
|
readonly DISABLED: "slider--disabled";
|
|
141
|
-
/** Focused state class */
|
|
142
62
|
readonly FOCUSED: "slider--focused";
|
|
143
|
-
/** Dragging state class */
|
|
144
63
|
readonly DRAGGING: "slider--dragging";
|
|
145
|
-
/** Range slider variant class */
|
|
146
64
|
readonly RANGE: "slider--range";
|
|
147
|
-
/** Primary color variant class */
|
|
148
65
|
readonly PRIMARY: "slider--primary";
|
|
149
|
-
/** Secondary color variant class */
|
|
150
66
|
readonly SECONDARY: "slider--secondary";
|
|
151
|
-
/** Tertiary color variant class */
|
|
152
67
|
readonly TERTIARY: "slider--tertiary";
|
|
153
|
-
/** Error color variant class */
|
|
154
68
|
readonly ERROR: "slider--error";
|
|
155
69
|
};
|
|
@@ -1,19 +1,3 @@
|
|
|
1
1
|
import { SliderConfig, SliderComponent } from "./types.js";
|
|
2
|
-
/**
|
|
3
|
-
* Creates a new Slider component
|
|
4
|
-
*
|
|
5
|
-
* Slider follows a clear architectural pattern:
|
|
6
|
-
* 1. Base component - Creates the foundation with event system
|
|
7
|
-
* 2. Feature enhancement - Adds specific capabilities (range, icons)
|
|
8
|
-
* 3. DOM creation - Creates DOM elements directly using optimized createElement
|
|
9
|
-
* 4. Track rendering - Uses decorative DOM and CSS alongside accessible handles
|
|
10
|
-
* 5. State management - Handles visual states and appearance
|
|
11
|
-
* 6. Controller - Manages behavior, events, and UI rendering
|
|
12
|
-
* 7. Lifecycle - Handles component lifecycle events
|
|
13
|
-
* 8. Public API - Exposes a clean, consistent API
|
|
14
|
-
*
|
|
15
|
-
* @param {SliderConfig} config - Slider configuration object
|
|
16
|
-
* @returns {SliderComponent} Slider component instance
|
|
17
|
-
*/
|
|
18
2
|
declare const createSlider: (config?: SliderConfig) => SliderComponent;
|
|
19
3
|
export default createSlider;
|
|
@@ -3,167 +3,63 @@ import type { NormalizedEvent, TouchEvents } from "../../core/utils/mobile.js";
|
|
|
3
3
|
import { SliderSize, SLIDER_COLORS, SLIDER_EVENTS, SLIDER_SIZES } from "./constants.js";
|
|
4
4
|
import { BaseComponentConfig } from "../../core/config/component.js";
|
|
5
5
|
export { SLIDER_COLORS, SLIDER_EVENTS, SLIDER_SIZES };
|
|
6
|
-
/**
|
|
7
|
-
* Available slider color variants
|
|
8
|
-
*/
|
|
9
6
|
export type SliderColor = "primary" | "secondary" | "tertiary" | "error";
|
|
10
|
-
/**
|
|
11
|
-
* Available slider event types
|
|
12
|
-
*/
|
|
13
7
|
export type SliderEventType = "change" | "input" | "focus" | "blur" | "start" | "end";
|
|
14
|
-
/**
|
|
15
|
-
* Configuration options for the slider component
|
|
16
|
-
* @interface SliderConfig
|
|
17
|
-
*/
|
|
18
8
|
export interface SliderConfig extends BaseComponentConfig {
|
|
19
|
-
/** Minimum value of the slider */
|
|
20
9
|
min?: number;
|
|
21
|
-
/** Maximum value of the slider */
|
|
22
10
|
max?: number;
|
|
23
|
-
/** Current value of the slider */
|
|
24
11
|
value?: number;
|
|
25
|
-
/** Secondary value for range slider (when using two handles) */
|
|
26
12
|
secondValue?: number;
|
|
27
|
-
/** Step size for discrete slider */
|
|
28
13
|
step?: number;
|
|
29
|
-
/** Whether the slider is disabled */
|
|
30
14
|
disabled?: boolean;
|
|
31
|
-
/**
|
|
32
|
-
* Form field name. A slider renders no form control of its own, so it
|
|
33
|
-
* submits nothing unless this is set; with it, a hidden input inside the
|
|
34
|
-
* slider carries the current value. A range slider submits two fields,
|
|
35
|
-
* `name` and `name-end`. A disabled slider submits neither.
|
|
36
|
-
*/
|
|
37
15
|
name?: string;
|
|
38
|
-
/** Color variant of the slider *
|
|
39
|
-
* A stylesheet can override the drawn colours per slider with the custom
|
|
40
|
-
* properties `--<prefix>-slider-color` and `--<prefix>-slider-on-color`,
|
|
41
|
-
* where `<prefix>` is the configured component prefix (mtrl by default).
|
|
42
|
-
*/
|
|
43
16
|
color?: SliderColor;
|
|
44
|
-
/** Size variant of the slider */
|
|
45
17
|
size?: SliderSize;
|
|
46
|
-
/** Whether to show tick marks */
|
|
47
18
|
ticks?: boolean;
|
|
48
|
-
/** Custom labels for ticks, if provided */
|
|
49
19
|
tickLabels?: string[] | Record<number, string>;
|
|
50
|
-
/** Format function for displayed values */
|
|
51
20
|
valueFormatter?: (value: number) => string;
|
|
52
|
-
/** Whether to show the current value while dragging */
|
|
53
21
|
showValue?: boolean;
|
|
54
|
-
/** Whether to snap to steps while dragging (discrete slider) */
|
|
55
22
|
snapToSteps?: boolean;
|
|
56
|
-
/** Whether the slider is a range slider (two handles) */
|
|
57
23
|
range?: boolean;
|
|
58
|
-
/** Whether the slider is a centered slider (with active track from center) */
|
|
59
24
|
centered?: boolean;
|
|
60
|
-
/** Label text for the slider */
|
|
61
25
|
label?: string;
|
|
62
|
-
/** Position of the label (start or end) - defaults to 'start' */
|
|
63
26
|
labelPosition?: "start" | "end";
|
|
64
|
-
/**
|
|
65
|
-
* An icon inside the track, drawn as SVG markup (M3 Expressive "inset icon").
|
|
66
|
-
* Markup (HTML). Not sanitized by default: see Markup and sanitizing.
|
|
67
|
-
* It illustrates what the slider controls. Shown on a standard slider -- not range,
|
|
68
|
-
* not centred -- at size M, L or XL (24, 24 and 32px); XS and S are too thin for it.
|
|
69
|
-
* It sits at the start of the active track and moves to the inactive track when
|
|
70
|
-
* the active one is too short to hold it (m3.material.io slider guidelines).
|
|
71
|
-
*/
|
|
72
27
|
insetIcon?: string;
|
|
73
|
-
/**
|
|
74
|
-
* The inset icon while the value is at the minimum, in place of `insetIcon`.
|
|
75
|
-
* Markup (HTML). Not sanitized by default: see Markup and sanitizing.
|
|
76
|
-
* A volume slider swaps to a mute icon at zero, as the guidelines suggest.
|
|
77
|
-
*/
|
|
78
28
|
insetIconAtMin?: string;
|
|
79
|
-
/**
|
|
80
|
-
* The slider's orientation. A vertical slider takes its length from its CSS
|
|
81
|
-
* height and runs bottom to top unless `topToBottom` is set. The guidelines advise
|
|
82
|
-
* against vertical range sliders.
|
|
83
|
-
*/
|
|
84
29
|
orientation?: "horizontal" | "vertical";
|
|
85
|
-
/** A vertical slider's minimum at the top instead of the bottom (Compose VerticalSlider) */
|
|
86
30
|
topToBottom?: boolean;
|
|
87
|
-
/** Icon to display with the slider. Markup (HTML). Not sanitized by default: see Markup and sanitizing. */
|
|
88
31
|
icon?: string;
|
|
89
|
-
/** Position of the icon (start or end) */
|
|
90
32
|
iconPosition?: "start" | "end";
|
|
91
|
-
/** Additional CSS classes */
|
|
92
33
|
class?: string;
|
|
93
|
-
/** Event handlers for slider events */
|
|
94
34
|
on?: {
|
|
95
35
|
[key in SliderEventType]?: (event: SliderEvent) => void;
|
|
96
36
|
};
|
|
97
|
-
/** CSS class prefix */
|
|
98
37
|
prefix?: string;
|
|
99
|
-
/** Component schema */
|
|
100
38
|
schema?: object;
|
|
101
39
|
}
|
|
102
|
-
/**
|
|
103
|
-
* Slider event data
|
|
104
|
-
* @interface SliderEvent
|
|
105
|
-
*/
|
|
106
40
|
export interface SliderEvent {
|
|
107
|
-
/** The slider component that triggered the event */
|
|
108
41
|
slider: SliderComponent;
|
|
109
|
-
/** Current slider value */
|
|
110
42
|
value: number;
|
|
111
|
-
/** Secondary value (for range sliders) */
|
|
112
43
|
secondValue: number | null;
|
|
113
|
-
/** Original DOM event if available */
|
|
114
44
|
originalEvent: Event | null;
|
|
115
|
-
/** Function to prevent default behavior */
|
|
116
45
|
preventDefault: () => void;
|
|
117
|
-
/** Whether default behavior was prevented */
|
|
118
46
|
defaultPrevented: boolean;
|
|
119
47
|
}
|
|
120
|
-
/**
|
|
121
|
-
* Slider component public API interface
|
|
122
|
-
* @interface SliderComponent
|
|
123
|
-
*/
|
|
124
|
-
/**
|
|
125
|
-
* Which handle an interaction is acting on. Null when none is.
|
|
126
|
-
*
|
|
127
|
-
* @category Components
|
|
128
|
-
* @internal
|
|
129
|
-
*/
|
|
130
48
|
export type SliderActiveHandle = "first" | "second" | null;
|
|
131
|
-
/**
|
|
132
|
-
* The controller's state, shared with the handlers it builds.
|
|
133
|
-
*
|
|
134
|
-
* Written down once because controller.ts owns it and handlers.ts reads every
|
|
135
|
-
* field of it; two descriptions of the same object is how they drift.
|
|
136
|
-
*
|
|
137
|
-
* @category Components
|
|
138
|
-
* @internal
|
|
139
|
-
*/
|
|
140
49
|
export interface SliderState {
|
|
141
|
-
/** The component the controller was handed, with its DOM features */
|
|
142
50
|
component: SliderStateComponent;
|
|
143
51
|
value: number;
|
|
144
52
|
secondValue: number | null;
|
|
145
|
-
/** The value before the last change, kept for centred sliders */
|
|
146
53
|
previousValue?: number;
|
|
147
54
|
min: number;
|
|
148
55
|
max: number;
|
|
149
56
|
step: number;
|
|
150
57
|
dragging: boolean;
|
|
151
|
-
/** Whether a handle is held down */
|
|
152
58
|
pressed: boolean;
|
|
153
59
|
activeHandle: SliderActiveHandle;
|
|
154
60
|
activeBubble: HTMLElement | null;
|
|
155
61
|
valueHideTimer: ReturnType<typeof setTimeout> | null;
|
|
156
62
|
}
|
|
157
|
-
/**
|
|
158
|
-
* The DOM the controller and handlers reach for through `state.component`.
|
|
159
|
-
*
|
|
160
|
-
* Every element is optional: withDom installs them, and a range slider has the
|
|
161
|
-
* second pair while a single one does not. `components` is the older place the
|
|
162
|
-
* same elements were kept, which both files still fall back to.
|
|
163
|
-
*
|
|
164
|
-
* @category Components
|
|
165
|
-
* @internal
|
|
166
|
-
*/
|
|
167
63
|
export interface SliderStateComponent {
|
|
168
64
|
element: HTMLElement;
|
|
169
65
|
container?: HTMLElement | null;
|
|
@@ -171,57 +67,24 @@ export interface SliderStateComponent {
|
|
|
171
67
|
valueBubble?: HTMLElement | null;
|
|
172
68
|
secondHandle?: HTMLElement | null;
|
|
173
69
|
secondValueBubble?: HTMLElement | null;
|
|
174
|
-
/**
|
|
175
|
-
* The older bag the same elements were kept in. **Internal, and not part of
|
|
176
|
-
* the public contract** (3.0.0): nothing in the library fills it, the
|
|
177
|
-
* controller and the handlers only fall back to it, and it may go in any
|
|
178
|
-
* release. `SliderComponent` has no `components`.
|
|
179
|
-
* @internal
|
|
180
|
-
*/
|
|
181
70
|
components?: Record<string, HTMLElement | null | undefined>;
|
|
182
71
|
getClass: (name: string) => string;
|
|
183
72
|
emit: (event: string, data: unknown) => unknown;
|
|
184
|
-
/** withStates installs this whole, so the member is not optional inside it */
|
|
185
73
|
disabled?: {
|
|
186
74
|
isDisabled: () => boolean;
|
|
187
75
|
};
|
|
188
|
-
/**
|
|
189
|
-
* The hidden inputs withDom builds when the slider has a name.
|
|
190
|
-
*
|
|
191
|
-
* Null, not undefined: withDom sets it to null for an unnamed slider, and a
|
|
192
|
-
* host that said undefined is not satisfied by one that says null.
|
|
193
|
-
*/
|
|
194
76
|
formFields?: (HTMLInputElement | null)[] | null;
|
|
195
|
-
/** withTracks installs this; the controller reads it for the discrete inset */
|
|
196
77
|
getSize?: () => SliderSize;
|
|
197
|
-
/** withTracks installs this; the controller calls it with the state after every change */
|
|
198
78
|
renderTracks?: (state?: unknown) => void;
|
|
199
79
|
lifecycle?: {
|
|
200
80
|
destroy?: () => void;
|
|
201
81
|
mount?: () => void;
|
|
202
82
|
};
|
|
203
|
-
/** The controller's own API, once withController has installed it */
|
|
204
83
|
slider?: {
|
|
205
84
|
setValue?: (value: number, triggerEvent?: boolean) => unknown;
|
|
206
85
|
};
|
|
207
86
|
}
|
|
208
|
-
/**
|
|
209
|
-
* What drives a drag: the same handlers are registered for mouse and for
|
|
210
|
-
* touch, so each one takes either.
|
|
211
|
-
*
|
|
212
|
-
* @category Components
|
|
213
|
-
* @internal
|
|
214
|
-
*/
|
|
215
87
|
export type SliderPointerEvent = MouseEvent | TouchEvent;
|
|
216
|
-
/**
|
|
217
|
-
* The slider's elements, gathered from wherever they are kept.
|
|
218
|
-
*
|
|
219
|
-
* The index signature is for the legacy `components` bag, which is spread over
|
|
220
|
-
* the named five so anything else it holds comes through too.
|
|
221
|
-
*
|
|
222
|
-
* @category Components
|
|
223
|
-
* @internal
|
|
224
|
-
*/
|
|
225
88
|
export interface SliderElements {
|
|
226
89
|
container?: HTMLElement | null;
|
|
227
90
|
handle?: HTMLElement | null;
|
|
@@ -230,32 +93,18 @@ export interface SliderElements {
|
|
|
230
93
|
secondValueBubble?: HTMLElement | null;
|
|
231
94
|
[key: string]: HTMLElement | null | undefined;
|
|
232
95
|
}
|
|
233
|
-
/**
|
|
234
|
-
* The drawing and measuring helpers the controller hands to its handlers.
|
|
235
|
-
*
|
|
236
|
-
* @category Components
|
|
237
|
-
* @internal
|
|
238
|
-
*/
|
|
239
96
|
export interface SliderUiRenderer {
|
|
240
97
|
getPercentage: (value: number) => number;
|
|
241
98
|
getValueFromPosition: (position: number) => number;
|
|
242
99
|
roundToStep: (value: number) => number;
|
|
243
100
|
clamp: (value: number, min?: number, max?: number) => number;
|
|
244
101
|
showValueBubble: (bubbleElement: HTMLElement | null, show: boolean) => void;
|
|
245
|
-
/** Alias of render, kept for callers that used the older name */
|
|
246
102
|
updateUi: () => void;
|
|
247
103
|
render: () => void;
|
|
248
104
|
}
|
|
249
|
-
/**
|
|
250
|
-
* How the handlers report what happened.
|
|
251
|
-
*
|
|
252
|
-
* @category Components
|
|
253
|
-
* @internal
|
|
254
|
-
*/
|
|
255
105
|
export interface SliderEventHelpers {
|
|
256
106
|
triggerEvent: (eventName: string, originalEvent?: Event | null) => void;
|
|
257
107
|
}
|
|
258
|
-
/** Public model, native forwarding and gesture notifications. */
|
|
259
108
|
export interface SliderEvents extends TouchEvents {
|
|
260
109
|
change: (payload: SliderEvent) => void;
|
|
261
110
|
input: (payload: SliderEvent) => void;
|
|
@@ -276,68 +125,35 @@ export interface SliderEvents extends TouchEvents {
|
|
|
276
125
|
})) => void;
|
|
277
126
|
}
|
|
278
127
|
export interface SliderComponent {
|
|
279
|
-
/** The root element of the slider */
|
|
280
128
|
element: HTMLElement;
|
|
281
|
-
/** Sets slider value. Silent unless `triggerEvent` is true. */
|
|
282
129
|
setValue: (value: number, triggerEvent?: boolean) => SliderComponent;
|
|
283
|
-
/** Gets slider value */
|
|
284
130
|
getValue: () => number;
|
|
285
|
-
/** Sets secondary slider value (for range slider). Silent unless `triggerEvent` is true. */
|
|
286
131
|
setSecondValue: (value: number, triggerEvent?: boolean) => SliderComponent;
|
|
287
|
-
/** Gets secondary slider value */
|
|
288
132
|
getSecondValue: () => number | null;
|
|
289
|
-
/** Sets slider minimum value */
|
|
290
133
|
setMin: (min: number) => SliderComponent;
|
|
291
|
-
/** Gets slider minimum value */
|
|
292
134
|
getMin: () => number;
|
|
293
|
-
/** Sets slider maximum value */
|
|
294
135
|
setMax: (max: number) => SliderComponent;
|
|
295
|
-
/** Gets slider maximum value */
|
|
296
136
|
getMax: () => number;
|
|
297
|
-
/** Sets slider step size */
|
|
298
137
|
setStep: (step: number) => SliderComponent;
|
|
299
|
-
/** Gets slider step size */
|
|
300
138
|
getStep: () => number;
|
|
301
|
-
/** Enables the slider */
|
|
302
139
|
enable: () => SliderComponent;
|
|
303
|
-
/** Disables the slider */
|
|
304
140
|
disable: () => SliderComponent;
|
|
305
|
-
/** Checks if slider is disabled */
|
|
306
141
|
isDisabled: () => boolean;
|
|
307
|
-
/** Sets slider color */
|
|
308
142
|
setColor: (color: SliderColor) => SliderComponent;
|
|
309
|
-
/** Gets slider color */
|
|
310
143
|
getColor: () => string;
|
|
311
|
-
/** Sets slider size */
|
|
312
144
|
setSize: (size: SliderSize) => SliderComponent;
|
|
313
|
-
/** Gets the size as it was set: a size name, or a track height in pixels */
|
|
314
145
|
getSize: () => SliderSize;
|
|
315
|
-
/** Shows or hides tick marks */
|
|
316
146
|
showTicks: (show: boolean) => SliderComponent;
|
|
317
|
-
/** Shows or hides current value while dragging */
|
|
318
147
|
showCurrentValue: (show: boolean) => SliderComponent;
|
|
319
|
-
/** Sets label text */
|
|
320
148
|
setLabel: (text: string) => SliderComponent;
|
|
321
|
-
/** Gets label text */
|
|
322
149
|
getLabel: () => string;
|
|
323
|
-
/** Sets the inset icon, and optionally the one shown at the minimum; '' removes it */
|
|
324
150
|
setInsetIcon: (icon: string, atMin?: string) => SliderComponent;
|
|
325
|
-
/** Sets icon HTML */
|
|
326
151
|
setIcon: (iconHtml: string) => SliderComponent;
|
|
327
|
-
/** Gets icon HTML */
|
|
328
152
|
getIcon: () => string;
|
|
329
|
-
/** Adds event listener */
|
|
330
153
|
on: <K extends keyof SliderEvents>(event: K, handler: SliderEvents[K]) => SliderComponent;
|
|
331
|
-
/** Removes event listener */
|
|
332
154
|
off: <K extends keyof SliderEvents>(event: K, handler: SliderEvents[K]) => SliderComponent;
|
|
333
|
-
/** Destroys the slider component and cleans up resources */
|
|
334
155
|
destroy: () => void;
|
|
335
156
|
}
|
|
336
|
-
/**
|
|
337
|
-
* Registers SliderConfig with the global defaults map, so
|
|
338
|
-
* `setComponentDefaults("slider", ...)` is typed without core
|
|
339
|
-
* importing anything from this component.
|
|
340
|
-
*/
|
|
341
157
|
declare module "../../core/config/global" {
|
|
342
158
|
interface ComponentConfigMap {
|
|
343
159
|
slider?: Partial<SliderConfig>;
|