UNPKG

@difizen/mana-app

Version:

39 lines (38 loc) 1.35 kB
import { ViewInstance } from '@difizen/mana-core'; import { useInject } from '@difizen/mana-observable'; import * as React from 'react'; import { TreeProps, TREE_NODE_INDENT_GUIDE_CLASS } from "../tree-protocol"; import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime"; export var TreeIdent = function TreeIdent(props) { var treeViewHelper = useInject(ViewInstance); var treeProps = useInject(TreeProps); var renderIndentGuides = 'onHover'; // this.corePreferences['workbench.tree.renderIndentGuides']; if (renderIndentGuides === 'none') { return null; } var node = props.node, nodeProps = props.nodeProps; var depth = nodeProps.depth; var indentDivs = []; var current = node; while (current && depth) { var classNames = [TREE_NODE_INDENT_GUIDE_CLASS]; if (treeViewHelper.needsActiveIndentGuideline(current)) { classNames.push('active'); } else { classNames.push(renderIndentGuides === 'onHover' ? 'hover' : 'always'); } var paddingLeft = treeProps.leftPadding * depth; indentDivs.unshift( /*#__PURE__*/_jsx("div", { className: classNames.join(' '), style: { paddingLeft: "".concat(paddingLeft, "px") } }, depth)); current = current.parent; depth -= 1; } return /*#__PURE__*/_jsx(_Fragment, { children: indentDivs }); };