@ue-too/board
Version:
<h1 align="center"> uē-tôo </h1> <p align="center"> pan, zoom, rotate, and more with your html canvas. </p>
32 lines (31 loc) • 1.32 kB
TypeScript
/**
* Animation and input locking module exports.
*
* @remarks
* This module provides the {@link CameraMuxWithAnimationAndLock} implementation and its supporting
* state machines for pan, zoom, and rotation control. Each operation has its own state machine that
* manages animation playback and input blocking.
*
* ## State Machines
*
* Each state machine manages three states:
* - **ACCEPTING_USER_INPUT**: Normal state, accepts user input
* - **TRANSITION**: Animation/transition state, may block user input
* - **LOCKED_ON_OBJECT**: Camera locked to follow an object (blocks user input)
*
* ## Components
*
* - **{@link CameraMuxWithAnimationAndLock}**: Main multiplexer with animation support
* - **{@link PanControlStateMachine}**: State machine for pan input flow control
* - **{@link ZoomControlStateMachine}**: State machine for zoom input flow control
* - **{@link RotateControlStateMachine}**: State machine for rotation input flow control
*
* @see {@link CameraMuxWithAnimationAndLock} for the main implementation
* @see {@link createCameraMuxWithAnimationAndLock} for factory function
*
* @module
*/
export * from "./animation-and-lock";
export * from "./pan-control-state-machine";
export * from "./zoom-control-state-machine";
export * from "./rotation-control-state-machine";