@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,446 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* An element's place in variant orchestration on Solid 2 (ADR-0007, #50, #209): the variant context
|
|
3
|
+
* a ward's `.Provider` and every `wardic.*` element provide, and the registry, stagger and `when` an
|
|
4
|
+
* element with variants of its own runs for its Variant children. The rules are the Solid 1
|
|
5
|
+
* binding's, Solid-free in `variant-tree.ts`; what Solid 2 changes is when a write is seen.
|
|
6
|
+
*
|
|
7
|
+
* A Solid 2 signal's read lags its write until the flush, and an effect's apply runs in an order
|
|
8
|
+
* the binding doesn't choose. So nothing a child reads at its Retarget is written by an effect at
|
|
9
|
+
* the trigger:
|
|
10
|
+
*
|
|
11
|
+
* - **Stagger slots** are plain fields, snapshotted as the handed-down name changes, in the memo
|
|
12
|
+
* that computes it. Every Variant child reads that memo for its target, so the snapshot is taken
|
|
13
|
+
* before any child's Retarget in that flush, and read there through its `extraDelay`.
|
|
14
|
+
* - **`beforeChildren`** compares two values its children read in the same flush: the name handed
|
|
15
|
+
* down now, and the one the element last settled at (written by its spine's frames, outside any
|
|
16
|
+
* flush). A new name holds them until the element settles at it.
|
|
17
|
+
*
|
|
18
|
+
* @module
|
|
19
|
+
*/
|
|
20
|
+
import * as Arr from "effect/Array"
|
|
21
|
+
import * as Bool from "effect/Boolean"
|
|
22
|
+
import { constTrue, constUndefined, constVoid } from "effect/Function"
|
|
23
|
+
import * as Option from "effect/Option"
|
|
24
|
+
import * as Predicate from "effect/Predicate"
|
|
25
|
+
import * as UndefinedOr from "effect/UndefinedOr"
|
|
26
|
+
import { type Accessor, createContext, createMemo, createSignal, onCleanup, untrack, useContext } from "solid-js"
|
|
27
|
+
import type { ControlsChange } from "../../animation-controls.ts"
|
|
28
|
+
import type { WardicTransition, WardicVariantLabels } from "../../config.ts"
|
|
29
|
+
import {
|
|
30
|
+
activeNamesOf,
|
|
31
|
+
type ChangeAtTrigger,
|
|
32
|
+
changeAtTrigger,
|
|
33
|
+
controlsChangeOf,
|
|
34
|
+
changeConfigOf,
|
|
35
|
+
orchestrationAt,
|
|
36
|
+
type GestureHandDown,
|
|
37
|
+
handDownFrom,
|
|
38
|
+
handDownOf,
|
|
39
|
+
type GestureStates,
|
|
40
|
+
NO_GESTURE_STATES,
|
|
41
|
+
sameHandDown,
|
|
42
|
+
topGestureName,
|
|
43
|
+
triggerKeyOf,
|
|
44
|
+
handedDown,
|
|
45
|
+
hasOwnVariants,
|
|
46
|
+
inheritedContext,
|
|
47
|
+
namesOwnVariants,
|
|
48
|
+
initialNameOf,
|
|
49
|
+
nameOf,
|
|
50
|
+
ownOrInherited,
|
|
51
|
+
childDelayOf,
|
|
52
|
+
mayStartOf,
|
|
53
|
+
type NameConfig,
|
|
54
|
+
nameConfigOf,
|
|
55
|
+
type NameOrchestration,
|
|
56
|
+
passedThrough,
|
|
57
|
+
sameStagger,
|
|
58
|
+
staggerOf,
|
|
59
|
+
staggerOfName,
|
|
60
|
+
type VariantConfig,
|
|
61
|
+
type WardicChildRegistration,
|
|
62
|
+
type WardicStaggerConfig,
|
|
63
|
+
type WardicVariantContextValue,
|
|
64
|
+
} from "../../variant-tree.ts"
|
|
65
|
+
import { CLIENT_ONLY, CLIENT_ONLY_SYNC } from "./solid-reactivity.ts"
|
|
66
|
+
import { ownTransitionOf, sameLabels, transitionOfTarget } from "../../variant-target.ts"
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* The variant context: what the nearest variant parent hands its children, its names, transition and
|
|
70
|
+
* orchestration. Wardic's elements read it to follow their parent's variants; a binding of your own
|
|
71
|
+
* provides or reads it the same way. `null` outside a parent.
|
|
72
|
+
*
|
|
73
|
+
* @see https://wardic.dev/reference/solid/advanced/variant-context
|
|
74
|
+
*/
|
|
75
|
+
// ADR-0007.
|
|
76
|
+
// Solid 2 reads a context made with `undefined` as having none, and throws in `useContext`.
|
|
77
|
+
export const WardicVariantContext = createContext<WardicVariantContextValue | null>(null)
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* The nearest variant parent's context, or `undefined` outside one: its current variant name,
|
|
81
|
+
* `initial`, transition and orchestration, for an element of your own that follows a parent's variants.
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* const parent = useVariantContext()
|
|
85
|
+
* const name = () => parent?.variant()
|
|
86
|
+
* @see https://wardic.dev/reference/solid/advanced/variant-context
|
|
87
|
+
*/
|
|
88
|
+
// ADR-0007: local `animate` over the inherited name over `initial`.
|
|
89
|
+
export const useVariantContext = (): WardicVariantContextValue | undefined =>
|
|
90
|
+
Option.getOrUndefined(Option.fromNullishOr(useContext(WardicVariantContext)))
|
|
91
|
+
|
|
92
|
+
/** An element's place in variant orchestration, on the client. */
|
|
93
|
+
export interface VariantNode {
|
|
94
|
+
/** What its children read: its own context, its parent's passed through, or none. */
|
|
95
|
+
readonly provided: WardicVariantContextValue | undefined
|
|
96
|
+
/** The context its spine inherits names and its default transition from: its parent's, for a Variant child. */
|
|
97
|
+
readonly inherited: WardicVariantContextValue | undefined
|
|
98
|
+
/** Its stagger delay in seconds, as a Variant child; `undefined` for any other element. */
|
|
99
|
+
readonly extraDelay: ((name: string | undefined) => number) | undefined
|
|
100
|
+
/** Whether its spine may start a Retarget: its ancestor's `beforeChildren` and its own `afterChildren` allow it. */
|
|
101
|
+
readonly canStart: () => boolean
|
|
102
|
+
/** Its spine's settle report on each frame: to its ancestor's registry, and to its own `beforeChildren`. */
|
|
103
|
+
readonly onFrame: (done: boolean) => void
|
|
104
|
+
/**
|
|
105
|
+
* Bind its spine's gesture states (#291), at its ward's setup: the names it hands its Variant
|
|
106
|
+
* children follow them. Only an element whose Variant children join it has one.
|
|
107
|
+
*/
|
|
108
|
+
readonly bindGestures: ((states: Accessor<GestureStates>) => void) | undefined
|
|
109
|
+
/**
|
|
110
|
+
* A list's names orchestrated each on their own (#297's PR 2): its spine's gates and per-name
|
|
111
|
+
* settles. Only an element that joins a provider or provides has one.
|
|
112
|
+
*/
|
|
113
|
+
readonly names: NameOrchestration | undefined
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
/** The orchestration an element with variants of its own runs for its Variant children. */
|
|
117
|
+
interface OwnOrchestration {
|
|
118
|
+
readonly context: WardicVariantContextValue
|
|
119
|
+
readonly canStart: () => boolean
|
|
120
|
+
readonly settled: (done: boolean) => void
|
|
121
|
+
readonly bindGestures: (states: Accessor<GestureStates>) => void
|
|
122
|
+
/** A list's name's own `afterChildren` (#297's PR 2): its keys wait for its children's of that name. */
|
|
123
|
+
readonly canStartFor: (name: string) => boolean
|
|
124
|
+
/** Its keys of a list's names settled, or moving again (#297's PR 2). */
|
|
125
|
+
readonly settledFor: (names: ReadonlyArray<string>, done: boolean) => void
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
/** A registered Variant child's stagger slot, as its ancestor's registry holds it: set at each trigger. */
|
|
129
|
+
interface ChildRecord {
|
|
130
|
+
index: number
|
|
131
|
+
total: number
|
|
132
|
+
/** Each of a list's names whose keys it has settled, with the trigger it settled at (#297's PR 2). */
|
|
133
|
+
readonly names: Map<string, string>
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
/** What an element has settled at while it moves: no name. */
|
|
137
|
+
const MOVING: unique symbol = Symbol("wardic.moving")
|
|
138
|
+
|
|
139
|
+
/**
|
|
140
|
+
* The registry, stagger and `when` an element with variants of its own runs for its Variant
|
|
141
|
+
* children (ADR-0007), and the names it hands them. Call within a Solid owner.
|
|
142
|
+
*/
|
|
143
|
+
const ownOrchestration = (
|
|
144
|
+
cfg: Accessor<VariantConfig>,
|
|
145
|
+
config: VariantConfig,
|
|
146
|
+
parent: WardicVariantContextValue | undefined,
|
|
147
|
+
inherited: WardicVariantContextValue | undefined,
|
|
148
|
+
change: Accessor<ControlsChange | undefined>,
|
|
149
|
+
): OwnOrchestration => {
|
|
150
|
+
// Children in mount order (a Set keeps insertion order), snapshotted at each trigger. Kept with a
|
|
151
|
+
// count of the unsettled ones rather than a signal of the records, so a child's mount, unmount or
|
|
152
|
+
// settle costs the same at 1,000 children as at 1. The count is plain, and the signal its copy:
|
|
153
|
+
// two writes in one flush each see the other's. A Variant child registers in its own body, an owned
|
|
154
|
+
// scope, as it renders: so this signal is written there (`ownedWrite`, #257's audit).
|
|
155
|
+
const records = new Set<ChildRecord>()
|
|
156
|
+
let unsettledCount = 0
|
|
157
|
+
const [unsettled, setUnsettled] = createSignal(0, { ownedWrite: true })
|
|
158
|
+
const countUnsettled = (change: number): void => {
|
|
159
|
+
unsettledCount += change
|
|
160
|
+
setUnsettled(unsettledCount)
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
const register = (): WardicChildRegistration => {
|
|
164
|
+
const record: ChildRecord = { index: 0, total: 1, names: new Map() }
|
|
165
|
+
// A child starts unsettled; its spine reports each frame, so only a change counts.
|
|
166
|
+
let settled = false
|
|
167
|
+
records.add(record)
|
|
168
|
+
countUnsettled(1)
|
|
169
|
+
const setSettled = (done: boolean): void => {
|
|
170
|
+
if (done === settled) return
|
|
171
|
+
settled = done
|
|
172
|
+
countUnsettled(Bool.match(done, { onTrue: () => -1, onFalse: () => 1 }))
|
|
173
|
+
}
|
|
174
|
+
const dispose = (): void => {
|
|
175
|
+
if (!records.delete(record)) return
|
|
176
|
+
if (!settled) countUnsettled(-1)
|
|
177
|
+
}
|
|
178
|
+
return {
|
|
179
|
+
index: () => {
|
|
180
|
+
fresh()
|
|
181
|
+
return record.index
|
|
182
|
+
},
|
|
183
|
+
total: () => {
|
|
184
|
+
fresh()
|
|
185
|
+
return record.total
|
|
186
|
+
},
|
|
187
|
+
setSettled,
|
|
188
|
+
// At this element's trigger now: a settle from before its list changed counts for nothing.
|
|
189
|
+
setSettledFor: (name, done) => {
|
|
190
|
+
Bool.match(done, { onTrue: () => record.names.set(name, untrack(trigger)), onFalse: () => record.names.delete(name) })
|
|
191
|
+
},
|
|
192
|
+
dispose,
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
// Snapshot-at-trigger (ADR-0007): each child's index and total are recomputed only when this
|
|
198
|
+
// element's variant changes, so a mount, unmount or reorder mid-transition doesn't reshuffle
|
|
199
|
+
// in-flight delays. `staggerDirection: -1` reverses the index. Taken at the first slot read after
|
|
200
|
+
// the change (#209 PR 4a): at mount this element's name is first computed in its setup, before
|
|
201
|
+
// its children register, and they read their slots at their first Retarget, once all have.
|
|
202
|
+
let stale = true
|
|
203
|
+
const fresh = (): void => {
|
|
204
|
+
if (!stale) return
|
|
205
|
+
stale = false
|
|
206
|
+
snapshotSlots()
|
|
207
|
+
}
|
|
208
|
+
// Each in order: a name's `staggerDirection` turns it at its delay (#297), a list's names each theirs.
|
|
209
|
+
const snapshotSlots = (): void => {
|
|
210
|
+
const n = records.size
|
|
211
|
+
let i = 0
|
|
212
|
+
records.forEach((record) => {
|
|
213
|
+
record.total = n
|
|
214
|
+
record.index = i
|
|
215
|
+
i++
|
|
216
|
+
})
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
// The names handed down. `animate`'s is reactive, its change the trigger; `initial`'s is read once.
|
|
220
|
+
// A list the same name by name is no change (#297): the one before is kept.
|
|
221
|
+
const variant: Accessor<WardicVariantLabels | undefined> = createMemo(
|
|
222
|
+
(previous: WardicVariantLabels | undefined) => {
|
|
223
|
+
const c = cfg()
|
|
224
|
+
const next = handedDown(c, () => nameOf(c.animate), () => UndefinedOr.map(parent, (p) => p.variant()))
|
|
225
|
+
if (sameLabels(next, previous)) return previous
|
|
226
|
+
stale = true
|
|
227
|
+
return next
|
|
228
|
+
},
|
|
229
|
+
{ ...CLIENT_ONLY, equals: (a: WardicVariantLabels | undefined, b: WardicVariantLabels | undefined) => sameLabels(a, b) },
|
|
230
|
+
)
|
|
231
|
+
|
|
232
|
+
// What it hands down for its gestures (#291), whether each is on and its label: its spine's states, bound at its ward's
|
|
233
|
+
// setup. Changed only when a name does, so its children re-resolve only then; a change is a trigger.
|
|
234
|
+
// Written where its ward binds its spine's states, at setup, in a component's body: an owned scope,
|
|
235
|
+
// so said (`ownedWrite`, #257's audit; #618).
|
|
236
|
+
const [states, setStates] = createSignal<Accessor<GestureStates> | undefined>(undefined, { ownedWrite: true })
|
|
237
|
+
const gestures: Accessor<GestureHandDown> = createMemo(
|
|
238
|
+
(previous: GestureHandDown | undefined) => {
|
|
239
|
+
const next = handDownOf(cfg(), UndefinedOr.match(states(), { onUndefined: () => NO_GESTURE_STATES, onDefined: (on) => on() }), handDownFrom(inherited))
|
|
240
|
+
if (Predicate.isNotUndefined(previous) && sameHandDown(previous, next)) return previous
|
|
241
|
+
stale = true
|
|
242
|
+
return next
|
|
243
|
+
},
|
|
244
|
+
{ ...CLIENT_ONLY_SYNC, equals: (a: GestureHandDown, b: GestureHandDown) => sameHandDown(a, b) },
|
|
245
|
+
)
|
|
246
|
+
|
|
247
|
+
// The Controls change its latest trigger came with (#433): while it's the latest, its override is
|
|
248
|
+
// the orchestration. A new one is a trigger, to the same name too: its children's slots are taken again.
|
|
249
|
+
const at: Accessor<ChangeAtTrigger> = createMemo((previous: ChangeAtTrigger | undefined) => {
|
|
250
|
+
const made = changeAtTrigger(change(), triggerKeyOf(variant(), gestures(), change()), previous)
|
|
251
|
+
if (Bool.and(Predicate.isNotUndefined(previous), made.change !== UndefinedOr.map(previous, (p) => p.change))) stale = true
|
|
252
|
+
return made
|
|
253
|
+
}, CLIENT_ONLY_SYNC)
|
|
254
|
+
// Its orchestration (#277, #291, Motion's): the own transition of its highest active gesture's name,
|
|
255
|
+
// else of its target (the variant it names), else its `transition`; a Controls change's override at
|
|
256
|
+
// the trigger it came with (#433).
|
|
257
|
+
const orchestration: Accessor<WardicTransition | undefined> = createMemo(
|
|
258
|
+
() =>
|
|
259
|
+
orchestrationAt(at(), () => {
|
|
260
|
+
const c = cfg()
|
|
261
|
+
const own = UndefinedOr.match(topGestureName(activeNamesOf(gestures())), {
|
|
262
|
+
onDefined: (name) => ownTransitionOf(undefined, name, c.variants, c.custom),
|
|
263
|
+
onUndefined: () => ownTransitionOf(c.animate, variant(), c.variants, c.custom),
|
|
264
|
+
})
|
|
265
|
+
return transitionOfTarget(own, c.transition)
|
|
266
|
+
}),
|
|
267
|
+
CLIENT_ONLY,
|
|
268
|
+
)
|
|
269
|
+
// What its `beforeChildren` settles at: its variant, its gestures' names (#291), and a Controls change (#433).
|
|
270
|
+
const trigger: Accessor<string> = createMemo(() => at().key, CLIENT_ONLY)
|
|
271
|
+
const stagger: Accessor<WardicStaggerConfig> = createMemo(() => staggerOf(orchestration()), { ...CLIENT_ONLY_SYNC, equals: sameStagger })
|
|
272
|
+
// A list's names have each their own (#297's PR 2): none for the list as a whole.
|
|
273
|
+
const when: Accessor<"beforeChildren" | "afterChildren" | undefined> = () => {
|
|
274
|
+
if (Arr.isArray(variant())) return undefined
|
|
275
|
+
return UndefinedOr.map(orchestration(), (t) => t.when)
|
|
276
|
+
}
|
|
277
|
+
const initial = handedDown<WardicVariantLabels | false>(config, () => initialNameOf(config.initial), () => UndefinedOr.map(parent, (p) => p.initial))
|
|
278
|
+
|
|
279
|
+
// Each name's orchestration for the Variant children's keys of that name (#297, Motion's
|
|
280
|
+
// `animateVariant` a name): its own transition's, else the element's. Kept per name until what it's
|
|
281
|
+
// resolved from changes; a key from no name takes the element's whole orchestration.
|
|
282
|
+
const byName: Accessor<Map<string, NameConfig>> = createMemo(() => {
|
|
283
|
+
const c = cfg()
|
|
284
|
+
void c.variants
|
|
285
|
+
void c.custom
|
|
286
|
+
void c.transition
|
|
287
|
+
return new Map<string, NameConfig>()
|
|
288
|
+
}, CLIENT_ONLY_SYNC)
|
|
289
|
+
const configOf = (name: string): NameConfig => {
|
|
290
|
+
// A Controls change's override orchestrates every name at its trigger (#433).
|
|
291
|
+
const changed = changeConfigOf(untrack(at))
|
|
292
|
+
if (Predicate.isNotUndefined(changed)) return changed
|
|
293
|
+
const known = untrack(byName)
|
|
294
|
+
const kept = known.get(name)
|
|
295
|
+
if (Predicate.isNotUndefined(kept)) return kept
|
|
296
|
+
const c = untrack(cfg)
|
|
297
|
+
const made = untrack(() => nameConfigOf(transitionOfTarget(ownTransitionOf(undefined, name, c.variants, c.custom), c.transition)))
|
|
298
|
+
known.set(name, made)
|
|
299
|
+
return made
|
|
300
|
+
}
|
|
301
|
+
const staggerFor = (name: string | undefined): WardicStaggerConfig => {
|
|
302
|
+
if (Predicate.isUndefined(name)) return untrack(stagger)
|
|
303
|
+
return configOf(name).stagger
|
|
304
|
+
}
|
|
305
|
+
// Each of a list's names' own `when` (#297's PR 2), read by polling: the trigger each of its names'
|
|
306
|
+
// keys settled at, and (in each record) its children's. A settle at an earlier trigger counts for
|
|
307
|
+
// nothing, so nothing is reset when the list changes.
|
|
308
|
+
const ownNames = new Map<string, string>()
|
|
309
|
+
const mayStartFor = (name: string): boolean => Bool.or(configOf(name).when !== "beforeChildren", ownNames.get(name) === untrack(trigger))
|
|
310
|
+
const canStartFor = (name: string): boolean => {
|
|
311
|
+
if (configOf(name).when !== "afterChildren") return true
|
|
312
|
+
const now = untrack(trigger)
|
|
313
|
+
let all = true
|
|
314
|
+
records.forEach((record) => {
|
|
315
|
+
if (record.names.get(name) !== now) all = false
|
|
316
|
+
})
|
|
317
|
+
return all
|
|
318
|
+
}
|
|
319
|
+
const settledFor = (names: ReadonlyArray<string>, done: boolean): void => {
|
|
320
|
+
const now = untrack(trigger)
|
|
321
|
+
Arr.forEach(names, (name) => {
|
|
322
|
+
Bool.match(done, { onTrue: () => ownNames.set(name, now), onFalse: () => ownNames.delete(name) })
|
|
323
|
+
})
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
// The name this element last settled at: `MOVING` while its own animation runs.
|
|
327
|
+
const [settledAt, setSettledAt] = createSignal<string | undefined | typeof MOVING>(MOVING)
|
|
328
|
+
|
|
329
|
+
const childrenMayStart: Accessor<boolean> = () => when() !== "beforeChildren" || settledAt() === trigger()
|
|
330
|
+
const allChildrenSettled: Accessor<boolean> = () => unsettled() === 0
|
|
331
|
+
// The transition its children default to: its own, else the one it inherits.
|
|
332
|
+
const transition: Accessor<WardicTransition | undefined> = createMemo(() => ownOrInherited(cfg().transition, inherited), CLIENT_ONLY)
|
|
333
|
+
|
|
334
|
+
return {
|
|
335
|
+
context: { variant, initial, transition, gestures, register, stagger, staggerFor, mayStartFor, when, childrenMayStart, allChildrenSettled, change },
|
|
336
|
+
// It holds its own start for `afterChildren` (it owns the registry, so it reads it directly).
|
|
337
|
+
canStart: () => when() !== "afterChildren" || allChildrenSettled(),
|
|
338
|
+
settled: (done) => {
|
|
339
|
+
setSettledAt(Bool.match(done, { onTrue: () => untrack(trigger), onFalse: (): typeof MOVING => MOVING }))
|
|
340
|
+
},
|
|
341
|
+
bindGestures: (on) => {
|
|
342
|
+
setStates(() => on)
|
|
343
|
+
},
|
|
344
|
+
canStartFor,
|
|
345
|
+
settledFor,
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
/** A node's gesture binding: its own orchestration's, none without one. A guard: it's made per element. */
|
|
350
|
+
const bindOf = (own: OwnOrchestration | undefined): ((states: Accessor<GestureStates>) => void) | undefined => {
|
|
351
|
+
if (Predicate.isUndefined(own)) return undefined
|
|
352
|
+
return own.bindGestures
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
/**
|
|
356
|
+
* An element's place in variant orchestration on the client, from its config (`cfg`, read where it
|
|
357
|
+
* tracks; `config`, the ward's plain copy at setup, #259) and the nearest context
|
|
358
|
+
* (`useVariantContext()`). Call within a Solid owner.
|
|
359
|
+
*/
|
|
360
|
+
export const createVariantNode = (
|
|
361
|
+
cfg: Accessor<VariantConfig>,
|
|
362
|
+
config: VariantConfig,
|
|
363
|
+
parent: WardicVariantContextValue | undefined,
|
|
364
|
+
controls?: Accessor<ControlsChange | undefined>,
|
|
365
|
+
): VariantNode => {
|
|
366
|
+
if (Bool.and(Predicate.isUndefined(config.variants), Bool.not(namesOwnVariants(config)))) return plainNode(config, parent)
|
|
367
|
+
const inherited = inheritedContext(config, parent)
|
|
368
|
+
// The Controls change in effect (#433): its own controls', else the one its provider is in.
|
|
369
|
+
const change = controlsChangeOf(controls, inherited)
|
|
370
|
+
// A Variant child registers with the ancestor it joins, for its stagger slot and its `when`.
|
|
371
|
+
const joined = UndefinedOr.map(inherited, (context) => ({ context, registration: context.register() }))
|
|
372
|
+
if (Predicate.isNotUndefined(joined)) onCleanup(joined.registration.dispose)
|
|
373
|
+
const own = Bool.match(hasOwnVariants(config), {
|
|
374
|
+
onFalse: constUndefined,
|
|
375
|
+
onTrue: () => ownOrchestration(cfg, config, parent, inherited, change),
|
|
376
|
+
})
|
|
377
|
+
// The spine reports on every frame (the per-frame path, docs/agents/effect-first.md): both
|
|
378
|
+
// reports are resolved here, once, so a frame makes two plain calls and allocates nothing.
|
|
379
|
+
const reportJoined: (done: boolean) => void = UndefinedOr.match(joined, {
|
|
380
|
+
onUndefined: () => constVoid,
|
|
381
|
+
onDefined: ({ registration }) => registration.setSettled,
|
|
382
|
+
})
|
|
383
|
+
const reportOwn: (done: boolean) => void = UndefinedOr.match(own, { onUndefined: () => constVoid, onDefined: (o) => o.settled })
|
|
384
|
+
return {
|
|
385
|
+
provided: UndefinedOr.match(own, { onDefined: (o) => o.context, onUndefined: () => passedThrough(config, parent) }),
|
|
386
|
+
inherited,
|
|
387
|
+
extraDelay: UndefinedOr.map(joined, ({ context, registration }) => (name: string | undefined) => {
|
|
388
|
+
const s = staggerOfName(context, name)
|
|
389
|
+
const n = registration.total()
|
|
390
|
+
return childDelayOf(s, registration.index(), n)
|
|
391
|
+
}),
|
|
392
|
+
canStart: () =>
|
|
393
|
+
UndefinedOr.match(inherited, { onUndefined: constTrue, onDefined: (context) => context.childrenMayStart() }) &&
|
|
394
|
+
UndefinedOr.match(own, { onUndefined: constTrue, onDefined: (o) => o.canStart() }),
|
|
395
|
+
onFrame: (done) => {
|
|
396
|
+
reportJoined(done)
|
|
397
|
+
reportOwn(done)
|
|
398
|
+
},
|
|
399
|
+
bindGestures: bindOf(own),
|
|
400
|
+
names: namesOf(joined, own),
|
|
401
|
+
}
|
|
402
|
+
}
|
|
403
|
+
|
|
404
|
+
/**
|
|
405
|
+
* The node of an element with no variants and no names of its own (#398): it joins nothing and
|
|
406
|
+
* provides nothing, so all it holds is the context it passes through. Most elements are one, and
|
|
407
|
+
* each Listening ward's driving ward makes one: no closures per element.
|
|
408
|
+
*/
|
|
409
|
+
const plainNode = (config: VariantConfig, parent: WardicVariantContextValue | undefined): VariantNode => {
|
|
410
|
+
if (Bool.or(config.inherit === false, Predicate.isUndefined(parent))) return PLAIN_NODE
|
|
411
|
+
return { ...PLAIN_NODE, provided: parent }
|
|
412
|
+
}
|
|
413
|
+
const PLAIN_NODE: VariantNode = Object.freeze({
|
|
414
|
+
provided: undefined,
|
|
415
|
+
inherited: undefined,
|
|
416
|
+
extraDelay: undefined,
|
|
417
|
+
canStart: constTrue,
|
|
418
|
+
onFrame: constVoid,
|
|
419
|
+
bindGestures: undefined,
|
|
420
|
+
names: undefined,
|
|
421
|
+
})
|
|
422
|
+
|
|
423
|
+
/**
|
|
424
|
+
* Its spine's per-name orchestration (#297's PR 2): a name's keys start once its provider's
|
|
425
|
+
* `beforeChildren` and its own `afterChildren` for that name allow; their starts and settles are told
|
|
426
|
+
* to both. None for an element that joins nothing and provides nothing: made per element, a guard.
|
|
427
|
+
*/
|
|
428
|
+
const namesOf = (
|
|
429
|
+
joined: { readonly context: WardicVariantContextValue; readonly registration: WardicChildRegistration } | undefined,
|
|
430
|
+
own: OwnOrchestration | undefined,
|
|
431
|
+
): NameOrchestration | undefined => {
|
|
432
|
+
if (Bool.and(Predicate.isUndefined(joined), Predicate.isUndefined(own))) return undefined
|
|
433
|
+
const tell = (names: ReadonlyArray<string>, done: boolean): void => {
|
|
434
|
+
UndefinedOr.map(joined, ({ registration }) => UndefinedOr.map(registration.setSettledFor, (set) => Arr.forEach(names, (name) => set(name, done))))
|
|
435
|
+
UndefinedOr.map(own, (o) => o.settledFor(names, done))
|
|
436
|
+
}
|
|
437
|
+
return {
|
|
438
|
+
mayStart: (name) =>
|
|
439
|
+
Bool.and(
|
|
440
|
+
UndefinedOr.match(joined, { onUndefined: constTrue, onDefined: ({ context }) => mayStartOf(context, name) }),
|
|
441
|
+
UndefinedOr.match(own, { onUndefined: constTrue, onDefined: (o) => o.canStartFor(name) }),
|
|
442
|
+
),
|
|
443
|
+
moving: (names) => tell(names, false),
|
|
444
|
+
settled: (names) => tell(names, true),
|
|
445
|
+
}
|
|
446
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `w` on Solid 2 — the **Slim element**'s forms (#511, ADR-0067 decision 6; Motion's `m`): `w.<tag>`,
|
|
3
|
+
* `w.create(tag | Component)` and `w.ward(config)`, each as its Complete form (`wardic.<tag>`,
|
|
4
|
+
* `wardic.create`, `ward()`) is. A Slim element animates values (`initial`, `animate`, `exit`,
|
|
5
|
+
* variants, transitions, Keyframes), with the **Features** chosen above it: its `WardicProvider`'s and
|
|
6
|
+
* every `LazyWardic`'s between them. This module names no Feature, so an app of Slim elements ships
|
|
7
|
+
* only those it chooses.
|
|
8
|
+
*
|
|
9
|
+
* ```tsx
|
|
10
|
+
* <WardicProvider env={DomLive} features={[colors]}>
|
|
11
|
+
* <w.div animate={{ color: "oklch(0.7 0.1 200)" }} />
|
|
12
|
+
* </WardicProvider>
|
|
13
|
+
* ```
|
|
14
|
+
*
|
|
15
|
+
* @module
|
|
16
|
+
*/
|
|
17
|
+
import type { JSX } from "@solidjs/web"
|
|
18
|
+
import * as Predicate from "effect/Predicate"
|
|
19
|
+
import { type Create, createOf, formOf, type WardicComponent } from "./element.tsx"
|
|
20
|
+
import { internalsOf, SLIM, type Ward, type WardChecked, type WardConfig, wardWith, type WardOptions } from "./ward.tsx"
|
|
21
|
+
|
|
22
|
+
/** `w.ward(config, options)`: `ward()`'s ward, on a Slim element. */
|
|
23
|
+
function slimWard<const C extends WardConfig>(config: WardChecked<C>, options?: WardOptions): Ward<C>
|
|
24
|
+
function slimWard(): Ward<{}>
|
|
25
|
+
function slimWard(config: undefined, options: WardOptions): Ward<{}>
|
|
26
|
+
function slimWard(config?: WardConfig, options?: WardOptions): Ward {
|
|
27
|
+
if (Predicate.isUndefined(config)) return wardWith(NO_CONFIG, internalsOf(options, SLIM))
|
|
28
|
+
return wardWith(config, internalsOf(options, SLIM))
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/** No config: a ward that only listens (#398), `w.ward()`. */
|
|
32
|
+
const NO_CONFIG: WardConfig = {}
|
|
33
|
+
|
|
34
|
+
/** `w`: `w.create`, `w.ward`, and `w.<tag>`, a Slim element's component for that element (one per tag). */
|
|
35
|
+
export type W = { readonly create: Create; readonly ward: typeof slimWard } & {
|
|
36
|
+
readonly [Tag in keyof JSX.IntrinsicElements]: WardicComponent<Tag>
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* The Slim element: `w.div`, `w.button` and every other tag, each taking the element's own props and
|
|
41
|
+
* Wardic's motion props. It has the Features its `WardicProvider` and any `LazyWardic` above it give.
|
|
42
|
+
* `w.create(Component)` makes your own component one, and `w.ward(config)` a ward for an element of
|
|
43
|
+
* your own. Motion's `m.div`.
|
|
44
|
+
*
|
|
45
|
+
* @example <w.div initial={{ opacity: 0 }} animate={{ opacity: 1 }} />
|
|
46
|
+
* @see https://wardic.dev/reference/solid/elements/w
|
|
47
|
+
*/
|
|
48
|
+
// Every form of the Slim element, as `wardic`'s and `ward()` are of the Complete one (ADR-0067).
|
|
49
|
+
export const w: W = formOf<W>(createOf(SLIM), { ward: slimWard })
|