) from a nested data object.
Each level creates either a grouped "details" branch (for objects) or an input+label leaf (for values).
All checkboxes are wired to cascade toggling to their children for hierarchical selection.
Parameters
data: Object
Nested key-value object representing the tree. Leaves can be primitives or objects.
Optionalleaf: string = 'li'
If set to 'input', renders a label for each leaf. Otherwise uses plain
.
Returns HTMLUListElement
The generated tree
element with checkboxes and nested details/branches.
Recursively builds a nested tree menu (
) from a nested data object. Each level creates either a grouped "details" branch (for objects) or an input+label leaf (for values). All checkboxes are wired to cascade toggling to their children for hierarchical selection.