@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.
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 @@
1
+ {"version":3,"file":"drag-track.js","names":["Drag","Inertia","InputFeed","InputSource","DragRecognizer","Machine","Microtask","Probe","Report","Bool","Cause","Deferred","Effect","Exit","FiberHandle","constFalse","constUndefined","constVoid","identity","Match","MutableRef","Option","Predicate","Stream","UndefinedOr","subscribeDragControls","DEFAULT_DRAG_ELASTIC","dragTransitionOf","elasticOf","pointMapOptionOf","mapPointOf","mapPoint","match","onUndefined","onDefined","read","toDragAxis","axis","value","pipe","when","orElse","ORIGIN","x","y","releaseVelocity","config","velocity","momentum","onTrue","onFalse","constrainedTo","p","bounds","isUndefined","elastic","constrain","AT_ORIGIN","min","max","NO_EDGES","edgesOf","snapToOrigin","within","v","range","restsWhereDropped","position","edges","transition","every","modifyTarget","or","snapshotPos","snapshot","values","numberOrZero","type","number","n","directSet","opts","isNotUndefined","projection","dragMove","gate","write","id","velocities","now","drawnAt","recordFrame","settleGesture","sample","state","phase","update","st","held","dragEnd","setDragging","exhaustive","isGrab","and","e","isPrimaryPointer","isAdopted","adopted","unsnap","get","snapped","s","undefined","snapTo","down","box","element","getBoundingClientRect","axisAt","at","map","cursor","centre","left","width","top","height","by","onAxes","from","to","was","prev","dragStart","isPressEnd","some","not","pressed","reportSample","onSample","startOf","follow","starts","base","offset","set","release","taken","cfg","tapFrame","releasing","keepVelocity","done","sync","onReleaseEnd","ended","afterFlush","untilTaken","run","raceFirst","await","andThen","next","skipAnimations","skips","restOfRelease","catchDefect","defect","failure","die","inertia","frame","inertiaVec","restOf","onReleaseAxis","retargeted","driveDragTrack","make","constraints","stopped","makeUnsafe","watch","onDefect","gen","probe","watching","watched","warned","setBounds","measured","container","as","resized","flatMap","sameBounds","void","clear","kept","keepPlace","watchResizes","suspend","runForEach","merge","observeResize","asVoid","measureAtStart","logWarning","tap","fork","input","propagation","listens","listen","controlled","controls","adoptedThreshold","threshold","fromUndefinedOr","none","startRelease","releaseFrom","cancelled","onGrab","stopRelease","resumeFree","onPressEnd","resumeRelease","respond","response","catchCause","cause","drag","watchDrag","claim","lock","directionLock","adoptable","on","grabs","pointerFeed","adoptablePointerOf","pointer","event","unsnapped","unsubscribe","start","options","distanceThreshold","adoptPointer","isNone","snapToCursor","stop","cancel","addFinalizer","takeRelease","doneUnsafe","queueMicrotask"],"sources":["../../src/drag-track.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,56 @@
1
+ import * as Bool from "effect/Boolean";
2
+ import { identity } from "effect/Function";
3
+ import * as UndefinedOr from "effect/UndefinedOr";
4
+ /** Motion's `dragElastic` default (`defaultElastic`, ADR-0016 *Amendment (#140)*). */
5
+ export const DEFAULT_DRAG_ELASTIC = 0.35;
6
+ /** A drag's `dragElastic`, or Motion's default. */
7
+ export const elasticOf = elastic => UndefinedOr.match(elastic, {
8
+ onUndefined: () => DEFAULT_DRAG_ELASTIC,
9
+ onDefined: identity
10
+ });
11
+ /** Motion's release (`startAnimation`), in seconds: a 0.75 s time constant, power 0.8, at rest within 1 px and 10 px/s. */
12
+ const MOTION_RELEASE = {
13
+ power: 0.8,
14
+ timeConstant: 0.75,
15
+ restDelta: 1,
16
+ restSpeed: 10
17
+ };
18
+ /** The bounce with an elastic drag, Motion's `dragElastic ? 200 : …`. */
19
+ const ELASTIC_BOUNCE = {
20
+ bounceStiffness: 200,
21
+ bounceDamping: 40
22
+ };
23
+ /** The bounce with none, a wall: Motion's `… : 1000000` and `10000000`. */
24
+ const RIGID_BOUNCE = {
25
+ bounceStiffness: 1e6,
26
+ bounceDamping: 1e7
27
+ };
28
+ /**
29
+ * An element's drag transition, resolved (ADR-0016, *Amendment (#140)*): Motion's release, its bounce
30
+ * from `dragElastic` (a wall with none), then the element's own `dragTransition` over it, its
31
+ * `timeConstant` from milliseconds to seconds. What every release runs on: a Fling, a snap back to the
32
+ * origin, and a projection node's Release offset.
33
+ */
34
+ export const dragTransitionOf = (elastic, own) => ({
35
+ ...MOTION_RELEASE,
36
+ ...Bool.match(elasticOf(elastic) !== 0, {
37
+ onTrue: () => ELASTIC_BOUNCE,
38
+ onFalse: () => RIGID_BOUNCE
39
+ }),
40
+ ...UndefinedOr.match(own, {
41
+ onUndefined: () => ({}),
42
+ onDefined: ({
43
+ timeConstant,
44
+ ...rest
45
+ }) => ({
46
+ ...rest,
47
+ ...UndefinedOr.match(timeConstant, {
48
+ onUndefined: () => ({}),
49
+ onDefined: ms => ({
50
+ timeConstant: ms / 1000
51
+ })
52
+ })
53
+ })
54
+ })
55
+ });
56
+ //# sourceMappingURL=drag-transition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drag-transition.js","names":["Bool","identity","UndefinedOr","DEFAULT_DRAG_ELASTIC","elasticOf","elastic","match","onUndefined","onDefined","MOTION_RELEASE","power","timeConstant","restDelta","restSpeed","ELASTIC_BOUNCE","bounceStiffness","bounceDamping","RIGID_BOUNCE","dragTransitionOf","own","onTrue","onFalse","rest","ms"],"sources":["../../src/drag-transition.ts"],"sourcesContent":[null],"mappings":"AAOA,OAAO,KAAKA,IAAI,MAAM,gBAAgB;AACtC,SAASC,QAAQ,QAAQ,iBAAiB;AAC1C,OAAO,KAAKC,WAAW,MAAM,oBAAoB;AAGjD;AACA,OAAO,MAAMC,oBAAoB,GAAG,IAAI;AAExC;AACA,OAAO,MAAMC,SAAS,GAAIC,OAA2B,IACnDH,WAAW,CAACI,KAAK,CAACD,OAAO,EAAE;EAAEE,WAAW,EAAEA,CAAA,KAAMJ,oBAAoB;EAAEK,SAAS,EAAEP;AAAQ,CAAE,CAAC;AAE9F;AACA,MAAMQ,cAAc,GAAG;EAAEC,KAAK,EAAE,GAAG;EAAEC,YAAY,EAAE,IAAI;EAAEC,SAAS,EAAE,CAAC;EAAEC,SAAS,EAAE;AAAE,CAAW;AAC/F;AACA,MAAMC,cAAc,GAAG;EAAEC,eAAe,EAAE,GAAG;EAAEC,aAAa,EAAE;AAAE,CAAW;AAC3E;AACA,MAAMC,YAAY,GAAG;EAAEF,eAAe,EAAE,GAAG;EAAEC,aAAa,EAAE;AAAG,CAAW;AAE1E;;;;;;AAMA,OAAO,MAAME,gBAAgB,GAAGA,CAACb,OAA2B,EAAEc,GAAqC,MAAuC;EACxI,GAAGV,cAAc;EACjB,GAAGT,IAAI,CAACM,KAAK,CAACF,SAAS,CAACC,OAAO,CAAC,KAAK,CAAC,EAAE;IAAEe,MAAM,EAAEA,CAAA,KAAMN,cAAc;IAAEO,OAAO,EAAEA,CAAA,KAAMJ;EAAY,CAAE,CAAC;EACtG,GAAGf,WAAW,CAACI,KAAK,CAACa,GAAG,EAAE;IACxBZ,WAAW,EAAEA,CAAA,MAAO,EAAE,CAAC;IACvBC,SAAS,EAAEA,CAAC;MAAEG,YAAY;MAAE,GAAGW;IAAI,CAAE,MAAM;MACzC,GAAGA,IAAI;MACP,GAAGpB,WAAW,CAACI,KAAK,CAACK,YAAY,EAAE;QAAEJ,WAAW,EAAEA,CAAA,MAAO,EAAE,CAAC;QAAEC,SAAS,EAAGe,EAAE,KAAM;UAAEZ,YAAY,EAAEY,EAAE,GAAG;QAAI,CAAE;MAAC,CAAE;KACjH;GACF;CACF,CAAC","ignoreList":[]}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * `runDragTrack` (ADR-0004): the Solid 1 binding's drag track, the shared one (`drag-track.ts`), its
3
+ * watches run by `runWatch` in a Scope the caller's owner closes, and its responses forked on the
4
+ * provider runtime (#379). The track is the `drag` Feature's (#511): `runDragTrack` brings it.
5
+ */
6
+ import * as InputSource from "@wardic/core/InputSource";
7
+ import * as Effect from "effect/Effect";
8
+ import { DEFAULT_DRAG_ELASTIC, dragTransitionOf } from "./drag-transition.js";
9
+ import { driveDragTrack } from "./drag-track.js";
10
+ import { drag } from "./features/drag.js";
11
+ import { inputIn } from "./gesture-features.js";
12
+ import { runWatch, useBrought } from "./provider.js";
13
+ import "./features/keys.js";
14
+ export { DEFAULT_DRAG_ELASTIC, dragTransitionOf };
15
+ /**
16
+ * Runs a drag on `opts.element` as a Wardic element's own drag runs: its gesture, constraints, elastic,
17
+ * release and drag claims, writing `x` and `y` through the element's snapshot. For an element of your
18
+ * own built on Wardic's drag. Stopped as the current owner is cleaned up. Brings the `drag` Feature.
19
+ * Solid 1 only.
20
+ *
21
+ * @see https://wardic.dev/reference/solid/advanced/run-drag-track
22
+ */
23
+ // `drag-track.ts`, ADR-0004: its watches in a Scope of their own via `runWatch`, no fiber at rest, closed
24
+ // by the caller's owner, which stops the watches and an in-flight release (#379). Its hold on x/y goes
25
+ // to the spine (#340).
26
+ export const runDragTrack = opts => {
27
+ // The gestures' input, read as the track first watches, on the client: a server render runs no watch.
28
+ const services = useBrought(BRINGS);
29
+ const given = effect => Effect.provideService(effect, InputSource.InputSource, inputIn(services()));
30
+ return driveDragTrack({
31
+ ...opts,
32
+ watch: track => runWatch(opts.runtime, onDefect => given(track(onDefect))),
33
+ fork: response => void opts.runtime.runFork(given(response))
34
+ });
35
+ };
36
+ /** What {@link runDragTrack} brings (ADR-0067 decision 12): the `drag` Feature, whatever its section has (#511). */
37
+ const BRINGS = [drag];
38
+ /** {@link runDragTrack} through `drive`: an element's section's `drag` Feature's (#511), where `runDragTrack` brings it. Internal. */
39
+ export const runDragTrackWith = (drive, opts) => drive({
40
+ ...opts,
41
+ watch: track => runWatch(opts.runtime, track),
42
+ fork: response => void opts.runtime.runFork(response)
43
+ });
44
+ //# sourceMappingURL=drag.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drag.js","names":["InputSource","Effect","DEFAULT_DRAG_ELASTIC","dragTransitionOf","driveDragTrack","drag","inputIn","runWatch","useBrought","runDragTrack","opts","services","BRINGS","given","effect","provideService","watch","track","runtime","onDefect","fork","response","runFork","runDragTrackWith","drive"],"sources":["../../src/drag.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;AAKA,OAAO,KAAKA,WAAW,MAAM,0BAA0B;AACvD,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,SAASC,oBAAoB,EAAEC,gBAAgB,QAAQ,sBAAsB;AAC7E,SAASC,cAAc,QAA+C,iBAAiB;AAEvF,SAASC,IAAI,QAAQ,oBAAoB;AACzC,SAASC,OAAO,QAAQ,uBAAuB;AAC/C,SAASC,QAAQ,EAAEC,UAAU,QAAQ,eAAgB;AAErD,OAAiC,oBAAoB;AAErD,SAASN,oBAAoB,EAAEC,gBAAgB;AAS/C;;;;;;;;AAQA;AACA;AACA;AACA,OAAO,MAAMM,YAAY,GAAIC,IAAyB,IAAe;EACnE;EACA,MAAMC,QAAQ,GAAGH,UAAU,CAACI,MAAM,CAAC;EACnC,MAAMC,KAAK,GAAaC,MAA8B,IACpDb,MAAM,CAACc,cAAc,CAACD,MAAM,EAAEd,WAAW,CAACA,WAAW,EAAEM,OAAO,CAACK,QAAQ,EAAE,CAAC,CAAC;EAC7E,OAAOP,cAAc,CAAC;IACpB,GAAGM,IAAI;IACPM,KAAK,EAAGC,KAAK,IAAKV,QAAQ,CAACG,IAAI,CAACQ,OAAO,EAAGC,QAAQ,IAAKN,KAAK,CAACI,KAAK,CAACE,QAAQ,CAAC,CAAC,CAAC;IAC9EC,IAAI,EAAGC,QAAQ,IAAK,KAAKX,IAAI,CAACQ,OAAO,CAACI,OAAO,CAACT,KAAK,CAACQ,QAAQ,CAAC;GAC9D,CAAC;AACJ,CAAC;AAED;AACA,MAAMT,MAAM,GAA2B,CAACP,IAAI,CAAC;AAE7C;AACA,OAAO,MAAMkB,gBAAgB,GAAGA,CAACC,KAAsC,EAAEd,IAAyB,KAChGc,KAAK,CAAC;EACJ,GAAGd,IAAI;EACPM,KAAK,EAAGC,KAAK,IAAKV,QAAQ,CAACG,IAAI,CAACQ,OAAO,EAAED,KAAK,CAAC;EAC/CG,IAAI,EAAGC,QAAQ,IAAK,KAAKX,IAAI,CAACQ,OAAO,CAACI,OAAO,CAACD,QAAQ;CACvD,CAAC","ignoreList":[]}
@@ -0,0 +1,67 @@
1
+ import * as Style from "@wardic/dom/Style";
2
+ import * as Bool from "effect/Boolean";
3
+ import { constUndefined } from "effect/Function";
4
+ import * as Rec from "effect/Record";
5
+ /** An element's `style`, switched by its flush sink's hooks. Call within a Solid owner. */
6
+ export const createElementStyle = options => {
7
+ const {
8
+ userStyle,
9
+ startingWith,
10
+ live,
11
+ defaults,
12
+ base = constUndefined,
13
+ reactivity
14
+ } = options;
15
+ const {
16
+ untrack
17
+ } = reactivity;
18
+ // The Starting style: the element's first, or a fresh entry's (#414).
19
+ let starting = options.starting;
20
+ // Whether the gate has committed: `style` re-runs once, at the first commit.
21
+ let committed = false;
22
+ // Every key the gate holds, current whenever `style` runs. A change that touches the
23
+ // element's own style re-runs it; any other change waits for the next run.
24
+ let held = [];
25
+ const changed = reactivity.trigger();
26
+ // The Starting style with the routed keys' values now: read before the first commit only.
27
+ const startingNow = () => {
28
+ const routed = live.values();
29
+ return Bool.match(Rec.isEmptyRecord(routed), {
30
+ onTrue: () => starting,
31
+ onFalse: () => startingWith(routed)
32
+ });
33
+ };
34
+ const style = user => {
35
+ changed.track();
36
+ const css = live.css(user);
37
+ return Bool.match(committed, {
38
+ onFalse: () => Style.over(Style.over(Style.over(startingNow(), css), base()), defaults),
39
+ onTrue: () => Style.without(Style.over(Style.over(css, base()), defaults), held)
40
+ });
41
+ };
42
+ const onHeld = next => {
43
+ const prev = held;
44
+ held = next;
45
+ if (!committed) return;
46
+ const style = Style.over(Style.over(live.css(untrack(userStyle)), untrack(base)), defaults);
47
+ if (Style.heldTouches(style, prev, next)) changed.notify();
48
+ };
49
+ const beforeFirstCommit = () => {
50
+ committed = true;
51
+ changed.notify();
52
+ };
53
+ const restart = next => {
54
+ starting = next;
55
+ committed = false;
56
+ changed.notify();
57
+ };
58
+ return {
59
+ style,
60
+ hooks: {
61
+ beforeFirstCommit,
62
+ onHeld
63
+ },
64
+ restart
65
+ };
66
+ };
67
+ //# sourceMappingURL=element-style.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"element-style.js","names":["Style","Bool","constUndefined","Rec","createElementStyle","options","userStyle","startingWith","live","defaults","base","reactivity","untrack","starting","committed","held","changed","trigger","startingNow","routed","values","match","isEmptyRecord","onTrue","onFalse","style","user","track","css","over","without","onHeld","next","prev","heldTouches","notify","beforeFirstCommit","restart","hooks"],"sources":["../../src/element-style.ts"],"sourcesContent":[null],"mappings":"AAyBA,OAAO,KAAKA,KAAK,MAAM,mBAAmB;AAC1C,OAAO,KAAKC,IAAI,MAAM,gBAAgB;AACtC,SAASC,cAAc,QAAQ,iBAAiB;AAChD,OAAO,KAAKC,GAAG,MAAM,eAAe;AAmCpC;AACA,OAAO,MAAMC,kBAAkB,GAAIC,OAA4B,IAAkB;EAC/E,MAAM;IAAEC,SAAS;IAAEC,YAAY;IAAEC,IAAI;IAAEC,QAAQ;IAAEC,IAAI,GAAGR,cAAc;IAAES;EAAU,CAAE,GAAGN,OAAO;EAC9F,MAAM;IAAEO;EAAO,CAAE,GAAGD,UAAU;EAC9B;EACA,IAAIE,QAAQ,GAAGR,OAAO,CAACQ,QAAQ;EAC/B;EACA,IAAIC,SAAS,GAAG,KAAK;EACrB;EACA;EACA,IAAIC,IAAI,GAA0B,EAAE;EACpC,MAAMC,OAAO,GAAGL,UAAU,CAACM,OAAO,EAAE;EAEpC;EACA,MAAMC,WAAW,GAAGA,CAAA,KAAqB;IACvC,MAAMC,MAAM,GAAGX,IAAI,CAACY,MAAM,EAAE;IAC5B,OAAOnB,IAAI,CAACoB,KAAK,CAAClB,GAAG,CAACmB,aAAa,CAACH,MAAM,CAAC,EAAE;MAAEI,MAAM,EAAEA,CAAA,KAAMV,QAAQ;MAAEW,OAAO,EAAEA,CAAA,KAAMjB,YAAY,CAACY,MAAM;IAAC,CAAE,CAAC;EAC/G,CAAC;EAED,MAAMM,KAAK,GAAIC,IAAiC,IAAiB;IAC/DV,OAAO,CAACW,KAAK,EAAE;IACf,MAAMC,GAAG,GAAGpB,IAAI,CAACoB,GAAG,CAACF,IAAI,CAAC;IAC1B,OAAOzB,IAAI,CAACoB,KAAK,CAACP,SAAS,EAAE;MAC3BU,OAAO,EAAEA,CAAA,KAAMxB,KAAK,CAAC6B,IAAI,CAAC7B,KAAK,CAAC6B,IAAI,CAAC7B,KAAK,CAAC6B,IAAI,CAACX,WAAW,EAAE,EAAEU,GAAG,CAAC,EAAElB,IAAI,EAAE,CAAC,EAAED,QAAQ,CAAC;MACvFc,MAAM,EAAEA,CAAA,KAAMvB,KAAK,CAAC8B,OAAO,CAAC9B,KAAK,CAAC6B,IAAI,CAAC7B,KAAK,CAAC6B,IAAI,CAACD,GAAG,EAAElB,IAAI,EAAE,CAAC,EAAED,QAAQ,CAAC,EAAEM,IAAI;KAChF,CAAC;EACJ,CAAC;EAED,MAAMgB,MAAM,GAAIC,IAA2B,IAAU;IACnD,MAAMC,IAAI,GAAGlB,IAAI;IACjBA,IAAI,GAAGiB,IAAI;IACX,IAAI,CAAClB,SAAS,EAAE;IAChB,MAAMW,KAAK,GAAGzB,KAAK,CAAC6B,IAAI,CAAC7B,KAAK,CAAC6B,IAAI,CAACrB,IAAI,CAACoB,GAAG,CAAChB,OAAO,CAACN,SAAS,CAAC,CAAC,EAAEM,OAAO,CAACF,IAAI,CAAC,CAAC,EAAED,QAAQ,CAAC;IAC3F,IAAIT,KAAK,CAACkC,WAAW,CAACT,KAAK,EAAEQ,IAAI,EAAED,IAAI,CAAC,EAAEhB,OAAO,CAACmB,MAAM,EAAE;EAC5D,CAAC;EAED,MAAMC,iBAAiB,GAAGA,CAAA,KAAW;IACnCtB,SAAS,GAAG,IAAI;IAChBE,OAAO,CAACmB,MAAM,EAAE;EAClB,CAAC;EAED,MAAME,OAAO,GAAIL,IAAoB,IAAU;IAC7CnB,QAAQ,GAAGmB,IAAI;IACflB,SAAS,GAAG,KAAK;IACjBE,OAAO,CAACmB,MAAM,EAAE;EAClB,CAAC;EAED,OAAO;IAAEV,KAAK;IAAEa,KAAK,EAAE;MAAEF,iBAAiB;MAAEL;IAAM,CAAE;IAAEM;EAAO,CAAE;AACjE,CAAC","ignoreList":[]}
@@ -0,0 +1,353 @@
1
+ import { createComponent as _$createComponent } from "solid-js/web";
2
+ import { mergeProps as _$mergeProps } from "solid-js/web";
3
+ /**
4
+ * What every Wardic element's component form shares, for the Solid 1 binding (#511): `createWith`,
5
+ * which makes `wardic.create`'s component and `w.create`'s, a Complete element's or a Slim one's by the
6
+ * `kind` it's given, and the forms' proxy. `wardic.tsx` holds the Complete forms, `w.tsx` the Slim ones;
7
+ * this module names no Feature, so a Slim element's app ships none it doesn't choose (ADR-0067).
8
+ *
9
+ * `create(tag)` returns a Solid component that accepts the element's own props PLUS Wardic's motion
10
+ * props (`initial` / `animate` / `whileHover` / ...), wires them through {@link createWardWith}, and
11
+ * renders the underlying element with the user's props passed through. The flush gate commits each
12
+ * frame onto the element (ADR-0034). `create(Component)` is the same over the component, which
13
+ * forwards its `ref` to its root element (#253).
14
+ *
15
+ * Locked merge policy (Option A) — the merge now lives in `ward()`
16
+ * ({@link createWardWith}); this HOC just forwards the user's `ref` + `style` into it:
17
+ * - Motion props are split off so none leak to the DOM (even ones not yet
18
+ * wired by {@link createWardWith}).
19
+ * - The user's `ref` AND Wardic's ref are both invoked (via `mergeRefs`).
20
+ * - Wardic's keys win: the Starting style goes over the user's `style` until the first
21
+ * commit; from then on the user's `style` is the fallback, without the keys the
22
+ * gate holds, which Wardic writes onto the element (ADR-0034). A reactive user
23
+ * `style` re-runs the spread's `style`; a frame never does.
24
+ *
25
+ * SSR-correct: {@link createWardWith} computes the Starting style synchronously, so the
26
+ * `<Dynamic>` renders with the merged Starting style on the very first render.
27
+ *
28
+ * REACTIVITY (component props): each motion prop is a plain VALUE, not an
29
+ * accessor. Solid's reactive prop getters already make a component prop tracked —
30
+ * reading `motion.animate` INSIDE {@link motionToConfig}'s config accessor
31
+ * subscribes to whatever signals back the prop. So write a TRACKED EXPRESSION as
32
+ * the value (`animate={open() ? { opacity: 1 } : { opacity: 0 }}`), NOT a function
33
+ * (`animate={() => expr}` is a type error — props are values, not accessors). A
34
+ * signal flip in that expression re-runs the config accessor and drives a Retarget.
35
+ */
36
+ import { mergeRefs } from "@solid-primitives/refs";
37
+ import * as Arr from "effect/Array";
38
+ import * as Bool from "effect/Boolean";
39
+ import * as Option from "effect/Option";
40
+ import * as Predicate from "effect/Predicate";
41
+ import * as Rec from "effect/Record";
42
+ import * as UndefinedOr from "effect/UndefinedOr";
43
+ import { $PROXY, children, createComponent, createEffect, createRenderEffect, sharedConfig, splitProps, untrack } from "solid-js";
44
+ import { assign, Dynamic, getNextElement, insert, spread, SVGElements, use } from "solid-js/web";
45
+ import { isServer } from "./server.js";
46
+ import { GESTURE_KEYS } from "./gesture-callbacks.js";
47
+ import { renderServerElement, serverAppearOfWard, createWardWith } from "./create-ward.js";
48
+ import { changesContext } from "./variant-tree.js";
49
+ import { MOTION_PROPS, motionToConfig } from "./motion-props.js";
50
+ import { droppedKeysOf, markWardic, routingTagOf } from "./wardic-component.js";
51
+ import { useWardicConfig } from "./wardic-config.js";
52
+ import { isValidPropOf } from "./wardic-config-value.js";
53
+ export { MOTION_PROPS, motionToConfig } from "./motion-props.js";
54
+ /**
55
+ * A client element's config from its split-off motion props: their keys are fixed unless they're a
56
+ * proxy (over a reactive spread), so the gesture callbacks the element wasn't given are never read
57
+ * (#273).
58
+ */
59
+ export const configOfMotion = motion => motionToConfig(motion, Bool.not($PROXY in motion));
60
+ /**
61
+ * `create(tag | Component)` of a form (`wardic.create`, `w.create`): a Wardic component, a Complete
62
+ * element's or a Slim one's as `kind` says (#511).
63
+ *
64
+ * Both are an element with a Ward on it, made by {@link createWardWith} (#253, as the Solid 2
65
+ * binding's `create` is, ADR-0045): the Starting style in `style` until the gate's first frame
66
+ * is committed (so on a server and in the hydration render), then the user's style (over the drag
67
+ * defaults) without the keys the gate holds (ADR-0034).
68
+ * - `create("div")` (element-string): renders `<Dynamic component={tag}>`.
69
+ * - `create(Component)` (a component function): the wrapped component must forward `props.ref`
70
+ * to its single root element, where the gate commits each frame; that is the only
71
+ * requirement. It also gets `style` and `draggable`: one that applies `props.style` renders
72
+ * its Starting style on a server, and one that doesn't still animates, the drag defaults
73
+ * set on its element at mount (ADR-0021, decision 6). One that never forwards its ref is a
74
+ * clear error once mounted (ADR-0008).
75
+ *
76
+ * `options` (#443, Motion's `motion.create` options): `forwardMotionProps` hands the motion props on
77
+ * to what it renders as well, and `type` says what its element is for its server render and Starting
78
+ * style ({@link WardicCreateOptions}).
79
+ */
80
+ export function createWith(arg, options, kind) {
81
+ const forward = options.forwardMotionProps === true;
82
+ const made = Bool.match(Predicate.isString(arg), {
83
+ onTrue: () => wardComponent(arg, {
84
+ ...kind,
85
+ tag: routingTagOf(arg, options.type)
86
+ }, forward),
87
+ onFalse: () => wardComponent(arg, {
88
+ ...WRAPPED,
89
+ ...kind,
90
+ tag: routingTagOf(undefined, options.type)
91
+ }, forward)
92
+ });
93
+ // Marked with what it wraps (#443): `isWardicComponent`, `unwrapWardicComponent`.
94
+ return markWardic(made, arg);
95
+ }
96
+ /** A form's `create`, its elements of `kind`. */
97
+ export const createOf = kind => (arg, options = {}) => createWith(arg, options, kind);
98
+ /**
99
+ * A form's proxy (`wardic`, `w`): called, it's the form's directive; `create` and the form's
100
+ * `extras` are its properties, and `<form>.<tag>` is `create(tag)`, cached so `wardic.div ===
101
+ * wardic.div` (stable component identity across reads). Any non-string key is `undefined`.
102
+ */
103
+ export const formOf = (directive, create, extras) => {
104
+ const cache = new Map();
105
+ return new Proxy(directive, {
106
+ get(_, prop) {
107
+ if (prop === "create") return create;
108
+ if (Predicate.isString(prop)) {
109
+ if (Object.hasOwn(extras, prop)) return extras[prop];
110
+ return Option.getOrElse(Option.fromUndefinedOr(cache.get(prop)), () => {
111
+ const c = create(prop);
112
+ cache.set(prop, c);
113
+ return c;
114
+ });
115
+ }
116
+ return undefined;
117
+ }
118
+ });
119
+ };
120
+ /** What wraps a component tells {@link createWardWith}: its component may not pass `style` on. */
121
+ const WRAPPED = {
122
+ defaultsOnElement: true
123
+ };
124
+ /** The namespace an svg tag's element is made in, as Solid's `createDynamic` makes it. */
125
+ const SVG_NAMESPACE = "http://www.w3.org/2000/svg";
126
+ /**
127
+ * What `<Dynamic component={component}>` renders, for a form's tag or component, which never changes
128
+ * (#525). Still a component boundary, as `Dynamic` is, so the hydration keys land where the server's
129
+ * `Dynamic` puts them. Without `Dynamic`'s `splitProps`, which copied every prop to take `component`
130
+ * out, and without `createDynamic`'s two memos over a component that can't change.
131
+ */
132
+ const fixedElement = component => {
133
+ if (Predicate.isFunction(component)) return props => untrack(() => component(props));
134
+ const tag = component;
135
+ const isSvg = SVGElements.has(tag);
136
+ return props => {
137
+ const el = tagElementOf(tag, isSvg, props);
138
+ spreadOnto(el, props, isSvg);
139
+ return el;
140
+ };
141
+ };
142
+ /** `tag`'s element: the server's while hydrating, else a new one, as `createDynamic` makes it. */
143
+ const tagElementOf = (tag, isSvg, props) => {
144
+ if (Predicate.isNotNullish(sharedConfig.context)) return getNextElement();
145
+ if (isSvg) return document.createElementNS(SVG_NAMESPACE, tag);
146
+ const is = untrack(() => props.is);
147
+ if (Predicate.isString(is)) return document.createElement(tag, {
148
+ is
149
+ });
150
+ return document.createElement(tag);
151
+ };
152
+ /**
153
+ * Solid's `spread` for props whose keys are fixed (#525): their children's effect only when they have
154
+ * children, and their ref called once, as JSX calls its own `ref`, where `spread` gives each a render
155
+ * effect an element. A proxy's keys can change (a reactive spread), so it takes Solid's `spread`.
156
+ */
157
+ const spreadOnto = (el, props, isSvg) => {
158
+ if ($PROXY in props) {
159
+ spread(el, props, isSvg);
160
+ return;
161
+ }
162
+ if ("children" in props) insert(el, () => props.children);
163
+ untrack(() => {
164
+ const ref = props.ref;
165
+ if (Predicate.isFunction(ref)) use(ref, el);
166
+ });
167
+ const prev = {};
168
+ createRenderEffect(() => assign(el, props, isSvg, true, prev, true));
169
+ };
170
+ /**
171
+ * `<form>.<tag>` and `<form>.create(Component)`: the element, or the wrapped component, with a
172
+ * Ward from {@link createWardWith} spread on it, its variant context's Provider around it when it
173
+ * changes what its children read (#50). `forward`: its motion props are handed on too (#443).
174
+ */
175
+ const wardComponent = (component, internal, forward) => {
176
+ const Rendered = fixedElement(component);
177
+ // What an element that can never want a gesture runs with (#525): made once a form.
178
+ const gestureless = {
179
+ ...internal,
180
+ gestureless: true
181
+ };
182
+ return props => {
183
+ // The nearest `WardicConfig`'s `isValidProp`, as the element is made (#443).
184
+ const isValidProp = isValidPropOf(useWardicConfig());
185
+ // A server render takes the lean path (ADR-0021, decision 4).
186
+ if (isServer) return serverElement(component, internal, props, forward, isValidProp);
187
+ // 3-way split: motion props (consumed, and only handed on when forwarded, #443), then ref+style
188
+ // (merged), then everything else (rest) passes through to the element or component, but a tag's
189
+ // props a `WardicConfig`'s `isValidProp` keeps off it.
190
+ const [motion, refStyle, own] = splitProps(props, MOTION_PROPS, ["ref", "style"]);
191
+ const dropped = droppedKeysOf(() => Object.keys(own), isValidProp, Predicate.isString(component));
192
+ // Split again only when it keeps any off (most elements have no `isValidProp` above them).
193
+ const rest = Bool.match(Arr.isReadonlyArrayEmpty(dropped), {
194
+ onTrue: () => own,
195
+ onFalse: () => splitProps(own, dropped)[1]
196
+ });
197
+ const handedOn = Bool.match(forward, {
198
+ onTrue: () => motion,
199
+ onFalse: () => NO_PROPS
200
+ });
201
+ // Reactive config accessor: motionToConfig reads each (reactive) prop getter
202
+ // inside the accessor, so a changed `animate` / `whileHover` / `transition`
203
+ // (a tracked expression) drives a Retarget. The tag lets an svg-inner element
204
+ // render its Starting style's attribute keys as attributes (ADR-0021).
205
+ const cfg = configOfMotion(motion);
206
+ // Its keys fixed (no reactive spread) and none of them a gesture's, it can never want one (#525).
207
+ let spineInternal = internal;
208
+ if (Bool.not($PROXY in motion)) {
209
+ if (Bool.not(Arr.some(GESTURE_KEYS, key => key in motion))) spineInternal = gestureless;
210
+ }
211
+ const ward = createWardWith(cfg, spineInternal);
212
+ // Delegate the ref + style merge entirely to ward(): it invokes both the
213
+ // user's ref and ward's internal ref, and gives the element its `style`: the
214
+ // Starting style over the user's, then the user's without the keys the gate
215
+ // holds (ADR-0034).
216
+ //
217
+ // `style` is threaded as a LIVE GETTER, not a value read once at setup:
218
+ // `refStyle.style` is a reactive `splitProps` getter, so a reactive user
219
+ // `style` prop (e.g. `style={{ left: pos() }}` on a non-animated key) is
220
+ // tracked by ward()'s reactive style getter and re-merged on change. Reading
221
+ // it into a `const` here would freeze it at its initial value. `ref` is wired
222
+ // once at mount (refs don't change), so it stays a one-time read.
223
+ const forwarding = forwardingOf(component, refStyle.ref);
224
+ const ref = forwarding.ref;
225
+ const userProps = {
226
+ ...UndefinedOr.match(ref, {
227
+ onUndefined: () => ({}),
228
+ onDefined: defined => ({
229
+ ref: defined
230
+ })
231
+ }),
232
+ get style() {
233
+ return refStyle.style;
234
+ }
235
+ };
236
+ // An element that changes what its children read renders its variant context's Provider
237
+ // around them (#50); any other renders none (`changesContext`, decided once, as on a server).
238
+ // The Ward's props, made once: a call spread in JSX compiles to a function source, which made
239
+ // `mergeProps` a proxy that the spread read every key through (#525). Their `style` is a getter.
240
+ const wardProps = ward(userProps);
241
+ const element = () => _$createComponent(Rendered, _$mergeProps(handedOn, rest, wardProps));
242
+ return Bool.match(changesContext(untrack(cfg)), {
243
+ onFalse: () => forwarding.render(element),
244
+ onTrue: () => _$createComponent(ward.Provider, {
245
+ get children() {
246
+ return forwarding.render(element);
247
+ }
248
+ })
249
+ });
250
+ };
251
+ };
252
+ /** A tag's: the user's ref, and its element as it is. */
253
+ const ownElement = element => element();
254
+ /**
255
+ * The user's ref, and, for a wrapped component, the check that it forwards the Ward's (ADR-0008,
256
+ * narrowed by #414): one that renders an element and forwards its ref to none of what it renders
257
+ * leaves the gate no element to commit to, a clear error. One that renders nothing yet (a component
258
+ * library's part that shows only while open or selected) is waited on: its element is driven when it
259
+ * comes. Checked each time what it renders changes, inside the wrap's Provider (#50).
260
+ */
261
+ const forwardingOf = (component, userRef) => {
262
+ if (Predicate.isString(component)) return {
263
+ ref: userRef,
264
+ render: ownElement
265
+ };
266
+ let reached;
267
+ const ref = mergeRefs(userRef, el => {
268
+ reached = el;
269
+ });
270
+ const render = element => {
271
+ const rendered = children(element);
272
+ createEffect(() => {
273
+ const elements = Arr.filter(rendered.toArray(), isElement);
274
+ if (Arr.isArrayEmpty(elements)) return;
275
+ if (Arr.some(elements, inside => Predicate.isNotUndefined(reached) && inside.contains(reached))) return;
276
+ const name = component.name || "anonymous component";
277
+ throw new Error(`wardic.create(${name}): the wrapped component rendered an element but did not forward its ref to it. ` + "The component must forward props.ref to a single root DOM element " + "(e.g. <div ref={props.ref}>...</div>). Element-only motion is wired through the ref.");
278
+ });
279
+ return rendered;
280
+ };
281
+ return {
282
+ ref,
283
+ render
284
+ };
285
+ };
286
+ /** Whether a rendered node is an element. */
287
+ const isElement = node => node instanceof Element;
288
+ /** No props: what an element that doesn't forward its motion props hands on of them. */
289
+ const NO_PROPS = {};
290
+ /** The motion props, as a set for the server path's one pass. */
291
+ const MOTION_KEYS = new Set(MOTION_PROPS);
292
+ /**
293
+ * Set each of `values` on `out` as a plain data property. A key copied from the user's props
294
+ * may be a getter (a reactive prop like `cx={cx()}`), which an assignment can't overwrite;
295
+ * Wardic's value wins, as `mergeProps` makes it on the client.
296
+ */
297
+ const override = (out, values) => Arr.forEach(Rec.keys(values), key => {
298
+ Object.defineProperty(out, key, {
299
+ value: values[key],
300
+ enumerable: true,
301
+ configurable: true,
302
+ writable: true
303
+ });
304
+ });
305
+ /**
306
+ * Everything in `props` but `ref`, `style`, the motion props unless `forward`, and the keys `dropped`
307
+ * (#443), in one pass; getters stay getters.
308
+ */
309
+ const passThrough = (props, forward, dropped) => {
310
+ const descriptors = Object.getOwnPropertyDescriptors(props);
311
+ const out = {};
312
+ const off = new Set(dropped);
313
+ Arr.forEach(Rec.keys(descriptors), key => {
314
+ if (key === "ref" || key === "style" || off.has(key)) return;
315
+ if (MOTION_KEYS.has(key) && !forward) return;
316
+ Object.defineProperty(out, key, UndefinedOr.getOrThrow(descriptors[key]));
317
+ });
318
+ return out;
319
+ };
320
+ /**
321
+ * `wardic.<tag>` and `wardic.create(Component)` during a server render (ADR-0021, decisions 4 and
322
+ * 6): the element, or the component, with its Starting style and static attributes, built in one
323
+ * pass over the props. Solid's server `splitProps` and `mergeProps` cost most of a wrapped
324
+ * element's server time, and none of their reactivity matters there. The client's
325
+ * `createUniqueId` (inside `createWardWith`) and its `Dynamic` boundary are kept, so every
326
+ * hydration key lands where the client's render puts it.
327
+ */
328
+ const serverElement = (component, internal, props, forward, isValidProp) => {
329
+ // A tag's props `isValidProp` keeps off it, as the client's (#443): of its own, the motion props, `ref` and `style` aside.
330
+ const ownKeys = () => Arr.filter(Object.keys(props), key => !MOTION_KEYS.has(key) && key !== "ref" && key !== "style");
331
+ const out = passThrough(props, forward, droppedKeysOf(ownKeys, isValidProp, Predicate.isString(component)));
332
+ const cfg = motionToConfig(props);
333
+ const ward = createWardWith(cfg, internal);
334
+ override(out, {
335
+ ...ward({
336
+ style: props.style
337
+ }),
338
+ component
339
+ });
340
+ // The client's nesting: the element's `ward.Provider` when it changes what its children read
341
+ // (#50), then the element; a late chunk's root then its chunk's style (#245).
342
+ const element = () => createComponent(Dynamic, out);
343
+ const render = () => Bool.match(changesContext(cfg()), {
344
+ onFalse: element,
345
+ onTrue: () => createComponent(ward.Provider, {
346
+ get children() {
347
+ return element();
348
+ }
349
+ })
350
+ });
351
+ return renderServerElement(serverAppearOfWard(ward), render);
352
+ };
353
+ //# sourceMappingURL=element.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"element.js","names":["mergeRefs","Arr","Bool","Option","Predicate","Rec","UndefinedOr","$PROXY","children","createComponent","createEffect","createRenderEffect","sharedConfig","splitProps","untrack","assign","Dynamic","getNextElement","insert","spread","SVGElements","use","isServer","GESTURE_KEYS","renderServerElement","serverAppearOfWard","createWardWith","changesContext","MOTION_PROPS","motionToConfig","droppedKeysOf","markWardic","routingTagOf","useWardicConfig","isValidPropOf","configOfMotion","motion","not","createWith","arg","options","kind","forward","forwardMotionProps","made","match","isString","onTrue","wardComponent","tag","type","onFalse","WRAPPED","undefined","createOf","formOf","directive","create","extras","cache","Map","Proxy","get","_","prop","Object","hasOwn","getOrElse","fromUndefinedOr","c","set","defaultsOnElement","SVG_NAMESPACE","fixedElement","component","isFunction","props","isSvg","has","el","tagElementOf","spreadOnto","isNotNullish","context","document","createElementNS","is","createElement","ref","prev","internal","Rendered","gestureless","isValidProp","serverElement","refStyle","own","dropped","keys","rest","isReadonlyArrayEmpty","handedOn","NO_PROPS","cfg","spineInternal","some","key","ward","forwarding","forwardingOf","userProps","onUndefined","onDefined","defined","style","wardProps","element","_$createComponent","_$mergeProps","render","Provider","ownElement","userRef","reached","rendered","elements","filter","toArray","isElement","isArrayEmpty","inside","isNotUndefined","contains","name","Error","node","Element","MOTION_KEYS","Set","override","out","values","forEach","defineProperty","value","enumerable","configurable","writable","passThrough","descriptors","getOwnPropertyDescriptors","off","getOrThrow","ownKeys"],"sources":["../../src/element.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}