@wardic/solid 0.0.0-stage → 1.0.0-rc.2
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/README.md +26 -2
- package/THIRD_PARTY_NOTICES.md +145 -0
- package/dist/browser/animation-controls.js +150 -0
- package/dist/browser/animation-controls.js.map +1 -0
- package/dist/browser/animation-frame.js +29 -0
- package/dist/browser/animation-frame.js.map +1 -0
- package/dist/browser/appear.js +727 -0
- package/dist/browser/appear.js.map +1 -0
- package/dist/browser/arc.js +21 -0
- package/dist/browser/arc.js.map +1 -0
- package/dist/browser/bridge.js +69 -0
- package/dist/browser/bridge.js.map +1 -0
- package/dist/browser/complete.js +30 -0
- package/dist/browser/complete.js.map +1 -0
- package/dist/browser/config.js +2 -0
- package/dist/browser/config.js.map +1 -0
- package/dist/browser/create-animate.js +41 -0
- package/dist/browser/create-animate.js.map +1 -0
- package/dist/browser/create-ward.js +1001 -0
- package/dist/browser/create-ward.js.map +1 -0
- package/dist/browser/cycle-index.js +17 -0
- package/dist/browser/cycle-index.js.map +1 -0
- package/dist/browser/cycle.js +31 -0
- package/dist/browser/cycle.js.map +1 -0
- package/dist/browser/directive.js +80 -0
- package/dist/browser/directive.js.map +1 -0
- package/dist/browser/drag-constraints.js +76 -0
- package/dist/browser/drag-constraints.js.map +1 -0
- package/dist/browser/drag-controls.js +51 -0
- package/dist/browser/drag-controls.js.map +1 -0
- package/dist/browser/drag-samples.js +40 -0
- package/dist/browser/drag-samples.js.map +1 -0
- package/dist/browser/drag-sensor.js +35 -0
- package/dist/browser/drag-sensor.js.map +1 -0
- package/dist/browser/drag-track.js +817 -0
- package/dist/browser/drag-track.js.map +1 -0
- package/dist/browser/drag-transition.js +56 -0
- package/dist/browser/drag-transition.js.map +1 -0
- package/dist/browser/drag.js +44 -0
- package/dist/browser/drag.js.map +1 -0
- package/dist/browser/element-style.js +67 -0
- package/dist/browser/element-style.js.map +1 -0
- package/dist/browser/element.js +353 -0
- package/dist/browser/element.js.map +1 -0
- package/dist/browser/feature-section.js +17 -0
- package/dist/browser/feature-section.js.map +1 -0
- package/dist/browser/feature.js +261 -0
- package/dist/browser/feature.js.map +1 -0
- package/dist/browser/features/all.js +10 -0
- package/dist/browser/features/all.js.map +1 -0
- package/dist/browser/features/colors.js +33 -0
- package/dist/browser/features/colors.js.map +1 -0
- package/dist/browser/features/dom-animation.js +7 -0
- package/dist/browser/features/dom-animation.js.map +1 -0
- package/dist/browser/features/dom-max.js +4 -0
- package/dist/browser/features/dom-max.js.map +1 -0
- package/dist/browser/features/drag.js +28 -0
- package/dist/browser/features/drag.js.map +1 -0
- package/dist/browser/features/focus.js +18 -0
- package/dist/browser/features/focus.js.map +1 -0
- package/dist/browser/features/hover.js +18 -0
- package/dist/browser/features/hover.js.map +1 -0
- package/dist/browser/features/in-view.js +18 -0
- package/dist/browser/features/in-view.js.map +1 -0
- package/dist/browser/features/input.js +30 -0
- package/dist/browser/features/input.js.map +1 -0
- package/dist/browser/features/keys.js +19 -0
- package/dist/browser/features/keys.js.map +1 -0
- package/dist/browser/features/layout.js +33 -0
- package/dist/browser/features/layout.js.map +1 -0
- package/dist/browser/features/pan.js +18 -0
- package/dist/browser/features/pan.js.map +1 -0
- package/dist/browser/features/press.js +12 -0
- package/dist/browser/features/press.js.map +1 -0
- package/dist/browser/focus-sensor.js +23 -0
- package/dist/browser/focus-sensor.js.map +1 -0
- package/dist/browser/frame-time.js +40 -0
- package/dist/browser/frame-time.js.map +1 -0
- package/dist/browser/gesture-callbacks.js +172 -0
- package/dist/browser/gesture-callbacks.js.map +1 -0
- package/dist/browser/gesture-features.js +29 -0
- package/dist/browser/gesture-features.js.map +1 -0
- package/dist/browser/gesture-info.js +43 -0
- package/dist/browser/gesture-info.js.map +1 -0
- package/dist/browser/hover-sensor.js +29 -0
- package/dist/browser/hover-sensor.js.map +1 -0
- package/dist/browser/imperative.js +614 -0
- package/dist/browser/imperative.js.map +1 -0
- package/dist/browser/index.js +165 -0
- package/dist/browser/index.js.map +1 -0
- package/dist/browser/instant.js +51 -0
- package/dist/browser/instant.js.map +1 -0
- package/dist/browser/layout-group.js +27 -0
- package/dist/browser/layout-group.js.map +1 -0
- package/dist/browser/layout-member.js +362 -0
- package/dist/browser/layout-member.js.map +1 -0
- package/dist/browser/layout-projection.js +19 -0
- package/dist/browser/layout-projection.js.map +1 -0
- package/dist/browser/layout.js +91 -0
- package/dist/browser/layout.js.map +1 -0
- package/dist/browser/live-style.js +313 -0
- package/dist/browser/live-style.js.map +1 -0
- package/dist/browser/live-value.js +252 -0
- package/dist/browser/live-value.js.map +1 -0
- package/dist/browser/motion-props.js +172 -0
- package/dist/browser/motion-props.js.map +1 -0
- package/dist/browser/owner-scope.js +29 -0
- package/dist/browser/owner-scope.js.map +1 -0
- package/dist/browser/page-point.js +92 -0
- package/dist/browser/page-point.js.map +1 -0
- package/dist/browser/presence-controller.js +1324 -0
- package/dist/browser/presence-controller.js.map +1 -0
- package/dist/browser/presence-record.js +27 -0
- package/dist/browser/presence-record.js.map +1 -0
- package/dist/browser/presence.js +207 -0
- package/dist/browser/presence.js.map +1 -0
- package/dist/browser/press-sensor.js +30 -0
- package/dist/browser/press-sensor.js.map +1 -0
- package/dist/browser/press.js +24 -0
- package/dist/browser/press.js.map +1 -0
- package/dist/browser/provider.js +445 -0
- package/dist/browser/provider.js.map +1 -0
- package/dist/browser/reactivity.js +9 -0
- package/dist/browser/reactivity.js.map +1 -0
- package/dist/browser/reorder-input.js +46 -0
- package/dist/browser/reorder-input.js.map +1 -0
- package/dist/browser/reorder.js +543 -0
- package/dist/browser/reorder.js.map +1 -0
- package/dist/browser/retarget-legs.js +1019 -0
- package/dist/browser/retarget-legs.js.map +1 -0
- package/dist/browser/runtime.js +249 -0
- package/dist/browser/runtime.js.map +1 -0
- package/dist/browser/sensors.js +172 -0
- package/dist/browser/sensors.js.map +1 -0
- package/dist/browser/server-interpolators.js +20 -0
- package/dist/browser/server-interpolators.js.map +1 -0
- package/dist/browser/server.js +20 -0
- package/dist/browser/server.js.map +1 -0
- package/dist/browser/solid-reactivity.js +26 -0
- package/dist/browser/solid-reactivity.js.map +1 -0
- package/dist/browser/spine.js +2939 -0
- package/dist/browser/spine.js.map +1 -0
- package/dist/browser/stagger.js +13 -0
- package/dist/browser/stagger.js.map +1 -0
- package/dist/browser/unstable/v2/bridge.js +76 -0
- package/dist/browser/unstable/v2/bridge.js.map +1 -0
- package/dist/browser/unstable/v2/complete.js +29 -0
- package/dist/browser/unstable/v2/complete.js.map +1 -0
- package/dist/browser/unstable/v2/config-view.js +111 -0
- package/dist/browser/unstable/v2/config-view.js.map +1 -0
- package/dist/browser/unstable/v2/create-animate.js +102 -0
- package/dist/browser/unstable/v2/create-animate.js.map +1 -0
- package/dist/browser/unstable/v2/cycle.js +30 -0
- package/dist/browser/unstable/v2/cycle.js.map +1 -0
- package/dist/browser/unstable/v2/drag-sensor.js +34 -0
- package/dist/browser/unstable/v2/drag-sensor.js.map +1 -0
- package/dist/browser/unstable/v2/element.js +393 -0
- package/dist/browser/unstable/v2/element.js.map +1 -0
- package/dist/browser/unstable/v2/feature-section.js +27 -0
- package/dist/browser/unstable/v2/feature-section.js.map +1 -0
- package/dist/browser/unstable/v2/focus-sensor.js +23 -0
- package/dist/browser/unstable/v2/focus-sensor.js.map +1 -0
- package/dist/browser/unstable/v2/hover-sensor.js +28 -0
- package/dist/browser/unstable/v2/hover-sensor.js.map +1 -0
- package/dist/browser/unstable/v2/index.js +114 -0
- package/dist/browser/unstable/v2/index.js.map +1 -0
- package/dist/browser/unstable/v2/layout-projection.js +18 -0
- package/dist/browser/unstable/v2/layout-projection.js.map +1 -0
- package/dist/browser/unstable/v2/layout.js +71 -0
- package/dist/browser/unstable/v2/layout.js.map +1 -0
- package/dist/browser/unstable/v2/lifecycle.js +455 -0
- package/dist/browser/unstable/v2/lifecycle.js.map +1 -0
- package/dist/browser/unstable/v2/live-value.js +264 -0
- package/dist/browser/unstable/v2/live-value.js.map +1 -0
- package/dist/browser/unstable/v2/presence-handle.js +146 -0
- package/dist/browser/unstable/v2/presence-handle.js.map +1 -0
- package/dist/browser/unstable/v2/presence-hooks.js +142 -0
- package/dist/browser/unstable/v2/presence-hooks.js.map +1 -0
- package/dist/browser/unstable/v2/presence.js +124 -0
- package/dist/browser/unstable/v2/presence.js.map +1 -0
- package/dist/browser/unstable/v2/press-sensor.js +29 -0
- package/dist/browser/unstable/v2/press-sensor.js.map +1 -0
- package/dist/browser/unstable/v2/provider.js +457 -0
- package/dist/browser/unstable/v2/provider.js.map +1 -0
- package/dist/browser/unstable/v2/reorder.js +663 -0
- package/dist/browser/unstable/v2/reorder.js.map +1 -0
- package/dist/browser/unstable/v2/sensors.js +138 -0
- package/dist/browser/unstable/v2/sensors.js.map +1 -0
- package/dist/browser/unstable/v2/solid-reactivity.js +82 -0
- package/dist/browser/unstable/v2/solid-reactivity.js.map +1 -0
- package/dist/browser/unstable/v2/variant-node.js +395 -0
- package/dist/browser/unstable/v2/variant-node.js.map +1 -0
- package/dist/browser/unstable/v2/w.js +23 -0
- package/dist/browser/unstable/v2/w.js.map +1 -0
- package/dist/browser/unstable/v2/waiters.js +185 -0
- package/dist/browser/unstable/v2/waiters.js.map +1 -0
- package/dist/browser/unstable/v2/ward.js +1620 -0
- package/dist/browser/unstable/v2/ward.js.map +1 -0
- package/dist/browser/unstable/v2/wardic-config.js +40 -0
- package/dist/browser/unstable/v2/wardic-config.js.map +1 -0
- package/dist/browser/unstable/v2/wardic.js +16 -0
- package/dist/browser/unstable/v2/wardic.js.map +1 -0
- package/dist/browser/variant-node.js +308 -0
- package/dist/browser/variant-node.js.map +1 -0
- package/dist/browser/variant-target.js +224 -0
- package/dist/browser/variant-target.js.map +1 -0
- package/dist/browser/variant-tree.js +394 -0
- package/dist/browser/variant-tree.js.map +1 -0
- package/dist/browser/variants.js +43 -0
- package/dist/browser/variants.js.map +1 -0
- package/dist/browser/w.js +25 -0
- package/dist/browser/w.js.map +1 -0
- package/dist/browser/ward-keys.js +2 -0
- package/dist/browser/ward-keys.js.map +1 -0
- package/dist/browser/wardic-component.js +74 -0
- package/dist/browser/wardic-component.js.map +1 -0
- package/dist/browser/wardic-config-value.js +91 -0
- package/dist/browser/wardic-config-value.js.map +1 -0
- package/dist/browser/wardic-config.js +42 -0
- package/dist/browser/wardic-config.js.map +1 -0
- package/dist/browser/wardic.js +31 -0
- package/dist/browser/wardic.js.map +1 -0
- package/dist/server/animation-controls.js +150 -0
- package/dist/server/animation-controls.js.map +1 -0
- package/dist/server/animation-frame.js +29 -0
- package/dist/server/animation-frame.js.map +1 -0
- package/dist/server/appear.js +727 -0
- package/dist/server/appear.js.map +1 -0
- package/dist/server/arc.js +21 -0
- package/dist/server/arc.js.map +1 -0
- package/dist/server/bridge.js +69 -0
- package/dist/server/bridge.js.map +1 -0
- package/dist/server/complete.js +30 -0
- package/dist/server/complete.js.map +1 -0
- package/dist/server/config.js +2 -0
- package/dist/server/config.js.map +1 -0
- package/dist/server/create-animate.js +41 -0
- package/dist/server/create-animate.js.map +1 -0
- package/dist/server/create-ward.js +1001 -0
- package/dist/server/create-ward.js.map +1 -0
- package/dist/server/cycle-index.js +17 -0
- package/dist/server/cycle-index.js.map +1 -0
- package/dist/server/cycle.js +31 -0
- package/dist/server/cycle.js.map +1 -0
- package/dist/server/directive.js +80 -0
- package/dist/server/directive.js.map +1 -0
- package/dist/server/drag-constraints.js +76 -0
- package/dist/server/drag-constraints.js.map +1 -0
- package/dist/server/drag-controls.js +51 -0
- package/dist/server/drag-controls.js.map +1 -0
- package/dist/server/drag-samples.js +40 -0
- package/dist/server/drag-samples.js.map +1 -0
- package/dist/server/drag-sensor.js +35 -0
- package/dist/server/drag-sensor.js.map +1 -0
- package/dist/server/drag-track.js +817 -0
- package/dist/server/drag-track.js.map +1 -0
- package/dist/server/drag-transition.js +56 -0
- package/dist/server/drag-transition.js.map +1 -0
- package/dist/server/drag.js +44 -0
- package/dist/server/drag.js.map +1 -0
- package/dist/server/element-style.js +67 -0
- package/dist/server/element-style.js.map +1 -0
- package/dist/server/element.js +353 -0
- package/dist/server/element.js.map +1 -0
- package/dist/server/feature-section.js +17 -0
- package/dist/server/feature-section.js.map +1 -0
- package/dist/server/feature.js +261 -0
- package/dist/server/feature.js.map +1 -0
- package/dist/server/features/all.js +10 -0
- package/dist/server/features/all.js.map +1 -0
- package/dist/server/features/colors.js +33 -0
- package/dist/server/features/colors.js.map +1 -0
- package/dist/server/features/dom-animation.js +7 -0
- package/dist/server/features/dom-animation.js.map +1 -0
- package/dist/server/features/dom-max.js +4 -0
- package/dist/server/features/dom-max.js.map +1 -0
- package/dist/server/features/drag.js +28 -0
- package/dist/server/features/drag.js.map +1 -0
- package/dist/server/features/focus.js +18 -0
- package/dist/server/features/focus.js.map +1 -0
- package/dist/server/features/hover.js +18 -0
- package/dist/server/features/hover.js.map +1 -0
- package/dist/server/features/in-view.js +18 -0
- package/dist/server/features/in-view.js.map +1 -0
- package/dist/server/features/input.js +30 -0
- package/dist/server/features/input.js.map +1 -0
- package/dist/server/features/keys.js +19 -0
- package/dist/server/features/keys.js.map +1 -0
- package/dist/server/features/layout.js +33 -0
- package/dist/server/features/layout.js.map +1 -0
- package/dist/server/features/pan.js +18 -0
- package/dist/server/features/pan.js.map +1 -0
- package/dist/server/features/press.js +12 -0
- package/dist/server/features/press.js.map +1 -0
- package/dist/server/focus-sensor.js +23 -0
- package/dist/server/focus-sensor.js.map +1 -0
- package/dist/server/frame-time.js +40 -0
- package/dist/server/frame-time.js.map +1 -0
- package/dist/server/gesture-callbacks.js +172 -0
- package/dist/server/gesture-callbacks.js.map +1 -0
- package/dist/server/gesture-features.js +29 -0
- package/dist/server/gesture-features.js.map +1 -0
- package/dist/server/gesture-info.js +43 -0
- package/dist/server/gesture-info.js.map +1 -0
- package/dist/server/hover-sensor.js +29 -0
- package/dist/server/hover-sensor.js.map +1 -0
- package/dist/server/imperative.js +614 -0
- package/dist/server/imperative.js.map +1 -0
- package/dist/server/index.js +165 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/instant.js +51 -0
- package/dist/server/instant.js.map +1 -0
- package/dist/server/layout-group.js +27 -0
- package/dist/server/layout-group.js.map +1 -0
- package/dist/server/layout-member.js +362 -0
- package/dist/server/layout-member.js.map +1 -0
- package/dist/server/layout-projection.js +19 -0
- package/dist/server/layout-projection.js.map +1 -0
- package/dist/server/layout.js +90 -0
- package/dist/server/layout.js.map +1 -0
- package/dist/server/live-style.js +313 -0
- package/dist/server/live-style.js.map +1 -0
- package/dist/server/live-value.js +252 -0
- package/dist/server/live-value.js.map +1 -0
- package/dist/server/motion-props.js +172 -0
- package/dist/server/motion-props.js.map +1 -0
- package/dist/server/owner-scope.js +29 -0
- package/dist/server/owner-scope.js.map +1 -0
- package/dist/server/page-point.js +92 -0
- package/dist/server/page-point.js.map +1 -0
- package/dist/server/presence-controller.js +1324 -0
- package/dist/server/presence-controller.js.map +1 -0
- package/dist/server/presence-record.js +27 -0
- package/dist/server/presence-record.js.map +1 -0
- package/dist/server/presence.js +207 -0
- package/dist/server/presence.js.map +1 -0
- package/dist/server/press-sensor.js +30 -0
- package/dist/server/press-sensor.js.map +1 -0
- package/dist/server/press.js +24 -0
- package/dist/server/press.js.map +1 -0
- package/dist/server/provider.js +439 -0
- package/dist/server/provider.js.map +1 -0
- package/dist/server/reactivity.js +9 -0
- package/dist/server/reactivity.js.map +1 -0
- package/dist/server/reorder-input.js +46 -0
- package/dist/server/reorder-input.js.map +1 -0
- package/dist/server/reorder.js +543 -0
- package/dist/server/reorder.js.map +1 -0
- package/dist/server/retarget-legs.js +1019 -0
- package/dist/server/retarget-legs.js.map +1 -0
- package/dist/server/runtime.js +249 -0
- package/dist/server/runtime.js.map +1 -0
- package/dist/server/sensors.js +172 -0
- package/dist/server/sensors.js.map +1 -0
- package/dist/server/server-interpolators.js +20 -0
- package/dist/server/server-interpolators.js.map +1 -0
- package/dist/server/server.js +20 -0
- package/dist/server/server.js.map +1 -0
- package/dist/server/solid-reactivity.js +26 -0
- package/dist/server/solid-reactivity.js.map +1 -0
- package/dist/server/spine.js +2939 -0
- package/dist/server/spine.js.map +1 -0
- package/dist/server/stagger.js +13 -0
- package/dist/server/stagger.js.map +1 -0
- package/dist/server/unstable/v2/bridge.js +76 -0
- package/dist/server/unstable/v2/bridge.js.map +1 -0
- package/dist/server/unstable/v2/complete.js +29 -0
- package/dist/server/unstable/v2/complete.js.map +1 -0
- package/dist/server/unstable/v2/config-view.js +111 -0
- package/dist/server/unstable/v2/config-view.js.map +1 -0
- package/dist/server/unstable/v2/create-animate.js +102 -0
- package/dist/server/unstable/v2/create-animate.js.map +1 -0
- package/dist/server/unstable/v2/cycle.js +30 -0
- package/dist/server/unstable/v2/cycle.js.map +1 -0
- package/dist/server/unstable/v2/drag-sensor.js +34 -0
- package/dist/server/unstable/v2/drag-sensor.js.map +1 -0
- package/dist/server/unstable/v2/element.js +402 -0
- package/dist/server/unstable/v2/element.js.map +1 -0
- package/dist/server/unstable/v2/feature-section.js +27 -0
- package/dist/server/unstable/v2/feature-section.js.map +1 -0
- package/dist/server/unstable/v2/focus-sensor.js +23 -0
- package/dist/server/unstable/v2/focus-sensor.js.map +1 -0
- package/dist/server/unstable/v2/hover-sensor.js +28 -0
- package/dist/server/unstable/v2/hover-sensor.js.map +1 -0
- package/dist/server/unstable/v2/index.js +114 -0
- package/dist/server/unstable/v2/index.js.map +1 -0
- package/dist/server/unstable/v2/layout-projection.js +18 -0
- package/dist/server/unstable/v2/layout-projection.js.map +1 -0
- package/dist/server/unstable/v2/layout.js +88 -0
- package/dist/server/unstable/v2/layout.js.map +1 -0
- package/dist/server/unstable/v2/lifecycle.js +455 -0
- package/dist/server/unstable/v2/lifecycle.js.map +1 -0
- package/dist/server/unstable/v2/live-value.js +264 -0
- package/dist/server/unstable/v2/live-value.js.map +1 -0
- package/dist/server/unstable/v2/presence-handle.js +146 -0
- package/dist/server/unstable/v2/presence-handle.js.map +1 -0
- package/dist/server/unstable/v2/presence-hooks.js +142 -0
- package/dist/server/unstable/v2/presence-hooks.js.map +1 -0
- package/dist/server/unstable/v2/presence.js +142 -0
- package/dist/server/unstable/v2/presence.js.map +1 -0
- package/dist/server/unstable/v2/press-sensor.js +29 -0
- package/dist/server/unstable/v2/press-sensor.js.map +1 -0
- package/dist/server/unstable/v2/provider.js +475 -0
- package/dist/server/unstable/v2/provider.js.map +1 -0
- package/dist/server/unstable/v2/reorder.js +733 -0
- package/dist/server/unstable/v2/reorder.js.map +1 -0
- package/dist/server/unstable/v2/sensors.js +138 -0
- package/dist/server/unstable/v2/sensors.js.map +1 -0
- package/dist/server/unstable/v2/solid-reactivity.js +82 -0
- package/dist/server/unstable/v2/solid-reactivity.js.map +1 -0
- package/dist/server/unstable/v2/variant-node.js +395 -0
- package/dist/server/unstable/v2/variant-node.js.map +1 -0
- package/dist/server/unstable/v2/w.js +23 -0
- package/dist/server/unstable/v2/w.js.map +1 -0
- package/dist/server/unstable/v2/waiters.js +185 -0
- package/dist/server/unstable/v2/waiters.js.map +1 -0
- package/dist/server/unstable/v2/ward.js +1653 -0
- package/dist/server/unstable/v2/ward.js.map +1 -0
- package/dist/server/unstable/v2/wardic-config.js +49 -0
- package/dist/server/unstable/v2/wardic-config.js.map +1 -0
- package/dist/server/unstable/v2/wardic.js +16 -0
- package/dist/server/unstable/v2/wardic.js.map +1 -0
- package/dist/server/variant-node.js +308 -0
- package/dist/server/variant-node.js.map +1 -0
- package/dist/server/variant-target.js +224 -0
- package/dist/server/variant-target.js.map +1 -0
- package/dist/server/variant-tree.js +394 -0
- package/dist/server/variant-tree.js.map +1 -0
- package/dist/server/variants.js +43 -0
- package/dist/server/variants.js.map +1 -0
- package/dist/server/w.js +25 -0
- package/dist/server/w.js.map +1 -0
- package/dist/server/ward-keys.js +2 -0
- package/dist/server/ward-keys.js.map +1 -0
- package/dist/server/wardic-component.js +74 -0
- package/dist/server/wardic-component.js.map +1 -0
- package/dist/server/wardic-config-value.js +91 -0
- package/dist/server/wardic-config-value.js.map +1 -0
- package/dist/server/wardic-config.js +42 -0
- package/dist/server/wardic-config.js.map +1 -0
- package/dist/server/wardic.js +31 -0
- package/dist/server/wardic.js.map +1 -0
- package/dist/solid/animation-controls.d.ts +104 -0
- package/dist/solid/animation-controls.d.ts.map +1 -0
- package/dist/solid/animation-controls.js +129 -0
- package/dist/solid/animation-controls.js.map +1 -0
- package/dist/solid/animation-frame.d.ts +11 -0
- package/dist/solid/animation-frame.d.ts.map +1 -0
- package/dist/solid/animation-frame.js +31 -0
- package/dist/solid/animation-frame.js.map +1 -0
- package/dist/solid/appear.d.ts +205 -0
- package/dist/solid/appear.d.ts.map +1 -0
- package/dist/solid/appear.js +519 -0
- package/dist/solid/appear.js.map +1 -0
- package/dist/solid/arc.d.ts +25 -0
- package/dist/solid/arc.d.ts.map +1 -0
- package/dist/solid/arc.js +21 -0
- package/dist/solid/arc.js.map +1 -0
- package/dist/solid/bridge.d.ts +53 -0
- package/dist/solid/bridge.d.ts.map +1 -0
- package/dist/solid/bridge.js +66 -0
- package/dist/solid/bridge.js.map +1 -0
- package/dist/solid/complete.d.ts +31 -0
- package/dist/solid/complete.d.ts.map +1 -0
- package/dist/solid/complete.js +27 -0
- package/dist/solid/complete.js.map +1 -0
- package/dist/solid/config.d.ts +693 -0
- package/dist/solid/config.d.ts.map +1 -0
- package/dist/solid/config.js +2 -0
- package/dist/solid/config.js.map +1 -0
- package/dist/solid/create-animate.d.ts +17 -0
- package/dist/solid/create-animate.d.ts.map +1 -0
- package/dist/solid/create-animate.js +42 -0
- package/dist/solid/create-animate.js.map +1 -0
- package/dist/solid/create-ward.d.ts +278 -0
- package/dist/solid/create-ward.d.ts.map +1 -0
- package/dist/solid/create-ward.jsx +874 -0
- package/dist/solid/create-ward.jsx.map +1 -0
- package/dist/solid/cycle-index.d.ts +7 -0
- package/dist/solid/cycle-index.d.ts.map +1 -0
- package/dist/solid/cycle-index.js +17 -0
- package/dist/solid/cycle-index.js.map +1 -0
- package/dist/solid/cycle.d.ts +21 -0
- package/dist/solid/cycle.d.ts.map +1 -0
- package/dist/solid/cycle.js +31 -0
- package/dist/solid/cycle.js.map +1 -0
- package/dist/solid/directive.d.ts +21 -0
- package/dist/solid/directive.d.ts.map +1 -0
- package/dist/solid/directive.js +76 -0
- package/dist/solid/directive.js.map +1 -0
- package/dist/solid/drag-constraints.d.ts +46 -0
- package/dist/solid/drag-constraints.d.ts.map +1 -0
- package/dist/solid/drag-constraints.js +49 -0
- package/dist/solid/drag-constraints.js.map +1 -0
- package/dist/solid/drag-controls.d.ts +50 -0
- package/dist/solid/drag-controls.d.ts.map +1 -0
- package/dist/solid/drag-controls.js +51 -0
- package/dist/solid/drag-controls.js.map +1 -0
- package/dist/solid/drag-samples.d.ts +34 -0
- package/dist/solid/drag-samples.d.ts.map +1 -0
- package/dist/solid/drag-samples.js +28 -0
- package/dist/solid/drag-samples.js.map +1 -0
- package/dist/solid/drag-sensor.d.ts +23 -0
- package/dist/solid/drag-sensor.d.ts.map +1 -0
- package/dist/solid/drag-sensor.js +33 -0
- package/dist/solid/drag-sensor.js.map +1 -0
- package/dist/solid/drag-track.d.ts +227 -0
- package/dist/solid/drag-track.d.ts.map +1 -0
- package/dist/solid/drag-track.js +631 -0
- package/dist/solid/drag-track.js.map +1 -0
- package/dist/solid/drag-transition.d.ts +20 -0
- package/dist/solid/drag-transition.d.ts.map +1 -0
- package/dist/solid/drag-transition.js +31 -0
- package/dist/solid/drag-transition.js.map +1 -0
- package/dist/solid/drag.d.ts +23 -0
- package/dist/solid/drag.d.ts.map +1 -0
- package/dist/solid/drag.js +44 -0
- package/dist/solid/drag.js.map +1 -0
- package/dist/solid/element-style.d.ts +60 -0
- package/dist/solid/element-style.d.ts.map +1 -0
- package/dist/solid/element-style.js +50 -0
- package/dist/solid/element-style.js.map +1 -0
- package/dist/solid/element.d.ts +73 -0
- package/dist/solid/element.d.ts.map +1 -0
- package/dist/solid/element.jsx +326 -0
- package/dist/solid/element.jsx.map +1 -0
- package/dist/solid/feature-section.d.ts +18 -0
- package/dist/solid/feature-section.d.ts.map +1 -0
- package/dist/solid/feature-section.js +13 -0
- package/dist/solid/feature-section.js.map +1 -0
- package/dist/solid/feature.d.ts +114 -0
- package/dist/solid/feature.d.ts.map +1 -0
- package/dist/solid/feature.js +248 -0
- package/dist/solid/feature.js.map +1 -0
- package/dist/solid/features/all.d.ts +10 -0
- package/dist/solid/features/all.d.ts.map +1 -0
- package/dist/solid/features/all.js +10 -0
- package/dist/solid/features/all.js.map +1 -0
- package/dist/solid/features/colors.d.ts +12 -0
- package/dist/solid/features/colors.d.ts.map +1 -0
- package/dist/solid/features/colors.js +34 -0
- package/dist/solid/features/colors.js.map +1 -0
- package/dist/solid/features/dom-animation.d.ts +11 -0
- package/dist/solid/features/dom-animation.d.ts.map +1 -0
- package/dist/solid/features/dom-animation.js +7 -0
- package/dist/solid/features/dom-animation.js.map +1 -0
- package/dist/solid/features/dom-max.d.ts +10 -0
- package/dist/solid/features/dom-max.d.ts.map +1 -0
- package/dist/solid/features/dom-max.js +4 -0
- package/dist/solid/features/dom-max.js.map +1 -0
- package/dist/solid/features/drag.d.ts +5 -0
- package/dist/solid/features/drag.d.ts.map +1 -0
- package/dist/solid/features/drag.js +28 -0
- package/dist/solid/features/drag.js.map +1 -0
- package/dist/solid/features/focus.d.ts +5 -0
- package/dist/solid/features/focus.d.ts.map +1 -0
- package/dist/solid/features/focus.js +16 -0
- package/dist/solid/features/focus.js.map +1 -0
- package/dist/solid/features/hover.d.ts +5 -0
- package/dist/solid/features/hover.d.ts.map +1 -0
- package/dist/solid/features/hover.js +16 -0
- package/dist/solid/features/hover.js.map +1 -0
- package/dist/solid/features/in-view.d.ts +5 -0
- package/dist/solid/features/in-view.d.ts.map +1 -0
- package/dist/solid/features/in-view.js +16 -0
- package/dist/solid/features/in-view.js.map +1 -0
- package/dist/solid/features/input.d.ts +26 -0
- package/dist/solid/features/input.d.ts.map +1 -0
- package/dist/solid/features/input.js +31 -0
- package/dist/solid/features/input.js.map +1 -0
- package/dist/solid/features/keys.d.ts +70 -0
- package/dist/solid/features/keys.d.ts.map +1 -0
- package/dist/solid/features/keys.js +26 -0
- package/dist/solid/features/keys.js.map +1 -0
- package/dist/solid/features/layout.d.ts +32 -0
- package/dist/solid/features/layout.d.ts.map +1 -0
- package/dist/solid/features/layout.js +34 -0
- package/dist/solid/features/layout.js.map +1 -0
- package/dist/solid/features/pan.d.ts +5 -0
- package/dist/solid/features/pan.d.ts.map +1 -0
- package/dist/solid/features/pan.js +16 -0
- package/dist/solid/features/pan.js.map +1 -0
- package/dist/solid/features/press.d.ts +11 -0
- package/dist/solid/features/press.d.ts.map +1 -0
- package/dist/solid/features/press.js +10 -0
- package/dist/solid/features/press.js.map +1 -0
- package/dist/solid/focus-sensor.d.ts +19 -0
- package/dist/solid/focus-sensor.d.ts.map +1 -0
- package/dist/solid/focus-sensor.js +23 -0
- package/dist/solid/focus-sensor.js.map +1 -0
- package/dist/solid/frame-time.d.ts +21 -0
- package/dist/solid/frame-time.d.ts.map +1 -0
- package/dist/solid/frame-time.js +41 -0
- package/dist/solid/frame-time.js.map +1 -0
- package/dist/solid/gesture-callbacks.d.ts +53 -0
- package/dist/solid/gesture-callbacks.d.ts.map +1 -0
- package/dist/solid/gesture-callbacks.js +184 -0
- package/dist/solid/gesture-callbacks.js.map +1 -0
- package/dist/solid/gesture-features.d.ts +28 -0
- package/dist/solid/gesture-features.d.ts.map +1 -0
- package/dist/solid/gesture-features.js +29 -0
- package/dist/solid/gesture-features.js.map +1 -0
- package/dist/solid/gesture-info.d.ts +59 -0
- package/dist/solid/gesture-info.d.ts.map +1 -0
- package/dist/solid/gesture-info.js +23 -0
- package/dist/solid/gesture-info.js.map +1 -0
- package/dist/solid/hover-sensor.d.ts +19 -0
- package/dist/solid/hover-sensor.d.ts.map +1 -0
- package/dist/solid/hover-sensor.js +23 -0
- package/dist/solid/hover-sensor.js.map +1 -0
- package/dist/solid/imperative.d.ts +195 -0
- package/dist/solid/imperative.d.ts.map +1 -0
- package/dist/solid/imperative.js +536 -0
- package/dist/solid/imperative.js.map +1 -0
- package/dist/solid/index.d.ts +180 -0
- package/dist/solid/index.d.ts.map +1 -0
- package/dist/solid/index.js +165 -0
- package/dist/solid/index.js.map +1 -0
- package/dist/solid/instant.d.ts +44 -0
- package/dist/solid/instant.d.ts.map +1 -0
- package/dist/solid/instant.js +49 -0
- package/dist/solid/instant.js.map +1 -0
- package/dist/solid/layout-group.d.ts +14 -0
- package/dist/solid/layout-group.d.ts.map +1 -0
- package/dist/solid/layout-group.js +27 -0
- package/dist/solid/layout-group.js.map +1 -0
- package/dist/solid/layout-member.d.ts +117 -0
- package/dist/solid/layout-member.d.ts.map +1 -0
- package/dist/solid/layout-member.js +164 -0
- package/dist/solid/layout-member.js.map +1 -0
- package/dist/solid/layout-projection.d.ts +22 -0
- package/dist/solid/layout-projection.d.ts.map +1 -0
- package/dist/solid/layout-projection.js +19 -0
- package/dist/solid/layout-projection.js.map +1 -0
- package/dist/solid/layout.d.ts +76 -0
- package/dist/solid/layout.d.ts.map +1 -0
- package/dist/solid/layout.jsx +80 -0
- package/dist/solid/layout.jsx.map +1 -0
- package/dist/solid/live-style.d.ts +147 -0
- package/dist/solid/live-style.d.ts.map +1 -0
- package/dist/solid/live-style.js +304 -0
- package/dist/solid/live-style.js.map +1 -0
- package/dist/solid/live-value.d.ts +144 -0
- package/dist/solid/live-value.d.ts.map +1 -0
- package/dist/solid/live-value.js +223 -0
- package/dist/solid/live-value.js.map +1 -0
- package/dist/solid/motion-props.d.ts +75 -0
- package/dist/solid/motion-props.d.ts.map +1 -0
- package/dist/solid/motion-props.js +314 -0
- package/dist/solid/motion-props.js.map +1 -0
- package/dist/solid/owner-scope.d.ts +16 -0
- package/dist/solid/owner-scope.d.ts.map +1 -0
- package/dist/solid/owner-scope.js +31 -0
- package/dist/solid/owner-scope.js.map +1 -0
- package/dist/solid/page-point.d.ts +35 -0
- package/dist/solid/page-point.d.ts.map +1 -0
- package/dist/solid/page-point.js +87 -0
- package/dist/solid/page-point.js.map +1 -0
- package/dist/solid/presence-controller.d.ts +122 -0
- package/dist/solid/presence-controller.d.ts.map +1 -0
- package/dist/solid/presence-controller.js +1207 -0
- package/dist/solid/presence-controller.js.map +1 -0
- package/dist/solid/presence-record.d.ts +167 -0
- package/dist/solid/presence-record.d.ts.map +1 -0
- package/dist/solid/presence-record.js +26 -0
- package/dist/solid/presence-record.js.map +1 -0
- package/dist/solid/presence.d.ts +95 -0
- package/dist/solid/presence.d.ts.map +1 -0
- package/dist/solid/presence.jsx +195 -0
- package/dist/solid/presence.jsx.map +1 -0
- package/dist/solid/press-sensor.d.ts +20 -0
- package/dist/solid/press-sensor.d.ts.map +1 -0
- package/dist/solid/press-sensor.js +24 -0
- package/dist/solid/press-sensor.js.map +1 -0
- package/dist/solid/press.d.ts +24 -0
- package/dist/solid/press.d.ts.map +1 -0
- package/dist/solid/press.js +19 -0
- package/dist/solid/press.js.map +1 -0
- package/dist/solid/provider.d.ts +263 -0
- package/dist/solid/provider.d.ts.map +1 -0
- package/dist/solid/provider.jsx +411 -0
- package/dist/solid/provider.jsx.map +1 -0
- package/dist/solid/reactivity.d.ts +27 -0
- package/dist/solid/reactivity.d.ts.map +1 -0
- package/dist/solid/reactivity.js +9 -0
- package/dist/solid/reactivity.js.map +1 -0
- package/dist/solid/reorder-input.d.ts +22 -0
- package/dist/solid/reorder-input.d.ts.map +1 -0
- package/dist/solid/reorder-input.js +45 -0
- package/dist/solid/reorder-input.js.map +1 -0
- package/dist/solid/reorder.d.ts +241 -0
- package/dist/solid/reorder.d.ts.map +1 -0
- package/dist/solid/reorder.jsx +427 -0
- package/dist/solid/reorder.jsx.map +1 -0
- package/dist/solid/retarget-legs.d.ts +189 -0
- package/dist/solid/retarget-legs.d.ts.map +1 -0
- package/dist/solid/retarget-legs.js +825 -0
- package/dist/solid/retarget-legs.js.map +1 -0
- package/dist/solid/runtime.d.ts +179 -0
- package/dist/solid/runtime.d.ts.map +1 -0
- package/dist/solid/runtime.js +237 -0
- package/dist/solid/runtime.js.map +1 -0
- package/dist/solid/sensors.d.ts +95 -0
- package/dist/solid/sensors.d.ts.map +1 -0
- package/dist/solid/sensors.js +154 -0
- package/dist/solid/sensors.js.map +1 -0
- package/dist/solid/server-interpolators.d.ts +13 -0
- package/dist/solid/server-interpolators.d.ts.map +1 -0
- package/dist/solid/server-interpolators.js +20 -0
- package/dist/solid/server-interpolators.js.map +1 -0
- package/dist/solid/server.d.ts +9 -0
- package/dist/solid/server.d.ts.map +1 -0
- package/dist/solid/server.js +20 -0
- package/dist/solid/server.js.map +1 -0
- package/dist/solid/solid-reactivity.d.ts +3 -0
- package/dist/solid/solid-reactivity.d.ts.map +1 -0
- package/dist/solid/solid-reactivity.js +19 -0
- package/dist/solid/solid-reactivity.js.map +1 -0
- package/dist/solid/spine.d.ts +597 -0
- package/dist/solid/spine.d.ts.map +1 -0
- package/dist/solid/spine.js +2761 -0
- package/dist/solid/spine.js.map +1 -0
- package/dist/solid/stagger.d.ts +29 -0
- package/dist/solid/stagger.d.ts.map +1 -0
- package/dist/solid/stagger.js +13 -0
- package/dist/solid/stagger.js.map +1 -0
- package/dist/solid/unstable/v2/bridge.d.ts +33 -0
- package/dist/solid/unstable/v2/bridge.d.ts.map +1 -0
- package/dist/solid/unstable/v2/bridge.js +76 -0
- package/dist/solid/unstable/v2/bridge.js.map +1 -0
- package/dist/solid/unstable/v2/complete.d.ts +21 -0
- package/dist/solid/unstable/v2/complete.d.ts.map +1 -0
- package/dist/solid/unstable/v2/complete.js +27 -0
- package/dist/solid/unstable/v2/complete.js.map +1 -0
- package/dist/solid/unstable/v2/config-view.d.ts +49 -0
- package/dist/solid/unstable/v2/config-view.d.ts.map +1 -0
- package/dist/solid/unstable/v2/config-view.js +114 -0
- package/dist/solid/unstable/v2/config-view.js.map +1 -0
- package/dist/solid/unstable/v2/create-animate.d.ts +31 -0
- package/dist/solid/unstable/v2/create-animate.d.ts.map +1 -0
- package/dist/solid/unstable/v2/create-animate.js +102 -0
- package/dist/solid/unstable/v2/create-animate.js.map +1 -0
- package/dist/solid/unstable/v2/cycle.d.ts +20 -0
- package/dist/solid/unstable/v2/cycle.d.ts.map +1 -0
- package/dist/solid/unstable/v2/cycle.js +30 -0
- package/dist/solid/unstable/v2/cycle.js.map +1 -0
- package/dist/solid/unstable/v2/drag-sensor.d.ts +23 -0
- package/dist/solid/unstable/v2/drag-sensor.d.ts.map +1 -0
- package/dist/solid/unstable/v2/drag-sensor.js +32 -0
- package/dist/solid/unstable/v2/drag-sensor.js.map +1 -0
- package/dist/solid/unstable/v2/element.d.ts +178 -0
- package/dist/solid/unstable/v2/element.d.ts.map +1 -0
- package/dist/solid/unstable/v2/element.jsx +325 -0
- package/dist/solid/unstable/v2/element.jsx.map +1 -0
- package/dist/solid/unstable/v2/feature-section.d.ts +12 -0
- package/dist/solid/unstable/v2/feature-section.d.ts.map +1 -0
- package/dist/solid/unstable/v2/feature-section.js +23 -0
- package/dist/solid/unstable/v2/feature-section.js.map +1 -0
- package/dist/solid/unstable/v2/focus-sensor.d.ts +13 -0
- package/dist/solid/unstable/v2/focus-sensor.d.ts.map +1 -0
- package/dist/solid/unstable/v2/focus-sensor.js +23 -0
- package/dist/solid/unstable/v2/focus-sensor.js.map +1 -0
- package/dist/solid/unstable/v2/hover-sensor.d.ts +12 -0
- package/dist/solid/unstable/v2/hover-sensor.d.ts.map +1 -0
- package/dist/solid/unstable/v2/hover-sensor.js +22 -0
- package/dist/solid/unstable/v2/hover-sensor.js.map +1 -0
- package/dist/solid/unstable/v2/index.d.ts +131 -0
- package/dist/solid/unstable/v2/index.d.ts.map +1 -0
- package/dist/solid/unstable/v2/index.js +114 -0
- package/dist/solid/unstable/v2/index.js.map +1 -0
- package/dist/solid/unstable/v2/layout-projection.d.ts +21 -0
- package/dist/solid/unstable/v2/layout-projection.d.ts.map +1 -0
- package/dist/solid/unstable/v2/layout-projection.js +18 -0
- package/dist/solid/unstable/v2/layout-projection.js.map +1 -0
- package/dist/solid/unstable/v2/layout.d.ts +47 -0
- package/dist/solid/unstable/v2/layout.d.ts.map +1 -0
- package/dist/solid/unstable/v2/layout.jsx +62 -0
- package/dist/solid/unstable/v2/layout.jsx.map +1 -0
- package/dist/solid/unstable/v2/lifecycle.d.ts +267 -0
- package/dist/solid/unstable/v2/lifecycle.d.ts.map +1 -0
- package/dist/solid/unstable/v2/lifecycle.js +457 -0
- package/dist/solid/unstable/v2/lifecycle.js.map +1 -0
- package/dist/solid/unstable/v2/live-value.d.ts +146 -0
- package/dist/solid/unstable/v2/live-value.d.ts.map +1 -0
- package/dist/solid/unstable/v2/live-value.js +235 -0
- package/dist/solid/unstable/v2/live-value.js.map +1 -0
- package/dist/solid/unstable/v2/presence-handle.d.ts +55 -0
- package/dist/solid/unstable/v2/presence-handle.d.ts.map +1 -0
- package/dist/solid/unstable/v2/presence-handle.js +119 -0
- package/dist/solid/unstable/v2/presence-handle.js.map +1 -0
- package/dist/solid/unstable/v2/presence-hooks.d.ts +51 -0
- package/dist/solid/unstable/v2/presence-hooks.d.ts.map +1 -0
- package/dist/solid/unstable/v2/presence-hooks.js +115 -0
- package/dist/solid/unstable/v2/presence-hooks.js.map +1 -0
- package/dist/solid/unstable/v2/presence.d.ts +89 -0
- package/dist/solid/unstable/v2/presence.d.ts.map +1 -0
- package/dist/solid/unstable/v2/presence.jsx +107 -0
- package/dist/solid/unstable/v2/presence.jsx.map +1 -0
- package/dist/solid/unstable/v2/press-sensor.d.ts +13 -0
- package/dist/solid/unstable/v2/press-sensor.d.ts.map +1 -0
- package/dist/solid/unstable/v2/press-sensor.js +23 -0
- package/dist/solid/unstable/v2/press-sensor.js.map +1 -0
- package/dist/solid/unstable/v2/provider.d.ts +239 -0
- package/dist/solid/unstable/v2/provider.d.ts.map +1 -0
- package/dist/solid/unstable/v2/provider.jsx +423 -0
- package/dist/solid/unstable/v2/provider.jsx.map +1 -0
- package/dist/solid/unstable/v2/reorder.d.ts +292 -0
- package/dist/solid/unstable/v2/reorder.d.ts.map +1 -0
- package/dist/solid/unstable/v2/reorder.jsx +525 -0
- package/dist/solid/unstable/v2/reorder.jsx.map +1 -0
- package/dist/solid/unstable/v2/sensors.d.ts +91 -0
- package/dist/solid/unstable/v2/sensors.d.ts.map +1 -0
- package/dist/solid/unstable/v2/sensors.js +124 -0
- package/dist/solid/unstable/v2/sensors.js.map +1 -0
- package/dist/solid/unstable/v2/solid-reactivity.d.ts +61 -0
- package/dist/solid/unstable/v2/solid-reactivity.d.ts.map +1 -0
- package/dist/solid/unstable/v2/solid-reactivity.js +62 -0
- package/dist/solid/unstable/v2/solid-reactivity.js.map +1 -0
- package/dist/solid/unstable/v2/variant-node.d.ts +51 -0
- package/dist/solid/unstable/v2/variant-node.d.ts.map +1 -0
- package/dist/solid/unstable/v2/variant-node.js +336 -0
- package/dist/solid/unstable/v2/variant-node.js.map +1 -0
- package/dist/solid/unstable/v2/w.d.ts +42 -0
- package/dist/solid/unstable/v2/w.d.ts.map +1 -0
- package/dist/solid/unstable/v2/w.jsx +22 -0
- package/dist/solid/unstable/v2/w.jsx.map +1 -0
- package/dist/solid/unstable/v2/waiters.d.ts +72 -0
- package/dist/solid/unstable/v2/waiters.d.ts.map +1 -0
- package/dist/solid/unstable/v2/waiters.js +175 -0
- package/dist/solid/unstable/v2/waiters.js.map +1 -0
- package/dist/solid/unstable/v2/ward.d.ts +393 -0
- package/dist/solid/unstable/v2/ward.d.ts.map +1 -0
- package/dist/solid/unstable/v2/ward.jsx +1475 -0
- package/dist/solid/unstable/v2/ward.jsx.map +1 -0
- package/dist/solid/unstable/v2/wardic-config.d.ts +68 -0
- package/dist/solid/unstable/v2/wardic-config.d.ts.map +1 -0
- package/dist/solid/unstable/v2/wardic-config.jsx +28 -0
- package/dist/solid/unstable/v2/wardic-config.jsx.map +1 -0
- package/dist/solid/unstable/v2/wardic.d.ts +28 -0
- package/dist/solid/unstable/v2/wardic.d.ts.map +1 -0
- package/dist/solid/unstable/v2/wardic.jsx +16 -0
- package/dist/solid/unstable/v2/wardic.jsx.map +1 -0
- package/dist/solid/variant-node.d.ts +32 -0
- package/dist/solid/variant-node.d.ts.map +1 -0
- package/dist/solid/variant-node.js +257 -0
- package/dist/solid/variant-node.js.map +1 -0
- package/dist/solid/variant-target.d.ts +102 -0
- package/dist/solid/variant-target.d.ts.map +1 -0
- package/dist/solid/variant-target.js +180 -0
- package/dist/solid/variant-target.js.map +1 -0
- package/dist/solid/variant-tree.d.ts +349 -0
- package/dist/solid/variant-tree.d.ts.map +1 -0
- package/dist/solid/variant-tree.js +358 -0
- package/dist/solid/variant-tree.js.map +1 -0
- package/dist/solid/variants.d.ts +21 -0
- package/dist/solid/variants.d.ts.map +1 -0
- package/dist/solid/variants.js +43 -0
- package/dist/solid/variants.js.map +1 -0
- package/dist/solid/w.d.ts +42 -0
- package/dist/solid/w.d.ts.map +1 -0
- package/dist/solid/w.jsx +23 -0
- package/dist/solid/w.jsx.map +1 -0
- package/dist/solid/ward-keys.d.ts +236 -0
- package/dist/solid/ward-keys.d.ts.map +1 -0
- package/dist/solid/ward-keys.js +2 -0
- package/dist/solid/ward-keys.js.map +1 -0
- package/dist/solid/wardic-component.d.ts +50 -0
- package/dist/solid/wardic-component.d.ts.map +1 -0
- package/dist/solid/wardic-component.js +74 -0
- package/dist/solid/wardic-component.js.map +1 -0
- package/dist/solid/wardic-config-value.d.ts +87 -0
- package/dist/solid/wardic-config-value.d.ts.map +1 -0
- package/dist/solid/wardic-config-value.js +106 -0
- package/dist/solid/wardic-config-value.js.map +1 -0
- package/dist/solid/wardic-config.d.ts +69 -0
- package/dist/solid/wardic-config.d.ts.map +1 -0
- package/dist/solid/wardic-config.jsx +30 -0
- package/dist/solid/wardic-config.jsx.map +1 -0
- package/dist/solid/wardic.d.ts +45 -0
- package/dist/solid/wardic.d.ts.map +1 -0
- package/dist/solid/wardic.jsx +31 -0
- package/dist/solid/wardic.jsx.map +1 -0
- package/package.json +98 -4
- package/src/animation-controls.ts +204 -0
- package/src/animation-frame.ts +32 -0
- package/src/appear.ts +804 -0
- package/src/arc.ts +34 -0
- package/src/bridge.ts +98 -0
- package/src/complete.ts +45 -0
- package/src/config.ts +805 -0
- package/src/create-animate.ts +41 -0
- package/src/create-ward.tsx +1271 -0
- package/src/cycle-index.ts +18 -0
- package/src/cycle.ts +34 -0
- package/src/directive.ts +87 -0
- package/src/drag-constraints.ts +103 -0
- package/src/drag-controls.ts +94 -0
- package/src/drag-samples.ts +54 -0
- package/src/drag-sensor.ts +46 -0
- package/src/drag-track.ts +937 -0
- package/src/drag-transition.ts +43 -0
- package/src/drag.ts +58 -0
- package/src/element-style.ts +112 -0
- package/src/element.tsx +400 -0
- package/src/feature-section.ts +33 -0
- package/src/feature.ts +342 -0
- package/src/features/all.ts +18 -0
- package/src/features/colors.ts +36 -0
- package/src/features/dom-animation.ts +15 -0
- package/src/features/dom-max.ts +11 -0
- package/src/features/drag.ts +30 -0
- package/src/features/focus.ts +17 -0
- package/src/features/hover.ts +17 -0
- package/src/features/in-view.ts +17 -0
- package/src/features/input.ts +42 -0
- package/src/features/keys.ts +89 -0
- package/src/features/layout.ts +54 -0
- package/src/features/pan.ts +17 -0
- package/src/features/press.ts +17 -0
- package/src/focus-sensor.ts +32 -0
- package/src/frame-time.ts +45 -0
- package/src/gesture-callbacks.ts +212 -0
- package/src/gesture-features.ts +35 -0
- package/src/gesture-info.ts +81 -0
- package/src/hover-sensor.ts +32 -0
- package/src/imperative.ts +782 -0
- package/src/index.ts +334 -0
- package/src/instant.ts +90 -0
- package/src/layout-group.ts +32 -0
- package/src/layout-member.ts +300 -0
- package/src/layout-projection.ts +28 -0
- package/src/layout.tsx +127 -0
- package/src/live-style.ts +449 -0
- package/src/live-value.ts +378 -0
- package/src/motion-props.ts +325 -0
- package/src/owner-scope.ts +31 -0
- package/src/page-point.ts +98 -0
- package/src/presence-controller.ts +1483 -0
- package/src/presence-record.ts +189 -0
- package/src/presence.tsx +269 -0
- package/src/press-sensor.ts +33 -0
- package/src/press.ts +40 -0
- package/src/provider.tsx +526 -0
- package/src/reactivity.ts +29 -0
- package/src/reorder-input.ts +53 -0
- package/src/reorder.tsx +703 -0
- package/src/retarget-legs.ts +1048 -0
- package/src/runtime.ts +388 -0
- package/src/sensors.ts +189 -0
- package/src/server-interpolators.ts +33 -0
- package/src/server.ts +21 -0
- package/src/solid-reactivity.ts +21 -0
- package/src/spine.ts +3385 -0
- package/src/stagger.ts +31 -0
- package/src/unstable/v2/bridge.ts +79 -0
- package/src/unstable/v2/complete.ts +47 -0
- package/src/unstable/v2/config-view.ts +156 -0
- package/src/unstable/v2/create-animate.ts +123 -0
- package/src/unstable/v2/cycle.ts +33 -0
- package/src/unstable/v2/drag-sensor.ts +44 -0
- package/src/unstable/v2/element.tsx +478 -0
- package/src/unstable/v2/feature-section.ts +32 -0
- package/src/unstable/v2/focus-sensor.ts +31 -0
- package/src/unstable/v2/hover-sensor.ts +30 -0
- package/src/unstable/v2/index.ts +270 -0
- package/src/unstable/v2/layout-projection.ts +27 -0
- package/src/unstable/v2/layout.tsx +89 -0
- package/src/unstable/v2/lifecycle.ts +612 -0
- package/src/unstable/v2/live-value.ts +414 -0
- package/src/unstable/v2/presence-handle.ts +159 -0
- package/src/unstable/v2/presence-hooks.ts +157 -0
- package/src/unstable/v2/presence.tsx +174 -0
- package/src/unstable/v2/press-sensor.ts +31 -0
- package/src/unstable/v2/provider.tsx +524 -0
- package/src/unstable/v2/reorder.tsx +880 -0
- package/src/unstable/v2/sensors.ts +169 -0
- package/src/unstable/v2/solid-reactivity.ts +69 -0
- package/src/unstable/v2/variant-node.ts +446 -0
- package/src/unstable/v2/w.tsx +49 -0
- package/src/unstable/v2/waiters.ts +212 -0
- package/src/unstable/v2/ward.tsx +2068 -0
- package/src/unstable/v2/wardic-config.tsx +84 -0
- package/src/unstable/v2/wardic.tsx +41 -0
- package/src/variant-node.ts +368 -0
- package/src/variant-target.ts +234 -0
- package/src/variant-tree.ts +638 -0
- package/src/variants.ts +47 -0
- package/src/w.tsx +59 -0
- package/src/ward-keys.ts +343 -0
- package/src/wardic-component.ts +96 -0
- package/src/wardic-config-value.ts +150 -0
- package/src/wardic-config.tsx +78 -0
- package/src/wardic.tsx +59 -0
|
@@ -0,0 +1,427 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `<Reorder>` for Solid (ADR-0020): drag items to reorder a list, built headless first
|
|
3
|
+
* (D8). `createReorderGroup` and `createReorderItem` are spreads for any elements and
|
|
4
|
+
* `use:reorderItem` a directive, so a list outside JSX components (a web component, a
|
|
5
|
+
* plain element) reorders the same way; `Reorder.Group` / `Reorder.Item` are built on
|
|
6
|
+
* them.
|
|
7
|
+
*
|
|
8
|
+
* The **Reorder group** is `@wardic/dom`'s `makeReorderController` (core's
|
|
9
|
+
* `Reorder.Group` underneath): it reads each item's slot, drag offset and layout
|
|
10
|
+
* version from its projection node's handle, runs the **Crossover** on each drag
|
|
11
|
+
* sample, calls the app's `onReorder`, runs **Auto-scroll**, and detects the axis after
|
|
12
|
+
* every Measure pass. This file adds Solid's half: the reactive config, the lifecycle,
|
|
13
|
+
* the elements and the components. The app owns `values` and keys its items with
|
|
14
|
+
* `<For>`. Each item is a `layout` node with a drag the group's axis decides per
|
|
15
|
+
* gesture, raised while dragged, whose `touch-action` follows the group's axis. A
|
|
16
|
+
* `values` change re-measures, so a reorder the app makes itself animates.
|
|
17
|
+
*
|
|
18
|
+
* Each item is also a tab stop for the group's **Keyboard reorder** (ADR-0037): `tabindex="0"`
|
|
19
|
+
* unless the app gives its own, and `aria-describedby` pointing at the group's instructions (on
|
|
20
|
+
* the client, with the app's ids kept). Its keys, blurs and presses reach the controller, which
|
|
21
|
+
* speaks through the Environment's `Announcer`; a lift turns its `whileDrag` on. `keyboard: false`
|
|
22
|
+
* on the group turns all of that off; `move` still announces.
|
|
23
|
+
*
|
|
24
|
+
* Observability: the controller logs its own `wardic.reorder:` events through the
|
|
25
|
+
* runtime (cold path: once per reorder, wait, gesture, edge or axis change, never per
|
|
26
|
+
* sample); this file logs nothing.
|
|
27
|
+
*/
|
|
28
|
+
import * as InputSource from "@wardic/core/InputSource";
|
|
29
|
+
import * as CoreReorder from "@wardic/core/Reorder";
|
|
30
|
+
import * as DomAnnouncer from "@wardic/dom/DomAnnouncer";
|
|
31
|
+
import * as ReorderController from "@wardic/dom/ReorderController";
|
|
32
|
+
import * as Style from "@wardic/dom/Style";
|
|
33
|
+
import { mergeRefs } from "@solid-primitives/refs";
|
|
34
|
+
import * as Arr from "effect/Array";
|
|
35
|
+
import * as Bool from "effect/Boolean";
|
|
36
|
+
import * as Effect from "effect/Effect";
|
|
37
|
+
import { constUndefined, identity, pipe } from "effect/Function";
|
|
38
|
+
import * as Match from "effect/Match";
|
|
39
|
+
import * as Option from "effect/Option";
|
|
40
|
+
import * as Predicate from "effect/Predicate";
|
|
41
|
+
import * as Scope from "effect/Scope";
|
|
42
|
+
import * as UndefinedOr from "effect/UndefinedOr";
|
|
43
|
+
import { createContext, createEffect, createMemo, createSignal, createUniqueId, mergeProps, on, onCleanup, splitProps, untrack, useContext, } from "solid-js";
|
|
44
|
+
import { Dynamic } from "solid-js/web";
|
|
45
|
+
import * as OwnerScope from "./owner-scope.js";
|
|
46
|
+
import { runWatch, useBrought, useWardicGate, useWardicRuntime } from "./provider.jsx";
|
|
47
|
+
import { useLayoutServices } from "./layout-projection.js";
|
|
48
|
+
import { watchItemInput } from "./reorder-input.js";
|
|
49
|
+
import { drag } from "./features/drag.js";
|
|
50
|
+
import { focus } from "./features/focus.js";
|
|
51
|
+
import { hover } from "./features/hover.js";
|
|
52
|
+
import { inView } from "./features/in-view.js";
|
|
53
|
+
import { layout } from "./features/layout.js";
|
|
54
|
+
import { pan } from "./features/pan.js";
|
|
55
|
+
import { press } from "./features/press.js";
|
|
56
|
+
import { inputIn } from "./gesture-features.js";
|
|
57
|
+
import { controlledOf, runSpine, createWardWith } from "./create-ward.jsx";
|
|
58
|
+
import { isServer } from "./server.js";
|
|
59
|
+
import { createVariantNode } from "./variant-node.js";
|
|
60
|
+
import { accessorOf } from "./spine.js";
|
|
61
|
+
import { changesContext } from "./variant-tree.js";
|
|
62
|
+
import { useVariantContext } from "./variants.js";
|
|
63
|
+
import { configOfMotion } from "./element.jsx";
|
|
64
|
+
import { MOTION_PROPS } from "./motion-props.js";
|
|
65
|
+
import { w } from "./w.jsx";
|
|
66
|
+
/** An item's `layout` as its Layout mode: `"position"`, else `true` (ADR-0009, *Amendment (#42)*). */
|
|
67
|
+
const itemLayoutOf = (layout) => Bool.match(layout === "position", { onTrue: () => "position", onFalse: () => true });
|
|
68
|
+
/** What a group's Scope reports when one of its finalizers fails as its owner goes. */
|
|
69
|
+
const CLOSE_FAILED = "wardic.reorder: a finalizer failed";
|
|
70
|
+
/**
|
|
71
|
+
* Makes a list of your own elements reorderable, by dragging or from the keyboard: spread the group on
|
|
72
|
+
* the list's element, and make each item with `createReorderItem`, keyed with `<For>`. Your app owns
|
|
73
|
+
* `values`, and sets them from `onReorder`. It gives the element `overflow-anchor: none`, so the
|
|
74
|
+
* browser doesn't scroll the page as items move. `Reorder.Group` is built on it.
|
|
75
|
+
*
|
|
76
|
+
* @example
|
|
77
|
+
* const list = createReorderGroup(() => ({ values: items(), onReorder: setItems }))
|
|
78
|
+
* <ul {...list()}>
|
|
79
|
+
* <For each={items()}>
|
|
80
|
+
* {(item) => {
|
|
81
|
+
* const row = createReorderItem(list, { value: item })
|
|
82
|
+
* return <li {...row()}>{item}</li>
|
|
83
|
+
* }}
|
|
84
|
+
* </For>
|
|
85
|
+
* </ul>
|
|
86
|
+
* @see https://wardic.dev/reference/solid/reorder/reorder-group
|
|
87
|
+
*/
|
|
88
|
+
// ADR-0020. `overflow-anchor: none` goes under the app's style, as Motion's Group.tsx:187-195 at
|
|
89
|
+
// 16c6122 does. The axis is the config's, else detected from the items' boxes after every Measure pass
|
|
90
|
+
// (for their touch-action); a drag resolves its own at its start. On a server it renders the
|
|
91
|
+
// element's style and nothing else: no controller, no runtime; its `group`, `move` and `controller` do
|
|
92
|
+
// nothing (ADR-0021).
|
|
93
|
+
export function createReorderGroup(config) {
|
|
94
|
+
const cfg = accessorOf(config);
|
|
95
|
+
if (isServer) {
|
|
96
|
+
useWardicRuntime();
|
|
97
|
+
return serverReorderGroup(cfg);
|
|
98
|
+
}
|
|
99
|
+
const [detected, setDetected] = createSignal("y");
|
|
100
|
+
const runtime = useWardicRuntime();
|
|
101
|
+
// The group's controller, over the provider's projection system and the Environment's channel to
|
|
102
|
+
// assistive technology (ADR-0037), in a Scope of the group's own, closed on unmount (#132's PR 3),
|
|
103
|
+
// set before the controller is built, so one that fails as it's built leaves nothing (#618).
|
|
104
|
+
const scope = OwnerScope.open(runtime);
|
|
105
|
+
onCleanup(() => OwnerScope.close(runtime, scope, CLOSE_FAILED));
|
|
106
|
+
const controller = runtime.runSync(ReorderController.make({
|
|
107
|
+
values: () => untrack(cfg).values,
|
|
108
|
+
onReorder: (values) => untrack(cfg).onReorder(values),
|
|
109
|
+
onReorderEnd: (end) => UndefinedOr.map(untrack(cfg).onReorderEnd, (tell) => tell(end)),
|
|
110
|
+
onHoldStart: (start) => UndefinedOr.map(untrack(cfg).onHoldStart, (tell) => tell(start)),
|
|
111
|
+
onHoldEnd: (end) => UndefinedOr.map(untrack(cfg).onHoldEnd, (tell) => tell(end)),
|
|
112
|
+
axis: () => Option.fromUndefinedOr(untrack(cfg).axis),
|
|
113
|
+
onAxis: setDetected,
|
|
114
|
+
keyedWith: "<For>",
|
|
115
|
+
keyboard: () => untrack(cfg).keyboard !== false,
|
|
116
|
+
announcements: () => Option.fromUndefinedOr(untrack(cfg).announcements),
|
|
117
|
+
}).pipe(Effect.provide(useLayoutServices()), Scope.provide(scope)));
|
|
118
|
+
// The app's axis, else the detected one. When the app's is cleared, detected here, from the boxes the
|
|
119
|
+
// engine holds, so the items' touch-action follows in the same update (#257's audit: an effect that
|
|
120
|
+
// detected it wrote a signal the items read a step late). A Measure pass's change comes through `onAxis`.
|
|
121
|
+
const axis = createMemo(() => UndefinedOr.match(cfg().axis, {
|
|
122
|
+
onDefined: identity,
|
|
123
|
+
onUndefined: () => {
|
|
124
|
+
detected();
|
|
125
|
+
return controller.detect();
|
|
126
|
+
},
|
|
127
|
+
}));
|
|
128
|
+
// A `values` change re-measures, so the items animate to their new slots whoever
|
|
129
|
+
// reordered them (as LayoutGroup's layoutDependency does).
|
|
130
|
+
createEffect(on(() => cfg().values, () => controller.valuesChanged(), { defer: true }));
|
|
131
|
+
const spread = (userProps = NO_GROUP_PROPS) => ({
|
|
132
|
+
ref: mergeRefs(userProps.ref, (el) => controller.attach(el)),
|
|
133
|
+
get style() {
|
|
134
|
+
return pipe(userProps.style, Style.over(ReorderController.GROUP_STYLE));
|
|
135
|
+
},
|
|
136
|
+
});
|
|
137
|
+
const move = (value, toIndex) => controller.move(value, toIndex);
|
|
138
|
+
return Object.assign(spread, { group: controller.group, axis, move, controller, ...keyboardOf(cfg) });
|
|
139
|
+
}
|
|
140
|
+
/** A group's keyboard reorder settings, as accessors (ADR-0037). */
|
|
141
|
+
const keyboardOf = (cfg) => ({
|
|
142
|
+
keyboard: () => cfg().keyboard !== false,
|
|
143
|
+
instructions: () => UndefinedOr.match(cfg().instructions, { onUndefined: () => ReorderController.DEFAULT_INSTRUCTIONS, onDefined: (text) => text }),
|
|
144
|
+
});
|
|
145
|
+
/**
|
|
146
|
+
* An item's `touch-action`, its group's axis's, under its style: none when its own presses don't drag
|
|
147
|
+
* it (`dragListener={false}`, #431), as with its other drag defaults, so a list dragged by its handles
|
|
148
|
+
* scrolls by touch.
|
|
149
|
+
*/
|
|
150
|
+
const touchActionOf = (group, listens) => Bool.match(listens, { onTrue: () => () => ({ "touch-action": Style.reorderTouchAction(group.axis()) }), onFalse: constUndefined });
|
|
151
|
+
/**
|
|
152
|
+
* What an item brings (ADR-0067 decision 12), whatever its section has (#511): its layout node, its
|
|
153
|
+
* drag, and every other gesture, so `whileHover` or `whileTap` on an item works as on Motion's, for
|
|
154
|
+
* about 0.5 KB gzipped beside the drag's.
|
|
155
|
+
*/
|
|
156
|
+
const ITEM_BRINGS = [layout, drag, hover, press, focus, inView, pan];
|
|
157
|
+
const itemInternals = (group, value, element, runtime, listens) => {
|
|
158
|
+
// Its keys' input, the `drag` Feature's it brings (#511).
|
|
159
|
+
const services = useBrought(ITEM_BRINGS);
|
|
160
|
+
// A keyboard lift turns the item's `whileDrag` on (ADR-0037).
|
|
161
|
+
const [lifted, setLifted] = createSignal(false);
|
|
162
|
+
const driver = group.controller.item(value, () => Option.fromUndefinedOr(element()), setLifted);
|
|
163
|
+
// An item unmounted mid-gesture gets no end sample: its disposal ends the gesture (and a lift).
|
|
164
|
+
onCleanup(driver.dispose);
|
|
165
|
+
// Its keys, blurs and presses (ADR-0037), watched in a Scope of their own for as long as the element
|
|
166
|
+
// is this one, with no fiber at rest (#379).
|
|
167
|
+
createEffect(on(element, (el) => {
|
|
168
|
+
if (Predicate.isNotUndefined(el)) {
|
|
169
|
+
runWatch(runtime, (onDefect) => Effect.provideService(watchItemInput(el, driver, (effect) => void runtime.runFork(effect), onDefect), InputSource.InputSource, inputIn(services())));
|
|
170
|
+
}
|
|
171
|
+
}));
|
|
172
|
+
return {
|
|
173
|
+
brings: ITEM_BRINGS,
|
|
174
|
+
dragAxis: () => dragAxisFor(driver.dragAxis()),
|
|
175
|
+
onDragSample: driver.onSample,
|
|
176
|
+
onLayoutHandle: (handle) => onCleanup(driver.register(handle)),
|
|
177
|
+
raiseWhileDragged: true,
|
|
178
|
+
keysTaken: true,
|
|
179
|
+
lifted,
|
|
180
|
+
baseStyle: touchActionOf(group, listens),
|
|
181
|
+
};
|
|
182
|
+
};
|
|
183
|
+
/**
|
|
184
|
+
* What an item adds to its element for the keyboard reorder (ADR-0037): `tabindex="0"` while the
|
|
185
|
+
* group's keyboard is on and the app gave no `tabIndex` of its own, and `aria-describedby` with
|
|
186
|
+
* the group's instructions (`describedBy`, set on the client) after the app's own ids.
|
|
187
|
+
*/
|
|
188
|
+
const keyboardAttributes = (group, user = NO_ITEM_PROPS, describedBy) => ({
|
|
189
|
+
get tabindex() {
|
|
190
|
+
return UndefinedOr.match(user.tabIndex, {
|
|
191
|
+
onDefined: identity,
|
|
192
|
+
onUndefined: () => Bool.match(group.keyboard(), { onTrue: () => 0, onFalse: constUndefined }),
|
|
193
|
+
});
|
|
194
|
+
},
|
|
195
|
+
get "aria-describedby"() {
|
|
196
|
+
const ids = Arr.filter([user["aria-describedby"], Bool.match(group.keyboard(), { onTrue: describedBy, onFalse: constUndefined })], Predicate.isNotUndefined);
|
|
197
|
+
return Bool.match(ids.length === 0, { onTrue: () => undefined, onFalse: () => ids.join(" ") });
|
|
198
|
+
},
|
|
199
|
+
});
|
|
200
|
+
/**
|
|
201
|
+
* Makes an element an item of a Reorder group: spread it on the element, `{...row()}`, as a ward.
|
|
202
|
+
* `value` is its value in the group's `values`, read once; the rest are its motion props, but
|
|
203
|
+
* `layout` (`true` or `"position"`), `layoutId` and `drag`, which the group sets. It's a tab stop for
|
|
204
|
+
* the keyboard reorder: give your own `tabIndex` and `aria-describedby` in the spread's props.
|
|
205
|
+
*
|
|
206
|
+
* @example
|
|
207
|
+
* const row = createReorderItem(list, { value: item, whileDrag: { scale: 1.05 } })
|
|
208
|
+
* <li {...row()}>{item.name}</li>
|
|
209
|
+
* @see https://wardic.dev/reference/solid/reorder/reorder-item
|
|
210
|
+
*/
|
|
211
|
+
// ADR-0020, ADR-0037. The element takes the drag defaults, with the group's axis's touch-action, which
|
|
212
|
+
// its style can override.
|
|
213
|
+
export function createReorderItem(group, config) {
|
|
214
|
+
const cfg = accessorOf(config);
|
|
215
|
+
const value = untrack(cfg).value;
|
|
216
|
+
const listens = untrack(cfg).dragListener !== false;
|
|
217
|
+
const [element, setElement] = createSignal();
|
|
218
|
+
// On a server the item renders the drag defaults with its group's touch-action and
|
|
219
|
+
// joins no controller (ADR-0021).
|
|
220
|
+
const internals = Bool.match(isServer, {
|
|
221
|
+
onTrue: () => ({ brings: ITEM_BRINGS, dragAxis: () => true, baseStyle: touchActionOf(group, listens) }),
|
|
222
|
+
onFalse: () => itemInternals(group, value, element, useWardicRuntime(), listens),
|
|
223
|
+
});
|
|
224
|
+
const ward = createWardWith(() => ({ ...withoutValue(cfg()), layout: itemLayoutOf(cfg().layout) }), internals);
|
|
225
|
+
// The instructions element exists on the client only, so `aria-describedby` waits for the mount.
|
|
226
|
+
const [describedBy, setDescribedBy] = createSignal();
|
|
227
|
+
if (!isServer) {
|
|
228
|
+
createEffect(on([element, group.instructions], ([el, text]) => {
|
|
229
|
+
if (Predicate.isNotUndefined(el))
|
|
230
|
+
setDescribedBy(DomAnnouncer.instructionsId(DomAnnouncer.documentOf(el), text));
|
|
231
|
+
}));
|
|
232
|
+
}
|
|
233
|
+
// The item's element, for Auto-scroll's held scroll shift.
|
|
234
|
+
// The user's style is passed on as a getter, so a live one stays live (WardUserProps).
|
|
235
|
+
const item = (userProps = NO_ITEM_PROPS) => mergeProps(ward({
|
|
236
|
+
ref: mergeRefs(userProps.ref, setElement),
|
|
237
|
+
get style() {
|
|
238
|
+
return userProps.style;
|
|
239
|
+
},
|
|
240
|
+
}), keyboardAttributes(group, userProps, describedBy));
|
|
241
|
+
return Object.assign(item, {
|
|
242
|
+
Provider: ward.Provider,
|
|
243
|
+
});
|
|
244
|
+
}
|
|
245
|
+
const noop = () => { };
|
|
246
|
+
/** A group's spread's user props when it's given none. */
|
|
247
|
+
const NO_GROUP_PROPS = {};
|
|
248
|
+
const NO_ITEM_PROPS = {};
|
|
249
|
+
/** A Reorder item's drag axis for its gesture's axis: a grid's `xy` is a free drag. Built once, at module load. */
|
|
250
|
+
const dragAxisFor = Match.type().pipe(Match.when("xy", () => true), Match.orElse((axis) => axis));
|
|
251
|
+
/**
|
|
252
|
+
* {@link createReorderGroup} during a server render (ADR-0021): the group's element style
|
|
253
|
+
* (`overflow-anchor: none` under the user's) and the app's axis, else `"y"`; its `group`,
|
|
254
|
+
* `move` and `controller` do nothing.
|
|
255
|
+
*/
|
|
256
|
+
const serverReorderGroup = (cfg) => {
|
|
257
|
+
const spread = (userProps = NO_GROUP_PROPS) => ({
|
|
258
|
+
ref: UndefinedOr.match(userProps.ref, { onUndefined: () => noop, onDefined: identity }),
|
|
259
|
+
style: pipe(userProps.style, Style.over(ReorderController.GROUP_STYLE)),
|
|
260
|
+
});
|
|
261
|
+
const controller = ReorderController.inert;
|
|
262
|
+
const axis = () => UndefinedOr.match(cfg().axis, { onUndefined: () => "y", onDefined: (a) => a });
|
|
263
|
+
return Object.assign(spread, { group: controller.group, axis, move: noop, controller, ...keyboardOf(cfg) });
|
|
264
|
+
};
|
|
265
|
+
const withoutValue = (config) => {
|
|
266
|
+
const { value: _value, ...rest } = config;
|
|
267
|
+
return rest;
|
|
268
|
+
};
|
|
269
|
+
/**
|
|
270
|
+
* `use:reorderItem`: makes an element an item of a Reorder group, as `use:wardic` makes it a Wardic
|
|
271
|
+
* element: `<li use:reorderItem={{ group: list, value: item }}>`. In the browser only: its drag
|
|
272
|
+
* defaults and `touch-action` are set as it mounts, not in the server's markup, so a server-rendered
|
|
273
|
+
* item takes `createReorderItem` or `Reorder.Item`. Import `reorderItem` in the module that uses it.
|
|
274
|
+
*
|
|
275
|
+
* @see https://wardic.dev/reference/solid/reorder/reorder-item
|
|
276
|
+
*/
|
|
277
|
+
// ADR-0003: a directive is client-only. The import keeps `reorderItem` from being dropped as unused, as
|
|
278
|
+
// for `wardic`.
|
|
279
|
+
export function reorderItem(el, value) {
|
|
280
|
+
const first = untrack(value);
|
|
281
|
+
// Animation controls for its `animate` (#433): each change they make is its entry.
|
|
282
|
+
const { cfg, controls } = controlledOf(() => {
|
|
283
|
+
const { group: _group, value: _value, ...rest } = value();
|
|
284
|
+
return { ...rest, layout: itemLayoutOf(rest.layout) };
|
|
285
|
+
});
|
|
286
|
+
// As `use:wardic`: a Variant child joins the nearest variant context; it provides none (#50).
|
|
287
|
+
const node = createVariantNode(cfg, useVariantContext(), UndefinedOr.map(controls, (c) => c.change));
|
|
288
|
+
const runtime = useWardicRuntime();
|
|
289
|
+
const group = first.group;
|
|
290
|
+
// The keyboard reorder's tab stop and instructions (ADR-0037), on the element itself: the app's
|
|
291
|
+
// own `tabindex` wins, and its `aria-describedby` ids are kept.
|
|
292
|
+
createEffect(() => {
|
|
293
|
+
if (Bool.not(group.keyboard()))
|
|
294
|
+
return;
|
|
295
|
+
if (!el.hasAttribute("tabindex"))
|
|
296
|
+
el.setAttribute("tabindex", "0");
|
|
297
|
+
const id = DomAnnouncer.instructionsId(DomAnnouncer.documentOf(el), group.instructions());
|
|
298
|
+
const ids = Option.getOrElse(Option.fromNullishOr(el.getAttribute("aria-describedby")), () => "").split(" ").filter((t) => t !== "");
|
|
299
|
+
if (!ids.includes(id))
|
|
300
|
+
el.setAttribute("aria-describedby", [...ids, id].join(" "));
|
|
301
|
+
});
|
|
302
|
+
runSpine({
|
|
303
|
+
runtime,
|
|
304
|
+
gate: useWardicGate(),
|
|
305
|
+
id: createUniqueId(),
|
|
306
|
+
el: () => el,
|
|
307
|
+
cfg,
|
|
308
|
+
controls,
|
|
309
|
+
parent: node.inherited,
|
|
310
|
+
extraDelay: node.extraDelay,
|
|
311
|
+
byName: node.names,
|
|
312
|
+
canStart: node.canStart,
|
|
313
|
+
bindGestures: node.bindGestures,
|
|
314
|
+
onFrame: node.onFrame,
|
|
315
|
+
makeSink: (element) => ({ target: element }),
|
|
316
|
+
internal: itemInternals(group, first.value, () => el, runtime, first.dragListener !== false),
|
|
317
|
+
});
|
|
318
|
+
}
|
|
319
|
+
// --- Components (ADR-0020, D8: built on the headless API) --------------------------
|
|
320
|
+
const GroupContext = createContext();
|
|
321
|
+
/**
|
|
322
|
+
* The Wardic element for `tag`, typed as a plain component: a Slim element's (`w[tag]`, #511), so a
|
|
323
|
+
* Reorder brings no Feature but its own (ADR-0067 decision 12) and renders under a `strict` section.
|
|
324
|
+
*/
|
|
325
|
+
const wardicTag = (tag) => UndefinedOr.getOrThrow(w[tag]);
|
|
326
|
+
/**
|
|
327
|
+
* A list put in order by dragging its items, or from the keyboard, rendered as `as`, `"ul"` by
|
|
328
|
+
* default. Your app owns `values`, and sets them from `onReorder`. Key its `Reorder.Item`s with `<For>`.
|
|
329
|
+
*
|
|
330
|
+
* @see https://wardic.dev/reference/solid/reorder/reorder
|
|
331
|
+
*/
|
|
332
|
+
// ADR-0020: a `createReorderGroup` rendered as `w[as]`, the group in context for its items.
|
|
333
|
+
function Group(props) {
|
|
334
|
+
const [local, rest] = splitProps(props, [
|
|
335
|
+
"values",
|
|
336
|
+
"onReorder",
|
|
337
|
+
"onReorderEnd",
|
|
338
|
+
"onHoldStart",
|
|
339
|
+
"onHoldEnd",
|
|
340
|
+
"axis",
|
|
341
|
+
"keyboard",
|
|
342
|
+
"announcements",
|
|
343
|
+
"instructions",
|
|
344
|
+
"as",
|
|
345
|
+
"ref",
|
|
346
|
+
"style",
|
|
347
|
+
"children",
|
|
348
|
+
]);
|
|
349
|
+
const group = createReorderGroup(() => ({
|
|
350
|
+
values: local.values,
|
|
351
|
+
onReorder: local.onReorder,
|
|
352
|
+
...UndefinedOr.match(local.onReorderEnd, { onUndefined: () => ({}), onDefined: (onReorderEnd) => ({ onReorderEnd }) }),
|
|
353
|
+
...UndefinedOr.match(local.onHoldStart, { onUndefined: () => ({}), onDefined: (onHoldStart) => ({ onHoldStart }) }),
|
|
354
|
+
...UndefinedOr.match(local.onHoldEnd, { onUndefined: () => ({}), onDefined: (onHoldEnd) => ({ onHoldEnd }) }),
|
|
355
|
+
...UndefinedOr.match(local.axis, { onUndefined: () => ({}), onDefined: (axis) => ({ axis }) }),
|
|
356
|
+
...UndefinedOr.match(local.keyboard, { onUndefined: () => ({}), onDefined: (keyboard) => ({ keyboard }) }),
|
|
357
|
+
...UndefinedOr.match(local.announcements, { onUndefined: () => ({}), onDefined: (announcements) => ({ announcements }) }),
|
|
358
|
+
...UndefinedOr.match(local.instructions, { onUndefined: () => ({}), onDefined: (instructions) => ({ instructions }) }),
|
|
359
|
+
}));
|
|
360
|
+
const Tag = wardicTag(UndefinedOr.match(untrack(() => local.as), { onUndefined: () => "ul", onDefined: identity }));
|
|
361
|
+
const userRef = local.ref;
|
|
362
|
+
const spread = group({
|
|
363
|
+
...UndefinedOr.match(userRef, { onUndefined: () => ({}), onDefined: (ref) => ({ ref }) }),
|
|
364
|
+
get style() {
|
|
365
|
+
return local.style;
|
|
366
|
+
},
|
|
367
|
+
});
|
|
368
|
+
return (<GroupContext.Provider value={group}>
|
|
369
|
+
<Tag {...rest} {...spread}>
|
|
370
|
+
{local.children}
|
|
371
|
+
</Tag>
|
|
372
|
+
</GroupContext.Provider>);
|
|
373
|
+
}
|
|
374
|
+
/**
|
|
375
|
+
* An item of the `Reorder.Group` around it, rendered as `as`, `"li"` by default. Outside a group it
|
|
376
|
+
* throws, as Motion's does.
|
|
377
|
+
*
|
|
378
|
+
* @see https://wardic.dev/reference/solid/reorder/reorder
|
|
379
|
+
*/
|
|
380
|
+
// ADR-0020: a `createReorderItem` on the nearest group.
|
|
381
|
+
function Item(props) {
|
|
382
|
+
const group = useContext(GroupContext);
|
|
383
|
+
if (Predicate.isUndefined(group))
|
|
384
|
+
throw new Error("Reorder.Item must be a child of Reorder.Group");
|
|
385
|
+
// The item consumes every motion prop name (layoutId / drag included, though its type
|
|
386
|
+
// omits them), so none reaches the DOM.
|
|
387
|
+
const [local, motion, rest] = splitProps(props, ["value", "as", "ref", "style", "children", "tabIndex", "aria-describedby"], MOTION_PROPS);
|
|
388
|
+
const config = configOfMotion(motion);
|
|
389
|
+
const item = createReorderItem(group, () => ({ ...config(), layout: itemLayoutOf(config().layout), value: local.value }));
|
|
390
|
+
const tag = UndefinedOr.match(untrack(() => local.as), { onUndefined: () => "li", onDefined: identity });
|
|
391
|
+
const userRef = local.ref;
|
|
392
|
+
const spread = item({
|
|
393
|
+
...UndefinedOr.match(userRef, { onUndefined: () => ({}), onDefined: (ref) => ({ ref }) }),
|
|
394
|
+
get style() {
|
|
395
|
+
return local.style;
|
|
396
|
+
},
|
|
397
|
+
get tabIndex() {
|
|
398
|
+
return local.tabIndex;
|
|
399
|
+
},
|
|
400
|
+
get "aria-describedby"() {
|
|
401
|
+
return local["aria-describedby"];
|
|
402
|
+
},
|
|
403
|
+
});
|
|
404
|
+
const element = () => (<Dynamic component={tag} {...rest} {...spread}>
|
|
405
|
+
{local.children}
|
|
406
|
+
</Dynamic>);
|
|
407
|
+
// An item that changes what its children read renders its variant context's Provider around
|
|
408
|
+
// them (#50), as every Wardic element does; any other renders none.
|
|
409
|
+
return Bool.match(changesContext(untrack(config)), {
|
|
410
|
+
onFalse: element,
|
|
411
|
+
onTrue: () => <item.Provider>{element()}</item.Provider>,
|
|
412
|
+
});
|
|
413
|
+
}
|
|
414
|
+
/**
|
|
415
|
+
* A list put in order by dragging its items, or from the keyboard: `Reorder.Group` and `Reorder.Item`.
|
|
416
|
+
* Your app owns the order: the group takes it as `values`, and `onReorder` hands each new one back.
|
|
417
|
+
* Motion's `Reorder`.
|
|
418
|
+
*
|
|
419
|
+
* @example
|
|
420
|
+
* <Reorder.Group values={items()} onReorder={setItems}>
|
|
421
|
+
* <For each={items()}>{(item) => <Reorder.Item value={item}>{item}</Reorder.Item>}</For>
|
|
422
|
+
* </Reorder.Group>
|
|
423
|
+
* @see https://wardic.dev/reference/solid/reorder/reorder
|
|
424
|
+
*/
|
|
425
|
+
// ADR-0020.
|
|
426
|
+
export const Reorder = { Group, Item };
|
|
427
|
+
//# sourceMappingURL=reorder.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reorder.jsx","sourceRoot":"","sources":["../../src/reorder.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
import * as DefaultTransition from "@wardic/core/DefaultTransition";
|
|
2
|
+
import type * as Frame from "@wardic/core/Frame";
|
|
3
|
+
import type * as InterpolatorRegistry from "@wardic/core/InterpolatorRegistry";
|
|
4
|
+
import * as Machine from "@wardic/core/Machine";
|
|
5
|
+
import * as ReducedMotion from "@wardic/core/ReducedMotion";
|
|
6
|
+
import * as Values from "@wardic/core/Values";
|
|
7
|
+
import * as MeasuredPair from "@wardic/dom/MeasuredPair";
|
|
8
|
+
import type * as Style from "@wardic/dom/Style";
|
|
9
|
+
import * as Effect from "effect/Effect";
|
|
10
|
+
import { type LazyArg } from "effect/Function";
|
|
11
|
+
import type { WardicTransition } from "./config.ts";
|
|
12
|
+
/** A Retarget's returns that follow a moving Live value (#130, ADR-0043 decision 6). */
|
|
13
|
+
export interface Follows {
|
|
14
|
+
/** The keys among the animated ones whose return follows its Live value. */
|
|
15
|
+
readonly keysOf: (rest: Values.Values) => ReadonlyArray<string>;
|
|
16
|
+
/** Where a following key's Live value is now, read each step. */
|
|
17
|
+
readonly targetOf: (key: string, start: number) => () => number;
|
|
18
|
+
}
|
|
19
|
+
/** A leg that snaps the positional keys (ADR-0029). */
|
|
20
|
+
export interface Snap {
|
|
21
|
+
readonly _tag: "Snap";
|
|
22
|
+
/** The keys it snaps: a spring starts each of them at rest after. */
|
|
23
|
+
readonly keys: ReadonlyArray<string>;
|
|
24
|
+
/** Each key it snaps, with the target the Retarget gave it (#325). */
|
|
25
|
+
readonly to: Values.Values;
|
|
26
|
+
readonly machine: () => Machine.Machine<Frame.Frame<Values.Values>>;
|
|
27
|
+
}
|
|
28
|
+
/** A leg that follows one key's moving Live value (#130). */
|
|
29
|
+
export interface Follow {
|
|
30
|
+
readonly _tag: "Follow";
|
|
31
|
+
readonly key: string;
|
|
32
|
+
/** Its key, with where its Live value was at the Retarget (#325). */
|
|
33
|
+
readonly to: Values.Values;
|
|
34
|
+
readonly machine: () => Machine.Machine<Frame.Frame<number> & {
|
|
35
|
+
readonly velocity?: number;
|
|
36
|
+
}>;
|
|
37
|
+
}
|
|
38
|
+
/** A leg over the numeric keys, carrying their velocities: a spring's. */
|
|
39
|
+
export interface Numbers {
|
|
40
|
+
readonly _tag: "Numbers";
|
|
41
|
+
/** Each key it animates, with its target (#325). */
|
|
42
|
+
readonly to: Values.Values;
|
|
43
|
+
readonly machine: () => Machine.Machine<Frame.MultiPhysics>;
|
|
44
|
+
}
|
|
45
|
+
/** A leg over values through the Interpolators: a tween's keys, or a spring's strings. */
|
|
46
|
+
export interface Blend {
|
|
47
|
+
readonly _tag: "Blend";
|
|
48
|
+
/** Each key it animates, with its target (#325). */
|
|
49
|
+
readonly to: Values.Values;
|
|
50
|
+
readonly machine: () => Effect.Effect<Machine.Machine<Frame.Frame<Values.Values>>, never, InterpolatorRegistry.InterpolatorRegistry>;
|
|
51
|
+
}
|
|
52
|
+
/** One leg of a Retarget. */
|
|
53
|
+
export type Leg = Snap | Follow | Numbers | Blend;
|
|
54
|
+
/**
|
|
55
|
+
* Each key's velocity now (#464): read only for a key a spring or a follow starts, so a tween's
|
|
56
|
+
* Retarget reads none. A spring takes its transition's own `velocity` over it, as Motion's
|
|
57
|
+
* `{ velocity: value.getVelocity(), ...valueTransition }`.
|
|
58
|
+
*/
|
|
59
|
+
export type Velocities = (key: string) => number;
|
|
60
|
+
/** No velocity: every key at rest. */
|
|
61
|
+
export declare const NO_VELOCITY: Velocities;
|
|
62
|
+
/** Each key's velocity from a record of them, 0 for one it doesn't have. */
|
|
63
|
+
export declare const velocitiesOf: (record: Readonly<Record<string, number>>) => Velocities;
|
|
64
|
+
/**
|
|
65
|
+
* The fields no machine reads: the orchestration's (ADR-0007), the variant tree's, and a Path
|
|
66
|
+
* (#438), which {@link legsOf} takes out to `x` and `y`'s leg. Neither defines a transition.
|
|
67
|
+
*/
|
|
68
|
+
declare const ORCHESTRATION: readonly ["staggerChildren", "delayChildren", "from", "staggerDirection", "when", "path"];
|
|
69
|
+
/** A transition as a machine takes it: without the orchestration's fields (#243) or its Path (#438), each arm. */
|
|
70
|
+
export type MotionTransition = WardicTransition extends infer T ? (T extends unknown ? Omit<T, (typeof ORCHESTRATION)[number]> : never) : never;
|
|
71
|
+
/**
|
|
72
|
+
* A transition as its machines take it: without the orchestration's fields (#243). A stagger's
|
|
73
|
+
* `from` (`"last"`, `"center"`) is the variant tree's, and a spring decodes `from` as its starting
|
|
74
|
+
* position, so it failed every leg; the rest of those fields a machine ignores. The same transition,
|
|
75
|
+
* one with none of them.
|
|
76
|
+
*/
|
|
77
|
+
export declare const motionOf: (transition: WardicTransition | undefined) => MotionTransition | undefined;
|
|
78
|
+
/**
|
|
79
|
+
* A transition's entries (#301): its own fields, and each value's entry (`default` and `layout`
|
|
80
|
+
* among them). Each entry is resolved at its first need and kept, so its keys run on the same object
|
|
81
|
+
* at every Retarget (#66's decode cache keys on it).
|
|
82
|
+
*/
|
|
83
|
+
interface Entries {
|
|
84
|
+
readonly own: WardicTransition;
|
|
85
|
+
readonly byKey: Readonly<Record<string, WardicTransition>>;
|
|
86
|
+
/** Whether any entry is a value's, not `default` or `layout`: else every value runs on one transition. */
|
|
87
|
+
readonly byValue: boolean;
|
|
88
|
+
readonly resolved: Map<string, WardicTransition>;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* A transition's entries (#301), or `undefined` for one with none: worked out once per transition
|
|
92
|
+
* object, so an element whose transitions have none pays a lookup per Retarget.
|
|
93
|
+
*/
|
|
94
|
+
export declare const entriesOf: (given: WardicTransition | undefined) => Entries | undefined;
|
|
95
|
+
/**
|
|
96
|
+
* The transition `key` runs on in `given` (#301): its entry, else `default`, else `given`'s own
|
|
97
|
+
* fields. `given` itself when it has no entry.
|
|
98
|
+
*/
|
|
99
|
+
export declare const transitionForKey: (given: WardicTransition | undefined, key: string) => WardicTransition | undefined;
|
|
100
|
+
/**
|
|
101
|
+
* `given` held back by `extra` more seconds (ADR-0007's stagger, #290's exit delays): its own `delay`,
|
|
102
|
+
* and each entry's (#301), so a key on its entry waits as the rest do. An `inherit` entry with no
|
|
103
|
+
* `delay` of its own takes the own fields' as they are.
|
|
104
|
+
*/
|
|
105
|
+
export declare const delayedBy: (given: WardicTransition | undefined, extra: number) => WardicTransition | undefined;
|
|
106
|
+
/**
|
|
107
|
+
* A transition as its legs run it: a spring or a tween, Motion's fields filled in (ADR-0051), with
|
|
108
|
+
* its reduced-motion opt-out.
|
|
109
|
+
*/
|
|
110
|
+
export type Run = (DefaultTransition.Transition | DefaultTransition.KeyframesTransition | InertiaRun) & {
|
|
111
|
+
readonly respectReducedMotion?: boolean;
|
|
112
|
+
readonly skipAnimations?: boolean;
|
|
113
|
+
};
|
|
114
|
+
/** An inertia as its legs run it (#435): core's options, `timeConstant` in seconds, with the transition's `velocity` and `delay`. */
|
|
115
|
+
export type InertiaRun = Machine.InertiaValuesOptions & {
|
|
116
|
+
readonly type: "inertia";
|
|
117
|
+
};
|
|
118
|
+
/** Each key's stops past its first two (#429): the Keyframes a tween runs through `keyframesValues`. */
|
|
119
|
+
export type StopsByKey = Readonly<Record<string, ReadonlyArray<number | string>>>;
|
|
120
|
+
/**
|
|
121
|
+
* Whether `key` has Keyframes of more than two stops among `stops`: never a Measured pair (#430). They
|
|
122
|
+
* run through their stops, switching where types mix, as Motion's measures two stops only (#460).
|
|
123
|
+
*/
|
|
124
|
+
export declare const hasManyStops: (stops: StopsByKey | undefined, key: string) => boolean;
|
|
125
|
+
/** Where a Retarget's keys start, and each one's stops, its Keyframes resolved ({@link keyframesFrom}). */
|
|
126
|
+
export interface KeyframesStart {
|
|
127
|
+
readonly from: Values.Values;
|
|
128
|
+
readonly stops: StopsByKey | undefined;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Where a target's keys start with its **Keyframes** resolved (#429, Motion's): a first `null` stop is
|
|
132
|
+
* where the key is (`from`), each later one the stop before (`fillWildcards`), and an explicit first
|
|
133
|
+
* stop is where it starts, jumped to. `stops` holds the keys with more than two: a key with two runs
|
|
134
|
+
* as a target does, from its first, so a spring takes it with the key's velocity, as Motion's.
|
|
135
|
+
*
|
|
136
|
+
* @param from each key's start
|
|
137
|
+
* @param to each key's target, its Keyframes' last stop
|
|
138
|
+
* @param keyframes each Keyframes key's stops; only the keys `to` has are read
|
|
139
|
+
*/
|
|
140
|
+
export declare const keyframesFrom: (from: Values.Values, to: Values.Values, keyframes: Readonly<Record<string, Style.Stops>>) => KeyframesStart;
|
|
141
|
+
/**
|
|
142
|
+
* Stops with each `null` filled (#429, Motion's `fillWildcards`): the first with `start`, a later one
|
|
143
|
+
* with the stop before. A sequence's function Segment fills its own from 0 (#433).
|
|
144
|
+
*/
|
|
145
|
+
export declare const filledStops: (stops: Style.Stops, start: number | string) => ReadonlyArray<number | string>;
|
|
146
|
+
/**
|
|
147
|
+
* The spring fields: one of them, with no `type`, makes a transition a spring, a value's or a layout
|
|
148
|
+
* animation's (ADR-0009 *Amendment (#171)*, ADR-0051); a time-based spring's `bounce` and
|
|
149
|
+
* `visualDuration` among them (#359), where a `duration` alone is a tween's.
|
|
150
|
+
*/
|
|
151
|
+
export declare const SPRING_FIELDS: readonly ["stiffness", "damping", "mass", "velocity", "restDelta", "restSpeed", "bounce", "visualDuration"];
|
|
152
|
+
/**
|
|
153
|
+
* A transition as its legs run it (ADR-0051, #357), or `undefined` when it isn't defined: none, or
|
|
154
|
+
* one with only orchestration, `delay` and the reduced-motion opt-out (Motion's
|
|
155
|
+
* `isTransitionDefined`). A defined one:
|
|
156
|
+
* - is a spring when it says so, or gives no `type` and a spring field ({@link SPRING_FIELDS});
|
|
157
|
+
* anything else is a tween, as a layout animation's is (ADR-0009 *Amendment (#171)*): `{ duration:
|
|
158
|
+
* 0.5 }` a 0.5 s tween, as Motion's, where `{ stiffness: 300 }` stays a spring;
|
|
159
|
+
* - takes Motion's fields for those it leaves out: a spring's 100 / 10 / 1, a tween's `easeOut`
|
|
160
|
+
* (a tween's 0.3 s is core's too). A spring set by time, a `duration`, `bounce` or
|
|
161
|
+
* `visualDuration` and no stiffness, damping or mass (#359), takes no physics: core solves them.
|
|
162
|
+
*
|
|
163
|
+
* Worked out once per transition object. A field set to `undefined` gives nothing.
|
|
164
|
+
*/
|
|
165
|
+
export declare const runOf: (given: WardicTransition | undefined) => Run | undefined;
|
|
166
|
+
/**
|
|
167
|
+
* A Retarget's keys with both of a Path's axes (#438): a Path couples `x` and `y`, so with either one
|
|
168
|
+
* retargeted, the other goes along it too, to its own target in `target`, though that hasn't changed
|
|
169
|
+
* and a Retarget otherwise keeps an unchanged key's Leg (#325). Without a Path, or neither axis, the
|
|
170
|
+
* keys as they are.
|
|
171
|
+
*/
|
|
172
|
+
export declare const withPathAxes: (fresh: Values.Values, target: Values.Values, transition: WardicTransition | undefined) => Values.Values;
|
|
173
|
+
export declare const legsOf: (from: Values.Values, to: Values.Values, given: WardicTransition | undefined, reducedMotion: boolean, skipped: boolean, positionalKeys: ReducedMotion.PositionalKeys["Service"], defaults: DefaultTransition.DefaultTransition["Service"], velocities: Velocities, follow?: Follows | undefined, stops?: StopsByKey | undefined, measured?: MeasuredPairs | undefined, current?: Values.Values | undefined, rests?: Values.Values | undefined) => ReadonlyArray<Leg>;
|
|
174
|
+
/** Each key's Measured pair (#430), by its key. */
|
|
175
|
+
export type MeasuredPairs = Readonly<Record<string, MeasuredPair.Requested>>;
|
|
176
|
+
/** What a leg's machine can be run through: the same Frames, stepped another way. */
|
|
177
|
+
export type MachineMap = <F extends Frame.Frame<unknown>>(machine: Machine.Machine<F>) => Machine.Machine<F>;
|
|
178
|
+
/**
|
|
179
|
+
* `leg` with its machine run through `f`: started partway ({@link startingAt}), or through an
|
|
180
|
+
* **Imperative animation**'s Playhead (#433, `Playback.drive`).
|
|
181
|
+
*/
|
|
182
|
+
export declare const mapMachine: (leg: Leg, f: MachineMap) => Leg;
|
|
183
|
+
/**
|
|
184
|
+
* `leg`, started `at()` seconds in (`Machine.startAt`): a Handoff's first legs, which pick up an
|
|
185
|
+
* Appear animation where its CSS has got (#48, ADR-0044 decision 6).
|
|
186
|
+
*/
|
|
187
|
+
export declare const startingAt: (leg: Leg, at: LazyArg<number>) => Leg;
|
|
188
|
+
export {};
|
|
189
|
+
//# sourceMappingURL=retarget-legs.d.ts.map
|