motion-v 0.3.0 → 0.4.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 (275) hide show
  1. package/dist/cjs/index.js +7637 -1
  2. package/dist/es/animation/use-animate.mjs +25 -15
  3. package/dist/es/components/AnimatePresence.vue.mjs +57 -39
  4. package/dist/es/components/AnimatePresence.vue2.mjs +2 -2
  5. package/dist/es/components/LayoutGroup.vue.mjs +39 -0
  6. package/dist/es/components/LayoutGroup.vue2.mjs +4 -0
  7. package/dist/es/components/Motion.vue.mjs +87 -57
  8. package/dist/es/components/Motion.vue2.mjs +2 -2
  9. package/dist/es/components/Primitive.mjs +15 -9
  10. package/dist/es/components/Slot.mjs +28 -19
  11. package/dist/es/components/context.mjs +15 -4
  12. package/dist/es/components/group.mjs +30 -0
  13. package/dist/es/components/presence.mjs +13 -10
  14. package/dist/es/components/renderSlotFragments.mjs +10 -4
  15. package/dist/es/components/use-force-update.mjs +11 -0
  16. package/dist/es/constants/index.mjs +13 -6
  17. package/dist/es/features/events.mjs +59 -43
  18. package/dist/es/features/feature-manager.mjs +20 -17
  19. package/dist/es/features/feature.mjs +4 -4
  20. package/dist/es/features/gestures/base.mjs +12 -7
  21. package/dist/es/features/gestures/hover.mjs +25 -16
  22. package/dist/es/features/gestures/in-view.mjs +21 -15
  23. package/dist/es/features/gestures/press.mjs +22 -13
  24. package/dist/es/features/layout/config.mjs +21 -0
  25. package/dist/es/features/layout/layout.mjs +74 -0
  26. package/dist/es/features/layout/utils.mjs +8 -0
  27. package/dist/es/features/svg.mjs +14 -13
  28. package/dist/es/index.mjs +119 -102
  29. package/dist/es/node_modules/.pnpm/@vueuse_shared@12.0.0_typescript@5.5.4/node_modules/@vueuse/shared/index.mjs +6 -0
  30. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/GroupPlaybackControls.mjs +38 -28
  31. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animate/index.mjs +22 -15
  32. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animate/resolve-subjects.mjs +13 -5
  33. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animate/sequence.mjs +11 -9
  34. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animate/single-value.mjs +8 -7
  35. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animate/subject.mjs +32 -24
  36. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/AcceleratedAnimation.mjs +178 -137
  37. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/BaseAnimation.mjs +53 -37
  38. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/MainThreadAnimation.mjs +227 -100
  39. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/drivers/driver-frameloop.mjs +8 -8
  40. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/utils/accelerated-values.mjs +2 -2
  41. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/utils/can-animate.mjs +26 -19
  42. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/NativeAnimation.mjs +112 -56
  43. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/animate-elements.mjs +25 -18
  44. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/animate-style.mjs +10 -9
  45. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/easing.mjs +27 -17
  46. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/index.mjs +15 -12
  47. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/attach-timeline.mjs +4 -3
  48. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/get-final-keyframe.mjs +6 -5
  49. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/linear.mjs +10 -8
  50. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/memo-supports.mjs +7 -7
  51. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/style.mjs +6 -6
  52. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/supports-flags.mjs +2 -2
  53. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/supports-linear-easing.mjs +6 -6
  54. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/supports-partial-keyframes.mjs +6 -6
  55. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/supports-waapi.mjs +3 -3
  56. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/generators/inertia.mjs +58 -28
  57. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/generators/keyframes.mjs +28 -21
  58. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/generators/spring/find.mjs +71 -43
  59. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/generators/spring/index.mjs +64 -48
  60. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/generators/utils/calc-duration.mjs +12 -10
  61. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/generators/utils/is-generator.mjs +3 -3
  62. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/generators/utils/velocity.mjs +6 -6
  63. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/interfaces/motion-value.mjs +64 -37
  64. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/interfaces/visual-element-target.mjs +48 -34
  65. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/optimized-appear/data-id.mjs +5 -4
  66. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/optimized-appear/get-appear-id.mjs +4 -4
  67. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/sequence/create.mjs +133 -86
  68. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/sequence/utils/calc-time.mjs +12 -4
  69. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/sequence/utils/edit.mjs +20 -16
  70. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/sequence/utils/sort.mjs +11 -3
  71. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/create-visual-element.mjs +19 -15
  72. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/default-transitions.mjs +19 -8
  73. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/get-value-transition.mjs +3 -3
  74. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/is-animatable.mjs +14 -5
  75. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/is-animation-controls.mjs +3 -3
  76. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/is-dom-keyframes.mjs +3 -3
  77. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/is-keyframes-target.mjs +4 -2
  78. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/is-none.mjs +10 -4
  79. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/is-transition-defined.mjs +3 -3
  80. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/stagger.mjs +18 -16
  81. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/anticipate.mjs +3 -3
  82. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/back.mjs +9 -7
  83. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/circ.mjs +8 -6
  84. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/cubic-bezier.mjs +24 -14
  85. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/ease.mjs +7 -5
  86. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/modifiers/mirror.mjs +2 -2
  87. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/modifiers/reverse.mjs +2 -2
  88. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/steps.mjs +8 -7
  89. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/utils/create-generator-easing.mjs +8 -7
  90. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/utils/get-easing-for-segment.mjs +5 -5
  91. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/utils/is-bezier-definition.mjs +2 -2
  92. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/utils/is-easing-array.mjs +4 -2
  93. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/utils/map.mjs +32 -29
  94. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/events/add-dom-event.mjs +7 -0
  95. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/frameloop/batcher.mjs +57 -21
  96. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/frameloop/frame.mjs +7 -7
  97. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/frameloop/index-legacy.mjs +9 -5
  98. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/frameloop/microtask.mjs +6 -0
  99. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/frameloop/render-step.mjs +41 -19
  100. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/frameloop/sync-time.mjs +16 -10
  101. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/motion/features/definitions.mjs +8 -6
  102. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/motion/utils/is-forced-motion-value.mjs +5 -5
  103. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/animation/mix-values.mjs +60 -0
  104. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/geometry/conversion.mjs +14 -13
  105. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/geometry/copy.mjs +19 -0
  106. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/geometry/delta-apply.mjs +81 -0
  107. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/geometry/delta-calc.mjs +55 -0
  108. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/geometry/delta-remove.mjs +40 -0
  109. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/geometry/models.mjs +18 -5
  110. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/geometry/utils.mjs +34 -0
  111. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/node/DocumentProjectionNode.mjs +13 -0
  112. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/node/HTMLProjectionNode.mjs +28 -0
  113. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/node/create-projection-node.mjs +1086 -0
  114. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/node/state.mjs +15 -0
  115. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/shared/stack.mjs +94 -0
  116. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/styles/scale-border-radius.mjs +26 -0
  117. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/styles/scale-box-shadow.mjs +25 -0
  118. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/styles/scale-correction.mjs +6 -2
  119. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/styles/transform.mjs +36 -0
  120. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/utils/each-axis.mjs +6 -0
  121. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/utils/has-transform.mjs +20 -0
  122. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/utils/measure.mjs +4 -4
  123. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/VisualElement.mjs +263 -117
  124. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/DOMKeyframesResolver.mjs +81 -45
  125. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/DOMVisualElement.mjs +13 -11
  126. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/resize/handle-element.mjs +49 -33
  127. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/resize/handle-window.mjs +22 -14
  128. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/resize/index.mjs +5 -5
  129. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/index.mjs +53 -36
  130. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/info.mjs +29 -16
  131. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/observe.mjs +14 -8
  132. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/edge.mjs +25 -9
  133. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/index.mjs +32 -20
  134. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/inset.mjs +32 -21
  135. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/offset.mjs +20 -6
  136. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/presets.mjs +2 -2
  137. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/on-scroll-handler.mjs +31 -15
  138. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/supports.mjs +3 -3
  139. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/track.mjs +60 -33
  140. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/utils/camel-to-dash.mjs +2 -2
  141. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/utils/css-variables-conversion.mjs +21 -21
  142. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/utils/is-css-variable.mjs +12 -3
  143. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/utils/is-svg-element.mjs +3 -3
  144. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/utils/resolve-element.mjs +20 -9
  145. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/utils/unit-conversion.mjs +47 -34
  146. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/animatable-none.mjs +9 -7
  147. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/defaults.mjs +21 -20
  148. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/dimensions.mjs +8 -7
  149. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/find.mjs +7 -6
  150. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/get-as-type.mjs +4 -2
  151. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/number-browser.mjs +34 -34
  152. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/number.mjs +14 -14
  153. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/test.mjs +2 -2
  154. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/transform.mjs +28 -28
  155. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/type-auto.mjs +4 -4
  156. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/type-int.mjs +4 -4
  157. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/viewport/index.mjs +29 -17
  158. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/html/HTMLVisualElement.mjs +41 -32
  159. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/html/utils/build-styles.mjs +33 -20
  160. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/html/utils/build-transform.mjs +36 -20
  161. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/html/utils/make-none-animatable.mjs +18 -12
  162. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/html/utils/render.mjs +6 -5
  163. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/html/utils/scrape-motion-values.mjs +13 -9
  164. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/html/utils/transform.mjs +5 -4
  165. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/object/ObjectVisualElement.mjs +24 -20
  166. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/store.mjs +2 -2
  167. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/svg/SVGVisualElement.mjs +33 -28
  168. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/svg/utils/build-attrs.mjs +40 -20
  169. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/svg/utils/camel-case-attrs.mjs +2 -2
  170. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/svg/utils/is-svg-tag.mjs +2 -2
  171. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/svg/utils/path.mjs +12 -10
  172. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/svg/utils/render.mjs +9 -8
  173. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/svg/utils/scrape-motion-values.mjs +12 -11
  174. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/svg/utils/transform-origin.mjs +8 -7
  175. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/KeyframesResolver.mjs +105 -47
  176. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/compare-by-depth.mjs +4 -0
  177. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/flat-tree.mjs +24 -0
  178. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/is-controlling-variants.mjs +9 -9
  179. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/is-variant-label.mjs +3 -3
  180. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/motion-values.mjs +31 -20
  181. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/resolve-dynamic-variants.mjs +5 -5
  182. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/resolve-variants.mjs +19 -14
  183. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/setters.mjs +17 -13
  184. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/variant-props.mjs +5 -4
  185. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/GlobalConfig.mjs +4 -4
  186. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/array.mjs +9 -7
  187. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/clamp.mjs +8 -2
  188. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/delay.mjs +17 -12
  189. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/distance.mjs +7 -6
  190. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/errors.mjs +17 -10
  191. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/hsla-to-rgba.mjs +32 -15
  192. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/interpolate.mjs +42 -31
  193. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/is-browser.mjs +2 -2
  194. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/is-numerical-string.mjs +2 -2
  195. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/is-zero-value-string.mjs +2 -2
  196. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/memo.mjs +8 -4
  197. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/mix/color.mjs +40 -25
  198. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/mix/complex.mjs +73 -41
  199. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/mix/immediate.mjs +3 -3
  200. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/mix/index.mjs +9 -5
  201. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/mix/number.mjs +4 -2
  202. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/mix/visibility.mjs +9 -5
  203. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/noop.mjs +2 -2
  204. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/offsets/default.mjs +6 -5
  205. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/offsets/fill.mjs +8 -8
  206. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/offsets/time.mjs +3 -3
  207. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/pipe.mjs +3 -2
  208. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/progress.mjs +4 -4
  209. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/reduced-motion/index.mjs +15 -10
  210. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/reduced-motion/state.mjs +4 -3
  211. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/resolve-value.mjs +9 -3
  212. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/subscription-manager.mjs +18 -15
  213. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/time-conversion.mjs +4 -3
  214. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/transform.mjs +17 -8
  215. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/velocity-per-second.mjs +3 -3
  216. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/warn-once.mjs +7 -4
  217. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/wrap.mjs +4 -4
  218. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/index.mjs +125 -53
  219. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/color/hex.mjs +32 -14
  220. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/color/hsla.mjs +11 -9
  221. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/color/index.mjs +18 -8
  222. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/color/rgba.mjs +15 -13
  223. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/color/utils.mjs +16 -13
  224. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/complex/filter.mjs +22 -19
  225. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/complex/index.mjs +71 -36
  226. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/numbers/index.mjs +14 -12
  227. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/numbers/units.mjs +19 -13
  228. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/utils/color-regex.mjs +2 -2
  229. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/utils/float-regex.mjs +2 -2
  230. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/utils/is-nullish.mjs +3 -3
  231. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/utils/sanitize.mjs +2 -2
  232. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/utils/single-color-regex.mjs +2 -2
  233. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/use-will-change/add-will-change.mjs +7 -6
  234. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/use-will-change/is.mjs +4 -4
  235. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs +2 -2
  236. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/utils/resolve-motion-value.mjs +9 -0
  237. package/dist/es/node_modules/.pnpm/hey-listen@1.0.8/node_modules/hey-listen/dist/hey-listen.es.mjs +17 -10
  238. package/dist/es/state/create-visual-element.mjs +9 -0
  239. package/dist/es/state/event.mjs +3 -3
  240. package/dist/es/state/motion-state.mjs +145 -91
  241. package/dist/es/state/schedule.mjs +23 -15
  242. package/dist/es/state/style.mjs +105 -81
  243. package/dist/es/state/transform.mjs +37 -29
  244. package/dist/es/state/utils.mjs +51 -45
  245. package/dist/es/utils/createContext.mjs +19 -11
  246. package/dist/es/utils/events.mjs +4 -4
  247. package/dist/es/utils/motion-value.mjs +3 -3
  248. package/dist/es/utils/use-animation-frame.mjs +17 -11
  249. package/dist/es/utils/use-in-view.mjs +20 -14
  250. package/dist/es/value/use-combine-values.mjs +22 -17
  251. package/dist/es/value/use-computed.mjs +17 -10
  252. package/dist/es/value/use-motion-template.mjs +17 -14
  253. package/dist/es/value/use-motion-value-event.mjs +11 -0
  254. package/dist/es/value/use-scroll.mjs +42 -33
  255. package/dist/es/value/use-spring.mjs +48 -28
  256. package/dist/es/value/use-time.mjs +7 -6
  257. package/dist/es/value/use-transform.mjs +24 -20
  258. package/dist/es/value/use-velocity.mjs +20 -0
  259. package/dist/src/components/LayoutGroup.d.ts +30 -0
  260. package/dist/src/components/context.d.ts +17 -0
  261. package/dist/src/components/group.d.ts +7 -0
  262. package/dist/src/components/use-force-update.d.ts +2 -0
  263. package/dist/src/features/index.d.ts +1 -0
  264. package/dist/src/features/layout/config.d.ts +8 -0
  265. package/dist/src/features/layout/layout.d.ts +10 -0
  266. package/dist/src/features/layout/types.d.ts +7 -0
  267. package/dist/src/features/layout/utils.d.ts +4 -0
  268. package/dist/src/index.d.ts +2 -0
  269. package/dist/src/state/create-visual-element.d.ts +1 -0
  270. package/dist/src/state/motion-state.d.ts +1 -2
  271. package/dist/src/types/state.d.ts +2 -1
  272. package/dist/src/value/index.d.ts +4 -0
  273. package/package.json +2 -1
  274. package/dist/es/node_modules/.pnpm/@vueuse_shared@11.1.0_vue@3.4.38_typescript@5.5.4_/node_modules/@vueuse/shared/index.mjs +0 -6
  275. package/dist/src/components/usePrimitiveElement.d.ts +0 -5
@@ -0,0 +1,81 @@
1
+ import { mixNumber } from "../../utils/mix/number.mjs";
2
+ import { hasTransform } from "../utils/has-transform.mjs";
3
+ function scalePoint(point, scale, originPoint) {
4
+ const distanceFromOrigin = point - originPoint;
5
+ const scaled = scale * distanceFromOrigin;
6
+ return originPoint + scaled;
7
+ }
8
+ function applyPointDelta(point, translate, scale, originPoint, boxScale) {
9
+ if (boxScale !== void 0) {
10
+ point = scalePoint(point, boxScale, originPoint);
11
+ }
12
+ return scalePoint(point, scale, originPoint) + translate;
13
+ }
14
+ function applyAxisDelta(axis, translate = 0, scale = 1, originPoint, boxScale) {
15
+ axis.min = applyPointDelta(axis.min, translate, scale, originPoint, boxScale);
16
+ axis.max = applyPointDelta(axis.max, translate, scale, originPoint, boxScale);
17
+ }
18
+ function applyBoxDelta(box, { x, y }) {
19
+ applyAxisDelta(box.x, x.translate, x.scale, x.originPoint);
20
+ applyAxisDelta(box.y, y.translate, y.scale, y.originPoint);
21
+ }
22
+ const TREE_SCALE_SNAP_MIN = 0.999999999999;
23
+ const TREE_SCALE_SNAP_MAX = 1.0000000000001;
24
+ function applyTreeDeltas(box, treeScale, treePath, isSharedTransition = false) {
25
+ const treeLength = treePath.length;
26
+ if (!treeLength)
27
+ return;
28
+ treeScale.x = treeScale.y = 1;
29
+ let node;
30
+ let delta;
31
+ for (let i = 0; i < treeLength; i++) {
32
+ node = treePath[i];
33
+ delta = node.projectionDelta;
34
+ const { visualElement } = node.options;
35
+ if (visualElement && visualElement.props.style && visualElement.props.style.display === "contents") {
36
+ continue;
37
+ }
38
+ if (isSharedTransition && node.options.layoutScroll && node.scroll && node !== node.root) {
39
+ transformBox(box, {
40
+ x: -node.scroll.offset.x,
41
+ y: -node.scroll.offset.y
42
+ });
43
+ }
44
+ if (delta) {
45
+ treeScale.x *= delta.x.scale;
46
+ treeScale.y *= delta.y.scale;
47
+ applyBoxDelta(box, delta);
48
+ }
49
+ if (isSharedTransition && hasTransform(node.latestValues)) {
50
+ transformBox(box, node.latestValues);
51
+ }
52
+ }
53
+ if (treeScale.x < TREE_SCALE_SNAP_MAX && treeScale.x > TREE_SCALE_SNAP_MIN) {
54
+ treeScale.x = 1;
55
+ }
56
+ if (treeScale.y < TREE_SCALE_SNAP_MAX && treeScale.y > TREE_SCALE_SNAP_MIN) {
57
+ treeScale.y = 1;
58
+ }
59
+ }
60
+ function translateAxis(axis, distance) {
61
+ axis.min = axis.min + distance;
62
+ axis.max = axis.max + distance;
63
+ }
64
+ function transformAxis(axis, axisTranslate, axisScale, boxScale, axisOrigin = 0.5) {
65
+ const originPoint = mixNumber(axis.min, axis.max, axisOrigin);
66
+ applyAxisDelta(axis, axisTranslate, axisScale, originPoint, boxScale);
67
+ }
68
+ function transformBox(box, transform) {
69
+ transformAxis(box.x, transform.x, transform.scaleX, transform.scale, transform.originX);
70
+ transformAxis(box.y, transform.y, transform.scaleY, transform.scale, transform.originY);
71
+ }
72
+ export {
73
+ applyAxisDelta,
74
+ applyBoxDelta,
75
+ applyPointDelta,
76
+ applyTreeDeltas,
77
+ scalePoint,
78
+ transformAxis,
79
+ transformBox,
80
+ translateAxis
81
+ };
@@ -0,0 +1,55 @@
1
+ import { mixNumber } from "../../utils/mix/number.mjs";
2
+ const SCALE_PRECISION = 1e-4;
3
+ const SCALE_MIN = 1 - SCALE_PRECISION;
4
+ const SCALE_MAX = 1 + SCALE_PRECISION;
5
+ const TRANSLATE_PRECISION = 0.01;
6
+ const TRANSLATE_MIN = 0 - TRANSLATE_PRECISION;
7
+ const TRANSLATE_MAX = 0 + TRANSLATE_PRECISION;
8
+ function calcLength(axis) {
9
+ return axis.max - axis.min;
10
+ }
11
+ function isNear(value, target, maxDistance) {
12
+ return Math.abs(value - target) <= maxDistance;
13
+ }
14
+ function calcAxisDelta(delta, source, target, origin = 0.5) {
15
+ delta.origin = origin;
16
+ delta.originPoint = mixNumber(source.min, source.max, delta.origin);
17
+ delta.scale = calcLength(target) / calcLength(source);
18
+ delta.translate = mixNumber(target.min, target.max, delta.origin) - delta.originPoint;
19
+ if (delta.scale >= SCALE_MIN && delta.scale <= SCALE_MAX || isNaN(delta.scale)) {
20
+ delta.scale = 1;
21
+ }
22
+ if (delta.translate >= TRANSLATE_MIN && delta.translate <= TRANSLATE_MAX || isNaN(delta.translate)) {
23
+ delta.translate = 0;
24
+ }
25
+ }
26
+ function calcBoxDelta(delta, source, target, origin) {
27
+ calcAxisDelta(delta.x, source.x, target.x, origin ? origin.originX : void 0);
28
+ calcAxisDelta(delta.y, source.y, target.y, origin ? origin.originY : void 0);
29
+ }
30
+ function calcRelativeAxis(target, relative, parent) {
31
+ target.min = parent.min + relative.min;
32
+ target.max = target.min + calcLength(relative);
33
+ }
34
+ function calcRelativeBox(target, relative, parent) {
35
+ calcRelativeAxis(target.x, relative.x, parent.x);
36
+ calcRelativeAxis(target.y, relative.y, parent.y);
37
+ }
38
+ function calcRelativeAxisPosition(target, layout, parent) {
39
+ target.min = layout.min - parent.min;
40
+ target.max = target.min + calcLength(layout);
41
+ }
42
+ function calcRelativePosition(target, layout, parent) {
43
+ calcRelativeAxisPosition(target.x, layout.x, parent.x);
44
+ calcRelativeAxisPosition(target.y, layout.y, parent.y);
45
+ }
46
+ export {
47
+ calcAxisDelta,
48
+ calcBoxDelta,
49
+ calcLength,
50
+ calcRelativeAxis,
51
+ calcRelativeAxisPosition,
52
+ calcRelativeBox,
53
+ calcRelativePosition,
54
+ isNear
55
+ };
@@ -0,0 +1,40 @@
1
+ import { mixNumber } from "../../utils/mix/number.mjs";
2
+ import { percent } from "../../value/types/numbers/units.mjs";
3
+ import { scalePoint } from "./delta-apply.mjs";
4
+ function removePointDelta(point, translate, scale, originPoint, boxScale) {
5
+ point -= translate;
6
+ point = scalePoint(point, 1 / scale, originPoint);
7
+ if (boxScale !== void 0) {
8
+ point = scalePoint(point, 1 / boxScale, originPoint);
9
+ }
10
+ return point;
11
+ }
12
+ function removeAxisDelta(axis, translate = 0, scale = 1, origin = 0.5, boxScale, originAxis = axis, sourceAxis = axis) {
13
+ if (percent.test(translate)) {
14
+ translate = parseFloat(translate);
15
+ const relativeProgress = mixNumber(sourceAxis.min, sourceAxis.max, translate / 100);
16
+ translate = relativeProgress - sourceAxis.min;
17
+ }
18
+ if (typeof translate !== "number")
19
+ return;
20
+ let originPoint = mixNumber(originAxis.min, originAxis.max, origin);
21
+ if (axis === originAxis)
22
+ originPoint -= translate;
23
+ axis.min = removePointDelta(axis.min, translate, scale, originPoint, boxScale);
24
+ axis.max = removePointDelta(axis.max, translate, scale, originPoint, boxScale);
25
+ }
26
+ function removeAxisTransforms(axis, transforms, [key, scaleKey, originKey], origin, sourceAxis) {
27
+ removeAxisDelta(axis, transforms[key], transforms[scaleKey], transforms[originKey], transforms.scale, origin, sourceAxis);
28
+ }
29
+ const xKeys = ["x", "scaleX", "originX"];
30
+ const yKeys = ["y", "scaleY", "originY"];
31
+ function removeBoxTransforms(box, transforms, originBox, sourceBox) {
32
+ removeAxisTransforms(box.x, transforms, xKeys, originBox ? originBox.x : void 0, sourceBox ? sourceBox.x : void 0);
33
+ removeAxisTransforms(box.y, transforms, yKeys, originBox ? originBox.y : void 0, sourceBox ? sourceBox.y : void 0);
34
+ }
35
+ export {
36
+ removeAxisDelta,
37
+ removeAxisTransforms,
38
+ removeBoxTransforms,
39
+ removePointDelta
40
+ };
@@ -1,8 +1,21 @@
1
- const e = () => ({ min: 0, max: 0 }), t = () => ({
2
- x: e(),
3
- y: e()
1
+ const createAxisDelta = () => ({
2
+ translate: 0,
3
+ scale: 1,
4
+ origin: 0,
5
+ originPoint: 0
6
+ });
7
+ const createDelta = () => ({
8
+ x: createAxisDelta(),
9
+ y: createAxisDelta()
10
+ });
11
+ const createAxis = () => ({ min: 0, max: 0 });
12
+ const createBox = () => ({
13
+ x: createAxis(),
14
+ y: createAxis()
4
15
  });
5
16
  export {
6
- e as createAxis,
7
- t as createBox
17
+ createAxis,
18
+ createAxisDelta,
19
+ createBox,
20
+ createDelta
8
21
  };
@@ -0,0 +1,34 @@
1
+ import { calcLength } from "./delta-calc.mjs";
2
+ function isAxisDeltaZero(delta) {
3
+ return delta.translate === 0 && delta.scale === 1;
4
+ }
5
+ function isDeltaZero(delta) {
6
+ return isAxisDeltaZero(delta.x) && isAxisDeltaZero(delta.y);
7
+ }
8
+ function axisEquals(a, b) {
9
+ return a.min === b.min && a.max === b.max;
10
+ }
11
+ function boxEquals(a, b) {
12
+ return axisEquals(a.x, b.x) && axisEquals(a.y, b.y);
13
+ }
14
+ function axisEqualsRounded(a, b) {
15
+ return Math.round(a.min) === Math.round(b.min) && Math.round(a.max) === Math.round(b.max);
16
+ }
17
+ function boxEqualsRounded(a, b) {
18
+ return axisEqualsRounded(a.x, b.x) && axisEqualsRounded(a.y, b.y);
19
+ }
20
+ function aspectRatio(box) {
21
+ return calcLength(box.x) / calcLength(box.y);
22
+ }
23
+ function axisDeltaEquals(a, b) {
24
+ return a.translate === b.translate && a.scale === b.scale && a.originPoint === b.originPoint;
25
+ }
26
+ export {
27
+ aspectRatio,
28
+ axisDeltaEquals,
29
+ axisEquals,
30
+ axisEqualsRounded,
31
+ boxEquals,
32
+ boxEqualsRounded,
33
+ isDeltaZero
34
+ };
@@ -0,0 +1,13 @@
1
+ import { createProjectionNode } from "./create-projection-node.mjs";
2
+ import { addDomEvent } from "../../events/add-dom-event.mjs";
3
+ const DocumentProjectionNode = createProjectionNode({
4
+ attachResizeListener: (ref, notify) => addDomEvent(ref, "resize", notify),
5
+ measureScroll: () => ({
6
+ x: document.documentElement.scrollLeft || document.body.scrollLeft,
7
+ y: document.documentElement.scrollTop || document.body.scrollTop
8
+ }),
9
+ checkIsScrollRoot: () => true
10
+ });
11
+ export {
12
+ DocumentProjectionNode
13
+ };
@@ -0,0 +1,28 @@
1
+ import { createProjectionNode } from "./create-projection-node.mjs";
2
+ import { DocumentProjectionNode } from "./DocumentProjectionNode.mjs";
3
+ const rootProjectionNode = {
4
+ current: void 0
5
+ };
6
+ const HTMLProjectionNode = createProjectionNode({
7
+ measureScroll: (instance) => ({
8
+ x: instance.scrollLeft,
9
+ y: instance.scrollTop
10
+ }),
11
+ defaultParent: () => {
12
+ if (!rootProjectionNode.current) {
13
+ const documentNode = new DocumentProjectionNode({});
14
+ documentNode.mount(window);
15
+ documentNode.setOptions({ layoutScroll: true });
16
+ rootProjectionNode.current = documentNode;
17
+ }
18
+ return rootProjectionNode.current;
19
+ },
20
+ resetTransform: (instance, value) => {
21
+ instance.style.transform = value !== void 0 ? value : "none";
22
+ },
23
+ checkIsScrollRoot: (instance) => Boolean(window.getComputedStyle(instance).position === "fixed")
24
+ });
25
+ export {
26
+ HTMLProjectionNode,
27
+ rootProjectionNode
28
+ };