motion-v 0.5.0-beta.1 → 0.5.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 (333) hide show
  1. package/dist/cjs/index.js +1571 -608
  2. package/dist/es/animation/use-animate.mjs +1 -1
  3. package/dist/es/components/AnimatePresence.vue.mjs +1 -4
  4. package/dist/es/components/Motion.vue.mjs +50 -16
  5. package/dist/es/components/presence.mjs +2 -3
  6. package/dist/es/events/add-pointer-event.mjs +8 -0
  7. package/dist/es/events/event-info.mjs +16 -0
  8. package/dist/es/events/utils/is-primary-pointer.mjs +10 -0
  9. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/GroupPlaybackControls.mjs +3 -0
  10. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animate/resolve-subjects.mjs +1 -1
  11. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animate/subject.mjs +1 -1
  12. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/AcceleratedAnimation.mjs +2 -1
  13. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/BaseAnimation.mjs +4 -0
  14. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/MainThreadAnimation.mjs +7 -1
  15. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/utils/can-animate.mjs +1 -1
  16. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/waapi/NativeAnimation.mjs +8 -2
  17. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/waapi/animate-elements.mjs +3 -3
  18. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/waapi/index.mjs +1 -1
  19. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/waapi/utils/linear.mjs +1 -2
  20. package/dist/es/external/.pnpm/framer-motion@11.15.0/external/framer-motion/dist/es/animation/generators/spring/defaults.mjs +32 -0
  21. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/generators/spring/find.mjs +9 -16
  22. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/generators/spring/index.mjs +46 -17
  23. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/sequence/create.mjs +23 -2
  24. package/dist/es/external/.pnpm/framer-motion@11.15.0/external/framer-motion/dist/es/animation/sequence/utils/calc-repeat-duration.mjs +6 -0
  25. package/dist/es/external/.pnpm/framer-motion@11.15.0/external/framer-motion/dist/es/animation/sequence/utils/normalize-times.mjs +8 -0
  26. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/easing/cubic-bezier.mjs +2 -1
  27. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/easing/utils/map.mjs +2 -2
  28. package/dist/es/external/.pnpm/framer-motion@11.15.0/external/framer-motion/dist/es/events/add-dom-event.mjs +7 -0
  29. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/frameloop/frame.mjs +2 -1
  30. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/frameloop/render-step.mjs +1 -1
  31. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/animation/mix-values.mjs +2 -1
  32. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/node/create-projection-node.mjs +2 -1
  33. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/DOMVisualElement.mjs +15 -0
  34. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/resize/handle-element.mjs +1 -1
  35. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/scroll/index.mjs +13 -6
  36. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/utils/css-variables-conversion.mjs +1 -1
  37. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/viewport/index.mjs +1 -1
  38. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/html/HTMLVisualElement.mjs +0 -14
  39. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/utils/motion-values.mjs +1 -1
  40. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/interpolate.mjs +2 -2
  41. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/mix/color.mjs +1 -1
  42. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/mix/complex.mjs +1 -1
  43. package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/value/index.mjs +1 -1
  44. package/dist/es/features/feature-manager.mjs +26 -7
  45. package/dist/es/features/feature.mjs +10 -0
  46. package/dist/es/features/gestures/drag/VisualElementDragControls.mjs +450 -0
  47. package/dist/es/features/gestures/drag/index.mjs +26 -0
  48. package/dist/es/features/gestures/drag/lock.mjs +42 -0
  49. package/dist/es/features/gestures/drag/utils/constraints.mjs +93 -0
  50. package/dist/es/features/gestures/drag/utils/is.mjs +6 -0
  51. package/dist/es/features/gestures/hover/index.mjs +40 -0
  52. package/dist/es/features/gestures/in-view/index.mjs +39 -0
  53. package/dist/es/features/gestures/pan/PanSession.mjs +150 -0
  54. package/dist/es/features/gestures/pan/index.mjs +69 -0
  55. package/dist/es/features/gestures/press/index.mjs +51 -0
  56. package/dist/es/features/layout/config.mjs +2 -2
  57. package/dist/es/features/layout/layout.mjs +24 -51
  58. package/dist/es/features/layout/projection.mjs +39 -0
  59. package/dist/es/features/svg.mjs +1 -1
  60. package/dist/es/index.mjs +41 -31
  61. package/dist/es/projection/conversion.mjs +31 -0
  62. package/dist/es/projection/geometry/delta-apply.mjs +7 -0
  63. package/dist/es/projection/geometry/delta-calc.mjs +6 -0
  64. package/dist/es/projection/geometry/models.mjs +11 -0
  65. package/dist/es/projection/utils/each-axis.mjs +6 -0
  66. package/dist/es/projection/utils/measure.mjs +20 -0
  67. package/dist/es/state/animate-variants-children.mjs +1 -1
  68. package/dist/es/state/create-visual-element.mjs +2 -2
  69. package/dist/es/state/motion-state.mjs +31 -7
  70. package/dist/es/state/utils/is-present.mjs +7 -0
  71. package/dist/es/state/utils.mjs +0 -3
  72. package/dist/es/utils/clamp.mjs +10 -0
  73. package/dist/es/utils/get-context-window.mjs +6 -0
  74. package/dist/es/utils/mix/number.mjs +6 -0
  75. package/dist/es/utils/progress.mjs +7 -0
  76. package/dist/es/utils/time-conversion.mjs +8 -0
  77. package/dist/es/utils/use-animation-frame.mjs +1 -1
  78. package/dist/es/utils/use-in-view.mjs +1 -1
  79. package/dist/es/value/types/numbers/units.mjs +11 -0
  80. package/dist/es/value/use-combine-values.mjs +2 -2
  81. package/dist/es/value/use-computed.mjs +1 -1
  82. package/dist/es/value/use-scroll.mjs +3 -3
  83. package/dist/es/value/use-spring.mjs +3 -3
  84. package/dist/es/value/use-time.mjs +1 -1
  85. package/dist/es/value/use-transform.mjs +1 -1
  86. package/dist/es/value/use-velocity.mjs +2 -2
  87. package/dist/es/value/use-will-change/add-will-change.mjs +10 -0
  88. package/dist/es/value/use-will-change/is.mjs +7 -0
  89. package/dist/src/animation/animation-controls.d.ts +7 -0
  90. package/dist/src/animation/types.d.ts +12 -0
  91. package/dist/src/animation/use-animation.d.ts +0 -0
  92. package/dist/src/components/AnimatePresence.d.ts +1 -1
  93. package/dist/src/events/add-dom-event.d.ts +1 -0
  94. package/dist/src/events/add-pointer-event.d.ts +2 -0
  95. package/dist/src/events/event-info.d.ts +4 -0
  96. package/dist/src/events/index.d.ts +5 -0
  97. package/dist/src/events/types.d.ts +5 -0
  98. package/dist/src/events/utils/index.d.ts +1 -0
  99. package/dist/src/events/utils/is-primary-pointer.d.ts +1 -0
  100. package/dist/src/features/feature-manager.d.ts +3 -0
  101. package/dist/src/features/feature.d.ts +6 -3
  102. package/dist/src/features/gestures/drag/VisualElementDragControls.d.ts +57 -0
  103. package/dist/src/features/gestures/drag/index.d.ts +8 -10
  104. package/dist/src/features/gestures/drag/lock.d.ts +4 -0
  105. package/dist/src/features/gestures/drag/types.d.ts +149 -70
  106. package/dist/src/features/gestures/drag/use-drag-controls.d.ts +73 -0
  107. package/dist/src/features/gestures/drag/utils/constraints.d.ts +55 -0
  108. package/dist/src/features/gestures/drag/utils/is.d.ts +1 -0
  109. package/dist/src/features/gestures/hover/index.d.ts +7 -0
  110. package/dist/src/features/gestures/hover/types.d.ts +8 -0
  111. package/dist/src/features/gestures/in-view/index.d.ts +7 -0
  112. package/dist/src/features/gestures/in-view/types.d.ts +18 -0
  113. package/dist/src/features/gestures/pan/PanSession.d.ts +139 -0
  114. package/dist/src/features/gestures/pan/index.d.ts +16 -0
  115. package/dist/src/features/gestures/pan/types.d.ts +7 -0
  116. package/dist/src/features/gestures/press/index.d.ts +9 -0
  117. package/dist/src/features/gestures/press/types.d.ts +13 -0
  118. package/dist/src/features/index.d.ts +1 -1
  119. package/dist/src/features/layout/layout.d.ts +3 -2
  120. package/dist/src/features/layout/projection.d.ts +7 -0
  121. package/dist/src/index.d.ts +1 -0
  122. package/dist/src/projection/conversion.d.ts +14 -0
  123. package/dist/src/projection/geometry/delta-apply.d.ts +2 -0
  124. package/dist/src/projection/geometry/delta-calc.d.ts +2 -0
  125. package/dist/src/projection/geometry/models.d.ts +3 -0
  126. package/dist/src/projection/node/types.d.ts +16 -0
  127. package/dist/src/projection/utils/each-axis.d.ts +3 -0
  128. package/dist/src/projection/utils/measure.d.ts +3 -0
  129. package/dist/src/render/utils/setters.d.ts +3 -0
  130. package/dist/src/state/motion-state.d.ts +7 -3
  131. package/dist/src/state/utils/is-present.d.ts +2 -0
  132. package/dist/src/state/utils.d.ts +0 -1
  133. package/dist/src/types/framer-motion.d.ts +0 -78
  134. package/dist/src/types/state.d.ts +10 -23
  135. package/dist/src/utils/clamp.d.ts +1 -0
  136. package/dist/src/utils/get-context-window.d.ts +2 -0
  137. package/dist/src/utils/index.d.ts +2 -0
  138. package/dist/src/utils/mix/number.d.ts +1 -0
  139. package/dist/src/utils/noop.d.ts +1 -0
  140. package/dist/src/utils/progress.d.ts +1 -0
  141. package/dist/src/utils/time-conversion.d.ts +8 -0
  142. package/dist/src/value/types/numbers/units.d.ts +30 -0
  143. package/dist/src/value/use-will-change/add-will-change.d.ts +2 -0
  144. package/dist/src/value/use-will-change/is.d.ts +2 -0
  145. package/dist/src/value/use-will-change/types.d.ts +4 -0
  146. package/package.json +8 -5
  147. package/dist/es/external/.pnpm/framer-motion@11.11.11/external/framer-motion/dist/es/render/dom/utils/resolve-element.mjs +0 -23
  148. package/dist/es/external/.pnpm/hey-listen@1.0.8/external/hey-listen/dist/hey-listen.es.mjs +0 -20
  149. package/dist/es/features/events.mjs +0 -69
  150. package/dist/es/features/gestures/base.mjs +0 -19
  151. package/dist/es/features/gestures/hover.mjs +0 -46
  152. package/dist/es/features/gestures/in-view.mjs +0 -39
  153. package/dist/es/features/gestures/press.mjs +0 -37
  154. package/dist/es/utils/events.mjs +0 -8
  155. package/dist/src/features/events.d.ts +0 -6
  156. package/dist/src/features/gestures/hover.d.ts +0 -10
  157. package/dist/src/features/gestures/in-view.d.ts +0 -8
  158. package/dist/src/features/gestures/press.d.ts +0 -8
  159. /package/dist/es/{external/.pnpm/framer-motion@11.11.11/external/framer-motion/dist/es/events → events}/add-dom-event.mjs +0 -0
  160. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animate/index.mjs +0 -0
  161. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animate/sequence.mjs +0 -0
  162. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animate/single-value.mjs +0 -0
  163. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/drivers/driver-frameloop.mjs +0 -0
  164. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/utils/accelerated-values.mjs +0 -0
  165. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/waapi/animate-style.mjs +0 -0
  166. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/waapi/easing.mjs +0 -0
  167. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/waapi/utils/attach-timeline.mjs +0 -0
  168. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/waapi/utils/get-final-keyframe.mjs +0 -0
  169. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/waapi/utils/memo-supports.mjs +0 -0
  170. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/waapi/utils/style.mjs +0 -0
  171. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/waapi/utils/supports-flags.mjs +0 -0
  172. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/waapi/utils/supports-linear-easing.mjs +0 -0
  173. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/waapi/utils/supports-partial-keyframes.mjs +0 -0
  174. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/animators/waapi/utils/supports-waapi.mjs +0 -0
  175. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/generators/inertia.mjs +0 -0
  176. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/generators/keyframes.mjs +0 -0
  177. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/generators/utils/calc-duration.mjs +0 -0
  178. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/generators/utils/is-generator.mjs +0 -0
  179. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/generators/utils/velocity.mjs +0 -0
  180. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/interfaces/motion-value.mjs +0 -0
  181. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/interfaces/visual-element-target.mjs +0 -0
  182. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/optimized-appear/data-id.mjs +0 -0
  183. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/optimized-appear/get-appear-id.mjs +0 -0
  184. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/sequence/utils/calc-time.mjs +0 -0
  185. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/sequence/utils/edit.mjs +0 -0
  186. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/sequence/utils/sort.mjs +0 -0
  187. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/utils/create-visual-element.mjs +0 -0
  188. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/utils/default-transitions.mjs +0 -0
  189. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/utils/get-value-transition.mjs +0 -0
  190. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/utils/is-animatable.mjs +0 -0
  191. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/utils/is-animation-controls.mjs +0 -0
  192. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/utils/is-dom-keyframes.mjs +0 -0
  193. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/utils/is-keyframes-target.mjs +0 -0
  194. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/utils/is-none.mjs +0 -0
  195. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/utils/is-transition-defined.mjs +0 -0
  196. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/animation/utils/stagger.mjs +0 -0
  197. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/easing/anticipate.mjs +0 -0
  198. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/easing/back.mjs +0 -0
  199. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/easing/circ.mjs +0 -0
  200. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/easing/ease.mjs +0 -0
  201. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/easing/modifiers/mirror.mjs +0 -0
  202. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/easing/modifiers/reverse.mjs +0 -0
  203. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/easing/steps.mjs +0 -0
  204. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/easing/utils/create-generator-easing.mjs +0 -0
  205. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/easing/utils/get-easing-for-segment.mjs +0 -0
  206. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/easing/utils/is-bezier-definition.mjs +0 -0
  207. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/easing/utils/is-easing-array.mjs +0 -0
  208. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/frameloop/batcher.mjs +0 -0
  209. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/frameloop/index-legacy.mjs +0 -0
  210. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/frameloop/microtask.mjs +0 -0
  211. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/frameloop/sync-time.mjs +0 -0
  212. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/motion/features/definitions.mjs +0 -0
  213. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/motion/utils/is-forced-motion-value.mjs +0 -0
  214. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/geometry/conversion.mjs +0 -0
  215. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/geometry/copy.mjs +0 -0
  216. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/geometry/delta-apply.mjs +0 -0
  217. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/geometry/delta-calc.mjs +0 -0
  218. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/geometry/delta-remove.mjs +0 -0
  219. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/geometry/models.mjs +0 -0
  220. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/geometry/utils.mjs +0 -0
  221. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/node/DocumentProjectionNode.mjs +0 -0
  222. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/node/HTMLProjectionNode.mjs +0 -0
  223. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/node/state.mjs +0 -0
  224. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/shared/stack.mjs +0 -0
  225. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/styles/scale-border-radius.mjs +0 -0
  226. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/styles/scale-box-shadow.mjs +0 -0
  227. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/styles/scale-correction.mjs +0 -0
  228. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/styles/transform.mjs +0 -0
  229. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/utils/each-axis.mjs +0 -0
  230. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/utils/has-transform.mjs +0 -0
  231. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/projection/utils/measure.mjs +0 -0
  232. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/VisualElement.mjs +0 -0
  233. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/DOMKeyframesResolver.mjs +0 -0
  234. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/resize/handle-window.mjs +0 -0
  235. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/resize/index.mjs +0 -0
  236. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/scroll/info.mjs +0 -0
  237. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/scroll/observe.mjs +0 -0
  238. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/scroll/offsets/edge.mjs +0 -0
  239. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/scroll/offsets/index.mjs +0 -0
  240. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/scroll/offsets/inset.mjs +0 -0
  241. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/scroll/offsets/offset.mjs +0 -0
  242. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/scroll/offsets/presets.mjs +0 -0
  243. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/scroll/on-scroll-handler.mjs +0 -0
  244. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/scroll/supports.mjs +0 -0
  245. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/scroll/track.mjs +0 -0
  246. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/utils/camel-to-dash.mjs +0 -0
  247. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/utils/is-css-variable.mjs +0 -0
  248. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/utils/is-svg-element.mjs +0 -0
  249. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/utils/unit-conversion.mjs +0 -0
  250. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/value-types/animatable-none.mjs +0 -0
  251. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/value-types/defaults.mjs +0 -0
  252. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/value-types/dimensions.mjs +0 -0
  253. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/value-types/find.mjs +0 -0
  254. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/value-types/get-as-type.mjs +0 -0
  255. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/value-types/number-browser.mjs +0 -0
  256. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/value-types/number.mjs +0 -0
  257. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/value-types/test.mjs +0 -0
  258. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/value-types/transform.mjs +0 -0
  259. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/value-types/type-auto.mjs +0 -0
  260. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/dom/value-types/type-int.mjs +0 -0
  261. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/html/utils/build-styles.mjs +0 -0
  262. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/html/utils/build-transform.mjs +0 -0
  263. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/html/utils/make-none-animatable.mjs +0 -0
  264. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/html/utils/render.mjs +0 -0
  265. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/html/utils/scrape-motion-values.mjs +0 -0
  266. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/html/utils/transform.mjs +0 -0
  267. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/object/ObjectVisualElement.mjs +0 -0
  268. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/store.mjs +0 -0
  269. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/svg/SVGVisualElement.mjs +0 -0
  270. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/svg/utils/build-attrs.mjs +0 -0
  271. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/svg/utils/camel-case-attrs.mjs +0 -0
  272. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/svg/utils/is-svg-tag.mjs +0 -0
  273. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/svg/utils/path.mjs +0 -0
  274. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/svg/utils/render.mjs +0 -0
  275. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/svg/utils/scrape-motion-values.mjs +0 -0
  276. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/svg/utils/transform-origin.mjs +0 -0
  277. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/utils/KeyframesResolver.mjs +0 -0
  278. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/utils/compare-by-depth.mjs +0 -0
  279. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/utils/flat-tree.mjs +0 -0
  280. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/utils/is-controlling-variants.mjs +0 -0
  281. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/utils/is-variant-label.mjs +0 -0
  282. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/utils/resolve-dynamic-variants.mjs +0 -0
  283. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/utils/resolve-variants.mjs +0 -0
  284. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/utils/setters.mjs +0 -0
  285. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/render/utils/variant-props.mjs +0 -0
  286. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/GlobalConfig.mjs +0 -0
  287. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/array.mjs +0 -0
  288. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/clamp.mjs +0 -0
  289. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/delay.mjs +0 -0
  290. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/distance.mjs +0 -0
  291. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/hsla-to-rgba.mjs +0 -0
  292. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/is-browser.mjs +0 -0
  293. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/is-numerical-string.mjs +0 -0
  294. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/is-zero-value-string.mjs +0 -0
  295. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/memo.mjs +0 -0
  296. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/mix/immediate.mjs +0 -0
  297. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/mix/index.mjs +0 -0
  298. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/mix/number.mjs +0 -0
  299. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/mix/visibility.mjs +0 -0
  300. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/offsets/default.mjs +0 -0
  301. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/offsets/fill.mjs +0 -0
  302. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/offsets/time.mjs +0 -0
  303. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/pipe.mjs +0 -0
  304. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/progress.mjs +0 -0
  305. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/reduced-motion/index.mjs +0 -0
  306. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/reduced-motion/state.mjs +0 -0
  307. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/resolve-value.mjs +0 -0
  308. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/subscription-manager.mjs +0 -0
  309. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/time-conversion.mjs +0 -0
  310. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/transform.mjs +0 -0
  311. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/velocity-per-second.mjs +0 -0
  312. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/warn-once.mjs +0 -0
  313. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/utils/wrap.mjs +0 -0
  314. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/value/types/color/hex.mjs +0 -0
  315. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/value/types/color/hsla.mjs +0 -0
  316. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/value/types/color/index.mjs +0 -0
  317. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/value/types/color/rgba.mjs +0 -0
  318. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/value/types/color/utils.mjs +0 -0
  319. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/value/types/complex/filter.mjs +0 -0
  320. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/value/types/complex/index.mjs +0 -0
  321. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/value/types/numbers/index.mjs +0 -0
  322. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/value/types/numbers/units.mjs +0 -0
  323. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/value/types/utils/color-regex.mjs +0 -0
  324. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/value/types/utils/float-regex.mjs +0 -0
  325. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/value/types/utils/is-nullish.mjs +0 -0
  326. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/value/types/utils/sanitize.mjs +0 -0
  327. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/value/types/utils/single-color-regex.mjs +0 -0
  328. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/value/use-will-change/add-will-change.mjs +0 -0
  329. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/value/use-will-change/is.mjs +0 -0
  330. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/value/utils/is-motion-value.mjs +0 -0
  331. /package/dist/es/external/.pnpm/{framer-motion@11.11.11 → framer-motion@11.15.0}/external/framer-motion/dist/es/value/utils/resolve-motion-value.mjs +0 -0
  332. /package/dist/es/external/.pnpm/{framer-motion@11.11.11/external/framer-motion/dist/es/utils → motion-utils@11.14.3/external/motion-utils/dist/es}/errors.mjs +0 -0
  333. /package/dist/es/external/.pnpm/{framer-motion@11.11.11/external/framer-motion/dist/es/utils → motion-utils@11.14.3/external/motion-utils/dist/es}/noop.mjs +0 -0
@@ -0,0 +1,14 @@
1
+ import { BoundingBox, Box, TransformPoint } from 'framer-motion';
2
+ /**
3
+ * Bounding boxes tend to be defined as top, left, right, bottom. For various operations
4
+ * it's easier to consider each axis individually. This function returns a bounding box
5
+ * as a map of single-axis min/max values.
6
+ */
7
+ export declare function convertBoundingBoxToBox({ top, left, right, bottom, }: BoundingBox): Box;
8
+ /**
9
+ * Applies a TransformPoint function to a bounding box. TransformPoint is usually a function
10
+ * provided by Framer to allow measured points to be corrected for device scaling. This is used
11
+ * when measuring DOM elements and DOM event points.
12
+ */
13
+ export declare function transformBoxPoints(point: BoundingBox, transformPoint?: TransformPoint): BoundingBox;
14
+ export declare function convertBoxToBoundingBox({ x, y }: Box): BoundingBox;
@@ -0,0 +1,2 @@
1
+ import { Axis } from 'framer-motion';
2
+ export declare function translateAxis(axis: Axis, distance: number): void;
@@ -0,0 +1,2 @@
1
+ import { Axis } from 'framer-motion';
2
+ export declare function calcLength(axis: Axis): number;
@@ -0,0 +1,3 @@
1
+ import { Axis, Box } from 'framer-motion';
2
+ export declare const createAxis: () => Axis;
3
+ export declare function createBox(): Box;
@@ -0,0 +1,16 @@
1
+ import { Box, Delta, ResolvedValues } from 'framer-motion';
2
+ export interface Measurements {
3
+ animationId: number;
4
+ measuredBox: Box;
5
+ layoutBox: Box;
6
+ latestValues: ResolvedValues;
7
+ source: number;
8
+ }
9
+ export interface LayoutUpdateData {
10
+ layout: Box;
11
+ snapshot: Measurements;
12
+ delta: Delta;
13
+ layoutDelta: Delta;
14
+ hasLayoutChanged: boolean;
15
+ hasRelativeTargetChanged: boolean;
16
+ }
@@ -0,0 +1,3 @@
1
+ type Callback = (axis: 'x' | 'y') => void;
2
+ export declare function eachAxis(callback: Callback): void[];
3
+ export {};
@@ -0,0 +1,3 @@
1
+ import { IProjectionNode, TransformPoint } from 'framer-motion';
2
+ export declare function measureViewportBox(instance: HTMLElement, transformPoint?: TransformPoint): import('framer-motion').Box;
3
+ export declare function measurePageBox(element: HTMLElement, rootProjectionNode: IProjectionNode, transformPagePoint?: TransformPoint): import('framer-motion').Box;
@@ -0,0 +1,3 @@
1
+ import { TargetResolver } from '../../types';
2
+ import { TargetAndTransition, VisualElement } from 'framer-motion';
3
+ export declare function setTarget(visualElement: VisualElement, definition: string | TargetAndTransition | TargetResolver): void;
@@ -1,27 +1,31 @@
1
1
  import { MotionStateContext, Options } from '../types';
2
2
  import { DOMKeyframesDefinition, VisualElement } from 'framer-motion';
3
- declare const STATE_TYPES: readonly ["initial", "animate", "inView", "hover", "press", "exit", "drag"];
3
+ declare const STATE_TYPES: readonly ["initial", "animate", "inView", "hover", "press", "whileDrag", "exit"];
4
4
  type StateType = typeof STATE_TYPES[number];
5
5
  export declare const mountedStates: WeakMap<Element, MotionState>;
6
6
  export declare class MotionState {
7
7
  readonly id: string;
8
8
  element: HTMLElement | null;
9
9
  private parent?;
10
- private options;
10
+ options: Options;
11
+ private isFirstAnimate;
11
12
  activeStates: Partial<Record<StateType, boolean>>;
12
13
  depth: number;
13
14
  baseTarget: DOMKeyframesDefinition;
14
15
  target: DOMKeyframesDefinition;
15
16
  private featureManager;
16
- visualElement: VisualElement;
17
+ visualElement: VisualElement<Element>;
17
18
  constructor(options: Options, parent?: MotionState);
18
19
  private _context;
19
20
  get context(): MotionStateContext;
20
21
  private initTarget;
21
22
  get initial(): string | boolean | import('../types').Variant;
22
23
  updateOptions(): void;
24
+ beforeMount(): void;
23
25
  mount(element: HTMLElement, options: Options): void;
26
+ beforeUnmount(): void;
24
27
  unmount(): void;
28
+ beforeUpdate(): void;
25
29
  update(options: Options): void;
26
30
  setActive(name: StateType, isActive: boolean): void;
27
31
  animateUpdates(): Generator<any, void, unknown>;
@@ -0,0 +1,2 @@
1
+ import { VisualElement } from 'framer-motion';
2
+ export declare function isPresent(visualElement: VisualElement): boolean;
@@ -8,7 +8,6 @@ export declare function addUniqueItem<T>(array: T[], item: T): void;
8
8
  export declare function removeItem<T>(array: T[], item: T): void;
9
9
  export declare function getOptions(options: DynamicAnimationOptions, key: string): DynamicAnimationOptions;
10
10
  export declare function isCssVar(name: string): boolean;
11
- export declare function noop(): void;
12
11
  export declare const noopReturn: <V>(v: V) => V;
13
12
  export declare function isNumber(value: any): boolean;
14
13
  type ElementType = keyof IntrinsicElementAttributes;
@@ -1,4 +1,3 @@
1
- import { EasingFunction, ResolvedValues } from 'framer-motion';
2
1
  export interface FrameData {
3
2
  delta: number;
4
3
  timestamp: number;
@@ -11,39 +10,6 @@ export interface MotionValueEventCallbacks<V> {
11
10
  change: (latestValue: V) => void;
12
11
  renderRequest: () => void;
13
12
  }
14
- export interface ScrollOptions {
15
- source?: HTMLElement;
16
- container?: HTMLElement;
17
- target?: Element;
18
- axis?: 'x' | 'y';
19
- offset?: ScrollOffset;
20
- }
21
- export type OnScrollProgress = (progress: number) => void;
22
- export type OnScrollWithInfo = (progress: number, info: ScrollInfo) => void;
23
- export type OnScroll = OnScrollProgress | OnScrollWithInfo;
24
- export interface AxisScrollInfo {
25
- current: number;
26
- offset: number[];
27
- progress: number;
28
- scrollLength: number;
29
- velocity: number;
30
- targetOffset: number;
31
- targetLength: number;
32
- containerLength: number;
33
- interpolatorOffsets?: number[];
34
- interpolate?: EasingFunction;
35
- }
36
- export interface ScrollInfo {
37
- time: number;
38
- x: AxisScrollInfo;
39
- y: AxisScrollInfo;
40
- }
41
- export type OnScrollInfo = (info: ScrollInfo) => void;
42
- export type OnScrollHandler = {
43
- measure: () => void;
44
- update: (time: number) => void;
45
- notify: () => void;
46
- };
47
13
  export type SupportedEdgeUnit = 'px' | 'vw' | 'vh' | '%';
48
14
  export type EdgeUnit = `${number}${SupportedEdgeUnit}`;
49
15
  export type NamedEdges = 'start' | 'end' | 'center';
@@ -58,47 +24,3 @@ export interface ScrollInfoOptions {
58
24
  axis?: 'x' | 'y';
59
25
  offset?: ScrollOffset;
60
26
  }
61
- export interface TransformOrigin {
62
- originX?: number | string;
63
- originY?: number | string;
64
- originZ?: number | string;
65
- }
66
- export interface HTMLRenderState {
67
- /**
68
- * A mutable record of transforms we want to apply directly to the rendered Element
69
- * every frame. We use a mutable data structure to reduce GC during animations.
70
- */
71
- transform: ResolvedValues;
72
- /**
73
- * A mutable record of transform origins we want to apply directly to the rendered Element
74
- * every frame. We use a mutable data structure to reduce GC during animations.
75
- */
76
- transformOrigin: TransformOrigin;
77
- /**
78
- * A mutable record of styles we want to apply directly to the rendered Element
79
- * every frame. We use a mutable data structure to reduce GC during animations.
80
- */
81
- style: ResolvedValues;
82
- /**
83
- * A mutable record of CSS variables we want to apply directly to the rendered Element
84
- * every frame. We use a mutable data structure to reduce GC during animations.
85
- */
86
- vars: ResolvedValues;
87
- }
88
- export type SVGDimensions = {
89
- x: number;
90
- y: number;
91
- width: number;
92
- height: number;
93
- };
94
- export interface SVGRenderState extends HTMLRenderState {
95
- /**
96
- * Measured dimensions of the SVG element to be used to calculate a transform-origin.
97
- */
98
- dimensions?: SVGDimensions;
99
- /**
100
- * A mutable record of attributes we want to apply directly to the rendered Element
101
- * every frame. We use a mutable data structure to reduce GC during animations.
102
- */
103
- attrs: ResolvedValues;
104
- }
@@ -1,8 +1,14 @@
1
- import { DOMKeyframesDefinition, DynamicAnimationOptions } from 'framer-motion';
1
+ import { DOMKeyframesDefinition, DynamicAnimationOptions, Target, TargetAndTransition } from 'framer-motion';
2
2
  import { MotionValue, animate } from 'framer-motion/dom';
3
3
  import { IntrinsicElementAttributes } from 'vue';
4
4
  import { TransformProperties } from './transform';
5
5
  import { LayoutOptions } from '../features/layout/types';
6
+ import { DragProps } from '../features/gestures/drag/types';
7
+ import { PressProps } from '../features/gestures/press/types';
8
+ import { HoverProps } from '../features/gestures/hover/types';
9
+ import { InViewProps } from '../features/gestures/in-view/types';
10
+ import { LayoutGroupState } from '../components/context';
11
+ import { PanProps } from '../features/gestures/pan/types';
6
12
  type AnimationPlaybackControls = ReturnType<typeof animate>;
7
13
  export interface Orchestration {
8
14
  delay?: number;
@@ -13,17 +19,11 @@ export interface Orchestration {
13
19
  }
14
20
  export interface AnimateOptions extends Omit<Orchestration, 'delay'>, DynamicAnimationOptions {
15
21
  }
22
+ export type TargetResolver = (custom: any, current: Target, velocity: Target) => TargetAndTransition | string;
16
23
  export interface Variant extends DOMKeyframesDefinition {
17
24
  transition?: AnimateOptions;
18
25
  }
19
26
  export type VariantLabels = string | Variant;
20
- type MarginValue = `${number}${'px' | '%'}`;
21
- type MarginType = MarginValue | `${MarginValue} ${MarginValue}` | `${MarginValue} ${MarginValue} ${MarginValue}` | `${MarginValue} ${MarginValue} ${MarginValue} ${MarginValue}`;
22
- export interface InViewOptions {
23
- root?: Element | Document;
24
- margin?: MarginType;
25
- amount?: 'some' | 'all' | number;
26
- }
27
27
  interface BoundingBox {
28
28
  top: number;
29
29
  right: number;
@@ -38,15 +38,9 @@ export type MotionStyle = Partial<{
38
38
  [K in keyof Variant]: Variant[K] | MotionValue;
39
39
  }>;
40
40
  export type ElementType = keyof IntrinsicElementAttributes;
41
- export interface Options<T = any> extends LayoutOptions {
41
+ export interface Options<T = any> extends LayoutOptions, PressProps, HoverProps, InViewProps, DragProps, PanProps {
42
42
  custom?: T;
43
43
  as?: ElementType;
44
- inViewOptions?: InViewOptions & {
45
- once?: boolean;
46
- };
47
- inView?: string | Variant;
48
- press?: string | Variant;
49
- hover?: string | Variant;
50
44
  initial?: string | Variant | boolean;
51
45
  animate?: string | Variant;
52
46
  exit?: string | Variant;
@@ -56,14 +50,7 @@ export interface Options<T = any> extends LayoutOptions {
56
50
  style?: MotionStyle;
57
51
  transformTemplate?: (transform: TransformProperties, generatedTransform: string) => string;
58
52
  transition?: AnimateOptions;
59
- onMotionStart?: (target: DOMKeyframesDefinition) => void;
60
- onMotionComplete?: (target: DOMKeyframesDefinition) => void;
61
- onHoverStart?: (e: PointerEvent) => void;
62
- onHoverEnd?: (e: PointerEvent) => void;
63
- onPressStart?: (e: PointerEvent) => void;
64
- onPressEnd?: (e: PointerEvent) => void;
65
- onViewEnter?: (target: Element) => void;
66
- onViewLeave?: (target: Element) => void;
53
+ layoutGroup?: LayoutGroupState;
67
54
  }
68
55
  export interface MotionStateContext {
69
56
  initial?: string;
@@ -0,0 +1 @@
1
+ export declare function clamp(min: number, max: number, v: number): number;
@@ -0,0 +1,2 @@
1
+ import { VisualElement } from 'framer-motion';
2
+ export declare function getContextWindow({ current }: VisualElement<Element>): Window & typeof globalThis;
@@ -2,3 +2,5 @@ export * from './createContext';
2
2
  export * from './motion-value';
3
3
  export * from './use-in-view';
4
4
  export * from './use-animation-frame';
5
+ export * from './time-conversion';
6
+ export * from './get-context-window';
@@ -0,0 +1 @@
1
+ export declare function mixNumber(from: number, to: number, progress: number): number;
@@ -0,0 +1 @@
1
+ export declare const noop: <T>(any: T) => T;
@@ -0,0 +1 @@
1
+ export declare function progress(from: number, to: number, value: number): number;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Converts seconds to milliseconds
3
+ *
4
+ * @param seconds - Time in seconds.
5
+ * @return milliseconds - Converted time in milliseconds.
6
+ */
7
+ export declare const secondsToMilliseconds: (seconds: number) => number;
8
+ export declare function millisecondsToSeconds(milliseconds: number): number;
@@ -0,0 +1,30 @@
1
+ export declare const degrees: {
2
+ test: (v: string | number) => boolean;
3
+ parse: typeof parseFloat;
4
+ transform: (v: number | string) => string;
5
+ };
6
+ export declare const percent: {
7
+ test: (v: string | number) => boolean;
8
+ parse: typeof parseFloat;
9
+ transform: (v: number | string) => string;
10
+ };
11
+ export declare const px: {
12
+ test: (v: string | number) => boolean;
13
+ parse: typeof parseFloat;
14
+ transform: (v: number | string) => string;
15
+ };
16
+ export declare const vh: {
17
+ test: (v: string | number) => boolean;
18
+ parse: typeof parseFloat;
19
+ transform: (v: number | string) => string;
20
+ };
21
+ export declare const vw: {
22
+ test: (v: string | number) => boolean;
23
+ parse: typeof parseFloat;
24
+ transform: (v: number | string) => string;
25
+ };
26
+ export declare const progressPercentage: {
27
+ parse: (v: string) => number;
28
+ transform: (v: number) => string;
29
+ test: (v: string | number) => boolean;
30
+ };
@@ -0,0 +1,2 @@
1
+ import { VisualElement } from 'framer-motion';
2
+ export declare function addValueToWillChange(visualElement: VisualElement, key: string): void;
@@ -0,0 +1,2 @@
1
+ import { WillChange } from './types';
2
+ export declare function isWillChangeMotionValue(value: any): value is WillChange;
@@ -0,0 +1,4 @@
1
+ import { MotionValue } from 'framer-motion';
2
+ export interface WillChange extends MotionValue {
3
+ add: (name: string) => void;
4
+ }
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "motion-v",
3
- "version": "0.5.0-beta.1",
3
+ "version": "0.5.0",
4
4
  "description": "",
5
5
  "author": "",
6
6
  "license": "MIT",
7
- "homepage": "https://github.com/rick-hup/motion-vue",
7
+ "homepage": "https://github.com/unovue/motion-vue",
8
8
  "repository": {
9
9
  "type": "git",
10
- "url": "https://github.com/rick-hup/motion-vue.git"
10
+ "url": "https://github.com/unovue/motion-vue.git"
11
11
  },
12
12
  "keywords": [
13
13
  "vue",
@@ -53,15 +53,18 @@
53
53
  ],
54
54
  "dependencies": {
55
55
  "@vueuse/core": "^12.0.0",
56
- "framer-motion": "11.11.11"
56
+ "framer-motion": "11.15.0",
57
+ "hey-listen": "^1.0.8",
58
+ "motion-dom": "^11.14.3"
57
59
  },
58
60
  "devDependencies": {
59
61
  "@vitejs/plugin-vue": "^5.1.4",
60
62
  "@vitejs/plugin-vue-jsx": "^4.0.1",
61
63
  "@vitest/coverage-v8": "^1.4.0",
62
64
  "@vue/test-utils": "^2.4.5",
63
- "framer-motion": "^11.0.0",
65
+ "framer-motion": "^11.15.0",
64
66
  "jsdom": "^24.0.0",
67
+ "vite": "^5.4.8",
65
68
  "vite-plugin-dts": "^4.2.4",
66
69
  "vitest": "^1.4.0"
67
70
  },
@@ -1,23 +0,0 @@
1
- import { invariant } from "../../../utils/errors.mjs";
2
- function resolveElements(elements, scope, selectorCache) {
3
- var _a;
4
- if (typeof elements === "string") {
5
- let root = document;
6
- if (scope) {
7
- invariant(Boolean(scope.current), "Scope provided, but no element detected.");
8
- root = scope.current;
9
- }
10
- if (selectorCache) {
11
- (_a = selectorCache[elements]) !== null && _a !== void 0 ? _a : selectorCache[elements] = root.querySelectorAll(elements);
12
- elements = selectorCache[elements];
13
- } else {
14
- elements = root.querySelectorAll(elements);
15
- }
16
- } else if (elements instanceof Element) {
17
- elements = [elements];
18
- }
19
- return Array.from(elements || []);
20
- }
21
- export {
22
- resolveElements
23
- };
@@ -1,20 +0,0 @@
1
- var warning = function() {
2
- };
3
- var invariant = function() {
4
- };
5
- if (process.env.NODE_ENV !== "production") {
6
- warning = function(check, message) {
7
- if (!check && typeof console !== "undefined") {
8
- console.warn(message);
9
- }
10
- };
11
- invariant = function(check, message) {
12
- if (!check) {
13
- throw new Error(message);
14
- }
15
- };
16
- }
17
- export {
18
- invariant,
19
- warning
20
- };
@@ -1,69 +0,0 @@
1
- import { Feature } from "./feature.mjs";
2
- class EventFeature extends Feature {
3
- constructor() {
4
- super(...arguments);
5
- this.handlers = {};
6
- }
7
- mount() {
8
- const element = this.state.element;
9
- if (!element)
10
- return;
11
- this.handlers.motionstart = (event) => {
12
- var _a, _b;
13
- const target = event.detail.target;
14
- (_b = (_a = this.state.getOptions()).onMotionStart) == null ? void 0 : _b.call(_a, target);
15
- };
16
- this.handlers.motioncomplete = (event) => {
17
- var _a, _b;
18
- const target = event.detail.target;
19
- (_b = (_a = this.state.getOptions()).onMotionComplete) == null ? void 0 : _b.call(_a, target);
20
- };
21
- this.handlers.hoverstart = (event) => {
22
- var _a, _b;
23
- const e = event.detail;
24
- (_b = (_a = this.state.getOptions()).onHoverStart) == null ? void 0 : _b.call(_a, e);
25
- };
26
- this.handlers.hoverend = (event) => {
27
- var _a, _b;
28
- const e = event.detail;
29
- (_b = (_a = this.state.getOptions()).onHoverEnd) == null ? void 0 : _b.call(_a, e);
30
- };
31
- this.handlers.pressstart = (event) => {
32
- var _a, _b;
33
- const e = event.detail;
34
- (_b = (_a = this.state.getOptions()).onPressStart) == null ? void 0 : _b.call(_a, e);
35
- };
36
- this.handlers.pressend = (event) => {
37
- var _a, _b;
38
- const e = event.detail;
39
- (_b = (_a = this.state.getOptions()).onPressEnd) == null ? void 0 : _b.call(_a, e);
40
- };
41
- this.handlers.viewenter = (event) => {
42
- var _a, _b;
43
- const target = event.detail.target;
44
- (_b = (_a = this.state.getOptions()).onViewEnter) == null ? void 0 : _b.call(_a, target);
45
- };
46
- this.handlers.viewleave = (event) => {
47
- var _a, _b;
48
- const target = event.detail.target;
49
- (_b = (_a = this.state.getOptions()).onViewLeave) == null ? void 0 : _b.call(_a, target);
50
- };
51
- Object.entries(this.handlers).forEach(([event, handler]) => {
52
- element.addEventListener(event, handler);
53
- });
54
- }
55
- unmount() {
56
- const element = this.state.element;
57
- if (!element)
58
- return;
59
- Object.entries(this.handlers).forEach(([event, handler]) => {
60
- if (handler) {
61
- element.removeEventListener(event, handler);
62
- delete this.handlers[event];
63
- }
64
- });
65
- }
66
- }
67
- export {
68
- EventFeature
69
- };
@@ -1,19 +0,0 @@
1
- import { Feature } from "../feature.mjs";
2
- class BaseGesture extends Feature {
3
- updateGestureSubscriptions() {
4
- const isActive = this.isActive();
5
- if (isActive && !this.removeGestureSubscriptions) {
6
- this.removeGestureSubscriptions = this.subscribeEvents();
7
- } else if (!isActive && this.removeGestureSubscriptions) {
8
- this.removeGestureSubscriptions();
9
- this.removeGestureSubscriptions = void 0;
10
- }
11
- }
12
- unmount() {
13
- var _a;
14
- (_a = this.removeGestureSubscriptions) == null ? void 0 : _a.call(this);
15
- }
16
- }
17
- export {
18
- BaseGesture
19
- };
@@ -1,46 +0,0 @@
1
- import { dispatchPointerEvent } from "../../utils/events.mjs";
2
- import { BaseGesture } from "./base.mjs";
3
- function mouseEvent(element, name, action) {
4
- return (event) => {
5
- if (event.pointerType && event.pointerType !== "mouse")
6
- return;
7
- action();
8
- dispatchPointerEvent(element, name, event);
9
- };
10
- }
11
- class HoverGesture extends BaseGesture {
12
- isActive() {
13
- return Boolean(this.state.getOptions().hover);
14
- }
15
- constructor(state) {
16
- super(state);
17
- this.subscribeEvents = () => {
18
- const element = this.state.element;
19
- const onEnter = mouseEvent(element, "hoverstart", () => {
20
- this.state.setActive("hover", true);
21
- });
22
- const onLeave = mouseEvent(element, "hoverend", () => {
23
- var _a;
24
- this.state.setActive("hover", false);
25
- (_a = this.state.visualElement.variantChildren) == null ? void 0 : _a.forEach((child) => {
26
- child.state.setActive("hover", false);
27
- });
28
- });
29
- element.addEventListener("pointerenter", onEnter);
30
- element.addEventListener("pointerleave", onLeave);
31
- return () => {
32
- element.removeEventListener("pointerenter", onEnter);
33
- element.removeEventListener("pointerleave", onLeave);
34
- };
35
- };
36
- }
37
- mount() {
38
- this.updateGestureSubscriptions();
39
- }
40
- update() {
41
- this.updateGestureSubscriptions();
42
- }
43
- }
44
- export {
45
- HoverGesture
46
- };
@@ -1,39 +0,0 @@
1
- import { dispatchPointerEvent } from "../../utils/events.mjs";
2
- import { inView } from "../../external/.pnpm/framer-motion@11.11.11/external/framer-motion/dist/es/render/dom/viewport/index.mjs";
3
- import { BaseGesture } from "./base.mjs";
4
- class InViewGesture extends BaseGesture {
5
- isActive() {
6
- return Boolean(this.state.getOptions().inView);
7
- }
8
- constructor(state) {
9
- super(state);
10
- this.subscribeEvents = () => {
11
- var _a;
12
- const element = this.state.element;
13
- const { once, ...viewOptions } = ((_a = this.state.getOptions()) == null ? void 0 : _a.inViewOptions) || {};
14
- return inView(element, (enterEntry) => {
15
- var _a2;
16
- this.state.setActive("inView", true);
17
- (_a2 = this.state.visualElement.variantChildren) == null ? void 0 : _a2.forEach((child) => {
18
- child.state.setActive("inView", true);
19
- });
20
- dispatchPointerEvent(element, "viewenter", enterEntry);
21
- if (!once) {
22
- return (leaveEntry) => {
23
- this.state.setActive("inView", false);
24
- dispatchPointerEvent(element, "viewleave", leaveEntry);
25
- };
26
- }
27
- }, viewOptions);
28
- };
29
- }
30
- mount() {
31
- this.updateGestureSubscriptions();
32
- }
33
- update() {
34
- this.updateGestureSubscriptions();
35
- }
36
- }
37
- export {
38
- InViewGesture
39
- };
@@ -1,37 +0,0 @@
1
- import { dispatchPointerEvent } from "../../utils/events.mjs";
2
- import { BaseGesture } from "./base.mjs";
3
- class PressGesture extends BaseGesture {
4
- isActive() {
5
- return Boolean(this.state.getOptions().press);
6
- }
7
- constructor(state) {
8
- super(state);
9
- this.subscribeEvents = () => {
10
- const element = this.state.element;
11
- const onPointerUp = (event) => {
12
- this.state.setActive("press", false);
13
- dispatchPointerEvent(element, "pressend", event);
14
- window.removeEventListener("pointerup", onPointerUp);
15
- };
16
- const onPointerDown = (event) => {
17
- this.state.setActive("press", true);
18
- dispatchPointerEvent(element, "pressstart", event);
19
- window.addEventListener("pointerup", onPointerUp);
20
- };
21
- element.addEventListener("pointerdown", onPointerDown);
22
- return () => {
23
- element.removeEventListener("pointerdown", onPointerDown);
24
- window.removeEventListener("pointerup", onPointerUp);
25
- };
26
- };
27
- }
28
- mount() {
29
- this.updateGestureSubscriptions();
30
- }
31
- update() {
32
- this.updateGestureSubscriptions();
33
- }
34
- }
35
- export {
36
- PressGesture
37
- };
@@ -1,8 +0,0 @@
1
- function dispatchPointerEvent(element, name, event) {
2
- element.dispatchEvent(
3
- new CustomEvent(name, { detail: { originalEvent: event } })
4
- );
5
- }
6
- export {
7
- dispatchPointerEvent
8
- };