Skip to content

@whittakertech/mosaic

Enumerations

EnumerationDescription

MosaicState

Represents the current interaction lifecycle state of a MosaicJS instance. States are mutually exclusive and transition deterministically.

Classes

ClassDescription

Mosaic

Mosaic is the public controller for an event-driven drag-and-drop system.

It manages:

  • Pointer lifecycle
  • DOM snapshotting and rollback
  • Deterministic state transitions
  • Event emission for external observers

Consumers should:

  1. Instantiate Mosaic with a root element
  2. Call initialize()
  3. Listen for mosaic:* events

Direct state manipulation is intentionally restricted.

Example

ts
const mosaic = new Mosaic({
  root: document.querySelector("#list"),
  selectors: { node: ".item" }
});

mosaic.initialize();

window.addEventListener("mosaic:mutation:confirmed", () => {
  console.log("Order updated");
});

Interfaces

InterfaceDescription

ConstraintResult

MosaicOptions

MosaicSnapshot

Variables

VariableDescription

MOSAIC_TRANSITIONS

Functions

FunctionDescription

canTransition

checkConstraints

createSnapshot

emit

restoreSnapshot