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,483 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dialog size types - determines the width and height of the dialog
|
|
3
|
+
*
|
|
4
|
+
* @category Components
|
|
5
|
+
* @remarks
|
|
6
|
+
* - small: 320px width, for simple messages or choices
|
|
7
|
+
* - medium: 560px width, for standard forms or content (default)
|
|
8
|
+
* - large: 800px width, for complex forms or rich content
|
|
9
|
+
* - fullwidth: Spans the full width of the viewport with margins
|
|
10
|
+
* - fullscreen: Takes up the entire viewport (similar to a new page)
|
|
11
|
+
*/
|
|
12
|
+
export type DialogSize = 'small' | 'medium' | 'large' | 'fullwidth' | 'fullscreen';
|
|
13
|
+
/**
|
|
14
|
+
* Dialog animation types - controls how the dialog appears and disappears
|
|
15
|
+
*
|
|
16
|
+
* @category Components
|
|
17
|
+
* @remarks
|
|
18
|
+
* - scale: Scale up/down animation from center (default)
|
|
19
|
+
* - slide-up: Slide in from bottom, slide out to bottom
|
|
20
|
+
* - slide-down: Slide in from top, slide out to top
|
|
21
|
+
* - fade: Simple fade in/out animation
|
|
22
|
+
*/
|
|
23
|
+
export type DialogAnimation = 'scale' | 'slide-up' | 'slide-down' | 'fade';
|
|
24
|
+
/**
|
|
25
|
+
* Dialog footer alignment types - controls how buttons in the footer are aligned
|
|
26
|
+
*
|
|
27
|
+
* @category Components
|
|
28
|
+
* @remarks
|
|
29
|
+
* - right: Align buttons to the right (default, follows Material Design guidelines)
|
|
30
|
+
* - left: Align buttons to the left
|
|
31
|
+
* - center: Center buttons in footer
|
|
32
|
+
* - space-between: Space buttons evenly, with first button at left, last at right
|
|
33
|
+
*/
|
|
34
|
+
export type DialogFooterAlignment = 'right' | 'left' | 'center' | 'space-between';
|
|
35
|
+
/**
|
|
36
|
+
* Dialog event types - events that can be listened to with the on() method
|
|
37
|
+
*
|
|
38
|
+
* @category Components
|
|
39
|
+
* @remarks
|
|
40
|
+
* - open: Fired when the dialog begins opening
|
|
41
|
+
* - close: Fired when the dialog begins closing
|
|
42
|
+
* - beforeopen: Fired before the dialog starts opening (can be prevented)
|
|
43
|
+
* - beforeclose: Fired before the dialog starts closing (can be prevented)
|
|
44
|
+
* - afteropen: Fired after the dialog has fully opened (animation complete)
|
|
45
|
+
* - afterclose: Fired after the dialog has fully closed (animation complete)
|
|
46
|
+
*/
|
|
47
|
+
export type DialogEventType = 'open' | 'close' | 'beforeopen' | 'beforeclose' | 'afteropen' | 'afterclose';
|
|
48
|
+
/**
|
|
49
|
+
* Configuration interface for the Dialog component
|
|
50
|
+
*
|
|
51
|
+
* @category Components
|
|
52
|
+
* @description
|
|
53
|
+
* Defines the appearance and behavior of a dialog component.
|
|
54
|
+
* All properties are optional with sensible defaults.
|
|
55
|
+
*/
|
|
56
|
+
export interface DialogConfig {
|
|
57
|
+
/**
|
|
58
|
+
* Dialog title text - appears in the header
|
|
59
|
+
* @example "Settings"
|
|
60
|
+
*/
|
|
61
|
+
title?: string;
|
|
62
|
+
/**
|
|
63
|
+
* Dialog subtitle text - appears below title in smaller text
|
|
64
|
+
* @example "Configure your preferences"
|
|
65
|
+
*/
|
|
66
|
+
subtitle?: string;
|
|
67
|
+
/**
|
|
68
|
+
* Dialog content (text or HTML)
|
|
69
|
+
* Can include rich content like forms, images, etc.
|
|
70
|
+
* @example "This action cannot be undone."
|
|
71
|
+
*/
|
|
72
|
+
content?: string;
|
|
73
|
+
/**
|
|
74
|
+
* Whether to show close button (X) in the header
|
|
75
|
+
* @default true
|
|
76
|
+
*/
|
|
77
|
+
closeButton?: boolean;
|
|
78
|
+
/**
|
|
79
|
+
* Additional CSS classes to apply to the dialog
|
|
80
|
+
* @example "settings-dialog important-dialog"
|
|
81
|
+
*/
|
|
82
|
+
class?: string;
|
|
83
|
+
/**
|
|
84
|
+
* Dialog size variant
|
|
85
|
+
* Controls the width and height of the dialog
|
|
86
|
+
* @default "medium"
|
|
87
|
+
*/
|
|
88
|
+
size?: DialogSize | string;
|
|
89
|
+
/**
|
|
90
|
+
* Dialog animation variant
|
|
91
|
+
* Controls how the dialog appears and disappears
|
|
92
|
+
* @default "scale"
|
|
93
|
+
*/
|
|
94
|
+
animation?: DialogAnimation | string;
|
|
95
|
+
/**
|
|
96
|
+
* Footer buttons alignment
|
|
97
|
+
* Controls how buttons in the footer are positioned
|
|
98
|
+
* @default "right"
|
|
99
|
+
*/
|
|
100
|
+
footerAlignment?: DialogFooterAlignment | string;
|
|
101
|
+
/**
|
|
102
|
+
* Whether dialog is initially open
|
|
103
|
+
* @default false
|
|
104
|
+
*/
|
|
105
|
+
open?: boolean;
|
|
106
|
+
/**
|
|
107
|
+
* Whether to close when clicking overlay background
|
|
108
|
+
* When true, allows users to dismiss by clicking outside
|
|
109
|
+
* @default true
|
|
110
|
+
*/
|
|
111
|
+
closeOnOverlayClick?: boolean;
|
|
112
|
+
/**
|
|
113
|
+
* Whether to close when Escape key is pressed
|
|
114
|
+
* @default true
|
|
115
|
+
*/
|
|
116
|
+
closeOnEscape?: boolean;
|
|
117
|
+
/**
|
|
118
|
+
* Whether dialog should be modal
|
|
119
|
+
* When true, prevents interaction with background content
|
|
120
|
+
* @default true
|
|
121
|
+
*/
|
|
122
|
+
modal?: boolean;
|
|
123
|
+
/**
|
|
124
|
+
* Whether to focus the first focusable element when opened
|
|
125
|
+
* Important for accessibility and keyboard navigation
|
|
126
|
+
* @default true
|
|
127
|
+
*/
|
|
128
|
+
autofocus?: boolean;
|
|
129
|
+
/**
|
|
130
|
+
* Whether to trap focus within dialog when opened
|
|
131
|
+
* Prevents tabbing outside the dialog, improving accessibility
|
|
132
|
+
* @default true
|
|
133
|
+
*/
|
|
134
|
+
trapFocus?: boolean;
|
|
135
|
+
/**
|
|
136
|
+
* Parent element to append dialog to
|
|
137
|
+
* @default document.body
|
|
138
|
+
*/
|
|
139
|
+
container?: HTMLElement;
|
|
140
|
+
/**
|
|
141
|
+
* Footer buttons configuration
|
|
142
|
+
* Array of button objects to display in the footer
|
|
143
|
+
*/
|
|
144
|
+
buttons?: DialogButton[];
|
|
145
|
+
/**
|
|
146
|
+
* Whether to show a divider between header and content
|
|
147
|
+
* @default false
|
|
148
|
+
*/
|
|
149
|
+
divider?: boolean;
|
|
150
|
+
/**
|
|
151
|
+
* Dialog z-index - controls stacking order
|
|
152
|
+
* @default 1000
|
|
153
|
+
*/
|
|
154
|
+
zIndex?: number;
|
|
155
|
+
/**
|
|
156
|
+
* Duration of open/close animations in milliseconds
|
|
157
|
+
* @default 300
|
|
158
|
+
*/
|
|
159
|
+
animationDuration?: number;
|
|
160
|
+
/**
|
|
161
|
+
* Event handlers for dialog events
|
|
162
|
+
* Register event handlers during initialization
|
|
163
|
+
* @example
|
|
164
|
+
* {
|
|
165
|
+
* afteropen: (event) => { console.log('Dialog opened'); }
|
|
166
|
+
* }
|
|
167
|
+
*/
|
|
168
|
+
on?: {
|
|
169
|
+
[key in DialogEventType]?: (event: DialogEvent) => void;
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Dialog button configuration
|
|
174
|
+
*
|
|
175
|
+
* Defines the appearance and behavior of buttons in the dialog footer.
|
|
176
|
+
*
|
|
177
|
+
* @category Components
|
|
178
|
+
*/
|
|
179
|
+
export interface DialogButton {
|
|
180
|
+
/**
|
|
181
|
+
* Button text label
|
|
182
|
+
* @example "Save" | "Cancel" | "Delete"
|
|
183
|
+
*/
|
|
184
|
+
text: string;
|
|
185
|
+
/**
|
|
186
|
+
* Button variant (uses button component variants)
|
|
187
|
+
* @default "text"
|
|
188
|
+
* @example "filled" | "text" | "outlined" | "tonal"
|
|
189
|
+
*/
|
|
190
|
+
variant?: string;
|
|
191
|
+
/**
|
|
192
|
+
* Button color
|
|
193
|
+
* @example "primary" | "error"
|
|
194
|
+
*/
|
|
195
|
+
color?: string;
|
|
196
|
+
/**
|
|
197
|
+
* Button size
|
|
198
|
+
* @default "medium"
|
|
199
|
+
* @example "small" | "medium" | "large"
|
|
200
|
+
*/
|
|
201
|
+
size?: string;
|
|
202
|
+
/**
|
|
203
|
+
* Button click handler
|
|
204
|
+
* Return false to prevent dialog closing
|
|
205
|
+
* @param event - The click event
|
|
206
|
+
* @param dialog - The dialog component instance
|
|
207
|
+
* @returns Optional boolean, false prevents dialog from closing
|
|
208
|
+
*/
|
|
209
|
+
onClick?: (event: MouseEvent, dialog: DialogComponent) => void | boolean;
|
|
210
|
+
/**
|
|
211
|
+
* Whether to close the dialog when this button is clicked
|
|
212
|
+
* Set to false for validation or multi-step flows
|
|
213
|
+
* @default true
|
|
214
|
+
*/
|
|
215
|
+
closeDialog?: boolean;
|
|
216
|
+
/**
|
|
217
|
+
* Whether to autofocus this button when the dialog opens
|
|
218
|
+
* Typically used for primary action buttons
|
|
219
|
+
* @default false
|
|
220
|
+
*/
|
|
221
|
+
autofocus?: boolean;
|
|
222
|
+
/**
|
|
223
|
+
* Additional button attributes to pass to the button element
|
|
224
|
+
* @example { 'data-id': 'save-button', 'form': 'profile-form' }
|
|
225
|
+
*/
|
|
226
|
+
attributes?: Record<string, any>;
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Dialog event object
|
|
230
|
+
*
|
|
231
|
+
* Passed to event handlers registered with the on() method.
|
|
232
|
+
*
|
|
233
|
+
* @category Components
|
|
234
|
+
*/
|
|
235
|
+
export interface DialogEvent {
|
|
236
|
+
/**
|
|
237
|
+
* Dialog component instance that triggered the event
|
|
238
|
+
*/
|
|
239
|
+
dialog: DialogComponent;
|
|
240
|
+
/**
|
|
241
|
+
* Original browser event if applicable
|
|
242
|
+
* May be undefined for programmatic events
|
|
243
|
+
*/
|
|
244
|
+
originalEvent?: Event;
|
|
245
|
+
/**
|
|
246
|
+
* Call this method to prevent the default action
|
|
247
|
+
* For example, to prevent a dialog from closing
|
|
248
|
+
*/
|
|
249
|
+
preventDefault: () => void;
|
|
250
|
+
/**
|
|
251
|
+
* Whether the default action was prevented
|
|
252
|
+
* Will be true if preventDefault() was called
|
|
253
|
+
*/
|
|
254
|
+
defaultPrevented: boolean;
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* Dialog component interface
|
|
258
|
+
*
|
|
259
|
+
* Provides methods for controlling a Material Design 3 dialog
|
|
260
|
+
*
|
|
261
|
+
* @category Components
|
|
262
|
+
*/
|
|
263
|
+
export interface DialogComponent {
|
|
264
|
+
/**
|
|
265
|
+
* The dialog's root DOM element
|
|
266
|
+
*/
|
|
267
|
+
element: HTMLElement;
|
|
268
|
+
/**
|
|
269
|
+
* The dialog's overlay/backdrop element
|
|
270
|
+
*/
|
|
271
|
+
overlay: HTMLElement;
|
|
272
|
+
/**
|
|
273
|
+
* Opens the dialog
|
|
274
|
+
* Displays the dialog with animation
|
|
275
|
+
* @returns Dialog component for method chaining
|
|
276
|
+
*/
|
|
277
|
+
open: () => DialogComponent;
|
|
278
|
+
/**
|
|
279
|
+
* Closes the dialog
|
|
280
|
+
* Hides the dialog with animation
|
|
281
|
+
* @returns Dialog component for method chaining
|
|
282
|
+
*/
|
|
283
|
+
close: () => DialogComponent;
|
|
284
|
+
/**
|
|
285
|
+
* Toggles dialog open/closed state
|
|
286
|
+
* @param open - Optional boolean to force specific state
|
|
287
|
+
* @returns Dialog component for method chaining
|
|
288
|
+
* @example
|
|
289
|
+
* dialog.toggle(); // Toggle current state
|
|
290
|
+
* dialog.toggle(true); // Force open
|
|
291
|
+
*/
|
|
292
|
+
toggle: (open?: boolean) => DialogComponent;
|
|
293
|
+
/**
|
|
294
|
+
* Checks if dialog is currently open
|
|
295
|
+
* @returns True if dialog is open, false otherwise
|
|
296
|
+
*/
|
|
297
|
+
isOpen: () => boolean;
|
|
298
|
+
/**
|
|
299
|
+
* Sets dialog title text
|
|
300
|
+
* @param title - New title to display in header
|
|
301
|
+
* @returns Dialog component for method chaining
|
|
302
|
+
*/
|
|
303
|
+
setTitle: (title: string) => DialogComponent;
|
|
304
|
+
/**
|
|
305
|
+
* Gets dialog current title text
|
|
306
|
+
* @returns Current title text
|
|
307
|
+
*/
|
|
308
|
+
getTitle: () => string;
|
|
309
|
+
/**
|
|
310
|
+
* Sets dialog subtitle text
|
|
311
|
+
* @param subtitle - New subtitle to display below title
|
|
312
|
+
* @returns Dialog component for method chaining
|
|
313
|
+
*/
|
|
314
|
+
setSubtitle: (subtitle: string) => DialogComponent;
|
|
315
|
+
/**
|
|
316
|
+
* Gets dialog current subtitle text
|
|
317
|
+
* @returns Current subtitle text
|
|
318
|
+
*/
|
|
319
|
+
getSubtitle: () => string;
|
|
320
|
+
/**
|
|
321
|
+
* Sets dialog content
|
|
322
|
+
* @param content - New content (text or HTML)
|
|
323
|
+
* @returns Dialog component for method chaining
|
|
324
|
+
*/
|
|
325
|
+
setContent: (content: string) => DialogComponent;
|
|
326
|
+
/**
|
|
327
|
+
* Gets dialog content
|
|
328
|
+
* @returns Current content text/HTML
|
|
329
|
+
*/
|
|
330
|
+
getContent: () => string;
|
|
331
|
+
/**
|
|
332
|
+
* Adds a button to the dialog footer
|
|
333
|
+
* @param button - Button configuration object
|
|
334
|
+
* @returns Dialog component for method chaining
|
|
335
|
+
*/
|
|
336
|
+
addButton: (button: DialogButton) => DialogComponent;
|
|
337
|
+
/**
|
|
338
|
+
* Removes a button by index or text
|
|
339
|
+
* @param indexOrText - Button index or text content
|
|
340
|
+
* @returns Dialog component for method chaining
|
|
341
|
+
* @example
|
|
342
|
+
* dialog.removeButton(0); // Remove first button
|
|
343
|
+
* dialog.removeButton('Cancel'); // Remove button with text 'Cancel'
|
|
344
|
+
*/
|
|
345
|
+
removeButton: (indexOrText: number | string) => DialogComponent;
|
|
346
|
+
/**
|
|
347
|
+
* Gets all footer buttons
|
|
348
|
+
* @returns Array of button configuration objects
|
|
349
|
+
*/
|
|
350
|
+
getButtons: () => DialogButton[];
|
|
351
|
+
/**
|
|
352
|
+
* Sets footer button alignment
|
|
353
|
+
* @param alignment - Alignment value
|
|
354
|
+
* @returns Dialog component for method chaining
|
|
355
|
+
*/
|
|
356
|
+
setFooterAlignment: (alignment: DialogFooterAlignment | string) => DialogComponent;
|
|
357
|
+
/**
|
|
358
|
+
* Sets dialog size
|
|
359
|
+
* @param size - Size variant
|
|
360
|
+
* @returns Dialog component for method chaining
|
|
361
|
+
*/
|
|
362
|
+
setSize: (size: DialogSize | string) => DialogComponent;
|
|
363
|
+
/**
|
|
364
|
+
* Adds an event listener to the dialog
|
|
365
|
+
* @param event - Event name
|
|
366
|
+
* @param handler - Event handler function
|
|
367
|
+
* @returns Dialog component for method chaining
|
|
368
|
+
* @example
|
|
369
|
+
* dialog.on('beforeclose', (event) => {
|
|
370
|
+
* // Prevent dialog from closing if form is invalid
|
|
371
|
+
* if (!isFormValid()) {
|
|
372
|
+
* event.preventDefault();
|
|
373
|
+
* }
|
|
374
|
+
* });
|
|
375
|
+
*/
|
|
376
|
+
on: (event: DialogEventType | string, handler: (event: DialogEvent) => void) => DialogComponent;
|
|
377
|
+
/**
|
|
378
|
+
* Removes an event listener from the dialog
|
|
379
|
+
* @param event - Event name
|
|
380
|
+
* @param handler - Event handler function
|
|
381
|
+
* @returns Dialog component for method chaining
|
|
382
|
+
*/
|
|
383
|
+
off: (event: DialogEventType | string, handler: (event: DialogEvent) => void) => DialogComponent;
|
|
384
|
+
/**
|
|
385
|
+
* Gets dialog header element
|
|
386
|
+
* @returns Header element or null if not present
|
|
387
|
+
*/
|
|
388
|
+
getHeaderElement: () => HTMLElement | null;
|
|
389
|
+
/**
|
|
390
|
+
* Gets dialog content element
|
|
391
|
+
* @returns Content element or null if not present
|
|
392
|
+
*/
|
|
393
|
+
getContentElement: () => HTMLElement | null;
|
|
394
|
+
/**
|
|
395
|
+
* Gets dialog footer element
|
|
396
|
+
* @returns Footer element or null if not present
|
|
397
|
+
*/
|
|
398
|
+
getFooterElement: () => HTMLElement | null;
|
|
399
|
+
/**
|
|
400
|
+
* Shows or hides the divider between header and content
|
|
401
|
+
* @param show - Whether to show or hide divider
|
|
402
|
+
* @returns Dialog component for method chaining
|
|
403
|
+
*/
|
|
404
|
+
toggleDivider: (show: boolean) => DialogComponent;
|
|
405
|
+
/**
|
|
406
|
+
* Checks if the dialog has a divider visible
|
|
407
|
+
* @returns True if divider is visible, false otherwise
|
|
408
|
+
*/
|
|
409
|
+
hasDivider: () => boolean;
|
|
410
|
+
/**
|
|
411
|
+
* Creates a confirmation dialog with Yes/No buttons
|
|
412
|
+
* Returns a promise that resolves to true if confirmed, false otherwise
|
|
413
|
+
*
|
|
414
|
+
* @param options - Confirmation dialog options
|
|
415
|
+
* @returns Promise resolving to boolean result
|
|
416
|
+
* @example
|
|
417
|
+
* const result = await dialog.confirm({
|
|
418
|
+
* title: 'Delete Item',
|
|
419
|
+
* message: 'Are you sure you want to delete this item?'
|
|
420
|
+
* });
|
|
421
|
+
*
|
|
422
|
+
* if (result) {
|
|
423
|
+
* deleteItem();
|
|
424
|
+
* }
|
|
425
|
+
*/
|
|
426
|
+
confirm: (options?: DialogConfirmOptions) => Promise<boolean>;
|
|
427
|
+
/**
|
|
428
|
+
* Destroys the dialog and removes it from DOM
|
|
429
|
+
* Cleans up all event listeners and references
|
|
430
|
+
*/
|
|
431
|
+
destroy: () => void;
|
|
432
|
+
}
|
|
433
|
+
/**
|
|
434
|
+
* Options for confirmation dialog
|
|
435
|
+
*
|
|
436
|
+
* Used with the dialog.confirm() method to create a simple
|
|
437
|
+
* confirmation dialog with customizable options.
|
|
438
|
+
*
|
|
439
|
+
* @category Components
|
|
440
|
+
*/
|
|
441
|
+
export interface DialogConfirmOptions {
|
|
442
|
+
/**
|
|
443
|
+
* Confirmation dialog title
|
|
444
|
+
* @default "Confirm"
|
|
445
|
+
* @example "Delete Item"
|
|
446
|
+
*/
|
|
447
|
+
title?: string;
|
|
448
|
+
/**
|
|
449
|
+
* Confirmation message/question to display
|
|
450
|
+
* Required field for the confirmation dialog
|
|
451
|
+
* @example "Are you sure you want to delete this item?"
|
|
452
|
+
*/
|
|
453
|
+
message: string;
|
|
454
|
+
/**
|
|
455
|
+
* Confirm button text
|
|
456
|
+
* @default "Yes"
|
|
457
|
+
* @example "Delete" | "Confirm" | "Yes, I'm sure"
|
|
458
|
+
*/
|
|
459
|
+
confirmText?: string;
|
|
460
|
+
/**
|
|
461
|
+
* Cancel button text
|
|
462
|
+
* @default "No"
|
|
463
|
+
* @example "Cancel" | "No, go back"
|
|
464
|
+
*/
|
|
465
|
+
cancelText?: string;
|
|
466
|
+
/**
|
|
467
|
+
* Confirm button variant
|
|
468
|
+
* @default "filled"
|
|
469
|
+
* @example "filled" | "tonal"
|
|
470
|
+
*/
|
|
471
|
+
confirmVariant?: string;
|
|
472
|
+
/**
|
|
473
|
+
* Cancel button variant
|
|
474
|
+
* @default "text"
|
|
475
|
+
* @example "text" | "outlined"
|
|
476
|
+
*/
|
|
477
|
+
cancelVariant?: string;
|
|
478
|
+
/**
|
|
479
|
+
* Dialog size for the confirmation dialog
|
|
480
|
+
* @default "small"
|
|
481
|
+
*/
|
|
482
|
+
size?: DialogSize | string;
|
|
483
|
+
}
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration options for divider components
|
|
3
|
+
*
|
|
4
|
+
* Controls the appearance, orientation, and behavior of Material Design 3 dividers.
|
|
5
|
+
*
|
|
6
|
+
* @category Components
|
|
7
|
+
*/
|
|
8
|
+
export interface DividerConfig {
|
|
9
|
+
/**
|
|
10
|
+
* CSS class prefix (defaults to 'mtrl')
|
|
11
|
+
*
|
|
12
|
+
* Used for generating BEM-style class names for the component
|
|
13
|
+
*/
|
|
14
|
+
prefix?: string;
|
|
15
|
+
/**
|
|
16
|
+
* CSS class to add to the divider
|
|
17
|
+
*
|
|
18
|
+
* Additional classes for custom styling needs.
|
|
19
|
+
* Can be a single class string or an array of class strings.
|
|
20
|
+
*
|
|
21
|
+
* @example 'my-custom-divider' or ['my-custom-divider', 'special-spacing']
|
|
22
|
+
*/
|
|
23
|
+
class?: string | string[];
|
|
24
|
+
/**
|
|
25
|
+
* Orientation of the divider
|
|
26
|
+
*
|
|
27
|
+
* - 'horizontal': Creates a horizontal line (default)
|
|
28
|
+
* - 'vertical': Creates a vertical line
|
|
29
|
+
*
|
|
30
|
+
* @default 'horizontal'
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* ```typescript
|
|
34
|
+
* // Create a vertical divider
|
|
35
|
+
* createDivider({ orientation: 'vertical' })
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
orientation?: 'horizontal' | 'vertical';
|
|
39
|
+
/**
|
|
40
|
+
* Variant of the divider
|
|
41
|
+
*
|
|
42
|
+
* Controls how the divider is inset within its container:
|
|
43
|
+
* - 'full-width': Spans the entire width/height (default)
|
|
44
|
+
* - 'inset': Adds space at the start (left for horizontal, top for vertical)
|
|
45
|
+
* - 'middle-inset': Adds space at both start and end
|
|
46
|
+
*
|
|
47
|
+
* Most commonly used in lists to align dividers with text content.
|
|
48
|
+
*
|
|
49
|
+
* @default 'full-width'
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
* ```typescript
|
|
53
|
+
* // Create a list divider with left inset
|
|
54
|
+
* createDivider({ variant: 'inset' })
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
variant?: 'full-width' | 'inset' | 'middle-inset';
|
|
58
|
+
/**
|
|
59
|
+
* Custom inset value (left margin for horizontal, top margin for vertical)
|
|
60
|
+
*
|
|
61
|
+
* Overrides the default inset spacing at the start of the divider.
|
|
62
|
+
* Only applies when variant is 'inset' or 'middle-inset'.
|
|
63
|
+
*
|
|
64
|
+
* @default 16 for 'inset' and 'middle-inset' variants
|
|
65
|
+
*
|
|
66
|
+
* @example
|
|
67
|
+
* ```typescript
|
|
68
|
+
* // Create a divider with 24px left inset
|
|
69
|
+
* createDivider({ variant: 'inset', insetStart: 24 })
|
|
70
|
+
* ```
|
|
71
|
+
*/
|
|
72
|
+
insetStart?: number;
|
|
73
|
+
/**
|
|
74
|
+
* Custom inset end value (right margin for horizontal, bottom margin for vertical)
|
|
75
|
+
*
|
|
76
|
+
* Overrides the default inset spacing at the end of the divider.
|
|
77
|
+
* Only applies when variant is 'middle-inset'.
|
|
78
|
+
*
|
|
79
|
+
* @default 0 for 'inset', 16 for 'middle-inset'
|
|
80
|
+
*
|
|
81
|
+
* @example
|
|
82
|
+
* ```typescript
|
|
83
|
+
* // Create a divider with custom insets on both sides
|
|
84
|
+
* createDivider({ variant: 'middle-inset', insetStart: 16, insetEnd: 24 })
|
|
85
|
+
* ```
|
|
86
|
+
*/
|
|
87
|
+
insetEnd?: number;
|
|
88
|
+
/**
|
|
89
|
+
* Color of the divider
|
|
90
|
+
*
|
|
91
|
+
* Sets a custom color for the divider. Accepts any valid CSS color value.
|
|
92
|
+
* By default, dividers use the 'outline-variant' color from the Material theme.
|
|
93
|
+
*
|
|
94
|
+
* @example
|
|
95
|
+
* ```typescript
|
|
96
|
+
* // Create a blue divider
|
|
97
|
+
* createDivider({ color: '#2196F3' })
|
|
98
|
+
*
|
|
99
|
+
* // Create a divider with a semi-transparent color
|
|
100
|
+
* createDivider({ color: 'rgba(0, 0, 0, 0.12)' })
|
|
101
|
+
* ```
|
|
102
|
+
*/
|
|
103
|
+
color?: string;
|
|
104
|
+
/**
|
|
105
|
+
* Thickness of the divider in pixels
|
|
106
|
+
*
|
|
107
|
+
* Controls the thickness (height for horizontal, width for vertical) of the divider.
|
|
108
|
+
* Material Design 3 typically uses 1px thickness for dividers.
|
|
109
|
+
*
|
|
110
|
+
* @default 1
|
|
111
|
+
*
|
|
112
|
+
* @example
|
|
113
|
+
* ```typescript
|
|
114
|
+
* // Create a bold divider
|
|
115
|
+
* createDivider({ thickness: 2 })
|
|
116
|
+
* ```
|
|
117
|
+
*/
|
|
118
|
+
thickness?: number;
|
|
119
|
+
/**
|
|
120
|
+
* Used internally for component composition
|
|
121
|
+
*
|
|
122
|
+
* @internal
|
|
123
|
+
*/
|
|
124
|
+
componentName?: string;
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Default configuration for dividers
|
|
128
|
+
*
|
|
129
|
+
* @internal
|
|
130
|
+
*/
|
|
131
|
+
export declare const defaultConfig: Partial<DividerConfig>;
|
|
132
|
+
/**
|
|
133
|
+
* Creates a base configuration object for divider
|
|
134
|
+
*
|
|
135
|
+
* Merges user-provided configuration with default values and ensures
|
|
136
|
+
* all required properties have values.
|
|
137
|
+
*
|
|
138
|
+
* @param config - User provided configuration
|
|
139
|
+
* @returns Complete configuration with defaults applied
|
|
140
|
+
*
|
|
141
|
+
* @internal
|
|
142
|
+
*/
|
|
143
|
+
export declare const createBaseConfig: (config?: DividerConfig) => DividerConfig;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Divider orientation options
|
|
3
|
+
*/
|
|
4
|
+
export declare const DIVIDER_ORIENTATIONS: {
|
|
5
|
+
/** Horizontal divider (default) */
|
|
6
|
+
readonly HORIZONTAL: "horizontal";
|
|
7
|
+
/** Vertical divider */
|
|
8
|
+
readonly VERTICAL: "vertical";
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Divider variant options
|
|
12
|
+
*/
|
|
13
|
+
export declare const DIVIDER_VARIANTS: {
|
|
14
|
+
/** Spans the entire width/height of the container (default) */
|
|
15
|
+
readonly FULL_WIDTH: "full-width";
|
|
16
|
+
/** Adds space at the start (left for horizontal, top for vertical) */
|
|
17
|
+
readonly INSET: "inset";
|
|
18
|
+
/** Adds space at both start and end */
|
|
19
|
+
readonly MIDDLE_INSET: "middle-inset";
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Default divider thickness in pixels
|
|
23
|
+
* Following Material Design 3 guidelines
|
|
24
|
+
*/
|
|
25
|
+
export declare const DEFAULT_DIVIDER_THICKNESS = 1;
|
|
26
|
+
/**
|
|
27
|
+
* Default inset value in pixels
|
|
28
|
+
* Applied when variant is 'inset' or 'middle-inset'
|
|
29
|
+
*/
|
|
30
|
+
export declare const DEFAULT_INSET_VALUE = 16;
|
|
31
|
+
/**
|
|
32
|
+
* CSS classes used by the divider component
|
|
33
|
+
*/
|
|
34
|
+
export declare const DIVIDER_CLASSES: {
|
|
35
|
+
/** Root divider element */
|
|
36
|
+
readonly ROOT: "divider";
|
|
37
|
+
/** Applied to horizontal dividers */
|
|
38
|
+
readonly HORIZONTAL: "divider--horizontal";
|
|
39
|
+
/** Applied to vertical dividers */
|
|
40
|
+
readonly VERTICAL: "divider--vertical";
|
|
41
|
+
/** Applied to inset dividers */
|
|
42
|
+
readonly INSET: "divider--inset";
|
|
43
|
+
/** Applied to middle-inset dividers */
|
|
44
|
+
readonly MIDDLE_INSET: "divider--middle-inset";
|
|
45
|
+
};
|