Module

Framer.Motion

Package
purescript-framer-motion
Repository
i-am-the-slime/purescript-framer-motion

#motion Source

motion :: forall result baseProps motionSubset. Union baseProps (MotionProps ()) result => Nub result result => Castable motionSubset (Record (MotionProps ())) => motionSubset -> Record baseProps -> Record result

#withMotion Source

withMotion :: forall result baseProps motionSubset. Union baseProps (MotionProps ()) result => Nub result result => Castable motionSubset (Record (MotionProps ())) => Record baseProps -> motionSubset -> Record result

#animatePresence Source

animatePresence :: forall attrs attrs_ kids. Union attrs attrs_ AnimatePresenceProps => IsJSX kids => Record attrs -> kids -> JSX

#lazyMotion Source

lazyMotion :: forall attrs attrs_ kids. Union attrs attrs_ LazyMotionProps => IsJSX kids => Record attrs -> kids -> JSX

#layoutGroup Source

layoutGroup :: forall attrs attrs_ kids. Union attrs attrs_ LayoutGroupProps => IsJSX kids => Record attrs -> kids -> JSX

#motionConfig Source

motionConfig :: forall attrs attrs_ kids. Union attrs attrs_ MotionConfigProps => IsJSX kids => Record attrs -> kids -> JSX

#reorderGroup Source

reorderGroup :: forall attrs attrs_ kids. Union attrs attrs_ ReorderGroupProps => IsJSX kids => Record attrs -> kids -> JSX

#reorderItem Source

reorderItem :: forall attrs attrs_ kids. Union attrs attrs_ ReorderItemProps => IsJSX kids => Record attrs -> kids -> JSX

#startAnimationDynamic Source

startAnimationDynamic :: forall arg. (arg -> CSS) -> AnimationControls -> Aff Unit

Re-exports from Framer.Motion.Hook

#ViewportScrollValues Source

type ViewportScrollValues = { scrollX :: MotionValue Number, scrollXProgress :: MotionValue Number, scrollY :: MotionValue Number, scrollYProgress :: MotionValue Number }

#UseWillChange Source

#UseViewportScroll Source

#UseVelocity Source

data UseVelocity t0

#UseTransform Source

data UseTransform t0 t1

#UseTime Source

data UseTime t0

#UseSpring Source

data UseSpring t0 t1

#UseScroll Source

data UseScroll t0

#UseReducedMotion Source

#UseMotionValueEvent Source

#UseInView Source

data UseInView t0

#UseDragControls Source

#UseAnimationFrame Source

#UseAnimation Source

data UseAnimation t0

#UseAnimate Source

data UseAnimate t0

#TransformOptions Source

type TransformOptions :: forall k. k -> Typetype TransformOptions a = { clamp :: Maybe Boolean, ease :: Maybe Ease }

#SpringProps Source

type SpringProps = { damping :: Number |+| Int |+| Undefined, from :: Number |+| Int |+| Undefined, mass :: Number |+| Int |+| Undefined, restDelta :: Number |+| Int |+| Undefined, restSpeed :: Number |+| Int |+| Undefined, stiffness :: Number |+| Int |+| Undefined, to :: Number |+| Int |+| Undefined, velocity :: Number |+| Int |+| Undefined }

#InViewOptions Source

#Ease Source

data Ease

#AnimateFunction Source

#useTransformMapE Source

useTransformMapE :: forall a b. (a -> Effect b) -> MotionValue a -> Hook (UseTransform b) (MotionValue b)

#useTransformMap Source

useTransformMap :: forall a b. MotionValue a -> (a -> b) -> Hook (UseTransform a) (MotionValue b)

#useTransformEffect Source

#useSpringWithNumber Source

#useSpringWithMotionValue Source

#useScroll Source

useScroll :: forall attrs attrs_. Union attrs attrs_ UseScrollOptions => Record attrs -> Hook UseScroll ViewportScrollValues

#useMotionValueEvent Source

#useAnimate Source

useAnimate :: Hook (UseAnimate) { animate :: AnimateFunction, scope :: Ref (Nullable Node) }

Re-exports from Framer.Motion.MotionComponent

#custom Source

Re-exports from Framer.Motion.Types

#WillChange Source

#VariantLabel Source

#UseScrollOptions Source

type UseScrollOptions :: Row Typetype UseScrollOptions = (axis :: String |+| Undefined, container :: (Ref (Nullable Node)) |+| Undefined, offset :: (Array String) |+| Undefined, target :: (Ref (Nullable Node)) |+| Undefined)

#TargetAndTransition Source

#Target Source

data Target

Constructors

#TapInfo Source

type TapInfo = { x :: Number, y :: Number }

#ReorderItemProps Source

type ReorderItemProps :: Row Typetype ReorderItemProps = (key :: String, layout :: Boolean |+| String |+| Undefined, value :: Foreign)

#ReorderGroupProps Source

type ReorderGroupProps :: Row Typetype ReorderGroupProps = (axis :: String, onReorder :: EffectFn1 (Array Foreign) Unit, values :: Array Foreign)

#Point2D Source

type Point2D = { x :: Number, y :: Number }

#PanInfo Source

type PanInfo = { delta :: Point2D, offset :: Point2D, point :: Point2D, velocity :: Point2D }

#OnLayoutAnimationComplete Source

#OnAnimationStart Source

#MotionPropsF Source

type MotionPropsF :: (Type -> Type) -> Row Type -> Row Typetype MotionPropsF f r = (animate :: f Animate, custom :: f Foreign, drag :: f Drag, dragConstraints :: f DragConstraints, dragElastic :: f DragElastic, dragMomentum :: f DragMomentum, dragPropagation :: f DragPropagation, exit :: f Exit, initial :: f Initial, layout :: f Layout, layoutId :: f LayoutId, onAnimationComplete :: f OnAnimationComplete, onAnimationStart :: f OnAnimationStart, onDrag :: f OnDrag, onDragEnd :: f OnDragEnd, onDragStart :: f OnDragStart, onHoverEnd :: f OnHoverEnd, onHoverStart :: f OnHoverStart, onLayoutAnimationComplete :: f OnLayoutAnimationComplete, onPan :: f OnPan, onPanEnd :: f OnPanEnd, onPanStart :: f OnPanStart, onTap :: f OnTap, onTapCancel :: f OnTapCancel, onTapEnd :: f OnTapEnd, onTapStart :: f OnTapStart, onViewportBoxUpdate :: f OnViewportBoxUpdate, pan :: f Pan, transition :: f Transition, variants :: f Variants, whileDrag :: f WhileDrag, whileFocus :: f WhileFocus, whileHover :: f WhileHover, whileInView :: f WhileInView, whileTap :: f WhileTap | r)

#MotionProps Source

#MotionConfigProps Source

type MotionConfigProps :: Row Typetype MotionConfigProps = (nonce :: String |+| Undefined, reducedMotion :: String |+| Undefined, transition :: CSS |+| Undefined)

#MakeVariantLabel Source

#LazyMotionProps Source

type LazyMotionProps :: Row Typetype LazyMotionProps = (features :: Foreign, strict :: Boolean |+| Undefined)

#LayoutGroupProps Source

#Infinity Source

#Id Source

type Id :: forall k. k -> ktype Id a = a

#EventInfo Source

type EventInfo = { point :: { x :: Number, y :: Number } }

#DragControls Source

#BoxDelta Source

type BoxDelta = { x :: AxisDelta, y :: AxisDelta }

#BoundingBox2D Source

#AxisDelta Source

type AxisDelta = { origin :: Number, originPoint :: Number, scale :: Number, translate :: Number }

#AxisBox2D Source

type AxisBox2D = { x :: Axis, y :: Axis }

#Axis Source

type Axis = { max :: Number, min :: Number }

#AnimationPlaybackControls Source

#AnimationDefinition Source

#AnimationControls Source

#AnimateSharedLayoutType Source

#AnimateSharedLayoutProps Source

#AnimatePresenceProps Source

type AnimatePresenceProps :: Row Typetype AnimatePresenceProps = (children :: Array JSX, custom :: forall a. a, exitBeforeEnter :: Boolean, initial :: Boolean, onExitComplete :: Effect Unit)

#EffectFnMaker Source

class EffectFnMaker fn effectFn | fn -> effectFn where

Members

Instances

#whileTap Source

whileTap :: forall c. Castable c WhileTap => c -> WhileTap

#whileInView Source

#whileHover Source

whileHover :: forall c. Castable c WhileHover => c -> WhileHover

#whileFocus Source

whileFocus :: forall c. Castable c WhileFocus => c -> WhileFocus

#whileDrag Source

whileDrag :: forall c. Castable c WhileDrag => c -> WhileDrag

#variantsFromObject Source

#variants Source

variants :: forall r. Record r -> Variants

#transition Source

transition :: forall r. Record r -> Transition

#prop Source

prop :: forall a b. Castable a b => a -> b

#pan Source

pan :: forall a. Castable a Pan => a -> Pan

#onTapCancel Source

#makeVariantLabels Source

makeVariantLabels :: forall a b. HMapWithIndex MakeVariantLabel a b => a -> b

#layoutId Source

layoutId :: forall a. Castable a LayoutId => a -> LayoutId

#layout Source

layout :: forall a. Castable a Layout => a -> Layout

#initial Source

initial :: forall a. Castable a Initial => a -> Initial

#exit Source

exit :: forall a. Castable a Exit => a -> Exit

#dragPropagation Source

#dragMomentum Source

#dragElasticBoundingBox Source

#dragElastic Source

#dragConstraintsBoundingBox Source

#dragConstraints Source

#drag Source

drag :: forall a. Castable a Drag => a -> Drag

#customProp Source

customProp :: forall a. a -> Foreign

#callback Source

callback :: forall a c f. Castable c a => EffectFnMaker f c => f -> a

#boundingBox2D Source

#animate Source

animate :: forall a. Castable a Animate => a -> Animate