@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
package/src/stagger.ts
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `stagger()` (#436, Motion's): a child's delay from its index and the count, for a transition's
|
|
3
|
+
* `delayChildren` or `createAnimate`'s `delay`. Solid-free, on both bindings.
|
|
4
|
+
*
|
|
5
|
+
* @module
|
|
6
|
+
*/
|
|
7
|
+
import type * as Easing from "@wardic/core/Easing"
|
|
8
|
+
import * as Stagger from "@wardic/core/Stagger"
|
|
9
|
+
import type { WardicStagger } from "./config.ts"
|
|
10
|
+
|
|
11
|
+
/** `stagger()`'s options (Motion's `StaggerOptions`). */
|
|
12
|
+
export interface WardicStaggerOptions {
|
|
13
|
+
/** Seconds before the first child's delay. Default 0. */
|
|
14
|
+
readonly startDelay?: number
|
|
15
|
+
/** The child the delay grows from: `"first"`, `"last"`, `"center"` or an index. Default the first. */
|
|
16
|
+
readonly from?: Stagger.Origin
|
|
17
|
+
/** How the delay grows across the children, eased across `duration × count`, as Motion's. Default linear. */
|
|
18
|
+
readonly ease?: Easing.Definition
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Delays each child by its place: each waits `startDelay`, plus `duration` for each step from `from`,
|
|
23
|
+
* eased by `ease`. Give it as a transition's `delayChildren`, where it decides each variant child's
|
|
24
|
+
* whole delay, or as `createAnimate`'s `delay`. Motion's `stagger()`.
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* <w.ul animate="shown" variants={list} transition={{ delayChildren: stagger(0.05, { from: "center" }) }}>…</w.ul>
|
|
28
|
+
* @see https://wardic.dev/reference/solid/transitions/stagger
|
|
29
|
+
*/
|
|
30
|
+
// #436.
|
|
31
|
+
export const stagger = (duration = 0.1, options: WardicStaggerOptions = {}): WardicStagger => Stagger.make(duration, options)
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reactive bridges on Solid 2 (#209, ADR-0006), as the Solid 1 binding's: `streamToSignal` runs a
|
|
3
|
+
* core `Stream` into a signal for as long as its owner lives, and `fromAtom` reads an Effect `Atom`
|
|
4
|
+
* through the provider's registry. Their signals are written from outside Solid (a fiber, the
|
|
5
|
+
* registry), so a change shows at Solid 2's next flush. `fromAtom`'s accessor carries its Atom
|
|
6
|
+
* (#209 PR 3's Q2), so a `style` given it follows the Atom itself, in the frame the Atom is set.
|
|
7
|
+
*
|
|
8
|
+
* @module
|
|
9
|
+
*/
|
|
10
|
+
import * as Effect from "effect/Effect"
|
|
11
|
+
import * as Predicate from "effect/Predicate"
|
|
12
|
+
import { AtomRegistry, type Atom } from "effect/reactivity"
|
|
13
|
+
import * as Stream from "effect/Stream"
|
|
14
|
+
import { isServer } from "@solidjs/web"
|
|
15
|
+
import { type Accessor, createSignal, isHydrating, onCleanup } from "solid-js"
|
|
16
|
+
import { carry } from "../../live-style.ts"
|
|
17
|
+
import type { WardicServices } from "../../runtime.ts"
|
|
18
|
+
import { runScoped, useWardicRuntime } from "./provider.tsx"
|
|
19
|
+
import { onSettledClientOnly } from "./solid-reactivity.ts"
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* A core `Stream` as an accessor: `initial` until its first value, then its latest, the stream run on
|
|
23
|
+
* the provider's runtime until the owner is cleaned up. Call it where you'd make a signal.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* const point = streamToSignal(pointerMoves, { x: 0, y: 0 })
|
|
27
|
+
* @see https://wardic.dev/reference/solid/advanced/bridges
|
|
28
|
+
*/
|
|
29
|
+
// `Stream.runForEach` through `runScoped`; `set(() => v)`, so an object or function value is stored as
|
|
30
|
+
// it is. The stream's `R` is the provider runtime's services.
|
|
31
|
+
export const streamToSignal = <A>(stream: Stream.Stream<A, never, WardicServices>, initial: A): Accessor<A> => {
|
|
32
|
+
const runtime = useWardicRuntime()
|
|
33
|
+
const [value, setValue] = createSignal<A>(initial as Exclude<A, Function>)
|
|
34
|
+
runScoped(runtime, Stream.runForEach(stream, (next) => Effect.sync(() => setValue(() => next))))
|
|
35
|
+
return value
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* `atom` as an accessor carrying it: a signal set from `registry` at each change, unsubscribed when
|
|
40
|
+
* the owner is disposed. Every Atom the binding hands to Solid goes through it (a ward's `read`, the
|
|
41
|
+
* Live-value helpers, `fromAtom`). Call it where you'd make a signal.
|
|
42
|
+
*/
|
|
43
|
+
export const followAtom = <A>(registry: AtomRegistry.AtomRegistry, atom: Atom.Atom<A>): Accessor<A> => {
|
|
44
|
+
const [value, setValue] = createSignal<A>(registry.get(atom) as Exclude<A, Function>)
|
|
45
|
+
onCleanup(registry.subscribe(atom, (next) => setValue(() => next as Exclude<A, Function>)))
|
|
46
|
+
// eslint-disable-next-line solid/reactivity -- the accessor itself is returned, for its caller to read where it tracks
|
|
47
|
+
return carry(value, atom)
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* An Effect `Atom` as an accessor: read through the provider's `AtomRegistry`, and followed until the
|
|
52
|
+
* owner is cleaned up. For a server render, give `serverValue`: the server renders it, and a hydrating
|
|
53
|
+
* page keeps it until it has settled, then follows the atom. It carries the Atom, so a `style` given it
|
|
54
|
+
* follows the Atom itself.
|
|
55
|
+
*
|
|
56
|
+
* @example
|
|
57
|
+
* const visible = fromAtom(probe.pageVisible, { serverValue: true })
|
|
58
|
+
* @see https://wardic.dev/reference/solid/advanced/bridges
|
|
59
|
+
*/
|
|
60
|
+
// Solid's `from`, seeded with the atom's value; `set(() => v)`, so an object or function value is stored
|
|
61
|
+
// as it is. A server builds no registry (ADR-0021); the Hydration hold is decision 8.
|
|
62
|
+
export const fromAtom = <A>(atom: Atom.Atom<A>, options?: { readonly serverValue?: A }): Accessor<A> => {
|
|
63
|
+
const runtime = useWardicRuntime()
|
|
64
|
+
const held = Predicate.isNotUndefined(options) && "serverValue" in options
|
|
65
|
+
if (held && isServer) {
|
|
66
|
+
const serverValue = options.serverValue as A
|
|
67
|
+
return () => serverValue
|
|
68
|
+
}
|
|
69
|
+
if (held && isHydrating()) {
|
|
70
|
+
const [value, setValue] = createSignal<A>(options.serverValue as Exclude<A, Function>)
|
|
71
|
+
onSettledClientOnly(() => {
|
|
72
|
+
const registry = runtime.runSync(AtomRegistry.AtomRegistry)
|
|
73
|
+
setValue(() => registry.get(atom))
|
|
74
|
+
return registry.subscribe(atom, (next) => setValue(() => next))
|
|
75
|
+
})
|
|
76
|
+
return value
|
|
77
|
+
}
|
|
78
|
+
return followAtom(runtime.runSync(AtomRegistry.AtomRegistry), atom)
|
|
79
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The **Complete element**'s own code on Solid 2 (#511, ADR-0067; #548): what tells a ward it brings
|
|
3
|
+
* every Feature, and `ward()`, the Complete ward. In a module of its own, apart from the ward every
|
|
4
|
+
* element shares, so an app whose pages use the Slim element (`w.*`) ships no Feature from here, even
|
|
5
|
+
* when one of them uses a Complete element (ADR-0067, *Amendment (#548)*).
|
|
6
|
+
*
|
|
7
|
+
* @module
|
|
8
|
+
*/
|
|
9
|
+
import * as Predicate from "effect/Predicate"
|
|
10
|
+
import { ALL } from "../../features/all.ts"
|
|
11
|
+
import { internalsOf, type Ward, type WardChecked, type WardConfig, type WardInternals, wardWith, type WardOptions } from "./ward.tsx"
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* What a **Complete element** tells its ward (#511, ADR-0067): it brings every Feature. Its forms'
|
|
15
|
+
* (`ward()`, `wardic.*`, `wardic.create`) alone: a Slim element's never name it.
|
|
16
|
+
*/
|
|
17
|
+
export const COMPLETE: WardInternals = { brings: ALL, complete: true }
|
|
18
|
+
|
|
19
|
+
/** No config: a ward that only listens (#398), `ward()`. */
|
|
20
|
+
const NO_CONFIG: WardConfig = {}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Makes a ward: Wardic's motion for an element of your own. Spread it on the element, `{...card}`, or
|
|
24
|
+
* give it to a Wardic element's `wardRef`. Each key of `config` is a value or an accessor of it.
|
|
25
|
+
* `card.read(key)` reads what the element shows, and `card.next("tap")`, `card.when("tap")` hear its
|
|
26
|
+
* events. With no config, it only listens. This one has every Feature; `w.ward` has its section's.
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* const card = ward({ initial: { opacity: 0 }, animate: { opacity: 1 } })
|
|
30
|
+
* <article {...card} />
|
|
31
|
+
* @see https://wardic.dev/reference/solid/elements/ward
|
|
32
|
+
*/
|
|
33
|
+
// `config` is read per key (#259): a value, an accessor, a getter, a store's property or a component's
|
|
34
|
+
// prop (`ward(props)`). Made where you'd make a signal, under a WardicProvider. Its config's type is
|
|
35
|
+
// kept, so `read` and `atom` complete the keys it animates. With no config (#398) it listens: spread on
|
|
36
|
+
// a plain element, its gestures' events with no motion; given to `wardRef`, the element's props set it.
|
|
37
|
+
// A Complete element (#511).
|
|
38
|
+
export function ward<const C extends WardConfig>(config: WardChecked<C>, options?: WardOptions): Ward<C>
|
|
39
|
+
export function ward(): Ward<{}>
|
|
40
|
+
export function ward(config: undefined, options: WardOptions): Ward<{}>
|
|
41
|
+
// Overloads, not an optional `config` (#398): a default for `C` left an accessor's literal untyped
|
|
42
|
+
// (`transition: () => ({ type: "tween" })` read `type` as a string), as `C` fell back to it.
|
|
43
|
+
export function ward(config?: WardConfig, options?: WardOptions): Ward {
|
|
44
|
+
// Plain checks: every ward is made through here, and a match's objects would cost each (#349).
|
|
45
|
+
if (Predicate.isUndefined(config)) return wardWith(NO_CONFIG, internalsOf(options, COMPLETE))
|
|
46
|
+
return wardWith(config, internalsOf(options, COMPLETE))
|
|
47
|
+
}
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A config read per key (#259, ADR-0045 *Amendment (#259)*): what the Solid 2 binding's `ward()`,
|
|
3
|
+
* `reorderGroup()` and `reorderItem()` read their config through.
|
|
4
|
+
*
|
|
5
|
+
* - **Per key.** Reading a key of the view reads that key of the source, so Solid tracks it alone: a
|
|
6
|
+
* getter, a store's property or a component's prop is tracked as it's read. A change re-runs only
|
|
7
|
+
* the computations that read that key, where an accessor of the whole config re-ran them all.
|
|
8
|
+
* - **A function is an accessor,** called as it's read (so tracked too): `ward({ animate: () => … })`.
|
|
9
|
+
* The callback keys (`onUpdate`, `onReorder`…) hold functions as their values, and are read as they are.
|
|
10
|
+
* - **A plain value is a constant,** as a literal prop is.
|
|
11
|
+
*
|
|
12
|
+
* The view is one object over the source, its getters on a prototype made once per kind of config,
|
|
13
|
+
* so making one allocates no getters. It has no keys of its own: it is read, never spread. A setup
|
|
14
|
+
* read (a read-once key: `initial`, `drag`, `layout`) goes through {@link snapshotOf}, untracked, or
|
|
15
|
+
* {@link setupOf}, which notes the keys still loading rather than throwing (#257 item 1).
|
|
16
|
+
*
|
|
17
|
+
* An accessor that returns a promise is an error naming its key (#257 item 1, Q3): an accessor is
|
|
18
|
+
* called at every read of its key, so it would fetch again at each; an async memo (`createMemo(() =>
|
|
19
|
+
* fetch…)`) caches it, and is read as any other accessor.
|
|
20
|
+
*
|
|
21
|
+
* @module
|
|
22
|
+
*/
|
|
23
|
+
import * as Arr from "effect/Array"
|
|
24
|
+
import * as Bool from "effect/Boolean"
|
|
25
|
+
import { identity } from "effect/Function"
|
|
26
|
+
import * as Predicate from "effect/Predicate"
|
|
27
|
+
import * as UndefinedOr from "effect/UndefinedOr"
|
|
28
|
+
import { latest, NotReadyError, runWithOwner, untrack } from "solid-js"
|
|
29
|
+
import type { Accessor } from "solid-js"
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* A config whose keys may each be an accessor (#259): a key's value, or a function returning it,
|
|
33
|
+
* except the callback keys `K`, whose values are functions themselves.
|
|
34
|
+
*/
|
|
35
|
+
export type PerKey<C, K extends keyof C = never> = {
|
|
36
|
+
readonly [P in keyof C]: P extends K ? C[P] : C[P] | Accessor<C[P]>
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* {@link PerKey}, declared apart, its rule and its accessor written out again: the same config, a
|
|
41
|
+
* type of its own. A ward's config checks its other keys against it (`WardChecked`, #306). Against
|
|
42
|
+
* `PerKey`'s own type, which the config is also bound by, TS met each key's type while it was still
|
|
43
|
+
* working it out, read it as `any`, and an editor completed nothing inside `style` or `viewport`.
|
|
44
|
+
* A rule or an `Accessor<…>` shared between the two did the same, as TS shares their instantiations.
|
|
45
|
+
*/
|
|
46
|
+
export type PerKeyApart<C, K extends keyof C = never> = {
|
|
47
|
+
readonly [P in keyof C]: P extends K ? C[P] : C[P] | (() => C[P])
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/** A view's state: the source it reads, and the values it fixes over it. */
|
|
51
|
+
class View {
|
|
52
|
+
constructor(
|
|
53
|
+
readonly source: Readonly<Record<string, unknown>>,
|
|
54
|
+
readonly fixed: Readonly<Record<string, unknown>> | undefined,
|
|
55
|
+
) {}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/** `key`'s value in a view: its fixed one, else its source's. */
|
|
59
|
+
const valueAt = (view: View, key: string): unknown => {
|
|
60
|
+
const fixed = view.fixed
|
|
61
|
+
if (Predicate.isNotUndefined(fixed)) {
|
|
62
|
+
if (Object.hasOwn(fixed, key)) return fixed[key]
|
|
63
|
+
}
|
|
64
|
+
return view.source[key]
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/** A config's values fixed over a source's: each a value or an accessor of it, read as the source's are. */
|
|
68
|
+
export type Fixed<C> = { readonly [K in keyof C]?: C[K] | Accessor<C[K]> }
|
|
69
|
+
|
|
70
|
+
/** How to make and copy one kind of config's views: its keys, read per key. */
|
|
71
|
+
export interface ConfigView<C> {
|
|
72
|
+
/**
|
|
73
|
+
* A view of `source`, with `fixed`'s values over it (a key it fixes isn't read from the source),
|
|
74
|
+
* each read as the source's are. Its reads are tracked where they're read.
|
|
75
|
+
*/
|
|
76
|
+
readonly of: (source: object, fixed?: Fixed<C>) => C
|
|
77
|
+
/** A plain copy of a view's keys as they are now, read untracked: the config at setup. */
|
|
78
|
+
readonly snapshotOf: (view: C) => C
|
|
79
|
+
/**
|
|
80
|
+
* {@link snapshotOf}, a key still loading left out of the copy and named in `pending` (#257 item 1):
|
|
81
|
+
* its read threw Solid's `NotReadyError`. Read with no reader, so nothing re-runs when it lands;
|
|
82
|
+
* the ward's tracked reads of it (its target, its style) wait on it instead.
|
|
83
|
+
*/
|
|
84
|
+
readonly setupOf: (view: C) => Setup<C>
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/** A config at setup: the keys read, and those still loading (#257 item 1). */
|
|
88
|
+
export interface Setup<C> {
|
|
89
|
+
readonly config: C
|
|
90
|
+
readonly pending: ReadonlyArray<keyof C & string>
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/** No key still loading: most setups. */
|
|
94
|
+
const NONE_PENDING: ReadonlyArray<never> = []
|
|
95
|
+
|
|
96
|
+
/** The error for an accessor that returned a promise (#257 item 1, Q3). */
|
|
97
|
+
const promiseError = (key: string): Error =>
|
|
98
|
+
new Error(`\`${key}\`'s accessor returned a promise: give it an async memo instead, \`${key}: createMemo(() => …)\`. An accessor is called at every read of its key, so it would fetch at each.`)
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* The views of a config with `keys`, its `callbacks` read as they are: a class of {@link View}
|
|
103
|
+
* whose prototype has a getter a key, made once per kind, at module load.
|
|
104
|
+
*/
|
|
105
|
+
export const configView = <C extends object>(keys: ReadonlyArray<keyof C & string>, callbacks: ReadonlyArray<keyof C & string>): ConfigView<C> => {
|
|
106
|
+
class KindView extends View {}
|
|
107
|
+
Arr.forEach(keys, (key) => {
|
|
108
|
+
const called = Bool.not(Arr.contains(callbacks, key))
|
|
109
|
+
Object.defineProperty(KindView.prototype, key, {
|
|
110
|
+
enumerable: true,
|
|
111
|
+
get(this: View): unknown {
|
|
112
|
+
const value = valueAt(this, key)
|
|
113
|
+
if (Bool.not(Bool.and(called, Predicate.isFunction(value)))) return value
|
|
114
|
+
const result = (value as () => unknown)()
|
|
115
|
+
if (Predicate.isPromiseLike(result)) throw promiseError(key)
|
|
116
|
+
return result
|
|
117
|
+
},
|
|
118
|
+
})
|
|
119
|
+
})
|
|
120
|
+
const snapshot = (view: C): C =>
|
|
121
|
+
Arr.reduce(keys, {} as Record<string, unknown>, (copy, key) => {
|
|
122
|
+
const value = (view as Record<string, unknown>)[key]
|
|
123
|
+
if (Predicate.isNotUndefined(value)) copy[key] = value
|
|
124
|
+
return copy
|
|
125
|
+
}) as C
|
|
126
|
+
// The setup copy: a key whose read throws `NotReadyError` is left out and named.
|
|
127
|
+
const setup = (view: C): Setup<C> => {
|
|
128
|
+
let pending: Array<keyof C & string> | undefined
|
|
129
|
+
const config = Arr.reduce(keys, {} as Record<string, unknown>, (copy, key) => {
|
|
130
|
+
let value: unknown
|
|
131
|
+
try {
|
|
132
|
+
value = (view as Record<string, unknown>)[key]
|
|
133
|
+
} catch (error) {
|
|
134
|
+
if (Bool.not(error instanceof NotReadyError)) throw error
|
|
135
|
+
if (Predicate.isUndefined(pending)) pending = []
|
|
136
|
+
pending.push(key)
|
|
137
|
+
return copy
|
|
138
|
+
}
|
|
139
|
+
if (Predicate.isNotUndefined(value)) copy[key] = value
|
|
140
|
+
return copy
|
|
141
|
+
}) as C
|
|
142
|
+
return { config, pending: UndefinedOr.match(pending, { onUndefined: () => NONE_PENDING, onDefined: identity }) }
|
|
143
|
+
}
|
|
144
|
+
return {
|
|
145
|
+
of: (source, fixed) => new KindView(source as Record<string, unknown>, fixed as Record<string, unknown> | undefined) as unknown as C,
|
|
146
|
+
snapshotOf: (view) => untrack(() => snapshot(view)),
|
|
147
|
+
// With no reader, and untracked: Solid links a pending node to the reader of an untracked read,
|
|
148
|
+
// re-running it when the node settles, so a component's body read would re-run the render that
|
|
149
|
+
// made it, making its async source again (#257 item 1). With none, the read just throws.
|
|
150
|
+
// `untrack` also lifts the dev build's strict read of a component body, which would throw first.
|
|
151
|
+
// And under `latest` (#335): a read outside the update's owner tree sees the values from before
|
|
152
|
+
// it, so a `<Show>`'s narrowed accessor read `undefined`; `latest` reads the in-flight ones, as
|
|
153
|
+
// the element's own render does.
|
|
154
|
+
setupOf: (view) => runWithOwner(null, () => untrack(() => latest(() => setup(view)))),
|
|
155
|
+
}
|
|
156
|
+
}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `createAnimate()` on Solid 2 (#433, Motion's `useAnimate`): the Solid 1 binding's, its **Animation
|
|
3
|
+
* scope** with an async value of its own, `scope.settled()` (#433's Q8): pending while any animation
|
|
4
|
+
* it started is in flight, so `isPending(() => scope.settled())` reads "animating", as a ward's
|
|
5
|
+
* `settled()` does (ADR-0046).
|
|
6
|
+
*
|
|
7
|
+
* @module
|
|
8
|
+
*/
|
|
9
|
+
import { isServer } from "@solidjs/web"
|
|
10
|
+
import * as Predicate from "effect/Predicate"
|
|
11
|
+
import * as UndefinedOr from "effect/UndefinedOr"
|
|
12
|
+
import { type Accessor, createMemo, createSignal, getOwner, onCleanup, runWithOwner } from "solid-js"
|
|
13
|
+
import {
|
|
14
|
+
type AnimateEnv,
|
|
15
|
+
type AnimationWatch,
|
|
16
|
+
scopedAnimate,
|
|
17
|
+
scopeOf,
|
|
18
|
+
serverAnimate,
|
|
19
|
+
type WardicAnimate,
|
|
20
|
+
type WardicAnimationScope,
|
|
21
|
+
type WardicPlaybackControls,
|
|
22
|
+
} from "../../imperative.ts"
|
|
23
|
+
import { useWardicDefaultTransition, useWardicGate, useWardicPositionalKeys, useWardicReducedMotion, useWardicRuntime, useWardicSkipAnimations } from "./provider.tsx"
|
|
24
|
+
import { CLIENT_ONLY } from "./solid-reactivity.ts"
|
|
25
|
+
|
|
26
|
+
/** A scope's landing: the animation that landed last, as `scope.settled()` gives it. */
|
|
27
|
+
// #433's Q8: held in an object, as the controls are awaitable, which an async value would wait on
|
|
28
|
+
// rather than hold.
|
|
29
|
+
export interface WardicScopeLanding {
|
|
30
|
+
readonly animation: WardicPlaybackControls
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/** An animation scope on Solid 2: Solid 1's, with `settled()`. */
|
|
34
|
+
// #433.
|
|
35
|
+
export interface WardicAnimationScopeV2<T extends Element = HTMLElement> extends WardicAnimationScope<T> {
|
|
36
|
+
/**
|
|
37
|
+
* Its last landing, `undefined` before the first: an async value, pending while any animation it
|
|
38
|
+
* started is in flight, as a ward's `settled()` is, so `isPending(() => scope.settled())` reads
|
|
39
|
+
* "animating". One stopped or cancelled ends its flight without landing.
|
|
40
|
+
*/
|
|
41
|
+
readonly settled: () => WardicScopeLanding | undefined
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/** `scope.settled()` (#433's Q8): its animations in flight, counted, made reactive at its first read. */
|
|
45
|
+
const settledOf = (): { readonly watch: AnimationWatch; readonly read: () => WardicScopeLanding | undefined } => {
|
|
46
|
+
const owner = getOwner()
|
|
47
|
+
let flying = 0
|
|
48
|
+
let last: WardicScopeLanding | undefined
|
|
49
|
+
let setCount: ((count: number) => void) | undefined
|
|
50
|
+
let memo: Accessor<WardicScopeLanding | undefined> | undefined
|
|
51
|
+
let waiting: ((landed: WardicScopeLanding | undefined) => void) | undefined
|
|
52
|
+
const tell = (): void => {
|
|
53
|
+
UndefinedOr.map(setCount, (set) => set(flying))
|
|
54
|
+
}
|
|
55
|
+
// Its count starts at none in flight, so its first read is never pending; one in flight then is
|
|
56
|
+
// set from a microtask, as a ward's Retarget in flight is: a start comes in Solid's flush.
|
|
57
|
+
const make = (): Accessor<WardicScopeLanding | undefined> => {
|
|
58
|
+
const [count, set] = createSignal(0)
|
|
59
|
+
setCount = set
|
|
60
|
+
const made = createMemo((): WardicScopeLanding | undefined | PromiseLike<WardicScopeLanding | undefined> => {
|
|
61
|
+
if (count() === 0) return last
|
|
62
|
+
return new Promise<WardicScopeLanding | undefined>((resolve) => {
|
|
63
|
+
waiting = resolve
|
|
64
|
+
})
|
|
65
|
+
}, CLIENT_ONLY)
|
|
66
|
+
if (flying > 0) queueMicrotask(tell)
|
|
67
|
+
return made
|
|
68
|
+
}
|
|
69
|
+
const watch: AnimationWatch = {
|
|
70
|
+
started: () => {
|
|
71
|
+
flying++
|
|
72
|
+
if (Predicate.isNotUndefined(setCount)) queueMicrotask(tell)
|
|
73
|
+
},
|
|
74
|
+
ended: (controls, landed) => {
|
|
75
|
+
flying--
|
|
76
|
+
if (landed) last = { animation: controls }
|
|
77
|
+
if (flying > 0) return
|
|
78
|
+
const resolve = waiting
|
|
79
|
+
waiting = undefined
|
|
80
|
+
UndefinedOr.map(resolve, (done) => done(last))
|
|
81
|
+
tell()
|
|
82
|
+
},
|
|
83
|
+
}
|
|
84
|
+
const read = (): WardicScopeLanding | undefined => {
|
|
85
|
+
if (Predicate.isUndefined(memo)) memo = runWithOwner(owner, make)
|
|
86
|
+
return (memo as Accessor<WardicScopeLanding | undefined>)()
|
|
87
|
+
}
|
|
88
|
+
return { watch, read }
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* Animates elements from code, Wardic's and plain ones alike: returns a scope, given to an element's
|
|
93
|
+
* `ref`, and `animate`. `animate(subject, target, options?)` animates an element, the elements a
|
|
94
|
+
* selector finds inside the scope, or a list; `animate(sequence)` plays a sequence. Each returns its
|
|
95
|
+
* playback controls, which can be awaited. `scope.settled()` is pending while its animations are in
|
|
96
|
+
* flight. Call it in a component under a `WardicProvider`; the component's cleanup stops its
|
|
97
|
+
* animations. Motion's `useAnimate`.
|
|
98
|
+
*
|
|
99
|
+
* @example
|
|
100
|
+
* const [scope, animate] = createAnimate()
|
|
101
|
+
* const reveal = () => animate("li", { opacity: [0, 1] }, { delay: stagger(0.05) })
|
|
102
|
+
* <button disabled={isPending(() => scope.settled())} onClick={reveal}>Reveal</button>
|
|
103
|
+
* <ul ref={scope}>…</ul>
|
|
104
|
+
* @see https://wardic.dev/reference/solid/animation/create-animate
|
|
105
|
+
*/
|
|
106
|
+
// #433, as Solid 1's; `settled()` is #433's Q8, as a ward's (ADR-0046).
|
|
107
|
+
export function createAnimate<T extends Element = HTMLElement>(): readonly [WardicAnimationScopeV2<T>, WardicAnimate] {
|
|
108
|
+
const settled = settledOf()
|
|
109
|
+
const made = scopeOf<T>(settled.watch)
|
|
110
|
+
const scope = Object.defineProperty(made.scope, "settled", { value: settled.read }) as WardicAnimationScopeV2<T>
|
|
111
|
+
// A server animates nothing (#433's defaults).
|
|
112
|
+
if (isServer) return [scope, serverAnimate] as const
|
|
113
|
+
const env: AnimateEnv = {
|
|
114
|
+
runtime: useWardicRuntime(),
|
|
115
|
+
gate: useWardicGate(),
|
|
116
|
+
reducedMotion: useWardicReducedMotion(),
|
|
117
|
+
skipAnimations: useWardicSkipAnimations(),
|
|
118
|
+
positionalKeys: useWardicPositionalKeys(),
|
|
119
|
+
defaultTransition: useWardicDefaultTransition(),
|
|
120
|
+
}
|
|
121
|
+
onCleanup(made.stopAll)
|
|
122
|
+
return [scope, scopedAnimate(env, () => scope.current, made.watch)] as const
|
|
123
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `createCycle` on Solid 2 (#443, Motion's `useCycle`), as Solid 1's.
|
|
3
|
+
*
|
|
4
|
+
* @module
|
|
5
|
+
*/
|
|
6
|
+
import { type Accessor, createSignal } from "solid-js"
|
|
7
|
+
import { nextIndexOf } from "../../cycle-index.ts"
|
|
8
|
+
import type { Cycle } from "../../cycle.ts"
|
|
9
|
+
|
|
10
|
+
export type { Cycle } from "../../cycle.ts"
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* One of a list of values at a time: the first to begin with, and `cycle()` steps to the next, the
|
|
14
|
+
* first after the last. `cycle(i)` goes to index `i`. Two steps in one handler step twice. Motion's
|
|
15
|
+
* `useCycle`, its value an accessor.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* const [x, cycleX] = createCycle(0, 50, 100)
|
|
19
|
+
* <w.div animate={{ x: x() }} onClick={() => cycleX()} />
|
|
20
|
+
* @see https://wardic.dev/reference/solid/utilities/create-cycle
|
|
21
|
+
*/
|
|
22
|
+
// #443. The index is kept outside the signal too, as Motion keeps it in a ref; `cycle(i)` is taken as
|
|
23
|
+
// given, unchecked, and anything but a number steps, as Motion's (`typeof next !== "number"`).
|
|
24
|
+
export const createCycle = <T,>(...items: ReadonlyArray<T>): readonly [Accessor<T>, Cycle] => {
|
|
25
|
+
let current = 0
|
|
26
|
+
const [index, setIndex] = createSignal(0)
|
|
27
|
+
const cycle: Cycle = (next) => {
|
|
28
|
+
current = nextIndexOf(current, items.length, next)
|
|
29
|
+
setIndex(current)
|
|
30
|
+
}
|
|
31
|
+
// eslint-disable-next-line solid/reactivity -- the accessor itself is returned, for its caller to read where it tracks
|
|
32
|
+
return [() => items[index()] as T, cycle]
|
|
33
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `createDrag` (#548): in a module of its own, so it brings the `drag` Feature only to an app that uses it,
|
|
3
|
+
* and on the pages that do (ADR-0067, *Amendment (#548)*).
|
|
4
|
+
*
|
|
5
|
+
* @module
|
|
6
|
+
*/
|
|
7
|
+
import type * as Drag from "@wardic/core/Drag"
|
|
8
|
+
import * as InputSource from "@wardic/core/InputSource"
|
|
9
|
+
import * as Effect from "effect/Effect"
|
|
10
|
+
import { type CreateDragOptions, watchDragSamples } from "../../drag-samples.ts"
|
|
11
|
+
import type { Feature } from "../../feature.ts"
|
|
12
|
+
import { drag } from "../../features/drag.ts"
|
|
13
|
+
import { inputIn } from "../../gesture-features.ts"
|
|
14
|
+
import { transformPagePointOf } from "../../wardic-config-value.ts"
|
|
15
|
+
import { useBrought } from "./provider.tsx"
|
|
16
|
+
import { type Sensor, watchSensorOf } from "./sensors.ts"
|
|
17
|
+
import { useWardicConfig } from "./wardic-config.tsx"
|
|
18
|
+
|
|
19
|
+
/** What it brings (ADR-0067 decision 12): its gesture's Feature, whatever its section has (#511). */
|
|
20
|
+
const DRAG: ReadonlyArray<Feature> = [drag]
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* The latest sample of a drag on the element it's given to as a `ref`, `null` before the first: where
|
|
24
|
+
* the pointer is, how far it has come, its velocity, and the gesture's `phase`. It moves nothing: it
|
|
25
|
+
* reports, for a drag that drives something else, such as a slider's value. Like an element's own
|
|
26
|
+
* drag, it takes the element's drag while a gesture is on, unless `claim: false`.
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* const drag = createDrag({ axis: "x" })
|
|
30
|
+
* const value = () => (drag()?.offset.x ?? 0) / 2
|
|
31
|
+
* <div class="track" ref={drag} />
|
|
32
|
+
* @see https://wardic.dev/reference/solid/gestures/create-drag
|
|
33
|
+
*/
|
|
34
|
+
// The core drag watch (#379), with `options`' axis, claim and bounds; the element's Drag claim held
|
|
35
|
+
// while a gesture is on.
|
|
36
|
+
export const createDrag = (options?: CreateDragOptions): Sensor<Drag.Sample | null> => {
|
|
37
|
+
// Its points through the nearest WardicConfig's `transformPagePoint` (#443), read at each down.
|
|
38
|
+
const pagePoint = transformPagePointOf(useWardicConfig())
|
|
39
|
+
const services = useBrought(DRAG)
|
|
40
|
+
return watchSensorOf<Drag.Sample | null>(
|
|
41
|
+
(target, handlers) => Effect.provideService(watchDragSamples(target, { ...options }, handlers, pagePoint), InputSource.InputSource, inputIn(services())),
|
|
42
|
+
null,
|
|
43
|
+
)
|
|
44
|
+
}
|