mtrl 0.3.8 → 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 +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/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 -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,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Switch label position options
|
|
3
|
+
* @category Components
|
|
4
|
+
*/
|
|
5
|
+
export declare const SWITCH_LABEL_POSITIONS: {
|
|
6
|
+
/** Label positioned before the switch (left in LTR layouts) */
|
|
7
|
+
readonly START: "start";
|
|
8
|
+
/** Label positioned after the switch (right in LTR layouts) */
|
|
9
|
+
readonly END: "end";
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Switch states
|
|
13
|
+
* @category Components
|
|
14
|
+
*/
|
|
15
|
+
export declare const SWITCH_STATES: {
|
|
16
|
+
/** Switch is checked/on */
|
|
17
|
+
readonly CHECKED: "checked";
|
|
18
|
+
/** Switch is unchecked/off */
|
|
19
|
+
readonly UNCHECKED: "unchecked";
|
|
20
|
+
/** Switch is disabled */
|
|
21
|
+
readonly DISABLED: "disabled";
|
|
22
|
+
/** Switch is enabled */
|
|
23
|
+
readonly ENABLED: "enabled";
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Switch events
|
|
27
|
+
* @category Components
|
|
28
|
+
*/
|
|
29
|
+
export declare const SWITCH_EVENTS: {
|
|
30
|
+
/** Fired when switch is checked */
|
|
31
|
+
readonly CHANGE: "change";
|
|
32
|
+
/** Fired when switch receives focus */
|
|
33
|
+
readonly FOCUS: "focus";
|
|
34
|
+
/** Fired when switch loses focus */
|
|
35
|
+
readonly BLUR: "blur";
|
|
36
|
+
};
|
|
37
|
+
/**
|
|
38
|
+
* Default configuration values for switch
|
|
39
|
+
* @category Components
|
|
40
|
+
*/
|
|
41
|
+
export declare const SWITCH_DEFAULTS: {
|
|
42
|
+
/** Default checked state */
|
|
43
|
+
readonly CHECKED: false;
|
|
44
|
+
/** Default disabled state */
|
|
45
|
+
readonly DISABLED: false;
|
|
46
|
+
/** Default required state */
|
|
47
|
+
readonly REQUIRED: false;
|
|
48
|
+
/** Default label position */
|
|
49
|
+
readonly LABEL_POSITION: "end";
|
|
50
|
+
/** Default input value */
|
|
51
|
+
readonly VALUE: "on";
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* CSS class names used by the switch component
|
|
55
|
+
* @category Components
|
|
56
|
+
*/
|
|
57
|
+
export declare const SWITCH_CLASSES: {
|
|
58
|
+
/** Root element class */
|
|
59
|
+
readonly ROOT: "switch";
|
|
60
|
+
/** Container element class */
|
|
61
|
+
readonly CONTAINER: "switch-container";
|
|
62
|
+
/** Content wrapper class */
|
|
63
|
+
readonly CONTENT: "switch-content";
|
|
64
|
+
/** Label element class */
|
|
65
|
+
readonly LABEL: "switch-label";
|
|
66
|
+
/** Input element class */
|
|
67
|
+
readonly INPUT: "switch-input";
|
|
68
|
+
/** Track element class */
|
|
69
|
+
readonly TRACK: "switch-track";
|
|
70
|
+
/** Thumb element class */
|
|
71
|
+
readonly THUMB: "switch-thumb";
|
|
72
|
+
/** Label at start position class */
|
|
73
|
+
readonly LABEL_START: "switch--label-start";
|
|
74
|
+
/** Label at end position class */
|
|
75
|
+
readonly LABEL_END: "switch--label-end";
|
|
76
|
+
/** Checked state class */
|
|
77
|
+
readonly CHECKED: "switch--checked";
|
|
78
|
+
/** Disabled state class */
|
|
79
|
+
readonly DISABLED: "switch--disabled";
|
|
80
|
+
/** Error state class */
|
|
81
|
+
readonly ERROR: "switch--error";
|
|
82
|
+
/** Helper/supporting text class */
|
|
83
|
+
readonly HELPER: "switch-helper";
|
|
84
|
+
/** Error helper text class */
|
|
85
|
+
readonly HELPER_ERROR: "switch-helper--error";
|
|
86
|
+
/** Focus state class */
|
|
87
|
+
readonly FOCUSED: "switch--focused";
|
|
88
|
+
};
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { BaseComponent, ElementComponent } from '../../core/compose/component';
|
|
2
|
+
import { TrackComponent } from '../../core/compose/features';
|
|
3
|
+
import { SwitchConfig } from './types';
|
|
4
|
+
/**
|
|
5
|
+
* Configuration for supporting text feature
|
|
6
|
+
*/
|
|
7
|
+
export interface SupportingTextConfig {
|
|
8
|
+
/**
|
|
9
|
+
* Supporting text content
|
|
10
|
+
*/
|
|
11
|
+
supportingText?: string;
|
|
12
|
+
/**
|
|
13
|
+
* Whether supporting text indicates an error
|
|
14
|
+
*/
|
|
15
|
+
error?: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* CSS class prefix
|
|
18
|
+
*/
|
|
19
|
+
prefix?: string;
|
|
20
|
+
/**
|
|
21
|
+
* Component name
|
|
22
|
+
*/
|
|
23
|
+
componentName?: string;
|
|
24
|
+
[key: string]: any;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Component with supporting text capabilities
|
|
28
|
+
*/
|
|
29
|
+
export interface SupportingTextComponent extends BaseComponent {
|
|
30
|
+
/**
|
|
31
|
+
* Supporting text element
|
|
32
|
+
*/
|
|
33
|
+
supportingTextElement: HTMLElement | null;
|
|
34
|
+
/**
|
|
35
|
+
* Sets supporting text content
|
|
36
|
+
* @param text - Text content
|
|
37
|
+
* @param isError - Whether text represents an error
|
|
38
|
+
* @returns Component instance for chaining
|
|
39
|
+
*/
|
|
40
|
+
setSupportingText: (text: string, isError?: boolean) => SupportingTextComponent;
|
|
41
|
+
/**
|
|
42
|
+
* Removes supporting text
|
|
43
|
+
* @returns Component instance for chaining
|
|
44
|
+
*/
|
|
45
|
+
removeSupportingText: () => SupportingTextComponent;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Creates and manages supporting text for a component
|
|
49
|
+
* @param config - Configuration object with supporting text settings
|
|
50
|
+
* @returns Function that enhances a component with supporting text functionality
|
|
51
|
+
*/
|
|
52
|
+
export declare const withSupportingText: <T extends SupportingTextConfig>(config: T) => <C extends ElementComponent>(component: C) => C & SupportingTextComponent;
|
|
53
|
+
/**
|
|
54
|
+
* Wrapper for the core withTrack function that works with SwitchConfig
|
|
55
|
+
*
|
|
56
|
+
* @param config - Switch configuration
|
|
57
|
+
* @returns Function that enhances a component with track and thumb elements
|
|
58
|
+
*/
|
|
59
|
+
export declare const withTrack: (config: SwitchConfig) => <C extends ElementComponent>(component: C) => C & TrackComponent;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { default } from './switch';
|
|
2
|
+
export { SWITCH_LABEL_POSITIONS, SWITCH_STATES, SWITCH_EVENTS, SWITCH_DEFAULTS, SWITCH_CLASSES } from './constants';
|
|
3
|
+
export { SwitchConfig, SwitchComponent } from './types';
|
|
4
|
+
export { withSupportingText, SupportingTextComponent } from './features';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { SwitchConfig, SwitchComponent } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Creates a new Switch component
|
|
4
|
+
* @param {SwitchConfig} config - Switch configuration
|
|
5
|
+
* @returns {SwitchComponent} Switch component instance
|
|
6
|
+
*/
|
|
7
|
+
declare const createSwitch: (config?: SwitchConfig) => SwitchComponent;
|
|
8
|
+
export default createSwitch;
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
export type SwitchPosition = 'center' | 'start' | 'end';
|
|
2
|
+
/**
|
|
3
|
+
* Switch label position types
|
|
4
|
+
*/
|
|
5
|
+
export type SwitchLabelPosition = 'start' | 'end';
|
|
6
|
+
/**
|
|
7
|
+
* Switch label positions
|
|
8
|
+
*/
|
|
9
|
+
export declare const SWITCH_LABEL_POSITION: {
|
|
10
|
+
readonly START: "start";
|
|
11
|
+
readonly END: "end";
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Configuration interface for the Switch component
|
|
15
|
+
*/
|
|
16
|
+
export interface SwitchConfig {
|
|
17
|
+
/** Input name attribute */
|
|
18
|
+
name?: string;
|
|
19
|
+
/** Initial checked state */
|
|
20
|
+
checked?: boolean;
|
|
21
|
+
/** Whether input is required */
|
|
22
|
+
required?: boolean;
|
|
23
|
+
/** Whether switch is disabled */
|
|
24
|
+
disabled?: boolean;
|
|
25
|
+
/** Input value attribute */
|
|
26
|
+
value?: string;
|
|
27
|
+
/** Label text */
|
|
28
|
+
label?: string;
|
|
29
|
+
/** Supporting text content */
|
|
30
|
+
supportingText?: string;
|
|
31
|
+
/** Whether supporting text indicates an error */
|
|
32
|
+
error?: boolean;
|
|
33
|
+
/** Additional CSS classes */
|
|
34
|
+
class?: string;
|
|
35
|
+
/** ARIA label for accessibility */
|
|
36
|
+
ariaLabel?: string;
|
|
37
|
+
/** Prefix for class names */
|
|
38
|
+
prefix?: string;
|
|
39
|
+
/** Component name */
|
|
40
|
+
componentName?: string;
|
|
41
|
+
/** Icon HTML content */
|
|
42
|
+
icon?: string;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Switch component interface
|
|
46
|
+
*/
|
|
47
|
+
export interface SwitchComponent {
|
|
48
|
+
/** The root element of the switch */
|
|
49
|
+
element: HTMLElement;
|
|
50
|
+
/** The input element */
|
|
51
|
+
input: HTMLInputElement;
|
|
52
|
+
/** Gets the switch's value */
|
|
53
|
+
getValue: () => string;
|
|
54
|
+
/** Sets the switch's value */
|
|
55
|
+
setValue: (value: string) => SwitchComponent;
|
|
56
|
+
/** Checks/activates the switch */
|
|
57
|
+
check: () => SwitchComponent;
|
|
58
|
+
/** Unchecks/deactivates the switch */
|
|
59
|
+
uncheck: () => SwitchComponent;
|
|
60
|
+
/** Toggles the switch's checked state */
|
|
61
|
+
toggle: () => SwitchComponent;
|
|
62
|
+
/** Returns whether the switch is checked */
|
|
63
|
+
isChecked: () => boolean;
|
|
64
|
+
/** Sets the switch's label text */
|
|
65
|
+
setLabel: (text: string) => SwitchComponent;
|
|
66
|
+
/** Gets the switch's label text */
|
|
67
|
+
getLabel: () => string;
|
|
68
|
+
/** Supporting text element */
|
|
69
|
+
supportingTextElement: HTMLElement | null;
|
|
70
|
+
/** Sets supporting text content */
|
|
71
|
+
setSupportingText: (text: string, isError?: boolean) => SwitchComponent;
|
|
72
|
+
/** Removes supporting text */
|
|
73
|
+
removeSupportingText: () => SwitchComponent;
|
|
74
|
+
/** Adds event listener */
|
|
75
|
+
on: (event: string, handler: Function) => SwitchComponent;
|
|
76
|
+
/** Removes event listener */
|
|
77
|
+
off: (event: string, handler: Function) => SwitchComponent;
|
|
78
|
+
/** Enables the switch */
|
|
79
|
+
enable: () => SwitchComponent;
|
|
80
|
+
/** Disables the switch */
|
|
81
|
+
disable: () => SwitchComponent;
|
|
82
|
+
/** Destroys the switch component and cleans up resources */
|
|
83
|
+
destroy: () => void;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* API options interface
|
|
87
|
+
*/
|
|
88
|
+
export interface ApiOptions {
|
|
89
|
+
disabled: {
|
|
90
|
+
enable: () => any;
|
|
91
|
+
disable: () => any;
|
|
92
|
+
};
|
|
93
|
+
lifecycle: {
|
|
94
|
+
destroy: () => void;
|
|
95
|
+
};
|
|
96
|
+
checkable: {
|
|
97
|
+
check: () => any;
|
|
98
|
+
uncheck: () => any;
|
|
99
|
+
toggle: () => any;
|
|
100
|
+
isChecked: () => boolean;
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Base component interface
|
|
105
|
+
*/
|
|
106
|
+
export interface BaseComponent {
|
|
107
|
+
element: HTMLElement;
|
|
108
|
+
input?: HTMLInputElement;
|
|
109
|
+
getValue?: () => string;
|
|
110
|
+
setValue?: (value: string) => any;
|
|
111
|
+
text?: {
|
|
112
|
+
setText: (content: string) => any;
|
|
113
|
+
getText: () => string;
|
|
114
|
+
};
|
|
115
|
+
on?: (event: string, handler: Function) => any;
|
|
116
|
+
off?: (event: string, handler: Function) => any;
|
|
117
|
+
disabled?: {
|
|
118
|
+
enable: () => any;
|
|
119
|
+
disable: () => any;
|
|
120
|
+
};
|
|
121
|
+
lifecycle?: {
|
|
122
|
+
destroy: () => void;
|
|
123
|
+
};
|
|
124
|
+
checkable?: {
|
|
125
|
+
check: () => any;
|
|
126
|
+
uncheck: () => any;
|
|
127
|
+
toggle: () => any;
|
|
128
|
+
isChecked: () => boolean;
|
|
129
|
+
};
|
|
130
|
+
[key: string]: any;
|
|
131
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { TabsComponent, TabComponent } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* API options for a Tabs component
|
|
4
|
+
*/
|
|
5
|
+
interface ApiOptions {
|
|
6
|
+
/** The component's lifecycle API */
|
|
7
|
+
lifecycle: {
|
|
8
|
+
destroy: () => void;
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Component with required elements and methods
|
|
13
|
+
*/
|
|
14
|
+
interface ComponentWithElements {
|
|
15
|
+
/** The DOM element */
|
|
16
|
+
element: HTMLElement;
|
|
17
|
+
/** Array of tab components */
|
|
18
|
+
tabs: TabComponent[];
|
|
19
|
+
/** Container for tabs */
|
|
20
|
+
tabsContainer: HTMLElement;
|
|
21
|
+
/** Tab click handler */
|
|
22
|
+
handleTabClick: (event: Event, tab: TabComponent) => void;
|
|
23
|
+
/** Scroll container (optional) */
|
|
24
|
+
scrollContainer?: HTMLElement;
|
|
25
|
+
/** Class name helper */
|
|
26
|
+
getClass: (name: string) => string;
|
|
27
|
+
/** Event subscription (optional) */
|
|
28
|
+
on?: (event: string, handler: Function) => any;
|
|
29
|
+
/** Event unsubscription (optional) */
|
|
30
|
+
off?: (event: string, handler: Function) => any;
|
|
31
|
+
/** Event emission (optional) */
|
|
32
|
+
emit?: (event: string, data: any) => any;
|
|
33
|
+
/** Component configuration */
|
|
34
|
+
config: Record<string, any>;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Enhances a tabs component with API methods
|
|
38
|
+
* @param {ApiOptions} options - API configuration options
|
|
39
|
+
* @returns {Function} Higher-order function that adds API methods to component
|
|
40
|
+
*/
|
|
41
|
+
export declare const withAPI: ({ lifecycle }: ApiOptions) => (component: ComponentWithElements) => TabsComponent;
|
|
42
|
+
/**
|
|
43
|
+
* Creates API configuration for the Tabs component
|
|
44
|
+
* @param {Object} comp - Component with lifecycle feature
|
|
45
|
+
* @returns {Object} API configuration object
|
|
46
|
+
*/
|
|
47
|
+
export declare const getApiConfig: (comp: any) => {
|
|
48
|
+
lifecycle: {
|
|
49
|
+
destroy: () => any;
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
export {};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { BaseComponentConfig } from '../../core/config/component';
|
|
2
|
+
import { TabConfig } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Default configuration for a Tab
|
|
5
|
+
*/
|
|
6
|
+
export declare const defaultTabConfig: TabConfig;
|
|
7
|
+
/**
|
|
8
|
+
* Default configuration for the Tabs component
|
|
9
|
+
*/
|
|
10
|
+
export declare const defaultTabsConfig: {
|
|
11
|
+
variant: "primary";
|
|
12
|
+
scrollable: true;
|
|
13
|
+
showDivider: true;
|
|
14
|
+
componentName: string;
|
|
15
|
+
};
|
|
16
|
+
export declare const createTabsConfig: (config?: {}) => BaseComponentConfig;
|
|
17
|
+
/**
|
|
18
|
+
* Creates the base configuration for a Tab
|
|
19
|
+
* @param {TabConfig} config - User provided configuration
|
|
20
|
+
* @returns {TabConfig} Complete configuration with defaults applied
|
|
21
|
+
*/
|
|
22
|
+
export declare const createTabConfig: (config?: TabConfig) => TabConfig;
|
|
23
|
+
export declare const getTabsElementConfig: (config: any) => (component: any) => any;
|
|
24
|
+
/**
|
|
25
|
+
* Creates API configuration for the Tab component
|
|
26
|
+
* @param {Object} comp - Component with disabled and lifecycle features
|
|
27
|
+
* @returns {Object} API configuration object
|
|
28
|
+
*/
|
|
29
|
+
export declare const getTabApiConfig: (comp: any) => {
|
|
30
|
+
disabled: {
|
|
31
|
+
enable: () => any;
|
|
32
|
+
disable: () => any;
|
|
33
|
+
isDisabled: () => any;
|
|
34
|
+
};
|
|
35
|
+
lifecycle: {
|
|
36
|
+
destroy: () => any;
|
|
37
|
+
};
|
|
38
|
+
button: any;
|
|
39
|
+
};
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tab component variants
|
|
3
|
+
* @category Components
|
|
4
|
+
*/
|
|
5
|
+
export declare const TAB_VARIANTS: {
|
|
6
|
+
/** Primary tabs */
|
|
7
|
+
readonly PRIMARY: "primary";
|
|
8
|
+
/** Secondary tabs */
|
|
9
|
+
readonly SECONDARY: "secondary";
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Tab states
|
|
13
|
+
* @category Components
|
|
14
|
+
*/
|
|
15
|
+
export declare const TAB_STATES: {
|
|
16
|
+
/** Tab is currently active */
|
|
17
|
+
readonly ACTIVE: "active";
|
|
18
|
+
/** Tab is not currently active */
|
|
19
|
+
readonly INACTIVE: "inactive";
|
|
20
|
+
/** Tab is disabled */
|
|
21
|
+
readonly DISABLED: "disabled";
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Tab indicator width strategies
|
|
25
|
+
* @category Components
|
|
26
|
+
*/
|
|
27
|
+
export declare const TAB_INDICATOR_WIDTH_STRATEGIES: {
|
|
28
|
+
/** Fixed width defined by fixedWidth */
|
|
29
|
+
readonly FIXED: "fixed";
|
|
30
|
+
/** Half the tab width */
|
|
31
|
+
readonly DYNAMIC: "dynamic";
|
|
32
|
+
/** Match the text content width */
|
|
33
|
+
readonly CONTENT: "content";
|
|
34
|
+
/** Adapts based on variant (primary: text width, secondary: full tab width) */
|
|
35
|
+
readonly AUTO: "auto";
|
|
36
|
+
};
|
|
37
|
+
/**
|
|
38
|
+
* Tab events
|
|
39
|
+
* @category Components
|
|
40
|
+
*/
|
|
41
|
+
export declare const TAB_EVENTS: {
|
|
42
|
+
/** Fired when a tab is clicked */
|
|
43
|
+
readonly CLICK: "click";
|
|
44
|
+
/** Fired when a tab receives focus */
|
|
45
|
+
readonly FOCUS: "focus";
|
|
46
|
+
/** Fired when a tab loses focus */
|
|
47
|
+
readonly BLUR: "blur";
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* Tabs component events
|
|
51
|
+
* @category Components
|
|
52
|
+
*/
|
|
53
|
+
export declare const TABS_EVENTS: {
|
|
54
|
+
/** Fired when the active tab changes */
|
|
55
|
+
readonly CHANGE: "change";
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* Default values for tabs component
|
|
59
|
+
* @category Components
|
|
60
|
+
*/
|
|
61
|
+
export declare const TABS_DEFAULTS: {
|
|
62
|
+
/** Default tab variant */
|
|
63
|
+
readonly VARIANT: "primary";
|
|
64
|
+
/** Whether tabs are horizontally scrollable */
|
|
65
|
+
readonly SCROLLABLE: true;
|
|
66
|
+
/** Whether to show a divider below the tabs */
|
|
67
|
+
readonly SHOW_DIVIDER: true;
|
|
68
|
+
/** Default indicator height in pixels */
|
|
69
|
+
readonly INDICATOR_HEIGHT: 3;
|
|
70
|
+
/** Default indicator width strategy */
|
|
71
|
+
readonly INDICATOR_WIDTH_STRATEGY: "auto";
|
|
72
|
+
/** Default fixed width for fixed indicator in pixels */
|
|
73
|
+
readonly INDICATOR_FIXED_WIDTH: 40;
|
|
74
|
+
/** Default indicator animation duration in milliseconds */
|
|
75
|
+
readonly INDICATOR_ANIMATION_DURATION: 250;
|
|
76
|
+
/** Default indicator animation timing function */
|
|
77
|
+
readonly INDICATOR_ANIMATION_TIMING: "cubic-bezier(0.4, 0, 0.2, 1)";
|
|
78
|
+
/** Default icon size */
|
|
79
|
+
readonly ICON_SIZE: "24px";
|
|
80
|
+
/** Whether to enable ripple effect on tabs */
|
|
81
|
+
readonly RIPPLE: true;
|
|
82
|
+
};
|
|
83
|
+
/**
|
|
84
|
+
* Tab layout types
|
|
85
|
+
* @category Components
|
|
86
|
+
*/
|
|
87
|
+
export declare const TAB_LAYOUT: {
|
|
88
|
+
/** Icon-only tab layout */
|
|
89
|
+
readonly ICON_ONLY: "icon-only";
|
|
90
|
+
/** Text-only tab layout */
|
|
91
|
+
readonly TEXT_ONLY: "text-only";
|
|
92
|
+
/** Icon and text layout */
|
|
93
|
+
readonly ICON_AND_TEXT: "icon-and-text";
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* CSS class names used by the tabs component
|
|
97
|
+
* @category Components
|
|
98
|
+
*/
|
|
99
|
+
export declare const TABS_CLASSES: {
|
|
100
|
+
/** Root element class */
|
|
101
|
+
readonly ROOT: "tabs";
|
|
102
|
+
/** Root element with primary variant */
|
|
103
|
+
readonly PRIMARY: "tabs--primary";
|
|
104
|
+
/** Root element with secondary variant */
|
|
105
|
+
readonly SECONDARY: "tabs--secondary";
|
|
106
|
+
/** Root element with scrollable tabs */
|
|
107
|
+
readonly SCROLLABLE: "tabs--scrollable";
|
|
108
|
+
/** Scroll container element */
|
|
109
|
+
readonly SCROLL: "tabs-scroll";
|
|
110
|
+
/** Divider element */
|
|
111
|
+
readonly DIVIDER: "tabs-divider";
|
|
112
|
+
/** Indicator element */
|
|
113
|
+
readonly INDICATOR: "tabs-indicator";
|
|
114
|
+
};
|
|
115
|
+
/**
|
|
116
|
+
* CSS class names used by the tab component
|
|
117
|
+
* @category Components
|
|
118
|
+
*/
|
|
119
|
+
export declare const TAB_CLASSES: {
|
|
120
|
+
/** Root element class */
|
|
121
|
+
readonly ROOT: "tab";
|
|
122
|
+
/** Active state class */
|
|
123
|
+
readonly ACTIVE: "tab--active";
|
|
124
|
+
/** Inactive state class */
|
|
125
|
+
readonly INACTIVE: "tab--inactive";
|
|
126
|
+
/** Disabled state class */
|
|
127
|
+
readonly DISABLED: "tab--disabled";
|
|
128
|
+
/** Text content container */
|
|
129
|
+
readonly TEXT: "tab-text";
|
|
130
|
+
/** Icon container */
|
|
131
|
+
readonly ICON: "tab-icon";
|
|
132
|
+
/** Ripple effect container */
|
|
133
|
+
readonly RIPPLE: "tab-ripple";
|
|
134
|
+
/** Root element with primary variant */
|
|
135
|
+
readonly PRIMARY: "tab--primary";
|
|
136
|
+
/** Root element with secondary variant */
|
|
137
|
+
readonly SECONDARY: "tab--secondary";
|
|
138
|
+
/** Container for text and icon */
|
|
139
|
+
readonly CONTAINER: "tab-container";
|
|
140
|
+
/** Badge container */
|
|
141
|
+
readonly BADGE: "tab-badge";
|
|
142
|
+
};
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { TabConfig, TabComponent } from './types';
|
|
2
|
+
import { TabIndicator } from './indicator';
|
|
3
|
+
interface ComponentBase {
|
|
4
|
+
element: HTMLElement;
|
|
5
|
+
getClass: (name: string) => string;
|
|
6
|
+
scrollContainer?: HTMLElement;
|
|
7
|
+
emit?: (event: string, data: any) => any;
|
|
8
|
+
destroy?: () => void;
|
|
9
|
+
tabs?: TabComponent[];
|
|
10
|
+
handleTabClick?: (event: any, tab: TabComponent) => void;
|
|
11
|
+
variant?: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Configuration for tabs management feature
|
|
15
|
+
*/
|
|
16
|
+
export interface TabsManagementConfig {
|
|
17
|
+
/** Initial tabs to create */
|
|
18
|
+
tabs?: TabConfig[];
|
|
19
|
+
/** Tab variant */
|
|
20
|
+
variant?: string;
|
|
21
|
+
/** Component prefix */
|
|
22
|
+
prefix?: string;
|
|
23
|
+
/** Other configuration properties */
|
|
24
|
+
[key: string]: any;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Component with tabs management capabilities
|
|
28
|
+
*/
|
|
29
|
+
export interface TabsManagementComponent {
|
|
30
|
+
/** Array of tab components */
|
|
31
|
+
tabs: TabComponent[];
|
|
32
|
+
/** Target container for tabs */
|
|
33
|
+
tabsContainer: HTMLElement;
|
|
34
|
+
/** Tab click handler */
|
|
35
|
+
handleTabClick: (event: Event, tab: TabComponent) => void;
|
|
36
|
+
/** Get all tabs */
|
|
37
|
+
getTabs?: () => TabComponent[];
|
|
38
|
+
/** Get the active tab */
|
|
39
|
+
getActiveTab?: () => TabComponent | null;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Adds tabs management capabilities to a component
|
|
43
|
+
* @param {TabsManagementConfig} config - Tabs configuration
|
|
44
|
+
* @returns {Function} Component enhancer with tabs management
|
|
45
|
+
*/
|
|
46
|
+
export declare const withTabsManagement: <T extends TabsManagementConfig>(config: T) => <C extends ComponentBase>(component: C) => C & TabsManagementComponent;
|
|
47
|
+
/**
|
|
48
|
+
* Configuration for scrollable feature
|
|
49
|
+
*/
|
|
50
|
+
export interface ScrollableConfig {
|
|
51
|
+
/** Whether tabs are scrollable horizontally */
|
|
52
|
+
scrollable?: boolean;
|
|
53
|
+
/** Other configuration properties */
|
|
54
|
+
[key: string]: any;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Component with scrollable capabilities
|
|
58
|
+
*/
|
|
59
|
+
export interface ScrollableComponent {
|
|
60
|
+
/** Scroll container element */
|
|
61
|
+
scrollContainer?: HTMLElement;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Adds scrollable capabilities to a component
|
|
65
|
+
* @param {ScrollableConfig} config - Scrollable configuration
|
|
66
|
+
* @returns {Function} Component enhancer with scrollable container
|
|
67
|
+
*/
|
|
68
|
+
export declare const withScrollable: <T extends ScrollableConfig>(config: T) => <C extends ComponentBase>(component: C) => C & ScrollableComponent;
|
|
69
|
+
/**
|
|
70
|
+
* Configuration for divider feature
|
|
71
|
+
*/
|
|
72
|
+
export interface DividerConfig {
|
|
73
|
+
/** Whether to show a divider below the tabs */
|
|
74
|
+
showDivider?: boolean;
|
|
75
|
+
/** Other configuration properties */
|
|
76
|
+
[key: string]: any;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Adds a divider to a component
|
|
80
|
+
* @param {DividerConfig} config - Divider configuration
|
|
81
|
+
* @returns {Function} Component enhancer with divider
|
|
82
|
+
*/
|
|
83
|
+
export declare const withDivider: <T extends DividerConfig>(config: T) => <C extends ComponentBase>(component: C) => C;
|
|
84
|
+
/**
|
|
85
|
+
* Configuration for indicator feature
|
|
86
|
+
*/
|
|
87
|
+
export interface IndicatorFeatureConfig {
|
|
88
|
+
/** Component prefix */
|
|
89
|
+
prefix?: string;
|
|
90
|
+
/** Width strategy for the indicator */
|
|
91
|
+
widthStrategy?: 'fixed' | 'dynamic' | 'content';
|
|
92
|
+
/** Height of the indicator in pixels */
|
|
93
|
+
height?: number;
|
|
94
|
+
/** Fixed width in pixels (when using fixed strategy) */
|
|
95
|
+
fixedWidth?: number;
|
|
96
|
+
/** Animation duration in milliseconds */
|
|
97
|
+
animationDuration?: number;
|
|
98
|
+
/** Animation timing function */
|
|
99
|
+
animationTiming?: string;
|
|
100
|
+
/** Custom color for the indicator */
|
|
101
|
+
color?: string;
|
|
102
|
+
/** Legacy height property */
|
|
103
|
+
indicatorHeight?: number;
|
|
104
|
+
/** Legacy width strategy property */
|
|
105
|
+
indicatorWidthStrategy?: 'fixed' | 'dynamic' | 'content';
|
|
106
|
+
/** Indicator configuration object */
|
|
107
|
+
indicator?: {
|
|
108
|
+
widthStrategy?: 'fixed' | 'dynamic' | 'content';
|
|
109
|
+
height?: number;
|
|
110
|
+
fixedWidth?: number;
|
|
111
|
+
animationDuration?: number;
|
|
112
|
+
animationTiming?: string;
|
|
113
|
+
color?: string;
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Component with indicator capability
|
|
118
|
+
*/
|
|
119
|
+
export interface IndicatorComponent {
|
|
120
|
+
/** The indicator instance */
|
|
121
|
+
indicator: TabIndicator;
|
|
122
|
+
/** Get the indicator instance */
|
|
123
|
+
getIndicator: () => TabIndicator;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Enhances a component with tab indicator functionality
|
|
127
|
+
* @param config - Indicator configuration
|
|
128
|
+
* @returns Component enhancer with indicator functionality
|
|
129
|
+
*/
|
|
130
|
+
export declare const withIndicator: <T extends IndicatorFeatureConfig>(config: T) => <C extends ComponentBase & {
|
|
131
|
+
tabs: TabComponent[];
|
|
132
|
+
}>(component: C) => C & IndicatorComponent;
|
|
133
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import createTabs from './tabs';
|
|
2
|
+
import { addScrollIndicators } from './scroll-indicators';
|
|
3
|
+
import { setupResponsiveBehavior } from './responsive';
|
|
4
|
+
import { createTabsState } from './state';
|
|
5
|
+
import { createTabIndicator } from './indicator';
|
|
6
|
+
import { updateTabPanels, setupKeyboardNavigation } from './utils';
|
|
7
|
+
export { TAB_VARIANTS, TAB_STATES, TAB_INDICATOR_WIDTH_STRATEGIES, TAB_EVENTS, TABS_EVENTS, TABS_DEFAULTS, TABS_CLASSES, TAB_CLASSES } from './constants';
|
|
8
|
+
export { TabsConfig, TabsComponent, TabComponent, TabConfig, TabChangeEventData, IndicatorConfig } from './types';
|
|
9
|
+
export { addScrollIndicators, setupResponsiveBehavior, createTabsState, createTabIndicator, updateTabPanels, setupKeyboardNavigation };
|
|
10
|
+
export { withTabsManagement, withScrollable, withDivider, withIndicator, TabsManagementConfig, TabsManagementComponent, ScrollableConfig, ScrollableComponent, DividerConfig, IndicatorFeatureConfig, IndicatorComponent } from './features';
|
|
11
|
+
export default createTabs;
|