UNPKG

@mui/x-tree-view

Version:

The community edition of the MUI X Tree View components.

46 lines (45 loc) 1.35 kB
"use strict"; 'use client'; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; Object.defineProperty(exports, "__esModule", { value: true }); exports.useTreeViewId = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var React = _interopRequireWildcard(require("react")); var _store = require("@mui/x-internals/store"); var _useTreeViewId = require("./useTreeViewId.selectors"); var _useTreeViewId2 = require("./useTreeViewId.utils"); const useTreeViewId = ({ params, store }) => { React.useEffect(() => { const prevIdState = store.state.id; if (params.id === prevIdState.providedTreeId && prevIdState.treeId !== undefined) { return; } store.set('id', (0, _extends2.default)({}, prevIdState, { treeId: params.id ?? (0, _useTreeViewId2.createTreeViewDefaultId)() })); }, [store, params.id]); const treeId = (0, _store.useStore)(store, _useTreeViewId.idSelectors.treeId); return { getRootProps: () => ({ id: treeId }) }; }; exports.useTreeViewId = useTreeViewId; useTreeViewId.params = { id: true }; useTreeViewId.getInitialState = ({ id }) => ({ id: { treeId: undefined, providedTreeId: id } });