mtrl 0.3.8 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/LICENSE +21 -0
- package/dist/README.md +324 -0
- package/dist/components/badge/api.d.ts +48 -0
- package/{src/components/badge/badge.ts → dist/components/badge/badge.d.ts} +14 -57
- package/dist/components/badge/config.d.ts +79 -0
- package/dist/components/badge/constants.d.ts +35 -0
- package/dist/components/badge/features.d.ts +36 -0
- package/dist/components/badge/index.d.ts +8 -0
- package/dist/components/badge/types.d.ts +256 -0
- package/dist/components/bottom-app-bar/bottom-app-bar.d.ts +12 -0
- package/dist/components/bottom-app-bar/config.d.ts +16 -0
- package/dist/components/bottom-app-bar/constants.d.ts +22 -0
- package/{src/components/bottom-app-bar/index.ts → dist/components/bottom-app-bar/index.d.ts} +0 -9
- package/dist/components/bottom-app-bar/types.d.ts +96 -0
- package/dist/components/button/api.d.ts +47 -0
- package/dist/components/button/button.d.ts +25 -0
- package/dist/components/button/config.d.ts +59 -0
- package/dist/components/button/constants.d.ts +43 -0
- package/dist/components/button/index.d.ts +6 -0
- package/dist/components/button/types.d.ts +265 -0
- package/dist/components/card/api.d.ts +11 -0
- package/{src/components/card/card.ts → dist/components/card/card.d.ts} +10 -58
- package/dist/components/card/config.d.ts +105 -0
- package/dist/components/card/constants.d.ts +85 -0
- package/dist/components/card/content.d.ts +92 -0
- package/dist/components/card/features.d.ts +131 -0
- package/{src/components/card/index.ts → dist/components/card/index.d.ts} +13 -74
- package/dist/components/card/types.d.ts +471 -0
- package/dist/components/carousel/api.d.ts +33 -0
- package/dist/components/carousel/carousel.d.ts +75 -0
- package/dist/components/carousel/config.d.ts +45 -0
- package/dist/components/carousel/constants.d.ts +165 -0
- package/dist/components/carousel/features/drag.d.ts +8 -0
- package/{src/components/carousel/features/index.ts → dist/components/carousel/features/index.d.ts} +1 -4
- package/dist/components/carousel/features/slides.d.ts +8 -0
- package/{src/components/carousel/index.ts → dist/components/carousel/index.d.ts} +10 -29
- package/dist/components/carousel/types.d.ts +276 -0
- package/dist/components/checkbox/api.d.ts +7 -0
- package/dist/components/checkbox/checkbox.d.ts +65 -0
- package/dist/components/checkbox/config.d.ts +44 -0
- package/dist/components/checkbox/constants.d.ts +63 -0
- package/{src/components/checkbox/index.ts → dist/components/checkbox/index.d.ts} +8 -25
- package/dist/components/checkbox/types.d.ts +242 -0
- package/dist/components/chips/api.d.ts +49 -0
- package/dist/components/chips/chip/api.d.ts +23 -0
- package/dist/components/chips/chip/chip.d.ts +8 -0
- package/dist/components/chips/chip/config.d.ts +57 -0
- package/dist/components/chips/chip/constants.d.ts +38 -0
- package/dist/components/chips/chip/index.d.ts +2 -0
- package/dist/components/chips/chip/types.d.ts +11 -0
- package/dist/components/chips/chips.d.ts +17 -0
- package/dist/components/chips/config.d.ts +67 -0
- package/dist/components/chips/constants.d.ts +46 -0
- package/dist/components/chips/features/chip-items.d.ts +8 -0
- package/dist/components/chips/features/container.d.ts +8 -0
- package/dist/components/chips/features/controller.d.ts +9 -0
- package/{src/components/chips/features/index.ts → dist/components/chips/features/index.d.ts} +1 -2
- package/dist/components/chips/features/label.d.ts +8 -0
- package/dist/components/chips/index.d.ts +4 -0
- package/dist/components/chips/schema.d.ts +34 -0
- package/dist/components/chips/types.d.ts +398 -0
- package/dist/components/datepicker/api.d.ts +9 -0
- package/dist/components/datepicker/config.d.ts +79 -0
- package/dist/components/datepicker/constants.d.ts +97 -0
- package/dist/components/datepicker/datepicker.d.ts +8 -0
- package/dist/components/datepicker/index.d.ts +3 -0
- package/dist/components/datepicker/render.d.ts +43 -0
- package/dist/components/datepicker/types.d.ts +321 -0
- package/dist/components/datepicker/utils.d.ts +84 -0
- package/dist/components/dialog/api.d.ts +59 -0
- package/dist/components/dialog/config.d.ts +91 -0
- package/dist/components/dialog/constants.d.ts +116 -0
- package/{src/components/dialog/dialog.ts → dist/components/dialog/dialog.d.ts} +16 -69
- package/dist/components/dialog/features.d.ts +37 -0
- package/dist/components/dialog/index.d.ts +14 -0
- package/dist/components/dialog/types.d.ts +483 -0
- package/dist/components/divider/config.d.ts +143 -0
- package/dist/components/divider/constants.d.ts +45 -0
- package/{src/components/divider/divider.ts → dist/components/divider/divider.d.ts} +9 -37
- package/dist/components/divider/features.d.ts +50 -0
- package/{src/components/divider/index.ts → dist/components/divider/index.d.ts} +6 -12
- package/dist/components/divider/types.d.ts +124 -0
- package/dist/components/extended-fab/api.d.ts +83 -0
- package/dist/components/extended-fab/config.d.ts +75 -0
- package/dist/components/extended-fab/constants.d.ts +82 -0
- package/dist/components/extended-fab/extended-fab.d.ts +61 -0
- package/{src/components/extended-fab/index.ts → dist/components/extended-fab/index.d.ts} +6 -15
- package/dist/components/extended-fab/types.d.ts +703 -0
- package/dist/components/fab/api.d.ts +64 -0
- package/dist/components/fab/config.d.ts +71 -0
- package/dist/components/fab/constants.d.ts +75 -0
- package/{src/components/fab/fab.ts → dist/components/fab/fab.d.ts} +10 -46
- package/{src/components/fab/index.ts → dist/components/fab/index.d.ts} +6 -15
- package/dist/components/fab/types.d.ts +577 -0
- package/dist/components/index.d.ts +76 -0
- package/dist/components/list/api.d.ts +106 -0
- package/dist/components/list/config.d.ts +61 -0
- package/dist/components/list/constants.d.ts +76 -0
- package/dist/components/list/features/index.d.ts +2 -0
- package/dist/components/list/features/listmanager.d.ts +9 -0
- package/dist/components/list/features/selection.d.ts +9 -0
- package/dist/components/list/index.d.ts +12 -0
- package/dist/components/list/list.d.ts +11 -0
- package/dist/components/list/types.d.ts +294 -0
- package/dist/components/menu/api.d.ts +58 -0
- package/dist/components/menu/config.d.ts +78 -0
- package/dist/components/menu/constants.d.ts +106 -0
- package/dist/components/menu/features/controller.d.ts +10 -0
- package/dist/components/menu/features/index.d.ts +6 -0
- package/dist/components/menu/features/keyboard.d.ts +26 -0
- package/dist/components/menu/features/opener.d.ts +10 -0
- package/dist/components/menu/features/position.d.ts +18 -0
- package/dist/components/menu/features/submenu.d.ts +10 -0
- package/{src/components/menu/index.ts → dist/components/menu/index.d.ts} +11 -27
- package/dist/components/menu/menu.d.ts +29 -0
- package/dist/components/menu/types.d.ts +338 -0
- package/dist/components/navigation/api.d.ts +8 -0
- package/dist/components/navigation/config.d.ts +34 -0
- package/dist/components/navigation/constants.d.ts +137 -0
- package/dist/components/navigation/features/controller.d.ts +30 -0
- package/dist/components/navigation/features/items.d.ts +32 -0
- package/dist/components/navigation/index.d.ts +3 -0
- package/dist/components/navigation/nav-item.d.ts +30 -0
- package/dist/components/navigation/navigation.d.ts +8 -0
- package/dist/components/navigation/system/core.d.ts +72 -0
- package/dist/components/navigation/system/events.d.ts +35 -0
- package/dist/components/navigation/system/index.d.ts +10 -0
- package/dist/components/navigation/system/mobile.d.ts +52 -0
- package/dist/components/navigation/system/state.d.ts +22 -0
- package/dist/components/navigation/system/types.d.ts +305 -0
- package/dist/components/navigation/types.d.ts +216 -0
- package/dist/components/progress/api.d.ts +46 -0
- package/dist/components/progress/config.d.ts +72 -0
- package/dist/components/progress/constants.d.ts +139 -0
- package/dist/components/progress/features/canvas.d.ts +32 -0
- package/dist/components/progress/features/circular.d.ts +9 -0
- package/dist/components/progress/features/index.d.ts +8 -0
- package/dist/components/progress/features/linear.d.ts +9 -0
- package/dist/components/progress/features/resize-observer.d.ts +5 -0
- package/dist/components/progress/features/state.d.ts +38 -0
- package/dist/components/progress/features.d.ts +40 -0
- package/dist/components/progress/index.d.ts +3 -0
- package/dist/components/progress/progress.d.ts +24 -0
- package/dist/components/progress/types.d.ts +272 -0
- package/dist/components/radios/api.d.ts +37 -0
- package/dist/components/radios/config.d.ts +42 -0
- package/dist/components/radios/constants.d.ts +114 -0
- package/dist/components/radios/index.d.ts +3 -0
- package/dist/components/radios/radio.d.ts +8 -0
- package/dist/components/radios/radios.d.ts +8 -0
- package/dist/components/radios/types.d.ts +189 -0
- package/dist/components/search/api.d.ts +55 -0
- package/dist/components/search/config.d.ts +73 -0
- package/dist/components/search/constants.d.ts +128 -0
- package/{src/components/search/features/index.ts → dist/components/search/features/index.d.ts} +1 -2
- package/dist/components/search/features/search.d.ts +7 -0
- package/dist/components/search/features/states.d.ts +8 -0
- package/dist/components/search/features/structure.d.ts +7 -0
- package/dist/components/search/index.d.ts +3 -0
- package/dist/components/search/search.d.ts +8 -0
- package/dist/components/search/types.d.ts +132 -0
- package/dist/components/segmented-button/config.d.ts +65 -0
- package/dist/components/segmented-button/constants.d.ts +85 -0
- package/dist/components/segmented-button/index.d.ts +4 -0
- package/dist/components/segmented-button/segment.d.ts +15 -0
- package/dist/components/segmented-button/segmented-button.d.ts +49 -0
- package/dist/components/segmented-button/types.d.ts +257 -0
- package/dist/components/select/api.d.ts +8 -0
- package/dist/components/select/config.d.ts +18 -0
- package/dist/components/select/constants.d.ts +113 -0
- package/dist/components/select/features.d.ts +13 -0
- package/{src/components/select/index.ts → dist/components/select/index.d.ts} +7 -20
- package/dist/components/select/select.d.ts +36 -0
- package/dist/components/select/types.d.ts +302 -0
- package/dist/components/sheet/api.d.ts +37 -0
- package/dist/components/sheet/config.d.ts +42 -0
- package/dist/components/sheet/constants.d.ts +136 -0
- package/dist/components/sheet/features/content.d.ts +6 -0
- package/dist/components/sheet/features/gestures.d.ts +6 -0
- package/{src/components/sheet/features/index.ts → dist/components/sheet/features/index.d.ts} +1 -2
- package/dist/components/sheet/features/position.d.ts +7 -0
- package/dist/components/sheet/features/state.d.ts +6 -0
- package/dist/components/sheet/features/title.d.ts +6 -0
- package/dist/components/sheet/index.d.ts +3 -0
- package/dist/components/sheet/sheet.d.ts +8 -0
- package/dist/components/sheet/types.d.ts +250 -0
- package/dist/components/slider/api.d.ts +57 -0
- package/dist/components/slider/config.d.ts +75 -0
- package/dist/components/slider/constants.d.ts +138 -0
- package/dist/components/slider/features/controller.d.ts +9 -0
- package/dist/components/slider/features/handlers.d.ts +25 -0
- package/dist/components/slider/features/index.d.ts +3 -0
- package/dist/components/slider/features/range.d.ts +8 -0
- package/dist/components/slider/features/states.d.ts +9 -0
- package/dist/components/slider/index.d.ts +3 -0
- package/dist/components/slider/schema.d.ts +108 -0
- package/dist/components/slider/slider.d.ts +18 -0
- package/dist/components/slider/types.d.ts +170 -0
- package/dist/components/snackbar/api.d.ts +7 -0
- package/dist/components/snackbar/config.d.ts +55 -0
- package/dist/components/snackbar/constants.d.ts +88 -0
- package/dist/components/snackbar/features.d.ts +13 -0
- package/dist/components/snackbar/index.d.ts +3 -0
- package/dist/components/snackbar/position.d.ts +15 -0
- package/dist/components/snackbar/queue.d.ts +7 -0
- package/dist/components/snackbar/snackbar.d.ts +8 -0
- package/dist/components/snackbar/types.d.ts +172 -0
- package/dist/components/switch/api.d.ts +7 -0
- package/dist/components/switch/config.d.ts +34 -0
- package/dist/components/switch/constants.d.ts +88 -0
- package/dist/components/switch/features.d.ts +59 -0
- package/dist/components/switch/index.d.ts +4 -0
- package/dist/components/switch/switch.d.ts +8 -0
- package/dist/components/switch/types.d.ts +131 -0
- package/dist/components/tabs/api.d.ts +52 -0
- package/dist/components/tabs/config.d.ts +39 -0
- package/dist/components/tabs/constants.d.ts +142 -0
- package/dist/components/tabs/features.d.ts +133 -0
- package/dist/components/tabs/index.d.ts +11 -0
- package/dist/components/tabs/indicator.d.ts +49 -0
- package/dist/components/tabs/responsive.d.ts +38 -0
- package/dist/components/tabs/scroll-indicators.d.ts +18 -0
- package/dist/components/tabs/state.d.ts +53 -0
- package/dist/components/tabs/tab-api.d.ts +43 -0
- package/dist/components/tabs/tab.d.ts +7 -0
- package/dist/components/tabs/tabs.d.ts +27 -0
- package/dist/components/tabs/types.d.ts +390 -0
- package/dist/components/tabs/utils.d.ts +17 -0
- package/dist/components/textfield/api.d.ts +8 -0
- package/dist/components/textfield/config.d.ts +34 -0
- package/dist/components/textfield/constants.d.ts +148 -0
- package/{src/components/textfield/features/index.ts → dist/components/textfield/features/index.d.ts} +1 -6
- package/dist/components/textfield/features/leading-icon.d.ts +55 -0
- package/dist/components/textfield/features/placement.d.ts +28 -0
- package/dist/components/textfield/features/prefix-text.d.ts +54 -0
- package/dist/components/textfield/features/suffix-text.d.ts +54 -0
- package/dist/components/textfield/features/supporting-text.d.ts +59 -0
- package/dist/components/textfield/features/trailing-icon.d.ts +55 -0
- package/dist/components/textfield/index.d.ts +3 -0
- package/dist/components/textfield/textfield.d.ts +36 -0
- package/dist/components/textfield/types.d.ts +217 -0
- package/dist/components/timepicker/api.d.ts +24 -0
- package/dist/components/timepicker/clockdial.d.ts +34 -0
- package/dist/components/timepicker/config.d.ts +75 -0
- package/dist/components/timepicker/constants.d.ts +266 -0
- package/dist/components/timepicker/index.d.ts +4 -0
- package/dist/components/timepicker/render.d.ts +9 -0
- package/dist/components/timepicker/timepicker.d.ts +8 -0
- package/dist/components/timepicker/types.d.ts +284 -0
- package/dist/components/timepicker/utils.d.ts +74 -0
- package/dist/components/tooltip/api.d.ts +18 -0
- package/dist/components/tooltip/config.d.ts +38 -0
- package/dist/components/tooltip/constants.d.ts +108 -0
- package/dist/components/tooltip/index.d.ts +3 -0
- package/dist/components/tooltip/tooltip.d.ts +8 -0
- package/dist/components/tooltip/types.d.ts +188 -0
- package/dist/components/top-app-bar/config.d.ts +16 -0
- package/dist/components/top-app-bar/constants.d.ts +74 -0
- package/{src/components/top-app-bar/index.ts → dist/components/top-app-bar/index.d.ts} +2 -4
- package/dist/components/top-app-bar/top-app-bar.d.ts +68 -0
- package/dist/components/top-app-bar/types.d.ts +118 -0
- package/dist/constants.d.ts +30 -0
- package/dist/core/canvas/index.d.ts +5 -0
- package/dist/core/canvas/resize.d.ts +14 -0
- package/dist/core/collection/adapters/base.d.ts +47 -0
- package/dist/core/collection/adapters/route.d.ts +149 -0
- package/dist/core/collection/collection.d.ts +131 -0
- package/dist/core/collection/index.d.ts +10 -0
- package/dist/core/collection/list-manager/config.d.ts +29 -0
- package/dist/core/collection/list-manager/dom-elements.d.ts +30 -0
- package/dist/core/collection/list-manager/index.d.ts +61 -0
- package/dist/core/collection/list-manager/item-measurement.d.ts +91 -0
- package/dist/core/collection/list-manager/renderer.d.ts +31 -0
- package/dist/core/collection/list-manager/scroll-tracker.d.ts +20 -0
- package/dist/core/collection/list-manager/state.d.ts +60 -0
- package/dist/core/collection/list-manager/types.d.ts +361 -0
- package/dist/core/collection/list-manager/utils/recycling.d.ts +34 -0
- package/dist/core/collection/list-manager/utils/visibility.d.ts +45 -0
- package/dist/core/compose/base.d.ts +31 -0
- package/dist/core/compose/component.d.ts +61 -0
- package/dist/core/compose/features/badge.d.ts +43 -0
- package/dist/core/compose/features/checkable.d.ts +59 -0
- package/dist/core/compose/features/constants.d.ts +45 -0
- package/dist/core/compose/features/debounce.d.ts +84 -0
- package/dist/core/compose/features/disabled.d.ts +47 -0
- package/dist/core/compose/features/events.d.ts +37 -0
- package/dist/core/compose/features/gestures/longpress.d.ts +85 -0
- package/dist/core/compose/features/gestures/pan.d.ts +108 -0
- package/dist/core/compose/features/gestures/pinch.d.ts +111 -0
- package/dist/core/compose/features/gestures/rotate.d.ts +111 -0
- package/dist/core/compose/features/gestures/swipe.d.ts +149 -0
- package/dist/core/compose/features/gestures/tap.d.ts +79 -0
- package/dist/core/compose/features/gestures.d.ts +86 -0
- package/dist/core/compose/features/icon.d.ts +71 -0
- package/{src/core/compose/features/index.ts → dist/core/compose/features/index.d.ts} +7 -8
- package/dist/core/compose/features/input.d.ts +71 -0
- package/dist/core/compose/features/lifecycle.d.ts +61 -0
- package/dist/core/compose/features/position.d.ts +51 -0
- package/dist/core/compose/features/ripple.d.ts +61 -0
- package/dist/core/compose/features/size.d.ts +17 -0
- package/dist/core/compose/features/style.d.ts +16 -0
- package/dist/core/compose/features/text.d.ts +63 -0
- package/dist/core/compose/features/textinput.d.ts +93 -0
- package/dist/core/compose/features/textlabel.d.ts +57 -0
- package/dist/core/compose/features/throttle.d.ts +75 -0
- package/dist/core/compose/features/track.d.ts +42 -0
- package/dist/core/compose/features/variant.d.ts +17 -0
- package/dist/core/compose/features/withEvents.d.ts +45 -0
- package/dist/core/compose/index.d.ts +17 -0
- package/{src/core/compose/pipe.ts → dist/core/compose/pipe.d.ts} +4 -20
- package/dist/core/compose/utils/type-guards.d.ts +27 -0
- package/dist/core/composition/features/dom.d.ts +19 -0
- package/dist/core/composition/features/icon.d.ts +45 -0
- package/{src/core/composition/features/index.ts → dist/core/composition/features/index.d.ts} +1 -6
- package/dist/core/composition/features/label.d.ts +49 -0
- package/{src/core/composition/features/layout.ts → dist/core/composition/features/layout.d.ts} +8 -24
- package/{src/core/composition/index.ts → dist/core/composition/index.d.ts} +4 -14
- package/{src/core/config/component-config.ts → dist/core/config/component.d.ts} +35 -83
- package/dist/core/config.d.ts +130 -0
- package/dist/core/dom/attributes.d.ts +20 -0
- package/dist/core/dom/classes.d.ts +52 -0
- package/dist/core/dom/create.d.ts +154 -0
- package/dist/core/dom/events.d.ts +69 -0
- package/dist/core/dom/index.d.ts +6 -0
- package/dist/core/dom/utils.d.ts +42 -0
- package/dist/core/gestures/index.d.ts +12 -0
- package/dist/core/gestures/longpress.d.ts +23 -0
- package/dist/core/gestures/manager.d.ts +14 -0
- package/dist/core/gestures/pan.d.ts +12 -0
- package/dist/core/gestures/pinch.d.ts +14 -0
- package/dist/core/gestures/rotate.d.ts +14 -0
- package/dist/core/gestures/swipe.d.ts +20 -0
- package/dist/core/gestures/tap.d.ts +12 -0
- package/dist/core/gestures/types.d.ts +320 -0
- package/dist/core/gestures/utils.d.ts +57 -0
- package/dist/core/index.d.ts +29 -0
- package/dist/core/layout/array.d.ts +15 -0
- package/dist/core/layout/config.d.ts +32 -0
- package/dist/core/layout/create.d.ts +14 -0
- package/dist/core/layout/index.d.ts +13 -0
- package/dist/core/layout/jsx.d.ts +13 -0
- package/dist/core/layout/object.d.ts +14 -0
- package/dist/core/layout/processor.d.ts +28 -0
- package/dist/core/layout/result.d.ts +12 -0
- package/dist/core/layout/template.d.ts +12 -0
- package/dist/core/layout/types.d.ts +137 -0
- package/dist/core/layout/utils.d.ts +38 -0
- package/dist/core/state/disabled.d.ts +32 -0
- package/dist/core/state/emitter.d.ts +40 -0
- package/dist/core/state/events.d.ts +36 -0
- package/{src/core/state/index.ts → dist/core/state/index.d.ts} +1 -7
- package/dist/core/state/lifecycle.d.ts +57 -0
- package/dist/core/state/store.d.ts +82 -0
- package/dist/core/utils/background.d.ts +40 -0
- package/dist/core/utils/index.d.ts +18 -0
- package/dist/core/utils/mobile.d.ts +54 -0
- package/dist/core/utils/object.d.ts +13 -0
- package/dist/core/utils/performance.d.ts +79 -0
- package/dist/core/utils/theme.d.ts +38 -0
- package/dist/core/utils/validate.d.ts +73 -0
- package/dist/index.cjs +64 -0
- package/dist/index.cjs.map +291 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.js +53 -14854
- package/dist/index.js.map +291 -0
- package/dist/package.json +39 -0
- package/dist/styles.css +7 -0
- package/package.json +23 -4
- package/.env +0 -15
- package/.typedocignore +0 -11
- package/CONTRIBUTING.md +0 -218
- package/DOCS.md +0 -153
- package/TESTING.md +0 -214
- package/git-user-stats.js +0 -545
- package/index.ts +0 -10
- package/src/components/badge/api.ts +0 -313
- package/src/components/badge/config.ts +0 -153
- package/src/components/badge/features.ts +0 -194
- package/src/components/badge/index.ts +0 -90
- package/src/components/badge/types.ts +0 -279
- package/src/components/bottom-app-bar/bottom-app-bar.ts +0 -154
- package/src/components/bottom-app-bar/config.ts +0 -29
- package/src/components/bottom-app-bar/types.ts +0 -114
- package/src/components/button/api.ts +0 -172
- package/src/components/button/button.ts +0 -112
- package/src/components/button/config.ts +0 -96
- package/src/components/button/index.ts +0 -37
- package/src/components/button/types.ts +0 -290
- package/src/components/card/api.ts +0 -222
- package/src/components/card/config.ts +0 -304
- package/src/components/card/content.ts +0 -343
- package/src/components/card/features.ts +0 -407
- package/src/components/card/types.ts +0 -497
- package/src/components/carousel/api.ts +0 -147
- package/src/components/carousel/carousel.ts +0 -242
- package/src/components/carousel/config.ts +0 -91
- package/src/components/carousel/constants.ts +0 -181
- package/src/components/carousel/features/drag.ts +0 -388
- package/src/components/carousel/features/slides.ts +0 -682
- package/src/components/carousel/types.ts +0 -327
- package/src/components/checkbox/api.ts +0 -82
- package/src/components/checkbox/checkbox.ts +0 -142
- package/src/components/checkbox/config.ts +0 -89
- package/src/components/checkbox/types.ts +0 -342
- package/src/components/chips/api.ts +0 -194
- package/src/components/chips/chip/api.ts +0 -233
- package/src/components/chips/chip/chip.ts +0 -131
- package/src/components/chips/chip/config.ts +0 -91
- package/src/components/chips/chip/index.ts +0 -3
- package/src/components/chips/chips.md +0 -481
- package/src/components/chips/chips.ts +0 -75
- package/src/components/chips/config.ts +0 -109
- package/src/components/chips/constants.ts +0 -61
- package/src/components/chips/features/chip-items.ts +0 -33
- package/src/components/chips/features/container.ts +0 -77
- package/src/components/chips/features/controller.ts +0 -448
- package/src/components/chips/features/label.ts +0 -108
- package/src/components/chips/index.ts +0 -11
- package/src/components/chips/schema.ts +0 -61
- package/src/components/chips/types.ts +0 -469
- package/src/components/datepicker/api.ts +0 -265
- package/src/components/datepicker/config.ts +0 -141
- package/src/components/datepicker/datepicker.ts +0 -341
- package/src/components/datepicker/index.ts +0 -12
- package/src/components/datepicker/render.ts +0 -450
- package/src/components/datepicker/types.ts +0 -397
- package/src/components/datepicker/utils.ts +0 -289
- package/src/components/dialog/api.ts +0 -317
- package/src/components/dialog/config.ts +0 -116
- package/src/components/dialog/features.ts +0 -907
- package/src/components/dialog/index.ts +0 -141
- package/src/components/dialog/types.ts +0 -553
- package/src/components/divider/config.ts +0 -165
- package/src/components/divider/features.ts +0 -233
- package/src/components/divider/types.ts +0 -132
- package/src/components/extended-fab/api.ts +0 -193
- package/src/components/extended-fab/config.ts +0 -140
- package/src/components/extended-fab/extended-fab.ts +0 -153
- package/src/components/extended-fab/types.ts +0 -749
- package/src/components/fab/api.ts +0 -137
- package/src/components/fab/config.ts +0 -121
- package/src/components/fab/types.ts +0 -615
- package/src/components/list/api.ts +0 -82
- package/src/components/list/config.ts +0 -63
- package/src/components/list/features.ts +0 -229
- package/src/components/list/index.ts +0 -67
- package/src/components/list/list-item.ts +0 -163
- package/src/components/list/list.ts +0 -108
- package/src/components/list/types.ts +0 -396
- package/src/components/list/utils.ts +0 -98
- package/src/components/menu/api.ts +0 -230
- package/src/components/menu/config.ts +0 -127
- package/src/components/menu/features/anchor.ts +0 -394
- package/src/components/menu/features/controller.ts +0 -1423
- package/src/components/menu/features/index.ts +0 -13
- package/src/components/menu/features/position.ts +0 -353
- package/src/components/menu/menu.ts +0 -121
- package/src/components/menu/types.ts +0 -392
- package/src/components/navigation/api.ts +0 -142
- package/src/components/navigation/config.ts +0 -73
- package/src/components/navigation/features/controller.ts +0 -273
- package/src/components/navigation/features/items.ts +0 -353
- package/src/components/navigation/index.ts +0 -11
- package/src/components/navigation/nav-item.ts +0 -196
- package/src/components/navigation/navigation.ts +0 -115
- package/src/components/navigation/system/core.ts +0 -302
- package/src/components/navigation/system/events.ts +0 -240
- package/src/components/navigation/system/index.ts +0 -184
- package/src/components/navigation/system/mobile.ts +0 -278
- package/src/components/navigation/system/state.ts +0 -77
- package/src/components/navigation/system/types.ts +0 -364
- package/src/components/navigation/types.ts +0 -292
- package/src/components/progress/api.ts +0 -178
- package/src/components/progress/config.ts +0 -122
- package/src/components/progress/index.ts +0 -4
- package/src/components/progress/progress.ts +0 -159
- package/src/components/progress/types.ts +0 -255
- package/src/components/radios/api.ts +0 -125
- package/src/components/radios/config.ts +0 -59
- package/src/components/radios/constants.ts +0 -19
- package/src/components/radios/index.ts +0 -3
- package/src/components/radios/radio.ts +0 -292
- package/src/components/radios/radios.ts +0 -43
- package/src/components/radios/types.ts +0 -219
- package/src/components/search/api.ts +0 -203
- package/src/components/search/config.ts +0 -86
- package/src/components/search/features/search.ts +0 -717
- package/src/components/search/features/states.ts +0 -169
- package/src/components/search/features/structure.ts +0 -197
- package/src/components/search/index.ts +0 -7
- package/src/components/search/search.ts +0 -52
- package/src/components/search/types.ts +0 -175
- package/src/components/segmented-button/config.ts +0 -119
- package/src/components/segmented-button/index.ts +0 -4
- package/src/components/segmented-button/segment.ts +0 -108
- package/src/components/segmented-button/segmented-button.ts +0 -361
- package/src/components/segmented-button/types.ts +0 -306
- package/src/components/select/api.ts +0 -78
- package/src/components/select/config.ts +0 -76
- package/src/components/select/features.ts +0 -331
- package/src/components/select/select.ts +0 -73
- package/src/components/select/types.ts +0 -355
- package/src/components/sheet/api.ts +0 -96
- package/src/components/sheet/config.ts +0 -65
- package/src/components/sheet/features/content.ts +0 -51
- package/src/components/sheet/features/gestures.ts +0 -177
- package/src/components/sheet/features/position.ts +0 -41
- package/src/components/sheet/features/state.ts +0 -116
- package/src/components/sheet/features/title.ts +0 -86
- package/src/components/sheet/index.ts +0 -12
- package/src/components/sheet/sheet.ts +0 -56
- package/src/components/sheet/types.ts +0 -294
- package/src/components/slider/accessibility.md +0 -59
- package/src/components/slider/api.ts +0 -192
- package/src/components/slider/config.ts +0 -118
- package/src/components/slider/features/controller.ts +0 -737
- package/src/components/slider/features/handlers.ts +0 -497
- package/src/components/slider/features/index.ts +0 -5
- package/src/components/slider/features/range.ts +0 -104
- package/src/components/slider/features/states.ts +0 -195
- package/src/components/slider/index.ts +0 -17
- package/src/components/slider/schema.ts +0 -141
- package/src/components/slider/slider.ts +0 -76
- package/src/components/slider/types.ts +0 -223
- package/src/components/snackbar/api.ts +0 -162
- package/src/components/snackbar/config.ts +0 -61
- package/src/components/snackbar/features.ts +0 -76
- package/src/components/snackbar/index.ts +0 -9
- package/src/components/snackbar/position.ts +0 -79
- package/src/components/snackbar/queue.ts +0 -76
- package/src/components/snackbar/snackbar.ts +0 -60
- package/src/components/snackbar/types.ts +0 -159
- package/src/components/switch/api.ts +0 -93
- package/src/components/switch/config.ts +0 -56
- package/src/components/switch/features.ts +0 -198
- package/src/components/switch/index.ts +0 -8
- package/src/components/switch/switch.ts +0 -52
- package/src/components/switch/types.ts +0 -168
- package/src/components/tabs/api.ts +0 -221
- package/src/components/tabs/config.ts +0 -73
- package/src/components/tabs/features.ts +0 -403
- package/src/components/tabs/index.ts +0 -46
- package/src/components/tabs/indicator.ts +0 -285
- package/src/components/tabs/responsive.ts +0 -144
- package/src/components/tabs/scroll-indicators.ts +0 -149
- package/src/components/tabs/state.ts +0 -186
- package/src/components/tabs/tab-api.ts +0 -266
- package/src/components/tabs/tab.ts +0 -267
- package/src/components/tabs/tabs.ts +0 -71
- package/src/components/tabs/types.ts +0 -461
- package/src/components/tabs/utils.ts +0 -107
- package/src/components/textfield/api.ts +0 -197
- package/src/components/textfield/config.ts +0 -52
- package/src/components/textfield/features/leading-icon.ts +0 -127
- package/src/components/textfield/features/placement.ts +0 -149
- package/src/components/textfield/features/prefix-text.ts +0 -107
- package/src/components/textfield/features/suffix-text.ts +0 -100
- package/src/components/textfield/features/supporting-text.ts +0 -113
- package/src/components/textfield/features/trailing-icon.ts +0 -108
- package/src/components/textfield/index.ts +0 -9
- package/src/components/textfield/textfield.ts +0 -92
- package/src/components/textfield/types.ts +0 -265
- package/src/components/timepicker/README.md +0 -277
- package/src/components/timepicker/api.ts +0 -632
- package/src/components/timepicker/clockdial.ts +0 -479
- package/src/components/timepicker/config.ts +0 -228
- package/src/components/timepicker/index.ts +0 -3
- package/src/components/timepicker/render.ts +0 -613
- package/src/components/timepicker/timepicker.ts +0 -117
- package/src/components/timepicker/types.ts +0 -336
- package/src/components/timepicker/utils.ts +0 -241
- package/src/components/tooltip/api.ts +0 -415
- package/src/components/tooltip/config.ts +0 -80
- package/src/components/tooltip/index.ts +0 -12
- package/src/components/tooltip/tooltip.ts +0 -60
- package/src/components/tooltip/types.ts +0 -223
- package/src/components/top-app-bar/config.ts +0 -83
- package/src/components/top-app-bar/top-app-bar.ts +0 -316
- package/src/components/top-app-bar/types.ts +0 -140
- package/src/core/build/constants.ts +0 -48
- package/src/core/build/icon.ts +0 -137
- package/src/core/build/ripple.ts +0 -193
- package/src/core/build/text.ts +0 -91
- package/src/core/collection/adapters/base.ts +0 -62
- package/src/core/collection/adapters/route.ts +0 -201
- package/src/core/collection/collection.ts +0 -300
- package/src/core/collection/index.ts +0 -57
- package/src/core/collection/list-manager.ts +0 -333
- package/src/core/compose/base.ts +0 -43
- package/src/core/compose/component.ts +0 -255
- package/src/core/compose/features/badge.ts +0 -79
- package/src/core/compose/features/checkable.ts +0 -155
- package/src/core/compose/features/disabled.ts +0 -116
- package/src/core/compose/features/events.ts +0 -65
- package/src/core/compose/features/icon.ts +0 -71
- package/src/core/compose/features/input.ts +0 -174
- package/src/core/compose/features/lifecycle.ts +0 -139
- package/src/core/compose/features/position.ts +0 -94
- package/src/core/compose/features/ripple.ts +0 -58
- package/src/core/compose/features/size.ts +0 -29
- package/src/core/compose/features/style.ts +0 -31
- package/src/core/compose/features/text.ts +0 -44
- package/src/core/compose/features/textinput.ts +0 -238
- package/src/core/compose/features/textlabel.ts +0 -113
- package/src/core/compose/features/track.ts +0 -84
- package/src/core/compose/features/variant.ts +0 -29
- package/src/core/compose/features/withEvents.ts +0 -137
- package/src/core/compose/index.ts +0 -54
- package/src/core/composition/features/dom.ts +0 -45
- package/src/core/composition/features/icon.ts +0 -131
- package/src/core/composition/features/label.ts +0 -155
- package/src/core/config.ts +0 -211
- package/src/core/dom/attributes.ts +0 -33
- package/src/core/dom/classes.ts +0 -132
- package/src/core/dom/create.ts +0 -273
- package/src/core/dom/events.ts +0 -209
- package/src/core/dom/index.ts +0 -10
- package/src/core/dom/utils.ts +0 -97
- package/src/core/index.ts +0 -111
- package/src/core/layout/README.md +0 -715
- package/src/core/layout/array.ts +0 -180
- package/src/core/layout/config.ts +0 -193
- package/src/core/layout/create.ts +0 -54
- package/src/core/layout/index.ts +0 -36
- package/src/core/layout/object.ts +0 -123
- package/src/core/layout/processor.ts +0 -106
- package/src/core/layout/result.ts +0 -84
- package/src/core/layout/types.ts +0 -180
- package/src/core/layout/utils.ts +0 -144
- package/src/core/state/disabled.ts +0 -81
- package/src/core/state/emitter.ts +0 -94
- package/src/core/state/events.ts +0 -88
- package/src/core/state/lifecycle.ts +0 -131
- package/src/core/state/store.ts +0 -197
- package/src/core/utils/index.ts +0 -45
- package/src/core/utils/mobile.ts +0 -98
- package/src/core/utils/object.ts +0 -41
- package/src/core/utils/validate.ts +0 -234
- package/src/index.ts +0 -90
- package/src/styles/abstract/_base.scss +0 -2
- package/src/styles/abstract/_config.scss +0 -28
- package/src/styles/abstract/_functions.scss +0 -124
- package/src/styles/abstract/_mixins.scss +0 -352
- package/src/styles/abstract/_theme.scss +0 -269
- package/src/styles/abstract/_variables.scss +0 -305
- package/src/styles/base/_reset.scss +0 -86
- package/src/styles/base/_typography.scss +0 -155
- package/src/styles/components/_badge.scss +0 -182
- package/src/styles/components/_bottom-app-bar.scss +0 -103
- package/src/styles/components/_button.scss +0 -224
- package/src/styles/components/_card.scss +0 -401
- package/src/styles/components/_carousel.scss +0 -645
- package/src/styles/components/_checkbox.scss +0 -231
- package/src/styles/components/_chips.scss +0 -638
- package/src/styles/components/_datepicker.scss +0 -358
- package/src/styles/components/_dialog.scss +0 -259
- package/src/styles/components/_divider.scss +0 -57
- package/src/styles/components/_extended-fab.scss +0 -267
- package/src/styles/components/_fab.scss +0 -225
- package/src/styles/components/_list.scss +0 -248
- package/src/styles/components/_menu.scss +0 -242
- package/src/styles/components/_navigation-mobile.scss +0 -244
- package/src/styles/components/_navigation-system.scss +0 -151
- package/src/styles/components/_navigation.scss +0 -407
- package/src/styles/components/_progress.scss +0 -151
- package/src/styles/components/_radios.scss +0 -187
- package/src/styles/components/_search.scss +0 -306
- package/src/styles/components/_segmented-button.scss +0 -227
- package/src/styles/components/_select.scss +0 -272
- package/src/styles/components/_sheet.scss +0 -236
- package/src/styles/components/_slider.scss +0 -489
- package/src/styles/components/_snackbar.scss +0 -211
- package/src/styles/components/_switch.scss +0 -298
- package/src/styles/components/_tabs.scss +0 -416
- package/src/styles/components/_textfield.scss +0 -773
- package/src/styles/components/_timepicker.scss +0 -451
- package/src/styles/components/_tooltip.scss +0 -241
- package/src/styles/components/_top-app-bar.scss +0 -225
- package/src/styles/main.scss +0 -175
- package/src/styles/themes/_autumn.scss +0 -105
- package/src/styles/themes/_base-theme.scss +0 -85
- package/src/styles/themes/_baseline.scss +0 -173
- package/src/styles/themes/_bluekhaki.scss +0 -125
- package/src/styles/themes/_brownbeige.scss +0 -125
- package/src/styles/themes/_browngreen.scss +0 -125
- package/src/styles/themes/_forest.scss +0 -77
- package/src/styles/themes/_greenbeige.scss +0 -125
- package/src/styles/themes/_index.scss +0 -6
- package/src/styles/themes/_material.scss +0 -125
- package/src/styles/themes/_ocean.scss +0 -77
- package/src/styles/themes/_sageivory.scss +0 -125
- package/src/styles/themes/_spring.scss +0 -77
- package/src/styles/themes/_summer.scss +0 -87
- package/src/styles/themes/_sunset.scss +0 -60
- package/src/styles/themes/_tealcaramel.scss +0 -125
- package/src/styles/themes/_winter.scss +0 -77
- package/src/styles/utilities/_colors.scss +0 -154
- package/src/styles/utilities/_flexbox.scss +0 -194
- package/src/styles/utilities/_layout.scss +0 -665
- package/src/styles/utilities/_ripple.scss +0 -79
- package/src/styles/utilities/_spacing.scss +0 -139
- package/src/styles/utilities/_typography.scss +0 -178
- package/src/styles/utilities/_visibility.scss +0 -142
|
@@ -1,397 +0,0 @@
|
|
|
1
|
-
// src/components/datepicker/types.ts
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* DatePicker variant types
|
|
5
|
-
* @category Components
|
|
6
|
-
*/
|
|
7
|
-
export type DatePickerVariant = 'docked' | 'modal' | 'modal-input';
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* DatePicker view types
|
|
11
|
-
* @category Components
|
|
12
|
-
*/
|
|
13
|
-
export type DatePickerView = 'day' | 'month' | 'year';
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* DatePicker selection mode types
|
|
17
|
-
* @category Components
|
|
18
|
-
*/
|
|
19
|
-
export type DatePickerSelectionMode = 'single' | 'range';
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* Day names for the calendar
|
|
23
|
-
* @internal
|
|
24
|
-
*/
|
|
25
|
-
export const DAY_NAMES = ['S', 'M', 'T', 'W', 'T', 'F', 'S'];
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
* Month names for the calendar
|
|
29
|
-
* @internal
|
|
30
|
-
*/
|
|
31
|
-
export const MONTH_NAMES = [
|
|
32
|
-
'January', 'February', 'March', 'April',
|
|
33
|
-
'May', 'June', 'July', 'August',
|
|
34
|
-
'September', 'October', 'November', 'December'
|
|
35
|
-
];
|
|
36
|
-
|
|
37
|
-
/**
|
|
38
|
-
* Month names abbreviated
|
|
39
|
-
* @internal
|
|
40
|
-
*/
|
|
41
|
-
export const MONTH_NAMES_SHORT = [
|
|
42
|
-
'Jan', 'Feb', 'Mar', 'Apr',
|
|
43
|
-
'May', 'Jun', 'Jul', 'Aug',
|
|
44
|
-
'Sep', 'Oct', 'Nov', 'Dec'
|
|
45
|
-
];
|
|
46
|
-
|
|
47
|
-
/**
|
|
48
|
-
* Default format for displaying dates
|
|
49
|
-
* @internal
|
|
50
|
-
*/
|
|
51
|
-
export const DEFAULT_DATE_FORMAT = 'MM/DD/YYYY';
|
|
52
|
-
|
|
53
|
-
/**
|
|
54
|
-
* CSS class name for today's date
|
|
55
|
-
* @internal
|
|
56
|
-
*/
|
|
57
|
-
export const TODAY_CLASS = 'today';
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
* CSS class name for selected date
|
|
61
|
-
* @internal
|
|
62
|
-
*/
|
|
63
|
-
export const SELECTED_CLASS = 'selected';
|
|
64
|
-
|
|
65
|
-
/**
|
|
66
|
-
* CSS class name for dates outside the current month
|
|
67
|
-
* @internal
|
|
68
|
-
*/
|
|
69
|
-
export const OUTSIDE_MONTH_CLASS = 'outside-month';
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* CSS class for the first date in a range
|
|
73
|
-
* @internal
|
|
74
|
-
*/
|
|
75
|
-
export const RANGE_START_CLASS = 'range-start';
|
|
76
|
-
|
|
77
|
-
/**
|
|
78
|
-
* CSS class for the last date in a range
|
|
79
|
-
* @internal
|
|
80
|
-
*/
|
|
81
|
-
export const RANGE_END_CLASS = 'range-end';
|
|
82
|
-
|
|
83
|
-
/**
|
|
84
|
-
* CSS class for dates between start and end in a range
|
|
85
|
-
* @internal
|
|
86
|
-
*/
|
|
87
|
-
export const RANGE_MIDDLE_CLASS = 'range-middle';
|
|
88
|
-
|
|
89
|
-
/**
|
|
90
|
-
* Configuration interface for the DatePicker component
|
|
91
|
-
* @category Components
|
|
92
|
-
*/
|
|
93
|
-
export interface DatePickerConfig {
|
|
94
|
-
/**
|
|
95
|
-
* DatePicker variant that determines display style
|
|
96
|
-
* @default 'docked'
|
|
97
|
-
*/
|
|
98
|
-
variant?: DatePickerVariant | string;
|
|
99
|
-
|
|
100
|
-
/**
|
|
101
|
-
* Whether the datepicker is initially disabled
|
|
102
|
-
* @default false
|
|
103
|
-
*/
|
|
104
|
-
disabled?: boolean;
|
|
105
|
-
|
|
106
|
-
/**
|
|
107
|
-
* Initial view to display (day, month, year)
|
|
108
|
-
* @default 'day'
|
|
109
|
-
*/
|
|
110
|
-
initialView?: DatePickerView | string;
|
|
111
|
-
|
|
112
|
-
/**
|
|
113
|
-
* Selection mode for the datepicker (single or range)
|
|
114
|
-
* @default 'single'
|
|
115
|
-
*/
|
|
116
|
-
selectionMode?: DatePickerSelectionMode | string;
|
|
117
|
-
|
|
118
|
-
/**
|
|
119
|
-
* Initial selected date(s)
|
|
120
|
-
* Accepts a Date object, Date string, or two dates for range selection
|
|
121
|
-
*/
|
|
122
|
-
value?: Date | string | [Date | string, Date | string];
|
|
123
|
-
|
|
124
|
-
/**
|
|
125
|
-
* Minimum selectable date
|
|
126
|
-
*/
|
|
127
|
-
minDate?: Date | string;
|
|
128
|
-
|
|
129
|
-
/**
|
|
130
|
-
* Maximum selectable date
|
|
131
|
-
*/
|
|
132
|
-
maxDate?: Date | string;
|
|
133
|
-
|
|
134
|
-
/**
|
|
135
|
-
* Format for displaying dates
|
|
136
|
-
* @default 'MM/DD/YYYY'
|
|
137
|
-
*/
|
|
138
|
-
dateFormat?: string;
|
|
139
|
-
|
|
140
|
-
/**
|
|
141
|
-
* Label text for the datepicker
|
|
142
|
-
* @example 'Select Date'
|
|
143
|
-
*/
|
|
144
|
-
label?: string;
|
|
145
|
-
|
|
146
|
-
/**
|
|
147
|
-
* Placeholder text for the input field
|
|
148
|
-
* @example 'MM/DD/YYYY'
|
|
149
|
-
*/
|
|
150
|
-
placeholder?: string;
|
|
151
|
-
|
|
152
|
-
/**
|
|
153
|
-
* Additional CSS classes to add to the datepicker
|
|
154
|
-
* @example 'form-field event-date'
|
|
155
|
-
*/
|
|
156
|
-
class?: string;
|
|
157
|
-
|
|
158
|
-
/**
|
|
159
|
-
* Component prefix for class names
|
|
160
|
-
* @default 'mtrl'
|
|
161
|
-
*/
|
|
162
|
-
prefix?: string;
|
|
163
|
-
|
|
164
|
-
/**
|
|
165
|
-
* Component name used in class generation
|
|
166
|
-
*/
|
|
167
|
-
componentName?: string;
|
|
168
|
-
|
|
169
|
-
/**
|
|
170
|
-
* Whether to enable animation effects
|
|
171
|
-
* @default true
|
|
172
|
-
*/
|
|
173
|
-
animate?: boolean;
|
|
174
|
-
|
|
175
|
-
/**
|
|
176
|
-
* Whether to close the picker when a date is selected
|
|
177
|
-
* @default true for modal variants, false for docked
|
|
178
|
-
*/
|
|
179
|
-
closeOnSelect?: boolean;
|
|
180
|
-
|
|
181
|
-
/**
|
|
182
|
-
* Array of dates to highlight or disable
|
|
183
|
-
*/
|
|
184
|
-
specialDates?: Array<{
|
|
185
|
-
date: Date | string;
|
|
186
|
-
highlight?: boolean;
|
|
187
|
-
disabled?: boolean;
|
|
188
|
-
tooltip?: string;
|
|
189
|
-
}>;
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
/**
|
|
193
|
-
* Date object with additional properties for rendering
|
|
194
|
-
* @internal
|
|
195
|
-
*/
|
|
196
|
-
export interface CalendarDate {
|
|
197
|
-
/** JavaScript Date object */
|
|
198
|
-
date: Date;
|
|
199
|
-
|
|
200
|
-
/** Day of the month (1-31) */
|
|
201
|
-
day: number;
|
|
202
|
-
|
|
203
|
-
/** Whether the date is in the current month being displayed */
|
|
204
|
-
isCurrentMonth: boolean;
|
|
205
|
-
|
|
206
|
-
/** Whether the date is today */
|
|
207
|
-
isToday: boolean;
|
|
208
|
-
|
|
209
|
-
/** Whether the date is selected */
|
|
210
|
-
isSelected: boolean;
|
|
211
|
-
|
|
212
|
-
/** Whether the date is disabled */
|
|
213
|
-
isDisabled: boolean;
|
|
214
|
-
|
|
215
|
-
/** Whether the date is the first date in a range */
|
|
216
|
-
isRangeStart?: boolean;
|
|
217
|
-
|
|
218
|
-
/** Whether the date is the last date in a range */
|
|
219
|
-
isRangeEnd?: boolean;
|
|
220
|
-
|
|
221
|
-
/** Whether the date is between start and end in a range */
|
|
222
|
-
isRangeMiddle?: boolean;
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
/**
|
|
226
|
-
* Calendar API interface for managing calendar navigation
|
|
227
|
-
* @category Components
|
|
228
|
-
*/
|
|
229
|
-
export interface CalendarAPI {
|
|
230
|
-
/** Updates the calendar view to display a specific month/year */
|
|
231
|
-
goToDate: (date: Date) => void;
|
|
232
|
-
|
|
233
|
-
/** Moves to the next month */
|
|
234
|
-
nextMonth: () => void;
|
|
235
|
-
|
|
236
|
-
/** Moves to the previous month */
|
|
237
|
-
prevMonth: () => void;
|
|
238
|
-
|
|
239
|
-
/** Moves to the next year */
|
|
240
|
-
nextYear: () => void;
|
|
241
|
-
|
|
242
|
-
/** Moves to the previous year */
|
|
243
|
-
prevYear: () => void;
|
|
244
|
-
|
|
245
|
-
/** Switches to day selection view */
|
|
246
|
-
showDayView: () => void;
|
|
247
|
-
|
|
248
|
-
/** Switches to month selection view */
|
|
249
|
-
showMonthView: () => void;
|
|
250
|
-
|
|
251
|
-
/** Switches to year selection view */
|
|
252
|
-
showYearView: () => void;
|
|
253
|
-
|
|
254
|
-
/** Gets the current calendar view */
|
|
255
|
-
getCurrentView: () => string;
|
|
256
|
-
}
|
|
257
|
-
|
|
258
|
-
/**
|
|
259
|
-
* DatePicker component interface
|
|
260
|
-
* @category Components
|
|
261
|
-
*/
|
|
262
|
-
export interface DatePickerComponent {
|
|
263
|
-
/** The datepicker's main DOM element */
|
|
264
|
-
element: HTMLElement;
|
|
265
|
-
|
|
266
|
-
/** The input field DOM element */
|
|
267
|
-
input: HTMLInputElement;
|
|
268
|
-
|
|
269
|
-
/** API for managing calendar and selected dates */
|
|
270
|
-
calendar: CalendarAPI;
|
|
271
|
-
|
|
272
|
-
/** API for managing disabled state */
|
|
273
|
-
disabled: {
|
|
274
|
-
/** Enables the datepicker */
|
|
275
|
-
enable: () => void;
|
|
276
|
-
/** Disables the datepicker */
|
|
277
|
-
disable: () => void;
|
|
278
|
-
/** Checks if the datepicker is disabled */
|
|
279
|
-
isDisabled: () => boolean;
|
|
280
|
-
};
|
|
281
|
-
|
|
282
|
-
/** API for managing component lifecycle */
|
|
283
|
-
lifecycle: {
|
|
284
|
-
/** Destroys the component and cleans up resources */
|
|
285
|
-
destroy: () => void;
|
|
286
|
-
};
|
|
287
|
-
|
|
288
|
-
/**
|
|
289
|
-
* Gets a class name with the component's prefix
|
|
290
|
-
* @param name - Base class name
|
|
291
|
-
* @returns Prefixed class name
|
|
292
|
-
*/
|
|
293
|
-
getClass: (name: string) => string;
|
|
294
|
-
|
|
295
|
-
/**
|
|
296
|
-
* Opens the datepicker dropdown/modal
|
|
297
|
-
* @returns The datepicker component for chaining
|
|
298
|
-
*/
|
|
299
|
-
open: () => DatePickerComponent;
|
|
300
|
-
|
|
301
|
-
/**
|
|
302
|
-
* Closes the datepicker dropdown/modal
|
|
303
|
-
* @returns The datepicker component for chaining
|
|
304
|
-
*/
|
|
305
|
-
close: () => DatePickerComponent;
|
|
306
|
-
|
|
307
|
-
/**
|
|
308
|
-
* Gets the selected date(s)
|
|
309
|
-
* @returns Date object, array of two Date objects for range, or null if none selected
|
|
310
|
-
*/
|
|
311
|
-
getValue: () => Date | [Date, Date] | null;
|
|
312
|
-
|
|
313
|
-
/**
|
|
314
|
-
* Sets the selected date(s)
|
|
315
|
-
* @param value - Date, string, or array of dates for range selection
|
|
316
|
-
* @returns The datepicker component for chaining
|
|
317
|
-
*/
|
|
318
|
-
setValue: (value: Date | string | [Date | string, Date | string]) => DatePickerComponent;
|
|
319
|
-
|
|
320
|
-
/**
|
|
321
|
-
* Gets the formatted date string based on the selected date(s)
|
|
322
|
-
* @returns Formatted date string or empty string if none selected
|
|
323
|
-
*/
|
|
324
|
-
getFormattedValue: () => string;
|
|
325
|
-
|
|
326
|
-
/**
|
|
327
|
-
* Clears the selected date(s)
|
|
328
|
-
* @returns The datepicker component for chaining
|
|
329
|
-
*/
|
|
330
|
-
clear: () => DatePickerComponent;
|
|
331
|
-
|
|
332
|
-
/**
|
|
333
|
-
* Enables the datepicker
|
|
334
|
-
* @returns The datepicker component for chaining
|
|
335
|
-
*/
|
|
336
|
-
enable: () => DatePickerComponent;
|
|
337
|
-
|
|
338
|
-
/**
|
|
339
|
-
* Disables the datepicker
|
|
340
|
-
* @returns The datepicker component for chaining
|
|
341
|
-
*/
|
|
342
|
-
disable: () => DatePickerComponent;
|
|
343
|
-
|
|
344
|
-
/**
|
|
345
|
-
* Sets the minimum selectable date
|
|
346
|
-
* @param date - Date object or string
|
|
347
|
-
* @returns The datepicker component for chaining
|
|
348
|
-
*/
|
|
349
|
-
setMinDate: (date: Date | string) => DatePickerComponent;
|
|
350
|
-
|
|
351
|
-
/**
|
|
352
|
-
* Sets the maximum selectable date
|
|
353
|
-
* @param date - Date object or string
|
|
354
|
-
* @returns The datepicker component for chaining
|
|
355
|
-
*/
|
|
356
|
-
setMaxDate: (date: Date | string) => DatePickerComponent;
|
|
357
|
-
|
|
358
|
-
/**
|
|
359
|
-
* Destroys the datepicker component and cleans up resources
|
|
360
|
-
*/
|
|
361
|
-
destroy: () => void;
|
|
362
|
-
|
|
363
|
-
/**
|
|
364
|
-
* Adds an event listener to the datepicker
|
|
365
|
-
* @param event - Event name ('change', 'open', 'close', etc.)
|
|
366
|
-
* @param handler - Event handler function
|
|
367
|
-
* @returns The datepicker component for chaining
|
|
368
|
-
*/
|
|
369
|
-
on: (event: string, handler: Function) => DatePickerComponent;
|
|
370
|
-
|
|
371
|
-
/**
|
|
372
|
-
* Removes an event listener from the datepicker
|
|
373
|
-
* @param event - Event name
|
|
374
|
-
* @param handler - Event handler function
|
|
375
|
-
* @returns The datepicker component for chaining
|
|
376
|
-
*/
|
|
377
|
-
off: (event: string, handler: Function) => DatePickerComponent;
|
|
378
|
-
}
|
|
379
|
-
|
|
380
|
-
/**
|
|
381
|
-
* API options interface for withAPI function
|
|
382
|
-
* @internal
|
|
383
|
-
*/
|
|
384
|
-
export interface ApiOptions {
|
|
385
|
-
disabled: {
|
|
386
|
-
enable: () => void;
|
|
387
|
-
disable: () => void;
|
|
388
|
-
};
|
|
389
|
-
lifecycle: {
|
|
390
|
-
destroy: () => void;
|
|
391
|
-
};
|
|
392
|
-
events: {
|
|
393
|
-
on: (event: string, handler: Function) => any;
|
|
394
|
-
off: (event: string, handler: Function) => any;
|
|
395
|
-
emit: (event: string, data: any) => any;
|
|
396
|
-
};
|
|
397
|
-
}
|
|
@@ -1,289 +0,0 @@
|
|
|
1
|
-
// src/components/datepicker/utils.ts
|
|
2
|
-
import { CalendarDate, MONTH_NAMES, MONTH_NAMES_SHORT } from './types';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Parses a date from various input types
|
|
6
|
-
* @param date - Date string, Date object, or null
|
|
7
|
-
* @returns Valid Date object or null if invalid
|
|
8
|
-
*/
|
|
9
|
-
export const parseDate = (date: Date | string | null): Date | null => {
|
|
10
|
-
if (!date) return null;
|
|
11
|
-
|
|
12
|
-
// Already a Date object
|
|
13
|
-
if (date instanceof Date) {
|
|
14
|
-
return isNaN(date.getTime()) ? null : date;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
// String date
|
|
18
|
-
if (typeof date === 'string') {
|
|
19
|
-
// Try to parse the string
|
|
20
|
-
const parsedDate = new Date(date);
|
|
21
|
-
return isNaN(parsedDate.getTime()) ? null : parsedDate;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
return null;
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
* Formats a date according to the specified format using a parser-based approach
|
|
29
|
-
* This avoids string replacement issues by building the output string from scratch
|
|
30
|
-
*
|
|
31
|
-
* @param date - Date to format
|
|
32
|
-
* @param format - Format string (MM/DD/YYYY, etc.)
|
|
33
|
-
* @returns Formatted date string
|
|
34
|
-
*/
|
|
35
|
-
export const formatDate = (date: Date | null, format: string = 'MM/DD/YYYY'): string => {
|
|
36
|
-
if (!date || !(date instanceof Date) || isNaN(date.getTime())) {
|
|
37
|
-
return '';
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
let result = '';
|
|
41
|
-
let i = 0;
|
|
42
|
-
|
|
43
|
-
while (i < format.length) {
|
|
44
|
-
// Check for month name patterns
|
|
45
|
-
if (format.substring(i, i+4) === 'MMMM') {
|
|
46
|
-
// Full month name
|
|
47
|
-
result += MONTH_NAMES[date.getMonth()];
|
|
48
|
-
i += 4;
|
|
49
|
-
}
|
|
50
|
-
else if (format.substring(i, i+3) === 'MMM') {
|
|
51
|
-
// Abbreviated month name
|
|
52
|
-
result += MONTH_NAMES_SHORT[date.getMonth()];
|
|
53
|
-
i += 3;
|
|
54
|
-
}
|
|
55
|
-
else if (format.substring(i, i+2) === 'MM') {
|
|
56
|
-
// Two-digit month
|
|
57
|
-
result += (date.getMonth() + 1).toString().padStart(2, '0');
|
|
58
|
-
i += 2;
|
|
59
|
-
}
|
|
60
|
-
else if (format.substring(i, i+1) === 'M') {
|
|
61
|
-
// Single-digit month
|
|
62
|
-
result += (date.getMonth() + 1);
|
|
63
|
-
i += 1;
|
|
64
|
-
}
|
|
65
|
-
else if (format.substring(i, i+4) === 'YYYY') {
|
|
66
|
-
// 4-digit year
|
|
67
|
-
result += date.getFullYear();
|
|
68
|
-
i += 4;
|
|
69
|
-
}
|
|
70
|
-
else if (format.substring(i, i+2) === 'YY') {
|
|
71
|
-
// 2-digit year
|
|
72
|
-
result += date.getFullYear().toString().slice(-2);
|
|
73
|
-
i += 2;
|
|
74
|
-
}
|
|
75
|
-
else if (format.substring(i, i+2) === 'DD') {
|
|
76
|
-
// Two-digit day
|
|
77
|
-
result += date.getDate().toString().padStart(2, '0');
|
|
78
|
-
i += 2;
|
|
79
|
-
}
|
|
80
|
-
else if (format.substring(i, i+1) === 'D') {
|
|
81
|
-
// Single-digit day
|
|
82
|
-
result += date.getDate();
|
|
83
|
-
i += 1;
|
|
84
|
-
}
|
|
85
|
-
else {
|
|
86
|
-
// Any other character is copied as-is
|
|
87
|
-
result += format[i];
|
|
88
|
-
i += 1;
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
return result;
|
|
93
|
-
};
|
|
94
|
-
|
|
95
|
-
/**
|
|
96
|
-
* Gets the days in a month
|
|
97
|
-
* @param year - Year
|
|
98
|
-
* @param month - Month (0-11)
|
|
99
|
-
* @returns Number of days in the month
|
|
100
|
-
*/
|
|
101
|
-
export const getDaysInMonth = (year: number, month: number): number => {
|
|
102
|
-
return new Date(year, month + 1, 0).getDate();
|
|
103
|
-
};
|
|
104
|
-
|
|
105
|
-
/**
|
|
106
|
-
* Gets the first day of the month
|
|
107
|
-
* @param year - Year
|
|
108
|
-
* @param month - Month (0-11)
|
|
109
|
-
* @returns Day of the week (0-6, where 0 is Sunday)
|
|
110
|
-
*/
|
|
111
|
-
export const getFirstDayOfMonth = (year: number, month: number): number => {
|
|
112
|
-
return new Date(year, month, 1).getDay();
|
|
113
|
-
};
|
|
114
|
-
|
|
115
|
-
/**
|
|
116
|
-
* Checks if two dates are the same day
|
|
117
|
-
* @param date1 - First date
|
|
118
|
-
* @param date2 - Second date
|
|
119
|
-
* @returns True if same day, false otherwise
|
|
120
|
-
*/
|
|
121
|
-
export const isSameDay = (date1: Date, date2: Date): boolean => {
|
|
122
|
-
return (
|
|
123
|
-
date1.getDate() === date2.getDate() &&
|
|
124
|
-
date1.getMonth() === date2.getMonth() &&
|
|
125
|
-
date1.getFullYear() === date2.getFullYear()
|
|
126
|
-
);
|
|
127
|
-
};
|
|
128
|
-
|
|
129
|
-
/**
|
|
130
|
-
* Checks if a date is between two other dates (inclusive)
|
|
131
|
-
* @param date - Date to check
|
|
132
|
-
* @param startDate - Start date
|
|
133
|
-
* @param endDate - End date
|
|
134
|
-
* @returns True if date is between start and end, false otherwise
|
|
135
|
-
*/
|
|
136
|
-
export const isDateInRange = (date: Date, startDate: Date, endDate: Date): boolean => {
|
|
137
|
-
const timestamp = date.getTime();
|
|
138
|
-
return timestamp >= startDate.getTime() && timestamp <= endDate.getTime();
|
|
139
|
-
};
|
|
140
|
-
|
|
141
|
-
/**
|
|
142
|
-
* Generates calendar dates for a month
|
|
143
|
-
* @param year - Year
|
|
144
|
-
* @param month - Month (0-11)
|
|
145
|
-
* @param selectedDate - Currently selected date
|
|
146
|
-
* @param rangeEndDate - End date if range selection
|
|
147
|
-
* @param minDate - Minimum selectable date
|
|
148
|
-
* @param maxDate - Maximum selectable date
|
|
149
|
-
* @returns Array of calendar dates
|
|
150
|
-
*/
|
|
151
|
-
export const generateCalendarDates = (
|
|
152
|
-
year: number,
|
|
153
|
-
month: number,
|
|
154
|
-
selectedDate: Date | null = null,
|
|
155
|
-
rangeEndDate: Date | null = null,
|
|
156
|
-
minDate: Date | null = null,
|
|
157
|
-
maxDate: Date | null = null
|
|
158
|
-
): CalendarDate[] => {
|
|
159
|
-
const today = new Date();
|
|
160
|
-
today.setHours(0, 0, 0, 0);
|
|
161
|
-
|
|
162
|
-
const result: CalendarDate[] = [];
|
|
163
|
-
|
|
164
|
-
// Calculate days needed from previous month
|
|
165
|
-
const firstDay = getFirstDayOfMonth(year, month);
|
|
166
|
-
const daysInPrevMonth = getDaysInMonth(year, month - 1);
|
|
167
|
-
|
|
168
|
-
// Add days from previous month
|
|
169
|
-
for (let i = firstDay - 1; i >= 0; i--) {
|
|
170
|
-
const date = new Date(year, month - 1, daysInPrevMonth - i);
|
|
171
|
-
const isDisabled =
|
|
172
|
-
(minDate && date < minDate) ||
|
|
173
|
-
(maxDate && date > maxDate);
|
|
174
|
-
|
|
175
|
-
result.push({
|
|
176
|
-
date,
|
|
177
|
-
day: date.getDate(),
|
|
178
|
-
isCurrentMonth: false,
|
|
179
|
-
isToday: isSameDay(date, today),
|
|
180
|
-
isSelected: selectedDate ? isSameDay(date, selectedDate) : false,
|
|
181
|
-
isDisabled
|
|
182
|
-
});
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
// Add days from current month
|
|
186
|
-
const daysInMonth = getDaysInMonth(year, month);
|
|
187
|
-
for (let i = 1; i <= daysInMonth; i++) {
|
|
188
|
-
const date = new Date(year, month, i);
|
|
189
|
-
const isSelected = selectedDate ? isSameDay(date, selectedDate) : false;
|
|
190
|
-
const isDisabled =
|
|
191
|
-
(minDate && date < minDate) ||
|
|
192
|
-
(maxDate && date > maxDate);
|
|
193
|
-
|
|
194
|
-
const calendarDate: CalendarDate = {
|
|
195
|
-
date,
|
|
196
|
-
day: i,
|
|
197
|
-
isCurrentMonth: true,
|
|
198
|
-
isToday: isSameDay(date, today),
|
|
199
|
-
isSelected,
|
|
200
|
-
isDisabled
|
|
201
|
-
};
|
|
202
|
-
|
|
203
|
-
// Handle range selection
|
|
204
|
-
if (selectedDate && rangeEndDate) {
|
|
205
|
-
calendarDate.isRangeStart = isSameDay(date, selectedDate);
|
|
206
|
-
calendarDate.isRangeEnd = isSameDay(date, rangeEndDate);
|
|
207
|
-
calendarDate.isRangeMiddle = isDateInRange(date, selectedDate, rangeEndDate) &&
|
|
208
|
-
!calendarDate.isRangeStart && !calendarDate.isRangeEnd;
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
result.push(calendarDate);
|
|
212
|
-
}
|
|
213
|
-
|
|
214
|
-
// Add days from next month to complete the calendar grid (6 rows × 7 columns)
|
|
215
|
-
const totalDaysNeeded = 42; // 6 rows × 7 columns
|
|
216
|
-
const remainingDays = totalDaysNeeded - result.length;
|
|
217
|
-
|
|
218
|
-
for (let i = 1; i <= remainingDays; i++) {
|
|
219
|
-
const date = new Date(year, month + 1, i);
|
|
220
|
-
const isDisabled =
|
|
221
|
-
(minDate && date < minDate) ||
|
|
222
|
-
(maxDate && date > maxDate);
|
|
223
|
-
|
|
224
|
-
result.push({
|
|
225
|
-
date,
|
|
226
|
-
day: i,
|
|
227
|
-
isCurrentMonth: false,
|
|
228
|
-
isToday: isSameDay(date, today),
|
|
229
|
-
isSelected: selectedDate ? isSameDay(date, selectedDate) : false,
|
|
230
|
-
isDisabled
|
|
231
|
-
});
|
|
232
|
-
}
|
|
233
|
-
|
|
234
|
-
return result;
|
|
235
|
-
};
|
|
236
|
-
|
|
237
|
-
/**
|
|
238
|
-
* Generates an array of years for year selection
|
|
239
|
-
* @param currentYear - Center year for the range
|
|
240
|
-
* @param range - Number of years before and after current year
|
|
241
|
-
* @returns Array of years
|
|
242
|
-
*/
|
|
243
|
-
export const generateYearRange = (currentYear: number, range: number = 10): number[] => {
|
|
244
|
-
const years: number[] = [];
|
|
245
|
-
const startYear = currentYear - range;
|
|
246
|
-
const endYear = currentYear + range;
|
|
247
|
-
|
|
248
|
-
for (let year = startYear; year <= endYear; year++) {
|
|
249
|
-
years.push(year);
|
|
250
|
-
}
|
|
251
|
-
|
|
252
|
-
return years;
|
|
253
|
-
};
|
|
254
|
-
|
|
255
|
-
/**
|
|
256
|
-
* Adds days to a date
|
|
257
|
-
* @param date - Base date
|
|
258
|
-
* @param days - Number of days to add
|
|
259
|
-
* @returns New date with days added
|
|
260
|
-
*/
|
|
261
|
-
export const addDays = (date: Date, days: number): Date => {
|
|
262
|
-
const result = new Date(date);
|
|
263
|
-
result.setDate(result.getDate() + days);
|
|
264
|
-
return result;
|
|
265
|
-
};
|
|
266
|
-
|
|
267
|
-
/**
|
|
268
|
-
* Adds months to a date
|
|
269
|
-
* @param date - Base date
|
|
270
|
-
* @param months - Number of months to add
|
|
271
|
-
* @returns New date with months added
|
|
272
|
-
*/
|
|
273
|
-
export const addMonths = (date: Date, months: number): Date => {
|
|
274
|
-
const result = new Date(date);
|
|
275
|
-
result.setMonth(result.getMonth() + months);
|
|
276
|
-
return result;
|
|
277
|
-
};
|
|
278
|
-
|
|
279
|
-
/**
|
|
280
|
-
* Adds years to a date
|
|
281
|
-
* @param date - Base date
|
|
282
|
-
* @param years - Number of years to add
|
|
283
|
-
* @returns New date with years added
|
|
284
|
-
*/
|
|
285
|
-
export const addYears = (date: Date, years: number): Date => {
|
|
286
|
-
const result = new Date(date);
|
|
287
|
-
result.setFullYear(result.getFullYear() + years);
|
|
288
|
-
return result;
|
|
289
|
-
};
|