UNPKG

@itwin/presentation-components

Version:

React components based on iTwin.js Presentation library

29 lines 1.56 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.PresentationTree = PresentationTree; const jsx_runtime_1 = require("react/jsx-runtime"); const components_react_1 = require("@itwin/components-react"); /** * Component that provides a convenient API for using [[usePresentationTreeState]] hook with [ControlledTree]($components-react). * * Usage example: * ```tsx * function Tree(props) { * const state = usePresentationTreeState({ imodel: props.imodel, ruleset: TREE_RULESET, pagingSize: PAGING_SIZE }); * if (!state) { * return null; * } * * return <PresentationTree state={state} width={200} height={400} selectionMode={SelectionMode.Single} />; * } * ``` * * @public * @deprecated in 5.7. All tree-related APIs have been deprecated in favor of the new generation hierarchy * building APIs (see https://github.com/iTwin/presentation/blob/33e79ee8d77f30580a9bab81a72884bda008db25/README.md#the-packages). */ function PresentationTree({ state, ...props }) { const treeModel = (0, components_react_1.useTreeModel)(state.nodeLoader.modelSource); return ((0, jsx_runtime_1.jsx)(components_react_1.ControlledTree, { ...props, model: treeModel, nodeLoader: state.nodeLoader, eventsHandler: state.eventHandler, onItemsRendered: state.onItemsRendered, nodeHighlightingProps: state.filteringResult?.highlightProps, treeRenderer: props.treeRenderer ? (treeProps) => props.treeRenderer({ ...treeProps, nodeLoader: state.nodeLoader }) : undefined })); } //# sourceMappingURL=PresentationTree.js.map