framer-motion 9.0.2 → 9.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/dist/cjs/index.js +3344 -3260
  2. package/dist/es/animation/hooks/use-animated-state.mjs +3 -3
  3. package/dist/es/animation/index.mjs +3 -5
  4. package/dist/es/animation/legacy-popmotion/index.mjs +6 -2
  5. package/dist/es/animation/legacy-popmotion/inertia.mjs +4 -5
  6. package/dist/es/components/AnimatePresence/use-presence.mjs +0 -1
  7. package/dist/es/events/add-dom-event.mjs +6 -0
  8. package/dist/es/events/add-pointer-event.mjs +8 -0
  9. package/dist/es/events/use-dom-event.mjs +2 -5
  10. package/dist/es/gestures/drag/VisualElementDragControls.mjs +31 -30
  11. package/dist/es/gestures/drag/index.mjs +27 -0
  12. package/dist/es/gestures/focus.mjs +42 -0
  13. package/dist/es/gestures/hover.mjs +32 -0
  14. package/dist/es/gestures/{PanSession.mjs → pan/PanSession.mjs} +8 -8
  15. package/dist/es/gestures/pan/index.mjs +38 -0
  16. package/dist/es/gestures/press.mjs +109 -0
  17. package/dist/es/index.mjs +1 -1
  18. package/dist/es/motion/features/Feature.mjs +9 -0
  19. package/dist/es/motion/features/animation/exit.mjs +32 -0
  20. package/dist/es/motion/features/animation/index.mjs +38 -0
  21. package/dist/es/motion/features/animations.mjs +8 -37
  22. package/dist/es/motion/features/definitions.mjs +17 -23
  23. package/dist/es/motion/features/drag.mjs +12 -5
  24. package/dist/es/motion/features/gestures.mjs +16 -9
  25. package/dist/es/motion/features/layout/MeasureLayout.mjs +5 -5
  26. package/dist/es/motion/features/layout.mjs +11 -0
  27. package/dist/es/motion/features/load-features.mjs +4 -6
  28. package/dist/es/motion/features/viewport/index.mjs +96 -0
  29. package/dist/es/motion/index.mjs +12 -13
  30. package/dist/es/motion/utils/use-visual-element.mjs +8 -2
  31. package/dist/es/projection/geometry/delta-apply.mjs +9 -2
  32. package/dist/es/projection/geometry/delta-calc.mjs +2 -2
  33. package/dist/es/projection/geometry/delta-remove.mjs +2 -2
  34. package/dist/es/projection/node/DocumentProjectionNode.mjs +1 -1
  35. package/dist/es/projection/node/create-projection-node.mjs +65 -57
  36. package/dist/es/projection/node/group.mjs +5 -3
  37. package/dist/es/projection/shared/stack.mjs +7 -5
  38. package/dist/es/render/VisualElement.mjs +68 -47
  39. package/dist/es/render/dom/DOMVisualElement.mjs +1 -2
  40. package/dist/es/render/dom/features-max.mjs +2 -4
  41. package/dist/es/render/dom/motion.mjs +5 -6
  42. package/dist/es/render/dom/utils/create-config.mjs +1 -2
  43. package/dist/es/render/dom/value-types/animatable-none.mjs +3 -2
  44. package/dist/es/render/svg/SVGVisualElement.mjs +2 -2
  45. package/dist/es/render/utils/animation-state.mjs +6 -2
  46. package/dist/es/render/utils/animation.mjs +4 -4
  47. package/dist/es/render/utils/motion-values.mjs +1 -1
  48. package/dist/es/render/utils/setters.mjs +14 -9
  49. package/dist/es/value/index.mjs +1 -1
  50. package/dist/es/value/utils/is-motion-value.mjs +1 -1
  51. package/dist/framer-motion.dev.js +3341 -3257
  52. package/dist/framer-motion.js +1 -1
  53. package/dist/index.d.ts +85 -77
  54. package/dist/projection.dev.js +217 -177
  55. package/dist/size-rollup-dom-animation-assets.js +1 -1
  56. package/dist/size-rollup-dom-animation-m.js +1 -1
  57. package/dist/size-rollup-dom-animation.js +1 -1
  58. package/dist/size-rollup-dom-max-assets.js +1 -1
  59. package/dist/size-rollup-dom-max.js +1 -1
  60. package/dist/size-rollup-m.js +1 -1
  61. package/dist/size-rollup-motion.js +1 -1
  62. package/dist/size-webpack-dom-animation.js +1 -1
  63. package/dist/size-webpack-dom-max.js +1 -1
  64. package/dist/size-webpack-m.js +1 -1
  65. package/dist/three-entry.d.ts +74 -38
  66. package/package.json +8 -8
  67. package/dist/es/events/use-pointer-event.mjs +0 -11
  68. package/dist/es/gestures/drag/use-drag.mjs +0 -20
  69. package/dist/es/gestures/use-focus-gesture.mjs +0 -37
  70. package/dist/es/gestures/use-hover-gesture.mjs +0 -32
  71. package/dist/es/gestures/use-pan-gesture.mjs +0 -46
  72. package/dist/es/gestures/use-tap-gesture.mjs +0 -115
  73. package/dist/es/motion/features/layout/index.mjs +0 -7
  74. package/dist/es/motion/features/viewport/use-viewport.mjs +0 -97
  75. package/dist/es/motion/utils/VisualElementHandler.mjs +0 -19
  76. package/dist/es/motion/utils/make-renderless-component.mjs +0 -6
package/dist/index.d.ts CHANGED
@@ -1193,53 +1193,57 @@ interface UseVisualStateConfig<Instance, RenderState> {
1193
1193
  }
1194
1194
  declare const makeUseVisualState: <I, RS>(config: UseVisualStateConfig<I, RS>) => UseVisualState<I, RS>;
1195
1195
 
1196
- /**
1197
- * @public
1198
- */
1199
- interface FeatureProps<T = unknown> extends MotionProps {
1200
- visualElement: VisualElement<T>;
1196
+ declare abstract class Feature<T> {
1197
+ isMounted: boolean;
1198
+ node: VisualElement<T>;
1199
+ constructor(node: VisualElement<T>);
1200
+ abstract mount(): void;
1201
+ abstract unmount(): void;
1202
+ update(): void;
1201
1203
  }
1202
- declare type FeatureNames = {
1203
- animation: true;
1204
- exit: true;
1205
- drag: true;
1206
- tap: true;
1207
- focus: true;
1208
- hover: true;
1209
- pan: true;
1210
- inView: true;
1211
- measureLayout: true;
1212
- };
1213
- declare type FeatureComponent = React$1.ComponentType<React$1.PropsWithChildren<FeatureProps>>;
1214
- /**
1215
- * @public
1216
- */
1217
- interface FeatureDefinition {
1204
+
1205
+ declare function MeasureLayout(props: MotionProps & {
1206
+ visualElement: VisualElement;
1207
+ }): JSX.Element;
1208
+
1209
+ declare type HydratedFeatureDefinition = {
1218
1210
  isEnabled: (props: MotionProps) => boolean;
1219
- Component?: FeatureComponent;
1220
- }
1221
- interface FeatureComponents {
1222
- animation?: FeatureComponent;
1223
- exit?: FeatureComponent;
1224
- drag?: FeatureComponent;
1225
- tap?: FeatureComponent;
1226
- focus?: FeatureComponent;
1227
- hover?: FeatureComponent;
1228
- pan?: FeatureComponent;
1229
- inView?: FeatureComponent;
1230
- measureLayout?: FeatureComponent;
1231
- }
1232
- interface FeatureBundle extends FeatureComponents {
1233
- renderer: CreateVisualElement<any>;
1234
- projectionNodeConstructor?: any;
1211
+ Feature: typeof Feature<any>;
1212
+ ProjectionNode?: any;
1213
+ MeasureLayout?: typeof MeasureLayout;
1214
+ };
1215
+ interface HydratedFeatureDefinitions {
1216
+ animation?: HydratedFeatureDefinition;
1217
+ exit?: HydratedFeatureDefinition;
1218
+ drag?: HydratedFeatureDefinition;
1219
+ tap?: HydratedFeatureDefinition;
1220
+ focus?: HydratedFeatureDefinition;
1221
+ hover?: HydratedFeatureDefinition;
1222
+ pan?: HydratedFeatureDefinition;
1223
+ inView?: HydratedFeatureDefinition;
1224
+ layout?: HydratedFeatureDefinition;
1235
1225
  }
1236
- declare type LazyFeatureBundle$1 = () => Promise<FeatureBundle>;
1226
+ declare type FeatureDefinition = {
1227
+ isEnabled: HydratedFeatureDefinition["isEnabled"];
1228
+ Feature?: HydratedFeatureDefinition["Feature"];
1229
+ ProjectionNode?: HydratedFeatureDefinition["ProjectionNode"];
1230
+ MeasureLayout?: HydratedFeatureDefinition["MeasureLayout"];
1231
+ };
1237
1232
  declare type FeatureDefinitions = {
1238
- [K in keyof FeatureNames]: FeatureDefinition;
1233
+ [K in keyof HydratedFeatureDefinition]: FeatureDefinition;
1239
1234
  };
1240
- declare type LoadedFeatures = FeatureDefinitions & {
1241
- projectionNodeConstructor?: any;
1235
+ declare type FeaturePackage = {
1236
+ Feature?: HydratedFeatureDefinition["Feature"];
1237
+ ProjectionNode?: HydratedFeatureDefinition["ProjectionNode"];
1238
+ MeasureLayout?: HydratedFeatureDefinition["MeasureLayout"];
1242
1239
  };
1240
+ declare type FeaturePackages = {
1241
+ [K in keyof HydratedFeatureDefinitions]: FeaturePackage;
1242
+ };
1243
+ interface FeatureBundle extends FeaturePackages {
1244
+ renderer: CreateVisualElement<any>;
1245
+ }
1246
+ declare type LazyFeatureBundle$1 = () => Promise<FeatureBundle>;
1243
1247
  declare type RenderComponent<Instance, RenderState> = (Component: string | React$1.ComponentType<React$1.PropsWithChildren<unknown>>, props: MotionProps, projectionId: number | undefined, ref: React$1.Ref<Instance>, visualState: VisualState<Instance, RenderState>, isStatic: boolean, visualElement?: VisualElement<Instance>) => any;
1244
1248
 
1245
1249
  declare enum AnimationType {
@@ -1283,6 +1287,22 @@ interface AnimationTypeState {
1283
1287
  prevProp?: VariantLabels | TargetAndTransition;
1284
1288
  }
1285
1289
 
1290
+ /**
1291
+ * @public
1292
+ */
1293
+ interface PresenceContextProps {
1294
+ id: string;
1295
+ isPresent: boolean;
1296
+ register: (id: string | number) => () => void;
1297
+ onExitComplete?: (id: string | number) => void;
1298
+ initial?: false | VariantLabels;
1299
+ custom?: any;
1300
+ }
1301
+ /**
1302
+ * @public
1303
+ */
1304
+ declare const PresenceContext: React$1.Context<PresenceContextProps | null>;
1305
+
1286
1306
  /**
1287
1307
  * A VisualElement is an imperative abstraction around UI elements such as
1288
1308
  * HTMLElement, SVGElement, Three.Object3D etc.
@@ -1421,11 +1441,6 @@ declare abstract class VisualElement<Instance = unknown, RenderState = unknown,
1421
1441
  * value might be provided externally by the component via props.
1422
1442
  */
1423
1443
  values: Map<string, MotionValue<any>>;
1424
- /**
1425
- * Tracks whether this VisualElement's React component is currently present
1426
- * within the defined React tree.
1427
- */
1428
- isPresent: boolean;
1429
1444
  /**
1430
1445
  * The AnimationState, this is hydrated by the animation Feature.
1431
1446
  */
@@ -1438,7 +1453,14 @@ declare abstract class VisualElement<Instance = unknown, RenderState = unknown,
1438
1453
  /**
1439
1454
  * A reference to the latest props provided to the VisualElement's host React component.
1440
1455
  */
1441
- protected props: MotionProps;
1456
+ props: MotionProps;
1457
+ prevProps?: MotionProps;
1458
+ presenceContext: PresenceContextProps | null;
1459
+ prevPresenceContext?: PresenceContextProps | null;
1460
+ /**
1461
+ * Cleanup functions for active features (hover/tap/exit etc)
1462
+ */
1463
+ private features;
1442
1464
  /**
1443
1465
  * A map of every subscription that binds the provided or generated
1444
1466
  * motion values onChange listeners to this visual element.
@@ -1478,12 +1500,13 @@ declare abstract class VisualElement<Instance = unknown, RenderState = unknown,
1478
1500
  * VisualElement.on(), but only one of those can be defined via the onUpdate prop.
1479
1501
  */
1480
1502
  private propEventSubscriptions;
1481
- constructor({ parent, props, reducedMotionConfig, visualState, }: VisualElementOptions<Instance, RenderState>, options?: Options);
1503
+ constructor({ parent, props, presenceContext, reducedMotionConfig, visualState, }: VisualElementOptions<Instance, RenderState>, options?: Options);
1482
1504
  mount(instance: Instance): void;
1483
1505
  unmount(): void;
1484
1506
  private bindToMotionValue;
1485
1507
  sortNodePosition(other: VisualElement<Instance>): number;
1486
- loadFeatures({ children, ...renderedProps }: MotionProps, isStrict: boolean, preloadedFeatures?: FeatureBundle, projectionId?: number, ProjectionNodeConstructor?: any, initialLayoutGroupConfig?: SwitchLayoutGroupContext): JSX.Element[];
1508
+ loadFeatures({ children, ...renderedProps }: MotionProps, isStrict: boolean, preloadedFeatures?: FeatureBundle, projectionId?: number, initialLayoutGroupConfig?: SwitchLayoutGroupContext): React$1.ComponentType<MotionProps> | undefined;
1509
+ updateFeatures(): void;
1487
1510
  notifyUpdate: () => void;
1488
1511
  triggerBuild(): void;
1489
1512
  render: () => void;
@@ -1508,7 +1531,7 @@ declare abstract class VisualElement<Instance = unknown, RenderState = unknown,
1508
1531
  * Update the provided props. Ensure any newly-added motion values are
1509
1532
  * added to our map, old ones removed, and listeners updated.
1510
1533
  */
1511
- setProps(props: MotionProps): void;
1534
+ update(props: MotionProps, presenceContext: PresenceContextProps | null): void;
1512
1535
  getProps(): MotionProps;
1513
1536
  /**
1514
1537
  * Returns the variant definition with a given name.
@@ -2494,7 +2517,7 @@ interface PanHandlers {
2494
2517
  * - `offset`: Offset from the original pan event.
2495
2518
  * - `velocity`: Current velocity of the pointer.
2496
2519
  */
2497
- onPan?(event: MouseEvent | TouchEvent | PointerEvent, info: PanInfo): void;
2520
+ onPan?(event: PointerEvent, info: PanInfo): void;
2498
2521
  /**
2499
2522
  * Callback function that fires when the pan gesture begins on this element.
2500
2523
  *
@@ -2514,7 +2537,7 @@ interface PanHandlers {
2514
2537
  * - `offset`: Offset from the original pan event.
2515
2538
  * - `velocity`: Current velocity of the pointer.
2516
2539
  */
2517
- onPanStart?(event: MouseEvent | TouchEvent | PointerEvent, info: PanInfo): void;
2540
+ onPanStart?(event: PointerEvent, info: PanInfo): void;
2518
2541
  /**
2519
2542
  * Callback function that fires when we begin detecting a pan gesture. This
2520
2543
  * is analogous to `onMouseStart` or `onTouchStart`.
@@ -2532,7 +2555,7 @@ interface PanHandlers {
2532
2555
  *
2533
2556
  * - `point`: Relative to the device or page.
2534
2557
  */
2535
- onPanSessionStart?(event: MouseEvent | TouchEvent | PointerEvent, info: EventInfo): void;
2558
+ onPanSessionStart?(event: PointerEvent, info: EventInfo): void;
2536
2559
  /**
2537
2560
  * Callback function that fires when the pan gesture ends on this element.
2538
2561
  *
@@ -2552,7 +2575,7 @@ interface PanHandlers {
2552
2575
  * - `offset`: Offset from the original pan event.
2553
2576
  * - `velocity`: Current velocity of the pointer.
2554
2577
  */
2555
- onPanEnd?(event: MouseEvent | TouchEvent | PointerEvent, info: PanInfo): void;
2578
+ onPanEnd?(event: PointerEvent, info: PanInfo): void;
2556
2579
  }
2557
2580
  /**
2558
2581
  * @public
@@ -2590,6 +2613,9 @@ interface ViewportOptions {
2590
2613
  once?: boolean;
2591
2614
  margin?: string;
2592
2615
  amount?: "some" | "all" | number;
2616
+ /**
2617
+ * @deprecated IntersectionObserver fallback will always be disabled from 10.0. Prefer polyfill for older browser support.
2618
+ */
2593
2619
  fallback?: boolean;
2594
2620
  }
2595
2621
  interface ViewportProps {
@@ -2888,7 +2914,7 @@ declare type VisualElementOptions<Instance, RenderState = any> = {
2888
2914
  visualState: VisualState<Instance, RenderState>;
2889
2915
  parent?: VisualElement<unknown>;
2890
2916
  variantParent?: VisualElement<unknown>;
2891
- presenceId?: string | undefined;
2917
+ presenceContext: PresenceContextProps | null;
2892
2918
  props: MotionProps;
2893
2919
  blockInitialAnimation?: boolean;
2894
2920
  reducedMotionConfig?: ReducedMotionConfig;
@@ -2904,7 +2930,6 @@ interface VisualElementEventCallbacks {
2904
2930
  LayoutMeasure: (layout: Box, prevLayout?: Box) => void;
2905
2931
  LayoutUpdate: (layout: Axis, prevLayout: Axis) => void;
2906
2932
  Update: (latest: ResolvedValues) => void;
2907
- Render: () => void;
2908
2933
  AnimationStart: (definition: AnimationDefinition) => void;
2909
2934
  AnimationComplete: (definition: AnimationDefinition) => void;
2910
2935
  LayoutAnimationStart: () => void;
@@ -3064,7 +3089,6 @@ declare type SVGMotionComponents = {
3064
3089
  interface MotionComponentConfig<Instance, RenderState> {
3065
3090
  preloadedFeatures?: FeatureBundle;
3066
3091
  createVisualElement?: CreateVisualElement<Instance>;
3067
- projectionNodeConstructor?: any;
3068
3092
  useRender: RenderComponent<Instance, RenderState>;
3069
3093
  useVisualState: UseVisualState<Instance, RenderState>;
3070
3094
  Component: string | React$1.ComponentType<React$1.PropsWithChildren<unknown>>;
@@ -3078,7 +3102,7 @@ interface MotionComponentConfig<Instance, RenderState> {
3078
3102
  * Alongside this is a config option which provides a way of rendering the provided
3079
3103
  * component "offline", or outside the React render cycle.
3080
3104
  */
3081
- declare function createMotionComponent<Props extends {}, Instance, RenderState>({ preloadedFeatures, createVisualElement, projectionNodeConstructor, useRender, useVisualState, Component, }: MotionComponentConfig<Instance, RenderState>): React$1.ForwardRefExoticComponent<React$1.PropsWithoutRef<Props & MotionProps> & React$1.RefAttributes<Instance>>;
3105
+ declare function createMotionComponent<Props extends {}, Instance, RenderState>({ preloadedFeatures, createVisualElement, useRender, useVisualState, Component, }: MotionComponentConfig<Instance, RenderState>): React$1.ForwardRefExoticComponent<React$1.PropsWithoutRef<Props & MotionProps> & React$1.RefAttributes<Instance>>;
3082
3106
 
3083
3107
  /**
3084
3108
  * I'd rather the return type of `custom` to be implicit but this throws
@@ -3666,7 +3690,6 @@ declare const Reorder: {
3666
3690
  onAnimationIterationCapture?: React$1.AnimationEventHandler<any> | undefined;
3667
3691
  onTransitionEnd?: React$1.TransitionEventHandler<any> | undefined;
3668
3692
  onTransitionEndCapture?: React$1.TransitionEventHandler<any> | undefined;
3669
- slot?: string | undefined;
3670
3693
  title?: string | undefined;
3671
3694
  defaultChecked?: boolean | undefined;
3672
3695
  defaultValue?: string | number | readonly string[] | undefined;
@@ -3678,6 +3701,7 @@ declare const Reorder: {
3678
3701
  dir?: string | undefined;
3679
3702
  draggable?: (boolean | "false" | "true") | undefined;
3680
3703
  placeholder?: string | undefined;
3704
+ slot?: string | undefined;
3681
3705
  spellCheck?: (boolean | "false" | "true") | undefined;
3682
3706
  radioGroup?: string | undefined;
3683
3707
  about?: string | undefined;
@@ -3706,7 +3730,7 @@ declare const Reorder: {
3706
3730
  } & React$1.RefAttributes<any>>;
3707
3731
  };
3708
3732
 
3709
- declare const animations: FeatureComponents;
3733
+ declare const animations: FeaturePackages;
3710
3734
 
3711
3735
  interface MotionContextProps<Instance = unknown> {
3712
3736
  visualElement?: VisualElement<Instance>;
@@ -4171,22 +4195,6 @@ declare function useCycle<T>(...items: T[]): CycleState<T>;
4171
4195
  */
4172
4196
  declare function isValidMotionProp(key: string): boolean;
4173
4197
 
4174
- /**
4175
- * @public
4176
- */
4177
- interface PresenceContextProps {
4178
- id: string;
4179
- isPresent: boolean;
4180
- register: (id: string) => () => void;
4181
- onExitComplete?: (id: string) => void;
4182
- initial?: false | VariantLabels;
4183
- custom?: any;
4184
- }
4185
- /**
4186
- * @public
4187
- */
4188
- declare const PresenceContext: React$1.Context<PresenceContextProps | null>;
4189
-
4190
4198
  declare type SafeToRemove = () => void;
4191
4199
  declare type AlwaysPresent = [true, null];
4192
4200
  declare type Present = [true];
@@ -4425,4 +4433,4 @@ interface ScaleMotionValues {
4425
4433
  */
4426
4434
  declare function useInvertedScale(scale?: Partial<ScaleMotionValues>): ScaleMotionValues;
4427
4435
 
4428
- export { AnimatePresence, AnimatePresenceProps, AnimateSharedLayout, AnimationControls, AnimationLifecycles, AnimationOptions$2 as AnimationOptions, AnimationPlaybackControls, AnimationProps, AnimationType, Axis, AxisDelta, BezierDefinition, BoundingBox, Box, CreateVisualElement, CustomDomComponent, CustomValueType, Cycle, CycleState, DelayedFunction, Delta, DeprecatedLayoutGroupContext, DragControls, DragElastic, DragHandlers, DraggableProps, Easing, EasingDefinition, EasingFunction, EasingModifier, EventInfo, FeatureBundle, FeatureComponent, FeatureComponents, FeatureDefinition, FeatureDefinitions, FeatureNames, FeatureProps, FlatTree, FocusHandlers, ForwardRefComponent, HTMLMotionProps, HoverHandlers, IProjectionNode, Inertia, Keyframes, KeyframesTarget, LayoutGroup, LayoutGroupContext, LayoutProps, LazyFeatureBundle$1 as LazyFeatureBundle, LazyMotion, LazyProps, LoadedFeatures, MotionAdvancedProps, MotionConfig, MotionConfigContext, MotionConfigProps, MotionContext, MotionProps, MotionStyle, MotionTransform, MotionValue, None, Orchestration, PanHandlers, PanInfo, PassiveEffect, Point, PresenceContext, RelayoutInfo, RenderComponent, Reorder, Repeat, ResolveLayoutTransition, ResolvedKeyframesTarget, ResolvedSingleTarget, ResolvedValueTarget, ResolvedValues, SVGAttributesAsMotionValues, SVGMotionProps, ScrapeMotionValuesFromProps, ScrollMotionValues, SingleTarget, Spring, Subscriber, SwitchLayoutGroupContext, TapHandlers, TapInfo, Target, TargetAndTransition, TransformPoint, Transition, Tween, ValueTarget, Variant, VariantLabels, Variants, VisualElement, VisualState, addPointerEvent, addPointerInfo, addScaleCorrector, animate, animateVisualElement, animationControls, animations, anticipate, backIn, backInOut, backOut, buildTransform, calcLength, checkTargetForNewValues, circIn, circInOut, circOut, clamp, createBox, createDomMotionComponent, createMotionComponent, cubicBezier, delay, distance, distance2D, domAnimation, domMax, easeIn, easeInOut, easeOut, filterProps, frameData, isBrowser, isDragActive, isMotionComponent, isMotionValue, isValidMotionProp, m, makeUseVisualState, mix, motion, motionValue, optimizedAppearDataAttribute, pipe, resolveMotionValue, spring, startOptimizedAppearAnimation, sync, transform, unwrapMotionComponent, useAnimation, useAnimationControls, useAnimationFrame, useCycle, useAnimatedState as useDeprecatedAnimatedState, useInvertedScale as useDeprecatedInvertedScale, useDomEvent, useDragControls, useElementScroll, useForceUpdate, useInView, useInstantLayoutTransition, useInstantTransition, useIsPresent, useIsomorphicLayoutEffect, useMotionTemplate, useMotionValue, useMotionValueEvent, usePresence, useReducedMotion, useReducedMotionConfig, useResetProjection, useScroll, useSpring, useTime, useTransform, useUnmountEffect, useVelocity, useViewportScroll, useVisualElementContext, useWillChange, wrap };
4436
+ export { AnimatePresence, AnimatePresenceProps, AnimateSharedLayout, AnimationControls, AnimationLifecycles, AnimationOptions$2 as AnimationOptions, AnimationPlaybackControls, AnimationProps, AnimationType, Axis, AxisDelta, BezierDefinition, BoundingBox, Box, CreateVisualElement, CustomDomComponent, CustomValueType, Cycle, CycleState, DelayedFunction, Delta, DeprecatedLayoutGroupContext, DragControls, DragElastic, DragHandlers, DraggableProps, Easing, EasingDefinition, EasingFunction, EasingModifier, EventInfo, FeatureBundle, FeatureDefinition, FeatureDefinitions, FeaturePackage, FeaturePackages, FlatTree, FocusHandlers, ForwardRefComponent, HTMLMotionProps, HoverHandlers, HydratedFeatureDefinition, HydratedFeatureDefinitions, IProjectionNode, Inertia, Keyframes, KeyframesTarget, LayoutGroup, LayoutGroupContext, LayoutProps, LazyFeatureBundle$1 as LazyFeatureBundle, LazyMotion, LazyProps, MotionAdvancedProps, MotionConfig, MotionConfigContext, MotionConfigProps, MotionContext, MotionProps, MotionStyle, MotionTransform, MotionValue, None, Orchestration, PanHandlers, PanInfo, PassiveEffect, Point, PresenceContext, RelayoutInfo, RenderComponent, Reorder, Repeat, ResolveLayoutTransition, ResolvedKeyframesTarget, ResolvedSingleTarget, ResolvedValueTarget, ResolvedValues, SVGAttributesAsMotionValues, SVGMotionProps, ScrapeMotionValuesFromProps, ScrollMotionValues, SingleTarget, Spring, Subscriber, SwitchLayoutGroupContext, TapHandlers, TapInfo, Target, TargetAndTransition, TransformPoint, Transition, Tween, ValueTarget, Variant, VariantLabels, Variants, VisualElement, VisualState, addPointerEvent, addPointerInfo, addScaleCorrector, animate, animateVisualElement, animationControls, animations, anticipate, backIn, backInOut, backOut, buildTransform, calcLength, checkTargetForNewValues, circIn, circInOut, circOut, clamp, createBox, createDomMotionComponent, createMotionComponent, cubicBezier, delay, distance, distance2D, domAnimation, domMax, easeIn, easeInOut, easeOut, filterProps, frameData, isBrowser, isDragActive, isMotionComponent, isMotionValue, isValidMotionProp, m, makeUseVisualState, mix, motion, motionValue, optimizedAppearDataAttribute, pipe, resolveMotionValue, spring, startOptimizedAppearAnimation, sync, transform, unwrapMotionComponent, useAnimation, useAnimationControls, useAnimationFrame, useCycle, useAnimatedState as useDeprecatedAnimatedState, useInvertedScale as useDeprecatedInvertedScale, useDomEvent, useDragControls, useElementScroll, useForceUpdate, useInView, useInstantLayoutTransition, useInstantTransition, useIsPresent, useIsomorphicLayoutEffect, useMotionTemplate, useMotionValue, useMotionValueEvent, usePresence, useReducedMotion, useReducedMotionConfig, useResetProjection, useScroll, useSpring, useTime, useTransform, useUnmountEffect, useVelocity, useViewportScroll, useVisualElementContext, useWillChange, wrap };