jiro-ui
Version:
A Mithril.js UI library based from construct-ui
32 lines (31 loc) • 1.13 kB
TypeScript
import m from 'mithril';
import { IAttrs } from '../../_shared';
export interface ITreeNodeAttrs extends IAttrs {
key: number | string;
/** Right-justified content */
contentRight?: m.Children;
/** Left-justified content */
contentLeft?: m.Children;
/** Array of TreeNodes */
children?: m.Vnode<ITreeNodeAttrs>[];
/** Toggles caret visiblity */
hasCaret?: boolean;
/** Wether children are expanded */
isExpanded?: boolean;
/** Wether node is selected */
isSelected?: boolean;
/** Inner label or children */
label?: m.Children;
/** Callback invoked on tree node click */
onClick?: (node: ITreeNodeAttrs, e: Event) => void;
/** Callback invoked when caret is collapsed */
onCollapse?: (node: ITreeNodeAttrs, e: Event) => void;
/** Callback invoked when caret is expanded */
onExpand?: (node: ITreeNodeAttrs, e: Event) => void;
[htmlAttrs: string]: any;
}
export declare class TreeNode implements m.Component<ITreeNodeAttrs> {
view({ attrs }: m.Vnode<ITreeNodeAttrs>): m.Vnode<any, any>;
private handleCaretClick;
private handleClick;
}