motion-start 0.0.1 → 0.1.0

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