Module

Hylograph.Internal.Transition.Types

Package
purescript-hylograph-selection
Repository
afcondon/purescript-hylograph-selection

DEPRECATED — moved to Hylograph.Transition.Types.

This module now re-exports the transition vocabulary from its new public home. It never should have lived under Internal: it is not an implementation detail, it is vocabulary that every consumer needs. It landed here by inheritance during an earlier refactor, and by the time that was noticed several hundred imports across the ecosystem already pointed at this path.

Nothing here is going away without warning — this shim exists so that those imports keep working. New code should import Hylograph.Transition.Types, and for ElementType in particular Hylograph.HATS now re-exports it, so the common case needs no extra import at all.

Re-exports from Hylograph.Transition.Types

#TransitionConfig Source

type TransitionConfig = { delay :: Maybe Milliseconds, duration :: Milliseconds, easing :: Maybe Easing, staggerDelay :: Maybe Number }

Configuration for a transition

Specifies timing and easing for animated attribute changes. All times are in milliseconds.

For staggered transitions, use staggerDelay to add incremental delay per element: element i gets delay = baseDelay + (i * staggerDelay)

Example:

config = transition (Milliseconds 1500.0)
configWithDelay = transitionWith
  { duration: Milliseconds 1500.0
  , delay: Just (Milliseconds 500.0)
  , staggerDelay: Nothing
  , easing: Just Linear
  }
staggeredConfig = transitionWith
  { duration: Milliseconds 600.0
  , delay: Nothing
  , staggerDelay: Just 100.0  -- 100ms between each element
  , easing: Nothing
  }

#Easing Source

data Easing

Easing functions control the rate of change during transitions

Based on D3's easing functions: https://d3js.org/d3-ease For more complex easing, use purescript-easings library

Note: We could integrate with purescript-easings in the future, but starting simple with D3's built-in easings.

Constructors

Instances

#transitionWith Source

transitionWith :: TransitionConfig -> TransitionConfig

Create a transition with full configuration

Example:

config = transitionWith
  { duration: Milliseconds 1500.0
  , delay: Just (Milliseconds 500.0)
  , easing: Just ElasticOut
  }

#transition Source

transition :: Milliseconds -> TransitionConfig

Create a simple transition with just duration

Uses default easing (Cubic) and no delay.

Example:

config = transition (Milliseconds 1000.0)

#staggeredTransition Source

staggeredTransition :: Milliseconds -> Number -> TransitionConfig

Create a staggered transition where each element delays incrementally

Element i gets delay = i * staggerMs

Example:

config = staggeredTransition (Milliseconds 600.0) 100.0
-- Element 0: 0ms delay, Element 1: 100ms delay, Element 2: 200ms delay...

#defaultTransition Source

defaultTransition :: TransitionConfig

Default transition configuration

250ms duration, no delay, cubic easing (D3 default)

Modules
Data.DependencyGraph
Hylograph.Attribute
Hylograph.Behavior
Hylograph.Behavior.Types
Hylograph.Brush
Hylograph.Brush.FFI
Hylograph.Brush.Types
Hylograph.Classify
Hylograph.Data.Graph
Hylograph.Data.Graph.Algorithms
Hylograph.Data.Node
Hylograph.Data.Tree
Hylograph.Element.Types
Hylograph.Expr.Animation
Hylograph.Expr.Attr
Hylograph.Expr.Datum
Hylograph.Expr.Expr
Hylograph.Expr.Friendly
Hylograph.Expr.Integration
Hylograph.Expr.Interpreter.CodeGen
Hylograph.Expr.Interpreter.Eval
Hylograph.Expr.Interpreter.Meta
Hylograph.Expr.Interpreter.PureSVG
Hylograph.Expr.Interpreter.SVG
Hylograph.Expr.Path
Hylograph.Expr.Path.Generators
Hylograph.Expr.Sugar
Hylograph.Expr.Units
Hylograph.Foreign.Types
Hylograph.HATS
Hylograph.HATS.Friendly
Hylograph.HATS.InterpreterTick
Hylograph.HATS.Transitions
Hylograph.Interaction.Brush
Hylograph.Interaction.Coordinated
Hylograph.Interaction.Pointer
Hylograph.Interaction.Zoom
Hylograph.Internal.Attribute
Hylograph.Internal.Behavior.FFI
Hylograph.Internal.Behavior.Types
Hylograph.Internal.Element.Operations
Hylograph.Internal.Element.Types
Hylograph.Internal.FFI
Hylograph.Internal.Transition.FFI
Hylograph.Internal.Transition.Manager
Hylograph.Internal.Transition.Scene
Hylograph.Internal.Transition.Types
Hylograph.Internal.Types
Hylograph.Interpreter.English
Hylograph.Interpreter.Mermaid
Hylograph.Interpreter.MetaHATS
Hylograph.Interpreter.SemiQuine
Hylograph.Interpreter.SemiQuine.TreeToCode
Hylograph.Interpreter.SemiQuine.Types
Hylograph.Scale
Hylograph.Scale.ColorSchemes
Hylograph.Scale.FP
Hylograph.Scale.Interpolation
Hylograph.Scale.Pure
Hylograph.Scale.Sequential
Hylograph.Shape.Arc
Hylograph.Shape.Pie
Hylograph.Shape.Polygon
Hylograph.Tooltip
Hylograph.Transform
Hylograph.Transition.Types
Hylograph.Unified
Hylograph.Unified.Attribute
Hylograph.Unified.DataDSL
Hylograph.Unified.Display
Hylograph.Unified.Sugar