@wardic/solid 0.0.0-stage → 1.0.0-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +26 -2
- package/THIRD_PARTY_NOTICES.md +145 -0
- package/dist/browser/animation-controls.js +150 -0
- package/dist/browser/animation-controls.js.map +1 -0
- package/dist/browser/animation-frame.js +29 -0
- package/dist/browser/animation-frame.js.map +1 -0
- package/dist/browser/appear.js +727 -0
- package/dist/browser/appear.js.map +1 -0
- package/dist/browser/arc.js +21 -0
- package/dist/browser/arc.js.map +1 -0
- package/dist/browser/bridge.js +69 -0
- package/dist/browser/bridge.js.map +1 -0
- package/dist/browser/complete.js +30 -0
- package/dist/browser/complete.js.map +1 -0
- package/dist/browser/config.js +2 -0
- package/dist/browser/config.js.map +1 -0
- package/dist/browser/create-animate.js +41 -0
- package/dist/browser/create-animate.js.map +1 -0
- package/dist/browser/create-ward.js +1001 -0
- package/dist/browser/create-ward.js.map +1 -0
- package/dist/browser/cycle-index.js +17 -0
- package/dist/browser/cycle-index.js.map +1 -0
- package/dist/browser/cycle.js +31 -0
- package/dist/browser/cycle.js.map +1 -0
- package/dist/browser/directive.js +80 -0
- package/dist/browser/directive.js.map +1 -0
- package/dist/browser/drag-constraints.js +76 -0
- package/dist/browser/drag-constraints.js.map +1 -0
- package/dist/browser/drag-controls.js +51 -0
- package/dist/browser/drag-controls.js.map +1 -0
- package/dist/browser/drag-samples.js +40 -0
- package/dist/browser/drag-samples.js.map +1 -0
- package/dist/browser/drag-sensor.js +35 -0
- package/dist/browser/drag-sensor.js.map +1 -0
- package/dist/browser/drag-track.js +817 -0
- package/dist/browser/drag-track.js.map +1 -0
- package/dist/browser/drag-transition.js +56 -0
- package/dist/browser/drag-transition.js.map +1 -0
- package/dist/browser/drag.js +44 -0
- package/dist/browser/drag.js.map +1 -0
- package/dist/browser/element-style.js +67 -0
- package/dist/browser/element-style.js.map +1 -0
- package/dist/browser/element.js +353 -0
- package/dist/browser/element.js.map +1 -0
- package/dist/browser/feature-section.js +17 -0
- package/dist/browser/feature-section.js.map +1 -0
- package/dist/browser/feature.js +261 -0
- package/dist/browser/feature.js.map +1 -0
- package/dist/browser/features/all.js +10 -0
- package/dist/browser/features/all.js.map +1 -0
- package/dist/browser/features/colors.js +33 -0
- package/dist/browser/features/colors.js.map +1 -0
- package/dist/browser/features/dom-animation.js +7 -0
- package/dist/browser/features/dom-animation.js.map +1 -0
- package/dist/browser/features/dom-max.js +4 -0
- package/dist/browser/features/dom-max.js.map +1 -0
- package/dist/browser/features/drag.js +28 -0
- package/dist/browser/features/drag.js.map +1 -0
- package/dist/browser/features/focus.js +18 -0
- package/dist/browser/features/focus.js.map +1 -0
- package/dist/browser/features/hover.js +18 -0
- package/dist/browser/features/hover.js.map +1 -0
- package/dist/browser/features/in-view.js +18 -0
- package/dist/browser/features/in-view.js.map +1 -0
- package/dist/browser/features/input.js +30 -0
- package/dist/browser/features/input.js.map +1 -0
- package/dist/browser/features/keys.js +19 -0
- package/dist/browser/features/keys.js.map +1 -0
- package/dist/browser/features/layout.js +33 -0
- package/dist/browser/features/layout.js.map +1 -0
- package/dist/browser/features/pan.js +18 -0
- package/dist/browser/features/pan.js.map +1 -0
- package/dist/browser/features/press.js +12 -0
- package/dist/browser/features/press.js.map +1 -0
- package/dist/browser/focus-sensor.js +23 -0
- package/dist/browser/focus-sensor.js.map +1 -0
- package/dist/browser/frame-time.js +40 -0
- package/dist/browser/frame-time.js.map +1 -0
- package/dist/browser/gesture-callbacks.js +172 -0
- package/dist/browser/gesture-callbacks.js.map +1 -0
- package/dist/browser/gesture-features.js +29 -0
- package/dist/browser/gesture-features.js.map +1 -0
- package/dist/browser/gesture-info.js +43 -0
- package/dist/browser/gesture-info.js.map +1 -0
- package/dist/browser/hover-sensor.js +29 -0
- package/dist/browser/hover-sensor.js.map +1 -0
- package/dist/browser/imperative.js +614 -0
- package/dist/browser/imperative.js.map +1 -0
- package/dist/browser/index.js +165 -0
- package/dist/browser/index.js.map +1 -0
- package/dist/browser/instant.js +51 -0
- package/dist/browser/instant.js.map +1 -0
- package/dist/browser/layout-group.js +27 -0
- package/dist/browser/layout-group.js.map +1 -0
- package/dist/browser/layout-member.js +362 -0
- package/dist/browser/layout-member.js.map +1 -0
- package/dist/browser/layout-projection.js +19 -0
- package/dist/browser/layout-projection.js.map +1 -0
- package/dist/browser/layout.js +91 -0
- package/dist/browser/layout.js.map +1 -0
- package/dist/browser/live-style.js +313 -0
- package/dist/browser/live-style.js.map +1 -0
- package/dist/browser/live-value.js +252 -0
- package/dist/browser/live-value.js.map +1 -0
- package/dist/browser/motion-props.js +172 -0
- package/dist/browser/motion-props.js.map +1 -0
- package/dist/browser/owner-scope.js +29 -0
- package/dist/browser/owner-scope.js.map +1 -0
- package/dist/browser/page-point.js +92 -0
- package/dist/browser/page-point.js.map +1 -0
- package/dist/browser/presence-controller.js +1324 -0
- package/dist/browser/presence-controller.js.map +1 -0
- package/dist/browser/presence-record.js +27 -0
- package/dist/browser/presence-record.js.map +1 -0
- package/dist/browser/presence.js +207 -0
- package/dist/browser/presence.js.map +1 -0
- package/dist/browser/press-sensor.js +30 -0
- package/dist/browser/press-sensor.js.map +1 -0
- package/dist/browser/press.js +24 -0
- package/dist/browser/press.js.map +1 -0
- package/dist/browser/provider.js +445 -0
- package/dist/browser/provider.js.map +1 -0
- package/dist/browser/reactivity.js +9 -0
- package/dist/browser/reactivity.js.map +1 -0
- package/dist/browser/reorder-input.js +46 -0
- package/dist/browser/reorder-input.js.map +1 -0
- package/dist/browser/reorder.js +543 -0
- package/dist/browser/reorder.js.map +1 -0
- package/dist/browser/retarget-legs.js +1019 -0
- package/dist/browser/retarget-legs.js.map +1 -0
- package/dist/browser/runtime.js +249 -0
- package/dist/browser/runtime.js.map +1 -0
- package/dist/browser/sensors.js +172 -0
- package/dist/browser/sensors.js.map +1 -0
- package/dist/browser/server-interpolators.js +20 -0
- package/dist/browser/server-interpolators.js.map +1 -0
- package/dist/browser/server.js +20 -0
- package/dist/browser/server.js.map +1 -0
- package/dist/browser/solid-reactivity.js +26 -0
- package/dist/browser/solid-reactivity.js.map +1 -0
- package/dist/browser/spine.js +2939 -0
- package/dist/browser/spine.js.map +1 -0
- package/dist/browser/stagger.js +13 -0
- package/dist/browser/stagger.js.map +1 -0
- package/dist/browser/unstable/v2/bridge.js +76 -0
- package/dist/browser/unstable/v2/bridge.js.map +1 -0
- package/dist/browser/unstable/v2/complete.js +29 -0
- package/dist/browser/unstable/v2/complete.js.map +1 -0
- package/dist/browser/unstable/v2/config-view.js +111 -0
- package/dist/browser/unstable/v2/config-view.js.map +1 -0
- package/dist/browser/unstable/v2/create-animate.js +102 -0
- package/dist/browser/unstable/v2/create-animate.js.map +1 -0
- package/dist/browser/unstable/v2/cycle.js +30 -0
- package/dist/browser/unstable/v2/cycle.js.map +1 -0
- package/dist/browser/unstable/v2/drag-sensor.js +34 -0
- package/dist/browser/unstable/v2/drag-sensor.js.map +1 -0
- package/dist/browser/unstable/v2/element.js +393 -0
- package/dist/browser/unstable/v2/element.js.map +1 -0
- package/dist/browser/unstable/v2/feature-section.js +27 -0
- package/dist/browser/unstable/v2/feature-section.js.map +1 -0
- package/dist/browser/unstable/v2/focus-sensor.js +23 -0
- package/dist/browser/unstable/v2/focus-sensor.js.map +1 -0
- package/dist/browser/unstable/v2/hover-sensor.js +28 -0
- package/dist/browser/unstable/v2/hover-sensor.js.map +1 -0
- package/dist/browser/unstable/v2/index.js +114 -0
- package/dist/browser/unstable/v2/index.js.map +1 -0
- package/dist/browser/unstable/v2/layout-projection.js +18 -0
- package/dist/browser/unstable/v2/layout-projection.js.map +1 -0
- package/dist/browser/unstable/v2/layout.js +71 -0
- package/dist/browser/unstable/v2/layout.js.map +1 -0
- package/dist/browser/unstable/v2/lifecycle.js +455 -0
- package/dist/browser/unstable/v2/lifecycle.js.map +1 -0
- package/dist/browser/unstable/v2/live-value.js +264 -0
- package/dist/browser/unstable/v2/live-value.js.map +1 -0
- package/dist/browser/unstable/v2/presence-handle.js +146 -0
- package/dist/browser/unstable/v2/presence-handle.js.map +1 -0
- package/dist/browser/unstable/v2/presence-hooks.js +142 -0
- package/dist/browser/unstable/v2/presence-hooks.js.map +1 -0
- package/dist/browser/unstable/v2/presence.js +124 -0
- package/dist/browser/unstable/v2/presence.js.map +1 -0
- package/dist/browser/unstable/v2/press-sensor.js +29 -0
- package/dist/browser/unstable/v2/press-sensor.js.map +1 -0
- package/dist/browser/unstable/v2/provider.js +457 -0
- package/dist/browser/unstable/v2/provider.js.map +1 -0
- package/dist/browser/unstable/v2/reorder.js +663 -0
- package/dist/browser/unstable/v2/reorder.js.map +1 -0
- package/dist/browser/unstable/v2/sensors.js +138 -0
- package/dist/browser/unstable/v2/sensors.js.map +1 -0
- package/dist/browser/unstable/v2/solid-reactivity.js +82 -0
- package/dist/browser/unstable/v2/solid-reactivity.js.map +1 -0
- package/dist/browser/unstable/v2/variant-node.js +395 -0
- package/dist/browser/unstable/v2/variant-node.js.map +1 -0
- package/dist/browser/unstable/v2/w.js +23 -0
- package/dist/browser/unstable/v2/w.js.map +1 -0
- package/dist/browser/unstable/v2/waiters.js +185 -0
- package/dist/browser/unstable/v2/waiters.js.map +1 -0
- package/dist/browser/unstable/v2/ward.js +1620 -0
- package/dist/browser/unstable/v2/ward.js.map +1 -0
- package/dist/browser/unstable/v2/wardic-config.js +40 -0
- package/dist/browser/unstable/v2/wardic-config.js.map +1 -0
- package/dist/browser/unstable/v2/wardic.js +16 -0
- package/dist/browser/unstable/v2/wardic.js.map +1 -0
- package/dist/browser/variant-node.js +308 -0
- package/dist/browser/variant-node.js.map +1 -0
- package/dist/browser/variant-target.js +224 -0
- package/dist/browser/variant-target.js.map +1 -0
- package/dist/browser/variant-tree.js +394 -0
- package/dist/browser/variant-tree.js.map +1 -0
- package/dist/browser/variants.js +43 -0
- package/dist/browser/variants.js.map +1 -0
- package/dist/browser/w.js +25 -0
- package/dist/browser/w.js.map +1 -0
- package/dist/browser/ward-keys.js +2 -0
- package/dist/browser/ward-keys.js.map +1 -0
- package/dist/browser/wardic-component.js +74 -0
- package/dist/browser/wardic-component.js.map +1 -0
- package/dist/browser/wardic-config-value.js +91 -0
- package/dist/browser/wardic-config-value.js.map +1 -0
- package/dist/browser/wardic-config.js +42 -0
- package/dist/browser/wardic-config.js.map +1 -0
- package/dist/browser/wardic.js +31 -0
- package/dist/browser/wardic.js.map +1 -0
- package/dist/server/animation-controls.js +150 -0
- package/dist/server/animation-controls.js.map +1 -0
- package/dist/server/animation-frame.js +29 -0
- package/dist/server/animation-frame.js.map +1 -0
- package/dist/server/appear.js +727 -0
- package/dist/server/appear.js.map +1 -0
- package/dist/server/arc.js +21 -0
- package/dist/server/arc.js.map +1 -0
- package/dist/server/bridge.js +69 -0
- package/dist/server/bridge.js.map +1 -0
- package/dist/server/complete.js +30 -0
- package/dist/server/complete.js.map +1 -0
- package/dist/server/config.js +2 -0
- package/dist/server/config.js.map +1 -0
- package/dist/server/create-animate.js +41 -0
- package/dist/server/create-animate.js.map +1 -0
- package/dist/server/create-ward.js +1001 -0
- package/dist/server/create-ward.js.map +1 -0
- package/dist/server/cycle-index.js +17 -0
- package/dist/server/cycle-index.js.map +1 -0
- package/dist/server/cycle.js +31 -0
- package/dist/server/cycle.js.map +1 -0
- package/dist/server/directive.js +80 -0
- package/dist/server/directive.js.map +1 -0
- package/dist/server/drag-constraints.js +76 -0
- package/dist/server/drag-constraints.js.map +1 -0
- package/dist/server/drag-controls.js +51 -0
- package/dist/server/drag-controls.js.map +1 -0
- package/dist/server/drag-samples.js +40 -0
- package/dist/server/drag-samples.js.map +1 -0
- package/dist/server/drag-sensor.js +35 -0
- package/dist/server/drag-sensor.js.map +1 -0
- package/dist/server/drag-track.js +817 -0
- package/dist/server/drag-track.js.map +1 -0
- package/dist/server/drag-transition.js +56 -0
- package/dist/server/drag-transition.js.map +1 -0
- package/dist/server/drag.js +44 -0
- package/dist/server/drag.js.map +1 -0
- package/dist/server/element-style.js +67 -0
- package/dist/server/element-style.js.map +1 -0
- package/dist/server/element.js +353 -0
- package/dist/server/element.js.map +1 -0
- package/dist/server/feature-section.js +17 -0
- package/dist/server/feature-section.js.map +1 -0
- package/dist/server/feature.js +261 -0
- package/dist/server/feature.js.map +1 -0
- package/dist/server/features/all.js +10 -0
- package/dist/server/features/all.js.map +1 -0
- package/dist/server/features/colors.js +33 -0
- package/dist/server/features/colors.js.map +1 -0
- package/dist/server/features/dom-animation.js +7 -0
- package/dist/server/features/dom-animation.js.map +1 -0
- package/dist/server/features/dom-max.js +4 -0
- package/dist/server/features/dom-max.js.map +1 -0
- package/dist/server/features/drag.js +28 -0
- package/dist/server/features/drag.js.map +1 -0
- package/dist/server/features/focus.js +18 -0
- package/dist/server/features/focus.js.map +1 -0
- package/dist/server/features/hover.js +18 -0
- package/dist/server/features/hover.js.map +1 -0
- package/dist/server/features/in-view.js +18 -0
- package/dist/server/features/in-view.js.map +1 -0
- package/dist/server/features/input.js +30 -0
- package/dist/server/features/input.js.map +1 -0
- package/dist/server/features/keys.js +19 -0
- package/dist/server/features/keys.js.map +1 -0
- package/dist/server/features/layout.js +33 -0
- package/dist/server/features/layout.js.map +1 -0
- package/dist/server/features/pan.js +18 -0
- package/dist/server/features/pan.js.map +1 -0
- package/dist/server/features/press.js +12 -0
- package/dist/server/features/press.js.map +1 -0
- package/dist/server/focus-sensor.js +23 -0
- package/dist/server/focus-sensor.js.map +1 -0
- package/dist/server/frame-time.js +40 -0
- package/dist/server/frame-time.js.map +1 -0
- package/dist/server/gesture-callbacks.js +172 -0
- package/dist/server/gesture-callbacks.js.map +1 -0
- package/dist/server/gesture-features.js +29 -0
- package/dist/server/gesture-features.js.map +1 -0
- package/dist/server/gesture-info.js +43 -0
- package/dist/server/gesture-info.js.map +1 -0
- package/dist/server/hover-sensor.js +29 -0
- package/dist/server/hover-sensor.js.map +1 -0
- package/dist/server/imperative.js +614 -0
- package/dist/server/imperative.js.map +1 -0
- package/dist/server/index.js +165 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/instant.js +51 -0
- package/dist/server/instant.js.map +1 -0
- package/dist/server/layout-group.js +27 -0
- package/dist/server/layout-group.js.map +1 -0
- package/dist/server/layout-member.js +362 -0
- package/dist/server/layout-member.js.map +1 -0
- package/dist/server/layout-projection.js +19 -0
- package/dist/server/layout-projection.js.map +1 -0
- package/dist/server/layout.js +90 -0
- package/dist/server/layout.js.map +1 -0
- package/dist/server/live-style.js +313 -0
- package/dist/server/live-style.js.map +1 -0
- package/dist/server/live-value.js +252 -0
- package/dist/server/live-value.js.map +1 -0
- package/dist/server/motion-props.js +172 -0
- package/dist/server/motion-props.js.map +1 -0
- package/dist/server/owner-scope.js +29 -0
- package/dist/server/owner-scope.js.map +1 -0
- package/dist/server/page-point.js +92 -0
- package/dist/server/page-point.js.map +1 -0
- package/dist/server/presence-controller.js +1324 -0
- package/dist/server/presence-controller.js.map +1 -0
- package/dist/server/presence-record.js +27 -0
- package/dist/server/presence-record.js.map +1 -0
- package/dist/server/presence.js +207 -0
- package/dist/server/presence.js.map +1 -0
- package/dist/server/press-sensor.js +30 -0
- package/dist/server/press-sensor.js.map +1 -0
- package/dist/server/press.js +24 -0
- package/dist/server/press.js.map +1 -0
- package/dist/server/provider.js +439 -0
- package/dist/server/provider.js.map +1 -0
- package/dist/server/reactivity.js +9 -0
- package/dist/server/reactivity.js.map +1 -0
- package/dist/server/reorder-input.js +46 -0
- package/dist/server/reorder-input.js.map +1 -0
- package/dist/server/reorder.js +543 -0
- package/dist/server/reorder.js.map +1 -0
- package/dist/server/retarget-legs.js +1019 -0
- package/dist/server/retarget-legs.js.map +1 -0
- package/dist/server/runtime.js +249 -0
- package/dist/server/runtime.js.map +1 -0
- package/dist/server/sensors.js +172 -0
- package/dist/server/sensors.js.map +1 -0
- package/dist/server/server-interpolators.js +20 -0
- package/dist/server/server-interpolators.js.map +1 -0
- package/dist/server/server.js +20 -0
- package/dist/server/server.js.map +1 -0
- package/dist/server/solid-reactivity.js +26 -0
- package/dist/server/solid-reactivity.js.map +1 -0
- package/dist/server/spine.js +2939 -0
- package/dist/server/spine.js.map +1 -0
- package/dist/server/stagger.js +13 -0
- package/dist/server/stagger.js.map +1 -0
- package/dist/server/unstable/v2/bridge.js +76 -0
- package/dist/server/unstable/v2/bridge.js.map +1 -0
- package/dist/server/unstable/v2/complete.js +29 -0
- package/dist/server/unstable/v2/complete.js.map +1 -0
- package/dist/server/unstable/v2/config-view.js +111 -0
- package/dist/server/unstable/v2/config-view.js.map +1 -0
- package/dist/server/unstable/v2/create-animate.js +102 -0
- package/dist/server/unstable/v2/create-animate.js.map +1 -0
- package/dist/server/unstable/v2/cycle.js +30 -0
- package/dist/server/unstable/v2/cycle.js.map +1 -0
- package/dist/server/unstable/v2/drag-sensor.js +34 -0
- package/dist/server/unstable/v2/drag-sensor.js.map +1 -0
- package/dist/server/unstable/v2/element.js +402 -0
- package/dist/server/unstable/v2/element.js.map +1 -0
- package/dist/server/unstable/v2/feature-section.js +27 -0
- package/dist/server/unstable/v2/feature-section.js.map +1 -0
- package/dist/server/unstable/v2/focus-sensor.js +23 -0
- package/dist/server/unstable/v2/focus-sensor.js.map +1 -0
- package/dist/server/unstable/v2/hover-sensor.js +28 -0
- package/dist/server/unstable/v2/hover-sensor.js.map +1 -0
- package/dist/server/unstable/v2/index.js +114 -0
- package/dist/server/unstable/v2/index.js.map +1 -0
- package/dist/server/unstable/v2/layout-projection.js +18 -0
- package/dist/server/unstable/v2/layout-projection.js.map +1 -0
- package/dist/server/unstable/v2/layout.js +88 -0
- package/dist/server/unstable/v2/layout.js.map +1 -0
- package/dist/server/unstable/v2/lifecycle.js +455 -0
- package/dist/server/unstable/v2/lifecycle.js.map +1 -0
- package/dist/server/unstable/v2/live-value.js +264 -0
- package/dist/server/unstable/v2/live-value.js.map +1 -0
- package/dist/server/unstable/v2/presence-handle.js +146 -0
- package/dist/server/unstable/v2/presence-handle.js.map +1 -0
- package/dist/server/unstable/v2/presence-hooks.js +142 -0
- package/dist/server/unstable/v2/presence-hooks.js.map +1 -0
- package/dist/server/unstable/v2/presence.js +142 -0
- package/dist/server/unstable/v2/presence.js.map +1 -0
- package/dist/server/unstable/v2/press-sensor.js +29 -0
- package/dist/server/unstable/v2/press-sensor.js.map +1 -0
- package/dist/server/unstable/v2/provider.js +475 -0
- package/dist/server/unstable/v2/provider.js.map +1 -0
- package/dist/server/unstable/v2/reorder.js +733 -0
- package/dist/server/unstable/v2/reorder.js.map +1 -0
- package/dist/server/unstable/v2/sensors.js +138 -0
- package/dist/server/unstable/v2/sensors.js.map +1 -0
- package/dist/server/unstable/v2/solid-reactivity.js +82 -0
- package/dist/server/unstable/v2/solid-reactivity.js.map +1 -0
- package/dist/server/unstable/v2/variant-node.js +395 -0
- package/dist/server/unstable/v2/variant-node.js.map +1 -0
- package/dist/server/unstable/v2/w.js +23 -0
- package/dist/server/unstable/v2/w.js.map +1 -0
- package/dist/server/unstable/v2/waiters.js +185 -0
- package/dist/server/unstable/v2/waiters.js.map +1 -0
- package/dist/server/unstable/v2/ward.js +1653 -0
- package/dist/server/unstable/v2/ward.js.map +1 -0
- package/dist/server/unstable/v2/wardic-config.js +49 -0
- package/dist/server/unstable/v2/wardic-config.js.map +1 -0
- package/dist/server/unstable/v2/wardic.js +16 -0
- package/dist/server/unstable/v2/wardic.js.map +1 -0
- package/dist/server/variant-node.js +308 -0
- package/dist/server/variant-node.js.map +1 -0
- package/dist/server/variant-target.js +224 -0
- package/dist/server/variant-target.js.map +1 -0
- package/dist/server/variant-tree.js +394 -0
- package/dist/server/variant-tree.js.map +1 -0
- package/dist/server/variants.js +43 -0
- package/dist/server/variants.js.map +1 -0
- package/dist/server/w.js +25 -0
- package/dist/server/w.js.map +1 -0
- package/dist/server/ward-keys.js +2 -0
- package/dist/server/ward-keys.js.map +1 -0
- package/dist/server/wardic-component.js +74 -0
- package/dist/server/wardic-component.js.map +1 -0
- package/dist/server/wardic-config-value.js +91 -0
- package/dist/server/wardic-config-value.js.map +1 -0
- package/dist/server/wardic-config.js +42 -0
- package/dist/server/wardic-config.js.map +1 -0
- package/dist/server/wardic.js +31 -0
- package/dist/server/wardic.js.map +1 -0
- package/dist/solid/animation-controls.d.ts +104 -0
- package/dist/solid/animation-controls.d.ts.map +1 -0
- package/dist/solid/animation-controls.js +129 -0
- package/dist/solid/animation-controls.js.map +1 -0
- package/dist/solid/animation-frame.d.ts +11 -0
- package/dist/solid/animation-frame.d.ts.map +1 -0
- package/dist/solid/animation-frame.js +31 -0
- package/dist/solid/animation-frame.js.map +1 -0
- package/dist/solid/appear.d.ts +205 -0
- package/dist/solid/appear.d.ts.map +1 -0
- package/dist/solid/appear.js +519 -0
- package/dist/solid/appear.js.map +1 -0
- package/dist/solid/arc.d.ts +25 -0
- package/dist/solid/arc.d.ts.map +1 -0
- package/dist/solid/arc.js +21 -0
- package/dist/solid/arc.js.map +1 -0
- package/dist/solid/bridge.d.ts +53 -0
- package/dist/solid/bridge.d.ts.map +1 -0
- package/dist/solid/bridge.js +66 -0
- package/dist/solid/bridge.js.map +1 -0
- package/dist/solid/complete.d.ts +31 -0
- package/dist/solid/complete.d.ts.map +1 -0
- package/dist/solid/complete.js +27 -0
- package/dist/solid/complete.js.map +1 -0
- package/dist/solid/config.d.ts +693 -0
- package/dist/solid/config.d.ts.map +1 -0
- package/dist/solid/config.js +2 -0
- package/dist/solid/config.js.map +1 -0
- package/dist/solid/create-animate.d.ts +17 -0
- package/dist/solid/create-animate.d.ts.map +1 -0
- package/dist/solid/create-animate.js +42 -0
- package/dist/solid/create-animate.js.map +1 -0
- package/dist/solid/create-ward.d.ts +278 -0
- package/dist/solid/create-ward.d.ts.map +1 -0
- package/dist/solid/create-ward.jsx +874 -0
- package/dist/solid/create-ward.jsx.map +1 -0
- package/dist/solid/cycle-index.d.ts +7 -0
- package/dist/solid/cycle-index.d.ts.map +1 -0
- package/dist/solid/cycle-index.js +17 -0
- package/dist/solid/cycle-index.js.map +1 -0
- package/dist/solid/cycle.d.ts +21 -0
- package/dist/solid/cycle.d.ts.map +1 -0
- package/dist/solid/cycle.js +31 -0
- package/dist/solid/cycle.js.map +1 -0
- package/dist/solid/directive.d.ts +21 -0
- package/dist/solid/directive.d.ts.map +1 -0
- package/dist/solid/directive.js +76 -0
- package/dist/solid/directive.js.map +1 -0
- package/dist/solid/drag-constraints.d.ts +46 -0
- package/dist/solid/drag-constraints.d.ts.map +1 -0
- package/dist/solid/drag-constraints.js +49 -0
- package/dist/solid/drag-constraints.js.map +1 -0
- package/dist/solid/drag-controls.d.ts +50 -0
- package/dist/solid/drag-controls.d.ts.map +1 -0
- package/dist/solid/drag-controls.js +51 -0
- package/dist/solid/drag-controls.js.map +1 -0
- package/dist/solid/drag-samples.d.ts +34 -0
- package/dist/solid/drag-samples.d.ts.map +1 -0
- package/dist/solid/drag-samples.js +28 -0
- package/dist/solid/drag-samples.js.map +1 -0
- package/dist/solid/drag-sensor.d.ts +23 -0
- package/dist/solid/drag-sensor.d.ts.map +1 -0
- package/dist/solid/drag-sensor.js +33 -0
- package/dist/solid/drag-sensor.js.map +1 -0
- package/dist/solid/drag-track.d.ts +227 -0
- package/dist/solid/drag-track.d.ts.map +1 -0
- package/dist/solid/drag-track.js +631 -0
- package/dist/solid/drag-track.js.map +1 -0
- package/dist/solid/drag-transition.d.ts +20 -0
- package/dist/solid/drag-transition.d.ts.map +1 -0
- package/dist/solid/drag-transition.js +31 -0
- package/dist/solid/drag-transition.js.map +1 -0
- package/dist/solid/drag.d.ts +23 -0
- package/dist/solid/drag.d.ts.map +1 -0
- package/dist/solid/drag.js +44 -0
- package/dist/solid/drag.js.map +1 -0
- package/dist/solid/element-style.d.ts +60 -0
- package/dist/solid/element-style.d.ts.map +1 -0
- package/dist/solid/element-style.js +50 -0
- package/dist/solid/element-style.js.map +1 -0
- package/dist/solid/element.d.ts +73 -0
- package/dist/solid/element.d.ts.map +1 -0
- package/dist/solid/element.jsx +326 -0
- package/dist/solid/element.jsx.map +1 -0
- package/dist/solid/feature-section.d.ts +18 -0
- package/dist/solid/feature-section.d.ts.map +1 -0
- package/dist/solid/feature-section.js +13 -0
- package/dist/solid/feature-section.js.map +1 -0
- package/dist/solid/feature.d.ts +114 -0
- package/dist/solid/feature.d.ts.map +1 -0
- package/dist/solid/feature.js +248 -0
- package/dist/solid/feature.js.map +1 -0
- package/dist/solid/features/all.d.ts +10 -0
- package/dist/solid/features/all.d.ts.map +1 -0
- package/dist/solid/features/all.js +10 -0
- package/dist/solid/features/all.js.map +1 -0
- package/dist/solid/features/colors.d.ts +12 -0
- package/dist/solid/features/colors.d.ts.map +1 -0
- package/dist/solid/features/colors.js +34 -0
- package/dist/solid/features/colors.js.map +1 -0
- package/dist/solid/features/dom-animation.d.ts +11 -0
- package/dist/solid/features/dom-animation.d.ts.map +1 -0
- package/dist/solid/features/dom-animation.js +7 -0
- package/dist/solid/features/dom-animation.js.map +1 -0
- package/dist/solid/features/dom-max.d.ts +10 -0
- package/dist/solid/features/dom-max.d.ts.map +1 -0
- package/dist/solid/features/dom-max.js +4 -0
- package/dist/solid/features/dom-max.js.map +1 -0
- package/dist/solid/features/drag.d.ts +5 -0
- package/dist/solid/features/drag.d.ts.map +1 -0
- package/dist/solid/features/drag.js +28 -0
- package/dist/solid/features/drag.js.map +1 -0
- package/dist/solid/features/focus.d.ts +5 -0
- package/dist/solid/features/focus.d.ts.map +1 -0
- package/dist/solid/features/focus.js +16 -0
- package/dist/solid/features/focus.js.map +1 -0
- package/dist/solid/features/hover.d.ts +5 -0
- package/dist/solid/features/hover.d.ts.map +1 -0
- package/dist/solid/features/hover.js +16 -0
- package/dist/solid/features/hover.js.map +1 -0
- package/dist/solid/features/in-view.d.ts +5 -0
- package/dist/solid/features/in-view.d.ts.map +1 -0
- package/dist/solid/features/in-view.js +16 -0
- package/dist/solid/features/in-view.js.map +1 -0
- package/dist/solid/features/input.d.ts +26 -0
- package/dist/solid/features/input.d.ts.map +1 -0
- package/dist/solid/features/input.js +31 -0
- package/dist/solid/features/input.js.map +1 -0
- package/dist/solid/features/keys.d.ts +70 -0
- package/dist/solid/features/keys.d.ts.map +1 -0
- package/dist/solid/features/keys.js +26 -0
- package/dist/solid/features/keys.js.map +1 -0
- package/dist/solid/features/layout.d.ts +32 -0
- package/dist/solid/features/layout.d.ts.map +1 -0
- package/dist/solid/features/layout.js +34 -0
- package/dist/solid/features/layout.js.map +1 -0
- package/dist/solid/features/pan.d.ts +5 -0
- package/dist/solid/features/pan.d.ts.map +1 -0
- package/dist/solid/features/pan.js +16 -0
- package/dist/solid/features/pan.js.map +1 -0
- package/dist/solid/features/press.d.ts +11 -0
- package/dist/solid/features/press.d.ts.map +1 -0
- package/dist/solid/features/press.js +10 -0
- package/dist/solid/features/press.js.map +1 -0
- package/dist/solid/focus-sensor.d.ts +19 -0
- package/dist/solid/focus-sensor.d.ts.map +1 -0
- package/dist/solid/focus-sensor.js +23 -0
- package/dist/solid/focus-sensor.js.map +1 -0
- package/dist/solid/frame-time.d.ts +21 -0
- package/dist/solid/frame-time.d.ts.map +1 -0
- package/dist/solid/frame-time.js +41 -0
- package/dist/solid/frame-time.js.map +1 -0
- package/dist/solid/gesture-callbacks.d.ts +53 -0
- package/dist/solid/gesture-callbacks.d.ts.map +1 -0
- package/dist/solid/gesture-callbacks.js +184 -0
- package/dist/solid/gesture-callbacks.js.map +1 -0
- package/dist/solid/gesture-features.d.ts +28 -0
- package/dist/solid/gesture-features.d.ts.map +1 -0
- package/dist/solid/gesture-features.js +29 -0
- package/dist/solid/gesture-features.js.map +1 -0
- package/dist/solid/gesture-info.d.ts +59 -0
- package/dist/solid/gesture-info.d.ts.map +1 -0
- package/dist/solid/gesture-info.js +23 -0
- package/dist/solid/gesture-info.js.map +1 -0
- package/dist/solid/hover-sensor.d.ts +19 -0
- package/dist/solid/hover-sensor.d.ts.map +1 -0
- package/dist/solid/hover-sensor.js +23 -0
- package/dist/solid/hover-sensor.js.map +1 -0
- package/dist/solid/imperative.d.ts +195 -0
- package/dist/solid/imperative.d.ts.map +1 -0
- package/dist/solid/imperative.js +536 -0
- package/dist/solid/imperative.js.map +1 -0
- package/dist/solid/index.d.ts +180 -0
- package/dist/solid/index.d.ts.map +1 -0
- package/dist/solid/index.js +165 -0
- package/dist/solid/index.js.map +1 -0
- package/dist/solid/instant.d.ts +44 -0
- package/dist/solid/instant.d.ts.map +1 -0
- package/dist/solid/instant.js +49 -0
- package/dist/solid/instant.js.map +1 -0
- package/dist/solid/layout-group.d.ts +14 -0
- package/dist/solid/layout-group.d.ts.map +1 -0
- package/dist/solid/layout-group.js +27 -0
- package/dist/solid/layout-group.js.map +1 -0
- package/dist/solid/layout-member.d.ts +117 -0
- package/dist/solid/layout-member.d.ts.map +1 -0
- package/dist/solid/layout-member.js +164 -0
- package/dist/solid/layout-member.js.map +1 -0
- package/dist/solid/layout-projection.d.ts +22 -0
- package/dist/solid/layout-projection.d.ts.map +1 -0
- package/dist/solid/layout-projection.js +19 -0
- package/dist/solid/layout-projection.js.map +1 -0
- package/dist/solid/layout.d.ts +76 -0
- package/dist/solid/layout.d.ts.map +1 -0
- package/dist/solid/layout.jsx +80 -0
- package/dist/solid/layout.jsx.map +1 -0
- package/dist/solid/live-style.d.ts +147 -0
- package/dist/solid/live-style.d.ts.map +1 -0
- package/dist/solid/live-style.js +304 -0
- package/dist/solid/live-style.js.map +1 -0
- package/dist/solid/live-value.d.ts +144 -0
- package/dist/solid/live-value.d.ts.map +1 -0
- package/dist/solid/live-value.js +223 -0
- package/dist/solid/live-value.js.map +1 -0
- package/dist/solid/motion-props.d.ts +75 -0
- package/dist/solid/motion-props.d.ts.map +1 -0
- package/dist/solid/motion-props.js +314 -0
- package/dist/solid/motion-props.js.map +1 -0
- package/dist/solid/owner-scope.d.ts +16 -0
- package/dist/solid/owner-scope.d.ts.map +1 -0
- package/dist/solid/owner-scope.js +31 -0
- package/dist/solid/owner-scope.js.map +1 -0
- package/dist/solid/page-point.d.ts +35 -0
- package/dist/solid/page-point.d.ts.map +1 -0
- package/dist/solid/page-point.js +87 -0
- package/dist/solid/page-point.js.map +1 -0
- package/dist/solid/presence-controller.d.ts +122 -0
- package/dist/solid/presence-controller.d.ts.map +1 -0
- package/dist/solid/presence-controller.js +1207 -0
- package/dist/solid/presence-controller.js.map +1 -0
- package/dist/solid/presence-record.d.ts +167 -0
- package/dist/solid/presence-record.d.ts.map +1 -0
- package/dist/solid/presence-record.js +26 -0
- package/dist/solid/presence-record.js.map +1 -0
- package/dist/solid/presence.d.ts +95 -0
- package/dist/solid/presence.d.ts.map +1 -0
- package/dist/solid/presence.jsx +195 -0
- package/dist/solid/presence.jsx.map +1 -0
- package/dist/solid/press-sensor.d.ts +20 -0
- package/dist/solid/press-sensor.d.ts.map +1 -0
- package/dist/solid/press-sensor.js +24 -0
- package/dist/solid/press-sensor.js.map +1 -0
- package/dist/solid/press.d.ts +24 -0
- package/dist/solid/press.d.ts.map +1 -0
- package/dist/solid/press.js +19 -0
- package/dist/solid/press.js.map +1 -0
- package/dist/solid/provider.d.ts +263 -0
- package/dist/solid/provider.d.ts.map +1 -0
- package/dist/solid/provider.jsx +411 -0
- package/dist/solid/provider.jsx.map +1 -0
- package/dist/solid/reactivity.d.ts +27 -0
- package/dist/solid/reactivity.d.ts.map +1 -0
- package/dist/solid/reactivity.js +9 -0
- package/dist/solid/reactivity.js.map +1 -0
- package/dist/solid/reorder-input.d.ts +22 -0
- package/dist/solid/reorder-input.d.ts.map +1 -0
- package/dist/solid/reorder-input.js +45 -0
- package/dist/solid/reorder-input.js.map +1 -0
- package/dist/solid/reorder.d.ts +241 -0
- package/dist/solid/reorder.d.ts.map +1 -0
- package/dist/solid/reorder.jsx +427 -0
- package/dist/solid/reorder.jsx.map +1 -0
- package/dist/solid/retarget-legs.d.ts +189 -0
- package/dist/solid/retarget-legs.d.ts.map +1 -0
- package/dist/solid/retarget-legs.js +825 -0
- package/dist/solid/retarget-legs.js.map +1 -0
- package/dist/solid/runtime.d.ts +179 -0
- package/dist/solid/runtime.d.ts.map +1 -0
- package/dist/solid/runtime.js +237 -0
- package/dist/solid/runtime.js.map +1 -0
- package/dist/solid/sensors.d.ts +95 -0
- package/dist/solid/sensors.d.ts.map +1 -0
- package/dist/solid/sensors.js +154 -0
- package/dist/solid/sensors.js.map +1 -0
- package/dist/solid/server-interpolators.d.ts +13 -0
- package/dist/solid/server-interpolators.d.ts.map +1 -0
- package/dist/solid/server-interpolators.js +20 -0
- package/dist/solid/server-interpolators.js.map +1 -0
- package/dist/solid/server.d.ts +9 -0
- package/dist/solid/server.d.ts.map +1 -0
- package/dist/solid/server.js +20 -0
- package/dist/solid/server.js.map +1 -0
- package/dist/solid/solid-reactivity.d.ts +3 -0
- package/dist/solid/solid-reactivity.d.ts.map +1 -0
- package/dist/solid/solid-reactivity.js +19 -0
- package/dist/solid/solid-reactivity.js.map +1 -0
- package/dist/solid/spine.d.ts +597 -0
- package/dist/solid/spine.d.ts.map +1 -0
- package/dist/solid/spine.js +2761 -0
- package/dist/solid/spine.js.map +1 -0
- package/dist/solid/stagger.d.ts +29 -0
- package/dist/solid/stagger.d.ts.map +1 -0
- package/dist/solid/stagger.js +13 -0
- package/dist/solid/stagger.js.map +1 -0
- package/dist/solid/unstable/v2/bridge.d.ts +33 -0
- package/dist/solid/unstable/v2/bridge.d.ts.map +1 -0
- package/dist/solid/unstable/v2/bridge.js +76 -0
- package/dist/solid/unstable/v2/bridge.js.map +1 -0
- package/dist/solid/unstable/v2/complete.d.ts +21 -0
- package/dist/solid/unstable/v2/complete.d.ts.map +1 -0
- package/dist/solid/unstable/v2/complete.js +27 -0
- package/dist/solid/unstable/v2/complete.js.map +1 -0
- package/dist/solid/unstable/v2/config-view.d.ts +49 -0
- package/dist/solid/unstable/v2/config-view.d.ts.map +1 -0
- package/dist/solid/unstable/v2/config-view.js +114 -0
- package/dist/solid/unstable/v2/config-view.js.map +1 -0
- package/dist/solid/unstable/v2/create-animate.d.ts +31 -0
- package/dist/solid/unstable/v2/create-animate.d.ts.map +1 -0
- package/dist/solid/unstable/v2/create-animate.js +102 -0
- package/dist/solid/unstable/v2/create-animate.js.map +1 -0
- package/dist/solid/unstable/v2/cycle.d.ts +20 -0
- package/dist/solid/unstable/v2/cycle.d.ts.map +1 -0
- package/dist/solid/unstable/v2/cycle.js +30 -0
- package/dist/solid/unstable/v2/cycle.js.map +1 -0
- package/dist/solid/unstable/v2/drag-sensor.d.ts +23 -0
- package/dist/solid/unstable/v2/drag-sensor.d.ts.map +1 -0
- package/dist/solid/unstable/v2/drag-sensor.js +32 -0
- package/dist/solid/unstable/v2/drag-sensor.js.map +1 -0
- package/dist/solid/unstable/v2/element.d.ts +178 -0
- package/dist/solid/unstable/v2/element.d.ts.map +1 -0
- package/dist/solid/unstable/v2/element.jsx +325 -0
- package/dist/solid/unstable/v2/element.jsx.map +1 -0
- package/dist/solid/unstable/v2/feature-section.d.ts +12 -0
- package/dist/solid/unstable/v2/feature-section.d.ts.map +1 -0
- package/dist/solid/unstable/v2/feature-section.js +23 -0
- package/dist/solid/unstable/v2/feature-section.js.map +1 -0
- package/dist/solid/unstable/v2/focus-sensor.d.ts +13 -0
- package/dist/solid/unstable/v2/focus-sensor.d.ts.map +1 -0
- package/dist/solid/unstable/v2/focus-sensor.js +23 -0
- package/dist/solid/unstable/v2/focus-sensor.js.map +1 -0
- package/dist/solid/unstable/v2/hover-sensor.d.ts +12 -0
- package/dist/solid/unstable/v2/hover-sensor.d.ts.map +1 -0
- package/dist/solid/unstable/v2/hover-sensor.js +22 -0
- package/dist/solid/unstable/v2/hover-sensor.js.map +1 -0
- package/dist/solid/unstable/v2/index.d.ts +131 -0
- package/dist/solid/unstable/v2/index.d.ts.map +1 -0
- package/dist/solid/unstable/v2/index.js +114 -0
- package/dist/solid/unstable/v2/index.js.map +1 -0
- package/dist/solid/unstable/v2/layout-projection.d.ts +21 -0
- package/dist/solid/unstable/v2/layout-projection.d.ts.map +1 -0
- package/dist/solid/unstable/v2/layout-projection.js +18 -0
- package/dist/solid/unstable/v2/layout-projection.js.map +1 -0
- package/dist/solid/unstable/v2/layout.d.ts +47 -0
- package/dist/solid/unstable/v2/layout.d.ts.map +1 -0
- package/dist/solid/unstable/v2/layout.jsx +62 -0
- package/dist/solid/unstable/v2/layout.jsx.map +1 -0
- package/dist/solid/unstable/v2/lifecycle.d.ts +267 -0
- package/dist/solid/unstable/v2/lifecycle.d.ts.map +1 -0
- package/dist/solid/unstable/v2/lifecycle.js +457 -0
- package/dist/solid/unstable/v2/lifecycle.js.map +1 -0
- package/dist/solid/unstable/v2/live-value.d.ts +146 -0
- package/dist/solid/unstable/v2/live-value.d.ts.map +1 -0
- package/dist/solid/unstable/v2/live-value.js +235 -0
- package/dist/solid/unstable/v2/live-value.js.map +1 -0
- package/dist/solid/unstable/v2/presence-handle.d.ts +55 -0
- package/dist/solid/unstable/v2/presence-handle.d.ts.map +1 -0
- package/dist/solid/unstable/v2/presence-handle.js +119 -0
- package/dist/solid/unstable/v2/presence-handle.js.map +1 -0
- package/dist/solid/unstable/v2/presence-hooks.d.ts +51 -0
- package/dist/solid/unstable/v2/presence-hooks.d.ts.map +1 -0
- package/dist/solid/unstable/v2/presence-hooks.js +115 -0
- package/dist/solid/unstable/v2/presence-hooks.js.map +1 -0
- package/dist/solid/unstable/v2/presence.d.ts +89 -0
- package/dist/solid/unstable/v2/presence.d.ts.map +1 -0
- package/dist/solid/unstable/v2/presence.jsx +107 -0
- package/dist/solid/unstable/v2/presence.jsx.map +1 -0
- package/dist/solid/unstable/v2/press-sensor.d.ts +13 -0
- package/dist/solid/unstable/v2/press-sensor.d.ts.map +1 -0
- package/dist/solid/unstable/v2/press-sensor.js +23 -0
- package/dist/solid/unstable/v2/press-sensor.js.map +1 -0
- package/dist/solid/unstable/v2/provider.d.ts +239 -0
- package/dist/solid/unstable/v2/provider.d.ts.map +1 -0
- package/dist/solid/unstable/v2/provider.jsx +423 -0
- package/dist/solid/unstable/v2/provider.jsx.map +1 -0
- package/dist/solid/unstable/v2/reorder.d.ts +292 -0
- package/dist/solid/unstable/v2/reorder.d.ts.map +1 -0
- package/dist/solid/unstable/v2/reorder.jsx +525 -0
- package/dist/solid/unstable/v2/reorder.jsx.map +1 -0
- package/dist/solid/unstable/v2/sensors.d.ts +91 -0
- package/dist/solid/unstable/v2/sensors.d.ts.map +1 -0
- package/dist/solid/unstable/v2/sensors.js +124 -0
- package/dist/solid/unstable/v2/sensors.js.map +1 -0
- package/dist/solid/unstable/v2/solid-reactivity.d.ts +61 -0
- package/dist/solid/unstable/v2/solid-reactivity.d.ts.map +1 -0
- package/dist/solid/unstable/v2/solid-reactivity.js +62 -0
- package/dist/solid/unstable/v2/solid-reactivity.js.map +1 -0
- package/dist/solid/unstable/v2/variant-node.d.ts +51 -0
- package/dist/solid/unstable/v2/variant-node.d.ts.map +1 -0
- package/dist/solid/unstable/v2/variant-node.js +336 -0
- package/dist/solid/unstable/v2/variant-node.js.map +1 -0
- package/dist/solid/unstable/v2/w.d.ts +42 -0
- package/dist/solid/unstable/v2/w.d.ts.map +1 -0
- package/dist/solid/unstable/v2/w.jsx +22 -0
- package/dist/solid/unstable/v2/w.jsx.map +1 -0
- package/dist/solid/unstable/v2/waiters.d.ts +72 -0
- package/dist/solid/unstable/v2/waiters.d.ts.map +1 -0
- package/dist/solid/unstable/v2/waiters.js +175 -0
- package/dist/solid/unstable/v2/waiters.js.map +1 -0
- package/dist/solid/unstable/v2/ward.d.ts +393 -0
- package/dist/solid/unstable/v2/ward.d.ts.map +1 -0
- package/dist/solid/unstable/v2/ward.jsx +1475 -0
- package/dist/solid/unstable/v2/ward.jsx.map +1 -0
- package/dist/solid/unstable/v2/wardic-config.d.ts +68 -0
- package/dist/solid/unstable/v2/wardic-config.d.ts.map +1 -0
- package/dist/solid/unstable/v2/wardic-config.jsx +28 -0
- package/dist/solid/unstable/v2/wardic-config.jsx.map +1 -0
- package/dist/solid/unstable/v2/wardic.d.ts +28 -0
- package/dist/solid/unstable/v2/wardic.d.ts.map +1 -0
- package/dist/solid/unstable/v2/wardic.jsx +16 -0
- package/dist/solid/unstable/v2/wardic.jsx.map +1 -0
- package/dist/solid/variant-node.d.ts +32 -0
- package/dist/solid/variant-node.d.ts.map +1 -0
- package/dist/solid/variant-node.js +257 -0
- package/dist/solid/variant-node.js.map +1 -0
- package/dist/solid/variant-target.d.ts +102 -0
- package/dist/solid/variant-target.d.ts.map +1 -0
- package/dist/solid/variant-target.js +180 -0
- package/dist/solid/variant-target.js.map +1 -0
- package/dist/solid/variant-tree.d.ts +349 -0
- package/dist/solid/variant-tree.d.ts.map +1 -0
- package/dist/solid/variant-tree.js +358 -0
- package/dist/solid/variant-tree.js.map +1 -0
- package/dist/solid/variants.d.ts +21 -0
- package/dist/solid/variants.d.ts.map +1 -0
- package/dist/solid/variants.js +43 -0
- package/dist/solid/variants.js.map +1 -0
- package/dist/solid/w.d.ts +42 -0
- package/dist/solid/w.d.ts.map +1 -0
- package/dist/solid/w.jsx +23 -0
- package/dist/solid/w.jsx.map +1 -0
- package/dist/solid/ward-keys.d.ts +236 -0
- package/dist/solid/ward-keys.d.ts.map +1 -0
- package/dist/solid/ward-keys.js +2 -0
- package/dist/solid/ward-keys.js.map +1 -0
- package/dist/solid/wardic-component.d.ts +50 -0
- package/dist/solid/wardic-component.d.ts.map +1 -0
- package/dist/solid/wardic-component.js +74 -0
- package/dist/solid/wardic-component.js.map +1 -0
- package/dist/solid/wardic-config-value.d.ts +87 -0
- package/dist/solid/wardic-config-value.d.ts.map +1 -0
- package/dist/solid/wardic-config-value.js +106 -0
- package/dist/solid/wardic-config-value.js.map +1 -0
- package/dist/solid/wardic-config.d.ts +69 -0
- package/dist/solid/wardic-config.d.ts.map +1 -0
- package/dist/solid/wardic-config.jsx +30 -0
- package/dist/solid/wardic-config.jsx.map +1 -0
- package/dist/solid/wardic.d.ts +45 -0
- package/dist/solid/wardic.d.ts.map +1 -0
- package/dist/solid/wardic.jsx +31 -0
- package/dist/solid/wardic.jsx.map +1 -0
- package/package.json +98 -4
- package/src/animation-controls.ts +204 -0
- package/src/animation-frame.ts +32 -0
- package/src/appear.ts +804 -0
- package/src/arc.ts +34 -0
- package/src/bridge.ts +98 -0
- package/src/complete.ts +45 -0
- package/src/config.ts +805 -0
- package/src/create-animate.ts +41 -0
- package/src/create-ward.tsx +1271 -0
- package/src/cycle-index.ts +18 -0
- package/src/cycle.ts +34 -0
- package/src/directive.ts +87 -0
- package/src/drag-constraints.ts +103 -0
- package/src/drag-controls.ts +94 -0
- package/src/drag-samples.ts +54 -0
- package/src/drag-sensor.ts +46 -0
- package/src/drag-track.ts +937 -0
- package/src/drag-transition.ts +43 -0
- package/src/drag.ts +58 -0
- package/src/element-style.ts +112 -0
- package/src/element.tsx +400 -0
- package/src/feature-section.ts +33 -0
- package/src/feature.ts +342 -0
- package/src/features/all.ts +18 -0
- package/src/features/colors.ts +36 -0
- package/src/features/dom-animation.ts +15 -0
- package/src/features/dom-max.ts +11 -0
- package/src/features/drag.ts +30 -0
- package/src/features/focus.ts +17 -0
- package/src/features/hover.ts +17 -0
- package/src/features/in-view.ts +17 -0
- package/src/features/input.ts +42 -0
- package/src/features/keys.ts +89 -0
- package/src/features/layout.ts +54 -0
- package/src/features/pan.ts +17 -0
- package/src/features/press.ts +17 -0
- package/src/focus-sensor.ts +32 -0
- package/src/frame-time.ts +45 -0
- package/src/gesture-callbacks.ts +212 -0
- package/src/gesture-features.ts +35 -0
- package/src/gesture-info.ts +81 -0
- package/src/hover-sensor.ts +32 -0
- package/src/imperative.ts +782 -0
- package/src/index.ts +334 -0
- package/src/instant.ts +90 -0
- package/src/layout-group.ts +32 -0
- package/src/layout-member.ts +300 -0
- package/src/layout-projection.ts +28 -0
- package/src/layout.tsx +127 -0
- package/src/live-style.ts +449 -0
- package/src/live-value.ts +378 -0
- package/src/motion-props.ts +325 -0
- package/src/owner-scope.ts +31 -0
- package/src/page-point.ts +98 -0
- package/src/presence-controller.ts +1483 -0
- package/src/presence-record.ts +189 -0
- package/src/presence.tsx +269 -0
- package/src/press-sensor.ts +33 -0
- package/src/press.ts +40 -0
- package/src/provider.tsx +526 -0
- package/src/reactivity.ts +29 -0
- package/src/reorder-input.ts +53 -0
- package/src/reorder.tsx +703 -0
- package/src/retarget-legs.ts +1048 -0
- package/src/runtime.ts +388 -0
- package/src/sensors.ts +189 -0
- package/src/server-interpolators.ts +33 -0
- package/src/server.ts +21 -0
- package/src/solid-reactivity.ts +21 -0
- package/src/spine.ts +3385 -0
- package/src/stagger.ts +31 -0
- package/src/unstable/v2/bridge.ts +79 -0
- package/src/unstable/v2/complete.ts +47 -0
- package/src/unstable/v2/config-view.ts +156 -0
- package/src/unstable/v2/create-animate.ts +123 -0
- package/src/unstable/v2/cycle.ts +33 -0
- package/src/unstable/v2/drag-sensor.ts +44 -0
- package/src/unstable/v2/element.tsx +478 -0
- package/src/unstable/v2/feature-section.ts +32 -0
- package/src/unstable/v2/focus-sensor.ts +31 -0
- package/src/unstable/v2/hover-sensor.ts +30 -0
- package/src/unstable/v2/index.ts +270 -0
- package/src/unstable/v2/layout-projection.ts +27 -0
- package/src/unstable/v2/layout.tsx +89 -0
- package/src/unstable/v2/lifecycle.ts +612 -0
- package/src/unstable/v2/live-value.ts +414 -0
- package/src/unstable/v2/presence-handle.ts +159 -0
- package/src/unstable/v2/presence-hooks.ts +157 -0
- package/src/unstable/v2/presence.tsx +174 -0
- package/src/unstable/v2/press-sensor.ts +31 -0
- package/src/unstable/v2/provider.tsx +524 -0
- package/src/unstable/v2/reorder.tsx +880 -0
- package/src/unstable/v2/sensors.ts +169 -0
- package/src/unstable/v2/solid-reactivity.ts +69 -0
- package/src/unstable/v2/variant-node.ts +446 -0
- package/src/unstable/v2/w.tsx +49 -0
- package/src/unstable/v2/waiters.ts +212 -0
- package/src/unstable/v2/ward.tsx +2068 -0
- package/src/unstable/v2/wardic-config.tsx +84 -0
- package/src/unstable/v2/wardic.tsx +41 -0
- package/src/variant-node.ts +368 -0
- package/src/variant-target.ts +234 -0
- package/src/variant-tree.ts +638 -0
- package/src/variants.ts +47 -0
- package/src/w.tsx +59 -0
- package/src/ward-keys.ts +343 -0
- package/src/wardic-component.ts +96 -0
- package/src/wardic-config-value.ts +150 -0
- package/src/wardic-config.tsx +78 -0
- package/src/wardic.tsx +59 -0
package/src/variants.ts
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Variant context — the binding-owned channel that propagates the current
|
|
3
|
+
* variant NAME (not resolved values) down the component tree (ADR-0007).
|
|
4
|
+
*
|
|
5
|
+
* The doctrine: through the tree the binding propagates the parent's current
|
|
6
|
+
* variant *name* plus the inherited transition; each child holds its own
|
|
7
|
+
* `variants` map and resolves the inherited name LOCALLY (a child's `"open"` is
|
|
8
|
+
* independent of its siblings'). A target then resolves by priority:
|
|
9
|
+
*
|
|
10
|
+
* local `animate` > parent-context variant name > `initial`.
|
|
11
|
+
*
|
|
12
|
+
* This file owns only the context plumbing; the value's types are Solid-free, in `variant-tree.ts` (#209). `variant-node.ts` decides what each element
|
|
13
|
+
* provides and whether it joins its ancestor (CONTEXT.md, **Variant child**); every
|
|
14
|
+
* `wardic.*` element, component wrap and `<Reorder.Item>` provides it, and a `createWard`
|
|
15
|
+
* spread publishes it through `ward.Provider` (#50).
|
|
16
|
+
*
|
|
17
|
+
* Extensibility (ADR-0007, step 21b): the context value is intentionally an
|
|
18
|
+
* open object — registry / stagger / `when` fields are added later as OPTIONAL
|
|
19
|
+
* members, so adding them never breaks existing readers (they only read the
|
|
20
|
+
* fields they know about).
|
|
21
|
+
*/
|
|
22
|
+
import { createContext, useContext } from "solid-js"
|
|
23
|
+
import type { WardicVariantContextValue } from "./variant-tree.ts"
|
|
24
|
+
|
|
25
|
+
export type { WardicChildRegistration, WardicStaggerConfig, WardicVariantContextValue } from "./variant-tree.ts"
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* The variant context: what the nearest variant parent hands its children, its names, transition and
|
|
29
|
+
* orchestration. Wardic's elements read it to follow their parent's variants; a binding of your own
|
|
30
|
+
* provides or reads it the same way. `undefined` outside a parent.
|
|
31
|
+
*
|
|
32
|
+
* @see https://wardic.dev/reference/solid/advanced/variant-context
|
|
33
|
+
*/
|
|
34
|
+
// ADR-0007.
|
|
35
|
+
export const WardicVariantContext = createContext<WardicVariantContextValue | undefined>(undefined)
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* The nearest variant parent's context, or `undefined` outside one: its current variant name,
|
|
39
|
+
* `initial`, transition and orchestration, for an element of your own that follows a parent's variants.
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* const parent = useVariantContext()
|
|
43
|
+
* const name = () => parent?.variant()
|
|
44
|
+
* @see https://wardic.dev/reference/solid/advanced/variant-context
|
|
45
|
+
*/
|
|
46
|
+
// ADR-0007: local `animate` over the inherited name over `initial`.
|
|
47
|
+
export const useVariantContext = (): WardicVariantContextValue | undefined => useContext(WardicVariantContext)
|
package/src/w.tsx
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `w` — the **Slim element**'s forms (#511, ADR-0067 decision 6; Motion's `m`): `w.<tag>`,
|
|
3
|
+
* `w.create(tag | Component)`, `w.createWard(config)` and the `use:w` directive, each as its
|
|
4
|
+
* `wardic` form is. A Slim element animates values (`initial`, `animate`, `exit`, variants,
|
|
5
|
+
* transitions, Keyframes), with the **Features** chosen above it: its `WardicProvider`'s and every
|
|
6
|
+
* `LazyWardic`'s between them. This module names no Feature, so an app of Slim elements ships only
|
|
7
|
+
* 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 { Accessor, JSX } from "solid-js"
|
|
18
|
+
import type { WardConfig, WardicVariantLabels } from "./config.ts"
|
|
19
|
+
import { createWardWith, type SpineInternals, type Ward } from "./create-ward.tsx"
|
|
20
|
+
import { runDirective } from "./directive.ts"
|
|
21
|
+
import { type Create, createOf, formOf, type WardicComponent } from "./element.tsx"
|
|
22
|
+
import type { InferredMotion, TargetKey } from "./ward-keys.ts"
|
|
23
|
+
|
|
24
|
+
/** What a Slim element tells the spine: it brings no Feature of its own. */
|
|
25
|
+
const SLIM: SpineInternals = {}
|
|
26
|
+
|
|
27
|
+
/** The `use:w` directive. An arrow function, as `use:wardic`'s is. */
|
|
28
|
+
const wDirective = (el: HTMLElement, value: Accessor<WardConfig>): void => runDirective(el, value, SLIM)
|
|
29
|
+
|
|
30
|
+
/** `w.createWard(config)`: `createWard`'s Ward on a Slim element. */
|
|
31
|
+
function createSlimWard<
|
|
32
|
+
K extends TargetKey = never,
|
|
33
|
+
N extends string = never,
|
|
34
|
+
LI extends WardicVariantLabels = never,
|
|
35
|
+
LA extends WardicVariantLabels = never,
|
|
36
|
+
D extends boolean | "x" | "y" = never,
|
|
37
|
+
>(config: InferredMotion<WardConfig, K, N, LI, LA, D> | Accessor<InferredMotion<WardConfig, K, N, LI, LA, D>>): Ward {
|
|
38
|
+
return createWardWith(config as WardConfig | Accessor<WardConfig>, SLIM)
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/** The typed `w` proxy: called, it's the `use:w` directive; `w.create`, `w.createWard` and `w.<tag>` are its forms. */
|
|
42
|
+
export type W = ((el: HTMLElement, value: Accessor<WardConfig>) => void) & {
|
|
43
|
+
readonly create: Create
|
|
44
|
+
readonly createWard: typeof createSlimWard
|
|
45
|
+
} & {
|
|
46
|
+
readonly [Tag in keyof JSX.IntrinsicElements]: WardicComponent<Tag>
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* The Slim element: `w.div`, `w.button` and every other tag, each taking the element's own props and
|
|
51
|
+
* Wardic's motion props. It has the Features its `WardicProvider` and any `LazyWardic` above it give.
|
|
52
|
+
* `w.create(Component)` makes your own component one, `w.createWard(config)` a ward for an element of
|
|
53
|
+
* your own, and `use:w={config}` the same as a directive. Motion's `m.div`.
|
|
54
|
+
*
|
|
55
|
+
* @example <w.div initial={{ opacity: 0 }} animate={{ opacity: 1 }} />
|
|
56
|
+
* @see https://wardic.dev/reference/solid/elements/w
|
|
57
|
+
*/
|
|
58
|
+
// Every form of the Slim element, as `wardic`'s are of the Complete one (ADR-0067).
|
|
59
|
+
export const w: W = formOf<W>(wDirective, createOf(SLIM), { createWard: createSlimWard })
|
package/src/ward-keys.ts
ADDED
|
@@ -0,0 +1,343 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The keys a ward can read, typed from its config (#209 PR 3's Q4): completion offers every key the
|
|
3
|
+
* config animates, through `initial`, `animate`, `exit`, any variant, `whileHover`, `whileTap`,
|
|
4
|
+
* `whileDrag` or `style`, and `x`/`y` when it drags; any other key is still accepted (a custom
|
|
5
|
+
* property, a config built at run time). A config typed as a plain `WardConfig` offers every key.
|
|
6
|
+
*
|
|
7
|
+
* And a config's transitions' entries, checked against the keys each drives (#301's PR 2,
|
|
8
|
+
* {@link WardCheckedConfig}): Solid 2's `ward()` checks its config so.
|
|
9
|
+
*
|
|
10
|
+
* And a Wardic element's keys, inferred from its targets alone (#305, {@link InferredMotion}): the
|
|
11
|
+
* `wardic.*` components of both bindings and Solid 1's `createWard` check their transitions so.
|
|
12
|
+
* Types only.
|
|
13
|
+
*
|
|
14
|
+
* @module
|
|
15
|
+
*/
|
|
16
|
+
import type * as Machine from "@wardic/core/Machine"
|
|
17
|
+
import type { Atom } from "effect/reactivity"
|
|
18
|
+
import type {
|
|
19
|
+
WardicInertia,
|
|
20
|
+
WardicInherit,
|
|
21
|
+
WardicOrchestration,
|
|
22
|
+
WardicReducedMotion,
|
|
23
|
+
WardicSkipAnimations,
|
|
24
|
+
WardicTargetValues,
|
|
25
|
+
WardicTransformShorthands,
|
|
26
|
+
WardicTransition,
|
|
27
|
+
WardicTransitionWith,
|
|
28
|
+
WardicValueEntries,
|
|
29
|
+
WardicValueKey,
|
|
30
|
+
WardicValues,
|
|
31
|
+
WardicValueTransition,
|
|
32
|
+
WardicVariantLabels,
|
|
33
|
+
WardicVariantResolver,
|
|
34
|
+
} from "./config.ts"
|
|
35
|
+
import type { WardicAnimationControls } from "./animation-controls.ts"
|
|
36
|
+
import type { Accessor } from "./reactivity.ts"
|
|
37
|
+
|
|
38
|
+
/** A key's value through its accessor, the Solid 2 binding's per-key form (#259): what it returns. */
|
|
39
|
+
type Unwrap<V> = V extends (...args: never) => infer R ? R : V
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* A layer's values map: nothing for a variant name, a list of names (#297), `false`, **Animation
|
|
43
|
+
* controls** (#433) or none; an accessor's, what it returns.
|
|
44
|
+
*/
|
|
45
|
+
type MapOf<V> = Unwrap<V> extends infer U
|
|
46
|
+
? U extends object
|
|
47
|
+
? U extends (...args: never) => unknown
|
|
48
|
+
? never
|
|
49
|
+
: U extends ReadonlyArray<unknown>
|
|
50
|
+
? never
|
|
51
|
+
: U extends WardicAnimationControls
|
|
52
|
+
? never
|
|
53
|
+
: U
|
|
54
|
+
: never
|
|
55
|
+
: never
|
|
56
|
+
|
|
57
|
+
/** Every variant's values map. */
|
|
58
|
+
type VariantMaps<C> = C extends { readonly variants?: infer Ws }
|
|
59
|
+
? Unwrap<Ws> extends infer Vs
|
|
60
|
+
? Vs extends object
|
|
61
|
+
? MapOf<Exclude<Vs, undefined>[keyof Exclude<Vs, undefined>]>
|
|
62
|
+
: never
|
|
63
|
+
: never
|
|
64
|
+
: never
|
|
65
|
+
|
|
66
|
+
/** Every values map a config animates. */
|
|
67
|
+
type MotionLayers<C> =
|
|
68
|
+
| MapOf<C extends { readonly initial?: infer V } ? V : never>
|
|
69
|
+
| MapOf<C extends { readonly animate?: infer V } ? V : never>
|
|
70
|
+
| MapOf<C extends { readonly exit?: infer V } ? V : never>
|
|
71
|
+
| MapOf<C extends { readonly whileHover?: infer V } ? V : never>
|
|
72
|
+
| MapOf<C extends { readonly whileTap?: infer V } ? V : never>
|
|
73
|
+
| MapOf<C extends { readonly whileDrag?: infer V } ? V : never>
|
|
74
|
+
| VariantMaps<C>
|
|
75
|
+
|
|
76
|
+
/** Every values map a config animates or styles with. */
|
|
77
|
+
type Layers<C> = MotionLayers<C> | MapOf<C extends { readonly style?: infer V } ? V : never>
|
|
78
|
+
|
|
79
|
+
/** The keys of each member of a union. */
|
|
80
|
+
// A target's own `transition` (#277) is how it animates, not a key it animates; its `transitionEnd`
|
|
81
|
+
// (#428) holds keys, not a value.
|
|
82
|
+
type KeysOf<U> = U extends unknown ? Exclude<keyof U & string, "transition" | "transitionEnd"> : never
|
|
83
|
+
|
|
84
|
+
/** Each member's Transition end's keys (#428): keys a ward reads, though no transition drives them. */
|
|
85
|
+
type EndKeysOf<U> = U extends { readonly transitionEnd?: infer E } ? KeysOf<MapOf<E>> : never
|
|
86
|
+
|
|
87
|
+
/** A config's `drag`, through its accessor. */
|
|
88
|
+
type DragOf<C> = C extends { readonly drag: infer D } ? Unwrap<D> : never
|
|
89
|
+
|
|
90
|
+
/** The keys a drag moves: its axis's, or both. */
|
|
91
|
+
// No `drag` is `never`, which every tuple below would take: none first (#297's WK7 found it).
|
|
92
|
+
type DragKeys<C> = [DragOf<C>] extends [never]
|
|
93
|
+
? never
|
|
94
|
+
: [DragOf<C>] extends ["x"]
|
|
95
|
+
? "x"
|
|
96
|
+
: [DragOf<C>] extends ["y"]
|
|
97
|
+
? "y"
|
|
98
|
+
: [DragOf<C>] extends [true]
|
|
99
|
+
? "x" | "y"
|
|
100
|
+
: never
|
|
101
|
+
|
|
102
|
+
/** The keys a config animates, and the ones its targets' Transition ends set. */
|
|
103
|
+
export type AnimatedKey<C> = KeysOf<Layers<C>> | EndKeysOf<MotionLayers<C>> | DragKeys<C>
|
|
104
|
+
|
|
105
|
+
/**
|
|
106
|
+
* The keys a config's transitions drive (#305's Q2): {@link AnimatedKey}'s but `style`'s. Wardic never
|
|
107
|
+
* follows a `style` change (ADR-0022, decision 5), so a key only `style` sets never runs on one.
|
|
108
|
+
*/
|
|
109
|
+
export type DrivenKey<C> = KeysOf<MotionLayers<C>> | DragKeys<C>
|
|
110
|
+
|
|
111
|
+
/** A key a ward can read: one its config animates (completed), or any other (accepted). */
|
|
112
|
+
export type WardKey<C> = AnimatedKey<C> | (string & {})
|
|
113
|
+
|
|
114
|
+
/** A value as a ward reads it: a number or a string, a Live value read through. */
|
|
115
|
+
type Widen<V> = V extends number ? number : V extends string ? string : V extends Accessor<infer A> ? Widen<A> : V extends Atom.Atom<infer A> ? Widen<A> : never
|
|
116
|
+
|
|
117
|
+
/** `K`'s values across a config's layers. */
|
|
118
|
+
type ValuesAt<C, K extends string> = Layers<C> extends infer L ? (L extends unknown ? (K extends keyof L ? L[K] : never) : never) : never
|
|
119
|
+
|
|
120
|
+
/**
|
|
121
|
+
* What a ward reads for `K`: a transform key is always a number (its identity at rest); any other
|
|
122
|
+
* key, the type its config gives it (a number or a string), or `undefined` with no value.
|
|
123
|
+
*/
|
|
124
|
+
export type WardValueOf<C, K extends string> = K extends keyof WardicTransformShorthands
|
|
125
|
+
? number
|
|
126
|
+
: [Widen<ValuesAt<C, K>>] extends [never]
|
|
127
|
+
? number | string | undefined
|
|
128
|
+
: Widen<ValuesAt<C, K>> | undefined
|
|
129
|
+
|
|
130
|
+
// --- Transition entries, checked (#301's PR 2, ADR-0049) ---------------------------------------
|
|
131
|
+
|
|
132
|
+
/** A transition option's name, on either arm, a target's `inherit` among them: never an entry. */
|
|
133
|
+
type OptionName =
|
|
134
|
+
| keyof (Omit<Machine.SpringOptions, "from"> & Machine.AnimateOptions & WardicOrchestration & WardicReducedMotion & WardicSkipAnimations & WardicInherit & WardicInertia)
|
|
135
|
+
| "type"
|
|
136
|
+
|
|
137
|
+
/**
|
|
138
|
+
* What a name that's neither an option nor an entry the transition allows is checked against: why.
|
|
139
|
+
* As an object for a value that isn't one (a mistyped option), which a string would meet as `never`.
|
|
140
|
+
*/
|
|
141
|
+
type NotHere<P extends string, V> = V extends object
|
|
142
|
+
? `'${P}' is neither a transition option nor a key animated here`
|
|
143
|
+
: { readonly "is neither a transition option nor a key animated here": P }
|
|
144
|
+
|
|
145
|
+
/** Whether keys are every value's (a config typed wide, `WardConfig`'s): no literal key is a template. */
|
|
146
|
+
type IsWide<K> = `-${string}` extends K ? true : false
|
|
147
|
+
|
|
148
|
+
/**
|
|
149
|
+
* Each member's keys, as one union. A union's own `keyof` is the keys they share, an intersection:
|
|
150
|
+
* for a transition's two arms, two unions of every value's name, which TS crosses (TS2590).
|
|
151
|
+
*/
|
|
152
|
+
type KeysIn<T> = T extends unknown ? keyof T & string : never
|
|
153
|
+
|
|
154
|
+
/** Each member's value at `P`. */
|
|
155
|
+
type ValueIn<T, P extends string> = T extends unknown ? (P extends keyof T ? T[P] : never) : never
|
|
156
|
+
|
|
157
|
+
/** `X` in the form `raw` was given: an accessor of it for an accessor (#259's per-key config), which may read none. */
|
|
158
|
+
type Rewrap<Raw, X> = Raw extends (...args: never) => unknown ? () => X | undefined : X
|
|
159
|
+
|
|
160
|
+
/**
|
|
161
|
+
* The transition given as `raw`, checked (#301): entries for `K` (and `default`), every other name
|
|
162
|
+
* an option, else an error naming it.
|
|
163
|
+
*/
|
|
164
|
+
type CheckedTransition<Raw, E, K extends string> =
|
|
165
|
+
IsWide<K | KeysIn<NonNullable<Unwrap<Raw>>>> extends true
|
|
166
|
+
? unknown
|
|
167
|
+
: Rewrap<
|
|
168
|
+
Raw,
|
|
169
|
+
& WardicTransitionWith<E>
|
|
170
|
+
& WardicInherit
|
|
171
|
+
& { readonly [P in Exclude<KeysIn<NonNullable<Unwrap<Raw>>>, K | OptionName | "default">]: NotHere<P, ValueIn<NonNullable<Unwrap<Raw>>, P>> }
|
|
172
|
+
>
|
|
173
|
+
|
|
174
|
+
/** `C`'s value at `K`, or `undefined` without one. */
|
|
175
|
+
type RawOf<C, K extends string> = K extends keyof C ? C[K] : undefined
|
|
176
|
+
|
|
177
|
+
/**
|
|
178
|
+
* A target, checked: its values as any target's, Keyframes among them (#429), and its own transition (#277) with entries for the
|
|
179
|
+
* keys it sets (Q2) and `default`, no `layout`. A dynamic variant is a resolver as ever, a variant
|
|
180
|
+
* name or `false` as it is.
|
|
181
|
+
*/
|
|
182
|
+
type CheckedTarget<T> = T extends (...args: never) => unknown
|
|
183
|
+
? WardicVariantResolver
|
|
184
|
+
: T extends WardicAnimationControls
|
|
185
|
+
? T
|
|
186
|
+
: T extends object
|
|
187
|
+
? T extends ReadonlyArray<unknown>
|
|
188
|
+
? T
|
|
189
|
+
: Omit<WardicTargetValues, "transition"> & { readonly transition?: CheckedTransition<RawOf<T, "transition">, WardicValueEntries<KeysOf<T>>, KeysOf<T>> } & CheckedEnd<T> & NoStray<T>
|
|
190
|
+
: T
|
|
191
|
+
|
|
192
|
+
/** `initial`, checked (#305's Q4): its values' names. A variant name, a list of them or `false` as it is. */
|
|
193
|
+
type CheckedInitial<T> = T extends object ? (T extends ReadonlyArray<unknown> ? T : Omit<WardicTargetValues, "transition"> & CheckedEnd<T> & NoStray<T>) : T
|
|
194
|
+
|
|
195
|
+
/** What a name in a values map that isn't a value meets: an error naming it, an object, as {@link NotHere}'s. */
|
|
196
|
+
type NotAValue<P extends string> = { readonly "is not a value Wardic animates": P }
|
|
197
|
+
|
|
198
|
+
/**
|
|
199
|
+
* `T`'s names that aren't values, each an error (#305's Q4). The config is inferred from its literal,
|
|
200
|
+
* so every name a values map has is a known property: the check is what rejects `opacty`.
|
|
201
|
+
*/
|
|
202
|
+
type NoStray<T> = T extends object
|
|
203
|
+
? IsWide<keyof T & string> extends true
|
|
204
|
+
? unknown
|
|
205
|
+
: { readonly [P in Exclude<keyof T & string, WardicValueKey | "transition" | "transitionEnd">]: NotAValue<P> }
|
|
206
|
+
: unknown
|
|
207
|
+
|
|
208
|
+
/** A target's Transition end, checked (#428): a values map whose names are values. */
|
|
209
|
+
type CheckedEnd<T> = { readonly transitionEnd?: Omit<WardicValues, "transition"> & NoStray<RawOf<T, "transitionEnd">> }
|
|
210
|
+
|
|
211
|
+
/** The config props that take a target. */
|
|
212
|
+
type TargetProp = "animate" | "exit" | "whileHover" | "whileTap" | "whileDrag" | "whileFocus" | "whileInView"
|
|
213
|
+
|
|
214
|
+
/** Each variant, checked; a variants map typed wide as it is. */
|
|
215
|
+
type VariantsOf<C> = Unwrap<C["variants" & keyof C]> extends infer Vs
|
|
216
|
+
? Vs extends object
|
|
217
|
+
? Rewrap<C["variants" & keyof C], { readonly [N in keyof Vs]: CheckedTarget<Vs[N]> }>
|
|
218
|
+
: C["variants" & keyof C]
|
|
219
|
+
: never
|
|
220
|
+
|
|
221
|
+
/** Whether a prop gives a variant name, or a list of them (#297), or **Animation controls** (#433), which give them. */
|
|
222
|
+
type GivesLabels<V> = Unwrap<V> extends string | ReadonlyArray<string> | WardicAnimationControls ? true : false
|
|
223
|
+
|
|
224
|
+
/**
|
|
225
|
+
* Whether Variant children can join the element (Motion's `isVariantNode`): it has `variants`, or
|
|
226
|
+
* gives a variant name in `initial` or `animate`. They inherit its `transition`, so its entries may
|
|
227
|
+
* be for their keys.
|
|
228
|
+
*/
|
|
229
|
+
type HandsDown<C> = true extends
|
|
230
|
+
| ("variants" extends keyof C ? ([Unwrap<C["variants" & keyof C]>] extends [undefined] ? false : true) : false)
|
|
231
|
+
| ("initial" extends keyof C ? GivesLabels<C["initial" & keyof C]> : false)
|
|
232
|
+
| ("animate" extends keyof C ? GivesLabels<C["animate" & keyof C]> : false)
|
|
233
|
+
? true
|
|
234
|
+
: false
|
|
235
|
+
|
|
236
|
+
/**
|
|
237
|
+
* The element's `transition`, checked (Q1): entries for the keys it animates, `default` and `layout`.
|
|
238
|
+
* An element Variant children can join takes every value's name, as Motion types it: they inherit
|
|
239
|
+
* it.
|
|
240
|
+
*/
|
|
241
|
+
type ElementTransition<C> = HandsDown<C> extends true
|
|
242
|
+
? Rewrap<RawOf<C, "transition">, WardicTransition>
|
|
243
|
+
: CheckedTransition<RawOf<C, "transition">, WardicValueEntries<DrivenKey<C>> & { readonly layout?: WardicValueTransition }, DrivenKey<C> | "layout">
|
|
244
|
+
|
|
245
|
+
/**
|
|
246
|
+
* A config `C` with its transitions' entries checked (#301's PR 2, ADR-0049), for a binding whose
|
|
247
|
+
* config is `W`: completion inside a `transition` offers the keys it drives, and an entry for any
|
|
248
|
+
* other is an error naming it. The element's `transition` takes the keys the element animates,
|
|
249
|
+
* `default` and `layout`, every value's name for an element Variant children can join; a target's
|
|
250
|
+
* own (a variant's, `animate`'s, a gesture's, `exit`'s), the keys that target sets and `default`. A
|
|
251
|
+
* config typed as a plain `WardConfig` takes every name. Every other key is `W`'s, so a callback's
|
|
252
|
+
* parameters are typed as ever.
|
|
253
|
+
*/
|
|
254
|
+
export type WardCheckedConfig<C, W> = C & {
|
|
255
|
+
readonly [K in keyof W]?: K extends "transition"
|
|
256
|
+
? ElementTransition<C>
|
|
257
|
+
: K extends keyof C
|
|
258
|
+
? K extends TargetProp
|
|
259
|
+
? Rewrap<C[K], CheckedTarget<Unwrap<C[K]>>>
|
|
260
|
+
: K extends "variants"
|
|
261
|
+
? VariantsOf<C>
|
|
262
|
+
: K extends "initial"
|
|
263
|
+
? Rewrap<C[K], CheckedInitial<Unwrap<C[K]>>>
|
|
264
|
+
: W[K]
|
|
265
|
+
: W[K]
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
// --- A Wardic element's keys, inferred (#305, ADR-0049) -------------------------------------------
|
|
269
|
+
|
|
270
|
+
/** A name a target sets: a value's, its own `transition`, or its `transitionEnd` (#428). */
|
|
271
|
+
export type TargetKey = WardicValueKey | "transition" | "transitionEnd"
|
|
272
|
+
|
|
273
|
+
/** The value names among a target's names: not its `transition` or its `transitionEnd`. */
|
|
274
|
+
type ValueNameOf<K> = Exclude<K, "transition" | "transitionEnd">
|
|
275
|
+
|
|
276
|
+
/**
|
|
277
|
+
* The names `K` a values map sets, inferred from it. One that isn't a value fails `K`'s constraint, so
|
|
278
|
+
* `K` is every name and the map is checked against all of them, where it's an excess property.
|
|
279
|
+
*/
|
|
280
|
+
type NamesOf<K extends string> = { readonly [P in K]?: unknown }
|
|
281
|
+
|
|
282
|
+
/**
|
|
283
|
+
* A target, its names inferred into `K` (#305's Q1): any target's values, and its own transition with
|
|
284
|
+
* entries for the element's keys `E` and `default`, no `layout` (Q3). A values map's own type stays
|
|
285
|
+
* whole, so an editor completes every value's name inside it while `K` is being inferred.
|
|
286
|
+
*/
|
|
287
|
+
export type InferredTarget<K extends TargetKey, E extends string> =
|
|
288
|
+
& Omit<WardicTargetValues, "transition">
|
|
289
|
+
& { readonly transition?: (WardicTransitionWith<WardicValueEntries<E>> & WardicInherit) | WardicValues["transition"] }
|
|
290
|
+
& { readonly transitionEnd?: Omit<WardicValues, "transition"> }
|
|
291
|
+
& NamesOf<K>
|
|
292
|
+
|
|
293
|
+
/** The keys a drag `D` moves. */
|
|
294
|
+
type DragMoves<D> = [D] extends [never] ? never : [D] extends ["x"] ? "x" : [D] extends ["y"] ? "y" : [D] extends [true] ? "x" | "y" : never
|
|
295
|
+
|
|
296
|
+
/**
|
|
297
|
+
* Whether variant names `L` were given. A values map is inferred into `L` too, failing its constraint,
|
|
298
|
+
* so `L` is then every name, `string`-wide: only a literal name counts.
|
|
299
|
+
*/
|
|
300
|
+
type GivesNames<L> = [L] extends [never] ? false : string extends L ? false : true
|
|
301
|
+
|
|
302
|
+
/**
|
|
303
|
+
* Whether Variant children can join the element (Motion's `isVariantNode`): it has `variants` (names
|
|
304
|
+
* `N`), or gives a name in `initial` or `animate`. They inherit its `transition`, so it takes every
|
|
305
|
+
* value's name (#301's Q1).
|
|
306
|
+
*/
|
|
307
|
+
type JoinedBy<N extends string, LI, LA> = [N] extends [never] ? (true extends GivesNames<LI> | GivesNames<LA> ? true : false) : true
|
|
308
|
+
|
|
309
|
+
/**
|
|
310
|
+
* The keys the element animates: its targets' names, its drag axis's, and `X`, those it animates
|
|
311
|
+
* through a ward given to it (#398). A key only `style` sets never runs on a transition (Q2).
|
|
312
|
+
*/
|
|
313
|
+
type InferredKey<K extends TargetKey, D, X extends string> = ValueNameOf<K> | DragMoves<D> | X
|
|
314
|
+
|
|
315
|
+
/** The props {@link InferredMotion} types again. */
|
|
316
|
+
type InferredProp = "initial" | "animate" | "exit" | "whileHover" | "whileTap" | "whileDrag" | "whileFocus" | "whileInView" | "variants" | "transition" | "drag"
|
|
317
|
+
|
|
318
|
+
/**
|
|
319
|
+
* The motion props `M` (a Wardic element's, or a Solid 1 ward's config) with their keys inferred
|
|
320
|
+
* (#305): `K` from every target, `N` from `variants`' names, `LI` and `LA` from a name given in
|
|
321
|
+
* `initial` and `animate`, `D` from `drag`; `X`, the keys a ward given to the element animates. Each target keeps its own type, so a name in it that isn't
|
|
322
|
+
* a value is still an error. The element's `transition` takes entries for the keys it animates,
|
|
323
|
+
* `default` and `layout`, every value's name when Variant children can join it, or when no key could
|
|
324
|
+
* be inferred: an overloaded generic call in a target (Effect's `Bool.match`) gives TS none.
|
|
325
|
+
* `transition` gives `K` no names of its own (`NoInfer`).
|
|
326
|
+
*/
|
|
327
|
+
export type InferredMotion<M, K extends TargetKey, N extends string, LI extends WardicVariantLabels, LA extends WardicVariantLabels, D extends boolean | "x" | "y", X extends string = never> =
|
|
328
|
+
& Omit<M, InferredProp>
|
|
329
|
+
& {
|
|
330
|
+
readonly initial?: InferredTarget<K, NoInfer<ValueNameOf<K>>> | LI | false
|
|
331
|
+
readonly animate?: InferredTarget<K, NoInfer<ValueNameOf<K>>> | LA | WardicAnimationControls
|
|
332
|
+
readonly exit?: InferredTarget<K, NoInfer<ValueNameOf<K>>> | WardicVariantLabels
|
|
333
|
+
readonly whileHover?: InferredTarget<K, NoInfer<ValueNameOf<K>>> | WardicVariantLabels
|
|
334
|
+
readonly whileTap?: InferredTarget<K, NoInfer<ValueNameOf<K>>> | WardicVariantLabels
|
|
335
|
+
readonly whileDrag?: InferredTarget<K, NoInfer<ValueNameOf<K>>> | WardicVariantLabels
|
|
336
|
+
readonly whileFocus?: InferredTarget<K, NoInfer<ValueNameOf<K>>> | WardicVariantLabels
|
|
337
|
+
readonly whileInView?: InferredTarget<K, NoInfer<ValueNameOf<K>>> | WardicVariantLabels
|
|
338
|
+
readonly variants?: { readonly [V in N]: InferredTarget<K, NoInfer<ValueNameOf<K>>> | WardicVariantResolver }
|
|
339
|
+
readonly drag?: D
|
|
340
|
+
readonly transition?: true extends NoInfer<JoinedBy<N, LI, LA> | ([InferredKey<K, D, X>] extends [never] ? true : false)>
|
|
341
|
+
? WardicTransition
|
|
342
|
+
: WardicTransitionWith<NoInfer<WardicValueEntries<InferredKey<K, D, X>> & { readonly layout?: WardicValueTransition }>>
|
|
343
|
+
}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What both bindings' `wardic.create` shares, Solid-free (#443): its options (Motion's `motion.create`
|
|
3
|
+
* options, `forwardMotionProps` and `type`), the mark it sets on what it makes (Motion's
|
|
4
|
+
* `motionComponentSymbol`), and the `WardicConfig` `isValidProp` filter on a tag's own props.
|
|
5
|
+
*
|
|
6
|
+
* @module
|
|
7
|
+
*/
|
|
8
|
+
import * as Arr from "effect/Array"
|
|
9
|
+
import * as Bool from "effect/Boolean"
|
|
10
|
+
import { identity } from "effect/Function"
|
|
11
|
+
import * as Predicate from "effect/Predicate"
|
|
12
|
+
import * as UndefinedOr from "effect/UndefinedOr"
|
|
13
|
+
|
|
14
|
+
/** `wardic.create`'s options (Motion's `motion.create(Component, options)`). */
|
|
15
|
+
export interface WardicCreateOptions {
|
|
16
|
+
/**
|
|
17
|
+
* Hand the motion props on to what it renders as well (Motion's `forwardMotionProps`): a wrapped
|
|
18
|
+
* component gets `animate`, `whileHover` and the rest beside the Ward's spread, and a tag gets them as
|
|
19
|
+
* attributes, as Motion's does. They still drive the element. Default `false`.
|
|
20
|
+
*/
|
|
21
|
+
readonly forwardMotionProps?: boolean | undefined
|
|
22
|
+
/**
|
|
23
|
+
* What its element is, for its server render and its Starting style (Motion's `type`): `"svg"`, an
|
|
24
|
+
* element inside an `<svg>`, whose attribute keys (`d`, `cx`, `pathLength`…) render as attributes;
|
|
25
|
+
* `"html"`, every key as style. Left out, a tag's own name decides, and a wrapped component's
|
|
26
|
+
* element is HTML. In the browser, the element itself decides, as it always has.
|
|
27
|
+
*/
|
|
28
|
+
readonly type?: "svg" | "html" | undefined
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* The tag a wrapped component's svg-inner element routes its keys by when its own tag isn't known:
|
|
33
|
+
* every svg-inner element routes them alike (ADR-0014).
|
|
34
|
+
*/
|
|
35
|
+
const SVG_INNER = "g"
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* The tag an element's server render and Starting style route its keys by (#443): `type`'s over its
|
|
39
|
+
* own (`undefined` for a wrapped component). `"svg"` keeps a known tag, which says which SVG element.
|
|
40
|
+
*/
|
|
41
|
+
export const routingTagOf = (tag: string | undefined, type: WardicCreateOptions["type"]): string | undefined => {
|
|
42
|
+
if (type === "html") return undefined
|
|
43
|
+
if (type === "svg") return UndefinedOr.match(tag, { onUndefined: () => SVG_INNER, onDefined: identity })
|
|
44
|
+
return tag
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* The mark on every component `wardic.create` and `wardic.<tag>` make (#443, Motion's
|
|
49
|
+
* `motionComponentSymbol`), holding the tag or the component it wraps. Registered, so both bindings,
|
|
50
|
+
* and two copies of the package, read each other's.
|
|
51
|
+
*/
|
|
52
|
+
const WARDIC_COMPONENT: unique symbol = Symbol.for("@wardic/solid/component")
|
|
53
|
+
|
|
54
|
+
/** A component function, as {@link unwrapWardicComponent} gives it back, whichever Solid it's for. */
|
|
55
|
+
export type AnyComponentFunction = (props: never) => unknown
|
|
56
|
+
|
|
57
|
+
/** `component`, marked as made by `wardic.create` from `wraps` (#443). */
|
|
58
|
+
export const markWardic = <C extends object>(component: C, wraps: string | AnyComponentFunction): C =>
|
|
59
|
+
Object.defineProperty(component, WARDIC_COMPONENT, { value: wraps })
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Whether `component` is a Wardic element's component: one that `w.<tag>`, `wardic.<tag>` or
|
|
63
|
+
* `wardic.create` made, on either binding. Motion's `isMotionComponent`.
|
|
64
|
+
*
|
|
65
|
+
* @example
|
|
66
|
+
* isWardicComponent(wardic.div) // true
|
|
67
|
+
* @see https://wardic.dev/reference/solid/utilities/component-checks
|
|
68
|
+
*/
|
|
69
|
+
// #443.
|
|
70
|
+
export const isWardicComponent = (component: unknown): boolean => Predicate.hasProperty(component, WARDIC_COMPONENT)
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* What a Wardic element's component wraps: its tag, `"div"` for `wardic.div`, or the component given to
|
|
74
|
+
* `wardic.create`; `undefined` for anything else. Motion's `unwrapMotionComponent`.
|
|
75
|
+
*
|
|
76
|
+
* @see https://wardic.dev/reference/solid/utilities/component-checks
|
|
77
|
+
*/
|
|
78
|
+
// #443.
|
|
79
|
+
export const unwrapWardicComponent = (component: unknown): string | AnyComponentFunction | undefined => {
|
|
80
|
+
if (Bool.not(isWardicComponent(component))) return undefined
|
|
81
|
+
return (component as { readonly [WARDIC_COMPONENT]: string | AnyComponentFunction })[WARDIC_COMPONENT]
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* The keys of a tag's own props (`keysOf`: the motion props, `ref` and `style` split off) that a
|
|
86
|
+
* `WardicConfig`'s `isValidProp` keeps from the element (#443, Motion's `filterProps`): each that
|
|
87
|
+
* doesn't start with `on` and that it says isn't valid. None without one, or for a wrapped component,
|
|
88
|
+
* which gets every prop, as Motion's does; `keysOf` isn't read then. Decided for the keys it has as
|
|
89
|
+
* it's made.
|
|
90
|
+
*/
|
|
91
|
+
export const droppedKeysOf = (keysOf: () => ReadonlyArray<string>, isValidProp: ((key: string) => boolean) | undefined, isTag: boolean): ReadonlyArray<string> => {
|
|
92
|
+
if (Predicate.isUndefined(isValidProp)) return Arr.empty()
|
|
93
|
+
if (Bool.not(isTag)) return Arr.empty()
|
|
94
|
+
// `&&`, not `Bool.and`: `isValidProp` is asked of no `on` key, as Motion asks it.
|
|
95
|
+
return Arr.filter(keysOf(), (key) => !key.startsWith("on") && !isValidProp(key))
|
|
96
|
+
}
|