@wardic/solid 0.0.0-stage → 1.0.0-rc.1
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,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `WardicConfig` on the Solid 1 binding (#434, Motion's `MotionConfig`): settings for the Wardic
|
|
3
|
+
* elements below it. It provides a context and no runtime, so it nests anywhere under a
|
|
4
|
+
* `WardicProvider`.
|
|
5
|
+
*
|
|
6
|
+
* @module
|
|
7
|
+
*/
|
|
8
|
+
import { type JSX } from "solid-js";
|
|
9
|
+
import type * as ReducedMotion from "@wardic/core/ReducedMotion";
|
|
10
|
+
import type { WardicTransformPoint, WardicVariantTransition } from "./config.ts";
|
|
11
|
+
import { type WardicConfigValue } from "./wardic-config-value.ts";
|
|
12
|
+
/** `WardicConfig`'s props. */
|
|
13
|
+
export interface WardicConfigProps {
|
|
14
|
+
/**
|
|
15
|
+
* The **Config transition**: each Wardic element below runs on it when it gives no `transition` of
|
|
16
|
+
* its own, a Variant child in place of its parent's, as Motion's `MotionConfig` `transition`. It
|
|
17
|
+
* replaces an enclosing config's, or with `inherit: true` lays its own fields over it. Read when
|
|
18
|
+
* each animation starts.
|
|
19
|
+
*/
|
|
20
|
+
readonly transition?: WardicVariantTransition | undefined;
|
|
21
|
+
/**
|
|
22
|
+
* How the Wardic elements below honour the user's `prefers-reduced-motion`, as Motion's
|
|
23
|
+
* `MotionConfig` `reducedMotion`: `"user"` follows it, `"always"` reduces motion whatever it is,
|
|
24
|
+
* `"never"` animates whatever it is. It replaces an enclosing config's, and the `WardicProvider`'s
|
|
25
|
+
* for them; with none, theirs applies. Read when each animation starts.
|
|
26
|
+
*/
|
|
27
|
+
readonly reducedMotion?: ReducedMotion.Config | undefined;
|
|
28
|
+
/**
|
|
29
|
+
* Every animation of the Wardic elements below lands at its end on the next frame, as Motion's
|
|
30
|
+
* `MotionConfig` `skipAnimations`: its legs, exits, layout animations, a drag's release,
|
|
31
|
+
* `createAnimate` and `createSpring`, each still told. For end-to-end and visual-regression tests.
|
|
32
|
+
* An inner config's `false` animates its subtree again. Read when each animation starts.
|
|
33
|
+
*/
|
|
34
|
+
readonly skipAnimations?: boolean | undefined;
|
|
35
|
+
/**
|
|
36
|
+
* Which of the props given a Wardic element's tag below reach the element (Motion's
|
|
37
|
+
* `MotionConfig` `isValidProp`): one it returns `false` for is kept off it, for a prop a styling
|
|
38
|
+
* system reads that shouldn't render as an attribute. Asked of no prop starting with `on`, nor a
|
|
39
|
+
* wrapped component's, which get every prop, as Motion's do. It replaces an enclosing config's. Read as
|
|
40
|
+
* each element is made, for the props it has then.
|
|
41
|
+
*/
|
|
42
|
+
readonly isValidProp?: ((key: string) => boolean) | undefined;
|
|
43
|
+
/**
|
|
44
|
+
* Where the points a drag or a pan below uses are (Motion's `MotionConfig`
|
|
45
|
+
* `transformPagePoint`): handed each point in the viewport's coordinates, it gives the one the
|
|
46
|
+
* gesture uses. Read at each drag or pan start, and applied to its down, each move, a drag
|
|
47
|
+
* controls' start and its snap to the cursor, and to the boxes drag constraints are measured from;
|
|
48
|
+
* never to a layout animation's boxes, which Wardic already reads through their ancestors'
|
|
49
|
+
* transforms. `correctParentTransform(parent)` makes one for a zoomed or rotated parent, and
|
|
50
|
+
* `transformViewBoxPoint(svg)` one for an SVG's viewBox. It replaces an enclosing config's.
|
|
51
|
+
*/
|
|
52
|
+
readonly transformPagePoint?: WardicTransformPoint | undefined;
|
|
53
|
+
readonly children?: JSX.Element;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Settings for the Wardic elements below it (Motion's `MotionConfig`): their default
|
|
57
|
+
* `transition`, their `reducedMotion` and `skipAnimations`. Nest it anywhere under a
|
|
58
|
+
* `WardicProvider`; an inner one replaces an outer one's, unless its transition inherits it.
|
|
59
|
+
*
|
|
60
|
+
* ```tsx
|
|
61
|
+
* <WardicConfig transition={{ type: "spring", stiffness: 300, damping: 30 }}>
|
|
62
|
+
* <wardic.div animate={{ x: 100 }} />
|
|
63
|
+
* </WardicConfig>
|
|
64
|
+
* ```
|
|
65
|
+
*/
|
|
66
|
+
export declare function WardicConfig(props: WardicConfigProps): JSX.Element;
|
|
67
|
+
/** The nearest `WardicConfig`'s settings, or none. Internal. */
|
|
68
|
+
export declare const useWardicConfig: () => WardicConfigValue | undefined;
|
|
69
|
+
//# sourceMappingURL=wardic-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wardic-config.d.ts","sourceRoot":"","sources":["../../src/wardic-config.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAA6B,KAAK,GAAG,EAAc,MAAM,UAAU,CAAA;AAC1E,OAAO,KAAK,KAAK,aAAa,MAAM,4BAA4B,CAAA;AAChE,OAAO,KAAK,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAChF,OAAO,EAAsH,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAIrL,8BAA8B;AAC9B,MAAM,WAAW,iBAAiB;IAChC;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,uBAAuB,GAAG,SAAS,CAAA;IACzD;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC,MAAM,GAAG,SAAS,CAAA;IACzD;;;;;OAKG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC7C;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,SAAS,CAAA;IAC7D;;;;;;;;OAQG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,oBAAoB,GAAG,SAAS,CAAA;IAC9D,QAAQ,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;CAChC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,GAAG,CAAC,OAAO,CAKlE;AAED,gEAAgE;AAChE,eAAO,MAAM,eAAe,QAAO,iBAAiB,GAAG,SAA4C,CAAA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `WardicConfig` on the Solid 1 binding (#434, Motion's `MotionConfig`): settings for the Wardic
|
|
3
|
+
* elements below it. It provides a context and no runtime, so it nests anywhere under a
|
|
4
|
+
* `WardicProvider`.
|
|
5
|
+
*
|
|
6
|
+
* @module
|
|
7
|
+
*/
|
|
8
|
+
import { createContext, createMemo, useContext } from "solid-js";
|
|
9
|
+
import { configIsValidPropOf, configReducedMotionOf, configTransformPagePointOf, configSkipAnimationsOf, configTransitionOf } from "./wardic-config-value.js";
|
|
10
|
+
const WardicConfigContext = createContext(undefined);
|
|
11
|
+
/**
|
|
12
|
+
* Settings for the Wardic elements below it (Motion's `MotionConfig`): their default
|
|
13
|
+
* `transition`, their `reducedMotion` and `skipAnimations`. Nest it anywhere under a
|
|
14
|
+
* `WardicProvider`; an inner one replaces an outer one's, unless its transition inherits it.
|
|
15
|
+
*
|
|
16
|
+
* ```tsx
|
|
17
|
+
* <WardicConfig transition={{ type: "spring", stiffness: 300, damping: 30 }}>
|
|
18
|
+
* <wardic.div animate={{ x: 100 }} />
|
|
19
|
+
* </WardicConfig>
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
export function WardicConfig(props) {
|
|
23
|
+
const parent = useContext(WardicConfigContext);
|
|
24
|
+
// One object per change, so the elements below share it, and its caches (#66, #301) hit.
|
|
25
|
+
const transition = createMemo(() => configTransitionOf(props.transition, parent));
|
|
26
|
+
return <WardicConfigContext.Provider value={{ transition, reducedMotion: () => configReducedMotionOf(props.reducedMotion, parent), skipAnimations: () => configSkipAnimationsOf(props.skipAnimations, parent), isValidProp: () => configIsValidPropOf(props.isValidProp, parent), transformPagePoint: () => configTransformPagePointOf(props.transformPagePoint, parent) }}>{props.children}</WardicConfigContext.Provider>;
|
|
27
|
+
}
|
|
28
|
+
/** The nearest `WardicConfig`'s settings, or none. Internal. */
|
|
29
|
+
export const useWardicConfig = () => useContext(WardicConfigContext);
|
|
30
|
+
//# sourceMappingURL=wardic-config.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wardic-config.jsx","sourceRoot":"","sources":["../../src/wardic-config.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,aAAa,EAAE,UAAU,EAAY,UAAU,EAAE,MAAM,UAAU,CAAA;AAG1E,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,kBAAkB,EAA0B,MAAM,0BAA0B,CAAA;AAErL,MAAM,mBAAmB,GAAG,aAAa,CAAgC,SAAS,CAAC,CAAA;AA8CnF;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAAC,KAAwB;IACnD,MAAM,MAAM,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAA;IAC9C,yFAAyF;IACzF,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAA;IACjF,OAAO,CAAC,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,KAAK,CAAC,aAAa,EAAE,MAAM,CAAC,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,sBAAsB,CAAC,KAAK,CAAC,cAAc,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,kBAAkB,EAAE,GAAG,EAAE,CAAC,0BAA0B,CAAC,KAAK,CAAC,kBAAkB,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAA;AAC7Z,CAAC;AAED,gEAAgE;AAChE,MAAM,CAAC,MAAM,eAAe,GAAG,GAAkC,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAA"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `wardic.create(tag | Component)` HOC + the `wardic.*` motion-element proxy (ADR-0008,
|
|
3
|
+
* Tier 1 headline surface): the **Complete element**'s component forms, every Feature brought with it
|
|
4
|
+
* (#511, ADR-0067), as Motion's `motion` is. The forms' shared code, and how a component is made, is
|
|
5
|
+
* `element.tsx`'s; `w.tsx` holds the Slim element's forms.
|
|
6
|
+
*
|
|
7
|
+
* `wardic.<tag>` (e.g. `wardic.div`, `wardic.button`) is a cached shorthand for
|
|
8
|
+
* `wardic.create("<tag>")` — `wardic.div === wardic.div`.
|
|
9
|
+
*
|
|
10
|
+
* `wardic.create`'s options (#443, Motion's): `forwardMotionProps` hands the motion props on too, and
|
|
11
|
+
* `type` says what its element is for its server render. Every component made is marked
|
|
12
|
+
* (`isWardicComponent`), and a `WardicConfig`'s `isValidProp` keeps a tag's props off its element.
|
|
13
|
+
*/
|
|
14
|
+
import type { Accessor, JSX } from "solid-js";
|
|
15
|
+
import type { WardConfig } from "./config.ts";
|
|
16
|
+
import { type Create, type WardicComponent } from "./element.tsx";
|
|
17
|
+
export { MOTION_PROPS, motionToConfig, type WardicMotionProps } from "./motion-props.ts";
|
|
18
|
+
export { configOfMotion, type Create, type WardicComponent, type WardicProps, type WardicWrappable } from "./element.tsx";
|
|
19
|
+
/**
|
|
20
|
+
* `wardic.create(tag | Component)` — build a **Complete element** (#511): the
|
|
21
|
+
* forms' `create` (`element.tsx`'s `createWith`), bringing every Feature.
|
|
22
|
+
*
|
|
23
|
+
* @param arg an element tag string (e.g. `"div"`) OR a component forwarding `ref`.
|
|
24
|
+
* @returns a Solid component accepting the element's / component's props + motion props.
|
|
25
|
+
*/
|
|
26
|
+
export declare const create: Create;
|
|
27
|
+
/**
|
|
28
|
+
* The typed `wardic` proxy: called, it's the `use:wardic` directive; `wardic.create` is the
|
|
29
|
+
* HOC, and `wardic.<tag>` is a Complete element for that intrinsic element (cached per tag).
|
|
30
|
+
*/
|
|
31
|
+
export type Wardic = ((el: HTMLElement, value: Accessor<WardConfig>) => void) & {
|
|
32
|
+
readonly create: typeof create;
|
|
33
|
+
} & {
|
|
34
|
+
readonly [Tag in keyof JSX.IntrinsicElements]: WardicComponent<Tag>;
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* The Complete element: `wardic.div` and every other tag, with every Feature whatever its section
|
|
38
|
+
* gives, and `wardic.create(Component)`. Handy for trying something out, heavy for a page: under a
|
|
39
|
+
* `strict` provider it throws in development. Motion's `motion.div`.
|
|
40
|
+
*
|
|
41
|
+
* @example <wardic.div drag whileHover={{ scale: 1.05 }} />
|
|
42
|
+
* @see https://wardic.dev/reference/solid/elements/wardic
|
|
43
|
+
*/
|
|
44
|
+
export declare const wardic: Wardic;
|
|
45
|
+
//# sourceMappingURL=wardic.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wardic.d.ts","sourceRoot":"","sources":["../../src/wardic.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAG7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,KAAK,MAAM,EAAoB,KAAK,eAAe,EAAE,MAAM,eAAe,CAAA;AAEnF,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACxF,OAAO,EAAE,cAAc,EAAE,KAAK,MAAM,EAAE,KAAK,eAAe,EAAE,KAAK,WAAW,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAA;AAEzH;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,EAAE,MAA2B,CAAA;AAQhD;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,GAAG;IAC9E,QAAQ,CAAC,MAAM,EAAE,OAAO,MAAM,CAAA;CAC/B,GAAG;IACF,QAAQ,EAAE,GAAG,IAAI,MAAM,GAAG,CAAC,iBAAiB,GAAG,eAAe,CAAC,GAAG,CAAC;CACpE,CAAA;AAED;;;;;;;GAOG;AAIH,eAAO,MAAM,MAAM,EAAE,MAAoD,CAAA"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { runDirective } from "./directive.js";
|
|
2
|
+
import { COMPLETE } from "./complete.js";
|
|
3
|
+
import { createOf, formOf } from "./element.jsx";
|
|
4
|
+
export { MOTION_PROPS, motionToConfig } from "./motion-props.js";
|
|
5
|
+
export { configOfMotion } from "./element.jsx";
|
|
6
|
+
/**
|
|
7
|
+
* `wardic.create(tag | Component)` — build a **Complete element** (#511): the
|
|
8
|
+
* forms' `create` (`element.tsx`'s `createWith`), bringing every Feature.
|
|
9
|
+
*
|
|
10
|
+
* @param arg an element tag string (e.g. `"div"`) OR a component forwarding `ref`.
|
|
11
|
+
* @returns a Solid component accepting the element's / component's props + motion props.
|
|
12
|
+
*/
|
|
13
|
+
export const create = createOf(COMPLETE);
|
|
14
|
+
/**
|
|
15
|
+
* The `use:wardic` directive: drive `el` through Wardic's motion spine, a Complete element. An arrow
|
|
16
|
+
* function, so the `wardic` Proxy over it has no non-configurable `prototype` to keep.
|
|
17
|
+
*/
|
|
18
|
+
const wardicDirective = (el, value) => runDirective(el, value, COMPLETE);
|
|
19
|
+
/**
|
|
20
|
+
* The Complete element: `wardic.div` and every other tag, with every Feature whatever its section
|
|
21
|
+
* gives, and `wardic.create(Component)`. Handy for trying something out, heavy for a page: under a
|
|
22
|
+
* `strict` provider it throws in development. Motion's `motion.div`.
|
|
23
|
+
*
|
|
24
|
+
* @example <wardic.div drag whileHover={{ scale: 1.05 }} />
|
|
25
|
+
* @see https://wardic.dev/reference/solid/elements/wardic
|
|
26
|
+
*/
|
|
27
|
+
// The motion-element proxy and the `use:wardic` directive (ADR-0008 Tier 1, ADR-0042): every way to
|
|
28
|
+
// make a Complete Wardic element but createWard's spread. `wardic(el, accessor)` is the directive;
|
|
29
|
+
// `wardic.<tag>` is `create(tag)`, cached so `wardic.div === wardic.div`; any other key is undefined.
|
|
30
|
+
export const wardic = formOf(wardicDirective, create, {});
|
|
31
|
+
//# sourceMappingURL=wardic.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wardic.jsx","sourceRoot":"","sources":["../../src/wardic.tsx"],"names":[],"mappings":"AAcA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,OAAO,EAAe,QAAQ,EAAE,MAAM,EAAwB,MAAM,eAAe,CAAA;AAEnF,OAAO,EAAE,YAAY,EAAE,cAAc,EAA0B,MAAM,mBAAmB,CAAA;AACxF,OAAO,EAAE,cAAc,EAA6E,MAAM,eAAe,CAAA;AAEzH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,MAAM,GAAW,QAAQ,CAAC,QAAQ,CAAC,CAAA;AAEhD;;;GAGG;AACH,MAAM,eAAe,GAAG,CAAC,EAAe,EAAE,KAA2B,EAAQ,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;AAYjH;;;;;;;GAOG;AACH,oGAAoG;AACpG,mGAAmG;AACnG,sGAAsG;AACtG,MAAM,CAAC,MAAM,MAAM,GAAW,MAAM,CAAS,eAAe,EAAE,MAAM,EAAE,EAAE,CAAC,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,100 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wardic/solid",
|
|
3
|
-
"version": "
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
|
|
3
|
+
"version": "1.0.0-rc.1",
|
|
4
|
+
"description": "Motion for React's API on Solid 1 and Solid 2: Wardic's elements, gestures, layout and presence animations.",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"animation",
|
|
7
|
+
"motion",
|
|
8
|
+
"solid",
|
|
9
|
+
"solidjs",
|
|
10
|
+
"framer-motion",
|
|
11
|
+
"layout-animation",
|
|
12
|
+
"gestures"
|
|
13
|
+
],
|
|
14
|
+
"homepage": "https://wardic.dev",
|
|
15
|
+
"bugs": "https://github.com/wardiclabs/wardic/issues",
|
|
16
|
+
"repository": {
|
|
17
|
+
"type": "git",
|
|
18
|
+
"url": "git+https://github.com/wardiclabs/wardic.git",
|
|
19
|
+
"directory": "packages/solid"
|
|
20
|
+
},
|
|
21
|
+
"license": "MIT",
|
|
22
|
+
"author": {
|
|
23
|
+
"name": "The Wardic contributors",
|
|
24
|
+
"email": "hello@wardic.dev",
|
|
25
|
+
"url": "https://wardic.dev"
|
|
26
|
+
},
|
|
27
|
+
"files": [
|
|
28
|
+
"dist/solid",
|
|
29
|
+
"dist/browser",
|
|
30
|
+
"dist/server",
|
|
31
|
+
"src",
|
|
32
|
+
"README.md",
|
|
33
|
+
"LICENSE",
|
|
34
|
+
"THIRD_PARTY_NOTICES.md"
|
|
35
|
+
],
|
|
36
|
+
"type": "module",
|
|
37
|
+
"sideEffects": false,
|
|
38
|
+
"publishConfig": {
|
|
39
|
+
"access": "public"
|
|
40
|
+
},
|
|
41
|
+
"exports": {
|
|
42
|
+
"./package.json": "./package.json",
|
|
43
|
+
".": {
|
|
44
|
+
"@wardic/source": "./src/index.ts",
|
|
45
|
+
"types": "./dist/solid/index.d.ts",
|
|
46
|
+
"solid": "./dist/solid/index.js",
|
|
47
|
+
"browser": "./dist/browser/index.js",
|
|
48
|
+
"worker": "./dist/server/index.js",
|
|
49
|
+
"deno": "./dist/server/index.js",
|
|
50
|
+
"node": "./dist/server/index.js",
|
|
51
|
+
"default": "./dist/browser/index.js"
|
|
52
|
+
},
|
|
53
|
+
"./unstable/v2": {
|
|
54
|
+
"@wardic/source": "./src/unstable/v2/index.ts",
|
|
55
|
+
"types": "./dist/solid/unstable/v2/index.d.ts",
|
|
56
|
+
"solid": "./dist/solid/unstable/v2/index.js",
|
|
57
|
+
"browser": "./dist/browser/unstable/v2/index.js",
|
|
58
|
+
"worker": "./dist/server/unstable/v2/index.js",
|
|
59
|
+
"deno": "./dist/server/unstable/v2/index.js",
|
|
60
|
+
"node": "./dist/server/unstable/v2/index.js",
|
|
61
|
+
"default": "./dist/browser/unstable/v2/index.js"
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
"scripts": {
|
|
65
|
+
"build": "../../node_modules/typescript-7/bin/tsc --build",
|
|
66
|
+
"typecheck": "../../node_modules/typescript-7/bin/tsc --build",
|
|
67
|
+
"typecheck:tests": "../../node_modules/typescript-7/bin/tsc -p tsconfig.test.json && ../../node_modules/typescript-7/bin/tsc -p tsconfig.v2.json"
|
|
68
|
+
},
|
|
69
|
+
"dependencies": {
|
|
70
|
+
"@solid-primitives/refs": "^1.1.3",
|
|
71
|
+
"@wardic/core": "1.0.0-rc.1",
|
|
72
|
+
"@wardic/dom": "1.0.0-rc.1",
|
|
73
|
+
"csstype": "^3.1.0"
|
|
74
|
+
},
|
|
75
|
+
"peerDependencies": {
|
|
76
|
+
"@solidjs/web": "^2.0.0-rc.20",
|
|
77
|
+
"effect": "^4.1.1",
|
|
78
|
+
"solid-js": "^1.9.13 || ^2.0.0-rc.20"
|
|
79
|
+
},
|
|
80
|
+
"peerDependenciesMeta": {
|
|
81
|
+
"@solidjs/web": {
|
|
82
|
+
"optional": true
|
|
83
|
+
}
|
|
84
|
+
},
|
|
85
|
+
"devDependencies": {
|
|
86
|
+
"@babel/core": "7.29.7",
|
|
87
|
+
"@babel/preset-typescript": "7",
|
|
88
|
+
"@solidjs/babel-plugin": "2.0.0-rc.20",
|
|
89
|
+
"@solidjs/diagnostics": "2.0.0-rc.20",
|
|
90
|
+
"@solidjs/router": "1.0.1",
|
|
91
|
+
"@solidjs/router-2": "npm:@solidjs/router@2.0.0-next.43",
|
|
92
|
+
"@solidjs/web": "2.0.0-rc.20",
|
|
93
|
+
"@types/babel__core": "^7.20.5",
|
|
94
|
+
"@wardic/test": "1.0.0-rc.1",
|
|
95
|
+
"babel-preset-solid": "1.9.12",
|
|
96
|
+
"effect": "4.1.1",
|
|
97
|
+
"solid-js": "^1.9.18",
|
|
98
|
+
"solid-js-2": "npm:solid-js@2.0.0-rc.20"
|
|
99
|
+
}
|
|
100
|
+
}
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* **Animation controls** (#433's PR 3, CONTEXT.md; Motion's `useAnimationControls`), Solid-free: one
|
|
3
|
+
* object made outside any component and given as `animate={controls}` to any number of Wardic
|
|
4
|
+
* elements, which follow its calls.
|
|
5
|
+
*
|
|
6
|
+
* - **`start(definition, transitionOverride)`** sets each element's `animate` entry (a **Controls
|
|
7
|
+
* change**), so it Retargets, staggers its Variant children and lands as a change of the prop would.
|
|
8
|
+
* It resolves once each element and the Variant children it hands its names to have landed.
|
|
9
|
+
* - The override is the transition of that change: it beats the definition's own on the element and
|
|
10
|
+
* on each Variant child, and it is their orchestration (stagger, `when`), as Motion's
|
|
11
|
+
* `transitionOverride` is.
|
|
12
|
+
* - Their next Retarget, a gesture's, runs on their own transitions again.
|
|
13
|
+
* - **`set(definition)`** is an **Instant change**: the elements and their Variant children
|
|
14
|
+
* snap there, as Motion's `setValues` sets them.
|
|
15
|
+
* - **`stop()`** ends each element's running legs where they are.
|
|
16
|
+
*
|
|
17
|
+
* A function definition is called once per element, with its `custom`, values and velocities, as
|
|
18
|
+
* Motion's `controls.start((i) => …)`. An element hears the controls from its mount to its unmount.
|
|
19
|
+
*
|
|
20
|
+
* @module
|
|
21
|
+
*/
|
|
22
|
+
import * as Arr from "effect/Array"
|
|
23
|
+
import * as Bool from "effect/Boolean"
|
|
24
|
+
import * as Predicate from "effect/Predicate"
|
|
25
|
+
import * as UndefinedOr from "effect/UndefinedOr"
|
|
26
|
+
import type { WardConfig, WardicTransition, WardicVariant, WardicVariantLabels, WardicVariantResolver } from "./config.ts"
|
|
27
|
+
|
|
28
|
+
/** What controls start or set an element to: a target, a variant name or a list of them, or a function of each element's `custom`. Motion's `AnimationDefinition`. */
|
|
29
|
+
export type WardicControlsDefinition = WardicVariant | WardicVariantLabels | WardicVariantResolver
|
|
30
|
+
|
|
31
|
+
/** The mark that tells controls from a target. */
|
|
32
|
+
const CONTROLS: unique symbol = Symbol("wardic.animationControls")
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* `createAnimationControls()`'s controls: give them as `animate={controls}`, and every element given
|
|
36
|
+
* them follows `start`, `set` and `stop`. Motion's `LegacyAnimationControls`.
|
|
37
|
+
*/
|
|
38
|
+
// #433.
|
|
39
|
+
export interface WardicAnimationControls {
|
|
40
|
+
readonly [CONTROLS]: true
|
|
41
|
+
/**
|
|
42
|
+
* Animates every element given these controls to `definition`, as a change of its `animate` would,
|
|
43
|
+
* its variant children following. `transitionOverride`, when given, is the transition of this change,
|
|
44
|
+
* over the definition's own, and its stagger. Resolves once each element and its children have landed.
|
|
45
|
+
*/
|
|
46
|
+
readonly start: (definition: WardicControlsDefinition, transitionOverride?: WardicTransition) => Promise<void>
|
|
47
|
+
/** Sets every element given these controls, and its variant children, at `definition` at once. */
|
|
48
|
+
readonly set: (definition: WardicControlsDefinition) => void
|
|
49
|
+
/** Ends every element's running animation where it is. */
|
|
50
|
+
readonly stop: () => void
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* A **Controls change** (#433): what one `start` or `set` set one element's `animate` entry to, the
|
|
55
|
+
* transition it runs on, and the landings it waits for. The element and each Variant child it reaches
|
|
56
|
+
* join it at the Retarget it makes them run, and leave at that one's landing (or the next's).
|
|
57
|
+
*/
|
|
58
|
+
export interface ControlsChange {
|
|
59
|
+
/** Its place among every change: a trigger key part, so a change is a trigger even to the same name. */
|
|
60
|
+
readonly serial: number
|
|
61
|
+
/** The element's `animate` entry: a target or a name, a resolver already called. */
|
|
62
|
+
readonly definition: WardicVariant | WardicVariantLabels
|
|
63
|
+
/** The transition of the change (start's override, set's instant one), or none: the element's own. */
|
|
64
|
+
readonly override: WardicTransition | undefined
|
|
65
|
+
/** Elements in it that haven't landed. */
|
|
66
|
+
pending: number
|
|
67
|
+
/** Whether every element it reaches has had its chance to join: its binding's flush has run. */
|
|
68
|
+
armed: boolean
|
|
69
|
+
/** Told once it has landed. */
|
|
70
|
+
readonly landed: () => void
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/** What a controlled element does at a change, as its binding wires it: its entry set, and the change's landing promised. */
|
|
74
|
+
export interface Controlled {
|
|
75
|
+
readonly change: (definition: WardicControlsDefinition, override: WardicTransition | undefined) => Promise<void>
|
|
76
|
+
readonly stop: () => void
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/** The elements each controls reach, by the controls. */
|
|
80
|
+
// Module state (#460, Q7): each controls object's subscribers, held weakly by it.
|
|
81
|
+
const subscribers = new WeakMap<WardicAnimationControls, Set<Controlled>>()
|
|
82
|
+
|
|
83
|
+
/** `set`'s transition (#433, Motion's `setValues`): none to speak of, and no orchestration. */
|
|
84
|
+
export const INSTANT: WardicTransition = { type: "tween", duration: 0 }
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Makes animation controls, which animate elements from code by their variants or targets: give them
|
|
88
|
+
* to each element as `animate={controls}`, on a `w.*` element, in a ward's config or on a
|
|
89
|
+
* `Reorder.Item`, then `start`, `set` or `stop` them. Needs no owner. Motion's `useAnimationControls`.
|
|
90
|
+
*
|
|
91
|
+
* @example
|
|
92
|
+
* const controls = createAnimationControls()
|
|
93
|
+
* <w.ul initial="hidden" animate={controls} variants={list}>…</w.ul>
|
|
94
|
+
* await controls.start("visible")
|
|
95
|
+
* @see https://wardic.dev/reference/solid/animation/create-animation-controls
|
|
96
|
+
*/
|
|
97
|
+
// #433's PR 3: each `start` or `set` is a Controls change of each element's `animate` entry.
|
|
98
|
+
export const createAnimationControls = (): WardicAnimationControls => {
|
|
99
|
+
const reached = new Set<Controlled>()
|
|
100
|
+
const controls: WardicAnimationControls = {
|
|
101
|
+
[CONTROLS]: true,
|
|
102
|
+
start: (definition, transitionOverride) =>
|
|
103
|
+
Promise.all(Arr.map(Arr.fromIterable(reached), (element) => element.change(definition, transitionOverride))).then(() => undefined),
|
|
104
|
+
set: (definition) =>
|
|
105
|
+
reached.forEach((element) => {
|
|
106
|
+
void element.change(definition, INSTANT)
|
|
107
|
+
}),
|
|
108
|
+
stop: () => reached.forEach((element) => element.stop()),
|
|
109
|
+
}
|
|
110
|
+
subscribers.set(controls, reached)
|
|
111
|
+
return controls
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
/** Whether `u` is **Animation controls** (Motion's `isAnimationControls`). */
|
|
115
|
+
export const isAnimationControls = (u: unknown): u is WardicAnimationControls => Predicate.hasProperty(u, CONTROLS)
|
|
116
|
+
|
|
117
|
+
/** Reach `element` from `controls`, until the returned function: its mount to its unmount. */
|
|
118
|
+
export const subscribe = (controls: WardicAnimationControls, element: Controlled): (() => void) => {
|
|
119
|
+
const reached = subscribers.get(controls)
|
|
120
|
+
if (Predicate.isUndefined(reached)) return () => undefined
|
|
121
|
+
reached.add(element)
|
|
122
|
+
return () => {
|
|
123
|
+
reached.delete(element)
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
/** The changes made, counted. */
|
|
128
|
+
// Module state (#460, Q7): an id counter, only compared for order and identity.
|
|
129
|
+
let serials = 0
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* A change of one element (#433): its entry, `definition` called with the element's `custom`, values
|
|
133
|
+
* and velocities when it's a resolver (once, as Motion's), on `override`; and its landing, promised. It
|
|
134
|
+
* lands once every element it reaches has joined, at the end of the binding's flush (`armed`), and
|
|
135
|
+
* left. One that reaches no element lands then.
|
|
136
|
+
*/
|
|
137
|
+
export const changeOf = (
|
|
138
|
+
definition: WardicControlsDefinition,
|
|
139
|
+
override: WardicTransition | undefined,
|
|
140
|
+
custom: unknown,
|
|
141
|
+
values: Readonly<Record<string, number | string>>,
|
|
142
|
+
velocities: Readonly<Record<string, number>>,
|
|
143
|
+
): { readonly change: ControlsChange; readonly landing: Promise<void> } => {
|
|
144
|
+
let resolve!: () => void
|
|
145
|
+
const landing = new Promise<void>((done) => {
|
|
146
|
+
resolve = done
|
|
147
|
+
})
|
|
148
|
+
const entry = Bool.match(Predicate.isFunction(definition), {
|
|
149
|
+
onTrue: () => (definition as WardicVariantResolver)(custom, { ...values }, { ...velocities }),
|
|
150
|
+
onFalse: () => definition as WardicVariant | WardicVariantLabels,
|
|
151
|
+
})
|
|
152
|
+
const change: ControlsChange = { serial: ++serials, definition: entry, override, pending: 0, armed: false, landed: resolve }
|
|
153
|
+
return { change, landing }
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
/** An element joins `change`: it runs a Retarget for it. */
|
|
157
|
+
export const join = (change: ControlsChange): void => {
|
|
158
|
+
change.pending++
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
/** An element in `change` landed, or left it (a later change, its unmount): it lands once none is left and it's armed. */
|
|
162
|
+
export const leave = (change: ControlsChange): void => {
|
|
163
|
+
change.pending--
|
|
164
|
+
if (change.armed && change.pending <= 0) change.landed()
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
/** `change` armed, its binding's flush having run: it lands now if no element joined, or all have left. */
|
|
168
|
+
export const arm = (change: ControlsChange): void => {
|
|
169
|
+
change.armed = true
|
|
170
|
+
if (change.pending <= 0) change.landed()
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
/**
|
|
174
|
+
* An element's config with **Animation controls** for its `animate` (#433), as everything but its
|
|
175
|
+
* controls reads it: `change`'s entry (none before the first), and marked controlled, so it names its
|
|
176
|
+
* own variants whatever the entry is (Motion's `isControllingVariants`).
|
|
177
|
+
*/
|
|
178
|
+
export const controlledConfigOf = <C extends Pick<WardConfig, "animate">>(config: C, change: ControlsChange | undefined): C =>
|
|
179
|
+
({ ...config, animate: UndefinedOr.map(change, (c) => c.definition), controlled: true }) as C
|
|
180
|
+
|
|
181
|
+
/** A config as a server reads it (#433): one given **Animation controls** has no entry yet, and is controlled. */
|
|
182
|
+
export const uncontrolledOf = <C extends Pick<WardConfig, "animate">>(config: C): C =>
|
|
183
|
+
Bool.match(isAnimationControls(config.animate), { onTrue: () => controlledConfigOf(config, undefined), onFalse: () => config })
|
|
184
|
+
|
|
185
|
+
/** What a controlled element reads at a change: its `custom`, and its values and velocities now (its Snapshot). */
|
|
186
|
+
export interface ControlledState {
|
|
187
|
+
readonly custom: () => unknown
|
|
188
|
+
readonly snapshot: { readonly values: Readonly<Record<string, number | string>>; readonly velocities: Readonly<Record<string, number>> }
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
/**
|
|
192
|
+
* A mounted element as its controls reach it (#433): a change sets its entry through `setChange`, its
|
|
193
|
+
* binding's signal, and arms once the binding's flush has run (a microtask after, Solid 2's included),
|
|
194
|
+
* every element it reaches joined by then; `stop` ends its legs.
|
|
195
|
+
*/
|
|
196
|
+
export const controlledElement = (setChange: (change: ControlsChange) => void, state: ControlledState, stop: () => void): Controlled => ({
|
|
197
|
+
change: (definition, override) => {
|
|
198
|
+
const made = changeOf(definition, override, state.custom(), state.snapshot.values, state.snapshot.velocities)
|
|
199
|
+
setChange(made.change)
|
|
200
|
+
queueMicrotask(() => arm(made.change))
|
|
201
|
+
return made.landing
|
|
202
|
+
},
|
|
203
|
+
stop,
|
|
204
|
+
})
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `createAnimationFrame`'s run, Solid-free, on both bindings (#443, Motion's `useAnimationFrame`):
|
|
3
|
+
* core's `LiveValue.eachFrame`, the app's callback in it reported as every per-frame callback is.
|
|
4
|
+
*
|
|
5
|
+
* @module
|
|
6
|
+
*/
|
|
7
|
+
import * as LiveValue from "@wardic/core/LiveValue"
|
|
8
|
+
import * as Report from "@wardic/dom/Report"
|
|
9
|
+
import * as Cause from "effect/Cause"
|
|
10
|
+
import type * as Effect from "effect/Effect"
|
|
11
|
+
import type * as Scope from "effect/Scope"
|
|
12
|
+
import type { WardicRuntime, WardicServices } from "./runtime.ts"
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* `callback` told each frame's time and delta on `runtime`'s Frame loop, for as long as the Scope is
|
|
16
|
+
* open. A throw from it is logged at the first of a run of throws, and the next frame calls it as ever
|
|
17
|
+
* (ADR-0030, *Amendment (#257 item 4)*, as `onUpdate`): a frame that returns ends the run, so the next
|
|
18
|
+
* throw logs again.
|
|
19
|
+
*/
|
|
20
|
+
export const eachFrameOf = (runtime: WardicRuntime, callback: (time: number, delta: number) => void): Effect.Effect<void, never, WardicServices | Scope.Scope> => {
|
|
21
|
+
let failing = false
|
|
22
|
+
return LiveValue.eachFrame((time, delta) => {
|
|
23
|
+
try {
|
|
24
|
+
callback(time, delta)
|
|
25
|
+
failing = false
|
|
26
|
+
} catch (defect) {
|
|
27
|
+
if (failing) return
|
|
28
|
+
failing = true
|
|
29
|
+
runtime.runFork(Report.failure("wardic.createAnimationFrame: the callback failed", Cause.die(defect)))
|
|
30
|
+
}
|
|
31
|
+
})
|
|
32
|
+
}
|