mtrl 0.3.8 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/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 +72 -0
- package/dist/components/progress/constants.d.ts +139 -0
- package/dist/components/progress/features/canvas.d.ts +32 -0
- package/dist/components/progress/features/circular.d.ts +9 -0
- package/dist/components/progress/features/index.d.ts +8 -0
- package/dist/components/progress/features/linear.d.ts +9 -0
- package/dist/components/progress/features/resize-observer.d.ts +5 -0
- package/dist/components/progress/features/state.d.ts +38 -0
- package/dist/components/progress/features.d.ts +40 -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 +272 -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/canvas/index.d.ts +5 -0
- package/dist/core/canvas/resize.d.ts +14 -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} +35 -83
- package/dist/core/config.d.ts +130 -0
- package/dist/core/dom/attributes.d.ts +20 -0
- package/dist/core/dom/classes.d.ts +52 -0
- package/dist/core/dom/create.d.ts +154 -0
- package/dist/core/dom/events.d.ts +69 -0
- package/dist/core/dom/index.d.ts +6 -0
- 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 +18 -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/theme.d.ts +38 -0
- package/dist/core/utils/validate.d.ts +73 -0
- package/dist/index.cjs +64 -0
- package/dist/index.cjs.map +291 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.js +53 -14854
- package/dist/index.js.map +291 -0
- package/dist/package.json +39 -0
- package/dist/styles.css +7 -0
- package/package.json +23 -4
- 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 -230
- package/src/components/menu/config.ts +0 -127
- package/src/components/menu/features/anchor.ts +0 -394
- package/src/components/menu/features/controller.ts +0 -1423
- package/src/components/menu/features/index.ts +0 -13
- package/src/components/menu/features/position.ts +0 -353
- package/src/components/menu/menu.ts +0 -121
- package/src/components/menu/types.ts +0 -392
- 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 -331
- 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/attributes.ts +0 -33
- 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/index.ts +0 -10
- 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 -90
- 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 -242
- 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 -272
- 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,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
|
+
attributes: 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;
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Switch label position options
|
|
3
|
+
* @category Components
|
|
4
|
+
*/
|
|
5
|
+
export declare const SWITCH_LABEL_POSITIONS: {
|
|
6
|
+
/** Label positioned before the switch (left in LTR layouts) */
|
|
7
|
+
readonly START: "start";
|
|
8
|
+
/** Label positioned after the switch (right in LTR layouts) */
|
|
9
|
+
readonly END: "end";
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Switch states
|
|
13
|
+
* @category Components
|
|
14
|
+
*/
|
|
15
|
+
export declare const SWITCH_STATES: {
|
|
16
|
+
/** Switch is checked/on */
|
|
17
|
+
readonly CHECKED: "checked";
|
|
18
|
+
/** Switch is unchecked/off */
|
|
19
|
+
readonly UNCHECKED: "unchecked";
|
|
20
|
+
/** Switch is disabled */
|
|
21
|
+
readonly DISABLED: "disabled";
|
|
22
|
+
/** Switch is enabled */
|
|
23
|
+
readonly ENABLED: "enabled";
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Switch events
|
|
27
|
+
* @category Components
|
|
28
|
+
*/
|
|
29
|
+
export declare const SWITCH_EVENTS: {
|
|
30
|
+
/** Fired when switch is checked */
|
|
31
|
+
readonly CHANGE: "change";
|
|
32
|
+
/** Fired when switch receives focus */
|
|
33
|
+
readonly FOCUS: "focus";
|
|
34
|
+
/** Fired when switch loses focus */
|
|
35
|
+
readonly BLUR: "blur";
|
|
36
|
+
};
|
|
37
|
+
/**
|
|
38
|
+
* Default configuration values for switch
|
|
39
|
+
* @category Components
|
|
40
|
+
*/
|
|
41
|
+
export declare const SWITCH_DEFAULTS: {
|
|
42
|
+
/** Default checked state */
|
|
43
|
+
readonly CHECKED: false;
|
|
44
|
+
/** Default disabled state */
|
|
45
|
+
readonly DISABLED: false;
|
|
46
|
+
/** Default required state */
|
|
47
|
+
readonly REQUIRED: false;
|
|
48
|
+
/** Default label position */
|
|
49
|
+
readonly LABEL_POSITION: "end";
|
|
50
|
+
/** Default input value */
|
|
51
|
+
readonly VALUE: "on";
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* CSS class names used by the switch component
|
|
55
|
+
* @category Components
|
|
56
|
+
*/
|
|
57
|
+
export declare const SWITCH_CLASSES: {
|
|
58
|
+
/** Root element class */
|
|
59
|
+
readonly ROOT: "switch";
|
|
60
|
+
/** Container element class */
|
|
61
|
+
readonly CONTAINER: "switch-container";
|
|
62
|
+
/** Content wrapper class */
|
|
63
|
+
readonly CONTENT: "switch-content";
|
|
64
|
+
/** Label element class */
|
|
65
|
+
readonly LABEL: "switch-label";
|
|
66
|
+
/** Input element class */
|
|
67
|
+
readonly INPUT: "switch-input";
|
|
68
|
+
/** Track element class */
|
|
69
|
+
readonly TRACK: "switch-track";
|
|
70
|
+
/** Thumb element class */
|
|
71
|
+
readonly THUMB: "switch-thumb";
|
|
72
|
+
/** Label at start position class */
|
|
73
|
+
readonly LABEL_START: "switch--label-start";
|
|
74
|
+
/** Label at end position class */
|
|
75
|
+
readonly LABEL_END: "switch--label-end";
|
|
76
|
+
/** Checked state class */
|
|
77
|
+
readonly CHECKED: "switch--checked";
|
|
78
|
+
/** Disabled state class */
|
|
79
|
+
readonly DISABLED: "switch--disabled";
|
|
80
|
+
/** Error state class */
|
|
81
|
+
readonly ERROR: "switch--error";
|
|
82
|
+
/** Helper/supporting text class */
|
|
83
|
+
readonly HELPER: "switch-helper";
|
|
84
|
+
/** Error helper text class */
|
|
85
|
+
readonly HELPER_ERROR: "switch-helper--error";
|
|
86
|
+
/** Focus state class */
|
|
87
|
+
readonly FOCUSED: "switch--focused";
|
|
88
|
+
};
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { BaseComponent, ElementComponent } from '../../core/compose/component';
|
|
2
|
+
import { TrackComponent } from '../../core/compose/features';
|
|
3
|
+
import { SwitchConfig } from './types';
|
|
4
|
+
/**
|
|
5
|
+
* Configuration for supporting text feature
|
|
6
|
+
*/
|
|
7
|
+
export interface SupportingTextConfig {
|
|
8
|
+
/**
|
|
9
|
+
* Supporting text content
|
|
10
|
+
*/
|
|
11
|
+
supportingText?: string;
|
|
12
|
+
/**
|
|
13
|
+
* Whether supporting text indicates an error
|
|
14
|
+
*/
|
|
15
|
+
error?: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* CSS class prefix
|
|
18
|
+
*/
|
|
19
|
+
prefix?: string;
|
|
20
|
+
/**
|
|
21
|
+
* Component name
|
|
22
|
+
*/
|
|
23
|
+
componentName?: string;
|
|
24
|
+
[key: string]: any;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Component with supporting text capabilities
|
|
28
|
+
*/
|
|
29
|
+
export interface SupportingTextComponent extends BaseComponent {
|
|
30
|
+
/**
|
|
31
|
+
* Supporting text element
|
|
32
|
+
*/
|
|
33
|
+
supportingTextElement: HTMLElement | null;
|
|
34
|
+
/**
|
|
35
|
+
* Sets supporting text content
|
|
36
|
+
* @param text - Text content
|
|
37
|
+
* @param isError - Whether text represents an error
|
|
38
|
+
* @returns Component instance for chaining
|
|
39
|
+
*/
|
|
40
|
+
setSupportingText: (text: string, isError?: boolean) => SupportingTextComponent;
|
|
41
|
+
/**
|
|
42
|
+
* Removes supporting text
|
|
43
|
+
* @returns Component instance for chaining
|
|
44
|
+
*/
|
|
45
|
+
removeSupportingText: () => SupportingTextComponent;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Creates and manages supporting text for a component
|
|
49
|
+
* @param config - Configuration object with supporting text settings
|
|
50
|
+
* @returns Function that enhances a component with supporting text functionality
|
|
51
|
+
*/
|
|
52
|
+
export declare const withSupportingText: <T extends SupportingTextConfig>(config: T) => <C extends ElementComponent>(component: C) => C & SupportingTextComponent;
|
|
53
|
+
/**
|
|
54
|
+
* Wrapper for the core withTrack function that works with SwitchConfig
|
|
55
|
+
*
|
|
56
|
+
* @param config - Switch configuration
|
|
57
|
+
* @returns Function that enhances a component with track and thumb elements
|
|
58
|
+
*/
|
|
59
|
+
export declare const withTrack: (config: SwitchConfig) => <C extends ElementComponent>(component: C) => C & TrackComponent;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { default } from './switch';
|
|
2
|
+
export { SWITCH_LABEL_POSITIONS, SWITCH_STATES, SWITCH_EVENTS, SWITCH_DEFAULTS, SWITCH_CLASSES } from './constants';
|
|
3
|
+
export { SwitchConfig, SwitchComponent } from './types';
|
|
4
|
+
export { withSupportingText, SupportingTextComponent } from './features';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { SwitchConfig, SwitchComponent } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Creates a new Switch component
|
|
4
|
+
* @param {SwitchConfig} config - Switch configuration
|
|
5
|
+
* @returns {SwitchComponent} Switch component instance
|
|
6
|
+
*/
|
|
7
|
+
declare const createSwitch: (config?: SwitchConfig) => SwitchComponent;
|
|
8
|
+
export default createSwitch;
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
export type SwitchPosition = 'center' | 'start' | 'end';
|
|
2
|
+
/**
|
|
3
|
+
* Switch label position types
|
|
4
|
+
*/
|
|
5
|
+
export type SwitchLabelPosition = 'start' | 'end';
|
|
6
|
+
/**
|
|
7
|
+
* Switch label positions
|
|
8
|
+
*/
|
|
9
|
+
export declare const SWITCH_LABEL_POSITION: {
|
|
10
|
+
readonly START: "start";
|
|
11
|
+
readonly END: "end";
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Configuration interface for the Switch component
|
|
15
|
+
*/
|
|
16
|
+
export interface SwitchConfig {
|
|
17
|
+
/** Input name attribute */
|
|
18
|
+
name?: string;
|
|
19
|
+
/** Initial checked state */
|
|
20
|
+
checked?: boolean;
|
|
21
|
+
/** Whether input is required */
|
|
22
|
+
required?: boolean;
|
|
23
|
+
/** Whether switch is disabled */
|
|
24
|
+
disabled?: boolean;
|
|
25
|
+
/** Input value attribute */
|
|
26
|
+
value?: string;
|
|
27
|
+
/** Label text */
|
|
28
|
+
label?: string;
|
|
29
|
+
/** Supporting text content */
|
|
30
|
+
supportingText?: string;
|
|
31
|
+
/** Whether supporting text indicates an error */
|
|
32
|
+
error?: boolean;
|
|
33
|
+
/** Additional CSS classes */
|
|
34
|
+
class?: string;
|
|
35
|
+
/** ARIA label for accessibility */
|
|
36
|
+
ariaLabel?: string;
|
|
37
|
+
/** Prefix for class names */
|
|
38
|
+
prefix?: string;
|
|
39
|
+
/** Component name */
|
|
40
|
+
componentName?: string;
|
|
41
|
+
/** Icon HTML content */
|
|
42
|
+
icon?: string;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Switch component interface
|
|
46
|
+
*/
|
|
47
|
+
export interface SwitchComponent {
|
|
48
|
+
/** The root element of the switch */
|
|
49
|
+
element: HTMLElement;
|
|
50
|
+
/** The input element */
|
|
51
|
+
input: HTMLInputElement;
|
|
52
|
+
/** Gets the switch's value */
|
|
53
|
+
getValue: () => string;
|
|
54
|
+
/** Sets the switch's value */
|
|
55
|
+
setValue: (value: string) => SwitchComponent;
|
|
56
|
+
/** Checks/activates the switch */
|
|
57
|
+
check: () => SwitchComponent;
|
|
58
|
+
/** Unchecks/deactivates the switch */
|
|
59
|
+
uncheck: () => SwitchComponent;
|
|
60
|
+
/** Toggles the switch's checked state */
|
|
61
|
+
toggle: () => SwitchComponent;
|
|
62
|
+
/** Returns whether the switch is checked */
|
|
63
|
+
isChecked: () => boolean;
|
|
64
|
+
/** Sets the switch's label text */
|
|
65
|
+
setLabel: (text: string) => SwitchComponent;
|
|
66
|
+
/** Gets the switch's label text */
|
|
67
|
+
getLabel: () => string;
|
|
68
|
+
/** Supporting text element */
|
|
69
|
+
supportingTextElement: HTMLElement | null;
|
|
70
|
+
/** Sets supporting text content */
|
|
71
|
+
setSupportingText: (text: string, isError?: boolean) => SwitchComponent;
|
|
72
|
+
/** Removes supporting text */
|
|
73
|
+
removeSupportingText: () => SwitchComponent;
|
|
74
|
+
/** Adds event listener */
|
|
75
|
+
on: (event: string, handler: Function) => SwitchComponent;
|
|
76
|
+
/** Removes event listener */
|
|
77
|
+
off: (event: string, handler: Function) => SwitchComponent;
|
|
78
|
+
/** Enables the switch */
|
|
79
|
+
enable: () => SwitchComponent;
|
|
80
|
+
/** Disables the switch */
|
|
81
|
+
disable: () => SwitchComponent;
|
|
82
|
+
/** Destroys the switch component and cleans up resources */
|
|
83
|
+
destroy: () => void;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* API options interface
|
|
87
|
+
*/
|
|
88
|
+
export interface ApiOptions {
|
|
89
|
+
disabled: {
|
|
90
|
+
enable: () => any;
|
|
91
|
+
disable: () => any;
|
|
92
|
+
};
|
|
93
|
+
lifecycle: {
|
|
94
|
+
destroy: () => void;
|
|
95
|
+
};
|
|
96
|
+
checkable: {
|
|
97
|
+
check: () => any;
|
|
98
|
+
uncheck: () => any;
|
|
99
|
+
toggle: () => any;
|
|
100
|
+
isChecked: () => boolean;
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Base component interface
|
|
105
|
+
*/
|
|
106
|
+
export interface BaseComponent {
|
|
107
|
+
element: HTMLElement;
|
|
108
|
+
input?: HTMLInputElement;
|
|
109
|
+
getValue?: () => string;
|
|
110
|
+
setValue?: (value: string) => any;
|
|
111
|
+
text?: {
|
|
112
|
+
setText: (content: string) => any;
|
|
113
|
+
getText: () => string;
|
|
114
|
+
};
|
|
115
|
+
on?: (event: string, handler: Function) => any;
|
|
116
|
+
off?: (event: string, handler: Function) => any;
|
|
117
|
+
disabled?: {
|
|
118
|
+
enable: () => any;
|
|
119
|
+
disable: () => any;
|
|
120
|
+
};
|
|
121
|
+
lifecycle?: {
|
|
122
|
+
destroy: () => void;
|
|
123
|
+
};
|
|
124
|
+
checkable?: {
|
|
125
|
+
check: () => any;
|
|
126
|
+
uncheck: () => any;
|
|
127
|
+
toggle: () => any;
|
|
128
|
+
isChecked: () => boolean;
|
|
129
|
+
};
|
|
130
|
+
[key: string]: any;
|
|
131
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { TabsComponent, TabComponent } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* API options for a Tabs component
|
|
4
|
+
*/
|
|
5
|
+
interface ApiOptions {
|
|
6
|
+
/** The component's lifecycle API */
|
|
7
|
+
lifecycle: {
|
|
8
|
+
destroy: () => void;
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Component with required elements and methods
|
|
13
|
+
*/
|
|
14
|
+
interface ComponentWithElements {
|
|
15
|
+
/** The DOM element */
|
|
16
|
+
element: HTMLElement;
|
|
17
|
+
/** Array of tab components */
|
|
18
|
+
tabs: TabComponent[];
|
|
19
|
+
/** Container for tabs */
|
|
20
|
+
tabsContainer: HTMLElement;
|
|
21
|
+
/** Tab click handler */
|
|
22
|
+
handleTabClick: (event: Event, tab: TabComponent) => void;
|
|
23
|
+
/** Scroll container (optional) */
|
|
24
|
+
scrollContainer?: HTMLElement;
|
|
25
|
+
/** Class name helper */
|
|
26
|
+
getClass: (name: string) => string;
|
|
27
|
+
/** Event subscription (optional) */
|
|
28
|
+
on?: (event: string, handler: Function) => any;
|
|
29
|
+
/** Event unsubscription (optional) */
|
|
30
|
+
off?: (event: string, handler: Function) => any;
|
|
31
|
+
/** Event emission (optional) */
|
|
32
|
+
emit?: (event: string, data: any) => any;
|
|
33
|
+
/** Component configuration */
|
|
34
|
+
config: Record<string, any>;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Enhances a tabs component with API methods
|
|
38
|
+
* @param {ApiOptions} options - API configuration options
|
|
39
|
+
* @returns {Function} Higher-order function that adds API methods to component
|
|
40
|
+
*/
|
|
41
|
+
export declare const withAPI: ({ lifecycle }: ApiOptions) => (component: ComponentWithElements) => TabsComponent;
|
|
42
|
+
/**
|
|
43
|
+
* Creates API configuration for the Tabs component
|
|
44
|
+
* @param {Object} comp - Component with lifecycle feature
|
|
45
|
+
* @returns {Object} API configuration object
|
|
46
|
+
*/
|
|
47
|
+
export declare const getApiConfig: (comp: any) => {
|
|
48
|
+
lifecycle: {
|
|
49
|
+
destroy: () => any;
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
export {};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { BaseComponentConfig } from '../../core/config/component';
|
|
2
|
+
import { TabConfig } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Default configuration for a Tab
|
|
5
|
+
*/
|
|
6
|
+
export declare const defaultTabConfig: TabConfig;
|
|
7
|
+
/**
|
|
8
|
+
* Default configuration for the Tabs component
|
|
9
|
+
*/
|
|
10
|
+
export declare const defaultTabsConfig: {
|
|
11
|
+
variant: "primary";
|
|
12
|
+
scrollable: true;
|
|
13
|
+
showDivider: true;
|
|
14
|
+
componentName: string;
|
|
15
|
+
};
|
|
16
|
+
export declare const createTabsConfig: (config?: {}) => BaseComponentConfig;
|
|
17
|
+
/**
|
|
18
|
+
* Creates the base configuration for a Tab
|
|
19
|
+
* @param {TabConfig} config - User provided configuration
|
|
20
|
+
* @returns {TabConfig} Complete configuration with defaults applied
|
|
21
|
+
*/
|
|
22
|
+
export declare const createTabConfig: (config?: TabConfig) => TabConfig;
|
|
23
|
+
export declare const getTabsElementConfig: (config: any) => (component: any) => any;
|
|
24
|
+
/**
|
|
25
|
+
* Creates API configuration for the Tab component
|
|
26
|
+
* @param {Object} comp - Component with disabled and lifecycle features
|
|
27
|
+
* @returns {Object} API configuration object
|
|
28
|
+
*/
|
|
29
|
+
export declare const getTabApiConfig: (comp: any) => {
|
|
30
|
+
disabled: {
|
|
31
|
+
enable: () => any;
|
|
32
|
+
disable: () => any;
|
|
33
|
+
isDisabled: () => any;
|
|
34
|
+
};
|
|
35
|
+
lifecycle: {
|
|
36
|
+
destroy: () => any;
|
|
37
|
+
};
|
|
38
|
+
button: any;
|
|
39
|
+
};
|