mtrl 0.3.7 → 0.3.9
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/LICENSE +21 -0
- package/dist/README.md +324 -0
- package/dist/components/badge/api.d.ts +48 -0
- package/{src/components/badge/badge.ts → dist/components/badge/badge.d.ts} +14 -57
- package/dist/components/badge/config.d.ts +79 -0
- package/dist/components/badge/constants.d.ts +35 -0
- package/dist/components/badge/features.d.ts +36 -0
- package/dist/components/badge/index.d.ts +8 -0
- package/dist/components/badge/types.d.ts +256 -0
- package/dist/components/bottom-app-bar/bottom-app-bar.d.ts +12 -0
- package/dist/components/bottom-app-bar/config.d.ts +16 -0
- package/dist/components/bottom-app-bar/constants.d.ts +22 -0
- package/{src/components/bottom-app-bar/index.ts → dist/components/bottom-app-bar/index.d.ts} +0 -9
- package/dist/components/bottom-app-bar/types.d.ts +96 -0
- package/dist/components/button/api.d.ts +47 -0
- package/dist/components/button/button.d.ts +25 -0
- package/dist/components/button/config.d.ts +59 -0
- package/dist/components/button/constants.d.ts +43 -0
- package/dist/components/button/index.d.ts +6 -0
- package/dist/components/button/types.d.ts +265 -0
- package/dist/components/card/api.d.ts +11 -0
- package/{src/components/card/card.ts → dist/components/card/card.d.ts} +10 -58
- package/dist/components/card/config.d.ts +105 -0
- package/dist/components/card/constants.d.ts +85 -0
- package/dist/components/card/content.d.ts +92 -0
- package/dist/components/card/features.d.ts +131 -0
- package/{src/components/card/index.ts → dist/components/card/index.d.ts} +13 -74
- package/dist/components/card/types.d.ts +471 -0
- package/dist/components/carousel/api.d.ts +33 -0
- package/dist/components/carousel/carousel.d.ts +75 -0
- package/dist/components/carousel/config.d.ts +45 -0
- package/dist/components/carousel/constants.d.ts +165 -0
- package/dist/components/carousel/features/drag.d.ts +8 -0
- package/{src/components/carousel/features/index.ts → dist/components/carousel/features/index.d.ts} +1 -4
- package/dist/components/carousel/features/slides.d.ts +8 -0
- package/{src/components/carousel/index.ts → dist/components/carousel/index.d.ts} +10 -29
- package/dist/components/carousel/types.d.ts +276 -0
- package/dist/components/checkbox/api.d.ts +7 -0
- package/dist/components/checkbox/checkbox.d.ts +65 -0
- package/dist/components/checkbox/config.d.ts +44 -0
- package/dist/components/checkbox/constants.d.ts +63 -0
- package/{src/components/checkbox/index.ts → dist/components/checkbox/index.d.ts} +8 -25
- package/dist/components/checkbox/types.d.ts +242 -0
- package/dist/components/chips/api.d.ts +49 -0
- package/dist/components/chips/chip/api.d.ts +23 -0
- package/dist/components/chips/chip/chip.d.ts +8 -0
- package/dist/components/chips/chip/config.d.ts +57 -0
- package/dist/components/chips/chip/constants.d.ts +38 -0
- package/dist/components/chips/chip/index.d.ts +2 -0
- package/dist/components/chips/chip/types.d.ts +11 -0
- package/dist/components/chips/chips.d.ts +17 -0
- package/dist/components/chips/config.d.ts +67 -0
- package/dist/components/chips/constants.d.ts +46 -0
- package/dist/components/chips/features/chip-items.d.ts +8 -0
- package/dist/components/chips/features/container.d.ts +8 -0
- package/dist/components/chips/features/controller.d.ts +9 -0
- package/{src/components/chips/features/index.ts → dist/components/chips/features/index.d.ts} +1 -2
- package/dist/components/chips/features/label.d.ts +8 -0
- package/dist/components/chips/index.d.ts +4 -0
- package/dist/components/chips/schema.d.ts +34 -0
- package/dist/components/chips/types.d.ts +398 -0
- package/dist/components/datepicker/api.d.ts +9 -0
- package/dist/components/datepicker/config.d.ts +79 -0
- package/dist/components/datepicker/constants.d.ts +97 -0
- package/dist/components/datepicker/datepicker.d.ts +8 -0
- package/dist/components/datepicker/index.d.ts +3 -0
- package/dist/components/datepicker/render.d.ts +43 -0
- package/dist/components/datepicker/types.d.ts +321 -0
- package/dist/components/datepicker/utils.d.ts +84 -0
- package/dist/components/dialog/api.d.ts +59 -0
- package/dist/components/dialog/config.d.ts +91 -0
- package/dist/components/dialog/constants.d.ts +116 -0
- package/{src/components/dialog/dialog.ts → dist/components/dialog/dialog.d.ts} +16 -69
- package/dist/components/dialog/features.d.ts +37 -0
- package/dist/components/dialog/index.d.ts +14 -0
- package/dist/components/dialog/types.d.ts +483 -0
- package/dist/components/divider/config.d.ts +143 -0
- package/dist/components/divider/constants.d.ts +45 -0
- package/{src/components/divider/divider.ts → dist/components/divider/divider.d.ts} +9 -37
- package/dist/components/divider/features.d.ts +50 -0
- package/{src/components/divider/index.ts → dist/components/divider/index.d.ts} +6 -12
- package/dist/components/divider/types.d.ts +124 -0
- package/dist/components/extended-fab/api.d.ts +83 -0
- package/dist/components/extended-fab/config.d.ts +75 -0
- package/dist/components/extended-fab/constants.d.ts +82 -0
- package/dist/components/extended-fab/extended-fab.d.ts +61 -0
- package/{src/components/extended-fab/index.ts → dist/components/extended-fab/index.d.ts} +6 -15
- package/dist/components/extended-fab/types.d.ts +703 -0
- package/dist/components/fab/api.d.ts +64 -0
- package/dist/components/fab/config.d.ts +71 -0
- package/dist/components/fab/constants.d.ts +75 -0
- package/{src/components/fab/fab.ts → dist/components/fab/fab.d.ts} +10 -46
- package/{src/components/fab/index.ts → dist/components/fab/index.d.ts} +6 -15
- package/dist/components/fab/types.d.ts +577 -0
- package/dist/components/index.d.ts +76 -0
- package/dist/components/list/api.d.ts +106 -0
- package/dist/components/list/config.d.ts +61 -0
- package/dist/components/list/constants.d.ts +76 -0
- package/dist/components/list/features/index.d.ts +2 -0
- package/dist/components/list/features/listmanager.d.ts +9 -0
- package/dist/components/list/features/selection.d.ts +9 -0
- package/dist/components/list/index.d.ts +12 -0
- package/dist/components/list/list.d.ts +11 -0
- package/dist/components/list/types.d.ts +294 -0
- package/dist/components/menu/api.d.ts +58 -0
- package/dist/components/menu/config.d.ts +78 -0
- package/dist/components/menu/constants.d.ts +106 -0
- package/dist/components/menu/features/controller.d.ts +10 -0
- package/dist/components/menu/features/index.d.ts +6 -0
- package/dist/components/menu/features/keyboard.d.ts +26 -0
- package/dist/components/menu/features/opener.d.ts +10 -0
- package/dist/components/menu/features/position.d.ts +18 -0
- package/dist/components/menu/features/submenu.d.ts +10 -0
- package/{src/components/menu/index.ts → dist/components/menu/index.d.ts} +11 -27
- package/dist/components/menu/menu.d.ts +29 -0
- package/dist/components/menu/types.d.ts +338 -0
- package/dist/components/navigation/api.d.ts +8 -0
- package/dist/components/navigation/config.d.ts +34 -0
- package/dist/components/navigation/constants.d.ts +137 -0
- package/dist/components/navigation/features/controller.d.ts +30 -0
- package/dist/components/navigation/features/items.d.ts +32 -0
- package/dist/components/navigation/index.d.ts +3 -0
- package/dist/components/navigation/nav-item.d.ts +30 -0
- package/dist/components/navigation/navigation.d.ts +8 -0
- package/dist/components/navigation/system/core.d.ts +72 -0
- package/dist/components/navigation/system/events.d.ts +35 -0
- package/dist/components/navigation/system/index.d.ts +10 -0
- package/dist/components/navigation/system/mobile.d.ts +52 -0
- package/dist/components/navigation/system/state.d.ts +22 -0
- package/dist/components/navigation/system/types.d.ts +305 -0
- package/dist/components/navigation/types.d.ts +216 -0
- package/dist/components/progress/api.d.ts +46 -0
- package/dist/components/progress/config.d.ts +63 -0
- package/dist/components/progress/constants.d.ts +58 -0
- package/dist/components/progress/index.d.ts +3 -0
- package/dist/components/progress/progress.d.ts +24 -0
- package/dist/components/progress/types.d.ts +199 -0
- package/dist/components/radios/api.d.ts +37 -0
- package/dist/components/radios/config.d.ts +42 -0
- package/dist/components/radios/constants.d.ts +114 -0
- package/dist/components/radios/index.d.ts +3 -0
- package/dist/components/radios/radio.d.ts +8 -0
- package/dist/components/radios/radios.d.ts +8 -0
- package/dist/components/radios/types.d.ts +189 -0
- package/dist/components/search/api.d.ts +55 -0
- package/dist/components/search/config.d.ts +73 -0
- package/dist/components/search/constants.d.ts +128 -0
- package/{src/components/search/features/index.ts → dist/components/search/features/index.d.ts} +1 -2
- package/dist/components/search/features/search.d.ts +7 -0
- package/dist/components/search/features/states.d.ts +8 -0
- package/dist/components/search/features/structure.d.ts +7 -0
- package/dist/components/search/index.d.ts +3 -0
- package/dist/components/search/search.d.ts +8 -0
- package/dist/components/search/types.d.ts +132 -0
- package/dist/components/segmented-button/config.d.ts +65 -0
- package/dist/components/segmented-button/constants.d.ts +85 -0
- package/dist/components/segmented-button/index.d.ts +4 -0
- package/dist/components/segmented-button/segment.d.ts +15 -0
- package/dist/components/segmented-button/segmented-button.d.ts +49 -0
- package/dist/components/segmented-button/types.d.ts +257 -0
- package/dist/components/select/api.d.ts +8 -0
- package/dist/components/select/config.d.ts +18 -0
- package/dist/components/select/constants.d.ts +113 -0
- package/dist/components/select/features.d.ts +13 -0
- package/{src/components/select/index.ts → dist/components/select/index.d.ts} +7 -20
- package/dist/components/select/select.d.ts +36 -0
- package/dist/components/select/types.d.ts +302 -0
- package/dist/components/sheet/api.d.ts +37 -0
- package/dist/components/sheet/config.d.ts +42 -0
- package/dist/components/sheet/constants.d.ts +136 -0
- package/dist/components/sheet/features/content.d.ts +6 -0
- package/dist/components/sheet/features/gestures.d.ts +6 -0
- package/{src/components/sheet/features/index.ts → dist/components/sheet/features/index.d.ts} +1 -2
- package/dist/components/sheet/features/position.d.ts +7 -0
- package/dist/components/sheet/features/state.d.ts +6 -0
- package/dist/components/sheet/features/title.d.ts +6 -0
- package/dist/components/sheet/index.d.ts +3 -0
- package/dist/components/sheet/sheet.d.ts +8 -0
- package/dist/components/sheet/types.d.ts +250 -0
- package/dist/components/slider/api.d.ts +57 -0
- package/dist/components/slider/config.d.ts +75 -0
- package/dist/components/slider/constants.d.ts +138 -0
- package/dist/components/slider/features/controller.d.ts +9 -0
- package/dist/components/slider/features/handlers.d.ts +25 -0
- package/dist/components/slider/features/index.d.ts +3 -0
- package/dist/components/slider/features/range.d.ts +8 -0
- package/dist/components/slider/features/states.d.ts +9 -0
- package/dist/components/slider/index.d.ts +3 -0
- package/dist/components/slider/schema.d.ts +108 -0
- package/dist/components/slider/slider.d.ts +18 -0
- package/dist/components/slider/types.d.ts +170 -0
- package/dist/components/snackbar/api.d.ts +7 -0
- package/dist/components/snackbar/config.d.ts +55 -0
- package/dist/components/snackbar/constants.d.ts +88 -0
- package/dist/components/snackbar/features.d.ts +13 -0
- package/dist/components/snackbar/index.d.ts +3 -0
- package/dist/components/snackbar/position.d.ts +15 -0
- package/dist/components/snackbar/queue.d.ts +7 -0
- package/dist/components/snackbar/snackbar.d.ts +8 -0
- package/dist/components/snackbar/types.d.ts +172 -0
- package/dist/components/switch/api.d.ts +7 -0
- package/dist/components/switch/config.d.ts +34 -0
- package/dist/components/switch/constants.d.ts +88 -0
- package/dist/components/switch/features.d.ts +59 -0
- package/dist/components/switch/index.d.ts +4 -0
- package/dist/components/switch/switch.d.ts +8 -0
- package/dist/components/switch/types.d.ts +131 -0
- package/dist/components/tabs/api.d.ts +52 -0
- package/dist/components/tabs/config.d.ts +39 -0
- package/dist/components/tabs/constants.d.ts +142 -0
- package/dist/components/tabs/features.d.ts +133 -0
- package/dist/components/tabs/index.d.ts +11 -0
- package/dist/components/tabs/indicator.d.ts +49 -0
- package/dist/components/tabs/responsive.d.ts +38 -0
- package/dist/components/tabs/scroll-indicators.d.ts +18 -0
- package/dist/components/tabs/state.d.ts +53 -0
- package/dist/components/tabs/tab-api.d.ts +43 -0
- package/dist/components/tabs/tab.d.ts +7 -0
- package/dist/components/tabs/tabs.d.ts +27 -0
- package/dist/components/tabs/types.d.ts +390 -0
- package/dist/components/tabs/utils.d.ts +17 -0
- package/dist/components/textfield/api.d.ts +8 -0
- package/dist/components/textfield/config.d.ts +34 -0
- package/dist/components/textfield/constants.d.ts +148 -0
- package/{src/components/textfield/features/index.ts → dist/components/textfield/features/index.d.ts} +1 -6
- package/dist/components/textfield/features/leading-icon.d.ts +55 -0
- package/dist/components/textfield/features/placement.d.ts +28 -0
- package/dist/components/textfield/features/prefix-text.d.ts +54 -0
- package/dist/components/textfield/features/suffix-text.d.ts +54 -0
- package/dist/components/textfield/features/supporting-text.d.ts +59 -0
- package/dist/components/textfield/features/trailing-icon.d.ts +55 -0
- package/dist/components/textfield/index.d.ts +3 -0
- package/dist/components/textfield/textfield.d.ts +36 -0
- package/dist/components/textfield/types.d.ts +217 -0
- package/dist/components/timepicker/api.d.ts +24 -0
- package/dist/components/timepicker/clockdial.d.ts +34 -0
- package/dist/components/timepicker/config.d.ts +75 -0
- package/dist/components/timepicker/constants.d.ts +266 -0
- package/dist/components/timepicker/index.d.ts +4 -0
- package/dist/components/timepicker/render.d.ts +9 -0
- package/dist/components/timepicker/timepicker.d.ts +8 -0
- package/dist/components/timepicker/types.d.ts +284 -0
- package/dist/components/timepicker/utils.d.ts +74 -0
- package/dist/components/tooltip/api.d.ts +18 -0
- package/dist/components/tooltip/config.d.ts +38 -0
- package/dist/components/tooltip/constants.d.ts +108 -0
- package/dist/components/tooltip/index.d.ts +3 -0
- package/dist/components/tooltip/tooltip.d.ts +8 -0
- package/dist/components/tooltip/types.d.ts +188 -0
- package/dist/components/top-app-bar/config.d.ts +16 -0
- package/dist/components/top-app-bar/constants.d.ts +74 -0
- package/{src/components/top-app-bar/index.ts → dist/components/top-app-bar/index.d.ts} +2 -4
- package/dist/components/top-app-bar/top-app-bar.d.ts +68 -0
- package/dist/components/top-app-bar/types.d.ts +118 -0
- package/dist/constants.d.ts +30 -0
- package/dist/core/collection/adapters/base.d.ts +47 -0
- package/dist/core/collection/adapters/route.d.ts +149 -0
- package/dist/core/collection/collection.d.ts +131 -0
- package/dist/core/collection/index.d.ts +10 -0
- package/dist/core/collection/list-manager/config.d.ts +29 -0
- package/dist/core/collection/list-manager/dom-elements.d.ts +30 -0
- package/dist/core/collection/list-manager/index.d.ts +61 -0
- package/dist/core/collection/list-manager/item-measurement.d.ts +91 -0
- package/dist/core/collection/list-manager/renderer.d.ts +31 -0
- package/dist/core/collection/list-manager/scroll-tracker.d.ts +20 -0
- package/dist/core/collection/list-manager/state.d.ts +60 -0
- package/dist/core/collection/list-manager/types.d.ts +361 -0
- package/dist/core/collection/list-manager/utils/recycling.d.ts +34 -0
- package/dist/core/collection/list-manager/utils/visibility.d.ts +45 -0
- package/dist/core/compose/base.d.ts +31 -0
- package/dist/core/compose/component.d.ts +61 -0
- package/dist/core/compose/features/badge.d.ts +43 -0
- package/dist/core/compose/features/checkable.d.ts +59 -0
- package/dist/core/compose/features/constants.d.ts +45 -0
- package/dist/core/compose/features/debounce.d.ts +84 -0
- package/dist/core/compose/features/disabled.d.ts +47 -0
- package/dist/core/compose/features/events.d.ts +37 -0
- package/dist/core/compose/features/gestures/longpress.d.ts +85 -0
- package/dist/core/compose/features/gestures/pan.d.ts +108 -0
- package/dist/core/compose/features/gestures/pinch.d.ts +111 -0
- package/dist/core/compose/features/gestures/rotate.d.ts +111 -0
- package/dist/core/compose/features/gestures/swipe.d.ts +149 -0
- package/dist/core/compose/features/gestures/tap.d.ts +79 -0
- package/dist/core/compose/features/gestures.d.ts +86 -0
- package/dist/core/compose/features/icon.d.ts +71 -0
- package/{src/core/compose/features/index.ts → dist/core/compose/features/index.d.ts} +7 -8
- package/dist/core/compose/features/input.d.ts +71 -0
- package/dist/core/compose/features/lifecycle.d.ts +61 -0
- package/dist/core/compose/features/position.d.ts +51 -0
- package/dist/core/compose/features/ripple.d.ts +61 -0
- package/dist/core/compose/features/size.d.ts +17 -0
- package/dist/core/compose/features/style.d.ts +16 -0
- package/dist/core/compose/features/text.d.ts +63 -0
- package/dist/core/compose/features/textinput.d.ts +93 -0
- package/dist/core/compose/features/textlabel.d.ts +57 -0
- package/dist/core/compose/features/throttle.d.ts +75 -0
- package/dist/core/compose/features/track.d.ts +42 -0
- package/dist/core/compose/features/variant.d.ts +17 -0
- package/dist/core/compose/features/withEvents.d.ts +45 -0
- package/dist/core/compose/index.d.ts +17 -0
- package/{src/core/compose/pipe.ts → dist/core/compose/pipe.d.ts} +4 -20
- package/dist/core/compose/utils/type-guards.d.ts +27 -0
- package/dist/core/composition/features/dom.d.ts +19 -0
- package/dist/core/composition/features/icon.d.ts +45 -0
- package/{src/core/composition/features/index.ts → dist/core/composition/features/index.d.ts} +1 -6
- package/dist/core/composition/features/label.d.ts +49 -0
- package/{src/core/composition/features/layout.ts → dist/core/composition/features/layout.d.ts} +8 -24
- package/{src/core/composition/index.ts → dist/core/composition/index.d.ts} +4 -14
- package/{src/core/config/component-config.ts → dist/core/config/component.d.ts} +34 -82
- package/dist/core/config.d.ts +130 -0
- package/{src/core/dom/attributes.ts → dist/core/dom/attributes.d.ts} +2 -13
- package/dist/core/dom/classes.d.ts +42 -0
- package/dist/core/dom/create.d.ts +124 -0
- package/dist/core/dom/events.d.ts +69 -0
- package/{src/core/dom/index.ts → dist/core/dom/index.d.ts} +1 -5
- package/dist/core/dom/utils.d.ts +42 -0
- package/dist/core/gestures/index.d.ts +12 -0
- package/dist/core/gestures/longpress.d.ts +23 -0
- package/dist/core/gestures/manager.d.ts +14 -0
- package/dist/core/gestures/pan.d.ts +12 -0
- package/dist/core/gestures/pinch.d.ts +14 -0
- package/dist/core/gestures/rotate.d.ts +14 -0
- package/dist/core/gestures/swipe.d.ts +20 -0
- package/dist/core/gestures/tap.d.ts +12 -0
- package/dist/core/gestures/types.d.ts +320 -0
- package/dist/core/gestures/utils.d.ts +57 -0
- package/dist/core/index.d.ts +29 -0
- package/dist/core/layout/array.d.ts +15 -0
- package/dist/core/layout/config.d.ts +32 -0
- package/dist/core/layout/create.d.ts +14 -0
- package/dist/core/layout/index.d.ts +13 -0
- package/dist/core/layout/jsx.d.ts +13 -0
- package/dist/core/layout/object.d.ts +14 -0
- package/dist/core/layout/processor.d.ts +28 -0
- package/dist/core/layout/result.d.ts +12 -0
- package/dist/core/layout/template.d.ts +12 -0
- package/dist/core/layout/types.d.ts +137 -0
- package/dist/core/layout/utils.d.ts +38 -0
- package/dist/core/state/disabled.d.ts +32 -0
- package/dist/core/state/emitter.d.ts +40 -0
- package/dist/core/state/events.d.ts +36 -0
- package/{src/core/state/index.ts → dist/core/state/index.d.ts} +1 -7
- package/dist/core/state/lifecycle.d.ts +57 -0
- package/dist/core/state/store.d.ts +82 -0
- package/dist/core/utils/background.d.ts +40 -0
- package/dist/core/utils/index.d.ts +23 -0
- package/dist/core/utils/mobile.d.ts +54 -0
- package/dist/core/utils/object.d.ts +13 -0
- package/dist/core/utils/performance.d.ts +79 -0
- package/dist/core/utils/validate.d.ts +73 -0
- package/dist/index.cjs +64 -0
- package/dist/index.cjs.map +285 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.js +53 -14854
- package/dist/index.js.map +285 -0
- package/dist/package.json +39 -0
- package/dist/styles.css +7 -0
- package/package.json +24 -5
- package/.env +0 -15
- package/.typedocignore +0 -11
- package/CONTRIBUTING.md +0 -218
- package/DOCS.md +0 -153
- package/TESTING.md +0 -214
- package/git-user-stats.js +0 -545
- package/index.ts +0 -10
- package/src/components/badge/api.ts +0 -313
- package/src/components/badge/config.ts +0 -153
- package/src/components/badge/features.ts +0 -194
- package/src/components/badge/index.ts +0 -90
- package/src/components/badge/types.ts +0 -279
- package/src/components/bottom-app-bar/bottom-app-bar.ts +0 -154
- package/src/components/bottom-app-bar/config.ts +0 -29
- package/src/components/bottom-app-bar/types.ts +0 -114
- package/src/components/button/api.ts +0 -172
- package/src/components/button/button.ts +0 -112
- package/src/components/button/config.ts +0 -96
- package/src/components/button/index.ts +0 -37
- package/src/components/button/types.ts +0 -290
- package/src/components/card/api.ts +0 -222
- package/src/components/card/config.ts +0 -304
- package/src/components/card/content.ts +0 -343
- package/src/components/card/features.ts +0 -407
- package/src/components/card/types.ts +0 -497
- package/src/components/carousel/api.ts +0 -147
- package/src/components/carousel/carousel.ts +0 -242
- package/src/components/carousel/config.ts +0 -91
- package/src/components/carousel/constants.ts +0 -181
- package/src/components/carousel/features/drag.ts +0 -388
- package/src/components/carousel/features/slides.ts +0 -682
- package/src/components/carousel/types.ts +0 -327
- package/src/components/checkbox/api.ts +0 -82
- package/src/components/checkbox/checkbox.ts +0 -142
- package/src/components/checkbox/config.ts +0 -89
- package/src/components/checkbox/types.ts +0 -342
- package/src/components/chips/api.ts +0 -194
- package/src/components/chips/chip/api.ts +0 -233
- package/src/components/chips/chip/chip.ts +0 -131
- package/src/components/chips/chip/config.ts +0 -91
- package/src/components/chips/chip/index.ts +0 -3
- package/src/components/chips/chips.md +0 -481
- package/src/components/chips/chips.ts +0 -75
- package/src/components/chips/config.ts +0 -109
- package/src/components/chips/constants.ts +0 -61
- package/src/components/chips/features/chip-items.ts +0 -33
- package/src/components/chips/features/container.ts +0 -77
- package/src/components/chips/features/controller.ts +0 -448
- package/src/components/chips/features/label.ts +0 -108
- package/src/components/chips/index.ts +0 -11
- package/src/components/chips/schema.ts +0 -61
- package/src/components/chips/types.ts +0 -469
- package/src/components/datepicker/api.ts +0 -265
- package/src/components/datepicker/config.ts +0 -141
- package/src/components/datepicker/datepicker.ts +0 -341
- package/src/components/datepicker/index.ts +0 -12
- package/src/components/datepicker/render.ts +0 -450
- package/src/components/datepicker/types.ts +0 -397
- package/src/components/datepicker/utils.ts +0 -289
- package/src/components/dialog/api.ts +0 -317
- package/src/components/dialog/config.ts +0 -116
- package/src/components/dialog/features.ts +0 -907
- package/src/components/dialog/index.ts +0 -141
- package/src/components/dialog/types.ts +0 -553
- package/src/components/divider/config.ts +0 -165
- package/src/components/divider/features.ts +0 -233
- package/src/components/divider/types.ts +0 -132
- package/src/components/extended-fab/api.ts +0 -193
- package/src/components/extended-fab/config.ts +0 -140
- package/src/components/extended-fab/extended-fab.ts +0 -153
- package/src/components/extended-fab/types.ts +0 -749
- package/src/components/fab/api.ts +0 -137
- package/src/components/fab/config.ts +0 -121
- package/src/components/fab/types.ts +0 -615
- package/src/components/list/api.ts +0 -82
- package/src/components/list/config.ts +0 -63
- package/src/components/list/features.ts +0 -229
- package/src/components/list/index.ts +0 -67
- package/src/components/list/list-item.ts +0 -163
- package/src/components/list/list.ts +0 -108
- package/src/components/list/types.ts +0 -396
- package/src/components/list/utils.ts +0 -98
- package/src/components/menu/api.ts +0 -193
- package/src/components/menu/config.ts +0 -125
- package/src/components/menu/features/anchor.ts +0 -243
- package/src/components/menu/features/controller.ts +0 -1167
- package/src/components/menu/features/index.ts +0 -5
- package/src/components/menu/features/position.ts +0 -353
- package/src/components/menu/menu.ts +0 -119
- package/src/components/menu/types.ts +0 -379
- package/src/components/navigation/api.ts +0 -142
- package/src/components/navigation/config.ts +0 -73
- package/src/components/navigation/features/controller.ts +0 -273
- package/src/components/navigation/features/items.ts +0 -353
- package/src/components/navigation/index.ts +0 -11
- package/src/components/navigation/nav-item.ts +0 -196
- package/src/components/navigation/navigation.ts +0 -115
- package/src/components/navigation/system/core.ts +0 -302
- package/src/components/navigation/system/events.ts +0 -240
- package/src/components/navigation/system/index.ts +0 -184
- package/src/components/navigation/system/mobile.ts +0 -278
- package/src/components/navigation/system/state.ts +0 -77
- package/src/components/navigation/system/types.ts +0 -364
- package/src/components/navigation/types.ts +0 -292
- package/src/components/progress/api.ts +0 -178
- package/src/components/progress/config.ts +0 -122
- package/src/components/progress/index.ts +0 -4
- package/src/components/progress/progress.ts +0 -159
- package/src/components/progress/types.ts +0 -255
- package/src/components/radios/api.ts +0 -125
- package/src/components/radios/config.ts +0 -59
- package/src/components/radios/constants.ts +0 -19
- package/src/components/radios/index.ts +0 -3
- package/src/components/radios/radio.ts +0 -292
- package/src/components/radios/radios.ts +0 -43
- package/src/components/radios/types.ts +0 -219
- package/src/components/search/api.ts +0 -203
- package/src/components/search/config.ts +0 -86
- package/src/components/search/features/search.ts +0 -717
- package/src/components/search/features/states.ts +0 -169
- package/src/components/search/features/structure.ts +0 -197
- package/src/components/search/index.ts +0 -7
- package/src/components/search/search.ts +0 -52
- package/src/components/search/types.ts +0 -175
- package/src/components/segmented-button/config.ts +0 -119
- package/src/components/segmented-button/index.ts +0 -4
- package/src/components/segmented-button/segment.ts +0 -108
- package/src/components/segmented-button/segmented-button.ts +0 -361
- package/src/components/segmented-button/types.ts +0 -306
- package/src/components/select/api.ts +0 -78
- package/src/components/select/config.ts +0 -76
- package/src/components/select/features.ts +0 -317
- package/src/components/select/select.ts +0 -73
- package/src/components/select/types.ts +0 -355
- package/src/components/sheet/api.ts +0 -96
- package/src/components/sheet/config.ts +0 -65
- package/src/components/sheet/features/content.ts +0 -51
- package/src/components/sheet/features/gestures.ts +0 -177
- package/src/components/sheet/features/position.ts +0 -41
- package/src/components/sheet/features/state.ts +0 -116
- package/src/components/sheet/features/title.ts +0 -86
- package/src/components/sheet/index.ts +0 -12
- package/src/components/sheet/sheet.ts +0 -56
- package/src/components/sheet/types.ts +0 -294
- package/src/components/slider/accessibility.md +0 -59
- package/src/components/slider/api.ts +0 -192
- package/src/components/slider/config.ts +0 -118
- package/src/components/slider/features/controller.ts +0 -737
- package/src/components/slider/features/handlers.ts +0 -497
- package/src/components/slider/features/index.ts +0 -5
- package/src/components/slider/features/range.ts +0 -104
- package/src/components/slider/features/states.ts +0 -195
- package/src/components/slider/index.ts +0 -17
- package/src/components/slider/schema.ts +0 -141
- package/src/components/slider/slider.ts +0 -76
- package/src/components/slider/types.ts +0 -223
- package/src/components/snackbar/api.ts +0 -162
- package/src/components/snackbar/config.ts +0 -61
- package/src/components/snackbar/features.ts +0 -76
- package/src/components/snackbar/index.ts +0 -9
- package/src/components/snackbar/position.ts +0 -79
- package/src/components/snackbar/queue.ts +0 -76
- package/src/components/snackbar/snackbar.ts +0 -60
- package/src/components/snackbar/types.ts +0 -159
- package/src/components/switch/api.ts +0 -93
- package/src/components/switch/config.ts +0 -56
- package/src/components/switch/features.ts +0 -198
- package/src/components/switch/index.ts +0 -8
- package/src/components/switch/switch.ts +0 -52
- package/src/components/switch/types.ts +0 -168
- package/src/components/tabs/api.ts +0 -221
- package/src/components/tabs/config.ts +0 -73
- package/src/components/tabs/features.ts +0 -403
- package/src/components/tabs/index.ts +0 -46
- package/src/components/tabs/indicator.ts +0 -285
- package/src/components/tabs/responsive.ts +0 -144
- package/src/components/tabs/scroll-indicators.ts +0 -149
- package/src/components/tabs/state.ts +0 -186
- package/src/components/tabs/tab-api.ts +0 -266
- package/src/components/tabs/tab.ts +0 -267
- package/src/components/tabs/tabs.ts +0 -71
- package/src/components/tabs/types.ts +0 -461
- package/src/components/tabs/utils.ts +0 -107
- package/src/components/textfield/api.ts +0 -197
- package/src/components/textfield/config.ts +0 -52
- package/src/components/textfield/features/leading-icon.ts +0 -127
- package/src/components/textfield/features/placement.ts +0 -149
- package/src/components/textfield/features/prefix-text.ts +0 -107
- package/src/components/textfield/features/suffix-text.ts +0 -100
- package/src/components/textfield/features/supporting-text.ts +0 -113
- package/src/components/textfield/features/trailing-icon.ts +0 -108
- package/src/components/textfield/index.ts +0 -9
- package/src/components/textfield/textfield.ts +0 -92
- package/src/components/textfield/types.ts +0 -265
- package/src/components/timepicker/README.md +0 -277
- package/src/components/timepicker/api.ts +0 -632
- package/src/components/timepicker/clockdial.ts +0 -479
- package/src/components/timepicker/config.ts +0 -228
- package/src/components/timepicker/index.ts +0 -3
- package/src/components/timepicker/render.ts +0 -613
- package/src/components/timepicker/timepicker.ts +0 -117
- package/src/components/timepicker/types.ts +0 -336
- package/src/components/timepicker/utils.ts +0 -241
- package/src/components/tooltip/api.ts +0 -415
- package/src/components/tooltip/config.ts +0 -80
- package/src/components/tooltip/index.ts +0 -12
- package/src/components/tooltip/tooltip.ts +0 -60
- package/src/components/tooltip/types.ts +0 -223
- package/src/components/top-app-bar/config.ts +0 -83
- package/src/components/top-app-bar/top-app-bar.ts +0 -316
- package/src/components/top-app-bar/types.ts +0 -140
- package/src/core/build/constants.ts +0 -48
- package/src/core/build/icon.ts +0 -137
- package/src/core/build/ripple.ts +0 -193
- package/src/core/build/text.ts +0 -91
- package/src/core/collection/adapters/base.ts +0 -62
- package/src/core/collection/adapters/route.ts +0 -201
- package/src/core/collection/collection.ts +0 -300
- package/src/core/collection/index.ts +0 -57
- package/src/core/collection/list-manager.ts +0 -333
- package/src/core/compose/base.ts +0 -43
- package/src/core/compose/component.ts +0 -255
- package/src/core/compose/features/badge.ts +0 -79
- package/src/core/compose/features/checkable.ts +0 -155
- package/src/core/compose/features/disabled.ts +0 -116
- package/src/core/compose/features/events.ts +0 -65
- package/src/core/compose/features/icon.ts +0 -71
- package/src/core/compose/features/input.ts +0 -174
- package/src/core/compose/features/lifecycle.ts +0 -139
- package/src/core/compose/features/position.ts +0 -94
- package/src/core/compose/features/ripple.ts +0 -58
- package/src/core/compose/features/size.ts +0 -29
- package/src/core/compose/features/style.ts +0 -31
- package/src/core/compose/features/text.ts +0 -44
- package/src/core/compose/features/textinput.ts +0 -238
- package/src/core/compose/features/textlabel.ts +0 -113
- package/src/core/compose/features/track.ts +0 -84
- package/src/core/compose/features/variant.ts +0 -29
- package/src/core/compose/features/withEvents.ts +0 -137
- package/src/core/compose/index.ts +0 -54
- package/src/core/composition/features/dom.ts +0 -45
- package/src/core/composition/features/icon.ts +0 -131
- package/src/core/composition/features/label.ts +0 -155
- package/src/core/config.ts +0 -211
- package/src/core/dom/classes.ts +0 -132
- package/src/core/dom/create.ts +0 -273
- package/src/core/dom/events.ts +0 -209
- package/src/core/dom/utils.ts +0 -97
- package/src/core/index.ts +0 -111
- package/src/core/layout/README.md +0 -715
- package/src/core/layout/array.ts +0 -180
- package/src/core/layout/config.ts +0 -193
- package/src/core/layout/create.ts +0 -54
- package/src/core/layout/index.ts +0 -36
- package/src/core/layout/object.ts +0 -123
- package/src/core/layout/processor.ts +0 -106
- package/src/core/layout/result.ts +0 -84
- package/src/core/layout/types.ts +0 -180
- package/src/core/layout/utils.ts +0 -144
- package/src/core/state/disabled.ts +0 -81
- package/src/core/state/emitter.ts +0 -94
- package/src/core/state/events.ts +0 -88
- package/src/core/state/lifecycle.ts +0 -131
- package/src/core/state/store.ts +0 -197
- package/src/core/utils/index.ts +0 -45
- package/src/core/utils/mobile.ts +0 -98
- package/src/core/utils/object.ts +0 -41
- package/src/core/utils/validate.ts +0 -234
- package/src/index.ts +0 -134
- package/src/styles/abstract/_base.scss +0 -2
- package/src/styles/abstract/_config.scss +0 -28
- package/src/styles/abstract/_functions.scss +0 -124
- package/src/styles/abstract/_mixins.scss +0 -352
- package/src/styles/abstract/_theme.scss +0 -269
- package/src/styles/abstract/_variables.scss +0 -305
- package/src/styles/base/_reset.scss +0 -86
- package/src/styles/base/_typography.scss +0 -155
- package/src/styles/components/_badge.scss +0 -182
- package/src/styles/components/_bottom-app-bar.scss +0 -103
- package/src/styles/components/_button.scss +0 -224
- package/src/styles/components/_card.scss +0 -401
- package/src/styles/components/_carousel.scss +0 -645
- package/src/styles/components/_checkbox.scss +0 -231
- package/src/styles/components/_chips.scss +0 -638
- package/src/styles/components/_datepicker.scss +0 -358
- package/src/styles/components/_dialog.scss +0 -259
- package/src/styles/components/_divider.scss +0 -57
- package/src/styles/components/_extended-fab.scss +0 -267
- package/src/styles/components/_fab.scss +0 -225
- package/src/styles/components/_list.scss +0 -248
- package/src/styles/components/_menu.scss +0 -248
- package/src/styles/components/_navigation-mobile.scss +0 -244
- package/src/styles/components/_navigation-system.scss +0 -151
- package/src/styles/components/_navigation.scss +0 -407
- package/src/styles/components/_progress.scss +0 -151
- package/src/styles/components/_radios.scss +0 -187
- package/src/styles/components/_search.scss +0 -306
- package/src/styles/components/_segmented-button.scss +0 -227
- package/src/styles/components/_select.scss +0 -265
- package/src/styles/components/_sheet.scss +0 -236
- package/src/styles/components/_slider.scss +0 -489
- package/src/styles/components/_snackbar.scss +0 -211
- package/src/styles/components/_switch.scss +0 -298
- package/src/styles/components/_tabs.scss +0 -416
- package/src/styles/components/_textfield.scss +0 -773
- package/src/styles/components/_timepicker.scss +0 -451
- package/src/styles/components/_tooltip.scss +0 -241
- package/src/styles/components/_top-app-bar.scss +0 -225
- package/src/styles/main.scss +0 -175
- package/src/styles/themes/_autumn.scss +0 -105
- package/src/styles/themes/_base-theme.scss +0 -85
- package/src/styles/themes/_baseline.scss +0 -173
- package/src/styles/themes/_bluekhaki.scss +0 -125
- package/src/styles/themes/_brownbeige.scss +0 -125
- package/src/styles/themes/_browngreen.scss +0 -125
- package/src/styles/themes/_forest.scss +0 -77
- package/src/styles/themes/_greenbeige.scss +0 -125
- package/src/styles/themes/_index.scss +0 -6
- package/src/styles/themes/_material.scss +0 -125
- package/src/styles/themes/_ocean.scss +0 -77
- package/src/styles/themes/_sageivory.scss +0 -125
- package/src/styles/themes/_spring.scss +0 -77
- package/src/styles/themes/_summer.scss +0 -87
- package/src/styles/themes/_sunset.scss +0 -60
- package/src/styles/themes/_tealcaramel.scss +0 -125
- package/src/styles/themes/_winter.scss +0 -77
- package/src/styles/utilities/_colors.scss +0 -154
- package/src/styles/utilities/_flexbox.scss +0 -194
- package/src/styles/utilities/_layout.scss +0 -665
- package/src/styles/utilities/_ripple.scss +0 -79
- package/src/styles/utilities/_spacing.scss +0 -139
- package/src/styles/utilities/_typography.scss +0 -178
- package/src/styles/utilities/_visibility.scss +0 -142
|
@@ -1,294 +0,0 @@
|
|
|
1
|
-
// src/components/sheet/types.ts
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Sheet variants
|
|
5
|
-
*/
|
|
6
|
-
export const SHEET_VARIANTS = {
|
|
7
|
-
STANDARD: 'standard',
|
|
8
|
-
MODAL: 'modal',
|
|
9
|
-
EXPANDED: 'expanded'
|
|
10
|
-
} as const;
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Sheet positions
|
|
14
|
-
*/
|
|
15
|
-
export const SHEET_POSITIONS = {
|
|
16
|
-
BOTTOM: 'bottom',
|
|
17
|
-
TOP: 'top',
|
|
18
|
-
LEFT: 'left',
|
|
19
|
-
RIGHT: 'right'
|
|
20
|
-
} as const;
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* Sheet events
|
|
24
|
-
*/
|
|
25
|
-
export const SHEET_EVENTS = {
|
|
26
|
-
OPEN: 'open',
|
|
27
|
-
CLOSE: 'close',
|
|
28
|
-
DRAG_START: 'dragstart',
|
|
29
|
-
DRAG_END: 'dragend'
|
|
30
|
-
} as const;
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* Configuration interface for the Sheet component
|
|
34
|
-
* @category Components
|
|
35
|
-
*/
|
|
36
|
-
export interface SheetConfig {
|
|
37
|
-
/**
|
|
38
|
-
* Sheet variant that determines visual styling
|
|
39
|
-
* @default 'standard'
|
|
40
|
-
*/
|
|
41
|
-
variant?: keyof typeof SHEET_VARIANTS | string;
|
|
42
|
-
|
|
43
|
-
/**
|
|
44
|
-
* Sheet position on the screen
|
|
45
|
-
* @default 'bottom'
|
|
46
|
-
*/
|
|
47
|
-
position?: keyof typeof SHEET_POSITIONS | string;
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* Whether the sheet is initially open
|
|
51
|
-
* @default false
|
|
52
|
-
*/
|
|
53
|
-
open?: boolean;
|
|
54
|
-
|
|
55
|
-
/**
|
|
56
|
-
* Whether the sheet can be dismissed by clicking the scrim
|
|
57
|
-
* @default true
|
|
58
|
-
*/
|
|
59
|
-
dismissible?: boolean;
|
|
60
|
-
|
|
61
|
-
/**
|
|
62
|
-
* Whether to show a drag handle
|
|
63
|
-
* @default true
|
|
64
|
-
*/
|
|
65
|
-
dragHandle?: boolean;
|
|
66
|
-
|
|
67
|
-
/**
|
|
68
|
-
* Content for the sheet
|
|
69
|
-
* @example '<div>Sheet content</div>'
|
|
70
|
-
*/
|
|
71
|
-
content?: string;
|
|
72
|
-
|
|
73
|
-
/**
|
|
74
|
-
* Title for the sheet
|
|
75
|
-
* @example 'Sheet Title'
|
|
76
|
-
*/
|
|
77
|
-
title?: string;
|
|
78
|
-
|
|
79
|
-
/**
|
|
80
|
-
* Additional CSS classes to add to the sheet
|
|
81
|
-
* @example 'custom-sheet settings-panel'
|
|
82
|
-
*/
|
|
83
|
-
class?: string;
|
|
84
|
-
|
|
85
|
-
/**
|
|
86
|
-
* Component prefix for class names
|
|
87
|
-
* @default 'mtrl'
|
|
88
|
-
*/
|
|
89
|
-
prefix?: string;
|
|
90
|
-
|
|
91
|
-
/**
|
|
92
|
-
* Component name used in class generation
|
|
93
|
-
*/
|
|
94
|
-
componentName?: string;
|
|
95
|
-
|
|
96
|
-
/**
|
|
97
|
-
* Elevation level for the sheet (1-5)
|
|
98
|
-
* @default 3
|
|
99
|
-
*/
|
|
100
|
-
elevation?: number;
|
|
101
|
-
|
|
102
|
-
/**
|
|
103
|
-
* Maximum height of the sheet (CSS value)
|
|
104
|
-
* @example '80%'
|
|
105
|
-
*/
|
|
106
|
-
maxHeight?: string;
|
|
107
|
-
|
|
108
|
-
/**
|
|
109
|
-
* Whether to enable gesture-based interactions
|
|
110
|
-
* @default true
|
|
111
|
-
*/
|
|
112
|
-
enableGestures?: boolean;
|
|
113
|
-
|
|
114
|
-
/**
|
|
115
|
-
* Callback when sheet is opened
|
|
116
|
-
*/
|
|
117
|
-
onOpen?: () => void;
|
|
118
|
-
|
|
119
|
-
/**
|
|
120
|
-
* Callback when sheet is closed
|
|
121
|
-
*/
|
|
122
|
-
onClose?: () => void;
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
/**
|
|
126
|
-
* Content API interface for managing sheet content
|
|
127
|
-
* @category Components
|
|
128
|
-
*/
|
|
129
|
-
export interface ContentAPI {
|
|
130
|
-
/**
|
|
131
|
-
* Sets the content HTML
|
|
132
|
-
* @param html - HTML string for the content
|
|
133
|
-
* @returns The content API for chaining
|
|
134
|
-
*/
|
|
135
|
-
setContent: (html: string) => ContentAPI;
|
|
136
|
-
|
|
137
|
-
/**
|
|
138
|
-
* Gets the current content HTML
|
|
139
|
-
* @returns HTML string for the content
|
|
140
|
-
*/
|
|
141
|
-
getContent: () => string;
|
|
142
|
-
|
|
143
|
-
/**
|
|
144
|
-
* Gets the content DOM element
|
|
145
|
-
* @returns The content element or null if not present
|
|
146
|
-
*/
|
|
147
|
-
getElement: () => HTMLElement | null;
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
/**
|
|
151
|
-
* Title API interface for managing sheet title
|
|
152
|
-
* @category Components
|
|
153
|
-
*/
|
|
154
|
-
export interface TitleAPI {
|
|
155
|
-
/**
|
|
156
|
-
* Sets the title content
|
|
157
|
-
* @param text - Title text
|
|
158
|
-
* @returns The title API for chaining
|
|
159
|
-
*/
|
|
160
|
-
setTitle: (text: string) => TitleAPI;
|
|
161
|
-
|
|
162
|
-
/**
|
|
163
|
-
* Gets the current title text
|
|
164
|
-
* @returns Sheet title text
|
|
165
|
-
*/
|
|
166
|
-
getTitle: () => string;
|
|
167
|
-
|
|
168
|
-
/**
|
|
169
|
-
* Gets the title DOM element
|
|
170
|
-
* @returns The title element or null if not present
|
|
171
|
-
*/
|
|
172
|
-
getElement: () => HTMLElement | null;
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
/**
|
|
176
|
-
* Sheet component interface
|
|
177
|
-
* @category Components
|
|
178
|
-
*/
|
|
179
|
-
export interface SheetComponent {
|
|
180
|
-
/** The sheet's root DOM element */
|
|
181
|
-
element: HTMLElement;
|
|
182
|
-
|
|
183
|
-
/** The sheet's container DOM element */
|
|
184
|
-
container: HTMLElement;
|
|
185
|
-
|
|
186
|
-
/** API for managing sheet content */
|
|
187
|
-
content: ContentAPI;
|
|
188
|
-
|
|
189
|
-
/** API for managing sheet title */
|
|
190
|
-
title: TitleAPI;
|
|
191
|
-
|
|
192
|
-
/** API for managing sheet state */
|
|
193
|
-
state: {
|
|
194
|
-
/** Opens the sheet */
|
|
195
|
-
open: () => void;
|
|
196
|
-
/** Closes the sheet */
|
|
197
|
-
close: () => void;
|
|
198
|
-
/** Checks if the sheet is open */
|
|
199
|
-
isOpen: () => boolean;
|
|
200
|
-
};
|
|
201
|
-
|
|
202
|
-
/** API for managing component lifecycle */
|
|
203
|
-
lifecycle: {
|
|
204
|
-
/** Destroys the component and cleans up resources */
|
|
205
|
-
destroy: () => void;
|
|
206
|
-
};
|
|
207
|
-
|
|
208
|
-
/**
|
|
209
|
-
* Gets a class name with the component's prefix
|
|
210
|
-
* @param name - Base class name
|
|
211
|
-
* @returns Prefixed class name
|
|
212
|
-
*/
|
|
213
|
-
getClass: (name: string) => string;
|
|
214
|
-
|
|
215
|
-
/**
|
|
216
|
-
* Opens the sheet
|
|
217
|
-
* @returns The sheet component for chaining
|
|
218
|
-
*/
|
|
219
|
-
open: () => SheetComponent;
|
|
220
|
-
|
|
221
|
-
/**
|
|
222
|
-
* Closes the sheet
|
|
223
|
-
* @returns The sheet component for chaining
|
|
224
|
-
*/
|
|
225
|
-
close: () => SheetComponent;
|
|
226
|
-
|
|
227
|
-
/**
|
|
228
|
-
* Sets the sheet content
|
|
229
|
-
* @param html - Content HTML
|
|
230
|
-
* @returns The sheet component for chaining
|
|
231
|
-
*/
|
|
232
|
-
setContent: (html: string) => SheetComponent;
|
|
233
|
-
|
|
234
|
-
/**
|
|
235
|
-
* Gets the sheet content HTML
|
|
236
|
-
* @returns Content HTML
|
|
237
|
-
*/
|
|
238
|
-
getContent: () => string;
|
|
239
|
-
|
|
240
|
-
/**
|
|
241
|
-
* Sets the sheet title
|
|
242
|
-
* @param text - Title text
|
|
243
|
-
* @returns The sheet component for chaining
|
|
244
|
-
*/
|
|
245
|
-
setTitle: (text: string) => SheetComponent;
|
|
246
|
-
|
|
247
|
-
/**
|
|
248
|
-
* Gets the sheet title text
|
|
249
|
-
* @returns Title text
|
|
250
|
-
*/
|
|
251
|
-
getTitle: () => string;
|
|
252
|
-
|
|
253
|
-
/**
|
|
254
|
-
* Enables or disables the drag handle
|
|
255
|
-
* @param enabled - Whether to show the drag handle
|
|
256
|
-
* @returns The sheet component for chaining
|
|
257
|
-
*/
|
|
258
|
-
setDragHandle: (enabled: boolean) => SheetComponent;
|
|
259
|
-
|
|
260
|
-
/**
|
|
261
|
-
* Sets the maximum height of the sheet
|
|
262
|
-
* @param height - CSS value for max height
|
|
263
|
-
* @returns The sheet component for chaining
|
|
264
|
-
*/
|
|
265
|
-
setMaxHeight: (height: string) => SheetComponent;
|
|
266
|
-
|
|
267
|
-
/**
|
|
268
|
-
* Destroys the sheet component and cleans up resources
|
|
269
|
-
*/
|
|
270
|
-
destroy: () => void;
|
|
271
|
-
|
|
272
|
-
/**
|
|
273
|
-
* Adds an event listener to the sheet
|
|
274
|
-
* @param event - Event name ('open', 'close', etc.)
|
|
275
|
-
* @param handler - Event handler function
|
|
276
|
-
* @returns The sheet component for chaining
|
|
277
|
-
*/
|
|
278
|
-
on: (event: string, handler: Function) => SheetComponent;
|
|
279
|
-
|
|
280
|
-
/**
|
|
281
|
-
* Removes an event listener from the sheet
|
|
282
|
-
* @param event - Event name
|
|
283
|
-
* @param handler - Event handler function
|
|
284
|
-
* @returns The sheet component for chaining
|
|
285
|
-
*/
|
|
286
|
-
off: (event: string, handler: Function) => SheetComponent;
|
|
287
|
-
|
|
288
|
-
/**
|
|
289
|
-
* Adds CSS classes to the sheet element
|
|
290
|
-
* @param classes - One or more class names to add
|
|
291
|
-
* @returns The sheet component for chaining
|
|
292
|
-
*/
|
|
293
|
-
addClass: (...classes: string[]) => SheetComponent;
|
|
294
|
-
}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
# Slider Accessibility Enhancements
|
|
2
|
-
|
|
3
|
-
## Overview
|
|
4
|
-
|
|
5
|
-
Based on the provided accessibility requirements, the slider component has been enhanced to provide better keyboard navigation, visual feedback, and overall accessibility. The changes focus on ensuring that the slider meets Material Design accessibility standards and provides appropriate feedback based on input type.
|
|
6
|
-
|
|
7
|
-
## Key Enhancements
|
|
8
|
-
|
|
9
|
-
### Focus and Keyboard Navigation
|
|
10
|
-
|
|
11
|
-
- **Direct Handle Focus**: The initial focus now lands directly on the handle (not the container)
|
|
12
|
-
- **Visual Feedback**: Added a clear outline on focus to provide visual cues for keyboard users
|
|
13
|
-
- **Arrow Key Navigation**:
|
|
14
|
-
- Left/Right arrows change the value by one step
|
|
15
|
-
- Up/Down arrows also change the value (for consistency with other controls)
|
|
16
|
-
- Home/End keys jump to minimum/maximum values
|
|
17
|
-
- Page Up/Down for larger step increments
|
|
18
|
-
- Shift + arrows for faster navigation (10x step size)
|
|
19
|
-
|
|
20
|
-
### Visual Feedback During Interaction
|
|
21
|
-
|
|
22
|
-
- **Handle Shrinking**: The handle width shrinks slightly during interaction to provide feedback
|
|
23
|
-
- **Value Display**:
|
|
24
|
-
- Value appears during interaction (touch, drag, mouse click, keyboard navigation)
|
|
25
|
-
- Value remains visible briefly after interaction ends (1.5 seconds)
|
|
26
|
-
- Value position updates to follow the handle
|
|
27
|
-
|
|
28
|
-
### Visual Anchors for Contrast
|
|
29
|
-
|
|
30
|
-
- **Track End Indicators**: Added dot elements at both ends of the track
|
|
31
|
-
- **Color Contrast**: Ensured sufficient contrast for all elements
|
|
32
|
-
- **Disabled State**: Properly indicated visually and via ARIA attributes
|
|
33
|
-
|
|
34
|
-
## Implementation Details
|
|
35
|
-
|
|
36
|
-
1. **Keyboard Handling**:
|
|
37
|
-
- Enhanced keyboard navigation with proper step calculations
|
|
38
|
-
- Added support for modifier keys (Shift)
|
|
39
|
-
- Set appropriate ARIA attributes for screen readers
|
|
40
|
-
|
|
41
|
-
2. **Interaction Feedback**:
|
|
42
|
-
- Modified CSS to shrink handle width during active states
|
|
43
|
-
- Enhanced value bubble display timing
|
|
44
|
-
- Improved touch and mouse event handling
|
|
45
|
-
|
|
46
|
-
3. **Focus Management**:
|
|
47
|
-
- Set clear focus styles that work cross-browser
|
|
48
|
-
- Applied focus directly to interactive handle elements
|
|
49
|
-
- Ensured focus outline is visible against various backgrounds
|
|
50
|
-
|
|
51
|
-
## Keyboard Navigation Map
|
|
52
|
-
|
|
53
|
-
| Keys | Actions |
|
|
54
|
-
|------|---------|
|
|
55
|
-
| Tab | Moves focus to the slider handle |
|
|
56
|
-
| Arrows | Increase and decrease the value by one step |
|
|
57
|
-
| Shift + Arrows | Increase and decrease by 10x step size |
|
|
58
|
-
| Home / End | Set to minimum or maximum value |
|
|
59
|
-
| Page Up / Down | Increase/decrease by larger increments |
|
|
@@ -1,192 +0,0 @@
|
|
|
1
|
-
// src/components/slider/api.ts
|
|
2
|
-
import { SliderComponent, SliderEvent } from './types';
|
|
3
|
-
import { SLIDER_COLORS, SLIDER_SIZES, SLIDER_EVENTS } from './types';
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* API options interface - structured by feature area
|
|
7
|
-
*/
|
|
8
|
-
interface ApiOptions {
|
|
9
|
-
slider: {
|
|
10
|
-
setValue: (value: number, triggerEvent?: boolean) => any;
|
|
11
|
-
getValue: () => number;
|
|
12
|
-
setSecondValue: (value: number, triggerEvent?: boolean) => any;
|
|
13
|
-
getSecondValue: () => number | null;
|
|
14
|
-
setMin: (min: number) => any;
|
|
15
|
-
getMin: () => number;
|
|
16
|
-
setMax: (max: number) => any;
|
|
17
|
-
getMax: () => number;
|
|
18
|
-
setStep: (step: number) => any;
|
|
19
|
-
getStep: () => number;
|
|
20
|
-
regenerateTicks: () => any;
|
|
21
|
-
};
|
|
22
|
-
disabled: {
|
|
23
|
-
enable: () => void;
|
|
24
|
-
disable: () => void;
|
|
25
|
-
isDisabled: () => boolean;
|
|
26
|
-
};
|
|
27
|
-
appearance: {
|
|
28
|
-
setColor: (color: string) => void;
|
|
29
|
-
getColor: () => string;
|
|
30
|
-
setSize: (size: string) => void;
|
|
31
|
-
getSize: () => string;
|
|
32
|
-
showTicks: (show: boolean) => void;
|
|
33
|
-
showCurrentValue: (show: boolean) => void;
|
|
34
|
-
};
|
|
35
|
-
text: {
|
|
36
|
-
setText: (text: string) => void;
|
|
37
|
-
getText: () => string;
|
|
38
|
-
};
|
|
39
|
-
icon: {
|
|
40
|
-
setIcon: (html: string) => void;
|
|
41
|
-
getIcon: () => string;
|
|
42
|
-
};
|
|
43
|
-
events: {
|
|
44
|
-
on: (event: string, handler: Function) => void;
|
|
45
|
-
off: (event: string, handler: Function) => void;
|
|
46
|
-
};
|
|
47
|
-
lifecycle: {
|
|
48
|
-
destroy: () => void;
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
/**
|
|
53
|
-
* Enhances a slider component with a streamlined API
|
|
54
|
-
* @param {ApiOptions} options - API configuration options
|
|
55
|
-
* @returns {Function} Higher-order function that adds API methods to component
|
|
56
|
-
* @internal This is an internal utility for the Slider component
|
|
57
|
-
*/
|
|
58
|
-
export const withAPI = (options: ApiOptions) =>
|
|
59
|
-
(component: { element: HTMLElement }): SliderComponent => {
|
|
60
|
-
return {
|
|
61
|
-
...component as any,
|
|
62
|
-
|
|
63
|
-
// Element access
|
|
64
|
-
element: component.element,
|
|
65
|
-
|
|
66
|
-
// Value management
|
|
67
|
-
setValue(value: number, triggerEvent: boolean = true) {
|
|
68
|
-
options.slider.setValue(value, triggerEvent);
|
|
69
|
-
return this;
|
|
70
|
-
},
|
|
71
|
-
|
|
72
|
-
getValue() {
|
|
73
|
-
return options.slider.getValue();
|
|
74
|
-
},
|
|
75
|
-
|
|
76
|
-
setSecondValue(value: number, triggerEvent: boolean = true) {
|
|
77
|
-
options.slider.setSecondValue(value, triggerEvent);
|
|
78
|
-
return this;
|
|
79
|
-
},
|
|
80
|
-
|
|
81
|
-
getSecondValue() {
|
|
82
|
-
return options.slider.getSecondValue();
|
|
83
|
-
},
|
|
84
|
-
|
|
85
|
-
// Range management
|
|
86
|
-
setMin(min: number) {
|
|
87
|
-
options.slider.setMin(min);
|
|
88
|
-
return this;
|
|
89
|
-
},
|
|
90
|
-
|
|
91
|
-
getMin() {
|
|
92
|
-
return options.slider.getMin();
|
|
93
|
-
},
|
|
94
|
-
|
|
95
|
-
setMax(max: number) {
|
|
96
|
-
options.slider.setMax(max);
|
|
97
|
-
return this;
|
|
98
|
-
},
|
|
99
|
-
|
|
100
|
-
getMax() {
|
|
101
|
-
return options.slider.getMax();
|
|
102
|
-
},
|
|
103
|
-
|
|
104
|
-
setStep(step: number) {
|
|
105
|
-
options.slider.setStep(step);
|
|
106
|
-
return this;
|
|
107
|
-
},
|
|
108
|
-
|
|
109
|
-
getStep() {
|
|
110
|
-
return options.slider.getStep();
|
|
111
|
-
},
|
|
112
|
-
|
|
113
|
-
// State management
|
|
114
|
-
enable() {
|
|
115
|
-
options.disabled.enable();
|
|
116
|
-
return this;
|
|
117
|
-
},
|
|
118
|
-
|
|
119
|
-
disable() {
|
|
120
|
-
options.disabled.disable();
|
|
121
|
-
return this;
|
|
122
|
-
},
|
|
123
|
-
|
|
124
|
-
isDisabled() {
|
|
125
|
-
return options.disabled.isDisabled();
|
|
126
|
-
},
|
|
127
|
-
|
|
128
|
-
// Appearance management
|
|
129
|
-
setColor(color: keyof typeof SLIDER_COLORS | typeof SLIDER_COLORS[keyof typeof SLIDER_COLORS]) {
|
|
130
|
-
options.appearance.setColor(color);
|
|
131
|
-
return this;
|
|
132
|
-
},
|
|
133
|
-
|
|
134
|
-
getColor() {
|
|
135
|
-
return options.appearance.getColor();
|
|
136
|
-
},
|
|
137
|
-
|
|
138
|
-
setSize(size: keyof typeof SLIDER_SIZES | typeof SLIDER_SIZES[keyof typeof SLIDER_SIZES]) {
|
|
139
|
-
options.appearance.setSize(size);
|
|
140
|
-
return this;
|
|
141
|
-
},
|
|
142
|
-
|
|
143
|
-
getSize() {
|
|
144
|
-
return options.appearance.getSize();
|
|
145
|
-
},
|
|
146
|
-
|
|
147
|
-
showTicks(show: boolean) {
|
|
148
|
-
options.appearance.showTicks(show);
|
|
149
|
-
return this;
|
|
150
|
-
},
|
|
151
|
-
|
|
152
|
-
showCurrentValue(show: boolean) {
|
|
153
|
-
options.appearance.showCurrentValue(show);
|
|
154
|
-
return this;
|
|
155
|
-
},
|
|
156
|
-
|
|
157
|
-
// Label and icon management
|
|
158
|
-
setLabel(text: string) {
|
|
159
|
-
if (options.text?.setText) options.text.setText(text);
|
|
160
|
-
return this;
|
|
161
|
-
},
|
|
162
|
-
|
|
163
|
-
getLabel() {
|
|
164
|
-
return options.text?.getText ? options.text.getText() : '';
|
|
165
|
-
},
|
|
166
|
-
|
|
167
|
-
setIcon(iconHtml: string) {
|
|
168
|
-
if (options.icon?.setIcon) options.icon.setIcon(iconHtml);
|
|
169
|
-
return this;
|
|
170
|
-
},
|
|
171
|
-
|
|
172
|
-
getIcon() {
|
|
173
|
-
return options.icon?.getIcon ? options.icon.getIcon() : '';
|
|
174
|
-
},
|
|
175
|
-
|
|
176
|
-
// Event management
|
|
177
|
-
on(event: keyof typeof SLIDER_EVENTS | typeof SLIDER_EVENTS[keyof typeof SLIDER_EVENTS], handler: (event: SliderEvent) => void) {
|
|
178
|
-
if (options.events?.on) options.events.on(event, handler);
|
|
179
|
-
return this;
|
|
180
|
-
},
|
|
181
|
-
|
|
182
|
-
off(event: keyof typeof SLIDER_EVENTS | typeof SLIDER_EVENTS[keyof typeof SLIDER_EVENTS], handler: (event: SliderEvent) => void) {
|
|
183
|
-
if (options.events?.off) options.events.off(event, handler);
|
|
184
|
-
return this;
|
|
185
|
-
},
|
|
186
|
-
|
|
187
|
-
// Lifecycle management
|
|
188
|
-
destroy() {
|
|
189
|
-
if (options.lifecycle?.destroy) options.lifecycle.destroy();
|
|
190
|
-
}
|
|
191
|
-
};
|
|
192
|
-
};
|
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
// src/components/slider/config.ts
|
|
2
|
-
import {
|
|
3
|
-
createComponentConfig,
|
|
4
|
-
createElementConfig
|
|
5
|
-
} from '../../core/config/component-config';
|
|
6
|
-
import { SliderConfig } from './types';
|
|
7
|
-
import { SLIDER_COLORS, SLIDER_SIZES } from './types';
|
|
8
|
-
import { createSliderSchema } from './schema';
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* Default configuration for the Slider component
|
|
12
|
-
*/
|
|
13
|
-
export const defaultConfig: SliderConfig = {
|
|
14
|
-
min: 0,
|
|
15
|
-
max: 100,
|
|
16
|
-
value: 0,
|
|
17
|
-
step: 1,
|
|
18
|
-
disabled: false,
|
|
19
|
-
color: SLIDER_COLORS.PRIMARY,
|
|
20
|
-
size: SLIDER_SIZES.MEDIUM,
|
|
21
|
-
ticks: false,
|
|
22
|
-
showValue: true,
|
|
23
|
-
snapToSteps: true,
|
|
24
|
-
range: false,
|
|
25
|
-
iconPosition: 'start',
|
|
26
|
-
labelPosition: 'start',
|
|
27
|
-
valueFormatter: (value) => value.toString()
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* Creates the base configuration for Slider component
|
|
32
|
-
* @param {SliderConfig} config - User provided configuration
|
|
33
|
-
* @returns {SliderConfig} Complete configuration with defaults applied
|
|
34
|
-
*/
|
|
35
|
-
export const createBaseConfig = (config: SliderConfig = {}): SliderConfig => {
|
|
36
|
-
// Create the base config with defaults applied
|
|
37
|
-
const baseConfig = createComponentConfig(defaultConfig, config, 'slider') as SliderConfig;
|
|
38
|
-
|
|
39
|
-
// Create a basic component object for structure generation
|
|
40
|
-
const baseComponent = {
|
|
41
|
-
componentName: 'slider',
|
|
42
|
-
config: baseConfig,
|
|
43
|
-
getClass: (className) => {
|
|
44
|
-
const prefix = baseConfig.prefix || 'mtrl';
|
|
45
|
-
return `${prefix}-${className}`;
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
|
|
49
|
-
// Add the structure definition to the config
|
|
50
|
-
baseConfig.schema = createSliderSchema(baseComponent, baseConfig);
|
|
51
|
-
|
|
52
|
-
return baseConfig;
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
/**
|
|
56
|
-
* Generates element configuration for the Slider component
|
|
57
|
-
* @param {SliderConfig} config - Slider configuration
|
|
58
|
-
* @returns {Object} Element configuration object for withElement
|
|
59
|
-
*/
|
|
60
|
-
export const getElementConfig = (config: SliderConfig) =>
|
|
61
|
-
createElementConfig(config, {
|
|
62
|
-
tag: 'div',
|
|
63
|
-
attrs: {
|
|
64
|
-
tabindex: '-1',
|
|
65
|
-
'aria-disabled': config.disabled === true ? 'true' : 'false',
|
|
66
|
-
role: 'none'
|
|
67
|
-
},
|
|
68
|
-
className: config.class
|
|
69
|
-
});
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* Creates API configuration for the Slider component
|
|
73
|
-
* @param {Object} comp - Component with slider features
|
|
74
|
-
* @returns {Object} API configuration object
|
|
75
|
-
*/
|
|
76
|
-
export const getApiConfig = (comp) => ({
|
|
77
|
-
slider: {
|
|
78
|
-
setValue: (v, t) => comp.slider?.setValue(v, t),
|
|
79
|
-
getValue: () => comp.slider?.getValue() ?? 0,
|
|
80
|
-
setSecondValue: (v, t) => comp.slider?.setSecondValue(v, t),
|
|
81
|
-
getSecondValue: () => comp.slider?.getSecondValue() ?? null,
|
|
82
|
-
setMin: (m) => comp.slider?.setMin(m),
|
|
83
|
-
getMin: () => comp.slider?.getMin() ?? 0,
|
|
84
|
-
setMax: (m) => comp.slider?.setMax(m),
|
|
85
|
-
getMax: () => comp.slider?.getMax() ?? 100,
|
|
86
|
-
setStep: (s) => comp.slider?.setStep(s),
|
|
87
|
-
getStep: () => comp.slider?.getStep() ?? 1,
|
|
88
|
-
regenerateTicks: () => comp.slider?.regenerateTicks?.()
|
|
89
|
-
},
|
|
90
|
-
disabled: {
|
|
91
|
-
enable: () => comp.disabled?.enable?.(),
|
|
92
|
-
disable: () => comp.disabled?.disable?.(),
|
|
93
|
-
isDisabled: () => comp.disabled?.isDisabled?.() ?? false
|
|
94
|
-
},
|
|
95
|
-
appearance: {
|
|
96
|
-
setColor: (c) => comp.appearance?.setColor?.(c),
|
|
97
|
-
getColor: () => comp.appearance?.getColor?.() ?? 'primary',
|
|
98
|
-
setSize: (s) => comp.appearance?.setSize?.(s),
|
|
99
|
-
getSize: () => comp.appearance?.getSize?.() ?? 'medium',
|
|
100
|
-
showTicks: (s) => comp.appearance?.showTicks?.(s),
|
|
101
|
-
showCurrentValue: (s) => comp.appearance?.showCurrentValue?.(s)
|
|
102
|
-
},
|
|
103
|
-
text: {
|
|
104
|
-
setText: (t) => comp.label?.setText?.(t),
|
|
105
|
-
getText: () => comp.label?.getText?.() ?? ''
|
|
106
|
-
},
|
|
107
|
-
icon: {
|
|
108
|
-
setIcon: (h) => comp.icon?.setIcon?.(h),
|
|
109
|
-
getIcon: () => comp.icon?.getIcon?.() ?? ''
|
|
110
|
-
},
|
|
111
|
-
events: {
|
|
112
|
-
on: (e, h) => comp.on?.(e, h),
|
|
113
|
-
off: (e, h) => comp.off?.(e, h)
|
|
114
|
-
},
|
|
115
|
-
lifecycle: {
|
|
116
|
-
destroy: () => comp.lifecycle?.destroy?.()
|
|
117
|
-
}
|
|
118
|
-
});
|