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,31 +1,31 @@
|
|
|
1
|
-
import { scale
|
|
2
|
-
import { degrees
|
|
3
|
-
const
|
|
4
|
-
rotate:
|
|
5
|
-
rotateX:
|
|
6
|
-
rotateY:
|
|
7
|
-
rotateZ:
|
|
8
|
-
scale
|
|
9
|
-
scaleX:
|
|
10
|
-
scaleY:
|
|
11
|
-
scaleZ:
|
|
12
|
-
skew:
|
|
13
|
-
skewX:
|
|
14
|
-
skewY:
|
|
15
|
-
distance:
|
|
16
|
-
translateX:
|
|
17
|
-
translateY:
|
|
18
|
-
translateZ:
|
|
19
|
-
x:
|
|
20
|
-
y:
|
|
21
|
-
z:
|
|
22
|
-
perspective:
|
|
23
|
-
transformPerspective:
|
|
24
|
-
opacity:
|
|
25
|
-
originX:
|
|
26
|
-
originY:
|
|
27
|
-
originZ:
|
|
1
|
+
import { scale, alpha } from "../../../value/types/numbers/index.mjs";
|
|
2
|
+
import { degrees, px, progressPercentage } from "../../../value/types/numbers/units.mjs";
|
|
3
|
+
const transformValueTypes = {
|
|
4
|
+
rotate: degrees,
|
|
5
|
+
rotateX: degrees,
|
|
6
|
+
rotateY: degrees,
|
|
7
|
+
rotateZ: degrees,
|
|
8
|
+
scale,
|
|
9
|
+
scaleX: scale,
|
|
10
|
+
scaleY: scale,
|
|
11
|
+
scaleZ: scale,
|
|
12
|
+
skew: degrees,
|
|
13
|
+
skewX: degrees,
|
|
14
|
+
skewY: degrees,
|
|
15
|
+
distance: px,
|
|
16
|
+
translateX: px,
|
|
17
|
+
translateY: px,
|
|
18
|
+
translateZ: px,
|
|
19
|
+
x: px,
|
|
20
|
+
y: px,
|
|
21
|
+
z: px,
|
|
22
|
+
perspective: px,
|
|
23
|
+
transformPerspective: px,
|
|
24
|
+
opacity: alpha,
|
|
25
|
+
originX: progressPercentage,
|
|
26
|
+
originY: progressPercentage,
|
|
27
|
+
originZ: px
|
|
28
28
|
};
|
|
29
29
|
export {
|
|
30
|
-
|
|
30
|
+
transformValueTypes
|
|
31
31
|
};
|
|
@@ -1,25 +1,37 @@
|
|
|
1
|
-
import { resolveElements
|
|
2
|
-
const
|
|
1
|
+
import { resolveElements } from "../utils/resolve-element.mjs";
|
|
2
|
+
const thresholds = {
|
|
3
3
|
some: 0,
|
|
4
4
|
all: 1
|
|
5
5
|
};
|
|
6
|
-
function
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
6
|
+
function inView(elementOrSelector, onStart, { root, margin: rootMargin, amount = "some" } = {}) {
|
|
7
|
+
const elements = resolveElements(elementOrSelector);
|
|
8
|
+
const activeIntersections = /* @__PURE__ */ new WeakMap();
|
|
9
|
+
const onIntersectionChange = (entries) => {
|
|
10
|
+
entries.forEach((entry) => {
|
|
11
|
+
const onEnd = activeIntersections.get(entry.target);
|
|
12
|
+
if (entry.isIntersecting === Boolean(onEnd))
|
|
13
|
+
return;
|
|
14
|
+
if (entry.isIntersecting) {
|
|
15
|
+
const newOnEnd = onStart(entry);
|
|
16
|
+
if (typeof newOnEnd === "function") {
|
|
17
|
+
activeIntersections.set(entry.target, newOnEnd);
|
|
18
|
+
} else {
|
|
19
|
+
observer.unobserve(entry.target);
|
|
20
|
+
}
|
|
21
|
+
} else if (onEnd) {
|
|
22
|
+
onEnd(entry);
|
|
23
|
+
activeIntersections.delete(entry.target);
|
|
24
|
+
}
|
|
15
25
|
});
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
26
|
+
};
|
|
27
|
+
const observer = new IntersectionObserver(onIntersectionChange, {
|
|
28
|
+
root,
|
|
29
|
+
rootMargin,
|
|
30
|
+
threshold: typeof amount === "number" ? amount : thresholds[amount]
|
|
20
31
|
});
|
|
21
|
-
|
|
32
|
+
elements.forEach((element) => observer.observe(element));
|
|
33
|
+
return () => observer.disconnect();
|
|
22
34
|
}
|
|
23
35
|
export {
|
|
24
|
-
|
|
36
|
+
inView
|
|
25
37
|
};
|
|
@@ -1,46 +1,55 @@
|
|
|
1
|
-
import { buildHTMLStyles
|
|
2
|
-
import { isCSSVariableName
|
|
3
|
-
import { transformProps
|
|
4
|
-
import { scrapeMotionValuesFromProps
|
|
5
|
-
import { renderHTML
|
|
6
|
-
import { getDefaultValueType
|
|
7
|
-
import { measureViewportBox
|
|
8
|
-
import { DOMVisualElement
|
|
9
|
-
import { isMotionValue
|
|
10
|
-
function
|
|
11
|
-
return window.getComputedStyle(
|
|
1
|
+
import { buildHTMLStyles } from "./utils/build-styles.mjs";
|
|
2
|
+
import { isCSSVariableName } from "../dom/utils/is-css-variable.mjs";
|
|
3
|
+
import { transformProps } from "./utils/transform.mjs";
|
|
4
|
+
import { scrapeMotionValuesFromProps } from "./utils/scrape-motion-values.mjs";
|
|
5
|
+
import { renderHTML } from "./utils/render.mjs";
|
|
6
|
+
import { getDefaultValueType } from "../dom/value-types/defaults.mjs";
|
|
7
|
+
import { measureViewportBox } from "../../projection/utils/measure.mjs";
|
|
8
|
+
import { DOMVisualElement } from "../dom/DOMVisualElement.mjs";
|
|
9
|
+
import { isMotionValue } from "../../value/utils/is-motion-value.mjs";
|
|
10
|
+
function getComputedStyle(element) {
|
|
11
|
+
return window.getComputedStyle(element);
|
|
12
12
|
}
|
|
13
|
-
class
|
|
13
|
+
class HTMLVisualElement extends DOMVisualElement {
|
|
14
14
|
constructor() {
|
|
15
|
-
super(...arguments)
|
|
15
|
+
super(...arguments);
|
|
16
|
+
this.type = "html";
|
|
17
|
+
this.renderInstance = renderHTML;
|
|
16
18
|
}
|
|
17
|
-
readValueFromInstance(
|
|
18
|
-
if (
|
|
19
|
-
const
|
|
20
|
-
return
|
|
19
|
+
readValueFromInstance(instance, key) {
|
|
20
|
+
if (transformProps.has(key)) {
|
|
21
|
+
const defaultType = getDefaultValueType(key);
|
|
22
|
+
return defaultType ? defaultType.default || 0 : 0;
|
|
21
23
|
} else {
|
|
22
|
-
const
|
|
23
|
-
|
|
24
|
+
const computedStyle = getComputedStyle(instance);
|
|
25
|
+
const value = (isCSSVariableName(key) ? computedStyle.getPropertyValue(key) : computedStyle[key]) || 0;
|
|
26
|
+
return typeof value === "string" ? value.trim() : value;
|
|
24
27
|
}
|
|
25
28
|
}
|
|
26
|
-
measureInstanceViewportBox(
|
|
27
|
-
return
|
|
29
|
+
measureInstanceViewportBox(instance, { transformPagePoint }) {
|
|
30
|
+
return measureViewportBox(instance, transformPagePoint);
|
|
28
31
|
}
|
|
29
|
-
build(
|
|
30
|
-
|
|
32
|
+
build(renderState, latestValues, props) {
|
|
33
|
+
buildHTMLStyles(renderState, latestValues, props.transformTemplate);
|
|
31
34
|
}
|
|
32
|
-
scrapeMotionValuesFromProps(
|
|
33
|
-
return
|
|
35
|
+
scrapeMotionValuesFromProps(props, prevProps, visualElement) {
|
|
36
|
+
return scrapeMotionValuesFromProps(props, prevProps, visualElement);
|
|
34
37
|
}
|
|
35
38
|
handleChildMotionValue() {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}
|
|
39
|
+
if (this.childSubscription) {
|
|
40
|
+
this.childSubscription();
|
|
41
|
+
delete this.childSubscription;
|
|
42
|
+
}
|
|
43
|
+
const { children } = this.props;
|
|
44
|
+
if (isMotionValue(children)) {
|
|
45
|
+
this.childSubscription = children.on("change", (latest) => {
|
|
46
|
+
if (this.current)
|
|
47
|
+
this.current.textContent = `${latest}`;
|
|
48
|
+
});
|
|
49
|
+
}
|
|
41
50
|
}
|
|
42
51
|
}
|
|
43
52
|
export {
|
|
44
|
-
|
|
45
|
-
|
|
53
|
+
HTMLVisualElement,
|
|
54
|
+
getComputedStyle
|
|
46
55
|
};
|
|
@@ -1,29 +1,42 @@
|
|
|
1
|
-
import { buildTransform
|
|
2
|
-
import { isCSSVariableName
|
|
3
|
-
import { transformProps
|
|
4
|
-
import { getValueAsType
|
|
5
|
-
import { numberValueTypes
|
|
6
|
-
function
|
|
7
|
-
const { style
|
|
8
|
-
let
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
1
|
+
import { buildTransform } from "./build-transform.mjs";
|
|
2
|
+
import { isCSSVariableName } from "../../dom/utils/is-css-variable.mjs";
|
|
3
|
+
import { transformProps } from "./transform.mjs";
|
|
4
|
+
import { getValueAsType } from "../../dom/value-types/get-as-type.mjs";
|
|
5
|
+
import { numberValueTypes } from "../../dom/value-types/number.mjs";
|
|
6
|
+
function buildHTMLStyles(state, latestValues, transformTemplate) {
|
|
7
|
+
const { style, vars, transformOrigin } = state;
|
|
8
|
+
let hasTransform = false;
|
|
9
|
+
let hasTransformOrigin = false;
|
|
10
|
+
for (const key in latestValues) {
|
|
11
|
+
const value = latestValues[key];
|
|
12
|
+
if (transformProps.has(key)) {
|
|
13
|
+
hasTransform = true;
|
|
13
14
|
continue;
|
|
14
|
-
} else if (
|
|
15
|
-
|
|
15
|
+
} else if (isCSSVariableName(key)) {
|
|
16
|
+
vars[key] = value;
|
|
16
17
|
continue;
|
|
17
18
|
} else {
|
|
18
|
-
const
|
|
19
|
-
|
|
19
|
+
const valueAsType = getValueAsType(value, numberValueTypes[key]);
|
|
20
|
+
if (key.startsWith("origin")) {
|
|
21
|
+
hasTransformOrigin = true;
|
|
22
|
+
transformOrigin[key] = valueAsType;
|
|
23
|
+
} else {
|
|
24
|
+
style[key] = valueAsType;
|
|
25
|
+
}
|
|
20
26
|
}
|
|
21
27
|
}
|
|
22
|
-
if (
|
|
23
|
-
|
|
24
|
-
|
|
28
|
+
if (!latestValues.transform) {
|
|
29
|
+
if (hasTransform || transformTemplate) {
|
|
30
|
+
style.transform = buildTransform(latestValues, state.transform, transformTemplate);
|
|
31
|
+
} else if (style.transform) {
|
|
32
|
+
style.transform = "none";
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
if (hasTransformOrigin) {
|
|
36
|
+
const { originX = "50%", originY = "50%", originZ = 0 } = transformOrigin;
|
|
37
|
+
style.transformOrigin = `${originX} ${originY} ${originZ}`;
|
|
25
38
|
}
|
|
26
39
|
}
|
|
27
40
|
export {
|
|
28
|
-
|
|
41
|
+
buildHTMLStyles
|
|
29
42
|
};
|
|
@@ -1,31 +1,47 @@
|
|
|
1
|
-
import { transformPropOrder
|
|
2
|
-
import { getValueAsType
|
|
3
|
-
import { numberValueTypes
|
|
4
|
-
const
|
|
1
|
+
import { transformPropOrder } from "./transform.mjs";
|
|
2
|
+
import { getValueAsType } from "../../dom/value-types/get-as-type.mjs";
|
|
3
|
+
import { numberValueTypes } from "../../dom/value-types/number.mjs";
|
|
4
|
+
const translateAlias = {
|
|
5
5
|
x: "translateX",
|
|
6
6
|
y: "translateY",
|
|
7
7
|
z: "translateZ",
|
|
8
8
|
transformPerspective: "perspective"
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
9
|
+
};
|
|
10
|
+
const numTransforms = transformPropOrder.length;
|
|
11
|
+
function buildTransform(latestValues, transform, transformTemplate) {
|
|
12
|
+
let transformString = "";
|
|
13
|
+
let transformIsDefault = true;
|
|
14
|
+
for (let i = 0; i < numTransforms; i++) {
|
|
15
|
+
const key = transformPropOrder[i];
|
|
16
|
+
const value = latestValues[key];
|
|
17
|
+
if (value === void 0)
|
|
15
18
|
continue;
|
|
16
|
-
let
|
|
17
|
-
if (typeof
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
19
|
+
let valueIsDefault = true;
|
|
20
|
+
if (typeof value === "number") {
|
|
21
|
+
valueIsDefault = value === (key.startsWith("scale") ? 1 : 0);
|
|
22
|
+
} else {
|
|
23
|
+
valueIsDefault = parseFloat(value) === 0;
|
|
24
|
+
}
|
|
25
|
+
if (!valueIsDefault || transformTemplate) {
|
|
26
|
+
const valueAsType = getValueAsType(value, numberValueTypes[key]);
|
|
27
|
+
if (!valueIsDefault) {
|
|
28
|
+
transformIsDefault = false;
|
|
29
|
+
const transformName = translateAlias[key] || key;
|
|
30
|
+
transformString += `${transformName}(${valueAsType}) `;
|
|
31
|
+
}
|
|
32
|
+
if (transformTemplate) {
|
|
33
|
+
transform[key] = valueAsType;
|
|
23
34
|
}
|
|
24
|
-
s && (i[t] = f);
|
|
25
35
|
}
|
|
26
36
|
}
|
|
27
|
-
|
|
37
|
+
transformString = transformString.trim();
|
|
38
|
+
if (transformTemplate) {
|
|
39
|
+
transformString = transformTemplate(transform, transformIsDefault ? "" : transformString);
|
|
40
|
+
} else if (transformIsDefault) {
|
|
41
|
+
transformString = "none";
|
|
42
|
+
}
|
|
43
|
+
return transformString;
|
|
28
44
|
}
|
|
29
45
|
export {
|
|
30
|
-
|
|
46
|
+
buildTransform
|
|
31
47
|
};
|
|
@@ -1,16 +1,22 @@
|
|
|
1
|
-
import { analyseComplexValue
|
|
2
|
-
import { getAnimatableNone
|
|
3
|
-
const
|
|
4
|
-
function
|
|
5
|
-
let
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
import { analyseComplexValue } from "../../../value/types/complex/index.mjs";
|
|
2
|
+
import { getAnimatableNone } from "../../dom/value-types/animatable-none.mjs";
|
|
3
|
+
const invalidTemplates = /* @__PURE__ */ new Set(["auto", "none", "0"]);
|
|
4
|
+
function makeNoneKeyframesAnimatable(unresolvedKeyframes, noneKeyframeIndexes, name) {
|
|
5
|
+
let i = 0;
|
|
6
|
+
let animatableTemplate = void 0;
|
|
7
|
+
while (i < unresolvedKeyframes.length && !animatableTemplate) {
|
|
8
|
+
const keyframe = unresolvedKeyframes[i];
|
|
9
|
+
if (typeof keyframe === "string" && !invalidTemplates.has(keyframe) && analyseComplexValue(keyframe).values.length) {
|
|
10
|
+
animatableTemplate = unresolvedKeyframes[i];
|
|
11
|
+
}
|
|
12
|
+
i++;
|
|
13
|
+
}
|
|
14
|
+
if (animatableTemplate && name) {
|
|
15
|
+
for (const noneIndex of noneKeyframeIndexes) {
|
|
16
|
+
unresolvedKeyframes[noneIndex] = getAnimatableNone(name, animatableTemplate);
|
|
17
|
+
}
|
|
9
18
|
}
|
|
10
|
-
if (a && o)
|
|
11
|
-
for (const t of i)
|
|
12
|
-
e[t] = m(o, a);
|
|
13
19
|
}
|
|
14
20
|
export {
|
|
15
|
-
|
|
21
|
+
makeNoneKeyframesAnimatable
|
|
16
22
|
};
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
function
|
|
2
|
-
Object.assign(
|
|
3
|
-
for (const
|
|
4
|
-
|
|
1
|
+
function renderHTML(element, { style, vars }, styleProp, projection) {
|
|
2
|
+
Object.assign(element.style, style, projection && projection.getProjectionStyles(styleProp));
|
|
3
|
+
for (const key in vars) {
|
|
4
|
+
element.style.setProperty(key, vars[key]);
|
|
5
|
+
}
|
|
5
6
|
}
|
|
6
7
|
export {
|
|
7
|
-
|
|
8
|
+
renderHTML
|
|
8
9
|
};
|
|
@@ -1,12 +1,16 @@
|
|
|
1
|
-
import { isForcedMotionValue
|
|
2
|
-
import { isMotionValue
|
|
3
|
-
function
|
|
4
|
-
var
|
|
5
|
-
const { style
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
import { isForcedMotionValue } from "../../../motion/utils/is-forced-motion-value.mjs";
|
|
2
|
+
import { isMotionValue } from "../../../value/utils/is-motion-value.mjs";
|
|
3
|
+
function scrapeMotionValuesFromProps(props, prevProps, visualElement) {
|
|
4
|
+
var _a;
|
|
5
|
+
const { style } = props;
|
|
6
|
+
const newValues = {};
|
|
7
|
+
for (const key in style) {
|
|
8
|
+
if (isMotionValue(style[key]) || prevProps.style && isMotionValue(prevProps.style[key]) || isForcedMotionValue(key, props) || ((_a = visualElement === null || visualElement === void 0 ? void 0 : visualElement.getValue(key)) === null || _a === void 0 ? void 0 : _a.liveStyle) !== void 0) {
|
|
9
|
+
newValues[key] = style[key];
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
return newValues;
|
|
9
13
|
}
|
|
10
14
|
export {
|
|
11
|
-
|
|
15
|
+
scrapeMotionValuesFromProps
|
|
12
16
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const
|
|
1
|
+
const transformPropOrder = [
|
|
2
2
|
"transformPerspective",
|
|
3
3
|
"x",
|
|
4
4
|
"y",
|
|
@@ -16,8 +16,9 @@ const t = [
|
|
|
16
16
|
"skew",
|
|
17
17
|
"skewX",
|
|
18
18
|
"skewY"
|
|
19
|
-
]
|
|
19
|
+
];
|
|
20
|
+
const transformProps = new Set(transformPropOrder);
|
|
20
21
|
export {
|
|
21
|
-
|
|
22
|
-
|
|
22
|
+
transformPropOrder,
|
|
23
|
+
transformProps
|
|
23
24
|
};
|
|
@@ -1,37 +1,41 @@
|
|
|
1
|
-
import { createBox
|
|
2
|
-
import { VisualElement
|
|
3
|
-
function
|
|
4
|
-
return
|
|
1
|
+
import { createBox } from "../../projection/geometry/models.mjs";
|
|
2
|
+
import { VisualElement } from "../VisualElement.mjs";
|
|
3
|
+
function isObjectKey(key, object) {
|
|
4
|
+
return key in object;
|
|
5
5
|
}
|
|
6
|
-
class
|
|
6
|
+
class ObjectVisualElement extends VisualElement {
|
|
7
7
|
constructor() {
|
|
8
|
-
super(...arguments)
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.type = "object";
|
|
10
|
+
}
|
|
11
|
+
readValueFromInstance(instance, key) {
|
|
12
|
+
if (isObjectKey(key, instance)) {
|
|
13
|
+
const value = instance[key];
|
|
14
|
+
if (typeof value === "string" || typeof value === "number") {
|
|
15
|
+
return value;
|
|
16
|
+
}
|
|
15
17
|
}
|
|
18
|
+
return void 0;
|
|
16
19
|
}
|
|
17
20
|
getBaseTargetFromProps() {
|
|
21
|
+
return void 0;
|
|
18
22
|
}
|
|
19
|
-
removeValueFromRenderState(
|
|
20
|
-
delete
|
|
23
|
+
removeValueFromRenderState(key, renderState) {
|
|
24
|
+
delete renderState.output[key];
|
|
21
25
|
}
|
|
22
26
|
measureInstanceViewportBox() {
|
|
23
|
-
return
|
|
27
|
+
return createBox();
|
|
24
28
|
}
|
|
25
|
-
build(
|
|
26
|
-
Object.assign(
|
|
29
|
+
build(renderState, latestValues) {
|
|
30
|
+
Object.assign(renderState.output, latestValues);
|
|
27
31
|
}
|
|
28
|
-
renderInstance(
|
|
29
|
-
Object.assign(
|
|
32
|
+
renderInstance(instance, { output }) {
|
|
33
|
+
Object.assign(instance, output);
|
|
30
34
|
}
|
|
31
35
|
sortInstanceNodePosition() {
|
|
32
36
|
return 0;
|
|
33
37
|
}
|
|
34
38
|
}
|
|
35
39
|
export {
|
|
36
|
-
|
|
40
|
+
ObjectVisualElement
|
|
37
41
|
};
|
|
@@ -1,40 +1,45 @@
|
|
|
1
|
-
import { scrapeMotionValuesFromProps
|
|
2
|
-
import { DOMVisualElement
|
|
3
|
-
import { buildSVGAttrs
|
|
4
|
-
import { camelToDash
|
|
5
|
-
import { camelCaseAttributes
|
|
6
|
-
import { transformProps
|
|
7
|
-
import { renderSVG
|
|
8
|
-
import { getDefaultValueType
|
|
9
|
-
import { createBox
|
|
10
|
-
import { isSVGTag
|
|
11
|
-
class
|
|
1
|
+
import { scrapeMotionValuesFromProps } from "./utils/scrape-motion-values.mjs";
|
|
2
|
+
import { DOMVisualElement } from "../dom/DOMVisualElement.mjs";
|
|
3
|
+
import { buildSVGAttrs } from "./utils/build-attrs.mjs";
|
|
4
|
+
import { camelToDash } from "../dom/utils/camel-to-dash.mjs";
|
|
5
|
+
import { camelCaseAttributes } from "./utils/camel-case-attrs.mjs";
|
|
6
|
+
import { transformProps } from "../html/utils/transform.mjs";
|
|
7
|
+
import { renderSVG } from "./utils/render.mjs";
|
|
8
|
+
import { getDefaultValueType } from "../dom/value-types/defaults.mjs";
|
|
9
|
+
import { createBox } from "../../projection/geometry/models.mjs";
|
|
10
|
+
import { isSVGTag } from "./utils/is-svg-tag.mjs";
|
|
11
|
+
class SVGVisualElement extends DOMVisualElement {
|
|
12
12
|
constructor() {
|
|
13
|
-
super(...arguments)
|
|
13
|
+
super(...arguments);
|
|
14
|
+
this.type = "svg";
|
|
15
|
+
this.isSVGTag = false;
|
|
16
|
+
this.measureInstanceViewportBox = createBox;
|
|
14
17
|
}
|
|
15
|
-
getBaseTargetFromProps(
|
|
16
|
-
return
|
|
18
|
+
getBaseTargetFromProps(props, key) {
|
|
19
|
+
return props[key];
|
|
17
20
|
}
|
|
18
|
-
readValueFromInstance(
|
|
19
|
-
if (
|
|
20
|
-
const
|
|
21
|
-
return
|
|
21
|
+
readValueFromInstance(instance, key) {
|
|
22
|
+
if (transformProps.has(key)) {
|
|
23
|
+
const defaultType = getDefaultValueType(key);
|
|
24
|
+
return defaultType ? defaultType.default || 0 : 0;
|
|
22
25
|
}
|
|
23
|
-
|
|
26
|
+
key = !camelCaseAttributes.has(key) ? camelToDash(key) : key;
|
|
27
|
+
return instance.getAttribute(key);
|
|
24
28
|
}
|
|
25
|
-
scrapeMotionValuesFromProps(
|
|
26
|
-
return
|
|
29
|
+
scrapeMotionValuesFromProps(props, prevProps, visualElement) {
|
|
30
|
+
return scrapeMotionValuesFromProps(props, prevProps, visualElement);
|
|
27
31
|
}
|
|
28
|
-
build(
|
|
29
|
-
|
|
32
|
+
build(renderState, latestValues, props) {
|
|
33
|
+
buildSVGAttrs(renderState, latestValues, this.isSVGTag, props.transformTemplate);
|
|
30
34
|
}
|
|
31
|
-
renderInstance(
|
|
32
|
-
|
|
35
|
+
renderInstance(instance, renderState, styleProp, projection) {
|
|
36
|
+
renderSVG(instance, renderState, styleProp, projection);
|
|
33
37
|
}
|
|
34
|
-
mount(
|
|
35
|
-
this.isSVGTag =
|
|
38
|
+
mount(instance) {
|
|
39
|
+
this.isSVGTag = isSVGTag(instance.tagName);
|
|
40
|
+
super.mount(instance);
|
|
36
41
|
}
|
|
37
42
|
}
|
|
38
43
|
export {
|
|
39
|
-
|
|
44
|
+
SVGVisualElement
|
|
40
45
|
};
|