Interface TreeStackOpts<Id>
interface TreeStackOpts<Id> {
container: (id: Id) => boolean;
emptyHeight?: number;
gap?: number;
header?: number;
kids: (id: Id) => readonly Id[];
leaf: (id: Id) => { h: number; w: number };
minWidth?: number;
origin: (id: Id) => { x: number; y: number };
pad?: number;
roots: () => readonly Id[];
}
container: (id: Id) => boolean;
emptyHeight?: number;
gap?: number;
header?: number;
kids: (id: Id) => readonly Id[];
leaf: (id: Id) => { h: number; w: number };
minWidth?: number;
origin: (id: Id) => { x: number; y: number };
pad?: number;
roots: () => readonly Id[];
}
Type Parameters
- Id
Properties
container
OptionalemptyHeight
emptyHeight?: number
Height of an empty container. Default header + 2·pad.
Optionalgap
gap?: number
Space between adjacent children. Default 0.
Optionalheader
header?: number
Space reserved above a container's children (a title bar). Default 0.
kids
A container's children, in order (read inside a derive).
leaf
Intrinsic size of a non-container node.
OptionalminWidth
minWidth?: number
Minimum container width. Default 0.
origin
Top-left of a root node.
Optionalpad
pad?: number
Inset around a container's children. Default 0.
roots
Top-level node ids, in order (read inside a derive; cell reads track).
Containers stack their
kids; non-containers are sized byleaf.