@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.
Files changed (994) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +26 -2
  3. package/THIRD_PARTY_NOTICES.md +145 -0
  4. package/dist/browser/animation-controls.js +150 -0
  5. package/dist/browser/animation-controls.js.map +1 -0
  6. package/dist/browser/animation-frame.js +29 -0
  7. package/dist/browser/animation-frame.js.map +1 -0
  8. package/dist/browser/appear.js +727 -0
  9. package/dist/browser/appear.js.map +1 -0
  10. package/dist/browser/arc.js +21 -0
  11. package/dist/browser/arc.js.map +1 -0
  12. package/dist/browser/bridge.js +69 -0
  13. package/dist/browser/bridge.js.map +1 -0
  14. package/dist/browser/complete.js +30 -0
  15. package/dist/browser/complete.js.map +1 -0
  16. package/dist/browser/config.js +2 -0
  17. package/dist/browser/config.js.map +1 -0
  18. package/dist/browser/create-animate.js +41 -0
  19. package/dist/browser/create-animate.js.map +1 -0
  20. package/dist/browser/create-ward.js +1001 -0
  21. package/dist/browser/create-ward.js.map +1 -0
  22. package/dist/browser/cycle-index.js +17 -0
  23. package/dist/browser/cycle-index.js.map +1 -0
  24. package/dist/browser/cycle.js +31 -0
  25. package/dist/browser/cycle.js.map +1 -0
  26. package/dist/browser/directive.js +80 -0
  27. package/dist/browser/directive.js.map +1 -0
  28. package/dist/browser/drag-constraints.js +76 -0
  29. package/dist/browser/drag-constraints.js.map +1 -0
  30. package/dist/browser/drag-controls.js +51 -0
  31. package/dist/browser/drag-controls.js.map +1 -0
  32. package/dist/browser/drag-samples.js +40 -0
  33. package/dist/browser/drag-samples.js.map +1 -0
  34. package/dist/browser/drag-sensor.js +35 -0
  35. package/dist/browser/drag-sensor.js.map +1 -0
  36. package/dist/browser/drag-track.js +817 -0
  37. package/dist/browser/drag-track.js.map +1 -0
  38. package/dist/browser/drag-transition.js +56 -0
  39. package/dist/browser/drag-transition.js.map +1 -0
  40. package/dist/browser/drag.js +44 -0
  41. package/dist/browser/drag.js.map +1 -0
  42. package/dist/browser/element-style.js +67 -0
  43. package/dist/browser/element-style.js.map +1 -0
  44. package/dist/browser/element.js +353 -0
  45. package/dist/browser/element.js.map +1 -0
  46. package/dist/browser/feature-section.js +17 -0
  47. package/dist/browser/feature-section.js.map +1 -0
  48. package/dist/browser/feature.js +261 -0
  49. package/dist/browser/feature.js.map +1 -0
  50. package/dist/browser/features/all.js +10 -0
  51. package/dist/browser/features/all.js.map +1 -0
  52. package/dist/browser/features/colors.js +33 -0
  53. package/dist/browser/features/colors.js.map +1 -0
  54. package/dist/browser/features/dom-animation.js +7 -0
  55. package/dist/browser/features/dom-animation.js.map +1 -0
  56. package/dist/browser/features/dom-max.js +4 -0
  57. package/dist/browser/features/dom-max.js.map +1 -0
  58. package/dist/browser/features/drag.js +28 -0
  59. package/dist/browser/features/drag.js.map +1 -0
  60. package/dist/browser/features/focus.js +18 -0
  61. package/dist/browser/features/focus.js.map +1 -0
  62. package/dist/browser/features/hover.js +18 -0
  63. package/dist/browser/features/hover.js.map +1 -0
  64. package/dist/browser/features/in-view.js +18 -0
  65. package/dist/browser/features/in-view.js.map +1 -0
  66. package/dist/browser/features/input.js +30 -0
  67. package/dist/browser/features/input.js.map +1 -0
  68. package/dist/browser/features/keys.js +19 -0
  69. package/dist/browser/features/keys.js.map +1 -0
  70. package/dist/browser/features/layout.js +33 -0
  71. package/dist/browser/features/layout.js.map +1 -0
  72. package/dist/browser/features/pan.js +18 -0
  73. package/dist/browser/features/pan.js.map +1 -0
  74. package/dist/browser/features/press.js +12 -0
  75. package/dist/browser/features/press.js.map +1 -0
  76. package/dist/browser/focus-sensor.js +23 -0
  77. package/dist/browser/focus-sensor.js.map +1 -0
  78. package/dist/browser/frame-time.js +40 -0
  79. package/dist/browser/frame-time.js.map +1 -0
  80. package/dist/browser/gesture-callbacks.js +172 -0
  81. package/dist/browser/gesture-callbacks.js.map +1 -0
  82. package/dist/browser/gesture-features.js +29 -0
  83. package/dist/browser/gesture-features.js.map +1 -0
  84. package/dist/browser/gesture-info.js +43 -0
  85. package/dist/browser/gesture-info.js.map +1 -0
  86. package/dist/browser/hover-sensor.js +29 -0
  87. package/dist/browser/hover-sensor.js.map +1 -0
  88. package/dist/browser/imperative.js +614 -0
  89. package/dist/browser/imperative.js.map +1 -0
  90. package/dist/browser/index.js +165 -0
  91. package/dist/browser/index.js.map +1 -0
  92. package/dist/browser/instant.js +51 -0
  93. package/dist/browser/instant.js.map +1 -0
  94. package/dist/browser/layout-group.js +27 -0
  95. package/dist/browser/layout-group.js.map +1 -0
  96. package/dist/browser/layout-member.js +362 -0
  97. package/dist/browser/layout-member.js.map +1 -0
  98. package/dist/browser/layout-projection.js +19 -0
  99. package/dist/browser/layout-projection.js.map +1 -0
  100. package/dist/browser/layout.js +91 -0
  101. package/dist/browser/layout.js.map +1 -0
  102. package/dist/browser/live-style.js +313 -0
  103. package/dist/browser/live-style.js.map +1 -0
  104. package/dist/browser/live-value.js +252 -0
  105. package/dist/browser/live-value.js.map +1 -0
  106. package/dist/browser/motion-props.js +172 -0
  107. package/dist/browser/motion-props.js.map +1 -0
  108. package/dist/browser/owner-scope.js +29 -0
  109. package/dist/browser/owner-scope.js.map +1 -0
  110. package/dist/browser/page-point.js +92 -0
  111. package/dist/browser/page-point.js.map +1 -0
  112. package/dist/browser/presence-controller.js +1324 -0
  113. package/dist/browser/presence-controller.js.map +1 -0
  114. package/dist/browser/presence-record.js +27 -0
  115. package/dist/browser/presence-record.js.map +1 -0
  116. package/dist/browser/presence.js +207 -0
  117. package/dist/browser/presence.js.map +1 -0
  118. package/dist/browser/press-sensor.js +30 -0
  119. package/dist/browser/press-sensor.js.map +1 -0
  120. package/dist/browser/press.js +24 -0
  121. package/dist/browser/press.js.map +1 -0
  122. package/dist/browser/provider.js +445 -0
  123. package/dist/browser/provider.js.map +1 -0
  124. package/dist/browser/reactivity.js +9 -0
  125. package/dist/browser/reactivity.js.map +1 -0
  126. package/dist/browser/reorder-input.js +46 -0
  127. package/dist/browser/reorder-input.js.map +1 -0
  128. package/dist/browser/reorder.js +543 -0
  129. package/dist/browser/reorder.js.map +1 -0
  130. package/dist/browser/retarget-legs.js +1019 -0
  131. package/dist/browser/retarget-legs.js.map +1 -0
  132. package/dist/browser/runtime.js +249 -0
  133. package/dist/browser/runtime.js.map +1 -0
  134. package/dist/browser/sensors.js +172 -0
  135. package/dist/browser/sensors.js.map +1 -0
  136. package/dist/browser/server-interpolators.js +20 -0
  137. package/dist/browser/server-interpolators.js.map +1 -0
  138. package/dist/browser/server.js +20 -0
  139. package/dist/browser/server.js.map +1 -0
  140. package/dist/browser/solid-reactivity.js +26 -0
  141. package/dist/browser/solid-reactivity.js.map +1 -0
  142. package/dist/browser/spine.js +2939 -0
  143. package/dist/browser/spine.js.map +1 -0
  144. package/dist/browser/stagger.js +13 -0
  145. package/dist/browser/stagger.js.map +1 -0
  146. package/dist/browser/unstable/v2/bridge.js +76 -0
  147. package/dist/browser/unstable/v2/bridge.js.map +1 -0
  148. package/dist/browser/unstable/v2/complete.js +29 -0
  149. package/dist/browser/unstable/v2/complete.js.map +1 -0
  150. package/dist/browser/unstable/v2/config-view.js +111 -0
  151. package/dist/browser/unstable/v2/config-view.js.map +1 -0
  152. package/dist/browser/unstable/v2/create-animate.js +102 -0
  153. package/dist/browser/unstable/v2/create-animate.js.map +1 -0
  154. package/dist/browser/unstable/v2/cycle.js +30 -0
  155. package/dist/browser/unstable/v2/cycle.js.map +1 -0
  156. package/dist/browser/unstable/v2/drag-sensor.js +34 -0
  157. package/dist/browser/unstable/v2/drag-sensor.js.map +1 -0
  158. package/dist/browser/unstable/v2/element.js +393 -0
  159. package/dist/browser/unstable/v2/element.js.map +1 -0
  160. package/dist/browser/unstable/v2/feature-section.js +27 -0
  161. package/dist/browser/unstable/v2/feature-section.js.map +1 -0
  162. package/dist/browser/unstable/v2/focus-sensor.js +23 -0
  163. package/dist/browser/unstable/v2/focus-sensor.js.map +1 -0
  164. package/dist/browser/unstable/v2/hover-sensor.js +28 -0
  165. package/dist/browser/unstable/v2/hover-sensor.js.map +1 -0
  166. package/dist/browser/unstable/v2/index.js +114 -0
  167. package/dist/browser/unstable/v2/index.js.map +1 -0
  168. package/dist/browser/unstable/v2/layout-projection.js +18 -0
  169. package/dist/browser/unstable/v2/layout-projection.js.map +1 -0
  170. package/dist/browser/unstable/v2/layout.js +71 -0
  171. package/dist/browser/unstable/v2/layout.js.map +1 -0
  172. package/dist/browser/unstable/v2/lifecycle.js +455 -0
  173. package/dist/browser/unstable/v2/lifecycle.js.map +1 -0
  174. package/dist/browser/unstable/v2/live-value.js +264 -0
  175. package/dist/browser/unstable/v2/live-value.js.map +1 -0
  176. package/dist/browser/unstable/v2/presence-handle.js +146 -0
  177. package/dist/browser/unstable/v2/presence-handle.js.map +1 -0
  178. package/dist/browser/unstable/v2/presence-hooks.js +142 -0
  179. package/dist/browser/unstable/v2/presence-hooks.js.map +1 -0
  180. package/dist/browser/unstable/v2/presence.js +124 -0
  181. package/dist/browser/unstable/v2/presence.js.map +1 -0
  182. package/dist/browser/unstable/v2/press-sensor.js +29 -0
  183. package/dist/browser/unstable/v2/press-sensor.js.map +1 -0
  184. package/dist/browser/unstable/v2/provider.js +457 -0
  185. package/dist/browser/unstable/v2/provider.js.map +1 -0
  186. package/dist/browser/unstable/v2/reorder.js +663 -0
  187. package/dist/browser/unstable/v2/reorder.js.map +1 -0
  188. package/dist/browser/unstable/v2/sensors.js +138 -0
  189. package/dist/browser/unstable/v2/sensors.js.map +1 -0
  190. package/dist/browser/unstable/v2/solid-reactivity.js +82 -0
  191. package/dist/browser/unstable/v2/solid-reactivity.js.map +1 -0
  192. package/dist/browser/unstable/v2/variant-node.js +395 -0
  193. package/dist/browser/unstable/v2/variant-node.js.map +1 -0
  194. package/dist/browser/unstable/v2/w.js +23 -0
  195. package/dist/browser/unstable/v2/w.js.map +1 -0
  196. package/dist/browser/unstable/v2/waiters.js +185 -0
  197. package/dist/browser/unstable/v2/waiters.js.map +1 -0
  198. package/dist/browser/unstable/v2/ward.js +1620 -0
  199. package/dist/browser/unstable/v2/ward.js.map +1 -0
  200. package/dist/browser/unstable/v2/wardic-config.js +40 -0
  201. package/dist/browser/unstable/v2/wardic-config.js.map +1 -0
  202. package/dist/browser/unstable/v2/wardic.js +16 -0
  203. package/dist/browser/unstable/v2/wardic.js.map +1 -0
  204. package/dist/browser/variant-node.js +308 -0
  205. package/dist/browser/variant-node.js.map +1 -0
  206. package/dist/browser/variant-target.js +224 -0
  207. package/dist/browser/variant-target.js.map +1 -0
  208. package/dist/browser/variant-tree.js +394 -0
  209. package/dist/browser/variant-tree.js.map +1 -0
  210. package/dist/browser/variants.js +43 -0
  211. package/dist/browser/variants.js.map +1 -0
  212. package/dist/browser/w.js +25 -0
  213. package/dist/browser/w.js.map +1 -0
  214. package/dist/browser/ward-keys.js +2 -0
  215. package/dist/browser/ward-keys.js.map +1 -0
  216. package/dist/browser/wardic-component.js +74 -0
  217. package/dist/browser/wardic-component.js.map +1 -0
  218. package/dist/browser/wardic-config-value.js +91 -0
  219. package/dist/browser/wardic-config-value.js.map +1 -0
  220. package/dist/browser/wardic-config.js +42 -0
  221. package/dist/browser/wardic-config.js.map +1 -0
  222. package/dist/browser/wardic.js +31 -0
  223. package/dist/browser/wardic.js.map +1 -0
  224. package/dist/server/animation-controls.js +150 -0
  225. package/dist/server/animation-controls.js.map +1 -0
  226. package/dist/server/animation-frame.js +29 -0
  227. package/dist/server/animation-frame.js.map +1 -0
  228. package/dist/server/appear.js +727 -0
  229. package/dist/server/appear.js.map +1 -0
  230. package/dist/server/arc.js +21 -0
  231. package/dist/server/arc.js.map +1 -0
  232. package/dist/server/bridge.js +69 -0
  233. package/dist/server/bridge.js.map +1 -0
  234. package/dist/server/complete.js +30 -0
  235. package/dist/server/complete.js.map +1 -0
  236. package/dist/server/config.js +2 -0
  237. package/dist/server/config.js.map +1 -0
  238. package/dist/server/create-animate.js +41 -0
  239. package/dist/server/create-animate.js.map +1 -0
  240. package/dist/server/create-ward.js +1001 -0
  241. package/dist/server/create-ward.js.map +1 -0
  242. package/dist/server/cycle-index.js +17 -0
  243. package/dist/server/cycle-index.js.map +1 -0
  244. package/dist/server/cycle.js +31 -0
  245. package/dist/server/cycle.js.map +1 -0
  246. package/dist/server/directive.js +80 -0
  247. package/dist/server/directive.js.map +1 -0
  248. package/dist/server/drag-constraints.js +76 -0
  249. package/dist/server/drag-constraints.js.map +1 -0
  250. package/dist/server/drag-controls.js +51 -0
  251. package/dist/server/drag-controls.js.map +1 -0
  252. package/dist/server/drag-samples.js +40 -0
  253. package/dist/server/drag-samples.js.map +1 -0
  254. package/dist/server/drag-sensor.js +35 -0
  255. package/dist/server/drag-sensor.js.map +1 -0
  256. package/dist/server/drag-track.js +817 -0
  257. package/dist/server/drag-track.js.map +1 -0
  258. package/dist/server/drag-transition.js +56 -0
  259. package/dist/server/drag-transition.js.map +1 -0
  260. package/dist/server/drag.js +44 -0
  261. package/dist/server/drag.js.map +1 -0
  262. package/dist/server/element-style.js +67 -0
  263. package/dist/server/element-style.js.map +1 -0
  264. package/dist/server/element.js +353 -0
  265. package/dist/server/element.js.map +1 -0
  266. package/dist/server/feature-section.js +17 -0
  267. package/dist/server/feature-section.js.map +1 -0
  268. package/dist/server/feature.js +261 -0
  269. package/dist/server/feature.js.map +1 -0
  270. package/dist/server/features/all.js +10 -0
  271. package/dist/server/features/all.js.map +1 -0
  272. package/dist/server/features/colors.js +33 -0
  273. package/dist/server/features/colors.js.map +1 -0
  274. package/dist/server/features/dom-animation.js +7 -0
  275. package/dist/server/features/dom-animation.js.map +1 -0
  276. package/dist/server/features/dom-max.js +4 -0
  277. package/dist/server/features/dom-max.js.map +1 -0
  278. package/dist/server/features/drag.js +28 -0
  279. package/dist/server/features/drag.js.map +1 -0
  280. package/dist/server/features/focus.js +18 -0
  281. package/dist/server/features/focus.js.map +1 -0
  282. package/dist/server/features/hover.js +18 -0
  283. package/dist/server/features/hover.js.map +1 -0
  284. package/dist/server/features/in-view.js +18 -0
  285. package/dist/server/features/in-view.js.map +1 -0
  286. package/dist/server/features/input.js +30 -0
  287. package/dist/server/features/input.js.map +1 -0
  288. package/dist/server/features/keys.js +19 -0
  289. package/dist/server/features/keys.js.map +1 -0
  290. package/dist/server/features/layout.js +33 -0
  291. package/dist/server/features/layout.js.map +1 -0
  292. package/dist/server/features/pan.js +18 -0
  293. package/dist/server/features/pan.js.map +1 -0
  294. package/dist/server/features/press.js +12 -0
  295. package/dist/server/features/press.js.map +1 -0
  296. package/dist/server/focus-sensor.js +23 -0
  297. package/dist/server/focus-sensor.js.map +1 -0
  298. package/dist/server/frame-time.js +40 -0
  299. package/dist/server/frame-time.js.map +1 -0
  300. package/dist/server/gesture-callbacks.js +172 -0
  301. package/dist/server/gesture-callbacks.js.map +1 -0
  302. package/dist/server/gesture-features.js +29 -0
  303. package/dist/server/gesture-features.js.map +1 -0
  304. package/dist/server/gesture-info.js +43 -0
  305. package/dist/server/gesture-info.js.map +1 -0
  306. package/dist/server/hover-sensor.js +29 -0
  307. package/dist/server/hover-sensor.js.map +1 -0
  308. package/dist/server/imperative.js +614 -0
  309. package/dist/server/imperative.js.map +1 -0
  310. package/dist/server/index.js +165 -0
  311. package/dist/server/index.js.map +1 -0
  312. package/dist/server/instant.js +51 -0
  313. package/dist/server/instant.js.map +1 -0
  314. package/dist/server/layout-group.js +27 -0
  315. package/dist/server/layout-group.js.map +1 -0
  316. package/dist/server/layout-member.js +362 -0
  317. package/dist/server/layout-member.js.map +1 -0
  318. package/dist/server/layout-projection.js +19 -0
  319. package/dist/server/layout-projection.js.map +1 -0
  320. package/dist/server/layout.js +90 -0
  321. package/dist/server/layout.js.map +1 -0
  322. package/dist/server/live-style.js +313 -0
  323. package/dist/server/live-style.js.map +1 -0
  324. package/dist/server/live-value.js +252 -0
  325. package/dist/server/live-value.js.map +1 -0
  326. package/dist/server/motion-props.js +172 -0
  327. package/dist/server/motion-props.js.map +1 -0
  328. package/dist/server/owner-scope.js +29 -0
  329. package/dist/server/owner-scope.js.map +1 -0
  330. package/dist/server/page-point.js +92 -0
  331. package/dist/server/page-point.js.map +1 -0
  332. package/dist/server/presence-controller.js +1324 -0
  333. package/dist/server/presence-controller.js.map +1 -0
  334. package/dist/server/presence-record.js +27 -0
  335. package/dist/server/presence-record.js.map +1 -0
  336. package/dist/server/presence.js +207 -0
  337. package/dist/server/presence.js.map +1 -0
  338. package/dist/server/press-sensor.js +30 -0
  339. package/dist/server/press-sensor.js.map +1 -0
  340. package/dist/server/press.js +24 -0
  341. package/dist/server/press.js.map +1 -0
  342. package/dist/server/provider.js +439 -0
  343. package/dist/server/provider.js.map +1 -0
  344. package/dist/server/reactivity.js +9 -0
  345. package/dist/server/reactivity.js.map +1 -0
  346. package/dist/server/reorder-input.js +46 -0
  347. package/dist/server/reorder-input.js.map +1 -0
  348. package/dist/server/reorder.js +543 -0
  349. package/dist/server/reorder.js.map +1 -0
  350. package/dist/server/retarget-legs.js +1019 -0
  351. package/dist/server/retarget-legs.js.map +1 -0
  352. package/dist/server/runtime.js +249 -0
  353. package/dist/server/runtime.js.map +1 -0
  354. package/dist/server/sensors.js +172 -0
  355. package/dist/server/sensors.js.map +1 -0
  356. package/dist/server/server-interpolators.js +20 -0
  357. package/dist/server/server-interpolators.js.map +1 -0
  358. package/dist/server/server.js +20 -0
  359. package/dist/server/server.js.map +1 -0
  360. package/dist/server/solid-reactivity.js +26 -0
  361. package/dist/server/solid-reactivity.js.map +1 -0
  362. package/dist/server/spine.js +2939 -0
  363. package/dist/server/spine.js.map +1 -0
  364. package/dist/server/stagger.js +13 -0
  365. package/dist/server/stagger.js.map +1 -0
  366. package/dist/server/unstable/v2/bridge.js +76 -0
  367. package/dist/server/unstable/v2/bridge.js.map +1 -0
  368. package/dist/server/unstable/v2/complete.js +29 -0
  369. package/dist/server/unstable/v2/complete.js.map +1 -0
  370. package/dist/server/unstable/v2/config-view.js +111 -0
  371. package/dist/server/unstable/v2/config-view.js.map +1 -0
  372. package/dist/server/unstable/v2/create-animate.js +102 -0
  373. package/dist/server/unstable/v2/create-animate.js.map +1 -0
  374. package/dist/server/unstable/v2/cycle.js +30 -0
  375. package/dist/server/unstable/v2/cycle.js.map +1 -0
  376. package/dist/server/unstable/v2/drag-sensor.js +34 -0
  377. package/dist/server/unstable/v2/drag-sensor.js.map +1 -0
  378. package/dist/server/unstable/v2/element.js +402 -0
  379. package/dist/server/unstable/v2/element.js.map +1 -0
  380. package/dist/server/unstable/v2/feature-section.js +27 -0
  381. package/dist/server/unstable/v2/feature-section.js.map +1 -0
  382. package/dist/server/unstable/v2/focus-sensor.js +23 -0
  383. package/dist/server/unstable/v2/focus-sensor.js.map +1 -0
  384. package/dist/server/unstable/v2/hover-sensor.js +28 -0
  385. package/dist/server/unstable/v2/hover-sensor.js.map +1 -0
  386. package/dist/server/unstable/v2/index.js +114 -0
  387. package/dist/server/unstable/v2/index.js.map +1 -0
  388. package/dist/server/unstable/v2/layout-projection.js +18 -0
  389. package/dist/server/unstable/v2/layout-projection.js.map +1 -0
  390. package/dist/server/unstable/v2/layout.js +88 -0
  391. package/dist/server/unstable/v2/layout.js.map +1 -0
  392. package/dist/server/unstable/v2/lifecycle.js +455 -0
  393. package/dist/server/unstable/v2/lifecycle.js.map +1 -0
  394. package/dist/server/unstable/v2/live-value.js +264 -0
  395. package/dist/server/unstable/v2/live-value.js.map +1 -0
  396. package/dist/server/unstable/v2/presence-handle.js +146 -0
  397. package/dist/server/unstable/v2/presence-handle.js.map +1 -0
  398. package/dist/server/unstable/v2/presence-hooks.js +142 -0
  399. package/dist/server/unstable/v2/presence-hooks.js.map +1 -0
  400. package/dist/server/unstable/v2/presence.js +142 -0
  401. package/dist/server/unstable/v2/presence.js.map +1 -0
  402. package/dist/server/unstable/v2/press-sensor.js +29 -0
  403. package/dist/server/unstable/v2/press-sensor.js.map +1 -0
  404. package/dist/server/unstable/v2/provider.js +475 -0
  405. package/dist/server/unstable/v2/provider.js.map +1 -0
  406. package/dist/server/unstable/v2/reorder.js +733 -0
  407. package/dist/server/unstable/v2/reorder.js.map +1 -0
  408. package/dist/server/unstable/v2/sensors.js +138 -0
  409. package/dist/server/unstable/v2/sensors.js.map +1 -0
  410. package/dist/server/unstable/v2/solid-reactivity.js +82 -0
  411. package/dist/server/unstable/v2/solid-reactivity.js.map +1 -0
  412. package/dist/server/unstable/v2/variant-node.js +395 -0
  413. package/dist/server/unstable/v2/variant-node.js.map +1 -0
  414. package/dist/server/unstable/v2/w.js +23 -0
  415. package/dist/server/unstable/v2/w.js.map +1 -0
  416. package/dist/server/unstable/v2/waiters.js +185 -0
  417. package/dist/server/unstable/v2/waiters.js.map +1 -0
  418. package/dist/server/unstable/v2/ward.js +1653 -0
  419. package/dist/server/unstable/v2/ward.js.map +1 -0
  420. package/dist/server/unstable/v2/wardic-config.js +49 -0
  421. package/dist/server/unstable/v2/wardic-config.js.map +1 -0
  422. package/dist/server/unstable/v2/wardic.js +16 -0
  423. package/dist/server/unstable/v2/wardic.js.map +1 -0
  424. package/dist/server/variant-node.js +308 -0
  425. package/dist/server/variant-node.js.map +1 -0
  426. package/dist/server/variant-target.js +224 -0
  427. package/dist/server/variant-target.js.map +1 -0
  428. package/dist/server/variant-tree.js +394 -0
  429. package/dist/server/variant-tree.js.map +1 -0
  430. package/dist/server/variants.js +43 -0
  431. package/dist/server/variants.js.map +1 -0
  432. package/dist/server/w.js +25 -0
  433. package/dist/server/w.js.map +1 -0
  434. package/dist/server/ward-keys.js +2 -0
  435. package/dist/server/ward-keys.js.map +1 -0
  436. package/dist/server/wardic-component.js +74 -0
  437. package/dist/server/wardic-component.js.map +1 -0
  438. package/dist/server/wardic-config-value.js +91 -0
  439. package/dist/server/wardic-config-value.js.map +1 -0
  440. package/dist/server/wardic-config.js +42 -0
  441. package/dist/server/wardic-config.js.map +1 -0
  442. package/dist/server/wardic.js +31 -0
  443. package/dist/server/wardic.js.map +1 -0
  444. package/dist/solid/animation-controls.d.ts +104 -0
  445. package/dist/solid/animation-controls.d.ts.map +1 -0
  446. package/dist/solid/animation-controls.js +129 -0
  447. package/dist/solid/animation-controls.js.map +1 -0
  448. package/dist/solid/animation-frame.d.ts +11 -0
  449. package/dist/solid/animation-frame.d.ts.map +1 -0
  450. package/dist/solid/animation-frame.js +31 -0
  451. package/dist/solid/animation-frame.js.map +1 -0
  452. package/dist/solid/appear.d.ts +205 -0
  453. package/dist/solid/appear.d.ts.map +1 -0
  454. package/dist/solid/appear.js +519 -0
  455. package/dist/solid/appear.js.map +1 -0
  456. package/dist/solid/arc.d.ts +25 -0
  457. package/dist/solid/arc.d.ts.map +1 -0
  458. package/dist/solid/arc.js +21 -0
  459. package/dist/solid/arc.js.map +1 -0
  460. package/dist/solid/bridge.d.ts +53 -0
  461. package/dist/solid/bridge.d.ts.map +1 -0
  462. package/dist/solid/bridge.js +66 -0
  463. package/dist/solid/bridge.js.map +1 -0
  464. package/dist/solid/complete.d.ts +31 -0
  465. package/dist/solid/complete.d.ts.map +1 -0
  466. package/dist/solid/complete.js +27 -0
  467. package/dist/solid/complete.js.map +1 -0
  468. package/dist/solid/config.d.ts +693 -0
  469. package/dist/solid/config.d.ts.map +1 -0
  470. package/dist/solid/config.js +2 -0
  471. package/dist/solid/config.js.map +1 -0
  472. package/dist/solid/create-animate.d.ts +17 -0
  473. package/dist/solid/create-animate.d.ts.map +1 -0
  474. package/dist/solid/create-animate.js +42 -0
  475. package/dist/solid/create-animate.js.map +1 -0
  476. package/dist/solid/create-ward.d.ts +278 -0
  477. package/dist/solid/create-ward.d.ts.map +1 -0
  478. package/dist/solid/create-ward.jsx +874 -0
  479. package/dist/solid/create-ward.jsx.map +1 -0
  480. package/dist/solid/cycle-index.d.ts +7 -0
  481. package/dist/solid/cycle-index.d.ts.map +1 -0
  482. package/dist/solid/cycle-index.js +17 -0
  483. package/dist/solid/cycle-index.js.map +1 -0
  484. package/dist/solid/cycle.d.ts +21 -0
  485. package/dist/solid/cycle.d.ts.map +1 -0
  486. package/dist/solid/cycle.js +31 -0
  487. package/dist/solid/cycle.js.map +1 -0
  488. package/dist/solid/directive.d.ts +21 -0
  489. package/dist/solid/directive.d.ts.map +1 -0
  490. package/dist/solid/directive.js +76 -0
  491. package/dist/solid/directive.js.map +1 -0
  492. package/dist/solid/drag-constraints.d.ts +46 -0
  493. package/dist/solid/drag-constraints.d.ts.map +1 -0
  494. package/dist/solid/drag-constraints.js +49 -0
  495. package/dist/solid/drag-constraints.js.map +1 -0
  496. package/dist/solid/drag-controls.d.ts +50 -0
  497. package/dist/solid/drag-controls.d.ts.map +1 -0
  498. package/dist/solid/drag-controls.js +51 -0
  499. package/dist/solid/drag-controls.js.map +1 -0
  500. package/dist/solid/drag-samples.d.ts +34 -0
  501. package/dist/solid/drag-samples.d.ts.map +1 -0
  502. package/dist/solid/drag-samples.js +28 -0
  503. package/dist/solid/drag-samples.js.map +1 -0
  504. package/dist/solid/drag-sensor.d.ts +23 -0
  505. package/dist/solid/drag-sensor.d.ts.map +1 -0
  506. package/dist/solid/drag-sensor.js +33 -0
  507. package/dist/solid/drag-sensor.js.map +1 -0
  508. package/dist/solid/drag-track.d.ts +227 -0
  509. package/dist/solid/drag-track.d.ts.map +1 -0
  510. package/dist/solid/drag-track.js +631 -0
  511. package/dist/solid/drag-track.js.map +1 -0
  512. package/dist/solid/drag-transition.d.ts +20 -0
  513. package/dist/solid/drag-transition.d.ts.map +1 -0
  514. package/dist/solid/drag-transition.js +31 -0
  515. package/dist/solid/drag-transition.js.map +1 -0
  516. package/dist/solid/drag.d.ts +23 -0
  517. package/dist/solid/drag.d.ts.map +1 -0
  518. package/dist/solid/drag.js +44 -0
  519. package/dist/solid/drag.js.map +1 -0
  520. package/dist/solid/element-style.d.ts +60 -0
  521. package/dist/solid/element-style.d.ts.map +1 -0
  522. package/dist/solid/element-style.js +50 -0
  523. package/dist/solid/element-style.js.map +1 -0
  524. package/dist/solid/element.d.ts +73 -0
  525. package/dist/solid/element.d.ts.map +1 -0
  526. package/dist/solid/element.jsx +326 -0
  527. package/dist/solid/element.jsx.map +1 -0
  528. package/dist/solid/feature-section.d.ts +18 -0
  529. package/dist/solid/feature-section.d.ts.map +1 -0
  530. package/dist/solid/feature-section.js +13 -0
  531. package/dist/solid/feature-section.js.map +1 -0
  532. package/dist/solid/feature.d.ts +114 -0
  533. package/dist/solid/feature.d.ts.map +1 -0
  534. package/dist/solid/feature.js +248 -0
  535. package/dist/solid/feature.js.map +1 -0
  536. package/dist/solid/features/all.d.ts +10 -0
  537. package/dist/solid/features/all.d.ts.map +1 -0
  538. package/dist/solid/features/all.js +10 -0
  539. package/dist/solid/features/all.js.map +1 -0
  540. package/dist/solid/features/colors.d.ts +12 -0
  541. package/dist/solid/features/colors.d.ts.map +1 -0
  542. package/dist/solid/features/colors.js +34 -0
  543. package/dist/solid/features/colors.js.map +1 -0
  544. package/dist/solid/features/dom-animation.d.ts +11 -0
  545. package/dist/solid/features/dom-animation.d.ts.map +1 -0
  546. package/dist/solid/features/dom-animation.js +7 -0
  547. package/dist/solid/features/dom-animation.js.map +1 -0
  548. package/dist/solid/features/dom-max.d.ts +10 -0
  549. package/dist/solid/features/dom-max.d.ts.map +1 -0
  550. package/dist/solid/features/dom-max.js +4 -0
  551. package/dist/solid/features/dom-max.js.map +1 -0
  552. package/dist/solid/features/drag.d.ts +5 -0
  553. package/dist/solid/features/drag.d.ts.map +1 -0
  554. package/dist/solid/features/drag.js +28 -0
  555. package/dist/solid/features/drag.js.map +1 -0
  556. package/dist/solid/features/focus.d.ts +5 -0
  557. package/dist/solid/features/focus.d.ts.map +1 -0
  558. package/dist/solid/features/focus.js +16 -0
  559. package/dist/solid/features/focus.js.map +1 -0
  560. package/dist/solid/features/hover.d.ts +5 -0
  561. package/dist/solid/features/hover.d.ts.map +1 -0
  562. package/dist/solid/features/hover.js +16 -0
  563. package/dist/solid/features/hover.js.map +1 -0
  564. package/dist/solid/features/in-view.d.ts +5 -0
  565. package/dist/solid/features/in-view.d.ts.map +1 -0
  566. package/dist/solid/features/in-view.js +16 -0
  567. package/dist/solid/features/in-view.js.map +1 -0
  568. package/dist/solid/features/input.d.ts +26 -0
  569. package/dist/solid/features/input.d.ts.map +1 -0
  570. package/dist/solid/features/input.js +31 -0
  571. package/dist/solid/features/input.js.map +1 -0
  572. package/dist/solid/features/keys.d.ts +70 -0
  573. package/dist/solid/features/keys.d.ts.map +1 -0
  574. package/dist/solid/features/keys.js +26 -0
  575. package/dist/solid/features/keys.js.map +1 -0
  576. package/dist/solid/features/layout.d.ts +32 -0
  577. package/dist/solid/features/layout.d.ts.map +1 -0
  578. package/dist/solid/features/layout.js +34 -0
  579. package/dist/solid/features/layout.js.map +1 -0
  580. package/dist/solid/features/pan.d.ts +5 -0
  581. package/dist/solid/features/pan.d.ts.map +1 -0
  582. package/dist/solid/features/pan.js +16 -0
  583. package/dist/solid/features/pan.js.map +1 -0
  584. package/dist/solid/features/press.d.ts +11 -0
  585. package/dist/solid/features/press.d.ts.map +1 -0
  586. package/dist/solid/features/press.js +10 -0
  587. package/dist/solid/features/press.js.map +1 -0
  588. package/dist/solid/focus-sensor.d.ts +19 -0
  589. package/dist/solid/focus-sensor.d.ts.map +1 -0
  590. package/dist/solid/focus-sensor.js +23 -0
  591. package/dist/solid/focus-sensor.js.map +1 -0
  592. package/dist/solid/frame-time.d.ts +21 -0
  593. package/dist/solid/frame-time.d.ts.map +1 -0
  594. package/dist/solid/frame-time.js +41 -0
  595. package/dist/solid/frame-time.js.map +1 -0
  596. package/dist/solid/gesture-callbacks.d.ts +53 -0
  597. package/dist/solid/gesture-callbacks.d.ts.map +1 -0
  598. package/dist/solid/gesture-callbacks.js +184 -0
  599. package/dist/solid/gesture-callbacks.js.map +1 -0
  600. package/dist/solid/gesture-features.d.ts +28 -0
  601. package/dist/solid/gesture-features.d.ts.map +1 -0
  602. package/dist/solid/gesture-features.js +29 -0
  603. package/dist/solid/gesture-features.js.map +1 -0
  604. package/dist/solid/gesture-info.d.ts +59 -0
  605. package/dist/solid/gesture-info.d.ts.map +1 -0
  606. package/dist/solid/gesture-info.js +23 -0
  607. package/dist/solid/gesture-info.js.map +1 -0
  608. package/dist/solid/hover-sensor.d.ts +19 -0
  609. package/dist/solid/hover-sensor.d.ts.map +1 -0
  610. package/dist/solid/hover-sensor.js +23 -0
  611. package/dist/solid/hover-sensor.js.map +1 -0
  612. package/dist/solid/imperative.d.ts +195 -0
  613. package/dist/solid/imperative.d.ts.map +1 -0
  614. package/dist/solid/imperative.js +536 -0
  615. package/dist/solid/imperative.js.map +1 -0
  616. package/dist/solid/index.d.ts +180 -0
  617. package/dist/solid/index.d.ts.map +1 -0
  618. package/dist/solid/index.js +165 -0
  619. package/dist/solid/index.js.map +1 -0
  620. package/dist/solid/instant.d.ts +44 -0
  621. package/dist/solid/instant.d.ts.map +1 -0
  622. package/dist/solid/instant.js +49 -0
  623. package/dist/solid/instant.js.map +1 -0
  624. package/dist/solid/layout-group.d.ts +14 -0
  625. package/dist/solid/layout-group.d.ts.map +1 -0
  626. package/dist/solid/layout-group.js +27 -0
  627. package/dist/solid/layout-group.js.map +1 -0
  628. package/dist/solid/layout-member.d.ts +117 -0
  629. package/dist/solid/layout-member.d.ts.map +1 -0
  630. package/dist/solid/layout-member.js +164 -0
  631. package/dist/solid/layout-member.js.map +1 -0
  632. package/dist/solid/layout-projection.d.ts +22 -0
  633. package/dist/solid/layout-projection.d.ts.map +1 -0
  634. package/dist/solid/layout-projection.js +19 -0
  635. package/dist/solid/layout-projection.js.map +1 -0
  636. package/dist/solid/layout.d.ts +76 -0
  637. package/dist/solid/layout.d.ts.map +1 -0
  638. package/dist/solid/layout.jsx +80 -0
  639. package/dist/solid/layout.jsx.map +1 -0
  640. package/dist/solid/live-style.d.ts +147 -0
  641. package/dist/solid/live-style.d.ts.map +1 -0
  642. package/dist/solid/live-style.js +304 -0
  643. package/dist/solid/live-style.js.map +1 -0
  644. package/dist/solid/live-value.d.ts +144 -0
  645. package/dist/solid/live-value.d.ts.map +1 -0
  646. package/dist/solid/live-value.js +223 -0
  647. package/dist/solid/live-value.js.map +1 -0
  648. package/dist/solid/motion-props.d.ts +75 -0
  649. package/dist/solid/motion-props.d.ts.map +1 -0
  650. package/dist/solid/motion-props.js +314 -0
  651. package/dist/solid/motion-props.js.map +1 -0
  652. package/dist/solid/owner-scope.d.ts +16 -0
  653. package/dist/solid/owner-scope.d.ts.map +1 -0
  654. package/dist/solid/owner-scope.js +31 -0
  655. package/dist/solid/owner-scope.js.map +1 -0
  656. package/dist/solid/page-point.d.ts +35 -0
  657. package/dist/solid/page-point.d.ts.map +1 -0
  658. package/dist/solid/page-point.js +87 -0
  659. package/dist/solid/page-point.js.map +1 -0
  660. package/dist/solid/presence-controller.d.ts +122 -0
  661. package/dist/solid/presence-controller.d.ts.map +1 -0
  662. package/dist/solid/presence-controller.js +1207 -0
  663. package/dist/solid/presence-controller.js.map +1 -0
  664. package/dist/solid/presence-record.d.ts +167 -0
  665. package/dist/solid/presence-record.d.ts.map +1 -0
  666. package/dist/solid/presence-record.js +26 -0
  667. package/dist/solid/presence-record.js.map +1 -0
  668. package/dist/solid/presence.d.ts +95 -0
  669. package/dist/solid/presence.d.ts.map +1 -0
  670. package/dist/solid/presence.jsx +195 -0
  671. package/dist/solid/presence.jsx.map +1 -0
  672. package/dist/solid/press-sensor.d.ts +20 -0
  673. package/dist/solid/press-sensor.d.ts.map +1 -0
  674. package/dist/solid/press-sensor.js +24 -0
  675. package/dist/solid/press-sensor.js.map +1 -0
  676. package/dist/solid/press.d.ts +24 -0
  677. package/dist/solid/press.d.ts.map +1 -0
  678. package/dist/solid/press.js +19 -0
  679. package/dist/solid/press.js.map +1 -0
  680. package/dist/solid/provider.d.ts +263 -0
  681. package/dist/solid/provider.d.ts.map +1 -0
  682. package/dist/solid/provider.jsx +411 -0
  683. package/dist/solid/provider.jsx.map +1 -0
  684. package/dist/solid/reactivity.d.ts +27 -0
  685. package/dist/solid/reactivity.d.ts.map +1 -0
  686. package/dist/solid/reactivity.js +9 -0
  687. package/dist/solid/reactivity.js.map +1 -0
  688. package/dist/solid/reorder-input.d.ts +22 -0
  689. package/dist/solid/reorder-input.d.ts.map +1 -0
  690. package/dist/solid/reorder-input.js +45 -0
  691. package/dist/solid/reorder-input.js.map +1 -0
  692. package/dist/solid/reorder.d.ts +241 -0
  693. package/dist/solid/reorder.d.ts.map +1 -0
  694. package/dist/solid/reorder.jsx +427 -0
  695. package/dist/solid/reorder.jsx.map +1 -0
  696. package/dist/solid/retarget-legs.d.ts +189 -0
  697. package/dist/solid/retarget-legs.d.ts.map +1 -0
  698. package/dist/solid/retarget-legs.js +825 -0
  699. package/dist/solid/retarget-legs.js.map +1 -0
  700. package/dist/solid/runtime.d.ts +179 -0
  701. package/dist/solid/runtime.d.ts.map +1 -0
  702. package/dist/solid/runtime.js +237 -0
  703. package/dist/solid/runtime.js.map +1 -0
  704. package/dist/solid/sensors.d.ts +95 -0
  705. package/dist/solid/sensors.d.ts.map +1 -0
  706. package/dist/solid/sensors.js +154 -0
  707. package/dist/solid/sensors.js.map +1 -0
  708. package/dist/solid/server-interpolators.d.ts +13 -0
  709. package/dist/solid/server-interpolators.d.ts.map +1 -0
  710. package/dist/solid/server-interpolators.js +20 -0
  711. package/dist/solid/server-interpolators.js.map +1 -0
  712. package/dist/solid/server.d.ts +9 -0
  713. package/dist/solid/server.d.ts.map +1 -0
  714. package/dist/solid/server.js +20 -0
  715. package/dist/solid/server.js.map +1 -0
  716. package/dist/solid/solid-reactivity.d.ts +3 -0
  717. package/dist/solid/solid-reactivity.d.ts.map +1 -0
  718. package/dist/solid/solid-reactivity.js +19 -0
  719. package/dist/solid/solid-reactivity.js.map +1 -0
  720. package/dist/solid/spine.d.ts +597 -0
  721. package/dist/solid/spine.d.ts.map +1 -0
  722. package/dist/solid/spine.js +2761 -0
  723. package/dist/solid/spine.js.map +1 -0
  724. package/dist/solid/stagger.d.ts +29 -0
  725. package/dist/solid/stagger.d.ts.map +1 -0
  726. package/dist/solid/stagger.js +13 -0
  727. package/dist/solid/stagger.js.map +1 -0
  728. package/dist/solid/unstable/v2/bridge.d.ts +33 -0
  729. package/dist/solid/unstable/v2/bridge.d.ts.map +1 -0
  730. package/dist/solid/unstable/v2/bridge.js +76 -0
  731. package/dist/solid/unstable/v2/bridge.js.map +1 -0
  732. package/dist/solid/unstable/v2/complete.d.ts +21 -0
  733. package/dist/solid/unstable/v2/complete.d.ts.map +1 -0
  734. package/dist/solid/unstable/v2/complete.js +27 -0
  735. package/dist/solid/unstable/v2/complete.js.map +1 -0
  736. package/dist/solid/unstable/v2/config-view.d.ts +49 -0
  737. package/dist/solid/unstable/v2/config-view.d.ts.map +1 -0
  738. package/dist/solid/unstable/v2/config-view.js +114 -0
  739. package/dist/solid/unstable/v2/config-view.js.map +1 -0
  740. package/dist/solid/unstable/v2/create-animate.d.ts +31 -0
  741. package/dist/solid/unstable/v2/create-animate.d.ts.map +1 -0
  742. package/dist/solid/unstable/v2/create-animate.js +102 -0
  743. package/dist/solid/unstable/v2/create-animate.js.map +1 -0
  744. package/dist/solid/unstable/v2/cycle.d.ts +20 -0
  745. package/dist/solid/unstable/v2/cycle.d.ts.map +1 -0
  746. package/dist/solid/unstable/v2/cycle.js +30 -0
  747. package/dist/solid/unstable/v2/cycle.js.map +1 -0
  748. package/dist/solid/unstable/v2/drag-sensor.d.ts +23 -0
  749. package/dist/solid/unstable/v2/drag-sensor.d.ts.map +1 -0
  750. package/dist/solid/unstable/v2/drag-sensor.js +32 -0
  751. package/dist/solid/unstable/v2/drag-sensor.js.map +1 -0
  752. package/dist/solid/unstable/v2/element.d.ts +178 -0
  753. package/dist/solid/unstable/v2/element.d.ts.map +1 -0
  754. package/dist/solid/unstable/v2/element.jsx +325 -0
  755. package/dist/solid/unstable/v2/element.jsx.map +1 -0
  756. package/dist/solid/unstable/v2/feature-section.d.ts +12 -0
  757. package/dist/solid/unstable/v2/feature-section.d.ts.map +1 -0
  758. package/dist/solid/unstable/v2/feature-section.js +23 -0
  759. package/dist/solid/unstable/v2/feature-section.js.map +1 -0
  760. package/dist/solid/unstable/v2/focus-sensor.d.ts +13 -0
  761. package/dist/solid/unstable/v2/focus-sensor.d.ts.map +1 -0
  762. package/dist/solid/unstable/v2/focus-sensor.js +23 -0
  763. package/dist/solid/unstable/v2/focus-sensor.js.map +1 -0
  764. package/dist/solid/unstable/v2/hover-sensor.d.ts +12 -0
  765. package/dist/solid/unstable/v2/hover-sensor.d.ts.map +1 -0
  766. package/dist/solid/unstable/v2/hover-sensor.js +22 -0
  767. package/dist/solid/unstable/v2/hover-sensor.js.map +1 -0
  768. package/dist/solid/unstable/v2/index.d.ts +131 -0
  769. package/dist/solid/unstable/v2/index.d.ts.map +1 -0
  770. package/dist/solid/unstable/v2/index.js +114 -0
  771. package/dist/solid/unstable/v2/index.js.map +1 -0
  772. package/dist/solid/unstable/v2/layout-projection.d.ts +21 -0
  773. package/dist/solid/unstable/v2/layout-projection.d.ts.map +1 -0
  774. package/dist/solid/unstable/v2/layout-projection.js +18 -0
  775. package/dist/solid/unstable/v2/layout-projection.js.map +1 -0
  776. package/dist/solid/unstable/v2/layout.d.ts +47 -0
  777. package/dist/solid/unstable/v2/layout.d.ts.map +1 -0
  778. package/dist/solid/unstable/v2/layout.jsx +62 -0
  779. package/dist/solid/unstable/v2/layout.jsx.map +1 -0
  780. package/dist/solid/unstable/v2/lifecycle.d.ts +267 -0
  781. package/dist/solid/unstable/v2/lifecycle.d.ts.map +1 -0
  782. package/dist/solid/unstable/v2/lifecycle.js +457 -0
  783. package/dist/solid/unstable/v2/lifecycle.js.map +1 -0
  784. package/dist/solid/unstable/v2/live-value.d.ts +146 -0
  785. package/dist/solid/unstable/v2/live-value.d.ts.map +1 -0
  786. package/dist/solid/unstable/v2/live-value.js +235 -0
  787. package/dist/solid/unstable/v2/live-value.js.map +1 -0
  788. package/dist/solid/unstable/v2/presence-handle.d.ts +55 -0
  789. package/dist/solid/unstable/v2/presence-handle.d.ts.map +1 -0
  790. package/dist/solid/unstable/v2/presence-handle.js +119 -0
  791. package/dist/solid/unstable/v2/presence-handle.js.map +1 -0
  792. package/dist/solid/unstable/v2/presence-hooks.d.ts +51 -0
  793. package/dist/solid/unstable/v2/presence-hooks.d.ts.map +1 -0
  794. package/dist/solid/unstable/v2/presence-hooks.js +115 -0
  795. package/dist/solid/unstable/v2/presence-hooks.js.map +1 -0
  796. package/dist/solid/unstable/v2/presence.d.ts +89 -0
  797. package/dist/solid/unstable/v2/presence.d.ts.map +1 -0
  798. package/dist/solid/unstable/v2/presence.jsx +107 -0
  799. package/dist/solid/unstable/v2/presence.jsx.map +1 -0
  800. package/dist/solid/unstable/v2/press-sensor.d.ts +13 -0
  801. package/dist/solid/unstable/v2/press-sensor.d.ts.map +1 -0
  802. package/dist/solid/unstable/v2/press-sensor.js +23 -0
  803. package/dist/solid/unstable/v2/press-sensor.js.map +1 -0
  804. package/dist/solid/unstable/v2/provider.d.ts +239 -0
  805. package/dist/solid/unstable/v2/provider.d.ts.map +1 -0
  806. package/dist/solid/unstable/v2/provider.jsx +423 -0
  807. package/dist/solid/unstable/v2/provider.jsx.map +1 -0
  808. package/dist/solid/unstable/v2/reorder.d.ts +292 -0
  809. package/dist/solid/unstable/v2/reorder.d.ts.map +1 -0
  810. package/dist/solid/unstable/v2/reorder.jsx +525 -0
  811. package/dist/solid/unstable/v2/reorder.jsx.map +1 -0
  812. package/dist/solid/unstable/v2/sensors.d.ts +91 -0
  813. package/dist/solid/unstable/v2/sensors.d.ts.map +1 -0
  814. package/dist/solid/unstable/v2/sensors.js +124 -0
  815. package/dist/solid/unstable/v2/sensors.js.map +1 -0
  816. package/dist/solid/unstable/v2/solid-reactivity.d.ts +61 -0
  817. package/dist/solid/unstable/v2/solid-reactivity.d.ts.map +1 -0
  818. package/dist/solid/unstable/v2/solid-reactivity.js +62 -0
  819. package/dist/solid/unstable/v2/solid-reactivity.js.map +1 -0
  820. package/dist/solid/unstable/v2/variant-node.d.ts +51 -0
  821. package/dist/solid/unstable/v2/variant-node.d.ts.map +1 -0
  822. package/dist/solid/unstable/v2/variant-node.js +336 -0
  823. package/dist/solid/unstable/v2/variant-node.js.map +1 -0
  824. package/dist/solid/unstable/v2/w.d.ts +42 -0
  825. package/dist/solid/unstable/v2/w.d.ts.map +1 -0
  826. package/dist/solid/unstable/v2/w.jsx +22 -0
  827. package/dist/solid/unstable/v2/w.jsx.map +1 -0
  828. package/dist/solid/unstable/v2/waiters.d.ts +72 -0
  829. package/dist/solid/unstable/v2/waiters.d.ts.map +1 -0
  830. package/dist/solid/unstable/v2/waiters.js +175 -0
  831. package/dist/solid/unstable/v2/waiters.js.map +1 -0
  832. package/dist/solid/unstable/v2/ward.d.ts +393 -0
  833. package/dist/solid/unstable/v2/ward.d.ts.map +1 -0
  834. package/dist/solid/unstable/v2/ward.jsx +1475 -0
  835. package/dist/solid/unstable/v2/ward.jsx.map +1 -0
  836. package/dist/solid/unstable/v2/wardic-config.d.ts +68 -0
  837. package/dist/solid/unstable/v2/wardic-config.d.ts.map +1 -0
  838. package/dist/solid/unstable/v2/wardic-config.jsx +28 -0
  839. package/dist/solid/unstable/v2/wardic-config.jsx.map +1 -0
  840. package/dist/solid/unstable/v2/wardic.d.ts +28 -0
  841. package/dist/solid/unstable/v2/wardic.d.ts.map +1 -0
  842. package/dist/solid/unstable/v2/wardic.jsx +16 -0
  843. package/dist/solid/unstable/v2/wardic.jsx.map +1 -0
  844. package/dist/solid/variant-node.d.ts +32 -0
  845. package/dist/solid/variant-node.d.ts.map +1 -0
  846. package/dist/solid/variant-node.js +257 -0
  847. package/dist/solid/variant-node.js.map +1 -0
  848. package/dist/solid/variant-target.d.ts +102 -0
  849. package/dist/solid/variant-target.d.ts.map +1 -0
  850. package/dist/solid/variant-target.js +180 -0
  851. package/dist/solid/variant-target.js.map +1 -0
  852. package/dist/solid/variant-tree.d.ts +349 -0
  853. package/dist/solid/variant-tree.d.ts.map +1 -0
  854. package/dist/solid/variant-tree.js +358 -0
  855. package/dist/solid/variant-tree.js.map +1 -0
  856. package/dist/solid/variants.d.ts +21 -0
  857. package/dist/solid/variants.d.ts.map +1 -0
  858. package/dist/solid/variants.js +43 -0
  859. package/dist/solid/variants.js.map +1 -0
  860. package/dist/solid/w.d.ts +42 -0
  861. package/dist/solid/w.d.ts.map +1 -0
  862. package/dist/solid/w.jsx +23 -0
  863. package/dist/solid/w.jsx.map +1 -0
  864. package/dist/solid/ward-keys.d.ts +236 -0
  865. package/dist/solid/ward-keys.d.ts.map +1 -0
  866. package/dist/solid/ward-keys.js +2 -0
  867. package/dist/solid/ward-keys.js.map +1 -0
  868. package/dist/solid/wardic-component.d.ts +50 -0
  869. package/dist/solid/wardic-component.d.ts.map +1 -0
  870. package/dist/solid/wardic-component.js +74 -0
  871. package/dist/solid/wardic-component.js.map +1 -0
  872. package/dist/solid/wardic-config-value.d.ts +87 -0
  873. package/dist/solid/wardic-config-value.d.ts.map +1 -0
  874. package/dist/solid/wardic-config-value.js +106 -0
  875. package/dist/solid/wardic-config-value.js.map +1 -0
  876. package/dist/solid/wardic-config.d.ts +69 -0
  877. package/dist/solid/wardic-config.d.ts.map +1 -0
  878. package/dist/solid/wardic-config.jsx +30 -0
  879. package/dist/solid/wardic-config.jsx.map +1 -0
  880. package/dist/solid/wardic.d.ts +45 -0
  881. package/dist/solid/wardic.d.ts.map +1 -0
  882. package/dist/solid/wardic.jsx +31 -0
  883. package/dist/solid/wardic.jsx.map +1 -0
  884. package/package.json +98 -4
  885. package/src/animation-controls.ts +204 -0
  886. package/src/animation-frame.ts +32 -0
  887. package/src/appear.ts +804 -0
  888. package/src/arc.ts +34 -0
  889. package/src/bridge.ts +98 -0
  890. package/src/complete.ts +45 -0
  891. package/src/config.ts +805 -0
  892. package/src/create-animate.ts +41 -0
  893. package/src/create-ward.tsx +1271 -0
  894. package/src/cycle-index.ts +18 -0
  895. package/src/cycle.ts +34 -0
  896. package/src/directive.ts +87 -0
  897. package/src/drag-constraints.ts +103 -0
  898. package/src/drag-controls.ts +94 -0
  899. package/src/drag-samples.ts +54 -0
  900. package/src/drag-sensor.ts +46 -0
  901. package/src/drag-track.ts +937 -0
  902. package/src/drag-transition.ts +43 -0
  903. package/src/drag.ts +58 -0
  904. package/src/element-style.ts +112 -0
  905. package/src/element.tsx +400 -0
  906. package/src/feature-section.ts +33 -0
  907. package/src/feature.ts +342 -0
  908. package/src/features/all.ts +18 -0
  909. package/src/features/colors.ts +36 -0
  910. package/src/features/dom-animation.ts +15 -0
  911. package/src/features/dom-max.ts +11 -0
  912. package/src/features/drag.ts +30 -0
  913. package/src/features/focus.ts +17 -0
  914. package/src/features/hover.ts +17 -0
  915. package/src/features/in-view.ts +17 -0
  916. package/src/features/input.ts +42 -0
  917. package/src/features/keys.ts +89 -0
  918. package/src/features/layout.ts +54 -0
  919. package/src/features/pan.ts +17 -0
  920. package/src/features/press.ts +17 -0
  921. package/src/focus-sensor.ts +32 -0
  922. package/src/frame-time.ts +45 -0
  923. package/src/gesture-callbacks.ts +212 -0
  924. package/src/gesture-features.ts +35 -0
  925. package/src/gesture-info.ts +81 -0
  926. package/src/hover-sensor.ts +32 -0
  927. package/src/imperative.ts +782 -0
  928. package/src/index.ts +334 -0
  929. package/src/instant.ts +90 -0
  930. package/src/layout-group.ts +32 -0
  931. package/src/layout-member.ts +300 -0
  932. package/src/layout-projection.ts +28 -0
  933. package/src/layout.tsx +127 -0
  934. package/src/live-style.ts +449 -0
  935. package/src/live-value.ts +378 -0
  936. package/src/motion-props.ts +325 -0
  937. package/src/owner-scope.ts +31 -0
  938. package/src/page-point.ts +98 -0
  939. package/src/presence-controller.ts +1483 -0
  940. package/src/presence-record.ts +189 -0
  941. package/src/presence.tsx +269 -0
  942. package/src/press-sensor.ts +33 -0
  943. package/src/press.ts +40 -0
  944. package/src/provider.tsx +526 -0
  945. package/src/reactivity.ts +29 -0
  946. package/src/reorder-input.ts +53 -0
  947. package/src/reorder.tsx +703 -0
  948. package/src/retarget-legs.ts +1048 -0
  949. package/src/runtime.ts +388 -0
  950. package/src/sensors.ts +189 -0
  951. package/src/server-interpolators.ts +33 -0
  952. package/src/server.ts +21 -0
  953. package/src/solid-reactivity.ts +21 -0
  954. package/src/spine.ts +3385 -0
  955. package/src/stagger.ts +31 -0
  956. package/src/unstable/v2/bridge.ts +79 -0
  957. package/src/unstable/v2/complete.ts +47 -0
  958. package/src/unstable/v2/config-view.ts +156 -0
  959. package/src/unstable/v2/create-animate.ts +123 -0
  960. package/src/unstable/v2/cycle.ts +33 -0
  961. package/src/unstable/v2/drag-sensor.ts +44 -0
  962. package/src/unstable/v2/element.tsx +478 -0
  963. package/src/unstable/v2/feature-section.ts +32 -0
  964. package/src/unstable/v2/focus-sensor.ts +31 -0
  965. package/src/unstable/v2/hover-sensor.ts +30 -0
  966. package/src/unstable/v2/index.ts +270 -0
  967. package/src/unstable/v2/layout-projection.ts +27 -0
  968. package/src/unstable/v2/layout.tsx +89 -0
  969. package/src/unstable/v2/lifecycle.ts +612 -0
  970. package/src/unstable/v2/live-value.ts +414 -0
  971. package/src/unstable/v2/presence-handle.ts +159 -0
  972. package/src/unstable/v2/presence-hooks.ts +157 -0
  973. package/src/unstable/v2/presence.tsx +174 -0
  974. package/src/unstable/v2/press-sensor.ts +31 -0
  975. package/src/unstable/v2/provider.tsx +524 -0
  976. package/src/unstable/v2/reorder.tsx +880 -0
  977. package/src/unstable/v2/sensors.ts +169 -0
  978. package/src/unstable/v2/solid-reactivity.ts +69 -0
  979. package/src/unstable/v2/variant-node.ts +446 -0
  980. package/src/unstable/v2/w.tsx +49 -0
  981. package/src/unstable/v2/waiters.ts +212 -0
  982. package/src/unstable/v2/ward.tsx +2068 -0
  983. package/src/unstable/v2/wardic-config.tsx +84 -0
  984. package/src/unstable/v2/wardic.tsx +41 -0
  985. package/src/variant-node.ts +368 -0
  986. package/src/variant-target.ts +234 -0
  987. package/src/variant-tree.ts +638 -0
  988. package/src/variants.ts +47 -0
  989. package/src/w.tsx +59 -0
  990. package/src/ward-keys.ts +343 -0
  991. package/src/wardic-component.ts +96 -0
  992. package/src/wardic-config-value.ts +150 -0
  993. package/src/wardic-config.tsx +78 -0
  994. package/src/wardic.tsx +59 -0
@@ -0,0 +1,614 @@
1
+ import * as Machine from "@wardic/core/Machine";
2
+ import * as Playback from "@wardic/core/Playback";
3
+ import * as ReducedMotion from "@wardic/core/ReducedMotion";
4
+ import * as Sequence from "@wardic/core/Sequence";
5
+ import * as Report from "@wardic/dom/Report";
6
+ import * as Arr from "effect/Array";
7
+ import * as Bool from "effect/Boolean";
8
+ import * as Cause from "effect/Cause";
9
+ import * as Effect from "effect/Effect";
10
+ import * as Exit from "effect/Exit";
11
+ import { constVoid, identity } from "effect/Function";
12
+ import * as Match from "effect/Match";
13
+ import * as Predicate from "effect/Predicate";
14
+ import * as Rec from "effect/Record";
15
+ import * as UndefinedOr from "effect/UndefinedOr";
16
+ import { filledStops, runOf } from "./retarget-legs.js";
17
+ import { emptySnapshotOf, makeElementSpine, makeReuse, startLinksOf } from "./spine.js";
18
+ import { NO_VARIANT_STATE, resolveTarget } from "./variant-target.js";
19
+ /** Each mounted Wardic element's spine (Motion's `visualElementStore`). */
20
+ // Module state (#460, Q7): each Wardic element's animatable, held weakly by the element.
21
+ const wardicElements = new WeakMap();
22
+ /**
23
+ * Register a mounted Wardic element's spine for the Imperative animations of it (#433): until the
24
+ * returned function, which its unmount calls.
25
+ */
26
+ export const registerAnimatable = (element, spine) => {
27
+ wardicElements.set(element, spine);
28
+ return () => {
29
+ if (wardicElements.get(element) === spine) wardicElements.delete(element);
30
+ };
31
+ };
32
+ /** Each gate's plain elements: a provider's own, kept while the element is. */
33
+ // Module state (#460, Q7): each gate's plain elements, held weakly by the gate.
34
+ const plainByGate = new WeakMap();
35
+ /** The plain elements' gate ids, counted. */
36
+ // Module state (#460, Q7): an id counter, unique across every gate.
37
+ let plainIds = 0;
38
+ /** No config: a plain element's. */
39
+ const NO_CONFIG = {};
40
+ /** `element`'s plain spine under `env`'s gate, made at its first animation. */
41
+ const plainOf = (env, element) => {
42
+ let byElement = plainByGate.get(env.gate);
43
+ if (Predicate.isUndefined(byElement)) {
44
+ byElement = new WeakMap();
45
+ plainByGate.set(env.gate, byElement);
46
+ }
47
+ const known = byElement.get(element);
48
+ if (Predicate.isNotUndefined(known)) return known;
49
+ const el = element;
50
+ const id = `wardic-animate-${plainIds++}`;
51
+ const snapshot = emptySnapshotOf({});
52
+ const spine = makeElementSpine({
53
+ runtime: env.runtime,
54
+ gate: env.gate,
55
+ id,
56
+ element: el,
57
+ tag: undefined,
58
+ config: () => NO_CONFIG,
59
+ parent: undefined,
60
+ canStart: undefined,
61
+ extraDelay: undefined,
62
+ onFrame: undefined,
63
+ reducedMotion: env.reducedMotion,
64
+ positionalKeys: env.positionalKeys,
65
+ defaultTransition: env.defaultTransition,
66
+ start: {
67
+ initialValues: {},
68
+ initialLink: {},
69
+ startedLink: {},
70
+ quiet: false
71
+ },
72
+ snapshot,
73
+ reuse: makeReuse(),
74
+ links: startLinksOf(el, undefined, undefined),
75
+ styleNow: undefined,
76
+ live: undefined,
77
+ presence: undefined,
78
+ projected: false,
79
+ dragAxis: undefined,
80
+ handoff: undefined
81
+ });
82
+ const plain = {
83
+ spine,
84
+ snapshot,
85
+ id,
86
+ running: 0,
87
+ unregister: constVoid
88
+ };
89
+ byElement.set(element, plain);
90
+ return plain;
91
+ };
92
+ /**
93
+ * `transition` with `skipAnimations` when its scope's animations are skipped (#468, Motion's
94
+ * `useAnimate`, which hands its config's to each animation): a Wardic element's own config can skip it
95
+ * too, and a plain element has none.
96
+ */
97
+ const skippedIn = (env, transition) => {
98
+ if (Bool.not(env.skipAnimations())) return transition;
99
+ return {
100
+ ...transition,
101
+ skipAnimations: true
102
+ };
103
+ };
104
+ /**
105
+ * An element's animation of `target`: through its spine when it's a Wardic element's, else through its
106
+ * plain spine, in the gate while any of its animations runs.
107
+ */
108
+ const trackOf = (env, element, target, given, head, settled) => {
109
+ const resolved = resolveTarget(target, undefined, undefined, NO_VARIANT_STATE);
110
+ const own = wardicElements.get(element);
111
+ const hooks = {
112
+ settled,
113
+ failed: constVoid
114
+ };
115
+ const transition = skippedIn(env, given);
116
+ if (Predicate.isNotUndefined(own)) return own.animate(resolved, transition, head, hooks);
117
+ const plain = plainOf(env, element);
118
+ // In the gate while it runs; out once its last animation is done, after the flush of its last frame.
119
+ let live = false;
120
+ const enter = () => {
121
+ if (live) return;
122
+ live = true;
123
+ // Back in the gate with every value it holds, so a transform it draws keeps the keys it isn't animating.
124
+ if (plain.running === 0) {
125
+ plain.unregister = env.gate.register(plain.id, {
126
+ target: element
127
+ });
128
+ if (Bool.not(Rec.isEmptyRecord(plain.snapshot.values))) env.gate.write(plain.id, plain.snapshot.values);
129
+ }
130
+ plain.running++;
131
+ };
132
+ const leave = () => {
133
+ if (Bool.not(live)) return;
134
+ live = false;
135
+ plain.running--;
136
+ if (plain.running === 0) env.gate.afterFlush(() => {
137
+ if (plain.running === 0) plain.unregister();
138
+ });
139
+ };
140
+ const track = plain.spine.animate(resolved, transition, head, {
141
+ settled: () => {
142
+ leave();
143
+ settled();
144
+ },
145
+ failed: () => leave()
146
+ });
147
+ return {
148
+ run: () => {
149
+ enter();
150
+ track.run();
151
+ },
152
+ stop: () => {
153
+ track.stop();
154
+ leave();
155
+ },
156
+ cancel: () => {
157
+ enter();
158
+ track.cancel();
159
+ leave();
160
+ },
161
+ duration: track.duration
162
+ };
163
+ };
164
+ /** The elements of `subject`: a selector's inside `scope`, else the page's. */
165
+ const subjectsOf = (subject, scope) => {
166
+ if (Predicate.isNullish(subject)) return [];
167
+ if (Predicate.isString(subject)) return Arr.fromIterable(UndefinedOr.match(scope, {
168
+ onUndefined: () => document,
169
+ onDefined: el => el
170
+ }).querySelectorAll(subject));
171
+ if (Predicate.hasProperty(subject, "nodeType")) return [subject];
172
+ // A list's missing members left out, as Motion's.
173
+ if (Predicate.isIterable(subject)) return Arr.filter(Arr.fromIterable(subject), Predicate.isNotNullish);
174
+ const list = subject;
175
+ return Arr.filter(Arr.makeBy(list.length, i => list[i]), Predicate.isNotNullish);
176
+ };
177
+ /** Each element's transition: its `delay` worked out for it (Motion's `delay(i, n)`). */
178
+ const transitionFor = (options, index, count) => UndefinedOr.map(options, given => {
179
+ const {
180
+ delay,
181
+ onComplete: _onComplete,
182
+ ...rest
183
+ } = given;
184
+ if (Predicate.isFunction(delay)) return {
185
+ ...rest,
186
+ delay: delay(index, count)
187
+ };
188
+ if (Predicate.isUndefined(delay)) return rest;
189
+ return {
190
+ ...rest,
191
+ delay
192
+ };
193
+ });
194
+ /** Playback controls over `tracks`, all run through `head`, started now. */
195
+ const controlsOf = (tracks, head, watch, onComplete) => {
196
+ let state = "running";
197
+ let stopped = false;
198
+ let landed = 0;
199
+ let resolve;
200
+ let finished;
201
+ let isResolved = false;
202
+ let duration;
203
+ const durationNow = () => {
204
+ if (Predicate.isUndefined(duration)) duration = Arr.reduce(tracks, 0, (longest, track) => Math.max(longest, track.duration()));
205
+ return duration;
206
+ };
207
+ const runAll = () => {
208
+ landed = 0;
209
+ Arr.forEach(tracks, track => track.run());
210
+ };
211
+ const fresh = () => {
212
+ finished = undefined;
213
+ resolve = undefined;
214
+ isResolved = false;
215
+ };
216
+ const end = (how, landedNow) => {
217
+ const was = state;
218
+ state = how;
219
+ if (Bool.or(was === "running", was === "paused")) watch.ended(controls, landedNow);
220
+ };
221
+ const restart = () => {
222
+ const was = state;
223
+ state = "running";
224
+ if (Bool.or(was === "finished", was === "idle")) watch.started(controls);
225
+ };
226
+ const controls = {
227
+ get time() {
228
+ return head.time;
229
+ },
230
+ set time(at) {
231
+ Playback.seek(head, at);
232
+ // A seek of one that isn't running holds where it goes, as Motion's.
233
+ if (state !== "running") {
234
+ Playback.pause(head);
235
+ if (Bool.or(state === "finished", state === "idle")) {
236
+ fresh();
237
+ watch.started(controls);
238
+ }
239
+ state = "paused";
240
+ }
241
+ runAll();
242
+ },
243
+ get speed() {
244
+ return head.speed;
245
+ },
246
+ set speed(speed) {
247
+ Playback.setSpeed(head, speed);
248
+ },
249
+ get duration() {
250
+ return durationNow();
251
+ },
252
+ get state() {
253
+ return state;
254
+ },
255
+ get finished() {
256
+ if (Predicate.isUndefined(finished)) {
257
+ finished = Bool.match(isResolved, {
258
+ onTrue: () => Promise.resolve(),
259
+ onFalse: () => new Promise(done => {
260
+ resolve = done;
261
+ })
262
+ });
263
+ }
264
+ return finished;
265
+ },
266
+ then: (onResolve, onReject) => controls.finished.then(onResolve, onReject),
267
+ play: () => {
268
+ if (stopped) return;
269
+ if (state === "paused") {
270
+ Playback.play(head);
271
+ state = "running";
272
+ return;
273
+ }
274
+ if (state === "running") return;
275
+ // Again from its start: its end when it plays backwards.
276
+ fresh();
277
+ Playback.play(head);
278
+ Playback.seek(head, Bool.match(head.speed < 0, {
279
+ onTrue: durationNow,
280
+ onFalse: () => 0
281
+ }));
282
+ restart();
283
+ runAll();
284
+ },
285
+ pause: () => {
286
+ if (stopped) return;
287
+ Playback.pause(head);
288
+ if (state === "running") state = "paused";
289
+ },
290
+ stop: () => {
291
+ stopped = true;
292
+ Arr.forEach(tracks, track => track.stop());
293
+ end("idle", false);
294
+ },
295
+ cancel: () => {
296
+ Arr.forEach(tracks, track => track.cancel());
297
+ Playback.seek(head, 0);
298
+ end("idle", false);
299
+ },
300
+ complete: () => {
301
+ if (stopped) return;
302
+ if (state !== "running") restart();
303
+ Playback.play(head);
304
+ Playback.seek(head, durationNow());
305
+ runAll();
306
+ }
307
+ };
308
+ // Each element's legs landed: the last lands the animation.
309
+ const settledOne = () => {
310
+ landed++;
311
+ if (landed < tracks.length) return;
312
+ isResolved = true;
313
+ UndefinedOr.map(resolve, done => done());
314
+ UndefinedOr.map(onComplete, complete => complete());
315
+ end("finished", true);
316
+ };
317
+ return {
318
+ controls,
319
+ settledOne
320
+ };
321
+ };
322
+ /** An animation of no element: finished at once (a server's, or a subject that matched none). */
323
+ const finishedControls = () => {
324
+ const done = Promise.resolve();
325
+ return {
326
+ time: 0,
327
+ speed: 1,
328
+ duration: 0,
329
+ state: "finished",
330
+ finished: done,
331
+ then: (onResolve, onReject) => done.then(onResolve, onReject),
332
+ play: constVoid,
333
+ pause: constVoid,
334
+ stop: constVoid,
335
+ cancel: constVoid,
336
+ complete: constVoid
337
+ };
338
+ };
339
+ /**
340
+ * An **Animation scope**'s `animate` (#433): selectors looked up inside `scope()`, each animation
341
+ * told to `watch` as it starts and ends. Every element's legs start in the call, on the loop by
342
+ * the end of its task.
343
+ */
344
+ export const scopedAnimate = (env, scope, watch) => (first, second, third) => {
345
+ if (isSequence(first)) return sequenceOf(env, scope(), watch, first, second);
346
+ const elements = subjectsOf(first, scope());
347
+ const target = second;
348
+ return started(watch, elements.length, UndefinedOr.map(third, given => given.onComplete), (head, settled) => Arr.map(elements, (element, index) => trackOf(env, element, target, transitionFor(third, index, elements.length), head, settled)));
349
+ };
350
+ /**
351
+ * An animation of `count` tracks started (#433): its controls over them, through one Playhead, told
352
+ * to `watch`, each track run. Finished at once with none.
353
+ */
354
+ const started = (watch, count, onComplete, tracksOf) => {
355
+ if (count === 0) return finishedControls();
356
+ const head = Playback.make();
357
+ let settledOne = constVoid;
358
+ const tracks = tracksOf(head, () => settledOne());
359
+ const made = controlsOf(tracks, head, watch, onComplete);
360
+ settledOne = made.settledOne;
361
+ watch.started(made.controls);
362
+ Arr.forEach(tracks, track => track.run());
363
+ return made.controls;
364
+ };
365
+ /** A server's `animate`: nothing to animate. */
366
+ export const serverAnimate = () => finishedControls();
367
+ // --- Sequences (#433's PR 2) ------------------------------------------------------------------
368
+ /** Whether `animate` was given a sequence (Motion's `isSequence`): a list with a Segment in it. */
369
+ const isSequence = given => Bool.match(Arr.isArray(given), {
370
+ onTrue: () => Arr.some(given, Arr.isArray),
371
+ onFalse: () => false
372
+ });
373
+ /** Whether a subject is a function Segment's value. */
374
+ const isCallback = subject => Predicate.hasProperty(subject, "call");
375
+ /** The key a function Segment's value animates under. */
376
+ const VALUE = "value";
377
+ /** A function Segment's stops with none given (Motion's). */
378
+ const ZERO_TO_ONE = [0, 1];
379
+ /** No fields. */
380
+ const NO_FIELDS = {};
381
+ /**
382
+ * What a Segment's transition doesn't take from the sequence's `defaultTransition` (Motion's): its
383
+ * delay, times and repeat, which are each Segment's own, and a value's own transitions.
384
+ */
385
+ const PLACING = new Set(["delay", "times", "repeat", "repeatType", "repeatDelay", "reverse", "at"]);
386
+ /** A Segment's default transition (Motion's): a 0.3 s `easeOut` tween. */
387
+ const SEGMENT_TWEEN = {
388
+ type: "tween"
389
+ };
390
+ /** The fields of a sequence's options laid over each key's animation: `duration`, `delay` and the repeat. */
391
+ const WHOLE = ["duration", "delay", "repeat", "repeatType", "repeatDelay"];
392
+ /**
393
+ * The fields of a sequence's `defaultTransition` laid over each key's animation, under its own
394
+ * options' (Motion's): its delay and repeat. Its `duration` is a Segment's, never the sequence's.
395
+ */
396
+ const WHOLE_DEFAULTS = ["delay", "repeat", "repeatType", "repeatDelay"];
397
+ /** `fields`' `keys`, those it has. */
398
+ const picked = (fields, keys) => Rec.filter(fields, (value, key) => Bool.and(Arr.contains(keys, key), Predicate.isNotUndefined(value)));
399
+ /**
400
+ * `key`'s transition in a Segment (Motion's `getValueTransition` for sequences): the Segment's,
401
+ * the value's own laid over it, over the sequence's `defaultTransition` less its placing; a spring
402
+ * or a tween as Wardic's transitions are (ADR-0051), Motion's 0.3 s `easeOut` tween when it defines
403
+ * neither; its `delay` kept as given, each element's when it's a function.
404
+ */
405
+ const segmentTransitionOf = (options, key, defaults) => {
406
+ const own = UndefinedOr.match(options, {
407
+ onUndefined: () => NO_FIELDS,
408
+ onDefined: given => ({
409
+ ...given,
410
+ ...UndefinedOr.match(given[key], {
411
+ onUndefined: () => NO_FIELDS,
412
+ onDefined: entry => Bool.match(Predicate.isObject(entry), {
413
+ onTrue: () => entry,
414
+ onFalse: () => NO_FIELDS
415
+ })
416
+ })
417
+ })
418
+ });
419
+ const base = UndefinedOr.match(defaults, {
420
+ onUndefined: () => NO_FIELDS,
421
+ onDefined: given => Rec.filter(given, (_, field) => Bool.not(PLACING.has(field)))
422
+ });
423
+ const {
424
+ delay,
425
+ at: _at,
426
+ ...fields
427
+ } = own;
428
+ // An inertia (#435) isn't a sequence's: a Segment's time is placed on its timeline, and a glide has none to place.
429
+ const run = UndefinedOr.match(runOf({
430
+ ...base,
431
+ ...fields
432
+ }), {
433
+ onUndefined: () => SEGMENT_TWEEN,
434
+ onDefined: made => Bool.match(made.type === "inertia", {
435
+ onTrue: () => SEGMENT_TWEEN,
436
+ onFalse: () => made
437
+ })
438
+ });
439
+ return Bool.match(Predicate.isUndefined(delay), {
440
+ onTrue: () => run,
441
+ onFalse: () => ({
442
+ ...run,
443
+ delay
444
+ })
445
+ });
446
+ };
447
+ /** Whether a Segment's value is one: a number, a string, `null` or Keyframes. */
448
+ const isSegmentValue = Predicate.or(Predicate.or(Predicate.isNumber, Predicate.isString), Predicate.or(Predicate.isNull, Arr.isArray));
449
+ /** A Segment's values: those that are a value, `null` or Keyframes. */
450
+ const segmentValuesOf = target => Rec.filter(target, isSegmentValue);
451
+ /** Each of `values`' keys' transition in a Segment. */
452
+ const segmentTransitionsOf = (values, options, defaults) => Rec.map(values, (_, key) => segmentTransitionOf(options, key, defaults));
453
+ /** A Segment's `at`, when it gives one. */
454
+ const atOf = options => UndefinedOr.map(options, given => given.at);
455
+ /**
456
+ * A sequence's steps for core (#433): labels as they are; an element Segment's elements (a selector
457
+ * looked up once a sequence, inside `scope`), values and each value's transition; a function
458
+ * Segment's own value, from 0 to 1 unless it gives its stops.
459
+ */
460
+ const stepsOf = (sequence, scope, defaults) => {
461
+ const selected = new Map();
462
+ const elementsOf = subject => {
463
+ if (Bool.not(Predicate.isString(subject))) return subjectsOf(subject, scope);
464
+ const selector = subject;
465
+ const known = selected.get(selector);
466
+ if (Predicate.isNotUndefined(known)) return known;
467
+ const found = subjectsOf(selector, scope);
468
+ selected.set(selector, found);
469
+ return found;
470
+ };
471
+ return Arr.map(sequence, segment => {
472
+ if (Predicate.isString(segment)) return segment;
473
+ if (Bool.not(Arr.isArray(segment))) return segment;
474
+ const parts = segment;
475
+ if (Predicate.isFunction(parts[0])) {
476
+ const call = parts[0];
477
+ const three = parts.length === 3;
478
+ const given = Bool.match(three, {
479
+ onTrue: () => parts[1],
480
+ onFalse: () => ZERO_TO_ONE
481
+ });
482
+ const options = Bool.match(three, {
483
+ onTrue: () => parts[2],
484
+ onFalse: () => parts[1]
485
+ });
486
+ const target = {
487
+ [VALUE]: given
488
+ };
489
+ return {
490
+ subjects: [{
491
+ call
492
+ }],
493
+ target,
494
+ transitions: segmentTransitionsOf(target, options, defaults),
495
+ at: atOf(options)
496
+ };
497
+ }
498
+ const [subject, values, options] = segment;
499
+ const target = segmentValuesOf(values);
500
+ return {
501
+ subjects: elementsOf(subject),
502
+ target,
503
+ transitions: segmentTransitionsOf(target, options, defaults),
504
+ at: atOf(options)
505
+ };
506
+ });
507
+ };
508
+ /**
509
+ * A function Segment's value animated (#433): its stops, a first `null` 0, through the
510
+ * Interpolators on its tween over the sequence, each frame told to its callback. Cancelled, the
511
+ * callback hears its first stop again, as Motion's motion value is set back.
512
+ */
513
+ const callbackTrackOf = (env, callback, animation, head, settled) => {
514
+ const stops = filledStops(UndefinedOr.getOrThrow(animation.keyframes[VALUE]), 0);
515
+ const options = UndefinedOr.getOrThrow(animation.transition[VALUE]);
516
+ // Skipped (#468): its callback told the value it would end on, on the first tick.
517
+ const machine = Bool.match(env.skipAnimations(), {
518
+ onTrue: () => Effect.succeed(ReducedMotion.snap({
519
+ [VALUE]: UndefinedOr.getOrThrow(stops[0])
520
+ }, {
521
+ [VALUE]: ReducedMotion.endOf(UndefinedOr.getOrThrow(stops[0]), UndefinedOr.getOrThrow(stops[stops.length - 1]), options)
522
+ })),
523
+ onFalse: () => Machine.keyframesValues({
524
+ [VALUE]: stops
525
+ }, options)
526
+ });
527
+ let fiber;
528
+ const end = () => {
529
+ if (Predicate.isUndefined(fiber)) return;
530
+ const running = fiber;
531
+ fiber = undefined;
532
+ // Nothing waits on its end: interrupted here, not by a fiber forked for it (#618, L2).
533
+ if (Predicate.isUndefined(running.pollUnsafe())) running.interruptUnsafe();
534
+ };
535
+ const landed = exit => Exit.match(exit, {
536
+ onSuccess: () => Effect.sync(settled),
537
+ onFailure: cause => Bool.match(Cause.hasInterruptsOnly(cause), {
538
+ onTrue: () => Effect.void,
539
+ onFalse: () => Report.failure("wardic.animate: a function Segment failed", cause)
540
+ })
541
+ });
542
+ const run = () => {
543
+ end();
544
+ fiber = env.runtime.runFork(machine.pipe(Effect.map(Playback.drive(head)), Effect.flatMap(Machine.run(frame => {
545
+ callback.call(UndefinedOr.getOrThrow(frame.value[VALUE]));
546
+ return undefined;
547
+ })), Effect.onExit(landed)));
548
+ };
549
+ return {
550
+ run,
551
+ stop: end,
552
+ cancel: () => {
553
+ end();
554
+ callback.call(UndefinedOr.getOrThrow(stops[0]));
555
+ },
556
+ duration: () => Machine.durationOf(env.runtime.runSync(machine))
557
+ };
558
+ };
559
+ /**
560
+ * A sequence started (#433's PR 2, Motion's): compiled by core's `Sequence`, each element animated
561
+ * through its Keyframes on its spine or its plain one, as a call animates it, and each function
562
+ * Segment's value told to its callback; one Playhead for all, so it seeks, pauses and awaits as one.
563
+ */
564
+ const sequenceOf = (env, scope, watch, sequence, options) => {
565
+ const defaults = UndefinedOr.map(options, given => given.defaultTransition);
566
+ // The sequence's own options over its `defaultTransition`'s, as Motion's.
567
+ const whole = {
568
+ ...picked(UndefinedOr.match(defaults, {
569
+ onUndefined: () => NO_FIELDS,
570
+ onDefined: identity
571
+ }), WHOLE_DEFAULTS),
572
+ ...picked(UndefinedOr.match(options, {
573
+ onUndefined: () => NO_FIELDS,
574
+ onDefined: identity
575
+ }), WHOLE)
576
+ };
577
+ const compiled = Arr.fromIterable(Sequence.compile(stepsOf(sequence, scope, defaults), whole));
578
+ return started(watch, compiled.length, UndefinedOr.map(options, given => given.onComplete), (head, settled) => Arr.map(compiled, ([subject, animation]) => Match.value(subject).pipe(Match.when(isCallback, callback => callbackTrackOf(env, callback, animation, head, settled)), Match.orElse(element => trackOf(env, element, animation.keyframes, animation.transition, head, settled)))));
579
+ };
580
+ /**
581
+ * An Animation scope's ref and what it hears of its animations (#433): each in `animations` while in
582
+ * flight, and `also` told too (Solid 2's `settled()`). `stopAll` stops them, at its owner's cleanup.
583
+ */
584
+ export const scopeOf = also => {
585
+ let current;
586
+ let animations = [];
587
+ const ref = element => {
588
+ current = element;
589
+ };
590
+ const scope = Object.defineProperties(ref, {
591
+ current: {
592
+ get: () => current
593
+ },
594
+ animations: {
595
+ get: () => animations
596
+ }
597
+ });
598
+ const watch = {
599
+ started: controls => {
600
+ animations = Arr.append(animations, controls);
601
+ UndefinedOr.map(also, more => more.started(controls));
602
+ },
603
+ ended: (controls, landed) => {
604
+ animations = Arr.filter(animations, one => one !== controls);
605
+ UndefinedOr.map(also, more => more.ended(controls, landed));
606
+ }
607
+ };
608
+ return {
609
+ scope,
610
+ watch,
611
+ stopAll: () => Arr.forEach(animations, controls => controls.stop())
612
+ };
613
+ };
614
+ //# sourceMappingURL=imperative.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"imperative.js","names":["Machine","Playback","ReducedMotion","Sequence","Report","Arr","Bool","Cause","Effect","Exit","constVoid","identity","Match","Predicate","Rec","UndefinedOr","filledStops","runOf","emptySnapshotOf","makeElementSpine","makeReuse","startLinksOf","NO_VARIANT_STATE","resolveTarget","wardicElements","WeakMap","registerAnimatable","element","spine","set","get","delete","plainByGate","plainIds","NO_CONFIG","plainOf","env","byElement","gate","isUndefined","known","isNotUndefined","el","id","snapshot","runtime","tag","undefined","config","parent","canStart","extraDelay","onFrame","reducedMotion","positionalKeys","defaultTransition","start","initialValues","initialLink","startedLink","quiet","reuse","links","styleNow","live","presence","projected","dragAxis","handoff","plain","running","unregister","skippedIn","transition","not","skipAnimations","trackOf","target","given","head","settled","resolved","own","hooks","failed","animate","enter","register","isEmptyRecord","values","write","leave","afterFlush","track","run","stop","cancel","duration","subjectsOf","subject","scope","isNullish","isString","fromIterable","match","onUndefined","document","onDefined","querySelectorAll","hasProperty","isIterable","filter","isNotNullish","list","makeBy","length","i","transitionFor","options","index","count","map","delay","onComplete","_onComplete","rest","isFunction","controlsOf","tracks","watch","state","stopped","landed","resolve","finished","isResolved","durationNow","reduce","longest","Math","max","runAll","forEach","fresh","end","how","landedNow","was","or","ended","controls","restart","started","time","at","seek","pause","speed","setSpeed","onTrue","Promise","onFalse","done","then","onResolve","onReject","play","complete","settledOne","finishedControls","scopedAnimate","first","second","third","isSequence","sequenceOf","elements","tracksOf","make","made","serverAnimate","isArray","some","isCallback","VALUE","ZERO_TO_ONE","NO_FIELDS","PLACING","Set","SEGMENT_TWEEN","type","WHOLE","WHOLE_DEFAULTS","picked","fields","keys","value","key","and","contains","segmentTransitionOf","defaults","entry","isObject","base","_","field","has","_at","isSegmentValue","isNumber","isNull","segmentValuesOf","segmentTransitionsOf","atOf","stepsOf","sequence","selected","Map","elementsOf","selector","found","segment","parts","call","three","subjects","transitions","callbackTrackOf","callback","animation","stops","getOrThrow","keyframes","machine","succeed","snap","endOf","keyframesValues","fiber","pollUnsafe","interruptUnsafe","exit","onSuccess","sync","onFailure","cause","hasInterruptsOnly","void","failure","runFork","pipe","drive","flatMap","frame","onExit","durationOf","runSync","whole","compiled","compile","when","orElse","scopeOf","also","current","animations","ref","Object","defineProperties","append","more","one","stopAll"],"sources":["../../src/imperative.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}