@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
package/bidi/index.d.ts
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { type Signal } from "@rivetjs/reactivity";
|
|
2
|
+
export type { Direction } from "../collections/types.js";
|
|
3
|
+
import type { Direction } from "../collections/types.js";
|
|
4
|
+
/** Whether `locale` is written right-to-left (by script / language subtag). */
|
|
5
|
+
export declare const isRtlLocale: (locale: string) => boolean;
|
|
6
|
+
/**
|
|
7
|
+
* Resolves a raw `dir` value to a direction: case-insensitive `"rtl"` → rtl; `"auto"` → from
|
|
8
|
+
* `navigator.language` (browser) ; anything else → ltr.
|
|
9
|
+
*/
|
|
10
|
+
export declare function _resolveDirectionality(rawValue: string | null | undefined): Direction;
|
|
11
|
+
/** Angular `Directionality`: the direction of the application or of a `<Dir>` subtree. */
|
|
12
|
+
export interface Directionality {
|
|
13
|
+
/** The current direction (reactive). */
|
|
14
|
+
readonly valueSignal: () => Direction;
|
|
15
|
+
/** The `dir` value as given by the consumer (`"auto"`, `"RTL"`, …); rendered as the `dir` attribute. */
|
|
16
|
+
readonly rawDir: () => string;
|
|
17
|
+
}
|
|
18
|
+
/** A writable `Directionality` (`createDir`, `documentDirectionality`): `setDir` changes it. */
|
|
19
|
+
export interface DirState extends Directionality {
|
|
20
|
+
readonly valueSignal: Signal<Direction>;
|
|
21
|
+
readonly rawDir: Signal<string>;
|
|
22
|
+
}
|
|
23
|
+
/** The current 'ltr' / 'rtl' value of a directionality (Angular `dir.value`). Reads the signal. */
|
|
24
|
+
export declare const directionValue: (dir: Directionality) => Direction;
|
|
25
|
+
/** Minimal document shape read by `documentDirectionality` (tests pass fakes, like Angular's `DIR_DOCUMENT`). */
|
|
26
|
+
export interface DirDocument {
|
|
27
|
+
body?: {
|
|
28
|
+
dir?: string;
|
|
29
|
+
} | null;
|
|
30
|
+
documentElement?: {
|
|
31
|
+
dir?: string;
|
|
32
|
+
} | null;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* The root `Directionality`: `<body dir>`, else `<html dir>`, else ltr (Angular's root service).
|
|
36
|
+
* Server (no document): ltr.
|
|
37
|
+
*/
|
|
38
|
+
export declare function documentDirectionality(doc?: DirDocument | null | undefined): DirState;
|
|
39
|
+
/**
|
|
40
|
+
* State of a `[dir]` element (Angular `Dir` directive): `rawDir` keeps the consumer value (rendered
|
|
41
|
+
* as-is, so `dir="auto"` stays `auto`), `valueSignal` is the normalized direction.
|
|
42
|
+
*/
|
|
43
|
+
export declare function createDir(dir?: Direction | "auto" | string): DirState;
|
|
44
|
+
/**
|
|
45
|
+
* Set the `dir` input of a `Dir` state (Angular `dir.dir = value`). Returns true when the
|
|
46
|
+
* normalized direction changed (Angular emits `dirChange` then, once initialized).
|
|
47
|
+
*/
|
|
48
|
+
export declare function setDir(state: DirState, value: Direction | "auto" | string): boolean;
|
|
49
|
+
/** Context through which `<Dir>` provides itself as the `Directionality` of its subtree. */
|
|
50
|
+
export declare const DirectionalityContext: import("@rivetjs/reactivity").Context<Directionality | null>;
|
|
51
|
+
/** Angular `inject(Directionality)`: the closest `<Dir>`, else the document's direction. */
|
|
52
|
+
export declare function injectDirectionality(): Directionality;
|
|
53
|
+
/** Reactive direction accessor for components: closest `<Dir>` value, else the document's. */
|
|
54
|
+
export declare function useDirection(): () => Direction;
|
|
55
|
+
/** Direction at `element`: nearest `dir` attribute, else computed `direction`, else `<html dir>`. Server: "ltr". */
|
|
56
|
+
export declare function direction(element?: Element | null): Direction;
|
|
57
|
+
/** Swap ArrowLeft / ArrowRight in right-to-left text, so handlers can reason in "start" / "end". */
|
|
58
|
+
export declare function logicalKey(key: string, dir: Direction): string;
|
package/bidi/index.js
ADDED
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
// Text direction.
|
|
2
|
+
// Ported from angular/components src/cdk/bidi (MIT, © Google LLC): `Directionality`, the `[dir]`
|
|
3
|
+
// directive (`Dir`), `_resolveDirectionality`. Markup uses the `dir` attribute and CSS logical
|
|
4
|
+
// properties (RTL needs no JS); handlers ask `direction(element)` when a key maps to a visual side.
|
|
5
|
+
//
|
|
6
|
+
// Rivet shape: `Directionality` is plain state (`valueSignal` + raw value accessors) so it resumes;
|
|
7
|
+
// Angular's DI lookup ("closest `[dir]` directive, else the document") is `injectDirectionality()`
|
|
8
|
+
// reading `DirectionalityContext` (provided by `<Dir>` from `@rivetjs/cdk/bidi-dir`) and falling back
|
|
9
|
+
// to the document. The `change` EventEmitter is the signal: read `valueSignal()` in a binding /
|
|
10
|
+
// effect, or pass `onDirChange` to `<Dir>`.
|
|
11
|
+
import { computed, createContext, signal, untrack, useContext } from "@rivetjs/reactivity";
|
|
12
|
+
import { resumableContext } from "@rivetjs/runtime/resume-format";
|
|
13
|
+
/** Regex that matches locales with an RTL script. Taken from `goog.i18n.bidi.isRtlLanguage`. */
|
|
14
|
+
const RTL_LOCALE_PATTERN = /^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;
|
|
15
|
+
/** Whether `locale` is written right-to-left (by script / language subtag). */
|
|
16
|
+
export const isRtlLocale = (locale) => RTL_LOCALE_PATTERN.test(locale);
|
|
17
|
+
/**
|
|
18
|
+
* Resolves a raw `dir` value to a direction: case-insensitive `"rtl"` → rtl; `"auto"` → from
|
|
19
|
+
* `navigator.language` (browser) ; anything else → ltr.
|
|
20
|
+
*/
|
|
21
|
+
export function _resolveDirectionality(rawValue) {
|
|
22
|
+
const value = rawValue?.toLowerCase() || "";
|
|
23
|
+
if (value === "auto" && typeof navigator !== "undefined" && navigator?.language)
|
|
24
|
+
return isRtlLocale(navigator.language) ? "rtl" : "ltr";
|
|
25
|
+
return value === "rtl" ? "rtl" : "ltr";
|
|
26
|
+
}
|
|
27
|
+
/** The current 'ltr' / 'rtl' value of a directionality (Angular `dir.value`). Reads the signal. */
|
|
28
|
+
export const directionValue = (dir) => dir.valueSignal();
|
|
29
|
+
/**
|
|
30
|
+
* The root `Directionality`: `<body dir>`, else `<html dir>`, else ltr (Angular's root service).
|
|
31
|
+
* Server (no document): ltr.
|
|
32
|
+
*/
|
|
33
|
+
export function documentDirectionality(doc = typeof document === "undefined" ? undefined : document) {
|
|
34
|
+
let raw = "ltr";
|
|
35
|
+
if (doc)
|
|
36
|
+
raw = (doc.body ? doc.body.dir : null) || (doc.documentElement ? doc.documentElement.dir : null) || "ltr";
|
|
37
|
+
return { valueSignal: signal(_resolveDirectionality(raw)), rawDir: signal(raw) };
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* State of a `[dir]` element (Angular `Dir` directive): `rawDir` keeps the consumer value (rendered
|
|
41
|
+
* as-is, so `dir="auto"` stays `auto`), `valueSignal` is the normalized direction.
|
|
42
|
+
*/
|
|
43
|
+
export function createDir(dir = "") {
|
|
44
|
+
return { valueSignal: signal(_resolveDirectionality(dir)), rawDir: signal(dir) };
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Set the `dir` input of a `Dir` state (Angular `dir.dir = value`). Returns true when the
|
|
48
|
+
* normalized direction changed (Angular emits `dirChange` then, once initialized).
|
|
49
|
+
*/
|
|
50
|
+
export function setDir(state, value) {
|
|
51
|
+
const previous = untrack(state.valueSignal);
|
|
52
|
+
const next = _resolveDirectionality(value);
|
|
53
|
+
state.rawDir.set(value);
|
|
54
|
+
state.valueSignal.set(next);
|
|
55
|
+
return previous !== next;
|
|
56
|
+
}
|
|
57
|
+
/** Context through which `<Dir>` provides itself as the `Directionality` of its subtree. */
|
|
58
|
+
export const DirectionalityContext = resumableContext(createContext(null, { id: "rv-directionality" }));
|
|
59
|
+
/** Angular `inject(Directionality)`: the closest `<Dir>`, else the document's direction. */
|
|
60
|
+
export function injectDirectionality() {
|
|
61
|
+
return useContext(DirectionalityContext) ?? documentDirectionality();
|
|
62
|
+
}
|
|
63
|
+
/** Reactive direction accessor for components: closest `<Dir>` value, else the document's. */
|
|
64
|
+
export function useDirection() {
|
|
65
|
+
const dir = injectDirectionality();
|
|
66
|
+
return computed(() => dir.valueSignal());
|
|
67
|
+
}
|
|
68
|
+
/** Direction at `element`: nearest `dir` attribute, else computed `direction`, else `<html dir>`. Server: "ltr". */
|
|
69
|
+
export function direction(element) {
|
|
70
|
+
if (typeof document === "undefined")
|
|
71
|
+
return "ltr";
|
|
72
|
+
const owner = element?.closest("[dir]")?.getAttribute("dir")?.toLowerCase();
|
|
73
|
+
if (owner === "rtl" || owner === "ltr")
|
|
74
|
+
return owner;
|
|
75
|
+
if (element && typeof getComputedStyle === "function")
|
|
76
|
+
return getComputedStyle(element).direction === "rtl" ? "rtl" : "ltr";
|
|
77
|
+
return document.documentElement.dir.toLowerCase() === "rtl" ? "rtl" : "ltr";
|
|
78
|
+
}
|
|
79
|
+
/** Swap ArrowLeft / ArrowRight in right-to-left text, so handlers can reason in "start" / "end". */
|
|
80
|
+
export function logicalKey(key, dir) {
|
|
81
|
+
if (dir !== "rtl")
|
|
82
|
+
return key;
|
|
83
|
+
return key === "ArrowLeft" ? "ArrowRight" : key === "ArrowRight" ? "ArrowLeft" : key;
|
|
84
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { AriaLabelingProps, DOMProps } from "../utils/types.js";
|
|
2
|
+
/** RA `AriaBreadcrumbsProps`. */
|
|
3
|
+
export interface AriaBreadcrumbsProps extends DOMProps, AriaLabelingProps {
|
|
4
|
+
}
|
|
5
|
+
/** RA `useBreadcrumbs` `navProps`: labelable DOM props + `aria-label` (default: localized "Breadcrumbs"). */
|
|
6
|
+
export declare function breadcrumbsProps(props: AriaBreadcrumbsProps): Record<string, unknown>;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
// Ported from react-aria `useBreadcrumbs` (packages/react-aria/src/breadcrumbs/useBreadcrumbs.ts), Apache-2.0, © Adobe.
|
|
2
|
+
// Rivet (naming convention): `useBreadcrumbs(props).navProps` → `breadcrumbsProps(props)` (the list's attribute
|
|
3
|
+
// bag; default `aria-label` localized from `./intl.ts`). RA `useBreadcrumbItem` is not ported as a hook: RAC
|
|
4
|
+
// Breadcrumb composes a `<Link>` through `LinkContext` (as upstream RAC does).
|
|
5
|
+
import { getStringsForLocale, useLocale } from "../i18n/index.js";
|
|
6
|
+
import { breadcrumbsMessages } from "./intl.js";
|
|
7
|
+
/** RA `useBreadcrumbs` `navProps`: labelable DOM props + `aria-label` (default: localized "Breadcrumbs"). */
|
|
8
|
+
export function breadcrumbsProps(props) {
|
|
9
|
+
const ariaLabel = props["aria-label"];
|
|
10
|
+
return {
|
|
11
|
+
id: props.id,
|
|
12
|
+
"aria-labelledby": props["aria-labelledby"],
|
|
13
|
+
"aria-describedby": props["aria-describedby"],
|
|
14
|
+
"aria-details": props["aria-details"],
|
|
15
|
+
"aria-label": ariaLabel || getStringsForLocale(breadcrumbsMessages, useLocale().locale).breadcrumbs,
|
|
16
|
+
};
|
|
17
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import type { Content } from "@rivetjs/runtime/jsx-runtime";
|
|
2
|
+
import { type GlobalDOMAttributes } from "../utils/dom-props.js";
|
|
3
|
+
import { type DOMRenderProps } from "../utils/render.js";
|
|
4
|
+
import { type MaybeAccessor } from "../interactions/utils.js";
|
|
5
|
+
import { type ContextValue, type RefValue, type RenderProps, type SlotProps, type StyleProps } from "../slots/index.jsx";
|
|
6
|
+
import { type CollectionProps } from "../collections/components.jsx";
|
|
7
|
+
import type { Key } from "../collections/types.js";
|
|
8
|
+
import type { AriaLabelingProps } from "../utils/types.js";
|
|
9
|
+
import { type AriaBreadcrumbsProps } from "./behaviour.js";
|
|
10
|
+
export type { Key } from "../collections/types.js";
|
|
11
|
+
export { breadcrumbsProps, type AriaBreadcrumbsProps } from "./behaviour.js";
|
|
12
|
+
export interface BreadcrumbsProps<T> extends Omit<CollectionProps<T>, "idScope">, AriaBreadcrumbsProps, StyleProps, SlotProps, DOMRenderProps<"ol", undefined>, Omit<GlobalDOMAttributes<HTMLOListElement>, "style"> {
|
|
13
|
+
/** @default 'rv-Breadcrumbs' */
|
|
14
|
+
class?: string;
|
|
15
|
+
/** Whether the breadcrumbs are disabled (may be an accessor). */
|
|
16
|
+
isDisabled?: MaybeAccessor<boolean | undefined>;
|
|
17
|
+
/** Handler that is called when a breadcrumb is clicked. */
|
|
18
|
+
onAction?: (key: Key) => void;
|
|
19
|
+
ref?: RefValue<HTMLOListElement>;
|
|
20
|
+
/**
|
|
21
|
+
* Rivet addition (React Spectrum Breadcrumbs collapsing, `overflowMode` name from Spectrum ActionGroup): `"collapse"`
|
|
22
|
+
* measures the list and collapses the breadcrumbs that do not fit into one overflow item rendered by `renderOverflow`.
|
|
23
|
+
* Read once at mount (it picks the collapsing implementation). @default 'wrap'
|
|
24
|
+
*/
|
|
25
|
+
overflowMode?: "wrap" | "collapse";
|
|
26
|
+
/** `overflowMode="collapse"`: always show the root item while it fits (Spectrum `showRoot`). Read once at mount (the overflow measurer's options). */
|
|
27
|
+
showRoot?: boolean;
|
|
28
|
+
/** `overflowMode="collapse"`: at most this many breadcrumbs stay visible, the overflow item included (Spectrum: 4). Read once at mount. @default 4 */
|
|
29
|
+
maxVisibleItems?: number | "auto";
|
|
30
|
+
/** `overflowMode="collapse"`: visible breadcrumbs before the browser measures (server render). Read once at mount. @default every item */
|
|
31
|
+
defaultVisibleItems?: number;
|
|
32
|
+
/** `overflowMode="collapse"`: the overflow item's content for the collapsed breadcrumbs (e.g. a "…" button opening a Menu). Inline arrow. */
|
|
33
|
+
renderOverflow?: (items: BreadcrumbsOverflowItem[]) => Content;
|
|
34
|
+
/** `overflowMode="collapse"`: class of the overflow `<li>`. @default 'rv-Breadcrumb' */
|
|
35
|
+
overflowClass?: string;
|
|
36
|
+
}
|
|
37
|
+
/** A collapsed breadcrumb, as `renderOverflow` gets it. */
|
|
38
|
+
export interface BreadcrumbsOverflowItem {
|
|
39
|
+
/** The Breadcrumb's `id` (pass it to `onAction`). */
|
|
40
|
+
key: Key;
|
|
41
|
+
/** The Breadcrumb's `textValue`, else its text as last rendered. */
|
|
42
|
+
textValue: string;
|
|
43
|
+
/** The Breadcrumb's `href` prop, else the href of the link it last rendered. */
|
|
44
|
+
href: string | undefined;
|
|
45
|
+
/** The Breadcrumb's props. */
|
|
46
|
+
props: Record<string, unknown>;
|
|
47
|
+
}
|
|
48
|
+
/** RAC `BreadcrumbsContext` (slot props for the list; the Breadcrumbs re-provides `{ isDisabled, onAction }` to its items). */
|
|
49
|
+
export declare const BreadcrumbsContext: import("@rivetjs/reactivity").Context<ContextValue<BreadcrumbsProps<any>, HTMLOListElement>>;
|
|
50
|
+
/** Breadcrumbs display a hierarchy of links to the current page or resource in an application (RAC `Breadcrumbs`). */
|
|
51
|
+
export declare function Breadcrumbs<T>(inProps: BreadcrumbsProps<T>): import("@rivetjs/runtime/jsx-runtime").CompiledElement;
|
|
52
|
+
export interface BreadcrumbRenderProps {
|
|
53
|
+
/** Whether the breadcrumb is for the current page. `[data-current]` */
|
|
54
|
+
isCurrent: () => boolean;
|
|
55
|
+
/** Whether the breadcrumb is disabled. `[data-disabled]` */
|
|
56
|
+
isDisabled: () => boolean;
|
|
57
|
+
}
|
|
58
|
+
export interface BreadcrumbProps extends RenderProps<BreadcrumbRenderProps>, DOMRenderProps<"li", BreadcrumbRenderProps>, AriaLabelingProps, Omit<GlobalDOMAttributes<HTMLLIElement>, "style"> {
|
|
59
|
+
/** @default 'rv-Breadcrumb' */
|
|
60
|
+
class?: RenderProps<BreadcrumbRenderProps>["class"];
|
|
61
|
+
/** A unique id for the breadcrumb, which will be passed to `onAction` when the breadcrumb is pressed. */
|
|
62
|
+
id?: Key;
|
|
63
|
+
/** Rivet: the breadcrumb's text for the Breadcrumbs overflow item (`renderOverflow`); default: its text as rendered. */
|
|
64
|
+
textValue?: string;
|
|
65
|
+
ref?: RefValue<HTMLLIElement>;
|
|
66
|
+
}
|
|
67
|
+
/** A Breadcrumb represents an individual item in a `<Breadcrumbs>` list (RAC `Breadcrumb`). */
|
|
68
|
+
export declare const Breadcrumb: (props: BreadcrumbProps) => unknown;
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
// Ported from react-aria-components `Breadcrumbs` / `Breadcrumb` (packages/react-aria-components/src/Breadcrumbs.tsx)
|
|
2
|
+
// and react-aria `useBreadcrumbs` (packages/react-aria/src/breadcrumbs/useBreadcrumbs.ts), Apache-2.0, © Adobe.
|
|
3
|
+
// Breadcrumbs display a hierarchy of links to the current page or resource: an `<ol>` collection of
|
|
4
|
+
// `<Breadcrumb>` parts; each provides `LinkContext` (`aria-current="page"` + disabled on the last one,
|
|
5
|
+
// `onAction(id)` on press) to the `<Link>` inside it.
|
|
6
|
+
// Rivet:
|
|
7
|
+
// - the collection is built (B5 `collectionOf`, build mode) so a Breadcrumb knows it is last (RAC
|
|
8
|
+
// `node.nextKey == null`); `isCurrent` is read from that collection by key (an appended item moves it).
|
|
9
|
+
// - `items` + a render function (RAC dynamic collections) is the data-driven preset over the parts.
|
|
10
|
+
// - render props are accessors (`{({ isCurrent }) => (isCurrent() ? "Current" : name)}`); `class` = RAC
|
|
11
|
+
// `className` (defaults `rv-Breadcrumbs` / `rv-Breadcrumb`); `isDisabled` may be an accessor.
|
|
12
|
+
// - Overflow (Rivet addition, React Spectrum v3 Breadcrumbs collapse; `../overflow/index.tsx`): `overflowMode="collapse"`
|
|
13
|
+
// measures the `<ol>` and renders `[root?, overflow item, ...last]` (Spectrum `showRoot`, `maxVisibleItems`); the overflow
|
|
14
|
+
// `<li>` holds `renderOverflow(hiddenItems)` (e.g. a "…" MenuTrigger). Default `overflowMode="wrap"` = RAC (no measuring).
|
|
15
|
+
// `render` (RAC DOMRenderProps) on Breadcrumbs (`<ol>`, renderProps `undefined`) and Breadcrumb (`<li>`, BreadcrumbRenderProps): given, the attributes object goes to `render` instead of the default element.
|
|
16
|
+
import { computed, createContext, provide, signal, untrack, useContext } from "@rivetjs/reactivity";
|
|
17
|
+
import { For, Provider as ContextProvider, ref as createRef } from "@rivetjs/runtime/dom";
|
|
18
|
+
import { globalDOMProps } from "../utils/dom-props.js";
|
|
19
|
+
import {} from "../utils/render.js";
|
|
20
|
+
import { dataBool } from "../utils/data-attrs.jsx";
|
|
21
|
+
import { read } from "../interactions/utils.js";
|
|
22
|
+
import { contextProps, resumableContext, slottedContext, } from "../slots/index.jsx";
|
|
23
|
+
import { Collection, CollectionRendererContext, DefaultCollectionRenderer, collectionOf, createLeafComponent, renderNodeAt, } from "../collections/components.jsx";
|
|
24
|
+
import { mergeRefs } from "../interactions/merge-props.jsx";
|
|
25
|
+
import { OVERFLOW, createOverflow } from "../overflow/index.jsx";
|
|
26
|
+
import { CollectionNode } from "../collections/base.js";
|
|
27
|
+
import { LinkContext } from "../link/index.jsx";
|
|
28
|
+
import { breadcrumbsProps } from "./behaviour.js";
|
|
29
|
+
import { hasLive, isLive, liveClass, liveOptions } from "../utils/live.jsx";
|
|
30
|
+
import { renderPropsOf } from "../slots/index.jsx";
|
|
31
|
+
export { breadcrumbsProps } from "./behaviour.js";
|
|
32
|
+
/** RAC `BreadcrumbsContext` (slot props for the list; the Breadcrumbs re-provides `{ isDisabled, onAction }` to its items). */
|
|
33
|
+
export const BreadcrumbsContext = resumableContext(createContext(null, { id: "rv-breadcrumbs" }));
|
|
34
|
+
/** Rivet: the built collection of the enclosing Breadcrumbs (a Breadcrumb's `isCurrent` reads it). */
|
|
35
|
+
const BreadcrumbsCollectionContext = resumableContext(createContext(null, { id: "rv-breadcrumbs-collection" }));
|
|
36
|
+
/** Breadcrumbs display a hierarchy of links to the current page or resource in an application (RAC `Breadcrumbs`). */
|
|
37
|
+
export function Breadcrumbs(inProps) {
|
|
38
|
+
// Live props (P5): `isDisabled` becomes an accessor (every Breadcrumb reads it with `read`), a live `class` goes
|
|
39
|
+
// through the spread; the rest of the body is read once (untracked).
|
|
40
|
+
return untrack(() => breadcrumbs(inProps));
|
|
41
|
+
}
|
|
42
|
+
function breadcrumbs(inProps) {
|
|
43
|
+
const [ctxProps, ref] = contextProps(inProps, inProps.ref, BreadcrumbsContext);
|
|
44
|
+
const props = hasLive(ctxProps) ? liveOptions(ctxProps, ["isDisabled"]) : ctxProps;
|
|
45
|
+
// A custom renderer comes from context; the default one is referenced by import (a captured module-level
|
|
46
|
+
// object is not serializable on a resumed page).
|
|
47
|
+
const renderer = useContext(CollectionRendererContext);
|
|
48
|
+
const customRenderer = renderer === DefaultCollectionRenderer ? undefined : renderer;
|
|
49
|
+
const items = props.items;
|
|
50
|
+
const children = props.children;
|
|
51
|
+
// Object-literal function value = a resumable symbol: the collection computed captures it, so a resumed
|
|
52
|
+
// binding that reads the collection (Breadcrumb `isCurrent`) can rebuild it (a bare arrow argument is not).
|
|
53
|
+
const build = { content: () => Collection({ items, children }) };
|
|
54
|
+
const collection = collectionOf(build.content);
|
|
55
|
+
const nav = breadcrumbsProps(props);
|
|
56
|
+
const dom = globalDOMProps(props, ["style"]);
|
|
57
|
+
const slot = props.slot || undefined;
|
|
58
|
+
const style = props.style;
|
|
59
|
+
const className = isLive(props, "class") ? liveClass(props, "rv-Breadcrumbs") : (props.class ?? "rv-Breadcrumbs");
|
|
60
|
+
dom.class = className;
|
|
61
|
+
const itemsContext = { isDisabled: props.isDisabled, onAction: props.onAction };
|
|
62
|
+
if (props.overflowMode === "collapse")
|
|
63
|
+
return collapsingBreadcrumbs(props, ref, collection, nav, dom, slot, style, className, itemsContext);
|
|
64
|
+
if (props.render) {
|
|
65
|
+
const attrs = {
|
|
66
|
+
...dom,
|
|
67
|
+
ref: ref,
|
|
68
|
+
id: nav.id,
|
|
69
|
+
"aria-label": nav["aria-label"],
|
|
70
|
+
"aria-labelledby": nav["aria-labelledby"],
|
|
71
|
+
"aria-describedby": nav["aria-describedby"],
|
|
72
|
+
"aria-details": nav["aria-details"],
|
|
73
|
+
slot: slot,
|
|
74
|
+
style: style,
|
|
75
|
+
class: className,
|
|
76
|
+
children: () => (<ContextProvider token={BreadcrumbsContext} value={itemsContext}>
|
|
77
|
+
<ContextProvider token={BreadcrumbsCollectionContext} value={collection}>
|
|
78
|
+
{(customRenderer ?? DefaultCollectionRenderer).CollectionRoot({ collection })}
|
|
79
|
+
</ContextProvider>
|
|
80
|
+
</ContextProvider>),
|
|
81
|
+
};
|
|
82
|
+
return props.render(attrs, undefined);
|
|
83
|
+
}
|
|
84
|
+
return (<ol {...dom} ref={ref} id={nav.id} aria-label={nav["aria-label"]} aria-labelledby={nav["aria-labelledby"]} aria-describedby={nav["aria-describedby"]} aria-details={nav["aria-details"]} slot={slot} style={style}>
|
|
85
|
+
<ContextProvider token={BreadcrumbsContext} value={itemsContext}>
|
|
86
|
+
<ContextProvider token={BreadcrumbsCollectionContext} value={collection}>
|
|
87
|
+
{(customRenderer ?? DefaultCollectionRenderer).CollectionRoot({ collection })}
|
|
88
|
+
</ContextProvider>
|
|
89
|
+
</ContextProvider>
|
|
90
|
+
</ol>);
|
|
91
|
+
}
|
|
92
|
+
const isServer = typeof document === "undefined";
|
|
93
|
+
/** Breadcrumbs with `overflowMode="collapse"` (React Spectrum v3 Breadcrumbs: `[root?, menu, ...last]`). */
|
|
94
|
+
function collapsingBreadcrumbs(props, ref, collection, nav, dom, slot, style, className, itemsContext) {
|
|
95
|
+
// The measured `<ol>`: the caller's `ref()` when it is one (resumes), else our own (merged in the browser).
|
|
96
|
+
const own = typeof ref === "function" && "set" in ref;
|
|
97
|
+
const listRef = own ? ref : createRef();
|
|
98
|
+
const olRef = own || !ref ? listRef : isServer ? ref : mergeRefs(ref, listRef);
|
|
99
|
+
const renderOverflow = props.renderOverflow;
|
|
100
|
+
const overflowClass = props.overflowClass ?? "rv-Breadcrumb";
|
|
101
|
+
const keys = computed(() => {
|
|
102
|
+
const out = [];
|
|
103
|
+
for (const node of collection())
|
|
104
|
+
if (node.type !== "content")
|
|
105
|
+
out.push(node.key);
|
|
106
|
+
return out;
|
|
107
|
+
});
|
|
108
|
+
// Text / href of every breadcrumb as last rendered (read while every item is shown): the collapsed ones are not in the DOM.
|
|
109
|
+
const seen = signal({});
|
|
110
|
+
const overflow = createOverflow({
|
|
111
|
+
ref: listRef,
|
|
112
|
+
items: keys,
|
|
113
|
+
collapse: "start",
|
|
114
|
+
showRoot: props.showRoot,
|
|
115
|
+
maxVisibleItems: props.maxVisibleItems,
|
|
116
|
+
defaultVisibleItems: props.defaultVisibleItems,
|
|
117
|
+
onMeasureAll: (elements) => {
|
|
118
|
+
const all = untrack(keys);
|
|
119
|
+
const record = {};
|
|
120
|
+
elements.forEach((element, i) => {
|
|
121
|
+
if (i < all.length)
|
|
122
|
+
record[String(all[i])] = { textValue: (element.textContent ?? "").trim(), href: element.querySelector("a[href]")?.getAttribute("href") ?? undefined };
|
|
123
|
+
});
|
|
124
|
+
seen.set(record);
|
|
125
|
+
},
|
|
126
|
+
});
|
|
127
|
+
const rows = overflow.items;
|
|
128
|
+
const hidden = overflow.hidden;
|
|
129
|
+
const hiddenItems = computed(() => {
|
|
130
|
+
const c = collection();
|
|
131
|
+
const last = seen();
|
|
132
|
+
return hidden().map((key) => {
|
|
133
|
+
const node = c.getItem(key);
|
|
134
|
+
const nodeProps = (node?.props ?? {});
|
|
135
|
+
const dom = last[String(key)];
|
|
136
|
+
return { key, textValue: node?.textValue || dom?.textValue || "", href: nodeProps.href ?? dom?.href, props: nodeProps };
|
|
137
|
+
});
|
|
138
|
+
});
|
|
139
|
+
if (props.render) {
|
|
140
|
+
const attrs = {
|
|
141
|
+
...dom,
|
|
142
|
+
ref: olRef,
|
|
143
|
+
id: nav.id,
|
|
144
|
+
"aria-label": nav["aria-label"],
|
|
145
|
+
"aria-labelledby": nav["aria-labelledby"],
|
|
146
|
+
"aria-describedby": nav["aria-describedby"],
|
|
147
|
+
"aria-details": nav["aria-details"],
|
|
148
|
+
slot: slot,
|
|
149
|
+
style: style,
|
|
150
|
+
class: className,
|
|
151
|
+
children: () => (<ContextProvider token={BreadcrumbsContext} value={itemsContext}>
|
|
152
|
+
<ContextProvider token={BreadcrumbsCollectionContext} value={collection}>
|
|
153
|
+
<For each={rows} by={(key) => key}>
|
|
154
|
+
{(key) => untrack(key) === OVERFLOW ? (<li class={overflowClass} data-overflow="true">
|
|
155
|
+
{renderOverflow?.(hiddenItems())}
|
|
156
|
+
</li>) : renderNodeAt(collection, key)}
|
|
157
|
+
</For>
|
|
158
|
+
</ContextProvider>
|
|
159
|
+
</ContextProvider>),
|
|
160
|
+
};
|
|
161
|
+
return props.render(attrs, undefined);
|
|
162
|
+
}
|
|
163
|
+
return (<ol {...dom} ref={olRef} id={nav.id} aria-label={nav["aria-label"]} aria-labelledby={nav["aria-labelledby"]} aria-describedby={nav["aria-describedby"]} aria-details={nav["aria-details"]} slot={slot} style={style}>
|
|
164
|
+
<ContextProvider token={BreadcrumbsContext} value={itemsContext}>
|
|
165
|
+
<ContextProvider token={BreadcrumbsCollectionContext} value={collection}>
|
|
166
|
+
<For each={rows} by={(key) => key}>
|
|
167
|
+
{(key) => untrack(key) === OVERFLOW ? (<li class={overflowClass} data-overflow="true">
|
|
168
|
+
{renderOverflow?.(hiddenItems())}
|
|
169
|
+
</li>) : renderNodeAt(collection, key)}
|
|
170
|
+
</For>
|
|
171
|
+
</ContextProvider>
|
|
172
|
+
</ContextProvider>
|
|
173
|
+
</ol>);
|
|
174
|
+
}
|
|
175
|
+
/** RAC `BreadcrumbNode`. */
|
|
176
|
+
class BreadcrumbNode extends CollectionNode {
|
|
177
|
+
static type = "item";
|
|
178
|
+
}
|
|
179
|
+
/** A Breadcrumb represents an individual item in a `<Breadcrumbs>` list (RAC `Breadcrumb`). */
|
|
180
|
+
export const Breadcrumb = /*#__PURE__*/ createLeafComponent(BreadcrumbNode, function Breadcrumb(props, ref, node) {
|
|
181
|
+
// Recreating useBreadcrumbItem because we want to use composition instead of having the link builtin.
|
|
182
|
+
const key = node.key;
|
|
183
|
+
const collection = useContext(BreadcrumbsCollectionContext);
|
|
184
|
+
// Capture plain data only (never `node`, a class instance): the closures resume.
|
|
185
|
+
const isLast = node.nextKey == null;
|
|
186
|
+
const isCurrent = () => (collection ? collection().getItem(key)?.nextKey == null : isLast);
|
|
187
|
+
const { isDisabled: listDisabled, onAction } = (slottedContext(BreadcrumbsContext) ?? {});
|
|
188
|
+
const isDisabled = () => !!read(listDisabled) || isCurrent();
|
|
189
|
+
const linkProps = {
|
|
190
|
+
"aria-current": () => (isCurrent() ? "page" : undefined),
|
|
191
|
+
isDisabled,
|
|
192
|
+
onPress: () => onAction?.(key),
|
|
193
|
+
};
|
|
194
|
+
const rp = renderPropsOf(props, {
|
|
195
|
+
values: { isDisabled, isCurrent },
|
|
196
|
+
defaultClassName: "rv-Breadcrumb",
|
|
197
|
+
});
|
|
198
|
+
const dom = globalDOMProps(props, ["style"]);
|
|
199
|
+
const ariaLabel = props["aria-label"];
|
|
200
|
+
const labelledBy = props["aria-labelledby"];
|
|
201
|
+
const describedBy = props["aria-describedby"];
|
|
202
|
+
const details = props["aria-details"];
|
|
203
|
+
if (props.render) {
|
|
204
|
+
const attrs = {
|
|
205
|
+
...dom,
|
|
206
|
+
ref: (props.ref ?? ref),
|
|
207
|
+
class: () => rp.class(),
|
|
208
|
+
style: () => rp.style(),
|
|
209
|
+
"aria-label": ariaLabel,
|
|
210
|
+
"aria-labelledby": labelledBy,
|
|
211
|
+
"aria-describedby": describedBy,
|
|
212
|
+
"aria-details": details,
|
|
213
|
+
"data-disabled": () => dataBool(isDisabled()),
|
|
214
|
+
"data-current": () => dataBool(isCurrent()),
|
|
215
|
+
children: () => (<ContextProvider token={LinkContext} value={linkProps}>
|
|
216
|
+
{rp.children()}
|
|
217
|
+
</ContextProvider>),
|
|
218
|
+
};
|
|
219
|
+
return props.render(attrs, { isDisabled, isCurrent });
|
|
220
|
+
}
|
|
221
|
+
return (<li {...dom} ref={(props.ref ?? ref)} class={rp.class()} style={rp.style()} aria-label={ariaLabel} aria-labelledby={labelledBy} aria-describedby={describedBy} aria-details={details} data-disabled={dataBool(isDisabled())} data-current={dataBool(isCurrent())}>
|
|
222
|
+
{provide(LinkContext, linkProps, () => rp.children())}
|
|
223
|
+
</li>);
|
|
224
|
+
});
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
export const breadcrumbsMessages = {
|
|
2
|
+
"ar-AE": {
|
|
3
|
+
breadcrumbs: "عناصر الواجهة",
|
|
4
|
+
},
|
|
5
|
+
"bg-BG": {
|
|
6
|
+
breadcrumbs: "Трохи хляб",
|
|
7
|
+
},
|
|
8
|
+
"cs-CZ": {
|
|
9
|
+
breadcrumbs: "Popis cesty",
|
|
10
|
+
},
|
|
11
|
+
"da-DK": {
|
|
12
|
+
breadcrumbs: "Brødkrummer",
|
|
13
|
+
},
|
|
14
|
+
"de-DE": {
|
|
15
|
+
breadcrumbs: "Breadcrumbs",
|
|
16
|
+
},
|
|
17
|
+
"el-GR": {
|
|
18
|
+
breadcrumbs: "Πλοηγήσεις breadcrumb",
|
|
19
|
+
},
|
|
20
|
+
"en-US": {
|
|
21
|
+
breadcrumbs: "Breadcrumbs",
|
|
22
|
+
},
|
|
23
|
+
"es-ES": {
|
|
24
|
+
breadcrumbs: "Migas de pan",
|
|
25
|
+
},
|
|
26
|
+
"et-EE": {
|
|
27
|
+
breadcrumbs: "Lingiread",
|
|
28
|
+
},
|
|
29
|
+
"fi-FI": {
|
|
30
|
+
breadcrumbs: "Navigointilinkit",
|
|
31
|
+
},
|
|
32
|
+
"fr-FR": {
|
|
33
|
+
breadcrumbs: "Chemin de navigation",
|
|
34
|
+
},
|
|
35
|
+
"he-IL": {
|
|
36
|
+
breadcrumbs: "שבילי ניווט",
|
|
37
|
+
},
|
|
38
|
+
"hr-HR": {
|
|
39
|
+
breadcrumbs: "Navigacijski putovi",
|
|
40
|
+
},
|
|
41
|
+
"hu-HU": {
|
|
42
|
+
breadcrumbs: "Morzsamenü",
|
|
43
|
+
},
|
|
44
|
+
"it-IT": {
|
|
45
|
+
breadcrumbs: "Breadcrumb",
|
|
46
|
+
},
|
|
47
|
+
"ja-JP": {
|
|
48
|
+
breadcrumbs: "パンくずリスト",
|
|
49
|
+
},
|
|
50
|
+
"ko-KR": {
|
|
51
|
+
breadcrumbs: "탐색 표시",
|
|
52
|
+
},
|
|
53
|
+
"lt-LT": {
|
|
54
|
+
breadcrumbs: "Naršymo kelias",
|
|
55
|
+
},
|
|
56
|
+
"lv-LV": {
|
|
57
|
+
breadcrumbs: "Atpakaļceļi",
|
|
58
|
+
},
|
|
59
|
+
"nb-NO": {
|
|
60
|
+
breadcrumbs: "Navigasjonsstier",
|
|
61
|
+
},
|
|
62
|
+
"nl-NL": {
|
|
63
|
+
breadcrumbs: "Broodkruimels",
|
|
64
|
+
},
|
|
65
|
+
"pl-PL": {
|
|
66
|
+
breadcrumbs: "Struktura nawigacyjna",
|
|
67
|
+
},
|
|
68
|
+
"pt-BR": {
|
|
69
|
+
breadcrumbs: "Caminho detalhado",
|
|
70
|
+
},
|
|
71
|
+
"pt-PT": {
|
|
72
|
+
breadcrumbs: "Categorias",
|
|
73
|
+
},
|
|
74
|
+
"ro-RO": {
|
|
75
|
+
breadcrumbs: "Miez de pâine",
|
|
76
|
+
},
|
|
77
|
+
"ru-RU": {
|
|
78
|
+
breadcrumbs: "Навигация",
|
|
79
|
+
},
|
|
80
|
+
"sk-SK": {
|
|
81
|
+
breadcrumbs: "Navigačné prvky Breadcrumbs",
|
|
82
|
+
},
|
|
83
|
+
"sl-SI": {
|
|
84
|
+
breadcrumbs: "Drobtine",
|
|
85
|
+
},
|
|
86
|
+
"sr-SP": {
|
|
87
|
+
breadcrumbs: "Putanje navigacije",
|
|
88
|
+
},
|
|
89
|
+
"sv-SE": {
|
|
90
|
+
breadcrumbs: "Sökvägar",
|
|
91
|
+
},
|
|
92
|
+
"tr-TR": {
|
|
93
|
+
breadcrumbs: "İçerik haritaları",
|
|
94
|
+
},
|
|
95
|
+
"uk-UA": {
|
|
96
|
+
breadcrumbs: "Навігаційна стежка",
|
|
97
|
+
},
|
|
98
|
+
"zh-CN": {
|
|
99
|
+
breadcrumbs: "导航栏",
|
|
100
|
+
},
|
|
101
|
+
"zh-TW": {
|
|
102
|
+
breadcrumbs: "導覽列",
|
|
103
|
+
},
|
|
104
|
+
};
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { type MaybeAccessor } from "../interactions/utils.js";
|
|
2
|
+
import type { AriaLabelingProps, FocusableDOMProps, FocusableProps, PressEvents } from "../utils/types.js";
|
|
3
|
+
import { type PressOptions } from "./press.js";
|
|
4
|
+
export type { PressEvent, PressEvents, PressOptions, PointerType } from "./press.js";
|
|
5
|
+
/** RA `ButtonProps` (button/useButton). */
|
|
6
|
+
export interface AriaButtonBaseProps extends PressEvents, FocusableProps {
|
|
7
|
+
/** Whether the button is disabled (Rivet: may be an accessor; `buttonProps` reads it once, bind it yourself to react). */
|
|
8
|
+
isDisabled?: MaybeAccessor<boolean | undefined>;
|
|
9
|
+
}
|
|
10
|
+
/** RA `AriaBaseButtonProps`. */
|
|
11
|
+
export interface AriaBaseButtonProps extends FocusableDOMProps, Omit<AriaLabelingProps, "aria-label" | "aria-labelledby"> {
|
|
12
|
+
"aria-label"?: MaybeAccessor<string | undefined>;
|
|
13
|
+
"aria-labelledby"?: MaybeAccessor<string | undefined>;
|
|
14
|
+
"aria-disabled"?: MaybeAccessor<boolean | "true" | "false" | undefined>;
|
|
15
|
+
"aria-expanded"?: MaybeAccessor<boolean | "true" | "false" | undefined>;
|
|
16
|
+
"aria-haspopup"?: MaybeAccessor<boolean | "menu" | "listbox" | "tree" | "grid" | "dialog" | "true" | "false" | undefined>;
|
|
17
|
+
"aria-controls"?: MaybeAccessor<string | undefined>;
|
|
18
|
+
"aria-pressed"?: MaybeAccessor<boolean | "true" | "false" | "mixed" | undefined>;
|
|
19
|
+
"aria-current"?: MaybeAccessor<boolean | "true" | "false" | "page" | "step" | "location" | "date" | "time" | undefined>;
|
|
20
|
+
/** @default "button" (live: a value-form `type={t()}` updates the attribute in place) */
|
|
21
|
+
type?: "button" | "submit" | "reset";
|
|
22
|
+
/** Whether to prevent focus from moving to the button when pressing it. Read once at mount (press option). */
|
|
23
|
+
preventFocusOnPress?: boolean;
|
|
24
|
+
/** @private RA (undocumented, NumberField steppers): a disabled button gets `tabIndex=-1`. */
|
|
25
|
+
allowFocusWhenDisabled?: boolean;
|
|
26
|
+
form?: string;
|
|
27
|
+
formAction?: string;
|
|
28
|
+
formEncType?: string;
|
|
29
|
+
formMethod?: string;
|
|
30
|
+
formNoValidate?: boolean;
|
|
31
|
+
formTarget?: string;
|
|
32
|
+
name?: string;
|
|
33
|
+
value?: string;
|
|
34
|
+
}
|
|
35
|
+
/** RA `AriaButtonProps` (+ `elementType` / link props for non-`<button>` elements). */
|
|
36
|
+
export interface AriaButtonProps extends AriaButtonBaseProps, AriaBaseButtonProps {
|
|
37
|
+
/** The element's unique identifier. Read once at mount (the pending progress bar id derives from it). */
|
|
38
|
+
id?: string;
|
|
39
|
+
/** `button` (default) or another element given `role="button"`. Read once at mount (element choice). */
|
|
40
|
+
elementType?: "button" | "a" | "div" | "span" | "input";
|
|
41
|
+
href?: string;
|
|
42
|
+
target?: string;
|
|
43
|
+
rel?: string;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* RA `useButton` attributes (without handlers: wire `buttonPointerDown` / `buttonKeyDown` / `buttonClick` /
|
|
47
|
+
* … as inline arrows). Includes `useFocusable` attributes (`tabIndex` for `excludeFromTabOrder`,
|
|
48
|
+
* `autoFocus`) and the labelable DOM props (`id`, `aria-label*`, `aria-describedby`, `aria-details`).
|
|
49
|
+
*/
|
|
50
|
+
export declare function buttonProps(props: AriaButtonProps): Record<string, unknown>;
|
|
51
|
+
type Pending = MaybeAccessor<boolean | undefined> | undefined;
|
|
52
|
+
/** Press options with `isPending` (RAC `useDisableInteractions`: pending buttons ignore presses, keep focus / hover). */
|
|
53
|
+
export declare function pendingOptions(options: PressOptions, isPending: Pending): PressOptions;
|
|
54
|
+
/** Whether `isPending` is set and true now. */
|
|
55
|
+
export declare const isPendingNow: (isPending: Pending) => boolean;
|
|
56
|
+
export declare const buttonKeyDown: (e: KeyboardEvent, o: PressOptions, pending?: Pending) => void;
|
|
57
|
+
export declare const buttonClick: (e: MouseEvent, o: PressOptions, pending?: Pending) => void;
|
|
58
|
+
export declare const buttonPointerDown: (e: PointerEvent, o: PressOptions, pending?: Pending) => void;
|
|
59
|
+
export declare const buttonPointerUp: (e: PointerEvent, o: PressOptions, pending?: Pending) => void;
|
|
60
|
+
export declare const buttonMouseDown: (e: MouseEvent, o: PressOptions) => void;
|
|
61
|
+
export declare const buttonDragStart: (e: DragEvent, o: PressOptions) => void;
|