UNPKG

@mui/x-tree-view

Version:

The community edition of the MUI X Tree View components.

49 lines (48 loc) 1.45 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 _useSelector = require("../../hooks/useSelector"); var _useTreeViewId = require("./useTreeViewId.selectors"); var _useTreeViewId2 = require("./useTreeViewId.utils"); const useTreeViewId = ({ params, store }) => { React.useEffect(() => { store.update(prevState => { if (params.id === prevState.id.providedTreeId && prevState.id.treeId !== undefined) { return prevState; } return (0, _extends2.default)({}, prevState, { id: (0, _extends2.default)({}, prevState.id, { treeId: params.id ?? (0, _useTreeViewId2.createTreeViewDefaultId)() }) }); }); }, [store, params.id]); const treeId = (0, _useSelector.useSelector)(store, _useTreeViewId.selectorTreeViewId); return { getRootProps: () => ({ id: treeId }) }; }; exports.useTreeViewId = useTreeViewId; useTreeViewId.params = { id: true }; useTreeViewId.getInitialState = ({ id }) => ({ id: { treeId: undefined, providedTreeId: id } });