Interface DragModel<M, Id>
interface DragModel<M, Id> {
active: Cell<Id | null>;
at: Vec;
pointer: Writable<Vec>;
preview: Read<M>;
grip(
handle: AnyShape,
id: Id,
seed: () => V,
onGrab?: () => void,
): () => void;
}
active: Cell<Id | null>;
at: Vec;
pointer: Writable<Vec>;
preview: Read<M>;
grip(
handle: AnyShape,
id: Id,
seed: () => V,
onGrab?: () => void,
): () => void;
}
Type Parameters
- M
- Id
Wire a handle: seed + claim on press, commit
dropon release.