motion-start 0.0.1 → 0.0.3

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 (727) hide show
  1. package/README.md +27 -2
  2. package/{src → dist}/animation/UseAnimatedState.svelte +1 -1
  3. package/dist/animation/UseAnimatedState.svelte.d.ts +34 -0
  4. package/dist/animation/UseAnimatedState.svelte.d.ts.map +1 -0
  5. package/dist/animation/UseAnimation.svelte.d.ts +29 -0
  6. package/dist/animation/UseAnimation.svelte.d.ts.map +1 -0
  7. package/{src/animation/animate.ts → dist/animation/animate.d.ts} +59 -78
  8. package/dist/animation/animate.d.ts.map +1 -0
  9. package/dist/animation/animate.js +46 -0
  10. package/dist/animation/animation-controls.d.ts +12 -0
  11. package/dist/animation/animation-controls.d.ts.map +1 -0
  12. package/{src/animation/animation-controls.ts → dist/animation/animation-controls.js} +89 -101
  13. package/{src/animation/types.ts → dist/animation/types.d.ts} +84 -83
  14. package/dist/animation/types.d.ts.map +1 -0
  15. package/dist/animation/types.js +1 -0
  16. package/dist/animation/use-animated-state.d.ts +2 -0
  17. package/dist/animation/use-animated-state.d.ts.map +1 -0
  18. package/dist/animation/use-animated-state.js +1 -0
  19. package/dist/animation/use-animation.d.ts +62 -0
  20. package/dist/animation/use-animation.d.ts.map +1 -0
  21. package/{src/animation/use-animation.ts → dist/animation/use-animation.js} +66 -74
  22. package/dist/animation/utils/default-transitions.d.ts +27 -0
  23. package/dist/animation/utils/default-transitions.d.ts.map +1 -0
  24. package/dist/animation/utils/default-transitions.js +67 -0
  25. package/dist/animation/utils/easing.d.ts +9 -0
  26. package/dist/animation/utils/easing.d.ts.map +1 -0
  27. package/{src/animation/utils/easing.ts → dist/animation/utils/easing.js} +43 -55
  28. package/dist/animation/utils/is-animatable.d.ts +17 -0
  29. package/dist/animation/utils/is-animatable.d.ts.map +1 -0
  30. package/{src/animation/utils/is-animatable.ts → dist/animation/utils/is-animatable.js} +33 -42
  31. package/{src/animation/utils/is-animation-controls.ts → dist/animation/utils/is-animation-controls.d.ts} +12 -17
  32. package/dist/animation/utils/is-animation-controls.d.ts.map +1 -0
  33. package/dist/animation/utils/is-animation-controls.js +8 -0
  34. package/{src/animation/utils/is-keyframes-target.ts → dist/animation/utils/is-keyframes-target.d.ts} +12 -17
  35. package/dist/animation/utils/is-keyframes-target.d.ts.map +1 -0
  36. package/dist/animation/utils/is-keyframes-target.js +8 -0
  37. package/dist/animation/utils/transitions.d.ts +35 -0
  38. package/dist/animation/utils/transitions.d.ts.map +1 -0
  39. package/{src/animation/utils/transitions.ts → dist/animation/utils/transitions.js} +220 -218
  40. package/{src/animation/utils/variant-resolvers.ts → dist/animation/utils/variant-resolvers.d.ts} +17 -15
  41. package/dist/animation/utils/variant-resolvers.d.ts.map +1 -0
  42. package/dist/animation/utils/variant-resolvers.js +5 -0
  43. package/dist/components/AnimatePresence/AnimatePresence.svelte.d.ts +39 -0
  44. package/dist/components/AnimatePresence/AnimatePresence.svelte.d.ts.map +1 -0
  45. package/{src → dist}/components/AnimatePresence/PresenceChild/PresenceChild.svelte +1 -1
  46. package/dist/components/AnimatePresence/PresenceChild/PresenceChild.svelte.d.ts +29 -0
  47. package/dist/components/AnimatePresence/PresenceChild/PresenceChild.svelte.d.ts.map +1 -0
  48. package/{src/components/AnimatePresence/PresenceChild/index.ts → dist/components/AnimatePresence/PresenceChild/index.d.ts} +7 -7
  49. package/dist/components/AnimatePresence/PresenceChild/index.d.ts.map +1 -0
  50. package/dist/components/AnimatePresence/PresenceChild/index.js +5 -0
  51. package/{src/components/AnimatePresence/PresenceChild/types.ts → dist/components/AnimatePresence/PresenceChild/types.d.ts} +10 -10
  52. package/dist/components/AnimatePresence/PresenceChild/types.d.ts.map +1 -0
  53. package/dist/components/AnimatePresence/PresenceChild/types.js +1 -0
  54. package/{src/components/AnimatePresence/index.ts → dist/components/AnimatePresence/index.d.ts} +51 -46
  55. package/dist/components/AnimatePresence/index.d.ts.map +1 -0
  56. package/dist/components/AnimatePresence/index.js +2 -0
  57. package/dist/components/AnimatePresence/type.spec-d.d.ts +2 -0
  58. package/dist/components/AnimatePresence/type.spec-d.d.ts.map +1 -0
  59. package/dist/components/AnimatePresence/type.spec-d.js +6 -0
  60. package/{src/components/AnimatePresence/types.ts → dist/components/AnimatePresence/types.d.ts} +82 -79
  61. package/dist/components/AnimatePresence/types.d.ts.map +1 -0
  62. package/dist/components/AnimatePresence/types.js +1 -0
  63. package/dist/components/AnimatePresence/use-presence.d.ts +56 -0
  64. package/dist/components/AnimatePresence/use-presence.d.ts.map +1 -0
  65. package/{src/components/AnimatePresence/use-presence.ts → dist/components/AnimatePresence/use-presence.js} +69 -90
  66. package/dist/components/AnimateSharedLayout/AnimateSharedLayout.svelte.d.ts +29 -0
  67. package/dist/components/AnimateSharedLayout/AnimateSharedLayout.svelte.d.ts.map +1 -0
  68. package/{src/components/AnimateSharedLayout/index.ts → dist/components/AnimateSharedLayout/index.d.ts} +11 -11
  69. package/dist/components/AnimateSharedLayout/index.d.ts.map +1 -0
  70. package/dist/components/AnimateSharedLayout/index.js +9 -0
  71. package/dist/components/AnimateSharedLayout/type.spec-d.d.ts +2 -0
  72. package/dist/components/AnimateSharedLayout/type.spec-d.d.ts.map +1 -0
  73. package/dist/components/AnimateSharedLayout/type.spec-d.js +6 -0
  74. package/{src/components/AnimateSharedLayout/types.ts → dist/components/AnimateSharedLayout/types.d.ts} +91 -111
  75. package/dist/components/AnimateSharedLayout/types.d.ts.map +1 -0
  76. package/dist/components/AnimateSharedLayout/types.js +40 -0
  77. package/dist/components/AnimateSharedLayout/utils/batcher.d.ts +11 -0
  78. package/dist/components/AnimateSharedLayout/utils/batcher.d.ts.map +1 -0
  79. package/{src/components/AnimateSharedLayout/utils/batcher.ts → dist/components/AnimateSharedLayout/utils/batcher.js} +87 -96
  80. package/dist/components/AnimateSharedLayout/utils/crossfader.d.ts +27 -0
  81. package/dist/components/AnimateSharedLayout/utils/crossfader.d.ts.map +1 -0
  82. package/{src/components/AnimateSharedLayout/utils/crossfader.ts → dist/components/AnimateSharedLayout/utils/crossfader.js} +234 -260
  83. package/dist/components/AnimateSharedLayout/utils/rotate.d.ts +8 -0
  84. package/dist/components/AnimateSharedLayout/utils/rotate.d.ts.map +1 -0
  85. package/{src/components/AnimateSharedLayout/utils/rotate.ts → dist/components/AnimateSharedLayout/utils/rotate.js} +38 -48
  86. package/dist/components/AnimateSharedLayout/utils/stack.d.ts +21 -0
  87. package/dist/components/AnimateSharedLayout/utils/stack.d.ts.map +1 -0
  88. package/{src/components/AnimateSharedLayout/utils/stack.ts → dist/components/AnimateSharedLayout/utils/stack.js} +138 -160
  89. package/dist/components/LazyMotion/LazyMotion.svelte.d.ts +29 -0
  90. package/dist/components/LazyMotion/LazyMotion.svelte.d.ts.map +1 -0
  91. package/{src/components/LazyMotion/index.ts → dist/components/LazyMotion/index.d.ts} +42 -42
  92. package/dist/components/LazyMotion/index.d.ts.map +1 -0
  93. package/dist/components/LazyMotion/index.js +36 -0
  94. package/{src/components/LazyMotion/types.ts → dist/components/LazyMotion/types.d.ts} +57 -58
  95. package/dist/components/LazyMotion/types.d.ts.map +1 -0
  96. package/dist/components/LazyMotion/types.js +1 -0
  97. package/{src → dist}/components/MotionConfig/MotionConfig.svelte +3 -2
  98. package/dist/components/MotionConfig/MotionConfig.svelte.d.ts +29 -0
  99. package/dist/components/MotionConfig/MotionConfig.svelte.d.ts.map +1 -0
  100. package/dist/components/MotionConfig/MotionConfigScaleCorrection.d.ts +4 -0
  101. package/dist/components/MotionConfig/MotionConfigScaleCorrection.d.ts.map +1 -0
  102. package/{src/components/MotionConfig/MotionConfigScaleCorrection.ts → dist/components/MotionConfig/MotionConfigScaleCorrection.js} +29 -47
  103. package/{src/components/MotionConfig/index.ts → dist/components/MotionConfig/index.d.ts} +21 -20
  104. package/dist/components/MotionConfig/index.d.ts.map +1 -0
  105. package/dist/components/MotionConfig/index.js +14 -0
  106. package/dist/components/MotionConfig/type.spec-d.d.ts +2 -0
  107. package/dist/components/MotionConfig/type.spec-d.d.ts.map +1 -0
  108. package/dist/components/MotionConfig/type.spec-d.js +6 -0
  109. package/dist/components/MotionDiv.svelte.d.ts +31 -0
  110. package/dist/components/MotionDiv.svelte.d.ts.map +1 -0
  111. package/dist/context/DOMcontext.d.ts +5 -0
  112. package/dist/context/DOMcontext.d.ts.map +1 -0
  113. package/dist/context/DOMcontext.js +20 -0
  114. package/dist/context/LayoutGroupContext.d.ts +10 -0
  115. package/dist/context/LayoutGroupContext.d.ts.map +1 -0
  116. package/dist/context/LayoutGroupContext.js +6 -0
  117. package/dist/context/LazyContext.d.ts +13 -0
  118. package/dist/context/LazyContext.d.ts.map +1 -0
  119. package/dist/context/LazyContext.js +4 -0
  120. package/{src/context/MotionConfigContext.ts → dist/context/MotionConfigContext.d.ts} +35 -48
  121. package/dist/context/MotionConfigContext.d.ts.map +1 -0
  122. package/dist/context/MotionConfigContext.js +14 -0
  123. package/{src → dist}/context/MotionContext/MotionContext.svelte +5 -4
  124. package/dist/context/MotionContext/MotionContext.svelte.d.ts +39 -0
  125. package/dist/context/MotionContext/MotionContext.svelte.d.ts.map +1 -0
  126. package/dist/context/MotionContext/MotionContextProvider.svelte.d.ts +31 -0
  127. package/dist/context/MotionContext/MotionContextProvider.svelte.d.ts.map +1 -0
  128. package/dist/context/MotionContext/UseCreateMotionContext.svelte +39 -0
  129. package/dist/context/MotionContext/UseCreateMotionContext.svelte.d.ts +42 -0
  130. package/dist/context/MotionContext/UseCreateMotionContext.svelte.d.ts.map +1 -0
  131. package/dist/context/MotionContext/create.d.ts +2 -0
  132. package/dist/context/MotionContext/create.d.ts.map +1 -0
  133. package/{src/context/MotionContext/create.ts → dist/context/MotionContext/create.js} +1 -1
  134. package/{src/context/MotionContext/index.ts → dist/context/MotionContext/index.d.ts} +12 -14
  135. package/dist/context/MotionContext/index.d.ts.map +1 -0
  136. package/dist/context/MotionContext/index.js +1 -0
  137. package/dist/context/MotionContext/utils.d.ts +9 -0
  138. package/dist/context/MotionContext/utils.d.ts.map +1 -0
  139. package/{src/context/MotionContext/utils.ts → dist/context/MotionContext/utils.js} +18 -29
  140. package/{src/context/PresenceContext.ts → dist/context/PresenceContext.d.ts} +22 -26
  141. package/dist/context/PresenceContext.d.ts.map +1 -0
  142. package/dist/context/PresenceContext.js +6 -0
  143. package/{src → dist}/context/ScaleCorrectionProvider.svelte +1 -2
  144. package/dist/context/ScaleCorrectionProvider.svelte.d.ts +33 -0
  145. package/dist/context/ScaleCorrectionProvider.svelte.d.ts.map +1 -0
  146. package/dist/context/SharedLayoutContext.d.ts +14 -0
  147. package/dist/context/SharedLayoutContext.d.ts.map +1 -0
  148. package/dist/context/SharedLayoutContext.js +16 -0
  149. package/dist/events/UseDomEvent-type.spec-d.d.ts +2 -0
  150. package/dist/events/UseDomEvent-type.spec-d.d.ts.map +1 -0
  151. package/dist/events/UseDomEvent-type.spec-d.js +6 -0
  152. package/{src → dist}/events/UseDomEvent.svelte +2 -2
  153. package/dist/events/UseDomEvent.svelte.d.ts +30 -0
  154. package/dist/events/UseDomEvent.svelte.d.ts.map +1 -0
  155. package/{src → dist}/events/UsePointerEvent.svelte +1 -1
  156. package/dist/events/UsePointerEvent.svelte.d.ts +31 -0
  157. package/dist/events/UsePointerEvent.svelte.d.ts.map +1 -0
  158. package/dist/events/event-info.d.ts +11 -0
  159. package/dist/events/event-info.d.ts.map +1 -0
  160. package/{src/events/event-info.ts → dist/events/event-info.js} +65 -69
  161. package/{src/events/types.ts → dist/events/types.d.ts} +15 -15
  162. package/dist/events/types.d.ts.map +1 -0
  163. package/dist/events/types.js +1 -0
  164. package/{src/events/use-dom-event.ts → dist/events/use-dom-event.d.ts} +50 -48
  165. package/dist/events/use-dom-event.d.ts.map +1 -0
  166. package/dist/events/use-dom-event.js +24 -0
  167. package/{src/events/use-pointer-event.ts → dist/events/use-pointer-event.d.ts} +27 -29
  168. package/dist/events/use-pointer-event.d.ts.map +1 -0
  169. package/dist/events/use-pointer-event.js +1 -0
  170. package/dist/events/utils.d.ts +9 -0
  171. package/dist/events/utils.d.ts.map +1 -0
  172. package/{src/events/utils.ts → dist/events/utils.js} +20 -25
  173. package/dist/gestures/PanSession.d.ts +142 -0
  174. package/dist/gestures/PanSession.d.ts.map +1 -0
  175. package/dist/gestures/PanSession.js +233 -0
  176. package/dist/gestures/UseFocusGesture.svelte.d.ts +31 -0
  177. package/dist/gestures/UseFocusGesture.svelte.d.ts.map +1 -0
  178. package/dist/gestures/UseGestures.svelte.d.ts +31 -0
  179. package/dist/gestures/UseGestures.svelte.d.ts.map +1 -0
  180. package/{src → dist}/gestures/UseHoverGesture.svelte +3 -2
  181. package/dist/gestures/UseHoverGesture.svelte.d.ts +31 -0
  182. package/dist/gestures/UseHoverGesture.svelte.d.ts.map +1 -0
  183. package/dist/gestures/UsePanGesture.svelte.d.ts +32 -0
  184. package/dist/gestures/UsePanGesture.svelte.d.ts.map +1 -0
  185. package/dist/gestures/UseTapGesture.svelte.d.ts +31 -0
  186. package/dist/gestures/UseTapGesture.svelte.d.ts.map +1 -0
  187. package/{src → dist}/gestures/drag/UseDrag.svelte +3 -2
  188. package/dist/gestures/drag/UseDrag.svelte.d.ts +32 -0
  189. package/dist/gestures/drag/UseDrag.svelte.d.ts.map +1 -0
  190. package/{src → dist}/gestures/drag/UseDragControls.svelte +4 -8
  191. package/dist/gestures/drag/UseDragControls.svelte.d.ts +19 -0
  192. package/dist/gestures/drag/UseDragControls.svelte.d.ts.map +1 -0
  193. package/dist/gestures/drag/VisualElementDragControls.d.ts +116 -0
  194. package/dist/gestures/drag/VisualElementDragControls.d.ts.map +1 -0
  195. package/dist/gestures/drag/VisualElementDragControls.js +749 -0
  196. package/{src/gestures/drag/types.ts → dist/gestures/drag/types.d.ts} +308 -307
  197. package/dist/gestures/drag/types.d.ts.map +1 -0
  198. package/dist/gestures/drag/types.js +2 -0
  199. package/dist/gestures/drag/use-drag-controls.d.ts +128 -0
  200. package/dist/gestures/drag/use-drag-controls.d.ts.map +1 -0
  201. package/dist/gestures/drag/use-drag-controls.js +157 -0
  202. package/{src/gestures/drag/use-drag.ts → dist/gestures/drag/use-drag.d.ts} +13 -15
  203. package/dist/gestures/drag/use-drag.d.ts.map +1 -0
  204. package/dist/gestures/drag/use-drag.js +1 -0
  205. package/dist/gestures/drag/utils/constraints.d.ts +78 -0
  206. package/dist/gestures/drag/utils/constraints.d.ts.map +1 -0
  207. package/{src/gestures/drag/utils/constraints.ts → dist/gestures/drag/utils/constraints.js} +135 -157
  208. package/dist/gestures/drag/utils/lock.d.ts +14 -0
  209. package/dist/gestures/drag/utils/lock.d.ts.map +1 -0
  210. package/{src/gestures/drag/utils/lock.ts → dist/gestures/drag/utils/lock.js} +56 -69
  211. package/{src/gestures/types.ts → dist/gestures/types.d.ts} +258 -257
  212. package/dist/gestures/types.d.ts.map +1 -0
  213. package/dist/gestures/types.js +1 -0
  214. package/{src/gestures/use-focus-gesture.ts → dist/gestures/use-focus-gesture.d.ts} +14 -16
  215. package/dist/gestures/use-focus-gesture.d.ts.map +1 -0
  216. package/dist/gestures/use-focus-gesture.js +1 -0
  217. package/dist/gestures/use-gestures.d.ts +2 -0
  218. package/dist/gestures/use-gestures.d.ts.map +1 -0
  219. package/{src/gestures/use-gestures.ts → dist/gestures/use-gestures.js} +1 -2
  220. package/{src/gestures/use-hover-gesture.ts → dist/gestures/use-hover-gesture.d.ts} +8 -10
  221. package/dist/gestures/use-hover-gesture.d.ts.map +1 -0
  222. package/dist/gestures/use-hover-gesture.js +1 -0
  223. package/{src/gestures/use-pan-gesture.ts → dist/gestures/use-pan-gesture.d.ts} +20 -22
  224. package/dist/gestures/use-pan-gesture.d.ts.map +1 -0
  225. package/dist/gestures/use-pan-gesture.js +1 -0
  226. package/{src/gestures/use-tap-gesture.ts → dist/gestures/use-tap-gesture.d.ts} +12 -14
  227. package/dist/gestures/use-tap-gesture.d.ts.map +1 -0
  228. package/dist/gestures/use-tap-gesture.js +1 -0
  229. package/dist/gestures/utils/event-type.d.ts +12 -0
  230. package/dist/gestures/utils/event-type.d.ts.map +1 -0
  231. package/{src/gestures/utils/event-type.ts → dist/gestures/utils/event-type.js} +20 -24
  232. package/dist/gestures/utils/is-node-or-child.d.ts +18 -0
  233. package/dist/gestures/utils/is-node-or-child.d.ts.map +1 -0
  234. package/{src/gestures/utils/is-node-or-child.ts → dist/gestures/utils/is-node-or-child.js} +27 -31
  235. package/{src/index.ts → dist/index.d.ts} +96 -104
  236. package/dist/index.d.ts.map +1 -0
  237. package/dist/index.js +75 -0
  238. package/{src → dist}/motion/Motion.svelte +82 -74
  239. package/dist/motion/Motion.svelte.d.ts +41 -0
  240. package/dist/motion/Motion.svelte.d.ts.map +1 -0
  241. package/{src → dist}/motion/MotionSSR.svelte +76 -55
  242. package/dist/motion/MotionSSR.svelte.d.ts +41 -0
  243. package/dist/motion/MotionSSR.svelte.d.ts.map +1 -0
  244. package/dist/motion/features/AnimationState.svelte.d.ts +22 -0
  245. package/dist/motion/features/AnimationState.svelte.d.ts.map +1 -0
  246. package/{src → dist}/motion/features/Exit.svelte +15 -5
  247. package/dist/motion/features/Exit.svelte.d.ts +32 -0
  248. package/dist/motion/features/Exit.svelte.d.ts.map +1 -0
  249. package/{src → dist}/motion/features/UseFeatures.svelte +2 -2
  250. package/dist/motion/features/UseFeatures.svelte.d.ts +45 -0
  251. package/dist/motion/features/UseFeatures.svelte.d.ts.map +1 -0
  252. package/{src/motion/features/animations.ts → dist/motion/features/animations.js} +14 -22
  253. package/dist/motion/features/definitions.d.ts +37 -0
  254. package/dist/motion/features/definitions.d.ts.map +1 -0
  255. package/{src/motion/features/definitions.ts → dist/motion/features/definitions.js} +42 -49
  256. package/{src/motion/features/drag.ts → dist/motion/features/drag.js} +14 -24
  257. package/{src/motion/features/gestures.ts → dist/motion/features/gestures.js} +16 -24
  258. package/dist/motion/features/layout/Animate.d.ts +2 -0
  259. package/dist/motion/features/layout/Animate.d.ts.map +1 -0
  260. package/dist/motion/features/layout/Animate.js +2 -0
  261. package/{src → dist}/motion/features/layout/Animate.svelte +10 -10
  262. package/dist/motion/features/layout/Animate.svelte.d.ts +23 -0
  263. package/dist/motion/features/layout/Animate.svelte.d.ts.map +1 -0
  264. package/dist/motion/features/layout/AnimateLayoutContextProvider.svelte.d.ts +23 -0
  265. package/dist/motion/features/layout/AnimateLayoutContextProvider.svelte.d.ts.map +1 -0
  266. package/dist/motion/features/layout/Measure.d.ts +2 -0
  267. package/dist/motion/features/layout/Measure.d.ts.map +1 -0
  268. package/dist/motion/features/layout/Measure.js +2 -0
  269. package/dist/motion/features/layout/Measure.svelte.d.ts +24 -0
  270. package/dist/motion/features/layout/Measure.svelte.d.ts.map +1 -0
  271. package/{src → dist}/motion/features/layout/MeasureContextProvider.svelte +7 -4
  272. package/dist/motion/features/layout/MeasureContextProvider.svelte.d.ts +23 -0
  273. package/dist/motion/features/layout/MeasureContextProvider.svelte.d.ts.map +1 -0
  274. package/{src/motion/features/layout/index.ts → dist/motion/features/layout/index.js} +11 -20
  275. package/{src/motion/features/layout/types.ts → dist/motion/features/layout/types.d.ts} +72 -71
  276. package/dist/motion/features/layout/types.d.ts.map +1 -0
  277. package/dist/motion/features/layout/types.js +1 -0
  278. package/dist/motion/features/layout/utils.d.ts +26 -0
  279. package/dist/motion/features/layout/utils.d.ts.map +1 -0
  280. package/{src/motion/features/layout/utils.ts → dist/motion/features/layout/utils.js} +28 -40
  281. package/{src/motion/features/types.ts → dist/motion/features/types.d.ts} +54 -53
  282. package/dist/motion/features/types.d.ts.map +1 -0
  283. package/dist/motion/features/types.js +1 -0
  284. package/{src/motion/features/use-features.ts → dist/motion/features/use-features.d.ts} +12 -16
  285. package/dist/motion/features/use-features.d.ts.map +1 -0
  286. package/dist/motion/features/use-features.js +5 -0
  287. package/dist/motion/index.d.ts +30 -0
  288. package/dist/motion/index.d.ts.map +1 -0
  289. package/dist/motion/index.js +35 -0
  290. package/dist/motion/type.spec-d.d.ts +2 -0
  291. package/dist/motion/type.spec-d.d.ts.map +1 -0
  292. package/dist/motion/type.spec-d.js +6 -0
  293. package/{src/motion/types.ts → dist/motion/types.d.ts} +277 -278
  294. package/dist/motion/types.d.ts.map +1 -0
  295. package/dist/motion/types.js +1 -0
  296. package/{src → dist}/motion/utils/UseLayoutId.svelte +3 -2
  297. package/dist/motion/utils/UseLayoutId.svelte.d.ts +35 -0
  298. package/dist/motion/utils/UseLayoutId.svelte.d.ts.map +1 -0
  299. package/{src → dist}/motion/utils/UseVisualElement.svelte +22 -13
  300. package/dist/motion/utils/UseVisualElement.svelte.d.ts +40 -0
  301. package/dist/motion/utils/UseVisualElement.svelte.d.ts.map +1 -0
  302. package/{src → dist}/motion/utils/UseVisualState.svelte +7 -7
  303. package/dist/motion/utils/UseVisualState.svelte.d.ts +37 -0
  304. package/dist/motion/utils/UseVisualState.svelte.d.ts.map +1 -0
  305. package/dist/motion/utils/is-forced-motion-value.d.ts +11 -0
  306. package/dist/motion/utils/is-forced-motion-value.d.ts.map +1 -0
  307. package/{src/motion/utils/is-forced-motion-value.ts → dist/motion/utils/is-forced-motion-value.js} +13 -23
  308. package/{src/motion/utils/make-renderless-component.ts → dist/motion/utils/make-renderless-component.d.ts} +12 -17
  309. package/dist/motion/utils/make-renderless-component.d.ts.map +1 -0
  310. package/dist/motion/utils/make-renderless-component.js +11 -0
  311. package/{src/motion/utils/should-inhert-variant.ts → dist/motion/utils/should-inhert-variant.d.ts} +7 -6
  312. package/dist/motion/utils/should-inhert-variant.d.ts.map +1 -0
  313. package/dist/motion/utils/should-inhert-variant.js +1 -0
  314. package/dist/motion/utils/use-motion-ref.d.ts +13 -0
  315. package/dist/motion/utils/use-motion-ref.d.ts.map +1 -0
  316. package/{src/motion/utils/use-motion-ref.ts → dist/motion/utils/use-motion-ref.js} +29 -41
  317. package/{src/motion/utils/use-visual-element.ts → dist/motion/utils/use-visual-element.d.ts} +10 -13
  318. package/dist/motion/utils/use-visual-element.d.ts.map +1 -0
  319. package/dist/motion/utils/use-visual-element.js +1 -0
  320. package/{src/motion/utils/use-visual-state.ts → dist/motion/utils/use-visual-state.d.ts} +20 -24
  321. package/dist/motion/utils/use-visual-state.d.ts.map +1 -0
  322. package/dist/motion/utils/use-visual-state.js +1 -0
  323. package/dist/motion/utils/valid-prop.d.ts +15 -0
  324. package/dist/motion/utils/valid-prop.d.ts.map +1 -0
  325. package/{src/motion/utils/valid-prop.ts → dist/motion/utils/valid-prop.js} +77 -80
  326. package/dist/render/dom/M-type.spec-d.d.ts +2 -0
  327. package/dist/render/dom/M-type.spec-d.d.ts.map +1 -0
  328. package/dist/render/dom/M-type.spec-d.js +6 -0
  329. package/dist/render/dom/M.svelte.d.ts +32 -0
  330. package/dist/render/dom/M.svelte.d.ts.map +1 -0
  331. package/dist/render/dom/UseRender.svelte.d.ts +42 -0
  332. package/dist/render/dom/UseRender.svelte.d.ts.map +1 -0
  333. package/{src/render/dom/create-motion-class.ts → dist/render/dom/create-motion-class.js} +10 -12
  334. package/dist/render/dom/create-visual-element.d.ts +8 -0
  335. package/dist/render/dom/create-visual-element.d.ts.map +1 -0
  336. package/{src/render/dom/create-visual-element.ts → dist/render/dom/create-visual-element.js} +12 -22
  337. package/{src/render/dom/featureBundle.ts → dist/render/dom/featureBundle.js} +19 -22
  338. package/dist/render/dom/motion-minimal.d.ts +10 -0
  339. package/dist/render/dom/motion-minimal.d.ts.map +1 -0
  340. package/dist/render/dom/motion-minimal.js +18 -0
  341. package/dist/render/dom/motion-proxy.d.ts +245 -0
  342. package/dist/render/dom/motion-proxy.d.ts.map +1 -0
  343. package/dist/render/dom/motion-proxy.js +55 -0
  344. package/{src/render/dom/motion.ts → dist/render/dom/motion.js} +42 -62
  345. package/dist/render/dom/projection/convert-to-relative.d.ts +12 -0
  346. package/dist/render/dom/projection/convert-to-relative.d.ts.map +1 -0
  347. package/{src/render/dom/projection/convert-to-relative.ts → dist/render/dom/projection/convert-to-relative.js} +32 -40
  348. package/dist/render/dom/projection/default-scale-correctors.d.ts +39 -0
  349. package/dist/render/dom/projection/default-scale-correctors.d.ts.map +1 -0
  350. package/{src/render/dom/projection/default-scale-correctors.ts → dist/render/dom/projection/default-scale-correctors.js} +108 -138
  351. package/dist/render/dom/projection/measure.d.ts +17 -0
  352. package/dist/render/dom/projection/measure.d.ts.map +1 -0
  353. package/{src/render/dom/projection/measure.ts → dist/render/dom/projection/measure.js} +19 -28
  354. package/dist/render/dom/projection/relative-set.d.ts +8 -0
  355. package/dist/render/dom/projection/relative-set.d.ts.map +1 -0
  356. package/{src/render/dom/projection/relative-set.ts → dist/render/dom/projection/relative-set.js} +18 -27
  357. package/{src/render/dom/projection/scale-correction.ts → dist/render/dom/projection/scale-correction.d.ts} +16 -22
  358. package/dist/render/dom/projection/scale-correction.d.ts.map +1 -0
  359. package/dist/render/dom/projection/scale-correction.js +14 -0
  360. package/{src/render/dom/projection/types.ts → dist/render/dom/projection/types.d.ts} +14 -13
  361. package/dist/render/dom/projection/types.d.ts.map +1 -0
  362. package/dist/render/dom/projection/types.js +1 -0
  363. package/dist/render/dom/projection/utils.d.ts +18 -0
  364. package/dist/render/dom/projection/utils.d.ts.map +1 -0
  365. package/{src/render/dom/projection/utils.ts → dist/render/dom/projection/utils.js} +62 -69
  366. package/dist/render/dom/svg-visual-element.d.ts +3 -0
  367. package/dist/render/dom/svg-visual-element.d.ts.map +1 -0
  368. package/{src/render/dom/svg-visual-element.ts → dist/render/dom/svg-visual-element.js} +81 -114
  369. package/{src/render/dom/types.ts → dist/render/dom/types.d.ts} +33 -32
  370. package/dist/render/dom/types.d.ts.map +1 -0
  371. package/dist/render/dom/types.js +1 -0
  372. package/{src/render/dom/use-render.ts → dist/render/dom/use-render.d.ts} +10 -11
  373. package/dist/render/dom/use-render.d.ts.map +1 -0
  374. package/dist/render/dom/use-render.js +1 -0
  375. package/dist/render/dom/utils/UseInitialMotionProps.svelte.d.ts +35 -0
  376. package/dist/render/dom/utils/UseInitialMotionProps.svelte.d.ts.map +1 -0
  377. package/dist/render/dom/utils/batch-layout.d.ts +14 -0
  378. package/dist/render/dom/utils/batch-layout.d.ts.map +1 -0
  379. package/{src/render/dom/utils/batch-layout.ts → dist/render/dom/utils/batch-layout.js} +66 -77
  380. package/dist/render/dom/utils/camel-to-dash.d.ts +10 -0
  381. package/dist/render/dom/utils/camel-to-dash.d.ts.map +1 -0
  382. package/{src/render/dom/utils/camel-to-dash.ts → dist/render/dom/utils/camel-to-dash.js} +17 -20
  383. package/dist/render/dom/utils/create-config.d.ts +13 -0
  384. package/dist/render/dom/utils/create-config.d.ts.map +1 -0
  385. package/dist/render/dom/utils/create-config.js +17 -0
  386. package/dist/render/dom/utils/css-variables-conversion.d.ts +28 -0
  387. package/dist/render/dom/utils/css-variables-conversion.d.ts.map +1 -0
  388. package/{src/render/dom/utils/css-variables-conversion.ts → dist/render/dom/utils/css-variables-conversion.js} +109 -121
  389. package/dist/render/dom/utils/filter-props.d.ts +8 -0
  390. package/dist/render/dom/utils/filter-props.d.ts.map +1 -0
  391. package/{src/render/dom/utils/filter-props.ts → dist/render/dom/utils/filter-props.js} +46 -55
  392. package/dist/render/dom/utils/is-css-variable.d.ts +14 -0
  393. package/dist/render/dom/utils/is-css-variable.d.ts.map +1 -0
  394. package/{src/render/dom/utils/is-css-variable.ts → dist/render/dom/utils/is-css-variable.js} +15 -18
  395. package/dist/render/dom/utils/is-svg-component.d.ts +8 -0
  396. package/dist/render/dom/utils/is-svg-component.d.ts.map +1 -0
  397. package/{src/render/dom/utils/is-svg-component.ts → dist/render/dom/utils/is-svg-component.js} +32 -41
  398. package/dist/render/dom/utils/parse-dom-variant.d.ts +12 -0
  399. package/dist/render/dom/utils/parse-dom-variant.d.ts.map +1 -0
  400. package/{src/render/dom/utils/parse-dom-variant.ts → dist/render/dom/utils/parse-dom-variant.js} +17 -26
  401. package/dist/render/dom/utils/unit-conversion.d.ts +27 -0
  402. package/dist/render/dom/utils/unit-conversion.d.ts.map +1 -0
  403. package/{src/render/dom/utils/unit-conversion.ts → dist/render/dom/utils/unit-conversion.js} +253 -258
  404. package/dist/render/dom/utils/use-html-props.d.ts +2 -0
  405. package/dist/render/dom/utils/use-html-props.d.ts.map +1 -0
  406. package/{src/render/dom/utils/use-html-props.ts → dist/render/dom/utils/use-html-props.js} +2 -2
  407. package/dist/render/dom/utils/use-svg-props.d.ts +2 -0
  408. package/dist/render/dom/utils/use-svg-props.d.ts.map +1 -0
  409. package/dist/render/dom/utils/use-svg-props.js +1 -0
  410. package/dist/render/dom/value-types/animatable-none.d.ts +7 -0
  411. package/dist/render/dom/value-types/animatable-none.d.ts.map +1 -0
  412. package/{src/render/dom/value-types/animatable-none.ts → dist/render/dom/value-types/animatable-none.js} +20 -24
  413. package/dist/render/dom/value-types/defaults.d.ts +15 -0
  414. package/dist/render/dom/value-types/defaults.d.ts.map +1 -0
  415. package/{src/render/dom/value-types/defaults.ts → dist/render/dom/value-types/defaults.js} +22 -30
  416. package/dist/render/dom/value-types/dimensions.d.ts +14 -0
  417. package/dist/render/dom/value-types/dimensions.d.ts.map +1 -0
  418. package/{src/render/dom/value-types/dimensions.ts → dist/render/dom/value-types/dimensions.js} +23 -27
  419. package/dist/render/dom/value-types/find.d.ts +15 -0
  420. package/dist/render/dom/value-types/find.d.ts.map +1 -0
  421. package/{src/render/dom/value-types/find.ts → dist/render/dom/value-types/find.js} +24 -31
  422. package/{src/render/dom/value-types/get-as-type.ts → dist/render/dom/value-types/get-as-type.d.ts} +15 -21
  423. package/dist/render/dom/value-types/get-as-type.d.ts.map +1 -0
  424. package/dist/render/dom/value-types/get-as-type.js +13 -0
  425. package/dist/render/dom/value-types/number.d.ts +8 -0
  426. package/dist/render/dom/value-types/number.d.ts.map +1 -0
  427. package/{src/render/dom/value-types/number.ts → dist/render/dom/value-types/number.js} +74 -83
  428. package/{src/render/dom/value-types/test.ts → dist/render/dom/value-types/test.d.ts} +15 -17
  429. package/dist/render/dom/value-types/test.d.ts.map +1 -0
  430. package/dist/render/dom/value-types/test.js +9 -0
  431. package/{src/render/dom/value-types/type-auto.ts → dist/render/dom/value-types/type-auto.d.ts} +15 -21
  432. package/dist/render/dom/value-types/type-auto.d.ts.map +1 -0
  433. package/dist/render/dom/value-types/type-auto.js +12 -0
  434. package/{src/render/dom/value-types/type-int.ts → dist/render/dom/value-types/type-int.d.ts} +14 -23
  435. package/dist/render/dom/value-types/type-int.d.ts.map +1 -0
  436. package/dist/render/dom/value-types/type-int.js +13 -0
  437. package/{src/render/dom/value-types/types.ts → dist/render/dom/value-types/types.d.ts} +9 -8
  438. package/dist/render/dom/value-types/types.d.ts.map +1 -0
  439. package/dist/render/dom/value-types/types.js +1 -0
  440. package/dist/render/html/UseHTMLProps.svelte.d.ts +36 -0
  441. package/dist/render/html/UseHTMLProps.svelte.d.ts.map +1 -0
  442. package/dist/render/html/UseInitialMotionValues.svelte.d.ts +36 -0
  443. package/dist/render/html/UseInitialMotionValues.svelte.d.ts.map +1 -0
  444. package/{src → dist}/render/html/UseStyle.svelte +2 -2
  445. package/dist/render/html/UseStyle.svelte.d.ts +41 -0
  446. package/dist/render/html/UseStyle.svelte.d.ts.map +1 -0
  447. package/dist/render/html/config-motion.d.ts +13 -0
  448. package/dist/render/html/config-motion.d.ts.map +1 -0
  449. package/dist/render/html/config-motion.js +12 -0
  450. package/dist/render/html/supported-elements.d.ts +12 -0
  451. package/dist/render/html/supported-elements.d.ts.map +1 -0
  452. package/{src/render/html/supported-elements.ts → dist/render/html/supported-elements.js} +4 -10
  453. package/{src/render/html/types.ts → dist/render/html/types.d.ts} +66 -64
  454. package/dist/render/html/types.d.ts.map +1 -0
  455. package/dist/render/html/types.js +1 -0
  456. package/{src/render/html/use-props.ts → dist/render/html/use-props.d.ts} +11 -14
  457. package/dist/render/html/use-props.d.ts.map +1 -0
  458. package/dist/render/html/use-props.js +2 -0
  459. package/dist/render/html/utils/build-projection-transform.d.ts +21 -0
  460. package/dist/render/html/utils/build-projection-transform.d.ts.map +1 -0
  461. package/{src/render/html/utils/build-projection-transform.ts → dist/render/html/utils/build-projection-transform.js} +39 -53
  462. package/dist/render/html/utils/build-styles.d.ts +13 -0
  463. package/dist/render/html/utils/build-styles.d.ts.map +1 -0
  464. package/{src/render/html/utils/build-styles.ts → dist/render/html/utils/build-styles.js} +107 -121
  465. package/dist/render/html/utils/build-transform.d.ts +21 -0
  466. package/dist/render/html/utils/build-transform.d.ts.map +1 -0
  467. package/{src/render/html/utils/build-transform.ts → dist/render/html/utils/build-transform.js} +69 -79
  468. package/dist/render/html/utils/create-render-state.d.ts +17 -0
  469. package/dist/render/html/utils/create-render-state.d.ts.map +1 -0
  470. package/dist/render/html/utils/create-render-state.js +18 -0
  471. package/dist/render/html/utils/render.d.ts +12 -0
  472. package/dist/render/html/utils/render.d.ts.map +1 -0
  473. package/{src/render/html/utils/render.ts → dist/render/html/utils/render.js} +14 -22
  474. package/dist/render/html/utils/scrape-motion-values.d.ts +8 -0
  475. package/dist/render/html/utils/scrape-motion-values.d.ts.map +1 -0
  476. package/{src/render/html/utils/scrape-motion-values.ts → dist/render/html/utils/scrape-motion-values.js} +17 -26
  477. package/dist/render/html/utils/transform.d.ts +25 -0
  478. package/dist/render/html/utils/transform.d.ts.map +1 -0
  479. package/{src/render/html/utils/transform.ts → dist/render/html/utils/transform.js} +48 -51
  480. package/dist/render/html/visual-element.d.ts +12 -0
  481. package/dist/render/html/visual-element.d.ts.map +1 -0
  482. package/{src/render/html/visual-element.ts → dist/render/html/visual-element.js} +119 -129
  483. package/dist/render/index.d.ts +8 -0
  484. package/dist/render/index.d.ts.map +1 -0
  485. package/{src/render/index.ts → dist/render/index.js} +711 -703
  486. package/{src → dist}/render/svg/UseSVGProps.svelte +1 -1
  487. package/dist/render/svg/UseSVGProps.svelte.d.ts +35 -0
  488. package/dist/render/svg/UseSVGProps.svelte.d.ts.map +1 -0
  489. package/dist/render/svg/config-motion.d.ts +8 -0
  490. package/dist/render/svg/config-motion.d.ts.map +1 -0
  491. package/dist/render/svg/config-motion.js +41 -0
  492. package/dist/render/svg/lowercase-elements.d.ts +10 -0
  493. package/dist/render/svg/lowercase-elements.d.ts.map +1 -0
  494. package/{src/render/svg/lowercase-elements.ts → dist/render/svg/lowercase-elements.js} +35 -35
  495. package/dist/render/svg/supported-elements.d.ts +12 -0
  496. package/dist/render/svg/supported-elements.d.ts.map +1 -0
  497. package/{src/render/svg/supported-elements.ts → dist/render/svg/supported-elements.js} +4 -10
  498. package/{src/render/svg/types.ts → dist/render/svg/types.d.ts} +53 -51
  499. package/dist/render/svg/types.d.ts.map +1 -0
  500. package/dist/render/svg/types.js +1 -0
  501. package/{src/render/svg/use-props.ts → dist/render/svg/use-props.d.ts} +13 -14
  502. package/dist/render/svg/use-props.d.ts.map +1 -0
  503. package/dist/render/svg/use-props.js +1 -0
  504. package/dist/render/svg/utils/build-attrs.d.ts +16 -0
  505. package/dist/render/svg/utils/build-attrs.d.ts.map +1 -0
  506. package/{src/render/svg/utils/build-attrs.ts → dist/render/svg/utils/build-attrs.js} +44 -58
  507. package/dist/render/svg/utils/camel-case-attrs.d.ts +9 -0
  508. package/dist/render/svg/utils/camel-case-attrs.d.ts.map +1 -0
  509. package/{src/render/svg/utils/camel-case-attrs.ts → dist/render/svg/utils/camel-case-attrs.js} +27 -27
  510. package/dist/render/svg/utils/create-render-state.d.ts +3 -0
  511. package/dist/render/svg/utils/create-render-state.d.ts.map +1 -0
  512. package/{src/render/svg/utils/create-render-state.ts → dist/render/svg/utils/create-render-state.js} +8 -17
  513. package/dist/render/svg/utils/path.d.ts +15 -0
  514. package/dist/render/svg/utils/path.d.ts.map +1 -0
  515. package/{src/render/svg/utils/path.ts → dist/render/svg/utils/path.js} +46 -49
  516. package/dist/render/svg/utils/render.d.ts +8 -0
  517. package/dist/render/svg/utils/render.d.ts.map +1 -0
  518. package/{src/render/svg/utils/render.ts → dist/render/svg/utils/render.js} +14 -22
  519. package/dist/render/svg/utils/scrape-motion-values.d.ts +8 -0
  520. package/dist/render/svg/utils/scrape-motion-values.d.ts.map +1 -0
  521. package/{src/render/svg/utils/scrape-motion-values.ts → dist/render/svg/utils/scrape-motion-values.js} +17 -26
  522. package/dist/render/svg/utils/transform-origin.d.ts +12 -0
  523. package/dist/render/svg/utils/transform-origin.d.ts.map +1 -0
  524. package/{src/render/svg/utils/transform-origin.ts → dist/render/svg/utils/transform-origin.js} +21 -30
  525. package/dist/render/svg/visual-element.d.ts +7 -0
  526. package/dist/render/svg/visual-element.d.ts.map +1 -0
  527. package/{src/render/svg/visual-element.ts → dist/render/svg/visual-element.js} +41 -44
  528. package/{src/render/types.ts → dist/render/types.d.ts} +148 -148
  529. package/dist/render/types.d.ts.map +1 -0
  530. package/dist/render/types.js +4 -0
  531. package/dist/render/utils/animation-state.d.ts +37 -0
  532. package/dist/render/utils/animation-state.d.ts.map +1 -0
  533. package/{src/render/utils/animation-state.ts → dist/render/utils/animation-state.js} +339 -375
  534. package/dist/render/utils/animation.d.ts +27 -0
  535. package/dist/render/utils/animation.d.ts.map +1 -0
  536. package/{src/render/utils/animation.ts → dist/render/utils/animation.js} +157 -167
  537. package/{src/render/utils/compare-by-depth.ts → dist/render/utils/compare-by-depth.d.ts} +15 -18
  538. package/dist/render/utils/compare-by-depth.d.ts.map +1 -0
  539. package/dist/render/utils/compare-by-depth.js +8 -0
  540. package/dist/render/utils/flat-tree.d.ts +14 -0
  541. package/dist/render/utils/flat-tree.d.ts.map +1 -0
  542. package/dist/render/utils/flat-tree.js +53 -0
  543. package/{src/render/utils/is-draggable.ts → dist/render/utils/is-draggable.d.ts} +12 -17
  544. package/dist/render/utils/is-draggable.d.ts.map +1 -0
  545. package/dist/render/utils/is-draggable.js +9 -0
  546. package/{src/render/utils/lifecycles.ts → dist/render/utils/lifecycles.d.ts} +122 -172
  547. package/dist/render/utils/lifecycles.d.ts.map +1 -0
  548. package/dist/render/utils/lifecycles.js +49 -0
  549. package/dist/render/utils/motion-values.d.ts +9 -0
  550. package/dist/render/utils/motion-values.d.ts.map +1 -0
  551. package/{src/render/utils/motion-values.ts → dist/render/utils/motion-values.js} +49 -59
  552. package/dist/render/utils/projection.d.ts +9 -0
  553. package/dist/render/utils/projection.d.ts.map +1 -0
  554. package/{src/render/utils/projection.ts → dist/render/utils/projection.js} +29 -38
  555. package/dist/render/utils/setters.d.ts +794 -0
  556. package/dist/render/utils/setters.d.ts.map +1 -0
  557. package/dist/render/utils/setters.js +119 -0
  558. package/{src/render/utils/state.ts → dist/render/utils/state.d.ts} +90 -113
  559. package/dist/render/utils/state.d.ts.map +1 -0
  560. package/dist/render/utils/state.js +26 -0
  561. package/{src/render/utils/types.ts → dist/render/utils/types.d.ts} +13 -12
  562. package/dist/render/utils/types.d.ts.map +1 -0
  563. package/dist/render/utils/types.js +13 -0
  564. package/dist/render/utils/variants.d.ts +27 -0
  565. package/dist/render/utils/variants.d.ts.map +1 -0
  566. package/{src/render/utils/variants.ts → dist/render/utils/variants.js} +66 -76
  567. package/{src/types/geometry.ts → dist/types/geometry.d.ts} +92 -91
  568. package/dist/types/geometry.d.ts.map +1 -0
  569. package/dist/types/geometry.js +1 -0
  570. package/{src/types.ts → dist/types.d.ts} +1091 -1088
  571. package/dist/types.d.ts.map +1 -0
  572. package/dist/types.js +1 -0
  573. package/dist/utils/UseUnmountEffect.svelte.d.ts +30 -0
  574. package/dist/utils/UseUnmountEffect.svelte.d.ts.map +1 -0
  575. package/dist/utils/array.d.ts +12 -0
  576. package/dist/utils/array.d.ts.map +1 -0
  577. package/{src/utils/array.ts → dist/utils/array.js} +16 -18
  578. package/dist/utils/each-axis.d.ts +11 -0
  579. package/dist/utils/each-axis.d.ts.map +1 -0
  580. package/{src/utils/each-axis.ts → dist/utils/each-axis.js} +13 -15
  581. package/dist/utils/errors.d.ts +5 -0
  582. package/dist/utils/errors.d.ts.map +1 -0
  583. package/dist/utils/errors.js +16 -0
  584. package/dist/utils/fix-process-env.d.ts +2 -0
  585. package/dist/utils/fix-process-env.d.ts.map +1 -0
  586. package/dist/utils/fix-process-env.js +19 -0
  587. package/dist/utils/geometry/delta-apply.d.ts +71 -0
  588. package/dist/utils/geometry/delta-apply.d.ts.map +1 -0
  589. package/{src/utils/geometry/delta-apply.ts → dist/utils/geometry/delta-apply.js} +161 -162
  590. package/dist/utils/geometry/delta-calc.d.ts +34 -0
  591. package/dist/utils/geometry/delta-calc.d.ts.map +1 -0
  592. package/{src/utils/geometry/delta-calc.ts → dist/utils/geometry/delta-calc.js} +84 -89
  593. package/dist/utils/geometry/index.d.ts +30 -0
  594. package/dist/utils/geometry/index.d.ts.map +1 -0
  595. package/{src/utils/geometry/index.ts → dist/utils/geometry/index.js} +71 -83
  596. package/dist/utils/is-browser.d.ts +11 -0
  597. package/dist/utils/is-browser.d.ts.map +1 -0
  598. package/{src/utils/is-browser.ts → dist/utils/is-browser.js} +10 -12
  599. package/dist/utils/is-numerical-string.d.ts +14 -0
  600. package/dist/utils/is-numerical-string.d.ts.map +1 -0
  601. package/{src/utils/is-numerical-string.ts → dist/utils/is-numerical-string.js} +13 -15
  602. package/dist/utils/is-ref-object.d.ts +12 -0
  603. package/dist/utils/is-ref-object.d.ts.map +1 -0
  604. package/dist/utils/is-ref-object.js +9 -0
  605. package/dist/utils/noop.d.ts +11 -0
  606. package/dist/utils/noop.d.ts.map +1 -0
  607. package/{src/utils/noop.ts → dist/utils/noop.js} +13 -15
  608. package/dist/utils/resolve-value.d.ts +9 -0
  609. package/dist/utils/resolve-value.d.ts.map +1 -0
  610. package/{src/utils/resolve-value.ts → dist/utils/resolve-value.js} +15 -23
  611. package/dist/utils/shallow-compare.d.ts +11 -0
  612. package/dist/utils/shallow-compare.d.ts.map +1 -0
  613. package/{src/utils/shallow-compare.ts → dist/utils/shallow-compare.js} +21 -23
  614. package/dist/utils/subscription-manager.d.ts +14 -0
  615. package/dist/utils/subscription-manager.d.ts.map +1 -0
  616. package/dist/utils/subscription-manager.js +69 -0
  617. package/dist/utils/time-conversion.d.ts +17 -0
  618. package/dist/utils/time-conversion.d.ts.map +1 -0
  619. package/{src/utils/time-conversion.ts → dist/utils/time-conversion.js} +16 -18
  620. package/{src/utils/transform.ts → dist/utils/transform.d.ts} +93 -120
  621. package/dist/utils/transform.d.ts.map +1 -0
  622. package/dist/utils/transform.js +22 -0
  623. package/{src/utils/use-constant.ts → dist/utils/use-constant.d.ts} +22 -23
  624. package/dist/utils/use-constant.d.ts.map +1 -0
  625. package/dist/utils/use-constant.js +9 -0
  626. package/dist/utils/use-cycle.d.ts +2 -0
  627. package/dist/utils/use-cycle.d.ts.map +1 -0
  628. package/{src/utils/use-cycle.ts → dist/utils/use-cycle.js} +65 -78
  629. package/dist/utils/use-force-update.d.ts +6 -0
  630. package/dist/utils/use-force-update.d.ts.map +1 -0
  631. package/dist/utils/use-force-update.js +2 -0
  632. package/dist/utils/use-isomorphic-effect.d.ts +7 -0
  633. package/dist/utils/use-isomorphic-effect.d.ts.map +1 -0
  634. package/{src/utils/use-isomorphic-effect.ts → dist/utils/use-isomorphic-effect.js} +7 -8
  635. package/dist/utils/use-reduced-motion.d.ts +33 -0
  636. package/dist/utils/use-reduced-motion.d.ts.map +1 -0
  637. package/{src/utils/use-reduced-motion.ts → dist/utils/use-reduced-motion.js} +52 -70
  638. package/{src/utils/use-unmount-effect.ts → dist/utils/use-unmount-effect.d.ts} +7 -8
  639. package/dist/utils/use-unmount-effect.d.ts.map +1 -0
  640. package/dist/utils/use-unmount-effect.js +1 -0
  641. package/{src/value/index.ts → dist/value/index.d.ts} +273 -409
  642. package/dist/value/index.d.ts.map +1 -0
  643. package/dist/value/index.js +546 -0
  644. package/dist/value/scroll/use-element-scroll.d.ts +8 -0
  645. package/dist/value/scroll/use-element-scroll.d.ts.map +1 -0
  646. package/dist/value/scroll/use-element-scroll.js +40 -0
  647. package/dist/value/scroll/use-viewport-scroll.d.ts +29 -0
  648. package/dist/value/scroll/use-viewport-scroll.d.ts.map +1 -0
  649. package/{src/value/scroll/use-viewport-scroll.ts → dist/value/scroll/use-viewport-scroll.js} +59 -81
  650. package/dist/value/scroll/utils.d.ts +25 -0
  651. package/dist/value/scroll/utils.d.ts.map +1 -0
  652. package/{src/value/scroll/utils.ts → dist/value/scroll/utils.js} +52 -76
  653. package/dist/value/use-combine-values.d.ts +9 -0
  654. package/dist/value/use-combine-values.d.ts.map +1 -0
  655. package/dist/value/use-combine-values.js +41 -0
  656. package/dist/value/use-motion-template.d.ts +31 -0
  657. package/dist/value/use-motion-template.d.ts.map +1 -0
  658. package/{src/value/use-motion-template.ts → dist/value/use-motion-template.js} +51 -57
  659. package/dist/value/use-motion-value.d.ts +27 -0
  660. package/dist/value/use-motion-value.d.ts.map +1 -0
  661. package/{src/value/use-motion-value.ts → dist/value/use-motion-value.js} +27 -27
  662. package/dist/value/use-spring.d.ts +29 -0
  663. package/dist/value/use-spring.d.ts.map +1 -0
  664. package/{src/value/use-spring.ts → dist/value/use-spring.js} +64 -84
  665. package/dist/value/use-transform.d.ts +87 -0
  666. package/dist/value/use-transform.d.ts.map +1 -0
  667. package/dist/value/use-transform.js +77 -0
  668. package/dist/value/use-velocity.d.ts +20 -0
  669. package/dist/value/use-velocity.d.ts.map +1 -0
  670. package/{src/value/use-velocity.ts → dist/value/use-velocity.js} +39 -44
  671. package/dist/value/utils/is-motion-value.d.ts +12 -0
  672. package/dist/value/utils/is-motion-value.d.ts.map +1 -0
  673. package/dist/value/utils/is-motion-value.js +8 -0
  674. package/dist/value/utils/resolve-motion-value.d.ts +16 -0
  675. package/dist/value/utils/resolve-motion-value.d.ts.map +1 -0
  676. package/{src/value/utils/resolve-motion-value.ts → dist/value/utils/resolve-motion-value.js} +25 -29
  677. package/package.json +39 -18
  678. package/src/animation/use-animated-state.ts +0 -1
  679. package/src/animation/utils/default-transitions.ts +0 -70
  680. package/src/context/DOMcontext.ts +0 -21
  681. package/src/context/LayoutGroupContext.ts +0 -13
  682. package/src/context/LazyContext.ts +0 -18
  683. package/src/context/MotionContext/UseCreateMotionContext.svelte +0 -34
  684. package/src/context/SharedLayoutContext.ts +0 -29
  685. package/src/gestures/PanSession.ts +0 -298
  686. package/src/gestures/drag/VisualElementDragControls.ts +0 -632
  687. package/src/gestures/drag/use-drag-controls.ts +0 -148
  688. package/src/motion/features/layout/Animate.ts +0 -9
  689. package/src/motion/features/layout/Measure.ts +0 -9
  690. package/src/motion/index.ts +0 -64
  691. package/src/render/dom/motion-minimal.ts +0 -22
  692. package/src/render/dom/motion-proxy.ts +0 -107
  693. package/src/render/dom/utils/create-config.ts +0 -33
  694. package/src/render/dom/utils/use-svg-props.ts +0 -1
  695. package/src/render/html/config-motion.ts +0 -23
  696. package/src/render/html/utils/create-render-state.ts +0 -18
  697. package/src/render/svg/config-motion.ts +0 -51
  698. package/src/render/utils/flat-tree.ts +0 -35
  699. package/src/render/utils/setters.ts +0 -910
  700. package/src/utils/errors.ts +0 -22
  701. package/src/utils/fix-process-env.ts +0 -22
  702. package/src/utils/is-ref-object.ts +0 -16
  703. package/src/utils/subscription-manager.ts +0 -49
  704. package/src/utils/use-force-update.ts +0 -7
  705. package/src/value/scroll/use-element-scroll.ts +0 -73
  706. package/src/value/use-combine-values.ts +0 -53
  707. package/src/value/use-transform.ts +0 -216
  708. package/src/value/utils/is-motion-value.ts +0 -15
  709. /package/{src → dist}/animation/UseAnimation.svelte +0 -0
  710. /package/{src → dist}/components/AnimatePresence/AnimatePresence.svelte +0 -0
  711. /package/{src → dist}/components/AnimateSharedLayout/AnimateSharedLayout.svelte +0 -0
  712. /package/{src → dist}/components/LazyMotion/LazyMotion.svelte +0 -0
  713. /package/{src → dist}/components/MotionDiv.svelte +0 -0
  714. /package/{src → dist}/context/MotionContext/MotionContextProvider.svelte +0 -0
  715. /package/{src → dist}/gestures/UseFocusGesture.svelte +0 -0
  716. /package/{src → dist}/gestures/UseGestures.svelte +0 -0
  717. /package/{src → dist}/gestures/UsePanGesture.svelte +0 -0
  718. /package/{src → dist}/gestures/UseTapGesture.svelte +0 -0
  719. /package/{src → dist}/motion/features/AnimationState.svelte +0 -0
  720. /package/{src → dist}/motion/features/layout/AnimateLayoutContextProvider.svelte +0 -0
  721. /package/{src → dist}/motion/features/layout/Measure.svelte +0 -0
  722. /package/{src → dist}/render/dom/M.svelte +0 -0
  723. /package/{src → dist}/render/dom/UseRender.svelte +0 -0
  724. /package/{src → dist}/render/dom/utils/UseInitialMotionProps.svelte +0 -0
  725. /package/{src → dist}/render/html/UseHTMLProps.svelte +0 -0
  726. /package/{src → dist}/render/html/UseInitialMotionValues.svelte +0 -0
  727. /package/{src → dist}/utils/UseUnmountEffect.svelte +0 -0
@@ -0,0 +1,749 @@
1
+ /**
2
+ based on framer-motion@4.1.15,
3
+ Copyright (c) 2018 Framer B.V.
4
+ */
5
+ import { flushSync } from 'framesync';
6
+ import { progress } from 'popmotion';
7
+ import { __assign, __read, __spreadArray } from 'tslib';
8
+ import { startAnimation } from '../../animation/utils/transitions.js';
9
+ import { getViewportPointFromEvent } from '../../events/event-info.js';
10
+ import { addDomEvent } from '../../events/use-dom-event.js';
11
+ import { addPointerEvent } from '../../events/use-pointer-event.js';
12
+ import { calcRelativeOffset } from '../../motion/features/layout/utils.js';
13
+ import { convertToRelativeProjection } from '../../render/dom/projection/convert-to-relative.js';
14
+ import { getBoundingBox } from '../../render/dom/projection/measure.js';
15
+ import { collectProjectingAncestors, collectProjectingChildren, updateLayoutMeasurement, } from '../../render/dom/projection/utils.js';
16
+ import { batchLayout, flushLayout } from '../../render/dom/utils/batch-layout.js';
17
+ import { AnimationType } from '../../render/utils/types.js';
18
+ import { eachAxis } from '../../utils/each-axis.js';
19
+ import { invariant } from '../../utils/errors.js';
20
+ import { calcOrigin } from '../../utils/geometry/delta-calc.js';
21
+ import { axisBox, convertAxisBoxToBoundingBox, convertBoundingBoxToAxisBox } from '../../utils/geometry/index.js';
22
+ import { isRefObject } from '../../utils/is-ref-object.js';
23
+ import { PanSession } from '../PanSession.js';
24
+ import { applyConstraints, calcConstrainedMinPoint, calcPositionFromProgress, calcRelativeConstraints, calcViewportConstraints, defaultElastic, rebaseAxisConstraints, resolveDragElastic, } from './utils/constraints.js';
25
+ import { getGlobalLock } from './utils/lock.js';
26
+ var elementDragControls = new WeakMap();
27
+ /**
28
+ *
29
+ */
30
+ var lastPointerEvent;
31
+ class VisualElementDragControls {
32
+ constructor({ visualElement }) {
33
+ /**
34
+ * Track whether we're currently dragging.
35
+ *
36
+ * @internal
37
+ */
38
+ Object.defineProperty(this, "isDragging", {
39
+ enumerable: true,
40
+ configurable: true,
41
+ writable: true,
42
+ value: false
43
+ });
44
+ /**
45
+ * The current direction of drag, or `null` if both.
46
+ *
47
+ * @internal
48
+ */
49
+ Object.defineProperty(this, "currentDirection", {
50
+ enumerable: true,
51
+ configurable: true,
52
+ writable: true,
53
+ value: null
54
+ });
55
+ /**
56
+ * The permitted boundaries of travel, in pixels.
57
+ *
58
+ * @internal
59
+ */
60
+ Object.defineProperty(this, "constraints", {
61
+ enumerable: true,
62
+ configurable: true,
63
+ writable: true,
64
+ value: false
65
+ });
66
+ /**
67
+ * The per-axis resolved elastic values.
68
+ *
69
+ * @internal
70
+ */
71
+ Object.defineProperty(this, "elastic", {
72
+ enumerable: true,
73
+ configurable: true,
74
+ writable: true,
75
+ value: axisBox()
76
+ });
77
+ /**
78
+ * A reference to the host component's latest props.
79
+ *
80
+ * @internal
81
+ */
82
+ Object.defineProperty(this, "props", {
83
+ enumerable: true,
84
+ configurable: true,
85
+ writable: true,
86
+ value: {}
87
+ });
88
+ /**
89
+ * @internal
90
+ */
91
+ Object.defineProperty(this, "visualElement", {
92
+ enumerable: true,
93
+ configurable: true,
94
+ writable: true,
95
+ value: void 0
96
+ });
97
+ /**
98
+ * @internal
99
+ */
100
+ Object.defineProperty(this, "hasMutatedConstraints", {
101
+ enumerable: true,
102
+ configurable: true,
103
+ writable: true,
104
+ value: false
105
+ });
106
+ /**
107
+ * @internal
108
+ */
109
+ Object.defineProperty(this, "cancelLayout", {
110
+ enumerable: true,
111
+ configurable: true,
112
+ writable: true,
113
+ value: void 0
114
+ });
115
+ /**
116
+ * Track the initial position of the cursor relative to the dragging element
117
+ * when dragging starts as a value of 0-1 on each axis. We then use this to calculate
118
+ * an ideal bounding box for the VisualElement renderer to project into every frame.
119
+ *
120
+ * @internal
121
+ */
122
+ Object.defineProperty(this, "cursorProgress", {
123
+ enumerable: true,
124
+ configurable: true,
125
+ writable: true,
126
+ value: {
127
+ x: 0.5,
128
+ y: 0.5,
129
+ }
130
+ });
131
+ Object.defineProperty(this, "originPoint", {
132
+ enumerable: true,
133
+ configurable: true,
134
+ writable: true,
135
+ value: { x: 0, y: 0 }
136
+ });
137
+ Object.defineProperty(this, "openGlobalLock", {
138
+ enumerable: true,
139
+ configurable: true,
140
+ writable: true,
141
+ value: null
142
+ });
143
+ /**
144
+ * @internal
145
+ */
146
+ Object.defineProperty(this, "panSession", {
147
+ enumerable: true,
148
+ configurable: true,
149
+ writable: true,
150
+ value: void 0
151
+ });
152
+ /**
153
+ * A reference to the measured constraints bounding box
154
+ */
155
+ Object.defineProperty(this, "constraintsBox", {
156
+ enumerable: true,
157
+ configurable: true,
158
+ writable: true,
159
+ value: void 0
160
+ });
161
+ /**
162
+ * Instantiate a PanSession for the drag gesture
163
+ *
164
+ * @public
165
+ */
166
+ Object.defineProperty(this, "start", {
167
+ enumerable: true,
168
+ configurable: true,
169
+ writable: true,
170
+ value: (originEvent, { snapToCursor = false, cursorProgress = undefined } = {}) => {
171
+ const onSessionStart = (event) => {
172
+ // Stop any animations on both axis values immediately. This allows the user to throw and catch
173
+ // the component.
174
+ this.stopMotion();
175
+ /**
176
+ * Save the initial point. We'll use this to calculate the pointer's position rather
177
+ * than the one we receive when the gesture actually starts. By then, the pointer will
178
+ * have already moved, and the perception will be of the pointer "slipping" across the element
179
+ */
180
+ var initialPoint = getViewportPointFromEvent(event).point;
181
+ (event = this.cancelLayout) === null || event === void 0 ? void 0 : event.call(this);
182
+ var _self = this;
183
+ this.cancelLayout = batchLayout((read, write) => {
184
+ var ancestors = collectProjectingAncestors(_self.visualElement);
185
+ var children = collectProjectingChildren(_self.visualElement);
186
+ var tree = __spreadArray(__spreadArray([], __read(ancestors)), __read(children));
187
+ var hasManuallySetCursorOrigin = false;
188
+ /**
189
+ * Apply a simple lock to the projection target. This ensures no animations
190
+ * can run on the projection box while this lock is active.
191
+ */
192
+ _self.isLayoutDrag() && _self.visualElement.lockProjectionTarget();
193
+ write(() => {
194
+ tree.forEach((element) => element.resetTransform());
195
+ });
196
+ read(() => {
197
+ updateLayoutMeasurement(_self.visualElement);
198
+ children.forEach(updateLayoutMeasurement);
199
+ });
200
+ write(() => {
201
+ tree.forEach((element) => element.restoreTransform());
202
+ if (snapToCursor) {
203
+ hasManuallySetCursorOrigin = _self.snapToCursor(initialPoint);
204
+ }
205
+ });
206
+ read(() => {
207
+ var isRelativeDrag = Boolean(_self.getAxisMotionValue('x') && !_self.isExternalDrag());
208
+ if (!isRelativeDrag) {
209
+ _self.visualElement.rebaseProjectionTarget(true, _self.visualElement.measureViewportBox(false));
210
+ }
211
+ _self.visualElement.scheduleUpdateLayoutProjection();
212
+ /**
213
+ * When dragging starts, we want to find where the cursor is relative to the bounding box
214
+ * of the element. Every frame, we calculate a new bounding box using this relative position
215
+ * and let the visualElement renderer figure out how to reproject the element into this bounding
216
+ * box.
217
+ *
218
+ * By doing it this way, rather than applying an x/y transform directly to the element,
219
+ * we can ensure the component always visually sticks to the cursor as we'd expect, even
220
+ * if the DOM element itself changes layout as a result of React updates the user might
221
+ * make based on the drag position.
222
+ */
223
+ var projection = _self.visualElement.projection;
224
+ eachAxis((axis) => {
225
+ if (!hasManuallySetCursorOrigin) {
226
+ var _a = projection.target[axis], min = _a.min, max = _a.max;
227
+ _self.cursorProgress[axis] = cursorProgress
228
+ ? cursorProgress[axis]
229
+ : progress(min, max, initialPoint[axis]);
230
+ }
231
+ /**
232
+ * If we have external drag MotionValues, record their origin point. On pointermove
233
+ * we'll apply the pan gesture offset directly to this value.
234
+ */
235
+ var axisValue = _self.getAxisMotionValue(axis);
236
+ if (axisValue) {
237
+ _self.originPoint[axis] = axisValue.get();
238
+ }
239
+ });
240
+ });
241
+ write(() => {
242
+ flushSync.update();
243
+ flushSync.preRender();
244
+ flushSync.render();
245
+ flushSync.postRender();
246
+ });
247
+ read(() => _self.resolveDragConstraints());
248
+ });
249
+ };
250
+ const onStart = (event, info) => {
251
+ // Attempt to grab the global drag gesture lock - maybe make this part of PanSession
252
+ const { drag, dragPropagation, onDragStart } = this.props;
253
+ if (drag && !dragPropagation) {
254
+ if (this.openGlobalLock)
255
+ this.openGlobalLock();
256
+ this.openGlobalLock = getGlobalLock(drag);
257
+ // If we don 't have the lock, don't start dragging
258
+ if (!this.openGlobalLock)
259
+ return;
260
+ }
261
+ flushLayout();
262
+ // Set current drag status
263
+ this.isDragging = true;
264
+ this.currentDirection = null;
265
+ // Fire onDragStart event
266
+ if (onDragStart)
267
+ onDragStart(event, info);
268
+ const { animationState } = this.visualElement;
269
+ animationState && animationState.setActive(AnimationType.Drag, true);
270
+ };
271
+ const onMove = (event, info) => {
272
+ const { dragPropagation, dragDirectionLock, onDirectionLock, onDrag } = this.props;
273
+ // If we didn't successfully receive the gesture lock, early return.
274
+ if (!dragPropagation && !this.openGlobalLock)
275
+ return;
276
+ var offset = info.offset;
277
+ // Attempt to detect drag direction if directionLock is true
278
+ if (dragDirectionLock && this.currentDirection === null) {
279
+ this.currentDirection = getCurrentDirection(offset);
280
+ // If we've successfully set a direction, notify listener
281
+ if (this.currentDirection !== null) {
282
+ onDirectionLock && onDirectionLock(this.currentDirection);
283
+ }
284
+ return;
285
+ }
286
+ // Update each point with the latest position
287
+ this.updateAxis('x', info.point, offset);
288
+ this.updateAxis('y', info.point, offset);
289
+ // Fire onDrag event
290
+ onDrag && onDrag(event, info);
291
+ // Update the last pointer event
292
+ lastPointerEvent = event;
293
+ };
294
+ const onSessionEnd = (event, info) => {
295
+ return this.stop(event, info);
296
+ };
297
+ const transformPagePoint = this.props.transformPagePoint;
298
+ this.panSession = new PanSession(originEvent, {
299
+ onSessionStart,
300
+ onStart,
301
+ onMove,
302
+ onSessionEnd,
303
+ }, { transformPagePoint: transformPagePoint });
304
+ }
305
+ });
306
+ Object.defineProperty(this, "resolveDragConstraints", {
307
+ enumerable: true,
308
+ configurable: true,
309
+ writable: true,
310
+ value: () => {
311
+ const { dragConstraints, dragElastic } = this.props;
312
+ var layout = this.visualElement.getLayoutState().layoutCorrected;
313
+ if (dragConstraints) {
314
+ this.constraints = isRefObject(dragConstraints)
315
+ ? this.resolveRefConstraints(layout, dragConstraints)
316
+ : calcRelativeConstraints(layout, dragConstraints);
317
+ }
318
+ else {
319
+ this.constraints = false;
320
+ }
321
+ this.elastic = resolveDragElastic(dragElastic);
322
+ /**
323
+ * If we're outputting to external MotionValues, we want to rebase the measured constraints
324
+ * from viewport-relative to component-relative.
325
+ */
326
+ if (this.constraints && !this.hasMutatedConstraints) {
327
+ eachAxis((axis) => {
328
+ if (this.getAxisMotionValue(axis)) {
329
+ this.constraints[axis] = rebaseAxisConstraints(layout[axis], this.constraints[axis]);
330
+ }
331
+ });
332
+ }
333
+ }
334
+ });
335
+ Object.defineProperty(this, "resolveRefConstraints", {
336
+ enumerable: true,
337
+ configurable: true,
338
+ writable: true,
339
+ value: (layoutBox, constraints) => {
340
+ const { transformPagePoint, onMeasureDragConstraints } = this.props;
341
+ const constraintsElement = constraints.current;
342
+ invariant(constraintsElement !== null, "If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.");
343
+ this.constraintsBox = getBoundingBox(constraintsElement, transformPagePoint);
344
+ var measuredConstraints = calcViewportConstraints(layoutBox, this.constraintsBox);
345
+ /**
346
+ * If there's an onMeasureDragConstraints listener we call it and
347
+ * if different constraints are returned, set constraints to that
348
+ */
349
+ if (onMeasureDragConstraints) {
350
+ var userConstraints = onMeasureDragConstraints(convertAxisBoxToBoundingBox(measuredConstraints));
351
+ this.hasMutatedConstraints = !!userConstraints;
352
+ if (userConstraints) {
353
+ measuredConstraints = convertBoundingBoxToAxisBox(userConstraints);
354
+ }
355
+ }
356
+ return measuredConstraints;
357
+ }
358
+ });
359
+ Object.defineProperty(this, "cancelDrag", {
360
+ enumerable: true,
361
+ configurable: true,
362
+ writable: true,
363
+ value: () => {
364
+ var _a, _b;
365
+ this.visualElement.unlockProjectionTarget();
366
+ (_a = this.cancelLayout) === null || _a === void 0 ? void 0 : _a.call(this);
367
+ this.isDragging = false;
368
+ const { projection, animationState } = this.visualElement;
369
+ this.panSession && this.panSession.end();
370
+ this.panSession = undefined;
371
+ if (!this.props.dragPropagation && this.openGlobalLock) {
372
+ this.openGlobalLock();
373
+ this.openGlobalLock = null;
374
+ }
375
+ animationState && animationState.setActive(AnimationType.Drag, false);
376
+ }
377
+ });
378
+ Object.defineProperty(this, "stop", {
379
+ enumerable: true,
380
+ configurable: true,
381
+ writable: true,
382
+ value: (event, info) => {
383
+ var _a, _b, _c;
384
+ (_a = this.panSession) === null || _a === void 0 ? void 0 : _a.end();
385
+ this.panSession = undefined;
386
+ var isDragging = this.isDragging;
387
+ this.cancelDrag();
388
+ if (!isDragging)
389
+ return;
390
+ var velocity = info.velocity;
391
+ this.animateDragEnd(velocity);
392
+ const { onDragEnd } = this.props;
393
+ if (onDragEnd)
394
+ onDragEnd(event, info);
395
+ }
396
+ });
397
+ Object.defineProperty(this, "snapToCursor", {
398
+ enumerable: true,
399
+ configurable: true,
400
+ writable: true,
401
+ value: (point) => {
402
+ return eachAxis((axis) => {
403
+ var drag = this.props.drag;
404
+ // If we're not dragging this axis, do an early return.
405
+ if (!shouldDrag(axis, drag, this.currentDirection))
406
+ return;
407
+ var axisValue = this.getAxisMotionValue(axis);
408
+ if (axisValue) {
409
+ var box = this.visualElement.getLayoutState().layout;
410
+ var length_1 = box[axis].max - box[axis].min;
411
+ var center = box[axis].min + length_1 / 2;
412
+ var offset = point[axis] - center;
413
+ this.originPoint[axis] = point[axis];
414
+ axisValue.set(offset);
415
+ }
416
+ else {
417
+ this.cursorProgress[axis] = 0.5;
418
+ return true;
419
+ }
420
+ }).includes(true);
421
+ }
422
+ });
423
+ /**
424
+ * Update the specified axis with the latest pointer information.
425
+ */
426
+ Object.defineProperty(this, "updateAxis", {
427
+ enumerable: true,
428
+ configurable: true,
429
+ writable: true,
430
+ value: (axis, point, offset) => {
431
+ var drag = this.props.drag;
432
+ // If we're not dragging this axis, do an early return.
433
+ if (!shouldDrag(axis, drag, this.currentDirection))
434
+ return;
435
+ return this.getAxisMotionValue(axis)
436
+ ? this.updateAxisMotionValue(axis, offset)
437
+ : this.updateVisualElementAxis(axis, point);
438
+ }
439
+ });
440
+ Object.defineProperty(this, "updateAxisMotionValue", {
441
+ enumerable: true,
442
+ configurable: true,
443
+ writable: true,
444
+ value: (axis, offset) => {
445
+ var axisValue = this.getAxisMotionValue(axis);
446
+ if (!offset || !axisValue)
447
+ return;
448
+ var nextValue = this.originPoint[axis] + offset[axis];
449
+ var update = this.constraints ? applyConstraints(nextValue, this.constraints[axis], this.elastic[axis]) : nextValue;
450
+ axisValue.set(update);
451
+ }
452
+ });
453
+ Object.defineProperty(this, "updateVisualElementAxis", {
454
+ enumerable: true,
455
+ configurable: true,
456
+ writable: true,
457
+ value: (axis, point) => {
458
+ var _a;
459
+ // Get the actual layout bounding box of the element
460
+ var axisLayout = this.visualElement.getLayoutState().layout[axis];
461
+ // Calculate its current length. In the future we might want to lerp this to animate
462
+ // between lengths if the layout changes as we change the DOM
463
+ var axisLength = axisLayout.max - axisLayout.min;
464
+ // Get the initial progress that the pointer sat on this axis on gesture start.
465
+ var axisProgress = this.cursorProgress[axis];
466
+ // Calculate a new min point based on the latest pointer position, constraints and elastic
467
+ var min = calcConstrainedMinPoint(point[axis], axisLength, axisProgress, (_a = this.constraints) === null || _a === void 0 ? void 0 : _a[axis], this.elastic[axis]);
468
+ // Update the axis viewport target with this new min and the length
469
+ this.visualElement.setProjectionTargetAxis(axis, min, min + axisLength);
470
+ }
471
+ });
472
+ Object.defineProperty(this, "setProps", {
473
+ enumerable: true,
474
+ configurable: true,
475
+ writable: true,
476
+ value: ({ drag = false, dragDirectionLock = false, dragPropagation = false, dragConstraints = false, dragElastic = defaultElastic, dragMomentum = true, ...remainingProps }) => {
477
+ this.props = {
478
+ ...remainingProps,
479
+ drag,
480
+ dragDirectionLock,
481
+ dragPropagation,
482
+ dragConstraints,
483
+ dragElastic,
484
+ dragMomentum,
485
+ };
486
+ }
487
+ });
488
+ /**
489
+ * Drag works differently depending on which props are provided.
490
+ *
491
+ * - If _dragX and _dragY are provided, we output the gesture delta directly to those motion values.
492
+ * - If the component will perform layout animations, we output the gesture to the component's
493
+ * visual bounding box
494
+ * - Otherwise, we apply the delta to the x/y motion values.
495
+ */
496
+ Object.defineProperty(this, "getAxisMotionValue", {
497
+ enumerable: true,
498
+ configurable: true,
499
+ writable: true,
500
+ value: (axis) => {
501
+ var _a = this.props, layout = _a.layout, layoutId = _a.layoutId;
502
+ var dragKey = '_drag' + axis.toUpperCase();
503
+ if (this.props[dragKey]) {
504
+ return this.props[dragKey];
505
+ }
506
+ else if (!layout && layoutId === undefined) {
507
+ return this.visualElement.getValue(axis, 0);
508
+ }
509
+ }
510
+ });
511
+ Object.defineProperty(this, "isLayoutDrag", {
512
+ enumerable: true,
513
+ configurable: true,
514
+ writable: true,
515
+ value: () => {
516
+ return !this.getAxisMotionValue('x');
517
+ }
518
+ });
519
+ Object.defineProperty(this, "isExternalDrag", {
520
+ enumerable: true,
521
+ configurable: true,
522
+ writable: true,
523
+ value: () => {
524
+ var _a = this.props, _dragX = _a._dragX, _dragY = _a._dragY;
525
+ return _dragX || _dragY;
526
+ }
527
+ });
528
+ Object.defineProperty(this, "animateDragEnd", {
529
+ enumerable: true,
530
+ configurable: true,
531
+ writable: true,
532
+ value: (velocity) => {
533
+ var _a = this.props, drag = _a.drag, dragMomentum = _a.dragMomentum, dragElastic = _a.dragElastic, dragTransition = _a.dragTransition;
534
+ /**
535
+ * Everything beyond the drag gesture should be performed with
536
+ * relative projection so children stay in sync with their parent element.
537
+ */
538
+ var isRelative = convertToRelativeProjection(this.visualElement, this.isLayoutDrag() && !this.isExternalDrag());
539
+ /**
540
+ * If we had previously resolved constraints relative to the viewport,
541
+ * we need to also convert those to a relative coordinate space for the animation
542
+ */
543
+ var constraints = this.constraints || {};
544
+ if (isRelative && Object.keys(constraints).length && this.isLayoutDrag()) {
545
+ var projectionParent = this.visualElement.getProjectionParent();
546
+ if (projectionParent) {
547
+ var relativeConstraints_1 = calcRelativeOffset(projectionParent.projection.targetFinal, constraints);
548
+ eachAxis((axis) => {
549
+ var _a = relativeConstraints_1[axis], min = _a.min, max = _a.max;
550
+ constraints[axis] = {
551
+ min: isNaN(min) ? undefined : min,
552
+ max: isNaN(max) ? undefined : max,
553
+ };
554
+ });
555
+ }
556
+ }
557
+ var momentumAnimations = eachAxis((axis) => {
558
+ var _a;
559
+ if (!shouldDrag(axis, drag, this.currentDirection)) {
560
+ return;
561
+ }
562
+ var transition = (_a = constraints === null || constraints === void 0 ? void 0 : constraints[axis]) !== null && _a !== void 0
563
+ ? _a
564
+ : {};
565
+ /**
566
+ * Overdamp the boundary spring if `dragElastic` is disabled. There's still a frame
567
+ * of spring animations so we should look into adding a disable spring option to `inertia`.
568
+ * We could do something here where we affect the `bounceStiffness` and `bounceDamping`
569
+ * using the value of `dragElastic`.
570
+ */
571
+ var bounceStiffness = dragElastic ? 200 : 1000000;
572
+ var bounceDamping = dragElastic ? 40 : 10000000;
573
+ var inertia = __assign(__assign({
574
+ type: 'inertia',
575
+ velocity: dragMomentum ? velocity[axis] : 0,
576
+ bounceStiffness: bounceStiffness,
577
+ bounceDamping: bounceDamping,
578
+ timeConstant: 750,
579
+ restDelta: 1,
580
+ restSpeed: 10,
581
+ }, dragTransition), transition);
582
+ // If we're not animating on an externally-provided `MotionValue` we can use the
583
+ // component's animation controls which will handle interactions with whileHover (etc),
584
+ // otherwise we just have to animate the `MotionValue` itself.
585
+ return this.getAxisMotionValue(axis)
586
+ ? this.startAxisValueAnimation(axis, inertia)
587
+ : this.visualElement.startLayoutAnimation(axis, inertia, isRelative);
588
+ });
589
+ // Run all animations and then resolve the new drag constraints.
590
+ return Promise.all(momentumAnimations).then(() => {
591
+ var _a, _b;
592
+ (_b = (_a = this.props).onDragTransitionEnd) === null || _b === void 0 ? void 0 : _b.call(_a);
593
+ });
594
+ }
595
+ });
596
+ Object.defineProperty(this, "stopMotion", {
597
+ enumerable: true,
598
+ configurable: true,
599
+ writable: true,
600
+ value: () => {
601
+ eachAxis((axis) => {
602
+ var axisValue = this.getAxisMotionValue(axis);
603
+ axisValue ? axisValue.stop() : this.visualElement.stopLayoutAnimation();
604
+ });
605
+ }
606
+ });
607
+ Object.defineProperty(this, "startAxisValueAnimation", {
608
+ enumerable: true,
609
+ configurable: true,
610
+ writable: true,
611
+ value: (axis, transition) => {
612
+ var axisValue = this.getAxisMotionValue(axis);
613
+ if (!axisValue)
614
+ return;
615
+ var currentValue = axisValue.get();
616
+ axisValue.set(currentValue);
617
+ axisValue.set(currentValue); // Set twice to hard-reset velocity
618
+ return startAnimation(axis, axisValue, 0, transition);
619
+ }
620
+ });
621
+ Object.defineProperty(this, "scalePoint", {
622
+ enumerable: true,
623
+ configurable: true,
624
+ writable: true,
625
+ value: () => {
626
+ var _a = this.props, drag = _a.drag, dragConstraints = _a.dragConstraints;
627
+ if (!isRefObject(dragConstraints) || !this.constraintsBox)
628
+ return;
629
+ // Stop any current animations as there can be some visual glitching if we resize mid animation
630
+ this.stopMotion();
631
+ // Record the relative progress of the targetBox relative to the constraintsBox
632
+ var boxProgress = { x: 0, y: 0 };
633
+ eachAxis((axis) => {
634
+ boxProgress[axis] = calcOrigin(this.visualElement.projection.target[axis], this.constraintsBox[axis]);
635
+ });
636
+ /**
637
+ * For each axis, calculate the current progress of the layout axis within the constraints.
638
+ * Then, using the latest layout and constraints measurements, reposition the new layout axis
639
+ * proportionally within the constraints.
640
+ */
641
+ this.updateConstraints(() => {
642
+ eachAxis((axis) => {
643
+ if (!shouldDrag(axis, drag, null))
644
+ return;
645
+ // Calculate the position of the targetBox relative to the constraintsBox using the
646
+ // previously calculated progress
647
+ var _a = calcPositionFromProgress(this.visualElement.projection.target[axis], this.constraintsBox[axis], boxProgress[axis]), min = _a.min, max = _a.max;
648
+ this.visualElement.setProjectionTargetAxis(axis, min, max);
649
+ });
650
+ });
651
+ /**
652
+ * If any other draggable components are queuing the same tasks synchronously
653
+ * this will wait until they've all been scheduled before flushing.
654
+ */
655
+ setTimeout(flushLayout, 1);
656
+ }
657
+ });
658
+ Object.defineProperty(this, "updateConstraints", {
659
+ enumerable: true,
660
+ configurable: true,
661
+ writable: true,
662
+ value: (onReady) => {
663
+ this.cancelLayout = batchLayout((read, write) => {
664
+ var ancestors = collectProjectingAncestors(_this.visualElement);
665
+ write(() => ancestors.forEach((element) => element.resetTransform()));
666
+ read(() => updateLayoutMeasurement(this.visualElement));
667
+ write(() => ancestors.forEach((element) => element.restoreTransform()));
668
+ read(() => {
669
+ this.resolveDragConstraints();
670
+ });
671
+ if (onReady)
672
+ write(onReady);
673
+ });
674
+ }
675
+ });
676
+ Object.defineProperty(this, "mount", {
677
+ enumerable: true,
678
+ configurable: true,
679
+ writable: true,
680
+ value: (visualElement) => {
681
+ var element = visualElement.getInstance();
682
+ /**
683
+ * Attach a pointerdown event listener on this DOM element to initiate drag tracking.
684
+ */
685
+ var stopPointerListener = addPointerEvent(element, 'pointerdown', (event) => {
686
+ var _a = this.props, drag = _a.drag, _b = _a.dragListener, dragListener = _b === void 0 ? true : _b;
687
+ drag && dragListener && this.start(event);
688
+ });
689
+ /**
690
+ * Attach a window resize listener to scale the draggable target within its defined
691
+ * constraints as the window resizes.
692
+ */
693
+ var stopResizeListener = addDomEvent(window, 'resize', () => {
694
+ this.scalePoint();
695
+ });
696
+ /**
697
+ * Ensure drag constraints are resolved correctly relative to the dragging element
698
+ * whenever its layout changes.
699
+ */
700
+ var stopLayoutUpdateListener = visualElement.onLayoutUpdate(() => {
701
+ if (this.isDragging) {
702
+ this.resolveDragConstraints();
703
+ }
704
+ });
705
+ /**
706
+ * If the previous component with this same layoutId was dragging at the time
707
+ * it was unmounted, we want to continue the same gesture on this component.
708
+ */
709
+ var prevDragCursor = visualElement.prevDragCursor;
710
+ if (prevDragCursor) {
711
+ this.start(lastPointerEvent, { cursorProgress: prevDragCursor });
712
+ }
713
+ /**
714
+ * Return a function that will teardown the drag gesture
715
+ */
716
+ return () => {
717
+ stopPointerListener === null || stopPointerListener === void 0 ? void 0 : stopPointerListener();
718
+ stopResizeListener === null || stopResizeListener === void 0 ? void 0 : stopResizeListener();
719
+ stopLayoutUpdateListener === null || stopLayoutUpdateListener === void 0 ? void 0 : stopLayoutUpdateListener();
720
+ this.cancelDrag();
721
+ };
722
+ }
723
+ });
724
+ this.visualElement = visualElement;
725
+ this.visualElement.enableLayoutProjection();
726
+ elementDragControls.set(visualElement, this);
727
+ }
728
+ }
729
+ function shouldDrag(direction, drag, currentDirection) {
730
+ return (drag === true || drag === direction) && (currentDirection === null || currentDirection === direction);
731
+ }
732
+ /**
733
+ * Based on an x/y offset determine the current drag direction. If both axis' offsets are lower
734
+ * than the provided threshold, return `null`.
735
+ *
736
+ * @param offset - The x/y offset from origin.
737
+ * @param lockThreshold - (Optional) - the minimum absolute offset before we can determine a drag direction.
738
+ */
739
+ function getCurrentDirection(offset, lockThreshold = 10) {
740
+ var direction = null;
741
+ if (Math.abs(offset.y) > lockThreshold) {
742
+ direction = 'y';
743
+ }
744
+ else if (Math.abs(offset.x) > lockThreshold) {
745
+ direction = 'x';
746
+ }
747
+ return direction;
748
+ }
749
+ export { VisualElementDragControls, elementDragControls };