UNPKG

react-lightning-design-system

Version:

Salesforce Lightning Design System components built with React

47 lines (45 loc) 1.59 kB
import _extends from "@babel/runtime/helpers/extends"; import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties"; var _excluded = ["className", "label", "children", "toggleOnNodeClick", "onNodeClick", "onNodeLabelClick", "onNodeToggle"]; import React, { createContext, useMemo } from 'react'; import classnames from 'classnames'; /** * */ export var TreeContext = /*#__PURE__*/createContext({}); /** * */ /** * */ export var Tree = function Tree(props) { var className = props.className, label = props.label, children = props.children, toggleOnNodeClick = props.toggleOnNodeClick, onNodeClick = props.onNodeClick, onNodeLabelClick = props.onNodeLabelClick, onNodeToggle = props.onNodeToggle, rprops = _objectWithoutProperties(props, _excluded); var treeClassNames = classnames(className, 'slds-tree_container'); var ctx = useMemo(function () { return { toggleOnNodeClick: toggleOnNodeClick, onNodeClick: onNodeClick, onNodeLabelClick: onNodeLabelClick, onNodeToggle: onNodeToggle }; }, [toggleOnNodeClick, onNodeClick, onNodeLabelClick, onNodeToggle]); return /*#__PURE__*/React.createElement("div", _extends({ className: treeClassNames }, rprops), label ? /*#__PURE__*/React.createElement("h4", { className: "slds-tree__group-header" }, label) : null, /*#__PURE__*/React.createElement("ul", { className: "slds-tree", role: "tree" }, /*#__PURE__*/React.createElement(TreeContext.Provider, { value: ctx }, children))); }; //# sourceMappingURL=Tree.js.map