import { tag, WeElement, h, extractClass, classNames } from 'omi' import * as css from './index.scss' //@ts-ignore import '../theme.ts' interface Props { nodes: object } interface Data { } @tag('m-nav') export default class Nav extends WeElement{ static css = css static propTypes = { nodes: Object } _preSelected = null toggle = (evt, id, open) => { evt.stopPropagation() this.fire('toggle', { id, open }) } onNodeClick = (id) => { this.fire('nodeClick', { id, pre: this._preSelected }) } renderNode(node, level) { if (node.selected) { this._preSelected = node.id } let next = level + 1 return } _getChildCount(node) { let count = 0 if (node.children && !node.close) { count += node.children.length node.children.forEach(child => { count += this._getChildCount(child) }) } return count } render(props) { return } }