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
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { SliderConfig, SliderComponent } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Creates a new Slider component
|
|
4
|
+
*
|
|
5
|
+
* Slider follows a clear architectural pattern:
|
|
6
|
+
* 1. Structure definition - Describes the DOM structure declaratively
|
|
7
|
+
* 2. Feature enhancement - Adds specific capabilities (range, icons, labels)
|
|
8
|
+
* 3. DOM creation - Turns the structure into actual DOM elements
|
|
9
|
+
* 4. State management - Handles visual states and appearance
|
|
10
|
+
* 5. Controller - Manages behavior, events, and UI rendering
|
|
11
|
+
* 6. Lifecycle - Handles component lifecycle events
|
|
12
|
+
* 7. Public API - Exposes a clean, consistent API
|
|
13
|
+
*
|
|
14
|
+
* @param {SliderConfig} config - Slider configuration object
|
|
15
|
+
* @returns {SliderComponent} Slider component instance
|
|
16
|
+
*/
|
|
17
|
+
declare const createSlider: (config?: SliderConfig) => SliderComponent;
|
|
18
|
+
export default createSlider;
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Available slider color variants
|
|
3
|
+
*/
|
|
4
|
+
export declare const SLIDER_COLORS: {
|
|
5
|
+
readonly PRIMARY: "primary";
|
|
6
|
+
readonly SECONDARY: "secondary";
|
|
7
|
+
readonly TERTIARY: "tertiary";
|
|
8
|
+
readonly ERROR: "error";
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Available slider size variants
|
|
12
|
+
*/
|
|
13
|
+
export declare const SLIDER_SIZES: {
|
|
14
|
+
readonly SMALL: "small";
|
|
15
|
+
readonly MEDIUM: "medium";
|
|
16
|
+
readonly LARGE: "large";
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Available slider events
|
|
20
|
+
*/
|
|
21
|
+
export declare const SLIDER_EVENTS: {
|
|
22
|
+
readonly CHANGE: "change";
|
|
23
|
+
readonly INPUT: "input";
|
|
24
|
+
readonly FOCUS: "focus";
|
|
25
|
+
readonly BLUR: "blur";
|
|
26
|
+
readonly START: "start";
|
|
27
|
+
readonly END: "end";
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Available slider color variants
|
|
31
|
+
*/
|
|
32
|
+
export type SliderColor = 'primary' | 'secondary' | 'tertiary' | 'error';
|
|
33
|
+
/**
|
|
34
|
+
* Available slider size variants
|
|
35
|
+
*/
|
|
36
|
+
export type SliderSize = 'small' | 'medium' | 'large';
|
|
37
|
+
/**
|
|
38
|
+
* Available slider event types
|
|
39
|
+
*/
|
|
40
|
+
export type SliderEventType = 'change' | 'input' | 'focus' | 'blur' | 'start' | 'end';
|
|
41
|
+
/**
|
|
42
|
+
* Configuration options for the slider component
|
|
43
|
+
* @interface SliderConfig
|
|
44
|
+
*/
|
|
45
|
+
export interface SliderConfig {
|
|
46
|
+
/** Minimum value of the slider */
|
|
47
|
+
min?: number;
|
|
48
|
+
/** Maximum value of the slider */
|
|
49
|
+
max?: number;
|
|
50
|
+
/** Current value of the slider */
|
|
51
|
+
value?: number;
|
|
52
|
+
/** Secondary value for range slider (when using two handles) */
|
|
53
|
+
secondValue?: number;
|
|
54
|
+
/** Step size for discrete slider */
|
|
55
|
+
step?: number;
|
|
56
|
+
/** Whether the slider is disabled */
|
|
57
|
+
disabled?: boolean;
|
|
58
|
+
/** Color variant of the slider */
|
|
59
|
+
color?: SliderColor;
|
|
60
|
+
/** Size variant of the slider */
|
|
61
|
+
size?: SliderSize;
|
|
62
|
+
/** Whether to show tick marks */
|
|
63
|
+
ticks?: boolean;
|
|
64
|
+
/** Custom labels for ticks, if provided */
|
|
65
|
+
tickLabels?: string[] | Record<number, string>;
|
|
66
|
+
/** Format function for displayed values */
|
|
67
|
+
valueFormatter?: (value: number) => string;
|
|
68
|
+
/** Whether to show the current value while dragging */
|
|
69
|
+
showValue?: boolean;
|
|
70
|
+
/** Whether to snap to steps while dragging (discrete slider) */
|
|
71
|
+
snapToSteps?: boolean;
|
|
72
|
+
/** Whether the slider is a range slider (two handles) */
|
|
73
|
+
range?: boolean;
|
|
74
|
+
/** Label text for the slider */
|
|
75
|
+
label?: string;
|
|
76
|
+
/** Position of the label (start or end) - defaults to 'start' */
|
|
77
|
+
labelPosition?: 'start' | 'end';
|
|
78
|
+
/** Icon to display with the slider */
|
|
79
|
+
icon?: string;
|
|
80
|
+
/** Position of the icon (start or end) */
|
|
81
|
+
iconPosition?: 'start' | 'end';
|
|
82
|
+
/** Additional CSS classes */
|
|
83
|
+
class?: string;
|
|
84
|
+
/** Event handlers for slider events */
|
|
85
|
+
on?: {
|
|
86
|
+
[key in SliderEventType]?: (event: SliderEvent) => void;
|
|
87
|
+
};
|
|
88
|
+
/** CSS class prefix */
|
|
89
|
+
prefix?: string;
|
|
90
|
+
/** Component schema */
|
|
91
|
+
schema?: any;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Slider event data
|
|
95
|
+
* @interface SliderEvent
|
|
96
|
+
*/
|
|
97
|
+
export interface SliderEvent {
|
|
98
|
+
/** The slider component that triggered the event */
|
|
99
|
+
slider: any;
|
|
100
|
+
/** Current slider value */
|
|
101
|
+
value: number;
|
|
102
|
+
/** Secondary value (for range sliders) */
|
|
103
|
+
secondValue: number | null;
|
|
104
|
+
/** Original DOM event if available */
|
|
105
|
+
originalEvent: Event | null;
|
|
106
|
+
/** Function to prevent default behavior */
|
|
107
|
+
preventDefault: () => void;
|
|
108
|
+
/** Whether default behavior was prevented */
|
|
109
|
+
defaultPrevented: boolean;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Slider component public API interface
|
|
113
|
+
* @interface SliderComponent
|
|
114
|
+
*/
|
|
115
|
+
export interface SliderComponent {
|
|
116
|
+
/** The root element of the slider */
|
|
117
|
+
element: HTMLElement;
|
|
118
|
+
/** Sets slider value */
|
|
119
|
+
setValue: (value: number, triggerEvent?: boolean) => SliderComponent;
|
|
120
|
+
/** Gets slider value */
|
|
121
|
+
getValue: () => number;
|
|
122
|
+
/** Sets secondary slider value (for range slider) */
|
|
123
|
+
setSecondValue: (value: number, triggerEvent?: boolean) => SliderComponent;
|
|
124
|
+
/** Gets secondary slider value */
|
|
125
|
+
getSecondValue: () => number | null;
|
|
126
|
+
/** Sets slider minimum value */
|
|
127
|
+
setMin: (min: number) => SliderComponent;
|
|
128
|
+
/** Gets slider minimum value */
|
|
129
|
+
getMin: () => number;
|
|
130
|
+
/** Sets slider maximum value */
|
|
131
|
+
setMax: (max: number) => SliderComponent;
|
|
132
|
+
/** Gets slider maximum value */
|
|
133
|
+
getMax: () => number;
|
|
134
|
+
/** Sets slider step size */
|
|
135
|
+
setStep: (step: number) => SliderComponent;
|
|
136
|
+
/** Gets slider step size */
|
|
137
|
+
getStep: () => number;
|
|
138
|
+
/** Enables the slider */
|
|
139
|
+
enable: () => SliderComponent;
|
|
140
|
+
/** Disables the slider */
|
|
141
|
+
disable: () => SliderComponent;
|
|
142
|
+
/** Checks if slider is disabled */
|
|
143
|
+
isDisabled: () => boolean;
|
|
144
|
+
/** Sets slider color */
|
|
145
|
+
setColor: (color: SliderColor) => SliderComponent;
|
|
146
|
+
/** Gets slider color */
|
|
147
|
+
getColor: () => string;
|
|
148
|
+
/** Sets slider size */
|
|
149
|
+
setSize: (size: SliderSize) => SliderComponent;
|
|
150
|
+
/** Gets slider size */
|
|
151
|
+
getSize: () => string;
|
|
152
|
+
/** Shows or hides tick marks */
|
|
153
|
+
showTicks: (show: boolean) => SliderComponent;
|
|
154
|
+
/** Shows or hides current value while dragging */
|
|
155
|
+
showCurrentValue: (show: boolean) => SliderComponent;
|
|
156
|
+
/** Sets label text */
|
|
157
|
+
setLabel: (text: string) => SliderComponent;
|
|
158
|
+
/** Gets label text */
|
|
159
|
+
getLabel: () => string;
|
|
160
|
+
/** Sets icon HTML */
|
|
161
|
+
setIcon: (iconHtml: string) => SliderComponent;
|
|
162
|
+
/** Gets icon HTML */
|
|
163
|
+
getIcon: () => string;
|
|
164
|
+
/** Adds event listener */
|
|
165
|
+
on: (event: SliderEventType, handler: (event: SliderEvent) => void) => SliderComponent;
|
|
166
|
+
/** Removes event listener */
|
|
167
|
+
off: (event: SliderEventType, handler: (event: SliderEvent) => void) => SliderComponent;
|
|
168
|
+
/** Destroys the slider component and cleans up resources */
|
|
169
|
+
destroy: () => void;
|
|
170
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { BaseComponent, SnackbarComponent, ApiOptions } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Enhances snackbar component with API methods
|
|
4
|
+
* @param {ApiOptions} options - API configuration
|
|
5
|
+
* @returns {Function} Higher-order function that adds API methods to component
|
|
6
|
+
*/
|
|
7
|
+
export declare const withAPI: ({ lifecycle, queue }: ApiOptions) => (component: BaseComponent) => SnackbarComponent;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { SnackbarConfig, BaseComponent, ApiOptions } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Default configuration for the Snackbar component
|
|
4
|
+
*/
|
|
5
|
+
export declare const defaultConfig: SnackbarConfig;
|
|
6
|
+
/**
|
|
7
|
+
* Creates the base configuration for Snackbar component
|
|
8
|
+
* @param {SnackbarConfig} config - User provided configuration
|
|
9
|
+
* @returns {SnackbarConfig} Complete configuration with defaults applied
|
|
10
|
+
*/
|
|
11
|
+
export declare const createBaseConfig: (config: SnackbarConfig) => SnackbarConfig;
|
|
12
|
+
/**
|
|
13
|
+
* Generates element configuration for the Snackbar component
|
|
14
|
+
* @param {SnackbarConfig} config - Snackbar configuration
|
|
15
|
+
* @returns {Object} Element configuration object for withElement
|
|
16
|
+
*/
|
|
17
|
+
export declare const getElementConfig: (config: SnackbarConfig) => {
|
|
18
|
+
tag: string;
|
|
19
|
+
componentName: string;
|
|
20
|
+
attrs: Record<string, any>;
|
|
21
|
+
className: string[];
|
|
22
|
+
rawClass: string | string[];
|
|
23
|
+
html: string;
|
|
24
|
+
text: string;
|
|
25
|
+
forwardEvents: Record<string, boolean | ((component: any, event: Event) => boolean)>;
|
|
26
|
+
interactive: boolean;
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Creates text configuration for the Snackbar component
|
|
30
|
+
* @param {SnackbarConfig} config - Snackbar configuration
|
|
31
|
+
* @returns {Object} Text configuration object
|
|
32
|
+
*/
|
|
33
|
+
export declare const getTextConfig: (config: SnackbarConfig) => {
|
|
34
|
+
text: string;
|
|
35
|
+
variant?: import("./types").SnackbarVariant;
|
|
36
|
+
position?: import("./types").SnackbarPosition;
|
|
37
|
+
message: string;
|
|
38
|
+
action?: string;
|
|
39
|
+
duration?: number;
|
|
40
|
+
onAction?: (event: import("./types").SnackbarEvent) => void;
|
|
41
|
+
onOpen?: (event: import("./types").SnackbarEvent) => void;
|
|
42
|
+
onClose?: (event: import("./types").SnackbarEvent) => void;
|
|
43
|
+
class?: string;
|
|
44
|
+
prefix?: string;
|
|
45
|
+
componentName?: string;
|
|
46
|
+
on?: { [key in import("./types").SnackbarEventType]?: (event: import("./types").SnackbarEvent) => void; };
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
49
|
+
* Creates API configuration for the Snackbar component
|
|
50
|
+
* @param {BaseComponent} comp - Component with lifecycle feature
|
|
51
|
+
* @param {SnackbarQueue} queue - Snackbar queue manager
|
|
52
|
+
* @returns {ApiOptions} API configuration object
|
|
53
|
+
*/
|
|
54
|
+
export declare const getApiConfig: (comp: BaseComponent, queue: any) => ApiOptions;
|
|
55
|
+
export default defaultConfig;
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Snackbar visual variants
|
|
3
|
+
* @category Components
|
|
4
|
+
*/
|
|
5
|
+
export declare const SNACKBAR_VARIANTS: {
|
|
6
|
+
/** Basic snackbar with just text */
|
|
7
|
+
readonly BASIC: "basic";
|
|
8
|
+
/** Snackbar with an action button */
|
|
9
|
+
readonly ACTION: "action";
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Snackbar display positions
|
|
13
|
+
* @category Components
|
|
14
|
+
*/
|
|
15
|
+
export declare const SNACKBAR_POSITIONS: {
|
|
16
|
+
/** Centered position (default) */
|
|
17
|
+
readonly CENTER: "center";
|
|
18
|
+
/** Start-aligned position */
|
|
19
|
+
readonly START: "start";
|
|
20
|
+
/** End-aligned position */
|
|
21
|
+
readonly END: "end";
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Snackbar visibility states
|
|
25
|
+
* @category Components
|
|
26
|
+
*/
|
|
27
|
+
export declare const SNACKBAR_STATES: {
|
|
28
|
+
/** Snackbar is visible */
|
|
29
|
+
readonly VISIBLE: "visible";
|
|
30
|
+
/** Snackbar is hidden */
|
|
31
|
+
readonly HIDDEN: "hidden";
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* Snackbar event types
|
|
35
|
+
* @category Components
|
|
36
|
+
*/
|
|
37
|
+
export declare const SNACKBAR_EVENTS: {
|
|
38
|
+
/** Fired when snackbar opens */
|
|
39
|
+
readonly OPEN: "open";
|
|
40
|
+
/** Fired when snackbar closes */
|
|
41
|
+
readonly CLOSE: "close";
|
|
42
|
+
/** Fired when action button is clicked */
|
|
43
|
+
readonly ACTION: "action";
|
|
44
|
+
/** Fired when auto-dismiss timer completes */
|
|
45
|
+
readonly DISMISS: "dismiss";
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* Default configuration values for snackbar
|
|
49
|
+
* @category Components
|
|
50
|
+
*/
|
|
51
|
+
export declare const SNACKBAR_DEFAULTS: {
|
|
52
|
+
/** Default visual variant */
|
|
53
|
+
readonly VARIANT: "basic";
|
|
54
|
+
/** Default display position */
|
|
55
|
+
readonly POSITION: "center";
|
|
56
|
+
/** Default display duration in milliseconds (4 seconds) */
|
|
57
|
+
readonly DURATION: 4000;
|
|
58
|
+
/** Default z-index for snackbars */
|
|
59
|
+
readonly Z_INDEX: 1000;
|
|
60
|
+
/** Default animation duration in milliseconds */
|
|
61
|
+
readonly ANIMATION_DURATION: 300;
|
|
62
|
+
};
|
|
63
|
+
/**
|
|
64
|
+
* CSS class names used by the snackbar component
|
|
65
|
+
* @category Components
|
|
66
|
+
*/
|
|
67
|
+
export declare const SNACKBAR_CLASSES: {
|
|
68
|
+
/** Root element class */
|
|
69
|
+
readonly ROOT: "snackbar";
|
|
70
|
+
/** Basic variant class */
|
|
71
|
+
readonly BASIC: "snackbar--basic";
|
|
72
|
+
/** Action variant class */
|
|
73
|
+
readonly ACTION: "snackbar--action";
|
|
74
|
+
/** Center position class */
|
|
75
|
+
readonly CENTER: "snackbar--center";
|
|
76
|
+
/** Start position class */
|
|
77
|
+
readonly START: "snackbar--start";
|
|
78
|
+
/** End position class */
|
|
79
|
+
readonly END: "snackbar--end";
|
|
80
|
+
/** Visible state class */
|
|
81
|
+
readonly VISIBLE: "snackbar--visible";
|
|
82
|
+
/** Hidden state class */
|
|
83
|
+
readonly HIDDEN: "snackbar--hidden";
|
|
84
|
+
/** Message text class */
|
|
85
|
+
readonly MESSAGE: "snackbar__message";
|
|
86
|
+
/** Action button class */
|
|
87
|
+
readonly ACTION_BUTTON: "snackbar__action";
|
|
88
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { BaseComponent, SnackbarConfig } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Adds action button to snackbar
|
|
4
|
+
* @param {SnackbarConfig} config - Component configuration
|
|
5
|
+
* @returns {Function} Higher-order function that adds action button
|
|
6
|
+
*/
|
|
7
|
+
export declare const withActionButton: (config: SnackbarConfig) => (component: BaseComponent) => BaseComponent;
|
|
8
|
+
/**
|
|
9
|
+
* Adds auto-dismiss timer functionality
|
|
10
|
+
* @param {SnackbarConfig} config - Component configuration
|
|
11
|
+
* @returns {Function} Higher-order function that adds timer features
|
|
12
|
+
*/
|
|
13
|
+
export declare const withDismissTimer: (config: SnackbarConfig) => (component: BaseComponent) => BaseComponent;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { BaseComponent, SnackbarPosition } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Position configuration for the withPosition function
|
|
4
|
+
*/
|
|
5
|
+
interface PositionConfig {
|
|
6
|
+
prefix?: string;
|
|
7
|
+
position?: SnackbarPosition;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Adds position handling to snackbar
|
|
11
|
+
* @param {PositionConfig} config - Position configuration
|
|
12
|
+
* @returns {Function} Higher-order function that adds position features
|
|
13
|
+
*/
|
|
14
|
+
export declare const withPosition: (config: PositionConfig) => (component: BaseComponent) => BaseComponent;
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { SnackbarQueue } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Creates a queue manager for snackbars
|
|
4
|
+
* Ensures only one snackbar is visible at a time
|
|
5
|
+
* @returns {SnackbarQueue} Queue manager with add/clear methods
|
|
6
|
+
*/
|
|
7
|
+
export declare const createSnackbarQueue: () => SnackbarQueue;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { SnackbarConfig, SnackbarComponent } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Creates a new Snackbar component
|
|
4
|
+
* @param {SnackbarConfig} config - Snackbar configuration
|
|
5
|
+
* @returns {SnackbarComponent} Snackbar component instance
|
|
6
|
+
*/
|
|
7
|
+
declare const createSnackbar: (config: SnackbarConfig) => SnackbarComponent;
|
|
8
|
+
export default createSnackbar;
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Available snackbar variants
|
|
3
|
+
*/
|
|
4
|
+
export type SnackbarVariant = 'basic' | 'action';
|
|
5
|
+
/**
|
|
6
|
+
* Snackbar visual variants
|
|
7
|
+
*/
|
|
8
|
+
export declare const SNACKBAR_VARIANTS: {
|
|
9
|
+
readonly BASIC: "basic";
|
|
10
|
+
readonly ACTION: "action";
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Available snackbar positions
|
|
14
|
+
*/
|
|
15
|
+
export type SnackbarPosition = 'center' | 'start' | 'end';
|
|
16
|
+
/**
|
|
17
|
+
* Snackbar display positions
|
|
18
|
+
*/
|
|
19
|
+
export declare const SNACKBAR_POSITIONS: {
|
|
20
|
+
readonly CENTER: "center";
|
|
21
|
+
readonly START: "start";
|
|
22
|
+
readonly END: "end";
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* Snackbar visibility states
|
|
26
|
+
*/
|
|
27
|
+
export type SnackbarState = 'visible' | 'hidden';
|
|
28
|
+
/**
|
|
29
|
+
* Snackbar state classes
|
|
30
|
+
*/
|
|
31
|
+
export declare const SNACKBAR_STATES: {
|
|
32
|
+
readonly VISIBLE: "visible";
|
|
33
|
+
readonly HIDDEN: "hidden";
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* Available snackbar event types
|
|
37
|
+
*/
|
|
38
|
+
export type SnackbarEventType = 'open' | 'close' | 'action';
|
|
39
|
+
/**
|
|
40
|
+
* Snackbar event data
|
|
41
|
+
* @interface SnackbarEvent
|
|
42
|
+
*/
|
|
43
|
+
export interface SnackbarEvent {
|
|
44
|
+
/** The snackbar component that triggered the event */
|
|
45
|
+
snackbar: SnackbarComponent;
|
|
46
|
+
/** Original DOM event if available */
|
|
47
|
+
originalEvent: Event | null;
|
|
48
|
+
/** Function to prevent default behavior */
|
|
49
|
+
preventDefault: () => void;
|
|
50
|
+
/** Whether default behavior was prevented */
|
|
51
|
+
defaultPrevented: boolean;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Configuration options for the snackbar component
|
|
55
|
+
* @interface SnackbarConfig
|
|
56
|
+
*/
|
|
57
|
+
export interface SnackbarConfig {
|
|
58
|
+
/** Visual variant of the snackbar */
|
|
59
|
+
variant?: SnackbarVariant;
|
|
60
|
+
/** Position of the snackbar on screen */
|
|
61
|
+
position?: SnackbarPosition;
|
|
62
|
+
/** Text message to display */
|
|
63
|
+
message: string;
|
|
64
|
+
/** Action button text (for 'action' variant) */
|
|
65
|
+
action?: string;
|
|
66
|
+
/** Duration in milliseconds to show the snackbar (0 for indefinite) */
|
|
67
|
+
duration?: number;
|
|
68
|
+
/** Action button callback function */
|
|
69
|
+
onAction?: (event: SnackbarEvent) => void;
|
|
70
|
+
/** Callback function when the snackbar opens */
|
|
71
|
+
onOpen?: (event: SnackbarEvent) => void;
|
|
72
|
+
/** Callback function when the snackbar closes */
|
|
73
|
+
onClose?: (event: SnackbarEvent) => void;
|
|
74
|
+
/** Additional CSS classes */
|
|
75
|
+
class?: string;
|
|
76
|
+
/** Component prefix for CSS classes */
|
|
77
|
+
prefix?: string;
|
|
78
|
+
/** Component name for CSS classes */
|
|
79
|
+
componentName?: string;
|
|
80
|
+
/** Event handlers for snackbar events */
|
|
81
|
+
on?: {
|
|
82
|
+
[key in SnackbarEventType]?: (event: SnackbarEvent) => void;
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Snackbar component public API interface
|
|
87
|
+
* @interface SnackbarComponent
|
|
88
|
+
*/
|
|
89
|
+
export interface SnackbarComponent {
|
|
90
|
+
/** The root element of the snackbar */
|
|
91
|
+
element: HTMLElement;
|
|
92
|
+
/** Current state of the snackbar */
|
|
93
|
+
state: SnackbarState;
|
|
94
|
+
/** The action button element (if present) */
|
|
95
|
+
actionButton?: HTMLElement;
|
|
96
|
+
/** Timer for auto-dismissal */
|
|
97
|
+
timer?: SnackbarTimer;
|
|
98
|
+
/** Position management functions */
|
|
99
|
+
position?: {
|
|
100
|
+
getPosition: () => SnackbarPosition;
|
|
101
|
+
setPosition: (position: SnackbarPosition) => BaseComponent;
|
|
102
|
+
};
|
|
103
|
+
/** Displays the snackbar */
|
|
104
|
+
show: () => SnackbarComponent;
|
|
105
|
+
/** Hides the snackbar */
|
|
106
|
+
hide: () => SnackbarComponent;
|
|
107
|
+
/** Sets the message text */
|
|
108
|
+
setMessage: (message: string) => SnackbarComponent;
|
|
109
|
+
/** Gets the message text */
|
|
110
|
+
getMessage: () => string;
|
|
111
|
+
/** Sets the action button text */
|
|
112
|
+
setAction: (text: string) => SnackbarComponent;
|
|
113
|
+
/** Gets the action button text */
|
|
114
|
+
getAction: () => string;
|
|
115
|
+
/** Sets the display duration */
|
|
116
|
+
setDuration: (duration: number) => SnackbarComponent;
|
|
117
|
+
/** Gets the display duration */
|
|
118
|
+
getDuration: () => number;
|
|
119
|
+
/** Sets the snackbar position */
|
|
120
|
+
setPosition: (position: SnackbarPosition) => SnackbarComponent;
|
|
121
|
+
/** Gets the snackbar position */
|
|
122
|
+
getPosition: () => SnackbarPosition;
|
|
123
|
+
/** Adds event listener */
|
|
124
|
+
on: (event: SnackbarEventType, handler: (event: SnackbarEvent) => void) => SnackbarComponent;
|
|
125
|
+
/** Removes event listener */
|
|
126
|
+
off: (event: SnackbarEventType, handler: (event: SnackbarEvent) => void) => SnackbarComponent;
|
|
127
|
+
/** Destroys the snackbar component and cleans up resources */
|
|
128
|
+
destroy: () => void;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Basic component with element property
|
|
132
|
+
*/
|
|
133
|
+
export interface BaseComponent {
|
|
134
|
+
element: HTMLElement;
|
|
135
|
+
emit?: (event: string, data?: any) => void;
|
|
136
|
+
lifecycle?: {
|
|
137
|
+
destroy?: () => void;
|
|
138
|
+
};
|
|
139
|
+
[key: string]: any;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Timer interface for snackbar auto-dismissal
|
|
143
|
+
*/
|
|
144
|
+
export interface SnackbarTimer {
|
|
145
|
+
start: () => void;
|
|
146
|
+
stop: () => void;
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Interface for snackbars managed by the queue
|
|
150
|
+
*/
|
|
151
|
+
export interface QueuedSnackbar {
|
|
152
|
+
_show: () => void;
|
|
153
|
+
on: (event: string, handler: () => void) => void;
|
|
154
|
+
off: (event: string, handler: () => void) => void;
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Interface for the snackbar queue manager
|
|
158
|
+
*/
|
|
159
|
+
export interface SnackbarQueue {
|
|
160
|
+
add: (snackbar: QueuedSnackbar) => void;
|
|
161
|
+
clear: () => void;
|
|
162
|
+
getLength: () => number;
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* API options for enhancing a snackbar with API methods
|
|
166
|
+
*/
|
|
167
|
+
export interface ApiOptions {
|
|
168
|
+
lifecycle: {
|
|
169
|
+
destroy: () => void;
|
|
170
|
+
};
|
|
171
|
+
queue: SnackbarQueue;
|
|
172
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { BaseComponent, SwitchComponent, ApiOptions } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Enhances switch component with API methods
|
|
4
|
+
* @param {ApiOptions} options - API configuration
|
|
5
|
+
* @returns {Function} Higher-order function that adds API methods to component
|
|
6
|
+
*/
|
|
7
|
+
export declare const withAPI: ({ disabled, lifecycle, checkable }: ApiOptions) => (component: BaseComponent) => SwitchComponent;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { SwitchConfig, BaseComponent, ApiOptions } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Default configuration for the Switch component
|
|
4
|
+
*/
|
|
5
|
+
export declare const defaultConfig: SwitchConfig;
|
|
6
|
+
/**
|
|
7
|
+
* Creates the base configuration for Switch component
|
|
8
|
+
* @param {SwitchConfig} config - User provided configuration
|
|
9
|
+
* @returns {SwitchConfig} Complete configuration with defaults applied
|
|
10
|
+
*/
|
|
11
|
+
export declare const createBaseConfig: (config?: SwitchConfig) => SwitchConfig;
|
|
12
|
+
/**
|
|
13
|
+
* Generates element configuration for the Switch component
|
|
14
|
+
* @param {SwitchConfig} config - Switch configuration
|
|
15
|
+
* @returns {Object} Element configuration object for withElement
|
|
16
|
+
*/
|
|
17
|
+
export declare const getElementConfig: (config: SwitchConfig) => {
|
|
18
|
+
tag: string;
|
|
19
|
+
componentName: string;
|
|
20
|
+
attrs: Record<string, any>;
|
|
21
|
+
className: string[];
|
|
22
|
+
rawClass: string | string[];
|
|
23
|
+
html: string;
|
|
24
|
+
text: string;
|
|
25
|
+
forwardEvents: Record<string, boolean | ((component: any, event: Event) => boolean)>;
|
|
26
|
+
interactive: boolean;
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Creates API configuration for the Switch component
|
|
30
|
+
* @param {BaseComponent} comp - Component with disabled, lifecycle, and checkable features
|
|
31
|
+
* @returns {ApiOptions} API configuration object
|
|
32
|
+
*/
|
|
33
|
+
export declare const getApiConfig: (comp: BaseComponent) => ApiOptions;
|
|
34
|
+
export default defaultConfig;
|