@rivetjs/cdk 0.0.0-stage → 0.1.0-alpha.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/LICENSE +21 -0
- package/NOTICE +483 -0
- package/README.md +10 -2
- package/_adapters/collection.d.ts +160 -0
- package/_adapters/collection.js +235 -0
- package/_adapters/collections.d.ts +325 -0
- package/_adapters/collections.js +934 -0
- package/_adapters/dom-collection.d.ts +42 -0
- package/_adapters/dom-collection.js +228 -0
- package/_adapters/grid-selection.d.ts +115 -0
- package/_adapters/grid-selection.js +436 -0
- package/_adapters/interactions.d.ts +19 -0
- package/_adapters/interactions.js +45 -0
- package/_adapters/intl.d.ts +8 -0
- package/_adapters/intl.js +106 -0
- package/_adapters/press.d.ts +22 -0
- package/_adapters/press.js +34 -0
- package/_adapters/selectable.d.ts +132 -0
- package/_adapters/selectable.js +599 -0
- package/_adapters/selection.d.ts +109 -0
- package/_adapters/selection.js +685 -0
- package/_adapters/type-select.d.ts +8 -0
- package/_adapters/type-select.js +59 -0
- package/a11y/aria-describer.d.ts +46 -0
- package/a11y/aria-describer.js +169 -0
- package/a11y/focus-monitor.d.ts +98 -0
- package/a11y/focus-monitor.js +321 -0
- package/a11y/focus-trap.d.ts +137 -0
- package/a11y/focus-trap.js +378 -0
- package/a11y/high-contrast.d.ts +26 -0
- package/a11y/high-contrast.js +84 -0
- package/a11y/index.d.ts +37 -0
- package/a11y/index.js +97 -0
- package/a11y/interactivity-checker.d.ts +18 -0
- package/a11y/interactivity-checker.js +126 -0
- package/a11y/key-manager.d.ts +152 -0
- package/a11y/key-manager.js +397 -0
- package/a11y/live-announcer.d.ts +53 -0
- package/a11y/live-announcer.js +143 -0
- package/accordion/index.d.ts +2 -0
- package/accordion/index.jsx +10 -0
- package/announcer/index.d.ts +8 -0
- package/announcer/index.jsx +22 -0
- package/announcer/live-announcer.d.ts +15 -0
- package/announcer/live-announcer.js +123 -0
- package/autocomplete/behaviour.d.ts +94 -0
- package/autocomplete/behaviour.jsx +423 -0
- package/autocomplete/contexts.d.ts +54 -0
- package/autocomplete/contexts.js +28 -0
- package/autocomplete/index.d.ts +12 -0
- package/autocomplete/index.jsx +31 -0
- package/autocomplete/intl.d.ts +2 -0
- package/autocomplete/intl.js +36 -0
- package/bidi/bidi-dir.d.ts +23 -0
- package/bidi/bidi-dir.jsx +36 -0
- package/bidi/index.d.ts +58 -0
- package/bidi/index.js +84 -0
- package/breadcrumbs/behaviour.d.ts +6 -0
- package/breadcrumbs/behaviour.js +17 -0
- package/breadcrumbs/index.d.ts +68 -0
- package/breadcrumbs/index.jsx +224 -0
- package/breadcrumbs/intl.d.ts +3 -0
- package/breadcrumbs/intl.js +104 -0
- package/button/behaviour.d.ts +61 -0
- package/button/behaviour.js +90 -0
- package/button/index.d.ts +38 -0
- package/button/index.jsx +374 -0
- package/button/press.d.ts +25 -0
- package/button/press.js +54 -0
- package/calendar/behaviour.d.ts +250 -0
- package/calendar/behaviour.jsx +939 -0
- package/calendar/index.d.ts +157 -0
- package/calendar/index.jsx +484 -0
- package/calendar/intl.d.ts +3 -0
- package/calendar/intl.js +36 -0
- package/carousel/behaviour.d.ts +50 -0
- package/carousel/behaviour.jsx +365 -0
- package/carousel/engine/Alignment.d.ts +5 -0
- package/carousel/engine/Alignment.js +24 -0
- package/carousel/engine/Animations.d.ts +13 -0
- package/carousel/engine/Animations.js +28 -0
- package/carousel/engine/Axis.d.ts +14 -0
- package/carousel/engine/Axis.js +35 -0
- package/carousel/engine/Counter.d.ts +7 -0
- package/carousel/engine/Counter.js +32 -0
- package/carousel/engine/DragHandler.d.ts +22 -0
- package/carousel/engine/DragHandler.js +141 -0
- package/carousel/engine/DragTracker.d.ts +10 -0
- package/carousel/engine/DragTracker.js +29 -0
- package/carousel/engine/EmblaCarousel.d.ts +32 -0
- package/carousel/engine/EmblaCarousel.js +177 -0
- package/carousel/engine/Engine.d.ts +64 -0
- package/carousel/engine/Engine.js +137 -0
- package/carousel/engine/EventHandler.d.ts +27 -0
- package/carousel/engine/EventHandler.js +33 -0
- package/carousel/engine/EventStore.d.ts +9 -0
- package/carousel/engine/EventStore.js +25 -0
- package/carousel/engine/NodeRects.d.ts +12 -0
- package/carousel/engine/NodeRects.js +18 -0
- package/carousel/engine/Options.d.ts +40 -0
- package/carousel/engine/Options.js +22 -0
- package/carousel/engine/OptionsHandler.d.ts +10 -0
- package/carousel/engine/OptionsHandler.js +26 -0
- package/carousel/engine/PercentOfView.d.ts +4 -0
- package/carousel/engine/PercentOfView.js +9 -0
- package/carousel/engine/Plugins.d.ts +16 -0
- package/carousel/engine/Plugins.js +1 -0
- package/carousel/engine/PluginsHandler.d.ts +8 -0
- package/carousel/engine/PluginsHandler.js +16 -0
- package/carousel/engine/ResizeHandler.d.ts +13 -0
- package/carousel/engine/ResizeHandler.js +51 -0
- package/carousel/engine/ScrollBounds.d.ts +10 -0
- package/carousel/engine/ScrollBounds.js +41 -0
- package/carousel/engine/ScrollContain.d.ts +7 -0
- package/carousel/engine/ScrollContain.js +52 -0
- package/carousel/engine/ScrollLimit.d.ts +5 -0
- package/carousel/engine/ScrollLimit.js +13 -0
- package/carousel/engine/ScrollLooper.d.ts +6 -0
- package/carousel/engine/ScrollLooper.js +26 -0
- package/carousel/engine/ScrollProgress.d.ts +5 -0
- package/carousel/engine/ScrollProgress.js +11 -0
- package/carousel/engine/ScrollSnaps.d.ts +9 -0
- package/carousel/engine/ScrollSnaps.js +26 -0
- package/carousel/engine/ScrollTarget.d.ts +12 -0
- package/carousel/engine/ScrollTarget.js +47 -0
- package/carousel/engine/ScrollTo.d.ts +11 -0
- package/carousel/engine/ScrollTo.js +36 -0
- package/carousel/engine/SlideFocus.d.ts +13 -0
- package/carousel/engine/SlideFocus.js +39 -0
- package/carousel/engine/SlideLooper.d.ts +18 -0
- package/carousel/engine/SlideLooper.js +78 -0
- package/carousel/engine/SlideRegistry.d.ts +7 -0
- package/carousel/engine/SlideRegistry.js +31 -0
- package/carousel/engine/SlideSizes.d.ts +10 -0
- package/carousel/engine/SlideSizes.js +41 -0
- package/carousel/engine/SlidesHandler.d.ts +10 -0
- package/carousel/engine/SlidesHandler.js +36 -0
- package/carousel/engine/SlidesInView.d.ts +8 -0
- package/carousel/engine/SlidesInView.js +59 -0
- package/carousel/engine/SlidesToScroll.d.ts +7 -0
- package/carousel/engine/SlidesToScroll.js +41 -0
- package/carousel/engine/Translate.d.ts +7 -0
- package/carousel/engine/Translate.js +38 -0
- package/carousel/engine/index.d.ts +11 -0
- package/carousel/engine/index.js +1 -0
- package/carousel/engine/utils.d.ts +15 -0
- package/carousel/engine/utils.js +45 -0
- package/carousel/index.d.ts +202 -0
- package/carousel/index.jsx +469 -0
- package/carousel/plugins/auto-height/AutoHeight.d.ts +14 -0
- package/carousel/plugins/auto-height/AutoHeight.js +43 -0
- package/carousel/plugins/auto-height/Options.d.ts +2 -0
- package/carousel/plugins/auto-height/Options.js +1 -0
- package/carousel/plugins/auto-height/index.d.ts +2 -0
- package/carousel/plugins/auto-height/index.js +1 -0
- package/carousel/plugins/auto-scroll/AutoScroll.d.ts +25 -0
- package/carousel/plugins/auto-scroll/AutoScroll.js +185 -0
- package/carousel/plugins/auto-scroll/Options.d.ts +13 -0
- package/carousel/plugins/auto-scroll/Options.js +12 -0
- package/carousel/plugins/auto-scroll/index.d.ts +2 -0
- package/carousel/plugins/auto-scroll/index.js +1 -0
- package/carousel/plugins/auto-scroll/utils.d.ts +3 -0
- package/carousel/plugins/auto-scroll/utils.js +4 -0
- package/carousel/plugins/autoplay/Autoplay.d.ts +29 -0
- package/carousel/plugins/autoplay/Autoplay.js +173 -0
- package/carousel/plugins/autoplay/Options.d.ts +14 -0
- package/carousel/plugins/autoplay/Options.js +12 -0
- package/carousel/plugins/autoplay/index.d.ts +2 -0
- package/carousel/plugins/autoplay/index.js +1 -0
- package/carousel/plugins/autoplay/utils.d.ts +4 -0
- package/carousel/plugins/autoplay/utils.js +11 -0
- package/carousel/plugins/class-names/ClassNames.d.ts +14 -0
- package/carousel/plugins/class-names/ClassNames.js +98 -0
- package/carousel/plugins/class-names/Options.d.ts +13 -0
- package/carousel/plugins/class-names/Options.js +9 -0
- package/carousel/plugins/class-names/index.d.ts +2 -0
- package/carousel/plugins/class-names/index.js +1 -0
- package/carousel/plugins/class-names/utils.d.ts +4 -0
- package/carousel/plugins/class-names/utils.js +14 -0
- package/carousel/plugins/fade/Fade.d.ts +14 -0
- package/carousel/plugins/fade/Fade.js +199 -0
- package/carousel/plugins/fade/Options.d.ts +2 -0
- package/carousel/plugins/fade/Options.js +1 -0
- package/carousel/plugins/fade/index.d.ts +2 -0
- package/carousel/plugins/fade/index.js +1 -0
- package/carousel/plugins/fade/utils.d.ts +2 -0
- package/carousel/plugins/fade/utils.js +8 -0
- package/carousel/state.d.ts +81 -0
- package/carousel/state.js +71 -0
- package/chat/index.d.ts +83 -0
- package/chat/index.jsx +287 -0
- package/checkbox/behaviour.d.ts +172 -0
- package/checkbox/behaviour.jsx +412 -0
- package/checkbox/index.d.ts +168 -0
- package/checkbox/index.jsx +310 -0
- package/clipboard/index.d.ts +49 -0
- package/clipboard/index.js +136 -0
- package/coercion/index.d.ts +36 -0
- package/coercion/index.js +58 -0
- package/collections/base.d.ts +115 -0
- package/collections/base.js +346 -0
- package/collections/builder.d.ts +44 -0
- package/collections/builder.js +283 -0
- package/collections/components.d.ts +217 -0
- package/collections/components.jsx +537 -0
- package/collections/data-source.d.ts +26 -0
- package/collections/data-source.js +27 -0
- package/collections/dom.d.ts +34 -0
- package/collections/dom.js +127 -0
- package/collections/grid.d.ts +45 -0
- package/collections/grid.js +125 -0
- package/collections/hidden.d.ts +4 -0
- package/collections/hidden.js +12 -0
- package/collections/index.d.ts +45 -0
- package/collections/index.js +105 -0
- package/collections/list-state.d.ts +99 -0
- package/collections/list-state.js +156 -0
- package/collections/list.d.ts +20 -0
- package/collections/list.js +77 -0
- package/collections/nodes.d.ts +9 -0
- package/collections/nodes.js +81 -0
- package/collections/selection-model.d.ts +93 -0
- package/collections/selection-model.js +192 -0
- package/collections/server-dev.d.ts +5 -0
- package/collections/server-dev.js +16 -0
- package/collections/server-off.d.ts +5 -0
- package/collections/server-off.js +7 -0
- package/collections/server-on.d.ts +28 -0
- package/collections/server-on.jsx +76 -0
- package/collections/table.d.ts +114 -0
- package/collections/table.js +439 -0
- package/collections/tree-state.d.ts +47 -0
- package/collections/tree-state.js +73 -0
- package/collections/tree.d.ts +20 -0
- package/collections/tree.js +66 -0
- package/collections/types.d.ts +229 -0
- package/collections/types.js +4 -0
- package/collections/unique-selection-dispatcher.d.ts +10 -0
- package/collections/unique-selection-dispatcher.js +25 -0
- package/color/area-state.d.ts +99 -0
- package/color/area-state.js +160 -0
- package/color/aria-intl.d.ts +3 -0
- package/color/aria-intl.js +274 -0
- package/color/channel-field-state.d.ts +50 -0
- package/color/channel-field-state.jsx +87 -0
- package/color/color.d.ts +78 -0
- package/color/color.js +738 -0
- package/color/field-state.d.ts +66 -0
- package/color/field-state.jsx +159 -0
- package/color/index.d.ts +58 -0
- package/color/index.js +88 -0
- package/color/intl.d.ts +3 -0
- package/color/intl.js +1328 -0
- package/color/picker-state.d.ts +20 -0
- package/color/picker-state.js +19 -0
- package/color/slider-state.d.ts +78 -0
- package/color/slider-state.jsx +98 -0
- package/color/value.d.ts +27 -0
- package/color/value.js +36 -0
- package/color/wheel-state.d.ts +77 -0
- package/color/wheel-state.js +152 -0
- package/color-area/behaviour.d.ts +161 -0
- package/color-area/behaviour.jsx +454 -0
- package/color-area/index.d.ts +34 -0
- package/color-area/index.jsx +187 -0
- package/color-field/behaviour.d.ts +112 -0
- package/color-field/behaviour.jsx +262 -0
- package/color-field/index.d.ts +72 -0
- package/color-field/index.jsx +309 -0
- package/color-picker/index.d.ts +19 -0
- package/color-picker/index.jsx +49 -0
- package/color-slider/behaviour.d.ts +103 -0
- package/color-slider/behaviour.jsx +234 -0
- package/color-slider/index.d.ts +40 -0
- package/color-slider/index.jsx +162 -0
- package/color-swatch/behaviour.d.ts +40 -0
- package/color-swatch/behaviour.js +36 -0
- package/color-swatch/index.d.ts +29 -0
- package/color-swatch/index.jsx +82 -0
- package/color-swatch-picker/index.d.ts +62 -0
- package/color-swatch-picker/index.jsx +95 -0
- package/color-swatch-picker/intl.d.ts +3 -0
- package/color-swatch-picker/intl.js +104 -0
- package/color-thumb/index.d.ts +85 -0
- package/color-thumb/index.jsx +93 -0
- package/color-wheel/behaviour.d.ts +123 -0
- package/color-wheel/behaviour.jsx +301 -0
- package/color-wheel/index.d.ts +50 -0
- package/color-wheel/index.jsx +166 -0
- package/combobox/behaviour.d.ts +120 -0
- package/combobox/behaviour.jsx +588 -0
- package/combobox/index.d.ts +101 -0
- package/combobox/index.jsx +365 -0
- package/combobox/intl.d.ts +2 -0
- package/combobox/intl.js +240 -0
- package/compare/behaviour.d.ts +101 -0
- package/compare/behaviour.js +288 -0
- package/compare/index.d.ts +58 -0
- package/compare/index.jsx +129 -0
- package/data/async-list.d.ts +78 -0
- package/data/async-list.jsx +257 -0
- package/data/index.d.ts +3 -0
- package/data/index.jsx +6 -0
- package/data/list-data.d.ts +88 -0
- package/data/list-data.jsx +210 -0
- package/data/tree-data.d.ts +59 -0
- package/data/tree-data.jsx +278 -0
- package/data-grid/behaviour.d.ts +95 -0
- package/data-grid/behaviour.js +725 -0
- package/data-grid/index.d.ts +138 -0
- package/data-grid/index.jsx +452 -0
- package/data-grid/state.d.ts +131 -0
- package/data-grid/state.js +288 -0
- package/date/CalendarDate.d.ts +207 -0
- package/date/CalendarDate.js +374 -0
- package/date/DateFormatter.d.ts +24 -0
- package/date/DateFormatter.js +175 -0
- package/date/calendars/BuddhistCalendar.d.ts +16 -0
- package/date/calendars/BuddhistCalendar.js +46 -0
- package/date/calendars/EthiopicCalendar.d.ts +45 -0
- package/date/calendars/EthiopicCalendar.js +178 -0
- package/date/calendars/GregorianCalendar.d.ts +26 -0
- package/date/calendars/GregorianCalendar.js +122 -0
- package/date/calendars/HebrewCalendar.d.ts +21 -0
- package/date/calendars/HebrewCalendar.js +174 -0
- package/date/calendars/IndianCalendar.d.ts +17 -0
- package/date/calendars/IndianCalendar.js +111 -0
- package/date/calendars/IslamicCalendar.d.ts +51 -0
- package/date/calendars/IslamicCalendar.js +205 -0
- package/date/calendars/JapaneseCalendar.d.ts +22 -0
- package/date/calendars/JapaneseCalendar.js +148 -0
- package/date/calendars/PersianCalendar.d.ts +19 -0
- package/date/calendars/PersianCalendar.js +85 -0
- package/date/calendars/TaiwanCalendar.d.ts +19 -0
- package/date/calendars/TaiwanCalendar.js +70 -0
- package/date/conversion.d.ts +45 -0
- package/date/conversion.js +269 -0
- package/date/createCalendar.d.ts +3 -0
- package/date/createCalendar.js +55 -0
- package/date/index.d.ts +20 -0
- package/date/index.js +30 -0
- package/date/manipulation.d.ts +25 -0
- package/date/manipulation.js +399 -0
- package/date/queries.d.ts +93 -0
- package/date/queries.js +303 -0
- package/date/serialize.d.ts +18 -0
- package/date/serialize.js +55 -0
- package/date/string.d.ts +36 -0
- package/date/string.js +223 -0
- package/date/types.d.ts +136 -0
- package/date/types.js +14 -0
- package/date/utils.d.ts +4 -0
- package/date/utils.js +16 -0
- package/date/weekStartData.d.ts +1 -0
- package/date/weekStartData.js +112 -0
- package/date-field/behaviour.d.ts +188 -0
- package/date-field/behaviour.jsx +1025 -0
- package/date-field/index.d.ts +150 -0
- package/date-field/index.jsx +354 -0
- package/date-field/intl.d.ts +3 -0
- package/date-field/intl.js +36 -0
- package/date-field/live-value.d.ts +22 -0
- package/date-field/live-value.jsx +44 -0
- package/date-picker/behaviour.d.ts +95 -0
- package/date-picker/behaviour.jsx +343 -0
- package/date-picker/index.d.ts +66 -0
- package/date-picker/index.jsx +243 -0
- package/dialog/behaviour.d.ts +63 -0
- package/dialog/behaviour.jsx +90 -0
- package/dialog/contexts.d.ts +12 -0
- package/dialog/contexts.js +8 -0
- package/dialog/index.d.ts +48 -0
- package/dialog/index.jsx +301 -0
- package/disclosure/behaviour.d.ts +50 -0
- package/disclosure/behaviour.jsx +128 -0
- package/disclosure/details.d.ts +21 -0
- package/disclosure/details.jsx +14 -0
- package/disclosure/index.d.ts +92 -0
- package/disclosure/index.jsx +300 -0
- package/drag-drop/cdk-index.d.ts +22 -0
- package/drag-drop/cdk-index.jsx +25 -0
- package/drag-drop/directives/assertions.d.ts +6 -0
- package/drag-drop/directives/assertions.js +13 -0
- package/drag-drop/directives/config.d.ts +30 -0
- package/drag-drop/directives/config.js +7 -0
- package/drag-drop/directives/drag-handle.d.ts +10 -0
- package/drag-drop/directives/drag-handle.js +29 -0
- package/drag-drop/directives/drag.d.ts +194 -0
- package/drag-drop/directives/drag.js +522 -0
- package/drag-drop/directives/drop-list-group.d.ts +25 -0
- package/drag-drop/directives/drop-list-group.js +55 -0
- package/drag-drop/directives/drop-list.d.ts +163 -0
- package/drag-drop/directives/drop-list.js +396 -0
- package/drag-drop/directives/registry.d.ts +32 -0
- package/drag-drop/directives/registry.js +61 -0
- package/drag-drop/dom/clone-node.d.ts +2 -0
- package/drag-drop/dom/clone-node.js +58 -0
- package/drag-drop/dom/coerce.d.ts +6 -0
- package/drag-drop/dom/coerce.js +8 -0
- package/drag-drop/dom/dom-rect.d.ts +37 -0
- package/drag-drop/dom/dom-rect.js +71 -0
- package/drag-drop/dom/fake-event.d.ts +4 -0
- package/drag-drop/dom/fake-event.js +22 -0
- package/drag-drop/dom/inherited-text.d.ts +4 -0
- package/drag-drop/dom/inherited-text.js +44 -0
- package/drag-drop/dom/layout-shift.d.ts +8 -0
- package/drag-drop/dom/layout-shift.js +87 -0
- package/drag-drop/dom/mount-content.d.ts +2 -0
- package/drag-drop/dom/mount-content.js +7 -0
- package/drag-drop/dom/parent-position-tracker.d.ts +32 -0
- package/drag-drop/dom/parent-position-tracker.js +71 -0
- package/drag-drop/dom/root-node.d.ts +21 -0
- package/drag-drop/dom/root-node.js +41 -0
- package/drag-drop/dom/shadow-dom.d.ts +4 -0
- package/drag-drop/dom/shadow-dom.js +18 -0
- package/drag-drop/dom/styling.d.ts +52 -0
- package/drag-drop/dom/styling.js +86 -0
- package/drag-drop/dom/transition-duration.d.ts +2 -0
- package/drag-drop/dom/transition-duration.js +29 -0
- package/drag-drop/drag-drop-registry.d.ts +69 -0
- package/drag-drop/drag-drop-registry.js +224 -0
- package/drag-drop/drag-drop.d.ts +19 -0
- package/drag-drop/drag-drop.js +10 -0
- package/drag-drop/drag-events.d.ts +117 -0
- package/drag-drop/drag-events.js +1 -0
- package/drag-drop/drag-handle.d.ts +18 -0
- package/drag-drop/drag-handle.jsx +53 -0
- package/drag-drop/drag-placeholder.d.ts +8 -0
- package/drag-drop/drag-placeholder.jsx +25 -0
- package/drag-drop/drag-preview.d.ts +10 -0
- package/drag-drop/drag-preview.jsx +31 -0
- package/drag-drop/drag-ref.d.ts +476 -0
- package/drag-drop/drag-ref.js +1306 -0
- package/drag-drop/drag-utils.d.ts +25 -0
- package/drag-drop/drag-utils.js +53 -0
- package/drag-drop/drag.d.ts +23 -0
- package/drag-drop/drag.jsx +126 -0
- package/drag-drop/drop-list-group.d.ts +22 -0
- package/drag-drop/drop-list-group.jsx +19 -0
- package/drag-drop/drop-list-ref.d.ts +295 -0
- package/drag-drop/drop-list-ref.js +707 -0
- package/drag-drop/drop-list.d.ts +19 -0
- package/drag-drop/drop-list.jsx +87 -0
- package/drag-drop/index.d.ts +1 -0
- package/drag-drop/index.jsx +4 -0
- package/drag-drop/lazy-refs.d.ts +28 -0
- package/drag-drop/lazy-refs.js +133 -0
- package/drag-drop/preview-ref.d.ts +38 -0
- package/drag-drop/preview-ref.js +132 -0
- package/drag-drop/sorting/drop-list-sort-strategy.d.ts +29 -0
- package/drag-drop/sorting/drop-list-sort-strategy.js +1 -0
- package/drag-drop/sorting/mixed-sort-strategy.d.ts +99 -0
- package/drag-drop/sorting/mixed-sort-strategy.js +259 -0
- package/drag-drop/sorting/single-axis-sort-strategy.d.ts +112 -0
- package/drag-drop/sorting/single-axis-sort-strategy.js +343 -0
- package/file-trigger/index.d.ts +24 -0
- package/file-trigger/index.jsx +41 -0
- package/flip/index.d.ts +59 -0
- package/flip/index.js +124 -0
- package/focus/focus-ring.d.ts +42 -0
- package/focus/focus-ring.jsx +77 -0
- package/focus/focus-scope.d.ts +51 -0
- package/focus/focus-scope.jsx +431 -0
- package/focus/focusable.d.ts +33 -0
- package/focus/focusable.jsx +93 -0
- package/focus/index.d.ts +74 -0
- package/focus/index.js +274 -0
- package/form/behaviour.d.ts +29 -0
- package/form/behaviour.js +145 -0
- package/form/field-error.d.ts +38 -0
- package/form/field-error.jsx +67 -0
- package/form/index.d.ts +77 -0
- package/form/index.jsx +116 -0
- package/grid/behaviour.d.ts +290 -0
- package/grid/behaviour.js +683 -0
- package/grid/intl.d.ts +2 -0
- package/grid/intl.js +36 -0
- package/grid/keyboard-delegate.d.ts +56 -0
- package/grid/keyboard-delegate.js +316 -0
- package/grid-list/behaviour.d.ts +242 -0
- package/grid-list/behaviour.js +598 -0
- package/grid-list/index.d.ts +202 -0
- package/grid-list/index.jsx +685 -0
- package/grid-list/row.d.ts +24 -0
- package/grid-list/row.js +57 -0
- package/group/index.d.ts +48 -0
- package/group/index.jsx +126 -0
- package/header/index.d.ts +13 -0
- package/header/index.jsx +34 -0
- package/heading/index.d.ts +19 -0
- package/heading/index.jsx +55 -0
- package/highlight/index.d.ts +12 -0
- package/highlight/index.jsx +357 -0
- package/i18n/filter.d.ts +16 -0
- package/i18n/filter.js +66 -0
- package/i18n/i18n-provider.d.ts +10 -0
- package/i18n/i18n-provider.jsx +15 -0
- package/i18n/index.d.ts +27 -0
- package/i18n/index.js +115 -0
- package/i18n/intl-cache.d.ts +4 -0
- package/i18n/intl-cache.js +40 -0
- package/i18n/list-formatter.d.ts +2 -0
- package/i18n/list-formatter.js +11 -0
- package/input/index.d.ts +51 -0
- package/input/index.jsx +95 -0
- package/interactions/controllable.d.ts +42 -0
- package/interactions/controllable.js +67 -0
- package/interactions/focus-visible.d.ts +68 -0
- package/interactions/focus-visible.jsx +291 -0
- package/interactions/focus.d.ts +58 -0
- package/interactions/focus.jsx +152 -0
- package/interactions/hover.d.ts +54 -0
- package/interactions/hover.jsx +139 -0
- package/interactions/index.d.ts +1 -0
- package/interactions/index.js +3 -0
- package/interactions/interact-outside.d.ts +24 -0
- package/interactions/interact-outside.jsx +57 -0
- package/interactions/keyboard.d.ts +28 -0
- package/interactions/keyboard.jsx +51 -0
- package/interactions/long-press.d.ts +41 -0
- package/interactions/long-press.jsx +79 -0
- package/interactions/merge-props.d.ts +54 -0
- package/interactions/merge-props.jsx +257 -0
- package/interactions/move.d.ts +48 -0
- package/interactions/move.jsx +96 -0
- package/interactions/press.d.ts +129 -0
- package/interactions/press.jsx +538 -0
- package/interactions/pressable.d.ts +22 -0
- package/interactions/pressable.jsx +93 -0
- package/interactions/scroll-wheel.d.ts +20 -0
- package/interactions/scroll-wheel.jsx +40 -0
- package/interactions/utils.d.ts +53 -0
- package/interactions/utils.js +252 -0
- package/keyboard/index.d.ts +12 -0
- package/keyboard/index.jsx +34 -0
- package/keys/index.d.ts +68 -0
- package/keys/index.js +199 -0
- package/label/behaviour.d.ts +54 -0
- package/label/behaviour.js +60 -0
- package/label/index.d.ts +35 -0
- package/label/index.jsx +85 -0
- package/landmark/index.d.ts +10 -0
- package/landmark/index.jsx +35 -0
- package/landmark/manager.d.ts +50 -0
- package/landmark/manager.js +364 -0
- package/layout/index.d.ts +90 -0
- package/layout/index.js +207 -0
- package/lightbox/behaviour.d.ts +82 -0
- package/lightbox/behaviour.js +490 -0
- package/lightbox/captions/index.d.ts +39 -0
- package/lightbox/captions/index.jsx +44 -0
- package/lightbox/counter/index.d.ts +10 -0
- package/lightbox/counter/index.jsx +10 -0
- package/lightbox/download/index.d.ts +32 -0
- package/lightbox/download/index.jsx +89 -0
- package/lightbox/embed/index.d.ts +15 -0
- package/lightbox/embed/index.jsx +58 -0
- package/lightbox/fullscreen/index.d.ts +24 -0
- package/lightbox/fullscreen/index.jsx +80 -0
- package/lightbox/index.d.ts +129 -0
- package/lightbox/index.jsx +284 -0
- package/lightbox/inline/index.d.ts +18 -0
- package/lightbox/inline/index.jsx +15 -0
- package/lightbox/pdf/index.d.ts +18 -0
- package/lightbox/pdf/index.jsx +31 -0
- package/lightbox/share/index.d.ts +29 -0
- package/lightbox/share/index.jsx +43 -0
- package/lightbox/slideshow/index.d.ts +24 -0
- package/lightbox/slideshow/index.jsx +118 -0
- package/lightbox/state.d.ts +334 -0
- package/lightbox/state.js +192 -0
- package/lightbox/thumbnails/index.d.ts +54 -0
- package/lightbox/thumbnails/index.jsx +96 -0
- package/lightbox/video/index.d.ts +13 -0
- package/lightbox/video/index.jsx +42 -0
- package/lightbox/zoom/index.d.ts +67 -0
- package/lightbox/zoom/index.jsx +456 -0
- package/link/behaviour.d.ts +41 -0
- package/link/behaviour.js +58 -0
- package/link/index.d.ts +30 -0
- package/link/index.jsx +179 -0
- package/link/router.d.ts +1 -0
- package/link/router.js +5 -0
- package/listbox/behaviour.d.ts +175 -0
- package/listbox/behaviour.jsx +492 -0
- package/listbox/index.d.ts +129 -0
- package/listbox/index.jsx +596 -0
- package/markdown/index.d.ts +82 -0
- package/markdown/index.jsx +654 -0
- package/masonry/behaviour.d.ts +121 -0
- package/masonry/behaviour.js +676 -0
- package/masonry/flip.d.ts +27 -0
- package/masonry/flip.js +61 -0
- package/masonry/geometry.d.ts +44 -0
- package/masonry/geometry.js +184 -0
- package/masonry/index.d.ts +153 -0
- package/masonry/index.jsx +833 -0
- package/masonry/justified.d.ts +49 -0
- package/masonry/justified.js +250 -0
- package/masonry/layout.d.ts +200 -0
- package/masonry/layout.js +668 -0
- package/masonry/masonry-layout.d.ts +57 -0
- package/masonry/masonry-layout.js +159 -0
- package/masonry/masonry.css +29 -0
- package/menu/behaviour.d.ts +205 -0
- package/menu/behaviour.jsx +847 -0
- package/menu/index.d.ts +171 -0
- package/menu/index.jsx +671 -0
- package/menu/intl.d.ts +2 -0
- package/menu/intl.js +36 -0
- package/menu/safely-mouse-to-submenu.d.ts +12 -0
- package/menu/safely-mouse-to-submenu.js +128 -0
- package/meter/behaviour.d.ts +18 -0
- package/meter/behaviour.jsx +17 -0
- package/meter/index.d.ts +30 -0
- package/meter/index.jsx +85 -0
- package/modal/index.d.ts +79 -0
- package/modal/index.jsx +359 -0
- package/modal/provider.d.ts +47 -0
- package/modal/provider.jsx +105 -0
- package/morph/index.d.ts +91 -0
- package/morph/index.jsx +372 -0
- package/morph/item.d.ts +89 -0
- package/morph/item.jsx +546 -0
- package/motion/Animations.d.ts +17 -0
- package/motion/Animations.js +56 -0
- package/motion/DragRelease.d.ts +22 -0
- package/motion/DragRelease.js +26 -0
- package/motion/DragTracker.d.ts +7 -0
- package/motion/DragTracker.js +43 -0
- package/motion/Limit.d.ts +12 -0
- package/motion/Limit.js +37 -0
- package/motion/Motion1D.d.ts +38 -0
- package/motion/Motion1D.js +72 -0
- package/motion/ScrollBody.d.ts +13 -0
- package/motion/ScrollBody.js +75 -0
- package/motion/Vector1d.d.ts +8 -0
- package/motion/Vector1d.js +29 -0
- package/motion/index.d.ts +8 -0
- package/motion/index.js +12 -0
- package/motion/utils.d.ts +5 -0
- package/motion/utils.js +23 -0
- package/native-select/index.d.ts +46 -0
- package/native-select/index.jsx +99 -0
- package/navigation-tree/index.d.ts +43 -0
- package/navigation-tree/index.jsx +110 -0
- package/number/NumberFormatter.d.ts +28 -0
- package/number/NumberFormatter.js +144 -0
- package/number/NumberParser.d.ts +27 -0
- package/number/NumberParser.js +316 -0
- package/number/index.d.ts +5 -0
- package/number/index.jsx +17 -0
- package/number/number-field-state.d.ts +132 -0
- package/number/number-field-state.jsx +364 -0
- package/number-field/behaviour.d.ts +165 -0
- package/number-field/behaviour.jsx +512 -0
- package/number-field/index.d.ts +52 -0
- package/number-field/index.jsx +207 -0
- package/number-field/intl.d.ts +2 -0
- package/number-field/intl.js +36 -0
- package/observers/index.d.ts +70 -0
- package/observers/index.js +279 -0
- package/overflow/index.d.ts +93 -0
- package/overflow/index.jsx +267 -0
- package/overlay/aria-hide-outside.d.ts +12 -0
- package/overlay/aria-hide-outside.js +141 -0
- package/overlay/close-on-scroll.d.ts +1 -0
- package/overlay/close-on-scroll.js +6 -0
- package/overlay/contexts.d.ts +34 -0
- package/overlay/contexts.js +21 -0
- package/overlay/dismiss-button.d.ts +10 -0
- package/overlay/dismiss-button.jsx +18 -0
- package/overlay/hover-trigger.d.ts +54 -0
- package/overlay/hover-trigger.jsx +221 -0
- package/overlay/index.d.ts +40 -0
- package/overlay/index.js +139 -0
- package/overlay/modal-overlay.d.ts +16 -0
- package/overlay/modal-overlay.js +38 -0
- package/overlay/overlay-strings.d.ts +4 -0
- package/overlay/overlay-strings.js +52 -0
- package/overlay/overlay-trigger-state.d.ts +1 -0
- package/overlay/overlay-trigger-state.js +3 -0
- package/overlay/overlay-trigger.d.ts +27 -0
- package/overlay/overlay-trigger.jsx +50 -0
- package/overlay/position.d.ts +160 -0
- package/overlay/position.js +559 -0
- package/overlay/prevent-scroll-ios.d.ts +17 -0
- package/overlay/prevent-scroll-ios.js +331 -0
- package/overlay/prevent-scroll.d.ts +18 -0
- package/overlay/prevent-scroll.js +122 -0
- package/overlay/safe-area.d.ts +28 -0
- package/overlay/safe-area.js +108 -0
- package/overlay-arrow/index.d.ts +23 -0
- package/overlay-arrow/index.jsx +59 -0
- package/overlay-service/connected-position.d.ts +163 -0
- package/overlay-service/connected-position.js +661 -0
- package/overlay-service/global-position.d.ts +34 -0
- package/overlay-service/global-position.js +154 -0
- package/overlay-service/index.d.ts +15 -0
- package/overlay-service/index.js +27 -0
- package/overlay-service/overlay-container.d.ts +27 -0
- package/overlay-service/overlay-container.js +93 -0
- package/overlay-service/overlay-dispatchers.d.ts +44 -0
- package/overlay-service/overlay-dispatchers.js +149 -0
- package/overlay-service/overlay-position-builder.d.ts +8 -0
- package/overlay-service/overlay-position-builder.js +15 -0
- package/overlay-service/overlay-ref.d.ts +155 -0
- package/overlay-service/overlay-ref.js +436 -0
- package/overlay-service/overlay-strategy.d.ts +48 -0
- package/overlay-service/overlay-strategy.js +3 -0
- package/overlay-service/overlay-viewport.d.ts +85 -0
- package/overlay-service/overlay-viewport.js +192 -0
- package/overlay-service/overlay.css +94 -0
- package/overlay-service/scroll-strategies.d.ts +71 -0
- package/overlay-service/scroll-strategies.js +185 -0
- package/package.json +754 -4
- package/platform/index.d.ts +100 -0
- package/platform/index.js +304 -0
- package/popover/behaviour.d.ts +23 -0
- package/popover/behaviour.js +39 -0
- package/popover/index.d.ts +60 -0
- package/popover/index.jsx +285 -0
- package/popover/popover-overlay.d.ts +27 -0
- package/popover/popover-overlay.jsx +60 -0
- package/popover/use-popover.d.ts +57 -0
- package/popover/use-popover.js +92 -0
- package/portal/index.d.ts +47 -0
- package/portal/index.jsx +76 -0
- package/portal/portal-mount.d.ts +8 -0
- package/portal/portal-mount.js +7 -0
- package/portal/portal-outlet.d.ts +88 -0
- package/portal/portal-outlet.js +222 -0
- package/preview-trigger/behaviour.d.ts +70 -0
- package/preview-trigger/behaviour.jsx +258 -0
- package/preview-trigger/index.d.ts +12 -0
- package/preview-trigger/index.jsx +82 -0
- package/progress-bar/behaviour.d.ts +77 -0
- package/progress-bar/behaviour.jsx +75 -0
- package/progress-bar/context.d.ts +4 -0
- package/progress-bar/context.js +7 -0
- package/progress-bar/index.d.ts +38 -0
- package/progress-bar/index.jsx +90 -0
- package/radio-group/behaviour.d.ts +11 -0
- package/radio-group/behaviour.js +85 -0
- package/radio-group/index.d.ts +82 -0
- package/radio-group/index.jsx +139 -0
- package/radio-group/parts.d.ts +223 -0
- package/radio-group/parts.jsx +425 -0
- package/range-calendar/behaviour.d.ts +2 -0
- package/range-calendar/behaviour.jsx +5 -0
- package/range-calendar/index.d.ts +2 -0
- package/range-calendar/index.jsx +4 -0
- package/resizable/engine/components/group/auto-save/getStorageKey.d.ts +1 -0
- package/resizable/engine/components/group/auto-save/getStorageKey.js +5 -0
- package/resizable/engine/components/group/compareDocumentPosition.d.ts +5 -0
- package/resizable/engine/components/group/compareDocumentPosition.js +19 -0
- package/resizable/engine/components/group/readLegacyLayout.d.ts +16 -0
- package/resizable/engine/components/group/readLegacyLayout.js +48 -0
- package/resizable/engine/components/group/sortByElementOffset.d.ts +4 -0
- package/resizable/engine/components/group/sortByElementOffset.js +28 -0
- package/resizable/engine/components/group/types.d.ts +50 -0
- package/resizable/engine/components/group/types.js +1 -0
- package/resizable/engine/components/panel/types.d.ts +90 -0
- package/resizable/engine/components/panel/types.js +4 -0
- package/resizable/engine/constants.d.ts +15 -0
- package/resizable/engine/constants.js +27 -0
- package/resizable/engine/global/cursor/getCursorStyle.d.ts +7 -0
- package/resizable/engine/global/cursor/getCursorStyle.js +94 -0
- package/resizable/engine/global/cursor/supportsAdvancedCursorStyles.d.ts +5 -0
- package/resizable/engine/global/cursor/supportsAdvancedCursorStyles.js +20 -0
- package/resizable/engine/global/cursor/updateCursorStyle.d.ts +1 -0
- package/resizable/engine/global/cursor/updateCursorStyle.js +64 -0
- package/resizable/engine/global/dom/calculateAvailableAxisSize.d.ts +4 -0
- package/resizable/engine/global/dom/calculateAvailableAxisSize.js +10 -0
- package/resizable/engine/global/dom/calculateHitRegions.d.ts +13 -0
- package/resizable/engine/global/dom/calculateHitRegions.js +153 -0
- package/resizable/engine/global/dom/calculateItemConstraints.d.ts +2 -0
- package/resizable/engine/global/dom/calculateItemConstraints.js +82 -0
- package/resizable/engine/global/event-handlers/onDocumentContextMenu.d.ts +1 -0
- package/resizable/engine/global/event-handlers/onDocumentContextMenu.js +9 -0
- package/resizable/engine/global/event-handlers/onDocumentDoubleClick.d.ts +1 -0
- package/resizable/engine/global/event-handlers/onDocumentDoubleClick.js +28 -0
- package/resizable/engine/global/event-handlers/onDocumentKeyDown.d.ts +1 -0
- package/resizable/engine/global/event-handlers/onDocumentKeyDown.js +97 -0
- package/resizable/engine/global/event-handlers/onDocumentLostPointerCapture.d.ts +1 -0
- package/resizable/engine/global/event-handlers/onDocumentLostPointerCapture.js +18 -0
- package/resizable/engine/global/event-handlers/onDocumentPointerCancel.d.ts +1 -0
- package/resizable/engine/global/event-handlers/onDocumentPointerCancel.js +8 -0
- package/resizable/engine/global/event-handlers/onDocumentPointerDown.d.ts +1 -0
- package/resizable/engine/global/event-handlers/onDocumentPointerDown.js +54 -0
- package/resizable/engine/global/event-handlers/onDocumentPointerLeave.d.ts +1 -0
- package/resizable/engine/global/event-handlers/onDocumentPointerLeave.js +22 -0
- package/resizable/engine/global/event-handlers/onDocumentPointerMove.d.ts +1 -0
- package/resizable/engine/global/event-handlers/onDocumentPointerMove.js +69 -0
- package/resizable/engine/global/event-handlers/onDocumentPointerOut.d.ts +1 -0
- package/resizable/engine/global/event-handlers/onDocumentPointerOut.js +20 -0
- package/resizable/engine/global/event-handlers/onDocumentPointerUp.d.ts +1 -0
- package/resizable/engine/global/event-handlers/onDocumentPointerUp.js +15 -0
- package/resizable/engine/global/event-handlers/onWindowBlur.d.ts +1 -0
- package/resizable/engine/global/event-handlers/onWindowBlur.js +11 -0
- package/resizable/engine/global/mountAxis.d.ts +2 -0
- package/resizable/engine/global/mountAxis.js +187 -0
- package/resizable/engine/global/mutable-state/axes.d.ts +37 -0
- package/resizable/engine/global/mutable-state/axes.js +52 -0
- package/resizable/engine/global/mutable-state/interactions.d.ts +17 -0
- package/resizable/engine/global/mutable-state/interactions.js +92 -0
- package/resizable/engine/global/mutable-state/types.d.ts +32 -0
- package/resizable/engine/global/mutable-state/types.js +1 -0
- package/resizable/engine/global/styles/convertEmToPixels.d.ts +1 -0
- package/resizable/engine/global/styles/convertEmToPixels.js +7 -0
- package/resizable/engine/global/styles/convertRemToPixels.d.ts +1 -0
- package/resizable/engine/global/styles/convertRemToPixels.js +7 -0
- package/resizable/engine/global/styles/convertVhToPixels.d.ts +1 -0
- package/resizable/engine/global/styles/convertVhToPixels.js +5 -0
- package/resizable/engine/global/styles/convertVwToPixels.d.ts +1 -0
- package/resizable/engine/global/styles/convertVwToPixels.js +5 -0
- package/resizable/engine/global/styles/parseSizeAndUnit.d.ts +2 -0
- package/resizable/engine/global/styles/parseSizeAndUnit.js +29 -0
- package/resizable/engine/global/styles/sizeStyleToPixels.d.ts +5 -0
- package/resizable/engine/global/styles/sizeStyleToPixels.js +38 -0
- package/resizable/engine/global/types.d.ts +120 -0
- package/resizable/engine/global/types.js +1 -0
- package/resizable/engine/global/utils/abortActivePointerResize.d.ts +9 -0
- package/resizable/engine/global/utils/abortActivePointerResize.js +52 -0
- package/resizable/engine/global/utils/adjustLayoutByDelta.d.ts +9 -0
- package/resizable/engine/global/utils/adjustLayoutByDelta.js +219 -0
- package/resizable/engine/global/utils/adjustLayoutForSeparator.d.ts +1 -0
- package/resizable/engine/global/utils/adjustLayoutForSeparator.js +48 -0
- package/resizable/engine/global/utils/calculateDefaultLayout.d.ts +2 -0
- package/resizable/engine/global/utils/calculateDefaultLayout.js +30 -0
- package/resizable/engine/global/utils/calculateResizePreviews.d.ts +3 -0
- package/resizable/engine/global/utils/calculateResizePreviews.js +39 -0
- package/resizable/engine/global/utils/calculateSeparatorAriaValues.d.ts +12 -0
- package/resizable/engine/global/utils/calculateSeparatorAriaValues.js +43 -0
- package/resizable/engine/global/utils/compareLayoutNumbers.d.ts +1 -0
- package/resizable/engine/global/utils/compareLayoutNumbers.js +11 -0
- package/resizable/engine/global/utils/completeActivePointerResize.d.ts +6 -0
- package/resizable/engine/global/utils/completeActivePointerResize.js +49 -0
- package/resizable/engine/global/utils/doRectsIntersect.d.ts +2 -0
- package/resizable/engine/global/utils/doRectsIntersect.js +3 -0
- package/resizable/engine/global/utils/expandHitTarget.d.ts +10 -0
- package/resizable/engine/global/utils/expandHitTarget.js +19 -0
- package/resizable/engine/global/utils/findClosestHitRegion.d.ts +9 -0
- package/resizable/engine/global/utils/findClosestHitRegion.js +35 -0
- package/resizable/engine/global/utils/findClosestRect.d.ts +6 -0
- package/resizable/engine/global/utils/findClosestRect.js +22 -0
- package/resizable/engine/global/utils/findMatchingHitRegions.d.ts +7 -0
- package/resizable/engine/global/utils/findMatchingHitRegions.js +29 -0
- package/resizable/engine/global/utils/findSeparatorAxis.d.ts +21 -0
- package/resizable/engine/global/utils/findSeparatorAxis.js +12 -0
- package/resizable/engine/global/utils/formatLayoutNumber.d.ts +1 -0
- package/resizable/engine/global/utils/formatLayoutNumber.js +5 -0
- package/resizable/engine/global/utils/getDefaultLayout.d.ts +5 -0
- package/resizable/engine/global/utils/getDefaultLayout.js +11 -0
- package/resizable/engine/global/utils/getDistanceBetweenPointAndRect.d.ts +5 -0
- package/resizable/engine/global/utils/getDistanceBetweenPointAndRect.js +6 -0
- package/resizable/engine/global/utils/getImperativeAxisMethods.d.ts +4 -0
- package/resizable/engine/global/utils/getImperativeAxisMethods.js +53 -0
- package/resizable/engine/global/utils/getImperativeItemMethods.d.ts +5 -0
- package/resizable/engine/global/utils/getImperativeItemMethods.js +169 -0
- package/resizable/engine/global/utils/isCoarsePointer.d.ts +4 -0
- package/resizable/engine/global/utils/isCoarsePointer.js +17 -0
- package/resizable/engine/global/utils/isModal.d.ts +1 -0
- package/resizable/engine/global/utils/isModal.js +11 -0
- package/resizable/engine/global/utils/isViableHitTarget.d.ts +5 -0
- package/resizable/engine/global/utils/isViableHitTarget.js +50 -0
- package/resizable/engine/global/utils/itemConstraintsEqual.d.ts +2 -0
- package/resizable/engine/global/utils/itemConstraintsEqual.js +9 -0
- package/resizable/engine/global/utils/layoutNumbersEqual.d.ts +1 -0
- package/resizable/engine/global/utils/layoutNumbersEqual.js +6 -0
- package/resizable/engine/global/utils/layoutsEqual.d.ts +2 -0
- package/resizable/engine/global/utils/layoutsEqual.js +15 -0
- package/resizable/engine/global/utils/normalizeLayout.d.ts +11 -0
- package/resizable/engine/global/utils/normalizeLayout.js +21 -0
- package/resizable/engine/global/utils/notifyItemOnResize.d.ts +2 -0
- package/resizable/engine/global/utils/notifyItemOnResize.js +23 -0
- package/resizable/engine/global/utils/objectsEqual.d.ts +1 -0
- package/resizable/engine/global/utils/objectsEqual.js +14 -0
- package/resizable/engine/global/utils/preserveFixedItemSizes.d.ts +7 -0
- package/resizable/engine/global/utils/preserveFixedItemSizes.js +53 -0
- package/resizable/engine/global/utils/recordAxisLayoutChange.d.ts +15 -0
- package/resizable/engine/global/utils/recordAxisLayoutChange.js +25 -0
- package/resizable/engine/global/utils/updateActiveHitRegion.d.ts +18 -0
- package/resizable/engine/global/utils/updateActiveHitRegion.js +119 -0
- package/resizable/engine/global/utils/validateAxisLayout.d.ts +5 -0
- package/resizable/engine/global/utils/validateAxisLayout.js +70 -0
- package/resizable/engine/global/utils/validateItemSize.d.ts +7 -0
- package/resizable/engine/global/utils/validateItemSize.js +31 -0
- package/resizable/engine/global/utils/validateLayoutKeys.d.ts +2 -0
- package/resizable/engine/global/utils/validateLayoutKeys.js +13 -0
- package/resizable/engine/types.d.ts +13 -0
- package/resizable/engine/types.js +1 -0
- package/resizable/engine/utils/EventEmitter.d.ts +11 -0
- package/resizable/engine/utils/EventEmitter.js +60 -0
- package/resizable/engine/utils/assert.d.ts +1 -0
- package/resizable/engine/utils/assert.js +7 -0
- package/resizable/engine/utils/isArrayEqual.d.ts +1 -0
- package/resizable/engine/utils/isArrayEqual.js +15 -0
- package/resizable/engine/utils/isHTMLElement.d.ts +1 -0
- package/resizable/engine/utils/isHTMLElement.js +6 -0
- package/resizable/engine/utils/isShadowRoot.d.ts +1 -0
- package/resizable/engine/utils/isShadowRoot.js +6 -0
- package/resizable/engine/vendor/stacking-order.d.ts +7 -0
- package/resizable/engine/vendor/stacking-order.js +122 -0
- package/resizable/index.d.ts +263 -0
- package/resizable/index.jsx +537 -0
- package/resizable/mount.d.ts +115 -0
- package/resizable/mount.js +540 -0
- package/scheduler/behaviour.d.ts +71 -0
- package/scheduler/behaviour.js +243 -0
- package/scheduler/context.d.ts +100 -0
- package/scheduler/context.jsx +7 -0
- package/scheduler/dates.d.ts +53 -0
- package/scheduler/dates.js +183 -0
- package/scheduler/drag.d.ts +20 -0
- package/scheduler/drag.js +361 -0
- package/scheduler/event.d.ts +26 -0
- package/scheduler/event.jsx +93 -0
- package/scheduler/index.d.ts +57 -0
- package/scheduler/index.jsx +303 -0
- package/scheduler/intl.d.ts +16 -0
- package/scheduler/intl.js +529 -0
- package/scheduler/keys-month.d.ts +7 -0
- package/scheduler/keys-month.js +110 -0
- package/scheduler/keys-time-grid.d.ts +9 -0
- package/scheduler/keys-time-grid.js +115 -0
- package/scheduler/keys.d.ts +103 -0
- package/scheduler/keys.js +527 -0
- package/scheduler/layout-index.d.ts +3 -0
- package/scheduler/layout-index.js +6 -0
- package/scheduler/layout.d.ts +285 -0
- package/scheduler/layout.js +378 -0
- package/scheduler/menus.d.ts +66 -0
- package/scheduler/menus.jsx +88 -0
- package/scheduler/month.d.ts +26 -0
- package/scheduler/month.jsx +215 -0
- package/scheduler/pointer.d.ts +64 -0
- package/scheduler/pointer.js +203 -0
- package/scheduler/select.d.ts +11 -0
- package/scheduler/select.js +64 -0
- package/scheduler/selection.d.ts +34 -0
- package/scheduler/selection.js +39 -0
- package/scheduler/state.d.ts +296 -0
- package/scheduler/state.js +496 -0
- package/scheduler/time-grid-client.d.ts +32 -0
- package/scheduler/time-grid-client.jsx +133 -0
- package/scheduler/time-grid.d.ts +26 -0
- package/scheduler/time-grid.jsx +266 -0
- package/scheduler/time.d.ts +35 -0
- package/scheduler/time.js +56 -0
- package/scheduler/toolbar.d.ts +43 -0
- package/scheduler/toolbar.jsx +38 -0
- package/scroll-area/dom.d.ts +11 -0
- package/scroll-area/dom.js +55 -0
- package/scroll-area/index.d.ts +96 -0
- package/scroll-area/index.jsx +884 -0
- package/scroll-area/presence.d.ts +12 -0
- package/scroll-area/presence.jsx +131 -0
- package/scrolling/auto-size-virtual-scroll.d.ts +53 -0
- package/scrolling/auto-size-virtual-scroll.js +213 -0
- package/scrolling/behaviour.d.ts +3 -0
- package/scrolling/behaviour.js +5 -0
- package/scrolling/emitter.d.ts +34 -0
- package/scrolling/emitter.js +144 -0
- package/scrolling/fixed-size-virtual-scroll.d.ts +28 -0
- package/scrolling/fixed-size-virtual-scroll.js +107 -0
- package/scrolling/index.d.ts +11 -0
- package/scrolling/index.jsx +13 -0
- package/scrolling/rtl.d.ts +16 -0
- package/scrolling/rtl.js +64 -0
- package/scrolling/scroll-dispatcher.d.ts +49 -0
- package/scrolling/scroll-dispatcher.js +107 -0
- package/scrolling/scrollable.d.ts +75 -0
- package/scrolling/scrollable.js +149 -0
- package/scrolling/scrolling.css +11 -0
- package/scrolling/state.d.ts +92 -0
- package/scrolling/state.js +94 -0
- package/scrolling/viewport-ruler.d.ts +47 -0
- package/scrolling/viewport-ruler.js +100 -0
- package/scrolling/viewport.d.ts +54 -0
- package/scrolling/viewport.jsx +105 -0
- package/scrolling/virtual-scroll-strategy.d.ts +41 -0
- package/scrolling/virtual-scroll-strategy.js +2 -0
- package/scrolling/virtual-scroll-viewport.d.ts +95 -0
- package/scrolling/virtual-scroll-viewport.js +370 -0
- package/search-field/behaviour.d.ts +62 -0
- package/search-field/behaviour.jsx +116 -0
- package/search-field/index.d.ts +57 -0
- package/search-field/index.jsx +158 -0
- package/search-field/intl.d.ts +2 -0
- package/search-field/intl.js +36 -0
- package/select/behaviour.d.ts +188 -0
- package/select/behaviour.jsx +445 -0
- package/select/hidden-select.d.ts +44 -0
- package/select/hidden-select.jsx +68 -0
- package/select/index.d.ts +123 -0
- package/select/index.jsx +255 -0
- package/select/intl.d.ts +2 -0
- package/select/intl.js +36 -0
- package/select/parts.d.ts +11 -0
- package/select/parts.jsx +12 -0
- package/select/select-parts.d.ts +73 -0
- package/select/select-parts.jsx +293 -0
- package/select/select-value.d.ts +58 -0
- package/select/select-value.jsx +142 -0
- package/selection/dom-utils.d.ts +25 -0
- package/selection/dom-utils.js +77 -0
- package/selection/keyed.d.ts +19 -0
- package/selection/keyed.js +76 -0
- package/selection/list-keyboard-delegate.d.ts +67 -0
- package/selection/list-keyboard-delegate.js +274 -0
- package/selection/manager.d.ts +112 -0
- package/selection/manager.js +340 -0
- package/selection/selectable-collection.d.ts +123 -0
- package/selection/selectable-collection.js +535 -0
- package/selection/selectable-item.d.ts +128 -0
- package/selection/selectable-item.js +486 -0
- package/selection/selectable-list.d.ts +42 -0
- package/selection/selectable-list.js +34 -0
- package/selection/state.d.ts +96 -0
- package/selection/state.js +131 -0
- package/selection/type-select.d.ts +37 -0
- package/selection/type-select.js +114 -0
- package/selection/utils.d.ts +23 -0
- package/selection/utils.js +38 -0
- package/selection-indicator/context.d.ts +10 -0
- package/selection-indicator/context.js +7 -0
- package/selection-indicator/index.d.ts +20 -0
- package/selection-indicator/index.jsx +25 -0
- package/separator/behaviour.d.ts +17 -0
- package/separator/behaviour.js +17 -0
- package/separator/index.d.ts +23 -0
- package/separator/index.jsx +64 -0
- package/shared-element-transition/index.d.ts +36 -0
- package/shared-element-transition/index.jsx +182 -0
- package/shared-element-transition/transition.d.ts +19 -0
- package/shared-element-transition/transition.jsx +20 -0
- package/sheet-motion/index.d.ts +82 -0
- package/sheet-motion/index.js +386 -0
- package/sidebar/index.d.ts +257 -0
- package/sidebar/index.jsx +624 -0
- package/sidebar/pages.d.ts +71 -0
- package/sidebar/pages.jsx +177 -0
- package/sidebar/resize.d.ts +69 -0
- package/sidebar/resize.js +237 -0
- package/sidebar/sheet-motion.d.ts +15 -0
- package/sidebar/sheet-motion.js +170 -0
- package/sidebar/state.d.ts +126 -0
- package/sidebar/state.js +204 -0
- package/slider/behaviour.d.ts +141 -0
- package/slider/behaviour.jsx +492 -0
- package/slider/index.d.ts +171 -0
- package/slider/index.jsx +392 -0
- package/slider/state.d.ts +203 -0
- package/slider/state.js +377 -0
- package/slots/index.d.ts +248 -0
- package/slots/index.jsx +473 -0
- package/spinbutton/behaviour.d.ts +66 -0
- package/spinbutton/behaviour.jsx +312 -0
- package/spinbutton/intl.d.ts +2 -0
- package/spinbutton/intl.js +36 -0
- package/state/autocomplete.d.ts +26 -0
- package/state/autocomplete.js +32 -0
- package/state/calendar.d.ts +284 -0
- package/state/calendar.js +755 -0
- package/state/checkbox-group.d.ts +67 -0
- package/state/checkbox-group.js +76 -0
- package/state/combobox.d.ts +238 -0
- package/state/combobox.js +708 -0
- package/state/date-field.d.ts +407 -0
- package/state/date-field.js +1117 -0
- package/state/date-intl.d.ts +3 -0
- package/state/date-intl.js +36 -0
- package/state/date-picker.d.ts +144 -0
- package/state/date-picker.js +387 -0
- package/state/disclosure.d.ts +90 -0
- package/state/disclosure.js +148 -0
- package/state/form-validation.d.ts +89 -0
- package/state/form-validation.js +158 -0
- package/state/grid.d.ts +62 -0
- package/state/grid.js +127 -0
- package/state/list.d.ts +58 -0
- package/state/list.js +124 -0
- package/state/menu.d.ts +159 -0
- package/state/menu.js +184 -0
- package/state/overlays.d.ts +35 -0
- package/state/overlays.js +29 -0
- package/state/radio-group.d.ts +58 -0
- package/state/radio-group.js +68 -0
- package/state/search-field.d.ts +20 -0
- package/state/search-field.js +21 -0
- package/state/select.d.ts +150 -0
- package/state/select.js +187 -0
- package/state/selection.d.ts +3 -0
- package/state/selection.js +5 -0
- package/state/table-column-resize.d.ts +58 -0
- package/state/table-column-resize.js +76 -0
- package/state/table.d.ts +81 -0
- package/state/table.js +114 -0
- package/state/tabs.d.ts +85 -0
- package/state/tabs.js +161 -0
- package/state/time-field.d.ts +32 -0
- package/state/time-field.js +34 -0
- package/state/toast.d.ts +80 -0
- package/state/toast.js +146 -0
- package/state/toggle-group.d.ts +70 -0
- package/state/toggle-group.js +110 -0
- package/state/toggle.d.ts +40 -0
- package/state/toggle.js +39 -0
- package/state/tooltip.d.ts +53 -0
- package/state/tooltip.js +153 -0
- package/stepper/index.d.ts +117 -0
- package/stepper/index.jsx +405 -0
- package/stepper/state.d.ts +200 -0
- package/stepper/state.js +325 -0
- package/switch/behaviour.d.ts +12 -0
- package/switch/behaviour.jsx +9 -0
- package/switch/index.d.ts +150 -0
- package/switch/index.jsx +186 -0
- package/table/behaviour.d.ts +181 -0
- package/table/behaviour.js +334 -0
- package/table/collection.d.ts +49 -0
- package/table/collection.js +259 -0
- package/table/column-resize.d.ts +48 -0
- package/table/column-resize.jsx +247 -0
- package/table/index.d.ts +339 -0
- package/table/index.jsx +982 -0
- package/table/intl.d.ts +2 -0
- package/table/intl.js +36 -0
- package/table/keyboard-delegate.d.ts +21 -0
- package/table/keyboard-delegate.js +166 -0
- package/table/rac-intl.d.ts +2 -0
- package/table/rac-intl.js +36 -0
- package/tabs/behaviour.d.ts +49 -0
- package/tabs/behaviour.js +173 -0
- package/tabs/index.d.ts +248 -0
- package/tabs/index.jsx +577 -0
- package/tabs/keyboard-delegate.d.ts +17 -0
- package/tabs/keyboard-delegate.js +64 -0
- package/tag-group/behaviour.d.ts +59 -0
- package/tag-group/behaviour.js +112 -0
- package/tag-group/index.d.ts +138 -0
- package/tag-group/index.jsx +565 -0
- package/tag-group/intl.d.ts +2 -0
- package/tag-group/intl.js +36 -0
- package/tailwind.css +12 -0
- package/tests-components/app/src/routes/index.d.ts +4 -0
- package/tests-components/app/src/routes/index.jsx +7 -0
- package/text/index.d.ts +15 -0
- package/text/index.jsx +61 -0
- package/text-area/index.d.ts +19 -0
- package/text-area/index.jsx +76 -0
- package/text-field/autosize.d.ts +70 -0
- package/text-field/autosize.js +355 -0
- package/text-field/behaviour.d.ts +140 -0
- package/text-field/behaviour.jsx +260 -0
- package/text-field/fields.d.ts +12 -0
- package/text-field/fields.js +20 -0
- package/text-field/index.d.ts +50 -0
- package/text-field/index.jsx +174 -0
- package/text-field/text-field.css +45 -0
- package/theme.css +1006 -0
- package/time-wheels/behaviour.d.ts +29 -0
- package/time-wheels/behaviour.js +156 -0
- package/time-wheels/index.d.ts +27 -0
- package/time-wheels/index.jsx +91 -0
- package/toast/behaviour.d.ts +51 -0
- package/toast/behaviour.jsx +273 -0
- package/toast/index.d.ts +94 -0
- package/toast/index.jsx +256 -0
- package/toast/intl.d.ts +2 -0
- package/toast/intl.js +36 -0
- package/toggle-button/behaviour.d.ts +15 -0
- package/toggle-button/behaviour.js +37 -0
- package/toggle-button/index.d.ts +59 -0
- package/toggle-button/index.jsx +206 -0
- package/toggle-button-group/behaviour.d.ts +19 -0
- package/toggle-button-group/behaviour.jsx +13 -0
- package/toggle-button-group/context.d.ts +7 -0
- package/toggle-button-group/context.js +9 -0
- package/toggle-button-group/index.d.ts +39 -0
- package/toggle-button-group/index.jsx +85 -0
- package/toggle-button-group/item.d.ts +30 -0
- package/toggle-button-group/item.jsx +37 -0
- package/toolbar/behaviour.d.ts +22 -0
- package/toolbar/behaviour.js +89 -0
- package/toolbar/index.d.ts +16 -0
- package/toolbar/index.jsx +67 -0
- package/tooltip/behaviour.d.ts +93 -0
- package/tooltip/behaviour.jsx +299 -0
- package/tooltip/index.d.ts +59 -0
- package/tooltip/index.jsx +193 -0
- package/tree/behaviour.d.ts +51 -0
- package/tree/behaviour.jsx +51 -0
- package/tree/cdk-index.d.ts +2 -0
- package/tree/cdk-index.js +6 -0
- package/tree/collection.d.ts +16 -0
- package/tree/collection.js +138 -0
- package/tree/control.d.ts +125 -0
- package/tree/control.js +166 -0
- package/tree/index.d.ts +154 -0
- package/tree/index.jsx +815 -0
- package/tree/intl.d.ts +2 -0
- package/tree/intl.js +36 -0
- package/tree/navigation-context.d.ts +44 -0
- package/tree/navigation-context.jsx +63 -0
- package/tree/tree-key-manager.d.ts +149 -0
- package/tree/tree-key-manager.js +336 -0
- package/utils/animation.d.ts +32 -0
- package/utils/animation.jsx +236 -0
- package/utils/data-attrs.d.ts +71 -0
- package/utils/data-attrs.jsx +193 -0
- package/utils/dev-off.d.ts +3 -0
- package/utils/dev-off.js +7 -0
- package/utils/dev-on.d.ts +3 -0
- package/utils/dev-on.js +17 -0
- package/utils/dom-props.d.ts +44 -0
- package/utils/dom-props.js +73 -0
- package/utils/dom.d.ts +85 -0
- package/utils/dom.js +402 -0
- package/utils/id.d.ts +23 -0
- package/utils/id.js +100 -0
- package/utils/index.d.ts +57 -0
- package/utils/index.js +257 -0
- package/utils/links.d.ts +87 -0
- package/utils/links.jsx +152 -0
- package/utils/live-element.d.ts +8 -0
- package/utils/live-element.jsx +76 -0
- package/utils/live.d.ts +53 -0
- package/utils/live.jsx +169 -0
- package/utils/load-more-sentinel.d.ts +28 -0
- package/utils/load-more-sentinel.jsx +52 -0
- package/utils/motion-token.d.ts +4 -0
- package/utils/motion-token.js +48 -0
- package/utils/render.d.ts +19 -0
- package/utils/render.js +18 -0
- package/utils/types.d.ts +111 -0
- package/utils/types.js +1 -0
- package/virtualizer/behaviour.d.ts +98 -0
- package/virtualizer/behaviour.js +315 -0
- package/virtualizer/collection.d.ts +103 -0
- package/virtualizer/collection.js +155 -0
- package/virtualizer/dom.d.ts +50 -0
- package/virtualizer/dom.js +233 -0
- package/virtualizer/engine.d.ts +21 -0
- package/virtualizer/engine.js +21 -0
- package/virtualizer/grid-layout.d.ts +50 -0
- package/virtualizer/grid-layout.js +247 -0
- package/virtualizer/index.d.ts +2 -0
- package/virtualizer/index.jsx +4 -0
- package/virtualizer/layout-info.d.ts +33 -0
- package/virtualizer/layout-info.js +54 -0
- package/virtualizer/layout.d.ts +44 -0
- package/virtualizer/layout.js +30 -0
- package/virtualizer/list-layout.d.ts +103 -0
- package/virtualizer/list-layout.js +508 -0
- package/virtualizer/overscan-manager.d.ts +9 -0
- package/virtualizer/overscan-manager.js +32 -0
- package/virtualizer/point.d.ts +13 -0
- package/virtualizer/point.js +23 -0
- package/virtualizer/rect.d.ts +49 -0
- package/virtualizer/rect.js +105 -0
- package/virtualizer/reusable-view.d.ts +29 -0
- package/virtualizer/reusable-view.js +56 -0
- package/virtualizer/scroll-anchor.d.ts +62 -0
- package/virtualizer/scroll-anchor.js +130 -0
- package/virtualizer/size.d.ts +11 -0
- package/virtualizer/size.js +21 -0
- package/virtualizer/state.d.ts +35 -0
- package/virtualizer/state.js +79 -0
- package/virtualizer/table-collection.d.ts +45 -0
- package/virtualizer/table-collection.js +80 -0
- package/virtualizer/table-column-layout.d.ts +44 -0
- package/virtualizer/table-column-layout.js +210 -0
- package/virtualizer/table-layout.d.ts +55 -0
- package/virtualizer/table-layout.js +482 -0
- package/virtualizer/types.d.ts +63 -0
- package/virtualizer/types.js +1 -0
- package/virtualizer/utils.d.ts +2 -0
- package/virtualizer/utils.js +12 -0
- package/virtualizer/virtualizer-core.d.ts +61 -0
- package/virtualizer/virtualizer-core.js +304 -0
- package/virtualizer/virtualizer.d.ts +62 -0
- package/virtualizer/virtualizer.jsx +88 -0
- package/virtualizer/waterfall-layout.d.ts +41 -0
- package/virtualizer/waterfall-layout.js +227 -0
- package/wheel-picker/behaviour.d.ts +94 -0
- package/wheel-picker/behaviour.js +482 -0
- package/wheel-picker/index.d.ts +33 -0
- package/wheel-picker/index.jsx +66 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export const datePickerMessages = {
|
|
2
|
+
"ar-AE": { "calendar": "التقويم", "day": "يوم", "dayPeriod": "ص/م", "endDate": "تاريخ الانتهاء", "era": "العصر", "hour": "الساعات", "minute": "الدقائق", "month": "الشهر", "second": "الثواني", "selectedDateDescription": "تاريخ محدد: {date}", "selectedRangeDescription": "المدى الزمني المحدد: {startDate} إلى {endDate}", "selectedTimeDescription": "الوقت المحدد: {time}", "startDate": "تاريخ البدء", "timeZoneName": "التوقيت", "weekday": "اليوم", "year": "السنة", "Empty": "فارغ" },
|
|
3
|
+
"bg-BG": { "calendar": "Календар", "day": "ден", "dayPeriod": "пр.об./сл.об.", "endDate": "Крайна дата", "era": "ера", "hour": "час", "minute": "минута", "month": "месец", "second": "секунда", "selectedDateDescription": "Избрана дата: {date}", "selectedRangeDescription": "Избран диапазон: {startDate} до {endDate}", "selectedTimeDescription": "Избрано време: {time}", "startDate": "Начална дата", "timeZoneName": "часова зона", "weekday": "ден от седмицата", "year": "година", "Empty": "Изпразни" },
|
|
4
|
+
"cs-CZ": { "calendar": "Kalendář", "day": "den", "dayPeriod": "část dne", "endDate": "Konečné datum", "era": "letopočet", "hour": "hodina", "minute": "minuta", "month": "měsíc", "second": "sekunda", "selectedDateDescription": "Vybrané datum: {date}", "selectedRangeDescription": "Vybrané období: {startDate} až {endDate}", "selectedTimeDescription": "Vybraný čas: {time}", "startDate": "Počáteční datum", "timeZoneName": "časové pásmo", "weekday": "den v týdnu", "year": "rok", "Empty": "Prázdné" },
|
|
5
|
+
"da-DK": { "calendar": "Kalender", "day": "dag", "dayPeriod": "AM/PM", "endDate": "Slutdato", "era": "æra", "hour": "time", "minute": "minut", "month": "måned", "second": "sekund", "selectedDateDescription": "Valgt dato: {date}", "selectedRangeDescription": "Valgt interval: {startDate} til {endDate}", "selectedTimeDescription": "Valgt tidspunkt: {time}", "startDate": "Startdato", "timeZoneName": "tidszone", "weekday": "ugedag", "year": "år", "Empty": "Tom" },
|
|
6
|
+
"de-DE": { "calendar": "Kalender", "day": "Tag", "dayPeriod": "Tageshälfte", "endDate": "Enddatum", "era": "Epoche", "hour": "Stunde", "minute": "Minute", "month": "Monat", "second": "Sekunde", "selectedDateDescription": "Ausgewähltes Datum: {date}", "selectedRangeDescription": "Ausgewählter Bereich: {startDate} bis {endDate}", "selectedTimeDescription": "Ausgewählte Zeit: {time}", "startDate": "Startdatum", "timeZoneName": "Zeitzone", "weekday": "Wochentag", "year": "Jahr", "Empty": "Leer" },
|
|
7
|
+
"el-GR": { "calendar": "Ημερολόγιο", "day": "ημέρα", "dayPeriod": "π.μ./μ.μ.", "endDate": "Ημερομηνία λήξης", "era": "περίοδος", "hour": "ώρα", "minute": "λεπτό", "month": "μήνας", "second": "δευτερόλεπτο", "selectedDateDescription": "Επιλεγμένη ημερομηνία: {date}", "selectedRangeDescription": "Επιλεγμένο εύρος: {startDate} έως {endDate}", "selectedTimeDescription": "Επιλεγμένη ώρα: {time}", "startDate": "Ημερομηνία έναρξης", "timeZoneName": "ζώνη ώρας", "weekday": "καθημερινή", "year": "έτος", "Empty": "Άδειο" },
|
|
8
|
+
"en-US": { "era": "era", "year": "year", "month": "month", "day": "day", "hour": "hour", "minute": "minute", "second": "second", "dayPeriod": "AM/PM", "calendar": "Calendar", "startDate": "Start Date", "endDate": "End Date", "weekday": "day of the week", "timeZoneName": "time zone", "selectedDateDescription": "Selected Date: {date}", "selectedRangeDescription": "Selected Range: {startDate} to {endDate}", "selectedTimeDescription": "Selected Time: {time}", "Empty": "Empty" },
|
|
9
|
+
"es-ES": { "calendar": "Calendario", "day": "día", "dayPeriod": "a. m./p. m.", "endDate": "Fecha final", "era": "era", "hour": "hora", "minute": "minuto", "month": "mes", "second": "segundo", "selectedDateDescription": "Fecha seleccionada: {date}", "selectedRangeDescription": "Rango seleccionado: {startDate} a {endDate}", "selectedTimeDescription": "Hora seleccionada: {time}", "startDate": "Fecha de inicio", "timeZoneName": "zona horaria", "weekday": "día de la semana", "year": "año", "Empty": "Vacío" },
|
|
10
|
+
"et-EE": { "calendar": "Kalender", "day": "päev", "dayPeriod": "enne/pärast lõunat", "endDate": "Lõppkuupäev", "era": "ajastu", "hour": "tund", "minute": "minut", "month": "kuu", "second": "sekund", "selectedDateDescription": "Valitud kuupäev: {date}", "selectedRangeDescription": "Valitud vahemik: {startDate} kuni {endDate}", "selectedTimeDescription": "Valitud aeg: {time}", "startDate": "Alguskuupäev", "timeZoneName": "ajavöönd", "weekday": "nädalapäev", "year": "aasta", "Empty": "Tühjenda" },
|
|
11
|
+
"fi-FI": { "calendar": "Kalenteri", "day": "päivä", "dayPeriod": "vuorokaudenaika", "endDate": "Päättymispäivä", "era": "aikakausi", "hour": "tunti", "minute": "minuutti", "month": "kuukausi", "second": "sekunti", "selectedDateDescription": "Valittu päivämäärä: {date}", "selectedRangeDescription": "Valittu aikaväli: {startDate} – {endDate}", "selectedTimeDescription": "Valittu aika: {time}", "startDate": "Alkamispäivä", "timeZoneName": "aikavyöhyke", "weekday": "viikonpäivä", "year": "vuosi", "Empty": "Tyhjä" },
|
|
12
|
+
"fr-FR": { "calendar": "Calendrier", "day": "jour", "dayPeriod": "cadran", "endDate": "Date de fin", "era": "ère", "hour": "heure", "minute": "minute", "month": "mois", "second": "seconde", "selectedDateDescription": "Date sélectionnée : {date}", "selectedRangeDescription": "Plage sélectionnée : {startDate} au {endDate}", "selectedTimeDescription": "Heure choisie : {time}", "startDate": "Date de début", "timeZoneName": "fuseau horaire", "weekday": "jour de la semaine", "year": "année", "Empty": "Vide" },
|
|
13
|
+
"he-IL": { "calendar": "לוח שנה", "day": "יום", "dayPeriod": "לפנה״צ/אחה״צ", "endDate": "תאריך סיום", "era": "תקופה", "hour": "שעה", "minute": "דקה", "month": "חודש", "second": "שנייה", "selectedDateDescription": "תאריך נבחר: {date}", "selectedRangeDescription": "טווח נבחר: {startDate} עד {endDate}", "selectedTimeDescription": "זמן נבחר: {time}", "startDate": "תאריך התחלה", "timeZoneName": "אזור זמן", "weekday": "יום בשבוע", "year": "שנה", "Empty": "ריק" },
|
|
14
|
+
"hr-HR": { "calendar": "Kalendar", "day": "dan", "dayPeriod": "AM/PM", "endDate": "Datum završetka", "era": "era", "hour": "sat", "minute": "minuta", "month": "mjesec", "second": "sekunda", "selectedDateDescription": "Odabrani datum: {date}", "selectedRangeDescription": "Odabrani raspon: {startDate} do {endDate}", "selectedTimeDescription": "Odabrano vrijeme: {time}", "startDate": "Datum početka", "timeZoneName": "vremenska zona", "weekday": "dan u tjednu", "year": "godina", "Empty": "Prazno" },
|
|
15
|
+
"hu-HU": { "calendar": "Naptár", "day": "nap", "dayPeriod": "napszak", "endDate": "Befejező dátum", "era": "éra", "hour": "óra", "minute": "perc", "month": "hónap", "second": "másodperc", "selectedDateDescription": "Kijelölt dátum: {date}", "selectedRangeDescription": "Kijelölt tartomány: {startDate}–{endDate}", "selectedTimeDescription": "Kijelölt idő: {time}", "startDate": "Kezdő dátum", "timeZoneName": "időzóna", "weekday": "hét napja", "year": "év", "Empty": "Üres" },
|
|
16
|
+
"it-IT": { "calendar": "Calendario", "day": "giorno", "dayPeriod": "AM/PM", "endDate": "Data finale", "era": "era", "hour": "ora", "minute": "minuto", "month": "mese", "second": "secondo", "selectedDateDescription": "Data selezionata: {date}", "selectedRangeDescription": "Intervallo selezionato: da {startDate} a {endDate}", "selectedTimeDescription": "Ora selezionata: {time}", "startDate": "Data iniziale", "timeZoneName": "fuso orario", "weekday": "giorno della settimana", "year": "anno", "Empty": "Vuoto" },
|
|
17
|
+
"ja-JP": { "calendar": "カレンダー", "day": "日", "dayPeriod": "午前/午後", "endDate": "終了日", "era": "時代", "hour": "時", "minute": "分", "month": "月", "second": "秒", "selectedDateDescription": "選択した日付 : {date}", "selectedRangeDescription": "選択範囲 : {startDate} から {endDate}", "selectedTimeDescription": "選択した時間 : {time}", "startDate": "開始日", "timeZoneName": "タイムゾーン", "weekday": "曜日", "year": "年", "Empty": "空" },
|
|
18
|
+
"ko-KR": { "calendar": "달력", "day": "일", "dayPeriod": "오전/오후", "endDate": "종료일", "era": "연호", "hour": "시", "minute": "분", "month": "월", "second": "초", "selectedDateDescription": "선택 일자: {date}", "selectedRangeDescription": "선택 범위: {startDate} ~ {endDate}", "selectedTimeDescription": "선택 시간: {time}", "startDate": "시작일", "timeZoneName": "시간대", "weekday": "요일", "year": "년", "Empty": "비어 있음" },
|
|
19
|
+
"lt-LT": { "calendar": "Kalendorius", "day": "diena", "dayPeriod": "iki pietų / po pietų", "endDate": "Pabaigos data", "era": "era", "hour": "valanda", "minute": "minutė", "month": "mėnuo", "second": "sekundė", "selectedDateDescription": "Pasirinkta data: {date}", "selectedRangeDescription": "Pasirinktas intervalas: nuo {startDate} iki {endDate}", "selectedTimeDescription": "Pasirinktas laikas: {time}", "startDate": "Pradžios data", "timeZoneName": "laiko juosta", "weekday": "savaitės diena", "year": "metai", "Empty": "Tuščias" },
|
|
20
|
+
"lv-LV": { "calendar": "Kalendārs", "day": "diena", "dayPeriod": "priekšpusdienā/pēcpusdienā", "endDate": "Beigu datums", "era": "ēra", "hour": "stundas", "minute": "minūtes", "month": "mēnesis", "second": "sekundes", "selectedDateDescription": "Atlasītais datums: {date}", "selectedRangeDescription": "Atlasītais diapazons: no {startDate} līdz {endDate}", "selectedTimeDescription": "Atlasītais laiks: {time}", "startDate": "Sākuma datums", "timeZoneName": "laika josla", "weekday": "nedēļas diena", "year": "gads", "Empty": "Tukšs" },
|
|
21
|
+
"nb-NO": { "calendar": "Kalender", "day": "dag", "dayPeriod": "a.m./p.m.", "endDate": "Sluttdato", "era": "tidsalder", "hour": "time", "minute": "minutt", "month": "måned", "second": "sekund", "selectedDateDescription": "Valgt dato: {date}", "selectedRangeDescription": "Valgt område: {startDate} til {endDate}", "selectedTimeDescription": "Valgt tid: {time}", "startDate": "Startdato", "timeZoneName": "tidssone", "weekday": "ukedag", "year": "år", "Empty": "Tom" },
|
|
22
|
+
"nl-NL": { "calendar": "Kalender", "day": "dag", "dayPeriod": "a.m./p.m.", "endDate": "Einddatum", "era": "tijdperk", "hour": "uur", "minute": "minuut", "month": "maand", "second": "seconde", "selectedDateDescription": "Geselecteerde datum: {date}", "selectedRangeDescription": "Geselecteerd bereik: {startDate} tot {endDate}", "selectedTimeDescription": "Geselecteerde tijd: {time}", "startDate": "Startdatum", "timeZoneName": "tijdzone", "weekday": "dag van de week", "year": "jaar", "Empty": "Leeg" },
|
|
23
|
+
"pl-PL": { "calendar": "Kalendarz", "day": "dzień", "dayPeriod": "rano / po południu / wieczorem", "endDate": "Data końcowa", "era": "era", "hour": "godzina", "minute": "minuta", "month": "miesiąc", "second": "sekunda", "selectedDateDescription": "Wybrana data: {date}", "selectedRangeDescription": "Wybrany zakres: {startDate} do {endDate}", "selectedTimeDescription": "Wybrany czas: {time}", "startDate": "Data początkowa", "timeZoneName": "strefa czasowa", "weekday": "dzień tygodnia", "year": "rok", "Empty": "Pusty" },
|
|
24
|
+
"pt-BR": { "calendar": "Calendário", "day": "dia", "dayPeriod": "AM/PM", "endDate": "Data final", "era": "era", "hour": "hora", "minute": "minuto", "month": "mês", "second": "segundo", "selectedDateDescription": "Data selecionada: {date}", "selectedRangeDescription": "Intervalo selecionado: {startDate} a {endDate}", "selectedTimeDescription": "Hora selecionada: {time}", "startDate": "Data inicial", "timeZoneName": "fuso horário", "weekday": "dia da semana", "year": "ano", "Empty": "Vazio" },
|
|
25
|
+
"pt-PT": { "calendar": "Calendário", "day": "dia", "dayPeriod": "am/pm", "endDate": "Data de Término", "era": "era", "hour": "hora", "minute": "minuto", "month": "mês", "second": "segundo", "selectedDateDescription": "Data selecionada: {date}", "selectedRangeDescription": "Intervalo selecionado: {startDate} a {endDate}", "selectedTimeDescription": "Hora selecionada: {time}", "startDate": "Data de Início", "timeZoneName": "fuso horário", "weekday": "dia da semana", "year": "ano", "Empty": "Vazio" },
|
|
26
|
+
"ro-RO": { "calendar": "Calendar", "day": "zi", "dayPeriod": "a.m/p.m.", "endDate": "Dată final", "era": "eră", "hour": "oră", "minute": "minut", "month": "lună", "second": "secundă", "selectedDateDescription": "Dată selectată: {date}", "selectedRangeDescription": "Interval selectat: de la {startDate} până la {endDate}", "selectedTimeDescription": "Ora selectată: {time}", "startDate": "Dată început", "timeZoneName": "fus orar", "weekday": "ziua din săptămână", "year": "an", "Empty": "Gol" },
|
|
27
|
+
"ru-RU": { "calendar": "Календарь", "day": "день", "dayPeriod": "AM/PM", "endDate": "Дата окончания", "era": "эра", "hour": "час", "minute": "минута", "month": "месяц", "second": "секунда", "selectedDateDescription": "Выбранная дата: {date}", "selectedRangeDescription": "Выбранный диапазон: с {startDate} по {endDate}", "selectedTimeDescription": "Выбранное время: {time}", "startDate": "Дата начала", "timeZoneName": "часовой пояс", "weekday": "день недели", "year": "год", "Empty": "Не заполнено" },
|
|
28
|
+
"sk-SK": { "calendar": "Kalendár", "day": "deň", "dayPeriod": "AM/PM", "endDate": "Dátum ukončenia", "era": "letopočet", "hour": "hodina", "minute": "minúta", "month": "mesiac", "second": "sekunda", "selectedDateDescription": "Vybratý dátum: {date}", "selectedRangeDescription": "Vybratý rozsah: od {startDate} do {endDate}", "selectedTimeDescription": "Vybratý čas: {time}", "startDate": "Dátum začatia", "timeZoneName": "časové pásmo", "weekday": "deň týždňa", "year": "rok", "Empty": "Prázdne" },
|
|
29
|
+
"sl-SI": { "calendar": "Koledar", "day": "dan", "dayPeriod": "dop/pop", "endDate": "Datum konca", "era": "doba", "hour": "ura", "minute": "minuta", "month": "mesec", "second": "sekunda", "selectedDateDescription": "Izbrani datum: {date}", "selectedRangeDescription": "Izbrano območje: {startDate} do {endDate}", "selectedTimeDescription": "Izbrani čas: {time}", "startDate": "Datum začetka", "timeZoneName": "časovni pas", "weekday": "dan v tednu", "year": "leto", "Empty": "Prazen" },
|
|
30
|
+
"sr-SP": { "calendar": "Kalendar", "day": "дан", "dayPeriod": "пре подне/по подне", "endDate": "Datum završetka", "era": "ера", "hour": "сат", "minute": "минут", "month": "месец", "second": "секунд", "selectedDateDescription": "Izabrani datum: {date}", "selectedRangeDescription": "Izabrani opseg: od {startDate} do {endDate}", "selectedTimeDescription": "Izabrano vreme: {time}", "startDate": "Datum početka", "timeZoneName": "временска зона", "weekday": "дан у недељи", "year": "година", "Empty": "Prazno" },
|
|
31
|
+
"sv-SE": { "calendar": "Kalender", "day": "dag", "dayPeriod": "fm/em", "endDate": "Slutdatum", "era": "era", "hour": "timme", "minute": "minut", "month": "månad", "second": "sekund", "selectedDateDescription": "Valt datum: {date}", "selectedRangeDescription": "Valt intervall: {startDate} till {endDate}", "selectedTimeDescription": "Vald tid: {time}", "startDate": "Startdatum", "timeZoneName": "tidszon", "weekday": "veckodag", "year": "år", "Empty": "Tomt" },
|
|
32
|
+
"tr-TR": { "calendar": "Takvim", "day": "gün", "dayPeriod": "ÖÖ/ÖS", "endDate": "Bitiş Tarihi", "era": "çağ", "hour": "saat", "minute": "dakika", "month": "ay", "second": "saniye", "selectedDateDescription": "Seçilen Tarih: {date}", "selectedRangeDescription": "Seçilen Aralık: {startDate} - {endDate}", "selectedTimeDescription": "Seçilen Zaman: {time}", "startDate": "Başlangıç Tarihi", "timeZoneName": "saat dilimi", "weekday": "haftanın günü", "year": "yıl", "Empty": "Boş" },
|
|
33
|
+
"uk-UA": { "calendar": "Календар", "day": "день", "dayPeriod": "дп/пп", "endDate": "Дата завершення", "era": "ера", "hour": "година", "minute": "хвилина", "month": "місяць", "second": "секунда", "selectedDateDescription": "Вибрана дата: {date}", "selectedRangeDescription": "Вибраний діапазон: {startDate} — {endDate}", "selectedTimeDescription": "Вибраний час: {time}", "startDate": "Дата початку", "timeZoneName": "часовий пояс", "weekday": "день тижня", "year": "рік", "Empty": "Пусто" },
|
|
34
|
+
"zh-CN": { "calendar": "日历", "day": "日", "dayPeriod": "上午/下午", "endDate": "结束日期", "era": "纪元", "hour": "小时", "minute": "分钟", "month": "月", "second": "秒", "selectedDateDescription": "选定的日期:{date}", "selectedRangeDescription": "选定的范围:{startDate} 至 {endDate}", "selectedTimeDescription": "选定的时间:{time}", "startDate": "开始日期", "timeZoneName": "时区", "weekday": "工作日", "year": "年", "Empty": "空" },
|
|
35
|
+
"zh-TW": { "calendar": "日曆", "day": "日", "dayPeriod": "上午/下午", "endDate": "結束日期", "era": "纪元", "hour": "小时", "minute": "分钟", "month": "月", "second": "秒", "selectedDateDescription": "選定的日期:{date}", "selectedRangeDescription": "選定的範圍:{startDate} 至 {endDate}", "selectedTimeDescription": "選定的時間:{time}", "startDate": "開始日期", "timeZoneName": "时区", "weekday": "工作日", "year": "年", "Empty": "空白" },
|
|
36
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
type Text = string | null;
|
|
2
|
+
/** A date value (single, multiple or range) in the states' string form. */
|
|
3
|
+
export declare function dateValueText(value: unknown): Text | Text[] | {
|
|
4
|
+
start: Text;
|
|
5
|
+
end: Text;
|
|
6
|
+
} | null;
|
|
7
|
+
/**
|
|
8
|
+
* The `value` option for a date state: a live, defined, non-Signal `value` becomes an accessor of its string form
|
|
9
|
+
* (controlled, never written); a Signal (two-way), `undefined` (uncontrolled) or a static value is returned as is.
|
|
10
|
+
*/
|
|
11
|
+
export declare function liveDateValue<T extends {
|
|
12
|
+
value?: unknown;
|
|
13
|
+
}>(props: T): T["value"];
|
|
14
|
+
/**
|
|
15
|
+
* `props` with a live controlled `value` replaced by its string-form accessor (`liveDateValue`), other keys forwarded
|
|
16
|
+
* unread — spread it into the state options: the copy reads no `value` getter (a resumed region is not re-created
|
|
17
|
+
* on a value change). Static props / no live `value`: `props` itself.
|
|
18
|
+
*/
|
|
19
|
+
export declare function liveDateProps<T extends {
|
|
20
|
+
value?: unknown;
|
|
21
|
+
}>(props: T): T;
|
|
22
|
+
export {};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
// Rivet-only (no React Aria counterpart): live controlled date values (live props P5). The date states keep values
|
|
2
|
+
// as strings (`@rivetjs/cdk/date` serialize: resumable); a live `value={date()}` arrives as a getter of a date object
|
|
3
|
+
// (or an array / range of them). `liveDateValue` turns it into an accessor of the string form, which the states take
|
|
4
|
+
// as a controlled value: read on every use, never written (changes only call `onChange`, upstream's controlled prop).
|
|
5
|
+
// A `.tsx` module (resume-compiled): the accessor is a resumable symbol over a narrow props view.
|
|
6
|
+
import { untrack } from "@rivetjs/reactivity";
|
|
7
|
+
import { splitProps } from "@rivetjs/runtime/props";
|
|
8
|
+
import { toDateValueString } from "../date/serialize.js";
|
|
9
|
+
import { isLive, liveAssign } from "../utils/live.jsx";
|
|
10
|
+
/** A date value (single, multiple or range) in the states' string form. */
|
|
11
|
+
export function dateValueText(value) {
|
|
12
|
+
if (value == null)
|
|
13
|
+
return null;
|
|
14
|
+
if (typeof value === "string")
|
|
15
|
+
return value;
|
|
16
|
+
if (Array.isArray(value))
|
|
17
|
+
return value.map((v) => toDateValueString(v));
|
|
18
|
+
const range = value;
|
|
19
|
+
if (!("calendar" in range) && "start" in range && "end" in range)
|
|
20
|
+
return { start: toDateValueString(range.start), end: toDateValueString(range.end) };
|
|
21
|
+
return toDateValueString(value);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* The `value` option for a date state: a live, defined, non-Signal `value` becomes an accessor of its string form
|
|
25
|
+
* (controlled, never written); a Signal (two-way), `undefined` (uncontrolled) or a static value is returned as is.
|
|
26
|
+
*/
|
|
27
|
+
export function liveDateValue(props) {
|
|
28
|
+
if (!isLive(props, "value"))
|
|
29
|
+
return props.value;
|
|
30
|
+
const now = untrack(() => props.value);
|
|
31
|
+
if (now === undefined || typeof now === "function")
|
|
32
|
+
return now;
|
|
33
|
+
const view = splitProps(props, ["value"])[0];
|
|
34
|
+
return (() => dateValueText(view.value));
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* `props` with a live controlled `value` replaced by its string-form accessor (`liveDateValue`), other keys forwarded
|
|
38
|
+
* unread — spread it into the state options: the copy reads no `value` getter (a resumed region is not re-created
|
|
39
|
+
* on a value change). Static props / no live `value`: `props` itself.
|
|
40
|
+
*/
|
|
41
|
+
export function liveDateProps(props) {
|
|
42
|
+
const value = liveDateValue(props);
|
|
43
|
+
return typeof value === "function" && value !== untrack(() => props.value) ? liveAssign(props, { value }) : props;
|
|
44
|
+
}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { createSlotId } from "../slots/index.jsx";
|
|
2
|
+
import { type ValidationResult } from "../state/form-validation.js";
|
|
3
|
+
import { type AriaDateFieldOptions, type FocusWithinHandlers } from "../date-field/behaviour.jsx";
|
|
4
|
+
import { type DateFieldState } from "../state/date-field.js";
|
|
5
|
+
import { type AnyDatePickerState, type DatePickerState, type DateRangePickerState } from "../state/date-picker.js";
|
|
6
|
+
import { type CalendarDate, type DateValueString } from "@rivetjs/cdk/date";
|
|
7
|
+
export declare const labelId: (state: AnyDatePickerState) => string;
|
|
8
|
+
export declare const buttonId: (state: AnyDatePickerState) => string;
|
|
9
|
+
export declare const dialogId: (state: AnyDatePickerState) => string;
|
|
10
|
+
/** The selected-value description (React Aria `useDescription`). */
|
|
11
|
+
export declare const valueDescriptionId: (state: AnyDatePickerState) => string;
|
|
12
|
+
/** DatePicker field id; DateRangePicker: `<id>-start` / `<id>-end`. */
|
|
13
|
+
export declare const fieldId: (state: AnyDatePickerState, part?: "start" | "end") => string;
|
|
14
|
+
/** The selected-value description (`Selected Date: …` / `Selected Range: … to …`). Reads. */
|
|
15
|
+
export declare function pickerValueDescription(state: AnyDatePickerState): string;
|
|
16
|
+
/**
|
|
17
|
+
* keydown in the group (useDatePickerGroup + useDatePicker): Alt+ArrowDown / Alt+ArrowUp open the
|
|
18
|
+
* popover; ArrowLeft / ArrowRight move between the segments and the button. A segment's own keys
|
|
19
|
+
* (handled by its field) are skipped. Runs on the group and forwarded by the fields.
|
|
20
|
+
*/
|
|
21
|
+
export declare function datePickerGroupKeyDown(event: KeyboardEvent, state: AnyDatePickerState): void;
|
|
22
|
+
/** Label click: focus the first segment (DateRangePicker: the start field's). */
|
|
23
|
+
export declare function datePickerLabelClick(event: MouseEvent, state: AnyDatePickerState): void;
|
|
24
|
+
/** focusin within the picker (RAC useFocusRing({within}) of the root: `data-focus-within`, `data-focus-visible`). */
|
|
25
|
+
export declare function datePickerFocusIn(event: FocusEvent, state: AnyDatePickerState): void;
|
|
26
|
+
/** focusout within the picker: focus within ends when focus leaves the root (the portalled popover is outside). */
|
|
27
|
+
export declare function datePickerFocusOut(event: FocusEvent, state: AnyDatePickerState): void;
|
|
28
|
+
/** The user's FocusableProps of a picker (React Aria useDatePicker: on the group, not while the popover is open). */
|
|
29
|
+
export interface PickerUserEvents extends FocusWithinHandlers {
|
|
30
|
+
onKeyDown?: ((event: KeyboardEvent) => void) | undefined;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* The user's handler of a group keydown / focusin / focusout (after the picker's own): once
|
|
34
|
+
* per event (fields forward theirs and client-created events also bubble), skipped while open.
|
|
35
|
+
*/
|
|
36
|
+
export declare function datePickerUserEvent(event: Event, state: AnyDatePickerState, user: PickerUserEvents | undefined): void;
|
|
37
|
+
/** Events a picker field forwards to the picker after its own handler (resumed handlers do not bubble to ancestors). */
|
|
38
|
+
export declare function datePickerFieldEvent(event: Event, state: AnyDatePickerState, user?: PickerUserEvents): void;
|
|
39
|
+
/** The popover opened: move focus to the calendar's focused cell (RAC Calendar `autoFocus`). */
|
|
40
|
+
export declare function datePickerPopoverOpened(element: Element | null | undefined): void;
|
|
41
|
+
/** Sync the hidden inputs of the picker's fields (after a value written from the calendar / on close). */
|
|
42
|
+
export declare function syncPickerInputs(state: AnyDatePickerState, doc: Document): void;
|
|
43
|
+
type Accessor<T> = () => T;
|
|
44
|
+
export interface AriaDatePickerOptions extends PickerUserEvents {
|
|
45
|
+
"aria-label"?: string | undefined;
|
|
46
|
+
"aria-labelledby"?: string | undefined;
|
|
47
|
+
"aria-describedby"?: string | undefined;
|
|
48
|
+
"aria-details"?: string | undefined;
|
|
49
|
+
/** Whether a visible label renders (RAC `useSlot`). */
|
|
50
|
+
label?: boolean | Accessor<boolean> | undefined;
|
|
51
|
+
onKeyUp?: ((event: KeyboardEvent) => void) | undefined;
|
|
52
|
+
name?: string | undefined;
|
|
53
|
+
/** DateRangePicker: the names of the start / end hidden inputs. */
|
|
54
|
+
startName?: string | undefined;
|
|
55
|
+
endName?: string | undefined;
|
|
56
|
+
form?: string | undefined;
|
|
57
|
+
validationBehavior?: "native" | "aria" | undefined;
|
|
58
|
+
/** Calendar props from the picker (forwarded to CalendarContext / RangeCalendarContext). */
|
|
59
|
+
isDateUnavailable?: ((date: CalendarDate, anchorDate?: CalendarDate | null) => boolean) | undefined;
|
|
60
|
+
allowsNonContiguousRanges?: boolean | undefined;
|
|
61
|
+
createCalendar?: unknown;
|
|
62
|
+
}
|
|
63
|
+
export interface DatePickerAria {
|
|
64
|
+
groupProps: Record<string, unknown>;
|
|
65
|
+
labelProps: Record<string, unknown>;
|
|
66
|
+
/** DatePicker: the DateInput's props (DateFieldContext). */
|
|
67
|
+
fieldProps: AriaDateFieldOptions & {
|
|
68
|
+
pickerField: DateFieldState;
|
|
69
|
+
};
|
|
70
|
+
buttonProps: Record<string, unknown>;
|
|
71
|
+
dialogProps: Record<string, unknown>;
|
|
72
|
+
calendarProps: Record<string, unknown>;
|
|
73
|
+
descriptionProps: {
|
|
74
|
+
id: ReturnType<typeof createSlotId>;
|
|
75
|
+
};
|
|
76
|
+
errorMessageProps: {
|
|
77
|
+
id: ReturnType<typeof createSlotId>;
|
|
78
|
+
};
|
|
79
|
+
isInvalid: Accessor<boolean>;
|
|
80
|
+
validationErrors: Accessor<string[]>;
|
|
81
|
+
validationDetails: Accessor<ValidationResult["validationDetails"]>;
|
|
82
|
+
}
|
|
83
|
+
export interface DateRangePickerAria extends Omit<DatePickerAria, "fieldProps"> {
|
|
84
|
+
startFieldProps: AriaDateFieldOptions & {
|
|
85
|
+
pickerField: DateFieldState;
|
|
86
|
+
};
|
|
87
|
+
endFieldProps: AriaDateFieldOptions & {
|
|
88
|
+
pickerField: DateFieldState;
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
/** useDatePicker: the attribute bags of a date picker. Creates the picker's field state (shared value). */
|
|
92
|
+
export declare function datePickerProps(props: AriaDatePickerOptions, state: DatePickerState): DatePickerAria;
|
|
93
|
+
/** useDateRangePicker: the attribute bags of a date range picker (start / end fields share the picker's value). */
|
|
94
|
+
export declare function dateRangePickerProps(props: AriaDatePickerOptions, state: DateRangePickerState): DateRangePickerAria;
|
|
95
|
+
export type { DatePickerState, DateRangePickerState, DateValueString };
|
|
@@ -0,0 +1,343 @@
|
|
|
1
|
+
// Ported from react-aria (react-spectrum) src/datepicker/useDatePicker.ts, useDateRangePicker.ts and
|
|
2
|
+
// useDatePickerGroup.ts, Apache-2.0, © Adobe.
|
|
3
|
+
// Rivet:
|
|
4
|
+
// - Naming: `useDatePicker` → `datePickerProps(props, state)` ({ groupProps, labelProps, fieldProps, buttonProps,
|
|
5
|
+
// dialogProps, calendarProps, descriptionProps, errorMessageProps, isInvalid, validationErrors,
|
|
6
|
+
// validationDetails }), `useDateRangePicker` → `dateRangePickerProps` (`startFieldProps` / `endFieldProps`).
|
|
7
|
+
// State-dependent values are accessors; handlers are free functions `(event, state)`. `.tsx`: the closures resume.
|
|
8
|
+
// - `fieldProps` carry the picker's field state (`pickerField`, sharing the picker's value: React Aria passes
|
|
9
|
+
// `value` / `onChange`) and `forward` (a resumed page runs only the nearest element's handler of an event: the
|
|
10
|
+
// field forwards its keydown / focusin / focusout to the picker group's logic).
|
|
11
|
+
// - `calendarProps` values the Calendar reads when it renders (each open) are accessors: `defaultValue`,
|
|
12
|
+
// `defaultFocusedValue`, `isInvalid` (React Aria: `value` / `onChange` of the current render).
|
|
13
|
+
// - Ids derive from the picker's base id (`<id>-label`, `<id>-field` / `-start` / `-end`, `<id>-button`,
|
|
14
|
+
// `<id>-dialog` …). On open, focus moves to the calendar's focused cell (RAC Calendar `autoFocus`).
|
|
15
|
+
// Deviation: closing commits (`commitOnClose`, React Stately `setOpen(false)`) from the component (`PickerCommit` in
|
|
16
|
+
// index.tsx, mounted while open), so Escape / outside press commit like the state's `setOpen`.
|
|
17
|
+
import { untrack } from "@rivetjs/reactivity";
|
|
18
|
+
import { createFocusManager, focusSafely } from "@rivetjs/cdk/focus";
|
|
19
|
+
import { isFocusVisible, syncModalityFromFocus } from "@rivetjs/cdk/interactions/focus-visible";
|
|
20
|
+
import { createSlotId, slotIdRef } from "../slots/index.jsx";
|
|
21
|
+
import { labelsProps } from "../label/behaviour.js";
|
|
22
|
+
import { displayValidation } from "../state/form-validation.js";
|
|
23
|
+
import { dateGroupPointerDown, dateGroupPointerUp, syncFieldInput, arrowNavigation, message, wasHandled, focusWithinEvent, onceFor, ownerFlag, ownerFlagAttr, } from "../date-field/behaviour.jsx";
|
|
24
|
+
import { createPickerFieldState, ownerDisabled, ownerReadOnly } from "../state/date-field.js";
|
|
25
|
+
import { dateRange, dateValue, formatValue, isInvalid as pickerIsInvalid, setDateRange, setDateValue, setOpen, } from "../state/date-picker.js";
|
|
26
|
+
import { stringifyDateValue } from "@rivetjs/cdk/date";
|
|
27
|
+
export const labelId = (state) => state.id + "-label";
|
|
28
|
+
export const buttonId = (state) => state.id + "-button";
|
|
29
|
+
export const dialogId = (state) => state.id + "-dialog";
|
|
30
|
+
/** The selected-value description (React Aria `useDescription`). */
|
|
31
|
+
export const valueDescriptionId = (state) => state.id + "-value";
|
|
32
|
+
/** DatePicker field id; DateRangePicker: `<id>-start` / `<id>-end`. */
|
|
33
|
+
export const fieldId = (state, part) => state.id + "-" + (part ?? "field");
|
|
34
|
+
/** The selected-value description (`Selected Date: …` / `Selected Range: … to …`). Reads. */
|
|
35
|
+
export function pickerValueDescription(state) {
|
|
36
|
+
if (state.kind === "range") {
|
|
37
|
+
const range = formatValue(state, state.locale, { month: "long" });
|
|
38
|
+
return range ? message(state.locale, "selectedRangeDescription", { startDate: range.start, endDate: range.end }) : "";
|
|
39
|
+
}
|
|
40
|
+
const date = formatValue(state, state.locale, { month: "long" });
|
|
41
|
+
return date ? message(state.locale, "selectedDateDescription", { date }) : "";
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* keydown in the group (useDatePickerGroup + useDatePicker): Alt+ArrowDown / Alt+ArrowUp open the
|
|
45
|
+
* popover; ArrowLeft / ArrowRight move between the segments and the button. A segment's own keys
|
|
46
|
+
* (handled by its field) are skipped. Runs on the group and forwarded by the fields.
|
|
47
|
+
*/
|
|
48
|
+
export function datePickerGroupKeyDown(event, state) {
|
|
49
|
+
if (untrack(state.isOpen) || wasHandled(event))
|
|
50
|
+
return;
|
|
51
|
+
const group = event.target.ownerDocument.getElementById(state.id);
|
|
52
|
+
if (!group?.contains(event.target))
|
|
53
|
+
return;
|
|
54
|
+
if (event.altKey && (event.key === "ArrowDown" || event.key === "ArrowUp")) {
|
|
55
|
+
event.preventDefault();
|
|
56
|
+
event.stopPropagation();
|
|
57
|
+
setOpen(state, true);
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
if (event.altKey || event.ctrlKey || event.metaKey || event.shiftKey)
|
|
61
|
+
return;
|
|
62
|
+
if (arrowNavigation(state.locale, group, event.target, event)) {
|
|
63
|
+
event.preventDefault();
|
|
64
|
+
event.stopPropagation();
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
/** Label click: focus the first segment (DateRangePicker: the start field's). */
|
|
68
|
+
export function datePickerLabelClick(event, state) {
|
|
69
|
+
const group = event.currentTarget.ownerDocument.getElementById(state.id);
|
|
70
|
+
if (group)
|
|
71
|
+
createFocusManager(() => group, { accept: (element) => element.id !== buttonId(state) }).focusFirst();
|
|
72
|
+
}
|
|
73
|
+
const pickerRoot = (state, event) => event.target.ownerDocument.getElementById(state.id)?.closest("[data-rv-date-picker]") ?? null;
|
|
74
|
+
/** focusin within the picker (RAC useFocusRing({within}) of the root: `data-focus-within`, `data-focus-visible`). */
|
|
75
|
+
export function datePickerFocusIn(event, state) {
|
|
76
|
+
syncModalityFromFocus(event.target);
|
|
77
|
+
if (!untrack(state.isFocusWithin))
|
|
78
|
+
state.isFocusWithin.set(true);
|
|
79
|
+
const visible = isFocusVisible();
|
|
80
|
+
if (untrack(state.isFocusVisible) !== visible)
|
|
81
|
+
state.isFocusVisible.set(visible);
|
|
82
|
+
}
|
|
83
|
+
/** focusout within the picker: focus within ends when focus leaves the root (the portalled popover is outside). */
|
|
84
|
+
export function datePickerFocusOut(event, state) {
|
|
85
|
+
if (pickerRoot(state, event)?.contains(event.relatedTarget))
|
|
86
|
+
return;
|
|
87
|
+
state.isFocusWithin.set(false);
|
|
88
|
+
state.isFocusVisible.set(false);
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* The user's handler of a group keydown / focusin / focusout (after the picker's own): once
|
|
92
|
+
* per event (fields forward theirs and client-created events also bubble), skipped while open.
|
|
93
|
+
*/
|
|
94
|
+
export function datePickerUserEvent(event, state, user) {
|
|
95
|
+
if (!user)
|
|
96
|
+
return;
|
|
97
|
+
const group = event.target.ownerDocument.getElementById(state.id);
|
|
98
|
+
if (!group)
|
|
99
|
+
return;
|
|
100
|
+
const isOpen = untrack(state.isOpen);
|
|
101
|
+
if (event.type === "focusin" || event.type === "focusout") {
|
|
102
|
+
if (group.contains(event.target))
|
|
103
|
+
focusWithinEvent(group, event, user, isOpen);
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
if (isOpen || !group.contains(event.target) || !onceFor(group, event))
|
|
107
|
+
return;
|
|
108
|
+
if (event.type === "keydown")
|
|
109
|
+
user.onKeyDown?.(event);
|
|
110
|
+
}
|
|
111
|
+
/** Events a picker field forwards to the picker after its own handler (resumed handlers do not bubble to ancestors). */
|
|
112
|
+
export function datePickerFieldEvent(event, state, user) {
|
|
113
|
+
if (event.type === "keydown")
|
|
114
|
+
datePickerGroupKeyDown(event, state);
|
|
115
|
+
else if (event.type === "focusin")
|
|
116
|
+
datePickerFocusIn(event, state);
|
|
117
|
+
else if (event.type === "focusout")
|
|
118
|
+
datePickerFocusOut(event, state);
|
|
119
|
+
datePickerUserEvent(event, state, user);
|
|
120
|
+
}
|
|
121
|
+
/** The popover opened: move focus to the calendar's focused cell (RAC Calendar `autoFocus`). */
|
|
122
|
+
export function datePickerPopoverOpened(element) {
|
|
123
|
+
if (!element)
|
|
124
|
+
return;
|
|
125
|
+
const cell = element.querySelector('[role="grid"] [tabindex="0"]');
|
|
126
|
+
if (cell && !cell.contains(element.ownerDocument.activeElement))
|
|
127
|
+
focusSafely(cell);
|
|
128
|
+
}
|
|
129
|
+
/** Sync the hidden inputs of the picker's fields (after a value written from the calendar / on close). */
|
|
130
|
+
export function syncPickerInputs(state, doc) {
|
|
131
|
+
// Field views over the picker's value (cheap; the inputs show committed values only).
|
|
132
|
+
const parts = state.kind === "range" ? ["start", "end"] : [undefined];
|
|
133
|
+
for (const part of parts) {
|
|
134
|
+
const link = part ? { owner: state, part } : { owner: state };
|
|
135
|
+
syncFieldInput(createPickerFieldState(link, { id: fieldId(state, part), locale: state.locale, defaultValue: null }), doc);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
/** The calendar button's `isDisabled` (disabled or read-only): the creation value, or an accessor while a flag is live. */
|
|
139
|
+
function buttonDisabled(state) {
|
|
140
|
+
return state.disabled || state.readOnly ? buttonDisabledReader(state) : state.isDisabled || state.isReadOnly;
|
|
141
|
+
}
|
|
142
|
+
function buttonDisabledReader(state) {
|
|
143
|
+
return () => ownerDisabled(state) || ownerReadOnly(state);
|
|
144
|
+
}
|
|
145
|
+
function pickerBase(props, state) {
|
|
146
|
+
// Locals: a resumable closure reading `props.x` would capture the whole props object.
|
|
147
|
+
const label = props.label;
|
|
148
|
+
// A function (createSlot's `hasSlot`, resumable) or a plain boolean: an arrow made in a ternary would not serialize.
|
|
149
|
+
const labelled = typeof label === "function" ? label : !!label;
|
|
150
|
+
const hasLabel = () => (typeof labelled === "function" ? labelled() : labelled);
|
|
151
|
+
const ariaLabel = props["aria-label"];
|
|
152
|
+
const ownLabelledBy = props["aria-labelledby"];
|
|
153
|
+
const extraDescribedBy = props["aria-describedby"];
|
|
154
|
+
const isInvalid = () => pickerIsInvalid(state);
|
|
155
|
+
const descriptionId = createSlotId(state.id + "-description");
|
|
156
|
+
const errorId = createSlotId(state.id + "-error", isInvalid);
|
|
157
|
+
// useField: the visible label labels the group; aria-label + aria-labelledby → the group labels itself too.
|
|
158
|
+
const labelledBy = () => {
|
|
159
|
+
const ids = [hasLabel() ? labelId(state) : undefined, ownLabelledBy].filter(Boolean).join(" ") || undefined;
|
|
160
|
+
return labelsProps(state.id, ariaLabel, ids)["aria-labelledby"];
|
|
161
|
+
};
|
|
162
|
+
const describedBy = () => [
|
|
163
|
+
pickerValueDescription(state) ? valueDescriptionId(state) : undefined,
|
|
164
|
+
slotIdRef(descriptionId, false),
|
|
165
|
+
isInvalid() ? slotIdRef(errorId) : undefined,
|
|
166
|
+
extraDescribedBy,
|
|
167
|
+
]
|
|
168
|
+
.filter(Boolean)
|
|
169
|
+
.join(" ") || undefined;
|
|
170
|
+
// The group labels the button and the dialog: the group's own label, else the group id.
|
|
171
|
+
const groupLabelledBy = () => labelledBy() || state.id;
|
|
172
|
+
const user = props.onFocus || props.onBlur || props.onFocusChange || props.onKeyDown
|
|
173
|
+
? { onFocus: props.onFocus, onBlur: props.onBlur, onFocusChange: props.onFocusChange, onKeyDown: props.onKeyDown }
|
|
174
|
+
: undefined;
|
|
175
|
+
const validation = state.validation;
|
|
176
|
+
return {
|
|
177
|
+
hasLabel,
|
|
178
|
+
labelledBy,
|
|
179
|
+
describedBy,
|
|
180
|
+
user,
|
|
181
|
+
isInvalid,
|
|
182
|
+
groupProps: {
|
|
183
|
+
id: state.id,
|
|
184
|
+
role: "group",
|
|
185
|
+
"aria-label": ariaLabel,
|
|
186
|
+
"aria-labelledby": groupLabelledBy,
|
|
187
|
+
"aria-describedby": describedBy,
|
|
188
|
+
"aria-details": props["aria-details"],
|
|
189
|
+
"aria-disabled": ownerFlagAttr(state, 0),
|
|
190
|
+
isInvalid,
|
|
191
|
+
isDisabled: ownerFlag(state, 0),
|
|
192
|
+
isReadOnly: ownerFlag(state, 1),
|
|
193
|
+
onKeyDown: (event) => {
|
|
194
|
+
datePickerGroupKeyDown(event, state);
|
|
195
|
+
datePickerUserEvent(event, state, user);
|
|
196
|
+
},
|
|
197
|
+
onKeyUp: props.onKeyUp,
|
|
198
|
+
onFocusIn: (event) => {
|
|
199
|
+
datePickerFocusIn(event, state);
|
|
200
|
+
datePickerUserEvent(event, state, user);
|
|
201
|
+
},
|
|
202
|
+
onFocusOut: (event) => {
|
|
203
|
+
datePickerFocusOut(event, state);
|
|
204
|
+
datePickerUserEvent(event, state, user);
|
|
205
|
+
},
|
|
206
|
+
onPointerDown: (event) => dateGroupPointerDown(event),
|
|
207
|
+
onPointerUp: (event) => dateGroupPointerUp(event),
|
|
208
|
+
},
|
|
209
|
+
labelProps: { id: labelId(state), onClick: (event) => datePickerLabelClick(event, state) },
|
|
210
|
+
buttonProps: {
|
|
211
|
+
id: buttonId(state),
|
|
212
|
+
"aria-haspopup": "dialog",
|
|
213
|
+
"aria-label": message(state.locale, "calendar"),
|
|
214
|
+
"aria-labelledby": () => `${buttonId(state)} ${groupLabelledBy()}`,
|
|
215
|
+
"aria-describedby": describedBy,
|
|
216
|
+
"aria-expanded": () => (state.isOpen() ? "true" : "false"),
|
|
217
|
+
isDisabled: buttonDisabled(state),
|
|
218
|
+
isPressed: () => state.isOpen(),
|
|
219
|
+
onPress: () => setOpen(state, true),
|
|
220
|
+
},
|
|
221
|
+
dialogProps: { id: dialogId(state), "aria-labelledby": () => `${buttonId(state)} ${groupLabelledBy()}` },
|
|
222
|
+
descriptionProps: { id: descriptionId },
|
|
223
|
+
errorMessageProps: { id: errorId },
|
|
224
|
+
validationErrors: () => displayValidation(validation).validationErrors,
|
|
225
|
+
validationDetails: () => displayValidation(validation).validationDetails,
|
|
226
|
+
};
|
|
227
|
+
}
|
|
228
|
+
/** useDatePicker: the attribute bags of a date picker. Creates the picker's field state (shared value). */
|
|
229
|
+
export function datePickerProps(props, state) {
|
|
230
|
+
const base = pickerBase(props, state);
|
|
231
|
+
const id = fieldId(state);
|
|
232
|
+
const field = createPickerFieldState({ owner: state }, { id, locale: state.locale, defaultValue: state.defaultValue });
|
|
233
|
+
const { user } = base;
|
|
234
|
+
const isDateUnavailable = props.isDateUnavailable;
|
|
235
|
+
return {
|
|
236
|
+
groupProps: base.groupProps,
|
|
237
|
+
labelProps: base.labelProps,
|
|
238
|
+
fieldProps: {
|
|
239
|
+
pickerField: field,
|
|
240
|
+
isPresentation: true,
|
|
241
|
+
"aria-label": props["aria-label"],
|
|
242
|
+
// An accessor (RA: useSlot starts `true`, the label settles after mount): a call here froze the client value
|
|
243
|
+
// before the picker Label mounted (server `month, ` + labelledby, client `month`).
|
|
244
|
+
"aria-labelledby": base.labelledBy,
|
|
245
|
+
// RA useDatePicker fieldProps: the segments are described by the picker.
|
|
246
|
+
"aria-describedby": base.describedBy,
|
|
247
|
+
name: props.name,
|
|
248
|
+
form: props.form,
|
|
249
|
+
validationBehavior: props.validationBehavior,
|
|
250
|
+
forward: (event) => datePickerFieldEvent(event, state, user),
|
|
251
|
+
},
|
|
252
|
+
buttonProps: base.buttonProps,
|
|
253
|
+
dialogProps: base.dialogProps,
|
|
254
|
+
calendarProps: {
|
|
255
|
+
autoFocus: true,
|
|
256
|
+
defaultValue: () => {
|
|
257
|
+
const value = untrack(() => dateValue(state));
|
|
258
|
+
return value ? stringifyDateValue(value) : null;
|
|
259
|
+
},
|
|
260
|
+
defaultFocusedValue: () => (untrack(() => dateValue(state)) ? undefined : state.placeholderValue),
|
|
261
|
+
onChange: (date) => {
|
|
262
|
+
// The hidden inputs sync before the validation commit (it reads their native validity).
|
|
263
|
+
setDateValue(state, date, () => syncPickerInputs(state, document));
|
|
264
|
+
syncPickerInputs(state, document);
|
|
265
|
+
},
|
|
266
|
+
minValue: state.minValue,
|
|
267
|
+
maxValue: state.maxValue,
|
|
268
|
+
isDisabled: ownerFlag(state, 0),
|
|
269
|
+
isReadOnly: ownerFlag(state, 1),
|
|
270
|
+
// RA: the user's function as is (an arrow made in a ternary does not serialize: the context entry dropped).
|
|
271
|
+
isDateUnavailable,
|
|
272
|
+
isInvalid: () => untrack(() => pickerIsInvalid(state)),
|
|
273
|
+
firstDayOfWeek: state.firstDayOfWeek,
|
|
274
|
+
pageBehavior: state.pageBehavior,
|
|
275
|
+
},
|
|
276
|
+
descriptionProps: base.descriptionProps,
|
|
277
|
+
errorMessageProps: base.errorMessageProps,
|
|
278
|
+
isInvalid: base.isInvalid,
|
|
279
|
+
validationErrors: base.validationErrors,
|
|
280
|
+
validationDetails: base.validationDetails,
|
|
281
|
+
};
|
|
282
|
+
}
|
|
283
|
+
/** useDateRangePicker: the attribute bags of a date range picker (start / end fields share the picker's value). */
|
|
284
|
+
export function dateRangePickerProps(props, state) {
|
|
285
|
+
const base = pickerBase(props, state);
|
|
286
|
+
const { user } = base;
|
|
287
|
+
const fieldOf = (part) => {
|
|
288
|
+
const id = fieldId(state, part);
|
|
289
|
+
const defaults = state.defaultValue;
|
|
290
|
+
const field = createPickerFieldState({ owner: state, part }, { id, locale: state.locale, defaultValue: defaults ? defaults[part] : null });
|
|
291
|
+
return {
|
|
292
|
+
pickerField: field,
|
|
293
|
+
isPresentation: true,
|
|
294
|
+
"aria-label": message(state.locale, part === "start" ? "startDate" : "endDate"),
|
|
295
|
+
// An accessor (RA: useSlot starts `true`, the label settles after mount): a call here froze the client value
|
|
296
|
+
// before the picker Label mounted (server `month, ` + labelledby, client `month`).
|
|
297
|
+
"aria-labelledby": base.labelledBy,
|
|
298
|
+
// RA useDateRangePicker start / end fieldProps: the segments are described by the picker.
|
|
299
|
+
"aria-describedby": base.describedBy,
|
|
300
|
+
name: part === "start" ? props.startName : props.endName,
|
|
301
|
+
form: props.form,
|
|
302
|
+
validationBehavior: props.validationBehavior,
|
|
303
|
+
focusScope: state.id,
|
|
304
|
+
forward: (event) => datePickerFieldEvent(event, state, user),
|
|
305
|
+
};
|
|
306
|
+
};
|
|
307
|
+
const isDateUnavailable = props.isDateUnavailable;
|
|
308
|
+
return {
|
|
309
|
+
groupProps: base.groupProps,
|
|
310
|
+
labelProps: base.labelProps,
|
|
311
|
+
startFieldProps: fieldOf("start"),
|
|
312
|
+
endFieldProps: fieldOf("end"),
|
|
313
|
+
buttonProps: base.buttonProps,
|
|
314
|
+
dialogProps: base.dialogProps,
|
|
315
|
+
calendarProps: {
|
|
316
|
+
autoFocus: true,
|
|
317
|
+
defaultValue: () => {
|
|
318
|
+
const range = untrack(() => dateRange(state));
|
|
319
|
+
return range?.start && range.end ? { start: stringifyDateValue(range.start), end: stringifyDateValue(range.end) } : null;
|
|
320
|
+
},
|
|
321
|
+
defaultFocusedValue: () => (untrack(() => dateRange(state)) ? undefined : state.placeholderValue),
|
|
322
|
+
onChange: (range) => {
|
|
323
|
+
// The hidden inputs sync before the validation commit (it reads their native validity).
|
|
324
|
+
setDateRange(state, range, () => syncPickerInputs(state, document));
|
|
325
|
+
syncPickerInputs(state, document);
|
|
326
|
+
},
|
|
327
|
+
minValue: state.minValue,
|
|
328
|
+
maxValue: state.maxValue,
|
|
329
|
+
isDisabled: ownerFlag(state, 0),
|
|
330
|
+
isReadOnly: ownerFlag(state, 1),
|
|
331
|
+
isDateUnavailable,
|
|
332
|
+
allowsNonContiguousRanges: props.allowsNonContiguousRanges,
|
|
333
|
+
isInvalid: () => untrack(() => pickerIsInvalid(state)),
|
|
334
|
+
firstDayOfWeek: state.firstDayOfWeek,
|
|
335
|
+
pageBehavior: state.pageBehavior,
|
|
336
|
+
},
|
|
337
|
+
descriptionProps: base.descriptionProps,
|
|
338
|
+
errorMessageProps: base.errorMessageProps,
|
|
339
|
+
isInvalid: base.isInvalid,
|
|
340
|
+
validationErrors: base.validationErrors,
|
|
341
|
+
validationDetails: base.validationDetails,
|
|
342
|
+
};
|
|
343
|
+
}
|