mtrl 0.3.7 → 0.3.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/LICENSE +21 -0
- package/dist/README.md +324 -0
- package/dist/components/badge/api.d.ts +48 -0
- package/{src/components/badge/badge.ts → dist/components/badge/badge.d.ts} +14 -57
- package/dist/components/badge/config.d.ts +79 -0
- package/dist/components/badge/constants.d.ts +35 -0
- package/dist/components/badge/features.d.ts +36 -0
- package/dist/components/badge/index.d.ts +8 -0
- package/dist/components/badge/types.d.ts +256 -0
- package/dist/components/bottom-app-bar/bottom-app-bar.d.ts +12 -0
- package/dist/components/bottom-app-bar/config.d.ts +16 -0
- package/dist/components/bottom-app-bar/constants.d.ts +22 -0
- package/{src/components/bottom-app-bar/index.ts → dist/components/bottom-app-bar/index.d.ts} +0 -9
- package/dist/components/bottom-app-bar/types.d.ts +96 -0
- package/dist/components/button/api.d.ts +47 -0
- package/dist/components/button/button.d.ts +25 -0
- package/dist/components/button/config.d.ts +59 -0
- package/dist/components/button/constants.d.ts +43 -0
- package/dist/components/button/index.d.ts +6 -0
- package/dist/components/button/types.d.ts +265 -0
- package/dist/components/card/api.d.ts +11 -0
- package/{src/components/card/card.ts → dist/components/card/card.d.ts} +10 -58
- package/dist/components/card/config.d.ts +105 -0
- package/dist/components/card/constants.d.ts +85 -0
- package/dist/components/card/content.d.ts +92 -0
- package/dist/components/card/features.d.ts +131 -0
- package/{src/components/card/index.ts → dist/components/card/index.d.ts} +13 -74
- package/dist/components/card/types.d.ts +471 -0
- package/dist/components/carousel/api.d.ts +33 -0
- package/dist/components/carousel/carousel.d.ts +75 -0
- package/dist/components/carousel/config.d.ts +45 -0
- package/dist/components/carousel/constants.d.ts +165 -0
- package/dist/components/carousel/features/drag.d.ts +8 -0
- package/{src/components/carousel/features/index.ts → dist/components/carousel/features/index.d.ts} +1 -4
- package/dist/components/carousel/features/slides.d.ts +8 -0
- package/{src/components/carousel/index.ts → dist/components/carousel/index.d.ts} +10 -29
- package/dist/components/carousel/types.d.ts +276 -0
- package/dist/components/checkbox/api.d.ts +7 -0
- package/dist/components/checkbox/checkbox.d.ts +65 -0
- package/dist/components/checkbox/config.d.ts +44 -0
- package/dist/components/checkbox/constants.d.ts +63 -0
- package/{src/components/checkbox/index.ts → dist/components/checkbox/index.d.ts} +8 -25
- package/dist/components/checkbox/types.d.ts +242 -0
- package/dist/components/chips/api.d.ts +49 -0
- package/dist/components/chips/chip/api.d.ts +23 -0
- package/dist/components/chips/chip/chip.d.ts +8 -0
- package/dist/components/chips/chip/config.d.ts +57 -0
- package/dist/components/chips/chip/constants.d.ts +38 -0
- package/dist/components/chips/chip/index.d.ts +2 -0
- package/dist/components/chips/chip/types.d.ts +11 -0
- package/dist/components/chips/chips.d.ts +17 -0
- package/dist/components/chips/config.d.ts +67 -0
- package/dist/components/chips/constants.d.ts +46 -0
- package/dist/components/chips/features/chip-items.d.ts +8 -0
- package/dist/components/chips/features/container.d.ts +8 -0
- package/dist/components/chips/features/controller.d.ts +9 -0
- package/{src/components/chips/features/index.ts → dist/components/chips/features/index.d.ts} +1 -2
- package/dist/components/chips/features/label.d.ts +8 -0
- package/dist/components/chips/index.d.ts +4 -0
- package/dist/components/chips/schema.d.ts +34 -0
- package/dist/components/chips/types.d.ts +398 -0
- package/dist/components/datepicker/api.d.ts +9 -0
- package/dist/components/datepicker/config.d.ts +79 -0
- package/dist/components/datepicker/constants.d.ts +97 -0
- package/dist/components/datepicker/datepicker.d.ts +8 -0
- package/dist/components/datepicker/index.d.ts +3 -0
- package/dist/components/datepicker/render.d.ts +43 -0
- package/dist/components/datepicker/types.d.ts +321 -0
- package/dist/components/datepicker/utils.d.ts +84 -0
- package/dist/components/dialog/api.d.ts +59 -0
- package/dist/components/dialog/config.d.ts +91 -0
- package/dist/components/dialog/constants.d.ts +116 -0
- package/{src/components/dialog/dialog.ts → dist/components/dialog/dialog.d.ts} +16 -69
- package/dist/components/dialog/features.d.ts +37 -0
- package/dist/components/dialog/index.d.ts +14 -0
- package/dist/components/dialog/types.d.ts +483 -0
- package/dist/components/divider/config.d.ts +143 -0
- package/dist/components/divider/constants.d.ts +45 -0
- package/{src/components/divider/divider.ts → dist/components/divider/divider.d.ts} +9 -37
- package/dist/components/divider/features.d.ts +50 -0
- package/{src/components/divider/index.ts → dist/components/divider/index.d.ts} +6 -12
- package/dist/components/divider/types.d.ts +124 -0
- package/dist/components/extended-fab/api.d.ts +83 -0
- package/dist/components/extended-fab/config.d.ts +75 -0
- package/dist/components/extended-fab/constants.d.ts +82 -0
- package/dist/components/extended-fab/extended-fab.d.ts +61 -0
- package/{src/components/extended-fab/index.ts → dist/components/extended-fab/index.d.ts} +6 -15
- package/dist/components/extended-fab/types.d.ts +703 -0
- package/dist/components/fab/api.d.ts +64 -0
- package/dist/components/fab/config.d.ts +71 -0
- package/dist/components/fab/constants.d.ts +75 -0
- package/{src/components/fab/fab.ts → dist/components/fab/fab.d.ts} +10 -46
- package/{src/components/fab/index.ts → dist/components/fab/index.d.ts} +6 -15
- package/dist/components/fab/types.d.ts +577 -0
- package/dist/components/index.d.ts +76 -0
- package/dist/components/list/api.d.ts +106 -0
- package/dist/components/list/config.d.ts +61 -0
- package/dist/components/list/constants.d.ts +76 -0
- package/dist/components/list/features/index.d.ts +2 -0
- package/dist/components/list/features/listmanager.d.ts +9 -0
- package/dist/components/list/features/selection.d.ts +9 -0
- package/dist/components/list/index.d.ts +12 -0
- package/dist/components/list/list.d.ts +11 -0
- package/dist/components/list/types.d.ts +294 -0
- package/dist/components/menu/api.d.ts +58 -0
- package/dist/components/menu/config.d.ts +78 -0
- package/dist/components/menu/constants.d.ts +106 -0
- package/dist/components/menu/features/controller.d.ts +10 -0
- package/dist/components/menu/features/index.d.ts +6 -0
- package/dist/components/menu/features/keyboard.d.ts +26 -0
- package/dist/components/menu/features/opener.d.ts +10 -0
- package/dist/components/menu/features/position.d.ts +18 -0
- package/dist/components/menu/features/submenu.d.ts +10 -0
- package/{src/components/menu/index.ts → dist/components/menu/index.d.ts} +11 -27
- package/dist/components/menu/menu.d.ts +29 -0
- package/dist/components/menu/types.d.ts +338 -0
- package/dist/components/navigation/api.d.ts +8 -0
- package/dist/components/navigation/config.d.ts +34 -0
- package/dist/components/navigation/constants.d.ts +137 -0
- package/dist/components/navigation/features/controller.d.ts +30 -0
- package/dist/components/navigation/features/items.d.ts +32 -0
- package/dist/components/navigation/index.d.ts +3 -0
- package/dist/components/navigation/nav-item.d.ts +30 -0
- package/dist/components/navigation/navigation.d.ts +8 -0
- package/dist/components/navigation/system/core.d.ts +72 -0
- package/dist/components/navigation/system/events.d.ts +35 -0
- package/dist/components/navigation/system/index.d.ts +10 -0
- package/dist/components/navigation/system/mobile.d.ts +52 -0
- package/dist/components/navigation/system/state.d.ts +22 -0
- package/dist/components/navigation/system/types.d.ts +305 -0
- package/dist/components/navigation/types.d.ts +216 -0
- package/dist/components/progress/api.d.ts +46 -0
- package/dist/components/progress/config.d.ts +63 -0
- package/dist/components/progress/constants.d.ts +58 -0
- package/dist/components/progress/index.d.ts +3 -0
- package/dist/components/progress/progress.d.ts +24 -0
- package/dist/components/progress/types.d.ts +199 -0
- package/dist/components/radios/api.d.ts +37 -0
- package/dist/components/radios/config.d.ts +42 -0
- package/dist/components/radios/constants.d.ts +114 -0
- package/dist/components/radios/index.d.ts +3 -0
- package/dist/components/radios/radio.d.ts +8 -0
- package/dist/components/radios/radios.d.ts +8 -0
- package/dist/components/radios/types.d.ts +189 -0
- package/dist/components/search/api.d.ts +55 -0
- package/dist/components/search/config.d.ts +73 -0
- package/dist/components/search/constants.d.ts +128 -0
- package/{src/components/search/features/index.ts → dist/components/search/features/index.d.ts} +1 -2
- package/dist/components/search/features/search.d.ts +7 -0
- package/dist/components/search/features/states.d.ts +8 -0
- package/dist/components/search/features/structure.d.ts +7 -0
- package/dist/components/search/index.d.ts +3 -0
- package/dist/components/search/search.d.ts +8 -0
- package/dist/components/search/types.d.ts +132 -0
- package/dist/components/segmented-button/config.d.ts +65 -0
- package/dist/components/segmented-button/constants.d.ts +85 -0
- package/dist/components/segmented-button/index.d.ts +4 -0
- package/dist/components/segmented-button/segment.d.ts +15 -0
- package/dist/components/segmented-button/segmented-button.d.ts +49 -0
- package/dist/components/segmented-button/types.d.ts +257 -0
- package/dist/components/select/api.d.ts +8 -0
- package/dist/components/select/config.d.ts +18 -0
- package/dist/components/select/constants.d.ts +113 -0
- package/dist/components/select/features.d.ts +13 -0
- package/{src/components/select/index.ts → dist/components/select/index.d.ts} +7 -20
- package/dist/components/select/select.d.ts +36 -0
- package/dist/components/select/types.d.ts +302 -0
- package/dist/components/sheet/api.d.ts +37 -0
- package/dist/components/sheet/config.d.ts +42 -0
- package/dist/components/sheet/constants.d.ts +136 -0
- package/dist/components/sheet/features/content.d.ts +6 -0
- package/dist/components/sheet/features/gestures.d.ts +6 -0
- package/{src/components/sheet/features/index.ts → dist/components/sheet/features/index.d.ts} +1 -2
- package/dist/components/sheet/features/position.d.ts +7 -0
- package/dist/components/sheet/features/state.d.ts +6 -0
- package/dist/components/sheet/features/title.d.ts +6 -0
- package/dist/components/sheet/index.d.ts +3 -0
- package/dist/components/sheet/sheet.d.ts +8 -0
- package/dist/components/sheet/types.d.ts +250 -0
- package/dist/components/slider/api.d.ts +57 -0
- package/dist/components/slider/config.d.ts +75 -0
- package/dist/components/slider/constants.d.ts +138 -0
- package/dist/components/slider/features/controller.d.ts +9 -0
- package/dist/components/slider/features/handlers.d.ts +25 -0
- package/dist/components/slider/features/index.d.ts +3 -0
- package/dist/components/slider/features/range.d.ts +8 -0
- package/dist/components/slider/features/states.d.ts +9 -0
- package/dist/components/slider/index.d.ts +3 -0
- package/dist/components/slider/schema.d.ts +108 -0
- package/dist/components/slider/slider.d.ts +18 -0
- package/dist/components/slider/types.d.ts +170 -0
- package/dist/components/snackbar/api.d.ts +7 -0
- package/dist/components/snackbar/config.d.ts +55 -0
- package/dist/components/snackbar/constants.d.ts +88 -0
- package/dist/components/snackbar/features.d.ts +13 -0
- package/dist/components/snackbar/index.d.ts +3 -0
- package/dist/components/snackbar/position.d.ts +15 -0
- package/dist/components/snackbar/queue.d.ts +7 -0
- package/dist/components/snackbar/snackbar.d.ts +8 -0
- package/dist/components/snackbar/types.d.ts +172 -0
- package/dist/components/switch/api.d.ts +7 -0
- package/dist/components/switch/config.d.ts +34 -0
- package/dist/components/switch/constants.d.ts +88 -0
- package/dist/components/switch/features.d.ts +59 -0
- package/dist/components/switch/index.d.ts +4 -0
- package/dist/components/switch/switch.d.ts +8 -0
- package/dist/components/switch/types.d.ts +131 -0
- package/dist/components/tabs/api.d.ts +52 -0
- package/dist/components/tabs/config.d.ts +39 -0
- package/dist/components/tabs/constants.d.ts +142 -0
- package/dist/components/tabs/features.d.ts +133 -0
- package/dist/components/tabs/index.d.ts +11 -0
- package/dist/components/tabs/indicator.d.ts +49 -0
- package/dist/components/tabs/responsive.d.ts +38 -0
- package/dist/components/tabs/scroll-indicators.d.ts +18 -0
- package/dist/components/tabs/state.d.ts +53 -0
- package/dist/components/tabs/tab-api.d.ts +43 -0
- package/dist/components/tabs/tab.d.ts +7 -0
- package/dist/components/tabs/tabs.d.ts +27 -0
- package/dist/components/tabs/types.d.ts +390 -0
- package/dist/components/tabs/utils.d.ts +17 -0
- package/dist/components/textfield/api.d.ts +8 -0
- package/dist/components/textfield/config.d.ts +34 -0
- package/dist/components/textfield/constants.d.ts +148 -0
- package/{src/components/textfield/features/index.ts → dist/components/textfield/features/index.d.ts} +1 -6
- package/dist/components/textfield/features/leading-icon.d.ts +55 -0
- package/dist/components/textfield/features/placement.d.ts +28 -0
- package/dist/components/textfield/features/prefix-text.d.ts +54 -0
- package/dist/components/textfield/features/suffix-text.d.ts +54 -0
- package/dist/components/textfield/features/supporting-text.d.ts +59 -0
- package/dist/components/textfield/features/trailing-icon.d.ts +55 -0
- package/dist/components/textfield/index.d.ts +3 -0
- package/dist/components/textfield/textfield.d.ts +36 -0
- package/dist/components/textfield/types.d.ts +217 -0
- package/dist/components/timepicker/api.d.ts +24 -0
- package/dist/components/timepicker/clockdial.d.ts +34 -0
- package/dist/components/timepicker/config.d.ts +75 -0
- package/dist/components/timepicker/constants.d.ts +266 -0
- package/dist/components/timepicker/index.d.ts +4 -0
- package/dist/components/timepicker/render.d.ts +9 -0
- package/dist/components/timepicker/timepicker.d.ts +8 -0
- package/dist/components/timepicker/types.d.ts +284 -0
- package/dist/components/timepicker/utils.d.ts +74 -0
- package/dist/components/tooltip/api.d.ts +18 -0
- package/dist/components/tooltip/config.d.ts +38 -0
- package/dist/components/tooltip/constants.d.ts +108 -0
- package/dist/components/tooltip/index.d.ts +3 -0
- package/dist/components/tooltip/tooltip.d.ts +8 -0
- package/dist/components/tooltip/types.d.ts +188 -0
- package/dist/components/top-app-bar/config.d.ts +16 -0
- package/dist/components/top-app-bar/constants.d.ts +74 -0
- package/{src/components/top-app-bar/index.ts → dist/components/top-app-bar/index.d.ts} +2 -4
- package/dist/components/top-app-bar/top-app-bar.d.ts +68 -0
- package/dist/components/top-app-bar/types.d.ts +118 -0
- package/dist/constants.d.ts +30 -0
- package/dist/core/collection/adapters/base.d.ts +47 -0
- package/dist/core/collection/adapters/route.d.ts +149 -0
- package/dist/core/collection/collection.d.ts +131 -0
- package/dist/core/collection/index.d.ts +10 -0
- package/dist/core/collection/list-manager/config.d.ts +29 -0
- package/dist/core/collection/list-manager/dom-elements.d.ts +30 -0
- package/dist/core/collection/list-manager/index.d.ts +61 -0
- package/dist/core/collection/list-manager/item-measurement.d.ts +91 -0
- package/dist/core/collection/list-manager/renderer.d.ts +31 -0
- package/dist/core/collection/list-manager/scroll-tracker.d.ts +20 -0
- package/dist/core/collection/list-manager/state.d.ts +60 -0
- package/dist/core/collection/list-manager/types.d.ts +361 -0
- package/dist/core/collection/list-manager/utils/recycling.d.ts +34 -0
- package/dist/core/collection/list-manager/utils/visibility.d.ts +45 -0
- package/dist/core/compose/base.d.ts +31 -0
- package/dist/core/compose/component.d.ts +61 -0
- package/dist/core/compose/features/badge.d.ts +43 -0
- package/dist/core/compose/features/checkable.d.ts +59 -0
- package/dist/core/compose/features/constants.d.ts +45 -0
- package/dist/core/compose/features/debounce.d.ts +84 -0
- package/dist/core/compose/features/disabled.d.ts +47 -0
- package/dist/core/compose/features/events.d.ts +37 -0
- package/dist/core/compose/features/gestures/longpress.d.ts +85 -0
- package/dist/core/compose/features/gestures/pan.d.ts +108 -0
- package/dist/core/compose/features/gestures/pinch.d.ts +111 -0
- package/dist/core/compose/features/gestures/rotate.d.ts +111 -0
- package/dist/core/compose/features/gestures/swipe.d.ts +149 -0
- package/dist/core/compose/features/gestures/tap.d.ts +79 -0
- package/dist/core/compose/features/gestures.d.ts +86 -0
- package/dist/core/compose/features/icon.d.ts +71 -0
- package/{src/core/compose/features/index.ts → dist/core/compose/features/index.d.ts} +7 -8
- package/dist/core/compose/features/input.d.ts +71 -0
- package/dist/core/compose/features/lifecycle.d.ts +61 -0
- package/dist/core/compose/features/position.d.ts +51 -0
- package/dist/core/compose/features/ripple.d.ts +61 -0
- package/dist/core/compose/features/size.d.ts +17 -0
- package/dist/core/compose/features/style.d.ts +16 -0
- package/dist/core/compose/features/text.d.ts +63 -0
- package/dist/core/compose/features/textinput.d.ts +93 -0
- package/dist/core/compose/features/textlabel.d.ts +57 -0
- package/dist/core/compose/features/throttle.d.ts +75 -0
- package/dist/core/compose/features/track.d.ts +42 -0
- package/dist/core/compose/features/variant.d.ts +17 -0
- package/dist/core/compose/features/withEvents.d.ts +45 -0
- package/dist/core/compose/index.d.ts +17 -0
- package/{src/core/compose/pipe.ts → dist/core/compose/pipe.d.ts} +4 -20
- package/dist/core/compose/utils/type-guards.d.ts +27 -0
- package/dist/core/composition/features/dom.d.ts +19 -0
- package/dist/core/composition/features/icon.d.ts +45 -0
- package/{src/core/composition/features/index.ts → dist/core/composition/features/index.d.ts} +1 -6
- package/dist/core/composition/features/label.d.ts +49 -0
- package/{src/core/composition/features/layout.ts → dist/core/composition/features/layout.d.ts} +8 -24
- package/{src/core/composition/index.ts → dist/core/composition/index.d.ts} +4 -14
- package/{src/core/config/component-config.ts → dist/core/config/component.d.ts} +34 -82
- package/dist/core/config.d.ts +130 -0
- package/{src/core/dom/attributes.ts → dist/core/dom/attributes.d.ts} +2 -13
- package/dist/core/dom/classes.d.ts +42 -0
- package/dist/core/dom/create.d.ts +124 -0
- package/dist/core/dom/events.d.ts +69 -0
- package/{src/core/dom/index.ts → dist/core/dom/index.d.ts} +1 -5
- package/dist/core/dom/utils.d.ts +42 -0
- package/dist/core/gestures/index.d.ts +12 -0
- package/dist/core/gestures/longpress.d.ts +23 -0
- package/dist/core/gestures/manager.d.ts +14 -0
- package/dist/core/gestures/pan.d.ts +12 -0
- package/dist/core/gestures/pinch.d.ts +14 -0
- package/dist/core/gestures/rotate.d.ts +14 -0
- package/dist/core/gestures/swipe.d.ts +20 -0
- package/dist/core/gestures/tap.d.ts +12 -0
- package/dist/core/gestures/types.d.ts +320 -0
- package/dist/core/gestures/utils.d.ts +57 -0
- package/dist/core/index.d.ts +29 -0
- package/dist/core/layout/array.d.ts +15 -0
- package/dist/core/layout/config.d.ts +32 -0
- package/dist/core/layout/create.d.ts +14 -0
- package/dist/core/layout/index.d.ts +13 -0
- package/dist/core/layout/jsx.d.ts +13 -0
- package/dist/core/layout/object.d.ts +14 -0
- package/dist/core/layout/processor.d.ts +28 -0
- package/dist/core/layout/result.d.ts +12 -0
- package/dist/core/layout/template.d.ts +12 -0
- package/dist/core/layout/types.d.ts +137 -0
- package/dist/core/layout/utils.d.ts +38 -0
- package/dist/core/state/disabled.d.ts +32 -0
- package/dist/core/state/emitter.d.ts +40 -0
- package/dist/core/state/events.d.ts +36 -0
- package/{src/core/state/index.ts → dist/core/state/index.d.ts} +1 -7
- package/dist/core/state/lifecycle.d.ts +57 -0
- package/dist/core/state/store.d.ts +82 -0
- package/dist/core/utils/background.d.ts +40 -0
- package/dist/core/utils/index.d.ts +23 -0
- package/dist/core/utils/mobile.d.ts +54 -0
- package/dist/core/utils/object.d.ts +13 -0
- package/dist/core/utils/performance.d.ts +79 -0
- package/dist/core/utils/validate.d.ts +73 -0
- package/dist/index.cjs +64 -0
- package/dist/index.cjs.map +285 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.js +53 -14854
- package/dist/index.js.map +285 -0
- package/dist/package.json +39 -0
- package/dist/styles.css +7 -0
- package/package.json +24 -5
- package/.env +0 -15
- package/.typedocignore +0 -11
- package/CONTRIBUTING.md +0 -218
- package/DOCS.md +0 -153
- package/TESTING.md +0 -214
- package/git-user-stats.js +0 -545
- package/index.ts +0 -10
- package/src/components/badge/api.ts +0 -313
- package/src/components/badge/config.ts +0 -153
- package/src/components/badge/features.ts +0 -194
- package/src/components/badge/index.ts +0 -90
- package/src/components/badge/types.ts +0 -279
- package/src/components/bottom-app-bar/bottom-app-bar.ts +0 -154
- package/src/components/bottom-app-bar/config.ts +0 -29
- package/src/components/bottom-app-bar/types.ts +0 -114
- package/src/components/button/api.ts +0 -172
- package/src/components/button/button.ts +0 -112
- package/src/components/button/config.ts +0 -96
- package/src/components/button/index.ts +0 -37
- package/src/components/button/types.ts +0 -290
- package/src/components/card/api.ts +0 -222
- package/src/components/card/config.ts +0 -304
- package/src/components/card/content.ts +0 -343
- package/src/components/card/features.ts +0 -407
- package/src/components/card/types.ts +0 -497
- package/src/components/carousel/api.ts +0 -147
- package/src/components/carousel/carousel.ts +0 -242
- package/src/components/carousel/config.ts +0 -91
- package/src/components/carousel/constants.ts +0 -181
- package/src/components/carousel/features/drag.ts +0 -388
- package/src/components/carousel/features/slides.ts +0 -682
- package/src/components/carousel/types.ts +0 -327
- package/src/components/checkbox/api.ts +0 -82
- package/src/components/checkbox/checkbox.ts +0 -142
- package/src/components/checkbox/config.ts +0 -89
- package/src/components/checkbox/types.ts +0 -342
- package/src/components/chips/api.ts +0 -194
- package/src/components/chips/chip/api.ts +0 -233
- package/src/components/chips/chip/chip.ts +0 -131
- package/src/components/chips/chip/config.ts +0 -91
- package/src/components/chips/chip/index.ts +0 -3
- package/src/components/chips/chips.md +0 -481
- package/src/components/chips/chips.ts +0 -75
- package/src/components/chips/config.ts +0 -109
- package/src/components/chips/constants.ts +0 -61
- package/src/components/chips/features/chip-items.ts +0 -33
- package/src/components/chips/features/container.ts +0 -77
- package/src/components/chips/features/controller.ts +0 -448
- package/src/components/chips/features/label.ts +0 -108
- package/src/components/chips/index.ts +0 -11
- package/src/components/chips/schema.ts +0 -61
- package/src/components/chips/types.ts +0 -469
- package/src/components/datepicker/api.ts +0 -265
- package/src/components/datepicker/config.ts +0 -141
- package/src/components/datepicker/datepicker.ts +0 -341
- package/src/components/datepicker/index.ts +0 -12
- package/src/components/datepicker/render.ts +0 -450
- package/src/components/datepicker/types.ts +0 -397
- package/src/components/datepicker/utils.ts +0 -289
- package/src/components/dialog/api.ts +0 -317
- package/src/components/dialog/config.ts +0 -116
- package/src/components/dialog/features.ts +0 -907
- package/src/components/dialog/index.ts +0 -141
- package/src/components/dialog/types.ts +0 -553
- package/src/components/divider/config.ts +0 -165
- package/src/components/divider/features.ts +0 -233
- package/src/components/divider/types.ts +0 -132
- package/src/components/extended-fab/api.ts +0 -193
- package/src/components/extended-fab/config.ts +0 -140
- package/src/components/extended-fab/extended-fab.ts +0 -153
- package/src/components/extended-fab/types.ts +0 -749
- package/src/components/fab/api.ts +0 -137
- package/src/components/fab/config.ts +0 -121
- package/src/components/fab/types.ts +0 -615
- package/src/components/list/api.ts +0 -82
- package/src/components/list/config.ts +0 -63
- package/src/components/list/features.ts +0 -229
- package/src/components/list/index.ts +0 -67
- package/src/components/list/list-item.ts +0 -163
- package/src/components/list/list.ts +0 -108
- package/src/components/list/types.ts +0 -396
- package/src/components/list/utils.ts +0 -98
- package/src/components/menu/api.ts +0 -193
- package/src/components/menu/config.ts +0 -125
- package/src/components/menu/features/anchor.ts +0 -243
- package/src/components/menu/features/controller.ts +0 -1167
- package/src/components/menu/features/index.ts +0 -5
- package/src/components/menu/features/position.ts +0 -353
- package/src/components/menu/menu.ts +0 -119
- package/src/components/menu/types.ts +0 -379
- package/src/components/navigation/api.ts +0 -142
- package/src/components/navigation/config.ts +0 -73
- package/src/components/navigation/features/controller.ts +0 -273
- package/src/components/navigation/features/items.ts +0 -353
- package/src/components/navigation/index.ts +0 -11
- package/src/components/navigation/nav-item.ts +0 -196
- package/src/components/navigation/navigation.ts +0 -115
- package/src/components/navigation/system/core.ts +0 -302
- package/src/components/navigation/system/events.ts +0 -240
- package/src/components/navigation/system/index.ts +0 -184
- package/src/components/navigation/system/mobile.ts +0 -278
- package/src/components/navigation/system/state.ts +0 -77
- package/src/components/navigation/system/types.ts +0 -364
- package/src/components/navigation/types.ts +0 -292
- package/src/components/progress/api.ts +0 -178
- package/src/components/progress/config.ts +0 -122
- package/src/components/progress/index.ts +0 -4
- package/src/components/progress/progress.ts +0 -159
- package/src/components/progress/types.ts +0 -255
- package/src/components/radios/api.ts +0 -125
- package/src/components/radios/config.ts +0 -59
- package/src/components/radios/constants.ts +0 -19
- package/src/components/radios/index.ts +0 -3
- package/src/components/radios/radio.ts +0 -292
- package/src/components/radios/radios.ts +0 -43
- package/src/components/radios/types.ts +0 -219
- package/src/components/search/api.ts +0 -203
- package/src/components/search/config.ts +0 -86
- package/src/components/search/features/search.ts +0 -717
- package/src/components/search/features/states.ts +0 -169
- package/src/components/search/features/structure.ts +0 -197
- package/src/components/search/index.ts +0 -7
- package/src/components/search/search.ts +0 -52
- package/src/components/search/types.ts +0 -175
- package/src/components/segmented-button/config.ts +0 -119
- package/src/components/segmented-button/index.ts +0 -4
- package/src/components/segmented-button/segment.ts +0 -108
- package/src/components/segmented-button/segmented-button.ts +0 -361
- package/src/components/segmented-button/types.ts +0 -306
- package/src/components/select/api.ts +0 -78
- package/src/components/select/config.ts +0 -76
- package/src/components/select/features.ts +0 -317
- package/src/components/select/select.ts +0 -73
- package/src/components/select/types.ts +0 -355
- package/src/components/sheet/api.ts +0 -96
- package/src/components/sheet/config.ts +0 -65
- package/src/components/sheet/features/content.ts +0 -51
- package/src/components/sheet/features/gestures.ts +0 -177
- package/src/components/sheet/features/position.ts +0 -41
- package/src/components/sheet/features/state.ts +0 -116
- package/src/components/sheet/features/title.ts +0 -86
- package/src/components/sheet/index.ts +0 -12
- package/src/components/sheet/sheet.ts +0 -56
- package/src/components/sheet/types.ts +0 -294
- package/src/components/slider/accessibility.md +0 -59
- package/src/components/slider/api.ts +0 -192
- package/src/components/slider/config.ts +0 -118
- package/src/components/slider/features/controller.ts +0 -737
- package/src/components/slider/features/handlers.ts +0 -497
- package/src/components/slider/features/index.ts +0 -5
- package/src/components/slider/features/range.ts +0 -104
- package/src/components/slider/features/states.ts +0 -195
- package/src/components/slider/index.ts +0 -17
- package/src/components/slider/schema.ts +0 -141
- package/src/components/slider/slider.ts +0 -76
- package/src/components/slider/types.ts +0 -223
- package/src/components/snackbar/api.ts +0 -162
- package/src/components/snackbar/config.ts +0 -61
- package/src/components/snackbar/features.ts +0 -76
- package/src/components/snackbar/index.ts +0 -9
- package/src/components/snackbar/position.ts +0 -79
- package/src/components/snackbar/queue.ts +0 -76
- package/src/components/snackbar/snackbar.ts +0 -60
- package/src/components/snackbar/types.ts +0 -159
- package/src/components/switch/api.ts +0 -93
- package/src/components/switch/config.ts +0 -56
- package/src/components/switch/features.ts +0 -198
- package/src/components/switch/index.ts +0 -8
- package/src/components/switch/switch.ts +0 -52
- package/src/components/switch/types.ts +0 -168
- package/src/components/tabs/api.ts +0 -221
- package/src/components/tabs/config.ts +0 -73
- package/src/components/tabs/features.ts +0 -403
- package/src/components/tabs/index.ts +0 -46
- package/src/components/tabs/indicator.ts +0 -285
- package/src/components/tabs/responsive.ts +0 -144
- package/src/components/tabs/scroll-indicators.ts +0 -149
- package/src/components/tabs/state.ts +0 -186
- package/src/components/tabs/tab-api.ts +0 -266
- package/src/components/tabs/tab.ts +0 -267
- package/src/components/tabs/tabs.ts +0 -71
- package/src/components/tabs/types.ts +0 -461
- package/src/components/tabs/utils.ts +0 -107
- package/src/components/textfield/api.ts +0 -197
- package/src/components/textfield/config.ts +0 -52
- package/src/components/textfield/features/leading-icon.ts +0 -127
- package/src/components/textfield/features/placement.ts +0 -149
- package/src/components/textfield/features/prefix-text.ts +0 -107
- package/src/components/textfield/features/suffix-text.ts +0 -100
- package/src/components/textfield/features/supporting-text.ts +0 -113
- package/src/components/textfield/features/trailing-icon.ts +0 -108
- package/src/components/textfield/index.ts +0 -9
- package/src/components/textfield/textfield.ts +0 -92
- package/src/components/textfield/types.ts +0 -265
- package/src/components/timepicker/README.md +0 -277
- package/src/components/timepicker/api.ts +0 -632
- package/src/components/timepicker/clockdial.ts +0 -479
- package/src/components/timepicker/config.ts +0 -228
- package/src/components/timepicker/index.ts +0 -3
- package/src/components/timepicker/render.ts +0 -613
- package/src/components/timepicker/timepicker.ts +0 -117
- package/src/components/timepicker/types.ts +0 -336
- package/src/components/timepicker/utils.ts +0 -241
- package/src/components/tooltip/api.ts +0 -415
- package/src/components/tooltip/config.ts +0 -80
- package/src/components/tooltip/index.ts +0 -12
- package/src/components/tooltip/tooltip.ts +0 -60
- package/src/components/tooltip/types.ts +0 -223
- package/src/components/top-app-bar/config.ts +0 -83
- package/src/components/top-app-bar/top-app-bar.ts +0 -316
- package/src/components/top-app-bar/types.ts +0 -140
- package/src/core/build/constants.ts +0 -48
- package/src/core/build/icon.ts +0 -137
- package/src/core/build/ripple.ts +0 -193
- package/src/core/build/text.ts +0 -91
- package/src/core/collection/adapters/base.ts +0 -62
- package/src/core/collection/adapters/route.ts +0 -201
- package/src/core/collection/collection.ts +0 -300
- package/src/core/collection/index.ts +0 -57
- package/src/core/collection/list-manager.ts +0 -333
- package/src/core/compose/base.ts +0 -43
- package/src/core/compose/component.ts +0 -255
- package/src/core/compose/features/badge.ts +0 -79
- package/src/core/compose/features/checkable.ts +0 -155
- package/src/core/compose/features/disabled.ts +0 -116
- package/src/core/compose/features/events.ts +0 -65
- package/src/core/compose/features/icon.ts +0 -71
- package/src/core/compose/features/input.ts +0 -174
- package/src/core/compose/features/lifecycle.ts +0 -139
- package/src/core/compose/features/position.ts +0 -94
- package/src/core/compose/features/ripple.ts +0 -58
- package/src/core/compose/features/size.ts +0 -29
- package/src/core/compose/features/style.ts +0 -31
- package/src/core/compose/features/text.ts +0 -44
- package/src/core/compose/features/textinput.ts +0 -238
- package/src/core/compose/features/textlabel.ts +0 -113
- package/src/core/compose/features/track.ts +0 -84
- package/src/core/compose/features/variant.ts +0 -29
- package/src/core/compose/features/withEvents.ts +0 -137
- package/src/core/compose/index.ts +0 -54
- package/src/core/composition/features/dom.ts +0 -45
- package/src/core/composition/features/icon.ts +0 -131
- package/src/core/composition/features/label.ts +0 -155
- package/src/core/config.ts +0 -211
- package/src/core/dom/classes.ts +0 -132
- package/src/core/dom/create.ts +0 -273
- package/src/core/dom/events.ts +0 -209
- package/src/core/dom/utils.ts +0 -97
- package/src/core/index.ts +0 -111
- package/src/core/layout/README.md +0 -715
- package/src/core/layout/array.ts +0 -180
- package/src/core/layout/config.ts +0 -193
- package/src/core/layout/create.ts +0 -54
- package/src/core/layout/index.ts +0 -36
- package/src/core/layout/object.ts +0 -123
- package/src/core/layout/processor.ts +0 -106
- package/src/core/layout/result.ts +0 -84
- package/src/core/layout/types.ts +0 -180
- package/src/core/layout/utils.ts +0 -144
- package/src/core/state/disabled.ts +0 -81
- package/src/core/state/emitter.ts +0 -94
- package/src/core/state/events.ts +0 -88
- package/src/core/state/lifecycle.ts +0 -131
- package/src/core/state/store.ts +0 -197
- package/src/core/utils/index.ts +0 -45
- package/src/core/utils/mobile.ts +0 -98
- package/src/core/utils/object.ts +0 -41
- package/src/core/utils/validate.ts +0 -234
- package/src/index.ts +0 -134
- package/src/styles/abstract/_base.scss +0 -2
- package/src/styles/abstract/_config.scss +0 -28
- package/src/styles/abstract/_functions.scss +0 -124
- package/src/styles/abstract/_mixins.scss +0 -352
- package/src/styles/abstract/_theme.scss +0 -269
- package/src/styles/abstract/_variables.scss +0 -305
- package/src/styles/base/_reset.scss +0 -86
- package/src/styles/base/_typography.scss +0 -155
- package/src/styles/components/_badge.scss +0 -182
- package/src/styles/components/_bottom-app-bar.scss +0 -103
- package/src/styles/components/_button.scss +0 -224
- package/src/styles/components/_card.scss +0 -401
- package/src/styles/components/_carousel.scss +0 -645
- package/src/styles/components/_checkbox.scss +0 -231
- package/src/styles/components/_chips.scss +0 -638
- package/src/styles/components/_datepicker.scss +0 -358
- package/src/styles/components/_dialog.scss +0 -259
- package/src/styles/components/_divider.scss +0 -57
- package/src/styles/components/_extended-fab.scss +0 -267
- package/src/styles/components/_fab.scss +0 -225
- package/src/styles/components/_list.scss +0 -248
- package/src/styles/components/_menu.scss +0 -248
- package/src/styles/components/_navigation-mobile.scss +0 -244
- package/src/styles/components/_navigation-system.scss +0 -151
- package/src/styles/components/_navigation.scss +0 -407
- package/src/styles/components/_progress.scss +0 -151
- package/src/styles/components/_radios.scss +0 -187
- package/src/styles/components/_search.scss +0 -306
- package/src/styles/components/_segmented-button.scss +0 -227
- package/src/styles/components/_select.scss +0 -265
- package/src/styles/components/_sheet.scss +0 -236
- package/src/styles/components/_slider.scss +0 -489
- package/src/styles/components/_snackbar.scss +0 -211
- package/src/styles/components/_switch.scss +0 -298
- package/src/styles/components/_tabs.scss +0 -416
- package/src/styles/components/_textfield.scss +0 -773
- package/src/styles/components/_timepicker.scss +0 -451
- package/src/styles/components/_tooltip.scss +0 -241
- package/src/styles/components/_top-app-bar.scss +0 -225
- package/src/styles/main.scss +0 -175
- package/src/styles/themes/_autumn.scss +0 -105
- package/src/styles/themes/_base-theme.scss +0 -85
- package/src/styles/themes/_baseline.scss +0 -173
- package/src/styles/themes/_bluekhaki.scss +0 -125
- package/src/styles/themes/_brownbeige.scss +0 -125
- package/src/styles/themes/_browngreen.scss +0 -125
- package/src/styles/themes/_forest.scss +0 -77
- package/src/styles/themes/_greenbeige.scss +0 -125
- package/src/styles/themes/_index.scss +0 -6
- package/src/styles/themes/_material.scss +0 -125
- package/src/styles/themes/_ocean.scss +0 -77
- package/src/styles/themes/_sageivory.scss +0 -125
- package/src/styles/themes/_spring.scss +0 -77
- package/src/styles/themes/_summer.scss +0 -87
- package/src/styles/themes/_sunset.scss +0 -60
- package/src/styles/themes/_tealcaramel.scss +0 -125
- package/src/styles/themes/_winter.scss +0 -77
- package/src/styles/utilities/_colors.scss +0 -154
- package/src/styles/utilities/_flexbox.scss +0 -194
- package/src/styles/utilities/_layout.scss +0 -665
- package/src/styles/utilities/_ripple.scss +0 -79
- package/src/styles/utilities/_spacing.scss +0 -139
- package/src/styles/utilities/_typography.scss +0 -178
- package/src/styles/utilities/_visibility.scss +0 -142
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ProgressConfig, ProgressComponent } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Creates a new Progress component
|
|
4
|
+
* @param {ProgressConfig} config - Progress configuration object
|
|
5
|
+
* @returns {ProgressComponent} Progress component instance
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* // Create a linear determinate progress bar
|
|
10
|
+
* const progress = createProgress({
|
|
11
|
+
* variant: 'linear',
|
|
12
|
+
* value: 42,
|
|
13
|
+
* showLabel: true
|
|
14
|
+
* });
|
|
15
|
+
*
|
|
16
|
+
* // Create an indeterminate circular progress
|
|
17
|
+
* const loader = createProgress({
|
|
18
|
+
* variant: 'circular',
|
|
19
|
+
* indeterminate: true
|
|
20
|
+
* });
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
declare const createProgress: (config?: ProgressConfig) => ProgressComponent;
|
|
24
|
+
export default createProgress;
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Progress variant types
|
|
3
|
+
* @category Components
|
|
4
|
+
*/
|
|
5
|
+
export type ProgressVariant = 'linear' | 'circular';
|
|
6
|
+
/**
|
|
7
|
+
* Progress component event types
|
|
8
|
+
* @category Components
|
|
9
|
+
*/
|
|
10
|
+
export type ProgressEvent = 'change' | 'complete';
|
|
11
|
+
/**
|
|
12
|
+
* Configuration interface for the Progress component
|
|
13
|
+
* @category Components
|
|
14
|
+
*/
|
|
15
|
+
export interface ProgressConfig {
|
|
16
|
+
/**
|
|
17
|
+
* Progress variant that determines visual style
|
|
18
|
+
* @default 'linear'
|
|
19
|
+
*/
|
|
20
|
+
variant?: ProgressVariant | string;
|
|
21
|
+
/**
|
|
22
|
+
* Initial progress value (0-100)
|
|
23
|
+
* @default 0
|
|
24
|
+
*/
|
|
25
|
+
value?: number;
|
|
26
|
+
/**
|
|
27
|
+
* Whether the progress indicator is initially disabled
|
|
28
|
+
* @default false
|
|
29
|
+
*/
|
|
30
|
+
disabled?: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Maximum value
|
|
33
|
+
* @default 100
|
|
34
|
+
*/
|
|
35
|
+
max?: number;
|
|
36
|
+
/**
|
|
37
|
+
* Buffer value for linear progress with buffer (like video loading)
|
|
38
|
+
* @default 0
|
|
39
|
+
*/
|
|
40
|
+
buffer?: number;
|
|
41
|
+
/**
|
|
42
|
+
* Additional CSS classes to add to the progress component
|
|
43
|
+
* @example 'page-loader main-progress'
|
|
44
|
+
*/
|
|
45
|
+
class?: string;
|
|
46
|
+
/**
|
|
47
|
+
* Whether to show text label with percentage
|
|
48
|
+
* @default false
|
|
49
|
+
*/
|
|
50
|
+
showLabel?: boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Whether progress is indeterminate (shows animation without specific value)
|
|
53
|
+
* @default false
|
|
54
|
+
*/
|
|
55
|
+
indeterminate?: boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Custom label formatter function
|
|
58
|
+
* @example (value, max) => `${Math.round((value/max) * 100)}%`
|
|
59
|
+
*/
|
|
60
|
+
labelFormatter?: (value: number, max: number) => string;
|
|
61
|
+
/**
|
|
62
|
+
* Component prefix for class names
|
|
63
|
+
* @default 'mtrl'
|
|
64
|
+
*/
|
|
65
|
+
prefix?: string;
|
|
66
|
+
/**
|
|
67
|
+
* Component name used in class generation
|
|
68
|
+
* @default 'progress'
|
|
69
|
+
*/
|
|
70
|
+
componentName?: string;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Progress component interface
|
|
74
|
+
* @category Components
|
|
75
|
+
*/
|
|
76
|
+
export interface ProgressComponent {
|
|
77
|
+
/** The component's root DOM element */
|
|
78
|
+
element: HTMLElement;
|
|
79
|
+
/** The track element (background) */
|
|
80
|
+
trackElement: HTMLElement;
|
|
81
|
+
/** The indicator element (filled part) */
|
|
82
|
+
indicatorElement: HTMLElement;
|
|
83
|
+
/** The buffer element for linear variant (pre-loaded state) */
|
|
84
|
+
bufferElement?: HTMLElement;
|
|
85
|
+
/** The label element if showLabel is enabled */
|
|
86
|
+
labelElement?: HTMLElement;
|
|
87
|
+
/**
|
|
88
|
+
* Gets a class name with the component's prefix
|
|
89
|
+
* @param name - Base class name
|
|
90
|
+
* @returns Prefixed class name
|
|
91
|
+
*/
|
|
92
|
+
getClass: (name: string) => string;
|
|
93
|
+
/**
|
|
94
|
+
* Sets the current progress value
|
|
95
|
+
* @param value - Progress value (between 0 and max)
|
|
96
|
+
* @returns The progress component for chaining
|
|
97
|
+
*/
|
|
98
|
+
setValue: (value: number) => ProgressComponent;
|
|
99
|
+
/**
|
|
100
|
+
* Gets the current progress value
|
|
101
|
+
* @returns Current progress value
|
|
102
|
+
*/
|
|
103
|
+
getValue: () => number;
|
|
104
|
+
/**
|
|
105
|
+
* Sets the buffer value (for linear variant with buffer indicators)
|
|
106
|
+
* @param value - Buffer value (between 0 and max)
|
|
107
|
+
* @returns The progress component for chaining
|
|
108
|
+
*/
|
|
109
|
+
setBuffer: (value: number) => ProgressComponent;
|
|
110
|
+
/**
|
|
111
|
+
* Gets the current buffer value
|
|
112
|
+
* @returns Current buffer value
|
|
113
|
+
*/
|
|
114
|
+
getBuffer: () => number;
|
|
115
|
+
/**
|
|
116
|
+
* Enables the progress component
|
|
117
|
+
* @returns The progress component for chaining
|
|
118
|
+
*/
|
|
119
|
+
enable: () => ProgressComponent;
|
|
120
|
+
/**
|
|
121
|
+
* Disables the progress component
|
|
122
|
+
* @returns The progress component for chaining
|
|
123
|
+
*/
|
|
124
|
+
disable: () => ProgressComponent;
|
|
125
|
+
/**
|
|
126
|
+
* Checks if the component is disabled
|
|
127
|
+
* @returns Whether the component is disabled
|
|
128
|
+
*/
|
|
129
|
+
isDisabled: () => boolean;
|
|
130
|
+
/**
|
|
131
|
+
* Shows the label element
|
|
132
|
+
* @returns The progress component for chaining
|
|
133
|
+
*/
|
|
134
|
+
showLabel: () => ProgressComponent;
|
|
135
|
+
/**
|
|
136
|
+
* Hides the label element
|
|
137
|
+
* @returns The progress component for chaining
|
|
138
|
+
*/
|
|
139
|
+
hideLabel: () => ProgressComponent;
|
|
140
|
+
/**
|
|
141
|
+
* Sets a custom formatter for the label
|
|
142
|
+
* @param formatter - Function that formats the label text
|
|
143
|
+
* @returns The progress component for chaining
|
|
144
|
+
*/
|
|
145
|
+
setLabelFormatter: (formatter: (value: number, max: number) => string) => ProgressComponent;
|
|
146
|
+
/**
|
|
147
|
+
* Sets the indeterminate state
|
|
148
|
+
* @param indeterminate - Whether progress is indeterminate
|
|
149
|
+
* @returns The progress component for chaining
|
|
150
|
+
*/
|
|
151
|
+
setIndeterminate: (indeterminate: boolean) => ProgressComponent;
|
|
152
|
+
/**
|
|
153
|
+
* Checks if the component is in indeterminate state
|
|
154
|
+
* @returns Whether the component is indeterminate
|
|
155
|
+
*/
|
|
156
|
+
isIndeterminate: () => boolean;
|
|
157
|
+
/**
|
|
158
|
+
* Adds an event listener to the progress
|
|
159
|
+
* @param event - Event name ('change', 'complete')
|
|
160
|
+
* @param handler - Event handler function
|
|
161
|
+
* @returns The progress component for chaining
|
|
162
|
+
*/
|
|
163
|
+
on: (event: string, handler: Function) => ProgressComponent;
|
|
164
|
+
/**
|
|
165
|
+
* Removes an event listener from the progress
|
|
166
|
+
* @param event - Event name
|
|
167
|
+
* @param handler - Event handler function
|
|
168
|
+
* @returns The progress component for chaining
|
|
169
|
+
*/
|
|
170
|
+
off: (event: string, handler: Function) => ProgressComponent;
|
|
171
|
+
/**
|
|
172
|
+
* Destroys the progress component and cleans up resources
|
|
173
|
+
*/
|
|
174
|
+
destroy: () => void;
|
|
175
|
+
/**
|
|
176
|
+
* Adds CSS classes to the progress element
|
|
177
|
+
* @param classes - One or more class names to add
|
|
178
|
+
* @returns The progress component for chaining
|
|
179
|
+
*/
|
|
180
|
+
addClass: (...classes: string[]) => ProgressComponent;
|
|
181
|
+
/**
|
|
182
|
+
* API for managing disabled state
|
|
183
|
+
*/
|
|
184
|
+
disabled: {
|
|
185
|
+
/** Enables the progress */
|
|
186
|
+
enable: () => void;
|
|
187
|
+
/** Disables the progress */
|
|
188
|
+
disable: () => void;
|
|
189
|
+
/** Checks if the progress is disabled */
|
|
190
|
+
isDisabled: () => boolean;
|
|
191
|
+
};
|
|
192
|
+
/**
|
|
193
|
+
* API for managing component lifecycle
|
|
194
|
+
*/
|
|
195
|
+
lifecycle: {
|
|
196
|
+
/** Destroys the component and cleans up resources */
|
|
197
|
+
destroy: () => void;
|
|
198
|
+
};
|
|
199
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { RadiosComponent } from './types';
|
|
2
|
+
interface ApiOptions {
|
|
3
|
+
disabled: {
|
|
4
|
+
enable: () => void;
|
|
5
|
+
disable: () => void;
|
|
6
|
+
};
|
|
7
|
+
lifecycle: {
|
|
8
|
+
destroy: () => void;
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
interface ComponentWithRadio {
|
|
12
|
+
element: HTMLElement;
|
|
13
|
+
radios: any[];
|
|
14
|
+
getValue: () => string;
|
|
15
|
+
setValue: (value: string) => any;
|
|
16
|
+
getSelected: () => any;
|
|
17
|
+
addOption: (option: any) => any;
|
|
18
|
+
removeOption: (value: string) => any;
|
|
19
|
+
enable: () => any;
|
|
20
|
+
disable: () => any;
|
|
21
|
+
enableOption: (value: string) => any;
|
|
22
|
+
disableOption: (value: string) => any;
|
|
23
|
+
getClass: (name: string) => string;
|
|
24
|
+
events: {
|
|
25
|
+
on: (event: string, handler: Function) => void;
|
|
26
|
+
off: (event: string, handler: Function) => void;
|
|
27
|
+
emit?: (event: string, data: any) => void;
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Enhances a radios component with API methods
|
|
32
|
+
* @param {ApiOptions} options - API configuration options
|
|
33
|
+
* @returns {Function} Higher-order function that adds API methods to component
|
|
34
|
+
* @internal This is an internal utility for the Radios component
|
|
35
|
+
*/
|
|
36
|
+
export declare const withAPI: ({ disabled, lifecycle }: ApiOptions) => (component: ComponentWithRadio) => RadiosComponent;
|
|
37
|
+
export {};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { RadiosConfig } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Default configuration for the Radios component
|
|
4
|
+
*/
|
|
5
|
+
export declare const defaultConfig: RadiosConfig;
|
|
6
|
+
/**
|
|
7
|
+
* Creates the base configuration for Radios component
|
|
8
|
+
* @param {RadiosConfig} config - User provided configuration
|
|
9
|
+
* @returns {RadiosConfig} Complete configuration with defaults applied
|
|
10
|
+
*/
|
|
11
|
+
export declare const createBaseConfig: (config: RadiosConfig) => RadiosConfig;
|
|
12
|
+
/**
|
|
13
|
+
* Generates element configuration for the Radios container
|
|
14
|
+
* @param {RadiosConfig} config - Radios configuration
|
|
15
|
+
* @returns {Object} Element configuration object for withElement
|
|
16
|
+
*/
|
|
17
|
+
export declare const getElementConfig: (config: RadiosConfig) => {
|
|
18
|
+
tag: string;
|
|
19
|
+
componentName: string;
|
|
20
|
+
attrs: Record<string, any>;
|
|
21
|
+
className: string[];
|
|
22
|
+
rawClass: string | string[];
|
|
23
|
+
html: string;
|
|
24
|
+
text: string;
|
|
25
|
+
forwardEvents: Record<string, boolean | ((component: any, event: Event) => boolean)>;
|
|
26
|
+
interactive: boolean;
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Creates API configuration for the Radios component
|
|
30
|
+
* @param {Object} comp - Component with disabled and lifecycle features
|
|
31
|
+
* @returns {Object} API configuration object
|
|
32
|
+
*/
|
|
33
|
+
export declare const getApiConfig: (comp: any) => {
|
|
34
|
+
disabled: {
|
|
35
|
+
enable: () => any;
|
|
36
|
+
disable: () => any;
|
|
37
|
+
};
|
|
38
|
+
lifecycle: {
|
|
39
|
+
destroy: () => any;
|
|
40
|
+
};
|
|
41
|
+
};
|
|
42
|
+
export default defaultConfig;
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Radio states for styling and behavior
|
|
3
|
+
*/
|
|
4
|
+
export declare const RADIO_STATES: {
|
|
5
|
+
/** Radio is selected */
|
|
6
|
+
readonly CHECKED: "checked";
|
|
7
|
+
/** Radio is not selected */
|
|
8
|
+
readonly UNCHECKED: "unchecked";
|
|
9
|
+
/** Radio is disabled */
|
|
10
|
+
readonly DISABLED: "disabled";
|
|
11
|
+
/** Radio has keyboard focus */
|
|
12
|
+
readonly FOCUSED: "focused";
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Radio layout directions
|
|
16
|
+
*/
|
|
17
|
+
export declare const RADIO_DIRECTIONS: {
|
|
18
|
+
/** Radios stacked vertically */
|
|
19
|
+
readonly VERTICAL: "vertical";
|
|
20
|
+
/** Radios arranged horizontally */
|
|
21
|
+
readonly HORIZONTAL: "horizontal";
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Radio variants
|
|
25
|
+
*/
|
|
26
|
+
export declare const RADIO_VARIANTS: {
|
|
27
|
+
/** Standard radio button */
|
|
28
|
+
readonly STANDARD: "standard";
|
|
29
|
+
/** Filled radio button */
|
|
30
|
+
readonly FILLED: "filled";
|
|
31
|
+
/** Outlined radio button */
|
|
32
|
+
readonly OUTLINED: "outlined";
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Radio label positions
|
|
36
|
+
*/
|
|
37
|
+
export declare const RADIO_LABEL_POSITIONS: {
|
|
38
|
+
/** Label to the right of the radio (default) */
|
|
39
|
+
readonly RIGHT: "right";
|
|
40
|
+
/** Label to the left of the radio */
|
|
41
|
+
readonly LEFT: "left";
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Radio size options
|
|
45
|
+
*/
|
|
46
|
+
export declare const RADIO_SIZES: {
|
|
47
|
+
/** Small radio button */
|
|
48
|
+
readonly SMALL: "small";
|
|
49
|
+
/** Standard radio button */
|
|
50
|
+
readonly MEDIUM: "medium";
|
|
51
|
+
/** Large radio button */
|
|
52
|
+
readonly LARGE: "large";
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* Radio events
|
|
56
|
+
*/
|
|
57
|
+
export declare const RADIO_EVENTS: {
|
|
58
|
+
/** Fired when a radio button is selected */
|
|
59
|
+
readonly CHANGE: "change";
|
|
60
|
+
/** Fired when a radio is focused */
|
|
61
|
+
readonly FOCUS: "focus";
|
|
62
|
+
/** Fired when a radio loses focus */
|
|
63
|
+
readonly BLUR: "blur";
|
|
64
|
+
};
|
|
65
|
+
/**
|
|
66
|
+
* Default configuration values
|
|
67
|
+
*/
|
|
68
|
+
export declare const RADIO_DEFAULTS: {
|
|
69
|
+
/** Default radio variant */
|
|
70
|
+
readonly VARIANT: "standard";
|
|
71
|
+
/** Default radio direction */
|
|
72
|
+
readonly DIRECTION: "vertical";
|
|
73
|
+
/** Default label position */
|
|
74
|
+
readonly LABEL_POSITION: "right";
|
|
75
|
+
/** Default radio size */
|
|
76
|
+
readonly SIZE: "medium";
|
|
77
|
+
};
|
|
78
|
+
/**
|
|
79
|
+
* CSS classes for radio elements
|
|
80
|
+
*/
|
|
81
|
+
export declare const RADIO_CLASSES: {
|
|
82
|
+
/** Container for radio group */
|
|
83
|
+
readonly GROUP: "radio-group";
|
|
84
|
+
/** Individual radio button */
|
|
85
|
+
readonly RADIO: "radio";
|
|
86
|
+
/** Radio input element */
|
|
87
|
+
readonly INPUT: "radio__input";
|
|
88
|
+
/** Radio label */
|
|
89
|
+
readonly LABEL: "radio__label";
|
|
90
|
+
/** Radio control (the circular part) */
|
|
91
|
+
readonly CONTROL: "radio__control";
|
|
92
|
+
/** The inner dot of the radio */
|
|
93
|
+
readonly DOT: "radio__dot";
|
|
94
|
+
/** Radio focus ring */
|
|
95
|
+
readonly FOCUS_RING: "radio__focus-ring";
|
|
96
|
+
/** Radio ripple effect */
|
|
97
|
+
readonly RIPPLE: "radio__ripple";
|
|
98
|
+
/** Checked state */
|
|
99
|
+
readonly CHECKED: "radio--checked";
|
|
100
|
+
/** Disabled state */
|
|
101
|
+
readonly DISABLED: "radio--disabled";
|
|
102
|
+
/** Focus state */
|
|
103
|
+
readonly FOCUSED: "radio--focused";
|
|
104
|
+
/** Label right position */
|
|
105
|
+
readonly LABEL_RIGHT: "radio--label-right";
|
|
106
|
+
/** Label left position */
|
|
107
|
+
readonly LABEL_LEFT: "radio--label-left";
|
|
108
|
+
/** Small size */
|
|
109
|
+
readonly SMALL: "radio--small";
|
|
110
|
+
/** Medium size */
|
|
111
|
+
readonly MEDIUM: "radio--medium";
|
|
112
|
+
/** Large size */
|
|
113
|
+
readonly LARGE: "radio--large";
|
|
114
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { RadiosConfig } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Creates a feature that adds radio functionality to a component
|
|
4
|
+
* @param {RadiosConfig} config - Configuration with radio options
|
|
5
|
+
* @returns {Function} Higher-order function that adds radio to component
|
|
6
|
+
*/
|
|
7
|
+
export declare const withRadio: (config: RadiosConfig) => (component: any) => any;
|
|
8
|
+
export default withRadio;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { RadiosConfig, RadiosComponent } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Creates a new Radios component
|
|
4
|
+
* @param {RadiosConfig} config - Radios configuration object
|
|
5
|
+
* @returns {RadiosComponent} Radios component instance
|
|
6
|
+
*/
|
|
7
|
+
declare const createRadios: (config: RadiosConfig) => RadiosComponent;
|
|
8
|
+
export default createRadios;
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration for a radio option in the Radios component
|
|
3
|
+
* @category Components
|
|
4
|
+
*/
|
|
5
|
+
export interface RadioOptionConfig {
|
|
6
|
+
/**
|
|
7
|
+
* Radio input value attribute
|
|
8
|
+
* @example 'option1'
|
|
9
|
+
*/
|
|
10
|
+
value: string;
|
|
11
|
+
/**
|
|
12
|
+
* Radio label text content
|
|
13
|
+
* @example 'Option 1'
|
|
14
|
+
*/
|
|
15
|
+
label: string;
|
|
16
|
+
/**
|
|
17
|
+
* Whether the radio is initially disabled
|
|
18
|
+
* @default false
|
|
19
|
+
*/
|
|
20
|
+
disabled?: boolean;
|
|
21
|
+
/**
|
|
22
|
+
* Whether to position the label before the radio
|
|
23
|
+
* @default false
|
|
24
|
+
*/
|
|
25
|
+
labelBefore?: boolean;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Configuration interface for the Radios component
|
|
29
|
+
* @category Components
|
|
30
|
+
*/
|
|
31
|
+
export interface RadiosConfig {
|
|
32
|
+
/**
|
|
33
|
+
* Radio input name attribute used for grouping radios
|
|
34
|
+
* @example 'options'
|
|
35
|
+
*/
|
|
36
|
+
name: string;
|
|
37
|
+
/**
|
|
38
|
+
* Array of radio option configurations
|
|
39
|
+
*/
|
|
40
|
+
options?: RadioOptionConfig[];
|
|
41
|
+
/**
|
|
42
|
+
* Initial selected value
|
|
43
|
+
*/
|
|
44
|
+
value?: string;
|
|
45
|
+
/**
|
|
46
|
+
* Layout direction for radio buttons
|
|
47
|
+
* @default 'vertical'
|
|
48
|
+
*/
|
|
49
|
+
direction?: 'vertical' | 'horizontal';
|
|
50
|
+
/**
|
|
51
|
+
* Whether the entire group is initially disabled
|
|
52
|
+
* @default false
|
|
53
|
+
*/
|
|
54
|
+
disabled?: boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Whether to enable ripple effect
|
|
57
|
+
* @default true
|
|
58
|
+
*/
|
|
59
|
+
ripple?: boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Additional CSS classes to add to the radios component
|
|
62
|
+
*/
|
|
63
|
+
class?: string;
|
|
64
|
+
/**
|
|
65
|
+
* Component prefix for class names
|
|
66
|
+
* @default 'mtrl'
|
|
67
|
+
*/
|
|
68
|
+
prefix?: string;
|
|
69
|
+
/**
|
|
70
|
+
* Component name used in class generation
|
|
71
|
+
*/
|
|
72
|
+
componentName?: string;
|
|
73
|
+
/**
|
|
74
|
+
* Ripple effect configuration
|
|
75
|
+
*/
|
|
76
|
+
rippleConfig?: {
|
|
77
|
+
/** Duration of the ripple animation in milliseconds */
|
|
78
|
+
duration?: number;
|
|
79
|
+
/** Timing function for the ripple animation */
|
|
80
|
+
timing?: string;
|
|
81
|
+
/** Opacity values for ripple start and end [start, end] */
|
|
82
|
+
opacity?: [string, string];
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Interface for a single radio in the Radios component
|
|
87
|
+
* @category Components
|
|
88
|
+
*/
|
|
89
|
+
export interface RadioItem {
|
|
90
|
+
/** The radio container element */
|
|
91
|
+
element: HTMLElement;
|
|
92
|
+
/** The actual radio input element */
|
|
93
|
+
input: HTMLInputElement;
|
|
94
|
+
/** The label element */
|
|
95
|
+
label: HTMLLabelElement;
|
|
96
|
+
/** The radio option configuration */
|
|
97
|
+
config: RadioOptionConfig;
|
|
98
|
+
/** Destroys the radio and removes event listeners */
|
|
99
|
+
destroy: () => void;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Radios component interface
|
|
103
|
+
* @category Components
|
|
104
|
+
*/
|
|
105
|
+
export interface RadiosComponent {
|
|
106
|
+
/** The radios container DOM element */
|
|
107
|
+
element: HTMLElement;
|
|
108
|
+
/** Array of radio items in the group */
|
|
109
|
+
radios: RadioItem[];
|
|
110
|
+
/** API for managing component lifecycle */
|
|
111
|
+
lifecycle: {
|
|
112
|
+
/** Destroys the component and cleans up resources */
|
|
113
|
+
destroy: () => void;
|
|
114
|
+
};
|
|
115
|
+
/**
|
|
116
|
+
* Gets a class name with the component's prefix
|
|
117
|
+
* @param name - Base class name
|
|
118
|
+
* @returns Prefixed class name
|
|
119
|
+
*/
|
|
120
|
+
getClass: (name: string) => string;
|
|
121
|
+
/**
|
|
122
|
+
* Gets the radios component name
|
|
123
|
+
* @returns Selected radio value or empty string if none selected
|
|
124
|
+
*/
|
|
125
|
+
getValue: () => string;
|
|
126
|
+
/**
|
|
127
|
+
* Sets the radios component value (selects a radio)
|
|
128
|
+
* @param value - Value to select
|
|
129
|
+
* @returns The radios component for chaining
|
|
130
|
+
*/
|
|
131
|
+
setValue: (value: string) => RadiosComponent;
|
|
132
|
+
/**
|
|
133
|
+
* Gets the selected radio option's configuration
|
|
134
|
+
* @returns The selected radio option config or null
|
|
135
|
+
*/
|
|
136
|
+
getSelected: () => RadioOptionConfig | null;
|
|
137
|
+
/**
|
|
138
|
+
* Adds a radio option to the radios component
|
|
139
|
+
* @param option - Radio option configuration
|
|
140
|
+
* @returns The radios component for chaining
|
|
141
|
+
*/
|
|
142
|
+
addOption: (option: RadioOptionConfig) => RadiosComponent;
|
|
143
|
+
/**
|
|
144
|
+
* Removes a radio option from the radios component
|
|
145
|
+
* @param value - Value of the radio to remove
|
|
146
|
+
* @returns The radios component for chaining
|
|
147
|
+
*/
|
|
148
|
+
removeOption: (value: string) => RadiosComponent;
|
|
149
|
+
/**
|
|
150
|
+
* Enables the radios component
|
|
151
|
+
* @returns The radios component for chaining
|
|
152
|
+
*/
|
|
153
|
+
enable: () => RadiosComponent;
|
|
154
|
+
/**
|
|
155
|
+
* Disables the radios component
|
|
156
|
+
* @returns The radios component for chaining
|
|
157
|
+
*/
|
|
158
|
+
disable: () => RadiosComponent;
|
|
159
|
+
/**
|
|
160
|
+
* Enables a specific radio option
|
|
161
|
+
* @param value - Value of the radio to enable
|
|
162
|
+
* @returns The radios component for chaining
|
|
163
|
+
*/
|
|
164
|
+
enableOption: (value: string) => RadiosComponent;
|
|
165
|
+
/**
|
|
166
|
+
* Disables a specific radio option
|
|
167
|
+
* @param value - Value of the radio to disable
|
|
168
|
+
* @returns The radios component for chaining
|
|
169
|
+
*/
|
|
170
|
+
disableOption: (value: string) => RadiosComponent;
|
|
171
|
+
/**
|
|
172
|
+
* Destroys the radios component and all radio items
|
|
173
|
+
*/
|
|
174
|
+
destroy: () => void;
|
|
175
|
+
/**
|
|
176
|
+
* Adds an event listener to the radios component
|
|
177
|
+
* @param event - Event name ('change')
|
|
178
|
+
* @param handler - Event handler function
|
|
179
|
+
* @returns The radios component for chaining
|
|
180
|
+
*/
|
|
181
|
+
on: (event: string, handler: Function) => RadiosComponent;
|
|
182
|
+
/**
|
|
183
|
+
* Removes an event listener from the radios component
|
|
184
|
+
* @param event - Event name
|
|
185
|
+
* @param handler - Event handler function
|
|
186
|
+
* @returns The radios component for chaining
|
|
187
|
+
*/
|
|
188
|
+
off: (event: string, handler: Function) => RadiosComponent;
|
|
189
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { SearchComponent } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* API options interface - structured by feature area
|
|
4
|
+
*/
|
|
5
|
+
interface ApiOptions {
|
|
6
|
+
search: {
|
|
7
|
+
setValue: (value: string, triggerEvent?: boolean) => any;
|
|
8
|
+
getValue: () => string;
|
|
9
|
+
setPlaceholder: (text: string) => any;
|
|
10
|
+
getPlaceholder: () => string;
|
|
11
|
+
focus: () => any;
|
|
12
|
+
blur: () => any;
|
|
13
|
+
expand: () => any;
|
|
14
|
+
collapse: () => any;
|
|
15
|
+
clear: () => any;
|
|
16
|
+
submit: () => any;
|
|
17
|
+
setSuggestions: (suggestions: any[]) => any;
|
|
18
|
+
showSuggestions: (show: boolean) => any;
|
|
19
|
+
};
|
|
20
|
+
disabled: {
|
|
21
|
+
enable: () => void;
|
|
22
|
+
disable: () => void;
|
|
23
|
+
isDisabled: () => boolean;
|
|
24
|
+
};
|
|
25
|
+
appearance: {
|
|
26
|
+
setColor: (color: string) => void;
|
|
27
|
+
getColor: () => string;
|
|
28
|
+
setSize: (size: string) => void;
|
|
29
|
+
getSize: () => string;
|
|
30
|
+
};
|
|
31
|
+
icons: {
|
|
32
|
+
setLeadingIcon: (iconHtml: string) => void;
|
|
33
|
+
setTrailingIcon: (iconHtml: string) => void;
|
|
34
|
+
setTrailingIcon2: (iconHtml: string) => void;
|
|
35
|
+
setAvatar: (avatarHtml: string) => void;
|
|
36
|
+
showClearButton: (show: boolean) => void;
|
|
37
|
+
};
|
|
38
|
+
events: {
|
|
39
|
+
on: (event: string, handler: Function) => void;
|
|
40
|
+
off: (event: string, handler: Function) => void;
|
|
41
|
+
};
|
|
42
|
+
lifecycle: {
|
|
43
|
+
destroy: () => void;
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Enhances a search component with a streamlined API
|
|
48
|
+
* @param {ApiOptions} options - API configuration options
|
|
49
|
+
* @returns {Function} Higher-order function that adds API methods to component
|
|
50
|
+
* @internal This is an internal utility for the Search component
|
|
51
|
+
*/
|
|
52
|
+
export declare const withAPI: (options: ApiOptions) => (component: {
|
|
53
|
+
element: HTMLElement;
|
|
54
|
+
}) => SearchComponent;
|
|
55
|
+
export {};
|