motion-v 0.2.5 → 0.3.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 (244) hide show
  1. package/dist/cjs/index.js +1 -0
  2. package/dist/es/animation/use-animate.mjs +21 -0
  3. package/dist/es/components/AnimatePresence.vue.mjs +53 -0
  4. package/dist/es/components/AnimatePresence.vue2.mjs +4 -0
  5. package/dist/es/components/Motion.vue.mjs +98 -0
  6. package/dist/es/components/Motion.vue2.mjs +4 -0
  7. package/dist/es/components/Primitive.mjs +23 -0
  8. package/dist/es/components/Slot.mjs +27 -0
  9. package/dist/es/components/context.mjs +6 -0
  10. package/dist/es/components/presence.mjs +13 -0
  11. package/dist/es/components/renderSlotFragments.mjs +7 -0
  12. package/dist/es/constants/index.mjs +19 -0
  13. package/dist/es/features/events.mjs +53 -0
  14. package/dist/es/features/feature-manager.mjs +28 -0
  15. package/dist/es/features/feature.mjs +10 -0
  16. package/dist/es/features/gestures/base.mjs +14 -0
  17. package/dist/es/features/gestures/hover.mjs +33 -0
  18. package/dist/es/features/gestures/in-view.mjs +29 -0
  19. package/dist/es/features/gestures/press.mjs +28 -0
  20. package/dist/es/features/svg.mjs +30 -0
  21. package/dist/es/index.mjs +104 -0
  22. 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 +6 -0
  23. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/GroupPlaybackControls.mjs +66 -0
  24. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animate/index.mjs +20 -0
  25. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animate/resolve-subjects.mjs +8 -0
  26. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animate/sequence.mjs +12 -0
  27. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animate/single-value.mjs +10 -0
  28. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animate/subject.mjs +30 -0
  29. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/AcceleratedAnimation.mjs +202 -0
  30. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/BaseAnimation.mjs +79 -0
  31. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/MainThreadAnimation.mjs +148 -0
  32. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/drivers/driver-frameloop.mjs +17 -0
  33. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/utils/accelerated-values.mjs +12 -0
  34. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/utils/can-animate.mjs +23 -0
  35. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/NativeAnimation.mjs +106 -0
  36. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/animate-elements.mjs +24 -0
  37. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/animate-style.mjs +12 -0
  38. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/easing.mjs +27 -0
  39. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/index.mjs +17 -0
  40. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/attach-timeline.mjs +6 -0
  41. 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 +8 -0
  42. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/linear.mjs +11 -0
  43. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/memo-supports.mjs +12 -0
  44. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/style.mjs +10 -0
  45. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/supports-flags.mjs +6 -0
  46. 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 +12 -0
  47. 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 +12 -0
  48. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/supports-waapi.mjs +5 -0
  49. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/generators/inertia.mjs +37 -0
  50. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/generators/keyframes.mjs +30 -0
  51. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/generators/spring/find.mjs +55 -0
  52. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/generators/spring/index.mjs +67 -0
  53. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/generators/utils/calc-duration.mjs +13 -0
  54. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/generators/utils/is-generator.mjs +6 -0
  55. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/generators/utils/velocity.mjs +9 -0
  56. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/interfaces/motion-value.mjs +46 -0
  57. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/interfaces/visual-element-target.mjs +45 -0
  58. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/optimized-appear/data-id.mjs +6 -0
  59. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/optimized-appear/get-appear-id.mjs +7 -0
  60. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/sequence/create.mjs +106 -0
  61. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/sequence/utils/calc-time.mjs +7 -0
  62. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/sequence/utils/edit.mjs +22 -0
  63. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/sequence/utils/sort.mjs +6 -0
  64. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/create-visual-element.mjs +39 -0
  65. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/default-transitions.mjs +22 -0
  66. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/get-value-transition.mjs +6 -0
  67. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/is-animatable.mjs +7 -0
  68. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/is-animation-controls.mjs +6 -0
  69. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/is-dom-keyframes.mjs +6 -0
  70. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/is-keyframes-target.mjs +4 -0
  71. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/is-none.mjs +7 -0
  72. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/is-transition-defined.mjs +6 -0
  73. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/stagger.mjs +24 -0
  74. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/anticipate.mjs +5 -0
  75. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/back.mjs +9 -0
  76. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/circ.mjs +8 -0
  77. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/cubic-bezier.mjs +18 -0
  78. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/ease.mjs +7 -0
  79. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/modifiers/mirror.mjs +4 -0
  80. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/modifiers/reverse.mjs +4 -0
  81. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/steps.mjs +11 -0
  82. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/utils/create-generator-easing.mjs +13 -0
  83. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/utils/get-easing-for-segment.mjs +8 -0
  84. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/utils/is-bezier-definition.mjs +4 -0
  85. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/utils/is-easing-array.mjs +4 -0
  86. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/utils/map.mjs +32 -0
  87. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/frameloop/batcher.mjs +39 -0
  88. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/frameloop/frame.mjs +9 -0
  89. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/frameloop/index-legacy.mjs +7 -0
  90. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/frameloop/render-step.mjs +41 -0
  91. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/frameloop/sync-time.mjs +15 -0
  92. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/motion/features/definitions.mjs +27 -0
  93. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/motion/utils/is-forced-motion-value.mjs +8 -0
  94. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/geometry/conversion.mjs +21 -0
  95. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/geometry/models.mjs +8 -0
  96. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/styles/scale-correction.mjs +4 -0
  97. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/utils/measure.mjs +7 -0
  98. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/VisualElement.mjs +226 -0
  99. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/DOMKeyframesResolver.mjs +65 -0
  100. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/DOMVisualElement.mjs +19 -0
  101. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/resize/handle-element.mjs +46 -0
  102. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/resize/handle-window.mjs +23 -0
  103. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/resize/index.mjs +8 -0
  104. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/index.mjs +46 -0
  105. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/info.mjs +38 -0
  106. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/observe.mjs +12 -0
  107. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/edge.mjs +17 -0
  108. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/index.mjs +26 -0
  109. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/inset.mjs +25 -0
  110. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/offset.mjs +9 -0
  111. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/presets.mjs +21 -0
  112. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/on-scroll-handler.mjs +23 -0
  113. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/supports.mjs +5 -0
  114. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/track.mjs +40 -0
  115. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/utils/camel-to-dash.mjs +4 -0
  116. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/utils/css-variables-conversion.mjs +31 -0
  117. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/utils/is-css-variable.mjs +5 -0
  118. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/utils/is-svg-element.mjs +6 -0
  119. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/utils/resolve-element.mjs +12 -0
  120. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/utils/unit-conversion.mjs +52 -0
  121. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/animatable-none.mjs +10 -0
  122. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/defaults.mjs +24 -0
  123. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/dimensions.mjs +9 -0
  124. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/find.mjs +8 -0
  125. 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 -0
  126. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/number-browser.mjs +41 -0
  127. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/number.mjs +18 -0
  128. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/test.mjs +4 -0
  129. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/transform.mjs +31 -0
  130. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/type-auto.mjs +7 -0
  131. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/value-types/type-int.mjs +8 -0
  132. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/viewport/index.mjs +25 -0
  133. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/html/HTMLVisualElement.mjs +46 -0
  134. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/html/utils/build-styles.mjs +29 -0
  135. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/html/utils/build-transform.mjs +31 -0
  136. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/html/utils/make-none-animatable.mjs +16 -0
  137. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/html/utils/render.mjs +8 -0
  138. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/html/utils/scrape-motion-values.mjs +12 -0
  139. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/html/utils/transform.mjs +23 -0
  140. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/object/ObjectVisualElement.mjs +37 -0
  141. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/store.mjs +4 -0
  142. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/svg/SVGVisualElement.mjs +40 -0
  143. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/svg/utils/build-attrs.mjs +26 -0
  144. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/svg/utils/camel-case-attrs.mjs +28 -0
  145. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/svg/utils/is-svg-tag.mjs +4 -0
  146. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/svg/utils/path.mjs +18 -0
  147. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/svg/utils/render.mjs +11 -0
  148. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/svg/utils/scrape-motion-values.mjs +15 -0
  149. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/svg/utils/transform-origin.mjs +11 -0
  150. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/KeyframesResolver.mjs +76 -0
  151. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/is-controlling-variants.mjs +13 -0
  152. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/is-variant-label.mjs +6 -0
  153. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/motion-values.mjs +26 -0
  154. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/resolve-dynamic-variants.mjs +8 -0
  155. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/resolve-variants.mjs +20 -0
  156. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/setters.mjs +18 -0
  157. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/variant-props.mjs +13 -0
  158. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/GlobalConfig.mjs +7 -0
  159. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/array.mjs +11 -0
  160. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/clamp.mjs +4 -0
  161. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/delay.mjs +17 -0
  162. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/distance.mjs +9 -0
  163. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/errors.mjs +12 -0
  164. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/hsla-to-rgba.mjs +22 -0
  165. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/interpolate.mjs +38 -0
  166. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/is-browser.mjs +4 -0
  167. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/is-numerical-string.mjs +4 -0
  168. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/is-zero-value-string.mjs +4 -0
  169. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/memo.mjs +7 -0
  170. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/mix/color.mjs +29 -0
  171. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/mix/complex.mjs +52 -0
  172. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/mix/immediate.mjs +6 -0
  173. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/mix/index.mjs +8 -0
  174. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/mix/number.mjs +4 -0
  175. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/mix/visibility.mjs +8 -0
  176. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/noop.mjs +4 -0
  177. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/offsets/default.mjs +8 -0
  178. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/offsets/fill.mjs +12 -0
  179. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/offsets/time.mjs +6 -0
  180. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/pipe.mjs +4 -0
  181. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/progress.mjs +7 -0
  182. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/reduced-motion/index.mjs +13 -0
  183. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/reduced-motion/state.mjs +5 -0
  184. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/resolve-value.mjs +5 -0
  185. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/subscription-manager.mjs +29 -0
  186. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/time-conversion.mjs +5 -0
  187. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/transform.mjs +12 -0
  188. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/velocity-per-second.mjs +6 -0
  189. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/warn-once.mjs +7 -0
  190. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/wrap.mjs +7 -0
  191. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/index.mjs +210 -0
  192. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/color/hex.mjs +19 -0
  193. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/color/hsla.mjs +12 -0
  194. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/color/index.mjs +11 -0
  195. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/color/rgba.mjs +16 -0
  196. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/color/utils.mjs +18 -0
  197. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/complex/filter.mjs +24 -0
  198. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/complex/index.mjs +49 -0
  199. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/numbers/index.mjs +17 -0
  200. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/numbers/units.mjs +17 -0
  201. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/utils/color-regex.mjs +4 -0
  202. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/utils/float-regex.mjs +4 -0
  203. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/utils/is-nullish.mjs +6 -0
  204. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/utils/sanitize.mjs +4 -0
  205. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/utils/single-color-regex.mjs +4 -0
  206. 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 +9 -0
  207. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/use-will-change/is.mjs +7 -0
  208. package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs +4 -0
  209. package/dist/es/node_modules/.pnpm/hey-listen@1.0.8/node_modules/hey-listen/dist/hey-listen.es.mjs +13 -0
  210. package/dist/es/state/event.mjs +6 -0
  211. package/dist/es/state/motion-state.mjs +134 -0
  212. package/dist/es/state/schedule.mjs +22 -0
  213. package/dist/es/state/style.mjs +93 -0
  214. package/dist/es/state/transform.mjs +59 -0
  215. package/dist/es/state/utils.mjs +113 -0
  216. package/dist/es/utils/createContext.mjs +17 -0
  217. package/dist/es/utils/events.mjs +8 -0
  218. package/dist/es/utils/motion-value.mjs +6 -0
  219. package/dist/es/utils/use-animation-frame.mjs +14 -0
  220. package/dist/es/utils/use-in-view.mjs +19 -0
  221. package/dist/es/value/use-combine-values.mjs +22 -0
  222. package/dist/es/value/use-computed.mjs +13 -0
  223. package/dist/es/value/use-motion-template.mjs +19 -0
  224. package/dist/es/value/use-scroll.mjs +47 -0
  225. package/dist/es/value/use-spring.mjs +39 -0
  226. package/dist/es/value/use-time.mjs +9 -0
  227. package/dist/es/value/use-transform.mjs +25 -0
  228. package/dist/src/animation/index.d.ts +1 -0
  229. package/dist/src/animation/use-animate.d.ts +8 -0
  230. package/dist/src/components/Motion.d.ts +3 -3
  231. package/dist/src/features/events.d.ts +1 -1
  232. package/dist/src/features/feature-manager.d.ts +9 -0
  233. package/dist/src/features/feature.d.ts +0 -7
  234. package/dist/src/features/index.d.ts +2 -1
  235. package/dist/src/index.d.ts +3 -0
  236. package/dist/src/state/motion-state.d.ts +4 -4
  237. package/dist/src/state/utils.d.ts +1 -1
  238. package/dist/src/types/state.d.ts +3 -2
  239. package/dist/src/utils/index.d.ts +2 -0
  240. package/dist/src/utils/use-dom-ref.d.ts +1 -0
  241. package/dist/src/utils/use-in-view.d.ts +3 -0
  242. package/package.json +7 -7
  243. package/dist/index.js +0 -4002
  244. package/dist/index.umd.cjs +0 -1
@@ -0,0 +1,148 @@
1
+ import { KeyframeResolver as x } from "../../render/utils/KeyframesResolver.mjs";
2
+ import { spring as G } from "../generators/spring/index.mjs";
3
+ import { inertia as b } from "../generators/inertia.mjs";
4
+ import { keyframes as y } from "../generators/keyframes.mjs";
5
+ import { BaseAnimation as I } from "./BaseAnimation.mjs";
6
+ import { pipe as O } from "../../utils/pipe.mjs";
7
+ import { mix as _ } from "../../utils/mix/index.mjs";
8
+ import { calcGeneratorDuration as A } from "../generators/utils/calc-duration.mjs";
9
+ import { millisecondsToSeconds as D, secondsToMilliseconds as V } from "../../utils/time-conversion.mjs";
10
+ import { clamp as B } from "../../utils/clamp.mjs";
11
+ import { invariant as C } from "../../utils/errors.mjs";
12
+ import { frameloopDriver as E } from "./drivers/driver-frameloop.mjs";
13
+ import { getFinalKeyframe as N } from "./waapi/utils/get-final-keyframe.mjs";
14
+ import { isGenerator as U } from "../generators/utils/is-generator.mjs";
15
+ const W = {
16
+ decay: b,
17
+ inertia: b,
18
+ tween: y,
19
+ keyframes: y,
20
+ spring: G
21
+ }, j = (p) => p / 100;
22
+ class q extends I {
23
+ constructor(t) {
24
+ super(t), this.holdTime = null, this.cancelTime = null, this.currentTime = 0, this.playbackSpeed = 1, this.pendingPlayState = "running", this.startTime = null, this.state = "idle", this.stop = () => {
25
+ if (this.resolver.cancel(), this.isStopped = !0, this.state === "idle")
26
+ return;
27
+ this.teardown();
28
+ const { onStop: n } = this.options;
29
+ n && n();
30
+ };
31
+ const { name: i, motionValue: r, element: e, keyframes: o } = this.options, u = (e == null ? void 0 : e.KeyframeResolver) || x, a = (n, l) => this.onKeyframesResolved(n, l);
32
+ this.resolver = new u(o, a, i, r, e), this.resolver.scheduleResolve();
33
+ }
34
+ initPlayback(t) {
35
+ const { type: i = "keyframes", repeat: r = 0, repeatDelay: e = 0, repeatType: o, velocity: u = 0 } = this.options, a = U(i) ? i : W[i] || y;
36
+ let n, l;
37
+ a !== y && typeof t[0] != "number" && (process.env.NODE_ENV !== "production" && C(t.length === 2, `Only two keyframes currently supported with spring and inertia animations. Trying to animate ${t}`), n = O(j, _(t[0], t[1])), t = [0, 100]);
38
+ const s = a({ ...this.options, keyframes: t });
39
+ o === "mirror" && (l = a({
40
+ ...this.options,
41
+ keyframes: [...t].reverse(),
42
+ velocity: -u
43
+ })), s.calculatedDuration === null && (s.calculatedDuration = A(s));
44
+ const { calculatedDuration: d } = s, f = d + e, T = f * (r + 1) - e;
45
+ return {
46
+ generator: s,
47
+ mirroredGenerator: l,
48
+ mapPercentToKeyframes: n,
49
+ calculatedDuration: d,
50
+ resolvedDuration: f,
51
+ totalDuration: T
52
+ };
53
+ }
54
+ onPostResolved() {
55
+ const { autoplay: t = !0 } = this.options;
56
+ this.play(), this.pendingPlayState === "paused" || !t ? this.pause() : this.state = this.pendingPlayState;
57
+ }
58
+ tick(t, i = !1) {
59
+ const { resolved: r } = this;
60
+ if (!r) {
61
+ const { keyframes: c } = this.options;
62
+ return { done: !0, value: c[c.length - 1] };
63
+ }
64
+ const { finalKeyframe: e, generator: o, mirroredGenerator: u, mapPercentToKeyframes: a, keyframes: n, calculatedDuration: l, totalDuration: s, resolvedDuration: d } = r;
65
+ if (this.startTime === null)
66
+ return o.next(0);
67
+ const { delay: f, repeat: T, repeatType: P, repeatDelay: S, onUpdate: k } = this.options;
68
+ this.speed > 0 ? this.startTime = Math.min(this.startTime, t) : this.speed < 0 && (this.startTime = Math.min(t - s / this.speed, this.startTime)), i ? this.currentTime = t : this.holdTime !== null ? this.currentTime = this.holdTime : this.currentTime = Math.round(t - this.startTime) * this.speed;
69
+ const g = this.currentTime - f * (this.speed >= 0 ? 1 : -1), M = this.speed >= 0 ? g < 0 : g > s;
70
+ this.currentTime = Math.max(g, 0), this.state === "finished" && this.holdTime === null && (this.currentTime = s);
71
+ let K = this.currentTime, w = o;
72
+ if (T) {
73
+ const c = Math.min(this.currentTime, s) / d;
74
+ let v = Math.floor(c), h = c % 1;
75
+ !h && c >= 1 && (h = 1), h === 1 && v--, v = Math.min(v, T + 1), !!(v % 2) && (P === "reverse" ? (h = 1 - h, S && (h -= S / d)) : P === "mirror" && (w = u)), K = B(0, 1, h) * d;
76
+ }
77
+ const m = M ? { done: !1, value: n[0] } : w.next(K);
78
+ a && (m.value = a(m.value));
79
+ let { done: F } = m;
80
+ !M && l !== null && (F = this.speed >= 0 ? this.currentTime >= s : this.currentTime <= 0);
81
+ const R = this.holdTime === null && (this.state === "finished" || this.state === "running" && F);
82
+ return R && e !== void 0 && (m.value = N(n, this.options, e)), k && k(m.value), R && this.finish(), m;
83
+ }
84
+ get duration() {
85
+ const { resolved: t } = this;
86
+ return t ? D(t.calculatedDuration) : 0;
87
+ }
88
+ get time() {
89
+ return D(this.currentTime);
90
+ }
91
+ set time(t) {
92
+ t = V(t), this.currentTime = t, this.holdTime !== null || this.speed === 0 ? this.holdTime = t : this.driver && (this.startTime = this.driver.now() - t / this.speed);
93
+ }
94
+ get speed() {
95
+ return this.playbackSpeed;
96
+ }
97
+ set speed(t) {
98
+ const i = this.playbackSpeed !== t;
99
+ this.playbackSpeed = t, i && (this.time = D(this.currentTime));
100
+ }
101
+ play() {
102
+ if (this.resolver.isScheduled || this.resolver.resume(), !this._resolved) {
103
+ this.pendingPlayState = "running";
104
+ return;
105
+ }
106
+ if (this.isStopped)
107
+ return;
108
+ const { driver: t = E, onPlay: i, startTime: r } = this.options;
109
+ this.driver || (this.driver = t((o) => this.tick(o))), i && i();
110
+ const e = this.driver.now();
111
+ this.holdTime !== null ? this.startTime = e - this.holdTime : this.startTime ? this.state === "finished" && (this.startTime = e) : this.startTime = r ?? this.calcStartTime(), this.state === "finished" && this.updateFinishedPromise(), this.cancelTime = this.startTime, this.holdTime = null, this.state = "running", this.driver.start();
112
+ }
113
+ pause() {
114
+ var t;
115
+ if (!this._resolved) {
116
+ this.pendingPlayState = "paused";
117
+ return;
118
+ }
119
+ this.state = "paused", this.holdTime = (t = this.currentTime) !== null && t !== void 0 ? t : 0;
120
+ }
121
+ complete() {
122
+ this.state !== "running" && this.play(), this.pendingPlayState = this.state = "finished", this.holdTime = null;
123
+ }
124
+ finish() {
125
+ this.teardown(), this.state = "finished";
126
+ const { onComplete: t } = this.options;
127
+ t && t();
128
+ }
129
+ cancel() {
130
+ this.cancelTime !== null && this.tick(this.cancelTime), this.teardown(), this.updateFinishedPromise();
131
+ }
132
+ teardown() {
133
+ this.state = "idle", this.stopDriver(), this.resolveFinishedPromise(), this.updateFinishedPromise(), this.startTime = this.cancelTime = null, this.resolver.cancel();
134
+ }
135
+ stopDriver() {
136
+ this.driver && (this.driver.stop(), this.driver = void 0);
137
+ }
138
+ sample(t) {
139
+ return this.startTime = 0, this.tick(t, !0);
140
+ }
141
+ }
142
+ function ot(p) {
143
+ return new q(p);
144
+ }
145
+ export {
146
+ q as MainThreadAnimation,
147
+ ot as animateValue
148
+ };
@@ -0,0 +1,17 @@
1
+ import { time as o } from "../../../frameloop/sync-time.mjs";
2
+ import { frame as a, cancelFrame as s, frameData as t } from "../../../frameloop/frame.mjs";
3
+ const n = (e) => {
4
+ const r = ({ timestamp: m }) => e(m);
5
+ return {
6
+ start: () => a.update(r, !0),
7
+ stop: () => s(r),
8
+ /**
9
+ * If we're processing this frame we can use the
10
+ * framelocked timestamp to keep things in sync.
11
+ */
12
+ now: () => t.isProcessing ? t.timestamp : o.now()
13
+ };
14
+ };
15
+ export {
16
+ n as frameloopDriver
17
+ };
@@ -0,0 +1,12 @@
1
+ const e = /* @__PURE__ */ new Set([
2
+ "opacity",
3
+ "clipPath",
4
+ "filter",
5
+ "transform"
6
+ // TODO: Can be accelerated but currently disabled until https://issues.chromium.org/issues/41491098 is resolved
7
+ // or until we implement support for linear() easing.
8
+ // "background-color"
9
+ ]);
10
+ export {
11
+ e as acceleratedValues
12
+ };
@@ -0,0 +1,23 @@
1
+ import { warning as s } from "../../../utils/errors.mjs";
2
+ import { isGenerator as f } from "../../generators/utils/is-generator.mjs";
3
+ import { isAnimatable as l } from "../../utils/is-animatable.mjs";
4
+ function g(t) {
5
+ const i = t[0];
6
+ if (t.length === 1)
7
+ return !0;
8
+ for (let n = 0; n < t.length; n++)
9
+ if (t[n] !== i)
10
+ return !0;
11
+ }
12
+ function h(t, i, n, u) {
13
+ const r = t[0];
14
+ if (r === null)
15
+ return !1;
16
+ if (i === "display" || i === "visibility")
17
+ return !0;
18
+ const a = t[t.length - 1], e = l(r, i), o = l(a, i);
19
+ return s(e === o, `You are trying to animate ${i} from "${r}" to "${a}". ${r} is not an animatable value - to enable this animation set ${r} to a value animatable to ${a} via the \`style\` property.`), !e || !o ? !1 : g(t) || (n === "spring" || f(n)) && u;
20
+ }
21
+ export {
22
+ h as canAnimate
23
+ };
@@ -0,0 +1,106 @@
1
+ import { startWaapiAnimation as y } from "./index.mjs";
2
+ import { createGeneratorEasing as S } from "../../../easing/utils/create-generator-easing.mjs";
3
+ import { browserNumberValueTypes as m } from "../../../render/dom/value-types/number-browser.mjs";
4
+ import { invariant as T } from "../../../utils/errors.mjs";
5
+ import { noop as P } from "../../../utils/noop.mjs";
6
+ import { secondsToMilliseconds as p, millisecondsToSeconds as c } from "../../../utils/time-conversion.mjs";
7
+ import { isGenerator as F } from "../../generators/utils/is-generator.mjs";
8
+ import { attachTimeline as d } from "./utils/attach-timeline.mjs";
9
+ import { getFinalKeyframe as A } from "./utils/get-final-keyframe.mjs";
10
+ import { setCSSVar as w, setStyle as V } from "./utils/style.mjs";
11
+ import { supportsLinearEasing as b } from "./utils/supports-linear-easing.mjs";
12
+ import { supportsPartialKeyframes as W } from "./utils/supports-partial-keyframes.mjs";
13
+ import { supportsWaapi as E } from "./utils/supports-waapi.mjs";
14
+ const o = /* @__PURE__ */ new WeakMap();
15
+ function M(a, i, n) {
16
+ for (let t = 0; t < i.length; t++)
17
+ i[t] === null && (i[t] = t === 0 ? n() : i[t - 1]), typeof i[t] == "number" && m[a] && (i[t] = m[a].transform(i[t]));
18
+ !W() && i.length < 2 && i.unshift(n());
19
+ }
20
+ const f = "easeOut";
21
+ function u(a) {
22
+ const i = o.get(a) || /* @__PURE__ */ new Map();
23
+ return o.set(a, i), o.get(a);
24
+ }
25
+ class H {
26
+ constructor(i, n, t, s) {
27
+ const l = n.startsWith("--");
28
+ this.setValue = l ? w : V, this.options = s, this.updateFinishedPromise(), T(typeof s.type != "string", `animateMini doesn't support "type" as a string. Did you mean to import { spring } from "framer-motion"?`);
29
+ const r = u(i).get(n);
30
+ r && r.stop();
31
+ const g = () => n.startsWith("--") ? i.style.getPropertyValue(n) : window.getComputedStyle(i)[n];
32
+ if (Array.isArray(t) || (t = [t]), M(n, t, g), F(s.type)) {
33
+ const e = S(s, 100, s.type);
34
+ s.ease = b() ? e.ease : f, s.duration = p(e.duration), s.type = "keyframes";
35
+ } else
36
+ s.ease = s.ease || f;
37
+ this.removeAnimation = () => {
38
+ var e;
39
+ return (e = o.get(i)) === null || e === void 0 ? void 0 : e.delete(n);
40
+ };
41
+ const h = () => {
42
+ this.setValue(i, n, A(t, this.options)), this.cancel(), this.resolveFinishedPromise();
43
+ };
44
+ E() ? (this.animation = y(i, n, t, s), s.autoplay === !1 && this.animation.pause(), this.animation.onfinish = h, this.pendingTimeline && d(this.animation, this.pendingTimeline), u(i).set(n, this)) : h();
45
+ }
46
+ get duration() {
47
+ return c(this.options.duration || 300);
48
+ }
49
+ get time() {
50
+ var i;
51
+ return this.animation ? c(((i = this.animation) === null || i === void 0 ? void 0 : i.currentTime) || 0) : 0;
52
+ }
53
+ set time(i) {
54
+ this.animation && (this.animation.currentTime = p(i));
55
+ }
56
+ get speed() {
57
+ return this.animation ? this.animation.playbackRate : 1;
58
+ }
59
+ set speed(i) {
60
+ this.animation && (this.animation.playbackRate = i);
61
+ }
62
+ get state() {
63
+ return this.animation ? this.animation.playState : "finished";
64
+ }
65
+ get startTime() {
66
+ return this.animation ? this.animation.startTime : null;
67
+ }
68
+ play() {
69
+ this.state === "finished" && this.updateFinishedPromise(), this.animation && this.animation.play();
70
+ }
71
+ pause() {
72
+ this.animation && this.animation.pause();
73
+ }
74
+ stop() {
75
+ !this.animation || this.state === "idle" || this.state === "finished" || (this.animation.commitStyles && this.animation.commitStyles(), this.cancel());
76
+ }
77
+ complete() {
78
+ this.animation && this.animation.finish();
79
+ }
80
+ cancel() {
81
+ this.removeAnimation();
82
+ try {
83
+ this.animation && this.animation.cancel();
84
+ } catch {
85
+ }
86
+ }
87
+ /**
88
+ * Allows the returned animation to be awaited or promise-chained. Currently
89
+ * resolves when the animation finishes at all but in a future update could/should
90
+ * reject if its cancels.
91
+ */
92
+ then(i, n) {
93
+ return this.currentFinishedPromise.then(i, n);
94
+ }
95
+ updateFinishedPromise() {
96
+ this.currentFinishedPromise = new Promise((i) => {
97
+ this.resolveFinishedPromise = i;
98
+ });
99
+ }
100
+ attachTimeline(i) {
101
+ return this.animation ? d(this.animation, i) : this.pendingTimeline = i, P;
102
+ }
103
+ }
104
+ export {
105
+ H as NativeAnimation
106
+ };
@@ -0,0 +1,24 @@
1
+ import { resolveElements as p } from "../../../render/dom/utils/resolve-element.mjs";
2
+ import { invariant as v } from "../../../utils/errors.mjs";
3
+ import { secondsToMilliseconds as s } from "../../../utils/time-conversion.mjs";
4
+ import { getValueTransition as y } from "../../utils/get-value-transition.mjs";
5
+ import { NativeAnimation as E } from "./NativeAnimation.mjs";
6
+ function x(d, a, r, u) {
7
+ const l = p(d, u), o = l.length;
8
+ v(!!o, "No valid element provided.");
9
+ const m = [];
10
+ for (let n = 0; n < o; n++) {
11
+ const c = l[n], t = { ...r };
12
+ typeof t.delay == "function" && (t.delay = t.delay(n, o));
13
+ for (const i in a) {
14
+ const f = a[i], e = {
15
+ ...y(r, i)
16
+ };
17
+ e.duration = e.duration ? s(e.duration) : e.duration, e.delay = s(e.delay || 0), m.push(new E(c, i, f, e));
18
+ }
19
+ }
20
+ return m;
21
+ }
22
+ export {
23
+ x as animateElements
24
+ };
@@ -0,0 +1,12 @@
1
+ import { GroupPlaybackControls as a } from "../../GroupPlaybackControls.mjs";
2
+ import { animateElements as i } from "./animate-elements.mjs";
3
+ const m = (t) => {
4
+ function e(n, o, r) {
5
+ return new a(i(n, o, r, t));
6
+ }
7
+ return e;
8
+ }, s = /* @__PURE__ */ m();
9
+ export {
10
+ s as animateMini,
11
+ m as createScopedWaapiAnimate
12
+ };
@@ -0,0 +1,27 @@
1
+ import { isBezierDefinition as u } from "../../../easing/utils/is-bezier-definition.mjs";
2
+ import { generateLinearEasing as p } from "./utils/linear.mjs";
3
+ import { supportsLinearEasing as n } from "./utils/supports-linear-easing.mjs";
4
+ function s(e) {
5
+ return !!(typeof e == "function" && n() || !e || typeof e == "string" && (e in o || n()) || u(e) || Array.isArray(e) && e.every(s));
6
+ }
7
+ const r = ([e, t, i, a]) => `cubic-bezier(${e}, ${t}, ${i}, ${a})`, o = {
8
+ linear: "linear",
9
+ ease: "ease",
10
+ easeIn: "ease-in",
11
+ easeOut: "ease-out",
12
+ easeInOut: "ease-in-out",
13
+ circIn: /* @__PURE__ */ r([0, 0.65, 0.55, 1]),
14
+ circOut: /* @__PURE__ */ r([0.55, 0, 1, 0.45]),
15
+ backIn: /* @__PURE__ */ r([0.31, 0.01, 0.66, -0.59]),
16
+ backOut: /* @__PURE__ */ r([0.33, 1.53, 0.69, 0.99])
17
+ };
18
+ function c(e, t) {
19
+ if (e)
20
+ return typeof e == "function" && n() ? p(e, t) : u(e) ? r(e) : Array.isArray(e) ? e.map((i) => c(i, t) || o.easeOut) : o[e];
21
+ }
22
+ export {
23
+ r as cubicBezierAsString,
24
+ s as isWaapiSupportedEasing,
25
+ c as mapEasingToNativeEasing,
26
+ o as supportedWaapiEasing
27
+ };
@@ -0,0 +1,17 @@
1
+ import { mapEasingToNativeEasing as p } from "./easing.mjs";
2
+ function y(e, t, o, { delay: s = 0, duration: r = 300, repeat: f = 0, repeatType: l = "loop", ease: m, times: n } = {}) {
3
+ const i = { [t]: o };
4
+ n && (i.offset = n);
5
+ const a = p(m, r);
6
+ return Array.isArray(a) && (i.easing = a), e.animate(i, {
7
+ delay: s,
8
+ duration: r,
9
+ easing: Array.isArray(a) ? "linear" : a,
10
+ fill: "both",
11
+ iterations: f + 1,
12
+ direction: l === "reverse" ? "alternate" : "normal"
13
+ });
14
+ }
15
+ export {
16
+ y as startWaapiAnimation
17
+ };
@@ -0,0 +1,6 @@
1
+ function n(e, i) {
2
+ e.timeline = i, e.onfinish = null;
3
+ }
4
+ export {
5
+ n as attachTimeline
6
+ };
@@ -0,0 +1,8 @@
1
+ const i = (n) => n !== null;
2
+ function r(n, { repeat: o, repeatType: s = "loop" }, e) {
3
+ const l = n.filter(i), t = o && s !== "loop" && o % 2 === 1 ? 0 : l.length - 1;
4
+ return !t || e === void 0 ? l[t] : e;
5
+ }
6
+ export {
7
+ r as getFinalKeyframe
8
+ };
@@ -0,0 +1,11 @@
1
+ import { progress as s } from "../../../../utils/progress.mjs";
2
+ const i = 10, g = (o, e) => {
3
+ let t = "";
4
+ const r = Math.max(Math.round(e / i), 2);
5
+ for (let n = 0; n < r; n++)
6
+ t += o(s(0, r - 1, n)) + ", ";
7
+ return `linear(${t.substring(0, t.length - 2)})`;
8
+ };
9
+ export {
10
+ g as generateLinearEasing
11
+ };
@@ -0,0 +1,12 @@
1
+ import { memo as e } from "../../../../utils/memo.mjs";
2
+ import { supportsFlags as p } from "./supports-flags.mjs";
3
+ function i(r, m) {
4
+ const t = e(r);
5
+ return () => {
6
+ var o;
7
+ return (o = p[m]) !== null && o !== void 0 ? o : t();
8
+ };
9
+ }
10
+ export {
11
+ i as memoSupports
12
+ };
@@ -0,0 +1,10 @@
1
+ function n(t, e, s) {
2
+ t.style.setProperty(`--${e}`, s);
3
+ }
4
+ function o(t, e, s) {
5
+ t.style[e] = s;
6
+ }
7
+ export {
8
+ n as setCSSVar,
9
+ o as setStyle
10
+ };
@@ -0,0 +1,12 @@
1
+ import { memoSupports as e } from "./memo-supports.mjs";
2
+ const a = /* @__PURE__ */ e(() => {
3
+ try {
4
+ document.createElement("div").animate({ opacity: 0 }, { easing: "linear(0, 1)" });
5
+ } catch {
6
+ return !1;
7
+ }
8
+ return !0;
9
+ }, "linearEasing");
10
+ export {
11
+ a as supportsLinearEasing
12
+ };
@@ -0,0 +1,12 @@
1
+ import { memo as e } from "../../../../utils/memo.mjs";
2
+ const a = /* @__PURE__ */ e(() => {
3
+ try {
4
+ document.createElement("div").animate({ opacity: [1] });
5
+ } catch {
6
+ return !1;
7
+ }
8
+ return !0;
9
+ });
10
+ export {
11
+ a as supportsPartialKeyframes
12
+ };
@@ -0,0 +1,5 @@
1
+ import { memo as t } from "../../../../utils/memo.mjs";
2
+ const e = /* @__PURE__ */ t(() => Object.hasOwnProperty.call(Element.prototype, "animate"));
3
+ export {
4
+ e as supportsWaapi
5
+ };
@@ -0,0 +1,37 @@
1
+ import { spring as L } from "./spring/index.mjs";
2
+ import { calcGeneratorVelocity as R } from "./utils/velocity.mjs";
3
+ function $({ keyframes: g, velocity: B = 0, power: M = 0.8, timeConstant: b = 325, bounceDamping: k = 10, bounceStiffness: F = 500, modifyTarget: l, min: t, max: a, restDelta: f = 0.5, restSpeed: O }) {
4
+ const s = g[0], n = {
5
+ done: !1,
6
+ value: s
7
+ }, C = (e) => t !== void 0 && e < t || a !== void 0 && e > a, D = (e) => t === void 0 ? a : a === void 0 || Math.abs(t - e) < Math.abs(a - e) ? t : a;
8
+ let c = M * B;
9
+ const d = s + c, u = l === void 0 ? d : l(d);
10
+ u !== d && (c = u - s);
11
+ const p = (e) => -c * Math.exp(-e / b), h = (e) => u + p(e), y = (e) => {
12
+ const o = p(e), G = h(e);
13
+ n.done = Math.abs(o) <= f, n.value = n.done ? u : G;
14
+ };
15
+ let r, i;
16
+ const v = (e) => {
17
+ C(n.value) && (r = e, i = L({
18
+ keyframes: [n.value, D(n.value)],
19
+ velocity: R(h, e, n.value),
20
+ // TODO: This should be passing * 1000
21
+ damping: k,
22
+ stiffness: F,
23
+ restDelta: f,
24
+ restSpeed: O
25
+ }));
26
+ };
27
+ return v(0), {
28
+ calculatedDuration: null,
29
+ next: (e) => {
30
+ let o = !1;
31
+ return !i && r === void 0 && (o = !0, y(e), v(e)), r !== void 0 && e >= r ? i.next(e - r) : (!o && y(e), n);
32
+ }
33
+ };
34
+ }
35
+ export {
36
+ $ as inertia
37
+ };
@@ -0,0 +1,30 @@
1
+ import { easeInOut as c } from "../../easing/ease.mjs";
2
+ import { isEasingArray as p } from "../../easing/utils/is-easing-array.mjs";
3
+ import { easingDefinitionToFunction as m } from "../../easing/utils/map.mjs";
4
+ import { interpolate as u } from "../../utils/interpolate.mjs";
5
+ import { defaultOffset as l } from "../../utils/offsets/default.mjs";
6
+ import { convertOffsetToTimes as g } from "../../utils/offsets/time.mjs";
7
+ function T(n, t) {
8
+ return n.map(() => t || c).splice(0, n.length - 1);
9
+ }
10
+ function y({ duration: n = 300, keyframes: t, times: o, ease: r = "easeInOut" }) {
11
+ const e = p(r) ? r.map(m) : m(r), i = {
12
+ done: !1,
13
+ value: t[0]
14
+ }, s = g(
15
+ // Only use the provided offsets if they're the correct length
16
+ // TODO Maybe we should warn here if there's a length mismatch
17
+ o && o.length === t.length ? o : l(t),
18
+ n
19
+ ), a = u(s, t, {
20
+ ease: Array.isArray(e) ? e : T(t, e)
21
+ });
22
+ return {
23
+ calculatedDuration: n,
24
+ next: (f) => (i.value = a(f), i.done = f >= n, i)
25
+ };
26
+ }
27
+ export {
28
+ T as defaultEasing,
29
+ y as keyframes
30
+ };
@@ -0,0 +1,55 @@
1
+ import { warning as N } from "../../../utils/errors.mjs";
2
+ import { clamp as h } from "../../../utils/clamp.mjs";
3
+ import { secondsToMilliseconds as g, millisecondsToSeconds as T } from "../../../utils/time-conversion.mjs";
4
+ const M = 1e-3, A = 0.01, D = 10, G = 0.05, I = 1;
5
+ function E({ duration: t = 800, bounce: i = 0.25, velocity: c = 0, mass: o = 1 }) {
6
+ let a, p;
7
+ N(t <= g(D), "Spring duration must be 10 seconds or less");
8
+ let s = 1 - i;
9
+ s = h(G, I, s), t = h(A, D, T(t)), s < 1 ? (a = (n) => {
10
+ const r = n * s, e = r * t, l = r - c, f = w(n, s), m = Math.exp(-e);
11
+ return M - l / f * m;
12
+ }, p = (n) => {
13
+ const e = n * s * t, l = e * c + c, f = Math.pow(s, 2) * Math.pow(n, 2) * t, m = Math.exp(-e), S = w(Math.pow(n, 2), s);
14
+ return (-a(n) + M > 0 ? -1 : 1) * ((l - f) * m) / S;
15
+ }) : (a = (n) => {
16
+ const r = Math.exp(-n * t), e = (n - c) * t + 1;
17
+ return -M + r * e;
18
+ }, p = (n) => {
19
+ const r = Math.exp(-n * t), e = (c - n) * (t * t);
20
+ return r * e;
21
+ });
22
+ const b = 5 / t, x = j(a, p, b);
23
+ if (t = g(t), isNaN(x))
24
+ return {
25
+ stiffness: 100,
26
+ damping: 10,
27
+ duration: t
28
+ };
29
+ {
30
+ const n = Math.pow(x, 2) * o;
31
+ return {
32
+ stiffness: n,
33
+ damping: s * 2 * Math.sqrt(o * n),
34
+ duration: t
35
+ };
36
+ }
37
+ }
38
+ const R = 12;
39
+ function j(t, i, c) {
40
+ let o = c;
41
+ for (let a = 1; a < R; a++)
42
+ o = o - t(o) / i(o);
43
+ return o;
44
+ }
45
+ function w(t, i) {
46
+ return t * Math.sqrt(1 - i * i);
47
+ }
48
+ export {
49
+ w as calcAngularFreq,
50
+ E as findSpring,
51
+ I as maxDamping,
52
+ D as maxDuration,
53
+ G as minDamping,
54
+ A as minDuration
55
+ };