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.
- package/dist/cjs/index.js +7637 -1
- package/dist/es/animation/use-animate.mjs +25 -15
- package/dist/es/components/AnimatePresence.vue.mjs +57 -39
- package/dist/es/components/AnimatePresence.vue2.mjs +2 -2
- package/dist/es/components/LayoutGroup.vue.mjs +39 -0
- package/dist/es/components/LayoutGroup.vue2.mjs +4 -0
- package/dist/es/components/Motion.vue.mjs +87 -57
- package/dist/es/components/Motion.vue2.mjs +2 -2
- package/dist/es/components/Primitive.mjs +15 -9
- package/dist/es/components/Slot.mjs +28 -19
- package/dist/es/components/context.mjs +15 -4
- package/dist/es/components/group.mjs +30 -0
- package/dist/es/components/presence.mjs +13 -10
- package/dist/es/components/renderSlotFragments.mjs +10 -4
- package/dist/es/components/use-force-update.mjs +11 -0
- package/dist/es/constants/index.mjs +13 -6
- package/dist/es/features/events.mjs +59 -43
- package/dist/es/features/feature-manager.mjs +20 -17
- package/dist/es/features/feature.mjs +4 -4
- package/dist/es/features/gestures/base.mjs +12 -7
- package/dist/es/features/gestures/hover.mjs +25 -16
- package/dist/es/features/gestures/in-view.mjs +21 -15
- package/dist/es/features/gestures/press.mjs +22 -13
- package/dist/es/features/layout/config.mjs +21 -0
- package/dist/es/features/layout/layout.mjs +74 -0
- package/dist/es/features/layout/utils.mjs +8 -0
- package/dist/es/features/svg.mjs +14 -13
- package/dist/es/index.mjs +119 -102
- package/dist/es/node_modules/.pnpm/@vueuse_shared@12.0.0_typescript@5.5.4/node_modules/@vueuse/shared/index.mjs +6 -0
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/GroupPlaybackControls.mjs +38 -28
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animate/index.mjs +22 -15
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animate/resolve-subjects.mjs +13 -5
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animate/sequence.mjs +11 -9
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animate/single-value.mjs +8 -7
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animate/subject.mjs +32 -24
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/AcceleratedAnimation.mjs +178 -137
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/BaseAnimation.mjs +53 -37
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/MainThreadAnimation.mjs +227 -100
- 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
- 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
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/NativeAnimation.mjs +112 -56
- 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
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/easing.mjs +27 -17
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animators/waapi/index.mjs +15 -12
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/generators/inertia.mjs +58 -28
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/generators/keyframes.mjs +28 -21
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/generators/spring/find.mjs +71 -43
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/generators/spring/index.mjs +64 -48
- 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
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/generators/utils/velocity.mjs +6 -6
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/interfaces/motion-value.mjs +64 -37
- 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
- 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
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/sequence/create.mjs +133 -86
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/sequence/utils/edit.mjs +20 -16
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/sequence/utils/sort.mjs +11 -3
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/default-transitions.mjs +19 -8
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/is-animatable.mjs +14 -5
- 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
- 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
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/is-none.mjs +10 -4
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/utils/stagger.mjs +18 -16
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/anticipate.mjs +3 -3
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/back.mjs +9 -7
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/circ.mjs +8 -6
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/cubic-bezier.mjs +24 -14
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/ease.mjs +7 -5
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/modifiers/mirror.mjs +2 -2
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/modifiers/reverse.mjs +2 -2
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/steps.mjs +8 -7
- 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
- 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
- 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
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/easing/utils/map.mjs +32 -29
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/events/add-dom-event.mjs +7 -0
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/frameloop/batcher.mjs +57 -21
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/frameloop/frame.mjs +7 -7
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/frameloop/index-legacy.mjs +9 -5
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/frameloop/microtask.mjs +6 -0
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/frameloop/render-step.mjs +41 -19
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/frameloop/sync-time.mjs +16 -10
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/motion/features/definitions.mjs +8 -6
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/animation/mix-values.mjs +60 -0
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/geometry/conversion.mjs +14 -13
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/geometry/copy.mjs +19 -0
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/geometry/delta-apply.mjs +81 -0
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/geometry/delta-calc.mjs +55 -0
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/geometry/delta-remove.mjs +40 -0
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/geometry/models.mjs +18 -5
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/geometry/utils.mjs +34 -0
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/node/DocumentProjectionNode.mjs +13 -0
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/node/HTMLProjectionNode.mjs +28 -0
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/node/state.mjs +15 -0
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/shared/stack.mjs +94 -0
- 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
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/styles/scale-correction.mjs +6 -2
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/styles/transform.mjs +36 -0
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/utils/each-axis.mjs +6 -0
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/utils/has-transform.mjs +20 -0
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/projection/utils/measure.mjs +4 -4
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/VisualElement.mjs +263 -117
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/DOMKeyframesResolver.mjs +81 -45
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/DOMVisualElement.mjs +13 -11
- 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
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/resize/index.mjs +5 -5
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/index.mjs +53 -36
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/info.mjs +29 -16
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/observe.mjs +14 -8
- 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
- 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
- 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
- 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
- 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
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/supports.mjs +3 -3
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/scroll/track.mjs +60 -33
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/dom/viewport/index.mjs +29 -17
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/html/HTMLVisualElement.mjs +41 -32
- 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
- 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
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/html/utils/render.mjs +6 -5
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/html/utils/transform.mjs +5 -4
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/object/ObjectVisualElement.mjs +24 -20
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/store.mjs +2 -2
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/svg/SVGVisualElement.mjs +33 -28
- 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
- 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
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/svg/utils/path.mjs +12 -10
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/svg/utils/render.mjs +9 -8
- 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
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/KeyframesResolver.mjs +105 -47
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/flat-tree.mjs +24 -0
- 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
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/motion-values.mjs +31 -20
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/resolve-variants.mjs +19 -14
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/setters.mjs +17 -13
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/render/utils/variant-props.mjs +5 -4
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/GlobalConfig.mjs +4 -4
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/array.mjs +9 -7
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/clamp.mjs +8 -2
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/delay.mjs +17 -12
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/distance.mjs +7 -6
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/errors.mjs +17 -10
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/hsla-to-rgba.mjs +32 -15
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/interpolate.mjs +42 -31
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/is-browser.mjs +2 -2
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/is-numerical-string.mjs +2 -2
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/memo.mjs +8 -4
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/mix/color.mjs +40 -25
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/mix/complex.mjs +73 -41
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/mix/immediate.mjs +3 -3
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/mix/index.mjs +9 -5
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/mix/number.mjs +4 -2
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/mix/visibility.mjs +9 -5
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/noop.mjs +2 -2
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/offsets/default.mjs +6 -5
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/offsets/fill.mjs +8 -8
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/offsets/time.mjs +3 -3
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/pipe.mjs +3 -2
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/progress.mjs +4 -4
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/reduced-motion/index.mjs +15 -10
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/reduced-motion/state.mjs +4 -3
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/resolve-value.mjs +9 -3
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/subscription-manager.mjs +18 -15
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/time-conversion.mjs +4 -3
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/transform.mjs +17 -8
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/velocity-per-second.mjs +3 -3
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/warn-once.mjs +7 -4
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/utils/wrap.mjs +4 -4
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/index.mjs +125 -53
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/color/hex.mjs +32 -14
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/color/hsla.mjs +11 -9
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/color/index.mjs +18 -8
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/color/rgba.mjs +15 -13
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/color/utils.mjs +16 -13
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/complex/filter.mjs +22 -19
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/complex/index.mjs +71 -36
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/numbers/index.mjs +14 -12
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/numbers/units.mjs +19 -13
- 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
- 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
- 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
- package/dist/es/node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/value/types/utils/sanitize.mjs +2 -2
- 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
- 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
- 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
- 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
- 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
- package/dist/es/node_modules/.pnpm/hey-listen@1.0.8/node_modules/hey-listen/dist/hey-listen.es.mjs +17 -10
- package/dist/es/state/create-visual-element.mjs +9 -0
- package/dist/es/state/event.mjs +3 -3
- package/dist/es/state/motion-state.mjs +145 -91
- package/dist/es/state/schedule.mjs +23 -15
- package/dist/es/state/style.mjs +105 -81
- package/dist/es/state/transform.mjs +37 -29
- package/dist/es/state/utils.mjs +51 -45
- package/dist/es/utils/createContext.mjs +19 -11
- package/dist/es/utils/events.mjs +4 -4
- package/dist/es/utils/motion-value.mjs +3 -3
- package/dist/es/utils/use-animation-frame.mjs +17 -11
- package/dist/es/utils/use-in-view.mjs +20 -14
- package/dist/es/value/use-combine-values.mjs +22 -17
- package/dist/es/value/use-computed.mjs +17 -10
- package/dist/es/value/use-motion-template.mjs +17 -14
- package/dist/es/value/use-motion-value-event.mjs +11 -0
- package/dist/es/value/use-scroll.mjs +42 -33
- package/dist/es/value/use-spring.mjs +48 -28
- package/dist/es/value/use-time.mjs +7 -6
- package/dist/es/value/use-transform.mjs +24 -20
- package/dist/es/value/use-velocity.mjs +20 -0
- package/dist/src/components/LayoutGroup.d.ts +30 -0
- package/dist/src/components/context.d.ts +17 -0
- package/dist/src/components/group.d.ts +7 -0
- package/dist/src/components/use-force-update.d.ts +2 -0
- package/dist/src/features/index.d.ts +1 -0
- package/dist/src/features/layout/config.d.ts +8 -0
- package/dist/src/features/layout/layout.d.ts +10 -0
- package/dist/src/features/layout/types.d.ts +7 -0
- package/dist/src/features/layout/utils.d.ts +4 -0
- package/dist/src/index.d.ts +2 -0
- package/dist/src/state/create-visual-element.d.ts +1 -0
- package/dist/src/state/motion-state.d.ts +1 -2
- package/dist/src/types/state.d.ts +2 -1
- package/dist/src/value/index.d.ts +4 -0
- package/package.json +2 -1
- 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
- package/dist/src/components/usePrimitiveElement.d.ts +0 -5
|
@@ -1,21 +1,31 @@
|
|
|
1
|
-
import { ref
|
|
2
|
-
import { createScopedAnimate
|
|
3
|
-
function
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { ref, onUnmounted } from "vue";
|
|
2
|
+
import { createScopedAnimate } from "../node_modules/.pnpm/framer-motion@11.11.11/node_modules/framer-motion/dist/es/animation/animate/index.mjs";
|
|
3
|
+
function useAnimate() {
|
|
4
|
+
const dom = ref(null);
|
|
5
|
+
const domProxy = new Proxy(dom, {
|
|
6
|
+
get(target, key) {
|
|
7
|
+
if (typeof key === "string" || typeof key === "symbol") {
|
|
8
|
+
if (key === "current")
|
|
9
|
+
return Reflect.get(target, "value");
|
|
10
|
+
return Reflect.get(target, key);
|
|
11
|
+
}
|
|
12
|
+
return void 0;
|
|
8
13
|
},
|
|
9
|
-
set(
|
|
10
|
-
|
|
14
|
+
set(target, key, value) {
|
|
15
|
+
if (key === "value")
|
|
16
|
+
return Reflect.set(target, key, (value == null ? void 0 : value.$el) || value);
|
|
17
|
+
if (key === "animations")
|
|
18
|
+
return Reflect.set(target, key, value);
|
|
19
|
+
return true;
|
|
11
20
|
}
|
|
12
21
|
});
|
|
13
|
-
|
|
14
|
-
const
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
})
|
|
22
|
+
domProxy.animations = [];
|
|
23
|
+
const animate = createScopedAnimate(domProxy);
|
|
24
|
+
onUnmounted(() => {
|
|
25
|
+
domProxy.animations.forEach((animation) => animation.stop());
|
|
26
|
+
});
|
|
27
|
+
return [domProxy, animate];
|
|
18
28
|
}
|
|
19
29
|
export {
|
|
20
|
-
|
|
30
|
+
useAnimate
|
|
21
31
|
};
|
|
@@ -1,53 +1,71 @@
|
|
|
1
|
-
import { defineComponent
|
|
2
|
-
import { mountedStates
|
|
3
|
-
import { provideAnimatePresence
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import { defineComponent, toRefs, openBlock, createBlock, resolveDynamicComponent, TransitionGroup, Transition, withCtx, renderSlot } from "vue";
|
|
2
|
+
import { mountedStates } from "../state/motion-state.mjs";
|
|
3
|
+
import { provideAnimatePresence, doneCallbacks, removeDoneCallback } from "./presence.mjs";
|
|
4
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
5
|
+
...{
|
|
6
|
+
name: "AnimatePresence",
|
|
7
|
+
inheritAttrs: true
|
|
8
|
+
},
|
|
7
9
|
__name: "AnimatePresence",
|
|
8
10
|
props: {
|
|
9
11
|
mode: { default: "sync" },
|
|
10
|
-
initial: { type: Boolean, default:
|
|
11
|
-
multiple: { type: Boolean, default:
|
|
12
|
+
initial: { type: Boolean, default: true },
|
|
13
|
+
multiple: { type: Boolean, default: false },
|
|
12
14
|
as: {}
|
|
13
15
|
},
|
|
14
|
-
setup(
|
|
15
|
-
const
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
setup(__props) {
|
|
17
|
+
const props = __props;
|
|
18
|
+
const { initial } = toRefs(props);
|
|
19
|
+
provideAnimatePresence({
|
|
20
|
+
initial,
|
|
21
|
+
safeUnmount(el) {
|
|
22
|
+
return !doneCallbacks.has(el);
|
|
20
23
|
}
|
|
21
24
|
});
|
|
22
|
-
function
|
|
23
|
-
const
|
|
24
|
-
|
|
25
|
+
function enter(el) {
|
|
26
|
+
const state = mountedStates.get(el);
|
|
27
|
+
if (!state) {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
removeDoneCallback(el);
|
|
31
|
+
state.setActive("exit", false);
|
|
25
32
|
}
|
|
26
|
-
function
|
|
27
|
-
const
|
|
28
|
-
if (!
|
|
29
|
-
return
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
33
|
+
function exit(el, done) {
|
|
34
|
+
const state = mountedStates.get(el);
|
|
35
|
+
if (!state) {
|
|
36
|
+
return done();
|
|
37
|
+
}
|
|
38
|
+
removeDoneCallback(el);
|
|
39
|
+
function doneCallback(e) {
|
|
40
|
+
var _a;
|
|
41
|
+
if ((_a = e == null ? void 0 : e.detail) == null ? void 0 : _a.isExit) {
|
|
42
|
+
removeDoneCallback(el);
|
|
43
|
+
done();
|
|
44
|
+
if (!el.isConnected) {
|
|
45
|
+
state.unmount();
|
|
46
|
+
}
|
|
47
|
+
}
|
|
34
48
|
}
|
|
35
|
-
|
|
49
|
+
doneCallbacks.set(el, doneCallback);
|
|
50
|
+
el.addEventListener("motioncomplete", doneCallback);
|
|
51
|
+
state.setActive("exit", true);
|
|
36
52
|
}
|
|
37
|
-
return (
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
53
|
+
return (_ctx, _cache) => {
|
|
54
|
+
return openBlock(), createBlock(resolveDynamicComponent(_ctx.multiple ? TransitionGroup : Transition), {
|
|
55
|
+
tag: _ctx.multiple ? _ctx.as : void 0,
|
|
56
|
+
css: false,
|
|
57
|
+
mode: _ctx.mode === "wait" ? "out-in" : void 0,
|
|
58
|
+
onEnter: enter,
|
|
59
|
+
onLeave: exit
|
|
60
|
+
}, {
|
|
61
|
+
default: withCtx(() => [
|
|
62
|
+
renderSlot(_ctx.$slots, "default")
|
|
63
|
+
]),
|
|
64
|
+
_: 3
|
|
65
|
+
}, 40, ["tag", "mode"]);
|
|
66
|
+
};
|
|
49
67
|
}
|
|
50
68
|
});
|
|
51
69
|
export {
|
|
52
|
-
|
|
70
|
+
_sfc_main as default
|
|
53
71
|
};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { defineComponent, watch, renderSlot } from "vue";
|
|
2
|
+
import { injectLayoutGroup, provideLayoutGroup, shouldInheritId, shouldInheritGroup } from "./context.mjs";
|
|
3
|
+
import { nodeGroup } from "./group.mjs";
|
|
4
|
+
import { useForceUpdate } from "./use-force-update.mjs";
|
|
5
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
6
|
+
__name: "LayoutGroup",
|
|
7
|
+
props: {
|
|
8
|
+
id: {},
|
|
9
|
+
inherit: { type: [Boolean, String] }
|
|
10
|
+
},
|
|
11
|
+
setup(__props) {
|
|
12
|
+
const props = __props;
|
|
13
|
+
const layoutGroup = injectLayoutGroup(null);
|
|
14
|
+
const [forceRender, key] = useForceUpdate();
|
|
15
|
+
function generateId() {
|
|
16
|
+
const upstreamId = layoutGroup == null ? void 0 : layoutGroup.id;
|
|
17
|
+
return shouldInheritId(props.inherit) && upstreamId ? props.id ? `${upstreamId}-${props.id}` : upstreamId : props.id;
|
|
18
|
+
}
|
|
19
|
+
function generateGroup() {
|
|
20
|
+
return shouldInheritGroup(props.inherit) ? (layoutGroup == null ? void 0 : layoutGroup.group) || nodeGroup() : nodeGroup();
|
|
21
|
+
}
|
|
22
|
+
const memoizedContext = {
|
|
23
|
+
id: generateId(),
|
|
24
|
+
group: generateGroup(),
|
|
25
|
+
forceRender,
|
|
26
|
+
key
|
|
27
|
+
};
|
|
28
|
+
watch(key, () => {
|
|
29
|
+
memoizedContext.id = generateId();
|
|
30
|
+
});
|
|
31
|
+
provideLayoutGroup(memoizedContext);
|
|
32
|
+
return (_ctx, _cache) => {
|
|
33
|
+
return renderSlot(_ctx.$slots, "default");
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
export {
|
|
38
|
+
_sfc_main as default
|
|
39
|
+
};
|
|
@@ -1,16 +1,18 @@
|
|
|
1
|
-
import { defineComponent
|
|
2
|
-
import { injectMotion
|
|
3
|
-
import {
|
|
4
|
-
import { Primitive
|
|
5
|
-
import { MotionState
|
|
6
|
-
import { isSVGElement
|
|
7
|
-
import { injectAnimatePresence
|
|
8
|
-
import { isMotionValue
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
|
|
1
|
+
import { defineComponent, mergeDefaults, ref, useAttrs, getCurrentInstance, onMounted, onUnmounted, onUpdated, openBlock, createBlock, unref, mergeProps, withCtx, renderSlot } from "vue";
|
|
2
|
+
import { injectMotion, injectLayoutGroup, provideMotion } from "./context.mjs";
|
|
3
|
+
import { convertSvgStyleToAttributes, createStyles } from "../state/style.mjs";
|
|
4
|
+
import { Primitive } from "./Primitive.mjs";
|
|
5
|
+
import { MotionState } from "../state/motion-state.mjs";
|
|
6
|
+
import { isSVGElement } from "../state/utils.mjs";
|
|
7
|
+
import { injectAnimatePresence } from "./presence.mjs";
|
|
8
|
+
import { isMotionValue } from "../utils/motion-value.mjs";
|
|
9
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
10
|
+
...{
|
|
11
|
+
name: "Motion",
|
|
12
|
+
inheritAttrs: false
|
|
13
|
+
},
|
|
12
14
|
__name: "Motion",
|
|
13
|
-
props: /* @__PURE__ */
|
|
15
|
+
props: /* @__PURE__ */ mergeDefaults({
|
|
14
16
|
as: {},
|
|
15
17
|
asChild: { type: Boolean },
|
|
16
18
|
custom: {},
|
|
@@ -32,67 +34,95 @@ const z = /* @__PURE__ */ f({
|
|
|
32
34
|
onPressStart: { type: Function },
|
|
33
35
|
onPressEnd: { type: Function },
|
|
34
36
|
onViewEnter: { type: Function },
|
|
35
|
-
onViewLeave: { type: Function }
|
|
37
|
+
onViewLeave: { type: Function },
|
|
38
|
+
layout: { type: Boolean },
|
|
39
|
+
layoutId: {},
|
|
40
|
+
layoutScroll: { type: Boolean },
|
|
41
|
+
layoutRoot: { type: Boolean },
|
|
42
|
+
"data-framer-portal-id": {}
|
|
36
43
|
}, {
|
|
37
44
|
as: "div",
|
|
38
|
-
asChild:
|
|
45
|
+
asChild: false,
|
|
39
46
|
initial: void 0,
|
|
40
47
|
animate: void 0,
|
|
41
48
|
hover: void 0,
|
|
42
|
-
inView: void 0
|
|
49
|
+
inView: void 0,
|
|
50
|
+
layout: false,
|
|
51
|
+
layoutId: void 0,
|
|
52
|
+
layoutScroll: false,
|
|
53
|
+
layoutRoot: false
|
|
43
54
|
}),
|
|
44
|
-
setup(
|
|
45
|
-
const
|
|
55
|
+
setup(__props) {
|
|
56
|
+
const props = __props;
|
|
57
|
+
const { initial: presenceInitial, safeUnmount } = injectAnimatePresence({ initial: ref(void 0), safeUnmount: () => true });
|
|
58
|
+
const parentState = injectMotion(null);
|
|
59
|
+
const attrs = useAttrs();
|
|
60
|
+
const layoutGroup = injectLayoutGroup({});
|
|
61
|
+
const state = new MotionState(
|
|
46
62
|
{
|
|
47
|
-
...
|
|
48
|
-
...
|
|
63
|
+
...attrs,
|
|
64
|
+
...props
|
|
49
65
|
},
|
|
50
|
-
|
|
66
|
+
parentState
|
|
51
67
|
);
|
|
52
|
-
|
|
53
|
-
const
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
...
|
|
58
|
-
|
|
68
|
+
provideMotion(state);
|
|
69
|
+
const instance = getCurrentInstance();
|
|
70
|
+
onMounted(() => {
|
|
71
|
+
state.mount(instance == null ? void 0 : instance.vnode.el);
|
|
72
|
+
state.update({
|
|
73
|
+
...attrs,
|
|
74
|
+
...props
|
|
59
75
|
});
|
|
60
|
-
})
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
76
|
+
});
|
|
77
|
+
onUnmounted(() => {
|
|
78
|
+
if (safeUnmount(instance == null ? void 0 : instance.vnode.el))
|
|
79
|
+
state.unmount();
|
|
80
|
+
});
|
|
81
|
+
onUpdated(() => {
|
|
82
|
+
state.update({
|
|
83
|
+
...attrs,
|
|
84
|
+
...props,
|
|
85
|
+
initial: presenceInitial.value === false ? presenceInitial.value : props.initial === true ? void 0 : props.initial
|
|
67
86
|
});
|
|
68
87
|
});
|
|
69
|
-
function
|
|
70
|
-
const
|
|
71
|
-
Object.keys(
|
|
72
|
-
|
|
88
|
+
function getProps() {
|
|
89
|
+
const attrsProps = { ...attrs };
|
|
90
|
+
Object.keys(attrs).forEach((key) => {
|
|
91
|
+
if (isMotionValue(attrs[key]))
|
|
92
|
+
attrsProps[key] = attrs[key].get();
|
|
73
93
|
});
|
|
74
|
-
let
|
|
75
|
-
...
|
|
94
|
+
let styleProps = {
|
|
95
|
+
...props.style
|
|
76
96
|
};
|
|
77
|
-
if (!
|
|
78
|
-
if (
|
|
79
|
-
const { attributes
|
|
80
|
-
Object.assign(
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
97
|
+
if (!state.isMounted()) {
|
|
98
|
+
if (isSVGElement(props.as)) {
|
|
99
|
+
const { attributes, style } = convertSvgStyleToAttributes(state.getTarget());
|
|
100
|
+
Object.assign(attrsProps, attributes);
|
|
101
|
+
Object.assign(styleProps, style, props.style);
|
|
102
|
+
} else {
|
|
103
|
+
Object.assign(styleProps, state.getTarget(), props.style);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
styleProps = createStyles(styleProps);
|
|
107
|
+
attrsProps.style = styleProps;
|
|
108
|
+
return attrsProps;
|
|
84
109
|
}
|
|
85
|
-
return (
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
110
|
+
return (_ctx, _cache) => {
|
|
111
|
+
var _a, _b;
|
|
112
|
+
return openBlock(), createBlock(unref(Primitive), mergeProps({
|
|
113
|
+
as: _ctx.as,
|
|
114
|
+
"as-child": _ctx.asChild
|
|
115
|
+
}, getProps(), {
|
|
116
|
+
"data-layout-group-key": (_b = (_a = unref(layoutGroup)) == null ? void 0 : _a.key) == null ? void 0 : _b.value
|
|
117
|
+
}), {
|
|
118
|
+
default: withCtx(() => [
|
|
119
|
+
renderSlot(_ctx.$slots, "default")
|
|
120
|
+
]),
|
|
121
|
+
_: 3
|
|
122
|
+
}, 16, ["as", "as-child", "data-layout-group-key"]);
|
|
123
|
+
};
|
|
94
124
|
}
|
|
95
125
|
});
|
|
96
126
|
export {
|
|
97
|
-
|
|
127
|
+
_sfc_main as default
|
|
98
128
|
};
|
|
@@ -1,23 +1,29 @@
|
|
|
1
|
-
import { defineComponent
|
|
2
|
-
import { Slot
|
|
3
|
-
const
|
|
1
|
+
import { defineComponent, h } from "vue";
|
|
2
|
+
import { Slot } from "./Slot.mjs";
|
|
3
|
+
const Primitive = defineComponent({
|
|
4
4
|
name: "Primitive",
|
|
5
|
-
inheritAttrs:
|
|
5
|
+
inheritAttrs: false,
|
|
6
6
|
props: {
|
|
7
7
|
asChild: {
|
|
8
8
|
type: Boolean,
|
|
9
|
-
default:
|
|
9
|
+
default: false
|
|
10
10
|
},
|
|
11
11
|
as: {
|
|
12
12
|
type: [String, Object],
|
|
13
13
|
default: "div"
|
|
14
14
|
}
|
|
15
15
|
},
|
|
16
|
-
setup(
|
|
17
|
-
const
|
|
18
|
-
|
|
16
|
+
setup(props, { attrs, slots }) {
|
|
17
|
+
const asTag = props.asChild ? "template" : props.as;
|
|
18
|
+
const SELF_CLOSING_TAGS = ["area", "img", "input"];
|
|
19
|
+
if (typeof asTag === "string" && SELF_CLOSING_TAGS.includes(asTag))
|
|
20
|
+
return () => h(asTag, attrs);
|
|
21
|
+
if (asTag !== "template") {
|
|
22
|
+
return () => h(props.as, attrs, { default: slots.default });
|
|
23
|
+
}
|
|
24
|
+
return () => h(Slot, attrs, { default: slots.default });
|
|
19
25
|
}
|
|
20
26
|
});
|
|
21
27
|
export {
|
|
22
|
-
|
|
28
|
+
Primitive
|
|
23
29
|
};
|
|
@@ -1,27 +1,36 @@
|
|
|
1
|
-
import { defineComponent
|
|
2
|
-
import { renderSlotFragments
|
|
3
|
-
const
|
|
1
|
+
import { defineComponent, Comment, mergeProps, cloneVNode } from "vue";
|
|
2
|
+
import { renderSlotFragments } from "./renderSlotFragments.mjs";
|
|
3
|
+
const Slot = defineComponent({
|
|
4
4
|
name: "PrimitiveSlot",
|
|
5
|
-
inheritAttrs:
|
|
6
|
-
setup(
|
|
5
|
+
inheritAttrs: false,
|
|
6
|
+
setup(_, { attrs, slots }) {
|
|
7
7
|
return () => {
|
|
8
|
-
var
|
|
9
|
-
if (!
|
|
8
|
+
var _a, _b;
|
|
9
|
+
if (!slots.default)
|
|
10
10
|
return null;
|
|
11
|
-
const
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
11
|
+
const childrens = renderSlotFragments(slots.default());
|
|
12
|
+
const firstNonCommentChildrenIndex = childrens.findIndex((child) => child.type !== Comment);
|
|
13
|
+
if (firstNonCommentChildrenIndex === -1)
|
|
14
|
+
return childrens;
|
|
15
|
+
const firstNonCommentChildren = childrens[firstNonCommentChildrenIndex];
|
|
16
|
+
(_a = firstNonCommentChildren.props) == null ? true : delete _a.ref;
|
|
17
|
+
const mergedProps = firstNonCommentChildren.props ? mergeProps(attrs, firstNonCommentChildren.props) : attrs;
|
|
18
|
+
if (attrs.class && ((_b = firstNonCommentChildren.props) == null ? void 0 : _b.class))
|
|
19
|
+
delete firstNonCommentChildren.props.class;
|
|
20
|
+
const cloned = cloneVNode(firstNonCommentChildren, mergedProps);
|
|
21
|
+
for (const prop in mergedProps) {
|
|
22
|
+
if (prop.startsWith("on")) {
|
|
23
|
+
cloned.props || (cloned.props = {});
|
|
24
|
+
cloned.props[prop] = mergedProps[prop];
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
if (childrens.length === 1)
|
|
28
|
+
return cloned;
|
|
29
|
+
childrens[firstNonCommentChildrenIndex] = cloned;
|
|
30
|
+
return childrens;
|
|
22
31
|
};
|
|
23
32
|
}
|
|
24
33
|
});
|
|
25
34
|
export {
|
|
26
|
-
|
|
35
|
+
Slot
|
|
27
36
|
};
|
|
@@ -1,6 +1,17 @@
|
|
|
1
|
-
import { createContext
|
|
2
|
-
const [
|
|
1
|
+
import { createContext } from "../utils/createContext.mjs";
|
|
2
|
+
const [injectMotion, provideMotion] = createContext("Motion");
|
|
3
|
+
const [injectLayoutGroup, provideLayoutGroup] = createContext("LayoutGroup");
|
|
4
|
+
function shouldInheritGroup(inherit) {
|
|
5
|
+
return inherit === true;
|
|
6
|
+
}
|
|
7
|
+
function shouldInheritId(inherit) {
|
|
8
|
+
return shouldInheritGroup(inherit === true) || inherit === "id";
|
|
9
|
+
}
|
|
3
10
|
export {
|
|
4
|
-
|
|
5
|
-
|
|
11
|
+
injectLayoutGroup,
|
|
12
|
+
injectMotion,
|
|
13
|
+
provideLayoutGroup,
|
|
14
|
+
provideMotion,
|
|
15
|
+
shouldInheritGroup,
|
|
16
|
+
shouldInheritId
|
|
6
17
|
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
function notify(node) {
|
|
2
|
+
return !node.isLayoutDirty && node.willUpdate(false);
|
|
3
|
+
}
|
|
4
|
+
function nodeGroup() {
|
|
5
|
+
const nodes = /* @__PURE__ */ new Set();
|
|
6
|
+
const subscriptions = /* @__PURE__ */ new WeakMap();
|
|
7
|
+
const dirtyAll = () => nodes.forEach(notify);
|
|
8
|
+
return {
|
|
9
|
+
add: (node) => {
|
|
10
|
+
nodes.add(node);
|
|
11
|
+
subscriptions.set(
|
|
12
|
+
node,
|
|
13
|
+
node.addEventListener("willUpdate", dirtyAll)
|
|
14
|
+
);
|
|
15
|
+
},
|
|
16
|
+
remove: (node) => {
|
|
17
|
+
nodes.delete(node);
|
|
18
|
+
const unsubscribe = subscriptions.get(node);
|
|
19
|
+
if (unsubscribe) {
|
|
20
|
+
unsubscribe();
|
|
21
|
+
subscriptions.delete(node);
|
|
22
|
+
}
|
|
23
|
+
dirtyAll();
|
|
24
|
+
},
|
|
25
|
+
dirty: dirtyAll
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
export {
|
|
29
|
+
nodeGroup
|
|
30
|
+
};
|
|
@@ -1,13 +1,16 @@
|
|
|
1
|
-
import { createContext
|
|
2
|
-
const
|
|
3
|
-
function
|
|
4
|
-
const
|
|
5
|
-
|
|
1
|
+
import { createContext } from "../utils/createContext.mjs";
|
|
2
|
+
const doneCallbacks = /* @__PURE__ */ new Map();
|
|
3
|
+
function removeDoneCallback(element) {
|
|
4
|
+
const prevDoneCallback = doneCallbacks.get(element);
|
|
5
|
+
if (prevDoneCallback) {
|
|
6
|
+
element.removeEventListener("motioncomplete", prevDoneCallback);
|
|
7
|
+
}
|
|
8
|
+
doneCallbacks.delete(element);
|
|
6
9
|
}
|
|
7
|
-
const [
|
|
10
|
+
const [injectAnimatePresence, provideAnimatePresence] = createContext("AnimatePresenceContext");
|
|
8
11
|
export {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
12
|
+
doneCallbacks,
|
|
13
|
+
injectAnimatePresence,
|
|
14
|
+
provideAnimatePresence,
|
|
15
|
+
removeDoneCallback
|
|
13
16
|
};
|
|
@@ -1,7 +1,13 @@
|
|
|
1
|
-
import { Fragment
|
|
2
|
-
function
|
|
3
|
-
|
|
1
|
+
import { Fragment } from "vue";
|
|
2
|
+
function renderSlotFragments(children) {
|
|
3
|
+
if (!children)
|
|
4
|
+
return [];
|
|
5
|
+
return children.flatMap((child) => {
|
|
6
|
+
if (child.type === Fragment)
|
|
7
|
+
return renderSlotFragments(child.children);
|
|
8
|
+
return [child];
|
|
9
|
+
});
|
|
4
10
|
}
|
|
5
11
|
export {
|
|
6
|
-
|
|
12
|
+
renderSlotFragments
|
|
7
13
|
};
|
|
@@ -1,19 +1,26 @@
|
|
|
1
|
-
const
|
|
1
|
+
const components = {
|
|
2
2
|
motion: [
|
|
3
3
|
"Motion",
|
|
4
|
-
"MotionPresence"
|
|
4
|
+
"MotionPresence",
|
|
5
|
+
"LayoutGroup"
|
|
5
6
|
]
|
|
6
|
-
}
|
|
7
|
+
};
|
|
8
|
+
const utilities = {
|
|
7
9
|
utilities: [
|
|
8
10
|
"useTransform",
|
|
9
11
|
"useTime",
|
|
10
12
|
"useMotionTemplate",
|
|
11
13
|
"useSpring",
|
|
12
14
|
"useScroll",
|
|
13
|
-
"useMotionValue"
|
|
15
|
+
"useMotionValue",
|
|
16
|
+
"useVelocity",
|
|
17
|
+
"useAnimate",
|
|
18
|
+
"useInView",
|
|
19
|
+
"useAnimationFrame",
|
|
20
|
+
"useMotionValueEvent"
|
|
14
21
|
]
|
|
15
22
|
};
|
|
16
23
|
export {
|
|
17
|
-
|
|
18
|
-
|
|
24
|
+
components,
|
|
25
|
+
utilities
|
|
19
26
|
};
|